*{
	font-family:"Zen Maru Gothic", sans-serif;
	padding:0;
	margin:0;
}
html{

}
/* header */
.m9-header{
	border-bottom:1px solid #e5efe5;
	position:fixed;
	width:100%;
	top:0;
	z-index:100;
}
.m9-header__inner{
	margin:0 auto;
	display:flex;
	align-items:center;
	gap:9px;
}
.m9-header__brand{
	flex:0 0 auto;
}
.m9-header__brandLink{
	display:flex;
	align-items:center;
	gap:12px;
	text-decoration:none;
	color:#222;
	background:#fff;
	border-radius:0 0 10px 0;
	padding:15px 20px;
	box-shadow:0 6px 18px rgba(0,0,0,.06);
}
.m9-header__mark{
	width:40px;
	height:40px;
	position:relative;
	background:url(images/logo.png);
}
.m9-header__brandText{
	display:flex;
	flex-direction:column;
	line-height:1.1;
	font-weight:600;
}
.m9-header__brandName{
	font-size:24.5px;
	letter-spacing:.02em;
	margin-bottom:2px;
	margin-left:3px;
}
.m9-header__brandSub{
	font-size:12px;
	margin-top:3px;
	letter-spacing:1.5px;
}
.m9-header__right{
	margin-left:auto;
	display:flex;
	align-items:center;
	gap:18px;
	flex-wrap:nowrap;
	background:white;
	padding:13px 23px 17px;
	border-radius:0 0 0 10px;
}
.m9-header__nav ul{
	display:flex;
	gap:15px;
	list-style:none;
	margin:0;
	padding:0;
}
.m9-header__nav a{
	text-decoration:none;
	color:#222;
	font-size:15px;
	font-weight:600;
	white-space:nowrap;
}
.m9-header__nav a:hover{
	color:#2ea84a;
}
.m9-header__tel{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:2px;
	border-left:1px solid #e8f3e8;
	padding:2px 6px 0 0;
}
.m9-header__telLink{
	display:flex;
	align-items:center;
	gap:8px;
	text-decoration:none;
	color:#111;
	font-weight:900;
	font-size:20px;
	white-space:nowrap;
	letter-spacing:0.1em;
	margin-bottom:-3px;
}
.m9-header__telNote{
	margin:0 0 0 10px;
	font-weight:900;
	font-size:10px;
	color:rgba(0,0,0,.55);
	white-space:nowrap;
}
.m9-header__addr{
	display:flex;
	align-items:center;
	gap:8px;
  margin-left:20px;
	border-left:1px solid #e8f3e8;
	color:#333;
	font-size:12px;
	font-weight:600;
	white-space:nowrap;
}
.m9-header__addrText{
	color:#333;
	font-size:15px;
}
.m9-header__icon{
	width:20px;
	height:20px;
	border-radius:999px;
	position:relative;
	flex:0 0 auto;
}
.m9-header__icon--tel{
	background:url(images/icon_tel.png);
}
.m9-header__icon--pin{
	background:url(images/icon_map.png);
}

/* Footer */
.m9-footer,.m9-footer *{
	box-sizing:border-box;
}
.m9-footer{
	width:100%;
	padding-top:120px;
	margin-top:80px;
	line-height:1.6;
	background:rgba(93, 200, 68, 0.05);
}
.m9-footer__inner{
	width:min(1200px, calc(100% - 40px));
	margin:0 auto;
	padding:0 0 120px;
	display:grid !important;
	grid-template-columns:1fr 1fr;
	gap:40px;
	align-items:start;
}
.m9-footer__list,
.m9-footer__list dt,
.m9-footer__list dd,
.m9-footer__catch,
.m9-footer__bottom p{
	margin:0;
	padding:0;
}
.m9-footer__catch{
	margin:24px 0 24px;
	font-size:14px;
	line-height:1.8;
	color:#333;
	font-weight:700;
}
.m9-footer__list{
	width:560px;
	border-collapse:collapse;
}
.m9-footer__list th{
	font-size:15px;
	font-weight:700;
	color:#222;
	text-align:left;
	padding:15px 30px 15px 0;
	width:130px;
	vertical-align:top;
}
.m9-footer__list td{
	font-size:15px;
	font-weight:700;
	color:#222;
	list-style-type:none;
	padding:15px 0;
}
.m9-footer__list tr{
	border-top:1px solid #ccc;
}
.m9-footer__list tr:last-child{
	border-bottom:1px solid #ccc;
}
.m9-footer__list tr td a{
	color:#222;
	text-decoration:none;
}
.m9-footer__list a:hover{
	text-decoration:underline;
}

