/* Adopted logo 3-1: two possibilities, one next step. */
:root{--brand-yellow:#f9d318;--brand-orange:#ff8800}
.adopted-logo{display:block;position:relative;overflow:hidden;width:160px;aspect-ratio:1200/410;isolation:isolate}
.adopted-logo img{position:absolute;display:block;width:128%;height:auto;max-width:none;left:-15%;top:-67.073%;mix-blend-mode:multiply}
.brand .brand-ja{margin-top:12px;font-size:8px;letter-spacing:-.45px}
.footer-brand .adopted-logo{width:205px}
.brand-story{position:relative;display:grid;grid-template-columns:.85fr 1.5fr;align-items:center;gap:30px;padding:88px 50px 78px;background:#fff;overflow:hidden;border-block:1px solid #eee}
.brand-story:before{content:'';position:absolute;left:0;top:0;width:100%;height:5px;background:linear-gradient(90deg,var(--brand-yellow) 0 50%,var(--brand-orange) 50%)}
.brand-eyebrow{font-size:10px;letter-spacing:.11em;font-weight:700;color:#76600b}
.brand-story h2{font-size:clamp(34px,4.3vw,64px);line-height:1.3;letter-spacing:-.07em;margin:27px 0 23px}
.brand-story-heading p{font-size:14px;line-height:2.1;color:#555;margin:0}
.brand-story-link{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:600;margin-top:25px}
.brand-story-link span{font-size:22px;color:#ac5300}
.brand-motion-stage{min-width:0;text-align:center}
.brand-motion-media{position:relative;aspect-ratio:16/9;background:#fff;overflow:hidden}
.brand-motion-caption{display:flex;justify-content:center;align-items:center;gap:18px;font-size:12px;color:#515151;letter-spacing:.03em}
.brand-motion-caption>span{display:flex;align-items:center;gap:8px}
.brand-motion-caption i{width:9px;height:9px;border-radius:50%;display:block}
.yellow-dot{background:var(--brand-yellow)}.orange-dot{background:var(--brand-orange)}
.brand-caption-plus{color:#999}
.brand-replay{margin-top:23px;padding:9px 12px;border:0;background:none;font-size:11px;color:#666;display:inline-flex;gap:11px;align-items:center}
.brand-replay span{font-size:18px}.brand-replay:hover{color:#171717}.brand-replay:disabled{opacity:.45;cursor:default}
.page-progress{background:linear-gradient(90deg,var(--brand-yellow),var(--brand-orange))}
.speed-field i:nth-child(2){background:var(--brand-yellow)}
.hero-ticker b:nth-child(2n){color:var(--brand-yellow)}
.button.primary{background:linear-gradient(110deg,#f9d318,#ff9b18);border-color:#f3b617;color:#181818}
.button.primary:hover{background:#ffae20;color:#181818}
.nav-contact{background:#ffd22b;color:#181818}
@media(max-width:1150px){.adopted-logo{width:136px}.brand .brand-ja{font-size:7px}.brand-story{padding:70px 34px;gap:15px;grid-template-columns:1fr 1.4fr}.brand-motion-caption{font-size:10px;gap:9px}}
@media(max-width:760px){.adopted-logo{width:132px}.sidebar .brand{margin-top:-1px}.brand-story{padding:54px 24px 46px;grid-template-columns:1fr;gap:12px}.brand-story h2{font-size:43px;margin:22px 0 18px}.brand-story-heading p{font-size:14px}.brand-motion-stage{margin:0 -10px}.brand-motion-caption{font-size:11px;gap:15px}.brand-replay{margin-top:16px}.footer-brand .adopted-logo{width:190px}.brand-story-link{margin-top:20px}}
@media(max-width:360px){.sidebar .adopted-logo{width:90px}.sidebar{padding-left:16px}.brand-motion-caption{font-size:10px;gap:10px}}

.brand-motion-svg{display:block;width:100%;height:100%;overflow:hidden}
.logo-piece{mix-blend-mode:multiply;opacity:1;transform:none}
.is-playing .logo-yellow{animation:logo-yellow-connect 8s cubic-bezier(.22,1,.36,1) infinite}
.is-playing .logo-orange{animation:logo-orange-connect 8s cubic-bezier(.22,1,.36,1) infinite}
.is-playing .logo-wordmark{animation:logo-word-connect 8s cubic-bezier(.22,1,.36,1) infinite}
@keyframes logo-yellow-connect{0%,4%{transform:translate(-430px,140px);opacity:0}10%{opacity:1}19%{transform:translate(12px,-4px);opacity:1}25%,90%{transform:none;opacity:1}98%,100%{transform:none;opacity:0}}
@keyframes logo-orange-connect{0%,7%{transform:translate(360px,-130px);opacity:0}13%{opacity:1}22%{transform:translate(-10px,4px);opacity:1}28%,90%{transform:none;opacity:1}98%,100%{transform:none;opacity:0}}
@keyframes logo-word-connect{0%,18%{transform:translate(90px,20px);opacity:0}32%,90%{transform:none;opacity:1}98%,100%{transform:none;opacity:0}}
.motion-off .logo-piece,.motion-off .logo-lockup{animation:none!important;opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.logo-piece,.logo-lockup{animation:none!important;opacity:1!important;transform:none!important}}
