@charset "utf-8";

/*------------------------------------------------------------------
	
		base.css
	 
------------------------------------------------------------------*/
body {
	color: #333;
	font-size: 10px;
	min-width: 980px;
}
.alphaOver a:hover img {
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity:	.7;
	opacity:	.7;
}
a,  a:link {
	text-decoration:none;
}
a:hover {
	text-decoration:underline;
}
.sp {
	display: none;
}
#wrapper{
	overflow:hidden;
	width: 100%;
}

/* header
--------------------------------------------------------------- */
header {
	position: absolute;
	top:0;
	z-index:10;
	width:100%;
	min-width: 980px;
	background:#FFF;
}
header .inner {
	max-width:1188px;
	padding-top:20px;
	margin:0 auto;
	position:relative;
}
header h1 {
	float:left;
	width:123px;
}
header nav > ul {
	padding-top:35px;
	float:right;
}
header nav > ul > li {
	float:left;
	position:relative;
}
header nav > ul > li > a {
	color:#333;
	font-size:15px;
	display:block;
	padding:20px;
}
header nav > ul > li > a b {
	font-weight:normal
}
header nav > ul > li > a:hover,  header nav > ul > li > a.active {
	color:#333;
	background:#e8eaed;
	text-decoration:none;
}
header nav > ul > li > a:hover b,  header nav > ul > li > a.active b,  header nav > ul > li > a.current b {
	border-bottom: 2px solid #6f64aa
}
header nav > ul > li > a+div {
	padding:32px 27px;
	position:absolute;
	z-index:1;
	left:-5px;
	top:54px;
	display:none;
	/*box-shadow: 0 8px 8px rgba(0,0,0,.3);*/
	background: url(../img/bg_nav_child01.png) no-repeat top center;
	width: 270px;
	height: 184px;
}
header nav > ul > li.news > a+div {
	padding:32px 10px 21px 27px;
	background: url(../img/bg_nav_child02.png) no-repeat top center;
	width: 350px;
	height: 235px;
	left:-7px;
}
header nav > ul > li > a+div a {
	color:#333;
}
header nav > ul > li > a+div p {
	font-size:20px;
	margin-bottom:20px;
	white-space:nowrap
}
header nav > ul > li > a+div p a:before {
	content:url(../img/ic_arrow_l.png);
	padding-right:5px;
	margin-top:-3px;
	float:left;
}
header nav > ul > li > a+div p a:hover {
	text-decoration:none;
	opacity:.7;
}
header nav > ul > li > a+div li,  header nav > ul > li > a+div dd {
	font-size:15px;
	padding:14px 0;
}
header nav > ul > li > a+div li a,  header nav > ul > li > a+div dd a {
	display:block;
	background:url(../img/ic_arrow_bk.png) 0 1px no-repeat;
	padding-left:15px;
}
header nav > ul > li > a+div dt {
	font-size:15px;
	white-space:nowrap;
	font-weight:bold;
	line-height:40px;
}
.company div {
	width:230px;
}
.news div {
	width:350px;
}
.service div {
	width:230px;
}
.recruit div {
	width:230px;
}
.news div dl {
	width:170px;
	float:left;
}
.news div dl+dl {
}
header nav > ul > li.contact {
	margin-left:25px;
}
header nav > ul > li.contact a {
	padding:10px 0px 10px 45px;
	height:14px;
	line-height:1;
	color:#fff;
	margin-top:10px;
	background:url(../img/bg_contact_btn.png) no-repeat left top;
	width: 113px;
}
header nav > ul > li.contact a:hover {
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity:	.7;
	opacity:	.7;
}

