.p-sub-hero{position:relative;overflow:hidden;padding:calc(var(--space-24) + 64px) var(--container-pad) var(--space-16);background:radial-gradient(100% 80% at 85% 0%,rgba(28,110,92,.35),transparent 60%),linear-gradient(180deg,#0b2e24,#0e3b2e);color:var(--color-base)}.p-sub-hero__inner{max-width:var(--container-max);margin-inline:auto}.p-sub-hero__watermark{position:absolute;right:-.04em;bottom:-.12em;font-family:var(--font-serif-en);font-style:italic;font-size:clamp(4rem,12vw,9rem);line-height:1;color:#f7f6f20f;pointer-events:none;-webkit-user-select:none;user-select:none}.p-sub-hero__title{font-size:var(--fs-h1);letter-spacing:.12em;color:var(--color-base);word-break:keep-all}@media(max-width:768px){.p-sub-hero__title{font-size:var(--fs-h2);letter-spacing:.1em}}.p-sub-hero__lead{margin-top:var(--space-6);max-width:40em;font-family:var(--font-serif-jp);font-size:var(--fs-body);line-height:2.1;letter-spacing:.06em;color:#f7f6f2d1}.c-breadcrumb{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-12);font-family:var(--font-serif-en);font-size:var(--fs-caption);letter-spacing:.12em;color:#f7f6f28c}.c-breadcrumb a{transition:color var(--dur-fast) var(--ease-out)}.c-breadcrumb a:hover{color:var(--color-base)}.c-breadcrumb__sep{color:#f7f6f259}.p-sub-main{background:var(--color-base)}.p-sub-section{padding:var(--section-pad-y) var(--container-pad)}.p-sub-section--tint{background:var(--color-base-dark)}.p-sub-section__inner{max-width:880px;margin-inline:auto}.p-sub-section__inner--wide{max-width:var(--container-max);margin-inline:auto}.p-sub-section .c-heading{color:var(--color-primary);margin-bottom:var(--space-12)}.p-sub-body{font-family:var(--font-serif-jp);line-height:2.2;letter-spacing:.05em;color:var(--color-ink)}.p-sub-body p+p{margin-top:var(--space-6)}.p-sub-note{margin-top:var(--space-8);font-size:var(--fs-small);line-height:2;color:var(--color-ink-60)}.c-deflist{border-top:1px solid var(--color-line)}.c-deflist>div{display:grid;grid-template-columns:10em 1fr;gap:var(--space-4);padding:var(--space-6) var(--space-2);border-bottom:1px solid var(--color-line)}.c-deflist dt{font-family:var(--font-serif-jp);letter-spacing:.08em;color:var(--color-ink-60)}.c-deflist dd{font-family:var(--font-serif-jp);letter-spacing:.04em}@media(max-width:768px){.c-deflist>div{grid-template-columns:1fr;gap:var(--space-2)}}.c-history{position:relative;padding-left:var(--space-8);border-left:1px solid var(--color-accent)}.c-history li+li{margin-top:var(--space-8)}.c-history__year{display:block;font-family:var(--font-serif-en);font-style:italic;font-size:1.25rem;letter-spacing:.1em;color:var(--color-primary-60)}.c-history__event{margin-top:var(--space-2);font-family:var(--font-serif-jp);letter-spacing:.06em}.c-profile__name{font-family:var(--font-serif-jp);font-size:var(--fs-h3);letter-spacing:.14em;color:var(--color-primary)}.c-profile__role{margin-left:var(--space-4);font-family:var(--font-serif-en);font-style:italic;font-size:.875rem;letter-spacing:.16em;color:var(--color-ink-30)}.c-profile__body{margin-top:var(--space-6)}.c-svc{display:grid;grid-template-columns:minmax(0,480px) 1fr;gap:var(--space-12);align-items:center}.c-svc+.c-svc{margin-top:var(--space-24)}.c-svc:nth-child(2n){direction:rtl}.c-svc:nth-child(2n)>*{direction:ltr}.c-svc__figure{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-card)}.c-svc__num{font-family:var(--font-serif-en);font-style:italic;font-size:2.5rem;color:var(--color-primary-60)}.c-svc__title{margin-top:var(--space-2);font-size:var(--fs-h2);letter-spacing:.1em;color:var(--color-primary)}.c-svc__desc{margin-top:var(--space-6);font-family:var(--font-serif-jp);line-height:2.2;color:var(--color-ink-60)}@media(max-width:768px){.c-svc{grid-template-columns:1fr;gap:var(--space-6)}}.c-checklist li{position:relative;padding:var(--space-4) 0 var(--space-4) var(--space-8);border-bottom:1px solid var(--color-line);font-family:var(--font-serif-jp);letter-spacing:.06em}.c-checklist li:before{content:"";position:absolute;left:var(--space-2);top:50%;width:14px;height:1px;background:var(--color-accent)}.p-sub-cta{padding:var(--section-pad-y) var(--container-pad);background:linear-gradient(180deg,#0b2e24e6,#081f19f0),url(/assets/bg_cta@2x-DT1Rl-Wv.webp) center / cover no-repeat;text-align:center;color:var(--color-base)}.p-sub-cta__heading{font-size:var(--fs-h2);letter-spacing:.1em;color:var(--color-base);word-break:keep-all}.p-sub-cta .c-button{margin-top:var(--space-8)}.c-contactlist{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--grid-gap)}.c-contactcard{padding:var(--space-8);background:var(--color-surface);border-top:2px solid var(--color-accent);box-shadow:var(--shadow-card);border-radius:var(--radius-sm)}.c-contactcard__label{font-family:var(--font-serif-en);font-style:italic;font-size:.875rem;letter-spacing:.18em;color:var(--color-ink-30)}.c-contactcard__value{margin-top:var(--space-3);font-family:var(--font-serif-jp);font-size:var(--fs-h3);letter-spacing:.06em;color:var(--color-primary);word-break:break-all}.c-contactcard__note{margin-top:var(--space-3);font-size:var(--fs-caption);color:var(--color-ink-60)}.p-sub-legal{padding:var(--space-12) var(--container-pad);background:var(--color-base-dark)}.p-sub-legal p{max-width:880px;margin-inline:auto;font-size:var(--fs-small);line-height:2.1;color:var(--color-ink-60)}.p-sub-body h2{margin:var(--space-12) 0 var(--space-4);font-size:var(--fs-h3);letter-spacing:.08em;color:var(--color-primary)}.p-sub-body ul{margin-top:var(--space-4);padding-left:1.2em;list-style:disc}.p-sub-body ul li{line-height:2.1}.p-sub-hero{padding-top:calc(var(--space-16) + 72px);padding-bottom:calc(var(--space-24) + var(--space-16))}.p-sub-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(201,168,106,.45),transparent)}.p-sub-hero__inner{display:flex;flex-direction:column;min-height:30vh}.p-sub-hero__inner .c-breadcrumb{order:-1;margin:0 0 var(--space-16)}.p-sub-hero__inner .c-label{margin-top:auto}.p-sub-hero__title{font-size:clamp(2.25rem,4.5vw,3.5rem);line-height:1.4}.p-sub-hero__watermark{font-size:clamp(6rem,17vw,13rem);bottom:-.14em;color:#f7f6f20e}.p-sub-hero+.p-sub-section{padding-top:0;margin-top:calc(-1 * var(--space-24));position:relative;z-index:1}.p-sub-hero+.p-sub-section>.p-sub-section__inner,.p-sub-hero+.p-sub-section>.p-sub-section__inner--wide{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:clamp(2rem,5vw,4.5rem)}.p-sub-hero+.p-sub-section .c-contactcard{box-shadow:none;border:1px solid var(--color-line);border-top:2px solid var(--color-accent)}.p-sub-section .c-heading{font-size:clamp(1.625rem,2.6vw,2.25rem);padding-left:var(--space-6);border-left:2px solid var(--color-accent);line-height:1.5}.c-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--grid-gap);counter-reset:check}.c-checklist li{counter-increment:check;position:relative;padding:var(--space-6) var(--space-12) var(--space-6) var(--space-6);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}.c-checklist li:before{content:counter(check,decimal-leading-zero);position:absolute;top:var(--space-4);right:var(--space-4);left:auto;width:auto;height:auto;background:none;font-family:var(--font-serif-en);font-style:italic;font-size:1.125rem;line-height:1;color:var(--color-primary-60)}.c-deflist>div{transition:background-color var(--dur-fast) var(--ease-out)}.c-deflist>div:hover{background:#dceae559}.c-deflist dt{position:relative;padding-left:var(--space-4)}.c-deflist dt:before{content:"";position:absolute;left:0;top:.9em;width:8px;height:1px;background:var(--color-accent)}.c-history li{position:relative}.c-history li:before{content:"";position:absolute;left:calc(-1 * var(--space-8) - 3.5px);top:.55em;width:7px;height:7px;border-radius:50%;background:var(--color-accent)}.c-history__year{font-size:1.5rem}.p-sub-section--tint{background:linear-gradient(180deg,var(--color-base-dark),var(--color-base))}.p-sub-cta{padding:calc(var(--section-pad-y) * 1.15) var(--container-pad)}.p-sub-cta__heading{font-size:clamp(1.625rem,2.8vw,2.25rem)}@media(max-width:768px){.p-sub-hero{padding-top:calc(var(--space-12) + 64px)}.p-sub-hero__inner .c-breadcrumb{margin-bottom:var(--space-8)}}.p-sub-hero__watermark{right:0;bottom:-.1em;font-size:clamp(4.5rem,15vw,12rem)}.p-sub-hero+.p-sub-section{margin-top:0;padding-top:var(--section-pad-y)}.p-sub-hero+.p-sub-section>.p-sub-section__inner,.p-sub-hero+.p-sub-section>.p-sub-section__inner--wide{background:transparent;border-radius:0;box-shadow:none;padding:0}.c-checklist{display:block;counter-reset:check}.c-checklist li{counter-increment:check;position:relative;padding:var(--space-6) 0 var(--space-6) 3.4em;border:none;border-bottom:1px solid var(--color-line);border-radius:0;background:transparent}.c-checklist li:first-child{border-top:1px solid var(--color-line)}.c-checklist li:before{content:counter(check,decimal-leading-zero);position:absolute;left:0;top:var(--space-6);right:auto;width:auto;height:auto;background:none;font-family:var(--font-serif-en);font-style:italic;font-size:1.25rem;line-height:1.4;color:var(--color-primary-60)}.p-sub-hero+.p-sub-section .c-contactcard,.c-contactcard{background:transparent;border:none;border-top:2px solid var(--color-accent);border-radius:0;box-shadow:none;padding:var(--space-6) 0 0}.c-heading[data-en]:after{content:attr(data-en);display:block;margin-top:var(--space-3);font-family:var(--font-serif-en);font-style:italic;font-size:.875rem;font-weight:400;letter-spacing:.22em;color:var(--color-ink-30)}@media(max-width:768px){.p-sub-hero{padding-top:calc(var(--space-8) + 64px);padding-bottom:var(--space-16)}.p-sub-hero__inner{min-height:auto}.p-sub-hero__inner .c-breadcrumb{margin-bottom:var(--space-6)}.p-sub-hero__title{font-size:1.5rem}.p-sub-hero__lead{margin-top:var(--space-4);font-size:var(--fs-small);line-height:2}.p-sub-hero__watermark{font-size:clamp(3rem,18vw,5rem)}.p-sub-section{padding-top:var(--space-16);padding-bottom:var(--space-16)}.p-sub-section .c-heading{font-size:1.375rem;margin-bottom:var(--space-8)}.c-svc__en{display:none}}@media(max-width:768px){.p-sub-cta__en{font-size:.75rem;letter-spacing:.1em;white-space:nowrap}.p-sub-cta__heading{font-size:1.375rem}}
