@charset "utf-8";
/*
Theme Name: koga driving school's theme
Theme URI: 
Description: koga driving school official site
Author: functions starman
*/



* {
	margin: 0;
	padding: 0;
}

html {
	width: 100%;
	height: 100%;
}

body {
	font-size :100% ;
	font-family: source-han-sans-japanese,"メイリオ",Meiryo,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","MSPゴシック",sans-serif;
	line-height :160%;
	width: 100%;
	height: 100%;	
	text-align: left;
	color: rgba(0, 51, 51, 1);
	overflow-x: hidden;
	font-size: 80%\9;
	-webkit-print-color-adjust: exact;
}

input[type="submit"],
select {
	-webkit-appearance: none;
	appearance: none;
  }

.grecaptcha-badge { visibility: hidden; }

/*---- font ----*/
@font-face {
	font-family: 'free_dial';
	src:  url('./fonts/free_dial.eot?4qihuw');
	src:  url('./fonts/free_dial.eot?4qihuw#iefix') format('embedded-opentype'),
	  url('./fonts/free_dial.ttf?4qihuw') format('truetype'),
	  url('./fonts/free_dial.woff?4qihuw') format('woff'),
	  url('./fonts/free_dial.svg?4qihuw#free_dial') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
  }
  
  [class^="icon-"], [class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'free_dial' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
  
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  }
  
  .icon-free_dial:before {
	content: "\e900";
	color: #39F;
  }


table {
	 border-collapse: collapse;
}

img {
	display: block;
	border-style: none;
	max-width: 100%;
	height: auto;
}

li {
	list-style-type: none;
}	

a {
	text-decoration: none;
	color: rgb(0,51,51);
}

a:focus {
	outline: none;
}

.n {
	position: absolute !important;
	top: 0!important;
	left: 0!important;
	height: 0!important;
	width: 0!important;
	overflow: hidden !important;
}

.clearfix:after { 
	content: " ";  
	display: block; 
	visibility: hidden; 
	clear: both; 
	height: 0.1px; 
	font-size: 0.1em; 
	line-height: 0; 
} 

.cl {
	clear: left;
}

.l {
	float: left;
}

.r {
	float: right;
}

.taC {
	text-align: center;
}


.taR {
	text-align: right;
}

.w10 {
	width: 10%;
}

.w15 {
	width: 15%;
}


.w20 {
	width: 20%;
}

.w25 {
	width: 25%;
}

.w30 {
	width: 30%;
}

.w40 {
	width: 40%;
}

.w50 {
	width: 50%;
}

.w60 {
	width: 60%;
}

.w70 {
	width: 70%;
}

.w75 {
	width: 75%;
}

.w80 {
	width: 80%;
}

.w90 {
	width: 90%;
}

.w100 {
	width: 100%;
}

.dspB {
	display: block;
}

.dspIB {
	display: inline-block;
}

.boxSb {
	box-sizing: border-box;
}

.flex {
	display:flex;
	align-items: stretch;
}

.flexw {
	flex-wrap: wrap;
}

.flexjc {
	justify-content: center;
}

.flexjb {
	justify-content: space-between;
}

/*---- margin ----*/

.ma0at {
	margin: 0 auto;
}

.mgt5 {
	margin-top: 5px;
}

.mgt10 {
	margin-top: 10px;
}

.mgt15 {
	margin-top: 15px;
}

.mgt20 {
	margin-top: 20px;
}

.mgt25 {
	margin-top: 25px;
}

.mgt30 {
	margin-top: 30px;
}

.mgt40 {
	margin-top: 40px;
}

.mgt50 {
	margin-top: 50px;
}

.mgt60 {
	margin-top: 60px;
}

.mgt70 {
	margin-top: 70px;
}

.mgt80 {
	margin-top: 80px;
}

.mgt90 {
	margin-top: 90px;
}

.mgt100 {
	margin-top: 100px;
}

.mgb5 {
	margin-bottom: 5px;
}

.mgb10 {
	margin-bottom: 10px;
}

.mgb20 {
	margin-bottom: 20px;
}

.mgb30 {
	margin-bottom: 30px;
}

.mgb40 {
	margin-bottom: 40px;
}

.mgb50 {
	margin-bottom: 50px;
}

.mgb60 {
	margin-bottom: 60px;
}

.mgb70 {
	margin-bottom: 70px;
}

.mgb80 {
	margin-bottom: 80px;
}

.mgb90 {
	margin-bottom: 90px;
}

.mgb100 {
	margin-bottom: 100px;
}

.mgl5 {
	margin-left: 5px;
}

.mgl10 {
	margin-left: 10px;
}

.mgl20 {
	margin-left: 20px;
}

.mgl30 {
	margin-left: 30px;
}

.mgl40 {
	margin-left: 40px;
}

.mgl50 {
	margin-left: 50px;
}

.mgl60 {
	margin-left: 60px;
}

.mgl70 {
	margin-left: 70px;
}

.mgl80 {
	margin-left: 80px;
}

.mgl90 {
	margin-left: 90px;
}

.mgl100 {
	margin-left: 100px;
}


.mgr5 {
	margin-right: 5px;
}

.mgr10 {
	margin-right: 10px;
}

.mgr20 {
	margin-right: 20px;
}

.mgr30 {
	margin-right: 30px;
}

.mgr40 {
	margin-right: 40px;
}

.mgr50 {
	margin-right: 50px;
}

.mgr60 {
	margin-right: 60px;
}

.mgr70 {
	margin-right: 70px;
}

.mgr80 {
	margin-right: 80px;
}

.mgr90 {
	margin-right: 90px;
}

.mgr100 {
	margin-right: 100px;
}

/*---- minus margin ----*/


.mgtm5 {
	margin-top: -5px;
}

.mgtm10 {
	margin-top: -10px;
}

.mgtm15 {
	margin-top: -15px;
}

.mgtm20 {
	margin-top: -20px;
}

.mgtm25 {
	margin-top: -25px;
}

.mgtm30 {
	margin-top: -30px;
}

.mgtm40 {
	margin-top: -40px;
}

.mgtm50 {
	margin-top: -50px;
}

.mgtm60 {
	margin-top: -60px;
}

.mgtm70 {




	margin-top: -70px;
}

.mgtm80 {
	margin-top: -80px;
}

.mgtm90 {
	margin-top: -90px;
}

.mgtm100 {
	margin-top: -100px;
}

.mgbm5 {
	margin-bottom: -5px;
}

.mgbm10 {
	margin-bottom: -10px;
}

.mgbm20 {
	margin-bottom: -20px;
}

.mgbm30 {
	margin-bottom: -30px;
}

.mgbm40 {
	margin-bottom: -40px;
}

.mgbm50 {
	margin-bottom: -50px;
}

.mgbm60 {
	margin-bottom: -60px;
}

.mgbm70 {
	margin-bottom: -70px;
}

.mgbm80 {
	margin-bottom: -80px;
}

.mgbm90 {
	margin-bottom: -90px;
}

.mgbm100 {
	margin-bottom: -100px;
}

.mglm5 {
	margin-left: -5px;
}

.mglm10 {
	margin-left: -10px;
}

.mglm20 {
	margin-left: -20px;
}

.mglm30 {
	margin-left: -30px;
}

.mglm40 {
	margin-left: -40px;
}

.mglm50 {
	margin-left: -50px;
}

.mglm60 {
	margin-left: -60px;
}

.mglm70 {
	margin-left: -70px;
}

.mglm80 {
	margin-left: -80px;
}

.mglm90 {
	margin-left: -90px;
}

.mglm100 {
	margin-left: -100px;
}


.mgrm5 {
	margin-right: -5px;
}

.mgrm10 {
	margin-right: -10px;
}

.mgrm20 {
	margin-right: -20px;
}

.mgrm30 {
	margin-right: -30px;
}

.mgrm40 {
	margin-right: -40px;
}

.mgrm50 {
	margin-right: -50px;
}

.mgrm60 {
	margin-right: -60px;
}

.mgrm70 {
	margin-right: -70px;
}

.mgrm80 {
	margin-right: -80px;
}

.mgrm90 {
	margin-right: -90px;
}

.mgrm100 {
	margin-right: -100px;
}

/*---- padding ----*/
.pdt5 {
	padding-top: 5px;
}

.pdt10 {
	padding-top: 10px;
}

.pdt20 {
	padding-top: 20px;
}

.pdt30 {
	padding-top: 30px;
}

.pdt40 {
	padding-top: 40px;
}

