@charset "UTF-8";
@import url("https://use.typekit.net/ifq6wap.css");
.garamond {
	font-family: "garamond-premier-pro", serif;
	font-style: normal;
	font-weight: 400;
}
.ar { text-align: right !important;}
.al { text-align: left !important;}
.full { width: 100%;}
.dib { display: inline-block;}
.db { display: block!important;}
.inner {
	margin: auto;
	padding-right: 15px;
	padding-left: 15px;
	max-width: 930px;
}
.mb80 { margin-bottom: clamp(40px, 5.5556vw, 80px) !important;}
.mb70 { margin-bottom: 70px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb15 { margin-bottom: 15px !important;}
.c-purple { color: #8182ae;}
.bg-purple { 
	background-color: rgba(129, 130, 174, 0.15);
	background: rgba(129, 130,174, .15) url(../location/img/location-bg_pc.png) center 50px repeat-y;
	background-size: 100%;
}
.note { 
	font-size: 11px;
	line-height: 1.7;
}
.location-title {
	text-align: center;
	margin-bottom: 30px;
}
.location-title .ttl {
	position: relative;
	font-size: clamp(40px, 3.3333vw, 48px);
	line-height: 1.1;
	text-transform: uppercase;
	margin-bottom: clamp(40px, 4.8611vw, 70px);
	padding-bottom: 5px;
}
.location-title .ttl::before {
	background-color: #000000;
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	margin: auto;
	width: 100px;
}
.location-title .txt {
	font-size: 24px;
	line-height: 1.7;
	margin: 0 -10px;
}
.location-title .txt .sm {
	font-size: clamp(20px, 1.5278vw, 22px);
	line-height: 1.7;
}
.location-title .txt-normal {
	font-size: 15px;
	line-height: 1.8;
	margin-top: 20px;
}
.location-title sup {
	top: auto;
	bottom: 0;
	font-size: 10px;
}
.location-block { position: relative;}
.location-block + .location-block { margin-top: clamp(65px, 11.1111vw, 160px);}
.location-info { text-align: center;}
.location-info .txt {
	font-size: clamp(12px, 1.0417vw, 14px);
	line-height: 1.8;
}
.location-info .txt .sm {
	display: inline-block;
	font-size: clamp(10px, 0.7639vw, 11px);
	line-height: 1.4;
}
.location-info .txt .md {
	display: block;
	font-size: 120%;
	line-height: 1.5;
	text-align: center;
}
.location-info .txt .lg .sm { font-size: 12px;}
.location-info .txt .lg {
	display: block;
	font-size: 147%;
}
.location-info .line {
	border-bottom: 1px solid #7d7d7d;
	margin-bottom: 5px;
	padding: 0 0 5px;
}
@media screen and (max-width: 767px) {
	.bg-purple { 
		background: rgba(129, 130,174, .15) url(../location/img/location-bg_sp.png) center top repeat-y;
		background-size: 100%;
	}
	.location-title .txt-normal { margin-top: 35px;}
	.location-title .txt .sm { font-size: 22px;}
	.location-info .txt:not(.line) { text-align: left;}
	.location-info .txt .sm ~ .sm { display: block;}
	.location-info .txt { font-size: 15px;}
	.location-info .txt .sm { font-size: 11px;}
	.full-sp {
		margin-left: -15px;
		width: calc(100% + 30px);
	}
}
.grids {
	display: grid;
	padding: 0;
	gap: clamp(15px, 1.3889vw, 20px);
}
.cols2 { grid-template-columns: repeat(2, 1fr);}
.cols2 + .cols2 { margin-top: clamp(60px, 9.0278vw, 130px);}
.cols3 { grid-template-columns: repeat(3, 1fr);}
@media screen and (max-width: 767px) {
	.grids { gap: 30px;}
	.cols3,
	.cols2 { grid-template-columns: 1fr;}
}
.anchor-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin: 0 auto clamp(45px, 5.5556vw, 80px);
	padding: clamp(60px, 6.9444vw, 100px) 0 0;
	gap: 20px;
}
.anchor-list a {
	background-color: rgba(129, 130, 174, 0.15);
	color: #8182ae;
	display: block;
	padding: clamp(14px, 1.7361vw, 25px) 5px;
	transition: all 0.3s;
}
.anchor-list span {
	display: block;
	text-align: center;
}
.anchor-list .en { font-size: clamp(14px, 1.6667vw, 24px);}
.anchor-list .jp { font-size: clamp(10px, 1.0417vw, 15px);}
.anchor-list a:hover,
.anchor-list .active a {
	background-color: #8182ae;
	color: #fff;
}
.anchor-list .active a { pointer-events: none;}
.space-anchor {
	position: relative;
	transform: translateY(-50px);
}
@media screen and (max-width: 767px) {
	.anchor-list {
		grid-template-columns: repeat(2, 1fr);
		gap: 5px;
	}
}
.bg-flower {
	position: absolute;
	background-repeat: no-repeat;
    background-size: contain;
	opacity: .5;
}
.flower01 {
	background-image: url(../location/img/bg_flower01.png);
	width: 70%;
	height: 644px;
	max-width: 44vw;
	left: calc(-1 * (100vw - 900px) / 2);
	transform: translateX(-263px);
	background-position: top left;
}
.flower02 {
	background-image: url(../location/img/bg_flower02.png);
	width: 75%;
	height: 560px;
	max-width: 46.7vw;
	right: calc(-1 * (100vw - 900px) / 2);
	background-position: top right;
	transform: translateX(280px);
	top: 42px;
}
.flower03 {
	background-image: url(../location/img/bg_flower03.png);
	width: 81%;
    height: clamp(545px, 65.4167vw, 942px);
	left: calc(-1 * (100vw - 900px) / 2);
	transform: translateX(-338px);
	top: 175px;
	background-position: top left;
}
.flower04 {
	background-image: url(../location/img/bg_flower04.png);
	width: 75%;
	height: clamp(370px, 38.6111vw, 556px);
	max-width: 670px;
	right: calc(-1 * (100vw - 900px) / 2);
	top: 85px;
    transform: translatex(265px);
	background-position: top right;
}
.flower05 {
	background-image: url(../location/img/bg_flower05.png);
	width: 250px;
	height: 256px;
	left: -170px;
    top: 75px;
	background-position: top left;
}
.flower06 {
	background-image: url(../location/img/bg_flower06.png);
    width: 176px;
    height: 277px;
    right: -75px;
    background-position: top right;
    top: 0;
}
.shopping-block .flower01 { top: 12%;}
.shopping-block .flower02 { top: 14%;}
.shopping-block .flower03 { top: 64%;}
.shopping-block .flower04 { top: 59%;}
.entertainment-block .flower01 { top: -10%;}
.entertainment-block .flower02 { top: -8%;}
.entertainment-block .flower03 { top: 60%;}
.entertainment-block .flower04 { top: 56%;}
.season-block .flower01 { top: -10%;}
.season-block .flower02 { top: -8%;}
.season-block .flower03 { top: 62%;}
.season-block .flower04 { top: 55%;}
.gourmet-block .flower01 { top: 1.5%;}
.gourmet-block .flower01.pos01 { top: 87%;}
.gourmet-block .flower02 { top: 4%;}
.gourmet-block .flower02.pos01 { top: 89.5%;}
.gourmet-block .flower03 { top: 48.5%;}
.gourmet-block .flower04 { top: 44.5%;}
.living-block .flower01 { top: 0;}
.living-block .flower01.pos01 { top: 70%;}
.living-block .flower02 { top: 1.5%;}
.living-block .flower02.pos01 { top: 72%;}
.living-block .flower03 { top: 37.5%;}
.living-block .flower04 { top: 34%;}
@media screen and (max-width: 767px) {
	.flower01 {
		width: 200px;
        height: 205px;
        left: auto;
        right: -150px;
        max-width: initial;
        transform: rotate(180deg);
        top: -3px;
	}
	.flower03 {
		width: 176px;
		height: 227px;
		left: auto;
		right: -135px;
		transform: initial;
	}
	.flower04 {
		width: 200px;
        height: 165px;
        right: auto;
        left: -120px;
        top: 60px;
		transform: initial;
	}
	.flower04.bigger {
		width: 235px;
        height: 195px;
        right: -45px;
        left: auto;
        top: -70px;
	}
	.future-block .flower01.pos01 { top: 67%;}
	.history-block .flower04 { top: 45%;}
	.future-block .flower04.pos01 { top: 73%;}
	.history-block .flower01 { top: 45%;}
	.history-block .flower05.pos01 { top: 85%;}
	.history-block .flower06.pos01 { top: 77%;}
	.shopping-block .flower01 { top: 7.5%;}
	.shopping-block .flower01.pos01 { top: 39%;}
	.shopping-block .flower01.pos02 { top: 69%;}
	.shopping-block .flower04.pos01 { top: 28%;}
	.shopping-block .flower04.pos02 { top: 40%;}
	.shopping-block .flower04.pos03 { top: 71%;}
	.shopping-block .flower04.pos04 { top: 59%;}
	.shopping-block .flower04.pos05 { top: 88%;}
	.shopping-block .flower05 { top: 23%;}
	.shopping-block .flower05.pos01 { top: 53.5%;}
	.shopping-block .flower05.pos02 { top: 83%;}
	.shopping-block .flower06 { top: 20.5%;}
	.shopping-block .flower06.pos01 { top: 51%;}
	.shopping-block .flower06.pos02 { top: 82%;}
	.entertainment-block .flower01 { top: 2%;}
	.entertainment-block .flower01.pos01 { top: 45%;}
	.entertainment-block .flower01.pos02 { top: 87%;}
	.entertainment-block .flower04 { top: 4%;}
	.entertainment-block .flower04.pos01 { top: 28%;}
	.entertainment-block .flower04.pos02 { top: 45%;}
	.entertainment-block .flower04.pos03 { top: 71%;}
	.entertainment-block .flower04.pos04 { top: 90%;}
	.entertainment-block .flower05 { top: 21%;}
	.entertainment-block .flower05.pos01 { top: 64.5%;}
	.entertainment-block .flower06 { top: 18%;}
	.entertainment-block .flower06.pos01 { top: 61.5%;}	
	.season-block .flower01 { top: 17%;}
	.season-block .flower01.pos01 { top: 55%;}
	.season-block .flower04 { top: 3.5%;}
	.season-block .flower04.pos01 { top: 19.5%;}
	.season-block .flower04.pos02 { top: 42%;}
	.season-block .flower04.pos03 { top: 58%;}
	.season-block .flower04.pos04 { top: 80%;}
	.season-block .flower05 { top: -45px;}
	.season-block .flower05.pos01 { top: 35%;}
	.season-block .flower05.pos02 { top: 74%;}
	.season-block .flower06 { top: -120px;}
	.season-block .flower06.pos01 { top: 32%;}
	.season-block .flower06.pos02 { top: 70%;}
	.gourmet-block .flower01 { top: -5px;}
	.gourmet-block .flower01.pos01 { top: 39%;}
	.gourmet-block .flower01.pos02 { top: 80%;}
	.gourmet-block .flower04 { top: 30px;}
	.gourmet-block .flower04.pos01 { top: 28%;}
	.gourmet-block .flower04.pos02 { top: 42%;}
	.gourmet-block .flower04.pos03 { top: 65.5%;}
	.gourmet-block .flower04.pos04 { top: 81.5%;}
	.gourmet-block .flower05 { top: 20.5%;}
	.gourmet-block .flower05.pos01 { top: 61%;}
	.gourmet-block .flower05.pos02 { top: 98.5%;}
	.gourmet-block .flower06 { top: 18%;}
	.gourmet-block .flower06.pos01 { top: 57.5%;}
	.gourmet-block .flower06.pos02 { top: 95.5%;}
	.living-block .flower01 { top: -5px;}
	.living-block .flower01.pos01 { top: 26%;}
	.living-block .flower01.pos02 { top: 52%;}
	.living-block .flower01.pos03 { top: 78.5%;}
	.living-block .flower04 { top: 30px;}
	.living-block .flower04.pos01 { top: 18%;}
	.living-block .flower04.pos02 { top: 28%;}
	.living-block .flower04.pos03 { top: 44.5%;}
	.living-block .flower04.pos04 { top: 54.5%;}
	.living-block .flower04.pos05 { top: 71%;}
	.living-block .flower04.pos06 { top: 81%;}
	.living-block .flower05 { top: 13.5%;}
	.living-block .flower05.pos01 { top: 40%;}
	.living-block .flower05.pos02 { top: 66.5%;}
	.living-block .flower06 { top: 11.5%;}
	.living-block .flower06.pos01 { top: 38%;}
	.living-block .flower06.pos02 { top: 64.5%;}
}
/* intro-block */
.intro-block { padding: clamp(40px, 6.9444vw, 100px) 0;}
.intro-block .ttl {
	font-size: clamp(34px, 2.9167vw, 42px);
	line-height: 1.7;
	text-align: center;
}
/* overview-block */
.overview-block {
	padding: clamp(40px, 8.6806vw, 125px) 0 clamp(60px, 10.0694vw, 145px);
	overflow: hidden;
	position: relative;
}
.future-map {
	display: grid;
	align-items: center;
	grid-template-columns: 51% auto;
	gap: 30px;
}
.future-map .info-list { padding: 0;}
.future-map .info-list li + li {
	border-top: 1px solid;
	margin-top: 25px;
	padding-top: 20px;
}
.future-map .info-list .ttl {
	font-size: 22px;
	line-height: 1.2;
	margin-bottom: 5px;
	margin-right: calc(clamp(0px, 1.3889vw, 20px)*-1);
}
.future-map .info-list .ttl .sm {
	font-size: 68%;
	display: inline-block;
}
.future-map .info-list .txt {
	font-size: 15px;
	line-height: 1.8;
}
.future-map .desc .note { margin-top: 20px;}
.point-list { margin: 45px 0 50px;}
@media screen and (max-width: 767px) {
	.history-block .location-title .txt { font-size: 20px;}
	.future-map { 
		grid-template-columns: 1fr;
		gap: 5px;
	}
	.future-map .desc {
		display: flex;
		flex-direction: column;
	}
	.future-map .desc .note {
		order: 0;
		margin: 0 0 20px;
	}
	.future-map .info-list { order: 1;}
	.point-list {
		margin-right: auto;
		margin-left: auto;
		max-width: 81.5%;
	}
	.shopping-list { gap: 60px;}
}
/* category-block */
.category-block { 
	overflow: hidden;
	background: url(../location/img/location-bg_pc.png) center 50px repeat-y;
	background-size: 100%;
}
.category-block { padding: 0 0 clamp(60px, 6.9444vw, 100px);}
.season-list { row-gap: 35px;}
.gourmet-block .cols2 {
	align-items: flex-end;
	margin-right: auto;
	margin-left: auto;
	max-width: 795px;
	gap: 30px 25px;
	position: relative;
}
.gourmet-block .cols2 li.note {
	grid-column: 1/3;
	position: relative;
	top: calc(clamp(0px, 1.7361vw, 25px)*-1) ;
}
.gourmet-block .cols2 li.note a {
	color: #000000;
	transition: all .3s;
}
.gourmet-block .cols2 li.note a:hover { opacity: .7;}
@media screen and (max-width: 767px) {
	.category-block {
		background: url(../location/img/location-bg_sp.png) center top repeat-y;
		background-size: 100%;
	}
	.entertainment-list { gap: 15px;}
	.entertainment-list02 {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}
	.entertainment-list02 .item:nth-child(1) { grid-column: 1/3;}
	.gourmet-block .gourmet-list02,
	.gourmet-block .gourmet-list {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}
	.gourmet-block .gourmet-list li:nth-child(1) { grid-column: 1/3;}
	.gourmet-block .gourmet-list li:nth-child(2) { grid-column: 1/2;}
	.gourmet-block .gourmet-list li:nth-child(3) { grid-column: 1/3;}
	.gourmet-block .gourmet-list li:nth-child(4) { grid-area: 2/2/3/3;}
	.gourmet-block .gourmet-list02 li:nth-child(1) { grid-column: 1/3;}
	.gourmet-block .gourmet-list02 li:nth-child(2) { grid-column: 1/2;}
	.gourmet-block .gourmet-list02 li:nth-child(3) { grid-column: 2/3;}
	.gourmet-block .gourmet-list02 li:nth-child(4) { grid-column: 1/3;}
	.gourmet-block .cols2 li.note { 
		grid-area: 3/ 1/4/3;
		margin-top: 10px;
	}
	.gourmet-block .cols2 li.note p { text-align: right!important;}
}
/* living-block */
.living-block { padding: clamp(60px, 8.6806vw, 125px) 0 0;}
.living-info { overflow: hidden;}
.living-support { margin-bottom: clamp(50px, 6.9444vw, 100px);}
.living-support .box {
	background-color: #fff;
	margin: auto;
	padding: clamp(30px, 4.1667vw, 60px) clamp(15px, 3.8194vw, 55px);
	max-width: 550px;
}
.living-support .box .img { margin-bottom: clamp(10px, 2.0833vw, 30px);}
.living-support .box .location-info { margin-bottom: clamp(25px, 2.7778vw, 40px);}
.living-support .btn-more {
	background-color: #8182ae;
	color: #fff;
	display: block;
	font-size: 16px;
	text-align: center;
	margin: auto;
	padding: 15px 5px;
	max-width: 385px;
}
.living-brand { padding-bottom: clamp(20px, 2.7778vw, 40px);}
.living-brand .cap-image .cap.cap-under {
	display: block;
	padding-right: 5px;
}
.living-cap.cap-image .cap { top: calc(100% + 10px);}
@media screen and (max-width: 767px) {
	.living-list {
		margin: auto;
		max-width: 84%;
	}
	.living-support .box {
		margin-right: -15px;
		margin-left: -15px;
		width: calc(100% + 30px);
		max-width: initial;
	}
}
#sec-life { padding: clamp(0px, 6.5972vw, 95px) 0 0;}
.life-wrap {
	margin: 0 auto 0;
	width: calc(100% - 30px);
	max-width: 1000px;
}
.life-ttl {
	font-size: 24px;
	text-align: center;
	margin: 0 0 clamp(30px, 7.6389vw, 110px);
}
@media screen and (max-width: 767px) {
	.sec-life { padding-top: 0;}
	.life-wrap {
		margin: 0 auto 0;
		padding: 0 15px 0;
		width: 100%;
	}
}
.life-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	width: 100%;
	max-width: 855px;
	gap: 10px;
}
.life-col { width: calc(50% - 10px);}
.life-box-ttl {
	border-bottom: 1px solid #000;
	font-size: 12px;
	margin: 0 0 5px;
	padding: 0 0 5px;
}
.life-list {
	font-size: clamp(12px, 1.0417vw, 15px);
	line-height: 1.5;
	letter-spacing: -0.03em;
	margin: 0;
	padding: 0;
}
.life-list .sm {
	display: unset !important;
	font-size: 84%;
}
.life-list li {
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
}
.life-list li + li {
	border-top: 1px solid;
	margin-top: 5px;
	padding-top: 5px;
}
.life-list li span:nth-child(1) {
	display: inline-block;
	width: 72%;
}
.life-list li span:nth-child(2),
.life-list li span:nth-child(3),
.life-list li span:nth-child(4) {
	display: inline-block;
	text-align: right;
	width: 15%;
}
.life-map {
	margin: 0 auto clamp(45px, 4.8611vw, 70px);
	width: 100%;
	max-width: 1000px;
}
@media screen and (max-width: 767px) {
	.life-map {
		margin-left: -15px;
		width: 100vw;
	}
	.life-flex { display: block;}
	.life-col { width: 100%;}
	.life-list li + li {
		border-top: none;
		margin-top: 0;
		padding-top: 0;
	}
	.life-list { line-height: 1.8;}
}
@media screen and (max-width: 360px) {
	.life-list { font-size: 11px;}
}
.life-nav {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: center;
	margin: auto;
	padding: 0;
	max-width: 945px;
}
.life-nav li {
	background-color: #fff;
	cursor: pointer;
	position: relative;
	font-size: clamp(12px, 1.25vw, 18px);
	line-height: 1;
	text-align: center;
	padding: clamp(7px, 0.6944vw, 10px) 0;
}
.life-nav li::before {
	background-color: #000;
	content: "";
	display: block;
	visibility: hidden;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -1px;
	height: 100%;
	margin: auto;
	opacity: 0;
	width: calc(100% + 3px);
}
.life-nav li span {
	border: 1px solid #000;
	border-top: none;
	border-bottom: none;
	display: block;
	position: relative;
	z-index: 2;
	margin-right: -1px;
	margin-bottom: -1px;
	padding: 0 16px;
}
.life-nav .active::before {
	visibility: visible;
	z-index: 1;
	opacity: 1;
}
.life-nav .active { color: #fff;}
.life-content { padding: clamp(20px, 3.125vw, 45px) 0 0;}
.life-tab { display: none;}
.life-tab:first-child { display: block;}
@media screen and (max-width: 767px) {
	.life-nav { grid-template-columns: repeat(4, 1fr);}
}
/* MV text shadow */
.mv__txt1,
.mv__txt2 {
	position: relative;
	text-shadow:
		0 0 0 #485157,
		0 0 1px #485157,
		0 0 2px #485157,
		0 0 15px #485157;
	mix-blend-mode: multiply;
}
