@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: #588427;
  --accent2-color: #3A7BEE;
  --bg-sub-color: #f7f7f7;
}
@page {
  size: auto;
  padding: 2.5rem;
  margin: 0 !important;
}
.print-header { position: absolute; top: 0; left: 0; display: none;}
@media print {
  * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }
  html, body { height: auto !important; overflow: visible !important; font-size: 14px; min-height: 100vh; }
  .wrap.sub > * { display: none; }
  .practices-view { padding: 0 5%; margin: 0;}
  .professionals-view { padding: 0 5%; margin: 0;}
  .professionals-view .view-info .info-top { display: none;}
  .view.global .view-info { padding: 0 5%;}
  .practices-view .view-info { width: 90%; margin: 0 auto;}
  .wrap.sub #print { display: block; padding-top: 0; }
  .print-header { display: block !important; position: static; margin: 0;}
  .global { height: auto !important; overflow: visible !important; font-size: 14px !important; }
  .global .view-info { width: 90%; padding-left: 0; }
  #print .view-info { width: 90%; max-width: 90%; }
  #print .info-location figure { display: none; }
  .view-info { padding-top: 20px !important; }
  .view-info .info-list .list-item::before { top: 10px !important; }

  /* 사파리 Flexbox 인쇄 문제 해결 */
  .view .info-member { position: static; padding: 50px 0 0; width: 100%; display: block; }
  .view .info-member .member-list { display: block; width: 100%; }
  .view .info-member .member-list .member-item { width: calc(50% - 15px); display: inline-block; vertical-align: top; margin-bottom: 30px; margin-right: 30px; }
  .view .info-member .member-list .member-item:nth-child(even) { margin-right: 0; }
  .view .info-member .member-list .member-item + .member-item { margin-top: 0; }

  .view .info-area.slide { display: none; }
  .view .info-area + .info-area { margin-top: 30px; }
  .view-floationg { display: none; }
  .view .title-btns { display: none; }
  .dropdown-btn .toggle-btn { display: none; }
  #print { max-width: 1240px; margin: 0 auto; padding-top: 0; padding-bottom: 0; }
  #print .view-info .line { display: none; }

  /* 사파리용 Flexbox 대체 */
  #print .view-section { display: block; width: 100%; }
  #print .view-section:last-child { display: none; }
  #print .sidebar { width: 100%; float: none; }
  #print .sidebar .sticky { position: static; }
  #print .sidebar .sidebar-view { padding: 30px 60px 0; display: block; overflow: hidden; }
  #print .sidebar-view figure { width: 50%; padding-bottom: 40%; float: left; }
  #print .sidebar-view-info { border: none; width: 50%; float: right; }
  .view .info-member .member-wrap .slide-btns { display: none;}
  .view .info-member .member-wrap .swiper-wrapper { flex-wrap: wrap; gap: 30px 50px;}
  .view .info-member .member-wrap .swiper-slide { width: calc(50% - 50px);}
  .view .info-title { font-size: 18px; margin-bottom: 10px; padding: 10px 0;}
  .view .info-list .list-title { font-size: 16px;}
  .view .info-area + .info-area { margin-top: 30px;}
  .view .dropdown + .dropdown { margin-top: 30px;}
  .view .info-area br { display: none;}
  .view .info-links a { font-size: 14px; padding: 5px 15px;}

  /* 사파리 클리어픽스 추가 */
  #print .sidebar-view::after { content: ""; display: table; clear: both; }
}

