
@charset "utf-8";
 
/*------------------------------------------------------------------------------------

  공통클래스
  
--------------------------------------------------------------------------------------*/  
.area{margin:0 auto;} /* width 홈페이지 컨텐츠 가로값에 맞게 변경 */
.clearfix{*zoom:1;}
.clearfix:after{clear:both; display:block; content:"";}
.blind{overflow:hidden;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0}
.text-ellipsis{overflow:hidden; white-space:nowrap; text-overflow:ellipsis;} 
.overlay {    position: relative; }


.clfix:after	{content: "."; display: block; height:0px; clear:both; visibility:hidden}
.clfix	{display: inline-block}
.clfix	{display: block}
* html	.clfix	{height:1%} /* Hides from IE-mac */
.clfix	{zoom:1} /* for IE 5.5-7 */
 
 /* 기본 속성 */
background-blend-mode : normal; 
background-blend-mode : multiply;
background-blend-mode : screen;
background-blend-mode : overlay; 
background-blend-mode : darken; 
background-blend-mode : lighten; 
background-blend-mode : color-dodge; 
background-blend-mode : color-burn;
background-blend-mode : hard-light;
background-blend-mode : soft-light;
background-blend-mode : difference;
background-blend-mode : exclusion;
background-blend-mode : hue;
background-blend-mode : saturation;
background-blend-mode : color;
background-blend-mode : luminosity;

/* 다중 속성 */
background-blend-mode : color-dodge, exclusion; 
background-blend-mode : color-dodge, hue; 

/* 전역 속성 */
background-attachment : inherit;   /* 상속 */
background-attachment : initial;   /* 초기화 */
background-attachment : revert;    /* 원래대로 돌리기 */
background-attachment : unset;     /* 설정 해제 */
/* 출처: https://webstoryboy.tistory.com/1825 [WEBSTORYBOY:티스토리] */
 

/*------------------------------------------------------------------------------------

  레이아웃
  
--------------------------------------------------------------------------------------*/     
section{position:relative; clear:both;}
.site-section {  padding: 6em 0; }
.layout{position:relative; width:100%; clear:both; height:0}
.blank{position:relative; clear:both; height:8em;}
.blank10{position:relative; clear:both; height:10em;}
.clear{position:relative; clear:both; height:4em;}
.clear2{position:relative; clear:both; height:3em;}
.clear3{position:relative; clear:both; height:2em;}
 
@media (max-width: 768px) {  
	.blank{position:relative; clear:both; height:6em;}
	.blank10{position:relative; clear:both; height:8em;}
	.clear{position:relative; clear:both; height:3em;}
	.clear2{position:relative; clear:both; height:2em;}
	.clear3{position:relative; clear:both; height:1em;}
}


 

.site-wrap {  }
.sub-wrap { }  
.subM { margin-top:80px;}

@media (max-width: 992px) { 
	.sub-wrap {   }  
	.subM { margin-top:65px;}
	.subM.pt30 { margin-top:100px;}
}

@media (max-width: 768px) { 
	.sub-wrap {   }  
}

@media (max-width: 576px) { 
	.sub-wrap {   }  
}

  

