@charset "utf-8";
/* =================================================
Foundation
================================================= */
:root {
	--font-family-min: "Shippori Mincho", '游明朝','Yu Mincho', '游明朝体', 'YuMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	--font-family-pf: "Playfair Display", serif;
	--font-family-cz: "Cinzel", serif;

	--block-md: 100px;
	--inline-md: 100px;

	--color-main: #c2bebe;
	--color-a: #3d3d3d;
	--color-c: #e6e0d3;
	--color-g: #384232;
}
@media screen and (max-width: 1440px) {
	:root {
		--block-md: 80px;
		--inline-md: 80px;
	}
}
@media screen and (max-width: 1280px) {
	:root {
		--inline-md: 50px;
	}
}
@media screen and (max-width: 767px) {
	:root {
		--inline-md: 30px;
	}
}

/* Base
------------------------------------------------- */
* {
	font-weight: 400;
	font-style: normal;
	font-family: var(--font-family-min);
	margin: 0;
	padding: 0;
	line-height: 2.25;
	letter-spacing: .1em;
	color: var(--color-main);
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}
html {
	font-size: 62.5%;
}
body {
	font-size: 16px;
	font-size: 1.6rem;
	word-wrap: break-word;
	overflow-wrap: break-word;
	font-display: swap;
	background: #181616;
	overflow-x: hidden;
}
@media screen and (max-width: 767px) {
	* {
		line-height: 1.8;
	}
	body {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 374px) {
	html {
		font-size: 2.667vw;
	}
}
html.is-overflow,
body.is-overflow {
	width: 100%;
	position: fixed !important;
	overflow: hidden;
}
img {
	border: 0;
	vertical-align: bottom;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}


/* =================================================
Animation
================================================= */
@keyframes zoom {
	0% {
		transform: scale(1.15);
	}
	100% {
		transform: scale(1);
	}
}
@keyframes blur {
	0% {
		opacity: 0;
		filter: blur(6px);
	}
	100% {
		opacity: 1;
		filter: blur(0);
	}
}
@keyframes gnavbg {
	0% {
		background-position: -250px center;
	}
	100% {
		background-position: -450px center;
	}
}
@keyframes hide {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
.-blur {
	opacity: 0;
}
.fv-blur {
	opacity: 0;
	animation: blur .88s .3s forwards;
}
.js-effect__blur {
	animation: blur .88s .3s forwards;
}


/* =================================================
Script
================================================= */
/* Slider */
.slick-dotted.slick-slider {
	margin-bottom: 0;
}
.slick-dots {
	font-size: 0;
}
.slick-dots li {
	width: 10px;
	height: 10px;
}
.slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
	background: #181616;
	border: 1px solid var(--color-a);
	border-radius: 100%;
}
.slick-dots li.slick-active button {
	background: var(--color-a);
}
.slick-dots li button:before {
	display: none;
}


/* =================================================
Layout
================================================= */
#l-container {
	overflow: hidden;
}

/* Header
------------------------------------------------- */
.l-header {
	width: 100%;
	padding: 95px var(--inline-md) 0;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	transition: padding .5s ease-in-out;
	opacity: 0;
	animation: blur .88s forwards;
}
.l-header:after {
	width: 100%;
	height: 100%;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background-color: rgba(41, 40, 40, 0);
	transition: background-color .5s ease-in-out;
}
.l-header__logo {
	width: 240px;
	transition: width .5s ease-in-out;
}
.l-header__logo a {
	display: block;
	font-size: 0;
}
.l-header__logo a img {
	width: 100%;
}
.l-header__btn {
	margin-right: 140px;
	transition: transform .5s ease-in-out;
}

.l-header.is-small {
	padding: 15px var(--inline-md);
}
.l-header.is-small:after {
	background-color: rgba(41, 40, 40, 1);
}
.l-header.is-small .l-header__logo {
	width: 180px;
}
.l-header.is-small .l-header__btn {
	transform: translateY(13px);
}
@media screen and (max-width: 1280px) {
	.l-header {
		padding: 70px var(--inline-md) 0;
	}
	.l-header__logo {
		width: 180px !important;
	}
	.l-header__btn {
		margin-right: 110px;
	}
}
@media screen and (max-width: 1024px) {
	.l-header {
		padding: 55px var(--inline-md) 0;
	}
	.l-header__logo {
		width: 144px !important;
	}
	.l-header__btn {
		margin-right: 88px;
	}
	.l-header.is-small .l-header__btn {
		transform: translateY(7px);
	}
}
@media screen and (max-width: 767px) {
	.l-header {
		--inline-md: 20px;
		padding: 15px var(--inline-md) 0;
	}
	.l-header__logo {
		width: 115px !important;
	}
	.l-header__btn {
		margin: 2px 55px 0 0;
	}
	.l-header.is-small .l-header__btn {
		transform: translateY(0);
	}
}


/* Footer
------------------------------------------------- */
.l-footer {
	padding-block: var(--block-md);
	padding-inline: var(--inline-md);
	background: #181616;
}
.l-footer__cont {
	display: flex;
	justify-content: space-between;
}
.l-footer__logo {
	width: 240px;
	margin-bottom: 80px;
}
.l-footer__logo a {
	display: block;
	font-size: 0;
}
.l-footer__logo a img {
	width: 100%;
}
.l-footer__add {
	margin-bottom: 5px;
	letter-spacing: .2em;
	line-height: 1;
}
.l-footer__tel,
.l-footer__tel a,
.l-footer__tel span {
	display: inline-block;
	line-height: 1;
}
.l-footer__tel {
	margin-bottom: 30px;
	font-size: 1.4rem;
}
.l-footer__tel a {
	font-size: 2rem;
	transition: color .5s ease-in-out;
}
.l-footer__tel span {
	margin-left: 10px;
	font-size: 1.4rem;
}
.l-footer__tel-area {
	display: none;
}
.l-footer__btn {
	margin-bottom: 50px;
}
.l-footer__biztime {
	display: none;
}
.l-footer__insta {
	width: 20px;
	aspect-ratio: 1;
}
.l-footer__insta a {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
}
.l-footer__insta a:after {
	width: 100%;
	height: 100%;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: url(../images/ico_insta_w.png) no-repeat 0 0 / 100%;
	opacity: 0;
	transition: opacity .5s ease-in-out;
}
.l-footer__insta img {
	width: 100%;
}
@media (hover: hover) and (pointer: fine) {
	.l-footer__tel a:hover {
		color: #fff;
	}
	.l-footer__insta a:hover:after {
		opacity: 1;
	}
}

.l-footer-nav__main,
.l-footer-nav__sub {
	display: flex;
	justify-content: flex-end;
}
.l-footer-nav__main {
	margin-bottom: 40px;
	gap: 0 25px;
}
.l-footer-nav__sub {
	gap: 0 20px;
}
.l-footer-nav-main__li a,
.l-footer-nav-sub__li a {
	display: block;
	font-family: var(--font-family-pf);
	line-height: 1;
	transition: color .5s ease-in-out;
}
.l-footer-nav-main__li a {
	font-size: 1.8rem;
}
.l-footer-nav-sub__li a {
	padding-left: 20px;
	position: relative;
	font-size: 1.3rem;
}
.l-footer-nav-sub__li a:before {
	width: 10px;
	height: 1px;
	content: '';
	position: absolute;
	top: 7px;
	left: 0;
	background: var(--color-a);
	transition: background-color .5s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.l-footer-nav-main__li a:hover,
	.l-footer-nav-sub__li a:hover {
		color: #fff;
	}
	.l-footer-nav-sub__li a:hover:before {
		background: #fff;
	}
}

.l-footer__copy {
	margin-top: -20px;
	margin-left: auto;
	font-family: var(--font-family-pf);
	font-size: 1.2rem;
	line-height: 1.75;
	text-align: right;
	width: fit-content;
}