html { scrollbar-gutter: stable;}
.wrap { position: relative;}
.inner { padding: 0 60px; }
.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: 80px; font-weight: bold; line-height: normal; }
h2 { font-size: 96px; font-weight: 500;}
h3 { font-size: 36px; font-weight: 500;}
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;}
.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;}
.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: inline-block; font-weight: 500; position: relative;}
.view-more::before { content: ''; position: absolute; bottom: -2px; left: 0; transform: scaleX(0); width: 100%; height: 2px; background: #000; 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;}
@media (hover: hover) and (pointer: fine) {
  .view-more:hover::before { 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;}
  .inner { padding: 0 30px; }
}
@media screen and (max-width:767px) {
  h1 { font-size: 32px;}
  h2 { font-size: 24px;}
  h3 { font-size: 22px;}
  h4 { font-size: 20px;}
  .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;}
}
/* 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-expertise-arrow-active { width: 19px; height: 24px; background: url(/images/expertise-arrow-active.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-expertise-arrow { width: 15px; height: 14px; background: url(/images/expertise-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: 20px; height: 20px; background: url(/images/ico-insta.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-facebook { width: 20px; height: 20px; background: url(/images/ico-facebook.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-youtube { width: 20px; height: 20px; background: url(/images/ico-youtube.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-file-down { width: 24px; height: 24px; background: url(/images/ico-file-down.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-board-download { width: 24px; height: 24px; background: url(/images/ico-board-download.svg) no-repeat center/auto 100%; display: inline-block;}
.ico-board-link-arrow { width: 24px; height: 24px; background: url(/images/ico-board-link-arrow.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-drop-arrow { width: 20px; height: 20px; background: url(/images/ico-language-arrow.svg) no-repeat center/auto 40%; display: inline-block;}
@media screen and (max-width: 767px) {
  .ico-down-green { width: 30px; height: 30px; margin-left: 10px;}
}

/* line */
.line { position: absolute; top: 0; left: 0; width: 100%; height: 1px; background: #000; 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 0.8s !important;}
.line.disabled { transform: scale(1);}

/* header */
.header { position: fixed; width: 100%; height: 100px; z-index: 10; background: #fff;}
.header .header-inner { max-width: 1800px; width: 95%; height: 100%; margin: 0 auto; position: relative;}
.header .logo { position: absolute; top: 50%; left: 60px; transform: translateY(-50%); width: 84px; height: 30px; background: url(/images/logo-hd.svg) no-repeat center/cover; z-index: 3;}
.header .gnb { position: absolute; top: 0; display: flex; justify-content: center; width: 100%; height: 100%; z-index: 2; transition: background 0.3s; background: #fff;}
.header::before { content:''; display: block; position: absolute; top: 100px; left: 0; width: 100%; height: 1px; background: #000; z-index: 3;}
.header .gnb .depth1 { display: flex;}
.header .gnb a { padding: 10px 20px; font-weight: 500; display: flex;}
.header .gnb .depth1 > li > a { padding: 15px 30px; position: relative; height: 100px; display: flex; align-items: center; justify-content: center; font-weight: 500; 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: 100px; left: 0; width: 100%; padding:20px 0; background: #fff; display: none; justify-content: center; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.03), 0 4px 6px -2px rgba(0, 0, 0, 0.05);}
/* .header .gnb .depth2::before { content: ''; display: block; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 0%; height: 2px; background: var(--accent-color); transition: 0.2s;} */
.header .gnb .depth2 > li > a { display: block; text-align: center; font-size: 16px; font-weight: 400;}
html[lang="jp"] .header .gnb .depth2 > li > a { font-size: 14px;}
.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 { z-index: 10; position: absolute; top: 50%; right: 60px; transform: translateY(-50%); display: flex; align-items: center; gap: 40px;}
.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-language ul li a.active { color: #E40413;}
.header .hamburger { display: none; width: 30px; height: 30px; 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%;}
.wrap.board .header::before { content: none;}
.header[data-hamburger="opened"] .gnb { right: 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 { color: var(--accent-color);}
    .header-contact a:hover { background: #000;}
}
/* @media screen and (max-width: 1400px) {
  .header .gnb .depth1 > li { width: 9em;}
  .header .gnb .depth1 > li > a { white-space: nowrap;}
} */
@media screen and (max-width: 1560px) {
  .header .gnb { overflow-y: auto;}
  .header .gnb a { padding: 20px 0%;}
  .header .gnb .nav { padding: 0 30px; width: 100%;}
  .header-right { gap: 20px;}
  .header .hamburger { display: block;}
  .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: 100px; overflow-y: auto;}
  .header .gnb .depth1 > li { width: 100%; border-bottom: 1px solid #ddd;}
  .header .gnb .depth1 > li > a { text-align: left; padding: 20px 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: 18px; height: 8px; background: url(/images/ico-language-arrow.svg) no-repeat center/auto 100%; position: absolute; right: 5%; top: 50%; transform: translateY(-50%);}
  .header .gnb .depth1 > li > a[aria-expanded="true"]:after,
  .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; display: block; position: static;}
  .header .gnb .depth2 li:last-child > a { padding-bottom: 40px;}
}
@media screen and (max-width: 1240px) {
  .header .logo { left: 30px;}
  .header-right { right: 30px;}
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 767px) {
  .header .logo { left: 20px; width: 60px; height: 20px;}
  .header-right { right: 20px;}
  .header .gnb .nav { padding: 0 20px;}
  .header { height: 80px;}
  .header::before { top: 80px;}
  .header .gnb .depth1 > li > a { font-size: 16px;}
  .header .gnb .depth2 > li > a { font-size: 14px; padding: 10px 0;}
  .header .gnb .depth2 li:last-child > a { padding-bottom: 20px;}
  .header .site-wrap { display: none;}
  .header-contact { display: none;}
}

/* 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: 10; 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); }
@media screen and (max-width: 1280px) {

}

@media screen and (max-width: 1024px) {
  .header .search-wrap .content-top { padding: 120px 100px 50px; }
}

@media screen and (max-width: 767px) {
  .header .search-wrap { margin-top: 80px;}
  .header .search-wrap .close { width: 30px; height: 30px; right: 5%;}
  .header .search-wrap .input-box input { font-size: 16px; height: 50px;}
  .header .search-wrap .content-top { padding: 120px 30px 50px;}
}


/* footer */
footer { position: relative; background: #050505; color: #fff; padding: 120px 0 80px;}
footer .footer-top { display: flex; justify-content: space-between; align-items: center; gap: 30px 50px; margin-bottom: 40px;}
footer .social-links { display: flex; align-items: center;}
footer .social-links a { filter: invert(1); padding: 0 12px; display: flex; align-items: center; justify-content: center;}
footer .social-links a i { width: 24px; height: 24px;}
footer .footer-links { display: flex; flex-wrap: wrap; gap: 10px 0; padding: 30px 0; border-block: 1px solid rgba(255,255,255,.2); margin-bottom: 60px;}
footer .footer-links li a { position: relative; color: #fff; display: flex; align-items: center; padding: 0 25px;}
footer .footer-links li a i { margin-left: 2px;}
footer .footer-links li:first-child a { padding-left: 0;}
footer .footer-links li:not(:first-child) a::before { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 1px; height: 15px; background: #ABABAB;}
footer .footer-info { color: rgba(255,255,255,.6); }
footer .info-list { display: flex; flex-wrap: wrap; gap: 20px 0;}
footer .info-list .info-item { position: relative; padding: 0 25px; display: flex;}
footer .info-list .info-item a { color: rgba(255,255,255,.6);}
footer .info-list .info-item:first-child { padding-left: 0;}
footer .info-list .info-item:not(:first-child)::before { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 1px; height: 15px; background: #ABABAB;}
footer .copyright { margin-top: 12px;}
@media screen and (max-width: 1024px) {
  footer .info-list .info-item { flex: 0 0 100%; padding: 0;}
  footer .info-list .info-item:not(:first-child)::before { content: none;}
}
@media screen and (max-width: 767px) {
  footer { padding: 60px 0;}
  footer .social-links a { padding: 0 6px;}
  footer .social-links a i { width: 18px; height: 18px;}
  footer .footer-top { margin-bottom: 30px;}
  footer .footer-links { margin-bottom: 30px;}
  footer .footer-links li a { padding: 0 15px;}
  footer .info-list .info-item { padding: 0;}
}

/* Floating */
.floating-container { display: none; z-index: 9; position: fixed; bottom: 50px; right: 50px; }
.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/icon-top.png") no-repeat center / auto 100%; transition: ease .6s; margin-top: 5px;}
.floating-container .scroll-to a.btn-kakao { background: url("../img/icon-kakao.png") no-repeat center / auto 100%;}
@media screen and (max-width: 768px) {
  .floating-container { right: 5%; bottom: 24px;}
  .floating-container .scroll-to a { margin-top: 10px; width: 35px; height: 35px;}
}

/* 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; flex-wrap: wrap; min-height: 35px;}
.board-card .card-title .card-profile { width: 48px; aspect-ratio: 1; border-radius: 50%; box-shadow: 0 0 0 1px #DADDE2; object-fit: contain; object-position: bottom;}
.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;}
}
@media screen and (max-width: 1024px) {
  .board-card .card-title { flex-wrap: wrap;}
}
@media screen and (max-width: 767px) {
  .board-card .card-desc { font-size: 16px;}
}
/* 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: 0px; margin-bottom: 60px;}
.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(:last-child)::before { content: ''; display: block; position: absolute; top: 3px; right: -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);}
}
@media screen and (max-width: 767px) {
  .card-profile-list { gap: 30px; }
  .card-profile-list .profile-name { font-size: 18px;}
  .card-profile-list .profile-position span { font-size: 14px;}
  .card-profile-list .profile-position span:not(:last-child)::before { height: 10px;}
}

.site-wrap.open .familyLink { display: block}
.site-wrap { position: relative; width: 172px; cursor: pointer; padding: 8px 33px 8px 16px; display: flex; align-items: center; margin-left: auto; border-radius: 35px; background-color: #F0F2F6;}
.site-wrap .btn-site { font-weight: 600; font-size: 14px;}
.site-wrap .ico { margin-left: auto; background: url('/images/ico-language-arrow.svg') no-repeat center/cover; position: absolute; right: 16px; width: 8px; height: 4px;}
.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; width: max-content; min-width: 100%; margin-top: 3px;}
.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;}
}

/* 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;}
