#visual {
  position: relative;
  background-position: center;
  background-size: cover;
}
#visual .wrap_title {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 48rem;
  padding-top: 9rem;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 40%);
}
#visual .wrap_title .title {
  color: #fff;
  font-size: 5.6rem;
  font-weight: 600;
}
#visual .wrap_title [data-aos=fade-up]:not(.aos-animate) {
  transform: translate3d(0, 0.5em, 0);
}
@media screen and (max-width: 768px) {
  #visual .title {
    height: 125px;
    padding-top: 46px;
    font-size: 24px;
  }
}

.location {
  position: relative;
  background-color: #222;
  z-index: 2;
}
.location .list_location {
  display: flex;
  justify-content: center;
  align-items: center;
}
.location .list_location > li {
  position: relative;
}
.location .list_location > li:after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 1.6rem;
  transform: translateY(-50%);
  background: #fff;
  content: "";
}
.location a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  width: 22rem;
  height: 5.6rem;
  font-weight: 500;
  transition: 0.3s;
}
.location a:after {
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  background: url(../img/icon_dropdown.png) no-repeat center/contain;
  content: "";
}


.location .list_location > li > .sub li a {
  gap: 0;
}
.location .list_location > li > .sub li a:after {
  display: none;
}

.location .home {
  padding-right: 1.6rem;
}
.location .home a {
  width: 5.6rem;
  background: url(../img/icon_home.svg) no-repeat center/2.4rem auto;
}
.location .home a:after {
  display: none;
}
.location .tit {
  color: #fff;
}
.location .tit.on:after {
  transform: rotate(180deg);
}
.location .sub {
  display: none;
  position: absolute;
  top: 5.6rem;
  left: 0;
  width: 100%;
  background: #f9f9f9;
  color: #999;
}
.location .sub .on {
  color: #222;
}
.location .sub a:hover {
  color: #333;
}

@media screen and (max-width: 768px) {
  .location .list_location > li:after {
    height: 8px;
  }
  .location a {
    gap: 8px;
    width: 110px;
    height: 28px;
  }
  .location a:after {
    width: 6px;
    height: 6px;
  }
  
  .location .list_location > li > .sub li a {
    gap: 0;
  }
  .location .list_location > li > .sub li a:after {
    display: none;
  }

  .location .home {
    padding-left: 8px;
  }
  .location .home a {
    width: 28px;
    background-size: 12px auto;
  }
  .location .sub {
    top: 28px;
  }
}

#container {
  overflow: hidden;
}

.product1 .section1 .wfix {
  padding: 19rem 24px;
  text-align: center;
}
.product1 .section1 .title {
  font-size: 4.2rem;
  font-weight: 700;
  line-height: 1.33;
}
.product1 .section1 .img {
  margin-top: 7.2rem;
}
.product1 .section1 .conts {
  margin-top: 2rem;
}
.product1 .section1 .conts .desc {
  margin-top: 3.2rem;
  font-weight: 500;
}
.product1 .section1 .video_area video {
  width: 100%;
  max-height: var(--100vh);
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .product1 .section1 .wfix {
    padding: 95px 24px;
  }
  .product1 .section1 .title {
    font-size: 16px;
  }
  .product1 .section1 .img {
    margin-top: 36px;
  }
  .product1 .section1 .conts {
    margin-top: 12px;
  }
  .product1 .section1 .conts .desc {
    margin-top: 12px;
  }
  .product1 .section1 .video_area video {
    height: auto;
  }
}
.product1 .section2 {
  padding: 20rem 0;
}
.product1 .section2 [data-aos=fade-up]:not(.aos-animate) {
  transform: translate3d(0, 6vh, 0);
}
.product1 .section2 [class^=item] + [class^=item] {
  margin-top: 15rem;
}
.product1 .section2 [class^=item] .inner {
  display: flex;
  align-items: center;
  gap: 5.6rem;
	justify-content: space-between;
}
.product1 .section2 [class^=item] .img {
  width: 46%;
  overflow: hidden;
}
.product1 .section2 [class^=item] .img img {
  width: 100%;
  max-height: 90vh;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.8s;
}
.product1 .section2 [class^=item] .contents {
  width: 43%;
}
.product1 .section2 [class^=item] .wrap_tit {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  font-size: 3.6rem;
  font-weight: 500;
  line-height: 1.33;
}
.product1 .section2 [class^=item] .wrap_tit:before {
  display: inline-block;
  width: 5.2rem;
  height: 5.2rem;
  background-position: center;
  background-size: contain;
  content: "";
}
.product1 .section2 [class^=item] .wrap_tit b {
  display: block;
}
.product1 .section2 [class^=item] .desc {
  margin-top: 3.2rem;
}
@media screen and (min-width: 1440px) {
  .product1 .section2 [class^=item]:hover .img img {
    transform: scale(1.05);
  }
}
.product1 .section2 .item1 .wrap_tit:before {
  background-image: url(../img/icon_product01.png);
}
.product1 .section2 .item2 .inner {
  flex-direction: row-reverse;
}
.product1 .section2 .item2 .wrap_tit:before {
  background-image: url(../img/icon_product02.png);
}
.product1 .section2 .item3 .wrap_tit:before {
  background-image: url(../img/icon_product03.png);
}

