:root{--home-paper: oklch(97.6% .004 95);--home-paper-2: oklch(94.8% .009 85);--home-panel: var(--dark, #08131f);--home-panel-2: oklch(21% .028 235);--home-ink: var(--ink, #101820);--home-ink-soft: var(--ink-soft, #55606c);--home-ink-light: oklch(95% .006 220);--home-ink-light-soft: oklch(81% .012 220);--home-rule: oklch(30% .02 235 / .16);--home-rule-strong: oklch(30% .02 235 / .36);--home-rule-light: oklch(100% 0 0 / .18);--home-rule-light-strong: oklch(100% 0 0 / .34);--home-accent: var(--brand-accessible, #006f80);--home-accent-light: oklch(80% .09 205);--home-focus: var(--brand, #00a6bf);--home-invalid: oklch(52% .17 28);--home-shade-a: oklch(11% .03 235 / .92);--home-shade-b: oklch(11% .03 235 / .5);--home-shade-mobile: oklch(11% .03 235 / .72);--home-font-display: var(--font-heading-jp, "Noto Serif JP", serif);--home-font-body: var(--font-body-jp, "Noto Sans JP", sans-serif);--home-font-label: "Manrope", var(--font-body-jp, sans-serif);--home-text-xs: .72rem;--home-text-sm: .86rem;--home-text-md: 1rem;--home-text-lg: 1.2rem;--home-text-xl: 1.5rem;--home-text-2xl: clamp(1.9rem, 2.4vw, 2.4rem);--home-text-3xl: clamp(2.15rem, 3.3vw, 3.4rem);--home-text-display: clamp(2.5rem, 4.4vw + .6rem, 5rem);--home-space-xs: .5rem;--home-space-sm: .75rem;--home-space-md: 1rem;--home-space-lg: 1.5rem;--home-space-xl: 2.5rem;--home-space-2xl: 4rem;--home-space-3xl: clamp(4.5rem, 7vw, 6.5rem);--home-space-4xl: clamp(6rem, 11vw, 10rem);--home-ease-out: cubic-bezier(.16, 1, .3, 1);--home-ease-in-out: cubic-bezier(.65, 0, .35, 1);--home-dur-micro: .12s;--home-dur-short: .22s;--home-dur-long: .42s;--home-radius: 2px;--home-header: var(--renewal-header-height, 74px);--home-measure: 36rem}html:has(.home-2026),body:has(.home-2026){overflow-x:clip}body:has(.home-2026){background:var(--home-paper);color:var(--home-ink)}.home-2026 .legacy-home{display:none!important}.home-2026 .mobile-break{display:none}.home-2026 .anchor-alias{position:relative;top:calc(-1 * var(--home-header) - 16px);display:block;width:0;height:0;visibility:hidden}.home-2026 [id]{scroll-margin-top:calc(var(--home-header) + 16px)}.home-2026 :is(a,button,summary,input,textarea,select):focus-visible{outline:2px solid var(--home-focus);outline-offset:3px}.home-2026 img{display:block;max-width:100%}.home-2026 h2{margin:0;font-family:var(--home-font-display);font-size:var(--home-text-3xl);font-weight:500;line-height:1.26;letter-spacing:0;color:inherit;text-wrap:balance;overflow-wrap:anywhere;min-width:0}.home-2026 h2>span{display:block}.home-2026 h3{margin:0;font-family:var(--home-font-display);font-weight:500;line-height:1.4;letter-spacing:0;color:inherit;overflow-wrap:anywhere}:where(.home-2026 main) p{margin:0;line-height:1.95;color:var(--home-ink-soft)}:where(.home-2026) h2+p{max-width:var(--home-measure);margin-top:var(--home-space-lg)}.home-label{margin:0;font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:700;letter-spacing:.04em;color:var(--home-accent)}.home-label--light{color:var(--home-accent-light)}.home-textlink{display:inline-flex;align-items:center;gap:var(--home-space-xs);min-height:44px;font-size:var(--home-text-sm);font-weight:700;color:var(--home-accent);white-space:nowrap;text-decoration:none}.home-textlink span{display:inline-block;transition:transform var(--home-dur-short) var(--home-ease-out)}.home-textlink:hover span,.home-textlink:focus-visible span,a:hover>.home-textlink span,a:focus-visible>.home-textlink span,a:hover .home-case__body .home-textlink span{transform:translate(4px)}.home-textlink--light{color:var(--home-ink-light)}.home-2026 .button{min-height:52px;padding:0 28px;border-radius:var(--home-radius);font-weight:700;letter-spacing:.02em;box-shadow:none;transition:background-color var(--home-dur-short) var(--home-ease-out),transform var(--home-dur-micro) var(--home-ease-out)}.home-2026 .button:hover{transform:translateY(-1px)}.home-2026 .button:active{transform:translateY(0)}.home-2026 .button:disabled,.home-2026 .button[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.home-hero{position:relative;isolation:isolate;display:grid;align-items:end;min-height:min(86svh,820px);overflow:hidden;color:var(--home-ink-light);background:var(--home-panel)}.home-hero__media{position:absolute;inset:0;z-index:-2}.home-hero__media picture,.home-hero__media img{width:100%;height:100%}.home-hero__media img{object-fit:cover;object-position:center;filter:saturate(.86) contrast(1.04)}.home-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--home-shade-a) 0%,var(--home-shade-b) 100%)}.home-hero__inner{padding-top:clamp(80px,9svh,112px);padding-bottom:clamp(112px,15svh,168px)}.home-hero__copy{max-width:58rem}.home-hero__eyebrow,.home-contact__eyebrow{display:flex;align-items:center;gap:var(--home-space-md);margin:0;font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--home-accent-light)}.home-hero__eyebrow:before,.home-contact__eyebrow:before{content:"";flex:0 0 36px;height:1px;background:currentColor;opacity:.7}.home-hero__title{margin:var(--home-space-lg) 0 0;font-family:var(--home-font-display);font-size:var(--home-text-display);font-weight:500;line-height:1.12;letter-spacing:0;color:var(--home-ink-light);text-wrap:balance;overflow-wrap:anywhere;min-width:0}.home-hero__line{display:block}.home-hero__line--accent{color:var(--home-accent-light)}.home-hero__lead{max-width:var(--home-measure);margin:var(--home-space-lg) 0 0;font-size:clamp(.98rem,1.1vw,1.08rem);line-height:1.95;color:var(--home-ink-light-soft)}.home-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--home-space-lg) var(--home-space-xl);margin-top:var(--home-space-xl)}.home-2026 main>section{position:relative}.home-services{padding:clamp(88px,9vw,128px) 0 var(--home-space-4xl);background:var(--home-paper)}.home-process{padding:var(--home-space-4xl) 0;background:var(--home-paper-2)}.home-cases{padding:var(--home-space-4xl) 0 var(--home-space-3xl);background:var(--home-paper)}.home-keep{padding:var(--home-space-4xl) 0;color:var(--home-ink-light);background:var(--home-panel)}.home-faq{padding:var(--home-space-3xl) 0;background:var(--home-paper)}.home-contact{padding:var(--home-space-4xl) 0 clamp(72px,8vw,112px);background:var(--home-paper-2)}.home-services__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--home-space-2xl) clamp(40px,6vw,96px);align-items:start}.home-services__text>.home-textlink{margin-top:var(--home-space-md)}.home-services__list{list-style:none;margin:var(--home-space-xl) 0 0;padding:0;border-top:1px solid var(--home-rule)}.home-services__list li{border-bottom:1px solid var(--home-rule)}.home-service{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 24px;gap:0 var(--home-space-md);align-items:start;padding:var(--home-space-lg) 0;color:inherit;text-decoration:none}.home-service__num{padding-top:6px;font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:700;color:var(--home-accent)}.home-service h3{font-size:var(--home-text-lg);transition:color var(--home-dur-short) var(--home-ease-out)}.home-service p{max-width:30rem;margin-top:var(--home-space-xs);font-size:var(--home-text-sm);line-height:1.8}.home-service small{display:block;margin-top:var(--home-space-sm);font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:600;color:var(--home-ink-soft)}.home-service__arrow{padding-top:4px;color:var(--home-accent);opacity:0;transform:translate(-4px);transition:opacity var(--home-dur-short) var(--home-ease-out),transform var(--home-dur-short) var(--home-ease-out)}.home-service:is(:hover,:focus-visible,.is-active) h3{color:var(--home-accent)}.home-service:is(:hover,:focus-visible,.is-active) .home-service__arrow{opacity:1;transform:none}.home-service:focus-visible{outline-offset:-2px}.home-services__figure{position:sticky;top:calc(var(--home-header) + 32px);margin:0}.home-services__frame{position:relative;aspect-ratio:4 / 3;overflow:hidden;background:var(--home-panel-2)}.home-services__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:saturate(.92) contrast(1.02);transition:opacity var(--home-dur-long) var(--home-ease-in-out)}.home-services__frame img.is-active{opacity:1}.home-services__figure figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:var(--home-space-md);margin-top:var(--home-space-sm);padding-top:var(--home-space-sm);border-top:1px solid var(--home-rule);font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:700;color:var(--home-ink-soft)}.home-services__figure figcaption strong{font-family:var(--home-font-body);font-weight:700;color:var(--home-ink)}.home-process__head{max-width:52rem}.home-process__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--home-space-2xl) clamp(40px,7vw,120px);align-items:start;margin-top:var(--home-space-3xl)}.home-process__steps{list-style:none;margin:0;padding:0;border-left:1px solid var(--home-rule-strong)}.home-process__steps li{position:relative;padding:var(--home-space-lg) 0 var(--home-space-lg) clamp(24px,3vw,40px)}.home-process__steps li+li{border-top:1px solid var(--home-rule)}.home-process__steps li:before{content:"";position:absolute;left:-4px;top:calc(var(--home-space-lg) + 8px);width:7px;height:7px;background:var(--home-accent)}.home-process__num{font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:700;letter-spacing:.04em;color:var(--home-accent)}.home-process__steps h3{margin-top:var(--home-space-xs);font-size:var(--home-text-xl)}.home-process__steps p{max-width:30rem;margin-top:var(--home-space-xs);font-size:var(--home-text-sm);line-height:1.85}.home-process__aside{position:sticky;top:calc(var(--home-header) + 32px);padding-top:var(--home-space-lg);border-top:1px solid var(--home-rule-strong)}.home-process__pull{font-family:var(--home-font-display);font-size:var(--home-text-2xl);font-weight:500;line-height:1.45;color:var(--home-ink);text-wrap:balance}.home-process__aside p+p{max-width:26rem;margin-top:var(--home-space-lg)}.home-cases__head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--home-space-lg) clamp(40px,6vw,96px);align-items:end}.home-cases__head p{max-width:var(--home-measure)}.home-cases__head .home-textlink{margin-top:var(--home-space-sm)}.home-cases__featured{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--home-space-2xl) clamp(20px,2.4vw,32px);margin-top:var(--home-space-3xl)}.home-case:nth-child(1){grid-column:1 / 8}.home-case:nth-child(2){grid-column:8 / 13;align-self:end}.home-case:nth-child(3){grid-column:4 / 13}.home-case__link{display:block;color:inherit;text-decoration:none}.home-case__media,.home-work__media,.home-offer__media{margin:0;aspect-ratio:16 / 9;overflow:hidden;background:var(--home-panel-2)}.home-case__media img,.home-work__media img,.home-offer__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.94) contrast(1.02);transition:transform var(--home-dur-long) var(--home-ease-out)}.home-case__link:hover img,.home-case__link:focus-visible img,.home-work:hover img,.home-work:focus-visible img{transform:translateY(2px)}.home-case__body{margin-top:var(--home-space-md)}.home-case__body h3{margin-top:var(--home-space-xs);font-size:var(--home-text-xl);transition:color var(--home-dur-short) var(--home-ease-out)}.home-case:nth-child(1) .home-case__body h3{font-size:var(--home-text-2xl)}.home-case__body p+p{max-width:30rem;margin-top:var(--home-space-xs);font-size:var(--home-text-sm);line-height:1.85}.home-case__body .home-textlink{margin-top:var(--home-space-xs)}.home-case__link:hover h3,.home-case__link:focus-visible h3{color:var(--home-accent)}.home-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--home-space-xl) clamp(20px,2.4vw,32px);list-style:none;margin:var(--home-space-3xl) 0 0;padding:var(--home-space-xl) 0 0;border-top:1px solid var(--home-rule)}.home-work{display:block;color:inherit;text-decoration:none}.home-work .home-label{margin-top:var(--home-space-sm)}.home-work h3{margin-top:4px;font-size:var(--home-text-md);transition:color var(--home-dur-short) var(--home-ease-out)}.home-work>span{display:block;margin-top:4px;font-size:var(--home-text-sm);line-height:1.7;color:var(--home-ink-soft)}.home-work:hover h3,.home-work:focus-visible h3{color:var(--home-accent)}.home-keep__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--home-space-2xl) clamp(40px,6vw,96px);align-items:start}.home-keep__text{position:sticky;top:calc(var(--home-header) + 32px)}.home-keep p{color:var(--home-ink-light-soft)}.home-keep__flow{display:flex;flex-wrap:wrap;align-items:center;gap:var(--home-space-sm) var(--home-space-md);max-width:none;margin-top:var(--home-space-xl);padding-top:var(--home-space-lg);border-top:1px solid var(--home-rule-light);font-family:var(--home-font-display);font-size:var(--home-text-lg);line-height:1.4;color:var(--home-ink-light)}.home-keep__flow i{font-style:normal;font-size:var(--home-text-sm);color:var(--home-accent-light)}.home-keep__pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--home-space-2xl) clamp(24px,3vw,40px)}.home-offer{min-width:0}.home-offer .home-label{margin-top:var(--home-space-lg)}.home-offer h3{margin-top:var(--home-space-xs);font-size:var(--home-text-2xl)}.home-offer__purpose{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:var(--home-space-md);align-items:baseline;margin-top:var(--home-space-lg);padding:var(--home-space-sm) 0;border-top:1px solid var(--home-rule-light);border-bottom:1px solid var(--home-rule-light);font-size:var(--home-text-sm);font-weight:700;line-height:1.7;color:var(--home-ink-light)}.home-offer__purpose span{font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:700;color:var(--home-accent-light)}.home-offer>p:not(.home-label):not(.home-offer__purpose){max-width:30rem;margin-top:var(--home-space-md);font-size:var(--home-text-sm);line-height:1.85}.home-offer .home-textlink{margin-top:var(--home-space-sm)}.home-faq__grid{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:var(--home-space-xl) clamp(40px,6vw,96px);align-items:start}.home-faq__text{position:sticky;top:calc(var(--home-header) + 32px)}.home-faq__text .home-textlink{margin-top:var(--home-space-sm)}.home-faq__list{border-top:1px solid var(--home-rule-strong)}.home-faq__item{border-bottom:1px solid var(--home-rule)}.home-faq__item summary{position:relative;list-style:none;padding:var(--home-space-lg) 44px var(--home-space-lg) 0;font-size:var(--home-text-md);font-weight:700;line-height:1.7;color:var(--home-ink);cursor:pointer;transition:color var(--home-dur-short) var(--home-ease-out)}.home-faq__item summary::-webkit-details-marker{display:none}.home-faq__item summary:after{content:"+";position:absolute;right:4px;top:calc(var(--home-space-lg) - 2px);font-family:var(--home-font-label);font-size:var(--home-text-xl);font-weight:300;line-height:1;color:var(--home-accent);transition:transform var(--home-dur-short) var(--home-ease-in-out)}.home-faq__item[open] summary:after{transform:rotate(45deg)}.home-faq__item summary:hover{color:var(--home-accent)}.home-faq__item summary:focus-visible{outline-offset:-2px}.home-faq__item p{max-width:38rem;padding:0 0 var(--home-space-lg);font-size:var(--home-text-sm);line-height:1.9}.home-contact__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--home-space-2xl) clamp(40px,7vw,120px);align-items:start}.home-contact__eyebrow{color:var(--home-accent)}.home-contact__text h2{margin-top:var(--home-space-lg)}.home-contact__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:var(--home-space-xl) 0 0;padding:0;border-top:1px solid var(--home-rule-strong)}.home-contact__facts li{display:flex;flex-direction:column;gap:6px;padding:var(--home-space-sm) var(--home-space-md) 0 0;font-size:var(--home-text-sm);font-weight:700;line-height:1.5;color:var(--home-ink)}.home-contact__facts li+li{padding-left:var(--home-space-md);border-left:1px solid var(--home-rule)}.home-contact__facts small{font-family:var(--home-font-label);font-size:var(--home-text-xs);font-weight:700;color:var(--home-accent)}.home-contact__text .home-textlink{margin-top:var(--home-space-lg)}.home-contact__form .contact-form{max-width:none;margin:0;gap:var(--home-space-lg)}.home-contact__form .contact-form__label{font-size:var(--home-text-sm)}.home-contact__form :is(.contact-form__input,.contact-form__textarea,.contact-form__select){padding:var(--home-space-sm) 0;border-width:0 0 1px;border-color:var(--home-rule-strong);border-radius:0;background:transparent;font-size:var(--home-text-md)}.home-contact__form :is(.contact-form__input,.contact-form__textarea,.contact-form__select):focus-visible{outline:2px solid var(--home-focus);outline-offset:4px;box-shadow:none;border-color:var(--home-accent)}.home-contact__form :is(.contact-form__input,.contact-form__textarea,.contact-form__select):focus:not(:focus-visible){box-shadow:none;border-color:var(--home-accent)}.home-contact__form :is(.contact-form__input,.contact-form__textarea)::placeholder{color:var(--home-ink-soft);opacity:.8}.home-contact__form :is(.contact-form__input,.contact-form__textarea):disabled{opacity:.55;cursor:not-allowed}.home-contact__form :is(.contact-form__input,.contact-form__textarea):user-invalid{border-color:var(--home-invalid)}.home-contact__form .contact-form__submit{margin-top:var(--home-space-xs)}.home-contact__form .contact-form__note{color:var(--home-ink-soft)}body:not(.home-hero-passed):has(.home-2026) .floating-contact{opacity:0;visibility:hidden;pointer-events:none}@media(max-width:1100px){.home-case:nth-child(3){grid-column:3 / 13}}@media(max-width:900px){.home-services__grid,.home-process__grid,.home-cases__head,.home-keep__grid,.home-faq__grid,.home-contact__grid{grid-template-columns:minmax(0,1fr)}.home-services__figure,.home-process__aside,.home-keep__text,.home-faq__text{position:static}.home-services__figure{order:-1}.home-services__frame{aspect-ratio:16 / 10}.home-case:nth-child(1),.home-case:nth-child(2),.home-case:nth-child(3){grid-column:1 / -1}.home-works{grid-template-columns:repeat(2,minmax(0,1fr))}.home-keep__pair{grid-template-columns:minmax(0,1fr)}}@media(max-width:720px){.home-2026 .mobile-break{display:inline}.home-hero{min-height:0}.home-hero:before{background:var(--home-shade-mobile)}.home-hero__inner{padding-top:72px;padding-bottom:96px}.home-hero__title{font-size:clamp(2.3rem,10.4vw,3rem);line-height:1.16}.home-hero__lead{font-size:.94rem;line-height:1.85}.home-hero__actions{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--home-space-md)}.home-hero__actions .home-textlink{justify-content:flex-start}.home-2026 h2{font-size:clamp(1.9rem,8.4vw,2.5rem)}.home-services{padding-top:72px}.home-service{grid-template-columns:34px minmax(0,1fr) 20px;padding:var(--home-space-lg) 0}.home-process__steps li{padding-left:var(--home-space-lg)}.home-works{grid-template-columns:minmax(0,1fr);gap:var(--home-space-xl)}.home-keep__flow{font-size:var(--home-text-md)}.home-offer__purpose{grid-template-columns:5.6rem minmax(0,1fr)}.home-contact__facts{grid-template-columns:minmax(0,1fr)}.home-contact__facts li{flex-direction:row;align-items:baseline;gap:var(--home-space-md);padding:var(--home-space-sm) 0;border-bottom:1px solid var(--home-rule)}.home-contact__facts li+li{padding-left:0;border-left:0}.home-contact__facts small{flex:0 0 2rem}}@media(max-width:400px){.home-hero__eyebrow{letter-spacing:.08em}.home-hero__eyebrow:before{flex-basis:20px}}@media(prefers-reduced-motion:reduce){.home-2026 .button,.home-textlink span,.home-service h3,.home-service__arrow,.home-services__frame img,.home-case__media img,.home-work__media img,.home-offer__media img,.home-faq__item summary,.home-faq__item summary:after{transition:none!important;transform:none!important}.home-services__frame img{opacity:0}.home-services__frame img.is-active{opacity:1}}
