#ksz-app{
    --k1:#80a6b3;
    --k1d:#557e8c;
    --k2:#89bba3;
    --k2l:#eef5f0;
    --ink:#333333;
    --sub:#777777;
    --surface:#f5f6f4;
    --bd:#dde3e0;
    --line:#00b900;
    font-family:"游ゴシック",YuGothic,"Yu Gothic","Hiragino Sans","ヒラギノ角ゴ ProN W3",sans-serif;
    color:var(--ink);
    line-height:1.9;
    max-width:760px;
    margin:0 auto;
    padding:24px 16px 70px;
  }
  #ksz-app *{margin:0;padding:0;box-sizing:border-box;}
  #ksz-app .ksz-serif{font-family:"Noto Serif JP",serif;}
  #ksz-app .ksz-head{text-align:center;padding:24px 0 6px;}
  #ksz-app .ksz-badge{display:inline-block;font-size:12px;letter-spacing:.25em;color:var(--k1d);border:1px solid var(--k1);padding:3px 16px;border-radius:30px;margin-bottom:12px;}
  #ksz-app .ksz-title{font-family:"Noto Serif JP",serif;font-size:28px;font-weight:700;letter-spacing:.1em;color:#000;}
  #ksz-app .ksz-sub{font-size:13px;color:var(--sub);margin-top:8px;letter-spacing:.05em;}
  #ksz-app .ksz-progress{height:5px;background:#e9ecea;border-radius:30px;margin:24px 0 6px;overflow:hidden;}
  #ksz-app .ksz-progress>div{height:100%;background:var(--k2);width:0%;transition:width .5s ease;border-radius:30px;}
  #ksz-app .ksz-plabel{font-size:11px;color:var(--sub);text-align:right;letter-spacing:.1em;}
  #ksz-app .ksz-card{
    background:#fff;border:1px solid var(--bd);border-radius:12px;
    padding:32px 26px;margin-top:14px;
    box-shadow:0 3px 14px rgba(90,120,130,.08);
    animation:kszfade .45s ease;
  }
  @keyframes kszfade{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}
  #ksz-app .ksz-qnum{font-size:12px;color:var(--k1d);letter-spacing:.2em;margin-bottom:6px;}
  #ksz-app .ksz-qtext{font-family:"Noto Serif JP",serif;font-size:19px;font-weight:700;margin-bottom:6px;letter-spacing:.04em;color:#000;}
  #ksz-app .ksz-qnote{font-size:13px;color:var(--sub);margin-bottom:18px;}
  #ksz-app .ksz-opts{display:flex;flex-direction:column;gap:10px;}
  #ksz-app .ksz-opt{
    text-align:left;font-family:inherit;font-size:15px;color:var(--ink);
    background:var(--surface);border:1.5px solid var(--bd);border-radius:10px;
    padding:14px 18px;cursor:pointer;transition:all .18s ease;line-height:1.6;
  }
  #ksz-app .ksz-opt:hover{border-color:var(--k1);background:#eef4f6;transform:translateX(4px);}
  #ksz-app .ksz-opt small{display:block;color:var(--sub);font-size:12px;margin-top:2px;}
  #ksz-app .ksz-back{background:none;border:none;color:var(--sub);font-family:inherit;font-size:13px;cursor:pointer;margin-top:16px;letter-spacing:.05em;}
  #ksz-app .ksz-back:hover{color:var(--k1d);}
  #ksz-app .ksz-rhead{text-align:center;margin-bottom:8px;}
  #ksz-app .ksz-rtype{display:inline-block;background:var(--k2);color:#fff;font-size:13px;letter-spacing:.15em;padding:5px 22px;border-radius:30px;margin-bottom:12px;}
  #ksz-app .ksz-rtitle{font-family:"Noto Serif JP",serif;font-size:23px;font-weight:700;letter-spacing:.06em;color:#000;}
  #ksz-app .ksz-rlead{font-size:14px;color:#555;margin:12px 0 4px;text-align:left;}
  #ksz-app .ksz-chips{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 4px;}
  #ksz-app .ksz-chip{font-size:12px;background:var(--surface);border:1px solid var(--bd);border-radius:30px;padding:3px 12px;color:#555;}
  #ksz-app .ksz-sec{
    font-family:"Noto Serif JP",serif;font-size:17px;font-weight:700;letter-spacing:.12em;color:#000;
    text-align:center;margin:32px 0 4px;
  }
  #ksz-app .ksz-secline{width:44px;height:3px;background:var(--k2);margin:0 auto 16px;border-radius:30px;}
  #ksz-app .ksz-tl{list-style:none;position:relative;padding-left:30px;text-align:left;}
  #ksz-app .ksz-tl::before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:#d4e2da;}
  #ksz-app .ksz-tl li{position:relative;padding-bottom:16px;font-size:14px;}
  #ksz-app .ksz-tl li::before{content:"";position:absolute;left:-27px;top:6px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--k2);}
  #ksz-app .ksz-tl li b{display:block;font-size:15px;color:#000;}
  #ksz-app .ksz-tl li span{color:#666;font-size:13px;}
  #ksz-app .ksz-chk{list-style:none;text-align:left;}
  #ksz-app .ksz-chk li{font-size:14px;padding:11px 12px 11px 38px;position:relative;background:var(--surface);border-radius:8px;margin-bottom:8px;}
  #ksz-app .ksz-chk li::before{content:"✓";position:absolute;left:13px;top:10px;color:var(--k2);font-weight:bold;font-size:16px;}
  #ksz-app .ksz-chk li small{display:block;color:var(--sub);font-size:12px;}
  #ksz-app .ksz-cost{margin-bottom:14px;}
  #ksz-app .ksz-crow{margin-bottom:12px;}
  #ksz-app .ksz-cname{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:4px;gap:8px;}
  #ksz-app .ksz-cname b{color:var(--k1d);white-space:nowrap;}
  #ksz-app .ksz-bar{height:10px;background:#ecefed;border-radius:30px;overflow:hidden;}
  #ksz-app .ksz-bar>div{height:100%;border-radius:30px;background:var(--k2);width:0;transition:width 1s ease .2s;}
  #ksz-app .ksz-total{margin-top:16px;background:var(--k1);color:#fff;border-radius:10px;padding:14px 18px;display:flex;justify-content:space-between;align-items:baseline;}
  #ksz-app .ksz-total span{font-size:13px;letter-spacing:.1em;}
  #ksz-app .ksz-total b{font-size:21px;letter-spacing:.05em;}
  #ksz-app .ksz-disc{font-size:11.5px;color:var(--sub);margin-top:10px;line-height:1.7;text-align:left;}
  #ksz-app .ksz-point{background:var(--k2l);border:1px solid var(--k2);border-radius:10px;padding:14px 16px;font-size:13.5px;margin:8px 0;text-align:left;}
  #ksz-app .ksz-point b{color:var(--k1d);}
  #ksz-app .ksz-faq{text-align:left;margin-bottom:8px;background:var(--surface);border-radius:10px;padding:13px 16px;}
  #ksz-app .ksz-faq b{display:block;font-size:13.5px;color:#000;margin-bottom:2px;}
  #ksz-app .ksz-faq p{font-size:13px;color:#555;}
  #ksz-app .ksz-cta{margin-top:30px;text-align:center;background:var(--surface);border-radius:12px;padding:26px 18px;}
  #ksz-app .ksz-cta p{font-size:13.5px;margin-bottom:12px;}
  #ksz-app .ksz-tel{font-size:27px;font-weight:700;color:var(--k1d);letter-spacing:.05em;text-decoration:none;display:block;font-family:"Noto Serif JP",serif;}
  #ksz-app .ksz-tel small{display:block;font-size:11px;color:var(--sub);font-weight:400;letter-spacing:.1em;font-family:inherit;}
  #ksz-app .ksz-btns{display:flex;gap:10px;justify-content:center;margin-top:14px;flex-wrap:wrap;}
  #ksz-app .ksz-btn{font-family:inherit;font-size:14px;text-decoration:none;cursor:pointer;padding:12px 26px;border-radius:30px;border:none;letter-spacing:.05em;display:inline-block;}
  #ksz-app .ksz-btn-line{background:var(--line);color:#fff;}
  #ksz-app .ksz-btn-mail{background:var(--k1);color:#fff;}
  #ksz-app .ksz-btn-print{background:#fff;border:1.5px solid var(--k1);color:var(--k1d);}
  #ksz-app .ksz-ctanote{font-size:11.5px;color:var(--sub);margin-top:10px;}
  #ksz-app .ksz-retry{background:none;border:none;color:var(--sub);font-size:13px;cursor:pointer;margin-top:18px;font-family:inherit;}
  #ksz-app .ksz-trust{text-align:center;font-size:12px;color:var(--sub);margin-top:26px;letter-spacing:.06em;line-height:2;}
  #ksz-app .ksz-printhead{display:none;}
  @media print{
    #ksz-app .ksz-btns,#ksz-app .ksz-retry,#ksz-app .ksz-progress,#ksz-app .ksz-plabel,#ksz-app .ksz-ctanote{display:none!important;}
    #ksz-app .ksz-card{box-shadow:none;border:1px solid #ccc;}
    #ksz-app .ksz-printhead{display:block;text-align:center;font-size:13px;border-bottom:1px solid #ccc;padding-bottom:8px;margin-bottom:14px;}
  }
  @media (max-width:480px){
    #ksz-app .ksz-title{font-size:23px;}
    #ksz-app .ksz-card{padding:24px 16px;}
  }
