@charset "utf-8";
/* CSS Document */
@import url("reset.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600;800&family=Noto+Sans+TC:wght@400;600;800&display=swap');

/*html{
	scroll-behavior:smooth;
}*/

body{
	font-family:'Noto Sans JP','Noto Sans TC',sans-serif;
	font-size:16px;
	color:#333333;
	-webkit-text-size-adjust:none;
	image-rendering:-webkit-optimize-contrast;
}

.webout{
	max-width:2000px;
	margin:0 auto;
	position:relative;
}

article{
	overflow:clip;
}

.out{
	padding:0 20px;
	margin:0 auto;
	position:relative;
}

input, select, textarea{
	font-family:'Noto Sans JP','Noto Sans TC',sans-serif;
}

/*HOME-----------------------------------------*/

/*HOME_S1-----------------*/
.home .s1 img{
	width:100%;
}

.home .s1 .pc{
	position:relative;
	top:-55px;
	opacity:0.7;
	border-radius:0 0 40px 40px;
	transition:0.5s;
}

.home .s1 .mb{
	display:none;
}

.home .s1 .is-visible img{
	top:0;
	opacity:1;
}

.home .splide__pagination{
	bottom:-50px;
}

.home .splide__pagination__page{
	background:#BDBDAE;
	width:12px;
	height:12px;
	border-radius:9px;
	opacity:1;
	transition:0.2s;
}

.home .splide__pagination__page.is-active{
	background:#52332C;
	transform:none;
	width:40px;
}

/*HOME_S2-----------------*/
.home .title,
.course .title{
	text-align:center;
}

.home .title h5,
.course .title h5{
	font-size:35px;
	font-weight:600;
	display:flex;
	justify-content:center;
}

.home .title h5 span,
.course .title h5 span{
	border-style:solid;
	border-color:#F6D993;
	border-width:1px 0 1px 1px;
	padding:5px 5px 8px 5px;
}

.home .title h5 span:last-child,
.course .title h5 span:last-child{
	border-width:1px;
}

.home .title h6,
.self .list_in h5,
.course .title h6{
	position:relative;
	display:inline-block;
	color:#0059B2;
	font-weight:400;
	margin-top:13px;
}

.home .title h6:before,
.home .title h6:after,
.self .list_in h5:before,
.self .list_in h5:after,
.course .title h6:before,
.course .title h6:after{
	content:"";
	position:absolute;
	top:50%;
	width:40px;
	height:1px;
	background:#0059B2;
}

.home .title h6:before,
.self .list_in h5:before,
.course .title h6:before{
	left:-50px;
}

.home .title h6:after,
.self .list_in h5:after,
.course .title h6:after{
	right:-50px;
}

.home .s2{
	padding:100px 0;
}

.home .s2 .out{
	max-width:1300px;
}

.home .s2 .more{
	position:absolute;
	top:30px;
	right:20px;
	display:block;
	width:140px;
	color:#52332C;
	line-height:40px;
	text-align:center;
	border:#A89995 1px solid;
	border-radius:30px;
	transition:0.2s;
}

.home .s2 .more:hover{
	width:160px;
}

.home .s2 .more:before{
	content:"";
	position:absolute;
	top:50%;
	right:15px;
	width:8px;
	height:8px;
	border-style:solid;
	border-color:#52332C;
	border-width:2px 2px 0 0;
	transform:rotate(45deg);
	margin-top:-4px;
}

.home .s2 .more:after{
	content:"";
	position:absolute;
	top:50%;
	right:15px;
	width:15px;
	height:2px;
	background:#52332C;
}

.home .s2 .splide{
	margin:45px 0;
	padding:0 100px;
}

.home .s2 .splide__slide a,
.news .list a{
	position:relative;
	display:block;
	padding:25px 35px;
	color:#333333;
	transition:0.2s;
}

.home .s2 .splide__slide a:hover,
.news .list a:hover{
	background:#F4F4F4;
}

.home .s2 .splide__slide a:before,
.news .list a:before{
	content:"";
	position:absolute;
	top:25px;
	bottom:25px;
	left:0;
	width:1px;
	background:#DDDDDD;
	transition:0.2s;
}

.home .s2 .splide__slide a:hover:before,
.news .list a:hover:before{
	top:0px;
	bottom:0px;
	width:3px;
	background:#0059B2;
}

.home .s2 .splide__slide a:after,
.news .list a:after{
	content:"";
	position:absolute;
	top:53px;
	left:0;
	height:23px;
	width:17px;
	background:#0059B2;
}

.home .s2 .splide__slide div,
.news .list a div{
	color:#777777;
}

.home .s2 .splide__slide h6,
.news .list a h6{
	font-size:23px;
	line-height:1.5em;
	height:1.5em;
	font-weight:600;
	margin:5px 0 15px;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
	overflow:hidden;
}

.home .s2 .splide__slide p,
.news .list a p{
	font-size:18px;
	line-height:1.6em;
	height:4.8em;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:3;
	-webkit-box-orient:vertical;
	transition:0.2s;
}

.home .s2 .splide__slide a:hover p,
.news .list a:hover p{
	color:#0059B2;
}

.home .s2 .splide__arrow,
.page_number a,
.news .s1 .right .back,
.life .view .right .back{
	width:50px;
	height:50px;
	border-radius:15px;
	background:#F5EFED;
	margin-top:-25px;
	opacity:1;
	transform:rotate(45deg);
	transition:background 0.2s;
}

.home .s2 .splide__arrow:hover,
.page_number a:hover,
.news .s1 .right .back:hover,
.life .view .right .back:hover{
	background:#B88D81;
}

.home .s2 .splide__arrow svg{
	display:none;
}

.home .s2 .splide__arrow:before,
.page_number a:before,
.news .s1 .right .back:before,
.life .view .right .back:before{
	content:"";
	position:absolute;
	top:15px;
	width:12px;
	height:12px;
	border-style:solid;
	border-color:#8D6554;
	transition:0.2s;
}

.home .s2 .splide__arrow:hover:before,
.page_number a:hover:before,
.news .s1 .right .back:hover:before,
.life .view .right .back:hover:before{
	border-color:#FFFFFF;
}

.home .s2 .splide__arrow--prev{
	left:5px;
}

.home .s2 .splide__arrow--prev:before,
.page_number li.page_prev a:before,
.news .s1 .right .back:before,
.life .view .right .back:before{
	left:18px;
	border-width:0 0 5px 5px;
	border-radius:0 0 0 4px;
}

.home .s2 .splide__arrow--next{
	right:5px;
}

.home .s2 .splide__arrow--next:before,
.page_number li.page_next a:before{
	top:18px;
	left:15px;
	border-width:5px 5px 0 0;
	border-radius:0 4px 0 0;
}

.home .s2 .splide__arrow:disabled{
	opacity:0.5;
	pointer-events:none;
}

/*HOME_S3-----------------*/

/*HOME_S3_TOP*/
.home .s3 .top{
	position:relative;
	height:207px;
	background:url("../images/home_s3_bg.jpg") top center no-repeat;
}

.home .s3 .top:after{
	content:"";
	position:absolute;
	left:0;
	bottom:-20px;
	width:100%;
	height:20px;
	background:url("../images/home_s3_shadow.png");
}

.home .s3 .top img{
	position:absolute;
	left:50%;
	bottom:0;
	height:240px;
	margin-left:-360px;
}

.home .s3 .title{
	padding-top:60px;
	color:#FFFFFF;
}

.home .s3 .title h6{
	color:#FFFFFF;
}

.home .s3 h6:before,
.home .s3 h6:after{
	background:#C6B2AA;
}

/*HOME_S3_BOTTOM*/
.home .s3 .bm{
	background:url("../images/home_s3_bg2.jpg") top center no-repeat;
	background-size:cover;
	padding-bottom:170px;
}

.home .s3 .bm .out{
	max-width:1100px;
	top:-40px;
}

.home .s3 .bm li,
.life .s1 .list li,
.self .list_in .bm li{
	margin-bottom:30px;
}

.home .s3 .bm li a,
.life .s1 .list a,
.self .list_in .bm a,
.more_info .box{
	display:flex;
	align-items:center;
	background:#FFFFFF;
	border:#FFFFFF 3px solid;
	border-radius:10px;
	box-shadow:3px 3px #D1CEC2;
	padding:20px;
	transition:0.2s;
}

.home .s3 .bm li a:hover,
.life .s1 .list a:hover,
.self .list_in .bm a:hover,
.more_info a:hover .box{
	border:#E18F35 3px solid;
}

.home .s3 .bm img,
.life .s1 .list img,
.self .list_in .bm img,
.more_info .box img{
	min-width:170px;
	width:170px;
	height:170px;
	border:#DDDDDD 1px solid;
	border-radius:15px;
	margin:0 60px 0 40px;
	transition:0.2s;
}

.home .s3 .bm a:hover img,
.life .s1 a:hover img,
.self .list_in .bm a:hover img{
	transform:translateY(-30px) scale(1.11);
	box-shadow:3px 3px rgba(157,177,202,0.6);
}

.home .s3 .bm .text,
.life .s1 .list .text,
.self .list_in .bm .text{
	width:100%;
	margin-right:40px;
}

.home .s3 .bm h6,
.life .s1 .list h6,
.self .list_in .bm h6,
.result .s1 h6{
	font-size:22px;
	line-height:1.5em;
	height:1.5em;
	font-weight:normal;
	color:#2476D0;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
}

.home .s3 .bm p,
.life .s1 .list p,
.self .list_in .bm p,
.result .s1 p,
.more_info h6{
	font-size:18px;
	color:#222222;
	line-height:1.7em;
	height:3.4em;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	margin:0.5em 0;
}

.home .s3 .text div,
.life .s1 .text div,
.self .list_in .text div,
.result .s1 a div{
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.home .s3 .bm li .date,
.life .s1 .list .date,
.self .list_in .date,
.result .s1 .date{
	font-size:15px;
	color:#666666;
}

.home .s3 .bm li .in,
.life .s1 .list .in,
.self .list_in .in,
.result .s1 .in{
	position:relative;
	right:-40px;
	display:inline-block;
	width:130px;
	font-size:15px;
	color:#333333;
	line-height:35px;
	background:#EEEEEE;
	text-align:center;
	border-radius:20px;
	border:#EEEEEE 1px solid;
	transition:0.2s;
}

.home .s3 .bm li a:hover .in,
.life .s1 .list a:hover .in,
.self .list_in .bm a:hover .in,
.result .s1 a:hover .in{
	width:150px;
	background:#FFEFBF;
	border:#EAD191 1px solid;
	color:#1E63AE;
}

.home .s3 .bm li .in:after,
.life .s1 .list .in:after,
.self .list_in .in:after,
.result .s1 .in:after{
	content:"";
	position:absolute;
	top:50%;
	right:20px;
	width:5px;
	height:5px;
	border-style:solid;
	border-color:#929292;
	border-width:2px 2px 0 0;
	transform:rotate(45deg);
	margin-top:-3px;
	transition:0.2s;
}

.home .s3 .bm li a:hover .in:after,
.life .s1 .list a:hover .in:after,
.self .list_in .bm a:hover .in:after,
.result .s1 a:hover .in:after{
	border-color:#1E63AE;
}

.home .s3 .bm .more{
	display:block;
	width:260px;
	font-size:18px;
	color:#2E80DB;
	line-height:50px;
	margin:0 auto;
	background:#FFFFFF;
	text-align:center;
	border-radius:30px;
	box-shadow:2px 2px 2px rgba(0,0,0,0.2);
	transition:0.2s;
}

.home .s3 .bm .more:hover{
	width:280px;
}

.home .s3 .bm .more span{
	position:relative;
}

.home .s3 .bm .more span:before,
.home .s3 .bm .more span:after{
	content:"";
	position:absolute;
	top:50%;
	width:40px;
	height:1px;
	background:#CBBCB3;
}

.home .s3 .bm .more span:before{
	left:-55px;
}

.home .s3 .bm .more span:after{
	right:-55px;
}

/*HOME_S4-----------------*/
.home .s4{
	border-top:#CDD9E5 5px solid;
	background:#F3F3F3 url("../images/home_s4.png") repeat-x;
}

/*HOME_S4_TITLE*/
.home .s4 .title,
.course .s2 .title div{
	position:relative;
	max-width:890px;
	margin:-95px auto 0;
	background:url("../images/home_s4_top.png");
	border:40px solid transparent;
	border-image:url("../images/home_s4_top2.png");
	border-radius:10px;
	box-shadow:3px 3px #C0CFE3;
}

.home .s4 .title:before,
.course .s2 .title:before{
	content:"";
	position:absolute;
	left:50%;
	bottom:-54px;
	width:30px;
	height:30px;
	background:url("../images/home_s4_top.png");
	transform:rotate(45deg);
	box-shadow:3px 0 0 0 #C0CFE3;
	margin-left:-12px;
}

.home .s4 h5{
	position:relative;
	display:inline-flex;
	color:#FFD24D;
}

.home .s4 h5:before{
	content:"";
	position:absolute;
	top:-15px;
	left:-35px;
	width:20px;
	height:34px;
	background:url("../images/home_s4_top3.png") no-repeat;
	background-size:cover;
}

.home .s4 h5:after{
	content:"";
	position:absolute;
	top:-6px;
	right:-36px;
	width:20px;
	height:27px;
	background:url("../images/home_s4_top4.png") no-repeat;
	background-size:cover;
}

.home .s4 h6{
	color:#FFFFFF;
}

.home .s4 h6:before,
.home .s4 h6:after{
	background:#8EAFD7;
}

/*HOME_S4_BOTTOM*/
.home .s4 .bm{
	padding:80px 0 30px;
}

.home .s4 .bm .out{
	max-width:1350px;
}

.home .s4 .bm ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:0 -20px;
}

.home .s4 .bm li{
	max-width:278px;
	margin-bottom:50px;
	text-align:center;
}

.home .s4 .bm a{
	display:block;
	margin:0 20px;
}

.home .s4 .bm img{
	width:100%;
}

.home .s4 .bm a div{
	position:relative;
	background:#FFFFFF;
	border:40px solid transparent;
	border-image:url("../images/home_s4_bm.png");
	box-shadow:0 0 0 3px #69BFE1, 3px 3px 0 3px #CACACA;
	border-radius:10px;
	transition:0.2s;
}

.home .s4 .bm a:hover div{
	box-shadow:0 0 0 3px #317DB7, 3px 3px 0 3px #CACACA;
	transform:scale(1.1);
}

.home .s4 .bm li:nth-child(2) a div{
	box-shadow:0 0 0 3px #DA7661, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm li:nth-child(2) a:hover div{
	box-shadow:0 0 0 3px #A8372B, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm li:nth-child(3) a div{
	box-shadow:0 0 0 3px #AECF66, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm li:nth-child(3) a:hover div{
	box-shadow:0 0 0 3px #669630, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm li:nth-child(4) a div{
	box-shadow:0 0 0 3px #BEA46B, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm li:nth-child(4) a:hover div{
	box-shadow:0 0 0 3px #7B5A32, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm li:nth-child(5) a div{
	box-shadow:0 0 0 3px #66C3C9, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm li:nth-child(5) a:hover div{
	box-shadow:0 0 0 3px #148D9E, 3px 3px 0 3px #CACACA;
}

.home .s4 .bm a div:before,
.home .s4 .bm a div:after{
	content:"";
	position:absolute;
	left:-5px;
	right:-5px;
	height:1px;
	background:#FFFFFF;
	transition:0.2s;
}

.home .s4 .bm a div:before{
	top:-20px;
}

.home .s4 .bm a div:after{
	bottom:-20px;
}

.home .s4 .bm a:hover div:before,
.home .s4 .bm a:hover div:after{
	background:#317DB7;
}

.home .s4 .bm li:nth-child(2) a:hover div:before,
.home .s4 .bm li:nth-child(2) a:hover div:after,
.home .s4 .bm li:nth-child(2) span{
	background:#A8372B;
}

.home .s4 .bm li:nth-child(3) a:hover div:before,
.home .s4 .bm li:nth-child(3) a:hover div:after,
.home .s4 .bm li:nth-child(3) span{
	background:#669630;
}

.home .s4 .bm li:nth-child(4) a:hover div:before,
.home .s4 .bm li:nth-child(4) a:hover div:after,
.home .s4 .bm li:nth-child(4) span{
	background:#7B5A32;
}

.home .s4 .bm li:nth-child(5) a:hover div:before,
.home .s4 .bm li:nth-child(5) a:hover div:after,
.home .s4 .bm li:nth-child(5) span{
	background:#148D9E;
}

.home .s4 .bm span{
	position:relative;
	top:0;
	display:block;
	width:150px;
	color:#FFFFFF;
	line-height:45px;
	text-align:center;
	background:#317DB7;
	border-radius:30px;
	margin:15px auto 0;
	transition:0.2s;
}

.home .s4 .bm a:hover span{
	width:200px;
	top:-10px;
}

.home .s4 .bm span:after{
	content:"";
	position:absolute;
	top:50%;
	right:15px;
	width:6px;
	height:6px;
	border-style:solid;
	border-color:#FFFFFF;
	border-width:4px 4px 0 0;
	transform:rotate(45deg);
	margin-top:-5px;
}

@media only screen and (max-width:1450px){
    .home .s4 .bm .out{
        max-width:1000px;
    }
}

@media only screen and (max-width:480px){
    .home .s4 h5{
        font-size:7.3vw;
		margin:0 -40px;
    }
	
	.home .s4 h5:before,
	.home .s4 h5:after,
	.home .s4 h6:before,
	.home .s4 h6:after{
		display:none;
	}
}

/*HOME_S5-----------------*/
.home .s5{
	padding:100px 0;
}

.home .s5 .out{
	max-width:1500px;
}

.home .s5 .bm{
	height:677px;
	background:url("../images/home_s5.jpg") top center no-repeat;
	border-radius:50px;
	margin-top:35px;
	padding:0 20px;
	display:flex;
	align-items:center;
}

.home .s5 .text{
	box-sizing:border-box;
	width:100%;
	max-width:1370px;
	margin:0 auto;
}

.home .s5 .text h6{
	font-size:36px;
	color:#0059B2;
	font-weight:600;
	line-height:1.2em;
	text-indent:-0.5em;
	padding-right:43%;
}

.home .s5 .text p{
	max-width:22em;
	font-size:18px;
	font-weight:600;
	line-height:1.5em;
	margin:1.5em 0 2.5em;
}

.home .s5 .text ul{
	list-style:disc;
	margin-left:1.5em;
}

.home .s5 .text li::marker{
	color:#4C89C5;
}

.home .s5 .text li{
	font-size:18px;
	line-height:1.5em;
	margin-bottom:0.5em;
	padding-right:63%;
}

.home .s5 .text a{
	position:relative;
	display:block;
	width:155px;
	color:#0059B2;
	line-height:45px;
	text-align:center;
	background:#FFFFFF;
	border-radius:30px;
	box-shadow:2px 2px 2px rgba(0,0,0,0.1);
	margin-top:2em;
	transition:width 0.2s;
}

.home .s5 .text a:hover{
	width:175px;
}

.home .s5 .text a:after{
	content:"";
	position:absolute;
	top:50%;
	right:20px;
	width:5px;
	height:5px;
	border-style:solid;
	border-color:#BBBBBB;
	border-width:2px 2px 0 0;
	transform:rotate(45deg);
	margin-top:-3px;
	transition:0.2s;
}

.home .s5 .bm .mb{
	display:none;
}

/*TEACHER-----------------------------------------*/
.teacher .page_bn,
.teacher .page_bn h6{
	background-image:url("../images/pagein_bg_teacher.png");
}

.teacher .area .out{
	max-width:1070px;
}

/*TEACHER_S1-----------------*/
.teacher .s1 .box{
	display:flex;
	max-width:920px;
	margin:30px auto 0;
	background:#FFFFFF;
	border:40px solid transparent;
	border-image:url("../images/teacher_icon.png");
	box-shadow:0 0 0 2px #D96D00, 2px 2px 0 2px #E5E5E5;
	border-radius:10px;
}

.teacher .s1 h5{
	position:relative;
	font-size:35px;
	font-weight:600;
	margin:-1.5em 0 0 1em;
}

.teacher .s1 h5 span{
	display:inline-block;
	border-style:solid;
	border-color:#DC7814;
	border-width:1px;
	padding:5px 5px 8px 5px;
	background:#FFFFFF;
}

.teacher .s1 h5 .t1 span:last-child{
	border-width:0 0 1px 1px;
}

.teacher .s1 h5 .t2{
	margin:-50px 0 0 46px;
}

.teacher .s1 h5 .t2 span:last-child{
	border-width:0 1px 1px 1px;
}

.teacher .s1 p{
	font-size:18px;
	line-height:1.8em;
	margin:0 1em 0 1.5em;
}

/*TEACHER_S2-----------------*/
.teacher .s2 .out{
	max-width:1100px;
}

.teacher .s2 .list{
	position:relative;
	display:flex;
	align-items:flex-start;
	padding:60px 0;
	border-bottom:#D96D00 1px solid;
}

.teacher .s2 .list:last-child{
	border-bottom:none;
}

.teacher .s2 .list:after{
	content:"";
	position:absolute;
	left:0;
	bottom:-1px;
	width:260px;
	height:1px;
	background:#5694D8;
	border-right:#FFFFFF 6px solid;
}

.teacher .s2 .list:last-child:after{
	display:none;
}

.teacher .s2 img{
	width:260px;
	min-width:260px;
	border-radius:150px;
}

.teacher .s2 .text{
	padding-left:55px;
	text-align:left;
	animation-delay:0.3s;
}

.teacher .s2 h6{
	font-size:26px;
	font-weight:normal;
	padding:1em 0;
}

.teacher .s2 .more{
	position:relative;
	width:150px;
	background:#F1F1F1;
	color:#1E63AE;
	text-align:center;
	line-height:40px;
	cursor:pointer;
	border-radius:30px;
	margin:30px 0;
	transition:0.2s;
}

.teacher .s2 .more:hover{
	width:170px;
}

.teacher .s2 .more:after{
	content:"";
	position:absolute;
	top:50%;
	right:13px;
	width:14px;
	height:1px;
	background:#1E63AE;
}

.teacher .s2 .more:before{
	content:"";
	position:absolute;
	top:50%;
	right:19px;
	width:1px;
	height:14px;
	background:#1E63AE;
	margin-top:-6px;
}

.teacher .s2 .more.active:before{
	display:none;
}

.teacher .s2 .more + .edit{
	display:none;
}

.teacher .s2 .edit{
	font-size:18px;
	line-height:1.6em;
}

.teacher .s2 .edit ul{
	list-style:disc;
	margin-left:1.5em;
}

.teacher .s2 .edit li{
	margin-bottom:0.5em;
}

.teacher .s2 .edit li::marker{
	color:#4C89C5;
}

/*COURSE-----------------------------------------*/
.course .page_bn,
.course .page_bn h6{
	background-image:url("../images/pagein_bg_course.png");
}

.course .out{
	max-width:1150px;
}

/*COURSE_S1-----------------*/
.course .s1{
	padding:50px 0 90px;
}

.course .s1 .title h5{
	color:#C96310;
}

.course .s1 .title h5 span{
	border-color:#DDDDDD;
}

.course .s1 .title h6:before,
.course .s1 .title h6:after{
	background:#DDDDDD;
}

.course .s1 ul{
	display:flex;
	margin:0 -5px;
}

.course .s1 li{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	width:25%;
	height:130px;
	font-size:20px;
	line-height:1.6em;
	color:#FFFFFF;
	text-align:center;
	background:#775D46;
	margin:40px 5px 0;
	padding-top:10px;
	border-radius:10px 10px 60px 10px;
}

.course .s1 li:nth-child(even){
	background:#8F6F56;
}

.course .s1 li:before{
	content:"";
	position:absolute;
	top:25px;
	left:25px;
	right:50px;
	height:1px;
	background:rgba(255,255,255,0.2);
}

.course .s1 li:after{
	content:"";
	position:absolute;
	top:18px;
	right:21px;
	width:25px;
	height:14px;
	background:url("../images/course_s1.png") no-repeat;
	background-size:100% auto;
}

.course .s1 li span{
	font-family:'Oswald', sans-serif;
	position:absolute;
	left:10px;
	bottom:0;
	font-size:60px;
	line-height:1em;
	font-style:italic;
	opacity:0.1;
}

@media only screen and (max-width:470px){
    .teacher .s2 .list,
	.teacher .s2 h6{
		text-align:center;
    }
	
    .course .s1 .title h5{
		font-size:7.5vw;
    }
}

/*COURSE_S2-----------------*/
.course .s2{
	padding:55px 0 90px;
	background:url("../images/course_s2_bg.png") top center;
}

.course .s2 .out{
	max-width:1300px;
}

/*COURSE_S2_TITLE*/
.course .s2 .title{
	position:relative;
}

.course .s2 .title div{
	color:#FFD24D;
	max-width:450px;
	margin:15px auto 0;
	border:25px solid transparent;
	border-image:url("../images/home_s4_top2.png");
}

.course .s2 .title span{
	margin:-10px 0;
}

.course .s2 .title:before{
	bottom:-10px;
	z-index:1;
	width:20px;
	height:20px;
	margin-left:-10px;
}

.course .s2 h5:before,
.course .s2 h5:after{
	content:"";
	position:absolute;
	top:3px;
	left:50%;
	height:20px;
	background-size:cover;
}

.course .s2 h5:before{
	background-image:url("../images/course_s2_top1.png");
	width:26px;
	margin-left:-127px;
}

.course .s2 h5:after{
	background-image:url("../images/course_s2_top2.png");
	width:24px;
	margin-left:102px;
}

/*COURSE_S2_LIST*/
.course .s2 li{
	position:relative;
	margin-top:100px;
}

.course .s2 li .bookmark{
	position:absolute;
	top:-200px;
}

.course .s2 .top{
	background:#FFFFFF;
	padding:15px 15px 15px 225px;
	border-radius:15px 15px 0 0;
	border-style:solid;
	border-width:0 0 1px;
	border-color:#71A5CD;
}

.course .s2 li:nth-child(2) .top{
	border-color:#C59792;
}

.course .s2 li:nth-child(3) .top{
	border-color:#B3CA97;
}

.course .s2 li:nth-child(4) .top{
	border-color:#B3CA97;
}

.course .s2 .top img{
	width:100%;
	max-width:355px;
}

.course .s2 .box{
	display:flex;
	flex-wrap:wrap;
	margin:25px -1% 0;
}

.course .s2 .box a{
	position:relative;
	top:0;
	width:31.33%;
	margin:0 1% 30px;
	color:#1F1F1F;
	background:#FFFFFF;
	box-shadow:4px 4px #D4CFC1;
	border-radius:10px;
	padding-bottom:75px;
	transition:top 0.2s;
}

.course .s2 .box a:hover{
	top:-10px;
}

.course .s2 .box a:before{
	content:"";
	width:200px;
	height:200px;
	position:absolute;
	left:0;
	bottom:100%;
	background-repeat:no-repeat;
	background-size:cover;
	margin-bottom:-26px;
	pointer-events:none;
	transition:0.2s;
}

.course .s2 li:nth-child(1) a:first-child:before{
	background-image:url("../images/home_s4_img1.png");
}

.course .s2 li:nth-child(2) a:first-child:before{
	background-image:url("../images/home_s4_img2.png");
}

.course .s2 li:nth-child(3) a:first-child:before{
	background-image:url("../images/home_s4_img3.png");
}

.course .s2 li:nth-child(4) a:first-child:before{
	background-image:url("../images/home_s4_img4.png");
}

.course .s2 li:nth-child(5) a:first-child:before{
	background-image:url("../images/home_s4_img5.png");
}

.course .s2 .box a:hover:before{
	margin-bottom:-36px;
}

.course .s2 .box h6{
	position:relative;
	z-index:1;
	font-size:24px;
	font-weight:600;
	line-height:60px;
	height:60px;
	color:#FFFFFF;
	text-align:center;
	background-color:#3588C6;
	background-repeat:no-repeat;
	background-size:13px;
	background-position:10px 10px, right 10px top 10px;
	background-image:url("../images/course_s2_icon.png"), url("../images/course_s2_icon.png");
	border-radius:10px 10px 0 0;
	padding:0 1em;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
	overflow:hidden;
}

.course .s2 li:nth-child(2) .box h6{
	background-color:#A8372B;
}

.course .s2 li:nth-child(3) .box h6{
	background-color:#689630;
}

.course .s2 li:nth-child(4) .box h6{
	background-color:#7C5B32;
}

.course .s2 li:nth-child(5) .box h6{
	background-color:#148D9E;
}

.course .s2 .box h6 span{
	position:relative;
}

.course .s2 .box h6 span:before,
.course .s2 .box h6 span:after{
	content:"";
	position:absolute;
	top:50%;
	width:36px;
	height:1px;
	background:#FFFFFF;
	border-bottom:#000000 1px solid;
	opacity:0.2;
}

.course .s2 .box h6 span:before{
	left:-50px;
}

.course .s2 .box h6 span:after{
	right:-50px;
}

.course .s2 .box p{
	font-size:18px;
	color:#1F1F1F;
	line-height:1.7em;
	padding:20px 25px;
}

.course .s2 .box div{
	position:absolute;
	left:25px;
	bottom:25px;
	width:180px;
	font-size:15px;
	line-height:50px;
	background:#EEEEEE;
	padding-right:30px;
	text-align:center;
	border-radius:30px;
	transition:0.2s;
}

.course .s2 .box a:hover div{
	width:195px;
}

.course .s2 .box div:before{
	content:"";
	position:absolute;
	top:50%;
	right:10px;
	width:28px;
	height:28px;
	background:#FFFFFF;
	border-radius:50%;
	margin-top:-14px;
}

.course .s2 .box div:after{
	content:"";
	position:absolute;
	top:50%;
	right:19px;
    border-style:solid;
    border-width:4px 0 4px 8px;
    border-color:transparent transparent transparent #3688C6;
	margin-top:-4px;
}

/*COURSE_S3-----------------*/
.course .s3{
	padding:90px 0;
}

/*COURSE_S3_TOP*/
.course .s3 .top{
	display:flex;
	margin:55px 0;
}

.course .s3 .top li{
	width:50%;
	margin:0 20px;
}

.course .s3 .top h6,
.course .s3 .bm h6{
	position:relative;
	font-size:24px;
	line-height:32px;
	font-weight:600;
	text-align:left;
	padding-left:40px;
	margin-bottom:8px;
}

.course .s3 h6 img{
	position:absolute;
	top:0;
	left:0;
	height:32px;
}

.course .s3 .top a img{
	width:100%;
	border:#DDDDDD 1px solid;
	border-radius:10px;
}

.course .s3 ul.top .t1{
	font-size:15px;
	color:#333333;
	line-height:50px;
	height:50px;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
	overflow:hidden;
}


.course .s3 .top .hidden{
	display:none;
}

.course .s3 .top .zoom{
	width:170px;
	color:#333333;
	line-height:50px;
	margin:30px auto 50px;
	text-align:center;
	background:#EEEEEE url("../images/course_s3_zoom.png") left 25px center no-repeat;
	background-size:23px;
	border-radius:30px;
	transition:0.2s;
}

.course .s3 .top a:hover .zoom{
	width:185px;
}

/*COURSE_S3_BOTTOM*/
.course .s3 .bm ul{
	display:flex;
	flex-wrap:wrap;
	margin:0 -10px;
}

.course .s3 .bm .image{
	position:relative;
}

.course .s3 .bm .image:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url("../images/course_s3_bm_icon.png") center no-repeat;
	background-color:rgba(0,0,0,0.2);
	background-size:84px;
	transition:0.2s;
}

