@charset "utf-8";
/*
Theme Name: 代々木個別指導学院 2020
Description: 代々木個別指導学院様用テーマ
Author: Kinabal.inc
Version: 2.0
*/


/* global
-----------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400..700&display=swap');
body,html{
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	font-size:16px;
	line-height:2;
	letter-spacing:0;
	color:#1b1b1b;
	font-family:"Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  font-weight: 500;
}
*{box-sizing:border-box}

::-webkit-scrollbar{
	width:6px;
}
::-webkit-scrollbar-track{
	background:#fff;
	border:none;
	border-radius:6px;
	box-shadow:inset 0 0 2px #777;
}
::-webkit-scrollbar-thumb{
	background:#ccc;
	border-radius:6px;
	box-shadow:none;
}

.inner{
	width:calc(100% - 80px);
	max-width:1200px;
	margin:0 auto;
}

.left{float:left}
.right{float:right}
.pc{display:block}
.sp{display:none}
.clearfix:after{
	display:block;
	content:"";
	clear:both;
}
img{
	max-width:100%;
	height:auto;
}
a{
	color:#000;
	text-decoration:none;
		-webkit-transition: all .3s;
	transition: all .3s;
}
a:hover, a:active, a:focus{
	opacity:0.7;
	outline:none;
	text-decoration:none;
		-webkit-transition: all .3s;
	transition: all .3s;
}

ul.side{
	display:block;
	margin:0;
	padding:0;
	list-style:none;
}
ul.side:after{
	display:block;
	content:"";
	clear:both;
}
ul.side li{
	float:left;
	margin:0;
	padding:0;
}

ol{
	list-style:none;
	padding-left:30px;
}
ol li{
	position:relative;
}
ol li:before{
	display:block;
	content:"1.";
	color:#f59702;
	position:absolute;
	left:-28px;
	top:0;
}
ol li:nth-of-type(2):before{content:"2."}
ol li:nth-of-type(3):before{content:"3."}
ol li:nth-of-type(4):before{content:"4."}
ol li:nth-of-type(5):before{content:"5."}
ol li:nth-of-type(6):before{content:"6."}
ol li:nth-of-type(7):before{content:"7."}
ol li:nth-of-type(8):before{content:"8."}
ol li:nth-of-type(9):before{content:"9."}
ol li:nth-of-type(10):before{content:"10."}

.arrow{
	display:block;
	position:relative;
}
.arrow:after{
	display:block;
	content:"";
	width:6px;
	height:6px;
	border-top:2px #fff solid;
	border-right:2px #fff solid;
	position:absolute;
	top:50%;
	right:20px;
	z-index:1;
	transform:rotate(45deg) translateY(-50%);
	transform-origin:top;
}


/* breadcrumb
-----------------------------------------------------------*/
#breadcrumbs{
	padding:16px 0 60px;
	font-size:14px;
}


/* pagenavi
-----------------------------------------------------------*/
.wp-pagenavi{
	text-align:center;
	padding-top:80px;
}
.wp-pagenavi a,
.wp-pagenavi span{
	display:inline-block;
	height:28px;
	margin:0 10px;
	background:#fff;
	padding:0 6px;
	line-height:26px;
	border:2px #ddd solid;
}
.wp-pagenavi span.extend{
	border:0;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink{
	color:#fff;
	width:26px;
	position:relative;
}
.wp-pagenavi .previouspostslink:after{
	display:block;
	content:"";
	width:7px;
	height:7px;
	border-top:3px #c9c9c9 solid;
	border-left:3px #c9c9c9 solid;
	position:absolute;
	right:4px;
	top:7px;
	transform:rotate(-45deg);
}
.wp-pagenavi .nextpostslink:after{
	display:block;
	content:"";
	width:7px;
	height:7px;
	border-top:3px #c9c9c9 solid;
	border-right:3px #c9c9c9 solid;
	position:absolute;
	left:4px;
	top:7px;
	transform:rotate(45deg);
}
/* ez-toc
-----------------------------------------------------------*/
#ez-toc-container{
	padding-left: 20px;
	line-height: 30px;
}
/* form
-----------------------------------------------------------*/
input[type=text],
input[type=tel],
input[type=email],
input[type=password],
input[type=number],
select{
	width:100%;
	height:48px;
	line-height:48px;
	padding:0 21px;
	border:1px #ddd solid;
	border-radius:3px;
	outline:none;
	font-size:16px;
}
select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	background:transparent;
	z-index:1;
	position:relative;
}
.selectbox{
	width:100%;
	position:relative;
}
.selectbox:after{
	display:block;
	content:"";
	width:8px;
	height:8px;
	border-right:2px #999 solid;
	border-bottom:2px #999 solid;
	position:absolute;
	top:24px;
	right:23px;
	transform:translateY(-7px) rotate(45deg);
	z-index:0;
}
.mw_wp_form_confirm .selectbox:after{display:none}
textarea{
	width:100%;
	height:180px;
	padding:16px 21px;
	border:1px #ddd solid;
	border-radius:3px;
	outline:none;
	font-size:16px;
	line-height:1.3;
}
input[type=checkbox]{
	position:absolute;
	opacity:0;
	z-index:-1;
}
input[type=checkbox]+span{
	display:inline-block;
	margin:5px;
	padding-left:30px;
	letter-spacing:0;
	position:relative;
}
input[type=checkbox]+span:before{
	display:block;
	content:"";
	width:18px;
	height:18px;
	border:1px #555 solid;
	border-radius:2px;
	position:absolute;
	left:0;
	top:6px;
	cursor:pointer;
}
input[type=checkbox]:checked+span:before{background:#555}
input[type=checkbox]:checked+span:after{
	display:block;
	content:"";
	width:6px;
	height:10px;
	border-bottom:2px #fff solid;
	border-right:2px #fff solid;
	position:absolute;
	left:6px;
	top:8px;
	transform:rotate(45deg);
	cursor:pointer;
}
input[type=radio]{
	position:absolute;
	opacity:0;
	z-index:-1;
}
input[type=radio]+span{
	display:inline-block;
	margin:5px;
	padding-left:30px;
	letter-spacing:0;
	position:relative;
}
input[type=radio]+span:before{
	display:block;
	content:"";
	width:16px;
	height:16px;
	border:2px #dedede solid;
	border-radius:100%;
	position:absolute;
	left:0;
	top:5px;
	cursor:pointer;
}
input[type=radio]:checked+span:before{border-color:#555}
input[type=radio]:checked+span:after{
	display:block;
	content:"";
	width:12px;
	height:12px;
	border-radius:100%;
	background:#555;
	position:absolute;
	left:4px;
	top:9px;
	cursor:pointer;
}
.mw_wp_form .horizontal-item{margin-right:10px}
.mw_wp_form .horizontal-item + .horizontal-item{margin-left:0}

.mw_wp_form .error{
	margin-top:10px;
	margin-bottom:-14px;
	font-size:14px;
	color:#ff6473;
}
.mw_wp_form_confirm .agreebox{display:none}
.agreebox .error{
	margin-bottom:0;
	text-align:center;
}
label{cursor:pointer}

/* button */
#buttonbox{
	padding:22px 0 0;
	text-align:center;
}
#buttonbox #sendBtnBox{
	width:280px;
	height:80px;
	margin:0 auto;
	background:#e44a51;
	border:1px #e44a51 solid;
	color:#fff;
	border-radius:4px;
	box-shadow: 0 3px 0 #922f34;
	position:relative;
		-webkit-transition: all .3s;
	transition: all .3s;
}
#buttonbox #sendBtnBox:hover{
	/*background:#fff;*/
	opacity: .7;
		-webkit-transition: all .3s;
	transition: all .3s;
}
#buttonbox #sendBtnBox input{
	width:280px;
	height:80px;
	color:#fff;
	background:none;
	border:0;
	font-size:16px;
	cursor:pointer;
	position:absolute;
	top:0;
	left:0;
	z-index:2;
		-webkit-transition: all .3s;
	transition: all .3s;
	outline:none;
}
/*#buttonbox #sendBtnBox:hover input{
	color:#f59702;
		-webkit-transition: all .3s;
	transition: all .3s;
}*/
#buttonbox #backBtnBox input{
	margin-top:20px;
	background:none;
	border:0;
	font-size:12px;
	color:#555;
	text-decoration:underline;
	cursor:pointer;
	outline:none;
}


/* common
-----------------------------------------------------------*/
body:not(.home) #wrapper{
	padding-top:120px;
}
#wrapper:after{
	display:block;
	content:"";
	clear:both;
}
#title{
	margin:0;
	padding:30px 0;
	background:#f5f3f2;
}
#title.bg{
	height:400px;
	padding-top:140px;
	background-position:center center;
	background-size:cover;
}
#title h1,
#title .headtitle{
	padding:0;
	color:#ec6c00;
	font-size:40px;
	line-height:1.5;
	font-weight:bold;
}
#title h1 .subTitle{
	display:block;
	font-size:16px;
}
#title h1 .schoolTitle{
	display:block;
	font-size:20px;
}
#title h1 small{
	font-size: 32px;
	margin-right: 0.5em;
}
#campaignBannerPc{
	margin:-10px auto 64px;
	border-radius:10px;
	box-shadow:0 2px 16px rgba(0,0,0,.15);
}
#campaignBannerPc img{
	display:block;
}
main{
	float:left;
	width:840px;
	margin-bottom:142px;
}
body:not(.home) h2{
	margin:0 0 40px;
	padding:0 0 0 34px;
	font-size:32px;
	font-weight:bold;
	color:#ec6c00;
	line-height:1.4;
	position:relative;
}
body:not(.home) h2:before{
	display:block;
	content:"";
	width:8px;
	height:100%;
	background:#ec6c00;
	border-radius:4px;
	position:absolute;
	left:0;
	top:0;
}
a.more{
	display:block;
	width:120px;
	height:40px;
	margin:0 auto;
	line-height:40px;
	text-align:center;
	border:1px #ddd solid;
	border-radius:4px;
}
h3.h3{
	padding-left:36px;
	background:url(img/common/h3.jpg) left center no-repeat;
	background-size:31px;
}
.shadowbox{
	padding:40px;
	border-radius:10px;
	box-shadow:0 2px 16px rgba(0,0,0,.15);
}
.orange{
	color:#ec6c00;
}
.redbox{
	display:inline-block;
	padding:0 10px;
	border:1px #e44a51 solid;
	color:#e44a51;
	font-weight:bold;
}


/* sidebar
-----------------------------------------------------------*/
#sidebar{
	float:right;
	width:320px;
	margin-bottom:142px;
	border-left:1px #ddd solid;
}
#sidebar .widget+.widget{
	margin-top:80px;
}
#sidebar .widget h3{
	margin:0 0 24px;
	padding:0 40px;
	color:#ec6c00;
	font-size:32px;
	font-weight:bold;
	line-height:1;
	position:relative;
}
#sidebar .widget h3 span{
	display:block;
	margin-top:16px;
	font-size:16px;
}
#sidebar .widget h3:before{
	display:block;
	content:"";
	width:1px;
	height:100%;
	background:#ec6c00;
	position:absolute;
	left:-1px;
	top:0;
}
#sidebar .widget ul{
	margin:0 0 0 40px;
	padding:0;
	list-style:none;
}
/* plan */
#sidebar .widget.plan ul{
	padding:34px 24px;
	background:#fff;
}
#sidebar .widget.plan ul li{
	padding:24px 0;
}
#sidebar .widget.plan ul li+li{
	border-top:1px #ddd solid;
}
#sidebar .widget.plan ul li:nth-of-type(1){padding-top:0}
#sidebar .widget.plan ul li:nth-of-type(3){padding-bottom:0}
#sidebar .widget.plan ul li a{
	display:block;
}
#sidebar .widget.plan ul li a:after{
	display:block;
	content:"";
	clear:both;
}
#sidebar .widget.plan ul li:nth-of-type(1) a{color:#32c3bc}
#sidebar .widget.plan ul li:nth-of-type(2) a{color:#a9c42a}
#sidebar .widget.plan ul li:nth-of-type(3) a{color:#ec6c00}
#sidebar .widget.plan ul li img{
	float:left;
	margin-right:10px;
}
#sidebar .widget.plan ul li span{
	display:block;
	padding-top:8px;
	font-size:12px;
}
/* search */
#sidebar .widget.search ul li+li{
	margin-top:16px;
}
#sidebar .widget.search ul li a{
	display:block;
	width:100%;
	height:64px;
	line-height:64px;
	text-align:center;
	background:#f59702;
	color:#fff;
	border-radius:3px;
	box-shadow:0 2px 0 #c47902;
	position:relative;
}
/* contact */
#sidebar .widget.contact h3{
	color:#e44a51;
}
#sidebar .widget.contact h3:before{
	background:#e44a51;
}
#sidebar .widget.contact ul li:nth-of-type(1) a{
	display:block;
	width:100%;
	height:96px;
	line-height:96px;
	text-align:center;
	background:#e44a51;
	color:#fff;
	border-radius:3px;
	box-shadow:0 4px 0 #b63b41;
	position:relative;
}
#sidebar .widget.contact li+li{
	margin-top:30px;
}
#sidebar .widget.contact li:nth-of-type(2) a{
	display:block;
	color:#1b1b1b;
	font-size:32px;
	font-weight:bold;
	line-height:1.3;
}
#sidebar .widget.contact li:nth-of-type(2) a img{
	display:inline-block;
	width:21px;
	margin-right:4px;
}
#sidebar .widget.contact li:nth-of-type(2) a span{
	display:block;
	font-size:14px;
	font-weight:normal;
}


/* header
-----------------------------------------------------------*/
header{
	width:100%;
	height:120px;
	background:transparent;
	position:absolute;
	left:0;
	top:0;
	z-index:9999;
}
header .logo{
	float:left;
	display:block;
	margin:40px 0 0 40px;
	padding:0;
}
header .logo img{
	display:block;
	width:268px;
}

header .anniversary {
	display: none;
}

header #menu{display:none}

header .headcv a{
	display:block;
	width:120px;
	height:120px;
	padding-top:56px;
	background:#e44a51 url(img/common/icon_mail.png) 45px 20px no-repeat;
	background-size:29px 25px;
	color:#fff;
	font-size:13px;
	text-align:center;
	line-height:1.7;
}

