@charset "UTF-8";
/* ============================================================
   料金シミュレーター
   ------------------------------------------------------------
   公式サイト（assets/css/plan.css）から .sim / .wiz の指定を
   そのまま持ってきたもの。中身は触っていない。

   公式は色の変数名が違うので、ここで七五三の色に読み替える。
   公式側を直したときは、この下だけ入れ替えれば追従できる。
============================================================ */
#sim .sim{
  --paper:var(--white);
  --mist:var(--sub);
  --sub:#5f5a54;            /* 補助文字。七五三の --ink2 と同じ */
  --accent:#a85c50;         /* くすみ朱 */
  --accentText:#fff;
  --glass:var(--white);
  --edge:var(--line);
  --btn:var(--cta);
  --btnText:var(--white);
  --btnHover:var(--cta-h);
  --en:'Cormorant Garamond',serif;
}

.sim{display:grid;grid-template-columns:1fr 300px;gap:clamp(18px,2.6vw,34px);align-items:start}
#sim .guide-lead{margin-bottom:clamp(14px,1.8vw,20px)}
.sim-build {grid-column:1;grid-row:1}
.sim-result{grid-column:2;grid-row:1}
.sim-tools {grid-column:1;grid-row:2}

.sim-step+.sim-step{margin-top:clamp(12px,1.6vw,17px)}
.sim-step h3{display:flex;align-items:center;gap:9px;font-size:15.5px;letter-spacing:.05em;
  font-weight:500;margin-bottom:8px}
.sim-step .stp{flex:none;width:20px;height:20px;border-radius:50%;background:var(--accent);
  color:var(--paper);font-family:var(--en);font-size:13.5px;display:grid;place-items:center}

/* ① お子さまとプラン */
.kid{display:grid;grid-template-columns:58px 0.88fr 1.22fr auto auto 18px;gap:8px;align-items:center;
  padding:2px 0;border-bottom:1px solid var(--line)}
.kid-n{white-space:nowrap}
.kid select{padding-top:4px;padding-bottom:4px}
.kid-price{font-family:var(--en);font-size:14px;letter-spacing:.02em;color:var(--ink);
  white-space:nowrap;text-align:right}
.kid-nobeauty{font-size:12.5px;color:var(--sub);white-space:nowrap}
.kid:first-child{border-top:1px solid var(--line)}
.kid-n{font-size:14px;letter-spacing:.04em;color:var(--sub)}
/* iOS Safari は入力欄の文字が16px未満だと、触れた瞬間に画面を自動で拡大する。
   選ぶたびに表示が飛ぶので、16pxを下回らせない。
   高さも指を置ける寸法（44px）を確保する */
