/* ============================================================
   臭気アセスメント（工場臭気対策）ページ用 追加CSS 一式
   作成日: 2026-07-22
   ------------------------------------------------------------
   ■ 内容
     1) limos-common.css   … カルモア製品ページ共通デザインシステム
     2) consul-addon.css   … コンサル系ページ用の追加コンポーネント
     の2ファイルをこの順で1本に結合したものです。
   ■ 入れ方（どちらか1つでOK）
     A) WP管理画面 → 外観 → カスタマイズ → 追加CSS に全文貼り付け
     B) 子テーマ等でCSSファイルとして読み込み
   ■ 注意
     - すでに limos-common.css／consul-addon.css を個別に導入済みの
       サイトでは、二重登録しないでください（本ファイルは未導入サイト用）
     - 適用範囲は .kcur 配下のみ。テーマ側のクラスとは衝突しません
     - 本文側は <div class="kcur">〜</div> で囲まれていることが前提
       （臭気アセスメント_完全版_WP貼付け用.html は対応済み）
   ============================================================ */

/* ========== 1) limos-common.css ========== */

/* ==========================================================
   LIMOS ページ共通CSS
   適用範囲: 本文コンテンツ .kcur 配下のみ
   プレフィックス: lms-（テーマ既存クラスとの衝突回避）
   ========================================================== */

.kcur {
  --lms-accent: #1a6fb8;
  --lms-accent-bg: #eaf3fb;
  --lms-red: #d92d20;
  --lms-marker: #ffefa8;
  --lms-text: #333333;
  --lms-text-sub: #595959;
  --lms-muted: #8c8c8c;
  --lms-border: #dcdcdc;
  --lms-bg-soft: #f5f6f7;
  --lms-radius: 8px;
}

/* ---------- 共通強調（マーカー・赤字） ---------- */

.kcur .lms-marker {
  background: linear-gradient(transparent 62%, var(--lms-marker) 62%);
  font-weight: 700;
  color: var(--lms-text);
  padding: 0 2px;
}

.kcur .lms-red {
  color: var(--lms-red);
  font-weight: 700;
}

/* ---------- セクション共通 ---------- */

.kcur .lms-section {
  margin: 0 0 48px;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-section__title {
  position: relative;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--lms-text);
  margin: 0 0 20px;
  padding: 2px 0 2px 18px;
  background: none;
  border: none;
}

.kcur .lms-section__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 6px;
  border-radius: 3px;
  background: linear-gradient(180deg, #1e3a5f 50%, var(--lms-accent) 50%);
}

.kcur .lms-section__lead {
  font-size: 15px;
  line-height: 1.8;
  color: var(--lms-text-sub);
  margin: 0 0 20px;
}

/* ---------- ヒーロー ---------- */

.kcur .lms-hero {
  background: var(--lms-bg-soft);
  border-radius: 12px;
  padding: 32px 28px;
  margin: 0 0 48px;
}

.kcur .lms-hero__catch {
  font-size: 14px;
  font-weight: 700;
  color: var(--lms-accent);
  margin: 0 0 8px;
}

.kcur .lms-hero__title {
  font-size: 30px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--lms-text);
  margin: 0 0 8px;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-hero__sub {
  font-size: 18px;
  font-weight: 700;
  color: var(--lms-text);
  margin: 0 0 12px;
}

.kcur .lms-hero__date {
  font-size: 12px;
  color: var(--lms-muted);
  margin: 0 0 16px;
}

.kcur .lms-catch {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--lms-text);
  margin: 0 0 16px;
}

.kcur .lms-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}

.kcur .lms-badges li {
  font-size: 12px;
  font-weight: 500;
  color: var(--lms-text-sub);
  background: #ffffff;
  border: 1px solid var(--lms-border);
  border-radius: 999px;
  padding: 4px 12px;
  margin: 0;
}

/* ---------- CTAボタン ---------- */

.kcur .lms-btn-group {
  display: grid;
  gap: 10px;
  margin: 0;
}

