@import url("https://fonts.googleapis.com/css2?family=Raleway:wght@400;500;600&display=swap");

.hr-salon-reservation-template-active {
	background: #ffffff;
	color: #000000;
}

.hr-salon-reservation-template-active .site-body,
.hr-salon-reservation-template-active .siteContent,
.hr-salon-reservation-template-active .site-main,
.hr-salon-reservation-template-active .entry-body {
	background: transparent;
}

.hr-salon-reservation-template-active .page-header,
.hr-salon-reservation-template-active .entry-header,
.hr-salon-reservation-template-active .breadcrumb,
.hr-salon-reservation-template-active .vk_post_imgOuter {
	display: none;
}

.hr-salon-reservation-page,
.hr-salon-reservation-page * {
	box-sizing: border-box;
}

.hr-salon-reservation-page {
	background:
		radial-gradient(circle at top right, rgba(129, 105, 66, 0.08), transparent 30%),
		radial-gradient(circle at left center, rgba(34, 76, 52, 0.05), transparent 30%),
		#ffffff;
	padding-top: 82px;
	font-family: "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	color: #000000;
}

.hr-salon-reservation-page h1::before,
.hr-salon-reservation-page h1::after,
.hr-salon-reservation-page h2::before,
.hr-salon-reservation-page h2::after {
	content: none !important;
	display: none !important;
}

.hr-salon-reservation-shell {
	max-width: 1180px;
	margin: 0 auto;
	padding: 72px 24px 112px;
}

.hr-salon-reservation-hero {
	max-width: 860px;
	margin: 0 auto 54px;
	text-align: center;
}

.hr-salon-reservation-hero__eyebrow {
	margin: 0 0 12px;
	font-family: "Raleway", "Yu Gothic", sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.16em;
	color: #8a7852;
	text-transform: uppercase;
}

.hr-salon-reservation-hero h1 {
	margin: 0;
	font-size: clamp(32px, 4vw, 52px);
	font-weight: 600;
	line-height: 1.22;
	letter-spacing: 0.08em;
	color: #000000;
}

.hr-salon-reservation-hero__lead {
	margin-top: 34px;
}

.hr-salon-reservation-hero__lead p {
	margin: 0;
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.05em;
	color: #000000;
}

.hr-salon-reservation-hero__lead p + p {
	margin-top: 12px;
}

.hr-salon-reservation-calendar {
	max-width: 980px;
	margin: 0 auto;
	padding: 34px;
	border: 1px solid rgba(176, 161, 139, 0.42);
	background: rgba(255, 255, 255, 0.86);
	box-shadow: 0 24px 60px rgba(46, 38, 27, 0.08);
}

.hr-salon-reservation-calendar__widget {
	min-height: 680px;
}

.hr-salon-reservation-calendar__widget iframe {
	width: 100%;
	min-height: 680px;
	border: 0;
}

.hr-salon-reservation-actions,
.hr-salon-reservation-note__action {
	display: flex;
	justify-content: center;
	gap: 18px;
	margin-top: 30px;
}

.hr-salon-reservation-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 260px;
	min-height: 52px;
	padding: 14px 32px;
	border: 1px solid #c3b8a7;
	background: rgba(255, 255, 255, 0.96);
	color: #7b7367;
	text-decoration: none;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.08em;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.hr-salon-reservation-button--primary {
	background: #8a7852;
	border-color: #8a7852;
	color: #ffffff;
}

.hr-salon-reservation-button:hover,
.hr-salon-reservation-button:focus-visible {
	color: #000000;
	text-decoration: none;
}

.hr-salon-reservation-button--primary:hover,
.hr-salon-reservation-button--primary:focus-visible {
	background: #705f42;
	border-color: #705f42;
	color: #ffffff;
}

.hr-salon-reservation-note {
	max-width: 780px;
	margin: 56px auto 0;
	padding-top: 42px;
	border-top: 1px solid #b5b5b6;
	text-align: center;
}

.hr-salon-reservation-note p {
	margin: 0;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 0.05em;
	color: #000000;
}

.hr-salon-reservation-note p + p {
	margin-top: 8px;
}

@media (max-width: 991.98px) {
	.hr-salon-reservation-shell {
		padding: 56px 16px 88px;
	}

	.hr-salon-reservation-calendar {
		padding: 20px;
	}

}

@media (max-width: 767.98px) {
	.hr-salon-reservation-page {
		padding-top: 96px;
	}

	.hr-salon-reservation-hero {
		margin-bottom: 38px;
	}

	.hr-salon-reservation-hero h1 {
		font-size: 30px;
	}

	.hr-salon-reservation-hero__lead {
		margin-top: 26px;
		text-align: left;
	}

	.hr-salon-reservation-hero__lead p {
		font-size: 14px;
		line-height: 1.9;
	}

	.hr-salon-reservation-hero__lead-break {
		display: none;
	}

	.hr-salon-reservation-calendar {
		padding: 12px;
	}

	.hr-salon-reservation-calendar__widget,
	.hr-salon-reservation-calendar__widget iframe {
		min-height: 640px;
	}

	.hr-salon-reservation-button {
		width: 100%;
		min-width: 0;
		max-width: 340px;
		padding-right: 18px;
		padding-left: 18px;
		font-size: 14px;
	}

	.hr-salon-reservation-note {
		margin-top: 42px;
		padding-top: 34px;
		text-align: left;
	}

	.hr-salon-reservation-note__action {
		justify-content: center;
	}
}