.kid select{width:100%;font-family:inherit;font-size:16px;letter-spacing:.03em;color:var(--ink);
  min-height:44px;
  padding:5px 26px 5px 10px;border-radius:8px;background:var(--glass);border:1px solid var(--edge);
  appearance:none;-webkit-appearance:none;cursor:pointer;transition:.25s;
  background-image:linear-gradient(45deg,transparent 50%,var(--sub) 50%),
                   linear-gradient(135deg,var(--sub) 50%,transparent 50%);
  background-position:calc(100% - 14px) 52%,calc(100% - 9px) 52%;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.kid select:hover,.kid select:focus{border-color:var(--accent);outline:none}
/* 着付け・ヘアメイクの欄は、色を落として主役のプラン選択と区別する。
   文字サイズは下げない（iOSの自動拡大と、指での押しやすさのため） */
.kid-beauty,.kid select[data-role="dress"],.kid select[data-role="hair"]{
  color:var(--sub) !important}
.kid-tag{font-size:12.5px;letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:2px 8px;
  color:var(--sub);background:rgba(0,0,0,.03);border:1px solid var(--line)}
.kid-tag.ok{color:#495836;background:rgba(126,150,100,.14);border-color:rgba(126,150,100,.34)}
/* 「×」は隣の選択欄と近く、外し間違いが起きやすい。
   見た目の大きさは変えず、押せる範囲だけを指の寸法まで広げる */
.kid-x{font-size:18px;line-height:1;color:var(--sub);transition:.25s;
  min-width:44px;min-height:44px;display:grid;place-items:center;margin:-10px}
.kid-x:hover:not(:disabled){color:var(--accentText)}
.kid-x:disabled{opacity:.22;cursor:default}

.sim-row{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;margin-top:7px}
/* 撮影日は①の見出し行の右端に置き、はじめに選べるようにする */
.sim-when{display:flex;align-items:center;gap:9px;margin-left:auto;
  font-size:14px;letter-spacing:.04em;color:var(--sub);font-weight:400}
.sim-when .lb{flex:none}
.sim-when .chips{display:flex;gap:7px}
.sim-when .chips button{padding:4px 16px;font-size:14px;min-height:44px}

/* 大人（ママ・パパ）の行。お子さまの表と同じ列に並べる */
.kid.adults:last-child{border-bottom:0}
.kid-price.adult-total{color:var(--sub)}

.sim-add{font-size:14px;letter-spacing:.04em;color:var(--accentText);min-height:44px;
  padding:5px 0;border-bottom:1px solid var(--line);transition:.25s}
.sim-add:hover:not(:disabled){border-bottom-color:var(--accentText)}
.sim-add:disabled{opacity:.35;cursor:default}
.sim-add[hidden]{display:none}

.sim-alert{margin-top:8px;padding:7px 11px;border-radius:10px;font-size:14px;line-height:1.7;
  color:#8a5c3d;background:rgba(170,120,90,.10);border:1px solid rgba(170,120,90,.32)}
.sim-alert b{color:#7a4d30;font-weight:500}
/* 不可ではなく「そういうプラン」の案内のときは、警告色にしない */
.sim-alert.ask{color:var(--sub);background:rgba(0,0,0,.025);border-color:var(--line)}
.sim-alert.ask b{color:var(--ink)}
.sim-alert a{border-bottom:1px solid currentColor;transition:.25s}
.sim-alert a:hover{color:var(--accentText)}

/* 組み合わせが成立しないときは②を出さない（操作できない枠を見せない） */
.sim-step.off{display:none}

/* 選択チップ */
.sim .chips{display:flex;flex-wrap:wrap;gap:7px}
/* 指で押す前提の寸法にそろえる（高さ44px） */
.sim .chips button{font-size:14px;letter-spacing:.03em;line-height:1.4;
  min-height:44px;padding:6px 18px;border-radius:999px;color:var(--sub);
  background:var(--glass);border:1px solid var(--edge);transition:.25s}
.sim .chips button:hover{border-color:var(--accent);color:var(--accentText)}
.sim .chips button.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}

.sim-hint{margin:-2px 0 8px;font-size:14px;line-height:1.65;color:var(--sub)}
.sim-hint b{color:var(--ink);font-weight:500}

/* 衣装ごとのブロック */
.outfit{display:grid;grid-template-columns:88px 1fr;gap:12px;align-items:center;
  padding:9px 0;border-bottom:1px solid var(--line)}
.outfit:first-child{border-top:1px solid var(--line)}
.outfit-h{font-size:14px;letter-spacing:.04em;color:var(--ink)}
.wear-tag{display:block;font-size:12.5px;letter-spacing:.02em;color:var(--sub);margin-top:1px}
.wear-tag.kimono{color:#8a5c3d}

.sim-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(14px,2vw,20px)}
.sim-tools button{font-size:14px;letter-spacing:.04em;color:var(--sub);
  min-height:44px;padding:5px 0;border-bottom:1px solid var(--line);transition:.25s}
.sim-tools button:hover{color:var(--accentText);border-bottom-color:var(--accentText)}
.sim-tools button+button{margin-left:14px}

/* 結果パネル */
.sim-result{padding:clamp(14px,1.8vw,18px);border-radius:14px;
  background:rgba(126,150,100,.09);border:1px solid rgba(126,150,100,.26);transition:.3s}
.sim-result.over{background:rgba(170,120,90,.10);border-color:rgba(170,120,90,.32)}
.sim-result h3{font-size:14px;letter-spacing:.1em;color:var(--sub);font-weight:400}
.sim-num{font-family:var(--en);font-size:15.5px;letter-spacing:.06em;color:var(--ink);
  margin-top:2px}
.sim-num span{font-size:30px;letter-spacing:.02em;margin-right:5px}
.sim-cut{font-size:14px;line-height:1.7;color:var(--sub);margin-top:2px}
.sim-cut b{color:var(--ink);font-weight:500}

.sim-price{margin-top:7px;padding-top:6px;border-top:1px solid rgba(126,150,100,.3);
  font-size:14px;line-height:1.6;color:var(--sub)}
.sim-result.over .sim-price{border-top-color:rgba(170,120,90,.34)}
.pr-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:1px 0;font-size:14px}
/* 2枠のときの「¥36,300 × 2枠」の式。金額の根拠なので小さく添える */
.pr-row span small{display:block;font-size:11.5px;letter-spacing:.02em;color:var(--sub);margin-top:1px}
.pr-row b{font-family:var(--en);font-size:14px;letter-spacing:.02em;color:var(--ink);
  font-weight:400;white-space:nowrap}
.pr-row.total{margin-top:3px;padding-top:5px;border-top:1px solid rgba(126,150,100,.3)}
.pr-row.total span{color:var(--ink);letter-spacing:.06em}
.pr-row.total b{font-size:19px}
.sim-result.over .pr-row.total{border-top-color:rgba(170,120,90,.34)}
.sim-price .note{display:block;font-size:12.5px;line-height:1.55;margin-top:3px}

.sim-list{counter-reset:sp;margin-top:6px;display:grid;gap:0;
  padding-top:6px;border-top:1px solid rgba(126,150,100,.3)}
.sim-result.over .sim-list{border-top-color:rgba(170,120,90,.34)}
.sim-list li{position:relative;padding-left:22px;font-size:12.5px;line-height:1.55;color:var(--sub)}
.sim-list li::before{counter-increment:sp;content:counter(sp);position:absolute;left:0;top:1px;
  width:16px;height:16px;border-radius:50%;background:rgba(126,150,100,.22);color:#5f7249;
  font-family:var(--en);font-size:12.5px;display:grid;place-items:center}
.sim-list li:nth-child(n+6)::before{background:rgba(170,120,90,.24);color:#8a5c3d}

.sim-empty{margin-top:12px;padding-top:12px;border-top:1px solid rgba(126,150,100,.3);
  font-size:14px;line-height:1.8;color:var(--sub)}
.sim-verdict{margin-top:12px;font-size:14px;line-height:1.8;color:var(--sub)}
.sim-verdict b{color:var(--ink);font-weight:500}

/* ----------------------------------------------------------------
   選び方ガイド（年齢・時期から選ぶ）
---------------------------------------------------------------- */
.guide-lead{text-align:center;font-size:13px;color:var(--sub);line-height:2;
  margin-bottom:clamp(18px,2.4vw,30px)}
.timeline{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;
  padding-top:22px;position:relative}
.timeline::before{content:'';position:absolute;left:0;right:0;top:8px;height:1px;background:var(--line)}
.stage{position:relative;padding-top:14px}
.stage::before{content:'';position:absolute;left:0;top:-14px;width:7px;height:7px;border-radius:50%;
  background:var(--accent)}
.stage .age{font-family:var(--en);font-size:12px;letter-spacing:.06em;color:var(--accentText);
  display:block;margin-bottom:8px}
.stage ul{display:grid;gap:5px}
.stage a{display:block;font-size:14px;line-height:1.6;color:var(--ink);
  padding-bottom:3px;border-bottom:1px solid transparent;transition:.3s}
.stage a:hover{border-bottom-color:var(--accentText);color:var(--accentText)}
.guide-foot{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;
  margin-top:clamp(22px,3vw,38px)}

/* ----------------------------------------------------------------
   ロケーション・レンタル
---------------------------------------------------------------- */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,44px)}
.duo h3{display:flex;align-items:baseline;gap:10px;padding-bottom:9px;
  border-bottom:1px solid var(--ink);margin-bottom:14px}
.duo h3 .en{font-family:var(--en);font-size:16px;letter-spacing:.18em}
.duo h3 .ja{font-size:13.5px;letter-spacing:.16em;color:var(--sub)}
.duo .plist{grid-template-columns:repeat(2,1fr)}

/* ----------------------------------------------------------------
   料金についての補足
---------------------------------------------------------------- */
.price-box{max-width:820px;margin:0 auto;padding:clamp(18px,2.4vw,30px);
  border-radius:16px;background:var(--glass);border:1px solid var(--edge)}
.price-box h3{font-size:14.5px;letter-spacing:.08em;font-weight:500;margin-bottom:10px}
.price-box ol{counter-reset:pr;display:grid;gap:8px}
.price-box li{position:relative;padding-left:34px;font-size:12.5px;line-height:1.95;color:var(--sub)}
.price-box li::before{counter-increment:pr;content:'0' counter(pr);position:absolute;left:0;top:1px;
  font-family:var(--en);font-size:13.5px;letter-spacing:.1em;color:var(--accentText)}
.price-box li b{color:var(--ink);font-weight:500}
.price-box .note{margin-top:12px;font-size:14px;color:var(--sub)}

/* ----------------------------------------------------------------
   スマートフォン
---------------------------------------------------------------- */
@media (max-width:900px){
  .plist{grid-template-columns:repeat(2,1fr);gap:14px}
  #kids .plist,.duo .plist{grid-template-columns:repeat(2,1fr)}
  .plist .price{grid-column:2;font-size:12px}
  .plist .price span{display:inline;margin-left:6px}
  .timeline{grid-template-columns:repeat(2,1fr);gap:16px;padding-top:0}
  .timeline::before{display:none}
  .stage{padding-top:0;padding-left:16px}
  .stage::before{left:0;top:6px}
  .notes{grid-template-columns:1fr;gap:12px}
  .sim{grid-template-columns:1fr;gap:16px}
  .sim-build,.sim-result,.sim-tools{grid-column:1;grid-row:auto}
  .sim-tools{margin-top:0}
  .outfit{grid-template-columns:1fr;gap:7px;align-items:start}
  .sim .chips button{padding:6px 12px}
  .kid{grid-template-columns:1fr auto auto 18px;gap:6px 8px}
  .kid-n{grid-column:1/-1;margin-bottom:-4px}
  .kid select{grid-column:1/-1}
  .kid-beauty,.kid-nobeauty{grid-column:1/-1}
  .kid-price{grid-column:1;text-align:left}
  .sim-when{margin-left:0;width:100%}
  .duo{grid-template-columns:1fr;gap:26px}
  .duo .plist{grid-template-columns:repeat(2,1fr)}
  .stage-chips a{font-size:13.5px;padding:5px 12px}
}
.sim-result.over .pr-row.plus{border-top-color:rgba(170,120,90,.45)}

/* ----------------------------------------------------------------
   誘導型プランページ（専門サイトを持つプラン）
---------------------------------------------------------------- */
.hero-cta{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}

/* 写真なしのポイント（テキストのみ） */
.pts.pts4{grid-template-columns:repeat(4,1fr)}
.pt.txt{padding:clamp(14px,1.8vw,20px);border-radius:14px;
  background:var(--glass);border:1px solid var(--edge)}
.pt.txt h3{margin:0 0 7px}

/* 注意事項 */
.cautions{display:grid;gap:6px;margin-top:4px;padding-top:8px;border-top:1px solid var(--line)}
.cautions li{position:relative;padding-left:15px;font-size:13.5px;line-height:1.8;color:var(--sub)}
.cautions li::before{content:'';position:absolute;left:0;top:.8em;width:6px;height:1px;background:var(--accent)}
.cautions b{color:var(--ink);font-weight:500}

/* 専門サイトへの案内 */
.sp-lead{text-align:center}
.sp-lead .lead{font-family:var(--mincho);font-size:clamp(16px,2.2vw,23px);
  line-height:2.1;letter-spacing:.06em;margin-bottom:clamp(18px,2.6vw,30px)}
.sp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.8vw,22px);
  margin-bottom:clamp(20px,3vw,32px);text-align:left}
