﻿.font-12{font-size: 12px  !important; line-height: 180%;}
.font-14{font-size: 14px  !important; line-height: 180%;}
.font-16{font-size: 16px  !important; line-height: 180%;}
.font-17{font-size: 17px  !important; line-height: 180%;}
.font-18{font-size: 18px  !important; line-height: 180%;}
.font-20{font-size: 20px  !important; line-height: 180%;}
.font-22{font-size: 22px !important; line-height: 180%;}
.font-24{font-size: 24px !important; line-height: 180%;}
.font-25{font-size: 25px !important; line-height: 180%;}
.font-27{font-size: 27px !important; line-height: 180%;}
.font-30{font-size: 30px !important; line-height: 180%;}
.font-35{font-size: 35px !important; line-height: 160%;}
.font-40{font-size: 40px !important; line-height: 160%;}
.font-45{font-size: 45px !important; line-height: 160%;}
.font-50{font-size: 50px !important; line-height: 160%;}
.font-55{font-size: 55px !important; line-height: 160%;}
.font-60{font-size: 60px !important; line-height: 160%;}
.font-64{font-size: 64px !important; line-height: 160%;}
.font-70{font-size: 70px !important; line-height: 160%;}

.weight-200{font-weight: 200;}
.weight-300{font-weight: 300;}
.weight-400{font-weight: 400;}
.weight-500{font-weight: 500;}
.weight-600{font-weight: 600;}
.weight-700{font-weight: 700;}
.weight-800{font-weight: 800;}

