body,
html {
  margin: 0;
  padding: 0;
}

a {
  text-decoration: none;
  color: #000;
}

#leftmenu {
  width: 20%;
}

/* font */
@font-face {
  font-family: "noto";
  src: url("../font/NotoSansKR-Regular.ttf") format("truetype");
}

/* font */

/* 공통 */
/* .wrap {
    overflow-x: hidden;
} */
.row>*,
.row {
  padding: 0;
  margin: 0;
}

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap");

.wrap {
  font-family: "noto";
  letter-spacing: -1px;
}

.width-1300 {
  width: 1400px;
  margin: 0 auto;
}

button {
  cursor: pointer;
}

.red {
  color: red;
}

.blue {
  color: rgb(0, 138, 237) !important;
  font-weight: 600;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.list-style {
  border: 1px solid #ddd;
  border-radius: 10px;
  background-color: #fff;
  overflow: hidden;
  font-size: 13px;
  z-index: 80;
}

.list-style li {
  padding: 5px 10px;
}

.list-style li:hover {
  background-color: #eee;
}

em {
  font-style: normal;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-left {
  text-align: left !important;
}

.btn-has-margin-right>* {
  margin-right: 10px;
}

/* header nav  */
nav {
  padding: 30px 0;
  border-bottom: 1px solid #ddd;
  position: fixed;
  top: 0;
  height: 100px;
  width: 100%;
  z-index: 500;
  background-color: #fff;
}

.nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo a {
  font-size: 24px;
  color: #53bfe3;
  font-weight: 600;
}

nav .menu a,
nav .hamberger-menu a {
  font-size: 18px;
  font-weight: 500;
}

nav .menu a {
  display: inline-block;
  margin-right: 70px;
}

nav .hamberger-menu {
  display: flex;
  align-items: center;
}

nav .hamberger {
  display: none;
}

nav .hamberger a {
  margin-right: 0;
}

/* login */
.gnb {
  padding: 15px 0;
  border-bottom: 1px solid #ddd;
  margin-top: 100px;
}

.gnb-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.login-inner {
  display: flex;
}

.login-inner .id,
.login-inner .pw {
  padding: 12px 20px;
  border: 1px solid #ddd;
  border-radius: 6px;
  /* width: 250px; */
  margin-right: 14px;
}

.login-inner .id span,
.login-inner .pw span {
  color: #000;
  font-size: 14px;
  padding-right: 30px;
  position: relative;
}

.login-inner .id span::after,
.login-inner .pw span::after {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #000;
  position: absolute;
  top: 0;
  right: 0;
}

.login-inner input {
  border: none;
  margin-left: 30px;
  width: 160px;
}

.login-inner input::placeholder {
  color: #ddd;
  font-size: 14px;
}

.login-inner .login {
  border-radius: 6px;
  color: #fff;
  font-size: 14px;
  background-color: #53bfe3;
  padding: 16px 30px;
  border: none;
}

.find-inner {
  display: flex;
}

.find-inner a {
  font-size: 14px;
  font-weight: 500;
  margin-left: 22px;
}

/* main */
main {
  background: linear-gradient(180deg, #51d7ff, #4eaddb);
  width: 100%;
}

.main-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 160px 0;
}

.main-title p {
  font-size: 20px;
  margin-bottom: 12px;
  padding: 0;
}

.main-title h1 {
  font-size: 34px;
  margin-bottom: 28px;
}

.main-title .hub-message {
  padding: 6px 18px;
  background-color: #fff;
  border-radius: 10px;
  font-size: 34px;
  font-weight: 600;
  color: #53bfe3;
  display: inline-block;
}

.main-img {
  position: relative;
  display: inline-block;
}

.main-img .img-desc {
  background-color: #2c76ff;
  padding: 20px;
  color: #fff;
  font-weight: 500;
  font-size: 18px;
  padding-right: 40px;
  display: inline-block;
  border-radius: 10px 0px 10px 10px;
  position: relative;
  margin-right: 20px;
}

.main-img .img-desc::after {
  content: "";
  border-top: 20px solid #2c76ff;
  border-right: 30px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 0px solid transparent;
  position: absolute;
  top: 0;
  left: 100%;
}

.main-img .img-desc.bg-white {
  color: #000;
  border-radius: 0px 10px 10px 10px;
  position: absolute;
  bottom: 60px;
  right: -220px;
}

.main-img .img-desc.bg-white::after {
  left: -20px;
  border-top: 20px solid #fff;
  border-right: 0px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 30px solid transparent;
}

/* benefit */
.benefit-inner {
  padding: 120px 0;
}

.benefit-title {
  text-align: center;
}

.benefit-title .sub-title {
  letter-spacing: 5px;
  font-size: 15px;
  color: #29b1ff;
  display: inline-block;
  text-align: center;
  position: relative;
  margin-bottom: 0;
}

.benefit-title .sub-title::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 30px;
  background-color: #29b1ff;
  top: -200%;
  left: 50%;
  transform: translateX(-50%);
}

.benefit-title h2 {
  font-weight: 400;
  margin-top: 28px;
  font-size: 35px;
  margin-bottom: 100px;
}

.benefit-title h2 strong {
  font-weight: 800;
}

.benefit-desc {
  text-align: center;
  padding: 55px 90px;
  border-radius: 70px 0 70px 0;
  border: 1px solid #ddd;
  box-shadow: 0 0 20px #dddddd70;
}

.benefit-desc .icon {
  border-radius: 50%;
  width: 114px;
  height: 114px;
  background-color: #efefef;
  line-height: 114px;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 50px;
}

.benefit-desc .title {
  font-size: 28px;
  font-weight: 600;
  color: #439bed;
  margin-bottom: 26px;
}

.benefit-desc p {
  font-weight: 500;
  font-size: 20px;
}

.benefit .row {
  padding: 0;
  margin: 0;
}

.benefit .row>div {
  padding: 20px 20px;
  overflow-x: hidden;
}

/* footer */
footer {
  background-color: #001428;
}

.f_top {
  position: relative;
  background-color: #001428;
  padding: 20px;
  width: 1300px;
  margin: auto;
  color: #fff;
  font-size: 13px;
}

.f_top .inner {
  width: 1300px;
}

.footer-title {
  font-size: 20px;
  font-weight: 700;
}

.family {
  position: absolute;
  top: 40px;
  right: 0;
}

.dropdown {
  width: 200px;
  color: #303135;
  border: 1px solid #7d7d7d;
  padding: 5px;
  cursor: pointer;
  position: relative;
}

.title-family {
  color: #fff;
}

.title-family::after {
  content: "\f107";
  font-family: fontawesome;
  position: absolute;
  right: 5px;
}

.title-family.active::after {
  transform: rotate(180deg);
}

.sub-navi {
  display: none;
  position: absolute;
  list-style: none;
  padding: 0;
  margin: 0;
  left: 0;
  bottom: 100%;
  width: 100%;
}

.sub-navi li a {
  color: #fff;
  padding: 5px;
  display: block;
  background-color: #bbb;
  border-bottom: 1px solid #aaa;
}

.sub-navi li a:last-child {
  border: none;
}

.sub-navi li a:hover {
  background-color: #333;
}

.dimmed-2 {
  /* position: fixed; */
  z-index: 600;
  background-color: #3535359b;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 100vh;
  display: none;
}

.dimmed-2.active {
  display: block;
  position: fixed;
}

.menu {
  position: relative;
}

.btn-close-mo {
  position: absolute;
  width: 18px;
  height: 18px;
  top: 30px;
  right: 39px;
  cursor: pointer;
  display: none;
}

nav .menu a:hover,
nav .menu a.active {
  color: #2c76ff;
  font-weight: 700;
}

@media screen and (max-width: 1400px) {
  .family {
    position: static;
    margin-top: 20px;
  }

  .f_top,
  .f_top .inner {
    width: 100%;
  }
}

/*** Footer End ***/

/* 메인페이지 반응형 */
@media (max-width: 1740px) {
  .main-inner {
    width: 100%;
    padding: 160px 180px;
  }

  .main-img .img-desc {
    font-size: 14px;
  }

  .main-img .img-desc.bg-white {
    right: -160px;
  }
}

@media (max-width: 1466px) {
  .main-inner {
    padding: 160px 180px 160px 100px;
  }

  .main-title h1 {
    font-size: 28px;
  }

  .main-title .hub-message {
    font-size: 28px;
  }

  .main-img img {
    width: 280px;
  }

  .main-img .img-desc::after {
    border-right: 15px solid transparent;
  }

  .main-img .img-desc.bg-white::after {
    border-left: 15px solid transparent;
    left: -15px;
  }

  header,
  .nav-inner,
  .gnb-inner,
  .benefit-inner {
    width: 100%;
  }

  nav,
  .gnb {
    padding: 30px 20px;
  }

  .benefit-desc .title {
    font-size: 20px;
  }

  .benefit-desc p {
    font-size: 15px;
  }

  .benefit-desc {
    padding: 45px 44px;
  }
}

@media (max-width: 1260px) {
  .benefit-desc {
    height: 374px;
  }
}

@media (max-width: 1200px) {

  body,
  html {
    overflow-x: hidden;
  }

  header {
    overflow-x: hidden;
  }

  .login-inner input {
    margin-left: 10px;
  }

  nav .hamberger {
    display: block;
  }

  .menu {
    position: fixed;
    margin: 0;
    display: flex;
    flex-direction: column;
    right: -300px;
    top: 0;
    z-index: 700;
    width: 300px;
    height: 100vh;
    padding: 60px 30px;
    background-color: #fff;
    visibility: hidden;
  }

  .dimmed {
    /* position: fixed; */
    z-index: 600;
    background-color: #3535359b;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100vh;
    display: none;
  }

  .menu.active {
    visibility: visible;
    transition: 0.3s;
    right: 0;
    padding-top: 100px;
  }

  .dimmed.active {
    display: block;
    position: fixed;
  }

  nav .menu a {
    margin-bottom: 20px;
    display: block;
    padding: 20px;
    margin: 0;
  }

  nav .menu a:hover,
  nav .menu a.active {
    width: 100%;
  }

  .btn-close-mo {
    display: block;
  }

  .gnb-inner {
    flex-direction: column;
  }

  .find-inner {
    margin-top: 20px;
  }

  .main-img {
    display: none;
  }

  .benefit-desc {
    padding: 65px 27px;
  }
}

@media (max-width: 767px) {
  .login-inner {
    flex-direction: column;
    width: 100%;
  }

  .benefit-desc {
    height: auto;
  }

  .login-inner .id,
  .login-inner .pw {
    margin-bottom: 20px;
    margin-right: 0;
  }

  .main-inner {
    padding: 160px 80px 160px 100px;
  }
}

/* 메세지 입력 */
.message-inner {
  width: 100%;
  display: flex;
  margin-top: 100px;
}

.bottom-message {
  width: 100%;
}

.left-login {
  width: 20%;
}

.right-message-inner {
  width: 80%;
}

.left-enter-message {
  width: 35%;
  margin-right: 20px;
  float: left;
}

.right-btn-message {
  width: 62%;
  float: right;
}

/* 메시지 공통 */
.message .title {
  font-size: 27px;
  font-weight: 800;
}

.message .left-login,
.message .top-title,
.message .bottom-message {
  padding: 20px 26px;
}

.btn-primary {
  background-color: #3599ff;
}

.btn-blue {
  background-color: #3599ff;
  color: #fff;
  border-radius: 10px;
  padding: 10px;
  border: none;
  font-size: 15px;
  font-weight: 500;
}

.btn-white {
  border: 1px solid #3599ff;
  color: #3599ff;
  border-radius: 10px;
  padding: 10px;
  background-color: #fff;
  font-size: 15px;
  font-weight: 500;
}

.btn-white-border-gray {
  border: 1px solid #c3c3c3;
  color: #3599ff;
  border-radius: 10px;
  padding: 10px;
  background-color: #fff;
  font-size: 15px;
}

.btn-gray:disabled {
  background-color: #dcdcdc;
  color: #666;
  border-radius: 10px;
  padding: 10px;
  border: none;
  font-size: 15px;
  font-weight: 500;
  cursor: not-allowed;
}

.btn-red {
  background-color: #ff5b5b;
  color: #fff;
  border-radius: 10px;
  padding: 10px;
  border: none;
  font-size: 15px;
  font-weight: 500;
}

.btn-red:hover {
  background-color: #e74c3c;
}

/* left login */
.message .left-login {
  background-color: #eeeeee;
  min-height: 100vh;
  font-size: 15px !important;
  width: 100%;
  height: 100% !important;
}

/* left login 1327이하 min-height 조정 */
@media (max-width: 1327px) {
  .message .left-login {
    height: auto;
    min-height: auto;
  }
}

.message .my-inner p {
  font-size: 16px;
}

.message .my-inner .btn-logout,
.message .my-inner .btn-my {
  width: 100%;
  display: block;
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 10px;
}

.message .left-login .title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 6px;
  display: inline-block;
}

