@charset "utf-8";
@import url(root.css);
@import url(reset.css);
@import url(font.css);

/* **************************************** *
 * reset
 * **************************************** */
 html,body,div,span,applet,section,object,iframe,h1,h2,h3,h4,h5,h6,p,i,time,figure,article,nav,header,footer,hgroup,video,audio,aside,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,button {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
ol,ul {list-style: none;}
figure,article,header,footer,nav,hgroup,video,audio,aside,main {display: block;}

/* mobile */
/*input, textarea{ -webkit-appearance: none; -webkit-border-radius:0px; border-radius:0px;}*/

/*reset mobile default style*/
body,textarea:focus,input:focus,a:focus {-webkit-tap-highlight-color: rgba(255, 255, 255, 0);}
html{-ms-text-size-adjust: none;-webkit-text-size-adjust: none;text-size-adjust: none;}


/* **************************************** *
 * common
 * **************************************** */
/*font
normal : 16px
small : 13px*/
html, body {line-height:1.5; font-size: 16px; min-width: 360px;}
html {-ms-text-size-adjust: none; -webkit-text-size-adjust: none; text-size-adjust: none}
body {overflow-x: hidden;font-family: 'Pretendard', sans-serif; letter-spacing: -0.05em; color: #2e2e2e;}
a {color: #2e2e2e; text-decoration: none;}
img{max-width:100%;}
i{font-style:inherit;}
hr{border:1px dashed #ddd; border-width:0 0 1px 0; margin:20px 0;}
hr.hr10{margin:10px 0;}
[lang="en"] {font-family: 'Pretendard', sans-serif;}

/* form control */
input, 
select, 
textarea, 
label{display:inline-block; box-sizing:border-box; width:auto; vertical-align:middle; line-height:1.4; border-radius:0;}
input[type=text],
input[type=number],
input[type=tel],
input[type=email],
input[type=password],
input[type=url],
input[type=submit],
input[type=button],
select{-webkit-appearance: none;-moz-appearance: none; appearance: none; -moz-box-sizing: border-box; box-sizing: border-box; outline: none; margin: 2px 3px; font-family: 'Pretendard', sans-serif;}
select {background:url('/images/common/icon_down.png') no-repeat; background-position: calc(100% - 10px) center; background-size: 10px auto;}
input:first-child,
select:first-child {margin-left: 0;}
input:last-child,
select:last-child {margin-right: 0;}
input[type="number"] {-moz-appearance: textfield;}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button  {-webkit-appearance: none; margin: 0;}
input[type=radio]{border-radius: 100%;}

input:disabled,
input:-moz-read-only{-webkit-box-shadow: none; box-shadow: none;}
input[readonly],
input[disabled],
textarea[readonly],
textarea[disabled]{background-color: #F2F6FC; color:#666;}

select:disabled:selected {color:#999; cursor: not-allowed;}

select::-ms-expand{display: none;}
textarea{resize:none; font-family: 'Pretendard', sans-serif; border: 1px solid #ddd; padding: 10px 10px;}
textarea:focus {outline: none;}
input[type=submit],
button{font-size:inherit; font-family: 'Pretendard', sans-serif; cursor: pointer;}
input[lang="en"],
textarea[lang="en"],
button[lang="en"] {font-family: 'Pretendard', sans-serif;}

/* **************************************** *
 * setting
 * **************************************** */
 /* placeholder */
 ::-webkit-input-placeholder {font-family: 'Pretendard', sans-serif; font-size: inherit;color: #999;}
 ::-moz-placeholder {font-family: 'Pretendard', sans-serif; font-size: inherit;color: #999;}
 :-ms-input-placeholder {font-family: 'Pretendard', sans-serif; font-size: inherit;color: #999;}
 input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {color: transparent;}
 input:focus::-moz-placeholder, textarea:focus::-moz-placeholder {color: transparent;}
 input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {color: transparent;}

/* drag */
::selection {background: var(--ad-primary); background: rgba(var(--ad-primary-rgb), .35); color:#fff;}
::-moz-selection {background: var(--ad-primary); background: rgba(var(--ad-primary-rgb), .35); color:#fff;}

/* scroll bar */
::-webkit-scrollbar {width: 6px; height: 6px;}
::-webkit-scrollbar-thumb {-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);}
::-webkit-scrollbar-track {-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);}

/* .bx reset */
.bx, .bxf{vertical-align: middle;}

/* **************************************** *
 * util
 * **************************************** */

/* layout */
.d_flex_s{display:flex; align-items: center;}
.d_flex_c{display:flex; justify-content: center; align-items: center;}
.d_flex_e{display:flex; justify-content: flex-end; align-items: center;}
.d_flex_btw{display:flex; justify-content: space-between; align-items: center}

.d_flex_s > *,
.d_flex_c > *,
.d_flex_e > *,
.d_flex_btw > *{margin:0 !important;}

.gap5{gap:5px !important;}
.gap10{gap:10px !important;}

.flex_wrap {flex-wrap: wrap;}
.dir_col{flex-direction: column; align-items: flex-start !important;}

/* border */
.bd_top {border-top: 1px solid #eee !important;}
.bd_right {border-right: 1px solid #eee !important;}
.bd_bottom {border-bottom: 1px solid #eee !important;}
.bd_left {border-left: 1px solid #eee !important;}
.bd_all {border: 1px solid #eee !important;}

/* margin / padding */
.mr5{margin-right: 5px !important;}
.mr10{margin-right: 10px !important;}

.mt10 {margin-top: 10px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}

.mb10 {margin-bottom: 10px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb30 {margin-bottom: 30px !important;}

.mt0 {margin-top: 0 !important;}
.mr0 {margin-right: 0 !important;}
.mb0 {margin-bottom: 0 !important;}
.ml0 {margin-left: 0 !important;}

.pt10{padding-top:10px !important;}
.pt20{padding-top:20px !important;}
.pt30{padding-top:30px !important;}

.pb10{padding-bottom:10px !important;}
.pb20{padding-bottom:20px !important;}
.pb30{padding-bottom:30px !important;}

.pl10{padding-left:10px !important;}
.pl20{padding-left:20px !important;}
.pl30{padding-left:30px !important;}

.pr10{padding-right:10px !important;}
.pr20{padding-right:20px !important;}
.pr30{padding-right:30px !important;}


/*tac*/
.tac {text-align: center !important;}
.tar {text-align: right !important;}
.tal {text-align: left !important;}

/* txt deco */
.txt_red {color: #E51A2F !important;}
.under_line{text-decoration: underline;}

/* cursor */
.pointer{cursor: pointer;}

/* screen reader only */
.sr_only{overflow:hidden; position:absolute; margin:-1px; width:1px; height:1px; clip:rect(0,0,0,0);}

/*주석*/
.ellip{overflow:hidden; display:block !important; width:100% !important; white-space:nowrap; word-wrap:normal; text-overflow:ellipsis;}
.ellip2{overflow:hidden; display:-webkit-box; line-height:1.4em; max-height:2.8em; -webkit-line-clamp:2; -webkit-box-orient:vertical; word-wrap:break-word; text-overflow:ellipsis;}


/* **************************************** *
 * form 
 * **************************************** */

/* marking 필수입력 */
.marking {position: relative; margin-right:10px}
.marking:after {content: '\002A'; color: var(--ad-danger); position:absolute; top:-5px; right:-10px;}

/* form input style */
.form_control {display: inline-block; width: 100%; min-height: 40px; padding: 0 16px; font-size: 1rem; font-weight: 400; color: #333; background-color: #fff; border: 1px solid #E6EBF1; border-radius: 3px; appearance: none; transition: all .25s;}
.form_control:focus {box-shadow: 0 0 0 3px rgba(var(--ad-primary-rgb), .25); border-color: var(--ad-primary);}
textarea.form_control {padding: 16px 16px;}
input[type=number].form_control {text-align: right;}
.form_select {display: inline-block; min-width: 120px; min-height: 40px; padding: 0 30px 0 16px; font-size: 1rem; font-weight: 400; color: #333; background-color: #fff; border: 1px solid #E6EBF1; border-radius: 3px; appearance: none; transition: all .25s;}
.form_select:focus {box-shadow: 0 0 0 3px rgba(var(--ad-primary-rgb), .25); border-color: var(--ad-primary);}
br ~ .form_control {margin-left: 0; margin-right: 0;}

.form_group + .form_group {margin-top: 30px;}
.form_group .form_control,
.form_group .form_select {margin-left: 0;}
.form_label {display: block; font-weight: 600; color: var(--ad-dark); margin-bottom: 10px;}
.form_group ~ .row {margin-top: 30px;}

.input_unit {display: inline-block; font-size: 1rem; vertical-align: middle; color: #666; padding: 0 3px;}
.input_group {display: flex; gap: 5px; align-items: center;}
.input_group > *{margin:0;}
.input_group .btn {min-width: auto;}
.input_group + .search_input{margin-top:6px;}
.input_group.f_wrap{flex-wrap: wrap;}

/* address_form */
.address_form{ display:flex; flex-wrap: wrap; gap: 3px;}
.address_form > *{margin:0 !important;}

/* datepicker */
.date_form {display:flex; align-items: center;}
.date_form > div {position: relative; display: flex; max-width: 150px; z-index: 0; background: #fff;}
.date_form > div .action_icon {position: absolute; top: 0; right: 0; z-index: -1; width: 40px; height: 40px; color: var(--ad-primary); text-align: center; line-height: 40px;}
.date_form input {margin: 0; background:transparent;}
.ui-widget.ui-widget-content {border: 1px solid #dadada; z-index: 10 !important;}
.ui-widget-header {border: none; background: transparent;}
.ui-datepicker-title select {padding: 0 10px; height: 30px; margin: 0 2px !important; background-position: calc(100% - 10px) center;}
.ui-datepicker .ui-icon {background-size: auto 12px;}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {background-repeat:no-repeat; background-position:50% 50%; background-size: auto 18px; top: auto;}
.ui-datepicker .ui-datepicker-prev {background-image: url('/images/common/icon_bbs_prev.png');}
.ui-datepicker .ui-datepicker-next {background-image: url('/images/common/icon_bbs_next.png');}
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {display: none;}

.ui-datepicker thead tr > th.ui-datepicker-week-end:first-child {color: #f1266a;}
.ui-datepicker thead tr > th.ui-datepicker-week-end:last-child {color: #284fda;}
.ui-datepicker tbody tr > td.ui-datepicker-week-end:first-child a {color: #f1266a;}
.ui-datepicker tbody tr > td.ui-datepicker-week-end:last-child a {color: #284fda;}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {display: inline-block; width: 30px; height: 30px; line-height: 27px; background: transparent; border: 0 !important; text-align: center; font-size: 14px; color: #666;}

.ui-datepicker-trigger {display: none !important; position: relative; z-index:10; width:40px; height:40px; /*background: url('/images/page/common/icon_calendar.svg') no-repeat 50%;*/ background-size:14px 14px; font-size:0px; text-indent:-999em; vertical-align:middle;}
.ui-datepicker-trigger {position: absolute; top: 0; right: 0;}
/* .ui-datepicker-trigger:hover,
.ui-datepicker-trigger:focus{-webkit-box-shadow:inset 0 0 0 1px #666; box-shadow:inset 0 0 0 1px #666;} */
.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year{border: 1px solid #eee; border-radius: 4px; padding-right:19px; font-family: 'Titillium', 'NotoSansKR', sans-serif;}
input + .ui-datepicker-trigger{border-left:0;}

/* datepicker hover & active */
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {background: rgba(var(--ad-primary-rgb), .3); color: #fff; border-radius: 3px;}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {background: var(--ad-primary); color: #fff !important; border-radius: 3px;}

/* timepicker */
.ui-timepicker-standard {border: 1px solid #eee; border-radius: 4px;}
.ui-timepicker-standard a {color: #666;}
.ui-timepicker-standard .ui-state-hover {background-color: var(--ad-primary); border-color: #F6F9F2; color: #fff;}

/* yearpicker */
.yearpicker-container {width: 250px; box-shadow: none; border-color: #dadada;}
.yearpicker-items {padding: 5px 10px;}
.yearpicker-items.selected,
.yearpicker-items:hover {background-color: var(--ad-primary); border-radius: 3px;}
.yearpicker-items.selected,
.yearpicker-items:hover {color: #fff;}

/* timer 타이머 */
.timer_form {position: relative; display: inline-block;}
.timer_form .timer {position: absolute; top: 50%; right: 20px; transform: translateY(-50%); font-size: 1rem; color: var(--ad-primary);}
.timer_form .form_control {padding-right: 60px;}

/* 첨부파일 */
.drop_zone + .file_list{margin-top:10px;}

/* 파일 업로더 - 드롭존 */
.drop_zone{border:1px solid #ddd; width:100%; height:120px; text-align: center; position: relative; cursor: pointer; border-radius:10px; overflow: hidden;}
.drop_zone > input[type="file"]{display:none;}
.drop_zone > img {width:100%; height:100%; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto; object-fit: contain;}

.drop_exp {position:absolute; top:0; bottom:0; left:0; right:0; margin:auto; text-align: center; height:fit-content;}
.drop_exp > img {width:40px;}
.drop_exp > b{font-size:15px; color:#666; font-weight: 400; display:block; white-space: normal; word-break: keep-all;}
.drop_exp > span {font-size: 13px; color:#999; font-weight: 400; display:block; word-break: keep-all;}

/* 파일 업로더 - 일반 */
.file_uploader {position:relative; display:flex;}
.file_uploader input[type="file"] {overflow:hidden; position:absolute; margin:-1px; width:1px; height:1px; clip:rect(0,0,0,0);}
.file_uploader input[type="text"] {margin-left: 0; margin-right: 0;}

/* file_list */
.file_list{}
.file_list > b{display:block; padding:10px 0;}
.file_list > ul{border:1px solid #ddd; border-width: 1px 0;}
.file_list > ul > li{padding:8px; display:flex; gap:10px;}
.file_list > ul > li + li{border-top:1px dashed #ddd;}
.file_list > ul > li > p{width:100%; max-width:calc(100% - 40px); display:flex; align-items: center; gap: 5px;}
.file_list > ul > li > p > *{vertical-align: middle; color:#666;}
.file_list > ul > li > p > i{color:#999;}
.file_list > ul > li .action_icon.del{flex-shrink: 0; width:30px;}

.file_list > ul > li.new_item{background:rgba(var(--ad-primary-rgb), 0.04);}
.file_list > ul > li.new_item > p > *{color:#333;}
.file_list > ul > li.new_item > p > i{color:var(--ad-primary);}

.file_list > ul > li.nodata{color:#999; padding:10px;}

/* 갯수 입력 */
.form_number {position: relative; display: inline-block; margin: 2px 0; width: 100px;}
.form_number .form_control {width: 100%; text-align: center !important; margin: 0; padding: 0 30px;}
.form_number .num_btn {position: absolute; top: 50%; transform: translateY(-50%); display: inline-block; width: 20px; height: 20px; background-color: transparent; vertical-align: middle; color: var(--ad-primary);}
.form_number .num_btn.add {right: 5px;}
.form_number .num_btn.remove {left: 5px;}
.form_number .num_btn:hover {color: var(--ad-info);}

/* 중요도 별점 */
.starRadio {display: inline-block; overflow: hidden; height:20px; min-width:100px; position:relative; z-index: 0; vertical-align: middle;}
.starRadio:after {content: ""; display: block; position: relative; z-index: 10; height: 20px; background: url('/images/common/star_radio.png') repeat-x 0 0;background-size: contain; pointer-events: none;}
.starRadio__box {position: relative; z-index: 1; float: left; width: 20px; height: 20px; cursor: pointer;}
.starRadio__box input {opacity: 0 !important; height: 0 !important; width: 0 !important;position: absolute !important;}
.starRadio__box input[type="radio"]:checked + .starRadio__img {background-color: #ffce00;}
.starRadio__img {display: block; position: absolute; right: 0; width: 500px; height: 30px; pointer-events: none;}

/* 컬러 팔레트 */
.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;}

/* 설명문 */
.tb_txt {position: relative; font-size: 14px; color: #666; word-break: keep-all; padding: 3px 0; padding-left: 15px;}
.tb_txt:before {content: '※'; font-size: inherit; position: absolute; left: 0; color: var(--ad-danger);}

/* **************************************** *
 * size 
 * **************************************** */
 .input40{width:100% !important; max-width:40px !important;}
 .input60{width:100% !important; max-width:60px !important;}
 .input70{width:100% !important; max-width:70px !important;}
 .input80{width:100% !important; max-width:80px !important;}
 .input100{width:100% !important; max-width:100px !important;}
 .input200{width:100% !important; max-width:200px !important;}
 .input300{width:100% !important; max-width:300px !important;}
 .input400{width:100% !important; max-width:400px !important;}
 .input500{width:100% !important; max-width:500px !important;}
 .inputFull{width:100% !important; max-width:100% !important;}

 .width10 {width: 10% !important;}
 .width20 {width: 20% !important;}
 .width30 {width: 30% !important;}
 .width33 {width: 33.3% !important;}
 .width40 {width: 40% !important;}
 .width50 {width: 50% !important;}
 .width60 {width: 60% !important;}
 .width70 {width: 70% !important;}
 .width80 {width: 80% !important;}
 .width90 {width: 90% !important;}
 .w_fit{width:fit-content !important;}

 .max360{width:100% !important; max-width:360px !important;}
 .max425{width:100% !important; max-width:425px !important;}
 .max640{width:100% !important; max-width:640px !important;}
 .max768{width:100% !important; max-width:768px !important;}
 .max1024{width:100% !important; max-width:1024px !important;}
 .max1280{width:100% !important; max-width:1280px !important;}
 .max1440{width:100% !important; max-width:1440px !important;}

 .min360{width:100% !important; min-width:360px !important;}
 .min425{width:100% !important; min-width:425px !important;}
 .min640{width:100% !important; min-width:640px !important;}
 .min768{width:100% !important; min-width:768px !important;}
 .min1024{width:100% !important; min-width:1024px !important;}
 .min1280{width:100% !important; min-width:1280px !important;}
 .min1440{width:100% !important; min-width:1440px !important;}


 .h100 {height: 100% !important;}


/* **************************************** *
 * bg_color 
 * **************************************** */
/* basic */
.bg_primary {background-color: var(--ad-primary) !important;}
.bg_secondary {background-color: var(--ad-secondary) !important;}
.bg_success {background-color: var(--ad-success) !important;}
.bg_danger {background-color: var(--ad-danger) !important;}
.bg_warning {background-color: var(--ad-warning) !important;}
.bg_positive {background-color: var(--ad-positive) !important;}
.bg_info {background-color: var(--ad-info) !important;}
.bg_light {background-color: var(--ad-light) !important; color: var(--ad-secondary) !important;}
.bg_dark {background-color: var(--ad-dark) !important;}
.bg_white {background-color: #fff !important;}
.bg_gray {background-color: var(--ad-gray) !important;}
.bg_data{background:#fff !important; color:#666 !important; border:1px solid #E6EBF1;}

.bg_primary_rgb {background-color: rgba(var(--ad-primary-rgb), .15) !important; color: var(--ad-primary) !important;}
.bg_secondary_rgb {background-color: rgba(var(--ad-secondary-rgb), .15) !important; color: var(--ad-secondary) !important;}
.bg_success_rgb {background-color: rgba(var(--ad-success-rgb), .15) !important; color: var(--ad-success) !important;}
.bg_danger_rgb {background-color: rgba(var(--ad-danger-rgb), .15) !important; color: var(--ad-danger) !important;}
.bg_warning_rgb {background-color: rgba(var(--ad-warning-rgb), .05) !important; color: var(--ad-warning) !important;}
.bg_positive_rgb {background-color: rgba(var(--ad-positive-rgb), .15) !important; color: var(--ad-positive) !important;}
.bg_info_rgb {background-color: rgba(var(--ad-info-rgb), .15) !important; color: var(--ad-info) !important;}
.bg_gray_rgb{background-color:rgba(var(--ad-gray-rgb), .15) !important; color:#999 !important;}

.bg_gradient {background: linear-gradient(135deg, var(--ad-primary) 0%, var(--ad-info) 100%) !important;}
.bg_gradient * {color: #fff !important;}


/* **************************************** *
 * text_color 
 * **************************************** */
 .txt_primary {color: var(--ad-primary) !important;}
 .txt_secondary {color: var(--ad-secondary) !important;}
 .txt_success {color: var(--ad-success) !important;}
 .txt_danger {color: var(--ad-danger) !important;}
 .txt_warning {color: var(--ad-warning) !important;}
 .txt_positive {color: var(--ad-positive) !important;}
 .txt_info {color: var(--ad-info) !important;}
 .txt_dark {color: var(--ad-dark) !important;}
 .txt_gray {color: var(--ad-gray) !important;}
 .txt_white {color: #fff !important;}


/* **************************************** *
 * components button
 * **************************************** */
 .btn_wrap {text-align: center; margin-top: 20px;}
 .btn_wrap:after {content: ''; display: block; clear: both;}
 .btn_left {float: left;}
 .btn_right {float: right;}
 .btn_btw{display:flex; justify-content: space-between; align-items: }

 .btn {display: inline-block; min-width: 80px; height: 40px; line-height: 38px; font-size: 1rem; font-weight: 400; text-align: center; vertical-align: middle; user-select: none; border: 1px solid transparent; background-color: transparent; transition: color .15s; border-radius: 3px; padding: 0 16px; margin: 2px 3px; white-space: nowrap; flex-shrink: 0;}
 .btn-primary {color: #fff; background-color: var(--ad-primary); border-color: var(--ad-primary);}
 .btn-success {color: #fff; background-color: var(--ad-success); border-color: var(--ad-success);}
 .btn-danger {color: #fff; background-color: var(--ad-danger); border-color: var(--ad-danger);}
 .btn-secondary {color: #fff; background-color: var(--ad-secondary); border-color: var(--ad-secondary);}
 .btn-warning {color: #fff; background-color: var(--ad-warning); border-color: var(--ad-warning);}
 .btn-info {color: #fff; background-color: var(--ad-info); border-color: var(--ad-info);}
 .btn-light {color: var(--ad-dark); background-color: var(--ad-light); border-color: var(--ad-light);}
 .btn-dark {color: #fff; background-color: var(--ad-dark); border-color: var(--ad-dark);}
 .btn-gray {color: #fff; background-color: var(--ad-gray); border-color: var(--ad-gray);}

/* button smooth */
.btn-smth-primary {color: var(--ad-primary); background-color: rgba(var(--ad-primary-rgb), .12);}
.btn-smth-success {color: var(--ad-success); background-color: rgba(var(--ad-success-rgb), .12);}
.btn-smth-danger {color: var(--ad-danger); background-color: rgba(var(--ad-danger-rgb), .12);}
.btn-smth-warning {color: #ffa000; background-color: rgba(var(--ad-warning-rgb), .12);}
.btn-smth-info {color: var(--ad-info); background-color: rgba(var(--ad-info-rgb), .12);}
.btn-smth-dark {color: var(--ad-dark); background-color: rgba(var(--ad-dark-rgb), .12);}

/* button line */
.btn-line-primary {color: var(--ad-primary); background-color: #fff; border-color: var(--ad-primary);}
.btn-line-success {color: var(--ad-success); background-color: #fff; border-color: var(--ad-success);}
.btn-line-danger {color: var(--ad-danger); background-color: #fff; border-color: var(--ad-danger);}
.btn-line-secondary {color: var(--ad-secondary); background-color: #fff; border-color: var(--ad-secondary);}
.btn-line-warning {color: var(--ad-warning); background-color: #fff; border-color: var(--ad-warning);}
.btn-line-info {color: var(--ad-info); background-color: #fff; border-color: var(--ad-info);}
.btn-line-light {color: #111; background-color: #fff; border-color: #CBD2DC;}
.btn-line-dark {color: var(--ad-dark); background-color: #fff; border-color: var(--ad-dark);}
.btn-line-gray {color: var(--ad-gray); background-color: #fff; border-color: var(--ad-gray);}

.btn.sm {min-width: 60px; height: 30px; line-height: 28px; font-size: 13px; padding: 0 10px;}
.btn.lg {min-width: 120px; height: 50px; line-height: 48px; font-size: 1rem; padding: 0 20px;}

.btn:hover,
.btn:focus {opacity: .8;}

/* 아이콘 버튼 */
.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.on:not(.del){color:var(--ad-primary)}
.action_icon.del {color: var(--ad-danger);}

/* 엑셀 아이콘 */
.excel_icon {display: inline-block; width: 18px; height: 18px; background: url('/images/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;}

/* 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; width:fit-content;}
.badge.md {font-size: 14px; padding: 5px 10px;}

/* widget_icon */
.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;}

/* tooltip */
[data-tooltip] {position: relative; z-index: 2; cursor: pointer;}
[data-tooltip]:before,
[data-tooltip]:after {visibility: hidden; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; pointer-events: none;}
[data-tooltip]:before {position: absolute; bottom: 150%; left: 50%; margin-bottom: 5px; margin-left: -80px; padding: 7px; width: 160px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; background-color: #000; background-color: hsla(0, 0%, 20%, 0.9); color: #fff; content: attr(data-tooltip); text-align: center; font-size: 14px; line-height: 1.2;}
[data-tooltip]:after {position: absolute; bottom: 150%; left: 50%; margin-left: -5px; width: 0; border-top: 5px solid #000; border-top: 5px solid hsla(0, 0%, 20%, 0.9); border-right: 5px solid transparent; border-left: 5px solid transparent; content: " "; font-size: 0; line-height: 0;}
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {visibility: visible; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100); opacity: 1;}


/* **************************************** *
 * components checkbox & radio
 * **************************************** */

 /* chk_wrap */
 .chk_wrap {display:flex; flex-wrap: wrap; gap: 5px 10px; align-items: center;}

/*.chk_st_tag{position:relative;}
.chk_st_tag input{appearance: none; position:absolute; left:0; top:0;}
.chk_st_tag label{border:1px solid #ddd; padding:5px 15px; border-radius:20px; background:#f5f5f5; color:#8592A3; font-size:15px;}
.chk_st_tag input:checked + label{border-color:#666; color:var(--ad-dark); background:#fff;}

.chk_st_label{position:relative;}
.chk_st_label input{appearance: none; position:absolute; left:0; top:0;}
.chk_st_label label{border:1px solid #ddd; padding:0 5px; border-radius:3px; background:#f5f5f5; color:#8592A3; font-size:15px;}
.chk_st_label input:checked + label{border-color:#666; color:var(--ad-dark); background:#fff;}*/

/* checkbox */
.designChk {display: inline-block;}
.designChk input[type="checkbox"] {width: 18px; height: 18px; vertical-align: top; border: 1px solid #CBD2DC; background-color:#fff; border-radius: 5px; float: left; margin: 0; margin-top: 4px; appearance: none; -webkit-appearance: none; -moz-appearance: none; transition: all .25s;}
.designChk label {font-size: 1rem; color: inherit; max-width: calc(100% - 18px);}
.designChk label span {display: inline-block; padding-left: 5px; color: inherit;}
.designChk input[type="checkbox"]:checked {background-color: var(--ad-primary); border-color: var(--ad-primary); background-image: url('/images/common/icon_check.svg'); background-repeat: no-repeat; background-position: 50% 50%; background-size: contain; }
.designChk input[type="checkbox"]:checked + label {color: #000;}
.designChk input[type="checkbox"]:focus {box-shadow: 0 0 0 3px rgba(var(--ad-primary-rgb), .25); border-color: var(--ad-primary);}
.designChk input[type="checkbox"]:disabled {cursor: not-allowed; -webkit-filter: none; filter: none; background-color: #F2F6FC; opacity: .5;}
.designChk input[type="checkbox"]:disabled + label{opacity: .5;}
.designChk input[type="checkbox"]:checked:disabled{background-color:var(--ad-primary);}

/* radio */
.designRadio {display: inline-block;}
.designRadio input[type="radio"] {width: 18px; height: 18px; vertical-align: top; border: 1px solid #CBD2DC; background-color: #fff; border-radius: 50%; float: left; margin: 0; margin-top: 4px; appearance: none; -webkit-appearance: none; -moz-appearance: none; transition: all .25s;}
.designRadio label {font-size: 1rem; color: inherit; max-width: calc(100% - 18px);}
.designRadio label span {display: inline-block; padding-left: 5px; color:inherit;}
.designRadio input[type="radio"]:checked {background-color: var(--ad-primary); border-color: var(--ad-primary); background-image: url('/images/common/icon_radio.svg'); background-repeat: no-repeat; background-position: 50% 50%; background-size: contain;}
.designRadio input[type="radio"]:checked + label {color: #000;}
.designRadio input[type="radio"]:focus {box-shadow: 0 0 0 3px rgba(var(--ad-primary-rgb), .25); border-color: var(--ad-primary);}
.designRadio input[type="radio"]:disabled {cursor: not-allowed; -webkit-filter: none; filter: none; background-color: #F2F6FC; opacity: .5;}
.designRadio input[type="radio"]:disabled + label{opacity: .5;}
.designRadio input[type="radio"]:disabled:checked{background-color:var(--ad-primary);}

/* 버튼형 checkbox & radio */
.choice {display: inline-block;}
.choice input[type="checkbox"],
.choice input[type="radio"] {display: none;}
.choice 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;}
.choice label > span {color: #666;}
.choice input:checked + label {border-color: var(--ad-primary); box-shadow: 0 3px 5px 0 rgba(var(--ad-primary-rgb), .15);}
.choice input:checked + label > span {color: var(--ad-primary); font-weight: 600;}

.choice.sm label{min-width:60px; height:30px; line-height:30px; padding:0 10px; font-size:13px; border-radius:3px;}

/* **************************************** *
 * components list style
 * **************************************** */

 .list_top{display:flex; justify-content: space-between; align-items: baseline;}

/* images */
.img_box {position: relative; width: 100%; padding-top: 65%; border: 1px solid #eee; overflow: hidden; display:block;}
.img_box > img {position: absolute; top: 0; left: 0; width: 100%; min-height: 100%; max-height: none; min-width: 100%; object-fit: cover;}

.img_box.photo_box{padding-top:65%;}
.img_box.photo_box > img{height:100%; object-fit: cover;}

.img_box.sns_box{padding-top:100%;}
.img_box.sns_box > img{height:100%; object-fit:cover;}

.img_box.video_box{padding-top:65%; background:#222;}
.img_box.video_box > img{height:100%; object-fit: contain;}

.img_box.poster_box {padding-top:141%;}
.img_box.poster_box > img{height:100%; object-fit: contain;}

/* text box */
.txt_box {background-color: var(--ad-light); padding: 20px 30px; border-radius: 5px;}
.txt_box dl {display:flex;}
.txt_box dl + dl {margin-top: 10px;}
.txt_box dl dt {font-size: 1rem; width: 180px; font-weight: 600; color: #666; vertical-align: top;}
.txt_box dl dd {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:145%; padding-left: 10px; margin-top: 4px; font-size: 15px; font-weight: 400; 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);}

/* num list */
.num_list > li{position: relative; display: block; padding-left: 18px; font-size:15px; text-align: left; line-height:145%;}
.num_list > li:before{content:''; position:absolute; top:0; left:0; font-size:1rem;}
.num_list > li:nth-child(1):before{content:'①'}
.num_list > li:nth-child(2):before{content:'②'}
.num_list > li:nth-child(3):before{content:'③'}
.num_list > li:nth-child(4):before{content:'④'}
.num_list > li:nth-child(5):before{content:'⑤'}
.num_list > li:nth-child(6):before{content:'⑥'}
.num_list > li:nth-child(7):before{content:'⑦'}
.num_list > li + li{margin-top:5px;}

/* tag 태그 */
.tag_object {display:flex; gap:5px; align-items: center; flex-wrap: wrap;}
.tag_object .obj {display:flex; align-items: center; gap: 5px; padding:5px 10px; border:1px solid #dfdfdf; border-radius:30px; line-height: 1;}
.tag_object .obj .name{color: #666;}
.tag_object .obj .del{cursor:pointer; padding:0;}
.tag_object .obj:hover{box-shadow: 1px 1px 1px rgba(0,0,0,0.05);}

/* 상태 & 라벨 리스트 */
.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_list li .state {width: 16px; height: 16px; border-radius: 4px; background-color: #eee;}
.state_list li .state.state01 {background: rgba(var(--ad-info-rgb), .3);}
.state_list li .state.state02 {background: rgba(var(--ad-success-rgb), .3);}
.state_list li .state.state03 {background: rgba(var(--ad-danger-rgb), .3);}
.state_list li .state.state04 {background: rgba(var(--ad-positive-rgb), .3);}
.state_list li .state.state05 {background: rgba(var(--ad-dark-rgb), .3);}
.state_list li span {margin-left: 3px;}

/* 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;}

/* **************************************** *
 * layer popup
 * **************************************** */

/* 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/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: 30px; padding-top:0;}

.popup_box .fixedY {max-height: 303px;}



/* **************************************** *
* responsive
* **************************************** */

@media (max-width: 1920px) {

    .d_flex_xxl_s{display:flex; align-items: center;} 
    .d_flex_xxl_c{display:flex; justify-content: center; align-items: center;} 
    .d_flex_xxl_e{display:flex; justify-content: flex-end; align-items: center;} 
    .d_flex_xxl_btw{display:flex; justify-content: space-between; align-items: center}

    .flex_xxl_wrap{flex-wrap: wrap;}
    .dir_xxl_col{flex-direction: column; align-items: flex-start !important;}

}


@media (max-width: 1280px) {

    .d_flex_xl_s{display:flex; align-items: center;} 
    .d_flex_xl_c{display:flex; justify-content: center; align-items: center;} 
    .d_flex_xl_e{display:flex; justify-content: flex-end; align-items: center;} 
    .d_flex_xl_btw{display:flex; justify-content: space-between; align-items: center}

    .flex_xl_wrap{flex-wrap: wrap;}
    .dir_xl_col{flex-direction: column; align-items: flex-start !important;}

}

@media (max-width: 1024px){

    .d_flex_lg_s{display:flex; align-items: center;} 
    .d_flex_lg_c{display:flex; justify-content: center; align-items: center;} 
    .d_flex_lg_e{display:flex; justify-content: flex-end; align-items: center;} 
    .d_flex_lg_btw{display:flex; justify-content: space-between; align-items: center}

    .flex_lg_wrap{flex-wrap: wrap;}
    .dir_lg_col{flex-direction: column; align-items: flex-start !important;}

/* **************************************** *
* layer popup
* **************************************** */
/* layer popupp */
.popup_box,
.popup_box.sm {width: 94%;}

}

@media (max-width:768px){
/* **************************************** *
* reset
* **************************************** */

html, body {line-height:1.5; font-size: 14px; touch-action: manipulation; overscroll-behavior: none;}

.d_flex_md_s{display:flex; align-items: center;} 
.d_flex_md_c{display:flex; justify-content: center; align-items: center;} 
.d_flex_md_e{display:flex; justify-content: flex-end; align-items: center;} 
.d_flex_md_btw{display:flex; justify-content: space-between; align-items: center}

.flex_md_wrap{flex-wrap: wrap;}
.dir_md_col{flex-direction: column; align-items: flex-start;}

/* **************************************** *
* form 
* **************************************** */
.form_control,
.form_select {min-height: 36px;}

/* 날짜 */
.date_form {display: flex; align-items: center; gap:4px}
.date_form > div {max-width: none; margin: 2px 0;}
.date_form > div .action_icon {width: 36px; height: 36px; line-height: 36px;}
.date_form .input_unit {display: block;}

/* **************************************** *
* components button
* **************************************** */
/* button */
.btn {height: 36px; line-height: 34px;}

.btn.lg {height: 46px; line-height: 44px;}
.btn.sm {height: 26px; line-height: 24px;}

/* **************************************** *
* components checkbox & radio
* **************************************** */
.choice label{height:36px; line-height:36px;}

/* **************************************** *
* layer popup
* **************************************** */
/* 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: 640px) {

   .list_top .only_to_640{display:none;}

}
@media (max-width: 576px) {
    
    .d_flex_sm_s{display:flex; align-items: center;} 
    .d_flex_sm_c{display:flex; justify-content: center; align-items: center;} 
    .d_flex_sm_e{display:flex; justify-content: flex-end; align-items: center;} 
    .d_flex_sm_btw{display:flex; justify-content: space-between; align-items: center}

    .flex_sm_wrap{flex-wrap: wrap;}
    .dir_sm_col{flex-direction: column; align-items: flex-start !important;}

}

@media (max-width: 425px) {

    .d_flex_xm_s{display:flex; align-items: center;} 
    .d_flex_xm_c{display:flex; justify-content: center; align-items: center;} 
    .d_flex_xm_e{display:flex; justify-content: flex-end; align-items: center;} 
    .d_flex_xm_btw{display:flex; justify-content: space-between; align-items: center}

    .flex_xm_wrap{flex-wrap: wrap;}
    .dir_xm_col{flex-direction: column; align-items: flex-start !important;}

}

@media (max-width: 360px) {

/* **************************************** *
* reset
* **************************************** */
body {overflow-x: auto;}
}