@charset "UTF-8";

/* メイン　共通
---------------------------------------------------------- */

#sub_index #main h2,
#sub #main h2 {
	font-size: 185%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	line-height: 1.3;
	margin-bottom: 20px;
	color: #747474;
	width: 560px;
}

#main h2.line {
	font-size: 138% !important;
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "MS PGothic", "ＭＳ Ｐゴシック", sans-serif !important;
	line-height: 1.2;
	margin-bottom: 20px;
	background: #eceddd;
	color: #333333 !important;
	padding: 10px 10px;
	width: auto !important;
}

#main h2.line span {
	display: block;
	border-left: solid 4px #005d3d;
	padding-left: 6px;
}

#main h3 {
	color: #005d3d;
	font-size: 115%;
	margin-bottom: 20px;
	border: solid 1px #c4c4c4;
	line-height: 1.4;
	padding: 7px 9px;
}

#main h3 span {
	display: block;
	border-left: solid 4px #005d3d;
	padding: 0 10px;
}

#main h3 a {
	color: #005d3d;
	text-decoration: none;
}

#main h3 a:hover {
	text-decoration: underline;
}

#main h4 {
	color: #538097;
	font-size: 123%;
	line-height: 1.5;
	margin-bottom: 20px;
}

#main h5 {
	font-size: 108%;
	line-height: 1.5;
	color: #666666;
	margin-bottom: 5px;
}

#main p {
	margin-bottom: 15px;
}

#main p.read {
	font-size: 108%;
	font-weight: bold;
}

/* ページの最初のアイテム　上にスペース */
.first,
#main h2.first,
#main h3.first,
#main p.first {
	margin-top: 40px !important;
}

/* キャッチ */
#main p.catch {
	font-size: 138%;
	line-height: 1.5;
	margin-bottom: 15px;
	font-weight: bold;
	color: #538097;
}

/* プリントボタン */
p.print_btn {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	cursor: pointer;
}

/* 注釈 */
span.asterisk {
	display: block;
}

span.asterisk,
p.asterisk,
div.asterisk {
	text-indent: -1.0em;
	margin-left: 1em !important;
}

/* ページのトップへ */
.container p.pagetop {
	border-top: solid 1px #D0D0D0;
	text-align: right;
	margin-top: 20px;
	margin-bottom: 30px;
}

.container p.pagetop a {
	display: inline-block;
	padding: 10px 10px 10px 30px;
	background: url(/img/common/main/icon_pagetop.gif) no-repeat left center;
	color: #666666;
	text-decoration: none;
}

.container p.pagetop a:hover {
	text-decoration: underline;
}

/* アイコン */

img.icon {
	margin: 0 5px;
	vertical-align: middle;
}

img.zoom {
	border: none !important;
}


/* box
---------------------------------------------------------- */

.col_box {
	float: left;
}

.col_inner_index {
	margin: 0 20px 3em 20px;
}

.ph {
	margin-bottom: 15px;
	text-align: center;
}

.ph img {
	border: solid 4px #dbdadf;
}

.phn {
	margin-bottom: 15px;
	text-align: center;
}

.cap {
	font-size: 85%;
	margin: 10px;
	text-align: left;
}

.ph + .cap,
.phn + .cap {
	margin: -5px 10px 10px 10px;
}

.color_block {
	background: #f4f2e5;
	padding: 10px 15px;
	margin-bottom: 15px;
}


/* 1列
---------------------------------------------------------- */

.col1_block {
	clear: both;
	margin: 0 20px 3em 20px;
}


/* 写真が右に表示される */
.ph_r_block {
	clear: both;
	margin: 0 20px 2em 20px;
}

.ph_r_block .col_box {
	float: none;
	clear: both;
	margin-bottom: 15px;
}

.ph_r_block .col_inner {
	float: left;
	padding: 0;
	width: 460px;
}

.ph_r_block .ph,
.ph_r_block .phn {
	margin: 0;
	width: 210px;
	float: right;
	
}

/* 写真が左に表示される */
.ph_l_block {
	clear: both;
	margin: 0 20px 2em 20px;
}

.ph_l_block .col_box {
	float: none;
	clear: both;
	margin-bottom: 15px;
}

.ph_l_block .col_inner {
	float: right;
	padding: 0;
	width: 460px;
}

.ph_l_block .ph,
.ph_l_block .phn {
	margin: 0;
	width: 210px;
	float: left;
}


/* 2列
   高さは　module.managerでそろえる
---------------------------------------------------------- */

.col2_block {
	clear: both;
	margin: 0 20px 2em 20px;
}

.col2_block .col_box {
	width: 50%;
}

.col2_block .col_box .col_inner {
	padding: 10px;
	margin: 0 auto;
}


