@charset "UTF-8";

#main-visual{
	position: relative;
	display: flex;
	justify-content: space-between;
	height: calc(100vh - 12rem);
	min-height: 72.5rem;
	z-index: 1;
}

.mv-txt{
	width: 50rem;
}
.mv-txt dl{
	padding: 2rem 0 2.6rem 12rem;
	border-bottom: .1rem solid #0062b2;
	height: 32%;

	display: flex;
	flex-direction: column;
	justify-content: center;
}
.mv-txt dt,
.mv-txt .parking{
	color: #0062B2;
	font-size: 2.2rem;
	font-weight: 500;
	display: flex;
	flex-wrap: wrap;
}
.mv-txt .parking{
	padding: 3rem 0 3rem 12rem;
	border-bottom: .1rem solid #0062b2;
	height: 10.897%;
	align-items: center;
}
.mv-txt dt:before,
.mv-txt .parking:before{
	content: "";
	display: block;
	width: 2rem;
	height: 2rem;
	background: #F9F871;
	border-radius: 50%;
	flex-shrink: 0;
	margin-right: .6rem;
	margin-top: .3rem;
}
.mv-txt dd{
	padding-left: 2.6rem;
}
.mv-txt .btn01{
	width: 22rem;
	height: 6rem;
	margin-top: 1.6rem;
}
.mv-catch{
	font-family:Yu Gothic,"游ゴシック", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	font-size: 6.4rem;
	font-weight: 700;
	padding: 5.2rem 0 5.2rem 12rem;
	line-height: 1.75;
	border-bottom: .1rem solid #0062B2;
	height: 57.103%;
	letter-spacing: .1em;
	display: flex;
	flex-direction: column;
	justify-content: center;
}


.mv-slide{
	width: calc(100% - 55.5rem);
	padding-left: 2.5rem;
	padding-bottom: 2.5rem;
	height: 100%;
	position: relative;
}
.mv-slide .swiper-slide{
	overflow: hidden;
}
.mv-slide .pic,
.mv-slide .pic img{
	height: 100%;
}
.mv-slide .swiper-wrapper{
	position: relative;
	z-index: 999;
	background: #fff;
}
.mv-slide:before{
	content: "";
	display: block;
	width: calc(100% - 2.5rem);
	height: calc(100% - 2.5rem);
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(124deg, #0062B2 47.6%, #DAEFFF 100%);;
}
.mv-txt-en{
	position: absolute;
	right: 2.259%;
	bottom: 11.724%;
	width: 58.192%;
	z-index: 9999;
}
.mv-txt-en img{
	display: block;
	width: 100%;
}

/* +++mv zoom animation+++ */
.swiper-slide-active .swiper-slide-item,
.swiper-slide-duplicate-active .swiper-slide-item,
.swiper-slide-prev .swiper-slide-item {
	animation: zoom-animation 8s linear 0s normal both;
}

@keyframes zoom-animation{
	0%{
		transform: scale(1);
	}
	100%{
		transform: scale(1.15);
	}
}

@media (orientation: portrait){
	#main-visual{
		min-height: 60rem;
		max-height: 60rem;
	}
	.mv-txt{
		width: 36rem;
	}
	.mv-catch{
		padding: 0 0 0 7rem;
		font-size: 4rem;
		height: 50%;
	}
	.mv-txt dl{
		padding-left: 7rem;
		height: 39%;
	}
	.mv-txt .parking{
		padding: 0 0 0 7rem;
	}
	.mv-slide{
		width: calc(100% - 41.5rem);
	}
}

/* +++event-banner+++ */
.banner-area{
	padding-top: 18.5rem;
	padding-bottom: 21.5rem;
}
.banner-area *{
	display: block;
}

/* +++ #news +++ */
#news{
	padding-top: 0;
	background: linear-gradient(180deg, #fff 0%, #fff 27.4rem, rgba(227, 244, 242, .4) 27.4rem, rgba(227, 244, 242, .4) 100%);
}
#news .sec-ttl01{
	margin-bottom: 4.5rem;
}
.post-list{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 4rem;
}
.post-list article{
	width: 22.641%;
}
.post-list article .pic{
	height: calc((100vw - 14rem) * .22641 / 4 * 3);
	max-height: 18rem;
	background: #fff;
	box-shadow: .2rem .2rem 2rem 0 rgba(0, 0, 0, 0.10);
}
.post-list article:not(:nth-of-type(4)){
	margin-right: 3.145%;
}
.post-list .date{
	color: #888;
	font-weight: 300;
	padding: 1.6rem 0 1.2rem;
	display: block;
}
.post-ttl{
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5
}
#news .btn01{
	margin: 0 auto;
	width: 22rem;
}

/* +++ #gallery +++ */
#gallery{
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 7.5rem;
	overflow: hidden;
}
.gallery-swiper{
	position: relative;
}
#gallery .swiper-slide{
	transform: scale(.75);
	transition: .7s all ease-in;
}
#gallery .swiper-slide img{
	display: block;
	width: 100%;
}
#gallery .swiper-slide-active{
	transform: scale(1);
}
.swiper-pagination{
	margin: 6.3rem auto 0;
	position: absolute;
	left: 0 !important;
	right: 0 !important;
	top: 100% !important;
	bottom: auto !important;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 2.5rem;
	opacity: 1;
}
.swiper-pagination-bullet{
	height: 1.2rem;
	width: 1.2rem;
	background: #D4D4D4;
	transition: .2s all ease;
}
.swiper-pagination-bullet-active{
	transform: scale(1.5);
	background: #0062B2;
}
#gallery figure{
	position: relative;
}
#gallery figcaption{
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% - 2.7rem);
	box-shadow: .4rem .4rem 1rem 0 rgba(0, 64, 115, 0.10);
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30rem;
	height: 6rem;
	color: #0062B2;
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: .08em;
	transition: .2s all ease-in;
	margin: auto;
	opacity: 0;
	padding-right: .6rem;
	padding-bottom: .6rem;
}
#gallery .swiper-slide-active figcaption{
	opacity: 1;
}
#gallery figcaption:before{
	content: "";
	display: block;
	position: absolute;
	left: -.6rem;
	top: -.6rem;
	border: .2rem solid #0062b2;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
}
.swiper-button-next,
.swiper-button-prev{
	width: 1.04vw;
	height: 2.08vw;
	background: url(../images/gallery-arrow01.svg) no-repeat;
	background-size: 100% auto;
}
.swiper-button-next:after,
.swiper-button-prev:after{
	display: none;
}

.swiper-button-next{
	right: 27vw;
	transform: scale(-1,1);
}
.swiper-button-prev{
	left: 27vw;
}

/* +++ #trial +++ */
#trial{
	padding-top: 0;
}
#trial .sec-ttl01{
	margin-bottom: 8rem;
}

#consultation{
	padding-top: 4rem;
	padding-bottom: 6.5rem;
	background: linear-gradient(90deg, #FAFAFA 0%, #FAFAFA calc(50% + 34rem), #fff calc(50% + 34rem), #fff 100%);
}
#trial h3.txt-blue{
	color: #0062B2;
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 3rem;
}
#trial .parag{
	font-size: 2rem;
	line-height: 2;
	margin-bottom: 6rem;
}
#trial .txt{
	width: 46rem;
}
.applies{
	border-radius: .4rem;
	border: .1rem solid #1E93E2;
	overflow: hidden;
	background: #fff;
	align-items: stretch;
	margin-bottom: 6rem;
}
.applies h4{
	width: 12rem;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #FFF;
	font-size: 1.6rem;
	font-weight: 700;
	background: #1E93E2;
}
.applies div{
	width: 34rem;
	padding: 2rem 4rem 2rem;
}
.applies dl:not(:last-of-type){
	margin-bottom: 2rem;
}
.applies dt{
	color: #0062B2;
	font-weight: 700;
}
.applies dd{
	padding-left: 4rem;
	color: #1E93E2;
	font-weight: 500;
	display: flex;
	align-items: center;
	margin-top: 1rem;
}
.applies dd:before{
	content: "";
	display: block;
	width: .8rem;
	height: .1rem;
	background: #1E93E2;
	margin-right: .4rem;
}
#consultation .btn01{
	width: 38rem;
	letter-spacing: .08em;
	margin-top: 6rem;
}
#consultation .fukidashi-ttl{
	width: 100%;
	margin-bottom: 3rem;
}
#consultation li{
	font-weight: 500;
	padding-left: 2.8rem;
	text-indent: -2.8rem;
}
#consultation li:before{
	content: "";
	display: inline-block;
	width: 2.2rem;
	height: 2.2rem;
	background: url(../images/list-icon01.svg) no-repeat;
	background-size: 100% auto;
	margin-right: .6rem;
	transform: translateY(.2em);
}
#consultation li:not(:last-of-type){
	margin-bottom: 1.5em;
}
#trial mark{
	background: linear-gradient(0deg, rgba(249,248,113,.7) 0%, rgba(249,248,113,.7) 35%, rgba(255,255,255,0) 35%, rgba(255,255,255,0) 100%);
	font-weight: 500;
	color: #444;
}


