@charset "UTF-8";

/* =========================================================
   全国手コキ風俗大図鑑 / AGENCY PORTAL EDITION v2026.10.2
   ---------------------------------------------------------
   Direction:
   Editorial luxury × directory utility × smartphone-first.
   Existing content model, taxonomy, URLs and commercial logic
   remain untouched. This layer only redesigns presentation/UX.
========================================================= */

html body.tkz-agency-edition {
  --agency-black:#09090a;
  --agency-black-2:#111113;
  --agency-charcoal:#19191c;
  --agency-paper:#f3efe6;
  --agency-paper-2:#faf8f3;
  --agency-ink:#171719;
  --agency-muted:#706b63;
  --agency-line:#d8d0c2;
  --agency-gold:#c6a666;
  --agency-gold-2:#e5cf9b;
  --agency-red:#8d1821;
  --agency-red-2:#b32630;
  --agency-white:#f8f6f1;
  --agency-shell:min(1320px,calc(100% - 56px));
  --agency-radius:0px;
  --agency-ease:cubic-bezier(.2,.7,.2,1);
  background:var(--agency-paper);
  color:var(--agency-ink);
  overflow-x:hidden;
}

html body.tkz-agency-edition,
html body.tkz-agency-edition button,
html body.tkz-agency-edition input,
html body.tkz-agency-edition select,
html body.tkz-agency-edition textarea {
  font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic","YuGothic",Meiryo,sans-serif;
}

html body.tkz-agency-edition * { box-sizing:border-box; }
html body.tkz-agency-edition a { transition:color .22s ease,background .22s ease,border-color .22s ease,transform .22s ease,opacity .22s ease; }
html body.tkz-agency-edition .tkz-page-shell { background:var(--agency-paper); }
html body.tkz-agency-edition .tkz-page-shell,
html body.tkz-agency-edition .site-main { overflow:visible; }
html body.tkz-agency-edition .tkz-home-section,
html body.tkz-agency-edition .tkz-search-section,
html body.tkz-agency-edition .tkz-dictionary-index-section,
html body.tkz-agency-edition .tkz-dictionary-latest-section { scroll-margin-top:110px; }

/* =========================================================
   GLOBAL HEADER / NAVIGATION
========================================================= */
html body.tkz-agency-edition .site-header {
  position:relative;
  z-index:120;
  background:var(--agency-black)!important;
  border:0!important;
  border-bottom:1px solid rgba(198,166,102,.34)!important;
  box-shadow:none!important;
}
html body.tkz-agency-edition .inside-header {
  width:var(--agency-shell);
  max-width:none!important;
  margin:0 auto!important;
  padding:24px 0 20px!important;
}
html body.tkz-agency-edition .site-branding { position:relative; }
html body.tkz-agency-edition .site-branding::before {
  content:"JAPAN HANDJOB DIRECTORY";
  display:block;
  margin-bottom:8px;
  color:var(--agency-gold);
  font:700 9px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.22em;
}
html body.tkz-agency-edition .main-title,
html body.tkz-agency-edition .main-title a {
  color:var(--agency-white)!important;
  font-size:clamp(26px,2.4vw,38px)!important;
  font-weight:800!important;
  line-height:1.06!important;
  letter-spacing:-.035em!important;
}
html body.tkz-agency-edition .site-description {
  margin-top:8px!important;
  color:#8b857b!important;
  font:600 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.10em!important;
}
html body.tkz-agency-edition .main-navigation {
  background:var(--agency-black)!important;
  border-bottom:1px solid #232326;
}
html body.tkz-agency-edition .main-navigation .inside-navigation {
  width:var(--agency-shell);
  max-width:none!important;
  margin:0 auto!important;
}
html body.tkz-agency-edition .main-navigation .main-nav ul li a {
  padding:16px 18px!important;
  color:#c9c5bd!important;
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.055em!important;
}
html body.tkz-agency-edition .main-navigation .main-nav ul li a:hover,
html body.tkz-agency-edition .main-navigation .main-nav ul li.current-menu-item>a,
html body.tkz-agency-edition .main-navigation .main-nav ul li.current-menu-ancestor>a {
  color:var(--agency-gold-2)!important;
  background:#121214!important;
}

/* =========================================================
   HOME / HERO IMAGE
========================================================= */
html body.tkz-agency-edition.home .tkz-home.tkz-page-shell {
  padding-bottom:0!important;
}
html body.tkz-agency-edition.home .tkz-home-keyvisual {
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border:0!important;
  background:#000;
  overflow:hidden;
}
html body.tkz-agency-edition.home .tkz-home-keyvisual img {
  width:100%!important;
  height:auto!important;
  min-height:300px;
  max-height:760px;
  object-fit:cover;
  object-position:center;
  display:block;
  filter:saturate(.88) contrast(1.04) brightness(.90);
}

