@charset "utf-8"; .top_title { line-height: 1.4; margin-bottom: 4rem; } 
.top_title p { font-weight: 600; } 
/* sub_com */
.flex_box { display: flex; flex-direction: row; flex-wrap: wrap; align-content: center; align-items: center; position: relative; overflow: hidden; justify-content: space-between; } 
.flex_box.top { align-items: flex-start; } 
.flex_box.center { justify-content:center; } 
.flex_box.both { justify-content: space-between; } 
.flex_box.stretch { align-items: stretch; } 
/* sub visual */
.sub_visual_wrap { position: relative; } 
.sub_visual_box { width: 100%; height: 67rem; overflow: hidden; position: relative; } 
.sub_page_visual { background-repeat: no-repeat; background-position: center; background-size: cover; animation: bg-active 5s; height: 100%; position: relative; } 
/* .sub_page_visual::before { content:''; display:block; position:absolute; left:0; background: #11111152; width: 100%; height: 100%; } */
.sub1 { background-image: url(../../img/sub_visual_1.jpg); } 
.sub2 { background-image: url(../../img/sub_visual_2.jpg); } 
.sub3 { background-image: url(../../img/sub_visual_3.jpg); } 
.sub4 { background-image: url(../../img/sub_visual_4.jpg); } 
.sub5 { background-image: url(../../img/sub_visual_5.jpg); } 
.sub6 { background-image: url(../../img/sub_visual_6.jpg); } 
.sub7 { background-image: url(../../img/sub_visual_7.jpg); } 
.sub8 { background-image: url(../../img/sub_visual_8.jpg); } 

.sub7.install_2 { background-image: url(../../img/sub_visual_7_1.jpg); } 
.sub7.install_3 { background-image: url(../../img/sub_visual_7_2.jpg); } 
.sub7.install_4 { background-image: url(../../img/sub_visual_7_3.jpg); } 



 /* 애니메이션 */
/* .sub_visual_3 { animation: bg-active 5s; } */
@keyframes bg-active { 
 0% { transform: scale(1.09); opacity: 0.9; } 
100% { transform: scale(1); opacity: 1; } 
 } 
