:root {
	--bg-color: #F7F7F7;
	--bg-green: #005945;
	--txt-green: #1C4937;
}

body{
	background-color: #fff !important;
	
}

.font-ryumin{
	font-family: "a-otf-ryumin-pr6n", serif;
	font-weight: 300;
	font-style: normal;
}

/* layout */
.page__wrapper{
	width: 100%;
	max-width: 1070px;
	padding: 0 20px;
	margin: 40px auto 0;	
}
@media screen and (max-width: 830px){
	.page__wrapper{
		margin-top: 30px;
	}
}

.page__lead{
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 60px;
	text-align: left;
}
.page--h3{
	background-color: var(--bg-color);
	color: #000;
	font-size: 24px;
	padding: 15px 50px;
	line-height: 1;
	text-align: left;
	margin-bottom: 25px;
}
.page--h3.center{
	text-align: center;
}
.page-mb-15{
	margin-bottom: 15px;
}
.page-mb-25{
	margin-bottom: 25px;
}
.page-mb-40{
	margin-bottom: 40px;
}
@media screen and (max-width: 830px){
	.page--h3{
		font-size: 18px;
		padding-left: 25px;
		padding-right: 25px;
	}
	.page__lead{
		font-size: 14px;
		margin-bottom: 40px;
	}
}



@media screen and (min-width: 1021px){
	.fullWrapper{
		padding-left: 80px;
		padding-right: 80px;
	}
}


