@charset "UTF-8";
:root {
  --header-h: 60px;
}

@media (max-width: 768px) {
  :root {
    --header-h: 68px;
  }
}
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-weight: 400;
}

html, body {
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  vertical-align: top;
}

img, picture, video, canvas, svg {
  display: inline-block;
  max-width: 100%;
}

input, button, textarea, select {
  font: inherit;
  color: inherit;
  background: none;
  border: none;
  outline: none;
}

button {
  cursor: pointer;
  background: none;
  border: none;
}

a {
  text-decoration: none;
  color: inherit;
  display: inline-block;
}

span {
  display: inline-block;
}

ul, ol {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

address {
  font-style: normal;
}

input::-webkit-search-decoration,
input::-webkit-search-cancel-button,
input::-webkit-search-results-button,
input::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

html, body {
  font-family: "SUIT", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Helvetica Neue", Arial, "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", sans-serif;
  color: #101010;
}

.serif {
  font-family: "Noto Serif KR", Georgia, "Times New Roman", serif;
}

.ta-r {
  text-align: right;
}

.ta-c {
  text-align: center;
}

.tdu {
  text-decoration: underline;
  text-decoration-thickness: 0.8px;
  text-underline-offset: 25%;
}

strong {
  font-weight: 700;
}

.custom-download {
  font-size: 0.875rem;
  color: #101010;
  padding: 0.25rem 1rem;
  border-radius: 1rem;
  background-color: rgb(214.8715789474, 216.1, 217.3284210526);
  position: relative;
  transition: background-color 0.3s;
}
.custom-download::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 16px;
  background: url("../img/download.svg") no-repeat;
  margin-right: 0.25rem;
  vertical-align: middle;
  transform: scale(0.8);
  transform-origin: top center;
}
.custom-download:hover {
  background-color: rgb(178.0442105263, 180.4, 182.7557894737);
}

/* File block: 첫 링크(파일 보기) 시각적으로 숨김(SR-only) */
.wp-block-file .wp-block-file__link.is-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body {
  background: #fefefe;
}

#content {
  margin-top: var(--header-h);
}

.main-content {
  padding: 100px 0;
  min-height: 85vh;
}

.wrapper {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (max-width: 768px) {
  .wrapper.mbfull {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 768px) {
  .wrapper.mbtight {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
}

.header-margin {
  margin-top: var(--header-h);
}

.mgbt {
  margin-bottom: 5rem;
}
.mgbt-lg {
  margin-bottom: 6.25rem;
}
.mgbt-md {
  margin-bottom: 3rem;
}
.mgbt-sm {
  margin-bottom: 2.25rem;
}

.pdbt {
  padding-bottom: 5rem;
}
.pdbt-lg {
  padding-bottom: 6.25rem;
}
.pdbt-md {
  padding-bottom: 3rem;
}
.pdbt-sm {
  padding-bottom: 2.25rem;
}

.has-sidebar {
  display: flex;
}

.centered-content {
  padding-bottom: 100px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.mb-only {
  display: none;
}
@media (max-width: 768px) {
  .mb-only {
    display: initial;
  }
}

.dt-only {
  display: initial;
}
@media (max-width: 768px) {
  .dt-only {
    display: none;
  }
}

.styled-heading {
  padding-left: 0.5rem;
  line-height: 1;
  border-left: 10px solid rgb(214.8715789474, 216.1, 217.3284210526);
  font-weight: 700;
  margin-bottom: 1rem;
}

.toggle {
  display: flex;
  width: 30px;
  height: 20px;
  flex-flow: column;
  justify-content: space-between;
}
.toggle .bar {
  width: 30px;
  height: 1px;
  background: #fefefe;
  transform-origin: center right;
  opacity: 1;
  transition: all 0.3s;
}
.toggle.opened .first {
  transform: rotate(-40deg);
}
.toggle.opened .second {
  opacity: 0;
  transform: scaleX(0);
}
.toggle.opened .third {
  transform: rotate(40deg);
}

.close-btn {
  width: 20px;
  height: 20px;
  position: relative;
}
.close-btn::after, .close-btn::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 16px;
  background: black;
}
.close-btn::after {
  transform: translate(-50%, -50%) rotate(45deg);
}
.close-btn::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.admin-bar .header--basic {
  top: 32px;
}
@media (max-width: 768px) {
  .admin-bar .header--basic {
    top: 0;
    margin-top: 46px;
  }
  .admin-bar .header--basic .nav-area {
    top: calc(var(--header-h) + 46px);
  }
  .admin-bar .header--basic .nav-area .search-btn {
    bottom: 80px;
  }
}
.admin-bar .header--basic .search-bar {
  top: 32px;
}
@media (max-width: 768px) {
  .admin-bar .header--basic .search-bar {
    top: auto;
    bottom: 0;
  }
}

@media screen and (max-width: 600px) {
  .admin-bar #wpadminbar {
    position: fixed;
  }
}
.header--basic {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: #102063;
  color: #fbfbfb;
  z-index: 100;
}
.header--basic a {
  font-size: 1.125rem;
}
.header--basic .header-inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  height: var(--header-h);
}
.header--basic .logo-area {
  flex: 0 0 auto;
}
.header--basic .logo-area a {
  font-weight: 800;
}
.header--basic .nav-area {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
}
@media (max-width: 768px) {
  .header--basic .nav-area {
    position: fixed;
    top: var(--header-h);
    left: 0;
    right: 0;
    bottom: 0;
    height: calc(100vh - var(--header-h));
    background: #102063;
    color: #fbfbfb;
    -webkit-backdrop-filter: blur(15px);
            backdrop-filter: blur(15px);
    overflow-y: auto;
    flex-direction: column;
    padding: 5rem 1.25rem 1.25rem 1.25rem;
    padding-top: 2.5rem;
    visibility: hidden;
    opacity: 0;
    transition: all 0.35s;
  }
  .header--basic .nav-area.opened {
    visibility: visible;
    opacity: 1;
  }
}
.header--basic .nav-area .search-btn {
  flex: 0 0 auto;
  margin-left: 24px;
  display: flex;
  align-items: center;
}
.header--basic .nav-area .search-btn .search-icon {
  fill: #fefefe;
}
@media (max-width: 768px) {
  .header--basic .nav-area .search-btn {
    margin-left: 0;
    position: absolute;
    bottom: 2.5rem;
    left: 50%;
    transform: translateX(-50%);
  }
}
.header--basic .gnb {
  display: flex;
  flex: 1 1 auto;
  justify-content: center;
  gap: clamp(20px, 9.2592592593vw + -51.1111111111px, 60px);
  text-transform: uppercase;
  height: var(--header-h);
}
.header--basic .gnb li {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}
.header--basic .gnb li:not(.menu-item-has-children) a {
  transition: font-weight 0.15s;
}
.header--basic .gnb li:not(.menu-item-has-children) a:hover {
  font-weight: 900;
}
.header--basic .gnb li a[href="#"] {
  cursor: default;
}
.header--basic .gnb li.current-menu-item a {
  font-weight: 900;
}
@media (max-width: 768px) {
  .header--basic .gnb {
    padding-left: 1rem;
    height: auto;
    display: block;
    flex: 0 1 auto;
    font-size: 1.25rem;
  }
  .header--basic .gnb > li {
    height: auto;
    display: block;
  }
  .header--basic .gnb > li:not(:last-of-type) {
    margin-bottom: 0.5rem;
  }
}
.header--basic .sub-menu {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: calc(100% - 4px);
  left: -1.5rem;
  width: -moz-max-content;
  width: max-content;
  white-space: nowrap;
  background: #102063;
  min-width: 170px;
  border-radius: 1rem;
  transition: opacity 0.23s;
  padding: 1.25rem 0;
  box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
}
.header--basic .sub-menu li {
  padding: 0.25rem 1.5rem;
}
@media (max-width: 768px) {
  .header--basic .sub-menu {
    font-size: 1rem;
    background: none;
    position: static;
    min-width: auto;
    top: auto;
    left: auto;
    opacity: 1;
    padding-left: 0.5rem;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    overflow: hidden;
    transition: all 0.3s;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
  }
  .header--basic .sub-menu li {
    padding: 0;
  }
  .header--basic .sub-menu li:not(:last-of-type) {
    margin-bottom: 0.25rem;
  }
  .header--basic .sub-menu.opened {
    visibility: inherit;
    max-height: 800px;
    padding-top: 0.75rem;
    padding-bottom: 0.25rem;
  }
}
@media (min-width: 769px) {
  .header--basic .menu-item-has-children.is-hovered .sub-menu {
    visibility: visible;
    opacity: 1;
  }
  .header--basic .menu-item-has-children:hover .sub-menu {
    visibility: visible;
    opacity: 1;
  }
}
@media (max-width: 768px) {
  .header--basic .btn-area {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
  }
}
.header--basic .search-bar {
  position: fixed;
  right: 0;
  left: 0;
  top: 0;
  height: var(--header-h);
  background: #fefefe;
  z-index: 1000;
  visibility: hidden;
  opacity: 0;
  transition: all 0.23s;
  box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
}
.header--basic .search-bar.opened {
  visibility: visible;
  opacity: 1;
}
.header--basic .search-bar .wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
.header--basic .search-bar .search-form {
  flex: 1 0 auto;
  display: flex;
  height: 100%;
}
.header--basic .search-bar .search-field {
  flex: 1 1 auto;
  color: #101010;
}
.header--basic .search-bar .search-submit {
  margin-right: 1.5rem;
  flex: 0 0 auto;
}
.header--basic .search-bar .search-submit span {
  color: #101010;
  padding: 0.25rem 1rem;
  border: 1px solid #101010;
  border-radius: 1.5rem;
  transition: all 0.23s;
}
.header--basic .search-bar .search-submit span:hover {
  background: #101010;
  color: #fefefe;
}
.header--basic .search-bar .close-area {
  flex: 0 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 768px) {
  .header--basic .search-bar {
    top: auto;
    bottom: 0;
    height: 80px;
  }
}

.skip-link {
  position: absolute;
  top: 2px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
  padding: 4px 16px;
  background: #fff;
  color: #000;
  border: 2px solid #000;
  border-radius: 6px;
  text-decoration: none;
  transform: translateY(-120%);
  transition: transform 0.2s ease;
}

.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(12px);
  outline: none;
}

