@charset "utf-8";

/*== reset =========================================================================*/
html,body {
	height: 100%;
}

body,
div,
h1, h2, h3, h4, h5, h6,
dl, dt, dd, ul, ol, li,
table, thead, tbody, tfoot, caption, th, td,
p, blockquote, pre,
form, fieldset, legend {
	margin:0;
	padding:0;
	font-size:100%;
}
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary{
	display:block;margin:0;padding:0;
}

body {
	line-height:1;
}

a, input[type="submit"] {
	cursor:pointer;
}

h1, h2, h3, h4, h5, h6, strong {
	font-weight:bold;
}

ol, ul, li {
	list-style: none;
}

table {
	border-collapse:collapse;
	border-spacing:0;
	font-size:100%;
}

caption, th {
	text-align:left;
}

img, input {
	vertical-align:middle;
}

abbr, acronym, fieldset, img {
	border:0;
}

address, caption, cite, code, dfn, em, th, var {
	font-style:normal;
	font-weight:normal;
}

select, input, textarea {
	font-size:100%;
}

textarea {
	overflow:auto;
}

code, kbd, code, samp {
	font-family:monospace;
}

ins, del {
	display:block;
}

p ins, p del,
ol ins, ol del,
ul ins, ul del,
dl ins, dl del,
table ins, table del {
	display:inline;
}

/*== base =========================================================================*/

/*h1,h2,h3,h4,h5,h6 { font-weight: bold; font-family: 'HiraKakuProN-W6',sans-serif; }*/
h1,h2,h3,h4,h5,h6 { font-weight: normal; }

.d-none { display: none; }
.d-block { display: block; }
.d-inline { display: inline; }
.d-inlineblock { display: inline-block; *display: inline; *zoom: 1; }

