/* page styles: staff  (source: docs/CHIZAI_LANDSCAPE_PC/staff.html) */
.h-jp{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;line-height:1.42;letter-spacing:.02em;color:var(--ink);font-size:clamp(1.7rem,3.6vw,2.7rem)}
.hero h1{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;font-size:clamp(2.4rem,6vw,4.5rem);line-height:1.28;letter-spacing:.01em;color:#fff;text-shadow:0 2px 40px rgba(0,0,0,.25)}
.page-hero h1{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;font-size:clamp(2rem,4.6vw,3.2rem);color:#fff;line-height:1.32;margin-bottom:8px}
.jstep .jt{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:1.1rem;margin:6px 0 4px;color:#fff}
.bcard h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.2rem;color:var(--ink);font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:8px}
.issue h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.14rem;color:var(--ink);margin-bottom:12px;font-weight:700;position:relative;z-index:1;max-width:80%}
.svc h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.18rem;color:#fff;margin-bottom:12px;font-weight:700}
.note-band .nk{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;color:var(--cyan);font-size:1.12rem;white-space:nowrap}
.ind h4{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.05rem;color:var(--ink);font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:10px}
.step h4{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.05rem;color:var(--ink);font-weight:700;margin-bottom:8px}
.case .cbody h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.15rem;color:var(--ink);margin-bottom:16px;font-weight:700;line-height:1.5}
.voice h4{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1rem;color:var(--ink);margin-bottom:10px;font-weight:700;position:relative}
.reason h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.28rem;color:var(--ink);margin-bottom:14px;font-weight:700}
.mem .avatar .ini{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:1.7rem;color:#fff;position:relative;z-index:1}
.mem .name{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.5rem;color:var(--ink);font-weight:700;line-height:1.2}
.company th{width:30%;color:var(--ink);font-weight:700;background:var(--paper);font-family:"Zen Kaku Gothic New",sans-serif}
.msg .sign{margin-top:24px;font-family:"Zen Kaku Gothic New",sans-serif;color:var(--ink);font-weight:700}
.ni h3{font-size:1.12rem;color:var(--ink);font-weight:700;line-height:1.55;margin-bottom:8px;font-family:"Zen Kaku Gothic New",sans-serif}
.vid .vmeta h4{font-family:"Zen Kaku Gothic New",sans-serif;font-size:.96rem;color:var(--ink);margin-top:6px;font-weight:700;line-height:1.5}
.csel h4{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1rem;color:var(--ink);font-weight:700;margin:6px 0 4px}
.access .map .pin{font-family:"Zen Kaku Gothic New",sans-serif;color:var(--navy);font-weight:700;text-align:center}
.access .ainfo h4{font-family:"Zen Kaku Gothic New",sans-serif;color:var(--ink);font-weight:700;margin-bottom:6px}
.uc h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.16rem;color:var(--ink);font-weight:700;margin-bottom:10px}
.ip-item .k{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;color:var(--ink);font-size:1.02rem}
.si-main h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.16rem;color:var(--ink);font-weight:700;margin-bottom:4px}
.mix-chip{width:100%;max-width:300px;text-align:center;border:1px solid rgba(91,197,238,.4);border-radius:12px;padding:15px 18px;color:#fff;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:.98rem;background:rgba(255,255,255,.04)}
.mix-res{width:100%;max-width:300px;text-align:center;border:1.5px solid var(--cyan);border-radius:12px;padding:17px 22px;color:var(--ink);background:var(--cyan);font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:1.04rem;box-shadow:0 14px 34px -12px rgba(91,197,238,.5)}
.edge-card h3{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:clamp(1.4rem,2.6vw,1.95rem);line-height:1.4;color:#fff;margin-bottom:16px}
.uw .q{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;color:var(--ink);font-size:1.08rem;display:flex;align-items:center;gap:12px}
.stance-h{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;font-size:clamp(2rem,4vw,3rem);line-height:1.38;color:var(--ink);letter-spacing:.01em}
/* services: cross-pollination edge panel (premium, dark) */
.cross-panel{position:relative;overflow:hidden;margin-top:26px;border-radius:24px;padding:clamp(34px,4.5vw,54px);
  background:linear-gradient(135deg,rgba(37,80,165,.24),rgba(11,27,63,.35));
  border:1px solid rgba(91,197,238,.34);
  box-shadow:0 30px 70px -42px rgba(0,0,0,.6), inset 0 1px 40px -20px rgba(91,197,238,.3);
  display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(28px,4vw,54px);align-items:center}
.cross-panel .cp-grid{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(91,197,238,.06) 1px,transparent 1px),linear-gradient(rgba(91,197,238,.06) 1px,transparent 1px);background-size:40px 40px;opacity:.6;pointer-events:none}
.cross-panel>div{position:relative;z-index:1}
.cross-panel .eyebrow{margin-bottom:16px}
.cross-panel h3{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.42;color:#fff;margin-bottom:16px}
.cross-panel h3 .em{color:var(--cyan)}
.cross-panel p{color:rgba(255,255,255,.8);font-size:.98rem;line-height:1.95}
.cross-panel p b{color:var(--cyan);font-weight:700}
.cross-viz{display:flex;flex-direction:column;align-items:center}
.cross-viz svg{width:100%;max-width:340px;height:auto;overflow:visible}
.cross-viz .cvcap{margin-top:6px;font-family:"Zilla Slab",serif;font-size:.74rem;letter-spacing:.12em;color:var(--cyan)}
.cp-spin{transform-box:fill-box;transform-origin:center;animation:spin 90s linear infinite}
.cp-node{animation:cpPulse 3.4s ease-in-out infinite}
@keyframes cpPulse{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
@media(max-width:820px){.cross-panel{grid-template-columns:1fr;gap:30px}}
/* cross panel: Adobe Stock mesh image (duotone) */
.cross-img{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16/11;border:1px solid rgba(91,197,238,.3);box-shadow:0 22px 50px -30px rgba(0,0,0,.75);background:radial-gradient(120% 120% at 75% 20%,#16356f,#0b1b3f)}
.cross-img img{width:100%;height:100%;object-fit:cover;display:block}
.cross-img .ov{position:absolute;inset:0;background:linear-gradient(135deg,rgba(11,27,63,.55),rgba(37,80,165,.22) 55%,rgba(91,197,238,.10));mix-blend-mode:multiply}
.cross-img .ov2{position:absolute;inset:0;background:radial-gradient(120% 120% at 82% 18%,rgba(91,197,238,.20),transparent 55%);mix-blend-mode:screen;pointer-events:none}
.cross-img .ctag{position:absolute;left:16px;bottom:12px;font-family:"Zilla Slab",serif;font-weight:600;font-size:.66rem;letter-spacing:.18em;color:var(--glint);text-shadow:0 2px 10px rgba(0,0,0,.7)}
/* header dropdown */
.nl-group{position:relative;display:flex;align-items:center}
.nl-group>.nl{display:inline-flex;align-items:center;gap:5px}
.caret{font-size:.62em;opacity:.7;transition:.3s var(--ease)}
.nl-group:hover .caret{transform:translateY(2px);opacity:1}
.nl-drop{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);min-width:184px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;opacity:0;visibility:hidden;transition:.32s var(--ease);z-index:120}
.nl-drop::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.nl-group:hover .nl-drop{opacity:1;visibility:visible;transform:translateX(-50%) translateY(2px)}
.nl-drop a{display:block;padding:11px 15px;font-size:.85rem;color:var(--slate-d)!important;border-radius:9px;font-weight:600;transition:.2s;white-space:nowrap}
.nl-drop a:hover{background:var(--paper);color:var(--navy)!important}
/* staff: sub-nav tabs */
.subnav{position:sticky;top:70px;z-index:40;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.subnav .wrap{display:flex;gap:8px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.subnav a{font-size:.85rem;font-weight:700;color:var(--slate-d);padding:8px 18px;border-radius:999px;transition:.3s}
.subnav a:hover{background:var(--paper);color:var(--navy)}
/* staff: member profile */
.profile{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(30px,4.5vw,60px);padding:clamp(40px,5vw,64px) 0;border-top:1px solid var(--line)}
.profile:first-of-type{border-top:none}
.p-side{position:relative}
.p-avatar{width:150px;height:150px;border-radius:22px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:22px}
.p-avatar .ini{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:2.6rem;color:#fff;position:relative;z-index:1}
/* .p-avatar::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(91,197,238,.16) 1px,transparent 1px);background-size:100% 16px;opacity:.6} */
.p-role{font-family:"Zilla Slab",serif;font-weight:600;font-size:.72rem;letter-spacing:.12em;color:var(--cyan-d);margin-bottom:8px;text-transform:uppercase}
.p-name{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.75rem;color:var(--ink);font-weight:700;line-height:1.2}
.p-name .en{display:block;font-family:"Zilla Slab",serif;font-size:.8rem;font-weight:500;color:var(--slate);letter-spacing:.12em;margin-top:6px}
.p-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.p-tags span{font-size:.72rem;font-weight:700;color:var(--navy);background:#f3f3f3;border:1px solid var(--line);border-radius:999px;padding:5px 12px}
.p-x{display:inline-flex;align-items:center;gap:7px;margin-top:18px;font-size:.8rem;font-weight:700;color:var(--slate-d);transition:.3s}
.p-x:hover{color:var(--cyan-d)}
.p-x .xi{width:24px;height:24px;border-radius:6px;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem}
.p-bio{font-size:.96rem;color:var(--slate-d);line-height:2;margin-bottom:26px}
.p-sub{font-family:"Zilla Slab",serif;font-weight:600;font-size:.72rem;letter-spacing:.14em;color:var(--cyan-d);text-transform:uppercase;margin:22px 0 14px;display:flex;align-items:center;gap:.7em}
.p-sub::before{content:"";width:22px;height:2px;background:var(--cyan)}
.timeline{border-left:2px solid var(--line);padding-left:22px;margin-left:4px}
.tl{position:relative;padding:0 0 16px}
.tl:last-child{padding-bottom:0}
.tl::before{content:"";position:absolute;left:-27px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(91,197,238,.15)}
.tl .y{font-family:"Zilla Slab",serif;font-weight:700;font-size:.8rem;color:var(--navy)}
.tl .r{font-size:.9rem;color:var(--slate-d);line-height:1.6}
.p-works{list-style:none;display:grid;gap:9px}
.p-works li{position:relative;padding-left:18px;font-size:.88rem;color:var(--slate);line-height:1.65}
.p-works li::before{content:"▶";position:absolute;left:0;top:.15em;font-size:.6rem;color:var(--cyan-d)}
@media(max-width:820px){.profile{grid-template-columns:1fr;gap:28px}
.p-avatar{width:120px;height:120px}}
/* advisors */
.adv-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.adv{background:#fff;border:1px solid var(--line);border-radius:20px;padding:36px 34px;transition:.5s var(--ease)}
.adv:hover{box-shadow:var(--shadow-s);transform:translateY(-4px)}
.adv .a-role{font-family:"Zilla Slab",serif;font-weight:600;font-size:.72rem;letter-spacing:.12em;color:var(--cyan-d);text-transform:uppercase;margin-bottom:8px}
.adv h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.35rem;color:var(--ink);font-weight:700;line-height:1.3}
.adv h3 small{display:block;font-family:"Zen Kaku Gothic New";font-weight:500;font-size:.82rem;color:var(--slate);margin-top:6px;line-height:1.5}
.adv p{font-size:.9rem;color:var(--slate);line-height:1.85;margin-top:14px}
@media(max-width:720px){.adv-grid{grid-template-columns:1fr}}
.acts{margin-top:6px}
.acts-grp+.acts-grp{margin-top:24px}
.acts-h{font-family:"Zilla Slab",serif;font-weight:600;letter-spacing:.06em;font-size:.9rem;color:var(--navy);margin-bottom:8px;display:flex;align-items:baseline;gap:8px}
.acts-h .cnt{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.72rem;color:var(--slate)}
.acts-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.acts-list li{border-bottom:1px solid var(--line)}
.acts-list a,.acts-list .row{display:grid;grid-template-columns:66px 1fr;gap:14px;align-items:baseline;padding:9px 4px;color:inherit;text-decoration:none;transition:background .3s var(--ease)}
.acts-list a:hover{background:var(--paper-2)}
.ay{font-family:"Zilla Slab",serif;font-weight:600;font-size:.76rem;color:var(--cyan-d);white-space:nowrap;padding-top:2px}
.at{font-size:.9rem;color:var(--ink-2);line-height:1.7}
.at em{font-style:normal;color:var(--slate);font-size:.78rem;margin-left:8px}
.at .ext{color:var(--cyan-d);font-size:.72rem;margin-left:6px;opacity:.75}
.acts-list li.hidden{display:none}
.acts-more{margin-top:14px;font-family:"Zilla Slab",serif;font-weight:600;font-size:.8rem;letter-spacing:.04em;color:var(--navy);background:none;border:1px solid var(--line);border-radius:999px;padding:8px 18px;cursor:pointer;transition:all .3s var(--ease)}
.acts-more:hover{border-color:var(--cyan);color:var(--cyan-d)}
@media(max-width:520px){.acts-list a,.acts-list .row{grid-template-columns:56px 1fr;gap:10px}}
.assoc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.assoc{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 24px;transition:.5s var(--ease)}
.assoc:hover{box-shadow:var(--shadow-s);transform:translateY(-4px)}
.assoc-avatar{width:68px;height:68px;border-radius:16px;background:radial-gradient(120% 120% at 60% 20%,#16356f,var(--ink));display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:16px}
.assoc-avatar .ini{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:1.5rem;color:#fff;position:relative;z-index:1}
.assoc-avatar::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(91,197,238,.16) 1px,transparent 1px);background-size:100% 12px;opacity:.6}
.assoc .a-role{font-family:"Zilla Slab",serif;font-weight:600;font-size:.72rem;letter-spacing:.12em;color:var(--cyan-d);text-transform:uppercase;margin-bottom:6px}
.assoc h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.15rem;color:var(--ink);font-weight:700;line-height:1.3}
.assoc h3 .en{display:block;font-family:"Zilla Slab",serif;font-size:.72rem;font-weight:500;color:var(--slate);letter-spacing:.1em;margin-top:5px}
.assoc p{font-size:.84rem;color:var(--slate);line-height:1.8;margin-top:12px}
.assoc .p-tags{margin-top:14px}
.assoc .p-tags span{font-size:.66rem;padding:4px 10px}
@media(max-width:900px){.assoc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.assoc-grid{grid-template-columns:1fr}}
.group-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(28px,3.5vw,46px);display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(28px,4vw,52px);align-items:center;box-shadow:var(--shadow-s)}
.gc-mark{width:64px;height:64px;border-radius:16px;background:radial-gradient(120% 120% at 60% 20%,#16356f,var(--ink));display:flex;align-items:center;justify-content:center;color:#fff;font-family:"Zilla Slab",serif;font-weight:700;font-size:1.15rem;letter-spacing:.06em;margin-bottom:18px}
.gc-label{font-family:"Zilla Slab",serif;font-weight:600;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan-d);margin-bottom:6px}
.gc-name{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:clamp(1.4rem,2.4vw,1.9rem);color:var(--ink);line-height:1.3}
.gc-note{font-size:.9rem;color:var(--slate);line-height:1.8;margin-top:12px}
.gc-link{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-family:"Zilla Slab",serif;font-weight:600;font-size:.8rem;color:var(--navy);border-bottom:1px solid var(--line);padding-bottom:3px;text-decoration:none}
.gc-link:hover{color:var(--cyan-d);border-color:var(--cyan)}
.gc-rep{display:flex;gap:22px;align-items:flex-start;padding-left:clamp(28px,4vw,52px);border-left:1px solid var(--line)}
.gc-rep .assoc-avatar{flex:none;margin-bottom:0}
.gc-rep .p-name{font-size:1.4rem}
.gc-rep p{font-size:.9rem;color:var(--slate);line-height:1.85;margin-top:12px}
@media(max-width:820px){.group-card{grid-template-columns:1fr;gap:28px}
.gc-rep{border-left:none;padding-left:0;border-top:1px solid var(--line);padding-top:28px}}
.gc-rep .gc-media{font-size:.82rem;color:var(--slate);margin-top:12px;line-height:1.95}
.gc-rep .gc-media a{color:var(--navy);border-bottom:1px solid var(--line);text-decoration:none;white-space:nowrap}
.gc-rep .gc-media a:hover{color:var(--cyan-d);border-color:var(--cyan)}
.adv-solo{background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(30px,3.5vw,44px);display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,4vw,52px);align-items:center;box-shadow:var(--shadow-s)}
.adv-solo .adv-solo-head{border-right:1px solid var(--line);padding-right:clamp(28px,4vw,52px)}
.adv-solo h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.5rem;color:var(--ink);font-weight:700;line-height:1.3}
.adv-solo h3 small{display:block;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:500;font-size:.85rem;color:var(--slate);margin-top:8px;line-height:1.6}
.adv-solo p{font-size:.92rem;color:var(--slate);line-height:1.9}
@media(max-width:820px){.adv-solo{grid-template-columns:1fr;gap:24px}
.adv-solo .adv-solo-head{border-right:none;padding-right:0;border-bottom:1px solid var(--line);padding-bottom:24px}}
/* ================= GROUP COMPANY (restructured) ================= */
.grp{max-width:940px;margin:0 auto}
/* company intro */
.grp-lead{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:start;
 padding-bottom:34px;margin-bottom:34px;border-bottom:1px solid var(--line)}
@media(max-width:640px){.grp-lead{grid-template-columns:1fr;gap:18px}}
.grp-mark{width:74px;height:74px;border-radius:18px;flex:none;
 background:radial-gradient(120% 120% at 60% 20%,#16356f,var(--ink));
 display:flex;align-items:center;justify-content:center;color:#fff;
 font-family:"Zilla Slab",serif;font-weight:700;font-size:1.24rem;letter-spacing:.04em}
.grp-lead .gl-en{font-family:"Zilla Slab",serif;font-weight:600;font-size:.66rem;letter-spacing:.16em;
 text-transform:uppercase;color:var(--cyan-d);margin-bottom:7px}
.grp-lead .gl-nm{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:clamp(1.32rem,2.5vw,1.78rem);
 color:var(--ink);letter-spacing:.03em;line-height:1.35}
.grp-lead .gl-tx{margin-top:15px;font-size:.96rem;line-height:2.0;color:var(--ink-2)}
/* message from representative */
.grp-msg{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;
 padding:clamp(26px,3.2vw,40px);margin-bottom:34px;box-shadow:var(--shadow-s)}
.grp-msg::before{content:"\201C";position:absolute;top:14px;left:22px;font-family:"Zilla Slab",serif;
 font-size:3.4rem;line-height:1;color:var(--cyan);opacity:.5}
.grp-msg .gm-l{font-family:"Zilla Slab",serif;font-weight:600;font-size:.64rem;letter-spacing:.2em;
 text-transform:uppercase;color:var(--cyan-d);margin-bottom:14px;padding-left:44px}
.grp-msg .gm-t{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.04rem;line-height:2.05;color:var(--ink);
 font-weight:500;letter-spacing:.02em}
/* representative: photo left / bio right */
.grp-rep{display:grid;grid-template-columns:240px 1fr;gap:clamp(28px,3.5vw,48px);align-items:start}
@media(max-width:720px){.grp-rep{grid-template-columns:1fr;gap:22px}}
.grp-rep .rp-photo{position:relative}
.grp-rep .figure{position:relative;aspect-ratio:3/4;border-radius:16px;overflow:hidden;
 background:var(--paper-2);border:1px solid var(--line)}
.grp-rep .figure::before,.grp-rep .figure::after{content:"";position:absolute;width:18px;height:18px;z-index:3;pointer-events:none}
.grp-rep .figure::before{top:11px;left:11px;border-top:2px solid var(--cyan);border-left:2px solid var(--cyan)}
.grp-rep .figure::after{bottom:11px;right:11px;border-bottom:2px solid var(--cyan);border-right:2px solid var(--cyan)}
.grp-rep .figure img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.25);transition:filter .6s var(--ease)}
.grp-rep .figure:hover img{filter:none}
.grp-rep .ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:12px;text-align:center;padding:20px;background:radial-gradient(120% 120% at 50% 30%,#16356f,var(--ink));color:#9fc4ec}
.grp-rep .ph .ini{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:2.2rem;color:#fff}
.grp-rep .ph .pj{font-family:"Zilla Slab",serif;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan)}
@media(max-width:720px){.grp-rep .rp-photo{max-width:240px}}
.grp-rep .rp-role{font-family:"Zilla Slab",serif;font-weight:600;font-size:.68rem;letter-spacing:.12em;
 text-transform:uppercase;color:var(--cyan-d)}
.grp-rep .rp-name{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:1.44rem;color:var(--ink);
 letter-spacing:.04em;margin:8px 0 4px;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.grp-rep .rp-name .en{font-family:"Zilla Slab",serif;font-weight:500;font-size:.86rem;letter-spacing:.08em;color:var(--slate)}
.grp-rep .rp-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}
.grp-rep .rp-tags span{font-family:"Zilla Slab",serif;font-weight:600;font-size:.7rem;color:var(--navy);
 background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 13px}
.grp-rep .rp-bio{font-size:.92rem;line-height:2.0;color:var(--ink-2)}
.grp-links{margin-top:18px;list-style:none;padding:0;border-top:1px solid var(--line)}
.grp-links li{border-bottom:1px solid var(--line)}
.grp-links a{display:flex;gap:12px;align-items:baseline;padding:10px 2px;text-decoration:none;color:var(--ink-2);font-size:.88rem;transition:background .3s var(--ease)}
.grp-links a:hover{background:var(--paper-2)}
.grp-links .ay{font-family:"Zilla Slab",serif;font-weight:600;font-size:.74rem;color:var(--cyan-d);white-space:nowrap}
.grp-links .ext{color:var(--cyan-d);font-size:.74rem}
.cp-h{color:var(--navy);font-weight:900}
.p-avatar{width:100%!important;height:auto!important;aspect-ratio:1/1;max-width:none!important;border-radius:12px}
.profile:first-of-type{border-top:0!important;padding-top:0!important}
.profile{border-top:0!important}
.sec-head{border-bottom:0}
.p-sub{margin:46px 0 18px}
.acts-grp+.acts-grp{margin-top:46px}
.grp{max-width:none!important;margin:0!important}
.grp-lead{border-bottom:0!important;padding-bottom:0!important;margin-bottom:72px!important}
.grp-msg{margin-bottom:72px!important}
.grp-rep{grid-template-columns:.82fr 1.18fr!important;gap:clamp(30px,4.5vw,60px)!important;align-items:start}
@media(max-width:820px){.grp-rep{grid-template-columns:1fr!important;gap:22px!important}}
.grp-rep .rp-photo{max-width:none!important}
.grp-rep .figure{aspect-ratio:1/1!important;background:radial-gradient(120% 120% at 60% 20%,#16356f,var(--ink))!important;border:0!important;border-radius:12px!important}
.grp-rep .figure::before,.grp-rep .figure::after{display:none!important;content:none!important}
.grp-rep .ph{background:none!important}
.grp-rep .rp-name{font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.75rem!important;color:var(--ink);font-weight:700;line-height:1.2;letter-spacing:0;display:block!important;gap:0;margin:8px 0 4px}
.grp-rep .rp-name .en,.grp-rep .rp-name .jp{display:block}
.grp-rep .rp-name .en{font-family:"Zilla Slab",serif;font-size:.8rem;font-weight:500;color:var(--slate);letter-spacing:.12em;margin-top:6px}
.grp-rep .rp-name .jp{font-size:1em;font-weight:700}
#advisors .timeline .tl.only-r{padding-left:0}
#advisors .timeline .tl.only-r .y{display:none}
#advisors .timeline .tl{padding:12px 0 22px}
#advisors .p-tags span{border:1px solid rgba(43,111,196,.5);color:var(--navy);background:#fff;border-radius:999px;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:500;font-size:.85rem;letter-spacing:.02em;padding:8px 16px}
#advisors .p-tags{gap:10px}
#advisors .p-role{color:var(--cyan-d);font-family:"Zilla Slab",serif;letter-spacing:.14em}
#advisors .p-name{font-size:clamp(2rem,3.6vw,2.6rem)}
#advisors .p-name .en{margin-top:8px}
#advisors .sg-side{display:flex;flex-direction:column;gap:6px}
#advisors .timeline .tl{position:relative}
#advisors .timeline .tl::before{top:50%;transform:translateY(-50%);left:-26px}
#advisors .timeline .tl.only-r{padding:14px 0 14px 6px}
#advisors .timeline .tl.only-r .r{line-height:1.6}
#advisors .p-tags{gap:7px;margin-top:16px}
#advisors .p-tags span{font-size:.72rem;font-weight:700;color:var(--navy);background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-family:"Zen Kaku Gothic New",sans-serif;letter-spacing:.02em}
#advisors .timeline{padding-left:24px}
#advisors .timeline .tl.only-r{padding:14px 0}
#advisors .timeline .tl::before{left:-30px;transform:translate(50%,-50%);top:50%}
#advisors .timeline{padding-left:24px}
#advisors .timeline .tl.only-r{padding:14px 0}
#advisors .timeline .tl::before{left:-29.5px!important;top:50%!important;transform:translateY(-50%)!important}
.grp-rep .rp-tags span,.rp-tags span{font-family:"Zen Kaku Gothic New",sans-serif!important;font-weight:700!important;font-size:.72rem!important;color:var(--navy)!important;background:var(--paper)!important;border:1px solid var(--line)!important;border-radius:999px!important;padding:5px 12px!important;letter-spacing:.02em!important}
.grp-rep .rp-tags span,.rp-tags span,#advisors .p-tags span{background:#fff!important}
.timeline{border-left:2px solid var(--line)!important;padding-left:26px!important;margin-left:0!important}
.timeline .tl{position:relative;padding:14px 0!important}
.timeline .tl::before{content:"";position:absolute!important;left:-29.5px!important;top:50%!important;transform:translateY(-50%)!important;width:9px!important;height:9px!important;border-radius:50%!important;background:var(--cyan)!important;box-shadow:0 0 0 4px rgba(91,197,238,.15)!important}
.timeline .tl.only-r{padding:14px 0!important}
.timeline .tl.only-r .y{display:none!important}
.timeline .tl .y{font-family:"Zilla Slab",serif;font-weight:700;font-size:.8rem;color:var(--navy)}
.timeline{border-left:2px solid var(--line)!important;padding-left:24px!important;margin-left:0!important;position:relative}
.timeline .tl{position:relative;padding:14px 0!important}
.timeline .tl::before{content:""!important;position:absolute!important;left:-29.5px!important;top:50%!important;transform:translateY(-50%)!important;width:9px!important;height:9px!important;border-radius:50%!important;background:var(--cyan)!important;box-shadow:0 0 0 4px rgba(91,197,238,.15)!important;margin:0!important;padding:0!important}
@keyframes tlRipple{0%{box-shadow:0 0 0 4px rgba(91,197,238,.35)}70%{box-shadow:0 0 0 14px rgba(91,197,238,0)}100%{box-shadow:0 0 0 4px rgba(91,197,238,.15)}}
.timeline.on .tl::before{animation:tlRipple 1.6s ease-out both}
.timeline.on .tl:nth-child(1)::before{animation-delay:.05s}
.timeline.on .tl:nth-child(2)::before{animation-delay:.20s}
.timeline.on .tl:nth-child(3)::before{animation-delay:.35s}
.timeline.on .tl:nth-child(4)::before{animation-delay:.50s}
.timeline.on .tl:nth-child(5)::before{animation-delay:.65s}
.timeline.on .tl:nth-child(6)::before{animation-delay:.80s}
.timeline.on .tl:nth-child(7)::before{animation-delay:.95s}
.timeline.on .tl:nth-child(8)::before{animation-delay:1.10s}
@media(prefers-reduced-motion:reduce){.timeline.on .tl::before{animation:none!important}}
@keyframes tlRipple2{0%{box-shadow:0 0 0 4px rgba(91,197,238,.55)!important}70%{box-shadow:0 0 0 18px rgba(91,197,238,0)!important}100%{box-shadow:0 0 0 4px rgba(91,197,238,.15)!important}}
.timeline.on .tl::before{animation:tlRipple2 1.6s ease-out both!important}
.timeline.on .tl:nth-child(1)::before{animation-delay:.05s!important}
.timeline.on .tl:nth-child(2)::before{animation-delay:.20s!important}
.timeline.on .tl:nth-child(3)::before{animation-delay:.35s!important}
.timeline.on .tl:nth-child(4)::before{animation-delay:.50s!important}
.timeline.on .tl:nth-child(5)::before{animation-delay:.65s!important}
.timeline.on .tl:nth-child(6)::before{animation-delay:.80s!important}
.timeline.on .tl:nth-child(7)::before{animation-delay:.95s!important}
.timeline.on .tl:nth-child(8)::before{animation-delay:1.10s!important}
.timeline .tl::after{content:"";position:absolute;left:-29.5px;top:50%;width:9px;height:9px;border-radius:50%;background:var(--cyan);transform:translateY(-50%);pointer-events:none;opacity:0}
@keyframes tlRippleGrow{0%{transform:translateY(-50%) scale(1);opacity:.7}70%{transform:translateY(-50%) scale(3.6);opacity:0}100%{transform:translateY(-50%) scale(3.6);opacity:0}}
.timeline.on .tl::after{animation:tlRippleGrow 1.6s ease-out both;animation-iteration-count:2}
.timeline.on .tl:nth-child(1)::after{animation-delay:.05s}
.timeline.on .tl:nth-child(2)::after{animation-delay:.20s}
.timeline.on .tl:nth-child(3)::after{animation-delay:.35s}
.timeline.on .tl:nth-child(4)::after{animation-delay:.50s}
.timeline.on .tl:nth-child(5)::after{animation-delay:.65s}
.timeline.on .tl:nth-child(6)::after{animation-delay:.80s}
.timeline.on .tl:nth-child(7)::after{animation-delay:.95s}
.timeline.on .tl:nth-child(8)::after{animation-delay:1.10s}

.subnav {
  .wrap {gap: 8px; transform: translateX(-18px);}
  & + .section {padding-top: 20px;}
}
[id] {scroll-margin-top: 140px;}
.p-link {
  font-weight: 500;
  line-height: 1;
  background: var(--navy);
  color: #fff;
  padding: 12px 22px;
  border-radius: 999px;
  transition: 0.4s var(--ease);
  white-space: nowrap;
  display: inline-block;
  margin-top: 15px;
  &:hover {background: var(--cyan-d); transform: translateY(-2px);}
}
.p-link:not(a) {background: #a1a4ac; color: #fff;
  &:hover {
    background: #a1a4ac;
    transform: translateY(0);
  }
}

@media screen and (max-width: 768.999px) {
  [id] {scroll-margin-top: 130px;}
  .subnav {
    .wrap {
      gap: 20px;
    }
  }
}