body { font-family: "Noto Sans JP", sans-serif; }
body main h1, body main h2, body main h3, body .hero-v4-lead {
  font-family: "Noto Serif JP", "Yu Mincho", serif;
  font-synthesis: none;
}
body main h1 { font-weight: 400; }
body main h2 { font-weight: 500; }
body main h3 { font-weight: 600; }
.hero-kamakura { position: absolute; left: 0; bottom: -1px; z-index: 1; width: 100%; height: clamp(65px, 9vw, 150px); pointer-events: none; }
@media (min-width: 960px) { .hero-vacan-media { width: clamp(380px, 38vw, 580px); } }
.conversion-band-inset { margin: 86px calc(50% - 50vw) 0; }
.services { background: var(--soft); }
.pricing, .contact { background: var(--white); }
.pricing .section-intro { margin-inline: auto; margin-bottom: 32px; text-align: center; }
.pricing-panel { display: flex; flex-direction: column; align-items: center; gap: 24px; max-width: 920px; margin: auto; padding: 0; border: 0; background: transparent; text-align: center; }
.pricing-panel p { margin: 0; color: var(--muted); font-size: 16px; font-weight: 400; line-height: 1.9; }
.pricing-panel .conversion-band-link { display: inline-flex; align-items: center; justify-content: center; }
.voices .section-intro > .section-intro-copy { width: fit-content; max-width: min(100%, 760px); margin: 18px auto 0; text-align: center; }
.contact-copy h2 { margin-bottom: 22px; }
.contact-copy > p:not(.eyebrow) { margin-bottom: 0; }
.contact-copy > .contact-caution { margin-top: 18px; }
@media (max-width: 700px) { .conversion-band-inset { margin-top: 64px; } .pricing-panel { align-items: stretch; } .pricing-panel .conversion-band-link { width: 100%; min-width: 0; } }
