@charset "utf-8";

header {
  translate: 0 max(-100px, -7.8125vw);
  transition: translate 300ms ease;
  @media (max-width: 768px) {
    translate: 0 -96px;
  }

  &.-active {
    translate: 0 0;
  }
}

/* ↓↓↓ fv ↓↓↓ */
.fv {
  position: relative;
  width: 100%;
  height: 100dvh;
  overflow: hidden;
  .fv-header {
    position: absolute;
    display: flex;
    top: 0;
    left: 0;
    width: 100%;
    height: min(160px, 12.5cqw);
    padding: min(28px, 2.1875vw) min(40px, 3.125vw);
    z-index: 10;

    &.-active {
      background-color: #fff;
      &::after {
        display: none;
      }
      .logo {
        .blue {
          opacity: 1;
        }
        .white {
          opacity: 0;
        }
      }
      .r-box {
        .contact-btn {
          border: 1px solid #0090BA;
          color: #000;
          &:after {
            background-color: #0090BA;
          }
        }
      }
    }

    @media (max-width: 768px) {
      height: 96px;
      padding: 16px 10px 15px 20px;
    }

    .logo {
      display: block;
      position: relative;
      width: min(54px, 4.21875cqw);
      aspect-ratio: 54 / 74;
      margin-right: min(40px, 3.125cqw);
      @media (max-width: 768px) {
        width: 47px;
        aspect-ratio: 47 / 64;
        margin-right: 0;
      }
      .blue {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        opacity: 0;
      }

      .white {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
      }
    }

    .menu-box {
      height: fit-content;
      @media (max-width: 768px) {
        display: grid;
        display: none;
        align-content: space-between;
        row-gap: 40px;
        position: fixed;
        width: 100%;
        height: calc(100dvh - 96px);
        top: 96px; 
        left: 0;
        z-index: 5;
        overflow-y: scroll;
        background-color: #fff;
        .menu-box_inner {
          display: flex;
          flex-direction: column;
        }
      }
      .txt {
        font-size: min(1.2rem, 0.9375cqw);
        letter-spacing: 0.08em;
        margin-top: min(18px, 1.40625cqw);
        opacity: 0;
        visibility: hidden;

        @media (max-width: 768px) {
          font-size: 1.2rem;
          margin-top: 40px;
          order: 2;
          padding-inline: 24px;
          opacity: 1;
          visibility: visible;
        }

        a {
          font-weight: 600;
          color: #0090BA;
          border-bottom: 1px solid #0090BA;
        }
      }

      .menu {
        display: flex;
        gap: min(32px, 2.5cqw);

        @media (max-width: 768px) {
          flex-direction: column;
          margin-top: 32px;
          padding-left: 24px;
          gap: 24px;
          order: 1;
        }
        
        li {
          display: block;
          height: fit-content;
          &.-sp {
            display: none;
            @media (max-width: 768px) {
              display: block;
            }
          }
          .item {
            display: block;
            font-size: min(1.4rem, 1.09375cqw);
            font-weight: 600;
            letter-spacing: 0.08em;
            color: #fff;
            transition: opacity 300ms ease;
            filter: drop-shadow(0 0 25px #000);
            @media (max-width: 768px) {
              width: fit-content;
              position: relative;
              font-size: 1.6rem;
              padding-left: 22px;
              color: #000;
              filter: none;

              &::before {
                content: '';
                position: absolute;
                translate: 0 -50%;
                top: 50%;
                left: 0;
                width: 10px;
                height: 10px;
                border-radius: 50%;
                background-color: #0090BA;
              }
            }

            &[target="_blank"] {
            position: relative;
            padding-right: min(21px, 1.640625cqw);

            @media (max-width: 768px) {
              padding-right: 23px;
            }

            &::after {
              content: '';
              position: absolute;
              translate: 0 -50%;
              top: 50%;
              right: 0;
              width: min(15px, 1.171875cqw);
              height: min(12px, 0.9375cqw);
              mask-image: url(../img/common/ex-link.svg);
              mask-size: min(15px, 1.171875cqw) min(12px, 0.9375cqw);
              background-color: #fff;

              @media (max-width: 768px) {
                width: 15px;
                height: 12px;
                mask-size: 15px 12px;
                background-color: #0090BA;
              }
            }
          }

            @media (min-width: 769px) {
              &:hover {
                opacity: 0.5;
              }
            }
          } 
        }
      }
      .btn {
        display: none;
        @media (max-width: 768px) {
          display: block;
          position: relative;
          width: 100%;
          height: 106px;
          background-color: #0090BA;
          .btn-inner {
            width: 231px;
            position: absolute;
            translate: -50% -50%;
            top: 50%;
            left: 50%;
            display: flex;
            align-items: center;
            gap: 24px;
            padding-right: 28px;
            img {
              width: 64px;
            }
            p {
              font-size: 1.8rem;
              letter-spacing: 0.08em;
              font-weight: 700;
              color: #fff;
            }
          }
        }
      }
    } 
    .r-box {
      display: flex;
      align-items: center;
      gap: min(24px, 1.875cqw);
      margin-left: auto;

      @media (max-width: 768px) {
        gap: 0;
      }

      .contact-btn {
        position: relative;
        display: flex;
        width: min(140px, 10.9375cqw);
        height: fit-content;
        align-items: center;
        aspect-ratio: 140 / 40;
        font-size: min(1.4rem, 1.09375cqw);
        font-weight: 600;
        letter-spacing: 0.08em;
        color: #fff;
        border: 1px solid #fff;
        border-radius: 20px;
        padding-left: min(36px, 2.8125cqw);
        transition: color 300ms ease, background-color 300ms ease;
        p {
          filter: drop-shadow(0 0 25px #000);
          @media (max-width: 768px) {
            filter: none;
          }
        }
        @media (max-width: 768px) {
          width: 130px;
          height: 48px;
          font-size: 1.2rem;
          padding-left: 38px;
          border-radius: 30px;
          margin-right: 11px;
        }

        &::after {
          content: '';
          position: absolute;
          translate: 0 -50%;
          top: 50%;
          left: min(12px, 0.9375cqw);
          width: min(16px, 1.25cqw);
          height: min(12px, 0.9375cqw);
          mask-image: url(../img/common/h-contact-icon.svg);
          mask-repeat: no-repeat;
          mask-size: min(16px, 1.25cqw) min(12px, 0.9375cqw);
          background-color: #fff;
          transition: background-color 300ms ease;

          @media (max-width: 768px) {
            left: 16px;
            width: 14px;
            height: 10px;
            mask-size: 14px 10px;
          }
        }
        @media (min-width: 769px) {
          &:hover {
            color: #0090BA;
            background-color: #fff;
            &::after {
              background-color: #0090BA;
            }
          }
        }
      }

      .kajitaku-logo {
        display: block;
        width: min(70px, 5.46875cqw);
        height: fit-content;
        transition: opacity 300ms ease;
        @media (min-width: 769px) {
          &:hover {
            opacity: 0.5;
          }
        }

        @media (max-width: 768px) {
          width: 62px;
        }
      }

      .menu-btn {
        display: none;
        @media (max-width: 768px) {
          position: relative;
          display: block;
          padding: 25px 10px;
          width: 60px;
          height: 72px;
          cursor: pointer;
          span {
            position: absolute;
            width: 40px;
            height: 1px;
            background-color: #fff;
            transition: top 300ms ease, rotate 300ms ease, background-color 300ms ease;
            &:nth-of-type(1) {
              top: 25px;
              left: 10px;
            }
            &:nth-of-type(2) {
              top: 50%;
              left: 10px;
              opacity: 1;
            }
            &:nth-of-type(3) {
              bottom: 25px;
              left: 10;
            }
          }

          &.-active {
            span {
              background-color: #0090BA;
              &:nth-of-type(1) {
                top: 50%;
                rotate: -22deg;
              }
              &:nth-of-type(2) {
                opacity: 0;
              }
              &:nth-of-type(3) {
                top: 50%;
                bottom: unset;
                rotate: 22deg;
              }
            }
          }
        }
      }
    }
  }

  .movie {
    width: 100%;
    height: 100%;

    video {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }

  .copy-wrap {
    position: absolute;
    bottom: min(56px, 4.375cqw);
    left: min(72px, 5.625cqw);
    width: min(513px, 40.078125cqw);
    @media (max-width: 768px) {
      bottom: 24px;
      left: 24px;
      width: 266px;
    }
    .txt1 {
      font-size: min(4.8rem, 3.75cqw);
      font-weight: 600;
      color: #fff;
      letter-spacing: 0.6em;
      line-height: 1.333333333333333;
      @media (max-width: 768px) {
        font-size: 3.6rem;
        line-height: 1.3888888;
      }
    }
    .txt2 {
      font-size: min(1.6rem, 1.25cqw);
      color: #fff;
      font-weight: 700;
      letter-spacing: 0.08em;
      line-height: 1.75;
      margin-top: min(24px, 1.875cqw);
      @media (max-width: 768px) {
        width: 226px;
        font-size: 1.4rem;
        margin-top: 20px;
      }
    }
  }
  .eon-logo {
    position: absolute;
    right: min(40px, 3.125cqw);
    bottom: min(46px, 3.5937499999999996cqw);
    width: min(120px, 9.375cqw);

    @media (max-width: 768px) {
      right: 24px;
      bottom: 24px;
      width: 72px;
    }
  }
}
/* ↑↑↑ fv ↑↑↑ */

/* ↓↓↓ content-box ↓↓↓ */
.content-box {
  position: relative;
  margin-top: min(120px, 9.375cqw);

  @media (max-width: 768px) {
    margin-top: 64px;
    padding-inline: 24px;
  }

  .content-box_inner {
    max-width: 1280px;
    margin: 0 auto;
    container-type: inline-size;

    @media (max-width: 768px) {
      max-width: 100%;
    }
  }
  .container {
    display: flex;
    gap: 1.25cqw;
    width: 81.25cqw;
    margin: 0 auto;

    @media (max-width: 768px) {
      flex-direction: column;
      gap: 48px;
      width: 100%;
    }
  }

  .block {
    display: block;
    width: 40cqw;

    @media (max-width: 768px) {
      width: 100%;
    }

    .image-wrap {
      position: relative;
      .image {
        display: block;
        width: 100%;
        overflow: hidden;
        img {
          transition: scale 300ms ease;
        }
      }
      .head-wrap {
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 1.875cqw 3.125cqw 0 0.625cqw;
        background-color: #fff;
        @media (max-width: 768px) {
          padding: 16px 32px 0 8px;
        }
        .en {
          position: relative;
          font-size: 0.9375cqw;
          font-family: var(--text-lato);
          font-weight: 700;
          color: #0090BA;
          padding-left: 1.484375cqw;
          letter-spacing: 0.08em;
          @media (max-width: 768px) {
            font-size: 1.2rem;
            padding-left: 19px;
          }
          &::after {
            content: '';
            position: absolute;
            top: 0.390625cqw;
            left: 0;
            width: 1.171875cqw;
            height: 0.78125cqw;
            mask-image: url(../img/top/en-selling-deco.svg);
            mask-size: 1.171875cqw 0.78125cqw;
            mask-repeat: no-repeat;
            background-color: #0090BA;
            @media (max-width: 768px) {
              top: 5px;
              width: 15px;
              height: 10px;
              mask-size: 15px 10px;
            }
          }
        }
        .head {
          font-size: 1.875cqw;
          font-weight: 600;
          letter-spacing: 0.08em;
          margin-top: 0.3125cqw;
          @media (max-width: 768px) {
            font-size: 2.0rem;
            margin-top: 4px;
          }
        }
      }
    }
    .more-btn {
      position: relative;
      width: 15.625cqw;
      aspect-ratio: 200 / 56;
      background-color: #14B1E0;
      border: 1px solid #14B1E0;
      border-radius: 28px;
      display: grid;
      align-items: center;
      justify-content: center;
      margin-top: 1.875cqw;
      transition: background-color 300ms ease;
      @media (max-width: 768px) {
        width: 200px;
        margin-top: 24px;
      }

      &::after {
        content: '';
        position: absolute;
        translate: 0 -50%;
        top: 50%;
        left: 1.875cqw;
        width: 0.78125cqw;
        height: 0.78125cqw;
        background-color: #fff;
        border-radius: 50%;
        transition: background-color 300ms ease;
        @media (max-width: 768px) {
          left: 23px;
          width: 10px;
          height: 10px;
        }
      }
      p {
        font-size: 1.09375cqw;
        font-family: var(--text-lato);
        font-weight: 700;
        color: #fff;
        letter-spacing: 0.12em;
        transition: color 300ms ease;
        @media (max-width: 768px) {
          font-size: 1.4rem;
        }
      }
    }

    @media (min-width: 769px) {
      &:hover {
        .image-wrap {
          .image {
            img {
              scale: 1.1;
            }
          }
        }
        .more-btn {
          background-color: #fff;
          &::after {
            background-color: #14B1E0;
          }
          p {
            color: #14B1E0;
          }
        }
      }
    }
  }
  &.content01 {
    &::after {
      content: '';
      position: absolute;
      top: max(-120px, -9.375cqw);
      right: 0;
      width: calc(50vw - min(184px, 14.374999999999998cqw));
      height: min(363px, 28.359374999999996cqw);
      background-color: #EDF4F7;
      z-index: -1;

      @media (max-width: 768px) {
        top: -64px;
        width: calc(50vw + 5px);
        height: 190px;
      }
    }
  }

  &.content02 {
    width: 100%;
    height: min(640px, 50vw);
    background-color: #0090BA;
    overflow: hidden;

    @media (max-width: 768px) {
      height: 652px;
      background-color: #0090BA;
      overflow: hidden;
    }

    &::after,
    &::before {
      content: '';
      position: absolute;
      top: min(8px, 0.625vw);
      left: min(8px, 0.625vw);
      width: min(76px, 5.9375vw);
      height: min(1544px, 120.625vw);
      background: url(../img/top/service-side.svg) no-repeat;
      background-size: min(76px, 5.9375vw) min(1544px, 120.625vw);
      @media (max-width: 768px) {
        top: 18px;
        left: 9px;
        width: 1232px;
        height: 48px;
        background: url(../img/top/service-side_sp.svg) no-repeat;
        background-size: 1232px 48px;
      }
    }

    &::after {
      left: unset;
      right: min(8px, 0.625vw);
      @media (max-width: 768px) {
        left: 9px;
        right: unset;
        top: unset;
        bottom: 18px;
      }
    }

    .logo {
      display: block;
      width: 9.0625cqw;
      margin: 5cqw auto 0;
      @media (max-width: 768px) {
        display: block;
        width: 94px;
        margin: 98px auto 0;
      }
    }

    .head-wrap {
      width: fit-content;
      margin: 3.125cqw auto 0;
      @media (max-width: 768px) {
        margin: 32px auto 0;
      }
      .en {
        position: relative;
        width: fit-content;
        font-size: 0.9375cqw;
        font-family: var(--text-lato);
        font-weight: 700;
        color: #fff;
        padding-left: 1.484375cqw;
        letter-spacing: 0.08em;
        margin: 0 auto;
        @media (max-width: 768px) {
          font-size: 1.2rem;
          padding-left: 20px;
        }
        &::after {
          content: '';
          position: absolute;
          translate: 0 -50%;
          top: 50%;
          left: 0;
          width: 0.9375cqw;
          height: 0.9375cqw;
          mask-image: url(../img/top/service-deco.svg);
          mask-size: 0.9375cqw 0.9375cqw;
          mask-repeat: no-repeat;
          background-color: #fff;
          @media (max-width: 768px) {
            width: 12px;
            height: 12px;
            mask-size: 12px 12px;
          }
        }
      }
      .head {
        font-size: 2.5cqw;
        font-weight: 600;
        letter-spacing: 0.08em;
        margin-top: 0.3125cqw;
        color: #fff;
        @media (max-width: 768px) {
          font-size: 2.8rem;
          margin-top: 0;
        }
      }
    }
    .txt {
      font-size: 1.25cqw;
      font-weight: 500;
      color: #fff;
      text-align: center;
      letter-spacing: 0.08em;
      line-height: 1.714;
      margin-top: 3.125cqw;
      @media (max-width: 768px) {
        font-size: 1.6rem;
        margin-top: 32px;
      }
    }
    .more-btn {
      position: relative;
      width: 15.625cqw;
      aspect-ratio: 240 / 56;
      background-color: transparent;
      border: 1px solid #fff;
      border-radius: 28px;
      display: grid;
      align-items: center;
      justify-content: center;
      margin: 3.125cqw auto 0;
      transition: background-color 300ms ease;
      @media (max-width: 768px) {
        width: 240px;
        margin-top: 32px;
      }

      &::after {
        content: '';
        position: absolute;
        translate: 0 -50%;
        top: 50%;
        left: 1.875cqw;
        width: 0.78125cqw;
        height: 0.78125cqw;
        background-color: #fff;
        border-radius: 50%;
        transition: background-color 300ms ease;
        @media (max-width: 768px) {
          left: 23px;
          width: 10px;
          height: 10px;
        }
      }
      p {
        font-size: 1.09375cqw;
        font-family: var(--text-lato);
        font-weight: 700;
        color: #fff;
        letter-spacing: 0.12em;
        transition: color 300ms ease;
        @media (max-width: 768px) {
          font-size: 1.4rem;
        }
      }

      @media (min-width: 769px) {
        &:hover {
          background-color: #fff;
          &::after {
            background-color: #14B1E0;
          }
          p {
            color: #14B1E0;
          }
        }
      }
    }
  }

  &.content03 {
    margin-top: 0;
    @media (max-width: 768px) {
      padding: 0 24px;
    }

    .block {
      width: 81.25cqw;
      margin: 0 auto;
      @media (max-width: 768px) {
        width: 100%;
      }
      
      .image-wrap {
        .head-wrap {
          background-color: #EDF4F7;
        }
      }

      .btn-wrap {
        display: flex;
        justify-content: space-between;
        margin-top: 2.5cqw;
        @media (max-width: 768px) {
          flex-direction: column;
          margin-top: 24px;
        }
        .txt {
          font-size: 1.25cqw;
          letter-spacing: 0.08em;
          @media (max-width: 768px) {
            font-size: 1.6rem;
          }
        }
        .more-btn {
          margin: 0;
          @media (max-width: 768px) {
            margin-top: 24px;
          }
        }
      }
    }
  }

  &.content04 {
    @media (max-width: 768px) {
      padding-inline: 0;
    }
    .container {
      justify-content: center;
      @media (max-width: 768px) {
        justify-content: flex-start;
      }
    }
    .block {
      display: flex;
      gap: 3.125cqw;
      width: 58.75cqw;
      margin-left: 5cqw;
      @media (max-width: 768px) {
        flex-direction: column;
        gap: 22px;
        width: 100%;
        margin-left: 0;
      }

      .image-wrap {
        width: 40cqw;
        height: fit-content;
        @media (max-width: 768px) {
          width: 81.06666666666666cqw;
        }
      }

      .head-wrap {
        width: fit-content;
        margin: 3.125cqw auto 0;
        @media (max-width: 768px) {
          margin: 0 24px;
        }
        .en {
          position: relative;
          width: fit-content;
          font-size: 0.9375cqw;
          font-family: var(--text-lato);
          font-weight: 700;
          color: #0090BA;
          padding-left: 1.484375cqw;
          letter-spacing: 0.08em;
          margin-left: 8px;
          @media (max-width: 768px) {
            font-size: 1.2rem;
            padding-left: 20px;
          }
          &::after {
            content: '';
            position: absolute;
            translate: 0 -50%;
            top: 50%;
            left: 0;
            width: 0.9375cqw;
            height: 0.9375cqw;
            mask-image: url(../img/top/en-recruit-deco.svg);
            mask-size: 0.9375cqw 0.9375cqw;
            mask-repeat: no-repeat;
            background-color: #0090BA;
            @media (max-width: 768px) {
              width: 12px;
              height: 12px;
              mask-size: 12px 12px;
            }
          }
        }
        .head {
          font-size: 1.875cqw;
          font-weight: 600;
          letter-spacing: 0.08em;
          margin-top: 0.3125cqw;
          color: #000;
          @media (max-width: 768px) {
            font-size: 2.0rem;
            margin-top: 0;
            margin-left: 8px;
          }
        }
      }
    }
  }
  &.content05 {
    .container {
      display: flex;
      gap: 10.625cqw;
      width: 81.25cqw;
      margin: 0 auto;
      @media (max-width: 768px) {
        flex-direction: column;
        gap: 40px;
        width: 100%;
      }
      .head-wrap {
        width: fit-content;
        @media (max-width: 768px) {
          margin: 0;
        }
        .en {
          position: relative;
          width: fit-content;
          font-size: 0.9375cqw;
          font-family: var(--text-lato);
          font-weight: 700;
          color: #0090BA;
          padding-left: 1.484375cqw;
          letter-spacing: 0.08em;
          @media (max-width: 768px) {
            font-size: 1.2rem;
            padding-left: 20px;
          }
          &::after {
            content: '';
            position: absolute;
            translate: 0 -50%;
            top: 50%;
            left: 0;
            width: 0.9375cqw;
            height: 0.9375cqw;
            mask-image: url(../img/common/en-deco.svg);
            mask-size: 0.9375cqw 0.9375cqw;
            mask-repeat: no-repeat;
            background-color: #0090BA;
            @media (max-width: 768px) {
              width: 12px;
              height: 12px;
              mask-size: 12px 12px;
            }
          }
        }
        .head {
          font-size: 1.875cqw;
          font-weight: 600;
          letter-spacing: 0.08em;
          margin-top: 0.3125cqw;
          color: #000;
          @media (max-width: 768px) {
            font-size: 2.0rem;
            margin-top: 0;
          }
        }
        .more-btn {
          position: relative;
          width: 15.625cqw;
          aspect-ratio: 200 / 56;
          background-color: #14B1E0;
          border: 1px solid #14B1E0;
          border-radius: 28px;
          display: grid;
          align-items: center;
          justify-content: center;
          margin-top: 1.875cqw;
          transition: background-color 300ms ease;
          @media (max-width: 768px) {
            width: 200px;
            margin-top: 24px;
          }

          &::after {
            content: '';
            position: absolute;
            translate: 0 -50%;
            top: 50%;
            left: 1.875cqw;
            width: 0.78125cqw;
            height: 0.78125cqw;
            background-color: #fff;
            border-radius: 50%;
            transition: background-color 300ms ease;
            @media (max-width: 768px) {
              left: 23px;
              width: 10px;
              height: 10px;
            }
          }
          p {
            font-size: 1.09375cqw;
            font-family: var(--text-lato);
            font-weight: 700;
            color: #fff;
            letter-spacing: 0.12em;
            transition: color 300ms ease;
            @media (max-width: 768px) {
              font-size: 1.4rem;
            }
          }
          @media (min-width: 769px) {
            &:hover {
              background-color: #fff;
              &::after {
                background-color: #14B1E0;
              }
              p {
                color: #14B1E0;
              }
            }
          }
        }
      }

      .news-list {
        display: flex;
        flex-direction: column;
        gap: 1.875cqw;
        margin-top: 4.0625cqw;
        @media (max-width: 768px) {
          gap: 24px;
          margin-top: 0;
        }
        .item {
          position: relative;
          padding-bottom: 1.875cqw;
          @media (max-width: 768px) {
            padding-bottom: 24px;
          }
          &::before {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 1px;
            background-color: #B3DFF0;
          }
          &::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 1px;
            background-color: #0090BA;
            scale: 0 1;
            transition: scale 300ms ease;
            transform-origin: left;
          }
          @media (min-width: 769px) {
            &:hover {
              &::after {
                scale: 1 1;
              }
              .txt-wrap {
                opacity: 0.5;
              }
            }
          }

          .txt-wrap {
            width: 55cqw;
            padding-left: 1.25cqw;
            transition: opacity 300ms ease;

            @media (max-width: 768px) {
              width: 100%;
              padding-left: 16px;
            }

            .day {
              font-size: 1.09375cqw;
              font-family: var(--text-lato);
              font-weight: 700;
              letter-spacing: 0.08em;
              color: #0090BA;
              @media (max-width: 768px) {
                font-size: 1.4rem;
              }
            }

            .txt {
              font-size: 1.25cqw;
              letter-spacing: 0.2em;
              margin-top: 0.9375cqw;
              @media (max-width: 768px) {
                font-size: 1.6rem;
                margin-top: 11px;
              }
              .pdf {
                display: inline-flex;
                justify-content: center;
                width: 3.125cqw;
                aspect-ratio: 40 / 20;
                height: fit-content;
                font-size: 0.9375cqw;
                font-family: var(--text-lato);
                font-weight: 700;
                letter-spacing: 0.08em;
                color: #fff;
                background-color: #0090BA;
                border-radius: 50px;
                @media (max-width: 768px) {
                  width: 40px;
                  font-size: 1.2rem;
                }             
              }
            }
          }
        }
      }
    }
  }
}
/* ↑↑↑ content-box ↑↑↑ */

/* ↓↓↓ bg-deco ↓↓↓ */
.bg-deco {
  position: relative;
  width: 100%;
  padding-block: min(120px, 9.375cqw) min(236px, 18.4375cqw);

  @media (max-width: 768px) {
    padding-block: 80px 166px;
  }

  &::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50vw + min(256px, 20vw));
    height: 100%;
    background-color: #EDF4F7;
    z-index: -1;
  }
}
/* ↑↑↑ bg-deco ↑↑↑ */

/* ↓↓↓ common ↓↓↓ */
/* ↑↑↑ common ↑↑↑ */

/* ↓↓↓ common ↓↓↓ */
/* ↑↑↑ common ↑↑↑ */

/* ↓↓↓ common ↓↓↓ */
/* ↑↑↑ common ↑↑↑ */

/* ↓↓↓ common ↓↓↓ */
/* ↑↑↑ common ↑↑↑ */

@media (min-width: 1281px) {}

@media (max-width: 1280px) {}

@media (max-width: 768px) {}

@media (max-width: 480px) {}

@media (max-width: 375px) {}