.kcur .lms-btn-group--half {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.kcur .lms-btn {
  display: block;
  text-align: center;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  padding: 14px 20px;
  border-radius: var(--lms-radius);
  text-decoration: none;
  transition: opacity 0.2s ease;
  cursor: pointer;
}

.kcur .lms-btn:hover {
  opacity: 0.85;
  text-decoration: none;
}

.kcur .lms-btn--primary {
  background: var(--lms-red);
  color: #ffffff;
  border: 1px solid var(--lms-red);
}

.kcur .lms-btn--secondary {
  background: #ffffff;
  color: var(--lms-text);
  border: 1px solid var(--lms-border);
}

/* ---------- お悩みリスト ---------- */

.kcur .lms-worries {
  margin: 0;
  padding: 0;
  list-style: none;
}

.kcur .lms-worries li {
  position: relative;
  background: var(--lms-bg-soft);
  border-radius: var(--lms-radius);
  padding: 12px 14px 12px 38px;
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--lms-text);
}

.kcur .lms-worries li::before {
  content: "!";
  position: absolute;
  left: 12px;
  top: 12px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--lms-red);
  color: #ffffff;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
}

.kcur .lms-bridge {
  text-align: center;
  margin: 20px 0 0;
}

.kcur .lms-bridge__arrow {
  display: block;
  font-size: 20px;
  color: var(--lms-muted);
  margin: 0 0 4px;
}

.kcur .lms-bridge__text {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--lms-text);
  margin: 0;
}

/* ---------- 3本柱・番号カード ---------- */

.kcur .lms-pillar {
  background: #ffffff;
  border: 1px solid var(--lms-border);
  border-radius: 12px;
  padding: 20px 18px;
  margin: 0 0 12px;
}

.kcur .lms-pillar__head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
}

.kcur .lms-pillar__num {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--lms-accent-bg);
  color: var(--lms-accent);
  font-size: 15px;
  font-weight: 700;
  line-height: 30px;
  text-align: center;
}

.kcur .lms-pillar__title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.7;
  color: var(--lms-text);
  margin: 0;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-pillar__text {
  font-size: 14px;
  line-height: 1.75;
  color: var(--lms-text-sub);
  margin: 0 0 10px;
}

.kcur .lms-pillar__link {
  font-size: 14px;
  font-weight: 700;
  color: var(--lms-accent);
  text-decoration: none;
}

.kcur .lms-pillar__link:hover {
  text-decoration: underline;
}

/* ---------- 定義ボックス・要点サマリー ---------- */

.kcur .lms-define {
  background: var(--lms-bg-soft);
  border-left: 4px solid var(--lms-accent);
  border-radius: 0;
  padding: 14px 18px;
  margin: 0 0 16px;
}

.kcur .lms-define__label {
  font-size: 13px;
  font-weight: 700;
  color: var(--lms-accent);
  margin: 0 0 6px;
}

.kcur .lms-define__text {
  font-size: 14px;
  line-height: 1.8;
  color: var(--lms-text);
  margin: 0;
}

.kcur .lms-summary {
  background: var(--lms-bg-soft);
  border-radius: var(--lms-radius);
  padding: 14px 18px;
  margin: 0;
}

.kcur .lms-summary__label {
  font-size: 13px;
  font-weight: 700;
  color: var(--lms-text);
  margin: 0 0 8px;
}

.kcur .lms-summary ul {
  margin: 0;
  padding: 0 0 0 1.2em;
}

.kcur .lms-summary li {
  font-size: 13px;
  line-height: 1.9;
  color: var(--lms-text-sub);
  margin: 0;
}

/* ---------- チェックリスト（こんな方に） ---------- */

.kcur .lms-check {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.kcur .lms-check li {
  position: relative;
  background: var(--lms-bg-soft);
  border-radius: var(--lms-radius);
  padding: 12px 14px 12px 40px;
  margin: 0;
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--lms-text);
}

.kcur .lms-check li::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 16px;
  width: 8px;
  height: 13px;
  border-right: 3px solid #2e9e5b;
  border-bottom: 3px solid #2e9e5b;
  transform: rotate(45deg);
}

.kcur .lms-fit {
  background: none;
  padding: 0;
  margin: 18px 0 12px;
  text-align: center;
}