.sp-grid div{padding:clamp(13px,1.7vw,18px);border-radius:14px;
  background:var(--glass);border:1px solid var(--edge)}
.sp-grid b{display:block;font-size:13px;letter-spacing:.06em;font-weight:500;margin-bottom:4px}
.sp-grid span{font-size:13.5px;line-height:1.85;color:var(--sub)}

@media (max-width:900px){
  .pts.pts4,.sp-grid{grid-template-columns:1fr}
}
.sim-wiz{display:block;position:relative}

/* 進捗。押して戻れるのは、答え終わった設問まで */
.wiz-steps{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 clamp(14px,2vw,20px);padding:0;list-style:none}
.wiz-steps li{display:flex;align-items:center}
.wiz-steps li+li::before{content:'';width:12px;height:1px;background:var(--line);margin:0 3px}
.wiz-steps button{font-size:13px;letter-spacing:.04em;color:var(--sub);
  min-height:44px;padding:4px 15px;border-radius:999px;
  background:var(--glass);border:1px solid var(--edge);transition:.25s}
.wiz-steps button:hover:not(:disabled){border-color:var(--accent);color:var(--accentText)}
.wiz-steps button:disabled{opacity:.4;cursor:default}
.wiz-steps .on button{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.wiz-steps .done button{color:var(--ink);border-color:var(--line)}

/* 設問 */
.wiz-q{display:flex;align-items:baseline;gap:10px;
  font-family:var(--mincho);font-size:clamp(17px,1.9vw,21px);
  line-height:1.7;letter-spacing:.06em;color:var(--ink)}
.wiz-q__n{font-family:var(--en);font-size:13px;letter-spacing:.1em;
  color:var(--accentText);flex:none}
.wiz-in{margin-top:clamp(12px,1.8vw,18px)}

/* 選択欄 */
.wiz-f{display:block;margin-top:12px}
.wiz-f:first-child{margin-top:0}
.wiz-f__l{display:block;font-size:14px;letter-spacing:.04em;color:var(--sub);margin-bottom:5px}
.wiz-f__s{display:block;font-size:13px;line-height:1.6;color:var(--sub);margin-top:4px}
.wiz-f select{width:100%;font-family:inherit;font-size:16px;letter-spacing:.03em;color:var(--ink);
  min-height:48px;padding:6px 30px 6px 12px;border-radius:10px;
  background:var(--glass);border:1px solid var(--edge);
  appearance:none;-webkit-appearance:none;cursor:pointer;transition:.25s;
  background-image:linear-gradient(45deg,transparent 50%,var(--sub) 50%),
                   linear-gradient(135deg,var(--sub) 50%,transparent 50%);
  background-position:calc(100% - 16px) 54%,calc(100% - 11px) 54%;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.wiz-f select:hover,.wiz-f select:focus{border-color:var(--accent);outline:none}

.wiz-q2{margin-top:16px}
.wiz-q2:first-child{margin-top:0}

/* 選択チップ。指で押す寸法にそろえる */
.wiz-chips{display:flex;flex-wrap:wrap;gap:8px}
.wiz-chips button{font-size:15px;letter-spacing:.03em;line-height:1.4;
  min-height:48px;padding:6px 20px;border-radius:999px;color:var(--sub);
  background:var(--glass);border:1px solid var(--edge);transition:.25s}
.wiz-chips button:hover{border-color:var(--accent);color:var(--accentText)}
.wiz-chips button.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
/* 2家族以上のときの「2枠」は選びようがないので、押せない見た目にする */
.wiz-chips button[disabled]{cursor:default;opacity:.75}
.wiz-chips button[disabled]:hover{border-color:var(--ink);color:var(--paper)}

/* 2枠のときの枠見出し。衣装の欄がどちらの枠のものか分かるようにする */
.wiz-slot-h{margin:26px 0 0;padding-bottom:6px;border-bottom:2px solid var(--ink);
  font-size:13px;letter-spacing:.08em;font-weight:600;color:var(--ink)}
.wiz-slot-h + .wiz-outfit{margin-top:10px;padding-top:10px;border-top:0}
.wiz-outfit{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.wiz-outfit .wear-tag{display:inline-block;margin-left:8px}

.wiz-note{font-size:14px;line-height:1.85;color:var(--sub);margin-top:12px}
.wiz-note b{color:var(--ink);font-weight:500}
.wiz-warn,.wiz-alert{font-size:14px;line-height:1.85;color:var(--ink);margin-top:14px;
  padding:11px 14px;border-radius:11px;
  background:rgba(170,120,90,.10);border:1px solid rgba(170,120,90,.32)}
.wiz-alert[hidden]{display:none}

/* 金額 */
.wiz-price{padding:clamp(14px,1.8vw,18px);border-radius:14px;
  background:rgba(126,150,100,.09);border:1px solid rgba(126,150,100,.26)}
.wiz-cut{font-size:14px;line-height:1.7;color:var(--sub);margin-top:10px}
.wiz-cut b{color:var(--ink);font-weight:500}

/* 撮り方の結果 */
.wiz-shot-sum{margin-top:18px;padding:clamp(14px,1.8vw,18px);border-radius:14px;
  background:rgba(126,150,100,.09);border:1px solid rgba(126,150,100,.26);transition:.3s}
.wiz-shot-sum.over{background:rgba(170,120,90,.10);border-color:rgba(170,120,90,.32)}
.wiz-verdict{font-size:14px;line-height:1.8;color:var(--sub);margin-top:8px}
.wiz-verdict b{color:var(--ink);font-weight:500}

/* 行ったり来たり */
.wiz-nav{display:flex;gap:10px;align-items:center;margin-top:clamp(18px,2.4vw,26px)}
.wiz-nav button{font-size:15px;letter-spacing:.06em;min-height:50px;padding:6px 26px;
  border-radius:999px;transition:.25s}
.wiz-back{color:var(--sub);background:var(--glass);border:1px solid var(--edge)}
.wiz-back:hover:not(:disabled){border-color:var(--accent);color:var(--accentText)}
.wiz-back:disabled{opacity:.35;cursor:default}
.wiz-next{margin-left:auto;background:var(--btn);color:var(--btnText);border:1px solid var(--btn)}
.wiz-next:hover{background:var(--btnHover);border-color:var(--btnHover)}
.wiz-next[hidden]{display:none}

/* 合計の帯。答えるたびに動くのが見えるように、常に出しておく */
.wiz-bar{display:flex;align-items:baseline;gap:10px;margin-top:16px;
  padding:12px 16px;border-radius:12px;
  background:var(--mist);border:1px solid var(--line)}
.wiz-bar.ng{background:rgba(170,120,90,.10);border-color:rgba(170,120,90,.32)}
.wiz-bar[hidden]{display:none}
.wiz-bar__l{font-size:13px;letter-spacing:.06em;color:var(--sub)}
.wiz-bar__l small{display:block;font-size:12.5px}
.wiz-bar__v{font-family:var(--en);font-size:22px;letter-spacing:.03em;color:var(--ink);
  margin-left:auto;font-weight:400}
.wiz-bar__p{font-size:13px;letter-spacing:.04em;color:var(--sub);flex:none}

@media (max-width:900px){
  /* スマホでは合計を画面の下に貼り付ける。
     設問と金額の間を往復スクロールしなくて済む */
  .wiz-bar{position:sticky;bottom:10px;z-index:4;
    box-shadow:0 6px 20px rgba(58,52,42,.16);background:var(--paper)}
  .wiz-bar__v{font-size:20px}
  .wiz-nav button{flex:1;padding:6px 16px}
  .wiz-next{margin-left:0}
}
.wiz-sum{padding:clamp(16px,2.2vw,22px);border-radius:16px;
  background:var(--paper);border:1px solid var(--line);
  box-shadow:0 2px 14px rgba(58,52,42,.06)}
.wiz-sum__h{font-family:var(--mincho);font-size:17px;letter-spacing:.1em;
  color:var(--ink);padding-bottom:10px;border-bottom:1px solid var(--line)}

.wiz-sum__d{margin:0}
.wiz-sum__d>div{display:grid;grid-template-columns:96px 1fr;gap:10px;
  padding:9px 0;border-bottom:1px solid var(--line)}
.wiz-sum__d dt{font-size:13px;letter-spacing:.06em;color:var(--sub);line-height:1.7}
.wiz-sum__d dd{margin:0;font-size:14px;line-height:1.75;color:var(--ink)}

.wiz-sum__p{margin-top:12px;padding:12px 14px;border-radius:11px;
  background:rgba(126,150,100,.09);border:1px solid rgba(126,150,100,.26)}
.wiz-sum__p .pr-row{font-size:13.5px}
.wiz-sum__p .pr-row.total b{font-size:21px}

.wiz-sum__s{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.wiz-sum__st{font-size:14px;letter-spacing:.06em;color:var(--sub)}
.wiz-sum__st b{font-family:var(--en);font-size:18px;color:var(--ink);
  letter-spacing:.04em;margin-left:4px;font-weight:400}
.wiz-sum__s .sim-list{margin-top:6px}
.wiz-sum__s .wiz-verdict{margin-top:6px}

.wiz-sum__n{font-size:12.5px;line-height:1.7;color:var(--sub);
  margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}

@media (max-width:900px){
  /* 1回のスクリーンショットに収めるため、縦をできるだけ詰める。
     ブラウザの上下のバーを引くと、実際に使える高さは700px前後しかない */
  .wiz-sum{padding:13px}
  .wiz-sum__h{font-size:15.5px;padding-bottom:8px}
  .wiz-sum__d>div{grid-template-columns:78px 1fr;gap:8px;padding:5px 0}
  .wiz-sum__d dt{font-size:12.5px;line-height:1.6}
  .wiz-sum__d dd{font-size:13.5px;line-height:1.6}
  .wiz-sum__p{margin-top:9px;padding:10px 12px}
  .wiz-sum__p .pr-row{font-size:13px;padding:0}
  .wiz-sum__p .pr-row.total b{font-size:19px}
  .wiz-sum__s{margin-top:9px;padding-top:9px}
  .wiz-sum__st{font-size:13px}
  .wiz-sum__s .sim-list li{font-size:12.5px;line-height:1.5;padding-left:20px}
  .wiz-sum .pr-row.plus b{font-size:12px}
  .wiz-sum .wiz-verdict{font-size:12.5px;line-height:1.6;margin-top:5px}
  .wiz-sum__n{font-size:11.5px;line-height:1.6;margin-top:9px;padding-top:8px}
}
.wiz-save{display:flex;flex-direction:column;gap:7px;align-items:flex-start;margin-top:14px}
.wiz-save button{font-size:15px;letter-spacing:.06em;min-height:50px;padding:6px 28px;
  border-radius:999px;background:var(--btn);color:var(--btnText);border:1px solid var(--btn);
  transition:.25s}
.wiz-save button:hover{background:var(--btnHover);border-color:var(--btnHover)}
.wiz-save__n{font-size:13px;line-height:1.7;color:var(--sub)}
@media (max-width:900px){
  .wiz-save button{width:100%}
}
.wiz-sum__warn{margin-top:12px;padding:11px 14px;border-radius:11px;
  font-size:13.5px;line-height:1.8;color:var(--ink);
  background:rgba(170,120,90,.12);border:1px solid rgba(170,120,90,.38)}
.wiz-sum__warn b{font-weight:500}
.wiz-sum__s.over{border-top-color:rgba(170,120,90,.38)}

