@charset "utf-8";

body{
	background: #212121 none;
	color: #000;
	font-family: Arial, Verdana, "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 14px;
	font-weight: normal;
	font-style: normal;
	letter-spacing: 0;
	line-height: 1.6;
	-webkit-text-size-adjust: none;
}

@media screen and (min-width: 321px) {
	body{
		font-size: 14.5px;
	}
}

@media screen and (min-width: 351px) {
	body{
		font-size: 15px;
	}
}
 
/* iPhone6のみ */
@media screen and (min-width: 376px) {
	body{
		font-size: 15.5px;
	}
}

@media screen and (min-width: 395px) {
	body{
		font-size: 16px;
	}
}
 
/* iPhone6 Plus ~ ちょっと大きいスマホまで */
@media screen and (min-width: 414px) {
	body{
		font-size: 16.5px;
	}
}

@media screen and (orientation:landscape) {
	body{
		font-size: 1.40em;
	}
}

.white01{ color: #fff;}
.red01{ color: #dc2215;}
.gray01{ color: #666;}
.gray02{ color: #333;}

.bg-white01{ background-color: #fff;}
.bg-red01{ background-color: #dc2215;}
.bg01{ background: #fff url(../img/bg_01.png) repeat scroll left top;}
.bg02{
	background: #fff url(../img/bg_01.png) repeat scroll left top; 
	border-top:5px solid #000;
	border-bottom:2px solid #000;
	}

.p10{ padding: 5px;}
.p15{ padding: 8px;}
.p20{ padding: 10px;}
.p25{ padding: 13px;}
.p30{ padding: 15px;}

.prl30{
	padding-right: 4.6875%;
	padding-left: 4.6875%;
}

.disc{
	background: transparent url(../img/ic_disc.png) no-repeat scroll left 6px;
	background-size: 5px;
	padding-left: 9px;
}

/* ---------------------------------------------------------------- wrapper ---- */

#wrapper{
	background: #fff none;
	width: 100%;
	overflow: hidden;
}

/* ---------------------------------------------------------------- header ---- */

#header{
	position: relative;
	z-index: 3;
}

#header > .inner{

}

#header .switch_menu{
	position: absolute;
	top: 0;
	right: 0;
	width: 19.0625%;
}

#header .switch_menu.on{
	background: #eaeaea none;
}

#menu{
	background: #eaeaea none;
	position: absolute;
	left: 0;
	display: none;
	width: 100%;
	border-bottom: 5px solid #000;
	padding-bottom: 15px;
}

#header .switch_menu.on + #menu{
	display: block;
}

#menu > .nav > li{
	border-top: 1px solid #bababa;
}

#menu > .nav > li:first-child{
	border-top: none;
}

#menu > .nav > li > a{
	background: #eaeaea url(../img/head_arrow_r.png) no-repeat scroll 95% center;
	background-size: 16px;
	display: block;
	font-size: 1.07142857em;
	color: #dc2215;
	padding: 15px;
}

#menu > .nav > li > a.has_sub{ background-image: url(../img/head_arrow_b.png);}
#menu > .nav > li > a.has_sub.on{ background-image: url(../img/head_arrow_t.png);}

#menu > .nav > li > .sub{
	background: #fff none;
	display: none;
}

#menu > .nav > li > .sub > li{
	border-top: 1px dashed #bababa;
}

#menu > .nav > li > .sub > li a{
	background: transparent url(../img/head_ico_01.png) no-repeat scroll 30px center;
	display: block;
	font-size: 0.85714286em;
	padding: 15px 15px 15px 29px;
}

#menu .close_menu{
	background: #bababa none;
	margin: 15px 15px 0 15px;
}

#menu .close_menu a{
	display: block;
	font-size: 1em;
	line-height: 14px;
	padding: 15px;
	text-align: center;
}

#header .ae5d8998{
	overflow: hidden;
}

#header .ae5d8998 > li{
	float: left;
	width: 50%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


#header .ae5d8998 > li > a{
	background: #dc2215 none;
	display: block;
	font-size: 0.78571429em;
	line-height: 1;
	color: #fff;
	letter-spacing: 2px;
	padding: 8% 0;
	text-align: center;
}

#header .ae5d8998 > li.odd > a{
	background: #333 none;
}


/* ---------------------------------------------------------------- main ---- */

#main{
	position: relative;
	z-index: 2;
}

#main > .inner{

}

#main .topicpath{
	font-size: 0.71428571em;
	padding: 5px 5px 0 5px;
	margin-bottom: 13px;
}

#main .topicpath > span{
	display: inline-block;
}

#main .topicpath a{
	text-decoration: underline;
}

#main .topicpath a:hover{
	text-decoration: none;
}

/* ---------------------------------------------------------------- footer ---- */

#footer{
	position: relative;
	z-index: 1;
	padding: 10px 0;
}

#footer > .inner{

}

#footer .d2c028ab{
	background: transparent url(../img/foot_bg_02.png) repeat scroll left top;
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
}

#footer .d2c028ab > .h{
	font-size: 0.85714286em;
	color: #000;
	border-bottom: 2px solid #000;
	padding: 8px 0;
	text-align: center;
}

#footer .d2c028ab > .bnrs{
	overflow: hidden;
	padding: 10px;
}

/*#footer .students .h{
	background: transparent url(../img/foot_bg_01.png) repeat scroll left top;
	font-size: 22px;
	line-height: 22px;
	color: #fff;
	letter-spacing: 3px;
	padding: 20px;
	text-align: center;
}

#footer .students .nav{
	overflow: hidden;
	border-top: 2px solid #ccc;
}

#footer .students .nav > li{
	float: left;
	width: 50%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-bottom: 2px solid #ccc;
	border-left: 2px solid #ccc;
}

#footer .students .nav > li.noleftborder{
	border-left: none;
}

#footer .students .nav > li > a{
	background: transparent url(../img/foot_corner_01.png) no-repeat scroll left top;
	display: block;
	font-size: 24px;
	line-height: 1.0;
	padding: 40px 0;
	text-align: center;
}*/

#footer .pagetop{
	border-top: 1px solid #ccc;
}
#footer .pagetop > a{
	background: #f3ffa3 url(../img/foot_arrow_pagetop.png) no-repeat scroll center 13px;
	color: #393635;
	background-size: 3% auto;
	display: block;
	font-size: 0.71428571em;
	line-height: 1;
	padding: 8% 0 4% 0;
	text-align: center;
}

#footer > .inner > .nav{
	background: #393635 none;
	color: #fff;
	padding: 0 10px;
}

#footer > .inner > .nav > li{
	border-top: 1px solid #5b5b5b;
}

#footer > .inner > .nav > li:first-child{
	border-top: none;
}

#footer > .inner > .nav > li > a{
	background: transparent url(../img/foot_ico_01.png) no-repeat scroll 5px center;
	background-size: 2.5% auto;
	display: block;
	font-size: 0.85714286em;
	line-height: 1;
	padding: 5% 0 5% 6%;
}

#footer > .inner > .copyright{
	font-size: 0.71428571em;
	margin-top: 10px;
	text-align: center;
	color: #333;
}

#footer > .inner > .logo{
	margin-top: 5px;
	text-align: center;
}
