:root {
  /* Hearder 높이 설정 */
  --header-height-mobile: 70px;
  --header-height-desktop: 100px;

  /* 변수 양수를 음수로 변환 > 변수 * (-1) :: 헤더 올라간 만큰 .contents margin-top를 위로 올릴 때 사용*/
  --header-height-mobile-minus: calc(var(--header-height-mobile) * (-1));
  --header-height-desktop-minus: calc(var(--header-height-desktop) * (-1));

  /* 'Search bar'의 'top' 여백 값 구하기 */
  /* 각 사이트에서 커스텀 계산된 'Header'에 추가 여백이 포함된 음수 값'header-desktop-top-margin'을 양수로 변환 */
  --searchbar-top-margin: calc(var(--header-desktop-top-margin) * (-1));

  /* transition 설정 */
  --header-transition: all 0.1s ease;


  /* 컬러 설정 */
  /* 가장 진한 텍스트 색상 */
  /* --color-black-text:#1d1d1f; */

  /* 중간 회색 텍스트 */
  /* --color-gray-text: #6e6e73; */
}


/* 기준 폭 설정 */
@media (min-width:1260px) {
  .container {
    max-width: 1280px
  }
}


/* Header START */
.ico-watv::before {
  width: inherit;
  margin-left: 0;
  margin-right: 0
}

.header {
  position: sticky;
  position: -webkit-sticky
}

.header--fixed {
  z-index: 100;
  right: 0;
  left: 0;
  top: 0
}

.headroom {
  transition: all .25s ease-in-out;
  will-change: transform
}

.headroom--pinned {
  transform: translateY(0)
}

.headroom--pinned.headroom--not-top {
  background-color: rgba(255, 255, 255, .97);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px)
}

.headroom--unpinned {
  transform: translateY(-100%)
}

.headroom--top {
  background-color: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none
}

.header .site-logo a {
  transition: var(--header-transition)
}

.header .logo-link {
  display: flex;
  align-items: center
}

.header .site-nav {
  display: flex;
  align-items: center;
  height: var(--header-height-mobile);
  /*position:relative*/
  ;
  z-index: 10
}

.header .site-nav .menu {
  display: flex
}

.header .nav-wrap {
  position: fixed;
  top: var(--header-height-mobile);
  left: 0;
  width: 100%;
  height: 0;
  display: none;
  overflow-y: auto;
  background-color: #FFF
}

.header .nav-wrap {
  webkit-transition: background .36s cubic-bezier(0.32, 0.08, 0.24, 1), height .56s cubic-bezier(0.52, 0.16, 0.24, 1);
  transition: background .36s cubic-bezier(0.32, 0.08, 0.24, 1), height .56s cubic-bezier(0.52, 0.16, 0.24, 1)
}

/* .header.headroom--not-top{box-shadow:0 0px 4px rgba(0,0,0,0.1)} */


/* Logo */
.site-logo>a {
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center
}

.site-logo>a,
#header.headroom--not-top .site-logo svg,
body.header-dark.active-search-btn #header.headroom--top .site-logo svg {
  fill: var(--color-black)
}

/* 검색 UI 활성화시 + 헤더 다크모드 일 때 상위 아이콘 다크모드 색상 설정  */
body.header-dark .site-logo svg {
  fill: var(--color-white)
}

@media(min-width:1070px) {
  .header {
    padding-top: var(--header-desktop-top-padding-set)
  }

  body.header-lift .contents {
    margin-top: var(--header-desktop-top-margin)
  }
}


.header .nav-wrap>div {
  width: 90%;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto
}

.header div[class^="menu-main-nav"]>ul {
  flex-direction: column
}

.header div[class^="menu-main-nav"]>.menu {
  height: 100%;
  padding-top: 16px;
  padding-bottom: 16px
}

.header div[class^="menu-main-nav"]>.menu>.menu-item {
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05)
}

.header div[class^="menu-main-nav"]>.menu>.menu-item>a {
  display: flex;
  align-items: center;
  font-weight: 600
}

/* sub-menu */
.header div[class^="menu-main-nav"]>.menu .sub-menu {
  display: none
}

.header div[class^="menu-main-nav"]>.menu>.menu-item>.sub-menu {
  min-width: 250px;
  left: 0;
  padding-bottom: 14px;
  border-radius: 4px;
  z-index: 1
}

.header div[class^="menu-main-nav"]>.menu .sub-menu a {
  font-size: 16px;
  padding: 8px 16px;
  display: block
}

.header .menu .sub-menu a:hover {
  opacity: 0.6
}

.header div[class^="menu-main-nav"]>.menu .sub-menu .current-menu-item a {
  opacity: 0.6
}

.header .submenu-btn {
  position: absolute;
  width:28px;
  right: 0;
  cursor: pointer
}

.header .submenu-btn::after {
  content: '';
  position: absolute;
  width:12px;
  height:12px;
  top: 50%;
  left: 50%;
  margin-top: -7px;
  margin-left: -4px;
  border-top: 1.5px solid #C2C2C2;
  border-right: 1.5px solid #C2C2C2;
  display: inline-block;
  transform: rotate(135deg)
}

.header .is-open>.submenu-btn::after {
  transform: rotate(315deg)
}

/* 메뉴 높이 설정 */
.header .menu>.menu-item>a,
.header .menu .submenu-btn {
  height:53px
}

/* search-btn */
.header .search-btn {
  margin-left: auto
}

.header .search-btn .ico-btn {
  padding-right: 0
}

.header .search-btn .ico-search {
  font-size: 22px
}

@media(min-width:1070px) {
  .header .search-btn .ico-search {
    font-size: 24px
  }
}

/* Mobile NAV Button */
.header .nav-mobile-btn {
  cursor: pointer;
  width: 40px;
  height: 50px;
  position: relative;
  margin-right: -15px
}

