/* Interactive editorial surfaces. Keep all new selectors local to each experience. */
.play-lab,.dispatch-play{color:#22263e;background:#fff;padding:100px 0;font-family:Inter,'Noto Sans JP',system-ui,sans-serif}.play-lab *, .dispatch-play *{box-sizing:border-box}.play-lab h2,.dispatch-play h2{font-family:inherit;font-weight:800;color:#171545;line-height:1.5;letter-spacing:-.04em}.play-lab .section-label,.dispatch-play .section-label{color:#514766;font-size:14px}.play-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:18px 70px;align-items:end;margin-bottom:36px}.play-heading>.section-label{grid-column:1/-1;margin-bottom:0}.play-heading h2{font-size:clamp(36px,5.5vw,74px)}.play-heading em{font-style:normal;color:#6840a8}.play-heading>p:last-child{font-size:16px;line-height:2.05;max-width:360px;margin:0 0 6px}.lab-tabs{display:flex;gap:8px;margin-bottom:20px}.lab-tabs button{min-height:52px;min-width:130px;padding:12px 24px;background:white;border:1px solid #afa6bf;color:#171545;font-size:16px;font-weight:700;cursor:pointer}.lab-tabs button[aria-pressed=true]{background:#171545;color:#fff;border-color:#171545}.lab-stage{background:#f0eaf9;border:1px solid #d6c9e7;padding:30px 40px 35px;overflow:hidden;transition:background .5s}.lab-stage[data-phase=after]{background:#e6f5bd}.lab-caption{display:flex;justify-content:space-between;gap:20px;font-size:14px;color:#514766}.lab-state{font-weight:700}.lab-diagram{display:grid;grid-template-columns:1fr 70px 1.1fr 1fr;gap:20px;align-items:center;min-height:330px;padding:35px 0}.lab-inputs{display:grid;gap:14px}.lab-inputs>span{background:#fff;box-shadow:4px 5px 0 #17154512;border:1px solid #c3b4d9;padding:17px 20px;color:#171545;font-size:17px;font-weight:700;transform:rotate(-4deg);transition:transform .65s}.lab-inputs>span:nth-child(2){transform:translateX(14px) rotate(5deg)}.lab-inputs>span:nth-child(3){transform:translateX(-4px) rotate(-2deg)}.lab-stage[data-phase=after] .lab-inputs>span{transform:none}.lab-connector{display:grid;gap:18px}.lab-connector>span{height:2px;background:#897699;position:relative;transition:background .5s}.lab-connector>span:after{content:'';position:absolute;right:0;top:-4px;width:9px;height:9px;border-top:2px solid #897699;border-right:2px solid #897699;transform:rotate(45deg)}.lab-engine{min-height:195px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#171545;color:white;border-radius:100px 100px 100px 20px;padding:25px 15px;gap:12px;transition:border-radius .6s}.lab-stage[data-phase=after] .lab-engine{border-radius:20px}.engine-symbol{font-size:64px;line-height:1}.lab-engine strong{font-size:16px;line-height:1.7;color:white}.lab-output{padding:25px 22px;border:1px dashed #897699;background:#ffffff55;transform:translateY(10px);transition:transform .6s,background .6s}.lab-output>span{font-size:14px;color:#514766;display:block}.lab-output strong{font-size:18px;color:#171545;line-height:1.7;display:block;margin:12px 0 25px}.lab-output i{display:block;height:8px;margin-top:10px;background:#bcb2cd;width:85%;transition:width .65s,background .65s}.lab-output i:nth-of-type(2){width:50%}.lab-output i:nth-of-type(3){width:70%}.lab-stage[data-phase=after] .lab-output{background:white;transform:none;border-style:solid}.lab-stage[data-phase=after] .lab-output i{background:#6840a8;width:100%}.lab-stage[data-phase=after] .lab-output i:nth-of-type(2){width:80%}.lab-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #afa6bf;padding-top:25px}.lab-explanation{font-size:16px;max-width:540px;margin:0;line-height:2}.lab-switch,.demo-run{border:0;background:#171545;color:#fff;font-family:inherit;font-weight:700;font-size:16px;line-height:1.6;min-height:58px;padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;white-space:normal}.lab-switch{flex-shrink:0}.lab-switch>span,.demo-run>span{font-size:24px}.play-disclaimer{font-size:14px;line-height:1.9;color:#4d5b70;margin:18px 0 0!important;max-width:820px}.play-lab button:focus-visible,.dispatch-play button:focus-visible,.product-picker button:focus-visible{outline:3px solid #8a5c0a;outline-offset:4px}
/* A tactile catalogue with one product open at a time. */
.product-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#b9b1c7;border:1px solid #b9b1c7;margin-bottom:28px}.product-picker button{background:#fff;color:#171545;text-align:left;border:0;padding:24px 28px;font-family:inherit;cursor:pointer;min-width:0;min-height:100px}.product-picker button>span{font-size:14px;display:block;margin-bottom:8px}.product-picker strong{font-size:22px;font-weight:800;line-height:1.5}.product-picker button[aria-pressed=true]{background:#d5f58b}.product-switching [data-product-panel][hidden],.product-switching .product-pair[hidden]{display:none!important}.product-switching .product-pair{display:block;margin-top:0}.product-switching .product-small{display:grid;grid-template-columns:1fr 1fr;column-gap:8%;padding:45px;min-height:450px;margin-top:0!important}.product-switching .product-small .product-status{grid-column:1/-1}.product-switching .product-small h3{font-size:38px;align-self:end}.product-switching .product-flow{grid-column:2;grid-row:2/5;margin:0;align-self:center;padding:30px;background:#ffffff9c}.product-switching .product-small>p{grid-column:1}.product-switching .product-small-meta{min-height:0}.product-switching .product-status{flex-wrap:wrap!important;gap:8px}.product-switching .product-status>span:last-child{white-space:normal!important}.product-feature{border-radius:0 0 48px 0}.product-preview{background:#d7d0f2}.product-copy>p.product-trial-note{font-size:14px!important}.hero-cta:after{content:'タップして体験'!important}.hero-message h1{font-size:clamp(26px,3vw,42px)}.hero-wordmark{mix-blend-mode:multiply}.founder-more{margin-top:24px;border-block:1px solid #bcc4c3}.founder-more>summary{list-style:none;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-size:16px;font-weight:700;line-height:1.8;color:#171545}.founder-more>summary::-webkit-details-marker{display:none}.founder-more>summary::before,.founder-more>summary::after{content:none}.founder-more>p{font-size:16px;line-height:2.05;margin:0 0 20px!important}.founder-more[open]>summary span{transform:rotate(45deg)}
/* An honest, bounded dispatch demo; map geometry is schematic, not geographic. */
.dispatch-play{background:#f2f5fb;padding:90px 0}.demo-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.demo-heading h2{font-size:clamp(30px,3.5vw,48px)}.demo-heading>p{font-size:16px;line-height:2;margin:0;max-width:370px}.demo-heading .section-label{margin-bottom:18px}.demo-shell{display:grid;grid-template-columns:.85fr 1.45fr;border:1px solid #bbc5d3;background:white}.demo-control{padding:30px;border-right:1px solid #bbc5d3;min-width:0}.demo-step{font-size:14px;color:#514766;font-weight:700;margin:0 0 22px}.demo-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.demo-people label{position:relative;cursor:pointer;min-width:0}.demo-people input{position:absolute;left:12px;top:12px;width:18px;height:18px;margin:0;accent-color:#6840a8;z-index:1}.demo-people label>span{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #b3bbca;background:white;min-height:100px;padding:24px 5px 12px;gap:4px}.demo-people input:checked+span{background:#ece4fb;border-color:#6840a8}.demo-people input:focus-visible+span{outline:3px solid #8a5c0a;outline-offset:3px}.demo-people b{font-size:27px;line-height:1.3;color:#171545}.demo-people small{font-size:12px;color:#4d5b70;white-space:nowrap}.demo-capacity{font-size:14px;color:#4d5b70;margin:18px 0}.demo-run{width:100%;text-align:left}.demo-run:disabled{background:#e3e6ec;color:#4d5b70;cursor:default}.demo-reset{display:block;width:100%;padding:14px;background:none;border:0;min-height:48px;text-decoration:underline;color:#4d5b70;font-family:inherit;font-size:14px;cursor:pointer}.demo-status{font-size:14px;line-height:1.9;color:#4d5b70;min-height:54px;margin:10px 0 0}.demo-result{min-width:0;padding:28px}.demo-map-caption{display:flex;justify-content:space-between;gap:15px;font-size:14px;color:#4d5b70}.demo-map{display:block!important;width:100%!important;height:auto!important;aspect-ratio:5/3;margin:24px 0;stroke:none!important;fill:none;overflow:visible}.demo-map text{font-family:Inter,'Noto Sans JP',sans-serif;font-weight:800}.demo-pins circle{fill:#fff;stroke:#736b84;stroke-width:2}.demo-pins text{fill:#171545;font-size:16px}.demo-pins .pin-off{opacity:.22}.demo-route-one{stroke:#6840a8}.demo-route-two{stroke:#06677c}.demo-cars{display:grid;grid-template-columns:1fr 1fr;gap:14px}.demo-cars>div{padding:16px;background:#f0eaf9;border-left:3px solid #6840a8}.demo-cars>div+div{background:#e5f3f6;border-color:#06677c}.car-number{display:block;color:#4d5b70;font-size:14px}.demo-cars strong{display:block;margin-top:7px;color:#171545;font-size:18px;line-height:1.8;font-weight:800}.demo-service-link{display:inline-block;margin-top:24px;border-bottom:1px solid #171545;color:#171545;padding:10px 0;font-size:16px;font-weight:700;text-decoration:none;min-height:48px}.process-list{counter-reset:none}.process-list>li{border-left:3px solid #d5c6ea;padding-left:24px}.process-list>li.is-current{border-left-color:#6840a8}.process-list>li.is-current .step-num{color:#6840a8}
@media(max-width:900px){.lab-diagram{grid-template-columns:1fr 35px 1fr;gap:16px}.lab-output{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:18px 22px}.lab-output strong{margin:0}.lab-output i{display:none}.lab-bottom{align-items:stretch;flex-direction:column;gap:20px}.lab-switch{justify-content:space-between}.demo-shell{grid-template-columns:1fr 1.1fr}.demo-control{padding:22px}.demo-result{padding:20px}.demo-people{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-cars{grid-template-columns:1fr}.product-switching .product-small{padding:30px}.product-picker button{padding:18px}.product-picker strong{font-size:19px}}
@media(max-width:600px){.play-lab,.dispatch-play{padding:64px 0}.play-heading{display:block;margin-bottom:26px}.play-heading>.section-label{margin-bottom:20px}.play-heading h2{font-size:36px}.play-heading>p:last-child{margin-top:22px}.lab-tabs{gap:6px}.lab-tabs button{min-width:0;flex:1;padding:12px 5px;font-size:14px;min-height:50px}.lab-stage{padding:20px 16px 22px}.lab-caption{font-size:12px;gap:10px}.lab-diagram{grid-template-columns:1fr 20px 1fr;gap:10px;min-height:0;padding:30px 0 24px}.lab-inputs{gap:12px}.lab-inputs>span{padding:13px 10px;font-size:14px}.lab-inputs>span:nth-child(2){transform:translateX(5px) rotate(5deg)}.lab-connector{gap:14px}.lab-engine{min-height:155px;padding:20px 10px;border-radius:60px 60px 60px 14px}.engine-symbol{font-size:44px}.lab-engine strong{font-size:14px;line-height:1.8}.lab-output{grid-template-columns:1fr;gap:5px;margin-top:14px;padding:16px}.lab-output>span{font-size:12px}.lab-output strong{font-size:16px}.lab-bottom{padding-top:20px;gap:16px}.lab-explanation{font-size:16px;min-height:64px}.lab-switch{padding:14px 18px;font-size:14px}.play-disclaimer{font-size:14px;margin-top:17px!important}.demo-heading{display:block;margin-bottom:25px}.demo-heading h2{font-size:29px}.demo-heading>p{margin-top:18px}.demo-shell{grid-template-columns:1fr}.demo-control{padding:23px 18px;border-right:0;border-bottom:1px solid #bbc5d3}.demo-people{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.demo-people label>span{min-height:92px}.demo-result{padding:22px 16px}.demo-map{margin:20px 0}.demo-cars{grid-template-columns:1fr 1fr;gap:8px}.demo-cars>div{padding:13px 10px}.demo-cars strong{font-size:16px}.demo-status{min-height:0}.product-picker{margin-bottom:18px}.product-picker button{padding:16px 9px;min-height:100px}.product-picker button>span{font-size:12px;margin-bottom:7px;line-height:1.7}.product-picker strong{font-size:15px;overflow-wrap:normal}.product-switching .product-small{display:block;min-height:0;padding:27px 23px}.product-switching .product-small h3{font-size:30px}.product-switching .product-flow{margin:24px 0;padding:22px}.product-feature{border-radius:0 0 28px 0}.hero-cta{font-size:14px}.hero-message h1{font-size:28px}.founder-more>summary{font-size:16px}.process-list>li{padding-left:14px}.product-copy>.product-status{font-size:12px}.product-copy>.product-status>span:last-child{font-size:12px}}
@media(prefers-reduced-motion:reduce){.lab-stage,.lab-inputs>span,.lab-engine,.lab-output,.lab-output i,.lab-connector>span{transition:none}}