.course .s3 .bm a:hover .image:before{
	background-color:rgba(0,0,0,0.4);
}

.course .s3 .bm li img{
	display:block;
	width:100%;
}

.course .s3 .bm li{
	width:33.33%;
	margin-bottom:30px;
}

.course .s3 .bm a{
	display:block;
	margin:0 10px;
}

.course .s3 .bm .t1{
	font-size:18px;
	color:#333333;
	line-height:50px;
	height:50px;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
	overflow:hidden;
}

.course .s3 .bm .t2{
	font-size:14px;
	color:#888888;
}

.course .s3 .bm .t3{
	font-size:15px;
	color:#333333;
	line-height:50px;
	height:50px;
	margin-bottom:20px;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
	overflow:hidden;
}

/*NEWS-----------------------------------------*/
.news .out{
	max-width:1160px;
}

/*NEWS_LIST-----------------*/
.news .list ul{
	display:flex;
	flex-wrap:wrap;
	margin:50px -15px -30px;
}

.news .list li{
	width:33.33%;
	margin-bottom:30px;
}

.news .list li a{
	margin:0 15px;
}

/*NEWS_S1-----------------*/
.news .s1,
.life .view{
	margin:50px 0 80px;
}

.news .s1 .out,
.life .view .out{
	max-width:1050px;
	display:flex;
	justify-content:space-between;
}

