@charset "utf-8";

/*
============================================================
　冬期講座　PC設定
============================================================
*/

body{
	background-color:#ffe200;
}

i.eiken_r{
	font-style:normal;
	font-size:40%;
	vertical-align: top;
}

h3 i.eiken_r{line-height: 1.4em;}

/* ---------------------------------------------------------
■ 準備中
--------------------------------------------------------- */

body.before{display: flex;flex-direction: column;min-height: 100vh;}
body.before main{flex: 1;}
body.before main{background-color:rgba(255,255,255,.3);}

.preparation_mv{
	display:flex;flex-wrap:wrap;justify-content:center;
	background-color:rgba(255,255,255,.3);
	width:100%;
	font-size:90px;
	padding:170px 0;
}

.preparation_mv > div{
	margin:auto 0;
	font-family:lineseed,sans-serif;
	color:#003685;
	font-weight:900;
	width:100%;
	line-height:1.2em;
}

.preparation_mv > div div:nth-child(1){font-size:.8em;line-height:1.2em;}
.preparation_mv > div div:nth-child(2){font-size:1.6em;padding-top:.2em;}

.preparation_text{
	font-family:lineseed,sans-serif;
	padding: 50px 30px;
    font-size: 30px;
    line-height: 1.4em;
    font-weight: 900;
}


/* ---------------------------------------------------------
■ MV
--------------------------------------------------------- */

.mv_box{}
.mv_box h1{line-height:0;}


/* ---------------------------------------------------------
■ 選択ボタン
--------------------------------------------------------- */
.select_area{
	position:relative;
	background-color:#fff;
}

.select_area::before{
	position: absolute;
	z-index:-1;
	content:"";
	width:120vw;
	height:20vw;
	left:50%;
	bottom:-5vw;
	background-color:#fff;
	transform:translateX(-50%);
	border-radius:50%;
}

.select_box{
	padding:60px 30px 10px;
}


.select_text{
	color:#333;
	font-family:lineseed,sans-serif;
	font-size:18px;
	font-weight:700;
	letter-spacing: 0.08em;
	padding-bottom:25px;
}

.select_list ul{
	margin:auto;
	max-width:1000px;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
	justify-content: center;
}

.select_list ul li{
	width:calc((100% - 60px)/ 4);
}

.select_list ul li a{
	position:relative;
	display:flex;
	flex-wrap:wrap;
	width:100%;
	height:100%;
	color:#fff;
	font-family:lineseed,sans-serif;
	font-size:33px;
	font-weight:900;
	letter-spacing:.05em;
	padding:25px 0 35px;
	background-color:#34abcb;
	border-radius:20px;
	text-shadow: 1px 1px 3px rgba(25,50,89,.55);
	filter: drop-shadow(0 0 2px rgba(25,50,89,.55));
	border:#34abcb 4px solid;
	transition: .2s;
}

.select_list ul li a span{display:block;width:100%;line-height:1.2em;}
.select_list ul li a span.min{font-size:80%;}
.select_list ul li a span i{font-size:80%;font-style:normal;}
.select_list ul li a span i.big{font-size:130%;}
.select_list ul li a span:nth-child(1){margin-top:auto;}
.select_list ul li a span:nth-child(2){}
.select_list ul li a span:last-child{margin-bottom:auto;}

.select_list ul li a::after{
	content:"";
	position:absolute;
	left:50%;
	bottom:10px;
	width:30px;
	height:14px;
	background-color:#fff;
	clip-path: polygon(50% 100%, 0% 0%, 100% 0%);
	transform:translateX(-50%);
	filter: drop-shadow(1px 1px 2px rgba(25,50,89,.55));
	transition: .2s;
}

@media screen and (min-width:768px) {
	.select_list ul li a:hover{
		background-color:rgba(255,255,255,0);
		color:#34abcb;
		text-shadow: 1px 1px 3px rgba(25,50,89,0);
		filter: drop-shadow(0 0 2px rgba(25,50,89,0));
	}
	.select_list ul li a:hover::after{
		background-color:#34abcb;
		filter: drop-shadow(1px 1px 2px rgba(25,50,89,0));
	}
}



/* ---------------------------------------------------------
■ コース
--------------------------------------------------------- */

.course{
}

