@charset "UTF-8";

/* PC 환경에서 스크롤바 폭을 고정 예약해 오른쪽 미세 여백 방지 */
@media (min-width: 577px) {
  html { scrollbar-gutter: stable both-edges; }
}

/*********** 전역 롱프레스/선택 방지 (모바일) ***********/
/* 기본: 모든 요소에서 텍스트 선택 및 iOS 길게누름 호출메뉴 비활성화 */
html, body, * {
  -webkit-touch-callout: none; /* iOS 길게누름 메뉴 방지 */
  -webkit-user-select: none;   /* 텍스트 드래그 방지 */
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* 예외: 입력/편집 가능한 요소는 선택 허용 */
input, textarea, select, [contenteditable="true"],
/* 접근성 보완: 검색 입력, 로그인 등 필수 폼은 선택 허용 */
.allow-select {
  -webkit-user-select: text;
  user-select: text;
}

/* 이미지 롱프레스 저장/드래그 보완 */
img {
  -webkit-touch-callout: none;
  -webkit-user-drag: none;
  user-drag: none;
}

/*************** 25.07.07~ 추가 css ***************/
@font-face {
  font-family: 'GmarketSansMedium';
  src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

.cursor_pointer {
  cursor: pointer;
}

.btn_auto {
  padding: 0;
  width: auto;
  height: auto;
}

.font_gmarket {
  font-family: 'GmarketSansMedium';
}

.tit_h4 {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.3;
}

.icon_4 {
  width: 0.4rem;
  flex-shrink: 0;
}

.icon_5 {
  width: 0.5rem;
  flex-shrink: 0;
}

.icon_8 {
  width: 0.8rem;
  flex-shrink: 0;
}

.icon_14 {
  width: 1.4rem;
  flex-shrink: 0;
}

.icon_15 {
  width: 1.5rem;
  flex-shrink: 0;
}

.icon_17 {
  width: 1.7rem;
  flex-shrink: 0;
}

.icon_19 {
  width: 1.9rem;
  flex-shrink: 0;
}

.icon_22 {
  width: 2.2rem;
  flex-shrink: 0;
}

.icon_28 {
  width: 2.8rem;
  flex-shrink: 0;
}

.icon_84 {
  width: 8.4rem;
  flex-shrink: 0;
}

.icon_106 {
  width: 10.6rem;
  flex-shrink: 0;
}

.rounded_8 {
  border-radius: 0.8rem;
}

.rounded_16 {
  border-radius: 1.6rem;
}

.mr_7 {
  margin-right: 0.7rem;
}

.mr_9 {
  margin-right: 0.9rem;
}

.mr_52 {
  margin-right: 5.2rem;
}

.mb_3 {
  margin-bottom: 0.3rem;
}

.mb_11 {
  margin-bottom: 1.1rem;
}

.mb_13 {
  margin-bottom: 1.3rem;
}

.mb_14 {
  margin-bottom: 1.4rem;
}

.mb_16 {
  margin-bottom: 1.6rem;
}

.mb_17 {
  margin-bottom: 1.7rem;
}

.mb_18 {
  margin-bottom: 1.8rem;
}

.mb_21 {
  margin-bottom: 2.1rem;
}

.mb_22 {
  margin-bottom: 2.2rem;
}

.mb_24 {
  margin-bottom: 2.4rem;
}

.mb_32 {
  margin-bottom: 3.2rem;
}

.mt_2 {
  margin-top: 0.2rem;
}

.mt_6 {
  margin-top: 0.6rem;
}

.mt_13 {
  margin-top: 1.3rem;
}

.mt_17 {
  margin-top: 1.7rem;
}

.mt_23 {
  margin-top: 2.3rem;
}

.p_25 {
  padding: 2.5rem;
}

.py_7 {
  padding-top: 0.7rem;
  padding-bottom: 0.7rem;
}

.py_11 {
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}

.gap_3 {
  gap: 0.3rem;
}

.gap_4 {
  gap: 0.4rem;
}

.gap_50 {
  gap: 5.0rem;
}

.fc_danger {
  color: var(--danger);
}

.fc_111 {
  color: #111;
}

.fc_181818 {
  color: #081818;
}

.fc_666 {
  color: #666;
}

.fc_777 {
  color: #777;
}

.fc_999 {
  color: #999;
}

.fc_919191 {
  color: #919191;
}

.fc_969696 {
  color: #969696;
}

.fc_FF0038 {
  color: #FF0038;
}

.border_ededed {
  border-color: #ededed;
}


/* 슬라이드 아이템 */
.slide_item_wr.product_list_wr {
  width: max-content;
}

.slide_item_wr.product_list_wr .prod_list {
  width: 17.0rem;
  transition-property: width;
  transition-duration: .5s;
}

.slide_item_wr.product_list_wr .prod_list:not(:last-of-type) {
  margin-right: 0.8rem;
}

/* 3*4 비율 상품 썸네일 */
.rect3_4 {
  width: 100%;
  overflow: hidden;
  position: relative;
  display: block;
}

.rect3_4::after {
  content: '';
  display: block;
  padding-bottom: calc(4/3*100%);
}

.rect3_4>img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* 신규회원 혜택 슬라이드 비율 */
.rect_welcome {
  width: 100%;
  overflow: hidden;
  position: relative;
  display: block;
}

.rect_welcome::after {
  content: '';
  display: block;
  padding-bottom: calc(256/412*100%);
}

.rect_welcome>img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


/****** 메인 페이지 ******/
/* 상단 카테고리 탭 아이콘 추가 */
.main_top_tab ul li span {
  display: flex;
  align-items: center;
  line-height: 1.2;
}

.main_top_tab ul li span img {
  width: 1.8rem;
  margin-left: 0.3rem;
}

/* 기획전 아이템 디자인 */
.event_item_v2 .product_item {
  border-radius: 1.0rem;
  background: #fff;
}

.event_item_v2 .product_item .pr_text {
  padding: 0.8rem;
}


/* 메인 기획전 배경, 제목 분리됐을 시 css */
.new_bg .sect_tit_wr {
  padding: 0 1.6rem;
  margin-bottom: 0;
}

.new_bg .sect_tit_wr a {
  height: unset;
}


/* 전체상품 카테고리 버튼 */
.cate_btn_wr {
  width: max-content;
}

.cate_btn_wr.btn-group-toggle .btn {
  flex-shrink: 0;
  margin-right: 0.8rem;
}

.cate_btn_wr.btn-group-toggle .btn:last-child {
  margin-right: 0;
}

.cate_btn_wr .cate_icon {
  width: 1.8rem;
  flex-shrink: 0;
  margin-left: 0.3rem;
}


/* 메인 전체상품 masonry 레이아웃 */
.product_list_wr .masonry_list {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.product_list_wr .masonry_list .prod_list,
.product_list_wr .masonry_list .prod_sizer {
  width: calc((100% - 0.6rem) / 2);
  margin-bottom: 2.0rem;
}

.product_item .pr_img .rect3_4 {
  border-radius: 1.0rem;
}



/****** 카테고리 페이지 ******/
.cate_ft_radio {
  gap: 0.5rem;
}

.cate_ft_radio .btn {
  height: 3.2rem;
  border-radius: 1.6rem !important;
  border: 1px solid #C7C8CA;
  padding: 0.5rem 1.2rem;
  font-size: 1.4rem;
  font-weight: 600;
  color: #39485D;
}

.cate_ft_radio .btn.active {
  border-color: #28323C;
  background: #28323C;
  color: #fff;
  font-weight: 800;
}



/****** 혜택 페이지 ******/
.reward_list {
  display: flex;
  flex-direction: column;
  gap: 2.0rem;
}

.reward_list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.reward_list .mission_text {
  flex-grow: 1;
  margin-right: 1.0rem;
}

.reward_list .mission_text p {
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 0.6rem;
}

.reward_list .mission_text span {
  display: block;
  font-size: 1.4rem;
  color: var(--gray-400);
}

.reward_list .reward_icon {
  aspect-ratio: 1/1;
  width: 4.8rem;
  background: var(--light);
  border-radius: 50%;
  margin-right: 1.5rem;
}

.reward_list .btn {
  width: 7.5rem;
}


/****** 상품 상세 페이지 ******/
.prdver2 .thumbnail_slide .thumb_btn_gr {
  position: absolute;
  bottom: 1.6rem;
  right: 1.6rem;
}

.prdver2 .thumbnail_slide .thumb_btn_gr .btn {
  position: unset;
  background: rgb(0 0 0 / 50%);
  border-radius: 50%;
  z-index: 10;
  width: 3.2rem;
  height: 3.2rem;
}

.prdver2 .thumbnail_slide .thumb_btn_gr .btn img {
  width: 1.8rem;
}


/* 상품 옵션 */
.option_select_wr {
  display: flex;
  flex-direction: column;
  gap: 2.0rem;
}

.opt_wr input[type=radio] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.opt_wr .opt_tit {
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--secondary);
  /* margin-bottom: 1.0rem; */
}

.opt_wr .options {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}

/* 이미지 옵션 */
.img_opt {
  width: 6.0rem;
  aspect-ratio: 1/1;
  padding: 0.2rem;
  border: 1px solid var(--light);
  border-radius: 0.5rem;
  cursor: pointer;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.img_opt img {
  border-radius: 0.3rem;
}

.img_opt:has(input[type=radio]:checked) {
  border-color: var(--secondary);
}

/* 이미지 옵션 이름 */
.img_txt_opt .img_opt {
  width: calc((100% - 0.8rem * 4) / 5);
}

.opt_name {
  text-align: center;
  font-size: 1.0rem;
  background: var(--light);
  padding: 0.5rem;
}

/* 텍스트 옵션 */
.txt_opt {
  height: var(--height-sm);
  border: 1px solid var(--border100);
  font-size: 1.2rem;
  color: var(--text);
  border-radius: 0.5rem;
  padding: 0.7rem 1.0rem;
}

.txt_opt:has(input[type=radio]:checked) {
  border-color: var(--secondary);
}


/* 판매자 리뷰 답글 */
.review_reply {
  padding: 1.5rem;
  background: var(--light);
  border-radius: 0.5rem;
  margin-top: 1.5rem;
}

.review_reply .store_name {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--gray-600);
  margin-bottom: 1.0rem;
}

.review_reply .reply_cont {
  font-size: 1.4rem;
  line-height: 1.5;
  color: var(--gray-500);
  margin-bottom: 1.0rem;
}


/* 상품 아이템 하단 슬라이드 */
.item_bt_slide {
  width: 100%;
  font-size: 1.0rem;
  color: var(--gray-400);
  height: 1.0rem;
  margin-top: 0.8rem;
}


/* 툴박스 커스텀 */
.tooltip_wr .tooltip-box {
  position: absolute;
  top: 1.8rem;
  left: -2.0rem;
  width: 23.6rem;
  padding: 1.0rem 1.2rem;
  background-color: rgb(36 39 41 / 95%);
  border: none;
  border-radius: 0.5rem;
  box-shadow: none;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #fff;
  z-index: 999;
  display: none;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  box-sizing: border-box;
}

.tooltip_wr .tooltip-box.active {
  display: block;
}

.tooltip_wr .tooltip-box.point_notice {
  width: 25.6rem;
}


/* 스토어 정보 */
.avrg_rv {
  display: flex;
  align-items: center;
}

.avrg_rv .star_grade .star_on img,
.avrg_rv .star_grade .star_off img {
  width: 10.0rem;
  max-width: 10.0rem;
}

.avrg_rv .rv_total {
  font-size: 1.4rem;
  color: var(--gray-400);
  margin-left: 0.5rem;
}

.count_text .num_text {
  min-width: 6.4rem;
  margin-left: 1.0rem;
}

/* 버튼 위 띠 배너 */
.prd_dt_bt {
  position: fixed;
  left: 50%;
  bottom: 0;
  width: 100%;
  max-width: 576px;
  transform: translateX(-50%);
  z-index: 1040;
  background: #fff;
}

.now_view_count {
  padding: 0.8rem 1.0rem;
  font-size: 1.4rem;
  color: var(--gray-500);
  text-align: center;
  border-bottom: 1px solid var(--border200);
}

.now_view_count span {
  color: var(--secondary);
}


/* 구매하기 버튼 모션 */
.buy_bg_btn {
  background-image: url('../img/btn_blink_bg.png?<?=$v_txt?>');
  background-repeat: no-repeat;
  background-position: -100% center;
  background-size: auto 100%;
}

.buy_bg_btn:hover {
  animation: bg-slide 1.5s forwards cubic-bezier(0.2, 0.7, 0.8, 1);
  background-color: var(--primary);
}

@keyframes bg-slide {
  from {
    background-position: left center;
  }

  to {
    background-position: 160% center;
  }
}



/**************** 옵션모달 ****************/
.select_option_v2 {}

.select_option_v2.modal_bottom.modal .modal-dialog-scrollable .modal-content {
  max-height: 83vh;
  min-height: 70vh;
}

.select_option_v2.modal_bottom.modal .modal-header {
  padding: 0;
  border: 0;
  position: relative;
}

.select_option_v2.modal_bottom.modal .modal-body {
  padding: 1.5rem 1.6rem;
  text-align: left;
}

/* 옵션 상단 썸네일 부분 */
.select_option_v2 .opt_close_btn {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
}

.select_option_v2 .hd_thumb img {
  aspect-ratio: 412/230;
  object-fit: cover;
  object-position: center;
}

/* 상품 가격 */
.select_option_v2 .price {
  text-align: left;
  margin-bottom: 2.0rem;
}

.select_option_v2 .price .cost_wr {
  font-size: 1.2rem;
  color: var(--gray-300);
  margin-bottom: 0.3rem;
}


/* 옵션 선택 */
.option_wr {
  margin-bottom: 2.0rem;
}

.option_wr input[type=radio] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}


/****** 장바구니 ******/
.cart_v2 .cart_tab_cont .items_area {
  min-height: unset;
}


/****** 주문/결제 ******/
.item .cant_point {
  display: flex;
  font-size: 1.0rem;
  font-weight: 500;
  color: var(--gray-400);
  margin-bottom: 0.5rem;
}

.item .cant_point img {
  margin-right: 0.2rem;
}



/****** 찜한 스토어 ******/
.store_list_v2 .store_info_wr .store_number span {
  margin-left: 0;
}

.store_list_v2 .store_list {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.store_list_v2 .store_list .follow_btn {
  position: relative;
  z-index: 2;
  flex-shrink: 0;
  margin-left: 1.0rem;
}

.store_list_v2 .store_list .store_info_wr {
  width: auto;
  flex-grow: 1;
}



/****** 검색 ******/
.keyword_badge {
  margin-right: 1.0rem;
}

/* 추천 검색어 */
.rcmd_keyword .keyword_badge {
  background: #F3E6FC;
  margin-right: 1.0rem;
}

.rcmd_keyword .keyword_badge .keyword_text {
  padding: 1.0rem 1.4rem;
  margin-right: 0;
}

/* 오늘의 혜택 */
.todays_event {
  display: flex;
  flex-direction: column;
  gap: 1.0rem;
}

.todays_event li {
  display: flex;
  align-items: center;
  padding: 0.5rem 0;
}

.todays_event li span {
  width: 2.0rem;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--text);
  margin-right: 1.0rem;
  flex-shrink: 0;
}

.todays_event li p {
  font-size: 1.5rem;
  color: var(--text);
  flex-grow: 1;
}


/****** 신규회원 혜택 ******/
.welcome_slide .swiper-pagination {
  left: unset;
  right: 1.0rem;
  bottom: 1.0rem;
}

/* 친구 초대하러 가기 버튼 */
.invite_bnr_sect {
  position: relative;
}

.go_invite {
  position: absolute;
  bottom: 3.0rem;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 28.0rem;
  height: 4.4rem;
  background: #FE7AEA;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 600;
}


/****** 친구초대 ******/
.invite_tab {
  padding-top: 4.0rem;
}

/* 친구초대 현황 */
.invite_count {
  padding: 2.5rem 1.0rem;
  border-radius: 1.5rem;
  background: var(--light);
  text-align: center;
}

.invite_count .col {
  display: flex;
  flex-direction: column;
}

.invite_count .col span {
  font-size: 1.4rem;
  color: var(--gray-400);
  margin-bottom: 0.8rem;
}

.invite_count .col a {
  font-size: 2.1rem;
  font-weight: 600;
  color: var(--secondary);
  text-decoration: underline;
}

/* 적립한 포인트 */
.total_point {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 1.0rem;
  border: 1px solid var(--border100);
  padding: 1.5rem 2.0rem;
  margin-bottom: 5.0rem;
}

.total_point .point {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: right;
  margin-left: 1.0rem;
}

/* 초대하기 버튼들 */
.invite_btn_gr {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.invite_btn_gr .btn {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 600;
  height: 5.0rem;
  margin-bottom: 1.0rem;
  background-repeat: no-repeat;
  background-position: 16px 50%;
  background-size: 3.0rem auto;
  margin-top: 0;
}

.invite_btn_gr .btn.link {
  color: var(--primary);
  background-image: url(../img/ic_link_btn.png);
  border-color: var(--primary);
}

.invite_btn_gr .btn.kakao {
  background-image: url(../img/ic_kakao_btn.png);
  background-color: #FDE431;
  border-color: #FDE431;
}

.invite_btn_gr .btn.code {
  color: #fff;
  background-color: var(--secondary);
  border-color: var(--secondary);
  margin-bottom: 2.0rem;
}

.invite_btn_gr .btn.copy_code {
  color: var(--gray-500);
  text-decoration: underline;
  font-size: 1.5rem;
  font-weight: 400;
  height: auto;
  margin: 0 auto;
}


/****** 초대한 친구 리스트 ******/
.invite_list_pg .container {
  padding-top: 2.0rem;
  padding-bottom: 2.0rem;
}

.invite_count {
  border-radius: 1.5rem;
  background: var(--light);
  padding: 2.0rem;
  margin-bottom: 2.0rem;
  text-align: center;
}

.invite_count span {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--gray-500);
  margin-bottom: 1.0rem;
}

.invite_count p {
  font-size: 2.4rem;
  font-weight: 600;
}

.invite_list {
  display: flex;
  flex-direction: column;
  gap: 2.0rem;
}

.invite_list li {
  display: flex;
  font-size: 1.5rem;
  justify-content: space-between;
}

.invite_list li .invite_id {
  color: var(--gray-600);
  word-break: break-all;
}

.invite_list li .invite_date {
  color: var(--gray-400);
  margin-left: 1.0rem;
  flex-shrink: 0;
}


/* 스토어 상세페이지 */
.store_dt .store_info_wr .store_tit {
  font-size: 1.8rem;
}

.store_info_wr .follow_btn {
  min-width: 10.5rem;
}


/* 반품/교환 접수 */
.pay_layout textarea.form-control {
  min-height: 1.34rem;
}


/* 헤더 알림개수 표시 */
.hd_notification_btn::after {
  display: none;
}

.hd_notification_btn span {
  position: absolute;
  top: 0;
  right: 0;
  color: #fff;
  font-size: 0.9rem;
  font-weight: 500;
  background: #DB1C0C;
  display: block;
  border-radius: 0.7rem;
  padding: 0.2rem 0.5rem;
}

.hd_notification_btn.no_alert span {
  display: none;
}

/* 헤더 혜택 버튼 */
.hd_m .hd_btn button.hd_reward_btn {
  width: 2.2rem
}

.hd_m .hd_btn button.hd_reward_btn~button.hd_notification_btn {
  margin-left: 1.0rem;
}


/* 앱 설치 팝업 */
.app_bnr {
  display: none;
  width: calc(100% + 2px);
  max-width: 576px;
  height: 5.4rem;
  background: #000;
  padding: 0 1.6rem;
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1001;
  color: #fff;
}

.app_bnr .btn {
  flex-shrink: 0;
}

.app_bnr.show {
  display: flex;
}

/* 앱 설치 팝업 있을 경우 헤더 위치 */
.mobile_wr:has(.app_bnr.show) .hd_m {
  top: 5.4rem;
}

.mobile_wr:has(.app_bnr.show) {
  padding-top: 5.4rem;
}

/* 앱 설치 팝업 있을 경우 스티키 위치 */
.mobile_wr:has(.app_bnr.show) .idx_top_sticky,
.mobile_wr:has(.app_bnr.show) .tab_sticky {
  top: calc(5.4rem + var(--hd_height_m));
}



/* 신규회원 쿠폰 모달 */
.welcome_coupon.modal .modal-content {
  background-color: #101010;
}

.welcome_coupon.modal .modal-head {
  padding: 2.0rem 0 0;
}

.welcome_coupon.modal .modal-body {
  text-align: unset;
  padding: 2.0rem 2.0rem 3.0rem;
}

.welcome_coupon.modal .coupon {
  background: #fff;
}


/* 내 피니(포인트) */
.my_pini .chara_box {
  height: 13.7rem;
  position: relative;
}

.my_pini .chara_box .pini_character {
  position: absolute;
  right: 0;
  bottom: 0.9rem;
  width: 15.0rem;
}

.my_pini .chara_box .btn:hover {
  color: #969696;
}

.pini_count {
  padding-right: 15.0rem;
}

.my_pini .nav_tab_line {
  border: 0;
}

.my_pini .nav_tab_line .nav-link {
  border: 0;
  outline: 0;
  border-bottom: 0.4rem solid #F6F6F6;
  height: 5.4rem;
  font-size: 1.5rem;
  font-weight: 600;
  color: #515151;
}

.my_pini .nav_tab_line .nav-link.active,
.my_pini .nav_tab_line .nav-item.show .nav-link {
  border-color: #000000;
  color: #000;
}

.point-list li {
  padding: 2.0rem 2.5rem;
}

.point-list li .p_plus {
  font-size: 1.7rem;
  font-weight: 600;
  color: var(--primary);
}

.point-list li .p_minus {
  font-size: 1.7rem;
  font-weight: 600;
  color: var(--gray-400);
}


/* 로그인 페이지 */
.login_pg.new_login {
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}

.login_pg.new_login>div {
  padding-top: 10.0rem;
  padding-bottom: 4.6rem;
}

.new_login .login_tit {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.new_login .login_tit .login_tit01 {
  max-width: 20.9rem;
  margin-bottom: 1.0rem;
}

.new_login .login_tit .login_tit02 {
  max-width: 28.8rem;
  margin-bottom: 1.0rem;
}

.new_login .login_tit p {
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  color: #fff;
  letter-spacing: -1px;
}

.new_login .login_tit p span {
  font-size: 2.1rem;
  font-weight: 700;
}

/* 중간 캐릭터 */
.chara_wr {
  margin-top: 1.6rem;
  margin-bottom: 1.4rem;
}

/* 카카오 버튼 */
.login_kakao_wr {
  padding: 0 3.6rem;
}

.login_for_kakao {
  height: 6.1rem;
  border-radius: 1.0rem;
  background: #FEE500;
  color: #191919;
  font-size: 1.8rem;
  font-weight: 500;
  width: 100%;
}






/**************************************************/
/*						핑또						*/
/**************************************************/
.sub_pg.pingddo {
  padding-bottom: 6.3rem;
}

/* 탭 */
.pingddo_tab .nav_tab_line {
  border-bottom: 0;
}

.pingddo_tab .nav-link {
  height: 5.1rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  color: #777;
  border: 1px solid #f0f0f0;
}

.pingddo_tab .nav_tab_line .nav-link.active,
.pingddo_tab .nav_tab_line .nav-item.show .nav-link {
  transform: unset;
  border-color: var(--primary);
  background-color: var(--primary);
  font-weight: 800;
  color: #fff;
}


/* 상단 배너 부분 */
.top_bnr_sect {
  position: relative;
  min-height: 36.2rem;
  background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 70%), url(../img/pingddo_bg.png);
  background-position: bottom center;
  background-size: cover;
  padding-top: 2.1rem;
  padding-bottom: 2.9rem;
}

/* 25.09.02 보라색 그라데이션 추가 */
.top_bnr_sect::before {
  content: "";
  display: block;
  width: 100%;
  height: 55%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(0deg, rgba(135, 10, 224, 0) 0%, rgba(135, 10, 224, 1) 100%);
  z-index: 0;
}

.top_bnr_sect .container {
  position: relative;
  z-index: 1;
}


.tt_point span {
  color: #D93737;
}

/* 텍스트 롤링 부분 */
.pingddo_notice_slide {
  width: 100%;
  height: 2.2rem;
  margin: 0;
}

.pingddo_notice_slide .swiper-slide {
  display: flex;
  align-items: center;
}

.pingddo_img {
  width: 8.8rem;
  margin-right: 0.7rem;
}

.shdow_txt p {
  text-shadow: 0 0.4rem 0.4rem rgb(0 0 0 / 50%);
}

.shdow_txt p span {
  color: #FFFF00;
}

/* 하단 흰색 그라데이션 */
/* .top_bnr_sect::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 16.2rem;
    background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 0;
} */

/* 핑또 캐릭터 */
.pingddo_chara {
  /* margin-right: 2.6rem; */
  width: 19.1rem;
  height: 13.5rem;
}


/* 핑또 미션 */
.mission_sect {}

.mission_list {
  padding: 2.3rem 0;
  border-bottom: 1px solid #EDEDED;
}

.mission_list:last-child {
  padding-bottom: 1.4rem;
  border-bottom: 0;
}

.mission_list .flex_box {
  display: flex;
  align-items: center;
}

.mission_list .flex_box img {
  width: 6.6rem;
  margin-right: 0.9rem;
  flex-shrink: 0;
}

.mission_list .flex_box div:has(> .ms_tit) {
  flex-grow: 1;
}

.mission_list .flex_box .ms_tit {
  font-size: 1.6rem;
  font-weight: 700;
  color: #111;
  margin-bottom: 0.4rem;
}

.mission_list .flex_box .ms_info {
  font-size: 1.4rem;
  color: var(--primary);
}

.mission_list .ms_btn {
  height: 2.8rem;
  padding: 0.5rem 1.5rem;
  font-size: 1.4rem;
  color: #fff;
  background: #111;
  border-radius: 1.5rem;
  margin-left: 1.0rem;
}

.mission_list .ms_btn:disabled {
  background: #F6F6F6 !important;
  color: #A9A9A9 !important;
  border-color: #F6F6F6 !important;
}


/* 연속 출석체크 박스 */
.ms1_chk {
  background: #FAF3FF;
  border-radius: 0.9rem;
  padding: 2.0rem 3.4rem;
  display: flex;
  justify-content: center;
  margin-top: 2.1rem;
}

.ms1_chk p {
  font-size: 1.4rem;
  font-weight: 500;
  color: #666;
  display: flex;
  align-items: center;
  margin-bottom: 1.2rem;
}

.ms1_chk p::before {
  content: "";
  display: block;
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 50%;
  background: #666;
  margin-right: 1.0rem;
}

.ms1_chk p span {
  color: #FF0038;
}

.ms1_chk .chk_number {
  display: flex;
  gap: 0.6rem;
}

.ms1_chk .chk_number span {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #C07FF0;
  border-radius: 50%;
  width: 2.6rem;
  height: 2.6rem;
  font-size: 1.1rem;
  font-weight: 500;
  color: #C07FF0;
}

.ms1_chk .chk_number span.check {
  border-color: var(--primary);
  background: var(--primary);
  color: #fff;
}


/* 핑또 페이지 버튼 */
.pingddo_btn_wr {
  position: fixed;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 100%;
  max-width: 57.6rem;
  padding: 0 1.6rem 1.6rem;
}

.pingddo_btn {
  width: 100%;
  height: 4.7rem;
  padding: 0.5rem 1.0rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 1.1rem;
  background: var(--primary);
  border-color: var(--primary);
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
}

.pingddo_btn:hover {
  color: #fff;
}

.pingddo_btn:disabled {
  background: #F6F6F6 !important;
  color: #A9A9A9 !important;
  border-color: #F6F6F6 !important;
}


/* MY 응모번호 탭 */
/* 핑또 당첨 결과 */
.pingddo_result {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #F8F8F8;
  border-radius: 1.2rem;
  padding: 2.5rem 1.0rem 2.8rem;
  text-align: center;
}

/* 핑또 숫자 공 */
.pingddo_number {
  width: 4.1rem;
  height: 4.1rem;
  border-radius: 50%;
  border-width: 0.8rem;
  border-style: solid;
  background: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  color: #191919;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.pingddo_number.yellow {
  border-color: #FED849;
}

.pingddo_number.green {
  border-color: #8AE47B;
}

.pingddo_number.cyan {
  border-color: #24D1E9;
}

.pingddo_number.red {
  border-color: #FC6A6B;
}

.pingddo_number.purple {
  border-color: #C587F0;
}

.pingddo_number.light_blue {
  border-color: #C5D1F3;
}

.pingddo_number.blue {
  border-color: #6F97EB;
}

.pingddo_number.pink {
  border-color: #E4B2BF;
}

.pingddo_number.blue_gray {
  border-color: #57748A;
}

.pingddo_number.gray {
  border-color: #CBCBCB;
}

.pingddo_number.disabled {
  border-color: #E4E4E4 !important;
  color: #999999 !important;
}


.pingddo_count_box {
  padding: 1.2rem 1.2rem 1.4rem;
  border-radius: 0.4rem;
  background: #EEF6FF;
}

.pingddo_count_box .border-right {
  border-color: #E4E1D1;
}


/* 회차별 참여현황 */
.draw_num {
  position: relative;
  padding: 0 3.2rem;
  display: flex;
  justify-content: center;
}

.draw_num.last_draw {
  justify-content: start;
}

.draw_num p {
  font-size: 2.0rem;
  font-weight: 700;
  color: #111;
  display: flex;
  align-items: center;
}

.draw_num p span {
  display: none;
}

.draw_num p.d_day span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.0rem;
  padding: 0.3rem 0.8rem;
  border-radius: 1.0rem;
  background: #000000;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
  margin-left: 0.5rem;
}