.pdt50 {
	padding-top: 50px;
}

.pdt60 {
	padding-top: 60px;
}

.pdt70 {
	padding-top: 70px;
}

.pdt80 {
	padding-top: 80px;
}

.pdt90 {
	padding-top: 90px;
}

.pdt100 {
	padding-top: 100px;
}

.pdb5 {
	padding-bottom: 5px;
}

.pdb10 {
	padding-bottom: 10px;
}

.pdb20 {
	padding-bottom: 20px;
}

.pdb30 {
	padding-bottom: 30px;
}

.pdb40 {
	padding-bottom: 40px;
}

.pdb50 {
	padding-bottom: 50px;
}

.pdb60 {
	padding-bottom: 60px;
}

.pdb70 {
	padding-bottom: 70px;
}

.pdb80 {
	padding-bottom: 80px;
}

.pdb90 {
	padding-bottom: 90px;
}

.pdb100 {
	padding-bottom: 100px;
}

.pdl5 {
	padding-left: 5px;
}

.pdl10 {
	padding-left: 10px;
}

.pdl20 {
	padding-left: 20px;
}

.pdl30 {
	padding-left: 30px;
}

.pdl40 {
	padding-left: 40px;
}

.pdl50 {
	padding-left: 50px;
}

.pdl60 {
	padding-left: 60px;
}

.pdl70 {
	padding-left: 70px;
}

.pdl80 {
	padding-left: 80px;
}

.pdl90 {
	padding-left: 90px;
}

.pdl100 {
	padding-left: 100px;
}


.pdr5 {
	padding-right: 5px;
}

.pdr10 {
	padding-right: 10px;
}

.pdr20 {
	padding-right: 20px;
}

.pdr30 {
	padding-right: 30px;
}

.pdr40 {
	padding-right: 40px;
}

.pdr50 {
	padding-right: 50px;
}

.pdr60 {
	padding-right: 60px;
}

.pdr70 {
	padding-right: 70px;
}

.pdr80 {
	padding-right: 80px;
}

.pdr90 {
	padding-right: 90px;
}

.pdr100 {
	padding-right: 100px;
}


/*---- font size ------*/

.fs50 {
	font-size: 50%;
}

.fs60 {
	font-size: 60%;
}

.fs70 {
	font-size: 70%;
}



.fs80 {
	font-size: 80%;
}


.fs90 {
	font-size: 90%;
}

.fs100 {
	font-size: 100%;
}

.fs110 {
	font-size: 110%;
}

.fs120 {
	font-size: 120%;
}

.fs150 {
	font-size: 150%;
}

.fs200 {
	font-size: 200%;
}

.fs210 {
	font-size: 210%;
}


.fwb {
	font-weight: bold;
}


.mbs {
	display: none;
}

/*---- container ----*/

#wrapper {
	float: left;
	width: 100%;
}


#headWrapper {
	width: 100%;
	background: rgba(255,255,255,.9);
	position: fixed;
	top:0;
	z-index: 999;
}

#titleDiv {
	padding-left: 10px;
}

#logo {
	background: url(images/logo.png) no-repeat;
	width: 356px;
	min-height: 96px;
	margin: 0 20px 0 0;
}

#siteDescription {
	
}

.menuStr {
	color: rgb(0, 130, 249);
}

.container {
	width: 80%;
}


#pageWrapper {
	margin-top: 116px;
}

#contentWrapper {
	padding: 50px;
	box-sizing: border-box;
	background: url(images/oblique_line.png);
}


#contentBox {
	padding: 0 50px 50px 50px;
	box-sizing: border-box;
	background: rgba(255,255,255,.9);

}

.content {
	margin: 40px 0 0 0;
}

#web-reservation {
	background: #0C0;
	margin-top: 20px;
	margin-right: 20px;
}

#web-reservation a {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	padding: 30px 20px;
	box-sizing: border-box;
}

.fa-calendar {
	margin-right: 10px;
}

#headContact {
	width: 500px;
	padding-right: 10px;
	margin: 0 0 0 0;
}

.contact_buttons {
	width: 350px;
}

.contact_buttons div a {
	padding: 10px 0;
	box-sizing: border-box;
	color: #FFF;
	font-weight: bold;
}

#questionnaireSection input[type=button].back_button {
	background:rgb(96, 107, 119, .5) !important;
	padding: 15px 0;
	font-size: 1rem;
}

#questionnaireSection .back_button {
	background:rgb(96, 107, 119, 1) !important;
	border:rgb(96, 107, 119, 1) !important;
	font-size: 1.4rem;
}

.telDiv  {
	margin: 5px 0 -5px 0;
}

.icon-free_dial {
	font-size: 2rem;
	margin: 5px 0 0 -10px;
}

.contactDiv {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.contactDiv a {
	width: 50%;
}

#headContact a.telA {
	font-weight: bold;
	color: #39F;
	position: relative;
	font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
}

/* .telA:before {
	content: "";
	display: block;
	background: url(images/free_dial.png) no-repeat;
	width: 64px;
	height: 43px;
	position: absolute;
	top: 10px;
	left: 0;
} */

.telNum {
	display: inline-block;
	font-size: 2.2rem;
	margin-top: 7px;
}

.range_br {
	display: none;
}


.contact_buttons div:nth-child(2) a:nth-child(1) {
	background: rgb(255,210,0);
}


#headContact :nth-child(2) a:nth-child(2) {
	background: rgb(230,87,145);
}



#headInfoList li {
	padding: 18px 10px;
	background: rgb(176, 207, 54);
	color: #FFF;
	margin-right: 10px;
	border-radius: 10px;
}

#toContactForm {
	display: block;
	background: #FC0;
	color: #FFF;
	font-weight: bold;
	font-size: 120%;
	width: 258px;
	text-align: center;
}

.nav_core {
	float: left;
	width: 900px;
	max-width: 100%;
}

#business-hours {
	margin-top: 20px;
	margin-left: 22px;
}

.business-hours-title {
	background: #39F;
	color: #FFF;
	font-weight: bols;
	padding: 2px 4px;
	box-sizing: border-box;
	border-radius: 20px;
}

#business-hours dd {
	margin: 0 20px 0 10px;
	padding: 2px;
	box-sizing: border-box;
}

#business-hours dd:last-child {
	margin-right: 0;
} 


#mainNav {
	width: 820px;
	color: rgb(0,51,51);
}


#mainNav li {
	width: calc( 100% / 7 );
	box-sizing: border-box;
	position: relative;
}


#mainNav a {
	font-weight: bold;
	color: rgb(0,51,51);
	padding: 25px 0;
}

#mainNav li:after {
	content: "　";
	display: block; 
	position: absolute;
	right: 0;
	top: 25px;
	border-right: 1px dotted rgb(0,51,51);
}

#mainNav li:first-child:before {
	content: "　";
	display: block; 
	position: absolute;
	left: -1em;
	top: 25px;
	border-right: 1px dotted rgb(0,51,51);
}

#topWrapper {
	background: rgb(176, 207, 54);
	color: #FFF;
	padding: 0 0 20px 0;
}

#headCampaignSection {
	margin-top: 0 !important;
}


#mainFigure {
	border-top: 1px solid rgb(0, 156, 255);
	background: url(images/top-main.jpg) no-repeat;
	background-size: 100% auto;
	background-position: center -400px;
	height: auto;
	min-height: 200px;
	position: relative;
}

.top_main_video {
	width: 100%;
	height: auto;
	position: absolute;
}

#mainFigure:after {
	content: "";
	display: block;
	background: url(images/top-copy.png) no-repeat center center;
	width: 100%;
	height: 100%;
	z-index: 200;
	position: absolute;
	
}

#mainFigure:before {
	content: "";
	display: block;
	background: url(images/dot_w01.png);
	z-index: 100;
	width: 100%;
	height: 100%;
	position: absolute;
}


#frontPage #mainFigure {
	border-top: 1px solid rgb(0, 156, 255);
	background: none;
	background-position: center -100px;
	background-size: 100% auto;
	height: auto;
	min-height: 850px;
	position: relative;
}


#frontPage #mainFigure:after {
	content: "";
	display: block;
	background: url(images/top-copy.png) no-repeat center 220px;
	width: 100%;
	height: 100%;
	z-index: 200;
	position: absolute;
	
}

#topLessonLink {
	position: relative;
	margin: 30px 10px 0 0;
	float: right;
	display: flex;
	flex-wrap: wrap;
	z-index: 700;
	width: 350px;
	animation: slideInfo 1s ease-out forwards;
}

