:root{--purple:#7b68ee;--purple-deep:#5b4bd4;--purple-mid:#9b8af5;--purple-soft:#ede7ff;--purple-pale:#f7f4ff;--purple-tint:#c4b5fd;--ink:#1c1628;--muted:#5c5668;--line:#e6e1f0;--white:#fff;--shadow:0 18px 50px #5b4bd41f;--radius:10px;--header-h:72px;--max:1120px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--white);letter-spacing:.02em;margin:0;font-family:Noto Sans JP,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-weight:400;line-height:1.8}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(var(--max), calc(100% - 48px));margin-inline:auto}.site-header{z-index:40;height:var(--header-h);backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid #0000;position:sticky;top:0}.site-header.is-scrolled{border-bottom-color:var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:24px;height:100%;display:flex}.logo{letter-spacing:.01em;align-items:center;gap:10px;font-family:Outfit,Noto Sans JP,sans-serif;font-size:1.2rem;font-weight:600;display:flex}.logo svg{width:28px;height:28px}.nav{align-items:center;gap:28px;display:flex}.nav a{font-size:.92rem;font-weight:700}.nav a:hover,.nav a.is-active{color:var(--purple-deep)}.header-cta{align-items:center;gap:12px;display:flex}.btn{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-size:.92rem;font-weight:700;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary{color:var(--white);background:var(--purple-deep);box-shadow:0 8px 20px #7b68ee47}.btn-primary:hover{background:#4c3eb5}.btn-dark{color:var(--white);background:#2a2438}.btn-dark:hover{background:#1c1628}.btn-ghost{color:var(--ink);background:0 0}.btn-ghost:hover{color:var(--purple-deep)}.menu-toggle{cursor:pointer;background:0 0;border:0;width:44px;height:44px;display:none}.menu-toggle span{background:var(--ink);width:20px;height:2px;margin:5px auto;display:block}.hero{padding:72px 0 96px}.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;display:grid}.hero h1{letter-spacing:.04em;margin:0;font-size:clamp(2rem,4.2vw,3.35rem);font-weight:800;line-height:1.35}.hero p{color:var(--muted);margin:20px 0 32px;font-size:1.02rem}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-art{aspect-ratio:1;grid-template-columns:1fr 1fr;gap:18px;width:min(380px,100%);margin-left:auto;display:grid}.blob{border-radius:28%;min-height:0}.blob-a{background:#3d3650}.blob-b{background:var(--purple);border-radius:50%}.blob-c{clip-path:polygon(18% 18%,88% 50%,18% 82%);background:var(--purple-tint);border-radius:18%}.blob-d{background:var(--purple-soft)}.section{padding:96px 0;position:relative}.section-muted{background:linear-gradient(180deg, var(--purple-pale) 0%, var(--white) 100%)}.watermark{letter-spacing:.04em;color:#7b68ee12;pointer-events:none;user-select:none;font-family:Outfit,sans-serif;font-size:clamp(4.5rem,12vw,8.5rem);font-weight:800;line-height:1;display:block;position:absolute;top:24px;left:0;right:0}.watermark--inline{margin-bottom:8px;font-size:4rem;position:static}.section-kicker{align-items:center;gap:12px;margin-bottom:16px;font-size:1.05rem;font-weight:700;display:flex;position:relative}.section-kicker:before{content:"";background:var(--ink);width:28px;height:2px}.section h2{letter-spacing:.04em;margin:0 0 20px;font-size:clamp(1.6rem,3vw,2.15rem);line-height:1.5;position:relative}.lead{max-width:42em;color:var(--muted);position:relative}.section-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px;display:flex}.link-arrow{align-items:center;gap:6px;font-weight:700;display:inline-flex}.link-arrow:hover{color:var(--purple-deep)}.service-cards{gap:20px;display:grid}.card{border:1px solid var(--line);background:var(--white);border-radius:16px;grid-template-columns:220px 1fr auto;align-items:start;gap:28px;padding:28px;transition:border-color .2s,box-shadow .2s;display:grid}.card:hover{border-color:var(--purple-tint);box-shadow:var(--shadow)}.card h3{margin:0 0 10px;font-size:1.2rem}.card p{color:var(--muted);margin:0}.card-visual{background:radial-gradient(circle at 30% 30%, #ffffff8c, transparent 45%), linear-gradient(145deg, var(--purple-soft), var(--purple));border-radius:14px;height:140px}.card-visual.v2{background:linear-gradient(145deg,#d9d1ff,#6d5ce7)}.card-visual.v3{background:linear-gradient(145deg,#efeaff,#9b8af5)}.card-visual.v4{background:linear-gradient(145deg,#f3eeff,#7b68ee 80%)}.card-visual.v5{background:linear-gradient(145deg,#e4dcff,#5b4bd4)}.tags{flex-wrap:wrap;gap:8px;margin:16px 0 0;display:flex}.tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}.cases{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.case-card{border:1px solid var(--line);background:var(--white);border-radius:16px;overflow:hidden}.case-card .thumb{background:linear-gradient(135deg, var(--purple-soft), var(--purple-mid));height:150px}.case-card .thumb.t2{background:linear-gradient(135deg,#dcd4ff,#5b4bd4)}.case-card .thumb.t3{background:linear-gradient(135deg,#f0ebff,#7b68ee)}.case-card .thumb.t4{background:linear-gradient(135deg,#e8e0ff,#8a78f0)}.case-card .thumb.t5{background:linear-gradient(135deg,#ddd6ff,#6a58e0)}.case-card .thumb.t6{background:linear-gradient(135deg,#efe9ff,#4e3fc4)}.case-card .body{padding:18px 18px 22px}.case-card .cat{color:var(--purple-deep);margin-bottom:8px;font-size:.8rem;font-weight:700;display:inline-block}.case-card h3{margin:0;font-size:1rem;line-height:1.6}.about-panel{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;display:grid}.about-art{background:radial-gradient(circle at 70% 30%, #ffffffb3, transparent 40%), linear-gradient(160deg, var(--purple-soft), var(--purple-deep));border-radius:24px;height:280px}.news-list{border-top:1px solid var(--line);gap:0;display:grid}.news-item{border-bottom:1px solid var(--line);grid-template-columns:120px 110px 1fr;align-items:center;gap:16px;padding:18px 0;display:grid}.news-item time{color:var(--muted);font-variant-numeric:tabular-nums}.badge{border:1px solid var(--line);border-radius:999px;justify-content:center;min-width:88px;padding:2px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.cta-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.cta-card{color:var(--white);border-radius:18px;padding:36px}.cta-card.download{background:linear-gradient(145deg,#8b79f4,#5b4bd4)}.cta-card.contact{background:#2a2438}.cta-card .en{letter-spacing:.12em;opacity:.8;font-family:Outfit,sans-serif;font-size:.78rem}.cta-card h2{color:var(--white);margin:8px 0 12px;font-size:1.6rem}.cta-card p{opacity:.9;margin:0 0 22px}.cta-card .btn{background:var(--white);color:var(--ink)}.site-footer{background:var(--purple-pale);padding:56px 0 28px}.footer-grid{border-bottom:1px solid var(--line);grid-template-columns:1.2fr 1fr 1fr;gap:32px;padding-bottom:36px;display:grid}.footer-brand p{color:var(--muted);margin:10px 0 0}.footer-col h3{margin:0 0 12px;font-size:.9rem}.footer-col a,.footer-col p{color:var(--muted);margin:0 0 8px;display:block}.copyright{color:var(--muted);justify-content:space-between;gap:16px;padding-top:18px;font-size:.85rem;display:flex}.page-hero{padding:64px 0 24px}.page-hero h1{margin:0;font-size:clamp(1.8rem,3vw,2.5rem)}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:18px 12px}.table th{width:180px;color:var(--muted);font-weight:700}.form{gap:16px;max-width:720px;display:grid}[hidden]{display:none!important}.download-layout{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:start;gap:48px;display:grid}.cta-grid.cta-grid--single{grid-template-columns:1fr}.document-summary{background:var(--purple-pale);border:1px solid var(--line);border-radius:16px;padding:32px}.document-summary h2{font-size:1.75rem}.document-summary ul{padding-left:1.4em}.document-meta{color:var(--muted);font-size:.85rem}.download-notice{background:var(--purple-soft);border-radius:10px;padding:20px}.download-error{color:#8b183b;background:#fff1f4;border-radius:8px;padding:14px}.consent-field{align-items:start;gap:12px;font-size:.9rem;display:flex}.consent-field input{flex-shrink:0;width:18px;height:18px;margin-top:5px}.consent-field a{color:var(--purple-deep);text-decoration:underline}.btn:disabled{cursor:not-allowed;opacity:.55;transform:none}@media (width<=700px){.download-layout{grid-template-columns:1fr;gap:24px}.document-summary{padding:24px}}.field label{margin-bottom:6px;font-size:.9rem;font-weight:700;display:block}.field input,.field textarea,.field select{border:1px solid var(--line);background:var(--white);border-radius:8px;width:100%;padding:12px 14px}.field textarea{resize:vertical;min-height:160px}.form-note a{color:#6d5bd0;font-weight:500;text-decoration:underline}.form-note a:hover{color:#5a47c7}.form-success{background:var(--purple-soft);border-radius:10px;padding:16px 18px;font-weight:700;display:none}.form-success.is-visible{display:block}.prose{max-width:46em}.prose h2{margin-top:2em;font-size:1.2rem}.mobile-nav{display:none}@media (width<=900px){.nav,.header-cta .btn{display:none}.menu-toggle{display:block}.hero-grid,.card,.about-panel,.cta-grid,.footer-grid,.cases,.news-item,.section-head{grid-template-columns:1fr}.hero-art{max-width:280px;margin:8px auto 0}.section-head{align-items:start;display:grid}.card-visual{height:120px}.mobile-nav.is-open{background:var(--white);border-bottom:1px solid var(--line);gap:8px;padding:12px 24px 20px;display:grid}.copyright{flex-direction:column}}
