@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-1Thin.woff2") format("woff2");
  font-weight: 100;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-2ExtraLight.woff2") format("woff2");
  font-weight: 200;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-3Light.woff2") format("woff2");
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-4Regular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-5Medium.woff2") format("woff2");
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-6SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-7Bold.woff2") format("woff2");
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-8ExtraBold.woff2") format("woff2");
  font-weight: 800;
  font-display: swap;
}

@font-face {
  font-family: "Paperozi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-9Black.woff2") format("woff2");
  font-weight: 900;
  font-display: swap;
}

@font-face {
  font-family: "RomanticGumi";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/2410-1@1.0/GumiRomanceTTF.woff2") format("woff2");
  font-weight: normal;
  font-display: swap;
}

.all_sns_wrap {
  display: none !important;
}

.font-pretendard {
  font-family: "Pretendard";
}

.font-gumi {
  font-family: "RomanticGumi";
}

.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.12);
  padding: 0;
  margin: 0;
  span {
    font-family: "RomanticGumi";
    color: #fff;
    line-height: 1.5;
    font-weight: 400;
    text-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.12);
    text-align: center;
  }
}
.sec__title {
  margin-bottom: 2rem;
  font-size: 3rem;
  line-height: 1.5;
  text-align: center;
  @media screen and (max-width: 1280px) {
    margin-bottom: 1rem;
    font-size: 2.1875rem;
  }
}

.txt_bg__line {
  position: relative;
  z-index: 1;
  &::after {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
    display: block;
    content: "";
    width: calc(100% + 5px);
    height: 1.125rem;
    background-color: #ffd655;
  }
  &.pink::after {
    background-color: #ffb2cc;
  }
}

.z-index_1 {
  position: relative;
  z-index: 1;
}

.popUp-wrap {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  .popUp-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    width: 100%;
    max-width: 75rem;
    height: 100%;
    max-height: 43.125rem;
    background-color: #fffaf5;
    border-radius: 20px;
    @media (max-width: 1280px) {
      width: calc(100% - 2.5rem);
    }
    @media (max-width: 1024px) {
    }
    @media (max-width: 750px) {
      max-height: none;
      height: calc(100vh - 5.3125rem);
    }
    /* @media (max-width: 550px) {
      height: calc(100vh - 10.3125rem);
    }
    @media (max-width: 420px) {
      height: calc(100vh - 13.3125rem);
    } */
    .popUp-box {
      margin: 1rem auto;
      width: calc(100% - 2rem);
      height: calc(100% - 2rem);
      border: 4px solid #ffb2cc;
      border-radius: 16px;
      @media (max-width: 750px) {
        overflow-y: auto;
      }
    }
    .popUp-box-inner {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 3.625rem;
      padding: 1rem;
      height: 100%;
      @media (max-width: 1024px) {
        gap: 1rem;
      }
      @media (max-width: 750px) {
        padding: 2.625rem 1rem;
        flex-direction: column;
        height: auto;
        min-height: 100%;
      }
      @media (max-width: 500px) {
      }
    }
    .box-l {
      @media (max-width: 750px) {
        display: flex;
        flex-direction: column;
        align-items: center;
      }
      p {
        position: relative;
        display: inline-block;
        padding-left: 0.5rem;
        margin-bottom: 3.5rem;
        font-size: 3.5rem;
        color: #ca3064;
        line-height: 1.5;
        z-index: 1;
        &::after {
          position: absolute;
          left: 0;
          bottom: 0;
          z-index: -1;
          display: block;
          content: "";
          width: calc(100% + 0.5rem);
          height: 3rem;
          background-color: #ffb2cc;
          opacity: 0.5;
          @media (max-width: 1024px) {
            height: 1.5rem;
          }
        }
        @media (max-width: 1024px) {
          margin-bottom: 1.5rem;
          font-size: 2rem;
        }
      }
    }
    .box-r {
      display: flex;
      flex-direction: column;
      align-items: center;
      button {
        margin-top: 2rem;
        width: 13.5rem;
        height: 5.125rem;
        background: url(/images/campaign/hickman/popUp-btn.png) no-repeat center center;
        background-size: cover;
        border: none;
        cursor: pointer;
        @media (max-width: 1024px) {
          margin-top: 1.5rem;
          width: 10.5rem;
          height: 4.125rem;
        }
      }
      @media (max-width: 1024px) {
        .popUp-img {
          text-align: center;
          img {
            width: 80%;
          }
        }
      }
    }
  }
  .dim {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
  }
}

