@charset "utf-8";
/* CSS Document */

a img{border-style:none;}
.clearfix:after{
	content: ".";
	display: block;
	height: 0;
	font-size:0;   
	clear: both;
	visibility:hidden;
}
.clearfix{
	display: inline-block;
}
/* Hides from IE Mac */
* html .clearfix{
	height: 1%;
}
.clearfix{
	display:block;
}
.br_pc{
	display:none;
}
.pc_display{
  display:none;
}
.sp_display{
  display:block;
}

/***** ヘッダー *******/
body{
	position:relative;
}
header{
	background-color:#FFF;
		height:14vw!important;
		position:relative;
		z-index:100;
}
@media only screen and (orientation : landscape) { /*横向き*/
    header{
		height:90px!important;
		background-color:#FFF;
	}
}

header h1{
	position:absolute;
	margin-top:3%;
	left:3%;
	width:40%;
}
header .navi{
	display:none;
}

header .sp_navi{
	top:0px;
	left:0px;
	width:100%;
	height:100%;
}
header .sp_navi dl{
	position:relative;
	height:100%;
}
header .sp_navi .btn_off{
	background:url(../img/menu_btn.gif) right 0 no-repeat;
	width:13%;
	height:4em;
	background-size:contain;
}
header .sp_navi .btn_on{
	background:url(../img/menu_close_btn.gif) right 0 no-repeat;
	width:13%;
	height:4em;
	background-size:contain;
}
header .sp_navi .btn{
	position:fixed!important;
	right:0px!important;
	top:0px!important;
	z-index:10001;
	width:13%!important;
}
header .sp_navi dd{
	height:100%;
	background-color:#FFF;
	filter:alpha(opacity=95);
	opacity:0.95;
    -moz-opacity: 0.95;
	position:fixed;
	top:0px;
	left:0px;
	width:100%;
	z-index:1000;
	overflow-y:scroll;
}
header .sp_navi dd ul{
	width:80%;
	margin:0 auto;
	padding-top:20%;
	padding-bottom:20%;
}
header .sp_navi dd ul li{
	padding-bottom:6%;
	border-bottom:1px solid #000;
	margin-bottom:6%;
}

header .sp_navi dd ul li a{
	text-align:center;
	text-indent:-10000px;
	display:block;
}
header .sp_navi dd ul li.sub{
	display:none;
	margin-top:-3%;
}
header .sp_navi dd ul li.sub a{
	color:#000;
	background:url(../../img/arrow.png) 2em center no-repeat;
	background-size:0.5em;
	padding-left:3em;
	display:block;
	text-indent:0px;
	text-decoration:none;
	text-align:left;
	margin-bottom:1em;
}
header .sp_navi dd ul li:last-child a{
	margin-bottom:0px;
}
header .sp_navi dd ul li.home a{
	background:url(../img/header/home.png) 10% center no-repeat;
	background-size:contain;
}
#home header .sp_navi dd ul li.home a{
	background:url(../img/header/home_on.png) 10% center no-repeat;
	background-size:contain;
}
header .sp_navi dd ul li.navi01 a{
	background:url(../img/header/navi01_sp.png) 10% center no-repeat;
	background-size:contain;
}
#reason header .sp_navi dd ul li.navi01 a{
	background:url(../img/header/navi01_sp_on.png) 10% center no-repeat;
	background-size:contain;
}

