@charset "utf-8";

/*----------------------------------------------------------
all
----------------------------------------------------------*/

html {overflow-y: scroll;}

/* base
==========================================================*/
body {
	font: 100% "MS PGothic", "ＭＳ Ｐゴシック", "HiraginoKakugo Pro", "ヒラギノ角ゴ Pro", sans-serif, Meiryo, "メイリオ";
	color: #555555;
	padding: 0px;
	margin: 0px;
	background: url(/img/common/bg_body.jpg) repeat-x #FFFFFF;
	_text-align: center;/* --- For IE6 --- */
	*behavior: url(/js/csshover3.htc);/* --- For IE6 --- */
}
body#simple,body#blankPage {background: url(/img/common/bg_body_simple.jpg) repeat-x #FFFFFF;}
* html body {padding-left: 1px;}/* --- For IE6 --- */
*+html body {padding-left: 1px;}/* --- For IE7 --- */
@media screen and (-webkit-min-device-pixel-ratio:0) { body {padding-left: 1px;}}/* --- For webkit --- */
h1,h2,h3,h4,h5,h6,p,ol,ul,li,dl,dt,dd,form,fieldset,pre,blockquote,address,div,span,img,input {margin: 0px; padding: 0px; font-size:100%; font-weight: normal; font-style: normal; list-style: none;}
img {border: 0;}
li img {vertical-align: bottom;}
select,input,textarea,table {font-size: 100%;}
label {cursor: pointer;}
object,a {outline: none; overflow: hidden;}/* --- For FF --- */

/* --- リンクカラー ---- */
a:link {color: #0066CC; text-decoration: none;}
a:visited {color: #0066CC; text-decoration: none;}
a:active {color: #0066CC; text-decoration: none;}
a:hover {color: #0066CC; text-decoration: underline;}

/* --- JS ---- */
#jsAlert {
	text-align: center;
	margin:  0 auto;
	width: 900px;
	padding: 10px 0 20px;
	font-size: 78%;
}
#jsAlert p {
	font-weight: bold;
	color: #0066CC;
}


/* 外枠部分指定
==========================================================*/
.containerAll {
	width: 100%;
	/*overflow: hidden;ページが選択しにくいからNG*/
	background: url(/img/common/bg_container.gif) center top no-repeat;
}
#container {
	width: 900px;
	margin: 0px auto;
	overflow: hidden;
	_text-align: left;/* --- For IE6 --- */
	font-size: 78%;
	background: url(/img/common/bg_container.gif) center top no-repeat;
}
	body#blankPage #container {
		_text-align: center;/* --- For IE6 --- */
	}

/* ヘッダーエリア（ナビ含む）
==========================================================*/
#headerArea {
	width: 900px;
	height: 123px;
	line-height: 1.0;
}
	body#simple #headerArea,
	body#blankPage #headerArea {
		width: 900px;
		height: 56px;
	}
