@charset "utf-8";

/* ========== 메인1: 제품소개 ========== */
#main1 { width:100%; margin:0 auto; text-align:center; background-color:#fff; padding:24px 48px;}
.main1_ul { display:flex; justify-content:center; flex-wrap:nowrap; gap:48px; padding-top:12px; }
.main1_ul li { position:relative; overflow:hidden; border-radius:12px; }
.main1_ul li img { display:block; width:100%; height:auto; object-fit:contain; object-position:center; }
.main1_ul li::before { content:""; position:absolute; inset:0; background:rgba(0,0,0,0.6); opacity:0; transition:opacity .3s ease; z-index:1; }
.main1_ul li:hover::before { opacity:1; }
.main1_ul li .overlay-content { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:1.5em; opacity:0; transition:opacity .3s ease .1s; z-index:2; }
.main1_ul li:hover .overlay-content { opacity:1; }
.main1_ul li .overlay-content .overlay-title { font-size:2.4rem; font-weight:700; color:#fff; margin:0; font-family:"Pretendard ExtraBold" }
.main1_ul li .overlay-content .overlay-subtitle { font-size:1.1rem; color:#ddd; margin:0; }
.main1_ul li .overlay-content .overlay-desc { font-size:1.3rem; color:#fff; line-height:1.2; margin:24px 0 36px; max-width:100%; }
.main1_ul li .overlay-content .overlay-btn { display:inline-block; padding:.6em 2.4em; font-size:1rem; color:#fff; border:1px solid #ddd; border-radius:30px; text-decoration:none; transition:background .2s, color .2s; }
.main1_ul li .overlay-content .overlay-btn:hover { background:#fff; color:#000; }

/* ========== 메인2: 사업실적 ========== */
#main2 { width:100%; height:auto; margin:0 auto; text-align:center;  background-color:#fff;}
.main2_ul { width:96%; max-width:1440px; margin:0 auto; display:flex; justify-content:space-between; padding-top:24px; overflow:hidden; }
.main2_ul img { width:100%; height:auto; background-color:#fff; cursor:pointer; border-radius:12px; }
#main2 .swiper-slide { border-radius:12px; }
.swiper-pagination .swiper-pagination-bullet-active { width:10px !important; height:10px !important; background-color:#f4f4f4 !important; }

/* ========== 게시판(상담하기) ========== */
#bo_list { width:100%; max-width:1280px; margin:0 auto; padding:68px 24px; }
#bo_v_info {  }
#bo_v_atc {  }width:100%; max-width:1280px; margin:0 auto; padding:68px 24px;
#bo_v_img { text-align:center; }
#bo_v_con {  }

/* ========== 하단 배너 영역 ========== */
#contact { width:100%; position:relative; margin:0 auto;text-align:center; }
#contact img { display:block; width:100%; height:266px; object-fit:cover; object-position:center; }
#contact_cnt { position:absolute; top:50%; left:50%; width:90%; transform:translate(-50%,-50%); text-align:center; color:#fff; padding:20px; box-sizing:border-box; font-size:2rem; font-family:"Pretendard Medium"; }
#contact_cnt h2 { font-family:"Pretendard ExtraBold"; }
.contact-btn, .contact-btn2 { display:inline-block; margin:10px 24px; padding:12px 68px; border:1px solid #fff; background:transparent; color:#fff; border-radius:100px; text-decoration:none; transition:background-color .3s, color .3s, border-color .3s; font-size:clamp(.6rem,5vw,1.2rem); }
.contact-btn:hover, .contact-btn2:hover { background-color:#f07b27; color:#fff; border-color:transparent; }

/* ========== 메인3 ========== */
.main3 { width:100%; margin-top:68px; box-sizing:border-box; padding:clamp(24px,6vw,56px) 0; background:#f5f7fa; }
.main3_box { width:100%; max-width:1440px; margin:0 auto; display:flex; justify-content:space-between; }
.main3_cnt1, .main3_cnt2 { width:49%; }
.main3-padding{width:100%; padding:68px 0;}
/* ========== 반응형 ========== */
@media (max-width:1680px) {
  .main1_ul { width:100%; padding:28px 48px; }
  .main1_ul li { width:100%; padding:0; }
  .latest_top_wr { width:100%; }
  .main3_box { width:96%; }
}
@media (max-width:1080px) {
  .main1_ul { flex-wrap:wrap; }
  .main1_ul li .overlay-content .overlay-desc { font-size:1.2rem; }
  .main1_ul img { margin:0 auto; }
  #logo img { width:90%; }
  .main3_box { flex-wrap:wrap; }
  .main3_cnt1 { min-width:380px; margin-right:12px; }
  .main3_cnt2 { min-width:380px; }
}
@media (max-width:820px) {
  .main3_box { justify-content:center; }
  .main3_cnt1, .main3_cnt2 { width:100%; min-width:0; }
  .main3_cnt1 { margin-bottom:24px; }
}
@media (max-width:670px) {
  .main1_ul { padding:24px; }
  .latest_top_wr { display:flex; flex-wrap:wrap; }
  #logo img { width:70%; }
  #contact_cnt { width:100%; font-size:1.4rem; padding:0; }
  .contact-btn, .contact-btn2 { margin:0; padding:6px 48px; }
  .main1_ul li img { padding:0; }
}
@media (max-width:560px) {
  .main1_ul li { padding:0; }
  .main1_ul li .overlay-content .overlay-title { font-size:1.4rem; }
  .main1_ul li .overlay-content .overlay-desc { font-size:.8rem; }
  .main1_ul li .overlay-content .overlay-btn { padding:.4rem 2rem; font-size:.8rem; }
  #contact_cnt { font-size:1rem; }
  .contact-btn, .contact-btn2 { margin-bottom:6px; }
}