@charset "utf-8";

/* reset
============================================================*/

body {
	line-height: 1.8;
	margin: 0;
	padding: 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 13px;
	color: #1b1b1b;
	background-color: #333;
	-webkit-box-shadow: inset 5px 5px 5px #2c2c2c;
	-moz-box-shadow: inset 5px 5px 5px #2c2c2c;
	box-shadow: inset 5px 5px 5px #2c2c2c;
	overflow-x:hidden;
}

h1, h2, h3, h4, h5, h6, p, th, td {
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-weight: normal;
}

ol, ul, dl, dt, dd {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

img, object, embed {
	border: 0;
	vertical-align: bottom;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

th, td {
	text-align: left;
}

address {
	font-style: normal;
}

a {
	color: #3399cc;
	text-decoration: none;
}

a:hover {
	color: #ff6600;
	text-decoration: none;
}

a.no_color {
}

hr {
	border: solid #dfdfdf;
	border-width: 1px 0 0 0;
}

img {
	max-width: 100%;
	height: auto;
	width /***/:auto;
}

a img:hover {
	opacity:0.7;
	-moz-opacity:0.7;
	-khtml-opacity:0.7;
	filter:alpha(opacity=70);
}

#header a img:hover,
#main_slide a img:hover,
#hero a img:hover {
	opacity:1;
	-moz-opacity:1;
	-khtml-opacity:1;
	filter:alpha(opacity=100);
}

article, aside, figure, footer, header, hgroup, nav, section {
	display: block;
}

.clearfix {
	zoom: 1;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.display_tab {
	display: none;
}

.display_sp {
	display: none;
}

#body_inner {
	position: relative;
	background-color: #fff;
	-webkit-box-shadow: 0 0 10px #111;
	-moz-box-shadow: 0 0 10px #111;
	box-shadow: 0 0 10px #111;
}

@media screen and (min-width: 768px) {

	#body_inner {
/*		left: 0 !important; */
		left: 0; 
	}
}

/* header
================================*/

#header_inner {
	max-width: 954px;
	margin: 0 auto;
	padding: 13px 18px 20px 18px;
}

#header .logo_wrap {
	margin-bottom: 9px;
	padding-right: 7px;
}

#header .logo {
	float: left;
}

#header .logo a {
	display: block;
	padding: 7px;
}

#header .search {
	float: right;
	padding-top: 11px;
}

#header .search .text {
	display: block;
	float: left;
	margin: 0;
	padding: 0 3px;
	width: 132px;
	height: 19px;
	border: 1px solid #999;
	font-size: 12px;
}

#header .search .btn {
	display: block;
	float: left;
}

/* lang
----------------*/

#header .lang {
	position: relative;
	float: right;
}

#header .lang ul {
	position: absolute;
	right: 0;
	top: 0;
	z-index: 10;
	border-top: 1px solid #000;
}

#header .lang .sel a {
	background: #fff url(../images/header_lang.png) no-repeat 79px 11px;
}

#header .lang a {
	display: block;
	width: 89px;
	height: 28px;
	line-height: 28px;
	padding-right: 9px;
	border: 1px solid #000;
	border-top: none;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	color: #000;
	background-color: #fff;
}

#header .lang a:hover {
	text-decoration: none;
	background-color: #eee;
}

#header .lang ul,
#header .lang li {
	display: none;
}

#header .lang .current,
#header .lang .current .sel {
	display: block;
}

/* gnav
----------------*/

#gnav_wrap {
	padding-right: 7px;
}

#gnav {
	position: relative;
	float: left;
}

#gnav li {
	float: left;
	padding: 0 7px;
	text-align: center;
}


#gnav .nav1 { width: 62px; }
#gnav .nav2 { width: 81px; }
#gnav .nav3 { width: 80px; }
#gnav .nav4 { width: 97px; }
#gnav .nav5 { width: 122px; }
#gnav .nav6 { width: 81px; }
#gnav .nav7 { width: 92px; }

#gnav a {
	display: block;
	padding: 4px 0;
	font-size: 15px;
	font-weight: bold;
	color: #1b1b1b;
}

#gnav .current a {
	border-bottom: 5px solid #9cf;
}

#gnav li ul {
	position: absolute;
	left: 0;
	top: 0;
	background-color: #9cf;
}

/* gnav2
----------------*/

#gnav2_wrap {
	position: relative;
	margin: 7px auto 0;
}

#gnav2_wrap .arrow_wrap {
	position: relative;
	max-width: 990px;
	margin: 0 auto;
}

