:root{--blue:#1636d9;--ink:#0a2052;--yellow:#f5e833;--white:#f9f8ed;--pink:#fe7f91;--line:#b8c9ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid var(--pink);outline-offset:4px}a{color:inherit}.skip{position:absolute;z-index:20;left:10px;top:-80px;background:#fff;padding:10px}.skip:focus{top:10px}.notice{background:var(--yellow);padding:8px 15px;text-align:center;font-size:11px;line-height:1.7}.header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px clamp(20px,4vw,75px);background:var(--blue);color:#fff;border-bottom:2px solid #9bb4ff}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:22px;font-weight:900;letter-spacing:-.08em;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:var(--yellow);color:var(--blue);font-size:29px;line-height:1}.brand small{display:block;font:9px/1.2 ui-monospace,SFMono-Regular,monospace;letter-spacing:.1em;max-width:90px;white-space:normal;margin-left:4px}.header nav{display:flex;gap:clamp(12px,2vw,32px);font-size:12px;font-weight:700}.header nav a{text-decoration:none}.header nav a:hover{text-decoration:underline}.hero{position:relative;display:grid;grid-template-columns:55% 45%;min-height:min(770px,calc(100vh - 100px));background:var(--blue);color:#fff;overflow:hidden}.hero-title{padding:100px 4vw 100px max(20px,6vw);align-self:center;z-index:2}.hero-title>p{font:12px ui-monospace,SFMono-Regular,monospace;letter-spacing:.18em;margin:0 0 40px}.hero h1{font-size:clamp(61px,8vw,134px);line-height:1.14;letter-spacing:-.13em;margin:0;font-weight:900;white-space:nowrap}.hero h1 b{color:var(--yellow);font-weight:900}.hero-sub{display:grid;grid-template-columns:minmax(200px,370px) auto;gap:25px;align-items:end;margin-top:65px}.hero-sub p{font-size:14px;line-height:2;margin:0}.hero-sub a{white-space:nowrap;background:var(--yellow);color:var(--blue);text-decoration:none;font-weight:900;font-size:12px;padding:17px 16px}.hero-sub a span{margin-left:22px}.hero-art{position:relative;min-height:580px;background:repeating-linear-gradient(0deg,transparent 0 70px,#5472e2 71px 73px);border-left:1px solid #8da4f5}.hero-art:before{content:"";position:absolute;left:4%;right:4%;top:7%;bottom:11%;border:3px solid var(--yellow)}.art-cross{position:absolute;left:10%;top:-10%;font-size:clamp(200px,26vw,470px);font-weight:900;line-height:1;color:var(--yellow);opacity:.16}.art-drawer{position:absolute;left:14%;right:11%;height:24%;border:3px solid var(--yellow);background:var(--blue);display:flex;align-items:center;justify-content:space-between;padding:10px 5%;box-shadow:10px 10px 0 #0c237f;animation:slide-in .9s both}.art-drawer span{font:12px ui-monospace,SFMono-Regular,monospace;letter-spacing:.15em}.art-drawer b{font-size:clamp(90px,10vw,150px);line-height:1;color:var(--yellow)}.art-drawer.one{top:12%;transform:translateX(-6%)}.art-drawer.two{top:38%;background:var(--yellow);color:var(--blue);border-color:var(--blue);transform:translateX(7%);animation-delay:.13s}.art-drawer.two b{color:var(--blue)}.art-drawer.three{top:64%;transform:translateX(-3%);animation-delay:.26s}.art-caption{position:absolute;bottom:5%;right:5%;font:10px ui-monospace,SFMono-Regular,monospace;letter-spacing:.12em}.hero-bottom{position:absolute;bottom:0;left:0;right:0;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,75px);background:var(--yellow);color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.1em}@keyframes slide-in{from{opacity:0;translate:90px 0}to{opacity:1;translate:0 0}}.scenes,.try{padding:90px clamp(20px,5vw,100px) 115px}.section-mark{display:flex;align-items:center;justify-content:space-between;border-top:3px solid currentColor;padding-top:14px;font:11px ui-monospace,SFMono-Regular,monospace;letter-spacing:.16em}.scenes h2,.try h2{font-size:clamp(55px,8vw,120px);letter-spacing:-.12em;line-height:1.1;margin:45px 0 65px;font-weight:900}.scene-band{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.scene-band article{min-height:460px;padding:22px;background:var(--blue);color:#fff;position:relative;overflow:hidden}.scene-band article:nth-child(2){background:var(--yellow);color:var(--blue)}.scene-band article:nth-child(3){background:var(--pink);color:var(--ink)}.scene-number{font:900 100px/.9 Arial,sans-serif;letter-spacing:-.12em}.scene-icon{position:relative;height:150px;margin:35px 0;border:3px solid currentColor}.scene-icon i{position:absolute;display:block;border:3px solid currentColor}.scene-icon.entrance i:nth-child(1){width:35%;height:90%;left:30%;bottom:0;border-bottom:0;border-radius:100px 100px 0 0}.scene-icon.entrance i:nth-child(2){width:12px;height:12px;left:60%;top:58%;border-radius:50%}.scene-icon.waiting i{width:27%;height:50%;bottom:10%;border-radius:10px 10px 0 0}.scene-icon.waiting i:nth-child(1){left:7%}.scene-icon.waiting i:nth-child(2){left:36%}.scene-icon.waiting i:nth-child(3){left:65%}.scene-icon.counter i:nth-child(1){width:78%;height:30%;left:11%;bottom:13%}.scene-icon.counter i:nth-child(2){width:24%;height:24%;left:38%;top:13%;border-radius:50%}.scene-band h3{font-size:31px;letter-spacing:-.08em;margin:0 0 14px}.scene-band p{font-size:13px;line-height:1.7}.scene-note{font-size:12px;line-height:1.8;margin:20px 0 0}.try{background:#dce5ff}.try-intro{display:grid;grid-template-columns:1fr 310px;gap:30px;align-items:end}.try h2{margin-bottom:55px}.try h2 em{font-style:normal;color:var(--blue)}.try-intro p{font-size:14px;line-height:2;margin-bottom:55px}.try-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(480px,1.25fr);gap:clamp(25px,4vw,75px)}.controls fieldset{border:0;padding:0;margin:0 0 38px}.controls legend{font-size:15px;font-weight:900;border-bottom:2px solid var(--ink);padding-bottom:13px;margin-bottom:12px;width:100%}.controls button{font-family:inherit;cursor:pointer}.controls fieldset:first-child button{display:flex;align-items:center;width:100%;gap:16px;background:transparent;color:var(--blue);border:2px solid var(--blue);padding:14px 16px;margin:8px 0;text-align:left;font-size:20px;font-weight:900}.controls fieldset:first-child button span{font:900 23px Arial,sans-serif}.controls fieldset:first-child button b{margin-left:auto}.controls fieldset:first-child button[aria-pressed=true]{background:var(--blue);color:#fff;transform:translateX(8px)}.controls .focus{display:flex;gap:8px;flex-wrap:wrap}.controls .focus legend{margin-bottom:13px}.controls .focus button{padding:11px 14px;border:2px solid var(--ink);background:transparent;color:var(--ink);font-size:12px;font-weight:800}.controls .focus button[aria-pressed=true]{background:var(--yellow);border-color:var(--blue)}.reset{background:transparent;border:0;border-bottom:1px solid var(--ink);padding:10px 0;font-size:12px;color:var(--ink);font-weight:800}.drawer-stage{background:var(--white);border:3px solid var(--blue);box-shadow:16px 16px 0 var(--blue)}.stage-head{display:flex;justify-content:space-between;gap:10px;padding:15px 20px;background:var(--blue);color:#fff;font:11px ui-monospace,SFMono-Regular,monospace;letter-spacing:.1em}.stage-head b{font-size:25px;color:var(--yellow)}.stage-visual{height:285px;position:relative;overflow:hidden;background:var(--yellow);color:var(--blue);border-bottom:3px solid var(--blue);transition:background .3s}.stage-visual.place-waiting{background:var(--pink)}.stage-visual.place-counter{background:#c3e9fa}.stage-large{position:absolute;left:6%;top:-30px;font-size:250px;font-weight:900;line-height:1;letter-spacing:-.12em}.visual-line{position:absolute;display:block;border:6px solid currentColor}.visual-line.a{right:6%;top:13%;width:24%;height:70%}.visual-line.b{right:35%;top:26%;width:18%;height:48%}.visual-line.c{right:57%;top:39%;width:12%;height:22%}.place-waiting .visual-line{border-radius:50%}.place-counter .visual-line.a{border-radius:70% 70% 0 0}.visual-label{position:absolute;bottom:20px;left:6%;font:11px ui-monospace,SFMono-Regular,monospace;letter-spacing:.2em;background:var(--blue);color:#fff;padding:6px}.stage-caption{padding:25px 30px 30px}.stage-caption>span{font:10px ui-monospace,SFMono-Regular,monospace;letter-spacing:.14em}.stage-caption h3{font-size:clamp(28px,3vw,46px);letter-spacing:-.09em;margin:17px 0 12px}.stage-caption p{font-size:13px;line-height:1.8}.stage-caption dl{border-top:2px solid var(--blue);margin:20px 0 18px}.stage-caption dl div{display:grid;grid-template-columns:75px 1fr;border-bottom:1px solid #b9c8db;padding:10px 0}.stage-caption dt{font-size:11px}.stage-caption dd{margin:0;font-size:13px;font-weight:800}.stage-caption small{font-size:10px;line-height:1.7}.end{background:var(--blue);color:#fff;padding:80px clamp(20px,5vw,100px);min-height:500px}.end>div{color:var(--yellow);font-size:130px;line-height:.75;font-weight:900}.end h2{font-size:clamp(55px,8vw,120px);line-height:1.12;letter-spacing:-.11em;margin:22px 0 26px}.end p{max-width:530px;font-size:13px;line-height:1.85}.end a{display:inline-block;margin-top:20px;background:var(--yellow);color:var(--blue);padding:14px 18px;text-decoration:none;font-size:13px;font-weight:900}footer{background:var(--ink);color:#fff;padding:30px clamp(20px,5vw,100px);display:flex;justify-content:space-between;gap:20px;font-size:11px}footer a{text-decoration:none}@media(max-width:1000px){.hero{grid-template-columns:54% 46%}.hero h1{font-size:clamp(54px,7.5vw,80px)}.hero-sub{display:block}.hero-sub a{display:inline-block;margin-top:20px}.art-drawer b{font-size:100px}.try-grid{grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr)}}@media(max-width:720px){.header{flex-wrap:wrap}.header nav{font-size:11px}.hero{display:block;min-height:900px}.hero-title{padding:70px 20px 25px}.hero h1{font-size:clamp(60px,12vw,92px)}.hero-sub{margin-top:35px}.hero-sub p{max-width:500px}.hero-art{height:380px;min-height:0;border-left:0}.art-drawer{height:24%}.art-drawer b{font-size:75px}.art-cross{font-size:230px}.hero-bottom{height:50px}.scenes,.try{padding:65px 20px 80px}.scenes h2,.try h2{margin:35px 0 45px}.scene-band{grid-template-columns:1fr}.scene-band article{min-height:250px}.scene-icon{position:absolute;right:20px;top:25px;width:42%;height:120px;margin:0}.scene-number{font-size:75px}.scene-band h3{margin-top:25px}.scene-band p{max-width:270px}.try-intro{display:block}.try-intro p{max-width:500px;margin-top:-10px;margin-bottom:45px}.try-grid{display:block}.controls{margin-bottom:40px}.drawer-stage{box-shadow:9px 9px 0 var(--blue)}footer{display:block}footer a{display:block;margin-top:12px}}@media(max-width:420px){.brand{font-size:17px}.brand small{font-size:7px;max-width:68px}.brand-mark{width:30px;height:30px;font-size:24px}.header nav{font-size:10px;gap:10px}.hero{min-height:835px}.hero-title{padding-top:55px}.hero h1{font-size:clamp(52px,13vw,61px)}.hero-sub p{font-size:13px}.hero-art{height:330px}.art-drawer b{font-size:60px}.art-drawer span{font-size:8px}.section-mark{font-size:9px}.scenes h2,.try h2{font-size:53px}.scene-icon{width:38%;height:100px}.controls fieldset:first-child button{font-size:17px}.stage-visual{height:225px}.stage-large{font-size:190px}.stage-caption{padding:20px}.stage-caption h3{font-size:28px}.end>div{font-size:100px}.end h2{font-size:53px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.art-drawer{animation:none}.stage-visual{transition:none}}

@media(max-width:420px){.end h2{font-size:42px}}

/* 2026-10-30: medicine and dispensing-work edition */
:root{--blue:#59427a;--ink:#302941;--yellow:#f0dfbb;--white:#faf8f3;--pink:#cfb5cd;--line:#d6c9df}
.notice{background:#efe7d7;color:#372f40}.header{background:#49355f;border-color:#ccb8d5}.brand-mark{background:#e9d7a7;color:#49355f}
.hero{display:block;min-height:0;background:#f6f0e8;color:var(--ink);overflow:visible}
.hero-photo-wrap{position:relative;height:min(58vw,570px);min-height:370px;overflow:hidden}
.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 54%}
.photo-corner{position:absolute;right:25px;bottom:20px;color:#fff;text-shadow:0 2px 8px #261d2b;font:10px ui-monospace,monospace;letter-spacing:.12em}
.hero-editorial{display:grid;grid-template-columns:100px 1fr auto;gap:35px;align-items:end;padding:35px clamp(20px,5vw,95px) 55px;background:#f6f0e8}
.hero-index{border-top:3px solid #59427a;padding-top:12px;align-self:stretch;font:11px/1.6 ui-monospace,monospace;letter-spacing:.1em}
.hero-index span:first-child{display:block;font-size:34px;font-weight:900;line-height:1.1;margin-bottom:10px}
.hero-kicker{font-size:13px;font-weight:800;letter-spacing:.14em;margin:0 0 12px}
.hero-main h1{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(48px,5.3vw,84px);font-weight:600;line-height:1.18;letter-spacing:-.075em;white-space:normal;margin:0}
.hero-main h1 b{font-weight:600;color:#5d3c79}
.hero-main>p:last-child{font-size:13px;line-height:1.85;max-width:600px;margin:15px 0 0}
.hero-next{display:flex;align-items:center;gap:28px;white-space:nowrap;background:#59427a;color:#fff;text-decoration:none;font-size:12px;font-weight:800;padding:14px 17px;margin-bottom:5px}
.scenes{background:#fbf9f4}.scenes h2,.try h2,.end h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-weight:600;letter-spacing:-.075em}
.scene-band article:nth-child(2){background:#eadcb9;color:#302941}.scene-band article:nth-child(3){background:#d8c3d0;color:#302941}
.try{background:#eee7ee}.stage-visual{background:#eadab6}.stage-visual.place-waiting{background:#d8c3d0}.stage-visual.place-counter{background:#d5e2df}
.end{background:#49355f}.end>div{color:#eadab6}.end a{background:#eadab6;color:#302941}
@media(max-width:1000px){.hero-editorial{grid-template-columns:80px 1fr;gap:22px}.hero-next{grid-column:2;justify-self:start}.hero-main h1{font-size:clamp(48px,6.5vw,72px)}}
@media(max-width:720px){.hero-photo-wrap{height:47vh;min-height:285px;max-height:470px}.hero-photo{object-position:48% center}.hero-editorial{grid-template-columns:1fr;padding:26px 20px 36px;gap:14px}.hero-index{display:flex;gap:18px;align-items:center;padding-top:8px;line-height:1.3}.hero-index span:first-child{font-size:23px;margin:0}.hero-main h1{font-size:clamp(45px,10vw,65px)}.hero-next{grid-column:1;margin:5px 0 0}.photo-corner{font-size:8px;right:15px;bottom:12px}}
@media(max-width:420px){.hero-photo-wrap{height:310px;min-height:0}.hero-main h1{font-size:45px}.hero-main>p:last-child{font-size:12px}.hero-kicker{font-size:11px}.hero-index{font-size:9px}.hero-next{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hero-photo{animation:none;transition:none}}

/* The industry name occupies the bottom edge of the dispensing scene. */
.hero-photo-wrap{isolation:isolate}
.hero h1.hero-industry{position:absolute;z-index:2;left:0;right:0;bottom:0;margin:0;padding:10px clamp(20px,5vw,95px) 17px;background:#f6f0e8ed;color:#49355f;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(62px,7.6vw,116px);font-weight:700;line-height:1.12;letter-spacing:.12em;border-top:5px solid #49355f}
.photo-corner{top:18px;bottom:auto;z-index:2}
.hero-main h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(44px,4.6vw,72px);font-weight:600;line-height:1.18;letter-spacing:-.075em;margin:0}
.hero-main h2 b{font-weight:600;color:#5d3c79}
@media(max-width:1000px){.hero h1.hero-industry{font-size:clamp(59px,8vw,83px)}.hero-main h2{font-size:clamp(43px,6vw,62px)}}
@media(max-width:720px){.hero h1.hero-industry{padding:9px 20px 12px;font-size:clamp(47px,10vw,68px);letter-spacing:.08em;border-top-width:4px}.photo-corner{top:10px;right:12px}.hero-main h2{font-size:clamp(42px,8vw,58px)}}
@media(max-width:420px){.hero h1.hero-industry{font-size:47px}.hero-main h2{font-size:41px}}
