*, p, div {
  word-break:keep-all;
  box-sizing:border-box;
}

@font-face {
  font-family: "TtangsBudaeJjigae";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2212@1.0/TTTtangsbudaejjigaeM.woff2") format("woff2");
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "TtangsBudaeJjigae";
  src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2212@1.0/TTTtangsbudaejjigaeB.woff2") format("woff2");
  font-weight: 700;
  font-display: swap;
}

:root {
  --cnsi-blue:#393862;
  --cnsi-blue-deep:#0200a1;
  --cnsi-blue-dark:#123d78;
  --cnsi-blue-light:#eaf3ff;
  --cnsi-blue-pale:#f5f9ff;
  --cnsi-sky:#3d8bfd;
  --cnsi-red:#f04452;
  --cnsi-black:#171b24;
  --cnsi-text:#343a46;
  --cnsi-gray:#687080;
  --cnsi-gray-light:#9299a6;
  --cnsi-white:#ffffff;
  --cnsi-bg:#f4f8ff;
  --cnsi-line:#dfe5ed;
  --cnsi-line-dark:#cbd3df;
  --cnsi-radius:14px;
  --cnsi-radius-small:9px;
  --cnsi-shadow:0 8px 24px rgba(18,61,120, .08);
  --cnsi-font:"Pretendard Variable","Pretendard","Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

/**/
  /* ===========================
   HERO
=========================== */

  .hero {
    position: relative;
    /* 고정 height 면 글자가 잘리므로 min-height 로 */
    min-height: 550px;
    overflow: hidden;
    padding: 30px 20px 70px;
    /* 이미지 로딩 전 노출 영역 */
    background: #a39ff4;
    display: flex;
    align-items: center;
    justify-content: center;
    /* 히어로 안 모든 글자 Paperlogy */
    font-family: "Paperlogy", sans-serif;
  }

  /* 배경 이미지 레이어 + 상단 페이드
     background 는 먼저 쓴 레이어가 위에 그려지므로 그라데이션을 앞에 둔다 */
  .hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: url("/img/cnsi/pack/bk.jpg") center / cover no-repeat;
    pointer-events: none;
  }

  @font-face {
    font-family: "Paperlogy";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url("https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-4Regular.woff2")
      format("woff2");
  }
  @font-face {
    font-family: "Paperlogy";
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    src: url("https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-5Medium.woff2")
      format("woff2");
  }
  @font-face {
    font-family: "Paperlogy";
    font-weight: 600;
    font-style: normal;
    font-display: swap;
    src: url("https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-6SemiBold.woff2")
      format("woff2");
  }
  @font-face {
    font-family: "Paperlogy";
    font-weight: 900;
    font-style: normal;
    font-display: swap;
    src: url("https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-9Black.woff2")
      format("woff2");
  }

  .hero-inner {
    position: relative;
    z-index: 2;
    width: 100%;
    /* 설명 4박스를 좌우로 펼치기 위한 폭 (타이틀은 아래에서 720px 로 제한) */
    max-width: 1080px;
    margin: 0 auto;
    text-align: center;
  }

  /* ---- 타이틀 : 은색 + 금색 3D 레터링 ---- */
  .hero-title {
    margin: 40px 0 15px;
    font-size: clamp(38px, 11vw, 92px);
    line-height: 1.12;
    font-weight: 900;
    letter-spacing: -0.02em;
    -webkit-text-stroke: 3px #fff;
    /* 획은 글자 윤곽선을 '중심'으로 그려져 절반이 안쪽을 파먹는다.
       stroke 를 fill 뒤로 보내면 흰 획이 전부 바깥으로 나가고
       어두운 글자는 원래 두께를 그대로 유지한다 */
    paint-order: stroke fill;
  }

  /* 어두운 글자 + 흰색 그림자만으로 배경에서 분리.
     drop-shadow 는 앞 단계 결과에 다시 그림자를 붙이므로 순서가 중요하다.
     ① 흰색 3D 두께 → ② 그 둘레로 흰 후광 3겹 */
  .hero-title span {
    display: block;
    color: #12224f;
    filter: drop-shadow(0 0 9px rgb(255, 255, 255))
      drop-shadow(0 0 16px rgb(255, 255, 255, 85%))
      drop-shadow(0 0 38px rgb(255, 255, 255, 00%));
  }

  .hero-title .ht-gold {
    color: #16409b;
  }

  /* ---- 슬로건 ----
     사진 배경 위에서 확실히 읽히도록 네이비 알약 배지로 처리
     (글자색·후광만으로는 배경 대비가 불안정) */
  .hero-slogan {
    display: inline-block;
    max-width: 900px;
    margin: 20px auto 0;
    padding: 13px 30px;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -0.01em;
    color: #ffffff;
    background: #08318b;
    border: 2px solid rgb(22 41 131);
    border-radius: 999px;
    /* 배지를 배경에서 띄우는 그림자 :
       접지(짧고 진하게) → 중거리 → 확산 순으로 옅은 검정을 겹침 */
    box-shadow:
      0 2px 5px rgb(0 0 0 / 18%),
      0 8px 18px rgb(0 0 0 / 22%),
      0 18px 34px rgb(0 0 0 / 16%);
    /* 흰 글자에 아주 옅은 그림자를 넣어 배지 안에서도 한 겹 떠 보이게 */
    text-shadow: 0 1px 2px rgb(0 0 0 / 35%);
    word-break: keep-all;
    position: relative;
    z-index: 11;
  }

  /* ---- 우하단 화살표 콜아웃 ---- */
  .hero-arrow {
    position: absolute;
    right: clamp(16px, 3.4vw, 60px);
    bottom: clamp(14px, 2.6vw, 40px);
    z-index: 3;
    width: clamp(100px, 17vw, 200px);
    height: auto;
    pointer-events: none;
    filter: drop-shadow(0 4px 10px rgb(0 0 0 / 18%));
  }

  /* 핵심 문구는 금색으로 한 번 더 강조 */
  .hero-slogan b {
    color: #ffd84d;
    font-weight: 700;
  }

  /* ---- 설명 4박스 : 웹에서는 좌우로 나란히 ---- */
  .hero-points {
    list-style: none;
    max-width: 1080px;
    /* 타이틀보다 위에 놓이므로 여백은 아래쪽에 */
    margin: 0 auto 26px;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
  }

  .hero-points li {
    display: flex;
    /* 웹 : 아이콘이 위 중앙, 그 아래로 제목 + 내용 */
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 24px 18px;
    background: #ecfcff;
    border: 1px solid #b0ecf7;
    border-radius: 16px;
    text-align: center;
    word-break: keep-all;
  }

  .hero-points .hp-icon {
    display: block;
    font-size: 30px;
    line-height: 1;
  }

  .hero-points .hp-title {
    display: block;
    margin-bottom: 6px;
    padding: 0 28px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
    color: #0a638d;
  }

  .hero-points .hp-desc {
    margin: 0;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    color: #55617a;
  }

  /* ===========================
   TAB MENU (카드형)
=========================== */
  .cnsi_index_wrap {
    position: relative;
    margin: 40px 0 60px;
  }

  .cnsi_index_nav {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    /* 히어로 바깥이라 폰트를 따로 지정해야 함 */
    font-family: "Paperlogy", sans-serif;
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
    /* 위쪽 10px : hover 로 카드가 떠오를 자리 */
    padding: 10px 20px 0;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    list-style: none;
  }

  /* 항목별 포인트 색 : 아이콘·글자·테두리가 한 변수를 공유 */
  .cnsi_index_nav li {
    min-width: 0;
  }
  /* 아이콘은 인라인 SVG 대신 data URI 마스크로 넣는다.
     문서에 <svg> 가 없으므로 SVG 네임스페이스로 파서가 빨려드는 문제가 없다. */
  .cnsi_index_nav li:nth-child(1) {
    --acc: #1a7fd4;
    --acc-bg: #e8f3fd;
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2.6a1.7 1.7 0 0 1 1.7 1.7v4.6l7.5 4.4v2.1l-7.5-2.4v4.3l2.4 1.8v1.7L12 19.7l-4.1 1.1v-1.7l2.4-1.8v-4.3L2.8 15.4v-2.1l7.5-4.4V4.3A1.7 1.7 0 0 1 12 2.6z'/%3E%3C/svg%3E");
  }
  .cnsi_index_nav li:nth-child(2) {
    --acc: #d13a26;
    --acc-bg: #fdecea;
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='10' r='6.8'/%3E%3Ccircle cx='12' cy='10' r='1.5'/%3E%3Cpath d='M12 8.5c0-3 1.2-4.5 3-4.5 1.4 0 2.3 1 2.3 2.3 0 1.9-1.8 3.2-5.3 3.2'/%3E%3Cpath d='M13.3 11c2.6 1.5 3.2 3.4 2.3 4.9-.7 1.2-2.1 1.4-3.2.8-1.6-1-1.6-3.2.9-5.7'/%3E%3Cpath d='M10.7 11c-2.6 1.5-4.4 1-5.3-.5-.7-1.2-.2-2.6.9-3.2 1.6-1 3.5.2 4.4 3.7'/%3E%3Cpath d='M12 16.8v2.4'/%3E%3Cpath d='M9.2 19.2h5.6'/%3E%3C/svg%3E");
  }
  .cnsi_index_nav li:nth-child(3) {
    --acc: #dd7a10;
    --acc-bg: #fdf2e3;
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 8.6c-1-1-2.4-1.4-3.7-1.1C6.2 8 4.9 10 4.9 12.6c0 3.3 2.4 7.5 4.6 7.5.9 0 1.5-.5 2.5-.5s1.6.5 2.5.5c2.2 0 4.6-4.2 4.6-7.5 0-2.6-1.3-4.6-3.4-5.1-1.3-.3-2.7.1-3.7 1.1z'/%3E%3Cpath d='M12 8.6c0-2.3 1.6-4 3.8-4.3'/%3E%3C/svg%3E");
  }
  .cnsi_index_nav li:nth-child(4) {
    --acc: #1494ad;
    --acc-bg: #e6f6f9;
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9.6V21'/%3E%3Cpath d='M12 9.6C10.3 7.6 7.4 7.2 5.1 8.7'/%3E%3Cpath d='M12 9.6c1.7-2 4.6-2.4 6.9-.9'/%3E%3Cpath d='M12 9.6C11.2 7 8.8 5.2 6.1 5.4'/%3E%3Cpath d='M12 9.6c.8-2.6 3.2-4.4 5.9-4.2'/%3E%3Cpath d='M8.4 21c1.4-1.5 5.8-1.5 7.2 0'/%3E%3C/svg%3E");
  }
  .cnsi_index_nav li:nth-child(5) {
    --acc: #3a9440;
    --acc-bg: #eaf6eb;
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19.8 12v8.4H4.2V12'/%3E%3Crect x='2.6' y='7.6' width='18.8' height='4.4' rx='1.1'/%3E%3Cpath d='M12 7.6V20.4'/%3E%3Cpath d='M12 7.6S10.8 3.2 8.4 3.2a2.2 2.2 0 0 0 0 4.4z'/%3E%3Cpath d='M12 7.6s1.2-4.4 3.6-4.4a2.2 2.2 0 0 1 0 4.4z'/%3E%3C/svg%3E");
  }

  /* 메뉴 버튼 */
  .cnsi_index_nav li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 22px 10px 20px;
    text-decoration: none;
    background: linear-gradient(180deg, #ffffff 0%, #f5faff 100%);
    border: 2px solid #dceafb;
    border-radius: 18px;
    box-shadow: 0 6px 16px rgb(22 64 155 / 12%);
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease,
      border-color 0.25s ease;
  }

  .cnsi_index_nav li a:hover {
    transform: translateY(-8px);
    border-color: var(--acc);
    box-shadow: 0 16px 30px rgb(22 64 155 / 24%);
  }

  /* SVG 아이콘 원형 배지 */
  .cnsi_index_nav .ico {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--acc-bg);
    color: var(--acc);
    transition:
      background 0.25s ease,
      color 0.25s ease,
      transform 0.25s ease;
  }

  /* 마스크로 그려지는 아이콘 본체.
     background 가 currentColor 라 .ico 의 color 만 바꾸면 아이콘 색이 따라옴 */
  .cnsi_index_nav .ico::before {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    background: currentColor;
    -webkit-mask: var(--icon) center / contain no-repeat;
    mask: var(--icon) center / contain no-repeat;
  }

  /* 호버 시 아이콘이 색을 채우고 살짝 기울며 튀어오름 */
  .cnsi_index_nav li a:hover .ico {
    background: var(--acc);
    color: #ffffff;
    transform: scale(1.08) rotate(-7deg);
  }

  /* 메뉴 텍스트 */
  .cnsi_index_nav .label {
    display: block;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -0.04em;
    /* 폴백을 둬야 --acc 가 어떤 이유로 안 잡혀도 글자가 사라지지 않음
       (var() 가 해석 실패하면 color 는 상속값으로 떨어진다) */
    color: var(--acc, #16409b);
    text-align: center;
    word-break: keep-all;
  }

  /* 둘째 줄 "패키지" */
  .cnsi_index_nav .label .sub {
    display: block;
    margin-top: 3px;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: #8592a8;
  }

  .cnsi_index_nav li.on a {
    border-color: #1f7fe0;
    box-shadow:
      0 0 0 2px #1f7fe0,
      0 12px 26px rgb(22 64 155 / 20%);
  }

  /* ===== 스크롤 고정 : 컴팩트 바로 전환 ===== */
  .cnsi_index_nav.is-fixed {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
    height: 72px;
    margin: 0;
    /* 배경은 화면 전체 폭, 버튼은 1080px 컨테이너 안으로 */
    padding: 0 max(20px, calc((100% - 1080px) / 2));
    gap: 0;
    background: #ffffff;
    border-bottom: 3px solid #16409b;
    box-shadow: 0 4px 14px rgb(22 64 155 / 16%);
    z-index: 99999;
  }

  /* 고정 바에서는 아이콘과 글자를 가로로 나란히 */
  .cnsi_index_nav.is-fixed li a {
    height: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 6px;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    transform: none;
  }

  .cnsi_index_nav.is-fixed li a:hover {
    transform: none;
    background: var(--acc-bg);
    box-shadow: none;
  }

  .cnsi_index_nav.is-fixed .ico {
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
  }

  .cnsi_index_nav.is-fixed .ico::before {
    width: 19px;
    height: 19px;
  }

  .cnsi_index_nav.is-fixed li a:hover .ico {
    transform: none;
    background: var(--acc);
    color: #ffffff;
  }

  /* 고정 바에서는 "패키지"를 같은 줄로 붙여 높이를 줄임 */
  .cnsi_index_nav.is-fixed .label {
    font-size: 17px;
  }

  .cnsi_index_nav.is-fixed .label .sub {
    display: inline;
    margin: 0 0 0 4px;
    font-size: 15px;
  }

  .cnsi_index_nav.is-fixed li.on a {
    background: #eaf3fd;
    box-shadow: inset 0 -3px 0 #1f7fe0;
  }

  @media (max-width: 1280px) {
    .cnsi_index_wrap {
      margin: 30px 0 40px;
    }

    .cnsi_index_nav {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 12px;
      padding: 10px 24px 0;
    }

    /* 3개씩 배치하고, 마지막 줄에 남는 2개는 가운데로 모임 */
    .cnsi_index_nav li {
      flex: 0 1 calc((100% - 24px) / 3);
      max-width: calc((100% - 24px) / 3);
    }

    .cnsi_index_nav li a {
      gap: 9px;
      padding: 16px 8px 14px;
      border-radius: 14px;
    }

    .cnsi_index_nav .ico {
      width: clamp(44px, 13vw, 56px);
      height: clamp(44px, 13vw, 56px);
    }

    .cnsi_index_nav .ico::before {
      width: clamp(24px, 7vw, 30px);
      height: clamp(24px, 7vw, 30px);
    }

    .cnsi_index_nav .label {
      font-size: clamp(15px, 4.2vw, 19px);
    }

    /* 고정 바는 모바일에서도 5칸 한 줄 유지 */
    .cnsi_index_nav.is-fixed {
      flex-wrap: nowrap;
      justify-content: stretch;
      height: clamp(56px, 15vw, 72px);
      padding: 0 6px;
    }

    .cnsi_index_nav.is-fixed li {
      flex: 1 1 0;
      max-width: none;
    }

    /* 5칸이 좁아 아이콘을 접고 글자만 남김 */
    .cnsi_index_nav.is-fixed li a {
      padding: 0 3px;
      gap: 0;
    }

    .cnsi_index_nav.is-fixed .ico {
      display: none;
    }

    /* 좁은 5칸 안에 들어가도록 화면 폭에 연동 */
    .cnsi_index_nav.is-fixed .label {
      font-size: clamp(12px, 3.2vw, 16px);
      letter-spacing: -0.05em;
    }

    .cnsi_index_nav.is-fixed .label .sub {
      display: none;
    }
  }

  /* ===========================
   반응형
=========================== */

  @media (max-width: 940px) {
    .hero {
      min-height: 0;
      /* 하단 여백을 키워 화살표가 놓일 자리를 비워둠 (기본값 44px) */
      padding: 36px 18px 44px;
    }

    /* 글자가 작아진 만큼 흰 획도 축소 (paint-order 는 부모에서 상속됨) */
    .hero-title span {
      -webkit-text-stroke: 2px #fff;
    }

    .hero-arrow {
      display: none;
    }
    /* .hero-arrow {
      right: 10px;
      bottom: 10px;
      width: clamp(120px, 34vw, 200px);
    } */

    .hero-slogan {
      margin-top: 14px;
      padding: 10px 20px;
      font-size: clamp(14px, 3.8vw, 20px);
      border-width: 1.5px;
    }

    /* 모바일은 2 x 2 */
    .hero-points {
      grid-template-columns: repeat(2, 1fr);
      max-width: 575px;
      margin-bottom: 20px;
      gap: 8px;
    }

    /* 칸이 좁아지므로 아이콘을 다시 위로 (가로 배치는 폭이 안 나옴) */
    .hero-points li {
      flex-direction: column;
      align-items: center;
      text-align: center;
      gap: 8px;
      padding: 16px 10px;
      border-radius: 14px;
    }

    .hero-points .hp-icon {
      font-size: clamp(24px, 6.5vw, 30px);
      line-height: 1;
    }

    .hero-points .hp-title {
      margin-bottom: 4px;
      padding: 0;
      font-size: clamp(14px, 3.9vw, 18px);
    }

    .hero-points .hp-desc {
      font-size: clamp(12px, 3.2vw, 14px);
      line-height: 1.5;
    }
  }
/*end*/


/* 기본 설정 */
.cnsi_pck {
  width:100%;
  word-break:keep-all;
  overflow-wrap:break-word;
  background:var(--cnsi-white);
  color:var(--cnsi-text);
  font-family:var(--cnsi-font);
  box-sizing:border-box;
}

.cnsi_pck *, .cnsi_pck *:before, .cnsi_pck *:after {
  box-sizing:border-box;
}

.pack-stats {
  display:flex;
  gap:12px;
  margin:30px auto;
  max-width:960px;
}

.pack-stats .sb {
  width:100%;
  background:#fff;
  border:1px solid #d2e2ed;
  border-radius:14px;
  padding:16px 14px;
  text-align:center;
}

.pack-stats .ico {
  font-size:19px;
  margin-bottom:6px;
}

.pack-stats .k {
  font-size:14px;
  color:#283ff1;
  line-height:1.2;
  letter-spacing:.06em;
}

.pack-stats .v {
  font-size:1.1rem;
  font-weight:800;
  margin-top:3px;
  letter-spacing:-.02em;
}

/* 단계 제목 *//* 패키지 목록 *//* 상세 콘텐츠 */.snci_content {
  margin:0px auto 0;
}

.snci_content section {
  scroll-margin-top:100px;
}

.snci_content #activity-pack {
  margin:0 auto 50px;
}

