charset "UTF-8";

/*
File	: main.css
*/

* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

html,
body {
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    /* 16px */	
    /*height: 1000vh;*/
}

body.lock {
    overflow: hidden;
}

/*
#wrapper {
    width: 1440px;
    min-height: 100%;
    min-width: 1260px;
    margin: 0 auto;
}
    */

li {font-size: 2rem;list-style: none;}
a {color: black;text-decoration: none;}
a,li{position:relative}

.apply {
    display:block;
}
.none {
    display:none;
}

/* Header */
.header {

}
img.pf-logo {position: fixed;width: 159px; height: 40px;object-fit: contain; opacity:1;}
img.pf-mobile-logo {position: fixed;width: 0px; height: 0px;object-fit: contain; opacity:0;}
.logo {position: fixed; width: 160px; left: 48px;top: 30px;z-index: 3;}
.top-menu {
    position: fixed;
    top: 35px;
    right: 48px;
    z-index: 1;
}
.navigator {
    position: fixed;
    clear: none;
    float: right;
    width: 100%;
    height: 94px;
    min-width: 1080px;
    max-height: none;
    left: 0px;
    right: 0px;
    margin: 0 auto;
    background-color: #fff;
    opacity: 0.95;
    z-index: 1;
    font-family: VisbyCF; 
    font-weight:normal;
}
.nav {
    float: right;
}
.navigator .ul {margin: 0;padding: 0;list-style: none;display:table;text-align:center;overflow: hidden;background-color: #fff;}
.navigator li {display: table-cell;float: left;font-size: 15px;font-weight: normal;letter-spacing: normal;color: #000;}
.navigator li a {
    font-family: VisbyCF;
    font-size: 15px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: normal;
    color: #000;
    display: block;padding: 0px 6px;text-decoration: none;text-transform: uppercase;
    margin: 0 15px;
    /*
    color:#000;text-transform:uppercase;text-decoration:none;letter-spacing:.15em;display:inline-block;padding:15px 20px
    */
}
.navigator li a:after {bottom:0;content:"";display:block;height:2px;left:50%;position:absolute;background:#7677f9;transition:width .3s ease 0s,left .3s ease 0s;width:0}
.navigator li a:hover:after {width:100%;left:0;}
.navigator .nav-item a.active:after {bottom:0;content:"";display:block;height:2px;left:50%;position:absolute;background:#7677f9;transition:width .3s ease 0s,left .3s ease 0s;width:100%; left:0;}
.nav-top-menu {clear: none;max-height: none;float: right; flex-direction: row; transition: max-height .2s ease-out;}



/* menu */
#menu {top: 0;width:100%; height: 100%;}

.nav-contain {position: fixed; width: 100%; height: 100%; z-index:2; top: -100%; bottom: 0; opacity: 0;background-color: #686884;transition: all 0.3s ease;display:block;}
.nav-contain.active {width: 100%;overflow:hidden;top: 0; opacity: 1;transition: all 0.3s ease;display:block;}
.navcontain {width: 100%;height: 100%;transition: all 0.3s ease;}
/*.navcontain.active {width:100%; transition: all 0.1s ease;}*/
/*
.nav-loc {
    position: relative;
    left: 0px;
    width: 0px;
    height: 280px;
    margin: 220px 0 0 0;
    opacity:1;
}
*/
.nav-loc {
    left: 180px;
    width: 600px;
    height: 280px;
    margin: 220px 0 0 180px;
    transition: all 0.3s ease;
    opacity:1;    
}
.menubar .nav-sub-loc {
    position: absolute;
    top: 350px;
    left: 840px;
    width: 100%;
    height: 480px;
    display:none;
}
.menubar .nav-sub-loc.active {
    display:block;
}

.nav-loc .menubar {height: 100%;}
.nav-menu {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    opacity:1;
    left: 0px;
    flex-direction: column;
    transition: all 0.3s ease;
}
/*.nav-menu.active{opacity:1;left: 0px;transition: all 0.5s ease;}*/
.menubar li a {
    font-family: VisbyCF;
    font-size: 36px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #fff;
    display: block;
    padding: 0px 0px;
    text-decoration: none;
    /*margin: 0 1.5rem;*/
}
.menubar li a:after {bottom:0;content:"";display:block;height:1px;left:50%;position:absolute;background:#d8d8d8;transition:width .3s ease 0s,left .3s ease 0s;width:0}
.menubar li a:hover:after {width:100%;left:0;}
.menubar .nav-item{margin: 0px 0;}
.menubar .nav-info {
    position: relative;
    top: 140px;
    z-index: 3;
    left: 180px;
    opacity: 1;
    transition: all 2s ease;
}
.nav-sub-loc .product-sub-menu {
    width: 100%;
}
.nav-sub-loc .product-sub-menu div {
    float: left;
}

.product-sub-menu .line-rectangle {width: 100%;height: 1px;background-color: #d8d8d8;transition: all 0.3s ease;}

.nav-arrow img {
    position: absolute;
    width: 13px;
    height: 14px;
    margin: 2px 0 0 -7px;
    transform: rotate(90deg);
    object-fit: contain;
    opacity: 0;
    transition: all 0.5s ease;
}
.nav-sub-loc li {
    font-family: VisbyCF Medium;
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #fff;
    display: block;
    padding: 0px 0px;
    text-decoration: none;
    /*margin: 0 1.5rem;*/
    
}

.nav-sub-button {
    width:100%;
    height: 32px;
    cursor:pointer;    
    margin: 16px 0 0 0;
}

.nav-sub-button span {
    margin: 0px 0 0 0px;
    transition: all 0.5s ease;
    
}
.nav-sub-button:hover img {
    margin: 2px 0 0 0px;
    opacity: 1;
    transition: all 0.5s ease;
}
.nav-sub-button:hover span {
    margin: 0px 0 0 22px;
    transition: all 0.5s ease;
    
}
/*
.nav-info.active {
    left: 180px;
    opacity: 1;
    transition: all 2s ease;
}
*/
.nav-info span {
    font-family: VisbyCF;
    font-size: 56px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    color: #fff;
}

.hamburgercontain {
    height: 100%;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 48px;
    display: flex;
    align-items: center;
    z-index: 3;
}

.hamburger {display: block;cursor: pointer;zindex: 2;}
.hamburger.active .bar:nth-child(1){background-color:#fff; transform: translateY(4px) rotate(45deg);}
.hamburger.active .bar:nth-child(2){background-color:#fff; transform: translateY(-4px) rotate(-45deg);}
.bar{display: block;width: 40px;height: 3px;margin: 5px 0;transition: all 0.3s ease;background-color: black;}

.sub-menu a {
    font-family: Pretendard;
    font-size: 14px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    color: #000;
}

.sub-header {
    width: 100%;height: 380px;position: relative;margin: auto;
}

.sub-location {
    position: absolute;margin: 0px; top: 130px; buttom: 0; text-align: left; display: block;
}
.sub-menu {clear: none;float: left;width: 100%;max-height: none;font-family: Pretendard; font-weight:normal;font-size: 14px;}
/*
.sub-menu .ul {margin: 0;padding: 0;list-style: none;display:table;text-align:center;overflow: hidden;background-color: #fff;}
.sub-menu li {display: table-cell;float: left;font-size: 14px;font-weight: normal;letter-spacing: normal;color: #000;}
.sub-menu li a {
    display: block;padding: 0px 0px;text-decoration: none;text-transform: uppercase;
    margin: 0 1.5rem;
}
*/
.sub-menu .loc-dot {
  line-height: 1.43;
  letter-spacing: normal;
  margin: 0px 10px 0px 10px;
}

.sub-menu .loc-this a {color: #7677f9;}


.sub-title {
    position: absolute;margin: 0px; top: 200px; buttom: 0; text-align: left;
}
.sub-title span {
    /*
  width: 389px;
  height: 56px;
  margin: 56px 460px 127px 92px;
  */
  font-family: VisbyCF;
  font-size: 100px;
  font-weight: bold;
  font-stretch: normal;
  font-style: normal;
  line-height: 0.56;
  letter-spacing: normal;
  color: #000;
}

/* footer */
.oval-btn {position: fixed; width: 54px; height: 54px; bottom: -100px; right: 58px; background-color: #646FD4; border-radius: 50px; opacity:1;transition: all 1s ease;}
.oval-btn.active {bottom: 36px;transition: all 3s ease;}
.oval-btn img {width: 17px; height: 18px; object-fit: contain; margin: 18px 0 0 19px;}

.main-footer {position: relative;margin: 0px;margin-top: 80px;left: 0; right: 0; top: 0; buttom: 0; text-align: left;background-color:#fff;}
.main-footer .line-rectangle {height: 1px;background-color: #000;}
.main-footer .footer-contents {height: 300px;}
.main-footer .footer-contents .addr-contents { position: absolute; top: 40px;}
.main-footer .footer-contents .addr-contents .title {
    font-family: VisbyCF;font-size: 14px;
    font-weight: 600;font-stretch: normal;font-style: normal;line-height: 1.43;letter-spacing: normal;color: #000;
}
.main-footer .footer-contents .addr-contents .addr {
    font-family: Pretendard;font-size: 12px;
    font-stretch: normal;font-style: normal;line-height: 1.43;letter-spacing: normal;color: #000;
}

.main-footer .footer-contents .info-contents { position: absolute; top: 40px; left: 320px;}
.main-footer .footer-contents .info-contents .title {
    font-family: VisbyCF;font-size: 14px;
    font-weight: 600;font-stretch: normal;font-style: normal;line-height: 1.43;letter-spacing: normal;color: #000;
}
.main-footer .footer-contents .info-contents .info {
    font-family: Pretendard;font-size: 12px;
    font-stretch: normal;font-style: normal;line-height: 1.43;letter-spacing: normal;color: #000;
}

.main-footer .footer-contents .send-contents { position: absolute; top: 40px; right: 0px;text-align: end;}
.main-footer .footer-contents .send-contents p {
    margin-top: 30px;
}
.main-footer .footer-contents .send-contents .title {
    font-family: VisbyCF;
    font-size: 14px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    color: #000;
}
.main-footer .footer-contents .send-contents .info {
    font-family: VisbyCF;
    font-size: 32px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 0.63;
    letter-spacing: normal;
    color: #000;
}

.main-footer .footer-contents .copyright { position: absolute; top: 200px;}
.main-footer .footer-contents .copyright span {
        font-family: VisbyCF;font-size: 12px;
    font-weight: 500;font-stretch: normal;font-style: normal;line-height: 1.67;letter-spacing: normal;color: #000;
}

.footer-menu {
    position: absolute;
    top: 200px;
    left: 265px;
}
.footer-menu .ul {margin: 0;padding: 0;list-style: none;display:table;text-align:center;overflow: hidden;background-color: #fff;}
.footer-menu li {display: table-cell;float: left;font-size: 15px;font-weight: normal;letter-spacing: normal;color: #000;}
.footer-menu li a {
    font-family: VisbyCF;
    font-size: 12px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.67;
    letter-spacing: normal;
    color: #000;
    margin: 0 15px;
    text-decoration: underline;
    text-transform:uppercase;
    /*
    color:#000;text-transform:uppercase;text-decoration:none;letter-spacing:.15em;display:inline-block;padding:15px 20px
    */
}

.footer-contents .spaceHeight {
    height:16px;
}

.spaceHeight-10 {
    height:10px;
}
.spaceHeight-20 {
    height:20px;
}
.spaceHeight-30 {
    height:30px;
}
.spaceHeight-40 {
    height:40px;
}

.footer-menu .nav-link {
    padding: 5px 0;
}

@media (max-width: 1200px) {
    .apply {
        display:none;
    }
    .none {
        display:block;
    }
    
    .container {
        padding-right: 0px;
        padding-left: 0px;
        margin-right: auto;
        margin-left: auto;
    }
    
    .logo {left: 30px;top: 30px;z-index: 3;}
    .top-menu {
        position: fixed;
        top: 35px;
        right: 5px;
        z-index: 1;
    }
    
    /* menu */
    .nav-loc {height: 0px;margin: 300px 0 0 46px;}

    .menubar {display: none;} 
        
    .nav-sub-loc li {font-size: 18px;}
    
    .nav-sub-button {margin: 16px 0 0 0;}
    
    .nav-info span {
        font-size: 32px;
        line-height: 1.31;
        color: rgba(255, 255, 255, 0.4);
    }
    
    /*.menubar {display: block;}*/ 
    
    .hamburgercontain {display: none;}
    
    .bar{display: block;width: 23px;height: 2px;margin: 5px 0;transition: all 0.3s ease;background-color: black;}
      
    .sub-header {height: 265px;padding: 0 30px 0 30px;}
    
    .sub-location {display: none;}   
    
    .sub-title {top: 145px;}
    .sub-title span {font-size: 56px;}   
    
    /* footer */
    .oval-btn {width: 48px; height: 48px; bottom: -80px; right: 30px;}
    .oval-btn.active {bottom: 30px;}
    .oval-btn img {width: 16px; height: 17px; margin: 16px 0 0 16px;}
    
    .main-footer {margin-top: 40px;left: 0; right: 0; top: 0; buttom: 0; text-align: left;padding: 0 30px 0px 30px;}
    .main-footer .line-rectangle {width: 100%; height: 1px;background-color: #040b10;}
    .main-footer .footer-contents {height: 300px;padding: 0 0 0 0}
    .main-footer .footer-contents .addr-contents {top: 315px; left: 30px;}
    .main-footer .footer-contents .addr-contents .title {
        font-size: 20px;
        font-weight: 600;font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    .main-footer .footer-contents .addr-contents .addr {
        font-size: 14px;
        font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    
    .main-footer .footer-contents .info-contents {top: 415px; left: 30px;}
    .main-footer .footer-contents .info-contents .title {
        font-size: 20px;
        font-weight: 600;font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    .main-footer .footer-contents .info-contents .info {
        font-size: 14px;
        font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    
    .main-footer .footer-contents .send-contents {top: 540px; right: 0px; left: 30px; text-align: left;}
    .main-footer .footer-contents .send-contents p {margin-top: 30px;}
    .main-footer .footer-contents .send-contents .title {
        font-size: 20px;
        font-weight: 600;
        font-stretch: normal;
        font-style: normal;
        line-height: 1;
        letter-spacing: normal;
        color: #000;
    }
    .main-footer .footer-contents .send-contents .info {
        font-family: Pretendard;
        font-size: 14px;
        font-weight: normal;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.57;
        letter-spacing: normal;
        color: #000;
    }
    
    .main-footer .footer-contents .copyright {top: 670px;padding-bottom: 50px;}
    .main-footer .footer-contents .copyright span {
        font-size: 12px;
        font-weight: 500;font-stretch: normal;font-style: normal;line-height: 1.67;letter-spacing: normal;color: #000;
    }
    
    .footer-menu {top: 35px;left: 30px;}
    .footer-menu ul {margin: 0;padding: 0;list-style: none;display:table;text-align:left;overflow: hidden;background-color: #fff;}
    .footer-menu li {display: contents;float: left;font-size: 32px;font-weight: bold;letter-spacing: normal;color: #000;}
    .footer-menu li a {
        font-size: 32px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.67;
        letter-spacing: normal;
        color: #000;
        margin: 0 0px;
        text-decoration: blink;
        text-transform: none;
    }
    
    .footer-menu .nav-link {
        padding: 0px 0;
    }
    
    .footer-contents .spaceHeight {
        height:8px;
    }
}

@media (max-width: 640px) {
    .apply {
        display:none;
    }
    .none {
        display:block;
    }
    
    .container {
        padding-right: 0px;
        padding-left: 0px;
        margin-right: auto;
        margin-left: auto;
    }
    
    img.pf-logo {width: 0px; height: 0px;opacity:0;display:none;}
    img.pf-mobile-logo {width: 106px; height: 46px;opacity:1;}
    .logo {left: 30px;top: 30px;z-index: 3;}
    .top-menu {display: none;}
    
    /* menu */
    .nav-loc {height: 200px;margin: 300px 0 0 46px;}

    .menubar li a {font-size: 24px;}

    .menubar .nav-info {top: 220px;left: 86px;}
        
    .nav-sub-loc li {font-size: 18px;}
    
    .nav-sub-button {margin: 16px 0 0 0;}
    
    .nav-info span {
        font-size: 32px;
        line-height: 1.31;
        color: rgba(255, 255, 255, 0.4);
    }
    
    .menubar {display: block;} 
    
    .hamburgercontain {
        height: 100px;
        position: fixed;
        top: 0;
        bottom: 0;
        left: 250px;
        right: 30px;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        z-index: 3;
    }
    
    .hamburger {display: block;cursor: pointer;zindex: 2;}
    .hamburger.active .bar:nth-child(1){background-color:#fff; transform: translateY(3.5px) rotate(45deg);}
    .hamburger.active .bar:nth-child(2){background-color:#fff; transform: translateY(-3.5px) rotate(-45deg);}
    .bar{display: block;width: 23px;height: 2px;margin: 5px 0;transition: all 0.3s ease;background-color: black;}
      
    .sub-header {height: 265px;padding: 0 30px 0 30px;}
    
    .sub-location {display: none;}   
    
    .sub-title {top: 145px;}
    .sub-title span {font-size: 56px;}   
    
    /* footer */
    .oval-btn {width: 48px; height: 48px; bottom: -80px; right: 30px;}
    .oval-btn.active {bottom: 30px;}
    .oval-btn img {width: 16px; height: 17px; margin: 16px 0 0 16px;}
    
    .main-footer {margin-top: 40px;left: 0; right: 0; top: 0; buttom: 0; text-align: left;padding: 0 30px 0px 30px;}
    .main-footer .line-rectangle {width: 100%; height: 1px;background-color: #040b10;}
    .main-footer .footer-contents {height: 300px;padding: 0 0 0 0}
    .main-footer .footer-contents .addr-contents {top: 315px; left: 30px;}
    .main-footer .footer-contents .addr-contents .title {
        font-size: 20px;
        font-weight: 600;font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    .main-footer .footer-contents .addr-contents .addr {
        font-size: 14px;
        font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    
    .main-footer .footer-contents .info-contents {top: 415px; left: 30px;}
    .main-footer .footer-contents .info-contents .title {
        font-size: 20px;
        font-weight: 600;font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    .main-footer .footer-contents .info-contents .info {
        font-size: 14px;
        font-stretch: normal;font-style: normal;line-height: 1;letter-spacing: normal;color: #000;
    }
    
    .main-footer .footer-contents .send-contents {top: 540px; right: 0px; left: 30px; text-align: left;}
    .main-footer .footer-contents .send-contents p {margin-top: 30px;}
    .main-footer .footer-contents .send-contents .title {
        font-size: 20px;
        font-weight: 600;
        font-stretch: normal;
        font-style: normal;
        line-height: 1;
        letter-spacing: normal;
        color: #000;
    }
    .main-footer .footer-contents .send-contents .info {
        font-family: Pretendard;
        font-size: 14px;
        font-weight: normal;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.57;
        letter-spacing: normal;
        color: #000;
    }
    
    .main-footer .footer-contents .copyright {top: 670px;padding-bottom: 50px;}
    .main-footer .footer-contents .copyright span {
        font-size: 12px;
        font-weight: 500;font-stretch: normal;font-style: normal;line-height: 1.67;letter-spacing: normal;color: #000;
    }
    
    .footer-menu {top: 35px;left: 30px;}
    .footer-menu ul {margin: 0;padding: 0;list-style: none;display:table;text-align:left;overflow: hidden;background-color: #fff;}
    .footer-menu li {display: contents;float: left;font-size: 32px;font-weight: bold;letter-spacing: normal;color: #000;}
    .footer-menu li a {
        font-size: 32px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.67;
        letter-spacing: normal;
        color: #000;
        margin: 0 0px;
        text-decoration: blink;
        text-transform: none;
    }
    
    .footer-menu .nav-link {
        padding: 0px 0;
    }
    
    .footer-contents .spaceHeight {
        height:8px;
    }
}