.flow-slide{
	width: 40rem;
	position: relative;
}
.flow-swiper .swiper-slide{
	width: 100%;
	height: 40rem;
	border-radius: 1.4rem;
	box-shadow: .2rem .2rem 3rem 0px rgba(0, 0, 0, 0.1);
	background: #fff;
	position: relative;
}
.flow-swiper .swiper-slide,
.trial-flow-swiper .swiper-slide{
	opacity: 0 !important;
}
.flow-swiper .swiper-slide-active,
.trial-flow-swiper .swiper-slide-active{
	opacity: 1 !important;
}
.flow-swiper .pic{
	margin-top: -1.5rem;
}
.flow-swiper h4,
.trial-flow-swiper h4{
	color: #0062B2;
	font-size: 2.4rem;
	font-weight: 700;
}
.flow-swiper h4{
	text-align: center;
	margin-top: 2.5rem;
	margin-bottom: 1.5rem;
}
.flow-swiper p{
	font-weight: 500;
	line-height: 1.75;
	padding: 0 5rem 2rem;
}
.step{
	text-align: right;
	color: #0062B2;
	font-size: 4.8rem;
	font-weight: 100;
}
.flow-swiper .step{
	position: absolute;
	left: -1.5rem;
	top: -2.5rem;
}
.step span{
	font-size: 4rem;
	display: block;
	margin-top: 1rem;
}
#trial .pager{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 3rem;
}
#trial .swiper-pagination{
	position: relative;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	width: auto !important;
	margin: 0;
}
#trial .swiper-button-next,
#trial .swiper-button-prev{
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	margin: 0 2.5rem;
	width: 1.2rem;
	height: 2.4rem;
	background-size: 100% auto;
}

#trial-lesson{
	padding-top: 5rem;
}
#trial-lesson .sec-ttl02 span{
	background: #fff;
}
#trial-lesson .txt{
	width: 100%;
	position: relative;
	margin-bottom: 10.5rem;
}
#trial #trial-lesson h3.txt-blue{
	margin-bottom: 6rem;
}
#trial #trial-lesson .parag:not(:last-of-type){
	margin-bottom: 3rem;
}
#trial #trial-lesson .parag{
	line-height: 1.5;
}
#trial-lesson .outline .txt:before{
	content: "";
	display: block;
	width: 34rem;
	height: 19.6rem;
	background: url(../images/trial-lesson-pic01.svg) no-repeat;
	background-size: 100% auto;
	position: absolute;
	right: 2rem;
	top: -4.2rem;
}
.trial-lesson-feature{
	background: linear-gradient(-90deg, #FAFAFA 0%, #FAFAFA calc(50% + 34rem), #fff calc(50% + 34rem), #fff 100%);
}
.trial-lesson-feature .fukidashi-ttl{
	margin: 0 auto;
	transform: translateY(-2.5rem);
}
#trial-lesson ul{
	width: 67rem;
	transform: translateY(4rem);
	margin-top: -1.7rem;
}
#trial-lesson li{
	position: relative;
	border-radius: 1rem;
	background: rgba(255, 255, 255, 0.90);
	box-shadow: .2rem .2rem 2rem 0px rgba(0, 0, 0, 0.10);
	padding: 3.5rem 1.5rem 3.5rem 17rem;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: 17rem auto;
	background-position: left center;
	min-height: 14rem;
}
#trial-lesson li:not(:last-of-type){
	margin-bottom: 1.4rem;
}
#trial-lesson li h4{
	color: #0062B2;
	font-size: 2.4rem;
	font-weight: 700;
	margin-bottom: 1.8rem;
}
#trial-lesson li:nth-of-type(1){
	background-image: url(../images/trial-lesson-illust01.png);
}
#trial-lesson li:nth-of-type(2){
	background-image: url(../images/trial-lesson-illust02.png);
}
#trial-lesson li:nth-of-type(3){
	background-image: url(../images/trial-lesson-illust03.png);
}
#trial-lesson li:nth-of-type(4){
	background-image: url(../images/trial-lesson-illust04.png);
}
.trial-lesson-feature .flex{
	align-items: flex-end;
}
.teacher{
	width: 28rem;
	margin-right: 4rem;
	margin-left: 2rem;
	position: relative;
}
.teacher h4{
	background: #1E93E2;
	color: #fff;
	width: 14rem;
	height: 14rem;
	border-radius: 50%;
	justify-content: center;
	font-size: 2rem;
	font-weight: 500;
	position: absolute;
	right: -4rem;
	top: -7rem;
}
.teacher h4 span{
	margin-bottom: 1.5rem;
}
.teacher h4 ruby{
	display: flex;
	flex-direction: column-reverse;
}
.teacher h4 rt{
	font-size: 1.1rem;
	margin-bottom: .5rem;
}
.trial-lesson-flow .fukidashi-ttl{
	margin: 11.8rem auto 2.3rem
}
.trial-lesson-flow .parag{
	max-width: 90rem;
	margin: 0 auto 5.7rem;
	font-size: 1.6rem !important;
	line-height: 2 !important;
}
.trial-lesson-flow .swiper-slide{
	width: 100%;
	height: 22rem;
	background: #fff;
	border-radius: 1.4rem;
	box-shadow: .2rem .2rem 3rem 0px rgba(0, 0, 0, 0.10);
	align-items: center;
}
.trial-lesson-flow .swiper-slide .pic{
	width: 39.3rem;
	margin-top: 0;
	margin-bottom: auto;
}
.trial-lesson-flow .step01 .pic{
	transform: translateY(-1.5rem) !important;
}
.trial-lesson-flow .step02 .pic{
	transform: translateY(-1.7rem);
}
.trial-lesson-flow .step03 .pic{
	transform: translateY(-2.3rem);
}
.trial-lesson-flow .swiper-slide .step{
	width: 19.7rem;
	padding-left: 4rem;
	text-align: right;
}
#trial-lesson .trial-lesson-flow .swiper-slide .txt{
	width: 47rem;
	padding-right: 6rem;
	margin-bottom: 0;
}
.trial-lesson-flow .step{
	text-align: center !important;
	font-size: 3.2rem;
}
.trial-lesson-flow .step span{
	font-size: 6.4rem;
}
.trial-flow-swiper h4{
	margin-bottom: 2.5rem;
}
.trial-flow-swiper p{
	line-height: 2;
	font-weight: 500;
}
.trial-lesson-flow .btn01{
	margin: 9.4rem auto 6rem;
}

/* +++#features+++ */
#features{
	background: #F2FAFF;
	position: relative;
	padding-top: 10rem;
	padding-bottom: 6rem;
}
#features:before{
	content: "FEATURES";
	color: #D2E9F9;
	font-family: "Josefin Sans";
	font-size: 14.4rem;
	font-weight: 600;
	position: absolute;
	left: 0;
	top: -.4em;
}
#features h2{
	color: #0062B2;
	font-size: 4rem;
	font-weight: 700;
	display: flex;
	align-items: center;
}
#features h2:after{
	content: "";
	display: block;
	width: 14.6rem;
	height: 15.5rem;
	margin-left: 3.8rem;
	background: url(../images/features-illust01.svg) no-repeat;
	background-size: 100% auto;
}
#features ul{
	margin-top: -17.5rem;
	counter-reset: number 0;
	flex-wrap: wrap;
}
#features ul:before{
	content: "";
	display: block;
	width: calc(50% - 1rem);
	margin-right: 2rem;
}
#features li{
	width: calc((100% - 6rem) / 4);
	height: 20rem;
	margin-bottom: 2rem;
	margin-right: 2rem;
}
#features li a:before{
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
	order: 2;
	color: #0062B2;
	opacity: .2;
	font-family: Outfit;
	font-size: 6.4rem;
	font-weight: 300;
	margin: auto 0 0;
}
#features li:nth-of-type(2n) a:before{
	color: #1E93E2;
}
#features li a:after{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-left: 1.3rem solid #0062B2;
	border-top: 1.3rem solid transparent;
	border-bottom: 1.3rem solid transparent;
	order: 3;
	margin: auto 3rem 1rem;
}
#features li:nth-of-type(2n) a:after{
	border-left-color: #1E93E2;
}
#features li:nth-of-type(4n-2){
	margin-right: 0;
}
#features li a{
	width: 100%;
	height: 100%;
	border: .2rem solid #0062B2;
	background: #fff;
	border-radius: 1rem;
	padding: 3.5rem 0 1.5rem 3rem;
	flex-wrap: wrap;
}
#features li p{
	color: #0062B2;
	font-family:Yu Gothic,"游ゴシック", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
	width: 100%;
}
#features li:nth-of-type(2n) a{
	border-color: #1E93E2;
}
#features li:nth-of-type(2n) p{
	color: #1E93E2;
	order: 1;
}