header nav{
	margin:18px 36px 0 0;
}
header nav #nav_tel{
	font-size:12px;
}
header nav #nav_tel a{
	display:inline-block;
	padding-left:20px;
	background:url(img/common/icon_tel.png) left 50% no-repeat;
	background-size:16px;
	font-size:18px;
	font-weight:bold;
}
header nav #campaign_link{
	display:block;
	float:right;
	margin-right:16px;
	line-height:36px;
	font-size:14px;
}
header #nav_logo,
header nav #close_box{display:none}
header nav ul{
	margin:8px 0 0;
	padding:0;
	list-style:none;
	font-size:0;
	clear:both;
}
header nav ul li{
	display:inline-block;
	position:relative;
}
header nav ul li+li{
	margin-left:16px;
}
header nav ul li a{
	display:block;
	font-size:14px;
	position:relative;
}
header nav ul li a.current:before{
	display:block;
	content:"";
	width:100%;
	height:4px;
	background:#f59702;
	position:absolute;
	left:0;
	bottom:-26px;
}
header nav ul li ul{
	display:none;
	background:#fff;
	padding:14px;
	position:absolute;
	left:0;
	top:calc(100% + 18px);
	z-index:-1;
	opacity:0;
		-webkit-transition: all .3s;
	transition: all .3s;
}
header nav ul li:hover ul{
	display:block;
	z-index:2;
	opacity:1;
		-webkit-transition: all .3s;
	transition: all .3s;
}
header nav ul li:hover ul:before{
	display:block;
	content:"";
	width:90px;
	height:60px;
	position:absolute;
	left:0;
	bottom:100%;
}
header nav ul li ul li{
	margin-left:0;
	line-height:2.5;
}
header nav ul li ul li a{
	white-space:nowrap;
}
header nav ul li ul li a:hover{
	color:#f59702;
	text-decoration:underline;
}


/* contact_cv
-----------------------------------------------------------*/
.contact_cv{
	padding:80px 0 56px;
	background:#f8f8f8;
	text-align:center;
	clear:both;
	position:relative;
}
body:not(.home) .contact_cv{
	max-width:1200px;
	margin:0 auto;
}
body .contact_cv h2{
	margin:10px 0 0;
	padding:0;
	font-size:16px;
	font-weight:bold;
	line-height:1;
	color:#1b1b1b;
	position:absolute;
	left:50%;
	top:0;
	transform:translate(-50%,-50%);
}
body .contact_cv h2:before{
	display:none;
}
.contact_cv h2 b{
	display:block;
	margin-bottom:10px;
	font-size:40px;
}
.contact_cv .arrow{
	display:inline-block;
	width:320px;
	height:100px;
	margin-top:24px;
	border-radius:5px;
	vertical-align:top;
}
.contact_cv .contact{
	line-height:100px;
	background:#e44a51;
	color:#fff;
	box-shadow:0 3px 0 #922f34;
}
.contact_cv .tel{
	margin-left:10px;
	padding-top:28px;
	font-size:13px;
	line-height:1;
	background:#fff;
	color:#000;
	border:1px  #000 solid;
	box-shadow:0 3px 0 #000;
}
.contact_cv .tel:after{
	border-color:#000;
}
.contact_cv .tel b{
	display:block;
	font-size:24px;
	margin-bottom:8px;
}
.contact_cv .tel b:before{
	display:inline-block;
	content:"";
	background:url(img/common/icon_tel.png) center center no-repeat;
}


/* footer
-----------------------------------------------------------*/
footer{
	margin-top:160px;
	font-size:14px;
}
footer nav{
	padding:80px 0 72px;
	background:#f8f8f8;
}
footer nav .inner{
	display:flex;
	justify-content:space-between;
}
footer nav ul{
	margin:0;
	padding:0;
	list-style:none;
}
footer nav .ttl{
	margin-bottom:3px;
	font-weight:bold;
}

footer .fotTxt{
	padding:25px 0;
	background:#1b1b1b;
	color:#fff;
	line-height:1;
}
footer .fotTxt li+li{
	margin-left:6px;
	padding-left:6px;
	border-left:1px #fff solid;
}
footer .fotTxt a{
	color:#fff;
}


/* fixed_nav
-----------------------------------------------------------*/
#fixed_nav{display:none}


/* home
-----------------------------------------------------------*/
body.home #topslider{
	margin-bottom:100px;
}
body.home #topslider .inner {
	position: relative;
	height: 100%;
}
body.home #topslider .anniversary {
	position: absolute;
	right: 0;
	bottom: 40px;
}
body.home #topslider .entry{
	height:796px;
	padding-top:194px;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	background-image:url(img/top/topimage1.jpg)
}
body.home #topslider .entry:nth-of-type(2){background-image:url(img/top/topimage2.jpg)}
body.home #topslider .entry:nth-of-type(3){background-image:url(img/top/topimage3.jpg)}
body.home #topslider .entry:nth-of-type(4){background-image:url(img/top/topimage4_002.jpg)}
body.home #topslider .entry .copy{
	white-space:nowrap;
}
body.home #topslider .entry.mv video{
	width:auto;
	height:100%;
	position:absolute;
	left:50%;
	top:120px;
	transform:translateX(-50%);
}
body.home #topslider .entry .copy .copy1{
	display:block;
	font-size:20px;
	font-weight:bold;
	letter-spacing:7px;
}
body.home #topslider .entry .copy .copy2{
	font-size:36px;
	font-weight:bold;
	line-height:1.3;
}
body.home #topslider .entry .copy .copy2 b{
	font-size:58px;
	color:#e44a51;
}
body.home #topslider .entry .copy .copy2 i{
	color:#e44a51;
	font-style:normal;
}
body.home #topslider .entry:nth-of-type(2) .copy2{letter-spacing:8px}
body.home #topslider .entry:nth-of-type(3) .copy .copy2 b,
body.home #topslider .entry:nth-of-type(3) .copy .copy2 i{
	color:#ec6c00;
}
body.home #topslider .entry:nth-of-type(4) .copy2{
	font-size:38px;
}
body.home #topslider .entry .copy .text{
	display:block;
	padding:1.3em 0;
}
body.home #topslider .entry .copy .request{
	display:block;
	width:320px;
	height:102px;
	margin-bottom:1em;
	line-height:102px;
	text-align:center;
	background:#e44a51;
	color:#fff;
	border-radius:3px;
	box-shadow:0 3px 0 #b63b41;
}
body.home #topslider .entry:nth-of-type(4) .request{
	margin-top:1.5em;
}
body.home #topslider .entry .copy .tel{
	font-size:12px;
}
body.home #topslider .entry .copy .tel a{
	display:inline-block;
	padding-left:24px;
	font-size:28px;
	font-weight:bold;
	vertical-align:-3px;
	background:url(img/common/icon_tel.png) left 50% no-repeat;
	background-size:20px;
}
body.home #topslider .slick-dots{
	bottom:-120px;
}
body.home #topslider .slick-dots li button:before{
	width:7px;
	height:7px;
	content:"";
	background:#fff;
	border-radius:100%;
	border:2px #ddd solid;
	opacity:1;
	top:2px;
	left:2px;
}
body.home #topslider .slick-dots li button:after{
	display:block;
	content:"";
	width:11px;
	height:11px;
	border-radius:100%;
	border:2px #e44a51 solid;
	position:absolute;
	top:0;
	left:0;
}
body.home #topslider .slick-dots li.slick-active button:after{
	width:7px;
	height:7px;
	border:4px #e44a51 solid;
}
/* info */
body.home #info{
	position:relative;
	height:0;
}
body.home #info .inner,
body.home #news .inner.shadowbox{
	height:110px;
	padding:0;
	background:#f4f2ec;
	border:6px #fff solid;
	position:absolute;
	top:-100px;
	left:50%;
	z-index:2;
	transform:translate(-50%,-50%);
}
body.home #info .inner a,
body.home #news .inner.shadowbox a{
	display:block;
	width:100%;
	height:100%;
	line-height:98px;
	color:#e44a51;
}
body.home #info .inner a .cat,
body.home #news .inner.shadowbox a .cat{
	display:inline-block;
	width:124px;
	height:25px;
	margin:0 36px 0 32px;
	text-align:center;
	line-height:25px;
	background:#e44a51;
	color:#fff;
	font-size:14px;
	border-radius:4px;
}
body.home #info .inner a:after,
body.home #news .inner.shadowbox a:after{
	border-color:#e44a51;
}
/* link */
body.home #link{
	padding-top:3em;
}
body.home #link a{
	display:block;
	margin-bottom:1em;
	border-radius:10px;
	box-shadow:0 0 10px rgba(0,0,0,.2);
}
body.home #link a.noshadow{
	box-shadow:none;
	margin-left:-10px;
	margin-right:-10px;
}
body.home #link .left,
body.home #link .right{
	width:calc(50% - 8px);
}
body.home #link a:nth-of-type(2){
	box-shadow:none;
}
body.home #link a img:not(.sp){
	display:block;
}
/* movieslider */
body.home #movieslider h2{
	margin: 0;
	padding: 40px 0;
	line-height: 1;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	color: #ec6c00;
}
body.home #movieslider h2 b{
	display: block;
	margin-bottom: 10px;
	font-size: 48px;
}
body.home #movieslider{
	margin:60px 0 30px;
}
body.home #movieslider a{
	display:block;
	width:580px;
	height:324px;
	margin:0 60px;
}
body.home #movieslider .slick-arrow{
	z-index:10;
	width:80px;
	height:80px;
}
body.home #movieslider .slick-arrow::before{
	display:block;
	content:"";
	width:80px;
	height:80px;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
body.home #movieslider .slick-prev{
	left:calc(50% - 390px);
}
body.home #movieslider .slick-prev::before{
	background-image: url(img/common/arrow_l.svg);
}
body.home #movieslider .slick-next{
	right:calc(50% - 390px);
}
body.home #movieslider .slick-next::before{
	background-image: url(img/common/arrow_r.svg);
}
/* plan */
body.home #plan{
	padding:64px 0 80px;
}
body.home #plan .inner{
	padding:56px 40px;
	border-radius:10px;
	box-shadow:0 0 10px rgba(0,0,0,.2);
}
body.home #plan .inner li{
	width:calc((100% - 160px) / 3);
	position:relative;
}
body.home #plan .inner li+li{
	margin-left:80px;
}
body.home #plan .inner li+li:before{
	display:block;
	content:"";
	width:1px;
	height:100%;
	background:#ddd;
	position:absolute;
	left:-40px;
	top:0;
	z-index:2;
}
body.home #plan .inner li .left,
body.home #plan .inner li .right{
	float:none;
}
body.home #plan .inner li .image{
	display:block;
	height:0;
	padding-top:62.5%;
	background:url(img/top/plan1.jpg) center center no-repeat;
	background-size:cover;
	border-radius:10px;
}
body.home #plan .inner li:nth-of-type(2) .image{background-image:url(img/top/plan2.jpg)}
body.home #plan .inner li:nth-of-type(3) .image{background-image:url(img/top/plan3.jpg)}
body.home #plan .inner li h2{
	margin:20px 0;
	padding:0;
	font-size:14px;
	font-weight:normal;
	text-align:center;
	color:#32c3bc;
}
body.home #plan .inner li h2 b{
	display:block;
	font-size:24px;
}
body.home #plan .inner li:nth-of-type(2) h2{color:#a9c42a}
body.home #plan .inner li:nth-of-type(3) h2{color:#ec6c00}
body.home #plan .inner li .left a{
	display:block;
	width:120px;
	height:40px;
	margin:1em auto 0;
	line-height:40px;
	text-align:center;
	font-size:14px;
	border:1px #ddd solid;
	border-radius:6px;
}

/* link2 */
body.home #link2 a{
	display:block;
	box-shadow:0 0 10px rgb(0 0 0 / 20%);
}

/* search */
body.home #search{
	margin-bottom:154px;
}
body.home #search .left{
	width:440px;
}
body.home #search .left h2{
	margin:0 0 32px;
	font-size:16px;
	color:#ec6c00;
	line-height:1;
}
body.home #search .left h2 b{
	display:block;
	margin-bottom:16px;
	font-size:48px;
	font-weight:bold;
}
body.home #search .left a{
	color:#f59702;
	text-decoration:underline;
}
body.home #search .left .arrow{
	width:280px;
	height:50px;
	margin-top:30px;
	line-height:50px;
	background:#f59702;
	color:#fff;
	font-size:20px;
	text-align:center;
	text-decoration:none;
	border-radius:4px;
	box-shadow:0 3px 0 #c47902;
}
body.home #search .left .arrow+.arrow{
	margin-top:0.7em;
}
body.home #search .right{
	width:720px;
	height:480px;
	border-radius:10px;
	background:url(img/top/search.jpg) center center no-repeat;
	background-size:cover;
}
/* review */
body.home #review{
	margin:80px 0 300px;
	position:relative;
}
body.home #review:before{
	display:block;
	content:"";
	width:100%;
	height:100%;
	background:#f4f2ec;
	position:absolute;
	left:0;
	top:0;
	z-index:-1
}
body.home #review h2{
	margin:0;
	padding:10px 0 0;
	line-height:1;
	font-size:16px;
	font-weight:bold;
	line-height:1.3;
	text-align:center;
	color:#ec6c00;
	position:relative;
	overflow:hidden;
}
body.home #review h2:before{
	display:block;
	content:"";
	width:0;
	height:0;
	background:transparent;
	border-top:38px #fff solid;
	border-bottom:38px #f4f2ec solid;
	border-left:50vw #fff solid;
	border-right:50vw #f4f2ec solid;
	position:absolute;
	left:50%;
	top:0;
	z-index:-1;
	transform:translateX(-50%);
}
body.home #review h2 b{
	display:block;
	margin-bottom:10px;
	font-size:48px;
}
body.home #review h3{
	margin:32px 0;
	padding:0;
	font-size:32px;
	font-weight:bold;
	text-align:center;
}

body.home #review .inner{
	position:relative;
	padding-top:64px;
}
body.home #review .toreview{
	display:block;
	width:auto;
	height:40px;
	padding:0 8px;
	line-height:40px;
	background:#fff;
	font-size:14px;
	text-align:center;
	border-radius:6px;
	cursor:pointer;
	position:absolute;
	right:0;
	top:-40px;
}

body.home #review .review_box{
	max-height:1400px;
	margin:0 40px;
	padding:0 40px 40px;
	overflow-y:scroll;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

