.technology .heading-component {
  @media (min-width: 769px) {
    padding-top: 0;
  }
}

.technology .heading-component .english {
  font-size: min(calc(100vw * (160 / 1280)), 160px);
  letter-spacing: -0.03em;
  @media (max-width: 768px) {
    font-size: calc(100vw * (56 / 375));
  }
}

#technology {
  width: 100%;
  background: url(../../img/technology/bg.png) no-repeat center / cover;
  padding-block: 100px;

  @media (max-width: 768px) {
    padding: calc(100vw * (50 / 375)) calc(100vw * (20 / 375)) calc(100vw * (72 / 375));
  }

  .heading {
    color: #fff;
    &::after {
      background-color: #fff;
    }
  }

  .section-sub-title {
    color: #fff;
  }

  .cards {
    width: calc(100% - 80px);
    max-width: 1200px;
    margin-inline: auto;
    display: block;
    margin-top: 40px;
    @media (max-width: 768px) {
      width: 100%;
      margin-top: calc(100vw * (24 / 375));
    }
  }

  & svg {
    display: block;
    width: 56px;
    margin: 5px auto 0;
    @media (max-width: 768px) {
      width: calc(100vw * (40 / 375));
      margin: -0.1em auto 0;
    }
  }

  .guarantee {
    background: linear-gradient(90deg, #ca95db 0%, #8d8ede 50%, #10469e 100%);
    width: 100vw;
    margin-top: -20px;
    margin-inline: calc(50% - 50vw);
    padding-block: 24px;
    @media (max-width: 768px) {
      padding-block: calc(100vw * (32 / 375)) calc(100vw * (24 / 375));
      margin-top: calc(100vw * (-20 / 375));
    }
    & img {
      max-width: 963px;
      margin-inline: auto;
      @media (min-width: 769px) {
        padding-inline: 40px;
      }
      @media (max-width: 768px) {
        width: calc(100vw * (335 / 375));
      }
    }
  }

  .after-attendance {
    background: linear-gradient(90deg, rgba(249, 192, 255, 0.08) -6.62%, #cce4ff 100%), #fbfbfd;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
		position: relative;
		z-index: 1;
    @media (max-width: 768px) {
      width: 100vw;
      margin-inline: calc(50% - 50vw);
      padding: calc(100vw * (40 / 375)) calc(100vw * (20 / 375));
    }
    &::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url(../../img/technology/after-attendance-bg.png) no-repeat center / cover;
      @media (max-width: 768px) {
        background-image: url(../../img/technology/after-attendance-bg-sp.png);
      }
    }
    .after-attendance__upper {
      width: 546px;
      @media (max-width: 768px) {
        width: 100%;
      }
    }
    .after-attendance__lower {
      width: calc(100% - 80px);
      max-width: 1000px;
      margin-top: 24px;
      @media (max-width: 768px) {
        width: 100%;
      }
    }
  }
}
