@charset "utf-8";

/* main visual and h2*/
#main-visual {
	position:relative;
	padding:0;
	margin:0;
	display: flex;
	flex-direction: column;
}
#main-visual h2{
	padding:0;
	margin: 0 0 10px 0;
	text-align:center;
	background-size: auto auto;
	background-color: rgba(244, 254, 240, 1);
	background-image: repeating-linear-gradient(0deg, transparent, transparent 3px, rgba(236, 236, 236, 1) 3px, rgba(236, 236, 236, 1) 6px );
	line-height: 1;
}
#main-visual.no-image h2{
	background-color:#f6f6f6;
	padding-left: calc((100% - 900px) / 2);
	padding-right: calc((100% - 900px) / 2);
	padding-top:30px;
	padding-bottom:40px;
	margin: 0 0 10px 0;
	background-image:unset;
}
#main-visual.no-image h2 span{
	display: inline-block;
	text-align: left;
	overflow-wrap: break-word;
	word-break: keep-all;
}
.shop-nav-wrap{
}
.shop-nav-list{
	display:inline-flex;
}
.shop-menu{
	text-decoration:none;
	transition:0.3s;
}
#sp-btn-hamburger{
	display:none;
}
@media screen and (min-width:641px){
	#main-visual h2 .company-name {
		text-align:left;
		padding-top:10px;
		padding-bottom:10px;
		font-size: 22px;
		background-color:#FFF;
		color:#a92e27;
		font-family: "Noto Serif JP", serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		line-height:1.2;
	}
	#main-visual.no-image h2{
		position:relative;
		height:500px;
		display:flex;
		justify-content:center;
		align-items:center;
		z-index:1;
	}
	#main-visual.no-image h2:before{
		position:absolute;
		display:block;
		content:'';
		width:100%;
		height:100%;
		background-image:url(/img/shop/common/main1000.jpg);
		filter: grayscale(1);
		background-size:cover;
		background-position:center top -180px;
		z-index:1;
	}
	#main-visual.no-image h2 .company-name {
		font-size: 40px;
		background-color:transparent;
		filter:drop-shadow(1px 1px 3px #ffffff);
		text-align:center;
		background-size:auto auto;
		background-repeat:no-repeat;
		background-position:center bottom;
		/* height: 60px; */
		z-index:2;
	}
	.shop-nav-wrap{
		/* position:absolute; */
		bottom:25px;
		width:100%;
		text-align:center;
		order: 3;
	}
	.shop-nav-wrap.fixed{
		position:fixed;
		top:0;
		width:100%;
		left:0;
		z-index:2;
	}
	.shop-nav-wrap.fixed{
		position:fixed;
		top:0;
		width:100%;
		margin-left:0;
		height: 64px;
		margin-right:0;
		left:0;
	}
	.shop-nav-list{
		background-color:#374440;
		border-radius:100px;
		transition: 0.3s;
	}
	.shop-nav-wrap.fixed .shop-nav-list{
		width:100%;
		padding-left:0;
		padding-right:0;
		border-radius: 0;
		display: flex;
		justify-content: center;
	}
	.shop-menu{
		color:#FFF;
		background-color:#374440;
	}
	.shop-menu:hover{
		background-color:#316655;
	}
	.shop-nav-wrap h3,
	.sp-btn-hamburger,
	.hamburger-favorite-wrap,
	.hamburger-shop-name,
	.hamburger-btn-contact{
		display:none;
	}
	.shop-menu.btn-favo{
		display:none;
	}
	.shop-nav-wrap.fixed .shop-menu.btn-favo{
		display:block;
		padding: 0;
		border: 0;
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		right: 0;
		height: 100%;
		width: 64px;
		background-color: #FFF;
		text-align: center;
		background-repeat: no-repeat;
		background-size: 50% auto;
		background-position: center top 9px;
	}
	.shop-nav-wrap.fixed .shop-menu.btn-favo img{
		width: 50%;
	}
	.shop-menu.btn-favo[data-favo="0"]{
		background-image:url(/img/shop/common/heart_plus.webp);
	}
	.shop-menu.btn-favo[data-favo="1"]{
		background-image:url(/img/common/heart02.webp);
	}
	.shop-nav-wrap.fixed .shop-menu.btn-favo span{
		color:#3f3f3f;
		display:inline-block;
		width:100%;
		font-size:10px;
		padding-top: 30px;
	}
}
@media screen and (min-width:901px){
	.shop-nav-list{
		padding-left:50px;
		padding-right:50px;
	}
	.shop-menu{
		padding:20px;
	}
}
@media screen and (min-width:641px) and (max-width:900px){
	.shop-nav-list{
		padding-left:30px;
		padding-right:30px;
	}
	.shop-menu{
		padding: 20px 1vw;
		font-size: max(1.5vw, 13px);
	}
}
@media screen and (max-width:640px){
	h2{
		order:3;
	}
	#main-visual.no-image h2,
	#main-visual h2 .company-name {
		display:none;
	}
	#bread-clam-list {
		order: 2;
	}
	.shop-menu.btn-favo{
		display:none;
	}
	.shop-nav-wrap{
		order: 1;
		position:sticky;
		top:0;
		width:100%;
		left:0;
		background-color:#FFF;
		padding-left:20px;
		padding-right: 20px;
		z-index: 2;
		background-image:url(/img/shop/common/main640.jpg);
		background-size: cover;
		background-position: center center;
	}
	.shop-nav-wrap h3{
		padding-right:50px;
		color: #a92e27;
		font-family: "Noto Serif JP", serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		overflow-wrap: break-word;
		word-break: keep-all;
		font-size: 18px;
	}
	#sp-btn-hamburger:checked ~ .shop-nav-wrap{
		z-index:10;
	}
	.shop-nav-wrap.is-fixed{
		position:fixed;
		z-index:10;
	}
	.shop-nav-wrap label {
		display:block;
		width:30px;
		height:30px;
		position:absolute;
		right:20px;
		top: 15px;
		cursor:pointer;
	}
	.shop-nav-wrap label span{
		position:absolute;
		height:5px;
		width:100%;
		background-color:#35433d;
		border-radius:10px;
		margin:auto;
		transition:0.3s;
		transform:rotate(0deg);
	}
	#sp-btn-hamburger:checked ~ .shop-nav-list .hamburger-favorite-wrap label span{
		height:2px;
	}
	#sp-btn-hamburger:checked ~ .shop-nav-list .hamburger-favorite-wrap button img{
		width:80%;
	}
	.shop-nav-wrap label .top{
		top:0;
	}
	.shop-nav-wrap label .middle{
		top:0;
		bottom:0;
		right:0;
		left:0;
	}
	.shop-nav-wrap label .bottom{
		bottom:0;
	}
	.hamburger-favorite-wrap label .top,
	#sp-btn-hamburger:checked ~ label .top{
		transform:rotate(45deg);
		bottom:0;
	}
	.hamburger-favorite-wrap label .middle,
	#sp-btn-hamburger:checked ~ label .middle{
		width:0;
	}
	.hamburger-favorite-wrap label .bottom,
	#sp-btn-hamburger:checked ~ label .bottom{
		transform:rotate(-45deg);
		top:0;
	}
	.shop-nav-list {
		position:fixed;
		background-color: #f4f4f4;
		flex-direction:column;
		width: max(80vw, 280px);
		height: 100%;
		top:0;
		right:-100vw;
		transition:0.3s;
	}
	#sp-btn-hamburger:checked ~ .shop-nav-list{
		right:0;
	}
	.hamburger-favorite-wrap{
		display:flex;
		align-items:center;
		justify-content:space-between;
		height: 70px;
		position: relative;
		width: 100%;
		padding-right: 10px;
		padding-left: 10px;
		background: #FFF;
	}
	.hamburger-favorite-wrap button{
		border-width:0;
		background-color:transparent;
		width: 50px;
		height: 50px;
		text-align:right;
		padding-top:7px;
		background-repeat:no-repeat;
		background-size:60%;
		background-position:center top 10px;
	}
	.hamburger-favorite-wrap button[data-favo="0"]{
		background-image:url(/img/shop/common/heart_plus.webp);
	}
	.hamburger-favorite-wrap button[data-favo="1"]{
		background-image:url(/img/shop/common/heart02.webp);
	}
	.hamburger-favorite-wrap label{
		position:relative;
		right:0;
		top:0;
	}
	.hamburger-shop-name{
		color:#596847;
		padding-left: 20px;
		padding-right: 20px;
		background: #FFF;
		padding-bottom: 30px;
	}
	.hamburger-shop-name .corp-organization{
		font-size:15px;
	}
	.hamburger-shop-name .corp-name{
		font-size:20px;
		font-weight:bold;
		overflow-wrap: break-word;
		word-break: keep-all;
	}
	.shop-menu{
		background-color: #f4f4f4;
		color:#1b1b1b;
		padding: 10px 10px;
		margin: 0 20px;
		border-bottom:1px solid #c1d9d1;
		display:block;
	}
	.shop-menu.recruit{
		border-bottom-width:0;
	}
	.shop-menu:hover{
		background-color: #dae1de;
	}
	.shop-nav-list .btn-contact{
		display:none;
	}
	.hamburger-btn-contact {
		background-color:#FFF;
		display:flex;
		justify-content:center;
		height:100%;
		padding-top:20px;
	}
	.hamburger-btn-contact a{
		display:inline-block;
		height:50px;
		width:calc(90% - 10px);
		background-image: linear-gradient(to right, #18b99f, #1c9738);
		text-align:center;
		color:#FFF;
		text-decoration:none;
		padding:10px;
		box-sizing:border-box;
		border-radius:6px;
		border-top:1px solid #303f36;
		border-right:2px solid #303f36;
		border-bottom:5px solid #303f36;
		border-left:2px solid #303f36;
		font-weight:bold;
	}
	.hamburger-btn-contact a:hover{
		border-top:4px solid #303f36;
		border-bottom:2px solid #303f36;
	}
	#sp-btn-hamburger:checked ~ .body-overray{
		position:fixed;
		width:100%;
		height:100%;
		background-color:rgba(0,0,0,.2);
		top: 0;
		left: 0;
		z-index: -1;
	}
}