.lightbox-outer{
	position: fixed;
	left: 0;	
	right: 0;
	top: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.20);
	overflow: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 999999;
	opacity: 0;
	visibility: hidden;
	transition: .4s all ease-out;
}
.no-ease .lightbox-outer{
	transition: none;
}
.lightbox-outer.active{
	opacity: 1;
	visibility: visible;
	transition: none;
}
.lightbox{
	padding: 5.8rem 5rem 3rem;
	background: #fff;
	width: 106rem;
	flex-wrap: wrap;
	position: relative;
}
.lightbox h3{
	width: 60rem;
	padding-left: calc(100% - 60rem);
	color: #0062B2;
	margin-bottom: 5.8rem;
	font-size: 3.2rem;
	font-weight: 700;
	width: 100%;
}
.lightbox .pic{
	width: 30rem;
	position: relative;
}
.lightbox .pic:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: -1rem;
	bottom: -1rem;
	background: linear-gradient(124deg, #0062B2 47.6%, #DAEFFF 100%);
}
.lightbox .pic img{
	position: relative;
	z-index: 9;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
.lightbox .txt{
	width: 60rem;
}
.lightbox p{
	line-height: 2;
}
.lightbox p:not(:last-of-type){
	margin-bottom: 2.5rem;
}
.lightbox mark{
	background: linear-gradient(0deg, rgba(249, 248, 113, .7) 0%, rgba(249, 248, 113, .7) 35%, rgba(255, 255, 255, 0) 35%, rgba(255, 255, 255, 0) 100%);
	font-size: 125%;
	color: #0062B2;
	font-weight: 700;
	font-family: "Noto Sans JP", 游ゴシック, YuGothic, メイリオ, Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	line-height: 1.6;
}
.lightbox h4{
	color: #1E93E2;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.25;
	text-indent: -3.6rem;
	padding-left: 3.6rem;
}
.lightbox h4:before{
	content: "";
	width: 3rem;
	height: 3rem;
	background: url(../images/lightbox-icon01.png) no-repeat;
	background-size: 100% auto;
	margin-right: .6rem;
	display: inline-block;
}
.at{
	color: #0062B2;
	font-size: 6.4rem;
	font-weight: 500;
	opacity: .1;
	position: absolute;
	z-index: 1;
	left: 23.584%;
	top: 1rem;
}
.at span{
	font-weight: 300;
	font-size: 200%;
}
.lightbox .pager{
	font-size: 2rem;
	font-weight: 300;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 2.5rem;
	position: relative;
}
.lightbox .pager span{
	color: #999;
}
.lightbox .pager a{
	color: #1E93E2;
}
.lightbox .pager:before{
	content: "";
	display: block;
	width: .1rem;
	height: 1.6rem;
	background: #999;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.lightbox .prev{
	margin-right: 8rem;
}
.lightbox .next{
	margin-left: 8rem;
}
.lightbox .next:after,
.lightbox .prev:before{
	content: "";
	display: inline-block;
	width: 1rem;
	height: 1rem;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center center;
}
.lightbox .next:after{
	margin-left: 1rem;
}
.lightbox .prev:before{
	margin-right: 1rem;
}
.lightbox .next:after{
	background-image: url(../images/lightbox-next-arrow01.svg);
}
.lightbox span.next:after{
	background-image: url(../images/lightbox-next-arrow02.svg);
}
.lightbox .prev:before{
	background-image: url(../images/lightbox-prev-arrow01.svg);
}
.lightbox span.prev:before{
	background-image: url(../images/lightbox-prev-arrow02.svg);
}
.close-btn{
	width: 4rem;
	position: absolute;
	right: 3.8rem;
	top: 1.5rem;
	cursor: pointer;
}

.large-pic{
	overflow: hidden;
}
/* +++#vocie+++ */
#voice{
	padding-top: 0;
	position: relative;
	z-index: 99;
	background: #fff;
}
#voice .fukidashi{
	margin: 0 auto 5rem;
	width: 46.9rem;
}
#voice .fukidashi img{
	display: block;
	width: 100%;
}

#voice ul{
	margin-top: 6rem;
}
#voice li{
	width: 30.1886%;
}
.voice-head{
	position: relative;
}
.voice-no{
	color: #1E93E2;
	display: flex;
	align-items: center;
}
.voice-no span{
	font-size: 400%;
	font-weight: 300;
	opacity: .2;
	margin-left: -2rem;
}
.voice-head .pic{
	position: absolute;
	right: -1.7rem;
	top: 0;
	width: 10.5rem;
	z-index: 1;
}
.client-info{
	justify-content: flex-start;
	margin: 1.2rem 0 1.6rem;
	position: relative;
	z-index: 9;
}
.client-info div{
	height: 3rem;
	border-radius: 1.5rem;
	color: #0062B2;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: .4rem;
	font-weight: 500;
	border: .1rem solid #0062b2;
	padding: 0 1.3rem;
	background: #fff;
}
#voice li h3{
	background: #0062B2;
	width: 100%;
	height: 4rem;
	font-size: 2rem;
	color: #fff;
	font-weight: 700;
	margin-bottom: 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
#voice .parag{
	line-height: 2;
	font-weight: 500;
}
#voice mark{
	background: linear-gradient(0deg, rgba(249,248,113,.7) 0%, rgba(249,248,113,.7) 35%, rgba(255,255,255,0) 35%, rgba(255,255,255,0) 100%);
	font-weight: 500;
	color: #444;
}


/* +++#course+++ */
#course{
	padding-bottom: 0;
	position: relative;
	z-index: 9;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