.header .nav-mobile-btn::before,
.header .nav-mobile-btn::after {
  content: '';
  height: 2px;
  width: 20px;
  margin-left: -10px;
  background-color: #222;
  top: 50%;
  left: 50%;
  position: absolute
}

/* 애니메이션 공통 */
.header .nav-mobile-btn::before,
.header .nav-mobile-btn::after,
.header div[class^="menu-main-nav"]>.menu .submenu-btn::after {
  -webkit-transition: -webkit-transform .3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) .1008s;
  transition: -webkit-transform .3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) .1008s;
  transition: transform .3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) .1008s;
  transition: transform .3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) .1008s, -webkit-transform .3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) .1008s;
}

.header .nav-mobile-btn::before {
  margin-top: -8px
}

.header .nav-mobile-btn::after {
  margin-top: 7px
}

.header .nav-mobile-btn .ico-menu-inner {
  position: absolute;
  width: 20px;
  height: 2px;
  background-color: #222;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity .2s ease, transform .2s ease, background-color .2s ease
}

/* .nav-on */
.nav-on .header .nav-wrap {
  display: block
}

.nav-on .header .nav-mobile-btn::before {
  -webkit-transform: translateY(8px) rotate(45deg);
  transform: translateY(7px) rotate(45deg)
}

.nav-on .header .nav-mobile-btn::after {
  -webkit-transform: translateY(-8px) rotate(-45deg);
  transform: translateY(-8px) rotate(-45deg)
}

.nav-on .header .nav-mobile-btn .ico-menu-inner {
  opacity: 0;
  transform: translate(-50%, -50%) scaleX(0)
}

body.nav-on {
  overflow: hidden;
  touch-action: none
}

/* secondary-nav */
.header .secondary-nav {
  display: flex;
  align-items: center
}

.header div[class^="menu-header-nav"] {
  width: 100%
}

.header div[class^="menu-header-nav"]>.menu {
  display: flex;
  flex-direction: column
}

.header div[class^="menu-header-nav"]>.menu>.menu-item {
  position: relative
}

.header div[class^="menu-header-nav"]>.menu .sub-menu {
  display: none
}

.header div[class^="menu-header-nav"]>.menu .sub-menu .menu-item>a {
  padding: 8px 15px;
  display: block
}

/* .header div[class^="menu-header-nav"] > .menu .sub-menu .menu-item > a:hover{background-color:rgba(51,51,51,0.05)} */
.header div[class^="menu-header-nav"] li:not(.wpml-ls-item) a {
  border: 1px solid rgba(0, 0, 0, 0.1);
  display: inline-block;
  padding: 6px 10px 6px 12px;
  height: inherit;
  border-radius: 3px;
  margin-bottom: 6px
}

.header div[class^="menu-header-nav"] li:not(.wpml-ls-item) a[target="_blank"]::after {
  content: '\e80b';
  font-family: 'fontello';
  font-size: 10px;
  display: inline-block;
  margin-left: 5px
}

.header .secondary-nav .wpml-ls-current-language>.sub-menu {
  right: -10px
}

.header .secondary-nav .wpml-ls-current-language>a {
  display: flex;
  align-items: center
}

.header .secondary-nav .wpml-ls-current-language>a>.wpml-ls-display {
  display: none
}

.header .secondary-nav .wpml-ls-current-language>a>.wpml-ls-native {
  font-size: 15px
}

.header .secondary-nav .wpml-ls-current-language>a>.wpml-ls-native::before {
  content: '\E839';
  font-family: 'fontello';
  font-size: 16px;
  display: inline-block;
  vertical-align: -1px;
  margin-right: 6px
}

.header .secondary-nav div[class^="menu-header-nav"] .wpml-ls-current-language .sub-menu a {
  font-size: 13px;
  padding: 8px 21px
}


/* search-bar */
.search-bar {
  opacity: 0;
  transition: all 0.15s ease;
  z-index: -1;
  position: absolute;
  padding-top: calc(var(--header-height-mobile) + var(--vw-50));
  padding-bottom: var(--vw-100);
  top: 0;
  left: 0;
  width: 100%;
  max-width: inherit;
  background-color: #FFF;
  box-shadow: 0 1px 4px rgb(0 0 0 / 6%)
}

.search-bar.active {
  opacity: 1;
  z-index: 1
}

.search-bar.active .ico-left {
  transform: translateX(0)
}

.search-bar .search-ui {
  margin-left: auto;
  margin-right: auto
}

.search-bar .search-ui .ico {
  font-size: 22px
}

.search-bar .search-ui .input-field {
  font-size: 18px
}

.search-bar .search-ui .input-field {
  padding-left: 5px;
  padding-right: 12px
}

.search-bar .search-ui .input-left-addon {
  margin-left: 0;
  padding-left: 0
}

.search-bar .search-ui .input-right-addon {
  margin-right: 0;
  padding-right: 0
}

.search-bar .search-ui .input {
  border: none
}

/* .search-bar .search-ui .input:hover{box-shadow:none} */
.search-bar .quick-link {
  margin-top: var(--vw-30)
}

.search-bar .quick-link-title {
  color: #777
}

.search-bar .quick-link-lists {
  margin-top: 10px
}

.search-bar .quick-link-lists a {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-right: 5px;
  display: block
}

@media(min-width:1070px) {
  .search-bar {
    padding-top: calc(var(--header-height-mobile) + var(--vw-80));
    padding-bottom: var(--vw-80)
  }

  .search-bar .search-ui .input-field {
    font-size: 22px
  }
}

/* Search : 스크롤 버전 */
.search-bar {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  -webkit-transition: -webkit-transform 240ms cubic-bezier(.4, 0, .6, 1);
  transition: -webkit-transform 240ms cubic-bezier(.4, 0, .6, 1);
  transition: all 240ms cubic-bezier(.4, 0, .6, 1);
}

.search-bar.active {
  transform: translateY(0)
}