/* banner 1 */
#banner1 {
	text-align:center;
	margin-top:60px;
	margin-bottom:60px;
}

/* information */
#information {
	margin-bottom:50px;
	padding-top: 130px;
}
#banner1 + #information{
	padding-top: 70px;
}
.information-wrap {
	display:flex;
	flex-wrap:wrap;
	gap:30px;
	align-items: flex-start;
}
.information-wrap .left{
	width:100%;
	display: grid;
}
.information-wrap .right picture{
	width:100%;
}
.information-wrap .btn-shop-contact{
	width: calc(80% - 10px);
	background-image: linear-gradient(to right, #18b99f, #1c9738);
	text-align:center;
	color:#FFF;
	text-decoration:none;
	padding:20px;
	box-sizing:border-box;
	border-radius:6px;
	border-top:1px solid #303f36;
	border-right:2px solid #303f36;
	border-bottom:5px solid #303f36;
	border-left:2px solid #303f36;
	font-weight:bold;
}
.information-wrap .btn-shop-contact:hover{
	border-top:4px solid #303f36;
	border-bottom:2px solid #303f36;
}
.information-wrap .btn-shop-favorite{
	width: calc(20% - 10px);
	border-width:0;
	background-color:transparent;
	box-sizing:border-box;
	background-repeat:no-repeat;
	background-size:auto auto;
	background-position:center top +10px;
	font-size:min(3.5vw,14px);
	text-align:center;
	color:#000;
	padding-top:50px;
	text-decoration:none;
	font-size:12px;
	transition: .3s;
}
.information-wrap .btn-shop-favorite[data-favo="0"]{
	background-image:url(/img/shop/common/heart_plus.webp);
}
.information-wrap .btn-shop-favorite[data-favo="1"]{
	background-image:url(/img/shop/common/heart02.webp);
}
.information-wrap .bottom{
	width:100%;
}
#information .corp-organization{
	background-color:#3b5d3f;
	display:inline-block;
	color:#FFF;
	padding:10px 20px;
}
#information .corp-name{
	margin-top:10px;
	margin-bottom:5px;
	font-size:30px;
	line-height:1;
	font-weight:normal;
}
#information .catchcopy{
	color:#5b72b4;
	font-size:24px;
	line-height:1.2;
}
#information hr{
	margin-top:20px;
	margin-bottom:20px;
}
.corp-business-wrap {
	display:flex;
	flex-wrap:wrap;
	gap:5px;
}
.corp-business-wrap span{
	background-color:#FFF;
	color:#4b7e3e;
	border:2px solid #4b7e3e;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:2px;
	padding:5px 20px;
	line-height:1;
	text-align:center;
	width: max(calc(100% / 5 - 10px), 130px);
	box-sizing:border-box;
	min-height:50px;
}
.corp-about-list {
	display:flex;
	flex-wrap:wrap;
	border-right:1px solid #bcc6c2;
	border-bottom:1px solid #bcc6c2;
}
.corp-about-list dt{
	padding:10px;
	background-color:#ebf8ed;
	box-sizing:border-box;
	border-top:1px solid #bcc6c2;
	border-left:1px solid #bcc6c2;
}
.corp-about-list dd{
	margin:0;
	padding:10px;
	box-sizing:border-box;
	border-top:1px solid #bcc6c2;
	border-left:1px solid #bcc6c2;
}
.corp-about-list .shop-phone-num{
	text-decoration:none;
	color:#000;
}
.corp-about-list .shop-url{
	text-underline-offset:4px;
}
.corp-about-list .shop-phone-num{
	text-decoration:none;
	color:#000;
}
.corp-about-list .shop-url{
	text-underline-offset:4px;
}


