@charset "UTF-8";
.fix {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: auto;
}

@font-face {
  font-family: "BookkMyungjo-Lt";
  font-style: normal;
  font-weight: 400;
  src: url("https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2302@1.0/BookkMyungjo-Lt.woff2") format("woff2");
}
@font-face {
  font-family: "BookkMyungjo-Bd";
  font-style: normal;
  font-weight: 700;
  src: url("https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2302@1.0/BookkMyungjo-Bd.woff2") format("woff2");
}
/*** SUB 
========================================== ***/
.bg-visual {
  padding-top: var(--header-height);
  height: 41.75rem;
  overflow: hidden;
  background-color: #010101;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.bg-visual .bar-container {
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 1320px;
  margin: auto;
}

.bg-visual .bar {
  position: absolute;
  opacity: 0;
  height: 1.25rem;
  background-color: #FB5A61;
  -webkit-animation-name: fade-in-x-animate;
          animation-name: fade-in-x-animate;
  -webkit-animation-duration: 1.2s;
          animation-duration: 1.2s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.bg-visual .bar1 {
  top: var(--header-height);
  left: calc(50% - 8.25rem);
  width: 4.75rem;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-transform-origin: center right;
          transform-origin: center right;
}
.bg-visual .bar2 {
  top: calc(var(--header-height) + 8.25rem);
  right: 0;
  width: 6.5rem;
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
  -webkit-transform-origin: center right;
          transform-origin: center right;
}

.bg-visual.topic2 .bar1 {
  top: var(--header-height);
  left: 2.5rem;
  width: 8.875rem;
  height: 8.5rem;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='142' height='136' viewBox='0 0 142 136' fill='none'%3E%3Cpath d='M141.995 0.000291856L135.165 0.000290662C60.5154 0.00027761 -1.05809e-05 60.5158 -2.3633e-05 135.165L5.34058e-05 -4.00543e-05L141.995 0.000291856Z' fill='%23FFCD47'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-color: rgba(0,0,0,0);
}

.bg-visual.topic2 .bar2 {
  bottom: calc(var(--header-height) + 5.25rem);
  right: -3.5rem;
  top:auto;

  width: 8.875rem;
  height: 8.5rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='142' height='136' viewBox='0 0 142 136' fill='none'%3E%3Cpath d='M0.00128174 135.165L6.83127 135.165C81.4807 135.165 141.996 74.6495 141.996 0L141.996 135.165L0.00128174 135.165Z' fill='%23FFCD47'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-color: rgba(0,0,0,0);
}

.bg-visual.topic3 .bar {
  background-color:#2B5D5A;
}

.bg-visual.topic3 .bar1{
  left: calc(50% - 18.25rem);
}
.bg-visual.topic3 .bar2 {
  top: auto;
  right: 0;
  left: calc(60% + 8.25rem);
  bottom: 6.5rem;
  height: 6.5rem;
  width: 1.25rem;
}

.bg-visual.topic4 .bar {
  background-color:#2C36A6;
}

.bg-visual.topic4 .bar1{
  left: 8rem;
  width: 1.25rem;
  height: 4rem;
}
.bg-visual.topic4 .bar2 {
  top: auto;
  right: 0;
  left: calc(60% + 8.25rem);
  bottom: 6.5rem;
  height: 4.5rem;
  width: 1.25rem;
}


.sub-head-wrap {
  position: relative;
}

.sub-head-container {
  position: relative;
  z-index: 1;
  margin: 0 auto;
  margin-inline: auto;
  padding-inline: var(--wrapper-padding-x);
  max-width: calc(var(--contents-width-wide) + var(--wrapper-padding-x) * 2);
}
.sub-head-container .contain-wide {
  padding-inline: 0;
}

.sub-head {
  position: relative;
  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;
  gap: 2rem 1rem;
  padding-block: 2.25rem;
  background-color: #fff;
}
.sub-head .sub-title {
  margin-bottom: 0;
  padding-top: 0;
  text-align: left;
}
.sub-head .sub-title .title {
  font-size: 2.75rem;
}
.sub-head .head-content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.sub-head .keywords {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 40%;
  line-height: 0;
}
.sub-head .keywords ul {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.25rem;
}
.sub-head .keywords a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.25rem 0.5rem;
  background-color: #010101;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25em;
}

