/* ─── ざつね屋 グローバルヘッダー・ナビ・フッター（全ページ共通）─── */
:root{--gz-tt:#31747C;--gz-tt-d:#46A6B1;--gz-ts:#EAF6F8;--gz-cl:#E1EEF0;--gz-tx:#575757;--gz-hd:#3C3C3C;--gz-tl:#5BBDC8}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--gz-cl)}
.site-header__inner{display:flex;align-items:center;max-width:1200px;margin:0 auto;padding:0 32px;height:72px}
.site-logo{font-weight:700;font-size:1.25rem;color:var(--gz-tl);text-decoration:none;letter-spacing:.02em;white-space:nowrap;display:inline-flex;align-items:baseline;gap:0.12em;line-height:1.2}
.site-logo__pre{font-size:.73em;font-weight:400;color:var(--gz-tt);letter-spacing:.03em}
.site-logo__ai{color:#F8981D;font-weight:700}
.site-logo__name{color:var(--gz-tl);font-weight:700}
.site-header .site-nav{position:static;top:auto;z-index:auto;background:transparent;backdrop-filter:none;border-bottom:none;padding:0;height:auto;display:flex;align-items:center;gap:20px;margin-left:auto;justify-content:flex-end}
.site-nav__list{display:flex;list-style:none;margin:0;padding:0;gap:2px;align-items:center}
.site-nav__link{font-size:.875rem;font-weight:500;padding:8px 14px;color:var(--gz-tx);text-decoration:none;letter-spacing:.03em;display:inline-block;border-radius:6px;transition:color .2s,background .2s}
.site-nav__link:hover,.site-nav__link.is-active{color:var(--gz-tt);background:var(--gz-ts)}
.site-nav__item--dropdown{position:relative}
.site-nav__dropdown-trigger{background:none;border:none;cursor:pointer;font-family:'Noto Sans JP','Hiragino Sans','Yu Gothic UI',sans-serif;font-size:.875rem;font-weight:500;padding:8px 14px;color:var(--gz-tx);letter-spacing:.03em;display:inline-flex;align-items:center;gap:4px;border-radius:6px;transition:color .2s}
.site-nav__dropdown-trigger:hover{color:var(--gz-tt);background:var(--gz-ts)}
.site-nav__caret{font-size:.75rem;pointer-events:none}
.site-nav__dropdown{position:absolute;top:100%;left:0;min-width:200px;background:#fff;box-shadow:0 8px 24px rgba(40,60,70,.12);border-radius:4px;list-style:none;padding:8px 0;margin:0;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .2s,transform .2s}
.site-nav__item--dropdown.is-open .site-nav__dropdown{opacity:1;pointer-events:auto;transform:translateY(0)}
.site-nav__dropdown-link{display:block;padding:8px 16px;color:var(--gz-hd);text-decoration:none;font-size:.875rem;letter-spacing:.02em;transition:background .15s,color .15s}
.site-nav__dropdown-link:hover{background:var(--gz-ts);color:var(--gz-tt)}
.site-nav__cta{background:#5BBDC8;color:#fff;padding:10px 24px;border-radius:999px;font-weight:700;text-decoration:none;font-size:.875rem;letter-spacing:.04em;transition:background .2s,box-shadow .2s,transform .2s;white-space:nowrap;flex-shrink:0;box-shadow:0 2px 12px rgba(91,189,200,.30)}
.site-nav__cta:hover{background:var(--gz-tt-d);color:#fff;box-shadow:0 4px 18px rgba(91,189,200,.40);transform:translateY(-1px)}
.site-nav__hamburger{display:none;flex-direction:column;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:8px;width:40px;height:40px;margin-left:8px}
.site-nav__hamburger-line{display:block;width:24px;height:2px;background:var(--gz-hd);margin:5px 0;transition:transform .3s,opacity .3s}
.site-nav__hamburger[aria-expanded="true"] .site-nav__hamburger-line:nth-child(1){transform:translateY(12px) rotate(45deg)}
.site-nav__hamburger[aria-expanded="true"] .site-nav__hamburger-line:nth-child(2){opacity:0}
.site-nav__hamburger[aria-expanded="true"] .site-nav__hamburger-line:nth-child(3){transform:translateY(-12px) rotate(-45deg)}
@media(max-width:768px){
  .site-nav__hamburger{display:flex}
  .site-header .site-nav{display:none;position:absolute;top:72px;left:0;right:0;background:rgba(255,255,255,.98);border-bottom:1px solid var(--gz-cl);padding:16px 24px;flex-direction:column;align-items:flex-start;gap:0;margin-left:0;box-shadow:0 8px 24px rgba(40,60,70,.12)}
  .site-header .site-nav.is-open{display:flex}
  .site-nav__list{flex-direction:column;width:100%;gap:0}
  .site-nav__item{width:100%}
  .site-nav__link{display:block;width:100%;padding:12px 16px}
  .site-nav__dropdown-trigger{width:100%;padding:12px 16px}
  .site-nav__item--dropdown{position:static}
  .site-nav__dropdown{position:static;box-shadow:none;border-radius:0;opacity:1;pointer-events:none;transform:none;display:none;padding:0 0 0 16px}
  .site-nav__item--dropdown.is-open .site-nav__dropdown{display:block;pointer-events:auto}
  .site-nav__cta{margin-top:12px;margin-left:0;display:block;text-align:center}
}
/* FOOTER */
.site-footer{background:#1a3a3e;color:#c8dde0;padding:56px 0 0;margin-top:80px}
.site-footer__inner{max-width:1100px;margin:0 auto;padding:0 24px 48px;display:grid;grid-template-columns:200px 1fr;gap:48px}
.site-footer__brand{display:flex;flex-direction:column;gap:12px}
.site-footer__logo{font-size:1.2rem;font-weight:700;color:#fff;text-decoration:none}
.site-footer__tagline{font-size:.78rem;line-height:1.7;color:#9bbdc1;margin:0}
.site-footer__sitemap{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.site-footer__col-title{display:block;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#7bbfc4;margin-bottom:12px}
.site-footer__col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.site-footer__col ul li a{font-size:.83rem;color:#b0cdd1;text-decoration:none;transition:color .2s}
.site-footer__col ul li a:hover{color:#fff}
.site-footer__bottom{border-top:1px solid rgba(255,255,255,.1);max-width:1100px;margin:0 auto;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.site-footer__legal{list-style:none;padding:0;margin:0;display:flex;gap:24px;flex-wrap:wrap}
.site-footer__legal a{font-size:.75rem;color:#7bbfc4;text-decoration:none}
.site-footer__legal a:hover{color:#fff}
.site-footer__copy{font-size:.75rem;color:#7bbfc4;margin:0}
@media(max-width:768px){.site-footer__inner{grid-template-columns:1fr;gap:32px}.site-footer__sitemap{grid-template-columns:repeat(2,1fr);gap:24px}.site-footer__bottom{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.site-footer__sitemap{grid-template-columns:1fr}}