.draw_num .draw_slide_btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.draw_num .draw_slide_btn.prev {
  left: 0;
}

.draw_num .draw_slide_btn.next {
  right: 0;
}

.draw_num .draw_slide_btn:disabled {
  opacity: 0;
}


/* 응모내역 없음 */
.no_draw {
  border-radius: 0.8rem;
  background: #fff;
  padding: 2.1rem 1.5rem 1.7rem;
  margin-top: 0.7rem;
}

/* 응모내역 */
.my_draw_list {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.my_draw_list li {
  border-radius: 0.5rem;
  background: #F8F8F8;
  padding: 1.9rem 1.5rem 0.9rem;
}

.my_draw_list .pingddo_number {
  color: #999999;
}

.my_draw_list .pingddo_number.no_win {
  border-color: #E4E4E4;
}

/* 당첨 뱃지 */
.win_badge {
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  padding: 0.2rem 0.9rem;
  border-radius: 1.0rem;
  background: #FC6A6B;
  margin-left: 0.7rem;
}

.win_btn {
  margin-right: 1.9rem;
}

.win_btn:hover {
  color: #999;
}

.information h3 {
  font-size: 1.6rem;
  font-weight: 700;
  color: #999;
  margin-bottom: 0.5rem;
}

.information p {
  font-size: 1.4rem;
  font-weight: 500;
  color: #999;
  line-height: 2.0rem;
  white-space: pre-line;
}

.information.info {
  margin-top: 3.1rem;
  margin-bottom: 4.6rem;
}


/* 핑또 페이지 모달 디자인 */
.pingddo_modal .modal-sm {
  max-width: calc(30.6rem + 3.2rem);
}

.pingddo_modal.modal .modal-sm .modal-body {
  padding: 2.7rem 2.2rem 2.9rem;
}

.pingddo_modal.modal .modal-footer {
  padding: 0.5rem 2.2rem 2.4rem;
}

.pingddo_modal.modal .modal-footer .btn {
  border-radius: 1.0rem;
}

.pm_tit {
  font-size: 2.2rem;
  font-weight: 700;
  color: #111;
}

.pm_cont {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #141414;
}

.pingddo_modal .btn-block+.btn-block {
  margin: 0;
}

.pingddo_modal .modal-footer .btn {
  height: 4.8rem;
  font-size: 1.5rem;
  font-weight: 600;
}

.pingddo_modal .btn-gray {
  background: #A9A9A9;
  color: #fff;
}

.pingddo_modal .right_short_btn {
  max-width: 9.7rem;
}


/* 당첨 모달 */
.black_modal.modal .modal-content {
  background: #191719;
  color: #fff;
}

.black_modal .pm_tit {
  color: #fff;
}

.black_modal .pm_cont {
  color: #fff;
}


/* 미션모달 닫기 버튼 */
.mission_done .modal-content {
  position: relative;
}

.mission_done .close_btn {
  position: absolute;
  right: 1.5rem;
  top: 1.5rem;
}

.mission_done .close_btn img {
  width: 1.5rem;
  height: 1.5rem;
}


/* 썸네일 회색 배경 */
/* .product_item .pr_img .rect{ background-color: #f5f5f5;} */
.product_item .pr_img {
  overflow: hidden;
  border-radius: 1.0rem;
}

.pr_img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .03);
}



