@charset "utf-8";

/*
================================================================ */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-weight: normal;
	vertical-align: top;
	background: transparent;
	list-style-type: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
body {
	width: 100%;
	color: #222222;
	font-size: 0.875em;
	line-height: 160%;
	word-wrap: break-word;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, Helvetica, Arial, sans-serif;
	background: #222222;
	-webkit-text-size-adjust: 100%;
}

/* 
================================================================ */
.clear:before, .clear:after {
	content: "";
	display: block;
}
.clear:after {clear: both;}

/* link */
a {
	color: #0071bf;
	text-decoration: underline;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
a:hover {text-decoration: none;}
a img{
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
a:hover img {
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	-moz-opacity: 0.8;
	opacity: 0.8;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.linkOb {
	padding-right: 15px;
	background: url(../img/icon_link_ob.png) right 0 no-repeat;
}

/* button */
.btn {
	display: inline-block;
	padding-bottom: 0;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-o-border-radius: 2px;
	-ms-border-radius: 2px;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.btnBlack {background: #222222;}
.btnBlack:hover {
	background: #444444;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.w20e {width: 20em;}
.btn a {
	display: block;
	padding: 0.8em;
	color: #eeeeee;
	text-align: center;
	text-decoration: none;
}
.btnArwRt {padding-right: 20px;}
.btnArwRt.blue {background: url(../img/arw_blue_rt.png) right center no-repeat;}
.btnArwRt.red {background: url(../img/arw_red_rt.png) right center no-repeat;}
.btnArwRt.yellow {background: url(../img/arw_yellow_rt.png) right center no-repeat;}
.btnArwRt.white {background: url(../img/arw_white_rt.png) right center no-repeat;}
.btnOpen {
	display: inline-block;
	padding: 0;
}
.btnOpen a {
	font-size: 0.858em;
	text-decoration: none;
}
.btnOpen a:hover {text-decoration: underline;}

/* margin */
.mb0 {margin-bottom: 0!important;}
.ml30 {margin-left: 30px!important;}
.pt2e {padding-top: 2em!important;}
.pb0 {padding-bottom: 0!important;}
.pbhe {padding-bottom: 0.5em!important;}
.pb1he {padding-bottom: 1.5em!important;}
.pb2e {padding-bottom: 2em!important;}
.pb3e {padding-bottom: 3em!important;}
.pb4e {padding-bottom: 4em!important;}
.pb100 {padding-bottom: 100px!important;}

.alignCt {text-align: center;}
.alignRt {text-align: right;}
.flLt {float: left;}
.flRt {float: right;}

/* font */
p {padding-bottom: 1.5em;}
strong {
	color: #be0000;
	font-weight: bold;
}

h2 {
	margin-bottom: 4.6em;
	font-weight: bold;
}
h2 span {
	margin-right: 0.4em;
	font-family: source-sans-pro, sans-serif;
	font-size: 3.358em;
	font-weight: 700;
	letter-spacing: -1px;
}
h3 {
	margin-bottom: 1.8em;
	padding: 2em 0 2em 1em;
	font-weight: bold;
	background: #eeeeee;
	border-top: solid 2px #222222;
	border-bottom: dotted 1px #000000;
}
h3 span {
	display: inline-block;
	margin-right: 0.7em;
	font-family: source-sans-pro, sans-serif;
	font-size: 1.858em;
	font-weight: 700;
}
h4 {
	margin: 0 0 0.5em 0;
	padding: 0 17px 0 18px;
	position: relative;
	display: inline-block;
	font-size: 1.286em;
	font-weight: bold;
}
h4:before, h4:after {
	position: absolute;
	top: 0;
	line-height: 0;
}
h4:before {
	left: 0;
	content: url(../img/icon_quote_lt.gif);
}
h4:after {
	right: 0;
	content: url(../img/icon_quote_rt.gif);
}
.titleS {
	font-family: source-sans-pro, sans-serif;
	font-size: 1.4em;
	font-weight: 600;
	line-height: 1.2;
}

/* table */
.table {
	background: #eeeeee;
	border-right: solid 1px #bbbbbb;
	border-bottom: solid 1px #bbbbbb;
	border-left: solid 1px #bbbbbb;
}
.table p {padding-bottom: 0;}
.table dt {
	float: left;
	margin: 0;
	padding: 0.8em 1em;
	vertical-align: middle;
	border-top: solid 1px #bbbbbb;
}
.table dd {
	padding: 0.8em 1em;
	background: #ffffff;
	border-top: solid 1px #bbbbbb;
	border-left: solid 1px #bbbbbb;
}
.table.dtSm dt {width: 10em;}
.table.dtSm dd {margin-left: 12em;}
.table.dtLg dt {width: 16em;}
.table.dtLg dd {margin-left: 18em;}

.table dl.sbys dt, .table dl.sbys dd {
	padding: 0;
	width: auto;
	border: none;
	background: none;
}
.table dl.sbys.dt6e dd {margin-left: 6em;}
.table dl.sbys.dt7e dd {margin-left: 7em;}
.table dl.sbys.dt7he dd {margin-left: 7.5em;}
.table dl.sbys.dt9e dd {margin-left: 9em;}

/* form */
form dt {padding: 1.15em 1em 0 1em!important;}
input, textarea, select, button {
	margin: 0.1em;
	padding: 0.2em;
	font-size: 100%;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, Helvetica, Arial, sans-serif;
	color: #333333;
	font-weight: normal;
	border: solid 1px #bbbbbb;
}
textarea {height: auto!important;}
select {white-space: nowrap!important;}
.inputS {width: 6em!important;}
.inputM {width: 13.5em!important;}
.inputL {width: 28em!important;}
form button.btn {
	cursor: pointer;
	margin-top: 2em;
	border: none;
}
form button.btn span {
	display: block;
	padding: 0.8em;
	color: #eeeeee;
	text-align: center;
	text-decoration: none;
}
form button.btn span span {
	display: inline-block;
	padding: 0 20px 0 0;
}

/* tab */
.tabs {margin-bottom: 1.5em;}
.tabs li {
	float: left;
	padding: 0 6px 6px 0;
}
.tabs li a {
	display: block;
	padding: 10px 1em;
	width: 12em;
	color: #222222;
	text-decoration: none;
	text-align: center;
	background: #eeeeee;
	border: solid 1px #dddddd;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-o-border-radius: 2px;
	-ms-border-radius: 2px;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.tabs li a:hover {
	background: #dddddd;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.tabs li.current {background: url(../img/tabarw_black_btm.png) center bottom no-repeat;}
.tabs li.current a {
	color: #eeeeee;
	background: #222222;
	border: solid 1px #222222;
}

/* other */
ul.sbys2 li {
	float: left;
	width: 50%;
}
.sep1eb {
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
	border-bottom: dotted 1px #bbbbbb;
}
.sep1et {
	margin-top: 0.5em;
	padding-top: 0.5em;
	border-top: dotted 1px #bbbbbb;
}
.listNum li {
	margin-left: 1.5em;
	padding-left: 0.5em;
	list-style: decimal outside;
}
.listDot li {
	margin-left: 1.2em;
	padding-left: 0.2em;
	list-style: disc outside;
}
.slideChild {display: none;}

/* layout
================================================================ */
#wrap {
	position: relative;
	width: 100%;
	min-width: 1020px;
}
.inner {
	margin: 0 auto;
	width: 980px;
}

/* header */
h1 {background: #eeeeee;}
h1 .inner {
	display: block;
	font-size: 0.715em;
	text-align: right;
}
.headerInr {
	padding: 1em 0;
	width: 100%;
	background: #222222;
}
.fixed h1 {padding-bottom: 5.4em;}
.fixed .headerInr {
	position: fixed;
	z-index: 9999;
	padding: 0.5em 0;
	border-bottom: solid 1px #555555;
}
.logo {float: left;}
.logo span {
	display: table-cell;
	height: 3.2em;
	vertical-align: middle;
}

#globalNavi {float: right;}
#globalNavi li {
	float: left;
	border-right: solid 1px #555555;
}
#globalNavi li:first-child {border-left: solid 1px #555555;}
#globalNavi li a {
	display: table-cell;
	padding: 0 2.5em;
	color: #eeeeee;
	height: 4.6em;
	font-size: 0.715em;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
}
#globalNavi li a span {
	display: block;
	padding-top: 0.4em;
	font-family: source-sans-pro, sans-serif;
	font-size: 1.4em;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 120%;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
#globalNavi li a:hover span, #globalNavi li.current a span {
	color: #0071c0;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}

/* contents */
#contents {
	padding-bottom: 3em;
	background: #ffffff;
}
.breadclumb {padding: 0.4em 0 4.2em 0;}
.breadclumb li {
	display: inline;
	font-size: 0.858em;
}
.ctsBlock {padding-bottom: 4em;}

/* footer */
#footer .bnrArea {background: #333333;}
#footer .bnrArea .inner {padding: 20px 0;}
#footer .bnrArea .inner a {
	display: inline-block;
	background: #ffffff;
}
#footerNavi {
	padding: 40px 0 30px 0;
	text-align: center;
}
#footerNavi li {
	display: inline-block;
	padding: 0 1em;
}
#footerNavi li a {
	color: #eeeeee;
	font-family: source-sans-pro, sans-serif;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-decoration: none;
}
#footerNavi li a:hover {
	text-decoration: underline;
}
#footer .copy {
	padding-bottom: 40px;
	color: #999999;
	font-size: 0.715em;
	text-align: center;
	letter-spacing: 0.1em;
}

/* pageTop */
.pageTop {
	display: none;
	position: relative;
	margin:0 auto;
	padding-bottom: 0;
	max-width: 990px;
}
.pageTop a {
	display: block;
	position: fixed;
	z-index: 9999;
	bottom: 30px;
	left: auto;
	margin-left: 946px;
	filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#aaffffff,EndColorStr=#aaffffff);
	background: rgba(225,225,225,0.7);
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-o-border-radius: 2px;
	-ms-border-radius: 2px;
}
.pageTop a img {padding: 14px 10px;}
.pageTop a:hover {
	filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#ffffffff,EndColorStr=#ffffffff);
	background: rgba(225,225,225,1);
}
.pageTop a:hover img {
	filter: none;
	-ms-filter: "none";
	-moz-opacity: 1;
	opacity: 1;
}