@font-face {
  font-family: 'Pretendard-Regular';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'S-CoreDream-5Medium';
  src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-5Medium.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'ChosunSm';
  src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@1.1/ChosunSm.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'ChosunKm';
  src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@1.0/ChosunKm.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'S-CoreDream-6Bold';
  src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-6Bold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}


html, body {
  position: relative;
  height: 100%;
}
.nav-up {
  top: -120px; /* move the header out of view when user scrolls down */
  transition: top 0.3s;
}

.nav-down {
  top: 0; /* move the header back into view when user scrolls up */
  transition: top 0.3s;
}

a.my-link-class:link {
  color: #252525;
}

.box-height {
  height: 87.5% !important;
  margin-top: 6.25% !important;
}

.nav-tp {
  background-color: rgba(255, 255, 255, 0.8);
}

.item-white {
  color: black !important;
  z-index: 1000 !important;
}

.item-black {
  color: rgb(255, 255, 255) !important;
  z-index: 100 !important;
}


body {
  margin: 0;
  padding: 0;
  /* overflow: hidden; */
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
  outline: none;
}

a:link {
  color: #ffffff;
}

header {
  position: fixed;
  z-index: 10;
  width: 100%;
  top: 0;
  font-family: 'Pretendard-Regular';
  align-items: center;
  height: 120px;
  transition: top 0.2s ease-in-out;
}

header > .inner {
  display: flex;
  margin-top: 35px;
}
.logo {
  width: 10%;
  min-width: 120px;
  max-width: 180px;
  justify-content: center;
}

.logo img {
  margin-left: 20%;
  justify-content: center;
  width: 100%;
}

.menu {
  display: flex;
  width: 60%;
  list-style: none;
  justify-content: center;
  margin-left: 5%;
  margin-top: 17.5px;
}

.item {
  width: 60%;
  margin-left: 5%;
}
 
.item_name {
  font-family: 'S-CoreDream-6Bold';
  font-size: 16px;
  cursor: pointer;
}

@keyframes fadeInLeft{
  0% { opacity: 0; transform: translateX(-25%);}
  100% { opacity: 1; transform: translateX(0);}
}

.item:hover .item_name a {
  color: rgb(0, 183, 255);
  transition: .5s;
}

.item:hover .item_name ~ .contents_menu {
  animation: fadeInLeft 0.4s ease forwards;
  display: block;

}

.contents_menu {
  font-family: 'S-CoreDream-5Medium';
  font-size: 14px;
  margin-top: 5%;
  display: none;
}

.contents_menu .inner_cont > li > ul > li {
  margin-top: 15%;
  margin-bottom: 15px;
}
.contents_menu > ul > li a {
  position: relative;
}

.lang {
  font-family: 'S-CoreDream-6Bold';
  display: flex;
  margin-top: 17.5px;
  position: absolute;
  right: 5%;
  flex-grow: 1;
}
.lang > li {
  font-size: 16px;
  margin-left: 12px;
}
.lang > li a {
  color: #ffffff;
}

/* header area ends */
/* sidebar area srarts */
.sidebar .one {
  width: 50px;
  height: 50px;
  background-color: #ffffff;
  opacity: .8;
  border-radius: 12px;
  position: absolute;
  bottom: 5%;
  right: 1%;
  border-radius: 15%;
  z-index: 1000;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2), 0 6px 6px rgba(0, 0, 0, 0.2), 0 0 6px rgba(0, 0, 0, 0.2);
}

.sidebar .two {
  width: 50px;
  height: 50px;
  background-color: #ffffff;
  opacity: .8;
  border-radius: 12px;
  position: absolute;
  bottom: 11%;
  right: 1%;
  border-radius: 15%;
  z-index: 1000;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2), 0 6px 6px rgba(0, 0, 0, 0.2), 0 0 6px rgba(0, 0, 0, 0.2);
}
.sidebar .two a > img {
  position: absolute;
  width: 37.5px;
  height: 37.5px;
  padding: 7.5px;
}
.sidebar .one > img {
  position: absolute;
  width: 30px;
  height: 30px;
  padding: 10px 10px 10px 10px;
}
.sidebar .one .top {
  display: none;
}