.kcur .lms-fit__arrow {
  display: block;
  font-size: 18px;
  line-height: 1;
  color: #1d7a46;
  margin: 0 0 10px;
}

.kcur .lms-fit__title {
  display: inline-block;
  background: #1d7a46;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  border-radius: 999px;
  padding: 8px 28px;
  margin: 0 0 12px;
}

.kcur .lms-fit__text {
  font-size: 13.5px;
  line-height: 1.8;
  color: var(--lms-text);
  margin: 0;
  text-align: left;
}

.kcur .lms-unfit {
  background: var(--lms-bg-soft);
  border-radius: var(--lms-radius);
  padding: 14px 18px;
  margin: 0;
}

.kcur .lms-unfit__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--lms-text);
  margin: 0 0 8px;
}

.kcur .lms-unfit ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.kcur .lms-unfit li {
  font-size: 13px;
  line-height: 1.9;
  color: var(--lms-text-sub);
  margin: 0 0 4px;
  padding: 0;
}

.kcur .lms-unfit li:last-child {
  margin-bottom: 0;
}

.kcur .lms-unfit a {
  color: var(--lms-accent);
  font-weight: 500;
  text-decoration: none;
}

.kcur .lms-unfit a:hover {
  text-decoration: underline;
}

/* ---------- テーブル（比較・仕様） ---------- */

.kcur .lms-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 13px;
  margin: 0 0 12px;
  background: #ffffff;
}

.kcur .lms-table th,
.kcur .lms-table td {
  border: 1px solid var(--lms-border);
  padding: 10px 12px;
  text-align: left;
  vertical-align: top;
  line-height: 1.6;
  color: var(--lms-text);
  background: #ffffff;
}

.kcur .lms-table th {
  background: var(--lms-bg-soft);
  font-weight: 700;
}

.kcur .lms-table .lms-table__label {
  background: var(--lms-bg-soft);
  color: var(--lms-text-sub);
  font-weight: 500;
  width: 26%;
}

/* ---------- 選ばれる理由（1カラム・画像は見出し下） ---------- */

.kcur .lms-reason {
  background: #ffffff;
  border: 1px solid var(--lms-border);
  border-radius: 12px;
  padding: 20px;
  margin: 0 0 14px;
}

.kcur .lms-reason__head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
}

.kcur .lms-reason__num {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--lms-accent-bg);
  color: var(--lms-accent);
  font-size: 16px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
}

.kcur .lms-reason__title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;
  color: var(--lms-text);
  margin: 0;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-reason__img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--lms-radius);
  margin: 0 0 14px;
}

.kcur .lms-reason__text {
  font-size: 14px;
  line-height: 1.85;
  color: var(--lms-text-sub);
  margin: 0 0 10px;
}

.kcur .lms-reason__text:last-child {
  margin-bottom: 0;
}

.kcur .lms-reason__cta {
  font-size: 14px;
  font-weight: 700;
  color: var(--lms-accent);
  text-decoration: none;
}

.kcur .lms-reason__cta:hover {
  text-decoration: underline;
}

/* ---------- 汎用カード（管理画面UI・事例） ---------- */

.kcur .lms-card {
  background: #ffffff;
  border: 1px solid var(--lms-border);
  border-radius: 12px;
  padding: 16px 18px;
  margin: 0 0 12px;
}

.kcur .lms-card__title {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--lms-text);
  margin: 0 0 8px;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-card__titlerow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
}

.kcur .lms-card__titlerow .lms-card__title {
  margin: 0;
}

.kcur .lms-uiicon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--lms-accent-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}

.kcur .lms-card__img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--lms-radius);
  margin: 0 0 10px;
}

.kcur .lms-card__text {
  font-size: 13px;
  line-height: 1.8;
  color: var(--lms-text-sub);
  margin: 0 0 8px;
}

.kcur .lms-card__text:last-child {
  margin-bottom: 0;
}

.kcur .lms-card__link {
  font-size: 13px;
  font-weight: 700;
  color: var(--lms-accent);
  text-decoration: none;
}

.kcur .lms-card__link:hover {
  text-decoration: underline;
}

