@charset "utf-8";


/* reset
--------------------------------*/

body, div, h1, h2, h3, h4, h5, h6, p,
ul, ol, li, dl, dt, dd, caption,
pre, form, fieldset, input, blockquote, a, hr { margin: 0; padding: 0;}
fieldset, img { border: 0;}
table {
	border-collapse: collapse;
}
address, caption, cite, code, dfn, em, th, var{ font-style:normal; font-weight:normal;}
ul,ol { list-style: none;}
ul ul, ol ul, dl ul, dl dl { margin: 0; padding: 0;}
a, a:focus { outline: 0;}
h1,h2,h3,h4,h5,h6 { font-size: 100%; font-weight: normal;}
img { vertical-align: middle;}

/* base
--------------------------------*/
html {
	margin-bottom: 1px;
	overflow-y: scroll;
}

body{
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 13px;
	line-height: 1.4;
	/* [disabled]height: 100%; */
	background: url(../images/common/bg_body.gif) 4px 3px;
	color: #5b5b5b;
	text-align: center;
}
body.bg_none {
	background: none;
}

/* utillity
--------------------------------*/

a { text-decoration: none;}

font_10 { font-size: 10px !important;}
font_12 { font-size: 12px !important;}
font_14 { font-size: 14px !important;}
font_16 { font-size: 16px !important;}

.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;}
.mt25 { margin-top: 25px !important;}
.mt30 {
	margin-top: 10px !important;
}
.mt35 { margin-top: 35px !important;}
.mt40 { margin-top: 40px !important;}
.mb0 { margin-bottom: 0 !important;}
.mb5 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mr0 { margin-right: 0 !important;}
.mr5 { margin-right: 5px !important;}
.mr10 { margin-right: 10px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr25 { margin-right: 25px !important;}
.mr30 { margin-right: 30px !important;}
.ml0 { margin-left: 0 !important;}
.ml_5 { margin-left: -5px !important;}
.ml2 { margin-left: 2px !important;}
.ml5 { margin-left: 5px !important;}
.ml10 { margin-left: 10px !important;}
.ml15 { margin-left: 15px !important;}
.ml20 { margin-left: 20px !important;}
.ml25 { margin-left: 25px !important;}
.ml30 { margin-left: 30px !important;}
.ml35 { margin-left: 35px !important;}
.ml50 { margin-left: 50px !important;}
.ml80 { margin-left: 80px !important;}

.pt0 { padding-top: 0 !important;}
.pt5 { padding-top: 5px !important;}
.pt10 { padding-top: 10px !important;}
.pt15 { padding-top: 15px !important;}
.pt20 { padding-top: 20px !important;}
.pt25 { padding-top: 25px !important;}
.pt30 { padding-top: 30px !important;}
.pt40 { padding-top: 40px !important;}
.pt50 { padding-top: 50px !important;}
.pb0 { padding-bottom: 0 !important;}
.pb5 { padding-bottom: 5px !important;}
.pb10 { padding-bottom: 10px !important;}
.pb15 { padding-bottom: 15px !important;}
.pb20 { padding-bottom: 20px !important;}
.pb25 { padding-bottom: 25px !important;}
.pb30 { padding-bottom: 30px !important;}
.pb40 { padding-bottom: 40px !important;}
.pb50 { padding-bottom: 50px !important;}
.pr0 { padding-right: 0 !important;}
.pr5 { padding-right: 5px !important;}
.pr10 { padding-right: 10px !important;}
.pr15 { padding-right: 15px !important;}
.pr20 { padding-right: 20px !important;}
.pr25 { padding-right: 25px !important;}
.pr30 { padding-right: 30px !important;}
.pl0 { padding-left: 0 !important;}
.pl5 { padding-left: 5px !important;}
.pl10 { padding-left: 10px !important;}
.pl15 { padding-left: 15px !important;}
.pl20 { padding-left: 20px !important;}
.pl25 { padding-left: 25px !important;}
.pl30 { padding-left: 30px !important;}

.txt_c { text-align: center !important;}
.txt_l { text-align: left !important;}
.txt_r { text-align: right !important;}

.alt { display: none;}

/* clearfix */
.cf:after { 
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}


/* structure
--------------------------------*/
#container {
	padding-top: 50px;
	width: 100%;
	min-width: 986px;
	height: 100%;
	background: url(../images/common/bg_container.png) center top no-repeat;
	/*overflow-x: hidden;*/
	text-align: left;
}

#header {
	position: relative;
	margin: 0 auto;
	padding: 0 3px;
	width: 962px;
	height: 57px;
}
#header:after {
	content: "";
	display: block;
	clear: both;
	visibility: hidden;
}
#contents {
	clear: both;
	margin: 0 auto 70px;
	width: 986px;
	background: url(../images/bg_contents.png) center bottom no-repeat;
}

#footer{
	clear: both;
	width: 100%;
}

/* header
--------------------------------*/
#header h1 {
	float: left;
	margin-top: 20px;
	width: 250px;
}
#gnav {
	position: absolute;
	right: 3px;
	top: 0;
	width: 660px;
}
#gnav ul:after { 
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
#gnav li {
	float: left;
}


/* footer
--------------------------------*/
.footer_top {
	padding: 15px 0;
	background-color: #9e9e9e;
}
.footer_top ul {
	margin: 0 auto;
	padding: 0 3px;
	width: 968px;
	letter-spacing: -.4em;
	text-align: right;
}
.footer_top li {
	display: inline;
	letter-spacing: normal;
	line-height: 1.0;
	border-left: 1px solid #fff;
	letter-spacing: .1em;
	color: #c8c8c8;
}
.footer_top li:first-child {
	border-left: none;
}
.footer_top li.nolink {
	padding: 0 10px;
}
.footer_top li a {
	padding: 0 10px;
	font-size: 12px;
	color: #fff;
	filter:alpha(opacity=80);
	opacity: 0.8;
}
.footer_top li a.wide {
	padding: 0 12px;
}
.footer_top li a:hover {
	filter:alpha(opacity=100);
	opacity: 1.0;
}
.footer_btm {
	padding: 8px 0;
	background-color: #000;
}
.footer_btm address {
	margin: 0 auto;
	width: 1000px;
	line-height: 1.0;
	font-size: 10px;
	text-align: right;
	color: #fff;
}