.message .flex-inner {
  display: flex;
  justify-content: space-between;
}

.message .flex-inner span:first-of-type {
  color: #676767;
}

.message .flex-inner span:last-of-type {
  color: #000;
  font-weight: 500;
}

.message .flex-inner span em {
  font-style: normal;
}

.message .cash-inner .btn-cash {
  width: 100%;
  font-size: 18px;
  font-weight: 500;
  margin-top: 10px;
}

.message .cash-inner,
.message .send-tip-inner,
.message .num-inner {
  margin-top: 40px;
}

.message .span-tip {
  display: flex;
}

.message .span-tip span {
  margin-right: 5px;
}

/* top title */
.message .top-title {
  background-color: #4fa6ff;
  position: relative;
}

.message .top-title h1 {
  color: #fff;
}

.message .tabs {
  margin-top: 20px;
}

.message .tabs a {
  font-size: 16px;
  display: inline-block;
  margin-right: 16px;
  color: #fff;
}

.message .tabs a.active {
  padding: 6px 10px;
  color: #3599ff;
  font-weight: 700;
  background-color: #fff;
  border-radius: 10px;
}

.message .top-title .desc {
  font-size: 12px;
  color: #fff;
  position: absolute;
  right: 20px;
  bottom: 0px;
}

/* bottom-message */
/* left-enter-message */
.message .message-input-inner {
  /* display: flex; */
  /* gap: 20px; */
  margin-top: 20px;
}

.message .message-input-inner::after {
  content: "";
  display: block;
  clear: both;
}

.message .left-enter-message {
  padding: 20px;
  border-radius: 10px;
  background-color: #f7f7f7;
}

.message .message-input-inner input {
  padding: 8px;
  border-radius: 10px;
  border: 1px solid #ddd;
  width: 100%;
}

.message .message-input-inner input::placeholder {
  padding-left: 10px;
  color: #ddd;
  font-size: 13px;
}

.message .title-input {
  position: relative;
}

.message .title-input img {
  position: absolute;
  cursor: pointer;
  right: 10px;
  top: 13px;
}

