@charset "utf-8";


/*
padding-block: 15.0rem;
padding-block: 7.0rem 7.0rem;
padding-block: 7.0rem 8.0rem;
*/





/*  l-intro
--------------------------------------------------*/
.intro-head {
	max-width: 940px;
}




/*  yotsuya-sec
--------------------------------------------------*/
.yotsuya-sec {
	position: relative;
	padding-block: 15.0rem;
}
.yotsuya-sec--even {
	background: #f2f2f2;
}
.yotsuya-sec__head {
	position: relative;
	width: min(95%, 1710px);
	margin-inline: auto 0;
}
.yotsuya-sec--even .yotsuya-sec__head {
	margin-inline: 0 auto;
	flex-direction: row-reverse;
}
.yotsuya-sec__detail {
	position: sticky;
	top: calc(var(--header-height) + 50px);
	width: calc(520 / 1710 * 100%);
}
.yotsuya-sec__photo {
	width: calc(1065 / 1710 * 100%);
}
@media screen and (max-width: 768px){
	.yotsuya-sec {
		padding-block: 7.0rem 7.0rem;
	}
	.yotsuya-sec__head {
		width: min(100%, 560px);
		margin-inline: auto !important;
	}
	.yotsuya-sec__detail {
		position: relative;
		top: 0;
		width: calc(320 / 380 * 100%);
		margin-inline: auto;
        margin-bottom: 4.5rem;
	}
	.yotsuya-sec__photo {
		width: 100%;
	}
}




/*  l-stature
--------------------------------------------------*/
.stature-photo__item1 {
	width: 100%;
	margin-bottom: 8.5rem;
}
.stature-photo__item2 {
	width: calc(320 / 1065 * 100%);
}
.stature-photo__item3 {
	width: calc(400 / 1065 * 100%);
	margin-right: calc(60 / 1065 * 100%);
	margin-top: calc(105 / 1065 * 100%);
}
.stature-history {
	position: relative;
	margin-top: 12.0rem;
	padding-bottom: 6.0rem;
	background: url('../../img/common/bg_diagonal.jpg') no-repeat center center/cover;
}
.stature-history::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 1px;
	background: var(--background-gradation-line);
	z-index: 1;
}
.stature-history__ttl {
	position: relative;
	width: fit-content;
	font-size: 2.1rem;
	padding-top: 3.5rem;
	padding-left: 2.0rem;
	z-index: 1;
}
.stature-history__ttl::before {
	content: '';
	position: absolute;
	left: 0;
	top: -1px;
	width: 100%;
	height: 1.4rem;
	background: var(--background-gradation);
}
.stature-history__box {
	width: calc(1380 / 1500 * 100%);
	margin-inline: auto;
}
.stature-history__detail {
	width: calc(610 / 1380 * 100%);
}
.stature-history__detail__heading {
	font-size: 2.5rem;
	letter-spacing: 0;
	line-height: 1.6;
	margin-bottom: 2.7rem;
}
.stature-history__detail__desc {
	font-size: 1.8rem;
	letter-spacing: 0;
	line-height: 2.22222222;
	text-align: justify;
}
.stature-history__photo {
	width: calc(710 / 1380 * 100%);
}
.stature-history__photo__item {
	width: calc(350 / 710 * 100%);
}
@media screen and (max-width: 768px){
	.stature-photo {
		justify-content: space-between !important;
	}
	.stature-photo__item1 {
		width: calc(350 / 380 * 100%);
		margin-bottom: 8.5rem;
	}
	.stature-photo__item2 {
		width: calc(160 / 380 * 100%);
	}
	.stature-photo__item3 {
		width: calc(190 / 380 * 100%);
		margin-top: 4.0rem;
	}
	.stature-history {
		margin-top: 10.0rem;
	}
	.stature-history__ttl {
		font-size: 1.8rem;
		padding-inline: 2.0rem;
		margin-bottom: 4.0rem;
	}
	.stature-history__box {
		width: 100%;
		padding-inline: 2.0rem;
	}
	.stature-history__detail {
		width: 100%;
		margin-bottom: 3.0rem;
	}
	.stature-history__detail__heading {
		font-size: 2.0rem;
		line-height: 1.9;
		margin-bottom: 3.0rem;
	}
	.stature-history__detail__desc {
		font-size: 1.6rem;
		line-height: 2.125;
	}
	.stature-history__photo {
		width: 100%;
		gap: 2.0rem;
	}
	.stature-history__photo__item {
		width: 100%;
	}
}




