@charset "UTF-8";

/*==================================================
reset
==================================================*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: 500;
	vertical-align: baseline;
}

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

* {
	font-size: inherit;
	line-height: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

span {
	line-height: inherit;
	font-size: inherit;
	text-decoration: inherit;
	vertical-align: inherit;
	font-weight: inherit;
}

body {
	-webkit-text-size-adjust: 100%;
}

ol,
ul {
	list-style: none;
}

img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

em,
strong,
em *,
strong * {
	font-weight: bold;
}

/*--form初期化--*/
input[type=submit],
button {
	cursor: pointer;
}

button,
input[type=text],
input[type=image],
input[type=password],
input[type=file],
input[type=submit],
input[type=reset],
input[type=button],
input[type=email],
input[type=tel],
textarea {
	font-family: inherit;
}

::placeholder {
	opacity: 1;
}

::-ms-input-placeholder {
	opacity: 1;
}

:-ms-input-placeholder {
	opacity: 1;
}

a {
	transition: opacity 0.8s;
	text-decoration: none;
	border: none;
	color: inherit;
}

@media (hover: hover) and (pointer: fine) {
	a:hover {
		opacity: 0.7;
	}
}

table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	text-align: left;
}

th {
	text-align: left;
}

@media screen and (min-width: 768px) {
	a[href*="tel:"] {
		pointer-events: none;
	}
}

