

Boxer Template

http://www.templatemo.com/tm-446-boxer

*/
* {
	box-sizing: border-box;
}
body {
	background: #fff;
	font-family: noto-sans-cjk-jp, sans-serif;
	font-weight: 400;
	position: relative;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
}

.tm-white a {
	color: #fff;
}

/* start h1 group */
h1 {
	margin-top: 0;
	margin-bottom: 25px;
}
h2 {
	font-size: 52px;
	font-size: 3.25rem;
}
h1,
h2,
h3,
h4 {
	font-family: fot-tsukuardgothic-std, sans-serif;
	color: #079E76;
	font-weight: bold;
}
/* end h1 group */
p {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.6em;
}

/* img */
img {
	max-width: 100%;
	height: auto;
}
/* img */
.pc {
	display: block;
}
.sp {
	display: none;
}

/* btn */
.c-button {
	display: flex;
	justify-content: center;
	width: 100%;
	text-align: center;
	margin: 0 auto;
}
.c-button__unit {
	width: 100%;
	max-width: 586px;
	margin: 0 0.5rem;
	text-decoration: none;
	text-align: center;
	border: 3px solid #EF7511;
	border-radius: 4rem;
	padding: 1.1rem 1.2rem;
	font-size: 30px;
	font-size: 1.85rem;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: bold;
	color: #EF7511;
	background: #fff;
}
span.annai {
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: bold;
	display: inline-block;
	text-align: center;
	background: linear-gradient(transparent 70%, #FFEE62 70%);
	margin-bottom: 0.5rem;
	color: #333;
}
.c-button span.annai {
	/*display: block;*/
	width: auto;
	font-size: 1.4rem;
}
/* btn */


/* overlay */
.overlay {
   width: 100%;
   height: 100%;
   /*background: rgba(0, 0, 0, 0.4);*/
   background-color: #EAF9F1;
   padding-top: 150px;
   padding-bottom: 90px;
}
/* over lay */

/* start page container */
@media (min-width: 768px) {
  .container {
	width: 1000px;
  }
}
@media (min-width: 992px) {
  .container {
	width: 1100px;
  }
}
@media (min-width: 1200px) {
  .container {
	width: 1300px;
  }
}
/* end page container */

/* start preloader */
.preloader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row nowrap;
		-ms-flex-flow: row nowrap;
			flex-flow: row nowrap;
	/*justify-content: center;*/
	-webkit-align-items: center;
		-ms-flex-align: center;
			align-items: center;
	background: none repeat scroll 0 0 #fff;
}
.sk-spinner-rotating-plane.sk-spinner {
	width: 30px;
	height: 30px;
	background-color: #28a7e9;
	margin: 0 auto;
	-webkit-animation: sk-rotatePlane 1.2s infinite ease-in-out;
			animation: sk-rotatePlane 1.2s infinite ease-in-out;
 }

@-webkit-keyframes sk-rotatePlane {
  0% {
	 -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
			 transform: perspective(120px) rotateX(0deg) rotateY(0deg);
	}

  50% {
	-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
			transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
	}

  100% {
	-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
			transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
	}
}

@keyframes sk-rotatePlane {
  0% {
	 -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
			 transform: perspective(120px) rotateX(0deg) rotateY(0deg);
	}

  50% {
	-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
			transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
	}

  100% {
	-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
			transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
	}
}
/* end preloader */

/* start navigation */
.navbar-default {
	border: none;
	margin: 0!important;
	padding-top: 2rem;
	padding-bottom: 2rem;
	transition : all 0.3s ease;
}
.navbar-default.active {
	background: #fff;
	box-shadow: 0px 2px 8px 0px rgba(50, 50, 50, 0.08);
}
.navbar-default .navbar-brand {
	color: #28a7e9;
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
}
.navbar-default .nav {
	-webkit-align-items: flex-end;
	-ms-align-items	: flex-end;
	align-items		: flex-end;
}
.navbar-default .nav li a {
	color: #079E76;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-size: 19px;
	font-weight: bold;
	line-height: 1;
}
.navbar-default .nav li a:hover,
.navbar-default .nav li a:focus,
.navbar-default .nav li a.current {
	color: #28a7e9;
}
.navbar-default .nav li.nav-item {
	margin: 5px;
	text-align: center;
}
.btn-type-green {
	background-color: #fff;
	border-radius: 50px;
	border: 2px solid #079E76;
	text-align: center;
	color: #079E76 !important;
	padding: .35rem 1.9rem .5rem !important;
	display: block;
}
.btn-type-red {
	background-color: #fff;
	border-radius: 50px;
	border: 2px solid #EF7511;
	text-align: center;
	color: #EF7511 !important;
	padding: 0.35rem 1.9rem 0.5rem !important;
	display: block;
}
.col {
	padding: 0;
}
.footer-link {
	display: block;
	height: 100%;
	padding: 13px;
}
.facebook_bg {
	background-color: #54B1C7;
}
.twitter_bg {
	background-color: #7BD9E5;
}
.instagram_bg {
	background-color: #EB5161;
}
.bg-blue {
	background-color: #EAF9F1 !important;
}
.bg-red {
	background-color: #FFF5EE !important;
}
.bg-pink {
	background-color: #FEFBFC !important;
}
.bg-gray {
	background-color: #f8f8f8 !important;
}
.navbar-default .navbar-toggle {
	border: none;
	padding-top: 20px;
}
.navbar-default .navbar-toggle .icon-bar {
	background: #28a7e9;
	border-color: transparent;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
	background-color: transparent
}
/* end navigation */

