@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
  v2.0 | 20110126
  License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

button {
  all: unset;
}

@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-1Thin.woff") format("woff");
  font-weight: 100;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-2ExtraLight.woff") format("woff");
  font-weight: 400;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-3Light.woff") format("woff");
  font-weight: 300;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-4Regular.woff") format("woff");
  font-weight: 400;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-5Medium.woff") format("woff");
  font-weight: 500;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-6Bold.woff") format("woff");
  font-weight: 600;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-7ExtraBold.woff") format("woff");
  font-weight: 700;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-8Heavy.woff") format("woff");
  font-weight: 800;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "S-Core Dream";
  src: url("../font/S-CoreDream-9Black.woff") format("woff");
  font-weight: 900;
  font-display: swap;
  ascent-override: 90%;
  descent-override: 10%;
  line-gap-override: 0%;
}
.info-pop {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  vertical-align: middle;
}
.info-pop_btn {
  cursor: pointer;
  flex-shrink: 0;
}
@media (min-width: 1200px) {
  .info-pop_btn--ph-start.info-pop_btn--pv-below ~ .info-pop_panel.is-open {
    left: 0;
    right: auto;
    top: 100%;
    bottom: auto;
    margin-top: 0.5rem;
    transform: none;
  }
  .info-pop_btn--ph-center.info-pop_btn--pv-below ~ .info-pop_panel.is-open {
    left: 50%;
    right: auto;
    top: 100%;
    bottom: auto;
    margin-top: 0.5rem;
    transform: translateX(-50%);
  }
  .info-pop_btn--ph-end.info-pop_btn--pv-below ~ .info-pop_panel.is-open {
    left: auto;
    right: 0;
    top: 100%;
    bottom: auto;
    margin-top: 0.5rem;
    transform: none;
  }
  .info-pop_btn--ph-start.info-pop_btn--pv-middle ~ .info-pop_panel.is-open {
    left: 0;
    right: auto;
    top: 50%;
    bottom: auto;
    margin-top: 0;
    transform: translateY(-50%);
  }
  .info-pop_btn--ph-center.info-pop_btn--pv-middle ~ .info-pop_panel.is-open {
    left: 50%;
    right: auto;
    top: 50%;
    bottom: auto;
    margin-top: 0;
    transform: translate(-50%, -50%);
  }
  .info-pop_btn--ph-end.info-pop_btn--pv-middle ~ .info-pop_panel.is-open {
    left: auto;
    right: 0;
    top: 50%;
    bottom: auto;
    margin-top: 0;
    transform: translateY(-50%);
  }
  .info-pop_btn--ph-start.info-pop_btn--pv-above ~ .info-pop_panel.is-open {
    left: 0;
    right: auto;
    top: auto;
    bottom: calc(100% + 0.5rem);
    margin-top: 0;
    transform: none;
  }
  .info-pop_btn--ph-center.info-pop_btn--pv-above ~ .info-pop_panel.is-open {
    left: 50%;
    right: auto;
    top: auto;
    bottom: calc(100% + 0.5rem);
    margin-top: 0;
    transform: translateX(-50%);
  }
  .info-pop_btn--ph-end.info-pop_btn--pv-above ~ .info-pop_panel.is-open {
    left: auto;
    right: 0;
    top: auto;
    bottom: calc(100% + 0.5rem);
    margin-top: 0;
    transform: none;
  }
}
.info-pop_panel {
  display: none;
  z-index: 100;
  box-sizing: border-box;
  padding: 0.5rem;
  background: #D1C4E9;
  border-radius: 0.25rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  color: #000;
}
.info-pop_panel.is-open {
  display: block;
}
.info-pop_panel h6 {
  font-size: 0.75rem;
  font-weight: 500;
}
.info-pop_panel .panel-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.25rem;
}
.info-pop_panel p {
  font-size: 0.75rem;
}

@media (max-width: 1199px) {
  .info-pop_panel.is-open {
    position: fixed;
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    max-width: none;
    margin-left: 0;
    box-sizing: border-box;
    transform: none;
  }
}
@media (min-width: 1200px) {
  .info-pop_panel.is-open {
    position: absolute;
    width: max-content;
    min-width: 12rem;
    max-width: min(24rem, 100vw);
  }
}
.playground {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: flex-start;
  padding: 1rem;
  min-height: 10rem;
  border: 1px dashed #ccc;
  margin: 0 0 1rem;
  height: 100vh;
}
.playground__hint {
  width: 100%;
  font-size: 0.75rem;
  color: #666;
  margin: 0;
}

.pos-btn {
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  cursor: pointer;
  border: 1px solid #bdbdbd;
  border-radius: 0.25rem;
  background: #fff;
}
.pos-btn.is-active {
  background: #ede7f6;
  border-color: #8a64e6;
}

.min-w-40 {
  min-width: 40px !important;
}

.min-w-60 {
  min-width: 60px !important;
}

.min-w-70 {
  min-width: 70px !important;
}

.min-w-90 {
  min-width: 90px !important;
}

.min-w-100 {
  min-width: 100px !important;
}

.min-w-110 {
  min-width: 110px !important;
}

.min-w-130 {
  min-width: 130px !important;
}

.min-w-160 {
  min-width: 160px !important;
}

.min-w-180 {
  min-width: 180px !important;
}

.min-w-270 {
  min-width: 270px !important;
}

