/* --------------------------------
  ipad - pc
-------------------------------- */

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

		body::before {
		content: "";
		background: url(../images/main-v8.jpg) no-repeat center center;/*デフォルト時*/
		/*background: url(../images/mv.jpg) no-repeat center center;/*トップ画面変更時*/
		background-size: cover;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		z-index: 0;
	}

		.box-intro .table-cell {
		display: table-cell;
		vertical-align: top;
		position: relative;
		top: -110px;
		left: 27px;
	}

		.box-intro h1{
		font-size: 7.2em;
		letter-spacing: 35px;
		position: relative;
		top: 20px;
	}

	.box-intro h2 {
		font-size: 1em;
		letter-spacing: 10px;
		text-transform: uppercase;
		color: #000;
		line-height: 4;
		font-weight: 700;
		position: relative;
		top: 30px;
	}

	.mv-btn{
		position: absolute;
		top: 55%;
		left: 31%;
		z-index: 1;
	}


/*-------- title 見出し --------*/

.title {
	margin-bottom: 40px;
}

.title h1{
	padding: 0 0 10px;
}

.title img {
	display: inline-block;
}

.title span {
	display: block;
	font-size: 2.2em;
	position: relative;
	top: 8px;
}

/*-------- Header --------*/


#logo {
	position: relative;
	top: 30px;
	left: 15px;
}

#logo img {
	margin: 0 0 20px;
}

header .slide-right{
	max-width: 500px;
}

/*-------- nav --------*/

#navg ul li {
	margin: 0;
}

.skew-menu {
	position: absolute;
	left: 70px;
}

.skew-menu ul li a {
	display: block;
	padding: 1em 1.5em;
	color: inherit;
	text-decoration: none;
	transform: skew(25deg);
}

#opening{
	margin-top: 0;
}


/*-------- flow 流れ --------*/

.timeline .timeline-heading h3.subheading {
	font-size: 1.7em;
}


/*-------- test テスト --------*/

.test-item .test-caption h2{
	margin: 5px 0 0;
	font-size: 1.3em;
	text-align: left;
}

/*-------- tokuten　参加特典 --------*/

.kigen{
	width: 83%;
}

.sp_toku, .atama_toku{
	width: 83%;
}

.toku_box{
	padding:3px 5px 1px 7px;
	font-size:0.6em;
}

.tokuten .point_item .point_caption h2{
	font-size: 1.5em;
	line-height: 28px;
}

/*-------- pagetop　トップページ --------*/

.pagetop {
	position: fixed;
	bottom: 169px;
}

.pagetop a {
	padding: 8px;
}

.pagetop a:hover {
	padding: 15px 8px;
}

}

@media screen and (min-width: 481px) and (max-width: 767px) {
	body::before {
		content: "";
		background: url(../images/main.jpg) no-repeat center center;/*デフォルト時*/
		/*background: url(../images/mv.jpg) no-repeat center center;/*トップ画面変更時*/
		background-size: cover;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		z-index: 0;
	}

}


/* --------------------------------
	480px以下のデバイス
-------------------------------- */

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

body::before {
	content: "";
	background: url(../images/main_sp.jpg) no-repeat center center;/*デフォルト時*/
	/*background: url(../images/mv_sp_v2.jpg) no-repeat center center;/*トップ画面変更時*/
	background-size: cover;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 0;
}

section {
	padding-top: 35px;
}

/*-------- title 見出し --------*/

.title_sp{
	padding: 0 30px;
	line-height: 25px;
}

/*-------- Header --------*/

.box-intro {
	background-image: none;
}

.box-intro .table-cell{
	position: relative;
	top: 10px;
	left: -17px;
	width: 390px;
}

.box-intro h1{
	font-size: 5em;
	letter-spacing: 0.2em;
	position: relative;
	left: 27px;
	top: -51px;
	margin-bottom: 35px;
}

.box-intro h2 {
	font-size: 1.2em;
	letter-spacing: 0.2em;
	position: relative;
	left: 35px;
	top: 47px;
	margin-bottom: 50px;
}

.box-words-wrapper{
	position: relative;
	top: -40px;
}

.box-intro .sche{
	position: relative;
	left: 20px;
	top:20px;
	margin-bottom: 20px;
}

.top_logo{
	position: relative;
	left: 17px;
	top: -25px;
}

.main-header .btn-common {
	padding: 12px 43px 11px;
	line-height: 20px;
	position: relative;
	top: 35px;/*デフォルト時*/
	/*bottom: -530px;/*mv.jpg使用時*/
	/*bottom: -470px;/*中高一貫部*/
	font-size: 1.3em;
}

.main-header .ikkan{
	margin-top: 10px;
}

.contact .btn-common {
	width: 335px;
	font-size: 1.7em;
	padding: 13px 10px;
	margin-top: 30px;
	line-height: 22px;
}

.annotate{max-width: 300px; line-height: 15px;}

.contact-hi2 {/*padding-top: 35px;*/padding-top: 110px;}

.contact_top .btn-common .text2{
	font-size: 0.5em;
}

.contact .btn-common .text2{
	font-size: 0.5em;
}

.video{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-top: 30px;
}
.video iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

#video .title h1{
	font-size: 1.8em;
	line-height: 35px;
	padding: 0;
}

#video span{
	font-size: 1.2em;
	padding: 0 15px 8px;
}

#voice span{
	font-size: 1.2em;
	padding: 0 15px 8px;
}

#voice .btn-common {
	width: 335px;
	font-size: 2.0em;
	padding: 13px 10px;
	margin-top: 30px;
	line-height: 22px;
}


