.blog-layout{background-color:var(--color-background-primary);color:var(--color-text-primary);min-height:100vh}.blog-header{position:fixed;top:0;left:0;right:0;z-index:var(--z-index-fixed);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-background-header);color:var(--color-text-primary)}.blog-header__title{font-family:var(--font-heading-primary);font-weight:var(--font-weight-normal);font-size:var(--font-size-2xl);color:var(--color-text-primary);text-decoration:none;transition:opacity var(--transition-duration-fast) var(--transition-timing-function-default)}a.blog-header__title:hover{opacity:.8}.blog-header__logo{height:var(--spacing-6);width:auto;-o-object-fit:contain;object-fit:contain}.blog-header__logo-text{font-family:var(--font-heading-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-wide)}.blog-header__theme-button{width:var(--spacing-6);height:var(--spacing-6);border-radius:var(--border-radius-full);background-color:transparent;border:none;cursor:pointer;transition:background-color var(--transition-duration-fast) var(--transition-timing-function-default)}.blog-header__theme-button:hover{background-color:var(--color-overlay-subtle)}.blog-header__theme-icon{font-size:var(--font-size-xl)}.blog-header__theme-placeholder{width:var(--font-size-xl);height:var(--font-size-xl)}.blog-header__menu-button{background-color:transparent;border:none;color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);padding:0;transition:color var(--transition-duration-fast) var(--transition-timing-function-default)}.blog-header__menu-button:hover{color:var(--color-interactive-primary)}.u-menu-checkbox{display:none}.u-menu-open-label{display:block}.u-menu-close-label{display:none}.navigation-menu{display:none;background-color:var(--color-surface-dark-opaque);border:none;box-shadow:0 0 var(--shadow-blur-lg) var(--color-interactive-primary-bg);position:absolute;right:var(--spacing-3);top:calc(100% + var(--spacing-1));z-index:var(--z-index-menu);min-width:var(--layout-card-width);width:-moz-max-content;width:max-content;border-radius:var(--border-radius-lg);padding:var(--spacing-2)}.navigation-menu__overlay{display:none;background-color:var(--color-overlay-strong);inset:0;position:fixed;width:100vw;height:100vh;z-index:calc(var(--z-index-menu) - 1)}.navigation-menu__item{background-color:transparent;border:none;color:var(--color-interactive-primary);font-family:var(--font-heading-primary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);padding:var(--spacing-2) var(--spacing-4);text-decoration:none;border-radius:var(--border-radius-full);transition:all var(--transition-duration-fast) var(--transition-timing-function-default);width:100%;text-align:left;min-height:var(--touch-target-min-height);border-bottom:none}.navigation-menu__item:hover,.navigation-menu__item:focus{color:var(--color-text-primary);outline:none;border-bottom:none}.blog-footer{height:var(--layout-footer-height);background-color:var(--color-background-header);border:none}.blog-footer__link{color:var(--color-interactive-primary);text-decoration:none;font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:color var(--transition-duration-fast) var(--transition-timing-function-default);background:none;border:none;padding:0}.blog-footer__link:hover{color:var(--color-text-primary);text-decoration:underline}.blog-footer__copyright{color:var(--color-text-secondary);font-family:var(--font-heading-primary);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal)}html[data-theme=light] .blog-header,html[data-theme=light] .blog-footer{background-color:var(--color-interactive-primary-bg)}html[data-service=labo] .blog-header,html[data-service=labo] .blog-footer{background-color:var(--color-surface-dark-opaque)}.u-menu-checkbox:checked~.navigation-menu__overlay{display:block}.u-menu-checkbox:checked~.u-menu-open-label{display:none}.u-menu-checkbox:checked~.u-menu-close-label{display:block}.legal-modal__overlay{position:fixed;inset:0;background-color:var(--color-overlay-strong);z-index:var(--z-index-modal)}.legal-modal__dialog{background-color:var(--color-background-secondary);border:none;box-shadow:0 0 var(--spacing-6) var(--color-interactive-primary-bg);max-height:90vh;max-width:var(--layout-page-container-width);width:100%;z-index:calc(var(--z-index-modal) + 1);border-radius:var(--border-radius-lg)}.legal-modal__header{background-color:var(--color-interactive-primary-bg-faint);border:none;padding:var(--spacing-4)}.legal-modal__title{color:var(--color-interactive-primary);font-family:var(--font-heading-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-medium)}.legal-modal__close-button{background-color:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-2xl);width:var(--spacing-6);height:var(--spacing-6);transition:all var(--transition-duration-fast) var(--transition-timing-function-default)}.legal-modal__close-button:hover{color:var(--color-interactive-primary);background-color:var(--color-interactive-primary-bg-subtle)}.legal-modal__content{color:var(--color-text-primary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);overflow-y:auto;padding:var(--spacing-4);-moz-user-select:none;user-select:none;-webkit-user-select:none}.legal-modal__content h2{color:var(--color-interactive-primary);font-family:var(--font-heading-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-3)}.legal-modal__content h3{color:var(--color-text-secondary);font-family:var(--font-heading-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);margin-top:var(--spacing-4);margin-bottom:var(--spacing-2)}.legal-modal__content section{margin-bottom:var(--spacing-4)}.legal-modal__content p{margin-bottom:var(--spacing-2)}.blog-main{margin-top:var(--layout-header-height)}.home-page{background-color:var(--color-background-primary);color:var(--color-text-primary);min-height:100vh}.home-main{padding:var(--spacing-8);margin-top:var(--layout-header-height)}.home-title{font-family:var(--font-heading-primary);font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);color:var(--color-interactive-primary);margin-bottom:var(--spacing-4);text-align:center}.home-description{font-size:var(--font-size-xl);color:var(--color-text-secondary);margin-bottom:var(--spacing-8);text-align:center}.home-cta-button{display:inline-block;padding:var(--spacing-3) var(--spacing-6);color:var(--color-background-primary);font-family:var(--font-heading-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);text-decoration:none;border-radius:var(--border-radius-full);transition:all var(--transition-duration-fast) var(--transition-timing-function-default)}.home-cta-button--blog{background-color:var(--color-service-blog-identity)}.home-cta-button--blog:hover{box-shadow:0 0 var(--spacing-4) var(--color-service-blog-identity);opacity:var(--opacity-hover)}.home-cta-button--labo{background-color:var(--color-service-labo-identity)}.home-cta-button--labo:hover{box-shadow:0 0 var(--spacing-4) var(--color-service-labo-identity);opacity:var(--opacity-hover)}
