﻿@charset "utf-8";
/*** -----------------------------------------------------------------------------

reset

-----------------------------------------------------------------------------  ***/
.clearfix:after {
	content:".";
	display:block;
	visibility:hidden;
	clear:both;
	height:0.1px;
	font-size:0.1em;
	line-height:0;
}
.clearfix {
	display:inline-table;
	zoom:1;
}
/*Hides from IE-mac \*/
* html .clearfix {
	height:1%;
}
.clearfix {
	display:block;
}
/* End hide from IE-mac */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
	margin:0px;
	padding:0px;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset, img {
	border:0;
}
address, caption, cite, code, dfn, em, th, var {
	font-style:normal;
	font-weight:normal;
}
li {
	list-style:none;
}
caption, th {
	text-align:left;
}
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
}
q:before, q:after {
	content:'';
}
abbr, acronym {
	border:0;
	font-variant:normal;
}
sup {
	vertical-align:text-top;
}
sub {
	vertical-align:text-bottom;
}
input, textarea, select {
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
}
input, textarea, select {
 *font-size:100%;
}
legend {
	color:#000000;
}
img {
	vertical-align:bottom;
}
a:focus{
	outline:none;
}
/*** ------------------------------------------------------------------------------

common

-----------------------------------------------------------------------------  ***/
html {
	overflow-y:scroll;
}
body {
	color:#333333;
	line-height: 1.6;
	font-size: 12px;
	font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Osaka,Arial,Helvetica,sans-serif;
}
/*** ------------------------------------------------------------------------------

リンク

-----------------------------------------------------------------------------  ***/

a:link {
	color: #333;
	text-decoration:none;
}

a:visited {
	color: #333;
	text-decoration:none;
}
a:hover {
	color: #333;
	text-decoration:underline;
}

a:active {
	color: #333;
	text-decoration:underline;
}
.opacity a:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
}
/*** ------------------------------------------------------------------------------

container

-----------------------------------------------------------------------------  ***/
#container {
	width:100%;
}
/*** ------------------------------------------------------------------------------

header

-----------------------------------------------------------------------------  ***/
#header {
	width:960px;
	margin:0 auto;
}
#header .logo{
	float:left;
	padding:21px 0 0;
}
#header .top_list{
	float: left;
	padding: 21px 0 0 57px;
}
#header .top_list li{
	float: left;
	border-right: 1px solid #ddd;
	padding: 0 12px;
	line-height: 1;
}
#header .top_list li a {
	color: #666;
}
#header .top_list li:first-child a {
	background: url(../images/icon_home_red.gif) left center no-repeat;
	padding-left: 20px;
}
#header .sub-nav{
	float:right;
	width: 470px;
	padding:10px 0 0;
	margin:0 0 10px;
}
#header .sub-nav li{
	float:left;
}
#header .sub-nav li.search{
	width:209px;
	margin:0 18px 0 0;
}
#header .sub-nav li.search input{
	height:23px;
	border:#CCCCCC 1px solid;
	background: #F5F5F5;
	width:153px;
	margin:0;
}
#header .sub-nav li.font{
	width:113px;
	margin:0 10px 0 0;
}
#header .sub-nav li.font img{
	float:left;
}
#header .sub-nav li.font span{
	display:block;
	text-indent:-9999px;
	float:left;
	width:25px;
	height: 25px;
}
#header .sub-nav li.font span a{
	width:25px;
	height:25px;
	display:block;
}
#header .sub-nav li.font span.s-size {
	margin:0 3px 0 0;
}
#header .sub-nav li.font span.s-size a{
	background: url(../images/header_size_btn_s.png) no-repeat;
}
#header .sub-nav li.font span.l-size a{
	background: url(../images/header_size_btn_l.png) no-repeat;
}
#header .sub-nav li.font span a:hover,
#header .sub-nav li.font span.active a{
	background-position:0 -25px !important;
}

