@charset "utf-8";

/******************** initial ********************/

html{
	font-size: 62.5%;
	overflow-y: scroll;
}
body{
	background: #fff;
	font-family: sans-serif;
	color: #333;
	position: relative;
	font-size: 1.4em;
	overflow-x: hidden;
}
a{
	cursor: pointer;
	color: #000;
}
img{
	display: block;
	width: 100%;
	height: auto;
}
h1, h2, h3, h4, h5, h6{
	font-size: 2.2rem;
	font-weight: 100;
}

/*============================
■ common
============================*/

.display_pc{
	display: none!important;
}
.display_tb{
	display: none!important;
}
.display_sp{
	display: initial!important;
}


/*============================
■ effect style
============================*/

.inviewfadeIn{
	opacity: 0;
	transition: .8s;
}

.inviewfadeInSlow{
	opacity: 0;
	transition: .8s;
}

.fadeIn{
	opacity: 1.0;
}

/*----- フェードインしながら上へスライド -----*/
.inviewfadeInUp{
	opacity: 0;
	transform: translate(0, -50px);
	-webkit-transform: translate(0, -50px);
	transition: .8s;
}

.fadeInUp{
	opacity: 1.0;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}


/*----- フェードインしながら下へスライド -----*/
.inviewfadeInDown{
	opacity: 0;
	transform: translate(0, 50px);
	-webkit-transform: translate(0, 50px);
	transition: .8s;
}

.fadeInDown{
	opacity: 1.0;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}


/*----- フェードインしながら左へスライド -----*/
.inviewfadeInLeft{
	opacity: 0;
	transform: translate(50px, 0);
	-webkit-transform: translate(50px, 0);
	transition: .8s;
}

.fadeInLeft{
	opacity: 1.0;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}


/*----- フェードインしながら右へスライド -----*/
.inviewfadeInRight{
	opacity: 0;
	transform: translate(-50px, 0);
	-webkit-transform: translate(-50px, 0);
	transition: .8s;
}

.fadeInRight{
	opacity: 1.0;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}

/*============================
■ main_nav
============================*/

#main_nav{
	display: block;
	box-sizing: border-box;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 0;
	z-index: 1002;
}
#main_nav>a{
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	padding: 4vw 0;
	width: 50%;
	font-size: 4.6vw;
	color: #fff;
	text-align: center;
	cursor: pointer
}
#main_nav>a:first-of-type{
	background: -moz-linear-gradient(top, #e5003e, #bc0044);
	background: -webkit-linear-gradient(top, #e5003e, #bc0044);
	background: linear-gradient(to bottom, #e5003e, #bc0044);
}
#main_nav>a:last-of-type{
	background: -moz-linear-gradient(top, #c38336, #a27546);
	background: -webkit-linear-gradient(top, #c38336, #a27546);
	background: linear-gradient(to bottom, #c38336, #a27546);
}

.btn_request::before{
	content: "";
	display: inline-block;
	width: 2rem;
	height: 2rem;
	background-image: url("/img/lp/request.png");
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-top: -0.5rem;
	margin-right: 0.5rem;
}

.btn_apply::before{
	content: "";
	display: inline-block;
	width: 2rem;
	height: 2rem;
	background-image: url("/img/lp/apply.png");
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-top: -0.5rem;
	margin-right: 0.5rem;
}

#main_nav ul{
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	margin: 0 auto;
	padding: 0;
	width: 50%;
	bottom: 0;
	right: 0;
	margin-bottom: 12vw;
	opacity: 1;
}
#main_nav ul li{
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: 12vw;
}
#main_nav ul li a{
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	padding: 4vw 0;
	width: 100%;
	height: 12vw;
	font-size: 4.6vw;
	color: #fff;
	text-align: center;
	cursor: pointer
	background: -moz-linear-gradient(top, #c38336, #a27546);
	background: -webkit-linear-gradient(top, #c38336, #a27546);
	background: linear-gradient(to bottom, #c38336, #a27546);
}

/*============================
■ main_image
============================*/

#main_image{
	display: block;
	box-sizing: border-box;
	position: relative;
	width: 100%;
	text-align: center;
	overflow: hidden;
}

header{
	display: block;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0;
}
header>h1{
	display: block;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 40%;
	margin: 0 auto;
	padding: 0;
	background-color: #fff;
	box-shadow: 0.2rem 0.2rem 0.2rem rgba(0,0,0,0.2);
	z-index: 103;
}
header>h1>img{
	display: block;
	box-sizing: border-box;
	width: 50%;
	height: auto;
	margin: 0 auto;
	padding: 3vw 1vw;
}
header>h1>p{
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	margin: 0 auto;
	padding: 0;
}

#main_image>img{
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	right: -40%;
	width: auto;
	height: 100%;
	margin: 0 auto;
	z-index: 100;
}

#main_image>div#main_box{
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	border: 0.4rem solid #fff;
	z-index: 102;
}
#main_image>p{
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	bottom: 5px;
	left: 0;
	padding: 5.0vw 8.0vw;
	font-size: 4.6vw;
	font-family: serif;
	font-weight: 800;
	color: #fff;
	text-align: left;
	line-height: 160%;
	z-index: 101;
	background-color: rgba(183,0,0,0.8);
}