.search-bar.active .input,
.search-bar.active .quick-link-title,
.search-bar.active .quick-link-lists>li {
  opacity: 0;
  animation: showing 0.5s;
  animation-fill-mode: forwards
}

@keyframes showing {
  0% {
    transform: translateY(-8px);
    opacity: 0
  }

  100% {
    transform: translateY(0);
    opacity: 1
  }
}

.search-bar.active .input {
  animation-delay: 0.24s
}

.search-bar.active .quick-link-title {
  animation-delay: 0.26s
}

.search-bar.active .quick-link-lists>li:nth-child(1) {
  animation-delay: 0.28s
}

.search-bar.active .quick-link-lists>li:nth-child(2) {
  animation-delay: 0.30s
}

.search-bar.active .quick-link-lists>li:nth-child(3) {
  animation-delay: 0.32s
}

.search-bar.active .quick-link-lists>li:nth-child(4) {
  animation-delay: 0.34s
}

.search-bar.active .quick-link-lists>li:nth-child(5) {
  animation-delay: 0.36s
}

.search-bar.active .quick-link-lists>li:nth-child(6) {
  animation-delay: 0.38s
}

.search-bar.active .quick-link-lists>li:nth-child(7) {
  animation-delay: 0.40s
}

.search-bar.active .quick-link-lists>li:nth-child(8) {
  animation-delay: 0.42s
}

.search .search-state strong {
  color: #407fe9
}

.search-no-results .no-result li {
  line-height: 1.3;
  margin-bottom: 5px
}

@media(max-width:1069px) {

  /* 검색결과 목록 중 썸네일(.col-4) 인접 형제가 없을 경우 */
  .search-results .list-link .col-8:not(.col-4 + .col-8) {
    width: 100%
  }
}

@media(min-width:1070px) {
  .search-bar {
    padding-top: calc(var(--header-height-mobile) + var(--vw-120))
  }
}


/* 검색 UI 활성화 시 검색 보다 상위로 올라갈 요소 */
.header .mobile-logo,
.header .site-logo,
.header .search-btn,
.nav-mobile-btn {
  z-index: 20
}

@media(min-width:1070px) {
  .header .nav-wrap {
    z-index: 20
  }
}

/* 검색 UI 활성화시 + 헤더 다크모드 일 때 상위 아이콘 다크모드 색상 설정  */
body.header-dark.active-search-btn #header.headroom--top .site-logo a,
body.header-dark.active-search-btn #header.headroom--top button {
  color: #000
}

body.header-dark.active-search-btn #header.headroom--top .nav-mobile-btn::before,
body.header-dark.active-search-btn #header.headroom--top .nav-mobile-btn::after,
body.header-dark.active-search-btn #header.headroom--top .nav-mobile-btn .ico-menu-inner {
  background-color: #000
}

@media(min-width:1070px) {
  body.header-dark.active-search-btn #header.headroom--top .menu>.menu-item>a {
    color: #333
  }
}


/* Mobile dark */
.nav-mobile-dark .nav-wrap {
  background-color: rgba(0, 0, 0, 0.95)
}

.nav-mobile-dark .nav-wrap a {
  color: #FFF
}

.nav-mobile-dark .submenu-btn::after {
  border-top: 1px solid #FFF;
  border-right: 1px solid #FFF
}

.nav-mobile-dark div[class^="menu-main-nav"]>.menu>.menu-item {
  border-color: rgba(255, 255, 255, 0.1)
}

.nav-mobile-dark div[class^="menu-main-nav"]>.menu .sub-menu a {
  color: #FFF
}

.nav-mobile-dark div[class^="menu-header-nav"] li:not(.wpml-ls-item) a {
  border-color: rgba(255, 255, 255, 0.3)
}

@media(min-width:1070px) {

  /* 모바일 NAV 해제 */
  .header .site-nav {
    height: var(--header-height-desktop)
  }

  .header .nav-wrap {
    display: flex;
    position: static;
    height: inherit !important;
    top: inherit;
    left: inherit;
    width: auto;
    overflow: inherit;
    background-color: inherit;
    webkit-transition: none;
    transition: none
  }

  .header .nav-wrap>div {
    padding-left: 0;
    padding-right: 0
  }

  .nav-on .header .nav-wrap {
    display: flex
  }

  .header .nav-wrap a {
    color: inherit;
    transition: var(--header-transition)
  }

  .header .nav-wrap>div {
    width: inherit
  }

  .header .submenu-btn,
  .header .nav-mobile-btn {
    display: none
  }

  .header div[class^="menu-main-nav"] {
    max-width: inherit
  }

  .header div[class^="menu-main-nav"]>ul {
    flex-direction: row
  }

  .header div[class^="menu-main-nav"]>.menu {
    margin-left: 16px;
    margin-right: 16px;
    padding-top: inherit;
    padding-bottom: inherit
  }

  .header div[class^="menu-main-nav"]>.menu>.menu-item {
    margin-left: 14px;
    margin-right: 14px;
    border: none
  }

  .header div[class^="menu-main-nav"]>.menu>.menu-item>a {
    height: 100%
  }

  .header div[class^="menu-main-nav"]>.menu .sub-menu {
    display: block;
    transition: var(--header-transition)
  }

  .header div[class^="menu-main-nav"]>.menu>.menu-item>.sub-menu {
    display: none !important;
    position: absolute;
    background-color: rgba(8, 8, 8, 0.93);
    padding-top: 14px
  }

  /* .header div[class^="menu-main-nav"]>.menu>.menu-item:hover>.sub-menu,
  .header div[class^="menu-main-nav"]>.menu>.menu-item>.sub-menu>.menu-item:hover>.sub-menu {
    display: block !important
  } */

  .header div[class^="menu-main-nav"]>.menu>.menu-item:hover>.sub-menu .sub-menu a {
    padding-left: 35px
  }

  .header div[class^="menu-main-nav"]>.menu .sub-menu a {
    color: #FFF;
    height: 36px;
    display: flex;
    align-items: center;
    padding-left: 24px;
    padding-right: 24px;
    padding-top: inherit;
    padding-bottom: inherit
  }

  .header .search-btn {
    margin-left: initial
  }

  .header div[class^="menu-header-nav"] a {
    font-size: 12px
  }

  .header div[class^="menu-header-nav"]>.menu {
    display: flex;
    flex-direction: row
  }

  .header div[class^="menu-header-nav"]>.menu .sub-menu {
    position: absolute;
    min-width: 140px;
    padding-top: 8px;
    padding-bottom: 8px;
    border-radius: 8px;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.09), 0 1px 0 rgba(0, 0, 0, 0.07);
    background-color: #FFF
  }

  .header div[class^="menu-header-nav"]>.menu>.menu-item {
    margin-left: 5px;
    margin-right: 5px
  }

  .header div[class^="menu-header-nav"] li:not(.wpml-ls-item) a {
    display: flex;
    align-items: center;
    height: 100%;
    border: none;
    padding: inherit;
    border-radius: 0;
    margin-bottom: 0
  }

  .header div[class^="menu-header-nav"] li:not(.wpml-ls-item) a[target="_blank"]::after {
    display: none
  }

  .header .secondary-nav .wpml-ls-current-language>a>.wpml-ls-native {
    font-size: inherit
  }

  .header .secondary-nav .wpml-ls-current-language:hover>.sub-menu {
    display: block
  }

  .header .secondary-nav div[class^="menu-header-nav"] .wpml-ls-current-language .sub-menu a {
    padding: 8px 15px;
    font-size: inherit
  }
}