.m9-footer__list dd{
	margin-top:6px;
	font-size:13px;
	line-height:1.8;
	color:#444;
}
.m9-footer__brand{
	flex:0 0 auto;
	display:flex;
	align-items:center;
	gap:12px;
}
.m9-footer__brandLink{
	display:flex;
	align-items:center;
	gap:12px;
	text-decoration:none;
	color:#222;
	background:#fff;
	border-radius:0 0 10px 0;
	padding:15px 20px;
	box-shadow:0 6px 18px rgba(0,0,0,.06);
}
.m9-footer__mark{
	width:40px;
	height:40px;
	position:relative;
	background:url(images/logo.png);
}
.m9-footer__brandText{
	display:flex;
	flex-direction:column;
	line-height:1.1;
	font-weight:600;
}
.m9-footer__brandName{
	font-size:24.5px;
	letter-spacing:.02em;
	margin-bottom:2px;
	margin-left:3px;
}
.m9-footer__brandSub{
	font-size:12px;
	margin-top:3px;
	letter-spacing:1.5px;
}
.m9-footer__map{
	width:100%;
	height:390px;
	border-radius:12px;
	overflow:hidden;
	box-shadow:0 6px 20px rgba(0,0,0,.08);
}
.m9-footer__map iframe{
	display:block;
	width:100%;
	height:100%;
	border:0;
}
.m9-footer__bottom{
	width:100%;
	background:rgba(85, 179, 64, 0.2);
	text-align:center;
	padding:30px 20px 18px;
	font-weight:bold;
}
.m9-footer__bottom p{
	font-size:12px;
	color:#333;
}

/* 見出し */
.pagetitle{
	align-content:center;
	align-items:center;
	flex:none;
	flex-direction:column;
	flex-wrap:nowrap;
	justify-content:flex-start;
	margin:0px 0px 0px 0px;
	padding:160px 50px 50px 50px;
	width:100%;
	max-width:100%;
	background:linear-gradient(to right, rgba(93,200,68,0.21) 0%,rgba(255,255,255,1) 100%);
	position:relative;
}
.pagetitle:before{
	background-image:url("https://storage.googleapis.com/studio-design-asset-files/projects/rROnBvKkOA/s-190x190_webp_37990858-eb33-4bd1-b564-c17990d23ac9.webp");
	background-size:9px;
	content:"";
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
}
.pagetitle .bg_white{
	position:relative;
	z-index:1;
	background:white;
	width:1200px;
	max-width:100%;
	padding:40px 50px 50px;
	text-align:center;
	margin:0 auto;
	border-radius:10px;
}
.pagetitle .bg_white p{
	font-size:12px;
	font-weight:900;
	color:#31a617;
	letter-spacing:1px;
}
.pagetitle .bg_white h2{
	font-size:24px;
	letter-spacing:2px;
	margin-top:10px;
	border-bottom:5px dashed rgba(93,200,68,0.2);
	display:inline-block;
	padding-bottom:5px;
}

/* パンくず */
.breadcrumb{
	width:96%;
	max-width:1200px;
	margin:18px auto 70px;
}
.breadcrumb ul{
	display:flex;
	gap:45px;
}
.breadcrumb ul li{
	font-size:12px;
	list-style-type:none;
	position:relative;
	font-weight:bold;
}
.breadcrumb ul li:before,
.breadcrumb ul li:after{
	position:absolute;
	width:5px;
	height:1px;
	content:"";
	display:block;
	background:#31a617;
	right:-25px;
}
.breadcrumb ul li:before{
	transform:rotate(45deg);
	top:9px;
}
.breadcrumb ul li:after{
	transform:rotate(-45deg);
	top:11px;
}
.breadcrumb ul li:last-child:before,
.breadcrumb ul li:last-child:after{
	display:none;
}
.breadcrumb ul li a{
	text-decoration:none;
	color:#222;
}

