/* =====================================================================
* 名古屋テナントラボ（/tenant/）— site.css の上に重ねる差分だけ。2026-09-25 新設。
*
* ★部品（ボタン・表・パンくず・写真・問い合わせ枠）は名古屋賃貸ラボと同じ site.css を使う。
*   姉妹サイトとして操作の作法を揃え、事業用であることは色（紅殻と墨）と
*   「坪・坪単価」を前に出した物件カードで区別する。
* ★文字の下限は site.css と同じ 11.5px。スマホは 720px まで。
* ===================================================================== */

/* ★色（2026-09-26 オーナー決定：G3「紅殻＋墨ボタン」）
   紅殻（べんがら）を看板の色に、問い合わせボタンは墨色にする（オレンジだと紅殻とぶつかるため）。
   白文字とのコントラスト：紅殻 5.51・墨 12.6（どちらも 4.5 以上）。
   検索ボタンの青（--action）と賃料の赤橙（--price）は名古屋賃貸ラボと同じ。 */
.t-site {
  --brand: #ad4a36;
  --brand-700: #843728;
  --brand-50: #faeeeb;
  --cta: #2f3437;
  --cta-700: #1d2124;
  --t-line: #ecd3cc;
}

/* ── 上の帯（住居サイトへの行き来） ─────────────────── */
.t-topbar .container { justify-content: space-between; }
.t-topbar-note { opacity: 0.85; }
@media (max-width: 720px) { .t-topbar-note { display: none; } .t-topbar .container { justify-content: flex-end; } }
.t-req-btn { display: none; }
@media (min-width: 721px) { .t-req-btn { display: inline-flex; } }