body.home #review .expEntry{
	height:228px;/*194*/
	padding:40px 32px 64px 50px;
	border-radius:10px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
}
body.home #review .expEntry.open{
	height:auto;
}
body.home #review .expEntry+.expEntry{
	margin-top:26px;
}
body.home #review .expEntry .profile{
	display:inline-block;
	width:450px;
	float:left;
	margin-right:48px;
	margin-bottom:48px;
}
body.home #review .expEntry .name{
	margin-top:0;
}
body.home #review .expEntry .profile .cat{
	display:inline-block;
	padding:0 6px;
	border:1px #ddd solid;
	border-radius:6px;
	font-weight:bold;
}
body.home #review .expEntry .profile .cat.es{color:#f59702}
body.home #review .expEntry .profile .cat.jhs1{color:#8fc320}
body.home #review .expEntry .profile .cat.jhs2{color:#f39da6}
body.home #review .expEntry .profile .cat.hs{color:#32c3bc}
/*body.home #review h3 b{
	color:#e44a51;
}
body.home #review section+section{
	margin-top:80px;
}
body.home #review h4{
	margin:0 0 40px;
	padding:0 0 0 34px;
	font-size:32px;
	font-weight:bold;
	color:#32c3bc;
	line-height:1.4;
	position:relative;
}
body.home #review h4:before{
	display:block;
	content:"";
	width:8px;
	height:100%;
	background:#6fd5d0;
	border-radius:4px;
	position:absolute;
	left:0;
	top:0;
}
body.home #review section:nth-of-type(2) h4{color:#a9c42a}
body.home #review section:nth-of-type(2) h4:before{background:#c3d669}
body.home #review section:nth-of-type(3) h4{color:#ea717e}
body.home #review section:nth-of-type(3) h4:before{background:#f09ba4}
body.home #review section:nth-of-type(4) h4{color:#f59702}
body.home #review section:nth-of-type(4) h4:before{background:#f8b64d}

body.home #review section>.left{
	width:calc(50% - 12px);
	height:296px;
	padding:38px 40px 70px;
	background:#fff;
	border-radius:10px;
	box-shadow:0 0 10px rgba(0,0,0,.2);
	position:relative;
	overflow:hidden;
		-webkit-transition: all .3s;
	transition: all .3s;
}
body.home #review section>.left:nth-of-type(2n){
	margin-left:24px;
}
body.home #review section>.left.open{
	height:auto;
		-webkit-transition: all .3s;
	transition: all .3s;
}
body.home #review .expEntry{
	padding:0;
	border-bottom:0;
}
body.home #review .expEntry .tag{
	display:none;
}*/
body.home #review .more{
	display:block;
	width:100%;
	height:56px;
	line-height:56px;
	background:#f8f8f8;
	text-align:center;
	border-radius:0 0 10px 10px;
	cursor:pointer;
	position:absolute;
	left:0;
	bottom:0;
}
body.home #review .more i{
	display:inline-block;
	width:8px;
	height:8px;
	margin-left:0.5em;
	border-right:2px #ec6c00 solid;
	border-bottom:2px #ec6c00 solid;
	transform:rotate(45deg) translateY(-3px);
	transform-origin:center;
}
body.home #review .open .more i{
	border-right:0;
	border-bottom:0;
	border-left:2px #ec6c00 solid;
	border-top:2px #ec6c00 solid;
	transform-origin:left;
}
body.home #review .link{
	margin:38px 0 0;
	padding:0;
	position:relative;
	overflow:hidden;
}
body.home #review .link:before{
	display:block;
	content:"";
	width:0;
	height:0;
	background:transparent;
	border-top:33px #f4f2ec solid;
	border-bottom:33px #fff solid;
	border-left:50vw #f4f2ec solid;
	border-right:50vw #fff solid;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:-1;
	transform:translateX(-50%);
}
body.home #review .link .arrow{
	width:320px;
	height:62px;
	margin:0 auto 3px;
	line-height:62px;
	text-align:center;
	color:#fff;
	border-radius:5px;
	background:#f59702;
	box-shadow:0 3px 0 #c47902;
}
/* reasons */
body.home #reasons{
	margin:160px 0;
	position:relative;
}
body.home #reasons:before{
	display:block;
	content:"";
	width:100%;
	height:100%;
	background:#f4f2ec;
	position:absolute;
	left:0;
	top:0;
	z-index:-1
}
body.home #reasons h2{
	margin:0;
	padding:10px 0 0;
	line-height:1;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	color:#ec6c00;
	position:relative;
	overflow:hidden;
}
body.home #reasons h2:before{
	display:block;
	content:"";
	width:0;
	height:0;
	background:transparent;
	border-top:38px #fff solid;
	border-bottom:38px #f4f2ec solid;
	border-left:50vw #fff solid;
	border-right:50vw #f4f2ec solid;
	position:absolute;
	left:50%;
	top:0;
	z-index:-1;
	transform:translateX(-50%);
}
body.home #reasons h2 b{
	display:block;
	margin-bottom:10px;
	font-size:48px;
}
body.home #reasons p{
	margin:20px 40px 30px;
	font-size:18px;
	text-align:center;
}
body.home #reasons section+section{
	margin-top:40px;
}
body.home #reasons section .left{
	width:580px;
	height:320px;
	background:url(img/top/reasons1.jpg) center center no-repeat;
	background-size:cover;
}
body.home #reasons section:nth-of-type(2) .left{background-image:url(img/top/reasons2.jpg)}
body.home #reasons section:nth-of-type(3) .left{background-image:url(img/top/reasons3.jpg)}
body.home #reasons section:nth-of-type(4) .left{background-image:url(img/top/reasons4.jpg)}
body.home #reasons section:nth-of-type(5) .left{background-image:url(img/top/reasons5.jpg)}
body.home #reasons section:nth-of-type(6) .left{background-image:url(img/top/reasons6.jpg)}

body.home #reasons .right{
	width:580px;
	padding-top:20px;
	color:#666;
}
body.home #reasons .right h3{
	font-size:20px;
	font-weight:bold;
	color:#1b1b1b;
	line-height:1.7;
}
body.home #reasons .right h3 b{
	display:block;
	font-size:32px;
}
body.home #reasons .right a{
	display:block;
	width:120px;
	height:40px;
	margin-top:20px;
	line-height:40px;
	text-align:center;
	font-size:14px;
	background:#fff;
	color:#1b1b1b;
	border:1px #ddd solid;
	border-radius:5px;
}
body.home #reasons .link{
	margin:80px 0 0;
	padding:0;
	position:relative;
	overflow:hidden;
}
body.home #reasons .link:before{
	display:block;
	content:"";
	width:0;
	height:0;
	background:transparent;
	border-top:33px #f4f2ec solid;
	border-bottom:33px #fff solid;
	border-left:50vw #f4f2ec solid;
	border-right:50vw #fff solid;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:-1;
	transform:translateX(-50%);
}
body.home #reasons .link .arrow{
	width:320px;
	height:62px;
	margin:0 auto 3px;
	line-height:62px;
	text-align:center;
	color:#fff;
	border-radius:5px;
	background:#f59702;
	box-shadow:0 3px 0 #c47902;
}
/* study */
body.home #study{
	padding:160px 0 100px;
}
body.home #study h2{
	margin:0;
	padding:0;
	line-height:1;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	color:#ec6c00;
}
body.home #study h2 b{
	display:block;
	margin-bottom:10px;
	font-size:48px;
}
body.home #study p{
	margin:20px 0 40px;
	padding:0;
	text-align:center;
	font-size:18px;
}
body.home #study li{
	width:calc((100% - 120px) / 3);
	box-shadow:0 0 10px rgba(0,0,0,.2);
	border-radius:10px;
}
body.home #study li+li{
	margin-left:60px;
}
body.home #study li h3{
	margin:0;
	padding:32px 0;
	text-align:center;
	background:#32c3bc;
	color:#fff;
	font-size:14px;
	font-weight:normal;
	border-radius:10px 10px 0 0;
}
body.home #study li:nth-of-type(2) h3{background:#a9c42a}
body.home #study li:nth-of-type(3) h3{background:#f59702}
body.home #study li h3 b{
	display:block;
	font-size:24px;
	font-weight:normal;
}
body.home #study li a{
	display:block;
	padding:21px 80px 21px 32px;
	line-height:2;
	position:relative;
}
body.home #study li a+a{
	border-top:1px #ddd solid;
}
body.home #study li a:after{
	display:block;
	content:"";
	width:8px;
	height:8px;
	border-top:2px #32c3bc solid;
	border-right:2px #32c3bc solid;
	transform:rotate(45deg) translate(-50%,0);
	position:absolute;
	right:32px;
	top:50%;
	z-index:2;
}
body.home #study li:nth-of-type(2) a:after{border-color:#a9c42a}
body.home #study li:nth-of-type(3) a:after{border-color:#ec6c00}
/* philosophy */
body.home #philosophy{
	margin:160px 0;
	position:relative;
}
body.home #philosophy:before{
	display:block;
	content:"";
	width:100%;
	height:100%;
	background:#f4f2ec;
	position:absolute;
	left:0;
	top:0;
	z-index:-1
}
body.home #philosophy h2{
	margin:0;
	padding:10px 0 0;
	line-height:1;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	color:#ec6c00;
	position:relative;
	overflow:hidden;
}
body.home #philosophy h2:before{
	display:block;
	content:"";
	width:0;
	height:0;
	background:transparent;
	border-top:38px #fff solid;
	border-bottom:38px #f4f2ec solid;
	border-left:50vw #fff solid;
	border-right:50vw #f4f2ec solid;
	position:absolute;
	left:50%;
	top:0;
	z-index:-1;
	transform:translateX(-50%);
}
body.home #philosophy h2 b{
	display:block;
	margin-bottom:10px;
	font-size:48px;
}
body.home #philosophy p{
	margin:20px 40px 30px;
	font-size:18px;
	text-align:center;
}
body.home #philosophy .inner{
	background:#fff;
	border-radius:10px;
	box-shadow:0 0 10px rgba(0,0,0,.2);
}
body.home #philosophy .inner td{
	width:50%;
	padding:52px 58px;
	vertical-align:top;
}
body.home #philosophy .inner td+td{border-left:1px #ddd solid}
body.home #philosophy .inner tr:nth-of-type(n+2) td{border-top:1px #ddd solid}
body.home #philosophy .inner td a{
	display:block;
}
body.home #philosophy .inner td a h3{
	height:91px;
	margin:0 0 16px;
	padding-left:130px;
	line-height:91px;
	background:url(img/top/philosophy1.png) left center no-repeat;
	background-size:88px;
}
body.home #philosophy .inner td a.p2 h3{
	background-image:url(img/top/philosophy2.png);
	background-size:89px;
}
body.home #philosophy .inner td a.p3 h3{
	background-image:url(img/top/philosophy3.png);
	background-size:94px;
}
body.home #philosophy .inner td a.p4 h3{
	background-image:url(img/top/philosophy4.png);
	background-size:117px;
}
body.home #philosophy .inner td a.p5 h3{
	background-image:url(img/top/philosophy5.png);
	background-size:117px;
}
body.home #philosophy .inner td a.p6 h3{
	background-image:url(img/top/philosophy6.png);
	background-size:123px;
}
body.home #philosophy .inner td a .arrow:after{border-color:#000}
body.home #philosophy .link{
	margin:0;
	padding:80px 0 0;
	position:relative;
	overflow:hidden;
}
body.home #philosophy .link:before{
	display:block;
	content:"";
	width:0;
	height:0;
	background:transparent;
	border-top:33px #f4f2ec solid;
	border-bottom:33px #fff solid;
	border-left:50vw #f4f2ec solid;
	border-right:50vw #fff solid;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:-1;
	transform:translateX(-50%);
}
body.home #philosophy .link .arrow{
	width:320px;
	height:62px;
	margin:0 auto 3px;
	line-height:62px;
	text-align:center;
	color:#fff;
	border-radius:5px;
	background:#f59702;
	box-shadow:0 3px 0 #c47902;
}
/* faq */
body.home #faq .left{
	width:320px;
}
body.home #faq .left h2{
	margin:0;
	padding:10px 0 0;
	line-height:1;
	font-size:16px;
	font-weight:bold;
	color:#ec6c00;
}
body.home #faq .left h2 b{
	display:block;
	margin-bottom:16px;
	font-size:40px;
}
body.home #faq .left a{
	display:block;
	width:120px;
	height:40px;
	margin-top:40px;
	line-height:40px;
	text-align:center;
	border-radius:3px;
	border:1px #ddd solid;
	background:#fff;
}
body.home #faq .right{
	width:calc(100% - 320px);
}
body.home #faq .right dl{
	margin:0;
	padding:20px 0;
	border-top:1px #ddd solid;
	cursor:pointer;
}
body.home #faq .right dl:last-child{
	border-bottom:1px #ddd solid;
}
body.home #faq .right dt{
	margin:0;
	padding:0 26px 0 40px;
	text-indent:-40px;
	position:relative;
}
body.home #faq .right dt:after{
	display:inline-block;
	content:"＋";
	font-weight:bold;
	text-indent:0;
	position:absolute;
	right:6px;
	top:0;
}
body.home #faq .right dl.open dt:after{
	content:"－";
}
body.home #faq .right dd{
	display:none;
	margin:0;
	padding:10px 26px 0 40px;
	text-indent:-40px;
}
body.home #faq .right dl i{
	display:inline-block;
	width:40px;
	padding-left:10px;
	letter-spacing:3px;
	font-style:normal;
	text-indent:0;
}
/* news */
body.home #news{
	padding:120px 0 180px;
	position:relative;
}
body.home #news .inner.shadowbox{
	top:100px;
}
body.home #news .inner.shadowbox+.inner{
	margin-top:80px;
}
body.home #news .left{
	width:320px;
}
body.home #news .left h2{
	margin:0;
	padding:10px 0 0;
	line-height:1;
	font-size:16px;
	font-weight:bold;
	color:#ec6c00;
}
body.home #news .left h2 b{
	display:block;
	margin-bottom:16px;
	font-size:40px;
}
body.home #news .left a{
	display:block;
	width:120px;
	height:40px;
	margin-top:40px;
	line-height:40px;
	text-align:center;
	border-radius:3px;
	border:1px #ddd solid;
	background:#fff;
}
body.home #news .right{
	width:calc(100% - 320px);
}
body.home #news .right a{
	display:block;
	margin:0;
	padding:20px 42px 20px 12px;
	border-top:1px #ddd solid;
}
body.home #news .right a:last-child{
	border-bottom:1px #ddd solid;
}
body.home #news .right a:after{
	border-color:#000;
}
body.home #news .right a .cat{
	display:inline-block;
	width:88px;
	height:24px;
	margin:0 6px;
	line-height:24px;
	text-align:center;
	background:#f59702;
	color:#fff;
	font-size:14px;
	border-radius:3px;
}
body.home #news .right a span{
	display:block;
}
body.home #news .right a span.date{
	float:left;
	width:11em;
}
body.home #news .right a span.title{
	float:right;
	width:calc(100% - 11em);
}
/* system */
body.home #system{
	position:relative;
}
body.home #system h2{
	margin:0;
	padding:0 0 40px;
	line-height:1;
	font-size:16px;
	font-weight:bold;
	color:#ec6c00;
	text-align:center;