.product2.product1 .section2 .item1 .wrap_tit:before {
  background-image: url(../img/product/product02/icon1.png);
}
.product2.product1 .section2 .item2 .wrap_tit:before {
  background-image: url(../img/product/product02/icon2.png);
}
.product2.product1 .section2 .item3 .wrap_tit:before {
  background-image: url(../img/product/product02/icon3.png);
}

.product3.product1 .section2 .item1 .wrap_tit:before {
  background-image: url(../img/product/product03/icon1.png);
}

.product3.product1 .section2 .item3 .wrap_tit:before {
  background-image: url(../img/product/product03/icon3.png);
}

@media screen and (max-width: 768px) {
  .product1 .section2 {
    padding: 72px 0;
  }
  .product1 .section2 [class^=item] .inner {
    flex-direction: column-reverse;
    gap: 28px;
  }
  .product1 .section2 [class^=item] + [class^=item] {
    margin-top: 60px;
  }
  .product1 .section2 [class^=item] .img {
    width: 100%;
  }
  .product1 .section2 [class^=item] .img img {
    max-height: 320px;
  }
  .product1 .section2 [class^=item] .contents {
    width: 100%;
  }
  .product1 .section2 [class^=item] .wrap_tit {
    gap: 20px;
    font-size: 18px;
  }
  .product1 .section2 [class^=item] .wrap_tit:before {
    width: 28px;
    height: 28px;
  }
  .product1 .section2 [class^=item] .desc {
    margin-top: 18px;
    font-size: 11px;
  }
  .product1 .section2 [class^=item] .desc .ib {
    display: inline;
  }
}
.product1 .section3 {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 65rem;
  background: url(../img/product01_01_img05.jpg) no-repeat center/cover;
  text-align: center;
  color: #fff;
}
.product1 .section3 .sup {
  display: block;
  font-size: 2rem;
}
.product1 .section3 .letters {
  margin-top: 0.4rem;
  font-size: 4.8rem;
}
.product1 .section3 .buttons {
  margin-top: 3.4rem;
}
.product1 .section3 .buttons .btn {
  width: 20rem;
}
@media screen and (max-width: 768px) {
  .product1 .section3 {
    height: 236px;
  }
  .product1 .section3 .sup {
    font-size: 10px;
  }
  .product1 .section3 .letters {
    margin-top: 8px;
    font-size: 18px;
  }
  .product1 .section3 .buttons {
    margin-top: 18px;
  }
  .product1 .section3 .buttons .btn {
    width: 80px;
  }
}
.product1 .section4 {
  padding: 20rem 0 18rem;
}
.product1 .section4 .list_tab {
  display: flex;
  justify-content: center;
  gap: 2.2rem;
  font-size: 0;
}
.product1 .section4 .list_tab a {
  display: block;
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  border: 1px solid #d9d9d9;
}
.product1 .section4 .conts_tab {
  margin-top: 5rem;
}
.product1 .section4 .swiper {
  position: relative;
  padding-top: 4rem;
}
.product1 .section4 .swiper-slide {
  text-align: center;
  padding: 0 8rem;
}
.product1 .section4 .swiper-slide img {
  margin: 0 auto;
}
.product1 .section4 .swiper-pagination {
  position: relative;
  bottom: auto;
  left: auto;
  display: flex;
  justify-content: center;
  gap: 1rem;
  margin-top: 3.2rem;
}
.product1 .section4 .swiper-pagination .swiper-pagination-bullet {
  width: 1.2rem;
  height: 1.2rem;
  background: #d9d9d9;
  opacity: 1;
}
.product1 .section4 .swiper-pagination .swiper-pagination-bullet-active {
  background: #222;
}
.product1 .section4 .swiper-button-next,
.product1 .section4 .swiper-button-prev {
  width: 2rem;
  height: 3.6rem;
  margin-top: -1.8rem;
  background: url(../img/icon_arrow02.svg) no-repeat center/contain;
}
.product1 .section4 .swiper-button-prev {
  transform: rotate(180deg);
}
.product1 .section4 .swiper-button-disabled {
  opacity: 0.25;
}
.product1 .section4 .information {
  display: flex;
  gap: 14rem;
  margin-top: 8rem;
}
.product1 .section4 .information .tit {
  display: block;
  line-height: 1;
  font-size: 3.6rem;
  font-weight: 600;
}
.product1 .section4 .information .contents {
  flex-grow: 1;
}
.product1 .section4 .information .wrap_tbl {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 3em;
  border-top: 1px solid #666;
}
.product1 .section4 .information .wrap_tbl .item_info {
  display: flex;
  align-items: center;
  min-height: 8.8rem;
  padding: 3.2rem 0;
  border-bottom: 1px solid #d9d9d9;
}
.product1 .section4 .information .wrap_tbl dt, .product1 .section4 .information .wrap_tbl dd {
  width: 50%;
}
.product1 .section4 .information .wrap_tbl dt {
  font-weight: 600;
}
.product1 .section4 .information .wrap_tbl dd {
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .product1 .section4 {
    padding: 72px 0;
  }
  .product1 .section4 .list_tab {
    gap: 12px;
  }
  .product1 .section4 .list_tab a {
    width: 20px;
    height: 20px;
  }
  .product1 .section4 .conts_tab {
    margin-top: 12px;
  }
  .product1 .section4 .swiper {
    padding-top: 20px;
  }
  .product1 .section4 .swiper-pagination {
    gap: 5px;
    margin-top: 16px;
  }
  .product1 .section4 .swiper-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
  }
  .product1 .section4 .swiper-button-next,
  .product1 .section4 .swiper-button-prev {
    width: 10px;
    height: 18px;
    margin-top: -9px;
  }
  .product1 .section4 .information {
    display: block;
    margin-top: 45px;
  }
  .product1 .section4 .information .tit {
    display: block;
    font-size: 18px;
  }
  .product1 .section4 .information .contents {
    margin-top: 24px;
  }
  .product1 .section4 .information .wrap_tbl {
    display: block;
  }
  .product1 .section4 .information .wrap_tbl .item_info {
    min-height: 0;
    padding: 12px 0;
  }
  .product1 .section4 .information .wrap_tbl dt {
    width: 45%;
    font-size: 10px;
  }
  .product1 .section4 .information .wrap_tbl dd {
    width: 55%;
    font-size: 9px;
  }
}


