@charset "utf-8";
@import url('../../../css/paperlogy.css');

/************/
/* ?? css */
/************/

/* ??? */
html, body {width:100%; min-height:100%; margin:0; padding:0; font-family: 'Pretendard'; font-weight:medium;}
*{position:relative; margin:0; padding:0; border:0; box-sizing:border-box;}
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;font-size:1em}
input, button {margin:0;padding:0;font-family:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;font-size:1em}
input[type="submit"] {cursor:pointer}
button {cursor:pointer}
textarea, select {font-family:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;font-size:1em}
select {margin:0}
p {margin:0;padding:0;word-break:break-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:#000;text-decoration:none}
input[type=text],input[type=password], textarea {-webkit-transition:all 0.30s ease-in-out; -moz-transition:all 0.30s ease-in-out; -ms-transition:all 0.30s ease-in-out; -o-transition:all 0.30s ease-in-out; outline:none;}
/* ??? ??? input ?? ??? */
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=search]:focus,
input[type=url]:focus,
input[type=date]:focus,
textarea:focus,
select:focus,
.frm_input:focus,
.form_01 input:focus,
.form_01 textarea:focus,
.form_01 select:focus,
.login_input:focus,
.confirm_input:focus,
.reg_input:focus,
.qna_input:focus {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    outline: none;
    border-color: #FC6A23 !important;
}
.placeholdersjs {color:#aaa !important}

/* ?? ?? ?? ??? */
.cl_field_tip {
    position: fixed;
    z-index: 10000;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    max-width: min(320px, calc(100vw - 24px));
    padding: 10px 12px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(17, 24, 39, 0.14);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.35;
    color: #222;
    white-space: nowrap;
    pointer-events: none;
    box-sizing: border-box;
}
.cl_field_tip[hidden] {
    display: none !important;
}
.cl_field_tip::before {
    content: "";
    position: absolute;
    top: -6px;
    left: 18px;
    width: 12px;
    height: 12px;
    background: #fff;
    transform: rotate(45deg);
    box-shadow: -2px -2px 4px rgba(17, 24, 39, 0.04);
}
.cl_field_tip.is-above::before {
    top: auto;
    bottom: -6px;
    box-shadow: 2px 2px 4px rgba(17, 24, 39, 0.04);
}
.cl_field_tip_icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    border-radius: 4px;
    background: #FC6A23;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
}
.cl_field_tip_text {
    position: relative;
    z-index: 1;
}
.cl_field_control {
    position: relative;
    display: block;
    min-width: 0;
}
.cl_field_control.is-invalid > input,
.cl_field_control.is-invalid > textarea,
.cl_field_control.is-invalid > select,
input.cl-invalid,
textarea.cl-invalid,
select.cl-invalid {
    border-color: #FC6A23 !important;
}

/* ?? ??? alert / confirm (??? UI? ??) */
.cl_alert_overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 20000;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    opacity: 0;
    transition: opacity 0.25s ease;
}
.cl_alert_overlay.active {
    opacity: 1;
}
.cl_alert_box {
    position: fixed;
    top: 50%;
    left: 50%;
    width: calc(100% - 40px);
    max-width: 420px;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    transform: translate(-50%, -50%) scale(0.96);
    transition: transform 0.25s ease;
}
.cl_alert_overlay.active .cl_alert_box {
    transform: translate(-50%, -50%) scale(1);
}
.cl_alert_header {
    padding: 15px 20px;
    background: #FC6A23;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cl_alert_header h4 {
    margin: 0;
    font-size: 1.05rem;
    color: #fff;
    font-weight: 700;
}
.cl_alert_body {
    padding: 24px 20px;
    text-align: center;
    font-size: 0.98rem;
    color: #475569;
    line-height: 1.6;
    word-break: keep-all;
}
.cl_alert_footer {
    padding: 15px 20px 20px;
    display: flex;
    gap: 10px;
    justify-content: center;
    border-top: 1px solid #edf2f7;
}
.cl_alert_footer .btn_modal {
    min-width: 96px;
    padding: 8px 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
    border: none;
    font-size: 0.9em;
    font-weight: 500;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: inherit;
}
.cl_alert_footer .btn_modal.ok {
    background: #FC6A23;
    color: #fff;
}
.cl_alert_footer .btn_modal.ok:hover {
    background: #e85d1a;
}
.cl_alert_footer .btn_modal.cancel {
    background: #e2e8f0;
    color: #475569;
}
.cl_alert_footer .btn_modal.cancel:hover {
    background: #cbd5e0;
}

.paperlogy{font-family:'paperlogy';}

html, body{max-width:100%;}
/* overflow-x:hidden 은 body에 두면 #hd sticky가 깨지므로 콘텐츠 영역에만 적용 */
#wrapper, #ft{width:100%; min-width:0; box-sizing:border-box; overflow-x:hidden;}
#hd_wrapper, #gnb .gnb_wrap, #container_wr, #ft_wr{width:100%; max-width:1440px; margin-left:auto; margin-right:auto; box-sizing:border-box;}
/* ?? - display none/block */
.is-hidden{display:none !important;}
.is-visible{display:block !important;}
/* ?? - ??? (pc / mobile) ? display none/block */
.pc-only{display:none;}
@media(min-width:769px){
  .pc-only{display:block !important;}
}
.mobile-only{display:block;}
@media(min-width:769px){
  .mobile-only{display:none !important;}
}