/*  l-nature
--------------------------------------------------*/
.nature-photo__item1 {
	width: 100%;
	margin-bottom: 6.0rem;
}
.nature-photo__item2 {
	width: calc(508 / 1065 * 100%);
	margin-left: calc(210 / 1065 * 100%);
}
.nature-photo__item3 {
	width: calc(292 / 1065 * 100%);
	margin-top: calc(-145 / 1065 * 100%);
	margin-left: calc(760 / 1065 * 100%);
}
.nature-photo__item4 {
	width: calc(292 / 1065 * 100%);
	margin-left: calc(405 / 1065 * 100%);
	margin-top: calc(-145 / 1065 * 100%);
}
@media screen and (max-width: 768px){
	.nature-photo__item1 {
		width: calc(350 / 380 * 100%);
		margin: 0 auto 4.0rem 0;
	}
	.nature-photo__item2 {
		width: calc(320 / 380 * 100%);
		margin: 0 auto 4.0rem;
	}
	.nature-photo__item3 {
		width: calc(160 / 380 * 100%);
		margin: 0 0 0 calc(220 / 380 * 100%);
	}
	.nature-photo__item4 {
		width: calc(160 / 380 * 100%);
		margin: calc(-90 / 380 * 100%) 0 0 calc(30 / 380 * 100%);
	}
}




/*  l-intelligence
--------------------------------------------------*/
.intelligence-photo__item {
	width: calc(406 / 1065 * 100%);
}
.intelligence-photo__item1 {
	width: 100%;
	margin-bottom: 6.0rem;
}
.intelligence-photo__item3 {
	margin-top: calc(210 / 1065 * 100%);
	margin-left: calc(40 / 1065 * 100%);
}
.intelligence-photo__item4 {
	margin-top: calc(-70 / 1065 * 100%);
}
.intelligence-photo__item5 {
	margin-top: calc(120 / 1065 * 100%);
	margin-left: calc(40 / 1065 * 100%);
}
@media screen and (max-width: 768px){
	.intelligence-photo {
		justify-content: space-between !important;
	}
	.intelligence-photo__item {
		width: calc(240 / 380 * 100%);
	}
	.intelligence-photo__item1 {
		width: calc(350 / 380 * 100%);
		margin: 0 0 4.0rem auto;
	}
	.intelligence-photo__item2 {
		margin: 0 auto 4.0rem 0;
	}
	.intelligence-photo__item3 {
		margin: 0 0 4.0rem auto;
	}
	.intelligence-photo__item4 {
		margin: 0 auto 4.0rem 0;
	}
	.intelligence-photo__item5 {
		margin: 0 0 4.0rem auto;
	}
}