.tb:has(thead tr th:nth-child(1).pos-r) tbody tr td:nth-child(1) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(1).pos-l) tbody tr td:nth-child(1) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(2).pos-r) tbody tr td:nth-child(2) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(2).pos-l) tbody tr td:nth-child(2) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(3).pos-r) tbody tr td:nth-child(3) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(3).pos-l) tbody tr td:nth-child(3) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(4).pos-r) tbody tr td:nth-child(4) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(4).pos-l) tbody tr td:nth-child(4) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(5).pos-r) tbody tr td:nth-child(5) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(5).pos-l) tbody tr td:nth-child(5) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(6).pos-r) tbody tr td:nth-child(6) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(6).pos-l) tbody tr td:nth-child(6) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(7).pos-r) tbody tr td:nth-child(7) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(7).pos-l) tbody tr td:nth-child(7) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(8).pos-r) tbody tr td:nth-child(8) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(8).pos-l) tbody tr td:nth-child(8) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(9).pos-r) tbody tr td:nth-child(9) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(9).pos-l) tbody tr td:nth-child(9) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(10).pos-r) tbody tr td:nth-child(10) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(10).pos-l) tbody tr td:nth-child(10) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(11).pos-r) tbody tr td:nth-child(11) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(11).pos-l) tbody tr td:nth-child(11) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(12).pos-r) tbody tr td:nth-child(12) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(12).pos-l) tbody tr td:nth-child(12) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(13).pos-r) tbody tr td:nth-child(13) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(13).pos-l) tbody tr td:nth-child(13) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(14).pos-r) tbody tr td:nth-child(14) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(14).pos-l) tbody tr td:nth-child(14) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(15).pos-r) tbody tr td:nth-child(15) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(15).pos-l) tbody tr td:nth-child(15) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(16).pos-r) tbody tr td:nth-child(16) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(16).pos-l) tbody tr td:nth-child(16) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(17).pos-r) tbody tr td:nth-child(17) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(17).pos-l) tbody tr td:nth-child(17) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(18).pos-r) tbody tr td:nth-child(18) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(18).pos-l) tbody tr td:nth-child(18) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(19).pos-r) tbody tr td:nth-child(19) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(19).pos-l) tbody tr td:nth-child(19) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(20).pos-r) tbody tr td:nth-child(20) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(20).pos-l) tbody tr td:nth-child(20) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(21).pos-r) tbody tr td:nth-child(21) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(21).pos-l) tbody tr td:nth-child(21) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(22).pos-r) tbody tr td:nth-child(22) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(22).pos-l) tbody tr td:nth-child(22) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(23).pos-r) tbody tr td:nth-child(23) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(23).pos-l) tbody tr td:nth-child(23) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(24).pos-r) tbody tr td:nth-child(24) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(24).pos-l) tbody tr td:nth-child(24) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(25).pos-r) tbody tr td:nth-child(25) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(25).pos-l) tbody tr td:nth-child(25) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(26).pos-r) tbody tr td:nth-child(26) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(26).pos-l) tbody tr td:nth-child(26) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(27).pos-r) tbody tr td:nth-child(27) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(27).pos-l) tbody tr td:nth-child(27) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(28).pos-r) tbody tr td:nth-child(28) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(28).pos-l) tbody tr td:nth-child(28) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(29).pos-r) tbody tr td:nth-child(29) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(29).pos-l) tbody tr td:nth-child(29) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(30).pos-r) tbody tr td:nth-child(30) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(30).pos-l) tbody tr td:nth-child(30) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(31).pos-r) tbody tr td:nth-child(31) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(31).pos-l) tbody tr td:nth-child(31) {
  text-align: left;
}

.tb:has(thead tr th:nth-child(32).pos-r) tbody tr td:nth-child(32) {
  text-align: right;
}

.tb:has(thead tr th:nth-child(32).pos-l) tbody tr td:nth-child(32) {
  text-align: left;
}

.tb.enterprise th,
.tb.enterprise td {
  height: 44px !important;
}
.tb.enterprise th {
  padding: 0.5rem 0;
}
.tb.enterprise td {
  padding: 0.375rem 0.625rem !important;
}

.tb-sticky-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.tb-sticky-wrap .tb {
  display: table;
  min-width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}
.tb-sticky-wrap .tb thead {
  position: static;
}
.tb-sticky-wrap .tb th,
.tb-sticky-wrap .tb td,
.tb-sticky-wrap .tb th *,
.tb-sticky-wrap .tb td * {
  transition: none;
}
.tb-sticky-wrap .tb th,
.tb-sticky-wrap .tb td {
  border: 0;
  border-bottom: 1px solid #EEEEEE;
  border-left: 1px solid #EEEEEE;
}
.tb-sticky-wrap .tb th:last-child,
.tb-sticky-wrap .tb td:last-child {
  border-right: 1px solid #EEEEEE;
}
.tb-sticky-wrap .tb thead tr:first-child th {
  border-top: 1px solid #EEEEEE;
}
.tb-sticky-wrap .tb tbody {
  display: table-row-group;
}
.tb-sticky-wrap .tb tbody tr {
  display: table-row;
  padding: 0;
  border: 0;
}
.tb-sticky-wrap .tb tbody td {
  color: #2C2C2C;
}
.tb-sticky-wrap .tb th.sticky,
.tb-sticky-wrap .tb td.sticky {
  position: sticky;
  z-index: 1;
  white-space: nowrap;
  backface-visibility: hidden;
}
.tb-sticky-wrap .tb th.sticky {
  z-index: 2;
  background-color: #f6f6f6;
}
.tb-sticky-wrap .tb td.sticky {
  background-color: #ffffff;
}
.tb-sticky-wrap .tb th.sticky-end::after,
.tb-sticky-wrap .tb td.sticky-end::after {
  content: "";
  position: absolute;
  top: 0;
  right: -6px;
  bottom: 0;
  width: 6px;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.06), transparent);
  pointer-events: none;
}

.tb {
  width: 100%;
  display: block;
  border: 0;
}
.tb caption.none {
  position: fixed;
  left: -9999px;
}
.tb thead {
  position: fixed;
  left: -9999px;
  top: -9999px;
}
.tb tr.top-fixed {
  background-color: #faf9eb;
}
.tb tbody {
  display: flex;
  flex-flow: column wrap;
}
.tb th,
.tb td {
  font-size: 0.875rem;
  padding: 0.5rem 0.625rem;
  text-align: center;
}
.tb th.al-right,
.tb td.al-right {
  text-align: right;
}
.tb th.al-left,
.tb td.al-left {
  text-align: left;
}
.tb th {
  text-wrap: nowrap;
  background-color: #f6f6f6;
  font-weight: 500;
}
.tb td a {
  display: block;
  text-align: left;
}
.tb tbody tr {
  border-top: 1px solid #EEEEEE;
  border-bottom: 1px solid #EEEEEE;
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start;
  gap: 0.25rem;
  padding: 1rem;
}
.tb tbody tr td {
  padding: 0;
}
.tb tbody tr td .icon {
  vertical-align: middle;
}
.tb tbody tr .num {
  display: none;
}
.tb tbody tr .title {
  font-size: 0.875rem;
  font-weight: 500;
  flex: 1 0 100%;
}
.tb tbody tr .period,
.tb tbody tr .date {
  flex: 1 0 100%;
  text-align: left;
}
.tb tbody tr .period,
.tb tbody tr .date,
.tb tbody tr .area,
.tb tbody tr .bookstore,
.tb tbody tr .view,
.tb tbody tr .enterprise {
  line-height: 1rem;
}

@media screen and (max-width: 1199px) {
  .tb.m-card tbody {
    display: block;
  }
  .tb.m-card tbody tr {
    display: flex;
    flex-direction: column;
  }
}
.tb.bookmark td.category {
  order: -3;
}
.tb.bookmark td.title {
  order: -1;
}
.tb.bookmark td.favorite {
  order: -2;
  flex: 0 0 24px;
  padding-top: 2px;
  margin-left: auto;
}
.tb.bookmark td.period,
.tb.bookmark td.date {
  order: 0;
}
.tb.bookmark td.period::before {
  content: "행사기간: ";
}
.tb.bookmark td.date::before {
  content: "즐겨찾기 등록일: ";
}

.tb.event tbody tr .category,
.tb.event tbody tr .type {
  order: -1;
  flex: none;
}
.tb.event tbody tr .status {
  order: -1;
  flex: none;
  margin-left: 0;
}
.tb.event td.bookstore,
.tb.event td.view,
.tb.event td.date {
  flex: none;
}
.tb.event td.bookstore::before,
.tb.event td.view::before,
.tb.event td.date::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 6px;
  background-color: rgba(0, 0, 0, 0.1);
}
.tb.event td.file {
  display: none;
}