.home section .section_inner{
	width:96%;
	max-width:1050px;
	margin:0 auto;
}
.home section .section_inner ul li{
	list-style-type:none;
	margin-bottom:40px;
}
.home section .section_inner ul li:last-child{
	margin-bottom:0;
}
.home section .section_inner ul li a{
	display:block;
	padding:30px;
	border:1px solid rgba(93,200,68,0.2);
	border-radius:4px;
	font-size:16px;
	line-height:1.7em;
	text-decoration:none;
	color:black;
	font-weight:bold;
	position:relative;
	transition:0.1s linear all;
	bottom:0;
}
.home section .section_inner ul li a span{
	font-size:15px;
	letter-spacing:1.5px;
}
.home section .section_inner ul li a:hover{
	border:1px solid rgba(93,200,68);
	bottom:-3px;
}
.single section .section_inner{
	width:96%;
	max-width:1050px;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
}
.single section .section_inner .main{
	width:68%;
}
.single section .section_inner .main .date{
	font-size:15px;
	font-weight:bold;
	margin-bottom:2px;
}
.single section .section_inner .main .title{
	font-size:20px;
	font-weight:bold;
	border-bottom:5px dashed rgba(93,200,68,0.2);
	background:url(images/icon_title.png) no-repeat left 6px;
	padding:0 0 10px 25px;
	margin-bottom:40px;
}
.single section .section_inner .main .contents{

}
.single section .section_inner .main .contents h1,
.single section .section_inner .main .contents h2{
	background:rgba(249,217,104,0.1);
	border-radius:10px;
	color:#423e34;
	font-size:16px;
	line-height:1.7;
	margin:40px 0 10px 0;
	padding:10px;
}
.single section .section_inner .main .contents h3{
	background:rgba(249,217,104,0.1);
	border-radius:10px;
	color:#423e34;
	font-size:17px;
	line-height:1.7;
	margin:40px 0 10px 0;
	padding:10px;
	font-weight:900;
}
.single section .section_inner .main .contents p{
	color:#423e34;
	font-size:14px;
	line-height:1.7;
	font-weight:500;
	margin:10px 0 20px;
}
.single section .section_inner .main .contents p a{
	text-decoration:underline;
	color:#007cff;
}
.single section .section_inner .main .contents p a:hover{
	text-decoration:none;
}
.single section .section_inner .main .contents ol,
.single section .section_inner .main .contents ul{
	margin:30px 0 30px 20px;
	line-height:1.7;
	color:#423e34;
}
.single section .section_inner .main .contents ol li,
.single section .section_inner .main .contents ul li{
	margin:10px 0;
}
.single section .section_inner .side{
	width:25%;
	margin-top:8px;
}
.single section .section_inner .side h4{
	text-align:center;
}
.single section .section_inner .side h4 span{
	background:#423e34;
	border-radius:64px;
	font-size:13px;
	color:white;
	font-weight:bold;
	padding:2px 15px;
	line-height:1.5;
	position:relative;
}
.single section .section_inner .side h4 span:after{
	width:6px;
	height:6px;
	background:#423e34;
	content:"";
	display:block;
	position:absolute;
	left:calc(50% - 2px);
	bottom:-2px;
	transform:rotate(45deg);
}
.single section .section_inner .side ul{
	margin-top:25px;
}
.single section .section_inner .side ul li{
	list-style-type:none;
	margin-bottom:20px;
}
.single section .section_inner .side ul li a{
	display:block;
	padding:17px 20px 20px;
	border:1px solid rgba(93,200,68,0.2);
	border-radius:4px;
	font-size:13px;
	line-height:1.6em;
	text-decoration:none;
	color:black;
	font-weight:bold;
	position:relative;
	transition:0.1s linear all;
	bottom:0;
}
.single section .section_inner .side ul li a span{
	font-size:11.5px;
	letter-spacing:1.5px;
}
.single section .section_inner .side ul li a:hover{
	border:1px solid rgba(93,200,68);
	bottom:-3px;
}
.modal{
	display:none;
}

