@charset "utf-8";

/* GNB */
.gnb {
  position: relative;
  border-bottom: 1px solid rgba(255, 255, 255, 0.10);
  position: fixed;
  top: 0;
  z-index: 999;
  width: 100%;
}

.gnb-container {
  display: flex;
  max-width: 120rem;
  width: 100%;
  height: 5rem;
  padding: 0rem 3.75rem;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.01);
  backdrop-filter: blur(15px);
}

/* hover evt */
.gnb-container {
  background-color: transparent;
  transition: background-color 0.3s ease;
}
.gnb:hover .gnb-container {
  background-color: #fff;
}
.gnb:hover .main-menu .menu-item a {
  color: #202020;
}


.logo img {
  height: 3rem;
}

.main-menu {
  display: flex;
  align-items: center;
  gap: 2.8rem;
}

.main-menu .menu-item a {
  color: #FFF;
  font-size: 16px;
  font-weight: 400;
  line-height: 100%; /* 1.125rem */
  letter-spacing: -0.045rem;
  transition: 0.3s;
}
.main-menu .menu-item a:hover{
  color: #0D5FB3 !important;
}

/* 소메뉴 전체 박스 */
.all-submenu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: #FFF;
  padding: 2rem 0;
  z-index: 99;
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.25);
}

.submenu-group {
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 1.25rem;
  list-style: none;
  padding: 0 20px;
}
.submenu-group strong {
  font-size: 15px;
  display: block;
  margin-bottom: 1rem;
  color: #0D5FB3 !important;
  font-weight: bold;
}
.submenu-group > li {
  color: #202020;
}
.submenu-group ul {
  list-style: none;
  padding: 0;
}
.submenu-group ul li {
  margin-bottom: 8px;
}

.submenu-group ul li a {
  color: #202020;
  text-decoration: none;
  font-size: 14px;
  transition: 0.3s;
}
.submenu-group ul li a:hover{
  color: #0D5FB3;
}
/* 메인 메뉴 중 하나에 hover 시 전체 소메뉴 표시 */
.gnb:hover .all-submenu,
.main-menu:hover ~ .all-submenu {
  display: block;
}