/*** ------------------------------------------------------------------------------

nav

-----------------------------------------------------------------------------  ***/
#nav {
	width:750px;
	margin:0;
	height:35px;
	float:right;
}
#nav li{
	float:left;
	text-indent: -9999px;
}
#nav li a{
	display:block;
	height:35px;
	width: 150px;
}
#nav li.nav01 a{
	background: url(../images/header_btn_nav01.png) no-repeat;
}
#nav li.nav02 a{
	background: url(../images/header_btn_nav02.png) no-repeat;
}
#nav li.nav03 a{
	background: url(../images/header_btn_nav03.png) no-repeat;
}
#nav li.nav04 a{
	background: url(../images/header_btn_nav04.png) no-repeat;
}
#nav li.nav05 a{
	background: url(../images/header_btn_nav05.png) no-repeat;
}
#nav li a:hover,
.company #nav li.nav01 a,
.ir #nav li.nav02 a,
.products #nav li.nav03 a,
.special #nav li.nav04 a,
.recruit #nav li.nav05 a{
	background-position: 0 -35px;
}

/*** ------------------------------------------------------------------------------

nav 20220622

-----------------------------------------------------------------------------  ***/
#nav2 {
	width:750px;
	margin:0;
	height:35px;
	float:right;
}
#nav2 li{
	float:left;
	text-indent: -9999px;
}
#nav2 li a{
	display:block;
	height:35px;
	width: 150px;
}
#nav2 li.nav01 a{
	background: url(../images/header_btn_nav011.png) no-repeat;
}
#nav2 li.nav02 a{
	background: url(../images/header_btn_nav021.png) no-repeat;
}
#nav2 li.nav03 a{
	background: url(../images/header_btn_nav031.png) no-repeat;
}
#nav2 li.nav04 a{
	background: url(../images/header_btn_nav041.png) no-repeat;
}
#nav2 li.nav05 a{
	background: url(../images/header_btn_nav051.png) no-repeat;
}
#nav2 li a:hover,
.company #nav li.nav01 a,
.ir #nav li.nav02 a,
.products #nav li.nav03 a,
.special #nav li.nav04 a,
.recruit #nav li.nav05 a{
	background-position: 0 -35px;
}

/* english page -------------------------------------------------------------  */
#nav li.nav01.en a{
	background: url(../images/header_btn_nav01_e.png) no-repeat;
}
#nav li.nav02.en a{
	background: url(../images/header_btn_nav02_e.png) no-repeat;
}
#nav li.nav03.en a{
	background: url(../images/header_btn_nav03_e.png) no-repeat;
}
#nav li.nav04.en a{
	background: url(../images/header_btn_nav04_e.png) no-repeat;
}
#nav li.nav05.en a{
	background: url(../images/header_btn_nav05_e.png) no-repeat;
}
#nav li a:hover,
.company #nav li.nav01.en a,
.ir #nav li.nav02.en a,
.products #nav li.nav03.en a,
.special #nav li.nav04.en a,
.recruit #nav li.nav05.en a{
	background-position: 0 -35px;
}

/*** ------------------------------------------------------------------------------

page-nav

-----------------------------------------------------------------------------  ***/
#page-nav{
	background: #333333;
	clear:both;
	height:35px;
}
#page-nav ul {
	width:959px;
	margin:0 auto;
	padding:0 1px 0 0;
	background: url(../images/header_page-nav_bg.png) right center no-repeat;
}
#page-nav ul li{
	height:35px;
	float:right;
}
#page-nav ul li a{
	display:block;
	padding:0 18px;
	height:35px;
	background: url(../images/header_page-nav_bg.png) left center no-repeat;
	color:#FFFFFF;
	line-height:35px;
	font-size:1.083em;
}
#page-nav ul li a:hover,
#page-nav ul li.select a{
	background: url(../images/header_page-nav_bg.png) left center no-repeat #111111;
	text-decoration:none;
}
#page-nav ul li a span{
	padding:0 0 0 10px;
	background: url(../images/header_page-nav_icon_off.png) left center no-repeat;
}
#page-nav ul li a:hover span,
#page-nav ul li.select a span{
	background: url(../images/header_page-nav_icon_on.png) left center no-repeat;
}
#page-nav ul li.double a{
	padding-top:2px;
	padding-bottom:1px;
	height:32px;
}
#page-nav ul li.double a span{
	line-height:16px;
}