/*============================
■ contents
============================*/

section>h2{
	display: block;
	box-sizing: border-box;
	margin-top: 5.0vw;
	padding: 5.0vw;
	font-size: 5.0vw;
}
section>h2>span{
	display: block;
	box-sizing: border-box;
	padding: 2.0vw 0;
	font-size: 4.0vw;
	color: #e60011;
}

section#content_about{
}

.content_box{
	display: block;
	box-sizing: border-box;
	position: relative;
	padding-bottom: 20.0vw;
}

.content_box>div{
	position: relative;
	z-index: 2;
}


#content_about>div::before{
    position: absolute;
    content: "";
    display: block;
    width: 500%;
    height: 50%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
    background-position: center;
    background-size: contain;
    margin-left: -50%;
    margin-top: -20%;
}


#content_about>div:nth-of-type(1):before{
	background-image: url("/img/lp/bak_about_01.png");
	background-repeat: no-repeat;
	transform: rotatez(-20deg);

}
#content_about>div:nth-of-type(2):before{
	background-image: url("/img/lp/bak_about_02.png");
	background-repeat: no-repeat;
	transform: rotatez(20deg);
	margin-top: 88%;

}
#content_about>div:nth-of-type(3):before{
	background-image: url("/img/lp/bak_about_03.png");
	background-repeat: no-repeat;
	transform: rotatez(-20deg);

}
#content_about>div:nth-of-type(4):before{
	background-image: url("/img/lp/bak_about_04.png");
	background-repeat: no-repeat;
	transform: rotatez(20deg);
	margin-top: 88%;

}
#content_about>div:nth-of-type(5):before{
	background-image: url("/img/lp/bak_about_05.png");
	background-repeat: no-repeat;
	transform: rotatez(-20deg);

}
#content_about>div>div>h3{
	box-sizing: border-box;
	position: relative;
	margin: 0 5.0vw;
	margin-bottom: 5.0vw;
	height: 20.0vw;
	border-bottom: 1.2rem solid #f8b02d;
}
#content_about>div>div>h3>span{
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	left: 18.0vw;
	bottom: -1.2rem;
	font-size: 6.4vw;
	line-height: 8.0vw;
}
#content_about>div>div>h3::before{
	content: "";
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	width: 15.0vw;
	height: 20.0vw;
}
#content_about>div:nth-of-type(1)>div>h3::before{
	background-image: url("/img/lp/about_no1.png");
	background-repeat: no-repeat;
	background-size: contain;
}
#content_about>div:nth-of-type(2)>div>h3::before{
	background-image: url("/img/lp/about_no2.png");
	background-repeat: no-repeat;
	background-size: contain;
}
#content_about>div:nth-of-type(3)>div>h3::before{
	background-image: url("/img/lp/about_no3.png");
	background-repeat: no-repeat;
	background-size: contain;
}
#content_about>div:nth-of-type(4)>div>h3::before{
	background-image: url("/img/lp/about_no4.png");
	background-repeat: no-repeat;
	background-size: contain;
}
#content_about>div:nth-of-type(5)>div>h3::before{
	background-image: url("/img/lp/about_no5.png");
	background-repeat: no-repeat;
	background-size: contain;
}