@keyframes gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.hero-container {
  background: rgb(241.1768421053, 241.6, 242.0231578947);
  width: 100%;
  height: 150px;
  display: flex;
  align-items: center;
}
.hero-container.idx-hero {
  height: 80vh;
  position: relative;
  background: gainsboro;
  align-items: center;
  justify-content: center;
}
.hero-container.idx-hero img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}
.hero-container.idx-hero h2 {
  text-align: left;
  font-size: 44px;
  font-weight: 800;
  line-height: 1.3;
  color: var(--text-color);
  margin-bottom: 0.5rem;
}
.hero-container.idx-hero h3 {
  transform: translateX(3px);
  text-align: left;
  font-size: 18px;
  color: var(--text-color);
  font-weight: 700;
  line-height: 1.3;
}
.hero-container.idx-hero .hero {
  z-index: 3;
  padding: 1rem;
  background: var(--box-color);
}
.hero-container .hero-title {
  font-weight: 800;
  line-height: 1.3;
}
.hero-container .hero-subtitle {
  font-size: 1.125rem;
  line-height: 1.3;
}
@media (max-width: 768px) {
  .hero-container .hero-subtitle {
    font-size: 1rem;
  }
}

footer.main {
  background: #102063;
  color: #fefefe;
  padding: 1.5rem 0;
}
footer.main img {
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}
footer.main .footer-split {
  display: flex;
  flex-flow: row wrap;
}
footer.main .footer-split .left-side {
  flex: 1 1 auto;
  order: 1;
}
footer.main .footer-split .left-side h3 {
  font-size: 1.25rem;
  margin-bottom: 0.25rem;
}
@media (max-width: 768px) {
  footer.main .footer-split .left-side h3 {
    margin-top: 1rem;
  }
}
@media (max-width: 768px) {
  footer.main .footer-split .left-side {
    order: 2;
  }
}
footer.main .footer-split .right-side {
  text-align: right;
  order: 2;
}
@media (max-width: 768px) {
  footer.main .footer-split .right-side {
    order: 1;
  }
}
footer.main .footer-split.under {
  padding-top: 1.5rem;
}
footer.main .footer-split.under .right-side p a:first-child {
  margin-right: 0.5rem;
}
footer.main .footer-contact li {
  display: flex;
  flex-flow: row wrap;
}
footer.main .footer-contact .label {
  width: 80px;
}
footer.main .footer-contact span:not(.label) {
  width: calc(100% - 80px);
}

.sub-main-content .collage {
  margin: 1.75rem auto;
}

.two-up-images {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5rem;
}
@media (max-width: 768px) {
  .two-up-images {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
  }
}

.col-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 768px) {
  .col-3 {
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
  }
}

.idx-block .col-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 768px) {
  .idx-block .col-3 {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
  }
}

.board-title {
  line-height: 1.2;
}

