/* Cryptn 共通フッター */

/* Snow Monkey 標準のフッターは隠す */
.l-footer {
	display: none !important;
}

.crf {
	--crf-navy: #363e54;
	--crf-pad: max(clamp(20px, 5.5%, 80px), calc((100% - 1200px) / 2));
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 48px;
	padding: 72px var(--crf-pad) 28px;
	background: var(--crf-navy);
	color: #fff;
	font-family: 'Zen Kaku Gothic New', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', sans-serif;
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.04em;
}
.crf *,
.crf *::before,
.crf *::after {
	box-sizing: border-box;
}
.crf a {
	color: inherit !important;
	text-decoration: none;
}
.crf a:hover {
	opacity: 0.8;
}
.crf__main {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 48px 64px;
}
.crf__info {
	flex: 1 1 300px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.crf__brand {
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 1;
	letter-spacing: 0.04em;
}
.crf__address {
	font-size: 13px;
	line-height: 2;
	color: #d5d8e0;
}
.crf .crf__menu {
	display: flex;
	flex-wrap: wrap;
	gap: 0 24px;
	max-width: 460px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: 'Jost', sans-serif;
	font-size: 14px;
	letter-spacing: 0.12em;
}
.crf .crf__menu li {
	margin: 0;
	padding: 0;
}
.crf .crf__menu a {
	display: flex;
	align-items: center;
	min-height: 40px;
}
.crf__contact {
	flex: 0 1 460px;
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 32px;
	border: 1px solid rgba(255, 255, 255, 0.35);
}
.crf__contact-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}
.crf__contact-en {
	font-family: 'Jost', sans-serif;
	font-size: 13px;
	letter-spacing: 0.24em;
}
.crf__contact-ja {
	font-size: 12px;
	letter-spacing: 0.1em;
	color: #d5d8e0;
}
.crf__tel {
	display: flex;
	align-items: center;
	gap: 14px;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	font-size: 38px;
	line-height: 1.2;
	letter-spacing: 0.06em;
}
.crf__hours {
	font-size: 12px;
	line-height: 1.9;
	color: #d5d8e0;
}
.crf .crf__form-btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 58px;
	padding: 0 24px;
	background: #fff;
	color: #272d3f !important;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.14em;
}
.crf__form-btn-label {
	display: flex;
	align-items: center;
	gap: 12px;
}
.crf__bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 8px 32px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	font-size: 12px;
	color: #d5d8e0;
}
.crf__zeh {
	display: flex;
	align-items: center;
	min-height: 44px;
	text-decoration: underline !important;
	text-underline-offset: 4px;
}
.crf__copy {
	font-family: 'Jost', sans-serif;
	letter-spacing: 0.1em;
}

@media (max-width: 639px) {
	.crf {
		padding-top: 56px;
		gap: 36px;
	}
	.crf__contact {
		padding: 24px 20px;
	}
	.crf__tel {
		font-size: 30px;
	}
}