/*NEWS_LEFT*/
.news .s1 .left,
.life .view .left{
	width:180px;
	min-width:180px;
}

.news .s1 .left .top{
	display:flex;
	justify-content:space-between;
	background:url("../images/news_in_bg.png") center;
	border-radius:10px 10px 0 0;
}

.news .s1 .top img{
	height:28px
}

.news .s1 .date{
	position:relative;
	padding:20px 20px 30px;
	background:#F4F4F4;
	border-radius:0 0 10px 10px;
	font-size:20px;
	font-weight:600;
}

.news .s1 .date:after,
.life .view .image:after{
	content:"";
	position:absolute;
	left:50%;
	bottom:-185px;
	width:1px;
	height:160px;
	background:#DDDDDD;
}

.news .s1 .date span{
	position:relative;
	display:block;
	font-size:2em;
	padding-top:35px;
}

.news .s1 .date span:before{
	content:"";
	position:absolute;
	left:0;
	top:0px;
	width:1px;
	height:30px;
	background:#0059B2;
	transform:rotate(45deg);
	transform-origin:bottom left;
}

/*NEWS_RIGHT*/
.news .s1 .right,
.life .view .right{
	width:77%;
}

.news .s1 .right img,
.life .view .right img{
	max-width:100%;
	height:auto !important;
	display:block;
	margin:0 auto;
}