.message .title-input-inner {
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.message .title-input-inner em {
  font-style: normal;
}

.message .title-input-inner .btn-text,
.message .title-input-inner .btn-return {
  padding: 5px;
  font-size: 13px;
  font-weight: 500;
  border-radius: 4px;
}

.message .left-enter-message textarea,
.message .left-right-inner textarea,
.message textarea.memo {
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 10px;
  margin-top: 10px;
  font-size: 13px;
  color: #000000;
  padding: 10px;
}

.message .left-right-inner textarea {
  margin-top: 0;
}

.message .left-enter-message span {
  font-weight: 500;
  display: inline-block;
}

.message .add-img-inner {
  margin: 10px 0;
}

.message .add-img-inner .add-img {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 10px;
  margin-top: 10px;
}

.message .add-img-inner .add-img input[type="file"] {
  border: none;
}

.message .title-img {
  display: flex;
}

.message .add-img-inner .title-img span {
  margin-right: 5px;
  vertical-align: middle;
}

.message .phone-num-inner span {
  margin-bottom: 10px;
}

.message .btn-add-phone {
  width: 100%;
  margin-top: 10px;
}

/* right-btn-message */
/* top */
.message .right-btn-message span {
  font-size: 16px;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 10px;
}

.message .right-btn-message .top .btn-inner {
  display: block;
  width: 100%;
}

.message .right-btn-message .top .btn-inner button,
.message .memo-option-btn button {
  font-size: 13px;
  color: #5c5c5c;
  /* width: 100px; */
  margin-right: 6px;
}

.memo-option-btn button.active {
  background: #3599ff;
  color: #fff;
  border-color: #3599ff;
}

/* center */
.message .right-btn-message .center {
  margin-top: 20px;
}

.message .right-btn-message .left-right-inner {
  display: flex;
  gap: 20px;
}

.message .right-btn-message .center .left,
.message .right-btn-message .center .right {
  padding: 15px;
  border-radius: 10px;
  background-color: #f7f7f7;
  width: 50%;
  /* height: 260px; */
}

.message .right-btn-message .center .right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.message .right-btn-message .center .right button {
  padding: 5px;
  font-size: 13px;
  font-weight: 500;
  border-radius: 4px;
}

.message .right-btn-message .center .right em {
  font-style: normal;
}

.message .right-btn-message .center .right p {
  text-align: center;
  font-size: 13px;
  color: #848484;
}

.message .right-btn-message .center .right .btn-save img {
  margin-right: 5px;
  vertical-align: middle;
}

.message .right-btn-message .center .right .btn-save {
  padding: 5px 8px;
}

.message .right-btn-message .center .right .receive,
.message .right-btn-message .center .right .save {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.message .right-btn-message .center .right .save span {
  margin-bottom: 0;
}

.checkbox-label input {
  display: none;
}

.checkbox-label {
  cursor: pointer;
  margin-top: 10px;
}

.checkbox-label input+em {
  background: url(../img/btn-check.png) no-repeat left center;
  width: 18px;
  height: 18px;
  background-position: left;
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
  cursor: pointer;
}

.checkbox-label input:checked+em {
  background-position: right;
}

/* bottom */
.message .right-btn-message .bottom {
  margin-top: 20px;
}

.message .right-btn-message .bottom .btn-inner {
  display: flex;
  gap: 20px;
  width: 100%;
  margin-bottom: 10px;
}

.message .right-btn-message .bottom .btn-inner:last-of-type {
  margin-top: 20px;
}

.message .right-btn-message .bottom .btn-inner button {
  width: 50%;
  font-size: 13px;
  color: #5c5c5c;
  font-weight: 500;
}

.message .right-btn-message .bottom .btn-inner .send.active {
  border: 1px solid #29b1ff;
  color: #29b1ff;
}

.message .right-btn-message .bottom .btn-inner .send-inner {
  width: 50%;
  display: flex;
  gap: 10px;
}

.message .right-btn-message .bottom .btn-inner .send-inner button {
  width: 50%;
}

.message .right-btn-message .bottom .btn-inner .btn-send {
  width: 50%;
  text-align: center;
  color: #fff;
}

.message .right-btn-message .bottom .btn-inner .btn-kakao-send {
  width: 50%;
  text-align: center;
  color: #fff;
}

/* 예약발송 탭버튼 */
.message .tabs-content .desc {
  display: none;
}

.message .tabs-content .desc.active {
  display: block;
}

.message .time-inner {
  display: flex;
  width: 50%;
  gap: 10px;
  margin-bottom: 0;
}

.message .time-inner-list {
  position: relative;
  width: 100%;
  text-align: center;
}

.message .time-inner-list .list {
  font-size: 13px;
  color: #ddd;
  width: 100% !important;
  position: relative;
  margin-bottom: 0;
  height: 100%;
  display: inline-block;
}

.message .time-inner-list .list span {
  font-size: 13px;
  margin-bottom: 0;
}

.message .time-inner-list button strong {
  font-size: 11px;
  text-align: right;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.message .tabs-content ul {
  width: inherit;
  font-size: 13px;
  color: #ddd;
  font-weight: 500;
  text-align: center;
  color: #000;
  list-style: none;
  font-size: 13px;
  position: absolute;
  bottom: 100%;
  left: 0;
  max-height: 500px;
  overflow-y: scroll;
  margin-bottom: 0;
  display: none;
}

.message .tabs-content ul li {
  padding: 10px;
  width: inherit;
}

.message .tabs-content ul li:hover {
  background-color: #eee;
}

.message .date img {
  margin-top: -3px;
  margin-left: 3px;
}

/* 툴팁 */
.tip-inner {
  position: relative;
}

.tip {
  font-size: 13px;
  border-radius: 10px;
  padding: 10px;
  background-color: #4a4a4a;
  color: #fff;
  position: absolute;
  bottom: 150%;
  left: 50%;
  transform: translateX(-50%);
  width: 350px;
  visibility: hidden;
  transition: 0.3s;
}

.tip::after {
  content: "";
  border-top: 15px solid #4a4a4a;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 0px solid transparent;
  position: absolute;
  width: 20px;
  height: 20px;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
}

.tip-inner img:hover+.tip {
  visibility: visible;
}

@media (max-width: 1330px) {

  .message .left-login,
  #leftmenu {
    width: 100%;
  }

  .message .left-login {
    min-height: auto;
  }

  .message-inner {
    display: flex;
    flex-direction: column;
  }

  .message .left-login {
    width: 100%;
    display: flex;
    justify-content: space-between;
    height: auto;
  }

  .left-login>div {
    width: 20%;
  }

  .message>div,
  .right-message-inner {
    width: 100%;
  }

  .message .cash-inner,
  .message .send-tip-inner,
  .message .num-inner {
    margin-top: 0;
  }

  .tip.send {
    bottom: -220%;
  }

  .tip.send::after {
    bottom: 100%;
    border-top: 0px solid transparent;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 15px solid #4a4a4a;
  }

  .tip.img {
    left: 40px;
    transform: translateX(0);
    bottom: -65px;
  }

  .tip.img::after {
    left: -20px;
    transform: translateX(0);
    rotate: 90deg;
    bottom: 65px;
  }
}

@media (max-width: 1040px) {
  .message .left-login {
    /* flex-direction: column; */
    flex-wrap: wrap;
    gap: 14px;
  }

  .message .left-login>div {
    width: 47%;
  }

  .message .cash-inner,
  .message .send-tip-inner,
  .message .num-inner {
    margin-top: 20px;
  }

  .message .top-title .desc {
    position: static;
    margin-top: 20px;
  }

  .left-enter-message,
  .right-btn-message,
  .message .time-inner {
    width: 100%;
  }

  .right-btn-message {
    margin-top: 20px;
  }

  .tip.send {
    left: 40px;
    transform: translateX(0);
    bottom: -15px;
  }

  .tip.send::after {
    left: -20px;
    transform: translateX(0);
    rotate: 270deg;
    bottom: 20px;
  }
}

@media (max-width: 767px) {
  .message .left-login>div {
    width: 100%;
    gap: 0;
  }

  .message .right-btn-message .left-right-inner,
  .message .right-btn-message .bottom .btn-inner {
    flex-direction: column;
  }

  .message .my-logout-inner {
    display: flex;
    grid-gap: 20px;
  }

  .message .right-btn-message .center .left,
  .message .right-btn-message .center .right,
  .message .right-btn-message .bottom .btn-inner button,
  .message .right-btn-message .bottom .btn-inner .send-inner,
  .message .right-btn-message .bottom .btn-inner .btn-send {
    width: 100%;
  }

  .message button {
    font-size: 15px !important;
  }

  .message .right-btn-message .top .btn-inner button {
    /* font-size: 13px !important; */
    width: auto;
  }
}

/* 광고문자 */
.message .tabs-content .warn {
  color: red;
  font-size: 12px;
}

.guide-inner .message-guide-ul {
  list-style: none;
}

.guide-inner .message-guide-ul li {
  margin-bottom: 3px;
}

.guide-inner h3 {
  font-size: 24px;
  font-weight: 700;
}

.message-guide-inner {
  display: flex;
  gap: 20px;
  margin-top: 40px;
}

.message-ex {
  padding: 20px;
  border-radius: 10px;
  border: 1px solid #ddd;
  box-shadow: 0 0 20px #a0a0a039;
}

.message-desc {
  margin-left: 30px;
}

.message-desc span {
  font-weight: 500;
}

.before-red,
.before-blue,
.before-green,
.before-yellow {
  position: relative;
}

.before-red::before,
.before-blue::before,
.before-green::before,
.before-yellow::before {
  content: "";
  width: 100%;
  height: 6px;
  background-color: rgba(255, 0, 0, 0.39);
  border-radius: 20px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.before-blue::before {
  background-color: rgba(81, 214, 255, 0.463);
}

.before-green::before {
  background-color: rgba(23, 201, 23, 0.342);
}

.before-yellow::before {
  background-color: rgba(253, 207, 54, 0.354);
}

.btn-num-apply {
  margin-top: 20px;
  width: 218px;
  display: inline-block;
  text-align: center;
}

.guide-inner.has-margin {
  margin-top: 40px;
}

.flex-message-free-reception {
  display: flex;
  gap: 20px;
  margin: 20px 0;
}

.free-reception {
  padding: 20px;
  border-radius: 10px;
  border: 1px solid #ddd;
  box-shadow: 0 0 20px #a0a0a039;
}

.free-reception .title {
  font-size: 18px;
  margin-bottom: 10px;
}

.free-reception p {
  margin-bottom: 0;
}

@media (max-width: 767px) {

  .message-guide-inner,
  .flex-message-free-reception {
    flex-direction: column;
  }

  .message .btn-num-apply {
    width: 100%;
  }
}

/* 주소록 */
.input-search,
.send-message {
  position: relative;
  font-size: 13px;
}

.input-search ul,
.send-message-inner ul {
  list-style: none;
  border: 1px solid #ddd;
  border-radius: 10px;
  margin: 0;
  padding: 0;
  background-color: #fff;
  position: absolute;
  top: 100%;
  width: inherit;
  left: 0;
  display: none;
  overflow: hidden;
  z-index: 30;
}

.input-search ul li,
.send-message-inner ul li {
  padding: 5px 10px;
  color: #5c5c5c;
  font-size: 13px;
}

.input-search em,
.send-message-inner em {
  font-style: normal;
  margin-left: 10px;
}

.search {
  display: inline-block;
  color: #5c5c5c;
}

.search input {
  border: none;
  padding-left: 8px;
}

.search input::placeholder {
  color: #ddd;
}

.input-search button {
  margin-left: 5px;
}

.send-message {
  display: inline-block;
}

.input-search-inner {
  display: flex;
  justify-content: space-between;
}

/* 리스트 누르기 */
.input-search ul.active,
.send-message-inner ul.active {
  display: block;
}

.input-search ul li:hover,
.send-message-inner ul li:hover {
  background-color: #eee;
  width: inherit;
}

.send-message-inner ul {
  width: 100%;
}

/* 폴더 */
.adress-inner {
  padding: 20px 0;
  display: flex;
  width: 100%;
  height: 1000px;
  margin-bottom: 40px;
}

.adress-inner .left {
  width: 28%;
}

.adress-inner .right {
  width: 72%;
}

.adress-inner .left-top {
  background-color: #eee;
  padding: 10px 14px 14px 14px;
}

.adress-inner .left-top {
  display: flex;
  gap: 6px;
  width: 100%;
}

.adress-inner .left-top .btn-inner {
  width: 50%;
}

.adress-inner .left-top button {
  width: 100%;
  margin-top: 6px;
}

.adress-inner .left-bottom {
  width: 100%;
  font-size: 15px;
  height: calc(100% - 117px);
  overflow-y: scroll;
  border: 1px solid #ddd;
}

.adress-inner .left-bottom em {
  font-style: normal;
}

.adress-inner .left-bottom .folder-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #ddd;
  padding: 14px;
}

.adress-inner .left-bottom .title {
  font-size: 15px;
  font-weight: 400;
  position: relative;
}

.adress-inner .left-bottom .title ul {
  position: absolute;
  left: 0;
  top: 100%;
  display: none;
  width: 100%;
  max-height: 150px;
  overflow-y: scroll;
  z-index: 30;
}

.adress-inner .left-bottom .btn-add-folder {
  font-size: 13px;
  color: #000;
  padding: 6px;
}

.adress-inner .btn-duplFolder-chk {
  font-size: 13px;
  color: #000;
  padding: 6px;
}

.adress-inner .left-bottom .btn-add-folder img {
  margin-top: -3px;
}

.adress-inner .left-bottom .folder,
.adress-inner .left-bottom .folder-name,
.folder-add-group-inner {
  display: flex;
  align-items: center;
}

.adress-inner .left-bottom .folder,
.folder-add-group-inner {
  justify-content: space-between;
  padding: 10px 10px;
  border: 1px solid #ddd;
}

.adress-inner .left-bottom .folder-name .img img {
  margin-right: 5px;
}

.btn-inner.btn-folder button {
  /* margin-left: 5px; */
  padding: 3px 5px;
}

.adress-inner .left-bottom .folder-list ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 14px 14px 34px;
  border: 1px solid #ddd;
}

.folder-add-group-inner .folder-li-input {
  padding-left: 20px;
}

.folder-add-group-inner .folder-li-input .btn-text {
  padding-left: 10px;
}

.adress-inner .left-bottom .folder-list ul li,
.adress-inner .left-bottom .folder-name span {
  text-overflow: ellipsis;
  max-width: 140px;
  white-space: nowrap;
  overflow: hidden;
}

.adress-inner .left-bottom .folder-list ul li input {
  margin-right: 5px;
}

.adress-inner .left-bottom .btn-add-group {
  padding: 5px 10px;
  font-size: 13px;
  color: #000;
}

.adress-inner .left-bottom .folder-li-input {
  position: relative;
  display: flex;
}

.adress-inner .left-bottom .folder-li-input .list-style {
  position: absolute;
  top: 100%;
  width: 100%;
  left: 0;
  display: none;
  max-height: 150px;
  overflow-y: scroll;
  z-index: 30;
}

.adress-inner .left-bottom .folder-li-input .list-style div {
  padding: 5px 10px;
}

.adress-inner .left-bottom .folder-li-input .list-style div:hover {
  background-color: #eee;
}

/* 폴더 추가 */
.adress-inner .left-bottom .folder-add-input {
  padding: 14px;
  border: 1px solid #ddd;
  display: flex;
  gap: 10px;
  display: none;
}

.adress-inner .left-bottom .folder-add-input input {
  width: calc(100% - 53px);
  display: inline-block;
}

.adress-inner .left-bottom .folder-add-input button {
  padding: 5px 10px;
}

.adress-inner .left-bottom .folder-add-input.active {
  display: block;
}

/* 주소록 관리 접었다 펴기 */
.adress-inner .left-bottom .folder.add .img.active {
  transform: rotate(-180deg);
  margin-left: -5px;
  margin-right: 5px;
  margin-top: 5px;
}

.adress-inner .left-bottom .folder-list.active {
  display: none;
}

/* 주소록 관리 > 대제목/소제목 ㄱ~ㅎ ul 열고 접고 */
.adress-inner .left-bottom .title ul.active,
.adress-inner .left-bottom .folder-li-input .list-style.active {
  display: block;
}

/* right */
.adress-inner .right-top {
  display: flex;
  padding: 14px;
  border: 1px solid #ddd;
  justify-content: space-between;
}

.adress-inner .right-top button {
  font-size: 13px;
  color: #000;
}

.adress-inner .right-bottom {
  border: 1px solid #ddd;
  height: calc(100% - 188px);
  display: block;
  position: relative;
}

.adress-inner .right-bottom p {
  font-size: 15px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

/* 주소록 - 폴더 수정, 삭제 */
.folder-edit {
  display: none;
}

.editing .folder-label {
  display: none;
}

.editing .folder-edit {
  display: inline-flex;
}

.editing .f_modifyBtn {
  background-color: #fff;
  /* 흰색 배경 */
  color: #3599ff;
  border: solid;
  border-width: 1px;
}

.btn-folder.is_default {
  display: none;
}

/* right bottom 폴더 클릭시 테이블 */
.adress-inner .right-bottom .folder-table-inner {
  display: block;
  height: calc(100% - 64px);
  overflow-y: auto;
}

.adress-inner .right-bottom .folder-table-title {
  padding: 14px;
}

.adress-inner .right-bottom .folder-table-title strong {
  margin-left: 6px;
}

table {
  /* width: 100%; */
  table-layout: fixed;
}

table thead,
table tbody tr {
  display: table;
  width: 100%;
}

table.column thead,
table.column tbody tr {
  display: table-row;
}

table.refund th {
  width: 100%;
}

table thead th,
table tbody tr td {
  display: table-cell;
  word-break: break-all;
  padding: 10px !important;
  font-size: 15px;
  overflow: revert !important;
}

table.column tbody tr td:last-of-type {
  text-align: left;
  padding-left: 10px;
}

table.column tbody tr td {
  overflow: hidden;
  white-space: initial;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  word-break: break-all;
}

.adress-inner .left-bottom .folder-list ul.active {
  background-color: rgb(209, 232, 176);
}

.f_selected {
  color: #0d6efd;
}

/* 스크롤 대응 */
.table-responsive {
  width: 100%;
  overflow-x: auto;
}

/* 테이블 간격 고정 */
.address-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  min-width: 700px;
}

/* 공통 셀 스타일 */
.address-table th,
.address-table td {
  border: 0px solid #ccc;
  padding: 10px;
  text-align: center;
  font-size: 14px;
  vertical-align: middle;
}

/* 열별 너비 클래스 */
.col-check {
  width: 30px;
}

.col-name {
  width: 120px;
}

.col-phone {
  width: 140px;
}

.col-memo {
  width: 180px;
}

.col-bigo {
  width: 180px;
}

.col-action {
  width: 60px;
}

/* 열별 너비 클래스 */
.col-check input,
.col-name input,
.col-phone input,
.col-memo input,
.col-action input {
  width: 100%;
  box-sizing: border-box;
  font-size: 13px;
  padding: 4px;
  text-align: center;
}

.input_no_border td input {
  border: 0px;
}

/* 셀 내부 요소: 100% 꽉 차게 */
.address-table .btn-blue,
.address-table .btn-white {
  width: 100%;
  box-sizing: border-box;
  font-size: 13px;
  padding: 4px;
}

/* 주소록 관리 반응형 */
@media (max-width: 991px) {
  .adress-inner {
    flex-direction: column;
    max-height: 100%;
    height: auto;
  }

  .adress-inner .left,
  .adress-inner .right {
    width: 100%;
  }

  .adress-inner .right-bottom p {
    position: static;
    transform: none;
    margin: 40px 0;
  }
}

@media (max-width: 767px) {
  .adress-inner .right-bottom table {
    min-width: 600px;
  }

  .input-search-inner {
    flex-direction: column;
  }

  .input-search-inner .input-search {
    margin-bottom: 10px;
  }

  .adress-inner .left-bottom .folder-list ul li,
  .adress-inner .left-bottom .folder-name span {
    max-width: 140px;
  }
}

@media (max-width: 500px) {
  .input-search-inner .input-search .btn-return {
    margin: 10px 0 0 0;
  }
}

/* 페이지 */
.page {
  text-align: center;
  margin: 15px 0;
}

.page a {
  border: 1px solid #a9a9a9;
  padding: 5px;
  font-size: 13px;
  margin: 0;
  border-radius: 3px;
}

.page-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 5px;
  padding: 0 10px;
  box-sizing: border-box;
}