#gnav2_wrap .arrow {
	display: none;
	position: absolute;
	left: 0;
	top: -24px;
	/*width: 42px;
	height: 21px;*/
	width: 23px;
	height: 15px;
	margin-left: 7px;
	background: url(../images/gnav2_arrow.png) no-repeat left top;
}

#gnav2 {
	display: none;
	position: absolute;
	left: 0;
	top: -9px;
	z-index: 10;
	width: 100% !important;
	opacity: 1 !important;
	background-color: #9cf;
}

#gnav2 ul {
	display: none;
	position: relative;
	max-width: 942px;
	padding: 20px 25px 20px 23px;
	margin: 0 auto;
}

#gnav2 li {
	float: left;
	padding: 0 7px;
}

#gnav2 a {
	display: block;
	margin-right: 25px;
	padding: 8px 10px;
	color: #fff;
	background: url(../images/gnav2_icon.png) no-repeat 1px 16px;
}

/* breadcrumb
================================*/

#breadcrumb {
	max-width: 960px;
	margin: 0 auto 12px auto;
	padding: 5px 0 0 16px;
}

#breadcrumb li {
	display: inline;
	font-size: 12px;
}

#breadcrumb a {
	color: #000;
}

/* main
================================*/

#main {
	background: #fff;
}

#main_inner {
	max-width: 960px;
	margin: 0 auto;
	padding-bottom: 55px;
}

/* contents
================================*/

#contents {
	float: left;
	width: 690px;
	min-height: 500px;
	padding-left: 10px;
}

/* side
================================*/

#side {
	float: right;
	width: 220px;
	padding-right: 10px;
}

/* lnav
----------------*/

#lnav {
	margin-bottom: 20px;
}

#lnav a {
	color: #000;
}

#lnav a:hover {
	text-decoration: none;
}

#lnav h1 {
	padding-bottom: 10px;
	background: url(../images/lnav_title_arrow.png) no-repeat center bottom;
	color: #fff;
}

#lnav h1 a {
	display: block;
	line-height: 1.3;
	padding: 12px 0 12px 12px;
	background-color: #000;
	color: #fff;
}

#lnav li a {
	display: block;
	line-height: 1.3;
	padding: 12px 5px 12px 12px;
	background-color: #eee;
	border-bottom: 1px solid #dfdfdf;
}

#lnav li a:hover {
	background-color: #cbe0f5;
}

#lnav li .open a {
	background: #dfdfdf url(../images/lnav_arrow_b.png) no-repeat right 15px;
}

#lnav li .open a:hover {
	background: #99cdff url(../images/lnav_arrow_b.png) no-repeat right 15px;
}

#lnav li.current a {
	border-bottom: 1px solid #99cdff;
	background-color: #99cdff;
}

#lnav li.current .on a {
	background: #99cdff url(../images/lnav_arrow_t.png) no-repeat right 15px;
}

#lnav li ul {
	display: none;
}

#lnav li.current ul {
	display: block;
}

#lnav li li a {
	display: block;
	line-height: 1.3;
	padding: 12px 0 12px 24px;
	background-color: #eee;
	border-bottom: 1px solid #dfdfdf;
}

#lnav li.current li a {
	background-color: #eee;
	border-bottom: 1px solid #dfdfdf;
}

#lnav li.current li a:hover {
	background: #cbe0f5;
}

#lnav li li.current a {
	background: #cbe0f5;
	border-bottom: 1px solid #cbe0f5;
}

/* bnr
----------------*/

#side .bnr li {
	margin-bottom: 10px;
}

/* pagetop
================================*/

#pagetop {
	clear:both;
	max-width: 950px;
	margin: 0 auto;
	padding-right: 10px;
	text-align: right;
}

/* footer
================================*/

#footer {
	background-color: #000;
	color: #fff;
}

#footer_inner {
	max-width: 920px;
	margin: 0 auto;
	padding: 45px 20px 65px 20px;
}

#footer a {
	color: #fff;
}

#footer .mt20 {
	margin-top: 20px;
}

/* fnav1
----------------*/

#fnav1 {
	margin-bottom: 40px;
}

#fnav1 span {
	display: block;
	margin-bottom: 25px;
	font-size: 13px;
}

#fnav1 li {
	float: left;
	margin-right: 20px;
}

#fnav1 li ul {
	float: left;
}

#fnav1 li li {
	float: none;
	margin-right: 30px;
	line-height: 2;
}

#fnav1 li li a {
	background: none;
}

#fnav1 li a {
	display: block;
	font-size: 11px;
}

/* fnav2
----------------*/

#fnav2 {
	float: left;
}

#fnav2 ul li {
	display: inline;
	font-size: 11px;
}

/* copyright
----------------*/

#footer .copyright {
	float: right;
	font-size: 11px;
}
