@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700&family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
:root{--ink:#192229;--signal:#c45139;--paper:#f1f0eb;font-family:'Noto Sans JP',sans-serif;color:var(--ink);background:var(--paper);scroll-behavior:smooth}*{box-sizing:border-box}html,body{margin:0;min-width:320px}body{overflow-x:hidden}a{color:inherit}.skip{position:absolute;left:-9999px;top:4px;background:#fff;padding:8px;z-index:20}.skip:focus{left:8px}.notice{margin:0;background:#101b23;color:#fff;padding:8px 4vw;font-size:10px;line-height:1.7}.top{min-height:68px;padding:12px 4vw;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;font:700 11px 'DM Sans',sans-serif;letter-spacing:.14em}.top a{text-decoration:none}.top a:last-child{border-bottom:1px solid;padding-bottom:5px}.logo{font-size:22px;letter-spacing:-.05em;white-space:nowrap}.logo span{font-size:11px;border:1px solid;border-radius:50%;padding:7px;margin-left:6px;vertical-align:middle;letter-spacing:0}
.hero{min-height:850px;position:relative;background:var(--ink);padding-bottom:75px}.hero-image{margin:0;height:680px;position:relative;overflow:hidden}.hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101b2388,transparent 45%);pointer-events:none}.hero-image figcaption{position:absolute;left:4vw;bottom:25px;color:white;z-index:2;font:700 11px 'DM Sans',sans-serif;letter-spacing:.15em}.hero-card{position:relative;margin:-370px 5vw 0 auto;width:min(550px,46vw);padding:30px 42px 40px;background:var(--signal);color:#fff;z-index:3;box-shadow:-18px 18px 0 #101b23aa}.hero-topline{display:flex;justify-content:space-between;font:700 11px 'DM Sans',sans-serif;letter-spacing:.18em;border-bottom:1px solid #ffffff88;padding-bottom:16px}.industry{font-size:clamp(18px,1.6vw,23px);font-weight:900;line-height:1.5;margin:30px 0 10px}.hero h1{font-size:clamp(60px,5vw,72px);line-height:1.16;letter-spacing:-.08em;margin:0;font-weight:900}.hero h1 span{display:block;text-align:right}.brand{font-size:22px;font-weight:900;letter-spacing:.1em;margin:22px 0 0}.lead{font-size:16px;line-height:1.8;font-weight:700;margin:25px 0 30px}.hero-card a{display:inline-block;font-size:13px;font-weight:900;text-decoration:none;border-bottom:2px solid;padding-bottom:9px}.hero-card a span{margin-left:20px}
.intro{display:grid;grid-template-columns:20% 1fr;padding:110px 6vw 125px;gap:5vw;align-items:start}.intro>span,.study-copy>span,.end span{font:700 11px 'DM Sans',sans-serif;letter-spacing:.2em}.intro h2,.study-copy h2{font-size:clamp(46px,5vw,72px);line-height:1.35;letter-spacing:-.08em;margin:0 0 30px}.intro p{font-size:15px;line-height:2;max-width:47em}.photo-study{display:grid;grid-template-columns:40% 60%;background:#dce2e0}.study-copy{padding:100px 5vw 110px}.study-copy h2{margin:36px 0 20px}.study-copy>p{font-size:15px;line-height:2}.view-switch{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}.view-switch button{font:700 13px 'Noto Sans JP',sans-serif;padding:15px 19px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer}.view-switch button[aria-pressed=true]{background:var(--ink);color:#fff}.view-switch button:focus-visible{outline:3px solid var(--signal);outline-offset:3px}#view-caption{min-height:3em;font-size:13px;margin-top:23px}.study-photo{margin:0;min-height:640px;position:relative;overflow:hidden;background:#9fa9a6}.study-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s ease,object-position .4s ease}.study-photo.detail img{transform:scale(1.75);object-position:28% 64%}.study-photo figcaption{position:absolute;right:20px;bottom:20px;background:#f1f0ebdf;padding:8px 12px;font:700 10px 'DM Sans',sans-serif;letter-spacing:.12em}
.end{background:var(--ink);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;padding:110px 6vw}.end h2{font-size:clamp(42px,4.5vw,65px);line-height:1.4;letter-spacing:-.07em}.end p{font-size:13px;line-height:2.1}.end a{display:inline-block;text-decoration:none;border-bottom:1px solid;padding-bottom:8px;margin-top:25px;font-size:13px}footer{background:#0c151c;color:white;padding:24px 6vw;font:700 11px 'DM Sans',sans-serif;letter-spacing:.15em}
@media(max-width:1050px){.hero{min-height:0;padding-bottom:0}.hero-image{height:58vw;min-height:410px}.hero-card{width:calc(100% - 10vw);margin:-100px 5vw 0;padding:30px 5vw 45px;box-shadow:none}.hero h1{font-size:clamp(60px,7vw,72px)}.intro{padding:85px 6vw}.photo-study{grid-template-columns:1fr}.study-copy{padding:75px 6vw}.study-photo{min-height:0;height:56vw}.end{padding:90px 6vw}}
@media(max-width:600px){.notice{font-size:9px}.top{min-height:58px;padding:10px 5vw}.top>span{display:none}.logo{font-size:19px}.hero-image{height:75vw;min-height:285px}.hero-image img{object-position:35% center}.hero-image figcaption{font-size:8px;left:5vw;bottom:32px}.hero-card{width:calc(100% - 8vw);margin:-22px 4vw 0;padding:21px 6vw 34px}.hero-topline{font-size:9px;padding-bottom:11px}.industry{font-size:16px;margin:20px 0 9px}.hero h1{font-size:clamp(42px,12vw,66px)}.brand{font-size:18px;margin:14px 0 0}.lead{font-size:14px;margin:15px 0 22px}.intro{display:block;padding:70px 6vw}.intro>span{display:block;margin-bottom:25px}.intro h2,.study-copy h2{font-size:clamp(41px,10vw,56px)}.intro p{font-size:13px}.study-copy{padding:70px 6vw}.study-copy h2{margin:25px 0}.study-copy>p{font-size:13px}.view-switch{margin-top:30px}.view-switch button{font-size:12px;padding:13px 14px}.study-photo{height:75vw;min-height:300px}.study-photo figcaption{font-size:8px;right:10px;bottom:10px}.end{display:block;padding:80px 6vw}.end h2{font-size:clamp(40px,10vw,54px)}.end>div:last-child{margin-top:45px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.study-photo img{transition:none}}
