/* v17 — white headline, prominent editable typography and shared wind motifs. */
@font-face{font-family:'Dela Gothic One';src:url('fonts/DelaGothicOne-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.hero .line-one,.hero .line-two,.hero .line-two strong,.hero .hero-term{color:#fff}
.hero .line-one{font-size:64px;line-height:77px}
.hero .headline{gap:0}
.hero .mask-two{min-height:190px;overflow:visible}
.hero .line-two{display:flex;align-items:baseline;gap:12px;font-size:58px;line-height:1.2;letter-spacing:-.03em;white-space:nowrap}
.hero .line-two .hero-image-word{font-family:'Dela Gothic One','Noto Sans JP',sans-serif;font-size:132px;font-weight:400;line-height:1.25;letter-spacing:-.02em;display:inline-block;transform:rotate(5deg);transform-origin:50% 60%;margin:8px 8px 12px;flex:none}
.hero .hero-tail{display:inline-block}
.hero .hero-term{font-size:88px;line-height:1.2;display:inline;font-weight:700}
.hero .cta{bottom:10px}
.event-flow{display:flex;gap:16px;align-items:center}
.event-step{flex:0 0 auto;width:max-content;gap:14px}
.event-step>div{width:max-content}
.event-step h3,.event-step p{white-space:nowrap}
.event-next{flex:1 1 auto;min-width:52px;width:auto;height:24px;position:relative;display:flex;align-items:center;margin:0;transform:none}
.event-next .event-dots{display:block;width:calc(100% - 7px);height:3px;background-image:radial-gradient(circle at 1.5px 1.5px,#fff 1.5px,transparent 1.7px);background-size:11px 3px;background-repeat:repeat-x;animation:white-delivery-dots 2.8s linear infinite}
.event-next svg{position:absolute;right:0;top:0;width:16px;height:24px}
@keyframes white-delivery-dots{to{background-position-x:44px}}
.section-decor{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:0;animation:shared-wind 20s ease-in-out infinite}
.intro-video,.works,.event-section,.distribution{position:relative;isolation:isolate;overflow:hidden}
.intro-video-copy,.strategy-flow,.works-heading,.works-grid,.event-intro,.event-flow,.event-works,.distribution-heading,.distribution-row,.related-services{position:relative;z-index:1}
.decor-works,.decor-distribution{animation-name:shared-wind-reverse}
.works{background:#f6f5ef}
.works::before{z-index:-1}
.event-curve{animation:shared-wind 20s ease-in-out infinite}
@keyframes shared-wind{0%,100%{translate:0 0}50%{translate:12px -8px}}
@keyframes shared-wind-reverse{0%,100%{translate:0 0}50%{translate:-10px 8px}}
body.paused .section-decor,body.paused .event-curve,body.paused .event-dots{animation-play-state:paused}
@media(max-width:1250px){.hero .line-one{font-size:clamp(40px,4.8vw,60px);line-height:1.2}.hero .line-two{font-size:clamp(34px,4vw,52px)}.hero .line-two .hero-image-word{font-size:clamp(80px,9.5vw,120px)}.hero .hero-term{font-size:clamp(54px,6.5vw,82px)}.hero .mask-two{min-height:160px}.event-flow{gap:12px}.event-step{gap:10px}.event-step-number{min-width:50px;font-size:42px}.event-step h3{font-size:18px}.event-step p{font-size:13px}}
@media(max-width:1000px){.hero .line-two .hero-image-word{font-size:clamp(70px,10vw,100px)}.hero .hero-term{font-size:clamp(50px,6.8vw,70px)}.hero .line-two{font-size:clamp(30px,4vw,42px)}.hero .mask-two{min-height:135px}.hero .cta{position:static}.event-flow{display:grid;grid-template-columns:1fr;gap:12px}.event-step{width:auto}.event-next{width:64px;margin-left:30px;transform:rotate(90deg);flex:none;justify-self:start}.event-step-number{font-size:50px;min-width:62px}}
@media(max-width:700px){.hero .line-one{font-size:clamp(26px,6.2vw,42px);line-height:1.25}.hero .line-two{display:block;white-space:normal;font-size:clamp(26px,6vw,38px);line-height:1.4}.hero .line-two .hero-image-word{font-size:clamp(80px,18vw,115px);margin:8px 10px 4px 0;line-height:1.25}.hero .hero-term{font-size:clamp(37px,8.2vw,54px);display:inline}.hero .hero-tail{display:block;white-space:nowrap}.hero .mask-two{min-height:0}.hero .cta{margin-top:22px}.section-decor{width:150%;left:-25%;opacity:.75}}
@media(prefers-reduced-motion:reduce){body:not(.motion-enabled) .section-decor,body:not(.motion-enabled) .event-curve,body:not(.motion-enabled) .event-dots{animation:none}}
