/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 14 2026 | 17:26:45 */
/* Import Business renewal (design mockup v5) — page CSS.
   追加先: プラグイン「Simple Custom CSS and JS」→ 新規CSS（名前: import-renewal (.ttr-renewal)）
   スコープ: 本文の最上位グループに付ける .ttr-renewal 配下だけ。既存の 4097 / 4124 / 821 / 492 / 412 / 302 は変更しない。
   クラス接頭辞は ttr-（既存の tti- と衝突させない）。.tt-import は共通変数（--tti-*）のためだけに併用する。 */

.ttr-renewal{
  --ttr-navy:#102e61; --ttr-deep:#0b2045; --ttr-teal:#118c85; --ttr-teal-d:#0b7a74; --ttr-teal-l:#8fe3da;
  --ttr-risk:#b3261e; --ttr-mint:#e7f5f2; --ttr-pale:#f3f7fa; --ttr-ink:#162a40; --ttr-muted:#4a6075; --ttr-line:#dce5ed;
  --ttr-w:1150px; --ttr-gut:28px; --ttr-py:96px; --ttr-r:12px;
  font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",system-ui,sans-serif;
  color:var(--ttr-ink); line-height:1.75; font-size:16px; word-break:auto-phrase; text-wrap:pretty;
}
.ttr-renewal *,.ttr-renewal *::before,.ttr-renewal *::after{ box-sizing:border-box }
.ttr-renewal p{ margin:0; padding:0 }
.ttr-renewal a{ text-underline-offset:3px }
.ttr-renewal .ttr-sr{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap }
.ttr-renewal .ttr-sp{ display:none }

/* ---- セクションの骨格 ---- */
/* 上下の余白は SWELL のクラス（pc-py-60 = 6em / sp-py-40 = 4em）に任せる。!important のため CSS では上書きしない */
.ttr-renewal .swell-block-fullWide__inner{ width:min(var(--ttr-w),calc(100% - var(--ttr-gut)*2)); max-width:none; margin-left:auto; margin-right:auto; padding:0 }
.ttr-renewal [id]{ scroll-margin-top:88px }

/* ---- 見出し・本文 ---- */
.ttr-renewal :is(h1,h2,h3),.ttr-renewal :is(h1,h2,h3).wp-block-heading{ background:none; border:0; box-shadow:none; padding:0; margin:0; color:var(--ttr-deep); letter-spacing:-.02em }
.ttr-renewal :is(h1,h2,h3)::before,.ttr-renewal :is(h1,h2,h3)::after{ content:none; display:none }
.ttr-renewal .ttr-eyebrow{ text-wrap:balance; color:var(--ttr-teal-d); font-size:12px; font-weight:800; letter-spacing:.14em; margin:0 0 12px }
.ttr-renewal .ttr-h2{ font-size:clamp(26px,3.7vw,46px)!important; line-height:1.42; font-weight:800; margin:0 0 20px!important; word-break:auto-phrase }
.ttr-renewal .ttr-lede{ font-size:16px; line-height:1.95; color:var(--ttr-muted); max-width:46em; margin:0 0 40px }
.ttr-renewal .ttr-small{ font-size:13px; line-height:1.8; color:var(--ttr-muted); margin:18px 0 0 }
.ttr-renewal .ttr-link{ margin:28px 0 0; font-weight:700; font-size:15.5px }
.ttr-renewal .ttr-link a{ color:var(--ttr-navy); text-decoration:none; border-bottom:2px solid var(--ttr-teal) }
.ttr-renewal .ttr-link a:hover{ color:var(--ttr-teal-d) }
.ttr-renewal #pricing .ttr-lede,.ttr-renewal #how .ttr-lede{ max-width:none }
@media (min-width:1024px){
  .ttr-renewal .ttr-h2--oneline,.ttr-renewal .ttr-lede--oneline{ white-space:nowrap }
}

