@charset "utf-8";
/* CSS Document */

html, body { position: relative; height: 100%; 	-webkit-text-size-adjust: 100%; }

body { font-size:14px; line-height:1.4; color: #333; font-family: 'M PLUS Rounded 1c',"ヒラギノ角ゴ Pro W3",Meiryo,"Hiragino Kaku Gothic Pro",Verdana,sans-serif; margin: 0 auto; overflow-x:hidden; border-top: 8px solid #FFCB33; }

img { border:none; vertical-align:bottom; }
img.top { vertical-align:top; }
img.middle { vertical-align:middle; }

address, em { font-style:normal; }


a { color:#333; text-decoration: none; }
a:hover { color:#ff7f00; opacity:0.8; filter:alpha(opacity=80); -ms-filter: "alpha( opacity=80 )"; }
.c-both { clear:both; }
.left { float:left; }
.right { float:right; }
.center { display:block; margin:0 auto; text-align:center; }

span.hissu { color:#C00; font-size:12px; }
span.memo { color:#666; font-size:12px; }

header, article, footer, section, aside, nav, cite, figure, figcaption, address { display: block; }

header { width:100%; padding-top: 0.8em; padding-bottom: 0.1em; }

header section#header { margin:0 auto; width:100%; max-width:1050px; }

div.nav_box{ margin-top: 0.8em; }

#spnav,#spmenu { display: none; }


/******************************  header追加  *************************************/

footer img.logo,
#logo { margin: 0; width: 100%; display: block; float: left; max-width: 234px; font-size: 1em; }

#header div.left_box{ width: 70%; }

#header div.left_box a{
display: block; float: left; width: 100%; }

#header div.left_box a img{ width: 100%; }

#header div.left_box a span.logo_txt,
#footer div.left_box a span.logo_txt{ display: inline-block; background-color: #000; width: 100%; color:#FFF; text-align:center; padding: 0.4em 0; border-radius: 5px; margin-top:4px; }

#header span.header_tel{ display:block; font-size:1.071em; font-weight: bold; }

#header div.telmail a{ font-size:3.4em; color:#FF6565; font-weight: 500; font-family: 'Myriad Pro'; line-height:1em; }

#header nav{ padding-top:4px; }

#header ul#nav{ padding: 0; margin: auto; line-height: 2em; }

#header ul#nav li{ list-style:none; float:left; border-left: 2px solid #959595; border-right: 2px solid #959595; width:calc(100% / 7); width:14.275%; text-align:center; font-weight: bold; box-sizing: border-box; }
#header ul#nav li + li {   border-left: 0;   border-right:2px solid #959595; }


#header ul#nav li a{ font-size:1.16em; font-weight: bold; font-family: 'メイリオ'; text-align:center; }

#header span.header_area{ font-weight: 500; padding-top: 1.5em; padding-left: 2.5em; font-size:0.929em; max-width:36em; }
#header ul#nav li ul#cmenu_menu { padding-left: 0; display: none; }
#header ul#nav li ul#cmenu_menu li { float: none; width: 15em; display: block; border-left: none !important; border-right: none !important;
/*    background-color: #F9C731;*/ background-color: #EEE; margin-bottom: 1px; line-height: 1.5em; padding: 1vw 0; }
#header ul#nav li ul#cmenu_menu li a { width: 100%; display: block; font-size: 1.071em; font-weight: 500; }
li.nav_b { position: relative; }
#cmenu_menu { position: absolute; z-index: 10000; top: 2em; left: -2.25em; margin: 0 0 0 0; padding: 1%; list-style-type: none; list-style-type: none; opacity: 1; filter: alpha(opacity=90); -ms-filter: "alpha( opacity=90 )"; }
/********************  end header追加  *****************************************/


.inner{ width:95%; max-width:1722px; margin:auto; }

.middle_inner{ width:90%; max-width:1050px; margin:auto; }

.more_inner{ width:94%; max-width:965px; margin:auto; }


/***********************  footer 追加  ******************************/

footer#footer{ padding-top: 5em; background-color:#eeeeee; }

footer#footer p.footer_area{ font-size:0.857em; font-weight:600; }

footer#footer p.footer_area span{ border-left: solid 1px; padding-left: 1em; margin-left: 1em; }

footer#footer div.footer_left{ width:70%; float: left; }

#footer div.left_box { width: 32%; }

#footer div.left_box a { width: 100%; }

footer#footer ul.footer_small{ padding:0; padding-bottom: 0.8em; }

footer#footer ul.footer_small li{ list-style:none; font-size:0.857em; padding-right: 1em; line-height: 1em; font-weight:bold; }

footer#footer ul.footer_small li+ li { border-left:2px solid #959595; border-right: 0; padding-left: 1em; }

footer#footer div.logo_box span{ font-weight:bold; }

footer#footer div.logo_box div.logo_left{ padding-left:1.5em; padding-top: 1.5em; }

footer#footer div.logo_box ul{ padding:0; margin: 0.7em 0 0 0; }

footer#footer div.logo_box ul+ ul{ padding-top: 0.5em; margin: 0; }

footer#footer div.logo_box ul li{ list-style:none; float:left; font-size:0.857em; line-height: 1em; padding-right:0.6em; font-weight: 500; }

footer#footer div.logo_box ul li+ li { border-left:2px solid #959595; border-right: 0; padding-left: 0.6em; }

footer#footer div.footer_nav{ padding-top: 0.5em; font-size: 1.1em; }

footer#footer div.footer_nav ul.footer_nav{ padding:0; display: inline-block; width: auto; }

footer#footer div.footer_nav ul.footer_nav + ul.footer_nav{ margin-left: 4em; } 

footer#footer div.footer_nav ul.footer_nav li{ list-style: none; width: auto; font-size:1.25em; }

footer#footer div.footer_nav ul.footer_nav li i{ padding-right: 0.7em; font-size: 0.85em; color:#666666; font-weight: 600; vertical-align: middle; }

footer#footer div.footer_nav ul.footer_nav li a i{ color: #FD6969; }

footer#footer div.footer_nav ul.footer_nav li a{ font-weight: 400; }

footer#footer div.footer_right{ float:right; width:30%; }

footer#footer span.header_tel { display: block; font-size: 1.071em; font-weight: bold; }

footer#footer div.footer_right a.namber{ font-size: 3.47em; color: #FF6565; font-weight: 400; font-family: 'Roboto', sans-serif; }

footer#footer div.footer_sns{ padding-top: 1em; }

footer#footer div.footer_sns ul{ list-style:none; padding:0; }

footer#footer div.footer_sns ul li{ width:20%; }

footer#footer div.footer_sns ul li.mail_icon{ position:relative; top:-0.1em; }

footer#footer div.footer_right i{ font-size: 3.5em; }

footer#footer div.footer_right i.fa-envelope{ font-size: 2.1em; font-weight: 300; color:#FFF; background-color:#FD6969; position: relative; top: 0.15em; padding: 0.25em; border-radius: 12px; }

footer#footer div.footer_right i.fa-facebook-square{ color:#4267B2; }

footer#footer div.footer_right i.fa-twitter-square{ color:#1DA1F2; }

footer#footer div.footer_right i.fa-line{ color:#00B900; }

footer#footer p.copy{ font-size:0.857em; font-weight: 600; padding: 2em 0 3em 0; }

footer#footer div#pagetop{ z-index: 400; position: fixed;	
	bottom: 5%; left: 2%; }

footer#footer a#pagetop{ font-size: 2em; font-weight: 600; color: #ffcb33; text-align: center; display: block; width: 81px; height: 72px; background-color: #FFF; border-radius: 17px; border: 3px solid #ffcb33; position: fixed; z-index: 300; bottom: 9%; left: 3%; padding-top: 9px; }

footer#footer a#pagetop span.totop{ 
}

footer#footer a#pagetop i{ display:block; }



/************************************  font-awesome  **********************************************/
.fa-angle-right::before { content: "\f105"; }

.fa-line::before { content: "\f3c0"; }

.fa-phone::before { content: "\f095"; }

.fa-envelope::before { content: "\f0e0"; font-family: 'Font Awesome 5 Pro'; }

#spnav ul li .fa-envelope::before { font-weight:600; }

.fa-home::before { content: "\f015"; font-family: 'Font Awesome 5 Pro'; font-weight:600; }

.fa-phone-square::before { content: "\f098"; font-family: 'Font Awesome 5 Pro'; font-weight:600; }

.fa-list-ul::before { content: "\f0ca"; font-family: 'Font Awesome 5 Pro'; font-weight:600; }

.fa-line::before { content: "\f3c0"; }

.fa-graduation-cap::before { content: "\f19d"; }


/******************************  その他  ***********************************************/
.flex{ display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; margin:auto; }


/*****************************************************************************************/
/**********************************  ipad  ***********************************************/

@media (min-width: 768px) and (max-width: 1025px) {

	/*************  header  ***************/
	
	#logo{ max-width:none; }
	
	#header div.left_box{ 	padding-left:1em; width:57%; }
	
	#header div.left_box a{ 	width: 62.5%; }
	
	#header div.left_box img{ 	float:none;	
	}
	
	#header span.header_area{ 	float:left; 	padding-top:0.5em; padding-left:0; 	display:block; }
	
	#header div.telmail{ 	padding-top:1.5em; padding-right:1em; }
	
	#header span.header_tel{ 	font-size: 0.9em; }
	
	#header div.telmail a{ 	font-size: 3em; }
	
	#header ul#nav{ 	padding-top:0.4em; }
	
	#header ul#nav li a{ 	font-size:0.857em; }
	
	
	/****************  footer  *******************/
	
	footer#footer{ 	padding-top: 3em; }
	
	footer#footer p.footer_area{ 	text-align:center; }
	
	#footer div.left_box{ 	width:49%; 	margin: auto; }
	
	footer#footer div.logo_box div.logo_left{ 	margin: auto; 	display: block; 	width: 47%; }
	
	footer#footer div.footer_nav { 	padding-top: 0.3em; }
	
	footer#footer div.footer_nav i.fa-angle-right { 	padding-right: 0.1em; 	margin-right: 0.3em; }
	
	footer#footer div.footer_nav ul.respo01,
	footer#footer div.footer_nav ul.respo02,
	footer#footer div.footer_nav ul.respo03{ 	display: block; 	float: left; 	margin: 0 0 0 0; }
	
	footer#footer div.footer_nav ul.respo01{ 	width: 32%; 	margin-right: 2%; }
	
	footer#footer div.footer_nav ul.respo02{ 	width: 32%; 	margin-right: 2%; }
	
	footer#footer div.footer_nav ul.respo03{ 	width: 32%; }
	
	footer#footer div.footer_nav ul li{ 	float: none; 	background-color: #FFF; 	margin: 0.4em 0 0.4em 0; 	width: 100%; }
	
	footer#footer div.footer_nav ul.respo01 li{ }
	
	footer#footer div.footer_nav ul.footer_nav li a { 	display: block; }
	
	footer#footer div.footer_left,
	footer#footer div.footer_right{ 	float:none; }
	
	
	footer#footer div.footer_left{ 	width: 93%; margin: auto; }
	
	footer#footer div.footer_right{ 	width: 100%; 	padding-top: 1em; 	text-align: center; 	clear:both; 
	}
	
	footer#footer span.header_tel{ 	font-size: 0.9em; }
	
	footer#footer div.footer_right a.namber{ 	font-size: 2.8em; }
	
	footer#footer div.footer_sns { 	padding-top: 0em; }
	
	footer#footer div.footer_sns ul{ 	width:38%; 	margin:0 auto; }
	
	footer#footer div.footer_sns ul li{ 	width:25%; }
	
	footer#footer div.footer_sns ul li.mail_icon{ 	top: 0.6em; }
	
	footer#footer div.footer_sns a{ 	float:none; }
	
	footer#footer div.footer_right i{ 	margin-right: 0;	
	}
	
	footer#footer div.footer_right i.fa-envelope{ 	top: -0.2em; 	margin-right: 0; 	padding: 0.28em; }
	
	
	footer#footer p.copy{ 	padding:3em 0; }
	
	footer#footer a#pagetop{ 	font-size: 2em; 	width: 79px; height: 70px; }
	footer#footer div.logo_box ul li{ 	display: block; 	float: none; }
	
	/*** 20200901 ***/
	footer#footer div.footer_nav ul.footer_nav,
	footer#footer div.footer_nav ul.footer_nav + ul.footer_nav{ 	margin:0; }	
	footer#footer div.footer_nav ul.footer_nav + ul.footer_nav{ 	margin-top: 0.5em; padding-top: 0.5em; 	border-top: 1px solid #FFF; }
	footer#footer div.footer_nav ul.footer_nav li{ 	font-size: 0.88em; 	float: left; 	width: 32%; 	margin: 0.4em 2% 0 0; 	padding: 0.2em 0.5em 0.2em 0.5em; 	box-sizing: border-box; }
	
	footer#footer div.footer_nav ul.footer_nav li.tyousa_menu_ttl{ 	background-color: #FECB32; }
	footer#footer div.footer_nav ul.footer_nav li.tyousa_menu_ttl i{ 	font-size: 1em; }
	footer#footer div.footer_nav ul.footer_nav li:nth-of-type(3n){ 	margin-right:0; }

}

/**********************************  header responsive ***********************************************/
@media (min-width: 768px) and (max-width: 1120px) {

#header div.left_box a{
display: block; width: 90%; }

#header span.header_area { padding-left: 0.5em; font-size: 0.929em; max-width: 36em; }

}
@supports (-ms-ime-align: auto) {
  #header ul#nav li { width: 14.25%; }

}