.tb.notice td.view::before,
.tb.notice td.file::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 6px;
  background-color: rgba(0, 0, 0, 0.1);
}
.tb.notice td.view.empty::before,
.tb.notice td.file.empty::before {
  content: none;
}
.tb.notice td.date {
  flex: none;
  order: 1;
}
.tb.notice td.view {
  order: 2;
}
.tb.notice td.file {
  order: 3;
  display: block;
}
.tb.notice td.author {
  display: none;
}

.tb.my-event td.type {
  flex: none;
  order: -1;
}
.tb.my-event td.status {
  order: -1;
}
.tb.my-event td.area,
.tb.my-event td.bookstore {
  flex: none;
  order: 1;
  font-size: 0.75rem;
  font-weight: 400;
}
.tb.my-event td.area::after,
.tb.my-event td.bookstore::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 4px 0 6px;
  background-color: rgba(0, 0, 0, 0.1);
}
.tb.my-event td.date {
  flex: none;
  order: 2;
  font-size: 0.75rem;
  font-weight: 400;
}
.tb.my-event td.modify,
.tb.my-event td.view {
  display: none;
}

@media screen and (min-width: 1200px) {
  .tb.my-event td.bookstore {
    display: none;
  }
  .tb.my-event td.modify,
  .tb.my-event td.view {
    display: table-cell;
  }
  .tb.my-event td.area,
  .tb.my-event td.date {
    font-size: 0.875rem;
  }
  .tb.my-event td.area::after,
  .tb.my-event td.date::after {
    content: none;
  }
  .tb.my-event td.title {
    min-width: 520px;
  }
}
.tb.my-project td.project-status {
  order: -1;
}
.tb.my-project td.enterprise {
  flex: none;
  order: 1;
  font-weight: 400;
  font-size: 0.75rem;
}
.tb.my-project td.enterprise::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 4px 0 6px;
  background-color: rgba(0, 0, 0, 0.1);
}
.tb.my-project td.date {
  flex: none;
  order: 1;
  font-size: 0.75rem;
  font-weight: 400;
}
.tb.my-project td.list-btn {
  order: 3;
  width: 100%;
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.tb.my-project td.list-btn .btn {
  width: 100%;
}
.tb.my-project td.status {
  display: none;
}

@media screen and (min-width: 1200px) {
  .tb.my-project td.list-btn :first-child {
    display: none;
  }
  .tb.my-project td.list-btn {
    display: flex;
    align-items: center;
    border: 0;
    margin: 0;
    text-wrap: nowrap;
  }
  .tb.my-project td.title {
    width: 448px;
  }
  .tb.my-project td.date {
    font-size: 0.875rem;
  }
  .tb.my-project td.enterprise {
    min-width: 200px;
    font-size: 0.875rem;
  }
  .tb.my-project td.enterprise::after {
    content: none;
  }
  .tb.my-project td.status {
    display: table-cell;
  }
  .tb-wrap {
    border-top: 1px solid #757575;
  }
  .tb {
    width: 100%;
    display: table;
    border-collapse: collapse;
    border-spacing: 0;
    border-top: 1px solid #757575;
  }
  .tb caption.none {
    position: fixed;
    left: -9999px;
  }
  .tb thead {
    position: static;
  }
  .tb th,
  .tb td {
    box-sizing: border-box;
    font-size: 0.875rem;
    padding: 0.75rem 0.5rem;
    text-align: center;
    min-height: 2.75rem;
    height: auto;
    vertical-align: middle;
    border: 1px solid #EEEEEE;
  }
  .tb th:first-child,
  .tb td:first-child {
    border-left: none;
  }
  .tb th:last-child,
  .tb td:last-child {
    border-right: none;
  }
  .tb th.al-right,
  .tb td.al-right {
    text-align: right;
  }
  .tb th.al-left,
  .tb td.al-left {
    text-align: left;
  }
  .tb thead th {
    border-bottom: none;
  }
  .tb th {
    background-color: #f6f6f6;
    font-weight: 500;
  }
  .tb td a {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
  }
  .tb tbody {
    display: table-row-group;
  }
  .tb tbody tr {
    display: table-row;
  }
  .tb tbody tr td {
    height: 2.75rem;
    font-size: 0.875rem;
    font-weight: 400;
    padding: 0 0.625rem;
  }
  .tb tbody tr .num {
    display: table-cell;
  }
  .tb tbody tr .enterprise {
    word-break: keep-all;
    overflow-wrap: break-word;
  }
  .tb tbody tr .title {
    font-weight: 400;
    max-width: 415px;
  }
  .tb tbody tr .period,
  .tb tbody tr .date,
  .tb tbody tr .area,
  .tb tbody tr .bookstore,
  .tb tbody tr .view {
    text-align: center;
    color: #000000;
    text-wrap: nowrap;
  }
  .tb.bookmark td::before {
    content: none !important;
  }
  .tb.bookmark td.period,
  .tb.bookmark td.date {
    text-align: center;
  }
  .tb.event td.bookstore::before,
  .tb.event td.view::before,
  .tb.event td.date::before {
    content: none;
  }
  .tb.event td.file {
    display: table-cell;
  }
  .tb.event thead th:first-child,
  .tb.event tbody td.category,
  .tb.event tbody td.type {
    white-space: nowrap;
    min-width: min-content;
  }
  .tb.notice td.view::before,
  .tb.notice td.file::before {
    content: none;
  }
  .tb.notice td.author {
    display: table-cell;
  }
}
body {
  font-family: "S-Core Dream", -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif;
  font-weight: 400;
  font-size: clamp(14px, 0.9vw, 16px);
  line-height: 1.4;
  padding-bottom: 64px;
  min-height: 100vh;
  box-sizing: border-box;
}
body.bg-gray {
  background-color: #F5F5F5;
}

body.no-btm {
  padding-bottom: 0;
}

body * {
  box-sizing: border-box;
  transition: 0.3s all;
}

input[type=text]::placeholder,
input[type=search]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
input[type=url]::placeholder,
input[type=number]::placeholder,
textarea::placeholder {
  font-family: "S-Core Dream", -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif;
}

a,
a:hover,
a:active,
a:focus {
  text-decoration: none;
  color: black;
}

strong {
  font-weight: 500;
}

.skip {
  position: absolute;
  top: -40px;
  left: 0;
  z-index: 1000;
  padding: 8px 16px;
  background: #000;
  color: #fff;
  text-decoration: none;
  /* 키보드로 포커스 될 때만 보이기 */
}
.skip:focus {
  top: 0;
}

.logo {
  display: block;
  text-indent: -9999px;
  background: url(../images/new/h1_logo.png) no-repeat center center;
  background-size: contain;
  width: 5.625rem;
  height: auto;
}

.main-container {
  width: 100%;
  max-width: 100%;
}
.main-container.sub {
  padding-top: 52px;
}
.main-container > .inner {
  padding: 1rem;
}

@media screen and (min-width: 1200px) {
  .visual-container {
    background-color: #202B41;
    padding: 1.25rem 0;
  }
  .visual-container > .res-inner {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
  }
  .main-container.fixed {
    padding-bottom: 80px;
  }
}
.res-inner {
  max-width: 100%;
}

@media screen and (min-width: 1200px) {
  .res-inner {
    max-width: 1280px;
    margin: 0 auto;
  }
}
.sub-container_my {
  display: block;
}
.sub-container_menu {
  display: none;
}
.sub-container_content h2 {
  display: none;
}
.sub-container .upper-filter_period,
.sub-container .upper-filter_dates {
  display: none;
}

@media screen and (min-width: 1200px) {
  .sub-container {
    display: flex;
    padding: 2rem 0;
    gap: 1.5rem;
  }
  .sub-container_content {
    flex: 1;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sub-container_content h2 {
    display: block;
    font-size: 1.5rem;
    font-weight: 500;
    margin-bottom: 2rem;
  }
  .sub-container_my, .sub-container_menu {
    order: -1;
    display: block;
  }
  .sub-container .fixed-footer {
    display: none;
  }
  .sub-container .upper-filter_period,
  .sub-container .upper-filter_dates {
    display: flex;
  }
}
.pull-rt {
  margin-left: auto;
  display: flex;
  align-items: center;
}

.scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.scroll-y {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.new {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background-color: #EF5F32;
}

.price {
  color: #000000;
  font-weight: 600;
}
.price-20 {
  font-size: 1.25rem;
}
.price-18 {
  font-size: 1.125rem;
}
.price-16 {
  font-size: 1rem;
}
.price-14 {
  font-size: 0.875rem;
  font-weight: 500;
}
.price-13 {
  font-size: 0.8125rem;
  font-weight: 500;
}
.price-12 {
  font-size: 0.75rem;
  font-weight: 500;
}
.price.thin {
  font-weight: 400;
}

.price-sale {
  color: #D3542C;
  font-size: 0.875rem;
}

.total {
  color: #D3542C !important;
  font-weight: 500;
}
.total.bold {
  font-weight: 600;
}
.total.total-v {
  color: #643BC6 !important;
}
.total.cancel {
  text-decoration: line-through;
}

.count {
  font-weight: 400;
}
.count-16 {
  font-size: 1rem;
}
.count-14 {
  font-size: 0.875rem;
}
.count-13 {
  font-size: 0.8125rem;
}
.count-12 {
  font-size: 0.75rem;
}
.count.bold {
  font-weight: 500;
}
.count.number {
  color: #D3542C;
}
.count.dark {
  color: #000000;
}

.unit {
  font-weight: 400;
  color: #757575;
}
.unit-20 {
  font-size: 1.25rem;
}
.unit-18 {
  font-size: 1.125rem;
}
.unit-16 {
  font-size: 1rem;
}
.unit-14 {
  font-size: 0.875rem;
}
.unit-13 {
  font-size: 0.8125rem;
}
.unit-12 {
  font-size: 0.75rem;
}
.unit-11 {
  font-size: 0.6875rem;
}

.highlight {
  color: #643BC6;
  font-weight: 500;
}
.highlight.disabled {
  color: #757575;
}

.under-highlight {
  position: relative;
  display: inline-block;
  isolation: isolate;
}
.under-highlight::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.12em;
  height: 6px;
  background-color: #ffe100;
  border-radius: 4px;
  z-index: -1;
  pointer-events: none;
}

.breadcrumb_container {
  display: none;
}

@media screen and (min-width: 1200px) {
  .breadcrumb {
    display: flex;
    align-items: center;
    height: 100%;
    font-weight: 400;
    font-size: 0.8125rem;
    color: #757575;
  }
  .breadcrumb_container {
    display: block;
    height: 38px;
    border: 1px solid #EEEEEE;
    background-color: #F5F5F5;
  }
  .breadcrumb strong {
    color: #424242;
  }
}
@media screen and (min-width: 1200px) {
  .only-m {
    display: none;
  }
}
.used-text {
  color: #9E9E9E;
  font-size: 0.8125rem;
  font-weight: 400;
}

.underline-text {
  text-decoration: underline;
  text-underline-offset: 2px;
  color: #424242;
  font-size: 0.8125rem;
  font-weight: 400;
}

.more-text {
  font-size: 0.75rem;
  font-weight: 400;
  color: #424242;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.more-text.dark {
  color: #ffffff;
}

.tooltip {
  font-size: 0.625rem;
  line-height: 0.625rem;
  display: none;
}
.tooltip-inner {
  position: relative;
}
.tooltip-inner span {
  display: block;
  position: relative;
  border-radius: 0.25rem;
  padding: 0.3125rem;
  z-index: 2;
}
.tooltip-inner::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 3px;
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  background-color: #ffffff;
  z-index: 1;
}
.tooltip-inner.primary span {
  background-color: #643BC6;
  color: #ffffff;
}
.tooltip-inner.primary::after {
  background-color: #643BC6;
}
.tooltip.show {
  animation: tooltip-fade-in 0.2s ease-out both;
}

@keyframes tooltip-fade-in {
  from {
    opacity: 0;
    transform: translateY(0.25rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.board-search {
  padding: 1rem;
}
.board-search .search-form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}
.board-search .search-form .select {
  flex: 1;
}
.board-search .search-form .text-box.search,
.board-search .search-form .text-box.search-col {
  flex: 1 0 100%;
}

.text-box.search-col {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
  position: relative;
}
.text-box.search-col label {
  flex: 1 0 100%;
}
.text-box.search-col .input {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
}
.text-box.search-col .btn-primary {
  flex: 0 0 2.5rem;
  min-width: 0;
  height: 2.5rem;
  padding: 0;
}
.text-box.search-col .btn-primary .icon {
  width: 1.5rem;
  height: 1.5rem;
}

@media screen and (min-width: 1200px) {
  .text-box.search-col .btn-primary {
    flex: 0 0 3rem;
    height: 3rem;
  }
}
.mt4 {
  margin-top: 4px !important;
}

.mt8 {
  margin-top: 8px !important;
}

.mt12 {
  margin-top: 12px !important;
}

.mt16 {
  margin-top: 16px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt24 {
  margin-top: 24px !important;
}

.mt28 {
  margin-top: 28px !important;
}

.mt32 {
  margin-top: 32px !important;
}

.mt36 {
  margin-top: 32px !important;
}

.mt40 {
  margin-top: 32px !important;
}

@media screen and (min-width: 1200px) {
  body {
    padding-bottom: 0;
  }
  .main-container > .inner,
  .footer-container > .inner {
    max-width: 1320px;
    margin: 0 auto;
  }
  .footer-container .inner {
    display: flex;
    justify-content: space-between;
  }
  .board-search {
    padding: 1rem;
  }
  .board-search .search-form {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
  }
  .board-search .search-form .select {
    flex: 0 1 140px;
  }
  .board-search .search-form .text-box.search,
  .board-search .search-form .text-box.search-col {
    flex: 1;
  }
  .board-search .search-form .text-box.search-col .btn-primary {
    flex: 0 0 3rem;
    height: 3rem;
  }
}
.toast {
  background-color: rgba(0, 0, 0, 0.8);
  color: #ffffff;
  font-size: 0.8125rem;
  line-height: 1.0625rem;
  text-align: center;
  width: 92%;
  max-width: 32.5rem;
  padding: 0.875rem;
  border-radius: 320px;
  position: fixed;
  left: 50%;
  bottom: 4.6875rem;
  transform: translate(-50%, 0.75rem);
  opacity: 0;
  z-index: 1800;
  pointer-events: none;
  transition: transform 0.24s ease, opacity 0.24s ease;
}
.toast.show {
  transform: translate(-50%, 0);
  opacity: 1;
}

.required::after {
  content: "*";
  color: #E45E63;
  padding-left: 0.5rem;
}

.checkbox {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin: 4px;
}
.checkbox input[type=checkbox] {
  position: absolute;
  left: 1px;
  top: 1px;
  opacity: 0;
}
.checkbox input[type=checkbox] + .checkbox-text {
  display: flex;
  align-items: center;
  position: relative;
  gap: 4px;
  cursor: pointer;
  font-size: 0.8125rem;
  line-height: 1.0625rem;
  color: #424242;
}
.checkbox input[type=checkbox] + .checkbox-text.text-lg {
  gap: 0.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #000000;
}
.checkbox input[type=checkbox] + .checkbox-text::before {
  content: "";
  display: block;
  border-radius: 2px;
  width: 1rem;
  height: 1rem;
  background-color: white;
  border-radius: 0.25rem;
  border: 1px solid #BDBDBD;
  transition: background-color 0.3s, border-color 0.3s;
}
.checkbox input[type=checkbox]:checked + .checkbox-text::before {
  border-color: #650eb5;
  background: #650eb5 url(../images/new/icon_checkbox_w.svg) center no-repeat;
}
.checkbox input[type=checkbox]:disabled + .checkbox-text::before {
  background-color: #eeeeee;
  border-color: #E0E0E0;
  cursor: not-allowed;
}
.checkbox input[type=checkbox]:disabled:checked + .checkbox-text::before {
  border-color: #E0E0E0;
  background: #eeeeee url(../images/new/icon_checkbox_g.svg) center no-repeat;
  cursor: not-allowed;
}

.checkbox-b {
  position: relative;
  display: inline-block;
}
.checkbox-b input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.checkbox-b input[type=checkbox] + span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #424242;
  white-space: nowrap;
  font-size: 0.8125rem;
  font-weight: 400;
  border-radius: 0.375rem;
  border: 1px solid #E0E0E0;
  background-color: #ffffff;
  min-width: 5rem;
  padding: 0 0.5rem;
  height: 1.875rem;
}
.checkbox-b input[type=checkbox]:checked + span {
  font-weight: 500;
  color: #7E37BE;
  background-color: #F5F3FE;
  border-color: #8A64E6;
}

.radio {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.radio input[type=radio] {
  position: absolute;
  left: 1px;
  top: 1px;
  opacity: 0;
  margin: 0;
}
.radio input[type=radio] + .radio-text {
  display: flex;
  align-items: center;
  padding-left: 1.5rem;
  position: relative;
  cursor: pointer;
  font-size: 0.75rem;
  line-height: 1rem;
  color: #424242;
}
.radio input[type=radio] + .radio-text::before, .radio input[type=radio] + .radio-text::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s all;
  content: "";
  display: block;
  border-radius: 50%;
  background-color: white;
  border: 1px solid #BDBDBD;
}
.radio input[type=radio] + .radio-text::before {
  left: 0;
  width: 1rem;
  height: 1rem;
}
.radio input[type=radio] + .radio-text::after {
  left: 4px;
  width: 0.5rem;
  height: 0.5rem;
  background-color: #BDBDBD;
}
.radio input[type=radio]:checked + .radio-text::before {
  background-color: white;
  border-color: #650eb5;
}
.radio input[type=radio]:checked + .radio-text::after {
  background-color: #650eb5;
  border-color: #650eb5;
}
.radio input[type=radio]:disabled + .radio-text {
  cursor: not-allowed;
}
.radio input[type=radio]:disabled + .radio-text::before {
  background-color: #eeeeee;
  border-color: #E0E0E0;
}
.radio input[type=radio]:disabled + .radio-text::after {
  background-color: #E0E0E0;
  border-color: #E0E0E0;
}

.radio-b {
  display: flex;
  flex: 1;
  position: relative;
}
.radio-b input[type=radio] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.radio-b input[type=radio] + span {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #424242;
  white-space: nowrap;
  font-size: 0.8125rem;
  line-height: 1.0625rem;
  font-weight: 400;
  border-radius: 0.375rem;
  border: 1px solid #E0E0E0;
  background-color: #ffffff;
  height: 1.875rem;
}
.radio-b input[type=radio]:checked + span {
  font-weight: 500;
  color: #7E37BE;
  background-color: #F5F3FE;
  border-color: #8A64E6;
}

@media screen and (min-width: 1200px) {
  .radio-b {
    flex: 1 0 54px;
  }
  .radio-b input[type=radio] + span {
    height: 3rem;
    color: #000000;
    border: 1px solid #a7a0ae;
  }
  .text-box input[type=text] {
    height: 3rem;
  }
}
.toggle {
  position: relative;
  display: inline-block;
}
.toggle input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.toggle input[type=checkbox] + .toggle-slider {
  display: inline-block;
  width: 2.75rem;
  height: 1.375rem;
  border-radius: 3.5rem;
  border: 1px solid #a7a0ae;
  background-color: #a7a0ae;
  position: relative;
}
.toggle input[type=checkbox] + .toggle-slider::after {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: white;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.06);
  transition: 0.3s all;
}
.toggle input[type=checkbox]:checked + .toggle-slider {
  background-color: #650eb5;
  border-color: #650eb5;
}
.toggle input[type=checkbox]:checked + .toggle-slider::after {
  transform: translateX(21px);
}

.phone-input {
  display: flex;
  gap: 0.125rem;
}
.phone-input select:first-child {
  flex: 0.3;
}
.phone-input input:nth-child(2) {
  flex: 0.5;
}
.phone-input input:nth-child(3) {
  flex: 0.5;
}

@media screen and (min-width: 1200px) {
  .phone-input select:first-child {
    height: 3rem;
  }
}
.email-input {
  display: flex;
  align-items: center;
  gap: 0.125rem;
}
.email-input select {
  flex: 0.5;
}
.email-input input {
  flex: 0.5;
}

.address-input {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.address-input .address-input_btn {
  display: flex;
  gap: 0.25rem;
}
.address-input .address-input_btn input {
  flex: 0 1 auto;
}
.address-input .address-input_btn button {
  flex: 0 0 auto;
  height: 40px;
  text-wrap: nowrap;
}

@media screen and (min-width: 1200px) {
  .address-input .address-input_btn button {
    height: 3rem;
  }
}
select.select {
  font-family: "S-Core Dream", -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif;
  border: 1px solid #E0E0E0;
  min-width: 120px;
  height: 2.5rem;
  padding: 0.5rem 0.625rem 0.5rem 0.5rem;
  border-radius: 0.625rem;
  background: #ffffff url(../images/new/icon_arrow_down_d.svg) right 10px center no-repeat;
  appearance: none;
}
select.select.sm {
  min-width: 70px;
  height: 28px;
  padding: 0.25rem 0.5rem 0.25rem 0.5rem;
  font-size: 0.75rem;
  border-radius: 0.375rem;
  background: #ffffff url(../images/new/icon_arrow_down_d.svg) right 4px center/20px 20px no-repeat;
  appearance: none;
}
select.select.extra {
  width: 100%;
}
select.select:focus {
  outline: none;
  border-color: #3D086D;
  box-shadow: 0 0 0 1px #3D086D;
}

@media screen and (min-width: 1200px) {
  select.select {
    font-size: 1rem;
    height: 3rem;
  }
}
.bar {
  background-color: rgba(0, 0, 0, 0.1);
  display: inline-block;
}
.bar-v {
  width: 1px;
  height: 10px;
}

.noti-info {
  font-size: 0.8125rem;
  line-height: 1.0625rem;
  color: #424242;
}
.noti-info_box {
  padding: 1rem;
  background-color: #EEEEEE;
}
.noti-info_box.rd {
  margin-left: -1rem;
  margin-right: -1rem;
}
.noti-info h3.ttl {
  font-weight: 500;
  color: #424242;
}
.noti-info h3.ttl + h3.ttl {
  margin-top: 0.5rem;
}
.noti-info .lists {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.noti-info .lists li {
  position: relative;
  padding-left: 1.25rem;
}
.noti-info .lists li::before {
  content: "";
  position: absolute;
  left: 0.5rem;
  top: 0.375rem;
  width: 3px;
  height: 3px;
  border-radius: 2px;
  background-color: #424242;
}

hr.divider {
  border: none;
  height: 0.5rem;
  background-color: #EEEEEE;
  margin: 0;
  margin-bottom: 1rem;
}

hr.divider2 {
  border: none;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
  margin: 1.5rem 0;
}

@media screen and (min-width: 1200px) {
  hr.divider {
    display: none;
  }
}
.tabs-container {
  display: inline-flex;
  width: 100%;
  border-top: 1px solid #EEEEEE;
  border-bottom: 1px solid #EEEEEE;
}
.tabs-container .tab-btn {
  flex: 1;
  height: 36px;
  display: flex;
  cursor: pointer;
}
.tabs-container .tab-btn span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 0.875rem;
  font-weight: 500;
  color: #757575;
  position: relative;
  background-color: #EEEEEE;
}
.tabs-container .tab-btn.active span {
  color: #000000;
  font-weight: 500;
  background-color: #ffffff;
}
.tabs-container.tabs-b {
  border-top: none;
  border-left: none;
  border-right: none;
}
.tabs-container.tabs-b .tab-btn {
  flex: 1;
  position: relative;
}
.tabs-container.tabs-b .tab-btn span {
  background-color: #ffffff;
  color: #757575;
  font-weight: 400;
}
.tabs-container.tabs-b .tab-btn.active span {
  font-weight: 500;
  color: #000000;
}
.tabs-container.tabs-b .tab-btn.active::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -1px;
  width: 100%;
  height: 2px;
  background: #000000;
}

.tab-content {
  display: none;
}
.tab-content.active {
  display: block;
}

@media screen and (min-width: 1200px) {
  .tabs-container {
    display: flex;
    max-width: 1280px;
    margin: 2.5rem auto;
    border-left: 1px solid #EEEEEE;
    border-right: 1px solid #EEEEEE;
  }
  .tabs-container .tab-btn {
    height: 3.375rem;
  }
  .tabs-container.tabs-b {
    width: 100%;
    margin: 0 auto 2rem;
  }
  .tabs-container.tabs-b .tab-btn {
    flex: 0 0 12.5rem;
    height: 2.375rem;
  }
  .tabs-container.no-btm {
    font-size: 1rem;
    margin: 0 auto;
  }
  .tabs-container.no-btm .tab-btn {
    height: 3.375rem;
  }
}
.modal-container {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
  visibility: hidden;
}
.modal-container .popup {
  padding: 1.5rem;
  background-color: white;
}
.modal-container .popup .modal-head {
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal-container .popup .modal-head .title {
  font-size: 1rem;
  font-weight: 500;
  color: #000000;
}
.modal-container .popup .modal-head .title-area {
  display: flex;
  align-items: center;
  height: 40px;
  font-size: 0.875rem;
  font-weight: 400;
}
.modal-container .popup .modal-cont {
  overflow-y: auto;
  margin-top: 0.625rem;
  font-size: 0.875rem;
}
.modal-container .popup .modal-cont.bg-gray {
  background-color: #f6f6f6;
  border-radius: 0.25rem;
  padding: 0.625rem;
}
.modal-container .popup .modal-btns {
  display: flex;
  margin-top: 1rem;
  align-items: center;
  gap: 0.25rem;
}
.modal-container .popup .modal-btns .btn {
  width: 100%;
  height: 40px;
}
.modal-container .popup-bs {
  background-color: white;
  position: fixed;
  right: 0;
  left: 0;
  bottom: -100%;
  border-radius: 1.25rem 1.25rem 0 0;
  box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.2);
  visibility: hidden;
}
.modal-container .popup-bs .popup-cont {
  min-height: 60px;
}
.modal-container .popup-page {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  background-color: white;
  visibility: hidden;
  opacity: 0;
}
.modal-container .popup-page .popup-cont {
  flex: 1;
}
.modal-container .popup-modal {
  position: fixed;
  left: 50%;
  top: 50%;
  width: 80%;
  max-width: 25rem;
  max-height: 80vh;
  display: flex;
  flex-direction: column;
  background-color: white;
  border-radius: 0.75rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
  visibility: hidden;
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.9);
}
.modal-container .popup-modal .popup-cont {
  min-height: 26.25rem;
  overflow-y: auto;
}
.modal-container.show {
  z-index: 1500;
  animation: show 0.5s ease-in-out forwards;
}
.modal-container.show .popup-bs {
  animation: bsShow 0.5s ease-in-out forwards;
}
.modal-container.show .popup-page {
  animation: pageShow 0.35s ease-out forwards;
}
.modal-container.show .popup-modal {
  animation: modalShow 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
.modal-container.closing .popup-bs {
  animation: bsHide 0.5s ease-in-out forwards;
}
.modal-container.closing .popup-page {
  animation: pageHide 0.3s ease-in forwards;
}
.modal-container.closing .popup-modal {
  animation: modalHide 0.25s ease-in forwards;
}

.swiper-section {
  padding: 0 20px;
}

.swiper {
  overflow: hidden;
  position: relative;
  visibility: hidden;
}
.swiper.swiper-initialized {
  visibility: visible;
}
.swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  cursor: pointer;
}
.swiper .swiper-button-prev,
.swiper .swiper-button-next {
  width: 40px;
  height: 40px;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  --swiper-navigation-color: #ffffff;
  --swiper-navigation-size: 18px;
}

.list-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  padding-top: 0.5rem;
}
.list-pagination button {
  border: none;
  width: 2rem !important;
  height: 2rem !important;
}
.list-pagination button.icon {
  background-size: 1rem 1rem;
}
.list-pagination.list {
  padding: 0;
}
.list-pagination.list li {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 400;
  width: 24px;
  height: 24px;
  border-radius: 4px;
}
.list-pagination.list li.active {
  background-color: #7339B4;
  color: #ffffff;
}