.board-row-type:has(.board-row.pinned) .board-label {
  border-bottom: 1px solid black;
}
.board-row-type .board-row {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 72px; /* 1열 40px, 2열 남는 공간, 3열 80px */
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  align-items: center;
}
.board-row-type .board-row.customed {
  grid-template-columns: minmax(0, 1fr) 72px;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.board-row-type .board-row.customed.pinned {
  -moz-column-gap: 10px;
       column-gap: 10px;
  grid-template-columns: 16px minmax(0, 1fr) 72px;
}
.board-row-type .board-row.board-label {
  border-bottom: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
  grid-template-columns: 40px minmax(0, 1fr) 72px;
  font-size: 0.75rem;
  padding-top: 0;
  padding-bottom: 0.25rem;
}
.board-row-type .board-row.board-label.customed {
  grid-template-columns: minmax(0, 1fr) 72px;
}
.board-row-type .board-row .icon-pin {
  width: 0.875rem;
  margin-right: 0.5rem;
}
.board-row-type .board-row.pinned {
  border-bottom: 1px solid black;
}
.board-row-type .board-row.pinned .board-title a {
  font-weight: 700;
}
.board-row-type .board-row.pinned .board-date {
  font-size: 0.875rem;
}
.board-row-type .board-row.post {
  border-bottom: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.board-row-type .board-row.post .num {
  color: rgb(178.0442105263, 180.4, 182.7557894737);
  font-size: 0.75rem;
}
.board-row-type .board-row.post .board-date {
  font-size: 0.875rem;
}
.board-row-type .board-row .num {
  text-align: center;
}
.board-row-type .board-row .board-title a:hover {
  text-decoration: underline;
  text-decoration-thickness: 0.8px;
  text-underline-offset: 25%;
}

.board-gallery-type {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.25rem 1.5rem;
}
@media (max-width: 768px) {
  .board-gallery-type {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.75rem 1rem;
  }
}
.board-gallery-type .board-item {
  display: flex;
  flex-direction: column;
}
.board-gallery-type .meta {
  flex: 1;
  margin-top: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.board-gallery-type .board-title a {
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 768px) {
  .board-gallery-type .board-title a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}
.board-gallery-type .board-date {
  font-size: 0.875rem;
}
.board-gallery-type .board-date .label {
  display: inline-block;
  margin-right: 0.5rem;
}
.board-gallery-type .pic-holder {
  aspect-ratio: 1.3333333333;
  position: relative;
}
.board-gallery-type .pic-holder img {
  width: 100%;
  aspect-ratio: 1.3333333333;
  -o-object-fit: cover;
     object-fit: cover;
}
.board-gallery-type .pic-holder.only-img {
  position: relative;
}
.board-gallery-type .pic-holder.only-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.3);
  opacity: 0;
  transition: all 0.3s;
}
.board-gallery-type .pic-holder.only-img:hover::after {
  opacity: 1;
}
.board-gallery-type .pic-holder.vid {
  background: rgb(214.8715789474, 216.1, 217.3284210526);
  transition: all 0.3s;
  display: flex;
  justify-content: center;
  align-items: center;
}
.board-gallery-type .pic-holder.vid img {
  width: 60%;
  aspect-ratio: 1.7777777778;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
}
.board-gallery-type .pic-holder.vid:hover {
  background: rgb(178.0442105263, 180.4, 182.7557894737);
}
.board-gallery-type .pic-holder svg {
  filter: drop-shadow(0 0px 3px rgba(0, 0, 0, 0.2));
  width: 1.25rem;
  height: 1.25rem;
}
.board-gallery-type .pic-holder .like-icon {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
  z-index: 2;
}
.board-gallery-type .pic-holder .duration {
  background: rgba(0, 0, 0, 0.6);
  padding: 0 0.5rem;
  border-radius: 1rem;
  color: white;
  font-size: 0.75rem;
}

.board-db-type {
  margin-top: 50px;
}
.board-db-type:has(.board-row.pinned) .board-label {
  border-bottom: 1px solid black;
}
.board-db-type .cat {
  font-size: 10px;
  padding: 2px 0.5rem;
  background-color: var(--cat-color, silver);
  border-radius: 1rem;
  margin-bottom: 0.25rem;
}
.board-db-type .board-row {
  display: grid;
  grid-template-columns: 115px minmax(0, 1fr) 72px; /* 1열 40px, 2열 남는 공간, 3열 80px */
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  align-items: center;
}
.board-db-type .board-row.customed {
  grid-template-columns: 90px minmax(0, 1fr) 72px;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.board-db-type .board-row.customed:first-child {
  border-top: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.board-db-type .board-row.customed.pinned {
  -moz-column-gap: 10px;
       column-gap: 10px;
  grid-template-columns: 16px minmax(0, 1fr) 72px;
}
.board-db-type .board-row.board-label {
  border-bottom: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
  grid-template-columns: 40px minmax(0, 1fr) 72px;
  font-size: 0.75rem;
  padding-top: 0;
  padding-bottom: 0.25rem;
}
.board-db-type .board-row.board-label.customed {
  grid-template-columns: minmax(0, 1fr) 72px;
}
.board-db-type .board-row .icon-pin {
  width: 0.875rem;
  margin-right: 0.5rem;
}
.board-db-type .board-row.pinned {
  border-bottom: 1px solid black;
}
.board-db-type .board-row.pinned .board-title a {
  font-weight: 700;
}
.board-db-type .board-row.pinned .board-date {
  font-size: 0.875rem;
}
.board-db-type .board-row.post {
  border-bottom: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.board-db-type .board-row.post .num {
  color: rgb(178.0442105263, 180.4, 182.7557894737);
  font-size: 0.75rem;
}
.board-db-type .board-row.post .board-date {
  font-size: 0.875rem;
}
.board-db-type .board-row .num {
  text-align: center;
}
.board-db-type .board-row .board-title a:hover {
  text-decoration: underline;
  text-decoration-thickness: 0.8px;
  text-underline-offset: 25%;
}

.cat-menu-container {
  position: relative;
  height: 36px;
  width: 100%;
}

.select-cat {
  display: inline-block;
  cursor: pointer;
  border-radius: 1rem;
  border: 1px solid #101010;
  position: absolute;
  left: 1rem;
  top: 0;
  z-index: 10;
  background: #fefefe;
}
.select-cat.opened {
  width: 152.42px;
}
.select-cat.opened span::after {
  transform: translateY(-50%) rotate(180deg);
}
.select-cat.opened.db-menu {
  height: 280px;
}
.select-cat.opened.event-menu {
  height: 200px;
}
.select-cat button span {
  padding: 0.25rem 0 0.25rem 1rem;
  width: 152.42px;
  text-align: left;
}
.select-cat button span::after {
  content: "";
  position: absolute;
  width: 9px;
  height: 6px;
  top: 17px;
  right: 1rem;
  width: 9px;
  height: 6px;
  transform: translateY(-50%);
  background: url(../img/triangle.svg) no-repeat;
  transition: all 0.3s;
}

.cat-menu {
  padding: 0.25rem 1rem 0;
  position: absolute;
  left: 0;
  top: 36px;
  background: #fefefe;
  visibility: hidden;
  opacity: 0;
  border-radius: 1rem;
}
.cat-menu li:not(:last-child) {
  margin-bottom: 2px;
}
.cat-menu.opened {
  visibility: visible;
  opacity: 1;
}
.cat-menu .sub-menu {
  margin-bottom: 0.25rem;
}
.cat-menu .sub-menu li {
  padding-left: 16px;
  position: relative;
}
.cat-menu .sub-menu li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 10px;
  transform: translateY(-50%);
  height: 1px;
  background: #101010;
}
.cat-menu .current-menu-item > a {
  font-weight: 800;
}

.cat {
  font-size: 0.75rem;
  padding: 2px 0.5rem;
  background-color: var(--cat-color, silver);
  border-radius: 1rem;
  margin-bottom: 0.25rem;
}

.board-event-type {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px 3%;
  padding-top: 100px;
}
@media (max-width: 768px) {
  .board-event-type {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
.board-event-type .pic-holder {
  margin-bottom: 1.25rem;
  width: 100%;
  aspect-ratio: 0.75;
}
.board-event-type .pic-holder img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.07);
  -webkit-box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.07);
  -moz-box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.07);
}
.board-event-type .board-item {
  border-radius: 1rem;
}
.board-event-type .board-item p {
  padding-bottom: 1.25rem;
  font-weight: 800;
  color: #1ca4ff;
}
.board-event-type:has(.upcoming) .board-item {
  padding: 1.25rem 1rem;
}
@media (min-width: 769px) {
  .board-event-type:has(.upcoming) .board-item:nth-child(n+2):nth-child(-n+4) {
    padding-top: 65.59px;
  }
}
@media (max-width: 768px) {
  .board-event-type:has(.upcoming) .board-item:nth-child(2) {
    padding-top: 65.59px;
  }
}
.board-event-type .upcoming {
  border: 1px solid #1ca4ff;
}

.custom-page-nav {
  margin-top: 60px;
  text-align: center;
}

.wp-pagenavi a, .wp-pagenavi span {
  padding: 0 0.5rem;
}
.wp-pagenavi a:hover {
  text-decoration: underline;
  text-decoration-thickness: 0.8px;
  text-underline-offset: 25%;
}
.wp-pagenavi .current {
  color: rgb(214.8715789474, 216.1, 217.3284210526);
  font-weight: 800;
}

.no-post-yet.with-menu {
  margin-top: 2.5rem;
}

.admin-area {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2.5rem;
}
@media (max-width: 768px) {
  .admin-area {
    gap: 0.5rem;
  }
  .admin-area > div {
    width: 100%;
  }
}

.admin-write a {
  font-size: 0.875rem;
  padding: 0.25rem 0.5rem;
  border: 1px solid #1ca4ff;
  color: #1ca4ff;
  background: #fefefe;
  transition: all 0.3s;
}
.admin-write a:hover {
  color: #fefefe;
  background: #1ca4ff;
}
.admin-write a span {
  font-weight: 700;
  padding-right: 0.25rem;
}

.board-bulk-actions button {
  font-size: 0.875rem;
  padding: 0.25rem 0.5rem;
  border: 1px solid #101010;
  color: #101010;
  background: #fefefe;
  transition: all 0.3s;
}
.board-bulk-actions button:hover {
  color: #fefefe;
  background: #101010;
}

.board-title .title-inline {
  display: inline;
}

.board-title .board-bulk-check {
  display: inline-block;
  vertical-align: baseline;
  margin: 0;
  margin-right: 6px;
}

.board-title a {
  display: inline;
}

.post-header {
  padding-bottom: 2.5rem;
  margin-bottom: 3.75rem;
  border-bottom: 1px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.post-header div {
  font-size: 0.875rem;
}
.post-header .label {
  margin-right: 0.5rem;
}
.post-header h2 {
  line-height: 1.3;
  margin-bottom: 0.5rem;
  font-weight: 600;
}

.post-detail {
  padding-bottom: 3.75rem;
  margin-bottom: 2.5rem;
  border-bottom: 1px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.post-detail img {
  width: auto;
  max-width: 100%;
  height: auto;
}
.post-detail .post-thumb {
  margin-bottom: 1rem;
}

.post-footer {
  display: flex;
  flex-flow: row wrap;
  line-height: 1.3;
  gap: 0.5rem;
}
.post-footer > div {
  display: flex;
  width: 100%;
}
.post-footer .label {
  font-weight: 700;
  width: 100px;
}
.post-footer a:hover {
  text-decoration: underline;
  text-decoration-thickness: 0.8px;
  text-underline-offset: 25%;
}
@media (max-width: 768px) {
  .post-footer {
    gap: 0.75rem;
  }
}

.back-to-list {
  padding-top: 100px;
  text-align: center;
}
.back-to-list .right-arrow {
  transform: rotate(180deg);
  transition: all 0.3s;
}
.back-to-list a:hover .right-arrow {
  transform: rotate(180deg) translateX(4px);
}

.with-pic-post {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: stretch;
}
.with-pic-post .text-part {
  width: 70%;
}
.with-pic-post .text-part.event {
  width: 50%;
}
.with-pic-post .pic-part {
  width: 25%;
}
.with-pic-post .pic-part.event {
  width: 45%;
}
.with-pic-post .pic-holder-event {
  width: 100%;
}
.with-pic-post .pic-holder-event img {
  width: auto;
  max-height: 90vh;
  max-width: 100%;
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.07);
  -webkit-box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.07);
  -moz-box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.07);
}
@media (min-width: 769px) {
  .with-pic-post .pic-holder-event {
    position: sticky;
    top: var(--header-h);
    text-align: right;
  }
}
.with-pic-post .pic-holder {
  width: 100%;
  aspect-ratio: 0.75;
  perspective: 1000px;
  position: relative;
}
.with-pic-post .pic-holder.nopic .cover {
  background: rgb(241.1768421053, 241.6, 242.0231578947);
  padding: 2.5rem 1.25rem;
}
.with-pic-post .pic-holder.nopic .cover h4 {
  font-weight: 200;
  color: rgb(61.1073684211, 63.1, 65.0926315789);
  font-size: 1.25rem;
}
.with-pic-post .pic-holder .cover {
  width: 100%;
  height: 100%;
  transform: rotateY(-30deg) translateX(-20px) translateY(-36px);
  position: relative;
  transform-style: preserve-3d;
  transition: all 0.3s;
  box-shadow: -1px 1px 16px 0px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: -1px 1px 16px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: -1px 1px 16px 0px rgba(0, 0, 0, 0.1);
}
.with-pic-post .pic-holder .cover:hover {
  transform: rotateY(-20deg) translateX(-10px) translateY(-36px);
}
.with-pic-post .pic-holder img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.with-pic-post .pic-holder .side {
  position: absolute;
  top: 0;
  right: 0;
  width: 36px; /* 책등 두께 */
  height: 100%;
  background-color: rgb(241.1768421053, 241.6, 242.0231578947);
  background-image: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url("../img/pages.png");
  background-repeat: repeat;
  /* 핵심 */
  transform-origin: right center;
  transform: rotateY(-90deg);
}
.with-pic-post .label {
  font-size: 0.875rem;
  color: rgb(125.4336842105, 129.4, 133.3663157895);
}
.with-pic-post h2 {
  font-weight: 700;
}
.with-pic-post .text-part-block:not(last-child) {
  margin-bottom: 1.5rem;
}
@media (max-width: 768px) {
  .with-pic-post {
    gap: 2.5rem;
  }
  .with-pic-post .text-part {
    width: 100%;
    order: 2;
  }
  .with-pic-post .text-part.event {
    width: 100%;
  }
  .with-pic-post .pic-part {
    width: 100%;
    order: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .with-pic-post .pic-part.event {
    width: 100%;
  }
  .with-pic-post .pic-holder {
    width: 50%;
  }
}

.with-pic-detail img {
  max-width: 100%;
  height: auto;
}

.main-content .wp-block-image:not(.last-child) {
  margin-bottom: 1rem;
}
.main-content .wp-block-gallery:not(.last-child) {
  margin-bottom: 1rem;
}

.gdrive-block, .custom-file-block {
  margin: 4px 0;
}

.multiple-img-block {
  margin: 8px 0;
}

p.p-empty {
  height: 25px;
}

:root {
  --pad: 40px;
  --gap: 44px;
  --year-w: 300px;
  --sticky-top: 96px;
  --bg: #fff;
  --fg: black;
  --muted: black;
  --line: lightgray;
}

/* =========================
	History Layout
========================= */
.history-container {
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
  display: grid;
  grid-template-columns: var(--year-w) 1fr;
  gap: var(--gap);
  align-items: start;
}
.history-container .label {
  display: inline-block;
  letter-spacing: -0.02em;
  font-weight: 800;
}

/* =========================
	Year Display (Sticky)
========================= */
.history-year-display {
  position: sticky;
  top: var(--sticky-top);
  z-index: 99;
  padding: 0 16px;
}
.history-year-display .cap {
  display: block;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 0.25rem;
}

/* =========================
	List / Blocks
========================= */
.history-list {
  display: grid;
  gap: 34px;
  padding: 0 16px;
}

.history-block {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  padding: 24px 0;
}

.history-year-container {
  margin-bottom: 0.75rem;
  letter-spacing: -0.02em;
  font-size: 1.25rem;
}
.history-year-container .history-year {
  font-weight: 700;
}
.history-year-container .history-cap {
  color: rgb(125.4336842105, 129.4, 133.3663157895);
  font-weight: 200;
}

/* =========================
	Content
========================= */
.history-content p {
  margin: 0 0 32px 0;
  color: var(--muted);
  line-height: 1.75;
}
.history-content ul {
  margin-left: 0.25rem;
  padding: 0;
  list-style: none;
  display: grid;
  position: relative;
}
.history-content li {
  position: relative;
  padding: 4px 0 4px 24px;
  line-height: 1.7;
}
.history-content li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -2.5px;
  width: 5px;
  height: 5px;
  background: rgb(178.0442105263, 180.4, 182.7557894737);
  border-radius: 50%;
  transform: translateY(-50%);
}
.history-content li:not(:first-child):not(:last-child) {
  border-left: 0.8px solid rgb(178.0442105263, 180.4, 182.7557894737);
}
.history-content li:first-child::after {
  content: "";
  position: absolute;
  left: 0;
  top: 17.6px;
  bottom: 0;
  width: 0.7px;
  background: rgb(178.0442105263, 180.4, 182.7557894737);
}
.history-content li:last-child::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 17.6px;
  top: 0;
  width: 0.7px;
  background: rgb(178.0442105263, 180.4, 182.7557894737);
}
.history-content h4 {
  font-weight: 700;
  padding-left: 8px;
  line-height: 1.2;
  font-size: 1.125rem;
  margin-bottom: 0.5rem;
  border-left: 10px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.history-content h4:not(:first-child) {
  margin-top: 1.5rem;
}

/* =========================
	Odometer
========================= */
.odometer {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
  white-space: nowrap;
}
.odometer .group {
  display: inline-flex;
  align-items: baseline;
}
.odometer .sep {
  opacity: 0.55;
}
@media (max-width: 768px) {
  .odometer {
    font-size: 1.5rem;
  }
}

.digit {
  position: relative;
  width: 0.65em;
  height: 1em;
  overflow: hidden;
}
.digit .stack {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  will-change: transform;
  transition: transform 120ms cubic-bezier(0.18, 0.9, 0.22, 1);
}
.digit .stack span {
  display: block;
  height: 1em;
  line-height: 1em;
  text-align: center;
  font-weight: 900;
}

/* =========================
	Responsive
========================= */
@media (max-width: 768px) {
  :root {
    --pad: 18px;
    --gap: 18px;
    --year-w: 1fr;
    --sticky-top: var(--header-h);
    --sticky-top-admin: calc(var(--header-h) + 46px);
  }
  .history-container {
    grid-template-columns: 1fr;
  }
  .history-year-display {
    width: 100%;
    background: rgba(255, 255, 255, 0.3);
    -webkit-backdrop-filter: blur(7px);
            backdrop-filter: blur(7px);
    color: black;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
  }
  .admin-bar .history-year-display {
    top: var(--sticky-top-admin);
  }
}
.policy {
  font-weight: 700;
  margin-bottom: 1rem;
}

.finance-container {
  padding-top: 80px;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
}
@media (max-width: 768px) {
  .finance-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}

.finance-meta {
  padding: 2.5rem;
  background: rgb(241.1768421053, 241.6, 242.0231578947);
}

.finance-btn {
  padding: 20px 16px;
  display: flex;
  flex-flow: column;
  gap: 0.25rem;
  align-items: flex-start;
  border-radius: 1rem;
  border: 1px solid #101010;
  color: #101010;
  transition: all 0.3s;
  line-height: 1.3;
}
.finance-btn span {
  font-size: 0.875rem;
}
.finance-btn svg path {
  fill: #101010;
  transition: all 0.3s;
}
.finance-btn:hover {
  background: #101010;
  color: #fefefe;
}
.finance-btn:hover svg path {
  fill: #fefefe;
}

.idx-block:not(:last-child) {
  padding-bottom: 50px;
  margin-bottom: 50px;
  position: relative;
}
.idx-block:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 1rem;
  right: 1rem;
  height: 1px;
  background: rgb(214.8715789474, 216.1, 217.3284210526);
}
.idx-block h3 {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.3;
}
.idx-block .col-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 7%;
}
@media (max-width: 768px) {
  .idx-block .col-2 {
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
}
@media (max-width: 768px) {
  .idx-block .col-2 .block-section:first-child {
    padding-bottom: 50px;
    border-bottom: 1px solid rgb(214.8715789474, 216.1, 217.3284210526);
  }
}
@media (max-width: 768px) {
  .idx-block .col-2 .block-section:last-child {
    padding-top: 50px;
  }
}
.idx-block .col-2-1 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.idx-block .col-2-1 .col-wide {
  width: 67%;
}
@media (max-width: 768px) {
  .idx-block .col-2-1 .col-wide {
    width: 100%;
    padding-bottom: 50px;
    margin-bottom: 50px;
    border-bottom: 1px solid rgb(214.8715789474, 216.1, 217.3284210526);
  }
}
.idx-block .col-2-1 .col-narrow {
  width: 30%;
}
@media (max-width: 768px) {
  .idx-block .col-2-1 .col-narrow {
    width: 100%;
  }
}

.block-section {
  display: flex;
}
@media (max-width: 768px) {
  .block-section {
    flex-flow: row wrap;
  }
}
.block-section .section-heading {
  flex: 0 0 auto;
  width: 128px;
}
@media (max-width: 768px) {
  .block-section .section-heading {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    margin-bottom: 2rem;
  }
}
.block-section .single-row {
  width: 100%;
}
.block-section .single-row h4 {
  font-weight: 700;
  margin-bottom: 0.25rem;
  line-height: 1.3;
}
.block-section .single-row span {
  font-size: 0.875rem;
}
.block-section .single-row:not(:last-child) {
  margin-bottom: 1rem;
}

:root {
  --default-bg: white;
  --default-cl: #101010;
  --hover-bg: rgb(61.1073684211, 63.1, 65.0926315789);
  --hover-cl: white;
}

.specific {
  position: relative;
  border-radius: 1rem;
  background: var(--default-bg);
  padding: 0 1rem;
  text-align: center;
  line-height: 1.3;
  overflow: hidden;
  transform: perspective(1px) translateZ(0);
  transition: all 0.3s;
}
.specific svg {
  fill: var(--default-cl);
  margin-left: 0.5rem;
  transition: all 0.2s ease-in;
}
.specific h3 {
  margin-bottom: 1rem;
  font-weight: 900;
}
.specific h3 a {
  font-weight: 800;
}
.specific h3:hover {
  color: #102063;
}
.specific h3:hover svg {
  fill: #102063;
  transform: translateX(0.25rem);
}
@media (max-width: 768px) {
  .specific h3 {
    margin-bottom: 0.5rem;
  }
}

.focus-container {
  height: 212px;
  display: flex;
  align-items: center;
  background: #5E5E5E;
  background: linear-gradient(90deg, rgb(94, 94, 94) 0%, rgb(3, 3, 3) 50%, rgb(94, 94, 94) 100%);
  margin-bottom: 100px;
}

.focus {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}
.focus .focus-heading {
  display: flex;
  flex-flow: row wrap;
  gap: 1.25rem;
  width: 30%;
}
.focus .focus-slide {
  width: 50%;
  color: white;
}
.focus .focus-slide h4 {
  font-size: 1.125rem;
  font-weight: 800;
}
.focus .custom-pagination {
  width: auto;
  display: flex;
  align-items: center;
}
.focus .swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 0.75rem;
  color: #101010;
  opacity: 1;
  font-weight: 700;
  background: #7e7e7e;
  transition: all 0.3s;
}
.focus .swiper-pagination-bullet-active {
  color: #101010;
  background: #fefefe;
}
.focus h3 {
  font-size: 1.5rem;
  font-weight: 800;
  color: #F2C625;
}
.focus .swiper-slide a svg {
  transition: all 0.3s;
}
.focus .swiper-slide a:hover svg {
  transform: translateX(0.25rem);
}