@media screen and (max-width: 767px) {

	html,
	body,
	div,
	span,
	applet,
	object,
	iframe,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	p,
	blockquote,
	pre,
	a,
	abbr,
	acronym,
	address,
	big,
	cite,
	code,
	del,
	dfn,
	em,
	img,
	ins,
	kbd,
	q,
	s,
	samp,
	small,
	strike,
	strong,
	sub,
	sup,
	tt,
	var,
	b,
	u,
	i,
	center,
	dl,
	dt,
	dd,
	ol,
	ul,
	li,
	fieldset,
	form,
	label,
	legend,
	table,
	caption,
	tbody,
	tfoot,
	thead,
	tr,
	th,
	td,
	article,
	aside,
	canvas,
	details,
	embed,
	figure,
	figcaption,
	footer,
	header,
	hgroup,
	menu,
	nav,
	output,
	ruby,
	section,
	summary,
	time,
	mark,
	audio,
	video {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	button,
	input[type=text],
	input[type=image],
	input[type=password],
	input[type=file],
	input[type=submit],
	input[type=reset],
	input[type=button],
	input[type=email],
	input[type=tel] textarea {
		background: linear-gradient(to bottom, #ffffff 0%, #ffffff 100%);
		border-radius: 0;
		box-shadow: none;
		appearance: none;
	}

	textarea,
	input[type=email],
	input[type=text],
	input[type=image],
	input[type=password] {
		-webkit-appearance: none;
	}
}

/*==================================================i
root
==================================================*/
:root {
	--js-breakpoint-sp: 767px;
	--js-breakpoint-md: 1023px;
	--js-breakpoint-lg: 1279px;
	/*size*/
	--site-width: 1680px;
	--site-padding: 25px;
	/*color*/
	--bg-color: #ddeee9;
	--primary-color: #4c9c7f;
	--accent-color: #dd471d;
	--border-height: 415px;
	/*font*/
	--font-color: #231815;
	--font-base: 1.6rem;
	--font-large: 2.4rem;
	--font-small: 1.2rem;
	--font-jp: "Noto Sans JP",
		sans-serif;
	--font-en: "Questrial";
	--font-min: "Hiragino Mincho ProN",
		"Hiragino Mincho Pro",
		"游明朝",
		YuMincho,
		"ＭＳ 明朝",
		serif;
	--base-line: 1.6;
}

@media all and (min-width: 768px) and (max-width: 1080px) {
	:root {
		/*size*/
		--border-height: 300px;
		--site-padding: 40px;
		/*font*/
		--font-base: 1.3rem;
		--font-large: 2rem;
		--font-small: 1.1rem;
	}
}

@media all and (max-width: 767px) {
	:root {
		/*size*/
		--border-height: 200px;
		--site-padding: 20px;
		/*font*/
		--font-base: 1.4rem;
		--font-large: 1.8rem;
		--font-small: 1em;
	}
}

/*==================================================
sp pc
==================================================*/
@media all and (min-width: 768px) {
	.sp-only {
		display: none !important;
	}
}

@media all and (max-width: 767px) {
	.pc-only {
		display: none !important;
	}
}

@media all and (min-width: 1201px) {
	.sp-tb-only {
		display: none !important;
	}
}

@media all and (max-width: 767px) {
	.tb-only {
		display: none !important;
	}
}

@media all and (min-width: 1201px) {
	.tb-only {
		display: none !important;
	}
}

@media all and (max-width: 767px) {
	.tb-pc-only {
		display: none !important;
	}
}

/*--------------------------------------
html,body,wrapper
----------------------------------------*/
html {
	font-family: var(--font-jp);
	font-size: 62.5%;
	color: var(--font-color);
}

body {
	padding-top: 70px;
}

@media all and (max-width: 1023px) {
	body {
		padding-top: 50px;
		padding-bottom: 60px;
	}
}

/* ===============================
header
=============================== */
.l-header {
	position: fixed;
	z-index: 10000;
	left: 0;
	top: 0;
	width: 100%;
	background: #ddeee9;
}

.l-header-logo a {
	display: block;
}

.l-header-logo img {
	vertical-align: middle;
}

.l-header-row {
	display: grid;
	grid-template-columns: 284px 1fr;
	align-items: center;
	max-width: 1300px;
	height: 70px;
	margin-inline: auto auto;
	padding: 0 25px;
}

@media all and (max-width: 1279px) {
	.l-header-row {
		grid-template-columns: 200px 1fr;
	}
}

@media all and (max-width: 767px) {
	.l-header-row {
		grid-template-columns: 150px 1fr;
		height: 50px;
		padding: 0 20px;
	}
}

.l-header-nav {
	display: flex;
	margin-left: auto;
}

.l-header-list {
	display: flex;
	font-size: 1.6rem;
}

@media all and (max-width: 1023px) {
	.l-header-list {
		opacity: 0;
		pointer-events: none;
	}
}

.l-header-list.open {
	pointer-events: auto;
	opacity: 1;
}

.l-header-list__item {
	position: relative;
}

@media all and (max-width: 1023px) {
	.l-header-list__item {
		padding: 0 15px;
	}
}

.l-header-list__item .l-header-list__switch,
.l-header-list__item>a {
	display: grid;
	place-items: center;
	height: 70px;
	padding: 0 25px;
	font-family: var(--font-en);
	font-weight: 500;
}

.l-header-sublist {
	transition: opacity 0.4s;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	left: 0;
	top: 70px;
	width: 320px;
	padding-inline: 24px;
	background: #ddeee9;
}

.l-header-sublist a {
	display: block;
	padding-block: 25px;
	border-bottom: 1px solid #fff;
	font-family: var(--font-en);
	font-size: 1.6rem;
	font-weight: 500;
}

.l-header-btns {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	color: #fff;
}

@media all and (max-width: 1023px) {
	.l-header-btns {
		position: fixed;
		left: 0;
		bottom: 0;
		width: 100%;
	}
}

.l-header-btns li {
	display: grid;
	align-items: center;
	justify-content: center;
	height: 70px;
	padding: 0 10px;
	font-size: 1.4rem;
}

.l-header-btns li:nth-child(1) {
	background: #dd471d;
}

.l-header-btns li:nth-child(2) {
	border-image-source: linear-gradient(#4c9c7f, #006151);
	border-image-slice: 0 fill;
	border-image-outset: 0 100vw 0 0;
}

.l-header-btn {
	display: grid;
	place-items: center;
	width: 130px;
	height: 40px;
	border: 1px solid #fff;
	border-radius: 20px;
}

.l-header-btn__arrow {
	padding-right: 20px;
	background: url("../img/common/gnav-arrow.svg") no-repeat right center/7px auto;
}

@media (hover: hover) and (pointer: fine) {

	.l-header-sublist:hover,
	.l-header-list__switch:hover+.l-header-sublist {
		opacity: 1;
		pointer-events: auto;
	}

	.l-header-list__switch:hover {
		background: #fff;
	}
}

.l-header-toggle {
	display: none;
}

@media all and (max-width: 1023px) {
	.l-header-toggle {
		display: grid;
		align-content: center;
		gap: 6px;
		position: absolute;
		z-index: 999;
		right: var(--site-padding);
		top: 0;
		width: 35px;
		height: 50px;
		border: none;
		padding: 0;
		background: none;
	}

	.l-header-toggle__line {
		transition: transform 0.4s;
		display: block;
		width: 100%;
		border-top: 1px solid var(--primary-color);
	}

	.l-header-toggle.active .l-header-toggle__line:nth-child(1) {
		position: absolute;
		top: 50%;
		transform: rotate(-30deg);
	}

	.l-header-toggle.active .l-header-toggle__line:nth-child(2) {
		display: none;
	}

	.l-header-toggle.active .l-header-toggle__line:nth-child(3) {
		position: absolute;
		top: 50%;
		transform: rotate(30deg);
	}
}

@media all and (max-width: 1023px) {
	.l-header-list {
		overflow: scroll;
		position: fixed;
		z-index: 10000;
		left: 0;
		top: 50px;
		width: 100%;
		height: calc(100vh - 50px);
		display: block;
		background: #ddeee9;
	}

	.l-header-sublist {
		display: none;
		opacity: 1;
		pointer-events: auto;
		position: static;
		width: 100%;
		padding: 0;
	}

	.l-header-sublist a {
		padding-left: 2em !important;
	}

	.l-header-sublist li:nth-child(1) a {
		border-top: none;
	}

	.l-header-list {
		display: block;
		text-align: left;
	}

	.l-header-list .l-header-list__switch,
	.l-header-list a {
		display: block;
		height: auto;
		padding: 20px 10px;
		border-bottom: 1px solid #fff;
	}

	.l-header-list__switch {
		position: relative;
	}

	.l-header-list__switch:before {
		content: "";
		transform: rotate(90deg);
		display: block;
		position: absolute;
		right: 15px;
		top: 0;
		bottom: 0;
		width: 16px;
		height: 16px;
		margin: auto;
		background: url("../img/common/arrow-green.svg") no-repeat center;
	}

	.l-header-list__switch.active:before {
		transform: rotate(-90deg);
	}
}

/* ===============================
main
=============================== */
.l-main {
	font-size: var(--font-base);
}

/* ===============================
footer
=============================== */
.l-footer {
	padding-top: 60px;
	background: var(--bg-color);
	font-size: 1.5rem;
}

@media all and (max-width: 767px) {
	.l-footer {
		padding-top: 35px;
		font-size: 1.3rem;
	}
}

.l-footer-inner {
	max-width: 1080px;
	padding-inline: var(--site-padding);
	margin-inline: auto auto;
}

.l-footer-logo {
	margin-bottom: 80px;
	text-align: center;
}

@media all and (max-width: 767px) {
	.l-footer-logo {
		width: 220px;
		margin: 0 auto 30px;
	}
}

.l-footer-row {
	display: grid;
	grid-template-columns: 3fr 1.45fr;
	gap: 45px;
	padding-bottom: 45px;
}

@media all and (max-width: 1023px) {
	.l-footer-row {
		gap: 30px;
		grid-template-columns: 1fr;
		padding-bottom: 25px;
	}
}

.l-footer-nav {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 35px;
}

@media all and (max-width: 767px) {
	.l-footer-nav {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
}

.l-footer-nav__title {
	margin-bottom: 10px;
	font-family: var(--font-en);
	font-weight: 600;
	font-size: 1.8rem;
}



.l-footer-nav a {
	display: block;
	padding: 15px 0;
	border-bottom: 1px solid #717070;
}

.l-footer-copy {
	display: grid;
	place-items: center;
	padding: 20px 0;
	background: #141a22;
	color: #fff;
	font-weight: 400;
	font-size: 1.5rem;
}

@media all and (max-width: 767px) {
	.l-footer-copy {
		height: auto;
		padding: 5px;
		font-size: 1rem;
	}
}

.l-footer-btns {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

@media all and (max-width: 1023px) {
	.l-footer-btns {
		justify-content: center;
		gap: 20px;
	}
}

@media all and (max-width: 767px) {
	.l-footer-btns {
		margin-bottom: 20px;
	}
}

.l-footer-button {
	display: grid;
	place-items: center;
	width: 150px;
	height: 50px;
	padding: 0 20px;
	border-radius: 25px;
	color: #fff;
}

.l-footer-button--booking {
	background: var(--primary-color);
}

.l-footer-button--recruit {
	background: var(--accent-color);
}

.l-footer-button__arrow {
	padding-right: 20px;
	background: url("../img/common/gnav-arrow.svg") no-repeat center right/8px auto;
}

.l-footer-shop {
	display: grid;
	gap: 10px;
	padding: 20px 20px;
	background: #fff;
	border-radius: 18px;
	text-align: center;
	font-feature-settings: "palt";
}

@media all and (max-width: 1023px) {
	.l-footer-shop {
		max-width: 336px;
		margin-inline: auto auto;
	}
}

.l-footer-shop__catch {
	color: var(--accent-color);
	font-size: 1.8rem;
}

.l-footer-shop__day {
	font-size: 3rem;
	font-family: var(--font-en);
}

.l-footer-shop__name {
	font-size: 2.8rem;
}

.l-footer-shop__url {
	margin-bottom: 10px;
	color: var(--primary-color);
	font-size: 1.8rem;
}

.l-footer-shop__more {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	color: var(--primary-color);
}

.l-footer-shop__more:after {
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 50%;
	display: block;
	background: var(--primary-color) url("../img/common/arrow.svg") no-repeat center/8px auto;
}

/*==================================================

==================================================*/
.c-inner {
	max-width: 1300px;
	margin-inline: auto auto;
	padding-inline: var(--site-padding);
}

.c-inner--pos {
	position: relative;
}

.c-content-inner {
	max-width: 1149px;
	margin-inline: auto auto;
	padding-inline: var(--site-padding);
}

.c-content-inner--pos {
	position: relative;
}

.c-narrow-inner {
	max-width: 1030px;
	margin-inline: auto;
	padding-inline: var(--site-padding);
}

/* section title */
.c-section-title {
	margin-bottom: 20px;
}

.c-section-title__jp {
	font-size: 1.7rem;
	font-weight: 700;
}

.c-section-title__en {
	font-family: var(--font-en);
	font-size: 3.8rem;
}

/* button */
.c-button {
	display: block;
	width: 248px;
	padding: 15px;
	border-radius: 40px;
	background: rgba(21, 26, 34, 0.2);
}

@media all and (max-width: 767px) {
	.c-button {
		width: 200px;
		padding: 10px;
	}
}

.c-button__arrow {
	position: relative;
	display: block;
	border-radius: inherit;
	padding: 10px 10px 10px 30px;
	background: #fff;
	color: #4c9c7f;
}

.c-button__arrow:after {
	content: "";
	position: absolute;
	right: 10px;
	top: 0;
	bottom: 0;
	margin: auto;
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #4c9c7f url("../img/common/arrow.svg") no-repeat center/6px auto;
}

.c-page-title {
	display: grid;
	margin-bottom: 90px;
	text-align: center;
}

@media all and (max-width: 1023px) {
	.c-page-title {
		margin-bottom: 60px;
	}
}

@media all and (max-width: 767px) {
	.c-page-title {
		margin-bottom: 50px;
	}
}

.c-page-title--left {
	width: fit-content;
	margin-inline: auto auto;
	text-align: left;
}

.c-page-title--pos-left {
	margin-left: 0;
}

.c-page-title__en {
	font-size: 3.6rem;
	font-family: var(--font-en);
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.c-page-title__en {
		font-size: 3rem;
	}
}

.c-page-title__jp {
	font-size: 1.8rem;
	font-weight: 700;
}

/*==================================================
mg
==================================================*/
.index-mv {
	background: url("../img/mv-bg.jpg") no-repeat 40% center;
	color: #fff;
}

@media all and (max-width: 1023px) {
	.index-mv {
		background-position: 50% center;
	}
}

@media all and (max-width: 767px) {
	.index-mv {
		background-position: 46% center;
		background-size: cover;
	}
}

.index-mv__inner {
	position: relative;
	width: 100%;
	max-width: 1300px;
	height: calc(100vh - 50px);
	margin-inline: auto auto;
	padding-inline: var(--site-padding);
	padding-top: 200px;
}
@media all and (max-width: 767px) {
	.index-mv__inner {
		height: 80vh;
		padding-top: 360px;
	}
}
.index-mv__screen {
	display: grid;
	gap: 20px;
	width: fit-content;
	padding: 60px 0;
	border-image-source: linear-gradient(to right, #d6d1c9 0%, rgba(255, 255, 255, 0) 100%);
	border-image-slice: 0 fill;
	border-image-outset: 0 0 0 100vw;
}

@media all and (max-width: 1023px) {
	.index-mv__screen {
		gap: 10px;
		margin-bottom: 70px;
		padding: 30px 15px 30px 0;
	}
}

.index-mv__catch-jp {
	font-size: 2.6rem;
}

@media all and (max-width: 767px) {
	.index-mv__catch-jp {
		font-size: 2.2rem;
	}
}

.index-mv__catch-en {
	font-size: 6.2rem;
	font-family: var(--font-en);
	line-height: 1.1290322581;
	letter-spacing: 0.02em;
}

@media all and (max-width: 767px) {
	.index-mv__catch-en {
		font-size: 3rem;
	}
}

.index-mv__logo {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 130px;
	width: fit-content;
	margin-inline: auto auto;
}

@media all and (max-width: 767px) {
	.index-mv__logo {
		bottom: 60px;
		width: 200px;
	}
}

/*==================================================
shop
==================================================*/
.index-shop {
	position: relative;
	padding: 100px 0 70px 0;
}

@media all and (max-width: 1023px) {
	.index-shop {
		padding: 70px 0;
	}
}

.index-shop:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0px;
	width: 100%;
	height: 100%;
	background: url("../img/shop-bg.png") no-repeat center top;
}

@media all and (max-width: 767px) {
	.index-shop:before {
		background-size: cover;
	}
}

.index-shop-body {
	width: fit-content;
	margin-left: auto;
}

@media all and (max-width: 767px) {
	.index-shop-body {
		margin: 0 auto;
	}
}

.index-shop-catch {
	position: relative;
	width: fit-content;
	margin: 0 auto 55px auto;
	padding: 0 80px 5px 80px;
	background: var(--accent-color);
	color: #fff;
	font-size: 2.3rem;
	border-radius: 30px;
	font-feature-settings: "palt";
}

@media all and (max-width: 767px) {
	.index-shop-catch {
		width: 100%;
		margin-bottom: 40px;
		padding: 0 20px 5px 20px;
		font-size: 1.8rem;
	}
}

.index-shop-catch__num {
	font-size: 3.8rem;
	font-weight: var(--font-en);
}

@media all and (max-width: 767px) {
	.index-shop-catch__num {
		font-size: 3.2rem;
	}
}

.index-shop-box {
	position: relative;
	max-width: 438px;
	margin: auto;
	padding: 35px 50px 40px 50px;
	box-shadow: 0px 0px 1px 16px rgba(0, 0, 0, 0.2);
	background: #fff;
}

@media all and (max-width: 767px) {
	.index-shop-box {
		padding: 20px 30px;
	}
}

.index-shop-box__title {
	margin-bottom: 20px;
	font-size: 2.4rem;
}

.index-shop-box__link {
	display: block;
	margin-bottom: 25px;
	color: var(--primary-color);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 10px;
	font-size: 2rem;
	font-family: var(--font-en);
}

.index-shop-box__message {
	margin-bottom: 20px;
	line-height: 1.75;
}

.index-shop-box__more {
	display: flex;
	place-items: center;
	gap: 15px;
	width: fit-content;
	margin-left: auto;
	color: #4c9c7f;
}

.index-shop-box__more:after {
	content: "";
	display: grid;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #4c9c7f url("../img/common/arrow.svg") no-repeat center/8px auto;
}

/*==================================================
menu
==================================================*/
.index-menu {
	padding: 150px 0 20px 0;
	background: url("../img/menu-bg.jpg") no-repeat center/cover;
}

@media all and (max-width: 1023px) {
	.index-menu {
		padding-top: 80px;
	}
}

@media all and (max-width: 767px) {
	.index-menu {
		padding-top: 60px;
	}
}

.index-menu--bottom {
	padding-bottom: 60px;
}

.index-menu-header {
	max-width: 1200px;
	margin: 0 auto 120px;
}

@media all and (max-width: 1023px) {
	.index-menu-header {
		margin-bottom: 80px;
	}
}

@media all and (max-width: 767px) {
	.index-menu-header {
		margin-bottom: 30px;
	}
}

.index-menu-inner {
	max-width: 868px;
	margin-inline: auto auto;
}

.index-menu-top-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-left: auto;
	margin-bottom: 10px;
}

@media all and (max-width: 767px) {
	.index-menu-top-list {
		gap: 5px;
		margin-bottom: 5px;
	}
}

.index-menu-row {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 870px;
	align-items: center;
	gap: 70px;
}

@media all and (max-width: 1279px) {
	.index-menu-row {
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

.index-menu-border {
	position: relative;
	height: 415px;
	background: rgba(210, 71, 33, 0.21);
	border-radius: 0 200px 200px 0;
}

@media all and (max-width: 1279px) {
	.index-menu-border {
		position: absolute;
		height: 300px;
	}
}

@media all and (max-width: 767px) {
	.index-menu-border {
		display: none;
	}
}

.index-menu-border:before {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	border-image-source: linear-gradient(rgba(210, 71, 33, 0.21), rgba(210, 71, 33, 0.21));
	border-image-slice: 0 fill;
	border-image-outset: 0 0 0 100vw;
}

.index-menu-bottom-list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
	margin-left: auto;
}

@media all and (max-width: 767px) {
	.index-menu-bottom-list {
		gap: 5px;
	}
}

.index-menu-item {
	position: relative;
	border: 5px solid rgba(210, 71, 33, 0.2);
}

.index-menu-item a {
	display: block;
}

.index-menu-item img {
	width: 100%;
}

.index-menu-item__button {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 10px;
	display: grid;
	align-items: center;
	min-width: 170px;
	max-width: fit-content;
	height: 35px;
	margin: auto;
	padding-inline: 20px 40px;
	border-radius: 18px;
	background: #fff;
	line-height: 1.2;
	color: var(--accent-color);
}

@media all and (max-width: 767px) {
	.index-menu-item__button {
		min-width: 100px;
		max-width: 90%;
		width: 100%;
		padding-inline: 10px;
		height: 30px;
		font-size: 1rem;
	}
}

.index-menu-item__button:after {
	content: "";
	display: block;
	position: absolute;
	right: 10px;
	top: 0;
	bottom: 0;
	width: 25px;
	height: 25px;
	margin: auto;
	border-radius: 50%;
	background: var(--accent-color) url("../img/common/arrow.svg") no-repeat center/8px auto;
}

@media all and (max-width: 767px) {
	.index-menu-item__button:after {
		background-size: 6px auto;
		width: 15px;
		height: 15px;
	}
}

/*==================================================
style
==================================================*/
.index-style {
	padding-block: 90px;
}

@media all and (max-width: 1023px) {
	.index-style {
		padding-block: 70px;
	}
}

.index-style-lead {
	margin-bottom: 30px;
}

@media all and (max-width: 767px) {
	.index-style-lead {
		margin-bottom: 20px;
	}
}

.index-style-header {
	margin-bottom: 80px;
}

@media all and (max-width: 1023px) {
	.index-style-header {
		margin-bottom: 40px;
	}
}

.index-style-slider {
	max-width: 1650px;
	margin-inline: auto auto;
	padding-inline: var(--site-padding);
}

.index-style-slider__link {
	display: block;
	padding: 0 10px;
}

.index-style-slider img {
	object-fit: cover;
	aspect-ratio: 310/420;
	border-radius: 10px;
}

.index-style-slider .slick-prev {
	left: 50px;
}

@media all and (max-width: 767px) {
	.index-style-slider .slick-prev {
		left: 35px;
	}
}

.index-style-slider .slick-next {
	right: 50px;
}

@media all and (max-width: 767px) {
	.index-style-slider .slick-next {
		right: 35px;
	}
}

.index-style-slider .slick-prev,
.index-style-slider .slick-next {
	z-index: 10000;
	width: 40px;
	height: 40px;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 12px auto !important;
	border: solid 1px #fff;
	border-radius: 50%;
}

@media all and (max-width: 767px) {

	.index-style-slider .slick-prev,
	.index-style-slider .slick-next {
		width: 30px;
		height: 30px;
	}
}

.index-style-slider .slick-next {
	background-image: url("../img/common/arrow.svg") !important;
}

.index-style-slider .slick-prev {
	background-image: url("../img/common/prev.svg") !important;
}

/*==================================================
news
==================================================*/
.index-news-header {
	margin-bottom: 70px;
}

@media all and (max-width: 767px) {
	.index-news-header {
		margin-bottom: 35px;
	}
}

.index-news-lead {
	margin-bottom: 30px;
}

@media all and (max-width: 767px) {
	.index-news-lead {
		margin-bottom: 15px;
	}
}

.index-news-list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px 15px;
}

@media all and (max-width: 767px) {
	.index-news-list {
		grid-template-columns: 1fr 1fr;
		gap: 15px;
	}
}

.index-news-item {
	box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
	border-radius: 10px;
}

.index-news-item__img {
	display: block;
	margin-bottom: 10px;
	border-radius: 10px 10px 0 0;
	width: 100%;
	height: 250px;
	object-fit: cover;
}

.index-news-item dl {
	padding: 5px 20px 15px 20px;
}

@media all and (max-width: 767px) {
	.index-news-item dl {
		padding: 5px 15px 10px 15px;
	}
}

.index-news-item__date {
	margin-bottom: 3px;
	font-family: var(--font-en);
	font-weight: 500;
}

.index-news-item__text {
	background: url("../img/common/news-arrow.svg") no-repeat right center/8px auto;
}

@media all and (max-width: 767px) {
	.index-news-item__text {
		padding-right: 10px;
		background-size: 8px auto;
	}
}

/*==================================================
info
==================================================*/
.index-info {
	position: relative;
	padding: 180px 0 350px 0;
}

@media all and (max-width: 1023px) {
	.index-info {
		padding: 150px 0 250px 0;
	}
}

@media all and (max-width: 767px) {
	.index-info {
		padding: 80px 0 80px 0;
	}
}

.index-info-border {
	position: absolute;
	z-index: -1;
	top: 220px;
	width: 1080px;
	height: 415px;
	margin: auto;
	border-radius: 0 210px 210px 0;
	background: #ddeee9;
}

@media all and (max-width: 1279px) {
	.index-info-border {
		width: 90%;
		height: 300px;
	}
}

@media all and (max-width: 1023px) {
	.index-info-border {
		top: 120px;
	}
}

@media all and (max-width: 767px) {
	.index-info-border {
		top: 160px;
	}
}

.index-info-border:before {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	border-image-source: linear-gradient(to right, #ddeee9 0%, #ddeee9 100%);
	border-image-slice: 0 fill;
	border-image-outset: 0 0 0 100vw;
}

.index-info-inner {
	width: fit-content;
	margin-left: auto;
}

@media all and (max-width: 767px) {
	.index-info-inner {
		display: contents;
	}
}

.index-info-row {
	display: grid;
	grid-template-columns: 1.35fr 3fr;
	gap: 70px;
	justify-content: flex-end;
}

@media all and (max-width: 1023px) {
	.index-info-row {
		gap: 30px;
		grid-template-columns: 1.35fr 1.5fr;
	}
}

@media all and (max-width: 767px) {
	.index-info-row {
		grid-template-columns: 1fr;
		gap: 0px;
	}
}

@media all and (max-width: 767px) {
	.index-info-row__col {
		display: contents;
	}
}

.index-info-lead {
	margin-bottom: 30px;
}

@media all and (max-width: 767px) {
	.index-info-lead {
		margin-bottom: 15px;
	}
}

@media all and (max-width: 767px) {
	.index-info-title {
		order: -2;
	}
}

@media all and (max-width: 767px) {
	.index-info-img {
		order: -1;
		margin-bottom: 20px;
	}
}

.index-info-table {
	margin-bottom: 40px;
}

@media all and (max-width: 767px) {
	.index-info-table {
		margin-bottom: 20px;
	}
}

.index-info-table th,
.index-info-table td {
	font-size: 1.5rem;
	line-height: 1.6;
}

@media all and (max-width: 1023px) {

	.index-info-table th,
	.index-info-table td {
		font-size: 1.4rem;
	}
}

.index-info-table th {
	width: 5em;
}

/*==================================================
salon
==================================================*/
.salon-page {
	padding: 180px 0 200px 0;
	background: url("../img/salon/mv-bg.jpg") no-repeat center top;
}

@media all and (max-width: 1023px) {
	.salon-page {
		padding: 120px 0 140px 0;
		background-size: auto 400px;
	}
}

@media all and (max-width: 767px) {
	.salon-page {
		padding: 90px 0 100px 0;
	}
}

.salon-title {
	display: grid;
	margin-bottom: 140px;
	color: #2b2b2b;
}

@media all and (max-width: 1023px) {
	.salon-title {
		margin-bottom: 100px;
	}
}

@media all and (max-width: 767px) {
	.salon-title {
		margin-bottom: 70px;
	}
}

.salon-title__en {
	font-size: 3.6rem;
	font-family: var(--font-en);
}

@media all and (max-width: 1023px) {
	.salon-title__en {
		font-size: 2.8rem;
	}
}

.salon-title__jp {
	font-size: 1.8rem;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.salon-title__jp {
		font-size: 1.6rem;
	}
}

.salon-section {
	margin-bottom: 130px;
}

@media all and (max-width: 1023px) {
	.salon-section {
		margin-bottom: 90px;
	}
}

@media all and (max-width: 767px) {
	.salon-section {
		margin-bottom: 30px;
	}
}

.salon-section-catch {
	display: grid;
	align-items: center;
	grid-template-columns: 790px 1fr;
	gap: 20px;
	height: var(--border-height);
	margin-bottom: 60px;
	color: #fff;
	font-size: 3.8rem;
	font-family: var(--font-en);
}

@media all and (max-width: 1279px) {
	.salon-section-catch {
		grid-template-columns: 700px 1fr;
	}
}

@media all and (max-width: 1023px) {
	.salon-section-catch {
		grid-template-columns: 2fr 0.8fr;
		margin-bottom: 50px;
	}
}

@media all and (max-width: 767px) {
	.salon-section-catch {
		margin-bottom: 35px;
		font-size: 2.8rem;
	}
}

.salon-section-catch__body {
	position: relative;
	display: grid;
	align-items: center;
	justify-content: end;
	margin-left: -320px;
	padding-right: 60px;
	height: 100%;
}

@media all and (max-width: 767px) {
	.salon-section-catch__body {
		padding-right: 30px;
	}
}

.salon-section-catch__body img {
	position: absolute;
	right: 0;
	top: 0;
	object-fit: cover;
	object-position: right center;
	height: var(--border-height);
}

.salon-section-catch__text {
	position: relative;
	z-index: 10;
	font-family: var(--font-en);
	letter-spacing: 0.026em;
}

.salon-section-catch__border {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background: #fbe0db;
	border-radius: 400px 0 0 400px;
}

.salon-section-catch__border:before {
	content: "";
	position: absolute;
	right: 0;
	display: block;
	width: 0;
	height: 100%;
	border-image-source: linear-gradient(to right, #fbe0db 0%, #fbe0db 100%);
	border-image-slice: 0 fill;
	border-image-outset: 0 100vw 0 0;
}

.salon-section-title {
	margin-bottom: 10px;
	font-size: var(--font-large);
	color: #2b2b2b;
}

.salon-section-lead {
	margin-bottom: 60px;
	font-size: 2rem;
	color: #2b2b2b;
	font-weight: 400;
}

@media all and (max-width: 767px) {
	.salon-section-lead {
		margin-bottom: 30px;
		font-size: 1.5rem;
	}
}

.salon-menu-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
}

@media all and (max-width: 1279px) {
	.salon-menu-row {
		gap: 35px;
	}
}

@media all and (max-width: 1023px) {
	.salon-menu-row {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

.salon-menu-data {
	display: grid;
	grid-template-columns: 1fr 12em;
	grid-template-rows: auto;
	margin-bottom: 25px;
	color: #2b2b2b;
	gap: 0 20px;
	padding-left: 15px;
	border-left: 4px solid #2b2b2b;
}

@media all and (max-width: 1279px) {
	.salon-menu-data {
		grid-template-columns: 1fr 14em;
	}
}

@media all and (max-width: 767px) {
	.salon-menu-data {
		grid-template-columns: 1fr 11em;
		gap: 5px;
		padding-left: 5px;
	}
}

.salon-menu-data--right-ex {
	grid-template-columns: 1fr 20em;
}

@media all and (max-width: 767px) {
	.salon-menu-data--right-ex {
		grid-template-columns: 1fr 15em;
	}

	.salon-menu-data--right-ex dd {
		font-size: 1.2rem;
	}
}

.salon-menu-data:last-child {
	margin-bottom: 0;
}

.salon-menu-data dt {
	display: grid;
	align-items: center;
	min-height: 2em;
	padding-bottom: 5px;
	font-size: 1.8rem;
}

@media all and (max-width: 767px) {
	.salon-menu-data dt {
		font-size: 1.5rem;
	}
}

.salon-menu-data dd {
	text-align: right;
	padding-bottom: 12px;
}

.salon-menu-data__price {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	font-family: var(--font-en);
	font-size: 2.1rem;
	line-height: 1;
}

@media all and (max-width: 767px) {
	.salon-menu-data__price {
		font-size: 1.7rem;
	}
}

.salon-menu-data__tax {
	display: inline-block;
	padding-bottom: 3px;
	font-size: 1.4rem;
	font-family: var(--font-base);
	line-height: 1;
}

@media all and (max-width: 767px) {
	.salon-menu-data__tax {
		font-size: 1.1rem;
	}
}

.salon-menu-data__support {
	display: block;
	font-size: 1.6rem;
}

@media all and (max-width: 767px) {
	.salon-menu-data__support {
		font-size: 1.2rem;
	}
}

@media all and (max-width: 767px) {
	.salon-menu-data__consultation {
		font-size: 1.3rem;
	}
}

.salon-menu-list {
	display: grid;
	gap: 10px;
}

.menu-box {
	max-width: 865px;
	margin-inline: auto auto;
	padding-top: 80px;
}

@media all and (max-width: 1023px) {
	.menu-box {
		padding-top: 0px;
	}
}

/*==================================================
total
==================================================*/
.total-page {
	padding: 360px 0 200px 0;
	background: url("../img/total/total-mv-bg.jpg") no-repeat center top;
}

@media all and (max-width: 767px) {
	.total-page {
		padding-top: 380px;
		padding-bottom: 100px;
	}
}

.total-header {
	position: relative;
	z-index: 1;
	margin-bottom: 130px;
	height: var(--border-height);
}

@media all and (max-width: 767px) {
	.total-header {
		height: auto;
		margin-bottom: 80px;
	}
}

.total-header__title {
	margin-bottom: 40px;
	font-size: 4.8rem;
	font-family: var(--font-min);
}

@media all and (max-width: 767px) {
	.total-header__title {
		margin-bottom: 10px;
		font-size: 3.6rem;
		line-height: 1.4;
	}
}

.total-header__text {
	font-size: 1.8rem;
}

@media all and (max-width: 767px) {
	.total-header__text {
		font-size: 1.4rem;
	}
}

.total-header__border {
	position: relative;
	display: grid;
	align-content: center;
	height: var(--border-height);
	color: #2b2b2b;
}

@media all and (max-width: 767px) {
	.total-header__border {
		height: auto;
		padding-top: 70px;
		padding-bottom: 70px;
	}
}

.total-header__border:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: -300px;
	top: 0;
	display: block;
	width: 100%;
	height: var(--border-height);
	border-radius: 400px 0 0 400px;
	background: linear-gradient(to right, #d6d1c9 40%, rgba(214, 209, 201, 0) 100%);
}

@media all and (max-width: 767px) {
	.total-header__border:before {
		top: 0px;
		left: -200px;
		height: 100%;
		border-radius: 0;
	}
}

/*==================================================
staff
==================================================*/
.staff-page {
	padding: 150px 0;
}

@media all and (max-width: 1023px) {
	.staff-page {
		padding: 100px 0;
	}
}

@media all and (max-width: 767px) {
	.staff-page {
		padding: 70px 0;
	}
}

.staff-list {
	display: grid;
	gap: 50px;
	grid-template-columns: 1fr 1fr;
	max-width: 948px;
	margin-inline: auto auto;
}

@media all and (max-width: 1023px) {
	.staff-list {
		gap: 30px;
	}
}

@media all and (max-width: 767px) {
	.staff-list {
		gap: 40px;
	}
}

@media all and (max-width: 767px) {
	.staff-list {
		grid-template-columns: 1fr;
	}
}

.staff-unit {
	display: grid;
	grid-template-columns: 1fr 2fr;
}

.staff-unit__job,
.staff-unit__name,
.staff-unit__text {
	padding-left: 20px;
}

.staff-unit__title {
	display: grid;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #000;
}

.staff-unit__job {
	font-weight: 700;
	font-size: 1.4rem;
}

.staff-unit__name {
	font-weight: 700;
}

.staff-unit__text {
	margin-bottom: 20px;
	font-size: 1.4rem;
}

.staff-unit__button {
	display: grid;
	place-content: center;
	max-width: 226px;
	margin-left: auto;
	padding: 10px;
	border: 1px solid var(--accent-color);
	border-radius: 20px;
	color: var(--accent-color);
	font-weight: 600;
	font-size: 1.2rem;
}

@media (hover: hover) and (pointer: fine) {
	.staff-unit__button:hover {
		opacity: 1;
		background: var(--accent-color);
		color: #fff;
	}
}

.staff-unit__arrow {
	display: inline;
	padding: 0 20px;
	background: url("../img/common/arrow-orange.svg") no-repeat right center/8px auto;
}

.staff-unit__button:hover .staff-unit__arrow {
	background-image: url("../img/common/arrow.svg");
}

/*==================================================
concept
==================================================*/
.concept-page {
	padding: 170px 0 0 0;
	background: url("../img/concept/concept-main.jpg") no-repeat center top/auto 514px;
}

@media all and (max-width: 767px) {
	.concept-page {
		padding: 90px 0 0 0;
		background-size: auto 300px;
	}
}

.concept-title {
	display: grid;
	margin-bottom: 180px;
}

@media all and (max-width: 1023px) {
	.concept-title {
		margin-bottom: 80px;
	}
}

@media all and (max-width: 767px) {
	.concept-title {
		margin-bottom: 50px;
	}
}

.concept-title__en {
	font-size: 3.6rem;
	font-family: var(--font-en);
}

@media all and (max-width: 1023px) {
	.concept-title__en {
		font-size: 3rem;
	}
}

@media all and (max-width: 767px) {
	.concept-title__en {
		font-size: 1.8rem;
	}
}

.concept-title__jp {
	margin-bottom: 20px;
	font-size: 1.8rem;
}

.concept-catch {
	margin-bottom: 50px;
}

@media all and (max-width: 767px) {
	.concept-catch {
		margin-bottom: 30px;
	}
}

.concept-catch__jp {
	font-size: 5.8rem;
	font-family: var(--font-en);
}

@media all and (max-width: 1023px) {
	.concept-catch__jp {
		font-size: 4.6rem;
	}
}

@media all and (max-width: 767px) {
	.concept-catch__jp {
		font-size: 3rem;
	}
}

.concept-catch__en {
	font-size: 4rem;
	line-height: 1.125;
	font-family: var(--font-en);
}

@media all and (max-width: 1023px) {
	.concept-catch__en {
		font-size: 3.6rem;
	}
}

@media all and (max-width: 767px) {
	.concept-catch__en {
		font-size: 2.4rem;
	}
}

.concept-row {
	display: grid;
	align-items: center;
	grid-template-columns: 310px 1fr;
	gap: 40px;
	max-width: 1000px;
	margin: 0 auto 120px auto;
}

@media all and (max-width: 1023px) {
	.concept-row {
		grid-template-columns: 1fr 2fr;
		gap: 30px;
		margin-bottom: 70px;
	}
}

@media all and (max-width: 767px) {
	.concept-row {
		grid-template-columns: 1fr;
		gap: 20px;
		margin-bottom: 60px;
	}
}

@media all and (max-width: 767px) {
	.concept-row__img {
		order: 2;
		text-align: center;
	}
}

.concept-row__text {
	font-size: 1.8rem;
	line-height: 1.7777777778;
	font-weight: 700;
	font-feature-settings: "palt";
}

@media all and (max-width: 1023px) {
	.concept-row__text {
		font-size: 1.6rem;
	}
}

@media all and (max-width: 767px) {
	.concept-row__text {
		order: 1;
		font-size: 1.5rem;
	}
}

/*==================================================
method
==================================================*/
.method {
	padding-bottom: 80px;
}

@media all and (max-width: 1023px) {
	.method {
		padding-bottom: 60px;
	}
}

@media all and (max-width: 767px) {
	.method {
		padding-bottom: 50px;
	}
}

.method-title {
	position: relative;
	margin-bottom: 60px;
}

@media all and (max-width: 1023px) {
	.method-title {
		margin-bottom: 30px;
	}
}

.method-title:before,
.method-title:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	height: 0;
	border-top: 1px solid #000;
	width: 260px;
}

.method-title:before {
	left: 0;
}

@media all and (max-width: 1023px) {
	.method-title:before {
		left: -40px;
	}
}

@media all and (max-width: 767px) {
	.method-title:before {
		left: -20px;
	}
}

.method-title:after {
	right: 0;
}

@media all and (max-width: 1023px) {
	.method-title:after {
		right: -40px;
	}
}

@media all and (max-width: 767px) {
	.method-title:after {
		right: -20px;
	}
}

.method-title__body {
	display: grid;
	place-items: center;
	max-width: 830px;
	height: 120px;
	margin-inline: auto auto;
	background: #ddeee9;
	border-radius: 56px;
}

@media all and (max-width: 1023px) {
	.method-title__body {
		height: 90px;
	}
}

@media all and (max-width: 767px) {
	.method-title__body {
		height: 60px;
	}
}

.method-title__text {
	position: relative;
	background: #ddeee9;
	padding-inline: 20px;
	z-index: 1;
	font-size: 4rem;
	font-family: var(--font-en);
}

@media all and (max-width: 767px) {
	.method-title__text {
		font-size: 2rem;
	}
}

.method-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

@media all and (max-width: 1023px) {
	.method-row {
		gap: 20px;
	}
}

@media all and (max-width: 767px) {
	.method-row {
		grid-template-columns: 1fr;
		margin-inline: auto auto;
	}
}

.method-unit__line {
	position: relative;
	display: grid;
	place-items: center;
	width: 145px;
	margin: 0 auto 10px;
	padding: 10px;
	border: 2px solid #000;
	border-radius: 8px;
	font-family: var(--font-en);
}

@media all and (max-width: 767px) {
	.method-unit__line {
		width: 120px;
	}
}

.method-unit__num {
	font-size: 4rem;
	font-family: var(--font-en);
	font-weight: 700;
}

.method-unit__text {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -8px;
	width: fit-content;
	margin: auto;
	padding: 0 10px;
	background: #fff;
	font-weight: 700;
	font-size: 2rem;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.method-unit__text {
		font-size: 1.6rem;
	}
}

.method-unit__img {
	display: block;
	margin: 0 auto 15px auto;
}

@media all and (max-width: 1023px) {
	.method-unit__img {
		width: 75%;
		margin-inline: auto auto;
	}
}

@media all and (max-width: 767px) {
	.method-unit__img {
		width: 60%;
	}
}

.method-unit__title {
	margin-bottom: 10px;
	font-size: 2.8rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.4;
}

@media all and (max-width: 1279px) {
	.method-unit__title {
		font-size: 2.6rem;
	}
}

@media all and (max-width: 1023px) {
	.method-unit__title {
		font-size: 1.9rem;
	}
}

@media all and (max-width: 767px) {
	.method-unit__title {
		font-size: 2.4rem;
	}
}

.method-unit__summary {
	line-height: 1.7857142857;
	font-size: 1.4rem;
}

/*==================================================
scoop
==================================================*/
.scoop {
	padding: 100px 0 130px 0;
	background: rgba(210, 71, 33, 0.21);
}

@media all and (max-width: 1023px) {
	.scoop {
		padding: 80px 0 100px 0;
	}
}

@media all and (max-width: 767px) {
	.scoop {
		padding: 40px 0 60px 0;
	}
}

.scoop-title {
	margin-bottom: 40px;
	font-size: 4rem;
	color: #151a22;
}

@media all and (max-width: 1023px) {
	.scoop-title {
		margin-bottom: 30px;
		font-size: 3.2rem;
	}
}

@media all and (max-width: 767px) {
	.scoop-title {
		margin-bottom: 25px;
		font-size: 2rem;
	}
}

.scoop-text {
	margin-bottom: 40px;
	line-height: 1.75;
}

@media all and (max-width: 1023px) {
	.scoop-text {
		margin-bottom: 30px;
	}
}

@media all and (max-width: 767px) {
	.scoop-text {
		margin-bottom: 20px;
	}
}

.scoop-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

@media all and (max-width: 767px) {
	.scoop-list {
		gap: 8px;
	}
}

.scoop-list li {
	padding: 7px;
	background: rgba(210, 71, 33, 0.21);
}

@media all and (max-width: 767px) {
	.scoop-list li {
		padding: 4px;
	}
}

/*==================================================
info
==================================================*/
.info-header {
	height: 320px;
	background: url("../img/info/mv-bg.jpg") no-repeat center;
}

@media all and (max-width: 1023px) {
	.info-header {
		height: 260px;
	}
}

@media all and (max-width: 767px) {
	.info-header {
		height: 200px;
	}
}

.info-header__inner {
	display: grid;
	place-content: center start;
	max-width: 1149px;
	margin-inline: auto auto;
	padding-inline: var(--site-padding);
	height: 100%;
}

.info-header__en {
	font-size: 3.6rem;
	font-family: var(--font-en);
}

.info-header__jp {
	font-size: 1.8rem;
	font-weight: 700;
}

.info-section-title {
	display: grid;
	padding: 25px 0;
	background: linear-gradient(to right, #d6d1c9 0%, rgba(255, 255, 255, 0) 100%);
	text-align: center;
}

@media all and (max-width: 767px) {
	.info-section-title {
		padding: 10px;
	}
}

.info-section-title__en {
	margin-bottom: 5px;
	font-size: 3.6rem;
	font-family: var(--font-en);
}

@media all and (max-width: 767px) {
	.info-section-title__en {
		font-size: 2.4rem;
	}
}

.info-section-title__jp {
	font-weight: 700;
	font-size: 1.8rem;
}

@media all and (max-width: 767px) {
	.info-section-title__jp {
		font-size: 1.5rem;
	}
}

.info-section-body {
	position: relative;
	max-width: 850px;
	margin-inline: auto auto;
	padding: 160px 0 0 0;
}

@media all and (max-width: 1023px) {
	.info-section-body {
		max-width: 650px;
		padding-top: 100px;
	}
}

@media all and (max-width: 767px) {
	.info-section-body {
		padding-top: 40px;
	}
}

.info-section-lead {
	width: fit-content;
	margin: 0 auto 20px auto;
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1.2307692308;
}

@media all and (max-width: 1023px) {
	.info-section-lead {
		max-width: 500px;
		margin-right: 0;
	}
}

@media all and (max-width: 767px) {
	.info-section-lead {
		max-width: 240px;
		font-size: 1.3rem;
	}
}

.info-section-badge {
	position: absolute;
	z-index: -1;
	top: 50px;
	left: -200px;
	display: grid;
	place-items: center;
	width: 316px;
	height: 274px;
	font-size: 5.6rem;
	background: url("../img/info/hexagon.svg") no-repeat center;
}

@media all and (max-width: 1023px) {
	.info-section-badge {
		top: 40px;
		left: -70px;
		width: 200px;
		height: 200px;
		font-size: 4.8rem;
		background-size: contain;
	}
}

@media all and (max-width: 767px) {
	.info-section-badge {
		top: 20px;
		left: -50px;
		width: 150px;
		height: 100px;
		font-size: 2.4rem;
	}
}

/*==================================================
point-member
==================================================*/
.point-member {
	position: relative;
	z-index: 2;
	padding: 80px 45px;
	border-radius: 20px;
	box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.25);
	background: #fff;
}

@media all and (max-width: 1023px) {
	.point-member {
		padding: 10px 10px;
		border-radius: 10px;
	}
}

.point-member__data {
	display: grid;
	grid-template-columns: 1fr 1.4fr;
	justify-content: space-between;
	align-content: start;
	padding-block: 30px 15px;
	border-bottom: 1px solid #ddddde;
}

@media all and (max-width: 767px) {
	.point-member__data {
		padding: 10px 0;
		gap: 5px;
	}
}

.point-member__data:last-child {
	border-bottom: none;
}

.point-member__title {
	display: grid;
	align-content: center;
	grid-template-rows: auto;
}

.point-member__status {
	width: fit-content;
	padding: 5px 30px 7px 10px;
	clip-path: polygon(0% 0%, 100% 0, 90% 50%, 100% 100%, 0% 100%);
	font-size: 1.8rem;
}

@media all and (max-width: 767px) {
	.point-member__status {
		font-size: 1.3rem;
	}
}

.point-member__status--bk {
	background: #231815;
	color: #fff;
}

.point-member__status--wh {
	position: relative;
	background: #231815;
}

.point-member__status--wh:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	right: 3px;
	bottom: 2px;
	background-color: white;
	clip-path: inherit;
	z-index: -1;
}

.point-member__status--gold {
	background: #dcc371;
}

.point-member__body {
	display: grid;
	align-items: center;
	grid-template-columns: 1.5fr 1fr;
}

@media all and (max-width: 767px) {
	.point-member__body {
		gap: 5px;
	}
}

.point-member__payment {
	font-size: 2.8rem;
	font-weight: 500;
}

@media all and (max-width: 1023px) {
	.point-member__payment {
		font-size: 2.4rem;
	}
}

@media all and (max-width: 767px) {
	.point-member__payment {
		font-size: 1.2rem;
	}
}

.point-member__text {
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1.2;
}

@media all and (max-width: 1023px) {
	.point-member__text {
		font-size: 2.4rem;
	}
}

@media all and (max-width: 767px) {
	.point-member__text {
		font-size: 1.2rem;
	}
}

.point-member__par {
	font-size: 10rem;
	font-family: var(--font-en);
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.point-member__par {
		font-size: 8rem;
	}
}

@media all and (max-width: 767px) {
	.point-member__par {
		font-size: 4rem;
	}
}

.point-member__par--silver {
	color: #ddddde;
}

.point-member__par--gold {
	color: #dcc371;
}

.point-member__equal {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 1.8fr;
	gap: 70px;
	font-size: 1.8rem;
	line-height: 1.5555555556;
}

@media all and (max-width: 767px) {
	.point-member__equal {
		gap: 10px;
		grid-template-columns: 1fr;
		font-size: 1.4rem;
	}
}

@media all and (max-width: 767px) {
	.point-member__equal img {
		display: block;
		max-width: 60%;
		margin-inline: auto auto;
	}
}

/*==================================================
refer
==================================================*/
.refer {
	padding: 200px 0 20px 0;
}

@media all and (max-width: 1023px) {
	.refer {
		padding: 120px 0 0px 0;
	}
}

@media all and (max-width: 767px) {
	.refer {
		padding: 60px 0 0 0;
	}
}

.refer-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
}

@media all and (max-width: 1023px) {
	.refer-row {
		gap: 20px;
	}
}

@media all and (max-width: 767px) {
	.refer-row {
		gap: 40px;
		grid-template-columns: 1fr;
		font-size: 20px;
	}
}

.refer-title {
	display: grid;
	margin-bottom: 90px;
	padding: 20px 0;
	background: linear-gradient(to right, #d6d1c9 0%, rgba(255, 255, 255, 0) 100%);
	text-align: center;
}

@media all and (max-width: 1023px) {
	.refer-title {
		margin-bottom: 40px;
	}
}

@media all and (max-width: 767px) {
	.refer-title {
		margin-bottom: 30px;
		padding: 10px;
	}
}

.refer-title__en {
	font-size: 3.6rem;
	font-family: var(--font-en);
}

@media all and (max-width: 767px) {
	.refer-title__en {
		font-size: 2.4rem;
	}
}

.refer-title__jp {
	font-weight: 700;
	font-size: 1.8rem;
}

@media all and (max-width: 767px) {
	.refer-title__jp {
		font-size: 1.5rem;
	}
}

.refer-lead {
	width: fit-content;
	margin: 0 auto 40px auto;
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1.2307692308;
}

@media all and (max-width: 1023px) {
	.refer-lead {
		font-size: 2.4rem;
	}
}

@media all and (max-width: 767px) {
	.refer-lead {
		font-size: 1.6rem;
	}
}

.refer-unit {
	position: relative;
	text-align: center;
	padding-bottom: 40px;
}

@media all and (max-width: 767px) {
	.refer-unit {
		max-width: 80%;
		margin-inline: auto auto;
	}
}

.refer-unit:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	left: 0;
	bottom: 0;
	width: 100%;
	height: calc(100% - 200px);
	padding: 45px;
	background: #fbe0db;
	border-radius: 16px;
}

@media all and (max-width: 767px) {
	.refer-unit:before {
		height: calc(100% - 120px);
	}
}

.refer-unit__title {
	margin-bottom: 10px;
	font-size: 2.6rem;
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.refer-unit__title {
		font-size: 2.2rem;
	}
}

.refer-unit__img {
	display: grid;
	margin: 0 auto 10px auto;
}

@media all and (max-width: 1023px) {
	.refer-unit__img {
		max-width: 70%;
	}
}

@media all and (max-width: 767px) {
	.refer-unit__img {
		max-width: 60%;
	}
}

.refer-unit__text {
	font-size: 2.69rem;
	font-weight: 500;
}

@media all and (max-width: 1023px) {
	.refer-unit__text {
		padding: 0 10px;
		font-size: 2rem;
	}
}

@media all and (max-width: 767px) {
	.refer-unit__text {
		font-size: 1.7rem;
	}
}

.refer-unit__num {
	font-size: 10rem;
	font-family: var(--font-en);
	color: #2b2b2b;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.refer-unit__num {
		font-size: 8rem;
	}
}

@media all and (max-width: 767px) {
	.refer-unit__num {
		font-size: 5rem;
	}
}

.refer-unit__point {
	font-size: 4rem;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.refer-unit__point {
		font-size: 3.6rem;
	}
}

@media all and (max-width: 767px) {
	.refer-unit__point {
		font-size: 3rem;
	}
}

.refer-unit__ribon {
	width: 90%;
	margin: 0 auto 10px auto;
	padding: 10px;
	background: #fff;
	font-size: 1.8rem;
	clip-path: polygon(0% 0%, 100% 0, 94% 50%, 100% 100%, 0% 100%);
}

@media all and (max-width: 1023px) {
	.refer-unit__ribon {
		padding-right: 10px;
		font-size: 1.4rem;
	}
}

.refer-unit__present {
	padding-inline: 20px 20px;
	font-size: 2.8rem;
}

@media all and (max-width: 767px) {
	.refer-unit__present {
		font-size: 2rem;
	}
}

/*==================================================
style
==================================================*/
.style-page {
	padding: 100px 0 200px 0;
}

@media all and (max-width: 1023px) {
	.style-page {
		padding: 70px 0 150px 0;
	}
}

@media all and (max-width: 767px) {
	.style-page {
		padding: 50px 0 100px 0;
	}
}

.style-list {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 15px;
	margin-bottom: 180px;
}

@media all and (max-width: 1023px) {
	.style-list {
		grid-template-columns: repeat(4, 1fr);
		margin-bottom: 80px;
	}
}

@media all and (max-width: 767px) {
	.style-list {
		grid-template-columns: repeat(2, 1fr);
		margin-bottom: 60px;
	}
}

.style-unit img {
	display: block;
	margin-bottom: 10px;
	border-radius: 10px;
}

.style-unit__tags {
	display: flex;
	gap: 25px 10px;
}

.style-unit__tags a {
	display: block;
	border-radius: 5px;
	padding: 2px 5px;
	border: 1px solid #000;
	font-size: 1.4rem;
}

.pagination-numbers {
	display: flex;
	justify-content: center;
	gap: 15px;
}

.pagination-numbers .page-numbers {
	display: grid;
	place-items: center;
	width: 56px;
	height: 56px;
	background: #f5f5f5;
	border-radius: 50%;
	font-size: 2rem;
}

@media all and (max-width: 767px) {
	.pagination-numbers .page-numbers {
		width: 42px;
		height: 42px;
		font-size: 1.6rem;
	}
}

.pagination-numbers .page-numbers.current {
	background: #231815;
	color: #fff;
}

/*==================================================
academy
==================================================*/
.academy-page {
	padding: 150px 0 0 0;
}

@media all and (max-width: 1023px) {
	.academy-page {
		padding-top: 100px;
	}
}

@media all and (max-width: 767px) {
	.academy-page {
		padding-top: 70px;
	}
}

.academy-about {
	padding-block: 90px;
	background: linear-gradient(to right, #d6d1c9 0%, rgba(255, 255, 255, 0) 70%);
}

@media all and (max-width: 1023px) {
	.academy-about {
		padding-block: 60px;
	}
}

@media all and (max-width: 767px) {
	.academy-about {
		padding-block: 40px;
	}
}

.academy-about__title {
	margin-bottom: 40px;
	text-align: center;
	font-weight: 700;
	font-size: 2.6rem;
}

@media all and (max-width: 767px) {
	.academy-about__title {
		margin-bottom: 20px;
		font-size: 2rem;
	}
}

.academy-about__text {
	max-width: 714px;
	margin-inline: auto auto;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.7777777778;
}

@media all and (max-width: 767px) {
	.academy-about__text {
		font-size: 1.4rem;
	}
}

/*==================================================
instructor
==================================================*/
.instructor {
	padding: 200px 0 110px;
	background: url("../img/academy/instructor-bg.jpg") no-repeat center 70px;
}

@media all and (max-width: 1023px) {
	.instructor {
		padding: 150px 0 70px;
	}
}

@media all and (max-width: 767px) {
	.instructor {
		padding: 100px 0 55px;
	}
}

.instructor-title {
	display: grid;
	text-align: center;
}

.instructor-title__en {
	font-family: var(--font-en);
	font-size: 3.6rem;
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.instructor-title__en {
		font-size: 2.8rem;
	}
}

.instructor-title__jp {
	font-size: 2.6rem;
}

@media all and (max-width: 767px) {
	.instructor-title__jp {
		font-size: 1.8rem;
	}
}

.instructor-img {
	display: block;
	width: fit-content;
	margin: 0 auto 20px;
}

@media all and (max-width: 767px) {
	.instructor-img {
		width: 70%;
	}
}

.instructor-body {
	position: relative;
	z-index: 1;
	max-width: 500px;
	margin-inline: auto auto;
	padding: 20px 45px 45px 45px;
}

@media all and (max-width: 767px) {
	.instructor-body {
		padding: 25px;
	}
}

.instructor-body:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: calc(100% - 200px);
	border-radius: 15px;
	background: #fbe0db;
}

@media all and (max-width: 767px) {
	.instructor-body:before {
		height: calc(100% - 150px);
	}
}

.instructor-data {
	margin-bottom: 30px;
	font-size: 2.6rem;
	text-align: center;
}

@media all and (max-width: 767px) {
	.instructor-data {
		margin-bottom: 20px;
		font-size: 1.8rem;
	}
}

.instructor-text {
	font-size: 1.8rem;
	line-height: 1.7777777778;
}

@media all and (max-width: 767px) {
	.instructor-text {
		font-size: 1.5rem;
	}
}

/*==================================================
issue
==================================================*/
.issue-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	max-width: 1000px;
	margin: 0 auto;
}

@media all and (max-width: 1023px) {
	.issue-row {
		gap: 30px;
	}
}

@media all and (max-width: 767px) {
	.issue-row {
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

.issue-title {
	padding: 20px;
	background: rgba(21, 26, 34, 0.2);
}

@media all and (max-width: 767px) {
	.issue-title {
		padding: 10px;
	}
}

.issue-title__inner {
	display: grid;
	place-content: center;
	height: 360px;
	box-shadow: 8px 8px 8px rgba(0, 0, 0, 0.2);
	background: #fff;
	text-align: center;
}

@media all and (max-width: 767px) {
	.issue-title__inner {
		height: 180px;
	}
}

.issue-title__01 {
	font-size: 2.6rem;
}

@media all and (max-width: 767px) {
	.issue-title__01 {
		font-size: 2.2rem;
	}
}

.issue-title__02 {
	font-size: 4.5rem;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.issue-title__02 {
		font-size: 4rem;
	}
}

@media all and (max-width: 767px) {
	.issue-title__02 {
		font-size: 3.6rem;
	}
}

.issue-list {
	display: grid;
	gap: 15px;
}

.issue-unit {
	display: grid;
	grid-template-columns: 40px 1fr;
	gap: 20px;
	align-items: center;
	padding: 20px 25px;
	background: linear-gradient(to right, #d6d1c9 0%, rgba(255, 255, 255, 0) 100%);
}

.issue-unit__num {
	font-family: var(--font-en);
	font-size: 3.6rem;
	color: #fff;
}

.issue-unit__text {
	font-size: 1.8rem;
	font-weight: 700;
}

.issue-unit__support {
	display: block;
	font-size: 1.2rem;
	font-weight: 700;
	font-feature-settings: "palt";
}

/*==================================================
solution
==================================================*/
.solution {
	padding-top: 160px;
}

@media all and (max-width: 1023px) {
	.solution {
		padding-top: 100px;
	}
}

@media all and (max-width: 767px) {
	.solution {
		padding-top: 80px;
	}
}

.solution-header {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	max-width: 900px;
	margin: 0 auto 30px;
}

@media all and (max-width: 1023px) {
	.solution-header {
		grid-template-columns: 2fr 1.5fr;
		gap: 20px;
	}
}

@media all and (max-width: 767px) {
	.solution-header {
		grid-template-columns: 1fr;
	}
}

.solution-header__title {
	font-size: 4.5rem;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.solution-header__title {
		font-size: 3.8rem;
	}
}

@media all and (max-width: 767px) {
	.solution-header__title {
		font-size: 3.2rem;
	}
}

.solution-header__imgs {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
	justify-content: center;
}

@media all and (max-width: 1023px) {
	.solution-header__imgs {
		width: fit-content;
		margin-inline: auto auto;
	}
}

.solution-header__text {
	line-height: 1.7777777778;
	font-size: 1.8rem;
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.solution-header__text {
		font-size: 1.5rem;
	}
}

.solution-wrap {
	display: grid;
	grid-template-columns: 3fr 1fr;
	align-items: center;
	gap: 20px;
	max-width: 1220px;
	margin: 0 auto 60px auto;
}

@media all and (max-width: 1023px) {
	.solution-wrap {
		overflow: auto;
		margin-right: -40px;
		padding-right: 20px;
	}
}

@media all and (max-width: 767px) {
	.solution-wrap {
		margin-right: -20px;
	}
}

.solution-step {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	max-width: 830px;
}

@media all and (max-width: 1023px) {
	.solution-step {
		width: 1000px;
	}
}

.solution-step__support {
	position: absolute;
	left: 0;
	bottom: -3.6em;
	font-weight: 700;
	font-size: 1.8rem;
}

.solution-data {
	position: relative;
	z-index: 1;
	display: grid;
	place-content: center;
	width: 250px;
	height: 190px;
}

.solution-data:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 0;
	top: 0;
	display: block;
	width: 300px;
	height: 100%;
	background: url("../img/academy/step-bg-01.png") no-repeat center;
}

.solution-data:nth-child(1) {
	z-index: 3;
}

.solution-data:nth-child(2) {
	z-index: 2;
}

.solution-data:nth-child(2):before {
	background: url("../img/academy/step-bg-02.png");
}

.solution-data:nth-child(3) {
	z-index: 1;
	color: #fff;
}

.solution-data:nth-child(3):before {
	background: url("../img/academy/step-bg-03.png");
}

.solution-data__title {
	text-align: center;
	font-size: 2.2rem;
	font-weight: 700;
}

.solution-data__text {
	font-size: 1.2rem;
	text-align: center;
}

.solution-result {
	display: grid;
	place-content: center;
	gap: 15px;
	width: 350px;
	height: 258px;
	border-radius: 20px;
	border: 8px solid #dd471d;
	text-align: center;
}

.solution-result__title {
	font-size: 2.8rem;
	font-weight: 700;
	color: #dd471d;
}

.solution-result__text {
	font-size: 2rem;
	line-height: 1.4;
}

/*==================================================
training
==================================================*/
.training {
	padding: 150px 0;
}

@media all and (max-width: 1023px) {
	.training {
		padding: 70px 0;
	}
}

@media all and (max-width: 767px) {
	.training {
		padding: 30px 0;
	}
}

.training-title {
	margin-bottom: 20px;
	text-align: center;
	font-size: 4.5rem;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.training-title {
		margin-bottom: 10px;
		font-size: 3.6rem;
	}
}

@media all and (max-width: 767px) {
	.training-title {
		font-size: 2.8rem;
	}
}

.training-lead {
	margin-bottom: 90px;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
}

@media all and (max-width: 1023px) {
	.training-lead {
		margin-bottom: 60px;
	}
}

@media all and (max-width: 767px) {
	.training-lead {
		margin-bottom: 40px;
		font-size: 1.5rem;
	}
}

.training-contents {
	display: grid;
	gap: 20px;
	margin-bottom: 200px;
}

@media all and (max-width: 1023px) {
	.training-contents {
		margin-bottom: 140px;
	}
}

@media all and (max-width: 767px) {
	.training-contents {
		margin-bottom: 200px;
		gap: 40px;
	}
}

.training-unit {
	display: grid;
	grid-template-columns: 1.5fr 3fr;
	gap: 20px;
}

@media all and (max-width: 767px) {
	.training-unit {
		grid-template-columns: 1fr;
	}
}

.training-unit__row {
	display: grid;
	grid-template-columns: 60px 1fr;
	gap: 10px;
}

@media all and (max-width: 767px) {
	.training-unit__row {
		grid-template-columns: 40px 1fr;
		gap: 20px;
		order: -1;
	}
}

.training-unit__num {
	display: grid;
	place-items: center;
	width: 60px;
	height: 60px;
	font-family: var(--font-en);
	color: #fff;
	border-radius: 50%;
	font-size: 2.6rem;
	background: #4c9c7f;
}

@media all and (max-width: 767px) {
	.training-unit__num {
		width: 40px;
		height: 40px;
		font-size: 2.4rem;
	}
}

.training-unit__title {
	margin-bottom: 15px;
	padding-top: 7px;
	font-weight: 700;
	font-size: 2.8rem;
}

@media all and (max-width: 767px) {
	.training-unit__title {
		padding-top: 0;
		font-size: 2.2rem;
	}
}

.training-unit__summary {
	margin-bottom: 20px;
	font-size: 2rem;
}

@media all and (max-width: 767px) {
	.training-unit__summary {
		font-size: 1.5rem;
	}
}

.training-unit__subtitle {
	margin-bottom: 10px;
	font-size: 2.4rem;
}

@media all and (max-width: 767px) {
	.training-unit__subtitle {
		font-size: 1.6rem;
	}
}

.training-unit__list {
	display: grid;
	gap: 5px;
}

.training-unit__item {
	padding-left: 35px;
	background: url("../img/academy/ico-check.svg") no-repeat left center/25px;
	font-size: 2.4rem;
}

@media all and (max-width: 1023px) {
	.training-unit__item {
		font-size: 1.8rem;
	}
}

@media all and (max-width: 767px) {
	.training-unit__item {
		font-size: 1.6rem;
	}
}

.training-message {
	position: relative;
	max-width: 510px;
	margin: 0 auto 120px;
	padding: 20px;
	background: rgba(21, 26, 34, 0.2);
}

@media all and (max-width: 767px) {
	.training-message {
		margin-bottom: 60px;
	}
}

.training-message__img {
	position: absolute;
	left: -100px;
	top: -110px;
	width: 180px;
}

@media all and (max-width: 767px) {
	.training-message__img {
		left: 0;
		right: 0;
		top: -150px;
		margin: auto;
	}
}

.training-message__inner {
	display: grid;
	place-content: center;
	padding: 20px 30px 30px 30px;
	box-shadow: 8px 8px 8px rgba(0, 0, 0, 0.2);
	background: #fff;
	text-align: center;
}

.training-message__title {
	margin-bottom: 20px;
	font-size: 2.8rem;
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.training-message__title {
		margin-bottom: 10px;
		font-size: 2rem;
	}
}

.training-message__text {
	margin-bottom: 20px;
	text-align: left;
}

.training-message__name {
	font-size: 1.6rem;
}

.training-tel {
	text-align: center;
}

.training-tel__text {
	margin-bottom: 20px;
	font-size: 2.6rem;
}

@media all and (max-width: 767px) {
	.training-tel__text {
		font-size: 1.8rem;
	}
}

.training-tel__link {
	display: grid;
	place-items: center;
	border-radius: 70px;
	width: 460px;
	height: 70px;
	margin-inline: auto auto;
	background: #dd471d;
	color: #fff;
	font-size: 4rem;
}

@media all and (max-width: 767px) {
	.training-tel__link {
		width: 90%;
		height: 50px;
		font-size: 2rem;
	}
}

/*==================================================
recruit
==================================================*/
.recruit-page {
	padding-block: 100px;
}

@media all and (max-width: 767px) {
	.recruit-page {
		padding-block: 50px;
	}
}

.recruit-header {
	position: relative;
	padding-bottom: 100px;
}

.recruit-header__en {
	position: absolute;
	bottom: 0;
	right: 0;
	color: #ddeee9;
	font-size: 10rem;
	line-height: 1;
	writing-mode: sideways-lr;
}

@media all and (max-width: 1023px) {
	.recruit-header__en {
		display: none;
	}
}

@media all and (max-width: 767px) {
	.recruit-header__en {
		z-index: -1;
		top: 0;
		bottom: auto;
		font-size: 8rem;
	}
}

.recruit-header__title {
	margin-bottom: 20px;
	font-size: 5.8rem;
}

@media all and (max-width: 767px) {
	.recruit-header__title {
		margin-bottom: 10px;
		font-size: 2.8rem;
	}
}

.recruit-header__catch {
	margin-bottom: 30px;
	font-family: var(--font-en);
	font-size: 4rem;
}

@media all and (max-width: 767px) {
	.recruit-header__catch {
		font-size: 2.2rem;
	}
}

.recruit-header__row {
	display: grid;
	grid-template-columns: 310px 1fr;
	gap: 40px;
}

@media all and (max-width: 767px) {
	.recruit-header__row {
		grid-template-columns: 100%;
		justify-content: center;
		gap: 20px;
	}
}

@media all and (max-width: 767px) {
	.recruit-header__row img {
		display: block;
		margin: 0 auto;
	}
}

.recruit-header__lead {
	font-size: 1.8rem;
	line-height: 1.7777777778;
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.recruit-header__lead {
		font-size: 1.5rem;
	}
}

.recruit-header__contents {
	max-width: 1000px;
	margin-inline: auto auto;
}

/*==================================================
philosofhy
==================================================*/
.philosofhy {
	padding-block: 55px;
	background: #ddeee9;
}

.philosofhy-contents {
	max-width: 1000px;
	margin-inline: auto auto;
}

.philosofhy__en {
	position: absolute;
	right: 0;
	bottom: 0px;
	color: #fff;
	font-size: 100px;
	writing-mode: sideways-lr;
	font-family: var(--font-en);
	line-height: 1;
}

@media all and (max-width: 1023px) {
	.philosofhy__en {
		display: none;
	}
}

@media all and (max-width: 767px) {
	.philosofhy__en {
		z-index: -1;
		font-size: 8rem;
	}
}

.philosofhy-header {
	display: grid;
	grid-template-columns: 180px 1fr;
	align-items: center;
	gap: 45px;
	margin-bottom: 40px;
}

@media all and (max-width: 767px) {
	.philosofhy-header {
		grid-template-columns: 1fr;
		gap: 10px;
		margin-bottom: 30px;
	}
}

.philosofhy-header__person {
	border-radius: 10px;
}

.philosofhy-header__person img {
	display: block;
	border-radius: inherit;
}

@media all and (max-width: 767px) {
	.philosofhy-header__person img {
		margin: 0 auto;
	}
}

.philosofhy-header__title {
	font-size: 4rem;
}

@media all and (max-width: 1023px) {
	.philosofhy-header__title {
		font-size: 3rem;
	}
}

@media all and (max-width: 767px) {
	.philosofhy-header__title {
		width: fit-content;
		margin: 0 auto;
		font-size: 2rem;
	}
}

.philosofhy-box {
	column-count: 2;
	column-gap: 60px;
	padding: 30px 30px;
	background: #fff;
	border-radius: 12px;
	font-size: 1.8rem;
	line-height: 1.6666666667;
}

@media all and (max-width: 1023px) {
	.philosofhy-box {
		column-gap: 30px;
	}
}

@media all and (max-width: 767px) {
	.philosofhy-box {
		padding: 15px;
		column-count: 1;
		font-size: 1.5rem;
	}
}

.philosofhy-box p {
	font-weight: 700;
}

/*==================================================
guidelines
==================================================*/
.guidelines {
	padding: 90px 0;
}

.guidelines-box {
	position: relative;
	max-width: 770px;
	margin-inline: auto auto;
	padding: 70px 100px;
	border-radius: 40px;
	border: 4px solid var(--accent-color);
}

@media all and (max-width: 767px) {
	.guidelines-box {
		padding: 30px 20px;
	}
}

.guidelines-title {
	position: absolute;
	left: 0;
	right: 0;
	top: -24px;
	width: fit-content;
	margin: auto;
	padding: 0 20px;
	background: #fff;
	font-size: 3.2rem;
	font-weight: 700;
	text-align: center;
	color: var(--accent-color);
}

@media all and (max-width: 767px) {
	.guidelines-title {
		top: -18px;
		font-size: 2.2rem;
	}
}

.guidelines-table__bg {
	display: block;
	width: fit-content;
	margin-left: auto;
	padding: 3px 5px;
	background: #ddeee9;
	border-radius: 15px;
}

.guidelines-table th,
.guidelines-table td {
	padding-bottom: 20px;
}

.guidelines-table th {
	width: 25%;
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.guidelines-table th {
		width: 35%;
		font-size: 1.3rem;
	}
}

.guidelines-table td {
	padding-left: 20px;
	font-weight: 1.5rem;
}

@media all and (max-width: 767px) {
	.guidelines-table td {
		padding: 10px;
		font-size: 1.3rem;
	}
}

.guidelines-table tr:last-child th,
.guidelines-table tr:last-child td {
	padding-bottom: 0;
}

.guidelines-table__block {
	margin-bottom: 20px;
}

/*==================================================
reason
==================================================*/
.reason-title {
	margin-bottom: 60px;
	font-size: 4rem;
	text-align: center;
}

@media all and (max-width: 767px) {
	.reason-title {
		margin-bottom: 30px;
		font-size: 2.4rem;
	}
}

.reason-title__color {
	font-family: var(--font-en);
	font-weight: 900;
	color: #4c9c7f;
}

.reason-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

@media all and (max-width: 1023px) {
	.reason-row {
		grid-template-columns: 1fr;
	}
}

@media all and (max-width: 767px) {
	.reason-row {
		grid-template-columns: 1fr;
	}
}

.reason-main {
	position: relative;
}

.reason-main__title {
	position: absolute;
	left: 40px;
	top: 70px;
	font-size: 3rem;
	color: #fff;
	width: 100%;
}

@media all and (max-width: 767px) {
	.reason-main__title {
		left: 20px;
		bottom: 20px;
		top: 0;
		font-size: 1.6rem;
	}
}

.reason-main__img {
	width: 100%;
}

.reason-unit {
	display: grid;
	grid-template-columns: 1fr 1.5fr;
	gap: 10px;
}

@media all and (max-width: 767px) {
	.reason-unit {
		grid-template-columns: 2fr 1fr;
	}
}

.reason-unit__title {
	display: grid;
	grid-template-columns: 40px 1fr;
	color: var(--primary-color);
	font-size: 2.1rem;
}

@media all and (max-width: 767px) {
	.reason-unit__title {
		align-items: center;
		grid-row: 1/2;
		grid-column: 1/2;
		font-size: 1.6rem;
	}
}

.reason-unit__img {
	width: 100%;
}

@media all and (max-width: 767px) {
	.reason-unit__img {
		grid-row: 1/2;
		grid-column: 2/3;
	}
}

@media all and (max-width: 767px) {
	.reason-unit__body {
		display: contents;
	}
}

@media all and (max-width: 767px) {
	.reason-unit__text {
		grid-column: 1/3;
	}
}

.reason-unit__num {
	font-family: var(--font-en);
	font-size: 5rem;
	color: var(--primary-color);
	font-weight: 900;
	line-height: 1.4;
}

/*==================================================
curriculum
==================================================*/
.curriculum {
	padding-top: 120px;
}

@media all and (max-width: 767px) {
	.curriculum {
		padding-top: 60px;
	}
}

.curriculum-title {
	text-align: center;
	font-size: 2.4rem;
}

@media all and (max-width: 767px) {
	.curriculum-title {
		font-size: 2rem;
	}
}

.curriculum-lead {
	margin-bottom: 40px;
	text-align: center;
	font-size: 1.2rem;
}

@media all and (max-width: 767px) {
	.curriculum-lead {
		margin-bottom: 20px;
	}
}

.curriculum-box {
	padding: 30px 35px;
	border-radius: 13px;
	border: solid 4px #ddeee9;
}

.curriculum-box--second {
	border-color: #f8d2c8;
}

.curriculum-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	max-width: 650px;
	margin-inline: auto auto;
}

@media all and (max-width: 767px) {
	.curriculum-row {
		grid-template-columns: 1fr;
	}
}

.curriculum-year {
	margin-bottom: 10px;
	color: var(--primary-color);
	text-align: center;
	font-size: 2.2rem;
}

.curriculum-year--second {
	color: var(--accent-color);
}

.curriculum-unit {
	position: relative;
	display: grid;
}

.curriculum-unit:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 17px;
	top: 0;
	display: block;
	width: 2px;
	height: 100%;
	background: #ddeee9;
}

.curriculum-unit dl {
	position: relative;
	display: grid;
	grid-template-columns: 38px 1fr;
	gap: 25px;
	/*
	&:before {
	content: '';
	display: block;
	position: absolute;
	left: 13.5px;
	bottom: -20px;
	width: 10px;
	height: 10px;
	background: #ddeee9;
	border-radius: 50%;
}*/
}

.curriculum-unit__title {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	font-size: 1rem;
	background: #ddeee9;
}

.curriculum-unit__num {
	font-family: var(--font-en);
	font-size: 1.6rem;
}

.curriculum-unit--second:before {
	background: #f8d2c8;
}

.curriculum-unit--second .curriculum-unit__title {
	background: #f8d2c8;
}

.curriculum-unit--second dl:before {
	background: #f8d2c8;
}

.curriculum-unit__blank {
	position: relative;
	padding-block: 15px;
}

.curriculum-unit__blank:after {
	content: "";
	position: absolute;
	display: block;
	left: 13px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 10px;
	background: #ddeee9;
	border-radius: 50%;
}

.curriculum-unit__blank:before {
	z-index: -1;
	left: 17px;
	top: 0;
	width: 2px;
	height: 100%;
	background: #f8d2c8;
}

.curriculum-unit__blank:first-child {
	padding-top: 0;
	padding-bottom: 20px;
}

.curriculum-unit__blank:first-child:after {
	top: 0;
	bottom: auto;
	margin: 0;
}

.curriculum-unit__blank:last-child:after {
	bottom: 0;
	top: 15px;
}

.curriculum-unit__blank:last-child {
	padding-top: 15px;
	padding-bottom: 0;
	bottom: auto;
}

.curriculum-unit--second .curriculum-unit__blank:after {
	background: #f8d2c8;
}

.curriculum-unit--second .curriculum-unit__blank:before {
	background: #f8d2c8;
}

.curriculum-unit__debut {
	padding-left: 65px;
	font-size: 1.6rem;
}

.curriculum-unit__text--center {
	display: grid;
	align-items: center;
	padding-bottom: 2px;
}

.curriculum-unit dd {
	font-size: 1.2rem;
}

/*==================================================
staff-voice
==================================================*/
.staff-voice-title {
	margin-bottom: 30px;
	font-size: 2.4rem;
	padding-top: 100px;
	text-align: center;
}

@media all and (max-width: 767px) {
	.staff-voice-title {
		padding-top: 60px;
	}
}

/*==================================================
news-page
==================================================*/
.news-page {
	padding: 150px 0 200px 0;
}

.news-page-list {
	margin-bottom: 70px;
}

@media all and (max-width: 767px) {
	.news-page-list {
		margin-bottom: 50px;
	}
}

/*==================================================
single-page
==================================================*/
.style-single {
	padding: 200px 0;
}

@media all and (max-width: 1023px) {
	.style-single {
		padding: 100px 0;
	}
}

@media all and (max-width: 767px) {
	.style-single {
		padding: 60px 0;
	}
}

.style-single-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 120px;
}

@media all and (max-width: 1023px) {
	.style-single-row {
		gap: 30px;
		margin-bottom: 80px;
	}
}

@media all and (max-width: 767px) {
	.style-single-row {
		gap: 15px;
		margin-bottom: 60px;
	}
}

.style-single-person {
	margin-inline: auto auto;
}

.style-single-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-bottom: 20px;
}

