@charset "utf-8";

/* **************************************** *
 * sub contents
 * **************************************** */

.content {position: relative; padding: 30px 30px;}

/* location */
.location {font-size: 0; margin-right: -15px; margin-bottom: 20px; text-align: right;}
.location li {display: inline-block; position: relative; font-size: 15px; color: var(--ad-gray); font-weight: 600; padding: 0 15px; vertical-align: middle; overflow: hidden; max-width: 200px; text-overflow: ellipsis; white-space: nowrap;}
.location li:before {content: ''; display: block; position: absolute; top: 50%; left: 0; width: 2px; height: 10px; margin-top: -5px; margin-left: 1px; background-color: #ddd; transform: rotate(15deg);}
.location li:first-child:before {content: none;}
.location li.home a {display: block; display: block; color: var(--ad-primary);}
.location li.active {color: #111;}
 
/* section common */
.section_content {width: 100%;}

.section_tit {position: relative; display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;}
.section_tit h4 {display: inline-block; font-size: 24px; font-weight: 800; line-height: 1; word-break: keep-all;}

.section_right {float: right;}

/* row col */
.row {display: flex; display: -webkit-box; display: -ms-flexbox; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 -10px;}
.row > * {flex-shrink: 0; width: 100%; max-width: 100%; padding-right: 10px; padding-left: 10px; margin-bottom: 20px;}
.row .divider {margin-bottom: 0;}

/* col common */
.col-1 {flex: 0 0 8.3%; width: 8.3%;}
.col-2 {flex: 0 0 16.6%; max-width: 16.6%;}
.col-3 {flex: 0 0 25%; max-width: 25%;}
.col-4 {flex: 0 0 33.3%; max-width: 33.3%;}
.col-5 {flex: 0 0 41.6%; max-width: 41.6%;}
.col-6 {flex: 0 0 50%; max-width: 50%;}
.col-7 {flex: 0 0 58.3%; max-width: 58.3%;}
.col-8 {flex: 0 0 66.7%; max-width: 66.7%;}
.col-9 {flex: 0 0 75%; max-width: 75%;}
.col-10 {flex: 0 0 83.4%; max-width: 83.4%;}
.col-11 {flex: 0 0 91.7%; max-width: 91.7%;}
.col-12 {flex: 0 0 auto; max-width: 100%;}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {position: relative; width: 100%;}

@media (min-width: 576px) {
    /* 576px 이상일 때 실행 */
    .col-sm-1 {flex: 0 0 8.3%; width: 8.3%;}
    .col-sm-2 {flex: 0 0 16.6%; max-width: 16.6%;}
    .col-sm-3 {flex: 0 0 25%; max-width: 25%;}
    .col-sm-4 {flex: 0 0 33.3%; max-width: 33.3%;}
    .col-sm-5 {flex: 0 0 41.6%; max-width: 41.6%;}
    .col-sm-6 {flex: 0 0 50%; max-width: 50%;}
    .col-sm-7 {flex: 0 0 58.3%; max-width: 58.3%;}
    .col-sm-8 {flex: 0 0 66.7%; max-width: 66.7%;}
    .col-sm-9 {flex: 0 0 75%; max-width: 75%;}
    .col-sm-10 {flex: 0 0 83.4%; max-width: 83.4%;}
    .col-sm-11 {flex: 0 0 91.7%; max-width: 91.7%;}
    .col-sm-12 {flex: 0 0 auto; max-width: 100%;}

    .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {padding: 0 10px; position: relative; width: 100%;}
}

@media (min-width: 768px) {
    /* 768px 이상일 때 실행 */
    .col-md-1 {flex: 0 0 8.3%; width: 8.3%;}
    .col-md-2 {flex: 0 0 16.6%; max-width: 16.6%;}
    .col-md-3 {flex: 0 0 25%; max-width: 25%;}
    .col-md-4 {flex: 0 0 33.3%; max-width: 33.3%;}
    .col-md-5 {flex: 0 0 41.6%; max-width: 41.6%;}
    .col-md-6 {flex: 0 0 50%; max-width: 50%;}
    .col-md-7 {flex: 0 0 58.3%; max-width: 58.3%;}
    .col-md-8 {flex: 0 0 66.7%; max-width: 66.7%;}
    .col-md-9 {flex: 0 0 75%; max-width: 75%;}
    .col-md-10 {flex: 0 0 83.4%; max-width: 83.4%;}
    .col-md-11 {flex: 0 0 91.7%; max-width: 91.7%;}
    .col-md-12 {flex: 0 0 auto; max-width: 100%;}

    .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {padding: 0 10px; position: relative; width: 100%;}
}

@media (min-width: 992px) {
    /* 992px 이상일 때 실행 */
    .col-lg-1 {flex: 0 0 8.3%; width: 8.3%;}
    .col-lg-2 {flex: 0 0 16.6%; max-width: 16.6%;}
    .col-lg-3 {flex: 0 0 25%; max-width: 25%;}
    .col-lg-4 {flex: 0 0 33.3%; max-width: 33.3%;}
    .col-lg-5 {flex: 0 0 41.6%; max-width: 41.6%;}
    .col-lg-6 {flex: 0 0 50%; max-width: 50%;}
    .col-lg-7 {flex: 0 0 58.3%; max-width: 58.3%;}
    .col-lg-8 {flex: 0 0 66.7%; max-width: 66.7%;}
    .col-lg-9 {flex: 0 0 75%; max-width: 75%;}
    .col-lg-10 {flex: 0 0 83.4%; max-width: 83.4%;}
    .col-lg-11 {flex: 0 0 91.7%; max-width: 91.7%;}
    .col-lg-12 {flex: 0 0 auto; max-width: 100%;}

    .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {padding: 0 10px; position: relative; width: 100%;}
}


/* 1200px */
@media (min-width: 1200px) {
    /* 1200px 이상일 때 실행 */
    .col-xl-1 {flex: 0 0 8.3%; width: 8.3%;}
    .col-xl-2 {flex: 0 0 16.6%; max-width: 16.6%;}
    .col-xl-3 {flex: 0 0 25%; max-width: 25%;}
    .col-xl-4 {flex: 0 0 33.3%; max-width: 33.3%;}
    .col-xl-5 {flex: 0 0 41.6%; max-width: 41.6%;}
    .col-xl-6 {flex: 0 0 50%; max-width: 50%;}
    .col-xl-7 {flex: 0 0 58.3%; max-width: 58.3%;}
    .col-xl-8 {flex: 0 0 66.7%; max-width: 66.7%;}
    .col-xl-9 {flex: 0 0 75%; max-width: 75%;}
    .col-xl-10 {flex: 0 0 83.4%; max-width: 83.4%;}
    .col-xl-11 {flex: 0 0 91.7%; max-width: 91.7%;}
    .col-xl-12 {flex: 0 0 auto; max-width: 100%;}

    .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {padding: 0 10px; position: relative; width: 100%;}
}

/* 1540px */
@media (min-width: 1540px) {
    /* 1540px 이상일 때 실행 */
    .col-xxl-1 {flex: 0 0 8.3%; width: 8.3%;}
    .col-xxl-2 {flex: 0 0 16.6%; max-width: 16.6%;}
    .col-xxl-3 {flex: 0 0 25%; max-width: 25%;}
    .col-xxl-4 {flex: 0 0 33.3%; max-width: 33.3%;}
    .col-xxl-5 {flex: 0 0 41.6%; max-width: 41.6%;}
    .col-xxl-6 {flex: 0 0 50%; max-width: 50%;}
    .col-xxl-7 {flex: 0 0 58.3%; max-width: 58.3%;}
    .col-xxl-8 {flex: 0 0 66.7%; max-width: 66.7%;}
    .col-xxl-9 {flex: 0 0 75%; max-width: 75%;}
    .col-xxl-10 {flex: 0 0 83.4%; max-width: 83.4%;}
    .col-xxl-11 {flex: 0 0 91.7%; max-width: 91.7%;}
    .col-xxl-12 {flex: 0 0 auto; max-width: 100%;}

    .col-xxl-1, .col-xxl-2, .col-xxl-3, .col-xxl-4, .col-xxl-5, .col-xxl-6, .col-xxl-7, .col-xxl-8, .col-xxl-9, .col-xxl-10, .col-xxl-11, .col-xxl-12 {padding: 0 10px; position: relative; width: 100%;}
}

.h100 {height: 100% !important;}

/* divider */
.divider {position: relative; display: flex; flex-direction: column; background-color: #fff; box-shadow: rgba(99, 99, 99, 0.1) 0px 2px 8px 0px; border-radius: 8px; margin-bottom: 20px;}
.divider:after {content: ''; clear: both; display: block;}
.divider .divider_top,
.divider .divider_bottom {padding: 20px 20px;}
.divider_top,
.divider_bottom {position: relative; padding-bottom: 20px;}

.divider_top:after,
.divider_bottom:after {content: ''; clear: both; display: block;}

.divider_body {padding: 20px 20px;}

.divider_top ~ .divider_body,
.divider_body ~ .divider_bottom {padding-top: 0;}

.divider_left {float: left;}
.divider_right {float: right;}
.divider_title {position: relative; display: inline-block; font-size: 20px; font-weight: 700; vertical-align: middle;}

.divider_title ~ .badge {margin-left: 10px;}

.divider_item {display: block;}
.divider_item + .divider_item {margin-top: 30px;}
.divider_item .divider_top {padding: 0; margin-bottom: 16px;}
.divider_item .divider_bottom {padding: 0; margin-top: 16px;}
.divider_item .divider_body {padding: 0;}
.item_tit {font-size: 17px; font-weight: 800; vertical-align: middle;}

.divider_top .btn_wrap,
.divider_bottom .btn_wrap {margin-top: 0;}

/* common */
/* badge */
.badge {display: inline-block; vertical-align: middle; padding: 3px 5px; font-size: 12px; font-weight: 400; color: #fff; background-color: var(--ad-gray); line-height: 1; border-radius: 4px; white-space: nowrap;}
.badge.md {font-size: 14px; padding: 5px 10px;}

/* card */
.card {position: relative; border: 1px solid #eee; border-radius: 10px; padding: 15px 20px;}
.card .card_top {display: flex; align-items: center;}
.card .bar {position: absolute; top: 0; left: 0; width: 5px; height: 100%; border-radius: 5px;}
.card .tit {font-size: 18px; font-weight: 600; margin-left: 10px;}
.card .name {display: flex; justify-content: center; align-items: center; width: 100%; height: 100%;}
.card .num {font-size: 32px;}
.widget_icon {display: inline-block; width: 60px; height: 60px; line-height: 60px; text-align: center; border-radius: 50%;}
.widget_icon i {font-size: 30px; line-height: inherit; vertical-align: middle;}
.widget_icon.sm {width: 30px; height: 30px; line-height: 26px;}
.widget_icon.sm i {font-size: 18px;}

/* nav tab */
.nav_tab {position: relative; display: block; font-size: 0; z-index: 1; margin-top: 20px;}
.nav_tab > li{display: inline-block; font-size: 15px;}
.nav_tab > li > a {display: inline-block; padding: 12px 24px; color:var(--ad-gray); background-color: #e2e5e9; border-top: 3px solid transparent; border-radius:4px 4px 0 0; -webkit-transition: all .3s; -moz-transition: all .3s; -ms-transition: all .3s; -o-transition: all .3s; transition: all .3s;}
.nav_tab > li > a span{display: inline-block; line-height:1;}
.nav_tab > li.on > a{background-color: #fff; color: var(--ad-primary); font-weight: 800; border-top-color: var(--ad-primary);}
.nav_tab + .divider {border-top-left-radius: 0; margin-top: 0;}

/* tab type01 */
.tab.type01 {position: relative; margin-bottom: 20px;}
.tab.type01:before {content: ''; position: absolute; bottom: 0; left: 0; display: block; width: 100%; height: 1px; background: #ddd;}
.tab.type01 ul {display: flex; flex-wrap: nowrap;}
.tab.type01 ul > li {position: relative; -webkit-transition: all .3s; -moz-transition: all .3s; -ms-transition: all .3s; -o-transition: all .3s; transition: all .3s; text-align: center;}
.tab.type01 ul > li > a {display: block; padding: 10px 30px; color:var(--ad-gray);}
.tab.type01 ul > li > a span{display: inline-block; line-height:1;}
.tab.type01 ul > li.on:after {content: ''; position: absolute; bottom: 0; left: 0; display: block; width: 100%; height: 3px; background: var(--ad-primary); border-radius: 3px; z-index: 10;}
.tab.type01 ul > li.on > a{color: var(--ad-primary); font-weight: 600;}


/* tab type02 */
.tab.type02 ul {font-size: 0; display: flex; gap: 0 5px;}
.tab.type02 ul li {display: inline-block; font-size: 1rem;}
.tab.type02 ul li a {display: block; padding: 10px 30px; border: 1px solid #ddd; color: var(--ad-gray); transition: all .3s;}
.tab.type02 ul li.on a {background-color: var(--ad-dark); border-color: var(--ad-dark); color: #fff; box-shadow: 2px 2px 2px rgba(var(--ad-dark-rgb), .12);}

/* tab type03 */
.tab.type03 ul {display: inline-block; font-size: 0; border-radius: 50px; padding: 6px; background-color: #fff; box-shadow: 0 0 10px rgba(var(--ad-dark-rgb), .12);}
.tab.type03 ul li {display: inline-block; min-width: 120px; font-size: 1rem; vertical-align: middle;}
.tab.type03 ul li a {display: block; color: #666; width: 100%; height: 40px; line-height: 40px; border-radius: 30px; text-align: center;}
.tab.type03 ul li.on a {background-color: var(--ad-primary); color: #fff;}

.tab_content {display: none;}
.tab_content.on {display: block;}


/* swiper tab */
.swiper_tab {padding: 0 24px; overflow: hidden;}
/* .swiper_tab .swiper {} */
.swiper_tab ul > li {width: auto; height: auto;}
.swiper_tab .tab_ctrl .ctrl {position: absolute; bottom: 0; width: 24px; height: 40px; background: no-repeat 0 50%; background-color: #fff; background-size: auto 24px; z-index: 10;}
.swiper_tab .tab_ctrl .ctrl.prev {left: 0; background-image: url('/images/cms/common/icon_bbs_prev.png'); background-position-x: left;}
.swiper_tab .tab_ctrl .ctrl.next {right: 0; background-image: url('/images/cms/common/icon_bbs_next.png'); background-position-x: right;}

/* dropdown 드롭다운 공통 */
@keyframes dropdown {
    0% {
        opacity: 0;
        margin-top: -8px
    }

    to {
        opacity: 1;
        margin-top: 0
    }
}

/* dropdown 위로 올릴 때 */
@keyframes dropup {
    0% {
        opacity: 0;
        margin-bottom: -8px
    }

    to {
        opacity: 1;
        margin-bottom: 0
    }
}

.dropdown_btn {position: relative; display: inline-block; cursor: pointer;}
.dropdown_btn .dropdown_box {position: absolute; inset: 0 0 auto auto; top: 100%; right: 0; display: none; min-width: 140px; background-color: #fff; border: 1px solid #eee; padding: 5px 5px; box-shadow: 3px 4px 6px 0 rgba(0, 0, 0, .08);  z-index: 999;}
.dropdown_btn .dropdown_box ul li {text-align: left;}
.dropdown_btn .dropdown_box a {display: block; color: var(--ad-gray); font-size: 15px; padding: 5px 5px;}
.dropdown_btn .dropdown_box a:hover {background-color: var(--ad-light); color: var(--ad-dark);}
.dropdown_btn.on .dropdown_box {display: block !important; animation: dropdown .5s ease forwards;}

/* 아이콘 버튼 */
.action_icon {display: inline-block; font-size: 1.2rem !important; padding: 0 3px; color: var(--ad-gray); background-color: transparent; vertical-align: middle;}
.action_icon.del {color: var(--ad-danger);}

/* 엑셀 아이콘 */
.excel_icon {display: inline-block; width: 18px; height: 18px; background: url('/images/cms/common/icon_excel.png') no-repeat 50% 50%; background-size: auto 16px; vertical-align: middle; margin-right: 5px;}

/* 스위치 버튼 */
.switch_btn {position: relative; width: 70px; height: 30px; display: inline-block; position: relative; border-radius: 30px; background-color: #ddd; cursor: pointer;} 
.switch_btn:before {content: '미사용'; position: absolute; top: 50%; transform: translateY(-50%); right: 10px; font-size: 14px; color: #666; letter-spacing: -0.1em;}
.switch_btn .toggleButton {width: 20px; height: 20px; position: absolute; top: 50%; left: 4px; transform: translateY(-50%); border-radius: 50%; background: #fff;}
.switch_btn.active {background: var(--ad-primary);}
.switch_btn.active:before {content: '사용'; left: 10px; right: auto; color: #fff;}
.switch_btn.active .toggleButton { left: calc(100% - 24px); background: #fff !important;} 
.switch_btn, .toggleButton {transition: all 0.3s ease-in;}


/* process 프로세스 type01 */
.process.type01 {display: inline-block; padding-bottom: 40px;}
.process.type01 .process_list {position: relative; display: flex; align-items: center;}
.process.type01 .process_list:before {content: ''; display: block; position: absolute; width: 100%; height: 2px; background-color: #ddd;}
.process.type01 .process_list .step_item {position: relative; display: block; width: 8px; height: 8px; margin: 0 30px; box-sizing: content-box; color: var(--ad-primary); background: var(--ad-primary); border: 2px solid var(--ad-light); border-radius: 50%; z-index: 5;}
.process.type01 .process_list .step_item span {position: absolute; top: calc(100% + 10px); left: 50%; transform: translateX(-50%); white-space: nowrap; color: var(--ad-gray);}
.process.type01 .process_list .step_item.on:before {content: ''; display: block; position: absolute; top: 48%; left: 48%; padding: 1em; background-color: rgba(var(--ad-primary-rgb), .7); border-radius: 50%; opacity: 0; z-index: -1; animation: step-current 2s ease-out infinite;}
.process.type01 .process_list .step_item.on span {color: var(--ad-primary);}


/* process 프로세스 type02 */
.process.type02 .step_list:after {content: ''; clear: both; display: block;}
.process.type02 .step_list {display: flex; justify-content: center; padding: 20px 0; margin-left: -25px;}
.process.type02 .step_list li {position: relative; float: left; padding: 0 50px 0 25px; text-align: center;}
.process.type02 .step_list li:after {content: ''; position: absolute; right: 0; top: 50%; margin-top: -1px; width: 15%; height: 2px; border-bottom: 2px dashed #ddd;}
.process.type02 .step_list li:last-child:after {content: none;}
.process.type02 .step_list li a {display: block; font-size: 16px; color: #666;}
.process.type02 .step_list li span {display: inline-block; max-width: 80px; font-weight: 800; text-transform: uppercase; font-size: 13px; border: 2px solid #ddd; padding: 4px 8px; border-radius: 20px; vertical-align: middle; margin-right: 10px;}

.process.type02 .step_list li.on a {color: var(--ad-primary); font-weight: 800;}
.process.type02 .step_list li.on:after {border-color: var(--ad-primary);}
.process.type02 .step_list li.on span {background: var(--ad-primary); color: #fff; border-color: var(--ad-primary); box-shadow: 0 5px 10px 0 rgba(var(--ad-primary-rgb), .25);}

.process.type02 .step_list li.end span {color: var(--ad-primary); border-color: var(--ad-primary);}
.process.type02 .step_list li.end:after {border-color: var(--ad-gray);}

/* process 프로세스 type03 */
.process.type03 ul {position: relative; font-size: 0; display: inline-block;}
.process.type03 ul li {position: relative; display: inline-block; font-size: 1rem; padding-right: 30px; color: #666;}
.process.type03 ul li.on {color: var(--ad-primary); font-weight: 600;}
.process.type03 ul li:before {content: ''; display: block; width: 20px; height: 20px; border: 1px solid #ddd; border-radius: 50%; margin: 0 auto 10px;}
.process.type03 ul li:after {content: ''; position: absolute; top: 10px; right: 10%; display: block; width: 20%; border-top: 1px dashed #ddd;}
.process.type03 ul li.on:before {background-color: var(--ad-primary); border-color: var(--ad-primary);}
.process.type03 ul li:last-child:after {content: none}

.process.type03 ul li.end {color: var(--ad-gray);}
.process.type03 ul li.end:before {background-color: var(--ad-light); border-color: var(--ad-light);}

@keyframes step-current {
    0% {
        transform: translate(-50%, -50%) scale(0);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0;
    }
}

/* tag 태그 */
.tag_object {margin-top: 10px;}
.tag_object .obj {display: inline-block; min-width: 90px; position: relative; padding:3px 30px 4px 10px; margin:2px; border:1px solid #dfdfdf; border-radius:30px;}
.tag_object .obj .name{display: inline-block; color: #666;}
.tag_object .obj .del{position: absolute; top: 50%; transform: translateY(-50%); right: 5px; cursor:pointer; line-height: 1;}
.tag_object .obj:hover{box-shadow: 1px 1px 1px rgba(0,0,0,0.05);}

/* text box */
.txt_box {background-color: var(--ad-light); padding: 20px 30px; border-radius: 5px;}
.txt_box.line {background-color: transparent; border: 1px solid #eee;}
.txt_box dl {font-size: 0;}
.txt_box dl + dl {margin-top: 10px;}
.txt_box dl dt {display: inline-block; font-size: 1rem; width: 180px; font-weight: 600; color: #666; vertical-align: top;}
.txt_box dl dd {display: inline-block; font-size: 1rem; width: calc(100% - 180px);}

.txt_box strong {font-weight: 600;}
.txt_box p {color: #666;}

.txt_box .tb_txt {font-size: 1rem;}

.txt_box.scroll {height: 165px; overflow-y: auto;}

/* dot list */
.dot_list > li{position: relative; line-height:1.6; padding-left: 10px; margin-top: 4px; font-size: 15px; font-weight: 400; color: #666; text-align: left;}
.dot_list > li:first-child{margin-top: 0;}
.dot_list > li:before{content:""; display: block; position: absolute; top: 10px; left: 0; width: 3px; height: 3px; border-radius:50%; background:var(--ad-gray);}

/* 상태 & 라벨 리스트 */
.state_list {display: inline-block;}
.state_list li {display: inline-block;}
.state_list li + li {margin-left: 10px;}
.state_list li * {display: inline-block; vertical-align: middle;}
.state {display: inline-block;}
.state > i {display: inline-block; width: 8px; height: 8px; border-radius: 50%; background-color: #eee;}
.state.state01 > i {background: rgba(var(--ad-primary-rgb), .3);}
.state.state02 > i  {background: rgba(var(--ad-success-rgb), .3);}
.state.state03 > i  {background: rgba(var(--ad-danger-rgb), .3);}
.state.state04 > i  {background: rgba(var(--ad-positive-rgb), .3);}
.state.state05 > i  {background: rgba(var(--ad-dark-rgb), .3);}
.state > span {margin-left: 3px;}

/* 컬러 팔레트 */
.color_example {display:flex;}
.circle .clr-field button {width: 20px; height: 20px; left: 10px; right: auto; border-radius: 5px; cursor:pointer;}
.circle .clr-field input {padding-left: 36px; width:150px; color:#666; margin: 2px 3px 2px 0;}
.circle .clr-field button {border-radius: 50%;}
.color_pic{display:flex;}
.color_pic > p{margin-bottom:0; margin-left:3px;}

/* 랭킹 슬라이드 */
.slide_cont {overflow: hidden;}
.swiper-container-horizontal > .swiper-scrollbar {position: static; display: block; width: 100%; height: 3px; border-radius: 5px; background-color: var(--ad-light); margin-top: 20px;}
.swiper-container-horizontal > .swiper-scrollbar .swiper-scrollbar-drag {background-color: var(--ad-gray);}

.slide_ctrl {display: none;}

/* chart common */
.chart_box {width: 100%;}


/* Am chart */
.chartTheme.sm {min-height: 320px;}
.chartTheme.md {min-height: 400px;}
.chartTheme.lg {min-height: 500px;}
.tooltipCustom {background-color: #fff; font-size: 15px; font-weight: 400; min-width: 200px; padding: 10px 10px; text-align: left;}
.tooltipCustom .tit {display: block; font-size: 16px; font-weight: 800; margin-bottom: 10px; color: #333;}
.tooltipCustom .data_tool_list li {display: flex; color: #333;}
.tooltipCustom .data_tool_list .data_tit {position: relative; font-weight: 600; color: #666; width: 60%; padding-left: 20px;}
.tooltipCustom .data_tool_list .data_tit:before {content: ''; position: absolute; top: 50%; left: 0; margin-top: -5.5px; border-radius: 50%; display: block; width: 11px; height: 11px; border-radius: 50%; margin-right: 7px; box-sizing: border-box;}
.tooltipCustom .data_tool_list .data_tit.color-black:before {background-color: #333;}
.tooltipCustom .data_tool_list .data_tit.color-red:before {background-color: #fa5c7c;}
.tooltipCustom .data_tool_list .data_tit.color-orange:before {background-color: #ff9e01;}
.tooltipCustom .data_tool_list .data_tit.color-orange:before {background-color: #ffc35a;}
.tooltipCustom .data_tool_list .data_tit.color-green:before {background-color: #0dca60;}
.tooltipCustom .data_tool_list .data_tit.color-blue:before {background-color: #50a3d9;}
.tooltipCustom .data_tool_list .data_tit.color-navy:before {background-color: #2E378D;}
.tooltipCustom .data_tool_list .data_tit.color-purple:before {background-color: #733FC0;}

.tooltipCustom .data_tool_list .data_value {width: 40%; white-space: nowrap;}

/* 메시지 전송 */
.sms_send {display: flex; flex-wrap: wrap;}
.sms_send > .form_control {width: calc(100% - 360px);}

/* 휴대폰 */
.device {position: relative; display: block; width: 300px; height: 560px; padding: 60px 10px; margin: 0 auto; border: 5px solid #333; border-radius: 60px; background-color: #171717; box-shadow: 0 0 40px 10px rgba(0, 0, 0, .1);}
.device:before,
.device:after {content: ''; position: absolute; z-index: 2;}
.device:before {width: 20%; height: 10px; top: 20px; left: 50%; transform: translateX(-50%); background-color: #333; border-radius: 10px;}
.device:after {width: 30px; height: 30px; bottom: 20px; left: 50%; transform: translateX(-50%); border: 5px solid #333; border-radius: 50%;}
.device .device_head {display: flex; align-items: center; justify-content: space-between; width: 100%; height: 40px; background-color: var(--ad-light); padding: 0 20px;}
.device .device_head i {font-size: 18px;}
.device .device_form {width: 100%; height: calc(100% - 60px); background-color: #fff; padding: 20px 20px;}
.device .device_form > textarea {height: calc(100% - 140px);}
.device .device_form > textarea:focus {box-shadow: none;}
.device .device_form .byte_box {display: block; text-align: right;}
.device .device_form .byte_box * {vertical-align: middle;}


/* checkbox & radio custom */
.customChk {display: inline-block;}
.customChk input[type="checkbox"],
.customChk input[type="radio"] {display: none;}
.customChk label {display: inline-block; position: relative; min-width: 100px; height: 40px; line-height: 38px; text-align: center; border: 1px solid #eee; background-color: #fff; padding: 0 20px; margin: 3px 0; border-radius: 5px;}
.customChk label > span {color: #666;}
.customChk input:checked + label {border-color: var(--ad-primary); box-shadow: 0 3px 5px 0 rgba(var(--ad-primary-rgb), .15);}
.customChk input:checked + label > span {color: var(--ad-primary); font-weight: 600;}


/* layer popup */
.layer_popup {position: fixed; top: 0; left: 0; z-index: 1000; width: 100%; height: 100%; display: none;}
.layer_popup {background: rgba(16, 25, 36, .4);}
.popup_box {position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 100%; width: 1024px; max-height: 95%; height: auto; background: #fff; border: 1px solid #eee; box-shadow: 0 3px 29px 0 rgba(0, 0, 0, 0.15); border-radius: 10px; overflow: auto;}
.popup_box.sm {width: 640px;}
.popup_box .popup_header {position: relative; width: 100%; height: 60px; background-color: var(--ad-light); padding: 16px 30px; border-bottom: 1px solid #eee;}
.popup_box .popup_header > h4 {font-size: 18px; font-weight: 600;}
.popup_box .close_btn {position: absolute; top: 0; right: 0; transform: none; z-index: 10; display: block; width: 60px; height: 60px; background: url("/images/cms/common/icon_close.svg") no-repeat 50% 50%; background-size: 20px auto;}

.popup_box .popup_body {padding: 30px 30px;}
.popup_box .search_box {margin-bottom: 30px;overflow: hidden;}
.popup_box .searchTbView td {padding-right: 5px;}
.popup_box .searchTbView td:last-child {padding-right: 0;}
.popup_box .btn_wrap {margin-top: 0;}

.popup_box .popup_bottom {padding: 16px 30px;}

.popup_box .fixedY {max-height: 303px;}



/* tree구조 커스텀 */
ul.fancytree-container {font-family: ''malgun gothic', 'Dotum', '돋움', tahoma, arial, helvetica'; font-size: 10pt; min-height: 0%; position: relative; white-space: nowrap; padding: 3px; margin: 0; overflow: auto;}
ul.fancytree-container li {list-style-image: none; list-style-position: outside; list-style-type: none; background-attachment: scroll; background-color: transparent; background-position: 0px 0px; background-repeat: repeat-y; background-image: none; margin: 0;}
span.fancytree-node {position: relative; display: inherit; width: 100%; margin: 5px 0; min-height: 16px;}
span.fancytree-node:before {content: ''; display: inline-block; width: 8px; height: 8px; border-bottom: 1px dotted #aaa; border-left: 1px dotted #aaa;}

span.fancytree-empty, 
span.fancytree-vline, 
span.fancytree-expander, 
span.fancytree-icon, 
span.fancytree-checkbox, 
span.fancytree-radio, 
span.fancytree-drag-helper-img, 
#fancytree-drop-marker {width: 16px; height: 16px; display: inline-block; vertical-align: top; background-repeat: no-repeat; background-size: auto 16px; background-position: left; background-position: 0px 0px;}

/* 폴더 화살표 */
span.fancytree-expander {width: 8px; height: 8px; border-right: 2px solid #57606a; border-bottom: 2px solid #57606a; transform: rotate(-45deg); vertical-align: middle; margin-top: -4px; margin-right: 5px;}
.fancytree-expanded span.fancytree-expander {transform: rotate(45deg);} /* 폴더 열렸을 때 화살표 */

span.fancytree-icon {background-image: url('/images/cms/common/tree/icon_file.png');} /* 일반 파일 아이콘 */
.fancytree-folder span.fancytree-icon {background-image: url('/images/cms/common/tree/icon_folder.png');} /* 상위 폴더 아이콘 */

span.fancytree-title {cursor: pointer; display: inline-block; vertical-align: top; min-height: 16px; padding: 0 3px 0 3px; margin: 0 0 0 3px;}

.fancytree-exp-n span.fancytree-expander, 
.fancytree-exp-nl span.fancytree-expander {background-image: none; cursor: default; display: none;}

span.fancytree-folder:before {content: none;} /* 상위 폴더 dotte 선 없애기 */

ul.fancytree-container ul {position: relative; padding: 0 0 0 16px; margin: 0;}



/* system link list */
.systemList {overflow-y: auto;}
.systemList li + li {border-top: 1px dashed #eee;}
.systemList li a {position: relative; font-size: 18px; display: block; padding: 15px 0; color: #333;}
.systemList li a .action_icon {position: absolute; top: 50%; right: 0; transform: translateY(-50%);}
.systemList li:hover a {color: var(--ad-primary); text-decoration: underline;}



/* 지도 */
.map_box {width: 100%; height: 600px; background-color: var(--ad-light);}
.map_box img {width: 100%; height: 100%;}

/* 토스트 메세지 팝업 */
.toast_message {position: fixed; bottom: 10%; left: 50%; transform: translateX(-50%); display: inline-block; text-align: center; padding: 8px 15px; border: 1px solid var(--ad-primary); border-radius: 4px; background-color: rgba(255, 255, 255, .7); backdrop-filter: blur(5px); box-shadow: 0 5px 10px 0 rgba(var(--ad-primary-rgb), .2); opacity: 0; transition: all 0.4s; z-index: -1;}
.toast_message > p {font-size: 1rem; color: var(--ad-primary);}
.toast_message.active {opacity: 100%; z-index: 10;}

@media (max-width: 1280px) {
    .slide_ctrl {display: block; margin-top: 20px; text-align: right;}
    .slide_ctrl button.ctrl {position: relative; display: inline-block; width: 40px; height: 40px; font-size: 17px; border: 1px solid #eee; background-color: #fff; border-radius: 50%;}
    .slide_ctrl button.ctrl.swiper-button-disabled {background-color: var(--ad-light);}
}

@media (max-width: 1200px) {
    /* tab common */
    .tab ul {scrollbar-width: none; -ms-overflow-style: none;}

    /* tab type01 */
    /* .tab.type01:after {content: ''; position: absolute; top: 0; right: 0; width: 25%; height: calc(100% - 1px); background: linear-gradient(270deg,#fff .5%,hsla(0,0%,100%,0) 99%); pointer-events: none;} */

    /* 메시지 전송 */
    .sms_send {flex-direction: column;}
    .sms_send > .form_control {width: 100%;}
    .sms_send .device {margin-top: 30px;}
}

@media (max-width: 1120px) {

     /* layer popupp */
     .popup_box,
     .popup_box.sm {width: 94%;}
}

@media (max-width: 992px) {
    /* .row .divider {margin-top: 20px;} */
    /* 지도 */
    .map_box {height: 500px;}
}

@media (max-width: 768px) {
    /* #wrap {overscroll-behavior: none;} */
    .content {padding: 20px 20px;}

    /* divider */
    .divider {overflow-x: auto;}
    .divider_left,
    .divider_right {float: none;}
    .divider_right {margin-top: 10px;}

    /* card */
    .card .name {padding-bottom: 20px;}
    .card .date {margin-bottom: 20px;}

    /* nav tab */
    .nav_tab {white-space: nowrap; overflow-x: auto;}

    /* 랭킹 슬라이드 */
    /* .slide_cont .scrollTable .bbsList {min-width: 320px;} */
    .swiper-container-horizontal > .swiper-scrollbar {display: none;}

    /* process 프로세스 type02 */
    .process.type02 .step_list {margin: 0; flex-direction: column;}
    .process.type02 .step_list li {float: none; width: 100%; text-align: left; padding: 0;}
    .process.type02 .step_list li:after {content: none;}
    .process.type02 .step_list li + li {margin-top: 10px;}
    .process.type02 .step_list li span {display: inline-block; margin: 0 10px 0 0;} 

    /* layer popup */
    .popup_box .popup_body {padding: 20px 20px;}
    .popup_box .popup_header {padding: 16px 20px;}
    .popup_box .popup_header > h4 {font-size: 16px;}

    .popup_box .searchTbView td {padding-right: 0;}

}

@media (max-width: 576px) {
    .row {display: block; margin: 0;}

    /* section common */
    .section_tit h4 {font-size: 20px;}

    .divider_title {font-size: 16px;}

    .row > * {padding-left: 0; padding-right: 0; margin-bottom: 20px;}

    /* text box */
    .txt_box {padding: 20px 20px;}
    .txt_box dl dt {width: 100%;}
    .txt_box dl dd {width: 100%;}

    /* layer popup */
    /* .popup_box .search_box select {width: 100%;}
    .popup_box .search_box .search_input {width: 100%;}
    .popup_box .search_box .btn {width: 100%; margin-left: 0; margin-right: 0;} */
}


@media (max-width: 420px) {
    /* divider */
    .divider_body {padding: 15px 15px;}
    /* .divider .divider_top, 
    .divider .divider_bottom {padding: 15px 15px;} */

    .divider_item .divider_top {padding: 0;}
    .divider_item .divider_bottom {padding: 0;}
}