.snci_content section:last-child {
  margin-bottom:40px;
}

.snci_content h2.s_tit {
  position:relative;
  margin-bottom:15px;
  color:var(--cnsi-black);
  font-size:35px;
  line-height:1.45;
  font-weight:800;
  letter-spacing:-.035em;
  text-align:center;
  font-family: "TtangsBudaeJjigae";
}

/* 표 *//* 첫 번째 열 *//* 가격 열 *//* A, B, C 배지용 클래스가 추가될 경우 사용 *//* 섹션 설명문 */.snci_content>section>p {
  margin-top:14px;
  color:var(--cnsi-gray);
  font-size:14px;
  line-height:1.4;
}

/* 유의사항 */.notice {
  max-width:960px;
  margin:0px auto 2em;
}

.notice h2.s_tit {
  position:relative;
  margin:0 0 18px;
  padding-left:17px;
  color:var(--cnsi-black);
  font-size:22px;
  line-height:1.4;
  font-weight:800;
  letter-spacing:-.03em;
}

.notice h2.s_tit:before {
  content:"";
  position:absolute;
  top:4px;
  left:0;
  width:5px;
  height:23px;
  background:var(--cnsi-blue);
}

.notice ul {
  margin:0;
  padding:22px 25px;
  list-style:none;
  border-radius:12px;
  background:#ececec;
}