/*	position:absolute;
	left:50%;
	top:-20px;
	transform:translateX(-50%);*/
}
body.home #system .inner{
	margin-bottom:180px;
	padding:96px 0 40px;
	border-radius:10px;
	box-shadow:0 0 10px rgba(0,0,0,.2);
	background:#fff;
}
body.home #system h2 b{
	display:block;
	margin-bottom:16px;
	font-size:40px;
}
body.home #system td{
	width:calc(100% / 3);
	padding:130px 40px 24px;
	border-right:1px #ddd solid;
	color:#666;
	background:url(img/top/system1.png) center 20px no-repeat;
	background-size:70px;
}
body.home #system td.s2{
	background:url(img/top/system2.png) center 20px no-repeat;
	background-size:74px;
}
body.home #system td.s3{
	background:url(img/top/system3.png) center 20px no-repeat;
	background-size:91px;
}
body.home #system td.s4{
	background:url(img/top/system4.png) center 20px no-repeat;
	background-size:93px;
}
body.home #system td.s5{
	background:url(img/top/system5.png) center 20px no-repeat;
	background-size:93px;
}
body.home #system td.blank{background:none}
body.home #system td:nth-of-type(3n){
	border-right:0;
}
body.home #system td:nth-of-type(3n+1){
	clear:both;
}
body.home #system tr:nth-of-type(n+4){
	margin-top:40px;
}
body.home #system td.blank{
	height:40px;
	padding:0;
	border:0;
}
body.home #system td h3{
	margin:0 0 16px;
	padding:0;
	font-size:18px;
	text-align:center;
	color:#1b1b1b;
}
body.home #system td a{
	display:block;
	width:120px;
	height:40px;
	margin:16px auto 0;
	line-height:40px;
	text-align:center;
	border-radius:3px;
	border:1px #ddd solid;
	background:#fff;
}
body.home #system td.s2 div{
	margin:0 -4px;
}


/* campaign
-----------------------------------------------------------*/
body.page-template-camp-page main img{
	width:100%;
}


/* news
-----------------------------------------------------------*/
.newsEntry{
	padding:38px 0;
	border-bottom:1px #ddd solid;
		-webkit-transition: opacity 1s;
	transition: opacity 1s;
}
body.single-news .newsEntry{
	border-bottom:0;
}
.newsEntry.hide{
	height:0;
	padding:0;
	border-bottom:0;
	opacity:0;
	overflow:hidden;
		-webkit-transition: opacity 1s;
	transition: opacity 1s;
}
.newsEntry:first-child{
	padding-top:0;
}
.newsEntry .date{
	display:inline-block;
	margin-left:10px;
}
.newsEntry .cat{
	display:inline-block;
	min-width:88px;
	height:24px;
	margin-left:10px;
	padding:0 10px;
	line-height:24px;
	text-align:center;
	font-size:14px;
	background:#f59702;
	color:#fff;
	border-radius:4px;
}
.newsEntry .title{
	display:block;
	margin:10px 0 0;
	font-size:20px;
	font-weight:bold;
}
.newsEntry .title.new:before{
	display:inline-block;
	content:"NEW";
	margin-right:10px;
	color:#e44a51;
}
body.post-type-archive-news main #more{
	width:120px;
	height:40px;
	margin:60px auto 0;
	line-height:40px;
	text-align:center;
	border:1px #ddd solid;
	border-radius:4px;
	cursor:pointer;
}

/* 202304 */
.newsEntry .tag{
	margin-top:10px;
}
.newsEntry .tag img{
	width:52px;
	vertical-align:middle;
	margin-right:10px;
}
.newsEntry .tag a{
	color:#707070;
	border-radius:3px;
	border:1px #707070 solid;
	padding:3px 5px;
	font-size: 13px;
	margin-right:10px;
}
.snsList{
	display:flex;
	line-height:1;
}
.snsList .snsItem:not(:last-child){
	margin-right:8px;
}
.snsList .snsItem.hatena iframe{
	width:20px !important;
	height:20px !important;
}
.relativePosts h3{
	background:#f4f2ec;
	text-align: center;
	letter-spacing: 2px;
	font-size:24px;
	font-weight:bold;
	margin:50px 0 40px;
}
.relativePosts .flex{
	display:flex;
	justify-content:center;
}
.relativePosts .flex a{
	display:block;
	width:228px;
	padding:10px;
	border-radius:10px;
	box-shadow:0px 1px 10px 3px rgba(0, 0, 0, 0.2);
}
.relativePosts .flex a:nth-of-type(4){
	display:none;
}
.relativePosts .flex a+a{
	margin-left:34px;
}
.relativePosts .flex a .image{
	display:block;
	width:100%;
	height:0;
	margin-bottom:8px;
	padding-top:74.42%;
	background-size:cover;
	background-position:center center;
	background-color:#dbdbdb;
}
.relativePosts .flex a .title{
	display:block;
	line-height:1.7;
}


/* exp
-----------------------------------------------------------*/
/* expNav */
#expNav li{
	width:calc((100% - 63px) / 4);
}
#expNav li+li{
	margin-left:21px;
}
#expNav li a{
	display:block;
	padding:14px 0;
	text-align:center;
	font-size:18px;
	font-weight:bold;
	line-height:1.3;
	background:#f8f8f8;
	border:2px #edeceb solid;
	box-shadow:0 2px 0 #edeceb;
	border-radius:4px;
	color:#32c3bc;
}
#expNav li:nth-of-type(2) a{color:#8fc320}
#expNav li:nth-of-type(3) a{color:#f39da6}
#expNav li:nth-of-type(4) a{color:#ec6c00}
#expNav li a span{
	display:block;
	font-size:24px;
}
#expNav li a:hover,
#expNav li.current a{
	background:#f39800;
	color:#fff;
	border-color:#f39800;
	box-shadow:0 2px 0 #c27a00;
}
#expNav li a:after{border-color:#32c3bc}
#expNav li:nth-of-type(2) a:after{border-color:#8fc320}
#expNav li:nth-of-type(3) a:after{border-color:#f39da6}
#expNav li:nth-of-type(4) a:after{border-color:#ec6c00}
#expNav li a:hover:after,
#expNav li.current a:after{border-color:#fff}

/* expEntry */
.expEntry{
	width:100%;
	padding:40px 0;
	background:#fff;
	border-bottom:1px #ddd solid;
	position:relative;
	overflow:hidden;
	opacity:1;
		-webkit-transition: opacity .5s;
	transition: opacity .5s;
}
.expEntry.hide{
	height:0;
	padding:0;
	border-bottom:0;
	overflow:hidden;
	opacity:0;
		-webkit-transition: opacity .5s;
	transition: opacity .5s;
}
.expEntry:nth-of-type(1){padding-top:0}
.expEntry .thumb{
	width:80px;
	height:80px;
	margin:0 22px 0 0;
	padding:0;
	border:1px #ddd solid;
	border-radius:6px;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}
.expEntry .name{
	margin-top:10px;
	font-size:14px;
}
.expEntry .name b{
	font-size:16px;
	font-weight:bold;
}
.expEntry .up{
	font-size:15px;
	text-shadow:
		#fff 2px 0px,  #fff -2px 0px,
		#fff 0px -2px, #fff 0px 2px,
		#fff 2px 2px , #fff -2px 2px,
		#fff 2px -2px, #fff -2px -2px,
		#fff 1px 2px,  #fff -1px 2px,
		#fff 1px -2px, #fff -1px -2px,
		#fff 2px 1px,  #fff -2px 1px,
		#fff 2px -1px, #fff -2px -1px;
	background:url(img/common/up.png) right bottom no-repeat;
	background-size:90px;
	line-height:1;
	padding:23px 16px 6px;
}
.expEntry .up i{
	font-style:normal;
	font-size:18px;
	font-weight:bold;
}
.expEntry .up b{
	font-size:48px;
	color:#ec6c00;
}
.expEntry .up em{
	font-style:normal;
	font-size:18px;
	font-weight:bold;
	color:#ec6c00;
}
.expEntry .title{
	margin:10px 0 6px;
	font-size:20px;
	font-weight:bold;
	line-height:1.3;
}
.expEntry .title b{
	color:#e44a51;
}
.expEntry .pass{
	margin-top:10px;
	font-size:20px;
	font-weight:bold;
	color:#e44a51;
}
.expEntry .pass span{
	font-size:16px;
}
.expEntry .pass b{
	display:block;
	line-height:1;
	font-size:26px;
	font-weight:bold;
	text-align:right;
}
.expEntry .free{
	font-size:20px;
	font-weight:bold;
	color:#e44a51;
}
.expEntry .tag{
	margin-top:20px;
}
.expEntry .tag span{
	display:inline-block;
	height:30px;
	padding:0 16px;
	line-height:30px;
	background:#f39800;
	color:#fff;
	text-align:center;
}
.expEntry .tag span+span{margin-left:16px}

/* list(page) */
body.page.exp main h2{
	margin:40px 0 0;
	padding:20px;
	line-height:1.3;
	font-size:28px;
	font-weight:bold;
	color:#32c3bc;
	background:#f8f8f8;
	border:1px #edeceb solid;
	border-radius:3px;
}
body.page.exp main h2:nth-of-type(2){color:#8fc320}
body.page.exp main h2:nth-of-type(3){color:#f39da6}
body.page.exp main h2:nth-of-type(4){color:#ec6c00}
body.page.exp main h2:before{
	display:none;
}
body.page.exp main h2:after{
	display:block;
	content:"";
	clear:both;
}
body.page.exp main h2 a{
	display:block;
	float:right;
	font-size:16px;
	font-weight:normal;
	line-height:36px;
	padding-right:40px;
}
body.page.exp main h2 a:after{
	border-color:#ed724d;
}
body.page.exp .expEntry{
	padding:40px 160px 40px 40px;
	position:relative;
}
/*body.page.exp .expEntry .content{
	height:3.8em;
	overflow:hidden;
	position:relative;
}
body.page.exp .expEntry .content:after{
	display:block;
	content:"…";
	width:1.4em;
	line-height:1.7;
	text-align:right;
	background:#fff;
	position:absolute;
	right:0;
	bottom:0;
}*/
body.page.exp .expEntry a{
	display:block;
	width:120px;
	height:40px;
	line-height:40px;
	text-align:center;
	border:1px #ddd solid;
	border-radius:4px;
	position:absolute;
	right:0;
	bottom:50px;
}


/* indivisual
-----------------------------------------------------------*/
/* archive */
body.archive-indivisual section+section{
	margin-top:120px;
}
body.archive-indivisual #plan ul{
	display:flex;
	flex-wrap:wrap;
}
body.archive-indivisual #plan li{
	width:calc(50% - 20px);
	padding-bottom:50px;
	position:relative;
}
body.archive-indivisual #plan li:nth-child(2n+1){
	margin-right:40px;
	clear:both;
}
body.archive-indivisual #plan li:nth-child(n+3){
	margin-top:70px;
}
body.archive-indivisual #plan li a{
	display:block;
}
body.archive-indivisual #plan li img{
	display:block;
	width:100%;
	height:auto;
}
body.archive-indivisual #plan li dl{
	margin: 0 0 16px;
}
body.archive-indivisual #plan li dt{
	font-weight:bold;
}
body.archive-indivisual #plan li dd{
	margin:0;
	padding:0 0 0 18px;
	position:relative;
}
body.archive-indivisual #plan li dd:before{
	display:block;
	content:"";
	width:6px;
	height:6px;
	border-radius:100%;
	background:#f59702;
	position:absolute;
	left:5px;
	top:12px;
}
body.archive-indivisual #plan li .more{
	position:absolute;
	left:50%;
	bottom:0;
	transform:translateX(-50%);
}
/* feature */
body.archive-indivisual #feature ul{
	display:flex;
	flex-wrap:wrap;
	padding:40px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
	border-radius:10px;
}
body.archive-indivisual #feature li{
	width:calc(50% - 40px);
	padding-bottom:50px;
	position:relative;
}
body.archive-indivisual #feature li:nth-child(2n+1){
	margin-right:80px;
	clear:both;
}
body.archive-indivisual #feature li:nth-child(n+3){
	margin-top:70px;
}
body.archive-indivisual #feature li img{
	display:block;
	width:100%;
	height:auto;
}
body.archive-indivisual #feature li h3{
	margin:38px 0 12px;
	font-size:19px;
	font-weight:bold;
	text-align:center;
}
body.archive-indivisual #feature li h3 span{
	display:block;
	font-size:14px;
	color:#ec6c00;
}
body.archive-indivisual #feature li p{
	margin:1em 0;
}
body.archive-indivisual #feature li .more{
	position:absolute;
	left:50%;
	bottom:0;
	transform:translateX(-50%);
}
/* exp */
body.archive-indivisual #exp,
body.single-indivisual #exp{
	position:relative;
}
body.archive-indivisual #exp .expList,
body.single-indivisual #exp .expList{
	padding:40px 40px 74px;
	background:#f4f2ec;
}
body.archive-indivisual #exp .expList .expEntry,
body.single-indivisual #exp .expList .expEntry{
	padding:40px;
	border-bottom:0;
	border-radius:10px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
}
body.archive-indivisual #exp .expList .expEntry+.expEntry,
body.single-indivisual #exp .expList .expEntry+.expEntry{
	margin-top:40px;
}
body.archive-indivisual #exp .expList .expEntry .tag,
body.single-indivisual #exp .expList .expEntry .tag{
	display:none;
}
body.archive-indivisual #exp a,
body.single-indivisual #exp a{
	display:block;
	width:320px;
	height:64px;
	line-height:64px;
	text-align:center;
	background:#f59702;
	color:#fff;
	box-shadow:0 2px 0 #c47902;
	border-radius:4px;
	position:absolute;
	bottom:0;
	left:50%;
	transform:translate(-50%,50%);
}