#contentWrapper #topLessonLink {
	display: none;
}

@keyframes slideInfo {
	0% {
		opacity: 0;
		right: -50px;
	}
	100% {
		opacity: 1;
		right: 0;
	}
}

#topLessonLink li {
	width: 100%;
	display: flex;
	justify-items: center;
	align-items: center;
	position: relative;
}

#topLessonLink li::before {
	content: "";
	display: block;
	position: absolute;
	width: 30px;
	height: 1px;
	border-bottom: .5px solid #FFF;
	bottom: 10px;
	right: 10px;
}

#topLessonLink li::after {
	content: "";
	display: block;
	position: absolute;
	width: 1px;
	height: 10px;
	border-right: .5px solid #FFF;
	transform: rotate(-45deg);
	bottom: 9px;
	right: 13px;
}

#topLessonLink li:first-child {
	margin-bottom: 10px;
}

#topLessonLink li:nth-child(2) {
	margin-bottom: 10px;
}

#topLessonLink li a {
	background: rgb(40, 177, 177);
	color: #FFF;
	display: block;
	width:100%;
	padding: 10px;
	box-sizing: border-box;
	display: flex;
	justify-items: center;
	align-items: center;
}

#topLessonLink li a img {
	width: 20px;
	height: auto;
	float: left;
	margin-right: 10px;
}


#topLessonLink li a span {
	padding-top: 2px;
}

#schoolInfoUl {
	position: relative;
	margin: -300px 0 0 0;
	z-index: 300;

}


#InfoUl li {
	width: 30%;
	max-width: 450px;
	height: auto;
}

#schoolInfoUl a {
	float: left;
	display: block;
	width: 100%;
	height: 100%;
}


#schoolInfoUl img {
	float: left;
	display: block;
	width: 100%;
	height: 100%;
}

#schoolInfoUl span {
	display: none;
}

#newsSection {
	margin: 40px 0 0 0;	
}

#recentInfoUl li {
	float: left;
	width: 100%;
	margin-top: 20px;
}

#recentInfoUl li a:before {
	content: "》";
	display: block;
	width: 10px;
	float: left;
	margin-right: 5px;
}

.recentInfoTitle {
	padding: 2px;
}

.postDate {
	background: #F4B20C;
	border-radius: 10px;
	padding: 0 10px;
	margin-right: 10px;
	color: #FFF;
}

.sectionTitle {
	font-size: 200%;
	color: #F4B20C;
	padding-bottom: 10px;
	border-bottom: 1px solid #333;
}

.campaignUl {
	margin: 20px 0 0 0;
}


.campaignUl li {
	float: left;
}

#recentEntriesUl {

	margin: 20px 0 0 0;
}


#recentEntriesUl li {
	width: 300px;
}

.recentEntriesTitle {
	float: left;
	width: 100%;
	margin: 10px 0 0 0;
	background: #F4B20C;
	border-radius: 5px;
	box-sizing:border-box;
	padding: 10px;
	margin-right: 10px;
	font-weight:bold;
	color: #FFF;
}

.equipmentTitle {
	float: left;
	width: 100%;
	margin: 10px 0 0 0;
	background: #2E9123;
	border-radius: 5px;
	box-sizing:border-box;
	padding: 0 10px;
	margin-right: 10px;
	font-weight:bold;
	color: #FFF;
	height: 40px;
}

.equipmentUl li {
	margin: 20px 0 0 0;
	width: 200px;
}


.equipmentLi .postImgWrapper {
	height: 132px;
	overflow: hidden;
}

#schoolPage .equipmentLi .postImgWrapper {
	height: 182px;
	overflow: hidden;
}

.equipmentTitle {
	padding: 10px;
	box-sizing: border-box;
}

.equipmentUl li:nth-child(2){
	padding-top :0;
}

.equipmentUl li p {
	margin: 10px 0 0 0;
	font-size: 90%;
}


#recentEntriesUl .nailthumb-container {
	height: 180px;
	overflow: hidden;
}

#equipmentUl .nailthumb-container {
	height: 150px;
	overflow: hidden;
} 


#mapCanvas {
	height: 500px;
}

#mapCanvas iframe {
	float: left;
	width: 100%;
	height :500px;
}


#footWrapper {
	padding: 0 0 20px 0;
	background: rgb(22, 82, 133);
}

#footer {
	color: #FFF;
}


#schoolPage #mainFigure {
	min-height:200px;
}

#schoolPage .equipmentUl li {
	width :274px;
}

#busSection iframe {
	width: 100%;
	height: 400px;
}


.postContent {
	padding: 20px 0;
	width: 800px;
}

.postContent h2 {
	line-height: 130%;
	margin: 0 0 10px 0;
}

/*.campaignPage .postContent {
	width: 600px;
}*/


.postContent img{
	margin: 10px auto;
}

#busSection img {
	margin: 0 auto;
	padding: 20px;
	box-sizing: border-box;
}


#admissionSection h3 {
	font-size: 180%;
	padding-bottom: 10px;
}

#flowDl h3 {
	font-size: 120%;
}

#flowDl {
	position: relative;
	float: left;
	background: url(images/road.png) no-repeat;
	background-position: 12% top;
}


.admissionTitle {
	background: rgb(230,87,145);
	color: #FFF;
	padding: 10px;
	box-sizing: border-box;
}

.admissionFlowTitle {
	background: #0868AF;
	color: #FFF;
	padding: 10px;
	box-sizing: border-box;

}


#flowDl>li {
	margin: 20px 0 0 0;
}

#flowDl>li:first-child {
	margin-top: 0;
}

.note {
	border: 1px solid rgba(0, 51, 51, 1);
	font-size: 90%;
	padding: 10px;
	box-sizing: border-box;
}

.flowPointTitle {
	background: #E55664;
	padding: 5px 10px;
	box-sizing: border-box;
	color: #FFF;
}

.flowContent {
	width: 48%;
	padding: 0 0 20px 0;
	border-bottom: 1px dotted rgba(0,51,51,1);
}

.otherFlow h3 {
	background: rgb(0,51,51);
	color: #FFF;
	margin: 0 0 10px 0;
	padding: 0 0 0 10px;
	box-sizing: border-box; 
}

.otherFlow li:first-child img {
	margin: 20px 0 0 0;
}

.otherFlow li:nth-child(2) img {
	margin: 30px 0 0 10px;
}

.otherFlow li:nth-child(3) img {
	margin: 10px 0 0 0;
}

.otherFlow li:last-child img {
	margin: 20px 0 0 0;
}
.otherFlow>li {
	width: 48%;
	padding: 10px ;
	box-sizing: border-box;
	border: 1px dotted rgba(0,51,51,1);
}

.otherFlow>li {
	margin: 0 0 20px 0;
}

#qaSection h2 {
	margin: 20px 0 0 0;
}

#qaSection dt {
	font-weight: bold;
	margin: 20px 0 0 0;
}

#qaSection dt:before {
	content: "Q.";
	float: left;
} 

#qaSection dd:before {
	content: "A.";
	float: left;
}

.postContent table {
	float: left;
	width: 100% !important;
}

.courseUl .postImgWrapper {
	width: 100%;
	height: 62px;
}

.courseUl .postImgWrapper img {
	max-height: 70px;
	display: block;
	margin: 0 auto 0 auto;
}

.courseUl li:first-child .postImgWrapper img {
	 display: block;
	 margin-top: 10px;
}

#facebookSection {
	width: 500px;
}

.fb-page {
	float: left;
}

.pn {
	display: none;
}

.classDetail,
.classDetail p,
.classDetail dt,
.classDetail dd,
.classDetail table,
.classDetail ul,
.classDetail li {
	float: left;
}

.classDetail {
	width: 100%;
	box-sizing: border-box;

}

dl.classDetail {
	border: 1px solid rgb(0,51,51);
}

.classDetail>ul {
	padding: 10px;
	box-sizing: border-box;

}

