body.page-id-19 {
	--urcfd-green: #6f9f32;
	--urcfd-green-dark: #224926;
	--urcfd-green-soft: #eef5e4;
	--urcfd-brown: #5b2d17;
	--urcfd-brown-dark: #351f15;
	--urcfd-orange: #e8812c;
	--urcfd-cream: #f5efe3;
	--urcfd-paper: #fffdf8;
	--urcfd-ink: #2d241f;
	--urcfd-muted: #6f665f;
	--urcfd-border: #d9cdbd;
	--urcfd-required: #c62828;
}

body.page-id-19 .l-main .c-wp-post {
	margin-inline: auto;
	max-width: 1040px;
	padding-inline: 24px;
	width: 100%;
}

body.page-id-19 .urcfd-contact-container {
	max-width: 1080px !important;
	width: 100%;
}

body.page-id-19 .jh-f123 {
	--jh-accent: var(--urcfd-green);
	--jh-border: var(--urcfd-border);
	--jh-muted: var(--urcfd-muted);
	background: var(--urcfd-cream);
	border: 1px solid rgba( 91, 45, 23, 0.18 );
	border-radius: 24px;
	box-shadow: 0 22px 60px rgba( 53, 31, 21, 0.12 );
	color: var(--urcfd-ink);
	font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
	max-width: 992px;
	overflow: hidden;
}

body.page-id-19 .jh-f123__brand {
	align-items: center;
	background:
		linear-gradient( 105deg, rgba( 255, 255, 255, 0.06 ), transparent 42% ),
		var(--urcfd-green-dark);
	border-bottom: 5px solid var(--urcfd-green);
	color: #fff;
	display: flex !important;
	gap: 20px;
	padding: 22px 42px 19px;
}

body.page-id-19 .jh-f123__brand span:first-child {
	font-size: 0.92rem;
	font-weight: 800;
	letter-spacing: 0.08em;
}

body.page-id-19 .jh-f123__brand span:last-child {
	display: inline-flex;
	background: rgba( 255, 255, 255, 0.14 );
	border: 1px solid rgba( 255, 255, 255, 0.22 );
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	padding: 7px 13px;
}

body.page-id-19 .jh-f123__intro {
	background:
		linear-gradient( 90deg, rgba( 111, 159, 50, 0.09 ) 1px, transparent 1px ) 0 0 / 38px 38px,
		linear-gradient( rgba( 91, 45, 23, 0.05 ) 1px, transparent 1px ) 0 0 / 38px 38px,
		var(--urcfd-paper);
	padding: 42px 48px 28px;
}

body.page-id-19 .jh-f123__intro h1 {
	color: var(--urcfd-brown);
	font-size: clamp( 1.7rem, 3.1vw, 2.45rem );
	font-weight: 800;
	letter-spacing: 0.03em;
	line-height: 1.45;
	margin-bottom: 20px;
	max-width: 24em;
	padding-left: 20px;
	position: relative;
}