/* 회원 가입 독려 모달 */
.main_join_modal .modal-content {
  border-radius: 0;
  background: none;
}

.main_join_modal .modal-body {
  padding: 0;
}

.main_join_modal .modal-footer {
  padding: 0;
  display: flex;
  justify-content: center;
  margin-top: 2.0rem;
}


/* 애니메이션 로고 */
.hd_m .logo:has(.logo_animation) {
  position: relative;
  overflow: hidden;
  /*margin-right: 0.5rem;*/
  height: var(--hd_height_m);
  width: 12.5rem;
}

.hd_m .logo a {
  display: block;
  width: 100%;
  height: 100%;
}

.hd_m .logo .logo_animation {
  width: 12.5rem !important;
  height: 5.0rem;
  position: absolute;
  /*
  top: 50%;
  left: 50%;
  transform: translate(-50%, -57%);
  margin-right: 0;
  */
  max-height: unset;
}

img.logo_animation {
  max-width: unset;
}


/* 혜택 스크롤 카운트 */
.scroll_count_wr {
  position: fixed;
  top: 20rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  height: 3.2rem;
  padding: 0.5rem 1.0rem 0.5rem 0.5rem;
  background: #fff;
  box-shadow: 0 0.3rem 0.5rem rgb(0 0 0 / 5%);
  border-radius: 1.6rem;
  line-height: 1;
  z-index: 3;
  font-size: 1.2rem;
  font-weight: 500;
  overflow: hidden;
  transition: 0.5s;
  opacity: 0;
  animation: count_fade_down .3s ease-out forwards;
  animation-delay: 1s;
}