/* =========================================================
   HOME / PORTAL STATEMENT
========================================================= */
html body.tkz-agency-edition.home .tkz-agency-home-hero {
  position:relative;
  margin:0!important;
  padding:0!important;
  background:
    linear-gradient(135deg,rgba(198,166,102,.055),transparent 42%),
    var(--agency-black);
  color:var(--agency-white);
  border:0!important;
  overflow:hidden;
}
html body.tkz-agency-edition.home .tkz-agency-home-hero::before {
  content:"GUIDE";
  position:absolute;
  right:-.02em;
  bottom:-.28em;
  color:rgba(255,255,255,.028);
  font:900 clamp(130px,24vw,380px)/.8 Arial,sans-serif;
  letter-spacing:-.08em;
  pointer-events:none;
}
html body.tkz-agency-edition.home .tkz-agency-home-hero-inner {
  width:var(--agency-shell)!important;
  max-width:none!important;
  min-height:520px;
  margin:0 auto!important;
  padding:82px 0 76px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(290px,.55fr)!important;
  align-items:end;
  gap:80px;
}
html body.tkz-agency-edition.home .tkz-agency-home-hero-copy { position:relative;z-index:2;max-width:820px; }
html body.tkz-agency-edition.home .tkz-home-eyecatch {
  margin:0 0 26px!important;
  padding:0!important;
  display:flex;
  align-items:center;
  gap:18px;
  color:#bdb7ad!important;
  background:transparent!important;
  border:0!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.10em!important;
}
html body.tkz-agency-edition.home .tkz-home-eyecatch span {
  color:var(--agency-gold);
  font:800 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.18em;
}
html body.tkz-agency-edition.home .tkz-home-hero h1 {
  margin:0!important;
  padding:0!important;
  color:var(--agency-white)!important;
  font-size:clamp(54px,7vw,104px)!important;
  font-weight:900!important;
  line-height:.98!important;
  letter-spacing:-.065em!important;
}
html body.tkz-agency-edition.home .tkz-home-hero h1 span { display:block; }
html body.tkz-agency-edition.home .tkz-home-hero h1 small {
  display:block;
  margin-top:24px;
  color:#6e6b66;
  font:800 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.22em;
}
html body.tkz-agency-edition.home .tkz-home-hero p {
  max-width:690px;
  margin:30px 0 0!important;
  color:#bbb6ae!important;
  font-size:18px!important;
  line-height:1.9!important;
}
html body.tkz-agency-edition.home .tkz-home-main-buttons {
  display:flex!important;
  gap:10px!important;
  margin-top:38px!important;
}
html body.tkz-agency-edition.home .tkz-home-btn {
  min-width:220px;
  min-height:74px;
  padding:16px 20px!important;
  border:1px solid #38383c!important;
  border-radius:0!important;
  display:flex!important;
  flex-direction:column;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:5px;
  text-decoration:none!important;
  box-shadow:none!important;
}
html body.tkz-agency-edition.home .tkz-home-btn span {
  font:800 9px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.16em;
  opacity:.72;
}
html body.tkz-agency-edition.home .tkz-home-btn strong { font-size:16px;line-height:1.2; }
html body.tkz-agency-edition.home .tkz-home-btn-red { background:var(--agency-red)!important;color:#fff!important;border-color:var(--agency-red)!important; }
html body.tkz-agency-edition.home .tkz-home-btn-red:hover { background:#a6212b!important;transform:translateY(-2px); }
html body.tkz-agency-edition.home .tkz-home-btn-gold { background:transparent!important;color:var(--agency-gold-2)!important;border-color:#66583a!important; }
html body.tkz-agency-edition.home .tkz-home-btn-gold:hover { background:rgba(198,166,102,.08)!important;transform:translateY(-2px); }

html body.tkz-agency-edition.home .tkz-agency-portal-stats {
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr;
  border-top:1px solid #3b3935;
}
html body.tkz-agency-edition.home .tkz-agency-portal-stats>div {
  min-height:116px;
  display:grid;
  grid-template-columns:88px 1fr;
  grid-template-rows:auto auto;
  align-content:center;
  column-gap:18px;
  padding:18px 4px;
  border-bottom:1px solid #3b3935;
}
html body.tkz-agency-edition.home .tkz-agency-portal-stats b {
  grid-row:1/3;
  align-self:center;
  color:var(--agency-gold-2);
  font:800 48px/1 Arial,sans-serif;
  letter-spacing:-.055em;
}
html body.tkz-agency-edition.home .tkz-agency-portal-stats span {
  align-self:end;
  color:#f0ece4;
  font:800 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.16em;
}
html body.tkz-agency-edition.home .tkz-agency-portal-stats small {
  align-self:start;
  margin-top:7px;
  color:#817d75;
  font-size:12px;
}

/* =========================================================
   HOME / PORTAL INDEX
========================================================= */
html body.tkz-agency-edition.home .tkz-agency-index {
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #d4ccbd;
  border-bottom:1px solid #d4ccbd;
  background:var(--agency-paper-2);
}
html body.tkz-agency-edition.home .tkz-agency-index a {
  min-height:112px;
  padding:24px 28px;
  display:grid;
  grid-template-columns:34px 1fr;
  grid-template-rows:auto auto;
  align-content:center;
  gap:5px 14px;
  color:var(--agency-ink);
  text-decoration:none;
  border-right:1px solid #d4ccbd;
}
html body.tkz-agency-edition.home .tkz-agency-index a:last-child { border-right:0; }
html body.tkz-agency-edition.home .tkz-agency-index a:hover { background:#ece6db; }
html body.tkz-agency-edition.home .tkz-agency-index i {
  grid-row:1/3;
  color:#a39a8c;
  font:700 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;
  font-style:normal;
}
html body.tkz-agency-edition.home .tkz-agency-index span {
  color:#94866a;
  font:800 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.15em;
}
html body.tkz-agency-edition.home .tkz-agency-index b { font-size:19px;line-height:1.3; }

/* =========================================================
   HOME / AGE NOTICE
========================================================= */
html body.tkz-agency-edition.home .tkz-age-notice {
  width:var(--agency-shell)!important;
  margin:20px auto 0!important;
  padding:12px 0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid var(--agency-line)!important;
  color:#8a8378!important;
}
html body.tkz-agency-edition.home .tkz-age-notice strong {
  color:var(--agency-red)!important;
  font-size:12px!important;
  letter-spacing:.04em;
}
html body.tkz-agency-edition.home .tkz-age-notice span { color:#8a8378!important;font-size:12px!important; }

/* =========================================================
   HOME / SECTION SYSTEM
========================================================= */
html body.tkz-agency-edition.home .tkz-home-section {
  width:var(--agency-shell)!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:110px 0!important;
  border:0!important;
}
html body.tkz-agency-edition.home .tkz-home-section+.tkz-home-section {
  border-top:1px solid var(--agency-line)!important;
}
html body.tkz-agency-edition.home .tkz-home-section-title {
  margin:0 0 48px!important;
  padding:0!important;
  max-width:880px;
}
html body.tkz-agency-edition.home .tkz-home-section-title>span {
  display:block!important;
  margin:0 0 14px!important;
  color:var(--agency-red)!important;
  font:800 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.18em!important;
}
html body.tkz-agency-edition.home .tkz-home-section-title h2 {
  margin:0!important;
  padding:0!important;
  color:var(--agency-ink)!important;
  font-size:clamp(38px,5vw,68px)!important;
  font-weight:900!important;
  line-height:1.08!important;
  letter-spacing:-.055em!important;
}
html body.tkz-agency-edition.home .tkz-home-section-title h2::after { display:none!important; }
html body.tkz-agency-edition.home .tkz-home-section-title p {
  max-width:720px;
  margin:20px 0 0!important;
  color:#716b62!important;
  font-size:15px!important;
  line-height:1.9!important;
}

/* =========================================================
   HALL OF FAME / PREMIUM LISTING
========================================================= */
html body.tkz-agency-edition.home .tkz-home-hall-section {
  width:100%!important;
  padding:112px max(28px,calc((100vw - 1320px)/2))!important;
  background:var(--agency-black-2)!important;
  color:#fff;
}
html body.tkz-agency-edition.home .tkz-home-hall-section .tkz-home-section-title>span { color:var(--agency-gold)!important; }
html body.tkz-agency-edition.home .tkz-home-hall-section .tkz-home-section-title h2 {
  color:#fff!important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif!important;
  font-weight:700!important;
}
html body.tkz-agency-edition.home .tkz-home-hall-section .tkz-home-section-title p { color:#aaa59d!important; }
html body.tkz-agency-edition.home .tkz-home-hall-grid {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
html body.tkz-agency-edition.home .tkz-home-hall-card {
  position:relative;
  margin:0!important;
  background:#171719!important;
  border:1px solid #333236!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden;
}
html body.tkz-agency-edition.home .tkz-home-hall-card:hover { border-color:#6e5a32!important;transform:translateY(-3px); }
html body.tkz-agency-edition.home .tkz-home-hall-photo { aspect-ratio:16/9!important;background:#09090a; }
html body.tkz-agency-edition.home .tkz-home-hall-photo img { width:100%!important;height:100%!important;object-fit:cover!important;filter:saturate(.78) contrast(1.04); }
html body.tkz-agency-edition.home .tkz-home-hall-body { padding:28px!important; }
html body.tkz-agency-edition.home .tkz-home-hall-area { color:var(--agency-gold)!important;font:800 10px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.12em!important; }
html body.tkz-agency-edition.home .tkz-home-hall-card h3 { color:#fff!important;font-size:clamp(25px,2.4vw,38px)!important;line-height:1.28!important;letter-spacing:-.035em!important; }
html body.tkz-agency-edition.home .tkz-home-hall-tags span {
  background:#27272b!important;
  border:1px solid #3b3a3e!important;
  color:#e7e2da!important;
}
html body.tkz-agency-edition.home .tkz-home-hall-plays { color:#bcb7af!important;font-size:14px!important;line-height:1.8!important; }
html body.tkz-agency-edition.home .tkz-home-hall-hours { border-top:1px solid #323237!important; }
html body.tkz-agency-edition.home .tkz-home-hall-cta { background:var(--agency-red)!important;color:#fff!important; }
html body.tkz-agency-edition.home .tkz-home-hall-official { background:transparent!important;color:#e6d2a6!important;border:1px solid #5b4b2c!important; }
html body.tkz-agency-edition.home .tkz-home-hall-badge { border-radius:0!important; }
html body.tkz-agency-edition.home .tkz-topclass-premium-head { border-radius:0!important; }

/* =========================================================
   AREA / GENRE / PLAY DIRECTORY
========================================================= */
html body.tkz-agency-edition.home .tkz-home-area-grid,
html body.tkz-agency-edition.home .tkz-home-genre-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  border-top:1px solid var(--agency-line);
  border-left:1px solid var(--agency-line);
}
html body.tkz-agency-edition.home .tkz-home-area-grid a,
html body.tkz-agency-edition.home .tkz-home-genre-grid a {
  min-height:96px!important;
  margin:0!important;
  padding:22px 24px!important;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  background:transparent!important;
  color:var(--agency-ink)!important;
  border:0!important;
  border-right:1px solid var(--agency-line)!important;
  border-bottom:1px solid var(--agency-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
html body.tkz-agency-edition.home .tkz-home-area-grid a::after,
html body.tkz-agency-edition.home .tkz-home-genre-grid a::after {
  content:"↗"!important;
  position:static!important;
  transform:none!important;
  opacity:.45;
  color:var(--agency-red)!important;
  background:none!important;
}
html body.tkz-agency-edition.home .tkz-home-area-grid a:hover,
html body.tkz-agency-edition.home .tkz-home-genre-grid a:hover { background:#ebe4d8!important; }
html body.tkz-agency-edition.home .tkz-home-area-grid strong,
html body.tkz-agency-edition.home .tkz-home-genre-grid strong { font-size:19px!important;line-height:1.35!important; }

html body.tkz-agency-edition.home .tkz-home-genre-section {
  width:100%!important;
  padding-left:max(28px,calc((100vw - 1320px)/2))!important;
  padding-right:max(28px,calc((100vw - 1320px)/2))!important;
  background:#1a191b!important;
  color:#fff;
}
html body.tkz-agency-edition.home .tkz-home-genre-section .tkz-home-section-title h2 { color:#fff!important; }
html body.tkz-agency-edition.home .tkz-home-genre-section .tkz-home-section-title>span { color:var(--agency-gold)!important; }
html body.tkz-agency-edition.home .tkz-home-genre-section .tkz-home-section-title p { color:#a8a39b!important; }
html body.tkz-agency-edition.home .tkz-home-genre-grid { border-color:#39383b; }
html body.tkz-agency-edition.home .tkz-home-genre-grid a { color:#fff!important;border-color:#39383b!important; }
html body.tkz-agency-edition.home .tkz-home-genre-grid a:hover { background:#242327!important; }
html body.tkz-agency-edition.home .tkz-home-genre-grid a::after { color:var(--agency-gold)!important; }

html body.tkz-agency-edition.home .tkz-home-play-list {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
html body.tkz-agency-edition.home .tkz-home-play-list a {
  min-height:72px!important;
  padding:17px 18px!important;
  display:flex!important;
  align-items:center;
  background:#fff!important;
  color:var(--agency-ink)!important;
  border:1px solid var(--agency-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
html body.tkz-agency-edition.home .tkz-home-play-list a:hover { border-color:#9d8d70!important;background:#f6f1e8!important;transform:translateY(-2px); }
html body.tkz-agency-edition.home .tkz-home-play-list strong { font-size:15px!important; }

/* nationwide */
html body.tkz-agency-edition.home .tkz-home-nationwide-grid {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}
html body.tkz-agency-edition.home .tkz-home-region-block {
  padding:22px!important;
  background:var(--agency-paper-2)!important;
  border:1px solid var(--agency-line)!important;
  border-radius:0!important;
}
html body.tkz-agency-edition.home .tkz-home-region-block h3 {
  margin:0 0 18px!important;
  padding-bottom:12px;
  border-bottom:1px solid var(--agency-line);
  font-size:14px!important;
  letter-spacing:.05em;
}
html body.tkz-agency-edition.home .tkz-home-prefecture-links { display:flex!important;flex-wrap:wrap;gap:7px 10px!important; }
html body.tkz-agency-edition.home .tkz-home-prefecture-links a { color:#504a42!important;font-size:13px!important;text-decoration:none!important; }
html body.tkz-agency-edition.home .tkz-home-prefecture-links a:hover { color:var(--agency-red)!important; }

/* More links */
html body.tkz-agency-edition.home .tkz-home-more,
html body.tkz-agency-edition.home .tkz-home-dictionary-more {
  margin-top:34px!important;
  text-align:left!important;
}
html body.tkz-agency-edition.home .tkz-home-more a,
html body.tkz-agency-edition.home .tkz-home-dictionary-more a {
  display:inline-flex!important;
  min-height:50px;
  align-items:center;
  padding:0 18px!important;
  border:1px solid #afa596!important;
  color:inherit!important;
  background:transparent!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:800!important;
}
html body.tkz-agency-edition.home .tkz-home-genre-section .tkz-home-more a { border-color:#4b494d!important;color:#eee9e1!important; }

/* =========================================================
   MASTER / PEOPLE
========================================================= */
html body.tkz-agency-edition.home .tkz-home-master-section {
  width:100%!important;
  padding-left:max(28px,calc((100vw - 1320px)/2))!important;
  padding-right:max(28px,calc((100vw - 1320px)/2))!important;
  background:#efe8dc!important;
}
html body.tkz-agency-edition.home .tkz-home-master-grid {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}
html body.tkz-agency-edition.home .tkz-home-master-card {
  margin:0!important;
  background:#151517!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden;
}
html body.tkz-agency-edition.home .tkz-home-master-card>a { text-decoration:none!important; }
html body.tkz-agency-edition.home .tkz-home-master-photo { aspect-ratio:3/4!important;overflow:hidden; }
html body.tkz-agency-edition.home .tkz-home-master-photo img { width:100%!important;height:100%!important;object-fit:cover!important;filter:saturate(.78) contrast(1.03);transition:transform .5s var(--agency-ease); }
html body.tkz-agency-edition.home .tkz-home-master-card:hover img { transform:scale(1.035); }
html body.tkz-agency-edition.home .tkz-home-master-body { padding:20px!important; }
html body.tkz-agency-edition.home .tkz-home-master-badge { color:var(--agency-gold)!important;background:none!important;padding:0!important;font:800 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.13em!important; }
html body.tkz-agency-edition.home .tkz-home-master-card h3 { color:#fff!important;font-size:23px!important;line-height:1.25!important;margin:10px 0!important; }
html body.tkz-agency-edition.home .tkz-home-master-catch { color:#c7c2ba!important;font-size:13px!important;line-height:1.7!important; }
html body.tkz-agency-edition.home .tkz-home-master-shop { color:#807b74!important;font-size:11px!important; }

/* =========================================================
   DICTIONARY / EDITORIAL
========================================================= */
html body.tkz-agency-edition.home .tkz-home-dictionary {
  width:100%!important;
  padding-left:max(28px,calc((100vw - 1320px)/2))!important;
  padding-right:max(28px,calc((100vw - 1320px)/2))!important;
  background:#0f0f10!important;
  color:#fff;
}
html body.tkz-agency-edition.home .tkz-home-dictionary .tkz-home-section-title>span { color:var(--agency-gold)!important; }
html body.tkz-agency-edition.home .tkz-home-dictionary .tkz-home-section-title h2 {
  color:#fff!important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif!important;
  font-weight:700!important;
}
html body.tkz-agency-edition.home .tkz-home-dictionary .tkz-home-section-title p { color:#9f9a91!important; }
html body.tkz-agency-edition.home .tkz-home-dictionary-grid {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  border-top:1px solid #333236;
  border-left:1px solid #333236;
}
html body.tkz-agency-edition.home .tkz-home-dictionary-grid a {
  min-height:112px!important;
  padding:28px!important;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  color:#eee9e0!important;
  background:#151517!important;
  border:0!important;
  border-right:1px solid #333236!important;
  border-bottom:1px solid #333236!important;
  border-radius:0!important;
  text-decoration:none!important;
  font-size:20px!important;
  font-weight:800!important;
}
html body.tkz-agency-edition.home .tkz-home-dictionary-grid a::after { content:"READ →";color:#746e65;font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em; }
html body.tkz-agency-edition.home .tkz-home-dictionary-grid a:hover { background:#1d1d20!important;color:var(--agency-gold-2)!important; }
html body.tkz-agency-edition.home .tkz-home-dictionary-more a { color:#ded8ce!important;border-color:#454348!important; }

/* =========================================================
   NEW SHOP / BUSINESS
========================================================= */
html body.tkz-agency-edition.home .tkz-home-newfree-list { border-top:1px solid var(--agency-line); }
html body.tkz-agency-edition.home .tkz-home-newfree-row {
  display:grid!important;
  grid-template-columns:180px 1fr auto;
  align-items:center;
  min-height:72px;
  gap:20px;
  padding:16px 0!important;
  border-bottom:1px solid var(--agency-line)!important;
  color:var(--agency-ink)!important;
  text-decoration:none!important;
}
html body.tkz-agency-edition.home a.tkz-home-newfree-row::after { content:"↗";color:var(--agency-red);opacity:.7; }
html body.tkz-agency-edition.home .tkz-home-newfree-area { color:#8c8171!important;font:700 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace!important; }
html body.tkz-agency-edition.home .tkz-home-newfree-name { font-size:17px!important; }

html body.tkz-agency-edition.home .tkz-home-business {
  width:100%!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  background:var(--agency-black)!important;
}
html body.tkz-agency-edition.home .tkz-home-business-box {
  min-height:300px;
  padding:58px max(28px,calc((100vw - 1320px)/2)) 58px 28px!important;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#fff!important;
  background:transparent!important;
  border:0!important;
  border-right:1px solid #2f2e31!important;
  border-radius:0!important;
}
html body.tkz-agency-edition.home .tkz-home-business-box:first-child { padding-left:max(28px,calc((100vw - 1320px)/2))!important; }
html body.tkz-agency-edition.home .tkz-home-business-box h2 { color:#fff!important;font-size:clamp(32px,4vw,52px)!important;line-height:1.05!important;letter-spacing:-.045em!important; }
html body.tkz-agency-edition.home .tkz-home-business-box p { max-width:580px;color:#9f9a92!important; }
html body.tkz-agency-edition.home .tkz-home-business-box a { align-self:flex-start;color:var(--agency-gold-2)!important;background:none!important;border:0!important;padding:0!important;text-decoration:none!important; }

/* =========================================================
   GLOBAL PAGE HERO / DIRECTORY HEADERS
========================================================= */
html body.tkz-agency-edition .tkz-page-hero {
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:72px max(28px,calc((100vw - 1320px)/2)) 66px!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 88% 15%,rgba(198,166,102,.10),transparent 26%),
    linear-gradient(135deg,#0b0b0c 0%,#161619 76%,#241317 100%)!important;
  border:0!important;
  border-top:1px solid rgba(198,166,102,.36)!important;
  border-bottom:1px solid #2e2c2e!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html body.tkz-agency-edition .tkz-page-hero::before {
  content:"DIRECTORY";
  position:absolute;
  right:3vw;
  bottom:-.19em;
  color:rgba(255,255,255,.025);
  font:900 clamp(90px,15vw,220px)/.9 Arial,sans-serif;
  letter-spacing:-.08em;
  pointer-events:none;
}
html body.tkz-agency-edition .tkz-page-eyebrow,
html body.tkz-agency-edition .tkz-search-eyebrow {
  position:relative!important;
  z-index:1;
  display:block!important;
  margin:0 0 14px!important;
  padding:0!important;
  color:var(--agency-gold)!important;
  background:none!important;
  border:0!important;
  font:800 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.18em!important;
}
html body.tkz-agency-edition .tkz-page-title,
html body.tkz-agency-edition .tkz-page-hero h1 {
  position:relative;
  z-index:1;
  max-width:960px;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  font-size:clamp(42px,6vw,76px)!important;
  font-weight:900!important;
  line-height:1.06!important;
  letter-spacing:-.055em!important;
}
html body.tkz-agency-edition .tkz-page-lead {
  position:relative;
  z-index:1;
  max-width:760px!important;
  margin:22px 0 0!important;
  color:#aaa59d!important;
  font-size:15px!important;
  line-height:1.9!important;
}

/* =========================================================
   /SHOP SEARCH / TAXONOMY DIRECTORY
========================================================= */
html body.tkz-agency-edition .tkz-search-page,
html body.tkz-agency-edition .tkz-area-page,
html body.tkz-agency-edition .tkz-genre-page,
html body.tkz-agency-edition .tkz-play-page,
html body.tkz-agency-edition .tkz-prefecture-page {
  background:var(--agency-paper)!important;
}
html body.tkz-agency-edition .tkz-search-section {
  width:var(--agency-shell)!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:80px 0!important;
  border:0!important;
  background:transparent!important;
}
html body.tkz-agency-edition .tkz-search-section+.tkz-search-section { border-top:1px solid var(--agency-line)!important; }
html body.tkz-agency-edition .tkz-search-section-head span,
html body.tkz-agency-edition .tkz-dictionary-section-heading>span {
  color:var(--agency-red)!important;
  font:800 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.16em!important;
}
html body.tkz-agency-edition .tkz-search-section-head h2,
html body.tkz-agency-edition .tkz-dictionary-section-heading h2 {
  margin:10px 0 0!important;
  color:var(--agency-ink)!important;
  font-size:clamp(32px,4vw,50px)!important;
  line-height:1.1!important;
  letter-spacing:-.045em!important;
}
html body.tkz-agency-edition .tkz-search-section-head p,
html body.tkz-agency-edition .tkz-dictionary-section-heading p { color:#756e64!important;line-height:1.8!important; }
html body.tkz-agency-edition .tkz-search-links {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  border-top:1px solid var(--agency-line)!important;
  border-left:1px solid var(--agency-line)!important;
}
html body.tkz-agency-edition .tkz-search-links a {
  min-height:82px!important;
  padding:19px 22px!important;
  display:flex!important;
  align-items:center;
  color:var(--agency-ink)!important;
  background:#f8f5ef!important;
  border:0!important;
  border-right:1px solid var(--agency-line)!important;
  border-bottom:1px solid var(--agency-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
html body.tkz-agency-edition .tkz-search-links a:hover { background:#ebe4d8!important; }
html body.tkz-agency-edition .tkz-search-section-dark {
  width:100%!important;
  padding-left:max(28px,calc((100vw - 1320px)/2))!important;
  padding-right:max(28px,calc((100vw - 1320px)/2))!important;
  background:#171719!important;
  color:#fff;
}
html body.tkz-agency-edition .tkz-search-section-dark .tkz-search-section-head h2 { color:#fff!important; }
html body.tkz-agency-edition .tkz-search-section-dark .tkz-search-section-head span { color:var(--agency-gold)!important; }
html body.tkz-agency-edition .tkz-search-section-dark .tkz-search-section-head p { color:#a8a39b!important; }
html body.tkz-agency-edition .tkz-search-section-dark .tkz-search-links { border-color:#39383b!important; }
html body.tkz-agency-edition .tkz-search-section-dark .tkz-search-links a { color:#fff!important;background:#1d1d20!important;border-color:#39383b!important; }
html body.tkz-agency-edition .tkz-search-section-dark .tkz-search-links a:hover { background:#262529!important; }

html body.tkz-agency-edition .tkz-search-nationwide-grid,
html body.tkz-agency-edition .tkz-home-nationwide-grid { align-items:start; }
html body.tkz-agency-edition .tkz-search-region-block {
  background:#f8f5ef!important;
  border:1px solid var(--agency-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* =========================================================
   SHOP CARDS / SINGLE SHOP
========================================================= */
html body.tkz-agency-edition .tkz-shop-list,
html body.tkz-agency-edition .tkz-location-shop-list { gap:18px!important; }
html body.tkz-agency-edition .tkz-paid-shop-card,
html body.tkz-agency-edition .tkz-shop-card,
html body.tkz-agency-edition .tkz-area-shop-card,
html body.tkz-agency-edition .tkz-genre-shop-card,
html body.tkz-agency-edition .tkz-play-shop-card {
  border-radius:0!important;
  box-shadow:none!important;
  border:1px solid #d1c7b8!important;
  background:#fff!important;
}
html body.tkz-agency-edition .tkz-paid-shop-card:hover,
html body.tkz-agency-edition .tkz-shop-card:hover,
html body.tkz-agency-edition .tkz-area-shop-card:hover,
html body.tkz-agency-edition .tkz-genre-shop-card:hover,
html body.tkz-agency-edition .tkz-play-shop-card:hover { border-color:#9e8a63!important;transform:translateY(-2px); }
html body.tkz-agency-edition .tkz-paid-shop-name,
html body.tkz-agency-edition .tkz-shop-card h3,
html body.tkz-agency-edition .tkz-area-shop-card h3,
html body.tkz-agency-edition .tkz-genre-shop-card h3,
html body.tkz-agency-edition .tkz-play-shop-card h3 { font-size:clamp(22px,2vw,30px)!important;line-height:1.25!important;letter-spacing:-.025em!important; }

html body.tkz-agency-edition.single-shop .tkz-shop-single {
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-bottom:80px!important;
  background:var(--agency-paper)!important;
}
html body.tkz-agency-edition.single-shop .tkz-shop-single-section {
  width:var(--agency-shell)!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:70px 0!important;
  border:0!important;
  border-bottom:1px solid var(--agency-line)!important;
  background:transparent!important;
}
html body.tkz-agency-edition.single-shop .tkz-shop-single-heading .tkz-shop-single-en {
  color:var(--agency-red)!important;
  font:800 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.16em!important;
}
html body.tkz-agency-edition.single-shop .tkz-shop-single-heading h2 {
  font-size:clamp(30px,4vw,48px)!important;
  line-height:1.1!important;
  letter-spacing:-.04em!important;
}
html body.tkz-agency-edition.single-shop .tkz-shop-single-text { color:#4f4942!important;font-size:16px!important;line-height:2!important; }

/* =========================================================
   MASTER ARCHIVE / PEOPLE DIRECTORY
========================================================= */
html body.tkz-agency-edition .tkz-master-archive-list {
  width:var(--agency-shell)!important;
  max-width:none!important;
  margin:80px auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}
html body.tkz-agency-edition .tkz-master-card {
  margin:0!important;
  background:#111113!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden;
}
html body.tkz-agency-edition .tkz-master-card>a { text-decoration:none!important; }
html body.tkz-agency-edition .tkz-master-card-photo { aspect-ratio:3/4!important;overflow:hidden; }
html body.tkz-agency-edition .tkz-master-card-photo img { width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .5s var(--agency-ease); }
html body.tkz-agency-edition .tkz-master-card:hover img { transform:scale(1.035); }
html body.tkz-agency-edition .tkz-master-card-body { padding:20px!important; }
html body.tkz-agency-edition .tkz-master-card-badge { color:var(--agency-gold)!important;background:none!important;padding:0!important;font:800 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.15em!important; }
html body.tkz-agency-edition .tkz-master-card h2,
html body.tkz-agency-edition .tkz-master-card h3 { color:#fff!important;font-size:23px!important; }
html body.tkz-agency-edition .tkz-master-card-age,
html body.tkz-agency-edition .tkz-master-card-specialties { color:#aaa59d!important; }

/* =========================================================
   DICTIONARY ARCHIVE / EDITORIAL MEDIA
========================================================= */
html body.tkz-agency-edition .tkz-dictionary-index-section,
html body.tkz-agency-edition .tkz-dictionary-latest-section {
  width:var(--agency-shell)!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:90px 0!important;
  background:transparent!important;
}
html body.tkz-agency-edition .tkz-dictionary-category-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
html body.tkz-agency-edition .tkz-dictionary-category-card {
  min-height:330px!important;
  padding:26px!important;
  display:flex!important;
  flex-direction:column;
  color:#fff!important;
  background:#151517!important;
  border:1px solid #2d2c30!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
html body.tkz-agency-edition .tkz-dictionary-category-card:hover { transform:translateY(-3px);border-color:#5e4e31!important; }
html body.tkz-agency-edition .tkz-dictionary-category-no { color:var(--agency-gold)!important;font-size:28px!important; }
html body.tkz-agency-edition .tkz-dictionary-category-type { color:#77736c!important; }
html body.tkz-agency-edition .tkz-dictionary-category-card h3 { margin-top:60px!important;color:#fff!important;font-size:28px!important;line-height:1.25!important; }
html body.tkz-agency-edition .tkz-dictionary-category-card p { color:#aaa59d!important;line-height:1.8!important; }
html body.tkz-agency-edition .tkz-dictionary-category-foot { margin-top:auto!important;border-top:1px solid #333236!important;padding-top:18px!important; }

html body.tkz-agency-edition .tkz-dictionary-archive-card {
  border-radius:0!important;
  box-shadow:none!important;
  border:1px solid var(--agency-line)!important;
  background:#fff!important;
}

/* =========================================================
   STATIC PAGES / COMMERCIAL / FORMS
========================================================= */
html body.tkz-agency-edition.page .tkz-page-shell>section:not(.tkz-page-hero),
html body.tkz-agency-edition.page .tkz-page-shell>div:not(.tkz-page-hero) {
  border-radius:0!important;
}
html body.tkz-agency-edition input[type="text"],
html body.tkz-agency-edition input[type="email"],
html body.tkz-agency-edition input[type="tel"],
html body.tkz-agency-edition select,
html body.tkz-agency-edition textarea {
  border:1px solid #cfc5b6!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
html body.tkz-agency-edition input:focus,
html body.tkz-agency-edition select:focus,
html body.tkz-agency-edition textarea:focus { border-color:#8e7b58!important;outline:2px solid rgba(198,166,102,.15)!important; }
html body.tkz-agency-edition input[type="submit"],
html body.tkz-agency-edition button[type="submit"] {
  border-radius:0!important;
  background:var(--agency-red)!important;
  color:#fff!important;
  font-weight:800!important;
  box-shadow:none!important;
}

/* =========================================================
   FOOTER
========================================================= */
html body.tkz-agency-edition .site-footer {
  background:var(--agency-black)!important;
  color:#aaa59d!important;
  border-top:1px solid #2b2a2d;
}
html body.tkz-agency-edition .site-footer a { color:#d7d2c9!important; }
html body.tkz-agency-edition .site-info { background:#070708!important;color:#77736d!important; }

/* =========================================================
   MOBILE APP-LIKE DOCK
========================================================= */
.tkz-agency-mobile-dock { display:none; }

/* =========================================================
   RESPONSIVE / TABLET
========================================================= */
@media (max-width:980px) {
  html body.tkz-agency-edition { --agency-shell:calc(100% - 36px); }
  html body.tkz-agency-edition.home .tkz-agency-home-hero-inner { grid-template-columns:1fr!important;gap:48px; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats { grid-template-columns:repeat(3,1fr); }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats>div { min-height:110px;grid-template-columns:1fr;grid-template-rows:auto auto auto;text-align:left;gap:4px;border-right:1px solid #3b3935;padding:18px; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats>div:last-child { border-right:0; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats b { grid-row:auto;font-size:38px; }
  html body.tkz-agency-edition.home .tkz-home-hall-grid { grid-template-columns:1fr!important; }
  html body.tkz-agency-edition.home .tkz-home-nationwide-grid { grid-template-columns:repeat(2,1fr)!important; }
  html body.tkz-agency-edition.home .tkz-home-master-grid,
  html body.tkz-agency-edition .tkz-master-archive-list { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html body.tkz-agency-edition .tkz-dictionary-category-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}

/* =========================================================
   RESPONSIVE / SMARTPHONE
========================================================= */
@media (max-width:768px) {
  html body.tkz-agency-edition {
    --agency-shell:calc(100% - 28px);
    padding-bottom:74px;
    background:var(--agency-paper)!important;
  }
  html body.tkz-agency-edition .site-header { position:relative!important; }
  html body.tkz-agency-edition .site-header .inside-header {
    width:100%!important;
    padding:16px 16px 14px!important;
  }
  html body.tkz-agency-edition .site-branding::before { margin-bottom:5px;font-size:7px;letter-spacing:.17em; }
  html body.tkz-agency-edition .main-title,
  html body.tkz-agency-edition .main-title a { font-size:20px!important;letter-spacing:-.025em!important; }
  html body.tkz-agency-edition .site-description { display:none!important; }
  html body.tkz-agency-edition .menu-toggle { width:42px!important;height:42px!important;border-radius:0!important;border-color:#413b30!important;color:var(--agency-gold)!important; }

  html body.tkz-agency-edition.home .tkz-home-keyvisual img {
    min-height:0;
    height:auto!important;
    max-height:none!important;
    object-fit:contain;
  }
  html body.tkz-agency-edition.home .tkz-agency-home-hero-inner {
    width:100%!important;
    padding:48px 18px 44px!important;
    gap:38px;
  }
  html body.tkz-agency-edition.home .tkz-home-eyecatch {
    display:block!important;
    margin-bottom:20px!important;
    font-size:11px!important;
    line-height:1.6!important;
  }
  html body.tkz-agency-edition.home .tkz-home-eyecatch span { display:block;margin-bottom:7px;font-size:8px; }
  html body.tkz-agency-edition.home .tkz-home-hero h1 {
    font-size:clamp(43px,12.4vw,60px)!important;
    line-height:1!important;
    letter-spacing:-.06em!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hero h1 small { margin-top:18px;font-size:8px;letter-spacing:.15em; }
  html body.tkz-agency-edition.home .tkz-home-hero p { margin-top:24px!important;font-size:15px!important;line-height:1.8!important; }
  html body.tkz-agency-edition.home .tkz-home-main-buttons { display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;margin-top:28px!important; }
  html body.tkz-agency-edition.home .tkz-home-btn { min-width:0;min-height:68px;padding:12px 13px!important; }
  html body.tkz-agency-edition.home .tkz-home-btn span { font-size:7px; }
  html body.tkz-agency-edition.home .tkz-home-btn strong { font-size:14px; }

  html body.tkz-agency-edition.home .tkz-agency-portal-stats { grid-template-columns:repeat(3,1fr); }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats>div { min-height:92px;padding:14px 10px;border-right:1px solid #3b3935; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats b { font-size:31px; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats span { font-size:7px;letter-spacing:.10em; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats small { font-size:10px;line-height:1.45; }

  html body.tkz-agency-edition.home .tkz-agency-index { grid-template-columns:repeat(2,1fr); }
  html body.tkz-agency-edition.home .tkz-agency-index a { min-height:82px;padding:16px;grid-template-columns:24px 1fr; }
  html body.tkz-agency-edition.home .tkz-agency-index a:nth-child(2) { border-right:0; }
  html body.tkz-agency-edition.home .tkz-agency-index a:nth-child(-n+2) { border-bottom:1px solid #d4ccbd; }
  html body.tkz-agency-edition.home .tkz-agency-index b { font-size:16px; }

  html body.tkz-agency-edition.home .tkz-age-notice { width:var(--agency-shell)!important;margin-top:14px!important;padding-bottom:14px!important; }

  html body.tkz-agency-edition.home .tkz-home-section { width:var(--agency-shell)!important;padding:72px 0!important; }
  html body.tkz-agency-edition.home .tkz-home-hall-section,
  html body.tkz-agency-edition.home .tkz-home-genre-section,
  html body.tkz-agency-edition.home .tkz-home-master-section,
  html body.tkz-agency-edition.home .tkz-home-dictionary {
    width:100%!important;
    padding:72px 14px!important;
  }
  html body.tkz-agency-edition.home .tkz-home-section-title { margin-bottom:30px!important; }
  html body.tkz-agency-edition.home .tkz-home-section-title>span { margin-bottom:9px!important;font-size:8px!important; }
  html body.tkz-agency-edition.home .tkz-home-section-title h2 { font-size:clamp(31px,9.6vw,42px)!important;line-height:1.08!important; }
  html body.tkz-agency-edition.home .tkz-home-section-title p { margin-top:14px!important;font-size:14px!important;line-height:1.75!important; }

  html body.tkz-agency-edition.home .tkz-home-hall-grid { grid-template-columns:1fr!important;gap:12px!important; }
  html body.tkz-agency-edition.home .tkz-home-hall-body { padding:21px!important; }
  html body.tkz-agency-edition.home .tkz-home-hall-card h3 { font-size:26px!important; }

  html body.tkz-agency-edition.home .tkz-home-area-grid,
  html body.tkz-agency-edition.home .tkz-home-genre-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html body.tkz-agency-edition.home .tkz-home-area-grid a,
  html body.tkz-agency-edition.home .tkz-home-genre-grid a { min-height:76px!important;padding:16px!important; }
  html body.tkz-agency-edition.home .tkz-home-area-grid strong,
  html body.tkz-agency-edition.home .tkz-home-genre-grid strong { font-size:16px!important; }
  html body.tkz-agency-edition.home .tkz-home-play-list { grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important; }
  html body.tkz-agency-edition.home .tkz-home-play-list a { min-height:60px!important;padding:12px 13px!important; }
  html body.tkz-agency-edition.home .tkz-home-play-list strong { font-size:14px!important; }
  html body.tkz-agency-edition.home .tkz-home-nationwide-grid { grid-template-columns:1fr!important;gap:8px!important; }
  html body.tkz-agency-edition.home .tkz-home-region-block { padding:17px!important; }

  html body.tkz-agency-edition.home .tkz-home-master-grid,
  html body.tkz-agency-edition .tkz-master-archive-list { grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important; }
  html body.tkz-agency-edition.home .tkz-home-master-body,
  html body.tkz-agency-edition .tkz-master-card-body { padding:14px!important; }
  html body.tkz-agency-edition.home .tkz-home-master-card h3,
  html body.tkz-agency-edition .tkz-master-card h2,
  html body.tkz-agency-edition .tkz-master-card h3 { font-size:18px!important; }

  html body.tkz-agency-edition.home .tkz-home-dictionary-grid { grid-template-columns:1fr!important; }
  html body.tkz-agency-edition.home .tkz-home-dictionary-grid a { min-height:76px!important;padding:18px!important;font-size:17px!important; }

  html body.tkz-agency-edition.home .tkz-home-newfree-row { grid-template-columns:92px 1fr auto;gap:10px;min-height:62px; }
  html body.tkz-agency-edition.home .tkz-home-business { grid-template-columns:1fr!important; }
  html body.tkz-agency-edition.home .tkz-home-business-box { min-height:240px;padding:42px 18px!important;border-right:0!important;border-bottom:1px solid #2f2e31!important; }
  html body.tkz-agency-edition.home .tkz-home-business-box:first-child { padding-left:18px!important; }

  html body.tkz-agency-edition .tkz-page-hero {
    padding:43px 18px 40px!important;
    border-top:1px solid rgba(198,166,102,.36)!important;
  }
  html body.tkz-agency-edition .tkz-page-hero::before { font-size:94px;right:-12px;bottom:-.1em; }
  html body.tkz-agency-edition .tkz-page-title,
  html body.tkz-agency-edition .tkz-page-hero h1 { font-size:clamp(32px,9.5vw,43px)!important;line-height:1.12!important; }
  html body.tkz-agency-edition .tkz-page-lead { margin-top:16px!important;font-size:14px!important;line-height:1.75!important; }

  html body.tkz-agency-edition .tkz-search-section { width:var(--agency-shell)!important;padding:60px 0!important; }
  html body.tkz-agency-edition .tkz-search-section-dark { width:100%!important;padding:60px 14px!important; }
  html body.tkz-agency-edition .tkz-search-section-head h2,
  html body.tkz-agency-edition .tkz-dictionary-section-heading h2 { font-size:31px!important; }
  html body.tkz-agency-edition .tkz-search-links { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html body.tkz-agency-edition .tkz-search-links a { min-height:65px!important;padding:13px!important; }

  html body.tkz-agency-edition.single-shop .tkz-shop-single { padding-bottom:30px!important; }
  html body.tkz-agency-edition.single-shop .tkz-shop-single-section { width:var(--agency-shell)!important;padding:54px 0!important; }
  html body.tkz-agency-edition.single-shop .tkz-shop-single-heading h2 { font-size:30px!important; }

  html body.tkz-agency-edition .tkz-master-archive-list { width:var(--agency-shell)!important;margin:54px auto!important; }
  html body.tkz-agency-edition .tkz-dictionary-index-section,
  html body.tkz-agency-edition .tkz-dictionary-latest-section { width:var(--agency-shell)!important;padding:60px 0!important; }
  html body.tkz-agency-edition .tkz-dictionary-category-grid { grid-template-columns:1fr!important;gap:8px!important; }
  html body.tkz-agency-edition .tkz-dictionary-category-card { min-height:240px!important;padding:20px!important; }
  html body.tkz-agency-edition .tkz-dictionary-category-card h3 { margin-top:38px!important;font-size:25px!important; }

  .tkz-agency-mobile-dock {
    position:fixed;
    z-index:9999;
    left:0;
    right:0;
    bottom:0;
    height:70px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    background:#080809;
    border-top:1px solid #343236;
    box-shadow:0 -10px 30px rgba(0,0,0,.16);
  }
  .tkz-agency-mobile-dock a {
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    color:#eee9e0!important;
    text-decoration:none!important;
    border-right:1px solid #2d2c2f;
  }
  .tkz-agency-mobile-dock a:last-child { border-right:0; }
  .tkz-agency-mobile-dock small { color:#887c64;font:800 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em; }
  .tkz-agency-mobile-dock strong { font-size:12px;line-height:1.15;white-space:nowrap; }
}

@media (max-width:390px) {
  html body.tkz-agency-edition { --agency-shell:calc(100% - 22px); }
  html body.tkz-agency-edition.home .tkz-home-hero h1 { font-size:clamp(40px,12vw,47px)!important; }
  html body.tkz-agency-edition.home .tkz-home-main-buttons { grid-template-columns:1fr; }
  html body.tkz-agency-edition.home .tkz-home-btn { min-height:58px; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats small { display:none; }
  html body.tkz-agency-edition.home .tkz-agency-portal-stats>div { min-height:76px; }
  html body.tkz-agency-edition.home .tkz-agency-index a { padding:14px 12px; }
  html body.tkz-agency-edition.home .tkz-home-section-title h2 { font-size:30px!important; }
  html body.tkz-agency-edition.home .tkz-home-area-grid strong,
  html body.tkz-agency-edition.home .tkz-home-genre-grid strong { font-size:14px!important; }
  html body.tkz-agency-edition.home .tkz-home-newfree-row { grid-template-columns:78px 1fr auto; }
  html body.tkz-agency-edition .tkz-page-title,
  html body.tkz-agency-edition .tkz-page-hero h1 { font-size:31px!important; }
  html body.tkz-agency-edition .tkz-search-links { grid-template-columns:1fr!important; }
}

@media (prefers-reduced-motion:reduce) {
  html body.tkz-agency-edition * { scroll-behavior:auto!important;transition:none!important;animation:none!important; }
}

/* =========================================================
   AGENCY PORTAL EDITION v2026.10.1 / PC LAYOUT POLISH
   Desktop only. Smartphone layout intentionally untouched.
   - Release legacy 1100px home wrapper on PC.
   - Let the 1320px agency grid breathe.
   - Rebalance premium cards and business/recruit split panel.
========================================================= */
@media (min-width: 901px) {
  /* The legacy PC stylesheet capped the whole home page at 1100px.
     The agency system already owns its internal 1320px shells, so the
     outer home wrapper must be full-width for the intended portal layout. */
  html body.tkz-agency-edition.home .tkz-home.tkz-page-shell {
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  /* Premium / Hall of Fame feature spread */
  html body.tkz-agency-edition.home .tkz-home-hall-section {
    padding-top:104px!important;
    padding-bottom:104px!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-grid {
    gap:24px!important;
    align-items:stretch!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card {
    height:100%!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card-inner {
    height:100%;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card--top-featured .tkz-topclass-premium-head {
    min-height:72px!important;
    margin:0 -20px 16px!important;
    padding:15px 20px 14px!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:18px!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card--top-featured .tkz-topclass-premium-head>strong {
    white-space:nowrap!important;
    word-break:keep-all!important;
    font-size:clamp(18px,1.5vw,24px)!important;
    line-height:1.05!important;
    letter-spacing:.09em!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card--top-featured .tkz-topclass-premium-head>span,
  html body.tkz-agency-edition.home .tkz-home-hall-card--top-featured .tkz-topclass-premium-head>em {
    font-size:9px!important;
    letter-spacing:.15em!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card h3 {
    font-size:clamp(28px,2.15vw,38px)!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-body {
    padding:26px 28px 30px!important;
  }

  /* Listing / recruit close: give both halves equal visual weight. */
  html body.tkz-agency-edition.home .tkz-home-business-box {
    min-height:330px!important;
    justify-content:center!important;
  }
  html body.tkz-agency-edition.home .tkz-home-business-box:first-child {
    padding:64px 64px 64px max(28px,calc((100vw - 1320px)/2))!important;
  }
  html body.tkz-agency-edition.home .tkz-home-business-box:last-child {
    padding:64px max(28px,calc((100vw - 1320px)/2)) 64px 64px!important;
  }
  html body.tkz-agency-edition.home .tkz-home-business-box h2 {
    margin:0 0 18px!important;
    font-size:clamp(38px,3.6vw,56px)!important;
  }
  html body.tkz-agency-edition.home .tkz-home-business-box p {
    margin:0 0 22px!important;
    font-size:15px!important;
    line-height:1.9!important;
  }
}

@media (min-width: 901px) and (max-width: 1180px) {
  html body.tkz-agency-edition.home {
    --agency-shell:min(1080px,calc(100% - 56px));
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card--top-featured .tkz-topclass-premium-head>span,
  html body.tkz-agency-edition.home .tkz-home-hall-card--top-featured .tkz-topclass-premium-head>em {
    display:none!important;
  }
  html body.tkz-agency-edition.home .tkz-home-hall-card--top-featured .tkz-topclass-premium-head {
    grid-template-columns:1fr!important;
    text-align:center!important;
  }
}

/* =========================================================
   AGENCY PORTAL EDITION v2026.10.2 / PC HEADER NAV COMPLETE
   Desktop only. Keep all five top navigation items on one row.
   Smartphone navigation is intentionally untouched.
========================================================= */
@media (min-width: 901px) {
  /* GeneratePress float-right navigation becomes an explicit flex row. */
  html body.tkz-agency-edition .site-header .inside-header {
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:44px!important;
  }

  html body.tkz-agency-edition .site-header .site-branding {
    flex:0 0 auto!important;
    min-width:0!important;
    margin:0 auto 0 0!important;
  }

  html body.tkz-agency-edition .site-header .main-navigation,
  html body.tkz-agency-edition #site-navigation {
    flex:0 1 auto!important;
    width:auto!important;
    max-width:none!important;
    margin:0 0 0 auto!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    float:none!important;
    clear:none!important;
  }

  html body.tkz-agency-edition .site-header .main-navigation .inside-navigation,
  html body.tkz-agency-edition #site-navigation .inside-navigation {
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
  }

  html body.tkz-agency-edition .site-header .main-navigation .main-nav,
  html body.tkz-agency-edition #site-navigation .main-nav {
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  html body.tkz-agency-edition .site-header .main-navigation .main-nav > ul,
  html body.tkz-agency-edition #site-navigation .main-nav > ul {
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-end!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    gap:2px!important;
    white-space:nowrap!important;
  }

  html body.tkz-agency-edition .site-header .main-navigation .main-nav > ul > li,
  html body.tkz-agency-edition #site-navigation .main-nav > ul > li {
    display:flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    clear:none!important;
  }

  html body.tkz-agency-edition .site-header .main-navigation .main-nav > ul > li > a,
  html body.tkz-agency-edition #site-navigation .main-nav > ul > li > a {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:56px!important;
    padding:0 17px!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    line-height:1.2!important;
  }
}

/* Mid-size desktop / notebook: retain one row with slightly tighter spacing. */
@media (min-width: 901px) and (max-width: 1180px) {
  html body.tkz-agency-edition .site-header .inside-header {
    gap:24px!important;
  }
  html body.tkz-agency-edition .site-header .main-navigation .main-nav > ul > li > a,
  html body.tkz-agency-edition #site-navigation .main-nav > ul > li > a {
    padding-left:11px!important;
    padding-right:11px!important;
    font-size:12px!important;
    letter-spacing:.035em!important;
  }
}
