@charset "UTF-8";
:root {
	--contents-width: 960px;
	--base-color: #8FC31F;
	--base-font-size: 16px;
	--base-line-height: 1.8;
}
html {
	position: relative;
	min-height: 100%;
	width: 100%;
}
body {
	font-family: "Yu Gothic",YuGothic,"メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Osaka","ＭＳ Ｐゴシック", "MS P Gothic",Verdana,Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.8;
	color: #000;
	width: 100%;
	min-width: var(--contents-width);
	padding-top: 60px;
}
* {margin: 0;padding: 0;}
a {color: #000;}
img {
	display: block;
	max-width: 100%;
}
a img {border: none;}
a:hover{opacity: 0.8;text-decoration: none;}
.clearfix {display: block;}
.clearfix:before,.clearfix:after {content: " ";display: table;}
.clearfix:after {clear: both;}
ul,ol,li {list-style-type: none;}

a.tel{
	cursor: auto;
	pointer-events: none;
}

.header{
	padding-top: 15px;
	border-bottom: 5px solid #000;
	border-top: 5px solid #000;
}
.header-inner{
	position: relative;
	width: var(--contents-width);
	margin: 0px auto;
}
.header-inner>img{
	margin: 0 auto 15px;
	width: 394px;
}
.header-inner>img.vol{
	position: absolute;
	margin: 0;
	left: 0;
	bottom: 0;
	width: 200px;
}
.header-right{
	position: absolute;
	top: 50%;
	right: 0;
	border-left: 5px solid #000;
	padding: 14px 0 14px 20px;
	margin-top: -62px;
	font-size: 18px;
}

.member:before,
.member:after,
.border-bg{
	background-color: #FFF;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #D7E8B5), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #D7E8B5),color-stop(.75, #D7E8B5), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 7px 7px;
}
.border-bg{
	padding: 45px;
}

.mokuji-menu,
a.mokuji,
a.fixed-bottom-link{
	position: fixed;
	left: 50%;
	margin-left: -480px;
	line-height: 60px;
	color: #fff;
	font-weight: bold;
	z-index: 9999;
}
a.fixed-bottom-link{
	width: 960px;
	text-align: center;
	bottom: 0;
	background-color: #ED562D;
}
a.mokuji{
	width: 930px;
	text-align: left;
	top: 0;
	background-color: var(--base-color);
	padding-left: 30px;
	font-size: 18px;
}
a.fixed-bottom-link,
a.mokuji{
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
}
a.mokuji span{
	width: 55px;
	text-align: center;
}
a.fixed-bottom-link span,
a.mokuji span{
	display: block;
	-webkit-transition: -webkit-transform .5s ease-out;
	transition: -webkit-transform .5s ease-out;
	transition: transform .5s ease-out;
	transition: transform .5s ease-out, -webkit-transform .5s ease-out;
}

a.mokuji:hover,
a.fixed-bottom-link:hover{
	opacity: 1;
}
a.mokuji:hover{
	background-color: #a5cf4c;
}
a.fixed-bottom-link:hover{
	background-color: #f17857;
}
a.fixed-bottom-link:hover span,
a.mokuji:hover span{
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.mokuji-menu{
	width: 810px;
	top: 60px;
	background-color: #fff;
	font-weight: normal;
	line-height: 30px;
	display: none;
	-webkit-box-shadow: 1px 1px 1px 1px rgba(3, 16, 144, 0.2);
	box-shadow: 1px 1px 1px 1px rgba(3, 16, 144, 0.2);
}
.mokuji-menu li a{
	display: block;
	padding: 12px 50px;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
	font-weight: bold;
	position: relative;
}
.mokuji-menu li a:hover{
	opacity: 1;
	background-color: #D7E8B5;
	color: #006934;
	font-weight: bold;
}

.mokuji-menu li a:before{
	content: "";
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 8px solid #000;
	display: block;
	position: absolute;
	top: 50%;
	left: 30px;
	margin-top: -5px;
}
.mokuji-menu li a:hover:before{
	border-left: 8px solid #006934;
}
.mokuji-menu li.close{
	text-align: center;
}
.mokuji-menu li.close a{
	padding: 20px;
	background-color: #f0f0f0;
}
.mokuji-menu li.close a:before{
	display: none;
}
.mokuji-menu li.close a:hover{
	background-color: #006934;
	color: #fff;
}


main{
	width: var(--contents-width);
	margin: 0 auto;
	padding-bottom: 100px;
}
section{
	margin-bottom: 100px;
}


.news .ttl{
	border-bottom: none;
	display: block;
	text-align: center;
	margin-top: 30px;
}
.news_img01{
	width: 568px;
	margin: 30px auto 0;
}
.news>p{margin: 30px 0;}
.news>p strong{
	display: block;
	font-size: 20px;
}
.news_ttl{
	border-top: 5px solid #000;
	border-bottom: 5px solid #000;
	margin-bottom: 10px;
	position: relative;
	padding: 15px 0;
}
.news_ttl:before{
	content: "";
	background-image: url(../images/common/map.png);
	background-size: contain;
	display: block;
	width: 153px;
	height: 87px;
	position: absolute;
	top: -20px;
	left: 0;
	background-color: #fff;
}
.news_ttl>img{
	margin: 0 auto;
}
.news_ttl>span{
	font-size: 16px;
	color: #e83428;
	position: absolute;
	top: -15px;
	left: 50%;
	background-color: #fff;
	padding: 0 10px;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	font-weight: normal;
}
a.fixed-bottom-link{
	position: fixed;
	bottom: 0;
	left: 50%;
	width: 960px;
	background-color: #ED562D;
	text-align: center;
	margin-left: -480px;
	line-height: 80px;
	color: #fff;
	font-weight: bold;
}


.ttl{
	font-size: 27px;
	line-height: 1.4;
	border-bottom: 5px solid var(--base-color);
	display: inline-block;
	padding: 0 8px;
}
.ttl>span{
	display: block;
	font-size: 18px;
	border-bottom: none;
}
.sec-ttl{
	font-size: 27px;
	line-height: 1.2;
	border-top: 2px solid var(--base-color);
	border-bottom: 2px solid var(--base-color);
	display: inline-block;
	padding: 10px 5px;
}
.kv-ttl{
	text-align: center;
	font-size: 40px;
	margin: 30px 0;
}
.kv-img{
	width: 100%;
	height: auto;
}
.img-copy{
	font-size: 14px;
	line-height: 1.4;
	margin-top: 5px;
	display: block;
}
.img-copy-text{
	margin-top: -10px;
}
.you-can-do{
	width: 500px;
	background-color: #E8F2D9;
	border: 2px solid var(--base-color);
	border-radius: 25px;
	text-align: center;
}
.you-can-do h3{
	background-color: var(--base-color);
	color: #fff;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	font-size: 20px;
}
.you-can-do-inner{
	padding: 20px 50px;
}
.you-can-do p{
	text-align: left;
	margin-bottom: 10px;
}
.you-can-do strong{
	font-size: 20px;
}
.you-can-do-inner>a{
	margin-top: 0;
	font-weight: bold;
	display: inline-block;
}
.you-can-do a.btn{
	background-color: var(--base-color);
	color: #fff;
	display: inline-block;
	padding: 7px 15px;
	line-height: 24px;
	border: 1px solid #fff;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 16px;
}
.qr{
	margin-top: 20px;
}
.qr>*{
	display: block;
	vertical-align: middle;
	font-weight: bold;
}
.qr-code{
	margin-left: 0;
	margin-top: 15px;
}
.qr-code img{
	display: inline;
	background-color: #fff;
	width: 86px;
}
.qr-label{
	background-color: var(--base-color);
	color: #fff;
	display: inline-block;
	padding: 0 25px;
	position: relative;
	margin-top: 0px;
}


.from-office-ttl{
	text-align: center;
	color: #006934;
	padding: 5px 0;
	font-size: 20px;
}
.from-office-ttl span{
	font-size: 34px;
	margin-right: 10px;
}
.office_img01{
	margin-left: 515px;
}
.announcement{
	position: relative;
	padding: 20px 50px 50px;
	border-left: 2px dotted #D7E8B5;
	border-right: 2px dotted #D7E8B5;
}
.announcement .fukidashi{
	left: 40px;
}
.about>h3,
.announcement-text h3{
	color: #006934;
	font-size: 24px;
}
.announcement-text strong{
	line-height: 1.4;
	display: block;
	font-size: 18px;
}
.announcement-text p{
	line-height: 1.8;
	margin-top: 15px;
}
.announcement-text{
	float: left;
	width: 480px;
}
.announcement-detail>*{
	margin-top: 25px;
}
.announcement-detail>*>.pc-view{
	display: inline !important;
}
.announcement-detail-contact li:first-child{
	margin-bottom: 20px;
}
.announcement-detail-contact li>h3{
	background-color: #006934;
	color: #fff;
	display: inline-block;
	padding: 0 15px;
	position: relative;
	float: left;
	margin-top: 6px;
}
.announcement-detail-contact li>h3:after{
	content: "";
	border-top: 25px solid transparent;
	border-bottom: 25px solid transparent;
	border-left: 25px solid #006934;
	position: absolute;
	top: 50%;
	right: -25px;
	margin-top: -25px;
}
.announcement-detail-contact li>p{
	line-height: 1.4;
}
.announcement-detail-contact li:first-child>p{
	margin-left: 180px;
}
.announcement-detail-contact li:last-child>p{
	margin-left: 350px;
}

.from-office-footer,
.about,
.member{
	border-left: 2px dotted #D7E8B5;
	border-right: 2px dotted #D7E8B5;
}
.member:after,
.member:before{
	content: "";
	width: 100%;
	height: 30px;
	display: block;
}
.member-left{
	position: relative;
	width: 600px;
	padding: 35px 20px 10px;
	float: left;
	border-right: 2px dotted #D7E8B5;
}
.about .fukidashi,
.member-left .fukidashi{
	left: 20px;
}
.office_img02{
	float: left;
}
.member-left>p{
	margin-left: 200px;
	line-height: 1.4;
}
.member-right{
	position: relative;
	padding: 45px 20px 10px;
	margin-left: 642px;
}
.member-right>p{
	line-height: 1.4;
}
.member-right>span{
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 13px;
}
.about{
	position: relative;
	padding: 20px;
}
.about>h3{
	text-align: center;
	line-height: 1.4;
}
.about-web{
	text-align: center;
	margin: 10px 0;
}
.about-web-label{
	background-color: #006934;
	color: #fff;
	display: inline-block;
	vertical-align: middle;
	font-weight: bold;
	padding: 0 10px;
	border-radius: 10px;
	margin-right: 10px;
}
.about-web>a{
	font-weight: bold;
	font-size: 20px;
	vertical-align: middle;
}

.about-sns{
	font-size: 0;
	border-top: 2px dotted #D7E8B5;
	border-bottom: 2px dotted #D7E8B5;
}
.about-sns li{
	display: inline-block;
	vertical-align: top;
	width: 24.5%;
	border-right: 2px dotted #D7E8B5;
}
.about-sns li:last-child{
	border-right: none;
}
.about-sns li a{
	display: block;
	position: relative;
	height: 120px;
}
.about-sns li a img{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.about-contact{
	margin-top: 20px;
	padding: 0 25px;
}
.about-contact>*{
	display: inline-block;
	vertical-align: middle;
}
.about-contact-text{
	line-height: 1.4;
	margin-left: 20px;
	width: 370px;
}
.about-contact-label{
	background-color: #006934;
	color: #fff;
	display: inline-block;
	vertical-align: middle;
	font-weight: bold;
	padding: 0 10px;
	border-radius: 10px;
	margin-right: 10px;
	line-height: 1.2;
}
.about-contact li p{
	display: inline-block;
	vertical-align: middle;
	font-weight: bold;
	font-size: 20px;
}
li.about-contact-tel p{
	font-size: 26px;
	line-height: 1;
}
.about-contact-tel p span{
	font-size: 16px;
}
.about-contact-tel .about-contact-label{
	margin-right: 27px;
}

.from-office{
	margin-bottom: 0;
}
.from-office-footer{
	border-bottom: 2px dotted #D7E8B5;
	border-top: 2px dotted #D7E8B5;
	padding: 15px;
}
.from-office-footer>*{
	display: inline-block;
	vertical-align: middle;
}
.from-office-footer-left{
	margin-right: 15px;
}
.from-office-footer-left>img{
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
.from-office-footer-copy{
	text-align: center;
	background-color: #D7E8B5;
	color: #006934;
	font-weight: bold;
	font-size: 14px;
}

.fukidashi{
	position: absolute;
	top: -8px;
	left: 0;
	background-color: var(--base-color);
	color: #fff;
	font-size: 18px;
	padding: 0 10px;
	line-height: 1.4;
}
.fukidashi>span{
	position: relative;
	display: block;
}
.fukidashi>span:after{
	content: "";
	border-bottom: 10px solid transparent;
	border-left: 8px solid #8fc31e;
	position: absolute;
	bottom: -10px;
	left: -10px;
}
.img-copy .pc-view{
	display: inline !important;
}
/** pc **/
@media screen and (min-width: 768px){
	.sp-view{display: none !important;}
}
/** smart phone **/
@media screen and (max-width: 767px){
	:root {
		--contents-width: initial;
		--sp-margin: 3%;
	}
	body{
		overflow-x: hidden;
		padding-top: 40px;
	}
	.pc-view{display: none !important;}
	a.tel{
		pointer-events: auto;
	}
	.header{
		padding-top: 0;
		border-top: none;
	}
	.header-inner{
		width: auto;
	}
	.header-inner>img.vol{
		width: 100px;
		bottom: -56px;
		left: 50%;
		margin-left: -152px;
	}
	.header-inner>img{
		width: 200px;
		height: auto;
		margin: 12px auto;
	}
	.header-right{
		top: 66px;
		right: auto;
		border-left: none;
		padding: 0px 0 0px 5px;
		margin-top: 0;
		font-size: 14px;
		line-height: 1.4;
		left: 50%;
		margin-left: -48px;
	}
	a.mokuji{
		width: 100%;
		margin-left: 0;
		left: 0;
		padding-left: 3%;
	}
	a.fixed-bottom-link:hover span,
	a.mokuji:hover span{
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
	}
	.mokuji-menu{
		width: 100%;
		top: 35px;
		left: 0;
		margin-left: 0;
	}
	.mokuji-menu li a{
		padding: 8px 3% 8px 11%;
		font-size: 13px;
		line-height: 1.2;
	}
	.mokuji-menu li.close a{
		padding: 10px 0;
	}
	.mokuji-menu li a:before{
		left: 5%;
	}
	main{
		width: auto;
		margin-top: 45px;
		border-top: 2px solid #000;
		padding-top: 30px;
		padding-bottom: 60px;
	}
	section {
		margin-bottom: 30px;
		padding: 0 var(--sp-margin);
	}
	.border-bg{padding: var(--sp-margin);}
	.img-copy{
		font-size: 13px;
	}
	.img-copy-text {margin-top: 5px;}

	.img-copy .pc-view{
		display: none !important;
	}
	.sec-ttl{
		padding: 5px 8px;
	}
	.kv-ttl,
	.sec-ttl,
	.ttl{
		font-size: 24px;
		display: block;
	}
	.kv-ttl{
		margin: 0px 0 15px;
	}
	.news_ttl{
		padding: 12px 0 10px;
	}
	.news_ttl>img {
		margin: 3% auto 0;
		width: 280px;
		height: auto;
		z-index: 2;
		position: relative;
	}
	.news_ttl>span{
		font-size: 14px;
		line-height: 1.2;
		width: 75%;
		position: static;
		margin-left: 75px;
		display: block;
		text-align: left;
		padding: 0;
		margin-bottom: 0;
		transform: none;
		-webkit-transform: none;
	}
	.news_ttl:before{
		width: 70px;
		height: 39px;
		top: 6px;
		background-repeat: no-repeat;
	}
	a.mokuji,
	a.fixed-bottom-link{
		font-size: 14px;
		line-height: 35px;
	}
	a.fixed-bottom-link{
		left: 0;
		width: 100%;
		margin-left: 0;
		line-height: 50px;
	}
	.from-office-ttl span,
	.about>h3,
	.announcement-text h3,
	.announcement-text strong,
	.news>p strong{
		font-size: 18px;
	}
	.news>img,
	.news-left>img,
	.news_img01>img{
		width: 100%;
		height: auto;
	}
	.fukidashi{
		font-size: 15px;
		padding: 5px 5px;
		top: -5px;
	}
	.from-office-ttl {
		font-size: 15px;
	}
	.from-office-ttl span{
		margin-right: 5px;
	}
	.announcement{
		padding: var(--sp-margin);
	}
	.about .fukidashi,
	.member-right .fukidashi,
	.member-left .fukidashi,
	.announcement .fukidashi{
		padding: 2px 10px;
		position: static;
		display: inline-block;
		margin-bottom: 20px;
	}
	.announcement-text{
		float: none;
		width: auto;
	}
	.office_img01{
		margin-left: 0;
		width: 100%;
		height: auto;
	}
	.announcement-detail-contact li>h3{
		float: none;
		font-size: 16px;
		padding: 3px 8px;
	}
	.announcement-detail-contact li:last-child>p,
	.announcement-detail-contact li:first-child>p{
		margin-left: 0;
		margin-top: 15px;
	}
	.announcement-detail>*>.pc-view{
		display: none !important;
	}

	.member-left{
		width: auto;
		padding: var(--sp-margin);
		float: none;
		border-bottom: 2px dotted #D7E8B5;
		border-right: none;
	}
	.office_img02 {
		float: none;
		width: 100%;
		height: auto;
		margin-bottom: 10px;
	}
	.member-left>p{
		margin-left: 0;
	}

	.member-right{
		margin-left: 0;
		padding: var(--sp-margin);
	}
	.member-right>p{
		margin-top: 15px;
	}
	.member-right>span{
		top: 35px;
		right: var(--sp-margin);
	}

	.about{
		padding: var(--sp-margin);
	}
	.about-web-label{
		margin-right: 0;
	}
	.about-web>a{
		font-size: 18px;
	}
	.about-sns li{
		width: 49%;
		border-right: none;
	}
	.about-sns li:first-child{
		border-bottom: 2px dotted #D7E8B5;
		border-right: 2px dotted #D7E8B5;
	}
	.about-sns li:last-child{
		border-left: 2px dotted #D7E8B5;
		border-top: 2px dotted #D7E8B5;
	}
	.about-sns li a img{
		width: 120px;
		height: auto;
	}
	.about-sns li:last-child a img{
		width: 140px;
		height: auto;
	}

	.about-contact{
		margin-top: 3%;
		padding: 0 3%;
	}
	.about-contact>*{
		display: block;
	}
	li.about-contact-tel {
		margin-bottom: 15px;
	}
	li.about-contact-tel p{
		font-size: 20px;
		line-height: 1.2;
	}
	.about-contact-text{
		line-height: 1.4;
		margin-left: 0;
		margin-top: 15px;
		width: auto;
	}
	.about-contact li p{
		display: block;
		font-size: 17px;
		line-height: 1.4;
	}
	.from-office-footer{
		padding: var(--sp-margin);
	}
	.from-office-footer>*{
		display: block;
	}
	.from-office-footer-left{
		margin-right: 0;
	}
	.from-office-footer-left>img{
		display: block;
		margin-right: 0;
		width: 220px;
		margin-bottom: 10px;
	}
	.from-office-footer-copy{
		text-align: left;
		padding: var(--sp-margin);
	}
	.from-office{
		margin-bottom: 0;
	}

	.news_img01{
		width: auto;
	}
	.you-can-do{
		margin-top: 30px;
	}
	.you-can-do-inner{
		padding: var(--sp-margin);
	}
	.you-can-do-inner>a{
		margin-top: 0;
	}
	.qr{
		margin-top: 15px;
	}
	.qr-label{
		margin-top: 0;
	}
	.qr-code{
		margin-left: 0;
		margin-right: 0px;
	}
	.qr-code a{
		font-size: 14px;
	}
	.qr-code img {
		width: 86px;
	}
	.you-can-do{width: auto;}
	.you-can-do strong{
		font-size: 18px;
		line-height: 1.4;
	}
}