/* sub_visual */
.sub_visual_txt { position: absolute; bottom: 11rem; left: 50%; transform: translateX(-50%); z-index: 10; color: #fff; max-width: 1540px; width: 94%; margin: 0 auto; display: flex; align-items: flex-end; } 
.visual_text { font-size: 8rem; line-height: 0.8; font-weight: 600; margin-right: 5rem; } 

/* top menu */
.show_sub_menu { border-bottom: 1px solid #dcdcdc; } 
.top_include_wrap { position: relative; } 
.top_include_wrap .sub_depth2 { display: flex; justify-content: center; height: 8rem; flex-wrap: nowrap; } 
.top_include_wrap .sub_depth2 li { flex: 1; text-align: center; font-size: 1.7rem; height: 100%; transition: all .3s; position: relative; max-width: 22rem; } 
.top_include_wrap .sub_depth2 li::before { content:''; display:block; position:absolute; width: 0%; left:0; bottom: 0; height:2px; background:var(--main-color); transition:all .3s; } 
.top_include_wrap .sub_depth2 li:hover::before, .top_include_wrap .sub_depth2 li.on::before { width:100%; } 
.top_include_wrap .sub_depth2 li:hover, .top_include_wrap .sub_depth2 li.on { color: var(--main-color); } 
.top_include_wrap .sub_depth2 li:hover a, .top_include_wrap .sub_depth2 li.on a { color: inherit; } 
.top_include_wrap .sub_depth2 li a { height: 100%; display: flex; justify-content: center; align-items: center; color: #999; font-weight: 600; } 
.visual_menu_wrap .depth_wrap { color: #fff; display: flex; justify-content: center; align-items: center; } 
.visual_menu_wrap .depth_wrap > div { position: relative; padding: 0rem 1rem; font-size: 1.8rem; } 
.visual_menu_wrap .depth_wrap > div:last-child::after { display:none } 
.visual_menu_wrap .depth_wrap > div.home_btn { padding-right: 1rem; padding-left: 0; } 
.visual_menu_wrap .depth_wrap > div.last::after { display: none; } 
.depth_name { font-size: 17px; padding: 0 0.5rem; cursor: pointer; } 
.com_depth { position: absolute; top: 38px; left: 50%; transform: translateX(-50%); font-size: 15px; width: 100%; text-align: center; background: #ff00009e; border-radius: 5px; color: #fff; font-weight: 500; padding: 1rem 0; } 
.com_depth li a { padding: 0.2rem 0; } 
/* ============================================================
 FONT WEIGHT UTILITY CLASSES
 ============================================================ */
.bold { font-weight: 700; } 
.fw_300 { font-weight: 300; } 
.fw_400 { font-weight: 400; } 
.fw_500 { font-weight: 500; } 
.fw_600 { font-weight: 600; } 
.fw_700 { font-weight: 700; } 
.fw_800 { font-weight: 800; } 

/* 회사소개 */
.bg_blue { background: #f7fbff; } 
.red { color: #ff0f0f; font-weight: 800; } 
.sub_page { padding-bottom: 6rem; } 
.sub_page.oda h2.section-title { 
 font-size: 2.6rem; 
 } 
.sub_page h2 { font-size: 3rem; line-height: 1.4; } 
.sub_page .sub_title { margin-top: 15rem; } 
.section-label { color: #b4b4b4; font-weight: 600; margin-bottom: 2rem; } 
.sub_title .section-title { font-weight: 500; } 
.sub_title h2 { font-size: 4rem; margin-bottom: 2rem; } 
.div_line .img_box { z-index: 1; display: block; position: relative; } 
.div_line { position: relative; margin-bottom: 3rem; } 
.div_line::after { content:''; display:block; position:absolute; top:50%; width:100%; height: 1px; background:#dcdcdc; z-index: 0; } 
.sub_page section { /* margin-bottom: 10rem; */margin: 15rem auto; } 
.p_wrap p { line-height: 1.6; margin-bottom: 2rem; letter-spacing: 0.2px; font-weight: 400; } 
.p_wrap >*:last-child { margin-bottom:0; margin-top: 5rem; } 
#about .about_1 { display: flex; flex-direction: row; flex-wrap: wrap; align-items: stretch; gap: 6rem; margin-top: 22rem; margin-bottom: 12rem; } 
#about .left_box { width: 49%; position: relative; /* height: 58rem; */ } 
#about .left_box .img_box { position: absolute; left: 0; top: 0; border-radius: 10px; overflow: hidden; } 
#about .left_box .img_box:nth-child(1) { top: -10rem; } 
#about .left_box .img_box:nth-child(2) { top: 7rem; left: 21rem; } 
#about .right_box { flex: 1; } 
#about .right_box h2 { margin-bottom: 3rem; } 
#about .sign_wrap { text-align: right; } 
#about .sign_wrap p { font-weight: 700; } 
#about .sign_img img { margin-right: 0; } 
#about .about_2 { background: #f9fbff; padding: 15rem 0; } 
#about .center_tit { text-align: center; margin-bottom: 5rem; } 
#about .bottom { font-weight: 700; } 
#about .hr { margin: 3.4rem 0 4rem; } 
:root { --shadow-card: 0 6px 20px rgba(27, 35, 80, 0.06); --shadow-card-hover: 0 10px 28px rgba(27, 35, 80, 0.10); --radius-card: 14px; } 

/* ---------------------------------------------------------------------- */
/* 회사개요 그리드 */
/* ---------------------------------------------------------------------- */
.about_2_1 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2.4rem; margin-bottom: 3.4rem; } 
.about_2_1 .box { background: #ffff; border-radius: var(--radius-card); box-shadow: var(--shadow-card); padding: 3rem 4rem; transition: box-shadow 0.25s ease, transform 0.25s ease; display: flex; flex-direction: column; justify-content: space-between; min-height: 190px; } 
.about_2_1 .box img { border-radius: 50%; } 
.about_2_1 .box:hover { box-shadow: var(--shadow-card-hover); transform: translateY(-3px); } 
/* 기업형태 / 사업분야: 4열 그리드에서 2칸씩 차지 */
.about_2_1 .box5,
.about_2_1 .box6 { grid-column: span 2; } 
.about_2_1 .top { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 5rem; } 
.about_2_1 .top small { font-size: 1.7rem; font-weight: 700; color: var(--main-color); margin-top: 0; } 
/* 사업분야 리스트 */
.about_2_1 .box6 .bottom li { margin-bottom: 8px; } 
.about_2_1 .box6 .bottom li:last-child { margin-bottom: 0; } 
.about_2_1 .box6 .bottom strong { font-weight: 700; /* color: var(--c-navy); */margin-right: 4px; } 
.about_2_1 .box6 .bottom span { color: #999; font-weight: 600; } 
/* 기업형태 배지형 텍스트 */
.about_2_1 .box5 .bottom { font-weight: 700; } 
/* 유튜브 영상 */
.youtube_wrap { position: relative; width: 100%; /* 16:9 */
 border-radius: 18px; overflow: hidden; box-shadow: var(--shadow-card); } 
.youtube_wrap iframe { width: 100%; /* height: 400px; */aspect-ratio: 4 / 2; display: block; } 
/* 경영이념 */
.manage_wrap { margin: 0 auto; list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.4rem; } 
.manage_wrap li { background: var(--c-card); border: 1px solid var(--c-border); border-radius: var(--radius-card); padding: 6rem 6rem; text-align: center; transition: box-shadow 0.25s ease, transform 0.25s ease; box-shadow: var(--shadow-card); } 
.manage_wrap li h3 { margin-top: 3rem; } 
.manage_wrap li p { line-height: 1.7; } 
.manage_wrap li:hover { box-shadow: var(--shadow-card-hover); transform: translateY(-3px); } 
.manage_wrap .img_box img { width: 100%; height: 100%; object-fit: contain; } 
/* 점 + 좌우 선으로 구성된 구분선 */
.manage_wrap .hr.dot { position: relative; display: block; width: 100%; height: 1px; background: #dcdcdc; } 
.manage_wrap .hr.dot::before { content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 1.3rem; height: 1.3rem; border-radius: 50%; background: var(--main-color); } 
.manage_wrap .hr.dot::after { content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 0.7rem; height: 0.7rem; border-radius: 50%; background: #fff; } 

/* 태양광1 - 우수제품*/
:root { --blue:#0b6bb6; --blue-dark:#084d85; --blue-light:#eaf3fb; --ph-bg:#dce9f5; --ph-border:#b9d3ea; --text-dark:#1c1c1c; --text-gray:#5c5c5c; --text-light-gray:#8a8a8a; --line:#e6e6e6; --bg-soft: #f9fcff; --radius:10px; --max:1200px; } 

#solar1 .section-hero .inner_wrap { display: flex; flex-direction: row; justify-content: center; gap: 3rem; } 
#solar1 .section-hero .hero-copy { flex: 0 1 46%; } 

 /* ===== shared bits ===== */
.eyebrow-row { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; } 
.section-title { font-weight:700; color:var(--text-dark); } 
.more-btn { width:36px; height:36px; flex:0 0 auto; border:1px solid var(--line); border-radius:50%; background:#fff; color:var(--text-gray); display:flex; align-items:center; justify-content:center; letter-spacing:2px; transition:background .2s ease, transform .2s ease, border-color .2s ease; position:relative; } 
.more-btn:hover { background:var(--blue); color:#fff; border-color:var(--blue); transform:translateY(-2px); } 
.more-menu { position:absolute; top:44px; right:0; background:#fff; border:1px solid var(--line); border-radius:8px; box-shadow:0 8px 24px rgba(0,0,0,.08); min-width:140px; padding:6px; opacity:0; visibility:hidden; transform:translateY(-6px); transition:opacity .18s ease, transform .18s ease, visibility .18s; z-index:20; } 
.more-menu.open { opacity:1; visibility:visible; transform:translateY(0); } 
.more-menu button { display:block; width:100%; text-align:left; padding:9px 10px; border:none; background:none; border-radius:6px; color:var(--text-dark); } 
.more-menu button:hover { background:var(--bg-soft); color:var(--blue); } 
.ph { background:linear-gradient(135deg,var(--ph-bg),#eef5fb); border:1px dashed var(--ph-border); border-radius:var(--radius); width:100%; position:relative; overflow:hidden; } 
.ph::after { content:""; position:absolute; inset:0; background:repeating-linear-gradient(135deg, rgba(11,107,182,.05) 0 12px, transparent 12px 24px); } 
.ph-icon { } 
.reveal { opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease; } 
.reveal.in { opacity:1; transform:translateY(0); } 

.sub_page .btn { display:inline-flex; align-items:center; gap: 1rem; padding: 0rem 2.7rem; border-radius: 50px; border:1px solid var(--text-dark); background:#fff; color:var(--text-dark); font-weight:600; transition:background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease; } 
.sub_page .btn:hover { background:var(--text-dark); color:#fff; transform:translateY(-2px); box-shadow:0 8px 18px rgba(0,0,0,.15); } 
.sub_page .btn .ic { display:inline-block; width:14px; height:14px; border:1.5px solid currentColor; border-radius:3px; } 

 /* ===================== HERO ===================== */
#solar1 { padding-bottom: 0; } 
#solar1 .hero-logos { display:flex; gap: 1rem; margin-bottom: 3rem; } 
#solar1 .hero-desc { margin: 3.4rem 0; line-height: 1.6; } 
#solar1 .hero-actions { display:flex; flex-direction:column; gap: 2rem; max-width: 26rem; } 
#solar1 .hero-actions .btn { justify-content:space-between; height: 6rem; } 
#solar1 .hero-actions .btn a { display: flex; align-items: center; justify-content: space-between; width: 100%; font-size: 1.8rem; } 
#solar1 .hero-media .ph { aspect-ratio:4/3; } 
#solar1 .info-grid { display:grid; grid-template-columns:1fr 1fr; gap: 3rem; margin-top: 3rem; width: 100%; } 
#solar1 .info-box { box-shadow: var(--shadow-card); border-radius:var(--radius); overflow: hidden; background:#fff; transition:box-shadow .25s ease, border-color .25s ease, transform .25s ease; } 
#solar1 .info-box:hover { box-shadow:0 10px 26px rgba(11,107,182,.12); border-color:var(--blue); transform:translateY(-3px); } 
#solar1 .info-box .box1 { font-weight:700; padding: 3rem 4rem; font-size: 2.2rem; background: #f2f4f6; } 
#solar1 .info-box .box2 { padding: 3rem 4rem; font-size: 1.8rem; } 
 /* ===================== FEATURES ===================== */
.section-features { background:var(--bg-soft); padding: 15rem 0; } 
.sub_header { margin-bottom: 8rem; } 
.feature-card { background:#fff; box-shadow: var(--shadow-card); border-radius:var(--radius); padding: 4rem 3rem; display:flex; gap: 2rem; transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease; flex: 1 1 32%; align-items: center; min-height: 24rem; flex-wrap: wrap; } 
.feature-card:hover { transform:translateY(-6px); box-shadow:0 14px 30px rgba(0,0,0,.08); border-color:var(--blue); } 
.feature-row-2 { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 2.4rem; margin-bottom: 2.4rem; } 
.feature-row-2 > div { flex: 0 1 33.3333%; } 
.feature-row-3 { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 2.4rem; margin-bottom: 2.4rem; } 
.feature-row-4 > div { flex: 1 1 47%; } 
.feature-row-4 { display: flex; flex-wrap: wrap; align-items: stretch; gap: 3rem; } 
.feature-card .info_box { flex: 1; } 
.feature-card .info_box p:nth-child(1) { font-weight: 700; margin-bottom: 2rem; } 
.mid_tit { padding-bottom: 1rem; font-weight: 600; font-size: 1.8rem; color: var(--color-accent); } 
.div_2 { display: flex; justify-content: center; align-items: center; gap: 4rem; margin-bottom: 10rem; } 
.div_2 .img_box { } 
.div_2 .info_box { padding: 0 2rem; flex: 1; } 
.solar2 .div_2 .info_box { word-break: keep-all; } 
.solar2 .div_2 .info_box .sub_header { margin-bottom: 2rem; } 
.solar2 .div_2 .info_box .num_list li { padding: 0.5rem 0; } 
.solar2 .div_2 .info_box .num_list li .num { margin-right: 0.8rem; } 
.div_2 .info_box p { margin-bottom: 1rem; } 
.div_2 .info_box .sub_list li { font-size: 1.9rem; } 
.div_2 .info_box .sub_list li::before { top: 18px; } 
.solar2 .section-features { background: #f7fbff; margin-bottom: 0; } 
.solar2 .section-platform { margin-top: 0; } 
.div_3 { display: flex; justify-content: center; align-items: stretch; gap: 3rem; flex-wrap: wrap; } 
.div_3 li { display: flex; flex-direction: column; align-items: center; padding: 3rem 2rem; text-align: center; flex: 1; background: #fff; border-radius: var(--radius); box-shadow: var(--shadow-card); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; justify-content: flex-start; } 
.div_3 li .ph-icon { margin-right: 0; width: 28%; margin-bottom: 2rem; } 
.div_3 li .info_box { flex: 1; display: flex; flex-direction: column; justify-content: flex-start; } 
.div_3 li .info_box p { font-size: 1.8rem; font-weight: 600; } 
.div_3 li .small { font-size: 0.9em; font-weight: 400; } 
.section-busi .div_3 { display: flex; flex-wrap: wrap; gap: 0; } 
.div_3_card { flex: 1 0 32%; border-radius: 1.5rem; padding: 4rem; position: relative; } 
.div_3_card:nth-child(2n) { background: #ededed8f; } 
.div_3_card .ph-icon { position: absolute; right: 3rem; top: 3rem; width: 70px; } 
.div_3_card .info_box { height: 100%; } 
.div_3_card .info_box span { width: 4.2rem; height: 4.2rem; background: var(--main-color); color: #fff; border-radius: 0.6rem; display: flex; justify-content: center; align-items: center; font-size: 2rem; font-weight: 500; margin-bottom: 4rem; } 
.div_3_card .info_box p { font-weight: 600; transition:all .2s;} 
.div_3_card .info_box p.mid_tit { color: #515151; font-weight: 400; word-break: keep-all; width: 79%; margin-top: 1rem; } 
.section-busi .div_3_card:hover .info_box p{color:var(--main-color);}
#oda .div_3_card .info_box span { width: fit-content; padding: 0rem 2rem; margin-bottom: 3rem; } 
#oda .div_3_card .info_box p.mid_tit { width: 100%; } 
#oda .num_list li { gap: 1rem; padding: 0.4rem; font-weight: 500; } 
#oda small { font-size: 1.6rem; padding-top: 1rem; display: block; color: #4c4c4c; } 


 /* ===================== PROBLEM ===================== */
.problem-head { } 
.problem-desc { font-weight: 600; margin-top: 3rem; } 
.sub_page_img { box-shadow: var(--shadow-card-hover); border-radius: var(--radius); overflow: hidden; background: #fff; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; padding: 6rem 2rem; } 
hr.divider { border:none; border-top:1px solid var(--line); width: 100%; margin:0 auto; display: block; margin-top: 8rem; } 
 /* ===================== SYSTEM ===================== */
#solar1 .info-box .box2 { padding: 3rem 4rem; font-size: 1.8rem; } 
.system-media .ph { aspect-ratio:16/8.6; margin-bottom:24px; } 
.system-table { display:grid; grid-template-columns:repeat(3,1fr); margin-top: 4.5rem; gap: 2.4rem; } 
.system-col { border-radius: var(--radius-card); overflow: hidden; box-shadow: var(--shadow-card); } 
.system-col ul { padding: 3rem 3rem; } 
.system-col:last-child { border-right:none; } 
.system-col p { font-weight:700; padding: 1rem 4rem; font-size: 2rem; height: 8rem; display: flex; background: #f2f4f6; text-align: center; justify-content: center; align-items: center; } 
.system-col .fs_16 { font-weight:700; margin-bottom:14px; } 
.system-col ul li { position:relative; padding-left:12px; margin-bottom:6px; word-break: keep-all; } 
.system-col ul li::before { content:""; position:absolute; left:0; width: 2px; height: 2px; background: #111; top: 14px; } 
 /* ===================== PLATFORM (dark) ===================== */
.section-platform { background: url(../../img/soloar_battery_bg.jpg) no-repeat center center/cover; color:#fff; text-align:center; padding: 15rem; } 
.platform-title { margin-bottom:22px; } 
.platform-desc { margin-bottom: 4.8rem; margin-top: 4.5rem; } 
.platform-media .ph { max-width:720px; margin:0 auto; aspect-ratio:16/9; background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.03)); border-color:rgba(255,255,255,.25); } 
.platform-media .ph::after { background:repeating-linear-gradient(135deg, rgba(255,255,255,.06) 0 12px, transparent 12px 24px); } 
 /* ===================== COMPARISON ===================== */
.compare-head { margin-bottom:34px; } 
.compare-cols { display:grid; grid-template-columns:1fr 1fr; gap: 3rem; margin-bottom: 16rem; } 
.compare-cols .compare-col { box-shadow: var(--shadow-card-hover); border-radius: 15px; overflow: hidden; background: #fff; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; padding: 4rem; } 
.compare-col-title { font-weight:700; margin-bottom: 2rem; } 
.compare-col-title span { position: relative; bottom: 2px; } 
.compare-col .ph { aspect-ratio:16/10; margin-bottom:10px; } 
.compare-note { color:var(--text-light-gray); padding-left: 2rem; padding-top: 3rem; } 
.compare-summary { margin-bottom: 8rem; } 
.compare-table { width:100%; border-collapse:collapse; overflow:hidden; } 
.compare-table th, .compare-table td { border:1px solid var(--line); padding: 1.4rem; text-align:center; font-size: 1.8rem; word-break: keep-all; } 
.compare-table thead th { background: var(--main-color); color:#fff; font-weight:700; font-size: 2rem; } 
.compare-table td:first-child { background:var(--bg-soft); } 
.compare-table .ph { aspect-ratio:16/10; margin:0 auto; } 
.compare-table .col-highlight { position:relative; } 
.col-highlight { border-left: 3px solid red !important; border-right: 3px solid red !important; } 

/* 첫 번째 행 상단 테두리 */
thead tr th.col-highlight { border-top: 3px solid red !important; } 
/* 마지막 행 하단 테두리 */
tbody tr:last-child td.col-highlight { border-bottom: 3px solid red !important; } 

 /* ===================== CERTIFICATION ===================== */
.sub_page section.section-cert { margin-bottom: 0; } 
.section-cert { background: url(../../img/solar_certi_bg.jpg) no-repeat center center/cover; padding: 15rem 0; text-align: center; } 
.cert-head { text-align:center; margin-bottom: 7rem; } 
.cert-grid { display: flex; justify-content: center; } 
.cert-card { flex: 0 0 27%; min-width: 42rem; } 
.cert-card .img_box img { box-shadow: var(--shadow-card-hover); } 
.cert-body { text-align:center; } 
.cert-badges { display: flex; align-items: center; gap: 1rem; justify-content: center; margin: 4rem 0 1rem; flex-direction: column; } 
.cert-badges span { background: var(--main-color); border-radius: 50px; padding: 0.5rem 2rem; font-weight: 600; color: #fff; font-size: 1.8rem; } 
.badge { padding:4px 10px; border-radius:20px; font-weight:700; color:#fff; } 
.cert-num { color: var(--color-gray-700); font-weight: 700; position: relative; padding-left: 1.4rem; } 
.cert-num::before { content:''; display:block; position:absolute; left:0; transform: translateY(-50%); top: 49%; width: 3px; height: 1.8rem; background: #555555cc; } 
.cert-title { font-weight: 600; max-width: 60%; margin: 0 auto; } 
.certi_desc { display: flex; align-items: flex-start; } 
.certi_desc .desc_wrap { /* text-align: left; */
 margin-left: 4rem; display: flex; flex-direction: column; gap: 2rem; } 
.certi_desc .desc_wrap h3 { font-size: 2.6rem; margin-bottom: 0rem; } 

 /* 연혁 */
#history { background:url(../../img/history_bg.jpg) no-repeat center center/cover; } 
#history .sub_title { margin-bottom: 7rem; } 
#history article.contain1 { padding-top: 0; } 
#history article { padding: 10rem 0; } 
#history .container .tit_wrap { margin-bottom: 8rem; text-align: center; } 
#history .container .tit_wrap h1 { font-size: 3.4rem; font-weight: 600; color: var(--main-color); padding-bottom: 1.4rem; } 
#history .container .img_box { width: 100%; position: relative; border-radius: 15px; overflow: hidden; } 
#history .container .img_box img { margin-right: 0; } 
.history_wide { position: relative; max-width: 1600px; margin: 0 auto; } 
.history_wide::after { width: 100%; text-align: center; content: "2023"; display: block; position: absolute; left: 50%; bottom: -9rem; font-size: 11rem; color: #e5e5e5; opacity: 0.2; transform: translateX(-50%); font-weight: 900; letter-spacing: -1px; z-index: 2; line-height: 1; } 

/* 년도표시 */
.contain1 .history_wide::after { content: "2015"; bottom: -5rem; } 
.contain2 .history_wide::after { content: "2000"; } 
.contain3 .history_wide::after { content: "1973"; } 

.history_wrap { position: relative; width: 100%; } 
.history_wrap::before { content: ""; display: inline-block; width: 1px; height: 100%; border-right: 2px dotted #ddd; position: absolute; left: 50%; top: 0; } 
.history_wrap .month { font-weight: 600; font-size: 1.8rem; padding-right: 1rem; } 
.history_wrap .month_now { color: #b6d7f4; font-size: 12px; } 
.history_wrap>ul { margin-bottom: 1rem; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: stretch; } 
.history_wrap>ul>li.left div { margin-right: 6rem; } 
.history_wrap>ul>li.right div { padding-left: 60px; display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: flex-start; align-items: stretch; position: relative; top: -0.5rem; margin-bottom: 4rem; } 
.history_wrap>ul>li.right div ul { padding-left: 2rem; } 
.history_wrap>ul>li.right::before { display: block; content: ""; width: 6px; height: 6px; border: 5px solid #becff5; position: absolute; left: 50%; transform: translateX(-50%); z-index: 1; background-color: #1b61ff; box-sizing: content-box; border-radius: 50%; } 
.history_wrap>ul>li.right::after { display: block; content: ""; width: 40px; height: 2px; position: absolute; top: 7px; transform: translateX(-50%); background: #e0eaff; z-index: -1; } 
.history_wrap>ul>.right::after { left: calc(50% + 23px); } 
.history_wrap>ul>.right { width: 49%; } 
.history_wrap>ul>.right h5 { font-size: 2.2rem; } 
.history_wrap>ul>.left { text-align: right; position: relative; width: 49%; } 
.history_wrap>ul>li h4 { font-size: 4rem; font-weight: 700; letter-spacing: -1px; position: relative; bottom: 2rem; /* font-family: 'Paperozi'; */ } 
.history_wrap>ul>li> div ul>li { font-size: 1.8rem; position: relative; line-height: 1.9; font-family: 'Pretendard', sans-serif; word-break: keep-all; display: flex; } 
.history_wrap>ul>.left> div ul>li::after { content:''; display:block; position:absolute; top: 14px; right: -18px; width: 8px; height: 8px; background:var(--main-color); border-radius: 50%; } 
.history_wrap>ul>.right> div ul>li::after { content:''; display:block; position:absolute; top: 14px; left: -17px; width: 5px; height: 5px; background:var(--main-color); border-radius: 50%; } 
.history_wrap .left .sticky_box { position: sticky; top: 120px; /* 헤더 높이만큼 */ } 

 /* RND */
.rnd_wrap .img_box { overflow:hidden; margin-bottom: 8rem; } 
.rnd_wrap .img_box img { width:100%; display:block; } 
.rnd_wrap article { background:#fff; border-radius: 15px; padding: 3rem 4rem; transition:.3s; box-shadow: var(--shadow-card-hover); } 
.rnd_wrap article h3 { color:#2196f3; font-weight:700; position: relative; padding-left: 2rem; margin-bottom: 1rem; } 
.rnd_wrap .dot_list li { border-bottom:1px solid #f2f2f2; padding: 1.4rem 0; padding-left: 1.3rem; } 
.rnd_wrap .dot_list li::before { content:""; position:absolute; left:0; top: 2.8rem; width: 3px; height: 3px; background: #444; } 
.rnd_wrap #tab5 .dot_list { display: flex; flex-wrap: wrap; column-gap: 1rem; } 
.rnd_wrap #tab5 .dot_list li { flex: 1 0 calc(50% - 1rem); } 
.rnd_wrap #tab5 .dot_list li b { width: fit-content; white-space: nowrap; } 
.dot_list li { padding: 0.5rem 0; display: flex; justify-content: flex-start; align-items: flex-start; gap: 2rem; position: relative; padding-left: 1rem; } 
.dot_list li::before { content:""; position:absolute; left:0; top: 15px; width: 3px; height: 3px; background: #444; } 
.dot_list li:last-child { border-bottom:0; } 
.dot_list b { color:#222; font-weight:700; line-height:1.6; } 
.dot_list span { color:#666; line-height:1.8; word-break:keep-all; } 
.rnd_wrap .info_box { margin-bottom: 4rem; } 
.rnd_wrap article { position:relative; overflow:hidden; font-size: 1.7rem; } 
.rnd_wrap article b { font-size: 2rem; display: block; width: 12rem; } 
.rnd_wrap article h3::before { content:""; position:absolute; left:0; top: 50%; transform: translateY(-50%); width: 5px; height: 38%; background:#2196f3; } 
.tab_list { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:35px; justify-content: center; } 
.tab_list li { border:none; background:#f5f5f5; border-radius:50px; cursor:pointer; font-size: 1.8rem; font-weight:600; transition:.3s; min-width: 15rem; padding: 0 3rem; height: 6rem; display: flex; align-items: center; justify-content: center; color: #444; } 
.tab_list li:hover { background: var(--main-color); color:#fff; } 
.tab_list li.active, .tab_list li#bo_cate_on { background: var(--blue); background: var(--main-color); color:#fff; } 
.tab_content { display:none; } 
.tab_content.active { display:block; animation:fade .35s; } 
.rnd_wrap article { position:relative; overflow:hidden; } 

@keyframes fade { 
 from { opacity:0; transform:translateY(10px); } 
to { opacity:1; transform:translateY(0); } 
 } 

/* 협력사 */
.partner_wrap { display: flex; flex-wrap: wrap; flex-direction: row; align-items: center; gap: 2.4rem; } 
.partner_wrap>div { box-shadow: var(--shadow-card); /* border: 1px solid #dcdcdc; */ flex: 1 0 17%; padding: 2rem 0; } 

/* 오시는길 */
.location_wrap { display: flex; gap: 2.4rem; flex-direction: column; } 
.location_wrap article { display: flex; align-items: stretch; height: 40rem; box-shadow: var(--shadow-card-hover); } 
.location_wrap article .address_box { padding: 4rem 3rem; width: 28%; } 
.location_wrap article .address_box h3 { margin-bottom: 2rem; /* color: var(--main-color); */ } 
.location_wrap article .address_box ul li:nth-child(1) { display: flex; align-items: flex-start; } 
.location_wrap article .address_box ul li:nth-child(1) i { position: relative; top: 3px; } 
.location_wrap article .address_box ul li { font-size: 1.8rem; display: flex; align-items: center; padding: 0.5rem 0; } 
.location_wrap article .address_box ul li i { font-size: 2.2rem; border-radius: 50%; margin-right: 1rem; } 
.location_wrap article .map_box { flex: 1; padding: 3rem 3rem 3rem 0; } 
.location_wrap article .map_box iframe { width: 100%; height: 100%; } 
.bar { position: relative; padding-left: 2rem; } 
.bar::before { content:''; display:block; position:absolute; top: 50%; transform: translateY(-50%); background:var(--main-color); width:4px; height: 24px; left:0; } 

.solar2 .section-hero h2 .img_box { margin-bottom: 2rem; } 
.solar2 .section-hero h2 { font-weight: 400; width: 80%; } 
.solar2 .section-hero .hero-copy h2 { font-weight: 700; } 
.solar2 .section-hero h2 .main_color { font-weight: 700; } 
.sub_page .section-design { background: url(../../img/solar2_design_bg.jpg) no-repeat center center / cover; color: #fff; height: 98vh; margin-top: 0; } 
.sub_page .section-design .inner_wrap { width: 94%; height: 100%; } 
.section-design .design_wrap { margin-bottom: 0; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: auto; } 

.section-design .design_wrap h2 { width: 41%; margin-bottom: 6rem; font-weight: 300; } 
.section-design .design_wrap h2 strong { font-weight: 700; } 
.section-design .info_box { text-align: left; padding: 0; margin-bottom: 0; gap: 4rem; display: flex; align-items: stretch; } 
.section-design .info_box .in_box { background: #e9e9e90a; backdrop-filter: blur(8px); padding: 4rem; border-radius: 1.5rem; box-shadow: 1px 1px 11px 6px rgb(0 0 0 / 10%); flex: 1; } 
 .section-design .info_box .in_box .dot_list li:before { background:#fff } 
.section-design .info_box .in_box h3 { margin-bottom: 3rem; } 
.section-design .info_box .in_box .dot_list { margin-top: 3rem; font-size: 1.7rem; } 

.systems-tabs { display: flex; gap: 0.5rem; border-bottom: 2px solid var(--main-color); border-bottom: 2px solid #444; } 
 .sys-tab { padding: 2.2rem 4rem; font-size: 2.2rem; font-weight: 500; cursor: pointer; margin-bottom: -2px; transition: var(--transition); border-radius: 2rem 2rem 0 0; border: unset; border-bottom: 2px solid var(--main-color); border-bottom: 2px solid #444; background: var(--blue-light); color: #444; } 
 .sys-tab:hover { color: var(--navy); } 
 .sys-tab.active { background: var(--main-color); color: #fff; } 
 .sys-panel { display: none; } 
 .sys-panel.active { display: block; } 
 .sys-content { display: flex; gap: 6rem; align-items: stretch; flex-direction: row; flex-wrap: wrap; margin-top: 8rem; } 
.sys-content .img_box { flex: 0 0 54%; } 
 .sys-content .img_box img { height: 100%; object-fit: cover; border-radius: 15px; overflow: hidden; } 
 .sys-info { flex: 1; } 
.sys-info h3 { margin-bottom: 3rem; display: inline-block; background: var(--main-color); color: #fff; padding: 2rem 4rem; border-radius: 1rem; font-weight: 600; } 
.sys-info p { font-size: 2rem; width: 89%; margin-bottom: 3.8rem; font-weight: 500; } 
.sys-types-grid { display: grid; gap: 2rem; grid-template-columns: repeat(3, 1fr); text-align: center; } 
.sys-types-label { font-size: 2rem; font-weight: 500; margin-bottom: 1rem; } 
.sys-type-name { margin-top: 0.5rem; font-weight: 300; font-size: 1.8rem; } 
.systems-section .enh_pro_wrap { border-bottom: unset; } 

.sub_page .section-install { background: #e8f4ff5e; margin: 0; padding: 15rem 0; } 
.sub_page .section-install .system-head { text-align: center; } 
.sub_page .section-install .system-head p { font-size: 2rem; margin-top: 1rem; } 
.install_arti { max-width: 1000px; background: #fff; border-radius: 1.5rem; padding: 7rem; margin: 0 auto; box-shadow: var(--shadow-card); display: flex; flex-direction: column; gap: 2rem; } 
.install_arti .p1 { font-size: 2.4rem; } 
.install_arti .p2 { font-size: 1.8rem; display: flex; align-items: baseline; } 
.install_arti .p2 .num { margin-right: 1rem; font-size: 1.4rem; position: relative; top: -2px; } 
.install_arti .num_list { padding-left: 3rem; } 
.num_list li { display: flex; font-size: 1.8rem; } 
.install_arti p { font-size: 1.7rem; color: #868686; padding-left: 3rem; } 
.num_list li .num { } 
.install_arti .num_list .num { margin-right: 1rem; } 


#solar1.ess1 .info-grid { grid-template: none; } 

.gas_tech_wrap { display: flex; gap: 2rem; flex-wrap: nowrap; } 
.gas_tech_wrap .box { box-shadow: var(--shadow-card); padding: 2rem; } 
.gas_tech_wrap .top_box { display: flex; flex-wrap: wrap; align-items: center; border-radius: 1rem 1rem 0 0; padding: 1rem 2rem; margin-bottom: 3rem; flex-direction: column; text-align: center; } 
.gas_tech_wrap .top_box h3 { font-size: 2rem; } 
.gas_tech_wrap .top_box p { color: #444; } 
.gas_tech_wrap .top_box span { font-size: 2.4rem; font-weight: 600; display: block; color: #fff; background: var(--main-color); width: 4rem; height: 4rem; border-radius: 10px; display: flex; align-items: center; justify-content: center; margin-bottom: 2rem; } 
.ess1 .system-col p { background: var(--main-color); color: #fff; } 
p.main_bg { background:var(--main-color); color:#fff; } 

 /* 좌측 60% */
section.ess-section { margin-bottom: 0; } 
.ess-section { padding: 15rem 0; } 
.ess-section .inner_wrap { display: flex; flex-wrap: wrap; gap: 4rem; align-items: stretch; } 
 .ess-benefits { flex: 0 1 60%; } 
 .benefit-grid { display:grid; grid-template-columns:1fr 1fr; gap: 2rem; height: 600px; } 
 .benefit-card { background: #fff; box-shadow: var(--shadow-card); border-radius: 1.5rem; padding: 5rem 4rem; position: relative; text-align: center; display: flex; flex-direction: column; align-content: center; align-items: center; justify-content: space-around; } 
 .benefit-icon { display:inline-flex; align-items:center; justify-content:center; width: 5rem; height: 5rem; border-radius: 1rem; color: var(--main-color); } 
 .benefit-icon svg { width: 4rem; height: 4rem; } 
 .benefit-card h3 { font-size: 2.2rem; } 
 /* 우측 40% */
 .ess-lineup { flex: 1; display:flex; flex-direction:column; } 
 .slider { background: #fff; border-radius: 1.5rem; padding: 4rem; flex: 100%; display:flex; flex-direction:column; gap: 2rem; position: relative; justify-content: space-between; } 
 .slides { position:relative; flex: 1; } 
 .slide { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; text-align:center; height: 100%; opacity:0; visibility:hidden; transition:opacity .35s ease; } 
 .slide.active { opacity:1; visibility:visible; } 
 .slide-visual { h; margin-bottom: 1rem; } 
 .slide-visual svg { width:100%; height:100%; } 
 .slide h3 { font-size: 2rem; font-weight:700; } 
 .slide-caption { margin:0 0 12px; font-size:13px; color:var(--ink-soft); } 
 .slide-spec { margin:0; font-size: 16px; font-weight:600; } 
 .slide-visual .img_box { height: 100%; } 
.slide-visual .img_box img { height: 100%; object-fit: contain; } 
 .slider-controls { display:flex; align-items:center; justify-content:center; gap: 3rem; } 
 .slider-btn { width:32px; height:32px; border-radius:50%; border:1px solid var(--line); background:var(--card); color:var(--ink); display:flex; align-items:center; justify-content:center; cursor:pointer; } 
 .slider-btn svg { width:16px; height:16px; } 
 .slider-btn:hover { border-color:var(--accent); color:var(--accent); } 
 .slider-dots { display:flex; gap:8px; } 
 .slider-dot { width:7px; height:7px; border-radius:50%; background:var(--line); border:none; cursor:pointer; padding:0; } 
 .slider-dot.active { background: var(--main-color); } 
 .ess2 .section-cert { margin-top: 0; } 
 .ess2 .pro_bg { background: url(../../img/ess2_bg.jpg) no-repeat center center/cover; } 
 .ess2 .ess-section h2 { color:#fff; } 
 .ess2 .ess-section .sub_header { margin-bottom: 4rem; } 
.ess3 .div_3 .box { flex: 1; padding: 2rem; box-shadow: var(--shadow-card-hover); border-radius: 1.5rem; } 
.ess3 .div_3 .box ul { padding: 3rem; } 
.ess3 .div_3 .box h3 { margin-bottom: 1rem; } 
.ess3 .div_3 li {box-shadow: unset;font-size: 1.7rem;text-align: left;} 

.enh_pro_wrap { display: flex; flex-wrap: wrap; align-items: stretch; margin-top: 6rem; padding-bottom: 6rem; gap: 6rem; flex-direction: row; border-bottom: 1px solid #dcdcdc; } 
.enh_pro_wrap .img_box_wrap { border-radius: 1.5rem; width: 40%; position: relative; display: flex; flex-direction: column; gap: 2.4rem; } 
.enh_pro_wrap .img_box { border: 1px solid #dcdcdc; border-radius: 1.5rem; width: 100%; height: 80%; position: relative; flex: 1; } 
.enh_pro_wrap .img_box img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } 
.enh_pro_wrap .pro-info { flex: 1; min-height: 54.4rem; } 
.pro_tit_wrap { display: flex; align-items: flex-end; margin-bottom: 2rem; } 
.enh_pro_wrap .pro_tit span { font-weight: 600; font-size: 2rem; margin-bottom: 1rem; display: block; } 
.enh_pro_wrap .pro_tit h3 { font-size: 3.2rem; line-height: 1.2; } 
.enh_pro_wrap .spec_list { border-top: 1px solid #dcdcdc; border-bottom: 1px solid #dcdcdc; padding: 2rem 0; font-size: 2rem; display: flex; flex-wrap: wrap; } 
.enh_pro_wrap .spec_list li { flex: 1 0 50%; padding: 0.2rem; display: flex; gap: 1rem; } 
.enh_pro_wrap .spec_list li span { font-weight: 500; white-space: nowrap; } 
.enh_pro_wrap .spec_list li b { font-weight: 500; } 
.enh_pro_wrap .dot_list { margin-top: 3rem; font-size: 1.8rem; } 
.enh_pro_wrap .dot_list h4 { font-weight: 600; font-size: 2rem; margin-bottom: 1rem; } 
.enh_pro_wrap .dot_list li { word-break: keep-all; } 
.enh_pro_wrap .dot_list li::before { top: 17px; } 
.pro_btn { border: 1px solid var(--main-color); border-radius: 50px; display: flex; align-content: center; align-items: center; height: 6.4rem; min-width: 26rem; justify-content: space-between; padding: 0 3rem; font-size: 2rem; font-weight: 500; /* background: var(--main-color); */
 /* color: #fff; */
 margin-right: 0; margin-left: auto; transition: all .3s; margin-bottom: 0.5rem; } 
.pro_btn:hover { background: var(--main-color); color: #fff; } 
.solar2 .section-platform.louver_bg { background: url(../../img/louver_bg.jpg) no-repeat center center/cover; } 

/* louver_table */
.selec_list { border-top: 1px solid #dcdcdc; } 
.selec_list > .selec-tab { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #dcdcdc; padding: 1rem 4rem; cursor: pointer; transition: all .3s; } 
.selec_list > .selec-tab .info_box { display: flex; align-items: center; gap: 0 3rem; font-size: 2rem; flex: 1; } 
.selec_list > .selec-tab .info_box .img_box { max-width: 19rem; } 
.selec_list > .selec-tab .info_box b { font-size: 2.4rem; position: relative; padding-left: 2.4rem; width: 14rem; } 
.selec_list > .selec-tab .info_box b::before { content:''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1rem; height: 1rem; background: var(--main-color); border-radius: 50%; } 
.selec_list > .selec-tab .info_box p { font-size: 2rem; } 
.selec_list > .selec-tab i { font-size: 2.2rem; color: var(--main-color); transition: all .3s; } 
.selec_list > .selec-tab:hover { background: var(--bg-soft); } 

.electric .selec_list > .selec-tab .info_box .img_box { width: 14rem; } 
.electric .selec_list > .selec-tab .info_box .img_box img { height: 130px; } 
.electric .selec_list > .selec-tab .info_box b { width: 24rem; width: 100%; } 

.systems-section .selec-panel { height: 0; overflow: hidden; opacity: 0; transition: height 0.5s ease, opacity 0.3s ease; } 
.systems-section .selec-panel.is-open { opacity: 1; } 
.systems-section .selec-tab.active i { transform: rotate(
90deg); } 


/* ------------------------------
 관계법령
------------------------------ */


.sub_title_wrap { text-align:center; margin-bottom:70px; } 

.sub_title_wrap h3 { font-size:42px; font-weight:700; color:#222; } 

.law_section + .law_section { margin-top: 9rem; } 

.law_section h4 { font-size: 3rem; font-weight:700; color:#222; margin-bottom: 2rem; } 

.law_section h4 span { font-size: 2rem; color:#777; font-weight:400; } 

.law_section h5 { font-size:22px; font-weight:600; margin:50px 0 20px; color:#333; } 

.law_section p { font-size: 2rem; line-height:1.8; color:#555; margin-bottom: 2rem; } 

.mt40 { margin-top: 5.6rem; } 


/* ------------------------------
 TABLE
------------------------------ */

.table_wrap { width:100%; overflow-x:auto; margin-top:20px; } 

.table_wrap table { width:100%; border-collapse:collapse; background:#fff; } 

.table_wrap th,
.table_wrap td { padding: 1.8rem 1.4rem; border:1px solid #ddd; text-align:center; font-size: 1.8rem; line-height:1.6; } 

.table_wrap thead th { background:#f5f7fa; color:#222; font-weight:700; } 

.table_wrap tbody th { background:#fafafa; font-weight:600; } 

.table_wrap tbody tr:hover { background:#f9fcff; } 

.energy_table { width:100%; border-collapse:collapse; font-family:'Pretendard', sans-serif; font-size:18px; color:#333; } 

.energy_table th { background:#222; color:#fff; padding:14px 10px; border:1px solid #555; font-weight:600; } 

.energy_table td { padding:12px 15px; border:1px solid #cfcfcf; text-align:center; vertical-align:middle; } 

.energy_table td.category { background:#f5f5f5; font-weight:600; width:160px; } 

.energy_table td.unit { width:140px; } 

.energy_table tr.section td { border-top:2px solid #666; } 

.energy_table .highlight { background:#dff5f7; } 

/* 강조 영역 공통 배경 */
tr.highlight td,
tr.highlight th { background-color: #f2f9ff; } 
tr.highlight-top > th[rowspan] { background-color: #ffcfcf; } 
tr.highlight-top th { border-left: 2px solid #e60000; } 
tr.highlight-top th,
tr.highlight-top td { border-top: 2px solid #e60000; } 
tr.highlight-bottom td,
tr.highlight-top th,
tr.highlight-top td[rowspan] { border-bottom: 2px solid #e60000; } 
tr.highlight td:last-child { border-right: 2px solid #e60000; } 
.info_p { margin-top: 3rem; } 
.table_3 table { table-layout: fixed; } 
/* 열 강조: 배경색 */
.compare_table td.highlight-col { background-color: #eaf5fc; } 
.compare_table th.highlight-col { background-color: #2b2b2b; /* 헤더는 이미지처럼 진한 톤 */
 color: #fff; } 
.compare_table .highlight-col { border-left: 2px solid #e60000; border-right: 2px solid #e60000; } 
.compare_table .highlight-top { border-top: 2px solid #e60000; } 
.compare_table .highlight-bottom { border-bottom: 2px solid #e60000; } 

.switch_info_wrap .div_3_card .info_box p.mid_tit { width: 100%; } 
.electric .enh_pro_wrap .spec_list li { flex: 1 0 100%; } 
.j_busi h3 { } 
.j_busi .info_wrap { } 
.j_busi .info_wrap .system-table { grid-template-columns: repeat(2,1fr); margin-top: 4rem; } 
.j_busi .info_wrap .system-table .system-col { box-shadow: var(--shadow-card-hover); } 
.j_busi .info_wrap h3 { font-size: 2.4rem; display: flex; align-items: center; margin-top: 6rem; } 
.j_busi .info_wrap .num { background: var(--main-color); width: 3.4rem; display: inline-block; height: 3.4rem; border-radius: 7px; display: flex; justify-content: center; align-items: center; color: #fff; margin-right: 1rem; } 
section .main_color_bg { background: var(--main-color); color: #fff; } 
.project_wrap { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 4rem 3rem; } 
.project_wrap .project_box .img_box { border-radius: 10px; overflow: hidden; } 
.project_wrap .project_box .img_box { margin-bottom: 1.4rem; } 
.project_wrap .project_box p { text-align: center; font-weight: 500; } 

.in_check_sec_wrap section div.check_wrap { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: space-between; background: unset; gap: 1rem; margin: 0.8rem 0; } 
.in_check_sec_wrap section div.check_wrap i { color: #d5d5d5; font-size: 4rem; } 
.in_check_sec_wrap section div.check { flex-grow: unset; display: flex; align-items: center; cursor: pointer; color: #999; font-weight: 700; position: relative; top: 2px; } 
.in_check_sec_wrap section div.check i { margin-left: 0.5rem; font-size: 2.1rem; color: #999999; } 
.in_check_sec_wrap section div.check span { font-size: 1.6rem; font-weight: 500; } 
.in_check_sec_wrap section div.check_wrap .agree_txt { display: flex; align-content: center; flex-direction: row; align-items: center; } 
.in_check_sec_wrap section div.check_wrap .agree_txt input { display: none; } 
.in_check_sec_wrap section div.check_wrap .agree_txt i { margin-right: 1rem; font-size: 2.6rem; color: #d5d5d5; position: relative; top: 3px; } 
.in_check_sec_wrap section div.check_wrap input i { height: auto; width: auto; display: none; } 
.in_check_sec_wrap section div.check_wrap label { display: flex; align-items: center; cursor: pointer; } 
.in_check_sec_wrap .agree_txt input[id="agree1"] + label i::before { content: "\e92b"; color: #d5d5d5; } 
.in_check_sec_wrap .agree_txt input[id="agree1"]:checked + label i::before { content: "\e92b"; color: var(--main-color); } 
.in_check_sec_wrap .agree_txt input[id="agree2"] + label i::before { content: "\e92b"; color: #d5d5d5; } 
.in_check_sec_wrap .agree_txt input[id="agree2"]:checked + label i::before { content: "\e92b"; color: var(--main-color); } 
.in_check_sec_wrap section.message_wrap h4 { margin-top: 2rem; height: 100%; align-self: flex-start; } 
.check_info { font-size: 1.8rem; } 

.consent-block textarea { width: 100%; height: 300px; margin-top: 1rem; padding: 2rem; line-height: 1.7; } 
.louver_m_wrap { display: none; } 


/* =========================================
 INQUIRY FORM
========================================= */

/* 상단 안내 */
#inquiry2 .inquiry_intro { margin-bottom: 65px; text-align: center; } 

#inquiry2 .inquiry_intro h2 { margin-bottom: 18px; color: #111; } 

#inquiry2 .inquiry_intro p { font-size: 17px; color: #777; line-height: 1.7; } 

/* 섹션 */
#inquiry2 .inquiry_group { margin-bottom: 65px; } 

#inquiry2 .inquiry_group_title { display: flex; align-items: end; justify-content: space-between; gap: 15px; padding-bottom: 22px; border-bottom: 2px solid #222; } 

#inquiry2 .inquiry_group_title h3 { margin: 0; color: #111; } 

#inquiry2 .inquiry_group_title p { margin: 0; font-size: 14px; color: #777; } 

#inquiry2 .essential-icon { color: #2196f3; font-weight: 600; } 

/* 입력 행 */
#inquiry2 .inquiry_field { display: flex; align-items: stretch; width: 100%; border-bottom: 1px solid #e5e5e5; } 

#inquiry2 .inquiry_field > label { display: flex; align-items: center; flex: 0 0 220px; gap: 5px; padding: 22px 30px; background: #f8f9fb; color: #222; font-size: 17px; font-weight: 600; line-height: 1.5; } 

#inquiry2 .field_input { flex: 1; min-width: 0; padding: 16px 30px; } 

#inquiry2 .field_input input,
#inquiry2 .field_input textarea { display: block; width: 100%; max-width: 100%; margin: 0; padding: 15px 20px; border: 1px solid #ddd; border-radius: 0; background: #fff; color: #222; font-family: inherit; font-size: 16px; font-weight: 400; line-height: 1.5; box-shadow: none; outline: none; transition: border-color .25s ease, background .25s ease; } 

#inquiry2 .field_input input { height: 54px; } 

#inquiry2 .field_input textarea { min-height: 260px; resize: vertical; } 

#inquiry2 .field_input input::placeholder,
#inquiry2 .field_input textarea::placeholder { color: #aaa; } 

#inquiry2 .field_input input:focus,
#inquiry2 .field_input textarea:focus { border-color: #2196f3; background: #fcfdff; } 

#inquiry2 .field_help { margin-top: 10px; font-size: 13px; color: #999; } 

/* 문의내용 */
#inquiry2 .inquiry_message > label { align-items: flex-start; padding-top: 35px; } 

/* 개인정보 */
#inquiry2 .inquiry_privacy { border-bottom: 1px solid #ddd; } 

#inquiry2 .privacy_top { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 25px 30px; } 

#inquiry2 .privacy_top strong { font-size: 17px; font-weight: 600; } 

#inquiry2 .popup_btn { display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px; border: 1px solid #ddd; background: #fff; color: #555; font-size: 14px; cursor: pointer; transition: .25s; } 

#inquiry2 .popup_btn:hover { border-color: #2196f3; color: #2196f3; } 

#inquiry2 .privacy_content { height: 160px; overflow-y: auto; padding: 25px 30px; border: 1px solid #e5e5e5; background: #fafafa; color: #777; font-size: 14px; line-height: 1.9; overflow-wrap: anywhere; } 

#inquiry2 .privacy_agree { display: flex; justify-content: flex-end; align-items: center; gap: 10px; padding: 25px 0; } 

#inquiry2 .privacy_agree input { width: 20px; height: 20px; margin: 0; accent-color: #2196f3; cursor: pointer; } 

#inquiry2 .privacy_agree label { font-size: 16px; color: #333; cursor: pointer; } 

#inquiry2 .privacy_agree .essential-icon { margin-right: 5px; } 

/* 제출 */
#inquiry2 .inquiry_submit { text-align: center; } 

#inquiry2 .inquiry_submit p { margin-bottom: 30px; font-size: 15px; color: #888; } 

#inquiry2 .btn_submit1 { display: inline-flex; justify-content: center; align-items: center; gap: 35px; min-width: 230px; height: 65px; padding: 0 35px; border: 1px solid #2196f3; border-radius: 0; background: #2196f3; color: #fff; font-size: 18px; font-weight: 600; cursor: pointer; transition: .3s ease; } 

#inquiry2 .btn_submit1:hover { background: #147bc9; border-color: #147bc9; } 

#inquiry2 .btn_submit1 i { font-size: 20px; transition: transform .3s; } 

#inquiry2 .btn_submit1:hover i { transform: translateX(5px); } 


/* =========================================
 TABLET
========================================= */

@media (max-width: 1080px){

 #inquiry2 .inquiry_group { margin-bottom: 50px; } 

 #inquiry2 .inquiry_field > label { flex-basis: 180px; padding: 20px; font-size: 16px; } 

 #inquiry2 .field_input { padding: 15px 20px; } 
 }

/* =========================================
 MOBILE
========================================= */

@media (max-width: 767px){

 #inquiry2 .inquiry_intro { margin-bottom: 45px; } 

 #inquiry2 .inquiry_intro h2 { font-size: 30px; } 

 #inquiry2 .inquiry_intro p { font-size: 14px; word-break: keep-all; } 

 #inquiry2 .inquiry_group { margin-bottom: 45px; } 

 #inquiry2 .inquiry_group_title { align-items: center; padding-bottom: 18px; } 

 #inquiry2 .inquiry_group_title h3 { font-size: 23px; } 

 #inquiry2 .inquiry_group_title p { font-size: 12px; } 

 #inquiry2 .inquiry_field { flex-direction: column; padding: 17px 0; } 

 #inquiry2 .inquiry_field > label { flex: none; width: 100%; padding: 0 0 12px; background: transparent; font-size: 15px; } 

 #inquiry2 .field_input { width: 100%; padding: 0; } 

 #inquiry2 .field_input input { height: 50px; padding: 12px 15px; font-size: 15px; } 

 #inquiry2 .field_input textarea { min-height: 200px; padding: 15px; font-size: 15px; } 

 #inquiry2 .privacy_top { padding: 20px 0; } 

 #inquiry2 .privacy_top strong { font-size: 15px; } 

 #inquiry2 .popup_btn { font-size: 12px; padding: 8px 10px; } 

 #inquiry2 .privacy_content { height: 140px; padding: 18px; font-size: 13px; } 

 #inquiry2 .privacy_agree { justify-content: flex-start; padding: 20px 0; } 

 #inquiry2 .privacy_agree label { font-size: 14px; } 

 #inquiry2 .inquiry_submit p { font-size: 13px; line-height: 1.7; } 

 #inquiry2 .btn_submit1 { width: 100%; height: 58px; font-size: 16px; } 

 }

 
/* =========================================
 TABLET : 1080px 이하
========================================= */
@media screen and (max-width: 1080px) {

 #inquiry2 .inquiry_intro { margin-bottom: 50px; } 

 #inquiry2 .inquiry_intro h2 { font-size: 36px; } 

 #inquiry2 .inquiry_intro p { font-size: 16px; } 

 #inquiry2 .inquiry_group { margin-bottom: 55px; } 

 #inquiry2 .inquiry_group_title h3 { font-size: 25px; } 

 #inquiry2 .inquiry_field > label { flex: 0 0 180px; padding: 20px; font-size: 16px; } 

 #inquiry2 .field_input { padding: 15px 20px; } 

 #inquiry2 .field_input input { height: 52px; } 

 #inquiry2 .field_input textarea { min-height: 240px; } 
 }


/* =========================================
 MOBILE : 767px 이하
========================================= */
@media screen and (max-width: 767px) {

 /* 상단 타이틀 */
 #inquiry2 .inquiry_intro { margin-bottom: 40px; } 

 #inquiry2 .inquiry_intro h2 { font-size: 30px; margin-bottom: 12px; } 

 #inquiry2 .inquiry_intro p { font-size: 14px; line-height: 1.7; word-break: keep-all; } 

 /* 섹션 제목 */
 #inquiry2 .inquiry_group { margin-bottom: 45px; } 

 #inquiry2 .inquiry_group_title { align-items: center; padding-bottom: 15px; } 

 #inquiry2 .inquiry_group_title h3 { font-size: 22px; } 

 #inquiry2 .inquiry_group_title p { font-size: 12px; } 

 /* 입력폼 세로 정렬 */
 #inquiry2 .inquiry_field { flex-direction: column; padding: 18px 0; } 

 #inquiry2 .inquiry_field > label { flex: none; width: 100%; padding: 0 0 12px; background: transparent; font-size: 15px; font-weight: 600; } 

 #inquiry2 .field_input { width: 100%; padding: 0; } 

 #inquiry2 .field_input input { width: 100%; height: 50px; padding: 12px 15px; font-size: 15px; } 

 #inquiry2 .field_input textarea { min-height: 200px; padding: 15px; font-size: 15px; } 

 #inquiry2 .field_help { font-size: 12px; } 

 /* 개인정보 */
 #inquiry2 .privacy_top { padding: 18px 0; } 

 #inquiry2 .privacy_top strong { font-size: 15px; } 

 #inquiry2 .popup_btn { font-size: 12px; padding: 8px 10px; } 

 #inquiry2 .privacy_content { height: 140px; padding: 18px; font-size: 13px; } 

 #inquiry2 .privacy_agree { justify-content: flex-start; padding: 20px 0; } 

 #inquiry2 .privacy_agree label { font-size: 14px; } 

 /* 제출 버튼 */
 #inquiry2 .inquiry_submit p { font-size: 13px; line-height: 1.7; } 

 #inquiry2 .btn_submit1 { width: 100%; height: 58px; font-size: 16px; } 

 }


/* =========================================
 SMALL MOBILE : 480px 이하
========================================= */
@media screen and (max-width: 480px) {

 #inquiry2 .inquiry_intro { margin-bottom: 35px; } 

 #inquiry2 .inquiry_intro h2 { font-size: 27px; } 

 #inquiry2 .inquiry_intro p { font-size: 13px; } 

 #inquiry2 .inquiry_group { margin-bottom: 35px; } 

 #inquiry2 .inquiry_group_title h3 { font-size: 20px; } 

 #inquiry2 .inquiry_field { padding: 15px 0; } 

 #inquiry2 .inquiry_field > label { font-size: 14px; padding-bottom: 10px; } 

 #inquiry2 .field_input input { height: 46px; padding: 10px 12px; font-size: 14px; } 

 #inquiry2 .field_input textarea { min-height: 180px; padding: 12px; font-size: 14px; } 

 /* 개인정보 */
 #inquiry2 .privacy_top { flex-wrap: wrap; gap: 10px; } 

 #inquiry2 .privacy_top strong { font-size: 14px; } 

 #inquiry2 .privacy_content { height: 120px; padding: 15px; font-size: 12px; } 

 #inquiry2 .privacy_agree { align-items: flex-start; gap: 8px; } 

 #inquiry2 .privacy_agree input { flex-shrink: 0; width: 18px; height: 18px; margin-top: 2px; } 

 #inquiry2 .privacy_agree label { font-size: 13px; line-height: 1.6; word-break: keep-all; } 

 /* 버튼 */
 #inquiry2 .inquiry_submit p { font-size: 12px; margin-bottom: 20px; } 

 #inquiry2 .btn_submit1 { height: 54px; font-size: 15px; } 
}


/* =============================================
RESPONSIVE
 ============================================= */
@media(max-width:1280px) { 
 .slide { display: flex; flex-direction: column; justify-content: center; } 
 .ess2 .div_2 .img_box { width: 60%; } 
 .about_2_1 .top { margin-bottom: 3rem; } 
 #about .bottom br { display:none; } 
 .manage_wrap li { padding: 4rem; } 
 .solar1 .info-box .box1 { padding: 2rem 3rem; font-size: 2rem; } 
 .solar1 .ph-icon { width: 30%; } 
 .sys-panel .sys-main-img { width: 54%; } 
 } 
@media(max-width: 1024px) { 
 .enh_pro_wrap .img_box img { width: 85%; } 
 .enh_pro_wrap { gap: 3rem; margin-top: 4rem; padding-bottom: 4rem; } 
 .pro_btn { margin-left: 0; height: 6rem; } 
 .pro_tit_wrap .pro_tit { margin-bottom: 2rem; } 
 .pro_tit_wrap { display: flex; flex-direction: column; align-items: flex-start; } 
 .enh_pro_wrap .pro_tit h3 { font-size: 3rem; } 
 .selec_list > .selec-tab i { margin-left: 2rem; padding-right: 1rem; } 
 .selec_list > .selec-tab { padding: 1rem 0; } 
 .ess3 .div_3 .box ul { padding: 2rem 1rem; } 
 .ess3 .div_3 li { text-align: left; word-break: keep-all; } 
 /* ess2 */
 .ess2 .pro_bg { margin-bottom: 0; padding: 6rem 0; } 
.slider { height: 580px; flex: unset; } 
 .slides { height: 100%; } 
 .ess2 .benefit-grid { grid-template-columns: 1fr 1fr; height: 420px; } 
 .ess2 .slide-visual .img_box { height: 40rem; } 
 /* ess1 */
 .sub_header { margin-bottom: 4rem; } 
.feature-card { flex: 1 0 100%; } 
 .gas_tech_wrap .top_box { padding: 0; } 
 .gas_tech_wrap .top_box p { height: 48px; } 
 .system-col p { padding: 2rem; } 
 .section-cert { padding: 10rem 0; } 
.solar2 .div_2 .info_box { padding: 0; } 
 .div_2 .img_box { width: 47%; } 
 .sub_page .section-install { padding: 8rem 0; } 
 .sys-info h3 { padding: 1.4rem 3rem; } 
 .sys-panel .sys-main-img { width: 100%; } 
 .sys-content { margin-top: 4rem; gap: 4rem; display: flex; flex-direction: column; } 
 .sub_page .section-design { height: 76vh; } 
 .div_3 li { flex: 1 0 31%; } 
 .cert-title { max-width: 90%; } 
 .cert-badges { margin: 2rem 0 1rem; display: flex; flex-direction: column; } 
 .cert-grid { gap: 2rem; } 
 .cert-card { min-width: unset; flex: 0 0 32%; } 
 .feature-row-2 > div { flex: 1 1 48%; } 
 #solar1 .hero-actions { display: flex; flex-direction: row; width: 100%; max-width: unset; gap: 1rem; } 
 #solar1 .hero-actions .btn { max-width: unset; flex: 1; padding: 0 1.4rem; } 
 #solar1 .section-hero .hero-copy { margin-right: 4%; } 
 #solar1 .section-hero .hero-media { flex: 1 0 50%; border-radius: 10px; overflow: hidden; } 
 #solar1 .section-hero .hero-media .img_box { height: 100%; } 
 #solar1 .section-hero .hero-media img { height: 100%; object-fit: cover; } 
 .sub_page section.section-features { padding: 8rem 0; } 
 .location_wrap article .address_box { width: 36%; } 
 .partner_wrap>div { flex: 0 0 30.3%; } 
 .partner_wrap { gap: 1.8rem; } 
 .manage_wrap li { padding: 2rem; } 
 .about_2_1 { grid-template-columns: repeat(2, 1fr); gap: 1.6rem; } 
 #about .sign_wrap { display: flex; justify-content: flex-end; align-items: baseline; margin-top: 4rem; } 
 #about .sign_wrap p { margin-right: 1.4rem; } 
 #about .sign_img img { max-width: 90px; } 
 .sub_page h2, .sub_title h2 { font-size: 3rem; } 
 .sub_page h2 br { display: none; } 
 #about .right_box h2 { margin-bottom: 2rem; } 
 #about .left_box .img_box { position: relative; top: 0 !important; } 
 #about .left_box .img_box:nth-child(1) { width: 75%; margin-bottom: -8rem; } 
 #about .left_box .img_box:nth-child(2) { left: unset; right: unset; margin-left: auto; margin-right: 0; width: 75%; } 
 #about .left_box { width: 100%; margin-bottom: 5rem; } 
 #about .about_1 { display: flex; flex-wrap: wrap; flex-direction: column; gap: 0; margin-top: 0; margin-bottom: 4rem; } 
 .sub_page .sub_title { margin-top: 10rem; } 
 .manage_wrap li .img_box img { max-width: 90px; } 
 #about .about_2 { padding: 10rem 0; } 
 .sub_page section { margin: 10rem auto; } 
 .sub_visual_box { height: 50rem; } 
 .sub_visual_txt { bottom: 6rem; } 
 .visual_text { font-size: 7rem; } 
 .law_wrap { padding:80px 20px; } 
 .sub_title_wrap { margin-bottom:50px; } 
 .sub_title_wrap h3 { font-size:34px; } 
 .law_section h4 { font-size: 2.6rem; } 

 /* RND */
.rnd_wrap { padding: 8rem 0; } 
.rnd_wrap .img_box { margin-bottom: 5rem; } 
.rnd_wrap .info_box { grid-template-columns:1fr; gap:25px; } 
.rnd_wrap article { padding: 3rem; } 
.dot_list li { grid-template-columns:95px 1fr; gap:15px; } 
 .ess-inner { flex-direction:column; } 
 .ess-benefits, .ess-lineup { flex:1 1 100%; max-width:100%; } 
 .benefit-grid { grid-template-columns:1fr; } 
 .law_wrap { padding:60px 15px; } 
 .sub_title_wrap h3 { font-size:28px; } 
 .law_section h4 { font-size: 2.2rem; } 
 .law_section h5 { font-size:18px; } 
 .law_section p { font-size:15px; } 
 .table_wrap table { min-width:700px; } 
 .table_wrap th,
 .table_wrap td { padding:14px 10px; font-size:14px; } 
 .rnd_wrap #tab5 .dot_list li { flex: 1 0 100%; } 
 } 

@media (max-width: 680px) { 
 .m_none { display: none; } 
 .rnd_wrap #tab5 .dot_list li { display: flex; flex-direction: column; gap: 0; } 
 } 
@media (max-width: 480px) { 
 .m_none480 { display:none; } 
 .consent-block textarea { height: 500px; padding: 1.4rem; word-break: keep-all; line-height: 1.6; } 
 .block-title { font-size: 2rem; } 
 .inquiry_popup_wrap .popup_info { max-height: 90vh; padding: 4rem; } 
 .div_line .img_box { width: 40px; margin: 0 auto; } 
 .enh_pro_wrap .pro-info { min-height: auto; } 
 .enh_pro_wrap .dot_list { margin-top: 2rem; font-size: 1.6rem; } 
 .enh_pro_wrap .spec_list { font-size: 1.7rem; } 
 .pro_tit_wrap .pro_tit { margin-bottom: 0; } 
 .pro_btn { min-width: 20rem; height: 5rem; font-size: 1.6rem; } 
 .pro_tit_wrap { display: flex; flex-direction: row; justify-content: space-between; align-items: flex-end; } 
 .enh_pro_wrap .pro_tit span { font-size: 1.8rem; margin-bottom: 0.5rem; } 
 .enh_pro_wrap .pro_tit h3 { font-size: 2rem; } 
 .enh_pro_wrap .img_box img { position: relative; top: unset; left: unset; transform: unset; } 
 .enh_pro_wrap .img_box_wrap { width: 100%; } 
 .enh_pro_wrap { gap: 3rem; margin-top: 2rem; padding-bottom: 2rem; } 
 .selec_list > .selec-tab .info_box p { font-size: 1.7rem; } 
 .selec_list > .selec-tab .info_box b::before { width: 0.8rem; height: 0.8rem; } 
 .selec_list > .selec-tab .info_box b { font-size: 1.9rem; padding-left: 2rem; } 
 .selec_list > .selec-tab .info_box .img_box { grid-row: 1 /3; } 
 .selec_list > .selec-tab .info_box { display: grid; grid-template-columns: 30% auto; width: 100%; } 
 .project_wrap { gap: 2rem 1.6rem; grid-template-columns: 1fr; } 
 hr.divider { margin-top: 4rem; } 
 .law_section + .law_section { margin-top: 5rem; } 
 .law_wrap { padding: 2rem 1rem; } 
 .ess3 .div_3 .box .img_box { width: 70%; margin: 0 auto; } 
 .ess3 .div_3 .box { flex: 1 0 100%; } 
 /* ess2 */
 .ess2 .slide-visual .img_box { height: 100%; } 
 .slider { height: 420px; } 
 .ess2 .benefit-grid { height: 440px; margin-bottom: 4rem; } 
 .benefit-card h3 { font-size: 1.8rem; } 
 .benefit-card { padding: 3rem 2rem; } 
 .benefit-card p { font-size: 1.6rem; } 
 .ess2 .system-col p { background: var(--main-color); } 
 .ess2 .div_2 .img_box { width: 100%; } 
 .gas_tech_wrap .top_box p { height: 4rem; } 
 .gas_tech_wrap .top_box h3 { font-size: 1.8rem; } 
 .gas_tech_wrap .top_box span { font-size: 2rem; width: 3.6rem; height: 3.6rem; border-radius: 6px; } 
 .gas_tech_wrap .box { flex: 1 0 48%; } 
 .gas_tech_wrap { gap: 1.4rem; display: flex; flex-wrap: wrap; } 
 #solar1 .hero-logos { margin-bottom: 2rem; } 
 #solar1 .hero-logos .logo-dot { width: 34px; width: auto; } 
 /* ess1 */
 .sc_img { overflow-x: scroll; } 
.sc_img img { width: 180%; } 
 .ess1 .feature-card .ph-icon { max-width: 24%; } 
 .top_include_wrap .sub_depth2 li { font-size: 1.6rem; } 
 .div_2 { display: flex; flex-direction: column; margin-bottom: 6rem; } 
.div_2 .img_box { width: 100%; } 
 .sub_page section.section-features { padding: 6rem 0; } 
 .sub_page .sub_title { margin-top: 4rem; } 
 .location_wrap article { display: flex; flex-wrap: wrap; height: auto; } 
 .location_wrap article .map_box { flex: 100%; padding: 0; } 
 .location_wrap article .address_box { width: 100%; order: 2; padding: 2rem 3rem; } 
 .location_wrap article .address_box h3 { margin-bottom: 1rem; padding-left: 1.8rem; } 
 .bar::before { width: 3px; height: 2rem; top: 43%; } 
 .rnd_wrap { padding: 0; } 
 .manage_wrap li .img_box img { max-width: 9rem; } 
 .manage_wrap { grid-template-columns: repeat(1, 1fr); } 
 .sub_page section { margin: 6rem auto; } 
 #about .about_2 { padding: 7rem 0; } 
 .show_sub_menu { border-bottom: 0; height: 10rem; } 
 .top_include_wrap .sub_depth2 { height: 6rem; display: flex; flex-wrap: wrap; justify-content: center; border-left: 1px solid #eee; width: 100%; } 
 .visual_menu_wrap .depth_wrap > div { font-size: 1.7rem; } 
 .depth_name { font-size: 15px; } 
 .sub_visual_box { height: 36rem; } 
 .sub_visual_txt { display: flex; flex-wrap: wrap; bottom: 4rem; } 
 .visual_text { font-size: 3.4rem; margin-bottom: 1rem; } 
 .top_include_wrap .sub_depth2.dep1_menu { display: flex; justify-content: flex-start; } 
 .top_include_wrap .sub_depth2.dep1_menu li { flex: 0 0 25%; /*border-bottom: 1px solid #eee; border-right: 1px solid #eee; */ } 
 
 /* 연혁 */
 .history_wide { padding-left: 7%; } 
.history_wrap>ul>.right> div ul>li::after { top: 11px; left: -12px; } 
.history_wrap>ul>li { padding-left: 9%; } 
.history_wrap::before { left: 0; } 
.history_wrap>ul>.left { width: 100%; text-align: left; } 
.history_wrap>ul>.right { width: 100%; position: relative; } 
.history_wrap>ul>li.right div { padding-left: 20px; } 
.history_wrap>ul>li.right::before { left: -7px; transform: unset; z-index: 2; } 
.history_wrap>ul>li.left div { padding-right: 0; } 
#history .container .img_box { max-width: fit-content; height: auto; margin-bottom: 4rem; margin-left: 0; } 
 .history_wrap>ul>li.right div { padding-left: 0; display: flex; flex-direction: column; } 
.history_wrap>ul>li.right div ul { padding-left: 2rem; } 
.history_wrap>ul>.right> div ul>li::after { top: 10px; width: 4px; height: 4px; left: -11px; } 
.history_wrap>ul>li.right::after { width: 28px; left: 9px; } 
.history_wide::after { font-size: 7rem; bottom: -5rem; } 
#history .container .tit_wrap h1 { font-size: 2.4rem; padding-bottom: 0.8rem; } 
 .history_wrap>ul>li h4 { font-size: 2.8rem; bottom: 1rem; } 
 #history article { padding: 6rem 0; } 
 #history .container .tit_wrap { margin-bottom: 4rem; } 
 .contain2 .history_wide::after { bottom: -5rem; } 
 .history_wrap .left .sticky_box { position: relative; top: 0; margin-right: 0; } 
 .sub_page h2, .sub_title h2 { font-size: 2.3rem; } 
 .sub_page h2 br { display:none } 
.manage_wrap li h3 { margin-top: 2rem; } 
 #about .hr { margin: 3rem 0 2.4rem; } 
 .about_2_1 .box { padding: 3rem 2rem; } 
 .about_2_1 .box img { max-width: 7.4rem; } 
 .rnd_wrap .img_box { margin-bottom: 2rem; } 
 .tab_list { margin-bottom: 4rem; gap: 1rem; } 
 .tab_list li { flex: 1 0 8%; min-width: unset; font-size: 1.6rem; height: 5rem; padding: 2rem; } 
 .rnd_wrap article { padding: 2.4rem 3rem; } 
 .rnd_wrap article b { font-size: 1.7rem; width: 10rem; } 
/* 태양광 pv우수제품 */
 .more-wrap { width: 30px; flex: 0 0 30px; } 
 .more-wrap .img_box { width: 100%; } 
 .more-wrap .img_box img { width:100%; } 
 .cert-grid { display: flex; flex-direction: column; gap: 4rem; } 
 .section-platform { padding: 6rem 3rem; } 
 .sub_header { margin-bottom: 4rem; } 
 #solar1 .info-box .box1 { padding: 1.6rem 2.4rem; font-size: 1.7rem; word-break: keep-all; } 
 #solar1 .info-box .box2 { padding: 2rem 3rem; font-size: 1.6rem; word-break: keep-all; } 
 #solar1 .info-grid { gap: 2rem; grid-template-columns: 1fr; } 
 #solar1 .hero-actions .btn { padding: 0 2rem; height: 5rem; } 
 #solar1 .hero-desc br { display:none; } 
 #solar1 .hero-desc { margin: 2.4rem 0; } 
 #solar1 .section-hero .inner_wrap { display: flex; flex-wrap: wrap; } 
 #solar1 .section-hero .hero-copy { margin-right: 0; flex: 1 0 100%; margin-bottom: 3rem; } 
 #solar1 .hero-actions .btn a { font-size: 1.6rem; } 
 #solar1 .section-hero .hero-media { height: 200px; width: 100%; } 
 #solar1 .section-hero .hero-media img { width: 100%; object-fit: cover; max-width: unset; } 
 .feature-card { padding: 2rem 2rem; min-height: 22rem; flex: 1 0 100%; } 
 .feature-card .info_box p:nth-child(1) { margin-bottom: 1rem; } 
 .solar1 .ph-icon { width: 27%; } 
 .problem-desc { margin-top: 2rem; } 
 .sub_page_img { padding: 4rem 2rem; } 
 .system-table { gap: 1.8rem; margin-top: 2rem; grid-template-columns: 1fr; } 
 .system-col p { font-size: 1.8rem; padding: 1rem 2rem; box-shadow: unset; background: #dddddd8f; } 
 .system-col ul { padding: 2rem 3rem; } 
 .platform-desc { margin-bottom: 2rem; margin-top: 3rem; } 
 .platform-desc br { display:none; } 
 .compare-cols .compare-col { padding: 4rem 3rem; } 
 .compare-cols { gap: 2rem; margin-bottom: 8rem; grid-template-columns: 1fr; } 
 .compare-note { font-size: 1.6rem; } 
 .compare-summary { margin-bottom: 4rem; } 
 .tb_wrap { overflow-x: scroll; } 
 .tb_wrap > table { width: 180%; margin-bottom: 1rem; } 
 .compare-table thead th { font-size: 1.8rem; } 
.compare-table th, .compare-table td { padding: 1.2rem; font-size: 1.6rem; } 
 .section-cert { padding: 8rem 0; } 
 .cert-card { flex: 0 0 100%; display: flex; gap: 2rem; } 
 .cert-card .img_box { width: 35%; } 
 .cert-body { flex: 1; } 
 .cert-title { width: 100%; font-size: 1.7rem; } 
 .cert-badges span { font-size: 1.6rem; padding: 0.5rem 2rem; } 
 /* pv태양광 */
.solar2 .section-hero .img_box img { width: 150px; } 
 .div_3 { gap: 2rem; } 
 .sub_page .section-design { height: 100vh; } 
 .section-design .design_wrap h2 { width: 80%; margin-bottom: 4rem; } 
 .section-design .info_box { gap: 2rem; display: flex; flex-direction: column; } 
 .section-design .info_box .in_box { padding: 3rem; } 
 .section-design .info_box .in_box h3 { margin-bottom: 2rem; } 
 .section-design .info_box .in_box .dot_list { margin-top: 2rem; } 
 .sys-tab { padding: 1.8rem 1.3rem; font-size: 1.5rem; } 
 .sys-content { margin-top: 2rem; gap: 2rem; } 
 .sys-info h3 { margin-bottom: 2rem; padding: 1rem 2rem; } 
 .sys-info p { width: 100%; font-size: 1.7rem; margin-bottom: 3rem; } 
 .sys-types-grid { grid-template-columns: 1fr 1fr; } 
 .sys-type-name { font-size: 1.6rem; } 
 .sub_page .section-install { padding: 6rem 0; } 
 .install_arti { padding: 7vw; } 
 .install_arti .p1 { font-size: 2rem; } 
 .install_arti .p2 { font-size: 1.6rem; } 
 .install_arti .p2 .num { font-size: 1.2rem; } 
 .num_list li { font-size: 1.6rem; } 
 .install_arti p { font-size: 1.5rem; } 
.div_3_card { padding: 2.6rem; flex: 1 0 100%; } 
 .div_3_card .info_box span { margin-bottom: 2rem; } 
 .div_3_card .ph-icon { width: 7rem; } 
 .j_busi .system-col p { background: var(--main-color); } 
 .j_busi .info_wrap .system-table { grid-template-columns: 1fr; } 

 #oda .div_3_card .info_box span { margin-bottom: 2rem; padding: 0 1rem; font-size: 14px; height: 3.4rem; } 

 .louver_m_wrap { display: block; } 
 .louver-mobile-img { margin-bottom: 2rem; border: 1px solid #ededed; border-radius: 1rem; overflow: hidden; } 
 .louver-mobile-img img { display: block; width: 100%; height: auto; } 
 .louver-mobile-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.4rem; text-align: center; } 
 .louver-mobile-item { padding: 2rem 1rem; background: var(--bg-soft); border-radius: 10px; overflow: hidden; display: flex; flex-direction: column; justify-content: center; } 
 .louver-mobile-item .num_box { background: var(--main-color); color: #fff; border-radius: 6px; width: 4rem; height: 4rem; margin: 0 auto; margin-bottom: 2rem; font-size: 16px; font-weight: 500; flex-shrink: 0; display: flex; justify-content: center; align-items: center; } 
 
 .louver-mobile-item .louver-mobile-content { display: flex; flex-direction: column; justify-content: flex-start; align-items: center; height: 100%; } 
 .louver-mobile-content h3 { margin-bottom: 1rem; color: #111; font-weight: 700; word-break: keep-all; font-size: 2rem; color: var(--main-color); } 
 .louver-mobile-content p { font-size: 15px; word-break: keep-all; } 
 } 