@charset "utf-8";

/*------------------------------------------------------------
	normalize
------------------------------------------------------------*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, a, em, img, strong, sub, sup, i, dl, dt, dd, ol, ul, li, form, label, table, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
}

body, table, input, textarea, select, option {
	font-family: Meiryo, "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
	line-height: 1.1;
}

table, input, textarea, select, option {
	line-height: 1.1;
}

ul {
	list-style: none;
}

img {
	vertical-align: top;
}

ul img {
	display: block;
	vertical-align: baseline;
}

:focus {
	outline: 0;
}

a {
	color: #333;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

.cf { zoom:1; }
.cf:before, .cf:after { content:""; display:table; }
.cf:after { clear:both; }

.clear {
	clear: both;
	visibility: visible;
}

/*------------------------------------------------------------
	body
------------------------------------------------------------*/




body {
	line-height: 1.5;
	font-size: 14px;
	color: #333;
	background-color: #fff;
}

#header, #gNavi ul, #main, .footerOuter, #footer .footerBottom .clearfix,
#pagePath {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

#main {
	position: relative;
}

#main {
 *zoom: 1;
}

#main:after {
	content: '';
	display: table;
	clear: both;
}

/*------------------------------------------------------------
	header
------------------------------------------------------------*/




#header {
	overflow: hidden;
	zoom: 1;
}

#header p.logo {
	padding-left: 8px;
	float: left;
}

#header p.logo a {
	display: block;
	width: 180px;
	height: 88px;
text-indent: -9999px;
background: url(../../img/common/logo.gif) no-repeat 0 0;
}

#header .headerRight {
	float: right;
	width: 480px;
	font-size: 12px;
	position:relative;
}

#header ul.lang {
	padding: 14px 248px 0 0;
	float: right;
	line-height: 13px;
}

#header ul.lang a {
	color: #646464;
}

#header ul.lang li {
	float: left;
	margin-left: 10px;
	padding-left: 10px;
	border-left: 1px solid #333;
}

#header ul.lang li:first-child {
	margin-left: 0;
	padding-left: 10px;
	border-left: none;
	background: url(../../img/common/img_ar_02.png) no-repeat 0 3px;
}

#header .sns {
	float: right;
	clear: right;
	margin: 20px 4px 0 0;
}

#header .sns a {
	display: block;
	+width: 70px;
	line-height: 33px;
	padding: 0 40px 0 0;
	background: url(../../img/common/img_ic_01.gif) no-repeat top right;
}

#gNavi {
	border-top: #e11922 1px solid;
	border-bottom: #ccc 1px solid;
	overflow: hidden;
	zoom: 1;
}

#gNavi li {
	float: left;
	width: 14.28%;
	text-align: center;
	font-size: 18px;
}

#gNavi li.s1 {
	width: 10.28%;
}

#gNavi li.b1 {
	width: 18.28%;
}

#gNavi li a {
	display: block;
	padding: 18px 0;
}

#gNavi li a:hover {
	background-color: #e11922 !important;
	text-decoration: none;
	color:#ffffff;
}

#gNavi li a.on {
	background-color: #e11922 !important;
	color: #fff;
}

.sp.navi ul {
	display: none;
	overflow: hidden;
	zoom: 1;
	border-top: #e11922 1px solid;
}

.sp.navi ul li {
	width: 50%;
	float: left;
}

.sp.navi ul li.n07 {
	width: 100%;
	float: left;
}


.sp.navi ul li a {
	display: block;
height: 16px;
font-size: 14px;
padding: 12px 20px 16px 47px;
border-bottom: #c8c8c8 1px solid;
}


.sp.navi ul li.n02 a {
	background:url(../../sp/img/common/img_ic_01.gif) no-repeat 12px 12px;
	background-size:20px 21px;
}

.sp.navi ul li.n01 a {
	background:url(../../sp/img/common/img_ic_02.gif) no-repeat 12px 12px;
	background-size:20px 21px;
}