#set-heart-modal {
	display:none;
}

#set-heart-modal.on {
	display:block;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
}
#set-heart-modal.on .body-overray{
	position:fixed;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,.2);
	top: 0;
	left: 0;
}
#set-heart-modal.on .con-wrap{
	position:absolute;
	width:600px;
	height:200px;
	background-color:#FFF;
	margin: auto;
	top:0;
	bottom:0;
	right:0;
	left:0;
	padding:10px;
	box-sizing:border-box;
	border-top:10px solid #61b140;
	border-bottom:3px solid #61b140;
	text-align:center;
}
#set-heart-modal.on .close{
	position:absolute;
	border:2px solid #2a8f00;
	width:30px;
	height:30px;
	background-color:#FFF;
	border-radius:50px;
	top:-15px;
	right:-10px;
}
#set-heart-modal.on .btn-wrap{
	text-align:center;
}

@media screen and (min-width:1001px){
	.information-wrap .left{
		grid-template-columns: 60% calc(40% - 40px);
		grid-template-rows: repeat(1, 1fr);
		grid-column-gap: 40px;
		grid-row-gap: 0px;
		align-items: self-start;
	}
	.information-wrap .grid-wrap-1{
		grid-area: 1 / 1 / 2 / 2;
	}
	.information-wrap .right{
		grid-area: 1 / 2 / 3 / 3;
		display: flex;
		flex-wrap: wrap;
		gap:20px;
		align-items: flex-start;
	}
	.information-wrap .grid-wrap-2{
		grid-area: 2 / 1 / 3 / 2;
	}
}
@media screen and (max-width:1000px){
	.information-wrap .left{
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: repeat(1, 1fr);
		grid-column-gap: 0px;
		grid-row-gap: 40px;
		align-items: self-start;
	}
	.information-wrap .grid-wrap-1{
		grid-area: 1 / 1 / 2 / 2;
	}
	.information-wrap .right{
		grid-area: 2 / 1 / 3 / 2;
		display: flex;
		flex-wrap: wrap;
		gap:20px;
		align-items: flex-end;
	}
	.information-wrap .grid-wrap-2{
		grid-area: 3 / 1 / 4 / 2;
	}
}
@media screen and (min-width:641px) and (max-width:1000px){
	.information-wrap .right{
		width: 60vw;
		margin: 0 20vw;
	}
}
@media screen and (min-width:641px) {
	.corp-about-list dt{
		width:100px;
	}
	.corp-about-list dd{
		width:calc(100% - 100px);
	}
}
@media screen and (max-width:640px){
	.corp-about-list {
		flex-direction:column;
	}
}

