
@media (max-width: 767.98px) {
  .full-menu {
    min-height: 100vh;
  }
}



  .dropdown-menu {
    position: absolute;
    display: none;
    min-width: unset;
    padding: 0;
    margin: 0;
    text-align: left;
    list-style: none;
    background-color: transparent;
    background-clip: padding-box;
    border: none;
    border-radius: 0;
    top:auto;
    box-shadow: none;
}

.chev-right {
  position: relative;
}

.chev-right::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 102%;
  height: 1px;
  background-color: #1d1d1f;
  transform: scaleX(0);
}

.chev-right:hover::after {
  transform: scaleX(1);
}

.chev-right-svg {
  width: 7px;
  transform: translate(5px, -1px);
}

/* 메뉴오픈시 스크롤막기 */

@media (max-width: 1200px) {
  .navbar-collapse {
    max-height: 100vh; /* 메뉴가 화면의 75%만 차지하고, 넘치면 스크롤 */
    overflow-y: auto;
    transition:none; /* 메뉴 내부에서만 스크롤 허용 */
  }

  /* 바디 스크롤을 차단하기 위한 설정 */
  body.no-scroll {
    position: fixed; /* 화면을 고정하여 스크롤을 막음 */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden; /* 스크롤 차단 */
    width: 100%; /* 화면이 고정되어도 100% 크기로 유지 */
  }
}

/* 메뉴바 배경 투명으로 만들기 */
@media (max-width: 1200px) {
  .navbar-collapse {
    background-color: rgba(255, 255, 255, 0.85) !important;
    /* 같은 색상과 투명도를 적용 */
    backdrop-filter: blur(9px);
    /* 배경 흐림 효과 */
    -webkit-backdrop-filter: blur(9px);
    /* 사파리 호환성 */
    position: fixed;
    /* 메뉴가 전체 화면을 덮도록 설정 */
    top: 0px;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 0px;
    z-index: 1050;
    /* z-index를 높게 설정하여 메뉴가 상단에 위치 */
  }

  .navbar-nav {
    background-color: transparent;
    /* 같은 색상과 투명도를 적용 */
    position: fixed;
    /* 메뉴가 전체 화면을 덮도록 설정 */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0px 20px;
    margin-top: 0px;
    z-index: 1050;
    /* z-index를 높게 설정하여 메뉴가 상단에 위치 */
  }
}

.navbar-brand {
  position: relative;
  z-index: 1051;
}

.navbar-toggler {
  position: relative;
  z-index: 1051;
}

/* 메뉴바 배경 투명으로 만들기 끝*/

/* 메뉴바 모바일에서만 아래 세모 나오기 시작*/
.chev-down {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url('../images/icon/chevron-down.svg');
  background-repeat: no-repeat;
  background-size: contain;
}

/* 메뉴가 활성화되면 화살표가 나타남 */
.nav-item.active .chev-down {
  opacity: 1;  /* 불투명하게 변경 */
  visibility: visible;  /* 화면에 보이게 변경 */
}

.dropdown-menu.show {
  position: relative !important; /* position을 상대적 위치로 변경 */
  transform: none !important; 
  height: auto !important;   /* transform 제거 */
}

.navbar-nav-scroll {
  max-height: 100vh !important;
  overflow-y: auto;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none;  /* IE and Edge */
}

.navbar-nav-scroll::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}

.offcanvas-padding {
  padding-top: 140px;
  padding-bottom: 150px
}

.nav-link.show, .nav-link:focus, .nav-link:hover {
  outline: none !important;
  box-shadow: none !important; /* box-shadow도 함께 제거 */
}

.mathman-area {
  padding: 12px;
  margin-top: 26px;
}
/* 기본 상태 */
.chevron-icon {
  transition: none;
  transform: translate(0px, 3px);
}

/* 드롭다운이 열렸을 때 */
.nav-item.active .chevron-icon {
  transform: rotate(180deg) translate(0px, 3px);
}

.main-link-btn {
  font-size: 14px;
  font-weight: 500;
  background-color: #dce6f8;  /*#8da9c4* rgb(242 243 247) */
  padding: 6px 18px;
  border-radius: 32px;
}

.main-link-btn:hover {
  background-color: #c7dbf5;
}

.move-link {
  color: #117ce9;
  font-size: 18px;
  font-weight: 500;
  border-bottom: 1px solid #117ce9;
}

@media (max-width:1200px) {
  .move-link {
    font-size: 16px;
  }
}

.move-link i {
  font-size: 17px;
  margin-left: 8px;
}

@media (max-width:1200px) {
  .move-link i {
    font-size: 15px;
  }
}

.move-link-2 {
  color: #525252;
  font-size: 14px;
  font-weight: 600;
}

.move-link-2 i {
  font-size: 14px;
  margin-left: 6px;
}

.move-link-2:hover {
  color: #0d6efd
}

.fc-text {
  color: #303441
}

.lh-26px {
  line-height: 26px
}

@media (min-width:992px) {
    .g-custom-5 {
        --bs-gutter-x: 5rem;
        --bs-gutter-y: 1.5rem;
    }
}

.accordion-button::after {
  display: none !important;
}

.accordion-collapse {
  transition: 0.1s !important;
}

.accordion-item {
  border: none !important;
}

.accordion-button {
  border: none !important;
  box-shadow: none !important; /* 버튼 클릭 시 테두리 그림자도 제거 */
}