/* 각 상태에 맞게 길이조절 */
.scroll_count_wr.start {
  width: 20rem;
}

.scroll_count_wr.stop {
  width: 19.2rem;
}

.scroll_count_wr.done {
  width: 14.8rem;
}

.scroll_count_wr.fade_up {
  animation: count_fade_up .3s ease-out;
}

/* 페이지 로딩시 위에서 아래로 내려오게 */
@keyframes count_fade_down {
  0% {
    opacity: 0;
    top: 15rem;
  }

  100% {
    opacity: 1;
    top: 20rem;
  }
}

/* 완료 후 사라지게 */
@keyframes count_fade_up {
  0% {
    opacity: 1;
    top: 20rem;
  }

  100% {
    opacity: 0;
    top: 15rem;
  }
}

.scroll_count_wr .timer {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  background: #F5EBFC;
  border-radius: 1.2rem;
  color: var(--primary);
  flex-shrink: 0;
  width: 4.6rem;
  margin-right: 0.8rem;
}

.scroll_count_wr .text {
  display: none;
  white-space: nowrap;
}

.scroll_count_wr.start .text.start_text {
  display: inline-block;
}

.scroll_count_wr.stop .text.stop_text {
  display: inline-block;
}

.scroll_count_wr.done .text.done_text {
  display: inline-block;
}