.bg-light { background:#fafafa !important; } 
.bg-black { background:#121212 !important; } 
.bg-primary {    background-color: var(--primary) !important; } 
.bg-yellow { background-color:#ffaa00!important } 
.bg-red { background-color:#ed1c24!important }   
.bg-blue { background:#0083b9 !important; }
.bg-bluesky { background:#f5faff !important ;}  
.bg-darkblue { background:#001478 !important; }  
.bg-lightblue { background:#dcefff !important; } 
.bg-mint { background:#40c5e3 !important; } 
.bg-green { background-color:#53bb2c!important } 
.bg-bgreen  {  background-color: #059d94 !important; }
.bg-ygreen  {  background-color: #5e9704 !important; }
.bg-organe { background-color:#ee3b02!important }  

.bg-green { background-color:#53bb2c!important } 


.border-gray {	border-color:#ccc!important; }

.text-primary,
.text-primary a:not(.btn),
.text-primary h1,
.text-primary h2,
.text-primary h3,
.text-primary h4,
.text-primary h5,
.text-primary h6,
.text-primary .h1,
.text-primary .h2,
.text-primary .h3,
.text-primary .h4,
.text-primary .h5,
.text-primary .h6,
.text-primary .display-1,
.text-primary .display-2,
.text-primary .display-3,
.text-primary .display-4 {  color: var(--primary) !important; }
.text-primary .text-muted {  color: rgba(23, 79, 132, 0.7) !important; }
 
.text-secondary,
.text-secondary a:not(.btn),
.text-secondary h1,
.text-secondary h2,
.text-secondary h3,
.text-secondary h4,
.text-secondary h5,
.text-secondary h6,
.text-secondary .h1,
.text-secondary .h2,
.text-secondary .h3,
.text-secondary .h4,
.text-secondary .h5,
.text-secondary .h6,
.text-secondary .display-1,
.text-secondary .display-2,
.text-secondary .display-3,
.text-secondary .display-4 {  color: var(--secondary) !important; } 
.text-secondary:hover,
.text-secondary:focus 
a.text-secondary:hover,
a.text-secondary:focus {
    color: var(--secondary) !important;
}

.text-yellow,
.text-yellow a:not(.btn),
.text-yellow h1,
.text-yellow h2,
.text-yellow h3,
.text-yellow h4,
.text-yellow h5,
.text-yellow h6,
.text-yellow .h1,
.text-yellow .h2,
.text-yellow .h3,
.text-yellow .h4,
.text-yellow .h5,
.text-yellow .h6,
.text-yellow .display-1,
.text-yellow .display-2, 
.text-yellow .display-3,
.text-yellow .display-4 {  color: #ffaa00 !important; } 

.text-orange  {  color: #fd7e14 !important; }
.text-yellow2  {  color: #ffff00 !important; }
.text-pink  {  color: #ed0c7b !important; }
.text-purple  {  color: #6f42c1 !important; }
.text-bgreen  {  color: #059d94 !important; }
.text-ygreen  {  color: #5e9704 !important; }
.text-darkblue  {  color: #0083b9 !important; }
.text-blue  {  color: #004fc6 !important; } 
.text-skyblue { color:#3bb5f0 !important; } 
.text-mint { color:#4edaf9 !important; } 

 

strong { font-weight: 700; } 
.divide { display: none; } 


.section {  
	position: relative; 
	display: -webkit-box;
	display: flex;  
	flex-wrap:wrap;
	align-items: center !important; 
	justify-content: center !important; 
  }
 
.area-top {
	  padding-top:6em;
}
.area-bottom {
	  padding-bottom:6em;  
}
@media (max-width: 992px) {  
	.area-top { 
		padding-top:5em; 
	} 
	.area-bottom {  
		padding-bottom:5em; 
	} 
}

@media (max-width: 768px) {
	.area-top { 
		padding-top:4em; 
	} 
	.area-bottom {  
		padding-bottom:4em;  
	} 
}

@media (max-width: 576px) {  
}


/*------------------------------------------------------------------------------------

  섹션-공통
  
--------------------------------------------------------------------------------------*/     
.section {  
	position: relative; 
	display: -webkit-box;
	display: flex;  
	flex-wrap:wrap;
	align-items: center !important; 
	justify-content: center !important; 
}

.area {
	  padding-top:120px;
	  padding-bottom:120px;  
} 
.main-contents {position:relative;   padding : 50px 0; } 

@media (max-width: 992px) {  
	.area { 
		padding-top:100px;
		padding-bottom:100px; 
	}
}

@media (max-width: 768px) {
	.area { 
		padding-top:80px;
		padding-bottom:80px;  
	} 
}

@media (max-width: 576px) {
	.area { 
		padding-top:60px;
		padding-bottom:60px;
	}    
}




/*------------------------------------------------------------------------------------

  컨텐츠 메인 서브 내용
  
--------------------------------------------------------------------------------------*/   
.text-title p,
.text-title .p,
.ttp {   font-size:1.3rem;  font-weight:500 !important; line-height:1.6; letter-spacing:-.25px; color:#333; } 

@media screen and (max-width: 1400px) {
    .text-title p,
    .text-title .p,
    .ttp  {  font-size: calc(0.95rem + 0.3vw) !important;  }
} 
@media (max-width: 1240px) {  
    .text-title p br,
    .text-title .p br,
    .ttp br {	 }   
} 

.text-section p,
.text-section .p,
.tsp   {   font-size:1.2rem;  font-weight:500 !important;  line-height:1.6; letter-spacing:-.25px; color:#333 } 

@media screen and (max-width: 1400px) {
    .text-section p,
    .text-section .p,
    .tsp  {  font-size: calc(0.85rem + 0.25vw) !important; }
} 
@media (max-width: 1240px) {  
    .text-section p br,
    .text-section .p br,
    .tsp br  {  }  
}




/*** Section Title ***/
.section-title {
    color: var(--primary);
    font-weight: 600;
    letter-spacing: 5px;
	margin-bottom: 20px;
    text-transform: uppercase;
}


.bar { width: 60px; height: 2px;}
.bar2 {width: 64px; height: 64px;}






/*------------------------------------------------------------------------------------

  오버레이 공통
  
--------------------------------------------------------------------------------------*/
.overlay {    position: relative; }
.overlay:before {
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, .7);
      z-index: 1; }  
 


.over {    position: relative; }
.over:before {
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, .5);
      z-index: 1; 
	-webkit-transition: .3s all ease;
	-o-transition: .3s all ease;
	transition: .3s all ease; }  
.over > div,
.over > .container_b,
.over  > .con_detail,
.over  > .board_detail, 
.over  > .sub-contents { 
	position: relative; 
	z-index: 5; }  






/*------------------------------------------------------------------------------------

  기타 공통
  
--------------------------------------------------------------------------------------*/
.img,
.blog-img,
.user-img {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; 
  overflow:hidden; 
  border-radius:.3rem!important }

.hover-img { 
	position:relative; 
	overflow:hidden; 
}
.hover-img img { 
	transition: 0.3s;
}
.hover-img:hover img {
	transform: scale(1.1); 
}
  

.jm-sticky-top {
	position: -webkit-sticky;
	position: sticky;
	top: 8em; 
}
 
@media (max-width: 992px) { 
	.jm-sticky-top {
	  position:relative; 
	  top: 0; 
	}
}




 

.fw-medium {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-black {
    font-weight: 900 !important;
}

 
.back-to-top {
    position: fixed;
    display: none;
    right: 45px;
    bottom: 45px;
    z-index: 99;
}
@media (max-width: 992px) { 
	.back-to-top { 
		right: 5px;
		bottom: 45px; 
	}
}




/*** Spinner ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}






/*** Button ***/
.btn-custom {
    font-weight: 500;
    transition: .5s;
}

.btn-custom.btn-primary {
    color: #FFFFFF;
}
.btn-custom.btn-primary:hover {
  color: #FFFFFF; 
}
.btn-square {
    width: 38px;
    height: 38px;
}

.btn-sm-square {
    width: 32px;
    height: 32px;
}

.btn-lg-square {
    width: 48px;
    height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}

.btn2 {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #9B9B9B;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: .375rem .75rem;
  font-size: 1rem;
  border-radius: 6px;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out
}
@media (prefers-reduced-motion: reduce) {
  .btn2 {
    transition: none
  }
}
.btn2:hover {
  color: #9B9B9B
}
.btn-check:focus + .btn2, .btn2:focus {
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(101, 181, 48, 0.25)
}
.btn2:disabled, .btn2.disabled, fieldset:disabled .btn2 {
  pointer-events: none;
  opacity: .65
}











/*** 비주얼 visual ***/
.visual-carousel  {
	position: relative;
    height: calc(100vh - 100px);
	min-height: 600px;
}
.visual-carousel .owl-carousel-item {
	position: relative;
    height: calc(100vh - 100px);
	min-height: 600px;
}
.visual-carousel .bg01 {
  background: url('../img/main/visual01.jpg') no-repeat center center;
  background-size: cover;
}  
.visual-carousel .bg02 {
  background: url('../img/main/visual02.jpg') no-repeat center center;
  background-size: cover;
}   
.visual-carousel .bg03 {
  background: url('../img/main/visual03.jpg') no-repeat center center;
  background-size: cover;
}     
.visual-carousel .carousel-inner {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    background: rgba(0, 0, 0, .5);
}


@media (max-width: 992px) {
	.visual-carousel  {
		position: relative;
		height: calc(80vh);
		min-height: 600px;
	}
	.visual-carousel .owl-carousel-item {
		position: relative;
		height: calc(80vh);
		min-height: 600px;
	}
} 
@media (max-width: 768px) {
	.visual-carousel  {
		position: relative;
		height: calc(60vh);
		min-height: 500px;
	}
	.visual-carousel .owl-carousel-item {
		position: relative;
		height: calc(60vh);
		min-height: 500px;
	}
}

.visual-carousel .owl-carousel-item h5,
.visual-carousel .owl-carousel-item h6,
.visual-carousel .owl-carousel-item p { 
	font-weight: 500 !important;
	line-height: 1.4;
}
.visual-carousel .owl-carousel-item h2 { 
	font-weight: 600;
}
.visual-carousel .owl-carousel-item h1 { 
	font-weight: 700;
}
.visual-carousel .owl-nav {
    position: absolute;
    width: 200px;
    height: 45px;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: space-between;
}

.visual-carousel .owl-nav .owl-prev,
.visual-carousel .owl-nav .owl-next {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    background: transparent;
    border: 1px solid #FFFFFF;
    border-radius: 45px;
    font-size: 22px;
    transition: .5s;
}

.visual-carousel .owl-nav .owl-prev:hover,
.visual-carousel .owl-nav .owl-next:hover {
    background: var(--primary);
    border-color: var(--primary);
}

.visual-carousel .owl-dots {
    position: absolute;
    height: 45px;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.visual-carousel .owl-dot {
    position: relative;
    display: inline-block;
    margin: 0 5px;
    width: 15px;
    height: 15px;
    background: transparent;
    border: 1px solid #FFFFFF;
    border-radius: 15px;
    transition: .5s;
}

.visual-carousel .owl-dot::after {
    position: absolute;
    content: "";
    width: 5px;
    height: 5px;
    top: 4px;
    left: 4px;
    background: #FFFFFF;
    border-radius: 5px;
}

.visual-carousel .owl-dot.active {
    background: var(--primary);
    border-color: var(--primary);
}

@media (max-width: 992px) {
	.visual-carousel h6 br { display:none; 	}
	.visual-carousel h6 .divide { display: block !important;  } 
} 









.page-header {
	position: relative;
    padding: 80px 0;
}
.page-header .display-3,
.page-header .display-4 {
	font-weight:600;
	margin-top:20px; 
}
.page-header .breadcrumb {  }
.page-header.about{
    background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/intro/subvisual.jpg) center bottom no-repeat;
    background-size: ; object-fit: ; background-attachment:fixed; 
}
.page-header.facility{
    background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/intro/subvisual-facility.jpg) center bottom no-repeat;
    background-size: ; object-fit: ; background-attachment:fixed; 
}
.page-header.location{
    background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/intro/subvisual-location.jpg) center bottom no-repeat;
    background-size: ; object-fit: ; background-attachment:fixed; 
}
.page-header.busi{
    background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/busi/subvisual.jpg) center bottom no-repeat;
    background-size: ; object-fit: ; background-attachment:fixed; 
}
.page-header.online{
    background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/online/subvisual.jpg) center bottom no-repeat;
    background-size: ; object-fit: ; background-attachment:fixed; 
}
.breadcrumb-item { text-transform: uppercase;}
.breadcrumb-item + .breadcrumb-item::before {
    color: var(--light);
}

@media (max-width: 992px) {
    .page-header {
		position: relative;
		padding: 60px 0;
	}
}

@media screen and (max-width: 767px) { 
    .page-header {
		position: relative;
		padding: 40px 0;
	}
	.page-header.about{
		background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/intro/subvisual.jpg) center center no-repeat;
		background-size: cover; object-fit: cover; background-attachment:inherit; 
	}
	.page-header.facility{
		background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/intro/subvisual-facility.jpg) center center no-repeat;
		background-size: cover; object-fit: cover; background-attachment:inherit; 
	}
	.page-header.location{
		background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/intro/subvisual-location.jpg) center center no-repeat;
		background-size: cover; object-fit: cover; background-attachment:inherit; 
	}
	.page-header.busi{
		background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/busi/subvisual.jpg) center center no-repeat;
		background-size: cover; object-fit: cover; background-attachment:inherit; 
	}
	.page-header.online{
		background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .7)), url(../img/online/subvisual.jpg) center center no-repeat;
		background-size: cover; object-fit: cover; background-attachment:inherit; 
	}
 
 
}
 




 
.about h6 { font-weight:500; line-height: 1.4;}
.about-img,
.feature-img {
    position: relative;
    height: 100%;
    min-height: 400px;
}

.about-img img,
.feature-img img {
    position: absolute;
    width: 90%;
    height: 100%;
	margin-left:10%;
    object-fit: cover;
}

.about-img img:last-child,
.feature-img img:last-child {
    margin: 20% 0 0 40%;
    display: none;
} 
.about-img::before,
.feature-img::before {
    position: absolute;
    content: "";
    width: 90%;
    height: 100%;
	margin-left:10%;
    top: 5%;
    left: -5%;
    border: 5px solid var(--primary);
    z-index: -1;
}
@media (max-width: 767px) { 
	.about  h6 br { display:none}
	.about  h6  .divide { display: block !important;  } 
	.about .about-con br { display:none}
	.about .about-con .divide { display: block !important;  } 
}
 




/*** Service ***/
.service-row {
    box-shadow: 0 0 45px rgba(0, 0, 0, .08);
}

.service-item {
    border-color: rgba(0, 0, 0, .03) !important;
	padding: 30px;
}
.service-item h4 { font-weight:500;}
.service-item .btn2 {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center; 
    color: #FFFFFF;
    background: var(--primary);
    border-radius: 40px;
    white-space: nowrap;
    overflow: hidden;
    transition: .5s;
    padding: .375rem .5rem;
}

.service-item:hover .btn2 {
    width: 140px;
}
.service-item .sic { padding:20px 10px 0 }
.service-item .sic h4 { margin-bottom: 10px;}


@media (max-width: 767px) { 
	.service-item { 
		padding: 12px;
	}
	.service-item .sic { padding:10px 0 }
	.service-item .sic h4 { margin-bottom: 10px;} 
	.service-item .btn2 {
		width: 28px;
    	height: 28px;
    	padding: .375rem .35rem;
	}
	.service-item:hover .btn2 {
		width: 28px; 
	}
}
 

/*** Project Portfolio ***/
#portfolio-flters li {
    display: inline-block;
    font-weight: 500;
    color: var(--dark);
    cursor: pointer;
    transition: .5s;
    border-bottom: 2px solid transparent;
}

#portfolio-flters li:hover,
#portfolio-flters li.active {
    color: var(--primary);
    border-color: var(--primary);
}

.portfolio-inner {
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 45px rgba(0, 0, 0, .07);
}

.portfolio-inner img {
    transition: .5s;
}

.portfolio-inner:hover img {
    transform: scale(1.1);
}

.portfolio-inner .portfolio-text {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: -50px;
    opacity: 0;
    transition: .5s;
}

.portfolio-inner:hover .portfolio-text {
    bottom: 0;
    opacity: 1;
}


/*** Quote ***/
.quote-bg {position: relative; 
    background:url("../img/online/subvisual.jpg") center center; background-size: cover; background-attachment: fixed;
	 }
.container.quote {
	position: relative; z-index:5;
}
.quote-text  { 
	background:#fff; border-radius: 10px; 
	padding:60px;
}
@media (max-width: 991.98px) { 
	.quote-text  {  padding:30px;	} 

    /* .quote-text  {
        padding-right: calc(((100% - 960px) / 2) + .75rem);
    }*/
}
@media (min-width: 992px) {  
    .container.quote {
        max-width: 100% !important;
    }

    /* .quote-text  {
        padding-right: calc(((100% - 960px) / 2) + .75rem);
    }*/
}

@media (min-width: 1200px) {
   /* .quote-text  {
        padding-right: calc(((100% - 1140px) / 2) + .75rem);
    }*/
}

@media (min-width: 1400px) {
    /*.quote-text  {
        padding-right: calc(((100% - 1320px) / 2) + .75rem);
    }*/
}


/*** Team ***/
.team-item {
    box-shadow: 0 0 45px rgba(0, 0, 0, .08);
}

.team-item img {
    transition: .5s;
}

.team-item:hover img {
    transform: scale(1.1);
}

.team-item .team-social {
    position: absolute;
    width: 0;
    height: 0;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(22, 22, 22, .7);
    opacity: 0;
    transition: .5s;
}

.team-item:hover .team-social {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1;
}

.team-item .team-social .btn {
    opacity: 0;
}

.team-item:hover .team-social .btn {
    opacity: 1;
}


/*** Testimonial ***/
.testimonial-carousel {
    display: flex !important;
    flex-direction: column-reverse;
    max-width: 700px;
    margin: 0 auto;
}

.testimonial-carousel .owl-dots {
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
}

.testimonial-carousel .owl-dots .owl-dot {
    position: relative;
    width: 60px;
    height: 60px;
    margin: 0 5px;
    transition: .5s;
}

.testimonial-carousel .owl-dots .owl-dot.active {
    width: 100px;
    height: 100px;
}

.testimonial-carousel .owl-dots .owl-dot::after {
    position: absolute;
    width: 40px;
    height: 40px;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    content: "\f10d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: var(--primary);
    background: #FFFFFF;
    border-radius: 40px;
    transition: .5s;
    opacity: 0;
}

.testimonial-carousel .owl-dots .owl-dot.active::after {
    opacity: 1;
}

.testimonial-carousel .owl-dots .owl-dot img {
    border-radius: 60px;
    opacity: .4;
    transition: .5s;
}

.testimonial-carousel .owl-dots .owl-dot.active img {
    opacity: 1;
}


/*** Contact ***/
@media (min-width: 992px) {
    .container.contact {
        max-width: 100% !important;
    }

    .contact-text  {
        padding-left: calc(((100% - 960px) / 2) + .75rem);
    }
}

@media (min-width: 1200px) {
    .contact-text  {
        padding-left: calc(((100% - 1140px) / 2) + .75rem);
    }
}

@media (min-width: 1400px) {
    .contact-text  {
        padding-left: calc(((100% - 1320px) / 2) + .75rem);
    }
}
















.logo_carousel  { 
	position: relative;
	border-width: 1px 0 ;
	border-style: solid;
	border-color: rgba(255,255,255,.2);
	padding: 10px ;
}
.logo_carousel .logo_carousel_item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex; 
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center; 
} 
.logo_carousel.owl-carousel .owl-item img {
	display: inline-block;
	width: auto; 
	border-width: 1px ;
	border-style: solid;
	border-color: rgba(0,0,0,.2);
}





/*--------------------------------------------------------------

 주요사업 

--------------------------------------------------------------*/ 
.main-we { 
	position:relative; 
    padding-top:5em;
  padding-bottom:5em;  
	background:url("/img/main/main-we-bg.jpg") center center; 
	background-attachment:fixed; 
	background-size:cover;    }

.main-we.over:before {
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, .65);
	background-blend-mode : overlay;
      z-index: 1;  }  

.best-wrap {
	position: relative;
	--bs-gutter-x:1.5rem; 
	display:flex;
	flex-wrap:wrap; 
	margin-right:calc(-.5 * var(--bs-gutter-x));
	margin-left:calc(-.5 * var(--bs-gutter-x));  
	 align-content: stretch !important;   
}
.best-wrap>* {  
	flex-shrink:0; 
	 padding-right:calc(var(--bs-gutter-x) * .5);
	padding-left:calc(var(--bs-gutter-x) * .5); 
	margin-top:var(--bs-gutter-y);  
}  

.best-con {  
	flex:0 0 auto;
	width:25%;    
  text-align: center; 
	margin-bottom: 1rem;
}
.best-wrap.w3 > .best-con {  
	width:33.3333%;    
}

.best-item {
	position: relative;
  background-color: rgba(255,255,255,1);
  text-align: center;
  border: 1px solid color-mix(in srgb, var(--primary), transparent 85%);
  border: 1px solid transparent;
	border-radius: 10px;
  padding: 20px 20px 40px;
  transition: border ease-in-out 0.3s;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  transition: all 0.3s ease; 
  height: 100% ;  
}
 
.best-item.mt30 {
	margin-top: 30px;
}
 

.best-item > span {
	font-weight: 700;
	color:#999;
}
.best-con .icon {
  margin: 0 auto;
  width: 80px;
  height: 80px;
  background: var(--primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  transition: 0.3s;
	margin-top: -50px;
}
.best-con:nth-child(1) .icon,
.best-con:nth-child(6) .icon,
.best-con:nth-child(11) .icon { 
  background: #; 
}
.best-con:nth-child(2) .icon,
.best-con:nth-child(7) .icon,
.best-con:nth-child(12) .icon  { 
  background: #004a65 ; 
}
.best-con:nth-child(3) .icon,
.best-con:nth-child(8) .icon,
.best-con:nth-child(13) .icon  { 
  background: #0e3073; 
}
.best-con:nth-child(4) .icon,
.best-con:nth-child(9) .icon,
.best-con:nth-child(14) .icon  { 
  background: #362157; 
}
.best-con:nth-child(5) .icon,
.best-con:nth-child(10) .icon,
.best-con:nth-child(15) .icon  { 
  background: #; 
} 

.best-con:hover .icon { 
  background: rgba(20,20,20,1); 
	border-radius: 0px;
}

  
.best-item .icon img,
.best-item .icon svg { position: relative;  width:55%; max-width:90px; margin:0 auto; text-align: center; opacity: 1;   }
.best-item:hover .icon img,
.best-item:hover .icon svg { opacity:1; }

.best-item .icon path { fill:#fff;  width:100%; 
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  transition: all 0.3s ease; } 
.best-item:hover .icon path { fill:#ffff00; }  

.best-item h5,
.best-item h6 {
  font-weight: 600;
  margin: 15px 0 10px 0; 
  transition: 0.3s;
	line-height: 1.4
}
.best-item h6 { 
  color: var(--secondary);
}

.best-item p {  
	line-height: 1.4
}

.best-item:hover {
	border-radius: 0px;
  background-color: rgba(255,255,255,1); 
  /* border-color: var(--primary); */
}
 
.best-item:hover h6 {
  color: var(--primary);
}

@media (max-width: 992px) { 
	.best-con {  
		width:50%;   
	} 
	.best-item { 
	  padding: 30px 20px ; 
	}
	
	.best-item.mt30 {
		margin-top: 0px;
	}
	.best-item h6 br { 
	  display: block !important;
	}

}       
@media (max-width: 767px) {   
	.best-con {  
		width:50%;    
	}
	.best-wrap.w4 > .best-con {  
		width:50%;     
	}
	.best-item h6 br { 
	  display: block !important;
	}

}  








/*** Footer ***/ 
.footer {
  background-color: #0d0d0d;
  color: #a9a9a9;
}

.footer-main {
  padding: 80px 0 40px;
}

.footer .widget-title { 
  font-weight: 700;
  position: relative;
  margin: 0 0 20px;
  padding-left: 15px;
  text-transform: uppercase;
  color: #fff;
  border-left: 3px solid var(--primary);
}

/* Footer about us */
.footer-logo {
  margin-bottom: 10px; 
	font-weight: 600; 
	color: #eee;
}
.footer-logo img { 
  max-height: 35px; 
}
.footer-tel {
  margin-bottom: 10px; 
}
.footer-tel a {
	font-weight: 400;  color: var(--primary);
}

/* Footer social */
.footer-social {
  margin-top: 15px;
}

.footer-social .widget-title {
  font-size: 14px;
  margin-bottom: 10px;
}

.footer-social ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -13px;
}

.footer-social ul li {
  display: inline-block; 
}

.footer-social ul li a i {
  display: block;
  font-size: 16px;
  color: #a9a9a9;
  transition: 400ms;
  padding: 10px 13px;
}

.footer-social ul li a:hover {
  color: #fff;
}
.footer-widget  { 
	margin-bottom: 30px;
}
.footer-widget ul li {
	display: inline-block; 
  font-size: calc(0.8rem + 0.2vw); 
	margin-right: 15px;
	margin-bottom: 5px;
}

.footer-widget ul li:last-child {
  border-bottom: 0;
}

.footer-widget ul li a,
.footer-widget ul li:before {
  color: #a9a9a9;
}

.footer-widget ul li a:hover  {
  color: var(--primary);
}

/* Links */
.footer-widget ul.list-arrow li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 8px 0;
	display: block;
}
 
.working-hours {
  padding-right: 10px;
  font-size: calc(0.8rem + 0.2vw); 
}

.working-hours .text-right {
  float: right;
}

/*-- Copyright --*/
.copyright {
  background: var(--primary);
  background-color: #0d0d0d;
  color: #888888; 
  padding: 0 0 80px;
  position: relative;
  z-index: 1;
  font-weight: 600;
  font-size: calc(0.8rem + 0.2vw); 
}

@media (max-width: 992px) { 
	.footer-widget ul.list-arrow li {  
		display: inline-block;
		width: 40%;
		
	}
 }
 



/*------------------------------------------------------------------------------------

  전화배너
  
--------------------------------------------------------------------------------------*/ 

.callto { background:url(../img/main/call-bg.jpg) center center; background-attachment:fixed; background-size:cover; }
.callto .section {
	z-index: 5;
	position: relative; 
	padding:100px 0;}
 
.callto__text h3 {  
	color: var(--warning); 
	text-transform: uppercase;
	letter-spacing:-0.5px ;
	display: block;
	margin-bottom: 30px;
}
.callto__text h2  {  
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing:-0.5px ;
	display: block;
	margin-bottom: 30px;
}
.callto__text h6 { 
	color: #ffffff;
	font-weight: 100; 
	text-transform: uppercase;
	letter-spacing:-0.5px ;
	margin-bottom: 36px;
	line-height: 1.5;
}  
.callto__text .btn  {color:#fff ; font-size: calc(1rem + 0.3vw); } 

@media (max-width: 992px) {
	.callto { background-attachment:scroll; }   
	.callto .section {  
		padding:80px 0;} 
}

@media (max-width: 767px) {   
	.callto .section {  
		padding:60px 0;} 
}
 





/*------------------------------------------------------------------------------------

  메인 Footer
  
--------------------------------------------------------------------------------------*/
footer { } 
footer *{  } 
.footer.area{  padding: 5em 0;  } 
.footer_about .footer_logo a{ 
	display: inline-block; 
	width:130px;
}
.footer_about .footer_logo a img{ 	width:100%;  /* filter: grayscale(100%); opacity: 0.9 */}   
.site-footer li {  color:#ADADAD; display:inline-block;  margin:0 1em 0.5rem 0; font-weight: 500; }  
.site-footer li a {   color:#fff; text-transform:none; font-weight:600;}   
.site-footer li a:hover {      color: var(--primary); }   
.site-footer ul li { font-size: calc(0.85rem + 0.2vw); }
.site-footer p { font-size: calc(0.85rem + 0.2vw); font-weight: 500; }
.site-footer h2, 
.site-footer h3, 
.site-footer h4, 
.site-footer h5, 
.site-footer h6 {    font-weight:600;}
.site-footer h6 span a {    color: var(--primary);  font-size:160%;  }
.site-footer .footer-heading h4,
.site-footer .footer-heading h5 {  letter-spacing:3px; font-weight:700;}
.site-footer .footer-heading img{ }
.copy{font-size: calc(0.85rem + 0.2vw); }
.copy span { text-transform:uppercase;}
.origin  {  display:inline-block; padding:8px 15px}
.origin a { color:#666 !important}

@media (max-width: 768px) {
.footer.area{  padding: 4em 0;  }  
}
 
 
 
.foot_social li a {
	display: inline-block;
	height: 45px;
	width: 45px;
	font-size: 1.8rem;
	color: #ADADAD !important; 
	border-radius: 60px;
	line-height: 45px;
	text-align: center;
	background: transparent; 
	background: rgba(0,0,0,1);
	-webkit-transition: all, 0.3s;
	-moz-transition: all, 0.3s;
	-ms-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s; 
}
.foot_social li { margin-right: 1rem;}
.foot_social li:last-child {	margin-right: 0;}
.foot_social li a:hover {
	background: var(--primary);
	color: #fff !important; 
}

.foot_social li .sns { padding:8px;} 
.foot_social li .sns img{ width:100%; position:relative;} 
.foot_social li .sns .off{ display:block; opacity:1; 
	-webkit-transition: opacity 0.3s ease;
	-moz-transition: opacity 0.3s ease;
	-ms-transition: opacity 0.3s ease;
	-o-transition: opacity 0.3s ease;} 
.foot_social li .sns .on{ display:none; opacity:0;
	-webkit-transition: opacity 0.3s ease;
	-moz-transition: opacity 0.3s ease;
	-ms-transition: opacity 0.3s ease;
	-o-transition: opacity 0.3s ease;}  
.foot_social li .sns:hover .off{ display:none; opacity:0; } 
.foot_social li .sns:hover .on{ display:block; opacity:1;} 


 
/*------------------------------------------------------------------------------------

  footer-menu-bottom
  
--------------------------------------------------------------------------------------*/ 

.footer-menu-bottom{  display:none; } 
 @media (max-width: 992px) { 
	.footer-menu-bottom{ padding-top:0px; height:50px; text-align:left; display: ; z-index:91;  display:block;  } 
	.footer-menu-bottom a{ height:;  line-height:; color:#fff;  padding:10px 0%;  border-radius:100px; text-align:center; margin:auto; width:48%;  }
	.footer-menu-bottom a i{ vertical-align:middle;   }
	.footer-menu-bottom.menu-num1 a{ }
	.footer-menu-bottom.menu-num2 a{ }  
	.footer-menu-bottom a:nth-child(1){ background:rgba(0,0,0,.85); color:#fff; }
	.footer-menu-bottom a:nth-child(2){ background:var(--primary); color:#fff;  }
	.footer-menu-bottom a:nth-child(1) i{line-height:;text-align:center; background-color:#; color:#fff; margin-right:0px;  } 
	.footer-menu-fixed{position:fixed; bottom:0px; left:0; width:100%; padding:3px 0%; background:rgba(0,0,0,.3); z-index:91; }
	.footer-menu-wrap{width:100%; max-width:900px; margin: 0 auto;  }
 }
 

 




.site {	 position:relative;   height:40px ; left:0;	 top:0;   width:100%;	 background:#111; border: 1px solid rgba(255,255,255,.35);	}
.site > .sitelist {	overflow: hidden; width:100%;  display:block; height:40px ; z-index:1; letter-spacing:1px; }  
.site > .sitelist .sitedown {	width:100%;	display: inline-block;	  font-size: calc(0.85rem + 0.15vw);  line-height:40px ;   color: #d6d6d6; font-weight: 400;	position:relative;   cursor:pointer; padding-left:2em;  }
.site > .sitelist .sitedown:hover {    	color:var(--primary);	}
.site > .sitelist .sitedown:before {
          position: absolute;
          content: "\f107"; 
          top: 50%;
          right:5%;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          font-family: 'icomoon'; 
		  display:; } 
.site .listmenu {	display: none;	position: absolute;	z-index: 1;	  	background: #111 ;	top:39px;  	 width:100%;	left:0;
	 border-left: 1px solid rgba(255,255,255,.35);	 border-right: 1px solid rgba(255,255,255,.35);	box-sizing:border-box;  overflow-y: scroll; height: 180px;	}
.site .listmenu li {	position:relative; list-style:none; border-bottom: 1px solid rgba(255,255,255,.35);	line-height:40px;  }
.site .listmenu li > a {	display: inline-block;	color: #d6d6d6; font-size: calc(0.85rem + 0.1vw); margin:auto 2em; }
.site .listmenu li > a:hover {    	color:var(--primary);	}
.site .listmenu li:last-child:after{height:0px;}
.site .listmenu > li > a i{display:none;   } 

@media (max-width: 768px) {
.site > .sitelist > li {  } 
}

@media (max-width: 576px) {
.site > .sitelist > li {  } 
}


 









/*------------------------------------------------------------------------------------

  Right - Tel / Inquiry / Top
  
--------------------------------------------------------------------------------------*/ 
#st-backtotop { position: fixed; bottom: 0; right:0; text-decoration: none; display: none; z-index: 99; cursor: pointer;  }
	
#st-backtotop > div,
#st-backtotop > div a{ color: #fff; width:90px; height:90px;  text-align:center;  border-radius:50%;
	display:-ms-flexbox!important;
	display:flex!important;
	align-items:center;
	justify-content: center;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;}
	
#st-backtotop > div i{ font-size: calc(1.85rem + 0.3vw);  line-height:1; }
	
#st-tel { background:var(--primary);  } 
#st-tel:hover {   background-color: rgba(0,0,0,1);} 
	
#st-inqu { background-color: var(--primary); } 
#st-inqu i{ color: #fff;  }
#st-inqu:hover {  background:rgba(255,255,255,1);  }
#st-inqu:hover i{   color: var(--primary); } 

#st-top { background: #eee;  }
#st-top i{ font-size: calc(1.5rem + 0.3vw);  color: #444; }
#st-top:hover {   background-color: rgba(255,255,255,1);}
#st-top:hover i{   color: var(--primary); } 

 @media (max-width: 1240px) { 
	#st-backtotop > div,
	#st-backtotop > div a{ width:80px; height:80px; }
	#st-backtotop > div i{  }
	#st-top i{  }
 }
 
 @media (max-width: 992px) { 
	#st-backtotop { display: none !important
		; }   
	#st-backtotop > div,
	#st-backtotop > div a{ width:60px; height:60px; }
	#st-backtotop > div i{  }
	#st-top i{   }
 }
 
  @media (max-width: 768px) {   
 }
 

	
	
	
	
	
	

	









/*------------------------------------------------------------------------------------

  문의
  
--------------------------------------------------------------------------------------*/
.estimate .input_field  { position: relative;}
.estimate .input_field input, 
.estimate .input_field textarea {
  width: 100%;
  position: relative;
  height: 50px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border: 1px solid #afafaf !important;
  padding:0 15px; 
  background: transparent;
  color: #111; 
  line-height:;
  background:#fff;
  font-size: calc(1rem + 0.1vw);
}

	.estimate-quick .input_field input, 
	.estimate-quick .input_field textarea { 
	  border: 1px solid #888 !important; 
	  color: #fff;  
	  background:rgba(0,0,0,0.3);
	} 
.estimate .input_field textarea {  padding:18px;}
.estimate .input_field input::placeholder, 
.estimate .input_field textarea::placeholder {
  color: #444;
  font-weight: 400; 
}  
	
	.estimate-quick .input_field input::placeholder, 
	.estimate-quick .input_field textarea::placeholder {
	  color: #fff;
	  font-weight: 400; 
	}
.estimate .input_field input:focus, 
.estimate .input_field textarea:focus {  outline: none;}
.estimate .input_field textarea {  height: 100px;}

.estimate .esti-txt { padding:15px 0 0 0;  }
.estimate .esti-txt p { } 

.estimate .esti-ct  { position:relative; margin:10px 0 10px}
.estimate .esti-ct h6 { position:relative; font-weight: 500; }
.estimate .esti-ct h6 .check::after { 
	position:relative;
	content: "\F151";  
	right:auto;   
	color:#e8006d;
	font-weight:400; 
	font-size:.85rem;
	margin-left:5px;
	 font-family: 'bootstrap-icons';  
	 display:inline-block;
}
	 
	.estimate-quick .esti-ct h6 { color:#fff; } 

.estimate .nice-select { 
	height: 50px;
	line-height: 50px;
	outline: none;
	padding-left: 15px;
	padding-right: 30px;
	position: relative;
	float:none !important;
	text-align: left !important;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	white-space: nowrap;
	width: auto;
	background: transparent;
	border: 1px solid #afafaf!important;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	background:#fff;
	margin-bottom: ;
	width: 100%;
	color: #111;
	font-size: calc(1rem + 0.1vw); 
} 
	.estimate-quick .nice-select {  
	  border: 1px solid #888!important;  
	  color: #fff; 
	  background:rgba(0,0,0,0.3);
	}

.estimate .nice-select .option {  color: #111;  font-size: calc(1rem + 0.1vw); }
.estimate .nice-select .list {
	background-color: #fff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	box-shadow: none;
	border: 1px solid #afafaf !important;
	margin-top: 0px;
	z-index:93;
	font-size: calc(1rem + 0.1vw); }
	
	.estimate-quick .nice-select .option {  color: #fff; }
	.estimate-quick .nice-select .list {
		background-color: #fff; 
		border: 1px solid #888 !important; }
	 
.estimate .nice-select .option:hover, 
.estimate .nice-select .option.focus, 
.estimate .nice-select .option.selected.focus {      background-color: #f6f6f6; }
.estimate .nice-select .option.selected {     font-weight: 400 !important;   }
	 
.estimate .nice-select::after {
	content: "\f107";
	display: block;
	margin-top: -5px;
	pointer-events: none;
	position: absolute;
	right: 15px;
	top: 50%;
	transition: all 0.15s ease-in-out;
	font-family:'bootstrap-icons';
    font-family: 'icomoon';
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #222;
	font-size: 1.4rem;  
}


.estimate .esti-item  { padding:5px 0; }
.estimate .esti-item.row  {  align-items: start; 
	padding-right: 0;
    padding-left: 0;	
	margin-right: 0;
    margin-left: 0;
} 
 
.estimate .esti-item > div { 	
	padding-right: 0;
    padding-left: 0;	
	margin-right: 0;
    margin-left: 0;
}
.estimate .esti-item.row .row {  align-items: center;  	
	margin-right: -5px;
    margin-left: -5px;
} 

	.estimate-quick .esti-item.row  {  align-items:  ;  
	}  
	.estimate-quick .esti-item.row .row {  align-items:  ;  
	} 
	
	.estimate-quick .esti-item.row p {  color: #fff !important; 
	} 

.estimate .esti-item.row .row > .col, 
.estimate .esti-item.row .row > [class*="col-"]  {  
	padding-right: 5px;
    padding-left: 5px; 
} 

.estimate .protect  { background:#fff; border: 1px solid #ccc; padding:15px ;  } 
.estimate  p.protect { color:; font-size: calc(1rem + 0.1vw); font-weight:400; } 
.estimate .essential { color:#e8006d; }


.estimate-quick .esti-item  { padding:5px 0; }


@media screen and (max-width:1240px ){   
	.estimate .protect br { display:block !important; } 
}
@media screen and (max-width:992px ){   
	.estimate .protect br { display:block !important; } 
}

@media screen and (max-width:768px){   
	.estimate .protect  {padding:15px ; } 
	.estimate .esti-item  { padding:5px 0; }
	.estimate .esti-item.row .row {  align-items: center;  	
		margin-right: -2px;
		margin-left: -2px;
	} 
	.estimate .esti-item.row .row > .col, 
	.estimate .esti-item.row .row > [class*="col-"]  {  
		padding-right: 2px;
		padding-left: 2px; 
	}   
	.estimate .protect br { display:block !important; } 
}
 

.estimate input,   
.estimate button  {  /*font-size:1.05rem;*/} 

@media screen and (max-width:768px){  
	.estimate input,   
	.estimate button  { /* font-size:1rem; */} 
}

@media screen and (max-width:576px){ 
	.estimate input, 
	.estimate button  {/*  font-size:.95rem; */} 
}
 
 
 
 
.estimate .radio-wrapper .select-radio .radio {
	margin:0.5rem; 
	margin:0.5rem 1rem 0.5rem 0.5rem; 
	display:inline-block
}

.estimate .radio-wrapper .form-check .form-check-label { 
    padding-left: 0; 
} 
.estimate .radio-wrapper .select-radio .radio label {
	cursor:pointer;
	margin-left:-2px; 
	color:#222;
	font-size:1.1rem;
	line-height:1.4em;
} 

	.estimate-quick .radio-wrapper .select-radio .radio label { 
		color:#fff; 
	} 

.estimate .radio-wrapper .select-radio .radio input[type="radio"] {
	position:absolute;
	opacity:0;
	cursor:pointer
}
.estimate .radio-wrapper .select-radio .radio input[type="radio"]+.radio-label:before {
	content:'';
	background:#fff;
	border-radius:100%;
	border:1px solid #afafaf;
	display:inline-block;
	width:1.4em;
	height:1.4em;
	position:relative; 
	margin-right:10px;
	vertical-align:top;
	cursor:pointer;
	text-align: ;
	transition:all 250ms ease
}
.estimate .radio-wrapper .select-radio .radio input[type="radio"]:checked+.radio-label:before {
	background-color:#0063ce;
	box-shadow:inset 0 0 0 4px #f4f4f4
}
.estimate .radio-wrapper .select-radio .radio input[type="radio"]:focus+.radio-label:before {
	outline:none;
	border-color:var(--primary)}
.estimate .radio-wrapper .select-radio .radio input[type="radio"]:disabled+.radio-label:before {
	box-shadow:inset 0 0 0 4px #f4f4f4;
	border-color:#afafaf;
	background:#b4b4b4
}
.estimate .radio-wrapper .select-radio .radio input[type="radio"]+.radio-label:empty:before {
	margin-right:0
}
@media (max-width: 1240px) { 
	.estimate .radio-wrapper {		display:block	} 
}
@media screen and (max-width:992px){ 
	.estimate .estimate-wrapper { 		padding:50px; 	}
}
@media screen and (max-width:768px){ 
	.estimate .estimate-wrapper { 		padding:30px; 	}
	.estimate .radio-wrapper .select-radio .radio label { 
		font-size:1rem; 
	} 
}
@media screen and (max-width:576px){ 
	.estimate .estimate-wrapper { 		padding:20px; 	}
	.estimate .radio-wrapper .select-radio .radio label { 
		font-size:.95rem; 
	} 
}
@media screen and (max-width:340px){ 
	.estimate .estimate-wrapper { 		padding:10px; 	}
}




.a_group > .row ,
.a_group .row.addrow { padding:8px 0; background:#fff; margin:0; width:100%; border-bottom:1px solid #ccc; }
.a_group > .row:nth-child(2n) ,
.a_group .row.addrow:nth-child(2n)  {  }
.a_group .a_group_field   { background:#f2f9fd; border-top:1px solid #ccc; }
.estimate .a_group .esti-item  { padding:3px 0; }
.estimate .a_group .esti-item.row  { border-bottom:none !important; } 
.estimate .radio-wrapper .select-radio .radio { 
	margin:0.25rem 0.5rem 0.25rem 0.25rem;  
}
.estimate .a_group .radio-wrapper .select-radio .radio label {  
	font-size:1rem;
	line-height:1.2em;
} 
.estimate .a_group .radio-wrapper .select-radio .radio input[type="radio"]+.radio-label:before { 
	width:1.2em;
	height:1.2em; 
}

@media screen and (max-width:992px){ 
	.a_group .a_group_field   { display:none !important; }
}



.file_input label {
    position:relative;
    cursor:pointer;
    display:inline-block;
    vertical-align:middle;
    overflow:hidden;
    width:;
    height:50px;
    background:#222;
    font-size:1rem;
    color:#fff;
    text-align:center;
    line-height:50px;
	top:3px; 
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
.file_input label input {
    position:absolute;
    width:0;
    height:0;
    overflow:hidden; 
	border:transparent;
}
.file_input input[type=text] {
    vertical-align:middle;
    display:inline-block;
    width:;
    height:50px;
    line-height:50px;
    font-size:1.1rem;
    padding:0;
    border:0;
    border:1px solid #afafaf;
  padding-left: 18px;
  padding-right: 30px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

input.disabled  {
	color:#222;
	background-color:#f4f4f4 !important
}
input:not(:disabled):not(.disabled).active  {
	color:#222;
	background-color:#f4f4f4;
	border-color:#f4f4f4
}
input:not(:disabled):not(.disabled).active:focus {
	box-shadow:0 0 0 .2rem rgba(0, 123, 255, .5)
}


 


 
 
/*---------------------
  form-control
-----------------------*/
.form-control {
	display:block;
	width:100%;
	height:calc(1.5em + .75rem + 2px);
	padding:.375rem .75rem;
	font-size: calc(0.9rem + 0.2vw); 
	font-weight:400;
	line-height:1.5;
	color:#111;
	background-color:#fff;
	background-clip:padding-box;
	border:1px solid #afafaf;
	border-radius:.25rem;
	transition:border-color .15s ease-in-out, box-shadow .15s ease-in-out
}
@media (prefers-reduced-motion:reduce) {
.form-control {
	transition:none
}
}
.form-control::-ms-expand {
	background-color:transparent;
	border:0
}
.form-control:-moz-focusring {
	color:transparent;
	/* text-shadow:0 0 0 #111;*/
}
.form-control:focus {
	color:#111;
	background-color:#fff;
	border-color:#afafaf;
	outline:0;
	/* box-shadow:0 0 0 .2rem rgba(0, 123, 255, .25); */
}
.form-control::-webkit-input-placeholder {
	color:#444;
	opacity:1
}
.form-control::-moz-placeholder {
	color:#444;
	opacity:1
}
.form-control:-ms-input-placeholder {
	color:#444;
	opacity:1
}
.form-control::-ms-input-placeholder {
	color:#444;
	opacity:1
}
.form-control::placeholder {
	color:#444;
	opacity:1
}
.form-control:disabled, .form-control[readonly] {
	background-color:#e9ecef;
	opacity:1
}
select.form-control:focus::-ms-value {
	color:#111;
	background-color:#fff
}
 
 


 

 


 
 