/*** ------------------------------------------------------------------------------

page-nav2

-----------------------------------------------------------------------------  ***/
#page-nav2{
	background: #333333;
	clear:both;
	height:35px;
}
#page-nav2 ul {
	width:959px;
	margin:0 auto;
	padding:0 1px 0 0;
	background: url(../images/header_page-nav_bg.png) right center no-repeat;
}
#page-nav2 ul li{
	height:35px;
	float:right;
}
#page-nav2 ul li a{
	display:block;
	padding:0 28px;
	height:35px;
	background: url(../images/header_page-nav_bg.png) left center no-repeat;
//	background: url(../images/header_page-nav_icon_off.png) 17px 15px no-repeat;
	color:#FFFFFF;
	line-height:35px;
	font-size:0.9em;
}
#page-nav2 ul li.double a:hover
#page-nav2 ul li.select:hover,{
	background: url(../images/header_page-nav_bg.png) left center no-repeat #111111;
	text-decoration:none;
}
#page-nav2 ul li a span{
	padding:0 0 0 10px;
	background: url(../images/header_page-nav_icon_off.png) left center no-repeat;
}
#page-nav2 ul li a:hover span,
#page-nav2 ul li.select a span{
	background: url(../images/header_page-nav_icon_on.png) left center no-repeat;
}
#page-nav2 ul li.double a{
	padding-top:2px;
	padding-bottom:1px;
	height:32px;
}
#page-nav2 ul li.double a span{
	line-height:16px;
}


/*** ------------------------------------------------------------------------------

visual

-----------------------------------------------------------------------------  ***/
#visual{
	text-align: center;
}

/*** ------------------------------------------------------------------------------

content

-----------------------------------------------------------------------------  ***/
#content {
	width:100%;
	padding:20px 0 0;
}
#content .content-wrap{
	width:960px;
	margin:0 auto;
}


/*** ------------------------------------------------------------------------------

footer_sitemap

-----------------------------------------------------------------------------  ***/
#footer_sitemap {
	width: 960px;
	margin: 0 auto;
	padding: 10px 0;
}
#footer_sitemap a {
	color: #444;
	line-height: 1.8;
}
#footer_sitemap ul li a {
	font-size: 0.9em;
	line-height: 2;
}
#footer_sitemap h4 {
	background: url(../images/icon_arrow_gr1.gif) left 4px no-repeat;
	padding-left: 17px;
	margin-bottom: 7px;
	font-weight: bold;
}

/*--footer_sitemap sitebox--*/
#footer_sitemap .sitebox{
	background-color: #FFFFFF;
	float: left;
	width: 163px;
	border-left: 1px solid #ddd;
	padding: 10px 10px;
	min-height: 290px;
}
#footer_sitemap .sitebox2{
	background-color: #FFFFFF;
	float: left;
	width: 162px;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	padding: 10px 20px;
	min-height: 290px;
}

#footer_sitemap .sitebox .company .left li,
#footer_sitemap .sitebox2 .company .left li {
/*	background: url(../images/icon_arrow_gr2.gif) left center no-repeat; */
	padding-left: 15px;
}

