@charset "UTF-8";
/*--------------------------------------------
KV
---------------------------------------------*/
#kv{
	background : url( "../images/kv/mv.jpg" ) left top / cover no-repeat;
	position : relative;
	min-width : 1080px;
}
#kv:before{
	content : "";
	display : block;
	width : 100%;
	height : 100%;
	background : url("../images/kv/cover.png") left top;
	position : absolute;
	top : 0;
	left : 0;
}
#kv .wrap{
	padding-top : 50px;
	position : relative;
	z-index : 2;
	padding-left : 50px;
	padding-right : 50px;
	padding-bottom : 25px;
}
#kv p{
	margin-left : 284px;
}
#kv h2{
	margin-top : 31px;
	text-align : center;
}
#kv ul{
	margin-top : 50px;
	margin-left : 77px;
}
#kv li{
	display : inline-block;
}
#kv li:nth-child(2){
	margin-left : -12px;
}
/*--------------------------------------------
CTA
---------------------------------------------*/
.cta{
	min-width : 1080px;
}
.cta .wrap{
	padding-left : 50px;
	padding-right : 50px;
}
.cta .btn-admission{
	width : 510px;
	margin-left : auto;
	margin-right : auto;
	display : block;
}
.cta .caution{
	border : solid 1px gray;
	padding : 20px;
	width : 740px;
	margin-left : auto;
	margin-right : auto;
}
.cta .caution>div {
	margin: 20px 0 0;
	padding: 20px 20px 0;
	border-top: dashed 1px gray;
}

