/* 255（2026-10-21）MIEKATA デザインシステム（吉田さん「サービスサイトのデザイン調整のお願い」）
   サイトと診断・マイページ・管理画面の見た目をそろえるための決まり。色と書体はここの変数を正とする。全ページの最後に読み込む。
   ・色：紺 #102650／補足 #4b5375／青 #2448d8／朱色 #bf5139（申込みのボタンだけ）／LINE #06c755／区画の地 #f4f7fc／枠 #dfe6f2／入力欄の枠 #7d8aa6
   ・文字：見出し Zen Maru Gothic 700、本文 Noto Sans JP、数字 Barlow 700、ロゴ（仮）Barlow Condensed 500
   ・余白は8の倍数、角は 8（入力欄・表・チップ）／12（ボタン）／20（カード・質問の箱）／999（選択肢・バッジ）
   ・グラデーション・影・ピンク・虹色は使わない。面の色の差と枠線で区切る */
:root{
  --ds-navy:#102650;--ds-sub:#4b5375;--ds-blue:#2448d8;--ds-cta:#bf5139;--ds-cta-dk:#a8452f;--ds-line:#06c755;--ds-line-dk:#05b04b;
  --ds-pale:#f4f7fc;--ds-border:#dfe6f2;--ds-input:#7d8aa6;--ds-white:#fff;
  --ds-font-head:'Zen Maru Gothic','Noto Sans JP',sans-serif;--ds-font-body:'Noto Sans JP',sans-serif;--ds-font-num:'Barlow','Noto Sans JP',sans-serif;--ds-font-logo:'Barlow Condensed','Noto Sans JP',sans-serif;
  --ds-r-sm:8px;--ds-r-btn:12px;--ds-r-card:20px;--ds-r-pill:999px;
  /* これまでの変数もデザインシステムの値にそろえる */
  --m243-cta:var(--ds-cta);--m243-cta-dk:var(--ds-cta-dk);--m243-navy:var(--ds-navy);--m243-blue:var(--ds-blue);--m243-pink:var(--ds-navy);
  --m243-ink:var(--ds-navy);--m243-mute:var(--ds-sub);--m243-pale:var(--ds-pale);--m243-line:var(--ds-border);--m243-lineg:var(--ds-line);--m243-lineg-dk:var(--ds-line-dk)
}