/* ---------- 背景付きパネル（レンタル・監修） ---------- */

.kcur .lms-panel {
  background: var(--lms-bg-soft);
  border-radius: 12px;
  padding: 24px 22px;
  margin: 0 0 48px;
}

.kcur .lms-panel .lms-section__title {
  margin-bottom: 12px;
}

/* ---------- 価格 ---------- */

.kcur .lms-prices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 0 0 10px;
}

.kcur .lms-price {
  background: var(--lms-bg-soft);
  border-radius: var(--lms-radius);
  padding: 14px 16px;
}

.kcur .lms-price__label {
  font-size: 12px;
  color: var(--lms-muted);
  margin: 0 0 4px;
}

.kcur .lms-price__value {
  font-size: 22px;
  font-weight: 700;
  color: var(--lms-text);
  margin: 0;
}

.kcur .lms-note {
  font-size: 12px;
  line-height: 1.7;
  color: var(--lms-muted);
  margin: 0;
}

/* ---------- FAQ ---------- */

.kcur .lms-faq {
  margin: 0;
}

.kcur .lms-faq__item {
  border-bottom: 1px solid var(--lms-border);
  padding: 0 0 14px;
  margin: 0 0 14px;
}

.kcur .lms-faq__item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.kcur .lms-faq__q {
  position: relative;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--lms-text);
  margin: 0 0 6px;
  padding: 0 0 0 28px;
}

.kcur .lms-faq__q::before {
  content: "Q";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--lms-accent);
  font-weight: 700;
}

.kcur .lms-faq__a {
  position: relative;
  font-size: 14px;
  line-height: 1.8;
  color: var(--lms-text-sub);
  margin: 0;
  padding: 0 0 0 28px;
}

.kcur .lms-faq__a::before {
  content: "A";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--lms-red);
  font-weight: 700;
}

/* ---------- 導入までの流れ ---------- */

.kcur .lms-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.kcur .lms-flow li {
  background: var(--lms-bg-soft);
  border-radius: var(--lms-radius);
  padding: 8px 12px;
  font-size: 13px;
  line-height: 1.4;
  color: var(--lms-text-sub);
  margin: 0;
}

.kcur .lms-flow li:not(:last-child)::after {
  content: "→";
  color: var(--lms-muted);
  margin: 0 0 0 10px;
}

.kcur .lms-flow .lms-flow__active {
  background: var(--lms-accent-bg);
  color: var(--lms-accent);
  font-weight: 700;
}

/* ---------- 監修者 ---------- */

.kcur .lms-supervisor {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 16px;
}

.kcur .lms-supervisor__icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--lms-accent-bg);
  color: var(--lms-accent);
  font-size: 13px;
  font-weight: 700;
  line-height: 48px;
  text-align: center;
}

.kcur .lms-supervisor__name {
  font-size: 14px;
  font-weight: 700;
  color: var(--lms-text);
  margin: 0;
}

.kcur .lms-supervisor__profile {
  font-size: 12px;
  color: var(--lms-text-sub);
  margin: 0;
}

/* ---------- タグ（悩み・解決） ---------- */

.kcur .lms-tag-worry {
  display: inline-block;
  font-size: 12px;
  font-weight: 500;
  color: #55606e;
  background: #eef0f3;
  border-radius: 999px;
  padding: 3px 10px;
  margin: 0 0 8px;
}

.kcur .lms-tag-solve {
  display: inline-block;
  font-size: 12px;
  font-weight: 500;
  color: #1d7a46;
  background: #e8f5ec;
  border-radius: 999px;
  padding: 3px 10px;
  margin: 0 0 8px;
}

/* ---------- 解決プレビュー ---------- */

.kcur .lms-solve__lead {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;
  color: var(--lms-text);
  margin: 0 0 20px;
}

.kcur .lms-solve {
  background: #ffffff;
  border: 1px solid var(--lms-border);
  border-radius: 12px;
  padding: 16px 18px;
  margin: 0 0 12px;
}

.kcur .lms-solve__copy {
  font-size: 16px;
  line-height: 1.9;
  margin: 0 0 6px;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-solve__img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--lms-radius);
  margin: 10px 0;
}

