:root{--ink: #2a2d33;--ink-2: #4b5058;--ink-3: #878d95;--ink-4: #bfc3c8;--rule: #e5e9ec;--rule-2: #d2d8dc;--bg: #ffffff;--bg-tint: #f4f8fa;--bg-cream: #fff8e7;--bg-mint: #eaf6f2;--bg-warm: #f4f8fd;--orange: #07c1f2;--orange-2: #0696be;--orange-soft: #e5f7fe;--yellow: #ffd43b;--yellow-deep: #f5c518;--teal: #1b3a4a;--green: #1fa37a;--red: #e5484d;--kt-red: #b81c28;--kt-red-deep: #8e1620;--kt-red-soft: #f4dfd8;--paper: var(--bg);--cream: var(--bg);--cream-2: var(--bg-warm);--cream-3: var(--bg-warm);--vermilion: var(--orange);--vermilion-deep: var(--orange-2);--vermilion-soft: var(--orange-soft);--gold: var(--yellow-deep);--gold-soft: var(--bg-cream);--shadow-btn: 0 6px 0 rgba(15, 42, 53, .18), 0 14px 24px -10px rgba(15, 42, 53, .3);--shadow-card: 0 1px 0 rgba(15, 42, 53, .06), 0 18px 36px -22px rgba(15, 42, 53, .18);--shadow-pop: 0 1px 0 rgba(15, 42, 53, .06), 0 30px 60px -30px rgba(15, 42, 53, .3);--shadow-stamp: 0 6px 0 var(--orange-2), 0 16px 24px -10px rgba(26, 78, 184, .3);--r: 14px;--r-lg: 22px;--pad: clamp(20px, 4vw, 56px);--max: 1240px;--jp: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;--num: "Inter", "Noto Sans JP", sans-serif;--jp-serif: var(--jp);--en-serif: var(--num)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;padding:0}body{font-family:var(--jp);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"palt";line-height:1.85;font-weight:500;overflow-x:clip}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}::selection{background:var(--orange);color:#fff}@media(max-width:768px){br.br-md{display:none}}@media(min-width:769px){br.br-sm{display:none}}.nb{display:inline-block;white-space:nowrap}p,li,dd,dt,h1,h2,h3,h4,h5,h6{text-wrap:pretty}.seal{background:var(--kt-red)!important;box-shadow:inset 0 0 0 3px var(--kt-red),inset 0 0 0 5px #fff,inset 0 0 0 6px var(--kt-red)!important;color:#fff!important}.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--pad)}.serif{font-family:var(--jp-serif)}.num{font-family:var(--num);font-weight:800;letter-spacing:-.01em;font-feature-settings:"tnum"}.eyebrow{display:inline-flex;align-items:center;gap:14px;font-family:var(--num);font-size:11px;font-weight:700;letter-spacing:.24em;color:var(--vermilion);text-transform:uppercase}.eyebrow:before{content:"";width:36px;height:1px;background:currentColor}.eyebrow .ja{font-family:var(--jp);letter-spacing:.06em;color:var(--ink-3);font-weight:700}.section-head .eyebrow{font-size:16px;letter-spacing:.22em;gap:18px}.section-head .eyebrow:before,.section-head .eyebrow:after{width:48px;height:1.5px}.section-head .eyebrow .ja{font-size:15px;letter-spacing:.08em}.reveal{opacity:0;transform:translateY(20px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.reveal-stagger>*{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal-stagger.in>*{opacity:1;transform:none}.reveal-stagger.in>*:nth-child(1){transition-delay:.05s}.reveal-stagger.in>*:nth-child(2){transition-delay:.13s}.reveal-stagger.in>*:nth-child(3){transition-delay:.21s}.reveal-stagger.in>*:nth-child(4){transition-delay:.29s}@media(prefers-reduced-motion:reduce){.reveal,.reveal-stagger>*{opacity:1!important;transform:none!important}html{scroll-behavior:auto}}.seal{width:84px;height:84px;background:var(--vermilion);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--jp-serif);font-weight:900;box-shadow:inset 0 0 0 3px var(--vermilion),inset 0 0 0 5px #fff,inset 0 0 0 6px var(--vermilion);position:relative;line-height:1;transform:rotate(-4deg)}.seal .kanji{font-size:38px;letter-spacing:-.02em}.seal:after{content:"";position:absolute;inset:-3px;border-radius:50%;background:radial-gradient(circle at 30% 30%,transparent 50%,rgba(255,255,255,.14) 70%,transparent 80%);pointer-events:none}.paper-tex{position:relative}.paper-tex:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(27,26,24,.025) 1px,transparent 1px),radial-gradient(rgba(27,26,24,.018) 1px,transparent 1px);background-size:24px 24px,7px 7px;background-position:0 0,6px 6px;opacity:.6;mix-blend-mode:multiply}.btn{display:inline-flex;align-items:center;gap:12px;padding:16px 28px;border-radius:6px;font-weight:900;font-size:14.5px;transition:transform .15s ease,box-shadow .15s ease,background .2s ease;white-space:nowrap;letter-spacing:.04em}.btn:active{transform:translateY(2px)}.btn-primary{background:var(--vermilion);color:#fff;box-shadow:var(--shadow-stamp)}.btn-primary:hover{background:var(--vermilion-deep)}.btn-ink{background:var(--ink);color:#fff;box-shadow:0 6px #000,0 14px 24px -10px #1b1a1866}.btn-ink:hover{background:#000}.btn-line{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.btn-line:hover{background:var(--ink);color:#fff}.btn .arr{width:24px;height:24px;border-radius:50%;background:#ffffff2e;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1}.btn-line .arr{background:var(--ink);color:#fff}.btn-large{padding:20px 32px;font-size:15.5px}.text-link{display:inline-flex;align-items:center;gap:8px;font-weight:900;color:var(--ink);font-size:13px;border-bottom:1.5px solid var(--ink);padding-bottom:2px;letter-spacing:.06em}.text-link:after{content:"→";color:var(--vermilion);transition:transform .2s ease}.text-link:hover:after{transform:translate(3px)}.nav{position:sticky;top:0;z-index:50;background:#fffffff2;backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--rule)}.nav-inner{position:relative;display:flex;align-items:center;justify-content:space-between;height:78px;gap:24px}.brand-logo{height:40px;width:auto;display:block}.nav-links{display:flex;align-items:center;gap:30px}.nav-links>a{font-size:13.5px;font-weight:700;color:var(--ink);transition:color .2s ease;position:relative;padding:6px 0;font-family:var(--jp-serif);letter-spacing:.04em}.nav-links>a:hover{color:var(--vermilion)}.nav-cta{display:flex;align-items:center;gap:10px}.nav-cta .btn{padding:12px 20px;font-size:12.5px;border-radius:4px}.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;margin-left:4px;background:none;border:0;cursor:pointer}.nav-toggle span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:transform .25s ease,opacity .25s ease}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:1080px){.nav-toggle{display:inline-flex}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:8px 24px 16px;border-bottom:1px solid var(--rule);box-shadow:0 16px 30px -16px #0f2a3538}.nav-links.is-open{display:flex}.nav-links>a{padding:16px 0;border-bottom:1px solid var(--rule);font-size:15px}.nav-links>a:last-child{border-bottom:0}}@media(max-width:480px){.nav-cta .btn{padding:10px 14px;font-size:11.5px}}.hero{position:relative;overflow:hidden;padding-block:clamp(72px,8vw,128px) clamp(80px,9vw,140px);background:radial-gradient(60% 80% at 90% 8%,rgba(184,28,40,.06),transparent 60%),radial-gradient(40% 60% at 4% 95%,rgba(176,139,74,.1),transparent 60%),var(--cream)}.hero:before{content:"絆";position:absolute;right:-6%;bottom:-22%;font-family:var(--jp-serif);font-weight:900;font-size:min(60vw,820px);color:var(--ink);opacity:.025;line-height:.85;pointer-events:none}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,1fr);gap:64px;align-items:center;position:relative}.hero-grid>*{min-width:0}@media(max-width:980px){.hero-grid{grid-template-columns:1fr;gap:56px}}.hero-trust{display:inline-flex;align-items:center;gap:14px;background:var(--paper);padding:8px 18px 8px 8px;border-radius:999px;border:1px solid var(--rule);margin-bottom:32px;box-shadow:var(--shadow-card)}.hero-trust .stamp{background:var(--vermilion);color:#fff;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--jp-serif);font-weight:900;font-size:16px;box-shadow:inset 0 0 0 1.5px #fff,inset 0 0 0 2.5px var(--vermilion)}.hero-trust .txt{font-size:13px;font-weight:700;letter-spacing:.02em}.hero-trust .txt b{color:var(--vermilion);font-family:var(--num);font-size:15px;font-weight:800;margin:0 2px;letter-spacing:-.01em}.hero-title{font-family:var(--jp-serif);font-weight:900;font-size:clamp(22px,6.2vw,52px);line-height:1.42;letter-spacing:.005em;margin:0 0 32px;color:var(--ink);text-wrap:pretty}.hero-title .em{color:var(--vermilion);position:relative}@media(min-width:769px){.hero-title .em,.section-head h2 .em,.sol-tagline .em,.final-cta h2 .em{white-space:nowrap}}.hero-title .em:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:6px;background:var(--vermilion);opacity:.18;border-radius:2px}.hero-title .small{font-size:.66em;display:block;margin-top:18px;color:var(--ink-2);font-weight:700;letter-spacing:.02em}.hero-sub{max-width:56ch;font-size:15.5px;line-height:2.05;color:var(--ink-2);margin:0 0 40px;font-weight:500}.hero-ctas{display:flex;flex-wrap:wrap;gap:14px 16px;align-items:center;margin-bottom:32px}.hero-meta{display:flex;align-items:center;gap:18px;color:var(--ink-3);font-size:12.5px;font-weight:500}.hero-meta b{color:var(--ink);font-weight:900;font-family:var(--num);font-size:14px;letter-spacing:0;margin:0 1px}.hero-visual{position:relative;width:100%;max-width:640px;margin-inline:auto}.hv-phone-img{display:block;width:100%;height:auto;filter:drop-shadow(0 40px 70px rgba(27,26,24,.18)) drop-shadow(0 12px 22px rgba(27,26,24,.08));animation:hvBob 9s ease-in-out infinite;will-change:transform}@keyframes hvBob{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.hv-phone-img{animation:none}}.hero-trustblock{margin-top:72px;background:var(--paper);border-radius:18px;border:1px solid var(--rule);box-shadow:var(--shadow-card);padding:36px 36px 28px;text-align:center}.hero-trustblock .tb-top{font-family:var(--jp-serif);font-weight:900;font-size:clamp(22px,5.5vw,46px);line-height:1.15;letter-spacing:.005em;color:var(--vermilion)}.hero-trustblock .tb-top .num{font-family:var(--num);font-weight:800;letter-spacing:-.02em;font-size:1.15em;margin-right:4px}.hero-trustblock .tb-sub{margin-top:10px;font-size:14px;color:var(--ink-2);font-weight:700;letter-spacing:.06em}.hero-trustblock .tb-sub .sep{color:var(--rule-2);margin:0 12px}.logo-marquee{margin-top:24px;display:flex;flex-direction:column;gap:18px}.logo-marquee-row{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%)}.logo-marquee-track{display:flex;align-items:center;gap:64px;width:max-content;animation:logoScroll 32s linear infinite}.logo-marquee-track-rev{animation:logoScrollRev 36s linear infinite}.logo-marquee-row:hover .logo-marquee-track{animation-play-state:paused}.logo-marquee img{height:clamp(36px,4vw,52px);width:auto;opacity:1;filter:none;flex:none}@keyframes logoScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes logoScrollRev{0%{transform:translate(-50%)}to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){.logo-marquee-track{animation:none}}section{position:relative}.section-pad{padding-block:clamp(80px,9vw,132px)}.section-head{text-align:center;margin-bottom:64px;max-width:780px;margin-inline:auto}.section-head .eyebrow{justify-content:center;margin-bottom:22px}.section-head .eyebrow:before,.section-head .eyebrow:after{content:"";width:36px;height:1px;background:currentColor}.section-head h2{margin:0;font-family:var(--jp-serif);font-weight:900;font-size:clamp(22px,5vw,46px);line-height:1.5;letter-spacing:.01em;color:var(--ink);text-wrap:balance}.section-head h2 .em{color:var(--vermilion)}.section-head h2 .ul{display:inline-block;background:linear-gradient(180deg,transparent 70%,var(--gold-soft) 70% 95%,transparent 95%);padding:0 .15em}.section-head .subline{margin-top:24px;color:var(--ink-2);font-size:15px;line-height:2;text-wrap:pretty}.pain{background:var(--cream-2)}.pain:before{content:"課題";position:absolute;left:-3%;top:8%;font-family:var(--jp-serif);font-size:clamp(120px,18vw,240px);font-weight:900;color:var(--ink);opacity:.02;pointer-events:none;line-height:.8}.pain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}@media(max-width:980px){.pain-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.pain-grid{grid-template-columns:1fr}}.pain-card{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:32px 26px 28px;position:relative;box-shadow:var(--shadow-card);transition:transform .25s ease}.pain-card:hover{transform:translateY(-3px)}.pain-card .num{font-family:var(--num);font-weight:800;font-size:13px;letter-spacing:.18em;color:var(--vermilion);margin-bottom:18px;display:flex;align-items:center;gap:10px}.pain-card .num:before{content:"";width:22px;height:1.5px;background:var(--vermilion);border-radius:1px}.pain-card .ico{width:60px;height:60px;border-radius:14px;background:var(--cream);color:var(--vermilion);display:flex;align-items:center;justify-content:center;margin-bottom:18px;border:1px solid var(--rule)}.pain-card .ico svg{width:30px;height:30px}.pain-card h3{margin:0;font-family:var(--jp-serif);font-weight:900;font-size:15.5px;line-height:1.7;color:var(--ink);word-break:keep-all;word-break:auto-phrase;overflow-wrap:anywhere;line-break:strict}.pain-bridge{margin-top:64px;text-align:center;font-family:var(--jp-serif);font-weight:900;font-size:clamp(20px,2.4vw,28px);line-height:1.6;color:var(--ink)}.pain-bridge .arrow{display:block;color:var(--vermilion);font-family:var(--num);font-size:38px;line-height:1;margin:14px auto 18px}.pain-bridge em{font-style:normal;color:var(--vermilion)}.sol-intro{background:linear-gradient(180deg,var(--cream) 0%,var(--cream-2) 100%);text-align:center;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.sol-eyebrow{display:inline-flex;align-items:center;gap:18px;justify-content:center;font-family:var(--num);font-size:18px;font-weight:700;letter-spacing:.22em;color:var(--vermilion);text-transform:uppercase;margin-bottom:32px}.sol-eyebrow:before,.sol-eyebrow:after{content:"";width:48px;height:1.5px;background:currentColor}.sol-eyebrow .ja{font-family:var(--jp);letter-spacing:.08em;color:var(--ink-3);font-weight:700;font-size:17px}.sol-logo{display:block;height:clamp(64px,8vw,108px);width:auto;margin:0 auto 32px}.sol-banner{display:inline-flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:14px;justify-content:center}.sol-banner .seal{transform:rotate(-6deg)}.sol-banner .name{font-family:var(--jp-serif);font-weight:900;font-size:clamp(40px,9vw,96px);line-height:1;letter-spacing:.01em}.sol-banner .name .ti{font-family:var(--en-serif);font-weight:700;font-style:italic;color:var(--ink);margin-left:6px}.sol-tagline{font-family:var(--jp-serif);font-weight:900;font-size:clamp(20px,5vw,40px);line-height:1.7;margin:32px 0 0;text-wrap:balance}.sol-tagline .em{color:var(--vermilion)}.sol-merit{font-family:var(--jp-serif);font-weight:700;max-width:64ch;margin:36px auto 0;font-size:clamp(17px,2vw,21px);line-height:2;color:var(--ink);text-wrap:pretty}.sol-merit b{color:var(--vermilion);font-weight:900}.proof{background:var(--cream)}.proof-numbers{display:grid;grid-template-columns:1fr;gap:24px;margin-bottom:60px;max-width:760px;margin-inline:auto}.proof-num{background:var(--paper);border:1px solid var(--rule);border-radius:18px;padding:44px 48px;display:flex;flex-direction:column;gap:20px;position:relative;overflow:hidden;box-shadow:var(--shadow-card);text-align:center;align-items:center}.proof-num:before{content:"";position:absolute;top:0;left:0;width:100%;height:6px;background:var(--vermilion)}.proof-num .lab{font-family:var(--num);font-size:16px;font-weight:800;letter-spacing:.2em;color:var(--ink-3);text-transform:uppercase}.proof-num .big{font-family:var(--jp-serif);font-weight:900;font-size:clamp(28px,3.4vw,40px);color:var(--ink);line-height:1.4}.proof-num .big .n{font-family:var(--num);font-weight:800;font-size:clamp(48px,11vw,96px);line-height:.95;letter-spacing:-.025em;color:var(--vermilion);display:inline-block;margin-right:6px;vertical-align:-6px}.proof-num .big small{font-size:1em;color:var(--ink);font-weight:900;font-family:var(--jp-serif)}.proof-num p{margin:0;font-size:14px;color:var(--ink-2);line-height:1.9;max-width:54ch}.ir{margin-top:48px;background:var(--ink);color:#fff;border-radius:18px;padding:48px;display:grid;grid-template-columns:1fr 1.4fr;gap:48px;align-items:center;position:relative;overflow:hidden}@media(max-width:880px){.ir{grid-template-columns:1fr;padding:36px;gap:32px}}.ir:after{content:"絆";position:absolute;right:-2%;top:-20%;font-family:var(--jp-serif);font-weight:900;font-size:480px;color:var(--vermilion);opacity:.1;line-height:.8;pointer-events:none}.ir-head{position:relative;z-index:1}.ir-head .tag{display:inline-block;background:var(--vermilion);color:#fff;padding:4px 12px;border-radius:4px;font-size:11px;font-weight:800;letter-spacing:.14em;font-family:var(--num);margin-bottom:18px}.ir-head h3{font-family:var(--jp-serif);font-weight:900;font-size:clamp(18px,3.6vw,28px);line-height:1.6;margin:0 0 12px;color:#fff;word-break:keep-all;word-break:auto-phrase;overflow-wrap:break-word}.ir-head .src{font-size:12px;color:#ffffff8c;font-weight:500;line-height:1.7}.ir-stats{display:grid;gap:14px;position:relative;z-index:1}.ir-stat{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:baseline;padding-bottom:14px;border-bottom:1px dashed rgba(255,255,255,.18)}.ir-stat:last-child{border-bottom:0;padding-bottom:0}.ir-stat .lb{font-size:16px;color:#fffffff2;font-weight:800;line-height:1.55;font-family:var(--jp-serif)}.ir-stat .vl{font-family:var(--num);font-weight:800;font-size:clamp(26px,5vw,44px);color:#ffc75a;line-height:1;letter-spacing:-.02em;white-space:nowrap}.ir-stat .vl small{font-family:var(--jp);font-size:.34em;color:#fff;font-weight:700;margin-left:2px}.clients{margin-top:80px}.clients .lab{text-align:center;font-family:var(--num);font-size:11px;font-weight:800;letter-spacing:.24em;color:var(--ink-3);text-transform:uppercase;margin-bottom:24px}.clients .lab .ja{font-family:var(--jp);letter-spacing:.06em;color:var(--ink-2)}.logo-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:14px;overflow:hidden}@media(max-width:980px){.logo-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:540px){.logo-grid{grid-template-columns:repeat(2,1fr)}}.logo-cell{background:var(--paper);aspect-ratio:5/2.6;display:flex;align-items:center;justify-content:center;padding:14px 12px;transition:background .2s ease;overflow:hidden}.logo-cell:hover{background:var(--cream-2)}.logo-cell .brand-logo{max-width:82%;max-height:clamp(34px,3.6vw,52px);width:auto;height:auto;object-fit:contain;filter:none;opacity:1;transition:transform .25s ease}.logo-cell:hover .brand-logo{transform:translateY(-1px)}.interview{margin-top:80px}.interview-card{display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center;background:var(--paper);border:1px solid var(--rule);border-radius:18px;padding:36px 40px;box-shadow:var(--shadow-card);transition:transform .2s ease,box-shadow .2s ease}.interview-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-pop)}.interview-logo{width:120px;flex:none;display:flex;align-items:center;justify-content:center}.interview-logo img{max-height:64px;width:auto}.interview-body{display:flex;flex-direction:column;gap:8px;min-width:0}.interview-tag{font-family:var(--num);font-size:11px;font-weight:800;letter-spacing:.2em;color:var(--vermilion);text-transform:uppercase}.interview-body h3{margin:0;font-family:var(--jp-serif);font-weight:900;font-size:clamp(17px,2vw,22px);line-height:1.55;color:var(--ink);word-break:keep-all;word-break:auto-phrase;overflow-wrap:anywhere}.interview-body p{margin:4px 0 0;font-size:13.5px;line-height:1.85;color:var(--ink-2);word-break:keep-all;word-break:auto-phrase;overflow-wrap:anywhere}.interview-arr{width:48px;height:48px;border-radius:50%;background:var(--vermilion);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;flex:none;transition:transform .2s ease}.interview-card:hover .interview-arr{transform:translate(4px)}@media(max-width:768px){.interview-card{grid-template-columns:1fr;gap:18px;padding:28px}.interview-logo{width:auto}.interview-arr{justify-self:end}}.voices{margin-top:80px}.voices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:980px){.voices-grid{grid-template-columns:1fr}}.voice{background:var(--paper);border:1px solid var(--rule);border-radius:18px;padding:36px 32px 32px;position:relative;box-shadow:var(--shadow-card)}.voice .qm{font-family:var(--en-serif);font-weight:700;font-size:88px;color:var(--vermilion);line-height:.8;position:absolute;top:18px;right:24px;opacity:.16}.voice .who{font-family:var(--jp-serif);font-weight:900;font-size:18px;color:var(--ink);margin:0 0 14px;line-height:1.4;display:flex;align-items:center;gap:10px}.voice .who .dot{width:8px;height:8px;border-radius:50%;background:var(--vermilion)}.voice .who small{font-family:var(--num);font-size:10.5px;font-weight:700;color:var(--ink-3);letter-spacing:.14em;text-transform:uppercase;display:block;margin-top:2px}.voice p{margin:0;font-size:13.5px;line-height:1.95;color:var(--ink-2);font-weight:500;position:relative;z-index:1}.modules{background:var(--cream-2)}.module{display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:center;padding-block:72px;border-bottom:1px dashed var(--rule)}.module>*{min-width:0}.module:last-of-type{border-bottom:0}.module.reverse{grid-template-columns:1.05fr .95fr}.module.reverse .m-body{order:2}.module.reverse .m-shot{order:1}@media(max-width:980px){.module,.module.reverse{grid-template-columns:1fr;gap:40px}.module.reverse .m-body,.module.reverse .m-shot{order:0}}.m-num{display:flex;align-items:flex-end;gap:18px;margin-bottom:18px}.m-num .digit{font-family:var(--en-serif);font-weight:700;font-size:88px;line-height:.8;color:var(--vermilion);letter-spacing:-.02em;font-style:italic}.m-num .lab{font-family:var(--num);font-size:11.5px;font-weight:800;letter-spacing:.22em;color:var(--vermilion);text-transform:uppercase;padding-bottom:8px;display:block}.m-num .lab small{display:block;font-family:var(--jp);font-size:11px;color:var(--ink-3);font-weight:700;letter-spacing:.06em;text-transform:none;margin-top:4px}.m-body h3{margin:0 0 10px;font-family:var(--jp-serif);font-weight:900;font-size:clamp(30px,3.6vw,44px);line-height:1.4;letter-spacing:.005em;color:var(--ink);text-wrap:pretty;word-break:keep-all;word-break:auto-phrase;overflow-wrap:anywhere}.m-body .m-sub{margin:0 0 14px;font-family:var(--jp-serif);font-weight:700;font-size:clamp(15px,1.6vw,18px);line-height:1.6;color:var(--ink-2);letter-spacing:.005em}.m-body .for{display:inline-block;background:var(--ink);color:#fff;padding:5px 12px;border-radius:4px;font-size:11.5px;font-weight:800;letter-spacing:.08em;margin-bottom:18px}.m-body .for-group{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.m-body .for-group .for{margin-bottom:0}.m-body .lead{font-size:16px;line-height:2;color:var(--ink);max-width:54ch;margin:0 0 28px;font-weight:500;word-break:keep-all;word-break:auto-phrase;overflow-wrap:break-word}.m-cases{display:grid;gap:14px}.m-case{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:22px 24px;box-shadow:var(--shadow-card);display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center}@media(max-width:640px){.m-case{grid-template-columns:1fr;gap:14px;padding:20px;text-align:center}}.m-case .m-case-logo,.m-case .m-case-logo-lg{width:180px;max-width:100%;height:88px;object-fit:contain;flex:none;justify-self:center;display:block}@media(max-width:640px){.m-case .m-case-co{justify-content:center}}.m-case .m-case-body{display:flex;flex-direction:column;gap:6px;min-width:0}.m-case .m-case-co{font-family:var(--jp-serif);font-weight:900;font-size:14.5px;color:var(--ink);display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;word-break:keep-all;word-break:auto-phrase;overflow-wrap:break-word}.m-case .m-case-co .dot{width:7px;height:7px;border-radius:50%;background:var(--vermilion);flex:none}.m-case .m-case-co small{font-family:var(--num);font-size:10px;font-weight:700;color:var(--ink-3);letter-spacing:.14em;text-transform:uppercase;margin-left:6px}.m-case p{margin:0;font-size:13.5px;line-height:1.9;color:var(--ink-2);font-weight:500;word-break:keep-all;word-break:auto-phrase;overflow-wrap:break-word}.m-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.m-list li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;background:var(--paper);border:1px solid var(--rule);border-radius:10px;padding:14px 18px;font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.55}.m-list li .tick{width:26px;height:26px;border-radius:6px;background:var(--vermilion);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.m-list li .tick svg{width:14px;height:14px}.m-shot{background:var(--paper);border:1px solid var(--rule);border-radius:22px;padding:18px;box-shadow:var(--shadow-pop);position:relative}.m-shot:before{content:"";position:absolute;inset:-3px;border:1.5px dashed var(--rule-2);border-radius:25px;z-index:-1}.m-shot-img{background:transparent;border:0;box-shadow:none;padding:0;overflow:visible;display:flex;align-items:center;justify-content:center;min-height:620px}.m-shot-img:before{display:none}.m-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;padding:24px 0}.m-phone{display:block;width:auto;max-width:100%;height:auto;max-height:600px;filter:drop-shadow(0 36px 64px rgba(20,16,10,.16)) drop-shadow(0 10px 18px rgba(20,16,10,.08));position:relative;z-index:2;margin-left:18%;animation:phoneBob 9s ease-in-out infinite}.m-pc{position:absolute;top:50%;left:0;width:64%;max-width:560px;height:auto;transform:translateY(-50%) rotate(-3deg);z-index:1;border-radius:14px;filter:drop-shadow(0 28px 48px rgba(20,16,10,.18)) drop-shadow(0 8px 16px rgba(20,16,10,.08));animation:pcDrift 11s ease-in-out infinite}.m-pc.is-wide{width:96%;max-width:760px;left:-6%}@keyframes pcDrift{0%,to{transform:translateY(-50%) rotate(-3deg)}50%{transform:translateY(calc(-50% - 6px)) rotate(-3deg)}}@keyframes phoneBob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.m-float,.m-stat{position:absolute;z-index:2;background:var(--paper);border:1px solid var(--rule);border-radius:16px;box-shadow:0 22px 44px -14px #14100a38,0 6px 14px -4px #14100a14;pointer-events:none;--tilt: 0deg;transform:rotate(var(--tilt));will-change:transform}.m-float{padding:14px 18px 14px 14px;display:flex;align-items:center;gap:12px;animation:floatA 7s ease-in-out infinite}.m-stat{padding:18px 22px;min-width:185px;animation:floatB 8s ease-in-out infinite}.tilt-l{--tilt: -4deg}.tilt-r{--tilt: 4deg}.delay-1{animation-delay:-2.5s}.delay-2{animation-delay:-5s}.float-tl{top:6%;left:-4%}.float-tr{top:6%;right:-4%}.float-bl{bottom:8%;left:-6%}.float-br{bottom:8%;right:-6%}.m-float-ico{width:38px;height:38px;border-radius:10px;flex:none;background:var(--vermilion-soft);color:var(--vermilion);display:flex;align-items:center;justify-content:center}.m-float-ico svg{width:18px;height:18px}.m-float-txt{display:flex;flex-direction:column;gap:3px;line-height:1.15}.m-float-jp{font-family:var(--jp-serif);font-weight:900;font-size:13.5px;color:var(--ink);letter-spacing:.01em;white-space:nowrap}.m-float-en{font-family:var(--num);font-weight:800;font-size:9.5px;color:var(--ink-3);letter-spacing:.2em;text-transform:uppercase}.m-stat-lab{display:block;font-family:var(--jp);font-size:11px;font-weight:800;color:var(--vermilion);letter-spacing:.06em}.m-stat-num{display:block;font-family:var(--num);font-weight:800;font-size:36px;line-height:1;color:var(--ink);letter-spacing:-.02em;margin:6px 0}.m-stat-num small{font-size:.42em;font-weight:800;color:var(--ink-2);margin-left:3px;letter-spacing:0}.m-stat-trend{display:block;font-family:var(--jp);font-size:11px;font-weight:800;color:var(--vermilion);letter-spacing:.02em}.m-stat-trend.down{color:var(--ink-2)}@keyframes floatA{0%,to{transform:rotate(var(--tilt)) translateY(0)}50%{transform:rotate(var(--tilt)) translateY(-10px)}}@keyframes floatB{0%,to{transform:rotate(var(--tilt)) translateY(0)}50%{transform:rotate(var(--tilt)) translateY(8px)}}@media(prefers-reduced-motion:reduce){.m-phone,.m-pc,.m-float,.m-stat{animation:none}}@media(max-width:1100px){.m-float,.m-stat{transform:rotate(var(--tilt)) scale(.9)}.float-tl,.float-tr{top:2%}.float-bl,.float-br{bottom:4%}}@media(max-width:980px){.m-shot-img{min-height:540px}.m-phone{max-height:540px;margin-left:14%}.m-pc{width:60%}.m-pc.is-wide{width:94%;max-width:640px}}@media(max-width:640px){.m-phone{margin-left:0}.m-pc{width:86%;max-width:360px;top:auto;bottom:-6%;left:50%;transform:translate(-58%) rotate(-3deg);opacity:.95;animation:none}.m-pc.is-wide{width:96%;max-width:420px;left:50%}}@media(max-width:640px){.m-float,.m-stat{display:none}}.flow{background:var(--cream)}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}@media(max-width:980px){.flow-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.flow-grid{grid-template-columns:1fr}}.flow-step{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:32px 24px 24px;position:relative;box-shadow:var(--shadow-card)}.flow-step .stepn{position:absolute;top:-22px;left:24px;width:48px;height:48px;border-radius:50%;background:var(--vermilion);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--en-serif);font-weight:700;font-style:italic;font-size:24px;box-shadow:inset 0 0 0 2px #fff,0 0 0 4px var(--cream)}.flow-step .lab{font-family:var(--num);font-size:10.5px;font-weight:800;letter-spacing:.2em;color:var(--vermilion);text-transform:uppercase;margin:18px 0 12px}.flow-step h3{font-family:var(--jp-serif);font-weight:900;font-size:18px;line-height:1.5;margin:0 0 14px;color:var(--ink)}.flow-step p{margin:0;font-size:13px;line-height:1.85;color:var(--ink-2);word-break:keep-all;word-break:auto-phrase;overflow-wrap:break-word}.flow-step .ico{width:48px;height:48px;border-radius:12px;background:var(--vermilion-soft);color:var(--vermilion);display:flex;align-items:center;justify-content:center;margin-top:18px}.flow-step .ico svg{width:24px;height:24px}.faq{background:var(--cream-2)}.faq-list{display:grid;gap:12px;max-width:880px;margin:0 auto}.faq-item{background:var(--paper);border:1px solid var(--rule);border-radius:12px;overflow:hidden;transition:box-shadow .2s ease}.faq-item[open]{box-shadow:var(--shadow-card)}.faq-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:38px 1fr 28px;gap:18px;padding:24px 28px;align-items:center}.faq-item summary::-webkit-details-marker{display:none}.faq-item .q{font-family:var(--en-serif);font-weight:700;font-style:italic;color:var(--vermilion);font-size:30px;line-height:1}.faq-item .ttl{font-family:var(--jp-serif);font-weight:900;font-size:15.5px;line-height:1.55;color:var(--ink);min-width:0;text-wrap:balance}.faq-item .chev{width:28px;height:28px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;color:var(--ink);transition:transform .25s ease,background .2s ease;font-size:14px}.faq-item[open] .chev{transform:rotate(180deg);background:var(--ink);color:#fff}.faq-item .ans{padding:0 28px 24px 84px;display:flex;gap:14px;font-size:14px;line-height:1.95;color:var(--ink-2)}@media(max-width:768px){.faq-item .ans{padding:0 20px 20px}}.faq-item .ans .a{font-family:var(--en-serif);font-weight:700;font-style:italic;color:var(--ink-3);font-size:24px;line-height:1.2;flex:none}.faq-item .ans>div{min-width:0;flex:1}.faq-item .ans p{margin:0;word-break:keep-all;word-break:auto-phrase;overflow-wrap:anywhere}.final-cta{background:radial-gradient(60% 80% at 92% 0%,rgba(255,199,90,.18),transparent 60%),radial-gradient(50% 60% at 0% 100%,rgba(184,28,40,.3),transparent 60%),var(--ink);color:#fff;position:relative;overflow:hidden;padding-block:96px}.final-cta:before{content:"絆";position:absolute;right:-2%;top:-30%;font-family:var(--jp-serif);font-weight:900;font-size:560px;color:#fff;opacity:.04;line-height:.8;pointer-events:none}.final-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:center;position:relative}@media(max-width:880px){.final-grid{grid-template-columns:1fr;gap:40px}}.final-cta .eyebrow{color:#ffc75a}.final-cta h2{font-family:var(--jp-serif);font-weight:900;font-size:clamp(22px,5vw,46px);line-height:1.55;margin:18px 0 22px;color:#fff}.final-cta h2 .em{color:#ffc75a}.final-cta p{font-size:15px;line-height:2;color:#ffffffc7;margin:0 0 36px;max-width:50ch}.final-buttons{display:flex;gap:14px;flex-wrap:wrap}.final-buttons .btn-primary{box-shadow:0 6px 0 var(--vermilion-deep),0 14px 24px -8px #0006}.final-buttons .btn-secondary{background:#fff;color:var(--ink);box-shadow:0 6px #0000002e,0 14px 24px -8px #0006;padding:16px 28px;border-radius:6px;font-weight:900;font-size:14.5px;display:inline-flex;align-items:center;gap:12px}.final-buttons .btn-secondary:hover{background:var(--cream-2)}.final-buttons .btn-secondary .arr{background:var(--ink);color:#fff;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:13px}.final-seal{display:block;width:100%;max-width:340px;height:auto;margin-inline:auto;transform:rotate(-6deg)}footer{background:var(--ink);color:#ffffffc7;padding:64px 0 28px;border-top:6px solid var(--vermilion)}.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:42px;border-bottom:1px solid rgba(255,255,255,.1)}@media(max-width:980px){.foot-top{grid-template-columns:1fr 1fr;gap:36px}}@media(max-width:540px){.foot-top{grid-template-columns:1fr}}.foot-lockup{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:#fff}.foot-mark{height:56px;width:auto;flex:none}.foot-wordmark{display:inline-flex;flex-direction:column;line-height:1}.foot-wordmark .latin{font-family:var(--num, "Inter", system-ui, sans-serif);font-size:11px;font-weight:700;letter-spacing:.42em;color:#ffffffc7;margin-bottom:6px}.foot-wordmark .ja{font-family:var(--jp-serif);font-weight:900;font-size:28px;color:#fff;letter-spacing:.02em}.foot-wordmark .ja .ti{margin-left:2px}.foot-brand p{margin:20px 0 0;font-size:13px;line-height:1.85;color:#ffffff9e;max-width:38ch}.foot-col h4{font-family:var(--num);font-size:11px;font-weight:800;letter-spacing:.22em;color:#ffffff8c;text-transform:uppercase;margin:0 0 18px}.foot-col ul{list-style:none;padding:0;margin:0}.foot-col li{margin-bottom:11px}.foot-col a{font-size:13px;color:#ffffffd9;transition:color .2s ease}.foot-col a:hover{color:#ffc75a}.foot-bot{display:flex;justify-content:space-between;align-items:center;padding-top:24px;flex-wrap:wrap;gap:14px;font-family:var(--num);font-size:11px;letter-spacing:.1em;color:#ffffff80;font-weight:600}.foot-bot a{color:#ffffffb3}.foot-bot .links{display:flex;gap:24px}.foot-corp{padding:32px 0;border-bottom:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:14px}.foot-corp-name{display:flex;align-items:flex-start;gap:22px;flex-wrap:wrap}.foot-corp-name .wm{font-family:var(--num);font-weight:900;letter-spacing:.04em;font-size:26px;color:#fff;line-height:1}.foot-corp-name .ja{font-size:14px;color:#ffffffc7;letter-spacing:.04em;line-height:1.5;align-self:center}.foot-corp-addr{font-size:13px;color:#ffffffb8;line-height:1.85;letter-spacing:.02em}.foot-corp-meta{font-family:var(--num);font-size:11px;letter-spacing:.22em;color:#ffffff80;font-weight:700;text-transform:uppercase;margin-top:4px}@media(max-width:540px){.foot-corp-name .wm{font-size:22px}}.contact{background:var(--bg-tint)}.contact-form{max-width:760px;margin:0 auto;background:#fff;border-radius:var(--r-lg);border:1px solid var(--rule);box-shadow:var(--shadow-card);padding:clamp(28px,4vw,48px);display:grid;gap:24px}.cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:640px){.cf-grid{grid-template-columns:1fr}}.cf-row{display:flex;flex-direction:column;gap:8px}.cf-row-full{grid-column:1/-1}.cf-label{font-size:13.5px;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:10px}.cf-required{background:var(--orange);color:#fff;font-family:var(--num);font-size:10.5px;font-weight:800;letter-spacing:.08em;padding:2px 8px;border-radius:4px}.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form textarea,.cf-select select{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid var(--rule-2);border-radius:10px;padding:13px 16px;font-size:14.5px;line-height:1.6;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--ink-4);font-weight:500}.contact-form input:focus,.contact-form textarea:focus,.cf-select select:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 4px #cc212129;background:#fff}.contact-form input:invalid:not(:placeholder-shown),.contact-form textarea:invalid:not(:placeholder-shown){border-color:var(--red)}.contact-form textarea{resize:vertical;min-height:140px}.cf-select{position:relative}.cf-select:after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);transform:translateY(-70%) rotate(45deg);pointer-events:none}.cf-select select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:42px;cursor:pointer}.cf-consent{display:flex;align-items:flex-start;gap:12px;font-size:13.5px;color:var(--ink-2);line-height:1.7;cursor:pointer;font-weight:500}.cf-consent input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;flex:none;margin-top:2px;border:1.5px solid var(--rule-2);border-radius:5px;background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease;position:relative}.cf-consent input[type=checkbox]:checked{background:var(--orange);border-color:var(--orange)}.cf-consent input[type=checkbox]:checked:after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}.cf-submit-row{display:flex;justify-content:center;margin-top:8px}.cf-submit-row .btn{min-width:min(240px,100%);justify-content:center}.cf-thanks{display:none;background:var(--bg-mint);border:1px solid var(--green);color:var(--ink);border-radius:12px;padding:18px 22px;text-align:center;font-size:14px;line-height:1.7}.cf-thanks.is-on{display:block}.cf-thanks strong{display:block;font-weight:900;color:var(--green);margin-bottom:4px}
