@charset "UTF-8";
/* 초기화 및 초기 세팅 */
:root {
    /* 버튼 및 인풋 폼 높이 세팅 */
    --hd_height: 7.0rem;
    --hd_height_m: 5.0rem;
    --height_xs: 2.5rem;
    --height_sm: 3.6rem;
    --height_md: 4.2rem;
    --height: 4.6rem;
    --height_lg: 6.0rem;
    --ic_date: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 1V3H15V1H17V3H21C21.5523 3 22 3.44772 22 4V20C22 20.5523 21.5523 21 21 21H3C2.44772 21 2 20.5523 2 20V4C2 3.44772 2.44772 3 3 3H7V1H9ZM20 11H4V19H20V11ZM7 5H4V9H20V5H17V7H15V5H9V7H7V5Z"></path></svg>');
    --ic_time:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM13 12H17V14H11V7H13V12Z"></path></svg>')
}


div::-webkit-scrollbar {
    width: 0.6rem;
    height: 0.6rem;
}
div::-webkit-scrollbar-thumb {
    background-color: #ddd;
    border-radius: 100px;
}


html {
    font-size:10px;
    height: 100%;
    -webkit-text-size-adjust: 100%;
}
body {
    margin:0 auto;
    padding:0;
    font-family:Pretendard;
    height: 100%;
    -webkit-overflow-scrolling: touch;
}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img { margin:0; padding:0; border:0 }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block }

ul, dl,dt,dd { margin:0; padding:0; list-style:none }
legend { position:absolute; margin:0; padding:0; font-size:0; line-height:0; text-indent:-9999em; overflow:hidden }
label, input, button, select, img { vertical-align:middle; }
input, button { margin:0; padding:0;}
input[type="submit"] {cursor:auto;}
button {cursor: auto;}
select {margin:0}
p { margin:0; padding:0; word-break:keep-all; }
hr { display:none }
a { text-decoration:none; cursor: pointer; }
a:hover { text-decoration: none; }
.un_reboot_a { color: var(--main); text-decoration: underline; }
*, :after, :before {
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
    word-break: keep-all;
}

img { max-width:100%; display:inline-block; height: auto; }
.container-fluid {max-width: 2560px;}
.mobile_wr {
    border-left: 1px solid #F2F2F2;
    border-right: 1px solid #F2F2F2;
    box-sizing: content-box;
}

/*메인*/
.idx_pg {min-height: 780px;padding-top: 13.5rem; padding-bottom: 10rem;}
.curs_pointer{cursor: pointer;}


