@charset "UTF-8";


/*--------------------------------------------------------
1、サイト全体の背景設定
------------------------------------------------------*/

#container{ background-color: #fff; }


/*--------------------------------------------------------
2、サイト全体の共通設定
-------------------------------------------------------*/

body{ color: #333; }

/*●リンク文字*/
a{ text-decoration: underline; }

a:link,
a:visited{ color: #257c2f; }
a:hover,
a:active{ color: #e53765; }


/*--------------------------------------------------------
3、エリアの設定
--------------------------------------------------------*/

#container{
	position: relative;
	padding-top: 23px;
}


/*--------------------------------------------------------
トップ
--------------------------------------------------------*/

#top{ 
	position: absolute;
	top: 0;
	background-color: #257c2f;
	border-bottom: 1px solid #ccc;
	font-size: 1.2em;
	color: #fff;
}

#top-in{
	position: relative;
	padding: 2px 0;
}

#top a:link,
#top a:visited{ color: #fff; }
#top a:hover,
#top a:active{ color: #137ca0; }

#top-menu{ text-align: right; }

#top-menu li{
	display: inline;
	margin-left: 1em;
	list-style: none;
}

#top-menu li a{
	padding-left: 15px;
	background: url(../images/icon/icon-arrow_r.png) left center no-repeat;
}


/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/

#header{
	font-size: 1.4em;
}

#header-in{ padding: 1em 0 0em; }

/*●ヘッダーロゴ（メインタイトル）*/
#header #header-title{
	float: left;
	width: 59.5%; /*ロゴ（メインタイトル）下の<h1>の1行の幅はこちらのwidthの値を変更*/
}

#header .header-logo{
	margin-bottom: 0.2em;
	font-size: 2.25em;
	font-weight: bold;
}


/*●ヘッダーロゴテキスト*/
.header-logo a{ text-decoration: none; }

.header-logo a:link,
.header-logo a:visited{ color: #257c2f; }
.header-logo a:hover,
.header-logo a:active{ color: #e53765; }


/*●ヘッダーテキスト・右上の文章*/
#header-in #header-text{
	float: right;
	width: 40%; /*・1行の幅はwidthの値を変更*/
	color: #333;
}

#header h1{
	margin-bottom: 1em;
	font-size: 1.167em;
}


/*--------------------------------------------------------
コンテンツ全体
--------------------------------------------------------*/

#main-in{ padding-top: 1.5em; }


/*●メイン画像*/
#main-image{
	padding-top: 1.5em;
}

#main-image-in{
	position: relative;
	padding-bottom: 1.5em;
}

#main-image img{
	width: 100%;
	height: auto;
}

#main-image .catch-copy{
	position: absolute;
	top: 1em;
	left: 1em;
	color: #036;
	font-size: 3em;
	text-shadow: #fff 1px 1px 3px;
}


/*●パン屑ナビ*/
#breadcrumbs{
	clear: both;
	margin-bottom: 1.5em;
	font-size: 1.2em;
}

#breadcrumbs li{
	display: inline;
	margin-right: 0.5em;
	line-height: 1.8;
	text-align: right;
	list-style: none;
}

#breadcrumbs li a{
	padding-right: 15px;
	background: url(../images/icon/icon-brc.gif) center right no-repeat;
}


/*--------------------------------------------------------
メインコンテンツ（本文）
--------------------------------------------------------*/

#main-contents{ font-size: 1.6em; }

#main-contents .contents{
	margin-bottom: 3.5em;
	padding: 0 10px;
}


/*●H2タグ*/
#main-contents h2{
	margin: 0 0 1.5em;
	padding: 0.5em 1em;
	border-bottom: 2px solid #257c2f ;
	background: url(../images/title/bg-conts-h.gif) left top repeat-x #fff;
	font-size: 1.286em;
	font-weight: bold;
}

#main-contents h2 a:link,
#main-contents h2 a:visited{ color: #333; }

#main-contents h2 a:hover,
#main-contents h2 a:active{ color: #9c3; }

#main-contents h2.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}


