/*==============================================
  common
==============================================*/
@media screen and (max-width: 767px) {
body{padding: 0px; width: 100%; min-width: 100%; overflow-x: hidden;}
.pc-none{display: block;}
.sp-none, .sp-none2{display: none !important;}
a[href^="tel:"] {
    cursor: pointer;
    pointer-events: auto;
}
/* =========================================================
		header
========================================================= */
.header h1{align-items: inherit; display: block; width:160px;}
.header h1 img{vertical-align: middle;}	
.header h1 p{display: none}
.header {position: fixed;
    top: 0;
    z-index: 9999;
    margin: 0 auto;
    padding: 0 2%;
    height: 57px;
    width: 96%;
    right: 0;
	display: block;
}
.header_menu{
display: none;
}

/*================ header nav  ===================*/
.navigation { position: fixed; width: 100%; height: 100vh; padding:0 0; display: none; opacity: 0; right:0; top: 0;}
.navigation.active{display: none;}
body.over .navigation.active{opacity: 1; right:0; top: 0;}
.naviwrap {width: 100%; height: 100vh; position: absolute; top: 0; background: rgba(236, 234, 227, 0.95);
  padding: 32.5px 0; overflow-y: auto; overflow-x: hidden;}
#menu-btn{
	position: fixed;
    z-index: 90;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
    top: 14px;
    right: 3%;
    width: 30px;
    height: 30px;
	z-index: 9999;}
#menu-btn span, #menu-btn span:before, #menu-btn span:after {
  content: ''; display: block; position: absolute; transition: all .6s;
  height: 2px; width: 30px; border-radius: 0; background-color: #444;
}
.topinner #menu-btn span, .topinner #menu-btn span:before, .topinner #menu-btn span:after{background-color: #222;}
.over #menu-btn span, .over #menu-btn span:before, .over #menu-btn span:after {background-color: #444;}
#menu-btn span:before {bottom: 9px;} #menu-btn span:after {top: 9px;} 
.over #menu-btn span:before {bottom: 0px; transform: rotate(45deg);}
.over #menu-btn span:after {top: -2px; transform: rotate(-45deg);}
.over #menu-btn span{height: 0;}
	

	
	
.nav_sub_wrap{
	width:86%;
	margin: 0 auto;
	padding: 10px 8% 50px;

}
.nav_sub_wrap .nav_logo{
	width: 180px;
	margin: 0 auto;
	padding-bottom: 25px;
}
.nav_inner1{
	justify-content: space-between;
	display: block;
}
.nav_inner1 ul{
	text-align: left;
	width: 100%;
	font-size: 16px;
}
.nav_inner1 ul li{
	    padding-bottom: 15px;
	padding-left: 0;
    margin-bottom: 15px;
    border-bottom: 1px dotted #aaa;
}
.nav_inner1 ul li{
	position: relative;
	width: 99%;

}
.nav_inner1 ul li:after{
  
    top: 25%;
    right: 12px;


}

.nav_inner1 ul .ac_cate1:after{display: none;}
.nav_inner1 ul li a{
	display: block;
    width: 100%;
    height: 100%;
}
.nav_btn1{
	padding:15px 0 25px;
	display: block;
	margin: 0 auto;
}
.nav_btn1 .re_btn a {
    color: #444;
    border: 1px solid #444;
    font-size: 18px;
    width: 90%;
    height: 55px;
    line-height: 55px;
    display: block;
   
    margin: 0 auto 15px;
}
.nav_btn1 .tell_btn {
    color: #444;
    border: 1px solid #444;
    font-size: 23px;
     width: 90%;
    display: block;
    text-align: center;
    transition: all .3s;
    font-weight: 500;
    line-height: 1.3;
    padding: 10px 0;
}

.nav_link1 .ac-content{
	background: inherit;
	padding: 5px 0;
	margin: 18px 0 0;
	    border-top: 1px dotted #aaa;
}
.nav_link1 .nav_trouble p a{
	padding: 3px 0 0;
	font-size: 20px;
	font-weight: 300;
	
}
.nav_link1 .nav_trouble p span{
	font-size: 0.6em;

	
}
.nav_link1 .ac-label dd {
    font-size: 16px;
  
}
/* =========================================================
		FV catgory
========================================================= */
.fv_category{height: 65px; margin: 57px auto 0; }
.fv_category .heading {font-size: 18px; line-height: 1.1; font-weight: 400; letter-spacing: 1px; text-align: center;}
.fv_category .heading span{font-size:20px;}
.fv_category .heading span.small_en {
    font-size: 11px;
	line-height: 1.4;
	display: block;
	margin: 3px 0 0;
}
#breadcrumb {margin-bottom: 0; padding: 4px 0; letter-spacing: 0;}
#breadcrumb ol{max-width: inherit; min-width: inherit; padding: 0; width: 95%;}
#breadcrumb li {font-size: 11px;}
#breadcrumb li a::after {width: 5px;height: 5px;margin: -2px 4px 0 6px;}
/* =========================================================
		2 common
========================================================= */
.container2{
	width:90%;
	margin:30px auto 60px;
	}	
	
	