.kcur .lms-solve__ph {
  background: #f0f2f5;
  border: 2px dashed #c9d0d8;
  border-radius: var(--lms-radius);
  padding: 56px 16px;
  text-align: center;
  font-size: 13px;
  color: var(--lms-muted);
  margin: 10px 0;
}

.kcur .lms-solve__text {
  font-size: 13px;
  line-height: 1.75;
  color: var(--lms-text-sub);
  margin: 0;
}

/* ---------- 理由カードのUI脚注 ---------- */

.kcur .lms-uifoot {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin: 12px 0 0;
  padding: 10px 0 0;
  border-top: 1px dotted var(--lms-border);
}

.kcur .lms-uifoot p {
  font-size: 12px;
  line-height: 1.6;
  color: var(--lms-muted);
  margin: 0;
}

.kcur .lms-uifoot a {
  color: var(--lms-accent);
  text-decoration: none;
  font-weight: 500;
}

.kcur .lms-uifoot a:hover {
  text-decoration: underline;
}

/* ---------- 事例（課題→機能→成果） ---------- */

.kcur .lms-case__row {
  display: block;
  background: none;
  border-radius: 0;
  padding: 0;
  margin: 0 0 14px;
}

.kcur .lms-case__catch {
  background: var(--lms-accent-bg);
  color: var(--lms-accent);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  border-radius: var(--lms-radius);
  padding: 8px 12px;
  margin: 0 0 12px;
}

.kcur .lms-case__label {
  display: block;
  width: 100%;
  box-sizing: border-box;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  border-radius: 6px;
  padding: 6px 0;
  margin: 0 0 10px;
}

.kcur .lms-case__label--before {
  background: #fdecea;
  color: #b32318;
}

.kcur .lms-case__label--func {
  background: var(--lms-accent-bg);
  color: var(--lms-accent);
}

.kcur .lms-case__label--after {
  background: #e8f5ec;
  color: #1d7a46;
}

.kcur .lms-case__row p {
  display: block;
  font-size: 13.5px;
  line-height: 1.8;
  color: var(--lms-text-sub);
  margin: 0;
  padding: 0;
}

.kcur .lms-case__row strong {
  font-weight: 700;
  color: var(--lms-text);
}

.kcur .lms-case__sum {
  background: var(--lms-accent-bg);
  border-left: 3px solid var(--lms-accent);
  border-radius: 0;
  padding: 10px 14px;
  margin: 10px 0 8px;
}

.kcur .lms-case__sum p {
  font-size: 13px;
  line-height: 1.75;
  color: var(--lms-text);
  margin: 0;
}

.kcur .lms-case__sum .lms-case__sum-label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: var(--lms-accent);
  margin: 0 0 2px;
}

/* ---------- 導入フロー（縦型タイムライン） ---------- */

.kcur .lms-tl {
  margin: 0;
  padding: 0;
  list-style: none;
}

.kcur .lms-tl li {
  position: relative;
  display: flex;
  gap: 14px;
  padding: 0 0 22px;
  margin: 0;
}

.kcur .lms-tl li::before {
  content: "";
  position: absolute;
  left: 17px;
  top: 38px;
  bottom: 0;
  width: 2px;
  background: var(--lms-border);
}

.kcur .lms-tl li:last-child {
  padding-bottom: 0;
}

.kcur .lms-tl li:last-child::before {
  display: none;
}

.kcur .lms-tl__num {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--lms-accent-bg);
  color: var(--lms-accent);
  font-size: 16px;
  font-weight: 700;
  line-height: 36px;
  text-align: center;
  position: relative;
  z-index: 1;
}

.kcur .lms-tl__num--hl {
  background: var(--lms-accent);
  color: #ffffff;
}