.page-nav {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.page-nav a {
  padding: 6px 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #333;
  text-decoration: none;
  font-size: 14px;
  white-space: nowrap;
}

.page-nav a.active {
  background-color: #007bff;
  color: white;
  border-color: #007bff;
}

.page-limit-select {
  display: flex;
  align-items: center;
  /* 세로 가운데 정렬 */
}

.page-limit-select select {
  padding: 6px 10px;
  font-size: 14px;
  border-radius: 4px;
  border: 1px solid #ccc;
  appearance: none;
  /* 브라우저 기본 화살표 제거 (옵션) */
}

/* 주소록 입력 */
.message-guide-ul.font-size-small {
  font-size: 13px;
}

.adress-input {
  font-size: 13px;
  color: #000;
}

.adress-input::after {
  content: "";
  display: block;
  clear: both;
}

.adress-input p {
  text-align: right;
}

.adress-input .btn-inner {
  display: flex;
  margin-bottom: 10px;
}

.adress-input .has-margin {
  margin-top: 20px;
}

.adress-input .btn-inner>div {
  position: relative;
  color: #000;
  margin-right: 10px;
}

.adress-input .list-style {
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  display: none;
}

.adress-input .btn-inner input {
  width: 300px;
  border-radius: 10px;
  border: 1px solid #c3c3c3;
  margin-right: 10px;
  padding: 10px;
}

.adress-input .btn-inner button {
  margin-right: 10px;
}

.table-border {
  border: 1px solid #ddd;
}

.table th,
.table td {
  width: 7%;
  text-align: center;
  padding: 5px;
  align-content: center;
}

.table tbody tr:last-of-type td {
  border-bottom: 0;
}

.table thead th {
  background-color: #eee;
  position: sticky;
  top: 0;
}

.table.row-table tbody {
  overflow-y: scroll;
  max-height: 800px;
  display: block;
}

.table.row-table {
  margin-bottom: 20px;
}

.table tbody td:hover {
  background-color: rgb(209, 232, 176);
}

.adress-input .btn-adress-input {
  display: flex;
  justify-content: space-between;
}

.adress-input .btn-adress-input button {
  font-size: 13px;
}

.adress-input .btn-save {
  float: right;
  margin-right: 10px;
}

/* 주소록 입력 리스트 열고 닫고 */
.adress-input .list-style.active {
  display: block;
  z-index: 30;
}

/* 주소록 수신거부관리 */
.btn-search-inner,
.btn-delete-inner {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
  margin-top: 20px;
}

.btn-delete-inner {
  margin-top: 10px;
}

.adress-reject {
  font-size: 13px;
}

.btn-search-inner .btn-inner button {
  margin-left: 5px;
}

.btn-delete-inner .btn-inner:first-child button {
  margin-right: 5px;
}

.page-list-inner .list {
  position: relative;
}

.page-list-inner .list-style {
  position: absolute;
  left: 0;
  bottom: 100%;
  width: 100%;
  display: none;
}

.page-list-inner {
  text-align: center;
}

.page-list-inner::after {
  content: "";
  display: block;
  clear: both;
}

.page-list-inner .page {
  display: inline-block;
}

.page-list-inner .list {
  float: right;
  color: #000;
}

/* 주소록 수신거부번호 리스트 열고 닫고 */
.page-list-inner .list-style.active {
  display: block;
  z-index: 30;
}

/* 주소록 입력, 주소록 수신거부관리 반응형 */
@media (max-width: 767px) {
  .table-inner {
    width: 100%;
    white-space: nowrap;
    overflow-x: auto;
    margin-bottom: 20px;
  }

  .table {
    min-width: 600px;
    width: 100%;
    /* display: block; */
    margin-bottom: 0;
  }

  .btn-search-inner,
  .btn-delete-inner {
    flex-direction: column;
  }

  .btn-search-inner div:last-of-type,
  .btn-delete-inner div:last-of-type {
    margin-top: 10px;
  }

  .btn-search-inner .btn-inner button {
    margin-left: 0;
    margin-right: 5px;
  }

  .adress-input .btn-inner:first-of-type,
  .adress-input .btn-inner:nth-of-type(2) {
    display: flex;
    flex-wrap: wrap;
  }
}

/* 500이하 전체수정 */
@media (max-width: 500px) {
  .message button {
    font-size: 13px !important;
  }

  .adress-inner .right-top {
    flex-direction: column;
  }

  .adress-inner .right-top .btn-inner:first-of-type {
    margin-bottom: 10px;
  }

  .input-search .btn-return {
    margin: 10px 0 0 0;
  }

  .btn-search-inner .btn-inner button:last-of-type {
    margin-top: 10px;
  }

  .adress-input .btn-inner input,
  .adress-input .btn-inner .btn-add-group {
    margin-top: 10px;
    margin-top: 10px;
  }
}

/* 검색인풋 리스트 클릭시 더 밑으로 떨어지는 현상 수정 */
@media (max-width: 387px) {
  .input-search ul {
    top: 45%;
  }
}

/* 폰트어썸 */
.fa-angle-down {
  margin-left: 10px;
}

/* 발송결과 전송내역 */
.send-result {
  font-size: 13px;
  color: #000;
}

.date-month {
  position: relative;
}

.date-month ul {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: none;
  color: #5c5c5c;
}

.btn-send-inner,
.btn-send-input-inner {
  display: flex;
  margin-bottom: 10px;
}

.btn-send-inner {
  margin-top: 20px;
}

.send-download {
  /* margin-bottom: 20px; */
  text-align: right;
}

.btn-send-inner>button,
.btn-send-input-inner>* {
  margin-right: 10px;
}

/* 발송결과 전송내역 리스트 active */
.date-month ul.active {
  display: block;
  z-index: 30;
}

/* 선택 전송내역 상세 */
.table-message-inner {
  display: flex;
  gap: 20px;
  margin: 20px 0;
}

.table-message-inner .message-file-inner {
  width: 25%;
}

.table-message-inner .message-ex .text {
  overflow-y: scroll;
  max-height: 200px;
}

.table-message-inner .table-inner {
  width: 75%;
}

/* .column tbody {
  overflow: auto;
} */
table tr td {
  text-overflow: ellipsis;
  white-space: nowrap;
}

.column td {
  width: 50%;
}

.column td:last-of-type {
  width: 100%;
}

.table.column tbody td:first-of-type {
  font-weight: 800;
  background-color: #eee;
  vertical-align: middle;
  text-align: center;
}

.table-message-inner .add-file {
  padding: 20px;
  border: 1px solid #ddd;
  border-radius: 10px;
  margin-top: 20px;
  box-shadow: 0 0 20px #dddddd70;
}

.table-message-inner .add-file p {
  font-size: 16px;
  font-weight: 600;
}

.table-message-inner .add-file ul li {
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin-bottom: 15px;
}

.table-message-inner .add-file ul li:last-of-type {
  margin-bottom: 0;
}

.table-message-inner .add-file ul li .span-flex {
  display: flex;
  gap: 5px;
}

.table-message-inner .add-file ul li img {
  width: 30px;
  height: 30px;
  border-radius: 5px;
  margin-right: 10px;
}

.table-message-inner .add-file ul li .file-title {
  font-weight: 600;
}

/* 반응형 */
@media (max-width: 767px) {

  .btn-send-input-inner,
  .btn-send-inner {
    flex-wrap: wrap;
  }

  .send-download {
    text-align: left;
  }

  .table-message-inner {
    flex-direction: column;
  }

  .table-message-inner .table-inner,
  .table-message-inner .message-ex,
  .table.column,
  .table-message-inner .message-file-inner {
    width: 100%;
  }

  .table.column {
    min-width: 100%;
    overflow-x: auto;
    display: table;
  }

  .table.column tr {
    display: table-row;
  }

  .table.column tr td {
    display: table-cell;
  }

  .table-message-inner .table-inner {
    overflow-x: auto;
  }

  .send-result table td {
    width: 130px;
  }

  .table-message-inner .add-file ul li {
    justify-content: space-between;
  }

  .table-message-inner .add-file ul li .file-title {
    margin: 0 10px;
  }

  .btn-send-input-inner .date-month {
    margin-bottom: 10px;
  }
}

@media (max-width: 387px) {
  .btn-send-input-inner .btn-search {
    margin: 10px 0 0 0;
  }

  .btn-send-inner button:last-of-type {
    margin-top: 10px;
  }
}

/* 발송결과 예약내역 */
.send-resreve {
  font-size: 13px;
}

.reserve-inner {
  padding: 20px;
  border-radius: 10px;
  border: 1px solid #ddd;
  text-align: center;
  box-shadow: 0 0 20px #dddddd70;
  font-size: 16px;
  margin: 20px 0;
}

.reserve-inner p {
  margin-bottom: 0;
}

.send-reserve .page-list-inner .btn-inner {
  position: relative;
}

.page-list-inner .btn-inner>button {
  margin-right: 10px;
  float: left;
}

@media (max-width: 387px) {
  .send-resreve .page-list-inner {
    display: flex;
    flex-wrap: wrap;
  }
}

/* 충전 */
.charge {
  font-size: 13px;
}

.charge-pay {
  margin: 20px 0;
}

.charge-pay .title {
  margin-bottom: 20px;
}

.charge-pay span {
  margin-right: 10px;
}

input[type="radio"] {
  vertical-align: middle;
  width: 20px;
  height: 20px;
  border: 1px solid #ddd;
  border-radius: 50%;
  margin-right: 5px;
  appearance: none;
  position: relative;
  background-color: #fff;
}

[type="radio"]:checked {
  border: 1px solid #3599ff !important;
}

input[type="radio"]:before {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background-color: #3599ff;
  top: 3px;
  left: 3px;
  border-radius: 50%;
  display: none;
}

input[type="radio"]:checked:before {
  display: block;
}

.charge-input {
  margin: 20px 0 10px 0;
}

.charge-input input {
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 10px;
}

.charge-input input::placeholder {
  color: #ddd;
}

.charge-input em {
  font-size: 16px;
  margin-left: 10px;
}

.charge-cash button {
  margin-right: 5px;
}

.btn-charge {
  margin-top: 20px;
  width: 286px;
  display: inline-block;
  text-align: center;
}

/* 가상계좌 */
.virtual-account {
  font-size: 13px;
}

.virtual-account .table-message-inner {
  display: block;
}

.virtual-account .table-message-inner .table-inner {
  width: 100%;
}

.charge-message {
  padding: 20px;
  border-radius: 10px;
  border: 1px solid #ddd;
  box-shadow: 0 0 20px #a0a0a039;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 20px 0;
}

.charge-message>* {
  margin-right: 20px;
}

.charge-message span {
  font-size: 16px;
}

.btn-width-286 {
  width: 286px;
  display: block;
  text-align: center;
  margin-right: 10px;
  margin: 10px auto;
}

.btn-width-143 {
  width: 143px;
  display: inline-block;
  text-align: center;
  margin-right: 10px;
  margin: 10px auto;
}

.virtual-account .btn-inner {
  text-align: center;
  display: flex;
  gap: 10px;
  justify-content: center;
}

.virtual-account .btn-inner a {
  margin: 0;
}

/* 충전내용 */
.charge-content {
  font-size: 13px;
}

.charge-content .table-inner tbody td {
  vertical-align: middle;
}

.charge-content .table-inner tbody td.line-height-none {
  line-height: 1.2em;
}

.message .btn-white.btn-receipt {
  font-size: 13px;
  padding: 3px 5px;
}

.charge-content .btn-inner {
  margin: 20px 0;
}

.charge-content .btn-inner button {
  margin-right: 10px;
}

.charge-content table td {
  width: 16%;
}

/* 반응형 */
@media (max-width: 767px) {
  .charge-input input {
    width: calc(100% - 24px);
    display: inline-block;
  }

  .charge-cash .btn-return {
    margin-top: 10px;
  }

  .btn-charge {
    width: 100%;
  }

  .charge-message {
    flex-direction: column;
  }

  .charge-message .input-search {
    margin: 10px 0;
  }

  .charge-message .input-search .search {
    display: flex;
  }

  .charge-message .input-search ul {
    top: 100%;
  }

  .charge-message .input-search button {
    width: 100%;
  }

  .charge-message>* {
    margin-right: 0;
    width: 100%;
    text-align: center;
  }

  .charge-message .search input {
    width: calc(100% - 57px);
  }

  .virtual-account .btn-inner {
    display: flex;
    gap: 10px;
  }

  .virtual-account .btn-inner .btn-width-286 {
    margin-right: 0;
  }

  .charge-content table .td-width-160 {
    width: 18%;
  }

  .charge-content table td {
    width: 0%;
  }

  .message.charge .tabs a {
    margin-bottom: 16px;
    display: inline-block;
  }

  .message.charge .tabs a:nth-of-type(5),
  .message.charge .tabs a:nth-of-type(6) {
    margin-bottom: 0;
  }
}

/* 충전 사용내역 */
.details-of-use {
  font-size: 13px;
}

.detail-charge-list-title {
  margin-top: 20px;
  display: flex;
  gap: 20px;
  align-items: center;
}

.detail-charge-list-title .title {
  font-size: 20px;
}

.detail-charge-list-title .title span {
  font-weight: 400;
  font-size: 16px;
}

.detail-charge-list-title .btn-inner button {
  margin-right: 10px;
}

.detail-charge-date {
  margin: 20px 0;
  display: flex;
  justify-content: space-between;
}

.detail-charge-date .date-inner {
  display: flex;
  gap: 10px;
}

.detail-charge-date .btn-date {
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 10px;
  font-size: 13px;
}

.detail-charge-date .btn-date button {
  background-color: transparent;
  border: none;
  color: #535353;
}

.detail-charge-date .btn-inner button {
  margin-right: 3px;
}

/* 탭버튼 */
.btn-inner.list button {
  border-radius: 10px 10px 0 0;
}

.btn-inner.list button.active {
  border-radius: 10px 10px 0 0;
  background-color: #3599ff;
  border: 1px solid #3599ff;
  color: #fff;
  font-weight: 600;
  border: none;
}

.tabs-content .table-inner.detail {
  display: none;
}

.tabs-content .table-inner.detail.active {
  display: block;
}

/* 틀어진것 수정 테이블 글자 넘치면 ...처리 */
.details-of-use .table td {
  white-space: nowrap;
  overflow: hidden !important;
  text-overflow: ellipsis;
}

/* 탭버튼 */
.tabs-content .table tbody {
  display: table-row-group;
}

.tabs-content .table thead {
  display: table-row-group;
}

.tabs-content .table tbody tr {
  display: table-row;
}

.tabs-content .table th,
.tabs-content .table td {
  width: auto;
  vertical-align: middle;
}

/* 충전 세금계산서/현금영수증 */
/* 탭버튼 */
.charge-tax .tabs-content .desc {
  display: none;
}

.charge-tax .tabs-content .desc.active {
  display: block;
}

.charge-tax .btn-inner.tax button.active {
  border: 1px solid #3599ff;
  background-color: #3599ff;
  color: #fff;
  font-weight: 600;
}

/* 탭버튼 */
.charge-tax .tabs-inner .btn-inner.tax {
  margin: 20px auto;

  text-align: center;
}

.charge-tax .tabs-inner .btn-inner.tax button {
  margin-right: 10px;
}

.charge-tax .table tr td:first-of-type {
  width: 30%;
  background-color: #eee;
}

.charge-tax .table tr td:last-of-type {
  width: 70%;
}

.charge-tax .table tr td.td-flex {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}

.charge-tax .table tr td.td-flex button {
  padding: 3px 5px;
  font-size: 12px;
}

.charge-tax .table tr td label:first-of-type {
  margin-right: 10px;
}

.charge-tax .btn-applicate,
.charge-tax .btn-confirm {
  width: 286px;
  display: block;
  margin: 20px auto;
}

.charge-tax input[type="number"],
.charge-tax input[type="tel"] {
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 10px;
}

.message .tabs-content .guide-inner .title {
  font-size: 20px;
}

.message .tabs-content ul.message-guide-ul {
  display: block;
  font-size: 13px;
  position: static;
  text-align: left;
  overflow-y: auto;
}

.message .tabs-content ul.message-guide-ul li {
  padding: 0 0 3px 10px;
}

.message .tabs-content ul.message-guide-ul li.li-title {
  padding: 0;
  padding-bottom: 3px;
}

.message .tabs-content ul.message-guide-ul li:hover {
  background-color: transparent;
}

.charge-tax .radio-inner {
  margin-top: 20px;
  font-size: 16px;
  color: #3599ff;
}

.charge-tax .radio-inner label {
  margin-right: 10px;
}

/* 충전 요금안내 */
.charge-guide .table {
  margin: 20px 0;
}

.charge-guide .table tbody {
  overflow-y: auto;
}

/* 환불신청 */
.charge-refund .select {
  position: relative;
  display: inline-block;
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  background-color: #fff;
  margin-right: 5px;
}

.charge-refund .list-style {
  position: absolute;
  top: 100%;
  left: 0;
  width: inherit;
  z-index: 30;
  display: none;
  max-height: 100px;
  width: 100%;
  overflow-y: scroll;
}

/* 탭버튼 */
.charge-refund .list-style.active {
  display: block;
}

/* 탭버튼 */
.charge-refund input[type="text"],
.charge-refund input[type="number"],
.charge-refund input[type="tel"],
.charge-refund input[type="password"] {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  background-color: #fff;
}

.charge-refund input[type="text"] {
  width: 286px;
}

.charge-refund .input-refund {
  margin-right: 5px;
  display: inline-block;
  /* display: flex; */
  /* align-items: flex-end; */
}

.charge-refund .input-refund input,
.charge-refund .input-refund em {
  margin-left: 5px;
}

.charge-refund .input-refund input {
  margin: 0;
}

/* .charge-refund .input-refund input {
    width: 80%;
} */
.charge-refund .column td:first-of-type {
  vertical-align: middle;
  background-color: #eee;
}

.charge-refund .title {
  margin-top: 20px;
  margin-bottom: 10px;
}

.charge-refund input[type="file"] {
  display: block;
}

table tbody td.bg-white {
  background-color: #fff;
}

table td.refund-desc .title {
  font-size: 18px;
  padding: 10px 10px;
  border-radius: 10px;
  background-color: #43a9ac;
  display: inline-block;
  color: #fff;
  font-weight: 400;
}

table.refund th,
table.refund td {
  border: 1px solid #ddd;
}

table.refund tbody tr:last-of-type td {
  border-bottom: 1px solid #ddd !important;
}

table.refund th {
  font-weight: 700;
  font-size: 15px;
  color: rgb(225, 0, 0);
  margin-bottom: 0;
}

table.refund td {
  width: 50%;
}

.refund-small {
  font-weight: 400;
  margin: 10px 0;
  display: block;
}

.refund-small.font {
  margin-bottom: 0;
  margin-left: 5px;
}

.refund-small .mo {
  display: none;
}

small {
  font-size: 13px;
}

.refund-table-02 .mo {
  display: none;
}

/* 사용내역부터 반응형 */
@media (max-width: 767px) {
  .charge-refund .select {
    display: block;
    margin-right: 0;
    margin-bottom: 10px;
  }

  .charge-refund .select .text-inner {
    display: flex;
    justify-content: space-between;
  }

  .detail-charge-list-title,
  .detail-charge-date {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .detail-charge-date {
    margin-top: 10px;
  }

  .detail-charge-date>div {
    margin-bottom: 10px;
  }

  .charge-refund-table tr {
    /* display: flex; */
    /* flex-direction: column; */
    width: 100%;
  }

  .charge-refund-table tr td,
  .charge-refund-table .table.refund tr,
  .charge-refund-table table.column td:last-of-type,
  .charge-refund-table .table th,
  .refund-small {
    width: 100%;
  }

  .refund-small .mo {
    display: block;
  }

  .charge-refund .btn-next {
    width: 100%;
  }

  .refund-table-02 .mo {
    display: block;
  }

  .refund-table-02 .td-flex {
    display: flex;
    flex-direction: column;
  }

  .charge-refund input[type="text"] {
    width: 70%;
  }

  .charge-refund .btn-blue {
    width: 100%;
  }

  .charge-guide table {
    width: 100%;
    min-width: 100%;
  }
}

@media (max-width: 394px) {

  .detail-charge-date .btn-inner button:nth-of-type(6),
  .detail-charge-date .btn-inner button:nth-of-type(7) {
    margin-top: 10px;
  }
}

/* 내정보 */
/* 내정보관리 비밀번호 입력 */
.password-inner {
  padding: 20px;
  border-radius: 10px;
  border: 1px solid #ddd;
  width: 400px;
  margin: 20px auto;
}

.password-inner input {
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 10px;
  width: 100%;
  margin-bottom: 10px;
}

.password-inner input::placeholder {
  color: #ddd;
}

.password-inner .btn-inner {
  width: 100%;
  display: flex;
  gap: 10px;
}

.password-inner .btn-inner button,
.password-inner .btn-inner a {
  width: 50%;
  text-align: center;
}

/* 내정보관리 정보변경 */
.myinfo-change input[type="text"],
.myinfo-change input[type="number"],
.myinfo-change input[type="tel"],
.myinfo-change input[type="email"] {
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 10px;
}

.btn-admin-change {
  padding: 3px 5px !important;
  margin-left: 5px;
}

.adress-detail input {
  margin-top: 10px;
  text-align: left;
}

.adress-detail input:last-of-type,
.adress-btn-inner .btn-adress {
  margin-left: 5px;
  text-align: center;
}

.adress-detail input:last-of-type {
  text-align: left;
}

.myinfo-change .table tbody td:first-of-type {
  background-color: #eee;
  vertical-align: middle;
}

.myinfo-change-table {
  margin-top: 20px;
}

.myinfo-change .btn-inner {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-top: 20px;
}

.myinfo-change .btn-width-286 {
  margin: 0;
}

.myinfo-change br.mo {
  display: none;
}

/* 내정보 기업회원전환 */
.my-info-corp-conversion label {
  margin-right: 10px;
}

.my-info-corp-conversion input[type="text"],
.my-info-corp-conversion input[type="number"],
.my-info-corp-conversion input[type="tel"],
.my-info-corp-conversion input[type="email"],
.email-adress .select {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  background-color: #fff;
}

.btn-bussiness-num {
  margin-left: 5px;
}

.column td.td-flex.email-adress:last-of-type {
  display: flex;
  width: 100%;
  align-items: center;
}

.td-flex.email-adress em {
  margin: 0 5px;
}

.email-adress .select {
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
}

.email-adress .list-style {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: none;
}

.email-adress .select .list-style.active {
  display: block;
}

.my-info-corp-conversion .column td:first-of-type {
  vertical-align: middle;
  background-color: #eee;
}

@media (max-width: 767px) {
  .td-flex.email-adress em {
    text-align: center;
    display: block;
  }

  /* .password-inner,
  .charge-tax .table tr td:first-of-type,
  .charge-tax .tabs-content .table tbody,
  .myinfo-change .table tbody td:first-of-type,
  .myinfo-change .table tbody td:last-of-type,
  .my-info-corp-conversion .column td:first-of-type,
  .my-info-corp-conversion .column td:last-of-type {
    width: 100% !important;
  } */
  .password-inner {
    width: 100%;
  }

  /* .charge-tax .tabs-content .table tbody {
    display: block;
  } */
  .column td.td-flex.email-adress:last-of-type {
    flex-direction: column;
  }

  .email-adress .select {
    width: 100%;
  }

  .charge-tax .table tr td:last-of-type {
    width: 100%;
  }

  .charge-tax .tabs-content .table tbody tr,
  .myinfo-change .table tr,
  .my-info-corp-conversion .table tr,
  .myinfo-change-password .table tr {
    width: 100%;
    display: table-row;
  }

  .btn-bussiness-num {
    margin-left: 0px;
    width: 100%;
    margin-top: 5px;
  }

  .charge-tax .input-bussiness-num,
  .adress-detail input {
    width: 100%;
  }

  .adress-detail {
    display: flex;
    flex-direction: column;
  }

  .adress-detail input:last-of-type {
    margin-left: 0;
  }

  .myinfo-change br.mo {
    display: block;
  }

  .my-info-corp-conversion .column td.td-flex {
    display: flex;
    flex-direction: column;
  }

  .my-info-corp-conversion .column td.td-flex input,
  .my-info-corp-conversion .column td.td-flex .select,
  .my-info-corp-conversion input[type="text"],
  .my-info-corp-conversion input[type="number"],
  .my-info-corp-conversion input[type="tel"],
  .my-info-corp-conversion input[type="email"],
  .my-info-corp-conversion .select,
  .myinfo-change input[type="text"],
  .myinfo-change input[type="number"],
  .myinfo-change input[type="tel"],
  .myinfo-change input[type="email"] {
    width: 100% !important;
    /* width: 100vw; */
  }

  .adress-btn-inner,
  .myinfo-charge-corp-bussiness-inner {
    display: flex;
    flex-direction: column;
  }

  .my-info-corp-conversion .text-inner,
  .email-adress .select .text-inner {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }

  .adress-btn-inner .btn-adress {
    margin: 5px 0 0;
  }

  .charge-tax .btn-applicate,
  .charge-tax .btn-confirm,
  .my-info-corp-conversion .btn-inner button {
    margin: 20px 0;
    width: 100%;
  }

  /* .charge-refund .title-select {
    display: flex;
  } */
  .charge-refund .title-select input {
    width: 100%;
  }

  .myinfo-change .btn-inner.corp-change button,
  .my-info-corp-conversion .btn-inner a,
  .myinfo-change-password .btn-inner button {
    width: 100%;
    margin: 20px 0;
  }

  .btn-dcoument-submit {
    width: 100%;
    margin-top: 10px;
  }
}

/* 내정보 비밀번호 변경 */
.myinfo-change-password input {
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 10px;
  margin-right: 10px;
  width: 100%;
}

.myinfo-change-password label+small {
  margin-top: 10px;
  display: block;
}

.myinfo-change-password .table tr td {
  display: table-cell;
  width: 40%;
}

.myinfo-change-password .table tr td:first-of-type {
  background-color: #eee;
  vertical-align: middle;
}

/* 내정보 발신번호 관리 */
.call-num-title {
  font-weight: 700;
  font-size: 20px;
  margin-top: 20px;
}

.myinfo-calling-number .table th,
.myinfo-calling-number .table td {
  /* width: 20%; */
  vertical-align: middle;
}

.myinfo-calling-number .table th {
  width: 1%;
}

.myinfo-calling-number .table td input[type="text"] {
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 10px;
  text-align: center;
  width: 100%;
}

.myinfo-calling-number .table td .btn-delete {
  padding: 3px 5px;
}

.myinfo-calling-number .btn-inner {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-top: 20px;
}

.myinfo-calling-number .btn-inner a {
  margin: 0;
}

/* 내정보 발신번호관리 > 발신번호 등록 */
.myinfo-register-new-calling-number .btn-inner.has-margin {
  margin: 30px 0;
  text-align: right;
}

.myinfo-register-new-calling-number .btn-blue.btn-modal,
.myinfo-register-new-calling-number .btn-blue.btn-download {
  padding: 3px 5px;
  font-size: 12px;
}

.myinfo-register-new-calling-number .table ul li {
  margin-bottom: 5px;
}

.myinfo-register-new-calling-number .table ul li label {
  margin-right: 5px;
  margin-top: 2px
}

.myinfo-register-new-calling-number input[type="text"],
.myinfo-register-new-calling-number input[type="number"],
.myinfo-register-new-calling-number input[type="tel"] {
  padding: 10px;
  border-radius: 10px;
  margin-left: 10px;
  border: 1px solid #ddd;
}

.myinfo-register-new-calling-number input[type="number"],
.myinfo-register-new-calling-number input[type="tel"] {
  margin-top: 5px;
}

.myinfo-register-new-calling-number input[type="file"] {
  margin-left: 10px;
}

.myinfo-register-new-calling-number .td-flex {
  /* display: flex; */
  /* gap: 10px; */
  width: 100% !important;
}

.myinfo-register-new-calling-number .td-flex .register-info-inner {
  display: flex;
  align-items: center;
}

.myinfo-register-new-calling-number .td-flex .register-info-inner span {
  width: 40px;
}

/* 모달 */
.modal-inner {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  border: 1px solid #ddd;
  padding: 20px;
  border-radius: 10px;
  z-index: 700;
  display: none;

  width: 90%;
  max-width: 900px;
  max-height: 90vh;
  overflow-y: auto;
}

.modal-inner .content {
  position: relative;
  padding-right: 30px;
}

.modal-inner em {
  position: absolute;
  right: 6px;
  top: 8px;
  cursor: pointer;
}

.modal-inner img {
  width: 400px;
  height: 600px;
  margin-top: 70px;
}

@media (max-width: 767px) {

  .myinfo-register-new-calling-number table tr td,
  .myinfo-change-password tr td {
    display: flex;
    flex-direction: column;
    width: 30%;
  }

  .myinfo-register-new-calling-number table tr td:last-of-type,
  .myinfo-change-password tr td:last-of-type {
    width: 100%;
  }

  .myinfo-register-new-calling-number .btn-inner button {
    margin: 20px 0;
    width: 100%;
  }

  .modal-inner {
    width: 95%;
    max-width: 95%;
    max-height: 90vh;
    padding: 15px;
  }
}

/* 내정보 발신번호관리 발신번호등록안내 */
.table.guide thead,
table.guide tbody tr {
  display: table-row;
}

.table.guide tr td {
  padding: 10px !important;
  font-size: 15px;
}

tr td.sub-title {
  text-align: center !important;
  /* vertical-align: middle; */
  font-weight: 700;
  background-color: #eee;
}

.guide-btn-inner .download {
  padding: 3px 5px;
  font-size: 12px;
}

.guide-btn-inner .guide-desc {
  margin-top: 10px;
}

.guide-btn-inner .guide-desc span {
  margin-right: 10px;
  font-size: 18px;
  font-weight: 700;
  vertical-align: middle;
}

.myinfo-register-new-calling-number.guide .tabs-inner {
  margin-top: 40px;
}

.myinfo-register-new-calling-number.guide .tabs-content {
  margin-top: 20px;
}

.guide-desc-sms .number {
  background-color: #29b1ff;
  border-radius: 50%;
  padding: 2px 9px;
  font-weight: 600;
  color: #fff;
  margin-right: 10px;
  vertical-align: middle;
  width: 26px;
  height: 26px;
}

.guide-desc-sms .img {
  border: 1px solid #ddd;
  box-shadow: 0 0 20px #84848436;
  border-radius: 10px;
  margin-right: 10px;
  margin-bottom: 15px;
  margin-top: 20px;
}

.guide-desc-sms .img img {
  width: 100%;
}

.guide-desc-sms .desc-num-inner {
  display: flex;
}

.guide-desc-sms .span-desc {
  font-size: 15px;
  margin-bottom: 40px;
}

.myinfo-register-new-calling-number.guide .btn-blue.btn-modal {
  font-size: 12px;
}

.myinfo-register-new-calling-number.guide .btn-inner.list,
.details-of-use .btn-inner.list {
  display: flex;
}

.details-of-use .btn-inner.list button {
  width: 100%;
}

/* 080 번호 관리 */
.number-080-guide .title {
  font-size: 18px;
}

.number-080-guide {
  margin-bottom: 20px;
}

.checkbox-label.agree {
  font-size: 20px;
  font-weight: 500;
  color: #29b1ff;
  display: block;
  text-align: center;
  margin: 20px 0;
}

.column.number-080 td:last-of-type,
.column.number-080 td {
  width: auto;
  vertical-align: middle;
  font-size: 13px;
}

.column.number-080 td input {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  text-align: center;
  margin: 0 auto;
  display: block;
}

.column.number-080 td input::placeholder {
  color: #ddd;
}

@media (max-width: 767px) {
  .column.number-080 td input {
    width: 100%;
  }

  .number-080 .btn-blue {
    width: 100%;
  }

  .column.number-080 tr {
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  .column.number-080 tr td {
    width: 100%;
  }
}

/* 회원가입 */
.join-inner {
  text-align: center;
}

.join-flex button {
  border: 1px solid #29b1ff;
  border-radius: 10px;
  font-size: 15px;
  display: inline-block;
  padding: 60px;
  width: 230px;
  margin-right: 40px;
  margin-top: 40px;
  box-shadow: 0 0 20px #9e9e9e44;
  background-color: #fff;
}

.join-flex button:last-of-type {
  margin-right: 0;
}

.join-flex button:focus {
  background-color: #90d6ff;
  color: #fff;
}

.join-flex button:focus p {
  color: #fff;
}

.join-flex button p {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 0;
  margin-top: 20px;
  color: #29b1ff;
}

a.go-login {
  color: #29b1ff;
  cursor: pointer;
  font-weight: 600;
}

a.go-login:hover {
  text-decoration: underline;
}

.join .btn-inner {
  margin-top: 80px;
}

.join-select:last-of-type {
  position: relative;
}

.join-desc-corp {
  padding: 20px 10px;
  border-radius: 10px;
  /* border: 1px solid #2c76ff; */
  background-color: #29b1ff;
  color: #fff;
  position: absolute;
  bottom: -20%;
  left: 50%;
  transform: translate(-20%, 0);
  width: 400px;
  opacity: 0;
  transition: 0.3s;
}

.join-select:last-of-type:hover .join-desc-corp {
  opacity: 1;
}

.join-desc-corp span {
  color: rgb(255, 251, 0);
  font-weight: 600px;
}

.join-desc-corp::before {
  content: "";
  bottom: 100%;
  border-top: 0px solid transparent;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 25px solid #29b1ff;
  position: absolute;
  top: -10px;
  left: 40px;
}

/* 회원동의 */
.join-inner.agree h1 {
  margin-bottom: 40px;
}

.join-agree {
  border-radius: 10px;
  background-color: #eee;
  border: 1px solid #ddd;
  padding: 20px;
  margin-bottom: 20px;
  text-align: left;
}

.join-agree h3 {
  font-size: 20px;
  font-weight: 700;
}

.join-agree .agree-inner-scroll {
  padding: 20px;
  border-radius: 10px;
  background-color: #fff;
  border: 1px solid #ddd;
  margin-top: 20px;
  min-height: 100px;
  overflow-y: scroll;
}

.join-agree .agree-inner-scroll.warn {
  text-align: center;
}

.join-agree .agree-inner-scroll.warn p:first-of-type {
  font-size: 24px;
  font-weight: 800;
}

.join-inner.agree ul {
  text-align: left;
}

.join-inner.agree .btn-inner {
  display: flex;
  gap: 20px;
  justify-content: center;
}

.join-inner.agree .btn-width-286 {
  margin: 0;
}

/* 회원가입 정보입력 */
/* 탭버튼 */
.join .tabs-content>div {
  display: none;
}

.join .tabs-content>div.active {
  display: block;
}

/* 구분 */
.join .tabs-inner {
  padding: 80px 0 0;
}

.join-input {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
  align-items: center;
}

.join-input span {
  width: 140px;
  margin-right: 20px;
  vertical-align: middle;
  font-weight: 700;
}

.join-input-inner input {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
}

.join-input .join-input-inner input::placeholder {
  color: #ddd;
}

.join-label-input label {
  margin-right: 10px;
}

.join-input button {
  margin-left: 5px;
}

.join .select .text-inner {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  font-weight: 400;
  margin-right: 0;
}

.join .select .text-inner span {
  font-weight: 400;
}

.join-input-inner.email .select {
  position: relative;
}

.join-input-inner.email .select .text-inner+ul {
  position: absolute;
  left: 0;
  top: 127%;
  width: 100%;
  display: none;
  z-index: 30;
}

.join-input-inner.email .select .text-inner+ul.active {
  display: block;
}

.join-input-inner.email {
  display: flex;
  gap: 10px;
  align-items: center;
}

.join-input-adress {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-left: 20px;
}

.join-input-adress input {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
}

.join.info {
  margin-bottom: 80px;
}

/* 회원가입 로그인하기 */
.join.login {
  padding: 80px 0;
  text-align: center;
}

.join-login-inner {
  padding: 30px;
  border: 1px solid #ddd;
  border-radius: 10px;
  display: block;
  margin: 40px auto;
  width: 500px;
  text-align: left;
}

.join-login input {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  width: 100%;
}

.join-login input::placeholder {
  color: #ddd;
}

.join-login-inner .btn-login {
  width: 100%;
}

.find-id-password {
  text-align: center;
}

.find-id-password a:hover {
  text-decoration: underline;
}

@media (max-width: 767px) {
  .join {
    padding: 20px;
  }

  .join-flex button {
    width: 100%;
    margin: 0;
    margin-bottom: 20px;
  }

  .join-desc-corp {
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    bottom: -30%;
  }

  .join .btn-width-286 {
    width: 100%;
  }

  .join-input {
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-content: flex-start;
  }

  .join-input span {
    width: 100%;
    font-weight: 700;
    margin-right: 0;
  }

  .join-input-inner,
  .join-input button {
    width: 100%;
  }

  .join-input button {
    margin: 0;
    margin-top: 20px;
  }

  .join-input-inner input {
    width: 100%;
  }

  .join-input-inner.email {
    width: 100%;
    display: flex;
    flex-direction: column;
  }

  .join .text-inner {
    width: 100%;
    margin: 0;
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
  }

  .join .text-inner span {
    font-weight: 400;
  }

  .join .title-select {
    width: 100%;
  }

  .join-input-inner.email .select .text-inner+ul {
    top: 100%;
  }

  .join-label-input {
    width: 100%;
  }

  .join .adress-btn-inner .btn-adress {
    padding-top: 10px;
  }

  .join-login-inner {
    width: 100%;
  }

  .join.login {
    padding: 80px 20px;
  }
}

/* popup 팝업 */
.row.popup {
  padding: 20px !important;
}

.row.popup .title {
  font-weight: 600;
}

/* .row.popup hr {
    padding: 10px 0 10px;
} */
.btn-close-modal>.fa-x {
  display: inline-block;
  width: 30px;
  height: 30px;
  color: black;
  cursor: pointer;
}

.popup-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.row.popup .btn-inner {
  padding: 10px;
  padding-left: 0;
  padding-right: 0;
}

.row.popup .btn-inner button,
.row.popup .btn-inner a,
.row.popup .btn-inner.check label {
  display: inline-block;
  text-align: center;
  width: 286px;
}

#popup_add-new-call-num .btn-inner>*,
#popup_add-new-call-num-my .btn-inner>*,
#popup_adress .btn-inner>* {
  width: 100%;
}

#popup_add-new-call-num .btn-inner-half>*,
#popup_add-new-call-num-my .btn-inner-half>*,
#popup_adress .btn-inner-half>* {
  width: 45%;
}

.row.popup .btn-inner .btn-search,
.row.popup .btn-inner .btn-return {
  width: auto !important;
}

.row.popup .btn-inner .btn-popup-tab {
  margin-right: 10px;
}

.row.popup .btn-inner .btn-popup-tab:last-of-type {
  margin-right: 0;
}

.row.popup .btn-inner:last-of-type {
  text-align: right;
}

.row.popup .btn-inner-half {
  text-align: center;
}

.row.popup .table.row-table {
  margin-top: 20px;
}

.row.popup .table .blue {
  cursor: pointer;
}

/* .row.popup .btn-blue {
  font-size: 16px;
} */
.row.popup .btn-popup-tab.active {
  border: 1px solid #2c76ff;
  background-color: #2c76ff;
  color: #fff;
  font-weight: 600;
}

/* 탭버튼 */
#popup_message-call .tabs-inner .tabs-content .desc {
  display: none;
}