/* bg-light-gray section common */
@media screen and (min-width:641px){
	.bg-light-gray {
		padding-top:50px;
		padding-bottom:50px;
	}
}
@media screen and (max-width:640px){
	.bg-light-gray {
		padding-top: 30px;
		padding-bottom:20px;
		padding-left: 0;
		padding-right: 0;
	}
}
.bg-light-gray{
	background-color:#f6f6f6;
}
.bg-light-gray .con-wrap{
	background-color:#FFF;
	box-shadow:0px 0px 5px rgba(0,0,0,.5);
}
.bg-light-gray h3{
	font-size:28px;
	font-weight:normal;
}
@media screen and (min-width:641px){
	.bg-light-gray .con-wrap{
		padding:60px 40px;
	}
}
@media screen and (max-width:640px){
	.bg-light-gray .con-wrap{
		padding:20px 15px;
	}

}

/* plan */
.table-flex{
	display:flex;
}
.table-flex > div{
	box-sizing:border-box;
	display:flex;
}
.table-flex .tbody-th{
	background-color:#22b695;
	color:#FFF;
	text-align:center;
}
.table-flex > div.tbody-th:nth-child(3n + 1){
	border-bottom:1px solid #FFF;
}
.table-flex > div.tbody-th:nth-last-child(3){
	border-bottom-width:0px;
}
.table-flex > div.tbody-td:nth-child(3n + 3){
	justify-content:center;
	align-items:flex-end;
	flex-direction:column;
}
@media screen and (min-width:1001px){
	.table-flex{
		margin-bottom:60px;
	}
	.table-flex.scroll-tit{
		display:none;
	}
}
@media screen and (min-width:641px) and (max-width:1000px){
	#plan-price .con-wrap .scroll-wrap{
		margin-bottom:60px;
		position:relative;
	}
	.table-flex{
		width:1000px;
	}
	.table-flex.scroll-tit,
	.table-flex.scroll-tit .tbody-th{
		width:200px;
	}
	.table-flex.scroll-tit{
		position:absolute;
		left:0;
		z-index:1;
		border-right-width:0;
	}
	.table-flex.scroll-tit .th-null{
		background-color:#FFF;
		padding:0;
	}
	.table-flex.scroll-tit .border-right-box{
		border-right:1px solid #d0d1d0;
		width: 100%;
		height: 100%;
		margin-right:-1px;
	}

	.table-flex.scroll-tit .tbody-th{
		border-bottom: 1px solid #FFF !important;!i;!;
	}
	#plan-price .scroll{
		overflow-x:scroll;
	}
}
@media screen and (min-width: 641px){
	.table-flex{
		flex-wrap:wrap;
		border-right:1px solid #d0d1d0;
		border-bottom:1px solid #d0d1d0;
	}
	.table-flex > div{
		padding:20px;
	}
	.table-flex .thead-th{
		border-top:1px solid #d0d1d0;
		border-left:1px solid #d0d1d0;
		text-align:center;
		background-color:#ebf8ed;
		color:#22b695;
		font-weight:bold;
	}
	.table-flex .tbody-td h4{
		display:none;
	}
	.table-flex > div:nth-child(1), .table-flex > div:nth-child(3n + 1){
		width:200px;
	}
	.table-flex > div:nth-child(2), .table-flex > div:nth-child(3n + 2){
		width:calc(100% - 520px);
	}
	.table-flex > div:nth-child(3), .table-flex > div:nth-child(3n + 3){
		width:320px;
	}
	.table-flex .tbody-td{
		border-top:1px solid #d0d1d0;
		border-left:1px solid #d0d1d0;
	}
	.table-flex > div{
		justify-content:center;
		align-items:center;
	}
}
@media screen and (max-width:640px){
	.table-flex{
		flex-direction:column;	
	}
	.table-flex.scroll-tit{
		display:none;
	}
	.table-flex > div{
		padding:10px;
	}
	.table-flex > .th-null{
		display:none;
	}
	.table-flex .thead-th{
		display:none;
	}
	.table-flex .tbody-th,
	.table-flex .tbody-td{
		width:100%;
	}
	.table-flex .tbody-th{
		justify-content:center;
	}
	.table-flex .tbody-td{
		border-left:1px solid #d0d1d0;
		border-right:1px solid #d0d1d0;
		flex-direction:column;
		justify-content:left;
		align-items:flex-start;
	}
	.tbody-td h4{
		background-color:#ebf7ed;
		color:#22b595;
		font-weight:normal;
		margin-top:0px;
		padding:10px;
		width:100%;
	}
	.table-flex > div.tbody-td:nth-child(3n + 3):not(:last-child){
		padding-bottom:20px;
		margin-bottom:40px;
		border-bottom:1px solid #d0d1d0;
	}
	.table-flex > div.tbody-td:last-child{
		padding-bottom:20px;
		border-bottom:1px solid #d0d1d0;
		margin-bottom:20px;
	}
}

