@charset "UTF-8";
/*
	Author	: hyojeong yang
	Date	: 2023-05-17
	Project	: CMS
*/
/* abstracts */
@import url("vendors/animate.css");
@import url("vendors/swiper-bundle.css");
.crossword-write-area .crossword-header, .chart-legend, .mn-tit-area, .form-view .form-section-header, .form-view-result .a-area .a-fnc,
.form-view .a-area .a-fnc, .form-write .form-item .form-item-fnc, .form-write .form-section-footer,
.form-view-result .form-section-footer,
.form-view .form-section-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.8rem;
}
.crossword-write-area .lg.crossword-header, .lg.chart-legend, .lg.mn-tit-area, .form-view .lg.form-section-header, .form-view-result .a-area .lg.a-fnc,
.form-view .a-area .lg.a-fnc, .form-write .form-item .lg.form-item-fnc, .form-write .lg.form-section-footer,
.form-view-result .lg.form-section-footer,
.form-view .lg.form-section-footer {
  gap: 0.8rem 1.6rem;
}
.crossword-write-area .sm.crossword-header, .sm.chart-legend, .sm.mn-tit-area, .form-view .sm.form-section-header, .form-view-result .a-area .sm.a-fnc,
.form-view .a-area .sm.a-fnc, .form-write .form-item .sm.form-item-fnc, .form-write .sm.form-section-footer,
.form-view-result .sm.form-section-footer,
.form-view .sm.form-section-footer {
  gap: 0.4rem;
}
.crossword-write-area .crossword-header .l-area, .chart-legend .l-area, .mn-tit-area .l-area, .form-view .form-section-header .l-area, .form-view-result .a-area .a-fnc .l-area,
.form-view .a-area .a-fnc .l-area, .form-write .form-item .form-item-fnc .l-area, .form-write .form-section-footer .l-area,
.form-view-result .form-section-footer .l-area,
.form-view .form-section-footer .l-area,
.crossword-write-area .crossword-header .c-area,
.chart-legend .c-area,
.mn-tit-area .c-area,
.form-view .form-section-header .c-area,
.form-view-result .a-area .a-fnc .c-area,
.form-view .a-area .a-fnc .c-area,
.form-write .form-item .form-item-fnc .c-area,
.form-write .form-section-footer .c-area,
.form-view-result .form-section-footer .c-area,
.form-view .form-section-footer .c-area,
.crossword-write-area .crossword-header .r-area,
.chart-legend .r-area,
.mn-tit-area .r-area,
.form-view .form-section-header .r-area,
.form-view-result .a-area .a-fnc .r-area,
.form-view .a-area .a-fnc .r-area,
.form-write .form-item .form-item-fnc .r-area,
.form-write .form-section-footer .r-area,
.form-view-result .form-section-footer .r-area,
.form-view .form-section-footer .r-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem 0.8rem;
}
.crossword-write-area .crossword-header .l-area > *, .chart-legend .l-area > *, .mn-tit-area .l-area > *, .form-view .form-section-header .l-area > *, .form-view-result .a-area .a-fnc .l-area > *,
.form-view .a-area .a-fnc .l-area > *, .form-write .form-item .form-item-fnc .l-area > *, .form-write .form-section-footer .l-area > *,
.form-view-result .form-section-footer .l-area > *,
.form-view .form-section-footer .l-area > *,
.crossword-write-area .crossword-header .c-area > *,
.chart-legend .c-area > *,
.mn-tit-area .c-area > *,
.form-view .form-section-header .c-area > *,
.form-view-result .a-area .a-fnc .c-area > *,
.form-view .a-area .a-fnc .c-area > *,
.form-write .form-item .form-item-fnc .c-area > *,
.form-write .form-section-footer .c-area > *,
.form-view-result .form-section-footer .c-area > *,
.form-view .form-section-footer .c-area > *,
.crossword-write-area .crossword-header .r-area > *,
.chart-legend .r-area > *,
.mn-tit-area .r-area > *,
.form-view .form-section-header .r-area > *,
.form-view-result .a-area .a-fnc .r-area > *,
.form-view .a-area .a-fnc .r-area > *,
.form-write .form-item .form-item-fnc .r-area > *,
.form-write .form-section-footer .r-area > *,
.form-view-result .form-section-footer .r-area > *,
.form-view .form-section-footer .r-area > * {
  margin-bottom: 0;
}
.crossword-write-area .crossword-header .l-area:only-child, .chart-legend .l-area:only-child, .mn-tit-area .l-area:only-child, .form-view .form-section-header .l-area:only-child, .form-view-result .a-area .a-fnc .l-area:only-child,
.form-view .a-area .a-fnc .l-area:only-child, .form-write .form-item .form-item-fnc .l-area:only-child, .form-write .form-section-footer .l-area:only-child,
.form-view-result .form-section-footer .l-area:only-child,
.form-view .form-section-footer .l-area:only-child,
.crossword-write-area .crossword-header .c-area:only-child,
.chart-legend .c-area:only-child,
.mn-tit-area .c-area:only-child,
.form-view .form-section-header .c-area:only-child,
.form-view-result .a-area .a-fnc .c-area:only-child,
.form-view .a-area .a-fnc .c-area:only-child,
.form-write .form-item .form-item-fnc .c-area:only-child,
.form-write .form-section-footer .c-area:only-child,
.form-view-result .form-section-footer .c-area:only-child,
.form-view .form-section-footer .c-area:only-child,
.crossword-write-area .crossword-header .r-area:only-child,
.chart-legend .r-area:only-child,
.mn-tit-area .r-area:only-child,
.form-view .form-section-header .r-area:only-child,
.form-view-result .a-area .a-fnc .r-area:only-child,
.form-view .a-area .a-fnc .r-area:only-child,
.form-write .form-item .form-item-fnc .r-area:only-child,
.form-write .form-section-footer .r-area:only-child,
.form-view-result .form-section-footer .r-area:only-child,
.form-view .form-section-footer .r-area:only-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.crossword-write-area .crossword-header .l-area .checkradio, .chart-legend .l-area .checkradio, .mn-tit-area .l-area .checkradio, .form-view .form-section-header .l-area .checkradio, .form-view-result .a-area .a-fnc .l-area .checkradio,
.form-view .a-area .a-fnc .l-area .checkradio, .form-write .form-item .form-item-fnc .l-area .checkradio, .form-write .form-section-footer .l-area .checkradio,
.form-view-result .form-section-footer .l-area .checkradio,
.form-view .form-section-footer .l-area .checkradio,
.crossword-write-area .crossword-header .c-area .checkradio,
.chart-legend .c-area .checkradio,
.mn-tit-area .c-area .checkradio,
.form-view .form-section-header .c-area .checkradio,
.form-view-result .a-area .a-fnc .c-area .checkradio,
.form-view .a-area .a-fnc .c-area .checkradio,
.form-write .form-item .form-item-fnc .c-area .checkradio,
.form-write .form-section-footer .c-area .checkradio,
.form-view-result .form-section-footer .c-area .checkradio,
.form-view .form-section-footer .c-area .checkradio,
.crossword-write-area .crossword-header .r-area .checkradio,
.chart-legend .r-area .checkradio,
.mn-tit-area .r-area .checkradio,
.form-view .form-section-header .r-area .checkradio,
.form-view-result .a-area .a-fnc .r-area .checkradio,
.form-view .a-area .a-fnc .r-area .checkradio,
.form-write .form-item .form-item-fnc .r-area .checkradio,
.form-write .form-section-footer .r-area .checkradio,
.form-view-result .form-section-footer .r-area .checkradio,
.form-view .form-section-footer .r-area .checkradio {
  margin-right: 0;
}
.crossword-write-area .crossword-header .r-area, .chart-legend .r-area, .mn-tit-area .r-area, .form-view .form-section-header .r-area, .form-view-result .a-area .a-fnc .r-area,
.form-view .a-area .a-fnc .r-area, .form-write .form-item .form-item-fnc .r-area, .form-write .form-section-footer .r-area,
.form-view-result .form-section-footer .r-area,
.form-view .form-section-footer .r-area {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.crossword-write-area .center.crossword-header, .center.chart-legend, .center.mn-tit-area, .form-view .center.form-section-header, .form-view-result .a-area .center.a-fnc,
.form-view .a-area .center.a-fnc, .form-write .form-item .center.form-item-fnc, .form-write .center.form-section-footer,
.form-view-result .center.form-section-footer,
.form-view .center.form-section-footer {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.crossword-write-area .vcenter.crossword-header, .vcenter.chart-legend, .vcenter.mn-tit-area, .form-view .vcenter.form-section-header, .form-view-result .a-area .vcenter.a-fnc,
.form-view .a-area .vcenter.a-fnc, .form-write .form-item .vcenter.form-item-fnc, .form-write .vcenter.form-section-footer,
.form-view-result .vcenter.form-section-footer,
.form-view .vcenter.form-section-footer {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.crossword-write-area .crossword-header .dir-col, .chart-legend .dir-col, .mn-tit-area .dir-col, .form-view .form-section-header .dir-col, .form-view-result .a-area .a-fnc .dir-col,
.form-view .a-area .a-fnc .dir-col, .form-write .form-item .form-item-fnc .dir-col, .form-write .form-section-footer .dir-col,
.form-view-result .form-section-footer .dir-col,
.form-view .form-section-footer .dir-col {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

:root {
  --wrap-gap: 20px;
  --fs-xlg: 18px;
  --fs-lg: 16px;
  --fs: 14px;
  --fs-sm: 13px;
}

/* base */
@font-face {
  font-family: "Pretendard";
  font-style: normal;
  font-weight: 300;
  src: url("font/Pretendard-Light.woff2") format("woff2"), url("font/Pretendard-Light.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-style: normal;
  font-weight: 400;
  src: url("font/Pretendard-Regular.woff2") format("woff2"), url("font/Pretendard-Regular.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-style: normal;
  font-weight: 500;
  src: url("font/Pretendard-Medium.woff2") format("woff2"), url("font/Pretendard-Medium.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-style: normal;
  font-weight: 700;
  src: url("font/Pretendard-Bold.woff2") format("woff2"), url("font/Pretendard-Bold.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-style: normal;
  font-weight: 900;
  src: url("font/Pretendard-Black.woff2") format("woff2"), url("font/Pretendard-Black.woff") format("woff");
}
html, body {
  height: 100%;
}

html {
  border: 0;
  outline: 0;
  font-size: 62.5%;
}

body {
  font-size: var(--fs);
  line-height: 1.25;
  font-family: "Pretendard", "맑은고딕", "Malgun Gothic", "Apple Gothic", Dotum, Gulim, sans-serif;
  background-color: transparent;
  color: #333;
  font-weight: 400;
  letter-spacing: -0.06em;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
  width: 100%;
  overflow-x: auto;
  min-width: 1280px;
}
body *::-webkit-scrollbar {
  width: 6px;
  height: 6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
body *::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 2em;
}
body *::-webkit-scrollbar-track {
  width: 16px;
  background-color: transparent;
}

@media (pointer: coarse) {
  body * {
    scrollbar-width: none;
  }
  body *::-webkit-scrollbar {
    display: none;
  }
}
body.noscroll {
  overflow: hidden;
}

::-moz-selection {
  color: #fff;
  background-color: #273640;
}

::selection {
  color: #fff;
  background-color: #273640;
}

::-moz-selection {
  color: #fff;
  background-color: #273640;
}

html, body, nav, section, article, figure, figcaption,
h1, h2, h3, h4, h5, h6,
menu, ul, ol, dl, li, dt, dd,
p, form {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.1em;
}

img {
  margin: 0;
  border: none;
}

ul, ol, dl, li {
  list-style: none;
}

cite, em, address {
  font-style: normal;
}

em {
  font-weight: 700;
  color: #4757E6;
}
em.spot {
  color: #4757E6;
}
em.spot2 {
  color: #4757E6;
}

em b,
strong {
  font-weight: 700;
}

i {
  font-style: normal;
}

iframe {
  border: none;
  outline: 0;
}

a > span {
  cursor: pointer;
}

a {
  text-decoration: none;
  color: #333;
}

a:hover,
a:focus {
  text-decoration: none;
}

table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

table caption {
  height: 0;
  font-size: 0.1em;
  color: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
}

fieldset legend {
  opacity: 0;
  filter: alpha(opacity=0);
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  overflow: hidden;
  font-size: 0;
  line-height: 0;
}

button,
input:not([type=checkbox]),
input:not([type=radio]),
textarea,
select {
  font-family: "Pretendard", "맑은고딕", "Malgun Gothic", "Apple Gothic", Dotum, Gulim, sans-serif;
  font-size: 14px;
  color: #333;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  vertical-align: middle;
  letter-spacing: -0.01em;
}

button {
  border: none;
  background: none;
  cursor: pointer;
  padding: 0;
}
button:disabled {
  cursor: default;
}

pre {
  white-space: pre-wrap;
}

small {
  color: #777;
}

/* animation */
@-webkit-keyframes opacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes opacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes filterall {
  0% {
    opacity: 0;
    margin-top: 0;
  }
  100% {
    opacity: 1;
    height: auto;
    margin-top: 10px;
  }
}
@keyframes filterall {
  0% {
    opacity: 0;
    margin-top: 0;
  }
  100% {
    opacity: 1;
    height: auto;
    margin-top: 10px;
  }
}
@-webkit-keyframes opacityUp {
  0% {
    opacity: 0;
    margin-top: 3%;
  }
  100% {
    opacity: 1;
    margin-top: 0;
  }
}
@keyframes opacityUp {
  0% {
    opacity: 0;
    margin-top: 3%;
  }
  100% {
    opacity: 1;
    margin-top: 0;
  }
}
/*vendors*/
/* -------------------------------------------------
    SORT
------------------------------------------------- */
.sort {
  margin-bottom: 40px;
  font-size: 0;
  margin-left: -10px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.sort a,
.sort button,
.sort .ui-checkboxradio-label {
  display: inline-block;
  font-size: 2.4rem;
  color: #777;
  width: 260px;
  height: 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ddd;
  border-radius: 3em;
  text-align: center;
  margin: 0 0 10px 10px;
  -webkit-transition: -webkit-box-shadow 0.3s;
  transition: -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s;
  transition: box-shadow 0.3s, -webkit-box-shadow 0.3s;
  font-weight: 500;
  padding: 0 20px;
  word-break: keep-all;
}
.sort a:not(.is-active):hover, .sort a:not(.is-active) :focus,
.sort button:not(.is-active):hover,
.sort button:not(.is-active) :focus,
.sort .ui-checkboxradio-label:not(.is-active):hover,
.sort .ui-checkboxradio-label:not(.is-active) :focus {
  border-color: #9196AF;
  background-color: #F8F8F8;
}
.sort .is-active,
.sort .ui-checkboxradio-label.ui-state-active {
  color: #4757E6;
  border-color: #4757E6;
}
.sort .ui-checkboxradio-icon,
.sort .ui-checkboxradio-icon-space {
  display: none;
}
.sort .ui-checkboxradio-icon:after {
  display: none;
}

.ui-sortable .ico-move:hover {
  cursor: move;
}

/* jquery-plugin :  datepicker */
.datepicker-box {
  position: relative;
  display: inline-block;
}

.datepicker-box.block {
  display: block;
}

.datepicker-box + .dash {
  margin: 0 20px 0 -30px !important;
}

input[type=text].datepicker {
  display: inline-block !important;
  width: 190px !important;
  margin-right: 4px;
}

/*.datepicker + .ui-datepicker-trigger {
    position:relative;
    vertical-align:middle;
}*/
.ui-datepicker-trigger {
  display: inline-block;
  width: 30px;
  height: 30px;
  vertical-align: middle;
  padding: 0;
}

.ui-datepicker-trigger img {
  display: block;
  width: 100%;
}

.ui-datepicker,
.calendar {
  background-color: #fff;
  margin-top: -2px;
  border: 1px solid #ccc;
  width: 100%;
  max-width: 300px;
  padding: 20px 10px 10px;
  display: none;
  -webkit-box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  z-index: 1;
}

.ui-datepicker .ui-datepicker-header,
.calendar .calendar-header {
  position: relative;
  padding: 0 70px 0 0;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next,
.calendar .btn-cal-prev,
.calendar .btn-cal-next {
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 30px;
  height: 30px;
  text-indent: -999px;
  background-repeat: no-repeat;
  cursor: pointer;
  background: #333;
  border-radius: 50%;
}

.ui-datepicker .ui-datepicker-prev,
.calendar .btn-cal-prev {
  right: 40px;
}

.ui-datepicker .ui-datepicker-next,
.calendar .btn-cal-next {
  right: 5px;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span,
.calendar .btn-cal-prev span,
.calendar .btn-cal-next span {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -4px;
  margin-left: -3px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.ui-datepicker .ui-datepicker-next span,
.calendar .btn-cal-next span {
  /*left:auto;
  right:50%;
  margin-right:-1px;*/
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.ui-datepicker .ui-datepicker-title,
.calendar .cal-tit {
  font-size: 1.6rem;
  font-weight: 900;
  margin: 0;
  line-height: 30px;
  text-align: left;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 80px;
  vertical-align: middle;
  height: 30px;
  font-size: 1.5rem;
  padding-left: 10px;
  padding-right: 30px;
}

.ui-datepicker select.ui-datepicker-year {
  margin-right: 5px;
}

.ui-datepicker table,
.calendar table {
  width: 100%;
  font-size: 0.9rem;
  border-collapse: collapse;
  margin: 10px 0 0.2em;
  text-align: center;
}

.ui-datepicker th,
.calendar th {
  padding: 0.3em 0.3em;
  color: #333;
  text-align: center;
  /*height:14px;*/
  font-size: 1.4rem;
  font-weight: bold;
  border: 0;
}

.ui-datepicker th.ui-datepicker-week-end span[title=Sunday] {
  color: #EB325D;
}

.ui-datepicker td:first-child a {
  color: #EB325D;
}

.ui-datepicker tr:first-child td {
  border-top: 0;
}

.ui-datepicker td,
.calendar td {
  text-align: center;
  padding: 0.2em 0;
  border: 0;
  height: 14px;
}

.ui-datepicker td span,
.ui-datepicker td a,
.calendar td span,
.calendar td a {
  display: block;
  position: relative;
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 50%;
  text-decoration: none;
  border-bottom: 0;
  margin: 0 auto;
  color: #333;
  font-size: 1.4rem;
}

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}

.due {
  display: inline-block;
  vertical-align: middle;
  margin: 0 10px;
  font-size: 1.5rem;
  color: #333;
  position: relative;
  top: 3px;
}

.ui-datepicker .ui-state-highlight,
.calendar .is-highlight {
  background: #9196AF;
  color: #fff;
  border-radius: 50%;
}

.ui-datepicker .highlight2 {
  background: #6a6f8d;
  color: #fff;
  border-radius: 50%;
}

.ui-datepicker .highlight3 {
  background: #fff;
  border: 2px solid #ffb100;
  line-height: var(--fs);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #000;
}

.datepicker-inline .ui-datepicker,
.calendar-inline .calendar {
  display: block;
  max-width: 100%;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.calendar-lg .bg,
.calendar .bg {
  background-color: #F8F8F8;
}

.calendar-lg th,
.calendar-lg td {
  border: 1px solid #ddd;
}
.calendar-lg th {
  background-color: #F8F8F8;
  padding: 24px 16px;
  font-weight: 700;
}
.calendar-lg td {
  padding: 16px;
  vertical-align: top;
  height: 100px;
}
.calendar-lg td.is-highlight .cal-num {
  border: 1px solid #4757E6;
  background-color: #fff;
  color: #4757E6;
}
.calendar-lg .cal-num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  background-color: #F8F8F8;
}
.calendar-lg .btn-flex-cont {
  margin: 20px 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.calendar-lg .btn-flex-cont .btn {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.calendar-lg tr th:first-child,
.calendar-lg tr td:first-child {
  color: #EB325D;
}
.calendar-lg tr th:last-child,
.calendar-lg tr td:last-child {
  color: #009AEB;
}

/* jquery-plugin dialog */
.ui-widget-overlay {
  position: fixed;
  width: 100%;
  height: 500%;
  top: 0;
  left: 0;
  background: #fff;
  opacity: 0;
  z-index: 99999;
}

.ui-dialog {
  position: absolute;
  padding-bottom: 40px;
  background: #fff;
  top: 140px;
  z-index: 999;
  overflow: auto;
  max-width: calc(100% - 50px);
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}

.ui-dialog .ui-dialog-titlebar {
  position: relative;
  height: 150px;
  padding: 50px 20px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.ui-dialog .ui-dialog-title {
  display: block;
  height: 70px;
  line-height: 70px;
  text-align: center;
  font-size: 2.8rem;
  font-weight: 700;
}

/*.ui-dialog .ui-dialog-titlebar-close {
    position:absolute;
    width:30px;
    height:30px;
    overflow:hidden;
    top:0;
    right:10px;
    text-indent:-999px;
}
.ui-dialog .ui-dialog-titlebar-close  {
    position: absolute;
	top:20px;
	right:20px;
    width: 30px;
    height: 30px;
    text-indent: -9999px;
    overflow: hidden;
}
.ui-dialog .ui-dialog-titlebar-close:before,
.ui-dialog .ui-dialog-titlebar-close:after {
    content: "";
    position: absolute;
    width: 140%;
    height: 2px;
    background: $bk;
	top:50%;
	left:50%;
	margin-left:-70%;
	margin-top:-1px;
}*/
.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  width: 30px;
  height: 30px;
  overflow: hidden;
  text-indent: -999px;
  top: 15px;
  right: 15px;
  background: rgba(255, 255, 255, 0.3);
}

.ui-dialog .ui-dialog-titlebar-close:before,
.ui-dialog .ui-dialog-titlebar-close:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: #333;
  top: 50%;
  left: 50%;
  margin-left: -50%;
  margin-top: -1px;
}

.ui-dialog .ui-dialog-titlebar-close:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.ui-dialog .ui-dialog-titlebar-close:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  padding: 0 40px;
  background: none;
  overflow: auto;
}

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  margin-top: 20px;
  text-align: center;
}

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button {
  display: inline-block;
  padding: 0 15px;
  height: 60px;
  line-height: 58px;
  font-size: 1.8rem;
  min-width: 80px;
  border-radius: 2em;
  margin: 0 3px;
  /*    border:1px solid #333;
  */
  padding: 0 50px;
  height: 60px;
  line-height: 58px;
  font-size: 2rem;
}

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset .spot {
  background-color: #4757E6;
  border-color: #4757E6;
  color: #fff;
}

.ui-dialog .ui-resizable-se {
  width: 12px;
  height: 12px;
  right: -5px;
  bottom: -5px;
  background-position: var(--fs);
}

.ui-draggable .ui-dialog-titlebar {
  cursor: move;
}

/* ui-autocomplete */
.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
  z-index: 9999;
  max-height: 300px;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
}

.ui-autocomplete.ui-widget-content {
  border: 1px solid #333;
  background: #fff;
}

.ui-autocomplete .ui-menu-item:hover,
.ui-autocomplete .ui-menu-item:focus {
  background: #F8F8F8;
}

.ui-autocomplete .ui-menu-item > div {
  padding: 6px 16px;
}

.ui-autocomplete .ui-menu-item .ui-state-hover,
.ui-autocomplete .ui-menu-item .ui-state-focus,
.ui-autocomplete .ui-menu-item .ui-state-active {
  display: block;
  background: rgba(71, 87, 230, 0.1);
  border: none;
}

/*.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
    border: 1px solid #003eff;
    background: $spot;
    font-weight: normal;
    color: #ffffff;
}*/
.ui-helper-hidden-accessible {
  position: absolute;
  left: -9999px;
}

.autocomplete-area {
  position: relative;
}

.ui-menu {
  max-width: 100%;
  word-break: break-all;
}

/* swiper */
.swiper-pagination-bullet-active {
  background-color: #4757E6;
}

.swiper-fnc .swiper-button-prev,
.swiper-fnc .swiper-button-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin: 0;
  display: block;
  width: 48px;
  height: 48px;
  text-indent: -99999px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 3;
}
.swiper-fnc .swiper-button-prev:hover:after, .swiper-fnc .swiper-button-prev:after,
.swiper-fnc .swiper-button-next:hover:after,
.swiper-fnc .swiper-button-next:after {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../image/common/arr.svg") center center no-repeat;
}
.swiper-fnc .swiper-button-prev.swiper-button-disabled,
.swiper-fnc .swiper-button-next.swiper-button-disabled {
  display: none;
}
.swiper-fnc .swiper-button-prev {
  left: 0;
}
.swiper-fnc .swiper-button-prev::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.swiper-fnc .swiper-button-next {
  right: 0;
}

.tagify__input {
  font-weight: 400;
  color: #777;
  margin-left: 0;
  padding-left: 8px;
  margin: 2px 0 2px 4px;
}
.tagify__input::before {
  color: #9196AF;
}

.tagify__tag {
  border: 1px solid #4757E6;
  border-radius: 16px;
  color: #4757E6;
  padding: 0 8px;
  margin: 2px 0 2px 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #4757E6;
}
.tagify__tag > div {
  color: #4757E6;
}
.tagify__tag > div::before {
  display: none;
}
.tagify__tag .tagify__tag__removeBtn {
  margin: 0;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.tagify__tag .tagify__tag__removeBtn {
  -webkit-mask-position: -304px 0px;
          mask-position: -304px 0px;
}
.tagify__tag .tagify__tag__removeBtn:hover {
  background: none;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.tagify__tag .tagify__tag__removeBtn:hover {
  -webkit-mask-position: -304px 0px;
          mask-position: -304px 0px;
}
.tagify__tag .tagify__tag__removeBtn::after {
  content: " ";
  display: none;
}

.input-tag {
  border: none;
}

/*component*/
.btn-cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  margin-top: 80px;
  margin-bottom: 100px;
}
.btn-cont.al {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.btn-cont.ar {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.btn-flex-cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  margin-top: 35px;
  margin-bottom: 100px;
}
.btn-flex-cont .btn,
.btn-flex-cont .btn-sm,
.btn-flex-cont .btn-lg,
.btn-flex-cont .btn-ico {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.btn-flex-cont .l-area,
.btn-flex-cont .r-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  gap: 8px;
}
.btn-flex-cont .l-area > .btn,
.btn-flex-cont .l-area > .btn-sm,
.btn-flex-cont .l-area > .btn-lg,
.btn-flex-cont .l-area > .btn-ico,
.btn-flex-cont .r-area > .btn,
.btn-flex-cont .r-area > .btn-sm,
.btn-flex-cont .r-area > .btn-lg,
.btn-flex-cont .r-area > .btn-ico {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.btn-flex-cont .r-area {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.btn,
.btn-sm,
.btn-lg,
.btn-xsm {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4px;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
  border: 1px solid #ddd;
  border-radius: 4px;
}

.btn {
  padding: 8px 16px;
  height: 40px;
  font-size: 14px;
}

.btn-xsm {
  padding: 4px 8px;
  height: 24px;
  font-size: 12px;
  border-radius: 2em;
}

.btn-sm {
  padding: 4px 12px;
  height: 32px;
  line-height: 30px;
  font-size: 13px;
}

.btn-lg {
  padding: 8px 32px;
  height: 56px;
  font-size: 16px;
}

/* btn : default */
.btn,
.btn-sm,
.btn-lg,
.btn-xsm {
  background-color: #fff;
  border: 1px solid #ddd;
  color: #333;
}
.btn:hover, .btn:focus,
.btn-sm:hover,
.btn-sm:focus,
.btn-lg:hover,
.btn-lg:focus,
.btn-xsm:hover,
.btn-xsm:focus {
  border-color: #d0d0d0;
}
.btn:disabled,
.btn-sm:disabled,
.btn-lg:disabled,
.btn-xsm:disabled {
  opacity: 0.3;
  pointer-events: none;
}

/* btn : spot */
.btn.spot,
.btn-sm.spot,
.btn-lg.spot,
.btn-xsm.spot {
  border-color: #4757E6;
  color: #4757E6;
  font-weight: 400;
}
.btn.spot:hover, .btn.spot:focus,
.btn-sm.spot:hover,
.btn-sm.spot:focus,
.btn-lg.spot:hover,
.btn-lg.spot:focus,
.btn-xsm.spot:hover,
.btn-xsm.spot:focus {
  background-color: rgba(71, 87, 230, 0.05);
}

/* btn : spot2 */
.btn.spot2,
.btn-sm.spot2,
.btn-lg.spot2,
.btn-xsm.spot2 {
  background-color: #4757E6;
  border-color: #4757E6;
  color: #fff;
  font-weight: 700;
}
.btn.spot2:hover, .btn.spot2:focus,
.btn-sm.spot2:hover,
.btn-sm.spot2:focus,
.btn-lg.spot2:hover,
.btn-lg.spot2:focus,
.btn-xsm.spot2:hover,
.btn-xsm.spot2:focus {
  color: #fff;
  border-color: #3143e3;
  background-color: #3143e3;
}

/* btn : spot3 */
.btn.spot3,
.btn-sm.spot3,
.btn-lg.spot3,
.btn-xsm.spot3 {
  border-color: #EB325D;
  color: #EB325D;
}
.btn.spot3:hover, .btn.spot3:focus,
.btn-sm.spot3:hover,
.btn-sm.spot3:focus,
.btn-lg.spot3:hover,
.btn-lg.spot3:focus,
.btn-xsm.spot3:hover,
.btn-xsm.spot3:focus {
  background-color: rgba(235, 50, 93, 0.05);
}

/* btn : spot4 */
.btn.spot4,
.btn-sm.spot4,
.btn-lg.spot4,
.btn-xsm.spot4 {
  background-color: #EB325D;
  border-color: #EB325D;
  color: #fff;
  font-weight: 700;
}
.btn.spot4:hover, .btn.spot4:focus,
.btn-sm.spot4:hover,
.btn-sm.spot4:focus,
.btn-lg.spot4:hover,
.btn-lg.spot4:focus,
.btn-xsm.spot4:hover,
.btn-xsm.spot4:focus {
  color: #fff;
  border-color: #d51542;
  background-color: #d51542;
}

.btn-ico,
.btn-ico-lg,
.btn-ico-sm {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid #ddd;
  padding: 0;
  background-color: #fff;
  border-radius: 4px;
  vertical-align: middle;
  font-size: 0;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}
.btn-ico::after,
.btn-ico-lg::after,
.btn-ico-sm::after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
  z-index: 1;
}
.btn-ico.round,
.btn-ico-lg.round,
.btn-ico-sm.round {
  border-radius: 50%;
}
.btn-ico.bk,
.btn-ico-lg.bk,
.btn-ico-sm.bk {
  background-color: rgba(51, 51, 51, 0.6);
  border: none;
}
.btn-ico.bk:hover,
.btn-ico-lg.bk:hover,
.btn-ico-sm.bk:hover {
  background-color: rgba(51, 51, 51, 0.9);
}
.btn-ico.spot,
.btn-ico-lg.spot,
.btn-ico-sm.spot {
  border-color: #4757E6;
}
.btn-ico.spot2,
.btn-ico-lg.spot2,
.btn-ico-sm.spot2 {
  border-color: #4757E6;
  background-color: #4757E6;
}

.btn-ico-lg {
  width: 56px;
  height: 56px;
}

.btn-ico-sm {
  width: 28px;
  height: 28px;
}

.btn-like.btn-ico-lg.is-active .ico-like,
.btn-like.btn-ico-lg.btn-like-on .ico-like {
  width: 24px;
  height: 24px;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  background-color: #4757E6;
}
.btn-like.btn-ico-lg.is-active .ico-like,
.btn-like.btn-ico-lg.btn-like-on .ico-like {
  -webkit-mask-position: -72px 0px;
          mask-position: -72px 0px;
}

.btn-like.btn-ico.is-active .ico-sm-like,
.btn-like.btn-ico.btn-like-on .ico-sm-like,
.btn-like.btn-ico-sm.is-active .ico-sm-like,
.btn-like.btn-ico-sm.btn-like-on .ico-sm-like {
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #4757E6;
}
.btn-like.btn-ico.is-active .ico-sm-like,
.btn-like.btn-ico.btn-like-on .ico-sm-like,
.btn-like.btn-ico-sm.is-active .ico-sm-like,
.btn-like.btn-ico-sm.btn-like-on .ico-sm-like {
  -webkit-mask-position: -48px 0px;
          mask-position: -48px 0px;
}

.btn-like.ico-like.is-active,
.btn-like.ico-like.btn-like-on {
  width: 24px;
  height: 24px;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  background-color: #4757E6;
}
.btn-like.ico-like.is-active,
.btn-like.ico-like.btn-like-on {
  -webkit-mask-position: -72px 0px;
          mask-position: -72px 0px;
}

.btn-like.ico-sm-like.is-active,
.btn-like.ico-sm-like.btn-like-on {
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #4757E6;
}
.btn-like.ico-sm-like.is-active,
.btn-like.ico-sm-like.btn-like-on {
  -webkit-mask-position: -48px 0px;
          mask-position: -48px 0px;
}

.btn-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  width: 100%;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 0 32px;
  height: 56px;
  line-height: 54px;
  font-size: 16px;
  background-color: #fff;
  border: 1px solid #ddd;
  color: #333;
  background: url(../image/common/btn) no-repeat;
}
.btn-more:after {
  content: " ";
  display: block;
  width: 16px;
  height: 16px;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.btn-more:after {
  -webkit-mask-position: -256px 0px;
          mask-position: -256px 0px;
}
.btn-more:hover, .btn-more:focus {
  border-color: #d0d0d0;
}
.btn-more:disabled {
  opacity: 0.5;
  pointer-events: none;
}

.btn-list {
  display: block;
  width: 100%;
  text-align: left;
  padding: 12px 16px;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #eee;
  margin-bottom: 8px;
  color: #777;
}

.is-indicate {
  position: relative;
  overflow: visible;
}
.is-indicate:hover::before, .is-indicate:hover::after, .is-indicate:focus::before, .is-indicate:focus::after {
  -webkit-animation: none;
          animation: none;
  display: none;
}
.is-indicate::after {
  content: "";
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 6px solid #4757E6;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: indicate 1.5s infinite;
          animation: indicate 1.5s infinite;
}

@-webkit-keyframes indicate {
  0% {
    width: 0;
    height: 0;
    opacity: 1;
  }
  100% {
    width: 120px;
    height: 120px;
    opacity: 0;
  }
}

@keyframes indicate {
  0% {
    width: 0;
    height: 0;
    opacity: 1;
  }
  100% {
    width: 120px;
    height: 120px;
    opacity: 0;
  }
}
.input-flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.input-flex-box input[type=text],
.input-flex-box input[type=password],
.input-flex-box input[type=number],
.input-flex-box input[type=email],
.input-flex-box input[type=tel],
.input-flex-box input[type=time],
.input-flex-box input[type=date],
.input-flex-box input[type=num],
.input-flex-box select {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.input-flex-box + .msg-error {
  padding: 0 8px;
}

.flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.flex-box.col2 {
  gap: 12px 0;
}
.flex-box.col2 .checkradio {
  -ms-flex-preferred-size: 0 auto;
      flex-basis: 0 auto;
  width: 50%;
  margin-right: 0;
}

select {
  border: 1px solid #ddd;
  box-sizing: border-box;
  height: 40px;
  padding: 0 32px 0 16px;
  max-width: 100%;
  border-radius: 4px;
  -webkit-appearance: none;
  -moz-appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: url("../image/common/sel_arr.svg") center right no-repeat #fff;
}
select:disabled {
  opacity: 0.5;
}

select::-ms-expand {
  display: none;
}

.lnb-sel {
  font-size: 18px;
  font-weight: 700;
  border: none;
  border-radius: 0;
  padding: 0;
  padding-right: 28px;
  height: auto;
  background: url("../image/common/sel_lnb.svg") center right no-repeat;
}

.lnb-sel:focus {
  border: none;
}

input[type=text],
input[type=password],
input[type=number],
input[type=email],
input[type=tel],
input[type=time],
input[type=date] {
  border-radius: 4px;
  padding: 0 16px;
  max-width: 100%;
  width: 320px;
  height: 40px;
  border: 1px solid #ddd;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #9196AF;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #9196AF;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #9196AF;
}

input::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #9196AF;
}

input::placeholder,
textarea::placeholder {
  color: #9196AF;
}

input[type=time] {
  width: 200px;
}

input[type=number] {
  padding: 0 8px;
  -moz-appearance: textfield;
  width: auto;
  text-align: center;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

input[type=file],
input[type=file]:hover {
  padding: 0;
  border: none;
}

input[type=date] {
  width: 140px;
}

.date-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px 8px;
}
.date-box input[type=date] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 140px;
}

input[readonly]:not(.datepicker),
input[readonly]:not(.datepicker):hover,
input[readonly]:not(.datepicker):focus,
input[disabled]:not(.datepicker),
input[disabled]:not(.datepicker):hover,
input[disabled]:not(.datepicker):focus,
textarea[disabled] {
  background: #F8F8F8;
  -webkit-box-shadow: none;
          box-shadow: none;
  pointer-events: none;
}

input[type=file]:hover {
  border: none;
}

select:focus,
input:focus,
textarea:focus {
  border: 1px solid #4757E6;
  outline: none;
}

textarea {
  display: block;
  width: 100%;
  padding: 12px 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  border-color: #ddd;
  border-radius: 4px;
}

textarea:focus[disabled] {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.input-box {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #ddd;
  padding-right: 16px;
}
.input-box input {
  border: none;
}

.input-custom-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.input-custom-area label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #ddd;
  border-radius: 4px;
  overflow: hidden;
}
.input-custom-area label input,
.input-custom-area label select {
  border: none;
}
.input-custom-area label span {
  display: inline-block;
  background-color: #F8F8F8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 40px;
  vertical-align: middle;
  padding: 0 12px;
  border-left: 1px solid #ddd;
}

/*checkbox, radio */
.checkradio {
  display: inline-block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  margin-right: 36px;
  min-width: 20px;
  min-height: 20px;
  vertical-align: middle;
  overflow: hidden;
  word-break: keep-all;
}
.checkradio:only-child, .checkradio:last-child {
  margin-right: 0;
}
.checkradio input[type=checkbox],
.checkradio input[type=radio] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.checkradio input[type=checkbox] ~ label,
.checkradio input[type=radio] ~ label {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-right: 4px;
  min-width: 0;
  padding-left: 28px;
  min-height: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  word-break: normal;
}
.checkradio input[type=checkbox] ~ label:before,
.checkradio input[type=radio] ~ label:before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 20px;
  height: 20px;
  background: #fff;
  border: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.checkradio input[type=checkbox] ~ label.txt-hide,
.checkradio input[type=radio] ~ label.txt-hide {
  position: relative;
  top: auto;
  left: auto;
  overflow: hidden;
  width: 20px;
  height: 20px;
  font-size: 0;
  padding-left: 0;
  line-height: 1.5;
  clip: rect(0 0 0 0);
  white-space: normal;
  text-indent: 0;
}
.checkradio input[type=checkbox] ~ label.txt-hide:before,
.checkradio input[type=radio] ~ label.txt-hide:before {
  margin-right: 0;
}
.checkradio input[type=checkbox]:disabled ~ label,
.checkradio input[type=radio]:disabled ~ label {
  color: #9196AF;
  pointer-events: none;
  opacity: 0.5;
}
.checkradio input[type=checkbox] ~ label:after {
  content: " ";
  position: absolute;
  top: 4px;
  left: 8px;
  width: 6px;
  height: 10px;
  border-bottom: 2px solid #9196AF;
  border-right: 2px solid #9196AF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: center center;
          transform-origin: center center;
}
.checkradio input[type=checkbox]:checked ~ label:before, .checkradio input[type=checkbox]:checked ~ label:after {
  border-color: #4757E6;
}
.checkradio input[type=radio] ~ label:before, .checkradio input[type=radio] ~ label:after {
  border-radius: 50%;
}
.checkradio input[type=radio] ~ label:after {
  content: " ";
  position: absolute;
  display: block;
  top: 5px;
  left: 5px;
  width: 10px;
  height: 10px;
  background: #9196AF;
}
.checkradio input[type=radio]:checked ~ label:before {
  border-color: #4757E6;
}
.checkradio input[type=radio]:checked ~ label:after {
  background-color: #4757E6;
}

.checkradio-toggle {
  display: inline-block;
  position: relative;
  font-size: 0;
  vertical-align: middle;
  overflow: hidden;
}
.checkradio-toggle input[type=checkbox],
.checkradio-toggle input[type=radio] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.checkradio-toggle input[type=checkbox] ~ label,
.checkradio-toggle input[type=radio] ~ label {
  position: relative;
  display: inline-block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px;
  height: 20px;
  width: 40px;
  background: #ddd;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  font-size: 1.6rem;
  vertical-align: middle;
  font-size: 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  word-break: keep-all;
}
.checkradio-toggle input[type=checkbox] ~ label:focus,
.checkradio-toggle input[type=radio] ~ label:focus {
  outline: none;
}
.checkradio-toggle input[type=checkbox] ~ label:before,
.checkradio-toggle input[type=radio] ~ label:before {
  content: " ";
  position: absolute;
  display: block;
  left: 22px;
  top: 2px;
  width: 16px;
  height: 16px;
  background: #fff;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 50%;
  -webkit-transition: left 0.3s;
  transition: left 0.3s;
}
.checkradio-toggle input[type=checkbox]:checked ~ label,
.checkradio-toggle input[type=radio]:checked ~ label {
  background-color: #4757E6;
}
.checkradio-toggle input[type=checkbox]:checked ~ label:before,
.checkradio-toggle input[type=radio]:checked ~ label:before {
  left: 2px;
}
.checkradio-toggle input[type=checkbox]:disabled ~ label,
.checkradio-toggle input[type=radio]:disabled ~ label {
  color: #777;
  background-color: #ddd;
}
.checkradio-toggle input[type=checkbox]:checked:disabled ~ label,
.checkradio-toggle input[type=radio]:checked:disabled ~ label {
  background-color: #4757E6;
  opacity: 0.5;
}
.checkradio-toggle input[type=radio] + label:before, .checkradio-toggle input[type=radio] + label:after {
  border-radius: 50%;
}

.checkradio-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px 20px;
}
.checkradio-area.col6 .checkradio {
  -ms-flex-preferred-size: calc(16.6666666667% - 20px);
      flex-basis: calc(16.6666666667% - 20px);
}
.checkradio-area .checkradio {
  margin: 0;
}

.checkradio-custom-area {
  font-size: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.checkradio-custom-area .checkradio {
  margin: 0;
}
.checkradio-custom-area .checkradio input[type=checkbox] ~ label,
.checkradio-custom-area .checkradio input[type=radio] ~ label {
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid #ddd;
  color: #333;
  height: 40px;
  line-height: 38px;
  border-radius: 4px;
  padding-left: 16px;
  padding-right: 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  letter-spacing: -0.3px;
  margin-right: 0;
}
.checkradio-custom-area .checkradio input[type=checkbox] ~ label::before, .checkradio-custom-area .checkradio input[type=checkbox] ~ label::after,
.checkradio-custom-area .checkradio input[type=radio] ~ label::before,
.checkradio-custom-area .checkradio input[type=radio] ~ label::after {
  display: none;
}
.checkradio-custom-area .checkradio input[type=checkbox]:checked ~ label,
.checkradio-custom-area .checkradio input[type=radio]:checked ~ label {
  color: #4757E6;
  border-color: #4757E6;
  font-weight: 700;
  letter-spacing: -0.35px;
  margin: 0;
}

.checkradio-custom-block-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.checkradio-custom-block-area .checkradio {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0;
  min-height: 48px;
  padding: 16px;
  gap: 4px 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  border-radius: 4px;
}
.checkradio-custom-block-area .checkradio input[type=checkbox] ~ label,
.checkradio-custom-block-area .checkradio input[type=radio] ~ label {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  width: 100%;
  border: 1px solid #eee;
  border-radius: 4px;
  text-indent: -99999px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #777;
}
.checkradio-custom-block-area .checkradio input[type=checkbox] ~ label::before, .checkradio-custom-block-area .checkradio input[type=checkbox] ~ label::after,
.checkradio-custom-block-area .checkradio input[type=radio] ~ label::before,
.checkradio-custom-block-area .checkradio input[type=radio] ~ label::after {
  display: none;
}
.checkradio-custom-block-area .checkradio input[type=checkbox]:checked ~ label,
.checkradio-custom-block-area .checkradio input[type=radio]:checked ~ label {
  color: #333;
  border-color: #4757E6;
  margin: 0;
}
.checkradio-custom-block-area .checkradio input[type=checkbox]:checked ~ .txt-area,
.checkradio-custom-block-area .checkradio input[type=radio]:checked ~ .txt-area {
  color: #333;
}
.checkradio-custom-block-area .checkradio.bk input[type=checkbox]:checked ~ label,
.checkradio-custom-block-area .checkradio.bk input[type=radio]:checked ~ label {
  color: #333;
  border-color: #333;
  margin: 0;
}
.checkradio-custom-block-area .relative-z {
  position: relative;
  z-index: 1;
}
.checkradio-custom-block-area .txt-area {
  font-size: 14px;
  color: #777;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.checkradio-custom-block-area .txt-area .label-area {
  margin-bottom: 8px;
}
.checkradio-custom-block-area .checkradio-fnc {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}

.checkradio-option {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 4px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 0.4;
}
.checkradio-option::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: transparent;
}

.checkradio input:checked ~ .checkradio-option {
  opacity: 1;
}
.checkradio input:checked ~ .checkradio-option::before {
  display: none;
}

.checkradio:has(input:checked) + .checkradio-option {
  opacity: 1;
}
.checkradio:has(input:checked) + .checkradio-option::before {
  display: none;
}

.ico-sch {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-sch.spot {
  background-color: #4757E6;
}
.ico-sch.wh {
  background-color: #0e0b0b;
}
.ico-sch.gr {
  background-color: #9196AF;
}
.ico-sch:disabled, .ico-sch.disabled {
  opacity: 0.5;
}
.ico-sch {
  -webkit-mask-position: 0px 0px;
          mask-position: 0px 0px;
}
.ico-user {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-user.spot {
  background-color: #4757E6;
}
.ico-user.wh {
  background-color: #0e0b0b;
}
.ico-user.gr {
  background-color: #9196AF;
}
.ico-user:disabled, .ico-user.disabled {
  opacity: 0.5;
}
.ico-user {
  -webkit-mask-position: -24px 0px;
          mask-position: -24px 0px;
}
.ico-like {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-like.spot {
  background-color: #4757E6;
}
.ico-like.wh {
  background-color: #0e0b0b;
}
.ico-like.gr {
  background-color: #9196AF;
}
.ico-like:disabled, .ico-like.disabled {
  opacity: 0.5;
}
.ico-like {
  -webkit-mask-position: -48px 0px;
          mask-position: -48px 0px;
}
.ico-likeOn {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-likeOn.spot {
  background-color: #4757E6;
}
.ico-likeOn.wh {
  background-color: #0e0b0b;
}
.ico-likeOn.gr {
  background-color: #9196AF;
}
.ico-likeOn:disabled, .ico-likeOn.disabled {
  opacity: 0.5;
}
.ico-likeOn {
  -webkit-mask-position: -72px 0px;
          mask-position: -72px 0px;
}
.ico-filter {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-filter.spot {
  background-color: #4757E6;
}
.ico-filter.wh {
  background-color: #0e0b0b;
}
.ico-filter.gr {
  background-color: #9196AF;
}
.ico-filter:disabled, .ico-filter.disabled {
  opacity: 0.5;
}
.ico-filter {
  -webkit-mask-position: -96px 0px;
          mask-position: -96px 0px;
}
.ico-down {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-down.spot {
  background-color: #4757E6;
}
.ico-down.wh {
  background-color: #0e0b0b;
}
.ico-down.gr {
  background-color: #9196AF;
}
.ico-down:disabled, .ico-down.disabled {
  opacity: 0.5;
}
.ico-down {
  -webkit-mask-position: -120px 0px;
          mask-position: -120px 0px;
}
.ico-lock {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-lock.spot {
  background-color: #4757E6;
}
.ico-lock.wh {
  background-color: #0e0b0b;
}
.ico-lock.gr {
  background-color: #9196AF;
}
.ico-lock:disabled, .ico-lock.disabled {
  opacity: 0.5;
}
.ico-lock {
  -webkit-mask-position: -144px 0px;
          mask-position: -144px 0px;
}
.ico-newwin {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-newwin.spot {
  background-color: #4757E6;
}
.ico-newwin.wh {
  background-color: #0e0b0b;
}
.ico-newwin.gr {
  background-color: #9196AF;
}
.ico-newwin:disabled, .ico-newwin.disabled {
  opacity: 0.5;
}
.ico-newwin {
  -webkit-mask-position: -168px 0px;
          mask-position: -168px 0px;
}
.ico-cal {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-cal.spot {
  background-color: #4757E6;
}
.ico-cal.wh {
  background-color: #0e0b0b;
}
.ico-cal.gr {
  background-color: #9196AF;
}
.ico-cal:disabled, .ico-cal.disabled {
  opacity: 0.5;
}
.ico-cal {
  -webkit-mask-position: -192px 0px;
          mask-position: -192px 0px;
}
.ico-edit {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-edit.spot {
  background-color: #4757E6;
}
.ico-edit.wh {
  background-color: #0e0b0b;
}
.ico-edit.gr {
  background-color: #9196AF;
}
.ico-edit:disabled, .ico-edit.disabled {
  opacity: 0.5;
}
.ico-edit {
  -webkit-mask-position: -216px 0px;
          mask-position: -216px 0px;
}
.ico-link {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-link.spot {
  background-color: #4757E6;
}
.ico-link.wh {
  background-color: #0e0b0b;
}
.ico-link.gr {
  background-color: #9196AF;
}
.ico-link:disabled, .ico-link.disabled {
  opacity: 0.5;
}
.ico-link {
  -webkit-mask-position: -240px 0px;
          mask-position: -240px 0px;
}
.ico-share {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-share.spot {
  background-color: #4757E6;
}
.ico-share.wh {
  background-color: #0e0b0b;
}
.ico-share.gr {
  background-color: #9196AF;
}
.ico-share:disabled, .ico-share.disabled {
  opacity: 0.5;
}
.ico-share {
  -webkit-mask-position: -264px 0px;
          mask-position: -264px 0px;
}
.ico-zoom {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-zoom.spot {
  background-color: #4757E6;
}
.ico-zoom.wh {
  background-color: #0e0b0b;
}
.ico-zoom.gr {
  background-color: #9196AF;
}
.ico-zoom:disabled, .ico-zoom.disabled {
  opacity: 0.5;
}
.ico-zoom {
  -webkit-mask-position: -288px 0px;
          mask-position: -288px 0px;
}
.ico-file {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-file.spot {
  background-color: #4757E6;
}
.ico-file.wh {
  background-color: #0e0b0b;
}
.ico-file.gr {
  background-color: #9196AF;
}
.ico-file:disabled, .ico-file.disabled {
  opacity: 0.5;
}
.ico-file {
  -webkit-mask-position: -312px 0px;
          mask-position: -312px 0px;
}
.ico-login {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-login.spot {
  background-color: #4757E6;
}
.ico-login.wh {
  background-color: #0e0b0b;
}
.ico-login.gr {
  background-color: #9196AF;
}
.ico-login:disabled, .ico-login.disabled {
  opacity: 0.5;
}
.ico-login {
  -webkit-mask-position: -336px 0px;
          mask-position: -336px 0px;
}
.ico-logout {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-logout.spot {
  background-color: #4757E6;
}
.ico-logout.wh {
  background-color: #0e0b0b;
}
.ico-logout.gr {
  background-color: #9196AF;
}
.ico-logout:disabled, .ico-logout.disabled {
  opacity: 0.5;
}
.ico-logout {
  -webkit-mask-position: -360px 0px;
          mask-position: -360px 0px;
}
.ico-plus {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-plus.spot {
  background-color: #4757E6;
}
.ico-plus.wh {
  background-color: #0e0b0b;
}
.ico-plus.gr {
  background-color: #9196AF;
}
.ico-plus:disabled, .ico-plus.disabled {
  opacity: 0.5;
}
.ico-plus {
  -webkit-mask-position: -384px 0px;
          mask-position: -384px 0px;
}
.ico-minus {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-minus.spot {
  background-color: #4757E6;
}
.ico-minus.wh {
  background-color: #0e0b0b;
}
.ico-minus.gr {
  background-color: #9196AF;
}
.ico-minus:disabled, .ico-minus.disabled {
  opacity: 0.5;
}
.ico-minus {
  -webkit-mask-position: -408px 0px;
          mask-position: -408px 0px;
}
.ico-trash, .ico-delete {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-trash.spot, .spot.ico-delete {
  background-color: #4757E6;
}
.ico-trash.wh, .wh.ico-delete {
  background-color: #0e0b0b;
}
.ico-trash.gr, .gr.ico-delete {
  background-color: #9196AF;
}
.ico-trash:disabled, .ico-delete:disabled, .ico-trash.disabled, .disabled.ico-delete {
  opacity: 0.5;
}
.ico-trash, .ico-delete {
  -webkit-mask-position: -432px 0px;
          mask-position: -432px 0px;
}
.ico-close {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-close.spot {
  background-color: #4757E6;
}
.ico-close.wh {
  background-color: #0e0b0b;
}
.ico-close.gr {
  background-color: #9196AF;
}
.ico-close:disabled, .ico-close.disabled {
  opacity: 0.5;
}
.ico-close {
  -webkit-mask-position: -456px 0px;
          mask-position: -456px 0px;
}
.ico-menu {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-menu.spot {
  background-color: #4757E6;
}
.ico-menu.wh {
  background-color: #0e0b0b;
}
.ico-menu.gr {
  background-color: #9196AF;
}
.ico-menu:disabled, .ico-menu.disabled {
  opacity: 0.5;
}
.ico-menu {
  -webkit-mask-position: 0px -24px;
          mask-position: 0px -24px;
}
.ico-move {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-move.spot {
  background-color: #4757E6;
}
.ico-move.wh {
  background-color: #0e0b0b;
}
.ico-move.gr {
  background-color: #9196AF;
}
.ico-move:disabled, .ico-move.disabled {
  opacity: 0.5;
}
.ico-move {
  -webkit-mask-position: -24px -24px;
          mask-position: -24px -24px;
}
.ico-etc {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-etc.spot {
  background-color: #4757E6;
}
.ico-etc.wh {
  background-color: #0e0b0b;
}
.ico-etc.gr {
  background-color: #9196AF;
}
.ico-etc:disabled, .ico-etc.disabled {
  opacity: 0.5;
}
.ico-etc {
  -webkit-mask-position: -48px -24px;
          mask-position: -48px -24px;
}
.ico-help {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-help.spot {
  background-color: #4757E6;
}
.ico-help.wh {
  background-color: #0e0b0b;
}
.ico-help.gr {
  background-color: #9196AF;
}
.ico-help:disabled, .ico-help.disabled {
  opacity: 0.5;
}
.ico-help {
  -webkit-mask-position: -72px -24px;
          mask-position: -72px -24px;
}
.ico-arrow-up {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-arrow-up.spot {
  background-color: #4757E6;
}
.ico-arrow-up.wh {
  background-color: #0e0b0b;
}
.ico-arrow-up.gr {
  background-color: #9196AF;
}
.ico-arrow-up:disabled, .ico-arrow-up.disabled {
  opacity: 0.5;
}
.ico-arrow-up {
  -webkit-mask-position: -96px -24px;
          mask-position: -96px -24px;
}
.ico-arrow-down {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-arrow-down.spot {
  background-color: #4757E6;
}
.ico-arrow-down.wh {
  background-color: #0e0b0b;
}
.ico-arrow-down.gr {
  background-color: #9196AF;
}
.ico-arrow-down:disabled, .ico-arrow-down.disabled {
  opacity: 0.5;
}
.ico-arrow-down {
  -webkit-mask-position: -120px -24px;
          mask-position: -120px -24px;
}
.ico-arrow-left {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-arrow-left.spot {
  background-color: #4757E6;
}
.ico-arrow-left.wh {
  background-color: #0e0b0b;
}
.ico-arrow-left.gr {
  background-color: #9196AF;
}
.ico-arrow-left:disabled, .ico-arrow-left.disabled {
  opacity: 0.5;
}
.ico-arrow-left {
  -webkit-mask-position: -144px -24px;
          mask-position: -144px -24px;
}
.ico-arrow-right {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-arrow-right.spot {
  background-color: #4757E6;
}
.ico-arrow-right.wh {
  background-color: #0e0b0b;
}
.ico-arrow-right.gr {
  background-color: #9196AF;
}
.ico-arrow-right:disabled, .ico-arrow-right.disabled {
  opacity: 0.5;
}
.ico-arrow-right {
  -webkit-mask-position: -168px -24px;
          mask-position: -168px -24px;
}
.ico-bell {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-bell.spot {
  background-color: #4757E6;
}
.ico-bell.wh {
  background-color: #0e0b0b;
}
.ico-bell.gr {
  background-color: #9196AF;
}
.ico-bell:disabled, .ico-bell.disabled {
  opacity: 0.5;
}
.ico-bell {
  -webkit-mask-position: -192px -24px;
          mask-position: -192px -24px;
}
.ico-zoom-in {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-zoom-in.spot {
  background-color: #4757E6;
}
.ico-zoom-in.wh {
  background-color: #0e0b0b;
}
.ico-zoom-in.gr {
  background-color: #9196AF;
}
.ico-zoom-in:disabled, .ico-zoom-in.disabled {
  opacity: 0.5;
}
.ico-zoom-in {
  -webkit-mask-position: -216px -24px;
          mask-position: -216px -24px;
}
.ico-zoom-out {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-zoom-out.spot {
  background-color: #4757E6;
}
.ico-zoom-out.wh {
  background-color: #0e0b0b;
}
.ico-zoom-out.gr {
  background-color: #9196AF;
}
.ico-zoom-out:disabled, .ico-zoom-out.disabled {
  opacity: 0.5;
}
.ico-zoom-out {
  -webkit-mask-position: -240px -24px;
          mask-position: -240px -24px;
}
.ico-image {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-image.spot {
  background-color: #4757E6;
}
.ico-image.wh {
  background-color: #0e0b0b;
}
.ico-image.gr {
  background-color: #9196AF;
}
.ico-image:disabled, .ico-image.disabled {
  opacity: 0.5;
}
.ico-image {
  -webkit-mask-position: -264px -24px;
          mask-position: -264px -24px;
}
.ico-video {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-video.spot {
  background-color: #4757E6;
}
.ico-video.wh {
  background-color: #0e0b0b;
}
.ico-video.gr {
  background-color: #9196AF;
}
.ico-video:disabled, .ico-video.disabled {
  opacity: 0.5;
}
.ico-video {
  -webkit-mask-position: -288px -24px;
          mask-position: -288px -24px;
}
.ico-document {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-document.spot {
  background-color: #4757E6;
}
.ico-document.wh {
  background-color: #0e0b0b;
}
.ico-document.gr {
  background-color: #9196AF;
}
.ico-document:disabled, .ico-document.disabled {
  opacity: 0.5;
}
.ico-document {
  -webkit-mask-position: -312px -24px;
          mask-position: -312px -24px;
}
.ico-question {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-question.spot {
  background-color: #4757E6;
}
.ico-question.wh {
  background-color: #0e0b0b;
}
.ico-question.gr {
  background-color: #9196AF;
}
.ico-question:disabled, .ico-question.disabled {
  opacity: 0.5;
}
.ico-question {
  -webkit-mask-position: -336px -24px;
          mask-position: -336px -24px;
}
.ico-setting {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-setting.spot {
  background-color: #4757E6;
}
.ico-setting.wh {
  background-color: #0e0b0b;
}
.ico-setting.gr {
  background-color: #9196AF;
}
.ico-setting:disabled, .ico-setting.disabled {
  opacity: 0.5;
}
.ico-setting {
  -webkit-mask-position: -360px -24px;
          mask-position: -360px -24px;
}
.ico-storage {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-storage.spot {
  background-color: #4757E6;
}
.ico-storage.wh {
  background-color: #0e0b0b;
}
.ico-storage.gr {
  background-color: #9196AF;
}
.ico-storage:disabled, .ico-storage.disabled {
  opacity: 0.5;
}
.ico-storage {
  -webkit-mask-position: -384px -24px;
          mask-position: -384px -24px;
}
.ico-copy {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-copy.spot {
  background-color: #4757E6;
}
.ico-copy.wh {
  background-color: #0e0b0b;
}
.ico-copy.gr {
  background-color: #9196AF;
}
.ico-copy:disabled, .ico-copy.disabled {
  opacity: 0.5;
}
.ico-copy {
  -webkit-mask-position: -408px -24px;
          mask-position: -408px -24px;
}
.ico-refresh {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-refresh.spot {
  background-color: #4757E6;
}
.ico-refresh.wh {
  background-color: #0e0b0b;
}
.ico-refresh.gr {
  background-color: #9196AF;
}
.ico-refresh:disabled, .ico-refresh.disabled {
  opacity: 0.5;
}
.ico-refresh {
  -webkit-mask-position: -432px -24px;
          mask-position: -432px -24px;
}
.ico-arrow-left-up {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-arrow-left-up.spot {
  background-color: #4757E6;
}
.ico-arrow-left-up.wh {
  background-color: #0e0b0b;
}
.ico-arrow-left-up.gr {
  background-color: #9196AF;
}
.ico-arrow-left-up:disabled, .ico-arrow-left-up.disabled {
  opacity: 0.5;
}
.ico-arrow-left-up {
  -webkit-mask-position: -456px -24px;
          mask-position: -456px -24px;
}
.ico-volume {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-volume.spot {
  background-color: #4757E6;
}
.ico-volume.wh {
  background-color: #0e0b0b;
}
.ico-volume.gr {
  background-color: #9196AF;
}
.ico-volume:disabled, .ico-volume.disabled {
  opacity: 0.5;
}
.ico-volume {
  -webkit-mask-position: 0px -48px;
          mask-position: 0px -48px;
}
.ico-play {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-play.spot {
  background-color: #4757E6;
}
.ico-play.wh {
  background-color: #0e0b0b;
}
.ico-play.gr {
  background-color: #9196AF;
}
.ico-play:disabled, .ico-play.disabled {
  opacity: 0.5;
}
.ico-play {
  -webkit-mask-position: -24px -48px;
          mask-position: -24px -48px;
}
.ico-time {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-time.spot {
  background-color: #4757E6;
}
.ico-time.wh {
  background-color: #0e0b0b;
}
.ico-time.gr {
  background-color: #9196AF;
}
.ico-time:disabled, .ico-time.disabled {
  opacity: 0.5;
}
.ico-time {
  -webkit-mask-position: -48px -48px;
          mask-position: -48px -48px;
}
.ico-arrow-double-up {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-arrow-double-up.spot {
  background-color: #4757E6;
}
.ico-arrow-double-up.wh {
  background-color: #0e0b0b;
}
.ico-arrow-double-up.gr {
  background-color: #9196AF;
}
.ico-arrow-double-up:disabled, .ico-arrow-double-up.disabled {
  opacity: 0.5;
}
.ico-arrow-double-up {
  -webkit-mask-position: -72px -48px;
          mask-position: -72px -48px;
}
.ico-arrow-double-down {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-arrow-double-down.spot {
  background-color: #4757E6;
}
.ico-arrow-double-down.wh {
  background-color: #0e0b0b;
}
.ico-arrow-double-down.gr {
  background-color: #9196AF;
}
.ico-arrow-double-down:disabled, .ico-arrow-double-down.disabled {
  opacity: 0.5;
}
.ico-arrow-double-down {
  -webkit-mask-position: -96px -48px;
          mask-position: -96px -48px;
}
.ico-mix {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  background-color: #333;
  font-size: 0;
}
.ico-mix.spot {
  background-color: #4757E6;
}
.ico-mix.wh {
  background-color: #0e0b0b;
}
.ico-mix.gr {
  background-color: #9196AF;
}
.ico-mix:disabled, .ico-mix.disabled {
  opacity: 0.5;
}
.ico-mix {
  -webkit-mask-position: -120px -48px;
          mask-position: -120px -48px;
}

.ico-sm-sch {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-sch.spot {
  background-color: #4757E6;
}
.ico-sm-sch.wh {
  background-color: #fff;
}
.ico-sm-sch {
  -webkit-mask-position: 0px 0px;
          mask-position: 0px 0px;
}
.ico-sm-user {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-user.spot {
  background-color: #4757E6;
}
.ico-sm-user.wh {
  background-color: #fff;
}
.ico-sm-user {
  -webkit-mask-position: -16px 0px;
          mask-position: -16px 0px;
}
.ico-sm-like {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-like.spot {
  background-color: #4757E6;
}
.ico-sm-like.wh {
  background-color: #fff;
}
.ico-sm-like {
  -webkit-mask-position: -32px 0px;
          mask-position: -32px 0px;
}
.ico-sm-likeOn {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-likeOn.spot {
  background-color: #4757E6;
}
.ico-sm-likeOn.wh {
  background-color: #fff;
}
.ico-sm-likeOn {
  -webkit-mask-position: -48px 0px;
          mask-position: -48px 0px;
}
.ico-sm-filter {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-filter.spot {
  background-color: #4757E6;
}
.ico-sm-filter.wh {
  background-color: #fff;
}
.ico-sm-filter {
  -webkit-mask-position: -64px 0px;
          mask-position: -64px 0px;
}
.ico-sm-down {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-down.spot {
  background-color: #4757E6;
}
.ico-sm-down.wh {
  background-color: #fff;
}
.ico-sm-down {
  -webkit-mask-position: -80px 0px;
          mask-position: -80px 0px;
}
.ico-sm-lock {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-lock.spot {
  background-color: #4757E6;
}
.ico-sm-lock.wh {
  background-color: #fff;
}
.ico-sm-lock {
  -webkit-mask-position: -96px 0px;
          mask-position: -96px 0px;
}
.ico-sm-newwin {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-newwin.spot {
  background-color: #4757E6;
}
.ico-sm-newwin.wh {
  background-color: #fff;
}
.ico-sm-newwin {
  -webkit-mask-position: -112px 0px;
          mask-position: -112px 0px;
}
.ico-sm-cal {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-cal.spot {
  background-color: #4757E6;
}
.ico-sm-cal.wh {
  background-color: #fff;
}
.ico-sm-cal {
  -webkit-mask-position: -128px 0px;
          mask-position: -128px 0px;
}
.ico-sm-edit {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-edit.spot {
  background-color: #4757E6;
}
.ico-sm-edit.wh {
  background-color: #fff;
}
.ico-sm-edit {
  -webkit-mask-position: -144px 0px;
          mask-position: -144px 0px;
}
.ico-sm-link {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-link.spot {
  background-color: #4757E6;
}
.ico-sm-link.wh {
  background-color: #fff;
}
.ico-sm-link {
  -webkit-mask-position: -160px 0px;
          mask-position: -160px 0px;
}
.ico-sm-share {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-share.spot {
  background-color: #4757E6;
}
.ico-sm-share.wh {
  background-color: #fff;
}
.ico-sm-share {
  -webkit-mask-position: -176px 0px;
          mask-position: -176px 0px;
}
.ico-sm-zoom {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-zoom.spot {
  background-color: #4757E6;
}
.ico-sm-zoom.wh {
  background-color: #fff;
}
.ico-sm-zoom {
  -webkit-mask-position: -192px 0px;
          mask-position: -192px 0px;
}
.ico-sm-file {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-file.spot {
  background-color: #4757E6;
}
.ico-sm-file.wh {
  background-color: #fff;
}
.ico-sm-file {
  -webkit-mask-position: -208px 0px;
          mask-position: -208px 0px;
}
.ico-sm-login {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-login.spot {
  background-color: #4757E6;
}
.ico-sm-login.wh {
  background-color: #fff;
}
.ico-sm-login {
  -webkit-mask-position: -224px 0px;
          mask-position: -224px 0px;
}
.ico-sm-logout {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-logout.spot {
  background-color: #4757E6;
}
.ico-sm-logout.wh {
  background-color: #fff;
}
.ico-sm-logout {
  -webkit-mask-position: -240px 0px;
          mask-position: -240px 0px;
}
.ico-sm-plus {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-plus.spot {
  background-color: #4757E6;
}
.ico-sm-plus.wh {
  background-color: #fff;
}
.ico-sm-plus {
  -webkit-mask-position: -256px 0px;
          mask-position: -256px 0px;
}
.ico-sm-minus {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-minus.spot {
  background-color: #4757E6;
}
.ico-sm-minus.wh {
  background-color: #fff;
}
.ico-sm-minus {
  -webkit-mask-position: -272px 0px;
          mask-position: -272px 0px;
}
.ico-sm-trash, .ico-sm-delete {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-trash.spot, .spot.ico-sm-delete {
  background-color: #4757E6;
}
.ico-sm-trash.wh, .wh.ico-sm-delete {
  background-color: #fff;
}
.ico-sm-trash, .ico-sm-delete {
  -webkit-mask-position: -288px 0px;
          mask-position: -288px 0px;
}
.ico-sm-close {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-close.spot {
  background-color: #4757E6;
}
.ico-sm-close.wh {
  background-color: #fff;
}
.ico-sm-close {
  -webkit-mask-position: -304px 0px;
          mask-position: -304px 0px;
}
.ico-sm-menu {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-menu.spot {
  background-color: #4757E6;
}
.ico-sm-menu.wh {
  background-color: #fff;
}
.ico-sm-menu {
  -webkit-mask-position: 0px -16px;
          mask-position: 0px -16px;
}
.ico-sm-move {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-move.spot {
  background-color: #4757E6;
}
.ico-sm-move.wh {
  background-color: #fff;
}
.ico-sm-move {
  -webkit-mask-position: -16px -16px;
          mask-position: -16px -16px;
}
.ico-sm-etc {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-etc.spot {
  background-color: #4757E6;
}
.ico-sm-etc.wh {
  background-color: #fff;
}
.ico-sm-etc {
  -webkit-mask-position: -32px -16px;
          mask-position: -32px -16px;
}
.ico-sm-help {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-help.spot {
  background-color: #4757E6;
}
.ico-sm-help.wh {
  background-color: #fff;
}
.ico-sm-help {
  -webkit-mask-position: -48px -16px;
          mask-position: -48px -16px;
}
.ico-sm-arrow-up {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-arrow-up.spot {
  background-color: #4757E6;
}
.ico-sm-arrow-up.wh {
  background-color: #fff;
}
.ico-sm-arrow-up {
  -webkit-mask-position: -64px -16px;
          mask-position: -64px -16px;
}
.ico-sm-arrow-down {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-arrow-down.spot {
  background-color: #4757E6;
}
.ico-sm-arrow-down.wh {
  background-color: #fff;
}
.ico-sm-arrow-down {
  -webkit-mask-position: -80px -16px;
          mask-position: -80px -16px;
}
.ico-sm-arrow-left {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-arrow-left.spot {
  background-color: #4757E6;
}
.ico-sm-arrow-left.wh {
  background-color: #fff;
}
.ico-sm-arrow-left {
  -webkit-mask-position: -96px -16px;
          mask-position: -96px -16px;
}
.ico-sm-arrow-right {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-arrow-right.spot {
  background-color: #4757E6;
}
.ico-sm-arrow-right.wh {
  background-color: #fff;
}
.ico-sm-arrow-right {
  -webkit-mask-position: -112px -16px;
          mask-position: -112px -16px;
}
.ico-sm-bell {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-bell.spot {
  background-color: #4757E6;
}
.ico-sm-bell.wh {
  background-color: #fff;
}
.ico-sm-bell {
  -webkit-mask-position: -128px -16px;
          mask-position: -128px -16px;
}
.ico-sm-zoom-in {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-zoom-in.spot {
  background-color: #4757E6;
}
.ico-sm-zoom-in.wh {
  background-color: #fff;
}
.ico-sm-zoom-in {
  -webkit-mask-position: -144px -16px;
          mask-position: -144px -16px;
}
.ico-sm-zoom-out {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-zoom-out.spot {
  background-color: #4757E6;
}
.ico-sm-zoom-out.wh {
  background-color: #fff;
}
.ico-sm-zoom-out {
  -webkit-mask-position: -160px -16px;
          mask-position: -160px -16px;
}
.ico-sm-image {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-image.spot {
  background-color: #4757E6;
}
.ico-sm-image.wh {
  background-color: #fff;
}
.ico-sm-image {
  -webkit-mask-position: -176px -16px;
          mask-position: -176px -16px;
}
.ico-sm-video {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-video.spot {
  background-color: #4757E6;
}
.ico-sm-video.wh {
  background-color: #fff;
}
.ico-sm-video {
  -webkit-mask-position: -192px -16px;
          mask-position: -192px -16px;
}
.ico-sm-document {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-document.spot {
  background-color: #4757E6;
}
.ico-sm-document.wh {
  background-color: #fff;
}
.ico-sm-document {
  -webkit-mask-position: -208px -16px;
          mask-position: -208px -16px;
}
.ico-sm-question {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-question.spot {
  background-color: #4757E6;
}
.ico-sm-question.wh {
  background-color: #fff;
}
.ico-sm-question {
  -webkit-mask-position: -224px -16px;
          mask-position: -224px -16px;
}
.ico-sm-setting {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-setting.spot {
  background-color: #4757E6;
}
.ico-sm-setting.wh {
  background-color: #fff;
}
.ico-sm-setting {
  -webkit-mask-position: -240px -16px;
          mask-position: -240px -16px;
}
.ico-sm-storage {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-storage.spot {
  background-color: #4757E6;
}
.ico-sm-storage.wh {
  background-color: #fff;
}
.ico-sm-storage {
  -webkit-mask-position: -256px -16px;
          mask-position: -256px -16px;
}
.ico-sm-copy {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-copy.spot {
  background-color: #4757E6;
}
.ico-sm-copy.wh {
  background-color: #fff;
}
.ico-sm-copy {
  -webkit-mask-position: -272px -16px;
          mask-position: -272px -16px;
}
.ico-sm-refresh {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-refresh.spot {
  background-color: #4757E6;
}
.ico-sm-refresh.wh {
  background-color: #fff;
}
.ico-sm-refresh {
  -webkit-mask-position: -288px -16px;
          mask-position: -288px -16px;
}
.ico-sm-arrow-left-up {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-arrow-left-up.spot {
  background-color: #4757E6;
}
.ico-sm-arrow-left-up.wh {
  background-color: #fff;
}
.ico-sm-arrow-left-up {
  -webkit-mask-position: -304px -16px;
          mask-position: -304px -16px;
}
.ico-sm-volume {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-volume.spot {
  background-color: #4757E6;
}
.ico-sm-volume.wh {
  background-color: #fff;
}
.ico-sm-volume {
  -webkit-mask-position: 0px -32px;
          mask-position: 0px -32px;
}
.ico-sm-play {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-play.spot {
  background-color: #4757E6;
}
.ico-sm-play.wh {
  background-color: #fff;
}
.ico-sm-play {
  -webkit-mask-position: -16px -32px;
          mask-position: -16px -32px;
}
.ico-sm-time {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-time.spot {
  background-color: #4757E6;
}
.ico-sm-time.wh {
  background-color: #fff;
}
.ico-sm-time {
  -webkit-mask-position: -32px -32px;
          mask-position: -32px -32px;
}
.ico-sm-arrow-double-up {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-arrow-double-up.spot {
  background-color: #4757E6;
}
.ico-sm-arrow-double-up.wh {
  background-color: #fff;
}
.ico-sm-arrow-double-up {
  -webkit-mask-position: -48px -32px;
          mask-position: -48px -32px;
}
.ico-sm-arrow-double-down {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-arrow-double-down.spot {
  background-color: #4757E6;
}
.ico-sm-arrow-double-down.wh {
  background-color: #fff;
}
.ico-sm-arrow-double-down {
  -webkit-mask-position: -64px -32px;
          mask-position: -64px -32px;
}
.ico-sm-mix {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  background-color: #9196AF;
  font-size: 0;
}
.ico-sm-mix.spot {
  background-color: #4757E6;
}
.ico-sm-mix.wh {
  background-color: #fff;
}
.ico-sm-mix {
  -webkit-mask-position: -80px -32px;
          mask-position: -80px -32px;
}

[class^=ico-].back {
  margin-left: 7px;
}

.ico-file-pdf {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  background-image: url("../image/common/ico_file.svg");
  background-repeat: no-repeat;
  background-size: 480px auto;
}
.ico-file-pdf {
  background-position: 0px 0px;
}
.ico-file-hwp {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  background-image: url("../image/common/ico_file.svg");
  background-repeat: no-repeat;
  background-size: 480px auto;
}
.ico-file-hwp {
  background-position: -24px 0px;
}
.ico-file-doc {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  background-image: url("../image/common/ico_file.svg");
  background-repeat: no-repeat;
  background-size: 480px auto;
}
.ico-file-doc {
  background-position: -48px 0px;
}
.ico-file-xls {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  background-image: url("../image/common/ico_file.svg");
  background-repeat: no-repeat;
  background-size: 480px auto;
}
.ico-file-xls {
  background-position: -72px 0px;
}

.ico-move {
  background-color: #d0d0d0;
}

/* label */
.label-area,
.label-bg-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px;
}
.label-area span,
.label-bg-area span {
  -ms-flex-item-align: center;
      align-self: center;
}

.label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 24px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #777;
  background-color: #F8F8F8;
  padding: 0 8px;
  font-size: 13px;
  vertical-align: middle;
  gap: 4px;
}
.label.spot {
  background-color: #4757E6;
  color: #fff;
}
.label.spot2 {
  background-color: #404664;
  border-color: #404664;
  color: #fff;
}
.label.bl {
  background-color: rgba(0, 154, 235, 0.06);
  color: #4757E6;
}
.label.bl.hover:hover {
  background-color: rgba(0, 154, 235, 0.2);
}
.label.gn {
  background-color: rgba(0, 186, 122, 0.05);
  color: #00BA7A;
}
.label.gn.hover:hover {
  background-color: rgba(0, 186, 122, 0.2);
}
.label.rd {
  background-color: rgba(235, 50, 93, 0.06);
  color: #EB325D;
}
.label.rd.hover:hover {
  background-color: rgba(235, 50, 93, 0.2);
}
.label.wh {
  background-color: #fff;
  border: 1px solid #ddd;
}
.label.num {
  font-weight: 700;
  border-radius: 4px;
}
.label.num.spot1 {
  color: #fff;
  background-color: #4757E6;
}
.label.num.spot2 {
  color: #fff;
  background-color: rgba(71, 87, 230, 0.75);
}
.label.num.spot3 {
  color: #fff;
  background-color: rgba(71, 87, 230, 0.5);
}
.label.num.spot4 {
  color: #4757E6;
  background-color: rgba(71, 87, 230, 0.25);
}
.label.num.spot5 {
  color: #4757E6;
  background-color: #ddd;
}
.label.num.sm {
  font-size: 16px;
  height: 16px;
  width: 16px;
  text-align: center;
  font-size: 12px;
  padding: 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.label.round {
  border-radius: 2em;
}
.label.lg {
  height: 32px;
  font-weight: 700;
  padding: 0 16px;
}

.label-state {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  text-indent: -99999px;
  background-color: #eee;
}
.label-state.spot {
  background-color: #4757E6;
}
.label-state.rd {
  background-color: #EB325D;
}
.label-state.bl {
  background-color: #009AEB;
}
.label-state.gn {
  background-color: #00BA7A;
}

.scroll-x {
  overflow-x: auto;
}

.scroll-x table {
  width: 100%;
}

.scroll-y {
  position: relative;
  overflow: auto;
}
.scroll-y.border {
  border-bottom: 1px solid #eee;
  border-top: 1px solid #333;
}
.scroll-y .list-type,
.scroll-y .write-type,
.scroll-y .write-type2,
.scroll-y .info-type,
.scroll-y .view-type {
  height: auto;
}
.scroll-y .list-type table,
.scroll-y .write-type table,
.scroll-y .write-type2 table,
.scroll-y .info-type table,
.scroll-y .view-type table {
  border-top: none;
}
.scroll-y thead {
  position: sticky;
  top: -1px;
  left: 0;
  z-index: 1;
}

table img {
  max-width: 100%;
}
table .txt-del {
  color: #9196AF;
  text-decoration: line-through;
}
table .txt-del a {
  color: #9196AF !important;
}
table .txt-del a:hvoer {
  color: #ddd !important;
}

.list-type,
.write-type,
.write-type2,
.info-type,
.view-type {
  position: relative;
  clear: both;
  word-break: keep-all;
}
.list-type table,
.write-type table,
.write-type2 table,
.info-type table,
.view-type table {
  width: 100%;
  clear: both;
  border-top: 1px solid #333;
}
.list-type th,
.list-type td,
.write-type th,
.write-type td,
.write-type2 th,
.write-type2 td,
.info-type th,
.info-type td,
.view-type th,
.view-type td {
  border-color: #eee;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  word-break: break-all;
}
.list-type th,
.write-type th,
.write-type2 th,
.info-type th,
.view-type th {
  font-weight: 400;
  background-color: #F8F8F8;
}
.list-type + *,
.write-type + *,
.write-type2 + *,
.info-type + *,
.view-type + * {
  margin-top: 40px;
}
.list-type + .bg-box, .list-type + .border-box, .border-box-list > .list-type + li, .list-type + .msg,
.write-type + .bg-box,
.write-type + .border-box,
.border-box-list > .write-type + li,
.write-type + .msg,
.write-type2 + .bg-box,
.write-type2 + .border-box,
.border-box-list > .write-type2 + li,
.write-type2 + .msg,
.info-type + .bg-box,
.info-type + .border-box,
.border-box-list > .info-type + li,
.info-type + .msg,
.view-type + .bg-box,
.view-type + .border-box,
.border-box-list > .view-type + li,
.view-type + .msg {
  margin-top: 20px;
}
.list-type.ac th,
.list-type.ac td,
.write-type.ac th,
.write-type.ac td,
.write-type2.ac th,
.write-type2.ac td,
.info-type.ac th,
.info-type.ac td,
.view-type.ac th,
.view-type.ac td {
  text-align: center;
}

/* table : info-type */
.info-type {
  word-break: break-all;
}
.info-type th,
.info-type td {
  padding: 12px 8px;
  height: 52px;
  border-bottom: 1px solid #eee;
  border-right: 1px solid #eee;
  text-align: center;
}
.info-type th:last-child,
.info-type td:last-child {
  border-right: none;
}
.info-type th {
  background: #F8F8F8;
  padding-top: 12px;
  padding-bottom: 12px;
  color: #555;
}
.info-type th.spot {
  background-color: #eee;
}
.info-type thead th {
  text-align: center;
}
.info-type th.ac,
.info-type td.ac,
.info-type tr.ac th,
.info-type tr.ac td {
  padding: 14px 4px;
  text-align: center;
}
.info-type tr.ac th.al {
  text-align: left;
}
.info-type tr.strong td {
  font-weight: 700;
  font-size: 1.5rem;
  color: #333;
}
.info-type td a:hover,
.info-type td a em {
  text-decoration: underline;
}
.info-type + table {
  margin-top: 10px;
}
.info-type th strong {
  font-size: 1.5rem;
  font-weight: 700;
}
.info-type tbody + tbody tr:first-child th,
.info-type tbody + tbody tr:first-child td {
  border-top: 2px solid #ddd;
}
.info-type tfoot td {
  background-color: #F8F8F8;
}

/* table : list-type */
.list-type {
  overflow-x: auto;
  overflow-y: hidden;
}
.list-type table {
  min-width: 1500px;
  width: 100%;
}
.list-type th,
.list-type td {
  padding: 12px 8px;
  min-height: 44px;
  border-bottom: 1px solid #eee;
  text-align: center;
}
.list-type thead th {
  color: #777;
}
.list-type tbody td {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
}
.list-type tbody td.al > a {
  display: inline-block;
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  width: 100%;
  overflow: hidden;
  max-width: 100%;
  width: auto;
  color: #333;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}
.list-type tbody td.al > a:hover {
  color: #4757E6;
}
.list-type tbody td.al > a + .msg {
  margin-top: 4px;
}
.list-type tbody td.pcta {
  display: table-cell !important;
}
.list-type .btn-cont {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 !important;
  gap: 4px;
}
.list-type.sm {
  font-size: 13px;
}
.list-type.sm th,
.list-type.sm td {
  padding: 12px 8px;
  min-height: 44px;
}
.list-type.sm th {
  font-size: 13px;
}
.list-type .info-quiz {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.list-type .info-quiz .txt-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  line-height: 1.25;
}
.list-type .info-quiz .txt-area small {
  display: block;
  font-size: 12px;
  margin-top: 4px;
}
.list-type .info-quiz .txt-area small:first-child {
  margin-top: 0;
}
.list-type .info-quiz .txt-area cite {
  display: block;
  font-weight: 500;
  margin-top: 2px;
  padding-bottom: 8px;
  border-bottom: 1px solid #eee;
  margin-bottom: 8px;
}
.list-type .info-quiz .info-fnc button {
  padding: 2px 4px;
  background-color: #F8F8F8;
  border-radius: 4px;
  color: #777;
  font-size: var(--fs-sm);
}
.list-type .info-quiz .info-fnc button:hover {
  background-color: #eee;
}
.list-type .info-quiz .info-fnc button i {
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.wrap .list-type table {
  min-width: 1240px;
}

/* write-type */
.required {
  display: inline-block;
  margin-left: 2px;
  width: 7px;
  height: 7px;
  -webkit-animation: opacity 2s infinite alternate;
          animation: opacity 2s infinite alternate;
  color: #EB325D;
}

.txt-option {
  font-size: 12px;
  color: #777;
}

.msg {
  font-size: 12px;
  color: #777;
}

.write-type th, .write-type2 th,
.write-type td,
.write-type2 td {
  border-bottom: 1px solid #ddd;
  text-align: left;
  height: 60px;
  padding: 4px 16px;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.write-type th, .write-type2 th {
  background-color: #F8F8F8;
  border-right: 1px solid #ddd;
  position: relative;
  font-weight: 500;
}
.write-type th.spot, .write-type2 th.spot {
  background-color: #F8F8F8;
}
.write-type td > *, .write-type2 td > * {
  margin-top: 4px;
  margin-bottom: 4px;
}
.write-type td > :not(.block), .write-type2 td > :not(.block), .write-type td > :not(.datepicker-box), .write-type2 td > :not(.datepicker-box) {
  margin-right: 4px;
}
.write-type td > :last-child, .write-type2 td > :last-child {
  margin-right: 0;
}
.write-type td .checkradio, .write-type2 td .checkradio {
  margin-right: 36px;
}
.write-type td fieldset .checkradio, .write-type2 td fieldset .checkradio {
  margin-top: 4px;
  margin-bottom: 4px;
}
.write-type td .checkradio-custom-area .checkradio, .write-type2 td .checkradio-custom-area .checkradio {
  margin-right: 0;
}
.write-type input.q0, .write-type2 input.q0 {
  width: 100px;
}
.write-type input[type=number].q0, .write-type2 input[type=number].q0 {
  width: 100px;
}
.write-type input.q1, .write-type2 input.q1 {
  width: calc((100% - 30px) / 4);
}
.write-type input.q2, .write-type2 input.q2 {
  width: calc((100% - 10px) / 2);
}
.write-type input.q3, .write-type2 input.q3 {
  width: calc((100% - 30px) / 3 * 2);
}
.write-type input.q4, .write-type2 input.q4 {
  width: 100%;
}
.write-type input + .msg, .write-type2 input + .msg, .write-type input + .item-list-box, .write-type2 input + .item-list-box {
  margin-top: 0;
}

.write-type2 table {
  border-top: 1px solid #eee;
}
.write-type2 th,
.write-type2 td {
  border-bottom: 1px solid #eee;
  padding-right: 16px;
}
.write-type2 th {
  background-color: transparent;
  border-right: none;
  border-left: 1px solid #eee;
  padding-left: 16px;
}
.write-type2 th:first-child {
  border-left: none;
  padding-left: 0;
}

/* table : view-type */
.view-type img {
  max-width: 100%;
}
.view-type thead th {
  padding: 24px 0;
  text-align: left;
  background-color: none;
  background: none !important;
  border-bottom: 1px solid #eee;
}
.view-type thead h3 {
  font-size: 18px;
  font-weight: 700;
}
.view-type thead .info-quiz {
  margin-top: 4px;
}
.view-type tbody td {
  padding: 24px 0;
  border-bottom: 1px solid #eee;
}
.view-type .info {
  margin-top: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px 24px;
}
.view-type tfoot td {
  border-top: 1px dashed #ddd;
  background-color: #F8F8F8;
  padding: 24px 40px;
}
.view-type tfoot .txt-area {
  margin-top: 20px;
}

/*board reset*/
#boardContents {
  padding: 40px 0;
}

#boardContents h1,
#boardContents h2,
#boardContents h3,
#boardContents h4,
#boardContents h5,
#boardContents h6 {
  margin: initial;
  padding: initial;
  line-height: 1.8em;
}

#boardContents h1 {
  font-size: 2em;
}

#boardContents h2 {
  font-size: 1.5em;
}

#boardContents h3 {
  font-size: 1.17em;
}

#boardContents h4 {
  font-size: 1em;
}

#boardContents h5 {
  font-size: 0.83em;
}

#boardContents h6 {
  font-size: 0.67em;
}

#boardContents ol,
#boardContents ol li {
  list-style: decimal;
}

#boardContents ul,
#boardContents ul li {
  list-style: disc;
}

#boardContents img {
  max-width: 100%;
  margin: 0 auto;
}

.dim {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 99;
}

.popup, .popup-modal {
  display: none;
  position: fixed;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #333;
  width: 320px;
  max-width: calc(100% - var(--wrap-gap) * 2);
  left: 50%;
  top: 50%;
  padding: 0;
  background-color: #fff;
  z-index: 100;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
  border-radius: 4px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  box-sizing: border-box;
  max-height: calc(100vh - var(--wrap-gap) * 2);
  overflow-y: hidden;
}
.popup .pop-close, .popup-modal .pop-close {
  top: 24px;
  right: 24px;
}
.popup .pop-header, .popup-modal .pop-header,
.popup .pop-body,
.popup-modal .pop-body,
.popup .pop-footer,
.popup-modal .pop-footer {
  padding-left: 24px;
  padding-right: 24px;
}
.popup .pop-header, .popup-modal .pop-header {
  padding-top: 24px;
  position: relative;
}
.popup .pop-header h1, .popup-modal .pop-header h1 {
  display: block;
  font-size: 20px;
  font-weight: 700;
  border-bottom: 1px solid #eee;
  padding-bottom: 12px;
  padding-right: 32px;
}
.popup img, .popup-modal img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}
.popup .pop-body, .popup-modal .pop-body {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-y: auto;
  padding-top: 16px;
  padding-bottom: 24px;
  width: 100%;
}
.popup .pop-body:first-child, .popup-modal .pop-body:first-child {
  padding-top: 64px;
}
.popup .pop-body > *:last-child, .popup-modal .pop-body > *:last-child {
  margin-bottom: 0;
}
.popup .list-type table, .popup-modal .list-type table {
  min-width: 0;
}
.popup .pop-footer, .popup-modal .pop-footer {
  padding-bottom: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.popup .pop-footer > *, .popup-modal .pop-footer > * {
  margin: 0;
}
.popup .pop-footer .btn-flex-cont, .popup-modal .pop-footer .btn-flex-cont {
  margin: 0;
}
.popup .pop-footer.border-top, .popup-modal .pop-footer.border-top {
  border-top: 1px solid #333;
  padding-top: 1.2rem;
}
.popup.w600, .w600.popup-modal {
  width: 600px;
}
.popup.w800, .w800.popup-modal {
  width: 800px;
}
.popup.w900, .w900.popup-modal {
  width: 900px;
}
.popup.w1200, .w1200.popup-modal {
  width: 1200px;
}

.popup-modal-area {
  display: none;
  position: fixed;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  overflow: hidden;
}
.popup-modal-area::before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.2);
}
.popup-modal-area.is-active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.popup-modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  top: auto;
  left: auto;
  -webkit-transform: none;
          transform: none;
}
.popup-modal .pop-body {
  padding-bottom: 24px;
}

.pop-msg-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  gap: 16px;
}
.pop-msg-area .step + .img-area {
  margin-top: -24px;
}
.pop-msg-area .txt-area cite {
  display: block;
  margin-bottom: 4px;
  font-size: var(--fs-lg);
  font-weight: 700;
}
.pop-msg-area .txt-area p {
  color: #777;
}

.pop-close {
  position: absolute;
  width: 24px;
  height: 24px;
  overflow: hidden;
  text-indent: -999px;
  top: 20px;
  right: 20px;
  width: 24px;
  height: 24px;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  background-color: #333;
}
.pop-close {
  -webkit-mask-position: -456px 0px;
          mask-position: -456px 0px;
}

.pop-close.wh {
  width: 24px;
  height: 24px;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  background-color: #fff;
}
.pop-close.wh {
  -webkit-mask-position: -456px 0px;
          mask-position: -456px 0px;
}

.pop-close.lg {
  width: 36px;
  height: 36px;
  -webkit-mask-size: 720px auto;
          mask-size: 720px auto;
}
.pop-close.lg {
  -webkit-mask-position: -684px 0px;
          mask-position: -684px 0px;
}

.popup-zoom {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  overflow-y: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 100;
  box-sizing: border-box;
}

.popup-zoom img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

.popup-zoom .pop-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  height: 64px;
}

.popup-zoom .pop-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: calc(100vh - 64px);
  overflow-y: auto;
}

.popup-item {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  right: 40px;
  bottom: 40px;
  max-width: 300px;
  width: calc(100% - 32px);
  z-index: 100;
  overflow: hidden;
  background-color: #fff;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 20px;
  max-height: calc(100vh - 80px);
}
.popup-item .pop-header {
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
}
.popup-item .pop-header h1 {
  font-size: 16px;
  padding: 0 20px 20px;
}
.popup-item .pop-body {
  padding: 0 20px 20px;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.popup-item .pop-body a {
  display: block;
}
.popup-item .item-img-area img {
  display: block;
  width: 100%;
}
.popup-item .pop-footer {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 20px;
  height: 60px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #F8F8F8;
}
.popup-item .pop-footer .pop-close {
  position: relative;
  right: auto;
  top: auto;
}

.popup-zoom {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 101;
  box-sizing: border-box;
}

.popup-zoom img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

.popup-zoom .pop-header {
  position: relative;
  height: 60px;
  z-index: 10;
}

.popup-zoom .pop-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: calc(100vh - 60px);
  overflow-y: auto;
}

.popup-zoom .pop-body figure {
  min-height: 0;
}

/* -------------------------------------------------
	 COMMON element
------------------------------------------------- */
/* paging */
.paging {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 40px auto;
  gap: 4px;
  overflow: hidden;
  text-align: center;
  font-size: 0;
  overflow-x: auto;
}
.paging li {
  display: inline-block;
  vertical-align: middle;
}
.paging a {
  position: relative;
  display: block;
  color: #777;
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 14px;
  border-radius: 4px;
  border: 1px solid #ddd;
}
.paging a:hover, .paging a:focus {
  color: #333;
}
.paging .pv {
  margin-right: 8px;
}
.paging .fw {
  margin-left: 8px;
}
.paging .txt-hide {
  position: static;
  text-indent: -9999px;
  color: #fff;
  font-size: 0;
}

.paging li.ppv a span:before,
.paging li.ffw a span:before,
.paging li.ppv a span:after,
.paging li.ffw a span:after,
.paging li.pv a span:before,
.paging li.fw a span:before {
  content: "";
  position: absolute;
  display: block;
  width: 8px;
  height: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-top: 2px solid #777;
  border-left: 2px solid #777;
  top: 50%;
  left: 50%;
  -webkit-transform-origin: left top;
          transform-origin: left top;
}

.paging li.pv a span:before,
.paging li.ppv a span:before,
.paging li.ppv a span:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.paging li.fw a span:before,
.paging li.ffw a span:before,
.paging li.ffw a span:after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.paging li.pv a span:before {
  margin-left: -4px;
}

.paging li.fw a span:before {
  margin-left: 4px;
}

.paging li.ppv a span:before {
  margin-left: -8px;
}

.paging li.ppv a span:after {
  margin-left: 0;
}

.paging li.ffw a span:before {
  margin-left: 0;
}

.paging li.ffw a span:after {
  margin-left: 8px;
}

.paging li.disabled a,
.paging li.disabled a:hover,
.paging li.disabled a:focus {
  background-position: 0 0;
}

.paging li a:hover,
.paging li a:focus {
  color: #333;
}

.paging li.ppv a:hover span:before, .paging li.ppv a:focus:before,
.paging li.ffw a:hover span:before, .paging li.ffw a:focus:before,
.paging li.ppv a:hover span:after, .paging li.ppv a:focus:after,
.paging li.ffw a:hover span:after, .paging li.ffw a:focus:after,
.paging li.pv a:hover span:before, .paging li.pv a:focus:before,
.paging li.fw a:hover span:before, .paging li.fw a:focus:before {
  border-color: #333;
}

.paging li.is-active a,
.paging li.is-active a:hover,
.paging li.is-active a:focus {
  color: #4757E6;
  font-weight: 700;
  border-color: #4757E6;
}

.accordion {
  border-top: 2px solid #333;
  margin-top: 15px;
}
.accordion .is-active .accordion-tit-area:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.accordion .is-active .accoridon-tit {
  color: #4757E6;
  font-weight: 700;
}
.accordion .is-active .accordion-txt-area {
  display: block;
}
.accordion li {
  border-bottom: 1px solid #333;
}

.accordion-tit-area {
  position: relative;
  font-size: 0;
  padding: 15px 0;
}
.accordion-tit-area cite {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 200px;
  font-size: 1.8rem;
  border: 1px solid #4757E6;
  color: #4757E6;
  border-radius: 0 20px 0 20px;
  text-align: center;
  padding: 15px 20px;
  font-weight: 700;
  line-height: 1.4;
  vertical-align: middle;
}
.accordion-tit-area:after {
  content: " ";
  position: absolute;
  right: 40px;
  top: 50%;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}

.accoridon-tit {
  display: inline-block;
  vertical-align: middle;
  font-size: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 40px;
  padding-right: 80px;
}

.btn-accordion-toggle {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-indent: -9999px;
}

.accordion-txt-area {
  display: none;
  padding: 20px;
  border-top: 1px solid #ddd;
  background-color: #eee;
}
.accordion-txt-area table {
  border-top-color: #ddd;
}
.accordion-txt-area table td {
  background-color: #fff;
}

.tabs-normal .tabs-cont {
  display: none;
}

.tabs-nav {
  margin-bottom: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  border-left: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.tabs-nav li {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
  border: 1px solid #ddd;
  border-left: none;
}
.tabs-nav li:first-of-type {
  border-radius: 4px 0 0 4px;
}
.tabs-nav li:first-of-type a.is-active::before {
  border-radius: 4px 0 0 4px;
}
.tabs-nav li:last-of-type {
  border-radius: 0 4px 4px 0;
}
.tabs-nav li:last-of-type a.is-active::before {
  border-radius: 0 4px 4px 0;
}
.tabs-nav a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
}
.tabs-nav a.is-active {
  opacity: 1;
  color: #4757E6;
  font-weight: 700;
}
.tabs-nav a.is-active::before {
  content: " ";
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  border: 1px solid #4757E6;
}

.link-full {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  text-indent: -99999px;
}

.thumb-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 48px 28px;
}
.thumb-list li {
  position: relative;
  width: calc((100% - 56px) / 3);
}
.thumb-list li:hover .thumb-fnc-r .btn-ico {
  opacity: 1;
  visibility: visible;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
.thumb-list.sm {
  gap: 20px 8px;
}
.thumb-list.sm li {
  width: calc((100% - 16px) / 3);
}

.thumb-sm-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px 8px;
}
.thumb-sm-list li {
  position: relative;
  width: calc((100% - 16px) / 3);
}
.thumb-sm-list .thumb-txt-area p {
  font-size: 14px;
}
.thumb-sm-list .thumb-txt-area cite {
  margin-top: 4px;
}
.thumb-sm-list.col4 li {
  width: calc((100% - 24px) / 4);
}

.thumb-block-list li {
  position: relative;
}
.thumb-block-list li ~ li {
  margin-top: 24px;
}

.thumb-h-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
.thumb-h-list .item,
.thumb-h-list li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 0;
  overflow: hidden;
}
.thumb-h-list .item .thumb-img-area,
.thumb-h-list li .thumb-img-area {
  width: 128px;
}
.thumb-h-list .item .thumb-txt-area,
.thumb-h-list li .thumb-txt-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: 0;
  min-width: 0;
}
.thumb-h-list .item .thumb-txt-area p,
.thumb-h-list li .thumb-txt-area p {
  font-size: 14px;
  white-space: normal;
  word-break: break-all;
  display: block;
  display: -webkit-box;
  overflow: hidden;
  line-height: 1.25;
  width: 100%;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.thumb-h-list .item .thumb-txt-area cite,
.thumb-h-list li .thumb-txt-area cite {
  font-size: 12px;
}

.thumb-img-area {
  position: relative;
  overflow: hidden;
}
.thumb-img-area figure {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-top: 56.56%;
  background: #F8F8F8;
  overflow: hidden;
  border-radius: 4px;
  border: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.thumb-img-area figure img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.link-full:hover ~ .thumb-img-area figure img {
  top: -3%;
  left: -3%;
  width: 106%;
  height: 106%;
}

.thumb-txt-area {
  margin-top: 12px;
}
.thumb-txt-area p {
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  width: 100%;
  overflow: hidden;
  word-break: break-all;
  font-size: 16px;
}
.thumb-txt-area .info {
  margin-top: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #9196AF;
  font-size: 0;
  gap: 4px 0;
}
.thumb-txt-area .info span {
  display: inline-block;
  font-size: 12px;
}
.thumb-txt-area .info span::after {
  content: " ";
  display: inline-block;
  vertical-align: middle;
  width: 1px;
  height: 10px;
  margin: 0 8px;
  background-color: #9196AF;
}
.thumb-txt-area .info span:last-child::after {
  display: none;
}
.thumb-txt-area cite {
  margin-top: 8px;
  display: block;
  font-size: 12px;
  color: #9196AF;
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  width: 100%;
  overflow: hidden;
}
.thumb-txt-area.sm {
  margin-top: 8px;
}
.thumb-txt-area.sm cite {
  margin-top: 4px;
}
.thumb-txt-area .etc-area {
  margin-top: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.thumb-txt-area i {
  margin-right: 4px;
}

.thumb-swiper {
  position: relative;
  padding-left: 24px;
  padding-right: 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-left: -24px;
  margin-right: -24px;
}
.thumb-swiper::before, .thumb-swiper::after {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  width: 24px;
  height: 100%;
  z-index: 2;
}
.thumb-swiper::after {
  left: auto;
  right: 0;
}

.thumb-fnc-l, .thumb-fnc-r {
  position: absolute;
  top: 8px;
  z-index: 2;
}
.thumb-fnc-l {
  left: 8px;
}
.thumb-fnc-r {
  right: 8px;
}
.thumb-fnc-r .btn-ico {
  opacity: 0;
  visibility: hidden;
}

li:hover .thumb-fnc-hover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.thumb-fnc-hover {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: rgba(51, 51, 51, 0.4);
  gap: 4px;
}
.thumb-fnc-hover .round.bk {
  background-color: rgba(51, 51, 51, 0.9);
}

.viewer-painter {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
}

#painterCanvas {
  margin: 0;
  border-radius: 0;
  border: 0px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
  cursor: url("../image/common/img_painter.svg"), auto;
  z-index: 10;
}

.painterbar {
  position: fixed;
  z-index: 11;
  top: 50%;
  right: 60px;
  width: 80px;
  height: 380px;
  padding: 36px 6px 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #F8F8F8;
  border: 2px solid #fff;
  border-radius: 40px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.2);
          box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.2);
  white-space: normal;
}
.painterbar.min {
  display: block;
  height: 100px;
  width: 80px;
  padding: 0;
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.painterbar.min .btn-painterbar-size {
  top: 0;
  width: 80px;
  height: 80px;
}
.painterbar.min .btn-painterbar-size::before {
  top: 36px;
  width: 60px;
  height: 60px;
  background: url("../image/common/img_painter.svg") center center no-repeat #eee;
  border-radius: 50%;
  background-size: 28px 28px;
}
.painterbar.min .btn-viewer-painter-close {
  bottom: 8px;
}
.painterbar.min .painterbar-stroke,
.painterbar.min .painterbar-fnc,
.painterbar.min .painterbar-color {
  display: none;
}

.painterbar-stroke #box {
  height: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.painterbar-stroke #stroke {
  display: block;
  margin: 0 auto;
  width: 16px;
  height: 16px;
  background-color: #fff;
  border-radius: 50%;
}
.painterbar-stroke .ui-slider {
  position: relative;
  margin: 0 auto;
  height: 88px;
  width: 12px;
  background-color: #F8F8F8;
  background-image: url("../image/common/ico_painter_bar.svg");
}
.painterbar-stroke .ui-slider-handle {
  position: absolute;
  left: 50%;
  z-index: 2;
  width: 20px;
  height: 8px;
  margin-left: -10px;
  border-radius: 4px;
  background-color: #4757E6;
  border-radius: 2em;
  cursor: pointer;
}

.painterbar-fnc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 4px 0;
}
.painterbar-fnc button {
  position: relative;
  -ms-flex-preferred-size: 30px;
      flex-basis: 30px;
  height: 30px;
  border-radius: 15px;
  text-indent: -9999px;
  background-color: #eee;
  margin: auto 0;
}
.painterbar-fnc button::before {
  content: " ";
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 16px;
  height: 16px;
  background-image: url("../image/common/ico_painter.svg");
  background-position: 0 center;
}
.painterbar-fnc #undo::before {
  background-position: 0 center;
}
.painterbar-fnc #redo::before {
  background-position: -16px center;
}
.painterbar-fnc #clear {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.painterbar-fnc #clear::before {
  background-position: -32px center;
}
.painterbar-fnc #brush,
.painterbar-fnc #init {
  position: fixed;
  top: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
  background: none;
}

.painterbar-color {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  width: 40px;
  gap: 8px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
.painterbar-color .color {
  position: relative;
  -ms-flex-preferred-size: 16px;
      flex-basis: 16px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}
.painterbar-color .color::after {
  content: " ";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 2px solid #fff;
  opacity: 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.painterbar-color .color.white {
  border: 1px solid #ddd;
}
.painterbar-color .color.chosen::after {
  width: 50%;
  height: 50%;
  opacity: 1;
}
.painterbar-color .color.chosen.white::after {
  border-color: #ddd;
}

.btn-viewer-painter-close,
.btn-painterbar-size {
  position: absolute;
  width: 16px;
  height: 16px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 16px;
  text-indent: -9999px;
  overflow: hidden;
  border: 0;
  outline: 0;
}
.btn-viewer-painter-close::before,
.btn-painterbar-size::before {
  content: " ";
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 16px;
  height: 16px;
  background-image: url("../image/common/ico_painter.svg");
  background-position: -48px center;
}

.btn-viewer-painter-close {
  top: auto;
  bottom: 16px;
}
.btn-viewer-painter-close::before {
  background-position: -64px center;
}

.error-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  padding: 100px 0;
}
.error-area figure img {
  margin-bottom: 16px;
}
.error-area h2 {
  font-size: 20px;
  font-weight: 400;
  color: #4757E6;
  margin-bottom: 4px;
}
.error-area p {
  color: #777;
}
.error-area .btn-cont {
  margin-top: 40px;
  margin-bottom: 0;
}

/* common */
.p0 {
  width: 70px !important;
}

.p1 {
  width: 10% !important;
}

.p2 {
  width: 20% !important;
}

.p3 {
  width: 30% !important;
}

.p4 {
  width: 40% !important;
}

.p5 {
  width: 50% !important;
}

.p6 {
  width: 60% !important;
}

.p7 {
  width: 70% !important;
}

.p8 {
  width: 80% !important;
}

.p9 {
  width: 90% !important;
}

.p10 {
  width: 100% !important;
}

.accessibility {
  position: relative;
}

.accessibility a {
  position: absolute;
  left: 0;
  top: 0;
  height: 1px;
  overflow: hidden;
  font-weight: 500;
  z-index: 99999;
}

.accessibility a:focus {
  z-index: 999;
  width: 120px;
  height: 35px;
  line-height: 35px;
  background: #4757E6;
  color: #fff;
  overflow: hidden;
  outline: 0;
  font-size: 1.4rem;
  text-align: center;
}

.scroll-cus::-webkit-scrollbar {
  width: 6px;
  height: 6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.scroll-cus::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 2em;
}
.scroll-cus::-webkit-scrollbar-track {
  width: 16px;
  background-color: transparent;
}

@media (pointer: coarse) {
  .snb {
    scrollbar-width: none; /* Firefox */
  }
  .snb::-webkit-scrollbar {
    display: none;
  }
}
.ac {
  text-align: center !important;
}

.al {
  text-align: left !important;
}

.ar {
  text-align: right !important;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.fr + * {
  clear: both;
}

.clear {
  clear: both;
}

.hidden {
  position: absolute;
  top: -99999px;
  left: -99999px;
  font-size: 1px;
  color: #fff;
  opacity: 0;
}

.m-block {
  display: none;
}

.m-none {
  display: block;
}

.block {
  display: block;
}

.inlin-block {
  display: inline-block;
}

.pc,
.pcta {
  display: block !important;
}

.ta,
.tamo,
.mo {
  display: none !important;
}

.lnk-full {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-indent: -99999px;
  opacity: 0.2;
  z-index: 1;
}

.fc-rd {
  color: #EB325D !important;
}
.fc-bl {
  color: #009AEB !important;
}
.fc-gn {
  color: #00BA7A !important;
}
.fc-or {
  color: orange !important;
}
.fc-bk {
  color: #333 !important;
}
.fc-gr {
  color: #777 !important;
}
.fc-wh {
  color: #fff !important;
}
.fc-spot {
  color: #4757E6;
}

.fs-xlg {
  font-size: var(--fs-xlg);
}
.fs-lg {
  font-size: var(--fs-lg);
}
.fs-sm {
  font-size: var(--fs-sm);
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 20px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb16 {
  margin-bottom: 16px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mr8 {
  margin-right: 8px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 20px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 20px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.ellipsis {
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  width: 100%;
  overflow: hidden;
}

.txt-hide {
  position: absolute;
  top: -1px;
  left: -1px;
  overflow: hidden;
  width: 0;
  height: 0;
  font-size: 1px;
  line-height: 0;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  padding: 0;
  border: 0;
  text-indent: -99999px;
}

button .txt-hide {
  position: static;
  display: inline-block;
  text-indent: -99999px;
}

.time {
  font-size: var(--fs-sm);
  color: #ddd;
}

/* bullet */
.bullet,
.bullet-tit,
.bullet-dash,
.bullet-none {
  margin-bottom: 20px;
}
.bullet:last-child,
.bullet-tit:last-child,
.bullet-dash:last-child,
.bullet-none:last-child {
  margin-bottom: 0;
}
.bullet > li,
.bullet-tit > li,
.bullet-dash > li,
.bullet-none > li {
  position: relative;
  padding-left: 15px;
}
.bullet > li ~ li,
.bullet-tit > li ~ li,
.bullet-dash > li ~ li,
.bullet-none > li ~ li {
  margin-top: 8px;
}
.bullet > li:before,
.bullet-tit > li:before,
.bullet-dash > li:before,
.bullet-none > li:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
}

.bullet-none li {
  padding-left: 0;
}

.bullet > li:before,
.bullet-tit > li:before {
  width: 4px;
  height: 4px;
  border-radius: 50px;
  background-color: #333;
}

.bullet-dash > li:before {
  top: 12px;
  width: 6px;
  height: 1px;
  background-color: #777;
}

.bullet-tit > li {
  padding-left: 120px;
}
.bullet-tit > li cite {
  position: absolute;
  left: 20px;
  font-weight: 700;
}

/* area */
/* box */
.bg-box,
.bg-border-box,
.border-box,
.border-box-list > li {
  margin-bottom: 40px;
  padding: 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.bg-box .btn-cont,
.bg-border-box .btn-cont,
.border-box .btn-cont,
.border-box-list > li .btn-cont {
  margin-top: 20px;
}
.bg-box > *:first-child,
.bg-border-box > *:first-child,
.border-box > *:first-child,
.border-box-list > li > *:first-child {
  margin-top: 0;
}
.bg-box > *:last-child,
.bg-border-box > *:last-child,
.border-box > *:last-child,
.border-box-list > li > *:last-child {
  margin-bottom: 0;
}
.bg-box .bg-box + .form-cont,
.bg-border-box .bg-box + .form-cont,
.border-box .bg-box + .form-cont,
.border-box-list > li .bg-box + .form-cont {
  margin-top: 60px;
}
.bg-box.p-lg,
.bg-border-box.p-lg,
.border-box.p-lg,
.border-box-list > li.p-lg {
  padding: 40px;
}

.bg-box {
  background-color: #F8F8F8;
  border-radius: var(--radius-lg);
}

.bg-border-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #F8F8F8;
  border: 1px solid #ddd;
  border-radius: 4px;
  overflow: hidden;
  padding: 0;
}
.bg-border-box.wh {
  background-color: #fff;
}
.bg-border-box:last-child {
  margin-bottom: 0;
}
.bg-border-box .box-header {
  background-color: #fff;
  border-bottom: 1px solid #ddd;
  padding: 16px;
}
.bg-border-box .box-header > *:last-child {
  margin-bottom: 0;
}
.bg-border-box .box-body {
  padding: 16px;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  overflow-y: auto;
}
.bg-border-box .box-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 16px;
  background-color: #fff;
  border-top: 1px solid #ddd;
}
.bg-border-box .box-footer .l-area,
.bg-border-box .box-footer .r-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  gap: 4px;
}
.bg-border-box .box-footer .r-area {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.border-box, .border-box-list > li {
  border: 1px solid #eee;
  border-radius: 4px;
  background-color: #fff;
}

.box-tit-area {
  margin-bottom: 32px;
}
.box-tit-area:last-child {
  magin-bottom: 0;
}

.box-tit-img {
  margin-bottom: 8px;
}
.box-tit-img img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

.box-tit {
  display: block;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 4px;
}

.box-tit-lg {
  display: block;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 8px;
}

.box-txt {
  margin-bottom: 20px;
  font-size: 24px;
}
.box-txt em.fs-lg {
  font-size: 32px;
}

hr.solid {
  display: block;
  width: 100%;
  border: 0;
  border-top: 1px solid #ddd;
  margin: 30px 0;
}
hr.dashed {
  border: 0;
  border-top: 1px dashed #ddd;
  margin: 30px 0;
}

.border-box-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.border-box-list > li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px 16px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0;
  background-color: #fff;
}
.border-box-list > li.is-active {
  border-color: #4757E6;
}
.border-box-list .txt-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.border-box-list .txt-area .label-area {
  margin-bottom: 4px;
}
.border-box-list .box-fnc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px 16px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.border-box-list p a:hover {
  text-decoration: underline;
}
.border-box-list .ico-sm-close {
  position: absolute;
  top: -6px;
  right: -6px;
}
.border-box-list .ico-move {
  margin: 0 -12px;
}
.border-box-list .btn-list {
  width: 100%;
  height: 100%;
}

.fnc-area,
.tit-area {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  overflow: hidden;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 20px;
  gap: 8px;
}
.fnc-area .l-area,
.fnc-area .r-area,
.fnc-area .c-area,
.tit-area .l-area,
.tit-area .r-area,
.tit-area .c-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.fnc-area .l-area > *,
.fnc-area .r-area > *,
.fnc-area .c-area > *,
.tit-area .l-area > *,
.tit-area .r-area > *,
.tit-area .c-area > * {
  margin: 0;
}
.fnc-area .l-area.dir-col,
.fnc-area .r-area.dir-col,
.fnc-area .c-area.dir-col,
.tit-area .l-area.dir-col,
.tit-area .r-area.dir-col,
.tit-area .c-area.dir-col {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.fnc-area .r-area,
.tit-area .r-area {
  text-align: right;
  margin-left: auto;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.fnc-area.border,
.tit-area.border {
  border-bottom: 1px solid #eee;
  padding-bottom: 20px;
}
.fnc-area.sm,
.tit-area.sm {
  margin-bottom: 16px;
}
.fnc-area .total-count,
.tit-area .total-count {
  margin-bottom: 0;
}
.fnc-area .c-area,
.tit-area .c-area {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.fnc-area .l-area > *,
.fnc-area .r-area > * {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}

.tit-area .tit:only-child,
.tit-area .tit-sm:only-child {
  margin-bottom: 0;
}

.tit {
  font-size: 24px;
  font-weight: 700;
}
.tit small {
  font-size: 14px;
  font-weight: 400;
  color: #777;
  margin-left: 8px;
}

.tit-sm {
  font-size: 20px;
  font-weight: 700;
}

.tit-xsm {
  font-size: 16px;
  font-weight: 700;
}

/* sch */
.sch-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.sch-option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
}

.sch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 2em;
  padding: 0;
  gap: 4px;
}
.sch input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 240px;
}
.sch .btn-sch {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #4757E6;
  border-radius: 4px;
}
.sch .btn-sch::before {
  content: " ";
  display: block;
  width: 24px;
  height: 24px;
  -webkit-mask-size: 480px auto;
          mask-size: 480px auto;
  -webkit-mask-image: url("../image/common/ico24x24.svg");
          mask-image: url("../image/common/ico24x24.svg");
  background-color: #fff;
}
.sch .btn-sch::before {
  -webkit-mask-position: 0px 0px;
          mask-position: 0px 0px;
}

/* total-count */
.total-count {
  margin-bottom: 8px;
}

.sch-box {
  margin-bottom: 20px;
  border: 2px solid #eee;
  border-radius: 4px;
  padding: 16px;
  background-color: #F8F8F8;
}
.sch-box .btn-cont {
  margin: 16px 0;
}
.sch-box .btn-cont:last-child {
  margin-bottom: 0;
}
.sch-box > *:last-child {
  margin-bottom: 0;
}
.sch-box .write-type2 table {
  border-top: none;
}
.sch-box .write-type2 table .vertical-align-top {
  vertical-align: top;
}

.info-block dt {
  display: block;
  margin-bottom: 4px;
  font-weight: 700;
}
.info-block dd {
  margin-bottom: 12px;
}
.info-block dd:last-of-type {
  margin-bottom: 0;
}
.info-block select {
  display: block;
  width: 100%;
}

.info-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
  margin-bottom: 40px;
}
.info-list:last-child {
  margin-bottom: 0;
}
.info-list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.info-list cite {
  -ms-flex-preferred-size: 80px;
      flex-basis: 80px;
  padding-right: 20px;
  font-weight: 700;
}
.info-list .txt-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.info-list.sm {
  gap: 12px;
}
.info-list.dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.info-list.dir-row > li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.info-block-list {
  margin-bottom: 40px;
  line-height: 1.33;
}
.info-block-list:last-child {
  margin-bottom: 0;
}
.info-block-list > li ~ li {
  margin-top: 12px;
}
.info-block-list cite {
  display: block;
  margin-bottom: 4px;
  font-weight: 700;
}
.info-block-list .txt-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
}
.info-block-list .txt-area > * {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.info-block-list.fs-sm > li ~ li {
  margin-top: 12px;
}

.info-inline-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.2rem 1.6rem;
}
.info-inline-list.ellipsis {
  overflow: hidden;
}
.info-inline-list.ellipsis .txt-area {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: block;
  max-width: 100%;
}
.info-inline-list li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333;
  gap: 0.2rem;
  font-size: 12px;
  min-width: 0;
}
.info-inline-list li:last-of-type::after {
  display: none;
}
.info-inline-list li::after {
  content: " ";
  position: absolute;
  right: -1.2rem;
  top: 50%;
  width: 0.4rem;
  height: 0.4rem;
  margin-top: -0.2rem;
  border-radius: 50%;
  background-color: #ddd;
}
.info-inline-list.no-style li::after {
  display: none;
}
.info-inline-list i,
.info-inline-list cite,
.info-inline-list .info-tit {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.info-inline-list cite,
.info-inline-list .info-tit {
  font-weight: 400;
}
.info-inline-list cite::after,
.info-inline-list .info-tit::after {
  content: ":";
}

.write-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
.write-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  overflow: hidden;
}
.write-list li.col2 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.write-list li.col2.flex1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.write-list .write-tit {
  font-weight: 700;
  color: #777;
  padding: 0 8px;
}
.write-list .write-cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.write-list .input-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.write-list .input-area select,
.write-list .input-area input[type=text],
.write-list .input-area input[type=email] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.url-add-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  overflow: hidden;
}
.url-add-area label {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #F8F8F8;
  padding-left: 40px;
  min-width: 0;
  overflow: hidden;
}
.url-add-area label input[type=text] {
  border: none;
  border-left: 1px solid #ddd;
  border-radius: none;
  height: 38px;
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.url-add-area label::before {
  content: " ";
  left: 12px;
  top: 50%;
  margin-top: -8px;
  position: absolute;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.url-add-area label::before {
  -webkit-mask-position: -160px 0px;
          mask-position: -160px 0px;
}

.tag-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 8px;
  min-width: 0;
}

.tag {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 32px;
  border: 1px solid #4757E6;
  font-size: 14px;
  border-radius: 16px;
  padding: 0 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #4757E6;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 4px;
  align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 100%;
  overflow: hidden;
}

.info-list,
.info-block-list {
  min-width: 0;
}
.info-list .tag-area,
.info-block-list .tag-area {
  border: none;
  padding: 8px 0;
}

.sticky-cont {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
}
.sticky-cont .sticky {
  position: sticky;
  top: 30px;
  margin: 0;
}

.file-custom input[type=file] {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  opacity: 0;
  text-indent: -99999px;
  max-width: 100%;
  cursor: pointer;
  z-index: 2;
}

.file-custom {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 100%;
  gap: 0 4px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  overflow: hidden;
  min-width: 0;
}
.file-custom .preview-area::before {
  content: " ";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 16px;
  height: 16px;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.file-custom .preview-area::before {
  -webkit-mask-position: -256px 0px;
          mask-position: -256px 0px;
}
.file-custom input[type=text] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: auto;
}

.file-drag-area {
  position: relative;
  background-color: #F8F8F8;
  border: 1px solid #ddd;
  border-radius: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding: 16px;
}
.file-drag-area.is-dragover {
  background-color: #ddd;
}
.file-drag-area .input-file {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border: 0;
  opacity: 0;
  text-indent: -99999px;
  max-width: 100%;
  z-index: 1;
  cursor: pointer;
}

.file-add-txt-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
}
.file-add-txt-area .file-custom {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.file-add-txt-area ~ .file-list {
  margin-top: 10px;
}

.file-list > li ~ li,
.file-down-list > li ~ li {
  margin-top: 4px;
}
.file-list a::before,
.file-down-list a::before {
  content: " ";
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.file-list a::before,
.file-down-list a::before {
  -webkit-mask-position: -208px 0px;
          mask-position: -208px 0px;
}
.file-list a:hover,
.file-down-list a:hover {
  text-decoration: underline;
}

.file-down-list a::before {
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.file-down-list a::before {
  -webkit-mask-position: -80px 0px;
          mask-position: -80px 0px;
}
.file-down-list a small {
  margin-left: 4px;
}

.item-list-box {
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #F8F8F8;
  height: 111px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  min-width: 0;
}
.item-list-box.h-auto {
  height: auto;
  min-height: 111px;
}
.item-list-box .item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 36px;
  padding: 0 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 8px;
}
.item-list-box .item:nth-of-type(2n) {
  background-color: #fff;
}
.item-list-box .item.hover:hover {
  background-color: rgba(71, 87, 230, 0.05);
}
.item-list-box .item .txt-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
}
.item-list-box .item .txt-area i {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.item-list-box .item .txt-area .txt {
  width: auto;
  max-width: 100%;
}
.item-list-box .item .txt-area small {
  color: #9196AF;
}
.item-list-box .item .item-fnc-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px 8px;
}

.item-list-inline-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px 24px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #F8F8F8;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  min-width: 0;
  padding: 16px;
  min-height: 56px;
  box-sizing: border-box;
}
.item-list-inline-box .item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  min-height: 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 8px;
}
.item-list-inline-box .item .txt-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
}
.item-list-inline-box .item .txt-area i {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.item-list-inline-box .item .txt-area .txt {
  width: auto;
  max-width: 100%;
}
.item-list-inline-box .item .txt-area small {
  color: #9196AF;
}
.item-list-inline-box .item .item-fnc-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px 8px;
}

.preview-area {
  position: relative;
  width: 160px;
  height: 90px;
  overflow: hidden;
  background-color: #F8F8F8;
  border: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 4px;
}
.preview-area img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.preview-area .txt-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
}
.preview-area p {
  font-size: var(--fs-sm);
}

.preview-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.preview-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
  text-align: center;
}

.file-add-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px 12px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  overflow: hidden;
}
.file-add-area .item-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.file-add-area .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.file-add-area .item .txt {
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  width: 100%;
  overflow: hidden;
  max-width: calc(100% - 40px);
  width: auto;
  font-size: var(--fs-sm);
  padding-right: 2px;
}
.file-add-area small {
  display: block;
  width: 100%;
  margin-top: 4px;
}
.file-add-area .url-add-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.sel-txt-list {
  margin-top: 5px;
  font-size: var(--fs-sm);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
}
.sel-txt-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.sel-txt-list span:after {
  content: " ";
  display: inline-block;
  vertical-align: middle;
  margin-left: 8px;
  margin-top: -2px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #9196AF;
  border-right: 1px solid #9196AF;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.sel-txt-list span:last-of-type:after {
  display: none;
}

.step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
}
.step li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  font-weight: 700;
  color: #777;
  background-color: #eee;
}
.step li.is-current {
  background-color: #4757E6;
  color: #fff;
}

.loading {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  gap: 8px;
  background: rgba(255, 255, 255, 0.6);
  font-size: 0;
  text-align: center;
  z-index: 101;
}
.loading strong {
  color: #4757E6;
  font-size: 18px;
  font-weight: 400;
}
.loading strong span {
  font-size: 24px;
  font-weight: 700;
}
.loading p {
  font-size: 14px;
  display: block;
  line-height: 1.45;
}
.loading::before {
  content: " ";
  width: 80px;
  height: 80px;
  background-size: 100% 100%;
  background: url(../image/common/loading.svg) center no-repeat;
}

.progress {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  gap: 8px;
  background: rgba(255, 255, 255, 0.6);
  font-size: 0;
  text-align: center;
  padding: 0 5vw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 101;
}

.progress-box {
  margin: 8px 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 12px;
}
.progress-box .progress-bg {
  position: relative;
  display: block;
  width: 100%;
  height: 4px;
  border-radius: 4px;
  overflow: hidden;
  background-color: #eee;
}
.progress-box .progress-bar {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background-color: #4757E6;
}
.progress-box strong {
  color: #4757E6;
  font-size: 18px;
  font-weight: 400;
}
.progress-box strong span {
  font-size: 24px;
  font-weight: 700;
}
.progress-box p {
  font-size: 14px;
  display: block;
  line-height: 1.45;
}

.txt-none {
  text-align: center;
  color: #9196AF;
  padding-top: 80px;
  padding-bottom: 80px;
}
.txt-none::before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  margin: 0 auto 16px;
  background: url(../image/common/txt_none.svg) center no-repeat;
  background-size: contain;
}

.txt-none-box {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  top: 50%;
  left: 50%;
  width: calc(100% - 23px);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  gap: 4px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
.txt-none-box figure {
  margin-bottom: 16px;
}
.txt-none-box em {
  font-size: 16px;
  font-weight: 400;
}
.txt-none-box p {
  font-size: 12px;
  color: #9196AF;
}

.flex-area, .survey-section .survey-item .survey-item-fnc, .survey-section .survey-section-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.flex-area.dir-col, .survey-section .survey-item .dir-col.survey-item-fnc, .survey-section .dir-col.survey-section-footer {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.flex-area > *, .survey-section .survey-item .survey-item-fnc > *, .survey-section .survey-section-footer > * {
  margin-bottom: 0;
}
.flex-area.lg, .survey-section .survey-item .lg.survey-item-fnc, .survey-section .lg.survey-section-footer {
  gap: 16px;
}
.flex-area.sm, .survey-section .survey-item .sm.survey-item-fnc, .survey-section .sm.survey-section-footer {
  gap: 4px;
}
.flex-area .center, .survey-section .survey-item .survey-item-fnc .center, .survey-section .survey-section-footer .center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.flex-area .vcenter, .survey-section .survey-item .survey-item-fnc .vcenter, .survey-section .survey-section-footer .vcenter {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.flex-area .l-area, .survey-section .survey-item .survey-item-fnc .l-area, .survey-section .survey-section-footer .l-area,
.flex-area .r-area,
.survey-section .survey-item .survey-item-fnc .r-area,
.survey-section .survey-section-footer .r-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.flex-area .r-area, .survey-section .survey-item .survey-item-fnc .r-area, .survey-section .survey-section-footer .r-area {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-left: auto;
}

.dir-col {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: column !important;
          flex-direction: column !important;
}

.flex1 {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.tbl-flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.tbl-flex-box table {
  min-width: auto;
}

.row-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.row-bar > * {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0 8px;
  border-left: 1px solid #ddd;
}
.row-bar > *:first-child {
  padding-left: 0;
  border-left: none;
}
.row-bar > *:last-child {
  padding-right: 0;
}

.tracking-normal {
  letter-spacing: 0rem;
}

.vertical-align-top {
  vertical-align: top;
}

/* util */
.bg-area {
  position: relative;
  border-radius: 1.6rem;
  background: #eee;
  padding: 2.4rem;
}
.bg-area .box {
  padding: 2.4rem;
  border-radius: 1.6rem;
  border: 0.1rem solid #ddd;
  background: #fff;
  margin-bottom: 1.6rem;
}
.bg-area .box:last-child {
  margin-bottom: 0;
}

.form-write,
.form-view-result,
.form-view {
  display: grid;
  gap: 2.4rem;
}
.form-write .form-section-footer,
.form-view-result .form-section-footer,
.form-view .form-section-footer {
  width: calc(100% + 4.8rem);
  margin-left: -2.4rem;
  margin-bottom: -2.4rem;
  border: 0.1rem solid #eee;
  background: #F8F8F8;
  border-radius: 0 0 1.6rem 1.6rem;
  padding: 0.8rem 1.6rem;
}
.form-write .form-section,
.form-view-result .form-section,
.form-view .form-section {
  display: grid;
  gap: 2.4rem;
}
.form-write .form-item-list,
.form-view-result .form-item-list,
.form-view .form-item-list {
  display: grid;
  gap: 1.6rem;
}
.form-write .form-item,
.form-view-result .form-item,
.form-view .form-item {
  position: relative;
  display: grid;
  gap: 1.6rem;
  border-radius: 1.6rem;
  border: 0.1rem solid #eee;
  padding: 2.4rem;
  background-color: #fff;
}
.form-write .q-area,
.form-view-result .q-area,
.form-view .q-area {
  display: grid;
  gap: 1.6rem;
}
.form-write .form-item-section,
.form-view-result .form-item-section,
.form-view .form-item-section {
  margin-bottom: 4rem;
}
.form-write .form-item-section:last-of-type,
.form-view-result .form-item-section:last-of-type,
.form-view .form-item-section:last-of-type {
  margin-bottom: 0;
}
.form-write .form-item-tit,
.form-view-result .form-item-tit,
.form-view .form-item-tit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 1.6rem;
  gap: 0.8rem;
}
.form-write .form-item-tit::after,
.form-view-result .form-item-tit::after,
.form-view .form-item-tit::after {
  content: " ";
  display: block;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 1px;
  background-color: #9196AF;
}

.form-write .form-section:has(.form-section-header) {
  margin-top: 6.4rem;
  border-radius: 0 1.6rem 1.6rem 1.6rem;
}
.form-write .form-section-header {
  position: absolute;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 2.4rem;
  gap: 0.8rem;
  top: -6.4rem;
  height: 6.4rem;
  border-radius: 1.6rem 1.6rem 0 0;
  background: #4757E6;
  color: #fff;
}
.form-write .form-section-header::after {
  content: " ";
  display: inline-block;
  width: 2rempx;
  height: 2rempx;
  -webkit-mask-size: 40rempx auto;
          mask-size: 40rempx auto;
}
.form-write .form-section-header::after {
  -webkit-mask-position: -18rempx 0rempx;
          mask-position: -18rempx 0rempx;
}
.form-write .form-section-header input {
  height: 6.4rem;
  border: none;
  background-color: initial;
  width: 18rem;
}
.form-write .form-section-header input:focus {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.form-write .form-section-header input::-webkit-input-placeholder {
  color: #ddd;
}
.form-write .form-section-header input::-moz-placeholder {
  color: #ddd;
}
.form-write .form-section-header input:-ms-input-placeholder {
  color: #ddd;
}
.form-write .form-section-header input::-ms-input-placeholder {
  color: #ddd;
}
.form-write .form-section-header input::placeholder {
  color: #ddd;
}
.form-write .form-item .q-tit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.4rem;
}
.form-write .form-item .q-tit input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.form-write .form-item .form-item-fnc .toggle {
  margin-right: 0;
}
.form-write .form-item::before {
  content: " ";
  display: none;
  position: absolute;
  width: 3.2rem;
  height: 4rem;
  top: 2.4rem;
  left: -3.2rem;
  border-radius: 0.8rem 0 0 0.8rem;
  background: #4757E6;
}
.form-write .form-item::after {
  content: " ";
  display: none;
  position: absolute;
  top: 3.2rem;
  left: -2.4rem;
  width: 2rempx;
  height: 2rempx;
  -webkit-mask-size: 40rempx auto;
          mask-size: 40rempx auto;
}
.form-write .form-item::after {
  -webkit-mask-position: -2rempx -2rempx;
          mask-position: -2rempx -2rempx;
}
.form-write .form-item.ui-sortable-handle:hover {
  border-color: initial;
  outline: 0.1rem solid #4757E6;
}
.form-write .form-item.ui-sortable-handle:hover::before, .form-write .form-item.ui-sortable-handle:hover::after {
  display: block;
}
.form-write .form-item.ui-sortable-helper {
  opacity: 0.8;
  -webkit-filter: 0rem 0.4rem 1.6rem rgba(51, 51, 51, 0.1);
          filter: 0rem 0.4rem 1.6rem rgba(51, 51, 51, 0.1);
  cursor: move;
  border-color: initial;
  outline: 0.1rem dashed #4757E6;
}
.form-write .form-item.ui-sortable-helper::before, .form-write .form-item.ui-sortable-helper::after {
  display: block;
}

.form-write-fnc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.2rem;
  margin-top: 2.4rem;
}

.form-view-result .q-tit,
.form-view .q-tit {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.6rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  line-height: normal;
}
.form-view-result .l-area,
.form-view .l-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.form-view-result .r-area,
.form-view .r-area {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  margin-left: 0 auto;
}
.form-view-result .q-txt,
.form-view .q-txt {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
}
.form-view-result .a-result-list,
.form-view .a-result-list {
  gap: 0;
  border: 0.1rem solid #eee;
  border-radius: 0.8rem;
  overflow: hidden;
  background: #F8F8F8;
}
.form-view-result .a-result-list > li,
.form-view .a-result-list > li {
  padding: 0.8rem 1.6rem;
}
.form-view-result .a-result-list > li:nth-child(2n),
.form-view .a-result-list > li:nth-child(2n) {
  background: #fff;
}
.form-view-result .a-list,
.form-view .a-list {
  display: grid;
  gap: 1.6rem;
}
.form-view-result .a-list .a-item,
.form-view .a-list .a-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
}
.form-view-result .a-list .a-info,
.form-view .a-list .a-info {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
body:has(.form-area) {
  background: #F8F8F8;
  padding: 4rem 0;
}

.form-view .form-section-header {
  border-radius: 1.6rem;
  border: 0.1rem solid #eee;
  background: #F8F8F8;
  padding: 2.4rem;
}
.form-view .form-section-header,
.form-view .form-item {
  -webkit-box-shadow: 0.2rem 0.2rem 0.4rem rgba(51, 51, 51, 0.1);
          box-shadow: 0.2rem 0.2rem 0.4rem rgba(51, 51, 51, 0.1);
}

.a-chart-area .chart-list {
  display: grid;
  gap: 1.6rem;
}
.a-chart-area li {
  display: grid;
  gap: 0.4rem;
  padding-right: 6.4rem;
}
.a-chart-area li .chart-tit {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
}
.a-chart-area li .chart-tit small {
  font-size: 1.6rem;
  font-weight: 400;
}
.a-chart-area li .bar-area {
  position: relative;
}
.a-chart-area li .bar {
  display: inline-block;
  height: 2rem;
  border-radius: 0 2em 2em 0;
  background: #4757E6;
  vertical-align: middle;
}
.a-chart-area li .chart-label {
  position: absolute;
  margin-left: 0.8rem;
  display: inline-block;
  color: #555;
  font-size: 1.4rem;
  border-radius: 0.4rem;
  border: 0.1rem solid #eee;
  background: #F8F8F8;
  -webkit-box-shadow: 0.2rem 0.2rem 0.4rem rgba(51, 51, 51, 0.1);
          box-shadow: 0.2rem 0.2rem 0.4rem rgba(51, 51, 51, 0.1);
  padding: 0.2rem 0.4rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.a-chart-area li .bar[style*="width:0%"] + .chart-label {
  margin-left: 0;
}
.a-chart-area li:nth-child(2n) .bar {
  background: #404664;
}

.achievecode-sch-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 0.1rem solid #eee;
  border-radius: 0.8rem;
  background: #fff;
}
.achievecode-sch-area .achievecode-type {
  padding: 0.8rem 1.6rem;
}
.achievecode-sch-area .achievecode-sch {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  border-top: 0.1rem solid #eee;
}
.achievecode-sch-area .achievecode-sch > li {
  position: relative;
  height: 100%;
  border-left: 0.1rem solid #eee;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.achievecode-sch-area .achievecode-sch > li.col-fixed {
  width: 20rem;
}
.achievecode-sch-area .achievecode-sch > li:first-of-type {
  border-left: none;
}
.achievecode-sch-area .achievecode-sch > li select,
.achievecode-sch-area .achievecode-sch > li input {
  border: none;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border-radius: 0;
  padding: 0 1.6rem;
  background-color: transparent;
  width: 100%;
  min-width: 0;
}
.achievecode-sch-area .achievecode-sch > li i {
  margin-right: 1.6rem;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled {
  background: #F8F8F8;
  color: #777;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled::before {
  content: " ";
  position: absolute;
  inset: 0;
  z-index: 3;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled input::-webkit-input-placeholder {
  color: #9196AF;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled input::-moz-placeholder {
  color: #9196AF;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled input:-ms-input-placeholder {
  color: #9196AF;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled input::-ms-input-placeholder {
  color: #9196AF;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled select,
.achievecode-sch-area .achievecode-sch > li.is-disabled input::placeholder {
  color: #9196AF;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled i {
  background-color: #ddd;
}
.achievecode-sch-area .achievecode-sch > li.is-disabled selct,
.achievecode-sch-area .achievecode-sch > li.is-disabled input {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.achievecode-sch-area .achievecode-sch .btn-sch {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 40px;
  height: 40px;
  font-size: 0;
  border-left: 0.1rem solid #eee;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.achievecode-sch-area .achievecode-sch .btn-sch::before {
  content: " ";
  display: block;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #9196AF;
}
.achievecode-sch-area .achievecode-sch .btn-sch::before {
  -webkit-mask-position: 0px 0px;
          mask-position: 0px 0px;
}
.achievecode-sch-area .achievecode-item-list-box {
  border: none;
  border-radius: 0;
  border-top: 0.1rem solid #eee;
}
.achievecode-sch-area .achievecode-keyword {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.8rem 1.6rem;
  gap: 1.6rem;
  border-top: 0.1rem solid #eee;
}
.achievecode-sch-area .achievecode-keyword strong {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.3;
  color: #777;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  padding-top: 0.2rem;
}
.achievecode-sch-area .achievecode-keyword .txt-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 1.2rem;
}
.achievecode-sch-area .achievecode-keyword .txt-area button,
.achievecode-sch-area .achievecode-keyword .txt-area a {
  color: #4757E6;
  font-weight: 500;
}
.achievecode-sch-area .achievecode-keyword .txt-area button:hover,
.achievecode-sch-area .achievecode-keyword .txt-area a:hover {
  text-decoration: underline;
}

.achievecode-item-list-box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  min-width: 0;
  max-height: 16rem;
  border: 0.1rem solid #eee;
  border-radius: 0.8rem;
}
.achievecode-item-list-box .item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 3.6rem;
  padding: 0 1.6rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  gap: 0 0.8rem;
}
.achievecode-item-list-box .item:nth-of-type(2n) {
  background-color: #F8F8F8;
}
.achievecode-item-list-box .item.hover:hover {
  background-color: #eee;
}
.achievecode-item-list-box .item .txt-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
}
.achievecode-item-list-box .item .txt-area i {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.achievecode-item-list-box .item .txt-area .txt {
  width: auto;
  word-break: break-all;
  max-width: 100%;
}
.achievecode-item-list-box .item .txt-area small {
  color: #9196AF;
}
.achievecode-item-list-box .item .item-fnc-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem 0.8rem;
}

.subjdect-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.subjdect-area article {
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #eee;
}

.subject-sch-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
.subject-sch-area .fnc-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  gap: 0.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.subject-sch-area .fnc-group::after {
  content: " ";
  display: block;
  width: 0.1rem;
  height: 4rem;
  background-color: #F8F8F8;
  margin-left: 0.4rem;
}
.subject-sch-area .search-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.ui-menu-item {
  font-size: 12px;
}

/* layout */
.site-header {
  height: 60px;
  background-color: #fff;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 var(--wrap-gap);
  position: fixed;
  top: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 10;
  min-width: 1280px;
}
.site-header .logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
.site-header .logo span {
  font-size: 24px;
  color: #4757E6;
}
.site-header .l-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-header .util {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}

.site-gnb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 32px;
  font-size: 17px;
  font-weight: 600;
}
.site-gnb ul a.is-current, .site-gnb ul a:hover {
  color: #4757E6;
}

/* layout */
.wrap {
  position: relative;
  padding-left: var(--wrap-gap);
  padding-right: var(--wrap-gap);
  margin: 0 auto;
  max-width: 1240px;
}
.wrap-sm {
  max-width: 80rem;
  margin: 0 auto;
  width: 100%;
}
.wrap-xsm {
  max-width: 37.6rem;
  margin: 0 auto;
  width: 100%;
}
.wrap-md {
  max-width: 102.4rem;
  margin: 0 auto;
  width: 100%;
}

.site-body {
  padding-top: 60px;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0 80px;
}
.container .contents {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}

.lnb-area ~ .container {
  padding-left: 240px;
}

.section {
  margin-bottom: 72px;
}
.section.sm {
  margin-bottom: 40px;
}
.section:last-child {
  margin-bottom: 0;
}

.contents {
  padding: 40px 80px;
}

.lnb-area {
  background-color: #404664;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  position: fixed;
  top: 60px;
  bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 240px;
  padding: 24px 0;
  font-size: 15px;
  z-index: 10;
  -webkit-transition: left 3s;
  transition: left 3s;
}
.lnb-area a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #B8BEDB;
}
.lnb-area a.is-current {
  color: #fff;
  font-weight: 700;
}

.lnb {
  overflow-y: auto;
}
.lnb > ul > li {
  position: relative;
}
.lnb > ul > li > a {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 48px;
  padding: 8px 40px 8px 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: 700;
  color: #fff;
}
.lnb > ul > li > a.is-current {
  position: relative;
  background-color: #353C5E;
}
.lnb > ul > li > a.is-current:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 4px;
  background-color: #4757E6;
}
.lnb > ul > li.is-active ul {
  height: auto;
}
.lnb > ul > li.is-active ul::before {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}
.lnb > ul ul {
  height: 0;
  overflow: hidden;
}
.lnb > ul ul::before {
  content: " ";
  position: absolute;
  right: 16px;
  top: 12px;
  width: 24px;
  height: 24px;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #fff;
  z-index: 1;
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.lnb > ul ul::before {
  -webkit-mask-position: -80px -16px;
          mask-position: -80px -16px;
}
.lnb > ul ul a {
  padding: 8px 24px;
}

.btn-lnb-toggle {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  right: -32px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 32px;
  height: 112px;
  background: url(../image/common/btn_menu_bg.svg);
  background-size: 100% 100%;
  text-indent: -99999px;
}
.btn-lnb-toggle::before {
  content: " ";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  -webkit-mask-size: 320px auto;
          mask-size: 320px auto;
  -webkit-mask-image: url("../image/common/ico16x16.svg");
          mask-image: url("../image/common/ico16x16.svg");
  background-color: #fff;
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  translate: all 3s;
}
.btn-lnb-toggle::before {
  -webkit-mask-position: -96px -16px;
          mask-position: -96px -16px;
}

@-webkit-keyframes lnbClose {
  0% {
    left: 0;
  }
  100% {
    left: -240px;
  }
}

@keyframes lnbClose {
  0% {
    left: 0;
  }
  100% {
    left: -240px;
  }
}
@-webkit-keyframes lnbCloseContainer {
  0% {
    padding-left: 240px;
  }
  100% {
    padding-left: 0;
  }
}
@keyframes lnbCloseContainer {
  0% {
    padding-left: 240px;
  }
  100% {
    padding-left: 0;
  }
}
.lnb-area.is-close {
  -webkit-animation: lnbClose 0.8s forwards;
          animation: lnbClose 0.8s forwards;
}
.lnb-area.is-close ~ .container {
  padding-left: 0;
}
.lnb-area.is-close .btn-lnb-toggle::before {
  -webkit-transform: translate(-50%, -50%) rotate(-180deg);
          transform: translate(-50%, -50%) rotate(-180deg);
}

.site-footer {
  background-color: #fff;
  padding: 16px;
  font-size: var(--fs-sm);
  border-top: 1px solid #F8F8F8;
}

/* page */
.mn-cont .row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  gap: 2.4rem;
  margin-bottom: 2.4rem;
}
.mn-cont .row .mn-section {
  margin-bottom: 0;
}
.mn-cont .row .col2 {
  grid-column: span 2;
}

.mn-section {
  border: 0.1rem solid #ddd;
  border-radius: 4px;
  padding: 2.4rem;
  margin-bottom: 2.4rem;
  display: grid;
  grid-template-rows: auto 1fr;
}
.mn-section .cont {
  display: grid;
  -ms-flex-line-pack: center;
      align-content: center;
}

.mn-tit-area {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.8rem;
  margin-bottom: 1.6rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.img-data-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}
.img-data-list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.4rem;
}
.img-data-list .img-area img {
  display: block;
  max-width: 100%;
}
.img-data-list .txt-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.img-data-list .txt-area span {
  font-weight: 700;
  color: #9196AF;
}
.img-data-list .txt-area strong {
  font-size: 1.8rem;
}

.chart-area {
  position: relative;
  overflow-x: auto;
}
.chart-area canvas {
  width: 100% !important;
  height: auto !important;
}
.chart-area.sm {
  width: 12rem;
}
.chart-area.sm canvas {
  height: auto !important;
}
.chart-area:has(.chart-bar-stack) {
  overflow: visible;
}

.chart-legend {
  margin-bottom: 0.4rem;
}

.legend-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.2rem;
}

.legend {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  font-size: 14px;
  color: #9196AF;
}
.legend i {
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 100;
  background-color: #ddd;
  border-radius: 50%;
}
.legend i.primary {
  background-color: #009AEB;
}
.legend i.secondary {
  background-color: #00BA7A;
}
.legend i.accent {
  background-color: #EB325D;
}
.legend i.positive {
  background-color: #00BA7A;
}
.legend i.negative {
  background-color: orange;
}
.legend i.yellow {
  background-color: orange;
}
.legend i.blue {
  background-color: #009AEB;
}
.legend i.green {
  background-color: #00BA7A;
}
.legend i.pink {
  background-color: #EB325D;
}
.legend i.violet {
  background-color: violet;
}
.legend.lg {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  color: #9196AF;
}
.legend.lg i {
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 4px;
}

.chart-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.chart-box .chart-area {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.chart-box .cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.chart-info-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.8rem 1.6rem;
  border-bottom: 0.1rem solid #eee;
}
.chart-info-list li > .l-area,
.chart-info-list li > .r-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
}
.chart-info-list li .data {
  font-weight: 700;
  font-size: 1.8rem;
}

.a-chart-area .chart-list,
.chart-bar-list {
  display: grid;
  gap: 1.6rem;
}
.a-chart-area .chart-list li,
.chart-bar-list li {
  display: grid;
  gap: 0.4rem;
  padding-right: 6.4rem;
}
.a-chart-area .chart-list li .chart-tit,
.chart-bar-list li .chart-tit {
  display: inline-block;
  font-size: 16px;
  font-weight: 700;
}
.a-chart-area .chart-list li .chart-tit small,
.chart-bar-list li .chart-tit small {
  font-size: 14px;
  font-weight: 400;
}
.a-chart-area .chart-list li .bar-area,
.chart-bar-list li .bar-area {
  position: relative;
}
.a-chart-area .chart-list li .bar,
.chart-bar-list li .bar {
  display: inline-block;
  height: 2rem;
  border-radius: 0 1rem 1rem 0;
  background: #4757E6;
  vertical-align: middle;
  font-size: 0;
}
.a-chart-area .chart-list li .chart-label,
.chart-bar-list li .chart-label {
  position: absolute;
  margin-left: 0.8rem;
  display: inline-block;
  font-size: 12px;
  border-radius: 0.8rem;
  border: 0.1rem solid #eee;
  background: #F8F8F8;
  -webkit-box-shadow: 0.2rem 0.2rem 0.4rem rgba(51, 51, 51, 0.1);
          box-shadow: 0.2rem 0.2rem 0.4rem rgba(51, 51, 51, 0.1);
  padding: 0.2rem 0.4rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.a-chart-area .chart-list li .bar[style*="width:0%"] + .chart-label,
.chart-bar-list li .bar[style*="width:0%"] + .chart-label {
  margin-left: 0;
}
.a-chart-area .chart-list li:nth-child(2n) .bar,
.chart-bar-list li:nth-child(2n) .bar {
  background: #404664;
}

.chart-bar-stack {
  position: relative;
  height: 1.6rem;
  border-radius: 0.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.2rem;
  background: #F8F8F8;
  overflow: visible;
}
.chart-bar-stack .bar {
  height: 100%;
  font-size: 0;
  background: #ddd;
}
.chart-bar-stack .bar:first-of-type {
  border-radius: 0.8rem 0 0 0.8rem;
}
.chart-bar-stack .bar:last-of-type {
  border-radius: 0 0.8rem 0.8rem 0;
}
.chart-bar-stack .bar:only-child {
  border-radius: 0.8rem;
}
.chart-bar-stack .bar.primary {
  background: #009AEB;
}
.chart-bar-stack .bar.secondary {
  background: #00BA7A;
}
.chart-bar-stack .bar.accent {
  background: #EB325D;
}
.chart-bar-stack .bar.positive {
  background: #00BA7A;
}
.chart-bar-stack .bar.negative {
  background: orange;
}
.chart-bar-stack .bar.yellow {
  background: orange;
}
.chart-bar-stack .bar.blue {
  background: #009AEB;
}
.chart-bar-stack .bar.green {
  background: #00BA7A;
}
.chart-bar-stack .bar.pink {
  background: #EB325D;
}
.chart-bar-stack .bar.violet {
  background: violet;
}
.chart-bar-stack:has(.chart-marker-area) {
  margin: 3.2rem 0;
}

/* 메뉴테이블 */
.menu-board {
  position: relative;
}
.menu-board th {
  background-color: #F8F8F8;
  border-bottom: 1px solid #333;
}
.menu-board th,
.menu-board td {
  padding: 12px;
  text-align: center;
}
.menu-board td {
  border-bottom: 1px dashed #ddd;
}
.menu-board .menu-tit {
  font-size: 16px;
  vertical-align: middle;
  gap: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  vertical-align: middle;
}
.menu-board .menu-tit a {
  padding: 0 8px;
}
.menu-board tr:hover {
  background-color: #F8F8F8;
}
.menu-board .menu-depth .menu-tit {
  padding-left: 20px;
}
.menu-board .menu-depth .menu-depth .menu-tit {
  position: relative;
}
.menu-board .menu-depth .menu-depth .menu-tit::before {
  content: " ";
  position: absolute;
  left: 20px;
  width: 8px;
  height: 8px;
  border-left: 2px solid #ddd;
  border-bottom: 2px solid #ddd;
}
.menu-board .menu-depth.depth2 .menu-tit {
  padding-left: 40px;
}
.menu-board .menu-depth.depth3 .menu-tit {
  padding-left: 60px;
}
.menu-board .menu-depth.depth3 .menu-tit::before {
  left: 40px;
}
.menu-board .menu-depth.depth4 .menu-tit {
  padding-left: 80px;
}
.menu-board .menu-depth.depth4 .menu-tit::before {
  left: 60px;
}
.menu-board .menu-depth.depth5 .menu-tit {
  padding-left: 100px;
}
.menu-board .menu-depth.depth5 .menu-tit::before {
  left: 80px;
}

.flex-col-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.h-full {
  height: 100%;
}

/* 로그인 */
.login {
  background-color: #F8F8F8;
  padding: 40px;
  border-radius: 4px;
  max-width: 360px;
  width: 100%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.login img {
  display: block;
  margin-bottom: 16px;
}
.login .btn-flex-cont {
  margin-top: 14px;
  margin-bottom: 0;
}

/* 설문 */
.survey-write,
.survey-item-list {
  display: grid;
  gap: 16px;
}

.survey-write-fnc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.survey-section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 24px;
  border: 1px solid #ddd;
  border-top: 4px solid #4757E6;
  background-color: #F8F8F8;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: hidden;
  gap: 8px;
  border-radius: 4px;
}
.survey-section > *:last-child {
  margin-bottom: 0;
}
.survey-section .survey-item {
  background-color: #fff;
  padding: 16px;
  border: 2px solid #eee;
  border-radius: 4px;
}
.survey-section .survey-item.ui-sortable-helper {
  opacity: 0.8;
  -webkit-filter: drop-shadow(4px 4px 8px rgba(51, 51, 51, 0.2));
          filter: drop-shadow(4px 4px 8px rgba(51, 51, 51, 0.2));
  border: 1px solid #333;
  cursor: move;
}
.survey-section .survey-tit,
.survey-section .q-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.survey-section .survey-tit input,
.survey-section .q-item input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.survey-section .survey-section-header,
.survey-section .survey-section-body {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}
.survey-section .survey-section-footer {
  background-color: #fff;
  border-top: 1px solid #ddd;
  width: 100%;
  padding: 16px 24px;
  margin: 24px -24px -24px;
  width: calc(100% + 48px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.survey-section .survey-section-footer .r-area {
  margin-left: auto;
}
.survey-section .survey-item {
  display: grid;
  gap: 8px;
}
.survey-section .survey-item .a-write-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.survey-section .survey-item .a-write-list .ico-move {
  margin-top: 0.8rem;
}
.survey-section .survey-item .a-write-list .a-cont,
.survey-section .survey-item .a-write-list .a-txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.survey-section .survey-item .a-write-list .a-cont input,
.survey-section .survey-item .a-write-list .a-txt input {
  width: 100%;
}
.survey-section .survey-item .a-write-list .a-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 0.1rem solid #ddd;
  border-radius: 4px;
  gap: 0.8rem;
  padding: 0.8rem;
  background-color: #F8F8F8;
}
.survey-section .survey-item .a-write-list .a-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
}
.survey-section .survey-item .a-write-list .a-info .num {
  font-weight: 500;
  min-width: 24px;
  text-align: center;
}
.survey-section .survey-item .a-write-list .a-info .num.round {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 20px;
  height: 20px;
  min-width: 0;
  border: 0.1rem solid #333;
  border-radius: 50%;
}
.survey-section .survey-item .a-write-list .a-info .checkradio {
  margin: 0 4px;
}
.survey-section .survey-item .a-write-list .a-fnc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
.survey-section .survey-item .a-write-list .a-fnc .file-custom {
  display: inline-block;
  vertical-align: top;
}
.survey-section .survey-item .a-write-option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.survey-section .survey-item .a-write-option dd {
  margin-right: 16px;
}
.survey-section .survey-item .survey-item-fnc {
  margin-top: 8px;
}

.achievecode-fixed-area {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 2.4rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-top: 1px solid #ddd;
  height: 16rem;
  overflow: scroll;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.body:has(.page-fixed-area) {
  padding-bottom: 16rem;
}

.achievecode-point {
  display: grid;
  gap: 1.2rem;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.achievecode-point .tit {
  font-size: 16px;
}
.achievecode-point ~ .achievecode-point {
  margin-top: 0.8rem;
}

.achievecode-item {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.8rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.8rem;
  background-color: #F8F8F8;
  border-radius: 0.8rem;
}
.achievecode-item dl {
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.4rem;
}
.achievecode-item dl dt {
  font-weight: 700;
  color: #333;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.achievecode-item dl dt::after {
  content: ":";
}
.achievecode-item dl dd {
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  width: 100%;
  overflow: hidden;
  width: auto;
}
.achievecode-item dl dd::after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  background-color: #9196AF;
  border-radius: 2rem;
  vertical-align: middle;
  margin-left: 8px;
  margin-right: 4px;
}
.achievecode-item dl dd:last-of-type::after {
  display: none;
}

.h-full-box {
  display: grid;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  grid-template-rows: auto 1fr;
  padding: 0 40px;
}
.h-full-box .full-header {
  padding: 16px 0;
}

.ai-map-area {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.ai-map {
  width: 100%;
  height: 640px;
  border: 1px solid #ddd;
  border-radius: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.draggable-word {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-gap: 0;
  cursor: -webkit-grab;
  cursor: grab;
}
.draggable-word.horizontal {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.draggable-word.vertical {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

#puzzle-container.active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.direction-switch-container {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.direction-switch-container label.positive {
  font-weight: 700;
  color: #4757E6;
}
.direction-switch-container:has(input[type=checkbox]:checked) label.positive {
  font-weight: normal;
  color: #333;
}
.direction-switch-container:has(input[type=checkbox]:checked) label.negative {
  font-weight: 700;
  color: #EB325D;
}
.direction-switch-container input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 48px;
  height: 24px;
  background-color: #4757E6;
  border-radius: 12px;
  position: relative;
  outline: none;
  border: none;
  cursor: pointer;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
.direction-switch-container input[type=checkbox]:checked {
  background-color: #EB325D;
}
.direction-switch-container input[type=checkbox]::before {
  content: "";
  position: absolute;
  width: 22px;
  height: 22px;
  background-color: #fff;
  border-radius: 50%;
  top: 1px;
  left: 1px;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.direction-switch-container input[type=checkbox]:checked::before {
  -webkit-transform: translateX(24px);
          transform: translateX(24px);
}

.crossword-write-area {
  display: grid;
  gap: 16px;
  border: 0.1rem solid #ddd;
  border-radius: 4px;
}
.crossword-write-area .grid-container {
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-gap: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.crossword-write-area .grid-cell {
  position: relative;
  width: 40px;
  height: 40px;
  border: 1px solid black;
  text-align: center;
  line-height: 40px;
  font-size: 18px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.crossword-write-area .grid-cell.filled {
  background-color: #fff;
  color: transparent;
}
.crossword-write-area .grid-cell.wrong {
  background-color: red;
}
.crossword-write-area .grid-cell.wrong input {
  color: white;
}
.crossword-write-area .grid-cell.correct {
  background-color: blue;
}
.crossword-write-area .grid-cell.correct input {
  color: white;
}
.crossword-write-area .grid-cell.disabled {
  background-color: #ccc;
  color: #aaa;
  pointer-events: none;
}
.crossword-write-area .grid-cell .hint-number {
  position: absolute;
  left: 0;
  top: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  font-size: 12px;
  line-height: 1.5em;
  color: #fff;
  background: #000;
}
.crossword-write-area .input-cell {
  width: 100%;
  height: 100%;
  border: none;
  text-align: center;
  font-size: 18px;
  background-color: transparent;
  outline: none;
}
.crossword-write-area .input-cell.correct {
  color: #00BA7A;
}
.crossword-write-area .input-cell.incorrect {
  color: #EB325D;
}
.crossword-write-area .crossword-header {
  border-bottom: 0.1rem solid #ddd;
  padding: 1.6rem;
  background-color: #F8F8F8;
}
.crossword-write-area .crossword-header .word-fnc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.6rem;
}
.crossword-write-area .crossword-header .word-fnc .checkradio {
  margin: 0;
}
.crossword-write-area .crossword-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding: 1.6rem;
  gap: 16px;
}
.crossword-write-area .crossword-body > .l-area {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.crossword-write-area .crossword-body > .r-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.crossword-write-area .word-list {
  max-height: 640px;
  overflow-y: auto;
  padding-bottom: 1.6rem;
}
.crossword-write-area .word-list .fnc-area {
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 3;
  margin-bottom: 0;
  padding-bottom: 1.6rem;
}
.crossword-write-area .word-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.8rem;
}
.crossword-write-area .word-item > li {
  display: grid;
  grid-template-columns: 480px 1fr auto;
  gap: 1.6rem;
  border: 0.1rem solid #ddd;
  border-radius: 4px;
  padding: 1.2rem;
}
.crossword-write-area .word-item .draggable-word {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.crossword-write-area .word-item .hint-txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: left;
  border-left: 0.1rem solid #ddd;
  padding-left: 1.6rem;
}
.crossword-write-area .word-item .hint-txt::before {
  content: "단어 힌트";
  display: block;
  margin-bottom: 0.4rem;
  font-weight: 700;
}
.crossword-write-area .word-item .fnc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  z-index: 2;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 200px;
}
.crossword-write-area .word-item .fnc button {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.crossword-write-area .word-item .fnc .direction-switch-area {
  width: 100%;
}
.crossword-write-area .word-item .placed-word {
  position: relative;
}
.crossword-write-area .word-item .placed-word::before {
  content: " ";
  position: absolute;
  inset: 0;
  opacity: 0.05;
  background-color: #00BA7A;
  z-index: 1;
}
.crossword-write-area .word-item .placed-word .grid-cell {
  border-color: #ddd;
}
.crossword-write-area .word-item .placed-word .fnc .direction-switch-area {
  opacity: 0.5;
}
.crossword-write-area .word-item .placed-word .fnc .direction-switch-area input[type=checkbox] {
  pointer-events: none;
}
.crossword-write-area .word-add {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.6rem;
  border-top: 0.1rem solid #ddd;
  padding-top: 1.6rem;
}
.crossword-write-area .word-add .word-add-list {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: grid;
  gap: 0.8rem;
}
.crossword-write-area .word-add .word-add-list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
}
.crossword-write-area .word-add .word-add-list > li .tit-label {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  gap: 0.8rem;
}
.crossword-write-area .direction-switch-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
  border: 0.1rem solid #eee;
  padding: 0.8rem;
  border-radius: 0.8rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.crossword-write-area .direction-switch-area #direction-switch-container {
  font-size: 12px;
}
.crossword-write-area #add-word {
  margin-top: 1.6rem;
  width: 100%;
}

.tit-label {
  font-weight: 700;
}

.crossword-puzzle {
  display: grid;
  grid-template-columns: 1fr 36%;
  gap: 2.4rem;
}

.crossword-puzzle > * {
  position: relative;
}

.crossword-puzzle .sticky {
  position: sticky;
  top: 0;
}

.crossword-puzzle .hint-area .sticky {
  display: grid;
  gap: 1.2rem;
}

.crossword-puzzle .hint-area article {
  background-color: var(--color-background-default-primary);
  border: 2px solid #333;
  border-radius: 4px;
}

.crossword-puzzle .hint-area .hint-tit {
  padding: 1.6rem 2.4rem;
  background-color: #004593;
  font-size: 16px;
  font-weight: var(--size-font-weight-xlg);
  line-height: var(--size-font-lineheight-sm);
  color: #fff;
}

.crossword-puzzle .hint-area .hint-list {
  padding: 1.2rem;
}

.crossword-puzzle .hint-area .hint-list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.6rem 0.8rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0.8rem;
  border-bottom: 0.1rem solid #eee;
  font-size: var(--size-font-md);
  font-weight: var(--size-font-weight-md);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.crossword-puzzle .hint-area .hint-list > li .hint-number {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
}

.crossword-puzzle .hint-area .hint-list > li:last-of-type {
  border: none;
}

.puzzle {
  background-color: #8FC8FF;
  border: 2px solid #333;
  border-radius: 4px;
}
.puzzle .puzzle-header {
  height: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1.6rem;
  background: url("../images/puzzle-obj.svg") 1.6rem center no-repeat;
}

.puzzle .puzzle-body {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: grid;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  grid-gap: 0.4rem;
  width: 100%;
  background-color: #0074E5;
  padding: 1.6rem;
}

.puzzle .puzzle-body .grid-cell {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 0.8rem;
  background: var(--color-background-default-primary);
  -webkit-box-shadow: -2px -2px 0px 0px #DDDAE3 inset;
  box-shadow: -2px -2px 0px 0px #DDDAE3 inset;
}

.puzzle .puzzle-body .grid-cell input {
  color: #0056AA;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  min-width: 0;
  width: 100%;
  padding: 0;
  /* Title/lg */
}

.puzzle .puzzle-body .grid-cell.filled {
  color: transparent;
}

.puzzle .puzzle-body .grid-cell.wrong {
  background-color: #FCCCCC;
  -webkit-box-shadow: -2px -2px 0px 0px #F89999 inset;
  box-shadow: -2px -2px 0px 0px #F89999 inset;
}

.puzzle .puzzle-body .grid-cell.wrong input {
  color: #CD0404;
}

.puzzle .puzzle-body .grid-cell.disabled {
  pointer-events: none;
  background: #0074E5;
  -webkit-box-shadow: 2px 2px 0px 0px #1E90FF inset, -2px -2px 0px 0px #0056AA inset;
  box-shadow: 2px 2px 0px 0px #1E90FF inset, -2px -2px 0px 0px #0056AA inset;
}

.puzzle .puzzle-body .grid-cell .hint-number {
  position: absolute;
  left: -0.4rem;
  top: -0.4rem;
  width: 1.6rem;
  height: 1.6rem;
}

.puzzle .puzzle-body .grid-cell .hint-number ~ .hint-number {
  top: 1.8rem;
}

.puzzle .puzzle-body .input-cell {
  width: 100%;
  height: 100%;
  border: none;
  text-align: center;
  font-size: 18px;
  background-color: #fff !important;
}

.puzzle .puzzle-body .input-cell.correct {
  color: #CD0404;
}

.puzzle .puzzle-body .input-cell.incorrect {
  color: #006600;
}

.hint-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 2.8rem;
  height: 2.8rem;
  line-height: 2.4rem;
  border-radius: 100%;
  border: 0.2rem solid #D94065;
  background: #F65C70;
  font-size: var(--size-font-sm);
  font-weight: var(--size-font-weight-xlg);
  line-height: var(--size-font-lineheight-sm);
  color: #fff;
}
.hint-number.vertical {
  background-color: #7A45C6;
  border-color: #5917B8;
  border-radius: 0.4rem;
}

.grade-class-list {
  margin-top: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #F8F8F8;
}
.grade-class-list:first-child {
  margin-top: 0;
}
.grade-class-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.grade-class-list li .grade-class-tit {
  width: 120px;
  height: 100%;
  padding: 8px 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.grade-class-list li .grade-class-tit .checkradio {
  margin: 0;
}
.grade-class-list li ~ li {
  border-top: 1px solid #eee;
}
.grade-class-list li fieldset {
  padding: 8px 16px;
}
.grade-class-list li .grade-class-cont {
  background-color: #fff;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}/*# sourceMappingURL=style.css.map */