.p-std { margin-top: 15px; }
.bg-white { background: #fff;}
.hidden { display: none; }
.nowrap { white-space: nowrap; }
.of-hidden { overflow: hidden; }

.f-left { float: left; }
.f-right { float: right; }
.cl-left { clear: left; }
.cl-right { clear: right; }
.cl-both { clear: both; }

.bd-none { border: none !important; }
.bd-top-none { border-top: none !important; }
.bd-right-none { border-right: none !important; }
.bd-bottom-none { border-bottom: none !important; }
.bd-left-none { border-left: none !important; }

em { color: #cc0000; font-style: normal; }
strong { font-weight: bold; font-family: 'HiraKakuProN-W6',sans-serif; }

a { color: #aaa; text-decoration: none; -webkit-touch-callout: none; -webkit-tap-highlight-color: rgba(0,0,0,0); }
a:visited { color: #aaa; }
a:hover { color: #060606; font-weight: bold; }
a.tlink { border-bottom: #aaa dashed 1px; }
a.tlink:hover { border-bottom: none; }
a[target=_blank].tlink:after { content: '\e867'; margin-left: .5em; font-size: 92%; font-family: 'Entypo'; }

.t-sub { font-size: 77%; }
.t-col1 { color: #bf4030; }
.t-col2 { color: #992617; }
.t-col3 { color: #666; }
.t-bold { font-weight: bold; font-family: 'HiraKakuProN-W6',sans-serif; }
.t-linethrough { text-decoration: line-through; }
.t-left { text-align: left !important; }
.t-center { text-align: center !important; }
.t-right { text-align: right !important; }
.t-bg1 { display: inline-block; background-color: #ffcdc7; }
.t-bg2 { display: inline-block; background-color: #ff9d91; }
.t-bg3 { display: inline-block; background-color: #ddd; }

.reader {/* for Talking Browser */
	position: absolute;
	overflow: hidden;
	left: 0; top: 0;
	width: 1px; height: 1px;
}

.rounded {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

/*== background ==*/
.stripe-bg {
	-webkit-background-size: 26px 26px;
	-moz-background-size: 26px 26px;
	background-size: 26px 26px;
	background-color: #f8f8f8;
	background-image: -webkit-gradient(linear, 0 100%, 100% 0,
	            color-stop(.25, #fcfcfc), color-stop(.25, transparent),
	            color-stop(.5, transparent), color-stop(.5, #fcfcfc),
	            color-stop(.75, #fcfcfc), color-stop(.75, transparent),
	            to(transparent));
	background-image: -webkit-linear-gradient(45deg, #fcfcfc 25%, transparent 25%,
	          transparent 50%, #fcfcfc 50%, #fcfcfc 75%,
	          transparent 75%, transparent);
	background-image: -moz-linear-gradient(45deg, #fcfcfc 25%, transparent 25%,
	          transparent 50%, #fcfcfc 50%, #fcfcfc 75%,
	          transparent 75%, transparent);
	background-image: -ms-linear-gradient(45deg, #fcfcfc 25%, transparent 25%,
	          transparent 50%, #fcfcfc 50%, #fcfcfc 75%,
	          transparent 75%, transparent);
	background-image: -o-linear-gradient(45deg, #fcfcfc 25%, transparent 25%,
	          transparent 50%, #fcfcfc 50%, #fcfcfc 75%,
	          transparent 75%, transparent);
	background-image: linear-gradient(45deg, #fcfcfc 25%, transparent 25%,
	          transparent 50%, #fcfcfc 50%, #fcfcfc 75%,
	          transparent 75%, transparent);
}

/*== background textimage ==*/
.bg-txt-image {
	overflow: hidden;
	text-indent: 100%; white-space: nowrap;
	background-repeat: no-repeat;
	background-position: 0 0;
	-moz-background-size: auto auto;
	background-size: auto auto;
}
.bg-txt-image p {
	overflow: hidden;
	text-indent: 100%; white-space: nowrap;
}
@media print {
	.bg-txt-image {
		height: auto !important;
		background: none !important;
		text-indent: 0; white-space: normal;
	}
}

/*== spacing ==*/
.mt0 { margin-top: 0 !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt70 { margin-top: 70px !important; }
.mt80 { margin-top: 80px !important; }
.mt90 { margin-top: 90px !important; }
.mt100 { margin-top: 100px !important; }
.mt1em { margin-top: 1em !important; }
.mt2em { margin-top: 2em !important; }
.mt3em { margin-top: 3em !important; }
.mt4em { margin-top: 4em !important; }
.mr0 { margin-right: 0 !important; }
.mr1 { margin-right: 1px !important; }
.mr2 { margin-right: 2px !important; }
.mr5 { margin-right: 5px !important; }
.mr20 { margin-right: 20px !important; }
.mb0 { margin-bottom: 0 !important; }
.mb1 { margin-bottom: 1px !important; }
.mb2 { margin-bottom: 2px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.ml0 { margin-left: 0 !important; }
.ml1 { margin-left: 1px !important; }
.ml2 { margin-left: 2px !important; }
.ml5 { margin-left: 5px !important; }
.ml20 { margin-left: 20px !important; }

/*== clearfix ==*/
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix {display: inline-block;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}

/*== debug ==*/
#debug { position: fixed; left: 0; top: 0; z-index: 99999; width: auto; height: auto; padding: 5px; background: #111; font-size: .77rem; color: #fff; }

/* 
.text9 { font-size: 77%; }
.text10 { font-size: 84%; }
.text11 { font-size: 92%; }
.text12 { font-size: 100%; }
.text13 { font-size: 109%; }
.text14 { font-size: 117%; }
.text15 { font-size: 125%; }
.text16 { font-size: 134%; }
.text17 { font-size: 142%; }
.text18 { font-size: 150%; }
.text19 { font-size: 159%; }
.text20 { font-size: 167%; }
.text21 { font-size: 175%; }
.text22 { font-size: 184%; }
.text23 { font-size: 192%; }
.text24 { font-size: 200%; }
.text25 { font-size: 209%; }
.text26 { font-size: 217%; }
*/

/*== site format =========================================================================*/

@font-face{
	font-family: 'Entypo';
	src: url('../font/entypo.eot?74551229');
	src: url('../font/entypo.eot?74551229#iefix') format('embedded-opentype'),
			url('../font/entypo.woff?74551229') format('woff'),
			url('../font/entypo.ttf?74551229') format('truetype'),
			url('../font/entypo.svg?74551229#entypo') format('svg');
}

html {
	font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'メイリオ', Meiryo, 'MS P明朝', 'MS PMincho', serif;
}

body {
	width: 100%; min-width: 980px; height: auto;
	font-size: 12px; color: #060606; line-height: 2; letter-spacing: .08em;
	-webkit-text-size-adjust: 100%;
}

#container {
	width: 100%; min-width: 980px;
}

#header {
	display: block;
	position: relative;
	width: 100%; min-width: 980px;
	padding: 240px 0 300px 0;
	margin: 0 auto;
}

#gnavi {
	display: none;
	position: fixed;
	left: 30px; top: 30px;
	width: 140px; height: auto;
}

#body {
	position: relative;
	padding: 0 30px 500px 0;
	margin-left: 250px;
}

#footer {
	display: block;
	position: relative;
	width: 100%; min-width: 980px;
	margin-top: 60px;
}

/* gnavi */
#gnavi-logo a {
	display: block;
	width: 120px; height: 52px; overflow: hidden;
	background-color: #fff;
	background-image: url(../img/common/gnavi_logo.png);
	text-indent: 100%; white-space: nowrap;
}

#gnavi .menu {
	margin-top: 80px;
	font-family: georgia;
}
#gnavi .menu li {
	margin-top: .5em;
	font-size: 109%;
}
#gnavi .menu a {
	line-height: 1;
}

/* header */
#h-logo {
	display: none;
	position: absolute;
	left: 50%;
	margin-left: -150px;
	background-color: #fff;
}

/* footer */
#f-copyright {
	position: absolute;
	padding: 30px;
	font-size: 92%; line-height: 1;
}

/* body */
#body .section-title {
	margin: 360px 0 100px 0;
	font-size: 200%; font-family: georgia; line-height: 1.8; letter-spacing: .03em;
}
#body .section-title .note {
	margin-left: 1.5em;
	font-size: 50%; letter-spacing: .03em;
}
#body .section-sub-title {
	font-size: 117%;
}
#body .block {
	position: relative;
}
#body .t-eng {
	font-family: georgia;
}