@charset "shift_jis";

/*-----------------------
[base.css]

1.リセット
2.基本設定
　2-1.body・基本フォント
　2-2.リンク
3.レイアウト
　3-1.レイアウトベース
　3-2.ヘッダ
　3-3.グローバルナビ
　3-4.コンテンツ
　3-5.ローカルナビ
　3-6.フッタナビ
　3-7.フッタ

------------------------*/

/*----------
1.リセット
----------*/

/*----------共通----------*/
html {  
overflow-y: scroll;  
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,fieldset,textarea,p,blockquote {
margin: 0;
padding: 0;
}

h1,h2,h3,h4,h5,h6 {
font-size: 100%;
font-weight: normal;
}

address,caption,code,em,strong {
font-style: normal;
font-weight: normal;
}

img {
vertical-align: top;
border: 0;
}

ol,ul {
list-style-type: none;
}

/*----------
2.基本設定
----------*/

/*----------2-1.body・基本フォント----------*/
body {
color: #333;
background-color: #fff;
font-size: 80%;
line-height: 1.5;
}

/*----------2-2.リンク----------*/
a:link {
color: #039;
text-decoration: none;
}

a:visited {
color: #99c;
text-decoration: none;
}

a:hover,
a:focus,
a:active {
color: #f00;
text-decoration: underline;
}

/*float*/
.clr {
clear: both;
height: 0;
font-size: 0;
}

/*Horizontal Rule*/
hr {
display: none;
}

/*----------
3.レイアウト
----------*/

/*----------3-1.レイアウトベース----------*/
#header_inner,
#gnav_inner,
#cont_inner,
#footernav_inner,
#footer_inner {
width: 960px;
margin: 0 auto;
}

/*----------3-2.ヘッダ----------*/
/*logo*/
#header .logo {
float: left;
margin-top: 18px;
}

/*head_utility*/
#header #head_utility {
float: right;
width: 847px;
margin-bottom: 3px;
}

/*utility_nav*/
#header #utility_nav {
float: right;
width: 302px;
margin-bottom: 8px;
}

#header #utility_nav li {
float: left;
margin-left:1px;
}

#header #utility_nav li.first_child {
margin-left:0;
}

/*utility_mix*/
#header #utility_mix {
clear: both;
float: right;
width: 515px;
}

#header #utility_mix ul.headnav {
float: left;
position: relative;
bottom: -1px;
}

#header #utility_mix ul.headnav li {
float: left;
margin-left:10px;
}

#header #utility_mix ul.headnav li.first_child {
margin-left:0;
}

#header #searcharea {
float: right;
width: 192px;
}

#header #searcharea .gsc-input input {
width:142px;
margin-right: 5px!important;
padding: 0 0 0 2px!important;
border-top-color: #a4a4a4;
border-right-color: #ccc;
border-bottom-color: #ccc;
border-left-color: #ccc;
background: #fff!important;
}

input.gsc-search-button {
margin: 0!important;
}

input.gsc-search-button:hover {
opacity: 0.6;
filter: alpha(opacity=60);
-ms-filter: "alpha(opacity=60)";
}

/*----------3-3.グローバルナビ----------*/
#gnav {
background: url(/image/common/bg_gnav.gif) repeat-x 0 100%;
zoom: 1;
}

#gnav ul {
position: relative;
left: 1px;
}

/*IE6*/
* html #gnav ul { padding-left: 2px; left: 0; }

#gnav li {
float: left;
margin-left: -1px;
}

#gnav li a img.stay {
position: relative;
z-index: 100;
}

/*----------3-4.コンテンツ----------*/
#content {
min-height: 450px;
height: auto !important;
height: 450px;
background: url(/image/common/bg_content.gif) repeat-x 0 0;
}

#cont_inner {
padding: 25px 0 30px;
background-color: #fff;
}

/*---汎用レイアウト（2カラム）---*/
#mainarea {
float: right;
width: 710px;
}

#mainarea_content {
width: 580px;
margin: 0 auto;
}

body#company02 #mainarea_content,
body#product #mainarea_content {
width: 600px;
}

body#technology02 #mainarea_content,
body#w_car #mainarea_content,
body#csr #mainarea_content {
width: 650px;
}

#sidearea {
float: left;
width: 230px;
margin-left: 20px;
}

/*IE6*/
* html #sidearea { margin-left: 10px; }

/*---カテゴリートップ（1カラム）---*/
#mainarea.category_top {
float: none;
width: 760px;
margin: 0 auto;
}