.idx-gallery {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0.5rem;
}
@media (max-width: 768px) {
  .idx-gallery {
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
  }
}
.idx-gallery > a {
  position: relative;
}
.idx-gallery > a .meta {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
}
.idx-gallery .pic-con {
  position: relative;
}
.idx-gallery .pic-con img {
  width: 100%;
  aspect-ratio: 1.3333333333;
  -o-object-fit: cover;
     object-fit: cover;
}
.idx-gallery .pic-con svg {
  z-index: 2;
  width: 1.25rem;
  height: 1.25rem;
}
.idx-gallery .pic-con::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.3);
  opacity: 0;
  transition: all 0.3s;
}
.idx-gallery .pic-con:hover::after {
  opacity: 1;
}
.idx-gallery .vid-con {
  background: rgb(214.8715789474, 216.1, 217.3284210526);
  transition: all 0.3s;
  display: flex;
  justify-content: center;
  align-items: center;
}
.idx-gallery .vid-con img {
  max-width: 60%;
  box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 3px 3px 16px 0px rgba(0, 0, 0, 0.15);
}
.idx-gallery .vid-con span {
  background: rgba(0, 0, 0, 0.6);
  padding: 0 0.5rem;
  border-radius: 1rem;
  color: white;
  font-size: 0.75rem;
}
.idx-gallery .vid-con:hover {
  background: rgb(178.0442105263, 180.4, 182.7557894737);
}