#headerArea p.logo,
#headerArea h1.logo {
	width: 214px;
	float: left;
	padding: 22px 0 0 0;
}
#headerArea #naviSkip {
	position: absolute;
	left: 0;
	top: -150px;
}
	#headerNaviArea {
		position: relative;
		width: 640px;
		height: 76px;
		float: right;
		background: url(/img/common/bg_headerNaviArea.gif) top right no-repeat;
	}
		body#simple #headerNaviArea,
		body#blankPage #headerNaviArea {
			height: 56px;
		}
	#headerNaviArea dl#globalSite {
		width: 235px;
		height: 21px;
		position: absolute;
		left: 150px;
		top: 9px;
	}
	#headerNaviArea dl#globalSite dt {
		float: left;
	}
	#headerNaviArea dl#globalSite dd {
		float: left;
	}
	#headerNaviArea p {
		position: absolute;
		left: 400px;
		top: 5px;
	}
	#headerNaviArea dl#fontSize {
		width: 143px;
		height: 15px;
		position: absolute;
		left: 492px;
		top: 5px;
	}
	#headerNaviArea dl#fontSize dt {
		float: left;
		padding-right: 8px;
	}
	#headerNaviArea dl#fontSize dd {
		float: left;
		padding-right: 5px;
	}
	#headerNaviArea dl#fontSize dd img {
		cursor: pointer;
	}
	#headerNaviArea ul#hNavi {
		width: 640px;
		height: 22px;
		position: absolute;
		left: 0px;
		top: 39px;
		background: url(/img/common/bg_hNavi.gif) left top no-repeat;
	}
		body#simple #headerNaviArea ul#hNavi,
		body#blankPage #headerNaviArea ul#hNavi {
			display: none;
		}
	#headerNaviArea ul#hNavi li {
	position: absolute;
	}
	#headerNaviArea ul#hNavi li.hnaviMail { left: 9px; top: 5px;}
	#headerNaviArea ul#hNavi li.hnaviFaq { left: 126px; top: 5px;}
	#headerNaviArea ul#hNavi li.hnaviContact { left: 249px; top: 5px;}
	#headerNaviArea ul#hNavi li.hnaviSitemap { left: 345px; top: 5px;}
	#headerNaviArea ul#hNavi li.hnaviSearch { left: 440px; top: 0px;}
	#headerNaviArea ul#hNavi li.hnaviSearch dl {
		width: 200px;
	}
	#headerNaviArea ul#hNavi li.hnaviSearch dt {
	position: absolute;
	left: 0;
	top: -150px;
	}
	#headerNaviArea ul#hNavi li.hnaviSearch .searchword {
	float: left;
	width: 130px;
	_width: 152px;
	padding: 1px 0 1px 22px;
	}
	#headerNaviArea ul#hNavi li.hnaviSearch .searchword input {
	width: 130px;
	height: 18px;
	_height: 21px;
	border: none;
	background: none;
	padding: 3px 0 0 2px;
	}
	#headerNaviArea ul#hNavi li.hnaviSearch .searchword input:focus,
	#headerNaviArea ul#hNavi li.hnaviSearch .searchword input.focused {
		background: url(/img/common/bg_search_focus.gif) left top no-repeat;
	}
	*+html body	#headerNaviArea ul#hNavi li.hnaviSearch .searchword input:focus,
	*+html body	#headerNaviArea ul#hNavi li.hnaviSearch .searchword input.focused {
		background: url(/img/common/bg_search_focus.gif) left -1px no-repeat;
	}
	#headerNaviArea ul#hNavi li.hnaviSearch .searchbtn {
	float: right;
	width: 43px;
	}
#headerArea #gNavi {
	clear: both;
	width: 900px;
}
#headerArea #gNavi li {
	float: left;
}
#headerArea #gNavi li img {
	margin-left: 1px;
}
#headerArea #gNavi li img#home {
	margin-left: 0
}


/* コンテンツエリア
==========================================================*/
#contentsArea {
	clear: both;
	width: 900px;
	/*overflow: hidden;←※使用厳禁：プリント出ない。*/
	padding-top: 20px;
}
#topContentsArea {
	clear: both;
	width: 900px;
	/*overflow: hidden;*/
	padding-top: 13px;
}
/* タグ部分非表示用に ---------------------------------*/
p.tags {
	display:none;
}


/* フォント可変
==========================================================*/
body.fontL #headerNaviArea ul#hNavi li.hnaviSearch .searchword input,
body.fontL #contentsArea, body.fontL #topContentsArea,
body.fontL #footerArea {
	font-size: 131%;
}
body.fontL #mainArea #topicpathArea ul {
	font-size: 93%;
}
body.fontM #headerNaviArea ul#hNavi li.hnaviSearch .searchword input,
body.fontM #contentsArea, body.fontM #topContentsArea,
body.fontM #footerArea {
	font-size: 100%;
}
body.fontM #mainArea #topicpathArea ul {
	font-size: 85%;
}
body.fontS #headerNaviArea ul#hNavi li.hnaviSearch .searchword input,
body.fontS #contentsArea, body.fontS #topContentsArea,
body.fontS #footerArea {
	font-size: 77%;
}
body.fontS #mainArea #topicpathArea ul {
	font-size: 100%;
}



/* フッターエリア
==========================================================*/