body.archive-indivisual #faq h2{
	position:relative;
}
body.archive-indivisual #faq h2 a.more{
	font-size:16px;
	font-weight:normal;
	position:absolute;
	right:0;
	top:2px;
}
body.archive-indivisual #faq dl{
	margin:0;
	padding:20px 0;
	border-top:1px #ddd solid;
	cursor:pointer;
}
body.archive-indivisual #faq dl:last-child{
	border-bottom:1px #ddd solid;
}
body.archive-indivisual #faq dt{
	margin:0;
	padding:0 26px 0 40px;
	text-indent:-40px;
	position:relative;
}
body.archive-indivisual #faq dt:after{
	display:inline-block;
	content:"＋";
	font-weight:bold;
	text-indent:0;
	position:absolute;
	right:6px;
	top:0;
}
body.archive-indivisual #faq dl.open dt:after{
	content:"－";
}
body.archive-indivisual #faq dd{
	display:none;
	margin:0;
	padding:10px 26px 0 40px;
	text-indent:-40px;
}
body.archive-indivisual #faq dl i{
	display:inline-block;
	width:40px;
	padding-left:10px;
	letter-spacing:3px;
	font-style:normal;
	text-indent:0;
}

/* single */
body.single-indivisual .parentTitle{
	display:block;
	font-size:20px;
}
body.single-indivisual #point{
	margin-bottom:32px;
	padding:32px 40px;
	border-radius:10px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
}
body.single-indivisual #point li{
	width:calc(50% - 20px);
	padding-left:14px;
	position:relative;
}
body.single-indivisual #point li:nth-of-type(2n){
	margin-left:40px;
}
body.single-indivisual #point li.col2{
	width:100%;
}
body.single-indivisual #point li.nomgn{
	margin-left:0;
}
body.single-indivisual #point li:before{
	display:block;
	content:"";
	width:6px;
	height:6px;
	background:#f59702;
	border-radius:100%;
	position:absolute;
	left:0;
	top:11px;
}
body.single-indivisual section+section{
	margin-top:68px;
}
body.single-indivisual section:not(#exp) .left{
	width:calc(100% - 220px);
}
body.single-indivisual section:not(#exp) .right{
	width:200px;
}
body.single-indivisual section:not(#exp) .imgS .left{
	width:calc(100% - 280px);
}
body.single-indivisual section:not(#exp) .imgS .right{
	width:260px;
}
body.single-indivisual section:not(#exp) .imgM .left{
	width:calc(100% - 310px);
}
body.single-indivisual section:not(#exp) .imgM .right{
	width:290px;
}
body.single-indivisual section:not(#exp) .imgL .left{
	width:calc(100% - 340px);
}
body.single-indivisual section:not(#exp) .imgL .right{
	width:320px;
}
body.single-indivisual section:not(#exp) .spimg img{
	display:none;
}
body.single-indivisual section:not(#exp) b{
	font-size:22px;
}


/* reason
-----------------------------------------------------------*/
body.page.reason section+section{
	margin-top:80px;
}
body.page.reason section div.left{
	width:400px;
}
body.page.reason section div.right{
	width:calc(100% - 432px);
}
body.page.reason section .right h3{
	margin:20px 0 10px;
	font-size:20px;
	font-weight:bold;
}
body.page.reason section .right h3 span{
	display:block;
}
body.page.reason section .box{
	margin-top:40px;
	padding:40px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
	border-radius:10px;
}
body.page.reason #curriculum .box{
	padding:0;
}
body.page.reason .box img{
	display:block;
	width:auto;
	margin:0 auto;
}
body.page.reason #curriculum .box table{
	width:100%;
	border-collapse:collapse;
}
body.page.reason #curriculum .box table tr+tr{
	border-top:1px #ddd solid;
}
body.page.reason #curriculum .box table th{
	width:184px;
}
body.page.reason #curriculum .box table td{
	position:relative;
}
body.page.reason #curriculum .box table td:after{
	display:block;
	content:"";
	clear:both;
}
body.page.reason #curriculum .box table ul{
	width:calc(100% - 280px);
	margin:40px 0;
	padding-left:50px;
	list-style:none;
}
body.page.reason #curriculum .box table ul:nth-of-type(1){
	width:280px;
	border-left:1px #ddd solid;
}
body.page.reason #curriculum .box table ul li{
	position:relative;
}
body.page.reason #curriculum .box table ul li:before{
	display:block;
	content:"";
	width:6px;
	height:6px;
	background:#f59702;
	border-radius:100%;
	position:absolute;
	left:-14px;
	top:12px;
}
body.page.reason #curriculum .box table td span{
	position:absolute;
	right:40px;
	bottom:40px;
}
body.page.reason #curriculum .box table td .image{
	margin:40px 0;
	padding:0 40px;
	border-left:1px #ddd solid;
}
body.page.reason #curriculum .box table td .image img{
	width:100%;
}
body.page.reason #step .box{
	text-align:center;
}
body.page.reason #system .box h3{
	margin:0;
	font-size:20px;
	font-weight:bold;
}
body.page.reason #system .box h3+img{
	margin:32px auto;
}
body.page.reason #exp{
	position:relative;
}
body.page.reason #exp .expList{
	padding:40px 40px 74px;
	background:#f4f2ec;
}
body.page.reason #exp .expList .expEntry{
	padding:40px;
	border-bottom:0;
	border-radius:10px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
}
body.page.reason #exp .expList .expEntry+.expEntry{
	margin-top:40px;
}
body.page.reason #exp a{
	display:block;
	width:320px;
	height:64px;
	line-height:64px;
	text-align:center;
	background:#f59702;
	color:#fff;
	box-shadow:0 2px 0 #c47902;
	border-radius:4px;
	position:absolute;
	bottom:0;
	left:50%;
	transform:translate(-50%,50%);
}


/* feature
-----------------------------------------------------------*/
body.page.feature section:not(.contact_cv){
	padding:40px;
	border-radius:10px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
	position:relative;
}
body.page.feature section+section{
	margin-top:40px;
}
body.page.feature section .title{
	padding-bottom:40px;
	border-bottom:1px #ddd solid;
}
body.page.feature section .title .left{
	width:128px;
	padding:15px 0;
	border-right:1px #ddd solid;
}
body.page.feature section .title .right{
	width:calc(100% - 128px);
	padding-left:32px;
}
body.page.feature section .title .right h2{
	margin:10px 0;
	padding:0;
	font-size:20px;
	font-weight:bold;
	color:#1b1b1b;
}
body.page.feature section .title .right h2:before{
	display:none;
}
body.page.feature section .content{
	display:none;
	margin:40px 0;
}
body.page.feature section .list ul{
	margin:0;
	padding:0;
	list-style:none;
}
body.page.feature section .list ul li{
	padding-left:26px;
	position:relative;
}
body.page.feature section .list ul li:before{
	display:block;
	content:"";
	width:3px;
	height:11px;
	border-right:3px #e44a51 solid;
	border-bottom:3px #e44a51 solid;
	position:absolute;
	left:5px;
	top:7px;
	transform:rotate(45deg);
}
body.page.feature #philosophy .title img{
	width:88px;
}
body.page.feature #philosophy .copy{
	margin-top:20px;
	font-size:20px;
	font-weight:bold;
	color:#e44a51;
	text-align:center;
}
body.page.feature #equation .title img{
	width:89px;
}
body.page.feature #equation .list{
	width:558px;
	margin:0 auto 30px;
	padding:40px 60px;
	background:#f8f8f8;
	border-radius:10px;
}
body.page.feature #equation h3+img{
	display:block;
	width:563px;
	margin:0 auto 30px;
}
body.page.feature #select .title .left{
	width:144px;
	margin-left:-16px;
}
body.page.feature #select .title img{
	width:115px;
}
body.page.feature #select h3{
	margin-left:76px;
}
body.page.feature #select .list{
	margin:0 auto 10px;
	padding:40px 50px;
	background:#f8f8f8;
	border-radius:10px;
}
body.page.feature #select .list li{
	width:50%;
}
body.page.feature #select h3+img{
	display:block;
	width:606px;
	margin:0 auto;
}
body.page.feature #select .title img{
	width:98px;
}
body.page.feature #difference article+article{
	margin-top:30px;
	padding-top:20px;
	border-top:1px #ddd solid;
}
body.page.feature #difference .title img{
	width:98px;
}
body.page.feature #difference .text{
	margin-bottom:20px;
}
body.page.feature #difference .text .left{
	width:320px;
}
body.page.feature #difference .text .right{
	width:calc(100% - 350px);
	line-height:1.8;
}
body.page.feature #difference .text .right h4{
	margin:0;
	font-size:16px;
	font-weight:bold;
}
body.page.feature #difference .text .right ul{
	margin:0;
	padding-left:24px;
}
body.page.feature #difference .text .right ul li{
	font-size:14px;
}
body.page.feature #difference .text .right b{
	display:block;
	margin-top:10px;
	font-size:20px;
	font-weight:bold;
	color:#e44a51;
	line-height:1.6;
}
body.page.feature #worry .title img{
	width:94px;
}
body.page.feature #worry .list{
	position:relative;
}
body.page.feature #worry .list h3{
	margin:0;
	padding:0;
	font-size:24px;
	font-weight:bold;
	position:absolute;
	left:40px;
	top:32px;
}
body.page.feature #worry .list ul{
	margin:0;
	padding:0;
	position:absolute;
	left:44px;
	top:80px;
}
body.page.feature #worry .side li{
	margin-right:30px;
}
body.page.feature #worry .side li img{
	width:180px;
}
body.page.feature #worry p{
	margin:10px 0 30px;
	text-align:center;
}
body.page.feature #worry .text .left{
	width:320px;
}
body.page.feature #worry .text .right{
	width:calc(100% - 350px);
}
body.page.feature #worry .text .right h4{
	margin:20px 0 4px;
	font-size:20px;
	font-weight:bold;
}
body.page.feature #support .title img{
	width:122px;
}
body.page.feature #support .title .left{
	width:144px;
	margin-left:-16px;
}
body.page.feature #support .list:nth-of-type(1){
	margin-bottom:30px;
}
body.page.feature #support .list:nth-of-type(1) .left{
	width:320px;
}
body.page.feature #support .list:nth-of-type(1) .right{
	width:calc(100% - 350px);
}
body.page.feature #support .list:nth-of-type(1) .right h3{
	margin:10px 0 4px;
	font-size:20px;
	font-weight:bold;
}
body.page.feature #support .list:nth-of-type(2){
	margin:20px 0 40px;
	padding:40px;
	background:#f8f8f8;
	border-radius:10px;
}
body.page.feature #support .list:nth-of-type(2) img{
	float:left;
	width:160px;
}
body.page.feature #support .list:nth-of-type(2) .right{
	width:calc(100% - 190px);
}
body.page.feature #support .list:nth-of-type(2) .right h3{
	margin:0;
	font-size:24px;
	font-weight:bold;
}
body.page.feature #support .list:nth-of-type(2) p{
	display:block;
	clear:both;
	margin:24px 0 0;
	padding-top:16px;
	border-top:1px #ddd solid;
}
body.page.feature #support .jhslist{
	padding:40px;
	background:#f4f2ec;
	font-size:14px;
}
body.page.feature #support .jhslist h4{
	margin:0 0 6px;
	font-size:14px;
	font-weight:bold;
}

body.page.feature section .btn{
	width:100%;
	height:52px;
	line-height:52px;
	text-align:center;
	background:#f8f8f8;
	border-radius:0 0 10px 10px;
	cursor:pointer;
	position:absolute;
	left:0;
	bottom:0;
}
body.page.feature section .btn:before{
	display:inline-block;
	content:"詳しくみる";
}
body.page.feature section .btn:after{
	display:inline-block;
	content:"";
	width:8px;
	height:8px;
	margin-left:10px;
	border-right:2px #ec6c00 solid;
	border-bottom:2px #ec6c00 solid;
	vertical-align:3px;
	transform:rotate(45deg);
}
body.page.feature section .btn.open:before{
	display:inline-block;
	content:"閉じる";
}
body.page.feature section .btn.open:after{
	transform:rotate(-135deg);
	vertical-align:0;
}


/* price
-----------------------------------------------------------*/
body.page.price section+section{
	margin-top:80px;
}
body.page.price #return .left,
body.page.price #fee .left{
	width:516px;
}
body.page.price #return .right,
body.page.price #fee .right{
	width:calc(100% - 560px);
}
body.page.price #return .right img,
body.page.price #fee .right img{
	width:100%;
}
body.page.price #return h3,
body.page.price #fee h3{
	min-height:46px;
	margin:0 -40px 0 0;
	padding-left:56px;
	font-size:20px;
	font-weight:bold;
	background:url(img/price1.png) left top no-repeat;
}
body.page.price #fee h3{
	margin-bottom:10px;
	background:url(img/price2.png) left top no-repeat;
}
body.page.price #fee b{
	display:block;
	margin:10px 0;
	font-size:18px;
	font-weight:bold;
	color:#ea536f;
}
body.page.price #return b{
	display:block;
	margin:10px 0;
	font-size:18px;
	font-weight:bold;
	color:#ea536f;
}
body.page.price table{
	width:100%;
	border-collapse:collapse;
	margin:10px 0;
}
body.page.price table th,
body.page.price table td{
    border:1px #ddd solid;
    padding:5px;
}
body.page.price table th{
	text-align: center;
	background: #f7f7f7;
	padding:
}
body.page.price table td{
	text-align:right;
}
body.page.price table #center{
	text-align:center;
}


/* security
-----------------------------------------------------------*/
body.page.security section+section{
	margin-top:80px;
}
body.page.security #mail .left,
body.page.security #insurance .left{
	width:516px;
}
body.page.security #mail .right,
body.page.security #insurance .right{
	width:280px;
}
body.page.security #perfect a{
	display:block;
	width:120px;
	height:40px;
	margin-top:20px;
	line-height:40px;
	text-align:center;
	border:1px #ddd solid;
	border-radius:4px;
}