/* 스크롤 했을 때 */
.scroll_count_wr.scrolling {
  padding: 0;
  width: 4.6rem;
}

.scroll_count_wr.scrolling .timer {
  height: 3.2rem;
  padding: 0.5rem 1.0rem;
  margin: 0;
  border-radius: 1.6rem;
}

.scroll_count_wr.scrolling .text {
  display: none !important;
}


/* 스크롤 멈췄을 때 */
.scroll_count_wr.stop .timer {
  background: #FEEFEA;
  color: #E95224;
}

.scroll_count_wr.stop .timer span {
  animation: blink_opacity 1s infinite;
}

@keyframes blink_opacity {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0.5;
  }

  100% {
    opacity: 1;
  }
}












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

/*반응형 max 480px sm*/
@media (max-width: 479.98px) {
  .my_pini .chara_box {
    height: 12rem;
  }

  .pini_count {
    padding-right: 13.0rem;
    font-size: 2.4rem;
  }

  .my_pini .chara_box .pini_character {
    width: 13.0rem;
  }

  .pini_count_wr img {
    width: 2.4rem;
  }

  .radios_on_card .swiper-button-prev {
    left: calc(-10vw) !important;
  }

  .radios_on_card .swiper-button-next {
    right: calc(-10vw) !important;
  }

  .card-add-manage {
    right: 0 !important;
  }
}