@media screen and (max-width: 1020px) and (min-width: 831px) {
	.fullWrapper{
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media screen and (min-width: 831px){
	.pc_hide{
		display: none !important;
	}
}
@media screen and (max-width: 830px){
	.sp_hide{
		display: none !important;
	}
	.fullWrapper{
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* text style */
.page--text{
	font-size: 16px;
	line-height: 1.5;
	text-align: left;
}
@media screen and (max-width: 830px){
	.page--text{
		font-size: 14px;
	}
}
.textAlign--left{
	text-align: left;
}
.text--inlineLink{
	color: #000;
	transition: all 0.6s ease;
	text-decoration: none;
}
.text--inlineLink:hover{
	color: var(--bg-green);
	text-decoration: none;
}

.pageTitle--green{
	background-color: var(--bg-green);
	color: #fff;
	font-size: 28px;
	padding: 15px 50px;
	line-height: 1;
	text-align: left;
	margin-bottom: 25px;
}
@media screen and (max-width: 830px){
	.pageTitle--green{
		font-size: 22px;
		padding-left: 25px;
		padding-right: 25px;
	}
}
.btn--green{
	border: 1px solid var(--txt-green);
	color: var(--txt-green);
	text-align: center;
	max-width: 400px;
	margin-left: 0;
	display: block;
	line-height: 3;
	height: 45px;
	font-size: 14px;
	transition: all 0.5s ease;
}
.btn--green:hover{
	text-decoration: none;
	background-color: var(--txt-green);
	color: #fff;
}

.btn--inForm{
	border: 1px solid var(--txt-green);
	text-align: center;
	margin-left: 0;
	margin-bottom: 15px;
	display: block;
	width: 210px;
	padding: 14px 0;
	font-size: 0;
	cursor: pointer;
	transition: all 0.5s ease;
}
.btn--inForm:hover{
	text-decoration: none;
	background-color: var(--txt-green);
	
}
.btn--inForm:hover span{
	color: #fff;
}
.btn--inForm span{
	font-size: 14px;
	color: var(--bg-green);
	line-height: 1;
	transition: all 0.5s ease;
}

.btn--inForm.mail span::before{
	content: "";
	display: inline-block;
	margin-right: 10px;
	background-image: url(../images/icon_mail.png);
	width: 19px;
	height: 15px;
	background-size: contain;
	vertical-align: top;
	background-repeat: no-repeat;
}
.btn--inForm.mail:hover span::before{
	background-image: url(../images/icon_mail_hv.png);
}
.btn--inForm.chat span::before{
	content: "";
	display: inline-block;
	margin-right: 10px;
	background-image: url(../images/icon_chat.png);
	width: 19px;
	height: 15px;
	background-size: contain;
	vertical-align: top;
	background-repeat: no-repeat;
}
.btn--inForm.chat:hover span::before{
	background-image: url(../images/icon_chat_hv.png);
}
@media screen and (max-width: 430px){
	.btn--inForm{
		width: 100%;
	}
}



/* shoppingGuide */
	.page--shoppingGuide{
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
	}
	.shoppingGuide--prdList{
		display: flex;
		gap: 20px;
		margin-bottom: 60px;
		padding-left: 0;
	}
	.shoppingGuide--prdList .shoppingGuide--prdList--li{
		margin-top: 0;
		padding-left: 0;
		width: calc(25% - 15px);
		list-style: none;
	}
	.shoppingGuide--prdList .shoppingGuide--prdList--li::before{
		display: none;
	}
	.shoppingGuide--prdList .shoppingGuide--prdList--li a{
		display: block;
		color: #000;
		text-decoration: none;
	}
	.shoppingGuide--prdList .shoppingGuide--prdList--li a img{
		width: 100%;
	}
	.shoppingGuide--prdList .shoppingGuide--prdList--li a p{
		margin-top: 15px;
		font-size: 18px;
		text-align: center;
	}
	@media screen and (max-width: 830px){
		.shoppingGuide--prdList{
			flex-wrap: wrap;
		}
		
		.shoppingGuide--prdList .shoppingGuide--prdList--li a p{
			font-size: 14px;
		}
	}
	@media screen and (max-width: 430px){
		.shoppingGuide--prdList .shoppingGuide--prdList--li{
			width: 47%;
		}
	}
	.shoppingGuide--timeList{
		display: flex;
		gap: 10px;
		margin-bottom: 20px;
		flex-wrap: wrap;
	}
	.shoppingGuide--timeList p{
		background-color: var(--bg-color);
		color: #505050;
		text-align: center;
		font-size: 14px;
		line-height: 45px;
		height: 45px;
		width: 25%;
		margin: 0;
	}
	@media screen and (max-width: 430px){
		.shoppingGuide--timeList p{
			width: 31%;
		}
	}
	.shoppingGuide--form{
		border-top: 1px solid #1C4937;
		margin-bottom: 120px;
	}
	
	
	.shoppingGuide--form--col p{
		text-align: left;
		line-height: 1.7;
		font-size: 14px;
	}
	@media screen and (min-width: 431px){
		.shoppingGuide--form--row{
			display: flex;
			border-bottom: 1px solid #1C4937;
		}
		.shoppingGuide--form--col{
			padding-top: 25px;
			padding-bottom: 25px;
		}
		.shoppingGuide--form--col.ttl{
			width: 270px;
		}
		.shoppingGuide--form--col.txt{
			width: calc(100% - 270px);
		}
	}
	
	@media screen and (max-width: 430px){
		.shoppingGuide--form--row{
			display: block;
		}
		.shoppingGuide--form--col.ttl{
			padding-top: 25px;
			margin-bottom: 5px;
		}
		.shoppingGuide--form--col.ttl p{
			font-size: 16px;
		}
		.shoppingGuide--form--col.txt{
			padding-bottom: 25px;
			border-bottom: 1px solid #1C4937;
		}
	}
/* /shoppingGuide */


/* footer */
.footer__copy{
	background-color: var(--bg-green);
	padding: 15px 0;
}
.footer__copy p{
	font-size: 10px;
	color: #fff;
	text-align: center;
	line-height: 1;
}
.footer--membershop{
	background-color: var(--bg-green);
	padding-top: 40px;
	padding-bottom: 40px;
}
.footer--membershop__wrap{
	display: flex;
	max-width: 820px;
	margin: auto;
	align-items: center;
	justify-content: space-between;
}

.footer--membershop__left{
	text-align: left;
}
.footer--membershop__left h3{
	font-size: 32px;
	margin-bottom: 15px;
	color: #fff;
}

.footer--membershop__left p{
	color: #fff;
	font-size: 16px;
}
.footer--membershop__left .txtImg{
	display: block;
	margin-bottom: 25px;
	margin-left: 0;
	height: 12px;
	width: auto;
}
.footer--membershop__link{
	width: 296px;
	background-color: #fff;
	color: var(--txt-green);
	line-height: 64px;
	height: 64px;
	text-align: center;
	font-size: 20px;
	display: block;
}
@media screen and (max-width: 430px){
	.footer--membershop__wrap{
		display: block;
	}
	.footer--membershop__left h3{
		font-size: 20px;
	}
	.footer--membershop__left .txtImg{
		height: 10px;
		margin-bottom: 20px;
	}
	.footer--membershop__left p{
		font-size: 14px;
		line-height: 1.5;
		margin-bottom: 10px;
	}
	.footer--membershop__link{
		width: 100%;
	}
}
.footer--top__wrap{
	width: 100%;
	max-width: 1070px;
	padding: 30px 20px 40px;
	margin: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
@media screen and (max-width: 830px){
	.footer--top__wrap{
		display: block;
	}
}
.footer__phone img{
	width: 17px;
}
.footer--top__left{
	display: flex;
	width: 75%;
}
.footer--top__left .footer--links{
	width: 33.33%;
}
@media screen and (max-width: 830px){
	.footer--top__left{
		width: 100%;
		margin-bottom: 40px;
	}
	.footer--top__left .footer--links{
		width: 50%;
	}
}
.footer--top__chats p img{
	width: auto;
	height: 16px;
	vertical-align: bottom;
}
.footer--top__right{
	position: relative;
	width: 25%;
	padding-left: 15px;
}
.footer--top__right:before{
	content: "";
	width: 1px;
	height: 100%;
	background-color: var(--bg-green);
	position: absolute;
	left: -20%;
	top: 0;
}
.footer--top__right h3{
	font-family: "Noto Sans JP", sans-serif;
	color: var(--txt-green);
	font-size: 18px;
	margin-bottom: 15px;
}
.footer--top__right__p{
	font-size: 10px;
	color: var(--txt-green);
	margin-bottom: 0;
}
.footer__phone{
	margin-bottom: 22px;
}
.footer__phone img{
	margin-right: 5px;
	vertical-align: middle;
}
.footer__phone a{
	display: inline-block;
	font-size: 24px;
	text-decoration: underline;
	color: var(--txt-green);
	vertical-align: middle;
}
.footer--top__right__caption{
	font-size: 12px;
	text-align: center;
	line-height: 1.8;
	color: var(--txt-green);
}
@media screen and (max-width: 830px){
	.footer--top__right{
		width: 100%;
		padding-top: 40px;
	}
	.footer--top__right:before{
		width: 100%;
		height: 1px;
		top: 0;
		left: 0;
	}
}
.footer .footer--links{
	text-align: left;
	position: relative;
}
.footer .footer--links li{
	display: block;
	padding-left: 15px;
	
}
.footer .footer--links a{
	font-size: 12px;
	color: var(--txt-green);
	line-height: 1.8;
	display: block;
}
.footer--top__chats{
	display: flex;
	justify-content: space-between;
	margin: 0 auto 20px;
	max-width: 265px;
}
.footer--top__chats p {
	font-size: 0;
}
.footer--top__chats p img{
	display: inline-block;
	margin-right: 5px;
}
.footer--top__chats p span{
	font-size: 16px;
	text-decoration: underline;
	color: var(--txt-green);
	display: inline-block;
}
.footer .footer--links a:first-child{
	margin-top: 0;
}
.footer .footer--links li:before{
	content: "";
	background-image: url(../images/breadcrumb_arr.svg);
	width: 4px;
	height: 8px;
	top: 8px;
}
.footer--sns{
	padding-top: 10px;
	padding-bottom: 50px;
	max-width: 306px;
	display: flex;
	margin: auto;
	gap: 50px;
	justify-content: space-between;
}
.footer--sns a img{
	width: auto;
	height: 39px;
}
@media screen and (max-width: 430px){
	.footer--sns{
		padding-left: 15px;
		padding-right: 15px;
		gap: 30px;
	}
}
.footer--bottom{

}
.footer--bottom__wrap{
	position: relative;
	padding-top: 55px;
	width: 100%;
	max-width: 1070px;
	padding: 55px 20px 80px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}
.footer--bottom__wrap::before{
	content: "";
	height: 1px;
	width: 100%;
	background-color: var(--bg-green);
	position: absolute;
	top: 0;
	left: 20px;
	width: calc(100% - 40px);
}
.footer--bottom__wrap .footer--links{
	width: 25%;
}
@media screen and (max-width: 830px){
	.footer--membershop{
		padding-left: 20px;
		padding-right: 20px;
	}
	.footer--bottom__wrap{
		flex-wrap: wrap;
	}
	.footer--bottom__wrap .footer--links{
		width: 50%;
		margin-bottom: 15px;
	}
}
/* /footer */