@charset "utf-8";
/*
** Default 
--------------------------------------------------------*/
body {
    position: relative;
    background-color:#fff;
    overflow-x: hidden;
}


.kso-sticky.sticked .navik-header {
    background-color: #193452;
}
/*mobile menu*/
header .navik-header .burger-menu {
    top: 25px;
}
.header-shadow-wrapper {
    display: none;
}

/*mobile slidemenu*/
header .navik-header-overlay .logo,
header .navik-header-overlay .burger-menu {
    top: 10px;
}
.menu-social-media {
    margin-bottom: 3rem;
    font-size: 16px;
}

.navik-header .logo img.logo-svg {
    width: auto;
    height: 50px;
}

@media (min-width: 1200px) {
    /*.navik-header-container {height: 130px;}*/
    .navik-menu>ul>li>a {
        font-size: 17px;
        height: 90px;
        line-height: 90px;
        transition: none;
    }
}
.navik-menu-fixed>ul ul a {
    padding-left: 2px !important;
}

/*fixed*/
.fixed-sns {
    position: fixed;
    right: 1rem;
    top: 50%;
    z-index: 5;
}
.fixed-sns a {
    display: flex;
    padding: 10px 1.5rem;
    font-size: 15px;
    color: #fff;
    background-color:#117AD1;
    border-radius: 30px;
}
.fixed-sns a.katalk {
    margin-bottom: 10px;
    color: #391F1F;
    background-color:#F9E000;
}

.fixed-nav {
    position: fixed;
    left: 0;bottom: 0;
    width: 100%;
    text-align: center;
    background-color: #019be2;
    z-index: 3;
}
.fixed-nav a {
    font-size: 16px;
    line-height: 60px;
    color: #fff;
}  
.fixed-nav a.talktalk {
	background-repeat: no-repeat;
	background-image: url(../img/talktalk.png);
    background-position: 0 48%;
    padding-left: 30px;
}


/*quick*/
.sidebar-toggle {
  position: fixed;
  z-index: 1;
  outline: none;
  width: 36px;
  height: 80px;
  right: 18em;
  margin-top: 0;
  background-color: #1c99d9;
  cursor: pointer;
  transition: .5s;
  border-radius: 10px 0 0 10px;
}
.sidebar-toggle:before {
    content: 'CLOSE';
    position: absolute;
    left: -25px;
    top: 25px;
    text-align: center;    
    width: 80px;
    height: 30px;
    color: #fff;
    transform: rotate(90deg);
}
.sidebar-toggle.is-closed:before {
    content: 'OPEN';
}
.sidebar {
    position: fixed;
    top: 23%;right: 0;
    padding: 0;
    width: 18em;
    min-height: 460px;
    color: #fff;
    background-color: #1c99d9;
    transition: .7s;
    z-index: 99;
}
.sidebar.is-closed {
    transform: translateX(18em);
}

.form-wrapper {
    padding: 1.5rem;    
    color: #fff;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.form-wrapper h4, 
.form-wrapper h2, 
.form-wrapper h5 {
    color: #fff;
}
.form-wrapper h4 {font-size: 16px;margin-bottom: 1rem;color: rgba(255,255,255,.9);} 
.form-wrapper h2 {font-size: 20px;margin-bottom: 1rem;line-height: 1.4;} 
.form-wrapper h5 {font-size: 15px;margin-bottom: 1rem;color: rgba(255,255,255,.7);font-weight: normal;} 
.form-wrapper h3 {font-size: 18px;margin-bottom: 1rem;} 

.form-wrapper .form-area {
    padding: 1rem;
    min-height: 200px;
    background-color: #fff;
}
.form-phone {
    padding: 10px 10px;
    font-size: 24px;  
    text-align: center;
    color: #fff;
    background-color: #111;
}
.form-img {
    display: flex;
}
.form-img a {
    display: inline-block;
    width: 50%;
}


/* --------------------------------------------------------------------------
** 
** custom
**
----------------------------------------------------------------------------*/
.kso-promotion:before {
    content: '';
    position: absolute;
    left: 0;top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.4);
    z-index: 1;
}
.kso-promotion .owl-slide .item-caption h1:before {
    display: none;
    content: '';
    position: absolute;
    left: 0;top: -1rem;
    width: 40px;height: 5px;
    background-color: #f28121;
}
/*.kso-promotion .owl-slide .item-caption h1 {font-size: 70px;}*/
.kso-promotion .owl-slide .item-caption .owl-p {font-size: 20px;}

