@charset "utf-8";

/*==========================
  body 설정
  ========================== */

body, input, .custom-select, textarea {
  font-size: 13px !important;
  line-height: 18px;
  color: #333333;
}

html, body {
  height: 100%;
}

.clearfix {
  display: block;
  content: "";
  clear: both;
}

/*==========================
  레이아웃
  ========================== */

.wrap {
  width: 100%;
  height: 100%;
}

/* header */
header {
  position: fixed;
  top: 0;
  z-index: 97;
  display: flex;
  align-items: center;
  width: 100%;
  height: 44px;
  background-color: #d9002b;
  padding: 0 7px;
  box-sizing: border-box;
}

header  button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  color: #ffffff;
  font-size: 20px;
  font-weight: normal;
}

header .tit {
  flex-grow: 1;
  margin: auto;
  text-align: center;
  font-size: 18px;
  color: #ffffff;
}

header .left, header .right {
  width: 32px;
  display: flex;
}

.layer_popup > header, .layer_popup > header > div > button {
  background-color: #333333;
  color: #ffffff;
}

.fixed_s {
  width: 100%;
  position: fixed;
  top:44px;
  left: 0;
  border-left: 0;
  border-right: 0;
  z-index: 999;
}

.fixed_b {
  width: 100%;
  position: fixed;
  bottom: 0; /* 화면의 하단에 고정 */
  left: 0;
  border-left: 0;
  border-right: 0;
  z-index: 999;
  background-color: #f5f5f5; /* 원하는 배경색 */
  padding: 10px; /* 패딩 추가 */
  box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.1); /* 상단 그림자 추가 */
}

/* ==========================
  네비게이션
  ========================== */

.menu_btn{
  text-align: right;
}

.menu_bg{
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.7);
  position: fixed;
  top:0;
  display: none;
  z-index:1000;
}

.sidebar_menu{
  display: none;
  width: 74%; /* 사이드바메뉴 영역 */
  height: 100%;
  background: #ffffff;
  position: fixed;
  top:0;
  left: -74%;  /* 사이드바메뉴 영역 */
  z-index: 1100;
  padding-bottom : 90px;
}

.mem_info {
  position: relative;
  display: flex;
  align-items: center;
  background-color: #383a47;
  padding: 20px 15px;
}

.mem {
  flex-grow: 1;
}

.mem > span {
  display: block;
  font-size: 13px;
  font-weight: bold;
  color:#ffffff;
  margin-bottom: 3px;
}

.mem > span:first-child {
  color:#adadad;
}

.mem > span:last-child {
  font-size: 17px;
}

.top_menu {
  display: flex;
  gap: 8px;
}

.top_menu > a {
  display: block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 30px;
  background: #54586d;
  color: #ffffff;
  font-size: 16px;
}

.menu{
  list-style: none;
  overflow: auto;
  height: 100%;
  background-color: #efefef;
}

.menu > li {
}

.menu > li > a {
  padding: 12px 20px;
  display: block;
  background: url("../images/toggle_m_close.png") no-repeat #efefef;
  background-position: right 15px top 17px ;
  background-size: 12px 6px;
  font-weight: bold;
  font-size: 14px;
  color: #333333;
  border-bottom: 1px solid #dfdfdf;
}

.btn_toogle {
  background: url("../images/toggle_m_open.png") no-repeat #efefef !important;
  background-position: right 15px top 17px !important;
  background-size: 12px 6px !important;
}

.submenu {
  padding-top: 5px;
  padding-bottom: 4px;
  background-color: #ffffff;
  border-bottom: 1px solid #dfdfdf;
}

.submenu li a {
  display: block;
  padding: 9px 20px 10px 20px;
  font-weight: bold;
  font-size: 14px;
  color: #828282;
}

/* ==========================
  컨텐츠
  ========================== */

