
/**************************************************
 responsive
**************************************************/
@media screen and (max-width: 767px){
	html{
		font-size: 62.5%;
		font-size: 10px;
	}

body{}

/**************************************************
 common
**************************************************/
	p,ol,table,ol,dl{
		padding: 1.6rem 0 0 0;
		font-size: 1.6rem;
		font-weight: normal;
	}
	
	.pc{display: none;}
	.smp{display: block;}

	.mainInner,
	.infoInner,
	.contentInner{width: 100%;}

	h1{
		font-size: 1.2rem;}
	
	h1 img{
		width: 17rem;
		margin-inline-end: 0.8rem;
	}

	.re{flex-direction: column-reverse;}


	.wrapper{position: relative;}

	.wrapper::before{
		content: '';
		width: 0.1rem;
		height: 100%;
		position: fixed;
		right: 1.6rem;
		top: 0;
		background-color: #fff;
		z-index: 99;
	}



/**************************************************
 header
**************************************************/

	.headerInner{
		padding-inline: 1.6rem;
		padding-block-start: 1.6rem;
	}

	h1 img{width: 10.2rem;}

	.smp_entry{margin-inline-end: 5.6rem;width: 14.8rem;position: relative;z-index: 9999;}

	.smp_entry a{
		display: block;
		background-color: var(--btn-color);
		border: 0.2rem solid #fff;
		border-radius: 65px;
		font-size: 1.2rem;
		font-weight: 900;
		padding-block: 0.8rem;
		color: #fff;
		text-align: center;
	}



/**************************************************
 globalNavi
**************************************************/

	#globalNavi{
		display: block;
		position: fixed;
		top: 0;
		height: 100%;
		width: 80%;
		right: 0;
		background-color: #FFE100;
		background-size: cover;
		z-index: 9990;
		opacity: 0;
		right: -100%;
		visibility: hidden;
		transition: .3s ease-in-out;
		margin-block-start: 0;
	}


	#globalNavi.active{
		opacity: 1;
		visibility: visible;
		right: 0;
		transition-delay: 0s;
	}

	#globalNavi.show{transition-delay: 0s;}

	#globalNavi ul{
		padding-block-start: 0;
		height: 100%;
		padding-inline: 0 2.4rem;
		align-content: center;
		background-color: #FFE100;
		justify-content: end;
	}

	#globalNavi ul li{
		margin-inline-end: 0rem;
		margin-block-end: 4rem;
	}

	#globalNavi ul li:nth-of-type(3){margin-block-end: 0;}

	#globalNavi ul li:last-of-type{display: none;}

	#globalNavi ul li a{font-size: 2rem;}

/**************************************************
 menu
**************************************************/
	#menu{
		display: flex;
		align-items: center;
		justify-content: center;
		position: fixed;
		top: 1.2rem;
		right: 1.6rem;
		width: 4.8rem;
		height: 4.8rem;
		text-align: center;
		z-index: 9998;
		background-color: #FFE100;
		border: 0.1rem solid #fff;
		transition: .3s;
		opacity: 1;
		border-radius: 50%;
		visibility: visible;
		cursor: pointer;
		pointer-events: auto;
	}

	#menu.active{background-color: var(--main-color);}

	#menu.close{
		opacity: 0;
		visibility: hidden;
		transition: .4s ease-in-out;
		pointer-events: none;
	}

.menu-btn,
.menu-btn span {
	display: inline-block;
	transition: all .8s;
	box-sizing: border-box;
}

	.menu-btn {
		position: relative;
		width: 1.8rem;
		height: 1.2rem;
		background: none;
		border: none;
		appearance: none;
		cursor: pointer;
	}

	.menu-btn span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--main-color);
  border-radius: 4px;
}
.menu-btn span:nth-of-type(1) {top: -2px;}
.menu-btn span:nth-of-type(2) {bottom: 5px;}
.menu-btn span:nth-of-type(3) {top: 12px;}

.menu-btn span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background-color: var(--main-color);
  border-radius: 4px;
  transition: all .4s;
}

