@charset "UTF-8";
/*ttl
---------------------*/
.h1_style{
	width: 13vw;
	padding-bottom: 2vw;
}
.h2_style{
	font-size: 1vw;
	padding-top: 2vw;
	padding-bottom: 3vw;
}
@media screen and (max-width: 1200px) {
.h1_style{
	width: 20rem;
	padding-bottom: 2.5rem;
}
.h2_style{
	font-size: 1.4rem;
	padding-top: 2rem;
	padding-bottom: 3rem;
}
}

@media screen and (max-width: 767px) {
.h1_style,
.h1_style img{
	width: 100%;
	padding-bottom: 0;
}

.h1_style:after{
	display: none;
}
}
/*main img
---------------------*/
header{
	position: relative;
	background: url("../img/main_top.png") no-repeat top center;
	background-size: 100% auto;
	padding: 54.1727672% 0 0;
	margin-top: 0;
}
.main_text{
	width: 15vw;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 15%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}
.main_text:before{
	content: "";
	width: 15vw;
	height: 23vw;
	position: absolute;
	top: 50%;
	transform: translateY(-60%);
	background: rgba(255,255,255,0.6);
	filter: blur(3rem);
}
@media screen and (max-width: 1200px) {
header{
	border-bottom: 15px solid #DE6967;
}
.main_text{
	width: 21rem;
}
}
@media screen and (max-width: 960px) {
.main_text{
	left: 10%;
}
}
@media screen and (max-width: 767px) {
header{
	background: none;
	padding: 0;
	border-bottom: 0;
}
.main_text,
.main_text:before{
	display: none;
}
}
/*nav
---------------------*/
.top_nav{
	width: 95%;
	position: absolute;
    left: 50%;
    bottom: 1%;
    transform: translateX(-50%);
}
.top_gnav{
    justify-content: center;
}
.top_gnav li{
	margin: 0 1rem;
}
.top_gnav a{
	display: block;
	font-size: 1vw;
	font-weight: bold;
	background: #FFFFFD;
	color: #DE6967;
	padding: 1rem 2rem;
	border-radius: 9px;
	border: 1px solid #fffffd;
}
.top_gnav a:hover{
	background: #DE6967;
	color: #FFFFFD;
}
.top_gnav a:before{
	content: "";
	width: 0;
	height: 3px;
	border-radius: 2px;
	background: #DE6967;
	position: absolute;
	bottom: 1rem;
	left: 50%;
	transform: translateX(-50%);
	transition: .5s;
}
.ico_list{
	display: none;
}
@media screen and (min-width: 960px) {
.top_nav.fixed{
    padding: 1rem 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
    background: #DE6967;
    left: 0;
    bottom: auto;
    transform: none;
	transform: .5s;
}
.top_nav.fixed .top_gnav a{
	font-size: 1.6rem;
	font-weight: bold;
    padding: .5rem 2rem;
}
}
@media screen and (max-width: 1400px) {
.top_gnav a{
	font-size: 1.6rem;
	padding: .5rem 2rem;
}
}
@media screen and (max-width: 1200px) {
.top_nav{
	width: 100%;
    bottom: -7px;
}
.top_gnav li{
	margin: 0 .5rem;
}
}
@media screen and (max-width: 960px) {
.top_nav{
	width: 100%;
	position: inherit;
    transform: none;
}
.top_gnav li{
	margin: 0;
}
.top_gnav{
	transition: all 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55);
	height: 0;
	width: 0;
	right: 0;
	top: 0;
	display: block;
	position: fixed;
	background: #DE6967;
	overflow: hidden;
	z-index: 9999;
}
.oppenned .top_gnav {
    opacity: 1;
    height: 100vh;
    width: 100vw;
	padding: 5rem 2rem;
}
.top_gnav a{
	display: block;
	margin-right: 0;
	margin-bottom: 1rem;
	margin: 0 0 1rem auto;
	padding: 1rem;
	max-width: 100%;
	font-size: 1.6rem;
	border: none;
}
.ico_list{
	display: flex;
}
}
@media screen and (max-width: 767px) {
.top_gnav a{
	font-size: 1.4rem;
}
}
/*imformation
---------------------*/
.img_question{
	width: 46.5rem;
}
.text_question{
	font-size: 1.8rem;
	line-height: 1.6;
}
@media screen and (max-width: 960px) {
.text_question{
	font-size: 1.6rem;
	text-align: center;
	margin-top: 3rem;
}
}
@media screen and (max-width: 767px) {
.text_question{
	font-size: 1.4rem;
	margin-top: 2rem;
}
}
/*about
---------------------*/
.about_text{
	line-height: 2.4;
}
.about_text_margin{
	display: block;
	margin: .5rem 0 1rem;
}
.about_text span{
	line-height: 1.8;
}
@media screen and (max-width: 960px) {
.about_cont{
	flex-direction: column-reverse;

}
.about_text{
	line-height: 1.8;
	text-align: center;
	margin-bottom: 3rem;
}
}
/*point
---------------------*/
.point_list{
	margin-top: 6rem;
}
.point_list li{
	width: 35.6rem;
	max-width: 33%;
	border: 2px solid #C2D968;
	border-radius: 14px;
	padding: 2rem;
}
.point_ico{
	width: 14.4rem;
	display: block;
	margin: -6rem auto 2rem;
}
.point_h4{
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.4rem;
	text-align: center;
	padding: 1.5rem 1rem;
	background: #C2D968;
	margin-bottom: 1rem;
	line-height: 1;
}
.point_text{
	padding: 0 0.8rem;
}
@media screen and (max-width: 1100px) {
.point_h4{
	font-size: 2.2rem;
}
}
@media screen and (max-width: 960px) {
.point_list{
	margin-top: 3rem;
}
.point_list li{
	width: 35.6rem;
	max-width: 48%;
	margin: 0 auto 6rem;
}
.point_list li:last-child{
	margin-bottom: 0;
}
.point_ico{
	width: 12rem;
	margin: -5rem auto 1rem;
}
}
@media screen and (max-width: 767px) {
.point_list li{
	width: 100%;
	max-width: 100%;
}
.point_h4{
	font-size: 1.8rem;
	padding: 1rem;
}
}
/*sesrvice
---------------------*/
.service_list li{
	margin-bottom: 3rem;
}
.service_list li:last-child{
	margin-bottom: 0;
}
.service_h4{
	position: relative;
	font-family: "Zen Maru Gothic", serif;
	font-size: 3rem;
	margin-bottom: 2rem;
	padding-bottom: 2rem;
}
.service_h4 span{
	display: block;
	font-family: "Quicksand", sans-serif;
	font-size: 1.6rem;
	font-weight: light;
}
.service_h4:after{
	content: "";
	display: block;
	width: 6rem;
	height: 2px;
	background: #000;
	position: absolute;
	bottom: 0;
	left: 0;
}
.service_text{
	padding-left: 6rem;
}
.more_btn{
	display: block;
	width: 14.3rem;
	padding: 1.2rem 1rem;
	line-height: 1;
	color: #fff;
	margin-top: 2rem;
	text-align: center;
	border-radius: 50px;
}
@media screen and (max-width: 1200px) {
.service_h4{
	font-size: 2.6rem;
	margin-bottom: 1rem;
	padding-bottom: 1rem;
}
.service_text{
	padding-left: 1rem;
}
.more_btn{
	padding: 1rem;
}
}
@media screen and (max-width: 960px) {
.service_list li {
	max-width: 50rem;
	margin: 0 auto 3rem;
}
.service_list li:nth-child(2){
	flex-direction: column-reverse;
}
.service_list li img{
	margin-bottom: 2rem;
}
}
@media screen and (max-width: 767px) {
.service_h4{
	font-size: 2rem;
}
.service_h4 span{
	font-size: 1.4rem;
}
}
/*step
---------------------*/
.step_list{
	margin-top: 3rem;
}
.step_list li{
	width: 21.2rem;
	max-width: 19.8%;
	border: 2px solid #C2D968;
	background: #fff;
	border-radius: 14px;
	padding: 0 1.5rem 1.5rem;
}
.step_num{
	display: block;
	width: 6rem;
	margin: -3rem auto 2rem;
}
.step_h4{
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.8rem;
	text-align: center;
	margin-bottom: 1.5rem;
}
.step_ico img{
	display: block;
	width: auto;
	height: 5rem;
	margin: 0 auto 2rem;
}
.step_text{
	font-size: 1.4rem;
	letter-spacing: 0.1px;
}
@media screen and (max-width: 1100px) {
.step_list{
	justify-content: center;
}
.step_list li{
	width: 30rem;
	max-width: 32%;
	margin: 0 0.5% 3rem;
	padding: 0 2.5rem 2.5rem;
}
.step_list li:nth-child(4),
.step_list li:nth-child(5){
	margin-bottom: 0;
}
.step_h4{
	font-size: 2rem;
}
.step_text{
	font-size: 1.6rem;
}
}
@media screen and (max-width: 960px) {
.step_list{
	justify-content: space-between;
}
.step_list li:nth-child(4),
.step_list li{
	width: 48%;
	max-width: 48%;
	margin: 0 auto 3rem;
}
}
@media screen and (max-width: 767px) {
.step_h4{
	font-size: 1.8rem;
}
.step_text{
	font-size: 1.4rem;
}
.step_list li:nth-child(4),
.step_list li{
	width: 100%;
	max-width: 100%;
	margin: 0 auto 4rem;
}
}
/*profile
---------------------*/
.profile-img img,
.profile-img iframe{
	width: 50%;
	margin-bottom: 3rem;
	height: auto;
}
.profile_list dt{
	width: 30%;
	font-weight: bold;
	border-bottom: 2px solid #816636;
	padding-bottom: 2rem;
	margin-bottom: 2rem;
}
.profile_list dd{
	width: 70%;
	border-bottom: 2px solid #816636;
	padding-bottom: 2rem;
	margin-bottom: 2rem;
}
.profile_list dt:last-of-type,
.profile_list dd:last-child{
	margin-bottom: 0;
}
@media screen and (max-width: 1100px) {
.profile_list dt{
	width: 25%;
}
.profile_list dd{
	width: 75%;
}
}
@media screen and (max-width: 960px) {
.profile_list.right_cont{
	margin-top: 1.5rem;
}
.profile_list dt,
.profile_list dd{
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
}
}
@media screen and (max-width: 767px) {
.profile_list{
	max-width: 50rem;
	margin: auto;
}
.profile-img img,
.profile-img iframe{
	width: 100%;
	margin: 0 auto;
	max-width: 50rem;
}
.profile-img iframe{
	margin-bottom: 2rem;
	height: 30rem;
}
}
/*greeting
---------------------*/
.greering_list{
	margin-top: 3rem;
}
.greeting_dt{
	width: 8.6rem;
	display: inline-block;
	background: #C2D968;
	line-height: 1;
	padding: 1rem 0;
	border-radius: 50px;
	text-align: center;
}
.greeting_dd{
	padding-left: 2rem;
	margin: 2rem 4rem;;
	border-left: 2px solid #816636;

}
/*doqument
---------------------*/
.doqument_h4{
	display: flex;
	align-items: center;
	font-size: 2.4rem;
	font-weight: 500;
	border-bottom: 2px solid #816636;
	margin-bottom: 2rem;
	padding-bottom: 1rem;
}
.doqument_h4:before{
	content: "";
	width: 8rem;
	height: 5rem;
	display: inline-block;	
}
.children:before{
	background: url("../img/ico_document_01@2x.png") no-repeat center center / contain;
}
.students:before{
	background: url("../img/ico_document_02@2x.png") no-repeat center center / contain;
}
.btn_program{
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 2px solid #C2D968;
	font-size: 1.8rem;
	font-weight: 500;
	padding: 2rem;
	margin-bottom: 3rem;
	border-radius: 15px;
	color: #816636;
}
.btn_program:hover{
	background: #C2D968;
	padding: 2rem 1rem 2rem 2rem;
}
.btn_program:after{
	content: "";
	width: 1rem;
	height: 1.5rem;
	display: inline-block;	
	background: url("../img/arrow01@2x.png") no-repeat center center / contain;
}
.btn_program:hover:after{
	width: auto;
	height: auto;
	content: "→";
	background: none;
}

.document_font{
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 2rem;
}
.document_list li{
	width: 49%;
}
.document_list li a{
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 2px solid #816636;
	font-size: 1.8rem;
	font-weight: 500;
	padding: 2rem;
	border-radius: 15px;
	margin-bottom: 1rem;
	color: #816636;
}
.document_list li a:hover{
	background: #816636;
	color: #fffffd;
	padding: 2rem 1rem 2rem 2rem;
	transition: .5s;
}
.document_list li a:after{
	content: "";
	width: .75rem;
	height: 1.5rem;
	display: inline-block;	
	background: url("../img/arrow02@2x.png") no-repeat center center / contain;
}
.document_list li a:hover:after{
	width: auto;
	height: auto;
	content: "→";
	background: none;
}
@media screen and (max-width: 767px) {
.doqument_h4{
	font-size: 2rem;
}
	.students{
		margin-top: 1rem;
	}
}