body.page-id-19 .jh-f123__intro h1::before {
	background: linear-gradient( var(--urcfd-green), #9cc64b );
	border-radius: 4px;
	bottom: 0.12em;
	content: "";
	left: 0;
	position: absolute;
	top: 0.12em;
	width: 6px;
}

body.page-id-19 .jh-f123__intro p {
	color: var(--urcfd-muted);
	font-size: 1rem;
	line-height: 1.9;
	margin-left: 20px;
	max-width: 52em;
}

body.page-id-19 .jh-f123__progress {
	background: var(--urcfd-paper);
	box-sizing: border-box;
	display: grid !important;
	gap: 14px;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	margin: 0 !important;
	max-width: none;
	padding: 4px 48px 34px;
	width: 100%;
}

body.page-id-19 .jh-f123__progress li {
	align-items: center;
	background: #f4f0e9;
	border: 1px solid #e4dbcf;
	border-radius: 999px;
	color: var(--urcfd-muted);
	display: flex;
	font-size: 0.9rem;
	font-weight: 700;
	justify-content: center;
	min-height: 44px;
	padding: 9px 15px;
	text-align: center;
}

body.page-id-19 .jh-f123__progress li::before {
	content: none !important;
	display: none !important;
}

body.page-id-19 .jh-f123__progress li[aria-current="step"] {
	background: var(--urcfd-green-dark);
	border-color: var(--urcfd-green-dark);
	box-shadow: 0 8px 18px rgba( 34, 73, 38, 0.18 );
	color: #fff;
}

body.page-id-19 .jh-f123__form,
body.page-id-19 .jh-f123__completion {
	background: var(--urcfd-cream);
	padding: 34px 42px 46px;
}

body.page-id-19 .jh-f123__section {
	background: var(--urcfd-paper);
	border: 1px solid rgba( 91, 45, 23, 0.14 );
	border-radius: 18px;
	box-shadow: 0 10px 28px rgba( 53, 31, 21, 0.07 );
	margin-bottom: 22px;
	padding: 28px 30px 9px;
}

body.page-id-19 .jh-f123__section h2,
body.page-id-19 .jh-f123__confirmation h2,
body.page-id-19 .jh-f123__completion h2 {
	align-items: center;
	color: var(--urcfd-brown);
	display: flex;
	font-size: 1.28rem;
	font-weight: 800;
	gap: 10px;
	letter-spacing: 0.04em;
	margin-bottom: 22px;
}

body.page-id-19 .jh-f123__section h2::before,
body.page-id-19 .jh-f123__confirmation h2::before,
body.page-id-19 .jh-f123__completion h2::before {
	background: var(--urcfd-orange);
	border-radius: 50%;
	box-shadow: 0 0 0 5px rgba( 232, 129, 44, 0.12 );
	content: "";
	flex: 0 0 9px;
	height: 9px;
}

body.page-id-19 .jh-f123__field {
	margin-bottom: 25px;
}

body.page-id-19 .jh-f123__field > label,
body.page-id-19 .jh-f123__field legend {
	color: var(--urcfd-ink);
	font-size: 1rem;
	font-weight: 750;
	letter-spacing: 0.02em;
	line-height: 1.65;
	margin-bottom: 10px;
}

body.page-id-19 .urcfd-required {
	color: var(--urcfd-required);
	font-weight: 800;
	margin-left: 0.22em;
}

body.page-id-19 .jh-f123__choices {
	gap: 12px;
}

body.page-id-19 .jh-f123__choices label,
body.page-id-19 .jh-f123__consent label,
body.page-id-19 .jh-f123__marketing label {
	background: #fffaf2;
	border: 1px solid var(--urcfd-border);
	border-radius: 12px;
	color: #40362f;
	gap: 11px;
	line-height: 1.65;
	min-height: 56px;
	padding: 14px 15px;
	transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

body.page-id-19 .jh-f123__choices label:hover,
body.page-id-19 .jh-f123__consent label:hover,
body.page-id-19 .jh-f123__marketing label:hover {
	background: var(--urcfd-green-soft);
	border-color: #9cb77c;
	transform: translateY( -1px );
}

body.page-id-19 .jh-f123__choices label:has( input:checked ),
body.page-id-19 .jh-f123__consent label:has( input:checked ),
body.page-id-19 .jh-f123__marketing label:has( input:checked ) {
	background: var(--urcfd-green-soft);
	border-color: var(--urcfd-green);
	box-shadow: 0 0 0 3px rgba( 111, 159, 50, 0.13 );
}

body.page-id-19 .jh-f123 input[type="radio"],
body.page-id-19 .jh-f123 input[type="checkbox"] {
	accent-color: var(--urcfd-green);
	flex-basis: 21px;
	height: 21px;
	width: 21px;
}

body.page-id-19 .jh-f123 input[type="text"],
body.page-id-19 .jh-f123 input[type="email"],
body.page-id-19 .jh-f123 input[type="tel"],
body.page-id-19 .jh-f123 input[type="url"],
body.page-id-19 .jh-f123 select,
body.page-id-19 .jh-f123 textarea {
	background: #fff;
	border: 1px solid #b8aa99;
	border-radius: 10px;
	color: var(--urcfd-ink);
	min-height: 52px;
	padding: 12px 14px;
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

body.page-id-19 .jh-f123 textarea {
	min-height: 160px;
}

body.page-id-19 .jh-f123 input:focus-visible,
body.page-id-19 .jh-f123 select:focus-visible,
body.page-id-19 .jh-f123 textarea:focus-visible {
	border-color: var(--urcfd-green);
	box-shadow: 0 0 0 4px rgba( 111, 159, 50, 0.16 );
	outline: none;
}

body.page-id-19 .jh-f123__help {
	color: var(--urcfd-muted);
	font-size: 0.9rem;
}

body.page-id-19 .jh-f123__route {
	background: var(--urcfd-green-soft);
	border-left-color: var(--urcfd-green);
	border-radius: 0 12px 12px 0;
}

body.page-id-19 .jh-f123__marketing {
	border-top-color: var(--urcfd-border);
}

body.page-id-19 .jh-f123__primary,
body.page-id-19 .jh-f123__secondary {
	align-items: center;
	border-radius: 999px;
	font-weight: 800;
	letter-spacing: 0.04em;
	min-height: 54px;
	padding: 14px 28px;
	transition: box-shadow 0.18s ease, transform 0.18s ease, opacity 0.18s ease;
}

body.page-id-19 .jh-f123__primary {
	background: linear-gradient( 135deg, var(--urcfd-green), #5d8b28 );
	box-shadow: 0 9px 20px rgba( 80, 126, 35, 0.24 );
	color: #fff;
}

body.page-id-19 .jh-f123__primary:hover:not( :disabled ) {
	box-shadow: 0 12px 25px rgba( 80, 126, 35, 0.3 );
	transform: translateY( -2px );
}

body.page-id-19 .jh-f123__primary:disabled {
	cursor: not-allowed;
	opacity: 0.58;
}

body.page-id-19 .jh-f123__secondary {
	background: #e8e0d4;
	color: var(--urcfd-brown-dark);
}

body.page-id-19 .jh-f123__errors {
	background: #fff4f2;
	border: 1px solid var(--urcfd-required);
	border-radius: 12px;
	color: #8f1d1d;
	margin: 0 42px 22px;
}

body.page-id-19 .jh-f123__field-error {
	color: var(--urcfd-required);
	font-weight: 700;
}

body.page-id-19 .jh-f123__confirmation {
	background: var(--urcfd-paper);
	border: 1px solid rgba( 91, 45, 23, 0.14 );
	border-radius: 18px;
	padding: 28px 30px;
}

body.page-id-19 .jh-f123__confirmation dt {
	background: var(--urcfd-green-soft);
	color: var(--urcfd-green-dark);
}

@media ( max-width: 760px ) {
	body.page-id-19 .l-main .c-wp-post {
		padding-inline: 14px;
	}

	body.page-id-19 .jh-f123 {
		border-radius: 16px;
	}

	body.page-id-19 .jh-f123__brand {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
		padding: 18px 20px 16px;
	}

	body.page-id-19 .jh-f123__intro {
		padding: 30px 22px 22px;
	}

	body.page-id-19 .jh-f123__intro h1 {
		font-size: clamp( 1.45rem, 7vw, 1.85rem );
		padding-left: 15px;
	}

	body.page-id-19 .jh-f123__intro p {
		font-size: 0.94rem;
		margin-left: 0;
	}

	body.page-id-19 .jh-f123__progress {
		gap: 8px;
		padding: 2px 20px 26px;
	}

	body.page-id-19 .jh-f123__progress li {
		font-size: 0.78rem;
		min-height: 40px;
		padding: 8px;
	}

	body.page-id-19 .jh-f123__form,
	body.page-id-19 .jh-f123__completion {
		padding: 22px 14px 30px;
	}

	body.page-id-19 .jh-f123__section {
		border-radius: 14px;
		padding: 23px 17px 3px;
	}

	body.page-id-19 .jh-f123__section h2 {
		font-size: 1.12rem;
	}

	body.page-id-19 .jh-f123__choices {
		grid-template-columns: 1fr;
	}

	body.page-id-19 .jh-f123__choices label,
	body.page-id-19 .jh-f123__consent label,
	body.page-id-19 .jh-f123__marketing label {
		min-height: 52px;
		padding: 12px 13px;
	}

	body.page-id-19 .jh-f123__actions {
		align-items: stretch;
		flex-direction: column-reverse;
	}

	body.page-id-19 .jh-f123__errors {
		margin-left: 14px;
		margin-right: 14px;
	}
}

@media ( prefers-reduced-motion: reduce ) {
	body.page-id-19 .jh-f123 *,
	body.page-id-19 .jh-f123 *::before,
	body.page-id-19 .jh-f123 *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
