@charset "utf-8";
@import url('reset.css');
@import url('media.css');

/* common ----------------------------- */
:root {
    --bg_color: #141518;
    --sub_color: #32D2FF;
    --main_color: #FF005C;
    --no_mg_color: #FF3131;
}

.main_pink {
    color: var(--main_color);
}

.main_pink p {
    background-color: rgba(255, 0, 92, 0.1);
}

.main_blue {
    color: var(--sub_color);
}

.main_blue p {
    background-color: rgba(50, 210, 255, 0.1);
}

.main_txt {
    color: #FFF;
}

.sub_txt {
    color: #F3F3F3;
}

.txt_center {
    text-align: center;
}

.w100 {
    width: 100% !important;
}

.flex {
    display: flex;
}

.info_box,
.agree_box,
.helpId_certify .certify_box {
    min-height: calc(var(--vh, 1vh) * 70);
}

/* common /--- header ----------------------------- */
header {
    width: 100%;
    height: 8.6rem;
    max-width: 691px;
    min-height: 52px;
    display: flex;
    position: fixed;
    margin: 0 auto;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    background-color: var(--bg_color);
    justify-content: space-between;
    transition: background-color 0.3s ease;
    align-items: center;
}

header h1 {
    color: #fff;
    font-size: clamp(20px, 3rem, 30px);
    font-weight: bold;
    white-space: nowrap;
    transform: none;
}

header .main_logo {
    color: #ABABB1;
    font-size: clamp(22px, 3.2rem, 32px);
    font-weight: bold;
    margin-left: 22px;
    letter-spacing: 0.02rem;
}

header .right_icons {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-right: 2.4rem;
}

header .right_icons a:nth-of-type(1) {
    color: #ABABB1;
    font-size: clamp(14px, 2rem, 20px);
    border: 0.2rem solid #646472;
    border-radius: 0.6rem;
    padding: 0.6rem 1.3rem;
    margin-right: 1.5rem;
}

header .right_icons a:nth-of-type(2) {
    width: 4rem;
    min-width: 28px;
}

header .right_icons a:nth-of-type(3) {
    width: 4rem;
    min-width: 28px;
}

/* common /--- back_icon,setting_icon,notice ----------------------------- */
.back_icon,
.setting_icon,
.notice {
    z-index: 9;
    width: clamp(24px, 7rem, 70px);
}

.back_icon {
    text-align: end;
}

.back_icon img,
.setting_icon img {
    width: 3.6rem;
    min-width: 26px;
}

.notice a {
    font-size: clamp(14px, 2.6rem, 24px);
    color: #FFF;
}

/* common /--- section ----------------------------- */
section {
    max-width: 691px;
    margin: 0 auto;
}

.mypage_box,
.shopping_box,
.promotion_box,
.stamp_box {
    padding-top: 11.6rem;
}

/* common /--- footer ----------------------------- */
footer {
    text-align: center;
    margin: 0 auto;
    position: relative;
    max-width: 691px;
    font-size: clamp(8px, 1.5rem, 15px);
    color: #646472;
    padding: 3rem 0 15rem;
}

footer>div {
    justify-content: center;
}

footer p {
    margin-bottom: 1rem;
    font-weight: 400;
}

footer p:last-of-type {
    font-size: clamp(7px, 1.3rem, 13px);
}

/* common /--- info_box ----------------------------- */
.info_box .main_txt {
    font-size: 4rem;
    font-weight: bold;
}

.info_box .sub_txt {
    font-size: clamp(14px, 2.4rem, 24px);
    padding: 2.5rem 0;
    line-height: 150%;
}

.info_box>li:last-of-type {
    padding-bottom: 5%;
}

/* common /--- input ----------------------------- */
input {
    font-size: 2.6rem;
    min-height: 50px;
    outline: none;
    border: none;
    border-radius: 0.4rem;
    color: #FFF;
    background-color: #292D35;
    padding: 2.55rem;
    margin-top: 2rem;
}

input[type="password"]:last-of-type {
    margin-top: 4.1%;
}

input::placeholder {
    color: #646472;
}

/* common /--- checkbox1 ----------------------------- */
input[type="checkbox"] {
    display: none;
}

/* 보기 */
.checkbox1>a {
    font-size: clamp(12px, 1.8rem, 18px);
    color: #646472;
    white-space: nowrap;
    border-bottom: 1px solid #646472;
    margin-right: 3rem;
}

.checkbox1 label>span {
    margin-right: 0.6rem;
}

.checkbox1 input[type="checkbox"]+label {
    display: flex;
    align-items: center;
    padding: 4.8%;
    border-radius: 0.6rem;
    transition: background 0.3s ease;
    cursor: pointer;
    width: 100%;
}

