:root{--bg:#f7f5ef;--surface:#fff;--text:#172019;--muted:#637064;--accent:#1f5b38;--line:#d9ddd7;--radius:2px;--max:1180px}html[data-style="bold"]{--bg:#101010;--surface:#181818;--text:#f5f1e8;--muted:#aaa;--accent:#f4c542;--line:#333;--radius:0}html[data-style="minimal"]{--bg:#fff;--surface:#fff;--text:#111;--muted:#777;--accent:#111;--line:#e8e8e8;--radius:18px}html[data-style="warm"]{--bg:#fff8f1;--surface:#fff;--text:#34241e;--muted:#816f65;--accent:#9d3d2b;--line:#ead9cb;--radius:28px}html[data-style="technical"]{--bg:#eef3f7;--surface:#fff;--text:#0b1d2a;--muted:#607586;--accent:#065d88;--line:#cbd7df;--radius:6px}html[data-style="classic"]{--bg:#f6f2e8;--surface:#fffdf8;--text:#28231b;--muted:#786f62;--accent:#6b4f2c;--line:#ddd3c3;--radius:4px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.75}.site-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:17px max(24px,4vw);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.site-header>a{font-weight:800;color:var(--text);text-decoration:none}.site-header nav{display:flex;gap:20px;align-items:center}.site-header nav a{color:var(--text);text-decoration:none;font-size:14px}.nav-cta{border:1px solid var(--text);padding:8px 12px}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.narrow{max-width:800px}.hero{min-height:72vh;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);align-items:center;width:min(var(--max),calc(100% - 48px));margin:auto;padding:80px 0}.hero__inner{max-width:760px}.hero h1{font-size:clamp(48px,8vw,108px);line-height:.98;letter-spacing:-.055em;margin:14px 0 28px}.lead{font-size:clamp(18px,2vw,25px);max-width:680px;color:var(--muted)}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.hero__shape{width:min(28vw,340px);aspect-ratio:1;border:1px solid var(--line);border-radius:50%;justify-self:end;position:relative}.hero__shape:after{content:"";position:absolute;inset:22%;background:var(--accent);border-radius:inherit}.hero__actions{display:flex;gap:10px;margin-top:34px}.button{display:inline-block;background:var(--accent);color:white;padding:13px 20px;text-decoration:none;border:1px solid var(--accent);font:inherit;cursor:pointer}.button.ghost{background:transparent;color:var(--text);border-color:var(--line)}.section{padding:100px 0;border-top:1px solid var(--line)}.section h2{font-size:clamp(34px,5vw,68px);line-height:1.08;letter-spacing:-.04em;margin:12px 0 40px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.cards article{background:var(--surface);padding:28px;border:1px solid var(--line);border-radius:var(--radius);min-height:180px}.cards span{font-size:12px;color:var(--muted)}.cards h3{font-size:22px;margin-top:44px}.bodycopy{font-size:20px;color:var(--muted)}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-weight:700}.company dl{max-width:850px}.company dl div{display:grid;grid-template-columns:170px 1fr;padding:18px 0;border-top:1px solid var(--line)}.company dt{font-weight:700}.company dd{margin:0}.inquiry form{display:grid;gap:16px}.inquiry label{font-weight:700}.inquiry input,.inquiry textarea{display:block;width:100%;margin-top:6px;padding:14px;border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.consent{font-size:13px;font-weight:400!important;display:flex;gap:8px}.consent input{width:auto;margin:4px 0}.success{padding:18px;background:var(--surface);border:1px solid var(--line)}.error{color:#b42318}.recruitment{background:var(--surface)}footer{padding:50px max(24px,4vw);border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted)}html[data-density="compact"] .section{padding:72px 0}@media(max-width:760px){.site-header nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;min-height:auto;padding:70px 0}.hero__shape{width:180px;justify-self:start;margin-top:45px}.cards{grid-template-columns:1fr}.two{grid-template-columns:1fr}.company dl div{grid-template-columns:1fr;gap:4px}.section{padding:70px 0}footer{display:block}.hero h1{font-size:50px}}
.preview-bar{position:sticky;top:0;z-index:50;background:#111;color:#fff;text-align:center;padding:8px;font-size:12px}.preview-bar+.site-header{top:35px}.preview-notice{border:1px dashed var(--line);padding:24px;background:var(--surface);color:var(--muted)}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.hero__media{margin:0;justify-self:end;width:min(34vw,430px);aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface)}.hero__media img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:760px){.hero__media{width:100%;max-width:360px;justify-self:start;margin-top:38px}}