/**
 * news
 */
.news-list-wrap {
	display: flex;
	flex-direction: column;
}
.news-list-wrap > div:nth-child(odd){
	background-color:#f2f2f2;
}
.news-list-wrap > div:nth-child(even){
	background-color:#FFFFFF;
}
.news-list-wrap .news-wrap{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
.news-list-wrap date{
	width: 120px;
	font-size:16px;
}
.news-list-wrap .icon{
	display:flex;
	align-items:center;
	justify-content:center;
}
.news-list-wrap .icon > span{
	background-color:#55b697;
	color:#FFF;
	line-height:1;
	font-size:14px;
	padding:5px 10px;
	width:100%;
	text-align:center;
	box-sizing:border-box;
}

.news-toggle{
	display:none;
}
.news-list-wrap .news-title-wrap{
	display:flex;
	align-items:center;
	cursor: pointer;
	transition:0.3s;
}
.news-list-wrap .news-title:hover{
	color:#797979;
}
.news-title-wrap > .news-title{
	width:calc(100% - 20px);
	position:relative;
	overflow:hidden;
	font-weight:normal;
}
.news-title-wrap > .news-title:before{
	position:absolute;
	display:block;
	content:'';
	width:100%;
	height:0px;
	border-bottom:1px solid #797979;
	bottom:0;
	transition:0.3s;
	left:-100%;
}
.news-title-wrap:hover > p:before{
	left:100%;
}
.news-title-wrap .arrow{
	width:10px;
	height:10px;
	border-right:3px solid #000;
	border-bottom:3px solid #000;
	transform:rotate(45deg);
	transition:0.3s;
}
.news-title-wrap:hover .arrow{
	border-right:3px solid #797979;
	border-bottom:3px solid #797979;
}
.news-toggle:checked ~ .news-title-wrap .arrow{
	transform:rotate(-135deg);
}
.news-list-wrap .news-body{
	display: grid;
	transition: grid-template-rows 0.5s;
	grid-template-rows: 0fr;
	padding-top:0;
	padding-bottom:0;
	transition:.3s;
}
.news-body .hidden{
	overflow:hidden;
}
.news-toggle:checked ~ .news-body{
	grid-template-rows: 1fr;
	padding-bottom:30px;
	transition:.3s;
}
@media screen and (min-width:641px){
	.news-wrap > *{
		padding:15px;
	}
	.news-list-wrap .icon{
		width: 120px;
	}
	.news-list-wrap .news-title-wrap{
		width: calc(100% - 240px);
	}
}
@media screen and (max-width:640px){
	.news-list-wrap .news-wrap{
		padding:10px;
	}
	.news-list-wrap .news-title-wrap{
		width: 100%;
	}
	.news-title-wrap > .news-title{
		margin-top:10px;
		margin-bottom:0;
	}
	.news-list-wrap .icon{
		width: 80px;
	}
	.news-list-wrap .news-body{
		margin-top:10px;
	}
}

/**
 * access
 */
#access .phone-number{
	padding:15px 0;
}
#access iframe{
	width:100%;
	max-width:100%;
	max-height:100%;
}

