/* common.css */
p{margin:0;line-height:1.3em;word-break: keep-all; /* 단어 단위로 줄바꿈 */ white-space: normal;  /* 기본 줄바꿈 허용 */}
html{font-size:16px;} /* PC 기본 */

/*font*/
.t-bd{font-family:'NanumSquareBold';}
.t-ebd{font-family:'NanumSquareExtraBold';}
:root {
  --color-primary: #0066CC;
  --spacing-lg: 2rem;
  --fs-lg: 1.25rem;
  --fs-xxs: 0.75rem;  /* 12px */
  --fs-xs: 0.875rem;  /* 14px */
  --fs-sm: 1rem;      /* 16px */
  --fs-md: 1.125rem;  /* 18px */
  --fs-lg: 1.25rem;   /* 20px */
  --fs-xl: 1.5rem;    /* 24px */
  --fs-xxl: 2rem;     /* 32px */
}
:root{
	--delay-2:0.3s;
  --delay-3:0.6s;
  --delay-4:0.9s;
  --delay-5:1.2s;
}
.tit-xxl{font-size:var(--fs-xxl);}
.tit-xl{font-size:var(--fs-xl);}
.tit-l{font-size:var(--fs-lg);}
.tit-m{font-size:var(--fs-md);}
.tit-s{font-size:var(--fs-sm);}
.tit-xs{font-size:var(--fs-xs);}
.m-col{color:var(--color-primary);}
.t-wh{color:#fff;}
.tit-l .highlight{color:var(--color-primary);font-family:'NanumSquareBold';}
.al-ct{text-align:center;}
.al-lf{text-align:left;}
button{cursor:pointer;font-size:var(--fs-sm);}
.btn {
  color: var(--color-primary);
  padding: var(--spacing-lg);
  font-size: var(--fs-lg);
}
/*딜레이 애니메이션*/
.del-2{animation-delay:var(--delay-2) !important;}
.del-3{animation-delay:var(--delay-3) !important;}
.del-4{animation-delay:var(--delay-4) !important;}
.del-5{animation-delay:var(--delay-5) !important;}
/*tel 링크 색상*/
a[href^="tel"],
a[href^="sms"] {
  color: inherit !important;       
  text-decoration: none !important;   
  cursor: default !important; 
  -webkit-text-decoration-color: transparent !important;
  -webkit-tap-highlight-color: transparent;
}
/*서브페이지 비주얼*/
/*page top visual*/
.p-t-vis{padding:15rem 0 5rem 0;background-size:cover;background-position:center;}
.img-a{background-image:url(/wp-content/uploads/2025/10/sub-9030495.jpg);}
.img-b{background-image:url(/wp-content/uploads/2025/10/sub-004865.jpg);}
.img-c{background-image:url(/wp-content/uploads/2025/10/sub-005867.jpg);}
/*페이지 네비게이션*/
.p-nav{display:flex;gap:15px;}
.p-nav>p{color:#fff;font-size:var(--fs-xs);}
.p-nav>p>a{text-decoration:none;color:#fff;}

/*서브페이지 하위메뉴 start*/
/* 서브 네비게이션 전체 영역 */
.sub-nav {
  width: 100%;
  background-color: #fff;
  border-bottom: 1px solid #d8d8d8;
  text-align: center;
  margin-top: 0;
}

/* 메뉴 리스트 기본 설정 */
.sub-nav .sub-menu {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap:4rem;
}

/* 각 메뉴 항목 */
.sub-nav .sub-menu li {
  position: relative;
}

/* 메뉴 링크 스타일 */
.sub-nav .sub-menu li a {
  display: inline-block;
  padding:22px 0;
  color: #333;
  text-decoration: none;
  transition: color 0.3s;
}

/* hover 시 글자색 변경 */
.sub-nav .sub-menu li a:hover {
  color: #0066cc;
}

/* 활성 페이지 표시 (현재 페이지 탭) */
.sub-nav .sub-menu li.current_page_item a {
  color:#0066cc;font-family:'NanumSquareBold';
}
.sub-menu li.current_page_parent,
.sub-menu li.current_page_ancestor,
.sub-menu li.current_page_item {
  color:#0066cc !important;
	font-family:'NanumSquareBold';
}

/* 밑줄 애니메이션 */
.sub-nav .sub-menu li.current_page_item a::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 2px;
  background-color: #0066cc;
  border-radius: 2px;
  z-index: 2;
}

/* 호버 시 밑줄도 자연스럽게 */
.sub-nav .sub-menu li a::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 2px;
  background-color: #0066cc;
  border-radius: 2px;
  transition: width 0.3s;
}
.sub-nav .sub-menu li a:hover::after {
  width: 100%;
}
/*서브페이지 하위메뉴 end*/
/* submenu b03 style */
.b_03_01-content .sub-menu li a {
  display: inline-block;
  padding: 22px 0px;
  color: #333;
  text-decoration: none;
  position: relative;
	transition: color 0.3s;
}
/* 밑줄 효과: hover나 active(현재 페이지) 모두 동일하게 */
.b_03_01-content .sub-menu li.current_page_item > a,
.b_03_01-content .sub-menu li.current_page_parent > a,
.b_03_01-content .sub-menu li.current_page_ancestor > a,
.b_03_02-content .sub-menu li.current_page_item > a,
.b_03_02-content .sub-menu li.current_page_parent > a,
.b_03_02-content .sub-menu li.current_page_ancestor > a,
.b_03_03-content .sub-menu li.current_page_item > a,
.b_03_03-content .sub-menu li.current_page_parent > a,
.b_03_03-content .sub-menu li.current_page_ancestor > a{
  color: #0066cc;
}
/* 밑줄 애니메이션 */
.b_03_01-content .sub-menu li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 0;
  height: 2px;
  background-color: #0066cc;
  transition: width 0.3s;
}
/* hover 또는 현재 메뉴(active) 상태일 때 밑줄 표시 */
.b_03_01-content .sub-menu li a:hover::after,
.b_03_01-content .sub-menu li.current_page_item > a::after,
.b_03_01-content .sub-menu li.current_page_parent > a::after,
.b_03_01-content .sub-menu li.current_page_ancestor > a::after,
.b_03_02-content .sub-menu li a:hover::after,
.b_03_02-content .sub-menu li.current_page_item > a::after,
.b_03_02-content .sub-menu li.current_page_parent > a::after,
.b_03_02-content .sub-menu li.current_page_ancestor > a::after,
.b_03_03-content .sub-menu li a:hover::after,
.b_03_03-content .sub-menu li.current_page_item > a::after,
.b_03_03-content .sub-menu li.current_page_parent > a::after,
.b_03_03-content .sub-menu li.current_page_ancestor > a::after{
  width: 100%;
}