/* nav-right */
.header .site-nav.nav-right .nav-wrap {
  margin-left: auto
}

/* nav-center */
@media(min-width:1070px) {
  .header .site-nav.nav-center .nav-wrap {
    flex-grow: 1
  }

  .header .site-nav.nav-center .nav-wrap>div {
    margin-left: inherit;
    margin-right: inherit
  }

  .header .site-nav.nav-center .nav-wrap .menu-main-nav-container {
    flex-grow: 1
  }

  .header .site-nav.nav-center .nav-wrap .menu-main-nav-container>.menu {
    justify-content: center
  }
}

/* nav-left */
.header .site-nav.nav-left .nav-wrap {
  flex: auto
}

.header .site-nav.nav-left .nav-wrap .menu-main-nav-container {
  flex-grow: 1
}

/* Header Lift : 헤더를 띄우고 .contents를 헤더 높이만큼 위로 올릴 때 */
body.header-lift .contents {
  margin-top: var(--header-height-mobile-minus)
}

@media(min-width:1070px) {
  body.header-lift .contents {
    margin-top: var(--header-height-desktop-minus)
  }
}

/* Header Dark : 헤더 다크모드 */
body.header-dark #header.headroom--top .site-logo a,
body.header-dark #header.headroom--top button {
  color: #fff
}

body.header-dark #header.headroom--top .nav-mobile-btn::before,
body.header-dark #header.headroom--top .nav-mobile-btn::after,
body.header-dark #header.headroom--top .nav-mobile-btn .ico-menu-inner {
  background-color: #fff
}

/* Header Dark : 서브 메뉴 + 언어 설정 */
@media(min-width:1070px) {
  body.header-dark #header.headroom--top .menu>.menu-item>a {
    color: #fff
  }

  body.header-dark #header.headroom--top .menu>.menu-item>.sub-menu,
  body.header-dark #header.headroom--top .menu>.menu-item>.sub-menu {
    background-color: rgba(255, 255, 255, 0.15)
  }

  body.header-dark #header.headroom--top .menu .sub-menu a {
    color: #fff
  }
}

body[class*="overlay-half-dark"] .header.headroom--top div[class^="menu-main-nav"]>.menu>.menu-item>a {}


/* 언어체크 */
.lang-check {
  font-size: 13px;
  background-color: #F0F0F2;
  position: relative;
  z-index: 101
}

.lang-check .container {
  padding-top: 10px;
  padding-bottom: 10px
}

.lang-check .container>* {
  display: inline-block
}

.lang-check p {
  color: var(--grey-600);
  opacity: 0.8;
  margin-right: 15px;
  padding-top: 6px;
  padding-bottom: 6px
}

.lang-check .btn-wrap {
  margin-top: 5px;
  margin-bottom: 5px
}

.lang-check .btn-wrap>.btn:not(:first-child) {
  margin-left: 2px
}

/* .lang-check .btn-yes{background-color:var(--color-black); color:var(--color-white)}
.lang-check .btn-no{background-color:var(--color-white); color:var(--grey-700) !important} */

/* 언어체크 : Dark */
.dark .lang-check {
  background-color: #333
}

.dark .lang-check p {
  color: var(--color-white)
}

.dark .lang-check .btn-yes {
  background-color: var(--color-primary);
  color: var(--color-white)
}

.dark .lang-check .btn-no {
  background-color: var(--color-white);
  box-shadow: none
}

/* Header END */


/* Footer */
.footer {
  color: #999
}

.footer-tit {
  color: #555
}

.footer .site-logo a {
  color: #555
}

/* Footer Site Link */
.footer .site-link-left li {
  display: inline-block;
  margin-right: 20px
}

.footer .site-link-left li:last-child {
  margin-right: 0
}

/* Scroll Top */
.scroll-top {
  position: fixed;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  right: 10px;
  bottom: 10px;
  border-radius: 8px;
  background-color: rgba(255, 255, 255, 0.93)
}

.scroll-top:hover {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.07)
}

.scroll-top .ico {
  font-size: 16px;
  color: #666
}

@media(min-width:1070px) {
  .scroll-top {
    width: 50px;
    height: 50px;
    right: 20px;
    bottom: 20px
  }

  .scroll-top .ico {
    font-size: 24px
  }
}

/* 사진 저작권 표기 */
.copyright {
  position: relative;
  display: block
}