/* ── 書体 ── */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255){font-family:var(--ds-font-body)!important;color:var(--ds-navy)}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(p,li,dd,dt,td,th,span,a,small,em,label,input,select,textarea,button,summary,figcaption){font-family:var(--ds-font-body)}
/* 見出し：大見出し 40/28・区画 30/24・小見出し 21/18。字間は書体の標準 */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(h1,h2,h3,h4):not(.ex226-title){font-family:var(--ds-font-head)!important;font-weight:700!important;letter-spacing:normal!important;color:var(--ds-navy)}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(h1.h1like,h2.m243-catch){font-size:40px!important;line-height:1.4!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main h2:not(.m243-catch){font-size:30px!important;line-height:1.45!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(h3,h4):not(.ex226-title){font-size:21px!important;line-height:1.5!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(.m243-final,.m243-lish) :is(h2,h3,h4){color:#fff!important}
/* 見出しの中で強調する一語は青。下線・マーカー・グラデーションは付けない */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.ac155,.ac155 *,.hl155,.m243-catch em,.m243-catch b,.m243-catch span,.m243-bridge b){color:var(--ds-blue)!important;background:none!important;-webkit-text-fill-color:currentColor!important;text-decoration:none!important;border:0!important;padding:0!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-catch :is(br+*,em){color:var(--ds-blue)!important}
/* 本文 16px・行の高さ 1.8、リード文 17px・500、注記 13px */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main p{line-height:1.8}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.lead,.m243-lead,.m243-sublead,.section-head p,.m243-final>.wrap>p:not(.m243-campline)){font-size:17px!important;font-weight:500!important;line-height:1.8!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-note,.m243-src,.m243-campline,.fine,.cmp156-note,.m255-reassure,.m255-statnote,.m243-hero-cap,.m243-data small){font-size:13px!important;font-weight:400!important;color:var(--ds-sub)}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(.m243-final,.m243-lish) :is(p,.m243-campline,.m255-reassure,figcaption){color:#dfe6f2!important}
/* 数字は Barlow 700（単位は本文の書体で小さく） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-stats b,.m243-data b,.price-panel .value,.cf154-sum-item b,.mon224-row b,.mon224-row s,.m243-camp-row b,.mo165-out b,.cf154-val,.cf154-flat b,.bk155-sum b,.m243-facts b){font-family:var(--ds-font-num)!important;font-weight:700!important;letter-spacing:0!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-stats b,.m243-data b,.price-panel .value,.cf154-sum-item b) small{font-family:var(--ds-font-body)!important;font-weight:700}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-stats b{color:var(--ds-navy)!important}
/* ロゴ（仮）：DIN Next Condensed の SVG が届くまで Barlow Condensed 500 の大文字・字間 0.12em */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .brand .miekata-logo{background:none!important;width:auto!important;height:auto!important;display:block!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .brand .miekata-logo::before{content:'MIEKATA';display:block;font-family:var(--ds-font-logo);font-weight:500;font-size:38px;line-height:1;letter-spacing:.12em;color:var(--ds-navy)}
@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .brand .miekata-logo::before{font-size:30px}}

/* ── 色・グラデーション・影 ── */
/* 虹色の線・見出しの下の飾り・見出し横の飾りは使わない */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main section::before,
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main h2::after,
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .section-head::before{background-image:none!important;background:none!important;content:none!important;display:none!important}
/* 区画の地は白と #f4f7fc の交互。グラデーションの地は単色に */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main>:is(section,aside){background-image:none!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main>section:is(.pale,.m243-why,.m243-stock,.page-hero){background-color:var(--ds-pale)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main>section:is(.section126,.m243-worry,.m243-hero):not(.pale){background-color:#fff!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main>:is(section.m243-lish,.m243-final){background:var(--ds-navy)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-hero::before{display:none!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.bk155-stage,.mon224-card){background:var(--ds-pale)!important;border:1px solid var(--ds-border)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .cf154-bar{background:var(--ds-blue)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .cf154-col.is-first .cf154-bar{background:var(--ds-navy)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .cf154-lg-bar::before{background:var(--ds-blue)!important}
/* 影は使わない */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(main,header,.site-header,.m243-sbar) *{box-shadow:none!important;text-shadow:none!important}
/* キャンペーンの帯・バッジは紺。紺の地の上のバッジは白地に紺の文字 */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .m243-strip{background:var(--ds-navy)!important;color:#fff!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-campline b,.m243-camp-tag){background:var(--ds-navy)!important;color:#fff!important;border-radius:var(--ds-r-pill)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(.m243-final,.m243-lish) .m243-campline b{background:#fff!important;color:var(--ds-navy)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-camp{border:1px solid var(--ds-border)!important;background:#fff!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-camp .m243-camp-n b,.m243-camp h3 em,.m243-stats em){color:var(--ds-blue)!important}

/* ── 余白：区画の上下 96/64、見出しと中身 40/24、カードの間 24、カードの内側 24/16、中身の幅は最大 1080px ── */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main>:is(section.section,section[class*="m243-"]:not(.m243-hero),aside.m243-final,section.m243-final){padding-top:96px!important;padding-bottom:96px!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .wrap{max-width:1080px!important;margin-left:auto!important;margin-right:auto!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.section-head,.m243-sublead){margin-bottom:40px!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-data,.m243-entr-grid,.m243-vs,.ex163-grid,.price-structure,.m243-worry-list,.dg243-form){gap:24px!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-data li,.m243-entr-item,.m243-vs-col,.price-panel,.dg243-q,.m243-camp,.mon224-card){padding:24px!important}
/* 角 */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-data li,.m243-entr-item,.m243-vs-col,.price-panel,.ex163-card,.dg243-q,.m243-camp,.mon224-card,.mo165,.cf154-chart,.m243-worry-list li,.faq139-list details,.m247-plus,.m253-do,.m243-stats li,.wk175-step,.bk155-stage,.m243-lish-photo img,.m243-hero-photo,.m243-mock-pc){border-radius:var(--ds-r-card)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(input:not([type=range]):not([type=radio]):not([type=checkbox]),select,textarea,.price-table,.cmp156){border-radius:var(--ds-r-sm)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.dg243-opts span,.ex226-chip,.dg243-tag,.tag){border-radius:var(--ds-r-pill)!important}
/* 入力欄の枠は地と見分けられる濃さに */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(input:not([type=range]):not([type=radio]):not([type=checkbox]),select,textarea){border:1px solid var(--ds-input)!important}

/* ── ボタン：無料診断＝朱色の地、LINE＝緑の地＋アイコン、相談＝白地に朱色の枠。主ボタン 56px・ほか 48px・角 12px ── */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(.m243-btn,.nav-consult,.nav-line243,.cf176-next,.cf176-send,.m243-sbar a){border-radius:var(--ds-r-btn)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-btn{min-height:56px!important;font-size:18px!important;font-weight:700!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(.m243-btn--main,.nav-consult,.cf176-next,.cf176-send,.m243-sbar-main){background:var(--ds-cta)!important;border-color:var(--ds-cta)!important;color:#fff!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(.m243-btn--main,.nav-consult,.cf176-next,.cf176-send,.m243-sbar-main):hover{background:var(--ds-cta-dk)!important;border-color:var(--ds-cta-dk)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(.m243-btn--line,.nav-line243,.m243-sbar-line){font-size:18px!important;font-weight:700!important}
/* 相談：白地に朱色の枠と文字（48px） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-cta3 .m243-link{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px!important;border:2px solid var(--ds-cta)!important;border-radius:var(--ds-r-btn)!important;background:#fff!important;color:var(--ds-cta)!important;font-weight:700;font-size:16px;text-decoration:none!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-cta3 .m243-link i{text-decoration:none!important;border:0!important}
/* そのほかのボタン（ページへの案内など）は枠線のボタン。朱色・緑は使わない */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.more155-link,a.button,.action128:not(.primary128)){min-height:48px!important;background:#fff!important;background-image:none!important;border:2px solid var(--ds-blue)!important;border-radius:var(--ds-r-btn)!important;color:var(--ds-blue)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.more155-link,a.button,.action128:not(.primary128)) *{color:var(--ds-blue)!important}
/* ボタンの下の安心の一言 */
html body.design .m255-reassure{margin:12px 0 0!important;text-align:center}
html body.design .m243-hero .m255-reassure{margin-top:4px!important}
html body.design .m255-statnote{margin:8px 0 0!important}

/* ── スマホ（375px）：区画 64、見出しと中身 24、カードの内側 16、左右 16、見出し 28/24/18 ── */
@media (max-width:767px){
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(h1.h1like,h2.m243-catch){font-size:28px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main h2:not(.m243-catch){font-size:24px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(h3,h4):not(.ex226-title){font-size:18px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main>:is(section.section,section[class*="m243-"]:not(.m243-hero),aside.m243-final,section.m243-final){padding-top:64px!important;padding-bottom:64px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.section-head,.m243-sublead){margin-bottom:24px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-data li,.m243-entr-item,.m243-vs-col,.price-panel,.dg243-q,.m243-camp,.mon224-card){padding:16px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .wrap{padding-left:16px!important;padding-right:16px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-btn,.m243-cta3 .m243-link,.more155-link,a.button){min-height:48px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-btn{min-height:56px!important}
}

/* 255b：スマホの細かい調整 */
@media (max-width:767px){
  /* ヒーローの写真の説明文：写真に重ねず、下に並べる */
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-hero-cap{position:static!important;margin-top:8px!important;transform:none!important}
  /* 数字のカード：内側の左右を詰め、「キャンペーン中」などを1行に */
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-stats li{padding:16px 6px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-stats :is(span,em){white-space:nowrap;font-size:12px!important;letter-spacing:-.02em}
  /* 悩みのリスト：右側の余白を詰めて、細長く折り返さないように */
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main ul.m243-worry-list>li{padding:16px 20px 16px 52px!important}
}
/* 255c：初期制作のメインビジュアル（PC・モニター）：枠の中の白い部分を消し、スクロールする画像を枠の幅いっぱいに */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .fv165-browser{background:transparent!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .fv165-view{width:100%!important;aspect-ratio:1/1!important;height:auto!important;max-height:none!important;background:var(--ds-pale)!important}
/* 256：枠を正方形（高さ＝100cqw）にしたので、画像7枚（393.75cqw）の最後が枠の下端にぴったり来るように動きの量を合わせる（白い余白が出ないように） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .fv165-page{animation:fv256build 6.7s .96s both,fv256loop 30s 9s ease-in-out infinite alternate!important}
@keyframes fv256build{0%,14%{transform:translateY(0)}28.5%{transform:translateY(-39.5cqw)}43%{transform:translateY(-90.4cqw)}57%{transform:translateY(-141.2cqw)}71.5%{transform:translateY(-192cqw)}86%{transform:translateY(-242.9cqw)}100%{transform:translateY(-293.75cqw)}}
@keyframes fv256loop{from{transform:translateY(-293.75cqw)}to{transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .fv165-page{animation:none!important}}
/* 255d：診断の質問は見出しの書体、選択肢は言葉の途中で割らない */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .dg243 legend{font-family:var(--ds-font-head)!important;font-weight:700!important;font-size:18px!important;color:var(--ds-navy)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .dg243-opts span{word-break:auto-phrase}

/* ══ 256（指示書3点の再照合）══ */
/* 書体：Inter・Arial など混ざっている指定を外し、すべてデザインシステムの書体に（見出し・数字・ロゴは上の指定が優先） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) :is(main,header,.m243-sbar,.m243-strip) :not(svg):not(svg *){font-family:var(--ds-font-body)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(h1,h2,h3,h4):not(.ex226-title),html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .dg243 legend{font-family:var(--ds-font-head)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-stats b,.m243-data b,.price-panel .value,.cf154-sum-item b,.mon224-row b,.mon224-row s,.m243-camp-row b,.mo165-out b,.cf154-val,.cf154-flat b,.bk155-sum b,.m243-facts b){font-family:var(--ds-font-num)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-stats b,.m243-data b,.price-panel .value,.cf154-sum-item b) small{font-family:var(--ds-font-body)!important}
/* 本文は 16px（注記・出典・ラベルなどの小さな文字は 13px のまま） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main p:not(.m243-note):not(.m243-src):not(.m243-campline):not(.m255-reassure):not(.m255-statnote):not(.fine):not(.cmp156-note):not(.m243-hero-cap):not([class*=meta]):not([class*=tax]):not(.m243-camp-tag):not(.lead):not(.m243-sublead):not(.m243-lead):not(.ex226-excerpt){font-size:16px!important}
/* 濃い帯の CTA：見出しと説明は 16px、説明とボタンの間は 40px（スマホ 24px） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-final h2{margin:0 0 16px!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-final .m243-cta3{margin-top:40px!important}
@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-final .m243-cta3{margin-top:24px!important}}
/* 見出しのすぐ下の要素に余分な上の余白を付けない（見出しと中身の間は 40/24 にそろえる） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .section-head+*{margin-top:0!important}
/* 256b：古い CSS の変数（あとから読み込まれる :root や body での定義）より強く、デザインシステムの値にする */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255),html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) *{--m243-cta:#bf5139;--m243-cta-dk:#a8452f;--m243-navy:#102650;--m243-blue:#2448d8;--m243-pink:#102650;--m243-ink:#102650;--m243-mute:#4b5375;--m243-pale:#f4f7fc;--m243-line:#dfe6f2;--muted:#4b5375;--line:#dfe6f2;--ink:#102650;--navy:#102650}
/* 256c：見出しのすぐ下に中身が続くとき（リード文が無いとき）も、間を 40px（スマホ 24px）に */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main section[class*="m243-"]>.wrap>h2:not(:has(+.m243-sublead)){margin-bottom:40px!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main section[class*="m243-"]>.wrap>h2:not(:has(+.m243-sublead))+*{margin-top:0!important}
@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main section[class*="m243-"]>.wrap>h2:not(:has(+.m243-sublead)){margin-bottom:24px!important}}
/* 256d：スマホ：ヒーローの写真の説明文は写真の下に、数字カード（出典つき）は1列で読みやすく */
@media (max-width:767px){
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-hero-visual{display:flex!important;flex-direction:column!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-hero-visual .m243-hero-cap{order:9;position:static!important;margin-top:auto!important;padding-top:8px}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-data{grid-template-columns:1fr 1fr!important;gap:16px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-data li{padding:16px 12px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-data b{font-size:28px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-data span{font-size:14px!important;line-height:1.7}
}
@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-data :is(span,small){word-break:normal!important;text-wrap:wrap!important}}
@media (max-width:767px){
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-hero-visual{margin-bottom:64px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-hero-visual .m243-hero-cap{position:absolute!important;top:100%!important;left:0;right:0;margin:0!important;padding-top:10px!important}
}
/* キャンペーンの一言：バッジと日付をそれぞれ1かたまりで折り返す */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-campline{display:flex!important;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 8px;white-space:nowrap}/* 256e：押せないのにボタンに見えるラベル（「だから、こうつくりました」）は塗りをやめて青い文字に。塗りのボタンは無料診断と LINE だけ */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .wk175-turn span{background:none!important;color:var(--ds-blue)!important;border:0!important;padding:0!important;font-weight:700}
/* 料金ページの「キャンペーンについて相談する」は相談のボタン（白地に朱色の枠） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-calc .action128{background:#fff!important;border:2px solid var(--ds-cta)!important;color:var(--ds-cta)!important;min-height:48px!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-calc .action128 *{color:var(--ds-cta)!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-calc .action128 .cta-icon128{background:var(--ds-cta)!important;color:#fff!important}
/* ヘッダー：無料診断（主）を LINE と同じ高さにして、主のボタンとして目立たせる */
@media (min-width:768px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav-consult{min-height:54px!important;padding-inline:20px!important;font-size:16px!important}}
/* 256f：スマホの料金ページのお支払い例がはみ出さないように */
@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-card,html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-calc{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-calc{padding:16px!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-row{flex-wrap:wrap!important;gap:4px 8px!important;min-width:0!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .mon224-row b{font-size:32px!important}}

/* 256g：比較表は表の中だけ横にスクロール（320px の画面でページ全体が横にずれないように） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .cmp156{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}

/* 256h：フッターの一文が 320px の画面ではみ出さないように折り返す */
html body.design .footer-copy237{white-space:normal!important;overflow-wrap:anywhere;word-break:auto-phrase}

/* 258：FV の右の画像（下の説明文まで含めて）を、左の文字のかたまりと同じ中央の高さに（PC・モニター） */
@media (min-width:768px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m243-hero-visual{margin-top:-34px!important}}

/* 261：最後の CTA は「STEP 1 無料診断 → STEP 2 LINE で見積もり」の手順 */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-steps{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:stretch;gap:0;max-width:880px;margin:40px auto 24px!important;padding:0!important;list-style:none!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-steps>li:not(.m261-arrow){display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px!important;border:1px solid rgb(255 255 255 / .25);border-radius:20px;background:rgb(255 255 255 / .06);text-align:center!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-no{display:inline-block;padding:2px 12px;border-radius:999px;background:#fff;color:var(--ds-navy)!important;font-family:var(--ds-font-num)!important;font-weight:700;font-size:13px;letter-spacing:.06em}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-steps b{font-family:var(--ds-font-head)!important;font-size:21px;color:#fff!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-steps small{flex:1;font-size:14px!important;line-height:1.8;color:#dfe6f2!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-steps .m243-btn{width:100%;margin-top:8px}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-arrow{display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff!important}
@media (max-width:767px){
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-steps{grid-template-columns:1fr;margin-top:24px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-steps>li:not(.m261-arrow){padding:16px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .m261-arrow{transform:rotate(90deg);height:32px}
}
/* 262：ヘッダーの LINE ボタンの文字を「LINEで相談」に。文字が長くなったので、高さ 54px のまま横幅を文字に合わせる（アイコン左・文字右） */
@media (min-width:768px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav-line243{width:auto!important;aspect-ratio:auto!important;height:54px!important;padding:0 18px!important;font-size:16px!important;white-space:nowrap}}
@media (min-width:768px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav-line243{padding:0 14px!important;font-size:15px!important;gap:6px!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav-line243::before{width:24px!important;height:23px!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav-consult{white-space:nowrap!important;min-height:54px!important;height:54px!important}}
/* 262b：1025〜1320px ではメニューの文字と間隔を少し詰めて、ボタンがはみ出さないように */
@media (min-width:1025px) and (max-width:1320px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav{gap:14px!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav>a:not(.nav-line243):not(.nav-consult){font-size:14px!important;padding-inline:0!important;margin:0!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav-line243{padding:0 12px!important;font-size:14px!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav-consult{padding-inline:14px!important;font-size:15px!important}}
/* 263：ヘッダーのメニューは必ず1行に（モニターで2行になっていた）。1321px 以上は文字 15px・間隔 20px */
@media (min-width:1025px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav>a{white-space:nowrap!important;flex-shrink:0}}
@media (min-width:1321px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav{gap:20px!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .site-header .nav>a:not(.nav-line243):not(.nav-consult){font-size:15px!important;padding-inline:0!important;margin:0!important}}
/* 264：スマホではボタンの文字を折り返さず1行に（文字が長いボタンは画面の幅に合わせて少し小さく） */
@media (max-width:767px){
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-btn,.m243-cta3 .m243-link,.more155-link,a.button,.action128,.wk175-site,.cf176-next,.cf176-send,.cf176-back),html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) .m243-sbar a{white-space:nowrap!important;padding-left:12px!important;padding-right:12px!important;gap:6px!important;max-width:100%;box-sizing:border-box}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-btn,.action128){font-size:clamp(13px,4.3vw,18px)!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-btn--line,.m243-simcta .m243-btn){font-size:clamp(12px,3.9vw,17px)!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-btn--line)::before{width:24px!important;height:23px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-cta3 .m243-link,.more155-link,a.button,.wk175-site){font-size:clamp(13px,4vw,16px)!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main :is(.m243-btn,.action128,.more155-link,a.button) *{white-space:nowrap!important}
}/* 264b：スマホのフッター：「LISH株式会社」を外し、2行目は「MIEKATA」だけ */
@media (max-width:767px){html body.design .m264-co{display:none!important}html body.design .footer-copy237{display:block!important}}
/* 264c：スマホの表（項目・説明・費用）：1行目に「項目」と「費用」を横に並べ、2行目に説明を幅いっぱいで（細い列で1文字ずつ折れていた） */
@media (max-width:767px){
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head){display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:'name cost' 'desc desc'!important;align-items:baseline!important;gap:6px 12px!important;padding:16px 12px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head)>:first-child{grid-area:name;text-align:left!important;word-break:auto-phrase;min-width:0}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head)>:last-child{grid-area:cost;text-align:right!important;white-space:nowrap;font-size:15px}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head)>p:not(:last-child){grid-area:desc;text-align:left!important;margin:0!important;font-size:14px!important;line-height:1.7;color:var(--ds-sub)}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head)>:last-child small{display:block;white-space:normal;font-size:11px}
}@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head)>:first-child{justify-self:start!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head)>:last-child{justify-self:end!important;white-space:normal!important;word-break:auto-phrase;max-width:11em}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .price-table .price-line:not(.head)>p:not(:last-child){justify-self:stretch!important}}
/* 265：キャンペーンの3つの条件：チェックマークと文字が重ならないよう左右に余白（中央揃えのまま） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main ul.mon224-terms>li{padding:14px 44px!important;position:relative}
@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main ul.mon224-terms>li{padding:14px 40px!important}}
/* 265b：記事カードの下は「記事のイメージを見る →」だけ（「AI記事」の表記は外した）。真ん中に */
html body.design main .ex226-meta{justify-content:center!important;text-align:center!important}
/* 266：お問い合わせの「プライバシーポリシーに同意する」は「必須」を外し、真ん中に（PC・スマホ共通。入力しないと送れないのは変わらない） */
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .cf176-agree{text-align:center!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .cf176-agree .cf176-check{display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important;width:100%!important;text-align:center!important}
html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main .cf176-agree .cf176-err{text-align:center!important}
/* 266b：スマホでも、質問のアコーディオンは質問の文字を左端・＋を右端に（全ページ共通）。回答も左揃え */
@media (max-width:767px){
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main details>summary{display:flex!important;justify-content:space-between!important;align-items:center!important;text-align:left!important;gap:12px!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main details>summary .faq139-text{text-align:left!important;flex:1 1 auto!important;min-width:0}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main details>summary .faq139-icon{flex:none!important;margin-left:auto!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main details :is(p,li,dd,dt,div,span):not(.faq139-q):not(.faq139-qa):not(.faq139-icon){text-align:left!important}
  html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main details>p{margin-left:0!important;margin-right:0!important}
}@media (max-width:767px){html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main details:is([name=faq185],[name=faq253],.detail107)>summary{padding-left:8px!important;padding-right:8px!important}html body.design:not(#a255):not(#b255):not(#c255):not(#d255):not(#e255):not(#f255):not(#g255):not(#h255):not(#i255):not(#j255):not(#k255):not(#l255) main details:is([name=faq185],[name=faq253])>p{padding-left:8px!important;padding-right:8px!important}}