.character-box {
  position: relative;
  .bubble-container {
    position: absolute;
  }
}

.bubble_btn {
  width: 15.6875rem;
  height: 5.8125rem;
  background: url(/images/campaign/hickman/con02_bubble.svg) no-repeat center center;
  background-size: contain;
  border: none;
  cursor: pointer;
  @media (max-width: 1280px) {
    width: 10.25rem;
    height: 4rem;
    /* background: url(/images/campaign/hickman/con02_bubble_m.png) no-repeat center center; */
    background-size: contain;
  }
}

.speech-bubble {
  position: relative;
  padding: 1rem 2rem;
  display: block;
  /* width: 18.5625rem; */
  background: #ffffff;
  border-radius: 5rem;
  text-align: center;
  cursor: pointer;
  user-select: none;
  border: 4px solid #d9d9d9;
  @media (max-width: 1280px) {
    padding: 0.625rem 1.25rem;
  }
  &::after {
    content: "";
    position: absolute;
    transform: rotate(20deg);
    right: -0.5rem;
    top: 10px;
    width: 1rem;
    height: 1rem;
    background: #ffffff;
    border-top: 4px solid #d9d9d9;
    border-right: 4px solid #d9d9d9;
    border-top-right-radius: 8px;
  }
}
/* ── 텍스트 ── */
.bubble-main,
.bubble-sub {
  line-height: 1.5;
  color: #514593;
}
.bubble-main {
  font-size: 1.5rem;
  letter-spacing: -0.6px;
  @media screen and (max-width: 1280px) {
    font-size: 0.9375rem;
  }
}
.bubble-sub {
  font-size: 1.125rem;
  letter-spacing: -0.45px;
  @media screen and (max-width: 1280px) {
    font-size: 0.6875rem;
  }
}