.copyright::before {
  content: "무단전재 및 재배포 금지 / 저작권자 © 하나님의교회 세계복음선교협회";
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  padding: 4px 8px;
  opacity: 0;
  font-size: 9px;
  text-align: right;
  line-height: 1.2;
  color: rgba(255, 255, 255, 0.8);
  background-color: rgba(34, 34, 34, 0.95);
  transition: all .3s ease-out
}

.copyright:hover::before {
  opacity: 1
}

@media(min-width:768px) {
  .copyright::before {
    font-size: 11px;
    padding: 6px 10px
  }
}


/* Single Post */
/* 텍스트 요소 공통 */
.single-header {
  width: 87.5%;
  max-width: 414px;
  margin-left: auto;
  margin-right: auto
}

.single-contents>*,
.single-contents figcaption,
.single-contents .full-width figcaption,
.single-contents .wide figcaption {
  width: 87.5%;
  max-width: 414px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px
}

/* 블럭 요소(사진, 캡션, 인용문, 구분선) 공통 */
.single-contents figure,
.single-contents figcaption,
.single-contents .video,
.single-contents .slick-slider,
.single-contents blockquote,
.single-contents hr,
.single-contents .img-grid {
  margin-top: 25px;
  margin-bottom: 25px
}

.single-contents blockquote {
  margin-bottom: 20px
}

/* 타이포그래피 */
.single-contents figure img {
  width: 100%
}

.single-contents picture {
  display: block
}

.single-contents figure.full-width {
  max-width: 1920px;
  width: 100%
}

.single-contents figure.wide {
  max-width: var(--container-width);
  width: 100%
}

.single-contents figcaption {
  width: 100%;
  color: #6e6e73;
  font-size: 12px;
  margin-top: 12px !important;
  line-height: 1.5
}

.single-contents .slick-slider figcaption {
  margin-bottom: 0 !important
}

.single-contents p a {
  color: #06c
}

.single-contents p a:hover {
  text-decoration: underline
}

.single-contents,
.single-contents>* {
  font-size: 18px;
  line-height: 1.7
}

.single-contents h2,
.single-contents h3 {
  font-weight: 600;
  margin-top: 44px;
  margin-bottom: 16px;
  line-height: 1.5
}

.single-contents h2 {
  font-size: 21px
}

.single-contents h3 {
  font-size: 19px
}

.single-contents blockquote small,
.single-contents blockquote cite {
  display: block;
  font-size: 14px;
  color: #6e6e73;
  margin-top: 10px
}

.single-contents ul li {
  list-style: disc
}

.single-contents ol li {
  list-style: decimal
}

.single-contents dt {
  font-weight: 600
}

.single-contents li {
  margin-left: 20px;
  margin-bottom: 25px
}

.single-contents sup,
.single-contents sub {
  font-size: 0.6em;
  position: relative;
  vertical-align: baseline
}

.single-contents sup {
  top: -0.5em
}

.single-contents sub {
  bottom: -0.25em
}

.single-contents .sup-desc,
.single-contents .sup-desc li {
  color: #6e6e73;
  font-size: 12px !important
}

.single-contents .sup-desc li {
  margin-bottom: 5px !important
}

/* p 바로 위에 .sup-desc 가 있을 경우 상단 Margin 추가 */
.single-contents .sup-desc+p {
  margin-top: 30px
}

.single-contents hr {
  border: none;
  height: 1px;
  background-color: #d2d2d7
}

.single-contents .text-small {
  font-size: 14px
}

.single-contents .text-small>* {
  margin-bottom: 21px
}

/* 인접 선태자 */
/* h3 바로 위에 h2가 있을 경우 상단 Margin 축소 */
.single-contents h2+h3 {
  margin-top: 16px
}

/* h2 바로 위에 h3가 있을 경우 상단 Margin 축소 */
.single-contents h3+h2 {
  margin-top: 16px
}

/* 사진, video, carousel, blockquote 바로 위에 h2, h3가 있을 경우 상단 Margin 축소 */
.single-contents h2+figure,
.single-contents h3+figure,
.single-contents h2+blockquote,
.single-contents h3+blockquote,
.single-contents h2+.video,
.single-contents h3+.video,
.single-contents h2+.slick-slider,
.single-contents h3+.slick-slider,
.single-contents h2+.img-grid,
.single-contents h3+.img-grid {
  margin-top: 0
}

.single-contents .img-grid figure {
  margin-top: inherit;
  margin-bottom: inherit;
  padding-top: 5px;
  padding-bottom: 5px
}

.single-contents .img-grid figure figcaption {
  margin-bottom: 10px
}

/* .single-contents .img-grid figure > picture{margin-bottom:10px} */
.single-contents .img-grid .img-grid-inner>figure:last-of-type>picture {
  margin-bottom: inherit
}


/* AddToAny SNS Plugin Settings */
.addtoany_content {
  margin-top: 24px !important;
  margin-bottom: 24px !important
}

.single-contents figure:not(.full-width):not(.wide) img,
.single-contents .video {
  border-radius: 10px;
  overflow: hidden
}

₩ @media(min-width:768px) {
  .single-contents:lang(ko) {
    word-break: keep-all
  }

  /* 텍스트 요소 공통 */
  .single-header,
  .single-contents>*,
  .single-contents figcaption,
  .single-contents .full-width figcaption,
  .single-contents .wide figcaption {
    max-width: 576px
  }

  .single-contents figure:not(.limit):not(.full-width):not(.wide),
  .single-contents .slick-slider:not(.limit):not(.full-width):not(.wide),
  .single-contents .video:not(.limit):not(.full-width):not(.wide) {
    max-width: 692px
  }

  .single-contents figure,
  .single-contents figcaption,
  .single-contents .video,
  .single-contents .slick-slider,
  .single-contents blockquote,
  .single-contents hr,
  .single-contents .img-grid {
    margin-top: 36px;
    margin-bottom: 36px
  }

  .single-contents h2,
  .single-contents h3 {
    margin-top: 48px
  }

  .single-contents .wide img {
    border-radius: 10px;
    overflow: hidden
  }
}

