@charset "utf-8";

a, a:hover, a:focus, .btn-link, .btn-link:focus {text-decoration:none }
a, a:focus, .btn-link, .btn-link:focus { color:inherit; font-weight:inherit }
a:hover{color:#118eff}

/*table default*/
/*.table td, .table th { white-space: nowrap;}
.table th, .table td:not(.text-left) {text-align:center; vertical-align: middle;}
.table .text-left a {color:inherit}
@media screen and (max-width: 767px) {
	.table-responsive {margin-bottom: 1rem }
	.table-responsive .table {margin-bottom: 0; }
}*/
.table-nowrap th, .table-nowrap td { white-space: nowrap }
.table thead th { white-space: nowrap;vertical-align:middle}
.table th, .table td:not(.text-left) {text-align:center; vertical-align: middle}
.table td.text-left { min-width:200px }
.table .text-left a {color:inherit}

.table-responsive {margin-bottom: 1rem }
.table-responsive .table {margin-bottom: 0; }
.table-sm thead th { padding-top:.75rem; padding-bottom:.75rem }

/*form*/
.input-group .btn-group .btn:last-child, .btn-toolbar .btn-group:first-child .btn {border-top-right-radius: 0; border-bottom-right-radius: 0;}
.input-group .form-control + .input-group-prepend {margin-left:-1px}
.btn-toolbar .btn-group:last-child .btn {border-top-left-radius: 0; border-bottom-left-radius: 0;}
.btn-toolbar .input-group > *, .btn-toolbar .input-group .input-group-text { border-radius:0 !important }
.btn-group .input-group-text, .btn-group .form-control:not(:first-child):not(:last-child), .btn-group .custom-select { border-radius: 0 !important; }
.input-group-text .custom-control { min-height: 1rem; }
.input-group-prepend > .btn-outline-secondary, .input-group-append > .btn-outline-secondary { border-color:#ced4da;}

.form-text { padding-left: 1.2rem; position:relative; text-align:left ; }
.form-text:before { font-family: 'Font Awesome 5 Free'; content: "\f059";color:#007bff; position: absolute;top: .05rem;left: 0;}

@media (max-width: 576px) {
	.rounded-sm-right { border-top-right-radius: .2rem !important; border-bottom-right-radius: .2rem !important} 
	.mx-sm-n15 { margin-left:-15px; margin-right:-15px }/*container 안에 md아하일때 15px 확장*/
	/*only for mobile*/
	.input-group-sm > .form-control, .input-group-sm > .custom-select, .input-group-sm > .input-group-prepend > .input-group-text, .input-group-sm > .input-group-append > .input-group-text, .input-group-sm > .input-group-prepend > .btn, .input-group-sm > .input-group-append > .btn, .btn-sm, .btn-group-sm > .btn {  padding: 0.15rem 0.5rem;	}
}
:not(.input-group) > .invalid-tooltip {margin-left:15px}
.invalid-tooltip {font-size:.75rem; padding: 0.15rem 0.5rem;margin-top:8px}
.invalid-tooltip::before { content: ''; position: absolute; display: block; left: 8px; margin-top: -9px; width: 0; height: 0; border-bottom: 8px dashed rgba(220, 53, 69, 0.9); border-right: 8px solid transparent; border-left: 8px solid transparent; }

/*Buttons with Ripple Effect*/
.btn:not(.dropdown-toggle):not(:disabled):not(.avatar-icon) { position:relative; overflow:hidden; transform:translate3d(0,0,0) }
.btn:not(.dropdown-toggle):not(:disabled):not(.avatar-icon):after { content:""; display:block; position:absolute; width:100%; height:100%; top:0; left:0; pointer-events:none; background-image:radial-gradient(circle,#000 10%,transparent 10.01%); background-repeat:no-repeat; background-position:50%; transform:scale(10,10); opacity:0; transition:transform .5s,opacity 1s }
.btn:not(.dropdown-toggle):not(:disabled):not(.avatar-icon):active:after { transform:scale(0,0); opacity:.2; transition:0s }

/*popover mb-info*/
.mb-info a {display:block; padding:.15rem 0 .15rem 1rem; font-size:.8rem}
.mb-info a i { color: #6c757d }
.mb-info a:hover { background-color: #f8f9fa; color:inherit }

/*custom form*/
.custom-control-label::before {background-color: #f7f7f7; border: 1px solid #ced4da;}
.custom-checkbox .custom-control-label::before { border-radius:0;}
.custom-checkbox .custom-control-input ~ .custom-control-label::before,
.custom-radio .custom-control-input ~ .custom-control-label::before {background-repeat: no-repeat; background-position: center center; background-size: 50% 50%}
.custom-checkbox .custom-control-input ~ .custom-control-label::before { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23ccc' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,.custom-radio .custom-control-input:checked ~ .custom-control-label::before {border:none; }
.custom-radio .custom-control-input ~ .custom-control-label::before {background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23ccc'/%3E%3C/svg%3E");
}
.custom-select.custom-select-inline { width:auto }
.custom-checkbox-btn { padding-left:2.3rem; margin-right:0 }
.custom-select option:disabled {background: #e9ecef;color:#999 }
.btn > .custom-checkbox { min-height:1rem; margin-right: -.5rem; }

/*for custom input sm size*/
.input-group-sm .input-group-text {height: calc(1.5em + .5rem + 2px);}
.custom-file.form-control-sm, .custom-file.form-control-sm > * { height: calc(1.5em + .5rem + 2px); overflow: hidden}
.custom-file.form-control-sm .custom-file-label, .custom-file.form-control-sm .custom-file-label::after { padding: .2rem .75rem; line-height:1.5 }
.custom-file.form-control-sm .custom-file-label::after {height: calc(1.5em + .5rem); }

/*custom switch*/
.default-switch {margin-right:1.5rem} 
.default-switch .custom-control-label:before { width: 3.8rem;height: 1.25rem; border-radius:5rem; top:0;  box-shadow: inset 0 1px 2px rgba(0,0,0,.3),inset 1px 0 2px rgba(0,0,0,.1); }
.default-switch .custom-control-label:after { width: calc(1.25rem - 4px); height: calc(1.25rem - 4px); border-radius: 5rem;top: calc(0rem + 2px);border: 1px solid #fff; }
.default-switch .custom-control-input:checked ~ .custom-control-label::after { -webkit-transform: translateX(2.6rem); transform: translateX(2.6rem);}
.default-switch .custom-control-input ~ .custom-control-label::before { content:attr(data-off);line-height:1.1; position: absolute;  text-align: right; padding: .2rem .5rem; font-size: .75rem; font-weight:300; line-height:100% }
.default-switch .custom-control-input:checked ~ .custom-control-label::before { content:attr(data-on);line-height:1.1; text-align: left}

/*sns icon*/
.sns a:not(.nav-link):not(.btn) {min-width:71px; display:inline-block; margin:0 0 1.5rem;text-align: center; -webkit-transition: 0.3s;-o-transition: 0.3s;transition: 0.3s }
.sns a:hover i, .sns a:focus i { -webkit-transform: scale(1.2);-moz-transform: scale(1.2);-ms-transform: scale(1.2);-o-transform: scale(1.2);transform: scale(1.2) }
.sns a i { -webkit-transition: 0.3s;-o-transition: 0.3s;transition: 0.3s }
.sns i, .sns a i, .sns-login a i, .sns span i, .sns-icon i{ width:48px; height:48px;display:block; }
.sns a i, .sns-login a i, .sns span i, .sns-icon i{ background:url('../images/snsSet.png') no-repeat }
.sns a i, .sns span i, .sns .fa-share-alt { margin:0 auto 5px;box-shadow: 0 0 0 1px rgba(0,0,0,.2) inset }
.sns .fa-share-alt {width:48px; height:48px;display:block;padding:15px;margin-left:15px; margin-right:15px;font-size:20px}
.sns-login {margin-bottom:20px; text-align:center }
.sns-login a, .sns-login a:hover, .sns-login a:focus {display: inline-block; margin:0 2px; border-radius:0;padding:0;background-color:transparent;border-color:transparent  }
.sns a span, .sns-login a span, .sns i + span { font-size:13px; letter-spacing:-1px; color:#444}

.facebook i, #facebook i {background-position:0 0px !important }
.twitter i, #twitter i {background-position:0 -48px !important }
.google i {background-position:0 -96px !important}
.naver i {background-position:0 -144px !important}
.daum i, #daum i {background-position:0 -192px !important }
.kakao i, .kakaotalk i, #kakaotalk i {background-position:0 -240px !important }
#kakaostory i {background-position:0 -288px !important }
#band i {background-position:0 -336px !important }
#line i {background-position:0 -384px !important }
.mail i, #mail i {background-position:0 -432px !important }
.happybean i, #happybean i {background-position:0 -480px !important }
.youtube i, #youtube i {background-position:0 -528px !important }
@media screen and (max-width:767px){
	ul.sns a {padding:0; }
}

/*sns 구분선*/
.hrtit { display: block; margin: 20px 0; overflow: hidden; text-align: center; white-space: nowrap;  width: 100% }
.hrtit > span { display: inline-block; position: relative; color:#333 }
.hrtit > span::before { margin-right: 5px; right: 100% }
.hrtit > span::after { left: 100%; margin-left: 5px }
.hrtit > span::before, .hrtit > span::after { background: #ccc; content: ""; height: 1px; position: absolute; top: 50%; width: 9999px }

hr.hr-text { position: relative; border: none; height: 1px;  background: #dee2e6; font-size: .95rem; color:#212529}
hr.hr-text::before {  content: attr(data-content); display: inline-block; white-space: nowrap; background: #fff; padding: .2rem .4rem;  position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%, -50%); }

/**/
.text-shadow {text-shadow: 3px 3px 3px rgba(0,0,0,.7)}

/*비율에 맞는 이미지(background-image:url()로 사용)*/
.ratio {background-color:#fff; background-position: center center; background-repeat: no-repeat; background-size: cover; height: 0; padding-bottom: 100%; position: relative; width: 100%; }
.ratio-sm {background-size: contain}

.close-lg { color: inherit; font-size: 2rem; font-weight: 100;}

.text-multitruncate { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; display: -moz-box; display: box; -webkit-box-orient: vertical; -moz-box-orient: vertical; box-orient: vertical; word-break: break-all; word-wrap: break-word; /*default*/-webkit-line-clamp: 2; line-clamp: 2; white-space: normal;}
.selected { background-color: #e4e9f6 !important; transition: background-color .5s; }

/*nav-custom*/
.tabs-scroller { height: calc(2.6rem + .3rem); overflow-y: hidden; z-index: 2;border-bottom:1px solid #ced4da}
.tabs-scroller .nav-custom { -ms-flex-wrap: nowrap; flex-wrap: nowrap; white-space: nowrap; -webkit-overflow-scrolling: touch; overflow-x: auto; padding-bottom: 1rem; }
.nav-custom .nav-link {padding: .5rem 1rem .65rem; font-size: 1rem;}
.nav-custom .nav-link.active, .nav-custom .nav-link:hover, .nav-custom .nav-link:focus { border-color: transparent; color:inherit;background-color: transparent; }
.nav-custom .nav-link.active {border-bottom: 2px solid #007bff; color:#007bff; font-weight: 600;}
@media screen and (max-width: 767px) {
	.tabs-scroller { height: 2.75rem; }
	.nav-custom .nav-link {padding: .4rem .6rem .45rem;}
}

/*ul ol*/
.list-unstyled-dot > li {margin-left:10px}
.list-unstyled-dot > li:before {content:'·'; color:rgba(0,0,0,.6); margin-left:-10px;margin-right:5px; font-weight:700; font-size: 120%; line-height: 100% }

.list-inline-divide {margin-bottom:.5rem}
.list-inline-divide li { font-size:.85rem; position: relative; padding-right:7px }
.list-inline-divide li:not(:first-child) { padding-left:7px }
.list-inline-divide li:not(:last-child):after {content:'|'; color:rgba(0,0,0,.3);position:absolute; bottom:0; right:-7px }

ol.rounded-list { counter-reset: li;list-style: none;*list-style: decimal;padding-left: 0 !important }
ol.rounded-list > li {position:relative; padding-left:28px; text-align: left }
ol.rounded-list > li:before{ content: counter(li); counter-increment: li; position: absolute; left:0; top: .1rem; background-color: #31b0d5; height: 1.25rem; width: 1.25rem; text-align: center;  border-radius: 4px; color: #fff; font-size: .85rem; padding: .05rem; }

sup.badge { font-size:60%;top: -.5em !important; }

/*for icon*/
.badge-comment:before {font-family: 'Font Awesome 5 Free';font-weight: 900;   content: "\f27a"; margin-right:3px}

/*from bs3*/
.pre-scrollable {padding: 0.25rem 0.5rem; border: 1px solid #ced4da; border-radius: 0.2rem;white-space: normal; }

/*bs4 보정*/
.no-caret::after { border: 0; }
mark, .mark { padding: 0 .2em; background-color: yellow; font-weight: inherit; }
.input-group .input-group-append + .form-control, .input-group .btn-group  + .form-control {border-left-width:0}
.carousel .carousel-indicators li { min-width: 15px; width: 15px;}
.carousel .carousel-indicators li.active { background-color: #007bff; min-width: 25px; }
.tooltip {font-size:.7rem}
.popover, .tooltip { z-index: 1039;}/*modal 뒤로 감추기*/
@media screen and (min-width: 768px) { .modal-lg .modal-header, .modal-lg .modal-body, .modal-lg .modal-footer {padding-left:2rem; padding-right:2rem} }
@media screen and (min-width: 1400px) { .container, .container-sm, .container-md, .container-lg { max-width: 1320px;} }

/*회원레이어*/
.popover.border-0 .arrow:before {border:0}
.mb-login .fa-fw {text-align:left}

/*background*/
.bg-transparent {background:transparent}
.bg-black-50 {background:rgba(0,0,0,.5)}
.bg-white-50 {background:rgba(255,255,255,.5)}

/*position-absolute || .modal-dialog, #toast-container 위치*/
.top-0 {top:0}
.left-0 {left:0}
.right-0{right:0}
.bottom-0 {bottom:0}

/*modal*/
/*border-radius:0; border:0 style modal */
.modal .modal-dialog .modal-content.rounded-0.border-0 .modal-header {border-radius:0; border:0}
.modal.fade.top:not(.show) .modal-dialog{-webkit-transform:translate3d(0,-25%,0);transform:translate3d(0,-25%,0)}
.modal.fade.left:not(.show) .modal-dialog{-webkit-transform:translate3d(-25%,0,0);transform:translate3d(-25%,0,0)}
.modal.fade.right:not(.show) .modal-dialog{-webkit-transform:translate3d(25%,0,0);transform:translate3d(25%,0,0)}
.modal.fade.bottom:not(.show) .modal-dialog{-webkit-transform:translate3d(0,25%,0);transform:translate3d(0,25%,0)}
 
.modal.modal-scrolling{position:relative}
.modal.modal-scrolling .modal-dialog{position:fixed;z-index:1050}
.modal.modal-content-clickable{top:auto;bottom:auto}
.modal.modal-content-clickable .modal-dialog{position:fixed}
.modal .modal-fluid{width:100%;max-width:100%}
.modal .modal-fluid .modal-content{width:100%}
.modal .modal-frame{position:absolute;width:100%;max-width:100% !important;margin:0 !important}
.modal .modal-frame.modal-bottom{bottom:0}
.modal .modal-full-height{position:absolute;top:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;width:400px;height:auto;height:100%;/*for ie*/min-height:100%;margin:0}
.modal .modal-full-height.modal-top,.modal .modal-full-height.modal-bottom{display:block;width:100%;max-width:100%;height:auto}
.modal .modal-full-height.modal-top{bottom:auto}
.modal .modal-full-height.modal-bottom{top:auto;min-height:0}
.modal .modal-full-height .modal-content{width:100%}
.modal .modal-full-height.modal-lg{width:90%;max-width:90%}

@media(min-width:992px) and (min-width:992px){
	.modal .modal-full-height.modal-lg{width:800px;max-width:800px}
}
@media(min-width:992px) and (min-width:1200px){
	.modal .modal-full-height.modal-lg{width:1000px;max-width:1000px}
}
@media(max-width:576px) {
	.modal .modal-full-height{width:90%}
}
@media(min-width:992px){
	.modal .modal-side{position:absolute;right:10px;bottom:10px;width:400px;margin:0}
}
.modal.modal-static { overflow-y:hidden}
/*.modal.fade .modal-dialog { -webkit-transform: translate(0); -moz-transform: translate(0); transform: translate(0);}*/

/*toast*/
 #toast-container{position:fixed;z-index:999999; padding:15px}
 #toast-container .toast{width:290px;overflow:hidden; font-size:1rem; font-weight:100}

/* 1.41 Avatar  Thanks to Spectre.css */
.avatar {background: #6777ef;border-radius: 50%;color: #e3eaef; display: inline-block;font-size: 16px;font-weight: 300;margin: 0; position: relative; vertical-align: middle;white-space: nowrap;line-height: 1.28; height: 45px;width: 45px; box-shadow: 0 0 0 1px rgba(0,0,0,.2) inset; line-height:1.2;background-position: center center;background-repeat: no-repeat;background-size: cover;}
.avatar-responsive {height: 0;padding-bottom: 100%;position: relative;width: 100%}
.avatar.avatar-sm {font-size: 13px; height: 30px; width: 30px; } .avatar-sm span {left:35px}
.avatar.avatar-md {font-size: 15px; height: 45px; width: 45px; } .avatar-md span {left:50px}
.avatar.avatar-lg {font-size: 23px; height: 60px; width: 60px; } .avatar-lg span {left:65px}
.avatar.avatar-xl {font-size: 30px; height: 75px; width: 75px; } .avatar-xl span {left:80px}
.avatar img {border-radius: 50%; height: 100%; position: relative; width: 100%; z-index: 1; }
.avatar .avatar-icon {background: #fff; color:#333; position: absolute; right: 14.64%;bottom: 14.64%;width: 1.5rem; height: 1.5rem; padding: 0;transform: translate(50%, 50%);z-index: 2;box-shadow: 0 0 0 1px rgba(0,0,0,.2) inset;border-radius: 50%;font-size:.75rem; border:0 }
.avatar .avatar-presence {background: #fff; bottom: 14.64%;height: 50%;padding: .1rem; position: absolute; right: 14.64%; transform: translate(50%, 50%); width: 50%;
z-index: 2; background: #bcc3ce; border-radius: 50%;box-shadow: 0 0 0 .1rem #fff; height: .5em; width: .5em; }
.avatar .avatar-presence.online { background: #47c363; }
.avatar .avatar-presence.busy { background: #fc544b; }
.avatar .avatar-presence.away { background: #ffa426; }
.avatar[data-initial]::before { content: attr(data-initial);font-size: .85rem; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); z-index: 1; }
.avatar span {position:absolute;top:25%; color:initial}

/*mbr-gallery*/
#mbr-gallery .carousel-item { transition: -webkit-transform 0.3s ease-in-out; transition: transform 0.3s ease-in-out; transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }
#mbr-gallery .text-multitruncate {line-height:24px; max-height:48px}

/**/
.bullet:before { content: ' '; border-radius: 5px;height: auto; width: 8px; background-color: #6777ef; display: inline-block;float: left;  margin-right: 10px;}