body#recruit #mainarea.category_top {
width: 580px;
}

#mainarea.category_top #mainarea_content {
width: 100%;
margin: 0;
}

/*----------3-5.ローカルナビ----------*/
#sidearea a {
text-decoration: none;
color: #333;
}

/*----------lnav----------*/
/*共通*/
#lnav ul li,
#lnav ul li a {
zoom: 1;
}

#lnav ul li a,
#lnav ul li span {
display: block;
}

/*第3階層*/
#lnav ul.lv3 {
border: 1px solid #ccc;
border-bottom: none;
}

#lnav ul.lv3 li.lv3 a {
background: #e4e4e4 url(/image/common/bg_lnav01.gif) repeat-x 0 0;
border-bottom: 1px solid #ccc;
}

#lnav ul.lv3 li.lv3 a span {
margin-top: 1px;
padding: 9px 10px 8px 20px;
background: url(/image/common/icon_arrow01.gif) no-repeat 10px 1.2em;
}

/*第3階層 アクティブ*/
#lnav ul.lv3 li.lv3.active a span {
color: #fff;
background: #f00 url(/image/common/icon_arrow02.gif) no-repeat 10px 1.2em;
font-weight: bold;
}

#lnav ul.lv3 li.lv3.active a.has_child span {
background-image: url(/image/common/icon_arrow03.gif);
}

#lnav ul.lv3 li.lv3.active ul.lv4 li.lv4 a.has_child span {
background-image: url(/image/common/icon_arrow01.gif);
}

/*第4階層*/
#lnav ul.lv3 ul.lv4 li.lv4 a {
border-bottom-color: #ccc;
}

#lnav ul.lv3 ul.lv4 li.lv4 a span {
padding: 7px 10px 6px 45px;
color: #333;
background: #f6f6f6 url(/image/common/icon_arrow01.gif) no-repeat 35px 1.1em;
font-weight: normal;
}

/*第4階層 アクティブ*/
#lnav ul.lv3 ul.lv4 li.lv4.active a span {
color: #fff;
background: #f00 url(/image/common/icon_arrow02.gif) no-repeat 35px 1.2em;
font-weight: bold;
}

#lnav ul.lv3 ul.lv4 li.lv4.active a.has_child span {
background-image: url(/image/common/icon_arrow03.gif);
}

/*第5階層*/
#lnav ul.lv3 ul.lv4 ul.lv5 li.lv5 a {
padding-bottom: 1px;
background: url(/image/common/line_dot01.gif) repeat-x 0 100%;
border-bottom: none; 
}

#lnav ul.lv3 ul.lv4 ul.lv5 li.lv5 a span {
margin: 1px 0;
padding: 5px 10px 4px 65px;
color: #333;
background: #fff url(/image/common/icon_arrow01.gif) no-repeat 55px 0.9em;
font-weight: normal;
}

#lnav ul.lv3 ul.lv4 ul.lv5 li.lv5.last_child a {
padding-bottom: 0;
background: none;
border-bottom: 1px solid #ccc;
}

#lnav ul.lv3 ul.lv4 ul.lv5 li.lv5 a.has_child span {
background-image: url(/image/common/icon_arrow01.gif);
}

/*第5階層 アクティブ*/
#lnav ul.lv3 ul.lv4 ul.lv5 li.lv5.active a span {
color: #fff;
background: #f00 url(/image/common/icon_arrow02.gif) no-repeat 55px 1.0em;
font-weight: bold;
}

#lnav ul.lv3 ul.lv4 ul.lv5 li.lv5.active a.has_child span {
background-image: url(/image/common/icon_arrow03.gif);
}

/*第6階層*/
#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 li.lv6 a {
padding-bottom: 0;
background: none;
}

#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 li.lv6 a span {
padding: 4px 10px 2px 85px;
color: #333;
background: #fff url(/image/common/icon_arrow04.gif) no-repeat 75px 0.9em;
font-weight: normal;
}

#lnav ul.lv3 ul.lv4 ul.lv5 li.lv5.last_child ul.lv6 a {
border-bottom: none;
}

#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 li.lv6.last_child a {
padding-bottom: 1px;
background: url(/image/common/line_dot01.gif) repeat-x 0 100%;
}

/*第6階層 アクティブ*/
#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 li.lv6.active a span {
margin-left: 55px;
padding-left: 30px;
color: #fff;
background: #f00 url(/image/common/icon_arrow05.gif) no-repeat 20px 0.9em;
font-weight: bold;
}