.dot-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.3125rem;
  padding: 0;
}
.dot-pagination__dot {
  flex-shrink: 0;
  width: 0.3125rem;
  height: 0.3125rem;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: #E0E0E0;
  cursor: pointer;
}
.dot-pagination__dot.is-active {
  background: #7339B4;
}
.dot-pagination__dot:focus-visible {
  outline: 2px solid #BDBDBD;
  outline-offset: 0.125rem;
}

.swiper-nav {
  display: none;
  align-items: center;
  gap: 2px;
}
.swiper-nav_btn {
  border: 1px solid #EEEEEE;
  border-radius: 4px;
  width: 1.5rem;
  height: 1.5rem;
  flex: 0 0 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.swiper-nav_btn:hover {
  border-color: #BDBDBD;
}
.swiper-nav_page {
  margin-right: 6px;
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: #BDBDBD;
}
.swiper-nav_page strong {
  color: #424242;
}
.swiper-nav.dark {
  background-color: rgba(0, 0, 0, 0.8);
  padding: 0 0.5rem;
  height: 1.5rem;
}
.swiper-nav.dark .swiper-nav_btn {
  border: 0;
  width: 1rem;
  height: 1rem;
}
.swiper-nav.dark .swiper-nav_page {
  font-size: 0.75rem;
  line-height: 1rem;
  color: #BDBDBD;
}
.swiper-nav.dark .swiper-nav_page strong {
  color: #ffffff;
}

@media screen and (min-width: 1200px) {
  .swiper-nav {
    display: inline-flex;
  }
}
.chip {
  font-size: 0.75rem;
  font-weight: 400;
  border-radius: 0.25rem;
  padding: 0 0.5rem;
  height: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-wrap: nowrap;
  align-self: flex-start;
  flex-shrink: 0;
}
.chip.sm {
  height: 1.375rem;
  font-size: 0.6875rem;
  padding: 0 0.25rem;
}
.chip-line {
  height: 1.375rem;
  font-size: 0.6875rem;
  padding: 0 0.25rem;
}
.chip-status {
  color: #ffffff;
}
.chip-info {
  color: #424242;
  background-color: #ffffff;
  padding: 0 0.25rem;
  display: inline-flex;
  gap: 0.125rem;
}
.chip-list {
  width: 50px;
  color: #ffffff;
  font-size: 0.6875rem;
}
.chip.extra {
  display: flex;
}
.chip.red {
  background-color: #B71C1C;
}
.chip.wait {
  background-color: #2096F3;
}
.chip.preparing {
  background-color: #4CAF50;
}
.chip.done {
  background-color: #7E37BE;
}
.chip.delivery {
  background-color: #0097A7;
}
.chip.delivery-done {
  background-color: #304162;
}
.chip.return-approv {
  background-color: #D67011;
}
.chip.ing {
  background-color: #445B8A;
}
.chip.cancel {
  background-color: #445B8A;
}
.chip.receive {
  background-color: #304162;
}
.chip.gray-dark {
  border: 1px solid #757575;
}
.chip.gray {
  border: 1px solid #E0E0E0;
}
.chip.blue-dark {
  border: 1px solid #7ba4d3;
  color: #496280;
}
.chip.green-dark {
  border: 1px solid #82c39c;
  color: #496d57;
}
.chip.event {
  background-color: #643BC6;
}
.chip.finish {
  background-color: #9E9E9E;
}
.chip.ing {
  background-color: #0097A7;
}
.chip.notice {
  background-color: #304162;
  color: #ffffff;
}
.chip.type {
  background-color: #304162;
}
.chip.order {
  background-color: #1976d2;
}
.chip.calculate {
  background-color: #C49814;
}
.chip.complete {
  background-color: #303f9f;
}
.chip.cancel {
  background-color: #616161;
}
.chip.ghost {
  color: #ffffff;
  background-color: transparent;
}
.chip.ghost[data-color=finish] {
  background-color: #9E9E9E;
}
.chip.ghost[data-color=event] {
  background-color: #643BC6;
}
.chip.ghost[data-color=ing] {
  background-color: #0097A7;
}
.chip.ghost[data-color=notice] {
  background-color: #304162;
}
.chip.ghost[data-color=type] {
  background-color: #304162;
}
.chip.ghost[data-color=complete] {
  background-color: #303f9f;
}

@media screen and (min-width: 1200px) {
  .chip.sm {
    font-size: 0.75rem;
    min-width: 3.75rem;
    height: 1.875rem;
  }
  .chip-info {
    height: 1.375rem;
    font-size: 0.75rem;
    padding: 0 0.25rem;
  }
  .chip-status {
    width: 5.625rem;
  }
  .chip.ghost {
    background-color: transparent !important;
    color: #000000 !important;
    font-size: 0.875rem;
    font-weight: 400;
    padding: 0;
    height: auto;
    min-height: 0;
    border-radius: 0;
    display: inline;
    align-items: unset;
    justify-content: unset;
    align-self: auto;
    flex-shrink: 1;
    text-wrap: wrap;
    white-space: normal;
  }
}
.status-box {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: #E0E0E0;
  padding: 0.625rem;
  height: 100%;
  flex: 1;
  background-color: #202b41;
  border: 1px solid #304162;
  cursor: pointer;
}
.status-box:hover, .status-box:active, .status-box:focus {
  background-color: #374A71;
  color: #fff;
}
.status-box:hover .status-name, .status-box:active .status-name, .status-box:focus .status-name {
  color: #fff;
}
.status-box:not(:first-child) {
  border-left: none;
}
.status-box .status-value {
  font-size: 1.125rem;
  font-weight: 600;
}
.status-box .status-name {
  font-size: 0.6875rem;
  font-weight: 400;
}
.status-box.lg .status-value {
  font-size: 1.25rem;
}
.status-box.lg .status-value.not-zero {
  color: #ffe100;
}
.status-box.lg .status-name {
  font-size: 0.8125rem;
  color: #BDBDBD;
}
.status-box:has(input[type=radio]:checked) {
  color: #ffffff;
  background-color: #374a71;
}
.status-box input[type=radio] {
  position: absolute;
  left: 1px;
  top: 1px;
  opacity: 0;
}

.status-line {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #757575;
  font-size: 0.75rem;
  font-weight: 400;
  position: relative;
}
.status-line::before {
  content: "";
  position: absolute;
  bottom: 0.4375rem;
  left: 0;
  top: 29px;
  right: 0;
  height: 1px;
  background-color: #E0E0E0;
}
.status-line:first-child::before {
  left: 50%;
}
.status-line:last-child::before {
  right: 50%;
}
.status-line::after {
  content: "";
  width: 0.5625rem;
  height: 0.5625rem;
  border-radius: 50%;
  background-color: #9e9e9e;
  margin-top: 0.5rem;
  position: relative;
  z-index: 1;
}
.status-line:not(.disabled) {
  color: #643BC6;
  font-weight: 500;
}
.status-line:not(.disabled)::after {
  background-color: #643BC6;
}

.banner-card.register {
  background-color: #fffae8;
  margin-bottom: 1rem;
  padding: 0.9375rem 0.625rem;
}
.banner-card.favorite {
  background-color: #e0dbeb;
  padding: 1rem;
  margin: 0 1rem;
}
.banner-card.bookstore {
  background-color: #f8ecf8;
  margin: 0 1rem;
  margin-bottom: clamp(0.5rem, 5vw, 1.5rem);
  padding: 0.9375rem 0.625rem;
}
.banner-card.bookstore .under-highlight {
  color: #512da8 !important;
}
.banner-card {
  border-radius: 0.625rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.banner-card .favorite-text {
  font-size: 0.875rem;
  font-weight: 400;
  flex: 1 1 auto;
}
.banner-card .register-text {
  font-size: 0.8125rem;
  flex: 1 1 auto;
  min-width: 0;
  font-weight: 400;
}
.banner-card .register-text strong {
  font-weight: 600;
}
.banner-card .register-text .under-highlight {
  position: relative;
  display: inline-block;
  isolation: isolate;
}
.banner-card .register-text .under-highlight::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.12em;
  height: 6px;
  background-color: #ffe100;
  border-radius: 4px;
  z-index: -1;
  pointer-events: none;
}
.banner-card .btn-register {
  font-size: 0.8125rem;
  color: #7339b4;
  text-wrap: nowrap;
  display: flex;
  align-items: center;
  font-weight: 500;
  flex: 0 0 auto;
}

@media screen and (min-width: 1200px) {
  .banner-card.bookstore {
    margin: 0;
  }
}
.empty-interest {
  background-color: #E0DBEB;
  border-radius: 0.625rem;
  padding: 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.empty-interest .icon-v {
  width: 2.5rem;
  height: 2.5rem;
}
.empty-interest p {
  margin-right: auto;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.search-addr {
  padding: 1rem 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.search-addr_result {
  flex: 1;
  margin-top: 1.5rem;
  height: 100%;
  position: relative;
  overflow-y: auto;
}
.search-addr_result .guide {
  border: 1px solid #E0E0E0;
  background-color: #FAFAFA;
  font-size: 0.8125rem;
  line-height: 1.0625rem;
  padding: 0.875rem;
}
.search-addr_result .guide li {
  padding: 2px 0;
}
.search-addr_result .top {
  position: sticky;
  top: 0;
  border-bottom: 1px solid #EEEEEE;
  background-color: #ffffff;
  font-size: 0.8125rem;
  line-height: 1.0625rem;
  color: #424242;
  padding-bottom: 0.5rem;
}
.search-addr_result .top em {
  color: #643BC6;
  font-weight: 500;
  padding: 0 4px;
}
.search-addr_result .list {
  height: 100%;
}
.search-addr_result .list-item {
  border-bottom: 1px solid #EEEEEE;
  padding: 1rem 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  cursor: pointer;
}
.search-addr_result .list-item .zip-code {
  font-size: 1rem;
  line-height: 1.375rem;
}
.search-addr_result .list-item .addr {
  font-size: 0.875rem;
  line-height: 1.25rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.search-addr_result .list-item .addr .lb {
  font-size: 0.8125rem;
  line-height: 1.0625rem;
  color: #424242;
  flex: 0 0 40px;
}

@media screen and (min-width: 1200px) {
  .search-addr .text-box {
    flex: none;
  }
}
.login {
  margin: 6.25rem auto;
  padding: 0 1.5rem;
}
.login .logo {
  width: 13.75rem;
  height: 3.5rem;
  margin: 2rem auto;
}
.login .tabs-container {
  margin: 0 auto 2rem;
}
.login .tabs-container .tab-btn {
  flex: 1;
}
.login .text-box .input {
  padding-left: 1.875rem;
}
.login .text-box .icon-login {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  left: 0.625rem;
}
.login .text-box + .text-box {
  margin-top: 1rem;
}
.login .login-check {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-top: 1.5rem;
  gap: 1.5rem;
}
.login .btn-wrap {
  margin: 2rem 0;
}
.login .btn-wrap .btn {
  flex: 1;
}
.login .link-account {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}
.login .link-social {
  margin: 2rem 0;
}
.login .link-social .ttl {
  text-align: center;
  font-weight: 500;
  color: #757575;
  font-size: 1rem;
  line-height: 1.375rem;
  position: relative;
}
.login .link-social .ttl span {
  padding: 0 1.5rem;
  background-color: #ffffff;
  position: relative;
  z-index: 5;
}
.login .link-social .ttl::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #E0E0E0;
  position: absolute;
  top: 50%;
  z-index: 3;
}
.login .link-social .links {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 1.5rem;
  gap: 1.5rem;
}
.login .link-social .links button {
  text-indent: -9999px;
  width: 2.5rem;
  height: 2.5rem;
}
.login .link-cs {
  text-align: center;
  font-size: 1rem;
  line-height: 1.375rem;
  font-weight: 500;
  color: #757575;
}
.login .link-cs em {
  color: #643BC6;
}

@media screen and (min-width: 1200px) {
  .login {
    max-width: 33.75rem;
  }
}
.terms .tab-content {
  padding: 1rem;
}
.terms > article {
  margin-bottom: 2rem;
}
.terms .h4 {
  font-size: 1.125rem;
  line-height: 1.5rem;
  font-weight: 500;
}
.terms .h5 {
  font-size: 1rem;
  line-height: 1.375rem;
  font-weight: 500;
}
.terms .num_list1 {
  list-style: decimal;
  margin-bottom: 2rem;
  padding-left: 1.5rem;
}
.terms .num_list2 {
  color: #757575;
}
.terms .text-guide {
  background-color: #F5F5F5;
  padding: 0.625rem;
  border-radius: 0.625rem;
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

@media screen and (min-width: 1200px) {
  .terms .tab-content {
    padding: 0;
  }
}
.partnership dt {
  font-weight: 500;
  margin-bottom: 0.5rem;
  font-size: 1rem;
  line-height: 1.375rem;
}
.partnership dd .list {
  list-style: disc;
  font-size: 0.875rem;
  line-height: 1.25rem;
  padding-left: 1.5rem;
}
.partnership dd .list li::marker {
  font-size: 10px;
}
.partnership dd + dt {
  margin-top: 1.5rem;
}
.partnership + .btn-line {
  width: 100%;
  margin-top: 0.5rem;
}

@media screen and (min-width: 1200px) {
  .partnership + .btn-line {
    width: auto;
  }
}
/*# sourceMappingURL=style.css.map */