/*반응형 max 420px sm*/
@media (max-width: 419.98px) {
  .slide_item_wr.product_list_wr .prod_list {
    width: 16.0rem;
  }

  .my_pini .chara_box {
    height: 11rem;
  }

  .pini_count {
    padding-right: 11.0rem;
    font-size: 2.0rem;
  }

  .my_pini .chara_box .pini_character {
    width: 11.0rem;
  }

  .pini_count_wr img {
    width: 2.0rem;
  }
}

/*반응형 max 390px*/
@media (max-width: 390px) {
  .slide_item_wr.product_list_wr .prod_list {
    width: 15.0rem;
  }
}

/*반응형 max 375px*/
@media (max-width: 375px) {
  .slide_item_wr.product_list_wr .prod_list {
    width: 14.0rem;
  }

  .pingddo_number {
    width: 3.6rem;
    height: 3.6rem;
    font-size: 1.4rem;
  }

  .my_draw_list li {
    padding: 1.9rem 1.2rem 0.9rem;
  }

  .win_badge {
    font-size: 1.2rem;
    padding: 0.2rem 0.6rem;
    margin-left: 0.5rem;
  }

  .win_btn {
    margin-right: 0;
  }

  .my_pini .chara_box {
    height: 10rem;
  }

  .pini_count {
    padding-right: 10.0rem;
  }

  .my_pini .chara_box .pini_character {
    width: 10.0rem;
  }

  .chara_box .fs_17 {
    font-size: 1.5rem !important;
  }

  .chara_box .fs_15 {
    font-size: 1.3rem !important;
  }
}

/*반응형 max 340px*/
@media (max-width: 340px) {
  .slide_item_wr.product_list_wr .prod_list {
    width: 13.0rem;
  }

  .ms1_chk .chk_number span {
    width: 2.2rem;
    height: 2.2rem;
  }

  .pingddo_number {
    width: 3.2rem;
    height: 3.2rem;
    font-size: 1.3rem;
    border-width: 0.6rem;
  }

  .my_pini .chara_box {
    height: 10rem;
  }

  .pini_count {
    padding-right: 0;
  }

  .my_pini .chara_box .pini_character {
    width: 9.0rem;
  }
}





/**************** 테스트용 css ****************/
/* 메인페이지 기획전 배경 */
.index_test .event_sect .sect_tit_wr a {
  height: unset;
}

.index_test .event_sect .sect_tit_wr {
  margin-bottom: 0;
}

/* 상품 아이템 정렬 방법1 */
.index_test .product_list_wr .column_list {
  column-count: 2;
  /* 열 개수 */
  column-gap: 0.8rem;
  /* 열 사이 간격 */
}

.index_test .product_list_wr .column_list .prod_list {
  break-inside: avoid;
  margin-bottom: 2.0rem;
}


/* 상품 아이템 정렬 방법2 */
.index_test .product_list_wr .masonry_list {
  display: flex;
  gap: 0.6rem;
}

.index_test .product_list_wr .masonry_list .prod_list,
.index_test .product_list_wr .masonry_list .prod_sizer {
  width: calc((100% - 0.6rem) / 2);
  margin-bottom: 2.0rem;
}


.index_test .product_item .pr_img {
  overflow: hidden;
  border-radius: 1.0rem;
}

.index_test .pr_img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .02);
}




