/* ページ冒頭だけに適用。静止状態を基本とし、JSが制御を用意してから再生する。 */
.partner-hero{overflow:hidden;gap:clamp(28px,4vw,70px);grid-template-columns:1fr 1fr;padding-top:55px;padding-bottom:55px}
.partner-motion{margin:0;min-width:0;position:relative;border:1px solid #34516c;background:linear-gradient(155deg,#0b2b48 0%,#071a3c 68%);border-radius:3px;box-shadow:0 24px 65px #0003;color:#fff}
.partner-motion-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 20px;border-bottom:1px solid #34516c;font-size:10px;color:#b7cfdf;letter-spacing:.04em;min-height:62px}
.partner-motion-toggle{flex-shrink:0;border:1px solid #56778d;color:#d8eff4;background:#13334e;font:10px/1.6 var(--sans);padding:7px 10px;cursor:pointer;min-height:32px}.partner-motion-toggle[hidden]{display:none}.partner-motion-toggle:hover{background:#234c65}
.partner-motion-map{position:relative;aspect-ratio:500/460;width:min(100%,440px);margin-inline:auto;isolation:isolate}.partner-motion-lines{width:100%;height:100%;position:absolute;inset:0;overflow:visible}
.motion-connections{stroke-dasharray:500;stroke-dashoffset:0}.motion-signals{display:none}
.motion-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:35%;aspect-ratio:1;border-radius:50%;border:1px solid #69ddd7;background:radial-gradient(circle,#184a60,#0b2b48 72%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 45px #4ce0d61a;z-index:2}
.motion-center>span{font-size:clamp(10px,1vw,13px);color:#c0e2e9}.motion-center strong{font:600 clamp(17px,1.85vw,26px)/1.9 var(--serif);white-space:nowrap}.motion-center small{font-size:9px;letter-spacing:.15em;color:#74d4cf;margin-top:8px}
.motion-node{position:absolute;text-align:center;transform:translate(-50%,-50%);z-index:3;width:32%;padding:11px 2px;border:1px solid #44677c;background:#0c2a45eF;border-radius:3px;box-shadow:0 8px 20px #0002}
.motion-node span{font:600 clamp(16px,1.7vw,23px)/1.5 var(--serif);color:#e8fffc}.motion-node small{display:block;color:#a4c8d5;font-size:clamp(8px,.75vw,10px);margin-top:4px;white-space:nowrap}
.motion-node--customer{left:50%;top:13.5%;--delay:0s}.motion-node--value{left:82%;top:32.6%;--delay:.4s}.motion-node--profit{left:82%;top:71.7%;--delay:.8s}.motion-node--time{left:50%;top:87.8%;--delay:1.2s}.motion-node--people{left:18%;top:71.7%;--delay:1.6s}.motion-node--technology{left:18%;top:32.6%;--delay:2s}
.partner-motion figcaption{border-top:1px solid #34516c;padding:21px 25px 24px;text-align:center}.motion-caption-label{display:block;font-size:10px;letter-spacing:.05em;color:#97c9d4}.partner-motion figcaption>strong{display:block;font:500 clamp(20px,2vw,27px)/1.7 var(--serif);margin:10px 0 15px}.motion-sequence{display:flex;align-items:center;justify-content:center;gap:18px;font-size:10px;color:#9ec6d3}.motion-sequence i{font-style:normal}.motion-sequence b{color:#5b8ba0;font-weight:400}.motion-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(prefers-reduced-motion:no-preference){.partner-motion.is-running .motion-node{animation:possibility-node 14s ease-in-out infinite;animation-delay:var(--delay)}.partner-motion.is-running .motion-connections{animation:possibility-connect 14s ease-in-out infinite}.partner-motion.is-running .motion-center{animation:possibility-center 7s ease-in-out infinite}.partner-motion.is-running .motion-orbits{transform-origin:250px 230px;animation:possibility-orbit 28s linear infinite}.partner-motion.is-running .motion-sequence i{animation:possibility-word 14s ease-in-out infinite}.partner-motion.is-running .motion-sequence i:nth-of-type(2){animation-delay:2s}.partner-motion.is-running .motion-sequence i:nth-of-type(3){animation-delay:4s}}
.partner-motion.is-paused *{animation-play-state:paused!important}
@keyframes possibility-node{0%,100%{opacity:.32;transform:translate(-50%,-50%) scale(.92)}18%,76%{opacity:1;transform:translate(-50%,-50%) scale(1)}40%{border-color:#79e5d9;box-shadow:0 0 20px #5bdcd51a}}
@keyframes possibility-connect{0%{stroke-dashoffset:500;opacity:.2}30%,80%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:.2}}
@keyframes possibility-center{0%,100%{box-shadow:0 0 24px #4ce0d612}50%{box-shadow:0 0 58px #4ce0d638}}
@keyframes possibility-orbit{to{transform:rotate(360deg)}}
@keyframes possibility-word{0%,65%,100%{color:#9ec6d3}20%,42%{color:#d3fff3}}
@media(max-width:900px){.partner-motion-top{padding:12px;font-size:9px}.motion-node small{font-size:8px}.partner-motion figcaption{padding:17px}.partner-hero{gap:25px}.motion-center strong{font-size:18px}}
@media(max-width:650px){.partner-hero{grid-template-columns:1fr;padding-top:38px;gap:35px}.partner-motion{max-width:500px;width:100%;justify-self:center}.partner-motion-top{padding:12px 15px}.motion-center strong{font-size:clamp(18px,5.5vw,25px)}.motion-node span{font-size:clamp(16px,4.6vw,22px)}.motion-node small{font-size:clamp(7px,2vw,10px)}.motion-node{padding:9px 0}.partner-motion figcaption>strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.partner-motion *{animation:none!important}.motion-node{opacity:1}.motion-connections{stroke-dashoffset:0}}