#popup_message-call .tabs-inner .tabs-content .desc.active {
  display: block;
}

/* 탭버튼 안의 탭버튼 */
#popup_message-call .tab-depth2-desc {
  display: none;
}

#popup_message-call .tab-depth2-desc.active {
  display: block;
}

#popup_message-call .btn-folder {
  display: inline-block;
  font-size: 13px;
  color: #5c5c5c;
}

#popup_message-call .btn-folder span {
  vertical-align: middle;
  margin-top: 3px;
}

.tab-depth2-btn-inner {
  display: flex;
  justify-content: space-between;
}

/* 이중탭 리스트 */
.tab-btn-depth2-left {
  display: flex;
  gap: 10px;
}

.tab-depth2-desc .tabs-depth-list {
  position: relative;
  font-size: 13px;
  color: #5c5c5c;
}

.tab-depth2-desc .tabs-depth-list .list-style {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  z-index: 30;
  width: 100%;
}

.tab-depth2-desc .tabs-depth-list .list-style.active {
  display: block;
}

.tabs-depth2 {
  width: 100%;
  display: flex;
}

.tabs-depth2 .btn-depth2-tab {
  width: 33.333%;
  margin: 0;
}

.has-margin-right {
  margin-right: 10px;
}

#popup_message-call .memo-list {
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 20px;
}