/* subMenu */
header nav .subMenu {
	position:absolute;
	top:10px;
	right:0;
	text-align:right;
}
header nav .subMenu p {
	float: left;
	margin-right: 15px;
	padding-left: 10px;
	border-left: 1px solid #333;
}
header nav .subMenu p:first-child {
	border: none;
}
header nav .subMenu p a {
	color:#666;
	font-size:13px;
}
/*
header nav .subMenu p.en a:before {
	content:url(../img/ic_global2.png);
	padding-right:5px;
	float:left;
	margin-top:-2px;
}
*/
header nav .subMenu p.en {
	margin-top: 11px;
}
header nav .subMenu p.hd {
	margin-top: 3px;
	border-left: none;
}
header nav .subMenu p.hd a {
	display: block;
	border: 1px solid #b2b2b2;
	background: url(../img/ic_blank_w2.png) no-repeat 9px center;
	padding: 7px 12px 7px 27px;
	float:left;
	text-decoration: none;
}
header nav .subMenu p.hd a:hover {
	text-decoration: underline;
}
header nav .subMenu #btnSma {
	float: left;
}
header nav .subMenu #btnSma li {
	float: left;
}
header nav .subMenu #btnSma li:first-child {
	margin-right: 5px;
}
header nav .subMenu #btnSma li a {
	display: block;
	height: 32px;
	width: 32px;
}


/* header.fixed */
header.fixed {
	position: fixed;
	background: url(../img/bg_alphawhite.png);
	z-index: 9999;
}
header.fixed .inner {
	padding: 10px;
}
header.fixed .inner h1 img {
  width: auto;
  /* 180823修正 */
  /*height: 50px;*/
  height: 70px;
  /* 180823修正ここまで */
}
header.fixed nav .subMenu {
	display: none;
}
header.fixed nav > ul {
	padding: 0;
}


/* container
--------------------------------------------------------------- */
#container {
	position:relative;
	background:url(../img/bg_alpha4.png)
}
#pagetop {
	width:84px;
	height:84px;
	position: absolute;
	z-index:1000;
	right:20px;
	bottom:20px;
}
#pagetop.fixed {
	width:84px;
	height:84px;
	position:fixed;
	z-index:1000;
	right:20px;
	bottom:20px;
}


/* footer
--------------------------------------------------------------- */
footer {
	border-top:8px solid #60549e;
	background:#1f1e24;
}
footer a {
	color:#ddd;
	text-decoration:none;
}
footer a:hover {
	text-decoration:underline;
}
footer .inner {
	max-width:1188px;
	margin:0 auto;
	padding:60px 0 40px;
}
footer .inner > div {
	width:24.5%;
	float:left;
	padding-left:3%;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	box-sizing:border-box;
}
footer .inner > div:first-child {
	width:22%;
	padding-left:0;
}
footer .inner > div p {
	font-size:2.4em;
	margin-bottom:22px;
}
footer .inner > div p a:before {
	content: url(../img/ic_arrow_l_bk.png);
	padding-right:8px;
	float:left;
}
footer .inner > div dt {
	font-size:1.4em;
	color:#eee;
	margin-bottom:20px;
	font-weight:bold;
}
footer .inner > div dd+dt {
	margin-top:40px;
}
footer .inner > div ul+p {
	margin-top:50px;
}
footer .inner > div li,  footer .inner > div dd {
	font-size:1.4em;
	padding:5px 0 15px;
}
footer .inner > div li a:before,  footer .inner > div dd a:before {
	content:url(../img/ic_arrows_w.png);
	padding-right:8px;
}
footer .inner > div+div {
	border-left:1px solid #555;
}
footer .inner > div dd a:before,  footer .inner > div li a:before {
	content:url(../img/ic_arrows_w.png);
	padding-right:5px;
}
footer .inner > div dd a.blank:before,  footer .inner > div li a.blank:before {
	content: url(../img/ic_blank_w.png);
}
footer .bottom {
	border-top:1px solid #555;
	clear:both;
	padding:30px 0;
}
footer .bottom .inner {
	padding: 0;
}
footer .bottom li {
	float:left;
	font-size:1.3em;
	padding-right:20px;
}
footer .bottom ul {
	float:left;
}
footer .bottom small {
	float:right;
	color:#ddd;
}


@media screen and (max-width: 1280px) {
	header .inner {
		padding-right:5px;
	}
	/* subMenu */
	header nav .subMenu {
		right:5px;
	}
	header nav > p {
		right:70px;
	}
}


@media print {
	header {
		display:none;
	}
	footer {
		display:none;
	}
}