/* start header */
header .container a img {
	width: 100%;
}
/* end header */

/* start footer */
footer {
	color: #079E76;
	font-family: fot-tsukuardgothic-std, sans-serif;
	background: #fff;
	font-weight: 400;
	text-align: center;
	padding: 20px;
}
.footer-top {
	display: flex;
	justify-content: start;
	flex-wrap: wrap;
	list-style: none;
	padding-left: 0;
	max-width: 892px;
	width: 100%;
	margin: 3rem auto;
}
.footer-top li {
	margin: .5rem 3rem;
}
.footer-top li a {
	font-size: 1rem;
	text-decoration: none;
	color: #079E76;
	justify-content: center;
	display: inline-block;
	font-weight: bold;
}
footer img.img-responsive {
	width: 128px;
}

/* end footer */

/* start home */
#home {
	background-size: cover;
	color: #fff;
	text-align: center;
	width: 100%;
}
#home h1 {
	font-size: 67px;
}
#home p {
	font-size: 21px;
	font-weight: 400;
	line-height: 2em;
	color: #079E76;
}
#home img {
	display: inline-block;
	margin-top: 30px;
	width: 636px;
}
/* end home */

/* start divider */
#divider {
	text-align: center;
	padding-top: 180px;
	padding-bottom: 80px;
	text-align: left;
}
#divider .fa {
	color: #28a7e9;
	font-size: 60px;
}
#divider h3.text-uppercase {
	font-size: 24px;
	color: #343A40;
	height: 60px;
}
#divider .col-6{
	margin-bottom: 7rem;
}
#divider .col-6 p.text-red {
	font-size: 30px;
	text-align: center;
}
#divider .col-6 p {
	font-size: 20px;
	text-align: left;
	padding: 0 7rem;
}
.text-red a {
	color: #EF7511 !important;
	text-decoration: none;
}
#divider {
	position: relative;
}
#divider .title-box {
	position: absolute;
	top: -35px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.btn-typB.btn-box.col-6 {
	text-align: -webkit-right;
}
/* end divider */

/* start title */
.text-inner {
	max-width: 624px;
	margin: 0 auto;
	width: 100%;
	text-align: left;
}
/* end title */


/* start feature */
#feature {
	background: #f8f8f8;
	padding-top: 80px;
	padding-bottom: 80px;
}
#feature p {
	padding-top: 10px;
}
#feature span {
	float: left;
}
#feature .fa {
	background: #28a7e9;
	border-radius: 50%;
	color: #fff;
	display: inline-block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	margin-right: 20px;
}
/* end feature */

/* start feature1 */
#feature1 {
	padding-top: 60px;
	padding-bottom: 60px;
}
#feature1 p {
	padding-top: 10px;
}
#feature1 span {
	float: left;
}
#feature1 .fa {
	background: #28a7e9;
	border-radius: 50%;
	color: #fff;
	display: inline-block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	margin-right: 20px;
}
/* end feature1 */

/* start pricing */
#pricing
{
	background: #f8f8f8;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 80px;
}
#pricing h2 {
	padding-bottom: 60px;
}
#pricing .pricing {
	background: #fff;
}
#pricing .active {
	position: relative;
	bottom: 20px;
}
#pricing .pricing .pricing-title {
	background: #28a7e9;
	color: #fff;
	font-weight: bold;
	padding: 30px;
}
#pricing .pricing .pricing-title p {
	font-size: 20px;
}
#pricing .pricing ul {
	padding: 0;
	margin: 0;
}
#pricing .pricing ul li {
	display: block;
	list-style: none;
	padding: 16px;
}
#pricing .pricing .btn {
	background: transparent;
	border: 1px solid #28a7e9;
	border-radius: 0px;
	color: #28a7e9;
	font-weight: bold;
	padding-right: 40px;
	padding-left: 40px;
	margin-top: 20px;
	margin-bottom: 30px;
	transition: all 0.3s ease;
}
#pricing .pricing .btn:hover {
	background: #28a7e9;
	color: #fff;
}
/* end pricing */