/* flow
-----------------------------------------------------------*/
body.page.flow section+section{
	margin-top:80px;
}
body.page.flow #chart{
	width:100%;
}
body.page.flow #chart .image{
	width:100%;
	height:147px;
	background:url(img/chart.jpg) left top no-repeat;
	background-size:contain;
}
body.page.flow h3{
	margin:0 0 10px;
	padding-left:50px;
	font-size:20px;
	font-weight:bold;
	position:relative;
}
body.page.flow main h3:before{
	display:block;
	content:"1";
	width:36px;
	height:36px;
	border:2px #ddd solid;
	border-radius:100%;
	font-size:24px;
	font-weight:normal;
	font-family:Roboto;
	text-align:center;
	line-height:36px;
	color:#ed6d47;
	position:absolute;
	left:0;
	top:0;
}
body.page.flow article:nth-of-type(2) h3:before{
	content:"2";
}
body.page.flow article:nth-of-type(3) h3:before{
	content:"3";
}
body.page.flow article{
	margin-bottom:40px;
	padding-bottom:40px;
	border-bottom:1px #ddd solid;
}
body.page.flow article .left{
	width:535px;
}
body.page.flow article .right{
	width:calc(100% - 575px);
}
body.page.flow #before .shadowbox b{
	display:block;
	font-size:20px;
	font-weight:bold;
	color:#e44a51;
}
body.page.flow #before .shadowbox .left{
	width:410px;
	font-size:14px;
	line-height:1.3;
}
body.page.flow #before .shadowbox .left a{
	display:block;
	font-size:52px;
	font-weight:bold;
}
body.page.flow #before .shadowbox .left a:before{
	display:inline-block;
	content:"";
	width:33px;
	height:67px;
	margin-right:4px;
	background:url(img/common/icon_tel.png) left center no-repeat;
	background-size:contain;
	vertical-align:bottom;
}
body.page.flow #before .shadowbox .right{
	width:calc(100% - 420px);
}
body.page.flow #before .shadowbox .right a{
	display:block;
	height:80px;
	line-height:80px;
	text-align:center;
	background:#e44a51;
	font-size:20px;
	color:#fff;
	border-radius:6px;
	box-shadow:0 2px 0 #b63b41;
}
body.page.flow article ul.side li{
	margin:10px 16px 10px 0;
}
body.page.flow article ul.side li:before{
	display:inline-block;
	content:"";
	width:6px;
	height:6px;
	margin-right:6px;
	border-radius:100%;
	background:#f59702;
	vertical-align:2px;
}
body.page.flow #before article:nth-of-type(3) .left a{
	display:block;
	width:280px;
	height:60px;
	margin-top:20px;
	line-height:60px;
	text-align:center;
	background:#e44a51;
	color:#fff;
	border-radius:6px;
	box-shadow:0 2px 0 #b63b41;
}
body.page.flow #goal{
	margin:0;
	padding:60px 0 0;
	text-align:center;
	border-bottom:0;
	position:relative;
}
body.page.flow #goal:before{
	display:block;
	content:"";
	width:28px;
	height:28px;
	border-right:4px #ea536f solid;
	border-bottom:4px #ea536f solid;
	transform:rotate(45deg) translateX(-50%);
	position:absolute;
	top:10px;
	left:50%;
}


/* disasters
-----------------------------------------------------------*/
body.page.disasters main section h1{
	margin:32px 0 0;
	padding:8px 20px;
	font-size:28px;
	font-weight:bold;
	color:#ed833e;
	background:#f5f3f2;
	border-radius:6px;
}
body.page.disasters main section h2{
	margin-top:32px;
	font-size:20px;
}


/* company
-----------------------------------------------------------*/
body.page.company table{
	width:100%;
	border-collapse:collapse;
}
body.page.company table tr{
}
body.page.company table th,
body.page.company table td{
	padding:12px 0;
	border-top:1px #ddd solid;
}
body.page.company table tr:last-child th,
body.page.company table tr:last-child td{
	border-bottom:1px #ddd solid;
}
body.page.company table th{
	width:218px;
	font-weight:bold;
	text-align:left;
}


/* privacypolicy
-----------------------------------------------------------*/
body.page.privacypolicy main h2{
	margin:40px 0 10px;
	padding-left:0;
	font-size:20px;
	color:#1d1d1d;
}
body.page.privacypolicy main h2:before{
	display:none;
}
body.page.privacypolicy main ul{
	padding:0;
	list-style:none;
}


/* contact
-----------------------------------------------------------*/
body.page.contact main #text .left{
	width:560px;
}
body.page.contact main #text .right{
	width:280px;
}
body.page.contact main #text .left a{
	display:block;
	width:420px;
	margin:20px 0 10px;
	padding:24px 0 20px;
	background:#e44a51;
	color:#fff;
	font-size:40px;
	font-weight:bold;
	text-align:center;
	line-height:1;
}
body.page.contact main #text .left a:before{
	display:inline-block;
	content:"";
	width:28px;
	height:28px;
	margin-right:4px;
	background:url(img/common/icon_tel_white.png) center center no-repeat;
	background-size:contain;
}
body.page.contact main #text .left a span{
	display:block;
	margin-top:10px;
	font-size:14px;
	font-weight:normal;
}


/* faq
-----------------------------------------------------------*/
body.page.faq #anchor li{
	width:calc((100% - 63px) / 4);
	margin-left:21px;
}
body.page.faq #anchor li:nth-of-type(4n+1){
	margin-left:0;
	clear:both;
}
body.page.faq #anchor li:nth-of-type(n+5){
	margin-top:18px;
}
body.page.faq #anchor li a{
	display:block;
	height:64px;
	padding:0 24px 0 10px;
	line-height:64px;
	background:#f8f8f8;
	border:2px #edeceb solid;
	border-radius:4px;
}
body.page.faq #anchor li a:after{
	border-color:#ed6d47;
}

body.page.faq #anchor li:nth-of-type(2) a,
body.page.faq #anchor li:nth-of-type(5) a{
	line-height:1.5;
	padding-top:8px;
}
body.page.faq #list h2{
	margin-top:80px;
}
body.page.faq #list .question{
	padding:16px 74px;
	font-size:18px;
	font-weight:bold;
	border-top:1px #ddd solid;
	position:relative;
	cursor:pointer;
}
body.page.faq #list .question:before{
	display:block;
	content:"";
	width:3px;
	height:13px;
	background:#ec6c00;
	position:absolute;
	right:16px;
	top:25px;
}
body.page.faq #list .question.open:before{
	display:none;
}
body.page.faq #list .question:after{
	display:block;
	content:"";
	width:13px;
	height:3px;
	background:#ec6c00;
	position:absolute;
	right:11px;
	top:30px;
}
body.page.faq #list .question.open{
	border-bottom:0;
}
body.page.faq #list .answer{
	padding:0 74px 16px 74px;
	font-size:16px;
	font-weight:normal;
	position:relative;
	display:none;
}
body.page.faq #list .question i,
body.page.faq #list .answer i{
	display:inline-block;
	color:#c5c3b9;
	font-size:28px;
	font-weight:bold;
	font-style:normal;
	position:absolute;
	left:0;
	top:4px;
}
body.page.faq #list .answer i{
	font-size:24px;
	font-weight:normal;
	left:2px;
	top:-6px;
}


/* school
-----------------------------------------------------------*/
body.archive.category #title{
	background-image:url(img/search.jpg);
}
body.archive.category #link{
	margin-bottom:54px;
}
body.archive.category section#link a{
	float:left;
	display:block;
	width:calc((100% - 36px) / 4);
	height:64px;
	line-height:64px;
	text-align:center;
	background:#f59702;
	color:#fff;
	border-radius:3px;
	box-shadow:0 2px 0 #c47902;
	position:relative;
}
body.archive.category section#link a.current{
	background:#fff;
	border:2px #f59702 solid;
	color:#f59702;
}
body.archive.category section#link a+a{
	margin-left:12px;
}
/* map */
body.archive.category #map_tokyo,
body.archive.category #map_kanagawa,
body.archive.category #map_saitama,
body.archive.category #map_chiba{
	padding:40px 0 80px;
	position:relative;
}
body.archive.category #map_kanagawa{
	padding:40px 0;
}
body.archive.category #map_saitama{
	padding:0 0 80px;
}
body.archive.category #map_chiba{
	padding:0 0 40px 40px;
}
body.archive.category #map .btn{
	display:block;
	width:170px;
	height:30px;
	margin:0 auto 10px;
	line-height:30px;
	text-align:center;
	background:#eaeaea;
	border-radius:4px;
	cursor:pointer;
	position:absolute;
	left:50%;
	top:0;
	transform:translateX(-50%);
}
body.archive.category #map .btn:nth-of-type(2),
body.archive.category #map_saitama .btn{
	top:auto;
	bottom:40px;
}
body.archive.category #map .btn.right,
body.archive.category #map .btn.left{
	writing-mode:vertical-lr;
	width:30px;
	height:170px;
}
body.archive.category #map .btn.right{
	right:0;
	left:initial;
}
body.archive.category #map_tokyo .btn.right{
	top:45%;
}
body.archive.category #map_saitama .btn.right{
	right:-4.5%;
	top:15%;
}
body.archive.category #map .btn.left{
	left:0;
}
body.archive.category #map_chiba .btn.left:nth-of-type(1){
	top:10%;
}
body.archive.category #map_chiba .btn.left:nth-of-type(2){
	top:50%;
}
body.archive.category #map ins,
body.archive.category #map a:not(.btn){
	display:block;
	position:absolute;
	z-index:10;
	top:0;
	left:0;
	transform:scale(0.6,0.6);
	background-position:left top;
	background-repeat:no-repeat;
	opacity:1;
}
body.archive.category #map ins img,
body.archive.category #map a img{opacity:0}
body.archive.category #map ins:hover,
body.archive.category #map a:hover,
body.archive.category #map a:hover img{opacity:1;background-image:none !important}
/* tokyo */
body.archive.category #map a#musashikoganei{top:180px;left:217px}
body.archive.category #map a#itabashikuyakusyomae{top:29px;left:498px}
body.archive.category #map a#takashimadaira1{top:14px;left:459px}
body.archive.category #map a#akabane{top:48px;left:545px}
body.archive.category.category-tokyo #map a#shinyurigaoka{top:346px;left:203px}
body.archive.category #map a#minamioosawa{top:158px;left:218px}
body.archive.category #map a#hino{top:217px;left:87px}
body.archive.category #map a#nishihachiooji{top:267px;left:9px}
body.archive.category #map a#hitotsubashigakuen{top:174px;left:202px}
body.archive.category #map a#toyoda{top:237px;left:61px}
body.archive.category #map a#kanamachi{top:61px;left:717px}
body.archive.category #map a#oomori{top:339px;left:506px}
body.archive.category #map a#tsurukawa{top:338px;left:183px}
body.archive.category #map a#ayase{top:41px;left:709px}
body.archive.category #map a#akishima{top:182px;left:17px}
body.archive.category #map a#musashiseki{top:104px;left:302px}
body.archive.category #map a#takahatafudo{top:241px;left:112px}
body.archive.category #map a#mitaka{top:180px;left:296px}
body.archive.category #map a#fuchu{top:212px;left:203px}
body.archive.category #map a#hamura{top:157px;left:25px;/* background-size:68px;background-position:2px 0 */}
/* body.archive.category #map a#hamura img{width:70px} */
body.archive.category #map a#hikarigaoka{top:63px;left:352px}
body.archive.category #map a#higashiyamato{top:95px;left:142px}
body.archive.category #map a#higashimurayama{top:123px;left:177px}
body.archive.category #map a#hanakoganei{top:86px;left:250px}
body.archive.category #map a#syakujiikouen{top:35px;left:331px}
body.archive.category #map a#nagayama{top:258px;left:171px}
body.archive.category.category-tokyo #map a#tokorozawa{top:71px;left:178px}
body.archive.category #map a#tanashi{top:120px;left:272px}
body.archive.category #map a#chofu{top:214px;left:264px}
body.archive.category #map a#kunitachi{top:196px;left:179px}
body.archive.category #map a#komae{top:292px;left:281px}
body.archive.category #map a#kumegawa{top:123px;left:195px}
body.archive.category #map a#kiyose{top:98px;left:220px}
body.archive.category #map a#ogikubo{top:179px;left:341px}
body.archive.category #map a#ooizumigakuen{top:35px;left:315px}
body.archive.category #map a#inagi{top:258px;left:196px}
body.archive.category #map a#mizonokuchi2{top:353px;left:287px}
body.archive.category #map a#akabaneiwabuchi{top:45px;left:551px}
body.archive.category #map a#fuchinobe2{top:326px;left:118px}
body.archive.category #map a#mukougaokayuuen2{top:318px;left:239px}
body.archive.category #map a#kamata{top:366px;left:475px}
body.archive.category #map a#keikyukamata{top:365px;left:516px}
body.archive.category #map a#koiwa{top:155px;left:769px}
body.archive.category #map a#keiseikoiwa{top:77px;left:769px}
body.archive.category #map a#takenotsuka{top:37px;left:627px}
body.archive.category #map a#umejima{top:58px;left:656px}
body.archive.category #map a#kokuryou{top:213px;left:315px}
body.archive.category #map a#yashio{top:34px;left:692px;background-size:70px}
body.archive.category #map a#yashio img{width:70px}
body.archive.category #map ins#hashimoto2{top:291px;left:66px}
body.archive.category #map ins#hashimoto_nihonmatsu{top:267px;left:62px;display:none}
body.archive.category #map ins#hashimoto_nihonmatsu img{opacity:1}
body.archive.category #map ins#hashimoto_nihonmatsu #hashimoto2-1,
body.archive.category #map ins#hashimoto_nihonmatsu #hashimoto2-2{
	display:block;
	width:33px;
	height:180px;
	position:absolute;
	top:14px;
	left:52px;
}
body.archive.category #map ins#hashimoto_nihonmatsu #hashimoto2-2{left:31px}
body.archive.category #map ins#hashimoto_nihonmatsu #hashimoto2-1 img,
body.archive.category #map ins#hashimoto_nihonmatsu #hashimoto2-2 img{opacity:0;width:100%}
body.archive.category #map ins#hashimoto_nihonmatsu #hashimoto2-1:hover img,
body.archive.category #map ins#hashimoto_nihonmatsu #hashimoto2-2:hover img{opacity:1}
body.archive.category #map a#kabe {top:137px;left:25px}
body.archive.category #map a#sunagawananaban {top:187px;left:39px}
body.archive.category #map a#nishikasai {top:237px;left:750px}

