:root{--night:#18181c;--night-soft:#29292f;--signal:#df2033;--signal-deep:#bb1829;--human:#df2033;--human-deep:#bb1829;--paper:#fff;--mist:#e8e8ec;--mist-light:#f5f5f7;--ink:#141416;--ink-muted:#62626a;--white:#fff;--input-border:#85858f;--placeholder:#62626a;--error:#b42318;--success:#176b4d;--font-display:"Zen Kaku Gothic New", sans-serif;--font-body:"Noto Sans JP", sans-serif;--shell:min(1240px, calc(100vw - 48px));--header-height:76px;--radius-sm:12px;--radius-md:16px;--ease-out:cubic-bezier(.16, 1, .3, 1);color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px)}[id]{scroll-margin-top:calc(var(--header-height) + 24px)}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.75;overflow-x:clip}body.menu-open{overflow:hidden}::selection{background:var(--human);color:var(--white)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--mist-light)}::-webkit-scrollbar-thumb{background:var(--night-soft);border:3px solid var(--mist-light);border-radius:999px}a{color:inherit;text-underline-offset:.24em;text-decoration-thickness:1px}button,input,textarea{font:inherit}button,summary,a[href]{touch-action:manipulation;-webkit-tap-highlight-color:#df20332e}button{cursor:pointer}:focus-visible{outline:3px solid var(--signal);outline-offset:4px}.skip-link{z-index:1000;background:var(--white);color:var(--night);transition:transform .18s var(--ease-out);border-radius:8px;padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.shell{width:var(--shell);margin-inline:auto}.section{padding-block:clamp(88px,11vw,168px);position:relative}.section--paper{background:var(--paper)}.section--mist{background:var(--mist-light)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);text-wrap:balance}h2{letter-spacing:-.035em;margin-bottom:28px;font-size:clamp(2.25rem,5vw,4.8rem);font-weight:600;line-height:1.14}h3{letter-spacing:-.02em;margin-bottom:12px;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.35}p{max-width:70ch}.site-header{z-index:100;width:var(--shell);border:1px solid var(--mist);background:var(--white);min-height:68px;color:var(--ink);border-radius:999px;grid-template-columns:auto 1fr;align-items:center;padding:8px 12px 8px 24px;display:grid;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #1414160d}.brand{width:fit-content;min-height:44px;font-family:var(--font-display);align-items:center;gap:11px;font-size:1.05rem;font-weight:600;text-decoration:none;display:inline-flex}.brand__mark{width:34px;height:34px;fill:var(--signal);stroke:currentColor;stroke-linecap:round;stroke-width:2.2px}.site-nav{justify-content:flex-end;align-items:center;gap:clamp(18px,2.2vw,34px);display:flex}.site-nav a{min-height:44px;color:var(--ink-muted);align-items:center;font-size:.9rem;text-decoration:none;transition:color .18s;display:inline-flex}.site-nav a:hover{color:var(--signal-deep)}.site-nav .nav-contact{background:var(--signal);min-height:46px;color:var(--white);border-radius:999px;padding-inline:20px;font-weight:700}.site-nav .nav-contact:hover{background:var(--signal-deep);color:var(--white)}.menu-button{display:none}.button{border-radius:var(--radius-sm);text-align:center;min-height:54px;transition:transform .18s var(--ease-out), background-color .18s ease, color .18s ease, box-shadow .18s ease;border:0;justify-content:center;align-items:center;padding:14px 22px;font-weight:700;line-height:1.4;text-decoration:none;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button--light{background:var(--white);color:var(--night);box-shadow:0 12px 28px #00000038}.button--light:hover{color:var(--signal-deep);box-shadow:0 16px 34px #00000045}.button--human{background:var(--human);width:100%;color:var(--white);box-shadow:0 12px 28px #461c2a38}.button--human:hover{background:var(--human-deep)}.button:disabled{cursor:wait;opacity:.7;transform:none}.button__spinner{border:2px solid #ffffff59;border-top-color:var(--white);border-radius:50%;width:18px;height:18px;margin-left:10px;animation:.7s linear infinite spin;display:none}.button[data-loading=true] .button__spinner{display:block}.text-link{min-height:44px;color:var(--signal-deep);text-underline-offset:.3em;align-items:center;font-weight:700;display:inline-flex}.text-link--on-dark{color:var(--white)}.declaration{border-bottom:1px solid var(--mist)}.declaration__grid{grid-template-columns:1.15fr .85fr;align-items:start;gap:clamp(48px,8vw,132px);display:grid}.declaration h2{margin:0}.declaration__body{color:var(--ink-muted);padding-top:16px;font-size:1.08rem}.declaration__body p+p{margin-top:24px}.conversation-rail{z-index:0;width:2px;position:absolute;top:0;bottom:-80%;left:max(24px,50vw - 620px)}.conversation-rail__track,.conversation-rail__fill{display:block;position:absolute;inset:0}.conversation-rail__track{background:var(--mist)}.conversation-rail__fill{background:linear-gradient(to bottom, var(--signal) 0 52%, var(--human) 85%);transform-origin:top}.concerns__layout{z-index:1;padding-left:clamp(36px,6vw,88px);position:relative}.section-heading{max-width:760px;margin-bottom:clamp(48px,7vw,88px)}.section-heading>p{color:var(--ink-muted);font-size:1.05rem}.section-heading--wide{grid-template-columns:1.35fr .65fr;align-items:end;gap:64px;max-width:none;display:grid}.section-heading--wide h2,.section-heading--wide p{margin-bottom:0}.concern-tool{grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);align-items:stretch;gap:clamp(40px,8vw,120px);display:grid}.concern-tool__choices{flex-direction:column;justify-content:center;display:flex}.concern-choice{border:0;border-bottom:1px solid var(--mist);min-height:62px;color:var(--ink-muted);text-align:left;transition:color .18s ease, padding-left .18s var(--ease-out);background:0 0;grid-template-columns:18px 1fr;align-items:center;gap:16px;padding:12px 8px;display:grid}.concern-choice:hover{color:var(--ink)}.concern-choice[aria-pressed=true]{color:var(--signal-deep);padding-left:20px;font-weight:700}.concern-choice__dot{border:2px solid;border-radius:50%;width:12px;height:12px}.concern-choice[aria-pressed=true] .concern-choice__dot{background:var(--signal);box-shadow:inset 0 0 0 3px var(--paper)}.concern-tool__result{border-radius:var(--radius-md);background:var(--night);min-height:390px;color:var(--white);flex-direction:column;justify-content:center;padding:clamp(34px,5vw,72px);display:flex;position:relative;box-shadow:0 22px 58px #1720332b}.concern-tool__result:before{content:"";background:var(--signal);width:40px;height:2px;position:absolute;top:50%;left:-40px}.concern-tool__service{color:#a9bee3;margin-bottom:24px;font-size:.9rem;font-weight:700}.concern-tool__result h3{max-width:590px;font-size:clamp(1.8rem,3.4vw,3rem)}.concern-tool__result>p:not(.concern-tool__service){color:#d9e2ef;margin-bottom:24px}.concern-tool__result .text-link{width:fit-content;color:var(--white)}.service-list{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;grid-auto-columns:calc(33.3333% - 18.6667px);grid-auto-flow:column;gap:28px;padding-block:8px;display:grid;overflow-x:auto}.service-carousel-controls{justify-content:flex-end;align-items:center;gap:20px;margin:-12px 0 20px;display:flex}.service-carousel-controls[hidden]{display:none}.service-carousel-controls p{color:var(--ink-muted);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.service-carousel-controls>div{gap:10px;display:flex}.service-carousel-controls button{background:var(--white);width:46px;height:46px;color:var(--ink);cursor:pointer;border:1px solid #b9b9c1;border-radius:50%;place-items:center;padding:0;transition:background-color .16s,border-color .16s;display:grid}.service-carousel-controls button:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:var(--white)}.service-carousel-controls button:disabled{opacity:.35;cursor:default}.service-carousel-controls svg{fill:none;stroke:currentColor;stroke-width:1.7px;width:20px;height:20px}.services{padding-block:96px}.services .section-heading h2{font-size:clamp(1.65rem,3.5vw,3.3rem)}.service-row{scroll-snap-align:start;flex-direction:column;gap:16px;min-width:0;display:flex}.service-row__preview{aspect-ratio:4/3;background:var(--white);border-radius:12px;width:100%;display:block;position:relative;overflow:hidden}.service-row__preview img{object-fit:contain;object-position:center;width:100%;height:100%;transition:transform .24s var(--ease-out);display:block}.service-row__preview:hover img{transform:scale(1.025)}.service-row__preview span{background:var(--white);color:var(--ink-muted);border-radius:4px;padding:5px 9px;font-size:11px;position:absolute;bottom:10px;right:10px}.service-row h3 a{text-decoration:none}.service-row h3 a:hover{text-underline-offset:.25em;text-decoration:underline}.service-row h3,.service-row p{margin:0}.service-row h3{font-size:22px;line-height:1.5}.service-row__summary{color:var(--ink-muted);font-size:16px;line-height:1.8}.service-row__price{font-size:14px;font-weight:700;line-height:1.8}.service-row__detail{align-items:center;min-height:44px;margin-top:auto;font-size:14px;display:inline-flex}@media (width<=900px){.service-list{grid-auto-columns:calc(50% - 12px);gap:24px}}@media (width<=560px){.service-list{grid-auto-columns:100%;gap:20px}}.pricing{border-top:1px solid var(--mist);border-bottom:1px solid var(--mist)}.pricing__heading{grid-template-columns:minmax(0,1.15fr) minmax(250px,.55fr);align-items:end;gap:20px 64px;margin-bottom:clamp(44px,6vw,76px);display:grid}.pricing__kicker{color:var(--signal);letter-spacing:.08em;grid-column:1/-1;margin-bottom:0;font-size:.72rem;font-weight:700}.pricing__heading h2,.pricing__heading>p:last-child{margin-bottom:0}.pricing__heading>p:last-child,.pricing__options>div>p,.pricing__external{color:var(--ink-muted)}.pricing__primary{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pricing__primary-item{flex-direction:column;min-height:254px;padding:clamp(24px,3vw,42px);display:flex}.pricing__primary-item:nth-child(2n){border-left:1px solid var(--mist)}.pricing__primary-item:nth-child(n+3){border-top:1px solid var(--mist)}.pricing__primary-item .pricing-plan-status,.pricing-page .price-detail .pricing-plan-status{color:var(--ink);margin:0 0 16px;font-size:1rem;font-weight:700}.pricing__primary-item p{color:var(--ink-muted);margin-bottom:36px;font-size:.9rem;font-weight:700}.pricing__primary-item strong{font-family:var(--font-display);letter-spacing:-.055em;margin-bottom:20px;font-size:clamp(2rem,3vw,3.1rem);font-weight:900;line-height:1}.pricing__primary-item small{font-family:var(--font-body);letter-spacing:0;font-size:.8rem;font-weight:700}.pricing__primary-item span{color:var(--ink-muted);margin-top:auto;font-size:.86rem;line-height:1.8}.pricing__options{grid-template-columns:minmax(240px,.68fr) minmax(0,1.32fr);gap:clamp(40px,8vw,128px);padding-block:clamp(48px,7vw,88px);display:grid}.pricing__options h3{margin-bottom:16px}.pricing__options>div>p{margin-bottom:0}.pricing__option-list{border-top:1px solid var(--mist);margin:0}.pricing__option-list>div{border-bottom:1px solid var(--mist);justify-content:space-between;align-items:center;gap:24px;min-height:59px;display:flex}.pricing__option-list dt{font-weight:700}.pricing__option-list dd{color:var(--signal-deep);text-align:right;margin:0;font-weight:700}.pricing__external{margin-bottom:28px;font-size:.9rem}.pricing__cta{min-height:48px;color:var(--signal-deep);text-underline-offset:.3em;align-items:center;gap:16px;font-weight:700;display:inline-flex}.pricing__cta span{transition:transform .18s var(--ease-out);font-size:1.25rem}.pricing__cta:hover span{transform:translate(4px)}.security{background:var(--night);color:var(--white);overflow:hidden}.security__line{background:linear-gradient(to right, transparent, var(--signal) 28%, var(--human) 72%, transparent);opacity:.62;width:108vw;height:2px;position:absolute;top:50%;left:-4vw;transform:rotate(-4deg)}.security__layout{grid-template-columns:1fr .8fr;align-items:center;gap:clamp(60px,10vw,150px);display:grid;position:relative}.security h2{max-width:800px}.security p{color:#ced9e8;font-size:1.06rem}.security__diagnostic{border-left:2px solid var(--signal);background:#ffffff0f;gap:7px;margin-top:28px;padding:18px 20px;line-height:1.75;display:grid;color:#eef0f4!important;font-size:.93rem!important}.security__diagnostic strong{color:var(--white);font-size:1rem}.security__diagnostic span{color:#ced9e8}.security__check-link{min-height:44px;color:var(--white);text-underline-offset:5px;align-items:center;gap:8px;margin-top:20px;font-weight:700;display:inline-flex}.security__checks{margin:0;padding:0;list-style:none}.security__checks li{border-bottom:1px solid #fff3;grid-template-columns:26px 1fr;align-items:center;gap:16px;min-height:60px;display:grid}.security__checks li span{border:2px solid var(--human);border-radius:50%;width:14px;height:14px}.faq__layout{grid-template-columns:.75fr 1.25fr;gap:clamp(64px,10vw,150px);display:grid}.faq-list{border-top:1px solid var(--mist)}.faq-list details{border-bottom:1px solid var(--mist)}.faq-list summary{min-height:74px;font-family:var(--font-display);cursor:pointer;grid-template-columns:1fr 28px;align-items:center;gap:20px;padding-block:18px;font-size:1.08rem;font-weight:600;list-style:none;display:grid}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{width:28px;height:28px;display:block;position:relative}.faq-list summary span:before,.faq-list summary span:after{content:"";background:var(--signal-deep);width:16px;height:2px;transition:transform .18s var(--ease-out);position:absolute;top:13px;left:6px}.faq-list summary span:after{transform:rotate(90deg)}.faq-list details[open] summary span:after{transform:rotate(0)}.faq-list__answer{grid-template-rows:1fr;display:grid}.faq-list__answer p{color:var(--ink-muted);margin-bottom:24px;padding-right:48px}.contact{background:var(--white);color:var(--ink);border-top:1px solid var(--mist)}.contact .contact__layout{max-width:680px;display:block}.contact__intro{margin-bottom:28px;position:static}.contact__intro p{color:var(--ink)}.contact__intro h2{letter-spacing:0;margin-bottom:12px;font-size:clamp(1.65rem,3vw,2rem);line-height:1.5}.contact__demo-note{margin-top:14px;font-size:1rem}.contact .contact-form{background:var(--white);color:var(--ink);box-shadow:none;border-radius:0;padding:0}.contact-form .button{background:var(--ink);width:auto;min-width:220px;box-shadow:none;border-radius:6px;transform:none}.contact-form .button:hover{background:#343438;transform:none}.contact-form .field__error:empty{display:none}.contact-form__website{margin-bottom:24px}.contact-form .field__help{color:var(--ink);font-size:1rem;line-height:1.8}.contact-form__website .field__help{margin:0 0 12px}@media (width<=560px){.contact .contact__layout{gap:36px}.contact.section{padding-block:56px}.services{padding-block:64px}}@media (prefers-reduced-motion:reduce){.service-row__preview:hover img{transform:none}}.field+.field{margin-top:26px}.field label{margin-bottom:8px;font-weight:700;display:block}.field label span{color:var(--human-deep);margin-left:8px;font-size:.76rem}.field label .optional{color:var(--ink-muted)}.field input,.field textarea{border:1px solid var(--input-border);background:var(--white);width:100%;min-height:50px;color:var(--ink);caret-color:var(--signal);border-radius:10px;padding:12px 14px;transition:border-color .16s,box-shadow .16s;display:block}.field textarea{resize:vertical;min-height:88px}.field input:hover,.field textarea:hover{border-color:var(--signal-deep)}.field input:focus,.field textarea:focus{border-color:var(--signal);box-shadow:0 0 0 3px #df20332e}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--error)}.field__help,.field__error{margin:7px 0 0;font-size:.86rem;line-height:1.55}.field__help{color:var(--ink-muted)}.field__error{min-height:1.35em;color:var(--error);font-weight:500}.contact-form .button{margin-top:32px}.form-status{border-radius:10px;min-height:0;margin-top:20px}.form-status:not(:empty){padding:16px}.form-status[data-state=error]{color:#8f1d14;background:#fff0ee}.form-status[data-state=success]{color:#115940;background:#e7f5ef;flex-direction:column;gap:4px;display:flex}.site-footer{background:var(--night);color:var(--white);padding-block:72px 32px}.site-footer__top{border-bottom:1px solid #ffffff24;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:48px 64px;padding-bottom:48px;display:grid}.site-footer__brand p{color:#c8d4e3;margin:18px 0 24px;font-size:14px;line-height:1.8}.site-footer__cta{background:var(--signal);min-height:48px;color:var(--white);border-radius:999px;align-items:center;gap:10px;padding:0 22px;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .18s;display:inline-flex}.site-footer__cta:hover{background:var(--signal-deep)}.site-footer__nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}.site-footer__heading{color:#9a9aa3;letter-spacing:.08em;margin:0 0 10px;font-size:12px;font-weight:700}.site-footer__nav ul{margin:0;padding:0;list-style:none}.site-footer__nav a{min-height:40px;color:var(--white);align-items:center;font-size:14px;text-decoration:none;display:inline-flex}.site-footer__nav a:hover{text-underline-offset:5px;text-decoration:underline}.site-footer__bottom{color:#9a9aa3;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:24px;display:flex}.site-footer small{font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){:root{--shell:min(100% - 36px, 720px);--header-height:68px}.site-header{grid-template-columns:1fr auto;padding-inline:18px}.menu-button{min-height:44px;color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:8px;display:inline-flex}.menu-button__label{font-size:.82rem}.menu-button__lines,.menu-button__lines:before,.menu-button__lines:after{width:22px;height:2px;transition:transform .18s var(--ease-out), opacity .18s ease;background:currentColor;display:block}.menu-button__lines{position:relative}.menu-button__lines:before,.menu-button__lines:after{content:"";position:absolute;left:0}.menu-button__lines:before{top:-7px}.menu-button__lines:after{top:7px}.menu-button[aria-expanded=true] .menu-button__lines{background:0 0}.menu-button[aria-expanded=true] .menu-button__lines:before{top:0;transform:rotate(45deg)}.menu-button[aria-expanded=true] .menu-button__lines:after{top:0;transform:rotate(-45deg)}.site-nav{border:1px solid var(--mist);background:var(--white);overscroll-behavior:contain;border-radius:18px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 110px);padding:18px;display:none;position:absolute;inset:calc(100% + 10px) 0 auto;overflow-y:auto;box-shadow:0 16px 32px #1414161a}.menu-open .site-nav{display:flex}.site-nav a{border-bottom:1px solid var(--mist);min-height:54px}.site-nav .nav-contact{border-bottom:0;justify-content:center;margin-top:16px}.declaration__grid,.section-heading--wide,.security__layout,.faq__layout,.contact__layout{grid-template-columns:1fr}.declaration__grid,.security__layout,.faq__layout,.contact__layout{gap:54px}.section-heading--wide{gap:20px}.pricing__heading,.pricing__options{grid-template-columns:1fr}.pricing__heading{gap:16px}.pricing__options{gap:38px}.concern-tool{grid-template-columns:1fr;gap:48px}.concern-tool__result:before{width:2px;height:48px;top:-48px;left:30px}.security__line{top:54%}.contact__intro{position:static}}@media (width<=560px){:root{--shell:calc(100% - 32px)}.pricing__primary{grid-template-columns:1fr}.pricing__primary-item{min-height:0;padding:28px 0}.pricing__primary-item+.pricing__primary-item{border-top:1px solid var(--mist);border-left:0}.pricing__primary-item p{margin-bottom:18px}.pricing__primary-item strong{margin-bottom:14px}.pricing__option-list>div{flex-direction:column;align-items:flex-start;gap:5px;min-height:0;padding-block:16px}.pricing__option-list dd{text-align:left}.section{padding-block:84px}h2{font-size:clamp(2.05rem,11vw,3.1rem)}.brand{font-size:.98rem}.brand__mark{width:30px;height:30px}.menu-button__label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.conversation-rail{left:16px}.concerns__layout{padding-left:18px}.concern-tool__result{min-height:380px;padding:30px 24px}.concern-choice{min-height:66px}.faq-list summary{min-height:82px}.faq-list__answer p{padding-right:0}.contact-form{padding:26px 18px}.site-footer__top{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.conversation-rail__fill{transform:scaleY(1)!important}.button,.site-nav a,.menu-button__lines,.menu-button__lines:before,.menu-button__lines:after,.concern-choice,.faq-list summary span:before,.faq-list summary span:after{transition:none}.button:hover{transform:none}.button__spinner{animation:none}}.page-inner #main{padding-top:128px;padding-bottom:96px}.page-breadcrumb{color:var(--ink-muted);align-items:center;gap:14px;margin-bottom:24px;font-size:13px;display:flex}.page-breadcrumb a{align-items:center;min-height:44px;display:inline-flex}.site-nav [aria-current]{color:var(--signal-deep);text-underline-offset:6px;text-decoration:underline}input::placeholder,textarea::placeholder{color:var(--placeholder);opacity:1}@media (width<=900px){.page-inner #main{padding-top:116px;padding-bottom:72px}}@media (width<=560px){.site-footer__nav{grid-template-columns:1fr 1fr}.site-footer__nav>div:first-child{grid-column:1/-1}}.brand__wordmark[data-astro-cid-6bctqxxv]{width:180px;height:auto;display:block}@media (width<=640px){.brand__wordmark[data-astro-cid-6bctqxxv]{width:150px}}