/* カテゴリインデックス */
#category_index .col2_block {
	margin: 20px 0 24px 20px;
}

#category_index .col2_block .col_box {
	margin-bottom: 16px;
}

#category_index .col2_block .col_box .col_inner {
	margin: 0 auto;
	padding: 10px;
	background: #ece9d5 url(../img/common/main/box_bg.jpg) repeat-x;
	border: solid 2px #eceddd;
}

#category_index .col2_block .col_box .col_inner h3 {
	margin: 0 0 10px 0;
	padding: 0 0 0 6px;
	font-size: 123%;
	line-height: 1;
	border: none;
	border-left: solid 4px #2C7855;
	color: #2C7855;
	background: none;
}

#category_index .col2_block .col_box .col_inner h3 a {
	color: #2C7855;
	text-decoration: none;
}

#category_index .col2_block .col_box .col_inner h3 a:hover {
	text-decoration: underline;
}
#category_index .col2_block .col_box .col_inner p {
	margin: 8px 0 0 0;
}

/* 3列
   高さは　module.managerでそろえる
---------------------------------------------------------- */

.col3_block {
	clear: both;
	margin: 0 20px 2em 20px;
}

.col3_block .col_box {
	width: 33.33333333%;
}

.col3_block .col_box .col_inner {
	padding: 10px;
	margin: 0 auto;
}


/* 4列
   高さは　module.managerでそろえる
---------------------------------------------------------- */

.col4_block {
	clear: both;
	margin: 0 20px 2em 20px;
}


.col4_block .col_box {
	width: 25%;
}

.col4_block .col_box .col_inner {
	width: 160px;
	margin: 0 auto;
}


/* table
---------------------------------------------------------- */

#main table {
	border-top: solid 1px #98ad75;
	border-left: solid 1px #98ad75;
	border-spacing: 0;
	border-collapse: collapse;
	margin-bottom: 15px;
}

#main table caption {
	padding: 10px 10px;
	background: #eceddd;
	text-align: left;
	font-weight: bold;
	border: solid 1px #98ad75;
	border-bottom: solid 0 #98ad75;
	color: #364a42;
	font-size: 115%;
}

#main table th {
	border-bottom: solid 1px #98ad75;
	border-right: solid 1px #98ad75;
	padding: 10px 10px;
	background: #eceddd;
	text-align: center;
	color: #364a42;
	font-weight: bold;
}

#main table td {
	border-bottom: solid 1px #98ad75;
	border-right: solid 1px #98ad75;
	padding: 10px 10px;
	text-align: left;
	vertical-align: top;
}

.no_txt {
	background-color:#eee;
}

#main table.line01 {
	border-top: solid 1px #CCCCCC;
	border-left: solid 1px #CCCCCC;
	border-spacing: 0;
	border-collapse: collapse;
	margin-bottom: 15px;
}

#main table.line01 caption {
	padding: 10px 10px;
	background: #f5eeef;
	text-align: left;
	font-weight: bold;
	border-top: solid 1px #CCCCCC;
	border-left: solid 1px #CCCCCC;
	color: #333333;
	font-size: 115%;
}

#main table.line01 th {
	border-bottom: solid 1px #CCCCCC;
	border-right: solid 1px #CCCCCC;
	padding: 10px 10px;
	background: #f5eeef;
	text-align: center;
	vertical-align: top;
	color: #333333;
	font-weight: bold;
}

#main table.line01 td {
	border-bottom: solid 1px #CCCCCC;
	border-right: solid 1px #CCCCCC;
	padding: 10px 10px;
	text-align: left;
	vertical-align: top;
}

/* tdの文字ぞろえ */
#main table.center td {
	text-align: center;
}

#main table.right td {
	text-align: right;
}

#main table.middle td {
	vertical-align:middle!important;
}

/* dl
---------------------------------------------------------- */

/* アイコン中黒の定義リスト */
#main dl.nakaguro {
	margin-bottom: 15px;
}

#main dl.nakaguro dt {
	margin-bottom: 8px;
	padding-left: 20px;
	background: url(/img/common/main/icon_maru.gif) no-repeat left center;
}

#main dl.nakaguro dd {
	margin: 0 0 5px 35px;
}


/* ニュース横並びの定義リストとその周辺 */
#news_top {
	position: relative;
	color: #555555;
	margin: 10px 0 48px 0;
}

#news_top h2 {
	background: url(/img/top/news_title_bg.jpg) repeat-x;
	margin-bottom: 10px;
	width: auto !important;
}

#news_top a:link, #news_top a:visited {
	color: #555555;
	text-decoration: none;
}

#news_top a:hover, #news_top a:active {
	color: #37a476;
	text-decoration: underline;
}

ul.news_tab,
ul.news_tab_ex {
	position: absolute;
	top: 0;
	right: 0;
	width: 637px;
}