.sidebar .two a .text {
  display: none;
}
.two:hover {
  width: 140px;
  border-radius: 10px;
  cursor: pointer;
  transition: 1s;
}

.two:hover a > img {
  position: absolute;
  right: 0%;
}
.two:hover a .text {
  display: block;
}

.one:hover{
  width: 100px;
  border-radius: 10px;
  cursor: pointer;
  transition: 1s;
}
.one:hover > img {
  position: absolute;
  right: 0%;
}
.one:hover .top {
  display: block;
}
.side-blk {
  background-color: #ffffff;
}
.side-white {
  background-color: #ffffff;
  box-shadow: 5px 5px 5px 5px gray;
}
.top {
  text-align: center;
  font-family: 'S-CoreDream-5Medium';
  font-size: 1.05em;
  color: #3a3a3a;
  position: absolute;
  top: 35%;
  bottom: 25%;
  left: 15%
}

.two a .text {
  text-align: center;
  font-family: 'S-CoreDream-5Medium';
  font-size: 1.05em;
  color: #3a3a3a;
  position: absolute;
  top: 35%;
  bottom: 25%;
  left: 15%
}
.sidenone {
  display:none;
}


/* sidebar area ends */

/* body 1 starts */
.swiper-container {
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}
.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}




video {
  object-fit: cover;
  width: 100%;
  height: 100vh;
}
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.6); /* Black background with 50% transparency */
}

.main_box {
  position: absolute;
  top: 25%;
  bottom: 25%;
  left: 15%;
  right: 40%;
  z-index: 55;
  width: 1000px;
  height: 500px;
  justify-content: center;
}

.main_box .text_1 {
  position: absolute;
  top: 20%;
  font-family: 'Pretendard-Regular';
  text-align: left;
  font-weight: 900;
  font-size: 32px;
  color: white;
  animation: tb 2.25s ease;
}

.main_box .more a{
  position: absolute;
  font-family: 'Pretendard-Regular';
  font-size: 18px;
  color: white;
  text-decoration: none;
  bottom: 35%;
  right: 15%;
  z-index: 10;
  animation: appear 2.5s ease;
}

.main_box .more a:hover{
  color: rgb(0, 183, 255);
  transition: .5s ease-out;
}
.main_box > .lm {
  position: relative;
  width: 200px;
  height: 70px;
  top: 55%;
  right: -100%;
}
.main_box > .lm:hover .lm_long {
  display: block;
  animation: fadeInLeft 0.4s ease forwards;
}

.main_box > .lm:hover .arrow {
  display: none;
}

.main_box .arrow img{
  position: absolute;
  text-decoration: none;
  color: white;
  bottom: 26%;
  right: 0%;
  width: 30px;
}

.main_box .arrow_long img{
  position: absolute;
  text-decoration: none;
  color: white;
  bottom: 26%;
  right: -5%;
  width: 30px;
}
.main_box .lm_long {
  position: relative;
  width: 200px;
  height: 70px;
  left: 5%;
  display: none;
}

.outline {
  position: absolute;
  bottom: 3.5%;
  left: 50%;
  right: 50%;
  width: 80px;
  height: 120px;
}
.outline > img {
  position: absolute;
  top: 20%;
  left: 27.5%;
  width: 35px;
  height: 55px;
}

.outline .circle > img {
  position: absolute;
  top: 30%;
  left: 45%;
  width: 7px;
  animation: sdb 2.5s infinite;
}
.outline .circle .scroll_text {
  color: white;
  font-family: 'S-CoreDream-3Light';
  font-size: 1em;
  font-weight: 100;
  position: absolute;
  bottom: 10%;
  left: 24.5%;
}

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    -webkit-transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes tb {
  0% {
    -webkit-transform: translate(0, -40%);
    opacity: 0;
  }
  40% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}

@-webkit-keyframes appear {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0.5;
  }
  80% {
    opacity: 1;
  }
}

@-webkit-keyframes appear30 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.4;
  }
}
.cont-2 {
  position: relative;
  top: 0;
  margin: 0;
  padding: 0;
  width: 100%;
}

.box {
  font-family: 'Pretendard-Regular';
  font-size: 22px;
  font-weight: 700;
  color: white;
}