/* saitama */
body.archive.category.category-saitama #map a#ayase{top:165px;left:706px}
body.archive.category #map a#iruma{top:173px;left:106px}
body.archive.category #map a#kamifukuoka{top:87px;left:203px;background-size:27px}
body.archive.category #map a#kamifukuoka img{width:27px}
body.archive.category.category-saitama #map a#kanamachi{top:184px;left:718px}
body.archive.category #map a#kawaguchi{top:114px;left:541px}
body.archive.category #map a#kitakoshigaya{top:33px;left:567px}
body.archive.category.category-saitama #map a#kiyose{top:220px;left:218px}
body.archive.category #map a#kotesashi{top:175px;left:150px}
body.archive.category #map a#saidai-st{top:27px;left:337px}
body.archive.category #map a#sayama{top:165px;left:166px}
body.archive.category #map a#shiki{top:104px;left:253px}
body.archive.category #map a#souka{top:90px;left:630px}
body.archive.category.category-saitama #map a#takashimadaira1{top:139px;left:456px}
body.archive.category #map a#tokorozawa{top:191px;left:176px}
body.archive.category #map a#higashikawaguchi{top:61px;left:548px}
body.archive.category #map a#higashitokorozawa{top:192px;left:194px}
body.archive.category #map a#mizuhodai{top:73px;left:228px}
body.archive.category #map a#miyahara{top:43px;left:250px}
body.archive.category #map a#saidai-st2{top:81px;left:338px}
body.archive.category #map a#akabaneiwabuchi2{top:167px;left:549px}
body.archive.category #map a#akabane2{top:171px;left:545px}
body.archive.category #map a#itabashikuyakusyomae2{top:151px;left:494px}
body.archive.category #map a#hikarigaoka2{top:185px;left:347px}
body.archive.category #map a#syakujiikouen2{top:152px;left:325px}
body.archive.category #map a#ooizumigakuen2{top:157px;left:305px}
body.archive.category #map a#higashimurayama2{top:234px;left:157px}
body.archive.category #map a#yoshikawa{top:31px;left:667px}
body.archive.category #map a#kitatoda{top:107px;left:424px}
body.archive.category #map a#toda{top:125px;left:461px}
body.archive.category.category-saitama #map a#takenotsuka{top:155px;left:626px}
body.archive.category.category-saitama #map a#umejima{top:181px;left:652px}
body.archive.category.category-saitama #map a#ageo{top:9px;left:216px}
body.archive.category.category-saitama #map a#yashio{top:161px;left:686px;background-size:71px}
body.archive.category.category-saitama #map a#yashio img{width:71px}
body.archive.category #map a#higashiomiya{top:20px;left:280px;background-size:90px}
body.archive.category #map a#higashiomiya img{width:90px}
/* kanagawa */
body.archive.category #map a#ebina{top:276px;left:77px}
body.archive.category #map a#odasaga-new{top:195px;left:111px}
body.archive.category #map a#kamimizo{top:94px;left:50px}
body.archive.category #map a#kamoi{top:258px;left:269px}
body.archive.category #map a#sagamioono{top:172px;left:131px}
body.archive.category #map a#shinyurigaoka{top:138px;left:258px}
body.archive.category #map a#tsurugamine{top:296px;left:269px}
body.archive.category #map a#higashitotsuka{top:355px;left:350px}
body.archive.category.category-kanagawa #map a#tsurukawa{top:127px;left:233px}
body.archive.category #map a#nakayama{top:241px;left:255px}
body.archive.category #map a#fuchinobe{top:104px;left:145px}
body.archive.category #map a#honatsugi{top:221px;left:63px}
body.archive.category #map a#isehara{top:234px;left:34px}
body.archive.category #map a#mizonokuchi{top:145px;left:363px}
body.archive.category #map a#mukougaokayuuen{top:99px;left:305px}
body.archive.category #map a#musashinakahara{top:174px;left:387px}
body.archive.category #map a#inagi2{top:28px;left:251px}
body.archive.category #map a#nagayama2{top:28px;left:219px}
body.archive.category #map a#nishihachiooji2{top:35px;left:5px}
/*body.archive.category #map a#minamioosawa2{top:108px;left:279px}*/
body.archive.category #map a#oomori2{top:127px;left:644px}
body.archive.category #map a#komae2{top:69px;left:358px}
/*body.archive.category #map a#isehara{top:264px;left:188px}*/
body.archive.category #map a#kamata2{top:160px;left:603px}
body.archive.category #map a#keikyukamata2{top:165px;left:648px}
body.archive.category #map ins#hashimoto3{top:67px;left:83px}
body.archive.category #map ins#hashimoto_nihonmatsu2{top:45px;left:84px;display:none}
body.archive.category #map ins#hashimoto_nihonmatsu2 img{opacity:1}
body.archive.category #map ins#hashimoto_nihonmatsu2 #hashimoto3-1,
body.archive.category #map ins#hashimoto_nihonmatsu2 #hashimoto3-2{
	display:block;
	width:34px;
	height:153px;
	position:absolute;
	top:23px;
	left:58px;
}
body.archive.category #map ins#hashimoto_nihonmatsu2 #hashimoto3-2{left:37px}
body.archive.category #map ins#hashimoto_nihonmatsu2 #hashimoto3-1 img,
body.archive.category #map ins#hashimoto_nihonmatsu2 #hashimoto3-2 img{opacity:0;width:100%}
body.archive.category #map ins#hashimoto_nihonmatsu2 #hashimoto3-1:hover img,
body.archive.category #map ins#hashimoto_nihonmatsu2 #hashimoto3-2:hover img{opacity:1}
body.archive.category #map a#kanazawabunko{top:350px;left:648px}
body.archive.category #map a#tsurumi{top:291px;left:456px}
body.archive.category #map a#keikyutsurumi{top:299px;left:493px}


/* chiba */
body.archive.category #map a#shinmatsudo{top:169px;left:428px;background-size:54px}
body.archive.category #map a#shinmatsudo img{width:54px}
body.archive.category #map a#kouya{top:117px;left:428px;background-size:54px}
body.archive.category #map a#kouya img{width:54px}
body.archive.category.category-chiba #map a#kitakoshigaya{top:31px;left:36px}
body.archive.category.category-chiba #map a#yoshikawa{top:42px;left:165px}
body.archive.category.category-chiba #map a#souka{top:108px;left:120px}
body.archive.category.category-chiba #map a#takenotsuka{top:203px;left:118px}
body.archive.category.category-chiba #map a#yashio{top:204px;left:198px}
body.archive.category.category-chiba #map a#ayase{top:220px;left:225px}
body.archive.category.category-chiba #map a#kanamachi{top:234px;left:242px}
body.archive.category.category-chiba #map a#umejima{top:234px;left:154px;background-size:90px}
body.archive.category #map a#umejima img{width:90px}
body.archive.category.category-chiba #map a#keiseikoiwa{top:282px;left:317px}
body.archive.category.category-chiba #map a#koiwa{top:369px;left:317px}
body.archive.category.category-chiba #map a#nishikasai{top:463px;left:277px}

body.archive.category #citylist ul{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:80px;
}
body.archive.category #citylist ul li{
	width:25%;
	border-bottom:1px #ddd solid;
	border-right:1px #ddd solid;
}
body.archive.category #citylist ul li:nth-child(4n+1){
	border-left:1px #ddd solid;
}
body.archive.category #citylist ul li:nth-of-type(1),
body.archive.category #citylist ul li:nth-of-type(2),
body.archive.category #citylist ul li:nth-of-type(3),
body.archive.category #citylist ul li:nth-of-type(4){
	border-top:1px #ddd solid;
}
body.archive.category #citylist ul li:nth-of-type(1){
	border-radius:10px 0 0 0;
}
body.archive.category #citylist ul li:nth-of-type(4){
	border-radius:0 10px 0 0;
}
body.archive.category-tokyo #citylist ul:nth-of-type(1) li:nth-last-child(3),
body.archive.category-tokyo #citylist ul:nth-of-type(2) li:nth-last-child(4),
body.archive.category-saitama #citylist ul li:nth-last-child(2),
body.archive.category-kanagawa #citylist ul li:nth-last-child(2){
	border-radius:0 0 0 10px;
}
body.archive.category-tokyo #citylist ul:nth-of-type(2) li:nth-last-child(1)/*,
body.archive.category-saitama #citylist ul li:nth-last-child(2)*/{
	border-radius:0 0 10px 0;
}
body.archive.category #citylist ul li a{
	display:block;
	height:100%;
	padding:16px 34px;
	position:relative;
}
body.archive.category #citylist ul li a:after{
	display:block;
	content:"";
	width:8px;
	height:8px;
	border-right:2px #ec6c00 solid;
	border-bottom:2px #ec6c00 solid;
	transform:rotate(45deg);
	position:absolute;
	top:calc(50% - 7px);
	right:16px;
}
body.archive.category .listblock{
	margin-bottom:80px;
}
body.archive.category .listblock .school{
	padding:27px 0;
	border-bottom:1px #ddd solid;
	display:flex;
	align-items:center;
}
body.archive.category .listblock .school:nth-of-type(1){
	border-top:1px #ddd solid;
}
body.archive.category .listblock .school-list-city+ .school-list-city .school:nth-of-type(1){
	border-top:0;
}
body.archive.category .listblock .school .left{
	width:230px;
	padding:0 92px 0 0;
	line-height:1;
	position:relative;
}
body.archive.category .listblock .school .left.withnote{
	padding-top:6px;
}
body.archive.category .listblock .school .left a{
	color:#ec6c00;
	text-decoration:underline;
	line-height:1;
}
body.archive.category .listblock .school .left .new{
	display:inline-block;
	width:40px;
	height:14px;
	margin-left:6px;
	font-size:10px;
	line-height:14px;
	text-align:center;
	vertical-align:top;
	background:#e44a51;
	color:#fff;
}
body.archive.category .listblock .school .left .note{
	display:block;
	margin-top:6px;
	font-size:11px;
	color:#e0464d;
}
body.archive.category .listblock .school .left img{
	width:64px;
	position:absolute;
	right:16px;
	top:50%;
	transform:translateY(-50%);
}
body.archive.category .listblock .school .right{
	width:calc(100% - 230px);
	padding-left:32px;
	border-left:1px #ddd solid;
	line-height:1.3;
}
body.archive.category .listblock .school .right .train span{
	display:inline;
	margin-top:8px;
	font-size:14px;
	color:#666;
}
body.archive.category .listblock .school .right .train span+span{
	margin-left:8px;
	padding-left:8px;
	position:relative;
}
body.archive.category .listblock .school .right .train span+span:before{
	display:block;
	content:"";
	width:1px;
	height:13px;
	background:#666;
	position:absolute;
	left:0;
	top:2px;
	transform:rotate(20deg);
}


/* single-post ----------*/
body.single-post section+section{
	margin-top:100px;
}
body.single-post #anchor{
	margin:0 0 50px;
	padding:26px 0;
	text-align:center;
	box-shadow:0 10px 10px rgba(0,0,0,.15);
}
body.single-post #anchor a{
	display:inline-block;
	padding:0 24px;
	font-size:18px;
	font-weight:bold;
	color:#ec6c00;
	line-height:1;
}
body.single-post #anchor a+a{
	border-left:1px #ec6c00 solid;
}
body.single-post #school-slide{
	width:720px;
	margin:0 auto;
	position:relative;
}
body.single-post #school-slide>img{
	display:block;
	width:158px;
	position:absolute;
	left:18px;
	top:12px;
	z-index:10;
}
body.single-post #school-slide li{
	width:720px;
	height:480px;
}
body.single-post #school-slide li img{
	width:100%;
	height:auto;
}
body.single-post #school-slide .slick-arrow:before{
	display:none;
}
body.single-post #school-slide .slick-prev{
	left:-64px;
}
body.single-post #school-slide .slick-next{
	right:-64px;
}
body.single-post #school-slide .slick-arrow:after{
	display:block;
	content:"";
	width:16px;
	height:16px;
	border-top:5px #ec6c00 solid;
	position:absolute;
	top:8px;
}
body.single-post #school-slide .slick-arrow.slick-prev:after{
	border-left:5px #ec6c00 solid;
	transform:rotate(-45deg);
	left:12px;
}
body.single-post #school-slide .slick-arrow.slick-next:after{
	border-right:5px #ec6c00 solid;
	transform:rotate(45deg);
	right:12px;
}
body.single-post #message .text,
body.single-post #school-news dl,
body.single-post #student .student_schools,
body.single-post #access .text,
body.single-post #feature ul{
	padding:32px 40px;
	border:1px #ddd solid;
	border-radius:10px;
}
/* message */
body.single-post #message .text p{
	margin:0;
}
/* school-news */
body.single-post #school-news dt{
	font-weight:bold;
}
body.single-post #school-news dt .title{
	margin-left:20px;
}
body.single-post #school-news dd{
	margin:0;
}
/* student */
body.single-post #student h3{
	display:inline-block;
	margin:0 0 8px;
	padding:0 12px;
	line-height:32px;
	border:1px #ddd solid;
	border-radius:4px;
	font-size:16px;
	font-weight:bold;
}
body.single-post #student ul{
	margin-bottom:8px;
}
/*body.single-post #student ul li:before{
	display:inline-block;
	content:"・";
}*/
/* exp */
body.single-post #exp{
	position:relative;
}
body.single-post #exp .expList{
	padding:40px 40px 74px;
	background:#f4f2ec;
}
body.single-post #exp .expList .expEntry{
	padding:40px;
	border-bottom:0;
	border-radius:10px;
	box-shadow:2px 0 16px rgba(0,0,0,.15);
}
body.single-post #exp .expList .expEntry+.expEntry{
	margin-top:40px;
}
body.single-post #exp .expList .moreItem{
	display: block;
	width: 120px;
	height: 40px;
	margin: 20px auto 0;
	line-height: 40px;
	text-align: center;
	border: 1px #ddd solid;
	border-radius: 4px;
	cursor: pointer;
}
body.single-post #exp .expList .loading{
	height:40px;
	font-size: 10px;
	margin: 20px auto 0;
	text-indent: -9999em;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #ffffff;
	background: -moz-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
	background: -webkit-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
	background: -o-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
	background: -ms-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
	background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
	position: relative;
	-webkit-animation: load3 1.4s infinite linear;
	animation: load3 1.4s infinite linear;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
}
body.single-post #exp .expList .loading:before {
	width: 50%;
	height: 50%;
	background: #ffffff;
	border-radius: 100% 0 0 0;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
}
body.single-post #exp .expList .loading:after {
	background: #f4f2ec;
	width: 75%;
	height: 75%;
	border-radius: 50%;
	content: '';
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
@-webkit-keyframes load3 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes load3 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