ul.news_rss li,
ul.news_tab li,
ul.news_tab_ex li {
	float: left;
}

ul.news_tab li img,
ul.news_tab_ex li img {
	display: block;
}

ul.news_rss {
	position: absolute;
	top: 5px;
	right: 0;
	width: 105px;
}

ul.news_rss li img {
	display: block;
	margin-right: 5px;
}

.pickup_block dl {
	clear: both;
	margin: 0;
	padding: 0;
}

.pickup_block dl dt {
	clear: left;
	float: left;
	width: 12em;
	padding: 8px 0 8px 0;
	margin: 0;
	font-weight: 400;
	font-size: 92.3%;
	color: #666666;
}

.pickup_block dl dt img {
	float: right;
}

.pickup_block dl dd {
	padding: 8px 0 8px 13em;
	margin: 0;
	border-bottom: solid 1px #CCCCCC;
}

.no_icon .pickup_block dl dt {
	width: 7em;
}

.no_icon .pickup_block dl dd {
	padding-left: 8em;
}

/* ul
---------------------------------------------------------- */

/* ノーマル　アイコン中黒 */
#main ul.nakaguro {
	margin-bottom: 15px;
}

#main ul.nakaguro li {
	padding-left: 20px;
	background: url(/img/common/main/icon_maru.gif) no-repeat left 0.5em;
	margin-bottom: 3px;
}

#main ul.nakaguro li ul {
	margin: 5px 0 10px 0;
}

#main ul.nakaguro li ul li {
	padding-left: 15px;
	background: url(/img/common/main/icon_maru_s.gif) no-repeat left 0.5em;
	margin-bottom: 3px;
}

#main dl.nakaguro ul.nakaguro li {
	padding-left: 15px;
	background: url(/img/common/main/icon_maru_s.gif) no-repeat left 0.5em;
	margin-bottom: 3px;
}

#main ul.nakaguro_s {
	margin-bottom: 15px;
}

#main ul.nakaguro_s li {
	padding-left: 20px;
	background: url(/img/common/main/icon_maru_s.gif) no-repeat 2px 0.5em;
	margin-bottom: 3px;
}

/* アイコン中黒 横並び */
#main ul.nakaguro_yoko {
	margin-bottom: 15px;
}

#main ul.nakaguro_yoko li {
	padding: 0 20px 0 20px;
	background: url(/img/common/main/icon_maru.gif) no-repeat left 0.5em;
	display: inline-block;
	*display: inline;
	*zoom: 1;
}


/* 注釈 */
ul.asterisk {
	margin-bottom: 15px;
}

ul.asterisk li {
	text-indent: -1.0em !important;
	margin-left: 1.0em !important;
	padding-left: 0 !important;
	background: none !important;
	margin-bottom: 3px;
}

ul.asterisk_m {
	margin-bottom: 15px;
}

ul.asterisk_m li {
	text-indent: -2.0em !important;
	margin-left: 2.0em !important;
	padding-left: 0 !important;
	background: none !important;
	margin-bottom: 5px;
}

/* ページ内リンクボタン　長さ不定 */
#main ul.link_btn_next,
#main ul.link_btn_prev,
#main ul.link_btn {
	clear: both;
	margin: 0 0 15px 0;
	padding: 0;
	text-align: right;
}

#main ul.link_btn_next li,
#main ul.link_btn_prev li,
#main ul.link_btn li {
	margin: 3px 4px;
	padding: 0;
	white-space: nowrap;
	background: none;
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

#main ul.link_btn_next li a ,
#main ul.link_btn_prev li a ,
#main ul.link_btn li a {
	display:block;
	padding: 8px 10px 8px 25px;
	background: #EEEEEE url(../img/common/main/icon_arrow_linkbox.gif) 10px center no-repeat;
	border: solid 1px #DDDDDD;
	color: #333333;
	text-decoration: none;
}

#main ul.link_btn_next li a:hover, #main ul.link_btn_next li a:active,
#main ul.link_btn_prev li a:hover, #main ul.link_btn_prev li a:active,
#main ul.link_btn li a:hover, #main ul.link_btn li a:active {
	color: #37a476;
	text-decoration: none;
}

/* ページ内リンクボタン　長さ不定　戻る */
#main ul.link_btn_prev li a {
	display:block;
	padding: 8px 10px 8px 25px;
	background: #EEEEEE url(../img/common/main/icon_arrow_linkbox_prev.gif) 10px center no-repeat;
	border: solid 1px #DDDDDD;
}

/* ページ内リンクボタン　長さ不定　次へ */
#main ul.link_btn_next li a {
	display:block;
	padding: 8px 10px 8px 25px;
	background: #EEEEEE url(../img/common/main/icon_arrow_linkbox_next.gif) 10px center no-repeat;
	border: solid 1px #DDDDDD;
}