.toggle-info-title {
  position: relative;
  min-height: 1.5rem;
  cursor: pointer;
}
.toggle-info-title.sub-title {
  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;
  gap: 1rem;
  min-height: 4.5rem;
}
.toggle-info-title .title {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-right: 56px;
}
.toggle-info-title .title::after {
  position: absolute;
  top: calc(50% - 0.75rem);
  right: 16px;
  width: 1.5rem;
  height: 1.5rem;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
  background-position: 100% 50%;
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
  background-image: url(../images/sub/ico_path_expand.svg);
}
.toggle-info-title * {
  cursor: pointer;
}
.toggle-info-title .description {
  position: relative;
  opacity: 1;
  font-size: 1rem;
  line-height: 1.5rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.toggle-info-title .description p {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: break-word;
  word-break: break-all;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.toggle-info-title .description p:after {
  content: "";
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  height: 1rem;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.001)), to(white));
  background: linear-gradient(rgba(255, 255, 255, 0.001), white);
}
.toggle-info-title .description span {
  position: absolute;
  right: 0;
  bottom: 0;
  padding-left: 0.75rem;
  background-color: #fff;
  background-image: linear-gradient(to right, #000 0%, #000 100%);
  background-image: -webkit-gradient(linear, left top, right top, from(#000), to(#000));
  background-position: 1.9375em 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5rem;
  vertical-align: middle;
}
.toggle-info-title .description span:before {
  content: "... ";
  display: inline;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5rem;
  vertical-align: middle;
}
.toggle-info-title.is-open .title::after {
  content: "";
  background-image: url(../images/sub/ico_path_collapse.svg);
}
.toggle-info-title.is-open p {
  height: 0;
}
.toggle-info-title.is-open span {
  display: none;
}
.toggle-info-title.is-open .description {
  opacity: 0;
  height: 0;
}
.toggle-info-cont {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  padding-top: 2rem;
  background-color: rgba(255, 255, 255, 0.5);
}
.toggle-info-cont.is-open {
  position: relative;
  visibility: inherit;
  opacity: 1;
  margin-bottom: 2.5rem;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}

.drop-menu {
  position: relative;
  z-index: 100;
  width: 100%;
  background-color: #FFF;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.drop-menu .path {
  position: relative;
  z-index: 1;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background: #FFF;
  -webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.1s;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.1s;
}
.drop-menu .path button {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 2.5rem;
  width: 100%;
  text-align: left;
  -webkit-transition: none;
  transition: none;
  background-position: 100% 50%;
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
  background-image: url(../images/sub/ico_path_expand.svg);
}
.drop-menu .path ul {
  position: absolute;
  top: 104%;
  right: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  padding-block: 0.5rem 1rem;
  border-top: 2px solid transparent;
  width: 100%;
  background: #FFF;
  -webkit-box-shadow: 2px 10px 10px 0px rgba(0, 0, 0, 0.12);
          box-shadow: 2px 10px 10px 0px rgba(0, 0, 0, 0.12);
  -webkit-transform: translateY(12px);
          transform: translateY(12px);
  -webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.1s, border-top 0.2s ease-in-out;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.1s, border-top 0.2s ease-in-out;
}
.drop-menu .path ul li {
  padding-inline: 0.5rem;
}
.drop-menu .path ul li a {
  display: block;
  padding: 0.375rem 0.5rem;
  color: #010101;
  font-size: 0.9375rem;
  line-height: 1.75em;
}
.drop-menu .path ul li:not(.is-active):where(:hover, :focus) a:not([aria-current=page]), .drop-menu .path ul li:not(.is-active) a:not([aria-current=page]):where(:hover, :focus) {
  background-color: #F9F9F9;
  text-decoration: underline;
}
.drop-menu .path ul li.is-active a,
.drop-menu .path ul li a[aria-current=page] {
  color: var(--primary-color);
  font-weight: 700;
  text-decoration: none;
}
.drop-menu .path.on {
  z-index: 2;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.drop-menu .path.on button {
  background-image: url(../images/sub/ico_path_collapse.svg);
}
.drop-menu .path.on ul {
  z-index: 1;
  visibility: inherit;
  opacity: 1;
  display: block;
  border-top-color: #000;
  -webkit-box-shadow: 2px 6px 16px 0px rgba(0, 0, 0, 0.14);
          box-shadow: 2px 6px 16px 0px rgba(0, 0, 0, 0.14);
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: all 0.2s ease-in-out, border-top 0.2s 0.05s ease-in-out;
  transition: all 0.2s ease-in-out, border-top 0.2s 0.05s ease-in-out;
}

.sub-title {
  margin-bottom: 3rem;
  text-align: center;
}
.sub-title .title {
  position: relative;
  color: #333;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 125%; /* 3.125rem */
  letter-spacing: -0.05rem;
}
.sub-title .desc {
  margin-top: 1.5rem;
  color: #414141;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 200%; /* 2.25rem */
}

.sub-cont {
  position: relative;
  margin: 0 auto;
  padding-block: 0 7.5rem;
}
.sub-cont.contain-wide {
  padding-inline: var(--wrapper-padding-x);
  max-width: calc(var(--contents-width-wide) + var(--wrapper-padding-x) * 2);
}
.sub-cont.contain-narrow {
  padding-inline: var(--wrapper-padding-x);
  max-width: calc(var(--contents-width-narrow) + var(--wrapper-padding-x) * 2);
}

.bodycopy p {
  font-size: 1rem;
  line-height: 1.875em;
}
.bodycopy p ~ p {
  margin-top: 0.75em;
}

.bodycopy-md p {
  font-size: 1.125rem;
  line-height: 1.875em;
  letter-spacing: -0.01em;
}
.bodycopy-md p ~ p {
  margin-top: 1.5em;
}

.bodycopy-lg p {
  font-size: 1.5rem;
  line-height: 1.875em;
}
.bodycopy-lg p ~ p {
  margin-top: 0.75em;
}

.bodycopy-xl p {
  font-size: 1.875rem;
  line-height: 1.57em;
  letter-spacing: -0.04em;
}
.bodycopy-xl p ~ p {
  margin-top: 1em;
}

p.bokk {
  font-family: "BookkMyungjo-LT";
}

.flexy-paragraph {
  position: relative;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  --gap: 2.5rem 5rem;
  gap: var(--gap);
}
.flexy-paragraph ~ .flexy-paragraph {
  margin-top: 5rem;
}
.flexy-paragraph.line-top {
  padding-top: 5rem;
  border-top: 1px solid #010101;
}
.flexy-paragraph .l-cont {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-right: 1.25rem;
  width: calc(40% - 2.5rem);
}
.flexy-paragraph .l-cont .sticky {
  position: sticky;
  top: calc(var(--header-height) + 0.5rem);
}
.flexy-paragraph .r-cont {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: calc(60% - 2.5rem);
}

/* Purpose */
body:has(.purpose) .sub-cont {
  background: linear-gradient(1deg, #FFF 33.33%, rgba(255, 255, 255, 0) 66.66%);
}

.purpose {
  position: relative;
  padding-top: 27.5rem;
  min-height: 80svh;
  background: linear-gradient(1deg, #FFF 60%, rgba(255, 255, 255, 0) 80%);
  text-align: center;
}
.purpose .fade-in-img {
  background-color: #000;
  overflow: hidden;
}
.purpose .bg {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: -1;
  height: 889px;
  background-attachment: fixed;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: auto;
  background-image: url(../images/sub/bg_purpose.jpg);
}
.purpose .head {
  margin-bottom: 2rem;
}
.purpose .head .category {
  color: #414141;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 200%; /* 2.25rem */
}
.purpose .title-xl {
  margin-bottom: 4.5rem;
  color: #333;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 150%; /* 3.75rem */
  letter-spacing: -0.05rem;
}
.purpose .bodycopy {
  margin-inline: auto;
  max-width: 45rem;
}
.purpose .bodycopy p {
  color: #414141;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 200%; /* 2.25rem */
}
.purpose .bodycopy p ~ p {
  margin-top: 2em;
}

/* Topic contents */
body:has(.topic) .header {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 20%, rgba(255, 255, 255, 0) 100%);
}
body:has(.topic) .header .logo-bk {
  display: none;
}
body:has(.topic) .header .logo-wh {
  display: block;
}
body:has(.topic) .header .gnb  li {
  color: #fff;
}


body:has(.topic) .header .gnb > li:where(:hover, :focus) > a, body:has(.topic) .header .gnb > li:where(:hover, :focus) > button {
  color: #FFF;
}
body:has(.topic) .header .gnb > li > a::before, body:has(.topic) .header .gnb > li > button::before {
  background-color: #fff;
}
body:has(.topic) .header .all-menu-btn {
  --menu-btn-color: #FFF;
}
body:has(.topic) .header .all-menu-btn span {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}
body:has(.topic).scroll-up .header, body:has(.topic).scroll-down .header {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, rgb(255, 255, 255)), to(rgba(255, 255, 255, 0))) !important;
  background: linear-gradient(180deg, rgb(255, 255, 255) 20%, rgba(255, 255, 255, 0) 100%) !important;
}
body:has(.topic).scroll-up .header .logo-bk, body:has(.topic).scroll-down .header .logo-bk {
  display: block !important;
}
body:has(.topic).scroll-up .header .logo-wh, body:has(.topic).scroll-down .header .logo-wh {
  display: none !important;
}
body:has(.topic).scroll-up .header .gnb > li, body:has(.topic).scroll-down .header .gnb > li {
  color: #fff !important;
}
body:has(.topic).scroll-up .header .gnb li, body:has(.topic).header-out .header .gnb  li {
  color: #010101 !important;
}
body:has(.topic).scroll-up .header .gnb > li:after, body:has(.topic).scroll-down .header .gnb > li:after {
  background-color: #010101 !important;
}
body:has(.topic).scroll-up .header .all-menu-btn, body:has(.topic).scroll-down .header .all-menu-btn {
  --menu-btn-color: #000;
}
body:has(.topic).scroll-up .header .all-menu-btn span, body:has(.topic).scroll-down .header .all-menu-btn span {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}
body:has(.topic) #wrapper {
  padding-top: 0;
}
body:has(.topic) .sub-head-container {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
}
body:has(.topic) .sub-cont {
  padding-bottom: 0;
}
body:has(.topic) .align-right {
  position: relative;
  margin-right: 0;
  margin-left: auto;
  padding-inline: 2.5rem;
  max-width: 1320px;
  background-color: #FFF;
}
body:has(.topic) .list-top {
  padding-top: 2rem;
}
body:has(.topic) .list-top:after {
  content: "";
  position: absolute;
  inset-inline: -2.5rem;
  top: 0;
  opacity: 0.25;
  height: 1px;
  background-color: #000;
}

.topic {
  padding-bottom: 7.5rem;
  background-color: #F9F9F9;
}
.topic .video-wrap {
  margin-bottom: 4.5rem;
  border-radius: 3.75rem;
  text-align: center;
  aspect-ratio: 16/9;
}
.topic .video-wrap img {
  border-radius: 3.75rem;
}
.topic .gallery-list ul {
  --gap: 1.75rem;
}
.topic .gallery-list li {
  padding-bottom: 4rem;
}
.topic .gallery-list a {
  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;
  max-width: 12rem;
  aspect-ratio: 39/55;
}
.topic .gallery-list .title {
  margin-top: 0.25rem;
}
.topic .floating-content {
  --scale-a: 0.94;
  --scale-b: 1.02;
  --rotate-a: -2deg;
  --rotate-b: 2deg;
  position: relative;
  width: 100%;
  max-width: 100%;
  min-height: 100%;
}
.topic .floating-item {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 100%;
  height: 100%;
  -webkit-transform: scale(0.94) rotate(0deg);
          transform: scale(0.94) rotate(0deg);
  -webkit-animation-name: floating-animate;
          animation-name: floating-animate;
  -webkit-animation-duration: 10s;
          animation-duration: 10s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  offset-path: path("M 67.6265 19.6887 C 67.6265 19.6887 67.6265 36.8093 67.6265 36.8093");
  offset-rotate: 0deg;
}

.layer-button {
  position: relative;
}

.layer-option {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 9;
  visibility: hidden;
  opacity: 0;
  padding: 0.5rem 1rem;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 120px;
  background-color: #F5F5FB;
  white-space: nowrap;
  -webkit-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  will-change: opacity, visibility;
}
.layer-option.on {
  visibility: inherit;
  opacity: 1;
}

.download-pdf,
.download-zip {
  --icon-size: .875rem;
  display: block;
  padding-block: 0.25rem;
  padding-left: 1.25rem;
  width: 100%;
  color: #010101;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: -0.01em;
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-size: auto var(--icon-size);
  background-image: url(../images/sub/arw_forward.svg);
}
.download-pdf:hover,
.download-zip:hover {
  background-color: #EEEEF8;
}

/* ----- Topic index */
.topic-index {
  position: relative;
  padding-top: 7.5rem;
}
.topic-index .fixed-logo {
  position: absolute;
  top: 50%;
  top: calc(50% - 50px);
  right: 0;
  left: 0;
  z-index: -1;
  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: 100%;
  height: 50px;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.topic-index .fixed-logo svg {
  width: 100%;
  height: 100%;
}
.topic-index .section-topic {
  position: relative;
}
.topic-index .sub-title {
  margin-bottom: 4.5rem;
}
.topic-index .gallery-list ul {
  --num: 4;
  --gap: 2rem;
}
.topic-index .gallery-list a {
  padding-inline: 0;
  max-width: 100%;
  text-decoration: none;
}
.topic-index .gallery-list .thumb {
  border-radius: 0.25rem;
}
.topic-index .gallery-list .title {
  margin-top: 1.25rem;
  color: #333;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.25em;
}
.topic-index .sideband {
  --sideband-width: 1rem;
  --bl-height: 153px;
  --rd-height: 98px;
  --gr-height: 148px;
  --ye-height: 142px;
  position: fixed;
  top: var(--header-height);
  z-index: 102;
  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;
  width: var(--sideband-width);
  height: calc(100svh - var(--header-height));
  min-height: 100px;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.topic-index .sideband div {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.topic-index .sideband .wh {
  -ms-flex-negative: 1;
      flex-shrink: 1;
}
.topic-index .sideband .wh1 {
  height: calc(100% - var(--bl-height) - var(--rd-height));
  max-height: 430px;
}
.topic-index .sideband .wh2 {
  height: calc(100% - var(--bl-height) - var(--rd-height));
  max-height: 80px;
}
.topic-index .sideband .wh3 {
  height: calc(100% - var(--gr-height) - var(--ye-height));
  max-height: 80px;
}
.topic-index .sideband .wh4 {
  height: calc(100% - var(--gr-height) - var(--ye-height));
  max-height: 146px;
}
.topic-index .sideband .wh5 {
  height: calc(100% - var(--gr-height) - var(--ye-height));
  min-height: 20px;
  max-height: 170px;
}
.topic-index .sideband .bl {
  height: var(--bl-height);
  background-color: #2C36A6;
}
.topic-index .sideband .rd {
  height: var(--rd-height);
  background-color: #FB5A61;
}
.topic-index .sideband .gr {
  height: var(--gr-height);
  background-color: #2B5D5A;
}
.topic-index .sideband .ye {
  height: var(--ye-height);
  background-color: #FFCD47;
}
.topic-index .sideband-left {
  left: 0;
}
.topic-index .sideband-right {
  right: 0;
}

body.scroll-down .sideband div {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
body.scroll-down .sideband .wh1 {
  max-height: 220px;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
body.scroll-down .sideband .wh2 {
  max-height: 100px;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
body.scroll-down .sideband .wh3 {
  max-height: 180px;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
body.scroll-down .sideband .wh4 {
  max-height: 180px;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
body.scroll-down .sideband .wh5 {
  max-height: 0;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
body.scroll-down .sideband .bl {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
body.scroll-down .sideband .rd {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
body.scroll-down .sideband .gr {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
body.scroll-down .sideband .ye {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

/* Timeline */
.timeline {
  --color-rd: #FB5A60;
  --color-ye: #FFCD48;
  --color-gr: #2A5D5A;
  --color-bl: #2B35A7;
}

.history-container {
  --month-col: 12;
  --row-height: 2rem;
  position: relative;
  margin-bottom: 2rem;
  overflow-x: auto;
}

.history-container .chart-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 800px;
  font-size: 0.75rem;
  line-height: 1.25em;
}
.history-container .chart-grid .grid-row {
  display: grid;
  grid-template-columns: repeat(var(--month-col), 1fr);
}
.history-container .chart-grid .grid-header {
  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;
  margin-bottom: 1rem;
  padding: 0.5rem;
  border-bottom: 1px solid var(--Divider-Primary, #DFE1E3);
  height: 3.5rem;
  color: #727272;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 125%; /* 17.5px */
}
.history-container .chart-grid .grid-header strong {
  display: block;
  color: #000;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 125%; /* 22.5px */
}
.history-container .chart-grid .grid-row-content {
  position: relative;
  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;
  padding-block: 0.5rem;
  height: var(--row-height, 2rem);
  grid-column: 1/-1;
}
.history-container .chart-grid .range {
  position: absolute;
  z-index: 2;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  height: 1rem;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  cursor: pointer;
}
.history-container .chart-grid .range:hover {
  border: 1px solid rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
}
.history-container .chart-grid .range.topic-1 {
  background-color: var(--color-rd);
}
.history-container .chart-grid .range.topic-2 {
  background-color: var(--color-ye);
}
.history-container .chart-grid .range.topic-3 {
  background-color: var(--color-gr);
}
.history-container .chart-grid .range.topic-4 {
  background-color: var(--color-bl);
}

.timeline-container section {
  padding-top: 12rem;
}

.timeline h1.title  {
  padding-top: 5.8rem;
}
.timeline h1.title::before {
  content: "";
  position: absolute;
  top: 0rem;
  right: 0;
  left: 0;
  opacity: 0.2;
  display: block;
  margin-inline: auto;
  width: 1px;
  height: 4.37rem;
  background: #000;
}


.timeline-container section:not(:first-child)::before {
  content: "";
  position: absolute;
  top: -6rem;
  right: 0;
  left: 0;
  opacity: 0.2;
  display: block;
  margin-block: 10rem 2rem;
  margin-inline: auto;
  width: 1px;
  height: 4.375rem;
  background: #000;
}
.timeline-container section.topic-1 .timeline-head .bar {
  background-color: var(--color-rd);
}
.timeline-container section.topic-2 .timeline-head .bar {
  background-color: var(--color-ye);
}
.timeline-container section.topic-3 .timeline-head .bar {
  background-color: var(--color-gr);
}
.timeline-container section.topic-4 .timeline-head .bar {
  background-color: var(--color-bl);
}

.timeline-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px var(--gap);
  --num: 4;
  --gap: .5rem;
}
.timeline-content .timeline-head {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: calc(100% / var(--num) - (var(--gap) - var(--gap) * 1 / var(--num)));
}
.timeline-content .timeline-head .bar {
  display: inline-block;
  border-radius: 0.5rem;
  width: 3rem;
  height: 0.5rem;
  background-color: #ddd;
}
.timeline-content .timeline-head .title {
  margin-top: 1rem;
  color: #333;
  font-size: 2.25rem;
  font-weight: 500;
  line-height: 125%; /* 45px */
}
.timeline-content .timeline-head .desc {
  margin-top: 1rem;
  color: #333;
  font-size: 1rem;
  font-weight: 500;
  line-height: normal;
}
.timeline-content .timeline-head .period {
  margin-top: 1rem;
  color: #000;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: normal;
}
.timeline-content article {
  padding: 0.5rem;
  width: calc(100% / var(--num) - (var(--gap) - var(--gap) * 1 / var(--num)));
}
.timeline-content article .item {
  padding: 0.5rem;
  width: 100%;
  cursor: pointer;
}
.timeline-content article .item:where(:focus, :hover) .media-content .pic img {
  -webkit-transform: scale(1.12);
          transform: scale(1.12);
}
.timeline-content article .media-content {
  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;
}
.timeline-content article .media-content .pic {
  position: relative;
  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-inline: auto;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 1;
}
.timeline-content article .media-content .pic img {
  opacity: 1;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -o-object-fit: contain;
     object-fit: contain;
}
.timeline-content article .text-content {
  margin-top: 0.5rem;
  overflow: hidden;
  text-align: center;
}
.timeline-content article .text-content .date {
  display: block;
  color: #A9A9A9;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: normal;
}
.timeline-content article .text-content .title {
  margin-top: 0.5rem;
  max-width: 100%;
  color: #000;
  font-size: 1rem;
  font-weight: 500;
  line-height: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-all;
  white-space: nowrap;
}
.timeline-content article .text-content .label {
  display: block;
  margin-top: 0.25rem;
  color: #000;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: normal;
}

.media-popup {
  position: fixed;
  left: 50%;
  bottom: 0;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  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;
  padding: var(--header-height) 1.5rem 0;
  width: 100%;
  max-width: 720px;
  max-width: 1200px;
  height: 100svh;
  overflow: hidden;
  text-align: center;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.media-popup.is-open {
  z-index: 1000;
  z-index: 1002;
  visibility: inherit;
  opacity: 1;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.media-popup.is-open .item {
  opacity: 1;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.media-popup .inner {
  position: relative;
  margin-inline: auto;
  padding-block: 5rem 1.5rem;
  padding-inline: 1rem;
  width: 100%;
  background-color: #000;
}
.media-popup .item {
  position: relative;
  opacity: 0;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.media-popup .media-content .pic {
  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: 100%;
  /* overflow-y: auto; */
  height: calc(70svh - var(--header-height));
  min-height: 240px;
  max-height: 100%;
}
.media-popup .media-content .pic img {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.media-popup .text-content {
  margin-top: 2rem;
  color: #fff;
}
.media-popup .text-content .title {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.5em;
}
.media-popup .text-content .date {
  margin-top: 0.5rem;
  color: #A9A9A9;
  font-size: 0.75rem;
  line-height: 1.5em;
  font-weight: 500;
  font-family: "Arita buri";
}
.media-popup .ui-button {
  display: block;
  margin-top: 2rem;
  padding-block: 0.5rem;
  padding-inline: 0.5rem;
  border: 1px solid #eee;
  width: 100%;
  color: #eee;
  font-size: 1rem;
  line-height: 1.5rem;
}
.media-popup .ui-button:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
.media-popup .btn-popup-close {
  position: absolute;
  top: 0;
  left: 0;
  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: 3rem;
  height: 3rem;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.5rem;
  background-image: url(../images/sub/btn_pop_close.svg);
}

/* Storytelling */
.storytelling-index {
  --line: 1.25em;
  --space: .75rem;
  position: relative;
}
.storytelling-index .contain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-block: 2rem;
}
.storytelling-index .sub-title {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-top: 0;
  width: 12.5rem;
}
.storytelling-index .sub-title .title {
  color: #838383;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25em;
}
.storytelling-index .index-list {
  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;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  max-height: calc(var(--line) * 4 + var(--space) * 4);
  max-height: 10.875em;
  font-size: 1.125rem;
  line-height: var(--line);
}
.storytelling-index .index-list a {
  margin-bottom: var(--space);
  padding-inline: 0.5rem;
  width: 25%;
  font-weight: 700;
}
.storytelling-index .index-list a span {
  display: inline;
  padding-bottom: 0.125rem;
  background-image: -webkit-gradient(linear, left top, right top, from(#010101), to(#010101));
  background-image: linear-gradient(to right, #010101 0%, #010101 100%);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 0 2px;
  -webkit-transition: 0.1s ease-in-out;
  transition: 0.1s ease-in-out;
}
.storytelling-index .index-list a:where(:hover, :focus) span {
  background-size: 100% 2px;
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
.storytelling-index .bg-list {
  position: relative;
  width: 100%;
  height: 42.5rem;
  background-color: #000;
  overflow: hidden;
  line-height: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.storytelling-index .bg-list:after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.5;
  background-color: #000;
}
.storytelling-index .bg-list img,
.storytelling-index .bg-list video {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.storytelling-index .bg-list img.active,
.storytelling-index .bg-list video.active {
  opacity: 1;
  -webkit-transition: 0.6s ease-in-out;
  transition: 0.6s ease-in-out;
}

.storytelling {
  padding-top: 1px;
}
.storytelling .sub-title {
  margin-inline: auto;
  max-width: 45rem;
}
.storytelling .sub-title .current-page {
  margin-block: 1rem;
  color: #000;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 125%; /* 17.5px */
}
.storytelling .sub-title .title {
  margin-block: 2rem;
  font-size: 3.125rem;
  letter-spacing: -0.1rem;
}
.storytelling .sub-title .desc {
  margin-block: 1.25rem;
  font-size: 1.25rem;
}

.storytelling .title-xl {
  font-size: 2.5rem;
}

.storytelling .sub-title:before, .storytelling .sub-title:after {
  content: "";
  opacity: 0.2;
  display: block;
  margin-inline: auto;
  width: 1px;
  height: 4.375rem;
  background: #000;
}
.storytelling .top-visual {
  margin-block: 3rem 5rem;
  border-radius: 0.25rem;
  height: 35.625rem;
  overflow: hidden;
  line-height: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.storytelling .top-visual .visual-video {
  position: relative;
  height: 100%;
  background-color: #000;
}
.storytelling .top-visual video {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  opacity: 1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.storytelling .top-visual img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.story-content {
  /* 광복직후사진 */
  /* 사진자료 */
}
.story-content .content {
  padding-block: 8rem;
}
.story-content p {
  word-break: break-all;
}
.story-content div[class*=-layout] + div[class*=-layout] {
  margin-top: 4.5rem;
}
.story-content .text-img-layout,
.story-content .img-text-layout,
.story-content .img-layout {
  --num: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.story-content .text-img-layout.row-2,
.story-content .img-text-layout.row-2,
.story-content .img-layout.row-2 {
  --num: 2;
}
.story-content .text-img-layout.row-3,
.story-content .img-text-layout.row-3,
.story-content .img-layout.row-3 {
  --num: 3;
}
.story-content .text-img-layout .image-wrap,
.story-content .img-text-layout .image-wrap,
.story-content .img-layout .image-wrap {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: calc(100% / var(--num) - (var(--gap) - var(--gap) * 1 / var(--num)));
}
.story-content .text-layout {
  margin-inline: auto;
  max-width: 45rem;
}
.story-content .text-img-layout {
  --gap: 4.5rem;
  gap: 2rem var(--gap);
}
.story-content .img-text-layout {
  --gap: 4.5rem;
  gap: 2rem var(--gap);
}
.story-content .img-layout {
  --gap: 10px;
  gap: var(--gap);
}
.story-content .img-description {
  margin-top: 10px;
  color: #8D8D8D;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 150%; /* 21px */
}
.story-content .excerpt {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(241, 238, 235, 0)), color-stop(37.15%, #F1EEEB));
  background: linear-gradient(180deg, rgba(241, 238, 235, 0) 0%, #F1EEEB 37.15%);
  text-align: center;
}
.story-content .excerpt .title-lg {
  margin-bottom: 2rem;
}
.story-content .excerpt .bodycopy-md span {
  display: block;
}
.story-content .excerpt .image-wrap {
  margin-inline: auto;
  max-width: var(--contents-width-narrow);
}
.story-content .gallery-area {
  margin-inline: auto;
  margin-top: 4.5rem;
  max-width: 1200px;
  overflow: hidden;
  text-align: center;
}
.story-content .card-swiper {
  position: relative;
  z-index: 2;
  width: 100%;
  overflow: visible;
  line-height: 0;
}
.story-content .card-swiper .swiper-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: auto;
}
.story-content .card-swiper .swiper-slide {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 27.5rem; /*440px*/
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.story-content .card-swiper .img {
  position: relative;
  display: block;
  padding-bottom: 68.6%;
  width: 100%;
  background-color: #FFF;
}
.story-content .card-swiper .img img {
  position: absolute;
  inset: 0;
  opacity: 1;
  width: 100%;
  height: 100%;
}
.story-content .card-swiper .img-description {
  margin-top: 2rem;
}
.story-content .gallery-data {
  overflow: hidden;
}
.story-content .gallery-data-swiper {
  margin-left: calc((100% - min(85vw - (100vw - 100%), var(--contents-width-narrow))) / 2);
}
.story-content .gallery-data-swiper .swiper-wrapper {
  height: auto;
}
.story-content .gallery-data-swiper .swiper-slide-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.story-content .gallery-data-swiper .swiper-slide {
  margin-top: 0 !important;
}
.story-content .gallery-data-swiper a {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 0;
  -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;
}
.story-content .gallery-data-swiper a:hover {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
.story-content .gallery-data-swiper .thumb {
  aspect-ratio: 1;
  -o-object-fit: contain;
     object-fit: contain;
  width: min(100%, 100%);
}

.story-content .gallery-data-swiper .thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.story-content .gallery-data-swiper .title {
  /* visibility: inherit; */
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  visibility: hidden;
  opacity: 0.6;
  font-size: 0.875rem;
  line-height: 1.25em;
}
.story-content .marquee-bg-wrap {
  position: relative;
}
.story-content .marquee-bg-wrap .marquee-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  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-inline: auto;
  width: 100%;
  max-width: var(--contents-width);
  height: 100svh;
}
.story-content .marquee-bg-wrap .marquee-bg.bg1 {
  top: -15rem;
}
.story-content .marquee-bg-wrap .marquee-bg.bg2 {
  bottom: -19rem;
}
.story-content .marquee-bg-wrap .marquee-bg.bg3 {
  top: 0;
}
.story-content .marquee-container {
  position: relative;
  width: 100%;
  height: 100svh;
  overflow: hidden;
  pointer-events: none;
}
.story-content .marquee-container .inner-stack {
  position: relative;
  position: absolute;
  inset: 0;
  z-index: 1;
  z-index: -1;
  will-change: transform;
}
.story-content .marquee-container .inner {
  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: 100%;
  height: 100svh;
}
.story-content .marquee-container .marquee {
  padding-inline: 0.375em;
  border-radius: 1.5rem;
  height: 1.75em;
  font-family: "BookkMyungjo-Bd";
  font-size: clamp(24px, 6vw, 96px);
  font-size: 4rem;
  line-height: 1.75em;
  letter-spacing: -0.02em;
  text-wrap: nowrap;
}
.story-content .marquee-container .text {
  position: relative;
  text-align: center;
}
.story-content .marquee-container .text1 {
  top: 0;
  left: 0;
}
.story-content .marquee-container .text2 {
  left: 0;
  bottom: 0;
}
.story-content .marquee-viewport {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  border-radius: 1.5rem;
  width: auto;
  background-color: rgba(255, 255, 255, 0.9);
  overflow: hidden;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.story-content .marquee-track {
  position: relative;
  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;
  will-change: transform;
}
.story-content .marquee-slide {
  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: 100%;
}
.story-content .quote {
  position: relative;
  display: inline-block;
  font-family: "BookkMyungjo-Lt";
  font-size: 2rem;
  line-height: 2.5em;
}
.story-content .quote.sm {
  font-size: 1.875rem;
  line-height: 1.5em;
}
.story-content .quote.bold {
  font-family: "BookkMyungjo-Bd";
  font-weight: 700;
}
.story-content .quote.open-quote p:after, .story-content .quote.close-quote p:before {
  display: none;
}
.story-content .quote p {
  position: relative;
  display: inline;
  font-size: inherit;
  font-weight: 400;
  line-height: inherit;
  letter-spacing: -0.04em;
  text-indent: -0.75em;
}
.story-content .quote p:before, .story-content .quote p:after {
  position: absolute;
  display: inline-block;
  color: inherit;
  line-height: inherit;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.story-content .quote p:before {
  top: -0.25em;
  left: 0;
}
.story-content .quote p:after {
  right: -1em;
  bottom: 0.125em;
}

.move-article {
  --gap: 1.5rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--gap);
  margin-inline: auto;
  padding-block: 16px;
  padding-inline: var(--wrapper-padding-x);
  max-width: calc(var(--contents-width-narrow) + var(--wrapper-padding-x) * 2);
}
.move-article .prev-article {
  width: 50%;
}
.move-article .next-article {
  margin-left: auto;
  width: 50%;
  text-align: right;
}
.move-article span {
  display: block;
  margin-bottom: 4px;
  margin-bottom: 1.5rem;
  color: #727272;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 125%; /* 17.5px */
}
.move-article a {
  display: block;
  color: #333;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 125%; /* 37.5px */
  letter-spacing: -0.02em;
}
.move-article a strong {
  background-image: -webkit-gradient(linear, left top, right top, from(#010101), to(#010101));
  background-image: linear-gradient(to right, #010101 0%, #010101 100%);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 0 2px;
  font-weight: inherit;
  -webkit-transition: 0.1s ease-in-out;
  transition: 0.1s ease-in-out;
}
.move-article a:where(:hover, :focus) strong {
  background-size: 100% 2px;
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}

/*** BOARD 
========================================== ***/
.list-info p {
  color: #010101;
  font-size: 1rem;
  line-height: 1.375em;
  letter-spacing: -0.02em;
}
.list-info strong {
  font-weight: 700;
}
.list-info span {
  font-weight: 700;
}
.list-info:has(+ .search-keyword) p {
  line-height: 2.5rem;
}

.fix {
  color: #000;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.25em;
  letter-spacing: -0.03em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding-block: 0.25rem;
  padding-inline: 0.875rem;
  border: 0.5px solid #656565;
  min-height: 20px;
  background-color: #FFCD47;
  border-radius: 0.25rem;
}

.new {
  --icon-size: 16px;
  display: inline-block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.25rem;
  height: 2.25rem;
  height: 1.25rem;
  overflow: hidden;
  line-height: 0;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: var(--icon-size);
  background-image: url(../images/sub/ico_new.png);
}

.list-top {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem 1rem;
  padding-block: 1rem;
}

.result-txt {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.5em;
}

.board-list ul li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 1.5rem;
     -moz-column-gap: 1.5rem;
          column-gap: 1.5rem;
}
.board-list ul li:first-child .info, .board-list ul li:first-child a {
  border-top: 1px solid #FFCD47;
}
.board-list ul li .info,
.board-list ul li a {
  padding-block: 1.25rem;
  padding-inline: 1rem;
  border-bottom: 1px solid #FFCD47;
}
.board-list ul li .info {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 7.25rem;
}
.board-list ul li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(100% - 7.25rem - 1.5rem);
}
.board-list ul li a:has(.fix) {
  padding-left: 5.25rem;
}
.board-list .num {
  display: block;
  color: #FFCD47;
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.375em;
}
.board-list .date {
  display: block;
  color: #FFCD47;
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 1.25em;
}
.board-list h3 {
  max-height: 2.75em;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.375em;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: break-word;
  word-break: break-all;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.board-list .fix {
  position: absolute;
  top: 50%;
  left: 1rem;
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.board-list .new {
  -webkit-box-ordinal-group: 10;
      -ms-flex-order: 9;
          order: 9;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  margin-left: 0.5rem;
}
.board-list .no-result {
  border-block: 1px solid #FFCD47;
}

.gallery-list {
  padding-bottom: 3rem;
  text-align: center;
}
.gallery-list ul {
  --num: 5;
  --gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--gap);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.gallery-list ul > * {
  width: calc(100% / var(--num) - (var(--gap) - var(--gap) * 1 / var(--num)));
}
.gallery-list a {
  display: block;
  margin-inline: auto;
  padding-inline: 0.5rem;
  width: 100%;
  max-width: 14.375rem;
  text-decoration: none;
}
.gallery-list a:where(:hover, :focus) .thumb img {
  -webkit-transform: scale(1.2) !important;
          transform: scale(1.2) !important;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.gallery-list .thumb {
  width: 100%;
}
.gallery-list .thumb:before {
  opacity: 0;
}
.gallery-list .thumb img {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 0.2s ease-in-out;
  transition: -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  aspect-ratio: inherit;
  -o-object-fit: contain;
     object-fit: contain;
}
.gallery-list .title {
  margin-block: 0.5rem 0.25rem;
  max-height: 3em;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5em;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: break-word;
  word-break: break-all;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.gallery-list .desc {
  color: #A9A9A9;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25em;
}

.no-result {
  --icon-size: 48px;
  display: block !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: 120px;
  width: 100% !important;
  height: auto !important;
  min-height: 400px;
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 1.5em;
  text-align: center;
}
.no-result.thin {
  min-height: 120px;
}
.no-result.ico:before {
  content: "";
  display: block;
  margin-bottom: 1.25rem;
  height: var(--icon-size);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: var(--icon-size);
  background-image: url(../images/sub/ico_no_result.png);
}
.no-result h2, .no-result h3, .no-result h4 {
  margin-bottom: 1rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: -0.02em;
}
.no-result p {
  letter-spacing: -0.03em;
}

.no-result-text {
  display: block !important;
  color: var(--Black-100, #1F1F3A);
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.25em;
  text-align: center;
}

/* pagination navigation */
.pagination {
  --icon-size: 2.25rem;
  --button-size: 2.25rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-block: 1.25rem;
  width: 100%;
  line-height: 0;
  text-align: center;
}
.pagination .page-link {
  display: block;
  margin-inline: 2px;
  padding: 0;
  min-width: var(--button-size);
  height: var(--button-size);
  background-color: #FFFFFF;
  font-weight: 700;
  font-family: "Barlow Condensed", sans-serif;
}
.pagination .page-link:not([disabled]):where(:hover, :focus) {
  background-color: #656565;
  background-color: #F9F9F9;
}
.pagination .page-link.pagemove {
  background-color: #FFF;
  color: rgba(0, 0, 0, 0.2);
  font-size: 1rem;
  line-height: var(--button-size);
}
.pagination .page-link.pagemove:where(:hover, :focus) {
  background-color: #F5F5FB;
}
.pagination .page-link.pagemove.on {
  color: #000;
}
.pagination .page-link.direction {
  opacity: 1;
  -webkit-transition: none;
  transition: none;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: auto var(--icon-size);
}
.pagination .page-link.direction:where(:hover, :focus) {
  -webkit-transition: background-position 0.2s ease-in-out;
  transition: background-position 0.2s ease-in-out;
}
.pagination .page-link.first,
.pagination .page-link.prev {
  background-position: left center;
  -webkit-transition: none;
  transition: none;
}
.pagination .page-link.first:not([disabled]):hover,
.pagination .page-link.prev:not([disabled]):hover {
  background-position: right center !important;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.pagination .page-link.last,
.pagination .page-link.next {
  background-position: right center;
  -webkit-transition: none;
  transition: none;
}
.pagination .page-link.last:not([disabled]):hover,
.pagination .page-link.next:not([disabled]):hover {
  background-position: left center !important;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.pagination .page-link.first {
  display: none !important;
  background-image: url(../images/sub/ico_page_first.png);
}
.pagination .page-link.prev {
  margin-right: auto;
  background-image: url(../images/sub/ico_page_prev.png);
}
.pagination .page-link.next {
  margin-left: auto;
  background-image: url(../images/sub/ico_page_next.png);
}
.pagination .page-link.last {
  display: none !important;
  background-image: url(../images/sub/ico_page_last.png);
}
.pagination .page-link.pagemore {
  cursor: auto;
  background-image: url(../images/sub/ico_page_more.png);
}
.pagination .page-link:where([disabled], [aria-disabled=true]) {
  opacity: 0.2 !important;
  color: var(--mono-04-light, #767676) !important;
  cursor: default !important;
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
      -ms-user-select: none !important;
          user-select: none !important;
}
.pagination button {
  display: inline-block;
  width: 2.25rem;
  height: 2.25rem;
  color: transparent;
  font-size: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.5rem;
}
.pagination .page-info {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
  margin-inline: 1.5rem;
  color: #010101;
  font-size: 2.25rem;
  font-weight: 500;
  line-height: 1em;
  letter-spacing: -0.03em;
}
.pagination .page-info strong {
  font-weight: 600;
}

/* search */
@-webkit-keyframes pageLoad {
  0% {
    background-color: #ddd;
  }
  100% {
    background-color: #fff;
  }
}
@keyframes pageLoad {
  0% {
    background-color: #ddd;
  }
  100% {
    background-color: #fff;
  }
}
@-webkit-keyframes pageTransition {
  0% {
    top: 0%;
    height: 0%;
  }
  50% {
    top: 0%;
    height: 100%;
  }
  100% {
    top: 100%;
    height: 0%;
  }
}
@keyframes pageTransition {
  0% {
    top: 0%;
    height: 0%;
  }
  50% {
    top: 0%;
    height: 100%;
  }
  100% {
    top: 100%;
    height: 0%;
  }
}
.page-transition {
  position: fixed;
  inset: 0;
  z-index: 1002;
  width: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, rgb(43, 93, 90)), to(rgba(43, 93, 90, 0.8)));
  background: linear-gradient(180deg, rgb(43, 93, 90) 20%, rgba(43, 93, 90, 0.8) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, rgb(43, 93, 90)), to(rgb(35, 85, 82)));
  background: linear-gradient(180deg, rgb(43, 93, 90) 20%, rgb(35, 85, 82) 100%);
  -webkit-animation: pageTransition 1s ease-in-out 0s forwards;
          animation: pageTransition 1s ease-in-out 0s forwards;
}

.intro {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  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: 100vw;
  height: 100svh;
  -webkit-transition: 1s ease-out 2s;
  transition: 1s ease-out 2s;
}

.intro .mask {
  margin-inline: auto;
  margin-top: var(--header-height);
  border-radius: 24px;
  width: 0;
  max-width: 1400px;
  height: 1px;
  background-color: #000;
  -webkit-transition: 1s ease-out 2s;
  transition: 1s ease-out 2s;
}

.intro.active .mask {
  opacity: 0;
  width: 520px;
  background-color: #fff;
  -webkit-transition: width 1.6s, background-color 0.7s 2.5s, opacity 0.7s 2.5s;
  transition: width 1.6s, background-color 0.7s 2.5s, opacity 0.7s 2.5s;
}

.intro-mask {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  display: block;
  width: 100%;
  height: 100%;
}

.sub-cont:has(.search-form-wrap) {
  -webkit-transform-origin: top center;
          transform-origin: top center;
  clip-path: url(#introMask);
  clip-path: url(../../views/pages/search.html#introMask);
  -webkit-clip-path: url(../../views/pages/search.html#introMask);
}

.search-form-wrap {
  --button-size: 3rem;
  --icon-size: 24px;
  padding-top: 5rem;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
          transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
  -webkit-transform-origin: center;
          transform-origin: center;
}
.search-form-wrap.has-value {
  -webkit-transform: translate(0, -2rem) !important;
          transform: translate(0, -2rem) !important;
}
.search-form-wrap.has-value .inner-cont .search-logo {
  opacity: 0 !important;
  -webkit-transform: translate(0, 80%) !important;
          transform: translate(0, 80%) !important;
  -webkit-filter: blur(20px);
          filter: blur(20px);
}
.search-form-wrap.has-value .inner-cont .form-control-wrap {
  background-color: #fff;
}
.search-form-wrap .inner-cont {
  padding-inline: 1rem;
  text-align: center;
}
.search-form-wrap .inner-cont .search-logo {
  opacity: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-bottom: 2rem;
  color: inherit;
  -webkit-transform: translate(0, 0%);
          transform: translate(0, 0%);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
          transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
  -webkit-filter: blur(0);
          filter: blur(0);
}
.search-form-wrap .inner-cont .text-field {
  position: relative;
  margin-inline: auto;
  border: 2px solid transparent;
  border-bottom: 2px solid #000;
  max-width: 500px;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}
.search-form-wrap .inner-cont .text-field:has(.form-control:focus, :focus-within) {
  border-top-color: #000;
  border-inline-color: #000;
}
.search-form-wrap .inner-cont .form-control-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 3.5rem;
  border: 0;
  height: var(--button-size);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
          transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
  background-position: 1rem 50%;
  background-repeat: no-repeat;
  background-size: var(--icon-size);
  background-image: url(../images/common/ico_search_bk.svg);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control {
  margin-top: 0;
  border: 1.5px solid transparent;
  width: 100%;
  height: 100%;
  background-color: transparent;
}
.search-form-wrap .inner-cont .form-control-wrap .form-control::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control::placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control:focus {
  border: 1.5px solid transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: 0;
}
.search-form-wrap .inner-cont .form-control-wrap .form-control:focus::-webkit-input-placeholder {
  color: var(--gray-500, #1F1F3A);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control:focus::-moz-placeholder {
  color: var(--gray-500, #1F1F3A);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control:focus:-ms-input-placeholder {
  color: var(--gray-500, #1F1F3A);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control:focus::-ms-input-placeholder {
  color: var(--gray-500, #1F1F3A);
}
.search-form-wrap .inner-cont .form-control-wrap .form-control:focus::placeholder {
  color: var(--gray-500, #1F1F3A);
}
.search-form-wrap .inner-cont .btn-keyword-reset {
  visibility: hidden;
  opacity: 0;
  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: var(--button-size);
  height: var(--button-size);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.search-form-wrap .inner-cont .btn-keyword-reset svg {
  width: 1rem;
  height: 1rem;
}
.search-form-wrap .inner-cont .btn-keyword-reset.is-show {
  visibility: inherit;
  opacity: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.search-form-wrap .inner-cont .btn-search {
  position: absolute;
  top: 0;
  right: var(--button-size);
  width: var(--button-size);
  height: var(--button-size);
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: var(--icon-size);
}
.search-form-wrap .keywords {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  margin-inline: auto;
  margin-top: 1.625rem;
  width: 100%;
  max-width: var(--contents-width);
  line-height: 0;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
          transition-timing-function: cubic-bezier(0.579, 0.001, 0.175, 1);
}
.search-form-wrap .keywords a {
  padding-block: 0.25rem;
  padding-inline: 0.5rem;
  border-radius: 1.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.125rem;
  cursor: pointer;
}
.search-form-wrap .keywords a:where(:hover, :focus) {
  background-color: #000;
  color: #FFF;
}
.search-form-wrap .keywords.topics a {
  padding-block: 0.375rem;
  padding-inline: 0.625rem;
  border: 1px solid #000;
  font-size: 1rem;
}
.search-form-wrap .keywords.topics a.active {
  background-color: #000;
  color: #FFF;
}
.search-form-wrap .keywords.recommend:before {
  content: "추천 키워드: ";
  display: inline-block;
  padding-block: 0.1875rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.125rem;
}

.search-result {
  position: relative;
}
.search-result .list-info {
  margin-top: 1.625rem;
  margin-bottom: 6.25rem;
  font-size: 0.875rem;
  line-height: 1.5em;
  text-align: center;
}
.search-result .list-info p {
  letter-spacing: -0.04em;
}
.search-result .list-info p strong, .search-result .list-info p span {
  vertical-align: 0;
}

/* board detail */
.breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  padding: 0;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1em;
}
.breadcrumb li {
  display: inline;
  margin-right: 1rem;
}
.breadcrumb li:not(:last-child):after {
  content: "/";
  position: relative;
  right: -0.375rem;
}
.breadcrumb li a {
  font-size: calc(0.875rem + 2 * (100vw - 375px) / (var(--contents-width) - 375));
  font-weight: 500;
  line-height: 1.25em;
  text-decoration: underline;
}

.detail-view-head {
  --share-icon-size: 1.5rem;
  --share-icon-space: 1rem;
  --thumb-size: 3.75rem;
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5rem;
     -moz-column-gap: 5rem;
          column-gap: 5rem;
  margin-bottom: 7.5rem;
  padding-block: 1rem;
  border-block: 1px solid #DFE1E3;
}
.detail-view-head .left-cont {
  position: relative;
  width: 37.5%;
}
.detail-view-head .right-cont {
  position: relative;
  z-index: 2;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 62.5%;
  line-height: 0;
}
.detail-view-head .back-to-list {
  --button-size: 2rem;
  --icon-size: 2rem;
  position: absolute;
  top: 0.45rem;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: inline-block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  flex-shrink: 0;
  width: var(--button-size);
  height: var(--button-size);
  overflow: hidden;
  line-height: 0;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
  -webkit-transition: none;
  transition: none;
  grid-column: 1/span 4;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto var(--icon-size);
  background-image: url(../images/sub/ico_back_to_list.png);
}
.detail-view-head .back-to-list:hover {
  background-position: right center !important;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.detail-view-head .topic-category {
  display: block;
  margin-block: 1rem;
  margin-left: 3rem;
}
.detail-view-head .sub-title {
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-top: 0;
  height: 70%;
}
.detail-view-head .title {
  color: #010101;
  font-size: 2rem;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.25em;
  letter-spacing: -0.04em;
  word-break: break-all;
  font-weight: 700;
  font-family: "Arita buri";
}
.detail-view-head .date {
  margin-top: 0.5rem;
  padding-inline: 0.25rem;
  color: #A9A9A9;
  font-size: 1.125rem;
  line-height: 1.5em;
  font-weight: 300;
  font-family: "Arita buri";
}
.detail-view-head .description {
  margin-top: 1.25rem;
}
.detail-view-head .description.line-top {
  margin-top: 1.5rem;
  padding-block: 1.5rem;
}
.detail-view-head .description li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.25rem;
  padding-block: 0.625rem;
}
.detail-view-head .description li:not(:last-child) {
  -webkit-box-shadow: 0px -1px 0px 0px #DBDBE3 inset;
          box-shadow: 0px -1px 0px 0px #DBDBE3 inset;
}
.detail-view-head .description .title {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  min-width: 4rem;
  color: var(--Black-100, #1F1F3A);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5em;
}
.detail-view-head .description .text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.75em;
  text-align: right;
}
.detail-view-head:has(.swiper-slide-active) .buttons-group {
  position: absolute;
  right: 0;
  bottom: 0;
  height: var(--thumb-size);
}
.detail-view-head .buttons-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--share-icon-space);
  margin-top: 8px;
  height: var(--share-icon-size);
}
.detail-view-head .buttons-group button {
  border-radius: 0.25rem;
  width: var(--share-icon-size);
  height: var(--share-icon-size);
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: var(--share-icon-size);
}
.detail-view-head .buttons-group button:hover {
  background-color: #EEEEF8;
}
.detail-view-head .buttons-group .btn-share {
  background-image: url(../images/sub/ico_media_share.svg);
}
.detail-view-head .buttons-group .btn-download {
  background-image: url(../images/sub/ico_media_download.svg);
}
.detail-view-head .buttons-group .btn-screenshot {
  background-image: url(../images/sub/ico_media_screenshot.svg);
}

.media-swiper {
  position: relative;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}
.media-swiper .swiper-slide {
  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;
  overflow: hidden;
  cursor: pointer;
}
.media-swiper .swiper-slide.video .thumb:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background-color: rgba(126, 120, 120, 0.33);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 5.625rem;
  background-image: url(../images/sub/ico_play.svg);
}
.media-swiper .swiper-slide.video:hover .thumb:after {
  background-color: rgba(126, 120, 120, 0);
}
.media-swiper .thumb {
  width: 100%;
  -webkit-transition: border 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  transition: border 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, border 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, border 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  aspect-ratio: 8/7;
}
.media-swiper .thumb:before {
  display: none;
}
.media-swiper .thumb img {
  width: 100%;
  height: 100%;
  aspect-ratio: inherit;
}
.media-swiper .swiper-wrapper {
  height: auto;
}
.media-swiper .swiper-container {
  position: relative;
  width: 100%;
  background-color: #F3F3F3;
}
.media-swiper .swiper-controls {
  --swiper-button-size: 2.5rem;
  --swiper-navigation-size: 1rem;
  position: absolute;
  right: 0;
  left: 0;
  bottom: var(--swiper-button-size);
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.media-swiper .swiper-controls button {
  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: auto;
  min-width: var(--swiper-button-size);
  height: var(--swiper-button-size);
  background-color: #fff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto var(--swiper-navigation-size);
}
.media-swiper .swiper-controls .swiper-button-prev, .media-swiper .swiper-controls .swiper-button-next {
  position: absolute;
  bottom: 0;
  z-index: 3;
  display: inline-block;
  margin-top: 0;
  padding: 0;
  border: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
}
.media-swiper .swiper-controls .swiper-button-prev:where(:hover, :focus), .media-swiper .swiper-controls .swiper-button-next:where(:hover, :focus) {
  background-color: #F9F9F9;
}
.media-swiper .swiper-controls .swiper-button-prev:after, .media-swiper .swiper-controls .swiper-button-next:after {
  display: none;
}
.media-swiper .swiper-controls .swiper-button-prev {
  right: var(--swiper-button-size);
  left: auto;
  background-image: url(../images/sub/ico_swiper_prev.png);
}
.media-swiper .swiper-controls .swiper-button-next {
  right: 0;
  background-image: url(../images/sub/ico_swiper_next.png);
}
.media-swiper .swiper-controls .swiper-button-disabled {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
}
.media-swiper .swiper-controls .swiper-button-disabled-prev {
  background-image: url(../images/ico_swiper_prev_disabled.png);
}
.media-swiper .swiper-controls .swiper-button-disabled-next {
  background-image: url(../images/ico_swiper_next_disabled.png);
}
.media-swiper .thumbnail-container {
  position: relative;
  margin-top: 8px;
  margin-right: calc(var(--share-icon-size) * 3 + var(--share-icon-space) * 2);
  height: var(--thumb-size);
  overflow: hidden;
}
.media-swiper .thumbnail-container:before {
  content: "";
  position: absolute;
  top: 0;
  right: -2px;
  bottom: 0;
  z-index: 2;
  width: var(--share-icon-space);
  height: var(--thumb-size);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(80%, rgb(255, 255, 255)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 80%);
}
.media-swiper .thumbnail-container .swiper-wrapper {
  height: 100%;
}
.media-swiper .thumbnail-container .swiper-slide.video .thumb:after {
  opacity: 0.7;
  background-size: 1.5rem;
}
.media-swiper .thumbnail-container .swiper-slide.video:hover .thumb:after {
  background-color: rgba(126, 120, 120, 0.33);
}
.media-swiper .thumbnail-container .swiper-slide {
  width: var(--thumb-size);
  height: var(--thumb-size);
  background-color: #EEE;
  aspect-ratio: 1;
}
.media-swiper .thumbnail-container .thumb {
  border: 1px solid transparent;
  height: var(--thumb-size);
  aspect-ratio: 1;
}
.media-swiper .swiper-slide-thumb-active .thumb {
  border-color: #000 !important;
}

.media-swiper-popup {
  --popup-swiper-color: rgba(255,255,255, 0.9);
  --popup-swiper-bd-color: rgba(30,30,30, 0.2);
  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: 100%;
  max-width: 100%;
  max-height: 100%;
  -webkit-transition: all 0.04s;
  transition: all 0.04s;
}
.media-swiper-popup .inner {
  position: relative;
  width: 100%;
  max-width: 100%;
}
.media-swiper-popup .btn-popup-close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  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;
  border: 1px solid var(--popup-swiper-bd-color);
  width: 2.5rem;
  height: 2.5rem;
  background-color: var(--popup-swiper-color);
  text-align: right;
}
.media-swiper-popup .btn-popup-close svg {
  width: 1rem;
  height: 1rem;
}
.media-swiper-popup .btn-popup-close.left {
  right: auto;
  left: var(--wrapper-padding-x);
  text-align: left;
}
.media-swiper-popup .swiper-controls {
  --swiper-button-size: 2.5rem;
  --swiper-navigation-size: 1rem;
}
.media-swiper-popup .swiper-controls button {
  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;
  border: 1px solid var(--popup-swiper-bd-color);
  width: auto;
  min-width: var(--swiper-button-size);
  height: var(--swiper-button-size);
  background-color: var(--popup-swiper-color);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto var(--swiper-navigation-size);
}
.media-swiper-popup .swiper-controls .swiper-button-prev, .media-swiper-popup .swiper-controls .swiper-button-next {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  white-space: nowrap;
}
.media-swiper-popup .swiper-controls .swiper-button-prev:after, .media-swiper-popup .swiper-controls .swiper-button-next:after {
  display: none;
}
.media-swiper-popup .swiper-controls .swiper-button-prev {
  left: 0.5rem;
  background-image: url(../images/sub/ico_swiper_prev.png);
}
.media-swiper-popup .swiper-controls .swiper-button-next {
  right: 0.5rem;
  background-image: url(../images/sub/ico_swiper_next.png);
}
.media-swiper-popup .swiper-controls .swiper-button-disabled {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
}
.media-swiper-popup .swiper-controls .swiper-button-disabled-prev {
  background-image: url(../images/ico_swiper_prev_disabled.png);
}
.media-swiper-popup .swiper-controls .swiper-button-disabled-next {
  background-image: url(../images/ico_swiper_next_disabled.png);
}
.media-swiper-popup .swiper-controls .swiper-paging-info {
  position: fixed;
  left: 0;
  bottom: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: 1.5rem;
  padding-inline: 0.5rem;
  width: 100%;
  height: var(--swiper-navigation-size);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.5)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.5) 100%);
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.media-swiper-popup .swiper-controls .swiper-paging-info span {
  position: relative;
  display: inline-block;
  color: #FFF;
  font-size: 0.875rem;
  line-height: 1.25em;
  letter-spacing: 0.03em;
}
.media-swiper-popup .swiper-controls .swiper-paging-info span.current {
  font-weight: 300;
}
.media-swiper-popup .swiper-controls .swiper-paging-info span.total {
  font-weight: 300;
}

.media-popup-wrap {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  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: 100%;
  height: 100svh;
  max-height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.media-popup-wrap.is-open {
  z-index: 1001;
  visibility: inherit;
  opacity: 1;
  -webkit-transition: all 0.04s, z-index 0.02s;
  transition: all 0.04s, z-index 0.02s;
}

.popup-swiper {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  height: 100%;
  max-height: 100svh;
  line-height: 0;
}
.popup-swiper .swiper-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.popup-swiper .swiper-slide {
  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: 100% !important;
  cursor: pointer;
  cursor: -webkit-grab;
  cursor: grab;
}
.popup-swiper .swiper-slide.video .zoomist-image:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background-color: rgba(126, 120, 120, 0.33);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 5.625rem;
  background-image: url(../images/sub/ico_play.svg);
}
.popup-swiper .swiper-slide.video:hover .zoomist-image:after {
  background-color: rgba(126, 120, 120, 0);
}
.popup-swiper .thumb:before {
  display: none;
}
.popup-swiper img {
  width: auto;
  height: auto;
  max-height: 100%;
  aspect-ratio: unset;
}

.zoomist-container {
  --zoomist-slider-padding-y: 1.125rem;
  --zoomist-slider-track-color: rgba(0,0,0, .2);
  position: static !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100svh;
}
.zoomist-container .zoomist-wrapper {
  height: auto;
  background-color: transparent !important;
  overflow: visible !important;
}
.zoomist-container .zoomist-image {
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.zoomist-container .zoomist-zoomer {
  --button-size: 2.5rem;
  --navigation-size: 1rem;
  --zoomist-zoomer-button-size: var(--button-size);
  position: fixed;
  top: 0.5rem;
  left: 0.5rem;
  border: 1px solid var(--popup-swiper-bd-color);
  border-radius: 0;
  width: -webkit-min-content;
  width: -moz-min-content;
  width: min-content;
}
.zoomist-container .zoomist-zoomer-button {
  background-color: var(--popup-swiper-color);
}
.zoomist-container .zoomist-slider {
  position: fixed;
  top: 0.5rem;
  left: 50%;
  border: 1px solid var(--popup-swiper-bd-color);
  border-radius: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media (prefers-color-scheme: dark) {
  body {
    --zoomist-slider-bg-color: rgba(12, 12, 12, 0.8);
    --zoomist-slider-track-color: #444;
    --zoomist-slider-track-color-hover: #666;
    --zoomist-slider-button-color: #ccc;
    --zoomist-zoomer-button-color: rgba(12, 12, 12, 0.9);
    --zoomist-zoomer-button-color-hover: rgba(24, 24, 24, 0.9);
    --zoomist-zoomer-button-color-disabled: rgba(12, 12, 12, 0.8);
    --zoomist-zoomer-icon-color: #ccc;
    --zoomist-zoomer-icon-color-hover: #eee;
    --zoomist-zoomer-icon-color-disabled: #666;
    --body-background-image: linear-gradient(
      to bottom right,
      #333,
      #191919
    );
  }
}
@media (prefers-color-scheme: light) {
  body {
    --body-background-image: linear-gradient(to bottom right, #fff, #ccc);
  }
}
.detail-view {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  padding-block: 2rem;
}
.detail-view .sub-tabs {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 22%;
}
.detail-view .tab-panel {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-negative: 1;
      flex-shrink: 1;
}
.detail-view .data-list {
  position: relative;
  font-size: 1.25rem;
  line-height: 1.75em;
}
.detail-view .data-list .label {
  display: inline-block;
  margin-right: 0.25rem;
  font-weight: 700;
}
.detail-view .data-list .value {
  display: inline;
  font-weight: 400;
}
.detail-view .data-list div.is-clamped,
.detail-view .data-list div.is-expanded {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
}
.detail-view .data-list div.is-clamped .label,
.detail-view .data-list div.is-expanded .label {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  min-width: 3.75em;
}
.detail-view .data-list div.is-clamped {
  position: relative;
  max-height: 5.25em;
  overflow: hidden;
}
.detail-view .data-list div.is-clamped:after {
  content: "";
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  height: 1.25em;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.001)), to(white));
  background: linear-gradient(rgba(255, 255, 255, 0.001), white);
}
.detail-view .data-list div.is-clamped .more {
  display: block;
}
.detail-view .data-list div.is-expanded {
  max-height: none;
  overflow: visible;
}
.detail-view .data-list div.is-expanded:after {
  content: none;
}
.detail-view .data-list div.is-expanded .more {
  position: relative;
  bottom: auto;
  display: block;
  margin-left: auto;
  background-position: 0.75rem 100%;
  text-align: right;
}
.detail-view .data-list div.is-expanded .more:before {
  content: "";
}
.detail-view .data-list .more {
  position: absolute;
  right: 0;
  bottom: 4px;
  z-index: 2;
  padding-left: 0.75rem;
  background-color: #fff;
  background-image: linear-gradient(to right, #000 0%, #000 100%);
  background-image: -webkit-gradient(linear, left top, right top, from(#000), to(#000));
  background-position: 1.9375em 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5rem;
  vertical-align: middle;
}
.detail-view .data-list .more:before {
  content: "... ";
  display: inline;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5rem;
  vertical-align: middle;
}
.detail-view #dataInfo-editor-viewer,
.detail-view .toastui-editor-contents,
.detail-view #dataInfo-editor-viewer * {
  display: inline;
  font-family: "Pretendard Variable", "Pretendard", sans-serif;
  color: inherit !important;
  font-size: 1.25rem;
  line-height: 1.75em;
  vertical-align: 0;
  word-break: break-word;
}
.detail-view .toastui-editor-contents p {
  margin: 0;
}

.openright .contain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-top: 1.5rem;
  border-top: 1px solid #eee;
}
.openright .right-type-4 {
  display: none !important;
}
.openright .item {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.openright .img {
  position: relative;
}
.openright .desc {
  position: absolute;
  right: calc(100% + 0.5rem);
  bottom: 0;
  visibility: hidden;
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5rem 1rem;
  border-radius: 0.25rem;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 80px;
  min-height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.875rem;
  line-height: 1.25em;
  -webkit-transform: translatex(2px);
          transform: translatex(2px);
  -webkit-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}
.openright .item:where(:focus, :hover) .desc {
  visibility: inherit;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.related-data-view {
  padding-block: 5rem;
}
.related-data-view .tab-panel {
  padding-block: 2rem;
}
.related-data-view .hashtag span {
  cursor: pointer;
}
.related-data-view .hashtag span.active {
  background-color: #000;
  color: #FFF;
}

.related-swiper {
  --slide-num: 2.3;
  --slide-gap: 20px;
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
  overflow: hidden;
}
.related-swiper .swiper-warpper,
.related-swiper .swiper-slide {
  height: 100%;
  overflow: visible;
}
.related-swiper .swiper-slide {
  margin-right: var(--slide-gap);
  width: auto !important;
}
.related-swiper .swiper-slide:first-child {
  margin-left: calc((100% - min(85vw - (100vw - 100%), var(--contents-width))) / 2);
}
.related-swiper a {
  display: block;
  width: -webkit-min-content;
  width: -moz-min-content;
  width: min-content;
  height: 100%;
}
.related-swiper a:hover img, .related-swiper a :focus-within img {
  -webkit-transform: scale(1.06);
  transform: scale(1.06);
}
.related-swiper .thumb {
  width: auto;
  height: 20rem;
}
.related-swiper .thumb img {
  width: auto;
  max-width: unset;
  height: 100%;
}
.related-swiper .title {
  margin-block: 0.5rem 0.25rem;
  max-height: 3em;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5em;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: break-word;
  word-break: break-all;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.related-swiper .desc {
  color: #A9A9A9;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25em;
}

.board-detail {
  position: relative;
  padding-block: 3.75rem;
  padding-inline: 1.5rem;
  max-width: 100%;
  min-height: 20vh;
  overflow-x: auto;
  font-size: 1rem;
  line-height: 1.75em;
  border-block: 1px solid #FFCD47;
}
.board-detail * {
  font-family: "Pretendard";
  vertical-align: 0 !important;
}
.board-detail iframe {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16/9;
}
.board-detail table {
  width: 100% !important;
}

.download-files {
  position: relative;
  margin-top: 2.5rem;
  padding-left: 1.5rem;
}
.download-files:before {
  content: "";
  position: absolute;
  top: 0.25rem;
  left: 0;
  z-index: 1;
  width: 1px;
  height: 100%;
  min-height: 2rem;
  max-height: 3.5rem;
  background-color: #FFCD47;
}
.download-files .file-title {
  margin-bottom: 1.75rem;
  color: #FFCD47;
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1.25em;
}
.download-files .file-cont > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem 1rem;
}
.download-files .file-cont > div ~ div {
  margin-top: 0.875rem;
}
.download-files .file-cont a:where(:hover, :focus) {
  text-decoration: underline;
}
.download-files .preview-file {
  display: inline-block;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5em;
}
.download-files .download-file {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5em;
}
.download-files .download-file.ico {
  --icon-size: 20px;
  padding-left: calc(var(--icon-size) + 0.25rem);
  color: #FFCD47;
  background-position: left top;
  background-repeat: no-repeat;
  background-size: var(--icon-size);
  background-image: url(../images/sub/ico_download.png);
}

.table-box {
  position: relative;
  margin-inline: auto;
  overflow-x: auto;
}
.table-box .data-table {
  min-width: 800px;
}

.data-table {
  border: 0;
  width: 100%;
  background-color: var(--gray-0, #FFF);
  overflow: hidden;
  text-align: left;
  table-layout: fixed;
}
.data-table th, .data-table td {
  padding-block: 0.25rem;
  border-bottom: 1px solid #FFFFFF;
  height: 1.5rem;
  font-size: 1.25rem;
  line-height: 1.75em;
  letter-spacing: -0.03em;
  vertical-align: middle;
}
.data-table th {
  font-weight: 700;
}
.data-table td {
  font-weight: 400;
}
.data-table td a:where(:hover, :focus) {
  text-decoration: underline;
}
.data-table .ta-l {
  text-align: left;
}
.data-table .ta-r {
  text-align: right;
}
.data-table .ta-c {
  text-align: center;
}
.data-table .bd-l {
  border-left: 1px solid #F5F5FB;
}
.data-table .bd-r {
  border-right: 1px solid #F5F5FB;
}
.data-table .bg {
  background-color: rgba(243, 243, 251, 0.5019607843);
}
.data-table .underline-link-bl ~ .underline-link-rd {
  margin-left: 0.75rem;
}

/* 4주제 추가 */
.related-topic {
  margin-top: 62px;
  padding-right: 2.85rem;
  padding-bottom: 1.5rem;
  text-align: right;
}

.related-topic h5 {
  color: #727272;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 500;
  line-height: 125%; /* 17.5px */
}
.related-topic ul {
  display: flex;
  flex-direction: column;
  gap:1.5rem;
  margin-top:1.5rem;
}
.related-topic ul li a{
  color: #333;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 125%; /* 37.5px */
  letter-spacing: -1.2px;
  padding:8px 16px;
  padding-right: 3.5rem;
  background: url(../images/main/swiper_next.png) no-repeat transparent center right;
  background-position: calc(100% + 8px) center;
  
}
.related-topic ul li a:hover{
  background-color: #F5F5FB;
}


@-webkit-keyframes stretch-animate {
  0% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  28% {
    -webkit-transform: scale(1.15, 0.85);
            transform: scale(1.15, 0.85);
  }
  50% {
    -webkit-transform: scale(0.9, 1.1);
            transform: scale(0.9, 1.1);
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

@keyframes stretch-animate {
  0% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  28% {
    -webkit-transform: scale(1.15, 0.85);
            transform: scale(1.15, 0.85);
  }
  50% {
    -webkit-transform: scale(0.9, 1.1);
            transform: scale(0.9, 1.1);
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@-webkit-keyframes floating-animate {
  0% {
    -webkit-transform: scale(var(--scale-a)) rotate(0deg);
            transform: scale(var(--scale-a)) rotate(0deg);
    offset-distance: 0%;
  }
  50% {
    -webkit-transform: scale(var(--scale-b)) rotate(var(--rotate-a));
            transform: scale(var(--scale-b)) rotate(var(--rotate-a));
  }
  100% {
    -webkit-transform: scale(1) rotate(var(--rotate-b));
            transform: scale(1) rotate(var(--rotate-b));
    offset-distance: 100%;
  }
}
@keyframes floating-animate {
  0% {
    -webkit-transform: scale(var(--scale-a)) rotate(0deg);
            transform: scale(var(--scale-a)) rotate(0deg);
    offset-distance: 0%;
  }
  50% {
    -webkit-transform: scale(var(--scale-b)) rotate(var(--rotate-a));
            transform: scale(var(--scale-b)) rotate(var(--rotate-a));
  }
  100% {
    -webkit-transform: scale(1) rotate(var(--rotate-b));
            transform: scale(1) rotate(var(--rotate-b));
    offset-distance: 100%;
  }
}
@-webkit-keyframes fade-in-animate {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in-animate {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-x-animate {
  0% {
    opacity: 0;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes fade-in-x-animate {
  0% {
    opacity: 0;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes topToBottom {
  0% {
    clip-path: inset(0 0 100% 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes topToBottom {
  0% {
    clip-path: inset(0 0 100% 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}