.news .s1 .right .back,
.life .view .right .back{
	display:block;
	position:absolute;
	top:380px;
	left:85px;
	margin-top:0;
}

.news .s1 .right .back span,
.life .view .right .back span{
	display:block;
	position:absolute;
	left:27px;
	bottom:-43px;
	color:#222222;
	white-space:nowrap;
	padding:1px 0;
	transform:rotate(-45deg);
	transform-origin:top left;
}

.news .s1 .right h1,
.life .view .right h1{
	position:relative;
	font-size:23px;
	font-weight:600;
	line-height:1.3em;
	padding-bottom:0.8em;
	border-bottom:#DDDDDD 1px solid;
	margin-bottom:1em;
}

.news .s1 .right h1:after,
.life .view .right h1:after{
	content:"";
	position:absolute;
	left:0;
	bottom:-1px;
	width:2em;
	height:1px;
	background:#0059B2;
	border-right:#FFFFFF 2px solid;
}

.news .s1 .right .info,
.life .view .right .info{
	font-size:18px;
	line-height:1.7em;
}

.news .s1 .right .info iframe,
.life .view .right iframe{
	max-width:100%;
	height:auto;
	aspect-ratio:16/9;
}

/*LIFE-----------------------------------------*/
.life .page_bn,
.life .page_bn h6{
	background-image:url("../images/pagein_bg_life.png");
}