.point-color{color: #f42717;}
.w-color{color: #fff;}
/*main.css*/


.main_page {margin:0px 0px 0px 100px; }

.title-wrap{margin-bottom: 20px;}

.side-nav-bar{width: 100px; position: fixed; left: 0; top: 50%; transform: translateY(-50%);}
.side-nav-bar ul li{height: 50px;}
.side-nav-bar ul li a{text-align: center; display: flex; flex-direction: column; align-items: center;}
.side-nav-bar ul li:not(:last-child){margin-bottom: 30px;}
.side-nav-bar ul li p{display: none;}
.side-nav-bar ul li a:hover p{display: block;}
.side-nav-bar ul li a:hover img{display: none;}


/*banner*/
.main_banner{width: 100%; display: block;  background: url(../img/main/banner2.png); background-size: cover; background-position: center center; }
.main_banner .mb_slide{ position: relative; height:calc(100vh - 0px); display: flex; align-items: center;}
/* .main_banner .mb_slide2{position: relative; height: 100vh;}
.main_banner .mb_slide3{position: relative; height: 100vh;} */


.main_banner .swiper-button-prev, .main_banner .swiper-button-next{margin-top: 0; top:auto; bottom: 35px;  width: 12px; height: 15px; background-size: cover; outline: 0; background-position: center;} 
.main_banner .swiper-button-prev{left: 0px; background-image: url('../img/main/arrow_left.png');}
.main_banner .swiper-button-next{left: 140px; background-image: url('../img/main/arrow_right.png');}


.main_banner .swiper-container-horizontal>.swiper-pagination-bullets, .main_banner .swiper-pagination-custom, .main_banner .swiper-pagination-fraction{bottom:30px;}
.main_banner .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin: 0 5px;}
.main_banner .swiper-pagination-bullet{width: 10px; height: 10px; opacity: 0.5; background: rgba(255,255,255,1); border-color: rgba(255,255,255,1); -webkit-box-sizing: border-box; box-sizing: border-box; outline: 0;}
.main_banner .swiper-pagination-bullet-active{opacity: 1;}
.main_banner .banner_tit{position: absolute; bottom:137px; left:50px}

.main_nbsp {width:100%; height:87px; position: absolute; background:#fff; bottom:0;}
html {
    scroll-behavior: smooth;
}
/* 상단 고정 헤더(87px)에 가려지지 않도록 앵커 여백 */
#about, #equipment, #packaging, #product, #location{scroll-margin-top: 100px;}

/* main_sec1 */
.main_sec1{width: 100%; padding: 100px 0 100px; position: relative;}

.main_sec1 .about-wrap{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;}
.main_sec1 .about-wrap .txt-wrap{width: 40%; padding-right: 20px;}
.main_sec1 .about-wrap .txt-wrap h2{color: #000; position: relative;}
.main_sec1 .about-wrap .txt-wrap h2::after{content: ""; width: 80px; height: 1px; background-color: #000; position: absolute; left: 0; bottom: -20px;}
.main_sec1 .about-wrap .txt-wrap p{margin-top: 40px;}

.main_sec1 .about-wrap .img-wrap{display: flex; flex-wrap: wrap;  width: 50%;}
.main_sec1 .about-wrap .img-wrap .fir-img{ width: calc(100% - 100px);}
.main_sec1 .about-wrap .img-wrap .fir-img img{width: 100%;}
.main_sec1 .about-wrap .img-wrap .sec-img{width: 26%;}
.main_sec1 .about-wrap .img-wrap .sec-img img{width: 100%;}

.wrap{width: 100%; max-width: 100%; padding:100px 100px 0px; overflow:hidden}
/* main_sec2 */
.main_sec2{width: 100%; padding: 20px 0 0px;}
.main_sec2 .wrap ul{/*display: flex; flex-wrap: wrap; justify-content: space-between;*/}
.main_sec2 .wrap ul li{ position: relative; /*width:calc(50% - 20px);*/ height:380px; background-repeat: no-repeat; background-size: cover; background-position: center center; position: relative; }
/*.main_sec2 .wrap ul li::after{content: ""; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.466); position: absolute; left: 0; top: 0; z-index: 1; transition: 0.2s; opacity: 0;}*/
.main_sec2 .wrap ul li  > div {position: absolute; left:40px; right:40px; bottom:40px;  }
.main_sec2 .wrap ul li span{ z-index: 2;}
.main_sec2 .wrap ul li span p{line-height: 120% !important;}
.main_sec2 .wrap ul li a span{position: relative;}
.main_sec2 .wrap ul li a span::after{content: ""; width: 0; height: 1px; background-color: #fff; position: absolute; left: 0; bottom: 0; transition: 0.2s;}
.main_sec2 .wrap ul li:hover::after{opacity: 1;}
.main_sec2 .wrap ul li:hover a span::after{width: 100%;}

/*.main_sec2 .wrap ul li:nth-child(1){background-image: url(../img/main/main_sec2_img01.png); margin-bottom: 20px;}*/
.main_sec2 .wrap ul li:nth-child(1){background-image: url(../img/main/main_sec2_img02.png); margin-bottom: 20px;}
.main_sec2 .wrap ul li:nth-child(2){background-image: url(../img/main/main_sec2_img03.png); margin-bottom: 20px;}


/* main_sec3 */
.main_sec3{width: 100%; padding: 0px 0 100px;}

/* main_sec4 */
.main_sec4{position: relative; width: 100%; margin-bottom: 0px;}
.main_sec4::after{content: ""; width: 30%; height: 100%; background-color: #fafafa; position: absolute; right: 0; top: 0; z-index: -1;}
.main_sec4 .wrap ul{padding: 100px 0;}
.main_sec4 .wrap ul li{display: flex; flex-wrap: wrap; align-items: center;}
.main_sec4 .wrap ul li a{width: 50%; background-color: #fff; /*box-shadow: 2px 1px 5px #e4e4e4;*/ height: 150px; display: flex; justify-content: center; flex-direction: column; padding: 20px 50px; transition: 0.2s;}
.main_sec4 .wrap ul li a span{margin-left: 10%;}
.main_sec4 .wrap ul li a span p:nth-child(1){padding-bottom: 10px; margin-bottom: 10px; position: relative; display: inline-block; color: #004589;}
.main_sec4 .wrap ul li a span p:nth-child(1)::before{content: ""; position: absolute; width: 10px; height: 1px; right: 0; bottom: 4px; background-color: #004589; transition: 0.2s; transform: rotate(45deg);}
.main_sec4 .wrap ul li a span p:nth-child(1)::after{content: ""; position: absolute; width: 100%; height: 1px; left: 0; bottom: 0; background-color: #004589; transition: 0.2s;}
.main_sec4 .wrap ul li a:hover{background-color: #004589;}
.main_sec4 .wrap ul li a:hover span p {color:#fff}
.main_sec4 .wrap ul li a:hover span p:nth-child(1)::before{width: 10px; right: -40%; background-color:#fff}
.main_sec4 .wrap ul li a:hover span p:nth-child(1)::after{width: 140%;  background-color:#fff}

.main_sec4 .wrap ul li .click-bg{width: 60%; height: 300px; margin-left: -10%;}
.main_sec4 .wrap ul li:nth-child(1), .main_sec4 .wrap ul li:nth-child(2) , .main_sec4 .wrap ul li:nth-child(3) {margin-bottom: 30px;}
.main_sec4 .wrap ul li .click-bg{background-repeat: no-repeat;background-size: cover; background-position: center;}
.main_sec4 .wrap ul li:nth-child(1) .click-bg{background-image: url(../img/main/main_sec4_bg1.png); }
.main_sec4 .wrap ul li:nth-child(2) .click-bg{background-image: url(../img/main/main_sec4_bg2.png); }
.main_sec4 .wrap ul li:nth-child(3) .click-bg{background-image: url(../img/main/main_sec4_bg3.png); }
.main_sec4 .wrap ul li:nth-child(4) .click-bg{background-image: url(../img/main/main_sec4_bg4.png); }

/* main_sec4 - Equipment 자동 스와이프 슬라이더 */
.main_sec4 .equip_swiper{width: 100%; margin-top: 20px; padding: 0 0 40px; overflow: hidden;}
.main_sec4 .equip_swiper .equip_card{background-color: #fff; box-shadow: 2px 4px 12px rgba(0,0,0,0.08); border-radius: 8px; overflow: hidden;}
.main_sec4 .equip_swiper .equip_thumb{width: 100%; aspect-ratio: 4 / 3; overflow: hidden;}
.main_sec4 .equip_swiper .equip_thumb img{width: 100%; height: 100%; object-fit: cover; display: block; transition: 0.3s;}
.main_sec4 .equip_swiper .equip_card:hover .equip_thumb img{transform: scale(1.05);}
.main_sec4 .equip_swiper .equip_info{padding: 18px 20px;}
.main_sec4 .equip_swiper .equip_cate{color: #004589; margin-bottom: 6px;}
.main_sec4 .equip_swiper .equip_name{color: #222; line-height: 130%;}

/* Equipment 슬라이더 화살표 (사진 바깥 여백에 배치 - 검은색, hover 파랑) */
.main_sec4 .equip_slider{position: relative; padding: 0 0px;}
.main_sec4 .equip_slider .swiper-button-prev,
.main_sec4 .equip_slider .swiper-button-next{width: 38px; height: 38px; margin: 0; margin-top: 0; top: 50%; transform: translateY(-50%); background: #eeeeee !important; background-image: none !important; border-radius: 50%; box-shadow: none; z-index: 10; transition: 0.2s; display: flex; align-items: center; justify-content: center;}
.main_sec4 .equip_slider .swiper-button-prev:hover,
.main_sec4 .equip_slider .swiper-button-next:hover{background: #dddddd !important;}
.main_sec4 .equip_slider .swiper-button-prev{left: 10PX;}
.main_sec4 .equip_slider .swiper-button-next{right: 10PX;}
.main_sec4 .equip_slider .swiper-button-prev::after,
.main_sec4 .equip_slider .swiper-button-next::after{content: ''; display: block; width: 12px; height: 12px; border-top: 2px solid #000; border-right: 2px solid #000; transition: 0.2s; font-size: 0;}
.main_sec4 .equip_slider .swiper-button-next::after{transform: rotate(45deg); margin-left: -4px;}
.main_sec4 .equip_slider .swiper-button-prev::after{transform: rotate(-135deg); margin-right: -4px;}
.main_sec4 .equip_slider .swiper-button-next:hover::after,
.main_sec4 .equip_slider .swiper-button-prev:hover::after{border-color: #004589;}
@media (max-width: 576px){
	.main_sec4 .equip_slider{padding: 0 0px;}
}

/* 반응형 - 아주 작은 화면에서 aspect-ratio 미지원 대비 */
@supports not (aspect-ratio: 4 / 3){
	.main_sec4 .equip_swiper .equip_thumb{height: 0; padding-bottom: 75%; position: relative;}
	.main_sec4 .equip_swiper .equip_thumb img{position: absolute; left: 0; top: 0;}
}
@media (max-width: 576px){
	.main_sec4 .equip_swiper{margin-top: 20px;}
	.main_sec4 .equip_swiper .equip_info{padding: 14px 16px;}
}




/* ===== 설비 정보 클릭 트리거 & "자세히 보기" 버튼 ===== */
.equip-popup-open{cursor: pointer;}
.main_sec2 .equip-popup-open .equip-popup-more{display: inline-flex; align-items: center; gap: 8px; margin-top: 22px; padding: 12px 26px; background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.7); border-radius: 40px; color: #fff; font-size: 16px; font-weight: 500; font-style: normal; transition: 0.25s; -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); margin-left:20px}
.main_sec2 .equip-popup-open .equip-popup-more i{transition: 0.25s;}
.main_sec2 .equip-popup-open:hover .equip-popup-more{background: #004589; border-color: #004589;}
.main_sec2 .equip-popup-open:hover .equip-popup-more i{transform: translateX(4px);}

/* ===== 레이어 팝업 ===== */
.equip_modal{display: none; position: fixed; left: 0; top: 0; width: 100%; height: 100%; z-index: 9999;}
.equip_modal.on{display: block;}
.equip_modal .equip_modal_dim{position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(10,20,40,0.65); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px);}
.equip_modal .equip_modal_box{position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: flex; flex-direction: column; width: 92%; max-width: 940px; max-height: 90vh; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 24px 70px rgba(0,0,0,0.4); animation: equipPop 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);}
@keyframes equipPop{from{opacity: 0; transform: translate(-50%, -46%) scale(0.96);} to{opacity: 1; transform: translate(-50%, -50%) scale(1);}}

/* 헤더 */
.equip_modal .equip_modal_head{position: relative; flex: 0 0 auto; padding: 30px 60px 26px 36px; background: linear-gradient(120deg, #004589 0%, #0a67b8 100%); color: #fff;}
.equip_modal .equip_modal_tit{font-size: 26px; font-weight: 700; line-height: 1.25;}
.equip_modal .equip_modal_sub{margin-top: 8px; font-size: 15px; font-weight: 400; color: rgba(255,255,255,0.85);}
.equip_modal .equip_modal_close{position: absolute; right: 18px; top: 18px; width: 42px; height: 42px; border: 0; border-radius: 50%; background: rgba(255,255,255,0.15); font-size: 20px; color: #fff; cursor: pointer; line-height: 1; z-index: 2; transition: 0.25s;}
.equip_modal .equip_modal_close:hover{background: rgba(255,255,255,0.28); transform: rotate(90deg);}

/* 바디(스크롤 영역) */
.equip_modal .equip_modal_body{flex: 1 1 auto; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 36px;}
.equip_modal .equip_modal_sec + .equip_modal_sec{margin-top: 42px;}
.equip_modal .equip_modal_subtit{display: flex; align-items: center; gap: 12px; font-size: 20px; font-weight: 700; color: #111; margin-bottom: 24px;}
.equip_modal .equip_modal_subtit::before{content: ""; width: 5px; height: 22px; border-radius: 3px; background: linear-gradient(#004589, #0a67b8);}

/* 프로세스 특징 - 이미지 그리드 */
.equip_modal .equip_process{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;}
.equip_modal .equip_process_item{border: 1px solid #eaeaea; border-radius: 12px; overflow: hidden; background: #fff; box-shadow: 0 4px 14px rgba(0,0,0,0.05); transition: 0.25s;}
.equip_modal .equip_process_item:hover{transform: translateY(-4px); box-shadow: 0 12px 26px rgba(0,69,137,0.18); border-color: #cfe0f0;}
.equip_modal .equip_process_cap{display: flex; align-items: center; gap: 10px; padding: 12px 14px; background: linear-gradient(120deg, #3d7bc0, #5a95d1); color: #fff;}
.equip_modal .equip_process_cap .no{flex: 0 0 auto; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: #fff; color: #004589; font-size: 12px; font-weight: 700;}
.equip_modal .equip_process_cap .tx{font-size: 14px; font-weight: 500; line-height: 1.35;}
.equip_modal .equip_process_img{aspect-ratio: 4 / 3; overflow: hidden; background: #f2f4f7;}
.equip_modal .equip_process_img img{width: 100%; height: 100%; object-fit: cover; display: block; transition: 0.4s;}
.equip_modal .equip_process_item:hover .equip_process_img img{transform: scale(1.06);}

/* 제품 특징 - 리스트 */
.equip_modal .equip_feature{display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px;}
.equip_modal .equip_feature_item{display: flex; align-items: flex-start; gap: 14px; padding: 16px 18px; background: #f6f9fc; border: 1px solid #e7eef6; border-radius: 10px; transition: 0.25s;}
.equip_modal .equip_feature_item:hover{background: #eef5fc; border-color: #cfe0f0; transform: translateX(3px);}
.equip_modal .equip_feature_item .num{flex: 0 0 auto; width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; border-radius: 8px; background: linear-gradient(135deg, #004589, #0a67b8); color: #fff; font-size: 14px; font-weight: 700;}
.equip_modal .equip_feature_txt{flex: 1;}
.equip_modal .equip_feature_txt strong{display: block; font-size: 16px; font-weight: 700; color: #1a2a3a; line-height: 1.35;}
.equip_modal .equip_feature_txt em{display: block; margin-top: 4px; font-size: 14px; font-style: normal; color: #5a6b7b; line-height: 1.5;}

body.equip_modal_lock{overflow: hidden;}

/* 반응형 */
@media (max-width: 992px){
	.equip_modal .equip_process{grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 768px){
	.equip_modal .equip_modal_head{padding: 24px 56px 22px 24px;}
	.equip_modal .equip_modal_tit{font-size: 22px;}
	.equip_modal .equip_modal_body{padding: 26px 20px;}
	.equip_modal .equip_feature{grid-template-columns: 1fr;}
    .equip_modal .equip_modal_box{ width: 80%; max-width: 940px; max-height: 80vh; }
}
@media (max-width: 576px){
	.equip_modal .equip_modal_box{width: 94%; max-height: 92vh; border-radius: 12px;}
	.equip_modal .equip_modal_sub{font-size: 13px;}
	.equip_modal .equip_modal_subtit{font-size: 18px;}
	.equip_modal .equip_process{grid-template-columns: 1fr; gap: 14px;}
	.equip_modal .equip_modal_sec + .equip_modal_sec{margin-top: 34px;}
	.main_sec2 .equip-popup-open .equip-popup-more{margin-top: 18px; padding: 10px 22px; font-size: 15px; margin-left:0px}
}


/* ===== Product 슬라이더 (클릭 → 팝업) ===== */
.main_sec_prod{position: relative; width: 100%; margin-bottom: 100px;}
.main_sec_prod .title-wrap h2{color: #000;}

/* ===== 오시는길 (카카오지도) ===== */
.main_sec_map{width: 100%; margin-top: 40px;}
.main_sec_map .map_head{padding: 20px 100px 24px;}
.main_sec_map .map_head h2{color: #000;}
.main_sec_map .map_addr{margin-top: 12px; font-size: 16px; color: #555;}
.main_sec_map .map_addr i{color: #004589; margin-right: 8px;}
/* 지도 마커 라벨 (가운데 정렬) */
.sp_map_label{position: relative; display: inline-block; padding: 8px 16px; background: #fff; border: 1px solid #004589; border-radius: 6px; font-size: 14px; font-weight: 700; color: #111; text-align: center; white-space: nowrap; box-shadow: 0 2px 8px rgba(0,0,0,0.18);}
.sp_map_label::after{content: ""; position: absolute; left: 50%; bottom: -7px; transform: translateX(-50%); border-left: 7px solid transparent; border-right: 7px solid transparent; border-top: 7px solid #004589;}
.main_sec_map .kakao_map{width: 100%; height: 460px; background: #eaeef2;}
@media (max-width: 1024px){
	.main_sec_map .map_head{padding: 20px 20px 20px;}
}
@media (max-width: 576px){
	.main_sec_map .kakao_map{height: 320px;}
	.main_sec_map .map_addr{font-size: 15px;}
}
.main_sec_prod .prod_slider{position: relative; padding: 0 0px; margin-top: 20px;}
.main_sec_prod .prod_swiper{overflow: hidden; padding-bottom: 30px;}
.main_sec_prod .prod_card{cursor: pointer; background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 2px 4px 12px rgba(0,0,0,0.08);}
.main_sec_prod .prod_card:focus{outline: 2px solid #004589; outline-offset: 2px;}
.main_sec_prod .prod_thumb{position: relative; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; background: #f2f4f7;}
.main_sec_prod .prod_thumb img{width: 100%; height: 100%; object-fit: cover; display: block; transition: 0.3s;}
.main_sec_prod .prod_card:hover .prod_thumb img{transform: scale(1.05);}
.main_sec_prod .prod_zoom{display: none;}
.main_sec_prod .prod_info{padding: 16px 18px;}
.main_sec_prod .prod_cate{color: #004589; margin-bottom: 6px;}
.main_sec_prod .prod_name{color: #222; min-height: 3.6em; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
@supports not (aspect-ratio: 1 / 1){
	.main_sec_prod .prod_thumb{height: 0; padding-bottom: 100%;}
	.main_sec_prod .prod_thumb img{position: absolute; left: 0; top: 0;}
}

/* Product 슬라이더 화살표 (Equipment 와 동일 스타일) */
.main_sec_prod .prod_slider .swiper-button-prev,
.main_sec_prod .prod_slider .swiper-button-next{width: 38px; height: 38px; margin: 0; margin-top: 0; top: 50%; transform: translateY(-50%); background: #eeeeee !important; background-image: none !important; border-radius: 50%; box-shadow: none; z-index: 10; transition: 0.2s; display: flex; align-items: center; justify-content: center;}
.main_sec_prod .prod_slider .swiper-button-prev:hover,
.main_sec_prod .prod_slider .swiper-button-next:hover{background: #dddddd !important;}
.main_sec_prod .prod_slider .swiper-button-prev{left: 10px;}
.main_sec_prod .prod_slider .swiper-button-next{right: 10px;}
.main_sec_prod .prod_slider .swiper-button-prev::after,
.main_sec_prod .prod_slider .swiper-button-next::after{content: ''; display: block; width: 12px; height: 12px; border-top: 2px solid #000; border-right: 2px solid #000; transition: 0.2s; font-size: 0;}
.main_sec_prod .prod_slider .swiper-button-next::after{transform: rotate(45deg); margin-left: -4px;}
.main_sec_prod .prod_slider .swiper-button-prev::after{transform: rotate(-135deg); margin-right: -4px;}
.main_sec_prod .prod_slider .swiper-button-next:hover::after,
.main_sec_prod .prod_slider .swiper-button-prev:hover::after{border-color: #004589;}

/* 제품 팝업 - 이미지 중심 레이아웃 */
.prod_modal .equip_modal_body{display: flex; justify-content: center; align-items: flex-start; gap: 28px; padding: 30px 36px 36px;}
.prod_modal .prod_modal_img{width: 100%; max-width: 560px; border-radius: 12px; overflow: hidden; background: #f2f4f7;}
.prod_modal .prod_modal_img img{width: 100%; display: block;}
.prod_modal .equip_modal_sub{margin-top: 0; margin-bottom: 6px; font-size: 14px; color: rgba(255,255,255,0.85);}
.prod_modal .prod_desc{font-size: 16px; line-height: 1.7; color: #333; padding-left: 16px; border-left: 3px solid #004589;}
.prod_modal .prod_desc .prod_tags{display: block; margin-top: 14px; font-size: 14px; font-weight: 600; color: #004589; line-height: 1.9; word-break: keep-all;}
.prod_modal.has_spec .prod_desc + .prod_spec{margin-top: 20px;}

/* 상세 스펙 (있을 때만 노출) */
.prod_modal .prod_modal_spec{display: none;}
.prod_modal.has_spec .equip_modal_body{justify-content: space-between;}
.prod_modal.has_spec .prod_modal_img{flex: 0 0 46%; max-width: 46%;}
.prod_modal.has_spec .prod_modal_spec{display: block; flex: 1;}
.prod_modal .prod_spec{width: 100%;}
.prod_modal .prod_spec li{display: flex; align-items: flex-start; gap: 14px; padding: 14px 4px; border-bottom: 1px solid #eef1f5;}
.prod_modal .prod_spec li:first-child{padding-top: 0;}
.prod_modal .prod_spec li strong{flex: 0 0 84px; position: relative; padding-left: 14px; color: #004589; font-weight: 700; font-size: 15px;}
.prod_modal .prod_spec li strong::before{content: ""; position: absolute; left: 0; top: 7px; width: 5px; height: 5px; border-radius: 50%; background: #004589;}
.prod_modal .prod_spec li span{flex: 1; color: #333; font-size: 15px; line-height: 1.55;}

@media (max-width: 768px){
	.prod_modal.has_spec .equip_modal_body{flex-direction: column; align-items: stretch;}
	.prod_modal.has_spec .prod_modal_img{flex: none; max-width: 100%;}
}
@media (max-width: 576px){
	.main_sec_prod .prod_slider{padding: 0 28px;}
	.main_sec_prod{margin-bottom: 60px;}
	.prod_modal .equip_modal_body{padding: 22px 18px 26px;}
	.prod_modal .prod_spec li{flex-wrap: wrap; gap: 4px;}
	.prod_modal .prod_spec li strong{flex: 0 0 100%;}
}

/* 제품 팝업 - 넓은 레이아웃 (특징/스크린샷 포함 제품) */
.prod_modal.wide .equip_modal_body{flex-direction: column; align-items: stretch; gap: 0;}
.prod_modal.wide .prod_modal_img{display: none;}
.prod_modal.wide .prod_modal_spec{display: block; width: 100%; flex: none;}

ol {padding:0; margin:0; list-style:none;}

/* 특징 리스트 */
.prod_modal .prod_detail_subtit{display: flex; align-items: center; gap: 10px; font-size: 19px; font-weight: 700; color: #111; margin-bottom: 18px;}
.prod_modal .prod_detail_subtit::before{content: ""; width: 5px; height: 20px; border-radius: 3px; background: linear-gradient(#004589, #0a67b8);}
.prod_modal .prod_feat{counter-reset: pf;}
.prod_modal .prod_feat > li{position: relative; padding: 0 0 18px 46px; margin-bottom: 18px; border-bottom: 1px solid #eef1f5;}
.prod_modal .prod_feat > li:last-child{border-bottom: 0; margin-bottom: 0; padding-bottom: 0;}
.prod_modal .prod_feat > li::before{counter-increment: pf; content: counter(pf); position: absolute; left: 0; top: 2px; width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; border-radius: 8px; background: linear-gradient(135deg, #004589, #0a67b8); color: #fff; font-size: 14px; font-weight: 700;}
.prod_modal .prod_feat > li > strong{display: block; font-size: 16px; font-weight: 700; color: #1a2a3a; line-height: 1.45; padding-top: 5px;}
.prod_modal .prod_feat > li > ul{margin-top: 8px;}
.prod_modal .prod_feat > li > ul > li{position: relative; padding-left: 14px; color: #5a6b7b; font-size: 14px; line-height: 1.6;}
.prod_modal .prod_feat > li > ul > li::before{content: "–"; position: absolute; left: 0; color: #9bb0c4;}

/* 스크린샷 갤러리 */
.prod_modal .prod_shot_sec{margin-top: 34px;}
.prod_modal .prod_shots{display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px;}
.prod_modal .prod_shots .shot_img{width: 100%; aspect-ratio: 4 / 3; border-radius: 10px; overflow: hidden; background: #f2f4f7; border: 1px solid #eaeef2;}
.prod_modal .prod_shots .shot_img img{width: 100%; height: 100%; object-fit: cover; display: block;}
.prod_modal .prod_shots .shot_cap{margin-top: 10px; text-align: center; font-size: 14px; font-weight: 500; color: #333; line-height: 1.4;}
.prod_modal .prod_shots li:last-child:nth-child(odd){grid-column: 1 / -1;}
.prod_modal .prod_shots li:last-child:nth-child(odd) .shot_img{aspect-ratio: auto;}
.prod_modal .prod_shots li:last-child:nth-child(odd) .shot_img img{height: auto;}

/* 제품 팝업 - 커스텀 블록 (GRS 등) */
.prod_modal .prod_block_head{text-align: center; font-size: 22px; font-weight: 700; color: #1a7a3a; margin-bottom: 20px; letter-spacing: 0.5px;}
.prod_modal .prod_block_text{margin-bottom: 26px;}
.prod_modal .prod_block_text p{font-size: 15px; line-height: 1.75; color: #444; margin-bottom: 14px;}
.prod_modal .prod_block_text p:last-child{margin-bottom: 0;}
.prod_modal .prod_block_text p.lead{font-size: 17px; font-weight: 700; color: #1a2a3a; padding: 14px 18px; background: #f2f8f3; border-left: 4px solid #1a7a3a; border-radius: 4px; line-height: 1.6;}
.prod_modal .prod_block_text strong{color: #1a7a3a;}
.prod_modal .prod_block_img{margin-bottom: 20px; text-align: center;}
.prod_modal .prod_block_img img{max-width: 100%; display: inline-block; vertical-align: middle;}
.prod_modal .prod_block_img.grs_logo{margin: 0; padding: 24px 0 30px;}
.prod_modal .prod_block_img.grs_logo img{max-width: 200px; width: 55%;}
.prod_modal .prod_block_img.grs_full img{width: 100%; border-radius: 10px;}
.prod_modal .prod_block_gallery{display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-bottom: 20px;}
.prod_modal .prod_block_gallery li{border-radius: 8px; overflow: hidden; background: #f2f4f7; border: 1px solid #eaeef2;}
.prod_modal .prod_block_gallery li img{width: 100%; height: 100%; object-fit: cover; display: block; aspect-ratio: 1 / 1;}
@media (max-width: 576px){
	.prod_modal .prod_block_head{font-size: 19px;}
	.prod_modal .prod_block_text p.lead{font-size: 15px;}
	.prod_modal .prod_block_gallery{grid-template-columns: repeat(2, 1fr); gap: 10px;}
}

@media (max-width: 576px){
	.prod_modal .prod_shots{grid-template-columns: 1fr; gap: 16px;}
	.prod_modal .prod_feat > li{padding-left: 42px;}
}




/* main_sec5 */
.main_bg {background:#f5f5f5}
.main_sec5{width: 100%; padding: 100px 0 ; display: flex; flex-wrap: wrap; justify-content: space-between; }
.main_sec5 .notice{width: 48%; height: 420px;}
.main_sec5 .contact{width: 48%; background-image: url(../img/main/main_sec5_bg.png); background-repeat: no-repeat; background-position: center; background-size: cover; height: 420px; display: flex; align-items: center; justify-content: center;}
.main_sec5 .contact a{display: flex; align-items: center; flex-direction: column; text-align: center;}
.main_sec5 .contact a img{margin-bottom: 10px;}





/* 갤러리 상단 padding */
.main_sec5 .pic_lt.event .no-js .owl-carousel, .main_sec4 .pic_lt.event .owl-carousel.owl-loaded{padding-top: 120px;}

.owl-dots{display: none;}
.main_sec5 .pic_lt.event .owl-theme .owl-nav [class*=owl-]:hover{}
.main_sec5 .pic_lt.event .owl-carousel .owl-dots.disabled, .main_sec4 .pic_lt.event .owl-carousel .owl-nav.disabled{display: block;}

/* 좌우 버튼 */
.main_sec5 .pic_lt.event .owl-carousel .owl-nav{position: absolute; margin: 0; width: 138px; height: 38px; right: 0; top: 0;}
.main_sec5 .pic_lt.event .owl-carousel .owl-nav button.owl-next, .main_sec4 .pic_lt.event .owl-carousel .owl-nav button.owl-prev{margin: 0; position: absolute; width: 38px; height: 38px; border-radius: 0; background: url(../img/main/section4_left.png) no-repeat; background-position: center; background-color: none; outline: 0; border: 1px solid #bbb; box-sizing: border-box;}

.main_sec5 .pic_lt.event .owl-carousel .owl-nav button.owl-prev{left: 0;}
.main_sec5 .pic_lt.event .owl-carousel .owl-nav button.owl-next{right: 0; background-image: url(../img/main/section4_right.png);} 

/* 번호매김 */
/* .main_sec5 .pic_lt.event .owl-theme .owl-nav.disabled+.owl-dots{margin: 0; position: absolute; top: 0; right: 38px; width: 62px; height: 38px;}


.main_sec5 .pic_lt.event .owl-theme .owl-dots .owl-dot{position: absolute; width: 100%; height: 100%; left: 0; top: 0;}
.main_sec5 .pic_lt.event .owl-theme .owl-dots .owl-dot::after{display: block; position: absolute; top: 0; left: 0; content: "1 / 1"; width: 100%; height: 100%; line-height: 38px; background: none; opacity: 0; -ms-transform: skew(-0.1deg); -webkit-transform: skew(-0.1deg); transform: skew(-0.1deg); font-size: 14px;}
.main_sec5 .pic_lt.event .owl-theme .owl-dots .owl-dot span{margin: 0; width: 62px; height: 38px; border-radius: 0; position: absolute; top: 0; left: 0; opacity: 0; background: none;}

.main_sec5 .pic_lt.event .owl-theme .owl-dots .owl-dot.active::after{opacity: 1;}
.main_sec5 .pic_lt.event .owl-theme .owl-dots .owl-dot.active span{opacity: 1; background: none;}


.main_sec5 .pic_lt.event .owl-theme .owl-dots .owl-dot:first-child::after{content: "1 / 2";}
.main_sec5 .pic_lt.event .owl-theme .owl-dots .owl-dot:nth-child(2)::after{content: "2 / 2";} */




.main_sec5 .pic_lt.event .gall_text_area{position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); opacity: 0; transition-duration: 0.3s; transition-timing-function: ease-in-out;}

.main_sec5 .pic_lt.event .item:hover .gall_text_area{opacity: 1;}

.main_sec5 .pic_lt.event .text_box{display: table; width: 100%; height: 100%;}
.main_sec5 .pic_lt.event .text_box .text{display: table-cell; padding: 15px; vertical-align: bottom;}
.main_sec5 .pic_lt.event .text_box .text *{color: #fff;}
.main_sec5 .pic_lt.event .text .gall_title{font-size: 2px; font-weight: bold;}
.main_sec5 .pic_lt.event .text .gall_date{font-size: 14px; font-weight: 300;}


.default_banner .swiper-pagination-current {color:#000; }
.default_banner .swiper-pagination {left: 50px; text-align:left; font-size:22px; display:none}
.default_banner .swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {left:auto}
.default_banner .swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {cursor: pointer; opacity:1; display:none}
.default_banner .swiper-button-prev, .swiper-container-rtl .swiper-button-next {left:0; display:none}












@media screen and (max-width: 1460px){
    .main_sec1 .about-wrap .txt-wrap p br.none{display: none;}
}


@media screen and (max-width: 1400px){
    .main_sec2 .wrap ul li a{flex-direction: column; align-items: flex-start;}
}

@media screen and (max-width:1299px){
    .main_page {margin:0px 0px 0px 0px; }
	.main_page .font-45 {font-size:35px !important;}
	.main_banner .banner_tit {left:20px}
	.default_banner .swiper-button-prev, .swiper-container-rtl .swiper-button-next {left:20px}
	.main_banner .swiper-button-next {left:120px}
	.default_banner .swiper-pagination {font-size:18px; left:55px}
}	

@media screen and (max-width:1200px){
    .main_sec1::before{content: ""; background-color: #f5f5f5; width: 100%; height: 1000px; position: absolute; left: 0px; top: 0; z-index: -1;}

    .main_sec1 .about-wrap .txt-wrap{padding-left: 20px; width: 100%;}
    .main_sec1 .about-wrap .img-wrap{width: 100%; margin-top: 40px;}

    .main_sec4 .wrap ul li a span{margin-left: 0;}

    .main_sec5 .notice{width: 100%; margin: 0 20px; height: auto;}
    .main_sec5 .contact{width: 100%; margin-top: 40px;}   
	.main_sec4 {margin-bottom:0px}
	.main_sec1 {padding:100px 0px 0px}
	.main_sec1 .about-wrap .img-wrap .fir-img {width:100%}

    

}

@media screen and (max-width:1024px){
    .main_sec4::after{width: 100%;}
    .main_sec4 .wrap ul li{flex-direction: column;}
    .main_sec4 .wrap ul li a{order: 2; margin-top: -100px; width: 90%;}
    .main_sec4 .wrap ul li .click-bg{order: 1; margin-left: 0; width: 100%;     background-size: contain;}
	.wrap {padding:100px 20px 0px}	
    
}


@media screen and (max-width: 900px){
	.main_page .font-45 {font-size:22px !important;}
	.main_banner .banner_tit {left:10px; bottom:120px}


}



@media screen and (max-width:1024px){
    .main_sec2 .wrap ul li{height: 340px;}
    .main_sec2 .wrap ul li > div{left: 30px; right: 30px; bottom: 30px;}
}

@media screen and (max-width:768px){
    .main_sec2 .wrap ul li{width: 100%; margin: 0; height: 300px;}
    .main_sec2 .wrap ul li > div{left: 24px; right: 24px; bottom: 24px;}
    .main_sec2 .equip-popup-open .equip-popup-more{margin-top: 16px;margin-left:0px}
}

@media screen and (max-width:480px){
    .main_sec2 .wrap ul li{height: 260px; background-position: center;}
    .main_sec2 .wrap ul li > div{left: 18px; right: 18px; bottom: 18px;}
    .main_sec2 .equip-popup-open .equip-popup-more{margin-top: 14px; padding: 9px 18px; font-size: 14px;}
}





@media screen and (max-width:710px){


}


@media screen and (max-width:600px){


}
@media screen and (max-width:480px){
    .main_sec4 .wrap ul li a{height: 280px;}
    .main_sec4 .wrap ul li a:hover span p:nth-child(1)::before{width: 10px; right: -10%;}
    .main_sec4 .wrap ul li a:hover span p:nth-child(1)::after{width: 110%;}



}

@media screen and (max-width : 1400px) {
    .font-12{font-size: 12px !important; line-height: 180%;}
    .font-14{font-size: 14px !important; line-height: 180%;}
    .font-16{font-size: 16px !important; line-height: 180%;}
    .font-17{font-size: 17px !important; line-height: 180%;}
    .font-18{font-size: 18px !important; line-height: 180%;}
    .font-20{font-size: 20px !important; line-height: 180%;}
    .font-22{font-size: 22px !important; line-height: 180%;}
    .font-24{font-size: 24px !important; line-height: 180%;}
    .font-25{font-size: 25px !important; line-height: 180%;}
    .font-27{font-size: 27px !important; line-height: 180%;}
    .font-30{font-size: 30px !important; line-height: 180%;}
    .font-35{font-size: 32px !important; line-height: 160%;}
    .font-40{font-size: 38px !important; line-height: 160%;}
    .font-45{font-size: 42px !important; line-height: 160%;}
    .font-50{font-size: 48px !important; line-height: 160%;}
    .font-55{font-size: 52px !important; line-height: 160%;}
    .font-60{font-size: 55px !important; line-height: 160%;}
    .font-64{font-size: 60px !important; line-height: 160%;}
    .font-70{font-size: 65px !important; line-height: 160%;}
}
@media screen and (max-width : 1000px) {
    .font-12{font-size: 12px !important; line-height: 180%;}
    .font-14{font-size: 14px !important; line-height: 180%;}
    .font-16{font-size: 16px !important; line-height: 180%;}
    .font-17{font-size: 17px !important; line-height: 180%;}
    .font-18{font-size: 17px !important; line-height: 180%;}
    .font-20{font-size: 18px !important; line-height: 180%;}
    .font-22{font-size: 20px !important; line-height: 180%;}
    .font-24{font-size: 22px !important; line-height: 180%;}
    .font-25{font-size: 24px !important; line-height: 180%;}
    .font-27{font-size: 25px !important; line-height: 180%;}
    .font-30{font-size: 28px !important; line-height: 180%;}
    .font-35{font-size: 30px !important; line-height: 160%;}
    .font-40{font-size: 34px !important; line-height: 160%;}
    .font-45{font-size: 38px !important; line-height: 160%;}
    .font-50{font-size: 40px !important; line-height: 160%;}
    .font-55{font-size: 45px !important; line-height: 160%;}
    .font-60{font-size: 50px !important; line-height: 160%;}
    .font-64{font-size: 55px !important; line-height: 160%;}
    .font-70{font-size: 60px !important; line-height: 160%;}
}
@media screen and (max-width : 768px) {
    .font-12{font-size: 11px !important; line-height: 180%;}
    .font-14{font-size: 12px !important; line-height: 180%;}
    .font-16{font-size: 15px !important; line-height: 180%;}
    .font-17{font-size: 16px !important; line-height: 180%;}
    .font-18{font-size: 17px !important; line-height: 180%;}
    .font-20{font-size: 18px !important; line-height: 180%;}
    .font-22{font-size: 20px !important; line-height: 180%;}
    .font-24{font-size: 22px !important; line-height: 180%;}
    .font-25{font-size: 23px !important; line-height: 180%;}
    .font-27{font-size: 24px !important; line-height: 180%;}
    .font-30{font-size: 26px !important; line-height: 180%;}
    .font-35{font-size: 28px !important; line-height: 160%;}
    .font-40{font-size: 30px !important; line-height: 160%;}
    .font-45{font-size: 35px !important; line-height: 160%;}
    .font-50{font-size: 38px !important; line-height: 160%;}
    .font-55{font-size: 40px !important; line-height: 160%;}
    .font-60{font-size: 45px !important; line-height: 160%;}
    .font-64{font-size: 50px !important; line-height: 160%;}
    .font-70{font-size: 55px !important; line-height: 160%;}
}
@media screen and (max-width : 500px) {
    .font-12{font-size: 10px !important; line-height: 180%;}
    .font-14{font-size: 11px !important; line-height: 180%;}
    .font-16{font-size: 14px !important; line-height: 180%;}
    .font-17{font-size: 15px !important; line-height: 180%;}
    .font-18{font-size: 15px !important; line-height: 180%;}
    .font-20{font-size: 17px !important; line-height: 180%;}
    .font-22{font-size: 19px !important; line-height: 180%;}
    .font-24{font-size: 21px !important; line-height: 180%;}
    .font-25{font-size: 22px !important; line-height: 180%;}
    .font-27{font-size: 23px !important; line-height: 180%;}
    .font-30{font-size: 25px !important; line-height: 180%;}
    .font-35{font-size: 27px !important; line-height: 160%;}
    .font-40{font-size: 29px !important; line-height: 160%;}
    .font-45{font-size: 32px !important; line-height: 160%;}
    .font-50{font-size: 35px !important; line-height: 160%;}
    .font-55{font-size: 38px !important; line-height: 160%;}
    .font-60{font-size: 40px !important; line-height: 160%;}
    .font-64{font-size: 45px !important; line-height: 160%;}
    .font-70{font-size: 50px !important; line-height: 160%;}
}





