.site-shell{display:flex;flex-direction:column;min-height:100vh}.site-main{flex:1}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--color-bg) 86%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-border) 80%,transparent);backdrop-filter:saturate(160%) blur(16px);-webkit-backdrop-filter:saturate(160%) blur(16px)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);height:var(--header-height)}.site-logo{display:inline-flex;align-items:center;min-height:44px;gap:10px;color:var(--color-heading);white-space:nowrap;border-radius:var(--radius-sm)}.site-logo__mark{width:32px;height:32px;flex-shrink:0}.site-logo__text{font-size:1.1875rem;font-weight:var(--font-weight-black);letter-spacing:.005em;font-feature-settings:"palt" 1}.site-logo__accent{color:var(--color-primary)}.site-nav{margin-right:auto;margin-left:var(--space-8)}.site-nav__list{display:flex;align-items:center;gap:var(--space-1)}.site-nav__link{display:inline-flex;align-items:center;min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-full);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background-color var(--transition-fast),color var(--transition-fast)}.site-nav__link:hover{background:color-mix(in srgb,var(--color-surface-sunken) 70%,transparent);color:var(--color-heading)}.site-header__actions{display:flex;align-items:center;gap:var(--space-2)}.site-header__search{display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4) 0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);box-shadow:var(--shadow-sm);color:var(--color-text-muted);font-size:var(--font-size-sm);transition:border-color var(--transition-fast),color var(--transition-fast)}.site-header__search svg{color:var(--color-heading)}.site-header__search:hover{border-color:var(--color-border-strong);color:var(--color-heading)}.site-header__search-label{min-width:9.5em}.site-menu{display:none}.site-menu__summary{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-full);color:var(--color-heading);cursor:pointer;list-style:none}.site-menu__summary::-webkit-details-marker{display:none}.site-menu__summary:hover{background:var(--color-surface-muted)}.site-menu__icon-close,.site-menu[open] .site-menu__icon-open{display:none}.site-menu[open] .site-menu__icon-close{display:block}.site-menu__panel{position:absolute;top:100%;right:0;left:0;max-height:calc(100dvh - var(--header-height));padding:var(--space-4) clamp(16px,4vw,40px) var(--space-8);overflow-y:auto;border-bottom:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-lg)}.site-menu__heading{margin:var(--space-4) 0 var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.06em}.site-menu__heading:first-child{margin-top:0}.site-menu__list{display:flex;flex-direction:column}.site-menu__list--grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.site-menu__link{display:flex;align-items:center;min-height:48px;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);color:var(--color-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.site-menu__list--grid .site-menu__link{min-height:56px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1.45}.site-menu__link:hover{color:var(--color-primary)}@media(max-width:1080px){.site-header__search-label{min-width:0}}@media(max-width:960px){.site-nav{display:none}.site-menu{display:block}.site-header__search{width:44px;height:44px;justify-content:center;padding:0;border:0;background:transparent;box-shadow:none}.site-header__search-label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}}@media(max-width:768px){.site-header__inner,.site-logo{gap:var(--space-2)}.site-logo__text{font-size:1.0625rem}.site-logo__mark{width:28px;height:28px}.site-header__actions{gap:0}}.site-footer{margin-top:var(--space-20);background:var(--color-ink);color:#c7cfdf}.site-footer__inner{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:var(--space-10);padding-block:var(--space-16) var(--space-12)}.site-footer__brand{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);padding-right:var(--space-8)}.site-footer__logo{display:inline-flex;align-items:center;gap:10px;color:#fff}.site-footer__logo .site-logo__accent{color:#9dbbff}.site-footer__mark{width:32px;height:32px}.site-footer__desc{max-width:26em;color:#aab4c8;font-size:var(--font-size-sm);line-height:1.9}.site-footer__policy{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.site-footer__policy:hover{color:#9dbbff}.site-footer__guide{width:96px;height:104px;overflow:hidden;border-radius:var(--radius-lg);background:radial-gradient(circle at 50% 120%,#9dbbff59,#9dbbff0f 70%)}.site-footer__hakase{width:100%;height:auto;margin-top:6px;transform:scale(1.35);transform-origin:50% 0}.site-footer__heading{margin-bottom:var(--space-4);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.04em}.site-footer__list{display:flex;flex-direction:column}.site-footer__list a{display:inline-flex;align-items:center;min-height:40px;color:#aab4c8;font-size:var(--font-size-sm);line-height:1.5;transition:color var(--transition-fast)}.site-footer__list a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.site-footer a:focus-visible{outline-color:#9dbbff}.site-footer__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-6);padding-block:var(--space-6) var(--space-8);border-top:1px solid rgba(255,255,255,.12)}.site-footer__bottom p{color:#98a3b9;font-size:var(--font-size-xs)}@media(max-width:1040px){.site-footer__inner{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer__brand{grid-column:1 / -1;padding-right:0}.site-footer__guide{position:absolute;top:0;right:0}}@media(max-width:720px){.site-footer{margin-top:var(--space-16)}.site-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-8) var(--space-6);padding-block:var(--space-12) var(--space-8)}.site-footer__brand{padding-right:104px}.site-footer__guide{width:84px;height:92px}.site-footer__nav:last-child{grid-column:1 / -1}.site-footer__nav:last-child .site-footer__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-6)}.site-footer__bottom{flex-direction:column;align-items:flex-start}}