.life .area .out{
	max-width:1270px;
}

/*LIFE_S1-----------------*/
.life .s1 .out{
	max-width:1050px;
}

.life .s1 .top{
	display:flex;
	flex-direction:row-reverse;
	align-items:center;
	padding-left:65px;
	max-width:780px;
}

.life .s1 .top img{
	width:212px;
	min-width:212px;
	margin-right:-50px;
}

.life .s1 .top p,
.self .list .top{
	font-size:18px;
	line-height:1.7em;
	text-align:center;
	background:url("../images/life_top.png") bottom center no-repeat;
	background-size:auto 15px;
	padding-bottom:40px;
}

.life .s1 .list li:last-child{
	margin-bottom:0;
}

.life .s1 .list a,
.self .list_in .bm a,
.more_info .box{
	box-shadow:0 0 0 1px #D8C5A5;
}

.life .s1 .list a:hover,
.self .list_in .bm a:hover,
.more_info a:hover .box{
	border:#E18F35 3px solid;
	box-shadow:3px 3px #D1CEC2;
}

/*LIFE_VIEW-----------------*/
.life .view .left .image{
	position:relative;
}

.life .view .left .image img{
	width:100%;
	border:#DDDDDD 1px solid;
	border-radius:15px;
}

.life .view .right h1:after{
	background:#B37A26;
}

.life .view .date{
	font-size:18px;
	color:#666666;
	border-top:#DDDDDD 1px solid;
	padding-top:1em;
	margin-top:1em;
}

.more_info{
	display:flex;
	margin:50px -7px 3px;
}

.more_info li{
	width:50%;
}

.more_info a{
	display:block;
	margin:0 7px;
}

.more_info .top{
	position:relative;
	color:#333333;
	padding:0 20px 20px;
}

.more_info .top:before{
	content:"";
	position:absolute;
	top:4px;
	width:7px;
	height:7px;
	border-style:solid;
	border-color:#AAAAAA;
	transform:rotate(45deg);
	transition:0.2s;
}

.more_info a:hover .top:before{
	border-color:#1E63AE;
}

.more_info .prev .top:before{
	left:0;
	border-width:0 0 2px 2px;
}

.more_info .next .top{
	text-align:right;
}

.more_info .next .top:before{
	right:0;
	border-width:2px 2px 0 0;
}

.more_info .box{
	position:relative;
}

.more_info .box img{
	min-width:80px;
	width:80px;
	height:80px;
	box-shadow:2px 2px rgba(157,177,202,0.6);
	border-radius:10px;
	margin:0 20px 0 0 !important;
}

.more_info h6{
	color:#2476D0;
	font-weight:normal;
	line-height:1.4em;
	height:2.8em;
}

.more_info .text span{
	position:absolute;
	right:10px;
	bottom:10px;
	display:block;
	width:35px;
	height:15px;
	border:#DDDDDD 1px solid;
	border-radius:20px;
	transition:0.2s;
}

.more_info a:hover .text span{
	width:40px;
	border:#EAD191 1px solid;
	background:#FFEFBF;
}

.more_info .text span:after{
	content:"";
	position:absolute;
	right:10px;
	top:60%;
	width:15px;
	height:1px;
	background:#898989;
	transition:0.2s;
}

.more_info .text span:before{
	content:"";
	position:absolute;
	right:10px;
	top:60%;
	width:7px;
	height:1px;
	background:#898989;
	transform:rotate(45deg);
	transform-origin:right bottom;
	transition:0.2s;
}

.more_info a:hover .text span:after,
.more_info a:hover .text span:before{
	right:12px;
}

/*SELF-----------------------------------------*/
.self .page_bn,
.self .page_bn h6{
	background-image:url("../images/pagein_bg_self.png");
}

.self .out{
	max-width:1250px;
}

/*SELF_LIST-----------------*/
.self .list .top{
	max-width:470px;
	padding:50px 0 40px;
	margin:0 auto;
}

.self .list ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:0 -20px 50px;
}

.self .list li{
	position:relative;
	width:100%;
	max-width:360px;
	margin-top:50px;
}

.self .list li:first-child:before{
	content:"";
	position:absolute;
	left:22%;
	bottom:100%;
	width:220px;
	height:220px;
	background:url("../images/self_img.png") no-repeat;
	background-size:cover;
}

.self .list a{
	position:relative;
	top:0;
	display:block;
	border:#D96D00 3px solid;
	box-shadow:3px 3px #D9D9D9;
	border-radius:15px;
	margin:0 20px;
	transition:0.2s;
}

.self .list a:hover{
	top:-10px;
}

.self .list a:before,
.self .list a:after{
	content:"";
	position:absolute;
	top:-12px;
	width:17px;
	height:36px;
	background:url("../images/self_icon.png") no-repeat;
	background-size:cover;
}

.self .list a:before{
	left:20px;
}

.self .list a:after{
	right:20px;
}

.self .list a h6{
	font-size:26px;
	font-weight:600;
	color:#1D5596;
	background:#F4F4F4;
	border-radius:15px 15px 0 0;
	padding:35px 20px 20px;
	white-space:nowrap;
	text-overflow:ellipsis;
	overflow:hidden;
}

.self .list a p{
	font-size:18px;
	line-height:1.6em;
	color:#202020;
	height:6.4em;
	margin:20px;
	display:-webkit-box;
	-webkit-line-clamp:4;
	-webkit-box-orient:vertical;
	overflow:hidden;
}

.self .list a div{
	position:relative;
	width:110px;
	padding-right:20px;
	line-height:40px;
	color:#202020;
	text-align:center;
	background:#EEEEEE;
	margin:0 0 23px 23px;
	border-radius:30px;
	transition:0.2s;
}

.self .list a:hover div{
	width:120px;
	color:#FFFFFF;
	background:#70A5D7;
}

.self .list a div:after{
	content:"";
	position:absolute;
	top:50%;
	right:15px;
	width:18px;
	height:18px;
	background:url("../images/self_icon2.png") no-repeat;
	background-size:18px auto;
	margin-top:-9px;
}

.self .list a:hover div:after{
	background-position:bottom;
}

@media only screen and (max-width:1100px){
	.self .list .out{
		max-width:1000px;
	}
	
    .self .list ul{
        margin:200px -20px 50px;
    }
}

/*SELF_LIST_IN-----------------*/
.self .list_in .top{
	position:relative;
	text-align:center;
	margin:50px 0;
}

.self .list_in h4{
	font-size:33px;
	color:#C96310;
	font-weight:600;
	letter-spacing:3px;
	padding-bottom:5px;
}

.self .list_in .other{
	position:absolute;
	top:0;
	right:0;
	z-index:9;
	width:200px;
	font-size:18px;
}

.self .list_in .other div{
	position:relative;
	padding:13px;
	background:#F4F4F4;
	cursor:pointer;
	border-bottom:#FFFFFF 2px solid;
	transition:0.2s;
}

