:root{--color-paper: #d6dad8;--color-paper-light: #eef0ef;--color-ink: #4a52c4;--color-text: #17191b;--color-text-muted: #6b7074;--color-line: rgba(23, 25, 27, .14);--color-line-strong: rgba(23, 25, 27, .45);--color-error: #b2372f;--font-display: "Geist", "Instrument Sans", "Helvetica Neue", Arial, sans-serif;--font-body: "Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;--content-width: 1280px;--gutter: clamp(1.5rem, 6vw, 6rem);--section-gap: clamp(7rem, 18vw, 14rem);--block-gap: clamp(3rem, 6vw, 5rem);--background-blur: 0px;--background-veil: 0}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-paper);color:var(--color-text);font-family:var(--font-body);font-size:15px;font-weight:400;line-height:2;letter-spacing:.02em;font-feature-settings:"palt";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}h1,h2,h3,p,dl,dd,ul{margin:0}ul{padding:0;list-style:none}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.text-link{position:relative}.text-link:after{content:"";position:absolute;left:0;right:0;bottom:-.15em;height:1px;background:var(--color-ink);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.16,1,.3,1)}.text-link:hover:after{transform:scaleX(1);transform-origin:left}.background{position:fixed;inset:0;z-index:0;overflow:hidden;background-color:var(--color-paper);pointer-events:none}.background__video{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.04);filter:blur(var(--background-blur));will-change:filter}.background:after{content:"";position:absolute;inset:0;background:url(/logo-poster.jpg) center / cover no-repeat;transform:scale(1.04);filter:blur(var(--background-blur));opacity:0;transition:opacity .6s ease}.background.is-static:after{opacity:1}.background__veil{position:absolute;inset:0;background:var(--color-paper-light);opacity:var(--background-veil)}.background.is-static .background__video{visibility:hidden}.background.is-static{--background-blur: 24px;--background-veil: .75}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.background:after{opacity:1}.background__video{visibility:hidden}}main{position:relative;z-index:1}.hero{min-height:100svh}.sheet{position:relative;padding:clamp(6rem,14vw,11rem) 0 clamp(8rem,16vw,13rem)}.section{max-width:var(--content-width);margin:0 auto;padding:0 var(--gutter)}.section+.section{margin-top:var(--section-gap)}[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}[data-reveal].is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}}.service{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,3vw,2.5rem);row-gap:1.25rem;align-items:start}.service+.service{margin-top:var(--block-gap)}.service__title{grid-column:1 / 5;font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:300;letter-spacing:-.01em;line-height:1.15}.service__body{grid-column:5 / 13;max-width:34em;font-size:.95rem}@media(max-width:767px){.service__title,.service__body{grid-column:1 / -1}}.lead{max-width:26em;font-size:clamp(1.35rem,2.4vw,1.9rem);font-weight:300;line-height:1.85;letter-spacing:.01em}.lead-note{margin-top:clamp(2rem,4vw,3rem);max-width:34em;font-size:.95rem}.lead-note p+p{margin-top:1em}.profile{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,3vw,2.5rem);row-gap:1.25rem;align-items:start;margin-top:var(--section-gap)}.profile__name{grid-column:1 / 5}.profile__name-en{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:300;letter-spacing:-.01em;line-height:1.15}.profile__name-ja{margin-top:.5rem;font-size:.85rem;color:var(--color-text-muted);letter-spacing:.12em}.profile__body{grid-column:5 / 13;max-width:34em;font-size:.95rem}.profile__role{margin-bottom:1rem;font-size:.8rem;color:var(--color-text-muted);letter-spacing:.08em}.awards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,3vw,2.5rem);row-gap:.5rem;align-items:baseline;margin-top:var(--block-gap)}.awards__title{grid-column:1 / 5;font-family:var(--font-display);font-size:.75rem;font-weight:400;letter-spacing:.04em;color:var(--color-text-muted)}.awards__list{grid-column:5 / 13;display:flex;flex-wrap:wrap;row-gap:.25rem;font-family:var(--font-display);font-size:.95rem;font-weight:400}.awards__list li:not(:last-child):after{content:"/";margin:0 .7em;color:var(--color-line-strong)}@media(max-width:767px){.profile__name,.profile__body,.awards__title,.awards__list{grid-column:1 / -1}}.info{display:grid;row-gap:1.1rem}.info__row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,3vw,2.5rem);align-items:baseline}.info__row dt{grid-column:1 / 5}.info__row dd{grid-column:5 / 13}.info__row dt{font-family:var(--font-display);font-size:.75rem;font-weight:400;letter-spacing:.04em;color:var(--color-text-muted)}.info__row dd{font-size:.95rem}.info__note{display:inline-block;margin-left:.6em;color:var(--color-text-muted);font-size:.85em}.info__links{display:flex;gap:1.75rem}@media(max-width:767px){.info__row{grid-template-columns:5.5rem minmax(0,1fr);column-gap:1rem}.info__row dt,.info__row dd{grid-column:auto}}.contact{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,3vw,2.5rem);row-gap:var(--block-gap);align-items:start}.contact__intro{grid-column:1 / 5;max-width:22em;font-size:.95rem}.form{grid-column:5 / 13;max-width:34em;display:grid;row-gap:2.25rem}@media(max-width:767px){.contact__intro,.form{grid-column:1 / -1}.contact__intro{max-width:34em}}.form__field{display:grid;row-gap:.25rem}.form__label{font-size:.75rem;letter-spacing:.06em;color:var(--color-text-muted)}.form__required{color:var(--color-ink)}.form__input{width:100%;padding:.55rem 0;border:0;border-bottom:1px solid var(--color-line-strong);border-radius:0;background:transparent;color:var(--color-text);font:inherit;font-size:1rem;line-height:1.7;appearance:none;transition:border-color .25s ease}.form__input:focus{outline:none;border-bottom-color:var(--color-ink)}.form__textarea{resize:vertical;min-height:6.5rem}.form__select-wrap{position:relative}.form__select{padding-right:2rem;cursor:pointer}.form__select:invalid{color:var(--color-text-muted)}.form__select-wrap:after{content:"";position:absolute;top:50%;right:.35rem;width:.45rem;height:.45rem;border-right:1px solid var(--color-text);border-bottom:1px solid var(--color-text);transform:translateY(-70%) rotate(45deg);pointer-events:none}.form__honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form__check{display:flex;align-items:flex-start;gap:.75rem;font-size:.9rem;cursor:pointer}.form__check input{margin:.5em 0 0;width:.9rem;height:.9rem;accent-color:var(--color-ink);flex-shrink:0}.form__status{min-height:1.5em;font-size:.9rem}.form__status:empty{display:none}.form__status.is-error{color:var(--color-error)}.form__status.is-success{color:var(--color-ink)}.button{display:inline-flex;align-items:center;gap:.75rem;padding:.4rem 0;border:0;border-bottom:1px solid var(--color-text);background:none;color:var(--color-text);font:inherit;font-size:1rem;letter-spacing:.06em;cursor:pointer;transition:color .25s ease,border-color .25s ease}.button__arrow{font-family:var(--font-display);transition:transform .35s cubic-bezier(.16,1,.3,1)}.button:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}.button:hover .button__arrow{transform:translate(.35rem)}.button:disabled{opacity:.35;cursor:not-allowed}.button:disabled .button__arrow{transform:none}.form.is-sent .form__field,.form.is-sent .form__actions{display:none}.form.is-sent .form__status{font-size:1rem}.site-footer{position:relative;z-index:1;font-family:var(--font-display);font-size:.75rem;letter-spacing:.04em;color:var(--color-text-muted)}.site-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:var(--content-width);margin:0 auto;padding:1.75rem var(--gutter) 2.25rem}.site-footer__copy{font-size:inherit}.page{position:relative;z-index:1}.page .sheet{min-height:100svh;padding-top:clamp(3rem,8vw,6rem)}.page__brand{display:inline-block;margin-bottom:clamp(4rem,10vw,8rem);font-family:var(--font-display);font-size:.8rem;letter-spacing:.04em}.page__title{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:300;letter-spacing:.02em;line-height:1.3}.page__subtitle{margin-top:.5rem;font-family:var(--font-display);font-size:.8rem;color:var(--color-text-muted);letter-spacing:.04em}.prose{max-width:40em;margin-top:clamp(3rem,6vw,5rem);font-size:.95rem}.prose h2{margin:3em 0 .8em;font-size:1rem;font-weight:500;letter-spacing:.04em}.prose p+p{margin-top:.8em}.prose ul{margin:.6em 0;padding-left:1.2em;list-style:disc}.prose li+li{margin-top:.3em}.prose a{color:var(--color-ink)}.prose .prose__meta{margin-top:3em;font-size:.85rem;color:var(--color-text-muted)}.page__back{display:inline-block;margin-top:4rem;font-family:var(--font-display);font-size:.8rem;letter-spacing:.04em}
