@charset "utf-8";

/*ここでは
	ページのエリア分け
	などを記述します
*/

body{
	font-size: 17px;
	font-family: "ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	letter-spacing: 1px;
	}
p{ font-size: 17px;}
a{
	text-decoration: none;
	color: #006cb2;
	}
a:hover{
	text-decoration: underline;
	}
/*---h系---*/
h1{ font-size: 24px;}

h2{ font-size: 20px;}

h3{ font-size: 18px;}

h4{ font-size: 16px;}

h5{ font-size: 14px;}

.comment{
	padding: 0 0 0 1em !important;
	text-indent: -1em;
	}
.comment2{
	padding: 0 0 0 2em !important;
	text-indent: -2em;
	}
.comment3{
	padding: 0 0 0 3em !important;
	text-indent: -3em;
	}
.comment35{
	padding: 0 0 0 3.5em !important;
	text-indent: -3.5em;
	}
.comment4{
	padding: 0 0 0 4em !important;
	text-indent: -4em;
	}
.mincho{ font-family: "Sawarabi Mincho","游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif !important;}
.wf-sawarabimincho { font-family: "Sawarabi Mincho"; }
.marugo{ font-family: "ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","Rounded Mplus 1c","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;}

@media screen and (max-width: 1280px) {
	body{font-size: 16px;}
	p{ font-size: 16px;}
}
@media screen and (max-width: 990px) {
	body{font-size: 15px;}
	p{ font-size: 15px;}
}

.pdf{
	padding-left: 40px;
	background: url(../img/icon/ico_pdf.gif) no-repeat;
	display: block;
	}
.link_blank{
	padding-right: 20px;
	background: url(../img/icon/ico_blank.gif) no-repeat right;
	display: block;
	}


.link_more{
	display: inline-block;
	background: #FFFFFF;
	border: 2px solid #006cb2;
	padding: 0.4em 1.5em 0.4em 1.5em;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	float: right;
	margin-top: 15px;
	}
.link_more:hover{
	text-decoration: none;
	background: #006cb2;
	color: #FFFFFF;
	}
.link_more span{
	display: block;
	background: url(../img/icon/more.png) no-repeat left center;
	padding-left: 1.5em;
	font-size: 14px;
	font-weight: bold;
	}
.link_more:hover span{
	background: url(../img/icon/more_ov.png) no-repeat left center;
	}
.link_more::after { clear: both; content: " "; display: block;}


.link_kadomaru{
	display: inline-block;
	background: #FFFFFF;
	border: 1px solid #006cb2;
	padding: 0.4em 1.5em 0.4em 1.5em;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	margin-top: 15px;
	}
.link_kadomaru:hover{
	text-decoration: none;
	background: #006cb2;
	color: #FFFFFF;
	}
.link_kadomaru span.more{
	display: block;
	background: url(../img/icon/more.png) no-repeat left center;
	padding-left: 1.5em;
	font-size: 15px;
	}
.link_kadomaru:hover span.more{
	background: url(../img/icon/more_ov.png) no-repeat left center;
	}
.link_kadomaru::after { clear: both; content: " "; display: block;}
.link_kadomaru span.bottom{
	display: block;
	background: url(../img/icon/bottom.png) no-repeat left center;
	padding-left: 1.5em;
	font-size: 15px;
	}
.link_kadomaru:hover span.bottom{
	background: url(../img/icon/bottom_ov.png) no-repeat left center;
	}

.link_kadomaru_hover{
	display: inline-block;
	border: 1px solid #006cb2;
	padding: 0.4em 1.5em 0.4em 1.5em;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	margin-top: 15px;
	text-decoration: none;
	background: #006cb2;
	color: #FFFFFF;
	}
.link_kadomaru_hover::after { clear: both; content: " "; display: block;}
.link_kadomaru_hover .bottom{
	background: url(../img/icon/bottom_ov.png) no-repeat left center;
	padding-left: 1.5em;
	font-size: 15px;
	}

@media screen and (max-width: 990px) {
	.link_kadomaru,
	.link_kadomaru_hover{
	padding: 0.2em 0.5em 0.2em 0.5em;
	line-height: 1.2em;
	}
}
@media screen and (max-width: 681px) {
	.link_kadomaru_hover .bottom{
		font-size: 14px;
		}
	.link_kadomaru,
	.link_kadomaru_hover{
	padding: 7px 0.5em 7px 0.5em;
	font-size: 14px;
	margin-top: 7px;
	}
	
/*---下記に記述---*/
}



/*---/h系---*/

.h2_g_border{
	border-bottom: 3px solid #96e6a1;
	font-size: 22px;
	color: #22691c;
	font-weight: 500;
	background: url(../img/icon/h2_bg.gif) no-repeat left bottom;
	background-size: 5px 100%;
	padding-left: 0.7em;
	padding-bottom: 0.4em;
	margin: 1.3em 0 0.9em;
	line-height: 1.4em;
	}
.h3_g_square{
	background: url(../img/icon/g_square.png) no-repeat left center / 23px auto;
	font-size: 24px;
	padding-left: 1.4em;
	font-weight: 500;
	letter-spacing: 2px;
	margin-bottom: 0.7em;
	}
.h4_g{
	font-size: 19px;
	color: #22691c;
	font-weight: 600;
	background: url(../img/icon/g_square2.png) no-repeat left top 4px;
	background-size: 22px auto;
	padding-left: 1.6em;
	padding-bottom: 0.2em;
	margin: 1.3em 0 0.8em;
	border-bottom: 1px dotted #22691c;
	}


@media screen and (max-width: 1280px) {
	.h3_g_square{
		font-size: 22px;
		}
	.h2_g_border{
		font-size: 21px;
		}
}
/*---スマホ用h系---*/
@media screen and (max-width: 681px) {
	.h3_g_square{
		margin-bottom: 0.3em;
		font-size: 19px;
		}
	.h2_g_border{
		font-size: 18px;
		line-height: 1.3em;
		}
/*---下記に記述---*/
}
/*---/スマホ用h系---*/

.t_right{
	text-align: right;
	}
.t_left{
	text-align: left;
	}
.t_center{
	text-align: center;}

.left {
	float: left;
	}
.right {
	float: right;}

.pcnone{
	display: none;
	}
	
.clearfix::after{ clear: both; content: " "; display: block;}
.wrap{
	width: 100%;
	}
.wrap::after{ clear: both; content: " "; display: block;}
header,
footer{
	width: 100%;
	margin: 0 auto;
	}
header::after{ clear: both; content: " "; display: block;}


header:after{
	height: 5px;
	background: linear-gradient(to right, #d4fc79 0%,#96e6a1 100%);
	}
header .logo{
	padding: 25px 0;
	margin: 0 auto;
	max-width: 430px;
	display: block;
	}
.logo img{
	max-width: 100%;
	}
header a:hover img {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)"; /* IE 8 */
	}
header a:hover img {
	-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
	}

.smtmenu_btn{
	float: right;
	width: 15%;
	/*height: 100%;*/
	background: linear-gradient(to right, #56c55e 0%,#6fd14f 100%);
	position: absolute;
	top:0;
	right: 0;
	display: none;
	}
.smtmenu_btn span{
	background: url(../img/icon/smtmenu_btn.png) no-repeat center center;
	background-size: contain;
	display: block;
	width: 100%;
	height: 100%;
	}
.smtmenu_btn:hover{
	cursor: pointer;
	}
.open span{
	background: url(../img/icon/close.png) no-repeat center center;
	background-size: contain;
	display: block;
	width: 100%;
	height: 100%;
	}


header ul{
	max-width: 1280px;
	margin: 0 auto;
	}
header ul::after { clear: both; content: " "; display: block;}
header ul li{
	width: 180px;
	float: left;
	display: block;
	}
header ul li a{
	/*display: table;*/
	/*height: 70px;*/
	color: #000000;
	width: 100%;
	padding: 20px 0;
	display: block;
	text-align: center;
	}
header ul li a:hover{
	text-decoration: none;
	background: #f6f6f6; 
	}
header ul li a span{
	border-left: 1px dotted #61c631;
	/*display: table-cell;
	vertical-align: middle;*/
	display: block;
	}
header ul li:first-child a span{
	border-left: none;
	}

.g_menu{ z-index: 5;}
.g_menu > ul li{
	position: relative;
	}
.g_menu ul.sub{
	position: absolute;
	width: 100%;
	/*display: none;*/
	padding-top: 9px;
	background: url(../img/icon/t_arrow.png) no-repeat top center;
	z-index: 3;
	top: 61px;
	}
.g_menu ul.sub li{
	background: linear-gradient(to right, #7de34c 0%,#abf73b 100%);
	border-top: none;
	display: block;
	width: 100%;
	}
/*.g_menu ul.sub li:first-child{
	border-top: 2px solid #d5a02e;
	}*/
.g_menu ul.sub li a{
	display: block;
	padding: 1px;
	width: auto;
	}
.g_menu ul.sub li a:hover{
	display: block;
	padding: 1px;
	width: auto;
	background: none;
	}
.g_menu ul.sub li a span{
	padding: 15px 0;
	background: #FFFFFF;
	border: none;
	}
.g_menu ul.sub li a span:hover{
	border: none;
	background: #f6f6f6;
	}
.g_menu ul.sub li small{
	font-size: 16px;
	}
	
@media screen and (max-width: 1280px) {
	header ul{
		max-width: 100%;
	}
	header ul li{
		width: 16.6%;
		line-height: 1.25em;
	}
	.g_menu ul.sub{
		top: 55px;
		}
	.g_menu ul.sub li a span{
		font-size: 14px;
		}
}
@media screen and (max-width: 1024px) {
	.g_menu ul.sub{
		top: 75px;
		}
}
@media screen and (max-width: 990px) {
	header ul li a{ font-size: 15px;}
	.g_menu ul.sub{
		top: 73px;
		}
	.g_menu ul.sub,
	.g_menu ul.sub li a{ display: none !important;}
	.g_menu ul.sub li,
	header ul li a{ width: auto !important;}
}
@media screen and (max-width: 681px) {
	header{
		position: relative;
		margin-top: 0;}
	header .logo{
	max-width: 75%;
	padding: 4.5% 12% 4.5% 0;
	}
	.g_menu{
		background: #FFFFFF;
		padding: 2% 5% 3%;
		position: absolute;
		width: 90%;
		margin-top: 5px;
		display: none;
		}
	header ul{
		width: 100%;
		margin: 0 auto;
		}
	header ul li{
		float: none;
		display: block;
		width: auto;
		border-bottom: 1px dotted #61c631;
		}
	header ul li a{
		display: block;
		/*height: 30px;*/
		background: url(../img/icon/more.png) no-repeat left 1% center;
		padding: 10px 0 10px 1.7em;
		height: auto;
		}
	header ul li a:hover{
		background: #f6f6f6 url(../img/icon/more.png) no-repeat left 1% center; }
	header ul li a span{
		text-align: left;
		border: none;
		}
	.g_menu ul.sub{
		display: none;
		}
	
	.smtmenu_btn{
		display: block;
		}

}



footer{
	width: 100%;
	}
footer::before{
	height: 4px;
	background: linear-gradient(to right, #99e79f 0%,#b3f08f 100%);
	content:"";
	display:block;
	}
footer .copyright{
	}

footer::after { clear: both; content: " "; display: block;}
.footer_in{
	width: 1280px;
	margin: 0 auto;
	padding: 40px 0 45px;
	}
.footer_in::after { clear: both; content: " "; display: block;}

.footer_copyright{
	width: 100%;
	text-align: center;
	background: linear-gradient(to right, #b3f08f 0%,#99e79f 100%);
	padding: 20px 0;
	}
.footer_copyright small{
	font-size: 11px;
	line-height: 1.7em;
	display: block;
	}
@media screen and (max-width: 1280px) {
	.footer_in{
		max-width: 96%;
	}
}
@media screen and (max-width: 990px) {
	.footer_copyright{
	padding: 15px 0;
	}
	.footer_copyright small{
		font-size: 10px;
		}
}
@media screen and (max-width: 681px) {
	.footer_in{
		max-width: 90%;
		padding: 4% 0;
	}
}

.address_area{
	width: 630px;
	float: left;
	}
.address_area .logo{
	max-width: 450px;
	margin-bottom: 35px;
	}
.address_area p{
	line-height: 1.8em;
	}
@media screen and (max-width: 1280px) {
	.address_area{
		max-width: 45%;
	}
}
@media screen and (max-width: 990px) {
	.address_area{
		max-width: 44%;
		}
	.address_area .logo{
		max-width: 100%;
	}
}
@media screen and (max-width: 681px) {
	.address_area .logo{
		max-width: 80%;
		margin-bottom: 25px;
		}
	.address_area{
		float: none;
		max-width: 100%;
	}
}

.sitemap_area{
	float: right;
	width: 640px;
	}
.sitemap_area::after { clear: both; content: " "; display: block;}
.sitemap_area ul{
	float: left;
	width: 50%;
	line-height: 1.9em;
	}
.sitemap_area ul li{}
.sitemap_area ul li a{
	display: inline-block;
	background: url(../img/icon/more.png) no-repeat left 5px;
	padding-left: 1.2em;
	color: #000000;
	line-height: 1.5em;
	}
.sitemap_area ul li a:hover{
	color: #006cb2;
	}
.sitemap_area .h3_g_square::after { clear: both; content: " "; display: block;}
.sitemap_area .h3_g_square span{
	background: url(../img/icon/sitemap_bg.png) no-repeat right center;
	background-size: contain;
	display: inline-block;
	float: right;
	width: 30px;
	height: 30px;
	margin-right: 3%;
	display: none;
	}
.sitemap_area .h3_g_square span:hover{
	cursor: pointer;
	}
.sitemap_area .h3_g_square .open{
	background: url(../img/icon/sitemap_hover_bg.png) no-repeat right center;
	background-size: contain;
	display: inline-block;
	float: right;
	width: 30px;
	height: 30px;
	margin-right: 3%;
	}
@media screen and (max-width: 1280px) {
	.sitemap_area{
		max-width: 55%;
	}
}
@media screen and (max-width: 990px) {
	.sitemap_area{
		max-width: 52%;
	}
}
@media screen and (max-width: 681px) {
	.sitemap_area{
		max-width: 96%;
		float: none;
		margin: 0 auto 5%;
		background: #FFFFFF;
		border: 2px solid #99e79f;
	}
	.sitemap_area ul{
		width: 47.5%;
		padding: 4% 0% 2.5% 2.5%;
		display: none;
		}
	.sitemap_area ul:last-child{
		padding: 4% 1.5% 2.5% 1%;
		}
	.sitemap_area .h3_g_square{
		background: linear-gradient(to right, #99e79f 0%,#b3f08f 100%);
		text-align: center;
		padding: 0.4em 0;
		margin: 0;
		}
	.sitemap_area .h3_g_square span{
		display: block;
		}
}


.pankuzu{
	font-size: 13px;
	margin: 0.7em 0;
	padding: 0 !important;
	}
.pankuzu a{}
@media screen and (max-width: 681px) {
	.pankuzu{
	font-size: 11px;
	}
}
#contents{
	width: 100%;
	padding-bottom: 40px;
	}	
#contents::after { clear: both; content: " "; display: block;}
.contents_in{
	max-width: 1280px;
	margin: 0 auto;
	}
.contents_in::after { clear: both; content: " "; display: block;}

.page_contents_in{
	max-width: 1000px;
	margin: 0 auto;
	}
.page_contents_in::after { clear: both; content: " "; display: block;}
.page_contents_in p{
	padding-bottom: 1em;
	line-height: 1.8em;
	}
.contents_in section p{ padding-bottom: 1em;}
.contents_in section{
	max-width: 1000px;
	margin: 0 auto;
	}
.contents_in section::after { clear: both; content: " "; display: block;}

@media screen and (max-width: 1280px) {
	.contents_in{
		max-width: 97%;
	}
	.page_contents_in{
		max-width: 94%;
	}
	.contents_in section{
		max-width: 100%;
		}
}
@media screen and (max-width: 990px) {
	.contents_in{
		max-width: 96%;
	}
	.page_contents_in{
		max-width: 94%;
	}
}
@media screen and (max-width: 681px) {
	.contents_in{
		max-width: 90%;
	}
	.page_contents_in{
		max-width: 90%;
	}
	.page_contents_in p{
		line-height: 1.6em;
		}
}

#page-top { 
	bottom: 60px;
    position: fixed;
    right: 65px;
    z-index: 5;
	}
#page-top:hover {
    cursor: pointer;
	}
#page-top img { 
	max-width: 53px;
	}
@media screen and (max-width: 681px) {
	#page-top { 
	bottom: 25px;
    right: 25px;
	}
	#page-top img { 
	max-width: 35px;
	}
}

#gmap_area{
	width: 100%;
	min-height: 280px;
	background: #D3D3D3;
	line-height: 0;
	}

.tabblock{ display:none;}
.tabblock_smtnone{ display:none;}

@media screen and (max-width: 990px) {

img{ height: auto; max-width: 100%;}
.tabnone{ display: none;}
.tabblock{ display: block;}
.tabblock_smtnone{ display: block;}

#contents{ width: 100%;}
header, footer{ width: 100%;}
header ul{}
header ul li{}

}

@media screen and (max-width: 681px) {
p{}
.pcnone{ display: block;}
.smtnone{ display: none; }
.tabblock_smtnone{ display: none;}

/*---h系---*/
h1{}
.gray_bg_title{ margin-bottom: 25px;}
.gray_bg_title img{ max-height: 15px; width: auto;}
h2{}
h3{}

/*---/h系---*/

#contents{
	padding-bottom: 20px;
	}

header .sub_main{ padding: 40px 0 30px;}
header .sub_main img{ width: 60%;}

header ul li{}
header ul li a{}
header ul li a:hover{ text-decoration: none;}

}


