@charset "Shift_JIS";

/* @group Header */
div#header {
	position: relative;
	height: 110px;
	text-align: center;
}
div#header .wrapper {
	position: relative;
	width: 940px;
	margin: 0 auto;
}
div#header div#headbg {
	position: relative;
	height: 58px;
	padding-top: 52px;
	overflow: hidden;
	text-align: center;
}
div#header .leftbg {
	background: url(../sw_img/header_bg_l_v4.gif) repeat-x left 52px;
	width: 50%;
	height: 110px;
	position: absolute;
	left: 0;
	top: 0;
}
div#header .rightbg {
	background: url(../sw_img/header_bg_r_v4.gif) repeat-x left 52px;
	width: 50%;
	height: 110px;
	position: absolute;
	right: 0;
	top: 0;
}

div#header h1 {
	position: absolute;
	z-index: 1;
	line-height: 0;
	top: 20px;
	right: 0;
}
div#header div#logo {
	position: absolute;
	z-index: 1;
	line-height: 0;
	top: 8px;
	left: 0;
}


/* @group Nav */
div#gnav {
	height: 47px;
	text-align: center;
	background-color: #069ffd;
}
div#gnav .nav_bg {
	background: url(../sw_img/nav_bg.png) no-repeat center 0;
}
div#gnav .wrapper {
	position: relative;
	width: 940px;
	height: 47px;
	margin: 0 auto;
}

p.utility {
	position: absolute;
	top: 0;
	right: 0;
}

ul#gnavi {
	/*width: 702px;*/
	padding-top: 5px;
}

ul#gnavi li {
	position: relative;
	float: left;
	margin-right: 2px;
	width: 115px;
	height: 36px;
}
ul#gnavi li a.nav_btn {
	width: 115px;
	height: 36px;
	display: block;
	background: url(../sw_img/elements_conav.png) no-repeat;
}
ul#gnavi li a span {
	display: none;
}

ul#gnavi li#gnav_home a.nav_btn {
	background-position: 0 0;
}
ul#gnavi li#gnav_home.active a,
ul#gnavi li#gnav_home a:hover,
body#corporate.outline ul#gnavi li#gnav_outline a.nav_btn {
	background-position: 0 -36px;
}

ul#gnavi li#gnav_outline a.nav_btn {
	background-position: -116px 0;
}
ul#gnavi li#gnav_outline.active a,
ul#gnavi li#gnav_outline a:hover,
body#corporate.outline ul#gnavi li#gnav_outline a.nav_btn {
	background-position: -116px -36px;
}

ul#gnavi li#gnav_business a.nav_btn {
	background-position: -233px 0;
}
ul#gnavi li#gnav_business.active a,
ul#gnavi li#gnav_business a:hover,
body#corporate.business ul#gnavi li#gnav_business a.nav_btn {
	background-position: -233px -36px;
}

ul#gnavi li#gnav_release a.nav_btn {
	background-position: -350px 0;
}
ul#gnavi li#gnav_release.active a,
ul#gnavi li#gnav_release a:hover,
body#corporate.release ul#gnavi li#gnav_release a.nav_btn {
	background-position: -350px -36px;
}
body#newsOverview ul#gnavi li#gnav_release a.nav_btn ,
body#news ul#gnavi li#gnav_release a.nav_btn {
	background-position: -350px -36px;
}
body#newsOverview ul#gnavi li#gnav_ir a ,
body#news ul#gnavi li#gnav_ir a {
	background-position: -467px 0;
}
body#newsOverview ul#gnavi li#gnav_ir a:hover ,
body#news ul#gnavi li#gnav_ir a:hover {
	background-position: -467px -36px;
}


ul#gnavi li#gnav_ir a.nav_btn {
	background-position: -467px 0;
}
ul#gnavi li#gnav_ir.active a,
ul#gnavi li#gnav_ir a:hover,
ul#gnavi li#gnav_ir a.nav_btn {
	background-position: -467px -36px;
}