#course h2{
	margin-bottom: 6rem;
}
.tab-list li{
	width: calc(50% - 3rem);
	height: 8rem;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	font-size: 2.4rem;
	font-weight: 700;
	color: #fff;
	background: #BBB;
	cursor: pointer;
}
.tab-list li.active{
	color: #444;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
.tab-list li.active.tab01{
	background: #F0F9F8;
}
.tab-list li.active.tab02{
	background: #FFF8E9;
}
.tab-list li.active:before{
	content: "";
	display: block;
	width: 100%;
	height: .6rem;
	position: absolute;
	top: 0;
	left: 0;
	background: #0062B2;
}
.tab-content .inner:after{
	content: "";
	display: block;
	width: 0;
	height: .0;
	position: absolute;
	top: 0;
	margin: auto;
	border-top: 1.2rem solid #0062B2;
	border-left: 1.4rem solid transparent;
	border-right: 1.4rem solid transparent;

}
.tab-content01 .inner:after{
	left: -1.4rem;
	transform: translateX(25rem);
}
.tab-content02 .inner:after{
	right: -1.4rem;
	transform: translateX(-25rem);
}
.tab-contents{
	position: relative;
}
.tab-content{
	position: absolute;
	left: 0;
	top: 0;
	display: none;


}
.tab-content .inner{
	padding-top: 8rem;
	padding-bottom: 12rem;
}
.tab-content01{
	background: #F0F9F8;
}
.tab-content02{
	background: #FFF8E9;
}
.tab-content.active{
	display: block;
	position: relative;
	top: auto;
	left: auto;
}
.tab-content .sec-ttl02{
	margin-bottom: 0;
}
.tab-content01 .sec-ttl02 span{
	background: #F0F9F8;
}
.tab-content-head{
	margin-bottom: 4.6rem;
	align-items: center;
}
.tab-content-head ul{
	width: 50%;
}
.tab-content-head li{
	display: flex;
	align-items: center;
	height: 4rem;
	border-radius: 2rem;
	color: #fff;
	font-weight: 700;
	padding: 0 4rem;
	background: #0062B2;
}

@media screen and (max-width: 1200px) and (min-width: 769px){
	.tab-content-head li{
		padding: 0 3.5rem;
	}
}

.tab-content01 .desc{
	align-items: center;
}
.tab-content .desc .txt{
	line-height: 2;
	font-weight: 500;
	width: 50%;
}
.tab-content .desc p:not(:last-of-type){
	margin-bottom: 3.5rem;
}
.tab-content .desc .pic{
	width: calc(50% - 2rem);
	position: relative;
}
.tab-content .desc .pic img{
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
.feature-list{
	margin-top: 3rem;
	flex-wrap: wrap;
	align-items: stretch;
}
.feature-list li{
	align-items: center;
	margin-top: 3rem;
	width: calc(50% - 1.5rem);
	background: #fff;
	border-radius: 1rem;
	box-shadow: .4rem .4rem 1rem 0px rgba(0, 64, 115, 0.10);
	min-height: 20rem;
}
.feature-list .txt{
	padding: 3rem 1rem 3rem 4rem;
	width: calc(100% - 16rem);
}
.feature-list .pic{
	width: 16rem;
}
.feature-list h4{
	color: #0062B2;
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 1.6rem;
	line-height: 1.2;
}
.feature-list p{
	line-height: 2;
	font-weight: 400;
}
.time-table-area{
	margin-top: 12rem;
}
.time-table-area p{
	font-weight: 700;
	margin: 3rem 0;
}
.time-table-area p span{
	font-weight: 500;
}
.time-table th{
	text-align: center;
	vertical-align: middle;
	font-weight: 700;
	color: #fff;
	background: #0062B2;
	padding: 2rem 1rem;
}
.time-table th:not(:last-of-type){
	border-right: .1rem solid #fff;
}
.time-table td{
	text-align: center;
	vertical-align: middle;
	font-weight: 500;
	background: #fff;
	padding: 2.7rem 1rem;
	border: .1rem solid #ccc;
	border-top: none;
	font-size: 2rem;
}

.tab-content02 .sec-ttl02 span{
	background: #FFF8E9;;
}
.tab-content .fukidashi-ttl{
	background: #fff;
	color: #1E93E2;
	width: 40rem;
	height: 5rem;
	font-size: 2rem;
	position: absolute;
	left: 0;
	right: 0;
	top: -2.5rem;
	margin: auto;
	z-index: 9;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
.tab-content .fukidashi-ttl:after{
	border-top-color: #fff;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
.time-table-area .cap-list{
	margin: 2.5rem 0;
}
.time-table-area .cap-list li{
	font-weight: 700;
	line-height: 1.75;
	padding-left: 1em;
	text-indent: -1em;
}
.time-table-area .cap-list li:before{
	content: "・";
}
.time-table-area .caption{
	font-weight: 500;
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.75;
}
.time-table-area .caption:before{
	content: "※";
}
.time-table-area .sec-ttl02{
	margin-bottom: 3rem;
}


/* ++++++++++#price++++++++++ */
.list-outline{
	max-width: 49.5rem;
	margin: 6rem auto 3rem;
	line-height: 2;
}
.list-outline li{
	text-indent: -1em;
	padding-left: 1em;
}
.list-outline li:before{
	content: "・";
}
.list-outline li em{
	font-weight: 700;
	color: #0062B2;
	font-size: 125%;
	font-style: normal;
}
#price .sec-ttl02 span{
	background: #fff;
}
.price-info{
	width: calc(50% - 2rem);
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
.price-table{
	width: 100%;
	height: 8rem;
	background: #fff;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
.price-table dt{
	color: #fff;
	background: #1E93E2;
	font-weight: 700;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 18rem;
	height: 100%;
}
.teaching-material dt{
	background: #0062B2;
}
.price-table dd{
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
	width: calc(100% - 18rem);
	height: 100%;
}
.price-table dd span{
	font-size: 200%;
	margin-right: .7rem;
}
.price-table dd span.price-table-span {
	display: block;
	font-size:100%;
	width:100%;
	text-align: center;
	margin:-1em auto 0 0;
}
.benefits{
	margin-top: 2rem;
	background: linear-gradient(0deg, #F9F871 0%, #F9F871 30%, rgba(255,255,255,0) 30%, rgba(255,255,255,0) 100%);
	font-size: 2rem;
	font-weight: 700;
	padding-bottom: .25em;
}
.benefits .medium{
	color: #1E93E2;
	font-size: 120%;
}
.benefits .medium:nth-of-type(1){
	margin-left: .7rem;
}
.benefits .large{
	color: #1E93E2;
	font-size: 240%;
	font-weight: 600;
}
.discount-area{
	margin-top: 5.5rem;
	margin-bottom: 12rem;
	background: linear-gradient(180deg, #F0F9F8 0%, #F0F9F8 calc(100% - 7rem), #fff calc(100% - 7rem), #fff 100%);
	padding-top: 4rem;
}
.discount-area .fukidashi-ttl{
	width: 33rem;
	margin: 0 auto -2.5rem;
	font-size: 2rem;
	position: relative;
	z-index: 9;
}
.discount{
	width: calc(50% - 2rem);
}
.discount .flex{
	background: #fff;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
	align-items: stretch;
}
.discount .flex .txt{
	width: 21rem;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	line-height: 2;
}
.discount .flex .txt mark{
	font-weight: 700;
	font-size: 125%;
	background: linear-gradient(0deg, rgba(249,248,113,.7) 0%, rgba(249,248,113,.7) 35%, rgba(255,255,255,0) 35%, rgba(255,255,255,0) 100%);
}
.discount .flex .txt mark span{
	font-size: 80%;
	font-weight: 400;
}
.discount .flex .pic{
	width: calc(100% - 21rem);
}
.discount .flex .pic img{
	object-position: right center;
}
.discount-form{
	background: #fff;
	box-shadow: .4rem .4rem 1rem 0 rgba(0, 64, 115, 0.10);
	text-align: center;
	padding: 3rem 11rem 3.5rem;
}
.discount-form h4{
	color: #0062B2;
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 3rem;
}
.discount-form p{
	font-weight: 500;
	margin-bottom: 3rem;
}
.discount-form label{
	align-items: center;
	font-weight: 700;
}
.check-outer{
	position: relative;
	border-radius: .3rem;
	border: .2rem solid #ccc;
	width: 2.4rem;
	height: 2.4rem;
	margin-right: .6rem;
}
.discount-form span{
	width: 10rem;
	height: 2.4rem;
	border-radius: 1.2rem;
	background: #0062B2;
	border-radius: 1.2rem;
	margin-left: .6rem;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}
.check-outer.checked{
	background: url(../images/check01.svg) no-repeat;
	background-size: 66.666% auto;
	background-position: center center;
	border-color: #1E93E2;
}
.price-table02{
	margin-top: 6rem;
}
.price-table02 table{
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}
.price-table02 td,
.price-table02 th{
	text-align: center;
	width: 25%;
	padding: 1.5rem 0;
	background: #fff;
	border: .1rem solid #ccc;
}
.price-table02 th{
	color: #0062B2;
	font-weight: 700;
}
.price-table02 .bg-blue th{
	padding: 1.8rem 0;
	background: #0062B2;
	color: #fff;
}
.price-table02 .bg-blue th:not(:last-of-type){
	border: none;
	border-right: .1rem solid #fff;
}
.price-table02 .en{
	font-size: 150%;
	margin-right: .4rem;
	font-weight: 500;
}
.price-table02 td{
	font-weight: 500;
	text-align: right;
	padding-right: 8.5rem;
}
.tab-content01 .price-table02 td{
	padding-right: 12.5rem;
}
.txt-red{
	color: #EF0000;
}
#price .caption{
	text-align: right;
	margin-top: 1rem;
}
.price-detail .sec-ttl02{
	margin-top: 8rem;
	margin-bottom: 2rem;
}
.price-detail .txt-blue{
	font-weight: 500;
}
.price-detail ul{
	padding: 3.5rem 7rem;
	background: #fff;
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
	font-weight: 700;
	margin-top: 2rem;
	align-items: center;
	justify-content: flex-start;
}
.price-detail li{
	display: flex;
	align-items: center;
}
.price-detail li:not(:last-of-type){
	margin-right: 8rem;
}
.price-detail li:before{
	content: "・";
}
.price-detail .parag{
	line-height: 2;
}
.price-detail .btn01{
	width: 30rem;
	margin: 6rem auto 0;
}

.price-detail li img {
	max-width:24rem;
}

.price-table-wrap {
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
}

.price-table-wrap .price-table {
	box-shadow: none;
}

.price-table-wrap .price-table:not(:last-of-type) dt {
	border-bottom:0.1rem solid #fff;
}

.price-table-wrap .price-table:not(:last-of-type) dd {
	border-bottom: .1rem solid #999;
}


/* ++++index-pic-area++++ */
.index-pic-area{
	padding-top: 0;
}
.index-pic-area .pic01{
	width: 34.722%;
	overflow: hidden;
}
.index-pic-area .pic02{
	width: 62.5%;
	margin-top: 6.944%;
	overflow: hidden;
}


/* ++++#high-school++++ */
#high-school .sec-ttl01{
	margin-bottom: 5.5rem;
}
#high-school .content01{
	/* background: linear-gradient(90deg, #FAFAFA 0%, #FAFAFA calc(50% + 34rem), #fff calc(50% + 34rem), #fff 100%); */
	padding-top: 4rem;
	position:relative;
}
#high-school .content01::before {
	content:"";
	display: block;
	width:calc(50% + 34rem);
	height:48.6%;
	background:#FAFAFA;
	position:absolute;
	left:0;
	top:0;
}

#high-school .content01 .desc{
	/* align-items: flex-end; */
	align-items: center;
	/* margin-bottom: -1.5rem; */
	margin-bottom:2rem;
}
#high-school .content01 .pic{
	width: 35rem;
}
#high-school .content01 .txt{
	line-height: 2;
	font-weight: 500;
	width: 66rem;
	margin-left: 2rem;
}

#high-school .content01 .txt .parag:not(:last-of-type) {
	margin-bottom:1em;
}
/* ここから html 削除したコード */
#high-school .content01 ul{
	transform: translateY(4rem);
	font-weight: 500;
	font-size: 2rem;
	line-height: 1.6;
	flex-wrap: wrap;
}
#high-school .content01 li{
	width: calc(50% - 3.2rem);
	height: 12rem;
	padding-left: 7.6rem;
	position: relative;
	margin-top: 3.3rem;
}
#high-school .content01 li:before{
	content: "";
	display: block;
	width: 7.6rem;
	height: 13.3rem;
	background: url(../images/high-school-bg01.svg) no-repeat;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	bottom: 0;
}
#high-school .content01 li p{
	background: #fff;
	width: 100%;
	height: 100%;
	box-shadow: .2rem .2rem 2rem 0px rgba(0, 0, 0, 0.10);
	text-align: center;
	font-weight: 700;
	display: flex;
	justify-content: center;
	align-items: center;
}
/* ここまで削除したコード */

/* 2025.12.12 追加コード */

.clipboard-wrap {
	max-width:106rem;
	margin:0 auto;
	flex-wrap:wrap;
	align-items: inherit;
	justify-content: space-between;
}

.clipboard {
	width:calc(50% - 2rem);
	max-width:51rem;
	margin-top:4rem;
	border-radius: 0.8rem;
	background:#0062B2;
	padding:1rem;
	position:relative;
}

.clipboard::before {
	content:"";
	display: block;
	width:9.2rem;
	height:6rem;
	background:url(../images/icon-clip.svg) no-repeat center / contain;
	position:absolute;
	left:50%;
	top:-2.2rem;
	transform:translateX(-50%);
}

.clipborad-inner {
	height:100%;
	border-radius: 0.4rem;
	background:#fff;
	padding:6rem 3rem 3rem;
}

.clipboard h4 {
	text-align:center;
	font-size:2rem;
	font-weight:700;
	margin-bottom:1.5em;
}

.clipboard p {
	line-height:2;
}

#high-school .content02{
	/* margin-top: 13rem; */
	margin-top: 6rem;
	position:relative;
	padding-bottom:6.6rem;
	background:linear-gradient(180deg, #fff 0%, #fff 25%, #F2FAFF 25%, #F2FAFF 100% );
}

#high-school .content02 .sec-ttl02 span {
	background-color: #fff;
}
.support-list{
	width: 100%;
	/* padding-right: 2rem; */
	padding-right: 0;
	position: relative;
	justify-content: space-between;
}
.support-list:before{
	content: "";
	display: block;
	width: 26rem;
	height: 38.3rem;
	background: url(../images/high-school-pic02.png);
	background-size: 100% auto;
	position: absolute;
	/* right: -3rem; */
	left:calc(50% - 2rem + 2rem);
	/* bottom: 0; */
	/* bottom:8rem; */
	top:0;
	/* z-index: 1; */
}
.support-list .price-table-wrap {
	width:calc(50% - 2rem);
	max-width:51rem;
}
.support-list .price-table{
	z-index: 9;
	position: relative;
}
.support-list .price-table dd {
	flex-wrap:wrap;
}
.support-list ul{
	width:calc(50% - 2rem);
	max-width:29rem;
	font-weight: 500;
	line-height: 2.5;
	margin-bottom: 4rem;
}
.support-list li{
	position: relative;
	padding-left: 2.8rem;
}
.support-list li:before{
	content: "";
	display: block;
	width: 2.2rem;
	height: 2.2rem;
	background: url(../images/list-icon01.svg) no-repeat;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	top: .5em;
}
.support-list li span {
	font-size:1.4rem;
	line-height:1.7;
	display: inline-block;
	margin-top:-0.5em;
}
.line-pic{
	width: 40rem;
}
.line-pic .fukidashi-ttl{
	width: 33rem;
	margin: 0 auto 2rem;
}
#high-school .btn01{
	margin: 8rem auto 0;
	width: 30rem;
}

