/* ===== migrated from index.php inline <style> (head overrides) ===== */
  :root{--bpo-blue:#2f72ff;--bpo-blue-dark:#123d9e;--bpo-yellow:#ffc928;--bpo-orange:#ff8a00;}
  @media (max-width:767px){.kv-pc{display:none}.kv-sp{display:block}.logos-pc{display:none}.logos-sp{display:block}}
  @media (min-width:768px){.kv-pc{display:block}.kv-sp{display:none}.logos-pc{display:block}.logos-sp{display:none}}
  .header .navi ul{gap:30px}.header .navi .btn-header{min-width:170px}.header .navi .btn-download{background:linear-gradient(90deg,#ff9400,#ff7a00);color:#fff;border:none;}
  #kv{background:linear-gradient(135deg,#2f72ff 0%,#407cff 52%,#2368f0 100%);position:relative;overflow:hidden}#kv:before{content:"";position:absolute;inset:0;background:url('https://recup.delight21.co.jp/lp/common/img/kv-bg.webp') center/cover no-repeat;opacity:.22;pointer-events:none}.kv-layout{position:relative;z-index:1;display:flex;gap:42px;align-items:flex-start;justify-content:space-between}.kv-left{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:center;max-width:790px}.kv-right{flex:0 0 430px}.fv-rich-visual{width:100%;max-width:760px;margin:0 auto 22px;padding:12px;border-radius:28px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 40px rgba(8,34,99,.16);backdrop-filter:blur(4px)}.fv-rich-visual img{display:block;width:100%;height:auto;border-radius:21px}.kv-pc .subtxt{width:100%;max-width:690px;margin:0 auto 20px;text-align:left;color:#fff;font-weight:900;font-size:1.16rem;line-height:1.65;letter-spacing:.04em}.kv-medal-list.bpo-stats{display:flex!important;width:100%;max-width:690px;justify-content:space-between;gap:14px;margin:0 auto 10px;padding:0;list-style:none}.bpo-stat-card{flex:1;min-height:104px;border-radius:18px;background:linear-gradient(180deg,#fff8d4,#fff0ad);box-shadow:0 10px 20px rgba(16,48,118,.16),inset 0 1px 0 rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border:2px solid rgba(255,255,255,.55)}.bpo-stat-card:before,.bpo-stat-card:after{content:"";position:absolute;width:34px;height:70px;border:4px solid #f2c01e;border-top:0;border-bottom:0;border-radius:50%;top:22px;opacity:.85}.bpo-stat-card:before{left:14px;transform:rotate(-17deg)}.bpo-stat-card:after{right:14px;transform:rotate(17deg)}.bpo-stat-card .label{display:block;color:#2f63c8;font-weight:900;font-size:1rem;line-height:1.2;text-align:center}.bpo-stat-card strong{display:block;color:#225bd4;font-size:2.6rem;line-height:1;font-weight:900;letter-spacing:-.04em}.bpo-stat-card strong .unit{font-size:1rem;letter-spacing:0}.kv-badge-txt{position:static!important;display:block!important;width:100%;max-width:690px;margin:8px auto 0!important;padding:0 4px;color:rgba(255,255,255,.86);font-size:.75rem!important;line-height:1.65;text-align:left!important}.kv-form-box .kv-form-ttl{font-size:1.35rem}.contact-action .btn,.contact-btn{background:linear-gradient(90deg,#ff9400,#ff7a00)}
  .kv-sp{padding:24px 0 36px}.kv-sp .fv-rich-visual{max-width:94%;margin:0 auto 16px;padding:8px;border-radius:20px}.kv-sp .subtxt{max-width:92%;margin:0 auto 16px;text-align:left;color:#fff;font-weight:800}.kv-sp .bpo-stats{display:grid!important;grid-template-columns:1fr;gap:10px;width:92%;max-width:360px;margin:0 auto 12px}.kv-sp .bpo-stat-card{min-height:82px}.kv-sp .bpo-stat-card strong{font-size:2.2rem}.kv-sp .kv-badge-txt{max-width:92%;margin:10px auto 0!important;text-align:left!important;font-size:.7rem!important;color:rgba(255,255,255,.85)}
  .logos-pc .head-ttl,.logos-sp .head-ttl{color:#222}.cta .head-ttl{line-height:1.5}.cta-single{max-width:760px;margin:0 auto}.cta-single .cta-box{width:100%!important}.cta-single .btn-wrap{margin-top:22px}.head-ttl-logo{display:none!important}.bpo-about-text h3,.txt h3{line-height:1.55}.about-figure{flex:0 0 min(42%,470px)}.about-figure img,.scout-hero-illust img{width:100%;height:auto;display:block}.scout-hero-illust{max-width:740px;margin:20px auto 32px}.scout-list.bpo-works{display:grid!important;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.scout-list.bpo-works li{width:auto!important;background:#fff;border-radius:24px;box-shadow:0 12px 30px rgba(23,54,110,.08);padding:28px 22px;border:1px solid #e6efff}.scout-list.bpo-works li h4{color:#1245a8}.scout-list.bpo-works li p{font-weight:700}.scout-list.bpo-works li:before{content:"";display:block;width:14px;height:14px;border-radius:999px;background:linear-gradient(135deg,var(--bpo-blue),var(--bpo-yellow));margin:0 auto 12px}.point-list figure img{max-width:100%;height:auto}.price-note{background:#f7fbff;border:1px solid #dce8ff;border-radius:24px;padding:26px;margin-top:28px;text-align:center;font-weight:800}.price-note .strong{color:#f27700}.faq-box .accordion-txt p{line-height:1.8}#fixed_btn{display:none!important}@media (max-width:767px){#fixed_btn{display:none}.sp-fixed-dl{position:fixed;left:12px;right:12px;bottom:12px;z-index:99}.sp-fixed-dl a{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:999px;background:linear-gradient(90deg,#ff9400,#ff7a00);color:#fff;font-weight:900;box-shadow:0 10px 28px rgba(20,60,120,.24)}}@media (min-width:768px){.sp-fixed-dl{display:none!important}}@media (max-width:767px){.header .navi ul{gap:0}.scout-list.bpo-works{grid-template-columns:1fr}.about-figure{max-width:92%;margin:0 auto 18px}.kv-form-box{display:none}.btn-wrap.flex-wrap{display:block}.btn-block{margin-bottom:16px}}

  /* ---- Restore before generalization / download changes ---- */
  .header .navi .btn-header:not(.btn-download){background:linear-gradient(90deg,#ff9400,#ff7a00);color:#fff;border:none;}
  #kv.kv-pc .kv-medal-list.restore-medals{display:flex!important;width:100%;max-width:700px;justify-content:space-between!important;align-items:center;gap:12px!important;margin:6px auto 10px;padding:0;list-style:none;}
  #kv.kv-pc .kv-medal-list.restore-medals li{flex:1 1 0;display:flex;justify-content:center;margin:0;}
  #kv.kv-pc .kv-medal-list.restore-medals li img{display:block;width:100%;max-width:210px;height:auto;max-height:none;}
  #kv.kv-sp .kv-medal-list.restore-medals{display:grid!important;grid-template-columns:1fr;gap:10px;width:92%;max-width:360px;margin:0 auto 12px;padding:0;list-style:none;}
  #kv.kv-sp .kv-medal-list.restore-medals li{display:flex;justify-content:center;}
  #kv.kv-sp .kv-medal-list.restore-medals li img{width:100%;max-width:310px;height:auto;max-height:none;}
  .price-note{background:#f7fbff;border:1px solid #dce8ff;border-radius:24px;padding:26px;margin-top:28px;text-align:center;font-weight:800}.price-note .strong{color:#f27700}


  /* final adjustments */
  #kv.kv-pc .kv-medal-list.restore-medals{display:flex!important;width:100%;max-width:700px;justify-content:center!important;align-items:stretch;gap:16px!important;margin:8px auto 12px;padding:0;list-style:none;}
  #kv.kv-pc .kv-medal-list.restore-medals li{flex:0 1 210px;display:flex;justify-content:center;align-items:center;margin:0;}
  #kv.kv-pc .kv-medal-list.restore-medals li img{display:block;width:100%;max-width:210px;height:auto;}
  #kv.kv-sp .kv-medal-list.restore-medals{display:grid!important;grid-template-columns:1fr;gap:10px;width:92%;max-width:320px;margin:0 auto 12px;padding:0;list-style:none;}
  #kv.kv-sp .kv-medal-list.restore-medals li{display:flex;justify-content:center;align-items:center;}
  #kv.kv-sp .kv-medal-list.restore-medals li img{display:block;width:100%;max-width:300px;height:auto;}
  .about-figure img{max-width:100%;height:auto;display:block}
  .scout-hero-illust img{max-width:100%;height:auto;display:block}
  #logos img{opacity:1 !important;}


  /* --- v2 visual refinements --- */
  #kv.kv-pc .kv-medal-list.restore-medals{gap:18px!important;max-width:720px;}
  #kv.kv-pc .kv-medal-list.restore-medals li,
  #kv.kv-sp .kv-medal-list.restore-medals li{border-radius:22px;overflow:hidden;}
  #kv.kv-pc .kv-medal-list.restore-medals li img,
  #kv.kv-sp .kv-medal-list.restore-medals li img{
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 12px 26px rgba(16,48,118,.14);
  }
  #kv.kv-sp .kv-medal-list.restore-medals{max-width:330px;gap:12px;}
  #kv.kv-sp .kv-medal-list.restore-medals li img{max-width:304px;}

  #cta01 .cta-single{max-width:880px;}
  #cta01 .cta-box{padding-left:32px;padding-right:32px;}
  #cta01 .cta-box .cnt{align-items:center;gap:26px;}
  #cta01 .cta-download-img{flex:0 0 320px;max-width:320px;margin-left:auto;}
  #cta01 .cta-download-img img{display:block;max-width:100%;height:auto;object-fit:contain;}
  @media (max-width: 767px){
    #cta01 .cta-box{padding-left:20px;padding-right:20px;}
    #cta01 .cta-download-img{max-width:250px;margin:16px auto 0;}
  }

  .scout-list.bpo-works{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin-top:24px;
  }
  .scout-list.bpo-works li{
    background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
    border:1px solid #dce8ff;
    border-radius:26px;
    box-shadow:0 14px 34px rgba(23,54,110,.08);
    padding:26px 22px 24px;
    text-align:left;
  }
  .scout-list.bpo-works li:before{
    content:'';
    display:block;
    width:42px;
    height:42px;
    border-radius:14px;
    background:linear-gradient(135deg,var(--bpo-blue),var(--bpo-yellow));
    margin:0 0 14px;
    box-shadow:0 8px 18px rgba(47,99,200,.18);
  }
  .scout-list.bpo-works li h4{
    margin:0 0 10px;
    color:#1245a8;
    font-size:1.2rem;
    line-height:1.45;
    font-weight:900;
  }
  .scout-list.bpo-works li p{
    margin:0;
    color:#2b3a55;
    font-weight:700;
    line-height:1.9;
    font-size:.98rem;
  }
  .scout .intro{font-size:1rem;line-height:1.8;}
  @media (max-width: 767px){
    .scout-list.bpo-works{grid-template-columns:1fr;gap:16px;}
    .scout-list.bpo-works li{padding:22px 18px 20px;border-radius:22px;}
    .scout-list.bpo-works li h4{font-size:1.08rem;}
    .scout-list.bpo-works li p{font-size:.94rem;line-height:1.8;}
  }


  /* --- v3 CTA and works section fixes --- */
  #cta01 .cta-box{
    padding: 34px 34px 38px;
  }
  #cta01 .cta-box .cnt{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
  }
  #cta01 .cta-box .cnt > p{
    flex:1 1 0;
    margin:0;
    line-height:1.8;
  }
  #cta01 .cta-download-img{
    flex:0 0 430px;
    max-width:430px;
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
  }
  #cta01 .cta-download-img img{
    display:block;
    height:auto;
    object-fit:contain;
    filter: drop-shadow(0 10px 20px rgba(20,50,120,.12));
  }
  #cta01 .cta-download-img img:first-child{
    width:68%;
    max-width:290px;
  }
  #cta01 .cta-download-img img:last-child{
    width:32%;
    max-width:132px;
  }
  #cta01 .btn-wrap{margin-top:26px;}
  @media (max-width: 767px){
    #cta01 .cta-box{padding:24px 18px 26px;}
    #cta01 .cta-box .cnt{
      display:block;
    }
    #cta01 .cta-box .cnt > p{
      margin-bottom:18px;
    }
    #cta01 .cta-download-img{
      max-width:300px;
      margin:0 auto;
      gap:10px;
    }
    #cta01 .cta-download-img img:first-child{max-width:200px;}
    #cta01 .cta-download-img img:last-child{max-width:90px;}
  }

  .scout.sec{
    background: linear-gradient(180deg, rgba(244,248,255,.88) 0%, rgba(255,255,255,1) 100%);
  }
  .scout .intro{
    color:#27446f;
    font-weight:700;
  }
  .scout-list.bpo-works{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
  }
  .scout-list.bpo-works li{
    background:#ffffff !important;
    border:1px solid #d6e5ff !important;
    border-radius:26px;
    box-shadow:0 16px 34px rgba(18,69,168,.10);
    padding:26px 22px 24px !important;
  }
  .scout-list.bpo-works li:before{
    content:'';
    display:block;
    width:48px;
    height:48px;
    border-radius:16px;
    background:linear-gradient(135deg,#2f67ff 0%, #6da2ff 60%, #ffd452 100%);
    margin:0 0 16px !important;
    box-shadow:0 10px 20px rgba(47,99,200,.22);
  }
  .scout-list.bpo-works li h4{
    display:inline-block;
    margin:0 0 12px;
    padding:8px 14px;
    border-radius:999px;
    background:#174fb8;
    color:#fff !important;
    font-size:1.05rem;
    line-height:1.5;
    font-weight:900;
  }
  .scout-list.bpo-works li p{
    color:#2b3a55 !important;
    font-weight:700;
    line-height:1.95;
    font-size:.98rem;
    margin:0;
  }
  @media (max-width: 767px){
    .scout-list.bpo-works{grid-template-columns:1fr;gap:16px;}
    .scout-list.bpo-works li{padding:22px 18px 20px !important;border-radius:22px;}
    .scout-list.bpo-works li h4{font-size:1rem;padding:8px 12px;}
    .scout-list.bpo-works li p{font-size:.94rem;line-height:1.85;}
  }


  /* --- v4 fix squeezed CTA images --- */
  #cta01 .cta-box .cnt {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 420px;
    align-items: center;
    gap: 30px;
  }

  #cta01 .cta-box .cnt > p {
    margin: 0;
    line-height: 1.9;
  }

  #cta01 .cta-download-img {
    width: 100%;
    max-width: 420px;
    margin: 0;
    display: grid !important;
    grid-template-columns: 1fr auto;
    align-items: center;
    justify-content: start;
    gap: 16px;
  }

  #cta01 .cta-download-img img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100%;
    object-fit: contain !important;
    object-position: left center;
    flex: none !important;
  }

  #cta01 .cta-download-img img:first-child {
    max-width: 295px !important;
    max-height: 150px !important;
  }

  #cta01 .cta-download-img img:last-child {
    max-width: 110px !important;
    max-height: 150px !important;
  }

  @media (max-width: 767px) {
    #cta01 .cta-box .cnt {
      display: block !important;
    }

    #cta01 .cta-box .cnt > p {
      margin-bottom: 18px;
    }

    #cta01 .cta-download-img {
      max-width: 300px;
      margin: 0 auto;
      grid-template-columns: 1fr auto;
      gap: 10px;
    }

    #cta01 .cta-download-img img:first-child {
      max-width: 210px !important;
      max-height: 120px !important;
    }

    #cta01 .cta-download-img img:last-child {
      max-width: 76px !important;
      max-height: 120px !important;
    }
  }

  /* make booster cards clearer than the background */
  .scout-list.bpo-works li {
    background: #fff !important;
    border: 2px solid #d7e6ff !important;
  }

  .scout-list.bpo-works li h4 {
    background: #1245a8 !important;
    color: #fff !important;
  }


  /* --- v5 CTA layout refined to match screenshot --- */
  #cta01 .cta-single {
    max-width: 1360px;
  }
  #cta01 .cta-box {
    padding: 50px 46px 40px !important;
    border-radius: 18px;
    background: #f3f3f3;
  }
  #cta01 .cta-box h3 {
    margin: 0 auto 36px !important;
    max-width: 1240px;
    padding: 28px 20px !important;
    font-size: 1.9rem !important;
    line-height: 1.35 !important;
    text-align: center;
    background: #f3df86 !important;
    border-radius: 10px;
  }
  #cta01 .cta-box .cnt {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 560px;
    align-items: center;
    gap: 34px;
    max-width: 1240px;
    margin: 0 auto;
  }
  #cta01 .cta-box .cnt > p {
    margin: 0;
    font-size: 1.22rem;
    line-height: 1.95;
    color: #222;
    text-align: left;
    font-weight: 700;
  }
  #cta01 .cta-download-img {
    width: 100%;
    max-width: 560px;
    margin: 0;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
  }
  #cta01 .cta-download-img img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100%;
    object-fit: contain !important;
    flex: none !important;
  }
  #cta01 .cta-download-img img:first-child {
    width: 365px !important;
    max-width: 365px !important;
  }
  #cta01 .cta-download-img img:last-child {
    width: 175px !important;
    max-width: 175px !important;
  }
  #cta01 .btn-wrap {
    margin-top: 34px !important;
    text-align: center;
  }
  #cta01 .btn-wrap .btn-download {
    min-width: 520px;
  }
  @media (max-width: 1024px) {
    #cta01 .cta-box .cnt {
      grid-template-columns: 1fr 430px;
      gap: 24px;
    }
    #cta01 .cta-box .cnt > p {
      font-size: 1.08rem;
    }
    #cta01 .cta-download-img {
      max-width: 430px;
    }
    #cta01 .cta-download-img img:first-child {
      width: 285px !important;
      max-width: 285px !important;
    }
    #cta01 .cta-download-img img:last-child {
      width: 135px !important;
      max-width: 135px !important;
    }
  }
  @media (max-width: 767px) {
    #cta01 .cta-box {
      padding: 26px 16px 24px !important;
      border-radius: 14px;
    }
    #cta01 .cta-box h3 {
      margin-bottom: 20px !important;
      padding: 18px 12px !important;
      font-size: 1.2rem !important;
      border-radius: 8px;
    }
    #cta01 .cta-box .cnt {
      display: block !important;
    }
    #cta01 .cta-box .cnt > p {
      margin-bottom: 16px;
      font-size: 0.98rem;
      line-height: 1.85;
    }
    #cta01 .cta-download-img {
      max-width: 290px;
      margin: 0 auto;
      justify-content: center;
      gap: 10px;
    }
    #cta01 .cta-download-img img:first-child {
      width: 190px !important;
      max-width: 190px !important;
    }
    #cta01 .cta-download-img img:last-child {
      width: 88px !important;
      max-width: 88px !important;
    }
    #cta01 .btn-wrap {
      margin-top: 22px !important;
    }
    #cta01 .btn-wrap .btn-download {
      min-width: 100%;
    }
  }


  /* --- v6 aspect-ratio + one-line heading fix --- */
  #cta01 .cta-download-img {
    width: 100%;
    max-width: 560px;
    margin: 0;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
  }
  #cta01 .cta-download-img img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    flex: 0 0 auto !important;
  }
  /* preserve original aspect ratio: control by max-height, not forced width */
  #cta01 .cta-download-img img:first-child {
    max-height: 165px !important;
    width: auto !important;
    max-width: 360px !important;
  }
  #cta01 .cta-download-img img:last-child {
    max-height: 165px !important;
    width: auto !important;
    max-width: 190px !important;
  }
  @media (max-width: 1024px) {
    #cta01 .cta-download-img img:first-child {
      max-height: 145px !important;
      max-width: 300px !important;
    }
    #cta01 .cta-download-img img:last-child {
      max-height: 145px !important;
      max-width: 150px !important;
    }
  }
  @media (max-width: 767px) {
    #cta01 .cta-download-img {
      max-width: 300px;
      justify-content: center;
    }
    #cta01 .cta-download-img img:first-child {
      max-height: 105px !important;
      max-width: 190px !important;
    }
    #cta01 .cta-download-img img:last-child {
      max-height: 105px !important;
      max-width: 92px !important;
    }
  }

  /* make booster item heading fit in one line */
  .scout-list.bpo-works li h4 {
    white-space: nowrap;
    width: fit-content;
    max-width: 100%;
    font-size: 1rem !important;
    letter-spacing: 0;
  }
  @media (max-width: 767px) {
    .scout-list.bpo-works li h4 {
      white-space: nowrap;
      font-size: .95rem !important;
    }
  }


  /* --- v8: recreate booster flow in HTML, remove duplicate image --- */
  .scout.sec{
    background: linear-gradient(180deg, #f6faff 0%, #ffffff 100%);
  }
  .scout .inner{
    max-width: 1180px;
  }
  .scout .intro{
    text-align: center;
    font-size: 1rem;
    line-height: 1.9;
    color: #36507b;
    margin-bottom: 28px;
  }
  .scout-list.bpo-works{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 46px;
    align-items: stretch;
    margin-top: 18px;
    position: relative;
  }
  .scout-list.bpo-works li{
    position: relative;
    width: auto !important;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
    border: 2px solid #dbe8ff;
    border-radius: 30px;
    box-shadow: 0 16px 38px rgba(26, 67, 145, .08);
    padding: 26px 22px 24px !important;
    text-align: left;
    overflow: visible;
  }
  .scout-list.bpo-works li:before{
    content: '';
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 20px;
    background: linear-gradient(135deg, #3f7cff 0%, #6da3ff 55%, #ffd65c 100%);
    box-shadow: 0 14px 28px rgba(50, 102, 215, .18);
    margin: 0 0 18px;
  }
  .scout-list.bpo-works li:not(:last-child):after{
    content: '›';
    position: absolute;
    right: -32px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 68px;
    line-height: 1;
    color: #2f67ff;
    font-weight: 700;
    text-shadow: 0 6px 18px rgba(47, 103, 255, .18);
  }
  .scout-list.bpo-works li h4{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    margin: 0 0 18px;
    padding: 0 22px;
    border-radius: 999px;
    background: linear-gradient(90deg, #144ab0 0%, #215fd3 100%);
    color: #fff !important;
    font-size: 1.02rem;
    line-height: 1.2;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 10px 24px rgba(20, 74, 176, .2);
  }
  .scout-list.bpo-works li p{
    margin: 0;
    color: #24344f !important;
    font-size: 1rem;
    line-height: 1.9;
    font-weight: 700;
  }
  @media (max-width: 900px){
    .scout-list.bpo-works{
      grid-template-columns: 1fr;
      gap: 18px;
    }
    .scout-list.bpo-works li{
      padding: 22px 18px 20px !important;
      border-radius: 24px;
    }
    .scout-list.bpo-works li:not(:last-child):after{
      content: '⌄';
      right: 50%;
      top: auto;
      bottom: -26px;
      transform: translateX(50%);
      font-size: 44px;
    }
    .scout-list.bpo-works li h4{
      font-size: .96rem;
      min-height: 52px;
      padding: 0 18px;
      margin-bottom: 14px;
    }
    .scout-list.bpo-works li p{
      font-size: .95rem;
      line-height: 1.82;
    }
  }


  /* --- v9: clearer arrows between booster cards + FAQ update --- */
  .scout-list.bpo-works{
    gap: 64px !important;
  }
  .scout-list.bpo-works li{
    overflow: visible !important;
  }
  .scout-list.bpo-works li:not(:last-child):after{
    content: '' !important;
    position: absolute;
    right: -46px !important;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border-top: 8px solid #2f67ff;
    border-right: 8px solid #2f67ff;
    transform-origin: center;
    rotate: 45deg;
    box-sizing: border-box;
    filter: drop-shadow(0 8px 12px rgba(47,103,255,.18));
  }
  .scout-list.bpo-works li:not(:last-child):before{
    box-shadow: 0 14px 28px rgba(50, 102, 215, .18);
  }
  .scout-list.bpo-works li:not(:last-child) .flow-line,
  .scout-list.bpo-works li:not(:last-child) span.flow-line{display:none;}
  .scout-list.bpo-works li:not(:last-child) .dummy{display:none;}
  .scout-list.bpo-works li:nth-child(1)::selection{background:transparent}
  .scout-list.bpo-works li:not(:last-child){position:relative;}
  .scout-list.bpo-works li:not(:last-child)::marker{content:'';}
  .scout-list.bpo-works li:not(:last-child) > *{position:relative;z-index:1;}
  /* thin connector line before arrow head */
  .scout-list.bpo-works li:not(:last-child) .arrow-connector{display:none;}
  .scout-list.bpo-works li:not(:last-child){--arrow-line-color:#8eb4ff;}
  .scout-list.bpo-works li:not(:last-child)::after{background:none;}
  .scout-list.bpo-works li:not(:last-child)::before{z-index:1;}
  .scout-list.bpo-works li:not(:last-child) em.arrowline{display:none;}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  .scout-list.bpo-works li:not(:last-child)::before{}
  .scout-list.bpo-works li:not(:last-child) {
  }
  .scout-list.bpo-works li:not(:last-child) .spacer{display:none;}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  .scout-list.bpo-works li:not(:last-child)::before{}
  .scout-list.bpo-works li:not(:last-child)::after,
  .scout-list.bpo-works li:not(:last-child)::before{}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  /* line */
  .scout-list.bpo-works li:not(:last-child) .line-holder{display:none;}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::before{}
  .scout-list.bpo-works li:not(:last-child)::after{}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  .scout-list.bpo-works li:not(:last-child)::before{}
  .scout-list.bpo-works li:not(:last-child) {
  }
  .scout-list.bpo-works li:not(:last-child):has(h4){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  .scout-list.bpo-works li:not(:last-child)::before{}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  .scout-list.bpo-works li:not(:last-child) .flow{display:none;}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  .scout-list.bpo-works li:not(:last-child)::before{}
  .scout-list.bpo-works li:not(:last-child){ }
  .scout-list.bpo-works li:not(:last-child)::after{}
  /* actual connector */
  .scout-list.bpo-works li:not(:last-child) > h4::after{
    content:'';
    position:absolute;
    right:-52px;
    top:50%;
    transform:translateY(-50%);
    width:34px;
    height:6px;
    background:linear-gradient(90deg,#79a3ff,#2f67ff);
    border-radius:999px;
    box-shadow:0 4px 10px rgba(47,103,255,.15);
  }
  @media (max-width: 900px){
    .scout-list.bpo-works{
      gap: 22px !important;
    }
    .scout-list.bpo-works li:not(:last-child):after{
      right: 50% !important;
      top: auto !important;
      bottom: -31px !important;
      transform: translateX(50%) rotate(135deg) !important;
      width: 22px;
      height: 22px;
      border-top-width: 7px;
      border-right-width: 7px;
    }
    .scout-list.bpo-works li:not(:last-child) > h4::after{
      display:none;
    }
  }


  /* --- v10: refine booster section PC layout --- */
  @media (min-width: 901px){
    .scout .inner{
      max-width: 1280px;
    }
    .scout .head-ttl{
      margin-bottom: 18px;
    }
    .scout .intro{
      margin-bottom: 32px;
    }
    .scout-list.bpo-works{
      display: flex !important;
      justify-content: center;
      align-items: stretch;
      gap: 82px !important;
      max-width: 1220px;
      margin: 26px auto 0;
    }
    .scout-list.bpo-works li{
      flex: 0 0 300px;
      width: 300px !important;
      min-height: 430px;
      padding: 28px 24px 26px !important;
      border-radius: 28px;
      box-shadow: 0 18px 38px rgba(26,67,145,.08);
    }
    .scout-list.bpo-works li:before{
      width: 58px;
      height: 58px;
      border-radius: 18px;
      margin: 0 0 20px;
    }
    .scout-list.bpo-works li h4{
      min-height: 54px;
      padding: 0 18px;
      margin: 0 0 18px;
      font-size: 0.96rem;
    }
    .scout-list.bpo-works li p{
      font-size: 0.96rem;
      line-height: 1.88;
    }
    /* reset awkward previous connector */
    .scout-list.bpo-works li:not(:last-child) > h4::after{
      display:none !important;
    }
    .scout-list.bpo-works li:not(:last-child):after{
      content:'' !important;
      position:absolute;
      right:-58px !important;
      top:50%;
      transform:translateY(-50%) rotate(45deg) !important;
      width:26px;
      height:26px;
      border-top:7px solid #2f67ff;
      border-right:7px solid #2f67ff;
      border-radius:2px;
      box-sizing:border-box;
      background:none;
      filter: drop-shadow(0 6px 10px rgba(47,103,255,.16));
    }
    .scout-list.bpo-works li:not(:last-child) span.pc-flow-line,
    .scout-list.bpo-works li:not(:last-child) i.pc-flow-line{
      display:none;
    }
    /* small line before chevron */
    .scout-list.bpo-works li:not(:last-child){
      position: relative;
    }
    .scout-list.bpo-works li:not(:last-child)::selection{background:transparent;}
    .scout-list.bpo-works li:not(:last-child){ }
    .scout-list.bpo-works li:not(:last-child)::before{ }
    .scout-list.bpo-works li:not(:last-child){ }
    .scout-list.bpo-works li:not(:last-child) > p{position:relative;}
    .scout-list.bpo-works li:not(:last-child) > p::after{
      content:'';
      position:absolute;
      right:-51px;
      top:50%;
      transform:translateY(-50%);
      width:38px;
      height:6px;
      background:linear-gradient(90deg,#93b6ff,#2f67ff);
      border-radius:999px;
      box-shadow:0 4px 10px rgba(47,103,255,.12);
    }
  }


  /* --- v11: add icons to booster cards --- */
  .scout-list.bpo-works li:before {
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 34px 34px, 100% 100% !important;
  }
  @media (min-width: 901px){
    .scout-list.bpo-works li:before {
      background-size: 32px 32px, 100% 100% !important;
    }
  }
  .scout-list.bpo-works li:nth-child(1):before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%20fill%3D%27none%27%3E%0A%3Cpath%20d%3D%27M14%2046h36%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M20%2042V28%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M32%2042V18%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M44%2042V24%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M18%2018l9-5%208%204%2011-6%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%0A%3C/svg%3E"), linear-gradient(135deg, #3f7cff 0%, #6da3ff 55%, #ffd65c 100%) !important;
  }
  .scout-list.bpo-works li:nth-child(2):before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%20fill%3D%27none%27%3E%0A%3Crect%20x%3D%2712%27%20y%3D%2714%27%20width%3D%2740%27%20height%3D%2730%27%20rx%3D%276%27%20stroke%3D%27white%27%20stroke-width%3D%274%27/%3E%0A%3Cpath%20d%3D%27M20%2024h24%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M20%2032h16%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M40%2046c0-5.523%204.477-10%2010-10%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M46%2031l4%205-6%203%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%0A%3C/svg%3E"), linear-gradient(135deg, #3f7cff 0%, #6da3ff 55%, #ffd65c 100%) !important;
  }
  .scout-list.bpo-works li:nth-child(3):before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%20fill%3D%27none%27%3E%0A%3Cpath%20d%3D%27M16%2044l10-10%208%208%2014-18%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M42%2024h10v10%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%0A%3Cpath%20d%3D%27M14%2050h36%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%0A%3C/svg%3E"), linear-gradient(135deg, #3f7cff 0%, #6da3ff 55%, #ffd65c 100%) !important;
  }


  /* --- v12: remove arrows between booster cards --- */
  .scout-list.bpo-works li:not(:last-child):after,
  .scout-list.bpo-works li:not(:last-child) > p::after,
  .scout-list.bpo-works li:not(:last-child) > h4::after {
    display: none !important;
    content: none !important;
  }
  @media (min-width: 901px){
    .scout-list.bpo-works{
      gap: 54px !important;
    }
  }


  /* --- v13: CTA download copy + preserve original image ratio --- */
  #cta01 .cta-box .cnt {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 560px;
    align-items: center;
    gap: 34px;
  }
  #cta01 .cta-box .cnt > p {
    margin: 0;
    line-height: 1.9;
  }
  #cta01 .cta-download-img {
    width: 100%;
    max-width: 560px;
    margin: 0;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
  }
  #cta01 .cta-download-img img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center;
    aspect-ratio: auto !important;
    flex: 0 0 auto !important;
  }
  #cta01 .cta-download-img img:first-child {
    width: 330px !important;
    max-width: 330px !important;
  }
  #cta01 .cta-download-img img:last-child {
    width: 220px !important;
    max-width: 220px !important;
  }
  #cta01 .btn-wrap .btn-download {
    min-width: 560px;
  }
  @media (max-width: 1024px) {
    #cta01 .cta-box .cnt {
      grid-template-columns: minmax(0, 1fr) 470px;
      gap: 24px;
    }
    #cta01 .cta-download-img {
      max-width: 470px;
    }
    #cta01 .cta-download-img img:first-child {
      width: 275px !important;
      max-width: 275px !important;
    }
    #cta01 .cta-download-img img:last-child {
      width: 185px !important;
      max-width: 185px !important;
    }
    #cta01 .btn-wrap .btn-download {
      min-width: 460px;
    }
  }
  @media (max-width: 767px) {
    #cta01 .cta-box .cnt {
      display: block !important;
    }
    #cta01 .cta-box .cnt > p {
      margin-bottom: 16px;
    }
    #cta01 .cta-download-img {
      max-width: 300px;
      margin: 0 auto;
      justify-content: center;
      gap: 10px;
    }
    #cta01 .cta-download-img img:first-child {
      width: 185px !important;
      max-width: 185px !important;
    }
    #cta01 .cta-download-img img:last-child {
      width: 105px !important;
      max-width: 105px !important;
    }
    #cta01 .btn-wrap .btn-download {
      min-width: 100%;
    }
  }


  /* --- v14: keep KV lead text in 2 lines on PC --- */
  @media (min-width: 768px){
    #kv.kv-pc .kv-left .subtxt{
      width: 100%;
      max-width: 1120px;
      font-size: clamp(26px, 2.55vw, 40px);
      line-height: 1.55;
      letter-spacing: .01em;
      white-space: normal;
      word-break: keep-all;
      margin-top: 22px;
      margin-bottom: 26px;
    }
    #kv.kv-pc .kv-left .subtxt br{
      display: block;
    }
  }


  /* --- v15: force FV lead copy into exactly 2 lines on PC --- */
  @media (min-width: 768px) {
    #kv.kv-pc .kv-left .subtxt.kv-lead-2line {
      width: 100%;
      max-width: 820px;
      margin: 18px auto 24px;
      padding: 0;
      text-align: left;
      font-size: clamp(21px, 1.62vw, 24px) !important;
      line-height: 1.75 !important;
      letter-spacing: .015em;
      font-weight: 900;
    }

    #kv.kv-pc .kv-left .subtxt.kv-lead-2line span {
      display: block;
      /* 既定は折り返し可。nowrap（2行固定）は十分な幅があるときだけ下で復活させる */
      white-space: normal;
    }
  }

  /* 横幅に余裕がある大型デスクトップでのみ各文を1行（=きれいな2行）に固定 */
  @media (min-width: 1300px) {
    #kv.kv-pc .kv-left .subtxt.kv-lead-2line span {
      white-space: nowrap;
    }
  }

  @media (min-width: 768px) and (max-width: 1180px) {
    #kv.kv-pc .kv-left .subtxt.kv-lead-2line {
      font-size: clamp(18px, 1.55vw, 22px) !important;
      max-width: 720px;
    }
    /* この幅帯では左カラムの縮小を妨げない＆フォーム幅を確保する */
    .kv-layout{ gap: 28px; }
    .kv-left{ min-width: 0; }
    /* nowrap を解除して折り返し可にする（左カラムの min-content を下げる） */
    #kv.kv-pc .kv-left .subtxt.kv-lead-2line span{ white-space: normal; }
    /* フォームは縮みすぎないよう最小幅を確保 */
    .kv-right{ flex: 0 1 380px; min-width: 320px; }
  }


  /* --- v16: make CTA box taller --- */
  #cta01 .cta-box {
    min-height: 560px;
    padding-top: 64px !important;
    padding-bottom: 58px !important;
  }

  #cta01 .cta-box .cnt {
    margin-top: 34px;
  }

  #cta01 .cta-box .btn-wrap {
    margin-top: 42px !important;
  }

  @media (max-width: 1024px) {
    #cta01 .cta-box {
      min-height: 520px;
      padding-top: 52px !important;
      padding-bottom: 48px !important;
    }
  }

  @media (max-width: 767px) {
    #cta01 .cta-box {
      min-height: auto;
      padding-top: 34px !important;
      padding-bottom: 34px !important;
    }

    #cta01 .cta-box .cnt {
      margin-top: 22px;
    }

    #cta01 .cta-box .btn-wrap {
      margin-top: 28px !important;
    }
  }


  /* --- v18: tighten spacing in booster section --- */
  .scout.sec {
    padding-top: 72px !important;
    padding-bottom: 78px !important;
  }
  .scout .head-ttl {
    margin-bottom: 16px !important;
  }
  .scout .intro {
    margin-bottom: 24px !important;
    line-height: 1.75;
  }

  @media (min-width: 901px) {
    .scout .inner {
      max-width: 1200px;
    }
    .scout-list.bpo-works {
      margin-top: 16px !important;
      gap: 44px !important;
      align-items: stretch;
    }
    .scout-list.bpo-works li {
      flex: 0 0 320px;
      width: 320px !important;
      min-height: 0 !important;
      padding: 30px 28px 28px !important;
      border-radius: 28px;
    }
    .scout-list.bpo-works li:before {
      margin-bottom: 18px !important;
    }
    .scout-list.bpo-works li h4 {
      margin-bottom: 18px !important;
    }
    .scout-list.bpo-works li p {
      margin-bottom: 0 !important;
      line-height: 1.75 !important;
    }
  }

  @media (max-width: 900px) {
    .scout.sec {
      padding-top: 56px !important;
      padding-bottom: 60px !important;
    }
    .scout .head-ttl {
      margin-bottom: 12px !important;
    }
    .scout .intro {
      margin-bottom: 18px !important;
    }
    .scout-list.bpo-works {
      gap: 16px !important;
      margin-top: 10px !important;
    }
    .scout-list.bpo-works li {
      min-height: 0 !important;
      padding: 22px 18px 20px !important;
    }
    .scout-list.bpo-works li h4 {
      margin-bottom: 14px !important;
    }
    .scout-list.bpo-works li p {
      line-height: 1.7 !important;
    }
  }



