:root{--base: #08160f;--panel: #0c2317;--panel-2: #113224;--fairway: #1a4930;--ink: #f2eddf;--ink-soft: rgba(242, 237, 223, .72);--ink-faint: rgba(242, 237, 223, .45);--gold: #c9a961;--gold-deep: #a9894c;--line: rgba(201, 169, 97, .18);--line-soft: rgba(201, 169, 97, .09);--accent: var(--gold);--font-display-en: "Fraunces", "Zen Old Mincho", serif;--font-display-ja: "Zen Old Mincho", "Fraunces", serif;--font-body: "Zen Kaku Gothic New", "Fraunces", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body.gl-body{background:var(--base);color:var(--ink);font-family:var(--font-body);font-weight:400;line-height:1.85;letter-spacing:.015em;overflow-x:clip;-webkit-font-smoothing:antialiased}body.gl-body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.79 0 0 0 0 0.66 0 0 0 0 0.38 0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.display{font-family:var(--font-display-en);font-weight:560;line-height:1.14;letter-spacing:.005em}html[lang=ja] .display{font-family:var(--font-display-ja);font-weight:600;line-height:1.32;letter-spacing:.06em}.eyebrow{font-family:var(--font-body);font-size:.72rem;font-weight:700;letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}html[lang=ja] .eyebrow{letter-spacing:.42em;font-size:.74rem}.lead{font-size:1.06rem;color:var(--ink-soft);max-width:62ch}.gold-i{font-style:italic;color:var(--gold);font-weight:400}.wrap{width:min(1180px,calc(100% - 3rem));margin-inline:auto}.pattern-contour{position:relative}.pattern-contour:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420' viewBox='0 0 420 420' fill='none' stroke='%23c9a961' stroke-width='1'%3E%3Cpath d='M60 210c0-83 67-150 150-150s150 67 150 150-67 150-150 150S60 293 60 210z'/%3E%3Cpath d='M100 210c0-61 49-110 110-110s110 49 110 110-49 110-110 110-110-49-110-110z'/%3E%3Cpath d='M140 210c0-39 31-70 70-70s70 31 70 70-31 70-70 70-70-31-70-70z'/%3E%3Cpath d='M-40 40c40-30 90-30 130 0s90 30 130 0 90-30 130 0 90 30 130 0'/%3E%3Cpath d='M-40 390c40-30 90-30 130 0s90 30 130 0 90-30 130 0 90 30 130 0'/%3E%3C/svg%3E");background-size:420px}.pattern-contour>*{position:relative;z-index:1}.wrap-n{width:min(980px,calc(100% - 3rem));margin-inline:auto}.band{position:relative;padding:clamp(5rem,11vh,8.5rem) 0}.hairline{height:1px;background:linear-gradient(90deg,transparent,var(--line) 12%,var(--line) 88%,transparent);border:0}.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--font-body);font-weight:700;font-size:.86rem;letter-spacing:.14em;text-transform:uppercase;padding:1.02em 2.1em;border:1px solid var(--gold);color:var(--gold);background:transparent;border-radius:2px;transition:background .35s ease,color .35s ease}.btn.solid{background:var(--gold);color:#131008}.btn.line-green{border-color:#06c755;background:#06c755;color:#04140b}@media(hover:hover)and (pointer:fine){.btn:hover{background:var(--gold);color:#131008}.btn.solid:hover{background:var(--ink);border-color:var(--ink)}.btn.line-green:hover{background:#05b34c;border-color:#05b34c;color:#04140b}}html[lang=ja] .btn{letter-spacing:.22em}.stat-num{font-family:var(--font-display-en);font-weight:560;font-size:clamp(2.4rem,5vw,3.6rem);color:var(--gold);line-height:1}.stat-label{font-size:.8rem;letter-spacing:.18em;color:var(--ink-faint);text-transform:uppercase}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()){@keyframes sd-rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes sd-fade{0%{opacity:0}to{opacity:1}}@keyframes sd-scale{0%{opacity:0;transform:scale(1.07)}to{opacity:1;transform:none}}@keyframes sd-clip{0%{opacity:.35;clip-path:inset(0 100% 0 0);transform:scale(1.06)}to{opacity:1;clip-path:inset(0 0 0 0);transform:none}}@keyframes sd-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes sd-parallax{0%{transform:translateY(-9%)}to{transform:translateY(9%)}}.sd-rise{animation:sd-rise cubic-bezier(.22,.7,.2,1) both;animation-timeline:view();animation-range:entry 0% cover 20%}.sd-scale{animation:sd-scale linear both;animation-timeline:view();animation-range:entry 0% cover 38%}.sd-clip{animation:sd-clip linear both;animation-timeline:view();animation-range:entry 0% cover 44%}.sd-clipband:before{animation:sd-clip linear both;animation-timeline:view();animation-range:entry 0% cover 48%}.sd-parallaxband:before{inset:-12% 0!important;animation:sd-parallax linear both;animation-timeline:view();animation-range:cover;will-change:transform}.sd-draw{transform-origin:left center;animation:sd-draw linear both;animation-timeline:view();animation-range:entry 6% cover 30%}.sd-parallax{animation:sd-parallax linear both;animation-timeline:view();animation-range:cover;will-change:transform}.sd-stagger>*{animation:sd-rise linear both;animation-timeline:view();animation-range:entry 0% cover 34%}.sd-stagger-fade>*{animation:sd-fade linear both;animation-timeline:view();animation-range:entry 0% cover 34%}.sd-stagger>*:nth-child(2),.sd-stagger-fade>*:nth-child(2){animation-range:entry 5% cover 40%}.sd-stagger>*:nth-child(3),.sd-stagger-fade>*:nth-child(3){animation-range:entry 9% cover 44%}.sd-stagger>*:nth-child(4),.sd-stagger-fade>*:nth-child(4){animation-range:entry 13% cover 48%}.sd-stagger>*:nth-child(n+5),.sd-stagger-fade>*:nth-child(n+5){animation-range:entry 17% cover 52%}}}.gl-foot{border-top:1px solid var(--line);background:var(--panel);padding:4.5rem 0 2.2rem}.gl-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:3rem;align-items:start}.gl-foot-name{font-size:1.5rem;color:var(--ink);margin-bottom:.7rem}.gl-foot-tag{font-size:.88rem;color:var(--ink-soft);max-width:34ch}.gl-foot-nav{display:flex;flex-direction:column;gap:.55rem;font-size:.88rem;color:var(--ink-soft)}.gl-foot-cta{justify-self:end;text-align:right}.gl-foot-reply{margin-top:.8rem;font-size:.78rem;color:var(--ink-faint)}.gl-foot-legal{margin-top:3.4rem;padding-top:1.4rem;border-top:1px solid var(--line-soft);display:flex;justify-content:space-between;gap:2rem;font-size:.74rem;color:var(--ink-faint)}@media(max-width:860px){.gl-foot-grid{grid-template-columns:1fr;gap:2rem}.gl-foot-cta{justify-self:start;text-align:left}.gl-foot-legal{flex-direction:column;gap:.5rem}}@media(hover:hover)and (pointer:fine){.gl-foot-nav a:hover{color:var(--gold)}}.gl-top{position:fixed;top:0;left:0;right:0;z-index:80;background:color-mix(in srgb,var(--base) 86%,transparent);border-bottom:1px solid var(--line-soft)}.gl-topline{display:flex;align-items:center;gap:1.4rem;height:64px}.gl-brand{display:flex;flex-direction:column;line-height:1.15;margin-right:auto}.gl-brand-en{font-family:var(--font-display-en);font-weight:560;font-size:1.12rem;letter-spacing:.04em;color:var(--ink);white-space:nowrap}.gl-brand-ja{font-size:.6rem;letter-spacing:.32em;color:var(--gold)}.gl-nav{display:flex;align-items:center;gap:1.35rem}.gl-navlink{font-size:.83rem;font-weight:700;letter-spacing:.1em;color:var(--ink-soft);padding:.4em 0;border-bottom:1px solid transparent;transition:color .3s ease,border-color .3s ease}.gl-navlink.on{color:var(--gold);border-bottom-color:var(--gold)}.gl-nav-cta{font-size:.78rem;font-weight:700;letter-spacing:.1em;color:#04140b;background:#06c755;padding:.55em 1.1em;border-radius:2px;transition:filter .3s ease}@media(hover:hover)and (pointer:fine){.gl-navlink:hover{color:var(--ink)}.gl-nav-cta:hover{filter:brightness(1.08)}.gl-ico:hover{color:var(--tile);border-color:var(--tile)}.gl-loc:hover{color:var(--ink)}}.gl-right{display:flex;align-items:center;gap:1rem}.gl-social{display:inline-flex;align-items:center;gap:.45rem}.gl-ico{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--line);border-radius:3px;color:var(--tile);transition:color .3s ease,border-color .3s ease}.gl-ico svg{width:15px;height:15px}.gl-locales{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:700;letter-spacing:.08em;white-space:nowrap;flex-shrink:0}.gl-loc{color:var(--ink-faint)}.gl-loc.on{color:var(--gold)}.gl-loc-sep{color:var(--ink-faint)}.gl-navtoggle,.gl-burger{display:none}.gl-mobile-book{display:none;position:fixed;left:0;right:0;bottom:0;z-index:79;background:#06c755;color:#04140b;text-align:center;font-weight:700;font-size:.88rem;letter-spacing:.06em;padding:.95em 1em calc(.95em + env(safe-area-inset-bottom))}@media(max-width:960px){.gl-mobile-book{display:block}body.gl-body{padding-bottom:52px}.gl-topline{gap:.8rem;height:58px}.gl-brand-en{font-size:1rem}.gl-burger{display:flex;flex-direction:column;gap:5px;padding:8px;cursor:pointer;order:4}.gl-burger span{width:20px;height:1.6px;background:var(--gold);transition:transform .3s ease,opacity .3s ease}.gl-nav{position:fixed;top:58px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:color-mix(in srgb,var(--base) 97%,transparent);border-bottom:1px solid var(--line);max-height:0;overflow:hidden;transition:max-height .4s ease}.gl-nav .gl-navlink{width:100%;padding:.9em 1.6rem;border-bottom:1px solid var(--line-soft);font-size:.95rem}.gl-nav .gl-nav-cta{margin:.9em 1.6rem 1.2em}.gl-mobile-book{display:flex}.gl-navtoggle:checked~.gl-nav{max-height:70vh}.gl-navtoggle:checked~.gl-burger span:nth-child(1){transform:translateY(6.6px) rotate(45deg)}.gl-navtoggle:checked~.gl-burger span:nth-child(2){opacity:0}.gl-navtoggle:checked~.gl-burger span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}.gl-ico{width:26px;height:26px}.gl-ico svg{width:13px;height:13px}.gl-social{gap:.3rem}.gl-brand-ja{display:none}}@media(max-width:560px){.gl-topline{gap:.4rem;flex-wrap:nowrap}.gl-brand{margin-right:auto}.gl-brand-en{font-size:.9rem}.gl-ico{width:30px;height:30px;border-radius:2px;padding:6px;box-sizing:border-box}.gl-ico svg{width:15px;height:15px}.gl-ico:nth-child(2),.gl-ico:nth-child(3),.gl-ico:nth-child(4){display:none}.gl-locales{font-size:.7rem;gap:.3rem}.gl-loc{padding:.55em .35em}.gl-social{gap:.3rem}.gl-right{gap:.45rem}.gl-burger{padding:10px 8px}}
