*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:focus-visible{outline:3px solid var(--amber, #C57B1E);outline-offset:2px}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body, "Hiragino Kaku Gothic ProN", "Noto Sans JP", system-ui, sans-serif);background-color:var(--paper, #F3EFE7);color:var(--ink, #1B1714);line-height:1.8;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-heading, "Hiragino Kaku Gothic ProN", "Noto Sans JP", system-ui, sans-serif);font-weight:800;line-height:1.25;letter-spacing:-.01em;color:var(--ink, #1B1714)}h1{font-size:clamp(2.4rem,6vw,4rem)}h2{font-size:clamp(1.75rem,4vw,2.6rem)}h3{font-size:clamp(1.25rem,2.5vw,1.6rem)}p{color:var(--ink, #1B1714)}a{color:var(--amber-text, #8A4E11);text-decoration:underline}a:hover{color:var(--amber-deep, #A15E14)}.container{max-width:var(--max-width, 1120px);margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}.container--narrow{max-width:680px;margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}section{padding-block:clamp(3rem,6vw,5rem)}.site-header{padding-block:.875rem;border-bottom:1px solid var(--line, #DED6C7);background:var(--paper, #F3EFE7);position:sticky;top:0;z-index:10}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-header-logo{display:flex;align-items:center;gap:.5rem;font-weight:800;font-size:1rem;color:var(--ink, #1B1714);text-decoration:none;white-space:nowrap;flex-shrink:1;min-width:0}@media (max-width: 480px){.site-header-logo{font-size:.875rem}}.site-header-cta{font-size:.8125rem;font-weight:700;color:var(--paper, #F3EFE7);background:var(--ink, #1B1714);text-decoration:none;padding:.45rem 1rem;border-radius:var(--border-radius, 4px);white-space:nowrap;flex-shrink:0}.site-header-cta:hover{background:var(--dark, #201A16);color:var(--paper, #F3EFE7)}.site-footer{padding-block:1.25rem;border-top:1px solid var(--line, #DED6C7);background:var(--paper, #F3EFE7)}.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.footer-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.875rem;color:var(--ink-soft, #5A5148)}.footer-link{color:var(--ink-soft, #5A5148);font-size:.875rem;text-decoration:underline}.footer-link:hover{color:var(--ink, #1B1714)}.btn-primary{display:inline-block;padding:1rem 2.25rem;background-color:var(--ink, #1B1714);color:var(--paper, #F3EFE7);text-decoration:none;border-radius:var(--border-radius, 4px);font-weight:800;font-size:1.0625rem;line-height:1.2;cursor:pointer;border:none;transition:background-color .15s ease,outline .15s ease}.btn-primary:hover{background-color:var(--dark, #201A16);color:var(--paper, #F3EFE7);outline:2px solid var(--amber, #C57B1E);outline-offset:1px}.section-fv{background-color:var(--paper, #F3EFE7);padding-block:clamp(3rem,7vw,6rem);overflow:hidden}.fv-grid{display:grid;grid-template-columns:62fr 38fr;gap:clamp(2rem,4vw,4rem);align-items:center}@media (max-width: 720px){.fv-grid{grid-template-columns:1fr}.fv-text{order:1}.fv-visual{order:2}.fv-lead-wrap{order:3}.fv-cta-wrap{order:4}}.fv-eyebrow{display:inline-block;font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--amber-text, #8A4E11);margin-bottom:1rem}.fv-h1-wrap{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem}.fv-h1-wrap h1{line-break:strict;word-break:keep-all;overflow-wrap:break-word}.fv-higemark{margin-top:.25rem}.fv-lead{margin-top:1.25rem;font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.8;color:var(--ink-soft, #5A5148);max-width:44ch}.fv-cta-wrap{margin-top:2rem;display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.fv-trust{font-size:.8125rem;color:var(--ink-soft, #5A5148)}.fv-visual{position:relative;display:flex;align-items:center;justify-content:center}.fv-panel{background:var(--paper-tint, #EBE5D8);border-radius:16px;padding:2rem 1.5rem;display:flex;align-items:center;justify-content:center;width:100%}.fv-img{width:100%;max-width:380px;height:auto}.section-warnings{background-color:var(--paper, #F3EFE7)}.warnings-intro{text-align:center;margin-bottom:clamp(2rem,4vw,3.5rem)}.warnings-intro h2{margin-bottom:1rem}.warnings-intro-lead{color:var(--ink-soft, #5A5148);font-size:1.0625rem;max-width:50ch;margin-inline:auto}.section-higemark{display:flex;justify-content:center;margin-top:.5rem}.warning-rows{display:flex;flex-direction:column;gap:clamp(2.5rem,5vw,4rem)}.warning-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.warning-row--reverse{direction:rtl}.warning-row--reverse>*{direction:ltr}@media (max-width: 640px){.warning-row,.warning-row--reverse{grid-template-columns:1fr;direction:ltr}.warning-row--reverse>*{direction:ltr}}.warning-row-visual{display:flex;align-items:center;justify-content:center}.warning-row-visual img{width:100%;max-width:300px;height:auto}.warning-marker{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.warning-num{font-size:.75rem;font-weight:800;color:var(--amber-text, #8A4E11);letter-spacing:.06em}.warning-row-text h3{font-weight:800;margin-bottom:.75rem}.warning-row-text p{color:var(--ink-soft, #5A5148);line-height:1.8;max-width:42ch}.section-crisis{background-color:var(--dark, #201A16);color:var(--paper, #F3EFE7);padding-block:clamp(4rem,8vw,7rem)}.crisis-inner{max-width:720px;margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}.crisis-quote{font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:800;line-height:1.35;color:var(--paper, #F3EFE7);margin-bottom:1.5rem;quotes:"「" "」"}.crisis-em{color:var(--amber, #C57B1E)}.crisis-body{color:var(--paper, #F3EFE7);opacity:.85;line-height:1.8;max-width:52ch}.crisis-body+.crisis-body{margin-top:1rem}.section-cta{background-color:var(--paper-tint, #EBE5D8);padding-block:clamp(4rem,7vw,6rem)}.cta-inner{display:grid;grid-template-columns:1fr auto;gap:clamp(2rem,4vw,3rem);align-items:center;max-width:900px;margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}@media (max-width: 640px){.cta-inner{grid-template-columns:1fr}.cta-visual{order:-1;text-align:center}}.cta-text h2{margin-bottom:.875rem}.cta-sub{color:var(--ink-soft, #5A5148);font-size:1.0625rem;line-height:1.75;max-width:44ch;margin-bottom:2rem}.cta-visual img{width:200px;height:auto}.booking-placeholder{min-height:400px;margin-top:2.5rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--line, #DED6C7);border-radius:var(--border-radius, 4px);background:var(--paper, #F3EFE7);max-width:900px;margin-inline:auto;margin-top:2rem}.booking-placeholder p{color:var(--ink-soft, #5A5148);font-size:.875rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:fadeUp .55s ease both}.reveal--delay1{animation-delay:.1s}.reveal--delay2{animation-delay:.22s}.reveal--delay3{animation-delay:.34s}@media (prefers-reduced-motion: reduce){.reveal{animation:none}}.text-muted{color:var(--ink-soft, #5A5148)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}[data-theme=a]{--paper: #f8f9fb;--paper-tint: #eef1f6;--ink: #1c1e24;--ink-soft: #52576b;--amber: #2a52a0;--amber-deep: #1d3d7a;--dark: #12141a;--line: #d4d9e8;--color-bg: var(--paper);--color-section-alt: var(--paper-tint);--color-text: var(--ink);--color-text-muted: var(--ink-soft);--color-accent: var(--amber);--color-accent-hover: var(--amber-deep);--color-border: var(--line)}[data-theme=b]{--paper: #faf8f4;--paper-tint: #f2ede4;--ink: #2a231a;--ink-soft: #6b5c49;--amber: #8b3a00;--amber-deep: #6a2c00;--dark: #1a1007;--line: #ddd3c5;--color-bg: var(--paper);--color-section-alt: var(--paper-tint);--color-text: var(--ink);--color-text-muted: var(--ink-soft);--color-accent: var(--amber);--color-accent-hover: var(--amber-deep);--color-border: var(--line)}[data-theme=c]{--paper: #ffffff;--paper-tint: #f5f3ff;--ink: #1a1628;--ink-soft: #5a5470;--amber: #4f3da8;--amber-deep: #3b2d82;--dark: #0e0c1a;--line: #dcd8f0;--color-bg: var(--paper);--color-section-alt: var(--paper-tint);--color-text: var(--ink);--color-text-muted: var(--ink-soft);--color-accent: var(--amber);--color-accent-hover: var(--amber-deep);--color-border: var(--line)}