/*-------- 特別情報　tokubetsu  --------*/

#tokubetsu .btn-common {
	font-size: 1.4em;
	padding: 12px;
	margin-top: 20px;
	width: 330px;
}

#tokubetsu .contents .btn-common {
	font-size: 1.4em;
	padding: 12px;
	margin-top: 13px;
	width: 330px;
}


/*-------- 新着情報　news  --------*/

#news{
	padding-top: 1em;
	font-size: 1.1em;
	line-height: 22px;
}

.oaerror {
	width: 85%;
	padding:15px;
}

.success {
	margin-top: 20px;
}


/*-------- opening 最初の言葉 --------*/

#opening{
	margin-top: 40px;
	padding:18px 0 33px;
}

.opening {
	margin-bottom: 0;
}

.opening h1{
	letter-spacing: 0.09em;
	margin-bottom: 0;
	font-size: 2.5em;
}

.opening p{
	line-height: 23px;
	padding: 10px 30px 0;
	text-align: left;
	margin-bottom: 0;
}

#opening .btn-common {
	font-size: 1.4em;
	padding: 12px;
	margin-top: 20px;
	width: 330px;
}

#opening .contents .btn-common {
	font-size: 1.4em;
	padding: 12px;
	margin-top: 13px;
	width: 330px;
}

/*-------- voice --------*/

#voice{
	padding-top: 20px;
}

#voice .voice .btn-common {
	font-size: 1.4em;
	padding: 12px;
	margin-top: 20px;
	width: 330px;
}



/*-------- flow --------*/

.flow{
	margin-top: 50px;
}

.timeline .timeline-body>p{
	line-height: 23px;
	text-align: justify;
	text-justify: inter-ideograph;
}


/*-------- test --------*/

.test-item .test-caption h2{
	margin: 5px 0 0;
	font-size: 1.5em;
	text-align: left;
}

/*-------- tokuten --------*/

.kigen{
	position:relative;
	top: 0;
	width: 85%;
}

.kigen_title{
	font-size: 1.8em;
	display: block;
	margin-bottom: 15px;
}

.kigen_el{
	padding:4px 10px;
	display: block;
	width: 90%;
	margin: 0 auto 10px;
}

.kigen_ju{
	padding:4px 10px;
	display: block;
	width: 90%;
	margin: 0 auto;
}

/*中学部限定特典*/
.sp_toku{
	position:relative;
	top: 0;
	width: 85%;
}

.sp_toku_title{
	font-size: 1.8em;
	display: block;
	margin-bottom: 15px;
}

.sp_toku_text{
	padding:4px;
	display: block;
	width: 100%;
	margin: 0 auto;
}

/*atama+キャンペーン*/
.atama_toku{
	position:relative;
	top: 0;
	width: 85%;
}

.atama_toku_title{
	font-size: 1.8em;
	display: block;
	margin-bottom: 15px;
}

.atama_toku_text{
	padding:4px;
	display: block;
	width: 100%;
	margin: 0 auto;
}

.toku_box{
	padding:4px 8px 4px 10px;
}



/*-------- schedule 講習日程 --------*/


#schedule{
	margin-bottom: 70px;
}

/*-------- contact 資料請求 --------*/


.contact .btn-common {
	padding: 17px;

}

.contact{
	margin-bottom: 0;
}

.contact h1 {
	font-size:1.7em;
}

.contact .btn-common .text2{
	position: relative;
	top: -7px;
	font-size: 0.5em;
	color: #fff;
	letter-spacing:0;
}



/*-------- high 高等部 --------*/


#high{
	margin-bottom: 70px;
}



/*-------- pagetop　トップページ --------*/

.pagetop {
	position: fixed;
	bottom: 85px;
	right: 10px;
	max-width: 60px;
}

.pagetop a {
	padding: 8px;
}

.pagetop a:hover {
	padding: 15px 8px;
}

/*-------- footer　フッター --------*/

#footer {
	height: 130px;
}

.logo_footer{
	margin-top: 20px;
}


/* --------------------------------
	375px以下のデバイス
-------------------------------- */

@media screen and (max-width: 375px) {
		.box-intro .table-cell{
		position: relative;
		top: -25px;
		left: -20px;
		width: 360px;
	}

		.top_logo{
		width: 35%;
		position: relative;
		left: 20px;
		top: 10px;
	}

	.box-intro h1{
		font-size: 4.5em;
		letter-spacing: 0.2em;
		position: relative;
		left: 32px;
		top: -45px;
		margin-bottom: 35px;
	}

	.box-intro h2 {
		font-size: 1.1em;
		letter-spacing: 0.1em;
		position: relative;
		left: 40px;
		top: 50px;
		margin-bottom: 50px;
	}

	/*mv_spのときに表示*/
	/*.main-header .btn-common {
		padding: 15px 43px;
		position: relative;
		bottom: -460px;
		font-size: 1.5em;
	}*/


}




/* --------------------------------
   pc
-------------------------------- */

@media screen and (min-width: 1028px) and (max-width: 1199px) {


/*-------- Header --------*/


#logo {
	top: -15px;
	left: 15px;
}

/*-------- about 代表挨拶 --------*/

.about h2{
	letter-spacing: 0.3em;
	line-height: 40px;
	margin-bottom: 20px;
	font-size: 1.9em;
}

.about img{
	position: relative;
	top: 135px;
	left: -18px;
	max-width: 330px;
	margin: 0 auto;
}

}