.classDetail p {
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

.classDetail li {
	width: 100%;
}

.classDetail ul {
	width: 100%;
}

.classDetail dt {
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
	background: rgba(0,51,51,.7);
	color: #FFF;
	font-weight: bold;
}

.classDetail dd.str {
	padding: 20px 0;
	box-sizing: border-box;
}

.classDetail table {
	float: left;
	width: 100%;
}

.classDetail>table {
	border-right: 1px solid rgb(0,51,51);
	border-bottom: 1px solid rgb(0,51,51);
}

.classDetail tr {
	border-top: 1px solid rgb(0,51,51);
}

.classDetail td {
	padding: 10px;
	width: 85%;
	box-sizing: border-box;
}

.classDetail table th {
	width: 15%;
	background: rgba(0,51,51,.7);
	color: #FFF;
	text-align: center;
	padding: 10px;
	box-sizing: border-box;
}

.senior_dirver_info {
	font-size: 1.2rem;
}

.seniorPriceUl {
	border: 1px solid rgb(0,51,51);
	box-sizing: border-box;
}

.seniorPriceUl li {
	width: 50%;
}

.seniorPriceUl li:first-child { 
	border-right: 1px solid #FFF;
}

.seniorPriceUl li:first-child p {
	border-right: 1px solid rgb(0,51,51);
}

.seniorPriceUl li h4 {
	float: left;
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
	color: #FFF;
	background: rgba(0,51,51,.7);
}

.seniorPriceUl li p {
	float: left;
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

.priceDetailDiv {
	margin-top: 20px;
}

.priceDetailDiv .priceTable th{
	width: 50%;
	font-weight: normal;
}

.priceDetailDiv .priceTable {
	margin-bottom: 10px;
}


.priceDetailNote {
	float: left;
	width: 100%;
	margin: 10px 0 0 0;
}

#munakataPriceSection #priceUl>li {
	width: 20%;
}


#temporarySchoolDiv p {
	float: left;
}

.courseUl>li {
	width: calc( 100% / 7);
}

.courseUl {
	font-weight: bold;
}


#priceUl.munakataPriceUl>li {
	width: calc( 100% / 5);
}


#priceUl li a {
	display: block;
	float: left;
	width: 100%;
	height: 100%;
}

#priceArchivePage #priceUl {
	padding-bottom: 20px;
	border-bottom: 1px dotted rgb(0,51,51); 
}

#priceUl.munakataPriceUl>li:last-child {
	border-left: 1px dotted rgb(0,51,51); 
}

#priceUl.munakataPriceUl li:last-child h4 {
	padding: 5px 0 10px 60px;
	box-sizing: border-box;
}

#priceUl li span {
	margin: 12px 0 0 0;
}

#othreMenuUL li {
	padding: 0 0 0 60px;
	box-sizing: border-box;
}

#reqruitTable{
	float: left;
	width: 100%;
	margin: 20px 0 0 0;
	border-right: 1px solid rgb(0,51,51);
	border-bottom: 1px solid rgb(0,51,51);

}

#reqruitTable tr {
	border-top: 1px solid rgb(0,51,51);
}



#reqruitTable td {
	padding: 10px;
	width: 85%;
	box-sizing: border-box;
}

#reqruitTable th {
	width: 15%;
	background: rgba(0,51,51,.7);
	color: #FFF;
	padding: 10px;
	box-sizing: border-box;
}


.priceTable thead th {
	width: calc( 100% / 3);
	text-align: center;
}

.priceTable.studentPriceTable thead th,
.priceTable.bikePriceTable thead th {
	width: calc( 100% / 4);
	text-align: center;
}

tbody {
	box-sizing: border-box;
}

.priceTable {
	border-top: 1px solid rgb(0,51,51);
	box-sizing: border-box;
}

.priceTable td {
	border-right: 1px solid rgb(0,51,51);
	padding: 10px;
	box-sizing: border-box;
	text-align: right;
}

.priceTable tr {
	width: 100%;
	box-sizing: border-box;
	border-bottom: 1px solid rgb(0,51,51);
}

.priceTable th {
	background: rgba(0,51,51,.7);
	color: #FFF;
	padding: 10px;
	box-sizing: border-box;
}

.notax,
.tax {
	float: left;
	width: 100%;
}


.noteH {
	margin: 10px 0 10px 0;
	border-bottom: 1px solid rgb(0,51,51);
}


#flowDl:before {
	position: absolute;
	content: "";
	display: block;
	width: 160px;
	height: 72px;
	background: url(images/school/flow_car_02.png) no-repeat;
	background-size: cover;
	top: 200px;
	left: 120px;
}

#flowDl:after {
	position: absolute;
	content: "";
	display: block;
	width: 128px;
	height: 74px;
	background: url(images/school/flow_car_01.png) no-repeat;
	background-size: cover;
	bottom: 154px;
	left: 120px;
}

.contactChoiceButton li {
	text-align: center;
	padding: 10px;
	box-sizing: border-box;
	border: 1px solid #09F;
	background: rgb(21, 68, 119);
}


.contactChoiceButton .formChoiceLi.currentForm {
	background: #09F;
}


.kdsForm:not(.currentForm) {
	display: none;
}

.online_study {
	text-align: center;
	margin: 0 0 0 120px;
}

.online_study img {
	margin: 0 auto;
}

.online_study_note {
	color: #FFF;
	padding: 20px .2em;
}

.info_alert {
	display: block;
	width: 100%;
	margin: 20px 0;
	padding: 40px;
	box-sizing: border-box;
	font-size: 2rem;
	color: #fff;
	background: #FF0004;
	color: #FFF;
	text-align: center;
}

.admission_ptocedures_title {
	text-align: center;
	border-bottom: 1px solid #FFF;
	font-size: 2.4rem;
}

#admissionProceduresSection {
	min-height: 100dvh;
	box-sizing: border-box;
}


/*---------- form ----------------*/

.kdsTmpForm {
	padding: 20px 0 0 0;
}

#contactForm {
	margin: 40px 0 40px 0;
}

.wpcf7 {
	float: left;
	width: 100%;
	margin: 20px 0 0 0 !important;
}

.wpcf7 input,
.wpcf7 select {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#inquiryForm label {
	float: left;
}

#inquiryForm p {
	margin-top: 20px;
	margin-bottom: 0 !important;
}

.year_month {
	float: left;
	width: 100px;
	margin: 0 10px 0 0 !important;
}

.require {
	color: #F00;
	font-size: 80%;
	float: right;
}

.form-div {
	width: 48%;
	box-sizing: border-box;
}

.form-div p.l {
	margin: 10px 0 0 0;
}

span.wpcf7-list-item {
	margin-left: 0 !important;
}

.label-monitor .wpcf7-list-item-label {
	float:right;
	margin-top: 5px;
}

.wpcf7 input,
.wpcf7 textarea,
span.your-messagge,
#kdsForm input[type=text],
#kdsForm input[type=email],
#kdsForm textarea {
	width: 100%;
	box-sizing: border-box;
}

.wpcf7-form-control-wrap {
	float: left;
}

.unit {
	margin: 20px 0 0 0;
}

input[type=radio],
input[type=checkbox] {
	width: 2em;
	height: 2em;
}



input[type=text],
input[type=email],
input[type=date],
input[type=number],
textarea,
select {
	padding: 10px;
	box-sizing: border-box;
	font-size: 16px;
}

textarea {
	font-size: 120%;
	height: 138px;
}


button,
input[type=button],
input[type=reset] {
	padding: 10px;
	box-sizing: border-box;
	border: none;
	background:rgb(11, 170, 64);
	/* border-top: 1px solid rgb(3, 104, 36);
	border-left: 1px solid rgb(3, 104, 36);
	border-right: 1px solid rgb(3, 104, 36); */
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: 5px solid rgb(3, 104, 36);
	border-radius: 2px;
	color: #FFF;
}


input[type=submit]:not(#pdfSubmit) {
	margin: 50px 0 0 0;
	padding: 10px;
	box-sizing: border-box;
	background:rgb(11, 170, 64);
	/* border-top: 1px solid rgb(3, 104, 36);
	border-left: 1px solid rgb(3, 104, 36);
	border-right: 1px solid rgb(3, 104, 36); */
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: 5px solid rgb(3, 104, 36);
	border-radius: 2px;
	color: #FFF;
	width: 100%;
}

input[type=submit]:not(#pdfSubmit):active {
	border-bottom: 1px solid rgb(3, 104, 36);
	transform: translateY(0.2em);
}

.wpcf7-response-output {
	float: left;
	width: 100%;
	margin: 1em 0 2em !important;
	padding: 10px !important;
	box-sizing: border-box;
}


#cover-div {
	position: fixed;
	display: table;
	width: 100vw;
	height: 100vh;
	z-index: 2000;
	background: rgba(255,255,255,.9);
}

.info_contents {
	float: left;
	width: 100%;
	padding: 30px 0 0 0;
	box-sizing: border-box;
	position: relative;
}