/* #footerAreaTop */
#footerAreaTop {
	clear: both;
	width: 100%;
	font-size: 78%;
	_text-align: center;/* --- For IE6 --- */
	background: url(/img/common/bg_footerArea_top.jpg) left top repeat-x;
}
#footerAreaTop dl {
	width: 900px;
	margin: 0px auto;
	min-height: 11px;
	_height: 36px;/* --- For IE6 --- */
	_text-align: left;/* --- For IE6 --- */
	padding: 15px 0 0;
}
#footerAreaTop dt {
	float: left;
	width: 142px;
}
#footerAreaTop dd {
	float: right;
	width: 755px;
	padding-bottom: 10px;
	_padding-bottom: 0px;
	min-height: 1.0em;
}
#footerAreaTop dd li {
	float: left;
	padding: 0 20px 0 15px;
	background: url(/img/common/ico_arrow.gif) left 1px no-repeat;
}

/* #footerAreaBottom */
#footerAreaBottom {
	clear: both;
	width: 100%;
	font-size: 78%;
	_text-align: center;/* --- For IE6 --- */
	background: url(/img/common/bg_footerArea_bottom.jpg) left top repeat-x;
}
#footerAreaBottom #fNavi {
	width: 900px;
	_text-align: left;
	margin: 0 auto;
	overflow: auto;
	padding: 25px 0 0;
	margin-bottom: 20px;
}
#footerAreaBottom #fNavi ul {
	width: 530px;
	float: left;
}
#footerAreaBottom #fNavi ul li {
	float: left;
	padding-right: 15px;
}
#footerAreaBottom #fNavi ul li a {
	padding-left: 15px;
	background: url(/img/common/ico_footerArrow.gif) left top no-repeat;
}
#footerAreaBottom #fNavi address {
	width: 340px;
	float: right;
	text-align: right;
	color: #1A76D1;
	font-size: 108%;
}
#footerAreaBottom #fNavi noscript {
	width: 340px;
	float: right;
	color: #1A76D1;
	font-size: 108%;
}


/* 調整用
==========================================================*/
.txtSmall {font-size: 85% !important;}
.marTop5 {margin-top: 5px !important;}
.marTop10 {margin-top: 10px !important;}
.marTop20 {margin-top: 20px !important;}
.marTop30 {margin-top: 30px !important;}
.marTop40 {margin-top: 40px !important;}
.marBottom0 {margin-bottom: 0px !important;}
.marBottom5 {margin-bottom: 5px !important;}
.marBottom10 {margin-bottom: 10px !important;}
.marBottom15 {margin-bottom: 15px !important;}
.marBottom20 {margin-bottom: 20px !important;}
.marBottom30 {margin-bottom: 30px !important;}
.marBottom40 {margin-bottom: 40px !important;}
.marLef5 {margin-left: 5px;}
.marLef10 {margin-left: 10px;}
.marRig10 {margin-right: 10px;}
.marLef20 {margin-left: 20px;}
.marRig20 {margin-right: 20px;}
.fl {float: left;}
.fr {float: right;}
.clear {clear: both;}
.al {text-align: left;}
.ar {text-align: right;}
.ac {text-align: center;}
ol.decimal,ul.disc  {padding: 5px 0 5px 0;}
ol.decimal li {list-style: decimal; margin-left: 24px;}
ol.decimal li li {margin-left: 24px;}
ul.disc li {list-style: disc; margin-left: 30px;}
.indent {text-indent: -1.4em; margin-top: 1.4em; margin-left: 1.4em;}

.clearfix {
	zoom: 1; /*for IE 5.5-7*/
}
.clearfix:after {/*for modern browser*/
	content: ".";
	display: block;
	height: 0px;
	clear :both;
	visibility :hidden;
}


/* 紙媒体向けスタイル定義
==========================================================*/
@media print {
	body {
	_zoom: 70%;/* --- For IE6 --- */
	}
	.containerAll, #container, #contentsArea, #topContentsArea, #mainContentsArea, #mainArea ul#topicpathArea {
	overflow: visible !important;
	}
	#headerArea #gNavi li img {
	*margin-left: 0px;
	}
}