/**
 * review
 */
.review-wrap{
	display:flex;
	align-items:stretch;
	gap:40px;
	position: relative;
}
.review-wrap:nth-last-child(n + 2){
	border-bottom: 1px solid #6b6b6b;
}
.review-wrap .reviewer-wrap{
	text-align: center;
	display: flex;
}
.review-wrap .review{
	position:relative;
	width:100%;
	box-sizing:border-box;
	padding:20px;
	border:2px solid #ddcc8c;
	border-radius:7px;
	background-color:#fdfbea;
	z-index: 0;
}
@media screen and (min-width:641px){
	.review-wrap{
		margin-bottom: 50px;
	}
	.review-wrap:nth-last-child(n + 2){
		padding-bottom: 50px;
	}
	.review-wrap .reviewer-wrap{
		width: 140px;
		align-items: center;
		flex-direction: column;
		justify-content: center;
	}
	.review-wrap .review:before,
	.review-wrap .review:after{
		position:absolute;
		display:block;
		content:'';
		width:0;
		height:0;
		border-style:solid;
		border-width:10px 25px 10px 0;
		margin:auto;
		top:0;
		bottom:0;
	}
	.review-wrap .review:before{
		border-color:transparent #fdfbea transparent transparent;
		left:-21px;
		z-index:1;
	}
	.review-wrap .review:after{
		border-color:transparent #ddcc8c transparent transparent;
		left:-25px;
		z-index:0;
	}
}
@media screen and (max-width:640px){
	.review-wrap{
		margin-bottom: 25px;
	}
	.review-wrap:nth-last-child(n + 2){
		padding-bottom: 25px;
	}
	.review-wrap .reviewer-wrap{
		position:absolute;
		z-index:1;
		width:100%;
		top:10px;
		left:10px;
		flex-direction:row;
		justify-content:left;
		align-items:flex-end;
		gap:10px;
	}
	.review-wrap .reviewer-wrap img{
		width:80px;
		height: 100px;
	}
	#review .evaluation{
		margin-left:80px;
		margin-top: 40px;
		margin-bottom: 10px;
	}
	.review-wrap .review:before,
	.review-wrap .review:after{
		content:unset;
	}
}


/**
 * recruit
 */
#recruit .catchcopy {
	color:#3abb9d;
}