ul#gnavi li#gnav_recruit a.nav_btn {
	background-position: -584px 0;
}
ul#gnavi li#gnav_recruit.active a,
ul#gnavi li#gnav_recruit a:hover,
body#corporate.recruit ul#gnavi li#gnav_recruit a.nav_btn {
	background-position: -584px -36px;
}


ul#gnavi li ul {
	z-index: 1000;
	position: absolute;
	top: 100%;
	left: 0;
	border-top: 1px solid #2756c2;
}
ul#gnavi li ul li {
	overflow: hidden;
	height: 0;
}
ul#gnavi li ul li a {
	display: block;
	padding: 5px 5px 5px 10px;
	background:url(../sw_img/nav_child_marker.gif) no-repeat 3px 50% #FFF;
	font-size: 12px;
	border: 1px solid #2756c2;
	border-top: none;
	color: #535353;
	width: 150px;
	text-align: left;
	text-decoration: none;
}
ul#gnavi > li:hover li:hover > a {
background:url(../sw_img/nav_child_marker_on.gif) no-repeat 3px 50% #0075c2;
color:#FFF;
text-decoration: none;
}
ul#gnavi li:hover > ul > li {
  overflow: visible;
  height: auto;
  margin: 0;
  padding: 0;
}

div#search {
	position: absolute;
	width: 230px;
	top: 0;
	right: 0;
	text-align: left;
}
div#search p.select {
	color: #FFF;
}
div#search p.select input {
	vertical-align: middle;
}
div#search p.input_area {
	position: relative;
	background-color: #FFF;
	border: solid 1px #000;
	height: 21px;
	overflow: hidden;
	
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}
div#search p.input_area input.input_text {
	border: none;
	font-size: 1.2em;
	color: #0074bd;
	width: 160px;
	height: 20px;
	padding-left: 5px;
}
div#search p.input_area input.btn_submit {
	position: absolute;
	top: 1px;
	right: 1px;
}

/* @group Layout */
div#container {
	clear: both;
	width: 940px;
	margin: 0 auto;
	text-align: left;
}


/* @group main */
div#main {
	position: relative;
	width: 700px;
	float: right; /*subpage*/
}
div#main.full {
	float: none;
	width: 940px;
	margin: 0;
}

/* @group Side */
div#side {
	width: 220px;
	float: left;
}
div#side h3 {
	background: url(../sw_img/side_h3_bg.jpg) no-repeat left 50%;
	color: #FFF;
	width: 220px;
	font-size: 1.4em;
	font-weight: normal;
}
div#side h3 span {
	display: inline-block;
	padding: 5px 13px;
}

div#side ul {
	width: 216px;
	border: solid 2px #0074bf;

	-moz-border-bottom-left-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	border-bottom-left-radius: 5px;
	-moz-border-bottom-right-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
	border-bottom-right-radius: 5px;
}
div#side ul li {
	border-bottom: 1px solid #7fb9df;
	font-size: 1.2em;
}
div#side ul li:last-child {
	border-bottom: none;
}

div#side ul li a {
	padding: 5px 10px;
	display: block;
	color: #333;
}

div#side ul li a:link,
div#side ul li a:visited {
	text-decoration: none;
}

div#side ul li a:hover,
div#side ul li a:active {
	text-decoration: none;
	background-color: #e3f3fd;
}
div#side ul li.current a {
	background-color: #cbe1ef;
}
div#side ul.sub {
	border: none;
}
div#side ul.sub li {
	border-bottom: none;
	font-size: 1.0em;
	padding-left: 20px;
}
div#side ul.sub li a {
	background: url(../sw_img/side_nav_sub_maker.png) no-repeat left 50%;
}
div#side ul.sub li:hover,
div#side ul.sub li:active {
	text-decoration: none;
	background-color: #e3f3fd;
}

div#side ul.sub li.current {
	background-color: #e3f3fd;
}




