:root {
	--g-layout-section-padding-inline: 24px;
	--g-layout-section-padding-block: 64px;
	--g-layout-max-width: 1200px;

	/* 欧文: EB Garamond / 見出し装飾: Gloock / 和文: Zen Old Mincho */
	--g-font-latin: "EB Garamond", serif;
	--g-font-gloock: "Gloock", serif;
	--g-font-mincho: "Zen Old Mincho", serif;
	--g-font-serif: var(--g-font-mincho);
}

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

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	color: var(--g-color-text);
	font-family: var(--g-font-mincho);
	font-weight: 400;
	line-height: 1.7;
	background: var(--g-color-white);
}

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

a {
	color: inherit;
}

.g-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 1000;
	padding: 0.75rem 1rem;
	background: var(--g-color-text);
	color: var(--g-color-white);
}

.g-skip-link:focus {
	left: 1rem;
	top: 1rem;
}

/* SP のみ改行 */
br.sp_br {
	display: none;
}

@media (max-width: 767px) {
	br.sp_br {
		display: inline;
	}
}

/* 固定ページ本文・お問い合わせ（CF7） */
.g-page-content {
	padding-block: var(--g-layout-section-padding-block);
}

.g-page-content__inner {
	width: 90%;
	max-width: var(--g-layout-max-width);
	margin-inline: auto;
}

.g-page-content .wpcf7,
.g-page-content .wpcf7-form {
	width: 100%;
	max-width: 100%;
}

.g-page-content .wpcf7-form input[type="text"],
.g-page-content .wpcf7-form input[type="email"],
.g-page-content .wpcf7-form input[type="tel"],
.g-page-content .wpcf7-form input[type="url"],
.g-page-content .wpcf7-form input[type="number"],
.g-page-content .wpcf7-form input[type="date"],
.g-page-content .wpcf7-form select,
.g-page-content .wpcf7-form textarea {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.g-page-content .wpcf7-form,
	.g-page-content .wpcf7-form > div,
	.g-page-content .wpcf7-form .row,
	.g-page-content .wpcf7-form .form-row,
	.g-page-content .wpcf7-form .columns,
	.g-page-content .wpcf7-form [class*="col-"] {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		gap: 0.75rem;
	}

	.g-page-content .wpcf7-form [class*="col-"],
	.g-page-content .wpcf7-form .half,
	.g-page-content .wpcf7-form .one-half,
	.g-page-content .wpcf7-form .wpcf7-form-control-wrap {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 100% !important;
		float: none !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.g-page-content .wpcf7-form label,
	.g-page-content .wpcf7-form .wpcf7-list-item-label {
		display: block;
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal;
	}

	.g-page-content .wpcf7-form input[type="submit"],
	.g-page-content .wpcf7-form button,
	.g-page-content .wpcf7-form .wpcf7-submit {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
		white-space: normal;
	}
}

.flatpickr-calendar.inline{
background: #FAFAFA;
	border-radius: 0.5rem;
	padding: 2rem 1.5rem;
}
.flatpickr-rContainer {
	font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}