@charset "utf-8";

:root {
	/* --alt-font: "Plus Jakarta Sans", sans-serif;*/
	--primary-font: "GmarketSans", sans-serif;
	/* --secondary-font: "Archivo", sans-serif; */

	--main-color: #010101;
	--sub-color:#10121e;
	--white-color: #fff;
	--placeholder-color:#a1a1a1;
	--border-base-color:#d4d3d5;
	--bg-point-color:#000;
	--bg-beige-color:#f3b100;
	--bg-white-color:#fff;
	--bg-bright-gray-color:#f6f6f7;
	--bg-base-color:#3f4355;
	--table-th-border:#65697b;
	--table-td-border:#d8dae1;
	--box-shadow-btn: 0 10px 20px rgba(0,0,0,0.1);
	--border-bottom-gray:#e6e8ed;
	--bg-body-color:#f4f5fa;
}

.mainColor {  color:var(--main-color) !important;}
.placeholderColor {color:var(--placeholder-color) !important;}
.whiteColor { color:var(--white-color) !important;}
.baseBorder { border:1px solid var(--table-td-border); }

.bgBaseColor { background:var(--bg-base-color) !important; }
.bgWhiteColor { background:var(--bg-white-color) !important; }
.bgPointColor { background:var(--bg-point-color) !important; }
.bgBeigeColor { background:var(--bg-beige-color) !important;  }



:root{
  --brand-1:#009944; /* primary */
  --brand-2:#90c31f; /* accent */
  --bg-dark:rgba(0,0,0,0.5);
  --card-bg: rgba(255,255,255,0.03);
  --muted:#8b8b8b;
  --container:100%;
  --width:1360px;
}

/* 접근성용 숨김 텍스트 */
.blind {
  position: absolute;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
}


.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

a{color:inherit;text-decoration:none}
.width{max-width:var(--width);margin:0 auto;padding:0; }
.bg-dark{background-color:var(--bg-dark) !important;}

body.overflow{overflow:hidden;}