/*●H3タグ*/
#main-contents h3{
	margin: 0 0 1.5em;
	padding: 0.5em;
	border-left: 8px solid #257c2f;
	background-color: #eff0ef;
	font-size: 1.143em;
	font-weight: bold;
}

#main-contents h3 a:link,
#main-contents h3 a:visited{ color: #333; }

#main-contents h3 a:hover,
#main-contents h3 a:active{ color: #9c3; }

#main-contents h3.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}


/*●H4タグ*/
#main-contents h4{
	margin: 0 0 1.5em;
	padding: 0.8em;
	border: 1px solid #8e8e8e;
	font-weight: bold;
}

#main-contents h4 a:link,
#main-contents h4 a:visited{ color: #333; }

#main-contents h4 a:hover,
#main-contents h4 a:active{ color: #9c3; }

#main-contents h4.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}


/*●H5タグ*/
#main-contents h5{
	margin: 0 0 1.5em;
	padding: 0 0.8em 0.5em;
	border-bottom: 2px solid #414141;
	font-weight: bold;
}

#main-contents h5.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}

#main-contents h5 a:link,
#main-contents h5 a:visited{ color: #333; }

#main-contents h5 a:hover,
#main-contents h5 a:active{ color: #9c3; }


/*●段落タグ*/
#main-contents p{ margin-bottom: 1.5em; }


/*●リストタグ*/
#main-contents ul,
#main-contents ol{
	margin: 0 0.8em 1.5em 1.7em;
	padding: 0;
}

#main-contents li{
	margin-bottom: 0.5em;
	line-height: 1.5em;
}


/*●引用タグ*/
#main-contents q{
	margin: 0 2px;
	padding: 0 8px;
	background: #efefef;
}

#main-contents blockquote{
	overflow: auto;
	margin: 0 1em 1.5em;
	padding: 1em;
	border: 3px solid #ddd;
	background: #efefef;
	color: #444;
}


/*●テーブルタグ*/
#main-contents table{
	margin-bottom: 1.5em;
	padding: 0;
	border-top: 1px solid #959595;
	border-left: 1px solid #959595;
}

/*「table」の1行目に「colspan」を利用する場合は「auto」を指定する*/
/*#main-contents table{ table-layout: auto; }*/

#main-contents th,
#main-contents td{
	padding: 0.5em;
	border-right: 1px solid #959595;
	border-bottom: 1px solid #959595;
}

#main-contents th{
	background-color: #f0f0f0;
	font-weight: bold;
	text-align: left;
}


/*●テーブルタグ スタイル01*/
#main-contents table.table-style01 th,
#main-contents table.table-style01 td{
	text-align: left;
	vertical-align: top;
}


/*●最新情報（リストタグ）*/
#main-contents ul.news{
	margin: 0 0 3.5em;
	padding: 0;
	padding-bottom: 0;
}

#main-contents ul.news li{
	margin-bottom: 1em;
	padding: 0 1em 1em;
	border-bottom: 1px dotted #414141;
	line-height: 1.4em;
	list-style: none;
}


/*●最新情報（定義タグ）*/
#main-contents dl.news{
	margin: 0;
	margin-bottom: 3.5em;
	padding: 0;
}

#main-contents dl.news dt{
	float: left;
	width: 9em;
	margin: 0;
	padding: 0;
	padding-left: 1em;
}

/*最新情報のアイコン設定*/
#main-contents dl.news dd.cat{
	float: left;
	overflow: hidden;
	width: 6em;
	height: 1.5em;
	padding: 0.1em 0.3em 0;
	border-bottom: none;
	background: #257c2f ;
	color: #fff;
	font-size: 0.858em;
	text-align: center;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}

#main-contents dl.news dd{
	margin: 0 0 10px 0;
	padding: 0 1em 0.8em 16.5em;
	border-bottom: 1px dotted #414141;
}

/*●最新情報2（定義タグ）*/
#main-contents dl.news02{
	margin: 0;
	margin-bottom: 3.5em;
	padding: 0;
}

#main-contents dl.news02 dt{
	display: block;
	margin: 0 0 0.5em 0;
	padding: 0;
	padding-left: 1em;
	font-weight: bold;
}

