/* Scoped shared header; derived from the current completed design. */
.tablelogue-header-root{--ink:#28292b;--muted:#80858d;--orange:#d7742e;--brown:#504946;--line:#efede9;--sans:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;display:block;width:100%;text-align:left}
.tablelogue-header-root *{box-sizing:border-box}
.tablelogue-header-root{margin:0;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;background:#fff}
.tablelogue-header-root button,.tablelogue-header-root a{-webkit-tap-highlight-color:transparent}
.tablelogue-header-root button{font:inherit;color:inherit;cursor:pointer}
.tablelogue-header-root a{color:inherit;text-decoration:none}
.tablelogue-header-root button{border:0;background:none}
.tablelogue-header-root svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.tablelogue-header-root img{display:block;width:100%;object-fit:cover}
.tablelogue-header-root h1,.tablelogue-header-root h2,.tablelogue-header-root h3,.tablelogue-header-root p{margin:0}
.tablelogue-header-root button:focus-visible,.tablelogue-header-root a:focus-visible,.tablelogue-header-root input:focus-visible{outline:3px solid #c76727;outline-offset:4px}
.tablelogue-header-root .svg-library{position:absolute;width:0;height:0;overflow:hidden}
.tablelogue-header-root .site-header{min-height:96px;max-width:1440px;margin:auto;padding:18px 3.1%;display:flex;align-items:center;gap:28px}
.tablelogue-header-root .brand{display:flex;align-items:center;gap:14px;flex-shrink:0;font-size:24px;font-weight:700;letter-spacing:.15em;color:#614840;line-height:1.35}
.tablelogue-header-root .brand small{display:block;font-size:10px;letter-spacing:.32em;color:var(--orange);margin-top:4px}
.tablelogue-header-root .brand-mark{position:relative;display:block;width:58px;height:54px;color:var(--orange)}
.tablelogue-header-root .brand-mark svg:first-child{width:58px;height:54px}
.tablelogue-header-root .brand-mark svg:last-child{position:absolute;width:30px;height:28px;left:14px;top:20px;background:#fff}
.tablelogue-header-root .tagline{font-size:11px;color:var(--muted);font-weight:700;flex:1;white-space:nowrap}
.tablelogue-header-root .site-header nav{display:flex;align-items:center;gap:26px}
.tablelogue-header-root .site-header nav a{display:flex;align-items:center;gap:5px;flex-direction:column;white-space:nowrap;font-size:11px;font-weight:700;color:#53545e}
.tablelogue-header-root .site-header nav svg{width:23px;height:23px}
.tablelogue-header-root .site-header nav a:hover{color:var(--orange)}
.tablelogue-header-root .search-toggle{border-left:1px solid var(--line);padding:10px 0 10px 22px;color:#614840}
.tablelogue-header-root .menu-toggle{display:none}
.tablelogue-header-root dialog{border:0;border-radius:15px;padding:36px;max-width:560px;width:calc(100% - 36px);color:var(--ink);box-shadow:0 18px 80px #0003}
.tablelogue-header-root dialog::backdrop{background:#302b286b}
.tablelogue-header-root dialog h2{font-size:23px;margin:10px 0 16px}
.tablelogue-header-root dialog p{font-size:14px;line-height:1.9}
.tablelogue-header-root dialog .eyebrow{font-size:10px;color:var(--orange);letter-spacing:.15em}
.tablelogue-header-root .dialog-close{position:absolute;right:12px;top:7px;font-size:28px}
.tablelogue-header-root .dialog-done{background:var(--brown);color:white;padding:9px 30px;border-radius:30px;margin-top:22px}
.tablelogue-header-root .search-input{width:100%;border:1px solid #c8c3bc;border-radius:7px;padding:12px;font:inherit;margin:3px 0 15px}
@media(max-width:1200px){.tablelogue-header-root .site-header{gap:20px}
.tablelogue-header-root .tagline{display:none}
.tablelogue-header-root .site-header nav{margin-left:auto;gap:25px}
}
@media(max-width:950px){.tablelogue-header-root .site-header nav{gap:17px}
.tablelogue-header-root .brand{font-size:21px}
.tablelogue-header-root .brand-mark{width:48px}
}
@media(max-width:700px){.tablelogue-header-root .site-header{min-height:78px;padding:12px 20px;flex-wrap:wrap;gap:0}
.tablelogue-header-root .brand{font-size:20px;gap:9px}
.tablelogue-header-root .brand-mark{width:44px;height:44px}
.tablelogue-header-root .brand-mark svg:first-child{width:44px;height:44px}
.tablelogue-header-root .brand-mark svg:last-child{width:24px;height:23px;left:10px;top:18px}
.tablelogue-header-root .brand small{font-size:8px}
.tablelogue-header-root .menu-toggle{display:flex;align-items:center;gap:9px;margin-left:auto;font-size:11px;padding:10px 0}
.tablelogue-header-root .menu-toggle span{font-size:22px}
.tablelogue-header-root .site-header nav{display:none;grid-template-columns:repeat(3,1fr);width:100%;margin:14px 0 2px;gap:15px 8px;padding:15px 0;border-top:1px solid var(--line)}
.tablelogue-header-root .site-header nav.is-open{display:grid}
.tablelogue-header-root .search-toggle{border-left:0;padding:8px}
.tablelogue-header-root dialog{padding:30px 23px}
}
@media(prefers-reduced-motion:reduce){.tablelogue-header-root *{transition:none!important}
}
.tablelogue-header-root .site-header nav .nav-group>a{flex-direction:row;min-height:44px}
.tablelogue-header-root .site-header{gap:20px}
.tablelogue-header-root .site-header .tagline{font-size:10px}
.tablelogue-header-root .site-header nav{gap:15px}
.tablelogue-header-root .nav-group{position:relative;display:flex;align-items:center;gap:3px}
.tablelogue-header-root .submenu-toggle{padding:10px 3px;font-size:15px;color:#7d7167}
.tablelogue-header-root .submenu-toggle[aria-expanded=true]{color:var(--orange)}
.tablelogue-header-root .submenu{position:absolute;z-index:5;top:calc(100% + 14px);left:-16px;min-width:215px;margin:0;padding:10px;list-style:none;background:#fffdf9;border:1px solid #eee7df;border-radius:9px;box-shadow:0 8px 25px #44302118}
.tablelogue-header-root .submenu[hidden]{display:none}
.tablelogue-header-root .site-header nav .submenu a{display:block;padding:10px 12px;font-size:12px;font-weight:500;border-radius:5px}
.tablelogue-header-root .submenu a:hover{background:#f8f1e8}
.tablelogue-header-root .nav-group:nth-last-of-type(1) .submenu{left:auto;right:0}
@media(min-width:701px){.tablelogue-header-root .submenu:before{content:"";position:absolute;left:0;right:0;top:-15px;height:15px}
}
@media(max-width:1300px){.tablelogue-header-root .site-header .tagline{display:none}
.tablelogue-header-root .site-header nav{gap:18px}
}
@media(max-width:950px){.tablelogue-header-root .site-header{padding-inline:22px}
.tablelogue-header-root .site-header nav{gap:12px}
.tablelogue-header-root .site-header nav a{font-size:10px}
.tablelogue-header-root .brand{font-size:19px}
.tablelogue-header-root .site-header .brand-mark{display:none}
}
@media(max-width:700px){.tablelogue-header-root .site-header .brand-mark{display:block}
.tablelogue-header-root .site-header nav{grid-template-columns:1fr;gap:0}
.tablelogue-header-root .nav-group{flex-wrap:wrap;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--line)}
.tablelogue-header-root .site-header nav .nav-group>a{flex-direction:row;gap:12px;font-size:13px;padding:10px 6px;flex:1}
.tablelogue-header-root .submenu-toggle{min-width:44px;min-height:44px}
.tablelogue-header-root .submenu{position:static;width:100%;box-shadow:none;border:0;background:#faf7f2;margin:3px 0 10px;padding:6px 16px}
.tablelogue-header-root .site-header nav .submenu a{font-size:12px;padding:10px}
.tablelogue-header-root .search-toggle{justify-self:start;padding:12px 6px}
}
@media(min-width:701px) and (max-width:950px){.tablelogue-header-root .site-header{flex-wrap:wrap}
.tablelogue-header-root .site-header .brand-mark{display:block}
.tablelogue-header-root .site-header nav{flex-basis:100%;justify-content:space-between;margin:16px 0 0}
}
.tablelogue-header-root .site-header nav .nav-group > a{
  font-size: 15px;
  line-height: 1.5;
}
.tablelogue-header-root .site-header nav .submenu a{ font-size: 14px; }
.tablelogue-header-root .site-header nav .submenu-toggle{ font-size: 17px; }
@media (min-width: 701px) and (max-width: 1400px){.tablelogue-header-root .site-header{ flex-wrap: wrap; }
.tablelogue-header-root .site-header .tagline{ display: none; }
.tablelogue-header-root .site-header nav{
    flex-basis: 100%;
    width: 100%;
    margin: 12px 0 0;
    justify-content: space-between;
    gap: 12px;
  }
}
@media (max-width: 700px){.tablelogue-header-root .menu-toggle{ font-size: 15px; }
.tablelogue-header-root .site-header nav .nav-group > a{ font-size: 15px; }
.tablelogue-header-root .site-header nav .submenu a{ font-size: 14px; }
}
.tablelogue-header-root .site-header .brand-mark>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
