@charset "Shift_JIS";

/*　共通汎用クラス ----------------- 

	Last Update:: 2009. 12. 18

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

html,
body {
	height: 100%;
	margin: 0;
	}

/* ----- wrapper ----------------------- */

.wrapper {
	position: relative;
	margin: 0px;
	width: 780px;
	height: 100%;
	min-height: 100%;
}

body > .wrapper {
    height: auto;
}


/* ----- header ------------------------ */

.header { margin: 0; }

.header .topics { background: url(/images/header1.gif) no-repeat right top; }

.header .topics h1 a {
	text-indent: -9999px;
	font-size: 1px;
	display: block;
	/*overflow: hidden;*/
	height: 42px;
	background: url(/images/logo.gif) no-repeat top left; 
	}

.header .topics p { display: none; }

/* ++++++++++ コンテンツ領域 - contents_area ++++++++++ */

.contents_area {
	width: 766px;
	margin: 0 auto 2em;
	padding-bottom: 50px;
	clear: both;
	height: auto;
	}

/* ----- contents header --------------- */

.contents_header {
	text-align: left;
	}

.contents_header p { 
	text-indent: -9999px;
	font-size: 1px;
	overflow: hidden;
	height: 27px;
	background-repeat: no-repeat;
	background-position: center top;
	}

.breadcrumb {
	color: #006600;
	font-size: 93%;
	}

ul.breadcrumb {
	border-top: 2px solid #006600;
	border-bottom: 2px solid #006600;
	background-color: #99CC99;
	padding-left: 20px;
	}

ul.breadcrumb li {
	float: left;
	margin-right: 0.5em;
	color: #006600;
	line-height: 1.8;
	font-size: 93%;
	}

/* main */
.main {
	clear: both;
	}

.main h2 {
	margin-bottom: 20px;
	background: url(/images/bg.gif) repeat-x;
	font-size: 100%; /* 13px */
	text-align: left;
	line-height: 32px;
	padding-left: 10px;
	color: #336633;
}

.main h3,
.main h4,
.main h5 {
	font-size: 93%; /* 12px */
	margin-bottom: 1em;
	}

.main p.intro {
	margin-bottom: 20px;
	}
	
.main .link_top {
	clear: both;
	text-align: right;
	margin: 20px 0px;
	}

.main p,
.main dt,
.main dd,	
.main li,
.main th,
.main td {
	font-size: 93%;
	line-height: 1.6;
}

.main li li,
.main dd p {
	font-size: 100%;
	}

.column {
	clear: both;
	margin: 20px 0px;
	}

.article p { text-indent: 1em; }

.article p.banner { text-indent: 0; }

hr.solid {
	border-top:1px solid #EDEDED;
	color:#EDEDED;
	}

hr.dot {
	border-top:1px dotted #EDEDED;
	color:#EDEDED;
	}

.warning,
a.warning,
.warning a {
	color: #F30 !important;
	}

.caption {
	padding-left: 1em;
	text-indent: -1em;
	}

.display-none {
	display: none;
	}

.lead {
	font-weight: bold;
	margin: 20px auto;
	text-align: left;
	}

/* ++++++++++ 一覧表示 ++++++++++ */

#index_list {
	margin: 20px 50px;
	text-align: left;
	}

#index_list .intro {
	margin-bottom: 20px;
	}

#index_list h3 {
	font-weight: bold;
	margin:20px 40px 10px;
	
	}

#index_list dl {
	margin:10px 40px;
	}

#index_list dl dt {
	font-weight: bold;
	margin-bottom: 5px;
	padding-left: 1em;
	text-indent: -1em;
	}

#index_list dl dd {
	padding-left: 1em;
	font-size: 93%;
	line-height: 1.4;
	margin-bottom: 0.75em;
	}

/* ++++++++++ フッター - #footer ++++++++++ */

.footer {
	width: 100%;
	padding-top: 1em;
	border-top: 2px solid #CCC;
	position: absolute;
    bottom: 0;
	}

.footer .credit { padding-left: 1em; float:left; width: 50%; text-align: left; }

.footer .bottom_nav { float: right; width: 45%; padding-right: 1em;  }
	
.footer .bottom_nav ul { text-align: right; }

.footer .bottom_nav ul li {
	display: -moz-inline-box;
	display: inline-block;
	/display: inline;
	/zoom: 1;
	}

.footer p,
.footer li {
	font-size: 85%;
	line-height: 1.8;
	}

/* ++++++++++ 汎用クラス ++++++++++ */

/*文字サイズ */

.txt10 { font-size: 77%; }
.txt11 { font-size: 85%; }
.txt12 { font-size: 93%; }
.txt14 { font-size: 108%; }

.t_right { text-align: right; }
.t_left { text-align: left; }
.t_center { text-align: center; }

.bold { font-weight: bold; }

/* フロート */
.fl-clear {	clear: both;}
.fl-left { float: left; }
.fl-right { float: right; }

/* 余白調整用 */
.m_10 { margin: 10px; }
.mb_10 {margin-bottom: 10px;}
.mt_10 { margin-top: 10px; }
.mtb_10 { margin: 10px 0px; }

.m_20 { margin: 20px; }
.mb_20 {margin-bottom: 20px;}
.mt_20 { margin-top: 20px; }
.mtb_20 { margin: 20px 0px; }


.m_30 { margin: 30px; }
.mb_30 {margin-bottom: 30px;}
.mt_30 { margin-top: 30px; }
.mtb_30 { margin: 30px 0px; }

.mark_disc { list-style-type: disc; list-style-position: outside; padding-left: 1em; margin-bottom: 1em;}
.mark_dec { list-style-type: decimal; list-style-position: outside; padding-left: 1em; margin-bottom: 1em;}

/* テーブル */
table.basic_line {
	margin: 20px 0;
	border-left: 1px solid #CCC;
	border-top: 1px solid #CCC;
	}

table.basic_line caption {
	font-size: 93%;
	line-height: 1.4;
	}
	
table.basic_line th,
table.basic_line td {
	font-size: 93%;
	line-height: 1.4;
	padding: 5px;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	}

table.basic_line th {
	width: 20%;
	}

/*フォーム用*/

table.basic_form {
	margin: 20px 0 40px;
	}

table.basic_form th {
	border-top: 1px solid #99cc99;
	border-left: 1px solid #99cc99;
	border-bottom: 5px solid #FFF;
	padding: 0.5em;
	width: 40%;
	}

table.basic_form td {
	border-top: 1px solid #99cc99;
	border-bottom: 5px solid #FFF;
	padding: 0.5em;
	}

table.basic_form .select_list {
	margin-bottom: 1em;
	}

table.basic_form .select_list li {
	float: left;
	width: 50%;
	line-height: 1.8;
	}
	
table.basic_form .select_list li.etc {
	width: 100%;
	clear: both;
	}

/* ウェブカタログ関連 */
.link_catalog {
	color: #999;
	}
.link_catalog a,
.link_catalog a:hover {
	font-weight: bold;
	line-height: 3em;
	color: #666;
	margin: 1em;
	}


/* フロート解除 */

/* clearfix */
.clearfix:after,
.wrapper:after,
.main:after,
.column:after,
.breadcrumb:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix,
.wrapper,
.main,
.column,
.breadcrumb {
  min-height: 1px;
}

* html .clearfix,
* html .wrapper,
* html .main,
* html .column,
* html .breadcrumb {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

