@charset "utf-8";
/* ===================================================================
CSS information

 file name  :style.css
 style info :コンテンツエリア関係 他
 
このスタイルシートの構成
 基本設定、レイアウト、横幅設定など
 汎用class
 #nav-skip
 #page
  #contents
   #main
   #side
=================================================================== */

/* -----------------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------------- */
body{
	background-color: #eee;
	font-size: .875em; /* 14px / 16px = .875 */
	font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	color: #000;
	line-height: 1.5; /* 14px * 1.5 = 21px */
}
a:link{
	color: #0342b4;
}
a:visited{
	color: #0342b4;
}
a:hover{
	color: #0342b4;
	text-decoration: none;
}
a:active{
	color: #0342b4;
}


/* -----------------------------------------------------------
	汎用class
----------------------------------------------------------- */
/* clearfix */
* html #contents,
* html #gnav ul,
* html #main .main-header,
* html #main .pic-thumb ul{
	height: 1%;
}
* +html #contents,
* +html #gnav ul,
* +html #main .main-header,
* +html #main .pic-thumb ul{
	height: 1%;
}
#contents::after,
#gnav ul::after,
#main .main-header::after,
#main .pic-thumb ul::after{
	content: ""; display: block; clear: both;
}

.caution{
	color: #f00;
}
.center{
	text-align: center;
}
.middle img{
	vertical-align: middle;
}

.txt-small{
	font-size: .857143em; /* 12px相当 */
}
.txt-large{
	font-size: 1.142857em; /* 16px相当 */
}
.txt-xlarge{
	font-size: 1.285714em; /* 18px相当 */
}


/* -----------------------------------------------------------
	#nav-skip (NavigationSkip)
----------------------------------------------------------- */
span#nav-skip{
	position: absolute;
	top: 0;
	left: 0;
}


/* -----------------------------------------------------------
	#page
----------------------------------------------------------- */
#page{
	background-image : url(bg-page.gif);
	background-repeat: repeat-y;
	width: 800px; /* 800px + 37px(影) + 37px(影) */
	padding: 0 37px;
	margin: 0 auto;
}
#page .page-top{
	clear: both;
	margin-right: 15px;
	line-height: 0;
	text-align: right;
}


/* -----------------------------------------------------------
	#contents
----------------------------------------------------------- */
#contents{
	background-image : url(bg-contents.gif);
	background-repeat: repeat-x;
	background-position: left top;
  min-height: 360px;
  height: auto !important;
  height: 360px;
	padding: 20px 0;
}
* html #contents{
	zoom: 1;
}
.content-1column #contents{
	padding: 0 0 20px 0;
}


/* -----------------------------------------------------------
	#main
		メイン
----------------------------------------------------------- */
#main{
	float: left;