.course_area{
	overflow:hidden;
}

.course_box{
	margin: auto;
	max-width:1400px;
	padding:60px 30px 0;
}

.course_wrap{
	max-width:1400px;
	margin:0 -100px 0 auto;
	padding:80px 0;
}

.course_wrap.rtl{margin:0 auto 0 -100px;}

.course_flex{
	display:flex;
	flex-wrap:wrap;
	background-color:#fff;
	border-radius:30px;
	padding:40px 60px 40px 0;
 filter: drop-shadow(0 0 6px rgba(25,50,89,.55));
}
.rtl .course_flex{flex-direction:row-reverse;padding:40px 0 40px 60px;}

.course_textbox{
 width:55%;
 display:flex;
 flex-wrap: wrap;
 flex-direction: column;
}
.course_imgbox{width:45%}

.course_linkbox{width:100%;}


.course_h2box{
	position:relative;
 margin: 0;
	line-height:0;
	margin-left:-20px;
	border-radius:0 20px 20px 0;
}
.course_textbox h2{
	position:relative;
	z-index: 2;
	padding:13px 40px;
}
.course_h2box span{
	position: absolute;
	display: block;
	z-index: -1;
	width:100%;
	height:100%;
	border-radius:0 20px 20px 0;
	top:8px;
	left:8px;
}
.course_h2box::after{
	content:"";
	position: absolute;
	bottom:-20px;
	left: 0;
	width:20px;
    height:20px;
	clip-path: polygon(0% 0%, 100% 100%, 100% 0%);
}

.rtl .course_h2box{margin-left:auto;margin-right:-20px;border-radius:20px 0 0 20px;}
.rtl .course_h2box span{border-radius:20px 0 0 20px;left:auto;right:8px;}
.rtl .course_h2box::after{left:auto;right:0;clip-path: polygon(0% 0%, 0% 100%, 100% 0%);}

#chu3 .course_h2box{background-color:#004098;width:86%;padding:1.6em 0;}
#chu3 .course_h2box span,#chu3 .course_h2box::after{background-color:#2D3057;}
#chu3 .course_h2box h2 img{width:100%;}
#chu12 .course_h2box{background-color:#2eb6aa;width:86%;padding:.5em 0;}
#chu12 .course_h2box span,#chu12 .course_h2box::after{background-color:#21867D;}
#chu12 .course_h2box h2 img{width:58%;}
#eljr .course_h2box{background-color:#6fba2c;width:86%;padding:.3em 0;}
#eljr .course_h2box span,#eljr .course_h2box::after{background-color:#538725;}
#eljr .course_h2box h2 img{width:76%;}
#sanasta .course_h2box{background-color:#ec6d74;width:86%;padding:.3em 0;}
#sanasta .course_h2box span,#sanasta .course_h2box::after{background-color:#B7575C;}
#sanasta .course_h2box h2 img{width:100%;}
#chuju .course_h2box{background-color:#9b6cac;width:86%;padding:.7em 0;}
#chuju .course_h2box span,#chuju .course_h2box::after{background-color:#7B5788;}
#chuju .course_h2box h2 img{width:100%;}
#kobetsu .course_h2box{background-color:#f0831e;width:86%;padding:.3em 0;}
#kobetsu .course_h2box span,#kobetsu .course_h2box::after{background-color:#AA621F;}
#kobetsu .course_h2box h2 img{width:100%;}
#hi .course_h2box{background-color:#0063b2;width:86%;padding:.3em 0;}
#hi .course_h2box span,#hi .course_h2box::after{background-color:#184D78;}
#hi .course_h2box h2 img{width:100%;}




.course_main{
 width:86%;
 padding: 30px 30px 0 50px;
}
.rtl .course_main{
 margin: 0 0 0 auto;
 padding: 30px 40px 0 30px;
}

.course_main h3{
	text-align: left;
	color: #222;
    font-family: lineseed, sans-serif;
    font-size: 28px;
	line-height:1.4em;
    font-weight:900;
}

.course_text p{
	text-align:justify;
}

.course_linkbox{
 margin: auto 0 0;
	display:flex;
	flex-wrap:wrap;
 flex-grow: 1;
	justify-content:center;
	gap:10px 20px;
	padding:40px 20px 20px;
}