/* ── トップの見出し帯 ─────────────────────────────── */
.t-hero { display: grid; gap: 12px; align-items: end; padding: 18px 16px; margin: 16px 0 14px; background: var(--brand); color: #fff; border-radius: 4px; }
@media (min-width: 721px) { .t-hero { grid-template-columns: 1fr auto; padding: 26px 28px; margin: 24px 0 18px; } }
.t-hero h1 { font-size: 22px; line-height: 1.4; letter-spacing: 0.02em; }
@media (min-width: 721px) { .t-hero h1 { font-size: 28px; } }
.t-hero p { margin-top: 8px; font-size: 13.5px; line-height: 1.75; opacity: 0.92; max-width: 44em; }
.t-hero-count { display: flex; align-items: baseline; gap: 4px; font-size: 13px; white-space: nowrap; }
.t-hero-count b { font-size: 36px; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.sp-br { display: inline; }
@media (min-width: 721px) { .sp-br { display: none; } }
.t-empty { margin: 8px 0 4px; }

.t-grid { display: grid; gap: 20px; }
@media (min-width: 960px) { .t-grid { grid-template-columns: minmax(0, 1fr) 320px; align-items: start; } }
.t-side { display: grid; gap: 14px; }
@media (min-width: 960px) { .t-side { position: sticky; top: 12px; } }

/* ── 種別（4つの大きい入口） ─────────────────────── */
.t-types { display: grid; gap: 8px; grid-template-columns: 1fr; }
@media (min-width: 560px) { .t-types { grid-template-columns: 1fr 1fr; } }
.t-type { display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center; padding: 12px 14px; border: 1px solid var(--border); border-left: 4px solid var(--brand); background: #fff; color: var(--text); text-decoration: none !important; }
.t-type:hover { border-color: var(--brand); background: var(--brand-50); }
.t-type-t { display: grid; gap: 2px; min-width: 0; }
.t-type-t b { font-size: 15px; color: var(--brand); }
.t-type-t small { font-size: 12px; color: var(--muted); line-height: 1.5; }
.t-type-n { font-size: 20px; font-weight: 800; color: var(--text); white-space: nowrap; font-variant-numeric: tabular-nums; }
.t-type-n small { font-size: 12px; font-weight: 400; color: var(--muted); margin-left: 2px; }

/* ── 用途・条件 ─────────────────────────────────── */
.t-uses { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; }
@media (min-width: 721px) { .t-uses { grid-template-columns: repeat(4, 1fr); } }
.t-use { display: grid; gap: 4px; padding: 10px 12px; border: 1px solid var(--border); background: #fff; color: var(--text); text-decoration: none !important; }
.t-use:hover { border-color: var(--brand); }
.t-use b { font-size: 14px; color: var(--brand); display: flex; justify-content: space-between; gap: 6px; }
.t-use b i { font-style: normal; font-size: 12px; font-weight: 700; color: var(--price); white-space: nowrap; }
.t-use small { font-size: 12px; color: var(--muted); line-height: 1.5; }

/* ── 物件カード ─────────────────────────────────── */
.tcard-list { display: grid; gap: 12px; grid-template-columns: 1fr; }
@media (min-width: 640px) { .tcard-list { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1100px) { .t-home .tcard-list, .t-results .tcard-list { grid-template-columns: 1fr 1fr; } }
.tcard { display: grid; grid-template-rows: auto 1fr; border: 1px solid var(--border); background: #fff; min-width: 0; }
.tcard-photo { position: relative; display: block; aspect-ratio: 16 / 10; background: #e9eeeb; overflow: hidden; }
.tcard-photo img { width: 100%; height: 100%; object-fit: cover; }
.tcard-type { position: absolute; left: 0; top: 0; padding: 4px 10px; background: var(--brand); color: #fff; font-size: 12px; font-weight: 700; }
.tcard-b { padding: 10px 12px 12px; display: grid; gap: 6px; align-content: start; min-width: 0; }
.tcard-b h3 { font-size: 15px; line-height: 1.45; }
.tcard-b h3 a { color: var(--link); }
.tcard-b h3 small { font-size: 12.5px; color: var(--muted); font-weight: 400; }
.tcard-price { font-size: 13px; color: var(--muted); display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.tcard-price b { font-size: 22px; font-weight: 800; color: var(--price); font-variant-numeric: tabular-nums; }
.tcard-price small { font-size: 12px; }
.tcard-spec { margin: 0; display: grid; gap: 2px; font-size: 13px; }
.tcard-spec div { display: grid; grid-template-columns: 4.2em 1fr; gap: 6px; border-top: 1px dashed var(--border-light); padding-top: 3px; }
.tcard-spec dt { color: var(--muted); }
.tcard-spec dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.tcard-tags { display: flex; flex-wrap: wrap; gap: 4px; }

/* ── エリア・お知らせ・リクエスト ───────────────────── */
.t-areas { display: grid; gap: 12px; }
.t-area-g > b { display: block; font-size: 13px; margin-bottom: 6px; color: var(--brand); }
.t-news ul { padding: 4px 12px 8px; }
.t-news li { display: grid; gap: 2px; padding: 8px 0; border-bottom: 1px solid var(--border-light); font-size: 13px; }
.t-news li:last-child { border-bottom: 0; }
.t-news time { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }
.t-req p { font-size: 13px; margin-bottom: 10px; line-height: 1.7; }

/* ── 検索フォーム ─────────────────────────────────── */
.t-search { display: grid; gap: 10px; }
.t-row { display: grid; gap: 4px; }
.t-lbl { font-size: 12px; font-weight: 700; color: var(--muted); }
.t-ctl { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; min-width: 0; }
.t-ctl > .sel { flex: 1 1 140px; min-width: 0; }
.t-ctl .pair { display: flex; align-items: center; gap: 4px; width: 100%; }
.t-ctl .pair .sel { flex: 1 1 0; min-width: 0; }
.t-ctl-wrap .sel { flex: 1 1 130px; }
.t-search .txt { width: 100%; min-height: 40px; padding: 0 10px; border: 1px solid var(--border); border-radius: 4px; font-size: 16px; }
.t-search .ck { font-size: 13px; }
.t-submit .btn { width: 100%; }
.t-search.is-compact .btn-lg { min-height: 44px; font-size: 15px; }

/* ── 一覧 ─────────────────────────────────────────── */
.t-list-layout { display: grid; gap: 16px; margin-top: 10px; }
@media (min-width: 900px) { .t-list-layout { grid-template-columns: 300px minmax(0, 1fr); align-items: start; } }
.t-use-links { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--border-light); }
.t-use-links > b { width: 100%; font-size: 12px; color: var(--muted); }
.t-use-links a { padding: 4px 10px; border: 1px solid var(--border); border-radius: 999px; font-size: 12.5px; color: var(--text); background: #fff; }
.t-use-links a[aria-current="true"] { background: var(--brand); border-color: var(--brand); color: #fff; }
.t-cond { margin-left: 8px; font-size: 12px; color: var(--muted); }
.t-results .results-bar { margin-bottom: 10px; }

/* ── 種別・エリアページ ───────────────────────────── */
.t-lead { font-size: 14px; line-height: 1.8; color: var(--text); margin: 10px 0 14px; max-width: 52em; }
.t-box-inline { margin: 12px 0 14px; }
.t-more { margin: 16px 0 0; text-align: center; }
.t-more .btn { white-space: normal; }

/* ── 物件リクエストのフォーム ─────────────────────── */
.t-fs { border: 1px solid var(--border); border-radius: 4px; padding: 8px 12px 10px; margin: 0; }
.t-fs legend { font-size: 13px; font-weight: 700; padding: 0 4px; }
.t-cks { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.t-cks .ck { font-size: 14px; }
.t-inq-lead { font-size: 13px; line-height: 1.7; margin-bottom: 10px; }

/* ページ送り（tenant.js はリンクで描く） */
#tPager { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px; margin: 16px 0 0; }
#tPager a, #tPager span { min-width: 36px; height: 36px; display: inline-grid; place-items: center; padding: 0 8px; border: 1px solid var(--border); background: #fff; font-size: 14px; }
#tPager .is-current { background: var(--brand); border-color: var(--brand); color: #fff; font-weight: 700; }
.t-note { font-size: 12px; color: var(--muted); margin: -4px 0 8px; }
.t-hero-side { display: grid; gap: 10px; justify-items: start; }
@media (min-width: 721px) { .t-hero-side { justify-items: end; } }
/* フォーム系のボタン（相談・リクエスト・送信・問い合わせ）は黒ではなくブランド色（2026-09-30 オーナー指示） */
.t-site .btn-cta { background: var(--brand); border-color: var(--brand-700); color: #fff; }
.t-site .btn-cta:hover { background: var(--brand-700); }
.t-hero-btn { background: #fff; color: var(--brand); border-color: #fff; }
.t-hero-btn:hover { background: var(--brand-50); }
/* 写真が無いときの枠 */
.tcard-photo:not(:has(img))::after { content: "写真準備中"; position: absolute; inset: 0; display: grid; place-items: center; font-size: 12px; color: var(--faint); }
/* スマホはカードを横並び（写真を左）にして一覧の見通しを良くする */
@media (max-width: 639px) {
  .tcard { grid-template-rows: none; grid-template-columns: 116px minmax(0, 1fr); }
  .tcard-photo { aspect-ratio: auto; min-height: 116px; }
  .tcard-type { font-size: 11.5px; padding: 3px 6px; }
  .tcard-b { padding: 8px 10px 10px; gap: 4px; }
  .tcard-b h3 { font-size: 14px; }
  .tcard-price b { font-size: 19px; }
  .tcard-spec { font-size: 12px; }
  .tcard-spec div { grid-template-columns: 3.6em 1fr; }
}
/* 一覧の条件パネル：スマホは畳む（summary を押すと開く）、PCは常に開く */
.t-filter > summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.t-filter > summary::-webkit-details-marker { display: none; }
.t-filter > summary::after { content: "＋"; color: var(--faint); font-weight: 400; }
.t-filter[open] > summary::after { content: "−"; }
.t-filter-hint { font-size: 12px; font-weight: 400; color: var(--muted); margin-left: auto; }
@media (min-width: 900px) {
  .t-filter > summary { pointer-events: none; }
  .t-filter > summary::after, .t-filter-hint { display: none; }
  .t-filter:not([open]) > .box-b { display: block; }
}
@media (max-width: 639px) { .tcard-photo { height: 116px; min-height: 0; align-self: start; } }
.t-side .t-ctl-wrap .sel, .t-list-side .t-ctl-wrap .sel { flex: 1 1 100%; }

/* ── 電話（ヘッダー。公式LINEは使わない） ── */
.t-tel { display: none; flex-direction: column; align-items: flex-end; line-height: 1.2; color: var(--brand); text-decoration: none !important; margin-right: 4px; }
.t-tel small { font-size: 11.5px; color: var(--muted); }
.t-tel b { font-size: 17px; font-weight: 800; letter-spacing: 0.02em; font-variant-numeric: tabular-nums; }
@media (min-width: 900px) { .t-tel { display: inline-flex; } }
.t-site .global-nav a { white-space: nowrap; }
.t-site .brand-sub { white-space: nowrap; }
.t-tel b, .t-tel small { white-space: nowrap; }
@media (max-width: 1099px) { .t-tel { display: none; } }
@media (min-width: 900px) and (max-width: 1099px) { .t-site .global-nav a { padding: 8px 8px; font-size: 13px; } }

/* 消費税の説明（物件詳細）。2026-09-26 */
.t-site .t-tax ul { margin: 0; padding-left: 1.2em; font-size: 13px; line-height: 1.75; color: var(--ink-2, #3d4148); }
.t-site .t-tax li + li { margin-top: 4px; }

/* 初期費用シミュレーター（物件詳細の右側。住居の .inquiry と同じ部品を使う）2026-09-26 */
.t-site .inquiry .t-cost { border-bottom: 1px solid var(--line, #e5e7eb); margin-bottom: 0; }
.t-site .inquiry .t-cost + .box-h { border-top: 0; }
.t-site .inquiry .calc-row b { white-space: nowrap; }