.checkbox1 input[type="checkbox"]+label::before {
    content: "";
    width: 3.1rem;
    height: 3.1rem;
    border: 0.2rem solid #646472;
    border-radius: 0.6rem;
    margin-right: 2.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.checkbox1 input[type="checkbox"]:checked+label::before {
    border-color: var(--main_color);
    background: var(--main_color) url(/img/btn_etc_check_3.png) no-repeat center / 70%;
    font-size: 2.6rem;
    text-align: center;
}

/* common /--- checkbox2 ----------------------------- */
.checkbox2 {
    width: calc(100% - 5.2rem);
    margin: 0 auto;
}

.checkbox2 input[type="checkbox"]+label {
    display: flex;
    align-items: center;
    padding: 2rem 0 5rem;
    border-radius: 0.6rem;
    font-size: 2.4rem;
    cursor: pointer;
    width: 100%;
    color: #ABABB1;
}

.checkbox2 input[type="checkbox"]+label::before {
    content: "";
    width: 1.8rem;
    height: 1.8rem;
    border: 1px solid #ABABB1;
    background: url(/img/btn_etc_check_1.png) no-repeat center / 60%;
    border-radius: 0.2rem;
    margin-right: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.checkbox2 input[type="checkbox"]:checked+label::before {
    border-color: var(--main_color);
    background: var(--main_color) url(/img/btn_etc_check_2.png) no-repeat center / 70%;
    font-size: 1.8rem;
    text-align: center;
}

/* common /--- OnOff ----------------------------- */
.onoff input[type="checkbox"]+label::before {
    content: "";
    width: 10rem;
    height: 4.4rem;
    display: block;
    background: url(/img/alarm_off.png) no-repeat center / 100%;
    transition: background 0.1s;
}

.onoff input[type="checkbox"]:checked+label::before {
    background: url(/img/alarm_on.png) no-repeat center / 100%;
}

/* common /--- btn_box ----------------------------- */
.btn_box {
    min-height: calc(var(--vh, 1vh) * 30);
    position: relative;
    text-align: center;
}

.main_btn.active {
    background-color: var(--main_color);
    color: #FFF;
    font-weight: bold;
    cursor: pointer;
}

.main_btn {
    color: #646472;
    background: #292D35;
    margin-top: 10rem;
    width: calc(100% - 5.2rem);
    min-height: 50px;
    padding: 2.4rem 0;
    letter-spacing: 0.02rem;
    border-radius: 0.8rem;
    font-size: 3rem;
    cursor: not-allowed;
    transition: background 0.3s ease, color 0.3s ease;
}

.sub_btn {
    font-weight: bold;
    color: var(--main_color);
    background-color: #fff;
    margin-top: 1.4rem;
    width: calc(100% - 5.2rem);
    min-height: 50px;
    padding: 2.4rem 0;
    letter-spacing: 0.02rem;
    border-radius: 0.8rem;
    font-size: 3rem;
}

/* sub_tp_btn ----------------------------- */
.sub_tp_btn {
    color: #ABABB1;
}

.sub_tp_btn button {
    width: 100%;
    color: #ABABB1;
    font-size: clamp(14px, 2.4rem, 24px);
    border: 1px solid #646472;
    border-radius: 0.6rem;
    padding: 2.2rem 0;
    min-height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.sub_tp_btn button img {
    width: 3rem;
}

/* fixed_btn ----------------------------- */
.fixed_btn {
    z-index: 9999;
    bottom: 0;
    width: 100%;
    margin: 0 auto;
    position: fixed;
    max-width: 691px;
    padding: 2.6rem;
    border-radius: 2.5rem 2.5rem 0 0;
    background-color: var(--bg_color);
    box-shadow: 0 -10px 8.6px rgba(0, 0, 0, 0.3);
    text-align: center;
}

.fixed_btn button {
    font-size: 3rem;
    font-weight: bold;
    padding: 2.4rem 0;
    width: 100%;
    min-height: 50px;
    background-color: var(--main_color);
    color: #fff;
    border-radius: 0.8rem;
    letter-spacing: 0.02rem;
}

/* fixed_gr_btn ----------------------------- */
.fixed_gr_btn {
    width: 100%;
    max-width: 691px;
    position: fixed;
    text-align: center;
    bottom: 0;
    background: linear-gradient(to bottom, transparent, var(--bg_color) 40%);
}

.fixed_gr_btn #eventBtn {
    width: calc(100% - 5.2rem);
    min-height: 50px;
    font-weight: bold;
    color: #fff;
    padding: 2.4rem 0;
    margin-bottom: 5rem;
    letter-spacing: 0.02rem;
    border-radius: 0.8rem;
    font-size: 3rem;
    cursor: pointer;
    background-color: var(--main_color);
}

.fixed_gr_btn .balloon {
    width: 60%;
    position: relative;
    left: 50%;
    margin: 1.4rem 0 1.7rem;
    transform: translateX(-50%);
}

/* common /--- badge_icon ----------------------------- */
.badge_icon {
    padding: 30% 0 12%;
}

.badge_icon img {
    width: 25%;
}

/* common /--- certify_text ----------------------------- */
.certify_text {
    display: none;
    font-size: clamp(14px, 2.4rem, 24px);
    color: var(--no_mg_color);
    padding-top: 1rem;
    position: absolute;
    text-align: left;
    font-weight: 200;
}

.certify_text.active {
    display: block;
}

.certify_text.on {
    color: var(--sub_color);
}

/* common /--- modal ----------------------------- */
.modal {
    display: none;
    position: absolute;
    min-width: 49.2rem;
    font-size: clamp(14px, 2.4rem, 24px);
    color: #ABABB1;
    z-index: 99;
    background-color: #292D35;
    padding: 6.6rem 4rem 4.4rem 4.6rem;
    letter-spacing: -0.04rem;
    border-radius: 1.2rem;
    font-weight: 400;
    left: 0;
    top: 5.4rem;
}

.modal.show {
    display: block;
}

.modal_close {
    list-style: none;
    width: 4rem;
    position: absolute;
    top: 0;
    right: 0;
    margin: 2rem 2.7rem;
}

.modal li {
    white-space: normal;
    line-height: 150%;
    letter-spacing: -0.04rem;
}

.modal li:not(li:first-of-type)::before {
    content: "•";
    font-size: clamp(14px, 2.2rem, 22px);
    position: absolute;
    left: 2.5rem;
}

/* .modal_confirm & modal_alert  */
.dimLayer {
    display: block;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    position: fixed;
    left: 0;
    top: 0px;
    margin: 0;
    padding: 0;
    z-index: 9998;
}

.modal_confirm,
.modal_alert {
    width: 80%;
    max-width: 541px;
    border-radius: 1.6rem;
    padding: 2rem;
    background: #292D35;
    z-index: 9999;
    display: none;
    opacity: 0;
    transition: 0.3s;
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.modal_confirm div:last-of-type {
    display: flex;
    justify-content: space-between;
}

.modal_confirm button,
.modal_alert button {
    border-radius: 0.8rem;
    font-size: 2.6rem;
    letter-spacing: 0.02rem;
    padding: 2.1rem 0;
}

.modal_confirm button {
    width: calc(50% - 1.5rem);
}

.modal_alert button {
    width: 100%;
}

.modal_msg {
    color: #FFFFFF;
    font-size: 3rem;
    line-height: 130%;
    letter-spacing: 0.02rem;
    padding: 4.8rem 0 5.4rem;
}

.modal_no {
    color: #646472;
}

.modal_ok {
    color: #FFFFFF;
    background: var(--main_color);
}

/* common /--- 약관/terms_box ----------------------------- */
.terms_box {
    padding: 10rem 2.6rem 0;
    color: #ABABB1;
}

.terms_box p {
    font-size: clamp(18px, 2.6rem, 26px);
    font-weight: bold;
    line-height: 153%;
    letter-spacing: -0.06rem;
    margin: 5rem 0 1rem;
}

.terms_box ul li {
    font-size: clamp(14px, 2.2rem, 22px);
    font-weight: 200;
    line-height: 153%;
    letter-spacing: -0.04rem;
}

.terms_box.dark ul li {
    color: #646472;
}

/* 숫자 리스트 */
.terms_box ul.decimal {
    counter-reset: list-counter;
}

.terms_box ul.decimal>li {
    counter-increment: list-counter;
}

.terms_box ul.disc li,
.terms_box ul.decimal li {
    position: relative;
    padding-left: 2.6rem;
}

.terms_box ul.decimal>li:not(:has(> ul.disc))::before {
    content: counter(list-counter) ".";
    letter-spacing: 0.2rem;
    position: absolute;
    left: 0;
}

.terms_box ul.decimal>li:has(> ul.disc) {
    counter-increment: none;
    margin: 0;
}

/* 점 리스트 */
.terms_box ul.disc li:not(:has(> ul.disc))::before {
    content: "•";
    position: absolute;
    left: 1rem;
}

/* 부칙 */
.terms_box>.terms_plus {
    border-top: 1px solid #646472;
    margin: 5rem 0 15.6rem;
}

.terms_box>.terms_plus p {
    padding: 2.8rem 0 1rem;
    margin: 0;
}

/* common /--- table ----------------------------- */
table {
    width: 100%;
    font-size: 2.2rem;
    line-height: 153%;
    letter-spacing: -0.08rem;
    border-collapse: collapse;
    margin-top: 2rem;
}

thead {
    font-weight: bold;
    color: #ABABB1;
    background-color: #292D35;
}

tbody {
    color: #646472;
}

th,
td {
    border: 0.2rem solid #646472;
    padding: 0.7rem;
}

/* index&brand.html /-------------------------- */
.border_txt>p {
    display: inline-block;
    position: relative;
    border: 2px solid;
    border-radius: 104px;
    padding: 5px 16px;
    font-size: 2.8rem;
    letter-spacing: 0.02rem;
}

.border_txt>p::before {
    content: '';
    border: 1px solid;
    border-radius: 104px;
    position: absolute;
    margin: 4px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

/* index&brand.html /---lucky_box----------------------- */
.lucky_box>ul {
    background: no-repeat bottom right url(/img/dot_bg.png);
    background-size: 34%;
}

.lucky_box .img_box img {
    position: relative;
}

.lucky_box .img_box div:nth-of-type(1) img {
    top: 5%;
    left: 15%;
}

.lucky_box .img_box div:nth-of-type(2) img {
    top: 22%;
    left: 28%;
}

.lucky_box .border_txt {
    margin-bottom: 2.6%;
}

.lucky_box .txt_img {
    flex-direction: column;
    align-items: center;
}

.lucky_box .txt_img img:nth-of-type(1) {
    width: 60%;
}

.lucky_box .txt_img img:nth-of-type(2) {
    width: 52%;
}

.lucky_box .txt_box P {
    font-size: 4.4rem;
    font-weight: bold;
    line-height: 117.2%;
    padding: 6.3% 0 7%;
    color: transparent;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-image: linear-gradient(to right, var(--main_color), var(--sub_color));
    letter-spacing: -0.02rem;
}

.lucky_box .bg_box {
    position: relative;
}

.lucky_box .bg_box img {
    position: absolute;
    width: 90%;
    bottom: -30px;
    left: 3%;
}

/* index&brand.html /---brand_box----------------------- */
.brand_box>ul {
    background:
        url(/img/dot_bg2.png) 100% 5% / 100% no-repeat,
        url(/img/bg1.png) 100% 95% / 100% no-repeat;
}

.brand_box>ul>.main_board {
    overflow: hidden;
    position: relative;
}

.brand_box>ul>.main_board>.board_counter {
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
    background: rgba(0, 0, 0, 0.25);
    color: #F3F3F3;
    padding: 0.5rem 1.5rem;
    border-radius: 4.1rem;
    font-size: clamp(12px, 2rem, 20px);
}

.brand_box>ul>.main_board>.board_wrapper {
    display: flex;
}

.brand_box>ul>.main_board>.board_wrapper>.board_slide {
    position: relative;
    flex: 0 0 100%;
}

.brand_box>ul>.main_board>.board_wrapper>.board_slide>p {
    position: absolute;
    color: #FFF;
    text-shadow: 0 0 2rem #00FFFF;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    font-weight: bold;
    /* IOS compositing bug */
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.brand_box>ul>.main_board>.board_wrapper>.board_slide>p:first-of-type {
    font-size: 3.4rem;
    top: 16%;
}

.brand_box>ul>.main_board>.board_wrapper>.board_slide>p:nth-of-type(2) {
    font-size: 7.6rem;
    top: 27.4%;
    letter-spacing: 0.15rem;
}

.brand_box>ul>.main_board>.board_wrapper>.board_slide>p:last-of-type {
    font-size: 5.6rem;
    top: 57%;
    line-height: 137%;
    padding-left: 11rem;
}

.brand_box>ul>.main_board>.board_wrapper>.board_slide>p:last-of-type::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 11rem;
    height: 11rem;
    background: url(/img/board_biz_icon.png) no-repeat center / contain;
    /* IOS compositing bug */
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.brand_box>ul>.border_txt {
    width: 45.1rem;
    margin: 1.5rem auto 0;
}

.brand_box .txt_bg {
    padding: 7.3% 0 1.5%;
    text-align: center;
    background: url(/img/txt_bg.png) no-repeat bottom left / 70%;
}

.brand_box .txt_bg p {
    font-size: 6rem;
    line-height: 118.4%;
}

.brand_box .img_box img {
    width: 17%;
    margin-top: 5%;
}

/* index&brand.html /---brand_box > list_box----------------------- */
.brand_box .list_box {
    margin: 7% 3.5% 0;
    padding: 0 4%;
    border: 1px solid #646472;
    border-radius: 20px;
    background-color: #292D35;
}

.brand_box .list_box .border_txt {
    margin-bottom: 7%;
}

.brand_box .list_box>li:first-of-type {
    padding: 9.3% 0 3.5%;
}

.brand_box .list_box>li:not(:first-of-type) {
    padding: 9.3% 3.5%;
}

.brand_box .list_box .main_txt {
    font-size: 3.6rem;
}

.brand_box .list_box .sub_txt {
    font-size: 2.9rem;
    line-height: 130%;
    font-weight: lighter;
    padding-top: 6%;
    color: #ABABB1;
}

.brand_box .list_box>li>.main_txt {
    font-size: 3.8rem;
    line-height: 130%;
}

.brand_box .list_box .event_box {
    border-top: 1px solid #ABABB1;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.brand_box .list_box .event_box>div:first-of-type {
    margin-right: 6%;
}

.brand_box .list_box .event_box>div:last-of-type {
    max-width: 35%;
}

.brand_box .list_box .event_box .main_txt {
    font-weight: bold;
    line-height: 125%;
    letter-spacing: -0.05rem;
    white-space: nowrap;
}

/* index&brand.html /---brand_box > step_box----------------------- */
.brand_box .step_box {
    margin: 7% 3.5% 0;
    padding: 0 4%;
    border: 1px solid #646472;
    border-radius: 20px;
    background-color: #292D35;
}

.brand_box .step_box>li:first-child {
    padding: 9.3% 0;
}

.brand_box .step_box .step_list {
    display: flex;
    position: relative;
    margin-left: 3.5%;
    padding-bottom: 7.2%;
}

.brand_box .step_box .step_list:nth-of-type(2)::before,
.brand_box .step_box .step_list:nth-of-type(3)::before {
    content: '';
    position: absolute;
    width: 3%;
    height: 4.5%;
    background: url(/img/arrow_bottom.png) no-repeat center / contain;
    bottom: 7%;
    left: 14%;
}

.brand_box .step_box .step_list .step_div {
    max-width: 32%;
}

.brand_box .step_box .step_list .main_txt {
    max-width: 65%;
    padding: 2.5% 0 0 7%;
    font-size: clamp(14px, 2.6rem, 26px);
}

.brand_box .step_box .step_list .main_txt p:first-of-type {
    font-weight: bolder;
    line-height: 125%;
}

.brand_box .step_box .step_list .main_txt p:last-of-type {
    font-weight: lighter;
    line-height: 130%;
    letter-spacing: -0.05rem;
    padding-top: 6%;
    white-space: nowrap;
}

.brand_box .txt_box p {
    font-size: 5.8rem;
    padding: 10.3% 0 16.5%;
    background:
        url(/img/doublequotes_1.png) 2% 16% no-repeat,
        url(/img/doublequotes_2.png) 99% 90% no-repeat;
    background-size: 10%;
    letter-spacing: -0.05rem;
}

.find_div {
    padding-top: 2rem;
    color: #ABABB1;
    font-size: clamp(14px, 2.2rem, 22px);
}

.find_div span {
    margin: 0 0.5rem;
    cursor: pointer;
}

/* brand.html /--- brand_footer----------------------- */
.brand_footer {
    padding-bottom: 20rem;
}

/* myPage.html /--- mypage_box ----------------------- */
.mypage_box .user_name {
    color: #fff;
    font-size: 4rem;
    font-weight: bold;
    padding: 5.8rem 0 1.6rem;
}

.mypage_box .user_hp {
    font-size: clamp(14px, 2.4rem, 24px);
    padding-bottom: 7rem;
    font-weight: 200;
}

.mypage_box .user_hp>span {
    color: #ABABB1;
}

.mypage_box .user_hp>a {
    color: var(--sub_color);
    margin-left: 1.7rem;
}

/* mypage_box /--- user_box ----------------------------- */
.mypage_list>ul>.list_mt {
    margin-top: 2.4rem;
}

.mypage_list>ul>li>a {
    display: flex;
    align-items: center;
    background-color: #1C1E22;
    margin: 2px 0;
    padding: 2.8rem 3.4rem;
    cursor: pointer;
}

.mypage_list>ul>li p {
    color: #fff;
    font-size: clamp(16px, 2.8rem, 28px);
    flex: 1;
    padding-left: 4rem;
    text-align: left;
}

.mypage_list>ul>li img {
    width: clamp(24px, 4rem, 40px);
}

.mypage_box>ul>li:last-of-type button {
    margin: 4.1rem 0;
    font-size: clamp(14px, 2.4rem, 24px);
    color: #646472;
}

/* myPageSetting.html /--- setting_box ----------------------- */
.setting_box {
    padding-top: 10rem;
}

.setting_list>ul>li>a {
    display: flex;
    align-items: center;
    background-color: #1C1E22;
    margin: 2px 0;
    padding: 2.8rem 3.4rem;
    cursor: pointer;
}

.setting_list>ul>li p {
    color: #fff;
    font-size: clamp(16px, 2.8rem, 28px);
    flex: 1;
    padding-left: 4rem;
    text-align: left;
}

.setting_list>ul>li img {
    width: clamp(24px, 4rem, 40px);
}

/* setting_box /--- li:last-of-type ------------------------ */
.setting_box>ul>li:last-of-type {
    margin: 4.1rem 0;
    font-size: clamp(14px, 2.4rem, 24px);
}

.setting_box>ul>li:last-of-type>a {
    color: #646472;
}

/* shoppingList.html
   stampList.html
   winList.html
/--- list_info_box ----------------------- */
.list_info_box {
    color: #646472;
    font-weight: 200;
    font-size: clamp(14px, 2.4rem, 24px);
    background-color: #1C1E22;
    margin: 0 2.6rem;
    padding: 1.8rem;
    border-radius: 0.6rem;
}

/* ---item none ----------------------- */
.shopping_list>ul>li.list_none,
.promotion_list>ul>li.list_none,
.point_list_box>ul>li.list_none,
.stamp_list>ul>li.list_none {
    display: block;
    font-size: clamp(16px, 2.8rem, 28px);
    color: #646472;
    padding: 8rem 0;
    margin: 4rem 2.6rem;
    text-align: center;
}

/* shoppingList.html /--- shopping_box ----------------------- */
.shopping_list>ul>li {
    display: flex;
    position: relative;
    color: #646472;
    margin: 4rem 2.6rem;
    font-size: clamp(13px, 2.1rem, 21px);
}

/* shopping_list /--- img ----------------------- */
.shopping_list>ul>li>div:first-of-type {
    width: 11.8rem;
    height: 11.8rem;
    border-radius: 100%;
    overflow: hidden;
}

.shopping_list>ul>li>div>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.shopping_list>ul>li.before>div>img,
.shopping_list>ul>li.cancel>div>img {
    opacity: 0.4;
}

/* shopping_list /--- text_box ----------------------- */
.shopping_list .text_box {
    margin: 0 2.7rem;
    max-width: 55%;
    text-align: left;
}

.shopping_list .text_box>p {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    word-break: break-all;
}

.shopping_list .text_box>p:first-of-type {
    color: #FFFFFF;
    font-size: 2.8rem;
    padding-bottom: 1.8rem;
}

.shopping_list .text_box>p:last-of-type {
    padding-top: 1rem;
}

/* shopping_list /--- last div box ----------------------- */
.shopping_list>ul>li>div:last-of-type {
    position: absolute;
    min-width: 11.8rem;
    text-align: end;
    right: 0;
}

.shopping_list>ul>li>div:last-of-type>p {
    white-space: nowrap;
    padding-bottom: 2.5rem;
    font-size: clamp(14px, 2.4rem, 24px);
}

.shopping_list .before>div:last-of-type>p {
    color: var(--sub_color)
}

.shopping_list .after>div:last-of-type>p {
    color: #FFF;
    font-weight: bold;
}

.shopping_list .cancel>div:last-of-type>p {
    color: #646472;
    font-weight: bold;
    text-decoration: line-through;
}

/* stampList.html /--- stamp_box ------------------------ */
.stamp_box>ul>li:first-of-type {
    color: #646472;
    font-size: clamp(14px, 2.4rem, 24px);
    background-color: #1C1E22;
    margin: 0 2.6rem;
    padding: 1.8rem;
    border-radius: 0.6rem;
}

.stamp_list>ul {
    flex-direction: column;
}

.stamp_list>ul>li {
    display: flex;
    position: relative;
    color: #646472;
    margin: 4rem 2.6rem;
    font-size: clamp(12px, 2.1rem, 21px);
    align-items: center;
}

/* stamp_list /--- 수량 표시 ---------------------- */
.stamp_list>ul>li>div:first-of-type {
    width: 11.9rem;
    height: 11.9rem;
    border-radius: 100%;
    background-color: #1C1E22;
}

.stamp_list>ul>li>div:first-of-type>p {
    font-size: 2.9rem;
    font-weight: bold;
    color: #ABABB1;
    position: relative;
    top: 50%;
    transform: translate(0, -50%);
}

.stamp_list>ul>li>div:first-of-type>p.active {
    color: var(--main_color);
}

/* stamp_list /--- text_box ----------------- ------ */
.stamp_list .text_box {
    margin: 0 2.7rem;
    max-width: calc(100% - 17.3rem);
    text-align: left;
    font-weight: 200;
}

.stamp_list .text_box>p:first-of-type {
    color: #FFFFFF;
    font-size: clamp(16px, 2.8rem, 28px);
    padding-bottom: 1.4rem;
}

/* userResign.html /--- resign_box ----------------------- */
.resign_box {
    padding-top: 12.8rem;
    color: #646472;
    font-size: clamp(14px, 2.4rem, 24px);
    width: calc(100% - 5.2rem);
}

.resign_box h2 {
    font-size: 3.2rem;
    font-weight: bold;
    color: #FFF;
    letter-spacing: -0.07rem;
    margin-bottom: 1.5rem;
}

.resign_box p {
    letter-spacing: 0.02rem;
}

.resign_box textarea {
    resize: none;
    overflow: hidden;
    outline: none;
    color: #F3F3F3;
    background-color: #292D35;
    border: none;
    border-radius: 1.6rem;
    width: 100%;
    height: 20rem;
    padding: 3.2rem;
    font-size: clamp(16px, 2.8rem, 28px);
    margin: 3rem 0;
}

.resign_box textarea::placeholder {
    color: #646472;
    font-size: clamp(16px, 2.8rem, 28px);
    letter-spacing: 0.02rem;
}

.resign_box ul li {
    position: relative;
    margin-bottom: 1.7rem;
    word-break: keep-all;
    padding-left: 1.5rem;
    letter-spacing: -0.04rem;
}

.resign_box ul li::before {
    content: "•";
    font-size: 1.5rem;
    position: absolute;
    left: 0;
    top: 0.5rem;
}

/* pointList.html , pointFeeList.html
/--- point_box ----------------------- */
.point_box {
    padding: 11.6rem 0 3rem;
}

.point_box>ul {
    background-color: var(--main_color);
    margin: 0 2.6rem;
    padding: 0 2.4rem;
    border-radius: 0.6rem;
}

.point_box>ul>li {
    display: flex;
    padding: 3rem 0;
    justify-content: space-between;
    font-weight: bold;
}

/* 총 포인트 */
.point_box>ul>li:first-of-type {
    color: #FFF;
    font-size: 3.6rem;
    letter-spacing: -0.05rem;
    border-bottom: 0.2rem solid #FFF;
}

/* 잔여 포인트 */
.point_box>ul>li:last-of-type {
    color: rgba(255, 255, 255, 0.8);
    font-size: clamp(14px, 2.6rem, 26px);
}

/* point_list_box /-------------------------- */
.point_list_box {
    padding: 0 2.4rem;
}

.point_list_box>h2 {
    color: #FFF;
    font-size: 3.6rem;
    font-weight: bold;
}

.point_list_box>ul>li {
    color: #FFF;
    font-size: clamp(14px, 2.4rem, 24px);
    padding: 3.2rem 1.6rem;
}

.point_list_box>ul>li:not(li:last-of-type) {
    border-bottom: 1px solid #646472;
}

.point_list_box>.tab_box,
.point_list_box>ul>li>div {
    display: flex;
}

.point_list_box>ul>li>div:not(div:last-of-type) {
    margin-bottom: 0.8rem;
}

.point_list_box>ul>li>div>span {
    min-width: 14.4rem;
    font-weight: 200;
}

/* tab */
.point_list_box>.tab_box>a {
    width: 50%;
    font-size: clamp(16px, 2.8rem, 28px);
    padding: 2.7rem 0;
    color: #646472;
    border-bottom: 1px solid #292D35;
}

.point_list_box>.tab_box>a.active {
    color: #FFF;
    border-bottom: 0.2rem solid #FFF;
}

/* winList.html , promotionList.html
/--- promotion_box ----------------------- */
.promotion_box>h2 {
    color: #FFF;
    font-size: 3.6rem;
    font-weight: bold;
}

.promotion_list>ul>li {
    color: #FFF;
    font-size: clamp(14px, 2.4rem, 24px);
    padding: 3.2rem 1.6rem;
    margin: 0 2.4rem;
}

.promotion_list>ul>li:not(li:last-of-type):not(li.list_none) {
    border-bottom: 1px solid #646472;
}

.promotion_list>ul>li>div {
    display: flex;
}

.promotion_list>ul>li>div:not(div:last-of-type) {
    margin-bottom: 0.8rem;
}

.promotion_list>ul>li>div:last-of-type>p {
    color: var(--sub_color)
}

.promotion_list>ul>li>div>span {
    min-width: 14.4rem;
    font-weight: 200;
}

/* searchList.html /--- search_input ----------------------- */
.search_input {
    width: 100%;
    flex: 1;
    margin: 1rem 2rem 1rem 1rem;
}

.search_input input {
    outline: none;
    color: #FFF;
    font-size: clamp(14px, 2.4rem, 24px);
    padding: 1.8rem;
    padding-right: 7.5rem;
    border: 1px solid #292D35;
    background-color: #292D35;
    border-radius: 1.4rem;
    margin: 0;
    min-height: auto;
}

.search_input input::placeholder {
    color: #646472;
}

.search_input img {
    display: none;
    width: 3.4rem;
    position: absolute;
    top: 50%;
    right: 4rem;
    transform: translate(0, -50%);
    cursor: pointer;
}

.search_input img.active {
    display: block;
}

/* searchList.html /--- search_box ----------------------- */
.search_box {
    padding: 13.6rem 2.6rem 0;
    font-size: clamp(14px, 2.4rem, 24px);
}

.search_box>h1 {
    font-size: 3.4rem;
    font-weight: bold;
    color: #FFF;
    letter-spacing: -0.07rem;
    padding-left: 5.2rem;
    background: url(/img/cart.png) no-repeat left / 4rem;
}

.search_box>span {
    display: inline-block;
    font-size: 2.6rem;
    color: #ABABB1;
    letter-spacing: -0.02rem;
    border-radius: 1.4rem;
    background-color: #292D35;
    padding: 0.5rem 1.2rem;
    margin-top: 3rem;
}

.search_box .item_list {
    margin-top: 2rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.item_list li {
    width: 100%;
    margin-bottom: 2rem;
}

/* item img */
.item_list>li>div {
    overflow: hidden;
    border-radius: 1.6rem;
    margin-bottom: 1.5rem;
}

/* 브랜드 */
.item_list>li>span:first-of-type {
    color: #ABABB1;
}

/* item 이름 */
.item_list>li>p:first-of-type {
    color: #ABABB1;
    margin: 0.8rem 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
}

/* item 기격 */
.item_list>li>p:last-of-type {
    color: #FFF;
    margin: 0.8rem 0;
    font-size: clamp(18px, 3rem, 30px);
    letter-spacing: -0.05rem;
}

/* 로켓배송 */
.item_list>li>span:last-of-type {
    color: #038AB3;
    padding-left: 2.8rem;
    background: url(/img/rocket.png) no-repeat left / 2.4rem;
}

/* main.html /---main_box----------------------- */
.main_box>.main_board {
    overflow: hidden;
    position: relative;
}

.main_box>.main_board>.board_counter {
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
    background: rgba(0, 0, 0, 0.25);
    color: #F3F3F3;
    padding: 0.5rem 1.5rem;
    border-radius: 4.1rem;
    font-size: clamp(12px, 2rem, 20px);
}

.main_box>.main_board>.board_wrapper {
    display: flex;
}

.main_box>.main_board>.board_wrapper>.board_slide {
    padding-top: 10.6rem;
    position: relative;
    flex: 0 0 100%;
}

.main_box>.main_board>.board_wrapper>.board_slide>p {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    color: #FFF;
    text-shadow: 0 0 2rem #00FFFF;
    font-weight: bold;
    white-space: nowrap;
    /* IOS compositing bug */
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.main_box>.main_board>.board_wrapper>.board_slide>p:nth-of-type(1) {
    font-size: 3.4rem;
    top: calc(12% + 10.6rem);
}

.main_box>.main_board>.board_wrapper>.board_slide>p:nth-of-type(2) {
    font-size: 7.6rem;
    top: calc(21% + 10.6rem);
    letter-spacing: 0.15rem;
}

.main_box>.main_board>.board_wrapper>.board_slide>p:nth-of-type(3) {
    font-size: 5.6rem;
    top: calc(43.5% + 10.6rem);
    line-height: 137%;
    padding-left: 11rem;
}

.main_box>.main_board>.board_wrapper>.board_slide>p:nth-of-type(3)::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 11rem;
    height: 11rem;
    background: url(/img/board_biz_icon.png) no-repeat center / contain;

    /* IOS compositing bug */
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.main_box ul {
    padding: 4rem 4.5rem 7.5rem;
}

.main_box>ul>li:first-of-type {
    font-size: 3.6rem;
    letter-spacing: -0.05rem;
    color: #FFF;
    font-weight: bold;
    padding-bottom: 3.5rem;
}

.main_box .main_search {
    align-items: center;
    position: relative;
}

.main_box .main_search input {
    border-radius: 0.8rem;
    font-size: clamp(14px, 2.4rem, 24px);
    color: #F3F3F3;
    padding: 2.15rem 6rem;
    margin: 0;
}

.main_box .main_search input::placeholder {

    font-size: clamp(14px, 2.4rem, 24px);
    color: #F3F3F3;
}

.main_box .main_search img {
    width: 3.5rem;
    height: 3.5rem;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(1.4rem, -50%);
    cursor: pointer;
}

/* main.html /---search_brand----------------------- */
.search_brand {
    display: flex;
    justify-content: space-between;
    text-align: center;
    margin-top: 1.8rem;
}

.search_brand>a {
    width: calc(50% - 0.9rem);
}

.search_brand .brand_img {
    overflow: hidden;
    border-radius: 0.6rem;
}

.search_brand p {
    color: #F3F3F3;
    font-size: clamp(14px, 2.6rem, 26px);
    font-weight: 500;
    padding-top: 1.8rem;
}

/* main.html /---slider_box----------------------- */
section.slider_box {
    width: 100%;
    overflow: hidden;
    position: relative;
}

section.slider_box .slides {
    display: flex;
    will-change: transform;
}

section.slider_box .slide {
    min-width: 100%;
    min-height: 72px;
}

section.slider_box .slide img {
    width: 100%;
    display: block;
    object-fit: cover;
    min-height: 72px;
}

section.slider_box .counter {
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
    background: rgba(0, 0, 0, 0.25);
    color: #F3F3F3;
    padding: 0.5rem 1.5rem;
    border-radius: 4.1rem;
    font-size: clamp(12px, 2rem, 20px);
}

/* main.html /---progress_box----------------------- */
.progress_box {
    padding: 8.5rem 2.6rem;
}

.progress_box .money_text>p:first-of-type {
    color: var(--sub_color);
    font-size: clamp(14px, 2.2rem, 22px);
    letter-spacing: -0.05rem;
}

.progress_box .money_text>p:last-of-type {
    color: #ffffff;
    font-size: 3.4rem;
    font-weight: bold;
    letter-spacing: -0.05rem;
    padding: 0.5rem 0 4.3rem;
}

.progress_box .money_goal {
    width: 100%;
}

.progress_box .progress_bar {
    position: relative;
    width: 100%;
    height: 4.3rem;
    background-color: #292D35;
    border-radius: 3.1rem;
}

.progress_box .progress {
    width: 0%;
    height: 100%;
    background-color: var(--main_color);
    border-radius: 3.1rem;
    transition: width 0.5s ease-in-out;
}

.progress_box .info {
    display: flex;
    justify-content: space-between;
    padding-top: 1.6rem;
    font-size: clamp(14px, 2.2rem, 22px);
    color: #646472;
}

.progress_box .info .money {
    font-weight: 600;
    color: #ABABB1;
}

.progress_box .badge {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(-0.8rem, -50%);
    width: 3rem;
    height: 3rem;
    background: url(/img/badge.png) center / cover;
}

/* main.html /---main_stamp_box----------------------- */
.main_stamp_box>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 0 2.7rem 6.7rem;
}

.main_stamp_box>ul>li {
    width: calc(25% - 1.6rem);
    padding-bottom: 1.6rem;
}

.main_stamp_box .stamp_info>div,
.main_stamp_box .stamp_info>a {
    display: flex;
    white-space: nowrap;
    font-weight: bold;
    position: relative;
}

.main_stamp_box .stamp_info>div {
    font-size: 3.4rem;
    color: #FFF;
    padding-bottom: 1rem;
}

.main_stamp_box .stamp_info>div>img {
    position: relative;
    width: clamp(18px, 2.4rem, 24px);
    margin-left: 1.2rem;
    object-fit: contain;
    cursor: pointer;
}

.main_stamp_box .stamp_info>a {
    font-size: 3rem;
    color: var(--main_color);
}

.main_stamp_box .stamp_info>a>img {
    position: relative;
    width: 1.4rem;
    left: 1.5rem;
    object-fit: contain;
}

/* main.html /---event_box----------------------- */
section.event_box {
    padding: 2.8rem 2.6rem;
}

section.event_box>p {
    font-size: 3.2rem;
    font-weight: bold;
    color: #FFF;
    letter-spacing: -0.05%;
    padding-bottom: 4rem;
}

section.event_box>ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 2.7rem;
}

section.event_box>ul a {
    color: #ABABB1;
    font-size: clamp(14px, 2.4rem, 24px);
    letter-spacing: -0.05rem;
}

section.event_box ul a div {
    width: 100%;
    position: relative;
    padding-top: 100%;
    overflow: hidden;
    border-radius: 1.6rem;
}

section.event_box ul a div img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

section.event_box>ul a>p {
    padding: 1.5rem 0 4rem;
}

/* main.html /--- main_footer----------------------- */
.main_footer {
    padding-bottom: 5rem;
}

/* mallInfoC.html & mallInfoG.html/-------------------------- */
.mall_box {
    padding: 12rem 2.6rem 25rem;
    color: #ABABB1;
}

.mall_box>div>img {
    width: 50rem;
    border-radius: 0.6rem;
    overflow: hidden;
    margin: 1.2rem 0 7rem;
}

.mall_box h2 {
    color: #FFF;
    font-size: clamp(20px, 3.2rem, 32px);
    letter-spacing: -0.05rem;
    margin-bottom: 2.8rem;
}

.mall_box h3 {
    color: #ABABB1;
    font-size: clamp(18px, 2.6rem, 26px);
    line-height: 153%;
    letter-spacing: -0.04rem;
    margin: 4rem 0 1rem;
}

.mall_box h4 {
    color: #F3F3F3;
    font-size: clamp(16px, 2.4rem, 24px);
    font-weight: 400;
    letter-spacing: -0.04rem;
    margin-bottom: 1.2rem;
}

.mall_box p {
    font-size: clamp(16px, 2.4rem, 24px);
    font-weight: 200;
    line-height: 130%;
    letter-spacing: -0.08rem;
    padding-left: 3.8rem;
}

.mall_box p.g_market {
    position: relative;
    color: #F3F3F3;
    font-weight: 400;
    letter-spacing: -0.1rem;
    margin-bottom: 3rem;
}

.mall_box p.g_market::before {
    content: "🧐";
    position: absolute;
    left: 0;
}

.mall_box ul {
    position: relative;
}

.mall_box ul li {
    margin-left: 3.2rem;
    font-size: clamp(14px, 2.2rem, 22px);
    font-weight: 200;
    line-height: 153%;
    word-break: keep-all;
}

.mall_box ul li::before {
    content: "•";
    font-size: clamp(14px, 2.2rem, 22px);
    position: absolute;
    left: 1.5rem;
}

/* helpIdInfo.html /---helpidInfo----------------------- */
.helpid_info_box a {
    text-decoration: underline;
    font-size: clamp(14px, 2.4rem, 24px);
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0%);
}

/* joinagree.html /---agree_box----------------------- */
.agree_box {
    display: flex;
    flex-direction: column;
}

.agree_box .join_txt {
    color: #FFF;
    font-size: 4.6rem;
    font-weight: 600;
    padding: 14.4rem 0;
}

.agree_box .join_agree {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    align-items: center;
}

.join_agree .agreequ {
    color: #FFF;
    width: calc(100% - 5.2rem);
    font-size: 2.6rem;
    margin-top: auto;
}

.join_agree .agreequ>li {
    display: flex;
    align-items: center;
}

.join_agree .agreequ>li:first-of-type {
    display: flex;
    background: #292D35;
    font-weight: bold;
    border-radius: 0.4rem;
}

.join_agree .agreequ label span {
    color: var(--sub_color);
}

/* joinInfo1,2.html 
   userInfoChange.html
/---join_info_box----------------------- */
.join_info_box .info_box {
    padding-top: 12rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.join_info_box .info_box>div {
    width: calc(100% - 5.2rem);
    padding-bottom: 4.5rem;
}

.join_info_box .info_box>div>div {
    display: flex;
    position: relative;
}

.join_info_box .info_box label {
    font-size: 2.6rem;
    color: #FFF;
    cursor: pointer;
}

.join_info_box .info_box #joinBizFile {
    display: none;
}

.join_info_box .info_box .file_img_box {
    width: 25rem;
    height: 35.3rem;
    margin-top: 2rem;
    overflow: hidden;
    background: url(/img/attach_biz_img.png) no-repeat center/ 100%;
}

.join_info_box .info_box .file_img_box img {
    height: 100%;
    object-fit: cover;
    display: block;
}

/* helpPwInfo.html /--- helppw_info_box ----------------------------- */
.helppw_info_box>.info_box>.badge_icon {
    opacity: 0;
}

.helppw_input_box,
.helppw_info_input {
    position: relative;
    width: calc(100% - 5.2rem);
    margin: 0 auto;
}

.helppw_input_box>input::placeholder,
.helppw_info_input>input::placeholder {
    color: #646472;
}

/* login.html /--- login_box ----------------------------- */
.login_logo_box {
    padding: 15% 0 12%;
}

.login_logo_box img {
    width: 40%;
}

.login_box .login_input_box {
    margin-bottom: 9.9rem;
}

.login_box .login_input_box input {
    width: calc(100% - 5.2rem);
    min-height: 50px;
    margin-top: 1.4rem;
}

.login_box .info_box .main_btn {
    margin: 0;
}

.login_find_box {
    padding-top: 6%;
}

.login_find_box span {
    color: rgba(171, 171, 177, 0.6);
    font-size: clamp(14px, 1.9rem, 19px);
    line-height: 2.2rem;
    padding: 0 1%;
    font-weight: 100;
    vertical-align: bottom;
}

.login_find_box a {
    margin-top: 5%;
    color: #ABABB1;
    font-size: clamp(14px, 2.2rem, 22px);
    letter-spacing: 0.02rem;
}

/* helpIdCertify.html /--- certify_box ----------------------------- */
.helpId_certify .certify_box {
    display: flex;
    flex-direction: column;
    padding-top: 15rem;
    align-items: center;
}

.certify_box>li {
    width: calc(100% - 5.2rem);
    text-align: start;
}

.certify_box>li>div {
    display: flex;
    position: relative;
}

.certify_box label {
    font-size: 2.6rem;
    color: #FFF;
    cursor: pointer;
    text-align: start;
}

.certify_box button {
    font-size: 2.6rem;
    min-width: 20rem;
    min-height: 50px;
    border-radius: 0.4rem;
    border: 0.2rem solid #646472;
    color: #646472;
    background-color: #292D35;
    margin-top: 2rem;
    padding: 2.4rem 0;
    white-space: nowrap;
    position: absolute;
    right: 0;
}

.certify_box button.min {
    min-width: 12.8rem;
}

.certify_box button.active {
    color: #FFF;
    font-weight: bold;
    background-color: var(--main_color);
    border-color: var(--main_color);
}


/* inviteUser.html /--- invite_box common ----------------------- */
.invite_box h1 {
    color: #FFF;
    font-size: 5.4rem;
    font-weight: bold;
    margin: 4rem 0 2.8rem;
}

.invite_box h2 {
    color: #FFF;
    font-size: clamp(20px, 3.6rem, 36px);
    font-weight: bold;
    padding: 4rem 0 2.8rem;
}

.invite_box:not(.invite_box:nth-of-type(1)) {
    padding: 0 2.6rem;
}

.invite_box ul {
    position: relative;
    text-align: start;
    word-break: keep-all;
    font-size: clamp(14px, 2.4rem, 24px);
    font-weight: 200;
}

.invite_box ul li {
    margin: 1.4rem 0;
}

.invite_box ul li::before {
    content: "•";
    font-size: clamp(14px, 2.4rem, 24px);
    position: absolute;
    left: 1rem;
}

/* inviteUser.html /--- invite_box1 ----------------------- */
.invite_box:nth-of-type(1) {
    padding-top: 12.8rem;
}

.invite_box:nth-of-type(1)>span {
    color: var(--sub_color);
    border-radius: 5.7rem;
    background-color: #292D35;
    font-size: clamp(12px, 2rem, 20px);
    font-weight: bold;
    padding: 1.1rem 1.8rem;
}

.invite_box:nth-of-type(1)>p {
    color: #F3F3F3;
    font-size: clamp(14px, 2.6rem, 26px);
    padding-bottom: 10.7rem;
}

.invite_box:nth-of-type(1)>img {
    padding-left: 2.1rem;
}

.invite_box:nth-of-type(1) div img {
    width: 4rem;
    margin: 2.1rem 0 16rem;
}

/* inviteUser.html /--- invite_box2 ----------------------- */
.invite_box:nth-of-type(2)>div {
    width: 100%;
    margin-bottom: 13.1rem;
}

.invite_box:nth-of-type(2) .invite_tabs {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.invite_box:nth-of-type(2) .invite_tabs>div {
    background: #1C1E22;
    border-radius: 1.4rem;
    cursor: pointer;
    margin-bottom: 1.9rem;
    width: calc((100% - 2.8rem) / 3);
    padding: 2.4rem 0;
}

.invite_box:nth-of-type(2) .invite_tabs>div>p {
    color: #ABABB1;
    font-size: 3.6rem;
    padding-bottom: 1.5rem;
}

.invite_box:nth-of-type(2) .invite_tabs>div>span {
    color: #ABABB1;
    font-size: clamp(14px, 2.4rem, 24px);
}

.invite_box:nth-of-type(2) .invite_tabs>div.active {
    background: #292D35;
    margin-bottom: 0;
    padding-bottom: 1.9rem;
    border-radius: 1.4rem 1.4rem 0 0;
}

.invite_box:nth-of-type(2) .invite_tabs>div.active>p {
    color: var(--sub_color);
    font-weight: bold;
    padding-bottom: 1rem;
    font-size: 4rem;
}

.invite_box:nth-of-type(2) .invite_tabs>div.active>span {
    font-weight: bold;
    color: #F3F3F3;
}

.invite_box:nth-of-type(2) .invite_content {
    display: none;
    background: #292D35;
    border-radius: 0 0 1.4rem 1.4rem;
    padding: 2.6rem;
    padding-left: 4.4rem;
}

.invite_box:nth-of-type(2) .invite_content li::before {
    left: 2.6rem;
}

.invite_box:nth-of-type(2) .invite_content.active {
    display: inherit;
}

.invite_box:nth-of-type(2) .invite_content li {
    color: #ABABB1;
    line-height: 153%;
    margin: 0;
}

/* inviteUser.html /--- invite_box3 ----------------------- */
.invite_box:nth-of-type(3) ul {
    color: #ABABB1;
    letter-spacing: -0.02rem;
    padding: 2.6rem 0 2.6rem 2.6rem;
}

.invite_box:nth-of-type(3) ul li span {
    color: #F3F3F3;
    font-weight: 400;
}

/* inviteUser.html /--- invite_box4 ----------------------- */
.invite_box:nth-of-type(4) {
    background-color: #1C1E22;
}

.invite_box:nth-of-type(4) h2 {
    padding-top: 5rem;
}

.invite_box:nth-of-type(4) img {
    margin-bottom: 1.8rem;
}

.invite_box:nth-of-type(4) img:last-of-type {
    margin-bottom: 3.5rem;
}

/* inviteUser.html /--- invite_box5 ----------------------- */
.invite_box:nth-of-type(5) p {
    color: #ABABB1;
    font-size: clamp(18px, 2.8rem, 28px);
    letter-spacing: -0.04rem;
}

.invite_box:nth-of-type(5) p:not(p:first-of-type) {
    margin-top: 4.5rem;
}

.invite_box:nth-of-type(5) ul {
    padding-left: 2.6rem;
    letter-spacing: -0.04rem;
}

.invite_box:nth-of-type(5)>ul:last-of-type {
    padding-bottom: 28rem;
}

.invite_box:nth-of-type(5) ul li {
    color: #646472;
}

/* eventList.html /--- event_list_box ----------------------- */
.event_list_box {
    padding: 12rem 2.6rem 0;
    font-size: clamp(14px, 2.4rem, 24px);
}

.event_list_box ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.7rem;
}

.event_list_box ul li {
    width: 100%;
    margin-bottom: 1.3rem;
}

.event_list_box a {
    display: block;
    color: #ABABB1;
    overflow: hidden;
}

.event_list_box a div {
    overflow: hidden;
    border-radius: 1.6rem;
    margin-bottom: 1.5rem;
    width: 100%;
    position: relative;
    padding-top: 100%;
}

.event_list_box a div img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* eventDetail.html /--- event_detail_box ----------------------- */
.event_detail_box {
    padding-top: 10rem;
}

.event_detail_box>p {
    display: block;
    margin: 0 2.6rem;
    letter-spacing: -0.08rem;
    color: #FFF;
}

.event_detail_box>p:first-of-type {
    margin-top: 4rem;
    margin-bottom: 1rem;
    font-size: clamp(14px, 2.2rem, 22px);
}

.event_detail_box>p:last-of-type {
    font-size: clamp(20px, 3rem, 30px);
    font-weight: bold;
}

.event_detail_box>.btn_box {
    min-height: auto;
}

.event_detail_box>.btn_box>.main_btn {
    margin: 2.4rem 0 4rem;
}

.event_detail_box .text_box {
    display: block;
    color: #ABABB1;
    font-size: clamp(14px, 2.2rem, 22px);
    line-height: 153%;
    margin: 0 2.6rem 10rem;
}

/* bannerShoppingGuide.html 
   bannerAccumulate.html
   / --- event_detail_box common----------------------- */
header.banner_header.active {
    background-color: transparent;
}

.banner_detail_box {
    font-size: clamp(16px, 2.4rem, 24px);
    line-height: 130%;
}

.banner_detail_box h2 {
    color: #FFF;
    font-size: 4.2rem;
    font-weight: bold;
    margin-bottom: 2.6rem;
}

.banner_detail_box p {
    color: #ABABB1;
}

.banner_detail_box span {
    color: #646472;
    margin-top: 5.5rem;
}

.banner_detail_box>div {
    margin: 0 2.6rem 7rem;
}

.banner_detail_box>div:first-of-type {
    margin-top: 5.5rem;
}

/* banner list style */
.banner_detail_box ul {
    counter-reset: list-counter;
}

.banner_detail_box ul li {
    color: #ABABB1;
    counter-increment: list-counter;
    position: relative;
    padding-left: 4.8rem;
    margin: 3.4rem 0;
}

.banner_detail_box ul li:not(li.plus)::before,
.banner_detail_box ul li.plus::before {
    position: absolute;
    width: 3.2rem;
    left: 0;
    font-size: clamp(12px, 2rem, 20px);
    border-radius: 0.4rem;
    text-align: center;
}

/* 숫자 리스트 */
.banner_detail_box ul li:not(li.plus)::before {
    content: counter(list-counter);
    background-color: #646472;
}

/* 부칙 */
.banner_detail_box ul li.plus::before {
    content: "+";
    background-color: #292D35;

}