/* ページ内リンクボタン　3列固定 */
#main ul.link_btn3 {
	clear: both;
	width: 100%;
	margin: 0 0 15px 0 !important;
	padding: 0 !important;
	text-align: left;
}

#main ul.link_btn3 li {
	width: 33.33333333%;
	margin: 0 !important;
	padding: 0 !important;
	float: left;
}

#main ul.link_btn3 li a {
	display:block;
	margin: 3px 5px;
	padding: 8px 10px 8px 25px;
	background: #EEEEEE url(../img/common/main/icon_arrow_linkbox.gif) 10px center no-repeat;
	border: solid 1px #DDDDDD;
}

#main ul.link_btn3 li a:link, .link_btn3 li a:visited {
	color: #333333;
	text-decoration: none;
}

#main ul.link_btn3 li a:hover, .link_btn3 li a:active {
	color: #37a476;
	text-decoration: none;
}



/* ol
---------------------------------------------------------- */

/* ノーマル　数字 */
#main ol {
	margin-bottom: 15px ;
}

#main ol li {
	margin-bottom: 3px;
}

#main ol li ol {
	counter-reset: number;
	margin: 5px 0 10px 3em;
	list-style: none;
}

#main ol li ol li {
	text-indent: -3em;
}

#main ol li ol li:before {
	counter-increment: number;
	content: "（" counter(number) "）";
}

/* 数字の中のul */
#main ol li ul {
	counter-reset: ulnumber;
	margin: 5px 0 10px 0;
}

#main ol li ul li {
	padding-left: 20px;
	background: url(/img/common/main/icon_maru_s.gif) no-repeat 2px 0.5em;
	margin-bottom: 3px;
	text-indent: 0;
}

#main ol li ul li:before {
	counter-increment: ulnumber;
	content: "";
}



/* form
---------------------------------------------------------- */
#main .c_form p {
	margin: 5px 0 0 0;
}

#main .c_form th {
	text-align: left;
}

.err {
	color: #FF0000;
}

.hissu {
	display: inline-block;
	background: #FF3300;
	color: #FFFFFF;
	padding: 1px 5px;
	font-size: 85%;
	font-weight: 400;
	letter-spacing: 0.1em;
	float: right;
}

.txt_xl {
	width: 98%;
}

.txt_l {
	width: 300px;
}

.txt_m {
	width: 210px;
}

.txt_s {
	width: 120px;
}

#main .c_form select,
#main .c_form input[type="text"],
#main .c_form textarea {
	padding: 3px;
	border: solid 1px #CCCCCC;
}

#main .c_form input[type="text"] {
	margin-top: 2px;
	margin-bottom: 2px;
	vertical-align: middle;
}

/* アコーディオン
---------------------------------------------------------- */

.trigger_btn {
	background: url(/img/common/main/plus.jpg) no-repeat 98% center #eceddd !important;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-right: 45px !important;
}
.trigger_btn_active {
	background: url(/img/common/main/minus.jpg) no-repeat 98% center #eceddd !important;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-right: 45px !important;
}

.trigger_btn2 {
	background: url(/img/common/main/plus.jpg) no-repeat 98% center #fff !important;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-right: 45px !important;
}

.trigger_btn2_active {
	background: url(/img/common/main/minus.jpg) no-repeat 98% center #fff !important;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-right: 45px !important;
}

/* 検索結果
---------------------------------------------------------- */
#cse-search-results {
	width: 690px;
	overflow: hidden;
}

#cse-search-results iframe {
	width: 690px;
}


/* ページャー
---------------------------------------------------------- */
ul.pager {
	clear: both !important;
	list-style: none !important;
	text-align: center !important;
	margin: 30px 10px !important;
	border: 0 !important;
	color: #005d3d;
	font-size: 92.3% !important;
}

ul.pager li{
	font-size: 100% !important;
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}

ul.pager li span
{
	display: inline-block !important;
	*display: inline !important;
	margin: 0 5px 5px 0 !important;
	padding: 3px 8px !important;
	border: solid 1px #005d3d;
	vertical-align: middle;
}

ul.pager li a
{
	display: inline-block !important;
	*display: inline !important;
	margin: 0 5px 5px 0 !important;
	padding: 3px 8px !important;
	border: solid 1px #005d3d;
	background: #005d3d;
	color: #FFFFFF;
	text-decoration: none;
	vertical-align: middle;
}

ul.pager li.current {
	display: inline-block !important;
	*display: inline !important;
	margin: 0 5px 5px 0 !important;
	padding: 3px 8px !important;
	border: solid 1px #005d3d;
	vertical-align: middle;
}