.notice li {
  position:relative;
  margin:0;
  padding:10px 5px 10px 25px;
  border-bottom:1px solid #aaa;
  color:#505a69;
  font-size:14px;
  line-height:1.65;
}

.notice li b {
  color:#000;
}

.notice li:last-child {
  border-bottom:0;
}

.notice li:before {
  content:"";
  position:absolute;
  top:17px;
  left:3px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#555;
}

/* 기존 컨시어지 목록 페이지 공용 스타일 *//* 데스크톱 *//* 태블릿 *//* 모바일 */@media (max-width:780px) {
  /* 세 단계 가로 배치 *//* 상세 콘텐츠 */.snci_content {
  margin-top:0px;
}

.snci_content h2.s_tit {
  margin:40px 0 0;
  font-size:1.6em;
}

/* 모바일 표 */.notice {
  margin-bottom:55px;
  padding:0 14px;
}

.notice h2.s_tit {
  font-size:19px;
}

.notice ul {
  padding:15px 16px;
  border-radius:9px;
}

.notice li {
  padding:9px 2px 9px 15px;
  line-height:1.4;
}

.notice li:before {
  top:15px;
  left:2px;
  width:6px;
  height:6px;
}

}

/* 작은 모바일 */@media (max-width:480px) {


  .snci_content section, .snci_content section:last-child {
  margin-bottom:20px;
}

.notice {
  margin-bottom:20px;
  padding:0 10px;
}

.notice h2.s_tit {
  font-size:17px;
}

.notice ul {
  padding:0 10px;
}

}

