@charset "UTF-8";
/* CSS Document */

/* common_sp.css */

/***
* styles for iPhone & andoroid vertical 300 and up @ 16px!
*/

@media only print, only screen and (min-width: 18.75em){
	
.tab,
.pc,
.pc_tab{
	display:none;
}
	
.sp,
.tab_sp{
	display:block;
}

#logo{
	float:none;
}

/* header */

#header{
	padding:0;
}

#headerSp{
	width:100%;
	padding:26px 0 27px;
	background:#fff;
	position: relative;
	z-index:9999;
}

#mainVisualLogoSp{
	line-height:0;
}

#mainVisualLogoSp a{
	color:#000;
}

#header nav{
	float:none;
}

#headerInner{
	width:100%;
}

#navSp{
	padding:20px 0;
	display:none;
	width:100%;
	position:absolute;
	top:53px;
	z-index:9999;
	text-align:left;
	background:#eee;
}

#navSp li{
	font-size:120%;
}

#navSp a{
	padding:15px 20px;
	display:block;
}

#top #navTopSp,
#outline #navOutlineSp,
#business #navBusinessSp,
#recruit #navRecruitSp,
#access #navAccessSp,
#contact #navContactSp{
	border-bottom:2px solid #b11e22;
}

#closeOverlay{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	z-index:9998;
	display:none;
}

/* btnMenu */

#btnMenu{
	width: 1em;
	height: 18px;
	padding:20px 15px;
	color: #000;
	font-size: 1.5em;
	cursor: pointer;
	position: absolute;
	top:-2px;
	right:2px;
	z-index: 9999;
	-moz-transition: all 0.4s cubic-bezier(0.230, 1.000, 0.320, 1.000);
	-o-transition: all 0.4s cubic-bezier(0.230, 1.000, 0.320, 1.000);
	-webkit-transition: all 0.4s cubic-bezier(0.230, 1.000, 0.320, 1.000);
	transition: all 0.4s cubic-bezier(0.230, 1.000, 0.320, 1.000);
	-moz-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}

.bars.active{
  background: transparent;
}

.bars.active:before, .bars.active:after {
	background: #000;
	top: 0;
	width: 100%;
	user-select: none;
}

.bars.active:before {
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.bars.active:after {
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.bars {
	width: 100%;
	height: 3px;
	margin-top: .3em;
	background: #000;
	position: relative;
	display: block;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.bars:before {
	top: -8px;
}

.bars:after {
  top: 8px;
}

.bars:before, .bars:after {
	width: 100%;
	height: 0.125em;
	background: #000;
	position: absolute;
	left: 0;
	content: '';
	-moz-transform: rotate(0);
	-ms-transform: rotate(0);
	-webkit-transform: rotate(0);
	transform: rotate(0);
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

/* main */

main{
	padding:0 20px;
}

#mainContents{
	width:100%;
}

}