.idx-event {
  width: 100%;
  padding: 2rem;
  display: flex;
  border-radius: 1rem;
  border: 1px solid #101010;
  gap: 1.25rem;
}
@media (max-width: 480px) {
  .idx-event {
    padding: 1.5rem 1.25rem;
    gap: 1rem;
  }
}
.idx-event .event-pic {
  width: 25%;
}
@media (max-width: 1028px) {
  .idx-event .event-pic {
    width: 47%;
  }
}
.idx-event img {
  width: 100%;
  aspect-ratio: 0.75;
  -o-object-fit: cover;
     object-fit: cover;
}
.idx-event:nth-child(2) {
  margin-top: 1.25rem;
}
.idx-event .event-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.idx-event .event-info h4 {
  line-height: 1.3;
}
.idx-event .event-info > div {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 1.25rem;
}
@media (max-width: 480px) {
  .idx-event .event-info > div {
    gap: 0.25rem;
    justify-content: space-between;
  }
  .idx-event .event-info > div > div:last-child {
    padding-top: 6px;
  }
}
.idx-event .event-info > div svg {
  transition: all 0.3s;
}
.idx-event .event-info > div a:hover svg {
  transform: translateX(0.25rem);
}
.idx-event .event-info > div p {
  display: flex;
  flex-flow: row wrap;
  line-height: 1.3;
  gap: 0.5rem;
}
.idx-event .event-info > div p span:not(.label) {
  flex: 1;
}
.idx-event .status {
  flex-grow: 0;
  font-size: 0.75rem;
  font-weight: 800;
  color: white;
  padding: 0.25rem 0.5rem;
  border-radius: 1rem;
  margin-bottom: 0.25rem;
}
@media (max-width: 768px) {
  .idx-event .status {
    font-size: 10px;
  }
}
.idx-event .status.upcoming {
  background: #1ca4ff;
}
.idx-event .status.latest {
  background: #a5cd43;
}
@media (max-width: 768px) {
  .idx-event .status {
    padding: 1px 0.5rem;
  }
}
.idx-event h4 {
  font-weight: 700;
}

