/* ---- base ---- */
html,body{margin:0;padding:0;background:#2A241E}
*{box-sizing:border-box}
body{color:#FFFFFF;font-family:'Zen Kaku Gothic New',sans-serif;font-weight:500;line-height:2;overflow-x:clip;-webkit-text-size-adjust:100%}
img{max-width:100%;height:auto}
a{text-decoration:none;color:#EFB0A2}
a:hover{color:#F5CFC5}
::selection{background:#9B4034;color:#fff}

@keyframes takiFade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes takiCue{0%{transform:translateY(0);opacity:.25}50%{transform:translateY(9px);opacity:1}100%{transform:translateY(0);opacity:.25}}
@keyframes takiGlow{0%,100%{opacity:.45}50%{opacity:.8}}

/* ---- header ---- */
.tk-header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;padding:16px 32px;background:linear-gradient(180deg,rgba(20,14,8,.72) 0%,rgba(20,14,8,.35) 65%,rgba(20,14,8,0) 100%)}
.tk-brand{display:flex;flex-shrink:0;white-space:nowrap;align-items:baseline;gap:12px;color:#FBF7EC;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.tk-brand:hover{color:#FBF7EC}
.tk-brand-ja{font-family:'Shippori Mincho B1',serif;font-weight:400;font-size:22px;letter-spacing:.22em}
.tk-brand-en{font-family:'Cormorant Garamond',serif;font-size:11px;letter-spacing:.34em;color:#E4D6BC;text-transform:uppercase}
.tk-brand img{max-height:44px;width:auto}

.tk-nav{display:flex;align-items:center;justify-content:flex-end}
.tk-nav-list{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 22px;margin:0;padding:0;list-style:none;font-size:13px;letter-spacing:.12em;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.tk-nav-list a{color:#F0E7D4}
.tk-nav-list a:hover{color:#EFB0A2}
.tk-nav-list .tk-cta>a,.tk-nav-list li.menu-item-cta>a{display:flex;align-items:center;gap:8px;background:#9B4034;padding:12px 22px;color:#fff;font-weight:500;letter-spacing:.14em;transition:background .25s ease}
.tk-nav-list .tk-cta>a:hover,.tk-nav-list li.menu-item-cta>a:hover{background:#B84C3E;color:#fff}

.tk-burger{display:none;width:46px;height:46px;padding:0;border:1px solid rgba(155,64,52,.6);background:rgba(20,14,8,.5);cursor:pointer;position:relative}
.tk-burger span{position:absolute;left:12px;right:12px;height:1px;background:#F0E7D4;transition:transform .3s ease,opacity .3s ease}
.tk-burger span:nth-child(1){top:16px}
.tk-burger span:nth-child(2){top:22px}
.tk-burger span:nth-child(3){top:28px}
.tk-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.tk-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.tk-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media (max-width:900px){
  .tk-header{padding:14px 20px}
  .tk-burger{display:block}
  .tk-nav{position:fixed;left:0;right:0;top:0;padding:88px 24px 40px;background:rgba(14,10,7,.97);flex-direction:column;align-items:stretch;transform:translateY(-102%);transition:transform .4s cubic-bezier(.22,.61,.36,1);z-index:-1}
  .tk-nav.is-open{transform:none}
  .tk-nav-list{flex-direction:column;align-items:stretch;gap:0;font-size:15px}
  .tk-nav-list li{border-bottom:1px solid rgba(155,64,52,.28)}
  .tk-nav-list a{display:block;padding:16px 4px}
  .tk-nav-list .tk-cta>a,.tk-nav-list li.menu-item-cta>a{justify-content:center;margin:20px 0 0;padding:16px 22px;white-space:nowrap;font-size:14px}
}

/* ---- scroll reveal ---- */
.tk-reveal{opacity:0;transform:translateY(22px)}
.tk-reveal.is-in{opacity:1;transform:none}

/* ---- 投稿（お知らせ／ブログ） ---- */
.tk-page-head{position:relative;padding:clamp(140px,18vw,220px) 7vw clamp(40px,6vw,70px);background:#000}
.tk-page-head .tk-en{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:22px;letter-spacing:.3em;color:#E8A79A}
.tk-page-title{margin:22px 0 0;font-family:'Shippori Mincho B1',serif;font-weight:400;font-size:clamp(28px,3.6vw,48px);line-height:1.4;letter-spacing:.06em;color:#fff}
.tk-main{padding:clamp(60px,8vw,110px) 7vw;background:#2A241E}
.tk-inner{max-width:1000px;margin:0 auto}
.tk-list{display:flex;flex-direction:column;gap:0;border-top:1px solid rgba(155,64,52,.28)}
.tk-list-item{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px 28px;padding:26px 0;border-bottom:1px solid rgba(155,64,52,.28)}
.tk-date{font-family:'Cormorant Garamond',serif;font-size:14px;letter-spacing:.2em;color:#EDE7DC}
.tk-list-item h2{margin:0;font-family:'Shippori Mincho B1',serif;font-weight:400;font-size:clamp(18px,2vw,24px);line-height:1.7;letter-spacing:.06em}
.tk-list-item h2 a{color:#fff}
.tk-list-item h2 a:hover{color:#EFB0A2}
.tk-thumb{margin:0 0 18px;border:1px solid rgba(155,64,52,.2)}
.tk-thumb img{display:block;width:100%;height:auto}
.tk-entry{font-size:15px;line-height:2.4;letter-spacing:.08em;color:#fff}
.tk-entry h2,.tk-entry h3,.tk-entry h4{font-family:'Shippori Mincho B1',serif;font-weight:400;letter-spacing:.06em;line-height:1.6;color:#fff}
.tk-entry h2{font-size:clamp(22px,2.6vw,32px);margin:56px 0 20px}
.tk-entry h3{font-size:clamp(19px,2.2vw,26px);margin:44px 0 16px}
.tk-entry a{color:#EFB0A2;text-decoration:underline}
.tk-entry img{height:auto}
.tk-entry blockquote{margin:32px 0;padding-left:20px;border-left:1px solid rgba(155,64,52,.5);color:#EDE7DC}
.tk-pager{display:flex;flex-wrap:wrap;gap:10px;margin-top:56px;font-size:14px;letter-spacing:.1em}
.tk-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;padding:0 12px;border:1px solid rgba(155,64,52,.4);color:#fff}
.tk-pager .page-numbers.current,.tk-pager .page-numbers:hover{background:#9B4034;color:#fff}
.tk-btn-solid{display:inline-flex;align-items:center;gap:14px;padding:16px 32px;background:#9B4034;color:#fff;font-size:14px;font-weight:500;letter-spacing:.2em;box-shadow:0 10px 26px rgba(0,0,0,.28);transition:background .25s ease,transform .25s ease}
.tk-btn-solid:hover{background:#B84C3E;color:#fff;transform:translateY(-2px)}



/* ---- レスポンシブ（デザイン正本から同期） ---- */

/* --- front-page.php --- */
@media (max-width: 820px) { [data-m-img] { order: 2; } }
@media (min-width: 641px) and (max-width: 1024px){
    /* PCと同じカラム数を維持（auto-fitの折り返しを無効化） */
    [style*="minmax(min(100%, 340px)"], [style*="minmax(min(100%,340px)"],
    [style*="minmax(min(100%, 320px)"], [style*="minmax(min(100%,320px)"],
    [style*="minmax(min(100%, 280px)"], [style*="minmax(min(100%,280px)"],
    #tk-content [style*="minmax(min(100%, #tk-content 420px)"], #tk-content [style*="minmax(min(100%, #tk-content 420px)"]{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    #tk-content [style*="minmax(min(100%, #tk-content 260px)"], #tk-content [style*="minmax(min(100%, #tk-content 260px)"]{ grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
    [style*="minmax(min(100%, 300px)"], [style*="minmax(min(100%,300px)"],
    [style*="minmax(min(100%, 240px)"], [style*="minmax(min(100%,240px)"],
    [style*="minmax(min(100%, 230px)"], [style*="minmax(min(100%,230px)"],
    [style*="minmax(min(100%, 220px)"], [style*="minmax(min(100%,220px)"],
    [style*="minmax(min(100%, 200px)"], [style*="minmax(min(100%,200px)"],
    [style*="minmax(min(100%, 180px)"], [style*="minmax(min(100%,180px)"],
    [style*="minmax(min(50%, 220px)"], [style*="minmax(min(50%,220px)"],
    [style*="minmax(min(50%, 190px)"], [style*="minmax(min(50%,190px)"],
    #tk-content [style*="minmax(min(50%, #tk-content 170px)"], #tk-content [style*="minmax(min(50%, #tk-content 170px)"]{ grid-auto-flow: column !important; grid-template-columns: none !important; }
    #tk-content .taki-whisky-cols{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-flow: row !important; }
    #tk-content .taki-drink-cols{ grid-auto-flow: column !important; grid-template-columns: none !important; }
  }
@media (max-width: 640px) {
    #tk-content [data-taki-eyebrow]{ font-size: 12px !important; }
  }
@media (max-width: 820px) {
    #tk-content .taki-nav-toggle{ display:flex; }
    #tk-content .taki-nav{ display:none !important; position:fixed; top:0; left:0; right:0; bottom:0; flex-direction:column; align-items:flex-start; gap:0; background:#17130F; padding:100px 32px 40px; overflow-y:auto; z-index:40; }
    #tk-content #taki-nav-check:checked ~ .taki-nav{ display:flex !important; }
    #tk-content .taki-nav a{ width:100%; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); font-size:15px; }
    #tk-content .taki-nav a:last-child{ background:#9B4034; text-align:center; margin-top:16px; padding:16px; border:0; white-space:nowrap; font-size:14px; }
  }
@media (max-width: 640px) {
    #tk-content .taki-usecase-grid{ grid-template-columns: repeat(2, 1fr) !important; }
    #tk-content .taki-cta-1line, #tk-content a[href*="contact"]{ white-space: nowrap !important; }
    #tk-content .taki-cta-1line, #tk-content a[href*="contact"], #tk-content a[href*="tel:"]{ font-size: 13px !important; letter-spacing: .08em !important; padding-left: 20px !important; padding-right: 20px !important; }
    #tk-content .taki-eyebrow{ font-size: 14px !important; }
    #tk-content .taki-oneline-mobile{ white-space: nowrap; font-size: 19px !important; }
    #tk-content .taki-insta-head{ font-size: 15px !important; }
    #tk-content .taki-oneline-mobile br{ display: none; }
    #tk-content .taki-insta-grid{ grid-template-columns: repeat(2, 1fr) !important; }
    #tk-content .taki-usecase-grid > div{ font-size: 12px !important; padding: 22px 8px !important; white-space: nowrap; text-align: center; }
    #tk-content .taki-nowrap-mobile{ white-space: nowrap !important; }
    #tk-content .taki-left-mobile{ text-align: left !important; }
    #tk-content .taki-craft-row{ flex-direction: column !important; gap: 10px !important; font-size: 18px !important; }
    #tk-content section p, #tk-content footer p{ text-wrap: wrap !important; line-break: strict; overflow-wrap: normal; font-size: 14px !important; line-height: 2.05 !important; letter-spacing: .01em !important; }
    /* セクション内側の二重パディングを解除して左右を対称に */
    #tk-content [style*="padding:0 7vw"], #tk-content [style*="padding: 0px 7vw"], #tk-content [style*="padding: 0 7vw"]{ padding-left: 0 !important; padding-right: 0 !important; }
    #tk-content section p br.taki-keep-mobile{ display: inline; }
    #tk-content section p br, #tk-content footer p br{ display: none; }
    #tk-content [data-taki-catch]{ font-size: 13px !important; line-height: 2 !important; letter-spacing: .05em !important; }
    #tk-content [data-taki-catch] br{ display: inline !important; }
    #tk-content [data-taki-catch] span{ font-size: 18px !important; }
    #tk-content h1, #tk-content h2, #tk-content h3{ word-break: keep-all; line-break: strict; text-wrap: wrap !important; letter-spacing: .03em !important; }
    #tk-content h1{ font-size: clamp(26px, 8vw, 34px) !important; line-height: 1.45 !important; }
    #tk-content h2{ font-size: clamp(22px, 6.6vw, 28px) !important; line-height: 1.55 !important; }
    #tk-content h3{ font-size: clamp(16px, 4.6vw, 19px) !important; line-height: 1.7 !important; }
    #tk-content section{ padding-left: 32px !important; padding-right: 32px !important; }
    /* 右端の余白（横はみ出し）対策：強制nowrapと負のマージンを解除 */
    html, body{ overflow-x: clip !important; max-width: 100% !important; }
    #tk-content [style*="margin-right:-7vw"], #tk-content [style*="margin-right: -7vw"]{ margin-right: 0 !important; }
    #tk-content [style*="margin-left:-7vw"], #tk-content [style*="margin-left: -7vw"]{ margin-left: 0 !important; }
    #tk-content [style*="left:7vw"], #tk-content [style*="left: 7vw"]{ right: 6vw !important; max-width: none !important; padding-right: 0 !important; }
    #tk-content .taki-oneline-mobile{ white-space: normal !important; }
    #tk-content .taki-nowrap-mobile{ white-space: normal !important; }
    #tk-content .taki-usecase-grid > div{ white-space: normal !important; }
    #tk-content h1, #tk-content h2, #tk-content h3, #tk-content p{ max-width: 100%; }
    #tk-content img, #tk-content iframe{ max-width: 100%; }
  }

/* --- page-about.php --- */
@media (max-width: 820px) { [data-m-img] { order: 2; } }
@media (min-width: 641px) and (max-width: 1024px){
    [style*="minmax(min(100%, 340px)"], [style*="minmax(min(100%,340px)"],
    [style*="minmax(min(100%, 320px)"], [style*="minmax(min(100%,320px)"],
    [style*="minmax(min(100%, 280px)"], [style*="minmax(min(100%,280px)"],
    #tk-content [style*="minmax(min(100%, #tk-content 420px)"], #tk-content [style*="minmax(min(100%, #tk-content 420px)"]{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    #tk-content [style*="minmax(min(100%, #tk-content 260px)"], #tk-content [style*="minmax(min(100%, #tk-content 260px)"]{ grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
    [style*="minmax(min(100%, 300px)"], [style*="minmax(min(100%,300px)"],
    [style*="minmax(min(100%, 240px)"], [style*="minmax(min(100%,240px)"],
    [style*="minmax(min(100%, 230px)"], [style*="minmax(min(100%,230px)"],
    [style*="minmax(min(100%, 220px)"], [style*="minmax(min(100%,220px)"],
    [style*="minmax(min(100%, 200px)"], [style*="minmax(min(100%,200px)"],
    [style*="minmax(min(100%, 180px)"], [style*="minmax(min(100%,180px)"],
    [style*="minmax(min(50%, 220px)"], [style*="minmax(min(50%,220px)"],
    [style*="minmax(min(50%, 190px)"], [style*="minmax(min(50%,190px)"],
    #tk-content [style*="minmax(min(50%, #tk-content 170px)"], #tk-content [style*="minmax(min(50%, #tk-content 170px)"]{ grid-auto-flow: column !important; grid-template-columns: none !important; }
  }
@media (max-width: 820px) {
    #tk-content .taki-nav-toggle{ display:flex; }
    #tk-content .taki-nav{ display:none !important; position:fixed; top:0; left:0; right:0; bottom:0; flex-direction:column; align-items:flex-start; gap:0; background:#17130F; padding:100px 32px 40px; overflow-y:auto; z-index:40; }
    #tk-content #taki-nav-check:checked ~ .taki-nav{ display:flex !important; }
    #tk-content .taki-nav a{ width:100%; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); font-size:15px; }
    #tk-content .taki-nav a:last-child{ background:#9B4034; text-align:center; margin-top:16px; padding:16px; border:0; white-space:nowrap; font-size:14px; }
  }
@media (max-width: 640px) {
    #tk-content .taki-eyebrow{ font-size: 14px !important; }
    #tk-content a[href*="contact"]{ white-space: nowrap !important; }
    #tk-content a[href*="contact"], #tk-content a[href*="tel:"]{ font-size: 13px !important; letter-spacing: .08em !important; padding-left: 20px !important; padding-right: 20px !important; }
    #tk-content .taki-left-mobile{ text-align: left !important; }
    #tk-content .taki-usecase-grid{ grid-template-columns: repeat(2, 1fr) !important; }
    #tk-content .taki-usecase-grid > div{ font-size: 12px !important; padding: 22px 8px !important; }
  }
@media (min-width: 641px) and (max-width: 1024px) {
    #tk-content .taki-usecase-grid{ grid-template-columns: repeat(4, 1fr) !important; }
  }
@media (max-width: 640px) {
    #tk-content section p, #tk-content footer p{ text-wrap: wrap !important; line-break: strict; overflow-wrap: normal; font-size: 14px !important; line-height: 2.05 !important; letter-spacing: .01em !important; }
    #tk-content [style*="padding:0 7vw"], #tk-content [style*="padding: 0px 7vw"], #tk-content [style*="padding: 0 7vw"]{ padding-left: 0 !important; padding-right: 0 !important; }
    #tk-content section p br, #tk-content footer p br{ display: none; }
    #tk-content h1, #tk-content h2, #tk-content h3{ word-break: keep-all; line-break: strict; text-wrap: wrap !important; letter-spacing: .03em !important; }
    #tk-content h1{ font-size: clamp(26px, 8vw, 34px) !important; line-height: 1.45 !important; }
    #tk-content h2{ font-size: clamp(22px, 6.6vw, 28px) !important; line-height: 1.55 !important; }
    #tk-content h3{ font-size: clamp(16px, 4.6vw, 19px) !important; line-height: 1.7 !important; }
    #tk-content section{ padding-left: 32px !important; padding-right: 32px !important; }
    html, body{ overflow-x: clip !important; max-width: 100% !important; }
    #tk-content [style*="margin-right:-7vw"], #tk-content [style*="margin-right: -7vw"]{ margin-right: 0 !important; }
    #tk-content [style*="margin-left:-7vw"], #tk-content [style*="margin-left: -7vw"]{ margin-left: 0 !important; }
    #tk-content [style*="left:7vw"], #tk-content [style*="left: 7vw"]{ right: 6vw !important; max-width: none !important; padding-right: 0 !important; }
    #tk-content .taki-oneline-mobile{ white-space: normal !important; }
    #tk-content .taki-nowrap-mobile{ white-space: normal !important; }
    #tk-content .taki-usecase-grid > div{ white-space: normal !important; }
    #tk-content h1, #tk-content h2, #tk-content h3, #tk-content p{ max-width: 100%; }
    #tk-content img, #tk-content iframe{ max-width: 100%; }
  }

/* --- page-menu.php --- */
@media (max-width: 820px) {
    #tk-content .taki-nav-toggle{ display:flex; }
    #tk-content .taki-nav{ display:none !important; position:fixed; top:0; left:0; right:0; bottom:0; flex-direction:column; align-items:flex-start; gap:0; background:#17130F; padding:100px 32px 40px; overflow-y:auto; z-index:40; }
    #tk-content #taki-nav-check:checked ~ .taki-nav{ display:flex !important; }
    #tk-content .taki-nav a{ width:100%; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); font-size:15px; }
    #tk-content .taki-nav a:last-child{ background:#9B4034; text-align:center; margin-top:16px; padding:16px; border:0; }
  }
@media (max-width: 640px) {
    #tk-content .taki-eyebrow{ font-size: 14px !important; }
    #tk-content .taki-jump-row{ flex-wrap: nowrap !important; gap: 8px !important; }
    #tk-content .taki-jump-row a{ flex: 1; padding: 12px 6px !important; text-align: center; white-space: nowrap; }
  }
@media (min-width: 641px) and (max-width: 1024px) {
    #tk-content .taki-drink-cols{ grid-auto-flow: column !important; grid-template-columns: none !important; }
    #tk-content .taki-whisky-cols{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-flow: row !important; }
    [style*="minmax(min(100%, 340px)"], [style*="minmax(min(100%,340px)"],
    [style*="minmax(min(100%, 320px)"], [style*="minmax(min(100%,320px)"],
    #tk-content [style*="minmax(min(100%, #tk-content 280px)"], #tk-content [style*="minmax(min(100%, #tk-content 280px)"]{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    [style*="minmax(min(100%, 230px)"], [style*="minmax(min(100%,230px)"],
    [style*="minmax(min(100%, 220px)"], [style*="minmax(min(100%,220px)"],
    #tk-content [style*="minmax(min(50%, #tk-content 170px)"], #tk-content [style*="minmax(min(50%, #tk-content 170px)"]{ grid-auto-flow: column !important; grid-template-columns: none !important; }
  }
@media (max-width: 640px) {
    #tk-content section p, #tk-content footer p{ text-wrap: wrap !important; line-break: strict; overflow-wrap: normal; font-size: 14px !important; line-height: 2.05 !important; letter-spacing: .01em !important; }
    #tk-content [style*="padding:0 7vw"], #tk-content [style*="padding: 0px 7vw"], #tk-content [style*="padding: 0 7vw"]{ padding-left: 0 !important; padding-right: 0 !important; }
    #tk-content section p br, #tk-content footer p br{ display: none; }
    #tk-content h1, #tk-content h2, #tk-content h3{ word-break: keep-all; line-break: strict; text-wrap: wrap !important; letter-spacing: .03em !important; }
    #tk-content h1{ font-size: clamp(26px, 8vw, 34px) !important; line-height: 1.45 !important; }
    #tk-content h2{ font-size: clamp(22px, 6.6vw, 28px) !important; line-height: 1.55 !important; }
    #tk-content h3{ font-size: clamp(15px, 4.2vw, 18px) !important; line-height: 1.7 !important; }
    #tk-content section{ padding-left: 32px !important; padding-right: 32px !important; }
    #tk-content a[href*="contact"]{ white-space: nowrap !important; }
    #tk-content a[href*="contact"], #tk-content a[href*="tel:"]{ font-size: 13px !important; letter-spacing: .08em !important; padding-left: 20px !important; padding-right: 20px !important; }
    html, body{ overflow-x: clip !important; max-width: 100% !important; }
    #tk-content [style*="margin-right:-7vw"], #tk-content [style*="margin-right: -7vw"]{ margin-right: 0 !important; }
    #tk-content [style*="margin-left:-7vw"], #tk-content [style*="margin-left: -7vw"]{ margin-left: 0 !important; }
    #tk-content [style*="left:7vw"], #tk-content [style*="left: 7vw"]{ right: 6vw !important; max-width: none !important; padding-right: 0 !important; }
    #tk-content .taki-oneline-mobile{ white-space: normal !important; }
    #tk-content .taki-nowrap-mobile{ white-space: normal !important; }
    #tk-content .taki-jump-row a{ white-space: normal !important; }
    #tk-content h1, #tk-content h2, #tk-content h3, #tk-content p{ max-width: 100%; }
    #tk-content img, #tk-content iframe{ max-width: 100%; }
  }

/* --- page-owner.php --- */
@media (max-width: 820px) { [data-m-img] { order: 2; } }
@media (min-width: 641px) and (max-width: 1024px){
    [style*="minmax(min(100%, 340px)"], [style*="minmax(min(100%,340px)"],
    [style*="minmax(min(100%, 320px)"], [style*="minmax(min(100%,320px)"],
    #tk-content [style*="minmax(min(100%, #tk-content 280px)"], #tk-content [style*="minmax(min(100%, #tk-content 280px)"]{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    [style*="minmax(min(100%, 300px)"], [style*="minmax(min(100%,300px)"],
    [style*="minmax(min(100%, 240px)"], [style*="minmax(min(100%,240px)"],
    [style*="minmax(min(100%, 220px)"], [style*="minmax(min(100%,220px)"],
    [style*="minmax(min(100%, 180px)"], [style*="minmax(min(100%,180px)"],
    [style*="minmax(min(50%, 220px)"], [style*="minmax(min(50%,220px)"],
    [style*="minmax(min(50%, 190px)"], [style*="minmax(min(50%,190px)"],
    #tk-content [style*="minmax(min(50%, #tk-content 170px)"], #tk-content [style*="minmax(min(50%, #tk-content 170px)"]{ grid-auto-flow: column !important; grid-template-columns: none !important; }
  }
@media (max-width: 820px) {
    #tk-content .taki-nav-toggle{ display:flex; }
    #tk-content .taki-nav{ display:none !important; position:fixed; top:0; left:0; right:0; bottom:0; flex-direction:column; align-items:flex-start; gap:0; background:#17130F; padding:100px 32px 40px; overflow-y:auto; z-index:40; }
    #tk-content #taki-nav-check:checked ~ .taki-nav{ display:flex !important; }
    #tk-content .taki-nav a{ width:100%; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); font-size:15px; }
    #tk-content .taki-nav a:last-child{ background:#9B4034; text-align:center; margin-top:16px; padding:16px; border:0; white-space:nowrap; font-size:14px; }
  }
@media (max-width: 640px) {
    #tk-content .taki-eyebrow{ font-size: 14px !important; }
    #tk-content a[href*="contact"]{ white-space: nowrap !important; }
    #tk-content a[href*="contact"], #tk-content a[href*="tel:"]{ font-size: 13px !important; letter-spacing: .08em !important; padding-left: 20px !important; padding-right: 20px !important; }
    #tk-content .taki-hide-mobile{ display: none !important; }
    #tk-content .taki-left-mobile{ text-align: left !important; }
  }
@media (max-width: 640px) {
    #tk-content section p, #tk-content footer p{ text-wrap: wrap !important; line-break: strict; overflow-wrap: normal; font-size: 14px !important; line-height: 2.05 !important; letter-spacing: .01em !important; }
    #tk-content [style*="padding:0 7vw"], #tk-content [style*="padding: 0px 7vw"], #tk-content [style*="padding: 0 7vw"]{ padding-left: 0 !important; padding-right: 0 !important; }
    #tk-content section p br, #tk-content footer p br{ display: none; }
    #tk-content h1, #tk-content h2, #tk-content h3{ word-break: keep-all; line-break: strict; text-wrap: wrap !important; letter-spacing: .03em !important; }
    #tk-content h1{ font-size: clamp(26px, 8vw, 34px) !important; line-height: 1.45 !important; }
    #tk-content h2{ font-size: clamp(22px, 6.6vw, 28px) !important; line-height: 1.55 !important; }
    #tk-content h3{ font-size: clamp(16px, 4.6vw, 19px) !important; line-height: 1.7 !important; }
    #tk-content section{ padding-left: 32px !important; padding-right: 32px !important; }
    html, body{ overflow-x: clip !important; max-width: 100% !important; }
    #tk-content [style*="margin-right:-7vw"], #tk-content [style*="margin-right: -7vw"]{ margin-right: 0 !important; }
    #tk-content [style*="margin-left:-7vw"], #tk-content [style*="margin-left: -7vw"]{ margin-left: 0 !important; }
    #tk-content [style*="left:7vw"], #tk-content [style*="left: 7vw"]{ right: 6vw !important; max-width: none !important; padding-right: 0 !important; }
    #tk-content .taki-oneline-mobile{ white-space: normal !important; }
    #tk-content .taki-nowrap-mobile{ white-space: normal !important; }
    #tk-content .taki-usecase-grid > div{ white-space: normal !important; }
    #tk-content h1, #tk-content h2, #tk-content h3, #tk-content p{ max-width: 100%; }
    #tk-content img, #tk-content iframe{ max-width: 100%; }
  }

/* --- page-shop.php --- */
@media (max-width: 820px) { [data-m-img] { order: 2; } }
@media (min-width: 641px) and (max-width: 1024px){
    [style*="minmax(min(100%, 340px)"], [style*="minmax(min(100%,340px)"],
    [style*="minmax(min(100%, 320px)"], [style*="minmax(min(100%,320px)"],
    #tk-content [style*="minmax(min(100%, #tk-content 280px)"], #tk-content [style*="minmax(min(100%, #tk-content 280px)"]{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    [style*="minmax(min(100%, 300px)"], [style*="minmax(min(100%,300px)"],
    [style*="minmax(min(100%, 240px)"], [style*="minmax(min(100%,240px)"],
    [style*="minmax(min(100%, 220px)"], [style*="minmax(min(100%,220px)"],
    [style*="minmax(min(100%, 200px)"], [style*="minmax(min(100%,200px)"],
    [style*="minmax(min(100%, 180px)"], [style*="minmax(min(100%,180px)"],
    [style*="minmax(min(50%, 220px)"], [style*="minmax(min(50%,220px)"],
    [style*="minmax(min(50%, 190px)"], [style*="minmax(min(50%,190px)"],
    #tk-content [style*="minmax(min(50%, #tk-content 170px)"], #tk-content [style*="minmax(min(50%, #tk-content 170px)"]{ grid-auto-flow: column !important; grid-template-columns: none !important; }
  }
@media (max-width: 820px) {
    #tk-content .taki-nav-toggle{ display:flex; }
    #tk-content .taki-nav{ display:none !important; position:fixed; top:0; left:0; right:0; bottom:0; flex-direction:column; align-items:flex-start; gap:0; background:#17130F; padding:100px 32px 40px; overflow-y:auto; z-index:40; }
    #tk-content #taki-nav-check:checked ~ .taki-nav{ display:flex !important; }
    #tk-content .taki-nav a{ width:100%; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); font-size:15px; }
    #tk-content .taki-nav a:last-child{ background:#9B4034; text-align:center; margin-top:16px; padding:16px; border:0; white-space:nowrap; font-size:14px; }
  }
@media (max-width: 640px) {
    #tk-content .taki-eyebrow{ font-size: 14px !important; }
    #tk-content a[href*="contact"]{ white-space: nowrap !important; }
    #tk-content a[href*="contact"], #tk-content a[href*="tel:"]{ font-size: 13px !important; letter-spacing: .08em !important; padding-left: 20px !important; padding-right: 20px !important; }
    #tk-content .taki-oneline-mobile{ white-space: nowrap; font-size: 22px !important; }
    #tk-content .taki-oneline-mobile br{ display: none; }
  }
@media (min-width: 641px) and (max-width: 1024px) {
    #tk-content .taki-cols-4{ grid-template-columns: repeat(4, 1fr) !important; }
  }
@media (max-width: 640px) {
    #tk-content section p, #tk-content footer p{ text-wrap: wrap !important; line-break: strict; overflow-wrap: normal; font-size: 14px !important; line-height: 2.05 !important; letter-spacing: .01em !important; }
    #tk-content [style*="padding:0 7vw"], #tk-content [style*="padding: 0px 7vw"], #tk-content [style*="padding: 0 7vw"]{ padding-left: 0 !important; padding-right: 0 !important; }
    #tk-content section p br, #tk-content footer p br{ display: none; }
    #tk-content h1, #tk-content h2, #tk-content h3{ word-break: keep-all; line-break: strict; text-wrap: wrap !important; letter-spacing: .03em !important; }
    #tk-content h1{ font-size: clamp(26px, 8vw, 34px) !important; line-height: 1.45 !important; }
    #tk-content h2{ font-size: clamp(22px, 6.6vw, 28px) !important; line-height: 1.55 !important; }
    #tk-content h3{ font-size: clamp(16px, 4.6vw, 19px) !important; line-height: 1.7 !important; }
    #tk-content section{ padding-left: 32px !important; padding-right: 32px !important; }
    html, body{ overflow-x: clip !important; max-width: 100% !important; }
    #tk-content [style*="margin-right:-7vw"], #tk-content [style*="margin-right: -7vw"]{ margin-right: 0 !important; }
    #tk-content [style*="margin-left:-7vw"], #tk-content [style*="margin-left: -7vw"]{ margin-left: 0 !important; }
    #tk-content [style*="left:7vw"], #tk-content [style*="left: 7vw"]{ right: 6vw !important; max-width: none !important; padding-right: 0 !important; }
    #tk-content .taki-oneline-mobile{ white-space: normal !important; }
    #tk-content .taki-nowrap-mobile{ white-space: normal !important; }
    #tk-content .taki-usecase-grid > div{ white-space: normal !important; }
    #tk-content h1, #tk-content h2, #tk-content h3, #tk-content p{ max-width: 100%; }
    #tk-content img, #tk-content iframe{ max-width: 100%; }
  }

/* --- page-contact.php --- */
@media (max-width: 820px) {
    #tk-content .taki-nav-toggle{ display:flex; }
    #tk-content .taki-nav{ display:none !important; position:fixed; top:0; left:0; right:0; bottom:0; flex-direction:column; align-items:flex-start; gap:0; background:#17130F; padding:100px 32px 40px; overflow-y:auto; z-index:40; }
    #tk-content #taki-nav-check:checked ~ .taki-nav{ display:flex !important; }
    #tk-content .taki-nav a{ width:100%; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); font-size:15px; }
    #tk-content .taki-nav a:last-child{ background:#9B4034; text-align:center; margin-top:16px; padding:16px; border:0; white-space:nowrap; font-size:14px; }
  }
@media (min-width: 641px) and (max-width: 1024px) {
    [style*="minmax(min(100%, 340px)"], [style*="minmax(min(100%,340px)"],
    [style*="minmax(min(100%, 320px)"], [style*="minmax(min(100%,320px)"],
    #tk-content [style*="minmax(min(100%, #tk-content 280px)"], #tk-content [style*="minmax(min(100%, #tk-content 280px)"]{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    #tk-content [style*="minmax(min(100%, #tk-content 260px)"], #tk-content [style*="minmax(min(100%, #tk-content 260px)"]{ grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
    [style*="minmax(min(100%, 220px)"], [style*="minmax(min(100%,220px)"],
    #tk-content [style*="minmax(min(100%, #tk-content 180px)"], #tk-content [style*="minmax(min(100%, #tk-content 180px)"]{ grid-auto-flow: column !important; grid-template-columns: none !important; }
  }
@media (max-width: 640px) {
    #tk-content .taki-eyebrow{ font-size: 14px !important; }
  }
@media (max-width: 640px) {
    #tk-content section p, #tk-content footer p{ text-wrap: wrap !important; line-break: strict; overflow-wrap: normal; font-size: 14px !important; line-height: 2.05 !important; letter-spacing: .01em !important; }
    #tk-content [style*="padding:0 7vw"], #tk-content [style*="padding: 0px 7vw"], #tk-content [style*="padding: 0 7vw"]{ padding-left: 0 !important; padding-right: 0 !important; }
    #tk-content section p br, #tk-content footer p br{ display: none; }
    #tk-content h1, #tk-content h2, #tk-content h3{ word-break: keep-all; line-break: strict; text-wrap: wrap !important; letter-spacing: .03em !important; }
    #tk-content h1{ font-size: clamp(24px, 7.4vw, 32px) !important; line-height: 1.45 !important; }
    #tk-content h2{ font-size: clamp(22px, 6.6vw, 28px) !important; line-height: 1.55 !important; }
    #tk-content h3{ font-size: clamp(16px, 4.6vw, 19px) !important; line-height: 1.7 !important; }
    #tk-content section{ padding-left: 32px !important; padding-right: 32px !important; }
    #tk-content a[href*="contact"]{ white-space: nowrap !important; }
    #tk-content a[href*="contact"], #tk-content a[href*="tel:"]{ font-size: 13px !important; letter-spacing: .08em !important; padding-left: 20px !important; padding-right: 20px !important; }
    html, body{ overflow-x: clip !important; max-width: 100% !important; }
    #tk-content [style*="margin-right:-7vw"], #tk-content [style*="margin-right: -7vw"]{ margin-right: 0 !important; }
    #tk-content [style*="margin-left:-7vw"], #tk-content [style*="margin-left: -7vw"]{ margin-left: 0 !important; }
    #tk-content [style*="left:7vw"], #tk-content [style*="left: 7vw"]{ right: 6vw !important; max-width: none !important; padding-right: 0 !important; }
    #tk-content .taki-oneline-mobile{ white-space: normal !important; }
    #tk-content .taki-nowrap-mobile{ white-space: normal !important; }
    #tk-content h1, #tk-content h2, #tk-content h3, #tk-content p{ max-width: 100%; }
    #tk-content img, #tk-content iframe{ max-width: 100%; }
  }


/* ---- SEO用の見出し構造変更に伴う見た目維持 ---- */
@media (max-width: 640px) {
  #tk-content section p.taki-hero-copy{font-size:clamp(26px,8vw,34px) !important;line-height:1.45 !important;letter-spacing:.03em !important;word-break:keep-all}
  #tk-content section p.taki-hero-copy br{display:inline !important}
  #tk-content h1[data-taki-catch]{font-size:13px !important;line-height:2 !important;letter-spacing:.05em !important}
  #tk-content h1.taki-as-h2{font-size:clamp(22px,6.6vw,28px) !important;line-height:1.55 !important}
}
/* 視覚的に非表示（スクリーンリーダー用） */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute !important;width:1px;word-wrap:normal !important}
