@charset "utf-8";
/* 퍼오고나서 지우기 ===== */
.sec { height: 100vh; background: lightcoral;}
.sec:nth-child(2) { background: #f7f7f7;}
.sec:nth-child(3) { background: #fff;}
/* 퍼오고나서 지우기 ===== */
:root {
  --primary-color: #000;
  --white-color: #fff;
  --secondary-color: #333333;
  --accent-color: #EC6848;
  --accent2-color: #487F83;
  --bg-sub-color: #f7f7f7;
}
@page {
  size: auto;
  margin: 0;
  padding: 5rem 0;
}
@media print {
  body > *:not(#print) {
    display: none !important;
  }
  html, body {
    height: auto !important;
    overflow: visible !important;
  }

  .global { height: auto !important; overflow: visible !important; font-size: 14px !important; }
  .view-info { padding-top: 20px !important;}
  .global .view-info { width: 65%;}
  .view-info .info-list .list-item::before { top: 10px !important;}
  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}

html { scrollbar-gutter: stable;}
.wrap { position: relative;}
.inner { padding: 0 80px; }
.inner.large { max-width: 1610px;}
.inner-left { padding-left: calc(max((100vw - 1500px) / 2, 5vw)) !important;}
.inner-right { padding-right: calc(max((100vw - 1500px) / 2, 5vw)) !important;}
.blind { position: absolute; width: 1px; height: 1px; clip: rect(0 0 0 0); overflow: hidden; }
.hide { position: absolute; left: -9999%; font-size: 0; height: 0; line-height: 0; text-indent: -9999px;}
h1 { font-size: 70px; font-weight: bold; line-height: normal; }
h2 { font-size: 70px; font-weight: bold;}
h3 { font-size: 36px; font-weight: bold;}
h4 { font-size: 22px; font-weight: 500;}
.mo { display: none;}
.dot { width: 4px; height: 4px; border-radius: 50%; vertical-align: middle; margin-right: 10px; background: #000; }
.sub-heading { font-size: 20px; font-weight: 500; color: #666; margin-bottom: 5px;}
.w-100 { width: 100%; }
.h-fit { height: fit-content !important;}
.p-0 { padding: 0 !important;}
.pb-0 { padding-bottom: 0 !important;}
.m-0 { margin: 0 !important;}
.b-0 { border: 0 !important;}
.f-100 { flex: 0 0 100% !important; margin-top: 8px !important;}
.tac { text-align: center !important;}
.tal { text-align: left !important;}
.tar { text-align: right !important;}
.desc { color: #1d1d1d;}
.accent { vertical-align: baseline; color: var(--accent-color); display: inline;}
.accent2 { vertical-align: baseline; color: var(--accent2-color); display: inline;}
.grid-box { display: grid; }
.flex-box { display: flex; }
.sticky { position: sticky; top: 100px;}
figure { position: relative; width: 100%; height: 0; padding-bottom: 50%; overflow: hidden; }
figure img,
figure video,
figure iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.img-box img,
figure img { display: block;}
.heading-sub { font-size: 20px; color: var(--accent-color); margin-bottom: 20px;}
.sec-wrap { display: flex; flex-direction: column; min-height: 100vh;}
.sec-group { position: relative;}
.swiper-btns { display: flex; justify-content: flex-end; align-items: center; gap: 20px; margin-bottom: 28px;}
.swiper-btns .swiper-button-prev,
.swiper-btns .swiper-button-next { position: static; margin: 0; width: 70px; height: 70px; background: url(/images/swiper-arrow.png) no-repeat center/auto 100%;}
.swiper-btns .swiper-button-prev { transform: scaleX(-1);}
.swiper-button-next:after, .swiper-button-prev:after { display: none;}
.btns-group { display: flex; align-items: center;}
.down-btn { display: flex; align-items: center;}
.content-top .text { font-size: 20px; color: #333;}
.view-more { display: flex; align-items: center; position: relative; gap: 20px;}
.view-more::after { content: ''; display: block; width: 46px; height: 8px; background: url(/images/ico-view-more.svg); transform-origin: left; transition: transform 0.3s;}
.dropdown { position: relative;}
.dropdown-btn { display: flex; justify-content: space-between; align-items: center; cursor: pointer;}
.dropdown-btn .toggle-btn { width: 40px; height: 40px;}
.dropdown-btn.active .toggle-btn::after { transform: translate(-50%, -50%) rotate(0); }
.dropdown-body { overflow: hidden;}
.reset-btn { display: flex; align-items: center; gap: 8px; padding: 5px 30px; height: 50px; margin: 0 auto;}
.btn_list { padding: 18px 50px; border-radius: 35px; background: #222; color: #fff; font-weight: 500; display: block; margin: 0 auto; width: fit-content;}
@media (hover: hover) and (pointer: fine) {
  .view-more:hover::after { animation: viewMore 0.5s;}
}
@keyframes viewMore {
  0%{ transform: scaleX(0); }
  100%{ transform: scaleX(1);}
}
@media screen and (max-width:1240px) {
  h1 { font-size: 60px;}
  h2 { font-size: 48px;}
  h3 { font-size: 32px;}
  h4 { font-size: 24px;}
}
@media screen and (max-width:1024px) {
  .inner { padding: 0 30px;}
}
@media screen and (max-width:767px) {
  h1 { font-size: 32px;}
  h2 { font-size: 24px;}
  h3 { font-size: 18px;}
  h4 { font-size: 16px;}
  .inner { padding: 0 20px;}
  .pc { display: none;}
  .mo { display: block;}
  .heading-sub { font-size: 16px; margin-bottom: 10px;}
  .swiper-btns { gap: 10px; margin-bottom: 10px;}
  .swiper-btns .swiper-button-prev, .swiper-btns .swiper-button-next { width: 30px; height: 30px;}
  .f-100 { margin-top: 0 !important;}
}
/* ico */
.ico-contact { width: 22px; height: 22px; background: url(/images/ico-contact.png) no-repeat center/auto 100%; display: inline-block; margin-left: 10px;}
.ico-drop-white { width: 24px; height: 24px; background: url(/images/ico-drop-white.png) no-repeat center/auto 100%; display: inline-block; margin-left: 10px;}
.ico-down-green { width: 40px; height: 40px; background: url(/images/ico-down-green.png) no-repeat center/auto 100%; display: inline-block; margin-left: 20px; flex-shrink: 0;}
.ico-siren { width: 24px; height: 24px; background: url(/images/ico-siren.png) no-repeat center/auto 100%; display: inline-block; margin-right: 8px;}
.ico-screen { width: 24px; height: 24px; background: url(/images/ico-screen.png) no-repeat center/auto 100%; display: inline-block; margin-right: 8px;}
.ico-paper { width: 18px; height: 18px; background: url(/images/ico-paper.png) no-repeat center/auto 100%; display: inline-block; margin-left: 6px;}
.ico-link-arrow { width: 30px; height: 30px; background: url(/images/ico-link-arrow.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-blog { width: 20px; height: 20px; background: url(/images/ico-blog.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-instagram { width: 27px; height: 25px; background: url(/images/ico-instagram.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-facebook { width: 14px; height: 25px; background: url(/images/ico-facebook.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-youtube { width: 25px; height: 17px; background: url(/images/ico-youtube.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-kakao { width: 27px; height: 25px; background: url(/images/ico-kakao.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-hugeicons { width: 19px; height: 19px; background: url(/images/ico-hugeicons.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-phone { width: 19px; height: 19px; background: url(/images/ico-phone.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-email { width: 19px; height: 19px; background: url(/images/ico-email.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-fax { width: 19px; height: 19px; background: url(/images/ico-fax.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-blank { width: 18px; height: 18px; background: url(/images/ico-blank.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-search { width: 21px; height: 21px; background: url(/images/ico-search.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-download { width: 24px; height: 24px; background: url(/images/ico-download.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-arrow-right { width: 36px; height: 36px; background: url(/images/ico-arrow-right.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-reset { width: 20px; height: 20px; background: url(/images/ico-reset.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-hamburger-light { width: 24px; height: 24px; background: url(/images/ico-hamburger-light.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-depth-arrow { width: 16px; height: 16px; background: url(/images/ico-depth-arrow.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-heart { width: 12px; height: 13px; background: url(/images/ico-heart.svg) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-right: 4px;}
.ico-chat { width: 12px; height: 12px; background: url(/images/ico-chat.svg) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-right: 4px;}
.ico-heart-light { width: 14px; height: 14px; background: url(/images/ico-heart-light.svg) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-right: 4px;}
.ico-heart-active { width: 14px; height: 14px; background: url(/images/ico-heart-active.svg) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-right: 4px;}
.ico-chat-light { width: 14px; height: 14px; background: url(/images/ico-chat-light.svg) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-right: 4px;}
.ico-share { width: 32px; height: 32px; background: url(/images/ico-share.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-share-outlined { width: 32px; height: 32px; background: url(/images/icoshare-outlined.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-dropdown-arrow { width: 24px; height: 24px; background: url(/images/ico-dropdown-arrow.png) no-repeat center/auto 100%; display: inline-block;}
.ico-required { width: 14px; height: 14px; background: url(/images/ico-required.svg) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-left: 5px;}
.ico-scrap { width: 16px; height: 16px; background: url(/images/ico-scrap.svg) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-left: 5px;}
.ico-remove { width: 16px; height: 16px; background: url(/images/ico-remove.png) no-repeat center/auto 100%; display: inline-block; vertical-align: baseline; margin-left: 5px;}
.ico-close { width: 40px; height: 40px; background: url(/images/ico-close.svg) no-repeat center/auto 100%; vertical-align: baseline; display: block;}
.ico-report { width: 13px; height: 13px; background: url(/images/ico-report.svg) no-repeat center/auto 100%; vertical-align: baseline; display: inline-block;;}
@media screen and (max-width: 767px) {
  .ico-down-green { width: 30px; height: 30px; margin-left: 10px;}
  .ico-heart-light, .ico-heart-active, .ico-chat-light { vertical-align: middle;}
}

/* line */
.line { position: absolute; top: 0; left: 0; width: 100%; height: 1px; background: #EDEDED; z-index: 2; transform-origin: left; transform: scaleX(0);}
.line.bottom { bottom: 0; top: auto;}
.line.right { right: 0; left: auto; transform-origin: right;}
.line.vertical { width: 1px; height: 100%; transform-origin: top; transform: scaleY(0) scaleX(1);}
.line.aos-animate { transform: scale(1); transition: transform 1.5s !important;}
.line.disabled { transform: scale(1);}

/* header */
.header { position: absolute; width: 100%; height: 150px; z-index: 10; background: #fff; padding-right: 80px; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.03), 0 4px 6px -2px rgba(0, 0, 0, 0.05); z-index: 100;}
.header .header-inner { max-width: 1800px; width: 95%; height: 100%; margin: 0 auto; position: relative;}
.header .logo { position: absolute; top: 100%; left: 80px; transform: translateY(-50%); width: 260px; height: 207px; background: url(/images/logo-hd.svg) no-repeat center/cover; z-index: 3;}
.header .gnb { display: flex; justify-content: flex-end; width: 100%; height: auto; z-index: 2;}
.header .gnb .depth1 { display: flex; gap: 60px;}
.header .gnb a { padding: 10px 20px; font-weight: 500; display: flex; font-family: 'SEBANG Gothic'; color: #121212;}
.header .gnb .depth1 > li > a { padding: 15px 0px; position: relative; height: 100%; display: flex; align-items: center; justify-content: center; font-weight: 700; white-space: nowrap;}
.header .gnb .depth1 > li > a::before { content: ''; display: none; width: 20px; height: 20px; position: absolute; right: 5%; top: 50%; transform: translateY(-50%); background: url(/images/ico-arrow.png) no-repeat center/cover; filter: invert(1);}
.header .gnb .depth2{ position: absolute; top: 100%; left: 0; width: 100%; background: rgba(0,0,0,.62); display: none; justify-content: flex-end; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.03), 0 4px 6px -2px rgba(0, 0, 0, 0.05); padding-right: 60px;}
.header .gnb .depth2 > li > a { position: relative; display: flex; text-align: center; font-size: 16px; color: #fff; padding: 20px; gap: 10px; align-items: center; font-family: initial;}
.header .gnb .depth2 > li > a.blank:after { content: ''; display: block; background: url(/images/ico-depth-arrow.svg) no-repeat center/auto 100%; width: 16px; height: 16px;}
.header .gnb .close { display: none; position: fixed; top: 30px; right: 2.5%; width: 40px; height: 40px; }
.header .gnb .close a { display: block; width: 100%; height: 100%; }
.header .gnb .close .circle::before, .header .gnb .close .circle::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; width: 26px; height: 2px; background: #fff; }
.header .gnb .close .circle::before { transform: rotate(45deg); }
.header .gnb .close .circle::after { transform: rotate(-45deg); }
/* 임시로 안보이게 */
.header-right { display: flex; align-items: flex-end; flex-direction: column-reverse; justify-content: space-between; padding-top: 20px; height: 100%;}
.header-right .header-login { display: flex; gap: 10px; position: relative; z-index: 3;}
/* .header-login span:nth-last-child(1) { min-width: 40px; } */
.header-login a { padding: 4px 27px; border-radius: 35px; border: 1px solid #ddd; display: flex; align-items: center; color: #101010; white-space: nowrap;}
.header-row { display: flex; align-items: center; gap: 25px;}
.header-search { display: flex; align-items: center; position: relative;}
.header-search::before { content: ''; display: block; position: absolute; top: 50%; left: -13px; width: 1px; height: 12px; background-color: #d9d9d9; transform: translateY(-50%);}
.header-contact { z-index: 2; position: absolute; top: 50%; right: calc(5% + 70px); transform: translateY(-50%); }
.header-contact a { background: rgba(0,0,0,.7); color: #fff; font-size: 14px; font-weight: 500; width: 110px; height: 35px; display: flex; align-items: center; justify-content: center; border-radius: 35px;}
.header-language { z-index: 2; position: relative;}
.header-language .current { position: relative; padding: 0 15px 0 0; font-size: 14px; color: inherit; font-weight: 600; height: 100%; display: flex; align-items: center; gap: 6px;}
.header-language .current::before { content: ''; position: absolute; right: 0; width: 8px; height: 4px;background: url('/images/ico-language-arrow.svg') no-repeat center / auto 100%;}
.header-language ul { position: absolute; left: 50%; top: 100%; transform: translateX(-50%); margin-top: 10px; width: 80px; background: #fff; box-shadow: 0 3px 10px rgba(0, 0, 0, .1); visibility: hidden; opacity: 0; }
.header-language ul::before { content: ''; z-index: -1; position: absolute; top: -8px; left: 0; right: 0; margin: auto; width: 0; height: 0; border-style: solid; border-width: 0 8px 8px 8px; border-color: transparent transparent #fff transparent; filter: drop-shadow(0px 3px 5px rgba(24, 24, 24, .35)); }
.header-language a { display: block; padding: 10px 0; text-align: center; font-size: 14px; color: #212227; transition: all ease .15s; }
.header-language .current[aria-pressed="true"] + ul { visibility: visible; opacity: 1; }
.header-language .current[aria-pressed="true"]::before { transform: rotate(180deg);}
.header .hamburger { display: none; width: 25px; height: 20px; z-index: 9;}
.header .hamburger a { overflow: hidden; display: block; position: relative; width: 100%; height: 100%; background: url(/images/ico-menu.png) no-repeat center/auto 100%;}
.hamburger span:not(.hide) { display: block; width: 100%; height: 2px; background: #000; position: absolute; left: 0; transition: all 0.3s ease; }
.hamburger span:nth-child(1) { top: 0px; }
.hamburger span:nth-child(2) { top: 50%; transform: translateY(-50%); }
.hamburger span:nth-child(3) { bottom: 0px;}
.header[data-hamburger='opened'] .hamburger span { background: #000 !important;}
.header[data-hamburger='opened'] .hamburger span:nth-child(1) { top: 50%; transform: translateY(-50%) rotate(45deg); }
.header[data-hamburger='opened'] .hamburger span:nth-child(2) { opacity: 0; }
.header[data-hamburger='opened'] .hamburger span:nth-child(3) { bottom: 50%; transform: translateY(50%) rotate(-45deg); }
.header[data-hamburger="opened"] .gnb { right: 0;}
/* sub */
.sub .header { position: fixed; height: 80px;}
.sub .header .logo { background: url(/images/logo-hd-sub.svg) no-repeat center/auto 100%; width: 151px; height: 43px; top: 50%;}
.sub .header-right { flex-direction: row; align-items: center; gap: 62px; padding-top: 0;}
@media (hover: hover) and (pointer: fine) and (min-width: 1240px) {
  .header-nav .lists > li:hover .link { color: #097CD3; }
  .header-nav .lists > li:hover .sub-lists { background: #F9F9F9; }
  .header-nav .sub-lists .sub-link:hover,
  .header-nav .child-lists .child-link:hover { text-decoration: underline; text-underline-offset: 0.3em; }
  .header .gnb .depth2:hover::before { width: 100%; }
  .header .gnb .depth2 > li > a:hover { background: var(--accent-color); font-weight: bold;}
  .header-contact a:hover { background: #000;}
}
@media screen and (max-width: 1400px) {
  .header .gnb .depth1 > li > a { white-space: nowrap;}
}
@media screen and (max-width: 1024px) {
  .header .gnb { overflow-y: auto; background: #fff;}
  .header .gnb a { padding: 20px 0%;}
  .header .gnb .nav { width: 90%; margin: 0 auto;}
  .header .hamburger { right: 5%; display: block;}
  .header-language { right: calc(5% + 50px);}
  .header-contact { right: calc(5% + 110px);}
  .header .gnb { position: fixed; top: 0; right: -100%; width: 100%; height: 100svh; justify-content: flex-end;}
  .header .gnb a { position: relative;}
  .header .gnb .depth1 { flex-direction: column; padding-top: 170px; overflow-y: auto; gap: 0;}
  .header .gnb .depth1 > li { width: 100%; border-bottom: 1px solid #ddd;}
  .header .gnb .depth1 > li > a { text-align: left; padding: 30px 0%; height: fit-content; font-size: 20px; justify-content: flex-start;}
  .header .gnb .depth2 > li > a { text-align: left;}
  .header .gnb .depth1 > li > a:after { content: ''; display: block; width: 28px; height: 28px; background: url('/images/ico-family-arrow.svg') no-repeat center/auto 100%; position: absolute; right: 5%; top: 50%; transform: translateY(-50%); filter: invert(1);}
  .header .gnb .depth1 > li > a[aria-expanded="true"]:after { transform: translateY(-50%) scaleY(-1);}
  .header .gnb .depth1 > li > a[aria-expanded="true"]:after,
  .header .gnb .depth1 > li > a > img { pointer-events: none;}
  .header .gnb .depth2 { display: block; position: static; background: transparent; color: inherit;}
  .header .gnb .depth2 > li > a { color: inherit; font-size: 18px;}
  .header .gnb .depth2 > li > a[aria-expanded="true"]:after { transform: translateY(-50%) scaleY(-1);}
  .header .gnb .depth2 { max-height: 0; opacity: 0; visibility: hidden; overflow: hidden; padding: 0;}
  .header .gnb .depth2 li:last-child > a { padding-bottom: 40px;}
}
@media screen and (max-width: 1024px) {
  .header { height: 80px; padding-right: 30px;}
  .header .logo { width: 120px; height: 94px; left: 30px;}
  .header-right { flex-direction: row; justify-content: flex-end; align-items: center; gap: 10px; padding: 0;}
  .header-language { right: calc(2.5% + 60px);}
  .header .hamburger { display: block; right: 2.5%;}
}
@media screen and (max-width: 767px) {
  .header { padding-right: 20px;}
  .header .logo { background: url(/images/logo-hd-sub.svg) no-repeat center/auto 100%; width: 110px; height: 30px; top: 50%; left: 20px;}
  .sub .header .logo { width: 110px; height: 30px;}
  .sub .header-right { gap: 5px;}
  .header-right { gap: 10px;}
  .header-right .header-login { gap: 5px;}
  .header-login a { padding: 2px 10px; font-size: 14px;}
  .header .gnb .depth2 > li > a { font-size: 14px; padding: 15px 10px;}
  .header .gnb .depth2 li:last-child > a { padding-bottom: 20px;}
  .header-contact { display: none;}
  .header .gnb .depth1 { padding-top: 80px;}
  .header .gnb .depth1 > li > a { font-size: 18px; padding: 20px 0;}
}

/* search */
.header .search-wrap { position: fixed; top: 0; width: 100%; height: 100svh; padding-top: 0; overflow: hidden; background: rgba(0,0,0,0.5); z-index: -1; margin-top: 100px; opacity: 0;}
.header .search-wrap .content-top { position: relative; padding-bottom: 80px; padding-top: 120px; background: #fff;}
.header .search-wrap h1 a { z-index: 3; position: absolute; top: 35px; left: 60px; width: 84px; height: 30px; background: url(/images/logo-hd.svg) no-repeat center / auto 100%; transform: none;}
.header .search-wrap .content-top .text { font-size: 27px; font-weight: bold; text-align: center; margin-bottom: 70px; display: none;}
.header .search-wrap .content-top .text span { color: #00AFD7;}
.header .search-wrap .input-box { max-width: 762px; height: 100%; display: flex; margin: 0 auto; margin-bottom: 80px;}
.header .search-wrap .input-box input, .search-wrap .input-box button { height: 80px; background: #fff; border-bottom: 1px solid #000;}
.header .search-wrap .input-box input { padding: 23px 0px; border-radius: 0; width: 100%; border-left: none; border-right: none; border-top: none; height: 68px; font-size: 20px; font-weight: 500;}
.header .search-wrap .input-box input:focus { outline: none;}
.header .search-wrap .input-box input::placeholder { color: #888;}
.header .search-wrap .input-box button { width: 60px; height: auto; padding: 20px; background-repeat: no-repeat; background-size: auto 36%; background-position: right center; background-image: url(/images/ico-search.svg); border-radius: 0; border-left: none; }
.header .search-wrap .heading { font-size: 65px; font-weight: 400; text-align: center; margin-bottom: 50px; }
.header .search-wrap .close { width: 40px; height: 40px; position: absolute; right: 60px; top: 30px; }
.header .search-wrap .close span { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-45deg); width: 100%; height: 3px; background: #000; }
.header .search-wrap .close span:last-child { transform: translate(-50%, -50%) rotate(45deg); }


/* footer */
footer { position: relative; background: #050505; color: #fff; padding: 80px 0 60px;}
footer * { font-family: 'Pretendard', sans-serif;}
footer .inner { display: flex;}
footer .footer-slogan { font-weight: 500; margin-bottom: 40px;}
footer .footer-main { display: flex; gap: 77px;}
footer .footer-links { display: flex; margin-bottom: 30px;}
footer .footer-links li a { position: relative; padding: 0 15px;}
footer .footer-links li:first-child a { padding-left: 0;}
footer .footer-links li:not(:first-child) a::before { content:''; display: block; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 12px; background: #d9d9d9;}
footer .footer-info * { font-size: 16px; line-height: 1.5;}
footer .footer-info .info-item { display: flex; align-items: center; flex-wrap: wrap;}
footer .footer-info .info-item + .info-item { margin-top: 8px;}
footer .footer-info strong { vertical-align: middle; font-weight: 400; margin-right: 11px;}
footer .footer-info .label { margin-right: 8px; color: #666;}
footer .footer-info .value { margin-right: 24px; color: #999; font-size: 14px;}
footer .copyright { color: #999; font-size: 16px; margin-top: 24px;}
footer .footer-right { flex: 1; display: flex; flex-direction: column; align-items: flex-end;}
footer .footer-right .footer-sns { display: flex; gap: 25px; align-items: center; margin-bottom: 28px;}
footer .footer-right .footer-sns a { display: flex; align-items: center; justify-content: center; opacity: .5;}
@media (hover:hover) and (pointer:fine) {
  footer .footer-right .footer-sns a:hover { opacity: 1;}
}
@media screen and (max-width: 767px) {
  footer { padding: 60px 0;}
  footer .inner { flex-wrap: wrap; gap: 30px;}
  footer .footer-main { flex-wrap: wrap; gap: 20px;}
  footer .footer-info * { font-size: 14px;}
  footer .footer-info .label { font-size: 14px;}
}
/* Floating */
.floating-container { display: none; z-index: 10; position: fixed; bottom: 40px; right: 40px; }
.floating-container.active { display: block; }
.floating-container.ab { bottom: auto; top: -115px; }
.floating-container .scroll-to a { display: block; margin: auto; width: 60px; height: 60px; background: url("/images/scroll-top.png") no-repeat center / auto 100%; transition: ease .6s; margin-top: 5px;}
@media screen and (max-width: 767px) {
  .floating-container { right: 5%; bottom: 24px;}
  .floating-container .scroll-to a { margin-top: 10px;}
}


/* board-card */
.board-card { display: flex; flex-direction: column; background-color: #F0F2F6; padding: 20px; position: relative; overflow: hidden; transition: all ease .3s;}
.board-card::after { content: ""; position: absolute; width: 50px; height: 50px; background: #fff; bottom: -30px; right: -30px; transform: rotate(45deg); box-sizing: border-box; transition: all 0.3s ease; border: 1px solid transparent;}
.board-card::before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; box-sizing: border-box; transition: all 0.3s ease; border: 1px solid transparent;}
.board-card .card-title { font-size: 16px; display: flex; gap: 8px; align-items: center;}
.board-card .card-title span { font-size: 13px; display: block;}
.board-card .card-content { margin-top: auto;}
.board-card .card-sbj { font-size: 20px; font-weight: 500; margin-bottom: 8px; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden;}
.board-card .card-year { font-size: 16px; margin-top: 20px;}
.board-card .card-desc { font-size: 20px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}
.board-card[data-card="newsletter"] .card-title span { background: url('/images/ico-newsletter.png') no-repeat center/auto 100%; width: 18px; height: 18px;}
.board-card[data-card="newsletter"] .card-desc { -webkit-line-clamp: 2;}
.board-card[data-card="blog"] .card-title span { padding: 2px 8px; background-color: #E40413; color: #fff; border-radius: 35px;}
.board-card[data-card="blog"] .card-desc { -webkit-line-clamp: 3;}
.board-card[data-card="seminar"] .card-title span { padding: 2px 8px; border-radius: 35px; border: 1px solid #DADDE2; background: #fff;}
.board-card[data-card="seminar"] .card-desc { -webkit-line-clamp: 2;}
.board-card[data-card="publication"] .card-title span { padding: 2px 8px; border-radius: 35px; border: 1px solid #DADDE2; background: #fff;}
.board-card[data-card="publication"] .card-desc { -webkit-line-clamp: 2;}
.board-card[data-card="press"] .card-desc { -webkit-line-clamp: 2;}
.board-card[data-card="view-newsletter"] .card-title::before { content:'뉴스레터'; display: block; padding: 2px 8px; border-radius: 35px; border: 1px solid #DADDE2; background: #fff;}
.board-card[data-card="view-press"] .card-title::before { content:'언론보도'; display: block; padding: 2px 8px; border-radius: 35px; border: 1px solid #DADDE2; background: #fff;}
@media (hover: hover) and (pointer: fine) {
  .board-card:hover::before { border-color: #222;}
  .board-card:hover::after { border-color: #222;}
}

/* card-profile-list  */
.card-profile-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); grid-template-rows: 1fr; gap: 80px 30px; margin-bottom: 80px;}
.card-profile-list .profile-item { border: 1px solid #bbb; transition: all .3s ease;}
.card-profile-list figure { padding-bottom: 95%; border-bottom: 1px solid #bbb; background-color: #C9D5DD;}
.card-profile-list .profile-info { padding: 20px; display: flex; justify-content: space-between; align-items: flex-start; gap: 20px 5px;}
.card-profile-list .profile-name { font-size: 24px; margin-bottom: 9px;}
.card-profile-list .profile-position { font-weight: 400; font-size: 18px; color: #1D1D1D;}
.card-profile-list .profile-position span { position: relative; margin-right: 16px;}
.card-profile-list .profile-position span:not(:first-child)::before { content: ''; display: block; position: absolute; top: 3px; left: -10px; width: 1px; height: 16px; background: #bbb;}
.card-profile-list .profile-email { width: 48px; aspect-ratio: 1; border-radius: 50%; overflow: hidden; position: relative; background: #f5f5f5; transition: all .3s ease;}
.card-profile-list .profile-email::before { content: ''; display: block; background: url(/images/ico-email.svg) no-repeat center/ auto 50%; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: all .3s ease;}
.card-more-btn { border: 1px solid #ccc; background: #fff; width: fit-content; margin: 0 auto;}
.card-more-btn button { display: flex; align-items: center; gap: 12px; padding: 10px 40px; height: 56px;}
@media (hover: hover) and (pointer: fine) {
  .card-profile-list .profile-item:hover { border-color: #000;}
  .card-profile-list .profile-email:hover { background: #F32735;}
  .card-profile-list .profile-email:hover::before { filter: invert(1);}
}

.site-wrap.open .familyLink { display: block}
.site-wrap { position: relative; width: 206px; cursor: pointer; padding: 15px 35px 15px 25px; display: flex; align-items: center; margin-left: auto; border-radius: 35px; background-color: transparent; border: 1px solid #aaa;}
.site-wrap .btn-site { font-size: 16px; color: #999;}
.site-wrap .ico { margin-left: auto; background: url('/images/ico-family-arrow.svg') no-repeat center/cover; position: absolute; right: 20px; width: 19px; height: 19px;}
.site-wrap .familyLink { width: 100%; position: absolute; background-color: #fff; display: none; top: 100%; left: 50%; transform: translateX(-50%); border: 1px solid rgba(160, 160, 160, 0.5); background: #fff}
.site-wrap .familyLink li a { font-size: 14px; line-height: 25px; letter-spacing: 0; color: #999;  padding: 10px 20px; display: block;}
.site-wrap.open .icon_box { border-top: 0; border-bottom: 10px solid #5285a2}
.site-wrap.active .familyLink { display: block;}
.site-wrap.active .ico { transform: rotate(180deg);}
@media (hover: hover) and (pointer: fine) {
  .site-wrap:hover { border-color: #fff;}
  .site-wrap .familyLink li a:hover { color: #000;}
}
@media screen and (max-width: 767px) {
  .site-wrap { padding: 8px 35px 8px 25px; width: 160px;}
  .site-wrap .btn-site { font-size: 14px;}
}

/* pagination */
.pagination { display: flex; justify-content: center; align-items: center; gap: 5px;}
.pagination button { width: 48px; aspect-ratio: 1; background-repeat: no-repeat; background-position: center; background-size: auto 100%;}
.pagination button.prev { background-image: url(/images/pagination-prev.svg);}
.pagination button.prev-end { background-image: url(/images/pagination-prev-end.svg);}
.pagination button.next { background-image: url(/images/pagination-next.svg);}
.pagination button.next-end { background-image: url(/images/pagination-next-end.svg);}
.pagination .prev[disabled], .pagination .next[disabled], .pagination .prev-end[disabled], .pagination .next-end[disabled] { opacity: 0.5; cursor: default; }
.pagination .page[disabled] { cursor: default;}
.pagination .page { border-radius: 50%;}
.pagination .page.active { background-color: #F32735; color: #fff;}



/* template */
.magazine-template { min-height: 100vh; display: flex; flex-direction: column; gap: 50px; padding-bottom: 200px; user-select: none; -webkit-user-drag: none;}
.magazine-template img { pointer-events: none;}
.magazine-template .template { max-width: 860px; width: 100%; margin: 0 auto; position: relative; gap: 50px;}
.magazine-template .template .template-area { flex: 1; word-break: break-all;}
.magazine-template .template .template-img { width: 100%; height: 100%; object-fit: cover; background: #f7f7f7; min-height: 200px;}
.magazine-template .template .template-img img { width: 100% !important; height: 100% !important; object-fit: cover;}
.magazine-template .template .template-text { flex: 1;}
.template[data-template="1"] { display: flex;}
.template[data-template="2"] { display: flex;}
.template[data-template="3"] { display: flex;}
.template[data-template="4"] { display: flex;}
.template[data-template="3"] { display: flex;} .template-area,
.template[data-template="4"] { display: flex;} .template-area { display: grid; gap: 30px;}
.template[data-template="5"],
.template[data-template="6"] { display: grid;}
.template[data-template="6"] .template-area { display: flex; gap: 30px;}
.template[data-template="6"] .template-text { flex: 1;}
.template[data-template="8"] .template-area { display: flex; gap: 30px;}
.template[data-template="9"] { display: flex;}
.template[data-template="10"] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;}
.template[data-template="11"] { display: flex;}
.template[data-template="11"] .template-area:nth-child(2) { flex: 1.3;}
.template[data-template="12"] { display: flex;}
.template[data-template="12"] .template-area:nth-child(1) { flex: 1.3;}
.template[data-template="14"] { display: flex; gap: 20px;}
.template[data-template="15"] { display: flex;}
.template[data-template="16"] { display: flex;}
@media screen and (max-width: 767px) {
  .magazine-template { padding-bottom: 60px;}
  .magazine-template .template { gap: 20px;}
  .template[data-template="1"],
  .template[data-template="2"],
  .template[data-template="14"] { flex-direction: column;}
  .template[data-template="10"] { gap: 10px;}
  .template[data-template="8"] .template-area { flex-direction: column;}
}