/*  comfortable-sec
--------------------------------------------------*/
.comfortable-sec {
	position: relative;
	padding-block: 15.0rem;
}
.comfortable-sec + .comfortable-sec {
	margin-top: 3.0rem;
	border-top: solid 1px #81371b;
}
.comfortable-sec__head {
	position: sticky;
	top: calc(var(--header-height) + 50px);
	width: calc(418 / 1500 * 100%);
}
.comfortable-sec__head__ttl {
	font-size: 5.3rem;
	margin-bottom: 3.0rem;
}
.comfortable-sec__head__jpTtl {
	font-size: 1.7rem;
	line-height: 1.5;
	letter-spacing: -.05em;
}
.comfortable-sec__contents {
	width: calc(1082 / 1500 * 100%);
}
.comfortable-sec__box {
	position: relative;
}
.comfortable-sec__box + .comfortable-sec__box {
	margin-top: 4.0rem;
	padding-top: 7.5rem;
	border-top: solid 1px #666;
}
.comfortable-sec__box__detail {
	width: calc(330 / 1082 * 100%);
}
.comfortable-sec__shopname {
	font-size: 2.4rem;
	line-height: 1.5;
	letter-spacing: -.05em;
}
.comfortable-sec__shopname i {
	display: block;
	font-size: max(10px, 1.4rem);
	letter-spacing: 0;
}
.comfortable-sec__shopname span {
	display: block;
	font-size: max(10px, 1.4rem);
	letter-spacing: 0;
}
.comfortable-sec__box__detail__desc {
	font-size: 1.6rem;
	line-height: 1.88006875;
	letter-spacing: 0;
	text-align: justify;
	margin-top: 2.5rem;
}
.comfortable-sec__box__photo {
	width: calc(680 / 1082 * 100%);
}
.comfortable-sec__list {
	width: 100%;
	gap: 6.0rem 2.3rem;
}
.comfortable-sec__list__item {
	width: calc((100% - 2.3rem) / 2);
}
.comfortable-sec__list__item__photo {
	margin-bottom: 1.5rem;
}
.comfortable-sec__list__item .comfortable-sec__shopname {
	text-align: center;
}
@media screen and (max-width: 768px){
	.comfortable-sec {
		padding-block: 7.0rem 7.0rem;
	}
	.comfortable-sec__head {
		position: relative;
		top: 0;
		width: 100%;
		margin-bottom: 5.0rem;
	}
	.comfortable-sec__head__ttl {
		font-size: 4.0rem;
		margin-bottom: 1.5rem;
	}
	.comfortable-sec__contents {
		width: 100%;
	}
	.comfortable-sec__box + .comfortable-sec__box {
		margin-top: 4.0rem;
		padding-top: 3.5rem;
	}
	.comfortable-sec__box__detail {
		width: 100%;
	}
	.comfortable-sec__shopname {
		font-size: 2.0rem;
	}
	.comfortable-sec__shopname i {
		font-size: 1.2rem;
		margin-bottom: .2rem;
	}
	.comfortable-sec__shopname span {
		font-size: 1.2rem;
		margin-top: .2rem;
	}
	.comfortable-sec__box__detail__desc {
		font-size: 1.6rem;
		line-height: 2.125;
		margin-top: 1.5rem;
	}
	.comfortable-sec__box__detail__photo {
		margin-top: 3.5rem;
	}
	.comfortable-sec__box__photo {
		width: 100%;
		margin-top: 3.5rem;
	}
	.comfortable-sec__list {
		gap: 4.0rem 0;
	}
	.comfortable-sec__list__item {
		width: 100%;
	}
}




/*  l-shopping
--------------------------------------------------*/
.shopping-facility {
	margin-top: 2.8rem;
}
.shopping-facility__heading {
	width: 100%;
	font-size: 1.4rem;
	letter-spacing: 0;
	padding-bottom: 1.0rem;
	margin-bottom: 1.0rem;
	border-bottom: solid 1px var(--black);
}
.shopping-facility__list {
	width: 100%;
}
.shopping-facility__list__item {
	position: relative;
	font-size: 1.6rem;
	line-height: 1.63006875;
	letter-spacing: 0;
	padding-left: 1.0em;
}
.shopping-facility__list__item i {
	position: absolute;
	left: 0;
	top: 0;
	color: #998675;
}
.shopping-sec__logo {
	max-width: 290px;
	margin-bottom: 2.0rem;
}
.shopping-sec__logo2 {
	max-width: 317px;
	margin-top: 5.5rem;
}
.l-shopping .comfortable-sec__box2 .shopping-facility__list {
	width: calc(100% - 8.0rem);
}
.l-shopping .comfortable-sec__box2 .shopping-facility__logo {
	width: 6.0rem;
}
@media screen and (max-width: 768px){
	.shopping-facility {
    margin-top: 3.5rem;
	}
	.shopping-facility__list__item {
		font-size: 1.4rem;
	}
	.shopping-sec__logo {
		max-width: 100%;
		width: 80%;
		margin-inline: auto;
		margin-bottom: 1.5rem;
	}
	.shopping-sec__logo2 {
		margin-top: 3.5rem;
	}
}