#cover-a {
	display: table-cell;
	vertical-align: middle;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 220px;
	height: 220px;
	z-index: 4000;
	background: url(images/border.png) no-repeat;
	background-size: contain;
}


#remove_button {
	width: 30px;
	height: 30px;
	text-align: center;
	padding: 3px 0;
	box-sizing: border-box;
	border: 1px dotted #09F;
	position: absolute;
	right: 20px;
	bottom: 20px;
	color: #09F;
}


.cover_info {
	font-weight: bold;
}

.info_mark {
	color: #F00;
	font-size: 150%;
}

.go_to_detail:after {
	content: "≫";
	display: block;
	float: left;
	width: 100%;
	text-align: center;
	font-size: 200%;
	transform: rotate(90deg);
}

.formError {
	left: inherit !important;
	right: 0 !important;
}

#entriesTable {
	width: 100%;
}

.entries_page #wrapper {
	padding: 10px;
	box-sizing: border-box;
}

#entriesTable th,
#entriesTable td {
	padding: 10px;
	box-sizing: border-box;
}

#kdsForm {
	float: left;
	width: 100%;
}

#kdsForm h5 {
	font-size: 1rem;
	font-weight: normal;
	margin: 10px 0 0 0;
}

/*pdf*/

#printPdfPage #wrapper {
	padding: 40px 40px;
	box-sizing: border-box;
}

#printPdfPage #uid {
	padding: 12px;
	font-size: 2rem;
}

#pdfSubmit {
	margin: 0 0 0 20px;
	padding: 20px;
}

#printf {
	margin: 40px 0 0 0;
	float: left;
	width: 100%;
	height: 700px;
	border: none;
}

.paper_driver_alert_note {
	float: left;
	width: 100%;
	margin: 20px 0;
	font-size: 1.0rem;
	font-weight: bold;
}

.paper_driver_lesson_tel_note a {
	font-size: 1.2rem;
	font-weight: bold;
}

.paper_driver_info {
	margin: 10px 0;
	font-size: 1rem;
}

.corporate_training_contact_buttons {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.corporate_training_contact_buttons li {
	width: 45%;
}

.line_button,
.paper_driver_info a {
	display: inline-block;
	background: rgb(6, 199, 85);
	color: #FFF;
	font-weight: bold;
	padding: 10px;
	box-sizing: border-box;
	margin: 20px 0;
	border-radius: 4px;
	border-bottom: 4px solid rgb(2, 140, 10);
	width: 100%;
	text-align: center;
}

.line_button:active,
.paper_driver_info a:active {
	transform: translateY(0.2em);
	border-bottom: 1px solid rgb(2, 140, 10);
}

.mail_button {
	display: inline-block;
	background: rgb(21, 157, 247);
	color: #FFF;
	font-weight: bold;
	padding: 10px;
	box-sizing: border-box;
	margin: 20px 0;
	border-radius: 4px;
	border-bottom: 4px solid rgb(12, 107, 214);
	width: 100%;
	text-align: center;
}

.mail_button:active {
	transform: translateY(0.2em);
	border-bottom: 1px solid rgb(12, 107, 214);
}
/*---- questionnaire ----*/

.page_questionnaire .content {
	margin: 20px 0 0 0;
}

.page_questionnaire .sectionTitle {
	font-size: 180%;
	padding: 0 10px;
	box-sizing: border-box;
}

.questionnaire_header {
	display: flex;
	flex-wrap: wrap;
}

.questionnaire_header p {
	padding: 20px 10px;
	box-sizing: border-box;
	font-size: 1rem;
}

.questionnaire_header p span {
	margin-top: 20px;
}

#questionnaireSection .term_type_str{
	font-weight: bold;
	font-size: 1.2rem;
}

#questionnaireSection h3 {
	padding: 10px 10px;
	box-sizing: border-box;
	margin: 20px 0 10px 0;
	font-size: 1rem;
	color: rgba(0, 51, 51, 1);
}

#questionnaireSection select {
	margin-bottom: 10px;
	margin-left: 10px;
}

#questionnaireSection input[type=text],
#questionnaireSection input[type=number],
#questionnaireSection input[type=button],
#questionnaireSection textarea {
	width: 100%;
}

#questionnaireSection input[type=button] {
	background:rgb(96, 107, 119) !important;
	padding: 15px 0;
	font-size: 1rem;
}

#questionnaireSection .questionnaire_button {
	background:rgb(11, 170, 64) !important;
	border:#2E9123 !important;
	font-size: 1.4rem;
}

#questionnaireSection form dt {
	font-weight: bold;
	margin: 10px 0;
	font-size: 1rem;
	padding: 0 10px;
	box-sizing: border-box;
}

#questionnaireSection form p {
	width: 100%;
	display: flex;
	padding: 0 10px;
	box-sizing: border-box;
	align-items: center;
}

#questionnaireSection form p label {
	padding: 10px 0;
	width: 100%;
	margin-left: 10px;
}

.answer_index {
	display: flex;
	flex-wrap: wrap;
}

.answer_index h3 {
	width: 100%;
}

.answer_index dl,
.answer_index > p {
	padding: 0 10px;
	box-sizing: border-box;
}

.answer_index dt {
	margin-top: 10px;
	font-size: 1rem;
}

.answer_index p {
	font-weight: bold;
	font-size: 1.1rem;
}

.answer_text {
	margin-top: 20px;
	font-size: 1rem;
}

.user_answer h1 {
	color:rgba(0, 51, 51, 1);
}

.user_answer #contentWrapper {
	padding: 0;
	background: 0;
}


.user_answer .to_back {
	display: block;
	width: 100%;
	color: #FFF;
	padding: 20px;
	box-sizing: border-box;
	margin: 40px 0; 
	background:rgb(51, 117, 117);
}

/*---- diagnosis ----*/


.page_diagnosis h2 {
	margin-bottom: 20px;
}

.page_diagnosis h4 {
	width: 100%;
	font-size: 1.2rem;
	margin: 20px 0 5px 0;
}

.diagnosis_box {
	margin: 20px 0;
}

.diagnosis_box p {
	padding: 10px;
	font-weight: bold;
}

.diagnosis_box label {
	margin-right: 10px;
}

.diagnosis_box_01,
.diagnosis_box_02,
.diagnosis_box_03,
.diagnosis_box_04 {
	opacity: 0;
}

.diagnosis_box_01.on,
.diagnosis_box_02.on,
.diagnosis_box_03.on,
.diagnosis_box_04.on {
	animation: fadeElement .5s ease-out forwards;
}

@keyframes fadeElement {
	0% {
		opacity: 0;
		margin-top: 80px;
	}
	100% {
		opacity: 1;
		margin-top: 20px;
	}
}

.diag_name_box {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.diag_name_box:nth-of-type(1) {
	margin-bottom: 20px;
}

.diag_name_box div:first-child {
	width: 45%;
	margin-right: 10px;
}

.diag_name_box div:nth-child(2) {
	width: 45%;
}

.diag_dob_box {
	display: flex;
}

.diag_dob_box div:first-child {
	width: 33%;
	margin-right: 10px;
}

.diag_dob_box div:nth-child(2) {
	width: 15%;
	margin-right: 10px;
}

.diag_dob_box div:nth-child(3) {
	width: 15%;
}

.diagnosis_user_info_table {
	width: 100%;
	font-size: 1rem;
	border-right: 1px solid #39F;
}

.diagnosis_user_info_table th {
	width: 30%;
	background: #39F;
	color: #FFF;
	padding: 10px;
	box-sizing: border-box;
	text-align: left;
	border-bottom: 1px solid #FFF;
}

.diagnosis_user_info_table td {
	width: 80%;
	padding: 10px;
	text-align: left;
	border-bottom: 1px solid #39F;
}

.diagnosis_judgement_table {
	width: 100%;
	margin-top: 20px;
}

.diagnosis_judgement_table th,
.diagnosis_judgement_table td {
	display: block;
	width: 100%;
}

.diagnosis_judgement_table th {
	text-align: left;
	background: #39F;
	color: #FFF;
	padding: 10px;
	box-sizing: border-box;
}

.diagnosis_judgement_table td {
	text-align: center;
	font-size: 2rem;
	padding: 10px;
	box-sizing: border-box;
}

.final_judge_box {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 20px 0;

}

.final_judge_box h4 {
	width: 100%;
	font-size: 3rem;
	margin: 20px 0 40px 0;
}

.final_judge_point_box {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.final_judge_box p {
	width: 50%;
	padding: 10px 0;
}

.final_judge {
	font-size: 3rem;
}

.checkbox04-input{
	display: none;
  }
  
  .checkbox04-parts{
	position: relative;
	margin: 10px 0 20px 0;
	padding: 15px 20px 15px 20px;
	transition:.3s;
	color: #444;
	border-radius: 8px;
	border: 1px solid rgb(118, 118, 118);
	display:inline-block;
	line-height:1;
	z-index: 0;
  }
  
  .checkbox04-input:checked + .checkbox04-parts{
	background: #39F;
	color: #fff;
	border: 1px solid #39F;
  }
  

  
  .checkbox04-input:checked + .checkbox04-parts::before {
	border: 1px solid #39F;
  }
  
  .checkbox04-input:checked + .checkbox04-parts::after {
	left: 26px;
	background: #39F;
  }

/*------ pdf ------*/

#pdftestPage {
	padding: 10%;
	box-sizing: border-box;
}

#pdftestPage .kdsForm:not(.currentForm){
	display: inherit;
}