.kso-visual-video {
  width: 100%;
  object-fit: fill;
}
.visual-caption h1 {
    font-size: 26px;
}

.scrolldown {
    position: absolute;
    left: 50%;bottom: 5%;
    transform: translate(-50%, -50%);
}
.scrolldown:hover {
    color: #26c6da;
}
.arrow {
  animation: slide 1s ease-in-out infinite;
  margin-bottom: 9px;
}
@keyframes slide {
  0%,
  100% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(0, 10px);
  }
}


/* --------------------------------------------------------------------------
** 
** section
**
----------------------------------------------------------------------------*/
/* 각 섹션 상하 여백 */
.section-title {
	position: relative;
	margin-bottom: 4rem;
    text-align: center;
}
.section-title h2 {
    font-size: 40px;
    font-weight: 500;
}

#owl-intro.owl-carousel {
    overflow: hidden;
}
#owl-intro .owl-stage .owl-stage-outer {
    overflow: visible;
}
#owl-intro.owl-carousel .owl-stage {
    padding: 2rem 0;
}
#owl-intro.owl-carousel .owl-item:nth-child(odd) {
    transform: translateY(2rem);
}
#owl-front .item,
#owl-intro .item {
    position: relative;
    transition: transform .3s ease;  
    overflow: hidden;  
}
#owl-front .item .caption,
#owl-intro .item .caption {
    position: absolute;
    left: 0;bottom: 2rem;
    padding: 1rem;
    background-color: #fff;
    transition: background .3s ease, color .3s ease;
    z-index: 1;
}
#owl-intro .item img {
    transition: transform .3s ease;
}
#owl-intro .item:hover {
    transform: translateY(-1rem);
}
#owl-intro .item:hover img {
    transform: scale(1.1);
}
#owl-intro .item:hover .caption {
    color: #fff;
    background-color: #ef7caf;
}    

#kso-count h1 {
    padding: 10px 0;
    color: #fff;
    background-color: #6990CB;
}
#kso-count h1.bg-red {
    background-color: #EE7BAE;
}
#kso-count h1 {
    border-radius: 40px 0 0 40px;
}
#kso-count h1.bg-red {
    border-radius: 0 40px 40px 0;
}


#kso-parallax1 .bg-para {
    position: relative;
    width: 100%;height: 300px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #222;
}
#kso-parallax1 .bg-para:before {
    content: '';
    position: absolute;
    left: 0;top: 0;
    width: 100%;height: 100%;
    background-color: rgba(0,0,0,.2);
    transition: background .3s ease;
}
#kso-parallax1 .bg-para .caption {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    left: 0;top: 0;
    width: 100%;height: 100%;
    padding-left: 3rem;
    z-index: 1;
    color: #fff;
    font-size: 24px;
}
#kso-parallax1 .bg-para h4 {
    margin: 0;
    font-size: 21px;
    color: #fff;
}
#kso-parallax1 .bg-para h6 {
    color: rgba(255,255,255,.7);
}
#kso-parallax1 .bg-para:hover:before {
    background-color: rgba(0,0,0,.5);
}
#kso-parallax1 .bg-para .btn-view {
    display: inline-block;
    font-size: 14px;
    color: #fff;
}
#kso-parallax1 .bg-para .btn-view>span {
    border-bottom: 1px solid #fff;
}


#kso-parallax1,
#kso-parallax2,
#kso-parallax3 {
    padding-top: 100px;
    padding-bottom: 100px;
}

