.main__body {
  .contents {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}

/* -------------------------------
feature-cookieless（クッキーレス配信の特徴）
------------------------------- */
.feature-cookieless {
  .col-md-row {
    margin-top: 64px;
    display: flex;
    flex-direction: column;
    gap: 64px;
  }
  .section {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .container-title {
    font-size: 28px;
    font-weight: 600;
    line-height: 1.6;
    display: flex;
    align-items: center;
    gap: 16px;

    .number {
      font-size: 40px;
      font-weight: 600;
      line-height: 1.6;
      letter-spacing: -1.5px;
      color: #004ea1;
    }
  }
  .container-image {
    background-color: #fff;
    padding: 24px;
    text-align: center;
    border-radius: 10px;
  }
  .container-body {
    display: inline-flex;
    flex-direction: column;
    gap: 24px;

    P {
      font-size: 16px;
      margin-top: 0;
    }
  }
}

/* -------------------------------
example-cookieless（導入事例）
------------------------------- */
.example-cookieless {
  .col-md-row {
    margin-top: 64px;
    display: flex;
    flex-direction: column;
    gap: 40px;
  }
  .card-contents {
    background-color: #fafafa;
    padding: 40px 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;

    .card-title {
      font-size: 22px;
      font-weight: 600;
      line-height: 1.6;
      margin-bottom: 0;
    }
    .card-mainbody {
      padding: 0;
      padding-top: 16px;
      border-top: 1px solid #ddd;

      .text {
        font-size: 16px;
        margin-bottom: 16px;
      }

      .row {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px;
        margin-right: 0;
        margin-left: 0;

        @media (max-width: 991px) {
          flex-direction: column;
          align-items: center;
        }
      }
      .column {
        flex-grow: 1;
        display: inline-flex;
        flex-direction: column;
        gap: 24px;

        @media (max-width: 991px) {
          width: 100%;
        }
      }

      .table {
        width: 100%;
        border-radius: 6px;
        overflow: hidden;
        text-align: center;
        margin-bottom: 0;

        th {
          background-color: #004ea1;
          color: #fff;
          font-size: 12px;
          font-weight: 600;
          padding: 8px;
          border: none;
          height: 24px;
          line-height: 24px;
        }
        th:not(:nth-of-type(1)) {
          border-left: 2px solid #fff;
        }
        td {
          background-color: #fff;
          font-size: 14px;
          padding: 8px;
          border: 0;
          height: 32px;
          line-height: 32px;
        }
        td:not(:nth-of-type(1)) {
          border-left: 2px solid #fafafa;
        }
        tr:not(:nth-of-type(1)) {
          border-top: 2px solid #fafafa;
        }
        .unit {
          font-size: 12px;
          margin-left: 2px;
        }
      }
      .point {
        p {
          color: #004ea1;
          font-size: 18px;
          font-weight: 600;
          line-height: 1.2;
        }
        ul {
          font-size: 14px;
          margin-top: 8px;
          li {
            &:before {
              content: "・";
              display: inline-block;
              margin-right: 2px;
            }
          }
        }
      }
    }
  }
}

/* -------------------------------
price-cookieles（価格）
------------------------------- */
.price-cookieles {
  .col-md-table {
    margin-top: 64px;
  }
  .table {
    width: 100%;
    border-radius: 6px;
    overflow: hidden;
    text-align: center;
    margin-bottom: 0;

    th {
      background-color: #004ea1;
      color: #fff;
      font-size: 16px;
      font-weight: 600;
      padding: 8px;
      border: none;
      height: 40px;
      line-height: 40px;
    }
    th:not(:nth-of-type(1)) {
      border-left: 2px solid #fff;
    }
    td {
      background-color: #fff;
      font-size: 16px;
      font-weight: 600;
      padding: 8px;
      border: 0;
      line-height: 40px;
    }
    td:not(:nth-of-type(1)) {
      border-left: 2px solid #ecf3fa;
    }
    tr:not(:nth-of-type(1)) {
      border-top: 2px solid #ecf3fa;
    }
    .unit {
      font-size: 12px;
      margin-left: 2px;
    }
  }
}

/* -------------------------------
responsive
------------------------------- */
@media (max-width: 768px) {
  .main__body {
    padding-top: 16px;
    .contents {
      padding-top: 32px;
      padding-bottom: 32px;
    }
  }

  .feature-cookieless {
    .col-md-row {
      margin-top: 24px;
      gap: 32px;
    }
    .section {
      gap: 16px;
    }
    .container-title {
      font-size: 18px;
      line-height: 1.4;
      gap: 0 8px;

      .number {
        font-size: 28px;
      }
    }
    .container-image {
      padding: 16px;
    }
    .container-body {
      display: inline-flex;
      flex-direction: column;
      gap: 16px;

      P {
        font-size: 14px;
        margin-top: 0;
      }
    }
  }

  .example-cookieless {
    .col-md-row {
      margin-top: 24px;
      gap: 16px;
    }
    .card-contents {
      padding: 16px;
      gap: 8px;

      .card-title {
        font-size: 16px;
      }
      .card-mainbody {
        padding-top: 8px;

        .text {
          font-size: 14px;
          margin-bottom: 8px;
        }

        .row {
          gap: 8px;
        }
        .column {
          gap: 16px;
        }

        .table {
          th {
            font-size: 11px;
            padding: 4px;
          }
          td {
            font-size: 12px;
            padding: 4px;
          }
          .unit {
            font-size: 10px;
          }
        }
        .point {
          p {
            font-size: 16px;
          }
          ul {
            font-size: 12px;
          }
        }
      }
    }
  }

  .price-cookieles {
    .col-md-table {
      margin-top: 24px;
    }
    .table {
      th {
        font-size: 12px;
        height: 32px;
        line-height: 32px;
      }
      td {
        font-size: 13px;
        line-height: 32px;
      }
      .unit {
        font-size: 11px;
        margin-left: 2px;
      }
    }
  }
}