.kcur .lms-tl__title {
  font-size: 15px;
  font-weight: 700;
  color: var(--lms-text);
  margin: 6px 0 4px;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-tl__dur {
  display: inline-block;
  font-size: 11px;
  font-weight: 500;
  background: var(--lms-bg-soft);
  color: var(--lms-text-sub);
  border-radius: 999px;
  padding: 2px 8px;
  margin: 0 0 0 8px;
  vertical-align: 1px;
}

.kcur .lms-tl__dur--free {
  background: #e8f5ec;
  color: #1d7a46;
}

.kcur .lms-tl__text {
  font-size: 13px;
  line-height: 1.75;
  color: var(--lms-text-sub);
  margin: 0;
}

.kcur .lms-tl__note {
  background: var(--lms-accent-bg);
  border-radius: var(--lms-radius);
  padding: 10px 12px;
  margin: 8px 0 0;
}

.kcur .lms-tl__note p {
  font-size: 12px;
  line-height: 1.7;
  color: var(--lms-accent);
  margin: 0;
}

/* ---------- 未設定画像の非表示（差し替え前の崩れ防止） ---------- */

.kcur img[src=""] {
  display: none;
}

/* ---------- レスポンシブ ---------- */

@media (max-width: 600px) {
  .kcur .lms-hero {
    padding: 24px 18px;
  }

  .kcur .lms-hero__title {
    font-size: 24px;
  }

  .kcur .lms-section__title {
    font-size: 20px;
  }

  .kcur .lms-btn-group--half {
    grid-template-columns: 1fr;
  }

  .kcur .lms-prices {
    grid-template-columns: 1fr;
  }

  .kcur .lms-table {
    font-size: 12px;
  }

  .kcur .lms-table th,
  .kcur .lms-table td {
    padding: 8px 8px;
  }
}


/* ========== 2) consul-addon.css ========== */

/* ==========================================================
   臭気コンサル記事用 追加CSS（consul-addon.css）
   - limos-common.css には手を加えず、その「後」に読み込む
   - 追加クラスのみ（既存クラスの上書き・削除はしない）
   - 適用範囲: .kcur 配下／プレフィックス lms- を踏襲
   ========================================================== */

/* ピル型ミニリンク（pillar内の詳細リンク用。矢印テキスト不要） */

.kcur .lms-pillar__links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

.kcur .lms-btn-mini {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  color: var(--lms-accent);
  background: #ffffff;
  border: 1px solid var(--lms-accent);
  border-radius: 999px;
  padding: 6px 16px;
  text-decoration: none;
  line-height: 1.4;
}

.kcur .lms-btn-mini:hover {
  background: var(--lms-accent-bg);
  text-decoration: none;
}

/* アクセント版パネル（灰色パネルが連続する場所の差し色用） */

.kcur .lms-panel--accent {
  background: var(--lms-accent-bg);
  border: 1px solid var(--lms-accent);
}

/* ペアボックス（「使うサービス→得られるもの」など、関連する項目を1枠にまとめる） */

.kcur .lms-pair {
  background: var(--lms-bg-soft);
  border-radius: var(--lms-radius);
  padding: 12px 14px;
  margin: 0;
}

.kcur .lms-pair__row {
  padding: 0 0 10px;
  margin: 0 0 10px;
  border-bottom: 1px dashed var(--lms-border);
}

.kcur .lms-pair__row:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

.kcur .lms-pair__row p {
  font-size: 13.5px;
  line-height: 1.8;
  color: var(--lms-text-sub);
  margin: 0;
}

/* 悩み別カード（「こんなとき」用。番号バッジ＋左アクセントで事例カードと差別化） */

.kcur .lms-usecase {
  background: #ffffff;
  border: 1px solid var(--lms-border);
  border-left: 4px solid var(--lms-accent);
  border-radius: 0 12px 12px 0;
  padding: 16px 18px;
  margin: 0 0 12px;
}

.kcur .lms-usecase__title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--lms-text);
  margin: 0 0 10px;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-usecase__num {
  flex-shrink: 0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--lms-accent);
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  line-height: 26px;
  text-align: center;
}

.kcur .lms-usecase__tags {
  margin: 0 0 10px;
}

/* 事例カード（ヘッダー帯型。見出しをカードと一体化） */

.kcur .lms-casecard {
  background: #ffffff;
  border: 1px solid var(--lms-border);
  border-radius: 12px;
  overflow: hidden;
  margin: 0 0 16px;
}