.menu-btn.active span,.menu-btn.active span:nth-of-type(2)::after{background-color: #fff;}

.menu-btn.active span:nth-of-type(1) {transform: translate(50%) scale(0);}
.menu-btn.active span:nth-of-type(2) {transform: rotate(45deg);}
.menu-btn.active span:nth-of-type(2)::after {transform: rotate(90deg);}
.menu-btn.active span:nth-of-type(3) {transform: translate(-50%) scale(0);}


/**************************************************
link_btn
**************************************************/
	.link_btn{margin-block-start: 4rem;padding-inline: 2.4rem;}

	.link_btn a{
		font-size: 2.4rem;
		padding-block: 2.4rem;
		border: 0.2rem solid #fff;
	}

	.link_btn a span{
		font-size: 1.4rem;
		width: fit-content;
		padding-inline: 1.8rem;
		padding-block: 0.8rem;
		border-radius: 50px;
	}

	.link_btn a:hover{
		background-color: var(--btn-color);
		color: #fff;
		border: 0.2rem solid #fff;
	}

	.link_btn a:hover span{
		background-color: #fff;
		color:var(--btn-color);
	}



/**************************************************
 ctaHanger
**************************************************/
.ctaHanger{position: relative;overflow-x: clip;}

.ctaHanger .link_btn{margin-block-start: 6.4rem;}

	.ctaHanger::before{
		width: 25.6rem;
		height: 20.4rem;
		left: -4rem;
        top: -15rem;
	}

	.ctaHanger::after{
		width: 22.3rem;
		height: 27.5rem;
		right: -10rem;
		top: -15rem;
	}

	.cta_st2::before{
		width: 19.4rem;
		height: 25.8rem;
		left: -1rem;
		top: -6rem;
	}

	.cta_st2::after{
		background-size: 100%;
		width: 23.8rem;
		height: 13.3rem;
		right: -4rem;
        top: -9rem;
	}







/**************************************************
mainVisual
**************************************************/
	.mainVisual{
		background: none;
		position: relative;
		clip-path: inset(0);
	}

.mainVisual::before{
	        content: '';
        width: 100%;
        height: 100%;
        background: url(../img/main/mv.jpg) no-repeat top center;
        position: fixed;
        background-size: 210%;
        top: 0;
        left: 0;
        z-index: -1;

}
	.mainVisual h2{
		width:100%;
		padding-block-start: 11.6rem;
	}


/**************************************************
slideHanger
**************************************************/

	.slideHanger::before{
		height: 63rem;
		background: url(../img/main/main_bg.png)no-repeat top center;
		background-size: 100%;
		top: -23rem;
	}

	.sli_st2{margin-block-start: 6.4rem;}

	.swiper-slide img {height: 18rem;}

	.slideHanger .st1{top: -17rem;}


/**************************************************
aboutHanger
**************************************************/
	.aboutHanger{
		margin-block-start: -20rem;
		padding-block-end: 6.4rem;
	}

	.aboutInner{padding-block-start: 5.6rem;}

	.aboutHanger h2{font-size: 2.4rem;padding-inline: 0.8rem;}

	.aboutHanger .aboutInner > p{
		font-size: 1.6rem;
		padding-inline: 2.4rem;
	}

/**************************************************
scheduleHanger
**************************************************/
.scheduleHanger{
	padding-block: 8rem 0rem;
}


	.scheduleHanger h2{font-size: 3.2rem;}

	.scheduleHanger h2 span{
		font-size: 1.6rem;
		margin-block-start: 1.6rem;
	}

	.sch_image{
		margin-block-start: 2.4rem;
		overflow-x: scroll;
		padding-inline: 2.4rem;
	}

	.sch_image img{max-width: initial;}

	.sch_categroy{margin-block-start:4rem;padding-inline: 2.4rem;}


	.sch_categroy nav ul li{
		width: calc(100% / 3 - 0.6rem);
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		font-size: 2rem;
		padding-block: 0.6rem;
	}

.sch_categroy nav ul li:nth-of-type(2),.sch_categroy nav ul li:nth-of-type(3){pointer-events: none;}

.sch_categroy nav ul li:hover,.sch_categroy nav ul li.cur{background-color: #309D4A;}

	.sch_categroy nav ul li small{
		font-size: 1rem;
		padding-inline-start: 0.4rem;
		display: block;
		margin-block-start: 0.8rem;
	}

	.sch_cat_cont{
		padding-block: 4rem 2.4rem;
		padding-inline: 2.4rem;
	}

	.cat_item{margin-block-end: 4rem;}

	.cat_item_img{width: 25rem;margin-inline: auto;}

	.cat_item_img p{font-size: 1.2rem;padding-block-start: 0.8rem;}

	.cat_item_txt{width: 100%;margin-block-start: 1.6rem;}

	.cat_item_txt h3{font-size: 2.4rem;}

	.cat_item_txt h3 span{font-size: 1.4rem;}

	.cat_item_txt h3 strong{margin-block-start: 0.8rem;}

	.cat_item_txt > ul:first-of-type li{
		width: 100%;
		margin-inline-end: 0rem;
		font-size: 1.4rem;
		margin-block-end: 0.8rem;
	}

	.cat_item_txt > ul:first-of-type li:last-of-type{margin-block-end: 0;}

	.cat_item_txt > ul:first-of-type li span{
		display: inline-block;
		padding-block: 0.8rem;
		padding-inline: 0.8rem;
		margin-inline-end: 0.8rem;
	}

	.cat_item_txt > ul:last-of-type{margin-block-start: 1.6rem;}

	.cat_item_txt > ul:last-of-type li{
		font-size: 1.4rem;
		line-height: 1.6;
	}

	.cat_present{
		padding-inline: 1.6rem;
		padding-block: 1.6rem;
		flex-direction: column-reverse;
	}

	.pre_item_txt,.pre_item_img{width: 100%;}

	.pre_item_img img{margin-block-end: 1.6rem;}

	.pre_item_txt h3{font-size: 2rem;}

	.pre_item_txt h3 span{
		font-size: 1.2rem;
		padding-block: 0.4rem;
		padding-inline: 1.6rem;
	}

	.pre_item_txt h3 strong{margin-block-start: 1.2rem;}

	.pre_item_txt p{font-size: 1.4rem;padding-block-start: 0.8rem;}

	.pre_item_txt p small{font-size: 1.2rem;display: block;margin-block-start: 0.8rem;}

/**************************************************
flowHanger
**************************************************/

	.flowHanger{margin-block-start: 6.4rem;}

	.flowHanger h2{font-size: 3.2rem;}

	.flowHanger h2 span{font-size: 1.6rem;}

	.flow_item{
		width: calc(100% - 4.8rem);
		margin-inline: auto;
		padding-inline: 2.4rem;
		margin-block-start: 2.4rem;
	}

	.flow_item h3{
		font-size: 1.4rem;
		padding-block: 1rem;
		padding-inline: 2.4rem;
	}

	.flow_item ul{margin-block-start: 2.4rem}

	.flow_item ul li{margin-block-end: 4.8rem;}

	.flow_item ul li:last-of-type{margin-block-end: 4.2rem;}

	.flow_item ul li::before{bottom: -3.2rem;}

	.flow_item ul li h4{font-size: 1.9rem;line-height: 1.5;}

	.flow_item ul li h4 span{font-size: 1.4rem;}

	.flow_item ul li p{font-size: 1.4rem;padding-block-start: 1rem;}

	.flow_item ul li a:hover{
		background-color: var(--btn-color);
		color: #fff;
	}

/**************************************************
 inquiryHanger
**************************************************/
	.inquiryHanger{margin-block-start: 6.4rem;}

	.inquiryHanger h2{font-size: 3.2rem;}

	.inquiryHanger h2 span{font-size: 1.6rem;}

	.inquiry_list{margin-block-start: 2.4rem;padding-inline: 2.4rem;}

	.inq_list_item{width: 100%;}

	.inquiry_list .inq_list_item:first-of-type,
	.inquiry_list .inq_list_item:nth-of-type(2),
	.inquiry_list .inq_list_item:nth-of-type(3){
		margin-block-end: 2.4rem;
	}

	.inq_list_item h3{font-size: 2.4rem;}

	.inq_list_item h3::before{width: 80%;}

	.inq_list_item dl{font-size: 1.4rem;}

	.inq_list_item dl:first-of-type{padding-block-start: 1.6rem;}

	.inq_list_item dl dt{
		width: 100%;
		padding-inline-start: 0rem;
		margin-block-end: 0.4rem;
	}

	.inq_list_item dl dd{width: 100%;}

/**************************************************
footer
**************************************************/
	footer{
		margin-block-start: 6.4rem;
		padding-block: 2.4rem 3.2rem;
	}


	.footerInner p:first-of-type{
		width: 100%;
		text-align: center;
		line-height: 1.8;
		padding-block: 0;
	}

	.footerInner p:last-of-type{text-align: center;width: 100%;}



}