/* start download */
#download {
	padding-top: 80px;
	padding-bottom: 80px;
}
#download h2 {
	padding-bottom: 20px;
}
#download .btn {
	border-radius: 0px;
	font-weight: bold;
	margin-top: 20px;
	padding: 10px 40px 10px 40px;
}
/* end download */

/* start contact */
#contact {
	background: url('../images/contact-bg.jpg') no-repeat;
	background-size: cover;
	color: #fff;
}
#contact h2 {
	padding-bottom: 10px;
}
#contact address {
	padding-top: 20px;
}
#contact address .fa {
	background: #28a7e9;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	margin-top: 6px;
	margin-right: 10px;
}
#contact .contact-form {
	padding-top: 40px;
}
#contact .form-control {
	border: none;
	border-radius: 0px;
	box-shadow: none;
	margin-bottom: 20px;
}
#contact input {
	height: 50px;
}
#contact input[type="submit"] {
	background: #28a7e9;
	color: #fff;
	font-weight: bold;
	transition: all 0.3s ease;
}
#contact input[type="submit"]:hover {
	background: #107DB6;
}
/* end contact */

/* start reserve */
#days .table th {
	background: #f8f8f8;
	font-weight: inherit;
}
#reserve .btn-typB.btn-box.col-md-6 {
	width: 15%;
}
table {
	width: 100%;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-all;
}
.table td {
	height: 45px;
}
/* end reserve */

/* start reserve-detail */
#reserve-detail tr {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.6em;
}
/* end reserve-detail */

/* start instructor */
#instructor #teacher .container ul {
	padding-left: 0;
}
#instructor #teacher .container li {
	list-style: none;
	border-bottom: 3px dashed #E6E7E8 !important;
}
#instructor .bg-pink {
	background: #FDF9FA !important;
}
.btn-typD a {
	width: 322px;
	height: 73px;
	padding: 15px 0;
	display: block;
	border: 3px solid #EF7511;
	border-radius: 50px;
	color: #EF7511 !important;
	font-size: 22px;
	box-sizing: border-box;
	margin: 20px auto;
}
#instructor .result {
	flex-direction: column-reverse;
}
/* end instructor */

/* start teacher-search */
#teacher-search .container {
	position: relative;
}
#teacher-search .container .title-box {
	position: absolute;
	top: -25px;
	left: 30px;
}
#teacher-search .time-box .form-select {
	width: 150px;
	max-width: 100%;
}
.row.justify-content-first.time-box {
	margin-left: 0;
}
/* end teacher-search */

/* start result */
#result h4 {
	line-height: 2;
}
/* end result */

/* start instructor-detail */
#matter tbody td {
	color: #EB5161;
}
#matter tbody th {
	background: #f8f8f8;
	font-weight: inherit;
}
#matter thead th {
	vertical-align: middle;
}
#matter thead th span {
	display: block;
}
/* end instructor-detail */

