@charset "utf-8"; /**/

@font-face { font-family: 'NanumSquareRound'; src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NanumSquareRound.woff') format('woff'); font-weight: normal; font-style: normal; }
/* color: #222; color: var(--theme-color); */
:root { --theme-color: #fff; }
/* 공통 구조
**********************************************/
#wrap .only-pc { display: block; }
#wrap .only-mobile { display: none; }

/* Global */
body { position: relative; }
body.noscroll { overflow: hidden; }
body.noslogan { padding-top: 215px; }
.container { min-height: 380px; padding-bottom: 80px; }
.inner { position: relative; margin-left: auto; margin-right: auto; padding-top: 24px; }
.inner-sm { max-width: 588px; }
.inner-md-1 { max-width: 828px; }
.inner-md { max-width: 894px; }
.inner-lg-1 { max-width: 920px; }
.inner-lg { max-width: 1100px; }
.inner-xl { max-width: 1134px; }
.inner-xxl { max-width: 1200px; }
.inner-mart { margin-top: 32px; }
.full { width: 100%; }
.half { width: 50%; }
.spinner { top: 50% !important; left: 50% !important; }
.mt-0 { margin-top: 0 !important; }
.bt0 { border-top: none !important; }

/* 공통 STYLE
**********************************************/

/* 텍스트 */
.fc-theme { color: #383838 !important; color: var(--theme-color) !important; }
.fc-orange { color: #DC7B09 !important; }
.fc-blue { color: #3366E2 !important; }
.fc-red { color: #E22134 !important; }
.fwb { font-weight: bold; }

/* 버튼 */
.btn { display: inline-flex; align-items: center; justify-content: center; padding: 4px 12px; border-radius: 8px; font-weight: bold; letter-spacing: -1px; transition: background-color 0.2s, color 0.2s, border-color 0.2s; }
.btn i.ico { margin-right: 4px; }
.btn.default { background-color: #fff; border: 1px solid #dbdbdb; color: rgba(0, 0, 0, 0.58) !important; }
.btn.default:hover { background-color: #f5f5f5; }
.btn-theme { color: #fff !important; background-color: #383838; background-color: var(--theme-color); border: 2px solid #383838; border: 2px solid var(--theme-color); }
.btn-theme-line { border: 1px solid var(--theme-color); color: var(--theme-color); }
.btn-theme-line-opa { border: none !important; }
.btn-theme-line-opa:before { content: ''; position: absolute; top: -2px; left: -2px; display: block; width: calc(100% + 4px); height: calc(100% + 4px); border: 2px solid var(--theme-color); opacity: 0.3; z-index: 99999; border-radius: 8px; }
.btn-white { border: 1px solid #222; color: rgba(0, 0, 0, 0.78); }
.btn-white:hover { background-color: #f5f5f5; }
.btn-dark { color: #fff !important; background-color: #484848; border: 2px solid #484848; }
.btn-box-theme { color: #383838 !important; color: var(--theme-color) !important; border: 1px solid #383838; border: 1px solid var(--theme-color); }
.btn-box-dark { color: rgba(0, 0, 0, 0.78) !important; border: 1px solid #222; }
.btn-h50 { height: 50px; font-size: 16px; font-weight: bold; }
.btn-lg { width: 216px; height: 50px; padding: 0; font-size: 16px; }
.btn-xl { width: 260px; height: 50px; padding: 0; font-size: 16px; }
.btn-wrap { display: flex; justify-content: center; flex-direction: row; }
.btn-wrap.gap { padding-top: 16px; }
.btn-wrap .btn { margin: 0 4px; }
.btn-wrap .btn.btn-b { padding: 14px 46px; background-color: #555; border: 1px solid #555; color: #fff; }
.btn-wrap .btn.btn-theme { background-color: var(--theme-color); border: 1px solid var(--theme-color); }
.btn-wrap .none { display: none; }
.btn_wide { position: relative; display: inline-block; padding: 14px 0; background-color: var(--theme-color); font-size: 16px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: center; color: #fff; border-radius: 8px; margin-top: 16px; margin-bottom: 32px; max-width: 180px; width: 100%; }

/* 정렬 */
.tal { text-align: left !important; }
.tac { text-align: center !important; }
.tar { text-align: right !important; }

/* 아이콘 */
i.split { display: inline-block; vertical-align: middle; }
i.ico { display: inline-block; vertical-align: middle; }
i.rightArrow-round { width: 16px; height: 16px; background: url("../images/ico_rightArrow_round.png") no-repeat; }
i.close-round { width: 16px; height: 16px; background: url("../images/ico_close_round.png") no-repeat; }
i.login { width: 18px; height: 18px; background: url("../images/ico_login_2x.png") no-repeat; background-size: 18px 18px; }
i.logout { width: 18px; height: 18px; background: url("../images/ico_logout_2x.png") no-repeat; background-size: 18px 18px; }
i.user { width: 17px; height: 16px; background: url("../images/ico_member_2x.png") no-repeat; background-size: 17px 16px; }
i.cart { width: 32px; height: 32px; background: url("../images/ico_cart_2x.png") no-repeat; background-size: 32px 32px; }
i.cart-sm { width: 23px; height: 18px; background: url("../images/ico_cart_sm_2x.png") no-repeat; background-size: 23px 18px; }
i.filter { width: 32px; height: 32px; background: url("../images/ico_filter.png") no-repeat 0 0; }
i.filter2 { width: 16px; height: 17px; background: url("../images/ico_filter2_2x.png") no-repeat 0 0; background-size: 16px 17px; }
i.list { width: 14px; height: 17px; background: url("../images/ico_list_2x.png") no-repeat 0 0; background-size: 14px 17px; }
i.listWhite { width: 14px; height: 17px; background: url("../images/ico_list_white_2x.png") no-repeat 0 0; background-size: 14px 17px; }
i.booking { width: 28px; height: 22px; background: url("../images/ico_booking.png") no-repeat 0 0; background-size: 28px 22px; }
i.booking2 { width: 27px; height: 22px; background: url("../images/ico_booking_2x.png") no-repeat 0 0; background-size: 27px 22px; }
i.youtube { width: 28px; height: 21px; background: url("../images/ico_youtube_2x.png") no-repeat 0 0; background-size: 28px 21px; }
i.receipt { width: 16px; height: 16px; background: url("../images/ico_receipt_2x.png") no-repeat 0 0; background-size: 16px 16px; }
i.rightTheme { position: relative; top: -2px; width: 18px; height: 18px; background: url("../images/ico_arrow_right_theme_2x.png") no-repeat 0 0; background-size: 18px 18px; }
i.rightTheme::before { display: block; content: ''; position: absolute; top: 0; left: 0; width: 18px; height: 18px; background-color: #383838; background-color: var(--theme-color); z-index: -1; }
i.resetTheme { position: relative; width: 17px; height: 17px; background: url("../images/ico_reset_theme_2x.png") no-repeat 0 0; background-size: 17px 17px; }
i.resetTheme::before { display: block; content: ''; position: absolute; top: 0; left: 0; width: 17px; height: 17px; background-color: #383838; background-color: var(--theme-color); z-index: -1; }
i.itemEmpty { width: 46px; height: 41px; background: url("../images/ico_file_empty_2x.png") no-repeat center; background-size: 46px 41px; }
i.itemEmpty { width: 39px; height: 39px; background: url("../images/ico_item_empty_2x.png") no-repeat center; background-size: 39px 39px; }
i.brandEmpty { width: 42px; height: 42px; background: url("../images/ico_brand_empty_2x.png") no-repeat center; background-size: 42px 42px; }
i.orderEmpty { width: 80px; height: 80px; background: url("../images/ico_order_empty_2x.png") no-repeat center; background-size: 80px 80px; }
i.cartEmpty { width: 54px; height: 41px; background: url("../images/ico_cart_empty_2x.png") no-repeat center; background-size: 54px 41px; }
i.searchEmpty { width: 49px; height: 26px; background: url("../images/ico_search_empty_2x.png") no-repeat center; background-size: 49px 26px; }
i.mypage { width: 18px; height: 18px; background: url("../images/ic_mypage_2x.png") no-repeat center / contain; }
i.check { position: relative; display: inline-block; width: 16px; height: 16px; background: url('../images/ic_check_2x.png') no-repeat center / contain; margin-right: 4px; top: 1px; }

/* input */
select { cursor: pointer; }
.selectBox-wrap::after { display: block; content: ''; clear: both; }
.selectBox { position: relative; display: inline-block; font-weight: bold; font-size: 14px; color: rgba(0, 0, 0, 0.78); background-color: #fff; cursor: pointer; z-index: 9; }
.selectBox .select { position: relative; display: block; height: 40px; line-height: 40px; padding: 0 34px 0 12px; border: 1px solid #D8D8D8; border-radius: 4px; }
.selectBox .select span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.selectBox .select span::after { display: inline-block; content: ""; width: 12px; height: 8px; position: absolute; right: 12px; top: 50%; margin-top: -4px; background: url("../images/ico_arrow_bottm_2x.png") no-repeat 0 0; background-size: 12px 8px; }
.selectBox .selectOptions { display: none; position: absolute; width: 100%; max-height: 200px; padding: 4px 12px; opacity: 0; background-color: #fff; border: 1px solid #D8D8D8; border-radius: 4px; overflow-y: auto; z-index: 1; }
.selectBox .selectOptions li a { display: block; padding: 4px 0; color: rgba(0, 0, 0, 0.58); }
.selectBox .selectOptions li a:hover, .selectBox .selectOptions li a.active { color: rgba(0, 0, 0, 0.78); }
.selectBox.show { height: auto; z-index: 99; }
.selectBox.show .select { border-bottom: 1px solid transparent; border-radius: 4px 4px 0 0; }
.selectBox.show .selectOptions { opacity: 1; display: block; border-top: 1px solid transparent; border-radius: 0 0 4px 4px; }
.selectBox.disabled { background: #F5F5F5; }
.selectBox-2 .select { border: none; border-bottom: 1px solid #D8D8D8; border-radius: 0; }
.selectBox-2.show .select { border-bottom: 1px solid #D8D8D8; border-radius: 0; }
.selectBox-2.show .selectOptions { border-radius: 0; }
.selectBox-wrap > .selectBox { margin-right: 4px; }
.selectBox-wrap > .selectBox:last-child { margin-right: 0; }
.selectBoxA { position: relative; display: block; height: 40px; line-height: 40px; padding: 0 12px; border: 1px solid #D8D8D8; border-radius: 4px; font-weight: bold; font-size: 14px; background: url("../images/ico_arrow_bottm.png") no-repeat right 19px center; }
.selectBoxB { position: relative; display: block; height: 40px; line-height: 40px; padding: 0 12px; border: none; border-bottom: 1px solid #D8D8D8; border-radius: 0; font-weight: bold; font-size: 14px; background: url("../images/ico_arrow_bottm.png") no-repeat right 19px center; }
input.input-underline { border: none; box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.07); }
.checkboxA { position: relative; display: inline-block; }
.checkboxA input { display: none; }
.checkboxA input + label::before { content: ''; display: inline-block; min-width: 20px; height: 20px; cursor: pointer; border-radius: 4px; background-image: url('../images/ico_checkbox_default_2x.png'); background-color: #fff; background-size: 20px 20px; background-repeat: no-repeat !important; background-position: 0 0; }
.checkboxA input:checked + label::before { background-image: url('../images/ico_check_2x.png'); background-size: 13px 10px; background-color: #383838; background-color: var(--theme-color); background-position: center; }
.checkboxA label { position: relative; display: flex; justify-content: center; align-items: center; min-width: 20px; line-height: 20px; cursor: pointer; }
.checkboxA label span { margin-left: 28px; color: rgba(0, 0, 0, 0.58); }
.radioA { position: relative; display: inline-block; }
.radioA input { display: none; }
.radioA input + label::before { content: ''; position: absolute; left: 0; top: 0; display: inline-block; width: 20px; height: 20px; margin-right: 2px; cursor: pointer; border-radius: 50%; background-image: url('../images/ico_radio_default.png'); background-size: 20px; background-repeat: no-repeat; background-color: #fff; }
.radioA input:checked + label::before { background-image: none; background-color: #383838; background-color: var(--theme-color); background-size: auto; background-position: center; }
.radioA input:checked + label::after { display: block; content: ''; position: absolute; top: 50%; left: 7px; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background-color: #fff; }
.radioA label { position: relative; display: block; padding-left: 28px; line-height: 20px; cursor: pointer; }
.radioA label span { margin-left: 28px; color: rgba(0, 0, 0, 0.58); }

/* form */
.frm-nm { margin-bottom: 3px; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.frm-input { width: 100%; height: 40px; box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.07); }
.frm-input.underLine { border: none; border-radius: 0; }

/* component */
.list-more { position: relative; }
.list-more .moreViewBtn { height: 44px; font-size: 16px; transition: .2s ease; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); }
.list-more .moreViewBtn:hover { background-color: #F5F5F5; }
.list-more .moreViewBtn::before { display: none; content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 1px; background: #eee; }
.list-more .moreViewBtn span { display: inline-block; padding-right: 22px; background: url("../images/ico_arrow_bottm_2x.png") no-repeat right center; background-size: 12px 8px; }
.file-input-list li { position: relative; margin-bottom: 8px; padding: 16px 20px; background: #FFF; border: 1px solid #DDD; border-radius: 8px; }
.file-input-list li:last-child { margin-bottom: 0px; }
.file-input-list li a { display: block; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.78); background: url("../images/icon_download_2x.png") no-repeat right center; background-size: 14px 13px; }
.file-input-list li span { display: block; padding-left: 26px; padding-right: 26px; white-space: normal; line-height: 20px; height: 21px; word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.file-input-list-2 { position: relative; }
.file-input-list-2 li { display: inline-block; margin-right: 6px; }
.file-input-list-2 li:last-child { margin-right: 0; }
.file-input-list-2 li a { display: block; padding: 10px 16px; border: 1px solid #D8D8D8; border-radius: 22px; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.78); }
.file-input-list-2 li span { display: block; padding-left: 26px; white-space: normal; line-height: 20px; height: 21px; word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.file-img { background: url("../images/icon_img_2x.png") no-repeat left center; background-size: 20px 15px; }
.file-pdf { background: url("../images/icon_pdf_2x.png") no-repeat left center; background-size: 18px 21px; }
.file-zip { background: url("../images/icon_zip_2x.png") no-repeat left center; background-size: 20px 19px; }
.file-etc { background: url("../images/icon_file_2x.png") no-repeat left center; background-size: 17px 20px; }
.file-del { position: absolute; top: 50%; right: 20px; transform: translateY(-50%); display: inline-block; width: 17px; height: 17px; background: url("../images/icon_close_round.png") no-repeat 0 0; }
.title-underline { padding-bottom: 16px; border-bottom: 2px solid #222; }
.data-none { padding: 16px 0; text-align: center; color: rgba(0, 0, 0, 0.58); }
.filter-wrap { width: 32px; height: 32px; position: absolute; top: 0; right: 0; }
.filter-wrap:hover .filter-list { display: block; z-index: 9; }
.filterBtn { display: block; }
.filter-list { display: none; position: absolute; top: -8px; left: 60px; width: 107px; padding: 20px 25px; background: #fff; border: 1px solid #EEE; box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.12); border-radius: 8px; transition: .2s ease; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); z-index: 1; }
.filter-list::before { display: block; content: ''; position: absolute; top: -1px; left: -13px; width: 105px; height: 33px; background: url("../images/bubble_top.png") no-repeat left center; z-index: -1; }
.filter-list::after { display: block; content: ''; position: absolute; top: 0; left: -30px; width: 100px; height: 100px; z-index: -1; }
.filter-list li a { position: relative; display: inline-block; line-height: 29px; font-size: 12px; }
.filter-list li a::after { display: none; content: ''; position: absolute; bottom: 6px; left: 0px; width: 100%; height: 1px; background: rgba(0, 0, 0, 0.58); }
.filter-list li:hover a, .filter-list li a.active { font-weight: bold; }
.filter-list li:hover a::after, .filter-list li a.active::after { display: block; }
.mark { display: inline-block; padding: 7px 6px; font-weight: bold; font-size: 14px; line-height: 140%; color: rgba(0, 0, 0, 0.58); background-color: #fff; border: 1px solid #D8D8D8; border-radius: 8px; text-align: center; }
.warning { padding-left: 20px; line-height: 17px; font-weight: bold; font-size: 12px; color: #E22134; background: url("../images/ico_warning_2x.png") no-repeat left top; background-size: 16px 16px; }

/* table */
.btable tr { height: 52px; }
.btable tr th { text-align: left; font-weight: bold; }
.btable tr td { color: rgba(0, 0, 0, 0.58); }
.htable { }
.htable thead tr { height: 52px; }
.htable tbody tr { height: 70px; }
.htable tr th { border-top: 2px solid #000; border-bottom: 1px solid #dbdbdb; font-size: 13px; }
.htable tr td { border-bottom: 1px solid #eee; text-align: center; color: rgba(0, 0, 0, 0.58); }
.htable tr td a { color: rgba(0, 0, 0, 0.58); }
.ul-btable { border-top: 2px solid #222; border-bottom: 1px solid #dbdbdb; }
.ul-btable .tbody li { display: flex; padding: 16px 0; }
.ul-btable .tbody li > span { position: relative; flex-shrink: 0; width: 160px; font-weight: bold; }
.ul-btable .tbody li > span > svg { position: relative; top: 1px; }
.ul-btable .tbody li > div { flex-grow: 1; padding-left: 16px; color: rgba(0, 0, 0, 0.58); }
.ul-btable .tbody li > ol { padding-left: 16px; }
.ul-btable .tbody li > ol > li { position: relative; display: block; text-align: left; padding: 0; padding-bottom: 10px; padding-left: 8px; }
.ul-btable .tbody li > ol > li:last-child { padding-bottom: 0; }
.ul-btable .tbody li > ol > li.dot::after { content: ''; position: absolute; top: 9px; left: 0; width: 3px; height: 3px; background-color: var(--theme-color); }
.ul-btable .tbody li > ol > li > strong { position: relative; display: block; font-size: 14px; font-weight: 400; }
.ul-htable .thead { border-top: 2px solid #222; border-bottom: 1px solid #dbdbdb; }
.ul-htable .thead li { display: flex; align-items: center; height: 50px; }
.ul-htable .thead li span { font-weight: bold; font-size: 13px; }
.ul-htable .tbody li { display: flex; align-items: center; padding: 16px 0; border-bottom: 1px solid #eee; }
.tui-datepicker-input input.ico_datepicker { border: 1px solid #ddd; font-weight: 400; width: 110px; height: 27px; border : 1px solid #ddd; padding: 0 8px; font-size: 12px; }
.ico_datepicker { background: url(../images/icon_date_2x.png) no-repeat right 10px center / 14px 15px; }

/* header */
#wrap.fixed .header-area { position: fixed; top: 0; left: 0; transition: 0.2s; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); box-shadow: 0px 18px 18px rgba(68, 68, 68, 0.06), 0px 0px 1px rgba(68, 68, 68, 0.31); z-index: 999; }
#wrap.fixed .header { box-shadow: 0px 18px 18px rgba(68, 68, 68, 0.06), 0px 0px 1px rgba(68, 68, 68, 0.31); }
#wrap.header-roll-up .header-area { -webkit-transform: translateY(-150%); -ms-transform: translateY(-150%); transform: translateY(-150%); }
.header-cont { width: 100%; z-index: 99; }
.header { width: 100%; border-bottom: 1px solid #dbdbdb; background-color: #fff; }
.header-area { width: 100%; height: 86px; border-bottom: 1px solid #eee; background-color: #fff; }
.header-inner { max-width: 1232px; margin: 0 auto; padding: 0 16px; height: 100%; }
.header-wrap { position: relative; height: 100%; display: flex; align-items: center; flex-direction: row; }
.header-wrap .header-title { flex-shrink: 0; }
.header-wrap .header-search-wrap { flex-grow: 1; }
.header-wrap .header-member-wrap { flex-shrink: 0; }
.logo { display: block; }
.logo img { max-width: 168px; max-height: 64px; vertical-align: middle; }
.logo .no-img { display: inline-block; vertical-align: middle; font-size: 24px; color: #000; }
.logo .campus { display: inline-block; height: 25px; vertical-align: middle; }
.logo .campus span { display: inline-block; max-width: 107px; height: 25px; line-height: 20px; margin-left: 16px; padding: 2px 8px; background-color: #fff; border-radius: 4px; color: rgba(0, 0, 0, 0.58); border: 1px solid rgba(0, 0, 0, 0.38); font-weight: bold; font-size: 13px; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pageTitle { display: none; position: relative; }
.pageTitle .btnBack { position: absolute; top: -2px; left: 0; width: 24px; height: 24px; background: url("../images/ico_arrow_left_2x.png") no-repeat center; background-size: 10px 17px; }
.pageTitle .subTitle { margin-left: 32px; font-weight: bold; font-size: 16px; line-height: 140%; }
.header-search { position: relative; max-width: 536px; height: 54px; margin-left: 48px; background: #FAFAFA; border: 1px solid #D8D8D8; border-radius: 28px; overflow: hidden; }
.header-search input { width: 100%; height: 52px; padding: 0 82px 0 28px; font-size: 13px; letter-spacing: -1px; color: rgba(0, 0, 0, 0.78); border: none; background-color: transparent; border-radius: 28px; caret-color: #383838; caret-color: var(--theme-color); }
.header-search input::placeholder { font-size: 13px; color: rgba(0, 0, 0, 0.3); letter-spacing: -1px; font-weight: normal; }
.header-search input:focus { background-color: #fff; }
.header-search .btnCleaer { display: none; position: absolute; top: 19px; right: 72px; width: 15px; height: 15px; background: url("../images/ico_close_circle_2x.png") no-repeat center; background-size: 15px 15px; font-size: 0; text-indent: -999px; }
.header-search input:focus + .btnCleaer { display: block; }
.header-search .btnSearch { position: absolute; top: 5px; right: 6px; width: 42px; height: 42px; background-color: #383838; background-color: var(--theme-color); border-radius: 50%; font-size: 0; text-indent: -999px; }
.header-search .btnSearch::before { display: block; content: ''; width: 42px; height: 42px; background: url("../images/ico_search_white_2x.png") no-repeat center; background-size: 17px 17px; }
.header-cart { position: relative; display: inline-block; width: 48px; height: 48px; margin-left: 16px; text-align: center; }
.header-cart i { margin-top: 8px; }
.header-cart span { position: absolute; top: -1px; right: -1px; display: inline-block; height: 18px; padding: 0 7px 0 6px; line-height: 18px; font-weight: bold; font-size: 11px; text-align: center; color: #FFF; letter-spacing: -1px; background-color: #383838; background-color: var(--theme-color); border-radius: 10px; }
.cart-pop { display: none; position: absolute; top: 50px; right: 0; width: 320px; height: 92px; background: #FFF; border: 1px solid #383838; border: 1px solid var(--theme-color); box-shadow: 0px 18px 18px rgba(68, 68, 68, 0.06), 0px 0px 1px rgba(68, 68, 68, 0.31); border-radius: 8px; cursor: default; z-index: 99; }
.cart-pop-box { display: flex; align-items: center; height: 90px; padding: 0 16px; }
.cart-pop-box .prd-thumb { align-items: center; flex-shrink: 0; width: 42px; height: 90px; margin-bottom: 0; }
.cart-pop-box .prd-thumb img { box-shadow: 0px 3.75px 3.75px rgba(68, 68, 68, 0.1); }
.cart-pop-box .text { flex-grow: 1; padding-left: 16px; }
.cart-pop-box .text .name { margin-bottom: 4px; font-weight: bold; color: rgba(0, 0, 0, 0.38); line-height: 20px; }
.cart-pop-box .text .info { font-weight: bold; color: #000; line-height: 20px; }
.cart-notice-wrap { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%; display: none; z-index: 9999; background-color: rgba(0, 0, 0, 0.58); }
.cart-notice-wrap.show { display: block; }
.cart-notice { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; width: 96%; height: 70%; max-width: 815px; border: 1px solid #ccc; border-radius: 8px; background-color: #fff; box-shadow: 0px 10px 10px rgba(68, 68, 68, 0.06), 0px 0px 1px rgba(68, 68, 68, 0.21); }
.cart-notice-scroll { overflow: auto; max-height: calc(100% - 28px); width: 100%; height: 100%; }
.cart-notice-scroll::-webkit-scrollbar { width: 10px; height: 10px; }
.cart-notice-scroll::-webkit-scrollbar-thumb { background-color: #d1d1d1; border-radius: 10px; background-clip: padding-box; border: 3px solid transparent; }
.cart-notice-scroll::-webkit-scrollbar-corner { display: none; }
.cart-notice-box { position: relative; display: block; width: 100%; height: 100%; padding: 16px; padding-right: 10px; }
.cart-notice-box .top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.cart-notice-box .top span { position: relative; display: block; font-size: 14px; font-weight: 600; line-height: 1.4; color: rgba(0, 0, 0, 0.78); }
.cart-notice-box .top a { width: 18px; height: 18px; background: url("../images/ico_m_close_2x.png") no-repeat center; background-size: 18px 18px; }
.cart_notice_content { position: relative; display: block; width: 100%; height: 100%; }
.cart_notice_content img { width: 100%; height: auto; object-fit: contain; }
.cart_notice_content span.none { position: absolute; top: 50%; left: 50%; display: block; transform: translate(-50%, -50%); font-weight: 600; font-size: 18px; }
.header-member-wrap { display: flex; flex-direction: row; align-items: center; margin-left: 16px; }
.header-non-member { display: inline-block; vertical-align: super; }
.header-non-member li { display: inline-block; margin-right: 24px; }
.header-non-member li:last-child { margin-right: 0; }
.header-non-member li a { font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.header-non-member li a i { position: relative; top: -2px; margin-right: 4px; }
.header-member-wrap .childSelect select { position: relative; display: block; width: 100%; height: 32px; line-height: 30px; padding: 0 28px 0 8px; border: none; border-bottom: 1px solid #D8D8D8; border-radius: 0; background: url("../images/ico_arrow_bottm.png") no-repeat right 8px center; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.childSelect { width: 160px; margin-left: 8px; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.childSelect .select { height: 32px; line-height: 32px; cursor: pointer; }
.childSelect .selectOptions li a { padding: 3px 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.header-notice { position: relative; top: 2px; display: inline-block; margin-left: 35px; }
.header-notice span { position: absolute; top: -6px; right: -8px; display: block; height: 18px; line-height: 18px; padding: 0 6px; background-color: #383838; background-color: var(--theme-color); border-radius: 10px; color: #fff; text-align: center; font-weight: bold; font-size: 12px; }
.header-member { width: 106px; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.header-member .select { height: 32px; line-height: 30px; padding: 0 26px 0 8px; }
.header-member .select span { padding-left: 26px; background: url("../images/ico_member_2x.png") no-repeat left center; background-size: 17px 16px; }
.header-member.selectOptions { padding: 0 10px; }
.header-member .selectOptions li a { padding-left: 22px; font-size: 12px; font-weight: bold; }
.header-member .selectOptions li a:hover { color: #383838; color: var(--theme-color); }
.header-member .selectOptions li.mb-logout a { background: url("../images/ico_logout_2x.png") no-repeat left center; background-size: 18px 18px; }
.header-member .selectOptions li a i { margin-right: 4px; }
.gnb-area { height: 64px; }
.gnb-wrap { position: relative; height: 64px; }
.gnb-wrap .categoryBtn { position: absolute; top: 20px; left: 0; display: flex; align-items: center; transition: 0.2s; }
/* .gnb-wrap .categoryBtn i { display: inline-block; width: 16px; height: 8px; background: url("../images/ico_menu_2x.png") no-repeat 0 0; background-size: 16px 16px; background-position: 0 0; } */
.gnb-wrap .categoryBtn i { display: inline-block; width: 16px; height: 8px; display: flex; justify-content: center; align-items: center }
.gnb-wrap .categoryBtn span { margin-left: 8px; font-weight: bold; font-size: 14px; letter-spacing: -1px; color: rgba(0, 0, 0, 0.78); }
/* .gnb-wrap .categoryBtn:hover i { background-position: 0 -8px; } */
.gnb-wrap .categoryBtn:hover i { fill: var(--theme-color) }
.gnb-wrap .categoryBtn:hover span { color: #383838; color: var(--theme-color); }
.gnb-wrap .orderBtn { position: absolute; top: 15px; right: 0; display: flex; justify-content: center; align-items: center; width: 103px; height: 34px; background: #FFF; border: 1px solid #D8D8D8; border-radius: 8px; transition: 0.2s; z-index: 1; }
.gnb-wrap .orderBtn:hover { border-color: #383838; border-color: var(--theme-color); box-shadow: 0px 0px 1px 0px #44444436; box-shadow: 0px 10px 10px 0px #4444440F; }
.gnb-wrap .orderBtn:active { background-color: #f5f5f5; box-shadow: none; }
.gnb-wrap .orderBtn:active span { color: var(--theme-color); }
.gnb-wrap .orderBtn:active svg * { stroke: var(--theme-color) }
.gnb-wrap .orderBtn i { opacity: 0.58; }
.gnb-wrap .orderBtn span { margin-left: 10px; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.gnb { position: absolute; top: 0; left: 0; margin-left: 124px; line-height: 64px; }
.gnb::before { display: block; content: ''; position: absolute; top: 50%; left: 0; margin-top: -4px; width: 1px; height: 8px; background-color: #D8D8D8; }
.gnb .gnb-menu { position: relative; padding-left: 20px; z-index: 1; }
.gnb .gnb-menu li { display: inline-block; padding: 0px 18px; }
.gnb .gnb-menu li a { position: relative; display: inline-block; height: 100%; padding: 0 1px; font-weight: bold; text-align: center; }
.gnb .gnb-menu li a span { position: relative; z-index: 1; }
.gnb-bar { display: block; position: absolute; top: 34px; width: 0; height: 10px; background-color: #383838; background-color: var(--theme-color); opacity: 0.35; }
.tnb_wrap { height: 24px; }
.tnb_wrap .tnb_inner { max-width: 1200px; height: 100%; margin: 0 auto; }
.tnb_list { display: flex; height: 100%; }
.tnb_list li { position: relative; }
.tnb_list li a { display: block; height: 100%; padding: 0 32px; font-size: 12px; color: rgba(0, 0, 0, 0.58); line-height: 24px; }
.tnb_list li a:hover { color: var(--theme-color); }
.tnb_list li a.on { font-weight: bold; background-color: #fff; border-left: none; background: var(--theme-color); color: #fff; border-radius: 0 0 8px 8px; }
.tnb_list li a.on:hover { color: #fff; }

/* side menu */
#sideMenu { position: fixed; right: -100%; top: 0; width: 100%; height: 100%; background-color: #fff; transition: all ease 0.5s; -webkit-transition: all ease 0.5s; -moz-transition: all ease 0.5s; overflow-y: auto; z-index: 99999; }
#sideMenu.mm-open { right: 0; }
.sideMenu-btn { display: none; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 48px; height: 48px; background-color: #fff; }
.sideMenu-btn::before { content: ''; position: absolute; left: 12px; top: 20px; display: block; width: 24px; height: 2px; background: #000; }
.sideMenu-btn::after { content: ''; position: absolute; left: 12px; bottom: 19px; display: block; width: 24px; height: 2px; background: #000; }
.sideMenu-home { position: absolute; top: 14px; right: 64px; display: block; width: 48px; height: 48px; background: url("../images/ico_home_2x.png") no-repeat center; background-size: 22px 24px; font-size: 0; text-indent: -999px; }
.sideMenu-close { position: absolute; top: 14px; right: 16px; display: block; width: 48px; height: 48px; background: url("../images/ico_m_close_2x.png") no-repeat center; background-size: 20px 20px; font-size: 0; text-indent: -999px; }
.lnb-member { padding: 24px 16px; border-bottom: 1px solid #D8D8D8; }
.lnb-member > p { display: inline-block; }
.lnb-member > p a, .lnb-member > p span { font-weight: bold; border-bottom: 1px solid rgba(0, 0, 0, 0.78); }
.lnb-member > a { margin-left: 4px; font-size: 12px; padding: 6px 8px; }
.m-childSelect { width: 100%; background: #F5F5F5; }
.m-childSelect .selectBoxB { background: url(../images/ico_arrow_bottm_2x.png) no-repeat right 12px center; background-size: 12px 8px; }
.m-childSelect .selectOptions { border-left: none; border-right: none; }
.lnb-menu > li > a { position: relative; display: block; padding: 16px; border-bottom: 1px solid #eee; font-weight: bold; }
.lnb-menu > li > a::after { content: ''; position: absolute; top: 50%; right: 16px; display: block; width: 7px; height: 10px; margin-top: -3.5px; background: url("../images/ico_arrow_right_sm_2x.png") no-repeat center; background-size: 7px 10px; }

.lnb-menu > li > div.mypage { position: relative; display: block; padding: 16px; border-bottom: 1px solid #eee; font-weight: bold; }
.lnb-menu > li > div.mypage::after { content: ''; position: absolute; top: 50%; right: 16px; display: block; width: 7px; height: 10px; margin-top: -3.5px; background: url("../images/ico_arrow_right_sm_2x.png") no-repeat center; background-size: 7px 10px; }
.lnb-menu > li > div.mypage.on::after { transform: rotate(90deg); }
.lnb-menu > li > div.mypage_menu { position: relative; display: none; justify-content: flex-start; align-items: center; flex-wrap: wrap; background-color: #f8f8f8; padding: 16px; padding-bottom: 8px; }
.lnb-menu > li > div.mypage_menu.on { display: flex; }
.lnb-menu > li > div.mypage_menu a { width: 50%; margin-bottom: 8px; display: flex; justify-content: flex-start; align-items: center; font-weight: bold; }
.lnb-menu > li > div.mypage_menu a:hover { color: var(--theme-color); }
.lnb-menu > li > div.mypage_menu a::before { content: ''; position: relative; display: block; width: 4px; height: 4px; background-color: #333; border-radius: 50%; margin-right: 6px; }

.lnb-menu > li.home > a::after { display: none; }
.lnb-menu > li.on > a, .lnb-menu > li > a:hover { color: #383838; color: var(--theme-color); }
.lnb-menu > li.on > a::after { background: url("../images/ico_m_menu_close_2x.png") no-repeat center; background-size: 13px 6.5px; }
.lnb-menu > li.on .m-sub-menu { display: block; }
.lnb-menu > li .m-sub-menu { display: none; padding: 16px 32px; background: #F5F5F5; }
.lnb-menu > li .m-sub-menu > li { display: inline-block; width: 50%; }
.lnb-menu > li .m-sub-menu > li > a { position: relative; display: block; padding: 8px 0 8px 10px; }
.lnb-menu > li .m-sub-menu > li > a::before { display: inline-block; content: ''; position: absolute; top: 17px; left: 0; width: 3px; height: 3px; border-radius: 50%; background: rgba(0, 0, 0, 0.3); }
.lnb-menu > li .m-sub-menu > li.on > a, .lnb-menu .m-sub-menu > li > a:hover { color: #383838; color: var(--theme-color); }
.lnb-menu > li .m-sub-menu > li.on > a::before, .lnb-menu .m-sub-menu > li > a:hover::before { background: #383838; background: var(--theme-color); }
.m-quick { display: flex; padding: 24px 12px 16px; }
.m-quick::after { display: block; content: ''; clear: both; }
.m-quick > li { float: left; width: 50%; margin: 0 4px; border: 1px solid #D8D8D8; border-radius: 8px; text-align: center; }
.m-quick > li > a { display: flex; justify-content: center; align-items: center; padding: 18px 0; }
.m-quick > li > a > span { display: inline-block; margin-left: 8px; font-weight: bold; color: rgba(0, 0, 0, 0.58); }
.m-quick_banner { display: flex; flex-wrap: wrap; padding: 0 12px; }
.m-quick_banner > li { margin: 0 4px 8px 4px; }
.m-quick_banner > li > a { display: block; width: 128px; height: 64px; border: 1px solid #D8D8D8; border-radius: 8px; background-color: #fff; overflow: hidden; }
.m-quick_banner > li > a img { width: 126px; height: auto; object-fit: cover; }
.lnb-util { padding: 8px 0 16px; border-bottom: 1px solid #dbdbdb; }
.lnb-search { position: relative; width: 100%; height: 48px; padding: 0 16px; }
.lnb-search input { width: 100%; height: 48px; padding: 0 48px 0 0; border: none; border-bottom: 1px solid #dbdbdb; border-radius: 0; }
.lnb-search button { position: absolute; top: 0; right: 16px; width: 48px; height: 48px; background: url("../images/ico_search_grey_2x.png") no-repeat center; background-size: 20px 20px; font-size: 0; text-indent: -999px; }
.lnb-util-btn { display: flex; flex-direction: row; justify-content: space-between; margin-top: 16px; padding: 0 12px; }
.lnb-util-btn button { display: flex; align-items: center; justify-content: center; width: 50%; height: 54px; margin: 0 4px; font-weight: bold; border-radius: 8px; }
.lnb-util-btn button i { margin-right: 8px; }

/* footer */
.footer { position: relative; width: 100%; border-top: 11px solid #F5F5F5; background-color: #fff; z-index: 9; }
.footer::before { position: absolute; top: -12px; left: 0; display: block; content: ''; width: 100%; height: 1px; background: #D8D8D8; }
.footer-inner { max-width: 1232px; margin: 0 auto; padding: 0 16px; }
.footer-wrap { display: flex; justify-content: space-between; padding: 60px 0; }
.ft-info { flex-grow: 1 }
.ft-menu { margin-bottom: 20px; }
.ft-menu-list { display: inline-block; }
.ft-menu-list li { display: inline-block; margin-right: 12px; }
.ft-menu-list li a { font-weight: bold; }
.ft-addres-copy h2 { margin-bottom: 10px; font-weight: bold; font-size: 18px; line-height: 120%; color: rgba(0, 0, 0, 0.78); }
.ft-addres-copy .address { margin-bottom: 10px; color: rgba(0, 0, 0, 0.58); }
.ft-addres-copy .copy { color: rgba(0, 0, 0, 0.3); }
.address li { padding-left: 19px; }
.address li.addr { background: url("../images/ico_location_2x.png") no-repeat left top 3px; background-size: 11px 16px; }
.address li.tell { background: url("../images/ico_call_2x.png") no-repeat left top 3px; background-size: 11px 16px; }
.address li.business { background: url("../images/ico_info_2x.png") no-repeat left top 4px; background-size: 10px 16px; }
.address li span { position: relative; margin-right: 8px; }
.address li span::after { display: inline-block; content: ''; width: 2px; height: 12px; margin-left: 8px; background-color: #dbdbdb; }
.address li span:last-child::after { display: none; }
.footer-space { display: none; }
#wrap.fixed.header-roll-up .quick-menu { position: fixed; top: 24px; }
#wrap.fixed .quick-menu { position: fixed; top: 112px; z-index: 999; }
.quick-menu { position: absolute; top: 199px; right: 50%; margin-right: -766px; width: 128px; text-align: center; z-index: 9; }
.quick-list > li { position: relative; margin-bottom: 4px; }
.quick-list > li:last-child { margin-bottom: 0; }
.quick-list > li > a { display: block; padding: 12px 0 6px; border: 1px solid #D8D8D8; border-radius: 8px; background-color: #fff; transition: 0.2s; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); overflow: hidden; }
.quick-list > li > a:hover { background-color: #f5f5f5; }
.quick-list i { display: block; margin: 0 auto 5px; }
.quick-piggymom span { display: block; font-weight: bold; font-size: 13px; }
.quick-piggymom span:last-child { color: rgba(0, 0, 0, 0.38); }
.quick-reservation span, .quick-bookmall span { font-weight: bold; font-size: 13px; color: rgba(0, 0, 0, 0.58); }
.quick-menu .cnt { position: absolute; top: 6px; right: 40px; display: inline-block; height: 18px; line-height: 18px; padding: 0 6px; font-weight: bold; font-size: 11px; color: #FFF; text-align: center; background-color: #383838; background-color: var(--theme-color); border-radius: 10px; }
.page-top { transition: 0.2s; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); }
.page-top:hover button { background-color: #f5f5f5; }
.page-top button { display: block; width: 100%; height: 24px; margin: 0 auto; border: 1px solid #D8D8D8; border-radius: 8px; background-color: #fff; transition: 0.2s; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); }
.page-top span { padding-right: 16px; background: url("../images/ico_pageTop.png") no-repeat right center; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.quick-list > .quick_banner:nth-last-child(4) { margin-bottom: 16px; }
.quick-list > .quick_banner:nth-last-child(4)::after { display: block; content: ''; position: absolute; bottom: -9px; left: 32px; width: 64px; height: 1px; background: #eee; }
.quick-list > .quick_banner a { display: table; padding: 0; }
.quick-list > .quick_banner img { display: table-row; width: 126px; height: auto; border-radius: 8px; }
.m-page-top { display: none; position: fixed; bottom: 16px; right: 16px; z-index: 9; }
.m-page-top button { width: 60px; height: 60px; background-color: #fff; border: 1px solid #EEE; border-radius: 50%; box-shadow: 0px 18px 18px rgba(68, 68, 68, 0.06); }
.m-page-top button span { display: block; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.78); }
.m-page-top button span::before { display: block; content: ''; width: 24px; height: 15px; margin: 0 auto; background: url("../images/ico_arrow_up_lg_2x.png") no-repeat 0 0; background-size: 24px 15px; }

/* 메인 */
#main { position: relative; }
.main-banner { width: 100%; margin-bottom: 8px; border-radius: 8px; overflow: hidden; }
.main-banner > div { position: relative; }
.main-banner .main-swiper, .main-banner .swiper-wrapper { height: auto; }
.main-banner .swiper-slide img { width: 100%; height: auto; border: 1px solid #D8D8D8; box-sizing: border-box; border-radius: 8px; object-fit: cover; overflow: hidden; }
.main-banner .swiper-slide a { display: block; }
.main-banner .main-swiper-pc img { max-height: 160px; }
.main-banner .swiper-control { position: absolute; bottom: 5px; right: 56px; display: flex; height: 48px; padding: 0 16px; background: #fff; border: 1px solid #D8D8D8; box-sizing: border-box; border-radius: 16px 16px 0px 0px; z-index: 1; }
.main-banner .swiper-button-wrap { margin: 15px 20px; }
.main-banner .swiper-button { position: relative; top: auto; left: auto; right: auto; display: inline-block; width: 9px; height: 15px; cursor: pointer; }
.main-banner .swiper-button::after { display: none; }
.main-banner .swiper-button-next1 { background: url("../images/ico_next.png") no-repeat 0 0; margin-left: 24px; }
.main-banner .swiper-button-next1::before { display: inline-block; content: ''; position: absolute; left: -14px; top: 3px; width: 1px; height: 10px; background: rgba(0, 0, 0, 0.2); }
.main-banner .swiper-button-prev1 { background: url("../images/ico_prev.png") no-repeat 0 0; }
.main-banner .swiper-move-wrap { position: relative; width: 32px; height: 32px; margin-top: 8px; background: #fff; }
.main-banner .swiper-move { position: relative; display: none; width: 32px; height: 32px; font-size: 0; text-indent: -999px; cursor: pointer; }
.main-banner .swiper-move.on { display: block; }
.main-banner .swiper-button-play { background: url("../images/ico_play.png") no-repeat 0 0; }
.main-banner .swiper-button-pause { background: url("../images/ico_pause.png") no-repeat 0 0; }
.main-banner .swiper-pagination { position: relative; bottom: auto; left: auto; display: inline-block; width: auto; color: rgba(0, 0, 0, 0.58); line-height: 48px; font-size: 13px; }
.main-banner .swiper-pagination .swiper-pagination-current { font-weight: bold; }
.main-banner .swiper-pagination .swiper-pagination-total { color: rgba(0, 0, 0, 0.3); }
.main-banner .inner { overflow: hidden; }

/* 상품 */
.m-filter-wrap { display: none; width: 100%; margin-top: -24px; margin-bottom: 16px; }
.m-filter-wrap .filter-sort { padding: 8px 16px; border-bottom: 1px solid #eee; }
.m-filter-wrap .filter-select { padding: 12px 16px; border-bottom: 1px solid #eee; }
.m-filter { display: flex; align-items: center; }
.filter-btn { display: block; width: 32px; height: 32px; background: url("../images/ico_filter2_2x.png") no-repeat center; background-size: 16px 17px; background-color: #383838; background-color: var(--theme-color); border-radius: 4px; }
.m-filter .filter-cnt { margin-left: 8px; font-weight: bold; font-size: 13px; color: #383838; color: var(--theme-color); }
.m-filter .filter-cnt em { margin-left: 4px; font-weight: bold; }
.filter-select-list li { position: relative; display: inline-block; padding: 0 8px; border: 1px solid #D8D8D8; border-radius: 4px; }
.filter-select-list li .opt { margin-right: 12px; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.58); }
.filter-select-list li .delete { width: 10px; height: 10px; margin-bottom: 3px; background: url("../images/ico_close_sm_2x.png") no-repeat center; background-size: 8px 8px; }
.filter-select-list li .delete::after { position: absolute; top: 0; left: 0; content: ''; width: 100%; height: 100%; }
.m-prd-filter-header, .prd-filter-wrap .prd-title .cnt { display: none; }
.prd_wrap .prd_contents { display: flex; }
.prd-filter-wrap { flex-shrink: 0; width: 240px; background-color: #fff; }
.prd-filter-wrap .prd-title { padding: 17px 0; font-size: 20px; line-height: 120%; border-bottom: 2px solid #222; }

.prd-filter-wrap .mypage_list { padding-top: 26px; }
.prd-filter-wrap .mypage_list li { margin-bottom: 16px; }
.prd-filter-wrap .mypage_list li a { font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; }
.prd-filter-wrap .mypage_list li a.active { color: var(--theme-color); }

.filter-box-list::after { display: block; content: ''; width: 100%; height: 1px; background-color: #dbdbdb; }
.filter-box-list:last-child::after { display: none; }
.filter-box-list .filter-title { position: relative; padding: 16px 0; }
.filter-box-list .filter-title h3 { font-size: 13px; line-height: 140%; }
.filter-box-list .filter-title .filter-toggle { position: absolute; top: 50%; right: 0; margin-top: -8px; width: 16px; height: 16px; background: url("../images/ico_arrow_down_thin_2x.png") no-repeat center; background-size: 12px 7px; }
.filter-box-list .filter-title .filter-toggle.on { background-image: url("../images/ico_arrow_up_thin_2x.png"); }
.filter-box { display: block; padding-bottom: 36px; }
.filter-box .filter-depth { margin-bottom: 12px; }
.filter-box .filter-depth:last-child { margin-bottom: 0; }
.filter-box .filter-depth h4 { margin-bottom: 8px; font-size: 12px; line-height: 140%; color: rgba(0, 0, 0, 0.58); }
.filter-list-check::after { display: block; content: ''; clear: both; }
.filter-list-check > li { float: left; margin-right: 4px; margin-bottom: 4px; }
.filter-list-check > li:last-child { margin-right: 0; }
.filter-checkbox span input { display: none; }
.filter-checkbox span input + label { cursor: pointer; }
.filter-checkbox span input + label span { display: block; padding: 3px 7px; line-height: 140%; color: rgba(0, 0, 0, 0.58); text-align: center; border: 1px solid #D8D8D8; border-radius: 4px; }
.filter-checkbox span input:checked + label span { color: #fff; text-shadow: 0px 0px 1px #fff; background-color: #383838; background-color: var(--theme-color); border-color: #383838; border-color: var(--theme-color); }
.m-filter-button { display: none; width: 100%; background-color: #fff; }
.m-filter-button ul { display: flex; flex-direction: row; width: 100%; }
.m-filter-button li { width: 50%; }
.m-filter-button button { width: 100%; height: 52px; font-weight: bold; }
.m-filter-button .btn-reset { display: flex; justify-content: center; align-items: center; border: 3px solid #383838; border: 3px solid var(--theme-color); color: #383838; color: var(--theme-color); }
.m-filter-button .btn-reset i.ico { margin-left: 10px; }
.m-filter-button .btn-confirm { background-color: #383838; background-color: var(--theme-color); color: #fff; }
.prd-list-wrap { flex-grow: 1; margin-left: 67px; }
.sort-tab { padding: 20px 0; }
.sort-tab .m-sort-select { display: none; padding: 5px 32px 5px 8px; background: url("../images/ico_arrow_down_thin_2x.png") no-repeat right 10px center; background-size: 12px 7px; font-size: 13px; font-weight: bold; color: rgba(0, 0, 0, 0.58); cursor: pointer; }
.sort-tab ul { display: flex; justify-content: right; align-items: center; height: 18px; }
.sort-tab li input { display: none; }
.sort-tab li input + label { position: relative; padding: 0 10px; font-size: 13px; line-height: 140%; color: rgba(0, 0, 0, 0.58); cursor: pointer; }
.sort-tab li input + label:hover { font-weight: bold; color: rgba(0, 0, 0, 0.78); }
.sort-tab li input:checked + label { font-weight: bold; color: rgba(0, 0, 0, 0.78); }
.sort-tab li label::after { display: inline-block; content: ''; position: absolute; top: 50%; right: 0; margin-top: -4px; width: 1px; height: 8px; background-color: #dbdbdb; }
.sort-tab li:last-child label::after { display: none; }
.prdList { margin-left: -26px; }
.prdList::after { display: block; content: ''; clear: both; }
.prdList li { position: relative; float: left; width: 33.333%; padding: 0 0 26px 26px; }
.prd-box { position: relative; height: 373px; border: 1px solid #D8D8D8; border-radius: 12px; overflow: hidden; transition: border-color .2s ease, box-shadow .2s ease; cursor: pointer; }
.prd-box > div { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 24px; background-color: #fff; transition: opacity .4s ease; }
.prd-thumb { display: flex; justify-content: center; align-items: flex-end; width: 100%; height: 160px; margin-bottom: 24px; }
.prd-thumb img { max-height: 162px; box-shadow: 0px 10px 10px rgba(68, 68, 68, 0.1); border: 1px solid rgba(120, 120, 120, 0.1); border-radius: 4px; image-rendering: -moz-crisp-edges; /* Firefox */
 image-rendering: -o-crisp-edges; /* Opera */
 image-rendering: -webkit-optimize-contrast; /* Webkit (non-standard naming) */
 image-rendering: crisp-edges; -ms-interpolation-mode: nearest-neighbor; /* IE (non-standard property) */ }
.prd-info .prd-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; height: 44px; line-height: 22px; overflow: hidden; text-overflow: ellipsis; font-weight: bold; font-size: 16px; }
.prd-info .prd-brand { margin-top: 4px; font-weight: bold; font-size: 13px; color: rgba(0, 0, 0, 0.38); white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.prd-info .prd-price { position: absolute; bottom: 24px; left: 24px; }
.prd-info .prd-price .price-del { font-size: 12px; color: rgba(0, 0, 0, 0.38); text-decoration: line-through; }
.prd-info .prd-price .price { font-weight: bold; font-size: 12px; color: #000; }
.prd-info .prd-price .price span { margin-right: 3px; font-size: 20px; line-height: 120%; color: #383838; color: var(--theme-color); }
.prd-info .mark.member { position: absolute; right: 14px; bottom: 20px; }
.prd-box:hover { border-color: #383838; border-color: var(--theme-color); box-shadow: 0px 10px 10px rgba(68, 68, 68, 0.06), 0px 0px 1px rgba(68, 68, 68, 0.21); }
.prd-box .on { opacity: 1; }
.prd-box:hover .on { opacity: 0; }
.prd-box:hover .over { opacity: 1; }
.prd-box .over { opacity: 0; }
.prd-box .over > a { display: block; width: 100%; height: 100%; }
.prd-box .over .prd-info .prd-price { position: inherit; margin-top: 3px; }
.prd-box .over .prd-info .mark { display: block; width: 88px;; margin: 50px auto 0; transition: background-color .2s ease; border-radius: 4px; }
.prd-box .over .prd-info .mark:hover { background-color: #f5f5f5; }
.prd-box .prd-button { position: absolute; bottom: 0; left: 0; display: flex; width: 100%; height: 48px; z-index: 99; }
.prd-box .prd-button button { width: 50%; height: 48px; color: #fff; font-weight: bold; }
.prd-box .prd-button .btnCart { background-color: #484848; }
.prd-box .prd-button .btnBuy { background-color: #383838; background-color: var(--theme-color); }
.no-data { padding: 40px 0; text-align: center; border-top: 2px solid #222; border-bottom: 1px solid #dbdbdb; }
.no-data.bt0 { border-top: 0; }
.no-data i.ico { width: 80px; height: 80px; }
.no-data span { display: block; color: rgba(0, 0, 0, 0.58); }

/* 로그인 */
.login-wrapper { text-align: center; }
.memeber-login { padding: 28px 33px; }
.memeber-login h1 { padding-bottom: 12px; font-weight: bold; font-size: 24px; line-height: 140%; text-align: center; border-bottom: 1px solid #000; }
.login-form { padding-top: 20px; text-align: left; }
.login-form .input-form { padding-bottom: 32px; }
.input-wrap .input-form:last-child { padding-bottom: 0; }
.login-option { margin: 17px 0; }
.login-form .loginBtn, .login-form .joinBtn { height: 51px; font-size: 16px; }
.login-menu { margin: 28px 0 24px; padding-bottom: 26px; text-align: center; border-bottom: 1px solid #ddd; }
.login-menu li { position: relative; display: inline-block; margin: 0 16px; }
.login-menu li::after { position: absolute; right: -16px; top: 7px; display: inline-block; content: ''; width: 1px; height: 8px; background: #C4C4C4; }
.login-menu li:last-child:after { display: none; }
.login-menu li a { font-weight: bold; color: rgba(0, 0, 0, 0.58); }

/* sub page */
.sub-header { display: flex; justify-content: space-between; align-items: center; }
.sub-header.line { border-bottom: 2px solid #222; }
.sub-header.jcLeft { justify-content: flex-start; }
.sub-title { font-size: 20px; line-height: 58px }
.sub-cont-area { position: relative; }
.sub-aside-cont-area { position: relative; margin-left: 280px; }
.sub-cont-title { margin-bottom: 16px; font-weight: bold; font-size: 24px; line-height: 120%; color: #000; }
.sub-cont-title-2 { position: relative; margin-bottom: 16px; padding-left: 20px; font-weight: bold; font-size: 24px; line-height: 120%; color: #000; }
.sub-cont-title-2::before { display: inline-block; content: ''; position: absolute; top: 0; left: 0; width: 10px; height: 28px; margin-right: 10px; background-color: #383838; background-color: var(--theme-color); }
.sub-cont { position: relative; }
.sub-cont.gap { position: relative; margin-bottom: 24px; }

/* 탭 */
.tab-box { margin-bottom: 16px; border-bottom: 1px solid #dbdbdb; }
.tab-box .tab-list { height: 37px; line-height: 37px; }
.tab-box .tab-list li { display: inline-block; }
.tab-box .tab-list li a { position: relative; display: block; font-size: 13px; color: rgba(0, 0, 0, 0.58); text-align: center; }
.tab-box .tab-list li a:hover, .tab-list li a.on { font-weight: bold; color: #383838; color: var(--theme-color); }
.tab-box .tab-list li a::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 3px; background-color: transparent; }
.tab-list li a.on::after { background-color: #383838; background-color: var(--theme-color); }
.tab-box-b { margin-bottom: 36px; border-bottom: none; }
.tab-box-b .tab-list { max-width: 320px; margin: 0 auto; text-align: center; border-bottom: 2px solid #dbdbdb; }
.tab-box-b .tab-list li { float: left; width: 160px; }
.tab-box-b .tab-list li a { display: inline-block; width: 100%; padding: 0; font-weight: bold; }
.tab-box-b .tab-list li a:hover, .tab-box-b .tab-list li a.on { color: #000; }
.tab-box-b .tab-list li a::after { bottom: 0; height: 2px; }
.tab-contents > div { display: none; }
.tab-contents > div.current { display: block; }
.tab-btn li { position: relative; display: inline-block; margin-right: 13px; }
.tab-btn li:last-child { margin-right: 0; }
.tab-btn li::after { display: inline-block; content: ''; position: absolute; top: 50%; right: -9px; width: 1px; height: 8px; margin-top: -4px; background-color: #D8D8D8; }
.tab-btn li:last-child::after { display: none; }
.tab-btn li a { display: block; padding: 5px 30px; color: rgba(0, 0, 0, 0.58); font-size: 14px; border-radius: 20px; border: 2px solid #fff; }
.tab-btn li a.active { border-color: #484848; font-weight: bold; color: rgba(0, 0, 0, 0.78); }
.tab-btn li a b { font-size: 14px; font-weight: 400; line-height: 1.4; letter-spacing: -1px; text-align: right; margin-left: 4px; color: #00000094; }
.tab-btn li a.active b { color: var(--theme-color); font-weight: 700; }
.tab-list-btn { width: 100%; border-radius: 4px; overflow: hidden; }
.tab-list-btn::after { display: block; content: ''; clear: both; }
.tab-list-btn li { float: left; width: 33.333%; }
.tab-list-btn li a { display: block; padding: 8px 0; font-weight: bold; color: rgba(0, 0, 0, 0.3); background: #F5F5F5; text-align: center; }
.tab-list-btn li a.on, .tab-list-btn li a:hover { color: #fff; background: #383838; background: var(--theme-color); }
.tab-btn-2 li { display: inline-block; margin: 0 4px 8px 0; }
.tab-btn-2 li:last-child { margin-right: 0; }
.tab-btn-2 li a { display: block; padding: 12px 28px; color: rgba(0, 0, 0, 0.38); border-radius: 8px; border: 1px solid #DDD; background-color: #fff; }
.tab-btn-2 li a.on, .tab-btn-2 li a:hover { -webkit-text-stroke: 0.2px white; color: #fff; background: #383838; background: var(--theme-color); border: 1px solid #383838; border: 1px solid var(--theme-color); }
.pageBack { display: block; width: 80px; height: 80px; margin: 60px auto; padding-top: 22px; background: rgba(0, 0, 0, 0.78); border-radius: 50%; text-align: center; }
.pageBack i { display: block; width: 15px; height: 12px; margin: 0 auto; background: url("../images/ico_arrow_left_white.png") no-repeat 0 0; }
.pageBack span { display: block; margin-top: 7px; font-weight: bold; font-size: 11px; color: #FFF; line-height: 22px; }


.paging { text-align: center; }
.paging > button { display: inline-block; margin: 0 3px; padding: 14px 7px; }
.paging > button span { display: block; width: 11px; height: 18px; font-size: 0; background-image: url("../images/ico_pagination_2x.png"); background-repeat: no-repeat; background-size: 47px 16px; opacity: 0.3; z-index: -9999; }
.paging .first span { width: 15px; height: 16px; background-position: 0 0; }
.paging .prev span { width: 8px; height: 16px; background-position: -15px 0; }
.paging .next span { width: 8px; height: 16px; background-position: -24px 0; }
.paging .last span { width: 15px; height: 16px; background-position: -33px 0; }
.paging .paging-num { display: inline-block; margin: 0 3px; vertical-align: middle; }
.paging .paging-num a { position: relative; top: 0; display: inline-block; margin: 10px; font-size: 14px; color: rgba(0, 0, 0, 0.58); cursor: pointer; }
.paging .paging-num a.on, .paging .paging-num a:hover { -webkit-text-stroke: 1px #383838; -webkit-text-stroke: 1px var(--theme-color); color: #383838; color: var(--theme-color); border-bottom: 1px solid #383838; border-bottom: 1px solid var(--theme-color); }
.paging .paging-num a.now-num, .paging .paging-num a.last-num { display: none; }

/* 상품 상세페이지 */
.prd-cont-wrap { position: relative; padding-top: 24px; }
.prd-view-wrap { padding-right: 385px; }
.prd-info-wrap { display: flex; padding-top: 32px; }
.prd-img-view { position: relative; flex-shrink: 0; width: 162px; height: 230px; }
.prd-img-view .prd-thumb { align-items: center; height: 230px; margin-bottom: 0; }
.prd-img-view .prd-thumb img { max-height: 232px; }
.prd-img-view .prd-thumb .m-thumb-bg { display: none; }
.prd-img-view .mark.member { position: absolute; right: 16px; bottom: 16px; }
.prd-info-view { flex-grow: 1; padding-left: 32px; }
.prd-info-view .pod-location { margin-bottom: 16px; }
.prd-info-view .prd-name { margin-bottom: 16px; font-weight: bold; font-size: 24px; line-height: 120%; }
.prd-info-view .info-list { margin-bottom: 40px; }
.prd-info-view .info-list dl { display: flex; line-height: 140%; font-size: 13px; }
.prd-info-view .info-list dl dt { flex-shrink: 0; }
.prd-info-view .info-list dl dd { flex-grow: 1; margin-left: 10px; color: rgba(0, 0, 0, 0.38); }
.prd-info-view .prd-price { border-top: 1px solid #dbdbdb; }
.prd-info-view .prd-price dl { display: flex; justify-content: space-between; align-items: flex-end; padding-top: 16px; }
.prd-info-view .prd-price dl dt { font-weight: bold; font-size: 13px; }
.prd-info-view .prd-price dl dd .price-del { margin-right: 4px; font-weight: bold; font-size: 16px; color: rgba(0, 0, 0, 0.3); text-decoration: line-through; }
.prd-info-view .prd-price dl dd .price { font-size: 12px; color: #000; }
.prd-info-view .prd-price dl dd .price em { display: inline-block; margin-right: 4px; font-weight: bold; font-size: 28px; color: #383838; color: var(--theme-color); }
.prd-detail-wrap { margin-top: 32px; }
.prd-detail-wrap h3 { margin-bottom: 18px; font-size: 20px; }
.prd-detail-view { position: relative; padding: 32px; border: 1px solid #EEE; background-color: #fff; }
.prd-detail-view::before { display: block; content: ''; position: absolute; top: -2px; left: 0; width: 100%; height: 1px; background-color: #484848; }
.prd-detail-view .text { margin-bottom: 32px; color: rgba(0, 0, 0, 0.58); }
.prd-detail-view .text:last-child { margin-bottom: 0; }
.prd-detail-view .text b { display: block; margin-bottom: 20px; font-size: 16px; }
.prd-detail-view .text p { line-height: 24px; }
.prd-detail-wrap img { display: block; height: auto !important; margin-top: 10px; }
.aside-buy-wrap { position: absolute; top: 56px; right: 0; width: 260px; background-color: #fff; }
.aside-buy-wrap.fixed { position: fixed; top: 56px; }
.total-price-view { border-top: 2px solid #222; }
.total-price-view h4 { padding: 24px 0; font-size: 16px; border-bottom: 1px solid #dbdbdb; }
.total-price-view .prd-option { padding: 24px 0; border-bottom: 1px solid #eee; }
.total-price-view .prd-option dl { display: flex; align-items: center; margin-bottom: 16px; }
.total-price-view .prd-option dl:last-child { margin-bottom: 0; }
.total-price-view .prd-option dl dt { flex-shrink: 0; width: 80px; }
.total-price-view .prd-option dl dd { flex-grow: 1; text-align: right; font-size: 12px; color: #000; }
.total-price-view .prd-option dl dd span { margin-right: 4px; font-weight: bold; font-size: 16px; color: rgba(0, 0, 0, 0.78); }
.total-price-view .prd-option dl.price dd span { color: #383838; color: var(--theme-color); }
.total-price-view .prd-option dl.qty dd .quantity { float: right; }
.total-price-view .total-sum { padding: 32px 0 16px; }
.total-price-view .total-sum dl { display: flex; align-items: center; }
.total-price-view .total-sum dl dt { flex-shrink: 0; width: 30px; }
.total-price-view .total-sum dl dd { flex-grow: 1; text-align: right; font-size: 12px; color: #000; }
.total-price-view .total-sum dl dd span { margin-right: 4px; font-weight: bold; font-size: 28px; color: #383838; color: var(--theme-color); }
.total-price-view .payment-btn-wrap button { display: block; width: 100%; height: 50px; margin-bottom: 8px; border-radius: 8px; font-weight: bold; font-size: 16px; border-width: 2px; }
.total-price-view .payment-btn-wrap button:last-child { margin-bottom: 0; }
/* .total-price-view .payment-btn-wrap button.cart-btn { position: relative; height: 32px; margin-bottom: 16px; } */
.total-price-view .payment-btn-wrap button { position: relative; }
.total-price-view .payment-btn-wrap button::before { content: ''; position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; box-shadow: 0px 0px 1px 0px #38AF714F; box-shadow: 0px 18px 18px 0px #38AF711F; }
/* .total-price-view .payment-btn-wrap button.cart-btn::after { content: ''; position: absolute; bottom: -9px; width: 58px; height: 1px; background-color: #d8d8d8; left: 50%; transform: translateX(-50%); } */
.total-price-view .payment-btn-wrap button.btn-flex { display: flex; justify-content: center; align-items: center; }
.total-price-view .payment-btn-wrap button.btn-theme a { position: relative; z-index: 9; }
.total-price-view .payment-btn-wrap .sub-wrap { margin-bottom: 8px; }

/* 230530 QR 버튼 추가 { */
.total-price-view .payment-btn-wrap button:last-child img { width: 17px; height: 16px; object-fit: contain; margin-bottom: -2px; }
/* } 230530 QR 버튼 추가 */
.pod-location span { position: relative; margin-right: 4px; padding-left: 14px; font-weight: bold; font-size: 13px; color: rgba(0, 0, 0, 0.38); }
.pod-location span::before { display: inline-block; content: ''; position: absolute; top: 50%; left: 0px; margin-top: -5px; width: 6px; height: 9px; background: url("../images/ico_arrow_location_2x.png") no-repeat left center; background-size: 6px 9px; }
.pod-location .depth1 { padding-left: 0; color: rgba(0, 0, 0, 0.78); }
.pod-location .depth1::before { display: none; }
.quantity { position: relative; width: 88px; height: 29px; background-color: #FFF; border: 1px solid #D8D8D8; }
.quantity button { position: absolute; top: 0; width: 24px; height: 27px; }
.quantity .qtyMinus { left: 0; background: url("../images/ico_minus_2x.png") no-repeat center; background-size: 8px 2px; }
.quantity .qtyPlus { right: 0; background: url("../images/ico_plus_2x.png") no-repeat center; background-size: 8px 8px; }
.quantity .qtyNum { position: absolute; top: 0; left: 24px; width: 40px; height: 27px; line-height: 27px; border: none; border-radius: 0; font-weight: bold; color: rgba(0, 0, 0, 0.78); text-align: center; }

/* 브랜드 */
.brandList { margin-left: -26px; }
.brandList::after { display: block; content: ''; clear: both; }
.brandList li { float: left; width: 25%; padding: 0 0 24px 26px; }
.brand-box { height: 220px; border: 1px solid #D8D8D8; border-radius: 12px; overflow: hidden; transition: border-color .2s ease, box-shadow .2s ease; }
.brand-box:hover { border-color: #383838; border-color: var(--theme-color); box-shadow: 0px 18px 18px rgba(68, 68, 68, 0.06), 0px 0px 1px rgba(68, 68, 68, 0.31); }
.brand-box:hover .brand-logo img { -webkit-filter: grayscale(0%); filter: none; }
.brand-box a { display: block; width: 100%; height: 100%; padding: 24px; }
.brand-box .brand-logo { display: flex; justify-content: center; align-items: center; width: 100%; height: 120px; }
.brand-box .brand-logo img { max-width: 136px; max-height: 50px; -webkit-filter: grayscale(100%); filter: gray; transition: filter .2s ease; }
.brand-box .brand-logo span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 34px; overflow: hidden; text-overflow: ellipsis; font-weight: bold; font-size: 28px; text-align: center; color: rgba(0, 0, 0, 0.3); }
.brand-box .brand-name { margin-top: 8px; font-weight: bold; font-size: 14px; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* 장바구니 */
.cart-books-banner { position: relative; width: 100%; height: 138px; border: 1px solid #D8D8D8; border-radius: 8px; overflow: hidden; }
.cart-books-banner::after { display: block; content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #383838; background-color: var(--theme-color); opacity: 0.1; z-index: -1; }
.cart-books-banner .banner-box { position: relative; max-width: 448px; margin: 0 auto; }
.cart-books-banner .book-icon .box { position: absolute; top: -5px; left: 0; width: 118px; height: 101px; overflow: hidden; z-index: 2; }
.cart-books-banner .book-icon .box img { position: absolute; top: 100px; width: 118px; height: 101px; animation-name: book-img, book-img2, book-img3; animation-delay: 1s, 2s, 2.5s; animation-duration: 0.5s, 0.5s, 1s; animation-fill-mode: forwards; z-index: 1; }
.cart-books-banner .book-icon { position: absolute; top: 16px; left: 0; display: block; width: 118px; height: 101px; }
.cart-books-banner .book-icon .grp-box { width: 118px; height: 30px; position: absolute; bottom: -10px; left: 0; z-index: 1; }
.cart-books-banner .book-icon .grp1 { display: inline-block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 0; height: 0; background-color: #383838; background-color: var(--theme-color); border-radius: 50%; animation: book-graphic1 0.5s ease-in-out; animation-delay: 1s; animation-fill-mode: forwards; }
.cart-books-banner .book-icon .grp1::after { display: inline-block; content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 0; height: 0; background-color: rgba(0, 0, 0, 0.1); border-radius: 50%; animation: book-graphic2 0.5s ease-in-out; animation-delay: 1s; animation-fill-mode: forwards; }
.cart-books-banner .text { position: absolute; top: 45px; left: 0; animation: book-left 0.4s ease-in-out; animation-delay: 0.5s; animation-fill-mode: forwards; }
@keyframes book-left {
 from { left: 0; }
 to { left: 133px; }
 }
@keyframes book-img {
 0% { top: 100px; }
 100% { top: 90px; }
 }
@keyframes book-img2 {
 0% { top: 90px; }
 100% { top: 0px; }
 }
@keyframes book-img3 {
 0% { top: 0px; }
 25% { top: 5px; }
 50% { top: 0px; }
 75% { top: 2px; }
 100% { top: 0px; }
 }
@keyframes book-graphic1 {
 0% { width: 0; height: 0; }
 100% { width: 118px; height: 30px; }
 }
@keyframes book-graphic2 {
 0% { width: 0; height: 0; }
 100% { width: 52px; height: 14px; }
 }
.cart-books-banner .text p { font-weight: bold; font-size: 20px; line-height: 120%; }
.cart-books-banner .text p span { color: #383838; color: var(--theme-color); }
.cart-cont-wrap .btn-select-del { padding: 5px 7px; font-size: 13px; border-radius: 4px; }
.cart-item-box { display: flex; align-items: center; height: 152px; }
.cart-item-box .cprd-chk { flex-shrink: 0; position: relative; width: 52px; height: 120px; padding: 0 16px; }
.cart-item-box .cprd-chk .checkboxA { position: absolute; top: 0; left: 16px; width: 20px; height: 20px; }
.cart-item-box .cprd-img { position: relative; flex-shrink: 0; width: 85px; }
.cart-item-box .cprd-img img { max-width: 85px; box-shadow: 0px 7.5px 7.5px rgba(68, 68, 68, 0.1); border: 1px solid rgba(120, 120, 120, 0.1); border-radius: 4px; image-rendering: -webkit-optimize-contrast; /* Webkit (non-standard naming) */ }
.cart-item-box .cprd-info { flex-grow: 1; padding-left: 46px; }
.cart-item-box .cprd-info .item-name { margin-bottom: 6px; }
.cart-item-box .cprd-info .item-name.regular { color: rgba(0, 0, 0, 0.3); }
.cart-item-box .cprd-info .item-name .t-sel { position: relative; top: -1px; display: inline-flex; justify-content: center; align-items: center; width: 30px; height: 21px; margin-right: 8px; line-height: 21px; text-align: center; font-weight: bold; font-size: 12px; color: #383838; color: var(--theme-color); border: 1px solid #383838; border: 1px solid var(--theme-color); border-radius: 4px; }
.cart-item-box .cprd-info .item-name .r-sel { position: relative; top: -1px; display: inline-flex; justify-content: center; align-items: center; margin-right: 8px; line-height: 21px; text-align: center; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.58); border: 1px solid #d8d8d8; border-radius: 4px; padding: 0 4px; }
.cart-item-box .cprd-info .item-name .im-sel { color: #E22134; }
.cart-item-box .cprd-info .item-name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; max-height: 44px; line-height: 22px; overflow: hidden; text-overflow: ellipsis; font-weight: bold; font-size: 16px; }
.cart-item-box .cprd-info .brand-name { margin-bottom: 4px; line-height: 18px; font-weight: bold; font-size: 13px; color: rgba(0, 0, 0, 0.38); white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.cart-item-box .cprd-info .brand-name.regular_info { margin-bottom: 12px; }
.cart-item-box .cprd-info .status { position: relative; display: inline-block; margin-bottom: 12px; line-height: 17px; font-weight: bold; font-size: 12px; color: #383838; color: var(--theme-color); }
.cart-item-box .cprd-info .statusBox { position: relative; display: inline-block; margin-bottom: 12px; padding: 2px 4px; line-height: 17px; font-weight: bold; font-size: 12px; color: #383838; color: var(--theme-color); }
.cart-item-box .cprd-info .statusBox::after { display: inline-block; content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid #383838; border: 1px solid var(--theme-color); opacity: 0.6; border-radius: 4px; }
.cart-item-box .cprd-info .regular_payments_date { font-size: 13px; font-weight: 700; line-height: 1.4; letter-spacing: -1px; text-align: left; color: var(--theme-color); }
.cart-item-box .cprd-info .regular_payments_date.expire { color: #DC7B09; }
.cart-item-box .cprd-qty { flex-shrink: 0; width: 120px; }
.cart-item-box .cprd-qty .quantity { margin: 0 auto; }
.cart-item-box .cprd-price { flex-shrink: 0; width: 120px; text-align: right; }
.cart-item-box .cprd-price .price { font-weight: bold; font-size: 12px; color: #000; }
.cart-item-box .cprd-price.regular .price { color: rgba(0, 0, 0, 0.3); }
.cart-item-box .cprd-price.regular .price span { color: rgba(0, 0, 0, 0.3); }
.cart-item-box .cprd-price .price span { margin-right: 4px; font-weight: bold; font-size: 16px; color: rgba(0, 0, 0, 0.78); }
.cart-item-box .cprd-del { flex-shrink: 0; width: 120px; text-align: center; }
.cart-item-box .cprd-del .item-del { width: 24px; height: 24px; background: url("../images/ico_delete_2x.png") no-repeat 0 0; background-size: 24px 24px; }
.cart-item-box .cprd-qprice { flex-shrink: 0; width: 152px; text-align: center; }
.cart-item-box .cprd-qprice .status { font-size: 13px; font-weight: 700; line-height: 1.4px; letter-spacing: -1px; color: #00000094; margin-right: 10px; }
.cart-item-box .cprd-qprice .qty { position: relative; display: inline-block; margin-right: 18px; font-size: 13px; color: rgba(0, 0, 0, 0.58); }
.cart-item-box .cprd-qprice .qty::after { display: inline-block; content: ''; position: absolute; top: 9px; right: -13px; width: 3px; height: 3px; background-color: #C4C4C4; border-radius: 50%; }
.cart-item-box .cprd-qprice .price { display: inline-block; font-weight: bold; font-size: 12px; color: #000; }
.cart-item-box .cprd-qprice .price span { margin-right: 4px; font-weight: bold; font-size: 16px; color: rgba(0, 0, 0, 0.78); }
.cart-item-box .cprd-price .price { display: inline-block; }
.cart-total-price { position: relative; display: flex; justify-content: space-between; align-items: center; height: 60px; padding: 0 16px; }
.cart-total-price::after { display: block; content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 60px; background-color: #383838; background-color: var(--theme-color); opacity: 0.1; z-index: -1; }
.cart-total-price .text { font-weight: bold; }
.cart-total-price .total-price { font-weight: bold; font-size: 12px; color: #000; }
.cart-total-price .total-price span { margin-right: 4px; font-size: 20px; color: #383838; color: var(--theme-color); }
.cart-btn-wrap { padding: 20px 0; }
.cart-btn-wrap a { border-width: 2px; }
.ul-htable .cart-group-info li .col1 { flex-shrink: 0; width: 112px; padding-left: 16px; }
.ul-htable .cart-group-info li .col1 .checkboxA label span { margin-left: 16px; font-weight: normal; }
.ul-htable .cart-group-info li .col2 { flex-grow: 1; }
.ul-htable .cart-group-info li .col3 { flex-shrink: 0; width: 120px; }
.ul-htable .cart-group-info li .col4 { flex-shrink: 0; width: 120px; }
.ul-htable .cart-group-info li .col5 { flex-shrink: 0; width: 120px; }
.ul-htable .cart-group-info li span { text-align: center; }

/* 검색 */
.search-result-wrap { margin-bottom: 8px; padding: 16px 0 24px; border-top: 2px solid #383838; border-top: 2px solid var(--theme-color); border-bottom: 1px solid #dbdbdb; text-align: center; }
.search-result-wrap .result-text span { font-weight: bold; font-size: 20px; line-height: 120%; }
.search-result-wrap .result-text .word { margin-right: 4px; color: var(--theme-color); }
.search-result-wrap .num { margin-top: 16px; font-weight: bold; font-size: 13px; line-height: 140%; }
.search-result-wrap .num em { color: #383838; color: var(--theme-color); font-weight: bold; }

/* 주문/결제 */
.order-cont-wrap { position: relative; display: flex; justify-content: space-between; }
.order-cont-wrap .order-view-wrap { flex-shrink: 0; width: 815px; }
.order-cont-wrap .aside-payment-wrap { position: absolute; top: 76px; right: 0; flex-shrink: 0; width: 260px; background-color: #fff; }
.order-cont-wrap .aside-payment-wrap.fixed { position: fixed; top: 32px; }
.order-info-box { margin: 16px 0 64px; }
.order-info-box .box-title { display: flex; align-items: center; margin-bottom: 16px; }
.order-info-box .box-title h3 { margin-right: 10px; font-size: 16px; }
.order-delivery-info .ul-btable .tbody li.row4 { align-items: center; }
.order-delivery-info .memo { width: 548px; }
.order-product-info .ul-htable .thead li > span { text-align: center; }
.order-product-info .ul-htable .thead .col1 { flex-grow: 1; }
.order-product-info .ul-htable .thead .col2 { flex-shrink: 0; width: 120px; }
.order-product-info .ul-htable .thead .col3 { flex-shrink: 0; width: 120px; }
.order-product-info .ul-htable .thead .col4 { flex-shrink: 0; width: 120px; }
.order-product-info .ul-htable .thead .col5 { flex-shrink: 0; width: 120px; }
.order-product-info .ul-htable .thead .col6 { flex-shrink: 0; width: 120px; }
.order-product-info .ul-htable .tbody .col1 { flex-grow: 1; }
.order-product-info .ul-htable .tbody .col2 { flex-shrink: 0; width: 120px; text-align: center; }
.order-product-info .ul-htable .tbody .col3 { flex-shrink: 0; width: 120px; text-align: center; }
.order-product-info .ul-htable .tbody .col4 { flex-shrink: 0; width: 120px; text-align: center; }
.order-product-info .ul-htable .tbody .col5 { flex-shrink: 0; width: 120px; text-align: center; }
.order-product-info .ul-htable .tbody .col6 { flex-shrink: 0; width: 120px; text-align: center; }
.order-product-info .htable .price, .order-product-info .htable .qty { font-size: 12px; color: #000; }
.order-product-info .htable .price span, .order-product-info .htable .qty span { margin-right: 4px; font-size: 16px; color: rgba(0, 0, 0, 0.78); }
.order-product-info .ul-htable .price { font-size: 12px; font-weight: 700; }
.order-product-info .ul-htable .price span { font-size: 16px; font-weight: 700; margin-right: 4px; }
.total-price-view .pay-list { padding: 24px 0; border-bottom: 1px solid #eee; }
.total-price-view .pay-list li { display: flex; margin-bottom: 16px; }
.total-price-view .pay-list li:last-child { margin-bottom: 0; }
.total-price-view .pay-list li > span { flex-shrink: 0; width: 80px; }
.total-price-view .pay-list li > div { flex-grow: 1; text-align: right; }
.total-price-view .pay-list li > div.price { font-size: 12px; color: #000; }
.total-price-view .pay-list li > div.price span { margin-right: 4px; font-weight: bold; font-size: 16px; color: rgba(0, 0, 0, 0.78) }
.total-price-view .total-sum li { display: flex; align-items: center; }
.total-price-view .total-sum li > span { flex-shrink: 0; width: 80px; }
.total-price-view .total-sum li > div { flex-grow: 1; text-align: right; }
.total-price-view .total-sum li > div.price { font-size: 12px; color: #000; }
.total-price-view .total-sum li > div.price span { margin-right: 4px; font-weight: bold; font-size: 28px; color: #383838; color: var(--theme-color); }

.total-price-view .payment-btn-wrap button { position: relative; width: 100%; height: 50px; border-radius: 8px; }
.total-price-view .payment-btn-wrap button span { position: relative; display: block; font-weight: bold; font-size: 16px; }
/* .total-price-view .payment-btn-wrap button span::after { display: block; content: ''; position: absolute; left: 0; bottom: -25px; width: 100%; height: 20px; background-color: #383838; background-color: var(--theme-color); filter: blur(10px); opacity: 0.3; } */
.total-price-view .payment-btn-wrap button span em { font-weight: bold; }

/* 230530 QR 버튼 추가 { */
.total-price-view .payment-btn-wrap button { margin-bottom: 8px; }
.total-price-view .payment-btn-wrap button img { width: 17px; height: 16px; object-fit: contain; margin-bottom: -2px; }
.total-price-view .payment-btn-wrap button.btn-theme { font-weight: bold; font-size: 16px; color: rgba(0, 0, 0, 0.78) }

/* } 230530 QR 버튼 추가 */

/* 결과 페이지 */
.result-cont { padding: 64px 0; text-align: center; }
.result-cont .theme-icon svg circle { stroke: #383838; stroke: var(--theme-color); }
.result-cont .theme-icon svg path { stroke: #383838; stroke: var(--theme-color); }
.result-cont .text { margin: 32px 0 56px; }
.result-cont .text strong { display: block; margin-bottom: 10px; line-height: 29px; font-size: 24px; }
.result-cont .text p { line-height: 20px; color: rgba(0, 0, 0, 0.58); }
.result-cont .btn-wrap { display: flex; justify-content: center; }
.result-cont .btn-wrap .btn { margin: 0 4px; }

/* 주문목록 */
.order-sort { padding-left: 32px; }
.orderList { border-top: 2px solid #222; }
.orderList > li { padding: 32px 0; }
.orderList > li:last-child { padding-bottom: 0; }
.orderList > li .order-box { padding-bottom: 16px; }
.order-box .order-info { display: flex; justify-content: space-between; align-items: flex-end; height: 34px; }
.order-box .order-info .od-date { margin-right: 4px; font-weight: bold; font-size: 14px; }
.order-box .order-info .od-delivery { margin-right: 8px; padding: 0 2px; font-weight: bold; font-size: 12px; color: #383838; color: var(--theme-color); border: 2px solid #383838; border: 2px solid var(--theme-color); border-radius: 4px; }
.order-box .order-info .od-delivery.fail { color: #E22134; border: 2px solid #E22134; }
.order-box .order-info .fail_reason { font-size: 12px; font-weight: 400; line-height: 1.4; letter-spacing: -1px; text-align: left; color: #E22134; margin-right: 8px; }
.order-box .order-info .od-seq { margin-right: 16px; font-size: 13px; color: rgba(0, 0, 0, 0.58); }
.order-box .order-info .od-seq b { margin-left: 4px; }
.order-box .order-info .od-detail span { font-weight: bold; color: #383838; color: var(--theme-color); }
.order-box .order-info .od-detail svg { position: relative; top: 1px; }
.order-box .order-info .od-detail svg path { stroke: #383838; stroke: var(--theme-color); }
.order-box .order-info .right { display: flex; justify-content: flex-end; }
.order-box .order-info .right > * { margin-left: 4px; }
.order-box .order-info .right span { display: inline-block; width: 96px; height: 34px; line-height: 34px; text-align: center; font-weight: bold; font-size: 13px; letter-spacing: -1px; color: #383838; color: var(--theme-color); cursor: default; }
.order-box .order-info .right button { width: 96px; height: 34px; padding: 0; font-weight: bold; font-size: 13px; letter-spacing: -1px; border-radius: 4px; }
.order-item { margin-top: 8px; background-color: #fff; border: 1px solid #D8D8D8; border-radius: 8px; }
.order-item .order-item-top { display: flex; justify-content: space-between; align-items: center; height: 42px; padding: 0 24px; border-bottom: 1px solid #eee; }
.order-item .order-item-top .checkboxA label span { font-size: 13px; }
.order-item .order-item-top button { height: 26px; padding: 0 4px; font-weight: bold; font-size: 13px; border-radius: 4px; }
.order-item .cart-item-box { height: 168px; padding: 24px 0; border-bottom: 1px solid #eee; }
.order-item .cart-item-box:last-child { border-bottom: none; }
.order-item .cart-item-box .cprd-info { margin-bottom: auto; }
.order-item .cart-item-box .cprd-info>div { position: relative; }
.order-item .cart-item-box .cprd-info>div a { display: block; width: 100%; margin-bottom: 12px; }
.order-item .cart-item-box .cprd-info .item-name { margin-bottom: 10px; }
.order-item .cart-item-box .cprd-info strong.label { position: relative; display: inline-block; margin-bottom: 12px; font-size: 12px; font-weight: 700; line-height: 1.4; letter-spacing: -1px; text-align: left; color: var(--theme-color); padding: 2px 4px 3px; }
.order-item .cart-item-box .cprd-info strong.label::after { content: ''; position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid var(--theme-color); opacity: 0.6; border-radius: 4px; }
.order-item .cart-item-box .cprd-chk { width: 60px; padding: 0 16px 0 24px; }
.order-item .cart-item-box .cprd-chk .checkboxA { left: 24px; }
.order-item .cart-item-box .cprd-qprice { width: 217px; padding-right: 24px; text-align: right; }
.order-item .cart-item-box .cprd-qprice.refund .qprice { opacity: 0.3; }
.order-item .cart-item-box .cprd-qprice.refund .qprice .qty { text-decoration: line-through; }
.order-item .cart-item-box .cprd-qprice.refund .qprice .price span { text-decoration: line-through; }
.order-item .cart-item-box .cprd-qprice .ref-qprice { margin-top: 8px; }
.order-item .cart-item-box .cprd-qprice .ref-qprice b { margin-right: 6px; font-size: 13px; color: rgba(0, 0, 0, 0.58); }
.order-item .cart-item-box .cprd-qprice .ref-qprice .price span { color: #383838; color: var(--theme-color); }
.my-order-cont-wrap .order-info-box { margin-bottom: 32px; }


.regular-payment-card { position: relative; display: block; border-top: 2px solid #222; padding-top: 8px; }
.regular-payment-card .tit { position: relative; display: block; font-size: 16px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; margin-bottom: 16px; }
.regular-payment-card .card_info { position: relative; display: block; width: 100%; max-width: 450px; height: 200px; margin: 0 auto; padding: 32px 16px; border: 1px solid #ddd; box-shadow: 0px 0px 1px 0px #4444444F; box-shadow: 0px 18px 18px 0px #4444440F; border-radius: 16px; overflow: hidden; }
.regular-payment-card .card_info::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--theme-color); opacity: 0.07; }
.regular-payment-card .card_info .circle_01 { position: absolute; width: 275px; height: 275px; background-color: var(--theme-color); opacity: 0.27; border-radius: 50%; top: -187px; right: -36px; }
.regular-payment-card .card_info .circle_02 { position: absolute; width: 275px; height: 275px; opacity: 0.27; border-radius: 50%; background-color: var(--theme-color); opacity: 0.27; border-radius: 50%; right: -36px; top: 38px; }
.regular-payment-card .card_info .circle_03 { position: absolute; width: 53px; height: 53px; background-color: var(--theme-color); opacity: 0.27; border-radius: 50%; left: 189px; top: 104px; }
.regular-payment-card .card_info .card_name { position: relative; display: block; font-size: 18px; font-weight: 700; line-height: 1.2; letter-spacing: -1px; text-align: left; margin-bottom: 8px; }
.regular-payment-card .card_info .card_num { position: relative; display: block; font-size: 18px; font-weight: 700; line-height: 1.2; letter-spacing: -1px; text-align: left; margin-bottom: 4px; color: var(--theme-color); }
.regular-payment-card .card_info .card_reason { display: flex; justify-content: flex-start; align-items: center; font-size: 16px; font-weight: 400; line-height: 1.2; letter-spacing: -1px; text-align: left; color: #E22134; margin-bottom: 4px; }
.regular-payment-card .card_info .card_reason b { font-weight: 600; margin-right: 4px; }
.regular-payment-card .card_info .card_date { font-family: Noto Sans; font-size: 13px; font-weight: 400; line-height: 15.6px; letter-spacing: -1px; text-align: left; color: #00000094; }

/* modal */
.modal_wrap { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; text-align: center; background-color: rgba(0, 0, 0, 0.3); z-index: 99999; }
.modal_wrap.show { display: block; }
.modal_wrap .modal_content { position: relative; display: inline-block; width: 93%; max-width: 684px; max-height: 90%; padding: 48px; background: #fff; border: 1px solid #eee; box-sizing: border-box; vertical-align: middle; box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.07); border-radius: 12px; text-align: left; overflow: auto; }
.modal_wrap::after { display: inline-block; content: ''; width: 0; height: 100%; vertical-align: middle; }
.modal_header { display: flex; -webkit-justify-content: space-between; justify-content: space-between; align-items: center; padding-bottom: 16px; border-bottom: 2px solid #222; }
.modal_header h2 { font-size: 24px; line-height: 32px; }
.modal_header .modal_close { width: 18px; height: 18px; background: url("../images/ico_close_2x.png") no-repeat center; background-size: 18px 18px; font-size: 0; text-indent: -999px; cursor: pointer; }
.modal_body { padding: 16px 0; }
.modal_footer { padding-top: 32px; text-align: center; }
.modal_footer button { height: 38px; padding: 0 32px; }
.modal_wrap .modal_content::-webkit-scrollbar { width: 10px; height: 10px; }
.modal_wrap .modal_content::-webkit-scrollbar-thumb { background-color: #d1d1d1; border-radius: 10px; background-clip: padding-box; border: 3px solid transparent; }
.modal_wrap .modal_content::-webkit-scrollbar-corner { display: none; }

.modal_card .modal_content { max-width: 400px; padding: 32px 0px; }
.modal_card .modal_body { display: flex; justify-content: center; flex-direction: column; align-items: center; }
.modal_card .modal_body svg { margin-bottom: 16px; }
.modal_card .modal_body b { position: relative; display: block; font-size: 24px; font-weight: 700; line-height: 1.2; letter-spacing: -1px; text-align: center; color: rgba(0, 0, 0, 0.78); margin-bottom: 10px; }
.modal_card .modal_body p { position: relative; display: block; font-size: 14px; font-weight: 400; line-height: 1.4; letter-spacing: -1px; text-align: center; color: #00000094; margin-bottom: 32px; }
.modal_card .modal_body button { padding: 16px 8px; }

.modal_refund .modal_body { padding: 0; }
.modal_refund .modal_body .notice { position: relative; display: block; padding-top: 0; }
.modal_refund .modal_body .notice p { display: flex; justify-content: flex-start; font-size: 14px; font-weight: 400; line-height: 1.4; letter-spacing: -1px; text-align: left; }
.modal_refund .modal_body .notice p::before { content: ''; position: relative; display: block; min-width: 3px; height: 3px; background-color: rgba(0, 0, 0, 0.58); border-radius: 50%; margin-right: 6px; top: 7px; }
.modal_refund .modal_body .notice p a { font-weight: 700; color: rgba(0, 0, 0, 0.58); }

/* modal 교육기관 선택 */
.center-select .text { margin-bottom: 16px; }
.center-select .text strong { display: block; margin-bottom: 8px; font-weight: bold; font-size: 18px; }
.center-select .children-list { margin-bottom: 16px; }
.center-select .children-list > li { display: flex; justify-content: space-between; align-items: center; height: 58px; border-bottom: 1px solid #eee; }
.center-select .children-list > li p { font-weight: bold; }
.center-select .children-list > li p b { margin-right: 8px; }
.center-select .children-list > li p span { color: rgba(0, 0, 0, 0.38); }
.center-select .children-list > li button { width: 54px; height: 35px; padding: 0; font-weight: bold; font-size: 12px; color: rgba(0, 0, 0, 0.78) !important; border-radius: 4px; }

/* modal 교육기관 이동 */
.center-move .text { margin-top: 32px; text-align: center; }
.center-move .text strong { display: block; margin-bottom: 8px; font-size: 18px; }
.center-move .text p { font-size: 16px; color: rgba(0, 0, 0, 0.58); }
.center-move .btn-wrap { margin: 48px 0 26px; }
.center-move .btn-wrap button { border-width: 2px; }

/* modal 환불 수량 선택 */
.modal-refund-wrap .modal_header { border-bottom: none; }
.modal-refund-wrap .items-refund strong { display: block; margin-bottom: 16px; font-size: 16px; }
.modal-refund-wrap .items-refund table .qty { font-size: 12px; font-weight: bold; }
.modal-refund-wrap .items-refund table input { width: 58px; border-radius: 8px; text-align: center; font-size: 12px; }
.modal-refund-wrap .items-refund button { display: block; margin: 26px auto 0; text-align: center; }

/* pdf 영수증 modal */
.pdf { background-color: #fff; display: table; width: 100%; height: 100%; padding: 0; width: 1200px }
.pdf_contents { display: table-cell; width: 100%; height: 100%; }
.pdf_inner { position: relative; padding: 24px; }
.pdf_inner .box { border: 1px solid #000; box-sizing: border-box; }
.uniq_number { display: flex; justify-content: right; align-items: center; height: 32px; margin-bottom: 8px; padding: 0 16px; font-size: 11px; line-height: 160%; background: #F5F5F5; border-bottom: 1px solid #ddd; }
.pdf_specification .uniq_number { font-size: 13px; }
.pdf_cont { padding: 32px; }
.pdf_cont .title { margin-bottom: 16px; text-align: center; font-size: 20px; line-height: 120%; }
.pdf_cont .s_title { margin-bottom: 10px; font-size: 14px; line-height: 120%; }
.specification_info { margin-bottom: 16px; }
.specification_info dl { display: flex; justify-content: right; margin-bottom: 8px; }
.specification_info dl:last-child { margin-bottom: 0; }
.specification_info dl dt { font-weight: bold; font-size: 14px; line-height: 120%; }
.specification_info dl dd { padding-left: 10px; font-size: 14px; line-height: 120%; }
.pdf_receipt { position: relative; display: flex; justify-content: flex-start; height: 100%; }
.pdf_receipt > div { width: 50%; max-width: 640px }
.pdf_receipt > div:last-child::after { display: block; content: ''; position: absolute; top: 0; left: 0; width: 1px; height: 100%; border-left: 1px dashed #000; }
.od_info_wrap { margin-bottom: 48px; border-top: 2px solid #000; }
.od_info_wrap:last-child { margin-bottom: 0; }
.od_user_info { display: flex; justify-content: space-around; }
.od_user_info dl { display: flex; align-items: center; flex-basis: 33.3%; }
.od_user_info dl dt { flex-basis: 50%; padding: 16px 0 16px 16px; background: #F5F5F5; font-weight: bold; }
.od_user_info dl dd { flex-basis: 50%; padding: 16px 0 16px 16px; }
.od_table tr { height: 49px; text-align: center; border-top: 1px solid #dbdbdb; }
.od_table .od_table_btm { font-weight: bold; border-top: 1px solid #222; border-bottom: 1px solid #222; }
.od_center { margin-top: 16px; text-align: center; }
.od_center .date { font-size: 14px; }
.od_center .center_name { font-weight: bold; font-size: 16px; }

/*spinner*/
#loading-spinner { display: inline-block; width: 33px; height: 33px; border: 4px solid rgba(255,255,255,.3); border-radius: 50%; border-top-color: #1e5df8; animation: spinA 1s ease-in-out infinite; -webkit-animation: spinA 1s ease-in-out infinite; }
@keyframes spinA { to { -webkit-transform: rotate(360deg); }
 }
@-webkit-keyframes spinA { to { -webkit-transform: rotate(360deg); }
 }
.complete_text { margin-top: 20px; text-align: center; }
.complete_text i { display: block; margin: 0 auto; }
.complete_text strong { display: block; margin: 30px 0 14px; font-weight: bold; font-size: 20px; line-height: 140%; color: rgba(0, 0, 0, 0.78); }
.complete_text span { font-size: 13px; }

.notice { padding-top: 32px; display: flex; }
.notice .tit { display: flex; justify-content: flex-start; align-items: flex-start; width: 280px; border-top: 1px solid #45546B; padding: 24px; }
.notice .tit span { font-weight: 700; margin-left: 6px; }
.notice .list { width: calc(100% - 280px); border-top: 1px solid #D8D8D8; padding: 16px 32px; }
.notice .list li { display: flex; justify-content: flex-start; align-items: flex-start; margin-bottom: 8px; }
.notice .list li.caution { color: #E22134; }
.notice .list li::before { content: ''; min-width: 3px; height: 3px; background-color: var(--theme-color); margin-top: 8px; margin-right: 6px; }

.refund_apply { padding-top: 16px; position: relative; display: block; width: 100%; max-width: 589px; margin: 0 auto; margin-bottom: 32px; }
.refund_apply .form { position: relative; display: block; margin-bottom: 16px; }
.refund_apply .form span { position: relative; display: block; font-size: 12px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; margin-bottom: 4px; color: #00000094; }
.refund_apply .form input, .refund_apply .form select { position: relative; display: block; border: 1px solid #d8d8d8; border-radius: 8px; font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; height: 42px; width: 100%; color: #000000C7; padding-left: 10px; }
.refund_apply .form select { background: url('../images/refund_select_2x.png') no-repeat center right 4px / 24px 24px; }
.refund_apply .form input:read-only { background-color: #F7F7F7; border: 1px solid #f7f7f7; font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; color: #00000061; padding-left: 10px; }
.refund_apply .form select:disabled { background:none; background-color: #F7F7F7; border: 1px solid #f7f7f7; font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; color: #00000061; padding-left: 10px; opacity: 1; }
.refund_apply .form input::placeholder { font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; color: rgba(0, 0, 0, 0.30); }
.refund_apply .info { }
.refund_apply .info span { position: relative; display: block; font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; margin-bottom: 8px; text-align: left; }
.refund_apply .info .context { background: #F5F5F5; border: 1px solid #ddd; padding: 16px; border-radius: 8px; margin-bottom: 16px; }
.refund_apply .info .context p { font-size: 13px; font-weight: 400; line-height: 1.6; letter-spacing: -1px; text-align: left; color: #000000C7; white-space: pre-line; }

.refund_apply .none { display: none; }
.refund_apply .checkboxA { margin-bottom: 16px; }
.refund_apply .checkboxA input + label::before { margin-right: 4px; }

.payment_popup { position: relative; display: block; width: 100%; margin: 0 auto; background-color: #F3F3F3; padding: 16px; }

.payment_popup .top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 32px; }
.payment_popup .top span { font-size: 14px; font-weight: 800; line-height: 1.4; letter-spacing: -1px; text-align: center; color: #000; }
.payment_popup .top button.close { background: #D4D4D4; padding: 4px 8px; font-size: 12px; font-weight: 800; line-height: 1.6; letter-spacing: -1px; border-radius: 100px; }

.payment_popup .con span.text { position: relative; display: flex; justify-content: center; align-items: center; font-size: 24px; font-weight: 400; line-height: 20px; margin-bottom: 8px; letter-spacing: -1px; text-align: left; }
.payment_popup .con span.text strong { position: relative; z-index: 9; }
.payment_popup .con span.text b { position: relative; font-weight: 800; z-index: 9; }
.payment_popup .con span.text p.highlight { position: relative; display: block; }
.payment_popup .con span.text p.highlight::before { content: ''; position: absolute; display: inline-block; top: 10px; height: 12px; background-color: var(--theme-color); opacity: 0.50; width: 110%; left: 50%; transform: translateX(-50%); }
.payment_popup .con span.text.mb { margin-bottom: 32px; }

.payment_popup .box_wrap { margin-bottom: 16px; }
.payment_popup .box_wrap .tit { position: relative; display: block; font-size: 16px; font-weight: 800; line-height: 1.2; letter-spacing: -1px; text-align: left; margin-bottom: 8px; }
.payment_popup .box_wrap .box { position: relative; display: block; background-color: #fff; box-shadow: 0px 4px 8px 0px #00000014; border-radius: 8px; padding: 16px; }
.payment_popup .box_wrap .box .goods { position: relative; display: block; font-size: 16px; font-weight: 800; line-height: 1.2; letter-spacing: -1px; text-align: left; padding-bottom: 16px; margin-bottom: 16px; border-bottom: 1px solid #d8d8d8; }
.payment_popup .box_wrap .box .info { }
.payment_popup .box_wrap .box .info li { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.payment_popup .box_wrap .box .info li:last-child { margin-bottom: 0; }
.payment_popup .box_wrap .box .info li span { font-size: 15px; font-weight: 400; line-height: 1.3; letter-spacing: -1px; text-align: left; }
.payment_popup .box_wrap .box .info li p { font-size: 16px; font-weight: 800; line-height: 1.2; letter-spacing: -1px; text-align: left; }

.payment_popup .check_wrap { position: relative; display: block; margin-bottom: 16px; }
.payment_popup .check_wrap .checkboxA.all { margin-bottom: 16px; }
.payment_popup .check_wrap .checkbox_wrap { }
.payment_popup .check_wrap .checkbox_wrap .checkboxA { position: relative; display: flex; justify-content: flex-start; align-items: center; margin-left: 24px; margin-bottom: 6px; }
.payment_popup .check_wrap .checkbox_wrap .checkboxA label { align-items: flex-start; }
.payment_popup .check_wrap .checkboxA label::before { min-width: 20px; margin-right: 8px; }
.payment_popup .check_wrap .checkbox_wrap .checkboxA label b { display: inline; margin-right: 4px; margin-left: 0; white-space: nowrap; font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; }
.payment_popup .check_wrap .checkbox_wrap .checkboxA label span { display: inline; margin-right: 4px; margin-left: 0; font-size: 14px; font-weight: 400; line-height: 1.6; letter-spacing: -1px; text-align: left; }
.payment_popup .check_wrap .checkbox_wrap .checkboxA label a { display: inline; margin-left: 4px; font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: -1px; text-align: left; color: #00000094; }

.payment_popup .notice { position: relative; display: block; background-color: #fff; border: 1px solid #ddd; border-radius: 8px; padding: 16px; margin-bottom: 16px; }
.payment_popup .btn { width: 100%; padding: 16px 0; font-size: 16px; }

.modal_body .dot_anima { position: relative; display: flex; justify-content: center; align-items: center; margin: 0 auto; width: 80px; height: 80px; border-radius: 50%; border: 1px solid var(--theme-color); margin-bottom: 16px; }
.dot_anima { display: flex; justify-content: space-between; align-items: center; margin-left: 5px; }
.dot_anima div { width: 8px; height: 8px; border-radius: 50%; margin: 0 3px; background-color: var(--theme-color); animation-name: dotani; animation-duration: 1.5s; animation-iteration-count: infinite; animation-fill-mode: forwards; }
.dot_anima div:nth-child(2) { animation-delay: 0.5s; }
.dot_anima div:nth-child(3) { animation-delay: 1s; }

.loading {position: fixed; top: 0; left: 0; width: 100%; height: 100%; display: none; justify-content: center; align-items: center; background-color: rgba(0, 0, 0, 0.12);}
.loading .btn-wrap { position: relative; }

@keyframes dotani { 33% { opacity: 1; }
 66% { opacity: 0.5; }
 100% { opacity: 0.2; }
 }


@media (max-width: 480px) {
.rdrMonth {
    width: auto !important;  /* 모바일에서는 화면에 꽉 차도록 설정 */
}