/* 상단 비주얼 타이틀 *//* 본문 공통 사진 영역 *//* 이미지와 설명 2단 구성 *//* 귀국 전 배너 이미지 *//*과일*/.fruit-basket {
  overflow: hidden;
  background: #fff;
  color: #333;
}

.fruit-basket * {
  box-sizing: border-box;
}

.fruit-hero {
  padding:35px 30px 40px;
  text-align: center;
  background:linear-gradient(135deg, #ecf2f7 0%, #f9fffd 100%);
}

.fruit-eyebrow {
  margin-bottom: 12px;
  color: #42aeb3;
  font-size: 13px;
  letter-spacing: 3px;
}

.fruit-content {
  padding: 35px 20px 30px;
}

.fruit-section-heading {
  margin-bottom: 18px;
  text-align: center;
}

.fruit-section-heading h4 {
  margin: 0;
  font-weight:900;
  color: #33691e;
  font-size: 1.2rem;
}

.fruit-section-heading p {
  margin: 6px 0 0;
  color: #999;
  font-size: 12px;
}

.fruit-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  max-width:960px;
  margin: 0 auto;
}

.fruit-card {
  overflow: hidden;
  border-radius: 10px;
  background: #fafafa;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.fruit-card img {
  display: block;
  width: 100%;
  height: auto;
}

.fruit-card p {
  min-height: 48px;
  margin: 0;
  padding: 8px;
  color: #555;
  font-size: 15px;
  line-height: 1.5;
  text-align: center;
}

.fruit-notice {
  max-width:960px;
  margin: 25px auto 0;
  padding: 14px 18px;
  border-radius: 8px;
  background:#f2f6f6;
  color:#486679;
  font-size: 14px;
}

@media screen and (max-width: 900px) {
  .fruit-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

}

@media screen and (max-width: 640px) {
  .fruit-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.fruit-content {
  padding: 30px 12px;
}

}

.fruit-review {
  width:100%;
  max-width:960px;
  padding:10px 20px 20px;
  background:#385262;
  box-sizing:border-box;
  margin:0px auto 20px;
}

.fruit-review-tit {
  margin:10px 0 18px;
  color:#fff;
  font-size:20px;
  font-weight:700;
  text-align:center;
}

.fruit-review ul {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  margin:0;
  padding:0;
  list-style:none;
}

.fruit-review li {
  min-width:0;
  margin:0;
  padding:0;
  background:#fff;
  border-radius:12px;
  overflow:hidden;
}

.fruit-review li a {
  display:flex;
  height:100%;
  flex-direction:column;
  color:#222;
  text-decoration:none;
}

.fruit-review-info {
  padding:17px 18px 14px;
  background:#fff;
  box-sizing:border-box;
}

.fruit-review-info strong {
  display:block;
  overflow:hidden;
  margin-bottom:9px;
  color:#222;
  font-size:18px;
  font-weight:700;
  line-height:1.4;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.fruit-review-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#777;
  font-size:13px;
  line-height:1.4;
}

.fruit-review-meta span {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.fruit-review-meta time {
  flex-shrink:0;
}

.fruit-review-img {
  position:relative;
  overflow:hidden;
  width:100%;
  height:150px;
  aspect-ratio:2 / 1;
  background:#eee;
}

.fruit-review-img img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}

.fruit-review li a:hover .fruit-review-img img {
  transform:scale(1.05);
}