/* 서브 네비게이션 전체 영역 */
.sub-nav-b03 {
  width: 100%;
  background-color: #fff;
  text-align: left;
  margin-top: 0;
}

/* 메뉴 리스트 기본 설정 */
.sub-nav-b03 .sub-menu-b03 {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap:9rem;
}

/* 각 메뉴 항목 */
.sub-nav-b03 .sub-menu-b03 li {
  position: relative;
}

/* 메뉴 링크 스타일 */
.sub-nav-b03 .sub-menu-b03 li a {
  display: inline-block;
  padding:15px 0;
  color: #333;
  text-decoration: none;
  transition: color 0.3s;
  font-family:'NanumSquareBold';
}

/* hover 시 글자색 변경 */
.sub-nav-b03 .sub-menu-b03 li a:hover {
  color: #0066cc;
}

/* 활성 페이지 표시 (현재 페이지 탭) */
.sub-nav-b03 .sub-menu-b03 li.current_page_item a {
  color:#0066cc;font-family:'NanumSquareBold';
}
.sub-menu-b03 li.current_page_parent,
.sub-menu-b03 li.current_page_ancestor,
.sub-menu-b03 li.current_page_item {
  color:#0066cc !important;
	font-family:'NanumSquareBold';
}
/* 밑줄 애니메이션 */
.sub-nav-b03 .sub-menu-b03 li.current_page_item a::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 2px;
  background-color: #0066cc;
  border-radius: 2px;
  z-index: 2;
}
.p-form{margin:8rem 0;width:70%;}
@media screen and (min-width:1921px){
.wrapper-m{width:1600px !important;margin:0 auto;}
.wrapper-s{width:1300px !important;margin:0 auto;}

}
@media screen and (min-width:1024px) and (max-width: 1920px){
.wrapper-m{width:auto;margin:0 auto;margin:0 160px;}
}
@media screen and (min-width:1501px) and (max-width: 1920px){
.wrapper-s{width:1300px;margin:0 auto;}
}
@media screen and (min-width:1025px) and (max-width: 1500px){
.wrapper-s{margin-left:100px;margin-right:100px;}
}
@media screen and (min-width:768px) and (max-width:1024px){
.wrapper-s, .wrapper-m{margin-left:80px;margin-right:80px;}html{font-size:14px;}
	/*b03 tabmenu*/
	.sub-nav-b03 .sub-menu-b03{gap: 4rem;}
}
@media screen and (max-width: 768px){
	.wrapper-s, .wrapper-m{width:auto;margin:0 auto;margin:0 20px;}html{font-size: 12px;} /* 모바일 */
	/*font*/
	
	/* main-page */
	.media-sepa{flex-direction:column;}
	.media-sepa>div{width:auto;}
	/* slide-section */
  .slide {min-width:100%;margin:0;}
  .mobile-ui{display:block;text-align:center;margin-top:10px;}
  .progress-bar{width:100%;background:#eee;height:4px;margin-top:5px;position:relative;}
  .progress{height:100%;background:#007bff;width:33.3%;transition:width 0.3s ease;}
	/*서브페이지 비주얼*/
	.p-t-vis{padding:10rem 0 3rem 0;}
	
	
/* 기존 .sub-nav 설정을 유지하되 모바일에서 border는 제거하고 스크롤 설정 보강 */
  .sub-nav {
    position: relative;            /* ::before 사용하려면 필요 */
    overflow-x: auto;              /* 가로 스크롤 허용(기존) */
    overflow-y: hidden;            /* 세로 스크롤 차단 — 세로 스크롤이 생기지 않게 함 */
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    scroll-snap-type: x mandatory;

  }

  .sub-nav .sub-menu {
    display: flex;
    flex-wrap: nowrap;
    gap: 28px;
    margin: 0 1rem;
    padding: 0;
    justify-content: flex-start;
    white-space: nowrap;
  }

  .sub-nav .sub-menu li {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .sub-nav .sub-menu li a {
    padding: 14px 6px;
    display: inline-block;
    white-space: nowrap;
  }
	.b_03_01-content .sub-nav .sub-menu {margin:0 1rem;}
	.b_03_01-content .sub-menu li a { padding: 14px 6px; }
  /* 언더바(현재 페이지 / 호버)의 위치와 z-index를 조정 — 부모의 가짜 border 위로 올라오게 */
  .sub-nav .sub-menu li a::after {
    content: '';
    position: absolute;
    bottom: 0;                     /* -1px 대신 0으로 바꿔서 overflow 유발 방지 */
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background-color: #0066cc;
    border-radius: 2px;
    transition: width 0.3s;
    z-index: 3;                    /* 가짜 border(1)보다 위에 오도록 충분히 높게 */
  }

  .sub-nav .sub-menu li a:hover::after {
    bottom: 0px;
  }

  .sub-nav .sub-menu li.current_page_item a::after {
    bottom: 0px;
    z-index: 3;
  }

  .sub-nav::-webkit-scrollbar { display: none; }
	
 /*b03 tabmenu*/
	.sub-nav-b03 .sub-menu-b03{gap: 1rem;}
	.p-form{width:100%;}
}


/*애니메이션효과*/
/* 기본: fade 계열의 요소들 초기 상태 통일 */
[class*="fade-"], .reveal {
  position: relative;
  /* 기본은 보이지 않게 (fade-in/left/right/up/down 용) */
  opacity: 0;
  transition: opacity 0.2s;
}
.reveal.active {
  opacity: 1;
}

.fade-out {
  opacity: 1;
}

.active.fade-left {
  animation: fade-left 0.6s ease-in forwards;
}
@keyframes fade-left {
  0% { transform: translateX(-100px); opacity: 0; }
  100% { transform: translateX(0); opacity: 1; }
}
.active.fade-right {
  animation: fade-right 0.6s ease-in forwards;
}
@keyframes fade-right {
  0% { transform: translateX(100px); opacity: 0; }
  100% { transform: translateX(0); opacity: 1; }
}

.active.fade-up {
  animation: fade-up 0.6s ease-in forwards;
}
@keyframes fade-up {
  0% { transform: translateY(50px); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}
.active.fade-down {
  animation: fade-down 0.6s ease-in forwards;
}
@keyframes fade-down {
  0% { transform: translateY(-50px); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}

.active.fade-in {
  animation: fade-in 0.8s ease-in forwards;
}
@keyframes fade-in {
  0% { opacity: 0; transform: none; }
  100% { opacity: 1; transform: none; }
}
.active.fade-out {
  animation: fade-out 0.6s ease-out forwards;
}
@keyframes fade-out {
  0% { opacity: 1; transform: none; }
  100% { opacity: 0; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .active.fade-left,
  .active.fade-right,
  .active.fade-bottom,
  .active.fade-in,
  .active.fade-out {
    animation: none;
  }
	
	.section-bg{padding: 0 0 15px 0;}
}



/* ========== EN 전용 (헤더에 .eng-header 있을 때만 적용) ========== */

/* 데스크탑 풀스크린 메가 내부 활성 */
.eng-header .mega-fullscreen .full-menu li.current_page_item > a,
.eng-header .mega-fullscreen .full-menu li.current-menu-item > a,
.eng-header .mega-fullscreen .full-menu li.current_page_parent > a,
.eng-header .mega-fullscreen .full-menu li.current-menu-parent > a,
.eng-header .mega-fullscreen .full-menu li.is-active > a,
.eng-header .mega-fullscreen .full-menu li.active > a {
  color: #0066cc !important;
  font-family: 'NanumSquareBold', sans-serif !important;
  font-weight: 700 !important;
  position: relative;
}

.eng-header .mega-fullscreen .full-menu li.current-menu-parent > a,
.eng-header .mega-fullscreen .full-menu li.current_page_parent > a,
.eng-header .mega-fullscreen .full-menu li.current-menu-ancestor > a,
.eng-header .mega-fullscreen .full-menu li.current_page_ancestor > a,
.eng-header .mobile-nav .sub-menu li.current-menu-parent > a,
.eng-header .mobile-nav .sub-menu li.current_page_parent > a,
.eng-header .mobile-nav .sub-menu li.current-menu-ancestor > a,
.eng-header .mobile-nav .sub-menu li.current_page_ancestor > a,
.eng-header .sub-nav .sub-menu li.current-menu-parent > a,
.eng-header .sub-nav .sub-menu li.current_page_parent > a,
.eng-header .sub-nav .sub-menu li.current-menu-ancestor > a,
.eng-header .sub-nav .sub-menu li.current_page_ancestor > a {
  color: #333 !important;           /* 부모는 기본 색으로 강제 */
  font-weight: normal !important;
}

/* 모바일 팝업(모바일 메뉴) 내부 활성 */
.eng-header .mobile-nav .sub-menu li.current_page_item > a,
.eng-header .mobile-nav .sub-menu li.current-menu-item > a,
.eng-header .mobile-nav .sub-menu li.is-active > a,
.eng-header .mobile-nav .sub-menu li.active > a {
  color: #0066cc !important;
  font-family: 'NanumSquareBold', sans-serif !important;
  font-weight: 700 !important;
  position: relative;
}

/* 서브페이지 영역(.sub-nav)이 active일 때(페이지 상단 네비) 활성 보강 */
.eng-header .sub-nav.active .sub-menu li.current_page_item > a,
.eng-header .sub-nav.active .sub-menu li.current-menu-item > a,
.eng-header .sub-nav.active .sub-menu li.is-active > a {
  color: #0066cc !important;
  font-family: 'NanumSquareBold', sans-serif !important;
  font-weight: 700 !important;
  position: relative;
}

/* 공통 밑줄 애니메이션 */
.eng-header .sub-nav .sub-menu li a::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 2px;
  background-color: #0066cc;
  border-radius: 2px;
  transition: width 0.28s ease;
  z-index: 3;
}
.eng-header .sub-nav .sub-menu li.current_page_item > a::after,
.eng-header .mega-fullscreen .full-menu li.current_page_item > a::after,
.eng-header .mobile-nav .sub-menu li.current_page_item > a::after,
.eng-header .sub-nav .sub-menu li.current-menu-item > a::after {
  width: 100%;
}

/* 언어 토글(우측)에서 is-active는 이미 서버에서 붙이므로 보강 */
.eng-header .lang-switch .lang-link.is-active {}