.content {
  box-sizing: border-box;
  padding: 60px 14px 40px 14px;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.content > .list_tit:first-of-type,
.content > .list_tit:nth-of-type(2) {
  margin-top: 0;
}

.no_padding {
  padding: 60px 0 40px 0;
}

.no_data_wrap{
  display: flex !important;
  justify-content: center;
}

.no_data{
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.no_data > div:first-child {
  font-size: 50px;
  color: #d79595;
  margin-bottom: 10px;
  text-align: center;
}

.bottom {
  z-index: 99;
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  display: flex;
}

.tit_3dep {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #4a86f5;
}

/* ==========================
조회/등록 (페이지)
========================== */

.lookup_wrap, .register_wrap {
  margin-bottom: 16px;
}

.lookup_t_set, .register_t_set {
  display: flex;
  margin-bottom: 5px;
  align-items: center;
}

.lookup_tit, .register_tit {
  font-size: 18px;
  font-weight: bold;
}

/* 조회 - slider styling */
.lookup_container .slider, .register_container .slider {
  position: relative;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  overflow-y: hidden;
  box-sizing: border-box;
}

/* 조회 */
.lookup_container, .register_container {
  position: relative;
  margin: 0 auto;
  overflow: visible;
  padding: 10px 12px 0 12px;
  background: #fff3f5;
  border: 1px solid #f3d8dd;
}

.register_container {
  background: #f7f7f7;
  border: 1px solid #e5e5e5;
}

.lookup_item_t1, .lookup_item_t2,
.register_item_t1, .register_item_t2 {
  display: flex;
  align-items: flex-start;
  min-width: 50%;
  align-items: center;
  box-sizing: border-box;
  padding: 2px 2px;
  overflow: hidden;
  margin-bottom: 10px;
}

.lookup_item_t1 > ul, .lookup_item_t2 > ul,
.register_item_t1 > ul, .register_item_t2 > ul {
  display: flex;
  flex-direction: column;
}

.lookup_item_t1, .register_item_t1  {
  flex-basis: 50%;
}

.lookup_item_t2, .register_item_t2 {
  flex-basis: 100%;
}

.modal .lookup_item_t1, .modal .register_item_t1 {
  flex-basis: 50%;
}

.modal .lookup_item_t2, .modal .register_item_t2 {
  flex-basis: 100%;
}

.btn_set {
  margin: 0 2px 12px 2px;
  display: flex;
  gap: 5px;
}

/* 조회 아이템 박스 크기 */
.lookup_item_t1>ul, .lookup_item_t2>ul,
.register_item_t1>ul, .register_item_t2>ul {
  display: flex;
  width: 100%;
}

.lookup_item_t1>ul>li, .lookup_item_t2>ul>li,
.register_item_t1>ul>li, .register_item_t2>ul>li {
  display: flex;
  align-items: center;
  gap:5px;
  margin-bottom: 7px;
}

.lookup_item_t1>ul>li:nth-child(1), .lookup_item_t2>ul>li:nth-child(1),
.register_item_t1>ul>li:nth-child(1), .register_item_t2>ul>li:nth-child(1) {
  width: 100%;
  font-weight: bold;
  line-height: 16px;
}

.lookup_item_t1>ul>li:nth-child(2), .lookup_item_t2>ul>li:nth-child(2),
.register_item_t1>ul>li:nth-child(2), .register_item_t2>ul>li:nth-child(2) {
  flex-grow: 1;
}

.lookup_item_t1>ul>li:last-child, .lookup_item_t2>ul>li:last-child,
.register_item_t1>ul>li:last-child, .register_item_t2>ul>li:last-child {
  margin-bottom: 0;
}

.view_n {
  display: none;
}

.view_b {
  display: block;
}

/* 텍스트 강조색상 */
.txt_red {
  color: #d00e2d !important;
}

.txt_blue {
  color: #4a86f5 !important;
}

.right_txt {
  margin-left: auto;
  font-weight: normal;
  color: #a7a7a7;
}

/* ==========================
  폼스타일
  ========================== */

/* input */
input {
  width: 100%;
  height: 34px;
  box-sizing: border-box;
  border: 1px solid #b3b3b3;
  transition: 0.2s;
  outline: none;
  padding: 0 10px;
}

input:hover {
  border: 1px solid #5f5f5f;
}

input:focus {
  border: 1px solid #5f5f5f;
}

input:disabled{
  border: 1px solid #ccc;
  background-color: #f2f2f2;
  cursor: not-allowed;
}

input:required {
  background-color: #fffbdc !important;
}

/* Placeholder */
::placeholder {   /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: rgb(173, 173, 173);
  opacity: 1;
}

:-ms-input-placeholder {  /* Internet Explorer 10-11 */
  color: blue;
}

::-ms-input-placeholder {   /* Microsoft Edge */
  color: blue;
}

/* read only */
input[readonly],
input[type="date"][readonly] {
  background-color: #f2f2f2 !important;
}

input[readonly]:hover,
input[type="date"][readonly]:hover {
  background-color: #f2f2f2 !important;
  border: 1px solid #b3b3b3 !important;
}

/* Input date */
input[type="date"] {
  position: relative;
  background: url(../images/form_calendar.png) no-repeat right 6px center #ffffff;
}

input[type="date"]::-webkit-clear-button, input[type="date"]::-webkit-inner-spin-button {
  display: none;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  cursor: pointer;
}

.input_search {
  position: relative;
  width: 100%;
}

.input_search > button{
  position: absolute;
  right: 0;
  top:6px;
}

/* radiobox */
.raido_label {
  margin-left: 5px;
  margin-right: 10px;
  vertical-align: middle;
  white-space: nowrap;
}

input[type="radio"] {
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid gray;
  border-radius: 50%;
  min-width: 22px !important;
  width: 22px !important;
  height: 22px !important;
  transition: border 0.2s ease-in-out;
  background-color: #fff;
  margin: 0;
}

input[type="radio"]:checked {
  border: 1px solid #c32a44;
  background-image: url(../images/form_radio01.png);
  background-repeat: no-repeat;
  background-position: center;
}

input[type="radio"]:focus {
  outline: none;
}

input[type="radio"]:focus-visible {
  outline-offset: max(2px, 0.1em);
  outline: max(2px, 0.1em) dotted c32a44 !important;
}

input[type="radio"]:hover {
  box-shadow: 0 0 0 max(4px, 0.2em) lightgray;
  cursor: pointer;
}

input[type="radio"]:disabled {
  background-color: #f2f2f2;
  box-shadow: none;
  opacity: 0.7;
  cursor: not-allowed;
}

input[type="radio"]:disabled+span {
  opacity: 0.7;
  cursor: not-allowed;
}

/* checkbox */
.checkbox_label {
  margin-left: 5px;
  margin-right: 10px;
  vertical-align: middle;
  white-space: nowrap;
}

input[type="checkbox"] {
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid gray;
  border-radius: 4px;
  min-width: 22px !important;
  width: 22px !important;
  height: 22px !important;
  transition: border 0.2s ease-in-out;
  background-color: #fff;
  margin: 0;
}

input[type="checkbox"]:checked {
  border: 1px solid #c32a44;
  background-image: url(../images/form_check01.png);
  background-repeat: no-repeat;
  background-position: center;
}

input[type="checkbox"]:focus {
  outline: none;
}

input[type="checkbox"]:focus-visible {
  outline-offset: max(2px, 0.1em);
  outline: max(2px, 0.1em) dotted #c32a44 !important;
}

input[type="checkbox"]:disabled+span {
  opacity: 0.7;
  cursor: not-allowed;
}

.input_label {
  display: block;
  margin-left: 5px;
  margin-right: 10px;
  vertical-align: middle;
  white-space: nowrap;
}

/* select box */
.custom-select {
  box-sizing: border-box;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  border: none;
  padding: 0;
  margin: 0;
  width: 100%;
  line-height: 1.3;
  cursor: default;
}

.custom-select::-ms-expand {
  display: none;
}

.custom-select {
  height: 34px;
  padding: 0 30px 0 10px;
  border: 1px solid #b3b3b3;
  background-image: url("../images/form_select_open.png");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 13px 9px;
  color: #333;
}

.custom-select:hover {
  border-color: #c32a44;
}

.custom-select:focus {
  border-color: #2e2c2c;
  box-shadow: 0 0 1px 2px #6db4ff;
  outline: none;
}

.custom-select:disabled, .custom-select[aria-disabled="true"] {
  cursor: not-allowed;
  background-color: #f2f2f2;
}

.custom-select:disabled:hover, .custom-select[aria-disabled="true"]:hover {
  border-color: #b3b3b3;
}

.custom-select:required {
  background-color: #fffbdc !important;
}

.select_box {
  width: 100%;
  display: flex;
  align-items: center;
}

.select_label {
  border: 1px solid;
  display: inline-block;
  width: 100px;
  font-weight: bold;
}

/* 폼뒤에 버튼 포함 */
.input_set01 {
  display: flex;
  align-items: center;
}

.input_set01 a {
  margin-left: 5px;
}


/* textarea */
textarea {
  box-sizing: border-box;
  border: 1px solid #b3b3b3;
  border-radius: 3px;
  padding: 15px;
  width: 100%;
}

textarea:hover {
  border: 1px solid #c32a44;
}

textarea:focus {
  outline: none !important;
  border-color: #c32a44;
}

textarea:disabled {
  background-color: #f2f2f2;
}

textarea:required {
  background-color: #fffbdc !important;
}

.label_etc01 {
  white-space: nowrap;
  width: 80px;
}

/* ==========================
  버튼
  ========================== */

button {
  background-color: #ffffff;
  color: #333333;
  cursor: pointer;
  background-color: rgba(0,0,0,0);
}

button:focus-visible {
  outline: none;
}

button:disabled {
  background-color: #f2f2f2;
  color: #7a7a7a;
  pointer-events: none;
  cursor: default;
  border: 1px solid #e5e5e5;
}

/*---------- Primary Button - 큰 버튼 ----------*/
.btn_p_r, .btn_p_rl, .btn_p_gs, .btn_p_g, .btn_p_gb, .btn_p_w, .btn_p_d, .btn_p_i, .btn_terms  { /* 버튼 공통 */
  background-color: #fff;
  display: inline-block;
  text-align: center;
  width: 100%;
  height: 34px !important;
  padding: 0 10px;
  color: white;
  box-sizing: border-box;
  line-height: 34px;
  white-space: nowrap;
  position: relative;
}

/* 레드 */
.btn_p_r {
  background-color: #e6002e;
}

.btn_p_r:active {
  background-color: #b30427;
}

/* 그레이 - 조회영역버튼*/
.btn_p_gs {
  background-color: #757b83;
}

.btn_p_gs:active {
  background-color: #5a5f66;
}

/* 그레이 - 하단버튼 */
.btn_p_gb {
  background-color: #3c4249;
}

.btn_p_gb:active {
  background-color: #35393f;
}

/* 힌색 - 하단버튼 */
.btn_p_w {
  background-color: #ffffff;
  border: 1px solid #808080;
  color: #333333;
}

.btn_p_w:active {
  background-color: #d5d6d8;
}

/* 레드 라인버튼 */
.btn_p_rl {
  background-color: #ffffff;
  border: 1px solid #e6002e;
  color: #e6002e;
}

.btn_p_lr:active {
  background-color: #9b0422;
}

/* 버튼크기 초기화 */
.btn_initial {
  width: initial;
}

/* disabled */
.btn_p_d {
  background-color: #f2f2f2;
  color: #7a7a7a;
  pointer-events: none;
  cursor: default;
  border: 1px solid #e5e5e5;
}

.btn_p_i {
  width: 34px;
  background-color: #ffffff;
  border: 1px solid #d2d2d2;
  color: #333333;
  font-size: 15px;
}

/* 해시테그버튼 세트*/
.btn_gift_set {
  display: flex;
  gap: 5px;
  overflow-x: auto;
  overflow-y: hidden;
}

.btn_gift_set > div {
  width: initial;
  padding-right: 5px;
}

.btn_gift_set > div > a {
  padding: 5px;
  color: #333333;
}

.btn_terms {
  background-color: #ffffff;
  border: 1px solid #e5e5e5;
  color: #333333;
  height: 50px !important;
  line-height: 50px;
}

.r_i {
  position: absolute;
  right: 15px;
  text-align: left;
}

/* ==========================
  탭메뉴 (기본형)
    ========================== */

.tab_container {
  position: relative;
}

.tab_container .tab_content {
  display: none;
  width:100%;
  padding: 20px 0  20px 0;
  border-top: 2px solid #e6002e;
}


.tabs ul {
  width: 100%;
  display:flex;
}

.tabs li {
  flex-grow: 1;
  border-radius: 4px 4px 0 0;
  height: 30px;
  line-height: 30px;
  background: #eeeeee;
  text-align: center;
}

.tabs li.active {
  background-color: #e6002e;
  border-bottom: 0;
}

.tabs li.active a {
  color: #ffffff;
  font-weight: 500;
  border: 1px solid #e6002e;
  border-bottom: 0;
}

.tabs li a {
  display: block;
  color: #333333;
  height: 100%;
  min-width: 100px;
  padding: 0 15px;
  box-sizing: border-box;
  border-top: 1px solid #dddddd;
  border-left: 1px solid #dddddd;
  border-bottom: 0;
}

.tabs li:last-child a {
  border-right: 1px solid #dddddd;
}

/* ==========================
탭메뉴 type02
  ========================== */

.type02 .tabs {
  overflow: auto;
  overflow-y: hidden;
  z-index: 50;
}

.type02 .tabs li {
  flex-grow: 1;
  padding: 4px 0;
  border-radius: 0 !important;
  text-align: center;
  border-left: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
}

.type02 .tabs li.active {
  color: #e6002e;
  background-color: #eeeeee;
  border-bottom: 2px solid #e6002e;
}

.type02 .tabs li.active a {
  color: #e6002e !important;
  font-weight: bold;
  border: 0 !important;
}

.type02 .tabs li a {
  border-top: 0;
  border-left: 0;
}

.type02 .tabs li:last-child a {
  border-right: 1px solid #dddddd;
}

.type02 .tabs {
  position: fixed;
  left: 0;
  top: 44px;
  width: 100%;
}


/* 플로팅 */

.floating {
  font-size: 16px;
  text-align: center;
  line-height: 36px;
  width: 36px;
  height: 36px;
  border-radius: 36px;
  position: fixed;
  background-color: #f0f0f0;
  border: 1px solid #dadada;
  bottom: 50px;
  right: 16px;
  color: #616161;
}

/* ==========================
모달팝업
========================== */

.popup_title {
  display: flex;
  align-items: center;
  padding: 3px 5px 3px 10px;
  font-size: 18px;
  font-weight: bold;
  background-color: #e6002e;
  color: #ffffff;
}

.popup_d2_title {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 10px;
}

.popup_btn_x {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  width: 30px;
  height: 30px;
  border: 1px solid #b40024;
  border-radius: 2px;
  background-color: #d8032d;
  color: #ffffff;
}

.popup_btn_x:hover {
  background-color: #0b6aa5;
}

.popup_content {
  background-color:#ffffff;
  padding: 20px;
}

.popup_area {}
.popup_area strong {
  font-size: 16px;
  font-weight: 700;
}
.popup_area strong em {
  color: #0070d1;
  padding-left: 10px;
}
.popup_area .post {
  margin-top: 10px;
}
.popup_area p {
  font-size: 26px;
  font-weight: 700;
  color: #666;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}
.popup_area + .user-area {
  border-top: 1px #ddd solid;
  padding-top: 15px;
  display: flex;
  align-items: center;
}
.popup_area + .user-area em {
  border-radius: 4px;
  padding: 2px;
  font-size: 11px;
  color: #fff;
  margin-right: 5px;
}
.popup_area + .user-area em.type-1 {
  background-color: #3099c9;
}
.popup_area + .user-area span {}
.popup_area + .user-area button {
  margin-left: auto;
  border: 1px #aaa solid;
  padding: 5px 10px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  color: #000;
}
.popup_area + .user-area button::before {
  content:'';
  width: 20px;
  height: 20px;
  margin-right: 2px;
}
.popup_area + .user-area button.ic-phone::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="%23000"><path d="M280-40q-33 0-56.5-23.5T200-120v-720q0-33 23.5-56.5T280-920h400q33 0 56.5 23.5T760-840v720q0 33-23.5 56.5T680-40H280Zm0-200v120h400v-120H280Zm200 100q17 0 28.5-11.5T520-180q0-17-11.5-28.5T480-220q-17 0-28.5 11.5T440-180q0 17 11.5 28.5T480-140ZM280-320h400v-400H280v400Zm0-480h400v-40H280v40Zm0 560v120-120Zm0-560v-40 40Z"/></svg>');
}

.popup_area p::before {
  content:'';
  width: 24px;
  height: 24px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23666"><path d="M280-40q-33 0-56.5-23.5T200-120v-720q0-33 23.5-56.5T280-920h400q33 0 56.5 23.5T760-840v720q0 33-23.5 56.5T680-40H280Zm0-200v120h400v-120H280Zm200 100q17 0 28.5-11.5T520-180q0-17-11.5-28.5T480-220q-17 0-28.5 11.5T440-180q0 17 11.5 28.5T480-140ZM280-320h400v-400H280v400Zm0-480h400v-40H280v40Zm0 560v120-120Zm0-560v-40 40Z"/></svg>');
  margin-right: 5px;
}
.popup_area p.ic-home::before {
  content:'';
  width: 24px;
  height: 24px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23666"><path d="M240-200h120v-240h240v240h120v-360L480-740 240-560v360Zm-80 80v-480l320-240 320 240v480H520v-240h-80v240H160Zm320-350Z"/></svg>');
  margin-right: 5px;
}
.popup_area ul {
  display: flex;
  gap: 10px;
  margin: 20px 0 30px;
}
.popup_area ul li {
  width: 100%;
}
.popup_area ul li button {
  border: 1px #aaa solid;
  border-radius: 4px;
  display: flex;
  width: 100%;
  padding: 10px 0;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.popup_area ul li button::before {
  content:'';
  width: 24px;
  height: 24px;
  margin-bottom: 10px;
}
.popup_area ul li button.ic-phone::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23aaa"><path d="M280-40q-33 0-56.5-23.5T200-120v-720q0-33 23.5-56.5T280-920h400q33 0 56.5 23.5T760-840v720q0 33-23.5 56.5T680-40H280Zm0-200v120h400v-120H280Zm200 100q17 0 28.5-11.5T520-180q0-17-11.5-28.5T480-220q-17 0-28.5 11.5T440-180q0 17 11.5 28.5T480-140ZM280-320h400v-400H280v400Zm0-480h400v-40H280v40Zm0 560v120-120Zm0-560v-40 40Z"/></svg>');
}
.popup_area ul li button.ic-home::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23aaa"><path d="M240-200h120v-240h240v240h120v-360L480-740 240-560v360Zm-80 80v-480l320-240 320 240v480H520v-240h-80v240H160Zm320-350Z"/></svg>');
}
.popup_area ul li button.ic-message::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23aaa"><path d="M320-520q17 0 28.5-11.5T360-560q0-17-11.5-28.5T320-600q-17 0-28.5 11.5T280-560q0 17 11.5 28.5T320-520Zm160 0q17 0 28.5-11.5T520-560q0-17-11.5-28.5T480-600q-17 0-28.5 11.5T440-560q0 17 11.5 28.5T480-520Zm160 0q17 0 28.5-11.5T680-560q0-17-11.5-28.5T640-600q-17 0-28.5 11.5T600-560q0 17 11.5 28.5T640-520ZM80-80v-720q0-33 23.5-56.5T160-880h640q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H240L80-80Zm126-240h594v-480H160v525l46-45Zm-46 0v-480 480Z"/></svg>');
}
.popup_area ul li button.ic-image::before {
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23666" viewBox="0 0 24 24" width="24px" height="24px"%3E%3Cpath d="M21 5H17.83l-.59-.59L16 4H8L7.76 4.16 7.41 4.59 6.83 5H3v16h18V5ZM10 8a2 2 0 1 1 2 2 2 2 0 0 1-2-2Zm8 12H6v-2.4l2.8-3.6 2.6 3.15 4-5.15L18 17.1Zm0-10h-1l-1.59-2H8.59L7 10H6V7h12Z"/%3E%3C/svg%3E');
}
.popup_area ul li button.ic-camera::before {
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23666" viewBox="0 0 24 24" width="24px" height="24px"%3E%3Cpath d="M12 17q1.65 0 2.825-1.175Q16 14.65 16 13q0-1.65-1.175-2.825Q13.65 9 12 9q-1.65 0-2.825 1.175Q8 11.35 8 13q0 1.65 1.175 2.825Q10.35 17 12 17Zm0 2q-2.475 0-4.238-1.762Q6 15.475 6 13q0-2.475 1.762-4.238Q9.525 7 12 7q2.475 0 4.238 1.762Q18 10.525 18 13q0 2.475-1.762 4.238Q14.475 19 12 19ZM4 20q-.825 0-1.413-.588Q2 18.825 2 18V8q0-.825.587-1.413Q3.175 6 4 6h3.175l1.15-1.725q.175-.25.45-.388Q8.95 4 9.25 4h5.5q.3 0 .575.137.275.138.45.388L16.825 6H20q.825 0 1.413.587Q22 7.175 22 8v10q0 .825-.587 1.412Q20.825 20 20 20Zm8-7Z"/%3E%3C/svg%3E');
}