#main-contents dl.news02 dd{
	margin: 0 0 0.5em 0;
	padding: 0 1em 0.8em 1em;
	border-bottom: 1px dotted #414141;
}

#main-contents dl.news02 dd.cat{
	margin: 0;
	padding: 0 1em 0.5em 1em;
	border: 0;
}

#main-contents dl.news02 dd.cat ul{
	margin: 0;
	padding: 0;
	/zoom : 1;
}

#main-contents dl.news02 dd.cat ul:after{ content : ''; display : block; clear : both; height:0; }

#main-contents dl.news02 dd.cat li{
	clear: none;
	overflow: hidden;
	float: left;
	height: 1.5em;
	margin-right: 0.5em;
	padding: 0.1em 0.7em 0;
	background: #257c2f ;
	color: #fff;
	font-size: 0.858em;
	text-align: center;
}

/*カテゴリの文字数が多い場合はコメントアウトを解除*/
/*#main-contents dl.news dd.cat{
	clear: none;
	width: auto;
}

#main-contents dl.news dd{
	clear: both;
	padding: 0 1em 0.8em 1em;
}*/

#main-contents dl.news dd.cat,
#main-contents dl.news02 dd.cat{ font-weight: bold; }
#main-contents dl.news dd.cat.color01,
#main-contents dl.news02 dd.cat .color01{ background: #68d0ef; }
#main-contents dl.news dd.cat.color02,
#main-contents dl.news02 dd.cat .color02{ background: #f8b551; }
#main-contents dl.news dd.cat.color03,
#main-contents dl.news02 dd.cat .color03{ background: #b3d465; }
#main-contents dl.news dd.cat.color04,
#main-contents dl.news02 dd.cat .color04{ background: #c490bf; }
#main-contents dl.news dd.cat.color05,
#main-contents dl.news02 dd.cat .color05{ background: #ff9da6; }
#main-contents dl.news dd.cat.color06,
#main-contents dl.news02 dd.cat .color06{ background: #b5b5b5; }


/*●定義タグ スタイル01*/
#main-contents dl.dl-style01{
	margin: 0 0 3.5em;
	padding: 0;
}

#main-contents dl.dl-style01 dt{
	float: left;
	width: 9em;
	margin: 0;
	padding: 0 0 0 1em;
}

#main-contents dl.dl-style01 dd{
	margin: 0 0 10px 0;
	padding: 0 1em 0.8em 10em;
	border-bottom: 1px dotted #414141;
}


/*●定義タグ スタイル02*/
#main-contents  dl.dl-style02{
	margin-bottom: 1.2em;
	padding: 0;
	border: 1px solid #777;
	border-top: 0;
	background-color: #ddd;
}

#main-contents dl.dl-style02 dt{
	margin: 0;
	padding: 0.5em;
	border-top: 1px solid #777;
	border-bottom: 1px solid #777;
	font-weight: bold;
}

#main-contents dl.dl-style02 dd{
	margin: 0;
	padding: 0.8em 1.0em;
	background-color: #fff;
}


/*●チェックリスト（リストタグ）*/
#main-contents ul.checklist{
	margin: 0 0 1.5em;
	padding: 1em;
	padding-bottom: 0;
	border: 1px solid #414141;
}

#main-contents ul.checklist li{
	margin-bottom: 1.5em;
	padding-top: 5px;
	padding-left: 24px;
	background: url(../images/icon/icon-check01-red.png) left top no-repeat;
	list-style-type: none;
}


/*●戻る＆進むリンク*/
.link-next,
.link-back,
.link-next02,
.link-back02{ clear: both; }

.link-next,
.link-next02{ text-align: right; }

.link-back,
.link-back02{ text-align: left; }

.link-next a{
	padding: 3px 0 3px 15px;
	background: url(../images/icon/icon-arrow_r_gray.png) 0 7px no-repeat;
}
.link-back a{
	padding: 3px 0 3px 15px;
	background: url(../images/icon/icon-arrow_l_gray.png) 0 7px no-repeat;
}

link-next02 a{
	padding: 3px 0 3px 15px;
	background: url(../images/icon/icon-arrow_r_green.png) 0 6px no-repeat;
}
.link-back02 a{
	padding: 3px 0 3px 15px;
	background: url(../images/icon/icon-arrow_l_green.png) 0 6px no-repeat;
}