/* ===== migrated from index.php inline <style> (.trouble / .functions) ===== */
  .trouble {
  position: relative;
  overflow: hidden;
  background-color: #f5f5f5;
}
.trouble .inner,
.functions .inner {
  position: relative;
  z-index: 1;
}
.trouble .head-ttl .en,
.functions .head-ttl .en {
  margin-bottom: -0.6em;
}
.trouble .intro,
.functions .intro {
  text-align: center;
  font-weight: 700;
  line-height: 1.9;
  margin: -10px auto 36px;
}
.simple-check-list {
  display: grid;
  gap: 14px;
  max-width: 980px;
  margin: 0 auto;
}
.simple-check-list li {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 68px;
  background-color: #fff;
  border: solid 1px #dfe6ff;
  border-left: solid 6px #2d62eb;
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(45, 98, 235, 0.07);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.55;
  padding: 16px 20px 16px 54px;
}
.simple-check-list li::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 50%;
  width: 22px;
  height: 22px;
  background: url(../img/icon-check.svg) no-repeat center / contain;
  transform: translateY(-50%);
}
.trouble-solution {
  position: relative;
  text-align: center;
  background-color: #2d62eb;
  color: #fff;
  padding: 30px 20px;
  margin: 44px auto 0;
  border-radius: 8px;
  box-shadow: 0 12px 24px rgba(45, 98, 235, 0.24);
  max-width: 980px;
}
.trouble-solution::before {
  content: "";
  position: absolute;
  top: -36px;
  left: 50%;
  width: 64px;
  height: 32px;
  background-image: url(../img/icon-arr2.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateX(-50%);
}
.trouble-solution h3 {
  color: #fff;
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.55;
  margin-bottom: 0.55em;
}
.trouble-solution p {
  line-height: 1.85;
  font-weight: 700;
}

@media (min-width: 769px) {
  .trouble .intro,
  .functions .intro {
    margin-bottom: 42px;
  }
  .simple-check-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
  }
  .simple-check-list li {
    min-height: 74px;
    font-size: 1.0625rem;
    padding: 18px 24px 18px 58px;
  }
  .trouble-solution {
    padding: 34px 40px;
    margin-top: 58px;
  }
  .trouble-solution h3 {
    font-size: 1.9rem;
  }
}