.rel-sites li:not(:last-child) {
  margin-bottom: 0.5rem;
}

.rel-site {
  position: relative;
}
.rel-site::after {
  content: "";
  background: url("../img/external-link.svg") no-repeat;
  width: 20px;
  height: 20px;
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
}

.colors {
  padding: 1.25rem;
  display: flex;
  flex-flow: row wrap;
}

.color {
  width: 50%;
}

.color p {
  width: 100%;
  height: 50px;
  margin: 0 auto;
  padding: 0.75rem;
}

.grayscale p:nth-of-type(1) {
  background: rgb(241.1768421053, 241.6, 242.0231578947);
}
.grayscale p:nth-of-type(2) {
  background: rgb(214.8715789474, 216.1, 217.3284210526);
}
.grayscale p:nth-of-type(3) {
  background: rgb(178.0442105263, 180.4, 182.7557894737);
}
.grayscale p:nth-of-type(4) {
  background: rgb(125.4336842105, 129.4, 133.3663157895);
}
.grayscale p:nth-of-type(5) {
  background: rgb(93.2105263158, 96.25, 99.2894736842);
}
.grayscale p:nth-of-type(6) {
  background: rgb(61.1073684211, 63.1, 65.0926315789);
}
.grayscale p:nth-of-type(7) {
  background: rgb(36.4126315789, 37.6, 38.7873684211);
}