.kcur .lms-casecard__head {
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--lms-bg-soft);
  border-bottom: 1px solid var(--lms-border);
  padding: 12px 18px;
}

.kcur .lms-casecard__no {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--lms-accent);
  background: var(--lms-accent-bg);
  border-radius: 999px;
  padding: 4px 12px;
  white-space: nowrap;
}

.kcur .lms-casecard__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--lms-text);
  margin: 0;
  padding: 0;
  background: none;
  border: none;
}

.kcur .lms-casecard__body {
  padding: 16px 18px;
}

/* 成果ファースト帯（事例カード冒頭に「RESULT」を見せる） */

.kcur .lms-result {
  background: #e8f5ec;
  border-radius: var(--lms-radius);
  padding: 12px 16px;
  margin: 0 0 14px;
}

.kcur .lms-result__label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #1d7a46;
  margin: 0 0 4px;
}

.kcur .lms-result__text {
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.7;
  color: var(--lms-text);
  margin: 0;
}

.kcur .lms-result__text strong {
  color: #1d7a46;
}

/* タイムライン番号の色変種（課題=赤系／成果=緑。lms-tlへの追加のみ） */

.kcur .lms-tl__num--issue {
  background: #fdecea;
  color: #b32318;
}

.kcur .lms-tl__num--goal {
  background: #1d7a46;
  color: #ffffff;
}

/* 事例用コンパクトタイムライン（余白と番号を小さめに） */

.kcur .lms-tl--case li {
  padding-bottom: 14px;
}

.kcur .lms-tl--case .lms-tl__num {
  width: 30px;
  height: 30px;
  line-height: 30px;
  font-size: 13px;
}

.kcur .lms-tl--case li::before {
  left: 14px;
  top: 32px;
}

/* 使ったサービス帯（事例カード末尾のまとめ行） */

.kcur .lms-svcline {
  background: var(--lms-accent-bg);
  border-radius: var(--lms-radius);
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--lms-text);
  text-align: center;
  margin: 4px 0 0;
}

.kcur .lms-svcline strong {
  color: var(--lms-accent);
}

/* 悩みカード内の縦積みグリッド（ラベル左・内容右。場所タグ／サービス太字／成果ハイライト） */

.kcur .lms-uc {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 10px 14px;
  align-items: start;
}

.kcur .lms-uc__label {
  font-size: 12px;
  color: var(--lms-muted);
  padding-top: 4px;
}

.kcur .lms-uc__service {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--lms-accent);
}

.kcur .lms-uc__outcome {
  display: block;
  background: #fdf6ea;
  border-left: 3px solid #e8a33d;
  padding: 8px 12px;
  font-size: 13.5px;
  line-height: 1.8;
  color: var(--lms-text);
}

/* 事例スペック3枠（現場・臭気・調査など） */

.kcur .lms-spec {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 0 0 12px;
}

.kcur .lms-spec div {
  background: var(--lms-bg-soft);
  border-radius: 6px;
  padding: 8px 10px;
}

.kcur .lms-spec dt {
  font-size: 11px;
  color: var(--lms-muted);
  margin: 0;
}

.kcur .lms-spec dd {
  font-size: 12.5px;
  line-height: 1.7;
  color: var(--lms-text);
  margin: 2px 0 0;
}

@media (max-width: 600px) {
  .kcur .lms-spec {
    grid-template-columns: 1fr;
  }
}

/* 価値ハイライト（ここがコンサルの価値） */

.kcur .lms-value {
  background: #fdf6ea;
  border-left: 4px solid #e8a33d;
  padding: 10px 14px;
  font-size: 13.5px;
  line-height: 1.8;
  color: var(--lms-text);
  margin: 12px 0;
}

/* スマホ対応：悩みカード内グリッドを1カラム化 */

@media (max-width: 600px) {
  .kcur .lms-uc {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .kcur .lms-uc__label {
    padding-top: 0;
    font-weight: 700;
  }
}

/* WordPress自動整形（wpautop）対策：lms-ucグリッド内に挿入されるbr/pを無効化 */

.kcur .lms-uc br {
  display: none;
}

.kcur .lms-uc p {
  margin: 0;
  display: contents;
}