/*第7階層*/
#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 ul.lv7 li.lv7 a {
padding-bottom: 0;
background: none;
}

#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 ul.lv7 li.lv7 a span {
margin: 1px 0;
padding: 5px 10px 4px 105px;
color: #333;
background: #fff url(/image/common/icon_arrow04.gif) no-repeat 95px 0.9em;
font-weight: normal;
}

#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 ul.lv7 li.lv7.last_child ul.lv7 a {
border-bottom: none;
}

#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 ul.lv7 li.lv7.last_child a {
padding-bottom: 1px;
background: url(/image/common/line_dot01.gif) repeat-x 0 100%;
}

/*第7階層 アクティブ*/
#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 ul.lv7 li.lv7.active a span {
margin-left: 75px;
padding-left: 30px;
color: #fff;
background: #f00 url(/image/common/icon_arrow05.gif) no-repeat 20px 0.9em;
font-weight: bold;
}
#lnav ul.lv3 ul.lv4 ul.lv5 ul.lv6 ul.lv7 li.lv7.active a.has_child span {
background-image: url(/image/common/icon_arrow03.gif);
}

/*個別対応*/
.bb_solid {
border-bottom: 1px solid #ccc !important;
}

.bb_none {
border-bottom: none !important;
}

.bg_none {
padding-bottom: 0 !important;
background: none !important;
} 

/*noCurrentPath対応*/
#lnav.noCurrentPath ul {
	display: none;
}
#lnav ul.show {
	display: block;
}
#lnav li.hide {
	display: none;
}

/*subnav*/
#subnav {
margin-top: 30px;
}

#subnav ul {
background-color: #eee;
border-top: 2px solid #aaa;
}

#subnav ul li a {
display: block;
margin: 0 5px;
padding: 5px 0;
border-top: 1px solid #c3c3c3;
zoom: 1;
}

#subnav ul li.first_child a {
border-top: none;
}

#subnav .icon_arrow {
padding-left: 16px;
background: url(/image/common/icon_arrow01.gif) no-repeat 6px 0.9em;
}

/*----------3-6.フッタナビ----------*/
#footernav {
min-width: 960px;
border-top: 1px solid #7a7a7a;
}

#footernav_content {
background-color: #dedede;
border-top: 1px solid #efefef;
}

#footernav_inner {
padding-bottom: 20px;
}

#footernav a {
text-decoration: none;
color: #606060;
}

#footernav a:hover,
#footernav a:focus {
text-decoration: underline;
}

.footernav_grid {
float: left;
width: 225px;
margin-left: 20px;
}

.footernav_grid.first_child {
margin-left: 0;
}

dl.footernav_block {
margin-top: 20px;
}

dl.footernav_block dt {
font-weight: bold;
border-bottom: 1px solid #fff;
}

dl.footernav_block dt a,
dl.footernav_block dd a {
display: block;
padding-left: 20px;
background: url(/image/common/icon_arrow06.gif) no-repeat 10px 0.5em;
}

dl.footernav_block dt a {
padding-bottom: 2px;
border-bottom: 1px solid #999;
}

dl.footernav_block li {
padding-top: 5px;
}

dl.footernav_block li,
dl.footernav_block li a {
zoom: 1;
}

dl.footernav_block li li {
margin-left: 25px;
}

/*----------3-7.フッタ----------*/
#footer {
min-width: 960px;
padding: 15px 0;
background: #202020;
}

#footer #foot_utility {
float: right;
width: 723px;
}

#footer #foot_utility ul {
padding-right: 15px;
border-right: 1px solid #808080;
text-align: right;
}

#footer #foot_utility li {
display: inline;
margin-left: 10px;
padding-left: 15px;
border-left: 1px solid #808080;
}

#footer #foot_utility li.first_child {
margin-left: 0;
}

#footer #foot_utility li a {
color: #cdcdcd;
text-decoration: none;
}

#footer p.copyright {
float: left;
margin-top: 0.4em;
}

/* ------sp message  -------- */
#spmessage {
	width:100%;
	background-color:#505050;
	font-size:500%;
	line-height:1.2;
	text-align:center;
	font-weight:bold;
	border-bottom:solid 6px #aaa;
}

#spmessage a {
		color:#fff;
		display:block;
		padding:.6em 20px;
		text-shadow:-1px -1px 1px #000;
		text-decoration:none;
}