.popup_footer_area {
  display: flex;
  padding: 10px 30px;
  background-color: #eee;
  gap: 10px;
}

.popup_table_area {}
.popup_table_area table {
  width: 100%;
}
.popup_table_area table thead {}
.popup_table_area table thead th {
  background-color: #8c9097;
  color: #fff;
  text-align: center;
  padding: 5px;
}
.popup_table_area table tbody {}
.popup_table_area table tbody td {
  text-align: center;
  padding: 5px;
  border-bottom: 1px #ddd solid;
}

.popup_gauge_area {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.popup_gauge_area::before {
  content: '';
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="100px" viewBox="0 -960 960 960" width="100px" fill="%23000"><path d="M418-340q24 24 62 23.5t56-27.5l224-336-336 224q-27 18-28.5 55t22.5 61Zm62-460q59 0 113.5 16.5T696-734l-76 48q-33-17-68.5-25.5T480-720q-133 0-226.5 93.5T160-400q0 42 11.5 83t32.5 77h552q23-38 33.5-79t10.5-85q0-36-8.5-70T766-540l48-76q30 47 47.5 100T880-406q1 57-13 109t-41 99q-11 18-30 28t-40 10H204q-21 0-40-10t-30-28q-26-45-40-95.5T80-400q0-83 31.5-155.5t86-127Q252-737 325-768.5T480-800Zm7 313Z"/></svg>');
  width: 100px;
  height: 100px;
}
.popup_gauge_area p {
  text-align: center;
  font-weight: 700;
  font-size: 18px;
  line-height: 26px;
}
.popup_gauge_area .gauge-group {
  margin: 15px 0 30px;
}
.popup_gauge_area .gauge-group input {
  width: 100px;
  border: 1px #000 solid;
  font-weight: 700;
  text-align: center;
  font-size: 20px !important;
}
.popup_gauge_area .gauge-group em {

  text-align: center;
  font-size: 20px;
  margin-left: 5px;
}
.popup_gauge_area button {
  border-radius: 20px;
  border: 1px #aaa solid;
  padding: 10px 20px;
  width: 200px;
  color: #000;
}

.popup_footer {
  display: flex;
  justify-content: end;
}

.popup_layer {
  text-align: center;
  width: 260px;
  border: 1px solid #333333;
  padding: 20px;
}

.popup_layer_txt {
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 25px;
}

.popup_alarm {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 15px;
  min-height: 80px;
  font-weight: bold;
  text-align: center;
}

.popup_alarm > div, .popup_alarm > ul > li {
  margin-bottom: 10px;
}


.blocker {
  z-index: 9999;
}

/*==========================
  테이블 그리드
  ==========================*/

.grid_t_set {
  display: flex;
  margin-bottom: 5px;
  align-items: center;
}

.grid_t_set > .line {
  width: 1px;
  height: 18px;
  background-color: #dde1e3;
  margin: 0 10px 0 10px;
}

.grid_num {
  color: #808080;
  white-space: nowrap;
}

.grid_tit {
  font-size: 17px;
  font-weight: bold;
  white-space: nowrap;
}


/* 그리드 */
.table_btn_top li {
  padding-left: 5px;
  float: left;
}

.table_list {
  width: 100%;
}

.table_wrap {
  width: 100%;
  overflow: auto;
  margin-bottom: 15px;
  border-top: 1px solid #f3a3b1;
}

.table {
  width: 100%;
  table-layout: fixed;
}

.table thead {
  background-color: #ffeef1;
  border-bottom: 1px solid #bbbbbb;
}

.table th {
  border-left: 1px solid;
  border-right: 1px solid;
  border-color: #e6e6e6;
  text-align: center;
  font-weight: bold;
  vertical-align: middle;
  padding: 5px 6px;
  box-sizing: border-box;
}

.table tbody {
  border-bottom: 1px solid #e6e6e6;
}

.table tbody tr {
  border-bottom: 1px solid #e6e6e6;
}

.table tbody tr:active {
  background-color:#e1f4ff;
  cursor: pointer;
}

.table .selected {
  background-color:#e1f4ff;
}

.table td {
  text-overflow:ellipsis;
  overflow:hidden;
  white-space:nowrap;
  border-left: 1px solid;
  border-right: 1px solid;
  border-style: solid;
  border-color: #e6e6e6;
  padding: 5px 8px;
  vertical-align: middle;
  text-align: center;
  line-height: 18px;
  box-sizing: border-box;
}

/* 세로스크롤 테이블 */

.table01 {
  width: 100%;
}

.table01 thead, .table01 tbody, .table01 tfoot {
  display: block;
  overflow-x: hidden ;
  overflow-y: scroll;
}

.table01 thead, .table01 tbody tr, .table01 tfoot {
  display: table;
  width: 100%;
}

tfoot {
  background-color: #fffde0;
  border-bottom: 1px solid #828282;
}

/* 텍스트 정렬 */
.text_left {
  text-align: left !important;
}

.text_center {
  text-align: center;
}

.text_right {
  text-align: right !important;
}

/* 그리드 tbody scroll */
.fixed_table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.fixed_table tbody {
  overflow: auto;
  width: 100%;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #e6e6e6;;
}

.fixed_table thead tr,
.fixed_table tbody tr,
.fixed_table tfoot tr {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.fixed_table tbody tr {
  border-bottom: 1px solid #e6e6e6;
}

.fixed_table thead {
  background-color: #ffeef1;
  border-bottom: 1px solid #bbbbbb;
}

.fixed_table th,
.fixed_table td {
  flex-grow: 1;
  padding: 5px 10px;
  text-align: center;
  width: 20%;
  text-overflow:ellipsis;
  overflow:hidden;
  white-space:nowrap;
}

.fixed_table th {
  text-align: center;
  font-weight: bold;
}

.fixed_table .selected {
  background-color:#e1f4ff;
}

/* .fixed_table th:last-child {
    padding-right: 11px;
} */

/* scrollbar */
/*
tbody::-webkit-scrollbar {
    width: 6px;
}

tbody::-webkit-scrollbar-track {
    background: rgb(68, 68, 68);
}

tbody::-webkit-scrollbar-thumb {
    background-color: rgb(68, 68, 68);
    border-radius: 20px;
    border: 0;
} */

/* ==========================
      첨부파일
  ========================== */

.attach {
  width: 100%;
}

.attach > div {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
}

.attach > div > a {
  margin-left: auto;
}

.attach_pop li {
  display: flex;
}

.attach_pop li:first-child {
  margin-bottom: 10px;
  display: flex;
  gap: 5px;
}


/* ==========================
      로딩바
  ========================== */

.loading_wrap {
  z-index: 10000;
  position: fixed;
  top: 0;
  width: 100%;
  background:rgba(255, 255, 255, .7);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100% !important;

}

.loading {
  display: inline-block;
  width: 120px;
  height: 120px;
  border: 6px solid #afafaf;
  border-radius: 50%;
  border-top-color: #e60c0c;
  animation: spin 0.7s ease-in-out infinite;
  -webkit-animation: spin 0.7s ease-in-out infinite;
}

@keyframes spin {
  to { -webkit-transform: rotate(360deg); }
}
@-webkit-keyframes spin {
  to { -webkit-transform: rotate(360deg); }
}


/* 종료메시지 */
.end {
  margin: auto;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
}

.end > p:first-child {
  margin-bottom: 20px;
  font-size: 50px;
  color: #828282;
}

/* 뱃지 */

.badge_d01, .badge_d02, .badge_d03, .badge_d04, .badge_d05 {
  display: inline-block;
  min-width: 44px;
  background-color: #d9002b;
  padding: 3px 6px;
  color: #fff;
  border-radius: 10px;
  text-align: center;
}

.badge_d02 {
  background-color: #af51e7;
}

.badge_d03 {
  background-color: #007dd9;
}

.badge_d04 {
  background-color: #16bd5a;
}

.badge_d05 {
  background-color: #7f7a7b;
}


/* ==========================
    여백
  ========================== */

/* margin */
.ma_10 { margin:10px !important; }
.ma_15 { margin:15px !important; }
.ma_20 { margin:20px !important; }
.ma_25 { margin:25px !important; }
.ma_30 { margin:30px !important; }
.ma_35 { margin:35px !important; }
.ma_40 { margin:40px !important; }

.mt_00 { margin-top:0px !important; }
.mt_05 { margin-top:5px !important; }
.mt_10 { margin-top:10px !important; }
.mt_15 { margin-top:15px !important; }
.mt_20 { margin-top:20px !important; }
.mt_25 { margin-top:25px !important; }
.mt_30 { margin-top:30px !important; }
.mt_35 { margin-top:35px !important; }
.mt_40 { margin-top:40px !important; }
.mt_50 { margin-top:50px !important; }

.ml_03 { margin-left:3px !important; }
.ml_10 { margin-left:10px !important; }
.ml_15 { margin-left:15px !important; }
.ml_20 { margin-left:20px !important; }
.ml_25 { margin-left:25px !important; }
.ml_30 { margin-left:30px !important; }
.ml_35 { margin-left:35px !important; }
.ml_40 { margin-left:40px !important; }

.mr_03 { margin-right:3px !important; }
.mr_06 { margin-right:6px !important; }
.mr_10 { margin-right:10px !important; }
.mr_15 { margin-right:15px !important; }
.mr_20 { margin-right:20px !important; }
.mr_25 { margin-right:25px !important; }
.mr_30 { margin-right:30px !important; }
.mr_35 { margin-right:35px !important; }
.mr_40 { margin-right:40px !important; }
.mr_100 { margin-right:100px !important; }

.mb_0 { margin-bottom:0 !important; }
.mb_04 { margin-bottom:4px !important;}
.mb_10 { margin-bottom:10px !important; }
.mb_15 { margin-bottom:15px !important; }
.mb_20 { margin-bottom:20px !important; }
.mb_25 { margin-bottom:25px !important; }
.mb_30 { margin-bottom:30px !important; }
.mb_35 { margin-bottom:35px !important; }
.mb_40 { margin-bottom:40px !important; }
.mb_50 { margin-bottom:50px !important; }
.mb_60 { margin-bottom:60px !important; }
.mb_260 { margin-bottom:260px !important; }

/* padding */
.pa_10 { padding:10px !important; }
.pa_15 { padding:15px !important; }
.pa_20 { padding:20px !important; }
.pa_25 { padding:25px !important; }
.pa_30 { padding:30px !important; }
.pa_35 { padding:35px !important; }
.pa_40 { padding:40px !important; }

.pt_10 { padding-top:10px !important; }
.pt_15 { padding-top:15px !important; }
.pt_20 { padding-top:20px !important; }
.pt_25 { padding-top:25px !important; }
.pt_30 { padding-top:30px !important; }
.pt_35 { padding-top:35px !important; }
.pt_40 { padding-top:40px !important; }
.pt_70 { padding-top:70px !important; }
.pt_100 { padding-top:100px !important; }
.pt_105 { padding-top:115px !important; }
.pt_115 { padding-top:115px !important; }
.pt_150 { padding-top:150px !important; }

.pl_10 { padding-left:10px !important; }
.pl_15 { padding-left:15px !important; }
.pl_20 { padding-left:20px !important; }
.pl_25 { padding-left:25px !important; }
.pl_30 { padding-left:30px !important; }
.pl_35 { padding-left:35px !important; }
.pl_40 { padding-left:40px !important; }

.pr_10 { padding-right:10px !important; }
.pr_15 { padding-right:15px !important; }
.pr_20 { padding-right:20px !important; }
.pr_25 { padding-right:25px !important; }
.pr_30 { padding-right:30px !important; }
.pr_35 { padding-right:35px !important; }
.pr_40 { padding-right:40px !important; }

.pb_10 { padding-bottom:10px !important; }
.pb_15 { padding-bottom:15px !important; }
.pb_20 { padding-bottom:20px !important; }
.pb_25 { padding-bottom:25px !important; }
.pb_30 { padding-bottom:30px !important; }
.pb_35 { padding-bottom:35px !important; }
.pb_40 { padding-bottom:40px !important; }
.pb_70 { padding-bottom:70px !important; }
.pb_100 { padding-bottom:100px !important; }
.pb_120 { padding-bottom:120px !important; }
.pb_260 { padding-bottom:260px !important; }

.w50 { width: 50% !important; }
.bt_01{ border-top:1px solid;}


/* 월간스케쥴 */


.install span, .as span, .return span, .inspect span, .accompany span {
  color: #ffffff !important;
}

.install { background-color: #fd5c61;}
.as { background-color: #e6002e;}
.return { background-color: #888888;}
.check { background-color: #f19600;}
.accompany { background-color: #3099c9;}

/* 범례 */

.legend {
  padding: 20px 0;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  width: 100%;
}

.legend > li {
  display: flex;
  justify-content: center;
  flex-grow: 1;
}

.legend .item {
  display: block;
  text-align: center;
  width: 58px;
  color: #333333;
}

.legend .item > div:first-child {
  border-radius: 2px;
  padding: 2px;
  color: #ffffff;
}

.check_status {
  border: 1px solid #fbd8de;
  margin: 16px 0 0 0;
  box-sizing: border-box;
  background: #ffeef1;
  padding: 16px;
}

.check_status .tit {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 20px;
}

.check_status .item {
  display: flex;
}

.check_status .item > li {
  flex-grow: 1;
  display: flex;
  flex-direction:column;
}

.check_status .item > li:first-child {
  padding-right: 15px;
  border-right: 1px solid #cbcbcb;
}

.check_status .item > li:last-child {
  padding-left: 15px;
}

.check_status .item > li > div {
  display: flex;
}

.check_status .item > li > div:first-child {
  margin-bottom: 10px;
}

.check_status .item > li > div > span:last-child {
  margin-left: auto;
  font-weight: bold;
  color: #d00e2d;
}

/* 일간스케줄 */

.search_wrap {
  z-index: 99;
}

.search_bar {
  height: 44px;
  background-color: #3c4249;
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 0 16px;
}

.search_bar > div {
  display: flex;
  gap:3px;
}

.search_bar > div:first-child {
  flex-grow: 1;
  overflow-x: auto ;
}

.search_bar > div:last-child {
  width: 20px;
}

.search_bar > div > span {
  display: block;
  background-color: #ffffff;
  padding: 4px 10px;
  white-space: nowrap;
  border-radius: 3px;
}

.search_item {
  display: none;
}

.s_toggle_o {
  width: 12px;
  height: 6px;
  background: url("../images/toggle_open.png") no-repeat;
  background-size: 12px 6px;
}

.s_toggle_c {
  width: 12px;
  height: 6px;
  background: url("../images/toggle_close.png") no-repeat !important;
  background-size: 12px 6px !important;
}

/* 리스트 기본 공통사용 */

.list_wrap {
  height: 100%;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.list_wrap > li {
  display: block;
  border-bottom: 1px solid #d9d9d9;
  padding: 16px 0 10px 0;
}

/*리스트 상세*/

.daily > li {
  position: relative;
  z-index: 0;
}

.daily > li > a {
  display: block;
  color: #333333;
}

.daily > li > a > ul > li {
  padding-bottom: 5px;
}

.daily > li > a > ul > li:last-child {
  display: flex;
  justify-content: end;
}

.daily .time {
  display: flex;
  font-weight: bold;
  align-items: center;
}

.daily .time > div:first-child {
  font-size: 23px;
  padding-right: 15px;
}

.badge_wrap {
  display: flex;
}

.daily .badge01, .daily .badge02, .daily .badge03 {
  border-radius: 2px 0 0 2px;
  padding: 2px 0;
  width: 50px;
  text-align: center;
  font-size: 12px;
}

.daily .badge01 {
  background-color: #d00e2d;
  color: #fff;
}

.daily .badge02 {
  background: #d9d8d8;
}

.daily .badge03 {
  background: #3099c9;
  color: #fff;
}

.daily .install {
  background-color: #fd5c61;
  color: #fff;
}

.daily .return {
  background-color: #888888;
  color: #fff;
}
.daily .check {
  background-color: #f19600;
  color: #fff;
}
.daily .as {
  background-color: #e6002e;
  color: #fff;
}

.daily .contact {
  position: absolute;
  right: 0;
  top: 38px;
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
}

.daily .contact > button {
  position: relative;
  z-index: 999999999999;
  display: block;
  padding: 6px;
  color: #4a86f5;
}

.daily .name {
  font-size: 16px;
  font-weight: bold;
}

.daily .product {
  font-size: 14px;
  font-weight: bold;
  padding-right: 5px;
}

.daily .product_num {
  padding-left: 7px;
  border-left:1px solid #a7a7a7;
  color: #a7a7a7 !important;
}

.daily .lental > span {
  padding-left: 10px;
  font-weight: bold;
}
.daily .lental > span:first-child {
  color: #a7a7a7;
}

.daily .lental > span:last-child {
  color: #d00e2d;
}

/* 달력 수정 */

/*.layer_calendar {  레이어 팝업페이지 달력에만 사용
  padding-top: 84px;
}
*/

.layer_calendar header, .layer_calendar header button {
  background: #333333;
  color: #ffffff;
}

.layer_calendar .calendar01 .item > span:last-child { /*달력 텍스트 컬러*/
  color: #333333;
  font-weight: bold;
}

.layer_calendar .calendar01_date {
  padding: 12px;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  background-color: #fff;
}

.select_d {
  background-color: #e6002e;
}

.select_d span {
  color: #ffffff !important;
}

.mon {
  padding-left: 12px !important;
  font-size: 17px;
  font-weight: bold;
}

.fixed01 {
  position: fixed;
  width: 100%;
  top:44px;
  z-index: 98;
  background-color: #fff;
  margin: 0;
  padding-bottom: 0;
  border-top: 0;
  border-left: 0;
  border-right: 0;
}

.select_day {
  background-color: #e6002e;
}

.select_day span {
  color: #ffffff !important;
}

/* ----------------------- 영업관리 ------------------------- */

/* 영업관리 타이틀 */
.sales {
  margin: 10px 0 20px 0;
  display: flex;
}

.sales .tit {
  flex-grow: 1;
  font-weight: bold;
}

.sales .tit > div:first-child {
  color: #a7a7a7;
  font-size: 12px;
  margin-bottom: 3px;
}

.sales .tit > div:last-child {
  font-size: 18px;
}

.member {
  display: flex;
  align-items: center;
  border-radius: 22px;
  overflow: hidden;
  vertical-align: middle;
}

.member > img {
  width: 34px;
  height: 34px;
}


/* 영업관리 탭 */

.sales_state {
  margin-bottom: 20px;
}

.sales_state > ul  {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}

.sales_state > ul > li {
  flex-grow: 1;
  width: 50%;
}

.sales_state > ul > li > a {
  display: block;
  background-color: #f5f5f5;
  padding: 20px;
  border-radius: 12px;
  font-weight: bold;
  font-size: 15px;
  color: #333;
}

.sales_state > ul > li > a > span {
  text-align: center;
  display: block;
  margin-bottom: 10px;
}

.sales_state > ul > li > a > span:last-child {
  margin-bottom: 0;
  font-size: 20px;
}

.sales_state .bg_r {
  background-color: #e6002e;
  color: #ffffff;
}

.sales_state .bg_w {
  background-color: #f5f5f5;
}

.sales_state .on {
  display: block !important;
}

.sales_state .off {
  display: none !important;
}


.sales_state .rental {
  display: block;
}

.sales_state .money {
  display: none;
}


/* 영업관리현황 상세 */
.sales_state .num {
  display: flex;
}

.sales_state .num > li {
  margin-bottom: 10px;
}

.sales_state .num > li:first-child {
  width: 80px;
}

.sales_state .num > li:nth-child(2) {
  flex-grow: 1;
}

.sales_state .num > li:last-child {
  width: 50px;
  text-align: right;
  font-size: 15px;
  font-weight: bold;
}

.pro_wrap {
  margin-top: 5px;
  height: 5px;
  background-color:#f5f5f5;
  border-radius: 5px;
}

.pro_item {
  height: 5px;
  background: linear-gradient(to left, #ffce1d, #ffa500);
  border-radius: 5px;
}

.sales_btns {
  display: flex;
  margin-bottom: 30px;
  border: 1px solid #d7d7d7;
  border-radius: 12px;
}

/* 영업관리 링크 버튼 */
.sales_btns > li {
  flex-grow: 1;
  width: 25%;
  display: flex;
  flex-direction: column;
  border-left: 0;
}

.sales_btns > li > a {
  display: flex;
  flex-direction: column;
  padding: 25px 0;
  border-right: 1px solid #e9e9e9;
}

.sales_btns > li:last-child > a {
  border-right: 0;
}


.sales_btns li > a > span {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  color: #686c75
}

.sales_btns li > a > span:last-child {
  margin-top: 10px;
  font-size: 13px;
  font-weight: bold;
}



/* 영업관리랭킹 */

.sales_rank li:first-child {
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 10px;
}

.sales_rank li:last-child {
  border-radius: 12px;
  background: #6c6f7f;
  display: flex;
  gap: 15px;
  align-items: center;
  padding: 6px 15px;
  color: #ffffff;
  font-weight: bold;
}

.sales_rank li:last-child > div:nth-child(2) {
  flex-grow: 1;
}

.sales_rank li:last-child > div:last-child {
  font-size: 20px;
}

.sales_rank .num01 {
  color: #fff;
  padding: 0 10px;
  background-color: #8b8b8b;
  font-size: 12px;
  border-radius: 10px;
  margin-right: 5px;
}

.sales_rank_list {
  width: 100%;
}

.sales_rank_list > li {
  border-bottom: 1px solid #e5e5e5;
}

.sales_rank_list > li:last-child {
  border-bottom: 0;
}

.sales_rank_list > li > a {
  display: flex;
  width: 100%;
  color: #333333;
  align-items: center;
  padding: 8px 0;
}

.sales_rank_list > li > a > .num {
  width: 50px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #e6002e;
}

.sales_rank_list > li > a > .people {
  flex-grow: 1;
  padding-left: 20px;
}

.sales_rank_list .name {
  font-size: 14px;
  font-weight: bold;
}

.sales_rank_list .team {
  font-size:12px;
  color: #a7a7a7;
}

.sales_rank_list .rank {
  width: 43px;
  margin-right: 10px;
}

.sales_rank_list .rank > div:first-child {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 5px;
}

.sales_rank_list .rank > div:last-child {
  background-color: #e9e9e9;
  text-align: center;
  border-radius: 10px;
}


.sales_rank_list .selected {
  background-color:#e1f4ff;
}

/*------------------- 주문접수 -----------------*/

.bg01 {
  background-color: #f7f7f7;
}

.btn_order {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  display: block;
  border-radius: 10px;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05), 0 6px 1px rgba(0, 0, 0, 0.02);
  padding: 25px 23px;
  width: 60%;
  margin-bottom: 15px;
  color: #ffffff;
  background: #6c6f7f;
}

.btn_order::after {
  position: absolute;
  top: 27px;
  right: 20px;
  content: "";
  width: 6px;
  height: 12px;
  background: url("../images/arrow_r.png") no-repeat;
  background-size: 6px 12px;
}

.btn_order > span {
  margin-left: 15px;
}

.order_btn_set {
  height: 100% !important;
  display: flex;
  flex-direction: column;
  flex: auto;
  justify-content: center;
  align-items: center;
}

.btn_set_t {
  display: flex;
  gap:5px;
  margin-bottom:10px
}

.btn_set_t > li {
  flex-grow: 1;
}

/* 접수완료 */

.order_end {
  text-align: center;
  margin-bottom: 20px;
}

.order_end > span {
  display: block;
  font-size: 16px;
  text-align: center;
  margin-bottom: 10px;
}

.order_end > span:nth-child(2) {
  font-size: 20px;
  font-weight: bold;
  margin-top: 20px;
  color: #e6002e;
}




/*------------------- 고객검색 --------------------------*/

.layer, .layer button {
  background: #333333;
  color: #ffffff;
}

/*------------------- 고객등록 , 신규견적 -----------------*/

.join, .con_top {
  display: flex;
  position: fixed;
  top: 44px;
  left: 0;
  align-items: center;
  gap: 5px;
  width: 100%;
  z-index: 95;
  padding: 20px 14px 0 14px;
  background-color: #ffffff;
  box-sizing: border-box;
  overflow-x: auto ;
  overflow-y: hidden ;
}

.join > span, .con_top > span {
  font-size: 10px;
  color: #e6002e;
  box-sizing: border-box;
}

.join button {
  min-width: 60px;
}

.btn_round {
  font-weight: bold;
  border-radius: 30px;
}

/*------------------- 입출금요청 -----------------*/
.list_tit {
  display: flex;
  border-bottom: 1px solid #e5e5e5;
  margin-top: 20px;
  margin-bottom: 10px;
  background-color: #6c6f7f;
  border-radius: 6px;
  padding: 7px 8px 7px 16px;
}

.list_tit > div:first-child{
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  color: #ffffff;
}

.list_tit .contact{
  margin-left: auto;
  display: flex;
  gap:3px;
}

.list_tit .contact .btn_p_r{
  height: 18px !important;
  line-height: 18px;
  border-radius: 6px;
  font-size: 12px;
}

.list_tit > .btn_set {
  margin: 0;
}

.list_tit > .btn_set > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  color: #fff;
}

.row > div > ul {
  flex-direction: row !important;
}

.row > div > ul > li {
  width: 90px !important;
}

.column  > ul {
  flex-direction: column;
}


/*------------------------ 조직원조회 / 공지사항------------------------------*/

.member_s > li > a, .notice > li > a, .push > li > a {
  color: #333333;
  display: block;
  padding: 3px 0;
}

.member_s > li > a > div, .notice > li > a > div, .push > li > a > div {
  padding-bottom: 10px;
  display: block;
}

.member_s .name, .notice .name, .push .name{
  font-size: 16px;
  font-weight: bold;
  border-radius: 0 !important;
  line-height: 22px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.view > li > a > div {
  padding-bottom: 10px;
}

.view .area {
  padding: 15px 0;
  border-bottom: 0;
  line-height: 22px;
}

.push .type {
  color: #d00e2d;
  font-weight: bold;
}


.no_ellipsis {
  white-space: wrap !important;
  overflow: initial !important;
  text-overflow: initial !important;
}

.popup_mem {
  text-align: center;
}

.popup_mem > * {
  margin-bottom: 15px;
}

.popup_mem > div:first-child {
  color: #4a86f5;
}

.popup_mem > div:nth-child(2) {
  font-size: 16px;
  font-weight: bold;
}


/*------------------------ 제품카달로그 ------------------------------*/

.catalog > li > a {
  display: flex;
  color: #333333;
}

.catalog .image {
  display: flex;
  justify-content: center;
  font-size: 20px;
  padding-right: 20px;
  font-weight: normal;
}

.catalog .image > div {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  border-radius: 6px;
  border: 1px solid #e5e5e5;
  background-color: #f7f7f7;
}


.catalog .product > div {
  padding-bottom: 15px;
}

.catalog .product > div:first-child {
  padding-bottom: 10px;
}

.catalog .name {
  font-size: 16px;
  font-weight: bold;
}

.catalog .porduct_num {
  color: #d00e2d;
  padding-right: 10px;
  border-right: 1px solid #e5e5e5;
}

.catalog .color {
  padding-left: 6px;
  font-weight: bold;
}


/* ---------------- 설치작업 --------------------*/

.customer_info > div,
.product_info > div,
.setting_info > div  {
  display: flex;
  margin-bottom: 10px;
  padding-left: 3px;
}

.customer_info > div > span,
.product_info > div > span,
.setting_info > div > span {
  display: flex;
  word-break: break-all;
}

.customer_info > div > span:first-child,
.product_info > div > span:first-child,
.setting_info > div > span:first-child  {
  min-width: 140px;
  align-items: center;
}

.customer_info > div > span:last-child,
.product_info > div > span:last-child,
.setting_info > div > span:last-child {
  flex-grow: 1;
  align-items: center;
  font-weight: bold;
}

.customer_info .except,
.product_info .except,
.setting_info .except {
  flex-direction: column;
  gap: 5px;
}

.customer_info .except > span,
.product_info .except > span,
.setting_info .except > span {
  gap: 5px;
}

.list_tit .contact > button {
  color: #fff;
}

.column01 {
  flex-direction: column;
  gap: 5px;
}


/* ---------------- 지도 상세보기 --------------------*/
.location_info {
  width: 100%;
  position: absolute;
  z-index: 999;
  bottom: 0;
  background-color: #e6002e !important;
  color: #fff !important;
  display: flex;
  justify-content: left;
  height : 90px !important;
}

.location_info > div {
  margin: 20px !important;
}


.location_info > div > div:first-child {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 15px;
}

/* ---------------- 고객조회 --------------------*/

.customer > li > a,
.product > li > a {
  display: block;
  color: #333 !important;
}

.customer > li,
.product > li {
  position: relative;
}

.customer > li > a > ul > li,
.product > li > a > ul > li {
  padding-bottom: 5px;
}

.customer .name,
.product .name {
  font-size: 16px;
  font-weight: bold;
}

.customer .product,
.product .product {
  font-weight: bold;
  color: #d00e2d;
}

.customer .day,
.product .day {
  color: #a7a7a7;
}

.customer .phone > button,
.customer .phone01 > button {
  position: absolute;
  right: 0;
  top: 40px;
  font-size: 18px;
  color: #4a86f5;
}

.customer .phone01 > button {
  top: 50px;
}


/* ---------------- 고객상세 --------------------*/

.type02 .tab_content > .list_tit:first-of-type {
  margin-top: 0;
}


/* ---------------- 현금송금내역등록 --------------------*/

.box01 {
  border: 1px solid #828282;
  padding: 15px 15px 5px 15px;
  margin-bottom: 15px;
}

/*----------------- 약관동의 --------------------------*/
.terms > li {
  margin-bottom: 20px;
}
.sign > div {
  margin-top: 10px;
}
.sign > div:last-child {
  height: 200px;
  background-color: #dbdbdb;;
}

.sign > div > span {
  font-weight: bold;
}

/*  팝업 */

.sign_popup > li {
  margin-bottom: 10px !important;
}

.sign_popup > li:first-child {
  display: flex;
  align-items: center;
}

.sign_popup > li:first-child > div:first-child {
  margin-right: 10px;
}

.sign_popup .sign{
  height: 200px;
  background-color: #dbdbdb;;
}

/*----------------  환경설정 ----------------*/

.setting > li {
  border-bottom: 1px solid #e5e5e5;
  display: flex;
  padding: 15px 0;
}

.setting .mem {
  flex-direction: column;
  align-items: center;
}

.setting .mem .member img {
  width: 50px;
  height: 50px;
}

.setting .mem > div:nth-child(2) {
  font-size: 15px;
  font-weight: bold;
}

.setting .mem > div:last-child {
  margin-bottom: 0;
}

.setting .mem > div {
  margin-bottom: 10px;
}

.setting .info > div {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.setting .info > div > span:first-child {
  font-size: 20px;
  margin-bottom: 10px;
  color: #e6002e;
}

.setting .storage {
  padding-left: 15px;
  background-color: #f7f7f7;
}

.setting .storage .setting_info > div:last-child{
  margin: 0;
}

.setting .storage > div > span:first-child {
  font-size: 20px;
  margin-bottom: 10px;
}

.setting .language, .setting, .tab_setting {
  align-items: center;
}

.setting .language > div, .setting .tab_setting > div {
  flex-grow: 1;
}

.setting .language > div:first-child, .setting .tab_setting > div:first-child {
  width: 120px;
  flex-grow: 0;
}

.setting .password  {
  gap: 20px;
  padding: 20px 0;
}

.setting .password > a {
  display: flex;
  flex-grow: 1;
  align-items: center;
  color: #333333;
}

.setting .password > a > span:last-child {
  margin-left: auto;
  width: 30px;
  border: 1px solid #9b9b9b;
  border-radius: 6px;
  text-align: center;
  line-height: 30px;
  color: #808080;
}

/*--------------------- 비밀번호변경 -----------------*/

.change_pass {
  text-align: center;
  margin-top: 30px;
  margin-bottom: 30px;
}

.description {
  display: flex;
  margin-bottom: 15px;
}

.description > div:first-child {
  margin-right: 8px;
  margin-bottom: 15px;
}

/*------------------------ 계약조회 ---------------------------*/


.contract > li > a {
  display: block;
  color: #333 !important;
}

.contract > li {
  position: relative;
}

.contract > li > a > ul > li {
  padding-bottom: 5px;
  position: relative;
}

.contract .name {
  display: flex;
  font-size: 16px;
  font-weight: bold;
}

.contract .install {
  position: absolute;
  top: 0;
  right: 10px;
  background-color: #fff;
  font-size: 15px;
  font-weight: bold;
}

.contract .day {
  color: #d00e2d;
}

.contract .p_num {
  color: #a7a7a7;
}

.contract .day > span:first-child {
  font-size: 8px;
}

.contract .refuse {
  display: inline-block;
  color: #d00e2d;
  border: 1px solid #808080;
  padding: 0 10px;
  background-color: #f7f7f7;
  font-size: 11px;
  font-weight: bold;
}

.contract .add_radio {
  display: flex;
  align-items: center;
}

.contract .add_radio > div:first-child {
  padding-right: 10px;
}

.contract .add_radio > ul:last-child > li {
  margin-bottom: 7px;
}

.contract .add {
  background-color: red;
  padding: 1px 8px;
  border-radius: 3px;
  color: #ffffff;
}

.contract .add_amt {
  float: right;
  text-align: right;
}

/*------------------  가주문 접수 ------------------*/

.top_btn_set {
  display: flex;
  gap: 5px;
  margin-bottom: 20px;
}

/*------------------  고객등록 ------------------*/

.business {
  width: 100%;
  margin-bottom: 10px;
}

.business > div {
  text-align: center;
}

.business > div:first-child {
  width: 100%;
  height: 100px;
  border: 1px solid #828282;
  line-height: 100px;
  margin-bottom: 10px;
}


/*-------------------  로그인 ----------------------*/

.bg02 {
  background-color: #ffffff;
}

.login_wrap {
  padding: 350px 30px 30px 30px;
  background-color: rgb(255, 255, 255);

}

.login_wrap .language {
  display: flex;
  justify-content: end;
}

.login_wrap .language select {
  width: 100px;
  margin-left: auto;
  font-weight: bold;
}

.login_wrap .language select option {
  background-color: #333333;
}

.login_wrap .custom-select {
  padding: 0 30px 0 10px;
  border: 0 !important;
  background: url(../images/form_select_open_mobile.png);
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 13px 9px;
  color: #ffac54;
}

.login_wrap .login_input {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 10px;

}

.login_wrap .login_input input {
  /* border: 0 !important; */
}

.login_wrap .login_btn button {
  height: 44px !important;
  background-color: #5f5f5f;
}

.login_wrap .login_bottom {
  padding-top: 10px;
  display: flex;
}

.login_wrap .login_bottom > span {
  color: #000;
}

.login_wrap .login_bottom > span:last-child {
  margin-left: auto;
  font-weight: bold;
  color: #ffac54;
}

.Mimage-area {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

.Mimage-area img {
  max-width: 100%;
  height: auto;
  object-fit: cover;
}


.login_tit {
  position: relative;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  text-align: center;
}

.login_tit img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}



/* ----------------- 시리얼 관리 ---------------------*/
.serial {
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 34px;
  padding: 10px;
  display: flex;
  gap: 5px;
  background-color: #e7e7e7;
  box-sizing: border-box;
}

.serial > div:first-child {
  position: relative;
  flex-grow: 1;
}

.serial > div:first-child > div {
  position: absolute;
  top: 7px;
  left: 10px;
  color: #808080;
}

.serial > div:first-child > input {
  padding-left: 60px;
}


/* ----------------- 배송확정/매니저이관 ---------------------*/

.delivery {
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 34px;
}

.delivery .tab_content {
  padding: 10px 0;
  background-color: #ffffff;
}

.delivery .tab_content .info_wrap {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.delivery .tab_content .info {
  display: flex;
  align-items: center;
  padding: 0 14px;
}

.delivery .tab_content .info > div:first-child {
  min-width: 80px;
}

.delivery .tab_content .info > div:last-child {
  flex-grow: 1;
  display: flex;
  gap: 5px;
}


/*--------------- 결과등록 ------------------*/

.box02 {
  display: flex;
  align-items: center;
  background-color: #e1f4ff;
  border: 1px solid #8ac8eb;
  padding: 15px;
  margin-bottom: 10px;
}

.box02 .name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 5px;
}

.box02 .num {
  color: #e6002e;
  font-weight: bold;
  margin-right: 10px;
}

.box02_input {
  width: 60px;
  margin-left: auto;
}

/*------------------ 바코드 --------------------*/

.code {
  flex-grow:1 ;
  padding: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-align: center;
  background-color: #e3e3e3;
}

.code > div:last-child {
  border: 1px solid #71bcff;
  padding: 10px;
  background-color: #ffffff;
  margin-bottom: 10px;
}

.add_code {
  padding: 5px 20px;
  color: #007dd9;
}

/*------------------ 카메라 --------------------*/

.camera {
  flex-grow:1 ;
  padding: 10px;
  display: flex;
  background-color: #e3e3e3;
}

.camera > div {
  flex-grow: 1;
  text-align: center;
  width: 33.3333333%;
}

.camera button  {
  padding: 7px;
  font-size: 16px;
  color: #8c8e95;
}

.camera button > span {
  display: block;
}

.camera button > span:last-child {
  font-size: 12px;
}

.camera > div:nth-child(2) > button {
  background-color: #fff;
  border: 3px solid #e6002e;
  border-radius: 26px;
  width: 46px;
  height: 46px;
  font-size: 20px;
  color: #e6002e;
  box-shadow: 0 4px 2px -2px rgba(0,0,0,0.7);
}

/*------------------ 미리보기 --------------------*/

.swiper-container {
  width: 100%;
  height: 300px;
  margin-left: auto;
  margin-right: auto;
}
.swiper-slide {
  background-size: cover;
  background-position: center;
}
.gallery-top {
  box-sizing: border-box;
  height: 84%;
  width: 100%;
  background-color: #e7e7e7;
}
.gallery-thumbs {
  box-sizing: border-box;
  height: 16%;
  box-sizing: border-box;
  padding: 10px 0 0 0;
}
.gallery-thumbs .swiper-slide {
  position: relative;
  box-sizing: border-box;
  width: 35%;
  height: 100%;
  opacity: 0.4;
  background-color: #e7e7e7;
  border: 1px solid #696969 !important;
}
.gallery-thumbs .swiper-slide-active {
  opacity: 1;
}

.gallery-thumbs .swiper-slide > div {
  box-sizing: border-box;
  padding: 5px;
  width: 100%;
  position: absolute;
  bottom: 0;
  background: #333333;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
}

.no_img {
  background-image:url('../images/no_image.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 32px 32px;
}


/*------------------ 설치작업 ------------------*/
.worker {
  display: flex;
}

.worker .team {
  flex-grow: 1;
  font-size: 15px;
}

.worker .name {
  text-align: center;
  flex-grow: 1;
  font-size: 15px;
  font-weight: bold;
}


/* ==========================
    로딩바
 ========================== */

.loading_wrap {
  z-index: 10000;
  position: fixed;
  top: 0;
  width: 100%;
  background:rgba(255, 255, 255, .8);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100% !important;

}

.loading {
  display: inline-block;
  width: 80px;
  height: 80px;
  border: 6px solid #a8a8a8;
  border-radius: 50%;
  border-top-color: #e60c0c;
  animation: spin 0.7s ease-in-out infinite;
  -webkit-animation: spin 0.7s ease-in-out infinite;
}

@keyframes spin {
  to { -webkit-transform: rotate(360deg); }
}
@-webkit-keyframes spin {
  to { -webkit-transform: rotate(360deg); }
}

.modal {
  /* background-color: #fff; */
}
.modal .content {
  background-color: #fff;
  overflow: auto;
}
.noti_bar_area {
  background-color: #fff;
  padding: 10px;
}

#popTermsConditions .wrap {
  background-color: #fff;
  height: 100%;
}

.ic-note-add-1::before,
.ic-note-add-2::before,
.ic-gr-code-1::before,
.ic-gr-code-2::before {
  content: '';
  background-size: 24px 24px !important;
  width: 24px !important;
  height: 24px !important;
  display: inline-block;
}
.ic-note-add-1 {}
.ic-note-add-1::before {
  background-image: url('../images/note_add_24dp_666_FILL0_wght400_GRAD0_opsz24.png');
}
.ic-note-add-2 {}
.ic-note-add-2::before {
  background-image: url('../images/note_stack_add_24dp_666_FILL0_wght400_GRAD0_opsz24.png');
}
.ic-gr-code-1 {}
.ic-gr-code-1::before {
  background-image: url('../images/barcode_24dp_666_FILL0_wght400_GRAD0_opsz24.png');
}
.ic-gr-code-2 {}
.ic-gr-code-2::before {
  background-image: url('../images/qr_code_2_add_24dp_666_FILL0_wght400_GRAD0_opsz24.png');
}

/* 반응형 디자인 */
@media (max-width: 768px) and (orientation: landscape)  {
  form {
    flex-direction: column; /* 세로 정렬 */
  }

  .login_input{
    order: 2;
  }

  .Mimage-area {
    height: 70%; /* 이미지 영역 높이 조정 */
  }

  .login_wrap {
    height: 60%; /* 로그인 영역 높이 조정 */
    padding: 15px;
  }

  .login_tit {
    order: 1;
    bottom: 10px; /* 하단에서 약간의 여백 */
  }

  .login_tit img {
    max-width: 100%; /* 제목 이미지 크기 축소 */
  }

  .login_btn .btn_p_r {
    font-size: 14px;
    padding: 10px;
  }
}

@media (max-width: 480px) and (orientation: portrait) {
  .login_input input {
    order: 2;
    font-size: 12px; /* 작은 화면에서 입력 필드 폰트 축소 */
  }

  .login_btn .btn_p_r {
    font-size: 12px;
  }

  .login_bottom {
    font-size: 10px; /* 푸터 텍스트 축소 */
  }
  .login_tit {
    bottom: 0; /* 세로 화면에서는 하단에 완전 고정 */
    order: 1;
  }

  .login_tit img {
    max-width: 100%; /* 모바일에서 이미지 부모 크기 채우기 */
  }
}