.concept p:nth-of-type(1) {
  background: #1ca4ff;
}
.concept p:nth-of-type(2) {
  background: rgb(79, 184.4449339207, 255);
}
.concept p:nth-of-type(3) {
  background: rgb(130, 204.8898678414, 255);
}
.concept p:nth-of-type(4) {
  background: rgb(0, 138.9955947137, 232);
}
.concept p:nth-of-type(5) {
  background: rgb(0, 108.4405286344, 181);
}
.concept p:nth-of-type(6) {
  background: #F2C625;
}
.concept p:nth-of-type(7) {
  background: #0d39da;
}

.spacings {
  width: 100%;
  padding: 1.25rem;
  margin: 2rem auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
.spacings > div:not(.typos) {
  border: 1px solid black;
  background: pink;
}
.spacings > div:not(.typos):nth-of-type(1) {
  padding: 0.25rem;
}
.spacings > div:not(.typos):nth-of-type(2) {
  padding: 0.5rem;
}
.spacings > div:not(.typos):nth-of-type(3) {
  padding: 0.75rem;
}
.spacings > div:not(.typos):nth-of-type(4) {
  padding: 1rem;
}
.spacings > div:not(.typos):nth-of-type(5) {
  padding: 1.25rem;
}
.spacings > div:not(.typos):nth-of-type(6) {
  padding: 1.5rem;
}
.spacings > div:not(.typos):nth-of-type(7) {
  padding: 1.75rem;
}
.spacings > div:not(.typos):nth-of-type(8) {
  padding: 2rem;
}
.spacings > div:not(.typos):nth-of-type(9) {
  padding: 2.25rem;
}
.spacings > div:not(.typos):nth-of-type(10) {
  padding: 2.5rem;
}
.spacings > div:not(.typos):nth-of-type(11) {
  padding: 3rem;
}
.spacings > div:not(.typos):nth-of-type(12) {
  padding: 3.75rem;
}
.spacings > div:not(.typos):nth-of-type(13) {
  padding: 5rem;
}
.spacings > div:not(.typos):nth-of-type(14) {
  padding: 6.25rem;
}

.box {
  height: 100%;
  background: white;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.box p:first-child {
  font-weight: 700;
}
.box p:nth-child(2) {
  font-size: 0.875rem;
}

.typos h1, .typos h2 {
  font-weight: 500;
}

.weights p:nth-of-type(1) {
  font-weight: 400;
}
.weights p:nth-of-type(2) {
  font-weight: 500;
}
.weights p:nth-of-type(3) {
  font-weight: 600;
}
.weights p:nth-of-type(4) {
  font-weight: 700;
}
.weights p:nth-of-type(5) {
  font-weight: 800;
}

.intro-block {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 100px;
}
.intro-block.last {
  padding-top: 100px;
  align-items: center;
}

.intro-text {
  width: 60%;
  padding-right: 2.5rem;
  overflow: hidden;
}
.intro-text h3,
.intro-text p {
  overflow: hidden;
}
.intro-text h3 {
  font-weight: 700;
  margin-bottom: 1rem;
}
.intro-text.last {
  padding-right: 0;
  padding-left: 2.5rem;
}
.intro-text.last p {
  color: rgb(125.4336842105, 129.4, 133.3663157895);
  font-size: 0.875rem;
}
@media (max-width: 768px) {
  .intro-text.last {
    padding-left: 0;
  }
}

.intro-text h3 .split-char {
  font-weight: 700;
}

.intro-pic {
  width: 40%;
}
.intro-pic img {
  width: 100%;
  aspect-ratio: 1.7777777778;
  -o-object-fit: cover;
     object-fit: cover;
}

.split-char {
  display: inline-block;
  will-change: transform, opacity;
}

@media (max-width: 768px) {
  .intro-block {
    gap: 2.5rem;
  }
  .intro-text, .intro-pic {
    width: 100%;
  }
  .intro-text:not(.last) {
    padding-right: 0;
  }
}
:root {
  --bg-color: #fefefe;
  --fg-color: #111111;
}

.neg-hero {
  width: 100%;
  aspect-ratio: 1.7777777778;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-color);
  overflow: hidden;
  font-weight: 900;
}

.neg-svg {
  width: 100%;
  height: 100%;
  display: block;
}
.neg-svg text {
  font-weight: 900;
}

.place-container {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: stretch;
}
.place-container > div {
  width: 50%;
}
@media (max-width: 768px) {
  .place-container > div {
    width: 100%;
  }
}

#map {
  width: 90%;
  aspect-ratio: 1.3333333333;
  background: silver;
}
@media (max-width: 768px) {
  #map {
    width: 100%;
  }
}

.place-meta {
  display: flex;
  flex-flow: row wrap;
  align-content: space-around;
}
.place-meta > div {
  width: 100%;
}
.place-meta h3 {
  line-height: 1;
  margin-bottom: 0.75rem;
}
@media (max-width: 768px) {
  .place-meta h3 {
    margin-top: 40px;
  }
}
.place-meta h3:not(.main-title) {
  border-left: 10px solid rgb(214.8715789474, 216.1, 217.3284210526);
  padding-left: 0.25rem;
}
.place-meta .main-title {
  font-weight: 800;
}
.place-meta .row {
  display: flex;
  width: 100%;
  flex-flow: row wrap;
  position: relative;
}
.place-meta .label {
  width: 70px;
}
.place-meta .value {
  width: calc(100% - 87px);
  position: relative;
  vertical-align: middle;
}
.place-meta .value a {
  text-decoration: underline;
  text-decoration-thickness: 0.8px;
  text-underline-offset: 25%;
}
.place-meta .decor {
  width: 20px;
  height: 20px;
  line-height: 20px;
  text-align: center;
}
.place-meta .line9 {
  border-radius: 50%;
  background: #C7A15E;
  color: white;
}
.place-meta .gate3 {
  border-radius: 2px;
  background: #F2C625;
}
.place-meta .bb {
  color: #6575f8;
}
.place-meta .gb {
  color: #36b500;
}
.place-meta .tb {
  color: #00b0c6;
}