/* 25.08.18 bh 추가 css */
/* 결제수단 */
.card-add-manage {
  position: absolute;
  right: -40%;
  bottom: -20%;
  z-index: 11;
}

.card-add-manage a {
  font-size: 1.4rem;
  font-weight: 500;
  border-bottom: 0.1rem solid;
  color: var(--gray-400);
}

.payment_ui_wr>.radios_wr {
  display: inline;
}

.payment_ui_wr .chk_p {
  display: flex;
  align-items: center;
}

.payment_ui_wr .radios_no_card {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
  text-align: center;
  border: 0.1rem dashed var(--gray-300);
  width: 26rem;
  height: 15.6rem;
  border-radius: 0.7rem;
}

.radios_no_card_span {
  font-size: 3rem;
  font-weight: 400;
}

.radios_no_card div {
  color: #DB1C0C;
}

.ic_box_pay {
  margin-right: 1.4rem !important;
}

.payment_ui_wr .radios_on_card {
  position: relative;
  margin: 0 auto;
  width: 26rem;
  height: 15.6rem;
  margin-top: 2rem;
  margin-bottom: 5.5rem;
}

.radios_on_card {
  position: relative;
}

.radios_on_card .swiper {
  width: 100%;
  height: 100%;
}

.radios_on_card .card_check_img {
  position: absolute;
  width: 2rem;
  height: 2rem;
  right: 1.8rem;
  top: 1.8rem;
  z-index: 2;
}

.radios_on_card .card_wr {
  width: 26rem;
  height: 15.6rem;
  position: relative;
  padding: 1.8rem;
  border-radius: 0.7rem;
  display: flex;
  align-items: end;
}

.radios_on_card h2 {
  /* padding: 9.5rem 1.8rem 0; */
}

.radios_on_card .card_num {
  display: flex;
  align-items: center;
  padding: 0.05rem 0
}

.radios_on_card .card_num div {
  width: 2.8rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid;
  border-radius: 10rem;
}

.radios_on_card .swiper-button-prev {
  color: var(--dark);
  left: -35%;
}

.radios_on_card .swiper-button-next {
  color: var(--dark);
  right: -35%;
}

.radios_on_card .swiper-pagination {
  letter-spacing: -0.1rem;
  bottom: -3rem;
  font-weight: 700;
  color: var(--border200);
}

.radios_on_card .swiper-pagination-current {
  color: var(--text);
}

.radios_on_card .swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  font-size: 0rem;
}

.radios_on_card .swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  font-size: 0rem;
}

/*간편결제 관리*/

.service_reset {
  display: block;
  font-weight: 500;
  margin: 2rem 0 auto;
  text-decoration: underline;
  text-align: center;
  color: var(--gray-400);
}

.service_reset:hover {
  cursor: pointer;
  color: var(--gray-400);
  text-decoration: underline;
}

.card-select .tit_h2 {
  margin-bottom: 1.2rem;
}

.card-select-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 2.4rem 1.6rem;
  font-size: 1.8rem;
  font-weight: 600;
  border-bottom: 0.1rem solid var(--border50);
}

.card-select-item:last-child {
  border-bottom: unset;
}

.card-del-btn {
  margin-left: 1rem;
}

.card_info p {
  padding-bottom: 0.4rem;
}

/* 메인페이지 검색창 라인 두께 */
.sch_outline_secondary.sch_ip {
  border: 2px solid var(--secondary);
}

/* 25.08.19 추가 css */
/* 검색페이지 헤더 그림자 삭제 */
body:has(.search_pg, .set_pinggopay) .hd_m {
  box-shadow: unset;
}

.sch_outline_secondary.sch_ip .form-control {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

/* 25.08.21 추가 css*/
/* 카드사 로고 */
.card_logo {
  width: 8.7rem;
  height: 5.4rem;
  text-align: center;
  margin-right: 1.5rem;
  border-radius: 0.8rem;
  flex-shrink: 0;
  padding: 0.5rem;
}

.card_logo_img {
  width: 1.8rem;
  height: 1.8rem;
  flex-shrink: 0;
}

.on_card_wr {
  position: absolute;
  left: 1.9rem;
  top: 1.6rem;
  display: flex;
  align-items: center;
}

.on_card_logo {
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 0.3rem;
}

.on_card_ic {
  position: absolute;
  left: 1.9rem;
  top: 5.5rem;
}

.on_card_ic img {
  height: 2rem;
}

/* 25.08.22 추가 css*/
/* 카드 버튼 */
.cd_plus_btn {
  width: 14rem;
  height: 4.4rem;
  border: 1px solid var(--border100);
  border-radius: 5rem;
  margin: 0 auto;
}


@media (max-width: 450px) {
  .event_item_v2 .product_item .pr_text .fs_16 {
    font-size: 1.3rem !important;
  }
}


/* 25.09.01 추가 */
/* 전체 카테고리 버튼 sticky */
#cate_cont:has(.cate_btn_wr) {
  position: sticky;
  height: fit-content;
  top: calc(4.1rem + var(--hd_height_m));
  z-index: 999;
  background: #fff;
  padding: 1.0rem 0;
  margin-bottom: 0 !important;
}

.main_sect.all_prod_sect {
  padding-top: 1.0rem !important;
}

/* 상단배너 있을 때 */
.mobile_wr:has(.app_bnr.show) #cate_cont:has(.cate_btn_wr) {
  top: calc(4.1rem + var(--hd_height_m) + 5.4rem);
}


/* 25.09.10 추가 */
/* touch_scroll 안 요소 스크롤 방지 */
.touch_scroll * {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
}


/* 25.09.11 추가 */
/* 추천 검색어 썸네일 추가 */
.rcmd_keyword .keyword_badge {
  background: #F7F7F9;
}

.rcmd_keyword .keyword_badge .keyword_text {
  padding: 0.4rem 1.2rem 0.4rem 0.4rem;
}

.rcmd_keyword .keyword_badge .rcmd_thumb {
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 50%;
  border: 1px solid #EFF2F6;
  margin-right: 0.5rem;
  flex-shrink: 0;
}


/* 옵션모달 수정 */
.select_option_v2.modal_bottom.modal .modal-dialog-scrollable .modal-content {
  height: 75vh;
  max-height: unset;
  min-height: unset;
}

.select_option_v2.modal_bottom.modal .modal-header {
  display: block;
}

.select_option_v2 .modal-body {
  -webkit-overflow-scrolling: touch;
  /* iOS에서 부드럽게 스크롤 */
  overscroll-behavior: none;
  /* 해당 영역 안에서 오버스크롤 못 하게 */
}

.select_option_v2 .prd_info {
  background: #F7F7F9;
  /* 25.09.17 추가 */
}

.select_option_v2 .hd_thumb {
  position: relative;
  width: 100%;
  overflow: hidden;
  transition: width 0.5s ease, height 0.5s ease;
  will-change: width, margin, border-radius, transform;
  transform: translateZ(0);
  backface-visibility: hidden;
  perspective: 1000;
}