/* =========================================================
		3 common
========================================================= */
.fv_main{width:100%;}
.container{
	width:90%;
	margin:40px auto 60px;
	}
.course_ttl{
	font-size:22px;
	margin-bottom:8px;
}
.course_ttl2{
	font-size: 22px;
    padding: 5px 0;
    border-bottom: 1px solid #bb9f5b;
    margin-bottom: 25px;
	padding-bottom: 5px;
    line-height: 1.2;
    letter-spacing: 0;
}
/*230622 add+*/
.course_ttl2 .ttl_mini{
    font-size: 0.85em; line-height: 1.5;
}
.course_ttl3{
	font-size:20px;
	font-weight:500;
	margin-bottom:10px;
}
.course_copy{
	margin-bottom:15px;
}
.section_mt{margin-top: 50px; line-height: 1.5;}
.section_mt_line {
    margin-top: 25px;
    padding-top: 30px;
}	
.course_ttl_sub {
    font-size: 22px;
	line-height: 1.4;
	padding-top: 5px;
    margin-bottom: 10px;
}
/*---graph----*/
.kiji_table{width:100%;}
.kiji_table dl{
    /*230622 add+*/
	display: block;
    border: none;
	grid-template-columns: 35% 65%;
	gap: 1rem;
}
.kiji_table dt {
	box-sizing: border-box;
	font-size: 15px;
	/*text-align: center;
    padding: 15px 5px 15px;*/
    padding: 10px 5px 10px 15px;
    text-align: left;
}
.kiji_table dd {
	/*230622 
	padding: 15px 5px 15px 0;add+*/
    padding: 12px 5px 20px;
	box-sizing: border-box;
	background: #fff;
	font-size: 15px;
	line-height: 1.6;
}
.kiji_ttl {
    font-size: 20px;
    padding: 0 0 10px 0%;
}
/*---price----*/
.priceTbl{margin-bottom: 20px;}
.priceTbl table {border-top: 1px solid #EBEBEB;border-right: 1px solid #EBEBEB; width: 100%;}
.priceTbl th {padding: 10px 15px; font-size: 16px; text-align: left;}
.priceTbl td {padding: 10px 10px;width: 50%; font-size: 15px; line-height: 1.6;}
.priceTbl .kindTd span.items2 {height: 40px;display: block;display: flex;align-items: center;justify-content: flex-end}
.priceTbl .kindTd span.items2 + .items2 {margin-top:1.0em}
.priceTbl td dl {display: flex;justify-content: space-between;align-items: center;}
/*---faq----*/
.faqcon li{padding: 10px 4% 10px 4%;
    border: 1px solid #ccc;
    margin-bottom: 25px;
    width: 91%;
    margin: 0 auto 17px;}
.ac-label dl{display: flex;}
.ac-label dt{margin-right: 10px; font-size: 22px;}
.ac-label dd{font-size: 16px; line-height: 1.5; display: flex; justify-content: center; flex-flow: column; width: 78%;}
.ac-content {
  display: none;
	background: #faf8f2;
    padding: 10px 5%;
    margin-top: 10px;
	}
.ac-content dl{display: flex; padding: 5px 0 7px;}
.ac-content dt{margin-right: 10px; font-size: 22px;}
.ac-content dd{line-height: 1.6; letter-spacing: 1px; padding-top: 3px; font-size: 15px;}
.icon-wrap {
  position: absolute;
  right: -3%;
  top: 50%;
  transform: translatey(-50%);
  width: 38px;
  height: 38px;
 
}
/*---nayami check----*/	
.nayaim_con{padding: 20px 6% 15px; margin: 30px auto 0;}
.nayaim_con h3{font-size: 22px; margin: 0 auto 25px;}
.nayaim_con .checkmark{display: table; margin: 0 auto;}
.nayaim_con .checkmark li {margin: 0 0 18px 0; width: 100%;}
.nayaim_con .checkmark li h4 {margin: 0 0 5px 0 !important; padding: 0 0 0 35px; font-size: 18px; line-height: 1.2; letter-spacing: 1px;}
.nayaim_con .checkmark li h4:before {
  content: "";
  position: absolute;
  top: -2px !important;
  left: 11px;
  -webkit-transform: rotate(50deg);
  -ms-transform: rotate(50deg);
  transform: rotate(50deg);
  width: 6px;
  height: 17px;
  border-right: 3px solid #ff0000;
  border-bottom: 3px solid #ff0000;
  z-index: 2;
}
.nayaim_con .checkmark li h4:after {
  width: 18px;
  height: 18px;
}
.nayaim_con .checkmark li p {
  padding: 0 0 0 35px;
}
/*---flow----*/	
.flow_con2{padding: 22px 5%;}
.flow_con2 .flow_step{font-size: 16px; padding: 2px 10px; margin-bottom: 0; height: 28px;}
.flow_con2 .flow_copy{padding-top: 13px;} 
.flow_con2 .flow_ttl{font-size: 20px; margin-left: 10px; line-height: 1.4;}
.triangle3{
  width: 0;
  height: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 25px solid #decfa5;
	margin: 8px auto;
}	
/* =========================================================
		common footer contact
========================================================= */
.contact_con{
padding: 25px 5%;
    width: 90%;
    margin: 65px auto;
}
.contact_con.flex{
	display: block;
		
	}	
.contact_con .c_logo{
	width: 190px;
margin: 0 auto;
	
}
.contact_con .c_logo p{
	    font-size: 12px;
	letter-spacing: 0;
	text-align: center;
	
}
.contact_con .c_tell h4{
	font-size: 44px;
	letter-spacing: 0;
	padding: 5px 0 0;
	line-height: 1.1;
	text-align: center;

}

.c_tell .copy1{
	font-size: 12px;
	line-height: 1.4;
	padding-top: 15px;
}
	
/* =========================================================
		float btn
========================================================= */
  .sp_btn_area{
	    position: fixed;
        display: flex !important;
		bottom:0;
		left: 0;
        z-index: 1000;
        width: 100%;
    }
    .sp_btn_area div{
		width: 33.33333%;
        text-align: center;
        font-size: 3.3vw;
		box-sizing: border-box;
    }
    .sp_btn_area div img{
        display: block;
        width: 5.333333333vw;
        height: 5.333333333vw;
        margin: 0 auto 2px;
    }
    .sp_btn_area div a{
        display: block;
        padding: 2.5vw 0 2vw;
        letter-spacing: 0;
		color: #fff;
    }
	.sp_btn_area .tel a{
		background: #0778c3;
       border-right: 1px solid #9cc9ec;
	}
	.sp_btn_area .contact a{
		background: #0778c3;
    
	}
	.sp_btn_area .reserve a{
		background: #0778c3;
		    border-right: 1px solid #9cc9ec;
	}
	
	
	
/* =========================================================
		footer
========================================================= */
footer{ padding: 40px 0 25px;}
.footer_inner.flex{display: block;}	
.footer_inner{width: 86%; padding-bottom: 25px;}
.footer_inner .footer_logo{width:100%; margin: 0 auto;}
.footer_inner .footer_logo div{text-align: center;}	
.footer_inner .footer_logo img{width:180px;}	
.footer_inner .footer_logo .name{padding: 5px 0 20px; font-size: 12px; letter-spacing: 0; text-align: center;}
.footer_inner .footer_logo .address{font-size: 14px; line-height: 1.5; padding-bottom: 30px;}
.footer_inner .footer_link{margin-right: 0; font-size: 14px;}
	.footer_inner .footer_link1{border-top: 1px solid #d1c5a5; padding-top: 12px;}	
.footer_inner .footer_link li{padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid #d1c5a5; }
.footer_inner .footer_link li a{color: #fff; display: block;}
.re_btn a{
	color: #fff;
    border: 1px solid #fff;
    font-size: 18px;
    width: 90%;
    height: 52px;
    line-height: 52px;
    display: block;
	margin:40px auto 15px;
    text-align: center;
    transition: all .3s;
	font-weight: 500;
}
.re_btn a span img{
	width: 16px;
    margin-right: 10px;
	margin-bottom: 2px;
    vertical-align: middle;
	}
.tell_btn{
	 color: #fff;
    border: 1px solid #fff;
    font-size: 28px;
    width: 90%;
	margin: 0 auto;
    display: block;
    text-align: center;
    transition: all .3s;
    font-weight: 500;
    line-height: 1.3;
    padding: 12px 0;
	
	}
.tell_btn span img{
	    width: 20px;
    margin-right: 8px;
    vertical-align: middle;
    margin-bottom: 5px;
	}
.tell_btn p{
	font-size: 13px;
	letter-spacing: 0;
	}
.sns_area{
	display:table;
	margin: 15px auto 15px;
}
.sns_area ul li{
	width: 26px;
	margin: 0 10px;
}

.copyw{padding: 8px 0 40px; text-align: center; font-size: 12px;}
/* =========================================================
	404
========================================================= */
.page_ttl1{font-size: 50px;}
.page_copy1{font-size: 24px; margin-bottom: 45px;}
.page_home{margin:0 auto 66px;}
.page_home{display: block; margin:0 auto;}
.page_home a {width: 67%; display: block; margin: 0 auto;}		
.page_copy2 {
    font-size: 23px;
    margin: 40px auto 80px;
    letter-spacing: 0;
}
	
	

	}