/*	background-color: #ccc; */
	width: 550px;
	padding: 0 20px 0 15px;
}
.content-1column #main{
	float: none;
	width: 770px;
	padding: 0 15px;
}
#main .contents-inner{
	padding: 0 17px;	
}
#main h1{
	background-image : url(bg-title-obi.gif);
	background-repeat: no-repeat;
	height: 31px; /* 41px */
	margin-bottom: 20px;
	padding: 10px 0 0 29px;
	font-size: 1.142857em;
}
.content-1column #main h1{
	background-image : url(bg-title-obi-1col02.gif);
	color: #fff;
}
#main h2{
	background-image : url(bg-title-side-under.gif);
	background-repeat: no-repeat;
	height: 32px; /* 40px */
	margin: 20px 0;
	padding: 8px 0 0 20px;
}
.content-1column #main h2{
	background-image : url(bg-title-side-under-1col.gif);
}
#home #main h2{
	background-image: none;
	height: 42px;
	padding: 0;
	margin: 0;
}
#home #main #topics h2{
	height: 37px;
}
#main .caption .txt{
	float: left;
	clear: both;
	width: 319px; /* 329px */
	padding: 0 10px 0 0;
}
* html #main .caption .txt{
	width: 316px;
}
#main #main-visual{
	margin: 0 0 20px 0;
	line-height: 1;
}
#home #main #topics{
	background-image : url(bg-footer-topics.gif);
	background-repeat: no-repeat;
	background-position: center bottom;
	padding: 0 0 10px 0;
}
#home #main #topics #topics-body{
	background-image : url(bg-body-topics.gif);
	background-repeat: repeat-y;
	background-position: center top;
	padding: 20px 4px 6px 14px;
}
* html #home #main #topics #topics-body{
	zoom: 1;
}
#home #main #topics #topics-body dl dt{
	float:left;
	clear: left;
	width: 9.5em;
}
#home #main #topics #topics-body dl dd{
	overflow: hidden;
}
* html #home #main #topics #topics-body dl dd{
	zoom: 1;
}
#main .main-header{
	padding: 10px 0 20px 0;
}
#main .main-header .counter{
	float: left;
}
#main .main-header .counter p{
	float: left;
	margin: 0 10px 0 0;
}
#main .main-header .counter .since{
	padding: 5px 0 0 0;
}
#main .main-header .link{
	float: right;
}
#main .main-header .link p{
	float: left;
	margin: 0 0 0 10px;
}
#main .pic-thumb ul{
	list-style: none;
	list-style-image: none;
}
#main .pic-thumb ul li{
	float: left;
	line-height: 0;
	margin: 0 10px 10px 0;
}
#main .pic-1big{
	text-align: center;
}

#main p{
	margin-bottom: 10px;
}
#main table{
	width:550px;
	border-top:#cccccc 1px solid;
	border-left:#cccccc 1px solid;
	border-collapse:collapse;
	margin-top: 10px;
	margin-bottom: 5px;
	margin-left: -2px;
}
#main table th{
	background:#f2f2f2;
	border-right:#cccccc 1px solid;
	border-bottom:#cccccc 1px solid;
	padding:0.2em 0.5em;
	font-size:80%;
	line-height:150%;
}
#main table td{
	border-right:#cccccc 1px solid;
	border-bottom:#cccccc 1px solid;
	padding:0.2em 0.5em;
	font-size:80%;
	line-height:150%;
}
#main table tr.total td{
	background:#f2f2f2;
}
#contents table ul{
	list-style: none;
	font-size: 80%;
	line-height: 100%;
}


/* -----------------------------------------------------------
	#side
		サイドバー、サブ
----------------------------------------------------------- */
#side{
	float: left;
	width: 200px;
	padding: 0 15px 0 0;
}
#side ul{
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-image: none;
}
#side .list{
	background-image : url(bg-bottom-side.gif);
	background-repeat: no-repeat;
	background-position: center bottom;
	margin-bottom: 20px;
	padding: 0 0 5px 0;
}
* html #side .list{
	zoom: 1;
}
#side .list .list-body{
	background-image : url(bg-list-body-side01.gif);
	background-repeat: repeat-y;
}
* html #side .list .list-body{
	zoom: 1;
}
#side .list .side-title{
	background-image : url(bg-title-side.gif);
	background-repeat: no-repeat;
	height: 30px; /* 40px */
	padding: 10px 0 0 10px;
	color: #000;
}
#side .list ul li{
	border-bottom: 1px #a0a0a0 dotted;
}
#side .list ul li a{
	display: block;
	background-image : url(item-arrow-blue.gif);
	background-repeat: no-repeat;
	background-position: 12px .75em;
	margin: 0 1px;
	padding: 6px 6px 6px 27px;
}
#side .list ul li.current a{
	background-color: #fff88c;
}
#side .list ul li a:hover{
	background-color: #fff88c;
}
#side .list ul li a:link{
	text-decoration: none;
}
#side .list ul li a:visited{
	text-decoration: none;
}
#side .list ul li a:hover{
	text-decoration: none;
}
#side .list ul li a:active{
	text-decoration: none;
}
#side #search{
	margin-bottom: 12px;
}
#side #search .form{
	width: 130px;
}
#side #search .textbf{
	font-size: .857143em;
}
#side #search .form{
	color: #969696;
}


/* -----------------------------------------------------------
	旧スタイルからの移植分

----------------------------------------------------------- */