body.single-post #exp a{
	display:block;
	width:320px;
	height:64px;
	line-height:64px;
	text-align:center;
	background:#f59702;
	color:#fff;
	box-shadow:0 2px 0 #c47902;
	border-radius:4px;
	position:absolute;
	bottom:0;
	left:50%;
	transform:translate(-50%,50%);
}
/* access */
body.single-post #access .text dl{
	margin:0 0 20px;
}
body.single-post #access .text dt,
body.single-post #access .text dd{
	float:left;
	margin:0;
	line-height:1.7;
}
body.single-post #access .text dt{
	margin-right:18px;
	font-weight:bold;
	clear:both;
}
/* feature */
body.single-post #access iframe{
	width:100%;
	height:325px;
}
body.single-post #feature ul{
	box-shadow:2px 0 16px rgba(0,0,0,.15);
}
body.single-post #feature li{
	width:calc(50% - 40px);
}
body.single-post #feature li:nth-child(2n+1){
	margin-right:80px;
	clear:both;
}
body.single-post #feature li:nth-child(n+3){
	margin-top:70px;
}
body.single-post #feature li img{
	display:block;
	width:100%;
	height:auto;
}
body.single-post #feature li h3{
	margin:38px 0 12px;
	font-size:19px;
	font-weight:bold;
	text-align:center;
}
body.single-post #feature li h3 span{
	display:block;
	font-size:14px;
	color:#ec6c00;
}
body.single-post #feature li p{
	margin:1em 0;
}
/* tour */
body.single-post #tour{
	line-height:1.7;
}
body.single-post #tour h3{
	width:498px;
	margin:0;
	font-size:24px;
	font-weight:bold;
}
body.single-post #tour b{
	display:block;
	width:498px;
	margin:4px 0 12px;
	font-size:36px;
	font-weight:bold;
	background:#e44a51;
	color:#fff;
	text-align:center;
	border-radius:6px;
}
body.single-post #tour .info{
	margin:30px 0 12px;
	padding-bottom:8px;
	border-bottom:1px #ddd solid;
}
body.single-post #tour .info span{
	display:inline-block;
	margin-right:20px;
	padding:0 20px;
	border:1px #f59702 solid;
	border-radius:10px;
	text-align:center;
	line-height:35px;
	color:#f59702;
}
body.single-post #tour .info span:nth-of-type(2){
	margin-left:80px;
}

body.single-post #tour .right{
	width:calc(100% - 520px);
	height:200px;
	background:#ddd;
}


/* request
-----------------------------------------------------------*/
body.request main,
body.confirm main{
	float:none;
	margin-left:auto;
	margin-right:auto;
}
body.request #sidebar,
body.confirm #sidebar{
	display:none;
}
body.request section+section{
	margin-top:60px;
}
body.request #text .box{
	padding:40px;
	border-radius:10px;
	border:2px #ddd solid;
}
body.request #text h3{
	margin:0;
	font-size:20px;
	font-weight:bold;
	color:#ec6c00;
}
body.request #text h3+p{
	margin-top:4px;
}
body.request #text b{
	color:#e44a51;
}
body.request #text p b{
	font-weight:normal;
}
body.request #text .tel{
	margin-top:32px;
	text-align:center;
	font-size:20px;
	line-height:1;
}
body.request #text .tel a{
	display:block;
	margin:16px auto 0;
	font-size:52px;
	font-weight:bold;
}
body.request #text .tel a img{
	width:36px;
	margin-right:8px;
}
body.request #text .tel span{
	font-size:14px;
}
body.request #formbox h2{
	margin:0 0 8px;
	padding:18px 0;
	background:#f8f8f8;
	text-align:center;
}
body.request #formbox h2:before{
	display:none;
}
body.request #formbox .note{
	font-size:14px;
	margin-bottom:32px;
}
body.request #formbox .note span{
	font-size:12px;
	color:#e44a51;
}

table.request{
	width:100%;
	border-collapse:collapse;
}
table.request tr{
	border-top:1px #ddd solid;
}
table.request tr:last-child{
	border-bottom:1px #ddd solid;
}

table.request th{
	width:260px;
	padding:35px 10px 35px 0;
	font-weight:bold;
	text-align:left;
	vertical-align:top;
}
table.request th.require:after{
	display:inline-block;
	content:"*";
	margin-left:3px;
	font-size:12px;
	color:#e44a51;
}
table.request td{
	padding:30px 0;
}
table.request td::after{
	display:block;
	content:"";
	clear:both;
}
table.request td b{
	display:block;
}
table.request .selectbox,
table.request select{
	max-width:240px;
}
table.request td #zip{
	width:120px;
	margin-bottom:12px;
}
table.request td #address,
table.request td #address2,
table.request td #address3{
	margin-top:12px;
}
table.request td input[type=hidden]+br{
	display:none;
}
table.request td #parent_name,
table.request td #parent_fname,
table.request td #parent_kana,
table.request td #parent_fkana,
table.request td #child_name,
table.request td #child_fname,
table.request td #child_kana,
table.request td #child_fkana{
	float:left;
	width:calc(50% - 5px);
}
table.request td #parent_fname,
table.request td #parent_fkana,
table.request td #child_fname,
table.request td #child_fkana{
	margin-left:10px;
}
table.request td.gray{
	padding:10px;
	background: #ddd;
	font-size: 18px;
}

/* recruitment
-----------------------------------------------------------*/
body.recruitment section+section{
	margin-top:68px;
}
body.recruitment .point{
	position:relative;
}
body.recruitment .point .copy{
	font-size:14px;
	line-height:1.6;
	text-shadow:1px 1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff,-1px -1px 0 #fff;
	position:absolute;
	top:79px;
	left:74px;
}
body.recruitment .point:nth-of-type(2) .copy{
	left:348px;
}
body.recruitment .point:nth-of-type(3) .copy{
	top:62px;
}
body.recruitment .point:nth-of-type(4) .copy{
	top:62px;
	left:348px;
}
body.recruitment .point:nth-of-type(6) .copy{
	top:68px;
	left:348px;
}
body.recruitment .point a{
	display:block;
	width:200px;
	height:40px;
	margin-top:10px;
	line-height:40px;
	text-align:center;
	border-radius:5px;
	vertical-align:top;
	background:#e44a51;
	color:#fff;
	box-shadow: 0 3px 0 #922f34;
	text-shadow:none;
}
body.recruitment table{
	width:100%;
	border-collapse:collapse;
}
body.recruitment table tr{
	border-top:1px #ddd solid;
}
body.recruitment table tr:last-child{
	border-bottom:1px #ddd solid;
}
body.recruitment table th{
	width:170px;
	padding:35px 0;
	font-weight:bold;
	text-align:left;
	vertical-align:top;
}
body.recruitment table td{
	padding:35px 0;
	text-align:left;
	vertical-align:top;
}
body.recruitment table td a{
	display:block;
	width:200px;
	height:40px;
	margin-top:10px;
	line-height:40px;
	text-align:center;
	border-radius:5px;
	vertical-align:top;
	background:#e44a51;
	color:#fff;
	box-shadow: 0 3px 0 #922f34;
	text-shadow:none;
}
body.recruitment main .tel{
	display:block;
	width:586px;
	max-width:100%;
	margin:40px auto;
}
body.recruitment .entrylink{
	display:block;
	width:320px;
	height:60px;
	margin:24px auto;
	line-height:60px;
	text-align:center;
	border-radius:5px;
	vertical-align:top;
	background:#e44a51;
	color:#fff;
	box-shadow: 0 3px 0 #922f34;
}


/* entry
-----------------------------------------------------------*/
body.entry section+section{
	margin-top:60px;
}
body.entry #text .box{
	padding:40px;
	border-radius:10px;
	border:2px #ddd solid;
}
body.entry #text h3{
	margin:0;
	font-size:20px;
	font-weight:bold;
	color:#ec6c00;
}
body.entry #text h3+p{
	margin-top:4px;
}
body.entry #text b{
	color:#e44a51;
}
body.entry #text p b{
	font-weight:normal;
}
body.entry #text .tel{
	margin-top:32px;
	text-align:center;
	font-size:20px;
	line-height:1;
}
body.entry #text .tel a{
	display:block;
	margin:16px auto 0;
	font-size:52px;
	font-weight:bold;
}
body.entry #text .tel a img{
	width:36px;
	margin-right:8px;
}
body.entry #text .tel span{
	font-size:14px;
}
body.entry #formbox h2{
	margin:0 0 8px;
	padding:18px 0;
	background:#f8f8f8;
	text-align:center;
}
body.entry #formbox h2:before{
	display:none;
}
body.entry #formbox .note{
	font-size:14px;
	margin-bottom:32px;
}
body.econfirm #formbox .note{
	display:none;
}
body.entry #formbox .note span{
	font-size:12px;
	color:#e44a51;
}

table.recruitment{
	width:100%;
	border-collapse:collapse;
}
table.recruitment tr{
	border-top:1px #ddd solid;
}
table.recruitment tr:last-child{
	border-bottom:1px #ddd solid;
}

table.recruitment th{
	width:200px;
	padding:35px 0;
	font-weight:bold;
	text-align:left;
	vertical-align:top;
}
table.recruitment th.require:after{
	display:inline-block;
	content:"*";
	margin-left:3px;
	font-size:12px;
	color:#e44a51;
}
table.recruitment td{
	padding:30px 0;
}
body.entry #formbox table.recruitment .note{
	margin-bottom:0;
}
table.recruitment td b{
	display:block;
}
table.recruitment .selectbox,
table.recruitment select{
	display:inline-block;
	max-width:240px;
	vertical-align:middle;
}
body.econfirm table.recruitment .selectbox,
body.econfirm table.recruitment select{
	width:auto;
}
table.recruitment td #address{
	margin-top:12px;
}
table.recruitment td input[type=hidden]+br{
	display:none;
}

#formbox #privacypolicy{
	margin:30px auto;
	padding:30px;
	background:#f1ede7;
}


/* jukunavi
-----------------------------------------------------------*/
body.jukunavi main,
body.jukunavi_flyer main,
body.jukunavi_dm main {
	float:none;
	width:100%;
	margin-bottom:256px;
}
body.jukunavi #sidebar,
body.jukunavi_flyer #sidebar,
body.jukunavi_dm #sidebar {
	display:none;
}
body.jukunavi main p,
body.jukunavi_flyer main p,
body.jukunavi_dm main p {
	margin-bottom:1.5em;
}
body.jukunavi main h2,
body.jukunavi_flyer main h2,
body.jukunavi_dm main h2 {
	margin-bottom:30px;
	padding-left:16px;
	font-size:20px;
}
body.jukunavi main h2:before,
body.jukunavi_flyer main h2:before,
body.jukunavi_dm main h2:before {
	width:6px;
}
body.jukunavi main ul+h2,
body.jukunavi_flyer main ul+h2,
body.jukunavi_dm main ul+h2 {
	margin-top:146px;
}
body.jukunavi main li,
body.jukunavi_flyer main li,
body.jukunavi_dm main li {
	width:25%;
	border-left:1px #ccc solid;
}
body.jukunavi main li:nth-of-type(4n+1),
body.jukunavi_flyer main li:nth-of-type(4n+1),
body.jukunavi_dm main li:nth-of-type(4n+1) {
	border-left:0;
    clear: both;
}
body.jukunavi main li:nth-of-type(n+5),
body.jukunavi_flyer main li:nth-of-type(n+5),
body.jukunavi_dm main li:nth-of-type(n+5) {
	margin-top:80px;
}
body.jukunavi main li a,
body.jukunavi_flyer main li a,
body.jukunavi_dm main li a {
	display:block;
	padding:10px 42px 24px;
	text-align:center;
}
body.jukunavi main li span,
body.jukunavi_flyer main li span,
body.jukunavi_dm main li span {
	display:block;
	padding-right:20px;
	font-size:22px;
	font-weight:bold;
	position:relative;
}
body.jukunavi main li span::before,
body.jukunavi_flyer main li span::before,
body.jukunavi_dm main li span::before {
	content: "";
	width:12px;
	height:12px;
	border:0px;
	border-top:solid 3px #ec6c00;
	border-right:solid 3px #ec6c00;
	transform:rotate(45deg);
	position:absolute;
	top:50%;
	right:0;
	margin-top:-9px;
}
body.jukunavi main li img,
body.jukunavi_flyer main li img,
body.jukunavi_dm main li img {
	width:120px;
}


/* archive : 体験談
-----------------------------------------------------------*/
body.post-type-archive-es main h2,
body.post-type-archive-jhs1 main h2,
body.post-type-archive-jhs2 main h2,
body.post-type-archive-hs main h2{
	margin:40px 0 0;
	padding:20px;
	line-height:1.3;
	font-size:28px;
	font-weight:bold;
	color:#32c3bc;
	background:#f8f8f8;
	border:1px #edeceb solid;
	border-radius:3px;
}
body.post-type-archive-jhs1 main h2{color:#8fc320}
body.post-type-archive-jhs2 main h2{color:#f39da6}
body.post-type-archive-es main h2{color:#ec6c00}
body.post-type-archive-es main h2::before,
body.post-type-archive-jhs1 main h2::before,
body.post-type-archive-jhs2 main h2::before,
body.post-type-archive-hs main h2::before{
	display:none;
}
body.post-type-archive-es .expEntry,
body.post-type-archive-jhs1 .expEntry,
body.post-type-archive-jhs2 .expEntry,
body.post-type-archive-hs .expEntry{
	padding: 40px 160px 40px 40px;
	position: relative;
}
body.post-type-archive-es .expEntry.hide,
body.post-type-archive-jhs1 .expEntry.hide,
body.post-type-archive-jhs2 .expEntry.hide,
body.post-type-archive-hs .expEntry.hide{
	padding: 0;
}
body.post-type-archive-es .expEntry a,
body.post-type-archive-jhs1 .expEntry a,
body.post-type-archive-jhs2 .expEntry a,
body.post-type-archive-hs .expEntry a{
	display: block;
	width: 120px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border: 1px #ddd solid;
	border-radius: 4px;
	position: absolute;
	right: 0;
	bottom: 50px;
}


/* movie
-----------------------------------------------------------*/
body.movie section+section{
	margin-top:80px;
}
body.movie #movie{
	display:flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
body.movie #movie a{
	display:block;
	width:calc(50% - 36px);
}
body.movie #movie a img{
	display:block;
}
body.movie #movie a:nth-of-type(n+3){
	margin-top:72px;
}
body.movie #modal{
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 8;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0,0,0,.75);
	filter: opacity(0);
	visibility: hidden;
	transition: .5s;
}
body.movie #modal.open{
	filter: opacity(1);
	visibility: visible;
	transition: .5s;
}
body.movie #modal iframe{
	width: 64vw;
	height: 36vw;
}


/* TOP slider */
@media screen and (max-width:1280px){
  body.home #topslider .entry:nth-of-type(4) .copy{
    margin-top: -3%;
	}
}
