/* ===== MAIN - VISUAL ===== */


.dl, .dl2{ display:flex;}
.dl dt, .dl2 dt{flex-shrink: 0;}
.dl dd, .dl2 dd{flex-grow: 1;}



.hid {position: absolute;margin: -1px; padding: 0; width: 1px; height: 1px;border: 0;clip: rect(0, 0, 0, 0);overflow: hidden;}
/* slick slide common */
.slick-slider {-webkit-transition: all ease-in-out 0.3s; transition: all ease-in-out 0.3s; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent;}
.slick-slide {display: none; height: 100%; min-height: 1px; vertical-align: middle;}
.slick-list {overflow: hidden;}
.slick-list.dragging {cursor: pointer;}
.slick-initialized .slick-slide {display: inline-block;}
.slick-arrow.slick-hidden {display: none;}
.slick-current {opacity: 1; display: block;}
.slick-track {position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto;}

/* slick arrow show */
.arwShow .slick-arrow.slick-hidden { display: inline-block; }


/* 메인비주얼 */
.MVisual { position: relative; width:100%; height:80vh; overflow:hidden; }

.MVisual .slider {overflow: hidden; background: rgba(0, 0, 0, 0.5);  isolation: isolate; }
.MVisual .slider,
.MVisual .slick-list,
.MVisual .slick-track {height: 100%; }
.MVisual .item { position: relative; background-size:cover; background-position:50% 50%; }
.MVisual .item .inner{ height:100%;}
.MVisual .area{ position:absolute; top:48%;transform: translateY(-50%);left:0; z-index:2; width:100%; color:#fff; }
.MVisual .area h1{ font-size:65px; font-weight:400;}
.MVisual .area h2{ font-size:90px;font-family: 'Paperlogy'; font-weight:800; margin-bottom: 25px; }
.MVisual .area p{ position: absolute; right: 0; bottom: -130%; font-size:30px; text-align: right;}
.MVisual .area p  strong{ font-size:40px; text-align: right; display: block; margin-bottom: 11px;}

.MVisual .type1 h2{}
.MVisual .area p{}
.MVisual .type2 p{ margin:20px 0 35px 0;}


.MVisual .control { position: absolute; bottom:250px; left: 0; height: 2rem; display: flex; align-items: center;z-index: 2; }
.MVisual .control .page { color: #fff;  margin-right: 1rem; }
.MVisual .control .page span { position: relative; display: inline-block; padding-left:85px; color: #ebebeb; }
.MVisual .control .page span::before { position: absolute; top: 50%; left:20px; width:50px; height:1px; border-top:1px #fff solid; background: #fff; content: ""; }
.MVisual .control a { color: #fff;  padding: 0 0.1rem; }
.MVisual .control a.play { display: none; }


.MVisual .cs-call{ position: absolute; bottom: 0; left:0; display: flex; width:100%; align-items: center;  z-index: 2; color:#fff; }
.MVisual .cs-call:before, .MVisual .cs-call:after{ content:''; position:absolute; bottom:0;width:500px;height:100%;}
.MVisual .cs-call:before{  left:-500px;background:#0072bc;}
.MVisual .cs-call:after{ right:-500px;background:#092430;}
.MVisual .cs-call .s01, .MVisual .cs-call .s02{ padding:35px 0; font-size:25px; height:30px;}
.MVisual .cs-call .s01{ width:32%;background: linear-gradient(315deg, rgba(0, 88, 178, 1) 38%, rgba(0, 114, 188, 1) 100%);  font-weight:600;}
.MVisual .cs-call .s02{ background:#092430; width:calc(100% - 32%); display:flex;justify-content:flex-end;  align-items: center;font-weight:300; }
.MVisual .cs-call .s02 strong{ color:#60c0ff; font-weight:600; margin-right:30px; display:flex;align-items: center;}
.MVisual .cs-call .s02 strong i{ font-size:30px; font-weight:normal; margin-right:10px;}
.MVisual .cs-call .s02 p+p{ position:relative; margin-left:20px; padding-left:20px;}
.MVisual .cs-call .s02 p+p:before{ content:''; position:absolute; top:50%; left:0; width:1px; height:15px; border-left:1px solid rgb(255,255,255,0.3);transform: translateY(-50%);}
.MVisual .cs-call .s02 p span{font-weight:600; margin-left:10px; letter-spacing:0;}

.quickmenu { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px; padding: 55px 0;  border-bottom: 2px solid #131820;}
.qm_body { display: flex; flex: 3; flex-wrap: wrap; gap: 20px;  min-width: 300px;}
.qm_btn { display: flex; flex: 1;  gap: 10px; flex-wrap: wrap; justify-content: flex-end; align-items: center;  min-width: 200px;}
.consultation-item { display: flex; align-items: flex-start; gap: 24px; margin-right: 8%;}
.icon {  font-size: 24px; color: #007bff; flex-shrink: 0;}
.content strong { display: block; font-size: 24px; margin-bottom:10px; font-family: 'Paperlogy'; font-weight: 600;color: #222;}
.content p { font-size: 22px; color: #555; margin: 0;}
.qm_btn a { padding: 40px; font-size: 20px; border-radius: 12px; cursor: pointer;font-weight: 500; font-family: 'Paperlogy'; white-space: nowrap;}
.quickbtn1 {background-color: #111; color: #fff;}
.quickbtn2 { background-color: #fff; color: #111;  border: 1px solid #ccc;}


/* 공통 */
.m_tit h1 {font-size: 60px;  color: #008080; font-weight: 800; margin-bottom: 20px;}
.m_tit h5 {font-size: 24px; color: #444; margin-bottom: 30px;}
.m_tit2 h1 {font-size: 60px; color: #b8dd44; font-weight: 800; margin-bottom: 20px;}
.m_tit2 h5 {font-size: 24px; color: #ccc; margin-bottom: 80px;}

.sec01 { display: flex; flex-wrap: wrap;  justify-content: center; gap: 30px; padding: 100px 20px;  background-color: #fff;  box-sizing: border-box;}
.sec01 .s01_1 {flex-basis:29%;  flex-shrink: 0;  box-sizing: border-box;}
.sec01 .s01_2  {flex-grow: 1;  padding: 50px 0;}
.sec01 .s01_2 .m_tit {padding-left: 30px;}
.sec01 .s01_1_bg { background: url('/theme/2025/img/main/sec01_1.jpg') no-repeat center center; background-size: cover; padding: 70px; color: #fff; border-radius: 2px; min-height: 500px;  display: flex; flex-direction: column; justify-content: space-between;}
.sec01 .s01_1_bg img {  width:48%; margin-bottom: 30px;}
.sec01 .s01_1_bg p { font-size:20px;margin: 10px 0;   line-height: 1.6;   font-weight: 400;}
.sec01 .s01_1_bg span {   display:block;   font-weight: 600;   margin-right: 6px;   color: #c0e6f2;}
.sec01 .s01_1_bg strong {font-size: 26px; font-weight: bold; color: #fff;}
.sec01 .s01_2 ul { display: flex;  flex-wrap: wrap;  gap: 20px;   padding: 0;  list-style: none; height: 65%; margin-top: 50px;}
.sec01 .s01_2 ul li { flex: 1 1 30%; background-color: #f9f9f9;  border-radius:2px; padding: 62px; position: relative; min-height: 200px; box-sizing: border-box;    border: 1px solid #e9e9e9;}
.sec01 .s01_2 ul li:hover{ background-color: #90c31f; }
.sec01 .s01_2 ul li:hover h2, .sec01 .s01_2 ul li:hover p{ color: #fff;}
.sec01 .s01_2 ul li h2 {font-size: 30px; font-weight: 700;   margin-bottom: 24px; }
.sec01 .s01_2 ul li p {font-size: 20px; color: #555;}
.sec01 .s01_2 ul li img { position: absolute; bottom: 50px; right: 33px; width: 16px; height: 16px; background: #b8dd44; padding: 10px; border-radius: 50px;}
.sec01 .s01_2 ul li:hover img{background: #222;}


.sec02 { background: url('/theme/2025/img/main/sec02_bg.jpg') no-repeat center center; background-size: cover; }
.sec02 .inner{ display: flex; align-items: center; color: #fff; position: relative;}
.sec02 .s02_1 {flex-basis: 60%;  flex-shrink: 0;}
.sec02 .s02_2 { flex-grow: 1; box-sizing: border-box;}
.sec02 .s02btn { display: flex; gap: 20px; flex-wrap: wrap;}
.sec02 .s02btn a {  display: flex;  align-items: center; background-color: rgba(144, 195, 31, 0.5); padding: 17px 50px; color: #fff; font-weight: 600; font-size: 20px;  border-radius: 5px; text-decoration: none; transition: background 0.3s;}
.sec02 .s02btn a:hover { background-color: #a0c530;}
.sec02 .s02btn a img { margin-left: 10px; width: 16px;  height: auto;}
.sec02 .s02_2 ul {backdrop-filter: blur(4px); border-left: 1px solid rgba(255, 255, 255, 0.4); border-right: 1px solid rgba(255, 255, 255, 0.4);}
.sec02 .s02_2 ul li { display: flex; align-items: center; gap: 80px;  padding: 50px 100px; border-bottom: 1px solid rgba(255, 255, 255, 0.4);}
.sec02 .s02_2 ul li:last-child { border-bottom: none;}
.sec02 .s02_2 ul li img {width:100%; height: auto; flex-basis: 8%;  flex-shrink: 0;}
.sec02 .s02_2 ul li h2 { font-size: 26px; font-weight: 600;  color: #fff;   margin: 0 0 10px;}
.sec02 .s02_2 ul li p {  font-size: 18px; color: #f0f0f0; margin-bottom: 6px;}
.sec02 .s02_2 ul li strong {font-size: 26px;  color: #b8dd44;  font-weight: 700;}


.sec03 {margin: 100px 0; }
.sec03 .m_tit { text-align: center;  margin-bottom: 60px;}
.sec03 .s03_1 ul { display: flex; gap: 30px; justify-content: space-between; flex-wrap: wrap;border-top: 1px solid #e9e9e9; border-bottom: 1px solid #e9e9e9; padding: 20px 0;}
.sec03 .s03_1 ul li { flex: 1 1 calc(30%);}
.sec03 .s03_1 ul li:nth-child(2) {border-left:1px solid #e9e9e9; border-right: 1px solid #e9e9e9;  }
.sec03 .s03_1 ul li a { display: block; padding: 0 20px 30px; text-decoration: none;  color: inherit;  height: 100%;}
.sec03 .s03_1 ul li img { width: 100%;  height: auto;  object-fit: cover; border-radius: 4px; margin-bottom: 20px;}
.sec03 .s03_1 ul li h5 { font-size: 26px; color: #222;  font-weight: 700;  margin-bottom: 10px;}
.sec03 .s03_1 ul li p { font-size: 20px;  color: #555; margin-bottom: 15px;  line-height: 1.5;}
.sec03 .s03_1 ul li span { display: inline-block;  background-color: #f0f0f0; padding: 10px 30px; margin: 10px 3px 0 0; border-radius: 20px; font-size: 18px;  color: #444;}

.sec04{ margin: 100px 0; }
.sec04 .m_tit { text-align: center;  margin-bottom: 60px;}


.sec_ft{}
.sec_ft ul{display: flex; justify-content: center; gap: 30px;}
.sec_ft ul li a img{width: 100%;}

#ft_wr .inner{ padding-bottom:60px;}
#ft_wr .s02{ padding:30px 0; margin:100px 0 30px 0; border-top:1px solid rgb(0,0,0,0.2); border-bottom:1px solid rgb(0,0,0,0.2); display:flex;  align-items: center;justify-content: space-between;}
#ft_wr .s02 h1{ font-weight:700;}
#ft_wr .s02 a{ font-size:21px; font-weight:500;}
#ft_wr .s02 a i{ margin-right:5px;}
#ft_wr .s03{ line-height:35px;  color:#555; display:flex;align-items: center;justify-content: space-between; letter-spacing:0;}
#ft_wr .s03 span+span{ margin-left:20px;}
#ft_wr .s03 b{ font-weight:600; margin-right:5px; color:#222;}
#ft_wr .s03 img{ width:45px;}
#ft_wr .s03  ul{gap:0 15px;}
#ft_wr  .copy{ text-align:center; background:#222; color: rgb(255,255,255,0.5); padding:25px 0; font-size:18px;letter-spacing:0;}
#ft_wr  .copy a{ color: rgb(255,255,255,0.5);}

@media all and ( max-width: 1920px ){
	
	.MVisual .cs-call .s01, .MVisual .cs-call .s02{ font-size:20px; height:20px; padding:30px 0;}
	.MVisual .area h1{ font-size:40px;}
	.MVisual .area h2{ font-size:70px;}
	.MVisual .area p{ font-size:23px;}
	.MVisual .control {bottom:200px;}
	
	
	.qm_body { flex: 3; gap: 0;}
	.qm_btn {gap: 5px;}
	
	.m_tit h1, .m_tit2 h1 {font-size: 46px;}
	.m_tit h5, .m_tit2 h5 {font-size: 21px;}
	
	.sec01 .s01_1_bg { padding: 50px;min-height: 400px;}
	.sec01 .s01_2 ul { height: auto;}
	.sec01 .s01_2 ul li {	padding: 40px;}
	.sec01 .s01_2 ul li h2,.sec02 .s02_2 ul li h2 {font-size: 26px;}
	.sec01 .s01_2 ul li img {bottom: 20px; right: 20px;}
	.sec01 .s01_2 { margin-left: 0px;}

	.sec02 .s02_1 {flex-basis: 54%;}
	.sec02 .s02_2 ul li { padding: 30px 100px;}
	
	
	#ft_wr .s02{ padding:20px 0; margin:70px 0 20px 0;}
	#ft_wr .s02 h1{ font-size:25px;}
	#ft_wr .s02 a{ font-size:17px;}
	#ft_wr .s03{ line-height:25px;}
	#ft_wr .s03 img{ width:37px;}
	#ft_wr .s03  ul{gap:0 10px;}
	#ft_wr  .copy{ font-size:15px;}
}


@media all and ( max-width: 1680px ){
	
	

	
	
}

@media all and ( max-width: 1280px ){
	
	.MVisual {height: 68vh;}
	.MVisual .area{}
	.MVisual .area h1{ font-size:30px;}
	.MVisual .area h2{ font-size:60px;}
	.MVisual .area p{ font-size:18px;}
	.MVisual .area p strong {font-size: 26px;}
	.MVisual .control {bottom:100px; left:20px;}
	
	.content strong {	font-size: 20px;}
	.content p {font-size: 19px;}
	.consultation-item {    margin-right: 34px; gap: 19px;}
	.consultation-item img{}
	.qm_btn a {padding: 30px;font-size: 17px;}

	
    .sec01 {  flex-direction: column; padding: 5px 0;  }
    .sec01 .s01_1_bg {   padding: 30px 20px;   min-height: auto; }
    .sec01 .s01_1_bg img { margin-bottom: 20px;}
    .sec01 .s01_1_bg p {  font-size: 16px;  }
    .sec01 .s01_1_bg strong { font-size: 22px; }
    .sec01 .s01_2 ul { margin-top: 0;}
    .sec01 .s01_2 ul li { flex: 1 1 100%;}
	
	
	#ft_wr .s02{ margin:50px 20px 20px 20px;}
	#ft_wr .s03{ margin:0 20px;}
	

}

@media all and ( max-width: 1152px ){
	
	.sec01 .s01_2 ul { margin-top: 0;}
	
	.sec02 .inner {display: block;  padding: 100px 0;}
	.sec02 .m_tit2 h5 { margin-bottom: 30px;}
	.sec02 .s02_2 ul {	margin-top: 45px; border-left: none; border-right: none;}
	
}

@media all and ( max-width: 1024px ){
	
	.MVisual{ height:600px;}
	.MVisual .area h1{ font-size:25px;}
	.MVisual .area h2{ font-size:55px;}
	.MVisual .area p{ font-size:17px;}
	
	
    .sec02 { flex-direction: column; padding: 40px 20px;}
    .sec02 .s02_1, .s02_2 { flex: 1 1 100%; }
    .sec02 .s02btn a { font-size: 18px;}
    .sec02 .s02_2 ul li { flex-direction: row;}
	
}

@media all and ( max-width: 800px ){
	
	.MVisual{ height:500px;}
	.MVisual .area h1{ font-size:20px;}
	.MVisual .area h2{ font-size:35px;}
	.MVisual .area p{ font-size:17px;}
	.MVisual .control {bottom:50px;}
	
	.quickmenu { flex-direction: column;    padding: 35px 0; }
    .qm_body { }
    .qm_btn { justify-content: center; }
    .qm_btn button { flex: 1 1 auto;  }
	.consultation-item {  margin-right: 12px; gap: 15px; }
    .consultation-item img {height: 35%; }

	
	
    .m_tit h1, .m_tit2 h1 { font-size: 28px;}
    .m_tit h5, .m_tit2 h5 { font-size: 18px;}
	
	.sec01 .s01_2 ul li h2, .sec02 .s02_2 ul li h2 {font-size: 22px; }
	
	.sec02 .inner {padding: 30px 0;}
	.sec02 .s02_2 ul li { gap: 30px;  padding: 20px 20px 20px 60px;}
	
	.sec03 { margin: 50px 0;}
	.sec03 .m_tit { margin-bottom: 0px;}
	.sec03 .s03_1 ul li { flex: 1 1 calc(100%); }
	.sec03 .s03_1 ul li:nth-child(2) { border-top: 1px solid #e9e9e9; border-bottom: 1px solid #e9e9e9;  border-left: none; border-right: none;}
	.sec03 .s03_1 ul li a {padding: 20px;}
	
	.sec04 {margin: 50px 0; }
	.sec04 .m_tit {margin-bottom: 0;}
	
	.sec_ft ul { gap: 5px;}
	
	#ft_wr .s02{ display:block;}
	#ft_wr .s02 a{ margin-top:15px; display:block;}
	
	

	
	
}

@media all and ( max-width: 640px ){
	.MVisual{ height:400px;}
	.MVisual .area p{ display:none;}
	.MVisual .type2 h2 { margin-top:10px;}
	
	
	.sec01 {gap: 0px;}
	
	.sec02 .s02_2 ul li {gap: 20px; padding: 20px 20px 20px 30px;}
	.sec02 .s02_2 ul li img { width: 8%; flex-basis: 3%;}
	.sec01 .s01_2 ul li h2, .sec02 .s02_2 ul li h2 { font-size: 20px; }
	.sec02 .s02_2 ul li p {	font-size: 16px;}
	.sec02 .s02_2 ul li strong {font-size: 20px;}
	
 	.sec03 .s03_1 ul { flex-direction: column;   gap: 20px;}
	
	.sec04 {margin: 20px 0; }

	
}




@media all and ( max-width: 480px ){
	
  
	
	#ft_wr .s03{ display:block;}
	#ft_wr .s03 b, #ft_wr .s03 p span{ display:block;}
	#ft_wr .s03 p br{ display:none;}
	#ft_wr .s03 p span:nth-child(1){ margin-bottom:7px}
	#ft_wr .s03 p span+span{ margin:7px 0 0 0;}
	
	#ft_wr .s03 ul{ margin-top:10px;}
	
	#ft_wr .s02 h1{ font-size:23px;}
	
	#ft_wr .s01 h2 span{ display:block;}
	#ft_wr .s01 h2 span + span{ margin:0;}
}








