/* 記事のデザイン（salt-design.css） */
/* =========================================================
   ソルト 区市町村ページ デザイン（追加CSS）
   貼り付け先：管理画面「ソルトの記事 → 記事のCSS」の「1. 記事のデザイン」
   （このファイルを選んで保存＝全文の置き換え）。テーマ切り替え前は 外観 → カスタマイズ → 追加CSS。
   .salt-page の中だけに効くので、ほかのページは変わらない。
   ========================================================= */
.salt-page{
  --salt-main:#2f6f6b;      /* 見出し・ボタン（白文字が読める濃さ） */
  --salt-main-dark:#1f4f4c;
  --salt-tint:#eef5f4;      /* 東京都の補助の地色 */
  --salt-tint-2:#e7f1f0;
  --salt-line:#dfe7e6;
  --salt-city:#fbf6ec;      /* 八王子市の補助の地色 */
  --salt-city-line:#ecd9b3;
  --salt-city-text:#6b4400;
  --salt-text:#1a1a1a;
  --salt-sub:#3a3a3a;
  font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;
  color:var(--salt-text);
  font-size:17px;
  line-height:1.9;
  font-weight:500;
}
.salt-page > * + *{margin-top:28px}
.salt-page .wp-block-group,.salt-page .wp-block-column{box-sizing:border-box}
.salt-page p{margin:0}
.salt-page a{color:var(--salt-main)}
.salt-page a:hover{color:var(--salt-main-dark)}

/* ---- 見出し（テーマの装飾を打ち消す） */
.entry-body .salt-page h2.salt-h2{
  margin:72px 0 22px;padding:16px 20px 16px 22px;
  background:var(--salt-tint);border:none;border-left:6px solid var(--salt-main);border-radius:0 8px 8px 0;
  font-family:inherit;font-weight:700;font-size:26px;line-height:1.5;color:#10302d;
}
.entry-body .salt-page h2.salt-h2::before,
.entry-body .salt-page h2.salt-h2::after,
.entry-body .salt-page h3.salt-h3::before,
.entry-body .salt-page h3.salt-h3::after{content:none;display:none}
.entry-body .salt-page h3.salt-h3{
  margin:36px 0 12px;padding:0 0 0 18px;background:none;border:none;position:relative;
  font-size:21px;font-weight:700;line-height:1.6;color:#10302d;
}
.entry-body .salt-page h3.salt-h3{background:linear-gradient(var(--salt-main),var(--salt-main)) left .55em/8px 8px no-repeat}