.point-list figure img {
  max-width: 460px;
}
/* ===== 着座ブースターでやれること（改善版） ===== */
.cb-booster.sec{padding:64px 0;}
.cb-booster .inner{max-width:1160px;margin:0 auto;padding:0 24px;}

.cb-head{text-align:center;}
.cb-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--bpo-blue);font-weight:800;letter-spacing:.08em;font-size:.95rem;margin-bottom:12px;}
.cb-eyebrow::before,.cb-eyebrow::after{content:"";display:block;width:28px;height:2px;background:var(--bpo-blue);border-radius:999px;}
.cb-ttl{margin:0;color:#1c63ea;font-size:2.2rem;line-height:1.2;font-weight:900;letter-spacing:.02em;text-decoration:underline;text-decoration-thickness:4px;text-underline-offset:12px;}
.cb-lead{margin:26px auto 0;font-size:1.1rem;font-weight:800;line-height:1.7;color:#304564;}
.cb-lead .cb-accent{color:var(--bpo-blue);}

.cb-cards{list-style:none;margin:42px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;position:relative;}
.cb-cards .cb-card{position:relative;display:flex;flex-direction:column;padding:42px 36px 32px;border-radius:28px;background:#fff;border:3px solid #dbe7ff;box-shadow:0 20px 50px rgba(36,91,198,.12);}
.cb-step{position:absolute;top:18px;right:22px;color:rgba(21,86,216,.16);font-size:3rem;line-height:1;font-weight:900;letter-spacing:-.04em;}
.cb-icon{width:72px;height:72px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,#276cf4 0%,#6da0ff 58%,#e5c341 100%);box-shadow:0 16px 34px rgba(22,91,216,.24);margin-bottom:24px;}
.cb-icon svg{width:38px;height:38px;stroke:#fff;stroke-width:4;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.cb-pill{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;color:#fff;font-size:1.1rem;font-weight:900;background:linear-gradient(135deg,#1451c7,#083d9d);box-shadow:0 18px 34px rgba(16,78,188,.2);}
.cb-body{margin:24px 0 28px;font-size:1.05rem;line-height:1.7;font-weight:700;color:#253453;letter-spacing:.02em;}
.cb-body strong{color:var(--bpo-blue);}
.cb-tag{align-self:flex-start;margin-top:auto;padding:8px 16px;border-radius:999px;background:#eef4ff;color:var(--bpo-blue);font-size:.85rem;font-weight:800;letter-spacing:.04em;}

/* カード間の矢印（PC） */
.cb-cards::before,.cb-cards::after{content:"";position:absolute;top:120px;width:24px;height:24px;border-top:5px solid rgba(21,86,216,.22);border-right:5px solid rgba(21,86,216,.22);transform:rotate(45deg);z-index:2;}
.cb-cards::before{left:calc((100% - 88px) / 3 + 4px);}
.cb-cards::after{left:calc((100% - 88px) / 3 * 2 + 48px);}

.cb-bottom{margin:36px auto 0;max-width:980px;min-height:64px;display:flex;align-items:center;justify-content:center;gap:14px;padding:18px 28px;border-radius:18px;background:linear-gradient(135deg,rgba(21,86,216,.09),rgba(56,190,173,.1));border:2px solid #dce8ff;color:#172d58;font-size:1.05rem;font-weight:900;line-height:1.6;text-align:center;}
.cb-dot{flex:0 0 auto;width:11px;height:11px;border-radius:50%;background:var(--bpo-blue);box-shadow:18px 0 0 #36b9a8,36px 0 0 #e2bd31;margin-right:40px;}

/* タブレット〜小型デスクトップ：3カラムを維持しつつ詰める */
@media (min-width:768px) and (max-width:1080px){
  .cb-cards{gap:20px;}
  .cb-cards .cb-card{padding:32px 22px 26px;}
  .cb-pill{font-size:.98rem;padding:0 16px;min-height:46px;line-height:1.3;text-align:center;}
  .cb-body{font-size:.95rem;margin:18px 0 22px;}
  .cb-step{font-size:2.4rem;top:14px;right:16px;}
  .cb-icon{width:60px;height:60px;margin-bottom:18px;}
  /* gap が 44px 前提の calc 配置なので、この帯では矢印を隠す */
  .cb-cards::before,.cb-cards::after{display:none;}
}

@media (max-width:767px){
  .cb-booster.sec{padding:44px 0;}
  .cb-ttl{font-size:1.5rem;}
  .cb-lead{font-size:.98rem;margin-top:18px;}
  .cb-cards{grid-template-columns:1fr;gap:20px;margin-top:30px;}
  .cb-cards::before,.cb-cards::after{display:none;}
  .cb-card{padding:32px 24px 30px;}
  .cb-bottom{font-size:.95rem;padding:16px 20px;}
  .cb-dot{display:none;}

  /* SP: POINT 画像のはみ出し防止（PC用 max-width:460px を上書き） */
  .point-list li .txt{width:100%;margin-right:0;}
  .point-list figure{width:100%;}
  .point-list figure img{width:100%;max-width:100%;height:auto;margin:0 auto;}
}
