:root{--color-text-primary:#1e1e1e;--color-text-secondary:#60666d;--color-text-muted:#b3b8bf;--color-text-inverse:#fff;--color-accent:#315cef;--color-bg-page:#fafaf7;--color-bg-section:#edefea;--color-bg-card:#fff;--color-bg-flow:#f7f7f6;--color-bg-dark:#1e2024;--color-border-default:#dadbd6;--color-border-inverse:#d3d7dd;--color-button-contact:#d9d9d9;--color-glow-1:#5eead4;--color-glow-2:#a78bfa;--color-glow-3:#f472b6;--color-focus:var(--color-accent);--spacing-8:8px;--spacing-12:12px;--spacing-16:16px;--spacing-24:24px;--spacing-32:32px;--spacing-48:48px;--spacing-64:64px;--spacing-104:104px;--spacing-stack:clamp(24px, 15.09px + 2.286vw, 48px);--spacing-section:clamp(64px, 49.14px + 3.81vw, 104px);--radius-card:24px;--radius-pill:999px;--shadow-card:4px 4px 30px #00000021;--shadow-card-hover:6px 12px 40px #0000002e;--shadow-md:0 8px 16px #0000001a;--font-en:"Manrope", "Noto Sans JP", sans-serif;--font-ja:"Noto Sans JP", sans-serif;--motion-distance:40px;--motion-distance-slide:80px;--motion-ease:cubic-bezier(.22, 1, .36, 1);--motion-duration-intro:.9s;--motion-stagger-intro:.14s;--motion-stagger-reveal:18%;--motion-duration-hover:.3s}*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-ja);color:var(--color-text-primary);background-color:var(--color-bg-page);-webkit-font-smoothing:antialiased;line-height:1.75}img,picture,svg{max-width:100%;display:block}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}h1,h2,h3{font-weight:inherit;font-size:inherit;word-break:auto-phrase;text-wrap:balance}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}p{line-break:strict;overflow-wrap:anywhere}@media (width<=1023px){.pc-only{display:none}}@media (width>=1024px){.sp-only{display:none}}.section{padding-block:var(--spacing-section);overflow-x:clip}.section__inner{gap:var(--spacing-stack);flex-direction:column;display:flex}.container,.container--wide{--container-gutter:clamp(24px, 6vw, 80px);width:min(var(--container-max), 100% - 2 * var(--container-gutter));margin-inline:auto}.container{--container-max:1120px}.container--wide{--container-max:1280px}@media (width<=767px){.container,.container--wide{--container-gutter:24px}}.visually-hidden{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.t-hero,.t-section{font-family:var(--font-ja);font-size:clamp(1.75rem,1.286rem + 1.905vw,3rem);font-weight:500;line-height:1.5}.t-contact{font-family:var(--font-ja);font-size:clamp(1.75rem,1.1rem + 2.667vw,3.5rem);font-weight:500;line-height:1.5}.t-detail-heading{font-family:var(--font-ja);font-size:clamp(1.25rem,.6rem + 2.667vw,3rem);font-weight:500;line-height:1.5}.t-subheading-ja{font-family:var(--font-ja);font-size:clamp(1.25rem,.971rem + 1.143vw,2rem);font-weight:500;line-height:1.5}.t-subheading-en{font-family:var(--font-en);font-size:clamp(1.25rem,.971rem + 1.143vw,2rem);font-weight:500;line-height:1.5}.t-card-ja{font-family:var(--font-ja);font-size:clamp(1.125rem,.986rem + .571vw,1.5rem);font-weight:500;line-height:1.5}.t-card-en{font-family:var(--font-en);font-size:clamp(1.25rem,1.157rem + .381vw,1.5rem);font-weight:500;line-height:1.5}.t-number{font-family:var(--font-en);font-size:1.5rem;font-weight:500;line-height:1.5}.t-label{font-family:var(--font-en);font-size:clamp(.875rem,.782rem + .381vw,1.125rem);font-weight:500;line-height:1.5}.t-label-ja{font-family:var(--font-ja);font-size:clamp(.875rem,.782rem + .381vw,1.125rem);font-weight:500;line-height:1.5}.t-body{font-family:var(--font-ja);font-size:1rem;font-weight:400;line-height:1.75}.t-button{font-family:var(--font-ja);font-size:1rem;font-weight:500;line-height:1.5}.t-nav{font-family:var(--font-en);font-size:clamp(.75rem,.7rem + .19vw,.875rem);font-weight:500;line-height:1.5}.t-logo{font-family:var(--font-en);font-size:clamp(.8125rem,.743rem + .286vw,1rem);font-weight:700;line-height:1.12}.t-caption-ja{font-family:var(--font-ja);font-size:.875rem;font-weight:400;line-height:1.75}.t-caption-en{font-family:var(--font-en);font-size:.875rem;font-weight:400;line-height:1.75}@keyframes fade-up{0%{opacity:0;translate:0 var(--motion-distance)}}@keyframes fade-from-left{0%{opacity:0;translate:calc(var(--motion-distance) * -1) 0}}@keyframes fade-from-right{0%{opacity:0;translate:var(--motion-distance) 0}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-down{0%{opacity:0;translate:0 calc(var(--motion-distance) * -1)}}@keyframes zoom-in{0%{opacity:0;scale:.92}}@media (prefers-reduced-motion:no-preference){.intro{animation:fade-up var(--motion-duration-intro) var(--motion-ease) both;animation-delay:calc(var(--reveal-order,0) * var(--motion-stagger-intro))}@supports (animation-timeline:view()){.reveal{animation:fade-up var(--motion-ease) both;animation-timeline:view();animation-range:entry calc(var(--reveal-order,0) * var(--motion-stagger-reveal)) entry calc(70% + var(--reveal-order,0) * var(--motion-stagger-reveal))}.reveal--left{animation-name:fade-from-left}.reveal--right{animation-name:fade-from-right}.reveal--slide{--motion-distance:var(--motion-distance-slide);animation-name:fade-from-right}.reveal--zoom{animation-name:zoom-in}}}@property --sequence-shown{syntax:"<integer>";inherits:false;initial-value:0}@keyframes sequence-trigger{to{--sequence-shown:1}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.sequence{animation-name:sequence-trigger;animation-fill-mode:both;animation-timeline:view();animation-range:entry var(--sequence-at,60%) entry calc(var(--sequence-at,60%) + 1%)}@container style(--sequence-shown:0){.sequence>*{opacity:0}}@container style(--sequence-shown:1){.sequence>*{animation:var(--sequence-keyframes,fade-from-left) .7s var(--motion-ease) both;animation-delay:calc(var(--sequence-order,0) * .15s)}}}}@property --tilt-glow-x{syntax:"<percentage>";inherits:true;initial-value:50%}@property --tilt-glow-y{syntax:"<percentage>";inherits:true;initial-value:50%}.tilt{position:relative}.tilt-zones{z-index:1;grid-template:repeat(var(--tilt-grid), 1fr) / repeat(var(--tilt-grid), 1fr);display:grid;position:absolute;inset:0}@media (hover:hover) and (prefers-reduced-motion:no-preference){.tilt{--tilt-max:6deg;--tilt-glow-size:360px;--tilt-x:0deg;--tilt-y:0deg;transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transform-style:preserve-3d;transition:transform .18s ease-out, --tilt-glow-x .3s ease-out, --tilt-glow-y .3s ease-out, translate var(--motion-duration-hover) var(--motion-ease), box-shadow var(--motion-duration-hover) var(--motion-ease)}.tilt:after{content:"";z-index:2;border-radius:inherit;background:radial-gradient(var(--tilt-glow-size) var(--tilt-glow-size) at var(--tilt-glow-x) var(--tilt-glow-y), color-mix(in srgb, var(--color-accent) 12%, transparent), transparent 60%);opacity:0;pointer-events:none;transition:opacity .25s;position:absolute;inset:0}.tilt:hover:after{opacity:1}.tilt__lift{transition:transform .18s ease-out}.tilt:hover .tilt__lift{transform:translateZ(24px)}.tilt:has([data-tilt-row="0"]:hover){--tilt-x:var(--tilt-max);--tilt-glow-y:12.5%}.tilt:has([data-tilt-row="1"]:hover){--tilt-x:calc(var(--tilt-max) / 3);--tilt-glow-y:37.5%}.tilt:has([data-tilt-row="2"]:hover){--tilt-x:calc(var(--tilt-max) / -3);--tilt-glow-y:62.5%}.tilt:has([data-tilt-row="3"]:hover){--tilt-x:calc(var(--tilt-max) * -1);--tilt-glow-y:87.5%}.tilt:has([data-tilt-col="0"]:hover){--tilt-y:calc(var(--tilt-max) * -1);--tilt-glow-x:12.5%}.tilt:has([data-tilt-col="1"]:hover){--tilt-y:calc(var(--tilt-max) / -3);--tilt-glow-x:37.5%}.tilt:has([data-tilt-col="2"]:hover){--tilt-y:calc(var(--tilt-max) / 3);--tilt-glow-x:62.5%}.tilt:has([data-tilt-col="3"]:hover){--tilt-y:var(--tilt-max);--tilt-glow-x:87.5%}}.button[data-astro-cid-y4d5lrkn]{border-radius:var(--radius-pill);flex-shrink:0;justify-content:center;align-items:center;transition:background-color .2s,color .2s,opacity .2s;display:inline-flex}.button--contact[data-astro-cid-y4d5lrkn]{--glow-ring:conic-gradient(from var(--glow-angle), transparent 0 52%, var(--color-glow-1) 70%, var(--color-glow-2) 86%, var(--color-glow-3) 97%, transparent 100%);--glow-ring-soft:conic-gradient(from var(--glow-angle), transparent 0 30%, var(--color-glow-1) 62%, var(--color-glow-2) 80%, var(--color-glow-3) 90%, transparent 100%);gap:var(--spacing-12);width:256px;height:48px;padding:var(--spacing-12) var(--spacing-24);background:linear-gradient(var(--color-button-contact), var(--color-button-contact)) padding-box, var(--glow-ring) border-box;color:var(--color-bg-dark);border:1.5px solid #0000;animation:2.6s linear infinite glow-spin;position:relative}.button--contact[data-astro-cid-y4d5lrkn]:before{--glow-room:var(--spacing-48);content:"";inset:calc(-4px - var(--glow-room));z-index:-1;padding:var(--glow-room);border-radius:inherit;background:var(--glow-ring-soft) content-box;filter:blur(14px);opacity:.85;pointer-events:none;position:absolute}.button__label[data-astro-cid-y4d5lrkn]{translate:0 -.08em}.button--detail[data-astro-cid-y4d5lrkn]{gap:var(--spacing-8);min-inline-size:128px;height:42px;padding:var(--spacing-8) var(--spacing-12);border:1px solid var(--color-text-secondary);color:var(--color-text-primary);--button-fill:0%;background:linear-gradient(0deg, var(--color-text-primary) var(--button-fill), transparent var(--button-fill));transition:--button-fill .45s cubic-bezier(.4,0,.2,1),color .45s}.button--contact[data-astro-cid-y4d5lrkn]:hover{opacity:.85}.button--detail[data-astro-cid-y4d5lrkn]:hover,.button--detail[data-astro-cid-y4d5lrkn]:focus-visible{--button-fill:100%;color:var(--color-text-inverse)}.button--stretched[data-astro-cid-y4d5lrkn]:after{content:"";position:absolute;inset:0}@keyframes glow-spin{to{--glow-angle:360deg}}@media (prefers-reduced-motion:reduce){.button[data-astro-cid-y4d5lrkn]{transition:none}.button--contact[data-astro-cid-y4d5lrkn]{--glow-angle:300deg;animation:none}}@property --glow-angle{syntax:"<angle>";inherits:true;initial-value:0deg}@property --button-fill{syntax:"<percentage>";inherits:false;initial-value:0%}.ribbon-background[data-astro-cid-cpgmzwyt]{z-index:-1;object-fit:cover;pointer-events:none;user-select:none;width:100%;max-width:none;height:100%;position:absolute;inset:0}.contact[data-astro-cid-fel7ujux]{--color-focus:var(--color-text-inverse);isolation:isolate;background-color:var(--color-bg-dark);position:relative;overflow:clip}.contact[data-astro-cid-fel7ujux] .contact__ribbon{z-index:-2;object-fit:fill;opacity:.44;width:163.66%;height:100%;inset:0 auto 0 -63.66%}.contact[data-astro-cid-fel7ujux]:before{content:"";z-index:-1;background:linear-gradient(to right, color-mix(in srgb, var(--color-bg-dark) 65%, transparent) 0% 75%, color-mix(in srgb, var(--color-bg-dark) 20%, transparent) 100%);pointer-events:none;position:absolute;inset:0}@media (width>=1024px){.contact[data-astro-cid-fel7ujux]:before{background:linear-gradient(to right, color-mix(in srgb, var(--color-bg-dark) 65%, transparent) 0% 60%, color-mix(in srgb, var(--color-bg-dark) 45%, transparent) 70%, color-mix(in srgb, var(--color-bg-dark) 20%, transparent) 82%, transparent 95%)}}.contact__inner[data-astro-cid-fel7ujux]{align-items:flex-start;gap:var(--spacing-stack);flex-direction:column;display:flex}.contact__heading[data-astro-cid-fel7ujux]{gap:var(--spacing-8);flex-direction:column;display:flex}.contact__label[data-astro-cid-fel7ujux],.contact__copyright[data-astro-cid-fel7ujux]{color:var(--color-text-muted)}.contact__title[data-astro-cid-fel7ujux]{color:var(--color-text-inverse)}.contact__title[data-astro-cid-fel7ujux] span[data-astro-cid-fel7ujux]{display:inline-block}@keyframes contact-title-focus{0%{opacity:0;filter:blur(8px);letter-spacing:.08em}to{opacity:1;filter:blur();letter-spacing:normal}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.contact__title[data-astro-cid-fel7ujux]{view-timeline-name:--contact-title}.contact__title[data-astro-cid-fel7ujux] span[data-astro-cid-fel7ujux]{--focus-ease:cubic-bezier(.2, .7, .3, 1);animation:contact-title-focus var(--focus-ease) both;animation-timeline:--contact-title;animation-range:cover calc(var(--word-order) * 6%) cover calc(24% + var(--word-order) * 6%)}}}.contact__cta[data-astro-cid-fel7ujux]{margin:calc(var(--spacing-48) * -1);padding:var(--spacing-48);pointer-events:none}.contact__cta[data-astro-cid-fel7ujux] .button{pointer-events:auto}.contact__body[data-astro-cid-fel7ujux]{color:var(--color-border-inverse)}.contact__divider[data-astro-cid-fel7ujux]{border:0;border-top:1px solid var(--color-border-default);align-self:stretch;height:0}.contact__separator[data-astro-cid-fel7ujux]{white-space:pre;padding-inline:var(--spacing-8)}.header[data-astro-cid-bi27l4kv]{justify-content:space-between;align-items:center;gap:var(--spacing-16);height:108px;display:flex}.header__list[data-astro-cid-bi27l4kv]{align-items:center;gap:var(--spacing-24);display:flex}.header__link[data-astro-cid-bi27l4kv]{padding:var(--spacing-8) var(--spacing-16);border-radius:var(--radius-pill);border:1px solid #0000;display:inline-block}.header__link--outlined[data-astro-cid-bi27l4kv]{border-color:var(--color-text-primary)}@media (width<=767px){.header[data-astro-cid-bi27l4kv]{gap:var(--spacing-8);height:72px}.header__list[data-astro-cid-bi27l4kv]{gap:0}.header__link[data-astro-cid-bi27l4kv]{padding:var(--spacing-8)}}@media (width<=359px){.header__link[data-astro-cid-bi27l4kv]{padding-inline:4px;font-size:12px}}