.select_option_v2 .hd_thumb::after {
  content: '';
  display: block;
  padding-bottom: calc(230/412*100%);
}

.select_option_v2 .hd_thumb img {
  position: absolute;
  /* width: 100%; */
  height: 100%;
  object-fit: cover;
  object-position: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  aspect-ratio: 1/1;
  /* 25.09.17 추가 */
}

.select_option_v2 .opt_close_btn {
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  /* border: 1px solid var(--border100); */
  background-color: #fff;
  flex-shrink: 0;
  transition: 0;
}

.select_option_v2 .info_text {
  display: none;
  flex-grow: 1;
}

/* 스크롤된 후 */
.select_option_v2.modal_bottom.modal:has(.prd_info.scrolled) .modal-header {
  display: flex;
  padding: 1.6rem 1.6rem 0;
}

.select_option_v2 .prd_info.scrolled .hd_thumb {
  width: 3.6rem;
  border-radius: 0.4rem;
  margin-right: 0.8rem;
  flex-shrink: 0;
}

.select_option_v2 .prd_info.scrolled .hd_thumb::after {
  padding-bottom: 100%;
}

.select_option_v2 .prd_info.scrolled {
  display: flex;
  align-items: center;
  width: 100%;
  padding-right: 3.5rem;
  background: #fff;
}

.select_option_v2 .prd_info.scrolled .info_text {
  display: block;
  animation: showDelay 0s ease 0.5s forwards;
  opacity: 0;
}

.select_option_v2 .prd_info.scrolled .opt_close_btn {
  border-color: transparent;
  border-radius: 0;
  background-color: transparent;
  right: 1.6rem;
  top: 1.6rem;
}

.select_option_v2 .prd_info.scrolled .opt_close_btn img {
  width: 2.0rem;
}

.select_option_v2 .prd_info.scrolled .info_text {
  flex-grow: 1;
}

@keyframes showDelay {
  to {
    opacity: 1;
  }
}


/* 25.09.15 수정 */
/* 옵션 모달 수량 카운터 크기, 라인 수정 */
.option_modal .item_opt_counter {
  width: 10rem;
  height: 2.6rem;
  line-height: 2.6rem;
  transform: translateZ(0);
}

.option_modal .item_opt_counter_btn {
  width: 2.6rem;
  height: 100%;
  border: 1px solid #000;
  transform: translateZ(0);
}

.option_modal .item_opt_counter_btn.item_opt_down_btn {
  border-right: 0;
}

.option_modal .item_opt_counter_btn.item_opt_up_btn {
  border-left: 0;
}

.option_modal .item_opt_counter_btn.disabled,
.option_modal .item_opt_counter_btn:disabled {
  border-color: #000;
}

.option_modal .item_opt_counter .quantity {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2.8rem;
  border-radius: 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}



/* 25.09.24 수정 */
.mr_1 {
  margin-right: 0.1rem;
}

.mr_2 {
  margin-right: 0.2rem;
}

.mt_2 {
  margin-top: 0.2rem;
}

.mt_3 {
  margin-top: 0.3rem;
}

.mb_2 {
  margin-bottom: 0.2rem;
}

.mb_4 {
  margin-bottom: 0.4rem;
}

.icon_11 {
  width: 1.1rem;
  height: auto;
  flex-shrink: 0;
}

.fc_red {
  color: #D40022;
}

.fc_76 {
  color: #767676;
}

.event_item_v2 .product_item .pr_text .price {
  font-size: 1.6rem !important;
}

/* .event_item_v2 .product_item .pr_text .price .mr_8{ margin-right: 0.4rem;} */
.review_average_sm {
  font-size: 1.0rem;
  font-weight: 500;
  color: #767676;
  line-height: 1;
}

/* 상품 아이템 하단 슬라이드 수정 */
.item_bt_slide {
  font-size: 1.0rem;
  font-weight: 500;
  color: #767676;
  height: 1.5rem;
  margin-top: 0.8rem;
}

.item_bt_slide {
  line-height: 1;
}

.product_item .line_h1 {
  line-height: 1;
}

.item_bt_slide .free_text_img {
  width: 3.9rem;
}

.item_bt_slide .free_text_img {
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  word-break: break-all;
}

@media (max-width: 450px) {
  .product_item .pr_text>div.pr-5 {
    padding-right: 2.8rem;
  }

  .product_item .pr_text .price {
    font-size: 1.6rem !important;
  }

  .product_item .cart_btn {
    width: 2.8rem;
    height: 2.8rem;
  }

  .product_item .cart_btn img {
    width: 1.2rem;
  }
}


/* 25.09.25 수정 */
/* 추석로고 */
.hd_m .logo img.logo_tg {
  width: 12rem;
}


/* 25.09.29 수정 */
.cate_2dep_menu li p,
.v_cate_cont .main_cate_2st>ul>li>a p {
  word-break: keep-all;
  word-wrap: break-word;
}

/* 25.10.01 수정 */
/* 상품 상세페이지 하단 롤링 */
/* 상품 아이템 하단 슬라이드 */
.prd_bt_slide {
  width: 100%;
  height: 1.6rem;
}

/* 25.10.23 수정 */
/* 25.10.30 추가 수정됨 */
/* 상품 상세페이지 하단 롤링 */
.now_view_count {
  width: 26rem;
  max-width: calc(100% - 3.2rem);
  padding: 1.0rem 2.0rem;
  border-radius: 2.0rem;
  background: rgb(0 0 0 / 80%);
  /* backdrop-filter: blur(5px); */
  color: #fff;
  border: 0;
  position: absolute;
  left: 50%;
  top: -0.5rem;
  transform: translate(-50%, -100%);
  opacity: 0;
  animation: fadeUpDown 17s ease forwards;
  font-size: 1.4rem;
  font-weight: 700;
}

.now_view_count .prd_bt_slide p span {
  color: #E5C0FF;
}

@media (max-width: 380px) {
  .now_view_count {
    width: 100%;
  }
}

@keyframes fadeUpDown {
  0% {
    opacity: 0;
    top: 1rem;
  }

  6% {
    opacity: 0;
    top: 1rem;
  }

  8% {
    opacity: 1;
    top: -0.5rem;
  }

  98% {
    opacity: 1;
    top: -0.5rem;
  }

  100% {
    opacity: 0;
    top: 1rem;
  }
}

/* 25.10.30 추가 */
.now_view_count .prd_bt_slide .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 25.11.07 추가 */
/* 광고 뱃지 */
.pr_img {
  position: relative;
}

.ad_badge {
  position: absolute;
  top: 0.8rem;
  right: 0.8rem;
  z-index: 1;
  background: rgb(0 0 0 / 40%);
  border-radius: 1.0rem;
  font-size: 1.2rem;
  font-weight: 500;
  color: #fff;
  padding: 0.3rem 0.6rem;
}