@media all and (max-width: 767px) {
	.style-single-tags {
		margin-bottom: 10px;
	}
}

.style-single-tags a {
	display: grid;
	place-items: center;
	min-width: 5em;
	padding: 3px 5px;
	border: 1px solid #231815;
	font-size: 1.4rem;
	border-radius: 6px;
}

@media all and (max-width: 1023px) {
	.style-single-tags a {
		font-size: 1.2rem;
	}
}

@media all and (max-width: 767px) {
	.style-single-tags a {
		font-size: 1.1rem;
	}
}

.style-single-title {
	margin-bottom: 30px;
	font-size: 2.6rem;
	line-height: 1.4615384615;
	font-weight: 700;
}

@media all and (max-width: 767px) {
	.style-single-title {
		font-size: 1.6rem;
	}
}

.style-single h3.wp-block-heading,
.style-single-subtitle {
	margin-bottom: 10px;
	padding: 5px 10px;
	background: linear-gradient(to right, #d6d1c9 0%, rgba(255, 255, 255, 0) 100%);
	font-size: 1.6rem;
	font-weight: 700;
}

@media all and (max-width: 767px) {

	.style-single h3.wp-block-heading,
	.style-single-subtitle {
		margin-bottom: 5px;
		font-size: 1.4rem;
	}
}

.style-single .style-single-row p,
.style-single-block {
	padding-bottom: 30px;
}

@media all and (max-width: 767px) {

	.style-single .style-single-row p,
	.style-single-block {
		padding-bottom: 20px;
	}
}

.style-single .style-single-row p p,
.style-single-block p {
	padding-left: 10px;
}

@media all and (max-width: 767px) {
	.style-single-wrapper {
		overflow: scroll;
		margin-right: -20px;
	}
}

.style-single-others {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 15px;
}

@media all and (max-width: 767px) {
	.style-single-others {
		width: 800px;
		gap: 10px;
	}
}

.style-single-others img {
	display: block;
	margin-bottom: 10px;
	border-radius: 10px;
}

@media all and (max-width: 767px) {
	.style-single-row {
		grid-template-columns: 1fr;
	}
}

@media all and (max-width: 767px) {
	.style-single-row .style-single-contents {
		display: contents;
	}
}

@media all and (max-width: 767px) {
	.style-single-row .style-single-title {
		margin-bottom: 0;
		order: -2;
	}
}

@media all and (max-width: 767px) {
	.style-single-row .style-single-tags {
		margin-bottom: 0;
		order: -3;
	}
}

@media all and (max-width: 767px) {
	.style-single-row .style-single-person {
		order: -1;
	}
}

.style-single-row .wp-block-columns {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 20px;
}

.style-single-row .wp-block-columns p {
	padding-bottom: 0;
	margin-bottom: 10px;
	font-size: 1.4rem;
}

.style-single-row .wp-block-columns h4 {
	margin-bottom: 5px;
	font-weight: 700;
}

.style-single-row .wp-block-button {
	display: grid;
	place-content: center;
	max-width: 226px;
	padding: 10px;
	border: 1px solid var(--accent-color);
	border-radius: 20px;
	color: var(--accent-color);
	font-weight: 600;
	font-size: 1.2rem;
}

@media (hover: hover) and (pointer: fine) {
	.style-single-row .wp-block-button:hover {
		opacity: 1;
		background: var(--accent-color);
		color: #fff;
	}
}

.style-single-row .wp-block-button .wp-block-button__link {
	display: inline;
	padding: 0 20px;
	background: url("../img/common/arrow-orange.svg") no-repeat right center/8px auto;
	color: var(--accent-color);
}

.style-single-row .wp-block-button:hover .wp-block-button__link {
	background-image: url("../img/common/arrow.svg");
	color: #fff;
}

/*==================================================
hair-donation
==================================================*/
.hair-donation-page {
	padding-bottom: 220px;
	padding-top: 160px;
	background: url("../img/hairdonation/mv-bg.jpg") no-repeat center top/100vw auto;
}

@media all and (max-width: 767px) {
	.hair-donation-page {
		padding-top: 120px;
		padding-bottom: 70px;
		background-size: 200vw auto;
	}
}

.hair-donation-body {
	background: url("../img/hairdonation/page-bg.svg") no-repeat center top;
}

.hair-donation-lead {
	margin-bottom: 150px;
	font-size: 5.8rem;
	line-height: 1.2068965517;
}

@media all and (max-width: 767px) {
	.hair-donation-lead {
		margin-bottom: 70px;
		font-size: 2.6rem;
	}
}

.hair-donation-header {
	margin-bottom: 180px;
}

@media all and (max-width: 767px) {
	.hair-donation-header {
		margin-bottom: 90px;
	}
}

.hair-donation-section {
	max-width: 1000px;
	margin: 0 auto 70px;
}

.hair-donation-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 70px;
}