@media(min-width:1070px) {

  /* 텍스트 요소 공통 */
  /* .single-contents {font-size:17px} */
  .single-header,
  .single-contents>*,
  .single-contents figcaption,
  .single-contents .full-width figcaption,
  .single-contents .wide figcaption {
    max-width: var(--single-base-width)
  }

  .single-contents li {
    margin-bottom: 30px
  }

  .single-contents blockquote {
    margin-bottom: 25px
  }

  .single-contents figure,
  .single-contents figcaption,
  .single-contents blockquote,
  .single-contents .video,
  .single-contents .slick-slider,
  .single-contents hr,
  .single-contents .img-grid {
    margin-top: 44px;
    margin-bottom: 44px
  }

  .single-contents figure:not(.limit):not(.full-width):not(.wide),
  .single-contents .slick-slider:not(.limit):not(.full-width):not(.wide),
  .single-contents .video:not(.limit):not(.full-width):not(.wide) {
    max-width: var(--single-lg-width)
  }

  /* .single-contents h2{font-size:22px}
  .single-contents h3{font-size:20px} */
  /* .single-contents {font-size:18px} */
  .single-contents h2,
  .single-contents h3 {
    margin-top: 52px
  }

  .single-contents blockquote small,
  .single-contents blockquote cite {
    margin-top: 16px
  }

  .single-contents .img-grid {
    max-width: var(--single-lg-width)
  }

  .single-contents .img-grid .img-grid-inner {
    display: flex;
    flex-wrap: wrap;
    margin-left: -5px;
    margin-right: -5px
  }

  .single-contents .img-grid figure {
    flex: 1 1 50%;
    max-width: inherit !important;
    padding: 5px
  }

  /* 사진, video, carousel, blockquote 바로 위에 h2, h3가 있을 경우 상단 Margin 축소 */
  .single-contents h2+figure,
  .single-contents h3+figure,
  .single-contents h2+blockquote,
  .single-contents h3+blockquote,
  .single-contents h2+.video,
  .single-contents h3+.video,
  .single-contents h2+.slick-slider,
  .single-contents h3+.slick-slider,
  .single-contents h2+.img-grid,
  .single-contents h3+.img-grid {
    margin-top: 22px
  }
}

@media(min-width:1920px) {
  .single-contents figure.full-width img {
    border-radius: 10px;
    overflow: hidden
  }
}

/* 본문 썸네일 추가 스타일 */
.post_thumbnail_wrap {
  max-width: 100%;
  width: 100%;
  position: relative
}

.post_thumbnail {
  max-width: var(--single-xlg-width);
  margin-left: auto;
  margin-right: auto
}

.post_thumbnail>img {
  height: inherit
}

@media(min-width:1200px) {
  .post_thumbnail_wrap .post_thumbnail {
    border-radius: 10px;
    overflow: hidden
  }
}


/* 본문 목차 */
.table-of-contents {
  position: relative;
  margin-top: 30px;
  margin-bottom: 20px
}

.table-of-contents .toc-header {
  display: flex;
  align-items: center
}

.table-of-contents .toc-hd {
  font-size: 16px;
  font-weight: 600
}

.table-of-contents .btn-toc-toggle {
  font-size: 15px;
  margin-left: 6px;
  transition: all 0.3s ease;
  cursor: pointer;
  transform: rotate(180deg) translateY(2px)
}

.table-of-contents .btn-toc-toggle.close {
  transform: rotate(0deg) translateY(0)
}

.table-of-contents ul {
  margin-top: 10px;
  margin-bottom: 30px
}

.table-of-contents ul>li>ul {
  margin-top: 5px;
  margin-bottom: 10px
}

.table-of-contents li {
  list-style: none !important;
  font-size: 0;
  margin-left: 15px;
  margin-bottom: 4px;
  position: relative
}

.table-of-contents li:last-child {
  margin-bottom: 0
}

.table-of-contents li::before {
  content: '';
  width: 4px;
  height: 4px;
  top: 5px;
  left: -13px;
  border-radius: 10px;
  background-color: #82523B;
  position: absolute;
  display: inline-block;
}

.table-of-contents li a {
  display: inline-block;
  line-height: 1.3;
  color: #82523B;
  font-size: 14px
}

.table-of-contents li a:hover {
  text-decoration: underline
}

@media(min-width:768px) {
  .table-of-contents {
    position: relative;
    margin-top: 40px;
    margin-bottom: 25px
  }

  .table-of-contents li {
    margin-bottom: 8px
  }

  /* .table-of-contents li a{font-size:14px} */
  .table-of-contents li::before {
    top: 7px
  }
}

@media(min-width:1070px) {
  .table-of-contents ul {
    margin-bottom: 50px
  }
}


/* addtoany_list */
.addtoany_list a {
  margin-left: 6px !important;
  margin-right: 6px !important
}

.addtoany_list a:first-child {
  margin-left: 0 !important
}

.addtoany_list a:last-child {
  margin-right: 0 !important
}

/* Carousel */
.wds-carousel-ke-23021301.overlay-element .item {
  height: inherit;
  min-height: var(--vw-300)
}

.wds-carousel-ke-23021301.overlay-element .item-caption {
  padding-top: var(--vw-80);
  padding-bottom: var(--vw-120)
}

.wds-carousel-ke-23021301 .carousel-title {
  font-size: 20px;
  letter-spacing: -0.3px
}

.wds-carousel-ke-23021301 .carousel-desc {
  font-size: 14px;
  line-height: 1.6;
  margin-top: var(--vw-20)
}

.wds-carousel-ke-23021301 .item-caption .text-item>.btn {
  margin-top: var(--vw-30)
}