.description {
  position: absolute;
  top: 6%;
  left: 4.5%;
  z-index: 100;
}

.fac > .description {
  position: absolute;
  top: 15%;
  left: 3%;
}

.bg {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: black;
  opacity: 40%;
  display: none;
}

.text {
  font-size: 16px;
  font-weight: 400;
  position: absolute;
  top: 10%;
  left: 4.5%;
  text-align: left;
}

.slide2 .textbox > a {
  color: black;  
}

.sea > .bg > .text {
  position: absolute;
  top: 12.5%;
}
.fac > .bg > .text {
  position: absolute;
  top: 25%;
  left: 3%;
}
.home > .bg > .text {
  position: absolute;
  top: 12.5%;
}
.med {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  background-image: url('/image/medical.jpg');
  background-size: cover;
}

.fac {
  position: absolute;
  top: 0;
  right: 0;
  width: 60%;
  height: 40%;
  background-image: url('/image/crane.jpg');
  background-size: cover;
  background-position: 5%;
}

.sea {
  position: absolute;
  bottom: 0;
  left: 40%;
  width: 30%;
  height: 60%;
  background-image: url('/image/fish.jpg');
  background-size: cover;
  background-position: 5%;
}

.home {
  position: absolute;
  bottom: 0;
  left: 70%;
  width: 30%;
  height: 60%;
  background-image: url('/image/home.jpg');
  background-size: cover;
  background-position: 15%;
}

.med:hover > .bg{
  display: block;
  animation: appear30 .7s ease;
}
.fac:hover > .bg{
  display: block;
  animation: appear30 .7s ease;
}
.sea:hover > .bg{
  display: block;
  animation: appear30 .7s ease;
}
.home:hover > .bg{
  display: block;
  animation: appear30 .7s ease;
}

.swiper-container3 {
  position: absolute;
  top: 15%;
  right: 0%;
  width: 100%;
  height: 70%;
  margin-left: auto;
  margin-right: auto;
}

.slide1 {
  width: 100% !important;
  height: 100%;
}

.slide1 > img {
  position: absolute;
  right: 0;
  width: 55%;
  height: 100%;
}
.textbox {
  position: absolute;
  left: 3%;
  top: 20%;
  font-family: 'Pretendard-Regular';
  text-align: left;
}

.textbox > h1 {
  font-size: 36px;
  font-weight: 700;
  color: rgb(41, 41, 41);
}
.textbox > h2 {
  font-size: 36px;
  font-weight: 400;
  color: rgb(41, 41, 41);
}
.textbox > h3 {
  font-size: 24px;
  font-weight: 400;
}

.textbox > a {
  width: auto;
  height: auto;
  position: relative;
  z-index: 1000000 !important;
}

.slide2 {
  width: 100% !important;
  height: 100%;
}

.slide2 > img {
  position: absolute;
  right: 0;
  width: 55%;
  height: 100%;
}

.swiper-pagination {
  position: absolute;
  top: 15% !important;
  left: 2.7% !important;
  width: 50px !important;
}
.swiper-pagination-bullet { 
  width: 12px; 
  height: 12px; 
  background: transparent; 
  opacity: 1; 
}
.swiper-pagination-bullet-active {
  width: 20px !important; 
  transition: width .6s ease !important; 
  border-radius: 5px !important; 
  background: rgb(117, 117, 117) !important; 
  border: 1px solid transparent; 
}

.swiper-no-scroll {
  overflow: hidden;
}

.cont-4 .swiper-container4 > .tb {
  font-family: 'Pretendard-Regular';
  width: 20%;
  text-align: left;
  position: absolute;
  z-index: 10;
  top: 0%;
}
.swiper-container4 {
  position: absolute;
  top: 3%;
  right: 0%;
  width: 90%;
  height: 70%;
  overflow: hidden;
}

.wrap4 {
  height: 90% !important;
}

.cont-4 [class^="swiper-button-next"]{
  top: initial;
  bottom: 4.5%;
  color: #252525;
  position: absolute;
  left: 2.5%
}
.cont-4 [class^="swiper-button-prev"]{
  top: initial;
  bottom: 4.5%;
  color: #252525;
  position: absolute;
  left: 0.5%
}
:root {
  --swiper-navigation-size: 15px !important;
  --swiper-pagination-progressbar-size: 4px !important;
  --swiper-navigation-sides-offset: 40% !important;
}