.high-school-option-wrap {
	justify-content: space-between;
}

.high-school-option {
	width:calc(50% - 2rem);
	max-width:51rem;
	position:relative;
}

.high-school-option .flex {
	box-shadow: .2rem .2rem 2rem rgba(0, 0, 0, 0.10);
	align-items: stretch;
	background:#fff;
}

.high-school-option .pic {
	width:calc(100% - 21rem);
}

.high-school-option .txt {
	width: 21rem;
	padding:4rem 1rem 1rem;
}

.high-school-option .txt h4 {
	text-align: center;
	line-height: 1.4;
	min-height:3.15em;
}

.high-school-option .txt h4 mark {
	font-size:2rem;
	background:linear-gradient(0deg, rgba(249,248,113,.7) 0%, rgba(249,248,113,.7) 35%, rgba(255,255,255,0) 35%, rgba(255,255,255,0) 100%)
}

.high-school-option .txt h4 span {
	font-size:1.4rem;
}

.high-school-option .txt .base-price {
	text-align: center;
	width:12rem;
	height:3rem;
	line-height:3rem;
	/* margin:2.5rem auto 3.5rem; */
	margin:1rem auto 3.5rem;
	background:#0062B2;
	color:#fff;
	font-size:1.6rem;
	font-weight:700;
	border-radius: 1.5rem;
	position:relative;
}

.high-school-option .txt .base-price::after {
	content:"＋";
	display: block;
	color:#0062B2;
	font-size:2.4rem;
	font-weight:700;
	position:absolute;
	bottom:-3rem;
	left:50%;
	transform:translateX(-50%);
	line-height:1;
}

.high-school-option .txt .option-price {
	font-size:1.6rem;
	font-weight:500;
	text-align: center;
}

.high-school-option .txt .option-price span {
	font-size:3.2rem;
	font-weight:500;
	padding-right:0.1em;
	line-height: 1.25;
}

.high-school-option .fukidashi-ttl {
	width: 33rem;
	margin: 0 auto -2.5rem;
	font-size: 2rem;
	position: relative;
	z-index: 9;
}

.high-school-option .fukidashi-ttl span {
	font-size:4rem;
	font-weight:300;
	padding-left:0.1em;
}

/* ++++#open++++ */
#open{
	padding-top: 0;
}
#open .content01{
	padding-top: 4rem;
}
#open .sec-ttl02{
	margin-bottom: 3rem;
}
#open .content01 .sec-ttl02 span{
	background: #fff;
}
.business-hour th{
	padding: 1.8rem .8rem;
	color: #fff;
	background: #0062B2;
}
.business-hour th:not(:last-of-type){
	border-right: .1rem solid #fff;
}
.business-hour td{
	text-align: center;
	padding: 1.8rem .8rem 2.2rem;
	border: .1rem solid #ccc;
	border-top: none;
	font-weight: 500;
}
.business-hour td span{
	display: block;
}
.hour{
	font-size: 2rem;
	margin-bottom: 1.5rem;
}
.kakko{
	position: relative;
	width: 100%;
	height: 4.8rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.kakko:before,
.kakko:after{
	content: "";
	display: block;
	width: .6rem;
	height: 6rem;
	background: url(../images/kakko02.svg) no-repeat;
	background-size: 100% auto;
	background-position: center center;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
.kakko:before{
	left: 0;
}
.kakko:after{
	transform: scale(-1,1);
	right: 0;
}
.kakko .txt-blue{
	font-weight: 700;
	margin-top: .5rem;
}
.kakko .txt-sky{
	font-weight: 700;
}
#open .caption{
	padding-left: 1em;
	text-indent: -1em;
	margin-top: 2.5rem;
	margin-bottom: 6rem;
	font-weight: 500;
	font-size: 2rem;
}
#open .caption:before{
	content: "・";
}
#open .content02{
	background: #FAFAFA;
	padding-top: 4rem;
	padding-bottom: 6.6rem;
}

#open .content02 dl{
	box-shadow: .4rem .4rem 1rem 0 rgba(0, 64, 115, 0.10);
	background: #fff;
	width: calc(50% - 2rem);
}
#open .content02 dt{
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 700;
	height: 5rem;
	width: 100%;
}

#open .content02 dd{
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	height: 7rem;
	width: 100%;
}
#open .content02 dd .en{
	font-size: 125%;
	margin-left: 2rem;
}
#open .content02 .btn01{
	width: 32rem;
	margin: 6rem auto 0;
}


/* ++++#access++++ */
#access{
	padding-bottom: 20rem;
}
#access .content01{
	display: flex;
	justify-content: flex-end;
	margin-bottom: 8rem;
}
#access .content01 .pic{
	width: 50%;
}
#access .content01 .txt{
	width: 50%;
	max-width: 60rem;
	padding-left: 7rem;
	padding-right: 2rem;
}
#access .sec-ttl01{
	text-align: left;
	margin-bottom: 3rem;
}
#access .sec-ttl01:before{
	margin-bottom: -4.8rem;
	transform: translateX(-7rem);
	z-index: -1;
	position: relative;
}
.access{
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.5;
}
.access .zip{
	font-size: 80%;
	line-height: 1.5625;
	display: block;
}
.map-btn{
	width: 9rem;
	height: 3rem;
	border-radius: 1.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 1.3rem 0 3rem;
	font-size: 1.4rem;
	font-weight: 500;
}
.map-btn:before{
	content: "";
	display: block;
	width: 1.4rem;
	height: 1.4rem;
	background: url(../images/pin-icon01.svg) no-repeat;
	background-size: 100% auto;
	background-position: center center;
	margin-right: .2rem;
}
.access-desc{
	line-height: 2;
	padding-left: 1.5rem;
	border-left: .3rem solid #1E93E2;
	margin-bottom: 2.5rem;
}
.marker{
	font-weight: 500;
	line-height: 1.5625;
}
.marker span{
	background: linear-gradient(0deg, rgba(249,248,113,.7) 0%, rgba(249,248,113,.7) 35%, rgba(255,255,255,0) 35%, rgba(255,255,255,0) 100%);
}

#access .content02 .inner{
	background: #fff;
	box-shadow: .2rem .2rem 2rem 0px rgba(0, 0, 0, 0.10);
	padding: 0 0 5.8rem;
}
#access .content02 .fukidashi-ttl{
	margin: 0 auto 1.5rem;
	transform: translateY(-2.5rem);
}
#access .content02 p{
	text-align: center;
	margin: 0 0 3.2rem;
}

.figure-head .pic{
	height: 3.2rem;
}
.figure-head .pic img{
	width: auto;
	height: 100%;
	margin: 0 auto;
}

.vertical{
	width: 8.3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 4.2rem;
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	//transform: translateY(-1.2rem);
	letter-spacing: .25em;
	font-size: 2rem;
	position: relative;
	z-index: 9;
}

.school-list dt span{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 8.4rem;
	padding: .8rem 0;
	border-radius: 2rem;
	background: #FFF1D5;
	margin: .8rem 0;
	line-height: 1.25;
}
.school-list dt{
	padding-right: 9.7rem;
	position: relative;
	z-index: 9;
}
.school-list dd{
	padding: 1.7rem 0;
	width: 8.3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #E3F4F2;
	margin-right: 4.7rem;
	position: relative;
	z-index: 9;
}

.transpotation-figure{
	max-width: 73rem;
	margin: 0 auto;
	font-weight: 700;
}
.transpotation-figure dl{
	position: relative;
	display: flex;
	width: 64.7rem;
}
.transpotation-figure>.flex{
	align-items: stretch;
}
.transpotation-figure dl:before{
	content: "";
	display: block;
	width: 70rem;
	height: 0;
	border-top: .1rem solid #444;
	margin: auto;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.pad65 dd{
	padding-bottom: 6.5rem;
}
.transpotation-figure dl.pad65:before{
	bottom: auto;
	top: 2.8rem;
}
.figure-head{
	display: flex;
	padding-bottom: 1.6rem;
}
.figure-head:before{
	content: "";
	display: block;
	width: 8.4rem;
	margin-right: 9.7rem;
}
.figure-head .pic{
	width: 8.3rem;
	margin-right: 4.7rem;
}



/* +++++++++++++++++++++ */
/* +++++mobile style++++ */
/* +++++++++++++++++++++ */
@media screen and (max-width: 768px){
	#main-visual{
		flex-direction: column-reverse;
		justify-content: flex-end;
		align-items: flex-start;
		min-height: auto;
		height: auto;
		padding-top: 13rem;
		overflow: hidden;
	}

	.mv-txt{
		width: calc(100% - 4rem);
		margin: 0 auto;
		z-index: 99999;
	}
	.mv-txt dl{
		padding: 2.5rem 0;
		height: auto;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.mv-txt dt,
	.mv-txt .parking{
		font-size: 1.7rem;
		font-weight: 700;
		width: 100%;
	}
	.mv-txt .parking{
		padding: 2.5rem 0;
		border-bottom: .1rem solid #0062b2;
		height: auto;
	}
	.mv-txt dt:before,
	.mv-txt .parking:before{
		width: 1em;
		height: 1em;
		margin-right: .6rem;
		margin-top: 0;
	}
	.mv-txt dd{
		width: calc(50% - 1rem);
		padding: 0;
	}
	.mv-txt .btn01{
		width: 100%;
		height: 5rem;
		margin-top: 1.6rem;
	}
	.mv-catch{
		position: absolute;
		left: 2rem;
		top: -1rem;
		font-size: 3.4rem;
		border-bottom: none;
		height: auto;
		padding: 0;
		line-height: 1.6;
	}


	.mv-slide{
		width: 83.5vw;
		height: auto;
		padding-left: 1rem;
		padding-bottom: 1rem;
		margin-right: 0;
		margin-left: auto;
	}
	.mv-slide:before{
		width: calc(100% - 1rem);
		height: calc(100% - 1rem);
	}
	.mv-txt-en{
		right: 2rem;
		bottom: 2rem;
		width: 61.8%;
	}
	main{
		overflow: hidden;
	}

/* +++event-banner+++ */
	.banner-area{
		padding-top: 6rem;
		padding-bottom: 6rem;
	}
/* +++ #news +++ */
	#news{
		padding-top: 0;
		background: linear-gradient(180deg, #fff 0%, #fff 18rem, #E3F4F2 18rem, #E3F4F2 100%);
	}
	#news .sec-ttl01{
		margin-bottom: 3.5rem;
	}
	.post-list{
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: space-between;
		margin-bottom: 0;
	}
	.post-list article{
		width: calc(50% - 1rem);
		margin-bottom: 3.5rem;
	}
	.post-list article .pic{
		height: calc(((100vw - 4rem) / 2 - 1rem) / 4 * 3);
		max-height: calc(((100vw - 4rem) / 2 - 1rem) / 4 * 3);
	}
	.post-list article:not(:nth-of-type(4)){
		margin-right: 0;
	}
	.post-list .date{
		padding: 1.2rem 0 .8rem;
	}
	#news .btn01{
		width: 18rem;
	}

