@charset "UTF-8";

body {
	min-width: 960px;
	margin: 0 auto;
	color: #3a3a3a;
	font-size: 14px;
	line-height: 150%;
	letter-spacing: 1px;
	font-family: 'メイリオ', Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}

.bold{
	font-weight: bold;
}

.small{
	font-size: 80%;
}

.big{
	font-size: 120%;
}
.clear {
	clear:both;
	visibility:hidden;
}

.right{
	text-align: right;
}

.center{
	text-align: center;
}
.left{
	text-align: left;
}
.right_img{
	float: right;
	margin-left: 20px;
}

.c_img li:nth-child(2n) .right_img{
	float: left;
	margin-right: 20px;
	margin-left: 0px;
}
.c_img li.even .right_img{
	float: left;
	margin-right: 20px;
	margin-left: 0px;
}
.left_img{
	float: left;
	margin-right: 20px;
}
/* 共通
================================================== */

/* ---------- リンク ---------- */

a {
	color: #292929;
	transition: All 0.4s ease;
	text-decoration: none;
}
a img {
	transition: All 0.4s ease;
}
a:hover img {
	opacity: .6;
}

a:hover.over img {
	opacity: 1;
}

/* ---------- テーブル ---------- */

table.def {
	width: 100%;
	font-size: 13px
}
table.def th {
	width: 40%;
	padding: 10px;
	text-align: left;
	vertical-align: middle;
	background: #e5e5e5;
	border: 1px solid #ccc;
}
table.def td {
	padding: 10px;
	border: 1px solid #ddd;
}


/* ---------- リスト ---------- */

ul.def {
	margin: 0 0 15px;
}
ul.def li {
	height: 30px;
	padding: 0 0 0 12px;
	line-height: 35px;
	border-bottom: 1px dotted #cfcfcf;
	background: url(../images/common/icon02.png) left center no-repeat;
	overflow: hidden;
}


/* ---------- バナー・ボタン ---------- */

p.text-more {
	padding: 12px 0 0;
	text-align: right;
}
p.text-more a {
	padding: 0 0 0 12px;
	color: inherit;
	background: url(../images/common/icon02.png) left center no-repeat;
}


/* ---------- ページネーション ---------- */

ul.pagenation {
	margin: 0 0 20px;
	text-align: center;
	font-size: 0;
	letter-spacing: 0;
}
ul.pagenation li {
	width: 30px;
	margin: 0 3px;
	text-align: center;
	line-height: 30px;
	font-size: 13px;
	border: 1px solid #cfcfcf;
	border-radius: 4px;
	vertical-align: top;
	display: inline-block;
}
ul.pagenation li.current {
	color: #fff;
	background: #60b100;
}
ul.pagenation li.dot {
	width: 15px;
	margin: 0 1px;
	border: none;
}
ul.pagenation li a {
	text-decoration: none;
	display: block;
}


/* ---------- パンくずリスト ---------- */

.breadcrumbs {
	height: 25px;
	margin: 0 0 30px;
	line-height: 25px;
	overflow: hidden;
}
.breadcrumbs li {
	display: inline-block;
}
.breadcrumbs a {
	margin: 0 3px 0 0;
	padding: 0 10px 0 0;
	background: url(../images/common/icon01.png) right center no-repeat;
}


/* ---------- ページ内リンク ---------- */

.anchor-links {
	margin: 0 0 30px;
	text-align: center;
	font-size: 0;
	letter-spacing: 0;
}
.anchor-links li {
	width: 30%;
	height: 35px;
	margin: 0 1% 10px;
	line-height: 35px;
	font-size: 13px;
	border: 1px solid #cfcfcf;
	background: linear-gradient(#fff, #e3e3e3);
	display: inline-block;
	vertical-align: top;
	overflow: hidden;
}
.anchor-links a {
	text-decoration: none;
	display: block;
}


/* ---------- クリアフィックス ---------- */

.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}


/* ヘッダー
================================================== */

.site-header {
	width: 100%;
	background: url(../images/common/h_bg.jpg) left center repeat-x;
	height: 116px;
}
.site-header header{
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
h1.seo{
	height: 10px;
	font-size: 10px;
	line-height: 1;
	color: #fff;
	padding: 5px 0 5px;
}
.h-logo {
	width: 230px;
	float: left;
}
.h_content{
	width: 520px;
	float: right;
	overflow: hidden;
	margin-top: 20px;
}
.h_content .h_tel{
	width: 275px;
	float: left;
}
.h_content .h_contact{
	width: 90px;
	float: left;
}
.h_content .site{
	width: 145px;
	float: left;
	padding-left: 10px;
	padding-top: 8px;
}
.h_content .site li{
	padding-left: 15px;
	background: url(../images/common/icon.png) left center no-repeat;

}
.h_content .site li a{
	font-size: 10px;
	color: #fff;
	font-weight: bold;
}
.visual {
	position: relative;
	z-index: 10;
	height: 430px;
}

.main-visual li {
}
.visual {
	text-align: center;
}

.sub-visual{
	background: url(../images/common/sub_vis.jpg) top center repeat-x;
	height: 310px;
}
#gnav_wrap{
	background: url(../images/common/gnav_bg.jpg) left center repeat-x;
	height: 50px;
}
#gnav_wrap ul{
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
#gnav_wrap ul li{
	float: left;
}
#gnav_wrap ul li a:hover img {
	opacity: 1;
}

