@charset "utf-8";


/*  l-intro
--------------------------------------------------*/
.l-intro {
    padding-block: 16.0rem 12.0rem;
}
.intro-heading {
    font-size: 3.2rem;
    line-height: 1.75;
    letter-spacing: .3em;
	text-align: center;
	margin-bottom: 11.0rem;
}
.intro-nav {
	position: relative;
}
.intro-nav__item {
	flex: 1 auto;
}
.intro-nav__item a {
	position: relative;
	width: 100%;
	height: 8.0rem;
	font-size: 1.6rem;
	letter-spacing: 0;
	line-height: 1;
	color: #46886b;
	text-align: center;
}
.intro-nav__item a::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 100%;
	background: #46886b;
}
.intro-nav__item:last-of-type a::after {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	width: 1px;
	height: 100%;
	background: #46886b;
}
.intro-nav__item em {
	display: block;
	font-size: 1.625em;
	letter-spacing: .08em;
	margin-bottom: .4em;
}
@media (any-hover: hover){
	.intro-nav__item a {
		transition: background-color .3s linear;
	}
	.intro-nav__item a:hover {
		background-color: rgba(70, 136, 107, .1);
	}
}
@media screen and (max-width: 768px){
	.l-intro {
	    padding-block: 5.0rem 6.0rem;
	}
	.intro-inner {
		position: relative;
	}
	.intro-heading {
		font-size: 2.0rem;
		letter-spacing: .2em;
		margin-bottom: 5.0rem;
	}
	.intro-nav {
		width: 100%;
		border-top: solid 1px #46886b;
		border-bottom: solid 1px #46886b;
	}
	.intro-nav__item {
		flex: 0 50%;
	}
	.intro-nav__item:last-of-type {
		flex: 1 auto;
	}
	.intro-nav__item a {
		height: 7.2rem;
		font-size: 1.2rem;
		background-color: rgba(70, 136, 107, .1);
	}
	.intro-nav__item a::before {
		display: none;
	}
	.intro-nav__item:nth-of-type(even) a::before {
		display: block;
	}
	.intro-nav__item:last-of-type a::after {
		width: 100%;
		height: 1px;
	}
	.intro-nav__item:nth-of-type(n + 3) a::after {
		content: '';
		position: absolute;
		right: 0;
		top: 0;
		width: 100%;
		height: 1px;
		background: #46886b;
	}
}




/*  sec
--------------------------------------------------*/
.sec {
	padding-bottom: 14.0rem;
}
.sec-ttl {
	font-size: 10.0rem;
	line-height: 1;
	letter-spacing: .08em;
	color: #9ab19e;
	margin-bottom: 4.5rem;
}
.sec-contents {
	width: 100%;
	gap: 0 3.5rem;
}
.sec-contents + .sec-contents {
	margin-top: 6.5rem;
}
.sec-contents + .sec-contents.large {
	margin-top: 12.0rem;
}
.sec-contents__explain {
	width: 100%;
	font-size: 3.4rem;
	line-height: 1;
	letter-spacing: .24em;
	color: #46876b;
	margin-bottom: 5.0rem;
	overflow: hidden;
}
.sec-contents__explain span {
	position: relative;
	display: inline-block;
	padding-right: 4.0rem;
}
.sec-contents__explain span::after {
	content: '';
	position: absolute;
	left: 100%;
	top: 45%;
	width: 100vw;
	height: 1px;
	background: #46876b;
}
.sec-list {
	width: 100%;
	gap: 6.5rem	3.5rem;
}
.sec-list-twoThird {
	width: calc(66.666666% - 3.5rem);
}
.sec-list-oneThird {
	width: calc(33.333333% - 3.5rem);
}
.sec-list__item {
	width: calc((100% - 7.0rem) / 3);
}
.sec-list__item-large {
	width: calc(66.666666% - 3.5rem);
}
.sec-list__item-wide {
	width: 100%;
}
.sec-list-twoThird .sec-list__item,
.sec-list-oneThird .sec-list__item {
	width: 100%;
}
.sec-list__item__photo {
	width: 100%;
}
.sec-list__item__photo figure + figure {
	margin-top: 1.0rem;
}
.sec-list__item__heading {
	font-size: 2.2rem;
	line-height: 1.45;
	letter-spacing: .1em;
	color: #46886b;
	text-align: center;
	border: solid 1px #46886b;
	padding-block: .4rem .3rem;
	margin-bottom: 3.0rem;
}
.sec-list__item__heading small {
	font-size: .727272727272727em;
}
.sec-list__item__desc {
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: .1em;
	margin-top: 2.0rem;
}
.sec-list__item__desc span {
	display: block;
	font-size: 1.1rem;
	letter-spacing: .1em;
	margin-top: 1.0em;
}
@media screen and (max-width: 768px){
	.sec {
		padding-bottom: 7.0rem;
	}
	.sec-ttl {
		font-size: 3.6rem;
		margin-bottom: 3.0rem;
	}
	.sec-contents {
		gap: 0m;
	}
	.sec-contents + .sec-contents {
		margin-top: 2.5rem;
	}
	.sec-contents + .sec-contents.large {
		margin-top: 5.0rem;
	}
	.sec-contents__explain {
		width: 100%;
		font-size: 2.2rem;
		letter-spacing: .2em;
		margin-bottom: 2.5rem;
	}
	.sec-contents__explain span {
		padding-right: 2.0rem;
	}
	.sec-list {
		gap: 3.5rem	0;
	}
	.sec-list + .sec-list {
		margin-top: 4.5rem;
	}
	.sec-list-twoThird,
	.sec-list-oneThird,
	.sec-list__item,
	.sec-list__item-large {
		width: 100%;
	}
	.sec-list__item__heading {
		font-size: 1.8rem;
		margin-bottom: 2.0rem;
	}
	.sec-list__item__desc {
		font-size: 1.4rem;
		margin-top: 1.5rem;
	}
	.sec-list__item__desc span {
		font-size: 1.0rem;
		margin-top: .8em;
	}
}



/*  l-kitchen
--------------------------------------------------*/
.l-kitchen {
}