/* +++ #gallery +++ */
	#gallery{
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 6rem;
	}

	#gallery .swiper-slide{
		transform: scale(.8);
		transition: .7s all ease-in;
	}
	#gallery .swiper-slide-active{
		transform: scale(1);
	}
	.swiper-pagination{
		margin: 4rem auto 0;
	}

	.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
	.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
		margin: 0 1rem;
	}

	#gallery figcaption{
		top: calc(100% - 2rem);
		box-shadow: .2rem .2rem .5rem 0 rgba(0, 64, 115, 0.10);
		background: #fff;
		width: 16rem;
		height: 4rem;
		font-size: 1.6rem;
		padding-right: .3rem;
		padding-bottom: .3rem;
	}
	#gallery figcaption:before{
		left: -.3rem;
		top: -.3rem;
	}
	.swiper-button-next,
	.swiper-button-prev{
		width: 1.5rem;
		height: 3rem;
	}
	.swiper-button-next:after,
	.swiper-button-prev:after{
		display: none;
	}

	.swiper-button-next{
		right: 3.8rem;
	}
	.swiper-button-prev{
		left: 3.8rem;
	}

/* +++ #trial +++ */
	#trial{
		padding-top: 0;
	}
	#trial .sec-ttl01{
		margin-bottom: 4rem;
	}
	#consultation{
		padding-top: 3.2rem;
		padding-bottom: 5.4rem;
		background: linear-gradient(90deg, #FAFAFA 0%, #FAFAFA 73.611%, #fff 73.611%, #fff 100%);
	}
	#trial h3.txt-blue{
		font-size: 1.7rem;
		margin-bottom: 2rem;
	}
	#trial .parag{
		font-size: 1.7rem;
		margin-bottom: 2.5rem;
	}
	#trial .txt{
		width: 100%;
	}
	#consultation>.inner.flex{
		display: block;
	}
	.applies{
		border-radius: .4rem;
		border: 1px solid #1E93E2;
		margin-bottom: 6rem;
	}
	.applies h4{
		width: 9rem;
		font-size: 1.6rem;
	}
	.applies div{
		width: calc(100% - 9rem);
		padding: 2rem;
	}

	#consultation .btn01{
		width: calc(100% - 4rem);
		margin: 4rem auto 0;
	}
	#consultation .fukidashi-ttl{
		width: 100%;
		margin-bottom: 1.5rem;
	}
	#consultation li{
		line-height: 1.5;
	}
	#consultation li:before{
		transform: translateY(.3em);
	}
	#consultation li:not(:last-of-type){
		margin-bottom: 1em;
	}
	.flow-slide{
		width: calc(100% - 4rem);
		margin: 0 auto;
		padding-top: 7rem;
	}
	.flow-swiper .swiper-slide{
		width: 100%;
		height: 32rem;
	}
	.flow-swiper .swiper-slide,
	.trial-flow-swiper .swiper-slide{
		opacity: 0 !important;
	}
	.flow-swiper .swiper-slide-active,
	.trial-flow-swiper .swiper-slide-active{
		opacity: 1 !important;
	}

	.flow-swiper h4,
	.trial-flow-swiper h4{
		font-size: 1.8rem;
	}
	.flow-swiper h4{
		margin-top: 1.5rem;
	}
	.flow-swiper p{
		padding: 0 2rem;
	}
	.flow-swiper .step{
		top: -2rem;
		left: -1rem;
		font-size: 4rem;
	}
	.step span{
		font-size: 83.333%;
		margin-top: .8rem;
	}
	#trial .pager{
		margin-top: 2rem;
	}

	#trial-lesson{
		padding-top: 4rem;
	}

	#trial-lesson .txt{
		margin-bottom: 7rem;
		display: flex;
		flex-direction: column;
	}
	#trial #trial-lesson h3.txt-blue{
		order: 2;
		line-height: 1.5;
		margin-bottom: 3rem;
	}
	#trial-lesson .outline .txt:before{
		order: 1;
		width: calc(100% - 4rem);
		height: 17rem;
		position: relative;
		right: auto;
		top: auto;
		margin: 0 auto 3rem;
	}
	#trial #trial-lesson .parag:nth-of-type(1){
		order: 3;
	}
	#trial #trial-lesson .parag:nth-of-type(2){
		order: 4;
	}
	#trial #trial-lesson .parag:nth-of-type(3){
		order: 5;
		margin-bottom: 0;
	}

	#trial #trial-lesson .parag:not(:last-of-type){
		margin-bottom: 1.5rem;
	}
	#trial #trial-lesson .parag{
		line-height: 1.5;
	}

	.trial-lesson-feature{
		background: linear-gradient(-90deg, #FAFAFA 0%, #FAFAFA 73.611%, #fff 73.611%, #fff 100%);
	}
	.trial-lesson-feature .fukidashi-ttl{
		margin: 0 auto;
		transform: translateY(-2.5rem);
	}
	#trial-lesson ul{
		width: 100%;
		transform: translateY(0);
		margin-top: 0;
	}
	#trial-lesson li{
		padding: 2.5rem 1.5rem 3.5rem 8rem;
		background-size: 9rem auto;
		min-height: auto;
	}
	#trial-lesson li:not(:last-of-type){
		margin-bottom: 1.5rem;
	}
	#trial-lesson li h4{
		line-height: 1.5;
		font-size: 1.6rem;
		margin-bottom: 1rem;
	}
	#trial-lesson li p{
		line-height: 1.5;
		font-size: 1.4rem;
	}

	.trial-lesson-feature .flex{
		display: block;
	}
	.teacher{
		width: 100%;
		margin-right: 0;
		transform: translateX(2.5rem);
		margin-left: auto;
		height: 20rem;
		overflow: hidden;
		margin-top: -5rem;
	}
	.teacher .pic{
		width: 13rem;
		position: relative;
		z-index: 9;
		margin-right: 0;
		margin-left: auto;
	}
	.teacher h4{
		width: 12rem;
		height: 12rem;
		font-size: 1.6rem;
		position: absolute;
		right: 11rem;
		top: 6.5rem;
		z-index: 1;
	}
	.teacher h4 span{
		margin-bottom: .5rem;
	}
	.teacher h4 ruby{
		font-size: 1.6rem;
	}
	.teacher h4 rt{
		font-size: 1rem;
		margin-bottom: .3rem;
	}
	.trial-lesson-flow .fukidashi-ttl{
		margin: 6rem auto 2rem
	}
	.trial-lesson-flow .parag{
		max-width: 100%;
		margin: 0 auto 5.7rem;
		font-size: 1.5rem !important;
	}
	.trial-lesson-flow .swiper-slide{
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		width: 100%;
		height: 28rem;
		border-radius: 1.4rem;
		padding: 2rem;
	}
	.trial-lesson-flow .swiper-slide .pic{
		width: 100%;
		margin-top: 0;
		margin-bottom: 0;
		order: 1;
		padding-left: 4rem;
	}
	.trial-lesson-flow .step01 .pic{
		transform: translate(5rem, 0) !important;
		margin-top: -3.5rem;
	}
	.trial-lesson-flow .step02 .pic{
		transform: translate(5rem, 0) !important;
		margin-top: -3.5rem;
	}
	.trial-lesson-flow .step03 .pic{
		transform: translate(5rem, 0) !important;
		margin-top: -3.5rem;
	}
	.trial-lesson-flow .swiper-slide .step{
		width: auto;
		padding-left: 0;
		position: absolute;
		left: 2rem;
		top: 2rem;
		display: flex;
		align-items: flex-end;
		justify-content: center;
		flex-direction: column;
	}
	#trial-lesson .trial-lesson-flow .swiper-slide .txt{
		order: 2;
		width: auto;
		padding-right: 0;
		margin-bottom: 0;
		position: relative;
		left: auto;
		top: auto;
		bottom: auto;
		margin: 0;
	}
	.trial-lesson-flow .step{
		font-size: 2.4rem;
	}
	.trial-lesson-flow .step span{
		font-size: 4.8rem;
	}
	.trial-flow-swiper h4{
		margin-bottom: 1rem;
	}

	.trial-lesson-flow .btn01{
		margin: 4rem auto 2rem;
	}