#popup_message-call .memo-list p {
  border-bottom: 1px solid #ddd;
  margin: 0;
  padding: 10px 0;
}

#popup_message-call .memo-list p:last-of-type {
  border-bottom: 0;
  margin: 0;
  padding-top: 10px;
}

#popup_message-call .table-overflow-scroll {
  height: 300px;
  overflow-y: auto;
}

#popup_message-call .tabs-depth1 {
  display: flex;
}

#popup_message-call .tabs-depth1>button,
#popup_message-call .tabs-depth2>button {
  width: 100%;
}

/* 팝업 신규 발신번호 등록 */
.add-new-call-num-inner {
  margin-top: 40px;
}

.add-new-call-num-inner .title {
  margin: 20px 0;
}

.add-new-call-num-input-inner {
  padding: 20px;
  border: 1px solid #ddd;
  border-radius: 10px;
}

.add-new-call-num-input-inner .input-inner {
  margin-bottom: 20px;
}

.add-new-call-num-input-inner .input-inner input {
  border: 1px solid #ddd;
  width: 100%;
  padding: 10px;
  border-radius: 10px;
}

.add-new-call-num-input-inner p {
  margin-bottom: 10px;
}

.add-new-call-num-input-inner .select,
.add-new-call-num-input-inner input {
  cursor: pointer;
}