.has-cyan-bluish-gray-color{ color:#abb8c3; }
.has-pale-pink-color{ color:#f78da7; } /*ピンク*/
.has-vivid-red-color{ color:#cf2e2e; }
.has-luminous-vivid-orange-color{ color:#ff6900; } /*orange*/
.has-luminous-vivid-amber-color{ color:#fcb900; } /*yellow*/
.has-light-green-cyan-color{ color:#7bdcb5; } /*薄緑*/
.has-vivid-green-cyan-color{ color:#00d084; }
.has-pale-cyan-blue-color{ color:#8ed1fc; } /* 水 */
.has-vivid-cyan-blue-color{ color:#0693e3; } /* 青 */
.has-vivid-purple-color{ color:#9b51e0; } /* 紫 */


/* SP */
@media screen and (max-width:1024px){
	.m9-header__brandName,.m9-footer__brandName{
		font-size:22px;
	}
	.m9-header__brandSub,.m9-footer__brandSub{
		font-size:11px;
	}
	.m9-footer__inner{
		display:flex !important;
	}
	.m9-footer__info{
		width:50%;
	}
	.m9-footer__map{
		width:calc(50% - 40px);
	}
	.m9-footer__list{
		width:100%;
	}
	.m9-header{
		background:white;
	}
	.m9-header__nav,
	.m9-header__tel,
	.m9-header__addr{
		display:none;
	}
	.header_btn{
		width:32px;
		z-index: 10;
		height: 18px;
		position:relative;
	}
	.menu__line {
		background: #111; /* スマホメニュー3本線の色はここで変更できます */
		display: block;
		height: 2px;
		position: absolute;
		width: 100%;
	}
	.menu__line--center {
		top: 10px;
	}
	.menu__line--bottom {
		bottom: -4px;
	}
	.modal{
		display:none;
		justify-content:end;
		position:fixed;
		width:100%;
		height:100%;
		z-index:9999;
		background:rgba(0,0,0,0.5);
		transition:0.1s linear all;
	}
	.modal.on{
		display:flex;		
	}
	.modal .spmenu{
		margin:20px;
		padding:30px;
		border:1px solid #5dc844;
		border-radius:10px;
		background:white;
		width:380px;
	}
	.modal .spmenu .close{
		width:28px;
		height:24px;
		float:right;
		margin-top:15px;
	}
	.modal .spmenu .close .line{
		width:24px;
		height:2px;
		background:#111;
		transform:rotate(45deg);
		position:relative;
	}
	.modal .spmenu .close .line:last-child{
		transform:rotate(-45deg);
		top:-2px;
	}
	.modal .spmenu .m9-header__brandLink{
		box-shadow:none;
		padding:0;
		margin-top:4px;
	}
	.modal .spmenu ul{
		margin-top:48px;
	}
	.modal .spmenu ul li{
		list-style-type:none;
		border-top:1px solid #ddd;
	}
	.modal .spmenu ul li:last-child{
		border-bottom:1px solid #ddd;
	}
	.modal .spmenu ul li a{
		display:block;
		padding:17px 0;
		font-size:15px;
		font-weight:bold;
		text-decoration:none;
		color:#111;
		letter-spacing:1px;
		background-image:url(images/icon_arrow.png);
		background-repeat:no-repeat;
		background-position:right center;
		background-size:16px;
		transition:0.1s linear all;
	}
	.modal .spmenu ul li a:hover{
		background-color:rgba(249, 217, 104, 0.1);
	}
	.modal .spmenu .close_btn{
		margin-top:50px;
		text-align:center;
		line-height:60px;
		font-weight:bold;
		background:#e6e6e6;
		border-radius:10px;
		font-size:15px;
	}
	.modal .sp_tel{
		display:none;
	}
}
@media screen and (max-width:896px){
	.pagetitle{
		padding:100px 20px 50px;
	}
	.pagetitle .bg_white{
		padding:30px 30px 40px;
	}
	.pagetitle .bg_white h2{
		font-size:20px;
	}
	.home section .section_inner ul,
	.single section .section_inner .side ul{
		display:flex;
		flex-wrap:wrap;
		gap:2%;
		justify-content:center;
	}
	.home section .section_inner ul li,
	.single section .section_inner .side ul li{
		width:32%;
	}
	.m9-footer__inner{
		display:block !important;
	}
	.m9-footer__info{
		width:100%;
	}
	.m9-footer{
		padding-top:115px;
		margin-top:150px;
	}
	.m9-footer__list th{
		width:23%;
	}
	.m9-footer__map{
		width:100%;
		margin-top:50px;
	}
	.single section .section_inner{
		display:block;
		width:90%;
	}
	.single section{
		margin-top:120px;
	}
	.single section .section_inner .main{
		width:100%;
	}
	.single section .section_inner .main .title{
		font-size:17px;
	}
	.single section .section_inner .side{
		width:100%;
	}
	.modal .sp_tel{
		display:block;
		margin:45px 0 40px;
	}
	.modal .sp_tel a{
		display:block;
		background:rgba(93,200,68,0.2);
		padding:18px;
		text-align:center;
		font-weight:bold;
		font-size:19px;
		color:#111;
		letter-spacing:3px;
		text-decoration:none;
		border-radius:10px;
	}
	.modal .sp_tel a span{
		background:url(images/icon_tel.png) no-repeat left center;
		padding-left:30px;
	}
	.modal .spmenu ul{
		margin-top:0;
	}
	
}
@media screen and (max-width:640px){
	.wrapper{
		width:100%;
		overflow:hidden;
	}
	.pagetitle .bg_white h2{
		font-size:18px;
	}
	.breadcrumb{
		width:90%;
		margin:12px auto 70px;
	}
	.breadcrumb ul{
		gap:10px 24px;
		flex-wrap:wrap;
	}
	.breadcrumb ul li{
		font-size:10px;
	}
	.breadcrumb ul li:before, .breadcrumb ul li:after{
		right:-15px;
	}
	.breadcrumb ul li:before{
		top:7px;
	}
	.breadcrumb ul li:after{
		top:9px;
	}
	.home section .section_inner{
		width:90%;
	}
	.home section .section_inner ul, .single section .section_inner .side ul{
		display:block;
	}
	.home section .section_inner ul li{
		width:100%;
		margin-bottom:20px;		
	}
	.single section .section_inner .side ul li{
		width:100%;
		margin-bottom:15px;
	}
	.home section .section_inner ul li a{
		padding:17px 15px;
		font-size:13px;
		box-shadow:0px 2px 20px rgba(0,0,0,0.05)
	}
	.single section .section_inner .side ul li a{
		padding:15px 15px;
		font-size:13px;
		box-shadow:0px 2px 20px rgba(0,0,0,0.05)		
	}
	.home section .section_inner ul li a span{
		font-size:12px;
	}
	.m9-footer{
		padding-top:80px;
		margin-top:80px;
	}
	.m9-footer__inner{
		padding-bottom:100px;
	}
	.m9-footer__list th{
		display:block;
		width:100%;
		font-size:14px;
		padding-bottom:0;
	}
	.m9-footer__list td{
		display:block;
		width:100%;
		font-size:13px;
		padding-top:10px;
	}
	.m9-footer__map{
		height:250px;
	}
	.m9-footer__map iframe{
		height:250px;
	}
	.m9-footer__bottom{
		padding:10px 0;
	}
	.m9-header__brandLink{
		padding:11px 10px;
		gap:8px;
	}
	.m9-header__brandName, .m9-footer__brandName{
		font-size:20px;
	}
	.m9-header__brandSub, .m9-footer__brandSub{
		font-size:10px;
	}
	.m9-header__mark{
		width:35px;
		background-size:35px;
		background-repeat:no-repeat;
		background-position:center;
	}
	.single .breadcrumb{
		margin-bottom:0;
	}
	.single section{
		margin-top:65px;
	}
	.single section .section_inner .main .date{
		margin-bottom:5px;
	}
	.single section .section_inner .main .title{
		font-size:16px;
	}
	.single section .section_inner .main .contents h1, .single section .section_inner .main .contents h2{
		font-size:14px;
	}
	.single section .section_inner .main .contents h3{
		font-size:15px;
	}
	.single section .section_inner .main .contents p{
		font-size:13px;
	}
	.single section .section_inner .main .contents ol, .single section .section_inner .main .contents ul{
		font-size:14px;
	}
	.modal .spmenu{
		margin:5px;
		width:300px;
		padding:20px;
	}
	.modal .sp_tel{
		margin:30px 0 20px;
	}
	.modal .sp_tel a{
		padding:14px 0;
		font-size:17px;
	}
	.modal .spmenu ul li a{
		font-size:14px;
		padding:16px 0;
	}
}









