@charset "UTF-8";




/* layout
---------------------------------------------------------- */
body {
	background:#ffffff;
}


/* slider
---------------------------------------------------------- */
.slide_wrap ul {
	width:100%;
	margin:20px 0 30px;
	height:470px;
}

.slide_wrap .main_gallery .gallery_cell {
	width:960px;
	ounter-increment: gallery-cell;
	margin:0 10px;
}

.slide_wrap_sp {
	display:none;
}

@media screen and (max-width:768px){

.slide_wrap_sp {
	display:block;
}

.slide_wrap_sp ul.slider_sp {
	width:100%;
	margin-bottom:30px;
	height:auto;
}

.slide_wrap_sp ul.slider_sp .gallery_cell {
	width:100%;
	height:auto;
	ounter-increment: gallery-cell;
	margin:0;
}

.slide_wrap_sp ul.slider_sp .gallery_cell img {
	width:100%;
	height:auto;
}
	
	.flickity-viewport {
		height: 85vw!important;
	}

.slide_wrap {
	display:none;
}
	
}


/* contents
---------------------------------------------------------- */

.content {
	padding: 50px 0 0;
	border-bottom: 1px solid #cacaca;
}

.content .main_copy {
	text-align: center;
	font-size: 26px;
	line-height: 1.8em;
	font-weight: 200;
	margin: 0 0 80px;
}


@media screen and (max-width:768px){
	.content {
		padding: 34px 0 0;
	}

	.content .main_copy {
		text-align: center;
		font-size: 14px;
		line-height: 1.8em;
		font-weight: 200;
		margin: 0 0 40px;
	}


}






/* info_area */

section.info_area {
	padding: 0 0 80px;
}

section.info_area .inner {
	width: 960px;
	margin: 0 auto;
}

section.info_area .inner dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
}