.hickman-wrap {
  position: relative;
  word-break: keep-all;
  overflow: hidden;
  .hickman-inner {
    position: relative;
    /* margin: 0 auto;
    max-width: 112.125rem; */
  }
  .hickman-logo {
    position: absolute;
    top: 1.5rem;
    left: 3rem;
    @media (max-width: 1024px) {
      top: 1.25rem;
      left: 1.25rem;
      width: 10.375rem;
    }
  }
  .sec-inner {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    width: 100%;
    max-width: 112.125rem;
    height: 100%;
  }
  .sec01 {
    padding: 0 4.375rem;
    /* width: 100%; */
    height: 60rem;
    background: url(/images/campaign/hickman/con01_bg.jpg) no-repeat center center;
    background-size: cover;
    @media screen and (max-width: 1280px) {
      padding: 0;
      height: auto;
    }
    @media screen and (max-width: 750px) {
      background: url(/images/campaign/hickman/con01_bg_m.jpg) no-repeat 100% 100%;
      background-size: cover;
    }
    .sec-inner {
      @media screen and (max-width: 1280px) {
        flex-direction: column;
        align-items: center;
        justify-content: normal;
      }
    }
    .sec01__left {
      margin: 6.125rem 0 0 18.125rem;
      @media screen and (max-width: 1600px) {
        margin: 6.125rem 0 0 0;
      }
      .sec01_title {
        margin: 1.5rem 0 3.5rem 0;
        @media screen and (max-width: 1280px) {
          margin: 0;
        }
        img {
          display: block;
          /* width: 100%; */
          max-width: 35.0625rem;
          @media screen and (max-width: 1280px) {
            max-width: 18.75rem;
          }
        }
        p {
          margin-top: 1.5rem;
          font-family: "Paperozi";
          font-size: 2rem;
          font-weight: 600;
          line-height: 1.5;
          letter-spacing: -0.05rem;
          color: #2f2f2f;
          text-align: center;
          @media screen and (max-width: 1280px) {
            font-size: 1.25rem;
          }
        }
      }
      .sec01_l__btn {
        text-align: center;
        .btn {
          margin: 0 auto;
          width: 100%;
          max-width: 23.875rem;
          height: 7.375rem;
          background: url(/images/campaign/hickman/btn_01.png) no-repeat center center/contain;
          border: none;
          border-radius: 62.4375rem;
          span {
            display: flex;
            align-items: center;
            gap: 1rem;
            font-size: 1.5rem;
            &::after {
              display: block;
              content: "";
              width: 3.1875rem;
              height: 3rem;
              background: url(/images/campaign/hickman/btn_icon_01.png) no-repeat;
              background-size: 3.1875rem auto;
            }
          }
        }
        @media screen and (max-width: 1280px) {
          display: none;
        }
      }
    }
    .sec01_right {
      /* background-color: yellow; */
      width: calc(100% - 35.0625rem);
      position: relative;
      @media (max-width: 1280px) {
        width: 60%;
        text-align: center;
      }
      @media (max-width: 750px) {
        width: 100%;
      }
    }
    .sec01_img-box {
      position: absolute;
      /* position: relative; */
      &::after {
        position: absolute;
        display: block;
        content: "";
      }
      &.sec01_img_01 {
        top: 5.75rem;
        left: 3.3125rem;
        &::after {
          top: -5.75rem;
          left: 1.5rem;
          width: 32rem;
          height: 26.8125rem;
          background: url(/images/campaign/hickman/con01_img_01_character.png) no-repeat;
          background-size: 512px auto;
        }
      }
      &.sec01_img_02 {
        top: 14rem;
        left: 28rem;
        &::after {
          top: 12.5rem;
          left: 14.9375rem;
          width: 13.5rem;
          height: 13.5rem;
          background: url(/images/campaign/hickman/con01_img_02_character.png) no-repeat;
          background-size: 13.5rem auto;
        }
      }
      &.sec01_img_03 {
        bottom: 0;
        left: 15.375rem;
        &::after {
          top: -4.125rem;
          left: -9.375rem;
          width: 18.4375rem;
          height: 16.25rem;
          background: url(/images/campaign/hickman/con01_img_03_character.png) no-repeat;
          background-size: 18.4375rem auto;
        }
      }
    }
  }

  .sec02 {
    height: 46.875rem;
    background: url(/images/campaign/hickman/con02_bg.jpg) no-repeat center center;
    background-size: cover;
    @media screen and (max-width: 1280px) {
      height: 24rem;
    }
    @media screen and (max-width: 1024px) {
      background: url(/images/campaign/hickman/con02_bg.jpg) no-repeat 100% 100%;
      background-size: cover;
      height: auto;
    }
    @media screen and (max-width: 750px) {
      background: url(/images/campaign/hickman/con02_bg_m.png) no-repeat 100% 100%;
      background-size: cover;
    }
    .sec-inner {
      padding-top: 4.5rem;
      @media screen and (max-width: 1280px) {
        padding-top: 0;
      }
    }
    .sec02-box {
      position: relative;
      display: flex;
      align-items: center;
      gap: 5rem;
      height: 30.25rem;
      z-index: 1;
      @media screen and (max-width: 1280px) {
        height: auto;
        align-items: flex-start;
      }
      @media screen and (max-width: 1024px) {
        gap: 1rem;
        flex-direction: column;
        align-items: center;
      }
      @media (max-width: 750px) {
        &::after,
        &::before {
          position: absolute;
          display: block;
          content: "";
          z-index: -1;
        }
        &::after {
          top: -2rem;
          left: 0.625rem;
          width: 11.25rem;
          height: 3.0625rem;
          background: url(/images/campaign/hickman/con02_bg_icon_02.svg) no-repeat center center;
          background-size: cover;
        }
        &::before {
          top: -3.75rem;
          right: -0.625rem;
          width: 6rem;
          height: 6.625rem;
          background: url(/images/campaign/hickman/con02_bg_icon_01.svg) no-repeat center center;
          background-size: cover;
        }
      }
    }
    .sec02_left {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 39.25rem;
      height: 30.25rem;
      background: url(/images/campaign/hickman/con02_slide_bak.png) no-repeat center center;
      /* background-size: 39.25rem auto; */
      @media screen and (max-width: 1280px) {
        width: 20.75rem;
        height: 15.875rem;
        background: url(/images/campaign/hickman/con02_slide_bak.png) no-repeat center center;
        background-size: contain;
      }
      .step-character-group {
        position: absolute;
        bottom: -4.6875rem;
        left: -6.5rem;
        @media (max-width: 1280px) {
          bottom: -2.5rem;
          left: -0.25rem;
          z-index: 1;
        }
        .character-img {
          width: 17.875rem;
          height: 256px;
          background: url(/images/campaign/hickman/con02_character.png) no-repeat center center;
          background-size: 17.875rem auto;
          @media (max-width: 1280px) {
            width: 8.25rem;
            height: 7.5rem;
            background-size: 8.25rem auto;
          }
        }
      }
      .character-box {
        .bubble-container {
          right: -13.8125rem;
          bottom: -2.5625rem;
          @media (max-width: 1280px) {
            right: -9rem;
            bottom: -2.5625rem;
          }
        }
      }
      .speech-bubble {
        border: 4px solid #ffb2cc;
        &::after {
          right: auto;
          left: -0.5rem;
          transform: rotate(-110deg);
          border-top: 4px solid #ffb2cc;
          border-right: 4px solid #ffb2cc;
        }
      }
      .bubble-main,
      .bubble-sub {
        color: #ca3064;
      }
      .swiper {
        width: 20.25rem;
        background: none;
        border-radius: 16px;
        @media screen and (max-width: 1280px) {
          width: 10.75rem;
        }
        .swiper-wrapper {
          height: auto;
          .swiper-slide {
            display: flex;
            align-items: center;
            justify-content: center;
            img {
              width: 100%;
            }
          }
        }
      }
      .swiper-button-next,
      .swiper-button-prev {
        width: 4rem;
        height: 4rem;
        border-radius: 50%;
        @media (max-width: 1280px) {
          width: 2.5rem;
          height: 2.5rem;
        }
      }
      .swiper-button-next {
        &::after {
          content: "";
          width: 100%;
          height: 100%;
          background: url(/images/campaign/hickman/con02_btn_R.png) no-repeat center center;
          background-size: 4rem auto;
          @media (max-width: 1280px) {
            background-size: 2.5rem auto;
          }
        }
      }
      .swiper-button-prev {
        &::after {
          content: "";
          width: 100%;
          height: 100%;
          background: url(/images/campaign/hickman/con02_btn_L.png) no-repeat center center;
          background-size: contain;
        }
      }
      .swiper-button-next.swiper-button-disabled,
      .swiper-button-prev.swiper-button-disabled {
        opacity: 1;
      }
    }
    .sec02_right {
      @media (max-width: 1024px) {
        margin-top: 6.25rem;
      }
    }
    .sec02__desc {
      p,
      span,
      em {
        font-size: 1.5rem;
        line-height: 1.7;
        letter-spacing: -0.0375rem;
        text-align: center;
        @media screen and (max-width: 1280px) {
          font-size: 1.125rem;
        }
      }
      p,
      em {
        color: #2f2f2f;
        font-weight: 500;
      }
      p + p {
        margin-top: 1.5rem;
        @media (max-width: 1280px) {
          margin-top: 1rem;
        }
      }
      span {
        color: #ca3064;
        font-weight: 800;
      }
    }
  }

  .sec03 {
    position: relative;
    height: 82.75rem;
    background: url(/images/campaign/hickman/con03_bg.jpg) no-repeat center center;
    background-size: cover;
    @media (max-width: 1280px) {
      height: auto;
    }
    @media screen and (max-width: 750px) {
      padding: 3rem 1rem 10rem 1rem;
      background: url(/images/campaign/hickman/con03_bg_m.png) no-repeat 100% 100%;
      background-size: cover;
    }
    /* &::after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 50%; 
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
    } */
    .sec03-top {
      margin: 6.25rem auto 0 auto;
      @media screen and (max-width: 1280px) {
        margin: 0 auto;
      }
      > div {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7.5rem;
        @media screen and (max-width: 1280px) {
          gap: 2.5rem;
        }
      }
      .sec03_left {
        margin-bottom: 6.25rem;
        @media screen and (max-width: 1280px) {
          margin-bottom: 3.5rem;
        }
      }
      .sec03_img-box {
        position: relative;
        > p {
          font-size: 1rem;
          color: rgba(47, 47, 47, 0.6);
          line-height: 1.5;
          letter-spacing: -0.4px;
          text-align: center;
        }
        &.sec03_img_01::before,
        &.sec03_img_02::before {
          position: absolute;
          display: block;
          content: "";
        }
        &.sec03_img_01::before {
          top: 0;
          left: 21.75rem;
          width: 25.75rem;
          height: 16.875rem;
          background: url(/images/campaign/hickman/con03_img_01_character.png) no-repeat center center;
          background-size: 25.75rem auto;
          @media screen and (max-width: 1280px) {
            left: 11.75rem;
            width: 10.125rem;
            height: 8.3125rem;
            background-size: 10.125rem auto;
          }
        }
        &.sec03_img_02::before {
          bottom: 22.1875rem;
          right: 23.4375rem;
          width: 22.1875rem;
          height: 23.875rem;
          background: url(/images/campaign/hickman/con03_img_02_character.png) no-repeat center center;
          background-size: 22.1875rem auto;
          @media screen and (max-width: 1280px) {
            bottom: 13.5rem;
            right: 11.2rem;
            width: 11rem;
            height: 11.6875rem;
            background-size: 11rem auto;
          }
        }
      }
      @media screen and (max-width: 1280px) {
        .sec03_img_01 img {
          width: 17.3125rem;
        }
        .sec03_img_02 {
          img,
          p {
            width: 17.5rem;
          }
          p {
            font-size: 0.75rem;
          }
        }
      }
      @media screen and (max-width: 1024px) {
        .sec03_left {
          flex-direction: column;
        }
        .sec03_right {
          flex-direction: column-reverse;
        }
      }
    }
    .sec03__desc {
      .sec__title {
        color: #603717;
      }
      p,
      span,
      em {
        font-size: 1.5rem;
        line-height: 1.7;
        letter-spacing: -0.6px;
        text-align: center;
        @media screen and (max-width: 1280px) {
          font-size: 1.125rem;
        }
      }
      p,
      em {
        color: #2f2f2f;
        font-weight: 500;
      }
      p {
        + p {
          margin-top: 1.5rem;
          @media (max-width: 1280px) {
            margin-top: 1rem;
          }
        }
      }
      span {
        color: #894e21;
        font-weight: 800;
      }
    }
  }

  .sec04 {
    position: relative;
    height: 50.1875rem;
    background: url(/images/campaign/hickman/con04_bg.jpg) no-repeat center center;
    background-size: cover;
    @media screen and (max-width: 1280px) {
      padding: 3rem 1rem 10rem 1rem;
      height: auto;
    }
    @media screen and (max-width: 750px) {
      background: url(/images/campaign/hickman/con04_bg_m_03.png) no-repeat 100% 100%;
      background-size: cover;
    }
    .sec-inner {
      flex-direction: column;
      @media (max-width: 1400px) {
        justify-content: flex-start;
      }
    }
    .sec__title {
      color: #514593;
    }
    .sce04_step {
      position: relative;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 2rem;
      padding: 3.5rem 3.75rem;
      margin: 0 auto;
      width: 100%;
      max-width: 1200px;
      background-color: #ebe8ff;
      border-radius: 1rem;
      box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.12);
      @media screen and (max-width: 1400px) {
        /* grid-template-columns: repeat(2, 1fr); */
        justify-items: center;
        padding: 2rem 1rem;
      }
      @media screen and (max-width: 1024px) {
        grid-template-columns: repeat(2, 1fr);
        li {
          display: flex;
          flex-direction: column;
          align-items: center;
        }
      }
      .step-character-group {
        position: absolute;
        bottom: 0.1875rem;
        right: -10rem;
        @media screen and (max-width: 1540px) {
          right: -7rem;
        }
        @media screen and (max-width: 1400px) {
          right: 0;
          bottom: -11.25rem;
        }
        @media screen and (max-width: 1280px) {
          bottom: -7.4375rem;
        }
        .character-box .bubble-container {
          left: -13.125rem;
          bottom: -1rem;
          @media (max-width: 1280px) {
            left: -12.125rem;
            bottom: 1rem;
          }
          .bubble_btn {
            display: block;
            width: 18.5rem;
            height: 5.8125rem;
            background: url(/images/campaign/hickman/con04_bubble.svg) no-repeat center center;
            background-size: contain;
            @media (max-width: 1280px) {
              width: 13.0625rem;
              height: 4.25rem;
              background-size: contain;
            }
          }
        }
        .character-img {
          width: 13.25rem;
          height: 21.125rem;
          background: url(/images/campaign/hickman/con04_character.png) no-repeat center center;
          background-size: 13.25rem auto;
          @media (max-width: 1280px) {
            width: 6.75rem;
            height: 11.75rem;
            background-size: 6.75rem auto;
          }
        }
      }
      .step-item {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.75rem;
        margin-bottom: 2rem;
        @media (max-width: 1280px) {
          gap: 0.25rem;
          margin-bottom: 1rem;
        }
        p {
          font-size: 1.75rem;
          line-height: 1.5;
          color: #514593;
          @media (max-width: 1280px) {
            font-size: 1rem;
          }
        }
      }
      .icon-wrapper {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 3.5rem;
        height: 3.4375rem;
        @media (max-width: 1280px) {
          width: 2rem;
          height: 2rem;
        }
      }
      .star-icon {
        width: 100%;
        height: 100%;
        object-fit: contain;
      }
      .step-number {
        position: absolute;
        top: 54%;
        left: 50%;
        transform: translate(-50%, -50%);
        color: #514593;
        font-size: 1.25rem;
        @media (max-width: 1280px) {
          font-size: 0.75rem;
        }
      }
    }
    .sec04__desc {
      p,
      span {
        font-family: "Pretendard";
        line-height: 1.5;
        text-align: center;
      }
      p {
        margin-top: 1.5rem;
        font-size: 1.2rem;
        font-weight: 600;
        letter-spacing: -0.7px;
        color: #2f2f2f;
        @media screen and (max-width: 1280px) {
          margin-top: 0.875rem;
          font-size: 0.875rem;
        }
        @media screen and (max-width: 1024px) {
          br {
            display: none;
          }
        }
      }
      span {
        display: block;
        margin-top: 0.5rem;
        font-size: 1rem;
        letter-spacing: 0;
        color: #555;
        @media screen and (max-width: 1280px) {
          margin-top: 0.25rem;
          font-size: 0.75rem;
        }
      }
      em {
        font-family: "Pretendard";
        font-size: 1rem;
        color: #555;
        @media screen and (max-width: 1280px) {
          font-size: 0.75rem;
        }
      }
    }
  }
  .sec05 {
    height: 52.9375rem;
    background: url(/images/campaign/hickman/con05_bg.jpg) no-repeat 100% 100%;
    background-size: cover;
    @media screen and (max-width: 1280px) {
      position: relative;
      height: auto;
      &::after {
        position: absolute;
        bottom: -0.1875rem;
        right: 0.5rem;
        display: block;
        content: "";
        width: 8.6875rem;
        height: 8.8125rem;
        background: url(/images/campaign/hickman/con05_character_01.png) no-repeat center center;
        background-size: contain;
        z-index: 1;
      }
    }
    @media screen and (max-width: 750px) {
      padding: 3rem 1rem 7rem 1rem;
      background: url(/images/campaign/hickman/con05_bg_m.png) no-repeat 100% 100%;
      background-size: cover;
      &::after {
        bottom: -1rem;
      }
    }
    @media (max-width: 540px) {
      &::after {
        width: 7rem;
        bottom: -1.5rem;
      }
    }
    @media (max-width: 440px) {
      padding: 3rem 1rem 6rem 1rem;
      &::after {
        bottom: -2.8rem;
      }
    }
    .sec-inner {
      align-items: center;
      gap: 4.0625rem;
      /* padding-top: 7.375rem; */
      @media screen and (max-width: 1280px) {
        flex-direction: column;
        gap: 0.5rem;
      }
    }
    .sec__title {
      color: #603717;
    }
    .sec05_img-box {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      width: 40.75rem;
      height: 31.75rem;
      @media (max-width: 1280px) {
        width: 100%;
        max-width: 21.4375rem;
        height: 16.125rem;
      }
      &::after,
      &::before {
        position: absolute;
        display: block;
        content: "";
      }
      &::after {
        left: -6.625rem;
        bottom: 1rem;
        width: 11.0625rem;
        height: 20.375rem;
        background: url(/images/campaign/hickman/con05_character_02.png) no-repeat center center;
        background-size: 11.0625rem auto;
        @media (max-width: 1280px) {
          left: -2.5rem;
          bottom: -1.5625rem;
          width: 6.8125rem;
          height: 12.4375rem;
          background-size: 6.8125rem auto;
        }
      }
      &::before {
        left: 2.0625rem;
        bottom: -2.625rem;
        width: 13.625rem;
        height: 14.8125rem;
        background: url(/images/campaign/hickman/con05_character_01.png) no-repeat center center;
        background-size: 13.625rem auto;
        @media (max-width: 1280px) {
          display: none;
        }
      }
    }
    .sec05_right {
      display: flex;
      flex-direction: column;
      align-items: center;
    }
    .sec05__desc {
      margin-bottom: 3.5rem;
      @media (max-width: 1280px) {
        margin-bottom: 1.5rem;
      }
      p,
      span {
        font-size: 1.375rem;
        letter-spacing: -0.0344rem;
        text-align: center;
        line-height: 1.5;
        @media (max-width: 1280px) {
          font-size: 1rem;
        }
      }
      p {
        color: #2f2f2f;
        font-weight: 500;
        + p {
          margin-top: 1.5rem;
          @media (max-width: 1280px) {
            margin-top: 1rem;
          }
        }
        span {
          color: #894e21;
          font-weight: 800;
        }
      }
    }
    .btn {
      width: 17.3125rem;
      height: 6.625rem;
      background: url(/images/campaign/hickman/btn_03.png) no-repeat center center/contain;
      background-size: 17.3125rem auto;
      border-radius: 3.8125rem 3.8125rem 3.375rem 3.375rem;
      @media (max-width: 1280px) {
        width: 13rem;
        height: 4.25rem;
        background-size: 13rem 4.25rem;
        border-radius: 2.0625rem 2.0625rem 2rem 2rem;
      }
      span {
        font-size: 1.5rem;
        @media (max-width: 1280px) {
          font-size: 1.125rem;
        }
      }
    }
  }
  .sec06 {
    position: relative;
    height: 111.8125rem;
    background: url(/images/campaign/hickman/con06_bg.jpg) no-repeat 100% 100%;
    background-size: cover;
    @media screen and (max-width: 1280px) {
      height: 78.375rem;
    }
    @media screen and (max-width: 1024px) {
      height: 67.375rem;
    }
    @media screen and (max-width: 750px) {
      height: auto;
      background: url(/images/campaign/hickman/con06_bg_m.jpg) no-repeat 100% 100%;
      background-size: cover;
    }
    .sec-inner {
      padding-top: 5rem;
      height: auto;
      flex-direction: column;
      @media (max-width: 1280px) {
        padding-top: 0;
      }
    }
    .sec__title {
      color: #ca3064;
    }
    /* 아코디언 스타일 */
    .faq-container {
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
      margin: 0 auto;
      max-width: 75rem;
      width: 100%;
      @media (max-width: 1280px) {
        gap: 1rem;
      }
    }

    .faq-item {
      background: #fff4f8;
      border: 10px solid rgba(251, 174, 200, 0.8);
      border-radius: 1rem;
      overflow: hidden;
      transition: border-color 0.3s ease;
      box-shadow: 0 2.917px 5.833px 0 rgba(0, 0, 0, 0.12);
      @media screen and (max-width: 1280px) {
        border: 4px solid rgba(251, 174, 200, 0.8);
      }
    }

    /* .faq-item.active {
      border-color: var(--hickman-pink);
    } */

    .faq-header {
      width: 100%;
      padding: 1.875rem 2.5rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      cursor: pointer;
      background: none;
      border: none;
      text-align: left;
      outline: none;
    }

    .faq-question {
      font-size: 1.5rem;
      font-weight: 400;
      color: #ca3064;
      display: flex;
      align-items: center;
      font-family: "RomanticGumi";
    }

    .faq-question::before {
      content: "Q.";
      margin-right: 0.625rem;
      font-size: 1.375rem;
      @media (max-width: 1024px) {
        margin-right: 0.5rem;
        font-size: 1rem;
      }
    }

    .faq-icon {
      width: 1.25rem;
      height: 1.25rem;
      position: relative;
      transition: transform 0.3s ease;
      @media (max-width: 1280px) {
        width: 1.0938rem;
        height: 1.0938rem;
      }
    }
    .faq-icon::before,
    .faq-icon::after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%) rotate(180deg);
      width: 1.5rem;
      height: 1.5rem;
      background: url(/images/campaign/hickman/icon-arrow.png) no-repeat center center;
      background-size: 1.5rem auto;
      transition: all 0.3s ease;
      @media (max-width: 1280px) {
        width: 1.0938rem;
        height: 1.0938rem;
        background-size: 1.0938rem auto;
      }
    }

    .faq-item.active .faq-icon {
      transform: rotate(180deg);
    }

    /* 답변 영역 */
    .faq-body {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease-out;
      background-color: #fff4f8;
    }

    .faq-content {
      display: flex;
      padding: 1.875rem 2.5rem;
      font-size: 1.25rem;
      color: #2f2f2f;
      letter-spacing: -0.0313rem;
      border-top: 10px solid rgba(251, 174, 200, 0.8);
      line-height: 1.5;
      font-family: "Pretendard";
      @media (max-width: 1280px) {
        border-top: 4px solid rgba(251, 174, 200, 0.8);
      }
    }

    .faq-content::before {
      content: "A.";
      font-weight: 800;
      margin-right: 1rem;
      color: #2f2f2f;
      flex-shrink: 0;
      font-family: "RomanticGumi";
      @media (max-width: 1280px) {
        margin-right: 0.5rem;
      }
    }

    .faq-content p {
      margin: 0;
      word-break: keep-all;
    }

    /* 모바일 대응 */
    @media (max-width: 1280px) {
      .faq-header,
      .faq-content {
        padding: 1.25rem 1.5rem;
      }
      .faq-question {
        align-items: baseline;
        padding-right: 0.5rem;
        font-size: 1rem;
      }
      .faq-content {
        font-size: 0.875rem;
      }
      /* .font-gumi {
        font-size: 1.5rem;
      } */
    }
    @media (max-width: 750px) {
      .faq-header {
        line-height: 1.6;
      }
    }
  }

  .sec07 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 13.4375rem;
    background: url(/images/campaign/hickman/con07_bg.png) no-repeat center center;
    background-size: cover;
    @media (max-width: 1280px) {
      padding: 0 0;
      background: url(/images/campaign/hickman/con07_bg.png) no-repeat center center;
    }
    @media (max-width: 750px) {
      position: static;
      background-color: #ffd0e0 !important;
    }
    @media (max-width: 375px) {
      height: 12.375rem;
      background: url(/images/campaign/hickman/con07_bg_m.png) no-repeat 100% 100%;
      background-size: cover;
    }
    .sec-inner {
      position: relative;
      align-items: center;
      margin: 0 auto;
      max-width: 40rem;
      height: 100%;
      &::after {
        position: absolute;
        top: -9.1rem;
        left: -28.375rem;
        display: block;
        content: "";
        width: 26.75rem;
        height: 12.75rem;
        background: url(/images/campaign/hickman/con07_character.png) no-repeat center center;
        background-size: contain;
        @media (max-width: 1550px) {
          left: -23.375rem;
        }
        @media (max-width: 1400px) {
          left: -18.375rem;
        }
        @media (max-width: 1280px) {
          top: -9.8rem;
          left: -20%;
        }
        @media (max-width: 1024px) {
          top: -5.1rem;
          left: 0;
          width: 15.375rem;
          height: 7.3125rem;
        }
        @media (max-width: 375px) {
          top: -5.7rem;
          transform: rotate(-5deg);
        }
      }
    }
    .sec07-box {
      position: absolute;
      bottom: 3.5rem;
      display: flex;
      align-items: center;
      gap: 4.5rem;
      @media (max-width: 750px) {
        bottom: 1.875rem;
        flex-direction: column;
        gap: 1rem;
      }
      p {
        font-size: 2.5rem;
        line-height: 1.5;
        text-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.12);
        color: #fff;
        @media (max-width: 750px) {
          font-size: 1.8125rem;
        }
      }
    }
    .campaign_sns__list {
      display: flex;
      gap: 1rem;
      a {
        display: block;
      }
      @media (max-width: 750px) {
        img {
          width: 3.25rem;
          height: 3.25rem;
        }
      }
    }
  }

  .fixed__btn {
    position: fixed;
    right: 3rem;
    bottom: 3rem;
    z-index: 11;
    @media screen and (max-width: 1024px) {
      right: 1rem;
    }
    @media screen and (max-width: 500px) {
      right: 0;
      bottom: 0;
      left: 0;
    }
    .btn {
      position: relative;
      width: 12.5rem;
      height: 6.625rem;
      background: url(/images/campaign/hickman/btn_02.png) no-repeat center center/contain;
      border-radius: 3.1875rem;
      @media (max-width: 500px) {
        width: 100%;
        height: auto;
        background: none;
        border-radius: 0;
      }
      &::after {
        position: absolute;
        bottom: 3.9375rem;
        left: 50%;
        transform: translateX(-50%);
        display: block;
        content: "";
        width: 6.25rem;
        height: 8.9375rem;
        background: url(/images/campaign/hickman/btn_icon_02.png) no-repeat;
        background-size: 6.25rem auto;
        @media screen and (max-width: 1024px) {
          display: none;
        }
      }
      span {
        font-size: 1.125rem;
        @media (max-width: 500px) {
          display: none;
        }
      }
    }
    .mobile_btn {
      display: none;
      @media (max-width: 500px) {
        display: block;
      }
    }
  }
}

@media screen and (max-width: 1280px) {
  section {
    padding: 3rem 1rem 5rem 1rem;
  }
}

@media (max-width: 10242px) {
  .m_fw-600 {
    font-weight: 600 !important;
  }
}