.my-custom-progressbar {
  background-color: #252525 !important;
  width: 50%; /* adjust this to your desired width */
  margin: 0 auto; /* this centers the progress bar */
}
.swiper-pagination-1 {
  position: absolute !important;
  width: 15% !important;
  top: 94% !important;
  left: 4.5% !important;
}

.map {
  width: 100%;
  height: 650px;
}
.map img {
  width: 70%;
  height: 100%;
}

.slide4-1 {
  width: 100%;
  height: 90%;
}
.slide4-2 {
  width: 100%;
  height: 90%;
}
.slide4-3 {
  width: 100%;
  height: 90%;
}
.slide4-4 {
  width: 100%;
  height: 90%;
}
.slide4-5 {
  width: 100%;
  height: 90%;
}
.slide4-6 {
  width: 100%;
  height: 90%;
}
.slide4-7 {
  width: 100%;
  height: 90%;
}
.slide4-8 {
  width: 100%;
  height: 90%;
}



footer {
  width: 100%;
  max-height: 240px;
  height: 22.5%;
  background-color: rgb(65, 65, 65);
  position: absolute;
  bottom: 0;
}

.content {
  width: 100%;
  height: 85%;
  position: absolute;
  bottom: 0%;
}
.content .img {
  width: 100%;
  height: 80%;
  background-color: rgb(172, 211, 255);
  position: absolute;
  top: 0;
}
.content .txt {
  font-family: 'Pretendard-Regular';
  position: absolute;
  bottom: 0%;
  text-align: left;
}

.cont_box {
  width: 95%;
  height: 100%;
  position: absolute;
  left: 2.5%;
  right: 2.5%;
}

.cont_box > .hr1 {
  border: 0;
  height: 1px;
  background: #ffffff;
  width: 95%;
  margin-top: 4%;
}

.cont_box > img {
  width: 180px;
  position: absolute;
  left: 2.5%;
  top: 5%;
}

.cont_box > .span1 {
  font-family: 'Pretendard-Regular';
  font-weight: 100;
  color: #fff;
  text-align: left;
  position: absolute;
  top: 40%;
  left: 2.5%;
  font-size: 14px;
}

.cont_box > .span2 {
  font-family: 'Pretendard-Regular';
  font-weight: 100;
  color: #fff;
  text-align: left;
  position: absolute;
  bottom: 2%;
  left: 2.5%;
  font-size: 14px;
}

.social_box {
  width: 10%;
  height: 20%;
  position: absolute;
  top: 7%;
  display: flex;
  right: 2.5%;
  justify-content: center;
}

.social_box .fb a > img,
.social_box .insta a > img,
.social_box .youtube a > img,
.social_box .linkedin a > img {
  width: 30px;
  margin-left: 8px;
  margin-top: 15%;
}

a:link, a:visited {
  color: #ffffff; /* Or any other color you prefer for your links */
  text-decoration: none; /* Optional: Removes underline from links */
}

.cont-3 .swiper-container3 .wrap1 .slide1 .textbox > a {
  color: black;
}




/* Responsive */
@media all and (min-width:1024px) and (max-width:1279px) {
  header {
    height: 100px;
  }
  .logo img {
    width: 120%;
  }
  .item_name {
    font-size: 18px;
  }
  .contents_menu {
    font-size: 16px;
  }
  /* Additional styles here */
  /* 1st */
  .main_box .text_1 {
    font-size: 3vw;
  }
  .outline > img {
    display: none;
  }
  .outline .circle > img {
    display: none;
  }
  .outline .circle .scroll_text {
    display: none;
  }
  .main_box > .lm {
    /* Adjust positioning for large screens */
    top: 50%;
    right: -70%;
  }
  .box .text {
    font-size: 15px;
  }
  /* 2nd */
  /* 3rd */
  .cont-3 .swiper-container3 .wrap1 .slide1 img,
  .cont-3 .swiper-container3 .wrap1 .slide2 img {
    display: none;
  }
  
  /* 4th */
}