/*서브*/
.sub_tit { position: relative; }
.sub_pg {min-height: 780px; background: #fff; padding-top: 13.5rem; padding-bottom: 10rem;}

.over_hidden{overflow:hidden;}
.text_dynamic{ white-space: pre-line;}

.text-gray{color:#999;}
.text-gray2{color:#AAB1B7;}
.text-gray3{color:#666;}
.text-black{color:#000;}

.text-through { text-decoration: line-through;}


.dot_list li {
    list-style: none;
    margin-bottom:1.0rem;
    display: flex;
}

.dot_list li:before {
    content:"·";
    vertical-align:middle;
    margin-right:0.5rem;
}
.dot_list li:last-child{margin-bottom:0;}


.dot_list.fs_10 li{margin-bottom:0.3rem;}

.fc_red { color: #F33707;}

.line_h1 { line-height:1.0em; }
.line_h1_1 { line-height:1.1em; }
.line_h1_2 { line-height:1.2em; }
.line_h1_3 { line-height:1.3em; }
.line_h1_4 { line-height:1.4em; }
.line_h1_5 { line-height:1.5em; }
.line_h1_6 { line-height:1.6em; }
.line_h1_7 { line-height:1.7em; }
.line_h1_8 { line-height:1.8em; }
.line_h1_9 { line-height:1.9em; }
.line_h2 { line-height:2.0em; }


/*폰트커스텀 기본사이즈 10px*/

.tit_h1 { font-size: 3.2rem; font-weight: 700; color: #000;line-height: 135%;}
.tit_h2 { font-size: 3.0rem; font-weight: 600; color:#000;line-height: 130%;}
.tit_h3 { font-size: 2.6rem; font-weight: 700; color:#000;line-height: 130%;}
.tit_h4 { font-size: 2.2rem; font-weight: 700; color:#000;}
.tit_h5 { font-size: 2.0rem; font-weight: 700; color:#000;}
.tit_h6 { font-size: 1.8rem; font-weight: 700; color:#000;}

.fs_8 { font-size: 0.8rem; }
.fs_9 { font-size: 0.9rem; }
.fs_10 { font-size: 1.0rem; }
.fs_11 { font-size: 1.1rem !important; }
.fs_12 { font-size: 1.2rem !important; }
.fs_13 { font-size: 1.3rem !important; }
.fs_14 { font-size: 1.4rem !important; }
.fs_15 { font-size: 1.5rem !important; }
.fs_16 { font-size: 1.6rem !important; }
.fs_17 { font-size: 1.7rem !important; }
.fs_18 { font-size: 1.8rem !important; }
.fs_19 { font-size: 1.9rem !important; }
.fs_20 { font-size: 2.0rem !important; }
.fs_21 { font-size: 2.1rem !important; }
.fs_22 { font-size: 2.2rem; }
.fs_23 { font-size: 2.3rem; }
.fs_24 { font-size: 2.4rem; }
.fs_25 { font-size: 2.5rem; }
.fs_26 { font-size: 2.6rem; }
.fs_27 { font-size: 2.7rem; }
.fs_28 { font-size: 2.8rem; }
.fs_29 { font-size: 2.9rem; }
.fs_30 { font-size: 3.0rem; }
.fs_31 { font-size: 3.1rem; }
.fs_32 { font-size: 3.2rem; }
.fs_33 { font-size: 3.3rem; }
.fs_34 { font-size: 3.4rem; }
.fs_35 { font-size: 3.5rem; }
.fs_36 { font-size: 3.6rem; }
.fs_37 { font-size: 3.7rem; }
.fs_38 { font-size: 3.8rem; }
.fs_39 { font-size: 3.9rem; }
.fs_40 { font-size: 4.0rem; }
.fs_41 { font-size: 4.1rem; }
.fs_42 { font-size: 4.2rem; }
.fs_43 { font-size: 4.3rem; }
.fs_44 { font-size: 4.4rem; }
.fs_45 { font-size: 4.5rem; }
.fs_46 { font-size: 4.6rem; }
.fs_47 { font-size: 4.7rem; }
.fs_48 { font-size: 4.8rem; }
.fs_49 { font-size: 4.9rem; }
.fs_50 { font-size: 5.0rem; }
.fs_51 { font-size: 5.1rem; }
.fs_52 { font-size: 5.2rem; }


.fw_100 { font-weight: 100; }
.fw_200 { font-weight: 200; }
.fw_300 { font-weight: 300; }
.fw_400 { font-weight: 400; }
.fw_500 { font-weight: 500; }
.fw_600 { font-weight: 600; }
.fw_700 { font-weight: 700; }
.fw_800 { font-weight: 800; }
.fw_900 { font-weight: 900; }


.wh_pre { white-space: pre-line; }
.wh_nowrap { white-space: nowrap; }

.break_all{word-break: break-all;}
.keep_all{word-break: keep-all;}

/*글자 줄임말/자르기*/
.line_text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; word-break: break-all;word-break: break-all;}
.line1_text { white-space: normal; overflow: hidden; text-overflow: ellipsis;word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical;word-break: break-all;}
.line2_text { white-space: normal; overflow: hidden; text-overflow: ellipsis;word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;word-break: break-all;}
.line3_text { white-space: normal; overflow: hidden; text-overflow: ellipsis;word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;word-break: break-all;}


/* 폼 사각형 */
.sq_guide { display:flex; flex-wrap: wrap; }
.sq_guide li {
    width: 70px;
    height: 40px;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    margin: 0.5rem;
}

/* 스크롤바 none */
.scroll_bar_none { -ms-overflow-style: none; }
.scroll_bar_none::-webkit-scrollbar { display: none; }


/*테이블 반응형때*/
.touch_scroll { overflow-x: auto; overflow-y: hidden; }



/* 버튼 */
.btn { height: var(--height);display: inline-flex;justify-content: center; align-items: center;border-radius: 0.8rem;font-size: 1.5rem;font-weight:600;padding-left:1.5rem;padding-right:1.5rem;}
.btn-sm {height: var(--height_sm);border-radius: 0.6rem;font-size: 1.4rem;padding-left:1.2rem;padding-right:1.2rem;font-weight:400;}
.btn-md { height: var(--height_md);border-radius: 0.6rem;font-weight:500;}
.btn-lg { height: var(--height_lg);font-weight:600;font-size: 1.8rem;}
.btn-link{height:auto;padding:0;cursor: pointer;display: flex;align-items: center;border-radius: 0;background: transparent;flex-shrink: 0;}
.btn-icon{height:auto;padding:0;cursor: pointer;display: flex;align-items: center;border-radius: 0;background: transparent;flex-shrink: 0;}
.btn-icon img{flex-shrink: 0;}

.btn-primary2{background:var(--primary-light);border-color:var(--primary-light);color:#fff;}
.btn-primary2:hover, .btn-primary2:focus{color:#fff;background:var(--primary);border-color:var(--primary);}


.btn-primary3{background:#FF8D69;border-color:#FF8D69;color:#fff;}
.btn-primary3:hover, .btn-primary2:focus{color:#fff;background:var(--primary);border-color:var(--primary);}


.btn-light-primary{background:#FFF1ED;border-color:#FFF1ED;color:var(--primary);}
.btn-light-primary:hover, .btn-light-primary:focus{color:var(--primary);}

.btn_auto { width: auto; height: auto; padding: 0; margin: 0;}


.btn.disabled, .btn:disabled {
    opacity: 1;
    color:#A7B2BC;
    background:#D7DCE2;
    border-color: #D7DCE2;
}


.btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
    color: #fff;
    background-color: var(--primary);
    border-color: var(--primary);
}
.btn-group-toggle .btn{margin-right:0.6rem;}

.btn-group-toggle .btn input[type=radio], .btn-group-toggle .btn input[type=checkbox], .btn-group-toggle .btn-group .btn input[type=radio], .btn-group-toggle .btn-group .btn input[type=checkbox] {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}

.btn-group.btn_toggle_primary .btn-outline-border:not(:disabled):not(.disabled):active,
.btn-group.btn_toggle_primary .btn-outline-border:not(:disabled):not(.disabled).active,
.btn-group.btn_toggle_primary .show > .btn-outline-border.dropdown-toggle,
.btn-group.btn-group-toggle .btn-outline-border:not(:disabled):not(.disabled):active,
.btn-group.btn-group-toggle .btn-outline-border:not(:disabled):not(.disabled).active,
.btn-group.btn-group-toggle .show > .btn-outline-border.dropdown-toggle {
    color: #ffffff;
    background-color:var(--primary) ;
    border-color: var(--primary);
}

/* 인풋 자동완성 초기화 */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-text-fill-color: var(--text);
    -webkit-box-shadow: 0 0 0px 1000px var(--bg) inset;
    box-shadow: 0 0 0px 1000px var(--bg) inset;
    transition: background-color 5000s ease-in-out 0s;
}

input:autofill,
input:autofill:hover,
input:autofill:focus,
input:autofill:active {
    -webkit-text-fill-color: var(--text);
    -webkit-box-shadow: 0 0 0px 1000px var(--bg) inset;
    box-shadow: 0 0 0px 1000px var(--bg) inset;
    transition: background-color 5000s ease-in-out 0s;
}

/* 입력 인풋 */
.form-control {height: var(--height);}
.form-control-sm {height: var(--height_sm);border-radius:  0.6rem;}
.form-control-md {height: var(--height_md);}
.form-control-lg {height: var(--height_lg);}
.form-control-auto {height: auto;}

input.form-control{white-space: nowrap; overflow: hidden; text-overflow: ellipsis; word-break: break-all;}

.ip_wr .ip_tit { margin-bottom:0.8rem;  display: flex; align-items: center; justify-content: space-between;}
.ip_wr .ip_tit h5 {
    font-size: 1.5rem;
    font-weight: 500;
    display: inline-block;
    position: relative;
    color: #000;
    margin-right: 0.8rem;
}
.ip_wr .ip_tit.required h5::after{
    content: "";
    position: absolute;
    background: var(--primary);
    width:0.3rem;
    height:0.3rem;
    border-radius:50%;
    top: 0;
    right: -0.5rem;
}


.was-validated .form-control:valid, .form-control.is-valid {
    border-color: #19BB6F;
    padding-right: 1.5rem !important;
    background-repeat: no-repeat;
    background-position: right 1.5rem center;
    background-size: 1.8rem auto;
}


.was-validated .form-control:invalid, .form-control.is-invalid {
    border-color: #E92E00;
    padding-right: 1.5rem !important;
    background-repeat: no-repeat;
    background-position: right 1.5rem center;
    background-size: 1.8rem auto;
}


/* form-text */
.form-text {
    display: none;
    margin-top: 0.7rem;
    margin-left: 1.5rem;
    font-size:1.2rem;
    color: #000;
}
.ip_valid .ip_valid{display: flex; color: #59C48F;}
.ip_invalid .ip_invalid{display: flex; color: var(--primary);}


/*.form-row*/
.form-row{margin-left:-0.4rem;margin-right:-0.4rem;}
.form-row > .col, .form-row > [class*=col-]{padding-left:0.4rem;padding-right:0.4rem;}

/* textarea 높이 */
textarea.form-control{ min-height: 10rem; padding: 1.0rem 1.5rem; line-height: 2.6rem; }
.form-control textarea{min-height: 14rem; padding: 0; line-height: 2.6rem;border:0;width:100%;}
.form-control textarea:focus {
    color: var(--text);
    background-color: var(--bg);
    border-color: var(--gray);
    outline: 0;
    box-shadow: 0 0 0 0 var(--border);
}
.form-control textarea::placeholder {
    color: var(--input_placeholder);
    opacity: 1;
}
.form-control textarea:disabled, .form-control textarea[readonly] {
    background-color: var(--input_disabled);
    opacity: 1;
}

/* 셀렉트 박스 */
.custom-select {
    padding-right: 3.5rem;
    background: url(../img/ic_ip_select.png) no-repeat center right 1.0rem;
    background-size: 2.2rem;
    padding-left: 1rem;
    font-size: 1.5rem;
    font-weight: 500;
    color:#464C52;
    border-radius: 0.8rem;
    cursor: pointer;
}

.custom-select_st2 {
    padding-right: 1.6rem;
    background: url(../img/arrow_down_g_20.png)no-repeat center right;
    background-size: 1.08rem;
    padding-left: 0;
    font-size: 1.4rem;
    font-weight: 500;
    color: #727A82;
    height: 2.6rem;
    border: 0;
    width: auto;
}

.custom-select_st3 {
    background: url(../img/ic_ip_select.png)no-repeat center right 0.8rem;
    background-size: 2.0rem;
    padding-left: 1.5rem;
    font-size: 1.3rem;
    font-weight: 600;
    border-radius: 0.6rem;
    color: #333333;
    height: 3.6rem;
    width: auto;
    background-color: #fff;
}

/* 날짜 선택 */
input.form-control[type="date"], input.form-control[type="time"]{position: relative;}
input.form-control[type="date"]::-webkit-calendar-picker-indicator, input.form-control[type="time"]::-webkit-calendar-picker-indicator{
    -webkit-appearance: none;
    background: none;
    width: 100%; height: 100%; cursor: pointer;
    position: absolute; left: 0; top: 0;
}
input.form-control[type="date"]::before, input.form-control[type="time"]::before{
    content: ''; display: block; width: 2.4rem; height: 2.4rem; position: absolute; top: 50%;
    transform: translateY(-50%); right: 1.6rem; background: var(--gray); cursor: pointer;
    -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain;
}
input.form-control[type="time"]::before{
    -webkit-mask: var(--ic_time); mask: var(--ic_time);
}
input.form-control[type="date"]::before{
    -webkit-mask: var(--ic_date); mask: var(--ic_date);
}

/*패스워드*/
.form-password{position:relative;}
.form-password .form-control{padding-right:3.0rem;}
.form-password img{width:3.0rem;height:3.0rem;position:absolute;right:1.5rem;top:50%;margin-top:-1.5rem;cursor: pointer;}


.form_time_wr{position:relative;}
.form_time_wr .form-control{padding-right:5.0rem;}
.form_time_wr .form_time{color:var(--primary);font-size:1.4rem;position:absolute;right:1.6rem;top:50%;transform:translateY(-50%);}


/* 체크박스*/
.checks_wr{display: flex; flex-wrap: wrap; margin-bottom: -1rem; }
.checks_wr .checks{margin-right: 3rem; margin-bottom: 1rem;}

.checks label{display: flex; align-items: center; cursor: pointer;}
.checks label.chk_right{flex-flow: row-reverse; justify-content: flex-end;}
.checks input{display: none;}
.checks .ic_box {
    display: inline-block;
    width: 2.2rem;
    height: 2.2rem;
    background-image: url(../img/check_off.svg);
    background-position: center;
    background-size: auto 100%;
    background-repeat: no-repeat;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 0.8rem;
    flex-shrink: 0;
}
.checks input:checked + .ic_box{background-image:url(../img/check_on.svg);}
.chk_right .ic_box{margin-right: 0; margin-left: 0.5rem;}
.checks input:checked ~ .chk_p{}
.chk_p{padding-top:0.1rem; color: var(--gray-80); font-size: 1.5rem;}



.checks.primary_checks .ic_box{background-color: #eae9f0;border-radius: 50%;background-image:none;}
.checks.primary_checks input:checked + .ic_box{background-image: url(../img/check01_on.png);}


.radios_wr{display: flex; flex-wrap: wrap;}
.radios label{display: flex; align-items: center; cursor: pointer;}
.radios label.chk_right{flex-flow: row-reverse; justify-content: flex-end;}
.radios input{display: none;}
.radios .ic_box{display: inline-flex;flex-shrink: 0;position:relative; width: 2.2rem; height: 2.2rem; text-align: center; background-color: #fff;display: flex; align-items: center; justify-content: center; border-radius:2.0rem;border:1px solid var(--border);}
.radios input:checked + .ic_box{border-color: var(--primary);}
.radios input:checked + .ic_box:after {
    content: '';
    display: block;
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 50%;
    background-color: var(--primary);
    border: 0.24rem solid var(--primary);
}




/* 이미지 업로드 */
.review-write-box, .exchange-reasons-image-box {
    display: flex;
    overflow-x: auto;
    gap: 1rem;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1rem;
    white-space: nowrap;
}

.image_upload {
    flex: 0 0 auto;
    scroll-snap-align: start;
    position: relative;
}

.upload_box {
    width: 10rem;
    border: 1px solid #ddd;
    overflow: hidden;
    cursor: pointer;
    background: url(../img/btn_add_img.svg) no-repeat center;
    border-radius: 1rem;
    aspect-ratio: 1 / 1;
    position: relative;
}

.upload_box .rect {
    aspect-ratio: 1 / 1;
    width: 100%;
}

.upload_box .rect img {
    aspect-ratio: 1 / 1;
    width: 100%;
    object-fit: cover;
}

.upload_del {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    background-color: transparent;
    padding: 0;
    display: none;
}

.upload_del img {
    width: 100%;
}

.image_upload.on .upload_del {
    display: block;
}



/* 페이지네이션 */
.pagination { margin-top: 30px; display: flex; justify-content: center; align-items: center; }
.pagination li { height: 100%; }
.pagination a {
    color: #929292;
    font-weight: 500;
    margin: 0 0.4rem;
    width: 4.6rem;height: 4.6rem;
    font-size: 1.9re,;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}
.pagination a.on {
    color:var(--white); background:var(--secondary); font-weight: 400;
}
.pagination a.arrow{background-color:var(--gray-30);color: #626C79;}
.pagination a.arrow{margin:0;}
.pagination a.arrow.disabled { background-color: #fff;}
.pagination a.arrow.disabled img{opacity:0.3;}

/* 페이저 */
.pager {
    background: #ffffff;
    border-radius: 15rem;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 170px;
    height: 45px;
    margin: 3rem auto 0;
    border: 1px solid var(--border);
}

/* 테이블 */
.table_01 {width:100%; border-collapse: collapse;   border-bottom:1px solid #e3e3e3;border-top: 1px #eee solid;line-height: 140%;}
.table_01 th {
    border-bottom: 1px solid #eee;
    color: #1C1C1E;
    font-weight: 500;
    padding: 0.7rem 1.2rem 0.7rem 1.2rem;
    background: #F8F8F8;
    vertical-align: top;

}
.table_01 td {border-bottom:1px solid #eee;  padding:0.7rem 1.2rem;color: #1C1C1E;}


/* 테이블 슬래쉬 */
.table_01 th.slash {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg"><line x1="0" y1="100%" x2="100%" y2="0" stroke="rgb(77,77,77)" /></svg>'); background-repeat: no-repeat;
}
.table_01 th.backslash {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg"><line x1="0" y1="0" x2="100%" y2="100%" stroke="rgb(77,77,77)" /></svg>'); background-repeat: no-repeat;
}
.table_01 th.slash, .table_01 th.backslash { text-align: left; }
.slash div, .backslash div { text-align: right; }

/*테이블 반응형때*/
.table_scroll { overflow-x: auto; overflow-y: hidden; padding: 0px !important; }




/* 이미지 크롭 */
.rect1{width: 100%;position: relative;overflow: hidden; }
.rect1:after{content: "";display: block;padding-bottom: 100%; }
.rect1 img{ position: absolute;width: 100%;height: 100%;object-fit: cover;object-position: center;top: 50%;left: 50%;transform: translate(-50%,-50%);}

.rect2{width: 100%;position: relative;overflow: hidden; }
.rect2:after{content: "";display: block;padding-bottom:41.795%; }
.rect2 img{ position: absolute;width: 100%;height: 100%;object-fit: cover;object-position: center;top: 50%;left: 50%;transform: translate(-50%,-50%);}

/* 직사각형 */
.thumb_rect {width: 100%;overflow: hidden; position: relative; display: block; /* border: 1px solid var(--border); */ border-radius:0; }
.thumb_rect::after { content: '';display: block; padding-bottom: calc(319/249*100%);}
.thumb_rect>img {position: absolute;width: 100%;height: 100%;object-fit: cover;image-rendering: -webkit-optimize-contrast;}

/* 정사각형 */
.thumb_sqr {width: 100%;overflow: hidden; position: relative; display: block; /* border: 1px solid var(--border); */ border-radius: 0; cursor: pointer;}
.thumb_sqr::after { content: '';display: block; padding-bottom: calc(250/250*100%);}
.thumb_sqr>img {position: absolute;width: 100%;height: 100%;object-fit: cover;image-rendering: -webkit-optimize-contrast;}

a:hover .thumb_rect>img, a:hover .thumb_sqr>img {transform:scale(1.1); transition: all .6s;}



/*기본모달*/
body{padding-right: 0px !important;overflow: hidden auto;}
body.modal-open{overflow: auto;}
body.modal-open[style]{padding-right: 0px !important;}
.modal{padding-right: 0px !important;}
.modal-sm{max-width:40rem;margin: 1.75rem auto;padding: 1.5rem;padding: 0 1.6rem;}
.modal-md{max-width:48rem;margin: 1.75rem auto;padding: 1.5rem;padding: 0 1.6rem;max-height: calc(100% - 3.5rem);min-height: calc(100% - 3.5rem);}
.modal-default{max-width:50rem;margin: 1.75rem auto;padding-left:0;padding-right:0;padding: 0 1.6rem;}
.modal{overflow-y: auto;}
.modal .modal-header{align-items: center;border-bottom: 0;justify-content: space-between; padding:0; margin-bottom:3rem;}
.modal .modal-header .modal-title {font-weight: 700;font-size: 2.2rem;flex: 1 1 auto; color: #000;}
.modal .modal-header .close{text-shadow: none;opacity: 1;width:2.4rem;padding: 0;margin: 0;}
.modal .modal-content {border: 0;border-radius: 1.2rem; padding:3rem;}
.modal .modal-body { position: relative; flex: 1 1 auto; padding:0; margin-bottom: 1.5rem;}
.modal .modal-footer > * {margin:0;}
.modal .modal-footer {border:0;display: block;  padding:0;}
.modal .modal-footer .form-row{margin-right: -0.4rem; margin-left: -0.4rem;}
.modal .modal-footer .btn { height: 5.6rem;}
.modal .modal-sm .modal-header{padding-top: 3.0rem; font-size: 2.0rem; padding-bottom: 1.5rem; margin-bottom: 0; font-weight: 700;}
.modal .modal-sm .modal-body{border:0;padding-top:0; margin-bottom: 1.5rem;}
.modal .modal-sm .modal-content {border: 0;border-radius: 1.2rem; font-size: 1.6rem; color: var(--gray-80);}
.modal .modal-default .modal-header{font-size: 2.0rem;}


/*전체화면*/
.modal_full.modal .modal-content { height: fit-content;}
.modal_full.modal .modal-footer { padding-top: 3.0rem;}

/* 토스트팝업 */
.toast{
    color: #fff;
    border-radius: 0.6rem;
    font-size: 1.5rem;
    font-weight: 500;
    padding: 0.5rem 1rem;
}
/* toast */
.toast{
    position: fixed;
    top: 2.2rem;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 0rem;
    box-shadow: none;
    font-weight: 300;
    width: 100%;
    max-width: 400px;
    z-index: 9999;
    border: 0;
    background: transparent;
}
.toast-body {
    padding: 2rem;
    background-color: rgba(38, 64, 79, 0.84);
    color: var(--white);
    font-size: 1.6rem;
    font-weight: 600;
    border-radius: 1.2rem;
    text-align: left;
}
.toast-body p{
    display: flex;
    align-items: center;
    line-height: 1.3;
    justify-content:left;
}
.toast-body p i{
    margin-right: 0.6rem;
}



/* 뱃지 */
.badge {padding: 0.5rem 0.7rem;   border-radius: 0.6rem;   font-weight: 500;  font-size: 1.4rem;}
.badge-primary2 {background-color: #2273D1;color:#fff;}
.badge-primary3 { background-color: #FFEAE5; color: var(--primary);}
.badge-gray {background-color: #F0F0FA;color:#555A8D;}
.badge-gray2 {background-color: #F2F2F2;color:#958080;}
.badge-disabled{color:#999;background:#ddd;}
.badge-sm{font-size:1.0rem;line-height:1.6rem;padding:0 0.4rem;border-radius:0.1rem;}
.badge-sm2{font-size:1.0rem;line-height:1.9rem;padding:0 0.5rem;border-radius:0.4rem;}
.badge-md{font-size:1.6rem;font-weight: 600;line-height:1.6rem;padding:0.9rem 1.6rem;border-radius:0.6rem;}


/*터치*/
.touch_scroll { overflow-x: auto; overflow-y: hidden; }


/* List Style */
.list_style_1 li {display: flex;padding-bottom: 0.3rem;line-height: 1.4;}
.list_style_1 li > span{display: inline-block; width:9.5rem; padding-right: 0.5rem;color:#999;flex-shrink: 0;}


.list_style_2 li{display: flex; padding-bottom:0.8rem;}
.list_style_2 li:before{content:'-';display: inline-block;margin-right:1.0rem;}

/*탭*/
/*nav-tabs*/
.nav-tabs {
    background: #F5F6F8;
    border-radius: 0.8rem;
    padding: 0.8rem;
    border: 0;
    flex-wrap: nowrap;
}
.nav-tabs .nav-link {
    height: 4.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #999;
    border: 0;
    margin-bottom: 0px;
    padding-left: 0.2rem;
    padding-right: 0.2rem;
    border-radius: 0.8rem;
    font-weight: 600;
}
.nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background: #fff;
    color: #000;
    box-shadow: 0 0.3rem 0.6rem rgba(0,0,0,0.06);
}

/*nav-pills*/
.nav-pills{
    margin-left:-0.4rem;
    margin-right:-0.4rem;
    flex-wrap: nowrap;
}
.nav-pills .col{
    padding-left:0.4rem;
    padding-right:0.4rem;
}
.nav-pills .nav-link {
    background: none;
    border: 0;
    border-radius: 0rem;
    background: #fff;
    color: #000;
}



/*nav_tab_line*/
.nav_tab_line{
    width: 100%;
    margin: 0;
    background-color: #fff;
    border: unset;
}
.nav_tab_line .nav-item{
    text-align: center;
    background-color: transparent;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    /*flex-grow: 1;*/
    max-width: 100%;
    width: 100%;
    margin-right: 2.5rem;
    z-index: 2;
}
.nav_tab_line .nav-link {
    border: 0;
    color: var(--gray-70);
    height: 4.5rem;
    padding: 0rem 0 1.5rem 0;
    font-size: 2.2rem;
    font-weight: 700;
    background: transparent;
    text-wrap: nowrap;
}
.nav_tab_line .nav-link.active, .nav_tab_line .nav-item.show .nav-link {
    border-bottom: 2px solid  #1D92D1;
    color: #1D92D1;
}


/*커스텀 스위치*/
.custom-switch {
    padding: 0;
    width: 4.5rem;
    height: 1.8rem;
}
.custom-switch .custom-control-label::after {
    width: 2.5rem;
    height: 2.5rem;
    background-color: #848F9A;
    border-radius: 50%;
    top: -4px;
    left: 0;
}
.custom-control-label::after {
    position: absolute;
    top: 0.3rem;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    cursor: pointer;
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    background-color: #1D92D1;
    left: 1.2rem;
}
.custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: rgba(29, 185, 238, 0.35);
    background-color: rgba(29, 185, 238, 0.35);
}
.custom-control-label::before {
    background-color: rgba(184, 191, 199, 0.35);
    border: 0;
    top: 0;
    cursor: pointer;
}
.custom-switch .custom-control-label::before {
    left: 0;
    width: 4.5rem;
    height: 1.8rem;
    border-radius: 2rem;
}


/*d_flex*/
.d_flex_center_between{display: flex;align-items: center;justify-content: space-between;}

/*마진*/
.mt_1{margin-top:0.1rem;}
.mt_6{margin-top:0.6rem;}
.mt_07{margin-top: 0.7rem;}
.mt_8{margin-top:0.8rem;}
.mt_10{margin-top:1rem;}
.mt_12{margin-top:1.2rem;}
.mt_14{margin-top:1.4rem;}
.mt_16{margin-top:1.6rem;}
.mt_17{margin-top:1.7rem;}
.mt_18{margin-top:1.8rem;}
.mt_20{margin-top:2.0rem;}
.mt_22{margin-top:2.2rem;}
.mt_24{margin-top:2.4rem;}
.mt_25{margin-top:2.5rem;}
.mt_27{margin-top:2.7rem;}
.mt_28{margin-top:2.8rem;}
.mt_30{margin-top:3.0rem;}
.mt_33{margin-top:3.3rem;}
.mt_35{margin-top:3.5rem;}
.mt_36{margin-top:3.6rem;}
.mt_40{margin-top:4.0rem;}
.mt_44{margin-top:4.4rem;}
.mt_45{margin-top:4.5rem;}
.mt_48{margin-top:4.8rem;}
.mt_53{margin-top:5.3rem;}
.mt_60{margin-top:6.0rem;}
.mt_70{margin-top:7.0rem;}
.mt_80{margin-top:8.0rem;}


.mb_3{margin-bottom:0.3rem;}
.mb_4{margin-bottom:0.4rem;}
.mb_5{margin-bottom:0.5rem;}
.mb_6{margin-bottom:0.6rem;}
.mb_7{margin-bottom:0.7rem;}
.mb_8{margin-bottom:0.8rem;}
.mb_9{margin-bottom:0.9rem;}
.mb_10{margin-bottom:1.0rem;}
.mb_12{margin-bottom:1.2rem;}
.mb_13{margin-bottom:1.3rem;}
.mb_14{margin-bottom:1.4rem;}
.mb_15{margin-bottom:1.5rem;}
.mb_16{margin-bottom:1.6rem;}
.mb_18{margin-bottom:1.8rem;}
.mb_20{margin-bottom:2.0rem;}
.mb_21{margin-bottom:2.1rem;}
.mb_22{margin-bottom:2.2rem;}
.mb_24{margin-bottom:2.4rem;}
.mb_25{margin-bottom:2.5rem;}
.mb_27{margin-bottom:2.7rem;}
.mb_28{margin-bottom:2.8rem;}
.mb_30{margin-bottom:3.0rem;}
.mb_35{margin-bottom:3.5rem;}
.mb_36{margin-bottom:3.6rem;}
.mb_40{margin-bottom:4.0rem;}
.mb_42{margin-bottom:4.2rem;}
.mb_45{margin-bottom:4.5rem;}
.mb_48{margin-bottom:4.8rem;}
.mb_50{margin-bottom:5.0rem;}
.mb_60{margin-bottom:6.0rem;}
.mb_70{margin-bottom:7.0rem;}
.mb_80{margin-bottom:8.0rem;}

.mr_4{margin-right:0.4rem;}
.mr_6{margin-right:0.6rem;}
.mr_8{margin-right:0.8rem;}
.mr_12{margin-right:1.2rem;}
.mr_16{margin-right:1.6rem;}
.mr_20{margin-right:2.0rem;}
.mr_24{margin-right:2.4rem;}
.mr_n10{margin-right:-1.0rem;}
.mr_n20{margin-right:-2.0rem;}

.ml_6{margin-left:0.6rem;}
.ml_8{margin-left:0.8rem;}
.ml_16{margin-left:1.6rem;}
.ml_24{margin-left:2.4rem;}

.my_4{margin-top:0.4rem;margin-bottom:0.4rem;}
.my_20{margin-top:2.0rem;margin-bottom:2.0rem;}
.my_40{margin-top:4.0rem;margin-bottom:4.0rem;}

.mx_3{margin-left:0.3rem;margin-right:0.3rem;}
.mx_8{margin-left:0.8rem;margin-right:0.8rem;}
.mx_20{margin-left:2.0rem;margin-right:2.0rem;}
.mt_n10{margin-top: -1rem;}
.mx_n05{ margin-left: -0.5rem; margin-right:-0.5rem;}
.mx_n16{ margin-left: -1.6rem; margin-right:-1.6rem;}
.mx_lg_n16{ margin-left: 0rem; margin-right:0rem;}
.mx_n20{margin-left:-2.0rem;margin-right:-2.0rem;}



/*패딩*/
.pt_6{padding-top:0.6rem;}
.pt_07{ padding-top: 0.7rem;}
.pt_14{ padding-top: 1.4rem;}
.pt_16{ padding-top: 1.6rem;}
.pt_20{ padding-top: 2.0rem;}
.pt_24{padding-top:2.4rem;}
.pt_25{padding-top:2.5rem;}
.pt_27{padding-top:2.7rem;}
.pt_28{padding-top:2.8rem;}
.pt_37{padding-top:3.7rem;}
.pt_48{ padding-top: 4.8rem;}
.pt_50{ padding-top: 5.0rem;}
.pt_60{ padding-top: 6.0rem;}
.pt_80{padding-top:8.0rem;}
.pt_120{padding-top:12.0rem;}

.pb_07{ padding-bottom: 0.7rem;}
.pb_14 { padding-bottom: 1.4rem;}
.pb_15{padding-bottom: 1.5rem;}
.pb_16 { padding-bottom: 1.6rem;}
.pb_18{padding-bottom:1.8rem;}
.pb_20{padding-bottom:2.0rem;}
.pb_24{ padding-bottom: 2.4rem;}
.pb_25{padding-bottom:2.5rem;}
.pb_28{padding-bottom:2.8rem;}
.pb_33{padding-bottom:3.3rem;}
.pb_40{padding-bottom:4.0rem;}
.pb_50{padding-bottom:5.0rem;}
.pb_60{padding-bottom:6.0rem;}
.pb_70{padding-bottom:7.0rem;}
.pb_80{padding-bottom:8.0rem;}
.pb_90{padding-bottom:9.0rem;}
.pb_100{padding-bottom:10.0rem;}
.pb_114{padding-bottom:11.4rem;}

.pl_12 { padding-left: 1.2rem;}
.pl_16 { padding-left: 1.6rem;}
.pl_lg_16 { padding-left: 0rem !important;}
.pl_18 { padding-left: 1.8rem;}
.pl_20{ padding-left: 2.0rem;}
.pl_26{ padding-left: 2.6rem;}
.pl_40{padding-left:4.0rem;}

.pr_16{padding-right:1.6rem;}

.py_7{ padding-top: 0.7rem; padding-bottom: 0.7rem;}
.py_8{ padding-top: 0.8rem; padding-bottom: 0.7rem;}
.py_11{ padding-top: 1.1rem; padding-bottom: 1.1rem;}
.py_13{ padding-top: 1.3rem; padding-bottom: 1.3rem;}
.py_16{ padding-top: 1.6rem; padding-bottom: 1.6rem;}
.py_20{padding-top:2.0rem;padding-bottom:2.0rem;}
.py_25{padding-top:2.5rem;padding-bottom:2.5rem;}
.py_28{padding-top:2.8rem;padding-bottom:2.8rem;}
.py_35{padding-top:3.5rem;padding-bottom:3.5rem;}


.px_8{padding-left:0.8rem;padding-right:0.8rem;}
.px_12{padding-left:1.2rem;padding-right:1.2rem;}
.px_16{padding-left:1.6rem;padding-right:1.6rem;}
.px_17{padding-left:1.7rem;padding-right:1.7rem;}
.px_18{padding-left:1.7rem;padding-right:1.8rem;}
.px_20{padding-left:2.0rem;padding-right:2.0rem;}
.px_22{padding-left:2.2rem;padding-right:2.2rem;}
.px_25{padding-left:2.5rem;padding-right:2.5rem;}



.p_20{ padding: 2rem;}



.vh_100{min-height:100vh;}
.vh_100_vh{height:100vh;}
.w-auto{width:auto;}

.rounded-md{border-radius:0.6rem;}
.rounded{border-radius:0.8rem;}


/* 하단 혜택 추가 */
.review_point_area { display:none; }
.review_point_area .review_point {
    background-color: #F8F9FB;
    background-image: url(../img/addapp_bg.png);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 35%;
    padding: 3.2rem 3.2rem 2.5rem 3.2rem;
    margin-top: -8.0rem;
}
.review_point_area .review_point h3 { margin-bottom: 10px; }
.review_point_area .review_point ul li { line-height: 3rem; }
.review_point_area .btn-appd {
    width: 100%;
    margin-top: 1rem;
    background: #f8f9fb;
    border: 1px solid #dbe0e7;
    font-size: 1.875rem;
    color: #282828;
    padding: 2.58rem 0;
}

/*반응형 max 1200 xl*/
@media (max-width: 1199.98px) {
    .container { padding-left: 1.6rem; padding-right: 1.6rem; max-width:1100px;}
}

/*반응형 max 992px lg*/
@media (max-width: 991.98px) {
    .sub-top { display: none;}
    .btn-lg { height: var(--height);font-size:1.5rem;}
    .tit_h2 { font-size: 2.5rem;}
    .tit_h3 { font-size: 2.0rem;}

    .fs_18 {font-size: 1.6rem !important;}
    .mx_lg_n16{ margin-left: -1.6rem; margin-right: -1.6rem;}

    .pl_lg_16 { padding-left: 1.6rem !important;}

    /* iOS 하단 고정 처리 - 모바일 footer 표시를 위해 주석 처리 */
    /* .wrap {
        position: relative;
        height: 100vh;
        height: 100svh;
        display: flex;
        flex-direction: column;
        overflow: hidden;
    } */

    /*메인*/
    .idx_pg {
        padding-top: 9.6rem;
        /* flex: 1;
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch; */
    }
    /* 검색결과 */
    .idx_pg.idx_pg_search_result {padding-top: 5rem;}
    /*서브*/
    .sub_pg {
        padding-top: var(--hd_height_m);
        /* flex: 1;
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch; */
    }

    /*전체사이즈*/
    /*전체사이즈*/
    .modal_full.modal{overflow-y: auto;}
    .modal_full.modal .modal-header .modal-title { text-align: center; margin-left: 3rem; font-size: 1.7rem; font-weight: 500;}
    .modal_full.modal .modal-header .close { width: 2.2rem;}
    .modal_full.modal .modal-content {
        border-radius: 0;
        max-height: 100vh;
        max-height: 100svh; /* iOS 17+ 대응 */
        height: 100vh;
        height: 100svh; /* iOS 17+ 대응 */
        padding: 1rem 1.6rem 1.6rem;
    }
    .modal_full.modal .modal-dialog{margin:0 auto;max-width:var(--body_width);transform: translate(0%, 0);max-height: 100%;}
    .modal_full.modal .modal-body{border:0;padding-left:1.6rem;padding-right:1.6rem;}
    .modal_full.modal .modal-footer{padding-top:3.0rem; padding-bottom: 0; display: block;padding-left: 0;padding-right: 0;}
    .modal_full.modal .modal-footer .form-row{margin-left: -5px;margin-right: -5px;}
    .modal_full.modal .modal-footer .btn { height: 4.6rem;}
    .modal_full.modal .bg-black .modal-title{background:#000;}


    /*하단 팝업*/
    .modal_bottom.modal{padding-right:0 !important;overflow-y: hidden;}
    .modal_bottom.modal.fade{}
    .modal_bottom.modal.show .modal-dialog{padding-right:0 !important;transform: translate(-50%, 0);}
    .modal_bottom.modal .modal-dialog {transform: translate(0, 5rem);position: fixed;
        bottom: 0;
        width: 100%;
        max-width:100%;
        transform: translate(-50%, 5rem);
        left: 50%;
    }
    .modal_bottom.modal .modal-title button{border:0;background:transparent;width:3.2rem;position:absolute;right:2.0rem;top:1.6rem;}
    .modal_bottom.modal .modal-dialog{justify-content: flex-end;margin: 0 auto;min-height: 100%;}
    .modal_bottom.modal .modal-content{border-radius: 3.2rem 3.2rem 0 0;margin-top: 3.0rem; padding: 4rem 1.6rem 1.6rem !important; }
    .modal_bottom.modal .modal-body{border-bottom:0; padding: 0rem 0 2rem 0;}
    .modal-backdrop {left: 50%; width: 100%;transform: translateX(-50%);}


    /*rounded*/
    .rounded-lg {border-radius: 1.2rem !important;}

    .nav_tab_line .nav-link { font-size: 1.8rem;     padding: 0rem 0 0.2rem 0;}

    /*모달*/
    .modal .modal-content { padding: 2rem;}
    .modal .modal-header { margin-bottom: 1.5rem;}
    .modal .modal-header .modal-title { font-size: 1.8rem;}
}


/*반응형 max 767px md*/
@media (max-width: 767.98px) {
    .pagination a{width: 3.6rem; height: 3.6rem;}
}

/*반응형 max 576px sm*/
@media (max-width: 575.98px) {



}

/*반응형 max 360px*/
@media (max-width: 360px) {
    html { font-size:9.4px; }
}