header .sp_navi dd ul li.navi02 a{
	background:url(../img/header/navi02_sp.png) 10% center no-repeat;
	background-size:contain;
}
#service header .sp_navi dd ul li.navi02 a{
	background:url(../img/header/navi02_sp_on.png) 10% center no-repeat;
	background-size:contain;
}
#service header .sp_navi dd ul li.service_sub{
	display:block;
}
#service header .sp_navi dd ul li.navi02{
	border-bottom:none;
}
#service header .sp_navi dd ul{
	padding-top:10%;
}
header .sp_navi dd ul li.navi03 a{
	background:url(../img/header/navi03_sp.png) 10% center no-repeat;
	background-size:contain;
}
#works header .sp_navi dd ul li.navi03 a{
	background:url(../img/header/navi03_sp_on.png) 10% center no-repeat;
	background-size:contain;
}
header .sp_navi dd ul li.navi04 a{
	background:url(../img/header/navi04_sp.png) 10% center no-repeat;
	background-size:contain;
}
#company header .sp_navi dd ul li.navi04 a{
	background:url(../img/header/navi04_sp_on.png) 10% center no-repeat;
	background-size:contain;
}
#company header .sp_navi dd ul li.company_sub{
	display:block;
}
#company header .sp_navi dd ul li.navi04{
	border-bottom:none;
}
header .sp_navi dd ul li.navi05 a{
	background:url(../img/header/navi05_sp.png) 10% center no-repeat;
	background-size:contain;
}
#recruit header .sp_navi dd ul li.navi05 a{
	background:url(../img/header/navi05_sp_on.png) 10% center no-repeat;
	background-size:contain;
}
#recruit header .sp_navi dd ul li.navi05{
	border-bottom:none;
}
header .sp_navi dd ul li.navi06 a{
	background:url(../img/header/navi06_sp.png) 10% center no-repeat;
	background-size:contain;
}
#contact header .sp_navi dd ul li.navi06 a{
	background:url(../img/header/navi06_sp_on.png) 10% center no-repeat;
	background-size:contain;
}
#recruit header .sp_navi dd ul li.recruit_sub{
	display:block;
}
#recruit header .sp_navi dd ul li.recruit_sub .title{
	margin-bottom:10px;
	font-weight:bold;
	font-size:1.2em;
	padding-left:0.5em;
	margin-bottom:1em;
	padding-top:0.5em;
	margin-left:1em;
}
#recruit header .sp_navi dd ul li.recruit_sub a{
	margin-bottom:1em;
}
#recruit header .sp_navi dd ul{
	padding-top:10%;
}


@media only screen and (orientation : landscape) { /*横向き*/
header .sp_navi dd ul{
	width:50%;
	margin:0 auto;
	padding-top:5%;
	padding-bottom:5%;
}

}
@media only screen and (orientation : portrait) { /*縦向き*/
header .sp_navi dd ul li a{
	font-size:1em;
}
}


/***** バナーエリア *******/
#banner div:nth-of-type(1){
  background-color:#eae8e8;
}
#banner ul{
  padding:1em 3% 1px 3%;
}
#banner ul li{
  margin-bottom:1em;
}
#banner div:nth-of-type(2){
  background-color:#004ea2;
}



/***** フッター *******/
footer{
	clear:both;
}
footer .inner{
	max-width:949px;
	margin:0 auto;
	padding-left:10px;
	padding-right:10px;
	padding-bottom:20px;
	position:relative;
	padding-top:20px;
}
footer .navi{
	text-align:center;
}
footer .navi li{
	float:left;
	width:50%;
	text-align:center;
	margin-bottom:10px;
}
footer .navi2{
	padding-top:5px;
	clear:both;
}
footer .navi2 li{
	width:33%;
	margin:0 auto;
	text-align:center;
	margin-bottom:10px;
	float:none;
}
footer .logo{
	text-align:center;
	clear:both;
	width:40%;
	margin:0 auto;
	padding-top:10px;
	margin-bottom:20px;
	display:none;
}
footer .icon{
	text-align:center;
	padding-top:10px;
	clear:both;
}
footer .icon img{
	width:15%;
}
footer .icon a:nth-of-type(1) img{
	width:auto;
	margin-bottom:5px;
}
footer .copy{
	text-align:center;
	font-size:10px;
	background-color:#E9E7E7;
	padding-top:10px;
	padding-bottom:20px;
}


h2.maintitle {
	border:none !important;
}