/* +++#features+++ */
	#features{
		padding-top: 4rem;
		padding-bottom: 6rem;
	}
	#features:before{
		font-size: 4rem;
		left: 2rem;
	}
	#features h2{
		font-size: 2.4rem;
		justify-content: center;
		margin-bottom: 2rem;
	}
	#features h2:after{
		width: 8.6rem;
		height: 9.2rem;
		margin-left: 2rem;
	}
	#features ul{
		margin-top: 0;
	}
	#features ul:before{
		display: none;
	}
	#features li{
		width: calc(50% - 1rem);
		height: 16rem;
		margin-bottom: 2rem;
		margin-right: 0;
	}
	#features li a:before{
		font-size: 4rem;
	}
	#features li a:after{
		border-left: 1rem solid #0062B2;
		border-top: 1rem solid transparent;
		border-bottom: 1rem solid transparent;
		margin: auto 0 1rem;
	}
	#features li:nth-of-type(2n) a:after{
		border-left-color: #1E93E2;
	}

	#features li a{
		padding: 1.5rem;
	}
	#features li p{
		font-size: 1.8rem;
	}
	.lightbox-outer{
		display: block;
		padding: 2rem;
	}
	.lightbox{
		padding: 7.5rem 2rem 3rem;
		width: 100%;
		min-height: calc(100vh - 4rem);
		position: relative;
	}
	.lightbox h3{
		width: 100%;
		padding-left: 0;
		margin-bottom: 2.5rem;
		font-size: 2rem;
		line-height: 1.25;
	}
	.lightbox .pic{
		width: calc(100% - 12rem);
		margin: 0 auto 3.5rem;
	}

	.lightbox .txt{
		width: 100%;
	}
	.lightbox p{
		font-size: 1.4rem;
	}
	.lightbox p:not(:last-of-type){
		margin-bottom: 2rem;
	}
	.lightbox mark{
		font-size: 120%;
	}
	.lightbox h4{
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1.25;
		text-indent: -2.2rem;
		padding-left: 2.2rem;
		margin-bottom: 1rem;
	}
	.lightbox h4:before{
		content: "";
		width: 1.8rem;
		height: 1.8rem;
		margin-right: .4rem;
	}
	.at{
		font-size: 3rem;
		left: 2rem;
		top: .5rem;
	}
	.lightbox .pager{
		font-size: 1.6rem;
		margin-top: 3.5rem;
	}

	.lightbox .prev{
		margin-right: 3rem;
	}
	.lightbox .next{
		margin-left: 3rem;
	}
	.close-btn{
		width: 3rem;
		right: 1rem;
		top: 1rem;
	}
	.close-btn img{
		display: block;
		width: 100%;
	}

/* +++.large-pic+++ */
	.large-pic{
		height: calc(100vw / 16 * 9 + 12rem);
	}

/* +++#vocie+++ */

	#voice .fukidashi{
		margin: 0 auto 2rem;
		width: 100%;
	}

	#voice ul{
		margin-top: 4rem;
		display: block;
	}
	#voice li{
		width: 100%;
	}
	#voice li:not(:last-of-type){
		margin-bottom: 4rem;
	}

	.voice-head .pic{
		right: -1.5rem;
		width: 12rem;
	}

	#voice li h3{
		font-size: 1.8rem;
	}


/* +++#course+++ */

	#course h2{
		margin-bottom: 4rem;
	}
	.tab-list li{
		width: calc(50% - .5rem);
		height: 5rem;
		font-size: 1.6rem;
	}

	.tab-list li.active:before{
		height: .4rem;
	}
	.tab-content .inner:after{
		border-top: 1rem solid #0062B2;
		border-left: 1.166rem solid transparent;
		border-right: 1.166rem solid transparent;

	}
	.tab-content01 .inner:after{
		left: -1.166rem;
		transform: translateX(calc((50vw - 2rem) / 2));
	}
	.tab-content02 .inner:after{
		right: -1.166rem;
		transform: translateX(calc((50vw - 2rem) / -2));;
	}

	.tab-content .inner{
		padding-top: 3.5rem;
		padding-bottom: 5rem;
	}

	.tab-content-head{
		display: block;
		margin-bottom: 2.5rem;
	}
	.tab-content-head ul{
		width: 100%;
		margin-top: 2rem;
		justify-content: flex-start;
	}
	.tab-content-head li{
		height: 3rem;
		border-radius: 1.5rem;
		padding: 0 1rem;
		font-size: 1.4rem;
	}
	.tab-content-head li:not(:last-of-type){
		margin-right: 1rem;
	}
	.tab-content01 .desc{
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.tab-content .desc .txt{
		width: 100%;
		margin-bottom: 1.5rem;
	}
	.tab-content .desc p:not(:last-of-type){
		margin-bottom: 2rem;
	}
	.tab-content .desc .pic{
		width: 100%;
	}
	.feature-list{
		margin-top: 4rem;
		display: block;
	}
	.feature-list li{
		align-items: center;
		margin-top: 1.5rem;
		width: 100%;
		min-height: auto;
	}
	.feature-list .txt{
		padding: 2rem 0 2rem 2rem;
		width: calc(100% - 12rem);
	}
	.feature-list .pic{
		width: 12rem;
	}
	.feature-list h4{
		font-size: 1.8rem;
		margin-bottom: 1.2rem;
		line-height: 1.333;
	}
	.feature-list p{
		font-size: 1.4rem;
	}
	.time-table-area{
		margin-top: 5rem;
	}
	.time-table-area p{
		font-weight: 700;
		margin: 1.5rem 0 2rem;
		line-height: 1.75;
		font-size: 1.4rem;
	}

	.time-table table,
	.time-table tbody{
		display: flex;
		width: 100%;
	}
	.time-table tr{
		display: block;
		width: 50%;
	}

	.time-table th{
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 0;
		height: 5rem;
		border-left: .1rem solid #fff;
	}
	.time-table th:nth-of-type(1){
		border-top: .1rem solid #fff;
	}
	.time-table td:nth-of-type(1){
		border-top: .1rem solid #ccc;
	}
	.time-table th:not(:last-of-type){
		border-right: none;
		border-bottom: .1rem solid #fff;
	}
	.time-table td{
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 0;
		height: 5rem;
		font-size: 1.8rem;
	}
	.tab-content02 .desc{
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.tab-content02 .desc .pic{
		margin-top: 3rem;
	}
	.tab-content .fukidashi-ttl{
		width: 32rem;
		height: 4rem;
		font-size: 1.6rem;
		top: -2rem;
	}
	.tab-content02 .time-table-area p{
		margin: 0;
	}
	.time-table-area .cap-list{
		margin: 1.5rem 0;
	}
	.time-table-area .sec-ttl02{
		margin-bottom: 3rem;
	}


/* ++++++++++#price++++++++++ */
	.list-outline{
		max-width: 100%;
		margin: 4rem auto 2rem;
		padding-left: 2rem;
		padding-right: 2rem;
	}
	.price-table-area{
		display: block;
	}
	.price-info{
		width: 100%;
	}
	.price-table{
		width: 100%;
		height: 7rem;
		background: #fff;
	}
	.price-table dt{
		width: 35%;
	}
	.price-table dd{
		width: 65%;
	}
	.benefits{
		margin-top: .5rem;
		margin-bottom: 4rem;
		font-size: 1.6rem;
	}
	.discount-area{
		margin-top: 3.5rem;
		margin-bottom: 5rem;
		background: linear-gradient(180deg, #F0F9F8 0%, #F0F9F8 calc(100% - 7rem), #fff calc(100% - 7rem), #fff 100%);
		padding-top: 4rem;
	}
	.discount-area>.flex{
		display: block;
	}
	.discount-area .fukidashi-ttl{
		width: 25rem;
		height: 4rem;
		margin: 0 auto -2rem;
		font-size: 1.6rem;
	}
	.discount{
		width: 100%;
	}
	.discount:not(:last-of-type){
		margin-bottom: 4rem;
	}
	.discount .flex .txt{
		width: 55%;
		padding: 3rem 0 1rem;
	}
	.discount .flex .pic{
		width: 45%;
	}
	.discount-form{
		padding: 3rem 2rem;
	}
	.discount-form h4{
		color: #0062B2;
		font-size: 1.7rem;
		margin-bottom: 1.5rem;
	}
	.discount-form p{
		line-height: 1.5;
		margin-bottom: 2rem;
	}
	.discount-form ul{
		display: block;
	}
	.discount-form li:not(:last-of-type){
		margin-bottom: 2rem;
	}
	.discount-form label{
		justify-content: flex-start;
	}
	.check-outer{
		width: 2rem;
		height: 2rem;
		margin-right: .8rem;
	}
	.discount-form span{
		width: 9rem;
		height: 2.4rem;
		border-radius: 1.2rem;
		border-radius: 1.2rem;
		margin-left: 1rem;
	}
	.price-table02{
		margin-top: 2.5rem;
	}
	.price-table02 td,
	.price-table02 th{
		padding: 1.2rem 0;
		font-size: 1.4rem;
		line-height: 1.5;
	}

	.price-table02 .bg-blue th{
		padding: 1.2rem 0;
	}
	.price-table02 .bg-blue th:not(:last-of-type){
		border: none;
		border-right: .1rem solid #fff;
	}
	.price-table02 .en{
		font-size: 125%;
		margin-right: .2rem;
		font-weight: 500;
	}
	.price-table02 td{
		font-weight: 500;
		text-align: center;
		padding-right: 0;
	}
	.tab-content01 .price-table02 td{
		padding-right: 0rem;
	}
	
	.price-detail .sec-ttl02{
		margin-top: 4rem;
	}

	.price-detail ul{
		padding: 2rem 2rem 0;
		margin-top: 2rem;
		align-items: center;
		flex-wrap: wrap;
	}
	.price-detail li{
		flex-wrap: wrap;
		padding-bottom: 2rem;
		margin-right: 0 !important;
	}
	.price-detail li img{
		margin-left: 1em;
		padding-top: 1rem;
		width: 15rem;
		max-width:100%;
	}
	.price-detail .txt-blue{
		line-height: 1.5;
	}
	.price-detail .btn01{
		width: 24rem;
		margin: 3rem auto 0;
	}


/* ++++#high-school++++ */
	#high-school .sec-ttl01{
		margin-bottom: 3.5rem;
	}
	#high-school .content01{
		/* background: linear-gradient(90deg, #FAFAFA 0%, #FAFAFA 73.611%, #fff 73.611%, #fff 100%); */
		padding-top: 4rem;
	}
	#high-school .content01::before {
		width:73.611%;
		height:48.6%;
	}

	#high-school .content01 .desc{
		display: block;
		margin-bottom: 0;
		margin-bottom: 2rem;
	}
	#high-school .content01 .pic{
		width: calc(100% - 8rem);
		margin: 0 auto 1.5rem;
	}
	#high-school .content01 .txt{
		width: 100%;
		margin-left: 0;
	}
	/* ここから html 削除したコード */
	#high-school .content01 ul{
		transform: translateY(4rem);
		font-size: 1.6rem;
		display: block;
		margin-top: -2.5rem;
	}
	#high-school .content01 li{
		width: 100%;
		height: 10.3rem;
		padding-left: 6.6rem;
		margin-top: 2rem;
		display: flex;
		align-items: flex-end;
		transform: translateX(-1rem);
	}
	#high-school .content01 li:before{
		width: 6.6rem;
		height: 11.5rem;
	}