.course_linkbox a{
 margin: auto 0 0;
	position:relative;
	width:max(fit-content,40%);
	padding:6px 3em;
	color:#fff;
	font-family:lineseed,sans-serif;
	font-size:30px;
	font-weight:600;
	border-radius:3em;
	filter: drop-shadow(0 0 3px rgba(0,0,0,.45));
}

.course_linkbox a::after{
 content:"";
 position:absolute;
 top:50%;
 left:50%;
 transform: translateX(-50%) translateY(-50%);
 height:calc(100% - 14px);
 width:calc(100% - 14px);
 background:rgba(255,255,255,0);
 border:#fff 2px solid;
 border-radius:3rem;
 transition:.2s;
}

#chu3 .course_linkbox a{background-color:#004098;}
#chu12 .course_linkbox a{background-color:#2eb6aa;}
#eljr .course_linkbox a{background-color:#6fba2c;}
#sanasta .course_linkbox a{background-color:#ec6d74;}
#chuju .course_linkbox a{background-color:#9b6cac;}
#kobetsu .course_linkbox a{background-color:#f0831e;}
#hi .course_linkbox a{background-color:#0063b2;}

#hi .course_linkbox a.gray{background-color:#999;pointer-events:none;}

@media screen and (min-width:768px) {
	.course_linkbox a:hover{
		transform: translateY(3px);
		filter: drop-shadow(0 0 0 rgba(150,120,100,0));
	}
	.course_linkbox a:hover::after{height:100%;width:100%;}	
}

.course_link_note{
	width:100%;
	font-family:lineseed,sans-serif;
	text-align:center;font-weight:900;font-size:23px;
}


/* ---------------------------------------------------------
■ バナーエリア
--------------------------------------------------------- */

.bunner_box{
	padding:60px 20px;
}
.bunner_box a{
	display:block;
	margin: auto;
	max-width:960px;
	line-height: 0;
}

/* ---------------------------------------------------------
■ ボタンエリア
--------------------------------------------------------- */

.bottom_box{
 padding:60px 20px;
}
.bottom_button{
 margin: auto;
 max-width:900px;
 display:flex;
 flex-wrap: wrap;
 gap:25px;
}
.bottom_button a{
 position:relative;
 display:flex;
 flex-wrap: wrap;
 justify-content: center;
	width:100%;
	padding:.45em 0;
	color:#fff;
	font-family:lineseed,sans-serif;
	font-size:60px;
	font-weight:900;
	border-radius:3em;
	filter: drop-shadow(0 0 3px rgba(0,0,0,.45));
}
.bottom_button a::after{
 content:"";
 position:absolute;
 top:50%;
 left:50%;
 transform: translateX(-50%) translateY(-50%);
 height:calc(100% - 19px);
 width:calc(100% - 19px);
 background:rgba(255,255,255,0);
 border:#fff 3px solid;
 border-radius:5em;
 transition:.2s;
}
.bottom_button a span{display:block;margin:auto 0;}

.bottom_button a.win{background-color:#004098;}
.bottom_button a.win span:nth-child(1){padding:0 .3em 0 0;}
.bottom_button a.win span:nth-child(2){}
.bottom_button a.win span:nth-child(3){padding:.25em 0 0;font-size:80%;letter-spacing:-.1em;}

.bottom_button a.new{background-color:#c30d23;}
.bottom_button a.new span:nth-child(1){font-family:"M PLUS Rounded 1c",sans-serif;font-weight:500;font-size:75%;letter-spacing:-.05em;padding-right:1em;}
.bottom_button a.new span:nth-child(2){}
.bottom_button a.new span:nth-child(3){}

@media screen and (min-width:768px) {
	.bottom_button a:hover{transform: translateY(3px);filter: drop-shadow(0 0 0 rgba(150,120,100,0));}
	.bottom_button a:hover::after{height:100%;width:100%;border-color:rgba(255,255,255,0);}
}



.winter_bk{
 width:100%;
 height:500px;
 background-image: url("../images/bk_bottom.webp");
 background-size: 100%;
 background-repeat: no-repeat;
 background-position:center top;
}
@media screen and (max-width: 1200px) {
 .winter_bk{height:auto;aspect-ratio:16/6;}
}