@media all and (max-width: 767px) {
	.hair-donation-row {
		grid-template-columns: 1fr;
	}
}

.hair-donation-row__img img {
	display: block;
	margin-inline: auto auto;
}

.hair-donation-title {
	font-size: 4rem;
}

@media all and (max-width: 767px) {
	.hair-donation-title {
		font-size: 2.6rem;
	}
}

.hair-donation-subtitle {
	margin-bottom: 60px;
	font-size: 2.4rem;
}

@media all and (max-width: 767px) {
	.hair-donation-subtitle {
		font-size: 1.8rem;
	}
}

.hair-donation-text {
	display: grid;
	gap: 2em;
	font-size: 1.8rem;
}

@media all and (max-width: 767px) {
	.hair-donation-text {
		font-size: 1.5rem;
	}
}

.hair-donation-message {
	margin-bottom: 120px;
	text-align: center;
	font-size: 3.2rem;
	line-height: 1.75;
}

@media all and (max-width: 767px) {
	.hair-donation-message {
		margin-bottom: 60px;
		font-size: 2rem;
	}
}

/*==================================================
faq
==================================================*/
.faq {
	margin-bottom: 200px;
}

@media all and (max-width: 767px) {
	.faq {
		margin-bottom: 60px;
	}
}

.faq-title {
	text-align: center;
	font-size: 4rem;
}