#admissionAnnounce {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	height: 300px;
	padding: 20px 20px 40px 20px;
	overflow: scroll;
	box-sizing: border-box;
	line-height: 160%;
	border: 1px solid #FFF;
}

#admissionAnnounceContent {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

.accident_rate_box {
	margin-bottom: 40px;
}

.admission_point_remarkable {
	display: block;
	width: 100%;
	padding: 10px 0;
	font-size: 1.1rem;
	color: rgb(236, 75, 75);
}

.admission_point_remarkable_note {
	font-size: .9rem; 
	font-weight: normal;
	color: rgba(0, 51, 51, 1);
	padding-left: 10px;
}

.tentative_application_limit_title {
	padding: 30px 0;
}

.tentative_application_info {
	margin-bottom: 40px;
}

.admission_agreement_title {
	padding: 40px 0;
}

#admissionAnnounce h1,h2,p {
	width: 100%;
}


#admissionAnnounce h1 {
	font-size: 1.2rem;
	padding: 20px 0 10px 0;
}

#admissionAnnounce h2 {
	font-size: 1rem;
	padding: 20px 0 10px 0;
}

.close {
	display: none;
}

.agree_button_wrapper {
	display: flex;
	justify-content: center;
}

.agree_button {
	width: 300px;
	max-width: 100%;
	margin: 40px auto;
	background:rgb(11, 170, 64);
	border-top: transparent;
	border-left: transparent;
	border-right: transparent;
	border-bottom: 5px solid rgb(3, 104, 36);
	border-radius: 2px;
}

.agree_button:disabled {
	background:rgb(134, 134, 134);
	border: none;
}

.agree_button:active {
	transform: translateY(0.2em);
	border-bottom: 1px solid rgb(3, 104, 36);
}

.agree_button:hover {
	cursor: pointer;
}


.questionnaire_header h1{
	line-height: 130%;
	border: none;
	font-size: 1.2rem !important;
	background: #39F;
	color: #FFF;
	padding: 20px 10px !important;
}

.evaluation_choice {
	display: flex;
	width: 100%;
	flex-wrap: nowrap;
	justify-content: space-between;
}


.evaluation_choice li {
	width: 45%;
}

.evaluation_choice li a {
	width: 100%;
	display: block;
	padding: 20px 10px;
	box-sizing: border-box;
	text-align: center;
	border-radius: 4px ;
}

.recommended_yes {
	background:rgb(26, 176, 241);
	color: #FFF;
	border-bottom: 4px solid #3a78b3 !important;
}

.recommended_no {
	background:rgb(166, 198, 212);
	color: #FFF;
	border-bottom: 4px solid #9dadbb;
}

.recommended_yes:hover {
	margin-top: 2px;
	color: #000;
	background: rgb(143, 214, 247);
	border-bottom: 2px solid #3c79b1;
  }


.recommended_no:hover {
	margin-top: 2px;
	background:rgb(184, 208, 217);
	color: #000;
	border-bottom: 2px solid #94a2af;
}

.input_wrapper {
	width: 100%;
	margin-bottom: 20px;
}

.evaluation_form .input_title {
	width: 130px;
} 

input[name=student_number],
input[name=student_name] {
	width: 20em !important;
	max-width: 100% !important;
	margin-left: -10px;
}

.evaluation_form textarea[name=message] {
	box-sizing: border-box;
}

textarea:disabled {
	border: none;
}

.evaluation_form .confirm_button {
	background:rgb(26, 176, 241) !important;
	color: #FFF;
	border-bottom: 4px solid #3a78b3 !important;
	border-radius: 4px !important;
	padding: 20px 10px !important;
	box-sizing: border-box;
	margin-bottom: 40px !important;
}

.evaluation_form .confirm_button:hover {
	margin-top: 2px;
	color: #000;
	background: rgb(143, 214, 247) !important;
	border-bottom: 2px solid #3c79b1 !important;
  }

.evaluation_form .return_button {
	background:rgb(119, 151, 165) !important;
	color: #FFF;
	border-bottom: 4px solid #57636d !important;
	border-radius: 4px !important;
	padding: 20px 10px !important;
	box-sizing: border-box;
	margin-bottom: 40px !important;
}

.evaluation_form .return_button:hover {
	margin-top: 2px;
	color: #000;
	background: rgb(224, 234, 238) !important;
	border-bottom: 2px solid #bac0c5 !important;
  }


.return_home {
	display: block;
	width: 100%;
	margin-top: 30px;
}  

@media screen and (min-width:1500px) and ( max-width:1780px) {
	.container {
		width: 96%;
	}
	
	.nav_core {
		width: 780px;
	}

	.equipmentUl li {
		box-sizing: border-box;
	}
	
	.equipmentUl li:last-child {
		padding-right: 0;
	}

	#business-hours {
		margin-left: 20px;
		font-size: 90%;
	}
	
	#mainNav {
		width: 770px;
		color: rgb(0,51,51);
		font-size: 90%;
	}
	
	#web-reservation {
		background: #0C0;
		margin-right: 10px;
	}
	
	#web-reservation a {
		color: #FFF;
		font-weight: bold;
		padding: 18px 20px;
		box-sizing: border-box;
		font-size: 90%;
	}
	
	.fa-calendar {
		margin-right: 2px;
	}

	#headContact {
		width: 480px;
	}
	
	#logo {
		width: 200px;
		height:40px;
		margin: 5px 0 0 0;
		min-height: inherit; 
		background-size: contain;
	}
	
	#mainNav a {
		padding:10px 0;
	}

	#mainNav li:after {
		top: 10px;
	}
	
	#mainNav li:first-child:before {
		top: 10px;
	}

	#headContact .fs200 {
		font-size: 180%;
	}
	
	#headContact .fs90 {
		font-size: 80%;
	}
	
	.contact_buttons div a {
		padding: 2px;
	}
	
	.contactDiv a {
		padding: 2px 0 !important;
	}
	
	
	.telDiv  {
		margin: 8px 0 -2px 0;
	}
		
	#pageWrapper {
		margin-top: 76px;
	}

	#contentWrapper {
		padding: 10px;
	}
	
	.musashi_study {
		margin: 0 0 0 150px;
	}

}

@media screen and (min-width:1341px) and ( max-width:1499px) {

	
	#logo {
		width: 200px;
		height:40px;
		margin: 5px 0 0 0;
		min-height: inherit; 
		background-size: contain;
	}

	.contact_buttons {
		width: 320px;
	}

	.nav_core {
		width: 680px;
	}

	#business-hours {
		margin-top: 10px;
		margin-left: 0;
		font-size: 85%;
	}

	#headContact {
		padding-right: 10px;
		margin: 10px 0 0 0;
		width: 320px;
	}

	
	#mainNav a {
		padding: 10px 0;
	}

	#mainNav li:after {
		top: 10px;
	}
	
	#mainNav li:first-child:before {
		top: 10px;
	}

	#headContact div:nth-child(2) a {
		float: left;
		width: 100%;
	}

	.telNum {
		font-size: 1.2rem;
		margin: -5px 0 0 0;
	}

	.icon-free_dial {
		font-size: 1.2rem;
		margin: 1px 0 0 160px;
	}

	#mainNav {
		width: 670px;
		color: rgb(0,51,51);
		font-size: 90%;
	}
	

	#headContact div a {
		padding: 3px !important;; 
	}
		
	#web-reservation {
		position: absolute;
		right: 160px;
		top: 12px;
		float: left;
		margin: 0;
		text-align: center;
		width: 160px;
		background: #0C0;
		margin-right: 10px;
	}
	
	#web-reservation a {
		width: 100%;
		color: #FFF;
		font-weight: bold;
		padding: 0;
		box-sizing: border-box;
		font-size: 90%;
	}

	.fa-calendar {
		margin-right: 2px;
	}

	.telDiv  {
		margin: 0 0 0 0;
	}
	
	#mainNav a {
		padding:10px 0;
	}

	#mainNav li:after {
		top: 10px;
	}
	
	#mainNav li:first-child:before {
		top: 10px;
	}

	#headContact .fs200 {
		font-size: 180%;
	}
	
	#headContact .fs90 {
		font-size: 80%;
	}
	
	#headContact div a {
		padding: 0;
	}
	
	.contactDiv a {
		padding: 2px 0 !important;
	}
	
	
	.telDiv  {
		margin: 0 0 -2px 0;
	}
		
	#pageWrapper {
		margin-top: 76px;
	}

	#contentWrapper {
		padding: 10px;
	}
	
	.musashi_study {
		margin: 0 0 0 150px;
	}

	#mainFigure:after {
		background-size: contain;
	}
}