.cta .caution h4{
	background : url("../images/cta/icon.png") left center no-repeat;
	height : 24px;
	padding-left : 16px;
	font-size : 16px;
	letter-spacing : .025em;
	line-height : 24px;
}
.cta .caution p{
	font-size : 14px;
	line-height : 1.6;
	letter-spacing : .025em;
	padding-left : 34px;
}
.cta .caution em{
	color : #ff3d00;
}
.cta .caution a{
	color : #2196f3;
	text-decoration : underline;
}
.cta .caution>div a:before{
	content : ">>";
}
#cta01 .wrap{
	padding-top : 48px;
	padding-bottom : 48px;
	padding-left : 50px;
	padding-right : 50px;
}
#cta01 .caution {
	padding: 30px 20px 20px;
}
#cta01 h2{
	text-align : center;
}
#cta01 .btn-admission{
	margin-top : 29px;
}
#cta01 .caution{
	margin-top : 24px;
}
.tel {
	clear: both;
	display : block;
	width : 740px;
	margin-left : auto;
	margin-right : auto;
	margin-top : calc( 32px - 14px * .3 );
}
/*--------------------------------------------
SECTION01
---------------------------------------------*/
#section01{
	min-width : 1080px;
}
#section01 .bg{
	background-color : #f5f5f5;
}
#section01 .bg .wrap{
	padding-top : 26px;
	padding-bottom : 48px;
	position : relative;
	padding-left : 50px;
	padding-right : 50px;
}
#section01 h2{
	padding-top : 44px;
	margin-left : 31px;
}
#section01 .bg p{
	position : absolute;
	top : 26px;
}
#section01 .bg p:nth-of-type(1){
	left : 514px;
}
#section01 .bg p:nth-of-type(2){
	left : 765px;
}
#section01 .menu{
	margin-top : 71px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-pack : justify;
	-ms-flex-pack : justify;
	justify-content : space-between;
}
#section01 .menu li{
	width : 320px;
}
#section01 .menu li a{
	display : block;
	margin : -22px auto 0;
	width : 180px;
}
#section01 .points h3{
	background-color : #2196f3;
	text-align : center;
	min-width : 1080px;
	height : 160px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
	position : relative;
}
#section01 .points > li > ul{
	position : relative;
}
#section01 .points > li > ul:before{
	content : "";
	display : block;
	background : url("../images/section01/bg_title.png") left top no-repeat;
	width : 40px;
	height : 20px;
	position : absolute;
	top : 0;
	left : calc( 50% - 20px );
}
#section01 .points h4{
	text-align : center;
}
#section01 .points .wrap > ul{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
}
#section01 .points .points0101{
	padding-top : 52px;
	padding-bottom : 48px;
}
#section01 .points .points0101 ul{
	width : 960px;
	margin-left : auto;
	margin-right : auto;
	margin-top : 32px;
}
#section01 .points .points0101 li{
	width : 50%;
	background-color : #fafafa;
}
#section01 .points .points0101 p:nth-of-type(2){
	width : 100%;
	height : 172px;
	font-size : 16px;
	line-height : 1.6;
	padding-left : 50px;
	padding-right : 50px;
	padding-top : calc( 40px - .3em );
	white-space : nowrap;
}
#section01 .points .points0102{
	padding-top : 40px;
	padding-bottom : 48px;
	background-color : #f5f5f5;
}
#section01 .points .points0102 ul{
	margin-top : 32px;
}
#section01 .points .points0102 li{
	width : calc( 100% / 3 );
}
#section01 .points .points0102 p:nth-of-type(2){
	width : 100%;
	height : 198px;
	font-size : 16px;
	line-height : 1.6;
	padding-left : 30px;
	padding-right : 30px;
	padding-top : calc( 40px - .3em );
}
#section01 .points .points0103{
	padding-top : 48px;
	padding-bottom : 48px;
	background-color : #eee;
}
#section01 .points .points0103 ul{
	width : 960px;
	margin-left : auto;
	margin-right : auto;
	margin-top : 32px;
}
#section01 .points .points0103 li{
	width : 50%;
	background-color : #fafafa;
}
#section01 .points .points0103 p:nth-of-type(2){
	width : 100%;
	height : 151px;
	font-size : 16px;
	line-height : 1.6;
	padding-left : 50px;
	padding-right : 50px;
	padding-top : calc( 39px - .3em );
}
#section01 .points .points02 .wrap{
	padding-top : 52px;
	padding-bottom : 48px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
}
#section01 .points .points02 .wrap > li{
	padding-left : 20px;
	padding-right : 20px;
	height : 326px;
}
#section01 .points .points02 .wrap > li:nth-of-type(1){
	width : 456px;
	background-color : #f5f5f5;
}
#section01 .points .points02 .wrap > li:nth-of-type(1) li:nth-child( n + 4){
	margin-top : 10px;
}
#section01 .points .points02 .wrap > li:nth-of-type(2){
	width : 312px;
	background-color : #eee;
}
#section01 .points .points02 .wrap > li:nth-of-type(2) li:nth-child( n + 3){
	margin-top : 10px;
}
#section01 .points .points02 .wrap > li:nth-of-type(3){
	width : 312px;
	background-color : #f5f5f5;
}
#section01 .points .points02 .wrap > li:nth-of-type(3) li:nth-child( n + 3){
	margin-top : 10px;
}
#section01 .points .points02 h4{
	height : 112px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
}
#section01 .points .points02 ul ul{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-ms-flex-wrap : wrap;
	    flex-wrap : wrap;
	-webkit-box-pack : justify;
	-ms-flex-pack : justify;
	justify-content : space-between;
}
#section01 .points .points02 ul ul li{
	display : block;
	width : 132px;
	height : 90px;
}
#section01 .points .points03 .wrap{
	padding-top : calc( 50px - 24px * .3 );
	padding-bottom : calc( 45px - 24px * .3 );
}
#section01 .points .points03 h4{
	text-align : left;
	margin-left : 290px;
	position : relative;
}
#section01 .points .points03 h4:before{
	content : "";
	display : block;
	background : url("../images/section01/point03/world_present.png");
	width : 118px;
	height : 71px;
	position : absolute;
	left : -160px;
	top : 2px;
}
#section01 .points .points03 p{
	margin-left : 290px;
	font-size : 18px;
	line-height : 1.6;
	margin-top : calc( 24px * .3 );
	width : 658px;
	letter-spacing : .005em;
}
/*--------------------------------------------
SECTION02
---------------------------------------------*/
#section02{
	min-width : 1080px;
	background-color : #f5f5f5;
}
#section02 .wrap{
	padding-top : 48px;
	padding-bottom : 48px;
	padding-left : 50px;
	padding-right : 50px;
}
#section02 .wrap > p:nth-of-type(1){
	text-align : center;
}
#section02 h2{
	margin-top : 11px;
	text-align : center;
}
#section02 ul{
	margin-top : 31px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
}
#section02 .wrap > p:nth-of-type(2){
	text-align : center;
	margin-top : 32px;
}
#section02 .wrap > p:nth-of-type(3){
	margin-top : 3px;
	margin-left : 93px;
}
/*--------------------------------------------
SECTION03
---------------------------------------------*/
#section03{
	min-width : 1080px;
}
#section03 h2{
	background-color : #2196f3;
	min-width : 1080px;
	height : 160px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
}
#section03 .wrap{
	position : relative;
	padding-top : 85px;
	padding-bottom : 42px;
}
#section03 .wrap:before{
	content : "";
	display : block;
	background : url("../images/section03/bg_title.png");
	width : 40px;
	height : 20px;
	position : absolute;
	top : 0;
	left : 520px;
}
#section03 table{
	table-layout : fixed;
	width : 100%;
}
#section03 th{
	background-color : rgba( 33 , 150 , 243 , .04 );
}
#section03 thead td{
	border-right : solid 2px #2196f3;
	width : 270px;
}
#section03 thead th{
	padding-top : 16px;
	padding-bottom : 16px;
	border-top : solid 2px #2196f3;
	text-align : center;
	width : 270px;
}
#section03 thead th:not(:first-of-type){
	border-left : solid 1px #2196f3;
}
#section03 thead th:last-of-type{
	border-right : solid 2px #2196f3;
}
#section03 thead th p:nth-of-type(2){
	margin-top : 10px;
}
#section03 tbody th{
	border-left : solid 2px #2196f3;
	border-right : solid 2px #2196f3;
	border-top : solid 1px #2196f3;
	font-size : 16px;
	line-height : 1.6;
	letter-spacing : .025em;
	text-align : center;
	font-weight : 700;
	color : #2196f3;
}
#section03 tbody tr:first-of-type th{
	border-top : solid 2px #2196f3;
}
#section03 tbody tr:last-of-type th{
	border-bottom : solid 2px #2196f3;
}
#section03 tbody td{
	border-left : solid 1px #2196f3;
	border-top : solid 1px #2196f3;
	font-size : 13px;
	line-height : 1.6;
	letter-spacing : .015em;
	font-weight : 500;
	padding-left : 10px;
	padding-right : 10px;
}
#section03 tbody td span.sub{
	display : block;
	font-size : 11px;
	padding-left : 1em;
	text-indent : -1em;
}
#section03 tbody td span.sub:before{
	content : "※";
}
#section03 tbody tr:first-of-type td{
	border-top : solid 2px #2196f3;
}
#section03 tbody tr:last-of-type td{
	border-bottom : solid 2px #2196f3;
}
#section03 tbody tr td:last-of-type{
	border-right : solid 2px #2196f3;
}
#section03 tbody tr:nth-of-type(1) th{
	height : 80px;
}
#section03 tbody tr:nth-of-type(2) th{
	height : 64px;
}
#section03 tbody tr:nth-of-type(3) th{
	height : 64px;
}
#section03 tbody tr:nth-of-type(4) th{
	height : 88px;
}
#section03 tbody tr:nth-of-type(5) th{
	height : 72px;
}
#section03 tbody tr:nth-of-type(6) th{
	height : 184px;
}
#section03 tbody tr:nth-of-type(7) th{
	height : 64px;
}
#section03 tbody tr:nth-of-type(8) th{
	height : 64px;
}
#section03 tbody tr:nth-of-type(3) dl{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-ms-flex-wrap : wrap;
	    flex-wrap : wrap;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	font-size : 12px;
}
#section03 tbody tr:nth-of-type(3) dt , #section03 tbody tr:nth-of-type(3) dd{
	line-height : 1.6;
}
#section03 tbody tr:nth-of-type(3) dt:nth-of-type(1) , #section03 tbody tr:nth-of-type(3) dd:nth-of-type(1){
	-webkit-box-ordinal-group : 2;
	-ms-flex-order : 1;
	order : 1;
}
#section03 tbody tr:nth-of-type(3) dl:after{
	content : "";
	display : block;
	width : 100%;
	height : 0;
	-webkit-box-ordinal-group : 3;
	-ms-flex-order : 2;
	order : 2;
}
#section03 tbody tr:nth-of-type(3) dt:nth-of-type(2) , #section03 tbody tr:nth-of-type(3) dd:nth-of-type(2){
	-webkit-box-ordinal-group : 4;
	-ms-flex-order : 3;
	order : 3;
}
#section03 tbody tr:nth-of-type(3) dd:before{
	content : "：";
}

