/* =========================================================
   enrike 記事装飾CSS（SWELL基調・温かみ上質）  prefix: en-
   見出し(H2/H3)はSWELL本体のあしらいを使用。
   ここではカスタムの囲み・表・ステップ・FAQ等を定義する。
   ========================================================= */
.post_content, .entry-content, .article{
  --en-acc:#c08264; --en-acc-d:#a2654a; --en-acc-l:#f4e6dd;
  --en-ink:#3f3a35; --en-muted:#8c8178; --en-line:#eaded2;
  --en-bg:#fbf7f3; --en-ok:#3a9e6e; --en-ng:#cf6b6b;
}

/* ---- マーカー / 強調 ---- */
.en-marker{background:linear-gradient(transparent 62%,#f4d7c7 62%);font-weight:700;padding:0 .1em}
.en-strong{color:#a2654a;font-weight:700}

/* ---- 囲みボックス（SWELL風ラベル付き）---- */
.en-box{position:relative;border:1px solid #eaded2;border-radius:10px;background:#fff;
  padding:1.5em 1.2em 1.1em;margin:2em 0}
.en-box__label{position:absolute;top:-.8em;left:1em;background:#c08264;color:#fff;
  font-size:.78rem;font-weight:700;letter-spacing:.04em;padding:.28em .95em;border-radius:6px}
.en-box--point{background:#fbf5f0;border-color:#f0dccd}
.en-box--note{background:#fcf7ea;border-color:#f0e2b4}
.en-box--note .en-box__label{background:#d7a92e}

/* ---- メリット / デメリット ---- */
.en-proscons{display:grid;grid-template-columns:1fr 1fr;gap:1em;margin:1.8em 0}
@media(max-width:600px){.en-proscons{grid-template-columns:1fr}}
.en-pros,.en-cons{border-radius:10px;padding:1.1em 1.2em}
.en-pros{background:#eff8f2;border:1px solid #c7e6d4}
.en-cons{background:#fdf0f0;border:1px solid #f1cdcd}
.en-pros h4,.en-cons h4{margin:0 0 .5em;font-size:1.02rem;display:flex;align-items:center;gap:.4em}
.en-pros h4{color:#3a9e6e}.en-cons h4{color:#cf6b6b}
.en-pros h4::before{content:"◎"}.en-cons h4::before{content:"△"}
.en-pros ul,.en-cons ul{margin:0;padding-left:1.2em}
.en-pros li,.en-cons li{margin:.4em 0;line-height:1.8}

/* ---- 比較表（横スクロール対応）---- */
.en-compare{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.8em 0;
  border-radius:10px;border:1px solid #eaded2}
.en-compare table{width:100%;border-collapse:collapse;min-width:560px;font-size:.94rem}
.en-compare th,.en-compare td{border-bottom:1px solid #eaded2;border-right:1px solid #f0e7dd;
  padding:.72em .8em;text-align:center;vertical-align:middle}
.en-compare thead th{background:#c08264;color:#fff;border-color:#b2765a}
.en-compare tbody th{background:#fbf5f0;text-align:left;font-weight:700;white-space:nowrap}
.en-compare tbody tr:nth-child(even) td{background:#fcf9f6}
.en-compare .en-best{background:#fff3d9 !important;font-weight:700}
.en-compare tr :last-child{border-right:none}

/* ---- ステップ（番号付き）---- */
.en-steps{counter-reset:en-step;list-style:none;padding:0;margin:1.8em 0}
.en-steps>li{position:relative;padding:.1em 0 1.2em 2.8em;border-left:2px solid #f0dccd;margin-left:.9em;line-height:1.85}
.en-steps>li::before{counter-increment:en-step;content:counter(en-step);
  position:absolute;left:-1.05em;top:-.1em;width:2em;height:2em;background:#c08264;color:#fff;
  border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9em}
.en-steps>li:last-child{border-left-color:transparent;padding-bottom:0}

/* ---- FAQ（Q/Aバッジ）---- */
.en-faq{margin:1.8em 0}
.en-faq__item{border:1px solid #eaded2;border-radius:10px;margin:.7em 0;overflow:hidden;background:#fff}
.en-faq__q{background:#fbf5f0;padding:.9em 1.1em .9em 3em;position:relative;font-weight:700;line-height:1.7}
.en-faq__q::before{content:"Q";position:absolute;left:1em;top:.85em;width:1.4em;height:1.4em;
  background:#c08264;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82em}
.en-faq__a{padding:.9em 1.1em .9em 3em;position:relative;line-height:1.9}
.en-faq__a::before{content:"A";position:absolute;left:1em;top:.85em;width:1.4em;height:1.4em;
  background:#e7d8cb;color:#6b5a4c;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82em;font-weight:700}

/* ---- リード文 ---- */
.en-lead{background:#fbf5f0;border-left:4px solid #c08264;border-radius:8px;
  padding:1.1em 1.2em;margin:1.4em 0;line-height:1.95}

/* ---- 筆者/免責 ---- */
.en-disclaimer{font-size:.84rem;color:#8c8178;border-top:1px dashed #eaded2;margin-top:2em;padding-top:1em;line-height:1.8}

/* ---- サイドバー追従CTA ---- */
.enrike-side-cta{position:sticky;top:84px;background:#fff;border:1px solid #eaded2;border-top:4px solid var(--acc,#c08264);border-radius:12px;padding:1.2em 1.1em;text-align:center;box-shadow:0 6px 20px rgba(160,101,74,.08)}
.enrike-side-cta .esc-badge{display:inline-block;background:var(--acc,#c08264);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.06em;padding:.25em .9em;border-radius:999px}
.enrike-side-cta p{font-weight:700;font-size:.92rem;line-height:1.75;margin:.7em 0 .9em}
.enrike-side-cta a{display:block;background:var(--acc,#c08264);color:#fff;text-decoration:none;font-weight:700;padding:.75em 1em;border-radius:999px;font-size:.9rem;margin-top:.5em}

/* ---- クラスターナビ（記事末尾の内部リンク：次に読む／あわせて読む／ハブ）---- */
.en-cluster{margin:3em 0 1em;padding:1.4em 1.2em 1.2em;border:1px solid #eaded2;border-radius:12px;background:#fdfaf7}
.en-cluster__label{margin:0 0 .6em !important;font-family:'Cormorant Garamond',serif;letter-spacing:.2em;font-size:.82rem;color:#c08264;font-weight:600}
.en-cluster__head{margin:1.1em 0 .5em !important;font-weight:700;font-size:1rem;padding-left:.6em;border-left:4px solid #c08264;line-height:1.4}
.en-cluster__list{list-style:none;margin:0 !important;padding:0 !important}
.en-cluster__item{margin:0 0 .6em !important;padding:0 !important;list-style:none}
.en-cluster__item a{display:flex;gap:.9em;align-items:center;text-decoration:none;color:#3f3a35;padding:.5em;border-radius:8px;transition:background .2s}
.en-cluster__item a:hover{background:#f4e6dd}
.en-cluster__img{flex:none;width:120px;height:auto;aspect-ratio:1200/630;object-fit:cover;border-radius:6px}
.en-cluster__txt{font-size:.95rem;line-height:1.6;font-weight:600}
.en-cluster__tag{display:block;font-size:.72rem;color:#a2654a;font-weight:700;letter-spacing:.04em;margin-bottom:.15em}
.en-cluster__hub{margin:1.2em 0 0 !important;text-align:right}
.en-cluster__hub a{font-weight:700;color:#a2654a;text-decoration:none;border-bottom:1px solid #e3c9b9}
@media(max-width:480px){.en-cluster__img{width:92px}.en-cluster__txt{font-size:.9rem}}
