.sec_service_methods_ptn_1 {
  .item {
    padding: 24px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
    background: #fff;
    border: 1px solid #e2eddc;
    border-radius: 16px;

    @media (max-width: 1200px) {
      padding: 20px;
      gap: 20px;
    }
    @media (max-width: 600px) {
      padding: 18px;
    }

    .row {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      align-items: start;
      gap: 6px 14px;

      @media (max-width: 1100px) {
        align-items: center;
        gap: 12px;
      }
    }

    .icon {
      width: 56px;
      aspect-ratio: 1;
      display: grid;
      grid-area: 1 / 1 / 3 / 2;
      place-items: center;
      background: #e3efd7;
      color: #347c36;
      border-radius: 50%;

      @media (max-width: 1200px) {
        width: 52px;
      }
      @media (max-width: 1100px) {
        grid-row: 1 / 2;
      }
      @media (max-width: 600px) {
        width: 48px;
      }

      svg {
        width: 40px;
      }

      &.type_wp {
        background: none;

        &::before {
          width: 100%;
          aspect-ratio: 1;
          background: #21759b;
          content: "";
          mask: url("../images/wordpress-wmark.png") center / 150% no-repeat;
        }
      }
    }

    .ttl {
      grid-area: 1 / 2 / 2 / 3;
      color: var(--heading);
      font-family: var(--font-en);
      font-size: 26px;
      font-weight: 900;
      line-height: 1.4em;
      letter-spacing: -0.025em;

      @media (max-width: 1200px) {
        font-size: 24px;
      }
      @media (max-width: 600px) {
        font-size: 22px;
      }
    }

    .txt {
      grid-area: 2 / 2 / 3 / 3;
      color: var(--ink-soft);
      font-size: var(--copy-size);
      line-height: 1.75em;

      @media (max-width: 1100px) {
        grid-column: 1 / -1;
      }
    }

    .body {
      margin-top: auto;
      display: flex;
      flex-wrap: wrap;
      align-items: flex-end;
      gap: 12px;
    }

    .point {
      min-width: 0;
      display: grid;
      flex: 1 1 280px;
      gap: 10px;
      list-style: none;

      li {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        color: var(--ink-soft);
        font-size: var(--copy-size);
        line-height: 1.75em;

        &::before {
          margin-top: 3px;
          width: 24px;
          aspect-ratio: 1;
          display: grid;
          flex-shrink: 0;
          place-items: center;
          background: #e3efd7;
          color: #327343;
          font-size: 16px;
          font-weight: 900;
          line-height: 1em;
          border-radius: 50%;
          content: "✓" / "";
        }
      }
    }

    .image {
      margin-left: auto;
      min-width: 0;
      width: 100%;
      max-width: 200px;
      flex: 0 1 190px;

      @media (max-width: 600px) {
        max-width: 180px;
        flex-basis: 180px;
      }

      img {
        width: 100%;
      }
    }
  }
}