@media(min-width:1070px) {
  .wds-carousel-ke-23021301.overlay-element .item {
    height: 800px
  }

  .wds-carousel-ke-23021301 .carousel-title {
    font-size: 45px;
    letter-spacing: -2px;
    line-height: 1.4
  }

  .wds-carousel-ke-23021301 .carousel-desc {
    font-size: 18px
  }
}


/* Carousel : overlay-element */
.slick-slider.overlay-element .photo::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-black);
  opacity: 0.3
}

/* 유지관리모드 */
body.maintenance {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding-left: 20px;
  padding-right: 20px
}

body.maintenance * {
  text-align: center
}

.maintenance h1 {
  font-size: 22px;
  font-weight: 600
}

.maintenance .desc {
  margin-top: var(--vw-15)
}

.maintenance .animation {
  z-index: -1;
  margin-top: -70px;
  margin-bottom: -40px
}

.maintenance .guide {
  max-width: 380px;
  margin-left: auto;
  margin-right: auto
}

.maintenance .guide {
  display: none
}

@media(min-width:768px) {
  .maintenance .guide {
    max-width: inherit
  }
}


/* mobile-full-width-container : 모바일에서 사진이 포함된 .col이 가로 Full 사이즈로 확장됩니다. */
@media(max-width:767px) {
  .mobile-full-width-container {
    width: 100%;
    max-width: inherit;
    padding-left: inherit;
    padding-right: inherit
  }

  .mobile-full-width-container .row {
    margin-left: inherit;
    margin-right: inherit
  }

  .mobile-full-width-container .col-12 {
    padding-left: inherit;
    padding-right: inherit
  }

  .mobile-full-width-container [class*="col-"]:not(.mobile-full-width-col),
  .mobile-full-width-container>*:not(.row) {
    width: 90%;
    margin-left: auto;
    margin-right: auto
  }
}


/* Category */
.category-menu>ul {
  display: flex
}

.category-menu .cat-item:not(:first-child) {
  margin-left: 16px
}

.category-menu .cat-item {
  padding-top: 5px;
  padding-bottom: 5px;
  display: inline-block
}

.category-menu .current {
  border-bottom: 2px solid;
  border-color: var(--color-primary)
}


/* Single */
.single .single-title {
  font-size: 32px;
  line-height: 1.22;
  font-weight: 700
}

.single .single-title-sub {
  font-size: 21px;
  line-height: 1.28;
  font-weight: 500
}

.single .category-date {
  font-size: 14px;
  margin-bottom: 20px;
  color: var(--color-gray-text)
}

.single .category-date>*:not(:first-child) {
  margin-top: 4px
}

.single .single-header .views {
  font-size: 14px;
  color: var(--color-gray-text)
}

.single .single-title-sub,
.single .single-header .meta,
.single .single-header .views {
  margin-top: 20px
}

@media(min-width:768px) {
  .single .single-title {
    font-size: 40px
  }
}

@media(min-width:1070px) {
  .single .single-title {
    font-size: 40px;
    line-height: 1.3
  }

  .single .single-title-sub {
    font-size: 24px;
    line-height: 1.3
  }
}


/* slick-slider */
.slick-slider figure {
  max-width: inherit
}

.slick-slider figcaption {
  max-width: inherit;
  margin: inherit
}

.slick-slider .slick-arrow {
  width: 52px;
  height: 52px;
  border-radius: 100px;
  background-color: rgba(210, 210, 215, 0.2) !important;
  display: flex;
  justify-content: center;
  align-items: center
}

.slick-slider .slick-arrow::before {
  font-family: "fontello";
  opacity: 0.45;
  font-size: 25px;
  font-style: normal;
  font-weight: normal;
  line-height: 1em;
  display: inline-block;
  text-align: center
}

.slick-slider .slick-arrow.slick-prev::before {
  content: '\a013';
  margin-left: -2px
}

.slick-slider .slick-arrow.slick-next::before {
  content: '\a014';
  margin-right: -2px
}

.slick-slider .slick-prev {
  left: -55px
}

.slick-slider .slick-next {
  right: -55px
}

.slick-dots {
  line-height: 0
}

.slick-dots li {
  list-style: none;
  margin: inherit;
  width: auto;
  height: inherit;
  display: inline-block
}

.slick-dots li button {
  width: 8px;
  height: 8px;
  margin: 5px 3px;
  background-color: rgba(134, 134, 139, 0.4) !important;
  display: block;
  -webkit-backface-visibility: visible;
  transition: opacity 200ms ease;
  border-radius: 30px;
  transition: all 0.3s ease-out;
  padding: inherit
}

.slick-dots li button::before {
  display: none
}

.slick-dots li:hover button {
  background-color: rgba(134, 134, 139, 0.8) !important
}

.slick-dots li.slick-active button {
  width: 25px;
  background-color: rgba(134, 134, 139, 0.8) !important
}

.slick-slider.overlay-dots .slick-list {
  border-radius: 10px
}

.slick-slider.overlay-dots .slick-slide {
  padding-left: inherit;
  padding-right: inherit
}

.slick-slider .slick-prev {
  left: -62.5px
}

.slick-slider .slick-next {
  right: -62.5px
}

.slick-slider.overlay-dots figure img {
  border-radius: inherit !important
}

.slick-slider.overlay-dots .slick-dots {
  bottom: 8px
}

.slick-slider.overlay-dots li button {
  background-color: rgba(255, 255, 255, 0.5) !important;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.11)
}

.slick-slider.overlay-dots li.slick-active button {
  background-color: rgba(255, 255, 255, 0.8) !important
}

@media(max-width:767px) {
  .slick-slider .slick-arrow {
    display: none !important
  }
}


/* Video */
.video .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-bottom: 56.26%
}

.video .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}


/* Search Results */
.search-results .lists .list-link {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e6e6e6
}

.search-results .lists .info>*:not(:first-child) {
  margin-top: 0.5em
}

@media(min-width:768px) {
  .search-results .lists .list-link {
    padding-top: 25px;
    padding-bottom: 25px
  }
}