/* @group Footer Map */
#footer_map {
	background: #f2fafd;
	border-top: solid 2px #e3e6eb;
	border-bottom: solid 4px #0074bf;
	padding-bottom: 20px;
	margin-top: 15px;
}
#footer_map .wrapper {
	position: relative;
	width: 940px;
	margin: 0 auto;
}
#footer_map div.list_box {
	width: 300px;
	float: left;
	text-align: left;
	margin-right: 20px;
}
#footer_map div.list_box.last {
	margin-right: 0;
}
#footer_map div.list_box.last ul {
	float: left;
	width: 150px;
}
#footer_map h3 {
	border-bottom: solid 1px #0074bf;
	padding-bottom: 5px;
	margin-top: 20px;
	margin-bottom: 10px;
}
#footer_map ul li {
	font-size: 1.2rem;
	background: url(../sw_img/fmap_marker.gif) no-repeat 3px 50%;
	padding-left: 12px;
}


/* #footer
----------------------- */
#footer {
	position: relative;
	z-index: 1001;
	margin-top: 14px;
	background: url(../sw_img/footer_bg.png) repeat-x center top;
}
@media screen and (max-device-width: 1024px){
	#footer {
		width: 940px !important;
	}
}

#footer .wrapper {
	text-align: center;
}

#footer p {
	padding-bottom: 12px;
	font-size: 1.1rem;
	font-family: Arial,Helvetica,Geneva,sans-serif;
}

#nav_footer {
	margin: 0 0 35px;
	height: 15px;
}

/* APPLY-IE7 */
*:first-child+html #nav_footer li {
	display: inline;
}
/* APPLY-IE6 */
* html #nav_footer li {
	display: inline;
}
#nav_footer li {
	display: inline-block;
	position: relative;
	margin: 0 14px;
	height: 15px;
}

#nav_footer li a {
	height: 15px;
	overflow: hidden;
	display: inline-block;
	background: url(../sw_img/elements_cofoot.png) no-repeat;
}

#nav_footer li a:hover {
	filter: alpha(opacity=80);
	opacity: 0.8;
}

#nav_footer li a span {
	display: none;
}


#nav_footer li#nav_terms a {
	width: 84px;
	background-position: 0 0;
}

#nav_footer li#nav_terms.active a,
#nav_footer li#nav_terms a:hover {
	background-position: 0 -15px;
}

body#terms #nav_footer li#nav_terms a,
body#terms #nav_footer li#nav_terms a:hover {
	filter: alpha(opacity=80);
	opacity: 0.8;
}

#nav_footer li#nav_privacy_policy a {
	width: 168px;
	background-position: -88px 0;
}

#nav_footer li#nav_privacy_policy.active a,
#nav_footer li#nav_privacy_policy a:hover {
	background-position: -88px -15px;
}

body#privacy_policy #nav_footer li#nav_privacy_policy a,
body#privacy_policy #nav_footer li#nav_privacy_policy a:hover {
	filter: alpha(opacity=80);
	opacity: 0.8;
}

#nav_footer li#nav_policy a {
	width: 214px;
	background-position: -260px 0;
}

#nav_footer li#nav_policy.active a,
#nav_footer li#nav_policy a:hover {
	background-position: -260px -15px;
}

body#privacy_policy #nav_footer li#nav_policy a,
body#privacy_policy #nav_footer li#nav_policy a:hover {
	filter: alpha(opacity=80);
	opacity: 0.8;
}


#nav_footer li#nav_ethic a {
	width: 114px;
	background-position: -479px 0px;
}

#nav_footer li#nav_ethic.active a,
#nav_footer li#nav_ethic a:hover {
	background-position: -479px -15px;
}

body#ethic #nav_footer li#nav_ethic a,
body#ethic #nav_footer li#nav_ethic a:hover {
	filter: alpha(opacity=80);
	opacity: 0.8;
}

#nav_footer li#nav_sitemap a {
	width: 99px;
	background-position: -598px 0;
}

#nav_footer li#nav_sitemap.active a,
#nav_footer li#nav_sitemap a:hover {
	background-position: -598px -15px;
}