.nav_right{
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.nav_right .btn{
  width: 1.5rem;
  height: 1.5rem;
}


/* 메인 슬라이드 */
.hero-section{
  padding: 0 0 5rem 0!important;
}
.hero-swiper {
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
}

.hero-slide {
  background-size: cover;
  background-position: center;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.slide-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  align-self: stretch;
  height: 100%;
}

.slide-content h2 {
  color: #FFF;
  text-align: center;
  /* font-size: 4rem; */
  /* font-size: clamp(1.5rem, calc(1.16rem + 1.48vw), 4rem); */
  font-size: clamp(1.5rem, calc(1rem + 2.5vw), 4rem);
  font-weight: 800;
  line-height: 120%; /* 4.8rem */
  letter-spacing: -0.16rem;
}

.slide-content p {
  color: #FFF;
  text-align: center;
  font-size: 1.5rem;
  /* font-size: clamp(1rem, calc(0.88rem + 0.32vw), 1.5rem); */
  font-weight: 400;
  line-height: 100%; /* 1.5rem */
  letter-spacing: -0.06rem;
}
/* 슬라이드 페이지네이션 */
.hero-swiper .swiper-pagination-bullet {
  width: 5rem;
  height: 0.1875rem;
  background: rgba(255, 255, 255, 0.40);
  border-radius: 0px;
  opacity: 1;
  margin: 0 0.3rem;
}

.hero-swiper .swiper-pagination-bullet-active {
  background: #FFF;
}

/* 플로팅배너 */
.float-btn{
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  position: fixed;
  right: 1.8rem;
  bottom: 4vh;
  z-index: 9999;
}
.float-btn > button{
  width: 3.75rem;
  height: 3.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFF;
  border-radius: 99px;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid #E8E8E8;
}
.float-btn > button.fl-blog{
  background-color: #32B44A;
  border: none;
}
.float-btn button:hover {
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

section {
  padding: 5rem 0;
  width: 100%;
}
/* section 01 */
.section-01{
  display: inline-flex;
  align-items: center;
  gap: 7.125rem;
  width: 100%;
  padding: 5rem 0  5rem 7.5rem;
  justify-content: space-between;
}
.equipment-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 5rem 0;
  gap: 4rem;
}

.text-box {
  flex: 1;
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.5rem;
}

.text-box .sub-title {
  color: #0D5FB3;
  font-family: "NanumSquare Neo";
  /* font-size: 1.5rem; */
  font-size: clamp(1rem, calc(0.875rem + 0.625vw), 1.5rem);
  
  font-weight: 800;
  line-height: 120%; /* 1.8rem */
  letter-spacing: -0.06rem;
}
.text-box h2 {
  color: #000;
  font-family: "NanumSquare Neo";
  /* font-size: 3rem; */
  font-size: clamp(1.5rem, calc(1rem + 1.875vw), 3rem);
  font-weight: 400;
  line-height: 130%; /* 3.9rem */
  letter-spacing: -0.12rem;
}
.text-box h2 strong{
font-weight: 800;
}
.text-box .desc {
  color: #000;
  font-family: "NanumSquare Neo";
  font-size: clamp(0.875rem, calc(0.75rem + 0.625vw), 1.25rem);
  /* font-size: clamp(0.875rem, calc(0.77rem + 0.26vw), 1.25rem); */

  font-style: normal;
  font-weight: 400;
  line-height: 130%; /* 1.625rem */
  letter-spacing: -0.05rem;
}
/* 장비 슬라이드 */
.equipment-swiper {
  /* flex: 2; */
  /* width: 60%; */
  /* gap: 1.25rem; */
  /* max-width: 73.4375rem; */
  overflow: hidden;
}
/* 핑퐁핑퐁 */
.equipment-swiper-outer {
  /* overflow-x: hidden;
  overflow-y: visible;
  position: relative; */
  width: 59%;
}

.equipment-swiper {
  /* overflow: visible !important; */
}


.equipment-swiper .swiper-slide {
  position: relative;
  /* width: 15.45rem !important; */
  height: 36.25rem;
  flex-shrink: 0;
  transition: width 0.4s ease;
  /* overflow: hidden; */
  border-radius: 1rem;
  background-color: #f3f3f3;
  cursor: pointer;
}

.equipment-swiper .swiper-wrapper{
  align-items: center;
  /* height: calc(36.25rem + 7.5rem); */
}
/* 호버 시 배경과 크기 확대 */

.equipment-swiper .swiper-slide:hover {
  width: 48rem !important;
}
.equipment-swiper .swiper-slide.slide1{
  background: url(../img/img-section01\ -\ 01.png) lightgray 50% / cover no-repeat;
  
}
.equipment-swiper .swiper-slide.slide1:hover{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 01.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide2{
  background: url(../img/img-section01\ -\ 2.png) lightgray 50% / cover no-repeat;
}
.equipment-swiper .swiper-slide.slide2:hover{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 2.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide3{
  background: url(../img/img-section01\ -\ 3.png) lightgray 50% / cover no-repeat;
}
.equipment-swiper .swiper-slide.slide3:hover{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 3.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide4{
  background: url(../img/img-section01\ -\ 4.png) lightgray 50% / cover no-repeat;
}
.equipment-swiper .swiper-slide.slide4:hover{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 4.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide5{
  background: url(../img/img-section01\ -\ 5.png) lightgray 50% / cover no-repeat;
}
.equipment-swiper .swiper-slide.slide5:hover{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 5.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide6{
  background: url(../img/img-section01\ -\ 6.png) lightgray 50% / cover no-repeat;
}
.equipment-swiper .swiper-slide.slide6:hover{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 6.png') center/cover no-repeat;
}


.equipment-swiper .swiper-slide.slide7{
  background: url(../img/sec01_ro07.png) lightgray 50% / cover no-repeat;
}
.equipment-swiper .swiper-slide.slide7:hover{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/sec01_ro07.png') center/cover no-repeat;
}



/* 카드 내용 숨기기 */
.equipment-swiper .card-content {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  right: 1.5rem;
  color: white;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  pointer-events: none; /* 클릭 방지 */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;


}
.card-content p{
  color: #FFF;
  font-size: 0.8rem;
  font-weight: 400;
  line-height: 100%; /* 1rem */
  letter-spacing: -0.04rem;
  width: 100%;
  text-align: center;
}
.card-content h4{
  color: #FFF;
  font-size: 1.5rem;
  /* font-size: clamp(1rem, calc(0.88rem + 0.32vw), 1.5rem); */
  font-weight: 800;
  line-height: 100%; /* 1.5rem */
  letter-spacing: -0.06rem;
}
/* 호버 시 내용 나타나기 */
.equipment-swiper .swiper-slide:hover .card-content {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
/* 
.equipment-swiper .swiper-slide:nth-of-type(2n) {
  margin-top: -7.5rem;
}
.card-content {
  z-index: 4;
} */
/* section 2 */
.section-02{
  width: 100%;
  height: 42.5rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../img/Rectangle\ 13.png) no-repeat center center;
  background-size: cover;
}
 .section-02 .text-box h2 {
  color: #fff;
  width: 100%;
  text-align: center;
  font-size: 3rem;
  font-size: clamp(2rem, calc(1.5rem + 1.25vw), 3rem);
  font-weight: 800;
  line-height: 150%; /* 4.5rem */
  letter-spacing: -0.12rem;
}

/* section 3 */
.news-header{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.5rem;
}
.view-more{
  display: flex;
  padding: 0.75rem 1.5rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  border-radius: 6.1875rem;
  border: 1px solid #0D5FB3;
  backdrop-filter: blur(5px);
  color: #0D5FB3;
  font-size: 1rem;
  font-weight: 700;
  line-height: 100%; /* 1rem */
  letter-spacing: -0.04rem;
  transition: 0.5s;
}
.view-more::after{
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../img/icon-viewmore.svg) center center no-repeat;
  background-size: contain;
  transition: 0.3s;
}
.view-more:hover{
  color: #FFF;
  background-color: #0D5FB3;
  box-shadow: 0px 14px 20px 0px rgba(0, 81, 186, 0.30);
  transition: 0.5s;

}
.view-more:hover::after{
  background: url(../img/icon-viewmore-hover.svg) center center no-repeat;
}

/* .section-03{
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 104.625rem;
  margin: 0 auto;
} */

/*  */

.news-section {
  padding: 4rem 2rem;
}

.news-header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem;
  width: 100%;
}

.news-subtitle {
  color: #004494;
  font-size: 0.9rem;
  font-weight: 600;
}

.news-header h2 {
  font-size: 2rem;
  line-height: 1.4;
}

.news-more {
  border: 1px solid #ccc;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  font-size: 0.9rem;
  text-decoration: none;
  color: #333;
}

.news-swiper {
  position: relative;
}

.news-card {
  transition: transform 0.3s;
  /* display: flex;
  max-width: 21.75rem;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem; */
  flex-shrink: 0;
  box-sizing: border-box;
  max-width: 21.75rem;



}

.news-card:hover {
  transform: translateY(-5px);
}

.news-card img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  margin-bottom: 1rem;
}

.news-card h4 {
  color: #000;
  font-family: "NanumSquare Neo";
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 150%; /* 1.6875rem */
  letter-spacing: -0.0225rem;
}

.news-card .date {
  color: #999;
  font-family: "NanumSquare Neo";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 700;
  line-height: 150%; /* 1.3125rem */
  letter-spacing: -0.0175rem;
}
.news-card > div{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
  align-self: stretch;
}
/* 커스텀 네비게이션 위치 */
.news-prev,
.news-next {
  top: 50%;
  transform: translateY(-50%);
  width: 3.125rem !important;
  height: 3.125rem !important;
  flex-shrink: 0;
  border-radius: 50%;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid #F4F4F4;
}

.news-prev {
  left: 0px !important;
  background-image: url("../img/icon-left.png");
}

.news-next {
  right: 0px !important;
  background-image: url("../img/icon-right.png");
}
.swiper-button-prev::after,
.swiper-button-next::after {
  display: none;
}
/*  */

/* section 4 */
.section-04 , .section-03 {
  display: flex;
  max-width: 104.625rem;
  align-items: center;
  gap: 7.5rem;
  margin: 0 auto;
}
.consult-wrap {
  display: flex;
  gap: 2rem;
  padding: 4rem 2rem;
}

.consult-box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
  width: 100%;
}

.consult-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
  padding: 0.625rem 0rem;
  width: 100%;
  border-bottom: 1px solid #000;
}
.consult-header > div{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 0.875rem;
}
.consult-header h3 {
  font-size: 1.4rem;
  font-weight: 700;
}

.consult-header p {
  font-size: 0.9rem;
  color: #888;
  margin-top: 0.3rem;
}

.consult-btn {
  width: 3.375rem;
  height: 3.375rem;
  border-radius: 6.1875rem;
  background: url(../img/icon-viewmore-02.png) center center no-repeat;
}

.consult-btn img {
  width: 16px;
  height: 16px;
  filter: invert(1); /* 흰색 아이콘처럼 보이게 */
}

.consult-list {
  list-style: none;
  padding: 0;
  width: 100%;
  margin: 0;
}

.consult-list li {
  display: flex;
  padding: 1.25rem 0rem;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
  width: 100%;
  border-bottom: 1px dashed #E8E8E8;
}

.consult-list li:last-child {
  border-bottom: none;
}

.tag {
  color: #004494;
  font-weight: 600;
  font-size: 0.85rem;
}

/* footer */
footer{
  display: flex;
  padding: 2.5rem 7.5rem;
  align-items: center;
  gap: 7.5rem;
  background: #F9F9F9;
}
footer p{
  color: #666;
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 100%; /* 0.875rem */
  letter-spacing: -0.035rem; 
}
footer strong{
  font-weight: 600;
  margin-right: 0.5rem;
}
footer .ft-info{
  display: flex;
  align-items: center;
  gap: 2.5rem;
  align-self: stretch;
}
footer > div{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}


/* 모바일 메뉴 */
.mobile-header {
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  background: white;
  position: relative;
  z-index: 1000;
  display: none;
}

.menu-toggle {
  width: 2rem;
  height: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: none;
  border: none;
  cursor: pointer;
}
.menu-toggle span {
  height: 2px;
  background: #333;
  border-radius: 1px;
}

/* 오버레이 메뉴 */
.mobile-nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 999;
  display: none;
  flex-direction: column;
  padding: 2rem;
}
.mobile-nav.active {
  display: flex;
}
.mobile-nav .close-btn {
  font-size: 2rem;
  background: none;
  border: none;
  align-self: flex-end;
  cursor: pointer;
}
.mobile-nav ul {
  list-style: none;
  padding: 2rem 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mobile-nav a {
  font-size: 1.25rem;
  text-decoration: none;
  color: #222;
}
.PC-header{display: flex;}

@media (max-width : 1280px) {
  footer {
    display: flex;
    width: 100%;
    padding: 1.25rem;
    flex-direction: column;
    align-items: center;
    background: #3F3F3F;
}
footer .ft-info {
  display: flex;
  /* width: 27.5rem; */
  padding: 1.25rem;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
  text-align: center;
}

footer p {
  text-align: center;
  color: #999;
  line-height: 1.5;
}
footer .ft-logo{
  display: none;
}
footer > div {
  align-items: center;
}
.mobile-header{
  display: flex;
}

.section-01{
  display: inline-flex;
  align-items: center;
  gap: 7.125rem;
  width: 100%;
  padding: 5rem 0  5rem 2rem;
  justify-content: space-between;
}



}
@media (max-width : 1200px) {

   .PC-header{display: none;}

}
@media (max-width : 960px) {
    .slide-content {
  padding: 0 2rem;
  }
  .hero-swiper{
    height: 42.625rem;
  }
  .float-btn {
    right: 1rem;
    bottom: 4vh;
}
.float-btn > button {
  width: 3rem;
  height:3rem;
}

.section-01 {
  display: flex;
  width: 100%;
  padding: 2.5rem 1.25rem;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.5rem;
}
.text-box {
  gap: 1.25rem;
}
.equipment-swiper-outer {
  overflow: hidden;
  width: 100%;
}
.equipment-swiper .swiper-slide:nth-of-type(2n) {
  margin-top: 0;
}

.equipment-swiper .swiper-slide.slide1{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 01.png') center/cover no-repeat;
}
.equipment-swiper .swiper-slide.slide2{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 2.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide3{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 3.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide4{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 4.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide5{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 5.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide6{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/img-section01\ -\ 6.png') center/cover no-repeat;
}

.equipment-swiper .swiper-slide.slide7{
  background: 
    linear-gradient(180deg, rgba(13, 95, 179, 0.00) 45%, #0D5FB3 85%), 
    url('../img/sec01_ro07.png') center/cover no-repeat;
}
.equipment-swiper .swiper-slide .card-content {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.equipment-swiper .swiper-slide {
  width: 15.4375rem;
  height: 22.5rem;
}
.equipment-swiper {
  max-width: 100%;
}
.equipment-swiper .swiper-wrapper {
  height: auto;
}

/* .section-03 {
  display: flex;
  width: 100%;
  padding: 2.5rem 1.25rem;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.5rem;
} */

.text-box h2 {
  font-size: clamp(1.5rem, calc(1rem + 1.875vw), 3rem) !important;
}
.news-swiper {
  width: 100%;
}

.section-04 , .section-03 {
  display: flex;
  width: 100%;
  padding: 2.5rem 1.25rem;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 2.5rem;
}

.notice-box{
  width: 100% !important;
}


}

@media (max-width : 468px) {
  .consult-btn{
    
  }


}


/* 수정 */
.notice-box{
  width: 60%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.notice-box > div{
  max-width: 100%;

}
.section-03 {
  gap: 2rem;
}