/*공통*/
.wfix_sub { width: 100%; max-width: 1420px; margin: 0 auto;}
.contents_sub {margin: 200px 0; text-align: center;}
.contents_sub section + section { margin-top: 200px;}
.wfix_sub .title h3 {margin-bottom: 20px;color: #0276c3;
    font-weight: bold;}
.wfix_sub .title .letters {font-weight: 800;}
.bg_f9{background-color: #f9f9f9;}

/*about01*/

.about_banner { position: relative; background-image: url('../img/sub/about01/banner.jpg'); background-size: cover;
  background-position: center; padding: 150px 20px; color: #fff; text-align: center;margin-top: 90px;}


.ceo_wrap { display: flex; flex-direction: row; justify-content: space-between;  align-items: stretch; width: 100%;  gap: 100px;}
.ceo_left { background-color: #0071e3; color: #fff; border-radius: 10px; padding: 60px 40px; width: 30%;text-align: left;}
.ceo_right { flex: 1; }
.ceo_txt_box{  display: flex;  flex-direction: column;  gap: 25px;text-align: left;}


.about01_3 { padding: 200px 0; }
.tit_l { font-size: 4.2rem; font-weight: 800; margin-bottom: 60px; text-align: left; text-transform: uppercase; }
.over_wrap { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 30px; }
.over_box { background:#fff; border-radius:14px; padding:30px; text-align:left; transition:all 0.3s ease; display:flex; flex-direction:column; justify-content:space-between; box-shadow:0 6px 16px rgba(0,0,0,0.08); }
.over_box:hover { transform:translateY(-4px); box-shadow:0 12px 28px rgba(0,0,0,0.12); }

.over_txt_wrap { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 20px; }
.over_txt_wrap h3 {color: #999; font-weight: 500; }
.over_txt_wrap .icon { width: 60px; height: 60px; }
.over_txt_wrap .icon img { width: 100%; height: 100%; object-fit: contain; }
.over_box p { font-weight: 600; color: #111; }
.over_box p span { display: block;  color: #999; }


.biz_wrap { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));  gap: 30px;}
.biz_box { background:#f9f9f9; text-align:left; border-radius:20px; overflow:hidden; text-decoration:none; display:flex; flex-direction:column; transition:all 0.3s ease; box-shadow:0 6px 16px rgba(0,0,0,0.08); }
.biz_box:hover { transform:translateY(-4px); box-shadow:0 12px 28px rgba(0,0,0,0.12); }

.biz_txt { padding: 40px 30px 20px;}
.biz_txt .num { color: #0282d7; font-weight: 700;  margin-bottom: 10px;}
.biz_txt h3 { font-weight: 700;  margin-bottom: 10px;}
.biz_txt .desc { color: #666;}
.biz_img { position: relative;}
.biz_img img { width: 100%; height: 250px; object-fit: cover;  display: block;}
.biz_img .overlay { position: absolute; inset: 0; background: #0282d7c2;  color: #fff;  display: flex;  flex-direction: column;
  align-items: center;  justify-content: center;  opacity: 0;  transition: all 0.3s ease;}

.biz_box:hover .overlay {  opacity: 1;}


@media (max-width: 768px) {
 .biz_img img { width: 100%; height: 200px; object-fit: cover;  display: block;}
	.ceo_wrap{flex-direction: column;gap: 50px;	}
	.ceo_left{width:100%}
	.about01_3 { padding: 80px 0;}
	.about_banner{padding: 80px 20px;}
}


/*about02*/

.about02_banner { position: relative; background-image: url('../img/sub/about02/banner.jpg'); background-size: cover; background-position: center; padding: 180px 20px; text-align: center; color: #fff; }

.about02_tit h3 {font-weight: 500; margin-bottom: 20px; }
.about02_tit h2 { font-weight: 600; line-height: 1.5; }
.about02_wrap { display: grid; grid-template-columns: repeat(auto-fit, minmax(600px, 1fr)); gap: 40px; max-width: 1420px; margin: 120px auto; }

.about02_box { background: #fff; border-radius: 20px; box-shadow: 0 0px 20px rgba(0,0,0,0.06); padding: 40px; display: flex; align-items: flex-start; gap: 20px; text-align: left; transition: all 0.3s ease;flex-direction: column; }

.about02_box:hover { transform: translateY(-4px); box-shadow: 0 0px 25px rgba(0,0,0,0.08); }

.about02_box .icon { width: 100px; height: 100px; flex-shrink: 0; border-radius: 50%; overflow: hidden; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 10px rgb(0 0 0 / 10%);}

.about02_box .icon img { width: 100%; max-width: 60px; }

.about02_box p {  color: #222; line-height: 1.5; font-weight: 500;}



@media (max-width: 1024px) {
  .about02_wrap {
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 30px;
    margin: 80px auto;
	   padding: 30px; 
  }

  .about02_box {
    padding: 32px;
  }

  .about02_box .icon {
    width: 80px;
    height: 80px;
  }
}

@media (max-width: 768px) {
	.about02_banner{padding:80px 20px}
  .about02_wrap {
    grid-template-columns: 1fr;
    gap: 24px;
    margin: 60px auto;
	    padding: 20px;
      
  }

  .about02_box {
    padding: 28px 22px;
    border-radius: 16px;
  }

  .about02_box .icon {
    width: 70px;
    height: 70px;
  }
.about02_box .icon img { width: 100%; max-width: 45px; }
  .about02_box p {
    font-size: 14px;  /* 모바일에서는 조금만 줄여서 가독성 유지 */
    line-height: 1.6;
  }
}

@media (max-width: 480px) {
  .about02_box {
    padding: 24px 18px;
  }

  .about02_box .icon {
    width: 60px;
    height: 60px;
  }

  .about02_box p {
    font-size: 13px;
  }
}


/*about03*/

.org_img img {width:100%;max-width:1420px;}
.org_table_wrap {margin-top:150px;}
.org_table_box {margin-bottom:80px;}
.org_table_tit {text-align:left;font-weight:600;margin-bottom:20px;}
.org_table_box > ul {display:flex;flex-wrap:wrap;justify-content:space-between;}
.org_table_box > ul > li {width:49%;display:flex;align-items:flex-start;border-bottom:1px solid #eee;border-top:2px solid #222;box-sizing:border-box;margin-bottom:30px;min-height:170px;}
.org_tit {background-color:#f9f9f9;width:170px;height:100%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.org_tit h3 {font-weight:600;margin:0;color:#000;}
.org_table_box > ul > li > ul {padding-left:25px;margin:0;list-style:none;width:calc(100% - 140px);padding:25px;}
.org_table_box > ul > li > ul li {display:flex;align-items:center;margin-bottom:8px;}
.org_table_box > ul > li > ul li:last-child {margin-bottom:0;}
.org_table_box > ul > li > ul li span {display:inline-block;width:5px;height:5px;background:#333;border-radius:50%;margin-right:10px;flex-shrink:0;}

/* 반응형: 모바일에서는 1열 */
@media (max-width: 768px) {
  .org_table_box > ul > li {
    width: 100%;
  }
  .org_tit {
    width: 110px;
  }
  .org_table_box > ul > li > ul {
    padding-left: 20px;
	 width: 100%;
	  text-align: left;
  }
	
	.org_table_box {margin-bottom: 50px;}
}

/*about04*/
.loca_tit { text-align: center;}
.loca_tit p{color: #0276c3;font-weight: bold}
.loca_info { display: flex; gap: 25px;margin-top: 80px; }
.loca_box {  border: 1px solid #eee; padding: 25px; align-items: flex-start; display: flex; flex-direction: column; gap: 20px;    width: 100%;
    max-width: 480px;  }
.loca_icon { display: flex;gap: 20px;align-items: center;}
.loca_icon img{ width:100%;max-width: 25px;}

.loca_map_wrap { display: flex; flex-direction: column; gap: 60px;margin-top:80px;}

.loca_map_box { display: flex; align-items: stretch;    background: #fff; overflow: hidden;
background-color: #f9f9f9;}

/* 왼쪽 지도 */
.loca_map_left {  flex: 1 1 50%;  min-height: 400px;}

.loca_map_left iframe {  width: 100%;  height: 100%;  border: none;}

/* 오른쪽 텍스트 */
.loca_map_right {  flex: 1 1 50%;  padding: 40px;  display: flex;  flex-direction: column;  justify-content: center;  align-items: flex-start;	}

.loca_map_right h3 { margin-bottom: 20px;}

.loca_map_txt {  display: flex; gap: 20px; align-items: flex-start;text-align: left;line-height: 1.5;}

.loca_map_txt img {width:100%; max-width: 25px;}
p.map_en { color: #888888; margin-top: 14px;}

@media (max-width: 1024px) {
  .loca_map_box {
    flex-direction: column;
    gap: 0;
  }

  .loca_map_left, 
  .loca_map_right {
    flex: 1 1 100%;
    width: 100%;
  }

  .loca_map_left {
    order: 1;
    min-height: auto;
    aspect-ratio: 16 / 9; /* 지도 비율 유지 */
  }

  .loca_map_left iframe {
    width: 100%;
    height: 100%;
  }

  .loca_map_right {
    order: 2;
    padding: 24px 20px;
    align-items: flex-start;
  }

  .loca_map_right h3 {
    font-size: 18px;
    margin-bottom: 15px;
  }

  .loca_map_txt p {
    font-size: 14px;
    line-height: 1.5;
  }
}

@media (max-width: 768px) {
	.loca_info{flex-direction: column;gap:20px;}
	.loca_box{padding:15px;}
}

@media (max-width: 480px) {
  .loca_map_right {
    padding: 20px 16px;
  }

  .loca_map_right h3 {
    font-size: 17px;
  }

  .loca_map_txt {
    gap: 8px;
  }
}

.tech_tit p{margin-top:5px;}
.tech_tit{margin-bottom:60px;}
.tech_tit p:first-child{margin-top: 0; color:#0276c3;font-weight: bold}

.tech_suttit_wrap{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:45px;text-align: left;}
.tech_subtit{display:flex;gap:15px;align-items:center;}
.tech_subtit img{width:100%;max-width:25px;}
.tech_img_box{background:#fff;padding:30px;border-radius:15px;width:100%;overflow:hidden;}
.section1 .tech_img_box{background:linear-gradient(to bottom,#14355a,#000000);padding:30px;border-radius:15px;}
.tech_img_box img{width:100%;max-width:1400px;}

section.tech02_2.section2.bg_f9{padding:200px 0;}
.tech02_list{margin-top:50px;}
.tech02_list ul{display:flex;flex-wrap:wrap;gap:25px;}
.tech02_list li{padding:20px;background:#f9f9f9;border-radius:5px;text-align:left;width:49%;font-size:1.8rem;font-weight:500;transition:all .3s ease;box-shadow:0 0 0 rgba(0,0,0,0);}
.tech02_list li:hover{transform:translateY(-2px);box-shadow:0 0 20px rgba(0,0,0,0.08);}
.tech02_2_wrap{display:flex;gap:30px;margin-top:50px;max-width:1420px;margin-left:auto;margin-right:auto;}
.tech02_2_list{display:flex;flex-direction:column;width:45%;gap:20px;}
.tech02_2_box{display:flex;align-items:center;gap:40px;background-color:#fff;border-radius:15px;padding:20px 50px 20px 20px;text-align:left;min-height:100px;}
/*.icon-placeholder{width:60px;height:60px;border-radius:50%;background-color:#ccc;flex-shrink:0;}*/
.icon-placeholder img{width:100%;max-width: 60px;}


.tech02_2_table{width:55%;text-align:left;}
.tech02_2_table h2{margin-bottom:10px;}
.tech02_2_table table{width:100%;border-collapse:collapse;color:#333;table-layout:fixed;}
.tech02_2_table th,.tech02_2_table td{padding:15px 10px;text-align:center;border:1px solid #eee;}
.tech02_2_table thead tr{background-color:#333;color:#fff;}
.tech02_2_table th:first-child{background-color:#444;width:25%;}
.tech02_2_table tbody tr{background-color:#fff;}
.tech02_2_table tbody td:first-child{font-weight:bold;background-color:#fff;border-left:none;}
.tech02_2_table tbody td:last-child{border-right:none;}

.tech03_2{margin-top:90px;}
.tech03_wrap ul{display:flex;gap:30px;}
.tech03_wrap li{background:#f9f9f9;padding:30px;display:flex;flex-direction:column;gap:25px;border-radius:15px;}
.tech03_wrap li h2{text-align:right;color:#c6d7eb;}
.tech03_wrap li div{text-align:left;}
.tech03_imgbox{border-radius:15px;background:#fff;padding:15px;display: flex;
    justify-content: center;}

.tech04_img_wrap{display:flex;justify-content:center;gap:80px;width:100%;align-items: center;}
.tech04_img_wrap img{width:100%;max-width:500px;}
.unmet_needs_wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:80px;}
.unmet_needs_wrap .need{width:40%;padding:15px 20px;background-color:#f9f9f9;border-radius:5px;border:1px solid #eee;text-align:left;}
.unmet_needs_wrap .need .title{margin-bottom:5px;}
.unmet_needs_wrap .need .content{color:#555;line-height:1.5;}
.unmet_needs_wrap .arrow{font-size:30px;color:#333;font-weight:300;}
.unmet_needs_wrap .solution{width:50%;background-color:#1a1a1a;background-image:linear-gradient(to right,#1a1a1a 0%,#153860 100%);color:#fff;padding:25px 30px;text-align:center;font-size:20px;font-weight:600;border-radius:5px;}
.unmet_needs_wrap .solution p{margin:0;}
.tech4_logo{background:linear-gradient(to bottom,#14355a,#000000);padding:25px 15px;display:flex;justify-content:center;gap:35px;border-radius:25px 25px 0 0;}
.tech4_logo img{filter:brightness(0) invert(1);width:100%;max-width:180px;}
.tech04_box_wrap{display:flex;gap:30px;margin-top:60px;}
.professor_info_col{display:flex;width:100%;justify-content:space-between;}

.professor_item{border:1px solid #eee;width:100%;}
.professor_box{background-color:#fff;padding:20px;text-align:left;min-height:170px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;}
.professor_box .name{font-size:20px;font-weight:bold;color:#333;display:inline-block;margin-right:10px;}
.professor_box .major{font-size:16px;color:#007bff;display:inline-block;font-weight:500;}
.professor_box .research_desc{font-size:15px;color:#555;line-height:1.4;margin-top:10px;}
.research_content_col{display:flex;list-style:none;padding:0;margin:0;}
.research_item{background-color:#f9f9f9;padding:20px;text-align:center;border:1px solid #eee;display:flex;flex-direction:column;align-items:center;}
.research_item img{max-width:700px;width:100%;}
.professor_item:first-child{border-right:none;}
.professor_item:last-child{border-left:none;}
.research_item:last-child{border-left:none;}
.tech04_2{padding:200px 0;}
.tech_process_box{width:100%;border:1px solid #eee;border-radius:20px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,0.05);}
.tech_process_box.right{border:1px solid #163558;}
.tech_header{padding:20px;text-align:left;}

.tech_content{padding:30px;display:flex;flex-direction:column;align-items:center;}
.tech_flow_step_initial,.tech_flow_step_final{display:flex;justify-content:space-between;width:100%;gap:20px;}
.source_box{background-color:#1a1a1a;color:#fff;padding:20px 10px;border-radius:100px;text-align:center;flex-grow:1;}
.arrow_down{font-size:24px;margin:15px 0;color:#555;}
.tech_flow_step_process{width:100%;display:flex;justify-content:center;}
.process_box{background-color:#f5f5f5;border:1px solid #ddd;border-radius:100px;padding:30px 20px;width:100%;text-align:center;}
.process_box.dark_bg{background-color:#1a1a1a;background-image:linear-gradient(to right,#1a1a1a 0%,#153860 100%);color:#fff;}
.process_box img{max-width:60px;margin-bottom:10px;filter:brightness(0) invert(0.8);}
.product_box{padding:15px 10px;border-radius:100px;text-align:center;flex-grow:1;border:1px solid #ddd;}
.tech_process_box.right .product_box.h2{background-color:#f7f7f7;border:1px solid #ddd;}
.tech_process_box.left .source_box{background-color:#666;}
.tech_process_box.right .source_box{background-color:#1a1a1a;background-image:linear-gradient(to right,#2c3e50 0%,#4a698a 100%);}
.product_box.c {  border: #163456 solid; }

@media(max-width:1200px){
	.tech04_img_wrap{gap:40px;}
	.tech04_img_wrap img{max-width:400px;}
}

@media(max-width:992px){
	.tech04_img_wrap{flex-direction:column;gap:30px;}
	.tech04_img_wrap img{max-width:90%;}
	.contents_sub section + section { margin-top: 100px;}
	.tech04_2 { padding: 100px 0;}
	.tech4_logo {border-radius: 15px 15px 0 0;}
	.tech4_logo img {max-width: 120px;}
	.tech_suttit_wrap {gap: 15px;}
	.section1 .tech_img_box{padding: 25px 15px;border-radius: 10px}
	.tech_suttit_wrap{margin-bottom: 25px;}
	.tech04_box_wrap{margin-top: 25px;}
	.contents_sub{margin:100px 0;}
	
}

@media(max-width:900px){
	.tech03_wrap ul{flex-direction: column;}
	.tech02_list li{width: 100%;font-size: 14px}
	.tech02_2_wrap	{flex-direction: column;}
	.tech02_2_list{width:100%}
	.tech02_2_table{width:100%}
	.tech_img_box {padding: 15px 10px;}
	
}

@media(max-width:768px){
	.unmet_needs_wrap{flex-direction:column;align-items:flex-start;}
	.unmet_needs_wrap>div{width:100%!important;}
	.unmet_needs_wrap .arrow{transform: rotate(90deg);}
	.tech04_professor_research_wrap{flex-direction:column;gap:40px;}
	.professor_info_col{width:100%;flex-direction:column;}
	.research_content_col{width:100%;flex-direction:column;}
	.professor_box{border-radius:0;min-height:80px;}
	.tech04_box_wrap{flex-direction:column;}
	.source_box{padding:10px;}.product_box{padding:10px;}
	.professor_item:first-child{border-right:1px solid #eee;border-bottom: 0}
	.professor_item:last-child{border-left:1px solid #eee;border-top: 0}
	.research_item:last-child{border-left:1px solid #eee;}
	.research_item:first-child{border-bottom:0}
	.arrow_down{font-size:16px;margin:12px 0;}
	.contents_sub section + section { margin-top: 80px;}
	section.tech02_2.section2.bg_f9{padding:80px 0}
	.tech04_2 { padding: 80px 0;}
	.contents_sub{margin:80px 0;}
	.tech03_wrap li{padding:20px;}
}


@media(max-width:480px){
	.tech04_img_wrap img{max-width:100%;}
}

.loading.section1{position:relative;height:400px;}
.socket{width:200px;height:200px;position:absolute;left:50%;top:50%;margin-left:-100px;margin-top:-100px;}
.hex-brick{background:#ABF8FF;width:30px;height:17px;position:absolute;top:5px;animation-name:fade;animation-duration:2s;animation-iteration-count:infinite;-webkit-animation-name:fade;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;}
.h2{transform:rotate(60deg);-webkit-transform:rotate(60deg);}
.h3{transform:rotate(-60deg);-webkit-transform:rotate(-60deg);}
.gel{height:30px;width:30px;transition:all .3s;-webkit-transition:all .3s;position:absolute;top:50%;left:50%;}
.center-gel{margin-left:-15px;margin-top:-15px;animation-name:pulse;animation-duration:2s;animation-iteration-count:infinite;-webkit-animation-name:pulse;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;}
.c1{margin-left:-47px;margin-top:-15px;}
.c2{margin-left:-31px;margin-top:-43px;}
.c3{margin-left:1px;margin-top:-43px;}
.c4{margin-left:17px;margin-top:-15px;}
.c5{margin-left:-31px;margin-top:13px;}
.c6{margin-left:1px;margin-top:13px;}
.c7{margin-left:-63px;margin-top:-43px;}
.c8{margin-left:33px;margin-top:-43px;}
.c9{margin-left:-15px;margin-top:41px;}
.c10{margin-left:-63px;margin-top:13px;}
.c11{margin-left:33px;margin-top:13px;}
.c12{margin-left:-15px;margin-top:-71px;}
.c13{margin-left:-47px;margin-top:-71px;}
.c14{margin-left:17px;margin-top:-71px;}
.c15{margin-left:-47px;margin-top:41px;}
.c16{margin-left:17px;margin-top:41px;}
.c17{margin-left:-79px;margin-top:-15px;}
.c18{margin-left:49px;margin-top:-15px;}
.c19{margin-left:-63px;margin-top:-99px;}
.c20{margin-left:33px;margin-top:-99px;}
.c21{margin-left:1px;margin-top:-99px;}
.c22{margin-left:-31px;margin-top:-99px;}
.c23{margin-left:-63px;margin-top:69px;}
.c24{margin-left:33px;margin-top:69px;}
.c25{margin-left:1px;margin-top:69px;}
.c26{margin-left:-31px;margin-top:69px;}
.c27{margin-left:-79px;margin-top:-15px;}
.c28{margin-left:-95px;margin-top:-43px;}
.c29{margin-left:-95px;margin-top:13px;}
.c30{margin-left:49px;margin-top:41px;}
.c31{margin-left:-79px;margin-top:-71px;}
.c32{margin-left:-111px;margin-top:-15px;}
.c33{margin-left:65px;margin-top:-43px;}
.c34{margin-left:65px;margin-top:13px;}
.c35{margin-left:-79px;margin-top:41px;}
.c36{margin-left:49px;margin-top:-71px;}
.c37{margin-left:81px;margin-top:-15px;}
.r1{animation-name:pulse;animation-duration:2s;animation-iteration-count:infinite;animation-delay:.2s;-webkit-animation-name:pulse;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;-webkit-animation-delay:.2s;}
.r2{animation-name:pulse;animation-duration:2s;animation-iteration-count:infinite;animation-delay:.4s;-webkit-animation-name:pulse;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;-webkit-animation-delay:.4s;}
.r3{animation-name:pulse;animation-duration:2s;animation-iteration-count:infinite;animation-delay:.6s;-webkit-animation-name:pulse;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;-webkit-animation-delay:.6s;}
.r1>.hex-brick{animation-name:fade;animation-duration:2s;animation-iteration-count:infinite;animation-delay:.2s;-webkit-animation-name:fade;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;-webkit-animation-delay:.2s;}
.r2>.hex-brick{animation-name:fade;animation-duration:2s;animation-iteration-count:infinite;animation-delay:.4s;-webkit-animation-name:fade;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;-webkit-animation-delay:.4s;}
.r3>.hex-brick{animation-name:fade;animation-duration:2s;animation-iteration-count:infinite;animation-delay:.6s;-webkit-animation-name:fade;-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;-webkit-animation-delay:.6s;}
@keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1);}50%{-webkit-transform:scale(0.01);transform:scale(0.01);}100%{-webkit-transform:scale(1);transform:scale(1);}}
@keyframes fade{0%{background:#ABF8FF;}50%{background:#90BBBF;}100%{background:#ABF8FF;}}
@-webkit-keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1);}50%{-webkit-transform:scale(0.01);transform:scale(0.01);}100%{-webkit-transform:scale(1);transform:scale(1);}}
@-webkit-keyframes fade{0%{background:#ABF8FF;}50%{background:#389CA6;}100%{background:#ABF8FF;}}

/* 모바일 사이즈 축소 */
@media (max-width: 480px) {
  .socket {
    transform: scale(0.6); /* 전체 크기 60%로 축소 */
  }

  .loading.section1 {
    height: 250px; /* 모바일에서 너무 길면 공간 줄이기 */
  }
}


.product1 .pro2.section3 {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 65rem;
    background: url("../img/product/product02/banner.jpg") no-repeat center / cover;
    text-align: center;
    color: #fff;
}
.product1 .pro3.section3 {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 65rem;
    background: url("../img/product/product03/banner.jpg") no-repeat center / cover;
    text-align: center;
    color: #fff;
}


.productList {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.productList li {
  width: 32%;
  background: #f9f9f9;
  border-radius: 20px;
  border: solid 2px #f9f9f9;
  padding: 50px 30px 30px;
  transition: all 0.4s;
  margin-right: 2%;
  margin-bottom: 80px;
  box-sizing: border-box;
}

.productList li:nth-child(3n) {
  margin-right: 0;
}

.productList li a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.productTxt {
  text-align: center;
}



.productImg {
  margin: 0;
  margin-top: 40px;
  overflow: hidden;
  border-radius: 15px;
  box-shadow: 0px 0px 15px rgba(0,0,0,0.05);
}

.productImg img {
  width: 100%;
  transition: transform 0.5s;
}

.productList li:hover {
  border-color: #bddbef;
  background: #fff;
  box-shadow: 0px 10px 20px rgba(0,0,0,0.05);
}

.productList li:hover .productImg img {
  transform: scale(1.05);
}

@media (max-width:1200px) {
 .productList {flex-direction: column;gap:40px;}
	.productList li{width:80%;margin:0 auto;}
}


@media (max-width: 966px) {

	.productList li{width:100%;}
}


/*그래핀소개*/

.tech01_4 {
 background: url("../img/sub/tech01/bg.jpg") no-repeat center / cover;
}
.ytb_box {  max-width: 1280px; width: 100%; aspect-ratio: 16 / 9; border-radius: 20px;}
.tech01_2_box{padding:200px 0}
.tech01_2_box h2{margin-bottom:20px}
.tech01_2_box img{width: 100%;max-width: 1000px;border-radius: 15px;margin-top: 40px;}

.tech01_wrap{display: flex;justify-content: space-between; gap: 120px;align-items: center;}
.tech01_wrap img{width:50%;border-radius: 15px;}
.tech01_3_txt{display: flex; flex-direction: column; gap: 20px;width: 50%;}
.tech01_wrap p{text-align: left;}


.tech01_4{padding:200px 0}
.tech01_4 h3{margin-bottom: 50px;color:#fff}
.tech01_4 .over_txt_wrap{justify-content: flex-end;}
.tech01_4 .over_wrap{display: flex; flex-wrap: wrap; gap: 30px; justify-content: center; }
.tech01_4 .over_box { width: 100%; max-width: 330px;}

.tech01_img_wrap { display: flex; flex-direction: column; gap: 80px;}

.tech01_txt_wrap { text-align: left;width: 50%;}
.tech01_txt_wrap h3{ margin-bottom: 20px;}

.tech01_img_box {display: flex; align-items: center; justify-content: space-between;    gap: 120px;}
.tech01_img_box:nth-child(even) {flex-direction: row-reverse;}
.tech01_img_box img{width: 50%; max-width: 650px;border-radius: 15px;}

@media (max-width: 966px) {
	
	.tech01_wrap{flex-direction: column;gap:60px;}
	.tech01_3_txt{width: 100%;}
	
	.tech01_wrap img{width: 100%;}

}

@media (max-width: 720px) {
	.tech01_2_box{padding:80px 0}
	.tech01_4 .over_box { width: 100%; max-width:100%;}
	.tech01_wrap{flex-direction: column;gap:60px;}
	
	.tech01_txt_wrap{width: 100%;}
	
	.tech01_img_box img{width: 100%;}
	.tech01_img_box{flex-direction: column;gap:60px;}
	.tech01_img_box:nth-child(even){flex-direction: column;gap:60px;}
}
.pro_list.section1 {
  padding: 20rem 0;
}
.pro_list.section1 .wfix {
  display: flex;
  gap: 4rem;
}
.pro_list.section1 .item {
  width: 100%;
}
.pro_list.section1 .thumb img {
  width: 100%;
  height: 40rem;
  -o-object-fit: cover;
     object-fit: cover;
}
.pro_list.section1 .conts {
  margin-top: 2.4rem;
}
.pro_list.section1 .sup {
  display: block;
  font-weight: 500;
  color: #888;
}
.pro_list.section1 .tit {
  display: block;
  margin-top: 0.4rem;
  font-size: 2.8rem;
  font-weight: 600;
  color: #222;
}
.pro_list.section1 .desc {
  margin-top: 2rem;
  color: #666;
}
@media screen and (max-width: 1568px) {
  .pro_list.section1 .thumb img {
    height: auto;
    aspect-ratio: 1/0.647;
  }
}
@media screen and (max-width: 1024px) {
  .pro_list.section1 {
    padding: 16vw 0;
  }
}
@media screen and (max-width: 768px) {
  .pro_list.section1 {
    padding: 60px 0;
  }
  .pro_list.section1 .item + .item {
    margin-top: 20px;
    padding-top: 40px;
    border-top: 1px solid #eee;
  }
  .pro_list.section1 .wfix {
    display: flex;
        flex-direction: column;
  }
  .pro_list.section1 .conts {
    margin-top: 17px;
  }
  .pro_list.section1 .sup {
    font-size: 10px;
  }
  .pro_list.section1 .tit {
    margin-top: 3px;
    font-size: 14px;
  }
  .pro_list.section1 .desc {
    margin-top: 7px;
    font-size: 10px;
  }
}