.back-btn a {
	color: #fff;
	width: 100%;
	display: block;
}
.back-btn .btn-primary {
	width: 100%;
}
.back-btn .btn-primary:hover {
	color: #0d6efd;
	background-color: #fff;
	border-color: #0d6efd;
}
#history .back-btn a:hover {
	color: #0d6efd;
}
/* 日曜日：赤 */
.flatpickr-calendar .flatpickr-innerContainer .flatpickr-weekdays .flatpickr-weekday:nth-child(7n + 1),
.flatpickr-calendar .flatpickr-innerContainer .flatpickr-days .flatpickr-day:not(.flatpickr-disabled):not(.prevMonthDay):not(.nextMonthDay):nth-child(7n + 1) {
	color: red;
}
/* 土曜日：青 */
.flatpickr-calendar .flatpickr-innerContainer .flatpickr-weekdays .flatpickr-weekday:nth-child(7),
.flatpickr-calendar .flatpickr-innerContainer .flatpickr-days .flatpickr-day:not(.flatpickr-disabled):not(.prevMonthDay):not(.nextMonthDay):nth-child(7n) {
	color: blue;
}
.flatpickr-current-month {
	display: flex;
	justify-content: center;
}
.cur-year {
	order : 1;
}
.cur-month:before  {
	content: '年　';
}
.cur-month {
	order: 2;
}
.flatpickr-current-month span.cur-month {
  font-weight : 300;
  padding-top : 4px;
}
.form-select,
.form-control,
.form-check-input {
	border: 2px solid #7F7F7F;
}
.fa-magnifying-glass:before, .fa-search:before {
	content: "\f002";
	color: #fff;
	background: #7f7f7f;
	border-radius: 20px;
	padding: 8px;
}
.input-group-text {
	background: #fff;
	border: 2px solid #7f7f7f;
	border-left: none;
}
.btn-typD .fa-magnifying-glass:before,
.btn-typD .fa-search:before {
	content: "\f002";
	color: #EF7511;
	background: #fff;
}
.btn-outline-secondary:hover {
    color: #7f7f7f;
    background-color: #fff;
    border-color: #ffff;
}
.navbar-light .navbar-toggler {
	border-color: rgba(0, 0, 0, 0);
	outline: none;
}

@media screen and ( max-width: 991px ) {
	.templatemo-box {
		margin-bottom: 30px;
	}
	#pricing .active {
		bottom: 0;
	}
	.pricing {
		margin-bottom: 20px;
	}
	#feature img, #download img {
		margin-top: 30px;
	}
	#feature1 img {
		margin-bottom: 30px;
	}
	#history .table {
		display: block;
		overflow-x: scroll;
		white-space: nowrap;
	}
}
@media screen and ( max-width: 767px ) {
	.container {
		width: 100%;
		margin: 0 auto;
	}
	.logo_area {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
	}
	.navbar-default .nav li a {
		height: auto;
		line-height: 2em;
	}
	#feature, #pricing, #download {
		padding-top: 20px;
		padding-bottom: 40px;
	}
	#contact .overlay {
		padding-top: 40px;
	}
	#home h1 {
		font-size: 36px;
	}
	#home p {
		font-size: 15px;
	}
	h2 {
		font-size: 32px;
		font-size: 2rem;
	}
	p {
		font-size: 18px;
		font-size: 1.12rem;
		line-height: 2em;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.navbar-default .nav {
		-webkit-align-items: inherit;
		-ms-align-items: inherit;
		align-items: inherit;
	}
	.navbar-default {
		background: #EAF9F1;
	}
	#module .container .p-5 {
		padding: 1rem !important;
	}
	/*#teacher-search .container .title-box {
		top: -25px;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}*/
	#teacher-search .row.bg-pink.p-5 {
		padding: 3rem 1rem !important;
	}
	#teacher.pt-5 {
		padding: 1rem !important;
	}
	.c-button__unit {
		font-size: 22px;
		font-size: 1.4rem;
	}
	#divider .title-box {
		width: 80%;
	}
	header .container a img {
		width: 60%;
	}
	footer img.img-responsive {
		width: 64px;
	}
/*  navbar 三本線 */
	.navbar-light .navbar-toggler-icon {
		background-image: none;
	}
	.navbar-toggler-icon {
		position: relative;
		width: 40px;
		height: 40px;
		background: none;
		appearance: none;
		cursor: pointer;
	}
	.navbar-toggler-icon,
	.navbar-toggler-icon span {
		display: inline-block;
		transition: all 0.4s;
		box-sizing: border-box;
	}
	.navbar-toggler-icon span {
		position: absolute;
		left: 5px;
		width: 80%;
		height: 2px;
		background-color: #079E76;
		border-radius: 1px;
	}
	.navbar-toggler-icon span:nth-of-type(1) {
		top: 8px;
	}
	.navbar-toggler-icon span:nth-of-type(2) {
		top: 20px;
	}
	.navbar-toggler-icon span:nth-of-type(3) {
		top: 32px;
	}
	.navbar-toggler[aria-expanded=true] span.navbar-toggler-icon span:nth-of-type(1) {
		transform: translateY(12px) rotate(-315deg);
	}
	.navbar-toggler[aria-expanded=true] span.navbar-toggler-icon span:nth-of-type(2) {
		opacity: 0;
	}
	.navbar-toggler[aria-expanded=true] span.navbar-toggler-icon span:nth-of-type(3) {
		transform: translateY(-12px) rotate(315deg);
	}
	

}
/* start media 360 */
@media screen and ( max-width: 360px ){
	.pricing {
		padding-bottom: 40px;
	}
}
/* end media 360 