/*●段組み*/
.box-wrap .box-l{
	float: left;
	width: 48%;
	margin: 0 0 1.5em;
	border: 1px solid #aaa; /*boxの枠線の指示*/
}

.box-wrap .box-r{
	float: right;
	width: 48%;
	margin: 0 0 1.5em;
	border: 1px solid #aaa;
}

#main-contents .box-wrap .title{
	margin-bottom: 1.5em;
	background-color: #999; /*boxのタイトルの背景色*/
}

#main-contents .box-wrap .title p{
	margin: 0 10px;
	padding: 5px 0;
	color: #fff;
	font-weight: bold;
}


/*●ランキング（リストタグ）*/
#main-contents .box-wrap .ranking{
	margin: 0 0 15px;
}

#main-contents .ranking li{
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #aaa; /*区切り線の指示*/
	background: none;
	list-style: none;
}

#main-contents .ranking li.end{
	padding-bottom: 0;
	border-bottom: none;
}

#main-contents .ranking p{ margin: 0 0 10px; }


/*●ページネーション スタイル01*/
#main-contents .cont-menu01{
	position: relative;
	overflow: hidden;
	width: 100%;
}

#main-contents .cont-menu01 ul{
	position: relative;
	left: 50%;
	float: left;
	margin-left: 10px;
}

#main-contents .cont-menu01 li{
	position: relative;
	left: -50%;
	float: left;
	margin-right: 10px;
	list-style: none;
}

#main-contents .cont-menu01 li:last-child{ margin-right: 0; }

#main-contents .cont-menu01 li.cur{
	padding: 3px 10px;
	border: 1px solid #ccc;
	background-color: #959595;
	color: #fff;
	font-weight: bold;
}

#main-contents .cont-menu01 li a{
	display: block;
	padding: 3px 10px;
	border: 1px solid #ccc;
}

#main-contents .cont-menu01 li a:link,
#main-contents .cont-menu01 li a:visited{ background-color: transparent; }

#main-contents .cont-menu01 li a:hover,
#main-contents .cont-menu01 li a:active{
	background-color: #959595;
	color: #fff;
}

#main-contents .text-field{ width: 90%; }


/*●ページネーション スタイル02*/
#main-contents .cont-menu02{
	position: relative;
	overflow: hidden;
	width: 100%;
}

#main-contents .cont-menu02 ul{
	overflow: hidden;
	width: 100%;
	margin: 0;
	padding: 0;
}

#main-contents .cont-menu02 li{
	max-width: 50%;
	list-style: none;
}

* html #main-contents .cont-menu02 li{ white-space: nowrap; } /* IE6 */

#main-contents .cont-menu02 li.prev{ float: left; }

#main-contents .cont-menu02 li.next{ float: right; }

#main-contents .cont-menu02 li a{
	display: block;
	padding: 3px 10px;
	border: 1px solid #ccc;
}

#main-contents .cont-menu02 li a:link,
#main-contents .cont-menu02 li a:visited{ background-color: transparent; }

#main-contents .cont-menu02 li a:hover,
#main-contents .cont-menu02 li a:active{
	background-color: #959595;
	color: #fff;
}


/*●サイトマップ*/
#main-contents .sitemap li{ list-style: none; }

#main-contents .sitemap li a{
	display: block;
	padding: 3px 0 3px 20px;
	background: url(../images/icon/icon-arrow_r_gray.png) 0 6px no-repeat;
}

#main-contents .sitemap ul{ margin-top: 1em; }

#main-contents .sitemap li li a{
	padding: 0 0 0 15px;
	border-left: none;
	background: url(../images/icon/icon-menu02.png) 0 6px no-repeat;
}



/*--------------------------------------------------------
フッター
--------------------------------------------------------*/

#footer{
	clear: both;
	padding-top: 30px;
	padding-bottom: 10px;
	background: #f3fbf4; /*フッター全体の背景色を指定*/
	font-size: 1.2em;
}

#footer a:link,
#footer a:visited{ color: #257c2f; }
#footer a:hover,
#footer a:active{ color: #e53765; }