#section03 tbody tr:nth-of-type(4) span:not(.sub){
	white-space : nowrap;
}
#section03 tbody tr:nth-of-type(5) td:last-of-type{
	padding-left : 13px;
	padding-right : 13px;
}
#section03 tbody tr:nth-of-type(6) dt , #section03 tbody tr:nth-of-type(6) dd{
	line-height : 1.6;
}
#section03 tbody tr:nth-of-type(6) dl dt:not(:first-of-type){
	margin-top : 3.2px;
}
#section03 tbody tr:nth-of-type(6) dl dd{
	padding-left : .5em;
}
#section03 tbody tr:nth-of-type(7) ul{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-ms-flex-wrap : wrap;
	    flex-wrap : wrap;
}
#section03 tbody tr:nth-of-type(7) li:not(:last-child):after{
	content : "/";
}
/*--------------------------------------------
CTA02
---------------------------------------------*/
#cta02 .wrap{
	padding-bottom : calc( 49px - 12px * .3 );
}
#cta02 .caution{
	margin-top : 24px;
}
/*--------------------------------------------
SECTION04
---------------------------------------------*/
#section04{
	min-width : 1080px;
	background-color : #f5f5f5;
}
#section04 h2{
	background-color : #2196f3;
	min-width : 1080px;
	height : 160px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
}
#section04 .wrap{
	position : relative;
	padding-top : calc( 51px - 18px * .3 );
	padding-bottom : 42px;
}
#section04 .wrap:before{
	content : "";
	display : block;
	background : url("../images/section03/bg_title.png");
	width : 40px;
	height : 20px;
	position : absolute;
	top : 0;
	left : 520px;
}
#section04 .wrap > p{
	font-size : 18px;
	line-height : 1.6;
	letter-spacing : .025em;
	text-align : center;
	font-weight : 500;
}
#section04 ol{
	margin-left : auto;
	margin-right : auto;
	margin-top : calc( 32px - 18px * .3 );
	width : 740px;
}
#section04 li{
	position : relative;
}
#section04 li p{
	font-size : 16px;
	line-height : 1.6;
	letter-spacing : .025em;
	font-weight : 500;
	position : absolute;
	left : 240px;
	width : 440px;
}
#section04 li:not(:first-child){
	margin-top : 12px;
}
#section04 li:nth-child(1) p{
	top : calc( 31px + 24px * 1.3 );
}
#section04 li:nth-child(2) p{
	top : calc( 29px + 24px * 1.3 );
}
#section04 li:nth-child(3) p{
	top : calc( 29px + 24px * 1.3 );
}
#section04 li:nth-child(4) p{
	top : calc( 29px + 24px * 1.3 );
}
#section04 li a{
	display : block;
	position : absolute;
	top : 114px;
	left : 238px;
}
#section04 li em{
	color : #2196f3;
	text-decoration : underline;
}
/*--------------------------------------------
ASIDE
---------------------------------------------*/
#aside{
	min-width : 1080px;
}
#aside .wrap{
	padding-left : 130px;
	padding-right : 130px;
	padding-top : calc( 48px - 18px * .3 );
}
#aside .wrap > p:first-of-type{
	font-size : 18px;
	line-height : 1.6;
	font-weight : 700;
	letter-spacing : .025em;
	text-align : center;
	display : inline-block;
	background-color : #fff;
	min-width : 470px;
	position : relative;
	z-index : 2;
	white-space : nowrap;
	padding-left : 13.5px;
	padding-right : 13.5px;
	left : 50%;
	-webkit-transform : translateX( -50% );
	        transform : translateX( -50% );
}
#aside .box{
	width : 820px;
	border : solid 1px #bdbdbd;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : start;
	-ms-flex-align : start;
	align-items : flex-start;
	padding-top : 20px;
	padding-bottom : 20px;
}
#aside .box h3{
	margin-top : 5px;
	margin-left : 42px;
	-ms-flex-negative : 0;
	flex-shrink : 0;
}
#aside .box dl{
	margin-left : 47px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-ms-flex-wrap : wrap;
	    flex-wrap : wrap;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
}
#aside .box dl dt:nth-of-type(1) , #aside .box dl dd:nth-of-type(1){
	-webkit-box-ordinal-group : 2;
	-ms-flex-order : 1;
	order : 1;
}
#aside .box dl:before{
	content : "";
	display : block;
	width : 100%;
	height : 0;
	-webkit-box-ordinal-group : 3;
	-ms-flex-order : 2;
	order : 2;
}
#aside .box dl dt:nth-of-type(2) , #aside .box dl dd:nth-of-type(2){
	-webkit-box-ordinal-group : 4;
	-ms-flex-order : 3;
	order : 3;
}
#aside .box dl:after{
	content : "";
	display : block;
	width : 100%;
	height : 0;
	-webkit-box-ordinal-group : 5;
	-ms-flex-order : 4;
	order : 4;
}
#aside .box dl dt:nth-of-type(3) , #aside .box dl dd:nth-of-type(3){
	-webkit-box-ordinal-group : 6;
	-ms-flex-order : 5;
	order : 5;
}
#aside .box dl dd:nth-of-type(3){
	padding-left : .5em;
}
#aside .box dt , #aside .box dd{
	font-size : 14px;
	line-height : 1.6;
	letter-spacing : .025em;
}
#aside .box a{
	display : block;
	margin-left : 1em;
}
#aside .wrap > p:nth-of-type(2){
	font-size : 12px;
	line-height : 1.6;
	font-weight : 500;
	letter-spacing : .025em;
	margin-top : calc( 16px - .3em );
	text-align : center;
}