@media all and (max-width: 767px) {
	.faq-title {
		margin-bottom: 20px;
		font-size: 2.4rem;
	}
}

.faq-data {
	max-width: 700px;
	margin-inline: auto auto;
}

.faq-data__header {
	display: grid;
	align-items: center;
	grid-template-columns: 58px 1fr;
	gap: 10px;
	font-size: 1.8rem;
	position: relative;
}

@media all and (max-width: 767px) {
	.faq-data__header {
		grid-template-columns: 42px 1fr;
		font-size: 1.5rem;
	}
}

.faq-data__title:before {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: calc(100% - 68px);
	border-bottom: 2px solid #4c9c7f;
}

@media all and (max-width: 767px) {
	.faq-data__title:before {
		width: calc(100% - 52px);
	}
}

.faq-data__body {
	display: grid;
	align-items: start;
	grid-template-columns: 58px 1fr;
	gap: 10px;
	padding: 20px 0;
	font-size: 1.8rem;
	line-height: 1.7222222222;
}

@media all and (max-width: 767px) {
	.faq-data__body {
		padding: 10px 0;
		grid-template-columns: 42px 1fr;
		font-size: 1.5rem;
	}
}

.faq-data__a,
.faq-data__q {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border-radius: 50%;
	font-family: var(--font-en);
	font-size: 2.4rem;
}

