/* 全公開ページで初回描画前に読み込むヘッダー・ナビ共通CSS */
.hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;flex-shrink:0;transition:background .2s}.hamburger:hover{background:rgba(185,196,47,.08)}.hamburger span{display:block;width:22px;height:2px;background:#352c26;border-radius:2px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s}.hamburger span+span{margin-top:5px}.hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger[aria-expanded="true"] span:nth-child(2){opacity:0}.hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav{position:fixed;top:0;right:0;bottom:0;left:0;background:#f4efe5;z-index:79;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;opacity:0;pointer-events:none;transform:translateY(-12px);transition:opacity .28s,transform .28s cubic-bezier(.4,0,.2,1)}.mobile-nav.open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-nav a{font:700 24px/1.2 "Shippori Mincho",serif;color:#352c26;padding:14px 32px;border-radius:8px;transition:color .2s,background .2s;text-decoration:none;letter-spacing:.04em}.mobile-nav a:hover{color:#424812;background:rgba(185,196,47,.06)}.mobile-nav-cta{margin-top:16px;background:#B9C42F!important;color:#30261f!important;font:700 14px/1 "Space Grotesk",sans-serif!important;letter-spacing:.18em!important;text-transform:uppercase;padding:14px 36px!important;border-radius:4px!important}.mobile-nav-cta:hover{background:#9AA329!important}@media(max-width:1100px){.site-nav{display:none!important}.hamburger{display:flex}}@media(min-width:1101px){.hamburger{display:none}.mobile-nav{display:none!important}}@media(max-width:1240px) and (min-width:1101px){.site-nav{gap:14px!important}.site-nav a{font-size:11px!important;letter-spacing:.04em!important}}.mobile-nav a{font-size:21px;padding:10px 32px}.footer-icons{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.footer-icons a{display:grid;place-items:center;width:42px;height:42px;margin:0;border-radius:50%;border:1px solid rgba(251,248,240,.3);color:rgba(251,248,240,.85);text-decoration:none;transition:background .25s,color .25s,border-color .25s,transform .25s}.footer-icons a:hover{background:#dbe7a9;border-color:#dbe7a9;color:#30261f;transform:translateY(-2px)}.footer-icons svg{display:block;width:20px;height:20px}
.site-header .header-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border:1px solid rgba(48,38,31,.18);border-radius:50%;color:#424812;background:#fffdfa;text-decoration:none}.header-cart svg{width:22px;height:22px}.header-cart b{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:999px;background:#B9C42F;color:#30261f;font:700 11px/1 sans-serif}.header-cart:focus-visible{outline:2px solid #424812;outline-offset:3px}.header-cart:hover{background:#f3f4d8}@media(max-width:1100px){.site-header .brand{margin-right:auto;min-width:0}.site-header .inner{gap:10px}.site-header .header-cta{display:none}}@media(min-width:1101px) and (max-width:1350px){.site-header .header-cta{display:none}}
.site-header .inner{width:min(1440px,calc(100% - 40px))!important;gap:16px}.site-header .brand{flex-shrink:0}.site-header .brand-copy strong,.site-header .brand-copy span{white-space:nowrap}.site-header .site-nav{flex-shrink:0;gap:clamp(20px,1.7vw,28px)!important}.site-header .site-nav a{white-space:nowrap;flex-shrink:0;font-size:12px!important;letter-spacing:.04em!important}.site-header .header-cta{flex-shrink:0}@media(min-width:1101px) and (max-width:1240px){.site-header .site-nav{gap:18px!important}}@media(max-width:1100px){.site-header .brand-copy span{display:none}.site-header .inner{gap:10px}}@media(max-width:768px){.site-header .inner{width:calc(100% - 32px)!important}}
html{scrollbar-gutter:stable}

/* ページ上部のタイトル帯の文字色（全ページ共通） */
.page-hero h1,.page-hero p,.page-hero .breadcrumb,.page-hero .breadcrumb a,.page-hero .breadcrumb span,.page-hero .breadcrumb [aria-current]{color:#444444}

/* ページ上部のタイトル帯の高さを全ページで統一 */
.page-hero{display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;min-height:360px;padding-top:44px;padding-bottom:40px}
.page-hero h1{font-size:clamp(36px,5.5vw,72px)}
@media(max-width:768px){.page-hero{min-height:350px;padding-top:40px;padding-bottom:32px}}
/* タイトル帯の背景画像を非表示 */
.page-hero::before,.contact-page .page-hero::before,.page-hero-bg{display:none}
