@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=M+PLUS+Rounded+1c:wght@500;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap";
:root{--color-bg:#fffdf8;--color-surface:#fff;--color-cream:#ffedbd;--color-cream-soft:#fff5d8;--color-coral:#d8755f;--color-coral-soft:#efb5a8;--color-blue:#bde4f6;--color-blue-soft:#e6f5fc;--color-text:#30231d;--color-muted:#74635a;--color-line:#30231d2e;--color-line-soft:#30231d1a;--color-success:#2f7654;--color-error:#a64138;--ink:var(--color-text);--paper:var(--color-bg);--line:var(--color-line);--muted:var(--color-muted);--coral:var(--color-coral);--purple:var(--color-coral);--yellow:var(--color-cream);--pink:var(--color-coral-soft);--font-body:"Noto Sans JP", sans-serif;--font-rounded:"M PLUS Rounded 1c", "Noto Sans JP", sans-serif;--font-label:"DM Mono", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:clamp(1.9rem, 4vw, 3.5rem);--text-display:clamp(2.35rem, 5.6vw, 5rem);--space-1:.5rem;--space-2:.75rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--space-7:4.5rem;--space-8:7rem;--page-gutter:clamp(1.25rem, 5vw, 4.875rem);--content-width:82.5rem;--radius-sm:.625rem;--radius-md:1.125rem;--radius-lg:1.75rem;--radius-pill:var(--radius-lg);--shadow-orange:5px 5px 0 #ffd27b;--shadow-orange-hover:2px 2px 0 #ffd27b;--shadow-blue:4px 4px 0 var(--color-blue);--shadow-soft:0 12px 32px #30231d14;--transition:.18s ease}
*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-cream)}body{min-width:320px;color:var(--color-text);background:var(--color-bg);font-family:var(--font-body);font-size:var(--text-md);margin:0;line-height:1.85;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}img{max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-rounded);color:var(--color-text);line-height:1.3}h1,h2{letter-spacing:.025em}h1{font-size:var(--text-display)}h2{font-size:var(--text-xl)}:focus-visible{outline:3px solid var(--color-blue);outline-offset:4px}.skip-link{z-index:200;border-radius:var(--radius-sm);color:#fff;background:var(--color-text);min-height:2.75rem;transition:transform var(--transition);padding:.55rem 1rem;font-weight:700;position:fixed;top:.75rem;left:.75rem;transform:translateY(calc(-100% - 1rem))}.skip-link:focus-visible{transform:translateY(0)}.section-wrap{width:100%;max-width:var(--content-width);padding-inline:var(--page-gutter);margin-inline:auto}.eyebrow{margin-bottom:var(--space-3);color:var(--color-coral);font:500 var(--text-xs)/1.5 var(--font-label);letter-spacing:.1em;text-transform:uppercase}.section-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.section-heading h2{margin:0}.text-link,.button{border-radius:var(--radius-pill);color:#fff;background:var(--color-text);width:fit-content;min-height:3rem;font-size:var(--text-sm);transition:transform var(--transition), background var(--transition);border:0;justify-content:center;align-items:center;padding:.75rem 1.55rem;font-weight:700;display:inline-flex}.text-link span,.button span{margin-left:1rem;font-size:1.15em}.text-link:hover,.button:hover{background:#44342c;transform:translate(1px,1px)}.button-light{color:var(--color-text);background:var(--color-blue-soft)}.availability-note{width:fit-content;margin-top:var(--space-4);border-radius:var(--radius-sm);background:var(--color-cream-soft);font-size:var(--text-sm);padding:.6rem 1rem;font-weight:600}.internal-links{margin-top:var(--space-8);padding-block:var(--space-6);text-align:center}.internal-links>p{margin-bottom:var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}.internal-links>div{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.internal-links a{border-radius:var(--radius-pill);background:var(--color-cream-soft);font-size:var(--text-sm);transition:transform var(--transition), background var(--transition);padding:.65rem 1.1rem;font-weight:600}.internal-links a:hover{background:var(--color-cream);transform:translate(1px,1px)}body.modal-open .floating-contact{display:none}@media (max-width:700px){body{font-size:.9375rem}.section-heading{margin-bottom:var(--space-5);align-items:center}.internal-links{margin-top:var(--space-7)}}@media (max-width:520px){body:has(.floating-contact) footer{padding-bottom:calc(4.25rem + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto;animation-iteration-count:1;transition-duration:.01ms!important;animation-duration:.01ms!important}a:hover,button:hover,summary:hover{transform:none!important}}
.floating-contact-module__sFQzNa__link{right:clamp(1rem,3vw,2.5rem);bottom:calc(1.2rem + env(safe-area-inset-bottom));z-index:45;border:2px solid var(--color-text);border-radius:var(--radius-pill);background:var(--color-blue-soft);min-height:3.5rem;transition:transform var(--transition), background var(--transition);justify-content:center;align-items:center;padding:.8rem 1.7rem;font-size:.9rem;font-weight:700;display:flex;position:fixed}.floating-contact-module__sFQzNa__link:hover{background:var(--color-blue);transform:translate(1px,1px)}@media (max-width:520px){.floating-contact-module__sFQzNa__link{right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom));max-width:calc(100vw - 1.5rem);min-height:3rem;padding:.65rem 1rem;font-size:.78rem}}@media (max-width:390px){.floating-contact-module__sFQzNa__link{right:.5rem;bottom:calc(.6rem + env(safe-area-inset-bottom));white-space:nowrap;max-width:calc(100vw - 1rem);min-height:2.75rem;padding:.55rem .75rem;font-size:.7rem}}