#footer h3{
	margin-bottom: 1em;
	padding: 0.5em 1em;
	background-color: #fff;
	color: #333;
	font-weight: bold;
	border-radius: 14px;
	-webkit-border-radius: 14px;
	-moz-border-radius: 14px;
}

#footer .area01 h3{ background-color: #fff ; }

#footer-in li{ list-style: none; }

#footer .area01{
	float: left;
	width: 49%;
	padding-bottom: 20px;
}

#footer .area02{
	float: right;
	width: 50%;
	padding-bottom: 20px;
}

/*●アクセス情報*/
#footer .access{ padding: 0 1em; }

#footer .access p{ margin-bottom: 1em; }

p.accessmap{
	padding: 0px 0 3px;
	padding-left: 15px;
	background: url(../images/icon/icon-arrow02.png) left 3px no-repeat;
}


/*●フッターメニュー*/
#footer .footer-menu{
	overflow: hidden;
	width: 100%;
	padding: 0;
}

#footer .footer-menu ul{
	float: left;
	width: 92%;
	margin-right: 5%;
	padding: 1%;
}

#footer .footer-menu ul ul{
	float: none;
	width: auto;
	margin-top: 1em;
	margin-right: 0;
}

.footer-menu li{
	margin-bottom: 5px;
	padding: 0px 0 3px;
	padding-left: 15px;
	background: url(../images/icon/icon-arrow02.png) left 3px no-repeat;
}

.footer-menu li li{
	padding-left: 15px;
	padding-top: 0;
	background: url(../images/icon/icon-arrow01.png) left 4px no-repeat;
}


/*●フッターバナー*/
#footer-banner{
	clear: both;
	padding: 20px 0;
	border-top: 1px solid #ccc;
}

#footer-banner li{
	display: inline;
	list-style: none;
}


/*●コピーライト*/
.copyright{
	padding: 15px 0;
	background: #257c2f;
	font-size: 1.2em;
	text-align: center;
	color: #fff;
}


/*--------------------------------------------------------
ページトップ
--------------------------------------------------------*/

.page-top{
	position: fixed;
	right: 20px;
	bottom: 0;
	z-index: 99;
	width: 185px;
	color: #fff;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.0;
	text-align: left;
}

* html .page-top{ display: none; }

.page-top a{
	display: block;
	padding: 20px 20px 15px 37px;
	border: 3px solid #fff;
	border-bottom: 0;
	text-decoration: none;
	border-top-right-radius: 30px;
	border-top-left-radius: 30px;
	-webkit-border-top-right-radius: 30px;
	-webkit-border-top-left-radius: 30px;
	-moz-border-radius-topright: 30px;
	-moz-border-radius-topleft: 30px;
}

.page-top a:link,
.page-top a:visited{
	background: url(../images/common/bg-pagetop.png) 15px 21px no-repeat #257c2f;
	color: #fff;
}

.page-top a:hover,
.page-top a:active{
	background: url(../images/common/bg-pagetop.png) 15px 21px no-repeat #59493f;
	color: #fff;
}


/*------------------------------------------------------------
floatの回り込みを解除
-------------------------------------------------------------*/

#top-in:after,
#header-in:after,
#global-nav-in #menu:after,
#main-in:after,
#main-and-sub:after,
.contents:after,
#main-contents dl.dl-style01:after,
.box-wrap:after,
dl.search-box:after,
#footer-in:after,
#main-contents .sb:after,
.contact:after,
#main-contents .cont-menu01:after,
#main-contents .cont-menu02:after,
.clearfix:after{ content : ''; display : block; clear : both; height:0; }

#top-in,
#header-in,
#global-nav-in #menu,
#main-in,
#main-and-sub,
.contents,
#main-contents dl.dl-style01,
.box-wrap,
dl.search-box,
#footer-in,
#main-contents .sb,
.contact,
#main-contents .cont-menu01,
#main-contents .cont-menu02,
.clearfix{ /zoom : 1; }


/*------------------------------------------------------------
追加
-------------------------------------------------------------*/

/*●クリアテキスト*/
.clear{
	display: none;
}