@media screen and (max-width: 1024px) {
	.l-footer__logo {
		width: 190px;
		margin-bottom: 60px;
	}
	.l-footer-nav__main {
		margin-bottom: 30px;
	}
	.l-footer-nav-main__li a {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 960px) {
	.l-footer {
		padding-block: var(--block-md) 30px;
	}
	.l-footer__info {
		margin-bottom: 60px;
		text-align: center;
	}
	.l-footer__logo {
		margin-bottom: 50px;
		margin-inline: auto;
	}
	.l-footer__btn {
		margin-bottom: 30px;
		margin-inline: auto;
	}
	.l-footer__insta {
		margin-inline: auto;
	}
	.l-footer__cont {
		flex-direction: column-reverse;
		align-items: center;
	}
	.l-footer__nav {
		margin-bottom: 60px;
	}
	.l-footer-nav__main,
	.l-footer-nav__sub {
		justify-content: center;
	}
	.l-footer__copy {
		margin-top: 0;
		text-align: center;
	}
}
@media screen and (max-width: 767px) {
	.l-footer {
		--block-md: 60px;
	}
	.l-footer__logo {
		width: 150px;
	}
	.l-footer__nav {
		margin-bottom: 50px;
	}
	.l-footer-nav__main,
	.l-footer-nav__sub {
		flex-wrap: wrap;
		gap: 15px 20px;
	}
	.l-footer-nav-main__li a {
		font-size: 1.4rem;
	}
	.l-footer-nav-sub__li a {
		font-size: 1.2rem;
	}
	.l-footer__btn {
		margin-bottom: 40px;
	}
	.l-footer__tel.-pc {
		display: none;
	}
	.l-footer__tel-area {
		margin-bottom: 30px;
		display: block;
	}
	.l-footer__tel.-sp {
		width: 150px;
		margin-bottom: 5px;
		margin-inline: auto;
	}
	.l-footer__tel.-sp a {
		width: 100%;
		padding-block: 5px 8px;
		display: block;
		font-family: var(--font-family-pf);
		font-size: 1.6rem;
		line-height: 1;
		background: rgba(194, 190, 190, 0);
		border: 1px solid;
		border-radius: 15px;
		transition: all .5s ease-in-out;
	}
	.l-footer__add {
		margin-bottom: 15px;
	}
	.l-footer__biztime {
		display: block;
		font-size: 1.3rem;
		text-align: center;
	}
	.l-footer__copy {
		font-size: 1rem;
	}
}
@media screen and (max-width: 600px) {
	.l-footer__biztime {
		font-size: 1.2rem;
	}
}
@media (hover: hover) and (pointer: fine) {
	.l-footer__tel.-sp a:hover {
		color: var(--color-g);
		background: rgba(194, 190, 190, 1);
	}
}


/* =================================================
Object
================================================= */
/*---------- common ----------*/
.c-cont-body {
	padding-block: 180px 200px;
}
@media screen and (max-width: 1440px) {
	.c-cont-body {
		padding-block: 120px 200px;
	}
}
@media screen and (max-width: 1024px) {
	.c-cont-body {
		padding-block: 100px 150px;
	}
}
@media screen and (max-width: 960px) {
	.c-cont-body {
		padding-block: 80px 100px !important;
	}
}

/*---------- コンテンツ幅 ----------*/
.c-cont-md {
	padding-inline: var(--inline-md);
}
@media screen and (max-width: 1280px) {
	.c-cont-md {
		--inline-md: 50px;
	}
}
@media screen and (max-width: 1024px) {
	.c-cont-md {
		--inline-md: 40px;
	}
}
@media screen and (max-width: 767px) {
	.c-cont-md {
		--inline-md: 30px;
	}
}

/*----- Title -----*/
/* Page Title */
.c-page-mv {
	width: 100%;
	height: 100vh;
	height: 100svh;
	position: relative;
	overflow: hidden;
}
.c-page-ttl {
	position: absolute;
	bottom: var(--block-md);
	left: var(--inline-md);
	z-index: 1;
	opacity: 0;
	animation: blur .88s forwards;
}
.c-page-ttl__en,
.c-page-ttl__ja {
	display: block;
	color: var(--color-c);
	line-height: 1;
}
.c-page-ttl__en {
	margin-bottom: 25px;
	font-family: var(--font-family-pf);
	font-size: 8rem;
}
.c-page-ttl__ja {
	font-size: 1.8rem;
	letter-spacing: .3em;
}
.c-page-ttl__img {
	width: 100%;
	height: 100vh;
	height: 100svh;
	overflow: hidden;
	opacity: 0;
	animation: blur 1.88s forwards;
}
.c-page-ttl__img > div {
	width: 100%;
	height: 100%;
}
.c-page-ttl__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1440px) {
	.c-page-ttl__en {
		font-size: 6.5rem;
	}
}
@media screen and (max-width: 1280px) {
	.c-page-ttl {
		--block-md: 50px;
	}
	.c-page-ttl__en {
		font-size: 5rem;
	}
}
@media screen and (max-width: 1024px) {
	.c-page-ttl__en {
		margin-bottom: 20px;
		font-size: 4rem;
	}
	.c-page-ttl__ja {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.c-page-ttl {
		--block-md: 30px;
	}
	.c-page-ttl__en {
		margin-bottom: 15px;
		font-size: 3rem;
	}
	.c-page-ttl__ja {
		font-size: 1.4rem;
	}
}

/* Page Title Sm */
.c-page-mv-sm {
	height: 310px;
	margin-top: 290px;
	display: flex;
	align-items: center;
	border: 1px solid #3d3d3d;
	border-right: none;
	border-left: none;
	opacity: 0;
	animation: blur .88s forwards;
}
.c-page-ttl-sm,
.c-page-ttl__img-sm {
	width: 50%;
}
.c-page-ttl-sm {
	padding-inline: var(--inline-md);
}
.c-page-ttl__en-sm,
.c-page-ttl__ja-sm {
	display: block;
	color: var(--color-c);
	line-height: 1;
}
.c-page-ttl__en-sm {
	margin-bottom: 25px;
	font-family: var(--font-family-pf);
	font-size: 8rem;
	text-transform:uppercase;
}
.c-page-ttl__ja-sm {
	font-size: 1.8rem;
	letter-spacing: .3em;
}
.c-page-ttl__img-sm {
	height: 100%;
	overflow: hidden;
}
.c-page-ttl__img-sm > div {
	height: 100%;
}
.c-page-ttl__img-sm img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1440px) {
	.c-page-mv-sm {
		margin-top: 230px;
	}
	.c-page-ttl__en-sm {
		font-size: 6.5rem;
	}
}
@media screen and (max-width: 1280px) {
	.c-page-mv-sm {
		height: 250px;
		margin-top: 180px;
	}
	.c-page-ttl__en-sm {
		font-size: 5rem;
	}
}
@media screen and (max-width: 1024px) {
	.c-page-mv-sm {
		height: 200px;
		margin-top: 150px;
	}
	.c-page-ttl__en-sm {
		margin-bottom: 20px;
		font-size: 4rem;
	}
	.c-page-ttl__ja-sm {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 960px) {
	.c-page-mv-sm {
		height: auto;
		flex-direction: column;
	}
	.c-page-ttl-sm,
	.c-page-ttl__img-sm {
		width: 100%;
	}
	.c-page-ttl-sm {
		margin-bottom: 30px;
		padding-top: 30px;
	}
	.c-page-ttl__img-sm {
		height: 200px;
	}
}
@media screen and (max-width: 767px) {
	.c-page-mv-sm {
		height: auto;
		margin-top: 70px;
	}
	.c-page-ttl__en-sm {
		margin-bottom: 15px;
		font-size: 3rem;
	}
	.c-page-ttl__ja-sm {
		font-size: 1.4rem;
	}
}

/* Section Title */
.c-sec-ttl {
	margin-bottom: 60px;
	text-align: center;
}
.c-sec-ttl-sm {
	text-align: left;
}
.c-sec-ttl.-tp-sec {
	text-align: left;
}
.c-sec-ttl__en,
.c-sec-ttl__ja {
	display: block;
	color: var(--color-c);
	line-height: 1;
}
.c-sec-ttl__en {
	margin-bottom: 20px;
	font-family: var(--font-family-pf);
	font-size: 4.2rem;
}
.c-sec-ttl-sm .c-sec-ttl__en {
	font-size: 4rem;
}
.c-sec-ttl02 .c-sec-ttl__en {
	font-size: 3.2rem;
}
.c-sec-ttl__ja {
	font-size: 1.5rem;
	letter-spacing: .3em;
}
@media screen and (max-width: 1024px) {
	.c-sec-ttl {
		margin-bottom: 50px;
	}
	.c-sec-ttl__en {
		font-size: 3.5rem !important;
	}
}
@media screen and (max-width: 767px) {
	.c-sec-ttl {
		margin-bottom: 50px;
	}
	.c-sec-ttl__en {
		margin-bottom: 15px;
		font-size: 2.8rem !important;
	}
	.c-sec-ttl__ja {
		font-size: 1.3rem;
		letter-spacing: .2em;
	}
}
@media screen and (max-width: 600px) {
	.c-sec-ttl {
		margin-bottom: 35px;
	}
	.c-sec-ttl__en {
		font-size: 2.4rem !important;
	}
	.c-sec-ttl__ja {
		font-size: 1.2rem;
		letter-spacing: .1em;
	}
}

/* Other Title */

/*----- Burger -----*/
.c-gnav-btn {
	width: 100px;
	aspect-ratio: 1;
	position: fixed;
	top: 60px;
	right: var(--inline-md);
	z-index: 3;
	transition: all .5s ease-in-out;
	opacity: 0;
	animation: blur .88s forwards;
}
.c-gnav-trigger {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
	cursor: pointer;
}
.c-gnav-trigger span {
	width: 100%;
	height: 2px;
	display: inline-block;
	position: absolute;
	left: 0;
	background: var(--color-c);
	transition: all .2s ease-in-out;
}
.c-gnav-trigger span:nth-of-type(1) {
	top: 44px;
}
.c-gnav-trigger span:nth-of-type(2) {
	top: 55px;
}
.c-gnav-btn.is-small {
	height: 86px;
	top: 0;
}
.is-small .c-gnav-trigger span:nth-of-type(1) {
	top: 38px;
}
.is-small .c-gnav-trigger span:nth-of-type(2) {
	top: 48px;
}
@media (hover: hover) and (pointer: fine) {
	.c-gnav-trigger:hover span:nth-of-type(1) {
		width: 85%;
	}
	.c-gnav-trigger:hover span:nth-of-type(2) {
		width: 70%;
	}
}
.is-open .c-gnav-trigger span {
	width: 100% !important;
}
.is-open .c-gnav-trigger span:nth-of-type(1) {
	transform: translateY(5px) rotate(13deg);
}
.is-open .c-gnav-trigger span:nth-of-type(2) {
	transform: translateY(-6px) rotate(-13deg);
}
@media screen and (max-width: 1280px) {
	.c-gnav-btn {
		width: 80px;
		top: 45px;
	}
	.c-gnav-trigger span:nth-of-type(1) {
		top: 35px;
	}
	.c-gnav-trigger span:nth-of-type(2) {
		top: 45px;
	}
}
@media screen and (max-width: 1024px) {
	.c-gnav-btn {
		width: 64px;
		top: 36px;
	}
	.c-gnav-trigger span:nth-of-type(1) {
		top: 28px;
	}
	.c-gnav-trigger span:nth-of-type(2) {
		top: 38px;
	}
	.c-gnav-btn.is-small {
		height: 75px;
	}
	.is-small .c-gnav-trigger span:nth-of-type(1) {
		top: 33px;
	}
	.is-small .c-gnav-trigger span:nth-of-type(2) {
		top: 43px;
	}
}
@media screen and (max-width: 767px) {
	.c-gnav-btn {
		width: 36px;
		top: 13px !important;
		right: 20px;
	}
	.c-gnav-trigger span:nth-of-type(1) {
		top: 13px !important;
	}
	.c-gnav-trigger span:nth-of-type(2) {
		top: 23px !important;
	}
	.c-gnav-btn.is-small {
		height: auto;
		aspect-ratio: 1;
	}
	.is-open .c-gnav-trigger span:nth-of-type(2) {
		transform: translateY(-5px) rotate(-13deg);
	}
}

/*----- Global Nav -----*/
.c-gnav {
	width: 100%;
	height: 100vh;
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	background-image: url(../images/gnav_img.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	animation: gnavbg 45s ease-out forwards;
	opacity: 0;
	pointer-events: none;
	transition: opacity .5s ease-in-out;
}
.is-open .c-gnav {
	opacity: 1;
	pointer-events: auto;
}
.c-gnav__outer {
	width: 50%;
	height: 100%;
	margin-left: auto;
	padding-inline: var(--inline-md);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: #181616;
	overflow-y: auto;
}
.c-gnav__inner {
	width: 100%;
}
.c-gnav__logo {
	width: 240px;
	margin-bottom: 60px;
	margin-inline: auto;
}
.c-gnav__logo img {
	width: 100%;
}
.c-gnav__btn {
	margin-bottom: 45px;
	margin-inline: auto;
}
.c-gnav__utility {
	padding-top: 45px;
	border-top: 1px solid var(--color-a);
}
.c-gnav__main {
	width: 100%;
	max-width: 400px;
	margin-inline: auto;
	padding-bottom: 45px;
}
.c-gnav__sub {
	margin-bottom: 50px;
}
.c-gnav-main__ul {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 0;
}
.c-gnav-sub__ul {
	display: flex;
	justify-content: center;
	gap: 0 20px;
}
.c-gnav-main__li {
	width: 33%;
	text-align: center;
}
.c-gnav-main__li a,
.c-gnav-sub__li a {
	display: block;
	line-height: 1;
	transition: color .5s ease-in-out;
}
.c-gnav-main__li a {
	font-size: 1.8rem;
}
.c-gnav-sub__li a {
	padding-left: 20px;
	position: relative;
	font-size: 1.3rem;
}
.c-gnav-sub__li a:before {
	width: 10px;
	height: 1px;
	content: '';
	position: absolute;
	top: 7px;
	left: 0;
	background: var(--color-a);
	transition: background-color .5s ease-in-out;
}
.c-gnav__insta {
	width: 20px;
	aspect-ratio: 1;
	margin-inline: auto;
}
.c-gnav__insta a {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
}
.c-gnav__insta a:after {
	width: 100%;
	height: 100%;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: url(../images/ico_insta_w.png) no-repeat 0 0 / 100%;
	opacity: 0;
	transition: opacity .5s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.c-gnav-main__li a:hover,
	.c-gnav-sub__li a:hover {
		color: #fff;
	}
	.c-gnav-sub__li a:hover:before {
		background: #fff;
	}
	.c-gnav__insta a:hover:after {
		opacity: 1;
	}
}
@media screen and (max-width: 1280px) {
	.c-gnav__logo {
		width: 190px;
		margin-bottom: 50px;
	}
}
@media screen and (max-width: 1024px) {
	.c-gnav__outer {
		width: 70%;
	}
}
@media screen and (max-width: 767px) {
	.c-gnav {
		background: none;
	}
	.c-gnav__outer {
		width: 100%;
	}
	.c-gnav__logo {
		width: 150px;
	}
	.c-gnav__btn {
		margin-bottom: 30px;
	}
	.c-gnav__main {
		padding-bottom: 30px;
	}
	.c-gnav-main__ul {
		gap: 20px 0;
	}
	.c-gnav-main__li a {
		font-size: 1.5rem;
	}
	.c-gnav__utility {
		padding-top: 30px;
	}
	.c-gnav-sub__ul {
		flex-wrap: wrap;
		gap: 20px;
	}
	.c-gnav-sub__li a {
		font-size: 1.2rem;
	}
}

/*----- Button -----*/
.c-reserve-btn {
	width: 206px;
	font-family: var(--font-family-min);
}
.c-reserve-link {
	padding-block: 8px 9px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(56, 66, 50, 1);
	border-radius: 15px;
	transition: all .5s ease-in-out;
}
.l-header__btn .c-reserve-link {
	background: rgba(56, 66, 50, .8);
}
.c-reserve-btn__en,
.c-reserve-btn__ja {
	display: inline-block;
	line-height: 1;
	transition: all .5s ease-in-out;
}
.c-reserve-btn__en {
	color: #fff;
	font-family: var(--font-family-pf);
	font-size: 1.4rem;
}
.c-reserve-btn__en:after {
	width: 1px;
	height: 12px;
	margin-inline: 20px 15px;
	content: '';
	display: inline-block;
	background: #fff;
	transform: rotate(25deg);
	vertical-align: -1px;
	transition: all .3s ease-in-out;
}
.c-reserve-btn__ja {
	color: var(--color-c);
	font-size: 1.4rem;
	letter-spacing: .2em;
}
@media (hover: hover) and (pointer: fine) {
	.c-reserve-link:hover {
		background: rgba(255, 255, 255, 1);
	}
	.c-reserve-link:hover .c-reserve-btn__en,
	.c-reserve-link:hover .c-reserve-btn__ja {
		color: var(--color-g);
	}
	.c-reserve-link:hover .c-reserve-btn__en:after {
		background: var(--color-g);
	}
	.l-header__btn .c-reserve-link:hover {
		background: rgba(255, 255, 255, .8);
	}
}
@media screen and (max-width: 1024px) {
	.c-reserve-btn {
		width: 180px;
	}
	.c-reserve-btn__en:after {
		margin-inline: 15px 12px;
	}
}
@media screen and (max-width: 767px) {
	.l-header__btn.c-reserve-btn {
		width: 120px;
	}
	.c-reserve-btn {
		width: 150px;
	}
	.c-reserve-btn__en {
		font-size: 1.3rem;
	}
	.c-reserve-btn__ja {
		font-size: 1.2rem;
		letter-spacing: .1em;
		line-height: 1.2;
	}
	.l-header__btn .c-reserve-btn__ja {
		display: none;
	}
	.l-header__btn .c-reserve-btn__en:after {
		display: none;
	}
	.c-reserve-btn__en:after {
		margin-inline: 9px 6px;
	}
}

.c-mv__btn {
	width: 160px;
	aspect-ratio: 1;
	position: absolute;
	right: var(--inline-md);
	bottom: var(--block-md);
	opacity: 0;
	animation: blur .88s forwards;
}
.c-mv__link {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: rgba(56, 66, 50, .8);
	border-radius: 80px;
	transition: all .5s ease-in-out;
}
.c-mv-btn__en,
.c-mv-btn__ja {
	display: block;
	color: var(--color-c);
	line-height: 1;
	transition: all .5s ease-in-out;
}
.c-mv-btn__en {
	margin-bottom: 10px;
	font-family: var(--font-family-pf);
	font-size: 2rem;
}
.c-mv-btn__ja {
	font-size: 1.3rem;
	letter-spacing: .3em;
}
@media (hover: hover) and (pointer: fine) {
	.c-mv__link:hover {
		background: rgba(255, 255, 255, .8);
	}
	.c-mv__link:hover .c-mv-btn__en,
	.c-mv__link:hover .c-mv-btn__ja {
		color: var(--color-g);
	}
}
@media screen and (max-width: 1280px) {
	.c-mv__btn {
		width: 130px;
		--block-md: 50px;
	}
}
@media screen and (max-width: 767px) {
	.c-mv__btn {
		width: 90px;
		--block-md: 30px;
	}
	.c-mv-btn__en {
		margin-bottom: 5px;
		font-size: 1.5rem;
		letter-spacing: .05em;
	}
	.c-mv-btn__ja {
		font-size: 1.2rem;
		letter-spacing: .2em;
	}
}
@media screen and (max-width: 600px) {
	.c-mv__btn {
		--block-md: 120px;
		width: 85px;
	}
	.c-mv-btn__en {
		font-size: 1.2rem;
	}
	.c-mv-btn__ja {
		font-size: 1rem;
	}
}

.c-btn-def {
	width: 415px;
}
.c-btn-link {
	padding: 0 10px 35px 20px;
	display: block;
	position: relative;
	font-family: var(--font-family-pf);
	letter-spacing: .2em;
	line-height: 1;
	border-bottom: 1px solid var(--color-a);
	transition: all .5s ease-in-out;
}
.c-btn-link:before,
.c-btn-link:after {
	width: 60px;
	height: 4px;
	content: '';
	position: absolute;
	top: 5px;
	right: 10px;
	transition: all .5s ease-in-out;
}
.c-btn-link:before {
	background: url(../images/arr_a.svg) no-repeat 0 0 / 100%;
	opacity: 1;
}
.c-btn-link:after {
	background: url(../images/arr_w.svg) no-repeat 0 0 / 100%;
	opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
	.c-btn-link:hover {
		color: #fff;
		border-color: #fff;
	}
	.c-btn-link:hover:before,
	.c-btn-link:hover:after {
		right: 0px;
	}
	.c-btn-link:hover:before {
		opacity: 0;
	}
	.c-btn-link:hover:after {
		opacity: 1;
	}
}
@media screen and (max-width: 1280px) {
	.c-btn-def {
		width: 330px;
	}
}
@media screen and (max-width: 767px) {
	.c-btn-def {
		width: 100%;
		max-width: 200px;
	}
	.c-btn-link {
		padding: 0 10px 20px 10px;
		font-size: 1.3rem;
	}
	.c-btn-link:before,
	.c-btn-link:after {
		width: 20px;
	}
	.c-btn-link:before {
		background: url(../images/arr_a_sm.svg) no-repeat 0 0 / 100%;
	}
	.c-btn-link:after {
		background: url(../images/arr_w_sm.svg) no-repeat 0 0 / 100%;
	}
}

/*----- Breadcrumb -----*/

/*----- Form -----*/
/* Text, Textarea, Selectbox */
.c-form-def {
    width: 100%;
    background: none;
    border: none;
    border-radius: 5px;
	outline:none;
}
.c-textarea {
	height: 115px;
}
.c-req {
	color: #e02f2f;
	font-size: 1.4rem;
	letter-spacing: 0;
	line-height: 1;
	vertical-align: 4px;
}

/* Check, Radio */

/* Required */

/* Button */

/*----- Other -----*/
.c-sec {
	background: #1d1919;
}
.c-tp-sec-lead {
	margin-bottom: 30px;
	font-size: 2.2rem;
	line-height: 1.9;
}
.c-tp-sec-txt {
	margin-bottom: 75px;
}
@media screen and (max-width: 1024px) {
	.c-tp-sec-lead {
		margin-bottom: 25px;
		font-size: 1.7rem;
		line-height: 1.75;
	}
	.c-tp-sec-txt {
		margin-bottom: 60px;
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 767px) {
	.c-tp-sec-lead {
		margin-bottom: 20px;
	}
	.c-tp-sec-txt {
		margin-bottom: 40px;
	}
}

/* Reserve section */
.c-reserve-sec {
	width: 100%;
	height: 500px;
}
@media screen and (max-width: 1920px) {
	.c-reserve-sec {
		height: auto;
		aspect-ratio: 96 / 25;
	}
}
.c-reserve-sec a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #384232;
	transition: all .5s ease-in-out;
}
.c-reserve-sec__btn {
	width: calc(100% - 160px);
	max-width: 1200px;
	padding: 0 0 35px 20px;
	position: relative;
	color: var(--color-c);
	font-family: var(--font-family-pf);
	font-size: 2.5rem;
	line-height: 1;
	border-bottom: 1px solid #70786c;
	transition: all .5s ease-in-out;
}
.c-reserve-sec__btn:before,
.c-reserve-sec__btn:after {
	width: 60px;
	height: 4px;
	content: '';
	position: absolute;
	top: 5px;
	right: 10px;
	transition: all .5s ease-in-out;
}
.c-reserve-sec__btn:before {
	background: url(../images/arr_g.svg) no-repeat 0 0 / 100%;
	opacity: 1;
}
.c-reserve-sec__btn:after {
	background: url(../images/arr_w.svg) no-repeat 0 0 / 100%;
	opacity: 0;
}
.c-reserve-sec__btn span {
	margin-left: 18px;
	display: inline-block;
	color: var(--color-c);
	font-size: 1.6rem;
	letter-spacing: .2em;
	line-height: 1;
	transition: all .5s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.c-reserve-sec a:hover {
		background: #242b20;
	}
	.c-reserve-sec a:hover .c-reserve-sec__btn,
	.c-reserve-sec a:hover .c-reserve-sec__btn span {
		color: #fff;
	}
	.c-reserve-sec a:hover .c-reserve-sec__btn {
		border-color: #fff;
	}
	.c-reserve-sec a:hover .c-reserve-sec__btn:before,
	.c-reserve-sec a:hover .c-reserve-sec__btn:after {
		right: 0;
	}
	.c-reserve-sec a:hover .c-reserve-sec__btn:before {
		opacity: 0;
	}
	.c-reserve-sec a:hover .c-reserve-sec__btn:after {
		opacity: 1;
	}
}
@media screen and (max-width: 1280px) {
	.c-reserve-sec__btn {
		width: calc(100% - var(--inline-md));
	}
}
@media screen and (max-width: 767px) {
	.c-reserve-sec {
		aspect-ratio: inherit;
	}
	.c-reserve-sec a {
		padding-block: 50px;
	}
	.c-reserve-sec__btn {
		padding: 0 0 20px 10px;
		font-size: 2rem;
	}
	.c-reserve-sec__btn:before,
	.c-reserve-sec__btn:after {
		width: 20px;
		height: 4px;
		content: '';
		position: absolute;
		top: 5px;
		right: 10px;
		transition: all .5s ease-in-out;
	}
	.c-reserve-sec__btn:before {
		background: url(../images/arr_g_sm.svg) no-repeat 0 0 / 100%;
	}
	.c-reserve-sec__btn:after {
		background: url(../images/arr_w_sm.svg) no-repeat 0 0 / 100%;
	}
	.c-reserve-sec__btn span {
		font-size: 1.3rem;
	}
}


/* Index
------------------------------------------------- */
/* ----- Mainvisual -----*/
.p-mv {
	width: 100%;
	height: 100vh;
	height: 100svh;
	margin-bottom: 150px;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 1280px) {
	.p-mv {
		margin-bottom: 120px;
	}
}
@media screen and (max-width: 1024px) {
	.p-mv {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-mv {
		margin-bottom: 80px;
	}
}

/* Slider */
.p-mv__slider {
	opacity: 0;
	animation: blur 1.88s forwards;
}
.is-current {
	animation: zoom 10s linear 0s normal both;
}
.p-mv__slider,
.slick-list,
.slick-track {
	height: 100%;
}
.p-mv-slider__item,
.p-mv-slider__item img {
	width: 100%;
	height: 100%;
}
.p-mv-slider__item img {
	object-fit: cover;
}

/* Catch copy */
.p-mv__catch {
	display: flex;
	align-items: center;
	position: absolute;
	bottom: var(--block-md);
	left: var(--inline-md);
	opacity: 0;
	animation: blur .88s forwards;
}
.p-mv-catch__copy-en {
	margin-right: 35px;
	padding-right: 50px;
	position: relative;
}
.p-mv-catch__copy-en:after {
	width: 1px;
	height: 118px;
	content: '';
	position: absolute;
	top: -10px;
	right: 0;
	background: #fff;
	transform: rotate(15deg);
}
.p-mv-catch__copy-en span {
	font-family: var(--font-family-pf);
	line-height: 1;
}
.-copy-en01,
.-copy-en03 {
	color: #6c6455;
}
.-copy-en02,
.-copy-en04 {
	color: var(--color-c);
	font-size: 4rem;
}
.-copy-en03,
.-copy-en04 {
	display: inline-block;
}
.-copy-en01 {
	display: block;
	font-size: 1.4rem;
	text-align: right;
}
.-copy-en02 {
	display: block;
}
.-copy-en03 {
	margin-right: 25px;
	color: #6c6455;
	font-size: 2.6rem;
}
.p-mv-catch__copy-ja {
	color: var(--color-c);
	font-size: 1.6rem;
	letter-spacing: .6em;
	line-height: 2;
}
@media screen and (max-width: 1280px) {
	.p-mv__catch {
		--block-md: 50px;
	}
}
@media screen and (max-width: 1024px) {
	.p-mv-catch__copy-en {
		margin-right: 30px;
		padding-right: 40px;
	}
	.p-mv-catch__copy-ja {
		letter-spacing: .48em;
		line-height: 1.75;
	}
	.p-mv-catch__copy-en:after {
		height: 100px;
		top: -5px;
	}
	.-copy-en02,
	.-copy-en04 {
		font-size: 3.2rem;
	}
	.-copy-en03 {
		font-size: 2.1rem;
		margin-right: 20px;
	}
}
@media screen and (max-width: 767px) {
	.p-mv__catch {
		--block-md: 20px;
	}
	.p-mv-catch__copy-en {
		margin-right: 25px;
		padding-right: 30px;
	}
	.p-mv-catch__copy-en:after {
		height: 80px;
		top: 0;
	}
	.-copy-en01 {
		margin-bottom: 3px;
		font-size: 1.2rem;
	}
	.-copy-en02,
	.-copy-en04 {
		font-size: 2.5rem;
	}
	.-copy-en02 {
		margin-bottom: -5px;
	}
	.-copy-en03 {
		margin-right: 15px;
		font-size: 1.6rem;
	}
	.p-mv-catch__copy-ja {
		letter-spacing: .4em;
		line-height: 1.5;
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 600px) {
	.p-mv__catch {
		--block-md: 30px;
		width: 325px;
		left: 50%;
		transform: translate(-50%, 0);
	}
	.p-mv-catch__copy-en {
		margin-right: 20px;
		padding-right: 25px;
	}
	.p-mv-catch__copy-en:after {
		top: -4px;
	}
	.-copy-en02,
	.-copy-en04 {
		font-size: 2rem;
	}
	.p-mv-catch__copy-ja {
		letter-spacing: .2em;
		font-size: 1.2rem;
	}
}

/* ----- Concept -----*/
.p-tp-concept {
	margin-bottom: 155px;
	display: flex;
}
.p-tp-concept__cont {
	width: 50%;
	padding-inline: var(--inline-md);
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}
.p-tp-concept__cont:before {
	content: 'CONCEPT';
	position: absolute;
	top: 0;
	left: var(--inline-md);
	color: var(--color-c);
	font-family: var(--font-family-pf);
	font-size: 1.2rem;
	line-height: 1;
}
@media screen and (max-width: 1440px) {
	.p-tp-concept__cont {
		padding-top: 80px;
	}
}
@media screen and (max-width: 1280px) {

	.p-tp-concept {
		margin-bottom: 120px;
	}
	.p-tp-concept__cont {
		padding-top: 60px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-concept {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-concept {
		flex-direction: column-reverse;
	}
	.p-tp-concept__cont {
		width: 100%;
		padding-top: 0;
	}
	.p-tp-concept__cont:before {
		margin-bottom: 50px;
		position: inherit;
		top: inherit;
		left: inherit;
		display: block;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-concept {
		margin-bottom: 80px;
	}
	.p-tp-concept__cont:before {
		margin-bottom: 30px;
	}
}

/* Contents */
.p-tp-concept__ttl {
	margin-bottom: 90px;
	font-size: 3rem;
	letter-spacing: .3em;
	line-height: 1;
}
.p-tp-concept__txtarea {
	padding-left: 110px;
}
.p-tp-concept__txt {
	margin-bottom: 160px;
}
@media screen and (max-width: 1440px) {
	.p-tp-concept__ttl {
		margin-bottom: 60px;
	}
	.p-tp-concept__txtarea {
		padding-left: 50px;
	}
	.p-tp-concept__txt {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-concept__ttl {
		margin-bottom: 35px;
		font-size: 2.5rem;
		letter-spacing: .25em;
	}
	.p-tp-concept__txtarea {
		padding-left: 0px;
	}
	.p-tp-concept__txt {
		margin-bottom: 60px;
	}
	.p-tp-concept__txt .-br {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-concept__ttl {
		margin-bottom: 25px;
		font-size: 2rem;
		letter-spacing: .2em;
	}
	.p-tp-concept__txt {
		margin-bottom: 40px;
	}
}

/* Imagearea */
.p-tp-concept__img {
	width: 50%;
	height: 870px;
}
.p-tp-concept__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1920px) {
	.p-tp-concept__img {
		height: auto;
	}
	.p-tp-concept__img img {
		height: auto;
		object-fit: inherit;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-concept__img {
		width: calc(100% - var(--inline-md)*2);
		margin-bottom: 80px;
		margin-inline: auto;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-concept__img {
		margin-bottom: 50px;
	}
}

/* ----- Section image -----*/
.p-tp-section {
	width: 100%;
	height: 900px;
	margin-bottom: 240px;
	padding-right: var(--inline-md);
}
.p-tp-section img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1920px) {
	.p-tp-section {
		height: auto;
	}
	.p-tp-section img {
		width: 100%;
		height: auto;
		object-fit: inherit;
	}
}
@media screen and (max-width: 1280px) {
	.p-tp-section {
		margin-bottom: 180px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-section {
		margin-bottom: 150px;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-section {
		padding-right: 0;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-section {
		margin-bottom: 60px;
	}
}

/* ----- Inclusive -----*/
.p-tp-inclusive {
	padding-bottom: 150px;
}
.p-tp-inclusive__inner {
	margin-bottom: 150px;
}
.p-tp-inclusive__lead {
	text-align: center;
}
.p-tp-inclusive__txt {
	text-align: center;
}
@media screen and (max-width: 1280px) {
	.p-tp-inclusive {
		padding-bottom: 120px;
	}
	.p-tp-inclusive__inner {
		margin-bottom: 120px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-inclusive {
		padding-bottom: 100px;
	}
	.p-tp-inclusive__inner {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-inclusive {
		padding-bottom: 60px;
	}
	.p-tp-inclusive__inner {
		margin-bottom: 60px;
	}
}

/* Button area */
.p-tp-inclusive__btnarea {
	display: flex;
	justify-content: center;
	gap: 0 35px;
}
@media screen and (max-width: 767px) {
	.p-tp-inclusive__btnarea {
		gap: 0 20px;
	}
}

/* Slider */
.p-tp-inclutive-slider__item {
	width: 480px;
	margin-inline: 35px;
}
.p-tp-inclutive-slider__item img {
	width: 100%;
}
@media screen and (max-width: 1280px) {
	.p-tp-inclutive-slider__item {
		width: 384px;
		margin-inline: 28px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-inclutive-slider__item {
		margin-inline: 10px;
	}
}

/* ----- Rooms -----*/
.p-tp-sec {
	display: flex;
	align-items: flex-end;
}
.p-tp-rooms {
	margin-bottom: 160px;
	padding-block: 160px 145px;
	flex-direction: row-reverse;
}
@media screen and (max-width: 1280px) {
	.p-tp-rooms {
		margin-bottom: 130px;
		padding-block: 130px 120px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-rooms {
		margin-bottom: 100px;
		padding-block: 100px;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-sec {
		flex-direction: column;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-rooms {
		margin-bottom: 60px;
		padding-block: 60px;
	}
}

/* Contents */
.p-tp-sec__cont {
	width: 44.8%;
	padding-inline: var(--inline-md);
}
@media screen and (max-width: 1470px) {
	.p-tp-sec__cont .-br-l {
		display: none;
	}
}
@media screen and (max-width: 1380px) {
	.p-tp-sec__cont .-br {
		display: none;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-sec__cont {
		width: 100%;
	}
}

/* Imagearea */
.p-tp-sec__imgarea {
	width: 55.2%;
	padding-bottom: 190px;
}
.p-tp-sec__imgarea img {
	width: 100%;
}
@media screen and (max-width: 1280px) {
	.p-tp-sec__imgarea {
		padding-bottom: 150px;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-sec__imgarea {
		width: calc(100% - var(--inline-md));
		padding-bottom: 80px;
	}
	.p-tp-cuisine .p-tp-sec__imgarea {
		margin-right: auto;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-sec__imgarea {
		padding-bottom: 50px !important;
	}
}

/* ----- Cuisine -----*/
.p-tp-cuisine {
	padding-block: 0 170px;
}
@media screen and (max-width: 1280px) {
	.p-tp-cuisine {
		padding-block: 0 130px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-cuisine {
		padding-block: 0 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-cuisine {
		padding-block: 0 60px;
	}
}

/* ----- Activity -----*/
.p-tp-activity {
	margin-bottom: 130px;
	padding-block: 130px 170px;
}
@media screen and (max-width: 1280px) {
	.p-tp-activity {
		margin-bottom: 100px;
		padding-block: 100px 135px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-activity {
		padding-block: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-activity {
		margin-bottom: 60px;
		padding-block: 60px;
	}
}

/* Contents */
.p-tp-activity__inner {
	margin-bottom: 150px;
}
.p-tp-activity__lead,
.p-tp-activity__txt {
	text-align: center;
}
.p-tp-activity__btn {
	margin-inline: auto;
}
@media screen and (max-width: 1280px) {
	.p-tp-activity__inner {
		margin-bottom: 120px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-activity__inner {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-activity__inner {
		margin-bottom: 60px;
	}
}

/* Slider */
.p-tp-activity-slider__item {
	width: 480px;
	margin-inline: 35px;
}
.p-tp-activity-slider__item img {
	width: 100%;
}
@media screen and (max-width: 1280px) {
	.p-tp-activity-slider__item {
		width: 384px;
		margin-inline: 28px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-activity-slider__item {
		margin-inline: 10px;
	}
}

/* ----- Faq -----*/
.p-tp-unit {
	width: 62.5%;
	margin-inline: auto;
	padding-bottom: 200px;
}
@media screen and (max-width: 1920px) {
	.p-tp-unit {
		width: calc(100% - 160px);
		max-width: 1200px;
	}
}
@media screen and (max-width: 1280px) {
	.p-tp-unit {
		width: calc(100% - var(--inline-md)*2);
		padding-bottom: 160px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-unit {
		padding-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-unit {
		padding-bottom: 80px;
	}
}

/* Contents */
.p-tp-faq {
	margin-bottom: 200px;
}
.p-tp-faq__ttl {
	margin-bottom: 110px;
}
.p-tp-faq__list {
	margin-bottom: 100px;
	display: flex;
	justify-content: center;
	gap: 0 50px;
}
.p-tp-faq-list__item {
	flex: 1;
	max-width: 47.9%;
}
.p-tp-faq-list-item__header {
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: 1px solid var(--color-a);
}
.p-tp-faq-list-item__num {
	margin-bottom: 5px;
	color: var(--color-a);
	font-family: var(--font-family-pf);
	font-size: 1.4rem;
	line-height: 1;
}
.p-tp-faq-list-item__ttl {
	font-size: 1.8rem;
	letter-spacing: .2em;
	line-height: 1.5;
}
.p-tp-faq-list-item__txt {
	font-size: 1.5rem;
	letter-spacing: .2em;
	line-height: 1.8;
}
.p-tp-faq__btn {
	margin-inline: auto;
}
@media screen and (max-width: 1280px) {
	.p-tp-faq {
		margin-bottom: 160px;
	}
	.p-tp-faq__ttl {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-faq {
		margin-bottom: 100px;
	}
	.p-tp-faq__ttl {
		margin-bottom: 60px;
	}
	.p-tp-faq__list {
		margin-bottom: 80px;
	}
	.p-tp-faq-list-item__ttl {
		font-size: 1.6rem;
	}
	.p-tp-faq-list-item__txt {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 960px) {
	.p-tp-faq__ttl {
		text-align: center;
	}
	.p-tp-faq__list {
		margin-bottom: 60px;
		flex-direction: column;
		gap: 45px 0;
	}
	.p-tp-faq-list__item {
		max-width: 100%;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-faq {
		margin-bottom: 80px;
	}
	.p-tp-faq__ttl {
		margin-bottom: 50px;
	}
	.p-tp-faq-list-item__header {
		margin-bottom: 20px;
		padding-bottom: 20px;
	}
	.p-tp-faq__list {
		gap: 30px 0;
	}
	.p-tp-faq-list-item__txt {
		line-height: 1.75;
	}
}
@media screen and (max-width: 600px) {
	.p-tp-faq__ttl {
		margin-bottom: 30px;
	}
}

/* ----- News -----*/
/* Header */
.p-tp-news {
	display: flex;
	justify-content: space-between;
	gap: 0 7.8%;
}
.p-tp-news__header {
	width: 200px;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
}
.p-tp-news__ttl {
	margin-bottom: 60px;
}
.p-tp-news__btn {
	margin-top: auto;
}
@media screen and (max-width: 960px) {
	.p-tp-news {
		flex-direction: column;
		align-items: center;
	}
	.p-tp-news__header {
		width: 100%;
	}
	.p-tp-news__ttl {
		text-align: center;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-news__ttl {
		margin-bottom: 40px;
	}
}

/* Contents */
.p-tp-news__list {
	width: calc((100% - 7.8%) - 200px);
	border-top: 1px solid var(--color-a);
}

.p-tp-news__btn {
	width: 100%;
}
@media screen and (max-width: 1280px) {
	.p-tp-news {
		gap: 0 60px;
	}
	.p-tp-news__list {
		width: calc((100% - 60px) - 200px);
	}
}
@media screen and (max-width: 960px) {
	.p-tp-news__list {
		width: 100%;
		margin-bottom: 60px;
	}
}

/* ----- Access -----*/
.p-tp-access {
	width: 100%;
	height: 780px;
	background: #1d1919 url(../images/tp_access_bg.jpg) no-repeat center top / 100%;
}
.p-tp-access__cont {
	width: 50%;
	height: 100%;
	margin-left: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: rgba(21, 16, 16, .4);
}
.p-tp-access__ttl {
	margin-bottom: 65px;
	text-align: left;
}
.p-tp-access__add,
.p-tp-access__tel-pc a {
	letter-spacing: .2em;
	line-height: 1;
}
.p-tp-access__add {
	margin-bottom: 5px;
}
.p-tp-access__tel-pc {
	margin-bottom: 35px;
}
.p-tp-access__tel-pc a {
	display: inline-block;
	transition: color .5s ease-in-out;
}
.p-tp-access__btn {
	width: 250px;
	margin-bottom: 40px;
}
.p-tp-access__gmap {
	font-size: 0;
}
.p-tp-access__gmap a {
	padding-left: 20px;
	display: inline-block;
	position: relative;
	font-family: var(--font-family-pf);
	font-size: 1.3rem;
	line-height: 1;
	transition: color .5s ease-in-out;
}
.p-tp-access__gmap a:before,
.p-tp-access__gmap a:after {
	width: 12px;
	aspect-ratio: 2 / 3;
	content: '';
	position: absolute;
	top: -2px;
	left: 0;
	transition: opacity .5s ease-in-out;
}
.p-tp-access__gmap a:before {
	background: url(../images/ico_pin_a.svg) no-repeat 0 0 / 100%;
	opacity: 1;
}
.p-tp-access__gmap a:after {
	background: url(../images/ico_pin_w.svg) no-repeat 0 0 / 100%;
	opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
	.p-tp-access__tel-pc a:hover,
	.p-tp-access__gmap a:hover {
		color: #fff;
	}
	.p-tp-access__gmap a:hover:before {
		opacity: 0;
	}
	.p-tp-access__gmap a:hover:after {
		opacity: 1;
	}
}
@media screen and (max-width: 1920px) {
	.p-tp-access {
		height: auto;
		aspect-ratio: 32 / 13;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-access {
		aspect-ratio: inherit;
	}
	.p-tp-access__inner {
		padding-block: 50px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-access {
		padding-top: 70vw;
		background: #1d1919 url(../images/tp_access_bg_sp.jpg) no-repeat center top / 100%;
	}
	.p-tp-access__cont {
		width: 100%;
		height: auto;
	}
	.p-tp-access__ttl {
		margin-bottom: 50px;
		text-align: center;
	}
	.p-tp-access__tel-pc {
		text-align: center;
	}
	.p-tp-access__btn {
		margin-inline: auto;
	}
	.p-tp-access__gmap {
		text-align: center;
	}
	.p-tp-access__inner {
		padding-block: 50px 80px;
	}
}


/* =================================================
下層ページ
================================================= */

/* Common
------------------------------------------------- */
.p-page-lead {
	font-size: 3rem;
	letter-spacing: .3em;
	line-height: 1.8;
	text-align: center;
}
@media screen and (max-width: 1440px) {
	.p-page-lead {
		margin-bottom: 50px;
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-page-lead {
		margin-bottom: 30px;
		font-size: 2rem;
		letter-spacing: .2rem;
		line-height: 1.75;
	}
}


/* お部屋
------------------------------------------------- */
.p-room-body {
	padding-block: 0 130px;
}
@media screen and (max-width: 1440px) {
	.p-room-body {
		padding-block: 0 100px;
	}
}

/*----- Intro -----*/
.p-room-intro {
	margin-bottom: 1px;
	display: flex;
}

/* Imagearea */
.p-room-intro__img {
	width: 58.3%;
	height: 1080px;
}
@media screen and (max-width: 1920px) {
	.p-room-intro__img {
		height: auto;
		aspect-ratio: 28 / 27;
	}
}
@media screen and (max-width: 767px) {
	.p-room-intro__img {
		margin-bottom: 50px;
	}
}
.p-room-intro__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Contents */
.p-room-intro__cont {
	width: 41.7%;
	padding-block: 60px;
	padding-inline: var(--inline-md);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.p-room-intro__lead {
	margin-bottom: 80px;
	font-size: 3rem;
	letter-spacing: .3em;
	line-height: 1.8;
}
.p-room-intro__txt {
	margin-bottom: 50px;
	letter-spacing: .2em;
}
.p-room-intro__dl {
	display: flex;
}
.p-room-intro__dl:nth-of-type(1) {
	margin-bottom: 20px;
}
.p-room-intro__dl dt,
.p-room-intro__dl dd {
	font-size: 1.5rem;
	line-height: 1;
}
.p-room-intro__dl dt {
	width: 100px;
	margin-right: 40px;
	font-family: var(--font-family-pf);
}
.p-room-intro__dl dd {
	letter-spacing: .2em;
}
@media screen and (max-width: 1440px) {
	.p-room-intro__lead {
		margin-bottom: 60px;
		font-size: 2.4rem;
		letter-spacing: .25em;
		line-height: 1.5;
	}
}
@media screen and (max-width: 1024px) {
	.p-room-intro__cont {
		width: 48%;
	}
	.p-room-intro__lead {
		margin-bottom: 30px;
		font-size: 2rem;
		letter-spacing: .2rem;
		line-height: 1.75;
	}
	.p-room-intro__txt {
		margin-bottom: 30px;
		font-size: 1.4rem;
		letter-spacing: .15em;
	}
	.p-room-intro__dl dt,
	.p-room-intro__dl dd {
		font-size: 1.4rem;
	}
	.p-room-intro__img {
		width: 52%;
	}
}
@media screen and (max-width: 960px) {
	.p-room-intro {
		flex-direction: column-reverse;
		align-items: center;
	}
	.p-room-intro__cont {
		width: 100%;
		padding-block: 0 80px;
		align-items: flex-start;
	}
	.p-room-intro__img {
		width: calc(100% - var(--inline-md)*2);
		aspect-ratio: inherit;
		margin-bottom: 50px;
		margin-inline: auto;
	}
}
@media screen and (max-width: 767px) {
	.p-room-intro__cont {
		padding-block: 0 60px;
	}
	.p-room-intro__dl:nth-of-type(1) {
		margin-bottom: 15px;
	}
}

/* ----- Gallery -----*/
.p-room-gallery {
	margin-bottom: 130px;
}
.p-room-gallery-slider__item {
	margin-right: 1px;
}
.p-room-gallery .slick-dots {
	bottom: -30px;
}
@media screen and (max-width: 1280px) {
	.p-room-gallery {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-room-gallery {
		margin-bottom: 80px;
	}
}

/* ----- Detail -----*/
.p-room-detail {
	margin-bottom: 210px;
	display: flex;
}
.p-room-detail__figure,
.p-room-detail__cont {
	width: 50%;
}
@media screen and (max-width: 1280px) {
	.p-room-detail {
		margin-bottom: 150px;
	}
}
@media screen and (max-width: 1024px) {
	.p-room-detail {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 960px) {
	.p-room-detail {
		flex-direction: column;
		align-items: center;
	}
	.p-room-detail__figure {
		width: 100%;
		margin-bottom: 50px;
		padding-inline: var(--inline-md);
		background: #1d1919;
	}
	.p-room-detail__figure img {
		max-width: 600px;
		margin-inline: auto;
	}
}
@media screen and (max-width: 767px) {
	.p-room-detail {
		margin-bottom: 60px;
	}
	.p-room-detail__figure {
		margin-bottom: 30px;
	}
}

/* Image area */
.p-room-detail__figure img {
	width: 100%;
}

/* Contents */
.p-room-detail__cont {
	padding-inline: var(--inline-md);
}
.p-room-detail-cont__inner {
	padding-top: 40px;
	border-top: 1px solid var(--color-a);
}
.p-room-detail__ttl {
	margin-bottom: 70px;
}
.p-room-detail__table dl {
	margin-bottom: 25px;
	display: flex;
	align-items: flex-start;
}
.p-room-detail__table dl:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-room-detail__table dl dt,
.p-room-detail__table dl dd {
	letter-spacing: .2em;
	line-height: 1.8;
}
.p-room-detail__table dl dt {
	width: 27.6%;
}
.p-room-detail__table dl dd {
	width: 72.4%;
}
@media screen and (max-width: 960px) {
	.p-room-detail__cont {
		width: 100%;
	}
	.p-room-detail__ttl {
		margin-bottom: 45px;
	}
	.p-room-detail__table dl dt,
	.p-room-detail__table dl dd {
		font-size: 1.4rem;
		letter-spacing: .15em;
		line-height: 1.75;
	}
}
@media screen and (max-width: 767px) {
	.p-room-detail__ttl {
		margin-bottom: 40px;
	}
	.p-room-detail__table dl {
		flex-direction: column;
	}
	.p-room-detail__table dl dt,
	.p-room-detail__table dl dd {
		width: 100%;
	}
	.p-room-detail__table dl dt {
		margin-bottom: 8px;
		color: var(--color-c);
	}
}

/* ----- Amenities -----*/
.p-room-amenities {
	margin-bottom: 200px;
}
.p-room-amenities__ttl {
	margin-bottom: 50px;
}
@media screen and (max-width: 1280px) {
	.p-room-amenities {
		margin-bottom: 150px;
	}
}
@media screen and (max-width: 1024px) {
	.p-room-amenities {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-room-amenities__ttl {
		margin-bottom: 40px;
	}
}

/* Contents */
.p-room-amenities__list {
	display: flex;
	flex-wrap: wrap;
	gap: 70px 40px;
}
.p-room-aminities-list__item {
	width: calc((100% - 120px) / 4);
}
.p-room-amenities-list-item__img,
.p-room-amenities-list-item__img img {
	width: 100%;
}
.p-room-amenities-list-item__img {
	margin-bottom: 15px;
}
.p-room-amenities-list-item__ttl {
	margin-bottom: 15px;
	letter-spacing: .2em;
	line-height: 1.5;
}
.p-room-amenities-list-item__ttl br {
	display: none;
}
.p-room-amenities-list-item__txt {
	font-size: 1.4rem;
	letter-spacing: .2em;
	line-height: 1.85;
}
@media screen and (max-width: 1024px) {
	.p-room-amenities__list {
		gap: 55px 30px;
	}
	.p-room-aminities-list__item {
		width: calc((100% - 60px) / 3);
	}
	.p-room-amenities-list-item__ttl {
		font-size: 1.4rem;
		letter-spacing: .15em;
	}
	.p-room-amenities-list-item__ttl br {
		display: block;
	}
	.p-room-amenities-list-item__txt {
		font-size: 1.2rem;
		letter-spacing: .15em;
		line-height: 1.75;
	}
}
@media screen and (max-width: 767px) {
	.p-room-amenities__list {
		gap: 45px 20px;
	}
	.p-room-aminities-list__item {
		width: calc((100% - 20px) / 2);
	}
	.p-room-amenities-list-item__img {
		margin-bottom: 20px;
	}
	.p-room-amenities-list-item__ttl {
		margin-bottom: 10px;
	}
}

/* ----- Facility -----*//* Header */
.p-room-facility__header {
	margin-bottom: var(--block-md);
	position: relative;
}
.p-room-facility-header__txt {
	position: absolute;
	bottom: 140px;
	left: var(--inline-md);
	z-index: 1;
	color: var(--color-c);
	font-family: var(--font-family-pf);
	font-size: 8rem;
	line-height: 1;
}
.p-room-facility-header__img {
	width: 100%;
	height: 880px;
	overflow: hidden;
}
.p-room-facility-header__img > div {
	width: 100%;
	height: 100%;
}
.p-room-facility-header__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1920px) {
	.p-room-facility-header__img {
		height: auto;
		aspect-ratio: 24 / 11;
	}
}
@media screen and (max-width: 1440px) {
	.p-room-facility-header__txt {
		font-size: 6.5rem;
	}
}
@media screen and (max-width: 1280px) {
	.p-room-facility-header__txt {
		bottom: 100px;
		font-size: 5rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-room-facility-header__txt {
		bottom: 60px;
		font-size: 4rem;
	}
}
@media screen and (max-width: 767px) {
	.p-room-facility__header {
		--block-md: 60px;
	}
	.p-room-facility-header__txt {
		bottom: 30px;
		font-size: 3rem;
	}
	.p-room-facility-header__img {
		height: 270px;
		aspect-ratio: inherit;
	}
}
@media screen and (max-width: 428px) {
	.p-room-facility-header__img img {
		object-position: -155px 25px;
	}
}

/* Contents */
.p-room-facility__sec {
	display: flex;
	align-items: center;
}
.p-room-facility__sec.-bar {
	flex-direction: row-reverse;
}
.p-room-facility__sec.-restaurant {
	margin-bottom: 130px;
}
.p-room-facility-sec__cont {
	width: 50%;
}
.-restaurant .p-room-facility-sec__cont {
	padding-left: var(--inline-md);
}
.-bar .p-room-facility-sec__cont {
	padding-right: var(--inline-md);
}
.p-room-facility-sec__ttl {
	margin-bottom: 65px;
}
.p-room-facility-sec__txt {
	margin-bottom: 60px;
	padding-bottom: 60px;
	border-bottom: 1px solid var(--color-a);
}
.p-room-facility-sec__dl {
	margin-bottom: 10px;
	display: flex;
}
.p-room-facility-sec__dl:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-room-facility-sec__dl dt,
.p-room-facility-sec__dl dd {
	font-size: 1.5rem;
	line-height: 1.75;
}
.p-room-facility-sec__dl dt {
	width: 100px;
	margin-right: 40px;
	font-family: var(--font-family-pf);
}
.p-room-facility-sec__dl dd {
	width: calc(100% - 100px);
	letter-spacing: .2em;	
}
.-bar .p-room-facility-sec__dl dt {
	width: 60px;
}
.-bar .p-room-facility-sec__dl dd {
	width: calc(100% - 60px);
}
@media screen and (max-width: 1920px) {
	.p-room-facility__sec {
		align-items: flex-start;
	}
	.p-room-facility-sec__cont {
		padding-top: 3.125vw;
	}
	.p-room-facility-sec__ttl {
		margin-bottom: 3.39vw;
	}
	.p-room-facility-sec__txt {
		margin-bottom: 3.125vw;
		padding-bottom: 3.125vw;
	}
}
@media screen and (max-width: 1280px) {
	.p-room-facility__sec.-restaurant {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 1024px) {
	.p-room-facility-sec__dl dt,
	.p-room-facility-sec__dl dd {
		font-size: 1.4rem;
	}
	.p-room-facility-sec__dl dt {
		width: 90px;
		margin-right: 30px;
	}
	.p-room-facility-sec__dl dd {
		width: calc(100% - 90px)
	}
}
@media screen and (max-width: 960px) {
	.p-room-facility__sec {
		flex-direction: column !important;
		align-items: center !important;
	}
	.p-room-facility__sec.-restaurant {
		margin-bottom: 80px;
	}
	.p-room-facility-sec__ttl {
		margin-bottom: 40px;
	}
	.p-room-facility-sec__cont {
		width: 100%;
		padding-top: 60px;
		padding-inline: 0 !important;
	}
	.p-room-facility-sec__txt {
		margin-bottom: 20px;
		padding-bottom: 20px;
	}
}
@media screen and (max-width: 767px) {
	.p-room-facility-sec__cont {
		padding-top: 50px;
	}
	.p-room-facility-sec__ttl {
		margin-bottom: 30px;
	}
	.p-room-facility-sec__txt {
		font-size: 1.4rem;
	}
	.-bar .p-room-facility-sec__dl {
		margin-bottom: 20px;
	}
}

/* Slider */
.p-room-facility-sec__slider {
	width: 50%;
}
.p-room-facility-sec-slider__item img {
	width: 100%;
}

.slick-dots > li:first-child:last-child {
    display: none;
}
.p-room-facility .slick-dots {
	bottom: -30px;
}
.-restaurant .slick-dots {
	text-align: right;
}
.-bar .slick-dots {
	text-align: left;
}
@media screen and (max-width: 960px) {
	.p-room-facility-sec__slider {
		width: 100%;
		max-width: 600px;
	}
	.-bar .slick-dots {
		text-align: right;
	}
}


/* グランリトリート瀬戸内 岩屋について
------------------------------------------------- */
.p-about-body {
	padding: 0 !important;
}

/* ----- Mainvisual -----*/
.p-about-mv-wrap {
	position: relative;
	z-index: 0;
}
.p-about-mv-wrap__img {
	width: 100%;
	height: 100vh;
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	overflow: hidden;
}
.p-about-mv-wrap__img > div {
	width: 100%;
	height: 100%;
}
.p-about-mv-wrap__img.is-hide {
	opacity: 0;
}
.p-about-mv-wrap__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.p-about-mv-wrap:before,
.p-about-mv-wrap:after {
	position: absolute;
}
.p-about-mv-inner {
	padding-top: 1320px;
	position: relative;
	z-index: 0;
}
.p-about-mv-inner:before {
	width: 100%;
	aspect-ratio: 1920 / 1200;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	background: linear-gradient(to bottom,  rgba(57,71,83,0) 0%,rgba(57,71,83,0.65) 100%);
	transition: opacity .5s ease-in-out;
	opacity: 0;
}
.p-about-mv-wrap.is-active .p-about-mv-inner:before {
	opacity: 1;
}
.p-about-mv-wrap:after {
	content: 'GRANDRETREAT';
	right: -8px;
	bottom: -17px;
	z-index: 1;
	color: #e3ded2;
	font-family: var(--font-family-pf);
	font-size: 20rem;
	line-height: 1;
	opacity: .15;
}
.p-about-mv {
	margin-bottom: 0;
}
.p-about-ttl {
	position: fixed;
	z-index: 1;
}
.p-about-ttl.is-hide {
	animation: hide .5s forwards;
}

@media screen and (max-width: 1440px) {
	.p-about-mv-wrap:after {
		bottom: -14px;
		font-size: 16rem;
	}
}
@media screen and (max-width: 1280px) {
	.p-about-mv-wrap:after {
		bottom: -11px;
		font-size: 13rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-about-mv-wrap:after {
		bottom: -9px;
		font-size: 10rem;
	}
}
@media screen and (max-width: 960px) {
	.p-about-mv-wrap {
		background: none;
	}
	.p-about-mv-inner {
		padding-top: 80vh;
		background: none;
	}
	.p-about-mv-wrap:after {
		bottom: -7px;
		font-size: 8rem;
	}
	.p-about-mv-inner:before {
		height: 80vh;
	}
}
@media screen and (max-width: 767px) {
	.p-about-mv-wrap:after {
		bottom: -6px;
		font-size: 6.5rem;
	}
}
@media screen and (max-width: 600px) {
	.p-about-mv-wrap:after {
		bottom: -5px;
		font-size: 5rem;
	}
}
@media screen and (max-width: 425px) {
	.p-about-mv-wrap:after {
		font-size: 4rem;
	}
}

/* Contents */
.p-about-mv-cont {
	width: 440px;
	margin-right: -600px;
	position: absolute;
	right: 50%;
	bottom: 300px;
	z-index: 1;
}
.p-about-mv-cont__lead,
.p-about-mv-cont__txt {
	color: #fff;
}
.p-about-mv-cont__lead {
	margin-bottom: 75px;
	font-size: 3.6rem;
	letter-spacing: .3em;
	line-height: 1.6;
}
.p-about-mv-cont__txt {
	letter-spacing: .14em;
}
@media screen and (max-width: 1920px) {
	.p-about-mv-cont {
		bottom: 15.6vw;
	}
}
@media screen and (max-width: 1440px) {
	.p-about-mv-cont__lead {
		margin-bottom: 60px;
		font-size: 3rem;
	}
}
@media screen and (max-width: 1400px) {
	.p-about-mv-cont {
		margin-right: 0;
		right: var(--inline-md);
	}
}
@media screen and (max-width: 1024px) {
	.p-about-mv-cont__lead {
		margin-bottom: 50px;
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 960px) {
	.p-about-mv-cont {
		width: calc(100% - var(--inline-md) * 2);
		max-width: 440px;
		right: 50%;
		transform: translateX(50%);
	}
}
@media screen and (max-width: 767px) {
	.p-about-mv-cont__lead {
		margin-bottom: 30px;
		font-size: 2rem;
	}
}

/*----- Inclusive -----*/
/* Common */
.p-about-sec {
	position: relative;
}
.p-about-inclusive {
	padding-block: 150px 250px;
	display: flex;
	background: #181616;
  align-items: flex-start;
}
.p-about-sec:before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	font-family: var(--font-family-pf);
	font-size: 15rem;
	line-height: 0.85;
}
.p-about-inclusive:before {
	content: 'ALL\AINCLUSIVE';
	top: 110px;
	color: #2c2b2b;
	white-space: pre;
}
.p-about-sec-cont__ttl {
	margin-bottom: 60px;
	font-size: 3rem;
	letter-spacing: .3em;
	line-height: 1.8;
}
.p-about-sec-cont__txt {
	letter-spacing: .2em;
}
@media screen and (max-width: 1440px) {
	.p-about-inclusive {
		padding-block: 120px 200px;
	}
	.p-about-sec-cont__ttl {
		margin-bottom: 50px;
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-about-inclusive {
		padding-block: 100px 150px;
	}
	.p-about-sec-cont__ttl {
		margin-bottom: 30px;
		font-size: 2rem;
		letter-spacing: .2rem;
		line-height: 1.75;
	}
}
@media screen and (max-width: 960px) {
	.p-about-inclusive {
		padding-block: 80px 100px;
		flex-direction: column-reverse;
	}
}

/* Contents */
.p-about-inclusive__col {
	width: 50%;
}
.p-about-inclusive__cont {
	padding: 130px 0 0 var(--inline-md);
}
.p-about-inclusive-cont__inner {
	padding-inline: 50px;
}
.p-about-inclusive-cont__txt {
	width: 81.5%;
	margin-bottom: 60px;
}
.p-about-sec-cont__btn {
	margin-bottom: 150px;
}
.p-about-inclusive-cont__img {
	width: 60.6%;
	margin-left: auto;
}
.p-about-inclusive-cont__img img {
	width: 100%;
}
@media screen and (max-width: 1920px) {
	.p-about-inclusive__cont {
		padding: 6.8vw 0 0 var(--inline-md);
	}
	.p-about-inclusive-cont__txt {
		width: 100%;
		max-width: 615px;
	}
	.p-about-sec-cont__btn {
		margin-bottom: 7.8vw;
	}
	.p-about-inclusive-cont__img {
		max-width: 460px;
	}
}
@media screen and (max-width: 1024px) {
	.p-about-inclusive-cont__inner {
		padding-inline: 0 50px;
	}
}
@media screen and (max-width: 960px) {
	.p-about-inclusive__col {
		width: 100%;
	}
	.p-about-inclusive-cont__inner {
		padding-inline: 0;
	}
}
@media screen and (max-width: 767px) {
	.p-about-inclusive__cont {
		padding: 50px 0 0 var(--inline-md);
	}
	.p-about-inclusive-cont__txt {
		margin-bottom: 40px;
		padding-right: var(--inline-md);
	}
	.p-about-sec-cont__btn {
		margin-bottom: 60px;
	}
	.p-about-inclusive-cont__img {
		width: 100%;
		max-width: 435px;
	}
}

/* Imagearea */
.p-about-inclusive__imgarea {
	padding-right: 50px;
	display: flex;
	justify-content: space-between;
  flex-wrap: wrap;
}
.p-about-inclusive-img--l {
	width: 65.9%;
	margin-top: 140px;
}
.p-about-inclusive-img--s {
	width: 28.6%;
}
.p-about-inclusive-img img {
	width: 100%;
}
@media screen and (max-width: 1920px) {
	.p-about-inclusive-img--l {
		width: 66%;
		max-width: 600px;
		margin-top: 7.3vw;
	}
	.p-about-inclusive-img--s {
		max-width: 260px;
	}
}
@media screen and (max-width: 767px) {
	.p-about-inclusive__imgarea {
		padding-right: 30px;
	}
}

/* Section Wrap */
.p-about-cont-wrap {
	width: 100%;
	height: 100vh;
	height: 100lvh;
	position: relative;
	transition: .5s ease-in-out;
}
.p-about-cont-wrap:before {
	width: 100%;
	height: 100%;
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	transition: all .5s ease;
	opacity: 0;
}
.p-about-cuisine:before {
	background: url(../images/about_cuisine_img.jpg) no-repeat center center / cover;
	opacity: 0;
	animation: blur .5s forwards 1s;
}
.p-about-outdoor:before {
	background: url(../images/about_outdoor_img.jpg) no-repeat center center / cover;
}
.p-about-private:before {
	background: url(../images/about_private_img.jpg) no-repeat center center / cover;
}
.p-about-scenery:before {
	background: url(../images/about_scenery_img.jpg) no-repeat center center / cover;
}
.p-about-sec-bg.is-show:before {
	opacity: 1;
}
.p-about-sec__cont {
	width: calc(100% - var(--inline-md) * 2);
	max-width: 510px;
	position: absolute;
	right: var(--inline-md);
	bottom: 100px;
}
.p-about-sec__cont .p-about-sec-cont__ttl,
.p-about-sec__cont .p-about-sec-cont__txt {
	color: #fff;
}
@media screen and (max-width: 960px) {
	.p-about-sec__cont {
		right: inherit;
		left: var(--inline-md);
	}
}
@media screen and (max-width: 960px) {
	.p-about-outdoor:before {
		background-position: left 35% center;
	}
}
.p-about-cont-wrap:after {
	position: fixed;
	top: 86px;
	left: 0;
	z-index: -1;
	color: var(--color-c);
	font-family: var(--font-family-pf);
	font-size: 15rem;
	line-height: .6;
	opacity: 0;
}
.p-about-sec-bg.is-show:after {
	opacity: .15;
}
.p-about-cuisine:after {
	content: 'CUISINE';
}
.p-about-outdoor:after {
	content: 'OUTDOOR';
}
.p-about-private:after {
	content: 'PRIVATE';
}
.p-about-scenery:after {
	content: 'SCENERY';
}
@media screen and (max-width: 1280px) {
	.p-about-cont-wrap:after {
		font-size: 13rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-about-cont-wrap:after {
		top: 75px;
		font-size: 10rem;
	}
}
@media screen and (max-width: 960px) {
	.p-about-cont-wrap:after {
		font-size: 8rem;
	}
}
@media screen and (max-width: 767px) {
	.p-about-cont-wrap:after {
		top: 66px;
		font-size: 6.5rem;
	}
}
@media screen and (max-width: 600px) {
	.p-about-cont-wrap:after {
		font-size: 5rem;
	}
}
@media screen and (max-width: 425px) {
	.p-about-cont-wrap:after {
		font-size: 4rem;
	}
}

/* アクセス
------------------------------------------------- */
/* ----- Intro -----*/
.p-access-intro {
	margin-bottom: 150px;
}
@media screen and (max-width: 1024px) {
	.p-access-intro {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 767px) {
	.p-access-intro {
		margin-bottom: 60px;
	}
}

/* Contents */
.p-access-intro__txt,
.p-access-intro__info {
	text-align: center;
}
.p-access-intro__lead {
	margin-bottom: 55px;
}
.p-access-intro__txt {
	margin-bottom: 70px;
}
.p-access-intro__info {
	margin-bottom: 90px;
}
.p-access-intro-info__ttl {
	margin-bottom: 10px;
	font-size: 2rem;
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 1024px) {
	.p-access-intro__lead {
		margin-bottom: 40px;
	}
	.p-access-intro-info__ttl {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.p-access-intro__lead {
		margin-bottom: 30px;
	}
	.p-access-intro__txt {
		margin-bottom: 40px;
	}
	.p-access-intro__info {
		margin-bottom: 60px;
	}
	.p-access-intro-info__ttl {
		font-size: 1.6rem;
	}
}

/* Googlemap */
.p-access-intro__gmap {
	width: 69.7%;
	height: 700px;
	margin-inline: auto;
}
.p-access-intro__gmap iframe {
	width: 100%;
	height: 100%;
	border: none;
}
@media screen and (max-width: 1920px) {
	.p-access-intro__gmap {
		width: 100%;
		max-width: 1200px;
	}
}
@media screen and (max-width: 1024px) {
	.p-access-intro__gmap {
		height: 500px;
	}
}
@media screen and (max-width: 767px) {
	.p-access-intro__gmap {
		height: 300px;
	}
}

/* ----- Contents -----*/
.p-access-cont {
	display: flex;
	align-items: flex-start;
}
@media screen and (max-width: 960px) {
	.p-access-cont {
		flex-direction: column;
		align-items: center;
	}
}

/* Detail */
.p-access-cont__detail {
	width: 57.3%;
	padding-inline: var(--inline-md);
}
.p-access-cont__detail * {
	color: var(--color-c);
}
.p-access-cont-detail__txt {
	margin-bottom: 85px;
	letter-spacing: .2em;
}
.p-access-cont__by:not(:nth-last-of-type(1)) {
	margin-bottom: 70px;
}
.p-access-cont-by__ttl {
	padding-bottom: 30px;
	border-bottom: 1px solid #3d3d3d;
}
.p-access-cont-by-ttl__ja,
.p-access-cont-by-ttl__en {
	display: block;
	line-height: 1;
}
.p-access-cont-by-ttl__ja {
	font-size: 1.5rem;
	letter-spacing: .3em;
}
.p-access-cont-by-ttl__en {
	margin-bottom: 15px;
	font-family: var(--font-family-pf);
	font-size: 3.2rem;
}
.p-access-cont-by__dl {
	padding-block: 18px 20px;
	display: flex;
	align-items: start;
	border-bottom: 1px solid #3d3d3d;
}
.p-access-cont-by__dl dt {
	width: 250px;
	font-size: 1.8rem;
	letter-spacing: .3em;
}
.p-access-cont-by__dl dd {
	width: calc(100% - 250px);
	padding-top: 2px;
	letter-spacing: .2em;
}
@media screen and (max-width: 1920px) {
	.p-access-cont__detail {
		max-width: 1100px;
	}
}
@media screen and (max-width: 1024px) {
	.p-access-cont-by-ttl__en {
		font-size: 2.5rem;
	}
	.p-access-cont-by__dl dt {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 960px) {
	.p-access-cont__detail {
		width: 100%;
		margin-bottom: 60px;
	}
}
@media screen and (max-width: 767px) {
	.p-access-cont__by:not(:nth-last-of-type(1)) {
		margin-bottom: 50px;
	}
	.p-access-cont-by__ttl {
		padding-bottom: 20px;
	}
	.p-access-cont-by-ttl__en {
		font-size: 2rem;
	}
	.p-access-cont-by-ttl__ja {
		font-size: 1.3rem;
	}
	.p-access-cont-by__dl {
		padding-block: 14px 16px;
		flex-direction: column;
	}
	.p-access-cont-by__dl dt,
	.p-access-cont-by__dl dd {
		width: 100%;
	}
	.p-access-cont-by__dl dt {
		font-size: 1.4rem;
	}
	.p-access-cont-by__dl dd {
		font-size: 1.3rem;
		letter-spacing: .1em;
	}
}

/* Contents */
.p-access-cont__figure {
	width: 42.8%;
	background: #1d1919;
}
.p-access-cont__figure img {
	width: 100%;
}
@media screen and (max-width: 1920px) {
	.p-access-cont__figure {
		max-width: 820px;
	}
}
@media screen and (max-width: 960px) {
	.p-access-cont__figure {
		width: 100%;
		max-width: 600px;
		margin-inline: auto;
	}
}
@media screen and (max-width: 767px) {
	.p-access-cont-detail__txt {
		margin-bottom: 40px;
		letter-spacing: .1em;
	}
}


/* オールインクルーシブ
------------------------------------------------- */
@media screen and (max-width: 767px) {
	.p-inclusive-body {
		padding-block: 60px 100px !important;
	}
}

/*----- Intro -----*/
.p-inclusive-intro {
	margin-bottom: 230px;
}
.p-inclusive-intro__lead {
	margin-bottom: 80px;
}
.p-inclusive-intro__txt {
	text-align: center;
}
@media screen and (max-width: 1280px) {
	.p-inclusive-intro {
		margin-bottom: 180px;
	}
}
@media screen and (max-width: 1024px) {
	.p-inclusive-intro {
		margin-bottom: 100px;
	}
	.p-inclusive-intro__lead {
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 767px) {
	.p-inclusive-intro {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 600px) {
	.p-inclusive-intro__txt {
		letter-spacing: .05em;
	}
}

/* ----- Stay -----*/
.p-inclusive-stay__ttl {
	margin-bottom: 80px;
}
.p-inclusive-stay__sec {
	display: flex;
	position: relative;
	z-index: 1;
	border-top: 1px solid #3d3d3d;
}
@media screen and (max-width: 767px) {
	.p-inclusive-stay__ttl {
		margin-bottom: 40px;
	}
}

/* Header */
.p-inclusive-stay-sec__header {
	width: 100px;
	padding-top: 15px;
	position: relative;
	border-right: 1px solid #3d3d3d;
}
.p-inclusive-stay-sec-header__txt {
	line-height: 1;
}
.p-inclusive-stay-sec-header-txt__en,
.p-inclusive-stay-sec-header-txt__num {
	display: inline-block;
	color: var(--color-c);
	font-family: var(--font-family-pf);
	line-height: .2;
}
.p-inclusive-stay-sec-header-txt__en {
	margin-right: 10px;
	font-size: 2rem;
}
.p-inclusive-stay-sec-header-txt__num {
	font-size: 6rem;
}
@media screen and (max-width: 1280px) {
	.p-inclusive-stay-sec-header-txt__num {
		font-size: 5rem;
	}
}
@media screen and (max-width: 767px) {
	.p-inclusive-stay-sec__header {
		width: 45px;
	}
	.p-inclusive-stay-sec-header-txt__en,
	.p-inclusive-stay-sec-header-txt__num {
		display: block;
		line-height: .8;
		text-align: center;
	}
	.p-inclusive-stay-sec-header-txt__en {
		margin-right: 5px;
		font-size: 1.2rem;
	}
	.p-inclusive-stay-sec-header-txt__num {
		font-size: 3rem;
	}
}

/* Contents */
.p-inclusive-stay-sec__col {
	width: calc(100% - 100px);
}
.p-inclusive-stay-sec__outer {
	padding-top: 100px;
	position: relative;
	border-bottom: 1px solid #3d3d3d;
}
.p-inclusive-stay-sec__outer:nth-last-of-type(1) {
	border: none;
}
.p-inclusive-stay-sec__outer:before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	color: #2c2b2b;
	font-family: var(--font-family-pf);
	font-size: 10rem;
	line-height: .6;
}
.p-inclusive-stay-sec__an:before {
	content: 'AFTERNOON';
}
.p-inclusive-stay-sec__dn:before {
	content: 'DINNER';
}
.p-inclusive-stay-sec__nt:before {
	content: 'NIGHT';
}
.p-inclusive-stay-sec__mn:before {
	content: 'MORNING';
}

.p-inclusive-stay-sec__inner {
	padding-block: 60px;
	padding-inline: 60px;
}
.p-inclusive-stay__other {
	display: flex;
	gap: 0 60px;
	background: #1d1919;
}
.p-inclusive-stay-other__card {
	width: calc((100% - 60px) / 2);
}

.p-inclusive-stay-sec-card__img,
.p-inclusive-stay-sec-card__img img {
	width: 100%;
}
.p-inclusive-stay-sec-card__img {
	margin-bottom: 20px;
}
.p-inclusive-stay-sec-card__ttl {
	margin-bottom: 10px;
	font-size: 2.2rem;
	line-height: 1.8;
}
.p-inclusive-stay-sec-card__txt span {
	display: block;
	font-size: 1.4rem;
}
@media screen and (max-width: 1920px) {
	.p-inclusive-stay-other__card {
		width: 720px;
	}
}
@media screen and (max-width: 1280px) {
	.p-inclusive-stay-sec__outer {
		padding-top: 80px;
	}
	.p-inclusive-stay-sec__outer:before {
		font-size: 8rem;
	}
	.p-inclusive-stay-sec__inner {
		padding-block: 40px;
		padding-inline: 40px;
	}
	.p-inclusive-stay__other {
		gap: 0 40px;
	}
}
@media screen and (max-width: 1024px) {
	.p-inclusive-stay-sec__outer {
		padding-top: 65px;
	}
	.p-inclusive-stay-sec__outer:before {
		font-size: 6.5rem;
	}
	.p-inclusive-stay-sec__inner {
		padding-block: 30px;
		padding-inline: 30px;
	}
	.p-inclusive-stay__other {
		gap: 0 30px;
	}
	.p-inclusive-stay-sec-card__ttl {
		font-size: 2rem;
	}
}
@media screen and (max-width: 960px) {
	.p-inclusive-stay__other {
		flex-direction: column;
		flex-wrap: wrap;
		align-items: center;
		gap: 40px;
	}
	.p-inclusive-stay-other__card {
		width: 100%;
	}
	.p-inclusive-stay-sec-card__img {
		max-width: 600px;
		margin-inline: auto;
	}
}
@media screen and (max-width: 767px) {
	.p-inclusive-stay-sec__col {
		width: calc(100% - 45px);
	}
	.p-inclusive-stay-sec__outer {
		padding-top: 50px;
	}
	.p-inclusive-stay-sec__outer:before {
		font-size: 5rem;
	}
	.p-inclusive-stay-sec__inner {
		padding-block: 30px 40px;
		padding-inline: 20px;
	}
	.p-inclusive-stay-sec-card__ttl {
		margin-bottom: 6px;
		font-size: 1.8rem;
		letter-spacing: .05em;
	}
}
@media screen and (max-width: 600px) {
	.p-inclusive-stay-sec__outer {
		padding-top: 40px;
	}
	.p-inclusive-stay-sec__outer:before {
		font-size: 4rem;
	}
}

/* Afternoon */
.p-inclusive-stay-sec-an__imgarea {
	padding-block-start: 0;
	display: flex;
	gap: 0 60px;
}
.p-inclusive-stay-sec-an__card {
	width: calc((100% - 120px) / 3);
}
@media screen and (max-width: 1920px) {
	.p-inclusive-stay-sec-an__card {
		width: 460px;
	}
}
@media screen and (max-width: 1280px) {
	.p-inclusive-stay-sec-an__imgarea {
		gap: 0 40px;
	}
}
@media screen and (max-width: 1024px) {
	.p-inclusive-stay-sec-an__imgarea {
		gap: 0 30px;
	}
}
@media screen and (max-width: 960px) {
	.p-inclusive-stay-sec-an__imgarea {
		flex-wrap: wrap;
		gap: 40px 30px;
	}
	.p-inclusive-stay-sec-an__card {
		width: calc((100% - 30px) / 2);
	}
}
@media screen and (max-width: 767px) {
	.p-inclusive-stay-sec-an__imgarea {
		flex-direction: column;
		gap: 30px;
	}
	.p-inclusive-stay-sec-an__card {
		width: 100%;
	}
	.p-inclusive-stay-sec-card__img {
		max-width: 600px;
		margin-bottom: 13px;
		margin-inline: auto;
	}
}

/* Dinner */
.p-inclusive-stay-sec__unit {
	padding-block-start: 0;
	display: flex;
	align-items: flex-start;
}
.p-inclusive-stay-sec-unit__cont {
	width: 40%;
	padding-right: 70px;
}
.p-inclusive-stay-sec-unit__ttl {
	margin-bottom: 30px;
	font-size: 2.2rem;
	letter-spacing: .2em;
	line-height: 1.8;
}
.p-inclusive-stay-sec-unit__txt {
	letter-spacing: .2em;
}
.p-inclusive-stay-sec-dn__txt {
	margin-bottom: 60px;
}
.p-inclusive-stay-sec-unit__img {
	width: 60%;
}
.p-inclusive-stay-sec-unit__img img {
	width: 100%;
}
@media screen and (max-width: 1280px) {
	.p-inclusive-stay-sec-unit__cont {
		padding-right: var(--inline-md);
	}
}
@media screen and (max-width: 1200px) {
	.p-inclusive-stay-sec-unit__cont,
	.p-inclusive-stay-sec-unit__img {
		width: 50%;
	}
}
@media screen and (max-width: 1024px) {
	.p-inclusive-stay-sec-unit__ttl {
		margin-bottom: 20px;
		font-size: 2rem;
		line-height: 1.75;
	}
}
@media screen and (max-width: 960px) {
	.p-inclusive-stay-sec__unit {
		flex-direction: column-reverse;
		align-items: center;
	}
	.p-inclusive-stay-sec-unit__cont,
	.p-inclusive-stay-sec-unit__img {
		width: 100%;
	}
	.p-inclusive-stay-sec-unit__cont {
		padding-right: 0;
	}
	.p-inclusive-stay-sec-unit__img {
		max-width: 600px;
		margin-bottom: 40px;
		margin-inline: auto;
	}
}
@media screen and (max-width: 767px) {	
	.p-inclusive-stay-sec-unit__img {
		margin-bottom: 25px;
	}
	.p-inclusive-stay-sec-unit__ttl {
		margin-bottom: 15px;
	}
	.p-inclusive-stay-sec-dn__txt {
		margin-bottom: 30px;
	}
}

/* Night */
.p-inclusive-stay-sec__nt {
	padding-top: 0;
}
.p-inclusive-stay-sec-nt__inner {
	padding-block: 100px;
}
@media screen and (max-width: 1280px) {
	.p-inclusive-stay-sec-nt__inner {
		padding-block: 80px;
	}
}
@media screen and (max-width: 1024px) {
	.p-inclusive-stay-sec-nt__inner {
		padding-block: 65px;
	}
}
@media screen and (max-width: 767px) {
	.p-inclusive-stay-sec-nt__inner {
		padding-block: 50px;
	}
}
@media screen and (max-width: 600px) {
	.p-inclusive-stay-sec-nt__inner {
		padding-block: 40px 50px;
	}
}

/* Morning */
.p-inclusive-stay-sec-mn__other {
	padding-block-end: 100px;
}
@media screen and (max-width: 1280px) {
	.p-inclusive-stay-sec-mn__other {
		padding-block-end: 80px;
	}
}
@media screen and (max-width: 1024px) {
	.p-inclusive-stay-sec-mn__other {
		padding-block-end: 65px;
	}
}


/* アクティビティ
------------------------------------------------- */
/*----- List -----*/
.p-activity-list {
	margin-inline: auto;
	padding-inline: 70px;
	display: flex;
	flex-wrap: wrap;
	gap: 100px 70px;
}
@media screen and (max-width: 960px) {
	.p-activity-list {
		padding-inline: 0;
		gap: 60px var(--inline-md);
	}
}
@media screen and (max-width: 767px) {
	.p-activity-list {
		padding-inline: 0;
		gap: 40px var(--inline-md);
	}
}

/* Item */
.p-activity-list__item {
	width: calc((100% - 140px) / 3);
}
.p-activity-list__item a {
	display: block;
}
.p-activity-list-item__img {
	margin-bottom: 15px;
	aspect-ratio: 480 / 644;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.p-activity-list-item__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all .5s ease-in-out;
}
.p-activity-list-item__ttl {
	margin-bottom: 10px;
	font-size: 1.8rem;
	letter-spacing: .2em;
	line-height: 1.5;
	transition: color .5s ease-in-out;
}
.p-activity-cat-area {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.p-activity-cat {
	font-size: 1.2rem;
	letter-spacing: .2em;
	line-height: 1;
}
@media (hover: hover) and (pointer: fine) {
	.p-activity-list__item a:hover .p-activity-list-item__img img {
		transform: scale(1.08);
	}
	.p-activity-list__item a:hover .p-activity-list-item__ttl {
		color: #fff;
	}
}
@media screen and (max-width: 960px) {
	.p-activity-list__item {
		width: calc((100% - var(--inline-md) * 2) / 3);
	}	
}
@media screen and (max-width: 767px) {
	.p-activity-list__item {
		width: calc((100% - var(--inline-md)) / 2);
	}	
	.p-activity-list-item__ttl {
		margin-bottom: 5px;
		font-size: 1.6rem;
		letter-spacing: .1em;
	}
}

/* ----- Pager -----*/
.p-pager {
	text-align: center;
}
.page-numbers {
	margin-top: 100px;
	padding-inline: 15px;
	display: inline-block;
	font-family: var(--font-family-cz);
	letter-spacing: 0;
	line-height: 1;
	vertical-align: middle;
	transition: all .5s ease-in-out;
}
.page-numbers.current {
	color: #fff;
}
@media (hover: hover) and (pointer: fine) {
	.page-numbers:hover {
		color: #fff;
	}
}
.page-numbers.prev,
.page-numbers.next {
	width: 20px;
	padding-inline: 0;
	position: relative;
}
.page-numbers.prev {
	margin-right: 15px;
}
.page-numbers.next {
	margin-left: 15px;
}
.page-numbers.prev:before,
.page-numbers.prev:after,
.page-numbers.next:before,
.page-numbers.next:after {
	width: 20px;
	aspect-ratio: 5 / 1;
	content: '';
	position: absolute;
	top: -3px;
	left: 0;
	transition: all .5s ease-in-out;
}
.page-numbers.prev:before,
.page-numbers.prev:after {
	transform: scale(-1, 1);
}
.page-numbers.prev:before,
.page-numbers.next:before {
	background: url(../images/arr_a_sm.svg) no-repeat 0 0 / 100%;
	opacity: 1;
}
.page-numbers.prev:after,
.page-numbers.next:after {
	background: url(../images/arr_w_sm.svg) no-repeat 0 0 / 100%;
	opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
	.page-numbers.prev:hover:before,
	.page-numbers.next:hover:before {
		opacity: 0;
	}
	.page-numbers.prev:hover:after,
	.page-numbers.next:hover:after {
		opacity: 1;
	}
}
@media screen and (max-width: 1024px) {
	.page-numbers {
		margin-top: 80px;
	}
}
@media screen and (max-width: 767px) {
	.page-numbers {
		margin-top: 60px;
	}
}


/* アクティビティ（詳細）
------------------------------------------------- */
.p-post-dtl-body {
	padding-block: 100px 150px;
}
.p-post-inner {
	width: 100%;
	max-width: 800px;
	margin-inline: auto;
}

/*----- Header -----*/
.p-post-header {
	margin-bottom: 80px;
	padding-bottom: 70px;
	border-bottom: 1px solid #3d3d3d;
}
.p-activity-header__cat-area {
	margin-bottom: 70px;
}
.p-activity-header__ttl {
	font-size: 3rem;
	letter-spacing: .2em;
	line-height: 1.5;
}
@media screen and (max-width: 1024px) {
	.p-post-header {
		margin-bottom: 65px;
		padding-bottom: 55px;
	}
	.p-activity-header__cat-area {
		margin-bottom: 55px;
	}
	.p-activity-header__ttl {
		font-size: 2.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-post-header {
		margin-bottom: 50px;
		padding-bottom: 45px;
	}
	.p-activity-header__cat-area {
		margin-bottom: 45px;
	}
	.p-activity-header__ttl {
		font-size: 2.2rem;
	}
}

/* ----- Contents -----*/
.p-post-cont {
	margin-bottom: 150px;
}
.p-post-txt-area {
	margin-bottom: 90px;
}
.p-post-txt-area p {
	margin-bottom: 40px;
}
.p-activity-info {
	border-top: 1px solid #3d3d3d;
}
.p-activity-info dl {
	padding-block: 20px;
	display: flex;
	align-items: flex-start;
	border-bottom: 1px solid #3d3d3d;
}
.p-activity-info:has(.p-activity-info__note) dl:nth-last-of-type(1) {
	margin-bottom: 30px;
}
.p-activity-info dl dt,
.p-activity-info dl dd p {
    margin-bottom: 0;
	font-size: 1.5rem;
	letter-spacing: .2em;
	line-height: 1.75;
}
.p-activity-info dl dt {
	width: 150px;
}
.p-activity-info dl dd {
	width: calc(100% - 150px);
}
.p-activity-info__note {
	font-size: 1.5rem;
	letter-spacing: .2em;
	line-height: 1.75;
}
.p-post__btn {
	width: 200px;
	margin-inline: auto;
}
.p-post-btn__link:before,
.p-post-btn__link:after {
	right: 5px;
}
@media screen and (max-width: 1024px) {
	.p-post-cont {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-post-cont {
		margin-bottom: 80px;
	}
	.p-post-txt-area {
		margin-bottom: 50px;
	}
	.p-activity-info dl dt,
	.p-activity-info dl dd {
		font-size: 1.4rem;
		letter-spacing: .1em;
	}
	.p-activity-info dl dt {
		width: 80px;
	}
	.p-activity-info dl dd {
		width: calc(100% - 80px);
	}
	.p-activity-info__note {
		font-size: 1.4rem;
		letter-spacing: .1em;
	}
}

.p-post-cont h2 {
	font-size: 2.4rem;
	margin: 0 0 20px;
	padding: 0 0 0 20px;
	position: relative;
	line-height: 1.8;
}
.p-post-cont h2::before {
	content: '';
	position: absolute;
	left: 0;
	top: 2px;
	width: 4px;
	height: 100%;
	background: var(--color-g);
  border-radius: 5px;
}
.p-post-cont h3 {
	font-size: 2.0rem;
	margin: 0 0 20px;
	padding: 0 0 0 14px;
	position: relative;
}
.p-post-cont h3::before {
	content: '';
	position: absolute;
	top: 100%;
	border-style: solid;
	border-color: transparent;
	left: 0;
	top: 20px;
	width: 2px;
	height: 2px;
	background: var(--color-g);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.p-post-cont h4 {
	font-size: 1.8rem;
	margin-bottom: 20px;
}
.p-post-cont img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.p-post-cont img.alignright {
  margin: 0 0 0 10px;
  display: inline;
}	 
.p-post-cont img.alignleft {
  margin: 0 10px 0 0;
  display: inline;
}			 
.p-post-cont table {
  margin-bottom: 50px;
  width: 100%;
  border-bottom: 1px solid #c8d8c4;
}				 
.p-post-cont table th ,.p-post-cont table td {
  padding: 30px 20px;
  border-top: 1px solid #c8d8c4;
}				 
.p-post-cont table th {
  width: 20%;
}	 
.p-post-cont .aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}  
.p-post-cont .alignright {
  float: right;
} 
.p-post-cont .alignleft {
  float: left;
}
.p-post-cont p {
	margin-bottom: 20px;
	font-size: 1.8rem;
}
.p-post-cont img {
	margin-bottom: 10px;
}
@media screen and (max-width: 769px) {
	.p-post-cont h2 {
		font-size: 1.8rem;
	}
	.p-post-cont h3 {
		font-size: 1.6rem;
	}
	.p-post-cont h3::before {
		top: 12px;
	}
	.p-post-cont h4 {
		font-size: 1.4rem;
	}
  .p-post-cont table {
    margin-bottom: 50px;
    width: 100%;
    border-bottom: 1px solid #3d3d3d;
  }				 
  .p-post-cont table th ,.p-post-cont table td {
    padding: 25px 0;
    border-top: 1px solid #3d3d3d;
  }				 
  .p-post-cont table th {
    width: 40%;
  }	 
  .p-post-cont img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .p-post-cont img.alignright {
    margin: 0 auto;
    display: block;
  }	 
  .p-post-cont img.alignleft {
    margin: 0 auto;
    display: block;
  }		 
  .p-post-cont .aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }  
  .p-post-cont .alignright {
    float: none;
  } 
  .p-post-cont .alignleft {
    float: none;
  }
  .p-post-cont p{
    font-size: 1.4rem;
  }
}


/* よくある質問
------------------------------------------------- */
.p-faq-body {
	padding-block: 100px;
	display: flex;
	justify-content: space-between;
	gap: 0 var(--inline-md);
}
@media screen and (max-width: 960px) {
	.p-faq-body {
		flex-direction: column;
		align-items: center;
	}
}

/*----- Sidebar -----*/
.p-sidebar-col {
	width: 400px;
	padding-left: var(--inline-md);
	position: relative;
}
.p-sidebar-li {
	margin-bottom: 30px;
	line-height: 1;
}
.p-sidebar-li:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-sidebar-li a {
	display: block;
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 1280px) {
	.p-sidebar-col {
		width: 310px;
	}
	.p-sidebar-li a {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 960px) {
	.p-sidebar-col {
		width: 100%;
		margin-bottom: 60px;
		padding-inline: var(--inline-md);
	}
	.p-sidebar-ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 20px 30px;
	}
	.p-sidebar-li {
		margin-bottom: 0;
	}
	.p-sidebar-li a {
		padding-left: 20px;
		position: relative;
	}
	.p-sidebar-li a:before {
		width: 10px;
		height: 1px;
		content: '';
		position: absolute;
		top: 9px;
		left: 0;
		background: var(--color-a);
		transition: background-color .5s ease-in-out;
	}
}
@media screen and (max-width: 767px) {
	.p-sidebar-ul {
		gap: 20px 15px;
	}
	.p-sidebar-li a {
		font-size: 1.3rem;
		letter-spacing: .1em;
	}
	.p-sidebar-li a:before {
		top: 8px;
	}
}

/* ----- Main Col -----*/
.p-main-col {
	width: calc(100% - 400px);
}
.p-faq-sec {
	margin-bottom: 100px;
	padding-bottom: 100px;
	padding-inline: var(--inline-md);
	border-bottom: 1px solid #3d3d3d;
}
.p-faq-sec:nth-last-of-type(1) {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
.p-faq-sec__ttl {
	padding-bottom: 50px;
	font-size: 3rem;
	letter-spacing: .3em;
	line-height: 1;
	border-bottom: 1px solid #3d3d3d;
}
.p-faq-cont {
	padding-block: 33px;
	position: relative;
	border-bottom: 1px solid #3d3d3d;
	cursor: pointer;
}
.p-faq-cont__ttl {
	padding-inline: 55px 80px;
	position: relative;
	font-size: 1.8rem;
	letter-spacing: .2em;
	line-height: 1.75;
}
.p-faq-cont__ttl:before,
.p-faq-cont__txtarea:before {
	position: absolute;
	font-family: var(--font-family-pf);
	letter-spacing: 0;
	line-height: 1;
}
.p-faq-cont__ttl:before {
	content: 'Q';
	top: 2px;
	left: 15px;
	font-size: 2.4rem;
}
.p-faq-cont__txtarea {
	padding-top: 20px;
	padding-inline: 55px 0;
	position: relative;
}
.p-faq-cont__txtarea:before {
	content: 'A';
	top: 29px;
	left: 18px;
	font-size: 2rem;
}
.p-faq-cont__txt {
	letter-spacing: .2em;
}
.p-faq-trigger {
	width: 21px;
	height: 20px;
	position: absolute;
	top: 40px;
	right: 15px;
}
.p-faq-trigger span {
	display: inline-block;
	position: absolute;
	background: var(--color-main);
	transition: .3s;
}
.p-faq-trigger span:nth-of-type(1) {
	width: 100%;
	height: 1px;
	top: 50%;
	left: 0;
}
.p-faq-trigger span:nth-of-type(2) {
	width: 1px;
	height: 100%;
	top: 0;
	left: 50%;
}
.p-faq-trigger.is-trigger span:nth-of-type(1) {
	opacity: 0;
	transform: rotate(360deg);
}
.p-faq-trigger.is-trigger span:nth-of-type(2) {
	transform: rotate(450deg);
}
@media screen and (max-width: 1280px) {
	.p-main-col {
		width: calc(100% - 310px);
	}
}
@media screen and (max-width: 1024px) {
	.p-faq-sec {
		margin-bottom: 80px;
		padding-bottom: 80px;
	}
	.p-faq-sec__ttl {
		padding-bottom: 35px;
		font-size: 2.5rem;
		letter-spacing: .2em;
	}
	.p-faq-cont__ttl {
		font-size: 1.6rem;
		letter-spacing: .1em;
	}
	.p-faq-cont__ttl:before {
		font-size: 2rem;
	}
	.p-faq-cont__txt {
		font-size: 1.4rem;
		letter-spacing: .1em;
	}
	.p-faq-cont__txtarea:before {
		top: 25px;
	}
}
@media screen and (max-width: 960px) {
	.p-main-col {
		width: 100%;
	}
}
@media screen and (max-width: 767px) {
	.p-faq-sec {
		margin-bottom: 50px;
		padding-bottom: 50px;
	}
	.p-faq-sec__ttl {
		padding-bottom: 20px;
		font-size: 2rem;
		letter-spacing: .1em;
	}
	.p-faq-cont {
		padding-block: 20px;
	}
	.p-faq-cont__ttl {
		padding-inline: 30px 40px;
		font-size: 1.6rem;
		letter-spacing: .1em;
	}
	.p-faq-cont__ttl:before {
		top: 4px;
		left: 0;
		font-size: 1.8rem;
	}
	.p-faq-cont__txtarea:before {
		left: 2px;
		font-size: 1.6rem;
	}
	.p-faq-cont__txtarea {
		padding-inline: 30px 0;
	}
	.p-faq-trigger {
		width: 16px;
		height: 15px;
		top: 26px;
		right: 0;
	}
}
@media screen and (max-width: 600px) {
	.p-faq-trigger {
		top: 28px;
	}	
}


/* お知らせ
------------------------------------------------- */
.p-news-body {
	padding-block: 70px 200px;
}
.p-news__list {
	width: 69.8%;
	margin-inline: auto;
}
.p-news-list__item {
	width: 100%;
}
.p-news-list__item a {
	width: 100%;
	padding-block: 30px;
	display: flex;
	align-items: center;
	position: relative;
	border-bottom: 1px solid var(--color-a);
	transition: all .5s ease-in-out;
}
.p-news-list__item a:before,
.p-news-list__item a:after {
	width: 20px;
	aspect-ratio: 5 / 1;
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	transition: all .5s ease-in-out;
}
.p-news-list__item a:before {
	background: url(../images/arr_a_sm.svg) no-repeat 0 0 / 100%;
	opacity: 1;
}
.p-news-list__item a:after {
	background: url(../images/arr_w_sm.svg) no-repeat 0 0 / 100%;
	opacity: 0;
}
.p-news-list-item__img {
	width: 200px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.p-news-list-item__img img {
	width: 100%;
	transition: transform .5s ease-in-out;
}
.p-news-list-item__cont {
	width: calc(100% - 200px);
	padding-inline: 50px 140px;
}
.p-news-list-item__date,
.p-news-list-item__ttl {
	transition: color .5s ease-in-out;
}
.p-news-list-item__date {
	margin-bottom: 5px;
	font-family: var(--font-family-cz);
	font-size: 1.2rem;
	letter-spacing: .2em;
	line-height: 1;
}
.p-news-list-item__ttl {
	letter-spacing: .2em;
	line-height: 1.75;
}
@media (hover: hover) and (pointer: fine) {
	.p-news-list__item a:hover {
		border-color: #fff;
	}
	.p-news-list__item a:hover:before,
	.p-news-list__item a:hover:after,
	.p-news-list__item a:hover .p-tp-news-list-item__cont:before,
	.p-news-list__item a:hover .p-tp-news-list-item__cont:after {
		right: 0;
	}
	.p-news-list__item a:hover:before,
	.p-news-list__item a:hover .p-tp-news-list-item__cont:before {
		opacity: 0;
	}
	.p-news-list__item a:hover:after,
	.p-news-list__item a:hover .p-tp-news-list-item__cont:after {
		opacity: 1;
	}
	.p-news-list__item a:hover .p-tp-news-list-item__img img {
		transform: scale(1.15);
	}
	.p-news-list__item a:hover .p-tp-news-list-item__date,
	.p-news-list__item a:hover .p-tp-news-list-item__ttl {
		color: #fff;
	}
}
@media screen and (max-width: 1920px) {
	.p-news__list {
		width: 100%;
		max-width: 1200px;
	}
}
@media screen and (max-width: 1024px) {
	.p-news-list-item__cont {
		padding-inline: 50px 100px;
	}
}
@media screen and (max-width: 960px) {
	.p-news-body {
		padding-block-start: 50px !important;
	}
	.p-news-list-item__cont {
		padding-inline: 50px 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-news-list__item a {
		flex-direction: column;
		align-items: center;
	}
	.p-news-list__item a:before,
	.p-news-list__item a:after {
		display: none;
	}
	.p-news-list-item__img {
		width: 100%;
		max-width: 600px;
		margin-bottom: 30px;
	}
	.p-news-list-item__cont {
		width: 100%;
		padding-inline: 0 50px;
		position: relative;
	}
	.p-news-list-item__cont:before,
	.p-news-list-item__cont:after {
		width: 20px;
		aspect-ratio: 5 / 1;
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
		transition: all .5s ease-in-out;
	}
	.p-news-list-item__cont:before {
		background: url(../images/arr_a_sm.svg) no-repeat 0 0 / 100%;
		opacity: 1;
	}
	.p-news-list-item__cont:after {
		background: url(../images/arr_w_sm.svg) no-repeat 0 0 / 100%;
		opacity: 0;
	}
}


/* お知らせ（詳細）
------------------------------------------------- */
.p-news-date {
	margin-bottom: 70px;
	font-family: var(--font-family-cz);
	font-size: 1.2rem;
	letter-spacing: .2em;
}
.p-news-header__ttl {
	font-size: 3rem;
	letter-spacing: .2em;
	line-height: 1.5;
}
@media screen and (max-width: 1024px) {
	.p-news-date {
		margin-bottom: 55px;
	}
	.p-news-header__ttl {
		font-size: 2.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-news-date {
		margin-bottom: 45px;
	}
	.p-news-header__ttl {
		font-size: 2.2rem;
	}
}


/* お問い合わせ
------------------------------------------------- */
.p-contact-inner {
	width: 800px;
	margin-inline: auto;
}
@media screen and (max-width: 1920px) {
	.p-contact-inner {
		width: 100%;
		max-width: 800px;
	}
}

/*----- Lead -----*/
.p-contact-txt {
	margin-bottom: 100px;
	text-align: center;
}
@media screen and (max-width: 1024px) {
	.p-contact-txt {
		margin-bottom: 60px;
	}
}
@media screen and (max-width: 767px) {
	.p-contact-txt {
		margin-bottom: 30px;
	}
}

/* ----- Form -----*/
.p-form-info {
	margin-bottom: 30px;
}
.p-form-info dl {
	padding-block: 20px;
	border-bottom: 1px solid #3d3d3d;
}

/* ----- Pp -----*/
.p-pp {
	width: 100%;
	height: 300px;
	margin-bottom: 80px;
	background: #1d1919;
	overflow-y: auto;
}
.p-pp__inner {
	padding: 30px;
}
.p-pp__ttl {
	margin-bottom: 20px;
	padding-bottom: 20px;
	font-size: 1.8rem;
	letter-spacing: .2em;
	line-height: 1;
	border-bottom: 1px solid #3d3d3d;
}
.p-pp__sec {
	margin-bottom: 35px;
}
.p-pp__sec:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-pp-sec__ttl,
.p-pp-sec__txt {
	font-size: 1.5rem;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.p-pp__inner {
		padding: 20px;
	}
}

/* Checkbox */
.p-contact-pp-check {
	text-align: center;
	margin-bottom: 80px;
}
.p-contact-pp-check input[type="checkbox"] {
	width: 18px;
	aspect-ratio: 1;
	margin-right: 5px;
	display: inline-block;
	position: relative;
	cursor: pointer;
	vertical-align: -2px;
	accent-color: #181616;
	border: 1px solid #3d3d3d;
	
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.p-contact-pp-check input[type="checkbox"]:checked:after {
    width: 6px;
    height: 10px;
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 5px;
    transform: rotate(40deg);
    border-bottom: 2px solid var(--color-main);
    border-right: 2px solid var(--color-main);
}
.p-form-check__txt02 {
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	.p-pp {
		height: 200px;
		margin-bottom: 50px;
	}
	.p-pp__ttl {
		margin-bottom: 15px;
		padding-bottom: 15px;
		font-size: 1.6rem;
		letter-spacing: .1em;
	}
	.p-pp__sec {
		margin-bottom: 20px;
	}
	.p-pp-sec__ttl,
	.p-pp-sec__txt {
		font-size: 1.3rem;
		line-height: 1.75;
	}
	.p-contact-pp-check {
		margin-bottom: 50px;
	}
}

/* ----- Buttonarea -----*/
.p-btn-area {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px 20px;
}
.p-btn-submit {
	width: 240px;
}
.p-btn-submit input,
.p-btn-submit a {
	display: block;
	width: 100%;
	padding-block: 6px 8px;
	text-align: center;
	background: #384232;
	border-radius: 25px;
	transition: all .5s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.p-btn-submit input:hover,
	.p-btn-submit a:hover {
		color: var(--color-g) !important;
		background: rgba(255, 255, 255, .8) !important;
	}	
}
@media screen and (max-width: 767px) {
	.p-btn-submit {
		width: 200px;
	}
	.p-btn-area {
		gap: 10px 
	}
}

/* ----- Confirm, Complete, Error -----*/
#form02 .p-form-info {
	margin-bottom: 50px;
}
.p-btn-submit.-back input {
	color: #1E1E1E;
	background: #8f8f8f;
}
.error_messe {
	color: #e02f2f;
}
#form02 dd {
	color: var(--color-c);
}
.p-btn-submit {
	width: 240px;
}
.p-btn-submit a {
	width: 100%;
	padding-block: 6px 8px;
	text-align: center;
	background: #384232;
	border-radius: 25px;
	transition: all .5s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.p-btn-submit a:hover {
		color: var(--color-g) !important;
		background: rgba(255, 255, 255, .8) !important;
	}	
}

/* Contactform7 */
.error_messe {
	color: #b10000;
	font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
	.error_messe {
		font-size: 1.3rem;
	}
}
.wpcf7-spinner {
	display: none !important;
}
.wpcf7-not-valid-tip {
	font-size: 1.2rem !important;
}
div.wpcf7-mail-sent-ok,
div.wpcf7-mail-sent-ng,
div.wpcf7-spam-blocked,
div.wpcf7-validation-errors,
div.wpcf7-response-output {
	text-align: center;
	padding: 20px !important;
	margin: 0 auto 40px !important;
	border-radius: 10px !important;
}
div.wpcf7-response-output,
div.wpcf7-spam-blocked {
	border: 2px solid #ffa500 !important;
	color: #ffa500 !important;
}
.wpcf7-form-control .wpcf7-list-item {
	margin-left: 0;
}
.wpcf7-list-item-label {
	cursor: pointer;
}



/* Utility
------------------------------------------------- */
/* ---------- Display ----------*/
.u-m-xxl,
.u-m-xl,
.u-m-lg,
.u-m-md,
.u-m-sm,
.u-m-xs { display: none;}
.u-p-xxl,
.u-p-xl,
.u-p-lg,
.u-p-md,
.u-p-sm,
.u-p-xs { display: block;}
@media screen and (max-width: 1440px) {
	.u-m-xxl { display: block;}
	.u-p-xxl { display: none;}
}
@media screen and (max-width: 1280px) {
	.u-m-xl { display: block;}
	.u-p-xl { display: none;}
}
@media screen and (max-width: 1024px) {
	.u-m-lg { display: block;}
	.u-p-lg { display: none;}
}
@media screen and (max-width: 960px) {
	.u-m-md { display: block;}
	.u-p-md { display: none;}
}
@media screen and (max-width: 767px) {
	.u-m-sm { display: block;}
	.u-p-sm { display: none;}
}
@media screen and (max-width: 600px) {
	.u-m-xs { display: block;}
	.u-p-xs { display: none;}
}

/*
.p-tp-concept__txt,
.p-tp-cuisine .c-tp-sec-txt,
.p-tp-faq,
.p-tp-faq__list {
	margin-bottom: 0;
}
.p-tp-cuisine .p-tp-sec__imgarea {
	padding-bottom: 100px;
}
.c-gnav-main__ul {
	justify-content: center;
}
*/

/* 2025.09.28追加 */

/* ---------- Index ----------*/
.main_visual{
   position: relative;
  height: 100vh;
  width: 100%;
  overflow: hidden;
}
.mv_video{
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: -1;
}

/* ---------- About ----------*/
.p-about-inclusive-cont__video_l {
  width: 100%;
  max-width: 550px;
  height: 750px;        
  overflow: hidden;      
  position: relative;
  margin-top: 100px;
}

.p-about-inclusive-cont__video_l video {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;                
  left: 0;     
}
@media screen and (min-width: 960px) and (max-width: 1475px){
  .p-about-inclusive-cont__video_l {
    max-width: 450px;
    height: 550px;
  }
}
@media screen and (min-width: 460px)and (max-width: 575px){
  .p-about-inclusive-cont__video_l {
    max-width: 400px;
    height: 450px;
  }
}
@media screen and (max-width: 460px){
  .p-about-inclusive-cont__video_l {
    height: 350px;
    max-width: 300px;
  }
}
.p-about-inclusive-cont__video_l img {
	width: 100%;
}

.p-about-inclusive-cont__video_r{
  width: 100%;
  max-width: 700px;
  height: 100%;
  overflow: hidden;
  position: relative;
  margin-top: 100px;
  margin-left: 250px;
  aspect-ratio: 16 / 9 ;
}
.p-about-inclusive-cont__video_r video{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  clip-path: inset(0 150px 0 0);
}
@media screen and (min-width: 768px) and (max-width: 1475px){
  .p-about-inclusive-cont__video_r {
    margin-left: 100px;
  }
}
@media screen and (max-width: 767px){
  .p-about-inclusive-cont__video_r {
    margin-top: 50px;
    margin-left: 50px;
  }
}
@media screen and (max-width: 500px){
  .p-about-inclusive-cont__video_r video{
    clip-path: inset(0 50px 0 0);
}
}