@media all and (max-width: 767px) {

	.faq-data__a,
	.faq-data__q {
		width: 42px;
		height: 42px;
		font-size: 1.8rem;
	}
}

.faq-data__a {
	color: #4c9c7f;
	border: 2px solid #4c9c7f;
}

.faq-data__q {
	color: #fff;
	background: #4c9c7f;
}

/*==================================================
single
==================================================*/
/*==================================================
single-page
==================================================*/
.single-page {
	padding: 100px 0;
}

@media all and (max-width: 1023px) {
	.single-page {
		padding: 0 0 60px 0;
	}
}

.single-header {
	margin-bottom: 70px;
}

@media all and (max-width: 767px) {
	.single-header {
		margin-bottom: 40px;
	}
}

.single-header__title {
	text-align: center;
	font-size: 3.6rem;
}

@media all and (max-width: 767px) {
	.single-header__title {
		font-size: 3.2rem;
	}
}

.single-row {
	display: grid;
	grid-template-columns: 1fr 250px;
	gap: 60px;
}

@media all and (max-width: 1023px) {
	.single-row {
		gap: 30px;
	}
}

@media all and (max-width: 767px) {
	.single-row {
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

.single-content h4,
.single-content h2,
.single-content h3 {
	font-weight: 700;
}

.single-content h5 {
	margin: 1em 0 2em 0;
	font-size: 1.6em;
}

.single-content h4 {
	margin: 1em 0 2em 0;
	font-size: 1.8rem;
}

.single-content h3 {
	margin: 1em 0 2em 0;
	font-size: 2.4rem;
}

@media all and (max-width: 767px) {
	.single-content h3 {
		margin-bottom: 1em;
		font-size: 2rem;
	}
}

.single-content h2 {
	margin: 1.5em 0 1em 0;
	font-size: 3.2rem;
}

@media all and (max-width: 767px) {
	.single-content h2 {
		font-size: 2.6rem;
	}
}

.single-content figure {
	margin: 3em auto;
}

.single-content ul,
.single-content dl,
.single-content p {
	margin-bottom: 1.5em;
}

.single-content ul {
	list-style-type: disc;
}

.single .signle-thumbnail {
	display: block;
	margin-inline: auto auto;
	margin-bottom: 30px;
}

@media all and (max-width: 767px) {
	.single .signle-thumbnail {
		margin-bottom: 20px;
	}
}

.single-side-list {
	display: grid;
	gap: 10px;
}

.single-side-title {
	margin-bottom: 30px;
	font-size: 1.8rem;
	padding-left: 15px;
	border-left: 4px solid #2b2b2b;
	font-weight: 700;
}

.single-side-unit__thumb img {
	object-fit: cover;
	aspect-ratio: 1/1;
	width: 100px;
	height: 80px;
	border-radius: 4px;
}

.single-side-unit a {
	display: grid;
	grid-template-columns: 100px 1fr;
	gap: 10px;
}

.single-side-unit__item {
	border-left: 4px solid #2b2b2b;
	padding-left: 15px;
	margin-bottom: 25px;
	font-size: 1.8rem;
}

/*JS*/
/* Slider */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-slider * {
	outline: none;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.slick-track:before,
.slick-track:after {
	display: table;
	content: "";
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}

[dir=rtl] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

.slick-dotted.slick-slider {
	margin-bottom: 30px;
}

/* Arrows */
.slick-prev,
.slick-next {
	position: absolute;
	display: block;
	height: 50px;
	width: 50px;
	line-height: 0px;
	font-size: 0px;
	cursor: pointer;
	background: transparent;
	color: transparent;
	top: 50%;
	transform: translate(0, -50%);
	padding: 0;
	border: none;
	outline: none;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
	outline: none;
	background: transparent;
	color: transparent;
}

.slick-prev {
	left: -20px;
}

.slick-next {
	right: -20px;
}

.slick-dots {
	position: absolute;
	bottom: -20px;
	list-style: none;
	display: block;
	text-align: center;
	padding: 0;
	margin: 0;
	width: 100%;
}

.slick-dots li {
	position: relative;
	display: inline-block;
	height: 20px;
	width: 20px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
}

.slick-dots li button {
	border: 0;
	background: red;
	display: block;
	height: 20px;
	width: 20px;
	outline: none;
	line-height: 0px;
	font-size: 0px;
	padding: 5px;
	border-radius: 50%;
	cursor: pointer;
}

.slick-dots li button:focus,
.slick-dots li button:hover {
	outline: none;
}

.slick-dots li.slick-active button {
	background: blue;
}

/*SASS MODULE*/