.ci .name {
  margin-top: 1rem;
}

.logo-animated {
  padding-top: 1.25rem;
  margin-bottom: 100px;
}
.logo-animated svg {
  max-width: 300px;
  height: auto;
}

.logo-download {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  gap: 5rem;
  margin-bottom: 100px;
}
.logo-download h4 {
  margin-bottom: 0.75rem;
}
@media (max-width: 768px) {
  .logo-download {
    gap: 2.5rem;
  }
}

.file-section {
  flex: 0 0 auto;
}
@media (max-width: 768px) {
  .file-section {
    flex: 0 0 100%;
  }
}

.png-section {
  flex: 1 1 0%;
}

.logo-var-container {
  display: flex;
  flex-flow: row wrap;
  gap: 1.5rem;
  width: 100%;
}

.logo-var {
  width: 100%;
}
.logo-var h5 {
  margin-bottom: 0.25rem;
}

.logo-set, .char-set {
  text-align: center;
}

.logo-imgs {
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 2.5rem 1.25rem;
  border-radius: 1rem;
}
.logo-imgs img {
  max-height: 80px;
}
.logo-imgs.org {
  background: rgb(241.1768421053, 241.6, 242.0231578947);
}
.logo-imgs.dark {
  background: rgb(61.1073684211, 63.1, 65.0926315789);
}

.char-animated {
  display: flex;
  flex-flow: row wrap;
}

.char-pic {
  display: flex;
  flex-flow: row wrap;
  gap: 1.25rem;
  padding-top: 1.5rem;
}
.char-pic svg {
  width: 15%;
  height: auto;
  overflow: visible;
}
@media (max-width: 768px) {
  .char-pic svg {
    width: 25%;
  }
}

.char-imgs {
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 2.5rem 1.25rem;
  border-radius: 1rem;
}
.char-imgs img {
  max-width: 60%;
  height: auto;
}
.char-imgs.org {
  background: rgb(241.1768421053, 241.6, 242.0231578947);
}
.char-imgs.dark {
  background: rgb(61.1073684211, 63.1, 65.0926315789);
}

/* keyframes */
@keyframes svg-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes svg-float-up-in {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.dot-red {
  opacity: 0;
  animation-name: svg-fade-in;
  animation-duration: 0.5s;
  animation-timing-function: ease;
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-delay: 0.3s;
}

.dot-green {
  opacity: 0;
  animation-name: svg-fade-in;
  animation-duration: 0.5s;
  animation-timing-function: ease;
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-delay: 0.68s;
}

.dot-blue {
  opacity: 0;
  animation-name: svg-fade-in;
  animation-duration: 0.5s;
  animation-timing-function: ease;
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-delay: 1.06s;
}

.dot-yellow {
  opacity: 0;
  animation-name: svg-fade-in;
  animation-duration: 0.5s;
  animation-timing-function: ease;
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-delay: 1.44s;
}

.dot-white {
  opacity: 0;
  animation-name: svg-fade-in;
  animation-duration: 0.5s;
  animation-timing-function: ease;
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-delay: 1.82s;
}

.part-eng {
  opacity: 0;
  animation-name: svg-fade-in;
  animation-duration: 0.5s;
  animation-timing-function: ease;
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-delay: 2.2s;
}

.part-kor {
  opacity: 0;
  transform: translateY(10px);
  animation-name: svg-float-up-in;
  animation-duration: 0.5s;
  animation-timing-function: cubic-bezier(0.2, 0.8, 0.2, 1);
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-delay: 2.58s;
}

@media (prefers-reduced-motion: reduce) {
  .dot-red,
  .dot-green,
  .dot-blue,
  .dot-yellow,
  .dot-white,
  .part-eng,
  .part-kor {
    animation: none;
    opacity: 1;
    transform: none;
  }
}
.chars {
  perspective: 700;
}

.chars .hand {
  transform-origin: 50% 100%;
  transform-box: fill-box;
  animation: hand-sign 1.2s ease-in-out infinite;
  will-change: transform;
}
.chars .hand.sc-hand {
  animation-delay: 0.3s;
}

@keyframes hand-wave {
  0% {
    transform: rotate(0deg);
  }
  10% {
    transform: rotate(-3deg);
  }
  20% {
    transform: rotate(4deg);
  }
  30% {
    transform: rotate(-4deg);
  }
  40% {
    transform: rotate(3deg);
  }
  50% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes hand-wave-pause {
  /* 정지 (대기) */
  0%, 15% {
    transform: rotate(0deg);
  }
  /* 흔들기 시작 */
  25% {
    transform: rotate(-3deg);
  }
  35% {
    transform: rotate(4deg);
  }
  45% {
    transform: rotate(-4deg);
  }
  55% {
    transform: rotate(3deg);
  }
  /* 원위치 */
  65% {
    transform: rotate(0deg);
  }
  /* 다시 정지 (텀) */
  65%, 100% {
    transform: rotate(0deg);
  }
}
@keyframes hand-sign {
  0% {
    transform: scale(1) rotate(0deg);
  }
  20% {
    transform: scale(1.015) rotate(0.9deg);
  }
  60% {
    transform: scale(1) rotate(0deg);
  }
  100% {
    transform: scale(1) rotate(0deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .chars .hand {
    animation: none;
  }
}
.search-cat-list {
  display: flex;
  flex-flow: row wrap;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
  row-gap: 0.5rem;
  margin-bottom: 2.5rem;
}
.search-cat-list a {
  text-decoration: underline;
  text-decoration-thickness: 0.8px;
  text-underline-offset: 25%;
}

.search-item {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  border-bottom: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
  display: flex;
  flex-flow: row wrap;
}
.search-item > * {
  width: 100%;
}
.search-item:first-child {
  border-top: 0.8px solid rgb(214.8715789474, 216.1, 217.3284210526);
}
.search-item h3 {
  margin: 0.5rem 0;
}
.search-item h3 a {
  font-weight: 700;
}
.search-item h3 a span {
  font-weight: 700;
}
.search-item > div {
  font-size: 0.875rem;
  margin-bottom: 0.75rem;
}
.search-item > p {
  color: rgb(125.4336842105, 129.4, 133.3663157895);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.search-item .highlighted {
  background: rgba(165, 205, 67, 0.5);
  color: black;
}
.search-item .label {
  margin-right: 0.5rem;
}

.search-current-cat a {
  font-weight: 800;
}/*# sourceMappingURL=main.css.map */