section.info_area .inner dl dt { width: 12%; padding-bottom: 25px; color:#00956e;line-height: 1.4em;}
section.info_area .inner dl dd { width: 88%; padding-bottom: 25px; line-height: 1.4em;}
section.info_area .inner dl dd a { text-decoration: underline;}
section.info_area .inner dl dd a:hover { text-decoration: none;}

section.info_area .inner .section_eng3 img { width: 100%;}
section.info_area .inner h2 { font-size: 40px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 40px;}


@media screen and (max-width:768px){
	section.info_area {
		padding: 0 0 40px;
			
	}

	section.info_area .inner {
		width: 92%;
		margin: 0 auto;
	}
	
	section.info_area .inner dl {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		font-size: 13px;
	}

	section.info_area .inner dl dt { width: 25%; padding-bottom: 25px; color:#00956e;}
	section.info_area .inner dl dd { width: 75%; padding-bottom: 25px;}
	section.info_area .inner dl dd a { text-decoration: underline;}
	section.info_area .inner dl dd a:hover { text-decoration: none;}

	section.info_area .inner h2 { font-size: 23px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 30px;}
	
	
}


section.school_area {
	background: #e4f3ef;
	padding: 50px 0;
}

section.school_area .inner { width: 1000px; margin: 0 auto;}
section.school_area .inner h2 { font-size: 40px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 40px;}

section.school_area .inner .school_btn_box { display: flex; flex-wrap: wrap;justify-content: space-between;}
section.school_area .inner ul li:first-child { margin-bottom: 30px;}

@media screen and (max-width:768px){
	section.school_area {
		background: #e4f3ef;
		padding: 30px 0;
	}
	section.school_area .inner { width: 92%; margin: 0 auto;}
	section.school_area .inner h2 { font-size: 23px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 30px;}
	section.school_area .inner .school_btn_box { display: block; flex-wrap: wrap;justify-content: space-between;}
	section.school_area .inner ul.kids_bnr { margin-bottom: 20px;}
	section.school_area .inner ul li:first-child { margin-bottom: 15px;}
}




/* facility_area */
section.facility_area { width: 100%; padding: 80px 0;}
section.facility_area .inner h2 { font-size: 40px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 40px;}
section.facility_area .inner { width: 1000px; margin: 0 auto;}

.list_box {
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	width: 1000px;
	margin: 0 auto;
}

.inr { width: 480px; padding-bottom: 60px;}
.inr .img { margin-bottom: 20px;}
.inr .img img { width: 100%;}
.inr h3 {
	font-size: 30px;
	border-left:7px solid #00956e;
	padding-left: 10px;
	margin-bottom: 20px;
	font-weight: 200;
}
.inr p { width: 100%; overflow: hidden; font-size: 18px; margin-bottom: 10px; line-height: 1.5em;}

@media screen and (max-width:768px){
	section.facility_area { width: 100%; padding: 40px 0;}
	section.facility_area .inner h2 { font-size: 23px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 30px;}
	section.facility_area .inner { width: 92%; margin: 0 auto;}

	.list_box {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: auto;
	}

	.inr { width: 100%; padding-bottom: 30px;}
	.inr .img { margin-bottom: 15px;}
	.inr .img img { width: 100%;}
	.inr h3 {
		width: 94%;
		font-size: 19px;
		border-left:3.5px solid #00956e;
		padding-left: 5px;
		margin: 0 auto 10px;
		font-weight: 200;
	}
	.inr p { width: 94%; overflow: hidden; font-size: 12px; margin: 0 auto 8px; line-height: 1.5em;}

}



section.price_area {
	background: #e4f3ef;
	padding: 50px 0;
}

section.price_area .inner { width: 1000px; margin: 0 auto;}
section.price_area .inner h2 { font-size: 40px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 40px;}
section.price_area .inner h3 { font-size: 30px; text-align: center; margin-bottom: 30px;}
section.price_area .inner .pr_table p.notice { margin: 5px 0 0; text-align: right; font-size: 16px;}

section.price_area .inner .pr_table { margin-bottom: 40px; border: 2px solid transparent;}
section.price_area .inner .pr_table table { width: 100%;}
section.price_area .inner .pr_table table tr th { width: 25%; background: #00956e; color: #ffffff; font-size: 16px; border-left: 2px solid #e7e7e7; border-bottom: 2px solid #e7e7e7; padding: 10px 5px; vertical-align: middle;}
section.price_area .inner .pr_table table tr th.th01 { width: 100%; font-size: 20px; text-align: center;}
section.price_area .inner .pr_table table tr td { width: 25%; font-size: 16px; background: #ffffff;  border-left: 2px solid #e7e7e7; border-bottom: 2px solid #e7e7e7; padding: 10px 5px; text-align: center;}
section.price_area .inner .pr_table p.notice { margin: 5px 0 0; text-align: right; font-size: 16px;}
section.price_area .inner .pr_table table tr th:first-child { border-left: none;}
section.price_area .inner .pr_table table tr:last-child th { border-bottom: none;}
section.price_area .inner .pr_table table tr:last-child td { border-bottom: none;}


.remarks {
	background: #ffffff;
	width: 100%;
	padding: 40px;
	box-sizing: border-box;
	margin-bottom: 60px;
}

.remarks h3 { font-size: 30px;}
.remarks h4 { font-size: 20px; margin-bottom: 8px; font-weight: 500;}
.remarks ul { margin-bottom: 30px;}
.remarks ul li { font-size: 18px; text-indent: -1em; padding-left: 1em; line-height: 1.5em;}
.remarks p { font-size: 18px; line-height: 1.5em;}


section.price_area .inner .pr_table table.table2 {}
section.price_area .inner .pr_table table.table2 th { width: 14%;}
section.price_area .inner .pr_table table.table2 td { width: 14%;}
section.price_area .inner .pr_table table.table2 th.bd { border-left: 2px solid #e7e7e7;}


section.price_area .inner ul.notice2 {
		font-size: 16px;
		line-height: 1.5em;
		
}
section.price_area .inner ul.notice2 li { text-indent: -1em; padding-left: 1em;}


@media screen and (max-width:768px){
	section.price_area {
		background: #e4f3ef;
		padding: 30px 0;
	}
	section.price_area .inner { width: 92%; margin: 0 auto;}
	section.price_area .inner h2 { font-size: 23px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 30px;}
	section.price_area .inner h3 { font-size: 18px; text-align: center; margin-bottom: 15px;}
	section.price_area .inner .pr_table p.notice { margin: 5px 0 0; text-align: right; font-size: 16px;}

	section.price_area .inner .pr_table { margin-bottom: 20px; border: 2px solid transparent;}
	section.price_area .inner .pr_table table { width: 100%;}
	section.price_area .inner .pr_table table tr th { width: auto; background: #00956e; color: #ffffff; font-size: 12px; border-left: 2px solid #e7e7e7; border-bottom: 2px solid #e7e7e7; padding: 8px 3px; vertical-align: middle;}
	section.price_area .inner .pr_table table tr th.th01 { width: 100%; font-size: 16px; text-align: center;}
	section.price_area .inner .pr_table table tr td { width: auto; font-size: 12px; background: #ffffff;  border-left: 2px solid #e7e7e7; border-bottom: 2px solid #e7e7e7; padding: 8px 3px; text-align: center; vertical-align: middle;}
	section.price_area .inner .pr_table p.notice { margin: 5px 0 0; text-align: right; font-size: 12px;}
	section.price_area .inner .pr_table table tr th:first-child { border-left: none;}
	section.price_area .inner .pr_table table tr:last-child th { border-bottom: none;}
	section.price_area .inner .pr_table table tr:last-child td { border-bottom: none;}
	
	.remarks {
		background: #ffffff;
		width: 100%;
		padding: 30px 3.5%;
		box-sizing: border-box;
		margin-bottom: 30px;
	}

	.remarks h3 { font-size: 18px;}
	.remarks h4 { font-size: 15px; margin-bottom: 8px; font-weight: 500;}
	.remarks ul { margin-bottom: 30px;}
	.remarks ul li { font-size: 13px; text-indent: -1em; padding-left: 1em; line-height: 1.5em;}
	.remarks p { font-size: 13px; line-height: 1.5em;}
	
	
	

	section.price_area .inner ul.notice2 {
		font-size: 13px;
		line-height: 1.5em;
		
	}
	section.price_area .inner ul.notice2 li { text-indent: -1em; padding-left: 1em;}
	
}





/* outline */


section.outline { width: 100%; padding: 80px 0;}
section.outline .inner { width: 1000px; margin: 0 auto;}
section.outline .inner h2 { font-size: 40px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 40px;}

section.outline .inner table {}


section.outline .inner table tr th {
	width: 250px;
	background: #858585;
	text-align: center;
	color: #ffffff;
	vertical-align: middle;
	font-size: 18px;
	padding: 15px 3px;
	border-bottom: 2px solid #e7e7e7;
}

section.outline .inner table tr td {
	padding: 15px 20px;
	border-bottom: 2px solid #e7e7e7;
	line-height: 1.5em;
	font-size: 18px;
}
section.outline .inner table tr:last-child th { border-bottom: none;}
section.outline .inner table tr:last-child td { border-bottom: none;}


@media screen and (max-width:768px){
	section.outline { width: 100%; padding: 40px 0;}
	section.outline .inner { width: 92%; margin: 0 auto;}
	section.outline .inner h2 { font-size: 23px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 30px;}
	
	
	section.outline .inner table {}


	section.outline .inner table tr th {
		width: 25%;
		background: #858585;
		text-align: center;
		color: #ffffff;
		vertical-align: middle;
		font-size: 13px;
		padding: 10px 3px;
		border-bottom: 2px solid #e7e7e7;
	}

	section.outline .inner table tr td {
		padding: 10px;
		border-bottom: 2px solid #e7e7e7;
		line-height: 1.5em;
		font-size: 13px;
	}
	section.outline .inner table tr:last-child th { border-bottom: none;}
	section.outline .inner table tr:last-child td { border-bottom: none;}
	
}











/* access */
.access {
	padding: 0;
}

section.access h2 { font-size: 40px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 40px;}

.access dl { width:1000px; margin: 0 auto; display: flex;
	flex-wrap: wrap; align-items: center; margin-bottom: 30px; font-size: 18px;}

.access dl dt {
	background: #a9a9a9;
	border-radius: 30px;
	color: #ffffff;
	text-align: center;
	width: 190px;
	padding: 6px 0;
	margin-bottom: 8px;
	
}

.access dl dd {
	width: 810px;
	padding: 0 0 8px 20px;
	box-sizing: border-box;
}

.access .map_area {
	background: url("../img/pc/contents_bg.png") center top;
	padding: 50px 0;
	margin: 0 0 60px;
}

.access .inner {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}

.access .inner div.map {
	width: 100%;
	float: right;
}

.access .inner div iframe {
	width: 100%;
}


@media screen and (max-width:768px){
	

	.access {
		padding: 0;
	}

	section.access h2 { font-size: 40px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 40px;}

	.access dl { width:92%; margin: 0 auto; display: block; flex-wrap: wrap; text-align: center; align-items: center; margin-bottom: 30px; font-size: 13px;}

	.access dl dt {
		background: #a9a9a9;
		border-radius: 30px;
		color: #ffffff;
		text-align: center;
		width: 39%;
		padding: 6px 0;
		margin: 0 auto 8px;

	}

	.access dl dd {
		width: 100%;
		padding: 0 0 8px 20px;
		box-sizing: border-box;
		line-height: 1.5em;
	}
	.access dl dd.dd01 { margin-bottom:15px; }
	
	section.access h2  { font-size: 23px; color: #00956e; font-weight: 200; text-align: center; margin-bottom: 30px;}
	
	.access .map_area {
		background: url("../img/sp/contents_bg.png") center top;
		background-size: 14.5px 12px;
		padding: 20px 0;
		margin-bottom: 45px;
	}

	.access .inner {
		width: 92%;
		margin: 0 auto;
		overflow: hidden;
	}


	.access .inner div.map {
		width: 100%;
		float: none;
	}

	.access .inner div iframe {
		width: 100%;
		height: 313px;
	}
	
	
}


.opas {
	width: 320px;
	margin: 0 auto;
	padding: 0 0 80px;
}

.opas img { width: 100%; height: auto;}

@media screen and (max-width:768px){
	.opas {
		width: 60%;
		margin: 0 auto;
		padding: 0 0 60px;
	}

}




.taiken_bnr {
	width: 740px;
	margin: 0 auto;
	padding: 10px 0 0;
}

.taiken_bnr img { width: 100%; height: auto;}

@media screen and (max-width:768px){
	.taiken_bnr {
		width: 100%;
		margin: 0 auto;
	padding: 10px 0 0;
	}

}