/*  l-lifeInfomation
--------------------------------------------------*/
.l-lifeInfomation{
	padding-block: 13.0rem 15.0rem;
	background: url('../../img/common/bg_diagonal.jpg') no-repeat center center/cover;
}
.lifeInfomation-ttl {
	font-size: 6.5rem;
	text-align: center;
    margin-bottom: 9.0rem;
}
.lifeinfo__content__tabs {
	position: relative;
}
.lifeinfo__content__tablist {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .4rem;
	margin-bottom: 6.0rem;
}
.lifeinfo__content__tab {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: calc((100% - 2.0rem) / 6);
	height: 60px;
	font-size: 2.4rem;
	line-height: 1.24;
	letter-spacing: .05em;
	text-align: center;
	cursor: pointer;
    padding-bottom: .1em;
    border-bottom: solid 1px #b3b3b3;
}
.lifeinfo__content__tab::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 100%;
	height: 5px;
	background: linear-gradient(90deg, rgba(228, 203, 172, 1) 0%, rgba(153, 135, 112, 1) 100%);
	opacity: 0;
	z-index: 1;
}
.lifeinfo__content__tab.active::after {
	opacity: 1;
}
.lifeinfo__content__tabpanel.active {
	display: flex;
	flex-wrap: wrap;
	height: 700px;
}
.lifeinfo__content__map {
	width: calc(1090 / 1500 * 100%);
	height: 100%;
}
.lifeinfo__content__list {
	flex: 1;
	height: 100%;
	box-sizing: border-box;
	padding: 0;
	background: var(--white);
	overflow-y: auto;
	/*scrollbar-color: #E6E6E6 #fff;*/
}
.lifeinfo__content__item {
	position: relative;
}
.lifeinfo__content__item + .lifeinfo__content__item {
	border-top: 1px solid rgba(0, 0, 0, .1);
}
.lifeinfo__content__btn {
	cursor: pointer;
	position: relative;
	text-align: left;
	padding: 2.8rem 5.5rem 3.0rem;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	border: none;
	outline: none;
	background: none;
	cursor: pointer;
	width: 100%;
}
.lifeinfo__content__btn:focus-visible {
    outline: auto;
}
.lifeinfo__content__num {
	display: block;
	position: absolute;
	left: 3.0rem;
	top: 3.0rem;
	width: 1.8rem;
	height: 1.8rem;
	border-radius: 50%;
	overflow: clip;
	background: linear-gradient(90deg, rgba(228, 203, 172, 1) 0%, rgba(153, 135, 112, 1) 100%);
}
.lifeinfo__content__name {
	display: block;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: .1em;
	color: #333;
}
.lifeinfo__content__data {
	display: block;
	font-size: 1.4rem;
	letter-spacing: .1em;
	line-height: 1.5;
	color: #333;
	text-align: right;
	flex: 1 auto;
}
@media (any-hover: hover){
	.lifeinfo__content__tab::after {
		transition: .3s opacity linear;
	}
	.lifeinfo__content__tab:hover::after {
		opacity: 1;
	}
}
@media screen and (min-width: 620px) and (max-width: 1024px){
  .lifeinfo__content__tabpanel.active {
	height: 400px;
  }
  .lifeinfo__content__map {
    width: 50%;
  }
}
@media screen and (max-width: 768px){
	.l-lifeInfomation{
		padding-block: 6.0rem 7.0rem;
	}
	.lifeInfomation-ttl {
		font-size: 4.0rem;
        margin-bottom: 5.0rem;
	}
	.lifeinfo__content__tabs {
        width: 100%;
        z-index: 2;
	}
	.lifeinfo__content__tablist {
        width: calc(340 / 380 * 100%);
		gap: 0 1.0rem;
		margin-inline: auto;
		margin-bottom: 3.0rem;
	}
	.lifeinfo__content__tab {
		font-size: 1.4rem;
		width: calc((100% - 1.0rem) / 2);
		height: 4.0rem;
	}
	.lifeinfo__content__list {
		padding-inline: 1.0rem;
	}
	.lifeinfo__content__btn {
		padding: 1.0rem 0 1.1rem 3.0rem;
	}
	.lifeinfo__content__num {
		top: 1.2rem;
		left: 0;
		width: 1.6rem;
		height: 1.6rem;
	}
	.lifeinfo__content__name {
		font-size: 1.3rem;
		line-height: 1.6;
	}
	.lifeinfo__content__data {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 619px){
	.lifeinfo__content__tabpanel.active{
		height: auto;
	}
	.lifeinfo__content__map {
		width: 100%;
		height: 240px;
	}
	.lifeinfo__content__list {
		flex: 1 1 100%;
		height: 230px;
		padding: 2.0rem;
	}

}