#recruit .guide-list-wrap{
	display:flex;
	align-items:flex-start;
}
#recruit h4{
	font-weight:normal;
	color:#0e5a48;
	margin:0;
	line-height:1;
}
#recruit h5{
	font-weight:normal;
	margin-top:0;
	line-height:1;
	letter-spacing:0.15em;
}
#recruit .guide{
	display:flex;
	flex-wrap:wrap;
	border-top:1px solid #b5b5b5;
	border-left:1px solid #b5b5b5;
}
#recruit .guide .tit,
#recruit .guide .body{
	box-sizing:border-box;
	border-bottom:1px solid #b5b5b5;
	border-right:1px solid #b5b5b5;
}
#recruit .guide .tit{
	background-color:#ebf8ed;
	letter-spacing:0.1em;
}
#recruit .btn-wrap{
	text-align:center;
}
#recruit .request-document{
	text-align:center;
	text-align:center;
	text-decoration:none;
	letter-spacing:.2em;
	color:#FFF;
	background-image: linear-gradient(45deg, #1bb89d, #4b8b18);
	display:inline-block;
	padding:10px;
	width:300px;
	border-radius:30px;
	box-shadow:2px 2px 2px rgba(0,0,0,.5);
	font-weight:bold;
	transition:0.3s;
	position:relative;
}
#recruit .request-document:hover{
	opacity:.8;
}
#recruit .request-document:before{
	position:absolute;
	display:block;
	content:'';
	width:10px;
	height:10px;
	border-right:2px solid #FFF;
	border-bottom:2px solid #FFF;
	transform:rotate(45deg);
	margin:auto;
	top:0;
	bottom:5px;
	left:50px;
}
@media screen and (min-width:641px){
	#recruit .catchcopy {
		font-size:36px;
		margin-top:30px;
		margin-bottom:30px;
	}
	#recruit .info {
		margin-bottom:60px;
	}
	#recruit .guide-list-wrap{
		gap:40px;
	}
	#recruit h4{
		font-size:36px;
		width: 300px;
	}
	#recruit h5{
		font-size:20px;
		margin-bottom:15px;
	}
	#recruit .guide{
		margin-bottom:50px;
	}
	#recruit .guide .tit,
	#recruit .guide .body{
		padding:20px;
	}
	#recruit .guide .tit{
		width:150px;
	}

	#recruit .guide .body{
		width:calc(100% - 150px);
	}
}
@media screen and (max-width:640px){
	#recruit .catchcopy {
		font-size:26px;
		line-height:1.2;
		margin-top:10px;
		margin-bottom:10px;
	}
	#recruit .info {
		margin-bottom:30px;
	}
	#recruit .guide-list-wrap{
		gap: 0px;
	}
	#recruit h4{
		font-size:24px;
		margin-bottom:10px;
		width: 100%;
	}
	#recruit h5{
		font-size:18px;
		margin-bottom: 10px;
	}
	#recruit .guide .tit,
	#recruit .guide .body{
		padding:10px;
	}
	#recruit .guide-list-wrap{
		flex-direction:column;
	}
	#recruit .guide{
		margin-bottom:25px;
		flex-direction:column;
	}
	#recruit .guide .tit{
		width:100%;
	}
	#recruit .guide .body{
		width:100%;
	}
}

/**
 * contact
 */