/* ---- 要約ボックス */
.salt-summary{border:2px solid var(--salt-main);border-radius:12px;overflow:hidden;padding:0 !important}
.salt-summary .salt-summary__title{background:var(--salt-main);color:#fff;font-weight:700;font-size:19px;padding:16px 24px}
.salt-summary .salt-summary__list{list-style:none;margin:0;padding:20px 24px 8px}
.salt-summary .salt-summary__list li{position:relative;padding-left:118px;margin:0 0 14px;line-height:1.8;font-size:17px}
.salt-summary .salt-summary__list strong{color:#b04a00;font-size:1.15em}
.salt-summary .salt-summary__by{font-size:14px;color:var(--salt-sub);padding:0 24px 18px}
.salt-label{position:absolute;left:0;top:0;display:inline-block;width:100px;text-align:center;font-size:13px;font-weight:700;line-height:1.6;padding:3px 0;border-radius:4px;margin-top:3px}
.salt-label.is-city{background:#fdf1dc;color:var(--salt-city-text)}
.salt-label.is-tokyo{background:var(--salt-tint-2);color:var(--salt-main)}

/* ---- 金額カード */
.salt-stats{gap:16px}
.salt-stat{border-radius:12px;padding:20px !important;height:100%}
.salt-stat.is-city{background:var(--salt-city);border:2px solid var(--salt-city-line)}
.salt-stat.is-tokyo{background:var(--salt-tint);border:2px solid #b9d6d2}
.salt-stat .salt-stat__label{font-size:15px;font-weight:700}
.salt-stat.is-city .salt-stat__label{color:var(--salt-city-text)}
.salt-stat.is-tokyo .salt-stat__label{color:var(--salt-main)}
.salt-stat .salt-stat__num{font-size:40px;font-weight:800;line-height:1.25;margin:6px 0}
.salt-stat.is-city .salt-stat__num{color:#8a4b00}
.salt-stat.is-tokyo .salt-stat__num{color:var(--salt-main)}
.salt-stat .salt-stat__num small,.salt-answer__num small,.salt-case__num small{font-size:.5em;font-weight:500}
.salt-stat .salt-stat__note{font-size:14px;color:var(--salt-sub)}

/* ---- 表 */
.salt-table{overflow-x:auto;margin:0}
.salt-table table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.75;border:none}
.salt-table th{background:var(--salt-main);color:#fff;font-weight:700;text-align:left;padding:12px 14px;border:none}
.salt-table td{padding:14px;border:none;border-bottom:1px solid #c9d6d4;vertical-align:top}
.salt-table tbody tr:nth-child(even) td{background:#f5f9f8}
.salt-table td small{font-size:14px;color:var(--salt-sub)}
.salt-table.is-sum td:last-child{background:var(--salt-tint-2);font-weight:800;font-size:18px;color:#10302d}
.salt-table.is-sum tbody tr:nth-child(even) td:last-child{background:#dcecea}
.salt-badge{display:inline-block;font-weight:700;font-size:13px;line-height:1.6;padding:2px 8px;border-radius:4px;margin-bottom:4px}
.salt-badge.is-wait{background:#c2410c;color:#fff}
.salt-badge.is-open{background:var(--salt-main);color:#fff}
.salt-badge.is-none{background:#eeeeec;color:#4a4a4a}

/* ---- 注意枠 */
.salt-alert{background:#fff4e5;border:2px solid #e0a54a;border-radius:12px;padding:20px 24px 20px 64px !important;position:relative}
.salt-alert::before{content:"";position:absolute;left:24px;top:22px;width:26px;height:26px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a4f00' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'/%3E%3C/svg%3E")}
.salt-alert .salt-alert__title{font-weight:800;font-size:19px;color:#5c3000;margin-bottom:6px}
.salt-alert p{font-size:17px;line-height:1.85}

/* ---- チェックリスト・NGリスト */
.salt-lead{font-weight:700;font-size:19px}
.salt-check,.salt-ng{list-style:none;padding:0;margin:0}
.salt-check li,.salt-ng li{position:relative;padding:0 0 0 32px;margin:0 0 12px;font-size:17px;line-height:1.85}
.salt-check li::before,.salt-ng li::before{content:"";position:absolute;left:0;top:5px;width:20px;height:20px;background:no-repeat center/contain}
.salt-check li::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f6f6b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E")}
.salt-ng{border:1px solid var(--salt-city-line);border-radius:12px;overflow:hidden}
.salt-ng li{margin:0;padding:16px 22px 16px 54px;border-bottom:1px solid #f1e6cf}
.salt-ng li:last-child{border-bottom:none}
.salt-ng li::before{left:22px;top:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a6200' stroke-width='2.4' stroke-linecap='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E")}

/* ---- 小カード（締切など） */
.salt-mini-grid{gap:14px;margin-top:14px !important}
.salt-mini{border:1px solid #c9d6d4;border-radius:10px;padding:16px 18px !important;height:100%;font-size:16px;line-height:1.8}
.salt-mini .salt-mini__label{font-size:14px;font-weight:700;color:var(--salt-main);margin-bottom:4px}

/* ---- 補足（灰色の枠） */
.salt-memo{background:#f3f4f3;border-radius:10px;padding:18px 22px;font-size:16px;line-height:1.9;color:#262626}

/* ---- 答えの強調（5kWで60万円） */
.salt-answer-row{align-items:center !important;gap:24px}
.salt-answer{background:var(--salt-main);color:#fff;border-radius:12px;padding:18px 22px !important}
.salt-answer .salt-answer__label{font-size:15px;font-weight:700}
.salt-answer .salt-answer__num{font-size:44px;font-weight:700;line-height:1.3}

/* ---- 地域カード */
.salt-areas{gap:16px}
.salt-area{border:1px solid var(--salt-line);border-radius:12px;padding:64px 22px 22px !important;height:100%;position:relative}
.salt-area::before{content:"";position:absolute;left:22px;top:22px;width:32px;height:32px;background:no-repeat center/contain}
.salt-area.is-river::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f6f6b' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M2 7c2-2 4-2 6 0s4 2 6 0 4-2 6 0'/%3E%3Cpath d='M2 12c2-2 4-2 6 0s4 2 6 0 4-2 6 0'/%3E%3Cpath d='M2 17c2-2 4-2 6 0s4 2 6 0 4-2 6 0'/%3E%3C/svg%3E")}
.salt-area.is-mountain::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f6f6b' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M3 20l6-11 4 6 3-4 5 9z'/%3E%3C/svg%3E")}
.salt-area.is-town::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f6f6b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-7 9 7'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/svg%3E")}
.salt-area .salt-area__name{font-weight:800;font-size:18px;line-height:1.6}
.salt-area .salt-area__feat{font-size:15px;color:var(--salt-sub);line-height:1.7;margin-top:6px}
.salt-area .salt-area__check{font-size:16px;font-weight:700;color:#10302d;line-height:1.8;border-top:1px dashed #cfdcda;padding-top:10px;margin-top:10px}

/* ---- 施工事例カード */
.salt-cases{gap:16px}
.salt-case{border:1px solid var(--salt-line);border-radius:12px;padding:18px !important;height:100%}
.salt-case .salt-case__when{font-size:14px;font-weight:700;color:var(--salt-main)}
.salt-case .salt-case__num{color:var(--salt-main);font-size:30px;font-weight:700;line-height:1.4;margin:4px 0}
.salt-case .salt-case__desc{font-size:15px;color:var(--salt-sub);line-height:1.7}
.salt-case .salt-case__link{font-size:16px;font-weight:700;margin-top:8px}
.salt-case .salt-case__link a::after,.salt-more a::after{content:" →"}
.salt-more{font-size:17px;font-weight:700}

/* ---- 申請の順番（ステップ） */
.salt-steps{list-style:none;counter-reset:salt-step;padding:0;margin:0}
.salt-steps li{counter-increment:salt-step;position:relative;padding:4px 0 24px 58px;font-size:16px;line-height:1.8;color:var(--salt-sub)}
.salt-steps li strong{font-size:18px;color:var(--salt-text)}
.salt-steps li::before{content:counter(salt-step);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;
  background:var(--salt-main);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.salt-steps li::after{content:"";position:absolute;left:17px;top:40px;bottom:2px;width:2px;background:#cfdcda}
.salt-steps li:last-child::after{display:none}
.salt-steps li.is-optional::before{background:#fff;border:2px dashed #9a6200;color:var(--salt-city-text)}

/* ---- FAQ（詳細ブロック） */
.salt-faq{border:1px solid var(--salt-line);border-radius:10px;overflow:hidden;margin-top:12px !important}
.salt-faq summary{list-style:none;cursor:pointer;display:flex;gap:14px;align-items:flex-start;padding:18px 48px 18px 20px;font-weight:700;font-size:18px;line-height:1.7;position:relative}
.salt-faq summary::-webkit-details-marker{display:none}
.salt-faq summary::before{content:"Q";flex-shrink:0;width:28px;height:28px;border-radius:6px;background:var(--salt-main);color:#fff;display:flex;align-items:center;justify-content:center}
.salt-faq summary::after{content:"＋";position:absolute;right:20px;top:16px;color:var(--salt-main);font-weight:700}
.salt-faq[open] summary{background:var(--salt-tint)}
.salt-faq[open] summary::after{content:"－"}
.salt-faq > p{position:relative;padding:16px 20px 18px 62px;font-size:17px;line-height:1.9}
.salt-faq > p::before{content:"A";position:absolute;left:20px;top:16px;width:28px;height:28px;border-radius:6px;background:#fdf1dc;color:var(--salt-city-text);font-weight:700;display:flex;align-items:center;justify-content:center}

/* ---- 相談欄 */
.salt-cta{background:var(--salt-main);color:#fff;border-radius:16px;padding:40px 44px !important;margin-top:64px !important}
.entry-body .salt-page .salt-cta h2.salt-h2{margin:0 0 14px;border:none;padding:0;background:none;color:#fff;font-size:28px}
.salt-cta p,.salt-cta strong{color:#fff}
.salt-cta a{color:#fff}
.salt-cta .wp-block-buttons{margin:20px 0 12px}
.salt-cta .salt-btn .wp-block-button__link{background:#fff;color:var(--salt-main-dark);font-weight:700;font-size:17px;padding:16px 28px;border-radius:8px}
.salt-cta .salt-cta__tel strong{font-size:30px;letter-spacing:.02em}
.salt-cta .salt-cta__links{font-size:16px;border-top:1px solid rgba(255,255,255,.35);padding-top:14px;margin-top:14px}

/* ---- 出典 */
.salt-sources{font-size:15px;line-height:1.8;color:#2e2e2e}
.entry-body .salt-page .salt-sources h2.salt-h2{font-family:inherit;font-size:17px;font-weight:700;border:none;background:none;padding:0;margin:48px 0 8px;color:var(--salt-text)}
.salt-sources .salt-source-list{margin:8px 0 12px;padding-left:1.2em}

/* ---- スマホ */
@media (max-width:781px){
  .entry-body .salt-page h2.salt-h2{font-size:22px;margin-top:56px;padding:12px 14px 12px 16px}
  .salt-stat .salt-stat__num{font-size:32px}
  .salt-answer .salt-answer__num{font-size:36px}
  .salt-summary .salt-summary__list li{padding-left:0}
  .salt-label{position:static;display:table;width:auto;padding:2px 8px;margin:0 0 4px}
  .salt-table table{min-width:560px}
  .salt-cta{padding:28px 20px !important}
  .salt-alert{padding:18px 18px 18px 56px !important}
  .salt-alert::before{left:18px}
}

/* ---- 強調（マーカー・太字） */
.salt-page strong{font-weight:800;color:#10302d}
.salt-page mark.salt-hl{background:linear-gradient(transparent 55%,#ffe27a 55%);color:inherit;font-weight:700;padding:0 2px}
.salt-table td strong{color:#10302d}

/* ---- 結論の段落（見出し直後） */
.salt-conclusion{background:#fff;border:2px solid var(--salt-main);border-radius:10px;padding:18px 22px 18px 22px;font-size:18px;line-height:1.85;position:relative}
.salt-conclusion::before{content:"結論";display:inline-block;background:var(--salt-main);color:#fff;font-size:13px;font-weight:700;padding:2px 10px;border-radius:4px;margin-right:10px;vertical-align:2px}

/* ---- 申請の順番：必須のステップ */
.salt-steps li.is-key{background:#fff4e5;border-radius:10px;padding:12px 16px 12px 58px;margin:0 0 22px}
.salt-steps li.is-key::before{background:#c2410c;left:8px;top:10px}
.salt-steps li.is-key::after{display:none}
.salt-steps li.is-key strong::after{content:"必須";display:inline-block;margin-left:8px;background:#c2410c;color:#fff;font-size:12px;padding:1px 8px;border-radius:4px;vertical-align:3px}

/* ---- 画像の仮枠（画像を入れたら、このグループごと画像ブロックに置き換える） */
.salt-photo{border:2px dashed #9fb8b5;border-radius:12px;background:#f4f7f7 repeating-linear-gradient(45deg,transparent 0 12px,rgba(47,111,107,.05) 12px 24px);
  min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px !important}
.salt-photo .salt-photo__tag{background:var(--salt-main);color:#fff;font-size:13px;font-weight:700;padding:2px 12px;border-radius:999px;margin-bottom:10px}
.salt-photo .salt-photo__what{font-size:17px;font-weight:700;color:#10302d}
.salt-photo .salt-photo__spec{font-size:13px;color:#3a3a3a;margin-top:6px}
.salt-photo.is-small{min-height:0;aspect-ratio:4/3;padding:12px !important;margin:0 0 14px !important}
.salt-photo.is-small .salt-photo__what{font-size:14px}
.salt-photo.is-staff{float:right;width:170px;min-height:0;aspect-ratio:1/1;margin:0 0 12px 20px !important;background-color:rgba(255,255,255,.12);border-color:rgba(255,255,255,.6)}
.salt-photo.is-staff .salt-photo__tag{background:#fff;color:var(--salt-main);font-size:11px;padding:2px 8px}
.salt-photo.is-staff .salt-photo__what,.salt-photo.is-staff .salt-photo__spec{color:#fff;font-size:12px}
.salt-case .wp-block-image img{border-radius:8px;aspect-ratio:4/3;object-fit:cover;width:100%}
@media (max-width:781px){
  .salt-conclusion{font-size:17px}
  .salt-photo.is-staff{float:none;width:140px;margin:0 0 12px !important}
}

/* =========================================================
   施工会社ページ（.salt-page.is-contractor）：紺の配色
   補助金ページ（青緑）と見分けられるよう、色だけを差し替える
   ========================================================= */
.salt-page.is-contractor{
  --salt-main:#23456b;
  --salt-main-dark:#162f4d;
  --salt-tint:#eef3f9;
  --salt-tint-2:#e2eaf4;
  --salt-line:#d3dde9;
}
.salt-page.is-contractor strong,
.entry-body .salt-page.is-contractor h2.salt-h2,
.entry-body .salt-page.is-contractor h3.salt-h3,
.salt-page.is-contractor .salt-photo .salt-photo__what,
.salt-page.is-contractor .salt-table td strong{color:#14263d}
.salt-page.is-contractor .salt-cta strong{color:#fff}
.salt-page.is-contractor .salt-stat.is-tokyo{border-color:#b7c7dc}
.salt-page.is-contractor .salt-table td{border-bottom-color:#c7d3e2}
.salt-page.is-contractor .salt-table tbody tr:nth-child(even) td{background:#f5f8fc}
.salt-page.is-contractor .salt-table.is-sum td:last-child{color:#14263d}
.salt-page.is-contractor .salt-table.is-sum tbody tr:nth-child(even) td:last-child{background:#d7e2f0}
.salt-page.is-contractor .salt-steps li::after{background:#c7d3e2}
.salt-page.is-contractor .salt-photo{border-color:#9fb1c8;background-image:repeating-linear-gradient(45deg,transparent 0 12px,rgba(35,69,107,.05) 12px 24px)}

/* 会社概要の表：左の列を見出し扱い */
.salt-table.is-company td:first-child{width:28%;font-weight:700;background:var(--salt-tint) !important;color:#14263d}

/* 工事の前に確かめることのカード */
.salt-points{gap:16px;margin-top:16px !important}
.salt-point{border:1px solid var(--salt-line);border-top:4px solid var(--salt-main);border-radius:10px;padding:18px 20px !important;height:100%;background:#fff}
.salt-point .salt-point__cond{font-weight:800;font-size:18px;line-height:1.6;color:#14263d;margin-bottom:8px}
.salt-point .salt-point__act{font-size:16px;line-height:1.85}

/* 事例カードの写真 */
.salt-case .wp-block-image{margin:0 0 14px}
.salt-case .wp-block-image img{border-radius:8px;aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}

.salt-updated{font-size:14px;color:#3a3a3a}
.entry-body .salt-page.is-contractor .salt-cta h2.salt-h2,
.salt-page.is-contractor .salt-cta .salt-photo .salt-photo__what{color:#fff}

/* ---- 区市町村一覧の表（is-list） ---- */
.salt-table.is-list table{font-size:15px;line-height:1.7}
.salt-table.is-list th{white-space:nowrap}
.salt-table.is-list td{padding:12px}
.salt-table.is-list td:first-child{white-space:nowrap;font-weight:700;color:#14263d}
.salt-table.is-list td:nth-child(2),.salt-table.is-list td:nth-child(3){min-width:150px}
.salt-table.is-list td:nth-child(4){min-width:90px}
.salt-table.is-list td:last-child{min-width:210px}
.salt-table.is-list td small{font-size:13px}
@media (max-width:781px){.salt-table.is-list table{min-width:760px}}

/* =========================================================
   トップページ（.salt-top）：最初の画面〜選ばれる理由
   サイトの色（青緑 #61c1be・#3c8b86）とフォントはそのまま使う
   ========================================================= */
.salt-top{--t-teal:#61c1be;--t-main:#3c8b86;--t-dark:#306f6b;--t-gray:#e3ebf0;--t-amber:#f0a500;--t-pad:max(20px,calc((100vw - var(--vk-width-container,1140px))/2 + var(--vk-width-container-padding,15px)))}
.entry-body > .salt-top.alignfull{margin-top:0 !important;margin-bottom:0 !important}
.entry-body > .salt-top.salt-split.alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important}
.entry-body .salt-top h2.salt-top-h2,.entry-body .salt-top h3.salt-top-reason__title,.entry-body .salt-hero h1.salt-hero__title{border:none;background:none;padding:0}
.entry-body .salt-top h2.salt-top-h2::before,.entry-body .salt-top h2.salt-top-h2::after,
.entry-body .salt-top h3.salt-top-reason__title::before,.entry-body .salt-top h3.salt-top-reason__title::after,
.entry-body .salt-hero h1.salt-hero__title::before,.entry-body .salt-hero h1.salt-hero__title::after{content:none;display:none}
.salt-top p{margin:0}

/* ---- 共通ボタン */
.salt-top .salt-top-btns{display:flex;flex-wrap:wrap;gap:12px;margin:0}
.salt-top .salt-top-btns.is-center{justify-content:center;margin-top:32px}
.salt-top .salt-top-btns .wp-block-button{margin:0}
.salt-top .salt-top-btns .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-width:250px;padding:15px 28px;border-radius:999px;font-size:17px;font-weight:700;line-height:1.4;text-decoration:none;box-sizing:border-box;border:2px solid transparent}
.salt-top .salt-top-btns .is-white .wp-block-button__link{background:#fff;color:var(--t-dark);border-color:#fff}
.salt-top .salt-top-btns .is-white .wp-block-button__link:hover{background:#eef7f6;border-color:#eef7f6}
.salt-top .salt-top-btns .is-line .wp-block-button__link{background:transparent;color:#fff;border-color:#fff}
.salt-top .salt-top-btns .is-line .wp-block-button__link:hover{background:rgba(255,255,255,.15)}
.salt-top .salt-top-btns .is-main .wp-block-button__link{background:var(--t-main);color:#fff;border-color:var(--t-main)}
.salt-top .salt-top-btns .is-main .wp-block-button__link:hover{background:var(--t-dark);border-color:var(--t-dark)}
.salt-top .salt-top-more{margin-top:14px;font-weight:700}
.salt-top .salt-top-more a::after{content:" →"}

/* ---- 最初の画面（カバー） */
.salt-hero{min-height:600px;padding:72px 0 !important}
.wp-block-cover.salt-hero .wp-block-cover__inner-container{width:100% !important;max-width:var(--vk-width-container,1140px) !important;margin:0 auto !important;padding:0 var(--vk-width-container-padding,15px);box-sizing:border-box}
.salt-hero .salt-hero__body{max-width:680px;color:#fff}
.salt-hero .salt-hero__eyebrow{display:inline-block;margin:0 0 16px;padding:4px 16px;border:1px solid rgba(255,255,255,.8);border-radius:999px;font-size:14px;font-weight:700;line-height:1.5;color:#fff}
.entry-body .salt-hero h1.salt-hero__title{margin:0 0 18px;color:#fff;font-size:34px;font-weight:700;line-height:1.5;letter-spacing:.02em;text-shadow:0 1px 4px rgba(0,0,0,.4);word-break:auto-phrase}
.salt-hero .salt-hero__lead{margin:0 0 18px;font-size:17px;line-height:1.9;color:#fff;word-break:auto-phrase}
.salt-hero .salt-hero__points{list-style:none;margin:0 0 28px;padding:0}
.salt-hero .salt-hero__points li{position:relative;margin:0 0 8px;padding:0 0 0 32px;font-size:16px;font-weight:700;line-height:1.7;color:#fff}
.salt-hero .salt-hero__points li::before,.salt-top .salt-top-check li::before{content:"";position:absolute;left:0;top:3px;width:22px;height:22px;border-radius:50%;
  background:#fff no-repeat center/14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23306f6b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E")}

/* ---- 左右に分けた帯（強み・補助金） */
.salt-top.salt-split.wp-block-columns{gap:0 !important;margin:0 !important;align-items:stretch !important;flex-wrap:nowrap}
.salt-top.salt-split > .wp-block-column{margin:0 !important}
.salt-top.salt-split.is-reverse{flex-direction:row-reverse}
.salt-split .salt-split__text{background:var(--t-teal);color:#fff;padding:64px 48px 64px var(--t-pad) !important;box-sizing:border-box}
.salt-split.is-reverse .salt-split__text{padding:64px var(--t-pad) 64px 48px !important}
.salt-split .salt-split__text a{color:#fff}
.salt-split .salt-split__media{position:relative;min-height:380px}
.salt-split .salt-split__media .wp-block-image{position:absolute !important;inset:0;margin:0 !important;height:100%}
.salt-split .salt-split__media img{width:100% !important;height:100% !important;max-width:none;object-fit:cover;display:block}
.entry-body .salt-top h2.salt-top-h2.is-pill{margin:0 0 20px;padding:12px 18px;background:#fff;border-radius:6px;color:var(--t-dark);font-size:19px;font-weight:700;line-height:1.6;text-align:center}
.salt-split .salt-top-lead{font-size:17px;line-height:1.95;margin-bottom:18px}
.salt-top .salt-top-check{list-style:none;margin:0;padding:0}
.salt-top .salt-top-check li{position:relative;margin:0 0 10px;padding:0 0 0 32px;font-size:16px;font-weight:700;line-height:1.7}
.salt-top .salt-top-links{list-style:none;margin:0 0 22px;padding:0}
.salt-top .salt-top-links li{margin:0 0 8px}
.salt-top .salt-top-links a{display:flex;align-items:center;gap:14px;background:#fff;color:var(--t-dark) !important;padding:12px 44px 12px 16px;border-radius:8px;text-decoration:none;position:relative;line-height:1.5}
.salt-top .salt-top-links a::after{content:"→";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-weight:700}
.salt-top .salt-top-links a:hover{background:#eef7f6}
.salt-top .salt-top-links strong{flex-shrink:0;min-width:5.5em;font-size:16px;color:var(--t-dark)}
.salt-top .salt-top-links span{font-size:15px;color:#1a1a1a}

/* ---- 灰色の帯（狭い屋根） */
.salt-top.salt-top-sec{padding:72px var(--vk-width-container-padding,15px) !important;box-sizing:border-box}
.salt-top.salt-top-sec.is-gray{background:var(--t-gray);padding-bottom:120px !important;position:relative}
.salt-top.salt-top-sec.is-gray::after{content:"";position:absolute;left:0;right:0;bottom:0;height:60px;background:#fff;clip-path:polygon(0 0,50% 100%,100% 0,100% 100%,0 100%)}
.salt-top.salt-top-sec.is-white{background:#fff}
.entry-body .salt-top h2.salt-top-h2.is-slash,.entry-body .salt-top h2.salt-top-h2.is-center{margin:0 auto 32px;font-size:26px;font-weight:700;line-height:1.6;color:#1a1a1a;text-align:center;word-break:auto-phrase}
.entry-body .salt-top h2.salt-top-h2.is-slash::before{content:"＼";display:inline;margin-right:.5em}
.entry-body .salt-top h2.salt-top-h2.is-slash::after{content:"／";display:inline;margin-left:.5em}
.salt-top .salt-top-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;max-width:var(--vk-width-container,1140px);margin:0 auto}
.salt-top .salt-top-card{grid-column:span 2;background:#fff;padding:26px 24px !important;text-align:center;box-shadow:10px 10px 0 rgba(47,111,107,.08);margin:0 !important}
.salt-top .salt-top-card:nth-child(4),.salt-top .salt-top-card:nth-child(5){grid-column:span 3}
.salt-top .salt-top-card__num{color:var(--t-amber);font-size:44px;font-weight:700;line-height:1;margin-bottom:10px}
.salt-top .salt-top-card__title{font-size:18px;font-weight:700;line-height:1.6;margin-bottom:8px}
.salt-top .salt-top-card__desc{font-size:15px;line-height:1.8;color:#3a3a3a}
.salt-top .salt-top-note{max-width:var(--vk-width-container,1140px);margin:28px auto 0 !important;background:var(--t-main);color:#fff;padding:18px 24px;border-radius:6px;text-align:center;font-size:17px;line-height:1.85}

/* ---- 選ばれる理由 */
.salt-top .salt-top-accent{color:var(--t-main);font-size:1.3em}
.salt-top .salt-top-intro{max-width:820px;margin:0 auto 36px !important;font-size:17px;line-height:1.95}
.salt-top .salt-top-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:var(--vk-width-container,1140px);margin:0 auto}
.salt-top .salt-top-reason{margin:0 !important;display:flex;flex-direction:column}
.salt-top .salt-top-reason .wp-block-image{margin:0 0 16px}
.salt-top .salt-top-reason img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px;display:block}
.entry-body .salt-top h3.salt-top-reason__title{margin:0 0 10px;font-size:19px;font-weight:700;line-height:1.6;color:var(--t-dark)}
.salt-top .salt-top-reason__text{font-size:15px;line-height:1.9;color:#262626}
.salt-top .salt-top-reason .salt-top-more{margin-top:auto;padding-top:12px}

/* ---- タブレット・スマホ */
@media (max-width:1023px){
  .salt-top .salt-top-cards{grid-template-columns:repeat(2,1fr)}
  .salt-top .salt-top-card,.salt-top .salt-top-card:nth-child(4),.salt-top .salt-top-card:nth-child(5){grid-column:span 1}
  .salt-top .salt-top-card:nth-child(5){grid-column:1 / -1}
  .salt-top .salt-top-reasons{grid-template-columns:1fr 1fr}
}
@media (max-width:781px){
  .salt-hero{min-height:0 !important;padding:40px 0 44px !important}
  .entry-body .salt-hero h1.salt-hero__title{font-size:22px;line-height:1.6}
  .salt-hero .salt-hero__eyebrow{font-size:13px;margin-bottom:12px}
  .salt-hero .salt-hero__lead{font-size:15px;line-height:1.85}
  .salt-hero .salt-hero__points li{font-size:15px}
  .salt-top .salt-top-btns{flex-direction:column;align-items:stretch}
  .salt-top .salt-top-btns .wp-block-button{width:100%}
  .salt-top .salt-top-btns .wp-block-button__link{width:100%;min-width:0}
  .salt-top.salt-split.wp-block-columns,.salt-top.salt-split.is-reverse{flex-direction:column !important;flex-wrap:nowrap}
  .salt-top.salt-split > .wp-block-column{flex-basis:auto !important;width:100%}
  .salt-split .salt-split__text,.salt-split.is-reverse .salt-split__text{padding:40px 20px !important}
  .salt-split .salt-split__media{min-height:220px;order:2}
  .entry-body .salt-top h2.salt-top-h2.is-pill{font-size:17px;padding:10px 14px}
  .salt-split .salt-top-lead{font-size:15px}
  .salt-top .salt-top-check li{font-size:15px}
  .salt-top .salt-top-links a{flex-direction:column;align-items:flex-start;gap:2px}
  .salt-top.salt-top-sec{padding:48px 20px !important}
  .salt-top.salt-top-sec.is-gray{padding-bottom:80px !important}
  .salt-top.salt-top-sec.is-gray::after{height:32px}
  .entry-body .salt-top h2.salt-top-h2.is-slash,.entry-body .salt-top h2.salt-top-h2.is-center{font-size:21px;margin-bottom:24px}
  .salt-top .salt-top-cards{grid-template-columns:1fr;gap:14px}
  .salt-top .salt-top-card,.salt-top .salt-top-card:nth-child(n){grid-column:auto}
  .salt-top .salt-top-card{padding:20px 18px !important;text-align:left;display:grid;grid-template-columns:44px 1fr;column-gap:12px}
  .salt-top .salt-top-card__num{grid-row:span 2;font-size:34px;margin:0}
  .salt-top .salt-top-card__title{font-size:16px;margin-bottom:4px}
  .salt-top .salt-top-card__desc{font-size:14px}
  .salt-top .salt-top-note{font-size:15px;text-align:left;padding:16px 18px}
  .salt-top .salt-top-intro{font-size:15px;margin-bottom:24px !important}
  .salt-top .salt-top-reasons{grid-template-columns:1fr;gap:32px}
  .entry-body .salt-top h3.salt-top-reason__title{font-size:17px}
}

/* トップ：ヒーローの文字をロゴ・下のブロックと左端で揃える（2026-09-29） */
.wp-block-cover.salt-hero .salt-hero__body{margin-left:0 !important;margin-right:auto !important}
@media (max-width:781px){
  .wp-block-cover.salt-hero .wp-block-cover__inner-container{padding-left:20px !important;padding-right:20px !important}
}

/* トップ：PCで「強み」と「補助金」の2ブロックを同じ高さにする（2026-09-29） */
@media (min-width:1024px){
  .entry-body .salt-top.salt-split{min-height:750px}
  .entry-body .salt-top.salt-split .salt-split__text{display:flex;flex-direction:column;justify-content:center}
}
@media (min-width:1200px){
  .entry-body .salt-top.salt-split{min-height:640px}
}

/* トップ：スマホでヒーローをコンパクトにし、ボタンまで1画面に収める（2026-09-29） */
@media (max-width:781px){
  .wp-block-cover.salt-hero{min-height:0 !important;padding-top:24px !important;padding-bottom:28px !important}
  .wp-block-cover.salt-hero .salt-hero__eyebrow{font-size:12px !important;margin-bottom:12px !important;padding:4px 12px !important}
  .wp-block-cover.salt-hero h1{font-size:min(4.6vw,20px) !important;line-height:1.5 !important;margin-bottom:12px !important}
  .wp-block-cover.salt-hero .salt-hero__lead{font-size:14px !important;line-height:1.7 !important;margin-bottom:14px !important}
  .wp-block-cover.salt-hero .salt-hero__points{margin-bottom:16px !important}
  .wp-block-cover.salt-hero .salt-hero__points li{font-size:14px !important;line-height:1.6 !important;margin-bottom:4px !important}
  .wp-block-cover.salt-hero .salt-top-btns{flex-direction:column !important;align-items:stretch !important;gap:8px !important}
  .wp-block-cover.salt-hero .salt-top-btns .wp-block-button{width:100% !important;flex:none !important}
  .wp-block-cover.salt-hero .salt-top-btns .wp-block-button__link{width:100% !important;font-size:15px !important;padding:11px 16px !important}
}

/* 施工実績：横に並べた写真の高さをそろえる（2026-09-30） */
.salt-photo-pair.wp-block-columns{align-items:flex-start !important}
.salt-photo-pair .wp-block-image{margin:0 0 8px}
.salt-photo-pair .wp-block-image img{width:100%;height:auto;aspect-ratio:1024/600;object-fit:cover;display:block;border-radius:8px}

/* ---- 問い合わせ枠のボタン（WordPress標準のボタン。2026-10-07〜） */
.salt-cta .wp-block-buttons.salt-cta-btns{display:grid !important;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 14px}
.salt-cta .salt-cta-btn{width:100%;margin:0}
.salt-cta .salt-cta-btn .wp-block-button__link{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:72px;box-sizing:border-box;padding:12px 16px;border-radius:10px;border:0;color:#fff !important;font-size:13px;font-weight:500;line-height:1.5;text-align:center;text-decoration:none;transition:filter .15s}
.salt-cta .salt-cta-btn .wp-block-button__link strong{display:block;font-size:19px;font-weight:800;letter-spacing:.03em;color:#fff}
.salt-cta .salt-cta-btn .wp-block-button__link br{display:none}
.salt-cta .salt-cta-btn.is-tel .wp-block-button__link{background:#ff6900}
.salt-cta .salt-cta-btn.is-web .wp-block-button__link{background:#cf2e2e}
.salt-cta .salt-cta-btn .wp-block-button__link:hover{filter:brightness(1.08)}
@media (max-width:781px){.salt-cta .wp-block-buttons.salt-cta-btns{grid-template-columns:1fr}}
/* ---- 空白（WordPress標準のスペーサー。small＝48px・xs＝12px。スマホは小さく） */
@media (max-width:991px){.wp-block-spacer.salt-space-s{height:32px !important}}
@media (max-width:575px){.wp-block-spacer.salt-space-s{height:20px !important}}

/* そのほかのCSS */
/*
.vk-mobile-nav-menu-btn {
 display: none;
}
*/
.site-footer-copyright {
	display:none:
}

.btn-primary {
	border-radius:0;
}


/* =========================================================
   株式会社ソルト お問い合わせフォーム（MW WP Form）
   貼り付け先：管理画面「ソルトの記事 → 記事のCSS」の「2. そのほかのCSS」
   入力・確認・完了の3画面と、お問い合わせページ上部をまとめて整えます。
   ========================================================= */
:root{
  --sf-main:#3c8b86;        /* サイトのメインカラー */
  --sf-main-d:#2c6a66;
  --sf-main-soft:#eef6f5;
  --sf-main-line:#cfe3e1;
  --sf-ink:#333;
  --sf-sub:#666;
  --sf-line:#dfe5e4;
  --sf-bg:#fafbfb;
  --sf-req:#d1462f;
  --sf-warn-bg:#fff8e6;
  --sf-warn-line:#f0d58c;
  --sf-radius:10px;
  --sf-ui:"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;
}

/* ---------- ページ上部（電話・WEBの案内） ---------- */
.sf-intro{max-width:860px;margin:0 auto 8px}
.sf-intro-lead{text-align:center;font-size:clamp(15px,1.7vw,17px);line-height:1.9;margin:0 0 24px}
.sf-intro-lead strong{color:var(--sf-main-d);background:linear-gradient(transparent 62%,#fff1b8 62%)}
.sf-contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sf-card{border:1px solid var(--sf-main-line);border-radius:var(--sf-radius);background:#fff;padding:22px 20px 18px;text-align:center;box-shadow:0 2px 0 var(--sf-main-soft)}
.sf-card p{margin:0}
.sf-card-label{display:inline-block;margin-bottom:8px!important;padding:2px 14px;border-radius:999px;background:var(--sf-main);color:#fff;font-size:13px;letter-spacing:.06em}
.sf-card-tel a{display:inline-block;color:var(--sf-main-d);font-size:clamp(26px,3.4vw,34px);font-weight:700;letter-spacing:.04em;text-decoration:none;font-family:var(--sf-ui);line-height:1.4}
.sf-card-tel a::before{content:"";display:inline-block;width:.8em;height:.8em;margin-right:.25em;vertical-align:-.06em;background:currentColor;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z"/></svg>') center/contain no-repeat;mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z"/></svg>') center/contain no-repeat}
.sf-card-big{color:var(--sf-main-d);font-size:clamp(22px,2.8vw,28px);font-weight:700;line-height:1.5}
.sf-card-note{margin-top:6px!important;color:var(--sf-sub);font-size:13px;line-height:1.7}
.sf-card-link{display:inline-block;margin-top:10px;padding:8px 22px;border-radius:999px;border:1px solid var(--sf-main);color:var(--sf-main-d)!important;font-size:14px;text-decoration:none}
.sf-card-link::after{content:" ↓"}
.sf-card-link:hover{background:var(--sf-main);color:#fff!important}
.sf-points{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:20px 0 0;padding:0;list-style:none;font-size:14px}
.sf-points li{position:relative;padding-left:1.4em}
.sf-points li::before{content:"";position:absolute;left:.15em;top:.45em;width:.45em;height:.8em;border:solid var(--sf-main);border-width:0 2px 2px 0;transform:rotate(45deg)}
h2.sf-form-heading{scroll-margin-top:90px}

/* ---------- フォーム全体 ---------- */
.mw_wp_form .sf{max-width:860px;margin:0 auto;color:var(--sf-ink)}
.mw_wp_form .sf *{box-sizing:border-box}
.mw_wp_form .sf p{margin:0}
.sf-hidden{display:none!important}

/* 入力・確認・完了のステップ */
.sf-steps{display:flex;margin:0 0 28px;padding:0;list-style:none;counter-reset:none}
.sf-step{position:relative;flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:6px;color:#9aa5a4;font-size:13px;letter-spacing:.06em;font-family:var(--sf-ui)}
.sf-step::before{content:"";position:absolute;top:17px;left:-50%;width:100%;height:2px;background:var(--sf-line);z-index:0}
.sf-step:first-child::before{display:none}
.sf-step-num{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff;border:2px solid var(--sf-line);font-weight:700;font-size:15px}
.mw_wp_form_input .sf-step--1,
.mw_wp_form_confirm .sf-step--2,
.mw_wp_form_complete .sf-step--3{color:var(--sf-main-d);font-weight:700}
.mw_wp_form_input .sf-step--1 .sf-step-num,
.mw_wp_form_confirm .sf-step--2 .sf-step-num,
.mw_wp_form_complete .sf-step--3 .sf-step-num{background:var(--sf-main);border-color:var(--sf-main);color:#fff;box-shadow:0 0 0 5px var(--sf-main-soft)}
.mw_wp_form_confirm .sf-step--1 .sf-step-num,
.mw_wp_form_complete .sf-step--1 .sf-step-num,
.mw_wp_form_complete .sf-step--2 .sf-step-num{border-color:var(--sf-main);color:var(--sf-main)}
.mw_wp_form_confirm .sf-step--2::before,
.mw_wp_form_complete .sf-step--2::before,
.mw_wp_form_complete .sf-step--3::before{background:var(--sf-main)}

/* 案内文 */
.sf-lead{margin:0 0 24px;padding:16px 20px;border-radius:var(--sf-radius);background:var(--sf-main-soft);font-size:15px;line-height:1.85}
.sf-lead .sf-badge{vertical-align:2px}
.mw_wp_form_confirm .sf-lead{background:var(--sf-warn-bg);border:1px solid var(--sf-warn-line)}
.mw_wp_form_input .sf-only-confirm,
.mw_wp_form_confirm .sf-only-input{display:none!important}

/* 項目のまとまり */
.sf-sec{margin:0 0 22px;border:1px solid var(--sf-line);border-radius:var(--sf-radius);background:#fff;overflow:hidden}
.sf-sec-title{display:flex;align-items:center;gap:10px;margin:0!important;padding:14px 20px!important;border:0!important;background:var(--sf-bg)!important;border-bottom:1px solid var(--sf-line)!important;color:var(--sf-ink)!important;font-size:18px!important;line-height:1.5!important;text-align:left!important}
.sf-sec-title::before,.sf-sec-title::after{display:none!important}
.sf-sec-num{display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--sf-main);color:#fff;font-size:14px;font-family:var(--sf-ui);font-weight:700}

.sf-row{display:grid;grid-template-columns:210px minmax(0,1fr);gap:8px 24px;padding:18px 20px;border-top:1px dashed var(--sf-line)}
.sf-sec-title + .sf-row{border-top:0}
.sf-label{display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;gap:6px 8px;padding-top:10px;font-weight:700;font-size:15px;line-height:1.5}
.sf-badge{display:inline-block;padding:1px 8px;border-radius:4px;border:1px solid #c9cfce;color:#7a8584;font-size:11px;font-weight:700;letter-spacing:.06em;line-height:1.6;font-family:var(--sf-ui);white-space:nowrap}
.sf-badge--req{background:var(--sf-req);border-color:var(--sf-req);color:#fff}
.sf-field{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;min-width:0}
.sf-field > *{max-width:100%}
.sf-field > input[type=text],.sf-field > input[type=email],.sf-field > input[type=tel],.sf-field > select,.sf-field > textarea,
.sf-field > .sf-note,.sf-field > .error{flex:1 1 100%}

/* 入力欄 */
.mw_wp_form .sf input[type=text],.mw_wp_form .sf input[type=email],.mw_wp_form .sf input[type=tel],.mw_wp_form .sf select,.mw_wp_form .sf textarea{
  display:block;width:100%;max-width:100%;margin:0;padding:11px 14px;min-height:48px;border:1px solid #c5cfce;border-radius:8px;background:#fff;color:var(--sf-ink);font-size:16px;line-height:1.6;font-family:var(--sf-ui);box-shadow:inset 0 1px 2px rgba(0,0,0,.04);transition:border-color .15s,box-shadow .15s}
.mw_wp_form .sf input[name=zip]{max-width:12em}
.mw_wp_form .sf select{max-width:22em;padding-right:40px;appearance:none;-webkit-appearance:none;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path d="M1 1l5 5 5-5" fill="none" stroke="%233c8b86" stroke-width="2"/></svg>') right 14px center/12px 8px no-repeat}
.mw_wp_form .sf textarea{min-height:160px;resize:vertical}
.mw_wp_form .sf input::placeholder,.mw_wp_form .sf textarea::placeholder{color:#a4adac}
.mw_wp_form .sf input:focus,.mw_wp_form .sf select:focus,.mw_wp_form .sf textarea:focus{outline:none;border-color:var(--sf-main);box-shadow:0 0 0 3px rgba(60,139,134,.2)}

/* 選択肢（ラジオ・チェック）をボタン型に */
.mw_wp_form .sf .horizontal-item + .horizontal-item{margin-left:0}
.mw_wp_form_input .sf .mwform-radio-field,
.mw_wp_form_input .sf .mwform-checkbox-field{display:inline-flex;margin:0}
.mw_wp_form_input .sf .mwform-radio-field label,
.mw_wp_form_input .sf .mwform-checkbox-field label{display:flex;align-items:center;gap:8px;margin:0;padding:10px 16px 10px 12px;min-height:46px;border:1px solid #c5cfce;border-radius:8px;background:#fff;cursor:pointer;font-size:15px;line-height:1.45;font-family:var(--sf-ui);transition:border-color .15s,background .15s,color .15s}
.mw_wp_form_input .sf .mwform-radio-field label:hover,
.mw_wp_form_input .sf .mwform-checkbox-field label:hover{border-color:var(--sf-main)}
.mw_wp_form_input .sf .mwform-radio-field input,
.mw_wp_form_input .sf .mwform-checkbox-field input{flex:0 0 auto;width:18px;height:18px;margin:0;accent-color:var(--sf-main)}
.mw_wp_form_input .sf label:has(input:checked){border-color:var(--sf-main);background:var(--sf-main-soft);color:var(--sf-main-d);box-shadow:inset 0 0 0 1px var(--sf-main)}
.mw_wp_form_input .sf label:has(input:focus-visible){outline:3px solid rgba(60,139,134,.35);outline-offset:2px}

/* 補足・エラー */
.sf-note{color:var(--sf-sub);font-size:13px;line-height:1.7}
.mw_wp_form .sf .error{display:block;margin:2px 0 0;padding:6px 10px 6px 30px;border-radius:6px;background:#fdecea;color:#b3261e;font-size:13px;font-weight:700;font-family:var(--sf-ui);position:relative}
.mw_wp_form .sf .error::before{content:"!";position:absolute;left:9px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#b3261e;color:#fff;font-size:11px}
.sf-row:has(.error){background:#fffafa}
.sf-row:has(.error) input,.sf-row:has(.error) select,.sf-row:has(.error) textarea{border-color:#e3a39b!important}

/* プライバシーポリシー */
.sf-privacy{margin:6px 0 0;padding:20px;border-radius:var(--sf-radius);background:var(--sf-bg);text-align:center;font-size:14px}
.sf-privacy p{margin:0 0 10px!important}
.sf-privacy .sf-badge{margin-left:6px;vertical-align:1px}
.sf-privacy-check{display:flex;flex-direction:column;align-items:center}
.mw_wp_form_confirm .sf-privacy{padding:12px;background:none;color:var(--sf-sub)}

/* ボタン */
.sf-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin:28px 0 0}
.mw_wp_form .sf-btn,a.sf-btn{display:inline-flex;align-items:center;justify-content:center;min-width:280px;min-height:58px;margin:0;padding:14px 34px;border-radius:999px;border:2px solid var(--sf-main);font-size:17px;font-weight:700;letter-spacing:.08em;line-height:1.4;font-family:var(--sf-ui);text-decoration:none;cursor:pointer;-webkit-appearance:none;appearance:none;transition:background .15s,transform .15s,box-shadow .15s}
.mw_wp_form .sf-btn--main,a.sf-btn--main{background:var(--sf-main);color:#fff!important;box-shadow:0 4px 0 var(--sf-main-d)}
.mw_wp_form .sf-btn--main:hover,a.sf-btn--main:hover{background:var(--sf-main-d);transform:translateY(1px);box-shadow:0 3px 0 #22524f}
.mw_wp_form .sf-btn--back,a.sf-btn--sub{background:#fff;color:var(--sf-main-d)!important;min-width:200px;font-size:15px}
.mw_wp_form .sf-btn--back:hover,a.sf-btn--sub:hover{background:var(--sf-main-soft)}
.mw_wp_form_confirm .sf-actions{flex-direction:row-reverse}
.mw_wp_form_confirm .sf-btn--main{background:#e2702b;border-color:#e2702b;box-shadow:0 4px 0 #b9561c}
.mw_wp_form_confirm .sf-btn--main:hover{background:#c95f20;box-shadow:0 3px 0 #9c4815}

/* ---------- 確認画面 ---------- */
.mw_wp_form_confirm .sf-badge,
.mw_wp_form_confirm .sf-note{display:none}
.mw_wp_form_confirm .sf-row{padding:14px 20px}
.mw_wp_form_confirm .sf-label{padding-top:0;color:var(--sf-sub);font-size:14px}
.mw_wp_form_confirm .sf-field{display:block;font-size:16px;font-family:var(--sf-ui);line-height:1.7;overflow-wrap:anywhere}

/* ---------- 送信完了画面 ---------- */
.sf--done .sf-done{padding:34px 24px 30px;border-radius:var(--sf-radius);background:var(--sf-main-soft);text-align:center}
.sf-done-icon{position:relative;width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:var(--sf-main);box-shadow:0 0 0 8px rgba(60,139,134,.15)}
.sf-done-icon::after{content:"";position:absolute;left:24px;top:14px;width:14px;height:28px;border:solid #fff;border-width:0 4px 4px 0;transform:rotate(45deg)}
.mw_wp_form .sf-done-title{margin:0 0 12px!important;padding:0!important;border:0!important;background:none!important;color:var(--sf-main-d)!important;font-size:clamp(20px,2.6vw,26px)!important;text-align:center}
.sf-done-title::before,.sf-done-title::after{display:none!important}
.sf-done-text{font-size:15px;line-height:1.9}
.sf-done-text + .sf-done-text{margin-top:8px!important}
.sf-done-text strong{font-family:var(--sf-ui);letter-spacing:.04em}
.sf-next{margin:28px 0 0}
.mw_wp_form .sf-next-title{margin:0 0 14px!important;padding:0 0 0 12px!important;border:0!important;border-left:4px solid var(--sf-main)!important;background:none!important;font-size:18px!important;text-align:left!important}
.sf-next-title::before,.sf-next-title::after{display:none!important}
.sf-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;counter-reset:sf}
.sf-flow li{counter-increment:sf;position:relative;padding:40px 16px 16px;border:1px solid var(--sf-line);border-radius:var(--sf-radius);background:#fff;font-size:14px;line-height:1.75}
.sf-flow li::before{content:"STEP " counter(sf);position:absolute;left:16px;top:12px;color:var(--sf-main);font-size:12px;font-weight:700;letter-spacing:.12em;font-family:var(--sf-ui)}
.sf-flow strong{display:block;margin-bottom:4px;font-size:15px}
.sf-flow span{color:var(--sf-sub)}
.sf-mailnote{margin:20px 0 0;padding:14px 18px;border:1px solid var(--sf-warn-line);border-radius:var(--sf-radius);background:var(--sf-warn-bg);font-size:14px;line-height:1.8}
.sf-mailnote a{font-weight:700;color:var(--sf-main-d)}
.sf-done-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:28px 0 0}

/* ---------- スマホ ---------- */
@media (max-width:767.98px){
  .sf-contact-cards{grid-template-columns:1fr}
  .sf-steps{margin-bottom:20px}
  .sf-step{font-size:12px}
  .sf-lead{padding:14px 16px;font-size:14px}
  .sf-sec-title{padding:12px 16px!important;font-size:16px!important}
  .sf-row{grid-template-columns:1fr;gap:8px;padding:16px}
  .sf-label{padding-top:0}
  .mw_wp_form_input .sf .mwform-radio-field,
  .mw_wp_form_input .sf .mwform-checkbox-field{flex:1 1 100%}
  .mw_wp_form_input .sf .mwform-radio-field label,
  .mw_wp_form_input .sf .mwform-checkbox-field label{width:100%}
  .mw_wp_form .sf select{max-width:100%}
  .mw_wp_form_confirm .sf-row{gap:2px;padding:12px 16px}
  .sf-actions,.mw_wp_form_confirm .sf-actions{flex-direction:column-reverse;align-items:stretch}
  .mw_wp_form_input .sf-actions{flex-direction:column}
  .mw_wp_form .sf-btn,a.sf-btn{min-width:0;width:100%}
  .sf-flow{grid-template-columns:1fr}
  .sf-done-links{flex-direction:column}
}

/* 送信前チェックのまとめ表示 */
.sf-summary{margin:20px 0 0!important;padding:12px 16px;border-radius:8px;background:#fdecea;border:1px solid #f1b8b1;color:#b3261e;font-weight:700;font-size:14px;line-height:1.7;text-align:center;font-family:var(--sf-ui)}
.sf-summary[hidden]{display:none}