/* フッター
================================================== */

.site-footer {
	clear: both;
	background: url(../images/common/f_bg.jpg) left center repeat-x;
	height: 106px;
	color: #fff;
}
.f-inner {
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
	padding: 25px 0 22px;
}
.f-inner .f_logo{
	width: 154px;
	float: left;
	margin-right: 12px;
	padding-top: 5px;
}
.f-inner .f_add{
	line-height: 1.5;
	width:  250px;
	font-size: 12px;
	letter-spacing: 0;
	float: left;
	border-right: 1px dashed #264700;
}
/* ---------- グローバルナビ ---------- */

.f-nav {
	padding-left: 12px;
	overflow: hidden;
	line-height: 1.3;
}
.f-nav li {
	font-size: 12px;
	padding: 0;
	margin: 0;
	letter-spacing: 0;
	display: inline;
	padding-right: 12px;

}
.f-nav li a {
	text-decoration: none;
	color: #fff;
}


/* ---------- ホームへリンク・トップへリンク ---------- */

.f-topnav {
	margin: 0 0 1px;
	background: #33B88C;
	overflow: hidden;
}
.f-topnav li {
	width: 50%;
	text-align: center;
	float: left;
}
.f-topnav li a {
	padding: 10px 0;
	display: block;
}


/* ---------- コピーライト ---------- */

.f-copy {
	color: #fff;
	text-align: center;
	display: block;
	font-size: 11px;
}
.f-copy a {
	color: inherit;
	text-decoration: none;
}


/* コンテンツ
================================================== */

.site-body {
	width: 960px;
	margin: 0 auto;
	padding: 30px 0 90px;
}

.main-contents {
}


/* ---------- 記事骨格 ---------- */

.item-box {
	margin: 0 0 60px;
}
.item-text {
	overflow: hidden;
}


/* ---------- 見出し ---------- */

.item-title-h3 {
	color: #3a3a3a;
	font-weight: bold;
	margin: 0 0 30px;
	padding: 0 10px 10px;
	font-size: 22px;
	background: url(../images/common/h3_bg.jpg) bottom center no-repeat;

}
	.item-title-h3 span {
	}

.item-title-h4 {
	margin: 0 0 20px;
	padding: 3px 0 3px 10px;
	font-weight: bold;
	vertical-align: middle;
	color: #3a3a3a;
	font-size: 20px;
	border-left: 8px solid #60b100;
}
	* ~ .item-title-h4 {
		margin-top: 20px;
	}


/* ---------- 記事サムネイル ---------- */

img.thumb-left {
	max-width: 35%;
	height: auto;
	margin: 0 8px 8px 0;
	float: left;
}
img.thumb-right {
	max-width: 35%;
	height: auto;
	margin: 0 0 8px 8px;
	float: right;
}
img.thumb-center {
	max-width: 95%;
	margin: 0 auto 8px;
	display: block;
}
img.photo {
	padding: 2px;
	background: #fff;
	box-shadow: 0 2px 2px rgba(0,0,0,.2);
	box-sizing: border-box;
}


/* ---------- 記事情報 ---------- */

.post-data {
	height: 21px;
	margin: 0 0 15px;
	line-height: 21px;
	font-size: 0;
	letter-spacing: 0;
	overflow: hidden;
}
.post-data li {
	margin: 0 8px 0 0;
	padding: 0 8px 0 0;
	font-size: 12px;
	border-right: 1px dotted #aaa;
	display: inline-block;
}
.post-data .item-date {
	margin: 0;
	display: inline;
}
.item-date {
	margin: 0 0 8px;
	padding: 0 0 0 10px;
	font-size: 13px;
	background: url(../images/common/icon01.png) left center no-repeat;
	display: block;
}


/* ---------- 詳細ページ SNSシェアボタン ---------- */

.sns-sharerbtn-list {
	margin: 8px 0;
	padding: 8px 0;
	text-align: center;
	border-top: 1px solid #cfcfcf;
	border-bottom: 1px solid #cfcfcf;
	background: #f0f0f0;
	overflow: hidden;
	clear: both;
}
.sns-sharerbtn-list li {
	margin: 0 4px;
	vertical-align: top;
	display: inline-block;
}