.self .list_in .other div:hover,
.self .list_in .other div.active{
	color:#0059B2;
}

.self .list_in .other div:after{
	content:"";
	position:absolute;
	top:50%;
	right:12px;
	width:6px;
	height:6px;
	border-style:solid;
	border-color:#C96310;
	border-width:0 2px 2px 0;
	transform:rotate(45deg);
	margin-top:-4px;
}

.self .list_in .other div.active:after{
	border-color:#2476D0;
}

.self .list_in .other ul{
	display:none;
	position:absolute;
	width:100%;
	background:#F4F4F4;
	box-shadow:0 2px 2px rgba(0,0,0,0.1);
}

.self .list_in .other li a{
	display:block;
	color:#212121;
	padding:13px 0;
	border-bottom:#E9E6E4 1px solid;
	margin:0 13px;
	transition:0.2s;
}

.self .list_in .other li a:hover{
	color:#0059B2;
	border-bottom:#0059B2 1px solid;
}

.self .list_in .other li:last-child a{
	border-bottom:none;
}

.self .list_in .bm ul{
	max-width:1050px;
	margin:50px auto 0;
}

.self .list_in .bm li:last-child{
	margin-bottom:0;
}

/*RESULT-----------------------------------------*/
.result .out{
	max-width:1200px;
}

.result .page_bn,
.result .page_bn h6{
	background-image:url("../images/pagein_bg_result.png");
}

/*RESULT_S1-----------------*/
.result .s1 .out{
	max-width:1050px;
}

.result .s1 .top{
	font-size:18px;
	padding:50px 0 20px;
}

.result .s1 .top span{
	color:#2476D0;
}

.result .s1 a{
	display:block;
	padding:30px 0;
	border-bottom:#D8C5A5 1px solid;
	transition:0.2s;
}

.result .s1 a:hover{
	border-bottom:#2476D0 1px solid;
}

.result .s1 .in{
	right:0;
}

/*COMMON--------------------------------------------------------------------*/

/*HEADER-----------------------------------------*/
header{
	position:sticky;
	top:0;
	left:0;
	z-index:1000;
	background:#FFFFFF;
	box-shadow:0px 2px 2px rgba(0,0,0,0.1);
}

header .out,
footer .bm .out{
	max-width:1300px;
}

header .logo{
	position:absolute;
	top:50%;
	left:20px;
	display:block;
	width:60%;
	max-width:260px;
	transform:translateY(-50%);
	transition:0.2s;
}

header .logo img{
	width:100%;
}

/*HEADER_MENU-----------------*/
header .pc .menu{
	max-width:600px;
	display:flex;
	justify-content:space-between;
	font-size:18px;
	padding:55px 230px 0 280px;
	margin:0 auto;
}

header .pc .menu ul{
	position:absolute;
	left:50%;
	background:#5C4036;
	transform:translateX(-50%) scaleY(0);
	transform-origin:top;
	border-radius:0 0 10px 10px;
	padding:10px;
	transition:0.2s;
}

header .pc .menu .list:hover ul{
	transform:translateX(-50%) scaleY(1);
}

header .pc .menu ul a{
	display:block;
	font-size:16px;
	color:#FFFFFF;
	padding:1em;
	text-align:center;
	white-space:nowrap;
	margin:0 10px;
	border-bottom:#7E685F 1px solid;
	transition:0.2s;
}

header .pc .menu ul a:hover{
	border-bottom:#D96D00 1px solid;
}

header .pc .menu ul li:last-child a{
	border-bottom:none;
}

header .pc .list{
	position:relative;
	cursor:pointer;
}

header .pc .list > a,
header .pc .list div{
	position:relative;
	top:0;
	display:block;
	color:#000000;
	padding-bottom:35px;
	cursor:pointer;
	transition:0.2s;
}

header .pc .list:hover > a,
header .pc .list:hover div{
	top:-5px;
}

header .pc .list div{
	padding-right:20px;
}

header .list div:before{
	content:"";
	position:absolute;
	top:3px;
	right:0;
	width:6px;
	height:6px;
	border-style:solid;
	border-color:#5C4036;
	border-width:0 3px 3px 0;
	transform:rotate(45deg);
	transition:0.2s;
}

header .list:hover div:before,
header .list div.active:before{
	border-color:#D96D00;
}

header .pc .list > a:after,
header .pc .list div:after{
	content:"";
	position:absolute;
	top:30px;
	left:1em;
	height:2px;
	width:0;
	background:#D96D00;
	transition:0.2s;
}

header .pc .list:hover > a:after,
header .pc .list:hover div:after{
	width:40px;
}

header .pc .search{
	position:absolute;
	top:45px;
	right:20px;
}

header .search{
	display:flex;
}

header .search input[type="text"]{
	width:165px;
	height:40px;
	font-size:16px;
	padding:0 1em;
	background:#EEEEEE;
	border:none;
	box-sizing:border-box;
	border-radius:30px 0 0 30px;
	transition:0.2s;
}

header .pc .search input[type="text"]:focus{
	width:180px;
}

header .search input[type="submit"]{
	width:40px;
	height:40px;
	border:none;
	background:#5C4036 url("../images/icon_zoom.png") center no-repeat;
	background-size:16px;
	border-radius:0 30px 30px 0;
	cursor:pointer;
}

header .mb,
header .mb_bt{
	display:none;
}

/*AREA-----------------------------------------*/
.area{
	padding:1em 0;
}

.area .out{
	display:flex;
	justify-content:flex-end;
}

.area a{
	color:#888888;
	transition:0.2s;
}

.area a:hover{
	color:#333333;
}

.area li{
	position:relative;
	padding-right:25px;
}

.area li:last-child{
	padding-right:0;
}

.area li:after{
	content:"";
	position:absolute;
	top:2px;
	right:12px;
	width:1px;
	height:1em;
	background:#888888;
	transform:rotate(40deg);
}

.area li:last-child:after{
	display:none;
}

/*PAGE_BN-----------------------------------------*/
.page_bn{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	height:170px;
	background-image:url("../images/pagein_bg.png");
	background-position:top center;
	background-repeat:no-repeat;
}

.page_bn:after{
	content:"";
	position:absolute;
	top:75px;
	left:0;
	width:100%;
	height:40px;
	background:url("../images/pagein_icon.png") top center no-repeat;
	background-size:auto 40px;
}

.page_bn h2{
	font-size:36px;
	font-weight:600;
	color:#000000;
}

.page_bn h6{
	position:relative;
	z-index:1;
	font-size:18px;
	color:#2476D0;
	font-weight:normal;
	margin-top:1em;
	padding:0 10px;
	background-image:url("../images/pagein_bg.png");
	background-position:top -103px center;
	background-repeat:no-repeat;
}

/*PAGE_NUMBER-----------------------------------------*/
.page_number{
	font-family:Arial;
	color:#666666;
	text-align:center;
	padding:50px 0;
}

.page_number ul{
	display:inline-block;
	text-align:center;
	margin:0px auto;
	background:#FFFFFF;
	overflow:hidden;
}

.page_number li{
	display:inline-block;
}

.page_number li select{
	cursor:pointer;
	padding:0px 5px;
}

.page_number li.page_select{
	padding:0px 20px 0 10px;
	position:relative;
}

.page_number li.page_select .select_box{
	display:inline-block;
	position:relative;
}

.page_number li.page_select .select_box:after{
	content:"";
	position:absolute;
	left:50%;
	bottom:0;
	border-style:solid;
	border-width:6px 3px 0 3px;
	border-color:#8D6554 transparent transparent transparent;
	transform:translateX(-50%);
	margin-left:1px;
	transition:0.2s;
}

.page_number a{
	display:inline-block;
	vertical-align:middle;
	transform:rotate(45deg) scale(0.7);
	margin-top:0;
}

.page_number li select{
	border:none;
	font-family:Arial;
	font-size:24px;
	color:#333333;
	font-weight:500;
	border-radius:5px;
	background:none;
	margin-bottom:5px;
	text-align-last:center;
	transition:0.2s;
}

.page_number li .select_box:hover select{
	color:#8D6554;
}

/*ANI-----------------------------------------*/
@keyframes fadeInUp{
    0%{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:none;
    }
}

.fadeInUp{
    animation-name:fadeInUp;
}

.animated{
	animation-duration:0.5s;
	animation-fill-mode:both;
}

/*PAGETOP-----------------------------------------*/
body a.pagetop{
	display:block;
	width:50px;
	height:50px;
	border-radius:50%;
	z-index:500;
	background:#52332C;
	opacity:1;
	position:relative;
	transition:opacity 0.2s;
}

