/* TKP shared navigation only: no site content, form, reader or payment CSS. */
@media(max-width:980px){
 html body header nav.tkpap-shared-primary-nav.tkpap-shared-primary-nav {
  box-sizing:border-box!important;display:flex!important;align-items:center!important;
  justify-content:space-between!important;flex-wrap:nowrap!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  gap:0!important;overflow:visible!important;
 }
 html body header nav.tkpap-shared-primary-nav.tkpap-shared-primary-nav > a{
  box-sizing:border-box!important;display:block!important;flex:1 1 0!important;
  width:auto!important;min-width:0!important;max-width:100%!important;
  padding:6px 1px!important;margin:0!important;visibility:visible!important;
  font-size:clamp(10px,2.7vw,13px)!important;line-height:1.25!important;
  letter-spacing:-.03em!important;text-align:center!important;white-space:normal!important;
  overflow-wrap:anywhere!important;
 }
}

/* TKP UI Core v1.10.24: visible top/contact only, never Reader / payment routes. */
@media(max-width:980px){
 html body.tkpap-ui-core-v11024 header.tkpap-ui-header-v11024 nav.tkpap-shared-primary-nav{
  overscroll-behavior-x:contain;scroll-behavior:auto;-ms-overflow-style:none;
 }
 html body.tkpap-ui-core-v11024 header.tkpap-ui-header-v11024 nav.tkpap-shared-primary-nav::-webkit-scrollbar{display:none}
 html body.tkpap-ui-core-v11024 header.tkpap-ui-header-v11024 nav.tkpap-shared-primary-nav > a:focus-visible{
  outline:2px solid #6f9fc8;outline-offset:-2px;
 }
}


/* TKP v1.10.27 | Official brand style shared across approved public headers.
   Same verified logo bytes on top, Contact and WP public pages.
   Scoped to explicitly approved UI routes only. No Reader auth / checkout / orders / sales. */
body.tkpap-brand-unified header.site-header a.brand,
body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand {
  display:flex!important;align-items:center!important;gap:12px!important;
  flex:0 0 auto!important;min-width:0!important;max-width:46%!important;
  text-decoration:none!important;white-space:nowrap!important;color:#20242a!important;
}
body.tkpap-brand-unified header.site-header a.brand .brand-mark,
body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-mark {
  display:grid!important;place-items:center!important;
  width:42px!important;height:42px!important;flex:0 0 42px!important;
  background:#fff!important;border:1px solid rgba(23,33,45,.10)!important;
  border-radius:50%!important;box-shadow:0 6px 16px rgba(23,33,45,.18)!important;
  overflow:hidden!important;visibility:visible!important;opacity:1!important;
}
body.tkpap-brand-unified header.site-header a.brand .brand-mark-img,
body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-mark-img {
  display:block!important;width:100%!important;height:100%!important;
  max-width:100%!important;max-height:100%!important;
  object-fit:cover!important;border-radius:50%!important;visibility:visible!important;
}
body.tkpap-brand-unified header.site-header a.brand .brand-text,
body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-text {
  display:flex!important;flex-direction:column!important;min-width:0!important;
  line-height:1.25!important;white-space:nowrap!important;
}
body.tkpap-brand-unified header.site-header a.brand .brand-ja,
body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-ja {
  display:block!important;margin:0!important;
  font-family:"Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP","Noto Serif CJK JP","MS PMincho",serif!important;
  font-size:17px!important;font-weight:600!important;letter-spacing:.08em!important;
  line-height:1.25!important;color:#20242a!important;white-space:nowrap!important;
}
body.tkpap-brand-unified header.site-header a.brand .brand-en,
body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-en {
  display:block!important;margin:4px 0 0!important;
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Noto Sans JP",sans-serif!important;
  font-size:10px!important;font-weight:700!important;letter-spacing:.18em!important;
  line-height:1.25!important;color:#9a7a4d!important;white-space:nowrap!important;
}
@media(max-width:980px) {
  body.tkpap-brand-unified header.site-header a.brand,
  body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand {
    gap:9px!important;max-width:46%!important;
  }
  body.tkpap-brand-unified header.site-header a.brand .brand-mark,
  body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-mark {
    width:38px!important;height:38px!important;flex-basis:38px!important;
  }
  body.tkpap-brand-unified header.site-header a.brand .brand-ja,
  body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-ja {
    font-size:15px!important;
  }
  body.tkpap-brand-unified header.site-header a.brand .brand-en,
  body.tkpap-ui-core-v11024 header.tp-site-header a.tp-brand .tp-brand-en {
    font-size:9px!important;margin-top:3px!important;
  }
}