.add-new-call-num-input-inner .select {
  border: 1px solid #ddd;
  border-radius: 10px;
  background-color: #fff;
  padding: 10px;
  position: relative;
}

.add-new-call-num-input-inner .select .text-inner {
  display: flex;
  justify-content: space-between;
}

.add-new-call-num-input-inner .select .list-style {
  position: absolute;
  top: 100%;
  left: 0;
  font-size: 15px;
  display: none;
  width: 100%;
  z-index: 70;
}

.add-new-call-num-input-inner .select .list-style.active {
  display: block;
}

.btn-popup-add-num {
  text-align: center !important;
}

.btn-popup-add-num button {
  margin-right: 10px;
}

.add-new-call-num-input-inner.my {
  text-align: center;
}

.add-new-call-num-input-inner.my .btn-phone {
  margin-top: 40px;
}

.mobile-corrier-inner,
.mobile-corrier-inner-list {
  text-align: left;
}

.mobile-corrier-inner p,
.add-new-call-num-input-inner.phone p {
  font-weight: 600;
}

.mobile-corrier-inner-list {
  margin-top: 30px;
}

.has-margin-top {
  margin-top: 20px;
}

.add-new-call-num-input-inner.phone {
  text-align: left;
}

.add-new-call-num-input-inner.phone input {
  width: 100%;
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
}

.add-new-call-num-input-inner.corp .btn-conversion {
  margin: 40px 0;
  display: inline-block;
}

/* 팝업 발신번호 선택 */
.popup-select-num th,
.popup-select-num td {
  width: 20%;
  vertical-align: middle;
}

.popup-select-num input[type="text"] {
  width: 100%;
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  text-align: center;
}

#popup_select-call-num h4.title {
  margin-top: 40px;
}

