@charset "UTF-8";

/*全体設定799px～1110px*/
	html {
		font-size: 14px;
	}
	body{
		margin: 0;
		height: 100%;
		font-family:  "Montserrat","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro","Hiragino Sans", sans-serif;
    	min-height: 100vh;
    	letter-spacing: 0.12rem;
    	box-sizing:border-box;
    	background-color: #FFFFFF;
    	color: #2D3D39;
    	line-break: normal; 
	}
	main {
		display: block;
	}
	.c-wrapper_large{
		max-width: 590px;
    	margin: 0 auto;
    	padding: 0 30px;
	}
	.c-wrapper_small{
		max-width: 781px;
    	margin: 0 auto;
    	padding: 0 30px;
	}
	li{
		list-style: none;
		display: block;
	}

/*トップページ*/
	.header{
		position: relative;
	}
	.header_sns{
		position: fixed;
		z-index: 99;
    	top: 24vh;
    	right: 50px;
    	-webkit-transform: translateX(50%);
    	-ms-transform: translateX(50%);
    	transform: translateX(50%);
    	display: -webkit-box;
    	display: -ms-flexbox;
    	display: flex;
    	-webkit-box-orient: vertical;
    	-webkit-box-direction: normal;
    	-ms-flex-direction: column;
    	flex-direction: column;
    	-webkit-box-align: center;
    	-ms-flex-align: center;
    	align-items: center;
    	margin: 0;
    	padding: 0;
	}
	.header_sns_item{
		margin-bottom: 40px;
    	color: #F6BD60;
    	position: relative;
    	height: 100px;
    	left: -10px;
	}
	.header_sns_item a{
		position: absolute;
    	display: -webkit-box;
    	display: -ms-flexbox;
    	display: flex;
    	-webkit-box-align: center;
    	-ms-flex-align: center;
   		align-items: center;
    	font-size: 0.85rem;
    	-webkit-writing-mode: vertical-rl;
    	-ms-writing-mode: tb-rl;
    	-o-writing-mode: vertical-rl;
    	writing-mode: vertical-rl;
    	letter-spacing: 0.08em;
	}
	.header_sns_item a:before{
		content: '';
    	position: relative;
    	width: 1px;
    	height: 40px;
    	margin-bottom: 10px;
    	background: #F6BD60;
    	-webkit-transition: all 0.2s ease-out;
    	-o-transition: all 0.2s ease-out;
    	transition: all 0.2s ease-out;
	}
	.contact-btn{
		display: none;
	}
	.contact-btn:hover{
		background-color: #FFF;
		border: #F6BD60 solid 1px;
		opacity: 1;
	}
	.contact-btn img{
		width: 30px;
		-webkit-transition: fill .3s ease-out;
    	-o-transition: fill .3s ease-out;
    	transition: fill .3s ease-out;
	}
	.contact-btn span{
		display: inline-block;
    	font-size: 0.9rem;
    	color: #fff;
    	margin-top: 9px;
    	-webkit-transition: color .3s ease-out;
    	-o-transition: color .3s ease-out;
   		transition: color .3s ease-out;
	}
	.header_nav{
		display: none;
		position: absolute;
    	top: 0;
    	right: 0;
    	z-index: 900;
    	padding: 19px 101px 24px 50px;
    	background-color: #FFF;
    	border-radius: 0 0 0 40px;
	}
	.header_nav_list{
		display: flex;
		margin: 0;
		padding: 0;
		letter-spacing: 0em;
	}
	.header_nav_item{
		font-size: 1rem;
    	margin-right: 40px;
    	line-height: 1.44;
    	list-style: none;
    	display: block;
	}
	.header_nav_item a{
		position: relative;
	}
	a{
		color: inherit;
    	text-decoration: none;
    	cursor: pointer;
    	-webkit-transition: 0.2s ease;
   	 	-o-transition: 0.2s ease;
    	transition: 0.2s ease;
	}
	.open_nav_box{
		position: fixed;
		background-color: #85A8A4;
		color: #FFF;
		z-index: 125;
		top: 0;
		padding: 36.3px;
		height: 100vh;
		right: -164px;
		width:0;
		overflow: hidden;
		box-sizing: border-box;
		padding-top: 80px;
	}
	.open_nav_title{
		padding-left: 0;
	}
	.open_nav_title li h2{
		font-size: 1.6rem;
		line-height: 1.5;
		letter-spacing: 0.06em;
		margin: 0;
		margin-top: 23px;
	}
	.open_nav_list li a:before{
		content: "";
	    position: absolute;
	    left: 0;
	    top: 4px;
	    width: 8px;
	    height: 8px;
	    border-right: 2px solid #fff;
	    border-top: 2px solid #fff;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	}
	.open_nav_list{
		padding: 0;
	}
	.open_nav_list li{
		margin-top: 1px;
	}
	.open_nav_list li a{
		position: relative;
	    font-weight: 700;
	    line-height: 2;
	    padding-left: 25px;
	    font-size: 1.1rem;
	}
	.open_nav_list li a img{
		margin-right: 11px;
		width: 26px;
		position: relative;
		top: 6px;
	}
	.boing:hover{
		animation: .8s boing-anim linear forwards;
	}
	@keyframes boing-anim{
  10% { transform: scale(1, 1.2); } /*少し縮む*/
  40% { transform: scale(1, 0.9); } /*縮む*/
  50% { transform: scale(1, 0.75); } /*反動で縦長*/
  60%{ transform: scale(1, 1.2); } /*また反動で縮む*/
  70% { transform: scale(1, 0.98); } /*反動が小さく*/
  90%{ transform: scale(1, 1.02); } /*最後の震え*/
  100% { transform: scale(1,1); } /*元に戻る*/
	}
	.open_nav_link_corp img{
		width: 100%;
	}

	.open_nav_link_sns{
		display: flex;
		gap: 17px;
		margin-top: 56px; 
		padding-left:0;
	}
	.open_nav_link_sns li{
		position: relative;
	}
	.open_nav_link_sns li a{
		position: relative;
		display: inline-block;
	}
	.open_nav_link_sns li a img{
		width: 41px;
	}
	.open_nav_link_sns .open_nav_link_corp_box a img{
		width: 58px;
	}

	.kv_outer{
		width: 100%;
		padding-right: 0;
		height: 100vh;
		box-sizing: border-box;
	}
	.kv{
		position: sticky;
		top: 0;
		width: 100%;
		height: 100%;
	}
	.kv_slider{
		position: relative;
		display: block;
		box-sizing: border-box;
		width: 100%;
		height: 100%;
	}
	.kv_slider img{
		width: 100%;
	}
	.kv_slider_item{
		width: 100%;
		height: 100%;
		background-image: url(../image/res_top_img.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.kv_logo{
		position: absolute;
		z-index: 10;
		top: 48%;
		left: 50%;
		color: #FFF;
		-webkit-transform: translate(-50%, -50%);
		width: 103vh;
		min-width: 250px;
	}
	.kv_logo_inside{
		width: 100%;
		height: auto;
		text-align: center;
	} 
	.kv_logo_inside h1{
		font-size: 2.5rem;
	}
	.kv_logo_inside p{
		font-size: 1.5rem;
		margin: 0;
	}	
	.kv_logo_inside span{
		font-size: 0.8rem;
	}	
	.school_about{
		color: #FFF;
    	background-color: #85A8A4;
   		box-sizing: border-box;
    	margin: 81px auto;
    	padding: 0;
	}
	.school_about_h2{
		margin:0;
		padding-top: 43px;
		display: block;
		text-align: center;
		font-size: 1.9rem;
	}
	.school_about_content{
		display: flex;
    	justify-content: center;
    	align-items: center;
    	padding: 29px 0px;
    	color: #fff;
    	background-color: #85A8A4;
    	border-radius: 10px;
	}
	.school_about_image{
		position: relative;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    	--about-circle-height: 200px;
    	--about-circle-width: 200px;
    	width: var(--about-circle-width);
    	height: var(--about-circle-height);
    	background-color: #fff;
    	border-radius: 100%;
	}
	.school_about_image img{
		max-width: 42%;
		height: auto;
		vertical-align: middle;
	}
	.school_about_text{
		box-sizing: border-box;
		font-size: 1.4rem;
		line-height: 2.4;
		margin-left: 21px;
	}
	.school_about_text p{
		font-size: 0.8em;
	}

	.en{
		display: inline-block;
    	color: #85A8A4;
    	font-size: 1rem;
    	letter-spacing: .2rem;
    	padding: 0 47px 19px;
    	background-image: url(../image/title_line.png);
    	background-repeat: no-repeat;
    	background-position: center bottom;
    	position: relative;
   		margin-bottom: 8px;
   		background-size: contain;
	}
	.course_about{
		margin-top: 6.9rem;
	}
	.course_about_titlebox{
		text-align: center;
		margin-bottom: 43px;
	}
	.ja{
		display: block;
		font-size: 2rem;
	}
	.course_about_titlebox p{
		padding: 0 30px;
	}
	.course2{
		background-color: #FFF;
		background-image: radial-gradient(#f4e6d8 9%,transparent -8%),radial-gradient(#f4e6d8 -2%,transparent 12%);
		background-position: 0 0,10px 10px;
		background-size: 20px 20px;
		text-align: center;
	}
	.course1{
		text-align: center;
		background: repeating-linear-gradient(135deg, #85A4A0, #85A4A0 6px, #85A8A4 7px, #85A8A4 19px);	
	}
	.course_box{
		display: block;
	}
	.course_box_inwrap{
		text-align: center;
		padding: 20px;
	}
	.course_box_inwrap h2 img{
		width:124px;
	}
	.course_box_inwrap h2 span{
		display: block;
		margin-top: 1rem;
	}
	.fuchidori{
		color: #85A8A4;
		text-shadow: 1px 1px 0 #000, -1px -1px 0 #000,
              -1px 1px 0 #000, 1px -1px 0 #000,
              0px 1px 0 #000,  0-1px 0 #000,
              -1px 0 0 #000, 1px 0 0 #000;
        font-size: 0.9rem;
	}
	.course_box_title{
		color: #FFF;
		font-size: 1.7rem;
		margin-top: 0.3rem;
	}
	.course_box:last-child .course_box_inwrap h2 p{
		color: #2D3D39;
	}
	.course_flex_box{
		display: flex;
		padding-top: 2%;
		gap:22px;
	}
	.color_change{
		color: #F6BD60;
	}
	.course_text_box{
		text-align: left;
		width: 50%;
	}
	.course_text_box h3{
		font-size: clamp(18px,3.9vw,16px);
		white-space: nowrap;
	}
/*	.course_text_box p:before{
		content: "";
		display: inline-block;
		background-image: url("../image/a_course_image01.jpg");
		background-size: contain;
		background-repeat: no-repeat;
		width: 100%;
		height: 61vw;
	}*/
	.course_text_box p{
		line-height: 1.8em;
		font-weight: 500;
	}
	.course_img_box{
		padding: 14px;
	}
	.course_img_box li{
	list-style: none;
    display: inline-block;
    position: relative;
    height: 190px;
	}
	.course_img_box li img{
		position: absolute;
		top: 72px;
		right: -258px;
		height: 100%;
	}
	.readmore_box{
		margin:2em 4%;
	    position: relative;
	    padding: 0.8em 0.5em;
	    border-top: solid 1px black;
	    border-bottom: solid 1px black;
	   	border-right: solid 1px black;
	    border-left: solid 1px black;
	    background-color: #FFF;
	    display: block;
	    text-align: center;
	    transition: ease .2s;
	}
	.course_text{
		margin-top: 1.7em;
	}
	.readmore_box_title{
		display:flex;
		align-items: center;
		justify-content: center;
		font-size: 0.8em;
		margin-left: 5em;
		z-index: 3;
		position: relative;
		font-weight: bold;
	}
	.readmore_box:hover span.readmore_box_title{
		color : #FFF;
	}
	.readmore_box_title:after{
		border-top: 1px solid;
		content: "";
		width: 3em;
		margin-left: 2em;
	}
	.rm-bgleft:before{
		content: '';
		position: absolute;
 		top: 0;
 		left: 0;
 		z-index: 2;
 		background:#F6BD60;/*背景色*/
 		width: 100%;
		height: 100%;
		transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 		transform: scale(0, 1);
		transform-origin: right top;
	}
	.rm-bgleft:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	/*スクロール*/
	.scrolldown1{
		/*描画位置※位置は適宜調整してください*/
		position:absolute;
		left:50%;
		bottom:-6px;
    	/*全体の高さ*/
		height:122px;
	}	
	.scrolldown1 span{
    	/*描画位置*/
		position: absolute;
		left:-17px;
		top: -27px;
   		 /*テキストの形状*/
		color: #FFF;
		font-size: 0.8rem;
		letter-spacing: 0.05em;
	}
	.scrolldown1::after{
		content: "";
  	 	 /*描画位置*/
		position: absolute;
		top: -25px;
    	/*線の形状*/
		width: 1px;
		height: 30px;
		background: #FFF;
    	/*線の動き1.4秒かけて動く。永遠にループ*/
		animation: pathmove 1.4s ease-in-out infinite;
		opacity:0;
	}
	/*高さ・位置・透過が変化して線が上から下に動く*/
	@keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:100px;
		opacity: 1;
	}
	100%{
		height:0;
		top:100px;
		opacity: 0;
	}
	}

/*サブページ*/
	.subpage_corpname{
		padding: 60px 0 0 68px;
	}
	.subpage_title_box{
		margin-top: 142px;
		margin-bottom: 142px;
	}
	.subpage_content_title_box{
		padding-bottom: 106px;
	} 
	.subpage_content_title p{
		font-size: 2rem;
	}
	.subpage_content_title span{
		font-size: 1.3rem;
	}
	.subpage_content_title{
		margin-top: 65px;
	}
	.subpage_feature_title {
		width: 355px;
		height: 97px;
		background-image: url(../image/feature_title.png);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		color: #FFF;
		margin: auto;
		margin-top: 97.3px;
	}
	.subpage_feature_title span{
		letter-spacing: 0.1em;
		font-weight: 600;
	}
	.subpage_feature_title p{
		margin-top: 2.7px;
		margin-left: 14.5px;
		font-weight: 100;
		font-size: 0.85em;
		letter-spacing: 0.25em;
	}
	.feature_inbox{
		margin-top: 50px;
		padding-bottom: 50px;
	}
	.feature_inbox li{
		background-color: #FFF;
		width: 628px;
		height: 310px;
		position: relative;
	}
	body.auto .feature_inbox li:nth-child(2){
		height: 338px;
	}

	.feature_inbox li h3{
		width: 79px;
		border-bottom: 1px solid #2D3D39;
		margin:auto;
		margin-top: 32px;
		padding-top: 24px;
	}
	.feature_inbox li h3 span{
		font-size: 1rem;
	}
	.feature_inbox li h3 p{
		display: inline;
		font-size: 2.8rem;
		-webkit-text-stroke: 1px #2D3D39; 
 		text-stroke: 1px #2D3D39;
		color: #85A8A4;
		margin-left: 4.7px;
	}
	.fea_inbox_content_box{
		width: 278px;
		margin-left: 33px;
	}
	.fea_inbox_content_title{
		font-weight: bold;
		font-size: 1.1rem;
	}
	.fea_inbox_content{
		text-align: start;
	}
	.feature_inbox img{
		width: 243px;
		position: absolute;
		top: 111px;
		right: 30px;
	}
	.fea_inbox_content_img01{
		margin-top: 7.9px;
	}
	.fea_con_title_br{
		display: none;
	}
	.adjust{
		margin-bottom: 0px;
	}
	.subpage_info_box{
		padding-top: 10px;
	}
	.subpage_info_content_box{
		display: flex;
		gap: 45px;
		margin-top: 84.8px;
	}

	.curriculum_content h4{
		border: 1px solid #2D3D39;
		background-color: #2D3D39;
		color: #FFF;
		width: 227px;
		height: 27px;
		font-size: 1.1rem;
		margin: auto;
		text-align: left;
		padding-left: 11px;
		padding-top: 6px;
		position: relative;
	}
	.curriculum_content h4:before{
		width: calc(100% - 147px);
		height: 0;
		display: block;
		position: absolute;
		left: 149px;
		content: "";
		border-bottom: solid 35px #2D3D39;
		border-right: solid 41px transparent;
		bottom: 100%;
		top: -1px;
	}
	.curriculum_content ul{
		text-align: start;
		font-weight: 500;
		padding: 0;
		padding-left: 49px;
	}
	body.auto .curriculum_content ul{
		text-align: start;
		font-weight: 500;
		padding-left: 108px;
	}
	.curriculum_content ul li{
		padding: 4.2px 0;
	}
	.curriculum_content:nth-child(2) ul{
		padding-left: 90px;
	}
	body.auto .curriculum_content:nth-child(2) ul{
		padding-left: 0;
	}
	.curriculum_box{
		margin: 150px auto;
		width: 858px;
	}
	.schedull_box{
		margin-top: 213px;
		position: relative;
		padding-bottom: 150px;
	}
	.schedull_box p{
		margin-top: 20px;
		line-height: 31px;
	}
	body.flight .schedull_inwrap{
			display: block;
   			gap: 0;
    		margin: 59px auto;
    		max-width: 333px;
		}
	body.flight .schedull_box p.sd_coment{
		position: sticky;
		top: 664px;
		left: 240px;
	    margin-top: 0;
		font-size: 1.1rem;
	}
	body.flight .schedull_content{
		width: 243px;
	}
	body.auto .schedull_content h4:before{
		width: calc(100% - 200px);
		height: 0;
		display: block;
		position: absolute;
		left: 202px;
		content: "";
		border-bottom: solid 27px #2D3D39;
		border-right: solid 44px transparent;
		bottom: 100%;
		top: 0;
	}
	body.flight .schedull_content h4:before{
		width: calc(100% - 200px);
		height: 0;
		display: block;
		position: absolute;
		left: 202px;
		content: "";
		border-bottom: solid 23px #2D3D39;
		border-right: solid 44px transparent;
		bottom: 100%;
		top: 0;
	}
	body.auto .schedull_content{
		background-color: #2D3D39;
		width: 242px;
	}
	body.flight .schedull_content{
		background-color: #2D3D39;
		width: 242px;
	}
	body.auto .schedull_content h4{
		color: #FFF;
		margin-bottom: 0;
		text-align: left;
		padding-left: 8px;
		font-weight: lighter;
		position: relative;
		font-size: 1.3rem;
	}
	body.flight .schedull_content h4{
		color: #FFF;
		margin-bottom: 0;
		text-align: left;
		padding-left: 8px;
		font-weight: lighter;
		position: relative;
		font-size: 1.1rem;
	}
	body.auto .schedull_inwrap{
		display: flex;
		gap: 91px;
		margin: 59px auto;
		max-width: 700px;
	}
	.sd_table{
		border: 1px solid #707070;
		border-collapse:  collapse;
	}
	.sd_table_title{
		background-color: #9E9B93;
		border: #707070;
	}
	.sd_table tr td{
		border: 1px solid #707070;
		padding: 2px 10px;
	}
	.sd_table_last tr td{
		padding: 3px 12px;
	}
	.schedull_box p.sd_coment{
		position: sticky;
		top: 413px;
		left: 437px;
		margin-top: 0;
	}
	body.auto .schedull_box p.sd_coment{
		position: sticky;
		top: 413px;
		left: 587px;
		margin-top: 0;
		font-size: 1.2rem;
	}

@media (max-width: 860px) {
		body.auto .schedull_inwrap{
			display: flex;
			gap: 48px;
			margin: 59px auto;
			max-width: 700px;
		}
		body.auto .schedull_content{
			width: 244px;
		}
	}

	.en-white{
		display: inline-block;
    	color: #FFF;
    	font-size: 1rem;
    	letter-spacing: .2rem;
    	padding: 0 47px 19px;
    	background-image: url(../image/title_line_white.png);
    	background-repeat: no-repeat;
    	background-position: center bottom;
    	position: relative;
   		margin-bottom: 8px;
   		background-size: contain;
	}
	.ja-white{
		color: #FFF;
		display: block;
	}
	.field_box,.price_box{
		text-align: center;
		padding-bottom: 80px;
		padding-top: 80px;
	}
	.field_box p{
		margin-top: 20px;
		line-height: 31px;
	}
	.field_inwrap{
		display: flex;
		gap: 72px;
		width: 707px;
		margin: 62px auto;
	}
	.field_inwrap ul{
		margin-top: 27px;
		padding:0;
	}
	.field_inwrap ul li img{
		width: 300px;
	}
	.field_title{
		font-size: 1.1rem;
		text-align: left;
		font-weight: 500;
		margin-left: 22px;
	}
	.field_title br{
		display: none;
	}
	.field_text{
		text-align: left;
		line-height: 1.6;
	}
	.price_inwrap{
		width: 815px;
		margin: 50px auto;
		display: flex;
		gap: 20px;
	}
	.price_content_left{
		border: 1px solid #2D3D39;
		padding: 20px 29px;
		width: 354px;
		margin-left: 20px;
	}
	.price_content_left h4{
		font-size: 1.5rem;
	}
	.price_content_right{
		width: 373px;
		text-align:  left;
		margin-top: 100px;
		margin-left: 38px;
		margin-right: 20px;
	}
	.pc_right_sent{
		line-height: 2rem;
	}
	.pc_right_title{
		font-weight: bold;
		font-size: 1.2rem;
	}
	.price_content_left_inbox{
		background-color: #F7EDE2;
		padding-top: 22px;
		padding-bottom: 22px;
	}
	.price_content_left_inbox p{
		margin: 0;
	}
	.price_content_left_inbox p strong{
		font-size: 3rem;
	}
	.price_content_left_inbox p:first-child{
		font-size: 2rem;
	}
	.price_content_left_inbox p:last-child{
		margin-top: 5px;
	}
	.pc_coment_sita{
		text-align: left;
	}
	.pc_price{
		font-size: 2.9rem;
		font-weight: 800;
		color: #F6BD60;
		margin:0;
		margin-left: 38px;
		margin-bottom: 10px;
	}
	.pc_price span{
		font-size: 1.5rem;
		color : #2D3D39;
	}
	.pc_price span.zei{
		font-size: 0.8rem;
	}
	.price_content_left p.pc_ohitori{
		margin:0;
		text-align: left;
		padding-left: 60px;
		margin-top: 27px;
	}
	.flow_box{
		background-color: #F7EDE2;
		text-align: center;
		padding-top: 100px;
		margin:auto;
		padding-bottom: 200px;
	}
	.flow_box p{
		font-size: 1.2rem;
	}
	.flow_inwrap{
		position: relative;
		--flow-number-width: 60px;
		--flow-number-margin: 30px;
		width: 778px;
		margin: 60px auto;
	}
	.flow_inwrap:before{
		content: "";
	    position: absolute;
	    z-index: 0;
	    top: 63px;
	    left: 61px;
	    width: 2px;
	    height: calc(100% - 100px);
	    background-color: #2D3D39;
	}
	.flow_inwrap li{
		display: flex;
		position: relative;
		z-index: 1;
		margin-top: 53.7px;
	}
	.flow_number{
		display: flex;
		align-items: center;
		justify-content: center;
		width: var(--flow-number-width);
  	 	height: var(--flow-number-width);
    	margin-right: var(--flow-number-margin);
    	background-color: #2D3D39;
   		border: 2px solid #2D3D39;
    	border-radius: 50%;
	}
	.flow_number span{
		color: #FFF;
		font-size: 1.8em;
		line-height: 1;
	}
	.flow_content{
		width: 585px;
		margin-top: 22px;
		text-align: left;
		font-size: 1.2rem;
	}
	.flow_content h3{
		margin:0;
		font-size: 1.5rem;
	}
	.flow_content p{
		margin: 0;
	}
	.flow_button_box{
		display: flex;
	}
	.f_button_minibox{
		margin-top: 11px;
	}
	.f_button_minibox a{
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 104px;
		padding: 15px 30px;
		font-size: 1.2rem;
		border: 1px solid #2D3D39;
		background-color: #fFF;
		transition: background-color .8s;
		display: block;
   		line-height: 1.5;
    	text-align: center;
    	text-decoration: none;
    	margin-right: 10px;
	}
	.f_button_minibox a:hover{
		background-color: #F6BD60;
	}
	.f_button_minibox a img{
		width: 28px;
		margin-right: 10px;
		vertical-align: middle;
		height:auto;
	}
	.f_button_minibox:nth-child(2){
		display: none;
	}
	.s_contact_link_box{
		position: relative;
    	padding: 52px 0 52px;
    	color: #fff;
    	background-color: #85A8A4;
    }
	.s_contact_link_box:before{
		content: "";
	    position: absolute;
	    right: 305px;
	    --contact-link-image-width: 100px;
	    --contact-link-image-height: 100px;
	    width: var(--contact-link-image-width);
	    height: var(--contact-link-image-height);
	    display: block;
	    background-image: url(../image/tonbo_nomal.png);
	    background-repeat: no-repeat;
	    background-size: var(--contact-link-image-width) var(--contact-link-image-height);
		z-index: 0;
		top: -95px;
		transition: z-index .8s .8s ease-out,top .5s .6s ease-in-out;
	}	
	.s_contact_link_inner{
		max-width: 463px;
		margin: 0 auto;
		padding: 0 30px;
	}
	.s_contact_link_inner h3{
		font-size: 1.6rem;
		text-align: center;
	}
	.s_contact_link_content{
		display: flex;
	    margin-top: 50px;
	    gap: 29px;
	}
	.s_contact_link_list{
		padding: 0;
	}
	.s_contact_link_list li a{
		display: flex;
		align-items: center;
		text-decoration: none;
	}
	.s_contact_link_list li a span:before{
		content: "";
	    position: absolute;
	    left: -15px;
	    top: 6px;
	    width: 5px;
	    height: 5px;
	    border-right: 2px solid #fff;
	    border-top: 2px solid #fff;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	}
	.s_contact_link_list li a span{
		font-size: 1.1rem;
		position: relative;
	}
	.s_contact_link_list li a img{
		width: 25px;
		height: auto;
		margin-right: 23px;
	    transition: -webkit-transform .3s;
	    transition: transform .3s;
	    transition: transform .3s,-webkit-transform .3s;
	}
	.s_contact_link_list li:nth-child(2){
		margin-top: 21px;
	}
	.s_contact_link_telbox{
		color: #2D3D39;
	}
	.s_contact_link_teltitle{
		border: 1px solid #FFF;
		border-radius: 1rem;
		background-color: #FFF;
		padding: 1px 0 1px 0;
		text-align: center;
	}
	.s_contact_link_telicon{
		width: 45px;
		height: 45px;
		display: block;
		background-image: url(../image/tel_icon.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
		top: -8px;
		right: 2px;
	}
	.s_contact_link_telnumber{
		display: flex;
		color: #FFF;
		font-size: 1.4rem;
		font-weight: bold;
		margin-top: -13px;
		gap: 3px;
		align-items: center;
		justify-content: center;
	}
	.s_contact_link_telnumber span img{
		width: 33px;
		height: auto;
		position: relative;
		top:4px;
	}
	.s_contact_link_time{
		color: #FFF;
		margin-top: -3px;
		margin-left: 12px;

	}
	.footer_box{
		position: relative;
		padding: 98px 30px 30px;
		text-align: center;
	}
	.footer_nav{
		display: none;
		justify-content: center;
	}
	.footer_nav li{
		position: relative;
		margin: 0 25px 0 0;
	}
	.footer_nav li a{
		position: relative;
		display: inline-block;
		font-weight: bold;
		line-height: 2.1;
		text-decoration:none;
		transition: .3s;
	}
	.footer_nav li a::after{
		position: absolute;
 		bottom: 0;
  		left: 0;
  		content: '';
  		width: 0;
  		height: 2px;
  		background-color: #F6BD60;
  		transition: .3s;
	}
	.footer_nav li a:hover::after{
		width: 100%;
	}
	.footer_nav li:after{
		content: "|";
   		margin-left: 25px;
	}
	.footer_nav li:last-child{
		margin-right: 0;
	}
	.footer_rogo{
	}
	.footer_rogo a img{
		width: 71px;
	}
	.footer_rogo a p{
		font-size: 1.5rem;
		font-weight: bold;
		margin-top: 5px;
	}
	.footer_address{
		text-align: left;
		width: 326px;
		margin: 0 auto;
	}
	.footer_address_name{
		font-size: 1.3rem;
	}
	.footer_link_corp a{
		color: #85A8A4;
		border: 1px solid #85A8A4;
		border-radius: 37px;
		padding: 17px 71px;
		font-size: 1rem;
		font-weight: bold;
	}
	.footer_link_corp{
		margin-top: 41px;
	}
	.footer_link_sns{
		display: flex;
		gap: 69px;
		justify-content: center;
		margin-top: 56px; 
		margin-right: 41px;
	}
	.footer_link_sns li{
		position: relative;
	}
	.footer_link_sns li a{
		position: relative;
		display: inline-block;
	}
	.footer_link_sns li a img{
		width: 54px;
	}
	.footer_copyright{
		margin-top: 45px;
		font-size: 0.5em;
	}	
	.contact_form{
		display: flex;
		justify-content: center;
		margin-top: 80px;
	}
	.contact_form_item[aria-current=step]{
		background-color: #85A8A4;
	}
	.contact_form_item{
		position: relative;
	    width: 87px;
	    margin-right: 60px;
	    padding: 12px 9px;
	    text-align: center;
	    font-size: 1.1rem;
	    color: #fff;
	    background-color: #bbb;
	    border-radius: 9px;
	}
	.contact_form_item:after{
		content: "";
	    position: absolute;
	    --icon-arrow-width: 7px;
	    --icon-arrow-height: 12px;
	    top: calc(50% - var(--icon-arrow-height)/2);
	    right: calc(-1*var(--icon-arrow-width) - 28px);
	    display: inline-block;
	    width: var(--icon-arrow-width);
	    height: var(--icon-arrow-height);
	    background-image: url(../image/contact_flow_sankaku.png);
	    background-size: var(--icon-arrow-width) var(--icon-arrow-height);
	}
	.contact_form_item:nth-child(3):after{
		background-image: none;
	}
	.contact_form_p{
		text-align: center;
		margin-top: 68px;
		font-size: 1.1rem;
		margin: 68px auto;
	}
	.contact_form_inbox{
		background-color: #bbbbbb;
		margin-top: 50px;
	}
	.contact_form_inbox ul {
		padding-top: 50px;
		padding-left:0;
		padding-bottom: 100px;
	}
	.contact_form_inbox ul li{
		margin: 20px auto;
		width: 370px;
	}
	label,select{
		display: block;
		letter-spacing: 0.1rem;
		color: #3e3e3e;
		padding: 0.3rem 1rem;
	}
	input,textarea{
		font-size: 1rem;
   		background-color: #fff;
   		width: 80%;
   		border: none;
	    border-radius: 10px;
	    padding: 1rem 1rem;
	    letter-spacing: 0.1rem;
	}
	textarea{
		height: 200px;
	}
	select{
	}
	.form_btn_inbox input[type="submit"]{
		display: block;
    	background-color: #85A8A4;
    	color: #fff;
    	cursor: pointer;
    	border: none;
    	font-size: 1.15rem;
    	font-weight: 500;
    	letter-spacing: 0.1rem;
    	height: 45px;
    	padding: 0 0.5em 0 0.5em;
    	backgroundorder-radius: 20px;
    	margin: 50px auto;
	}
	.confirm_inbox h3{
		border: 1px solid #A1AAA9;
/*		border-radius: 20px;
*/		color: #FFF;
		background-color: #A1AAA9;
	    padding-top: 5px;
	    vertical-align: middle;
	    text-align: left;
	    padding-bottom: 5px;
	    font-size: 1rem;
	    font-weight: 300;
	    display: block;
	}
	.confirm_inbox h3::before{
		display:inline-block;
		content:"";
		width:0.5rem;
		height:1em;
		background-color: white;
		margin-right:0.5rem;
		margin-left:0.5rem;
	}
	.confirm_inbox p{
		margin-top: 0;
		margin-bottom:3rem;
	}
	.confirm_box ul{
		padding-left: 0;
	}
	.confirm_box ul li{
		margin-bottom:1.5rem;
	}
	.confirm_btn{
		display: flex;
		gap: 60px;
		justify-content: center;
		align-items: center;
		margin-top: 100px;

	}
	.send_btn{
		background-color: #85A8A4;
		padding: 14px 20px;
		color: #FFF;
	}
	.back_btn{
		background-color: #A1AAA9;
		padding: 14px 35px;
		color: #FFF;
	}
	.thanks_box{
		text-align: center;
		margin-bottom: 100px;
	}
	.thanks_box img{
		width: 14%;
		margin-top: 21px;
	}
	.thanks_box p{
		margin-top: 66px;
		line-height: 2em;
	}
	.linelink{
		display: none;
	}






