/* ここまで削除したコード */

/* 2025.12.12 追加コード */
.clipboard-wrap {
	max-width:100%;
	margin:0 auto;
}

.clipboard {
	width:100%;
	max-width:100%;
	margin-top:3rem;
	border-radius: 0.4rem;
	padding:0.6rem;
}

.clipboard::before {
	width:7.8rem;
	height:5rem;
	top:-1.8rem;
}

.clipborad-inner {
	border-radius: 0.2rem;
	padding:4.5rem 1.5rem 2rem;
}

.clipboard h4 {
	font-size:1.8rem;
	margin-bottom:1em;
}

	#high-school .content02{
		/* margin-top: 10rem; */
		margin-top: 4rem;
		position:relative;
		padding-bottom:6rem;
		background:linear-gradient(180deg, #fff 0%, #fff 19%, #F2FAFF 19%, #F2FAFF 100% );
	}
	.support{
		display: block;
	}
	.support-list{
		width: 100%;
		padding-right: 0;
		flex-wrap:wrap;
	}
	.support-list:before{
		width: 18rem;
		height: 28.3rem;
		background-repeat: no-repeat;
		right: -3rem;
		/* bottom: 3rem; */
		bottom:19rem;
		left:auto;
		top:auto;
	}

.support-list .price-table-wrap {
	width:100%;
	max-width:100%;
	order:1;
	margin-bottom:4rem;
}

	.support-list ul{
		width:100%;
		max-width:100%;
		line-height: 1.75;
		margin-bottom: 2rem;
	}
	.support-list li{
		position: relative;
		padding-left: 2.8rem;
	}
	.support-list li:not(:last-of-type){
		margin-bottom: 1.5rem;
	}
	.support-list li:before{
		top: 0;
	}
.support-list li span {
	font-size:1.3rem;
	margin-top:0em;
	max-width:18rem;
}

	.line-pic{
		width: 100%;
	}
	.line-pic .fukidashi-ttl{
		width: 32rem;
		margin: 4rem auto 2rem;
	}
	#high-school .btn01{
		margin: 0.5rem auto 0;
		width: 24rem;
	}

.high-school-option-wrap {
	flex-wrap:wrap;
}

.high-school-option {
	width:100%;
	max-width:100%;
	margin-bottom:2.5rem;
}

.high-school-option .pic {
	width:54%;
}

.high-school-option .txt {
	width: 46%;
	padding:4rem 0rem 2rem;
}

.high-school-option .txt h4 {
	min-height:auto;
}

.high-school-option .txt h4 mark {
	font-size:1.8rem;
}

.high-school-option .txt h4 span {
	font-size:1.3rem;
}

.high-school-option .txt .base-price {
	width:11rem;
	height:2.8rem;
	line-height:2.8rem;
	margin:1.5rem auto 2.5rem;
	font-size:1.5rem;
	border-radius: 1.5rem;
}

.high-school-option .txt .base-price::after {
	font-size:2rem;
	bottom:-2.5rem;
}

.high-school-option .txt .option-price {
	font-size:1.5rem;
}

.high-school-option .txt .option-price span {
	font-size:3rem;
}

.high-school-option .fukidashi-ttl {
	width: 25rem;
	height:4rem;
	margin: 0 auto -2rem;
	font-size: 1.6rem;
}

.high-school-option .fukidashi-ttl span {
	font-size:3.2rem;
}

/* ++++#open++++ */

	#open .content01{
		padding-top: 4rem;
	}
	#open .sec-ttl02{
		margin-bottom: 2rem;
	}

	.business-hour table,
	.business-hour tbody{
		display: flex;
		width: 100%;
	}
	.business-hour tr{
		display: block;
	}
	.business-hour tr:nth-of-type(1){
		width: 40%;
	}
	.business-hour tr:nth-of-type(2){
		width: 60%;
	}
	.business-hour th{
		with: 100%;
		height: 9rem;
		padding: 1.2rem 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.business-hour th:not(:last-of-type){
		border-right: none;
		border-bottom: .1rem solid #fff;
	}
	.business-hour td{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 100%;
		text-align: center;
		padding: 1.2rem 0;
		border: .1rem solid #ccc;
		border-left: none;
		border-top: none;
		height: 9rem;
	}
	.business-hour td:nth-of-type(1){
		border-top: .1rem solid #ccc;
	}
	.business-hour td span{
		display: block;
	}
	.hour{
		font-size: 1.8rem;
		margin-bottom: 1rem;
	}
	.kakko{
		width: 12rem;
	}
	#open .caption{
		padding-left: 1em;
		text-indent: -1em;
		margin-top: 1rem;
		margin-bottom: 4rem;
		line-height: 1.5;
		font-size: 1.6rem;
	}

	#open .content02{
		padding-bottom: 6rem;
	}
	#open .content02>.flex{
		display: block;
	}
	#open .content02 dl{
		width: 100%;
	}
	#open .content02 dl:not(:last-of-type){
		margin-bottom: 2rem;
	}
	#open .content02 dt{
		height: 5rem;
	}
	#open .content02 dd{
		height: 6rem;
	}
	#open .content02 .btn01{
		width: 24rem;
		margin: 4rem auto 0;
	}


/* ++++#access++++ */
	#access{
		padding-bottom: 6rem;
		padding-left: 2rem;
		padding-right: 2rem;
	}
	#access .content01{
		display: block;
		margin-bottom: 4rem;
	}
	#access .content01 .pic{
		width: 100%;
		margin-top: 3rem;
	}
	#access .content01 .txt{
		width: 100%;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
	#access .sec-ttl01{
		margin-bottom: 2rem;
	}
	#access .sec-ttl01:before{
		margin-bottom: -2.8rem;
		transform: translateX(-2rem);
	}
	.access{
		font-size: 1.8rem;
	}
	.map-btn{
		margin: 1.5rem 0 2.5rem;
		font-size: 1.3rem;
	}
	.map-btn:before{
		width: 1.3rem;
		height: 1.3rem;
		margin-right: .4rem;
	}
	.access-desc{
		margin-bottom: 1.5rem;
	}
	#access .content02{
		padding: 0;
	}

	#access .content02 .inner{
		background: #fff;
		box-shadow: .2rem .2rem 2rem 0px rgba(0, 0, 0, 0.10);
		padding: 0 2rem 2rem;
	}
	#access .content02 .fukidashi-ttl{
		margin: 0 auto;
		transform: translateY(-2rem);
		width: 26rem;
	}
	#access .content02 p{
		line-height: 1.5;
		margin: 0 0 2rem;
	}
	.figure-head .pic{
		height: 2rem;
	}
	.vertical{
		width: 5rem;
		border-radius: 2.5rem;
		font-size: 1.6rem;
	}

	.school-list dt span{
		width: 7rem;
		padding: .8rem 0;
		border-radius: 2rem;
		background: #FFF1D5;
		margin: .6rem 0;
		line-height: 1.25;
	}
	.school-list dt{
		padding-right: 1.5rem;
	}
	.school-list dd{
		padding: 1rem 0;
		width: 4rem;
		margin-right: 1.5rem;
	}

	.transpotation-figure{
		max-width: 100%;
	}
	.transpotation-figure dl{
		font-size: 1.4rem;
		width: 100%;
	}

	.transpotation-figure dl:before{
		width: 100%;
	}
	.pad65 dd{
		padding-top: 1.5rem;
		padding-bottom: 6rem;
	}
	.transpotation-figure dl.pad65:before{
		bottom: auto;
		top: 2.2rem;
	}
	.figure-head{
		padding-bottom: 1rem;
	}
	.figure-head:before{
		content: "";
		display: block;
		width: 7rem;
		margin-right: 1.5rem;
	}
	.figure-head .pic{
		width: 4rem;
		margin-right: 1.5rem;
	}
}