#popup_test-send-or-preview .desc {
  margin: 20px 0;
}

/* 팝업 테스트 발송, 미리보기 */
.test-send-inner {
  display: flex;
  gap: 15px;
}

.test-send-inner .left {
  border: 1px solid #868686;
  padding: 15px;
  min-height: 500px;
  width: 60%;
}

.test-send-inner .right {
  width: 40%;
  padding: 15px;
}

/* 왼쪽 */
.test-send-inner .num-info {
  border: 1px solid #ddd;
  padding: 10px 20px;
  border-radius: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.test-send-inner .num-info button {
  padding: 3px 5px;
  font-size: 13px;
}

.test-send-inner .message-ex {
  margin-top: 20px;
  display: inline-block;
}

.test-send-inner .message-ex-link {
  color: #29b1ff;
  text-decoration: underline;
}

.test-send-inner .time {
  margin-left: 10px;
  font-size: 13px;
}

/* 오른쪽 */
.test-send-inner .test-num {
  padding: 15px;
  border: 1px solid #ddd;
  border-radius: 10px;
  background-color: #eee;
}

.test-send-inner .test-num strong {
  margin-bottom: 20px;
  display: block;
}

.test-send-inner .test-num .test-num-list {
  padding: 15px;
  border-radius: 10px;
  background-color: #fff;
}

.send-list ul {
  display: flex;
  justify-content: space-between;
  border-bottom: 2px solid rgba(228, 21, 21, 0.425);
  padding-bottom: 3px;
  margin-bottom: 10px;
  margin-top: 20px;
}

/* 팝업 영수증 */
#popup_receipt .table {
  min-width: auto;
  font-size: 13px;
}

#popup_receipt table th,
#popup_receipt table td {
  text-align: center;
  vertical-align: middle;
  font-size: 13px;
  /* width: 20%; */
}

#popup_receipt .td-width-fixed th,
#popup_receipt .td-width-fixed td {
  width: 20% !important;
}

#popup_receipt .table:first-of-type td.sub-title {
  background-color: #eee;
  /* width: auto; */
}

.receipt-confirm {
  font-size: 24px;
  font-weight: 600;
}

.receipt-inner small {
  display: block;
}

.receipt-inner h3.title {
  margin-top: 30px;
}

.receipt-corp {
  font-size: 22px;
}

.btn-print {
  margin-top: 30px;
}

/* 팝업 수신거부번호 등록 */
#popup_receive-reject .enter-number {
  border-radius: 10px;
  border: 1px solid #ddd;
  padding: 10px;
  margin: 20px 0;
  width: 100%;
  min-height: 300px;
  overflow-y: auto;
}

#popup_receive-reject .desc {
  margin-top: 20px;
}

/* 팝업 충전확인 */
#popup_charge-confirm .desc {
  margin-top: 20px;
}

#popup_charge-confirm .desc strong {
  font-size: 24px;
}

/* 팝업 중복체크 */
#popup_check .check input {
  display: none;
}

#popup_check .check label {
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 10px;
  margin-right: 10px;
  cursor: pointer;
}

#popup_check .check label:has(input:checked) {
  background-color: #29b1ff;
  color: white;
}

#popup_check .desc {
  margin: 20px 0;
}

#popup_check .check-num {
  display: flex;
  flex-direction: column;
  width: 100%;
}

#popup_check .folder-inner,
#popup_adress .folder-inner,
#popup_group .folder-inner {
  display: flex;
  align-items: center;
  gap: 10px;
}

#popup_adress .folder-inner p,
#popup_check .folder-inner p,
#popup_group .folder-inner p {
  margin-bottom: 0;
}

/* 팝업 주소추가 */
#popup_adress .desc {
  margin: 20px;
}

.popup-adress-input-inner .input-inner {
  width: 100%;
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
}

.popup-adress-input-inner .input-inner input {
  width: 100%;
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
}

.popup-adress-input-inner .input-inner input::placeholder {
  color: #ddd;
}

.popup-adress-input-inner .input-inner .enter-text {
  width: 120px;
  display: inline-block;
}

.popup-adress-input-inner .input-inner .plus,
.popup-adress-input-inner .input-inner .minus {
  width: 30px;
  height: 27px;
  border-radius: 50%;
  background-color: #29b1ff;
  font-weight: 600;
  color: #fff;
  text-align: center;
  line-height: 19px;
  font-size: 17px;
  cursor: pointer;
  border: none;
}

#popup_adress {
  position: relative;
}

.add-address {
  padding: 10px;
}

.add-address.hide {
  padding: 10px;
  display: none;
}

.add-adress-fin {
  width: 35%;
  border-radius: 10px;
  background-color: #333333d2;
  color: #fff;
  font-size: 24px;
  font-weight: 600;
  padding: 20px;
  position: absolute;
  bottom: 200px;
  left: 70%;
  transform: translateX(-50%);
  display: none;
}

.add-adress-fin span {
  font-size: 18px;
  margin-left: 20px;
  font-weight: 400;
  display: inline-block;
  vertical-align: baseline;
}

.add-adress-fin i {
  /* padding: 20px; */
  width: 40px;
  line-height: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #29b1ff;
  display: inline-block;
}

.adress-select-inner {
  display: flex;
  gap: 10px;
}

.adress-select-inner .group-list {
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 10px;
  position: relative;
  cursor: pointer;
}

.adress-select-inner .group-list .text-inner {
  display: flex;
  justify-content: space-between;
}

.adress-select-inner .group-list .list-style {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: none;
  height: 200px;
  overflow-y: auto;
}

.adress-select-inner .group-list .list-style.active {
  display: block;
}

.new-group-input {
  padding: 10px;
  margin-top: 20px;
  display: block;
  border: 1px solid #ddd;
  border-radius: 10px;
  display: none;
}

.new-group-input.active {
  display: block;
}

.new-group-input::placeholder {
  color: #ddd;
}

/* 팝업 그룹관리 */
#popup_group .desc {
  margin: 20px 0;
}

.new-group-input.group {
  display: block;
  width: 100%;
}

#popup_group .group-btn-inner>button.active {
  background-color: #29b1ff;
  color: #fff;
}

#popup_group .tabs-content .desc {
  display: none;
}

#popup_group .tabs-content .desc.active {
  display: block;
}

.adress-select-inner .group-list.popup-group {
  width: 100%;
}

.group-btn-inner>button {
  margin-right: 10px;
}

.btn-inner.group-inner {
  display: block;
}

/* 팝업 반응형 */
@media (max-width: 767px) {
  .tab-depth2-btn-inner {
    flex-direction: column;
  }

  #popup_message-call .btn-folder {
    width: 93px;
  }

  .test-send-inner {
    flex-direction: column;
  }

  .test-send-inner .left,
  .test-send-inner .right {
    width: 100%;
  }

  .test-send-inner .right {
    padding: 0;
  }

  .row.popup .btn-inner {
    display: flex;
    width: 100%;
  }

  .row.popup .btn-inner>* {
    width: 100%;
  }

  #popup_select-call-num .btn-inner>* {
    text-align: center;
  }

  #popup_receipt .btn-print {
    width: 100%;
  }
}

@media (max-width: 430px) {

  .row.popup .tabs-depth2 button,
  .row.popup .tabs-depth1 button {
    width: 50%;
    margin-bottom: 10px;
  }

  .row.popup .btn-inner {
    display: flex;
    /* gap: 10px; */
    flex-wrap: wrap;
  }

  .row.popup .btn-inner .btn-popup-tab {
    margin-right: 0;
  }

  .row.popup .input-search button,
  .input-search .btn-return {
    margin: 0;
    margin-bottom: 10px;
    display: inline-block;
  }

  .tab-depth2-btn-inner>*,
  .tab-depth2-btn-inner .input-search>* {
    margin-bottom: 10px;
  }

  .row.popup .btn-inner>*:first-of-type {
    margin-bottom: 10px;
  }
}

.sort {
  cursor: pointer
}

.btn-inner .unavailable {
  display: none !important
}

.licenseView {
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 10px;
  background-color: #fff;
  margin-bottom: 10px;
}

.licenseActive {
  background: dimgray;
}

.btn-message {
  background-color: #4fa6ff;
  color: #fff;
}

.btn-message:hover {
  background-color: rgb(22, 133, 245);
  color: #fff;
}

.reject-reason-box {
  background: #fff6f6;
  border: 1px solid #e00;
  padding: 10px;
  margin-bottom: 15px;
  border-radius: 6px;
}

.reject-reason-box p {
  margin: 0 0 5px;
  font-weight: bold;
  color: #d00;
}

.reject-reason-box ul {
  margin: 0;
  padding-left: 15px;
}

.reject-reason-box li {
  font-size: 13px;
  color: #444;
}

.variable .dropdown-menu li {
  padding: 8px 12px;
  cursor: pointer;
}

.variable .dropdown-menu li:hover {
  background-color: #eee;
}

.receiver-table {
  table-layout: fixed;
  width: 100%;
}

.receiver-table th,
.receiver-table td {
  word-break: break-word;
  text-align: center;
  padding: 5px 7px !important;
}

.requiredFile .files {
  display: none;
}

.rejected input[type="text"] {
  color: red;
}

.rejected input[type="tel"] {
  color: red;
}

.rejected td {
  color: red;
}

.cash_receipt input {
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 10px;
}

.message-priview img {
  max-width: inherit;
}

.message-priview .images {
  display: grid;
  max-width: 85%;
  height: auto;
  padding: 2px;
}

/* ✅ 스크롤은 wrapper가 담당 (tbody block 금지) */
.kakao-table-wrap {
  width: 100%;
  overflow: auto;
  /* 가로/세로 스크롤 */
  max-height: 520px;
  /* 필요 없으면 제거 */
  border: 1px solid #ddd;
  background: #fff;
}

/* 전역: table thead, table tbody tr { display:table } 를 막기 */
.kakao-table--fixed thead {
  display: table-header-group !important;
}

.kakao-table--fixed tbody {
  display: table-row-group !important;
}

.kakao-table--fixed tr {
  display: table-row !important;
}

.kakao-table--fixed th,
.kakao-table--fixed td {
  display: table-cell !important;
}

/* ✅ 공통 셀 스타일 */
.kakao-table--fixed th,
.kakao-table--fixed td {
  border: 1px solid #e5e5e5;
  padding: 10px 10px !important;
  /* 전역 table tbody tr td padding:10 !important 충돌 대응 */
  font-size: 13px;
  text-align: center;
  vertical-align: middle;
  box-sizing: border-box;
  white-space: nowrap;
  background: #fff;
}

/* ✅ 헤더 스타일 + sticky */
.kakao-table--fixed th {
  background: #f7f7f7;
  font-weight: 600;
  position: sticky;
  top: 0;
  z-index: 2;
}

/* .kakao-table--fixed td:nth-child(4),
.kakao-table--fixed td:nth-child(5),
.kakao-table--fixed td:nth-child(6){
  text-align: left;
  white-space: normal;
  word-break: break-all;
} */

.kakao-table--fixed .empty {
  text-align: center;
  padding: 20px 0 !important;
  color: #888;
  background: #fff;
}

.kko_tmpl_applied {
  color: #000;
}
.kko_tmpl_requested {
  color: #000;
}
.kko_tmpl_checking {
  color: #000;
}
.kko_tmpl_approved {
  color: #29b1ff;
}
.kko_tmpl_rejected {
  color: red;
  cursor: pointer;
}
