.btn-cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background-color:var(--color-accent);color:var(--color-black);font-family:var(--font-jp);font-size:var(--fz-base);font-weight:var(--fw-bold);letter-spacing:var(--ls-md);border-radius:var(--radius-md);text-decoration:none;transition:background-color var(--transition-speed) var(--easing)}.btn-cta:hover{background-color:var(--color-accent-hover);opacity:1}.btn-cta--full{width:100%}.btn-cta__arrow{font-size:.7em;line-height:1}.btn-cta__icon{display:inline-flex;align-items:center;justify-content:center;font-size:1em;line-height:1}.btn-cta__icon svg{width:1.25em;height:1.25em}.btn-outline{position:relative;z-index:0;overflow:hidden;display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background-color:var(--color-primary);color:var(--color-white);font-family:var(--font-jp);font-size:var(--fz-base);font-weight:var(--fw-bold);letter-spacing:var(--ls-md);text-decoration:none;border:1px solid var(--color-primary);border-radius:var(--radius-md);transition:color var(--transition-speed) var(--easing)}.btn-outline::before{content:'';position:absolute;inset:0;z-index:-1;background-color:var(--color-white);transform:scaleX(0);transform-origin:left center;transition:transform var(--transition-speed) var(--easing)}.btn-outline:hover{color:var(--color-primary);opacity:1}.btn-outline:hover::before{transform:scaleX(1)}.btn-outline__arrow{font-size:.85em;line-height:1;transition:transform var(--transition-speed) var(--easing)}.btn-outline:hover .btn-outline__arrow{transform:translateX(4px)}.site-header{position:fixed;top:var(--space-sm);left:var(--space-sm);right:var(--space-sm);z-index:100;height:80px;background-color:var(--color-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.site-header__inner{display:flex;align-items:center;gap:var(--space-lg);height:100%;width:100%;margin:0 auto;padding:0 var(--space-lg)}.site-header__logo{display:inline-flex;align-items:center;gap:var(--space-xs);flex-shrink:0;text-decoration:none}.site-header__logo-img{height:48px;width:auto}.site-header__logo-name{font-family:var(--font-jp);font-size:var(--fz-md);font-weight:var(--fw-bold);line-height:var(--lh-sm);letter-spacing:var(--ls-sm);color:var(--color-primary-dark);white-space:nowrap}.site-header__nav{display:flex;align-items:center;gap:var(--space-lg);margin-left:auto}.site-header__actions{display:flex;align-items:center;gap:var(--space-md);flex-shrink:0}.site-header__menu{display:flex;align-items:center;gap:var(--space-lg);list-style:none;margin:0;padding:0}.site-header__menu li{position:relative}.site-header__menu a{display:inline-block;padding:var(--space-sm) 0;font-family:var(--font-jp);font-size:var(--fz-base);font-weight:var(--fw-medium);color:var(--color-black);letter-spacing:var(--ls-md);text-decoration:none;transition:color var(--transition-speed) var(--easing)}.site-header__menu a:hover{color:var(--color-primary);opacity:1}.site-header__menu .current-menu-item>a,.site-header__menu .current_page_item>a{color:var(--color-primary);font-weight:var(--fw-semibold)}.site-header__menu .current-menu-item>a::after,.site-header__menu .current_page_item>a::after{content:'';position:absolute;left:0;bottom:8px;width:100%;height:2px;background-color:var(--color-primary)}.site-header__cta{flex-shrink:0}.site-header__burger{display:none;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;background:none;border:none;cursor:pointer;gap:6px}.site-header__burger-line{display:block;width:24px;height:2px;background-color:var(--color-black);transition:transform var(--transition-speed) var(--easing),opacity var(--transition-speed) var(--easing)}.site-header__burger.is-active .site-header__burger-line:nth-child(1){transform:translateY(8px) rotate(45deg)}.site-header__burger.is-active .site-header__burger-line:nth-child(2){opacity:0}.site-header__burger.is-active .site-header__burger-line:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.site-drawer{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:var(--color-bg);z-index:90;opacity:0;visibility:hidden;transform:translateY(-20px);transition:opacity var(--transition-speed) var(--easing),visibility var(--transition-speed) var(--easing),transform var(--transition-speed) var(--easing);padding-top:80px;overflow-y:auto}.site-drawer.is-open{opacity:1;visibility:visible;transform:translateY(0)}.site-drawer__nav{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 var(--container-padding)}.site-drawer__menu{display:flex;flex-direction:column;align-items:stretch;gap:0;list-style:none;margin:0;padding:0;width:100%}.site-drawer__menu li{border-bottom:1px solid var(--color-gray-border)}.site-drawer__menu a{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-xs);font-family:var(--font-jp);font-size:var(--fz-md);font-weight:var(--fw-medium);color:var(--color-black);text-decoration:none;transition:color var(--transition-speed) var(--easing)}.site-drawer__menu a::after{content:'→';color:var(--color-primary);font-size:var(--fz-base)}.site-drawer__menu a:hover{color:var(--color-primary);opacity:1}.site-drawer__cta{width:100%;margin-top:var(--space-lg);padding:var(--space-sm) var(--space-md);background-color:var(--color-primary);color:var(--color-white);font-size:var(--fz-md);font-weight:var(--fw-bold);border-radius:var(--radius-md);border:none;justify-content:center;gap:var(--space-xs);letter-spacing:var(--ls-md)}.site-drawer__cta .btn-cta__icon{display:inline-flex;color:var(--color-white)}.site-drawer__cta .btn-cta__icon svg{stroke:var(--color-white)}.site-drawer__cta:hover{background-color:var(--color-primary-dark);transform:none;color:var(--color-white)}.site-footer{margin-top:var(--space-2xl);background-color:var(--color-bg-alt);color:var(--color-black)}.site-footer__inner{display:flex;justify-content:space-between;gap:var(--space-xl);padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.site-footer__brand{flex-shrink:0;max-width:340px}.site-footer__logo{display:inline-flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-md);text-decoration:none}.site-footer__logo-img{height:48px;width:auto}.site-footer__logo-name{font-family:var(--font-jp);font-size:var(--fz-md);font-weight:var(--fw-bold);line-height:var(--lh-sm);letter-spacing:var(--ls-sm);color:var(--color-primary-dark)}.site-footer__address,.site-footer__tel{margin-bottom:var(--space-sm);font-size:var(--fz-sm);line-height:var(--lh-lg);letter-spacing:var(--ls-md);color:var(--color-gray)}.site-footer__nav{display:flex;gap:var(--space-xl)}.site-footer__nav-col{display:flex;flex-direction:column}.site-footer__nav-heading{margin:0 0 var(--space-md);font-size:var(--fz-md);font-weight:var(--fw-bold);letter-spacing:var(--ls-md);white-space:nowrap}.site-footer__nav-heading a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-speed) var(--easing)}.site-footer__nav-heading a:hover{color:var(--color-secondary);opacity:1}.site-footer__nav-heading--solo{margin-top:var(--space-lg)}.site-footer__nav-list{margin:0 0 var(--space-xs);padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-sm)}.site-footer__nav-list a{font-size:var(--fz-sm);letter-spacing:var(--ls-md);color:var(--color-black);text-decoration:none;white-space:nowrap;transition:color var(--transition-speed) var(--easing)}.site-footer__nav-list a::before{content:'–';margin-right:var(--space-xs);color:var(--color-gray)}.site-footer__nav-list a:hover{color:var(--color-primary);opacity:1}.site-footer__cta{flex-shrink:0}.site-footer__cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);font-family:var(--font-jp);font-size:var(--fz-base);font-weight:var(--fw-bold);letter-spacing:var(--ls-md);color:var(--color-white);background-color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);text-decoration:none;transition:background-color var(--transition-speed) var(--easing),color var(--transition-speed) var(--easing),border-color var(--transition-speed) var(--easing)}.site-footer__cta-btn:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark);color:var(--color-white);opacity:1}.site-footer__cta-arrow{font-size:.7em;line-height:1}.site-footer__bottom{border-top:1px solid var(--color-gray-border);padding:var(--space-md) 0;text-align:center}.site-footer__privacy{display:inline-block;margin-bottom:var(--space-xs);font-size:var(--fz-xs);letter-spacing:var(--ls-sm);color:var(--color-gray);text-decoration:none;transition:color var(--transition-speed) var(--easing)}.site-footer__privacy:hover{color:var(--color-primary);opacity:1}.site-footer__copy{font-size:var(--fz-xs);letter-spacing:var(--ls-sm);color:var(--color-gray)}.breadcrumb{padding:var(--space-sm) 0;background-color:var(--color-bg)}.breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;gap:0;list-style:none;margin:0;padding:0;font-size:var(--fz-xs);color:var(--color-gray)}.breadcrumb__item{display:flex;align-items:center}.breadcrumb__item+.breadcrumb__item::before{content:'';display:inline-block;width:6px;height:6px;margin:0 var(--space-sm);border-top:1px solid var(--color-gray);border-right:1px solid var(--color-gray);transform:rotate(45deg);flex-shrink:0}.breadcrumb__link{color:var(--color-gray);transition:color var(--transition-speed) var(--easing)}.breadcrumb__link:hover{color:var(--color-primary)}.breadcrumb__item--current span{color:var(--color-black);font-weight:var(--fw-medium)}body.is-drawer-open{overflow:hidden}