/* ?? ???? */
#hd {background:#fff; height:75px; width:100%; position:sticky; top:0; z-index:999; border-bottom:1px solid #f2f2f2}
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#tnb{width:100%; height:100%;}
#tnb .inner{width:100%; height:100%; padding:0px 40px; display:flex; justify-content:space-between; align-items:center; box-sizing:border-box;}
.center_menu{flex-grow:1; display:flex; justify-content:center;}
.center_menu ul{display:flex; gap:50px; margin:0; padding:0; list-style:none; font-weight:bold; font-size:17px;}
.right_menu{display:flex; align-items:center; gap:30px; margin:0; padding:0; list-style:none; font-weight:bold; font-size:15px;}
.center_menu li a:hover, .center_menu li a.active, .right_menu li a:hover{color:#107400;}
.shop_cart .count,
.shop_wish .count{position:absolute; top:-8px; right:-12px; background:#FC6A23; color:#fff; border-radius:50%; padding:2px 6px; font-size:11px; min-width:16px; text-align:center; box-sizing:border-box;}
.shop_wish a,
.shop_cart a{display:inline-flex; align-items:center; justify-content:center; color:inherit;}
.shop_wish a:hover,
.shop_cart a:hover{color:#107400;}
.shop_wish .fa-heart-o{line-height:1;}

/* ??? / ??? (1024 ???? ??) */
.hd_hamburger{display:none; flex-direction:column; justify-content:center; gap:5px; width:40px; height:40px; padding:8px; margin:0; border:0; background:transparent; cursor:pointer; box-sizing:border-box;}
.hd_hamburger_bar{display:block; width:100%; height:2px; background:#111; border-radius:1px; transition:transform .2s, opacity .2s;}
body.hd_menu_open .hd_hamburger_bar:nth-child(1){transform:translateY(7px) rotate(45deg);}
body.hd_menu_open .hd_hamburger_bar:nth-child(2){opacity:0;}
body.hd_menu_open .hd_hamburger_bar:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.hd_drawer_dim{display:none; position:fixed; inset:0; background:rgba(0,0,0,.35); z-index:1000;}
.hd_drawer{display:none; position:fixed; top:0; right:0; width:min(320px, 86vw); height:100%; background:#fff; z-index:1001; box-shadow:-4px 0 24px rgba(0,0,0,.12); overflow:hidden; box-sizing:border-box; flex-direction:column;}
.hd_drawer_head{display:flex; align-items:center; justify-content:space-between; padding:18px 20px; border-bottom:1px solid #f2f2f2; flex-shrink:0;}
.hd_drawer_title{font-size:16px; font-weight:700; color:#111;}
.hd_drawer_close{width:36px; height:36px; border:0; background:transparent; color:#6B7280; font-size:20px; cursor:pointer; border-radius:8px;}
.hd_drawer_close:hover{background:#F3F4F6; color:#111;}
.hd_drawer_body{flex:1; min-height:0; overflow-y:auto;}
.hd_drawer_nav, .hd_drawer_util{margin:0; padding:12px 0; list-style:none;}
.hd_drawer_nav{border-bottom:1px solid #f2f2f2;}
.hd_drawer_nav a, .hd_drawer_util a{display:block; padding:14px 20px; font-size:16px; font-weight:700; color:#111; text-decoration:none;}
.hd_drawer_nav a:hover, .hd_drawer_nav a.active, .hd_drawer_util a:hover{color:#107400;}
.hd_drawer_util a{font-size:15px; font-weight:600; color:#4B5563;}
.hd_drawer_shop{display:flex; flex-direction:row; gap:10px; padding:16px 20px 24px; border-top:1px solid #f2f2f2; flex-shrink:0; box-sizing:border-box;}
.hd_drawer_shop_btn{flex:1; display:flex; align-items:center; justify-content:center; gap:6px; min-height:48px; padding:12px 10px; border:1px solid #E5E7EB; border-radius:8px; background:#fff; color:#111; text-decoration:none; box-sizing:border-box;}
.hd_drawer_shop_btn:hover{border-color:#107400; color:#107400;}
.hd_drawer_shop_label{font-size:14px; font-weight:700;}
.hd_drawer_shop_count{display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 6px; border-radius:10px; background:#FC6A23; color:#fff; font-size:11px; font-weight:700; box-sizing:border-box;}
body.hd_menu_open{overflow:hidden;}
body.hd_menu_open .hd_drawer_dim{display:block;}
body.hd_menu_open .hd_drawer{display:flex;}

/* ?? ???? */
#wrapper{min-height:calc(100vh - 390px);}
#wrapper:after, #container:after, .shop-content:after, .shop_index_wrap:after { display: block; visibility: hidden; clear: both; content: ""; }
#container_wr{margin:0 auto;}

/* ?? ???? */
#ft {background:#f8f9fa; width:100%; height:auto; min-height:280px;}
#ft_wr {width:100%; max-width:1440px; margin:0 auto; padding:40px 30px; display:flex; flex-direction:column; gap:28px; text-align:left; box-sizing:border-box;}
.footer_top{display:flex; justify-content:space-between; align-items:center; gap:20px; width:100%;}
.footer_logo{display:inline-flex; flex-shrink:0; line-height:0;}
.footer_logo img{height:70px; width:153px; display:block;}
.footer_links{display:inline-flex; align-items:center; flex-wrap:nowrap; gap:15px; font-size:15px; white-space:nowrap;}
.footer_links a{color:inherit; text-decoration:none;}
.footer_links a:hover{color:#107400;}
.footer_links_sep{color:#CFCFCF; flex-shrink:0;}
.footer_bottom{display:flex; justify-content:space-between; align-items:flex-end; gap:30px; width:100%;}
.footer_info{display:flex; flex-direction:column; gap:15px; font-size:15px; min-width:0; flex:1;}
.footer_left_text_container{display:flex; align-items:center; flex-wrap:wrap; gap:10px 15px;}
.footer_left_text_wrap{display:flex; align-items:center; gap:10px; flex-wrap:wrap;}
.footer_left_text.title{font-weight:bold; white-space:nowrap;}
.footer_copyright{color:#8a8a8a;}
.footer_cha{flex-shrink:0; line-height:0;}
.footer_cha img{display:block; width:auto; max-height:120px;}

/********************/
/* index ??? css */
/********************/
.index_video{width:100%; height:1000px; overflow:hidden;}
.index_video video, .index_video img{width:100%; height:100%; object-fit:cover; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%);}
.index_contents_wrap{width:100%; max-width:1440px; margin:0 auto; margin-top:150px; margin-bottom:100px; padding:0 30px; box-sizing:border-box;}
.index_contents_head{width:100%; display:flex; justify-content: space-between; align-items:center; margin-bottom:35px;}
.index_contents_title_wrap{display:flex; gap:10px; align-items:center;}
.index_contents_titleText.big{font-size:24px; font-weight:bold;}
.index_contents_titleText.small{font-size:18px; font-weight:medium;}
.index_moreBtn a{margin-right:30px; position:relative;}
.index_moreBtn a:before{content:'+'; position:absolute; width:15px; height:15px; display:inline-flex; align-items:center; justify-content:center; color:#ffffff; border-radius:50%; background-color:#FC6A23; line-height:0px; right:-20px; top:3px; padding-bottom:2px; box-sizing:border-box;}
.index_moreBtn:hover a:before{background-color:transparent; border:1px solid #FC6A23; color:#FC6A23}
.index_dataRoom_slider_container{position:relative; width:100%;}
.index_dataRoom_slider_viewport{width:100%; overflow:hidden;}
.index_dataRoom_wrap{display:flex; flex-wrap:nowrap; gap:25px; width:100%; transition:transform 0.3s ease;}
.index_dataRoom_content{flex:0 0 calc(33.333% - 16.666px); width:calc(33.333% - 16.666px); background:#fff; border-radius:10px; overflow:hidden; border:1px solid #E7E7E7; transition: transform 0.2s ease, box-shadow 0.2s ease;}
.index_dataRoom_content:hover{box-shadow: 4px 4px 14px rgba(0, 0, 0, 0.08); transform: translateY(-2px);}
.index_dataRoom_link{display:block; color:inherit; text-decoration:none;}
.index_dataRoom_img_container{position:relative; width:100%; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 10px 10px 0px 0px; background:#F3F4F6;}
.index_dataRoom_img{width: 100%; height: 100%;}
.index_dataRoom_img img{width: 100%; height: 100%; display: block; object-fit: cover;}
.index_dataRoom_placeholder{display:flex; align-items:center; justify-content:center; width:100%; height:100%; padding:20px; box-sizing:border-box; font-size:18px; font-weight:700; color:#78350F; text-align:center; word-break:keep-all; background:linear-gradient(160deg, #FDE68A 0%, #FBBF24 100%);}
.index_dataRoom_img_bottom{position:absolute; bottom:0px; width:100%; height:70px; display:flex; align-items:flex-end; padding:10px; justify-content:space-between; pointer-events:none;}
.index_data_kind_wrap{display:flex; gap:10px; flex-wrap:wrap;}
.index_data_kind_btn, .index_data_time{display:inline-flex; background-color:rgba(255, 255, 255, 0.77); align-items:center; height:25px; font-size:14px; padding:0px 10px; border-radius:5px;}
.index_data_time{background-color:rgba(0, 0, 0, 0.77); color:#ffffff;}
.index_dataRoom_titleContainer{height:90px; width:100%; background-color:#ffffff; display:flex; align-items:center; font-weight:bold; font-size:20px; padding:0px 20px; box-sizing:border-box;}
.index_dataRoom_title{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; width:100%;}
.index_dataRoom_slider_container .index_kit_nav{top:42%;}
.index_dataRoom_empty,
.index_lesson_empty{width:100%; padding:60px 20px; text-align:center; color:#6B7280; background:#fff; border:1px dashed #D1D5DB; border-radius:12px; font-size:15px; box-sizing:border-box;}
.index_lesson_placeholder{display:flex; align-items:center; justify-content:center; width:100%; height:100%; padding:20px; box-sizing:border-box; font-size:16px; font-weight:700; color:#fff; text-align:center; word-break:keep-all; background:#9CA3AF;}
.index_kit_slider_container{position:relative; width:100%; display:flex; align-items:center; gap:20px;}
.index_kit_nav{width:60px; height:60px; border-radius:50%; background-color:#fff; border:1px solid rgba(0, 0, 0, .4); color:rgba(0, 0, 0, 0.4); font-size:28px; display:flex; align-items:center; justify-content:center; flex-shrink:0; cursor:pointer; transition:all 0.2s; position:absolute; top:37%; transform:translateY(-50%); z-index:2;}
.index_kit_nav.prev i{margin-right: 3px; margin-top: -2px;}
.index_kit_nav.next i{margin-left: 3px; margin-top: -2px;}
.index_kit_nav.prev{left:-70px;}
.index_kit_nav.next{right:-70px;}
.index_kit_nav:hover{border:1px solid rgba(0, 0, 0, 1); color:rgba(0, 0, 0, 1);}
.index_kit_nav.disabled{opacity:0; pointer-events:none;}

.index_kit_slider_viewport{width:100%; overflow:hidden;}
.index_kit_wrap{display:flex; flex-wrap:wrap; gap:25px; width:100%; transition:transform 0.3s ease;}
.index_kit_slider_viewport .index_kit_wrap{flex-wrap:nowrap;}
.index_kit_content{flex:0 0 calc(25% - 18.75px); width:calc(25% - 18.75px);}
.index_kit_img_container{position:relative; width:100%; aspect-ratio:1 / 1; overflow: hidden; border-radius: 10px;}
.index_kit_img{width: 100%; height: 100%;}
.index_kit_img img{width: 100%; height: 100%; display: block; object-fit: cover;}
.index_kit_titleContainer{height:140px; width:100%; display:flex; flex-direction:column; gap:5px; padding-top:15px;}
.index_kit_badge_wrap{display:flex; gap:5px;}
.index_kit_badge{display:inline-flex; justify-content:center; align-items:center; height:24px; border-radius:12px; font-size:12px; font-weight:bold; padding:0px 12px;}
.index_kit_badge.famous{background-color:#FFE2D2; color:#FF5900;}
.index_kit_badge.grade{background-color:#E0F4DD; color:#107200;}

/* ?? ??? ?? ?? ?? ??? */
.list_title_badges { display: flex; gap: 4px; flex-wrap: wrap; margin-bottom: 5px; }
.list_title_badges span { display: inline-flex; align-items: center; justify-content: center; height: 22px; padding: 0 10px; border-radius: 11px; font-size: 12px; font-weight: 600;}

/* ?? ???? ?? */
.badge_ca { background-color: #F6EBD9; color: #694C1B; }

/* ???? ??? */
.badge_type1 { background-color: #F1D4FF; color: #8F18D6; } /* ?? */
.badge_type2 { background-color: #D4F4E7; color: #0C9E6A; } /* ?? */
.badge_type3 { background-color: #E2F2DB; color: #44801D; } /* ??? */
.badge_type4 { background-color: #FCE6D6; color: #D53F2E; } /* ?? */
.badge_type5 { background-color: #FFE1E1; color: #D82121; } /* ?? */
.index_kit_title{font-size:20px; font-weight:bold; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; width:100%;}
.index_kit_price.before{font-size:19px; color:#B0B0B0; text-decoration:line-through;}
.index_kit_price.after{display:flex; font-weight:bold; font-size:20px; gap:10px;}
.index_kit_price.percent{color:#FF5900;}
.index_contents_full{width:100%; padding:50px 30px 80px 30px; background-color:#FFF7D9; margin:150px 0px 100px 0px; box-sizing:border-box;}
.index_contents_full .index_contents_wrap{margin:0 auto; margin-top:0; padding-left:0; padding-right:0;}
.index_lesson_wrap{display: grid; grid-template-columns: repeat(5, 1fr); grid-template-rows: 250px 300px; gap: 20px; width: 100%; max-width: 1440px; margin: 0 auto; box-sizing:border-box;}
.index_lesson_item{position: relative; border-radius: 10px; overflow: hidden; box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.07); display:block; color:inherit; text-decoration:none;}
.index_lesson_item img{width: 100%; height: 100%; object-fit: cover; display: block;}
.index_lesson_item:hover .index_lesson_item_text{opacity:1;}

.index_lesson_wrap.layout-1 .index_lesson_item:nth-child(1) { grid-area: 1 / 1 / 3 / 2; }
.index_lesson_wrap.layout-1 .index_lesson_item:nth-child(2) { grid-area: 1 / 2 / 2 / 3; }
.index_lesson_wrap.layout-1 .index_lesson_item:nth-child(3) { grid-area: 1 / 3 / 2 / 4; }
.index_lesson_wrap.layout-1 .index_lesson_item:nth-child(4) { grid-area: 1 / 4 / 2 / 6; }
.index_lesson_wrap.layout-1 .index_lesson_item:nth-child(5) { grid-area: 2 / 2 / 3 / 4; }
.index_lesson_wrap.layout-1 .index_lesson_item:nth-child(6) { grid-area: 2 / 4 / 3 / 6; }

.index_lesson_wrap.layout-2 .index_lesson_item:nth-child(1) { grid-area: 1 / 1 / 2 / 3; }
.index_lesson_wrap.layout-2 .index_lesson_item:nth-child(2) { grid-area: 1 / 3 / 2 / 5; }
.index_lesson_wrap.layout-2 .index_lesson_item:nth-child(3) { grid-area: 1 / 5 / 3 / 6; }
.index_lesson_wrap.layout-2 .index_lesson_item:nth-child(4) { grid-area: 2 / 1 / 3 / 3; }
.index_lesson_wrap.layout-2 .index_lesson_item:nth-child(5) { grid-area: 2 / 3 / 3 / 4; }
.index_lesson_wrap.layout-2 .index_lesson_item:nth-child(6) { grid-area: 2 / 4 / 3 / 5; }

.index_lesson_wrap.layout-3 .index_lesson_item:nth-child(1) { grid-area: 1 / 1 / 2 / 3; }
.index_lesson_wrap.layout-3 .index_lesson_item:nth-child(2) { grid-area: 1 / 3 / 3 / 4; }
.index_lesson_wrap.layout-3 .index_lesson_item:nth-child(3) { grid-area: 1 / 4 / 2 / 5; }
.index_lesson_wrap.layout-3 .index_lesson_item:nth-child(4) { grid-area: 1 / 5 / 2 / 6; }
.index_lesson_wrap.layout-3 .index_lesson_item:nth-child(5) { grid-area: 2 / 1 / 3 / 3; }
.index_lesson_wrap.layout-3 .index_lesson_item:nth-child(6) { grid-area: 2 / 4 / 3 / 6; }

.index_lesson_wrap.layout-4 .index_lesson_item:nth-child(1) { grid-area: 1 / 1 / 2 / 2; }
.index_lesson_wrap.layout-4 .index_lesson_item:nth-child(2) { grid-area: 1 / 2 / 2 / 3; }
.index_lesson_wrap.layout-4 .index_lesson_item:nth-child(3) { grid-area: 1 / 3 / 3 / 4; }
.index_lesson_wrap.layout-4 .index_lesson_item:nth-child(4) { grid-area: 1 / 4 / 2 / 6; }
.index_lesson_wrap.layout-4 .index_lesson_item:nth-child(5) { grid-area: 2 / 1 / 3 / 3; }
.index_lesson_wrap.layout-4 .index_lesson_item:nth-child(6) { grid-area: 2 / 4 / 3 / 6; }

.index_lesson_item_text{position: absolute; bottom: 0; width: 100%; padding: 40px 20px 20px; background: linear-gradient(to top, rgba(0,0,0,0.8), transparent); color: #fff; font-size: 16px; font-weight: bold; text-align: center;}

/*************************/
/* ????? ??? css */
/*************************/
.sub_header_banner_wrap{width:100%; height:235px; position:relative; margin-bottom:80px;}
.sub_header_banner_wrap.aboutus_banner{margin-bottom:115px;}
.sub_header_banner_wrap img{width:100%; height:100%; object-fit:cover; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%);}
.sub_header_banner_text{position:absolute; z-index:1; left:50%; top:50%; transform:translate(-50%, -50%); font-size:32px; font-weight:bold;}
.aboutus_hero_wrap{display:flex; gap:50px; align-items:center; position:relative;}
.aboutus_contents_top_right,
.aboutus_contents_top_left{flex:1 1 0; min-width:0;}
.aboutus_contents_top_right img{display:block; width:100%; height:auto; border-radius:20px;}
.aboutus_contents_top_left{display:flex; flex-direction:column; gap:10px; padding-right:160px; box-sizing:border-box;}
.aboutus_contents_top_left_text.big{font-size:35px; font-weight:600; line-height:42px;}
.aboutus_contents_top_left_text.small{font-size:20px; line-height:30px; word-break:keep-all;}
.aboutus_contents_top_left_text span{font-weight:700;}
.aboutus_pc_br{display:inline;}
.aboutus_section{margin-top:250px; overflow-x:clip;}
.aboutus_timeline_wrap{gap:15px;}
.aboutus_contents_wrap.aboutus_timeline_wrap{gap:15px;}
.aboutus_goods_section{margin-top:250px; background-color:#FFF7D9; margin-bottom:0; overflow-x:clip;}
.aboutus_goods_wrap{gap:30px;}
.pageCha{position:absolute;}
.pageCha img{display:block; width:auto; height:auto; max-width:none;}
.pageCha.aboutus_hero_cha{right:50px; bottom:0; z-index:2;}
.pageCha.aboutus_hero_cha img{width:140px; height:auto;}
.pageCha.aboutus_kit_cha{left:0; top:-70px; z-index:2; transform:translateX(-20%);}
.pageCha.aboutus_kit_cha img{width:120px; height:auto;}
.pageCha.aboutus_time_cha{right:8.6%; bottom:6.6%; transform-origin:right bottom;}
.pageCha_bg{position:absolute; width:300px; height:200px; background-color:#ffffff; border-radius:50%; right:-100px; bottom:-100px; opacity:0.25; transform-origin:right bottom;}
.aboutus_box.box2 .pageCha_bg{right:-28.7%; bottom:-22%;}

.aboutus_title_wrap{text-align:center; margin-bottom:60px; margin-top:100px;}
.aboutus_title_text.small{font-size:22px; color:#ff5900; font-weight:bold; margin-bottom:10px;}
.aboutus_title_text.big{font-size:40px; font-weight:bold; color:#000;}
.aboutus_title_inline{
    position:relative;
    display:inline-block;
    max-width:100%;
    vertical-align:bottom;
}
.aboutus_title_inline .aboutus_title_text.big{
    margin:0;
}
.aboutus_title_cha{
    position:absolute;
    left:100%;
    bottom:-8px;
    margin-left:30px;
    white-space:nowrap;
    pointer-events:none;
}
.aboutus_title_cha img{
    display:block;
    max-height:120px;
    width:auto;
}

.aboutus_contents_wrap{display:flex; gap:50px; align-items:stretch; width:100%; margin-bottom:100px; position:relative; box-sizing:border-box;}
.aboutus_box{position:relative; flex:1 1 0; min-width:0; background-color:#f8f9fa; border-radius:20px; display:flex; flex-direction:column; align-items:center; gap:25px; aspect-ratio:1 / 1;}
.aboutus_box.box2{width:25%; aspect-ratio:348 / 455; padding:45px 40px; align-items:flex-start; overflow:hidden;}
.aboutus_box_img{width:100%; height:100%;  overflow: hidden; border-radius:20px;}
.aboutus_box_img img{width:100%; height:100%; object-fit:cover;}
.aboutus_box_text{position:absolute; font-size:26px; font-weight:bold; bottom:30px; left:30px;}
/* + 버튼을 카드 사이에 두고, 바깥으로 삐져나가 가로 스크롤이 생기지 않게 함 */
.aboutus_box:not(:nth-child(3))::after{content:'+'; position:absolute; right:0; top:50%; transform:translate(50%, -50%); width:70px; height:70px; background-color:#FC6A23; color:#fff; border-radius:50%; display:flex; justify-content:center; align-items:center; font-size:50px; font-weight:bold; z-index:10; line-height:1; box-sizing:border-box; padding-bottom:6px; box-shadow:0px 3px 10px rgba(0, 0, 0, 0.1);}
.aboutus_box.box2::after{display:none;}
.aboutus_box.box2.boxNum1{background-color:#FFF4CD;}
.aboutus_box.box2.boxNum2{background-color:#FFE998;}
.aboutus_box.box2.boxNum3{background-color:#FFEF38;}
.aboutus_box.box2.boxNum4{background-color:#F7B401;}
.aboutus_box.box2 .badge{font-size:16px; height:38px; border-radius:19px; display:inline-flex; align-items:center; justify-content:center; line-height:0; padding:0px 20px; font-weight:600;}
.aboutus_box.box2.boxNum1 .badge, .aboutus_box.box2.boxNum2 .badge{background-color:#F7B401;}
.aboutus_box.box2.boxNum3 .badge, .aboutus_box.box2.boxNum4 .badge{background-color:#ffffff; color:#000000;}
.aboutus_box.box2 .titleText{font-weight:bold; font-size:35px;}
.aboutus_box.box2 .timeText{font-weight:600; font-size:70px; color:#392000; font-family:'paperlogy';}
.aboutus_box.box2 .timeText span{font-size:30px; font-family:'pretendard';}
.aboutus_goods_box{width:25%; display:flex; align-items:center; flex-direction:column; gap:20px; box-sizing:border-box;}
.aboutus_goods_img_wrap{width:100%; aspect-ratio:1 / 1; border-radius:50%; overflow:hidden; background-color:#ffffff; padding:70px; box-sizing:border-box;}
.aboutus_goods_img_wrap img{width:100%; height:100%; object-fit:cover;}
.aboutus_goods_box .badge{font-size:20px; height:46px; border-radius:23px; display:inline-flex; align-items:center; justify-content:center; line-height:0; padding:0px 25px; font-weight:600; background-color:#FFE06E;}
.aboutus_goods_box .titleText{font-weight:600; opacity:0.5; text-align:center; word-break:keep-all; line-height:1.45;}

/******************************/
/* ???? ??? ??? css */
/******************************/
/* ??? ?? ?? ??? ? */
.shop_index_wrap { max-width: 1460px; margin: 0 auto; padding: 60px 10px 100px; width:100%;}
.shop_control_bar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.shop_breadcrumb { font-size: 16px; color: #666; display:flex; align-items:center; gap:8px; font-weight:500; }
.shop_breadcrumb span { color: #2B2D30; }
.shop_breadcrumb i{color:#9CA3AF}

.shop_filters { display: flex; gap: 10px; }
.shop_filters .filter_btn { padding: 10px 24px; border: 1px solid #ddd; background: #fff; border-radius: 30px; font-size: 15px; font-weight: 500; color: #666; cursor: pointer; transition: all 0.2s; }
.shop_filters .filter_btn:hover { border-color: #FC6A23; color: #FC6A23; }
.shop_filters .filter_btn.active { background: #FC6A23; border-color: #FC6A23; color: #fff; font-weight: bold; }

.shop_search { display: flex; align-items: center; border: 1px solid #ddd; border-radius: 30px; padding: 5px 20px; width: 300px; background:#fff; }
.shop_search input { flex: 1; border: none; height: 40px; outline: none; font-size: 15px; }
.shop_search input:focus { outline: none !important; box-shadow: none !important; border: none !important; }
.shop_search button { background: none; border: none; color: #999; cursor: pointer; font-size: 18px; padding-left:10px; }

/* ??????? ?? ?????? */
.shop_pagination {
    margin-top: 50px;
    display: flex;
    justify-content: center;
}

.shop_pagination .pg_wrap {
    display: inline-flex;
    align-items: center;
    gap: 0;
    clear: none;
    float: none;
    margin: 0;
    padding: 0;
}

.shop_pagination .pg {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    float: none;
    flex-wrap: wrap;
    justify-content: center;
}

.shop_pagination a,
.shop_pagination strong,
.shop_pagination .pg_page,
.shop_pagination .pg_current {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 0;
    height: auto;
    min-height: 36px;
    margin: 0;
    padding: 0 4px;
    border: none;
    border-radius: 0;
    float: none;
    line-height: 1;
    font-weight: 500;
    font-size: 15px;
    color: #333;
    text-decoration: none;
    background: transparent;
    box-sizing: border-box;
}

/* ?? ??? */
.shop_pagination .pg_page:not(.pg_start):not(.pg_prev):not(.pg_next):not(.pg_end) {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
    padding: 0;
    border: 1px solid #E5E5E5;
    border-radius: 6px;
    background: #fff;
    color: #333;
}

.shop_pagination .pg_page:not(.pg_start):not(.pg_prev):not(.pg_next):not(.pg_end):hover {
    border-color: #FC6A23;
    color: #FC6A23;
    background: #fff;
}

.shop_pagination strong.pg_current,
.shop_pagination .pg_current {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
    padding: 0;
    border: 1px solid #FC6A23;
    border-radius: 6px;
    background: #FC6A23;
    color: #fff;
    font-weight: 700;
}

/* ??/??/??/?? */
.shop_pagination .pg_start,
.shop_pagination .pg_prev,
.shop_pagination .pg_next,
.shop_pagination .pg_end {
    gap: 4px;
    border: none !important;
    background: transparent !important;
    background-image: none !important;
    color: #333;
    text-indent: 0 !important;
    overflow: visible !important;
    white-space: nowrap;
}

.shop_pagination .pg_start {
    font-size: 0;
}

.shop_pagination .pg_start::before {
    content: "«";
    font-size: 16px;
    line-height: 1;
    color: #333;
}

.shop_pagination .pg_end {
    font-size: 0;
}

.shop_pagination .pg_end::before {
    content: "»";
    font-size: 16px;
    line-height: 1;
    color: #333;
}

.shop_pagination .pg_prev::before {
    content: "‹";
    font-size: 16px;
    line-height: 1;
    margin-right: 2px;
}

.shop_pagination .pg_next::after {
    content: "›";
    font-size: 16px;
    line-height: 1;
    margin-left: 2px;
}

.shop_pagination .pg_start:hover,
.shop_pagination .pg_prev:hover,
.shop_pagination .pg_next:hover,
.shop_pagination .pg_end:hover {
    color: #FC6A23;
    background: transparent !important;
}

.shop_pagination .pg_start:hover::before,
.shop_pagination .pg_end:hover::before,
.shop_pagination .pg_prev:hover::before,
.shop_pagination .pg_next:hover::after {
    color: #FC6A23;
}

/* ????? */
#hd_pop{z-index:1000; position:absolute; left:0; top:0; width:100%; height:0;}
#hd_pop h2{position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute; border:1px solid #e9e9e9; background:#fff; box-shadow:0 10px 40px rgba(0, 0, 0, 0.25); border-radius:10px; overflow:hidden;}
.hd_pops_title{padding: 12px 16px; border-bottom: 1px solid #eee; font-weight: 700; background: #000; color: #fff;}
.hd_pops img {max-width:100%}
.hd_pops_con {padding:16px; min-height:80px; max-height:70vh; overflow-y:auto;}
.hd_pops_footer {display:flex; justify-content:space-between; align-items:center; padding:10px 15px; background:#000; color:#fff; position:relative;}
.hd_pops_footer:after {display:none;}
.hd_pops_footer button.hd_pops_close {padding:8px 14px; border:0; color:#fff; background:#393939; cursor:pointer; margin:0;}
.hd_pops_footer label.hd_pops_reject_label {display:inline-flex; align-items:center; gap:6px; margin:0; font-size:0.9rem; color:#ccc; cursor:pointer;}
.hd_pops_footer label.hd_pops_reject_label input[type="checkbox"] {-webkit-appearance:none; -moz-appearance:none; appearance:none; width:18px; height:18px; border:1px solid #ddd; border-radius:4px; background-color:#fff; cursor:pointer; vertical-align:middle; transition:all 0.2s; display:inline-flex; align-items:center; justify-content:center; position:relative; margin:0;}
.hd_pops_footer label.hd_pops_reject_label input[type="checkbox"]:checked {background-color:#000; border-color:#000;}
.hd_pops_footer label.hd_pops_reject_label input[type="checkbox"]:checked:after {content:'\f00c'; font-family:'FontAwesome'; font-size:10px; color:#fff; position:absolute;}


/* ???? */
.carlens_cart_wrap{width:100%; max-width:1440px; display:flex; margin:0 auto; gap:50px;}
.carlens_cart_left{width:calc(100% - 390px);}
.carlens_cart_right{width:390px;}
.carlens_cart_leftTop{display:flex; align-items:center; justify-content:space-between; padding-bottom:10px; border-bottom:1px solid #919191;}
.carlens_cart_left_btn_wrap a{background-color:#FC6A23; color:#ffffff !important; font-size:16px; font-weight:600; padding:8px 12px; border-radius:5px;}

#ct_tot_price{font-weight:600; font-size:20px;}

















#hd_wrapper {position:relative;margin:0 auto;height:140px;zoom:1}
#hd_wrapper:after {display:block;visibility:hidden;clear:both;content:""}

.hd_sch_wr {float:left;padding:30px 0;width:445px;margin-left:65px}
#hd_sch h3 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#hd_sch {border-radius:30px;overflow:hidden}
#hd_sch #sch_stx {float:left;width:385px;height:45px;padding-left:10px;border-radius:30px 0 0 30px;background:#2c2c2c;border:0;border-right:0;font-size:1.25em;color:#fff}
#hd_sch #sch_submit {float:left;width:60px;height:45px;border:0;background:#2c2c2c;color:#fff;border-radius:0 30px 30px 0;cursor:pointer;font-size:16px}

#hd_define {float:left}
#hd_define:after {display:block;visibility:hidden;clear:both;content:""}
#hd_define li {float:left;font-size:1.083em;line-height:14px;border-right:1px solid #4a4a4a;position:relative;text-align:center;margin:15px 10px 15px 0;padding-right:10px}
#hd_define li:last-child {padding-right:0;margin-right:0;border-right:0}
#hd_define li a {display:inline-block;color:#919191}
#hd_define li.active a {color:#fff}


#hd_qnb {float:right;text-align:right}
#hd_qnb:after {display:block;visibility:hidden;clear:both;content:""}
#hd_qnb li {float:left;font-size:1.083em;line-height:14px;border-right:1px solid #4a4a4a;position:relative;text-align:center;margin:15px 10px 15px 0;padding-right:10px}
#hd_qnb li:last-child {padding-right:0;margin-right:0;border-right:0}
#hd_qnb li span {display:block;margin-top:5px;font-size:0.92em}
#hd_qnb li a {display:inline-block;color:#919191}
#hd_qnb .visit .visit-num {display:inline-block;line-height:16px;padding:0 5px;margin-left:5px;border-radius:10px;background:#da22f5;color:#fff;font-size:10px}


.hd_login {position:absolute;right:0;top:60px}
.hd_login li {float:left;margin:0 5px;border-left:1px solid #616161;padding-left:10px;line-height:13px}
.hd_login li:first-child {border-left:0}
.hd_login a {color:#fff}


/* ???? */
#gnb {position:relative;background:#fff}
#gnb > h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#gnb .gnb_wrap {margin:0 auto;position:relative}
#gnb .gnb_wrap:hover, #gnb .gnb_wrap:focus, #gnb .gnb_wrap:active{z-index:3}
#gnb #gnb_1dul {font-size:1.083em;padding:0;border-bottom:1px solid #e0e2e5;zoom:1}
#gnb ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb .gnb_1dli {float:left;line-height:55px;padding:0px;position:relative}
#gnb .gnb_1dli:hover > a {color:#3a8afd;
-webkit-transition:background-color 2s ease-out;
-moz-transition:background-color 0.3s ease-out;
-o-transition:background-color 0.3s ease-out;
transition:background-color 0.3s ease-out}

.gnb_1dli .bg {position:absolute;top:24px;right:8px;display:inline-block;width:10px;height:10px;overflow:hidden;background:url('../img/gnb_bg2.gif') no-repeat 50% 50%;text-indent:-999px}
.gnb_1da {display:block;font-weight:bold;padding:0 15px;color:#080808;text-decoration:none}
.gnb_1dli.gnb_al_li_plus .gnb_1da{padding-right:25px}
.gnb_2dli:first-child {border:0}
.gnb_2dul {display:none;position:absolute;top:54px;min-width:140px;padding-top:2px}
.gnb_2dul .gnb_2dul_box {border:1px solid #e0e2e5;border-top:0;padding:0;
-webkit-box-shadow:0px 1px 5px rgba(97, 97, 97, 0.2);
-moz-box-shadow:0px 1px 5px rgba(97, 97, 97, 0.2);
box-shadow:0px 1px 5px rgba(97, 97, 97, 0.2)}
.gnb_2da {display:block;padding:0 10px;line-height:40px;background:#fff;color:#080808;text-align:left;text-decoration:none}
a.gnb_2da:hover {color:#3a8afd;background:#f7f7f8;
-moz-transition:all 0.3s ease-out;
-o-transition:all 0.3s ease-out;
transition:all 0.3s ease-out}

.gnb_1dli_air .gnb_2da {}
.gnb_1dli_on .gnb_2da {}
.gnb_2da:focus, .gnb_2da:hover {color:#fff}
.gnb_1dli_over .gnb_2dul {display:block;left:0}
.gnb_1dli_over2 .gnb_2dul {display:block;right:0}
.gnb_wrap .gnb_empty {padding:10px 0;width:100%;text-align:center;line-height:2.7em;color:#080808}
.gnb_wrap .gnb_empty a {color:#3a8afd;text-decoration:underline}
.gnb_wrap .gnb_al_ul .gnb_empty, .gnb_wrap .gnb_al_ul .gnb_empty a {color:#555}

#gnb .gnb_menu_btn {background:#4158d1;color:#fff;width:50px;height:55px;border:0;vertical-align:top;font-size:18px}
#gnb .gnb_close_btn {background:#fff;color:#b6b9bb;width:50px;height:50px;border:0;vertical-align:top;font-size:18px;position:absolute;top:0;right:0}
#gnb .gnb_mnal {float:right;padding:0}

#gnb_all {display:none;position:absolute;border:1px solid #c5d6da;width:100%;background:#fff;z-index:1000;-webkit-box-shadow:0 2px 5px rgba(0,0,0,0.2);
-moz-box-shadow:0 2px 5px rgba(0,0,0,0.2);
box-shadow:0 2px 5px rgba(0,0,0,0.2)}
#gnb_all h2 {font-size:1.3em;padding:15px 20px;border-bottom:1px solid #e7eeef}
#gnb_all .gnb_al_ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb_all .gnb_al_ul > li:nth-child(5n+1) {border-left:0}
#gnb_all .gnb_al_li {float:left;width:20%;min-height:150px;padding:20px;border-left:1px solid #e7eeef}
#gnb_all .gnb_al_li .gnb_al_a {font-size:1.2em;display:block;position:relative;margin-bottom:10px;font-weight:bold;color:#3a8afd}
#gnb_all .gnb_al_li li {line-height:2em}
#gnb_all .gnb_al_li li a {color:#555}
#gnb_all_bg {display:none;background:rgba(0,0,0,0.1);width:100%;height:100%;position:fixed;left:0;top:0;z-index:999}


#aside {float:right;width:235px;padding:0;height:100%;margin:20px 0 20px 20px}

#container {position:relative;float:left;min-height:500px;height:auto !important;margin:20px 0;font-size:1em;width:930px;zoom:1}
#container:after {display:block;visibility:hidden;clear:both;content:""}
#container_title {font-size:1.333em;margin:0 auto;font-weight:bold}
#container_title span {margin:0 auto 10px;display:block;line-height:30px}

.lt_wr {width:32%}
.lt_wr:nth-child(3n+1) {clear:both}
.latest_wr {margin-bottom:20px}
.latest_wr:after {display:block;visibility:hidden;clear:both;content:""}
.latest_top_wr {margin:0 -10px 20px}
.latest_top_wr:after {display:block;visibility:hidden;clear:both;content:""}



/* ??? ???? ???? */
#copymove {}
#copymove .win_desc {text-align:center;display:block}
#copymove .tbl_wrap {margin:20px}
#copymove .win_btn {padding:0 20px 20px}
.copymove_current {float:right;background:#ff3061;padding:5px;color:#fff;border-radius:3px}
.copymove_currentbg {background:#f4f4f4}

/* ????? ???? */
#hd_login_msg {position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;width:0;height:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}

/* ?? ???? */
#skip_to_container a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skip_to_container a:focus, #skip_to_container a:active {width:100%;height:75px;background:#21272e;color:#fff;font-size:2em;font-weight:bold;text-align:center;text-decoration:none;line-height:3.3em}

/* ie6 ??? ?? ?? */
.img_fix {width:100%;height:auto}

/* ?? ????(??)?? ?? -pc */
#captcha {display:inline-block;position:relative}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
#captcha #captcha_img {height:40px;border:1px solid #898989;vertical-align:top;padding:0;margin:0}
#captcha #captcha_mp3 {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat;text-indent:-999px;border-radius:3px}
#captcha #captcha_reload {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat 0 -40px;text-indent:-999px;border-radius:3px}
#captcha #captcha_key {margin:0 0 0 3px;padding:0 5px;width:90px;height:40px;border:1px solid #ccc;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;border-radius:3px;vertical-align:top}
#captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}

/* ?? ????(??)?? ?? - mobile */
#captcha.m_captcha audio {display:block;margin:0 0 5px;width:187px}
#captcha.m_captcha #captcha_img {width:160px;height:60px;border:1px solid #e9e9e9;margin-bottom:3px;margin-top:5px;display:block}
#captcha.m_captcha #captcha_reload {position:static;margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat 0 -40px;text-indent:-999px}
#captcha.m_captcha #captcha_reload span {display:none}
#captcha.m_captcha #captcha_key {margin:0;padding:0 5px;width:115px;height:29px;border:1px solid #b8c9c2;background:#f7f7f7;font-size:1.333em;font-weight:bold;text-align:center;line-height:29px;margin-left:3px}
#captcha.m_captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}
#captcha.m_captcha #captcha_mp3 {width:31px;height:31px;background:url('../../../img/captcha2.png') no-repeat 0 0 ; vertical-align:top;overflow:hidden;cursor:pointer;text-indent:-9999px;border:none}

/* ckeditor ??? */
.cke_sc {margin:0 0 5px;text-align:right}
.btn_cke_sc {display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;line-height:1.9em;vertical-align:middle;cursor:pointer}
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl {margin:0 0 5px;text-align:left;zoom:1}
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt, .cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid #e9e9e9}
.cke_sc_def dt {width:20%;font-weight:bold}
.cke_sc_def dd {width:30%}

/* ckeditor ?? ??? */
#bo_v_con ul {display:block;list-style-type:disc;margin-top:1em;margin-bottom:1em;margin-left:0;margin-right:0;padding-left:40px}
#bo_v_con ol {display:block;list-style-type:decimal;margin-top:1em;margin-bottom:1em;margin-left:0;margin-right:0;padding-left:40px}
#bo_v_con li {display:list-item}

/* ?? */
a.btn,.btn {line-height:35px;height:35px;padding:0 10px;text-align:center;font-weight:bold;border:0;font-size:1.4em;
-webkit-transition:background-color 0.3s ease-out;
-moz-transition:background-color 0.3s ease-out;
-o-transition:background-color 0.3s ease-out;
transition:background-color 0.3s ease-out}

a.btn01 {display:inline-block;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;vertical-align:middle}
a.btn01:focus, a.btn01:hover {text-decoration:none}
button.btn01 {display:inline-block;margin:0;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none}
a.btn02 {display:inline-block;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none;vertical-align:middle}
a.btn02:focus, .btn02:hover {text-decoration:none}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none}

.btn_confirm {text-align:right} /* ???? ?? */

.btn_submit {border:0;background:#3a8afd;color:#fff;cursor:pointer;border-radius:3px}
.btn_submit:hover {background:#2375eb}
.btn_close {border:1px solid #dcdcdc;cursor:pointer;border-radius:3px;background:#fff}
a.btn_close {text-align:center;line-height:50px}

a.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle}
button.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle}
.btn_cancel:hover {background:#aaa}
a.btn_frmline, button.btn_frmline {display:inline-block;width:128px;padding:0 5px;height:40px;border:0;background:#434a54;border-radius:3px;color:#fff;text-decoration:none;vertical-align:top} /* ???????? ? */
a.btn_frmline {}
button.btn_frmline {font-size:1em}

/* ???? ?? */
a.btn_b01,.btn_b01 {display:inline-block;color:#bababa;text-decoration:none;vertical-align:middle;border:0;background:transparent}
.btn_b01:hover, .btn_b01:hover {color:#000}
a.btn_b02,.btn_b02 {display:inline-block;background:#253dbe;padding:0 10px;color:#fff;text-decoration:none;border:0;vertical-align:middle}
a.btn_b02:hover, .btn_b02:hover {background:#0025eb}
a.btn_b03, .btn_b03 {display:inline-block;background:#fff;border:1px solid #b9bdd3;color:#646982;text-decoration:none;vertical-align:middle}
a.btn_b03:hover, .btn_b03:hover {background:#ebedf6}
a.btn_b04, .btn_b04 {display:inline-block;background:#fff;border:1px solid #ccc;color:#707070;text-decoration:none;vertical-align:middle}
a.btn_b04:hover, .btn_b04:hover {color:#333;background:#f9f9f9}
a.btn_admin,.btn_admin {display:inline-block;color:#d13f4a;text-decoration:none;vertical-align:middle} /* ??? ?? ?? */
.btn_admin:hover, a.btn_admin:hover {color:#ff3746}


/* ????? */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0 5px;background:#fff;border-top:1px solid #ececec;border-bottom:1px solid #ececec} 
.tbl_wrap caption {padding:10px 0;font-weight:bold;text-align:left}
.tbl_head01 {margin:0 0 10px}
.tbl_head01 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head01 thead th {padding:20px 0;font-weight:normal;text-align:center;border-bottom:1px solid #ececec;height:40px}
.tbl_head01 thead th input {vertical-align:top} /* middle ? ?? ??? ???? ?? ??? ???? ?? ?? */
.tbl_head01 tfoot th, .tbl_head01 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head01 tbody th {padding:8px 0;border-bottom:1px solid #e8e8e8}
.tbl_head01 td {color:#666;padding:10px 5px;border-top:1px solid #ecf0f1;border-bottom:1px solid #ecf0f1;line-height:1.4em;height:60px;word-break:break-all}
.tbl_head01 tbody tr:hover td {background:#fafafa}
.tbl_head01 a:hover {text-decoration:underline}

.tbl_head02 {margin:0 0 10px}
.tbl_head02 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head02 thead th {padding:5px 0;border-top:1px solid #d1dee2;border-bottom:1px solid #d1dee2;background:#e5ecef;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head02 thead a {color:#383838}
.tbl_head02 thead th input {vertical-align:top} /* middle ? ?? ??? ???? ?? ??? ???? ?? ?? */
.tbl_head02 tfoot th, .tbl_head02 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head02 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff}
.tbl_head02 td {padding:5px 3px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff;line-height:1.4em;word-break:break-all}
.tbl_head02 a {}

/* ? ??? */
.tbl_frm01 {margin:0 0 20px}
.tbl_frm01 table {width:100%;border-collapse:collapse;border-spacing:0}
.tbl_frm01 th {width:70px;padding:7px 13px;border:1px solid #e9e9e9;border-left:0;background:#f5f8f9;text-align:left}
.tbl_frm01 td {padding:7px 10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:transparent}
.wr_content textarea,.tbl_frm01 textarea,.form_01 textarea, .frm_input {border:1px solid #d0d3db;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;
-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
}
.tbl_frm01 textarea {padding:2px 2px 3px}
.frm_input {height:40px}

.full_input {width:100%}
.half_input {width:49.5%}
.twopart_input {width:385px;margin-right:10px}
.tbl_frm01 textarea, .write_div textarea {width:100%;height:100px}
.tbl_frm01 a {text-decoration:none}
.tbl_frm01 .frm_file {display:block;margin-bottom:5px}
.tbl_frm01 .frm_info {display:block;padding:0 0 5px;line-height:1.4em}
.frm_info.add_info { margin-top: 10px !important; padding: 8px 12px; background: #fff; border: 1px solid #ddd; border-radius: 6px; line-height: 1.6; }
.btn_info_toggle { display: block; margin: 5px 0 0 21px; font-size: 12px; color: #3f51b5; background: none; border: none; cursor: pointer; text-decoration: underline; }

/*?? ???*/
.list_01 ul {border-top:1px solid #ececec}
.list_01 li {border-bottom:1px solid #ececec;background:#fff;padding:10px 15px;list-style:none;position:relative}
.list_01 li:nth-child(odd) {background:#f6f6f6}
.list_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.list_01 li:hover {background:#f9f9f9}
.list_01 li.empty_li {text-align:center;padding:20px 0;color:#666}

/*? ???*/
.form_01 h2 {font-size:1.167em}
.form_01 li {margin-bottom:10px}
.form_01 ul:after,
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 .left_input {float:left}
.form_01 .margin_input {margin-right:1%}
.form_01 textarea {height:100px;width:100%}
.form_01 .frm_label {display:inline-block;width:130px}

/* ?? ?? ?? */
.empty_table {padding:50px 0 !important;text-align:center}
.empty_list {padding:20px 0 !important;color:#666;text-align:center}

/* ???? */
.required, textarea.required {background-image:url('../img/require.png') !important;background-repeat:no-repeat !important;background-position:right top !important}

/* ??? ??? ?? */
.td_board {width:80px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:110px;text-align:center}
.td_group {width:80px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#ccc}
.txt_rdy {color:#8abc2a}

/* ?? ?? ??? */
.new_win {position:relative}
.new_win .tbl_wrap {margin:0 20px}
.new_win #win_title {font-size:1.3em;height:50px;line-height:30px;padding:10px 20px;background:#fff;color:#000;-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);
-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);
box-shadow:0 1px 10px rgba(0,0,0,.1)}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win .win_ul {margin-bottom:15px;padding:0 20px}
.new_win .win_ul:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_ul li {float:left;background:#fff;text-align:center;padding:0 10px;border:1px solid #d6e9ff;border-radius:30px;margin-left:5px}
.new_win .win_ul li:first-child {margin-left:0}
.new_win .win_ul li a {display:block;padding:8px 0;color:#6794d3}
.new_win .win_ul .selected {background:#3a8afd;border-color:#3a8afd;position:relative;z-index:5}
.new_win .win_ul .selected a {color:#fff;font-weight:bold}
.new_win .win_desc {position:relative;margin:10px;border-radius:5px;font-size:1em;background:#f2838f;color:#fff;line-height:50px;text-align:left;padding:0 20px}
.new_win .win_desc i {font-size:1.2em;vertical-align:baseline}
.new_win .win_desc:after {content:"";position:absolute;left:0;top:0;width:4px;height:50px;background:#da4453;border-radius:3px 0 0 3px}
.new_win .frm_info {font-size:0.92em;color:#919191}
.new_win .win_total {float:right;display:inline-block;line-height:30px;font-weight:normal;font-size:0.75em;color:#3a8afd;background:#f6f6f6;padding:0 10px;border-radius:5px}
.new_win .new_win_con {margin:20px 0;padding:20px}
.new_win .new_win_con:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .new_win_con2 {margin:20px 0}
.new_win .btn_confirm:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_btn {text-align:center}
.new_win .cert_btn {margin-bottom:30px;text-align:center}
.new_win .btn_close {padding:0 20px;height:45px;overflow:hidden;cursor:pointer}
.new_win .btn_submit {padding:0 20px;height:45px;font-weight:bold;font-size:1.083em}

/* ???? ?? */
.sch_word {color:#fff;background:#ff005a;padding:2px 5px 3px;line-height:18px;margin:0 2px}

/* ?????? alert ?? */
#validation_check {margin:100px auto;width:500px}
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:#fff}

/* ???? */
.sv_wrap {position:relative;font-weight:normal}
.sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;font-size:0.92em;background:#333;
-webkit-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2)}
.sv_wrap .sv:before {content:"";position:absolute;top:-6px;left:15px;width:0;height:0;border-style:solid;border-width:0 6px 6px 6px;border-color:transparent transparent #333 transparent}
.sv_wrap .sv a {display:inline-block;margin:0;padding:0 10px;line-height:30px;width:100px;font-weight:normal;color:#bbb}
.sv_wrap .sv a:hover {background:#000;color:#fff}
.sv_member {color:#333}
.sv_on {display:block !important;position:absolute;top:23px;left:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* ??? */
.pg_wrap {clear:both;float:left;display:inline-block}
.pg_wrap:after {display:block;visibility:hidden;clear:both;content:""} 
.pg {text-align:center}
.pg_page, .pg_current {display:inline-block;vertical-align:middle;background:#eee;border:1px solid #eee}
.pg a:focus, .pg a:hover {text-decoration:none}
.pg_page {color:#959595;font-size:1.083em;height:30px;line-height:28px;padding:0 5px;min-width:30px;text-decoration:none;border-radius:3px}
.pg_page:hover {background-color:#fafafa}
.pg_start {text-indent:-999px;overflow:hidden;background:url('../img/btn_first.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_prev {text-indent:-999px;overflow:hidden;background:url('../img/btn_prev.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_end {text-indent:-999px;overflow:hidden;background:url('../img/btn_end.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_next {text-indent:-999px;overflow:hidden;background:url('../img/btn_next.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_start:hover,.pg_prev:hover,.pg_end:hover,.pg_next:hover {background-color:#fafafa}

.pg_current {display:inline-block;background:#3a8afd;border:1px solid #3a8afd;color:#fff;font-weight:bold;height:30px;line-height:30px;padding:0 10px;min-width:30px;border-radius:3px}

/* cheditor ?? */
.cheditor-popup-window *, .cheditor-popup-window :after, .cheditor-popup-window :before {
-webkit-box-sizing:content-box;
-moz-box-sizing:content-box;
box-sizing:content-box;
}

/* Mobile???? */
#device_change {display:block;margin:0.3em;padding:0.5em 0;border:1px solid #eee;border-radius:2em;background:#fff;color:#000;font-size:2em;text-decoration:none;text-align:center}



/* ???? ??? ??? */
.carlens_cart_leftBody { margin-top:20px; }
.cart_item_wrap { display:flex; justify-content:space-between; align-items:flex-start; padding:20px 0; border-bottom:1px solid #E5E7EB; }
.cart_item_left { display:flex; align-items:flex-start; gap:20px; flex:1; }
.cart_item_chk { margin-top:5px; }
/* ??? ???? */
.selec_chk { display:none !important; }
.selec_chk + label span { display:inline-block; width:24px; height:24px; background:#fff; border:1px solid #D1D5DB; border-radius:4px; vertical-align:middle; cursor:pointer; position:relative; }
.selec_chk:checked + label span { background:#FC6A23; border-color:#FC6A23; }
.selec_chk:checked + label span:after { content:""; position:absolute; left:8px; top:4px; width:6px; height:11px; border:solid white; border-width:0 2px 2px 0; transform:rotate(45deg); }
.carlens_cart_leftTop label { cursor:pointer; font-size:16px; font-weight:600; color:#111; vertical-align:middle; display:inline-flex; align-items:center; gap:10px; margin:0; }

.cart_item_img { width:150px; height:150px; border-radius:10px; overflow:hidden; border:1px solid #E5E7EB; flex-shrink:0; }
.cart_item_img img { width:100%; height:100%; object-fit:cover; }

.cart_item_text { display:flex; flex-direction:column; gap:8px; }
.cart_item_badge { background:#FEEBC8; color:#9C4221; font-size:12px; padding:4px 8px; border-radius:4px; display:inline-block; font-weight:600; width:max-content; }
.cart_item_titleText a { font-size:20px; font-weight:600; color:#333; text-decoration:none; }
.cart_item_subTitleText { font-size:20px; color:#333333; }

.cart_item_qty_wrap { display:inline-flex; align-items:center; border:1px solid #D1D5DB; border-radius:4px; overflow:hidden; width:max-content; margin-top:5px; }
.cart_item_qty_wrap button { width:32px; height:32px; background:#F3F4F6; border:none; color:#4B5563; font-size:16px; cursor:pointer; outline:none; }
.cart_item_qty_wrap .qty_input { width:40px; height:32px; border:none; border-left:1px solid #D1D5DB; border-right:1px solid #D1D5DB; text-align:center; font-size:14px; outline:none; background:#fff; color:#111; margin:0; padding:0; }

.cart_item_price_wrap { display:flex; gap:10px; margin-top:5px; align-items:center;}
.cart_item_price_wrap .price_original { font-size:16px; color:#9CA3AF; text-decoration:line-through; }
.cart_item_price_wrap .price_current { display:flex; align-items:center; gap:10px; font-size:20px; font-weight:700; color:#111; }
.cart_item_price_wrap .discount_rate { color:#EF4444; font-size:16px;}

.cart_item_right { padding-left:20px; }
.cart_item_del { background:none; border:none; color:#9CA3AF; font-size:20px; cursor:pointer; padding:5px; outline:none; }
.cart_item_del:hover { color:#EF4444; }

/* ??? ?? ?? */
.carlens_cart_right { position: sticky; top: 20px; }
.carlens_cart_right_summary { background:#F9FAFB; border-radius:12px; padding:30px; }
.carlens_cart_right_summary h3 { font-size:20px; font-weight:600; color:#000; margin-bottom:20px; border-bottom:1px solid #E5E7EB; padding-bottom:15px; margin-top:0; }
.carlens_cart_right_summary ul.summary_list { list-style:none; padding:0; margin:0; }
.carlens_cart_right_summary ul.summary_list li { display:flex; justify-content:space-between; margin-bottom:15px; font-size:16px; color:#333333; font-weight:600;}
.carlens_cart_right_summary li .badge_free { background:#E5E7EB; font-size:11px; padding:2px 6px; border-radius:4px; margin-left:5px; color:#4B5563; }
.carlens_cart_right_summary li .discount { color:#EA580C; }
.carlens_cart_right_summary .total { display:flex; justify-content:space-between; align-items:center; margin-top:25px; padding-top:20px; border-top:1px solid #E5E7EB; font-size:16px; font-weight:700; color:#111; }
.carlens_cart_right_summary .total strong { font-size:24px; }
#summary_tot_price{font-size:24px; font-weight:600;}

.carlens_cart_right .btn_order { display:block; width:100%; background:#FC6A23; color:#fff; border:none; padding:18px 0; border-radius:8px; font-size:18px; font-weight:700; cursor:pointer; margin-top:15px; text-align:center; text-decoration:none; box-sizing:border-box;}
.carlens_cart_right .btn_order:hover { background:#C2410C; }
.carlens_cart_right .summary_notice { font-size:13px; color:#9CA3AF; text-align:center; margin-top:15px; }

.empty_table { text-align:center; padding:100px 0; font-size:16px; color:#6B7280; }
.carlens_cart_left_btn_wrap a { color:#4B5563; text-decoration:none; font-size:14px; font-weight:500; }

/* ??? */
.carlens_wish_page .wish_count_label {
    font-size:16px;
    font-weight:600;
    color:#111;
}
.carlens_wish_page .wish_date {
    font-size:14px;
    color:#9CA3AF;
}
.carlens_wish_page .wish_soldout_mark {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:24px;
    height:24px;
    padding:0 6px;
    border-radius:4px;
    background:#FEE2E2;
    color:#B91C1C;
    font-size:11px;
    font-weight:700;
}
.carlens_wish_page .cart_item_wrap.is_soldout {
    opacity:0.72;
}
.carlens_wish_page .cart_item_del {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:#9CA3AF;
}
.carlens_wish_page .cart_item_del:hover {
    color:#EF4444;
}
.carlens_wish_page .btn_order_secondary {
    background:#fff !important;
    color:#111 !important;
    border:1px solid #D1D5DB;
    margin-top:10px;
}
.carlens_wish_page .btn_order_secondary:hover {
    background:#F9FAFB !important;
    color:#111 !important;
}
.carlens_wish_page .carlens_cart_right_summary .summary_notice {
    text-align:left;
    margin-top:18px;
    line-height:1.5;
}

@media (max-width: 900px) {
    .carlens_cart_wrap {
        flex-direction: column;
        gap: 30px;
        padding: 0 16px;
        box-sizing: border-box;
    }
    .carlens_cart_left,
    .carlens_cart_right {
        width: 100%;
    }
    .carlens_cart_right {
        position: static;
    }
    .cart_item_img {
        width: 100px;
        height: 100px;
    }
    .cart_item_titleText a {
        font-size: 16px;
    }
    .cart_item_price_wrap .price_current {
        font-size: 16px;
    }
    .carlens_wish_page .wish_mobile_title {
        margin: 0 0 16px;
        padding: 0 16px;
        font-size: 22px;
        font-weight: 700;
    }
    .carlens_wish_page .wish_mobile_title span {
        color: #FC6A23;
    }
    .carlens_wish_mobile .carlens_cart_leftTop {
        margin: 0 16px 8px;
        padding-bottom: 12px;
    }
    .carlens_wish_mobile .cart_item_wrap {
        padding: 16px;
    }
    .carlens_wish_mobile .wish_mobile_act {
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 16px;
        margin-bottom: 40px;
    }
    .carlens_wish_mobile .wish_mobile_act .btn_order {
        margin-top: 0;
    }
}

/* ??? ?? ?? ? */
.cart_option_row { display:flex; align-items:center; gap:15px; margin-top:8px; background:#f9fafb; padding:10px 15px; border-radius:6px; border:1px solid #e5e7eb; font-weight:600;}
.cart_option_row .opt_name { font-size:16px; color:#333333; flex:1; }
.opt_qty_control { display:inline-flex; align-items:center; border:1px solid #D1D5DB; border-radius:4px; overflow:hidden; width:max-content; background:#fff; }
.opt_qty_control button { width:28px; height:28px; background:#F3F4F6; border:none; color:#4B5563; font-size:18px; cursor:pointer; outline:none; }
.opt_qty_control .opt_qty_input { width:36px; height:28px; border:none; border-left:1px solid #D1D5DB; border-right:1px solid #D1D5DB; text-align:center; font-size:13px; outline:none; color:#111; margin:0; padding:0; }

.btn_opt_del { background:none; border:none; color:#9CA3AF; font-size:16px; cursor:pointer; padding:5px; outline:none; margin-left:10px; }
.btn_opt_del:hover { color:#EF4444; }


.sod_frm_pc { width:100%; max-width:1440px; margin:0 auto; padding:0 40px 60px; }

/* ??? ????: ??(?) + ???(sticky ????) */
.order_layout_wrap { display:flex; gap:30px; align-items:flex-start; }
.order_layout_left { flex:1; min-width:0; display:flex; flex-direction:column; gap:30px; }
.order_layout_right { width:340px; flex-shrink:0; position:sticky; top:90px; align-self:flex-start; }
.order_layout_pay { width:100%; margin-top:0; box-sizing:border-box; }
.order_layout_settle { width:100%; margin-top:0; box-sizing:border-box; }

/* ??? / ??? ?? ?? */
.order_info_row { display:flex; gap:24px; margin-bottom:0; }
.order_info_row_taker_only { display:block; }
.order_info_row_taker_only > section { width:100%; }
.sod_frm_orderer_hidden { display:none !important; }
.sod_frm_taker_head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; padding-bottom:14px; border-bottom:1px solid #F3F4F6; }
.sod_frm_taker_head h2 { margin:0; padding:0; border:none; font-size:16px; font-weight:700; color:#111; }
.sod_frm_taker_head .btn_frmline,
.sod_frm_taker_head .btn_taker_change { display:inline-block; width:auto; height:auto; margin:0; padding:5px 10px; border:1px solid #D1D5DB; border-radius:6px; background:#fff; color:#374151; font-size:12px; font-weight:500; text-decoration:none; line-height:1.3; vertical-align:middle; box-sizing:border-box; }
.sod_frm_taker_head .btn_frmline:hover,
.sod_frm_taker_head .btn_taker_change:hover { border-color:#FC6A23; color:#FC6A23; }
.taker_view { min-height:72px; }
.taker_view_empty { padding:28px 8px; color:#9CA3AF; font-size:15px; text-align:left; }
.taker_view_info { display:flex; flex-direction:column; gap:8px; }
.taker_view_name { font-size:18px; font-weight:700; color:#111; line-height:1.4; }
.taker_view_phone,
.taker_view_addr { font-size:14px; color:#6B7280; line-height:1.5; word-break:keep-all; }
.taker_memo_wrap { margin-top:20px; padding-top:18px; border-top:1px solid #F3F4F6; }
.taker_memo_wrap label { display:block; margin-bottom:8px; font-size:13px; font-weight:600; color:#6B7280; }
.taker_memo_wrap textarea { width:100%; min-height:96px; border:1px solid #D1D5DB; border-radius:8px; padding:12px; font-size:14px; color:#111; outline:none; resize:vertical; box-sizing:border-box; }
.order_info_row > section { flex:1; min-width:0; background:#fff; border:1px solid #E5E7EB; border-radius:16px; padding:28px; margin:0; box-sizing:border-box; }
.order_info_row > section h2 { font-size:16px; font-weight:700; color:#111; position:static; line-height:1.4; }
#sod_frm_taker .sod_frm_taker_head + .tbl_frm01 { margin-top:0; }

/* ???/??? ? ??? */
.order_info_row .tbl_frm01 { overflow:visible; margin:0; padding:0 !important; }
.order_info_row .tbl_frm01 table { width:100%; border-collapse:collapse; table-layout:fixed; }
.order_info_row .tbl_frm01 th { width:80px; font-size:13px; color:#6B7280; font-weight:600; text-align:left; padding:8px 10px 8px 0; vertical-align:top; padding-top:13px; border:none; background:transparent; line-height:1.4; white-space:nowrap; }
.order_info_row .tbl_frm01 td { padding:6px 0; border:none; background:transparent; line-height:normal; vertical-align:middle; }
.order_info_row .frm_input { width:100%; border:1px solid #D1D5DB; border-radius:8px; padding:9px 12px; font-size:14px; color:#111; outline:none; box-sizing:border-box; height:auto; line-height:1.4; }
.order_info_row #od_name,
.order_info_row #od_tel,
.order_info_row #od_hp,
.order_info_row #od_pwd,
.order_info_row #od_b_name,
.order_info_row #od_b_tel,
.order_info_row #od_b_hp,
.order_info_row #ad_subject,
.order_info_row #od_hope_date,
.order_info_row #od_email { width:100%; }
.order_info_row #od_zip,
.order_info_row #od_b_zip { width:90px; display:inline-block; vertical-align:middle; }
.order_info_row .frm_address { display:block; margin-top:6px; width:100%; }
.order_info_row .btn_address { background:#F3F4F6; border:1px solid #D1D5DB; color:#374151; border-radius:6px; padding:9px 12px; font-size:13px; cursor:pointer; outline:none; margin-left:6px; white-space:nowrap; width:auto; height:auto; vertical-align:middle; }
.order_info_row .btn_address:hover { background:#E5E7EB; }
.order_info_row textarea { width:100%; border:1px solid #D1D5DB; border-radius:8px; padding:9px 12px; font-size:14px; color:#111; outline:none; min-height:70px; resize:none; box-sizing:border-box; }
.order_info_row .ad_sel { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.order_info_row .ad_sel input { display:none; }
.order_info_row .ad_sel label { font-size:13px; padding:5px 10px; border:1px solid #D1D5DB; border-radius:20px; cursor:pointer; color:#6B7280; }
.order_info_row .ad_sel input:checked + label { border-color:#FC6A23; color:#FC6A23; background:#FFF7F3; }
.order_info_row .order_choice_place { position:relative; background:#F9FAFB; border:1px solid #E5E7EB; border-radius:8px; padding:12px 14px; line-height:1.8; }
.order_info_row .order_choice_place label { margin-right:10px; font-size:13px; color:#374151; }
.order_info_row .order_choice_place .btn_frmline { float:none; position:static; display:inline-block; margin-left:8px; padding:4px 10px; height:auto; line-height:1.4; }

/* ?? ?? ?? - ??? */
.od_prd_list.order_item_list,
.order_item_list { background:#fff; border:1px solid #E5E7EB; border-radius:16px; overflow:hidden; margin-bottom:0; display:flex; flex-direction:column; gap:0; padding:8px 0; }
.order_item_card { background:#fff; border:none; border-radius:0; padding:20px 24px; box-sizing:border-box; position:relative; }
.order_item_card + .order_item_card { border-top:1px solid #F3F4F6; }
.order_item_body { display:flex; align-items:flex-start; gap:14px; margin-bottom:12px; }
.order_item_thumb { width:80px; height:80px; border-radius:8px; overflow:hidden; border:1px solid #E5E7EB; flex-shrink:0; background:#F9FAFB; }
.order_item_thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.order_item_info { flex:1; min-width:0; }
.order_item_name { font-size:15px; font-weight:600; color:#111; line-height:1.45; word-break:keep-all; }
.order_item_info .cp_btn,
.order_item_info .cp_cancel { margin-top:8px; margin-right:6px; padding:5px 10px; border:1px solid #D1D5DB; border-radius:6px; background:#fff; font-size:12px; color:#374151; cursor:pointer; }
.order_item_info .cp_btn:hover,
.order_item_info .cp_cancel:hover { border-color:#FC6A23; color:#FC6A23; }
.order_item_info .cp_applied_name { display:inline-flex; align-items:center; max-width:min(100%, 280px); margin-top:8px; margin-right:8px; padding:5px 10px; background:#FFF7F3; border:1px solid #FDBA74; border-radius:6px; font-size:12px; font-weight:600; color:#C2410C; line-height:1.3; vertical-align:middle; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.order_item_detail { background:#F7F8FA; border-radius:10px; padding:14px 16px; display:flex; justify-content:space-between; align-items:flex-end; gap:16px; }
.order_item_meta { display:flex; flex-direction:column; gap:8px; flex:1; min-width:0; }
.order_item_meta_row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.order_item_badge { display:inline-flex; align-items:center; justify-content:center; padding:2px 8px; border:1px solid #D1D5DB; border-radius:4px; background:#fff; font-size:12px; color:#6B7280; font-weight:600; white-space:nowrap; }
.order_item_meta_text { font-size:13px; color:#374151; line-height:1.4; }
.order_item_price { display:flex; align-items:baseline; justify-content:flex-end; gap:8px; flex-shrink:0; white-space:nowrap; }
.order_item_price_origin { font-size:13px; color:#9CA3AF; text-decoration:line-through; font-weight:500; }
.order_item_price_sell { font-size:16px; font-weight:700; color:#111; }
.order_item_price_sell .total_price { font-size:16px; font-weight:700; color:#111; }

/* ?? ?? ?? ?? */
body.coupon_modal_open { overflow:hidden; }
.od_coupon_modal { position:fixed; inset:0; z-index:10000; display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(17,24,39,0.45); box-sizing:border-box; }
.od_coupon_modal #cp_frm,
.od_coupon_modal .od_coupon { position:relative; width:100%; max-width:520px; max-height:min(80vh, 560px); margin:0; background:#fff; border:1px solid #E5E7EB; border-radius:16px; box-shadow:0 20px 50px rgba(0,0,0,0.18); overflow:hidden; display:flex; flex-direction:column; }
.od_coupon_modal_head { display:flex; align-items:center; justify-content:space-between; padding:0 8px 0 20px; border-bottom:1px solid #E5E7EB; flex-shrink:0; }
.od_coupon_modal_head h3 { margin:0; padding:0; border:none; line-height:56px; font-size:17px; font-weight:700; color:#111; }
.od_coupon_modal .btn_close { position:static; width:44px; height:44px; border:none; background:transparent; color:#6B7280; font-size:18px; cursor:pointer; border-radius:8px; }
.od_coupon_modal .btn_close:hover { background:#F3F4F6; color:#111; }
.od_coupon_modal .tbl_head02 { margin:0; padding:16px 20px 20px; overflow:auto; }
.od_coupon_modal .tbl_head02 table { width:100%; border-collapse:collapse; }
.od_coupon_modal .tbl_head02 th { background:#F9FAFB; padding:12px 10px; font-size:13px; font-weight:600; color:#6B7280; border-bottom:1px solid #E5E7EB; text-align:center; }
.od_coupon_modal .tbl_head02 td { padding:14px 10px; font-size:14px; color:#374151; border-bottom:1px solid #F3F4F6; text-align:left; vertical-align:middle; }
.od_coupon_modal .tbl_head02 .td_numbig { text-align:right; font-weight:600; color:#111; }
.od_coupon_modal .tbl_head02 .td_mngsmall { text-align:center; width:80px; }
.od_coupon_modal .cp_apply,
.od_coupon_modal .od_cp_apply,
.od_coupon_modal .sc_cp_apply { padding:6px 12px; border:1px solid #FC6A23; color:#FC6A23; background:#fff; border-radius:6px; font-size:13px; font-weight:600; cursor:pointer; height:auto; line-height:1.3; }
.od_coupon_modal .cp_apply:hover,
.od_coupon_modal .od_cp_apply:hover,
.od_coupon_modal .sc_cp_apply:hover { background:#FFF7F3; }
.od_coupon_modal .empty_list { padding:40px 20px; text-align:center; color:#6B7280; font-size:14px; }

/* ??? ?? ?? */
#sod_addr { background:#fff; min-height:100%; }
#sod_addr #win_title { text-align:center; box-shadow:none; border-bottom:1px solid #E5E7EB; font-size:18px; font-weight:700; height:auto; line-height:1.4; padding:18px 20px; }
#sod_addr .sod_addr_toolbar { margin:16px 20px 8px; }
#sod_addr .btn_addr_add { display:block; width:100%; box-sizing:border-box; height:auto; padding:14px 16px; border:1px solid #D1D5DB; border-radius:8px; background:#fff; color:#111; font-size:15px; font-weight:600; cursor:pointer; line-height:1.3; text-align:center; }
#sod_addr .btn_addr_add:hover { border-color:#FC6A23; color:#FC6A23; }
#sod_addr .sod_addr_cards { list-style:none; margin:0; padding:0 20px 24px; }
#sod_addr .sod_addr_card { padding:20px 0; border-bottom:1px solid #E5E7EB; }
#sod_addr .sod_addr_card:last-child { border-bottom:none; }
#sod_addr .sod_addr_card_top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:8px; }
#sod_addr .sod_addr_card_title { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-width:0; }
#sod_addr .sod_addr_card_name { font-size:16px; font-weight:700; color:#111; line-height:1.4; }
#sod_addr .sod_addr_card.is-selected .sod_addr_card_name,
#sod_addr .sod_addr_card.is-default.is-selected .sod_addr_card_name { color:#FC6A23; }
#sod_addr .sod_addr_badge { display:inline-block; padding:2px 0; font-size:12px; color:#9CA3AF; font-weight:500; line-height:1.3; }
#sod_addr .sod_addr_card_select { flex-shrink:0; }
#sod_addr .sod_addr_selected { display:inline-flex; align-items:center; gap:4px; color:#FC6A23; font-size:14px; font-weight:700; white-space:nowrap; }
#sod_addr .sod_addr_card .sel_address { display:inline-block; width:auto; height:auto; margin:0; padding:5px 12px; border:1px solid #FDBA74; border-radius:4px; background:#FFF7F3; color:#FC6A23; font-size:13px; font-weight:600; cursor:pointer; line-height:1.3; }
#sod_addr .sod_addr_card .sel_address:hover { background:#FC6A23; border-color:#FC6A23; color:#fff; }
#sod_addr .sod_addr_card_phone { font-size:14px; color:#6B7280; line-height:1.5; margin-bottom:4px; }
#sod_addr .sod_addr_card_addr { font-size:14px; color:#111; line-height:1.55; word-break:keep-all; margin-bottom:14px; }
#sod_addr .sod_addr_card_actions { display:flex; gap:6px; }
#sod_addr .btn_addr_edit,
#sod_addr .btn_addr_del { display:inline-flex; align-items:center; justify-content:center; min-width:52px; height:30px; padding:0 12px; border:1px solid #D1D5DB; border-radius:4px; background:#F9FAFB; color:#6B7280; font-size:13px; font-weight:500; text-decoration:none; cursor:pointer; box-sizing:border-box; line-height:1; }
#sod_addr .btn_addr_edit:hover,
#sod_addr .btn_addr_del:hover { border-color:#9CA3AF; color:#374151; }
#sod_addr .sod_addr_add_form { margin:20px; padding:20px; background:#F9FAFB; border:1px solid #E5E7EB; border-radius:12px; }
#sod_addr .sod_addr_add_title { margin:0 0 12px; font-size:16px; font-weight:700; color:#111; }
#sod_addr .sod_addr_add_form .tbl_wrap { margin:0; }
#sod_addr .sod_addr_add_form table { width:100%; border-collapse:collapse; }
#sod_addr .sod_addr_add_form th { width:90px; text-align:center; vertical-align:middle; padding:10px 8px; font-size:13px; font-weight:600; color:#6B7280; border:1px solid #e9e9e9; border-left:0; background:#f5f8f9; }
#sod_addr .sod_addr_add_form td { padding:6px 10px; vertical-align:middle; border-top:1px solid #e9e9e9; border-bottom:1px solid #e9e9e9; background:transparent; }
#sod_addr .sod_addr_add_form .frm_input { width:100%; max-width:100%; box-sizing:border-box; height:40px; border:none !important; border-radius:0; padding:0 4px; background:transparent; outline:none; box-shadow:none; }
#sod_addr .sod_addr_add_form .frm_input:focus { border:none !important; outline:none; box-shadow:none; }
#sod_addr .sod_addr_add_form #ad_zip_new { width:110px; display:inline-block; cursor:pointer; }
#sod_addr .sod_addr_add_form .frm_address { display:block; margin-top:2px; }
#sod_addr .sod_addr_add_form #ad_addr1_new { margin-top:2px; }
#sod_addr .sod_addr_add_btn { padding:10px 0 0; text-align:right; }
#sod_addr .sod_addr_add_btn .btn_close { margin-right:8px; height:40px; padding:0 16px; border:1px solid #D1D5DB; border-radius:8px; background:#fff; color:#374151; cursor:pointer; }
#sod_addr .sod_addr_add_btn .btn_submit { height:40px; padding:0 20px; background:#FC6A23; border:none; color:#fff; border-radius:8px; cursor:pointer; font-weight:600; }
#sod_addr .sod_addr_empty { margin:8px 20px 24px; padding:40px 16px; text-align:center; color:#9CA3AF; background:#fff; font-size:14px; }
#sod_addr .pg_wrap { padding:0 20px 24px; }

/* ???? / ???? ?? */
.order_layout_pay,
.order_layout_settle { background:#fff; border:1px solid #E5E7EB; border-radius:16px; padding:28px; margin-top:0; }
#sod_frm #sod_frm_pay h2,
#sod_frm_pay h2,
#sod_frm #sod_frm_settle h2,
#sod_frm_settle h2 { position:static; font-size:16px; font-weight:700; color:#111; margin:0 0 20px; padding:0 0 14px; border-bottom:1px solid #F3F4F6; line-height:1.4; }
#sod_frm_paysel { border:none; padding:0; margin:0 0 20px; display:flex; flex-wrap:wrap; gap:10px; }
#sod_frm_paysel input[type=radio] { display:none; }
#sod_frm_paysel label { display:inline-flex; align-items:center; justify-content:center; padding:10px 20px; border:1px solid #D1D5DB; border-radius:8px; font-size:14px; color:#374151; cursor:pointer; background:#fff; float:none; width:auto; height:auto; }
#sod_frm_paysel input[type=radio]:checked + label { border-color:#FC6A23; background:#FFF7F3; color:#FC6A23; font-weight:700; }
.pay_tbl table { width:100%; border-collapse:collapse; }
.pay_tbl th { padding:10px; font-size:14px; font-weight:600; color:#6B7280; text-align:left; width:120px; }
.pay_tbl td { padding:10px; font-size:14px; }
.pay_tbl .cp_btn,
.pay_tbl .cp_cancel { margin-left:8px; margin-right:0; margin-top:0; padding:5px 10px; border:1px solid #D1D5DB; border-radius:6px; background:#fff; font-size:12px; color:#374151; cursor:pointer; height:auto; width:auto; line-height:1.3; vertical-align:middle; }
.pay_tbl .cp_btn:hover,
.pay_tbl .cp_cancel:hover { border-color:#FC6A23; color:#FC6A23; }
.pay_tbl .cp_applied_name { display:inline-flex; align-items:center; max-width:min(100%, 280px); margin:0 8px 0 8px; padding:5px 10px; background:#FFF7F3; border:1px solid #FDBA74; border-radius:6px; font-size:12px; font-weight:600; color:#C2410C; line-height:1.3; vertical-align:middle; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sod_frm_point { background:#F9FAFB; border-radius:10px; padding:16px 20px; margin-bottom:20px; }
.sod_frm_point label { font-size:14px; font-weight:600; color:#374151; }
.sod_frm_point_row { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:8px; }
.sod_frm_point_row label { margin-right:4px; }
.sod_frm_point input[type=text] { border:1px solid #D1D5DB; border-radius:6px; padding:8px 12px; font-size:14px; width:120px; outline:none; }
.sod_frm_point .btn_point_all { display:inline-block; width:auto; height:auto; margin:0; padding:5px 10px; border:1px solid #D1D5DB; border-radius:6px; background:#fff; font-size:12px; color:#374151; cursor:pointer; line-height:1.3; }
.sod_frm_point .btn_point_all:hover { border-color:#FC6A23; color:#FC6A23; }
#sod_frm_pt { display:flex; gap:20px; font-size:13px; color:#6B7280; flex-wrap:wrap; }
#sod_frm_pt strong { color:#374151; font-weight:600; margin-right:4px; }

/* ??? ?? ?? ?? */
.order_summary_panel { background:#F9FAFB; border-radius:16px; padding:28px; border:1px solid #E5E7EB; }
.order_summary_panel h3 { font-size:18px; font-weight:700; color:#111; margin-bottom:20px; padding-bottom:15px; border-bottom:1px solid #E5E7EB; margin-top:0; }
.order_summary_panel #sod_bsk_tot { border:none; }
.order_summary_panel #sod_bsk_tot:after { display:none; }
.order_summary_list { list-style:none; padding:0; margin:0; }
.order_summary_list li { display:flex; justify-content:space-between; align-items:center; float:none; width:auto; height:auto; margin-bottom:14px; padding:0; font-size:15px; color:#374151; font-weight:600; text-align:left; border:none; background:transparent; }
.order_summary_list li span { display:inline; float:none; margin:0; color:inherit; font-weight:inherit; }
.order_summary_list .discount { color:#EF4444; }
.order_summary_total { display:flex; justify-content:space-between; align-items:center; padding-top:18px; border-top:1px solid #E5E7EB; font-size:15px; font-weight:700; color:#111; margin-bottom:0; }
.order_summary_total strong { font-size:24px; color:#111; font-family:'paperlogy'; }

/* ?? / ?? ?? (???) */
.order_summary_panel .btn_confirm { display:flex; flex-direction:column; gap:10px; margin-top:20px; }
.order_summary_panel .btn_submit { display:block; width:100%; background:#FC6A23; color:#fff; border:none; padding:16px 0; border-radius:10px; font-size:17px; font-weight:700; cursor:pointer; text-align:center; box-sizing:border-box; height:auto; }
.order_summary_panel .btn_submit:hover { background:#C2410C; }
.order_summary_panel .btn01 { display:block; width:100%; background:#fff; color:#6B7280; border:1px solid #D1D5DB; padding:13px 0; border-radius:10px; font-size:15px; font-weight:600; cursor:pointer; text-align:center; text-decoration:none; box-sizing:border-box; height:auto; line-height:1.4; }
.order_summary_panel .btn01:hover { background:#F3F4F6; }
.order_summary_panel #display_pay_process { margin-top:16px; text-align:center; font-size:13px; color:#6B7280; }

/* ?? ?? div */
.sod_hidden_fields { display:none; }

/* ???? (#sod_fin) ? ??? ???? ??? + ?? */
#sod_fin.sod_frm_pc { width:100%; max-width:1440px; margin:0 auto; padding:0 40px 60px; box-sizing:border-box; }
#sod_fin.sod_frm_pc #sod_fin_no { margin:0 0 -12px; padding:0; border:none; background:transparent; border-radius:0; font-size:14px; color:#6B7280; line-height:1.4; }
#sod_fin.sod_frm_pc #sod_fin_no .sod_fin_done { margin:0 0 24px; font-size:24px; font-weight:700; color:#111; line-height:1.35; }
#sod_fin.sod_frm_pc #sod_fin_no .sod_fin_no_label { display:block; font-size:14px; color:#6B7280; }
#sod_fin.sod_frm_pc #sod_fin_no strong { font-size:20px; font-weight:700; color:#111; margin-left:6px; font-family:'paperlogy', sans-serif; }
#sod_fin.sod_frm_pc #sod_fin_list { margin:0; }
#sod_fin.sod_frm_pc .order_item_name a { color:#111; text-decoration:none; }
#sod_fin.sod_frm_pc .order_item_name a:hover { color:#FC6A23; }
#sod_fin.sod_frm_pc .order_item_status { display:inline-flex; align-items:center; margin-top:8px; margin-right:6px; padding:4px 10px; border-radius:6px; background:#FFF7F3; border:1px solid #FDBA74; font-size:12px; font-weight:600; color:#C2410C; line-height:1.3; }
#sod_fin.sod_frm_pc .sod_fin_memo { font-size:14px; color:#374151; line-height:1.55; word-break:keep-all; }
#sod_fin.sod_frm_pc #sod_fin_dvr h2,
#sod_fin.sod_frm_pc #sod_fin_pay h2 { position:static; font-size:16px; font-weight:700; color:#111; margin:0 0 20px; padding:0 0 14px; border-bottom:1px solid #F3F4F6; line-height:1.4; }
#sod_fin.sod_frm_pc .sod_fin_dl { list-style:none; margin:0; padding:0; }
#sod_fin.sod_frm_pc .sod_fin_dl li { display:flex; align-items:flex-start; gap:16px; padding:10px 0; border-bottom:1px solid #F3F4F6; font-size:14px; line-height:1.5; }
#sod_fin.sod_frm_pc .sod_fin_dl li:last-child { border-bottom:none; }
#sod_fin.sod_frm_pc .sod_fin_dl li strong { flex:0 0 100px; font-weight:600; color:#6B7280; }
#sod_fin.sod_frm_pc .sod_fin_dl li span { flex:1; min-width:0; color:#111; word-break:keep-all; }
#sod_fin.sod_frm_pc .sod_fin_dl li a { color:#FC6A23; text-decoration:none; font-weight:600; }
#sod_fin.sod_frm_pc .sod_fin_dl li a:hover { text-decoration:underline; }
#sod_fin.sod_frm_pc .sod_fin_dl .btn_frmline { display:inline-block; width:auto; height:auto; margin:0; padding:6px 12px; border:1px solid #D1D5DB; border-radius:6px; background:#fff; color:#374151; font-size:13px; line-height:1.3; text-decoration:none; }
#sod_fin.sod_frm_pc .sod_fin_dl .btn_frmline:hover { border-color:#FC6A23; color:#FC6A23; }
#sod_fin.sod_frm_pc .sod_fin_empty { margin:0; padding:8px 0; font-size:14px; color:#9CA3AF; line-height:1.5; }
#sod_fin.sod_frm_pc .dvr_link { color:#FC6A23; text-decoration:underline; }
#sod_fin.sod_frm_pc .order_summary_extra { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:8px; margin-top:12px; padding-top:12px; border-top:1px solid #E5E7EB; font-size:14px; font-weight:600; color:#374151; }
#sod_fin.sod_frm_pc .order_summary_extra strong { font-size:16px; color:#111; font-weight:700; }
#sod_fin.sod_frm_pc .order_summary_point_detail { width:100%; margin-top:8px; padding:10px 12px; background:#fff; border:1px solid #E5E7EB; border-radius:8px; font-size:13px; font-weight:500; color:#6B7280; }
#sod_fin.sod_frm_pc .order_summary_point_detail p { display:flex; justify-content:space-between; margin:4px 0; }
#sod_fin.sod_frm_pc .order_summary_point_detail span { color:#9CA3AF; }
#sod_fin.sod_frm_pc #sod_fin_cancel { margin-top:20px; }
#sod_fin.sod_frm_pc #sod_fin_cancel .sod_fin_c_btn { display:block; width:100%; background:#fff; color:#6B7280; border:1px solid #D1D5DB; padding:13px 0; border-radius:10px; font-size:15px; font-weight:600; cursor:pointer; text-align:center; box-sizing:border-box; height:auto; line-height:1.4; }
#sod_fin.sod_frm_pc #sod_fin_cancel .sod_fin_c_btn:hover { background:#F3F4F6; border-color:#9CA3AF; color:#374151; }
#sod_fin.sod_frm_pc .sod_fin_cancel_msg { margin:0; padding:14px 16px; background:#FEF2F2; border:1px solid #FECACA; border-radius:10px; color:#B91C1C; font-size:14px; font-weight:600; text-align:center; line-height:1.5; }
body.cancel_modal_open { overflow:hidden; }
body #sod_cancel_pop { display:none; position:fixed; inset:0; top:0; left:0; width:100%; height:100%; z-index:10050; }
body #sod_cancel_pop .sod_fin_bg { position:absolute; inset:0; top:0; left:0; z-index:1; width:100%; height:100%; background:rgba(17,24,39,0.45); }
body #sod_cancel_pop #sod_fin_cancelfrm { position:absolute; top:50%; left:50%; z-index:2; transform:translate(-50%,-50%); width:100%; max-width:360px; max-height:none; margin:0; padding:24px; overflow:visible; background:#fff; border:1px solid #E5E7EB; border-radius:16px; box-shadow:0 20px 50px rgba(0,0,0,0.18); box-sizing:border-box; text-align:left; }
body #sod_cancel_pop #sod_fin_cancelfrm form { padding:0; }
body #sod_cancel_pop #sod_fin_cancelfrm h2 { margin:0 0 16px; padding:0; border:none; font-size:18px; font-weight:700; color:#111; text-align:left; }
body #sod_cancel_pop #sod_fin_cancelfrm .frm_input { width:100%; box-sizing:border-box; margin:0 0 12px; padding:12px; border:1px solid #D1D5DB; border-radius:8px; font-size:14px; outline:none; background:#fff; }
body #sod_cancel_pop #sod_fin_cancelfrm .btn_frmline { display:block; width:100%; height:auto; margin:0; padding:12px 0; border:none; border-radius:8px; background:#FC6A23; color:#fff; font-size:15px; font-weight:700; cursor:pointer; }
body #sod_cancel_pop #sod_fin_cancelfrm .btn_frmline:hover { background:#C2410C; }
body #sod_cancel_pop #sod_fin_cancelfrm .sod_cls_btn { position:absolute; top:12px; right:12px; width:36px; height:36px; border:none; background:transparent; color:#6B7280; font-size:18px; cursor:pointer; border-radius:8px; }
body #sod_cancel_pop #sod_fin_cancelfrm .sod_cls_btn:hover { background:#F3F4F6; color:#111; }

@media (max-width: 1024px) {
    .order_layout_wrap { flex-direction:column; align-items:stretch; }
    .order_layout_left,
    .order_layout_right { width:100%; max-width:100%; }
    .order_layout_right { position:static; }
    .order_info_row { flex-direction:column; }
    #sod_fin.sod_frm_pc { padding:0 20px 40px; }
}
/* ========== responsive media queries (bottom) ========== */
@media (max-width: 1580px) {
    .index_kit_nav{
        width:52px;
        height:52px;
        font-size:24px;
        background-color:rgba(255, 255, 255, 0.92);
        box-shadow:0 2px 10px rgba(0, 0, 0, 0.12);
    }
    .index_kit_nav.prev{left:0px;}
    .index_kit_nav.next{right:0px;}
}

@media (max-width: 1200px) {
    #tnb .inner{padding:0 16px;}
    .center_menu ul{gap:40px; font-size:15px;}
    .right_menu{gap:20px; font-size:14px;}
    #ft_wr{padding:40px 16px;}
}

@media (max-width: 599px) {
    .index_kit_nav{
        width:48px;
        height:48px;
        font-size:22px;
    }
    .footer_top{flex-direction:column; align-items:flex-start; gap:16px;}
    .footer_bottom{flex-direction:column; align-items:flex-start;}
    .footer_cha{align-self:flex-end;}
}

/* ========== breakpoints: 1440 / 1024 / 768 ========== */
@media (max-width: 1440px) {
    #sod_bsk,
    #sod_ws,
    #sod_frm {
        padding-left:10px;
        padding-right:10px;
    }
    .carlens_cart_wrap {
        padding-left:10px;
        padding-right:10px;
        box-sizing:border-box;
    }

    .aboutus_hero_wrap{gap:30px;}
    .aboutus_contents_top_left{padding-right:120px;}
    .aboutus_contents_top_left_text.big{font-size:30px; line-height:38px;}
    .aboutus_contents_top_left_text.small{font-size:18px; line-height:28px;}
    .pageCha.aboutus_hero_cha{right:20px;}
    .pageCha.aboutus_hero_cha img{width:110px;}
    .pageCha.aboutus_kit_cha{left:0; top:-56px; transform:translateX(-10%);}
    .pageCha.aboutus_kit_cha img{width:96px;}
    .aboutus_contents_wrap{gap:40px;}
    .aboutus_contents_wrap.aboutus_timeline_wrap{gap:calc(15px * 100vw / 1440px);}
    .aboutus_box:not(:nth-child(3))::after{width:56px; height:56px; font-size:40px;}
    .aboutus_section,
    .aboutus_goods_section{margin-top:180px;}
    .aboutus_title_wrap{margin-top:80px; margin-bottom:50px;}
    .aboutus_title_text.big{font-size:34px;}
    .aboutus_title_text.small{font-size:20px;}
    .aboutus_title_cha img{max-height:100px;}
    .aboutus_box_text{font-size:22px; bottom:24px; left:24px;}
    .aboutus_box.box2{padding:36px 28px;}
    .aboutus_box.box2 .titleText{font-size:28px;}
    .aboutus_box.box2 .timeText{font-size:56px;}
    .aboutus_box.box2 .timeText span{font-size:24px;}
    .aboutus_goods_img_wrap{padding:50px;}
    .aboutus_goods_box .badge{font-size:18px; height:40px;}

    /* 기본(원본) 사이즈 대비 비율 축소: 1440=100%, 그 이하는 100vw/1440 */
    .aboutus_box.box2 .pageCha.aboutus_time_cha, .aboutus_box.box2 .pageCha_bg{transform:scale(calc(100vw / 1440px));}
}

@media (max-width: 1024px) {
    .center_menu{display:none;}
    .right_menu .hd_text_link,
    .right_menu .hd_shop_icon{display:none;}
    .right_menu{gap:20px;}
    .hd_hamburger{display:inline-flex;}
    #tnb .inner{padding:0 20px;}

    .footer_row_stack{flex-direction:column; align-items:flex-start; gap:15px;}
    .footer_row_stack > .footer_links_sep{display:none;}

    .index_kit_content{flex:0 0 calc(33.333% - 16.666px); width:calc(33.333% - 16.666px);}

    .aboutus_hero_wrap{flex-direction:column; align-items:stretch; gap:28px;}
    .aboutus_contents_top_right,
    .aboutus_contents_top_left{flex:none; width:100%; max-width:100%;}
    .aboutus_contents_top_left{padding-right:120px;}
    .aboutus_contents_top_left_text.big{font-size:35px; line-height:45px;}
    .aboutus_contents_top_left_text.small{font-size:17px; line-height:26px;}
    .aboutus_pc_br{display:none;}
    .pageCha.aboutus_hero_cha{right:20px; bottom:0;}
    .pageCha.aboutus_hero_cha img{width:100px;}
    .pageCha.aboutus_kit_cha{left:0; top:-48px; transform:translateX(-5%);}
    .pageCha.aboutus_kit_cha img{width:84px;}
    .aboutus_contents_wrap{gap:36px;}
    .aboutus_contents_wrap.aboutus_timeline_wrap{
        flex-wrap:wrap;
        gap:15px;
    }
    .aboutus_contents_wrap.aboutus_timeline_wrap .aboutus_box.box2{
        width:calc(50% - 7.5px);
        flex:0 0 calc(50% - 7.5px);
    }
    .aboutus_box.box2 .pageCha.aboutus_time_cha,
    .aboutus_box.box2 .pageCha_bg{
        transform:none;
    }
    .aboutus_box:not(:nth-child(3))::after{width:48px; height:48px; font-size:34px;}

    .aboutus_box_text{
        left:50%;
        right:auto;
        bottom:20px;
        transform:translateX(-50%);
        width:100%;
        padding:0 12px;
        box-sizing:border-box;
        text-align:center;
        font-size:18px;
        word-break:keep-all;
    }

    .aboutus_goods_wrap{display:flex; flex-wrap:wrap; gap:40px 24px; justify-content:center;}
    .aboutus_goods_box{width:calc(50% - 12px);}
    .aboutus_goods_img_wrap{padding:48px; max-width:280px; margin:0 auto;}
    .aboutus_goods_box .badge{font-size:17px; height:40px; padding:0 18px;}
    .aboutus_goods_box .titleText{font-size:14px; max-width:220px;}
    .aboutus_title_inline{display:block;}
    .aboutus_title_cha{position:static; display:inline-block; margin:12px 0 0; vertical-align:middle;}
    .aboutus_title_cha img{max-height:80px; margin:0 auto;}

    /* 샵 상단: 1줄 브레드크럼+검색 / 2줄 필터 */
    .shop_index_wrap{padding:40px 16px 80px; box-sizing:border-box;}
    .shop_control_bar{
        flex-wrap:wrap;
        align-items:center;
        gap:12px 16px;
        margin-bottom:16px;
    }
    .shop_control_bar .shop_breadcrumb{
        order:1;
        flex:1 1 auto;
        min-width:0;
    }
    .shop_control_bar .shop_search{
        order:2;
        flex:1 1 220px;
        width:auto;
        max-width:100%;
        min-width:180px;
        box-sizing:border-box;
    }
    .shop_control_bar .shop_filters{
        order:3;
        flex:1 1 100%;
        width:100%;
        flex-wrap:wrap;
    }
}

@media (max-width: 768px) {
    .footer_cha{display:none;}
    .index_kit_content{flex:0 0 calc(50% - 12.5px); width:calc(50% - 12.5px);}
    .index_dataRoom_content{flex:0 0 calc(50% - 12.5px); width:calc(50% - 12.5px);}
    .aboutus_contents_top_left{padding-right:0;}
    .pageCha.aboutus_hero_cha{display:none;}
    .index_contents_full{padding:50px 15px 80px 15px;}
    .aboutus_box_text{bottom:12px;}
}