.accordion-button:not(.collapsed) {
  background-color: transparent; /* 열린 상태의 배경색 제거 (필요시) */
  box-shadow: none;
}

.lh-custom {
  line-height: 32px;
}

@media (max-width:1200px) {
  .lh-custom {
    line-height: 1.5;
  }
}

.contact-btn {
  color: #222222;
  font-weight: 600;
  border-radius: 32px;
  padding: 8px 24px;
  background-color: #fff;
  width: 140px
}

.contact-btn:hover {
  background-color: #f0f0f0;
}

.additional {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  border-radius: 8px;
  background-color: #F3F7FE;
  min-height: 80px
}

.image-wrapper {
  position: relative;
  display: inline-block;
}

.image-wrapper img {
  width: 100%;
  border-radius: 8px;
  display: block;
}

.centered-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 15px;
  color: #2c3e50;
  font-weight: 600;
  white-space: nowrap;
  z-index: 2;
  pointer-events: none;
}

@media (min-width:360.98px) {
  .centered-text {
    font-size: 16px;
  }
}

@media (min-width:576.98px) {
  .centered-text {
    font-size: 22px;
  }
}

@media (min-width:992.98px) {
  .centered-text {
    font-size: 30px;
  }
}

.event p {
  color: #525252 !important;
  font-size:16px;
}

@media (min-width:1200px) {
  .event p {
    font-size: 18px;
  }
}

.text-cafe24blue {
    color: #1A54F5
}

.functions i {
  color: #1A54F5;
  margin-right: 8px;
}

.price-card {
  padding: 32px;
  border-radius: 16px;
  background-color: #F3F7FE;
  height: 100%;
}

.price-btn {
    font-weight: 600;
    font-size: 17px;
    padding: 8px 21px;
    color: #fff;
    background-color: #1A54F5;
    width: 100%;
    border-radius: 6px;
    text-align: center
}
/*
.bg-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  width: 400px;
  height: 100%;
  background-image: url('../images/Group.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right center;
  z-index: 1;
  pointer-events: none;
}

.bg-img-overlay-mobile {
  position: absolute;
  top: 50px;
  left: 0;
  width: 100%;
  height: 300px;
  background-image: url('../images/Group.png');
  background-size: 300px;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
  opacity: 0.2;
  pointer-events: none;
}
  */

.main-hero-padding {
  padding-top: 140px;
  padding-bottom: 140px;
}

@media (min-width:575.98px) {
  .main-hero-padding {
    padding-top: 200px;
    padding-bottom: 200px
  }
}

@media (min-width:1200px) {
  .main-hero-padding {
    padding-top: 280px;
    padding-bottom: 280px
  }
}

.display-3 {
  font-size: calc(1.525rem + 3.3vw);
  font-weight: 300;
}
@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}


.main-display {
  font-size: 60px;
  line-height:1.2
}

@media (max-width: 1200px) {
  .main-display{
        font-size: 34px;
    }
}

@media (max-width: 576.98px) {
  .main-display{
        font-size: 30px;
    }
}

@media (max-width: 360.98px) {
    .main-display {
        font-size: 29px;
    }
}

.main-link-btn-1 {
  font-size: 14px;
  font-weight: 500;
  background-color: #fff;  /*#8da9c4* rgb(242 243 247) */
  padding: 6px 18px;
  border-radius: 32px;
}

.main-link-btn-1:hover {
  background-color: #e2e2e2;
}

.main-hero {
  background-image: url(../images/mainhero-pc.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media (max-width: 1200px) {
  .main-hero {
    background-image: url(../images/mainhero-mo.webp);

  }
}

.mb-32px-24px {
  margin-bottom: 32px;
}

@media (max-width: 768px) {
  .mb-32px-24px {
    margin-bottom: 24px;
  }
}
.contact-area {
  background: url(../images/contact-bg.png) no-repeat;
  background-size: cover;
  background-position: center center;
}

/* 모바일에서는 배경 이미지가 오른쪽 위에 오도록 조정 */
@media (max-width: 768px) {
  .contact-area {
    background-size: cover; /* 이미지가 전체 보여지지만 공간이 비어 보일 수 있음 */
    background-repeat: no-repeat;
    background-position: 64% center;
  }
}

@media (min-width: 1200px) {
    .news-wrapper {
        display: grid;
        grid-template-columns: repeat(3, 1fr); /* 한 줄에 3개 */
        grid-template-rows: repeat(2, auto); /* 총 2줄 */
        gap: 38px; /* 슬라이드 간 간격 */
    }
    .news-wrapper .swiper-slide {
        width: 100% !important;
        height: auto !important;
    }
    /* 6개까지만 보이도록 설정 */
    .news-wrapper .swiper-slide:nth-child(n+7) {
        display: none;
    }
}

/*
@media (min-width: 576px) {
  .accordion-collapse {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
  }

  .accordion-button::after {
    display: none;
  }

  .accordion-button:not(.collapsed) {
    box-shadow: none;
  }

  .accordion-button {
    pointer-events: none; 
  }
}

*/



.subservice-card{
  position: relative;
  /* border: 1px solid #dadada; */
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
  background-color: #fff;
}

.subservice-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: #00b3ff;
  border-radius: 0px;
  z-index: 1;
}

/*메인서비스 시작*/
.main-service {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