.page_main{
	color:#22691c;
	text-shadow:0 -1px 0 rgba(255,255,255,0.6),0 1px 1px rgba(0,0,0,0.5);
	font-weight: 500;
	text-align: center;
	font-size: 25px;
	letter-spacing: 3px;
	background: rgb(239,239,239);
background: -moz-linear-gradient(top,  rgb(239,239,239) 0%, rgb(255,255,255) 66%, rgb(255,255,255) 97%, rgb(239,239,239) 100%);
background: -webkit-linear-gradient(top,  rgb(239,239,239) 0%,rgb(255,255,255) 66%,rgb(255,255,255) 97%,rgb(239,239,239) 100%);
background: linear-gradient(to bottom,  rgb(239,239,239) 0%,rgb(255,255,255) 66%,rgb(255,255,255) 97%,rgb(239,239,239) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#efefef', endColorstr='#efefef',GradientType=0 );
	}
.page_main .page_in{
	display: block;
	height: 100%;
	padding: 0.85em 0;
	max-width: 1000px;
	margin: 0 auto;
	}

.dotted dl{
	border-bottom: 1px dotted #696969;
	font-size: 17px;
	width: 100%;
	padding: 0.8em 0 0.8em 1.3em;
	}
.dotted dl::after { clear: both; content: " "; display: block;}
.dotted dl:first-child{
	border-top: 1px dotted #696969;
	}
.dotted dl dt{
	float: left;
	font-weight: 600;
	font-size: 15px;
	background: url(../img/icon/more_green.png) no-repeat left top 5px;
	padding-left: 1.2em;
	width: 15%;
	min-width: 8em;
	}
.dotted dl dd{
	float: left;
	font-size: 16px;
	width: 83%;
	}

@media screen and (max-width: 1280px) {
	.page_main{
		font-size: 23px;
		}
	.dotted dl{
	padding: 0.8em 0;
	}
}
@media screen and (max-width: 681px) {
	.page_main{
		font-size: 20px;
		}
	.dotted dl dt{
		float: none;
		margin-bottom: 0.3em;
		}
	.dotted dl dd{
	width: 100%;
	float: none;
	font-size: 15px;
	}
	.page_main .page_in{
		background-size: auto 100% !important;
		}
}

.triple{
	width: 100%;
	}
.triple::after { clear: both; content: " "; display: block;}
.triple li{
	float: left;
	width: 31.3%;
	margin: 0 1%;
	}

@media screen and (max-width: 990px) {

}
@media screen and (max-width: 680px) {
	.triple li{
	float: none;
	width: auto;
	margin: 0;
	}

}