body a.pagetop:hover{
	opacity:0.9 !important;
}

body a.pagetop:after{
	content:"";
	border:solid #F4F4F4;
	border-width:0px 3px 3px 0px;
	padding:6px;
	display:inline-block;
	position:absolute;
	top:55%;
	left:50%;
	transform:rotate(-135deg) translate(-50%,-50%);
	transform-origin:left top;
}

/*FOOTER-----------------------------------------*/

/*FOOTER_TOP-----------------*/
footer .top{
	background:url("../images/footer_bg.png") top center no-repeat;
}

footer .top .out{
	display:flex;
	align-items:center;
	max-width:920px;
	height:404px;
}

footer .top .img{
	width:215px;
	position:absolute;
	left:50px;
	bottom:0;
}

footer .top .box{
	padding-left:300px;
}

footer .top h6{
	font-size:26px;
	font-weight:600;
	line-height:1.2em;
}

footer .top p{
	font-size:20px;
	line-height:1.7em;
	margin:30px 0;
}

footer .top .bt a{
	position:relative;
	display:inline-block;
	width:190px;
	font-size:18px;
	font-weight:600px;
	color:#FFFFFF;
	line-height:50px;
	text-align:center;
	background:#5E4637;
	border-radius:30px;
	transition:0.2s;
}

footer .top .bt a:hover{
	background:#4B382C;
}

/*footer .top li:nth-child(2) a{
	background:#A77743;
}

footer .top li:nth-child(2) a:hover{
	background:#966B3C;
}*/

footer .top .bt a:after{
	content:"";
	position:absolute;
	top:50%;
	right:20px;
	width:5px;
	height:5px;
	border-style:solid;
	border-color:#FFFFFF;
	border-width:2px 2px 0 0;
	transform:rotate(45deg);
	margin-top:-3px;
}

footer .top .follow{
	display:flex;
	align-items:center;
	margin-top:50px;
}

footer .top .follow a{
	margin-left:10px;
	transition:0.2s;
}

footer .top .follow a:hover{
	opacity:0.8;
}

footer .top .follow img{
	width:33px;
}

/*FOOTER_BOTTOM-----------------*/
footer .bm{
	padding:35px 0;
	border-bottom:#C9A374 6px solid;
}

footer .bm .out{
	display:flex;
	justify-content:space-between;
	align-items:center;
}

footer .bm .logo img{
	width:155px;
}

footer .bm .text ul{
	display:flex;
}

footer .bm .text li{
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
	line-height:23px;
	padding-right:40px;
}

footer .bm .text li:last-child{
	padding-right:0;
}

footer .bm .text li:after{
	content:"";
	position:absolute;
	right:17px;
	bottom:6px;
	width:5px;
	height:5px;
	background:#C9A374;
	border-radius:50%;
}

footer .bm .text li:last-child:after{
	display:none;
}

footer .bm .text span{
	color:#5E4637;
	padding-left:15px;
}

footer .bm .text div{
	border-top:#CCCCCC 1px solid;
	padding:1em 0;
	margin-top:1em;
}

footer .bm .year{
	align-self:flex-start;
}

footer .bm a{
	color:#333333;
	transition:0.2s;
}

footer .bm a:hover{
	opacity:0.8;
}

footer .bm a:first-child{
	margin-left:10px;
}

footer .bm img{
	width:23px;
	vertical-align:top;
	margin:0 3px;
}

@media only screen and (max-width:1100px) and (min-width:1001px){
    footer .bm .logo img{
        width:120px;
    }
	
    footer .bm{
		font-size:1.4vw;
    }
}

/*FOOTER_RIGHT-----------------*/
footer .right{
	position:fixed;
	top:50%;
	right:0;
	z-index:9;
	background:#FFFFFF;
	border-style:solid;
	border-color:#896152;
	border-width:2px 0 2px 2px;
	padding:35px 15px 15px;
	box-shadow:3px 3px rgba(0,0,0,0.2);
	border-radius:10px 0 0 10px;
	margin-top:-96px;
}

footer .right:before{
	content:"FOLLOW";
	position:absolute;
	top:-10px;
	left:10px;
	width:50px;
	font-size:10px;
	line-height:30px;
	color:#FFFFFF;
	text-align:center;
	background:#52332C;
	border-radius:5px;
}

footer .right:after{
	content:"";
	position:absolute;
	top:20px;
	left:30px;
    border-style:solid;
    border-width:6px 6px 0 6px;
    border-color:#52332C transparent transparent transparent;
}

footer .right li:nth-child(2){
	margin:8px 0;
}

footer .right img{
	position:relative;
	left:0;
	width:40px;
	transition:0.2s;
}

footer .right img:hover{
	left:-5px;
	opacity:0.8;
}

