@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700|Noto+Serif+JP:400,500,600,700,900&subset=japanese');
@media print {
	* {
		font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
	}
}

/* ---------------------------------------------
	reset
--------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,img { margin: 0; padding: 0; }
table {	border-collapse: collapse; border-spacing: 0; }
fieldset,img { border: 0; }
img { display: block; }
img a { border: none; }
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal; font-weight: normal; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1,h2,h3,h4,h5,h6 {	font-size: 100%; font-weight: normal; line-height: 1.0; }
q:before, q:after {	content: ""; }
figure { width: 100%; margin: 0; padding: 0;}

/* ---------------------------------------------
	common
--------------------------------------------- */
* {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
body {
	-webkit-text-size-adjust: 100%;
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	word-wrap: break-word;
}
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {display: inline-table;}
img { width: 100%; height: auto; }
a { text-decoration: none; }
a:link {color: #333;}
a:visited {color: #333;}
a:hover { color: rgba(45,128,0,1.00); -webkit-transition: all .3s; transition: all .3s;}
a:active {color: rgba(45,128,0,1.00);}

.mt00 { margin-top: 0px !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt70 { margin-top: 70px !important; }
.mt80 { margin-top: 80px !important; }
.mt90 { margin-top: 90px !important; }
.mt100 { margin-top: 100px !important; }

.mb00 { margin-bottom: 0px !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb100 { margin-bottom: 100px !important; }

.ml00 { margin-left: 0px !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml40 { margin-left: 40px !important; }
.ml50 { margin-left: 50px !important; }
.ml60 { margin-left: 60px !important; }
.ml70 { margin-left: 70px !important; }
.ml80 { margin-left: 80px !important; }
.ml90 { margin-left: 90px !important; }
.ml100 { margin-left: 100px !important; }

.mr00 { margin-right: 0px !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr40 { margin-right: 40px !important; }
.mr50 { margin-right: 50px !important; }
.mr60 { margin-right: 60px !important; }
.mr70 { margin-right: 70px !important; }
.mr80 { margin-right: 80px !important; }
.mr90 { margin-right: 90px !important; }
.mr100 { margin-right: 100px !important; }

.pt05 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }

.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }

.pl05 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl20 { padding-left: 20px !important; }
.pl30 { padding-left: 30px !important; }
.pl40 { padding-left: 40px !important; }
.pl50 { padding-left: 50px !important; }

.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr20 { padding-right: 20px !important; }
.pr30 { padding-right: 30px !important; }
.pr40 { padding-right: 40px !important; }
.pr50 { padding-right: 50px !important; }

.bold {	font-weight: bold; }
.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }

.red01 { color: #FF0000; }
.red02 { color: #CC0000; }
.red03 { color: #990000; }
.red04 { color: #E4007F; }

.blue01 { color: #003399; }
.blue02 { color: #006699; }
.blue03 { color: #0066CC; }
.blue04 { color: #00A0E9; }

.orange01 { color: #F60; }
.orange02 { color: #F90; }
.orange03 { color: #FC0; }
.orange04 { color: #EB6100; }
.orange05 { color: #FFCC00; }

.green01 { color: #060; }
.green02 { color: #093; }
.green03 { color: #6C0; }

.f20 { font-size: 1.25em; margin-top: 0; }
.f19 { font-size: 1.19em; margin-top: 0; }
.f18 { font-size: 1.12em; margin-top: 0; }
.f17 { font-size: 1.06em; margin-top: 0; }
.f16 { font-size: 1.00em; margin-top: 0; }
.f15 { font-size: 0.94em; margin-top: 0; }
.f14 { font-size: 0.88em; margin-top: 0; }
.f13 { font-size: 0.81em; margin-top: 0; }
.f12 { font-size: 0.75em; margin-top: 0; }

.lh0 { line-height: 1.0; }
.lh1 { line-height: 1.1; }
.lh2 { line-height: 1.2; }
.lh3 { line-height: 1.3; }
.lh4 { line-height: 1.4; }
.lh5 { line-height: 1.5; }
.lh6 { line-height: 1.6; }
.lh7 { line-height: 1.7; }
.lh8 { line-height: 1.8; }

.indent {text-indent: -1em;padding-left: 1em;}
p {	line-height: 1.5; }

/* ---------------------------------------------
	header
--------------------------------------------- */
.header {padding: 20px 10px;}
.header > ul {
	max-width: 1120px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header > ul > li > ul {
	display: flex;
	align-items: center;
}
.header > ul > li > ul > li:nth-child(1) {
	width: 80px;
	margin-right: 15px;
}
.header > ul > li > ul > li:nth-child(2) {
	font-size: 1.65em;
	font-family: 'Noto Serif JP', sans-serif;
	font-weight: 900;
	line-height: 1;
	color: #2d8000;
}
.header > ul > li > ul > li:nth-child(2) a {color: #2d8000;}
.header > ul > li .portal {
	font-size: 0.75em;
	margin-bottom: 10px;
}
.header > ul > li .portal span {display: block;}
.header > ul > li .contactBtn {
	width: 310px;
	margin-left: auto;
}
.header > ul > li > .contactBtn > ul {display: flex;}
.header > ul > li > .contactBtn > ul > li {
	width: 150px;
	margin-right: 10px;
}
.header > ul > li > .contactBtn > ul > li:last-child {margin-right: 0;}

.header > ul > li > .contactBtn > ul > li a {
	display: block;
	background-color: rgba(53,172,240,1);
	background-image: url(../img/arrow1.svg);
	background-size: 8px auto;
	background-repeat: no-repeat;
	background-position: 96% center;
	padding: 10px;
	color: #fff;
	font-size: 1em;
	font-weight: 500;
	line-height: 1;
}
.header > ul > li > .contactBtn > ul > li a:hover {
	background-color: rgba(53,172,240,0.8);
}
.header > ul > li > .contactBtn > ul > li.kabukaBtn a {background-color: rgba(232,0,0,1);}
.header > ul > li > .contactBtn > ul > li.kabukaBtn a:hover {background-color: rgba(232,0,0,0.8);}

@media only screen and (max-width: 800px) {
	.header > ul > li > ul > li:nth-child(2) {font-size: 1.375em;}
}
@media only screen and (max-width: 768px) {
	.header {padding: 0;}
	.header > ul {flex-wrap: wrap;}
	.header > ul > li {width: 100%;}
	.header > ul > li:nth-child(1) {padding: 4px 5px 3px;}
	.header > ul > li:nth-child(2) {
		background: #f6f6f6;
		padding: 5px;
	}
	.header > ul > li > ul > li:nth-child(1) {
		width: 40px;
		margin-right: 10px;
	}
	.header > ul > li > ul > li:nth-child(2) {font-size: 1.25em;}
	.header > ul > li .portal {
		margin-bottom: 0;
	}
	.header > ul > li .portal span {display: inline;}
	.header > ul > li .contactBtn {display: none;}
}
@media only screen and (max-width: 480px) {
	.header > ul > li > ul > li:nth-child(1) {
		margin-right: 5px;
	}
	.header > ul > li > ul > li:nth-child(2) {font-size: 0.94em;}
}
/* ---------------------------------------------
	footer
--------------------------------------------- */
footer {
	border-top: 3px solid rgba(67,189,0,1);
	padding: 30px 10px;
}
footer > ul {
	max-width: 1120px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
footer > ul > li .txt1 {
	font-size: 0.8em;
	margin-bottom: 10px;
}
footer > ul > li .txt1 a {
	color: rgba(45,128,0,1.00);
}
footer > ul > li .txt1 a:hover {
	text-decoration: underline;
}
footer > ul > li .address span {margin-left: 1em;}
footer > ul > li:nth-child(2) {width: 200px;}
footer > ul > li > ul {
	display: flex;
	justify-content: space-between;
}
footer > ul > li > ul > li {width: 90px;}
@media only screen and (max-width: 768px) {
	footer {padding: 20px 10px;}
	footer > ul {display: block;}
	footer > ul > li:nth-child(2) {margin: 20px auto 0;}
	footer > ul > li:nth-child(2) {width: 160px;}
	footer > ul > li > ul > li {width: 70px;}
}
/* ---------------------------------------------
	pageTop
--------------------------------------------- */
.pageTop {
	position: fixed;
	bottom: 0px;
	right: 0px;
	width: 40px;
	text-align: center;
}
.pageTop a {
	display: block;
	padding: 4px 6px;
	background: rgba(0,0,0,0.3);
	color: #fff;
	font-size: 1.5em;
}
.pageTop a:hover {background: rgba(0,0,0,0.4);}

/* ---------------------------------------------
	navigation
--------------------------------------------- */
.globalNavi {background: rgba(67,189,0,1);}
.localNavi {
	max-width: 1120px;
	margin: 0 auto 40px;
	padding-top: 20px;
	border-top: 1px solid #ccc;
}
.localNavi ul {
	display: flex;
	flex-wrap: wrap;
}
.localNavi ul li {
	width: auto;
	font-size: 0.94em;
	margin-right: 1em;
	margin-bottom: 10px;
	line-height: 1.2;
}
.localNavi ul li .fas {
	margin-right: 0.3em;
	color: rgba(67,189,0,1);
}
.localNavi ul li a {
	display: block;
	padding: 10px;
	border-radius: 4px;
	background-color: rgba(67,189,0,0.2);
}
.localNavi ul li a:hover {
	background-color: rgba(67,189,0,1);
	color: #fff;
}
.localNavi ul li a:hover .fas {color: #fff;}
@media only screen and (max-width: 640px) {
	.localNavi ul li {margin-right: 10px;}
}
/* ---------------------------------------------
	contents
--------------------------------------------- */
.wrap1 {padding: 0 10px;}
.headline1 {
	max-width: 1120px;
	margin: 30px auto 40px;
	padding: 26px 20px;
	background-image: url(../img/town.svg);
	background-repeat: no-repeat;
	background-size: 460px auto;
	background-position: right bottom;
	background-color: rgba(17,79,204,1);
	color: #fff;
	font-size: 1.5em;
	font-weight: 600;
	line-height: 1;
}
.headline2 {
	text-align: center;
	font-size: 2em;
	font-weight: 600;
	line-height: 1.3;
	color: #2d8000;
	margin-bottom: 30px;
}
.headline2-1 {
	font-size: 1.5em;
	font-weight: 600;
	color: #2d8000;
	margin-bottom: 20px;
}
.headline3 {
	max-width: 1120px;
	font-size: 1.5em;
	font-weight: 600;
	line-height: 1.2;
	color: #2d8000;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
	padding: 14px;
	background: rgba(233,249,224,1);
}
.headline4 {
	font-size: 1.06em;
	font-weight: 600;
	border-bottom: 1px solid #999;
	margin-bottom: 15px;
	padding-bottom: 10px;
}
.headline4:before {
	content: "●";
	font-size: 0.8rem;
	margin-right: 0.3em;
	color: rgba(67,189,0,1);
}
.headline5 {
	text-align: center;
	background: #0073B1;
	color: #fff;
	font-size: 1.25em;
	font-weight: 600;
	margin-bottom: 30px;
	padding: 15px;
}
.btn1 {
	max-width: 360px;
	margin: 0 auto;
	background-color: #fff;
}
.btn1 a {
	display: block;
	padding: 15px;
	font-size: 1.25em;
	font-weight: 600;
	line-height: 1.2;
	color: #fff;
	background-image: url(../img/arrow1.svg);
	background-repeat: no-repeat;
	background-size: 11px auto;
	background-position: 96% center;
	background-color: rgba(67,189,0,1);
}
.btn1 a:hover {background-color: rgba(67,189,0,0.8);}

@media only screen and (max-width: 1120px) {
	.headline1 {
		margin: 0 auto 40px;
		background-size: 460px auto;
	}
}
@media only screen and (max-width: 768px) {
	.headline1 {
		font-size: 1.25em;
		line-height: 1.2;
	}
	.headline2 {font-size: 1.5em;}
	.headline2-1 {font-size: 1.12em;}
	.headline3 {font-size: 1.12em;}
	.headline4 {font-size: 1em;}
	.headline4:before {font-size: 0.75rem;}
	.btn1 a {font-size: 1.12em;}
}
@media only screen and (max-width: 640px) {
	.headline1 {
		margin: 0 auto 30px;
		padding: 20px 14px;
		background-size: 360px auto;
	}
	.headline2 {font-size: 1.375em; margin-bottom: 20px;}
	.headline2-1 {font-size: 1.06em; margin-bottom: 10px;}
	.headline3 {font-size: 1.06em;}
}
@media only screen and (max-width: 480px) {
	.headline5 {font-size: 1.12em;}
}