#contact h3{
	text-align:center;
	margin-top:0;
	width:100%;
}
#contact hr{
	background-color: #a9c5b3;
	border: none;
	height: 1px;
	width: 100%;
}
#contact .form-wrap{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
}
#contact .form-wrap .tit,
#contact .form-wrap .body{
	line-height:1;
}
#contact .require:after{
	display:inline-block;
	content:'必須';
	font-size:80%;
	margin-top:-2px;
	margin-left:15px;
	background-color:#ef537c;
	color:#FFF;
	padding:3px 7px 2px 7px;
	vertical-align:middle;
}
.inquiry-item{
	display:inline-flex;
	align-items:center;
	cursor:pointer;
	margin-right:30px;
	margin-bottom: 15px;
	gap:5px;
	transition:0.3s;
}
.inquiry-item:hover{
	color: #838282;
}
.inquiry-item:hover input{
	opacity:.6;
}
[name="inquiry-item[]"]{
	appearance: none;
	background-color:#FFF;
	border-radius: 0px;
	border:1px solid  #94a59b;
	color: #000;
	width:16px;
	height:16px;
	vertical-align:middle;
	transition: 0.3s;
	position:relative;
	display:inline-block;
}
[name="inquiry-item[]"]:checked{
	background-color:#1a716c;
}
[name="inquiry-item[]"]:checked:before {
	position:absolute;
	top: 1px;
	left: 4px;
	transform: rotate(50deg);
	width: 4px;
	height: 8px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	display:inline-block;
	content: '';
}
.form-wrap .notice{
	font-size:85%;
	color:#44614a;
}
.form-wrap .asterisk:before {
	content:'※';
}
.form-wrap .address-wrap{
	display:flex;
	flex-wrap:wrap;
	gap:20px 15px;
}
.form-wrap .get-addresss{
	background-color:#a1e1b1;
	border-width:0;
	outline-width:0;
	padding-left:15px;
	padding-right:15px;
	color:#000;
	text-decoration:none;
	display:flex;
	align-items:center;
}
.form-wrap .address{
	width:100%;
}
input[type=text],textarea{
	padding:10px;
	font-size:16px;
}
[name="zip1"]{
	width:75px;
}
[name="zip2"]{
	width:100px;
}
[name="address"],
[name="message"],
[name="name"],
[name="name-kana"],
[name="phone-number"],
[name="email"],
[name="check-email"]{
	width:100%;
}
[name="message"]{
	height:130px;
}
.form-wrap .btn-wrap{
	text-align:center;
	width: 100%;
}
.form-wrap .btn-wrap a{
	text-align:center;
	text-decoration:none;
	letter-spacing:.2em;
	color:#FFF;
	background-image: linear-gradient(45deg, #1bb89d, #4b8b18);
	display:inline-block;
	border-radius:30px;
	box-shadow:2px 2px 2px rgba(0,0,0,.5);
	font-weight:bold;
	transition:0.3s;
	position:relative;
}
.form-wrap .btn-wrap a:hover{
	opacity:.8;
}
.form-wrap .btn-wrap a:before{
	position:absolute;
	display:block;
	content:'';
	width:10px;
	height:10px;
	border-right:2px solid #FFF;
	border-bottom:2px solid #FFF;
	transform:rotate(-45deg);
	margin:auto;
	top:0;
	bottom:3px;
}
#shop-footer {
	text-align:center;
	border-top: 1px solid #000;
}
.footer-shop-nav-wrap{
	margin-bottom:60px;
}
.footer-shop-nav-list{
	display:flex;
	gap:40px min(3vw, 40px);
	justify-content:center;
	margin-bottom:40px;
}
.footer-shop-menu{
	color:#494949;
	text-decoration:none;
	transition:0.3s;
}
.footer-shop-menu:hover{
	color:#AAAAAA;
}
.footer-shop-name{
	margin-bottom:40px;
}
.fotter-anchor-top a{
	text-underline-offset:5px;
	color: #494949;
	transition:0.3s;
}
.fotter-anchor-top a:hover{
	color:#AAAAAA;
}
@media screen and (min-width:641px){
	#contact .con-wrap{
		padding-left:90px;

		padding-right:90px;
	}
	#contact .info{
		text-align:center;
	}
	#contact hr{
		margin-top: 80px;
		margin-bottom: 80px;
	}
	#contact .form-wrap .tit,
	#contact .form-wrap .body{
		padding:0 0 20px 0;
		margin-bottom: 20px;
	}
	#contact .form-wrap .tit{
		width: 270px;
	}
	#contact .form-wrap .body{
		width: calc(100% - 270px);
	}
	#contact .form-wrap hr{
		margin-top: 40px;
	}
	.form-wrap .btn-wrap a{
		padding:20px 100px;
	}
	.form-wrap .btn-wrap a:before{
		left:70px;
	}
}
@media screen and (max-width:640px){
	#contact{
		padding-bottom:40px;
	}
	#contact .con-wrap{
		padding-left:10px;
		padding-right:10px;
	}
	#contact h3{
		font-size:22px;
	}
	#contact .info{
		text-align:left;
	}
	#contact hr{
		margin-top: 30px;
		margin-bottom: 30px;
	}
	#contact .form-wrap .tit{
		padding:0 0 10px 0;
		
	}
	#contact .form-wrap .body{
		margin-bottom: 20px;
	}
	#contact .form-wrap{
		flex-direction:column;
	}
	#contact .form-wrap .tit{
		width: 100%;
	}
	#contact .form-wrap .body{
		width: 100%;
	}
	#contact .form-wrap hr{
		margin-top: 10px;
	}
	.form-wrap .btn-wrap a{
		padding:10px 40px;
	}
	.form-wrap .btn-wrap a:before{
		left:20px;
	}
	.inquiry-item{
		width:130px;
	}
}
/**
 * footer
 */
@media screen and (max-width:640px){
	.footer-shop-nav-list{
		flex-wrap:wrap;
		gap:10px 0px;
		font-size:13px;
	}
	.footer-shop-nav-list > a:nth-child(-n + 3){
		width: calc(100% / 3 - 20px);
	}
	.footer-shop-nav-list > a:nth-child(n + 4){
		width: calc(100% / 4);
	}
}