#footer_sitemap .left_box,
#footer_sitemap .center_box,
#footer_sitemap .right_box{
	float: left;
	width: 279px;
	border-left: 1px solid #ddd;
	padding: 10px 20px;
	min-height: 396px;
}
#footer_sitemap .right_box {
	border-right: 1px solid #ddd;
	width: 278px;
}
/*--footer_ditemap left_box--*/
#footer_sitemap .left_box h3 {
	background: url(../images/icon_home_red.gif) left 3px no-repeat;
	padding-left: 20px;
	font-weight: bold;
	margin-bottom: 20px;
}
#footer_sitemap .left_box .company{
	margin-bottom: 10px;
}
#footer_sitemap .left_box .company .en li {
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .left_box .company .left li,
#footer_sitemap .left_box .company .right li {
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .left_box .company .left {
	float: left;
	width: 115px;
}
#footer_sitemap .left_box .company .right {
	float: left;
	width: 160px;
}
#footer_sitemap .left_box .investor .en li {
	background: url(../images/icon_L.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .left_box .investor .en li.down {
	background: url(../images/icon_down.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .left_box .investor .en li.arrow {
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .left_box .investor .left {
	float: left;
	width: 115px;

}
#footer_sitemap .left_box .investor .left li,
#footer_sitemap .left_box .investor .right li {
	background: url(../images/icon_L.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .left_box .investor .left li.down,
#footer_sitemap .left_box .investor .right li.down {
	background: url(../images/icon_down.gif) left center no-repeat;
}
#footer_sitemap .left_box .investor .left li.arrow,
#footer_sitemap .left_box .investor .right li.arrow {
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
}
#footer_sitemap .left_box .investor .right {
	float: left;
	width: 160px;
}
/*--footer_ditemap center_box--*/
#footer_sitemap .center_box .product {
	margin-bottom: 10px;
}
#footer_sitemap .center_box .product.en li {
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .center_box .product .left li,
#footer_sitemap .center_box .product .right li{
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .center_box .product .left,
#footer_sitemap .center_box .product .right {
	float: left;
	width: 110px;
}
#footer_sitemap .center_box ul.feature li {
	background: url(../images/icon_L.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .center_box ul.feature.en li {
	background: url(../images/icon_L.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .center_box ul.feature li.down {
	background: url(../images/icon_down.gif) left center no-repeat;
}
#footer_sitemap .center_box .contact.en li {
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
	padding-left: 17px;
}
/*--footer_ditemap right_box--*/
#footer_sitemap .right_box .recruit {
	margin-bottom: 10px;
}
#footer_sitemap .right_box .recruit .left {
	float: left;
	width: 140px;
}
#footer_sitemap .right_box .recruit .left_long {
	float: left;
}
#footer_sitemap .right_box .recruit .right {
	float: left;
	width: 110px;
}
#footer_sitemap .right_box .recruit li.mgb {
	margin-bottom: 5px;
}
#footer_sitemap .right_box .recruit .right li.arrow,
#footer_sitemap .right_box .recruit .left li.arrow,
#footer_sitemap .right_box .recruit .left_long li.arrow
 {
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
}
#footer_sitemap .right_box .recruit .left li,
#footer_sitemap .right_box .recruit .right li,
#footer_sitemap .right_box .recruit .left_long li
 {
	background: url(../images/icon_L.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .right_box .recruit .left li.down,
#footer_sitemap .right_box .recruit .right li.down {
	background: url(../images/icon_down.gif) left center no-repeat;
}
#footer_sitemap .right_box .contact li {
	float:  left;
	width: 120px;
	background: url(../images/icon_arrow_gr2.gif) left center no-repeat;
	padding-left: 17px;
}
#footer_sitemap .right_box .contact li.last {
	clear: both;
	width: 100%;
}

