html {
	font-size: 100%;
}

body {
	color: #565565;
	font-family: "Zen Kaku Gothic New", "Noto Sans JP", sans-serif;
	-webkit-text-size-adjust: 100%;
	   -moz-text-size-adjust: 100%;
	        text-size-adjust: 100%;
	word-wrap: anywhere;
}

:where(:link,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]),
:where(:visited,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]),
:where(area[href],
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]) {
	cursor: pointer;
}

:where(:-moz-any-link,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]) {
	cursor: pointer;
}

:where(:any-link,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]) {
	cursor: pointer;
}

p,
dl,
dt,
dd {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
}

/*****************************
* A Modern CSS Reset (https://github.com/hankchizljaw/modern-css-reset)
* 上記に、ul要素,ol要素,a要素への記述追加
*****************************/

/* Box sizing rules */

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd,
ul,
ol,
li {
	margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */

ul,
ol {
	list-style: none;
	padding: 0;
}

/* Set core body defaults */

body {
	font-weight: 500;
	line-height: 1;
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	-webkit-text-size-adjust: 100%;
	word-wrap: anywhere;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	        text-decoration-skip-ink: auto;
}

a {
	color: inherit;
	-webkit-text-decoration: none;
	text-decoration: none;
}

/* Make images easier to work with */

img,
picture {
	display: block;
	max-width: 100%;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

button {
	background-color: transparent;
	background-color: initial;
	border: none;
	padding: 0;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */

.l-inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
	width: 100%;
}

.l-main {
	padding-top: 1.25rem;
	padding-bottom: 3.125rem;
}

.l-section {
	padding-top: 6.25rem;
	padding-bottom: 6.25rem;
}

.c-accordion__items {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.c-accordion__item {
	background-color: #FFFFFF;
	border-radius: 0.5rem;
	transition: all 0.3s ease;
}

.c-accordion__item.is-open {
	background-color: #E8E2D3;
}

.c-accordion__item.is-open .c-accordion__title {
	box-shadow: none;
}

.c-accordion__item.is-open .c-accordion__body {
	padding: 0 1.25rem 1.25rem;
}

.c-accordion__titleBox {
	position: relative;
}

.c-accordion__titleBox::before {
	color: #998E73;
	content: "Q";
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.375rem;
	font-weight: 600;
	left: 0.625rem;
	line-height: 2;
	position: absolute;
	top: 0.625rem;
}

.c-accordion__title {
	border: none;
	border-radius: 0.5rem;
	box-shadow: 0 0.25rem 0.9375rem 0rem #A3977A;
	color: #998E73;
	cursor: pointer;
	font-size: 1rem;
	line-height: 2;
	padding: 1rem 1.5625rem 1rem 3.25rem;
	position: relative;
	text-align: left;
	transition: background-color 0.3s ease;
	width: 100%;
}

.c-accordion__title::before,
.c-accordion__title::after {
	background-color: #998E73;
	content: "";
	height: 1px;
	position: absolute;
	right: 0.8125rem;
	top: 2rem;
	width: 0.625rem;
}

.c-accordion__title::after {
	transform: rotate(90deg);
	transition: transform 0.3s ease;
}

.c-accordion__item.is-open .c-accordion__title::after {
	transform: rotate(180deg);
}

.c-accordion__body {
	background-color: #E8E2D3;
	border-bottom-left-radius: 0.5rem;
	border-bottom-right-radius: 0.5rem;
	overflow: hidden;
}

.c-accordion__textBox {
	background-color: #FFFFFF;
	padding: 1.25rem 1.25rem 1.25rem 3.875rem;
	position: relative;
}

.c-accordion__textBox::before {
	content: "A";
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.375rem;
	font-weight: 600;
	left: 1.25rem;
	line-height: 1.1;
	position: absolute;
	top: 1.25rem;
}

.c-accordion__text {
	font-size: 0.875rem;
	line-height: 2;
	margin: 0;
}

.c-box-btn {
	background-color: #F2F2F2;
	display: inline-block;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	min-width: 12.5rem;
	padding-top: 1rem;
	padding-bottom: 1rem;
	text-align: center;
}

.c-box-title {
	background-color: #E8E2D3;
	border-radius: calc(infinity * 1px);
	color: #766A4C;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.4;
	padding-top: 1rem;
	padding-bottom: 1rem;
	text-align: center;
}

.c-box-title._bgWhite {
	background-color: #FFFFFF;
}

.c-box-title._sm {
	padding-top: 0.9375rem;
	padding-bottom: 0.9375rem;
}

.c-box-title2 {
	background-color: #998E73;
	color: #FFFFFF;
	display: inline-block;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.4;
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.c-breadcrumbs__lists {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 0 1em;
}

.c-breadcrumbs__list {
	position: relative;
}

.c-breadcrumbs__list:first-child {
	flex-shrink: 0;
}

.c-breadcrumbs__list:not(:first-child)::before {
	color: #998E73;
	content: "/";
	font-weight: 400;
	left: -0.7em;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
}

.c-breadcrumbs__link {
	color: #998E73;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
	text-transform: uppercase;
}

.c-breadcrumbs__list._parent {
	display: none;
}

.c-btn {
	align-items: center;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	gap: 1.625rem;
}

.c-btn svg {
	display: block;
	transition: translate 0.3s ease;
	translate: -0.625rem;
}

.c-btn:hover {
	opacity: 1;
}

.c-btn._brownBtn {
	color: #998E73;
}

.c-btn._whiteBtn {
	color: #FFFFFF;
}

.c-btn._wrapBtn {
	background-color: #998E73;
	color: #FFFFFF;
	justify-content: center;
	min-width: 20.1875rem;
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
}

.c-btn__text {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	text-transform: uppercase;
}

.c-btn._wrapBtn .c-btn__text {
	font-size: 1rem;
}

.c-btn__arrow {
	position: relative;
}

.c-btn._wrapBtn .c-btn__arrow {
	translate: -0.3125rem;
}

.c-btn__arrow::before {
	align-items: center;
	border: 1px solid currentColor;
	border-radius: 50%;
	content: "";
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 2rem;
	justify-content: center;
	left: 50%;
	position: absolute;
	top: 50%;
	transition: width 0.3s ease, height 0.3s ease;
	translate: -50% -50%;
	width: 2rem;
}

.c-btn:hover .c-btn__arrow::before {
	height: 2.625rem;
	width: 2.625rem;
}

.c-btn:hover svg {
	translate: 0;
}

.c-card__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	row-gap: 1.25rem;
}

.c-card__link:hover {
	opacity: 1;
}

.c-card__imgBox {
	align-items: center;
	background-color: #F2F2F2;
	display: grid;
	grid-template-columns: 3.125rem 1fr;
	position: relative;
}

.c-card__img {
	position: relative;
}

.c-card__img::before {
	background-color: rgba(44, 47, 60, 0.25);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.c-card__img img {
	aspect-ratio: 1/1;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.c-card__title {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}

.c-card__btn {
	align-items: center;
	bottom: 1.1875rem;
	color: #FFFFFF;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	gap: 1.625rem;
	position: absolute;
	right: 1.4375rem;
}

.c-card__btn:hover {
	opacity: 1;
}

.c-card__btnText {
	color: #FFFFFF;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	text-transform: uppercase;
}

.c-card__btnArrow {
	position: relative;
}

.c-card__btnArrow svg {
	display: block;
	transition: translate 0.3s ease;
	translate: -0.625rem;
}

.c-card__btnArrow::before {
	align-items: center;
	border: 1px solid currentColor;
	border-radius: 50%;
	content: "";
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 2rem;
	justify-content: center;
	left: 50%;
	position: absolute;
	top: 50%;
	transition: width 0.3s ease, height 0.3s ease;
	translate: -50% -50%;
	width: 2rem;
}

.c-card__link:hover .c-card__btnArrow::before {
	height: 2.625rem;
	width: 2.625rem;
}

.c-card__link:hover .c-card__btnArrow svg {
	translate: 0;
}

.c-card__text {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-card2 {
	background-color: #FFFFFF;
	box-shadow: 0 0.375rem 0.9375rem #F2F0EE;
	height: 100%;
}

.c-card2__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	row-gap: 0;
}

.c-card2__img img {
	aspect-ratio: 164/82;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.c-card2__body {
	padding: 0 0.5rem 0.5rem;
}

.c-card2__category {
	background-color: #E8E2D3;
	color: #998E73;
	display: inline-block;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-card2__date {
	color: #998E73;
	display: block;
	font-size: 0.625rem;
	font-weight: 400;
	line-height: 2;
}

.c-card2__title {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
}

.c-card2._movie {
	background-color: transparent;
	box-shadow: none;
}

.c-card2._movie .c-card2__link {
	display: block;
	position: relative;
	row-gap: 0;
}

.c-card2._movie .c-card2__body {
	padding: 0;
}

.c-card2._movie .c-card2__img img {
	aspect-ratio: 345/191;
}

.c-card2._movie .c-card2__date {
	color: #CDD9E2;
}

.c-card2._movie .c-card2__title {
	bottom: 0;
	color: #FFFFFF;
	font-weight: 500;
	left: 0;
	padding: 0.5rem 0.9375rem;
	position: absolute;
	z-index: 2;
}

.c-card2._movie .c-card2__title::before {
	background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#565565));
	background: linear-gradient(to bottom, transparent, #565565);
	bottom: 0;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.c-card2._media {
	box-shadow: none;
}

.c-card2._media .c-card2__body {
	padding: 0;
}

.c-card2._media .c-card2__date {
	color: #565565;
}

.c-card2._media .c-card2__title {
	font-weight: 500;
}

.c-card3__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.c-card3__imgBox {
	text-align: center;
}

.c-card3__detail {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
}

.c-card3__img img {
	aspect-ratio: 328/164;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.c-card3__imgText {
	font-size: 0.625rem;
	font-weight: 400;
	line-height: 2;
}

.c-card3__title {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
}

.c-card3__text {
	display: none;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-card4__title {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.c-card4__title._lg {
	font-size: 1.25rem;
	line-height: 2;
}

.c-card4__content {
	-moz-column-gap: 0.625rem;
	     column-gap: 0.625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 1.25rem;
}

.c-card4__imgBox {
	height: 100%;
	width: 34.7826086957%;
}

.c-card4__img {
	height: inherit;
}

.c-card4__img img {
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.c-card4__lists {
	flex-grow: 1;
}

.c-card4__list {
	position: relative;
}

.c-card4__list::before {
	color: #998E73;
	content: "＞";
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	position: absolute;
	right: 0.625rem;
	top: 50%;
	translate: 0 -50%;
	z-index: 1;
}

.c-card4__list + .c-card4__list {
	margin-top: 0.625rem;
}

.c-card4__link {
	background-color: #E8E2D3;
	color: #998E73;
	display: block;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	padding: 0.625rem;
}

.c-card4__btn {
	align-items: center;
	color: #998E73;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1.875rem;
	justify-content: center;
	margin-top: 1.375rem;
}

.c-card4__btn:hover {
	opacity: 1;
}

.c-card4__btnText {
	color: #998E73;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	text-transform: uppercase;
}

.c-card4__btnArrow {
	position: relative;
}

.c-card4__btnArrow svg {
	display: block;
	transition: translate 0.3s ease;
	translate: -0.8125rem;
}

.c-card4__btnArrow::before {
	align-items: center;
	border: 1px solid currentColor;
	border-radius: 50%;
	content: "";
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 2rem;
	justify-content: center;
	left: 39%;
	position: absolute;
	top: 60%;
	transition: width 0.3s ease, height 0.3s ease;
	translate: -50% -50%;
	width: 2rem;
}

.c-card4__btn:hover .c-card4__btnArrow::before {
	height: 2.625rem;
	width: 2.625rem;
}

.c-card4__btn:hover .c-card4__btnArrow svg {
	translate: -0.1875rem;
}

.c-check-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.875rem;
	font-weight: 400;
	gap: 0.625rem;
	line-height: 2;
}

.c-check-box._first {
	align-items: center;
	font-size: 1rem;
	line-height: 1.4;
}

.c-check-box._first + .c-check-box {
	margin-top: 1.25rem;
}

.c-check-box::before {
	background: url(../images/common/icon_check-box.webp) no-repeat center center/contain;
	content: "";
	flex-shrink: 0;
	height: 1.875rem;
	width: 1.875rem;
}

.c-cta {
	border: 1px solid #FFFFFF;
	bottom: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	position: fixed;
	right: 0;
	width: 100%;
	z-index: 100;
}

.c-cta._teaser {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
}

.c-cta__link {
	align-items: center;
	background-color: #565565;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	justify-content: center;
	padding-top: 1.221875rem;
	padding-bottom: 1.221875rem;
	position: relative;
}

._teaser .c-cta__link {
	padding-top: 0.8125rem;
	padding-bottom: 0.8125rem;
	width: 100%;
}

.c-cta__link:not(:first-child)::before {
	background-color: #FFFFFF;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 0.0625rem;
}

.c-cta__icon {
	height: 1.125rem;
	width: 1rem;
}

.c-cta__icon._tel {
	height: 1rem;
	width: 1rem;
}

.c-cta__icon._mail {
	height: 0.8125rem;
	width: 1rem;
}

.c-cta__icon img {
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	width: 100%;
}

.c-cta__text {
	color: #FFFFFF;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
}

.c-cta__telSpBox {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	justify-content: center;
	translate: 0 0.125rem;
}

.c-cta__telNum {
	color: #FFFFFF;
	font-size: 2rem;
	line-height: 1;
}

.c-description__list {
	display: grid;
	grid-template-columns: 6.25rem 1fr;
}

.c-description__list + .c-description__list {
	margin-top: 1px;
}

.c-description__title,
.c-description__text {
	background-color: #998E73;
	color: #FFFFFF;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	padding: 0.5rem 0.9375rem;
}

.c-description__text {
	background-color: #FFFFFF;
	color: #565565;
}

.c-description__note {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	margin-top: 0.5rem;
	text-align: right;
}

.c-footer-note {
	color: #565565;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-hamburger {
	align-items: center;
	background-color: #565565;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding-top: 0.625rem;
	padding-bottom: 0.375rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	width: 100%;
}

.c-hamburger__lineBox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0.28125rem;
	justify-content: center;
	width: 100%;
}

.c-hamburger__line {
	background-color: #FFFFFF;
	display: inline-block;
	height: 1px;
	transition: all 0.3s ease;
	width: 100%;
}

.c-hamburger__text {
	color: #FFFFFF;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 2;
	margin-left: -1px;
	margin-right: -1px;
	padding-top: 0.375rem;
	text-transform: uppercase;
}

.c-hamburger.is-open .c-hamburger__line:nth-child(1) {
	transform: translateY(0.625rem) rotate(45deg);
}

.c-hamburger.is-open .c-hamburger__line:nth-child(2) {
	opacity: 0;
}

.c-hamburger.is-open .c-hamburger__line:nth-child(3) {
	transform: translateY(-0.75rem) rotate(-45deg);
}

.c-information__wrap {
	background-color: #FFFFFF;
	border: 1px solid #565565;
	padding: 0.9375rem 0.875rem 1.1875rem;
}

.c-information._differentColor .c-information__wrap {
	background-color: #998E73;
	border-color: #836C25;
	color: #FFFFFF;
}

.c-information__title {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 2;
	padding-left: 1.125rem;
	position: relative;
}

.c-information__title::before {
	background-color: currentColor;
	border-radius: 50%;
	content: "";
	height: 0.625rem;
	left: 0;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 0.625rem;
}

.c-information._differentColor .c-information__lists {
	margin-top: 1.1875rem;
}

.c-information__list {
	border-bottom: 0.5px solid #565565;
	padding: 1.25rem 0.875rem 0.8125rem;
}

.c-information._differentColor .c-information__list {
	border-bottom-color: #FFFFFF;
	display: grid;
	grid-gap: 1.25rem;
	gap: 1.25rem;
	grid-template-columns: 7.5rem 1fr;
	padding: 1.25rem 0;
}

.c-information__list:first-child {
	padding: 0 0.875rem 0.9375rem;
}

.c-information._differentColor .c-information__list:first-child {
	border-top: none;
	padding-top: 0;
}

.c-information__img img {
	aspect-ratio: 1/1;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.c-information__date {
	display: block;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-information__link {
	font-size: 1rem;
	line-height: 2;
}

.c-information._differentColor .c-information__link {
	font-size: 1rem;
}

.c-information__btnBox {
	text-align: right;
}

.c-information__btn {
	align-items: center;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	gap: 1.625rem;
	margin-top: 1.25rem;
	translate: -0.25rem;
}

.c-information__btn:hover {
	opacity: 1;
}

.c-information__btnText {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-information__btnArrow {
	position: relative;
}

.c-information__btnArrow svg {
	display: block;
	transition: translate 0.3s ease;
	translate: -0.625rem;
}

.c-information__btnArrow::before {
	align-items: center;
	border: 1px solid currentColor;
	border-radius: 50%;
	content: "";
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 2rem;
	justify-content: center;
	left: 50%;
	position: absolute;
	top: 50%;
	transition: width 0.3s ease, height 0.3s ease;
	translate: -50% -50%;
	width: 2rem;
}

.c-information__btn:hover .c-information__btnArrow::before {
	height: 2.625rem;
	width: 2.625rem;
}

.c-information__btn:hover .c-information__btnArrow svg {
	translate: 0;
}

.c-information__btnText {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-line-title {
	color: #766A4C;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 400;
	gap: 1.125rem;
	line-height: 1.4;
}

.c-line-title._brown {
	color: #998E73;
}

.c-line-title._route {
	color: #998E73;
}

.c-line-title::after {
	background-color: currentColor;
	content: "";
	display: block;
	height: 0.0625rem;
	width: 15rem;
}

.c-line-title._media {
	color: #998E73;
	justify-content: space-between;
}

.c-line-title._media::after {
	width: 15rem;
}

.c-list-title {
	color: #998E73;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
	padding-left: 1.125rem;
	position: relative;
}

.c-list-title::before {
	background-color: #E8E2D3;
	border-radius: 50%;
	content: "";
	display: block;
	height: 0.625rem;
	left: 0;
	position: absolute;
	top: 46%;
	translate: 0 -50%;
	width: 0.625rem;
}

.c-list-title._clinic::before {
	background-color: #E8E2D3;
}

.c-map__title {
	align-items: center;
	color: #998E73;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 600;
	gap: 0.5rem;
	line-height: 2;
}

.c-map__title::before {
	background-color: #998E73;
	border-radius: 50%;
	content: "";
	height: 0.625rem;
	width: 0.625rem;
}

.c-map__contents {
	display: grid;
	grid-gap: 1rem;
	gap: 1rem;
	margin-top: 0.25rem;
}

.c-map__img img {
	aspect-ratio: 345/180;
	-o-object-fit: contain;
	   object-fit: contain;
	width: 100%;
}

.c-map__text {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-num-card {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0.5625rem;
}

.c-num-card._route {
	gap: 0.5625rem;
}

.c-num-card__imgBox {
	position: relative;
}

.c-num-card__num {
	background-color: #E8E2D3;
	color: #998E73;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.75rem;
	font-weight: 600;
	height: 3.75rem;
	left: 0;
	line-height: 2;
	position: absolute;
	text-align: center;
	top: 0;
	width: 3.75rem;
}

.c-num-card__img img {
	aspect-ratio: 1/1;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.c-num-card__body {
	text-align: center;
}

.c-num-card__title {
	color: #998E73;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.5;
}

.c-num-card__text {
	font-size: 0.875rem;
	margin-top: 0.5rem;
	text-align: left;
}

._route .c-num-card__text {
	margin-top: 0;
}

.c-num-title {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1.25rem;
}

.c-num-title__num {
	align-items: center;
	background-color: #E8E2D3;
	border-radius: 50%;
	color: #766A4C;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.375rem;
	font-weight: 600;
	height: 5rem;
	justify-content: center;
	line-height: 2;
	padding-top: 1.125rem;
	position: relative;
	width: 5rem;
}

.c-num-title__num::before {
	color: currentColor;
	content: "理由";
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.875rem;
	font-weight: 400;
	left: 50%;
	line-height: 2;
	position: absolute;
	text-align: center;
	top: 0.5625rem;
	translate: -50%;
	width: 100%;
}

.c-num-title__text {
	color: #998E73;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 2;
}

.c-reservation__box {
	background: url(../images/common/bg_reservation_banner01.webp) no-repeat center center/cover;
	border: 1px solid #FFFFFF;
	box-shadow: 0 0.375rem 0.9375rem 0rem rgba(0, 0, 0, 0.25);
	margin-left: auto;
	margin-right: auto;
	padding-top: 0.5625rem;
	padding-bottom: 0.5625rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	width: min(100%, 60rem);
}

.c-reservation__box._pattern2 {
	background: url(../images/common/bg_reservation_banner02.webp) no-repeat center center/cover;
	filter: brightness(1.1);
	padding-bottom: 0.9375rem;
	position: relative;
}

._teaser .c-reservation__box._pattern2 {
	padding-top: 2.5rem;
	padding-bottom: 2.75rem;
}

.c-reservation__box._pattern2::before {
	background-color: rgba(255, 255, 255, 0.4);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.c-reservation__box + .c-reservation__box {
	margin-top: 0.5rem;
}

._teaser .c-reservation__box + .c-reservation__box {
	margin-top: 0;
}

.c-reservation__link,
.c-reservation__linkBox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	width: min(100%, 43.75rem);
}

.c-reservation__linkBox {
	background-color: rgba(255, 255, 255, 0.5);
	position: relative;
}

._flow .c-reservation__linkBox {
	padding: 0.25rem;
}

.c-reservation__textBox {
	padding-left: 0.96375rem;
	padding-right: 0.47375rem;
	width: 100%;
}

.c-reservation__box._pattern2 .c-reservation__textBox {
	padding: 0.375rem 0.375rem 0;
	width: auto;
}

.c-reservation__box._pattern2 .c-reservation__linkBox._teaser .c-reservation__textBox {
	background-color: rgba(255, 255, 255, 0.5);
}

.c-reservation__subText {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 2;
}

.c-reservation__text {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1rem;
	font-weight: 600;
	line-height: 2;
}

.c-reservation__tel {
	align-items: baseline;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 2.5rem;
	gap: 0.5rem;
	line-height: 1;
}

._flow .c-reservation__tel {
	font-size: 2rem;
	gap: 0.125rem;
	margin-left: -0.125rem;
	margin-right: -0.5rem;
}

.c-reservation__tel::before {
	background: url(../images/common/icon_tel_black.svg) no-repeat center center/contain;
	content: "";
	height: 1.875rem;
	width: 1.875rem;
}

.c-reservation__note {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-reservation__btn {
	align-items: center;
	background-color: #565565;
	border: 1px solid #FFFFFF;
	color: #FFFFFF;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.25rem;
	gap: 0.625rem;
	justify-content: center;
	line-height: 2;
	margin-left: auto;
	margin-right: auto;
	min-width: 19.5625rem;
	padding-top: 0.625rem;
	padding-bottom: 0.5625rem;
}

._flow .c-reservation__btn {
	min-width: auto;
	width: 100%;
}

.c-reservation__btn::before {
	background: url(../images/common/icon_mail.webp) no-repeat center center/contain;
	content: "";
	height: 1.625rem;
	width: 2.07rem;
}

.c-shadow-btn {
	align-items: center;
	background-color: #FFFFFF;
	border: 1px solid #998E73;
	box-shadow: 0.375rem 0.375rem 0 #E8E2D3;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	padding: 0.875rem 0.9375rem;
}

.c-shadow-btn:hover {
	box-shadow: none;
	translate: 0.375rem 0.375rem;
}

.p-media-box__linkBtnText {
	color: #998E73;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.p-media-box__linkBtnArrow {
	translate: 0.1875rem -0.375rem;
}

.c-table__title {
	align-items: center;
	color: #998E73;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 600;
	gap: 0.5rem;
	line-height: 2;
}

.c-table__title::before {
	background-color: #998E73;
	border-radius: 50%;
	content: "";
	height: 0.625rem;
	width: 0.625rem;
}

.c-table__contents {
	border: 1px solid #F2F2F2;
	border-collapse: collapse;
	width: 100%;
}

.c-table__th,
.c-table__td,
.c-table__note {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.c-table__th {
	background-color: #998E73;
	border: 1px solid #F2F2F2;
	color: #FFFFFF;
}

.c-table__th._title {
	background-color: #FFFFFF;
	color: #565565;
	width: 5rem;
}

.c-table__td {
	background-color: #FFFFFF;
	border: 1px solid #F2F2F2;
	color: #565565;
	text-align: center;
}

.c-table__contents._charge .c-table__td {
	font-size: 0.75rem;
	vertical-align: top;
	width: 1.875rem;
}

.c-table__note {
	margin-top: 0.5rem;
	text-align: right;
}

.c-table2 {
	margin-right: -0.9375rem;
	overflow-x: scroll;
	padding-bottom: 1.875rem;
}

.c-table2._w800 {
	width: 50rem;
}

.c-table2__content {
	border: 1px solid #998E73;
	border-collapse: collapse;
	table-layout: fixed;
	width: 68.125rem;
}

.c-table2__tr._row2 .c-table2__td {
	padding-top: 0;
	padding-bottom: 0;
}

.c-table2__tr._top .c-table2__td {
	vertical-align: top;
}

.c-table2__th,
.c-table2__td {
	border: 1px solid #998E73;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	padding: 0.875rem 0.9375rem 0.9375rem;
	text-align: left;
}

.c-table2__th {
	background-color: #E8E2D3;
	text-transform: uppercase;
}

.c-table2__th:first-child {
	vertical-align: top;
	width: 15rem;
}

.c-table2__th._w50 {
	width: 50%;
}

.c-table2__note {
	margin-top: 0.625rem;
}

.c-title {
	text-align: center;
}

.c-title._white {
	color: #FFFFFF;
}

.c-title._firstLetter .c-title__en::first-letter {
	color: #998E73;
}

.c-title__en {
	display: inline-block;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.75rem;
	font-weight: 600;
	line-height: 1.2;
	text-transform: uppercase;
}

.c-title__ja {
	display: block;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
}

.c-title__ja._align-left {
	text-align: left;
}

._treatmentFlow .c-title__ja {
	line-height: 2;
	margin-top: 0.5rem;
}

.p-anchor__bg {
	background-color: #F9F6F2;
	padding-top: 1.5625rem;
	padding-bottom: 1.5625rem;
}

.p-anchor__lists {
	display: grid;
	grid-gap: 0.5rem 0.3125rem;
	gap: 0.5rem 0.3125rem;
	grid-template-columns: repeat(2, 1fr);
}

.p-anchor__list._lg {
	grid-column: 1/3;
	grid-row: 3/4;
}

.p-anchor__link {
	align-items: center;
	background-color: #E8E2D3;
	color: #766A4C;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.875rem;
	font-weight: 400;
	gap: 0.625rem;
	height: 100%;
	justify-content: center;
	line-height: 2;
	padding: 0.625rem 0.3125rem;
}

._facility .p-anchor__link {
	padding-top: 0.5625rem;
	padding-bottom: 0.5625rem;
}

._lg .p-anchor__link {
	width: 57.3913043478%;
}

.p-anchor__link span > span {
	display: none;
}

.p-anchor__link::after {
	background-color: #766A4C;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	content: "";
	flex-shrink: 0;
	height: 0.5rem;
	width: 0.625rem;
}

.p-anchor__link span > span {
	display: none;
}

.p-case-slider.swiper {
	overflow: visible;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
}

.p-case-slider .swiper-wrapper {
	display: grid;
	grid-gap: 2.375rem 1.25rem;
	gap: 2.375rem 1.25rem;
	grid-template-columns: repeat(2, 1fr);
}

.p-case-slider .swiper-slide {
	width: 100%;
}

.p-col-cards {
	display: grid;
}

.p-col-cards._spCol2 {
	grid-template-columns: repeat(2, 1fr);
}

.p-col-cards._col3 {
	gap: 1.3125rem;
}

.p-col-cards._columnGap {
	gap: 1.3125rem 1.25rem;
}

.p-col-cards._spTab {
	display: block;
}

.p-col-cards._spTab .js-tab-content {
	display: none;
}

.p-col-cards._spTab .js-tab-content[data-tab-content=information] {
	display: block;
}

.p-col-items {
	display: grid;
}

.p-col-items__item._table {
	margin-top: 1.4375rem;
}

.p-col-items__item._map {
	margin-top: 1rem;
}

.p-commitment-card {
	display: grid;
	grid-row: span 2;
	grid-template-rows: subgrid;
}

.p-commitment-card__link {
	display: grid;
	grid-gap: 0.5rem;
	gap: 0.5rem;
	grid-row: span 2;
	grid-template-rows: subgrid;
}

.p-commitment-card__title {
	color: #998E73;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
}

.p-commitment-card__content {
	background-color: #FFFFFF;
}

.p-commitment-card__img img {
	aspect-ratio: 350/160;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.p-commitment-card__lists {
	padding: 1.25rem;
}

.p-commitment-card__list + .p-commitment-card__list {
	margin-top: 1.25rem;
}

.p-commitment-card__noteBox {
	padding: 0 1.25rem 1.25rem;
}

.p-commitment-card__note {
	background-color: #998E73;
	color: #FFFFFF;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	padding: 0.25rem 0.5rem;
}

.p-flow__list {
	display: grid;
	grid-gap: 0.625rem;
	gap: 0.625rem;
	grid-template-columns: 3.75rem 1fr;
	position: relative;
}

.p-flow__list:not(:last-child)::before {
	background-color: #998E73;
	content: "";
	height: 100%;
	left: 1.6875rem;
	position: absolute;
	top: 0;
	width: 1px;
}

.p-flow__numberBox {
	align-items: center;
	background-color: #E8E2D3;
	border-radius: 50%;
	color: #766A4C;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	height: 3.75rem;
	justify-content: center;
	line-height: 2;
	position: relative;
	width: 3.75rem;
	z-index: 1;
}

.p-flow__numberText {
	font-size: 0.625rem;
	font-weight: 400;
	translate: 0 0.6875rem;
}

.p-flow__number {
	font-size: 1.25rem;
	font-weight: 600;
	translate: 0 -0.3125rem;
}

.p-flow__content {
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
}

.p-flow__title {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.4;
}

.p-flow__subTitle {
	margin-top: 1.3125rem;
}

.p-flow__subTitle + .p-flow__textBox {
	margin-top: 0.75rem;
}

.p-flow__textBox,
.p-flow__reservation {
	margin-top: 1.375rem;
}

.p-flow__text + .p-flow__text {
	margin-top: 1.325rem;
}

.p-flow__summaryContent {
	background-color: #E8E2D3;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.25rem;
	padding: 1.25rem;
	width: min(100%, 43.75rem);
}

.p-flow__summaryText {
	line-height: 1.44;
}

.p-footer-info__logo {
	display: block;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

._teaser .p-footer-info__logo {
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
	width: 20rem;
}

.p-footer-info__logo img {
	aspect-ratio: 295/214;
	-o-object-fit: contain;
	   object-fit: contain;
	width: 100%;
}

.p-footer-info__snsBox {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.875rem;
	justify-content: center;
	margin-top: 1.25rem;
}

.p-footer-info__snsBox + .p-footer-info__logo {
	margin-top: 3.125rem;
}

.p-footer-info__logo + .p-footer-info__logo {
	margin-top: 1.25rem;
}

.p-footer-nav {
	display: grid;
	margin-top: 2.5rem;
}

.p-footer-nav__box {
	align-items: start;
	display: grid;
	grid-gap: 1.25rem;
	gap: 1.25rem;
}

.p-footer-nav__box + .p-footer-nav__lists {
	margin-top: 1.25rem;
}

.p-footer-nav__lists {
	display: grid;
	grid-gap: 0.5rem;
	gap: 0.5rem;
}

.p-footer-nav__list {
	padding-left: 1.5rem;
	position: relative;
}

.p-footer-nav__list::before {
	background-color: #565565;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: 44%;
	translate: 0 -50%;
	width: 1.0625rem;
}

.p-footer-nav__link {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	text-transform: uppercase;
}

.p-footer-nav__list._detailLink {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-footer-nav__list._detailLink::before {
	top: 4.3%;
}

.p-footer-nav__list._detailLink:nth-child(2) {
	flex-direction: row;
	gap: 0.9375rem;
}

.p-footer-nav__list._detailLink:nth-child(2)::before {
	top: 45%;
}

.p-footer-nav__list._lg {
	padding-left: 1.8125rem;
}

.p-footer-nav__list._lg::before {
	width: 1.375rem;
}

.p-footer-nav__list._detailLink + .p-footer-nav__list._detailLink {
	margin-top: 0.375rem;
}

.p-footer-nav__subLists {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0;
	margin-left: -0.625rem;
	margin-top: 0.5rem;
}

.p-footer-nav__list._detailLink:nth-child(2) .p-footer-nav__subLists {
	margin-top: 0;
}

.p-footer-nav__subList {
	position: relative;
}

.p-footer-nav__subList:not(:first-child)::before {
	content: "・";
	left: -0.9em;
	position: absolute;
	top: 46%;
	translate: 0 -50%;
}

.p-footer-nav__subList:first-child::before {
	content: "・";
	font-weight: 400;
	left: -0.9em;
	position: absolute;
	top: 46%;
	translate: 0 -50%;
}

.p-footer-nav__subList:last-child::after {
	font-weight: 400;
}

.p-footer-nav__subList._pattern2 {
	padding-left: 0.5rem;
}

.p-footer-nav__subList._pattern2::after {
	display: none;
}

.p-footer-nav__subLink {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	text-transform: uppercase;
}

.p-footer {
	background-color: #F2F2F2;
	overflow-x: clip;
}

.p-footer__inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
}

.p-footer__wrap {
	display: grid;
}

.p-footer__contents {
	display: grid;
	padding-top: 1.5625rem;
	padding-bottom: 1.5rem;
}

.p-footer__noteBox {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-top: 3.125rem;
	padding-bottom: 3.125rem;
	position: relative;
}

.p-footer__noteBox::before {
	background-color: #565565;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: -1px;
	width: 100%;
}

.p-footer__note {
	margin-left: auto;
	margin-right: auto;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
	width: min(100%, 46.375rem);
}

.p-footer__copy {
	background-color: #998E73;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-top: 1.5625rem;
	padding-bottom: 5.3125rem;
	text-align: center;
}

.p-footer__copyLight {
	color: #FFFFFF;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.p-form__bg {
	background-color: #F9F6F2;
	padding-top: 1.5625rem;
	padding-bottom: 1.5625rem;
}

.p-header-banner__items {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.875rem;
	height: 100%;
	justify-content: end;
}

.p-header-banner__item {
	align-items: center;
	background-color: #998E73;
	color: #FFFFFF;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.625rem;
	font-weight: 500;
	gap: 0.25rem;
	height: 100%;
	justify-content: center;
	min-width: 11.25rem;
	position: relative;
}

.p-header-banner__item._tel {
	padding: 1rem 0.8125rem 0.375rem;
}

.p-header-banner__item._calendar,
.p-header-banner__item._mail {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.875rem;
	gap: 0.5rem;
}

.p-header-banner__item::before {
	content: "";
	flex-shrink: 0;
}

.p-header-banner__item._tel::before {
	background: url(../images/common/icon_tel.webp) no-repeat center center/contain;
	height: 1rem;
	width: 1rem;
}

.p-header-banner__item._calendar::before {
	background: url(../images/common/icon_calendar.webp) no-repeat center center/contain;
	height: 1.625rem;
	width: 1.5rem;
}

.p-header-banner__item._mail::before {
	background: url(../images/common/icon_mail.webp) no-repeat center center/contain;
	height: 1.1775rem;
	width: 1.5rem;
}

.p-header-banner__item._tel::after {
	color: #FFFFFF;
	content: "電話でのお問い合わせ";
	display: block;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 0.75rem;
	font-weight: 400;
	left: 50%;
	line-height: 1.5;
	position: absolute;
	text-align: center;
	top: 0;
	translate: -50%;
	width: 100%;
}

.p-header-banner._teaser .p-header-banner__item._tel {
	align-items: end;
	font-size: 2.625rem;
	padding-top: 1.5rem;
	padding-bottom: 0.875rem;
	padding-left: 1.4375rem;
	padding-right: 1.4375rem;
}

.p-header-banner._teaser .p-header-banner__item._tel::before {
	height: 1.625rem;
	width: 1.625rem;
}

.p-header-banner._teaser .p-header-banner__item._tel::after {
	font-size: 1.25rem;
}

.p-header-nav {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1.25rem;
	justify-content: end;
}

.p-header-nav__link {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
	text-transform: uppercase;
}

.p-header {
	box-shadow: 0 0.375rem 0.625rem rgba(86, 85, 101, 0.1);
}

.p-header._teaser {
	height: 3.4375rem;
}

.p-header__inner {
	padding-left: 0.9375rem;
	padding-right: 3.4375rem;
	position: relative;
}

.p-header__contents {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1.25rem;
	justify-content: space-between;
	width: 100%;
}

._teaser .p-header__contents {
	justify-content: center;
}

.p-header__logo {
	padding-top: 0.0975rem;
	padding-bottom: 0.0975rem;
	width: 10.375rem;
}

._teaser .p-header__logo {
	translate: 1.75rem;
	width: 10.375rem;
}

.p-header__logo img {
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	width: 100%;
}

.p-header__content {
	display: none;
}

.p-header__hamburger {
	height: 3.4375rem;
	position: absolute;
	right: 0;
	top: 0;
	width: 3.4375rem;
}

.p-list {
	align-items: center;
	background-color: #FFFFFF;
	border: 1px solid #998E73;
	display: grid;
	grid-template-columns: 7.5rem 1fr;
	position: relative;
}

.p-list::before {
	background-color: #998E73;
	clip-path: polygon(0 0, 100% 100%, 100% 0);
	content: "";
	height: 1.75rem;
	position: absolute;
	right: 0;
	top: 0;
	width: 1.75rem;
}

.p-list__body {
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
}

.p-list__title {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.5;
}

.p-list__text {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.p-lists {
	display: grid;
	grid-gap: 0.375rem;
	gap: 0.375rem;
}

.p-media-box__contentBox {
	display: grid;
	grid-gap: 1.25rem;
	gap: 1.25rem;
}

._treatment .p-media-box__contentBox {
	gap: 1.3125rem;
}

.p-media-box__contentBox + .p-media-box__contentBox {
	margin-top: 1.25rem;
}

._rev .p-media-box__img {
	order: 2;
}

.p-media-box__img._sm img {
	aspect-ratio: 345/160;
}

.p-media-box__img img {
	aspect-ratio: 400/267;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

.p-media-box__content._flexBox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.p-media-box__text,
.p-media-box__text p {
	line-height: 1.44;
	margin-top: 1.25rem;
}

.p-media-box__text._noTitle,
.p-media-box__text p._noTitle {
	margin-top: 0;
}

.p-media-box__text._noTitle + .p-media-box__text._noTitle,
.p-media-box__text p._noTitle + .p-media-box__text._noTitle {
	margin-top: 0;
}

.p-media-box__text span,
.p-media-box__text p span {
	display: block;
	margin-top: 1.35em;
}

.p-media-box__textBox._sm .p-media-box__text + .p-media-box__text {
	margin-top: 1.4em;
}

._facility .p-media-box__textBox._sm .p-media-box__text + .p-media-box__text {
	margin-top: 1.4em;
}

.p-media-box__text + .p-media-box__text {
	margin-top: 1.3em;
}

.p-media-box__bgText {
	background-color: #998E73;
	color: #FFFFFF;
	font-family: "Zen Old Mincho", "Noto Serif", serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.39;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-media-box__bgText + .p-media-box__checkBox {
	margin-top: 1.3125rem;
}

.p-media-box__btn {
	margin-top: 1.25rem;
}

.p-movie-slider.swiper {
	overflow: visible;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
}

.p-movie-slider .swiper-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.p-movie-slider .swiper-slide {
	width: 100%;
}

.p-page-header__content {
	max-height: 15rem;
	overflow: hidden;
	position: relative;
}

.p-page-header__img {
	height: inherit;
	position: relative;
}

.p-page-header__img::before {
	background-color: rgba(86, 85, 101, 0.33);
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	position: absolute;
	z-index: 1;
}

.p-page-header__img img {
	aspect-ratio: 375/240;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}

._first .p-page-header__img {
	width: 124%;
}

._treatment .p-page-header__img img {
	-o-object-position: 0 23%;
	   object-position: 0 23%;
}

._treatment-flow .p-page-header__img {
	width: 176%;
}

._treatment-flow .p-page-header__img img {
	-o-object-position: -72px 191%;
	   object-position: -72px 191%;
}

.p-page-header__title {
	left: 49%;
	position: absolute;
	top: 50%;
	translate: -50% -50%;
	width: 90%;
	z-index: 2;
}

.p-page-header__breadcrumbs {
	border-bottom: 1px solid #998E73;
	padding: 0.625rem 0.9375rem;
}

.p-reservation._treatmentFlow {
	margin-top: 3.125rem;
}

.p-reservation__bg {
	overflow: hidden;
	padding-top: 1.5625rem;
	padding-bottom: 1.5625rem;
	position: relative;
}

._teaser .p-reservation__bg {
	padding-top: 3.125rem;
	padding-bottom: 3.125rem;
}

.p-reservation__bg::before {
	background: url(../images/common/bg_reservation_person.webp) no-repeat right center/cover;
	content: "";
	filter: grayscale(100%) brightness(1.1);
	height: 100%;
	left: 0;
	opacity: 0.5;
	position: absolute;
	top: 0;
	width: 150%;
	z-index: 1;
}

.p-reservation__bg::after {
	background-color: rgba(173, 159, 189, 0.6);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
}

._flow .p-reservation__bg::after {
	background-color: rgba(153, 142, 115, 0.6);
}

.p-reservation__inner {
	position: relative;
	z-index: 3;
}

._first .p-reservation__title {
	display: none;
}

.p-reservation__items {
	margin-top: 1.25rem;
}

._first .p-reservation__items {
	margin-top: 0;
}

._teaser .p-reservation__items {
	margin-top: 0;
}

._flow .p-reservation__items {
	margin-top: 0;
}

.p-treatment-menu__cards {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.5625rem;
}

.p-treatment-menu__card {
	width: 44.8vw;
}

.u-desktop {
	display: none !important;
}

.u-display-none {
	display: none !important;
}

.u-pointer-none {
	pointer-events: none !important;
}

.u-x-scroll .simplebar-track {
	background-color: #F2F2F2 !important;
}

.u-x-scroll .simplebar-track.simplebar-horizontal {
	height: 0.5rem !important;
}

.u-x-scroll .simplebar-track.simplebar-vertical {
	width: 0.5rem !important;
}

.u-x-scroll .simplebar-scrollbar {
	background: #998E73 !important;
}

.u-x-scroll .simplebar-scrollbar::before {
	background: #998E73 !important;
}

.u-x-scroll .simplebar-scrollbar.simplebar-visible::before {
	opacity: 1 !important;
}

@media (prefers-reduced-motion: reduce) {

*,
*::before,
*::after {
	animation-duration: 0.01ms !important;
	animation-iteration-count: 1 !important;
	scroll-behavior: auto !important;
	transition-duration: 0.01ms !important;
}

}

@media screen and (min-width: 500px) {

.p-reservation__bg::before {
	width: 138%;
}

}

@media screen and (min-width: 768px) {

html {
	font-size: 1.4035087719vw;
}

a,
button {
	transition: 0.3s;
}

a:hover,
button:hover {
	cursor: pointer;
	opacity: 0.7;
}

a[href*="tel:"] {
	cursor: default;
	pointer-events: none;
	-webkit-text-decoration: none;
	text-decoration: none;
}

p,
dl,
dt,
dd {
	line-height: 2;
}

.l-inner {
	max-width: 1140px;
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.l-inner._sm {
	max-width: 43.75rem;
}

.l-inner._lg {
	max-width: 86.875rem;
}

.l-main {
	padding-top: 6.25rem;
	padding-bottom: 6.25rem;
}

.c-accordion__titleBox::before {
	left: 1.25rem;
	top: 1.25rem;
}

.c-accordion__title {
	padding: 1.625rem 2.1875rem 1.625rem 3.875rem;
}

.c-accordion__title::before,
.c-accordion__title::after {
	right: 1.5rem;
	top: 2.6875rem;
}

.c-box-title {
	font-size: 1.75rem;
	font-weight: 600;
	line-height: 2;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
}

.c-box-title._sm {
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
}

.c-box-title2 {
	font-size: 1.5rem;
	line-height: 2;
	padding-top: 0;
	padding-bottom: 0;
}

.c-breadcrumbs__link {
	line-height: 2;
}

.c-breadcrumbs__list._parent {
	display: block;
}

.c-card__imgBox {
	background-color: transparent;
	display: block;
}

.c-card__img {
	border-top-left-radius: 2.5rem;
	box-shadow: 0 0 0.625rem rgba(86, 85, 101, 0.25);
	overflow: hidden;
}

.c-card__img img {
	aspect-ratio: 240/150;
}

.c-card__titleBox {
	left: 1.5rem;
	position: absolute;
	top: 0;
}

.c-card__title {
	background-color: #FFFFFF;
	font-size: 1.25rem;
	font-weight: 500;
	letter-spacing: 0.09em;
	line-height: 2;
	padding-top: 0.3125rem;
	padding-bottom: 0.1875rem;
	padding-left: 0;
	padding-right: 0;
	text-orientation: upright;
	writing-mode: vertical-rl;
}

.c-card2__link {
	row-gap: 1.25rem;
}

.c-card2__img img {
	aspect-ratio: 257.5/180;
}

.c-card2__body {
	padding: 0 1rem 1rem;
}

.c-card2__date {
	font-size: 0.875rem;
}

.c-card2__title {
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
}

.c-card2._movie {
	background-color: #FFFFFF;
	box-shadow: 0 0.375rem 0.9375rem #F2F0EE;
}

.c-card2._movie .c-card2__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	row-gap: 1.25rem;
}

.c-card2._movie .c-card2__body {
	padding: 0 1rem 1rem;
}

.c-card2._movie .c-card2__img img {
	aspect-ratio: 340/227;
}

.c-card2._movie .c-card2__title {
	color: #565565;
	padding: 0;
	position: static;
}

.c-card2._movie .c-card2__title::before {
	display: none;
}

.c-card3 {
	height: 100%;
}

.c-card3__detail {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
}

.c-card3__imgText {
	font-size: 0.875rem;
}

.c-card3__title {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.6;
}

.c-card3__text {
	display: block;
}

.c-card4__title {
	font-size: 1.25rem;
	line-height: 2;
}

.c-card4__title > span {
	display: none;
}

.c-card4__content {
	flex-direction: column;
	row-gap: 1.25rem;
}

.c-card4__imgBox {
	width: 100%;
}

.c-card4__img img {
	aspect-ratio: 1/1;
}

.c-card4__btn {
	justify-content: end;
}

.c-check-box {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
}

.c-check-box._first {
	font-size: 1.25rem;
	line-height: 2;
}

.c-check-box._first + .c-check-box {
	margin-top: 1px;
}

.c-cta {
	bottom: auto;
	box-shadow: 0 0 0.9375rem rgba(86, 85, 101, 0.25);
	grid-template-columns: 1fr;
	top: 14rem;
	width: 6.875rem;
}

.c-cta._teaser {
	display: none;
}

.c-cta__link {
	flex-direction: column;
	min-height: 6.875rem;
	padding-top: 0;
	padding-bottom: 0;
}

.c-cta__link:not(:first-child)::before {
	display: none;
}

.c-cta__link:not(:last-child)::after {
	background-color: #FFFFFF;
	bottom: 0;
	content: "";
	height: 0.0625rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.c-cta__icon {
	height: 1.625rem;
	width: 1.5rem;
}

.c-cta__icon._mail {
	height: 1.1775rem;
	width: 1.5rem;
}

.c-description__list {
	grid-template-columns: 11.25rem 1fr;
}

.c-description__title,
.c-description__text {
	padding: 0.9375rem;
}

.c-hamburger {
	gap: 0.5rem;
	padding: min(2.2222222222vw, 2rem) min(2.0833333333vw, 1.875rem) min(1.3888888889vw, 1.25rem);
}

.c-hamburger__lineBox {
	gap: 0.625rem;
}

.c-hamburger__text {
	font-size: min(0.9722222222vw, 0.875rem);
	margin-left: 0;
	margin-right: 0;
	padding-top: 0;
}

.c-information__wrap {
	padding: 1.4375rem 1.1875rem 1.375rem 1.125rem;
}

.c-information._differentColor .c-information__wrap {
	border-color: #FFFFFF;
}

.c-information__lists {
	margin-top: 1.4375rem;
}

.c-information__list {
	padding: 1.25rem 1.25rem 1.1875rem;
}

.c-information._differentColor .c-information__list {
	grid-template-columns: 11.25rem 1fr;
}

.c-information__list:first-child {
	border-top: 0.5px solid #565565;
	padding: 1.25rem 1.25rem 1.1875rem;
}

.c-information__img img {
	aspect-ratio: 180/116;
}

.c-information._differentColor .c-information__link {
	font-size: 1.25rem;
}

.c-line-title {
	align-items: center;
	flex-direction: row;
	font-size: 1.5rem;
	gap: 1.25rem;
	line-height: 2;
	white-space: nowrap;
}

.c-line-title._route {
	color: #766A4C;
}

.c-line-title::after {
	width: 100%;
}

.c-line-title._media::after {
	translate: 0 -2px;
	width: 15.625rem;
}

.c-list-title {
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 2;
}

.c-list-title._clinic {
	font-family: "Zen Old Mincho", "Noto Serif", serif;
}

.c-list-title::before {
	background-color: #E8E2D3;
}

.c-map__title {
	color: #EAE3DA;
}

.c-map__title::before {
	background-color: #EAE3DA;
}

.c-map__contents {
	grid-template-columns: 16.28125rem 1fr;
	margin-top: 0.5rem;
}

.c-map__img img {
	aspect-ratio: 260.5/180;
}

.c-num-card {
	gap: 0;
}

.c-num-card._route {
	gap: 0.625rem;
}

.c-num-card__num {
	font-size: 1.25rem;
	height: 2.5rem;
	width: 2.5rem;
}

.c-num-card__title {
	font-size: 1.5rem;
	line-height: 2;
}

.c-num-card__text {
	margin-top: 0;
}

.c-num-title__num {
	font-size: 1.75rem;
	height: 7.5rem;
	width: 7.5rem;
}

.c-num-title__num::before {
	content: "選ばれる理由";
	top: 1.4375rem;
}

.c-num-title__text {
	font-size: 1.75rem;
	line-height: 1.5;
}

.c-reservation__box {
	padding-top: 0.875rem;
	padding-bottom: 0.9375rem;
}

.c-reservation__box._pattern2 {
	padding-bottom: 0.75rem;
}

._teaser .c-reservation__box._pattern2 {
	padding-top: 0.875rem;
	padding-bottom: 0.75rem;
}

._flow .c-reservation__box._pattern2 {
	padding-left: 5.625rem;
}

.c-reservation__box + .c-reservation__box {
	margin-top: 1.25rem;
}

.c-reservation__link,
.c-reservation__linkBox {
	align-items: center;
	flex-direction: row;
}

.c-reservation__linkBox {
	gap: 1.375rem;
}

._flow .c-reservation__linkBox {
	padding: 0;
}

.c-reservation__linkBox._teaser {
	background: none;
	justify-content: start;
}

.c-reservation__textBox {
	padding-top: 1.0625rem;
	padding-bottom: 2rem;
	padding-left: 2.5rem;
	padding-right: 2.5rem;
}

._first .c-reservation__textBox {
	padding-left: 4.8125rem;
}

._flow .c-reservation__textBox {
	padding-left: 4.875rem;
}

.c-reservation__box._pattern2 .c-reservation__textBox {
	padding: 1rem 0;
}

._first .c-reservation__box._pattern2 .c-reservation__textBox {
	padding-left: 4.8125rem;
}

.c-reservation__box._pattern2 .c-reservation__linkBox._teaser .c-reservation__textBox {
	padding-left: 2.5rem;
	padding-right: 3.875rem;
}

.c-reservation__subText {
	font-size: 1.375rem;
	line-height: 1.5;
}

.c-reservation__text {
	font-size: 1.75rem;
}

.c-reservation__tel {
	font-size: 3.125rem;
	letter-spacing: 0.05em;
	line-height: 1.5;
	translate: 0 -0.5rem;
}

._flow .c-reservation__tel {
	font-size: 3.125rem;
	gap: 0.5rem;
	margin-left: 0;
	margin-right: 0;
}

.c-reservation__tel::before {
	height: 1.9375rem;
	width: 1.9375rem;
}

.c-reservation__note {
	line-height: 1.5;
}

.c-reservation__btn {
	margin-left: 0;
	margin-right: 0;
	min-width: 14.875rem;
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	width: auto;
}

._flow .c-reservation__btn {
	min-width: 14.875rem;
	width: auto;
}

.c-shadow-btn {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	min-width: 20rem;
}

.c-table__title {
	color: #EAE3DA;
}

.c-table__title::before {
	background-color: #EAE3DA;
}

.c-table__th {
	padding: 0.9375rem;
}

.c-table__contents._charge {
	margin-top: 0.5rem;
}

.c-table__contents._charge .c-table__th {
	padding-left: 0.3125rem;
	padding-right: 0.3125rem;
	width: 3.5625rem;
}

.c-table__contents._charge .c-table__th:first-child {
	width: 6.3125rem;
}

.c-table__th._title {
	width: 6.8125rem;
}

.c-table__td {
	padding: 0.9375rem;
}

.c-table__contents._charge .c-table__td {
	font-size: 0.875rem;
	padding: 0.9375rem 0.625rem;
	text-align: left;
	width: 3.375rem;
}

.c-table2 {
	margin-right: 0;
	overflow-x: visible;
	padding-bottom: 0;
}

.c-table2__content {
	width: 100%;
}

.c-title__en {
	font-size: 3.125rem;
	line-height: 1.4;
}

.c-title__ja {
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 2;
}

._treatmentFlow .c-title__ja {
	margin-top: 0;
}

.p-anchor__bg {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.p-anchor__lists {
	gap: 0.65rem;
	grid-template-columns: repeat(auto-fit, minmax(6rem, auto));
}

._facility .p-anchor__lists {
	gap: 1.175rem;
	grid-template-columns: repeat(auto-fit, minmax(10.375rem, auto));
}

.p-anchor__list._lg {
	grid-column: auto;
	grid-row: auto;
}

.p-anchor__link {
	padding: 0.625rem;
}

._facility .p-anchor__link {
	justify-content: space-between;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
}

._lg .p-anchor__link {
	width: auto;
}

.p-anchor__link span > span {
	display: inline;
}

.p-anchor__link span > span {
	display: inline;
}

.p-case-slider {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: 2.625rem;
}

.p-case-slider.swiper {
	overflow-x: clip;
	padding-left: 0;
	padding-right: 0;
}

.p-case-slider .swiper-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0;
}

.p-case-slider .swiper-slide {
	flex-shrink: 0;
	height: auto;
	width: 20.5rem;
}

.p-col-cards._col4 {
	gap: 1.25rem 2.708125rem;
	grid-template-columns: repeat(4, 1fr);
}

.p-col-cards._col3 {
	gap: 2.5rem 1.25rem;
	grid-template-columns: repeat(3, 1fr);
}

.p-col-cards._col2 {
	gap: 1.25rem;
	grid-template-columns: repeat(2, 1fr);
}

.p-col-cards._columnGap {
	gap: 2.5rem 1.25rem;
}

.p-col-cards._spTab .js-tab-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.p-col-cards._spTab {
	display: grid;
}

.p-col-items._col2 {
	-moz-column-gap: 1.25rem;
	     column-gap: 1.25rem;
	grid-template-columns: repeat(2, 1fr);
}

.p-col-items._col2._smGap {
	-moz-column-gap: 1rem;
	     column-gap: 1rem;
}

.p-col-items__item._table {
	margin-top: 0;
}

.p-col-items__item._map {
	margin-top: 0;
}

.p-commitment-card__note {
	font-size: 1rem;
	font-weight: 500;
}

.p-flow__list {
	gap: 1.25rem;
	grid-template-columns: 7.5rem 1fr;
}

.p-flow__list:not(:last-child)::before {
	left: 3.75rem;
}

.p-flow__numberBox {
	height: 7.5rem;
	width: 7.5rem;
}

.p-flow__list:nth-child(2) .p-flow__numberBox {
	translate: 0 4.6875rem;
}

.p-flow__numberText {
	font-size: 0.875rem;
	translate: 0 0.3125rem;
}

.p-flow__number {
	font-size: 1.75rem;
}

.p-flow__content {
	padding-top: 1.25rem;
	padding-bottom: 2.5rem;
}

.p-flow__title {
	font-size: 1.5rem;
	line-height: 2;
}

.p-flow__subTitle {
	margin-top: 1.625rem;
}

.p-flow__subTitle + .p-flow__textBox {
	margin-top: 0.1875rem;
}

.p-flow__textBox,
.p-flow__reservation {
	margin-top: 1.25rem;
}

.p-flow__text + .p-flow__text {
	margin-top: 1.25rem;
}

.p-flow__summary {
	margin-top: 1.5rem;
}

.p-flow__summaryContent {
	padding: 3.125rem 2.5rem;
}

.p-flow__summaryText {
	line-height: 2;
}

.p-footer-info__logo {
	padding-left: 0;
	padding-right: 0;
}

.p-footer-info__snsBox {
	margin-top: 3.125rem;
}

.p-footer-nav {
	margin-top: 0;
}

.p-footer-nav__box {
	gap: 1.4em;
	grid-template-columns: repeat(3, auto);
}

.p-footer-nav__box + .p-footer-nav__lists {
	gap: 0.375rem;
	margin-top: 2.5rem;
}

.p-footer-nav__list._detailLink {
	align-items: center;
	-moz-column-gap: min(1.6666666667vw, 1.5rem);
	     column-gap: min(1.6666666667vw, 1.5rem);
	flex-direction: row;
	flex-wrap: wrap;
}

.p-footer-nav__list._detailLink::before {
	top: 44%;
}

.p-footer-nav__list._detailLink:nth-child(2) {
	gap: 0.4em;
}

.p-footer-nav__list._detailLink:nth-child(2)::before {
	top: 44%;
}

.p-footer-nav__list._lg {
	-moz-column-gap: 0.375rem;
	     column-gap: 0.375rem;
}

.p-footer-nav__subLists {
	flex-direction: row;
	gap: 0.9em;
	margin-left: 0;
	margin-top: 0;
}

.p-footer-nav__subList:not(:first-child)::before {
	background-color: #565565;
	content: "";
	height: calc(100% - 0.875rem);
	left: -0.5em;
	top: 51%;
	width: 1px;
}

.p-footer-nav__subList:first-child::before {
	content: "(";
	left: -0.3em;
	top: 48%;
}

.p-footer-nav__subList:last-child::after {
	content: ")";
	position: absolute;
	right: -0.5em;
	top: 48%;
	translate: 0 -50%;
}

.p-footer-nav__subList._pattern2::before {
	background-color: #565565;
	content: "";
	height: calc(100% - 0.875rem);
	left: 0;
	position: absolute;
	top: 51%;
	translate: 0 -50%;
	width: 1px;
}

.p-footer-nav__subLink {
	font-size: min(0.9722222222vw, 0.875rem);
}

.p-footer__inner {
	padding-left: 0;
	padding-right: 0;
	width: min(100%, 83.75rem);
}

.p-footer__contents {
	gap: min(8.3333333333vw, 7.5625rem);
	grid-template-columns: min(22.2222222222vw, 20rem) 1fr;
	padding-top: 3.125rem;
	padding-bottom: 3.125rem;
}

.p-footer._teaser .p-footer__contents {
	display: block;
	padding-bottom: 2.75rem;
}

.p-footer__note {
	padding-left: 0;
	padding-right: 0;
}

.p-footer__copy {
	padding-top: 3.125rem;
	padding-bottom: 3.125rem;
}

.p-form__bg {
	padding-top: 6.25rem;
	padding-bottom: 6.25rem;
}

.p-header-banner__item._calendar,
.p-header-banner__item._mail {
	padding-top: 0.6875rem;
	padding-bottom: 0.6875rem;
}

.p-header-banner__item._calendar {
	gap: 0;
}

.p-header-banner__item._calendar::before {
	translate: -0.75rem;
}

.p-header-nav {
	margin-top: 0.6875rem;
}

.p-header._teaser {
	height: auto;
}

.p-header__inner {
	padding-left: 3.125rem;
	padding-right: 8.5rem;
}

.p-header._teaser .p-header__inner {
	padding-right: 3.125rem;
}

._teaser .p-header__contents {
	justify-content: space-between;
}

.p-header__logo {
	padding-top: 0.21875rem;
	padding-bottom: 0.25rem;
	width: 20.5rem;
}

._teaser .p-header__logo {
	translate: 0;
	width: 20.5rem;
}

.p-header__content {
	display: grid;
	flex-shrink: 0;
	grid-gap: 0.625rem;
	gap: 0.625rem;
	width: 44.5rem;
}

.p-header__hamburger {
	height: min(7.6388888889vw, 6.875rem);
	width: min(7.6388888889vw, 6.875rem);
}

.p-list::before {
	width: 2.5rem;
}

.p-list__text {
	line-height: 1.6;
}

.p-lists {
	gap: 1.25rem;
	grid-template-columns: repeat(2, 1fr);
}

.p-media-box__contentBox {
	grid-template-columns: 25rem 1fr;
}

._rev .p-media-box__contentBox {
	grid-template-columns: 1fr 25rem;
}

.p-media-box__contentBox._smGap {
	gap: 1rem;
}

._treatment .p-media-box__contentBox {
	gap: 1.25rem;
}

.p-media-box__contentBox + .p-media-box__contentBox {
	margin-top: 2.8125rem;
}

.p-media-box__img._sm img {
	aspect-ratio: 400/267;
}

.p-media-box__img img {
	height: auto;
}

.p-media-box__text,
.p-media-box__text p {
	line-height: 2;
}

.p-media-box__text._noTitle + .p-media-box__text._noTitle,
.p-media-box__text p._noTitle + .p-media-box__text._noTitle {
	margin-top: 2em;
}

.p-media-box__text span,
.p-media-box__text p span {
	display: inline;
	margin-top: 0;
}

.p-media-box__textBox._sm .p-media-box__text + .p-media-box__text {
	margin-top: 2em;
}

.p-media-box__text + .p-media-box__text {
	margin-top: 2em;
}

.p-media-box__bgText {
	font-size: 1.5rem;
	line-height: 2;
	padding-top: 0;
	padding-bottom: 0;
}

.p-media-box__btn {
	margin-top: 0;
}

.p-movie-slider.swiper {
	overflow-x: clip;
	padding-left: 0;
	padding-right: 0;
}

.p-movie-slider .swiper-wrapper {
	flex-direction: row;
	gap: 0;
}

.p-movie-slider .swiper-slide {
	flex-shrink: 0;
	height: auto;
	width: 21.25rem;
}

.p-page-header__content {
	min-height: 20rem;
}

.p-page-header__img img {
	aspect-ratio: 1440/320;
}

._first .p-page-header__img img {
	-o-object-position: -56px 25.5%;
	   object-position: -56px 25.5%;
}

._treatment-flow .p-page-header__img {
	width: 100%;
}

._treatment-flow .p-page-header__img img {
	-o-object-position: 0 16%;
	   object-position: 0 16%;
}

.p-page-header__title {
	left: 50%;
	width: auto;
}

.p-page-header__breadcrumbs {
	padding: 0.625rem 3.125rem;
}

.p-reservation._treatmentFlow {
	margin-top: 6.25rem;
}

.p-reservation__bg {
	padding-top: 3.125rem;
	padding-bottom: 3.125rem;
}

.p-reservation__bg::before {
	background: url(../images/common/bg_reservation_person.webp) no-repeat center center/cover;
	height: 118%;
	top: -17%;
	width: 118%;
}

._first .p-reservation__inner {
	padding-left: 3.125rem;
	padding-right: 3.125rem;
}

.p-reservation__items {
	margin-top: 2.5rem;
}

._flow .p-reservation__items {
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.p-treatment-menu__cards {
	gap: 2.1875rem;
	justify-content: center;
}

.p-treatment-menu__card {
	width: 15rem;
}

.u-desktop {
	display: block !important;
}

.u-desktop._inline {
	display: inline !important;
}

.u-mobile {
	display: none !important;
}

}

@media (min-width: 1140px) {

html {
	font-size: 100%;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

