:root{--ink:#08090b;--paper:#f1eee8;--red:#c7272e;--muted:#a9a4a0;--line:#343438}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:Arial,"Noto Sans JP",sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(8,9,11,.92);backdrop-filter:blur(14px);z-index:20}.logo{font-weight:900;letter-spacing:.08em;font-size:1.35rem}.logo i{color:var(--red);font-style:normal}nav{display:flex;gap:2.5vw;font-size:.8rem;letter-spacing:.16em}nav a:hover{color:var(--red)}.menu{display:none}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.08fr .92fr}.hero-copy{padding:8vh 5vw 6vh;display:flex;flex-direction:column;justify-content:space-between}.kicker,.eyebrow{color:var(--red);font-weight:800;letter-spacing:.18em;font-size:.78rem}.hero h1{font-family:Impact,"Arial Narrow",sans-serif;font-size:clamp(4.5rem,10vw,10rem);line-height:.78;letter-spacing:-.035em;margin:.6rem 0 2.4rem;text-transform:uppercase}.hero h1 span{display:block}.hero h1 .jp{font-family:"Noto Sans JP",sans-serif;font-size:.31em;line-height:1.35;letter-spacing:.06em;margin-top:1.5rem}.lead{max-width:540px;font-size:1.08rem;font-weight:600}.hero-visual{position:relative;min-height:620px;overflow:hidden}.hero-visual:after{content:"TAICHI ISHIDA / ACTOR";position:absolute;bottom:0;left:0;right:0;background:var(--red);padding:.85rem 1rem;font-weight:800;letter-spacing:.16em;font-size:.78rem}.hero-visual img{filter:grayscale(100%);object-position:50% 20%}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.strip div{padding:1.4rem 3vw;border-right:1px solid var(--line);font-weight:800;font-size:.82rem;letter-spacing:.14em}.section{padding:9rem 5vw}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:3rem;margin-bottom:5rem}.section h2,.page-title{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:clamp(3.8rem,8vw,8rem);line-height:.85;letter-spacing:-.025em;margin:0}.section-head p{max-width:650px;margin:0;font-size:1.15rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.card{padding:2.4rem 2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.num{color:var(--red);font-family:Impact;font-size:3rem}.card h3{font-size:1.25rem}.card p{color:var(--muted)}.cta{background:var(--red);padding:6rem 5vw;display:flex;align-items:end;justify-content:space-between;gap:2rem}.cta h2{font-family:Impact,"Arial Narrow",sans-serif;font-size:clamp(3.5rem,8vw,7rem);line-height:.9;margin:0}.button{display:inline-block;border:1px solid currentColor;padding:1rem 1.4rem;font-weight:800;letter-spacing:.12em;white-space:nowrap}.page-hero{padding:10rem 5vw 6rem;border-bottom:1px solid var(--line)}.page-hero p{max-width:680px;font-size:1.2rem;margin-top:2.5rem}.two{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.statement{font-size:clamp(1.8rem,3.4vw,3.5rem);line-height:1.45;font-weight:800}.list{border-top:1px solid var(--line)}.list article{display:grid;grid-template-columns:5rem 1fr;padding:2.2rem 0;border-bottom:1px solid var(--line)}.list h3{margin:0}.list p{color:var(--muted);margin:.4rem 0 0}.profile{display:grid;grid-template-columns:1fr 1.2fr;gap:7vw}.portrait{min-height:720px}.portrait img{filter:grayscale(100%);object-position:50% 20%}.facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:2.5rem}.facts div{padding:1rem 0;border-bottom:1px solid var(--line)}.facts b{display:block;color:var(--red);font-size:.72rem;letter-spacing:.14em}.company-table{border-top:1px solid var(--line)}.company-table div{display:grid;grid-template-columns:13rem 1fr;padding:1.4rem 0;border-bottom:1px solid var(--line)}footer{padding:3rem 5vw;color:var(--muted);font-size:.78rem;display:flex;justify-content:space-between}@media(max-width:780px){header{height:66px}nav{gap:1rem;font-size:.63rem}.hero{grid-template-columns:1fr}.hero-copy{min-height:560px}.hero-visual{min-height:520px}.strip{grid-template-columns:1fr 1fr}.section{padding:6rem 6vw}.section-head,.two,.profile{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.card{border-right:0}.portrait{min-height:550px}.cta{align-items:flex-start;flex-direction:column}.company-table div{grid-template-columns:1fr;gap:.3rem}.page-hero{padding:7rem 6vw 4rem}}