body#sitemap #nav_footer li#nav_sitemap a,
body#sitemap #nav_footer li#nav_sitemap a:hover {
	filter: alpha(opacity=80);
	opacity: 0.8;
}

#nav_footer li.active a,
#nav_footer li.active a:hover {
	filter: alpha(opacity=80) !important;
	opacity: 0.8 !important;
}

#nav_footer li.active ul a,
#nav_footer li.active ul a:hover {
	opacity: 1 !important;
}

#nav_footer ul {
	display: none;
	position: absolute;
	left: 0;
	bottom: 15px;
	font-size: 1.2em;
	border-top: 1px solid #3460C5;
	text-align: left;
}

#nav_footer li.active ul {
	display: block;
}

/* APPLY-IE7 */
*:first-child+html #nav_footer ul li {
	display: block;
	width: 15.2em !important;
}
/* APPLY-IE6 */
* html #nav_footer ul li {
	display: block;
	width: 15.2em !important;
}
#nav_footer ul li {
	display: block;
	position: relative;
	margin: 0;
	height: auto !important;
	background-color: #FFF;
}

#nav_footer ul li a {
	display: block;
	width: auto !important;
	height: auto !important;
	white-space: nowrap;
	margin: 0;
	padding: 7px 8px 5px 5px;
	background-image: none;
	border: 1px solid #3460C5;
	border-top: none;
	font-weight: bold;
	line-height: 1.2;
}

#nav_footer ul li a:link,
#nav_footer ul li a:visited {
	color: #222;
	text-decoration: none;
	background-color: #FFF;
}

#nav_footer ul li a:hover,
#nav_footer ul li a:active {
	color: #FF3351;
	text-decoration: underline;
	background: #E2E8F7;
}
#nav_footer li.active ul li a:link,
#nav_footer ul.active li a:visited,
#nav_footer ul.active li a:hover,
#nav_footer ul.active li a:active {
	filter: alpha(opacity=100) !important;
	opacity: 1 !important;
}


/* @group ClearFix */

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

/* @end */

/* @end */

/* @group common */
div#container ul#currentpath {
	margin-top: 15px;
    margin-bottom: 15px;
}
div#container ul#currentpath li {
    display: inline;
    padding: 0 2px;
    line-height: 1.5;
	font-size: 1.2em;
}
div#container ul#currentpath li a {
	color: #0074bf;
}

div#main h4.maintit {
	border-bottom: solid 2px #016cb4;
	padding-bottom: 5px;
	margin-bottom: 20px;
	font-size: 2.0em;
}
div#main h4.maintit span {
	display: inline-block;
	border-left: solid 10px #016cb4;
	padding-left: 15px;
}


div#main div.section {
	line-height: 1.5;
}

div#main div.section a:link,
div#main div.section a:visited {
	color: #016cb4;
	text-decoration: underline;
}
div#main div.section a:hover,
div#main div.section a:active {
	color: #FF3351;
}

.colorred {
	color: #ff0000;
}

.colorblue {
	color: #0860a8;
}

.colortblue {
	color: #0860a8;
}

.bgcolorgray {
	background-color: #f0f0f0;
}

.line {
	text-decoration: line-through;
}

a.aline:link {
	text-decoration: underline;
}

.tborder {
	margin-top: 15px;
	border-collapse: collapse;
	empty-cells: show;
	border-spacing: 0;
	padding: 2px;
	border: 1px solid #c2c2c2;
}

.tborder th, .tborder td {
	padding: 2px;
	border: 1px solid #c2c2c2;
}

a.link {
	padding: 0 5px 0 12px;
	background: url(../sw_img/marker_right_arrow01.png) no-repeat 0 0.2em;
}

/* .page_top
----------------------- */
.page_top {
	clear: both;
	padding-top: 25px;
	text-align: right;
	font-size: 1.1rem;
	line-height: 1.2;
}

.section .page_top {
	font-size:0.9em !important}



/* @end */