@media screen and (max-width:900px) {
  .fruit-review ul {
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

}

@media screen and (max-width:560px) {
  .fruit-review {
  padding:25px;
}

.fruit-review-tit {
  margin:6px 0 14px;
  font-size:18px;
}

.fruit-review ul {
  grid-template-columns:1fr;
  gap:12px;
}

.fruit-review-img {
  height:80px;
}

.fruit-review-info {
  padding:14px 15px 12px;
}

.fruit-review-info strong {
  font-size:16px;
}

}

@media(max-width:780px) {
	.hero-desc p {  word-break:keep-all;  display: inline-block;  line-height:1.3;}
}

/* 작은 모바일 */@media(max-width:480px) {

  .pack-stats {
  margin:10px 0 30px;
  flex-wrap: wrap;
}

.pack-stats .sb {
  padding:10px;
  line-height: 1.2;
}

.fruit-hero {
  padding:30px 20px;
}

.activity-pack-price {
  width:100%;
}

.entry-pack-lbl {
  width:100%;
  text-align:center;
  margin-top:10px;
}

.entry-pack-chip {
  width:100%;
}

.snci_content h2.s_tit {
  font-size: 1.9em;
  margin:0px;
}

.rental-pack-builder {
  padding: 12px;
}

}



.entry-pack-area {
  margin:0 auto;
  padding:0 20px;
  color:#1E1A12;
  font-size:15px;
  line-height:1.7;
  background:radial-gradient(900px 460px at 12% -6%, #d6ecff 0%, rgba(255, 240, 196, 0) 62%), radial-gradient(760px 420px at 92% 4%, #f0f1ff 0%, rgba(230, 245, 228, 0) 60%), linear-gradient(180deg, #f6fcff 0%, #FFFFFF 46%);
  -webkit-font-smoothing:antialiased;
}

.entry-pack-area * {
  box-sizing:border-box;
}

.entry-pack-hero {
  text-align:center;
  padding:35px 0 0;
  margin:auto;
}

.entry-pack-eyebrow {
  font-size:13px;
  letter-spacing:.34em;
  color:#3f36f3;
  text-transform:uppercase;
}

.entry-pack-hero h3 em {
  font-style:normal;
  color:#0036d5;
}

.entry-pack-section {
  margin:0 auto 50px;
  max-width:960px;
}

.entry-pack-sec-head {
  margin-bottom:24px;
}

.entry-pack-sec-head h4 {
  font-size:23px;
  font-weight:800;
  letter-spacing:-.035em;
}

.entry-pack-sec-head p {
  color:#283ff1;
  font-size:14px;
  margin-top:5px;
}

.entry-pack-packs {
  display:flex;
  flex-direction:column;
  gap:18px;
}

.entry-pack-pack {
  display:grid;
  grid-template-columns:290px 1fr;
  background:#fff;
  border:1px solid #d2e2ed;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 1px 2px rgba(30,26,18,.04);
}

.entry-pack-shot {
  position:relative;
  min-height:290px;
  overflow:hidden;
  background:#fff;
  border-right:1px solid #d2e2ed;
}

.entry-pack-shot img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

.entry-pack-badge {
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  padding:8px 11px;
  border-radius:8px;
  background:#1E1A12;
  color:#fff;
  font-family:"SBAggro";
  font-size:15px;
  line-height:1;
  letter-spacing:.06em;
}

.entry-pack-pack-body {
  display:flex;
  flex-direction:column;
  padding:24px 26px;
}

.entry-pack-pack-body h5 {
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:9px;
  font-weight:800;
  letter-spacing:-.03em;
}

.entry-pack-pack-body h5 small {
  font-size:13px;
  font-weight:600;
  color:#283ff1;
  letter-spacing:0;
}

.entry-pack-desc {
  font-size:.98rem;
  color:#5C5548;
  margin-top:9px;
}

.entry-pack-desc b {
  font-weight:700;
  color:#1E1A12;
}

.entry-pack-opt {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  margin-top:13px;
}

.entry-pack-lbl {
  padding:4px 8px;
  margin-right:2px;
  border-radius:6px;
  background:#e2f4ff;
  color:#283ff1;
  font-size:14px;
  font-weight:800;
  letter-spacing:.08em;
}

.entry-pack-chip {
  padding:7px 13px;
  border:1px solid #d2e2ed;
  border-radius:999px;
  background:#fff;
  color:#5C5548;
  font-size:14px;
  font-weight:600;
  line-height:1.25;
  cursor:pointer;
  transition:.15s;
}

.entry-pack-chip:hover {
  border-color:#003fe0;
  color:#1E1A12;
}

.entry-pack-chip .entry-pack-plus {
  margin-left:5px;
  color:#003fe0;
  font-size:13px;
  font-weight:800;
}

.entry-pack-chip[aria-pressed="true"] {
  background:#1E1A12;
  border-color:#1E1A12;
  color:#fff;
}

.entry-pack-chip[aria-pressed="true"] .entry-pack-plus {
  color:#7f2eff;
}

.entry-pack-chip:focus-visible {
  outline:2px solid #003fe0;
  outline-offset:2px;
}

.entry-pack-bottom {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
  margin-top:auto;
  padding-top:18px;
}

.entry-pack-items {
  flex:1;
  min-width:180px;
  color:#283ff1;
  font-size:14px;
}

.entry-pack-price {
  flex-shrink:0;
  text-align:right;
}

.entry-pack-krw {
  font-family:"SBAggro";
  font-size:1.8rem;
  line-height:1;
  letter-spacing:.01em;
  color:#1E1A12;
}

.entry-pack-krw::after {
  content:"원";
  margin-left:2px;
  font-size:14px;
  font-weight:800;
}

.entry-pack-brk {
  display:block;
  min-height:15px;
  margin-top:5px;
  color:#003fe0;
  font-size:11px;
  font-weight:700;
}

.entry-pack-cta {
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  gap:8px;
  margin-top:15px;
  padding:10px 15px;
  border-radius:10px;
  background:#003fe0;
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  transition:.15s;
}

.entry-pack-cta:hover {
  background:#1E1A12;
}

.entry-pack-arw {
  font-family:"SBAggro";
  font-size:14px;
}

.entry-pack-flow {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.entry-pack-flow>div {
  padding:20px 18px;
  border:1px solid #d2e2ed;
  border-radius:14px;
  background:#fff;
}

.entry-pack-n {
  font-family:"SBAggro";
  font-size:13px;
  color:#003fe0;
  letter-spacing:.14em;
}

.entry-pack-flow h6 {
  margin:8px 0 6px;
  font-size:1.1rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.entry-pack-flow p {
  font-size:13px;
  color:#6b6b6b;
}

@media (max-width:760px) {

  .entry-pack-pack {
  grid-template-columns:1fr;
}

.entry-pack-shot {
  min-height:0;
  aspect-ratio:1/1;
  border-right:0;
  border-bottom:1px solid #d2e2ed;
}

.entry-pack-pack-body {
  padding:20px;
}

.entry-pack-flow {
  grid-template-columns:1fr;
}
.entry-pack-krw{font-size:1.6rem;}
.entry-pack-price {
  text-align:left;
}

}

@media (prefers-reduced-motion:reduce) {
  .entry-pack-area * {
  transition:none!important;
}

}

.rental-pack-area {
  margin:0 auto;
  padding:0 20px;
  color:#1E1A12;
  font-size:15px;
  line-height:1.7;
  background:radial-gradient(900px 460px at 12% -6%, #e8efff 0%, rgb(196 255 250 / 0%) 62%), radial-gradient(760px 420px at 92% 4%, #E6F5E4 0%, rgba(230, 245, 228, 0) 60%), linear-gradient(180deg, #f6fcff 0%, #FFFFFF 46%);
  -webkit-font-smoothing:antialiased;
}

.rental-pack-area img {
  display:block;
  max-width:100%;
}

.rental-pack-tn {
  font-variant-numeric:tabular-nums;
}

/* ---------- hero ---------- */.rental-pack-hero {
  text-align:center;
  padding:35px 0 0;
}

.rental-pack-eyebrow {
  font-size:13px;
  letter-spacing:.34em;
  color:#81bfff;
  text-transform:uppercase;
}

.ai_tit {
  font-size:clamp(30px,6.4vw,34px);
  font-weight:800;
  line-height:1.28;
  letter-spacing:-.035em;
  margin:16px 0 20px;
}

.ai_tit em {
  font-style:normal;
}

.rental-pack-hero .ai_tit em {
  color:#18b1ff;
}

.fruit-hero .ai_tit em {
  color:#00b07d;
}

.gift-pack-intro .ai_tit em {
  color:#00a4e9;
}

.ai_tit_tx {
  font-size:16px;
  max-width:600px;
  margin:0 auto;
}

.rental-pack-hero .ai_tit_tx {
  color:#64677a;
}

/* ---------- div ---------- */.rental-pack-sec {
  margin:0 auto 20px;
  max-width:960px;
}

.rental-pack-sec-head {
  display:flex;
  align-items:baseline;
  gap:12px;
  margin-bottom:6px;
}

.rental-pack-sec-num {
  font-size:15px;
  color:#328dff;
  letter-spacing:.1em;
}

.rental-pack-sec-head h4 {
  font-size:23px;
  font-weight:800;
  letter-spacing:-.035em;
}

.rental-pack-sec-lead {
  color:#64677a;
  font-size:14.5px;
  margin-bottom:24px;
}

/* ---------- pack ---------- */.rental-pack-packs {
  display:grid;
  gap:16px;
}

.rental-pack-pack {
  background:#FFFFFF;
  border:1px solid #d2deed;
  border-radius:20px;
  padding:20px;
  display:grid;
  grid-template-columns:140px 1fr auto;
  gap:20px;
  align-items:center;
}

.rental-pack-pack.rental-pack-best {
  border-color:#2ec1ff;
  box-shadow:0 10px 28px #58b8ff1a;
}

.rental-pack-shot {
  width:140px;
  aspect-ratio:3/4;
  border-radius:14px;
  overflow:hidden;
  position:relative;
  background:#fff;
  border:1px solid #d2deed;
}

.rental-pack-shot img {
  width:100%;
  height:100%;
  object-fit:contain;
  padding:8px;
}

.rental-pack-shot img[src=""] {
  display:none;
}

.rental-pack-pack-body {
  min-width:0;
}

.rental-pack-pack-name {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:9px;
}

.rental-pack-pack-name .rental-pack-id {
  font-size:24px;
  color:#18b1ff;
  letter-spacing:.04em;
}

.rental-pack-pack-name h5 {
  font-weight:800;
  letter-spacing:-.03em;
}

.rental-pack-tag {
  background:#ff222d;
  color:#fff;
  font-size:10.5px;
  font-weight:700;
  padding:3px 8px;
  border-radius:999px;
  letter-spacing:-.02em;
}

.rental-pack-items {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.rental-pack-item {
  display:inline-flex;
  align-items:baseline;
  gap:5px;
  background:#f6f9ff;
  border:1px solid #d2deed;
  border-radius:999px;
  padding:3px 11px;
  font-size:16px;
  letter-spacing:-.02em;
}

.rental-pack-item u {
  text-decoration:none;
  color:#64677a;
  font-size:13px;
}

.rental-pack-price {
  text-align:right;
  white-space:nowrap;
}

.rental-pack-price .rental-pack-krw {
  font-size:24px;
  font-weight:800;
  letter-spacing:-.04em;
  color:#1E1A12;
}

.rental-pack-price .rental-pack-krw span {
  font-size:16px;
  font-weight:700;
  margin-left:1px;
}

.rental-pack-price .rental-pack-note {
  font-size:11.5px;
  color:#2E7D52;
  margin-top:2px;
  letter-spacing:-.02em;
}

/* ---------- builder ---------- */.rental-pack-builder {
  background:#FFFFFF;
  border:1px solid #d2deed;
  border-radius:20px;
  padding:22px;
}

.rental-pack-chips {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
}

.rental-pack-chip {
  font-weight:bold;
  font-size:13.5px;
  letter-spacing:-.02em;
  background:#fff;
  border:1px solid #d2deed;
  border-radius:999px;
  padding:9px 14px;
  cursor:pointer;
  color:#1E1A12;
  transition:.15s;
  display:inline-flex;
  align-items:baseline;
  gap:6px;
}

.rental-pack-chip:hover {
  border-color:#328dff;
}

.rental-pack-chip:focus-visible {
  outline:2px solid #18b1ff;
  outline-offset:2px;
}

.rental-pack-chip .rental-pack-plus {
  color:#64677a;
  font-size:11.5px;
  font-weight:400;
}

.rental-pack-chip[aria-pressed="true"] {
  background:#ebfdff;
  border-color:#328dff;
  font-weight:700;
}

.rental-pack-chip[aria-pressed="true"] .rental-pack-plus {
  color:#18b1ff;
}

.rental-pack-grp {
  margin-bottom:20px;
}

.rental-pack-grp-t {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
}

.rental-pack-grp-t h5 {
  font-size:1.1rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.rental-pack-grp-t em {
  font-style:normal;
  font-size:11.5px;
  color:#64677a;
  letter-spacing:-.02em;
}

.rental-pack-cart {
  border-top:1px dashed #d2deed;
  padding-top:16px;
}

.rental-pack-cart-empty {
  font-size:13.5px;
  color:#64677a;
  letter-spacing:-.02em;
  padding:6px 0 10px;
}

.rental-pack-line {
  display:flex;
  align-items:center;
  gap:12px;
  padding:8px 0;
  border-bottom:1px solid #F6F1E4;
}

.rental-pack-line:last-of-type {
  border-bottom:0;
}

.rental-pack-line .rental-pack-nm {
  flex:1;
  min-width:0;
  font-size:13.5px;
  letter-spacing:-.02em;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.rental-pack-line .rental-pack-nm u {
  text-decoration:none;
  color:#64677a;
  font-size:11.5px;
  margin-left:6px;
}

.rental-pack-line .rental-pack-amt {
  font-size:13.5px;
  font-weight:700;
  width:78px;
  text-align:right;
}

.rental-pack-qty {
  display:inline-flex;
  align-items:center;
  border:1px solid #d2deed;
  border-radius:999px;
  overflow:hidden;
  background:#fff;
}

.rental-pack-qty button {
  width:28px;
  height:28px;
  border:0;
  background:none;
  font-size:15px;
  line-height:1;
  color:#18b1ff;
  cursor:pointer;
}

.rental-pack-qty button:hover {
  background:#ebfdff;
}

.rental-pack-qty button:focus-visible {
  outline:2px solid #18b1ff;
  outline-offset:-2px;
}

.rental-pack-qty i {
  font-style:normal;
  min-width:22px;
  text-align:center;
  font-size:13px;
  font-weight:700;
}

.rental-pack-line .rental-pack-one {
  font-size:12px;
  color:#64677a;
  letter-spacing:-.02em;
  padding:0 6px;
}

.rental-pack-cta {
  display:block;
  text-align:center;
  margin:22px auto 0;
  max-width:340px;
  background:#18b1ff;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  font-size:1.1rem;
  letter-spacing:-.03em;
  padding:15px 20px;
  border-radius:14px;
  transition:.15s;
}

.rental-pack-cta:hover {
  background:#3718ff;
}

.rental-pack-cta:focus-visible {
  outline:2px solid #1E1A12;
  outline-offset:2px;
}

.rental-pack-cta-note {
  text-align:center;
  font-size:12.5px;
  color:#64677a;
  margin-top:10px;
  letter-spacing:-.02em;
}

.rental-pack-sum {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-top:1px solid #d2deed;
  margin-top:14px;
  padding-top:16px;
  flex-wrap:wrap;
}

.rental-pack-sum .rental-pack-lbl {
  font-size:13px;
  color:#64677a;
  letter-spacing:-.02em;
}

.rental-pack-sum .rental-pack-amt {
  font-size:28px;
  font-weight:800;
  letter-spacing:-.04em;
}

.rental-pack-sum .rental-pack-amt span {
  font-size:17px;
  font-weight:700;
}

/* ---------- notes ---------- */.rental-pack-notes {
  background:#dff4ff;
  border-radius:16px;
  padding:18px 20px;
  margin:0 auto 56px;
  max-width:960px;
}

.rental-pack-notes li {
  list-style:none;
  font-size:13.5px;
  color:#3e3e3e;
  letter-spacing:-.02em;
  padding-left:14px;
  position:relative;
  margin-bottom:5px;
}

.rental-pack-notes li:last-child {
  margin-bottom:0;
}

.rental-pack-notes li::before {
  content:"※";
  position:absolute;
  left:0;
  font-size:11px;
  top:1px;
}

@media (max-width:720px) {
  .rental-pack-pack {
  grid-template-columns:96px 1fr;
  gap:14px;
  padding:16px;
  align-items:start;
}

.rental-pack-shot {
  width:96px;
}

.rental-pack-price {
  grid-column:1/-1;
  text-align:left;
  border-top:1px dashed #d2deed;
  padding-top:12px;
}

.rental-pack-price .rental-pack-krw {
  font-size:23px;
}

}

@media (prefers-reduced-motion:reduce) {
  .rental-pack-area * {
  transition:none!important;
  animation:none!important;
}

}

@media(max-width:480px) {
.hero-box{padding:0;}
  .rental-pack-pack {
  display: flex;
  flex-direction: column;
}

.rental-pack-chip {
  padding:8px;
  font-size:13px;
  flex-direction: column;
  border-radius:5px;
  line-height:1;
}

.rental-pack-shot {
  width:150px;
  margin:auto;
}

.rental-pack-price {
  width:100%;
}

.ai_tit {
  margin:10px 0;
}

}

.fruit-grid-wrap {
  position:relative;
  max-width:960px;
  margin:0 auto;
}

.fruit-grid-arrow {
  display:none;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:5;
  width:34px;
  height:34px;
  border:1px solid #d7e7df;
  border-radius:50%;
  background:rgba(255,255,255,.96);
  color:#008a64;
  font-size:18px;
  line-height:1;
  align-items:center;
  justify-content:center;
  box-shadow:0 3px 12px rgba(0,0,0,.12);
  cursor:pointer;
}

.fruit-grid-arrow[hidden] {
  display:none!important;
}

.fruit-grid-prev {
  left:-6px;
}

.fruit-grid-next {
  right:-6px;
}

@media (max-width:760px) {
  .fruit-grid-wrap {
  padding:0 2px;
}

.fruit-grid {
  display:flex!important;
  grid-template-columns:none!important;
  gap:12px!important;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:2px 0 8px;
  scrollbar-width:none;
  -ms-overflow-style:none;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
  touch-action:pan-y;
}

.fruit-grid::-webkit-scrollbar {
  display:none;
}

.fruit-grid.is-dragging, .activity-pack-rail.is-dragging {
  cursor:grabbing;
  scroll-snap-type:none;
  scroll-behavior:auto;
}

.fruit-grid .fruit-card {
  flex:0 0 78%;
  min-width:0;
  scroll-snap-align:start;
}

.fruit-grid-arrow {
  display:flex;
}

}

.activity-pack-area {
  margin:0 auto;
  padding:0 20px;
  color:#1e1a12;
  font-size:15px;
  line-height:1.7;
  background:radial-gradient(900px 460px at 12% -6%, #f3f1ff 0%, rgba(255, 240, 196, 0) 62%), radial-gradient(760px 420px at 92% 4%, #f2fdff 0%, rgba(230, 245, 228, 0) 60%), linear-gradient(180deg, #f8f6ff 0%, #fff 46%);
  -webkit-font-smoothing:antialiased;
}

.activity-pack-area img {
  display:block;
  max-width:100%;
}

.activity-pack-tn {
  font-variant-numeric:tabular-nums;
}

.activity-pack-intro {
  text-align:center;
  padding:35px 0 0;
}

.activity-pack-eyebrow {
  font-size: 13px;
  letter-spacing: .34em;
  color: #6e35c9;
  text-transform: uppercase;
}

.activity-pack-intro em {
  font-style:normal;
  color:#614bc7;
}

.activity-pack-block {
  margin:0 auto 62px;
  max-width:960px;
}

.activity-pack-block-head {
  display:flex;
  align-items:baseline;
  gap:12px;
  margin-bottom:6px;
}

.activity-pack-block-num {
  font-size:15px;
  color:#7f2eff;
  letter-spacing:.1em;
}

.activity-pack-block-head h4 {
  font-size:23px;
  font-weight:800;
  letter-spacing:-.035em;
}

.activity-pack-block-lead {
  color:#7a7264;
  font-size:14.5px;
  margin-bottom:24px;
}

.activity-pack-packs {
  display:grid;
  gap:16px;
}

.activity-pack-card {
  background:#fff;
  border:1px solid #dad2ed;
  border-radius:20px;
  padding:20px;
  display:grid;
  grid-template-columns:190px 1fr auto;
  gap:20px;
  align-items:center;
}

.activity-pack-card.activity-pack-best {
  border-color:#7f2eff;
  box-shadow:0 10px 28px #8f93ae1a;
}

.activity-pack-shot {
  width:190px;
  aspect-ratio:4/3;
  border-radius:14px;
  overflow:hidden;
  position:relative;
  background:#ede9ff;
  border:1px solid #dad2ed;
}

.activity-pack-frame {
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity .6s ease;
}

.activity-pack-frame.activity-pack-on {
  opacity:1;
}

.activity-pack-frame img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.activity-pack-cap {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:16px 10px 7px;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.55));
  color:#fff;
  font-size:11.5px;
  font-weight:700;
  letter-spacing:-.02em;
}

.activity-pack-card-body {
  min-width:0;
}

.activity-pack-card-name {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:9px;
  flex-wrap:wrap;
}

.activity-pack-card-id {
  font-size:17px;
  color:#614bc7;
  letter-spacing:.04em;
}

.activity-pack-card-name h5 {
  font-weight:800;
  letter-spacing:-.03em;
}
.activity-pack-card-name h5, .pack_name{font-size:2.5rem;}



.activity-pack-tag {
  background:#ff222d;
  color:#fff;
  font-size:10.5px;
  font-weight:700;
  padding:3px 8px;
  border-radius:999px;
  letter-spacing:-.02em;
}

.activity-pack-items {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.activity-pack-item {
  color:#1e1a12;
  cursor:pointer;
  background:#f7f5ff;
  border:1px solid #dad2ed;
  border-radius:999px;
  padding:5px 11px;
  font-size:16px;
  letter-spacing:-.02em;
  transition:.15s;
}

.activity-pack-item:hover {
  border-color:#7f2eff;
}

.activity-pack-item:focus-visible {
  outline:2px solid #614bc7;
  outline-offset:2px;
}

.activity-pack-item[aria-current="true"] {
  background:#ede9ff;
  border-color:#7f2eff;
  font-weight:700;
}

.activity-pack-price {
  text-align:right;
  white-space:nowrap;
}

.activity-pack-price-won {
  font-size:24px;
  font-weight:800;
  letter-spacing:-.04em;
}

.activity-pack-price-won span {
  font-size:16px;
  font-weight:700;
  margin-left:1px;
}

.activity-pack-price-note {
  font-size:13px;
  color:#7a62ce;
  margin-top:2px;
  letter-spacing:-.02em;
}

.activity-pack-rail-wrap {
  position:relative;
}

.activity-pack-rail {
  display:flex;
  gap:10px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:2px 0 6px;
  scrollbar-width:none;
  -ms-overflow-style:none;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
  touch-action:pan-y;
}

.activity-pack-rail::-webkit-scrollbar {
  display:none;
}

.activity-pack-solo {
  flex:0 0 146px;
  scroll-snap-align:start;
  background:#fff;
  border:1px solid #dad2ed;
  border-radius:12px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

.activity-pack-solo-pic {
  width:100%;
  aspect-ratio:1/1;
  background:#ede9ff;
  overflow:hidden;
}

.activity-pack-solo-pic img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.activity-pack-solo-body {
  padding:10px 12px 12px;
  display:flex;
  flex-direction:column;
  gap:3px;
  flex:1;
}

.activity-pack-solo-title {
  font-size:1.1rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.activity-pack-solo-desc {
  font-size:14px;
  color:#7a7264;
  letter-spacing:-.02em;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.activity-pack-solo-extra {
  font-size:13px;
  color:#ff222d;
  letter-spacing:-.02em;
  line-height:1.35;
}

.activity-pack-solo-price {
  margin-top:auto;
  padding-top:6px;
  font-size:16px;
  font-weight:800;
  letter-spacing:-.04em;
}

.activity-pack-solo-price em {
  font-style:normal;
  display:block;
  font-size:13px;
  font-weight:600;
  color:#7a7264;
  margin-top:1px;
}

.activity-pack-arrow {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid #dad2ed;
  background:rgba(255,255,255,.94);
  color:#1e1a12;
  cursor:pointer;
  font-size:17px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 3px 12px rgba(30,26,18,.1);
  transition:.15s;
}

.activity-pack-arrow:hover {
  border-color:#7f2eff;
  color:#614bc7;
}

.activity-pack-arrow:focus-visible {
  outline:2px solid #614bc7;
  outline-offset:2px;
}

.activity-pack-arrow[hidden] {
  display:none;
}

.activity-pack-arrow.activity-pack-prev {
  left:-14px;
}

.activity-pack-arrow.activity-pack-next {
  right:-14px;
}

.activity-pack-cta {
  display:block;
  text-align:center;
  margin:30px auto 0;
  max-width:340px;
  background:#614bc7;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  font-size:1.1rem;
  letter-spacing:-.03em;
  padding:15px 20px;
  border-radius:14px;
  transition:.15s;
}

.activity-pack-cta:hover {
  background:#25166a;
}

.activity-pack-cta-note {
  text-align:center;
  font-size:12.5px;
  color:#7a7264;
  margin-top:10px;
  letter-spacing:-.02em;
}

.activity-pack-notes {
  background:#ede9ff;
  border-radius:16px;
  padding:18px 20px;
  margin:0 auto 56px;
  max-width:960px;
}

.activity-pack-notes li {
  list-style:none;
  font-size:14px;
  color:#412e6b;
  letter-spacing:-.02em;
  padding-left:14px;
  position:relative;
  margin-bottom:5px;
}

.activity-pack-notes li:last-child {
  margin-bottom:0;
}

.activity-pack-notes li::before {
  content:"※";
  position:absolute;
  left:0;
  font-size:11px;
  top:1px;
}

@media (min-width:761px) {
  .activity-pack-solo {
  flex:0 0 calc((100% - (var(--activity-pack-count,6) - 1)*10px)/var(--activity-pack-count,6));
}

}

@media (max-width:760px) {
.activity-pack-card-name h5, .pack_name{font-size:2rem;}
.activity-pack-solo {  flex:0 0 47%;}

.activity-pack-card {
  grid-template-columns:120px 1fr;
  gap:14px;
  padding:16px;
  align-items:start;
}

.activity-pack-shot {
  width:120px;
}

.activity-pack-price {
  grid-column:1/-1;
  text-align:left;
  border-top:1px dashed #dad2ed;
  padding-top:12px;
}

.activity-pack-price-won {
  font-size:23px;
}

.activity-pack-arrow.activity-pack-prev {
  left:-6px;
}

.activity-pack-arrow.activity-pack-next {
  right:-6px;
}

}

.gift-pack {
  max-width:960px;
  margin:0 auto;
  color:#1E1A12;
  font-size:15px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}

.gift-pack-intro {
  text-align:center;
  padding:35px 0 4px;
}

.gift-pack-label {
  font-size:13px;
  letter-spacing:.34em;
  color:#399bd7;
  text-transform:uppercase;
}

.gift-pack-heading {
  text-align:center;
  margin-bottom:26px;
}

.gift-pack-heading h3 {
  font-size:23px;
  font-weight:800;
  letter-spacing:-.03em;
}

.gift-pack-heading p {
  color:#64677a;
  font-size:13.5px;
  margin-top:6px;
}

.gift-pack-list {
  display:flex;
  flex-direction:column;
  gap:16px;
}

.gift-pack-card {
  display:grid;
  grid-template-columns:212px 1fr;
  align-items:center;
  gap:4px;
  padding:14px;
  border:1px solid #d2deed;
  border-radius:18px;
  background:#fff;
  box-shadow:0 6px 22px rgba(120,95,20,.06);
}

.gift-pack-photo {
  position:relative;
  overflow:hidden;
  width:100%;
  aspect-ratio:1/1;
  border-radius:13px;
  background:#ede9ff;
}

.gift-pack-photo img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

.gift-pack-badge {
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  padding:3px 11px;
  border-radius:99px;
  background:#1E1A12;
  color:#328dff;
  font-size:15px;
  font-weight:800;
  letter-spacing:.08em;
}

.gift-pack-body {
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
  padding:6px 12px 6px 20px;
}

.gift-pack-body h4 {
  font-weight:800;
  letter-spacing:-.03em;
}

.gift-pack-body h4 small {
  display:block;
  margin-top:2px;
  color:#64677a;
  font-size:14px;
  line-height:1.2;
  font-weight:600;
}

.gift-pack-desc {
  color:#4A443A;
  font-size:16px;
  letter-spacing:-.01em;
}

.gift-pack-desc b {
  color:#1E1A12;
  font-weight:700;
}

.gift-pack-options {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
}

.gift-pack-options-label {
  min-width:46px;
  margin-right:3px;
  color:#64677a;
  font-size:13px;
  letter-spacing:.1em;
}

.gift-pack-option {
  padding:6px 14px;
  border:1.5px solid #d2deed;
  border-radius:99px;
  background:#fff;
  color:#1E1A12;
  font-size:16px;
  font-weight:700;
  cursor:pointer;
  transition:.15s;
}

.gift-pack-option:hover:not(:disabled) {
  border-color:#328dff;
  background:#eef7ff;
}

.gift-pack-option[aria-pressed="true"] {
  border-color:#1E1A12;
  background:#1E1A12;
  color:#fff;
}

.gift-pack-option[aria-pressed="true"]:hover {
  border-color:#1E1A12;
  background:#1E1A12;
}

.gift-pack-option:disabled {
  opacity:.35;
  cursor:not-allowed;
}

.gift-pack-option:focus-visible {
  outline:2px solid #328dff;
  outline-offset:2px;
}

.gift-pack-option strong {
  margin-left:4px;
  color:#18b1ff;
  font-size:11.5px;
}

.gift-pack-price-note {
  padding-right:5px;
}

.gift-pack-bottom {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:8px 14px;
  padding-top:13px;
  border-top:1px dashed #d2deed;
}

.gift-pack-items {
  flex:1;
  min-width:200px;
  color:#64677a;
  font-size:14px;
}

.gift-pack-price {
  color:#1E1A12;
  font-size:24px;
  font-weight:800;
  line-height:1;
  font-variant-numeric:tabular-nums;
}

.gift-pack-price small {
  margin-left:3px;
  color:#64677a;
  font-size:13px;
  font-weight:700;
}

.gift-pack-notice-area {
  padding-top:40px;
}

.gift-pack-notice {
  padding: 20px 24px;
  border: 1px solid #d9daeb;
  border-radius: 14px;
  background: #f6f8ff;
  color: #3a3a3a;
  font-size: 13.5px;
  letter-spacing: -.01em;
}

.gift-pack-notice h4 {
  margin-bottom:8px;
  font-size:13px;
  font-weight:800;
  color:#4A3D14;
}

.gift-pack-notice p+p {
  margin-top:6px;
}

@media (max-width:640px) {
  .gift-pack {
  padding:0 14px;
}

.gift-pack-card {
  grid-template-columns:1fr;
  padding:12px;
}

.gift-pack-photo {
  max-width:300px;
  margin:0 auto;
}

.gift-pack-body {
  padding:8px 6px 4px;
}

.activity-pack-card {
  display: flex;
  flex-direction: column;
}

.activity-pack-shot {
  width: 100%;
  height: 100px;
}

.activity-pack-block {
  margin-bottom:20px;
}

}

.hanacard_bnn{    max-width: 960px;}