/* ---------- 詳細ページ 前後の記事へのリンク ---------- */

.paginated-link {
	margin: 20px 5px 0;
	overflow: hidden;
}
.paginated-link li {
	width: 48%;
	padding: 0 5px;
	text-align: center;
	font-size: 13px;
	border: 1px solid #cfcfcf;
	border-radius: 4px;
	background: #f0f0f0;
	box-sizing: border-box;
}
.paginated-link li.prev-link {
	float: left;
}
.paginated-link li.next-link {
	float: right;
}
.paginated-link li a {
	height: 35px;
	line-height: 35px;
	text-decoration: none;
	display: block;
	overflow: hidden;
}


/* サイドバー
================================================== */


/* トップページ
================================================== */
.greeting{
	background: url(../images/top/greeting_bg.jpg) top center no-repeat;
	height: 400px;
	padding-top: 86px;
}
.greeting .greeting_text{
	padding: 94px 87px 0 13px;
	width: 860px;
	margin: 0 auto;
	background: url(../images/top/greeting.png) top center no-repeat;
	height: 236px;
	line-height: 2;
}
.greeting .greeting_text p{
	color: #4a4a4a;
}
.topic{
	background: url(../images/top/topic_bg.jpg) top center no-repeat;
	height: 631px;
	padding-top: 56px;
	font-size: 12px;
}
.topic .topic_list{
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
}
.topic h2{
	text-align: center;
}
.topic p{
	padding: 20px 0 15px;
}
.topic .btn{
	text-align: right;
}
.topic .topic01{
	width: 290px;
	float: left;
	margin-right: 45px;
}
.bn{
	background: url(../images/top/bn_bg.jpg) top center no-repeat;
	height: 268px;
}
.bn ul{
	padding-top: 75px;
	overflow: hidden;
	width: 960px;
	margin: 0 auto;
}
.bn ul li{
	width: 306px;
	float: left;
	margin-right: 21px;
}
.bn ul li.end{
	margin-right: 0;
}
.info{
	background: url(../images/top/news_bg.jpg) top center repeat-x;
	height: 492px;
}
.info .news_content{
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
	padding-top: 70px;
}
.news_content .blog{
	width: 450px;
	float: left;
}
.news_content .blog dl{
	border-left: 8px solid #60b100;
	margin: 20px 0;
	padding-left: 15px;
}
.news_content .blog dt{
	color: #fcb461;
	font-weight: bold;
	font-size: 13px;
}
.news_content .fb{
	width: 458px;
	border: 1px solid #60b100;
	float: right;
}
/* ---------- 新着情報 ---------- */

.news-list li {
	height: 35px;
	line-height: 35px;
	border-bottom: 1px dotted #cfcfcf;
	overflow: hidden;
}
.news-list li span {
	margin: 0 8px 0 0;
}


/* 下層ページ
================================================== */

/* ---------- サイトマップ ---------- */

.sitemap-list a {
	padding: 0 0 0 15px;
	line-height: 40px;
	text-decoration: none;
	border-bottom: 1px dotted #ccc;
	background: url(../images/common/icon01.png) 5px center no-repeat;
	display: block;
}
.sitemap-list a:hover {
	background-color: #efefef;
}


/* ---------- よくある質問 ---------- */

dl.faq-list dt {
	padding: 15px 0 15px 40px;
	color: #60b100;
	font-size: 16px;
	font-weight: bold;
	background: url(../images/faq/q.png) left center no-repeat;
	border-bottom: 2px solid #666;
}
dl.faq-list dd {
	margin: 0 0 20px;
	padding: 15px 0 15px 40px;
	background: url(../images/faq/a.png) left center no-repeat;
}


/* ---------- ギャラリー ---------- */

ul.gallery {
	font-size: 0;
	letter-spacing: 0;
}
ul.gallery li {
	width: 23%;
	margin: 0 1% 8px;
	font-size: 13px;
	vertical-align: top;
	display: inline-block;
}


/* ---------- お問い合わせ ---------- */

.input-big,
.input-middle,
.input-mini {
	padding: 5px;
	box-sizing: border-box;
}
.input-big {
	width: 100%;
}
.input-middle {
	width: 60%;
}
.input-mini {
	width: 60px;
}

/* 必須マーク */
.required-mark {
	color: #f00;
	font-size: 12px;
}

/* 未記入エラー文 */
.error-text {
	margin: 0 0 5px;
	color: #f00;
}

/* 確認、バック、送信ボタン */
.contact-submits {
	padding: 30px 0 0;
	text-align: center;
}
.contact-submits input {
	margin: 0 20px;
	padding: 10px 20px;
}