@media all and (min-width:768px) and (max-width:1023px) {
  header {
    height: 70px;
  }
  .logo img {
    width: 80%;
  }
  .item_name {
    font-size: 14px;
  }
  .contents_menu {
    font-size: 12px;
  }
  /* Additional styles here */
  .main_box .text_1 {
    font-size: 3vw;
  }
  .outline > img {
    display: none;
  }
  .outline .circle > img {
    display: none;
  }
  .outline .circle .scroll_text {
    display: none;
  }
  .main_box > .lm {
    /* Adjust positioning for medium screens */
    top: 45%;
    right: -30%;
  }
  .box .text {
    font-size: 16px;
  }
  .cont-3 .swiper-container3 .wrap1 .slide1 img,
  .cont-3 .swiper-container3 .wrap1 .slide2 img {
    display: none;
  }
  footer .cont_box > .span1 {
    font-size: 11px;
  }
}
@media all and (min-width:480px) and (max-width:767px) {
  header {
    height: 60px;
  }
  .logo img {
    width: 70%;
  }
  .menu, .item, .lang {
    display: none; /* Hide for hamburger menu */
  }
  /* Additional styles here */
  .main_box .text_1 {
    font-size: 3vw;
  }
  .outline > img {
    display: none;
  }
  .outline .circle > img {
    display: none;
  }
  .outline .circle .scroll_text {
    display: none;
  }
  .main_box > .lm {
    /* Adjust positioning for small screens */
    top: 40%;
    right: -23%;
  }
  .box {
    font-size: 18px;
  }
  .box .text {
    font-size: 14px;
  }
  .cont-3 .swiper-container3 .wrap1 .slide1 img,
  .cont-3 .swiper-container3 .wrap1 .slide2 img {
    display: none;
  }
  footer .cont_box > .hr1 {
    margin-top: 11%;
  }
  footer .cont_box > .span1 {
    font-size: 10px;
  }
}
@media all and (max-width:479px) {
  header {
    height: 50px;
  }
  .logo img {
    width: 60%;
  }
  .menu, .item, .lang {
    display: none; /* Hide for hamburger menu */
  }
  /* Additional styles here */
  .main_box .text_1 {
    font-size: 4vw;
  }
  .main_box {
    left: 10%;
  }
  .outline > img {
    display: none;
  }
  .outline .circle > img {
    display: none;
  }
  .outline .circle .scroll_text {
    display: none;
  }
  .main_box > .lm {
    /* Adjust positioning for extra small screens */
    top: 35%;
    right: -20%;
  }
  .box {
    font-size: 14px;
  }
  .box .text {
    font-size: 12px;
  }
  .cont-3 .swiper-container3 .wrap1 .slide1 img,
  .cont-3 .swiper-container3 .wrap1 .slide2 img {
    display: none;
  }
  .map img {
    margin-top: 40%;
    width: 100%;
    background-size: contain;
    background-position: center;
    height: 60%;
  }
  footer {
    max-height: 300px;
    height: 22.5%;
  }
  footer .cont_box > .span1 {
    font-size: 9px;
  }
}


/* Adjusting the hamburger menu */
.hamburger-menu {
  display: none;
  cursor: pointer;
  flex-direction: column;
  justify-content: space-around;
  height: 25px;
  width: 35px;
  position: absolute;
  top: 50%; /* Adjust as needed for vertical alignment */
  right: 20px; /* Adjust as needed for horizontal alignment */
  z-index: 10000000001; /* Make sure this is higher than the menu */
}

/* Style for the hamburger bars */
.hamburger-menu .bar {
  height: 3px;
  width: 100%;
  background-color: #fff; /* Assuming white bars */
}

/* Responsive styling */
@media all and (max-width:767px) {
  .hamburger-menu {
    display: flex;
  }
  .menu {
    display: none; /* Hide the regular menu */
  }
}

.menu.show {
  display: flex;
  flex-direction: column;
  position: fixed;
  background-color: rgba(0, 0, 0, 0.9);
  width: 100%;
  height: 100%;
  top: -2%;
  left: -5%;
  z-index: 10000000000; /* Ensure this is lower than logo and hamburger menu */
  justify-content: center;
  align-items: center;
}

@media all and (max-width:767px) {
  .menu.show .item {
    display: block;
    text-align: center;
    padding: 15px 0;
  }
}