#content_about>div>div>p{
	padding: 0 10.0vw;
}
#content_about>div>div>p>img{
	border-radius: 50%;
}
#content_about>div>div>div.content_more{
	display: none;
	box-sizing: border-box;
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 2.0vw 5.0vw;
}
#content_about>div>div>div.content_more>p{
	display: block;
	box-sizing: border-box;
	position: relative;
	background-color: #bcecea;
	margin-top: 5.0vw;
	padding: 5.0vw;
	font-size: 3.6vw;
	font-weight: 800;
	line-height: 140%;
	box-shadow: 0.2rem 0.2rem 0.2rem rgba(0,0,0,0.2);
}
#content_about>div>div>div.content_more>p::before{
	content: "";
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	top: -4.0vw;
	left: 50%;
	margin-left: -5.0vw;
	border-right: 5.0vw solid transparent;
	border-bottom: 5.0vw solid #bcecea;
	border-left: 5.0vw solid transparent; 
}
#content_about>div>div>span.btn_toggle{
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	top: 85.0vw;
	right: 5.0vw;
	width: 25.0vw;
	height: 25.0vw;
	background-color: #1b1b1b;
	border-radius: 50%;
	cursor: pointer;
	z-index: 110;
}
#content_about>div>div>span.btn_toggle>img{
	display: block;
}
#content_about>div>div>span.btn_toggle.active{
	top: 108.0vw;
	right: 3.0vw;
	width: 7.0vw;
	height: 7.0vw;
}
#content_about>div>div>span.btn_toggle.active::after{
	content: "×";
	display: inline-block;
	box-sizing: border-box;
	width: 7.0vw;
	height: 7.0vw;
	font-size: 5.0vw;
	color: #fff;
	text-align: center;
	line-height: 7.0vw;
}
#content_about>div>div>span.btn_toggle.active>img{
	display: none;
}

#content_schoollife>div>ul{
	display: block;
	box-sizing: border-box;
	padding: 0 5.0vw;
	font-size: 0;
}

#content_schoollife>div>ul>li{
	display: inline-block;
	box-sizing: border-box;
	width: 50%;
}


#content_event{
}
#content_event>div.content_box{
	display: block;
	box-sizing: border-box;
	position: relative;
	padding-bottom: 10.0vw;
	background-image: url("/img/lp/bak_event.png");
	background-repeat: no-repeat;
	background-size: contain;
}
#content_event>div.content_box.tokyo{
	background-color: #ffe3f6;
}
#content_event>div.content_box.kyoto{
	background-color: #d1ddfd;
}
#content_event>div.content_box>h3{
	display: block;
	box-sizing: border-box;
	position: relative;
	padding-top: 10.0vw;
	font-size: 6.4vw;
	text-align: center;
}

#content_event>div.content_box>div.content_body{
	margin: 5.0vw;
	background-color: #fff;
}
#content_event>div.content_box>div.content_body>dl{
	padding: 3.0vw;
	font-size: 4.0vw;
	line-height: 140%;
}
#content_event>div.content_box>div.content_body>dl>dt{
	padding: 3.0vw 0;
	font-size: 4.6vw;
	font-weight: 800;
}
#content_event>div.content_box>div.content_body>dl>dd{
	margin: 3.0vw 0;
	padding: 3.0vw;
}
#content_event>div.content_box>div.content_body>dl>dd:nth-of-type(1){
	background-color: #eee;
}
#content_event>div.content_box>div.content_body>dl>dd:nth-of-type(2){
	color: #fff;
	background-color: #000;
	margin-bottom: 0;
}
#content_event>div.content_box>div.content_body>div{
	padding: 3.0vw;
	padding-top: 0;
}
#content_event>div.content_box>div.content_body>div>a{
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	width: 100%;
	padding: 5.0vw 0;
	color: #fff;
	font-size: 5.0vw;
	font-weight: 800;
	text-align: center;
background-color: #e2003f;
	border-bottom: 0.8vw solid #7d0b2b;
	border-radius: 7.5vw;
}



/*============================
■ footer
============================*/

footer {
}

footer div {
	background-color: #000;
	color: #fff;
	font-size: 0.8rem;
	text-align: center;
	padding: 2.0rem 0;
}

