@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* 調整 */
.p-authorBox .avatar {
    display: initial;
}

.post_content a:not(.p-toc a, .afib a, table a) {
    color: var(--accent-d);
    border-bottom: 1px solid var(--accent-d);
}

.post_content strong {
    color: #F44336;
}

.p-breadcrumb {
    margin-bottom: 1em;
}

/* ===== スチールモノトーン／クレイ配色（SWELL対応・追加CSS用） =====
   ・記事本文の .post_content 内で使う前提
   ・SWELLの .post_content th 等より詳細度を高くして上書き
   ・横スクロール用に max-width / width を解除 */
:root{
  --accent:#BC816E;   /* メインカラー（罫線・マーカー・スクロールバー） */
  --accent-d:#9E6651; /* 文字が乗る面用の濃いクレイ（リンク・チップ） */
  --ink:#2B2622;      /* ヘッダー・見出しのウォームチャコール */
  --tint:#F6F2EF;     /* 淡いウォームグレー背景 */
  --line:#E6DDD7;     /* ヘアライン罫 */
  --mute:#6F645D;     /* デメリット用ニュートラル */
  --cta:#0E9180;      /* ボタンの差し色（相対的に目立つティール） */
  --cta-d:#0A7263;    /* ボタンのホバー */
}

/* タイトル付きリスト */
.post_content .titled-list{background:var(--tint);border:1px solid var(--line);padding:22px 24px 16px;margin:30px 0;}
.post_content .titled-list__title{font-size:1.12em;font-weight:700;color:var(--ink);line-height:1.45;letter-spacing:.02em;
  padding-left:14px;border-left:4px solid var(--accent);margin:0 0 14px;}
.post_content .titled-list ul{list-style:none;margin:0;padding:0;}
.post_content .titled-list li{position:relative;padding:10px 0 10px 24px;margin:0;border-bottom:1px solid var(--line);color:#473f39;}
.post_content .titled-list li:last-child{border-bottom:0;}
.post_content .titled-list li::before{content:"";position:absolute;left:4px;top:1.15em;width:8px;height:8px;background:var(--accent);}

/* メリット・デメリット */
.post_content .md{padding:16px 20px;margin:24px 0;border:1px solid var(--line);border-left-width:4px;background:#fff;}
.post_content .md-title{display:flex;align-items:center;gap:9px;font-weight:700;font-size:1.04em;margin:0 0 8px;letter-spacing:.02em;}
.post_content .md-title::before{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:#fff;font-size:.8em;font-weight:700;}
.post_content .md ul{margin:0;padding-left:1.4em;}
.post_content .md li{margin:5px 0;}
.post_content .md-pros{border-left-color:var(--accent);}
.post_content .md-pros .md-title{color:var(--accent-d);}
.post_content .md-pros .md-title::before{content:"✓";background:var(--accent-d);}
.post_content .md-cons{border-left-color:var(--mute);}
.post_content .md-cons .md-title{color:var(--mute);}
.post_content .md-cons .md-title::before{content:"✕";background:var(--mute);}

/* ===== テーブル（SWELL対応・幅100%・ヒント常時表示／JS不要） ===== */
:root{
  --accent:#BC816E; --accent-d:#9E6651; --ink:#2B2622; --line:#E6DDD7;
}

/* テーブル本体（SWELLより強い指定で上書き／th白文字・角丸なし） */
.post_content table{border-collapse:collapse;border-spacing:0;width:100%;margin:24px 0;font-size:.95em;background:#fff;border:1px solid var(--line);}
.post_content table th,.post_content table td{padding:12px 15px;text-align:left;vertical-align:top;word-break:normal;
  border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);}
.post_content table th:last-child,.post_content table td:last-child{border-right:0;}
.post_content table tr:last-child th,.post_content table tr:last-child td{border-bottom:0;}
.post_content table th,
.post_content table thead th,.post_content table thead td{background-color:var(--ink);color:#fff;font-weight:700;white-space:nowrap;letter-spacing:.02em;}
.post_content table td a{color:var(--accent-d);font-weight:700;text-decoration:none;border-bottom:1px solid var(--accent-d);}
.post_content table td a:hover{color:var(--ink);}

/* 横スクロール枠：幅は100%、狭い画面では min-width ではみ出してスクロール */
.post_content .tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:24px 0;padding-bottom:4px;
  scrollbar-width:thin;scrollbar-color:#BC816E #ece4df;}
.post_content .tbl-scroll::-webkit-scrollbar{height:10px;}
.post_content .tbl-scroll::-webkit-scrollbar-track{background:#ece4df;}
.post_content .tbl-scroll::-webkit-scrollbar-thumb{background:var(--accent);}
.post_content .tbl-scroll table{margin:0;width:100%;min-width:800px;max-width:none;}

/* スクロールヒント（常時表示） */
@media screen and (max-width: 767px) {.post_content .tbl-scroll::before{content:"→ 横にスクロールできます";display:block;position:sticky;left:0;width:max-content;
  font-size:.76em;font-weight:700;letter-spacing:.04em;color:#fff;background:var(--accent-d);
  padding:5px 12px;margin-bottom:10px;animation:tblSwipe 1.4s ease-in-out infinite;}
@keyframes tblSwipe{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@media (prefers-reduced-motion:reduce){.post_content .tbl-scroll::before{animation:none;}}}

/* ボタン */
.post_content .afib{margin:28px 0;text-align:center;}
.post_content .afib a{display:block;width:100%;max-width:480px;margin:0 auto;padding:17px 24px;
  background:var(--cta);color:#fff;font-weight:800;font-size:1.08em;letter-spacing:.04em;text-decoration:none;
  transition:background .15s;}
.post_content .afib a::after{content:" →";}
.post_content .afib a:hover{background:var(--cta-d);}