/* Header */
header{padding: 0 20px;height: 80px;position: fixed;left: 0;top: 0;z-index: 999;background-color: rgba(0,0,0,0.8);width: 100%;box-sizing: border-box;transition: background 0.3s ease;}
.header-inner{display: flex;align-items: center;justify-content:space-between;justify-content: flex-start;height: 100%;}
.logo{margin-right:80px;}
.logo a{font-weight: 700;letter-spacing: 4px;font-size: 24px;color: #fff;text-decoration: none;background:url(../images/logo.png) no-repeat center / 100%;width:106.4px;height:27.2px;display:block;}

/* 기본 네비게이션 */
.nav ul{display: flex;gap: 35px;list-style: none;margin: 0;padding: 0;}
.nav ul li a{font-size: 16px;font-weight: 600;color: #fff;text-decoration: none;}

/* --- 모바일 메뉴 버튼 --- */
.menu-btn{display: none;flex-direction: column;justify-content: center;gap: 6px;width: 28px;height: 22px;background: none;border: none;cursor: pointer;}
.menu-btn span{display: block;height: 2px;background: #fff;border-radius: 2px;transition: all 0.3s ease;}
/* --- 반응형 --- */
@media (max-width: 1024px) {
  header{padding: 0 20px;}
  .header-inner{justify-content:space-between;}
  .logo{margin-right:auto;}
  .logo a{font-size: 20px;width:85.12px;height:21.76px;}
  .menu-btn{display: flex;}
  .nav{position: fixed;right: -100%;top: 0;width: 80%;height: 100vh;background: rgba(0,0,0,0.9);display: flex;align-items: center;justify-content: center;transition: right 0.4s ease;}
  .nav ul{flex-direction: column;gap: 32px;}
  .nav ul li a{font-size: 18px;}
  /* 메뉴 열릴 때 */
  .nav.active{right: 0;}
  /* 햄버거 애니메이션 */
  .menu-btn.active span:nth-child(1){transform: translateY(9px) rotate(45deg);}
  .menu-btn.active span:nth-child(2){opacity: 0;}
  .menu-btn.active span:nth-child(3){transform: translateY(-9px) rotate(-45deg);}
}


/* --- 작업문의 버튼 --- */
a.inquiry-btn {
	margin-left: auto;
	background: rgba(255, 255, 255, 0.2);
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.5);
	color: #000;
	color:#fff;

	background: rgba(255, 255, 255, 1);
	color: #000;
	font-weight: 700;
	font-size: 14px;
	padding: 10px 22px 8px;
	border-radius: 30px;
	text-decoration: none;
	transition: all 0.3s ease;
}

a.inquiry-btn:hover {
	padding:10px 30px 8px;
	color:#000;
	background: rgba(255, 255, 255, 1);
}

.base-width{width:1400px;margin:0 auto;}
@media (max-width: 1420px) {
	.base-width{width:100%;padding:0 30px; }
}

/* 만약 모바일에서도 표시하고 싶다면 이 주석 해제 */
@media (max-width: 1024px) {
  a.inquiry-btn {
    display: block;
    position: fixed;
    bottom: auto;
	top:11px;
    right: 65px;
    background: rgba(0,0,0,0.5);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.5);
    padding: 10px 20px;
    border-radius: 50px;
    font-size: 13px;
    z-index: 20;
  }
	a.inquiry-btn:hover {
	 background: rgba(0,0,0,0.8);
	  color: #fff;
	}

}



/* Hero */
.hero{
	position:relative;overflow:hidden;color:#fff;padding:90px 20px 0; display:flex;justify-content:center; align-items:center; flex-direction:column;
	/* background:url(../images/mv_bg.jpg) no-repeat center / cover; */
	height:calc(100vh - 60px);
}

.hero-inner{display:flex;justify-content:space-between;align-items:center; }
.hero video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1;}
/* .hero::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.45);z-index:-1;} */
.hero-inner .hero-text{padding-right:70px}
.hero .hero-text small{font-size:25px;color:#000;color:#fff;}
.hero .hero-text h2{font-size:85px;line-height:1.2;margin-bottom:16px;font-weight:900;color:#000;padding:15px 0 20px;color:#fff;}
.hero .hero-text p{margin-bottom:50px;}
.hero .hero-text p span{color:#000;font-size:20px;line-height:1.5;display:block;color:#fff;}
.hero .hero-text a.btn{font-size:14px;border-radius:30px;padding:10px 25px;border:1px solid rgba(255,255,255,0.5);background:rgba(255,255,255,1);color:#000;font-weight:700;transition:all 0.6s}
.hero .hero-text a.btn:hover{padding:10px 35px;box-shadow:0 5px 10px rgba(0,0,0,0.08);}
.hero .hero-img img{max-width:100%; }


.redue{background:linear-gradient(135deg,#1f0330 0%, #1e4c7f 100%);color:#fff;height:60px;overflow:hidden;display:flex;justify-content:center;align-items:center;}
.redue div{text-align:center;}
.redue div em{font-size:14px;font-weight:700;color:#fff;margin:0 40px;}


@media (max-width:1350px){
	.hero{padding:100px 20px 0;}
	.hero-inner{width:100%;}
	.hero-inner .hero-text{padding-right:30px;}
	.hero .hero-text small{font-size:20px;}
	.hero .hero-text h2{font-size:60px;margin-bottom:10px;padding:15px 0 20px;}
	.hero .hero-text p{margin-bottom:20px;}
	.hero .hero-text p span{font-size:17px;display:inline;}
	.hero .hero-text a.btn{font-size:13px;padding:10px 25px;}
	.hero .hero-text a.btn:hover{padding:10px 35px;}
	.redue div em{font-size:14px;font-weight:700;margin:0 30px;}
}
@media (max-width:1024px){
	.hero-inner{flex-wrap:wrap;}
	.hero-inner .hero-text{padding-right:0;text-align:center;}
	.hero .hero-text small{font-size:18px;}
	.hero .hero-text h2{font-size:45px;margin-bottom:0;padding:8px 0 20px;text-align:center;}
	.hero .hero-text p{margin-bottom:20px;}
	.hero .hero-text p span{font-size:17px;display:inline;text-align:center;}
	.hero .hero-text a.btn{font-size:12px;padding:10px 25px;text-align:center;}

	.hero .hero-img{margin-top:50px;}
}
@media (max-width:768px){
	.redue{height:50px;}
	.redue div em{font-size:14px;margin:0 20px;}
}


/* about */
.about{padding:200px 0 0;}
.about .inner{display:flex;justify-content:space-between;}
.about .inner .about-content{flex:1;padding-right:20px;}
.about .inner .about-content h3{font-size:18px;letter-spacing:10px;margin-bottom:80px;}
.about .inner .about-content .text h4{padding:0 0 50px 0;}
.about .inner .about-content .text h4 span{font-size:50px;line-height:1.3;word-break:keep-all;display:block;}
.about .inner .about-content .text p{}
.about .inner .about-content .text p span{display:block;font-size:18px;line-height:2.2;word-break:keep-all}
.about .inner .about-img{flex:0 0 40%;display:flex;justify-content:flex-end;position:relative;}
.about .inner .about-img .img{border-radius:250px;overflow:hidden;background-color:#fff;height:640px;width:500px;z-index:4;position:relative;}
.about .inner .about-img .img img{object-fit:cover;width:100%;}
.sdw{border-radius:250px;overflow:hidden;background-color:#fff;height:640px;width:500px;}
.shadow1{background-color:#c8eafc;position:absolute;right:50px;top:0;z-index:3;}
.shadow2{background-color:#e3f3fb;position:absolute;right:100px;top:0;z-index:2;}
.shadow3{background-color:#fafafa;position:absolute;right:150px;top:0;z-index:1;}


@media (max-width:1350px){
	.about{padding:100px 0 0;}
	.about .inner{flex-wrap:wrap;}
	.about .inner .about-content{flex:0 0 100%;padding-right:0;}
	.about .inner .about-content h3{font-size:18px;letter-spacing:10px;margin-bottom:50px;}
	.about .inner .about-content .text h4{padding:0 0 30px 0;}
	.about .inner .about-content .text h4 span{font-size:40px;display:block;}
	.about .inner .about-content .text p{}
	.about .inner .about-content .text p span{display:block;font-size:17px;}
	.about .inner .about-img{flex:0 0 100%;display:flex;justify-content:flex-end;position:relative;margin-top:50px;padding:0 30px;}
	.about .inner .about-img .img{border-radius:250px;overflow:hidden;background-color:#fff;height:auto;width:auto;z-index:4;position:relative;}
	.about .inner .about-img .img img{object-fit:cover;width:100%;}
	.sdw{border-radius:250px;overflow:hidden;background-color:#fff;height:auto;width:auto;}
	.shadow1{right:50px;top:0;z-index:3;}
	.shadow2{right:100px;top:0;z-index:2;}
	.shadow3{right:150px;top:0;z-index:1;}
}
@media (max-width:1024px){
	.about .inner .about-content .text h4 span{font-size:32px;display:inline;word-break:break-all;}
	.about .inner .about-content .text p span{font-size:15px;display:inline;}
}
@media (max-width:768px){

}


/* Services */
.services{padding:200px 0 0;}
.services .inner .services-content h3{font-size:18px;letter-spacing:10px; margin-bottom:80px;}
.services .inner .services-content .services-grid {display: flex;justify-content: space-between;}
.services .inner .services-content .services-grid .service-card{flex:0 0 23%;border-radius:15px;padding:380px 20px 80px;}
.services .inner .services-content .services-grid .service-card h4{font-size:30px;line-height:1.4;word-break:keep-all;text-align: center;color:#fff;}
.services .inner .services-content .services-grid .service-card p{font-size:18px;line-height:1.6;word-break:keep-all;color:#fff;margin-top:20px;text-align: center;font-weight:300;}
.services .inner .services-content .services-grid .sc1{background:#243f7a url(../images/serv_img1.jpg) no-repeat center top / cover;}
.services .inner .services-content .services-grid .sc2{background:#243f7a url(../images/serv_img2.jpg) no-repeat center top / cover;}
.services .inner .services-content .services-grid .sc3{background:#243f7a url(../images/serv_img3.jpg) no-repeat center top / cover;}
.services .inner .services-content .services-grid .sc4{background:#243f7a url(../images/serv_img4.jpg) no-repeat center top / cover;}


@media (max-width:1350px){
	.services{padding:100px 0 0;}
	.services .inner .services-content h3{font-size:18px;letter-spacing:10px; margin-bottom:50px;}
	.services .inner .services-content .services-grid {flex-wrap:wrap;}
	.services .inner .services-content .services-grid .service-card{flex:0 0 49%;padding:380px 20px 80px;margin-bottom:20px;}
	.services .inner .services-content .services-grid .service-card h4{font-size:24px;}
	.services .inner .services-content .services-grid .service-card p{font-size:16px;}
}
@media (max-width:560px){
	.services .inner .services-content .services-grid .service-card{flex:0 0 100%;padding:360px 20px 70px;}
	.services .inner .services-content .services-grid .service-card h4{font-size:24px;}
	.services .inner .services-content .services-grid .service-card p{font-size:14px;}
}


/* works  */
.works{padding:200px 0 0;}
.works .inner .works-content h3{font-size:18px;letter-spacing:10px; margin-bottom:80px;}
.works .inner .works-content .works-grid {display: flex;justify-content: space-between;background-size:cover;background-position: center;background-repeat: no-repeat;flex-wrap:wrap;}
.works .inner .works-content .works-grid .work-card{flex:0 0 48%;border-radius:15px;margin-bottom:30px;position: relative;overflow:hidden;cursor:pointer;}
.works .inner .works-content .works-grid .work-card article{padding:0 10px;}
.works .inner .works-content .works-grid .work-card article ul {display: flex;margin-top:15px;}
.works .inner .works-content .works-grid .work-card article ul li{ border-radius: 15px;border:1px solid rgba(0,0,0,0.3);color:#fff;padding:5px 15px;font-size:12px;display:inline-block;margin-right:10px;background-color:rgba(0,0,0,1)}
.works .inner .works-content .works-grid .work-card article p{font-size:26px;line-height:1.6;word-break:keep-all;margin:10px 0 0;font-weight:700;}
.works .inner .works-content .works-grid .work-card article em{font-size:12px;line-height:1.4;word-break:keep-all;display: block;}
.works .inner .works-content .works-grid .work-card article div{border-radius:15px;overflow: hidden;position: relative;}
.works .inner .works-content .works-grid .work-card div{overflow:hidden;border-radius:25px;position:relative;}
.works .inner .works-content .works-grid .work-card div img { width:100%;transition: all 0.8s;overflow:hidden;border-radius:15px;}
.works .inner .works-content .works-grid .work-card div:hover img {transform: scale(1.07);}
.works .inner .works-content .works-grid .work-card div:hover::after{
  content:"+";position: absolute;left:50%;top:50%;color:rgba(255,255,255,0.7);font-size:70px;font-weight:300;font-family: 'Times New Roman', Times, serif;transform: translate(-50%,-50%);
}
img.work_list_r { border-radius:25px !important;overflow:hidden !important; }

@media (max-width:1350px){
	.works{padding:100px 0 0;}
	.works .inner .works-content h3{font-size:18px;letter-spacing:10px; margin-bottom:50px;}
	.works .inner .works-content .works-grid .work-card{flex:0 0 48%;border-radius:15px;margin-bottom:30px;}
	.works .inner .works-content .works-grid .work-card article ul {display: flex;margin-top:15px;}
	.works .inner .works-content .works-grid .work-card article ul li{ padding:5px 15px;font-size:12px;margin-right:10px;}
	.works .inner .works-content .works-grid .work-card article p{font-size:26px;margin:10px 0 0;}
	.works .inner .works-content .works-grid .work-card article em{font-size:12px;}
	.works .inner .works-content .works-grid .work-card div:hover::after{font-size:50px;}
}




/* contact */
.contact{ padding:150px 5% 100px;}
.contact .inner{ background:url(../images/inq_bg.jpg) no-repeat center / cover; border-radius:20px;overflow: hidden;}
.contact .contact-content{display: flex;flex-direction: column;justify-content: center;align-items: center;padding:120px 0;}
.contact .contact-content p span{font-size:36px;line-height:1.5;font-weight:300;display: block;text-align: center;}
.contact .contact-content button{margin-top:50px;padding:18px 50px 15px;border-radius:50px;background:#fff;border:1px solid #ddd;font-weight:700;font-size:20px;line-height:1;transition: all 0.6s;}
.contact .contact-content button:hover{padding-left:70px;padding-right:70px;}


@media (max-width: 1024px) {
	.contact{ padding:100px 30px 30px;}
	.contact .contact-content{padding:60px 50px;}
	.contact .contact-content p{text-align:center;}
	.contact .contact-content p span{font-size:30px;display:inline;}
	.contact .contact-content button{margin-top:50px;font-size:20px;}
}
@media (max-width:768px){
	.contact .contact-content p span{font-size:26px;}
	.contact .contact-content button{margin-top:40px;font-size:18px;padding-left:30px;padding-right:30px;}
}
@media (max-width:480px){
	.contact .contact-content p span{font-size:22px;}
	.contact .contact-content button{margin-top:30px;font-size:16px;}
}


footer{background:#111;color:#fff;padding:50px 5%;}
footer .inner{display:flex;justify-content:space-between;align-items:center;position: relative;}
footer .inner .footer-content ul{display: flex;position: relative;}
footer .inner .footer-content ul li{color:#9b9b9b;font-size:12px;font-weight:500;line-height:1.4;margin-right:15px;}
footer .inner .footer-content small{color:#9b9b9b;font-size:12px;line-height:1.4;}
footer .inner .footer-content .foot-sns{position: absolute;right:0;top:0;}

/* 모바일 메뉴 닫기 버튼 */
.close-btn{display: none;position: absolute;top: 15px;right: 20px;font-size: 32px;color: #fff;background: none;border: none;cursor: pointer;z-index: 20;}

@media (max-width: 1024px) {
	.close-btn{display: block;}
	footer .inner{display:flex;justify-content:space-between;align-items:center;position: relative;}
	footer .inner .footer-content ul{display: flex;position: relative;flex-wrap:wrap;}
	footer .inner .footer-content ul li{flex:0 0 100%; margin-bottom:5px;}
}

/* Responsive */
@media(max-width:1000px){
/*  .works-grid{grid-template-columns:repeat(3,1fr)} */
  .services .inner{grid-template-columns:1fr}
  .services-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
/*  .works-grid{grid-template-columns:repeat(2,1fr)} */
	header{padding:0 20px; height:60px;}
	.hero h1{font-size:30px}
	.hero p.lead{font-size:14px;}
	.thumb{width:135px;height:135px}
	.projects-list{flex-direction:column;align-items:center}
	.services .left{padding-right:0}
	.services .left h2{font-size:40px;}
	.services .left p{font-size:16px}
	.services-grid{grid-template-columns: 1fr;	 }
	.service-card {width: 100%; }
	.section{padding:80px 30px}
	.section h3{font-size:40px;margin:0 0 30px;}
	.cta { padding:70px 30px; margin:30px 30px;}
	.projects-list{padding:0 30px;}
	.projects-list>.proj{width:100%;}
	footer .foot-inner{flex-wrap:wrap;}
	footer .foot-inner>div{margin-bottom:10px;}
}
@media(max-width:420px){
/*  .works-grid{grid-template-columns:repeat(2,1fr);gap:12px} */
  .thumb{width:120px;height:120px}
  nav ul{display:none}
}


/* 1024px 이하 → 2열 */
@media (max-width: 1024px) {
  .works-grid{grid-template-columns: repeat(2, auto);gap: 16px;}
}
@media (max-width:768px){
    .works-grid { grid-template-columns: repeat(2, 1fr); }
    .works .inner .works-content .works-grid .work-card article p {font-size: 20px;margin: 10px 0 0;}
}
@media (max-width:480px){
    .works-grid { grid-template-columns: repeat(1, 1fr); gap: 0;}
	.works .inner .works-content .works-grid .work-card{flex:0 0 100%;}

}



/* 600px 이하 → 1열 */
@media (max-width: 600px) {
  .thumb{width: 90%;border-radius: 12px;}
  .thumb .overlay h4{font-size: 1rem;}
  .thumb .overlay p{font-size: 0.8rem;}
  .thumb .overlay button{padding: 0.4rem 1rem;font-size: 0.8rem;}
}


/* consult */
.consultLayer { 
	display: flex;
	display:none;
	position:fixed; left:0; top:0;
	width:100%; height:100%;
	justify-content:center;
	align-items:center;
	z-index:99999;
/*	max-height: 80vh; */
/*	overflow-y:scroll;  */
}
.consultLayer section { 
	display:flex; justify-content:center; align-items:center; 
	width:100%; height:100%;
	position:relative; z-index:100;
	background:rgba(0,0,0,0.5);
	border-radius:25px;
	overflow: hidden;
}
.consultLayer::before {
	content:"";display:block; width:100%;height:100%; position:absolute; left:0; top:0; z-index:1;
	background:rgba(0,0,0,0.5);
}
.consultTop{background:linear-gradient(135deg,#1f0330 0%, #1e2656 60%, #1e4c7f 100%);height:50px;display: flex;justify-content: center;align-items: center;position: relative;}
.consultTop em{display: flex;justify-content: center;}
.consultTop em span{font-size:10px;font-weight:700;color:#fff;margin:0 40px;}
.consultTop a.btnBack{position: absolute;left:30px;top:50%;height: 74px;transform: translateY(-50%);display: flex;align-items: center;}
.consultTop a.btnBack span{color:#fff;font-size:12px;font-weight:700;padding-left:10px;}

.consultDiv { border-radius:25px; width:1000px; overflow:hidden;height:auto;}
.consultHead { padding:50px 30px 0;position:relative; background:#fff;background:#f6f6f6;}
.consultHead h2 { font-size:45px; color:#1E1E1E; font-weight:600;text-align: center;padding-bottom:10px} 
.consultHead p {text-align: center;margin:10px 0 10px;display:none;}
.consultHead p span{font-size:16px; color:#000; font-weight:500;display: block;line-height:1.5;}
.consultHead ul{display: flex;justify-content: center;padding-bottom:10px;}
.consultHead ul li{display: flex;align-items: center;padding:10px 0 0;margin:0 20px;}
.consultHead ul li span{font-size:16px;color:#000;font-weight:500;padding-left:10px;}

.i-back{display: block;width: 24px;height: 15.2px;background:url(../images/i-back.png) no-repeat center / 100%;}
.i-phone{display: block;width: 23.2px;height: 24.8px;background:url(../images/i-phone.png) no-repeat center / 100%;}
.i-email{display: block;width: 27.2px;height: 20.8px;background:url(../images/i-email.png) no-repeat center / 100%;}

a.btnCloseLayer { 
    position:absolute;
    top:13px;
    right:20px;
    cursor:pointer;
    font-size:20px;
    font-weight:500;
    color:#fff;
    z-index:1000;
}

.consultScroll { /* height:calc(100vh - 428px); overflow-y:auto; */ background:#f6f6f6;}
.consultCon { padding:0px 50px 0;display: flex;flex-wrap:wrap;justify-content: space-between;}
.regFormList { margin-bottom:10px; }
.regFormList label { font-size:14px; font-weight:600; color:#545454; }
.ness { color:#aaa081; font-weight:700; }
.regFormList div { padding:0 0; display:flex; }
.empty_span { width:34px; color:#CECECE; font-size:16px; font-weight:400; display:flex; justify-content:center; align-items:center; }

.regFormList div.selectbox { padding:0 0; }
.selectbox{ 
	border:1px solid #aeaeae; font-size:16px; 
	color:#1e1e1e; font-weight:600; padding:0 0; 
	border-radius:5px;
	position: relative;
	height:51px;
}

.selectbox::after { 
	content:"";display:block; position: absolute; right:15px; top:50%; transform: translateY(-50%); 
	background:url(../imgs/sub/i-select-arrow.svg) no-repeat center / 100%;
	width:16px; height:10px;
}

.sel { height:49px; background: none !important; border: none !important; width:100%; appearance: none !important; -webkit-appearance: none !important; font-size:16px; padding-left:10px;}
.sel2 { height:49px; background: none !important; border: none !important; width:100%; appearance: none !important; -webkit-appearance: none !important; font-size:16px; padding-left:10px;}


.inpx { border:1px solid #aeaeae; font-size:14px; color:#1e1e1e; font-weight:600; padding:12px 15px 10px; border-radius:5px;background:#fff;}
.inpx::placeholder { color:#a0a0a0; font-weight:400; }
.texta1 { height:130px; }



.w48per { width:48% !important; }
.w49per { width:49% !important; }
.w50per { width:50% !important; }
.w70per { width:70% !important; }
.w100per { width:100% !important; }
.w190px { width:190px !important; }
.w150px { width:150px !important; }
.w100px { width:100px !important; }


.regFormCheckList{
  display: flex;flex-wrap:wrap;
  margin-top:0;
  /* border:1px solid #aeaeae;  */
  padding:5px 0 0 !important; 
  /* border-radius:5px; */
  /* background:#f6f6f6; */
  align-items: center;
  /* justify-content: center; */
}
.regFormCheckList label{margin-left:30px;display: flex;align-items: center;margin-bottom:5px;font-weight:500;}
.regFormCheckList label:nth-of-type(1){margin-left:0;}
.regFormCheckList label input[type=checkbox]{margin-right:5px;}


.flexWrapType1 ul { display:flex; }
.flexWrapType1 ul li { margin-left:50px; position:relative;}
.flexWrapType1 ul li:nth-child(1) { margin-left:0;  }

.checkingAreaN { position: relative; padding-left:0; display:flex; align-items:center; height:28px; margin:0 auto 0 15px; text-align:center;}
.checkingAreaN input[type="checkbox"] {
	appearance: none;
}
.checkingAreaN input[type="checkbox"] + i { 
	border: none;
	width:26px; height:26px;
    border:1px solid #e0e0e0;
    background:#fff;
	position: absolute;
	left:0; top:0;
    display: flex;
    justify-content: center;
    align-items: center;

}
.checkingAreaN input[type="checkbox"]:checked + i { 
    border:1px solid #06BFEA;
    background:#06BFEA;
}
.checkingAreaN input[type="checkbox"]:checked + i::after { 
	content:"";
    display:block;
    width:20px; height:20px; 
    background:url(../imgs/sub/i_check.svg) no-repeat center / 100%; 
    border-radius:7px;
}
.checkingAreaN strong { font-weight:600; color:#545454;}

.fxBtnCenter { height:80px; display:flex; justify-content:center; align-items:center; padding-bottom:10px; background:#f6f6f6; }
.fxBtnCenter button { margin:0 10px; }

.btnBeige { width:160px; height:50px; background:#000; display:flex; justify-content:center; align-items:center; color:#fff; font-size:16px;border-radius:30px;transition:all 0.6s}
.btnBaseTransparent { width:180px; height:60px; background:#f4f2f2; border:1px solid #cccccc; display:flex; justify-content:center; align-items:center; color:#3E3E3E; font-size:20px;}
.btnBeige:hover{width:180px;}

.more-area{display:flex;justify-content:center;align-items:center;padding:40px 0 0;}
.more-area a{width:60px;height:60px;display:inline-flex;justify-content:center;align-items:center;border-radius:30px;background:#000;transition:all 0.7s;}
.more-area a i{font-size:20px;font-weight:500;font-family: 'Times New Roman', Times, serif;color:#fff;font-style:normal;}
.more-area a:hover{transform:scale(1.3);}


@media (max-width:1024px){
	.consultTop em span{font-size:10px;margin:0 5px;}
	.consultTop a.btnBack{left:10px;top:50%;height: 50px;}
	.consultTop a.btnBack span{display:none;}

	/* consult */
	.consultLayer section { width:100%; }
	.consultTop{height:50px;}
	.consultTop em span{font-size:10px;font-weight:700;color:#fff;margin:0 10px;}
	.consultTop a.btnBack{height: 50px;}

	.consultDiv{width:calc(100% - 40px); margin:0 20px; }
	.consultHead { padding:30px 20px 0;}
	.consultHead h2 { font-size:30px;padding-bottom:10px;} 
	.consultHead p {text-align: center;margin:10px 0 10px;display:none;}
	.consultHead p span{font-size:14px; color:#000; font-weight:500;display: block;line-height:1.5;}
	.consultHead ul{padding-bottom:10px;flex-wrap:wrap;}
	.consultHead ul li{padding:5px 0 0;margin:0 0 5px; flex:0 0 100%;}
	.consultHead ul li span{font-size:13px;}

	.i-back{width: 19.2px;height: 12.16px;}
	.i-phone{width: 18.56px;height: 19.84px;}
	.i-email{width: 21.76px;height: 16.64px;}

	.consultScroll{height:calc(100vh - 348px);overflow-y:auto;}
	.consultCon { padding:0px 20px 0;}
	.consultCon>article{width:100% !important;}
	.regFormList { margin-bottom:10px; }
	.regFormList label { font-size:14px; font-weight:600; color:#545454; }
	.ness { color:#aaa081; font-weight:700; }
	.regFormList div { padding:0 0; display:flex;flex-wrap:wrap; }

	.inpx { font-size:14px; padding:12px 15px 10px;}

	.regFormCheckList label{margin-left:0;margin-right:20px;}
	.regFormCheckList label:nth-of-type(1){margin-left:0;}

	.fxBtnCenter { height:60px; padding-bottom:0; }
	.btnBeige { width:140px; height:40px; font-size:14px;}

}



/* works */
.work-wrap{padding:150px 30px;max-width:1400px;margin:0 auto;}
.work-wrap section{}
.work-wrap h2{font-size:24px;letter-spacing:50px;margin-bottom:50px;}
.work-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;}
.work-item{
	flex:0 0 23%;
/* 
	border: 1px solid #ddd;
    padding: 15px;
*/
	border-radius: 10px;
    cursor: pointer;
    background:#fff;
	overflow:hidden;
}
.work-item div{
    width: 100%;
    border-radius: 10px;
	overflow:hidden;
}
.work-item div img{width:100%;	transition:all 0.7s;}
.work-item:hover div img{transform:scale(1.09);}
.work-item h3{font-size:16px;line-height:1.4;padding:15px 0;font-weight:500;}


#viewContent{
    position: fixed;
    top:0; left:0;
    width:100vw; height:100vh;
    background: rgba(0,0,0,0.6);
    display:none;
    justify-content:center;
    align-items:center;
    z-index:999999;
}
.view-box{
    background:#fff;
    width:600px;
    max-height:80vh;
    overflow-y:auto;
    padding:20px;
    border-radius:12px;
}


.work-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.work-item {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    transition: 0.3s;
}

.work-item > div {
    width: 100%;
    aspect-ratio: 5 / 3; /* 원하는 비율로 조절 가능 */
    overflow: hidden;
}

.work-item img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 이미지 비율 상관없이 꽉 맞춤 */
}

.work-item h3 {
    padding: 16px;
    font-size: 18px;
    line-height: 1.4;
}

/* 반응형 */
@media (max-width:1200px){
    .work-list { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 1024px) {
	.work-wrap h2{font-size:24px;letter-spacing:25px;}
}
@media (max-width:768px){
    .work-list { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width:480px){
    .work-list { grid-template-columns: repeat(1, 1fr); gap: 0;}
	.work-wrap h2{font-size:20px;letter-spacing:15px;}
}