/*** ------------------------------------------------------------------------------

footer

-----------------------------------------------------------------------------  ***/
#footer {
	clear:both;
	width:960px;
	margin:0 auto;
	padding:10px 0;
	line-height:1;
}
#footer ul{
	border-left:1px #CCC solid;
	font-size:0.917em;
	float:left;
	width:700px;
}
#footer ul li{
	float:left;
	padding:0 10px;
	color:#666;
	border-right:1px #CCC solid;
}
#footer ul li a{
	color:#666666;
}
#footer p{
	float:right;
	width:250px;
	text-align: right;
	font-size:0.833em;
	color:#999;
}
/*** ------------------------------------------------------------------------------

トピックパス

-----------------------------------------------------------------------------  ***/
#topic-pass {
	margin:-10px 0 10px;
	padding:0 0 0 20px;
	background: url(../images/topicpass_icon_home.png) left 0.2em no-repeat;
	position:relative;
	color:#999999;
	font-size:1em !important;
}
#primary #topic-pass {
	margin:0 0 5px;
}
#topic-pass li {
	float:left;
}
#topic-pass li a{
	color:#0066cc;
}
#topic-pass li span{
	padding:0 5px;
	display:inline-block;
}
/*** ------------------------------------------------------------------------------

スクロール

-----------------------------------------------------------------------------  ***/
#scroll{
	text-align: right;
	padding:10px 0 10px;
	clear:both;
}
#scroll.line,
#scroll.sp{
	background: #EEEEEE;
	margin:30px 0 0;
}
#scroll.line p,
#scroll.sp .top{
	width:960px;
	margin:0 auto;
	text-align: right
}

/*** ------------------------------------------------------------------------------

共通設定

-----------------------------------------------------------------------------  ***/

/* フォントサイズ */
#content p,
#content ul,
#content dl{
	font-size:1.083em;
}
#content li p,
#content ul p,
#content dl p{
	font-size:1em;
}

/* セクション */
.section{
	margin:0 0 40px;
}
.section{
	margin:0 0 20px;
}
.section-cont{
	margin:0 0 40px;
}
.section-cont-L{
	margin:0 240px 20px;
	width:680px;
}

/* h1見出し */
.title{
	font-size:1.833em;
	font-weight: bold;
	padding:0 0 0 20px;
	background: url(../images/icon_title01.png) left center no-repeat;
	height:40px;
	line-height:40px;
	margin:0 0 20px;
}
/* h2見出し */
.headline{
	color:#990000;
	font-weight: bold;
	font-size:1.333em;
	padding:10px;
	background: #EEEEEE;
	margin:0 0 15px;
}
.headline2{
	float:left;
	color:#990000;
	font-weight: bold;
	font-size:1.333em;
	padding:10px;
	background: #EEEEEE;
	margin:-13px 0 15px;
}

/* 20210819 */
h2.title-M{
	border-left: solid 20px #dc143c;
	border-bottom: solid 1px #3A3A3A;
	padding: 0px 0px 0px 10px;
	margin:0px 0px 10px 10px;
	font-size: 12pt;
	font-weight: bold;
}
/* 20210819END */

/* 20170727 governance */
.headline3{
	color:#990000;
	font-weight: bold;
	font-size:1.6em;
	padding:10px;
	background: #EEEEEE;
	margin:0 0 15px;
}


/* h3見出し */
.subheading{
	font-size:1.167em;
	font-weight: bold;
	border-bottom:#CCC 1px solid;
	padding:10px 10px 10px 30px;
	background: url(../images/icon_title02.png) 10px center no-repeat;
	margin:0 0 20px;
}
.subheading-b{
	font-size:1.5em;
	font-weight: bold;
	border-bottom:#CCC 1px solid;
	padding:10px 10px 10px 30px;
	background: url(../images/icon_title02.png) 10px center no-repeat;
	margin:0 0 20px;
}

/* お問い合わせ用ボタン20210819 */
button.but-mail {
	background-color: #c0c0c0;
	padding: 1px 2px;
	text-align: center;
	font-size: 0.9em;
	font-weight: bold;
	color: #fff;
	border-style: none; /* ボーダーをなくす */
}

button.but-mail:hover {
    background-color: #808080;
    color: #fff;

.text-M{
	margin: 40px 0px 200px 140px;
	font-size: 8.2em;
}