/*MOBILE----------------------------------------------------------------------------*/
@media only screen and (max-width:1000px){
	
	/*HOME-----------------------------------------*/
	
	/*HOME_S1-----------------*/
	.home .s1 .pc{
		display:none;
    }
	
    .home .s1 .mb{
		display:block;
    }
	
	/*HOME_S2-----------------*/
    .home .s2{
        padding:100px 0 50px;
    }
	
    .home .s2 .splide{
        padding:0;
		margin:20px 0 45px;
    }
	
    .home .s2 .splide__arrow{
		top:auto;
        margin-top:0;
		bottom:-65px;
		transform:rotate(45deg) scale(0.7);
    }
	
    .home .s2 .splide__slide a,
    .news .list a{
        padding:25px;
    }
	
    .home .s2 .more{
        position:relative;
        top:0;
        right:0;
		margin:20px 0 0 auto;
    }
	
	/*HOME_S3-----------------*/
	
	/*HOME_S3_TOP*/
    .home .s3 .top img{
		display:none;
    }
	
	/*HOME_S3_BOTTOM*/
    .home .s3 .bm li a,
	.life .s1 .list a,
	.self .list_in .bm a,
	.result .s1 a{
        display:block;
		text-align:center;
    }
	
    .home .s3 .bm img,
	.life .s1 .list img,
	.self .list_in .bm img{
        margin:0 0 15px;
    }
	
    .home .s3 .bm .text,
    .life .s1 .list .text,
    .self .list_in .bm .text{
        margin-right:0;
    }
	
    .home .s3 .text div,
    .life .s1 .text div,
	.self .list_in .text div,
	.result .s1 a div{
        display:block;
    }

    .home .s3 .bm li .date,
    .life .s1 .list .date,
	.self .list_in .date,
	.result .s1 .date{
		display:block;
		padding:5px 0 20px;
    }
	
    .home .s3 .bm li .in,
    .life .s1 .list .in,
	.self .list_in .in,
	.result .s1 .in{
        position:relative;
		right:0;
    }
	
	/*HOME_S5-----------------*/
    .home .s5{
        padding:60px 0;
    }

    .home .s5 .bm{
		display:block;
        height:auto;
		padding:50px 0 0;
		border-radius:25px;
        background:url("../images/home_s5_bg.png") repeat-y;
		background-size:100% auto;
		overflow:hidden;
    }
	
	.home .s5 .text{
		padding:0 20px;
	}
	
    .home .s5 .text h6,
	.home .s5 .text li{
        padding-right:0;
    }
	
    .home .s5 .text h6{
        font-size:26px;
        line-height:1.4em;
    }
	
    .home .s5 .bm .mb{
        display:block;
		width:100%;
    }
	
	/*TEACHER-----------------------------------------*/
	
	/*TEACHER_S1-----------------*/
    .teacher .s1 .box{
        display:block;
		margin:60px auto 0;
    }
	
    .teacher .s1 h5{
		width:94px;
        margin:-1.5em auto 0;
    }
	
    .teacher .s1 p{
        margin:1em 0 0;
    }
	
	/*TEACHER_S2-----------------*/
    .teacher .s2 .list{
        display:block;
    }
	
    .teacher .s2 .text{
        padding:20px 0 0;
    }
	
	/*COURSE-----------------------------------------*/
    .course .out{
        max-width:500px !important;
    }
	
	/*COURSE_S1-----------------*/
    .course .s1 ul{
		max-width:280px;
		flex-wrap:wrap;
		justify-content:center;
		margin:0 auto;
    }
	
    .course .s1 li{
        width:100%;
		margin:40px 0 0;
    }
	
    .course .s1 li:after{
		top:30px;
		right:30px;
		transform:rotate(90deg);
    }
	
	/*COURSE_S2-----------------*/
    .course .s2{
        padding:55px 0;
    }
	
	/*COURSE_S2_LIST*/
    .course .s2 .top{
        padding:15px;
    }
	
    .course .s2 li{
        margin-top:50px;
    }
	
    .course .s2 .box{
		justify-content:center;
        margin:190px auto 0;
    }
	
    .course .s2 .box a{
        width:100%;
		margin:0 0 40px;
    }
	
    .course .s2 .box a:before{
        left:50%;
		margin-left:-100px;
    }
	
	/*COURSE_S3-----------------*/
    .course .s3{
        padding:60px 0;
    }
	
	/*COURSE_S3_TOP*/
    .course .s3 .top{
		flex-wrap:wrap;
		justify-content:center;
		margin:55px auto;
    }
	
    .course .s3 .top li{
        width:100%;
        margin:0;
    }
	
	/*COURSE_S3_BOTTOM*/
    .course .s3 .bm ul{
		flex-wrap:wrap;
		justify-content:center;
        margin:0 auto;
    }
	
    .course .s3 .bm li{
        width:100%;
		margin-bottom:30px;
    }
	
    .course .s3 .bm a{
        margin:0;
    }
	
	/*NEWS-----------------------------------------*/
	
	/*NEWS_LIST-----------------*/
    .news .list ul{
        display:grid;
		justify-content:center;
		grid-template-columns:repeat(auto-fit,minmax(auto,400px));
		margin:50px -10px -30px;
    }
	
    .news .list li{
        width:auto;
		max-width:400px;
    }
	
    .news .list li a{
        margin:0 10px;
    }
	
	/*NEWS_S1-----------------*/
	.news .s1,
    .life .view{
        margin:50px 0 10px;
    }
	
    .news .s1 .out,
	.life .view .out{
        display:block;
    }
	
	/*NEWS_LEFT*/
    .news .s1 .left,
	.life .view .left{
        width:150px;
        min-width:0;
		margin-bottom:20px;
    }
	
    .news .s1 .date{
        padding:15px;
    }
	
    .news .s1 .date:after,
	.life .view .image:after{
		display:none;
    }
	
    .news .s1 .date span{
        display:inline-block;
        font-size:1em;
        padding-top:0;
    }
	
    .news .s1 .date span:before{
        content:"/";
        position:static;
        width:auto;
        height:auto;
        background:none;
        transform:none;
		padding:0 5px;
    }
	
	/*NEWS_RIGHT*/
    .news .s1 .right,
	.life .view .right{
        width:auto;
		padding-bottom:30px;
    }
	
    .news .s1 .right .back,
	.life .view .right .back{
        position:relative;
        top:0;
        left:0;
        margin:30px auto 0;
    }
	
	/*LIFE-----------------------------------------*/
	
	/*LIFE_S1-----------------*/
    .life .s1 .top{
        display:block;
        padding:50px 0 0;
        max-width:none;
    }
	
    .life .s1 .top img{
		display:block;
        margin:30px auto 0;
    }
	
	/*LIFE_VIEW-----------------*/
    .more_info{
        display:block;
    }
	
    .more_info li{
        width:auto;
		margin-bottom:40px;
    }
	
    .more_info .top{
		display:inline-block;
    }
	
    .more_info .next .top{
        padding:0 20px 20px 0;
    }
	
	/*SELF-----------------------------------------*/
	
	/*SELF_LIST_IN-----------------*/
    .self .list_in .other{
        position:relative;
		margin:30px auto 0;
    }
	
	/*COMMON--------------------------------------------------------------------*/
	
	/*HEADER-----------------------------------------*/
    header .out{
		height:70px;
    }
	
    header .logo{
        max-width:150px;
    }
	
	header .pc{
		display:none;
	}
	
	/*HEADER_MB_BUTTON-----------------*/
	header .mb_bt,
    header .mb{
        display:block;
    }
	
	header .mb_bt{
		position:absolute;
		top:50%;
		right:20px;
		width:40px;
		height:40px;
		margin-top:-20px;
		text-align:left;
		cursor:pointer;
	}
	
	header .mb_bt span{
		height:2px;
		width:30px;
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		margin:auto;
		background:#5C4036;
		transition:0.3s;
		display:block;
	}
	
	header .mb_bt span:before,
	header .mb_bt span:after{
		content:"";
		height:2px;
		position:absolute;
		right:0;
		background:#5C4036;
		transition:0.3s;
	}
	
	header .mb_bt span:before{
		width:40px;
		top:-8px;
	}
	
	header .mb_bt span:after{
		width:35px;
		top:8px;
	}
	
	header .mb_bt.active span:before{
		width:40px;
		top:0;
		transform:rotate(45deg);
	}
	
	header .mb_bt.active span:after{
		width:40px;
		top:0;
		transform:rotate(-45deg);
	}
	
	header .mb_bt.active:hover span{
		transform:rotate(-90deg);
	}
	
	header .mb_bt.active span{
		width:40px;
		background:none;
	}
	
	/*HEADER_MENU-----------------*/
	header .mb{
		position:fixed;
		top:70px;
		bottom:0;
		left:0;
		width:100%;
		overflow-y:auto;
		background:#FFFFFF;
		transform:translateX(100%);
		transition:0.3s ease-in-out;
		-webkit-overflow-scrolling:touch;
	}
	
	header .mb.active{
		transform:translateX(0);
	}
	
	header .mb .search{
		padding:20px 40px;
	}
	
    header .mb .search input[type="text"]{
        width:100%;
		height:45px;
    }
	
    header .search input[type="submit"]{
        width:45px;
        height:45px;
    }
	
	header .mb .menu{
		padding:0 40px 100px;
	}
	
	header .mb .menu .list > a,
	header .mb .menu .list div{
		display:block;
		font-size:20px;
		color:#000000;
		padding:1em 0;
		position:relative;
		cursor:pointer;
		border-bottom:#CCCCCC 1px solid;
		transition:0.2s;
	}
	
	header .mb .menu .list:hover > a,
	header .mb .menu .list:hover div,
	header .mb .menu .list div.active{
		color:#5C4036;
		border-bottom:#D96D00 1px solid;
	}
	
	header .mb .menu .list div:before{
		top:50%;
		margin-top:-5px;
		right:auto;
		left:4.5em;
	}
	
	header .mb .menu .list div + ul{
		display:none;
		padding-top:20px;
    }
	
	header .mb .menu .list ul li a{
        display:block;
		font-size:18px;
        padding:0.5em 1em;
        color:#000000;
        transition:0.2s;
    }
	
	header .mb .menu .list ul li a:hover{
		padding:0.5em 1em 0.5em 1.5em;
    }
	
	/*AREA-----------------------------------------*/
	.area{
		display:none;
	}
	
    /*PAGETOP-----------------------------------------*/
    body a.pagetop{
		position:fixed !important;
		top:auto !important; 
		bottom:20px !important;
    }
	
	/*FOOTER-----------------------------------------*/
	
	/*FOOTER_TOP-----------------*/
    footer .top{
		background-size:cover;
    }
	
    footer .top .out{
        height:auto;
    }
	
    footer .top .box{
        padding:50px 0 0;
    }
	
	footer .top .link{
		max-width:400px;
		margin:0 auto;
		display:flex;
		align-items:flex-end;
		justify-content:space-between;
	}
	
    footer .top .link ul{
		width:60%;
		margin-bottom:1em;
    }
	
	footer .top li{
		margin-bottom:20px;
	}
	
    footer .top .bt a{
		display:block;
		width:auto;
    }
	
    footer .top .follow{
        margin-top:30px;
		flex-wrap:wrap;
		justify-content:center;
    }
	
	footer .top .follow span{
		display:block;
		width:100%;
		text-align:center;
		padding-bottom:10px;
	}
	
    footer .top .img{
		position:relative;
		left:0;
		width:40%;
        max-width:150px;
		margin-right:20px;
    }
	
    /*FOOTER_BOTTOM-----------------*/
    footer .bm{
        padding:40px 0 20px;
    }
	
    footer .bm .out{
        display:block;
		text-align:center;
    }
	
    footer .bm .text{
        width:auto;
		margin:15px 0;
    }
	
    footer .bm .text div{
        border-top:#CCCCCC 1px solid;
        padding-top:1.5em;
        margin-top:1.5em;
    }
	
	footer .bm .text br{
		display:none;
	}
	
    footer .bm .text ul{
        display:block;
    }
	
    footer .bm .text li{
        padding:10px 0;
    }
	
	footer .bm .text .address{
		margin-top:10px;
	}
	
	footer .bm .text .address li{
		padding:0;
	}
	
    footer .bm .text li:after{
		display:none;
    }
	
    footer .bm img{
        margin:0 7px;
    }
	
    /*FOOTER_RIGHT-----------------*/
    footer .right{
		display:none;
    }
}