:root{--text:#16202b;--text-sub:#5b6b7c;--bg:#fbfcfe;--accent:#1e4d8c;--accent-2:#3f8f87;--grad:linear-gradient(120deg, #1e4d8c 0%, #3f8f87 100%);--line:#e3e9f1;--measure:42rem;--figure-max:60rem}*{box-sizing:border-box}html{font-size:17px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--bg);font-family:hiragino sans,hiragino kaku gothic pron,biz udpgothic,yu gothic,noto sans cjk jp,sans-serif;line-height:1.95;font-feature-settings:"palt"}::selection{background:rgba(63,143,135,.25)}a{color:var(--accent)}article a{text-decoration:none}article a:hover{text-decoration:underline}.hero{text-align:center;padding:5.5rem 1rem 0;background:radial-gradient(60rem 28rem at 50% -6rem,rgba(30,77,140,7%),transparent 70%),radial-gradient(40rem 22rem at 78% 2rem,rgba(63,143,135,6%),transparent 70%)}.hero .eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin:0 0 .9rem}.hero h1{font-size:2.5rem;font-weight:700;letter-spacing:.12em;line-height:1.3;margin:0 0 .5rem;color:var(--text)}.hero h1 .labname{display:block;font-size:1rem;font-weight:500;letter-spacing:.45em;color:var(--text-sub);margin-top:.5rem;margin-right:-.12em}.hero h1 .since{font-size:.68rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--text-sub);margin-left:1.2em;vertical-align:.1em}.hero h1::after{content:"";display:block;width:3.2rem;height:3px;border-radius:2px;background:var(--accent);margin:1.1rem auto 0}.hero .affiliation{font-size:.88rem;color:var(--text-sub);margin:.9rem 0 1.4rem}.hero .tagline{font-size:1.15rem;color:var(--text-sub);max-width:var(--measure);margin:0 auto 2.5rem}@media(max-width:700px){.hero h1{font-size:1.9rem}}.hero img{display:block;width:100%;max-width:calc(var(--measure) * .8);height:auto;margin:0 auto;filter:drop-shadow(0 10px 30px rgba(22,32,43,8%))}@media(max-width:700px){.hero{padding-top:3.5rem}.hero img{width:94%}}article{max-width:var(--measure);margin:0 auto;padding:3.5rem 1rem;text-align:justify;counter-reset:sec}article h2{font-size:1.35rem;font-weight:700;letter-spacing:.04em;text-align:left;margin:4rem 0 1.2rem;padding-left:.65rem;border-left:4px solid;border-image:var(--grad)1}article h2:first-child{margin-top:0}article p{margin:0 0 1.5rem}figure{width:min(var(--figure-max),100vw - 2rem);margin:2.8rem calc(50% - min(var(--figure-max),100vw - 2rem)/2)}figure img{display:block;width:100%;height:auto}figure.small{width:min(24rem,100vw - 2rem);margin:2.8rem auto}figure.small img{border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 18px rgba(22,32,43,7%);transition:transform .25s ease,box-shadow .25s ease}figure.small a:hover img{transform:translateY(-3px);box-shadow:0 12px 28px rgba(30,77,140,.14)}figcaption{font-size:.85rem;color:var(--text-sub);margin-top:.8rem;text-align:center}.steps-wrap{width:min(calc(var(--measure) - 2rem),100vw - 2rem);margin:2.5rem auto .5rem;counter-reset:step}.steps{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.4rem .15rem 1.2rem;-webkit-overflow-scrolling:touch}.step{flex:0 0 min(30rem,82vw);scroll-snap-align:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.4rem 1.5rem 1.5rem;counter-increment:step;box-shadow:0 1px 3px rgba(22,32,43,4%);transition:transform .25s ease,box-shadow .25s ease}.step:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(30,77,140,.1)}.step img{display:block;width:100%;height:11rem;object-fit:contain;border-radius:10px;margin:0 0 .9rem}.step h3{font-size:1.02rem;font-weight:700;letter-spacing:.03em;margin:0 0 .45rem}.step h3{display:flex;align-items:center;line-height:1.45}.step h3::before{content:counter(step);flex:none;min-width:1.5em;height:1.5em;line-height:1.5em;text-align:center;border-radius:50%;background:var(--accent);color:#fff;font-size:.8em;margin-right:.6em}.step p{font-size:.92rem;line-height:1.85;margin:0;text-align:justify}.step-refs{font-size:.78rem;color:var(--text-sub);margin:.7rem 0 0!important}.step-refs a{color:var(--accent);text-decoration:none}.step-refs a:hover{text-decoration:underline}.steps-hint{text-align:right;font-size:.78rem;letter-spacing:.08em;color:var(--text-sub);margin:0}.steps::-webkit-scrollbar{height:8px}.steps::-webkit-scrollbar-thumb{background:#cdd8e4;border-radius:4px}.steps::-webkit-scrollbar-track{background:0 0}.links{max-width:var(--measure);margin:0 auto;padding:0 1rem 4.5rem;text-align:center}.links h2{font-size:.78rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--text-sub);margin:0 0 1.1rem}.links ul{list-style:none;padding:0;margin:0;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.links a{display:inline-block;padding:.5em 1.6em;border:1.5px solid var(--accent);border-radius:999px;color:var(--accent);text-decoration:none;font-size:.95rem;letter-spacing:.04em;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.links a:hover{background:var(--accent);color:#fff;box-shadow:0 6px 18px rgba(30,77,140,.25)}.site-footer{text-align:center;font-size:.78rem;letter-spacing:.08em;color:#9fb0c2;background:#16202b;padding:2.2rem 1rem;border:none}.site-footer p{margin:0}