@media(min-width:1070px) {
  .search-results .lists .list-link {
    padding-top: 30px;
    padding-bottom: 30px
  }
}


/* list-photo-2col */
.list-photo-2col .info {
  display: flex;
  align-items: center
}

.list-photo-2col .photo {
  padding-bottom: 35%;
  background-color: #333
}

.list-photo-2col .text-wrap {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto
}

.list-photo-2col .text-wrap>ul li {
  color: var(--color-gray-text)
}

.list-photo-2col .text-wrap>ul li:not(:first-child) {
  margin-top: 0.4em
}

@media(max-width:1069px) {
  .list-photo-2col .photo {
    padding-bottom: 64%
  }
}


/* Lists zigzag */
@media(min-width:767px) {
  div[class*="list-zigzag"] .row {
    margin-left: inherit;
    margin-right: inherit
  }
}

@media(min-width:1070px) {
  .list-zigzag-odd:nth-child(odd) .zigzag-content {
    order: -1 !important
  }

  /* 홀수번째 적용 */
  .list-zigzag-even:nth-child(even) .zigzag-content {
    order: -1 !important
  }

  /* 짝수번째 적용 */
}


/* Visual Carousel */
.visual-carousel {
  overflow: hidden;
  background-color: #333;
  display: flex;
  flex-direction: column;
  justify-content: flex-end
}

.visual-carousel .owl-stage-outer {
  width: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0
}

.visual-carousel .item {
  position: relative;
  display: flex
}

.visual-carousel .photo {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center
}

.visual-carousel .photo::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000;
  opacity: 0.3
}

.visual-carousel .photo figure {
  height: 100%
}

.visual-carousel .photo img {
  height: 100%;
  object-fit: cover
}

.visual-carousel .text-info {
  position: relative;
  margin-bottom: 60px;
  margin-top: 60px;
  display: flex
}

/* .visual-carousel .text-in > *{opacity:0} */
.visual-carousel .title {
  /* font-size:28px; font-weight:600; line-height:1.2*/
}

.visual-carousel .desc {
  /* line-height:1.6; color:#000; opacity:0.9*/
}

.visual-carousel .visual-carousel,
.visual-carousel .item {
  height: 70vh;
  min-height: 500px;
  max-height: 1050px
}

.visual-carousel .text-in>* {
  opacity: 0
}

.visual-carousel .text-info .btn {
  margin-top: 18px;
  animation-delay: 0.4s
}

.visual-carousel .text-in {
  width: 100%
}

/* Visual Carousel : Text Animation */
.visual-carousel .owl-item.active .text-in>* {
  -webkit-animation: slide_up 2s cubic-bezier(0.19, 1, 0.22, 1);
  animation: slide_up 2s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.visual-carousel .owl-item.active .text-in>*:nth-child(2) {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s
}

.visual-carousel .owl-item.active .text-in>*:nth-child(3) {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s
}

.visual-carousel .owl-item.active .text-in>*:nth-child(4) {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s
}

.visual-carousel .owl-item.active .text-in>*:nth-child(5) {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s
}

.visual-carousel .owl-item.active .text-in>*:nth-child(6) {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s
}

@-webkit-keyframes slide_up {
  0% {
    transform: translateY(50px);
    -webkit-transform: translateY(50px);
    opacity: 0
  }

  100% {
    transform: translateY(0);
    -webkit-transform: translateY(0);
    opacity: 1
  }
}

@keyframes slide_up {
  0% {
    transform: translateY(50px);
    -webkit-transform: translateY(50px);
    opacity: 0
  }

  100% {
    transform: translateY(0);
    -webkit-transform: translateY(0);
    opacity: 1
  }
}


/* 공지사항 */
:root {
  --brown-600: #C59C5E;
  /* semantic */
  --smt-brand-a: var(--brown-600);
}

.notice-overlay {
  display: none;
  position: absolute;
  top: 80px;
  left: 0;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px
}

.notice-modal {
  max-width: 400px;
  padding: 24px 24px 16px 24px;
  border-radius: 16px;
  margin-left: auto;
  margin-right: auto;
  background-color: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(90px);
  -webkit-backdrop-filter: blur(90px);
  position: relative;
  z-index: 100;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6), inset 0 0 1px rgba(255, 255, 255, 0.3)
}

.notice-modal .tit {
  font-size: 14px;
  color: var(--smt-brand-a)
}

.notice-modal .modal-content {
  display: flex;
  align-items: center;
  gap: 16px
}

.notice-modal .ico-notice {
  display: inline-flex;
  width: 36px;
  height: 36px;
  justify-content: center;
  align-items: center;
  background-color: var(--smt-brand-a);
  border-radius: 999px;
  flex-shrink: 0
}

.notice-modal .ico-notice img {
  filter: invert(94%) sepia(20%) saturate(150%) hue-rotate(226deg) brightness(108%) contrast(106%)
}

.notice-modal .btns {
  display: flex;
  justify-content: flex-end;
  gap: 4px;
  margin-top: 16px
}

.notice-modal .btns button {
  padding: 6px 12px;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 6px;
  color: var(--white-30)
}

.notice-modal .btns button:hover {
  background-color: rgba(0, 0, 0, 0.5);
  color: var(--white-60)
}

.notice-modal {
  transform: translateY(-200%);
  animation: slide-up-ani 0.8s;
  animation-fill-mode: forwards;
  transition-timing-function: linear;
  animation-delay: 0.1s
}

@keyframes slide-up-ani {
  0% {
    transform: translateY(-200%)
  }

  100% {
    transform: translateY(0)
  }
}

@media(min-width:1070px) {
  .notice-overlay {
    top: 100px
  }

  .notice-modal {
    transform: translateY(-230%)
  }

  @keyframes slide-up-ani {
    0% {
      transform: translateY(-230%)
    }

    100% {
      transform: translateY(0)
    }
  }
}






/* */