.sp.navi ul li.n03 a {
	background:url(../../sp/img/common/gnav_csr.png) no-repeat 12px 12px;
	background-size:20px 20px;
}

.sp.navi ul li.n04 a {
	background:url(../../sp/img/common/gnav_news.png) no-repeat 12px 12px;
	background-size:20px 20px;
}

.sp.navi ul li.n05 a {
	background:url(../../sp/img/common/gnav_ir.png) no-repeat 12px 12px;
	background-size:20px 20px;
}

.sp.navi ul li.n06 a {
	background:url(../../sp/img/common/gnav_recruit.png) no-repeat 12px 12px;
	background-size:20px 20px;
}

.sp.navi ul li.n07 a {
	background: url(../../sp/img/common/gnav_products_service.png) #ffffff no-repeat 12px 9px !important;
	background-size: 24px 24px !important;
}

.sp.navi ul li:nth-child(even) a {
	border-left: #c8c8c8 1px solid;
}

#pagePath div {
	color: #646464;
	font-size: 12px;
	padding: 13px 7px;
}

#pagePath a {
	color: #646464;
}

/*------------------------------------------------------------
	content
------------------------------------------------------------*/


#conts {
	position:relative;
}

#conts,
.extend.conts .subInner {
	padding: 0 248px 120px 8px;
}

#conts.withoutSidebar {
	padding-right: 0;
}

#sideBar {
	width: 224px;
	position: absolute;
	top: 0;
	right: 0;
}

#sideBar h2 a {
	display: block;
	font-size: 22px;
	font-weight: normal;
	color: #ffffff;
	padding: 14px 25px;
	padding-right: 0;
	border-top: #e43038 4px solid;
	background-color: #f08c90;
}

#sideBar ul {
	background-color: rgb(244,244,244);
	padding: 24px 16px 0 16px;
}

#sideBar ul li {
	padding-bottom: 25px;
	+padding-bottom: 18px;
}

#sideBar ul li a {
	display: block;
	font-size: 14px;
	line-height: 14px;
	padding: 0 0 0 8px;
}

#sideBar ul li a.on, #sideBar ul li a:hover {
	color: #e11922;
	padding: 0 0 0 4px;
	border-left: #e11922 4px solid;
}

#sideBar a:hover {
	text-decoration: none;
}

#sideBar ul li a:hover, #header .sns a:hover {
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=70);
}

#sideBar ul li a span.icon {
	padding:0 15px 0 0;
	background:url(../../img/common/ic_blank.png) no-repeat right 4px;
}

/*------------------------------------------------------------
	footer
------------------------------------------------------------*/




#footer {
	color: #fff;
	background-color: #e11923;
	font-size: 12px;
	position:relative;
}

#footer a {
	color: #fff;
}

#footer .footerLinks {
	overflow: hidden;
	zoom: 1;
	padding: 45px 8px 33px 8px;
}

#footer .footerLinks li {
	float: left;
	width: 16.66%;
	line-height: 18px;
	margin-bottom: 5px;
}

#footer .footerLinks li a.tit {
	display: block;
	width: 144px;
	max-width: 95%;
	font-size: 16px;
	padding: 0 0 1px 0;
	margin: 0 0 12px 0;
	border-bottom: #fff 1px solid;
}

#footer .footerLinks li li {
	float: none;
	width: 100%;
}

#footer .footerLinks li ul li a.tit {
	display: inline;
	width: auto;
	max-width: 95%;
	font-size: 12px;
	padding: 0;
	margin: 0;
	border-bottom:none;
}


#footer .footerLinks li ul li ul {
	height:0;
	overflow:hidden;
}

#footer .footerBottom {
	background-color: #333;
	padding: 7px 0;
}

#footer .footerBottom .clearfix {
	padding: 0;
	max-width: 960px;
}

#footer .footerBottom .link {
	float: left;
}

#footer .footerBottom .copy {
	float: right;
}

.hideMenu {
	display: none;
}

@media (min-width: 640px) {
	#footer .footerLinks li ul {
	    display: block !important;
    }
}