@media screen and (min-width:1237px) and ( max-width:1340px) {
	
	#logo {
		width: 200px;
		height:40px;
		margin: 0 0 0 0;
		min-height: inherit; 
		background-size: contain;
	}

	#siteDescription {
		margin-left: 0 !important;
	}
	
	.contact_buttons {
		width: 320px;
	}

	.nav_core {
		width: 680px;
	}

	#business-hours {
		margin-top: 10px;
		margin-left: 0;
		font-size: 85%;
	}

	#headContact {
		padding-right: 10px;
		margin: 10px 0 0 0;
		width: 320px;
	}

	
	#mainNav a {
		padding: 10px 0;
	}

	#mainNav li:after {
		top: 10px;
	}
	
	#mainNav li:first-child:before {
		top: 10px;
	}

	#headContact div:nth-child(2) a {
		float: left;
		width: 100%;
	}

	.telNum {
		font-size: 1.2rem;
		margin: -5px 0 0 0;
	}

	.icon-free_dial {
		font-size: 1.2rem;
		margin: 1px 0 0 160px;
	}

	#mainNav {
		width: 670px;
		color: rgb(0,51,51);
		font-size: 90%;
	}
	

	#headContact div a {
		padding: 3px !important;; 
	}
		
	#web-reservation {
		position: absolute;
		right: 160px;
		top: 12px;
		float: left;
		margin: 0;
		text-align: center;
		width: 160px;
		background: #0C0;
		margin-right: 10px;
	}
	
	#web-reservation a {
		width: 100%;
		color: #FFF;
		font-weight: bold;
		padding: 0;
		box-sizing: border-box;
		font-size: 90%;
	}

	.fa-calendar {
		margin-right: 2px;
	}

	.telDiv  {
		margin: 0 0 0 0;
	}
		
	#pageWrapper {
		margin-top: 76px;
	}

	#contentWrapper {
		padding: 10px;
	}
	
	.musashi_study {
		margin: 0 0 0 150px;
	}

	#mainFigure:after {
		background-size: contain;
	}
}

@media screen and (min-width:1081px) and ( max-width:1236px) {
	#logo {
		width: 200px;
		height:40px;
		margin: 10px 0 0 0;
		min-height: inherit; 
		background-size: contain;
	}

	.nav_core {
		width: 700px;
	}


	#siteDescription {
		margin-left: 0 !important;
	}
	
	#business-hours {
		margin-top: 15px;
		margin-left: 0;
		font-size: 85%;
	}

	#headContact {
		margin-top: 10px;
		width: 160px;
		position: relative;
	}

	.contact_buttons {
		width: 100%;
	}
	
	#mainNav a {
		padding:10px 0;
	}

	#mainNav li:after {
		top: 10px;
	}
	
	#mainNav li:first-child:before {
		top: 10px;
	}

	.contactDiv {
		display: inherit;
	}
	
	#headContact div:nth-child(2) a {
		float: left;
		width: 100%;
	}

	.telNum {
		font-size: 1.2rem;
		margin: -5px 0 0 0;
	}

	.icon-free_dial {
		font-size: 1.2rem;
		margin: 0 0 0 -5px;
	}

	#mainNav {
		width: 670px;
		color: rgb(0,51,51);
		font-size: 90%;
	}
	

	#headContact div a {
		padding: 0;
	}
	
	.contactDiv a {
		padding: 2px 0 !important;
	}
	
	#web-reservation {
		position: absolute;
		left: -110px;
		text-align: center;
		width: 100px;
		background: #0C0;
		margin-right: 10px;
		margin-top: 0;
	}
	
	#web-reservation a {
		width: 100%;
		padding: 26px 0 !important;
		color: #FFF;
		font-weight: bold;
		box-sizing: border-box;
		font-size: 90%;
		vertical-align: middle;
		justify-self: center;
	}

	.fa-calendar {
		margin-right: 2px;
	}

	.telDiv  {
		margin: 0 0 0 0;
	}
		
	#pageWrapper {
		margin-top: 76px;
	}

	#contentWrapper {
		padding: 10px;
	}
	
	.musashi_study {
		margin: 0 0 0 150px;
	}

	#mainFigure:after {
		background-size: contain;
	}
}	