/* ---- ボタン ---- */
.ttr-renewal .wp-block-buttons.ttr-actions{ display:flex; flex-wrap:wrap; gap:12px; margin:0; align-items:center }
.ttr-renewal .ttr-actions .wp-block-button{ margin:0 }
.ttr-renewal .wp-block-button__link{ display:inline-flex; align-items:center; justify-content:center; border-radius:8px; padding:16px 26px; font-size:15px; font-weight:700; line-height:1.45; text-decoration:none; border:2px solid var(--ttr-navy); transition:background-color .2s,color .2s,transform .2s; box-shadow:none }
.ttr-renewal .ttr-btn-primary .wp-block-button__link{ background:var(--ttr-navy); color:#fff }
.ttr-renewal .ttr-btn-primary .wp-block-button__link:hover{ background:#19488b; border-color:#19488b; color:#fff; transform:translateY(-2px) }
.ttr-renewal .ttr-btn-ghost .wp-block-button__link{ background:#fff; color:var(--ttr-navy) }
.ttr-renewal .ttr-btn-ghost .wp-block-button__link:hover{ background:var(--ttr-navy); color:#fff }
.ttr-renewal .ttr-btn-light .wp-block-button__link{ background:#fff; color:var(--ttr-navy); border-color:#fff }
.ttr-renewal .ttr-btn-light .wp-block-button__link:hover{ background:var(--ttr-mint); border-color:var(--ttr-mint); transform:translateY(-2px) }
.ttr-renewal a:focus-visible,.ttr-renewal [tabindex]:focus-visible,.ttr-renewal .wp-block-button__link:focus-visible{ outline:3px solid #f2a900; outline-offset:3px }
@media (prefers-reduced-motion:reduce){ .ttr-renewal *{ transition:none!important; scroll-behavior:auto!important } }

/* ---- チェックリスト ---- */
.ttr-renewal ul.ttr-checks{ list-style:none; margin:18px 0 0; padding:0; display:grid; gap:10px }
.ttr-renewal ul.ttr-checks li{ position:relative; margin:0; padding:0 0 0 28px; font-size:14.5px; line-height:1.85; color:var(--ttr-muted) }
.ttr-renewal ul.ttr-checks li::before{ content:""; position:absolute; left:2px; top:.62em; width:11px; height:6px; border-left:2px solid var(--ttr-teal); border-bottom:2px solid var(--ttr-teal); transform:rotate(-45deg) }
.ttr-renewal ul.ttr-checks--wide{ margin-top:28px }
.ttr-renewal ul.ttr-checks--wide li{ font-size:15px; color:var(--ttr-ink) }

/* ---- 1. HERO ---- */
.ttr-renewal #hero.swell-block-fullWide.alignfull{ overflow:hidden }
.ttr-renewal #hero .swell-block-fullWide__inner{ width:100%; container-type:inline-size }
.ttr-renewal .ttr-hero{ --m:max(28px,5vw); --m:max(28px,calc((100cqw - var(--ttr-w))/2)); display:grid; grid-template-columns:calc(var(--m) + 600px) minmax(0,1fr); gap:0; margin:0; min-height:640px; align-items:stretch }
.ttr-renewal .ttr-hero > .wp-block-column{ margin:0; flex-basis:auto!important; width:auto }
.ttr-renewal .ttr-hero__copy{ padding:96px 48px 88px var(--m); display:flex; flex-direction:column; align-items:flex-start; justify-content:center }
.ttr-renewal .ttr-hero__title{ font-size:clamp(34px,4vw,56px)!important; line-height:1.38; font-weight:850; margin:6px 0 24px!important; letter-spacing:-.05em!important }
.ttr-renewal .ttr-hero__title strong{ color:var(--ttr-teal-d); font-weight:inherit }
.ttr-renewal .ttr-hero__lead{ color:var(--ttr-muted); max-width:30em; margin:0 0 24px; line-height:1.95 }
.ttr-renewal ul.ttr-tags{ list-style:none; margin:0 0 30px; padding:0; display:flex; flex-wrap:wrap; gap:9px }
.ttr-renewal ul.ttr-tags li{ margin:0; padding:7px 14px; border:1px solid #cfe3e6; border-radius:999px; background:#fff; color:#2b4a5e; font-size:13px; line-height:1.5 }
.ttr-renewal ul.ttr-tags li::before{ content:"✓"; color:var(--ttr-teal-d); margin-right:6px; font-weight:700 }
.ttr-renewal .ttr-hero__note{ font-size:13px; color:var(--ttr-muted); margin-top:16px }
.ttr-renewal .ttr-hero__art{ position:relative; min-height:560px; overflow:visible }
.ttr-renewal .ttr-hero__photo{ position:absolute; inset:0; margin:0 }
.ttr-renewal .ttr-hero__photo img{ width:100%; height:100%; object-fit:cover; object-position:60% 40%; display:block }
.ttr-renewal .ttr-hero__photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(160deg,rgba(8,35,80,.28),rgba(5,25,55,.72)) }
.ttr-renewal .ttr-hero__panel{ position:absolute; z-index:2; left:-56px; right:36px; bottom:56px; background:#fff; border-radius:12px; box-shadow:0 24px 64px rgba(6,41,84,.18); padding:24px 28px 24px 108px; min-height:96px; display:flex; flex-direction:column; justify-content:center }
.ttr-renewal .ttr-hero__panel::before{ content:"✓"; position:absolute; left:28px; top:50%; transform:translateY(-50%); width:56px; height:56px; border-radius:50%; background:#fff; border:3px solid var(--ttr-teal-d); color:var(--ttr-teal-d); display:grid; place-items:center; font-size:26px; font-weight:900 }
.ttr-renewal .ttr-hero__panel-ttl{ font-size:19px; font-weight:800; line-height:1.5; color:var(--ttr-deep) }
.ttr-renewal .ttr-hero__panel-sub{ font-size:13px; color:var(--ttr-muted); margin-top:2px }
@media (max-width:959px){
  .ttr-renewal .ttr-hero{ grid-template-columns:1fr; min-height:0 }
  .ttr-renewal .ttr-hero__copy{ padding:64px var(--ttr-gut) 48px }
  .ttr-renewal .ttr-hero__art{ min-height:380px }
  .ttr-renewal .ttr-hero__panel{ left:var(--ttr-gut); right:var(--ttr-gut); bottom:24px }
}
@media (max-width:599px){
  .ttr-renewal .ttr-hero__copy{ padding:44px 18px 40px }
  .ttr-renewal .ttr-hero__art{ min-height:300px }
  .ttr-renewal .ttr-hero__panel{ left:16px; right:16px; bottom:16px; padding:16px 16px 16px 76px; min-height:0 }
  .ttr-renewal .ttr-hero__panel::before{ left:14px; width:46px; height:46px; font-size:20px }
  .ttr-renewal .ttr-hero__panel-ttl{ font-size:15px }
}

/* ---- ストリップ ---- */
.ttr-renewal ol.ttr-strip{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px 28px }
.ttr-renewal ol.ttr-strip li{ margin:0; color:var(--ttr-navy); font-size:14px; font-weight:700; letter-spacing:.04em; line-height:1.6 }
.ttr-renewal ol.ttr-strip li::before{ content:"✓"; color:var(--ttr-teal-d); font-size:16px; font-weight:900; margin-right:9px }
.ttr-renewal #points .swell-block-fullWide__inner{ border-top:3px solid var(--ttr-navy); border-bottom:3px solid var(--ttr-navy); padding:16px 0 }
.ttr-renewal #points .swell-block-fullWide__inner{ border-top:3px solid var(--ttr-navy); border-bottom:3px solid var(--ttr-navy); padding:16px 0 }
@media (max-width:599px){ .ttr-renewal ol.ttr-strip{ display:grid; grid-template-columns:1fr 1fr; gap:10px 14px } .ttr-renewal ol.ttr-strip li{ font-size:12px } }

/* ---- 2. 課題カード ---- */
.ttr-renewal .ttr-issues{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:0 }
.ttr-renewal .ttr-issues > .wp-block-column{ margin:0; flex-basis:auto!important }
.ttr-renewal .ttr-issue{ border:2px solid #8ea3b8; border-radius:13px; padding:29px 27px; background:#fff }
.ttr-renewal .ttr-issue__no{ font-size:12px; font-weight:800; letter-spacing:.08em; color:var(--ttr-teal-d); margin-bottom:14px }
.ttr-renewal .ttr-issue__ttl{ font-size:21px!important; font-weight:800; line-height:1.5; margin-bottom:12px!important }
.ttr-renewal .ttr-issue__txt{ font-size:14.5px; line-height:1.9; color:var(--ttr-muted) }
.ttr-renewal .ttr-issue__more{ margin-top:18px; font-size:14px; font-weight:700 }
.ttr-renewal .ttr-issue--us{ background:#fff; border:5px solid var(--ttr-navy); padding:33px 29px 31px; box-shadow:0 20px 44px rgba(16,46,97,.24); position:relative; z-index:1 }
@media (min-width:960px){ .ttr-renewal .ttr-issue--us{ transform:translateY(-10px) } }
.ttr-renewal .ttr-issue--us .ttr-issue__no{ color:var(--ttr-teal-d) }
.ttr-renewal .ttr-issue--us .ttr-issue__ttl{ color:var(--ttr-navy); font-size:25px!important }
.ttr-renewal .ttr-issue--us .ttr-issue__txt{ color:var(--ttr-ink); font-weight:800; font-size:16.5px }
.ttr-renewal .ttr-issue--us .ttr-issue__more a{ color:var(--ttr-navy); text-decoration:underline }
@media (max-width:959px){ .ttr-renewal .ttr-issues{ grid-template-columns:1fr } }

/* ---- 3. 比較表 ---- */
.ttr-renewal .ttr-scroll{ background:#fff; border:1px solid var(--ttr-line); border-radius:14px; overflow-x:auto; box-shadow:0 14px 40px rgba(18,52,86,.06) }
.ttr-renewal table.ttr-compare{ width:100%; min-width:700px; border-collapse:collapse; table-layout:fixed; margin:0; border:0; font-size:14.5px }
.ttr-renewal .ttr-compare :is(th,td){ padding:22px 18px; border:1px solid #8ea3b8; text-align:center; vertical-align:middle; line-height:1.7; background:none }
.ttr-renewal .ttr-compare thead th{ background:#e8eff5; color:var(--ttr-deep); font-size:15px; font-weight:800 }
.ttr-renewal .ttr-compare thead th.is-us{ background:#fff; color:var(--ttr-navy); font-size:16px }
.ttr-renewal .ttr-compare tbody th{ width:22%; text-align:center; background:#f7fafc; color:var(--ttr-deep); font-weight:800 }
.ttr-renewal .ttr-compare td.is-us{ background:#fff; color:var(--ttr-navy); font-weight:800 }
.ttr-renewal table.ttr-compare tr > .is-us{ border-left:4px solid var(--ttr-navy); border-right:4px solid var(--ttr-navy) }
.ttr-renewal table.ttr-compare thead tr > .is-us{ border-top:4px solid var(--ttr-navy) }
.ttr-renewal table.ttr-compare tbody tr:last-child > .is-us{ border-bottom:4px solid var(--ttr-navy) }
.ttr-renewal .ttr-compare thead th{ border-bottom:2px solid var(--ttr-navy) }
.ttr-renewal .ttr-compare :is(tr > :first-child){ border-left:0 }
.ttr-renewal .ttr-compare :is(tr > :last-child){ border-right:0 }
.ttr-renewal .ttr-compare thead tr :is(th){ border-top:0 }
.ttr-renewal .ttr-compare tbody tr:last-child :is(th,td){ border-bottom:0 }
.ttr-renewal .ttr-compare td,.ttr-renewal .ttr-compare tbody th{ font-size:15px; font-weight:800; line-height:1.5 }
.ttr-renewal .ttr-mark{ display:block; font-size:30px; font-weight:900; line-height:1.2; margin-bottom:4px }
.ttr-renewal .ttr-mark--s{ color:var(--ttr-teal-d) }
.ttr-renewal .ttr-mark--g{ color:var(--ttr-navy) }
.ttr-renewal .ttr-mark--w{ color:#8a5300 }
.ttr-renewal .ttr-mark--b{ color:var(--ttr-risk) }
.ttr-renewal .ttr-claim{ margin:36px 0 0; text-align:center; font-size:clamp(20px,2.7vw,32px); font-weight:850; line-height:1.55; color:var(--ttr-deep) }
.ttr-renewal .ttr-tablehint{ display:none }
@media (max-width:767px){
  .ttr-renewal .ttr-tablehint{ display:block; margin:0 0 10px; font-size:12.5px; color:var(--ttr-muted); text-align:right }
  .ttr-renewal table.ttr-compare{ min-width:640px }
  .ttr-renewal .ttr-compare tbody th,.ttr-renewal .ttr-compare thead th:first-child{ position:sticky; left:0; z-index:1; width:112px; padding:16px 10px; box-shadow:1px 0 0 var(--ttr-line) }
  .ttr-renewal .ttr-compare :is(th,td){ padding:16px 12px; font-size:13.5px }
}
@media (max-width:599px){ .ttr-renewal .ttr-sp{ display:inline } .ttr-renewal .ttr-scroll{ border-radius:10px } }

/* ---- 4. 取引形態 ---- */
.ttr-renewal .ttr-models{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin:0 }
.ttr-renewal .ttr-models > .wp-block-column{ margin:0; flex-basis:auto!important }
.ttr-renewal .ttr-model{ border:1px solid var(--ttr-line); border-radius:15px; padding:34px; background:#fff; display:flex; flex-direction:column }
.ttr-renewal .ttr-model__ttl{ font-size:24px!important; font-weight:800; margin-bottom:0!important }
.ttr-renewal .ttr-model__ttl strong{ font-size:.62em; font-weight:700; color:var(--ttr-teal-d); margin-left:.5em; letter-spacing:0; white-space:nowrap }
.ttr-renewal .ttr-model__txt{ font-size:clamp(17px,1.6vw,20px); font-weight:800; line-height:1.6; color:var(--ttr-navy) }
.ttr-renewal .ttr-diagram{ background:var(--ttr-pale); border-radius:12px; padding:22px 16px; margin:22px 0; min-height:208px; display:flex; flex-direction:column; justify-content:center }
.ttr-renewal .ttr-node{ display:flex; align-items:center; justify-content:center; text-align:center; height:56px; padding:0 8px; border-radius:8px; background:#fff; border:1px solid #c3d3df; color:var(--ttr-navy); font-size:14px; font-weight:800; line-height:1.3 }
.ttr-renewal .ttr-node.is-active,.ttr-renewal .ttr-support-label{ background:#fff; border:4px solid var(--ttr-navy); color:var(--ttr-navy) }
/* 商社型: バイヤー ⇄ BuyChemJapan ⇄ メーカー */
.ttr-renewal .ttr-diagram--trading{ flex-direction:row; align-items:center; gap:8px }
.ttr-renewal .ttr-diagram--trading .ttr-node{ flex:1 1 0; min-width:0 }
.ttr-renewal .ttr-diagram--trading .ttr-node.is-active{ flex-grow:1.25 }
.ttr-renewal .ttr-arrow{ flex:1 1 0; min-width:24px; position:relative; height:16px }
.ttr-renewal .ttr-arrow{ background:linear-gradient(var(--ttr-teal),var(--ttr-teal)) 5px 50%/calc(100% - 10px) 3px no-repeat }
.ttr-renewal .ttr-arrow::before,.ttr-renewal .ttr-bridge::before{ content:""; position:absolute; left:0; top:50%; margin-top:-7px; border-right:10px solid var(--ttr-teal); border-top:7px solid transparent; border-bottom:7px solid transparent }
.ttr-renewal .ttr-arrow::after,.ttr-renewal .ttr-bridge::after{ content:""; position:absolute; right:0; top:50%; margin-top:-7px; border-left:10px solid var(--ttr-teal); border-top:7px solid transparent; border-bottom:7px solid transparent }
/* サポート型: 3列の中央列に「横矢印・縦線」を1つの要素で描く（中心は構造上ずれない） */
.ttr-renewal .ttr-diagram--support{ --row1:64px; --drop:44px; display:grid; flex-direction:initial; grid-template-columns:minmax(0,1fr) minmax(0,3fr) minmax(0,1fr); grid-template-rows:var(--row1) var(--drop) auto; column-gap:12px; align-content:center }
.ttr-renewal .ttr-diagram--support .ttr-node--l{ grid-column:1; grid-row:1; align-self:center }
.ttr-renewal .ttr-diagram--support .ttr-node--r{ grid-column:3; grid-row:1; align-self:center }
.ttr-renewal .ttr-bridge{ grid-column:2; grid-row:1 / span 2; position:relative;
  background:
    linear-gradient(var(--ttr-teal),var(--ttr-teal)) 0 calc(var(--row1)/2 - 1.5px)/100% 3px no-repeat,
    linear-gradient(var(--ttr-teal),var(--ttr-teal)) 50% calc(var(--row1)/2)/3px calc(var(--row1)/2 + var(--drop)) no-repeat }
.ttr-renewal .ttr-bridge::before,.ttr-renewal .ttr-bridge::after{ top:calc(var(--row1)/2) }
.ttr-renewal .ttr-support-label{ grid-column:1 / -1; grid-row:3; justify-self:center; text-align:center; border-radius:8px; padding:12px 22px; font-size:14px; font-weight:800; line-height:1.5 }
@media (max-width:959px){ .ttr-renewal .ttr-models{ grid-template-columns:1fr } }
@media (max-width:599px){
  .ttr-renewal .ttr-model{ padding:24px 18px }
  .ttr-renewal .ttr-diagram{ padding:18px 10px }
  .ttr-renewal .ttr-node{ font-size:12.5px; padding:0 4px }
  .ttr-renewal .ttr-diagram--support{ column-gap:8px; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr) }
  .ttr-renewal .ttr-support-label{ font-size:13px; padding:9px 14px }
  .ttr-renewal .ttr-diagram--trading{ gap:4px }
  .ttr-renewal .ttr-diagram--trading .ttr-arrow{ flex:0 0 22px; min-width:0 }
  .ttr-renewal .ttr-diagram--trading .ttr-node{ padding:0 2px; font-size:12px }
  .ttr-renewal .ttr-diagram--trading .ttr-node.is-active{ flex-grow:1.7; font-size:11.5px; white-space:nowrap }
}

/* ---- 5. 料金表（年次を主役に） ---- */
.ttr-renewal table.ttr-fee{ width:100%; border-collapse:separate; border-spacing:0; table-layout:fixed; margin:0; border:1px solid var(--ttr-navy); border-radius:14px; overflow:hidden; background:#fff }
.ttr-renewal .ttr-fee :is(th,td){ border:0; padding:0; text-align:center; vertical-align:middle; background:none; line-height:1.2 }
.ttr-renewal .ttr-fee thead th{ background:#fff; color:var(--ttr-navy); padding:18px 6px; border-left:1px solid #8ea3b8; border-bottom:4px solid var(--ttr-navy) }
.ttr-renewal .ttr-fee thead th.ttr-fee__corner{ width:18%; border-left:0; font-size:13px; font-weight:700; letter-spacing:.06em; color:var(--ttr-muted); text-align:center; padding-left:6px }
.ttr-renewal .ttr-fee__yr{ display:block; font-size:clamp(17px,2.3vw,26px); font-weight:900; letter-spacing:.02em; color:var(--ttr-navy); line-height:1.3 }
.ttr-renewal .ttr-fee tbody th{ text-align:center; padding:0 10px }
.ttr-renewal .ttr-chip{ display:inline-block; padding:8px 16px; border-radius:999px; font-size:15px; font-weight:800; line-height:1.3; white-space:nowrap }
.ttr-renewal .ttr-fee tr.is-normal th{ background:#fff }
.ttr-renewal .ttr-fee tr.is-normal .ttr-chip{ background:#fff; color:var(--ttr-navy); border:3px solid var(--ttr-navy) }
.ttr-renewal .ttr-fee tr.is-bulk th{ background:#fff }
.ttr-renewal .ttr-fee tr.is-bulk .ttr-chip{ background:#fff; color:var(--ttr-teal-d); border:3px solid var(--ttr-teal-d) }
.ttr-renewal .ttr-fee tbody td{ padding:28px 6px; font-size:clamp(28px,4vw,48px); font-weight:900; letter-spacing:-.04em; color:var(--ttr-navy); border-left:1px solid #8ea3b8 }
.ttr-renewal .ttr-fee tr.is-bulk td{ background:#fff; border-left-color:#8ea3b8 }
.ttr-renewal .ttr-fee tbody tr + tr :is(th,td){ border-top:2px solid var(--ttr-navy) }
.ttr-renewal .ttr-fee tbody td small{ font-size:.55em; font-weight:800; margin-left:2px; letter-spacing:0 }
.ttr-renewal .ttr-fee td.is-low{ color:var(--ttr-teal-d) }
.ttr-renewal #pricing .ttr-actions{ margin-top:32px }
@media (max-width:759px){
  .ttr-renewal .ttr-sp{ display:inline }
  .ttr-renewal .ttr-fee thead th{ padding:14px 2px }
  .ttr-renewal .ttr-fee thead th.ttr-fee__corner{ width:21%; padding-left:10px; font-size:11px; letter-spacing:0 }
  .ttr-renewal .ttr-fee tbody th{ padding:0 4px 0 8px }
  .ttr-renewal .ttr-chip{ padding:6px 8px; font-size:12px; white-space:normal }
  .ttr-renewal .ttr-fee tbody td{ padding:20px 0 }
}

/* ---- 6. 6工程 ---- */
.ttr-renewal ol.ttr-steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; counter-reset:none }
.ttr-renewal .ttr-step{ position:relative; margin:0; padding:22px 16px 24px; background:var(--ttr-pale); border:1px solid #e1eaf0; border-radius:12px; display:flex; flex-direction:column; align-items:center; text-align:center }
.ttr-renewal .ttr-step__no{ font-size:26px; font-weight:900; line-height:1; color:var(--ttr-teal-d); letter-spacing:.02em }
.ttr-renewal .ttr-step__icon{ width:34px; height:34px; margin:14px 0; fill:none; stroke:var(--ttr-navy); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex:0 0 auto }
.ttr-renewal .ttr-step__ttl{ font-size:17px!important; font-weight:800; line-height:1.4; color:var(--ttr-deep); margin:0 0 8px!important; white-space:nowrap }
.ttr-renewal .ttr-step__txt{ font-size:16px; font-weight:800; line-height:1.5; color:var(--ttr-teal-d); margin-top:12px; padding-top:12px; border-top:2px solid var(--ttr-line); width:100% }
.ttr-renewal .ttr-scrollhint{ display:none }
@media (min-width:1024px){
  .ttr-renewal .ttr-step:not(:last-child)::after{ content:"›"; position:absolute; top:30px; right:-12px; z-index:2; width:20px; height:20px; border-radius:50%; background:#fff; border:2px solid var(--ttr-teal-d); color:var(--ttr-teal-d); font-size:15px; font-weight:900; line-height:14px; text-align:center }
}
@media (max-width:1023px) and (min-width:600px){
  .ttr-renewal .ttr-scrollhint{ display:block; margin:0 0 12px; font-size:13px; color:var(--ttr-muted); text-align:right }
  .ttr-renewal ol.ttr-steps{ grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:minmax(220px,1fr); overflow-x:auto; scroll-snap-type:x proximity; padding:4px 2px 14px; gap:12px }
  .ttr-renewal .ttr-step{ scroll-snap-align:start }
  .ttr-renewal .ttr-step:not(:last-child)::after{ content:"›"; position:absolute; right:-12px; top:26px; z-index:2; width:22px; height:22px; border-radius:50%; background:#fff; border:2px solid var(--ttr-teal-d); color:var(--ttr-teal-d); font-size:15px; font-weight:900; line-height:16px; text-align:center }
}
@media (max-width:599px){
  .ttr-renewal ol.ttr-steps{ grid-template-columns:1fr; gap:0; position:relative }
  .ttr-renewal .ttr-step{ text-align:left; display:grid; grid-template-columns:48px 1fr; column-gap:14px; padding:18px 16px; margin-bottom:22px }
  .ttr-renewal .ttr-step__no{ grid-column:1; grid-row:1 / span 3; align-self:start }
  .ttr-renewal .ttr-step__icon{ display:none }
  .ttr-renewal .ttr-step__ttl{ grid-column:2; margin:0 0 6px!important }
  .ttr-renewal .ttr-step__txt{ grid-column:2; font-size:15px; margin-top:0; padding-top:0; border-top:0 }
  .ttr-renewal .ttr-step:not(:last-child)::after{ content:""; position:absolute; left:34px; bottom:-22px; width:2px; height:22px; background:var(--ttr-teal-d) }
}

/* ---- 7. 物流進捗（ダッシュボード） ---- */
.ttr-renewal .ttr-dash{ background:#fff; border:3px solid var(--ttr-navy); border-radius:16px; padding:34px; color:var(--ttr-ink) }
.ttr-renewal .ttr-dash__head{ display:flex; align-items:center; gap:14px; flex-wrap:wrap }
.ttr-renewal h3.ttr-dash__ttl{ font-size:20px!important; font-weight:800; margin:0!important; color:var(--ttr-deep) }
.ttr-renewal .ttr-dash__tag{ font-size:12px; color:var(--ttr-muted); border:1px solid var(--ttr-line); border-radius:999px; padding:3px 12px; background:var(--ttr-pale) }
.ttr-renewal .ttr-dash__status{ margin-left:auto; border-radius:999px; background:#fff; border:3px solid var(--ttr-teal-d); color:var(--ttr-teal-d); font-size:13px; font-weight:800; padding:3px 16px }
.ttr-renewal ol.ttr-timeline{ list-style:none; margin:44px 0 8px; padding:0; display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); position:relative }
.ttr-renewal ol.ttr-timeline::before{ content:""; position:absolute; top:14px; left:calc(100%/14); right:calc(100%/14); height:4px; background:linear-gradient(90deg,var(--ttr-teal-d) 0 calc(100%*5/6),#cddae2 calc(100%*5/6) 100%) }
.ttr-renewal .ttr-timeline li{ position:relative; margin:0; text-align:center; display:flex; flex-direction:column; align-items:center; padding:0 2px }
.ttr-renewal .ttr-timeline__dot{ width:32px; height:32px; border-radius:50%; background:#fff; border:3px solid var(--ttr-teal-d); color:var(--ttr-teal-d); display:grid; place-items:center; margin-bottom:12px; font-size:14px; font-weight:900; position:relative; z-index:1 }
.ttr-renewal .ttr-timeline li.is-done .ttr-timeline__dot::before{ content:"✓" }
.ttr-renewal .ttr-timeline li.is-next .ttr-timeline__dot{ border-style:dashed }
.ttr-renewal .ttr-timeline strong{ font-size:13px; font-weight:800; line-height:1.4; color:var(--ttr-deep) }
.ttr-renewal .ttr-timeline small{ font-size:12px; color:var(--ttr-muted); margin-top:2px }
.ttr-renewal .ttr-dash__eta{ margin:30px auto 0; width:fit-content; max-width:100%; padding:10px 24px; border:3px solid var(--ttr-navy); border-radius:999px; background:#fff; display:flex; gap:18px; justify-content:center; align-items:baseline; font-size:14px; font-weight:700 }
.ttr-renewal .ttr-dash__eta b{ font-size:24px; line-height:1.2; color:var(--ttr-navy) }
@media (max-width:767px){
  .ttr-renewal .ttr-dash{ padding:22px 16px }
  .ttr-renewal ol.ttr-timeline{ grid-template-columns:1fr; margin:28px 0 4px }
  .ttr-renewal ol.ttr-timeline::before{ top:16px; bottom:16px; left:15px; right:auto; width:4px; height:auto; background:var(--ttr-teal-d) }
  .ttr-renewal .ttr-timeline li{ flex-direction:row; align-items:center; text-align:left; gap:14px; padding:7px 0 }
  .ttr-renewal .ttr-timeline__dot{ margin:0; flex:0 0 32px }
  .ttr-renewal .ttr-timeline small{ margin:0 0 0 auto; font-size:13px }
  .ttr-renewal .ttr-timeline strong{ font-size:14.5px }
}

/* ---- 8. リスク ---- */
.ttr-renewal .ttr-risk{ display:grid; grid-template-columns:.9fr 1.1fr; gap:44px; align-items:center; margin:0 }
.ttr-renewal .ttr-risk > .wp-block-column{ margin:0; flex-basis:auto!important }
.ttr-renewal .ttr-risk__art{ background:#fff; border:4px solid var(--ttr-risk); border-radius:15px; min-height:340px; display:flex; flex-direction:column; justify-content:center; color:var(--ttr-risk); padding:44px }
.ttr-renewal .ttr-risk__big{ font-size:clamp(40px,5vw,56px); font-weight:900; line-height:1.05; letter-spacing:-.03em }
.ttr-renewal .ttr-risk__sub{ margin-top:18px; max-width:22em; font-size:15px; font-weight:700; color:var(--ttr-ink) }
.ttr-renewal .ttr-risk__body .ttr-h2{ font-size:clamp(24px,3vw,36px)!important }
@media (max-width:959px){ .ttr-renewal .ttr-risk{ grid-template-columns:1fr; gap:28px } .ttr-renewal .ttr-risk__art{ min-height:220px; padding:32px } }

/* ---- 9. 専門性・資料・FAQ ---- */
.ttr-renewal .ttr-facts{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:0 }
.ttr-renewal .ttr-facts > .wp-block-column{ margin:0; flex-basis:auto!important }
.ttr-renewal .ttr-fact{ border-top:3px solid var(--ttr-teal); background:#fff; border-radius:10px; padding:22px 20px; box-shadow:0 6px 22px rgba(16,46,97,.07) }
.ttr-renewal .ttr-fact__ttl{ font-size:17px!important; font-weight:800; margin-bottom:8px!important }
.ttr-renewal .ttr-fact__txt{ font-size:14px; line-height:1.85; color:var(--ttr-muted) }
.ttr-renewal .ttr-docbox{ display:flex; flex-wrap:wrap; gap:20px 30px; align-items:center; justify-content:space-between; margin:48px 0 0; padding:28px 30px; border:1px solid var(--ttr-line); border-radius:12px; background:var(--ttr-pale) }
.ttr-renewal .ttr-docbox > .wp-block-column{ margin:0; flex:1 1 360px!important }
.ttr-renewal .ttr-docbox > .ttr-docbox__btn{ flex:0 0 auto!important }
.ttr-renewal .ttr-docbox__ttl{ font-size:clamp(18px,2.2vw,22px); font-weight:800; line-height:1.55; color:var(--ttr-deep); margin-bottom:8px }
.ttr-renewal .ttr-docbox__sub{ font-size:14.5px; line-height:1.9; color:var(--ttr-muted) }
.ttr-renewal ul.ttr-faqlinks{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px }
.ttr-renewal ul.ttr-faqlinks li{ margin:0 }
.ttr-renewal ul.ttr-faqlinks a{ display:flex; align-items:center; gap:14px; min-height:68px; padding:16px 22px; background:#fff; border:1px solid var(--ttr-line); border-radius:10px; color:var(--ttr-deep); font-weight:700; font-size:15.5px; line-height:1.6; text-decoration:none }
.ttr-renewal ul.ttr-faqlinks a::before{ content:"Q"; color:var(--ttr-teal-d); font-weight:900; flex:0 0 auto }
.ttr-renewal ul.ttr-faqlinks a:hover{ background:var(--ttr-mint) }
@media (max-width:959px){ .ttr-renewal .ttr-facts{ grid-template-columns:1fr } }
@media (max-width:759px){ .ttr-renewal ul.ttr-faqlinks{ grid-template-columns:1fr } .ttr-renewal .ttr-docbox{ padding:22px 18px } }

/* ---- 10. 問い合わせ ---- */
.ttr-renewal #contact.swell-block-fullWide{ border-top:4px solid var(--ttr-navy) }
.ttr-renewal #contact .ttr-lede{ margin-bottom:28px }
.ttr-renewal .ttr-contact{ display:grid; grid-template-columns:1.15fr .85fr; gap:44px; align-items:center; margin:0 }
.ttr-renewal .ttr-contact > .wp-block-column{ margin:0; flex-basis:auto!important }
.ttr-renewal .ttr-contact__list{ align-self:center; background:#fff; border:3px solid var(--ttr-navy); border-radius:12px; padding:26px }
.ttr-renewal .ttr-contact__list ul.ttr-checks{ margin:0 }
@media (max-width:959px){ .ttr-renewal .ttr-contact{ grid-template-columns:1fr; gap:28px } }

/* ---- 共通レスポンシブ ---- */
@media (max-width:959px){ .ttr-renewal{ --ttr-py:72px } .ttr-renewal [id]{ scroll-margin-top:64px } }
@media (max-width:599px){
  .ttr-renewal{ --ttr-py:56px; --ttr-gut:18px }
  .ttr-renewal .ttr-lede{ font-size:15px; margin-bottom:28px }
  .ttr-renewal .wp-block-buttons.ttr-actions,.ttr-renewal .ttr-actions .wp-block-button,.ttr-renewal .ttr-actions .wp-block-button__link{ width:100% }
  .ttr-renewal .wp-block-button__link{ white-space:normal; text-align:center }
}

/* ---- 既存タイトル帯の扱い（このページだけ）----
   ヒーロー見出しをh1にするため、SWELLのページタイトル帯（#top_title_area）を隠す。
   管理画面の「SWELL設定 → ページタイトルを非表示」でも同じ結果になる。どちらか一方でよい。 */
