 @charset "utf-8";
/* CSS Document */

  :root{
    --pink-bg: #f0a6bf;
    --pink-bg-deep: #e88fae;
    --pink-accent: #ea5d79;
    --pink-accent2: #e61b5f;
    --pink-line: #f2c9d6;
    --pink-h:#f7c1c2;
    --yellow: #fff799;
    --yellow-accent: #e8e654;
    --dark: #333333;
    --black: #000;
    --darkcircle: #2e2a2a;
    --cream: #fff8f5;
    --gray-text: #555555;
    --border-gray: #e6e2df;
  }


  html { scroll-behavior: smooth; }
 .tiresize_guarantee_wrap{
    margin:0;
    font-family:"Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
    font-weight: 900;
    color: var(--dark);
    background:#fff;
    line-height:1.7;
    -webkit-font-smoothing:antialiased;
  }
  img{ max-width:100%; display:block; }
 .tiresize_guarantee_wrap *{ box-sizing: border-box; }
  .tiresize_guarantee_wrap a{ color:inherit; }

  .tiresize_guarantee_wrap .only-sp{ display:inline; }
  .tiresize_guarantee_wrap .only-pc{ display:none; }

  .tiresize_guarantee_wrap h1{
    font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN", sans-serif;
    font-weight: 900;
  }
 
  .tiresize_guarantee_wrap .wrap{ max-width:1000px; margin:0 auto; padding:0 20px; }
 
  .tiresize_guarantee_wrap ul.breadcrumbs {
    display: flex;
    padding: 10px 2%;
    margin: 0;
    background-color: #efefef;
  }
  .tiresize_guarantee_wrap ul.breadcrumbs > li {
    display: block;
    font-size: var(--compact-font-size);
  }
  .tiresize_guarantee_wrap ul.breadcrumbs > li + li {
    margin-left: 3px;
  }
  .tiresize_guarantee_wrap ul.breadcrumbs > li + li::before {
    content: "＞";
    margin-right: 3px;
  }
  

  /* ---------- HERO ---------- */
  .hero{
    position:relative;
    background: linear-gradient(180deg,var(--pink-bg) 0%, var(--pink-bg-deep) 100%);
    overflow:hidden;
  }
  .hero-inner{ margin:0 auto; }
  .hero img.hero-visual{ width:100%; height:auto; }
  .hero-pc-visual{ display:none; }

  .hero-copy{
    text-align:center;
    padding: 2% 1% 1% 1%;
    background: #32a7a9;
  }
  .hero-copy .eyebrow{
    color: #e8e654;
    font-size: 13px;
    font-weight: bold;
  }
  .hero-copy h1{
    color:#fff;
    font-size:13px;
    line-height:1.5;
    margin:0 0 4px;
    text-shadow: 1px 1px 0 rgba(0,0,0,.08);
    font-weight: bold;
  }
  .hero-copy .sub{
    color: var(--yellow);
    font-weight:700;
    font-size:15px;
    margin-top:8px;
  }

  /* ---------- JUMP NAV ---------- */
  .jump-nav{
    background:#fff;
    padding:24px 0 4px;
  }
  .jump-nav-list{
    list-style:none;
    margin:0 auto;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:14px;
    max-width:320px;
  }
  .jump-nav-list a{
    display:block;
    background:#6e6e6e;
    color:#fff;
    text-align:center;
    font-weight:800;
    font-size:16px;
    padding:8px 20px 10px;
    border-radius:25px;
    text-decoration:none;
    transition:.25s;
  }
  .jump-nav-list a:hover{
    background:#575757;
    text-decoration:none;
  }
  .jump-anchor{
    scroll-margin-top: 120px; /* ヘッダー高さ分のオフセット（モバイル） */
  }

  /* ---------- SECTION GENERIC ---------- */
  section{ padding: 20px 0 20px; }
  .section-cream{ background-image:url(../images/back.webp); background-size: cover; }
  h2.section-title{
    text-align:center;
    font-size:19px;
    font-weight:900;
  }
  h2.section-title .en{
    display:block;
    font-size:11px;
    letter-spacing:.15em;
    color: var(--pink-accent);
    font-weight:700;
    margin-bottom:6px;
  }

  /* ---------- LEAD / TROUBLE ---------- */
  .trouble{ padding: 34px 0 0; }
  .trouble .wrap{ margin-bottom:34px; }
  .trouble .wrap:last-child{ margin-bottom:0; }
  .trouble h2{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:14px;
    font-weight:900;
    color:var(--black);
    background:var(--pink-h);
    padding: 0px 15px;
    margin:0 0 18px;
  }
  .trouble h2 img.icon{
    width:22px;
    height:auto;
    flex-shrink:0;
  }
  .hl{
    background: linear-gradient(transparent 62%, #fff34d 62%);
  }
  .pink{
    color: var(--pink-accent2);
    font-weight: 900;
  }
  .trouble h3{
    display:inline-block;
    color:var(--pink-accent2);
    font-weight:800;
    font-size:13px;
    margin:0 0;
  }
  .trouble-body{
    display:flex;
    align-items:flex-start;
    gap:14px;
  }
  .trouble-body img{
    width:100px;
    flex-shrink:0;
  }
  .trouble-body2 img{
    width:124px;
    flex-shrink:0;
  }
  .trouble-text{ font-size:11px; color:#333; line-height:1.6; margin:0; }

  /* ---------- RECOMMEND LIST ---------- */
  ul.recommend-list{
    list-style:none;
    margin:0 auto;
    padding:0;
    max-width:480px;
  }
  ul.recommend-list li{
    align-items: flex-start;
    margin-bottom: 0;
    font-size: 11px;
    font-weight: 900;
  }
  ul.recommend-list li::before{
    content: "●";
    color: var(--pink-h);
    font-size: 11px;
    line-height: 1.4;
    padding-right: 10px;
  }

  /* ---------- TARGET / OK-NG ---------- */
  .target-outer{
    background: #fbe0e1;
    border-radius:20px;
    padding:1px 18px 26px;
    max-width:900px;
    margin:0 auto;
  }
  .target-outer > h2.section-title{ margin-bottom:16px; }
  .target-lead{
    background: var(--yellow);
    text-align: center;
    font-weight: 900;
    font-size: 14px;
    padding: 10px 14px;
    margin: 0 0 2px;
    line-height: 1.2rem;
    letter-spacing: -0.05rem;
  }
  .target-condition{
    background:var(--yellow);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
    text-align:center;
    padding:14px;
    margin:0 0 14px;
    font-weight:800;
    font-size:17px;
    color:var(--pink-accent);
    line-height: 1.3rem;
  }
  .condition-badge{
    flex-shrink:0;
    background:var(--pink-accent2);
    color:#fff;
    width:46px; height:46px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:17px;
    font-weight:900;
  }
  .condition-text-sub{
    font-size: 12px;
  }
  .target-notes{
    font-size: 11px;
    color: var(--black);
    line-height: 0.9rem;
    margin-bottom: 10px;
    font-weight: 600;
  }
  .target-notes p{ margin:3px 0; }

  .target-panels{
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .target-panel{
    position:relative;
    background:#ece7e4;
    border-radius:16px;
    padding: 8px 10px 24px;
  }
  .panel-head{
    background: var(--black);
    color: #fff;
    font-weight: 800;
    text-align: center;
    font-size: 13px;
    padding: 2px 10px 0px;
    margin-bottom: 12px;
  }
  .target-icons{
    display:flex;
    justify-content:center;
    gap:10px;
    flex-wrap:nowrap;
  }
  .target-icons figure{ margin:0; width:33%; text-align:center; }
  .target-icons img{ width:100%; }
  .target-icons figcaption{
    font-size:10px;
    font-weight:900;
    margin-top:8px;
    color:var(--dark);
  }
  .caution-badge{
    position:absolute;
    top:0; right:0;
    width:64px; height:64px;
    background:var(--pink-accent2);
    color: #e8e654;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-size:11px;
    font-weight:800;
    line-height:1.3;
    box-shadow:0 2px 6px rgba(0,0,0,.15);
    transform: rotate(20deg);
  }

  /* ---------- 3 ANSHIN ---------- */
  .anshin-outer{
    background-repeat: repeat;
    border-radius:18px;
    padding:20px 16px 24px;
    max-width:720px;
    margin:0 auto;
  }
  .anshin-title{
    text-align: center;
    font-weight: 900;
    font-size: 13px;
    color: #1a1a1a;
    margin: 0px 0 16px;
    border-bottom: 2.4px solid #1a1a1a;
    letter-spacing: -0.01rem;
  }
  .anshin-title .num{
    color:var(--pink-accent2);
    font-size:42px;
    font-weight:900;
    margin:0 1px;
  }
  .anshin-card{
    background-color: #fff;
    border-radius: 12px;
    margin: 10px auto 0px;
  }
  .anshin-card:last-child{ margin-bottom:0; }
  .anshin-1{
    display: flex;
    align-items: center;
    gap: 10px;
    background: #ffffff;
    border-radius: 8px 8px 0px 0px;
    border-bottom: #ecdcc5 2px solid;
    padding: 7px 12px;
  }
  .anshin-2{
    padding-bottom: 4px;
  }
  .anshin-badge{
    flex-shrink: 0;
    background: var(--pink-accent);
    color: #fff;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 12px;
    padding-left: 5px;
    letter-spacing: -0.08rem;
    position: absolute;
  }
  .anshin-badge .num{
    font-size:20px;
    color:var(--yellow-accent);
    position: relative;
    top: 2px;
  }
  .anshin-1 h3{
    margin:0;
    font-size: 24px;
    font-weight: 900;
    color:#1a1a1a;
    flex:1;
    text-align:center;
  }
  .anshin-card ul{
    list-style:none;
    margin: 6px auto;
  }
  .anshin-card li{
    position: relative;
    padding-left: 12px;
    font-size: 14px;
    color: #222;
    font-weight: 700;
    margin-bottom: 0px;
  }
  .anshin-card li:last-child{ margin-bottom:0; }
  .anshin-card li::before{
    content:"•";
    color:var(--pink-accent);
    position:absolute;
    left:2px;
    font-weight:900;
  }

  /* ---------- STEP FLOW ---------- */
  .flow-title-bar{
    background:var(--pink-h);
    color:var(--black);
    text-align:center;
    font-weight:900;
    font-size:16px;
    padding: 4px 0 2px;
    margin-bottom:30px;
  }
  .step-list{ max-width:600px; margin:0 auto; }
  .step-item{
    display:flex;
    margin-bottom:30px;
    align-items:flex-start;
  }
  .step-item img.step-badge{ width:52px; flex-shrink:0; }
  .step-content{ flex:1; padding-top:2px; min-width:0; }
  .step-content h3{
    margin: 0 0 8px;
    font-size: 21px;
    font-weight: 900;
    color: var(--pink-accent2);
    border-bottom: 2px solid #2b2b2b;
    padding-bottom: 0px;
    padding-left: 10px;
  }
  .step-content p{ margin:0; font-size:12px; color:var(--black); line-height:1.6; letter-spacing: -0.01rem; }

  .step2-box{
    display:flex;
    align-items:center;
    gap:14px;
    background:#e7e7e7;
    border-radius:10px;
    padding:14px 16px;
    margin:12px auto;
  }
  .step2-list{ flex:1; }
  .step2-list p{ margin:4px 0; font-size:12px; font-weight:900; color:var(--black); line-height: 1.2rem; }
  .step2-note{ margin-top:12px; font-size:12.5px; color:#555; }

  /* ---------- USE CONDITIONS ---------- */
  .condition-outer{
    background-image:url(../images/back_2.webp);
    background-size: cover;
    background-repeat: repeat;
    background-color:#e9e4dc;
    border-radius:16px;
    padding:22px 18px 26px;
    max-width:720px;
    margin:0 auto 32px;
  }
  .condition-outer .terms-title{
    text-align:center;
    font-weight:800;
    font-size:17px;
    color:#222;
    margin:0 0 18px;
  }
  .condition-item{ margin-bottom:16px; }
  .condition-item:last-child{ margin-bottom:0; }
  .condition-item .bar{
    background:#cd5b6f;
    color:#fff;
    text-align:center;
    font-weight:800;
    font-size:13.5px;
    padding:0px 10px;
    border-radius:2px;
    margin-bottom:10px;
  }
  .condition-item p{
    font-size: 12px;
    color: var(--black);
    line-height: 1.5;
    margin: 0;
    padding: 0 2px;
  }

  table.detail-table{
    width:100%;
    max-width:680px;
    margin: 12px auto 0;
    border-collapse:collapse;
    font-size:11px;
    background:#fff;
    font-weight: 900;
    letter-spacing: -0.02rem;
  }
  table.detail-table caption{
    text-align:center;
    font-weight:800;
    font-size:14px;
    margin-bottom:10px;
    padding: 5px;
    color:#fff;
    background-color: #000;
  }
  table.detail-table th, table.detail-table td{
    border: 1.5px solid #9b9b9b;
    padding:10px 6px;
    text-align:left;
    vertical-align:middle;
  }
  table.detail-table td{
    width: 60%;
  }
  table.detail-table th{
    background: #e5e0d9;
    color: #000000;
    width:40%;
    font-weight:700;
    line-height: 1rem;
  }
  table.detail-table .detail-table-head{
    background-color: #484847;
    color: #fff;
    font-weight: bold;
    text-align: center;
  }
  table.detail-table2 th{
    background-color: #b0b0b0;
  }
   /* ---------- FAQ ---------- */
  .tiresize_guarantee_wrap .faq-wrap{ max-width:900px; margin:0 auto; }
  .tiresize_guarantee_wrap .faq-title{
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 22px;
    line-height: 1.6;
    background-color: #000;
    text-align: center;
    padding: 6px 0;
    letter-spacing: -0.05rem;
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel{
    overflow:hidden;
    background:#fff;
    margin: 0 0 12px;
    border-bottom: 2px solid #e7e7e7;
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel:last-child{ margin-bottom:0; }
  .tiresize_guarantee_wrap dl.tg-faq-panel dt{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 12px;
    cursor:pointer;
    background:#fff;
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel dt p{
    margin:0;
    flex:1;
    font-weight:900;
    font-size:13px;
    color:var(--dark);
    position:relative;
  }
  /*.tiresize_guarantee_wrap dl.tg-faq-panel dt p::before{
    content:"Q";
    position:absolute;
    left:0; top:50%;
    transform:translateY(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    width:24px; height:24px;
    border-radius:50%;
    background:var(--pink-accent2);
    color:#fff;
    font-size:12px;
  }*/
  .tiresize_guarantee_wrap dl.tg-faq-panel dt span{ flex-shrink:0; }
  .tiresize_guarantee_wrap dl.tg-faq-panel dt i{
    color:var(--pink-accent2);
    font-size:16px;
    transition:transform .2s;
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel.is-open dt i{
    transform:rotate(180deg);
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel dd{
    max-height:0;
    overflow:hidden;
    margin:0;
    background:#e7e7e7;
    transition:max-height .25s ease;
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel.is-open dd{
    max-height:400px;
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel dd{
    font-size:12px;
    line-height:1.7;
    color:#333;
    padding:0 16px 0 50px;
  }
  .tiresize_guarantee_wrap dl.tg-faq-panel.is-open dd{
    padding:16px 16px 16px 16px;
  }
  /* ---------- GUIDE COLUMNS ---------- */
  .guide-wrap{ max-width:640px; margin:0 auto; }
  .guide-title{
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 22px;
    line-height: 1.6;
    background-color: #000;
    text-align: center;
    padding: 6px 0;
    letter-spacing: -0.1rem;
  }
  .guide-block{ margin-bottom:24px; }
  .guide-block:last-child{ margin-bottom:0; }
  .guide-block h3{
    color:var(--pink-accent2);
    font-size:18px;
    font-weight:900;
    margin:0 0 8px;
    letter-spacing: -0.01rem;
  }
  .guide-block p{
    font-size: 13px;
    color: #333;
    line-height: 1.6;
    margin: 0;
    letter-spacing: -0.01rem;
  }
  .guide-link{
    color: #32a7a9 !important;
    text-decoration: underline;
  }
  /* ---------- CTA ---------- */
  .cta-section{
    background:#fff;
    padding: 30px 20px 46px;
    text-align:center;
    border-top: 2px solid #000;
  }
  .cta-section p.lead{
    padding-top: 16px;
    color: #222;
    font-weight: 800;
    margin: 0 0 20px;
    font-size: 14.5px;
    line-height: 1.7;
  }
  .cta-buttons{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:24px;
  }
  .cta-btn{
    display:inline-block;
    max-width:340px;
    margin:0 auto 14px;
    background:var(--pink-accent);
    color:#fff !important;
    font-weight:800;
    font-size:15px;
    padding:25px 30px;
    border-radius:50px;
    text-decoration:none;
    line-height:1.5;
  }
  .cta-btn.cta-chat{
    display:block;
    background:#3fb6ad;
    font-size:18px;
    margin-bottom:0;
    padding:20px 40px;
    border-radius: 30px 30px 0px 30px;
    color: var(--yellow-accent) !important;
    letter-spacing: -0.08rem;
  }
  .cta-chat-wrap{
    position:relative;
    display:inline-block;
    max-width:340px;
    width:100%;
  }
  .finger-icon-wrap{
    position:absolute;
    right:14px;
    bottom:28px;
    pointer-events:none;
  }
  .finger-icon{
    display:block;
    width:50px;
    height:auto;
  }

  footer{
    text-align:center;
    font-size:11px;
    color:#999;
    padding:0;
    background:#fafafa;
  }


  /* ---------- DESKTOP ---------- */
  @media (min-width:768px){
    .tiresize_guarantee_wrap .only-sp{ display:none; }
    .tiresize_guarantee_wrap .only-pc{ display:block; }
 
    .hero-copy .eyebrow,.hero-copy h1{ font-size: 32px; }
    .hero-copy { padding: 1% 1% 0.5% 0%; }
    .hero-sp-visual{ display:none; }
    .hero-pc-visual{ display:block; }
    .hero-copy h1{ letter-spacing: -0.08rem; }
    .hero-copy .sub{ font-size:18px; }

    .jump-nav-list{
      flex-direction:row;
      max-width:980px;
    }
    .jump-nav-list li{ flex:1; }
    .jump-nav-list a{
      font-size: 24px;
      padding: 12px 20px 15px;
    }
    .jump-anchor{
      scroll-margin-top: 100px; /* ヘッダー高さ分のオフセット（PC） */
    }

    h2.section-title{
      font-size: 28px;
      margin-top: 0;
    }

    .trouble-body{ max-width:980px; gap:30px; }
    .trouble-body img{ width:200px; }
    .trouble-body2 img{ width:240px; }
    .trouble-text{ font-size:22px; }
    .trouble h2{
      font-size:28px;
      gap: 100px;
      padding: 0px 80px;
    }
    .trouble h2 img.icon{ width:40px; }
    .trouble h3{ font-size:38px; }

    ul.recommend-list{ max-width:700px; margin-top:20px; }
    ul.recommend-list li{ font-size:22px; }

    .target-outer{ padding:32px 36px 36px; }
    .target-lead, .target-condition{ font-size:20px; }
    .target-condition{ font-size:30px; }
    .condition-badge{
      width: 60px;
      height: 60px;
      font-size: 20px;
    }
    .target-notes{
      font-size: 14px;
      letter-spacing: -0.05rem;
      margin-bottom: 16px;
    }
    .target-notes p{ margin:7px 0; }
    .target-panels{
      flex-direction:row;
      background:none;
      border-radius:16px;
      gap:0;
      position:relative;
    }
    .target-panel{
      background:#ece7e4;
      border-radius: 18px;
      padding: 0 18px 18px;
      flex:1;
    }
    .target-panel:first-child{ margin-right: 20px; }
    .panel-head{ font-size:20px; padding:0; margin-top: 20px; }
    .target-icons figcaption{ font-size:14px; }
    .caution-badge{
      top: -7px;
      right: -20px;
      width: 88px;
      height: 88px;
      font-size: 14px;
      background: #32a7a9;
      letter-spacing: -0.1rem;
    }
    .condition-text-sub{ font-size: 24px; }

    .section-cream{
      margin-top: 30px;
      padding-bottom: 50px;
    }

    .anshin-card{ flex-direction:column; align-items:center; text-align:center; }
    .anshin-card ul{
      text-align:left;
      margin: 6px auto 16px;
      margin-left: 80px;
    }
    .anshin-card li{
      padding-left: 24px;
      font-size: 24px;
    }
    .anshin-title{
      font-size: 32px;
      border-bottom: 5px solid #1a1a1a;
      margin: 0px 0 20px;
    }
    .anshin-title .num{ font-size: 56px; }
    .anshin-1{
      border-radius: 60px 60px 0px 0px;
      border-bottom: #ecdcc5 5px solid;
      padding: 16px 12px;
    }
    .anshin-1 h3{ font-size: 34px; }
    .anshin-badge{
      background: var(--pink-accent2);
      width: 70px;
      height: 70px;
      font-size: 18px;
      padding-left: 5px;
    }
    .anshin-badge .num{
      font-size: 34px;
      top: 5px;
    }

    .flow-title-bar{ font-size: 24px; }
    .step-content h3{
      font-size: 30px;
      margin: -8px 0 8px -3px;
      padding-left: 21px;
      border-bottom: 3px solid #2b2b2b;
    }
    .step-list{ max-width:800px; }
    .step-content p{ font-size: 21px; }
    .step2-list{
      display: grid;
      grid-template-columns: 1fr 1fr; /* PCは2列 */
      column-gap: 32px;
      row-gap: 8px;
    }
    .step2-box{
      padding: 14px 60px;
      margin: 21px auto;
    }
    .step2-list p{
      margin: 4px 8px;
      font-size: 24px;
    }
    .step-item img.step-badge{ width:80px; }
    .step-content-sub{ font-size: 16px; }

    .condition-outer{
      max-width:900px;
      padding:32px 40px 60px;
      margin-bottom: 70px;
    }
    .condition-outer .terms-title{ font-size: 30px; margin-bottom:22px; }
    .condition-item .bar{ font-size:24px; padding:9px; }
    .condition-item p{ font-size: 24px; text-align: left; }
    .tiresize_guarantee_wrap .faq-wrap { margin: 50px auto;
    }
    .tiresize_guarantee_wrap .faq-title {
    font-size: 24px;}
      .tiresize_guarantee_wrap dl.tg-faq-panel{
    border-bottom: 3px solid #e7e7e7;
    }
    .tiresize_guarantee_wrap dl.tg-faq-panel dt p {
    font-size: 18px;}
    .tiresize_guarantee_wrap dl.tg-faq-panel dd {
    font-size: 16px;}
    .tiresize_guarantee_wrap dl.tg-faq-panel dt i {
    font-size: 24px;}
    .guide-wrap{ max-width:900px;}
    .guide-title{ font-size:24px; }
    .guide-blocks{
      display: grid;
      grid-template-columns: repeat(2, 1fr); /* PCは2列 */
      gap: 32px;
    }
    .guide-block h3{ font-size: 20px; }
    .guide-block p{
      font-size: 18px;
      letter-spacing: -0.05rem;
    }

    table.detail-table{
      max-width:900px;
      font-size: 21px;
    }
    table.detail-table caption{
      font-weight: 700;
      font-size: 24px;
    }
    table.detail-table th, table.detail-table td{
      padding: 10px 42px;
    }

    .cta-section{
      margin:40px auto;
      text-align:center;
      border-top: none;
    }
    .cta-lead{
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      font-size: 22px;
      max-width: 980px;
      margin: 0 auto 50px;
      letter-spacing: -0.05rem;
    }
    .cta-lead::before,
    .cta-lead::after{
      content:"";
      flex:1;
      max-width:180px;
      height:3px;
      background:#222;
    }

    .cta-btn{
      font-size:21px;
      max-width:420px;
      align-items:center;
      justify-content:center;
      width:380px;
      min-height:72px;
      border-radius:999px;
      background:var(--pink-accent);
      color:#fff;
      font-weight:900;
      text-decoration:none;
      transition:.3s;
    }
    .cta-btn.cta-chat{
      font-size: 21px;
      text-align: left;
      width:100%;
      box-sizing:border-box;
    }
    .cta-btn:hover{
      opacity:.85;
      text-decoration:none;
    }
    .cta-chat-wrap{
      position:relative;
      display:inline-block;
      width:380px;
      max-width:100%;
    }
    .finger-icon-wrap{
      position:absolute;
      right:14px;
      bottom:28px;
      pointer-events:none;
    }
    .finger-icon{
      width:60px;
      height:auto;
    }
  }