@media(max-width:1080px){
	

	#contentWrapper #topLessonLink {
		display: inherit;
	}
	.mbs {
		display: inherit !important;
	}

	.mbn {
		display: none !important;
	}

	body {
		font-size: 90%;
	}
	
	#header {
		float: left;
		width:100%;
		box-sizing: border-box;
		position: relative;
	}

	.contact_buttons {
		width: 100%;
	}

	.menu_button a {
		display: flex !important;
		justify-content: center;
		align-items: center;
	}

	.nav_core {
		width: inherit;
	}
	
	#titleDiv {
		padding: 0 0 0 10px;
		box-sizing: border-box;
	}
	
	#logo {
		width: 160px;
		height:40px;
		min-height: inherit; 
		background-size: contain;
	}
	
	#headContact {
		width: 100%;
		padding-right: 0;
		margin: 10px 0 0 0;
		max-height: 40px;
		overflow: hidden;
	}
	
	.contact_buttons div a {
		padding: 0;
		box-sizing: border-box;
		color: #FFF;
		position: relative;
		font-weight: normal;
	}

	.contact_buttons div a i {
		position: absolute;
		left: 10px;
		top: calc(50% - .5em);
	}
	
	#headContact a.telA {
		font-size: 120%;
		height: 40px;
	}
	
	.telA:before {
		display: none;
	}
	
	.telDiv {
		width: 33.3%;
		background: rgb(0, 130, 249);
		margin: 0;
		height: 40px;
	}
	
	.telStr {
		float: left;
		width: 100%;
		padding: 10px 0;
		box-sizing: border-box;
	}
	
	.inquiryStr {
		float: left;
		width: 100%;
		height: 100%;
		line-height: 120%;
		padding: 2px 0 0 4px;
		box-sizing: border-box;
	}
	
	.temporaryEntryStr {
		float: left;
		width: 100%;
		box-sizing: border-box;
		line-height: 110%;
	}

	
	#headContact i {
		font-size: 120%;
		margin-right: 5px;
	}
	
	#headContact a.telA {
		font-weight: normal;
		font-size: 90%;
		color: #FFF;
		text-align: center;
	}
	
	
	
	.contactDiv {
		width: 66.6%;
		justify-content: inherit;
	}
	
	#toInquery {
		height: 40px;
	}
	
	#toInquery span {
		width: 100%;
		text-align: center;
	}
	
	.contact_buttons div:nth-child(2) a {
		width: 50%;
		height: 40px;
	}
	
	.contactDiv {
		font-size: 90%;
		height: 40px;
	}
	
	.mn {
		display: none;
	}
	
	.pn {
		display: inline-block;
	}
	
	#web-reservation.ma {
		position: absolute;
		right: 25px;
		top: 10px;
		margin-top: inherit;
	}
	
	#web-reservation.ma a {
		padding: 5px 10px;

	}
	
	#menuButton {
		position: absolute;
		top: 6px;
		right: 5px;
		border-radius: 10px;
	}
	
	#menuButton a {
		display: block;
		width: 100%;
		height: 100%;
		padding: 10px 10px 0 10px;
		box-sizing:border-box;
		color: rgb(0, 130, 249);
	}
	
	#business-hours {
		margin-left: inherit;
		padding: 0 5px;
		box-sizing: border-box;
		font-size: 40%;
		margin: 30px 0 0 30px;
	}
	
	#business-hours dd {	
		margin: 0;
	}
	
	#mainNav {
		width: 100%;
	}
	
	#mainNav ul {
		display: block;
	}
	
	#mainNav ul li {
		width: 100%;
	}
	
	#mainNav li:after {
		border-right: none;
	}
	
	#mainNav li:first-child:before {
		border-right: none;
	}
			
	#mainFigure {
		border-top: none;
		background: url(images/top-main.jpg) no-repeat;
		background-size: 100% auto;
		/* background-position: center -400px; */
		height: auto;
		min-height: 200px;
		position: relative;
	}

	#frontPage #mainFigure:after {
		content: "";
		display: block;
		background: url(images/top-copy.png) no-repeat top 56% center;
		width: 90%;
		height: 100%;
		z-index: 200;
		margin: -5% 0 0 5%;
		position: absolute;
	}
	
	#mainFigure:before {
		background: url(images/dot_w.png);
		background-size: 2px 2px;
	}
	
	#mainFigure:after {
		width:90%;
		margin: 4% 0 0 5%;
		background-size: contain;
	}


	#topLessonLink {
		margin: 10px 10px 0 0;
	}
	
	#frontPage #mainFigure:after {
		background-size: contain
	}

	.container {
		width: 100%;
	}
	
	#pageWrapper {
		margin-top: 100px;
	}

	#siteDescription {
		display: none;
	}
	
	#frontPage #mainFigure {
		min-height: 200px;
		border-top: none;
	}
	
	#schoolInfoUl {
		margin-top: -44px;
	}
	
	#schoolInfoUl li {
		width: 33.3%;
		box-sizing: border-box;
	}
	
	#schoolInfoUl li a {
		padding: 20px 0;
		text-align: center;
		box-sizing: border-box;
		color: #FFF;
	}
	
	#schoolInfoUl i {
		margin-right: 5px;
	}
	
	#schoolInfoUl li:nth-child(1) a {
		background: rgb(247,125,154);
	}
	
	#schoolInfoUl li:nth-child(2) a {
		background: rgb(112,191,74);
	}
	
	#schoolInfoUl li:nth-child(3) a {
		background: rgb(61,153,255);
	}
	
	#schoolInfoUl span {
		display: block;
	}
	
	#schoolInfoUl img {
		display: none;
	}
	
	#contentWrapper {
		margin-top: 0;
		padding: 10px;
	}
	
	#newsSection {
		margin-top: 10px;
	}
	
	.sectionTitle {
		font-size: 150%;
	}
	
	#contentBox {
		padding: 10px;
	}

	.thanks_answer #contentBox {
		padding: 50px 20px;
	}

	.page_questionnaire #contentBox {
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.campaignUl {
		display: block;
	}
	
	.campaignUl li {
		float: left;
		width: 100%;
	}
	
	
	.equipmentUl {
		display: block;
	}
	
	.equipmentUl li  {
		float: left;
		width: 100%;
	}
	
	#mapCanvas {
		height: 300px;
	}

	#mapCanvas iframe {
		float: left;
		width: 100%;
		height :300px;
	}

	
	.form-div {
		width: 100%;
		padding: 0 10px;
		box-sizing: border-box;
	}
	
	#admissionSection .w50,
	#admissionSection .w25 {
		width: 100%;
	}
	
	#admissionSection img {
		width: 100%;
	}

	.accident_rate_box {
		margin-bottom: 0;
	}
	
	#flowDl {
		background: none;
	}
	
	#flowDl:before {
		display: none;
	}

	#flowDl:after {
		display: none;

	}
		
	#flowDl h3 {
		width: 100%;
	}
	
	.flowContent {
		width: 100%;
	}
	
	.flowContent h4 {
		margin-top: 10px;
	}
	
	.otherFlow {
		display: block;
	}
	
	.otherFlow li {
		float: left;
		width: 100%;
	}
	
	#recentEntriesUl {
		display: block;
	}
	
	#recentEntriesUl li {
		float: left;
		width: 100%;
	}
	
	.postContent,
	.campaignPage .postContent {
		width: 100%;
	}
	
	.courseUl {
		display: block;
	}
	
	.courseUl li {
		width: 100%;
		padding: 10px 0;
		border-bottom: 1px dotted rgb(0,51,51);
	}
	
	.courseUl>li:last-child {
		border-bottom: none;		
	} 
	
	#busSection img {
		display: block;
		margin: 20px auto;
		padding: 20px 0 0 0;
		width: 100%;
	}
	
	#instaSection {
		width: 100%;
	}
	
	#instaSection iframe {
		float: left;
		width: 100% !important;
	}
	
	#facebookSection {
		width: 100%;
		margin-top: 20px;
	}
	
	.postContent h2 {
		font-size: 120%;
	}
	
	div.mgtm20 {
		margin-top: 0;
	}
	
	img.mgtm10 {
		margin-top: 0;
	}
	
	#priceUl.munakataPriceUl >li {
		width: 100% !important;
		text-align: center;
	}
	
	#priceUl.munakataPriceUl >li:last-child {
		border-left: none; 
	}
	
	#priceUl.munakataPriceUl  li:last-child h4 {
		display: none;
	}
	
	
	#othreMenuUL li {
		padding: 20px 0;
	}
	
	.equipmentLi .postImgWrapper {
		height: auto;
	}
	
	#schoolPage .equipmentUl li {
		width: 100%;
	}
	
	#schoolPage .equipmentLi .postImgWrapper {
		height: auto;
	}
	
	.recruitDescription {
		margin: 5px 0 10px 0;
		font-size: 70%;
	}
	
	#priceArchivePage #priceUl {
		border-bottom: none; 
	}
	
	.kitty {
		max-width: 200px;
		height: auto;
	}
	
		
	.priceSection h2 {
		background: rgba(0, 51, 51, 1);
		color: #FFF;
		text-align: center;
	}
	
	.plans {
		margin-bottom: 20px;
	}
	
	.info_alert {
		font-size: 1.2rem;
	}
	
	.kdsForm {
		padding: 20px;
		box-sizing: border-box;
	}

	.kdsForm>h1 {
		padding: 20px 0;
		box-sizing: border-box;
	}

	.kdsForm>h2{
		padding: 0 0 20px 0;
		box-sizing: border-box;
	}

	#kdsForm h5{
		padding: 20px 0 10px 0;
		box-sizing: border-box;
	}

	.provisional_admission .unit {
		padding-right: 5px;
	}


	.job>span,
	.qualification>span,
	.acquired_licenses>span {
		display: inline-block;
		width: 50%;
	}

	.job>span label,
	.qualification>span label,
	.acquired_licenses>span label {
		display: flex;
		width: 100%;
		box-sizing: border-box;
		padding: 5px 40px 5px 0;
		box-sizing: border-box;
		align-items: center;
		justify-content: space-between;
	}

	.job>span label input,
	.qualification>span label input,
	.acquired_licenses>span label input,
	.lesson_timezone label input {
		float: right;
	}
	

	
	.lesson_timezone>span {
		display: inline-block;
		width: 100%;
	}


	.lesson_timezone label {
		display: inline-block;
		width: 50%;
		padding: 5px 40px 5px 0;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	#admissionSection h3 {
		padding-bottom: 10px;
		line-height: 130%;
	}

	.evaluation_choice {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}

	.evaluation_choice li {
		width: 100%;
		margin-bottom: 20px;
	}

	.evaluation_form .input_title {
		width: 100%;
	}

	.input_wrapper {
		flex-wrap: wrap;
	}

	input[name=student_number],
	input[name=student_name] {
		width: 100% !important;
		margin-left: 0;
	}

	.confirm_message {
		display: block;
		width: 100%;
	}
}

@media(max-width:600px){

	.contact_buttons {
		width: 100%;
		display: flex;
		width: 100%;
		align-items: center;
	}

	.icon-free_dial {
		display: none;
	}

	#web-reservation {
		width: 40%;
		top: 10px !important;
	}

	#business-hours {
		width: 100%;
		margin: 0 0 0 0;

	}
		
	#headContact a {
		display: block;
	}
	
	input[type=submit]{
		width: 90%;
		margin: 20px 5%;
	}

	.thanks_answer #contentWrapper {
		height: 100vh;
	}

	.corporate_training_contact_buttons {
		flex-wrap: wrap;
	}

	.corporate_training_contact_buttons li {
		width: 100%;
	}
}