/* location */
.kso-section-location {position: relative;height: 100%;}
.kso-section-location .company-block {
    position: relative;
    min-height: 340px;
    height: 400px;
    background-color: #f5f5f5;
    z-index: 1;
}
.kso-section-location .fa-ul>li {
    font-size: 15px;
    margin-bottom: 7px;
}

@media (min-width: 992px) {
    .google-map {
        position: absolute;
        left: 0;top: 0;bottom: 0;
        width: 100%;height: 100%;
    }
}
@media (max-width: 991px) { 
    .kso-section-slogan .h-slogan {font-size: 16px;line-height: 1.4;}
    .kso-section-location>.container,
    .kso-section-location>.container>.row>[class*="col-"] {padding: 0;}
    .kso-section-location>.container>.row {margin: 0;}
}


.certifi img {
    padding: 10px 0;
    border: 2px solid #ddd;
    border-radius: 10px;
}

#owl-half.owl-theme .owl-nav {
    position: absolute;
    left: calc(50% + 8.3333333333%);bottom: 10%;
}
#owl-half.owl-theme .owl-nav [class*=owl-] {
    width: 40px;height: 40px;
    font-size: 20px !important;
    line-height: 45px;
    background-color: #ddd;
    color: #fff;    
    border-radius: 50%;
}
#owl-half.owl-carousel .owl-nav button.owl-prev {
    left: 1rem;
}
#owl-half.owl-carousel .owl-nav button.owl-next {
    right: -7rem;
}



.section-footer {
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: #1e2029;
}

.sub-header {
    position: relative;
}
.sub-header:before {
    content: '';
    position: absolute;
    width :100%;height: 100%;
    background-color: rgba(0,0,0,.3);
}
.sub-header .sub-header-caption h1>span:before {
    background-color: #FA8522;
}

.sub-bottom {
    background-color: #fff;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
}
.sub-bottom .slogan {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
}
.sub-bottom .slogan h2 {
    line-height: 1.4;
    color: #fff;
}

.kso-contents>.container-full {
    padding-top: 60px;
}
[class*='sr__'] {visibility: hidden;}

/* mediaQuery
--------------------------------------------------------*/
@media (min-width: 992px) {   

}
@media (min-width: 1200px) {  
    .navik-header.sticky .navik-header-container {
        height: 90px;
    }
    .pl-xl-7rem {padding-left: 7rem !important}
    .visual-caption h1 {
        font-size: 80px;
        font-weight: 600;
        line-height: 1.1;
    }
    .visual-caption h4 {font-size: 41px;}
    .visual-caption p {font-size: 24px;}
    header .navik-header {
        border-bottom: 1px solid rgba(255,255,255,.1);
    }
    .kso-contents>.container-full {
        padding-top: 60px;
    }


    #kso-parallax2 .pl-lg-5 {
        padding-left: 3rem !important;
    }

    .h-100vh {height: 100vh !important;}
}
@media (min-width: 1340px) {
    .container-13 {max-width: 1330px;}
}    


@media (max-width: 1200px) {
    .navik-header .logo {padding: 5px 0;text-align: left;}
}
@media (max-width: 991px) { 
    .kso-section {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    #kso-parallax:before {
        display: none;
    }
    .navik-fixed-sidebar .menu-social-media a {
        text-align: center;
        font-size: 14px;
        line-height: 24px;
    }
    .sub-bottom .slogan h2 {
        font-size: 24px;
    }
}
@media (max-width: 767px) { 
    #kso-intro .bg-img {
        min-height: 300px;
        height: 300px;
    }
    .section-title h2 {
        font-size: 32px;
    }
    #kso-intro .count-col .counter {
        font-size: 32px;
        font-weight: 400;
    }
    #kso-intro .count-col .count-title {
        padding: 5px 5px;
        font-size: 15px;
    }
    #kso-intro .count-col .count-title.small {
        font-size: 14px;
        letter-spacing: -1px;
    }
}
@media (max-width: 575px) { 

    .fixed-sns {bottom: 1rem;top: auto;}
}

@media (max-width: 340px) { 

}
