.sec {
    position:relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    background-color: #fff;
    height: 100%; /* fullpage */
}

.ctrWrap {
    display: flex;
    align-items: center;
    gap: 0 20px;
}

.ctrWrap .numWrap {
    display: flex;
    align-items: center;
    color: #000;
    gap: 0 5px;
}

.ctrWrap .numWrap p {
    font-family: 'MontB';
    font-size: 16px;
}

.ctrWrap.blk .leftWrap>p {
    color: #000;
}

.ctrWrap.blk .leftWrap .proWrap {
    background-color: #00000042;
}

.ctrWrap.blk .leftWrap .proWrap .pro {
    background-color: #000000;
}
/* 공통 */

.header.scroll {
    background-color: #000;
}

.header.sub .topWrap .menu a,
.header.scroll .topWrap .menu a,
.header.active .topWrap .menu a {
    color: #fff;
}

.mainWrap {
    height: 100%;
}

.visualWrap {
    height: 950px;
    overflow: visible;
    z-index: 100;
}

.visualWrap .bgWrap {
    width: 100%;
    height: 100%;
    background-color: #000;
}

.visualWrap .bgWrap video {
    opacity: .5;
}

.visualWrap .textWrap {
    position:absolute;
    display: flex;
    flex-flow: column;
    align-items: center;
}

.visualWrap .textWrap .t1 {
    margin-bottom: 33px;
}

.visualWrap .textWrap .t3 {
    margin-top: -30px;
}

.visualWrap .openWrap {
    position:absolute;
    right: 90px;
    top: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
}

.visualWrap .openWrap .s2 {
    position:absolute;
}

.visualWrap .openWrap .s1 {
    animation:rotateLoop 5s infinite linear;
}

.visualWrap .cusWrap {
    position: absolute;
    right: 110px;
    top: 370px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
}

.visualWrap .allWrap {
    position: absolute;
    right: 110px;
    top: 510px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
}

.visualWrap .scrollBtn {
    position: absolute;
    bottom: -45px;
    box-shadow: 0px 0px 11px 0px rgba(84, 84, 84, 0.26);
    border-radius: 100%;
}

.visualWrap .fWrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column;
    align-items: center;
}

.visualWrap .fWrap .swiper-slide {
    display: flex;
    flex-flow: column;
    align-items: center;
    position: relative;
}

.visualWrap .fWrap .ftxtWrap {
    position: absolute;
    top: 197px;
}

.visualWrap .fWrap .ftxtWrap.t2 {
    top: 284px;
    left: 192px;
}

.visualWrap .fWrap .ftxtWrap.t3 {
    top: 150px;
}

.visualWrap .videoBtnsWrap {
    position:absolute;
    top: 150px;
    left: 70px;
    display: flex;
    flex-flow: column;
    gap: 10px 0;
}

.sec1Wrap {
    gap:0 190px;
    padding-bottom: 190px;
    align-items: flex-start;
}

.sec1Wrap .bgWrap {
    position:absolute;
    bottom: 0;
    left: 0;
    height: 570px;
    width: 100%;
    background-color: #f7f2ee;
    z-index: -1;
}

.sec1Wrap .leftWrap {
    display: flex;
    flex-flow: column;
    padding-top: 140px;
    align-items: flex-start;
}

.sec1Wrap .leftWrap .t1 {
    margin-bottom: 10px;
}

.sec1Wrap .leftWrap .t2 {
    margin-bottom: 20px;
}

.sec1Wrap .leftWrap .t3 {
    margin-bottom: 140px;
}

.sec1Wrap .rightWrap {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    width: 600px;
}

.sec1Wrap .rightWrap .imageWrap {
    width: 100%;
    height: 892px;
    overflow: hidden;
    margin-bottom: 65px;
}

.sec1Wrap .rightWrap .textWrap {
    margin-bottom: 44px;
    width: 100%;
}

.sec1Wrap .rightWrap .textWrap .swiper-slide {
    opacity: 0 !important;
    transition: all .5s !important;
}

.sec1Wrap .rightWrap .textWrap .swiper-slide-active {
    opacity: 1 !important;
}

.sec2Wrap {
    height: 950px;
}

.sec2Wrap .bgWrap {
    height: 100%;
}

.sec2Wrap .contWrap {
    position:absolute;
    top: 127px;
    gap: 0 210px;
    display: flex;
    align-items: center;
}

.sec2Wrap .contWrap .rightWrap {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    gap: 30px 0;
    padding-left: 48px;
    border-left:1px solid rgba(255, 255, 255, 0.5);
}

.sec3Wrap {
    flex-flow: column;
    gap: 60px 0;
    margin-top: -120px;
    z-index: 10;
    background-color: transparent;
    margin-bottom: 140px;
    overflow: visible;
}

.sec3Wrap .topWrap {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 0 110px;
}

.sec3Wrap .topWrap .leftWrap {
    display: flex;
    flex-flow: column;
    align-items: flex-end;
    gap: 40px 0;
}

.sec3Wrap .topWrap .rightWrap {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    gap: 50px 0;
    padding-bottom: 50px;
}

.sec4Wrap {
    flex-flow: column;
    margin-bottom: 230px;
}

.sec4Wrap .topWrap {
    display: flex;
    align-items: center;
    margin-bottom: 35px;
    width: 1180px;
    justify-content: space-between;
}

.sec4Wrap .bottomWrap {
    display: flex;
    flex-flow: column;
    width: 100%;
    align-items: center;
    gap: 36px 0;
}

.sec4Wrap .bottomWrap .textWrap {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    width: 1180px;
}

.sec4Wrap .bottomWrap .textWrap .swiper-container {
    width: 800px;
}

.sec4Wrap .bottomWrap .textWrap .swiper-slide {
    opacity: 0 !important;
    transition:all .5s !important
}

.sec4Wrap .bottomWrap .textWrap .swiper-slide-active {
    opacity: 1 !important;
}

.sec5Wrap {
    justify-content: flex-end;
    align-items: flex-start;
    gap: 0 170px;
    padding-bottom: 160px;
}

.sec5Wrap .bgWrap {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 570px;
    width: 100%;
    background-color: #f7f2ee;
    z-index: -1;
}

.sec5Wrap .leftWrap {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
}

.sec5Wrap .leftWrap .t1 {
    margin-bottom: 80px;
}

.sec5Wrap .leftWrap .t2 {
    margin-bottom: 72px;
}

.sec5Wrap .leftWrap .i1 {
    margin-bottom: 46px;
}

.sec5Wrap .leftWrap .t3 {
    margin-bottom: 43px;
    align-self: flex-end;
}

.sec5Wrap .leftWrap .t4 {
    align-self: flex-end;
}

.sec6Wrap {
    height: 840px;
    background: url(../images/main/bg_sec6.png) no-repeat center/cover;
    justify-content: space-between;
    align-items: flex-start;
}

.sec6Wrap .leftWrap {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    padding-top: 110px;
    padding-left: 95px;
}

.sec6Wrap .leftWrap .t1 {
    margin-left: -30px;
}

.sec6Wrap .leftWrap hr {
    width: 40px;
    height: 1px;
    background-color: #fff;
    margin:34px 0 54px;
    display: block;
}

.sec6Wrap .leftWrap .t2 {
    margin-bottom: 40px;
}

.sec6Wrap .leftWrap .sWrap {
    align-self: flex-end;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-right: -100px;
}

.sec6Wrap .leftWrap .sWrap .s1 {
    animation: rotateLoop 5s infinite linear;
}

.sec6Wrap .leftWrap .sWrap .s2 {
    position: absolute;
}

.sec6Wrap .rightWrap {
    display: flex;
    flex-flow: column;
    border-left:1px solid rgba(255, 255, 255, 0.3);
    height: 100%;
    width: 740px;
}

.sec6Wrap .rightWrap a {
    flex:1;
    display: flex;
    align-items: center;
    padding-left: 135px;
    width: 100%;
}

.sec6Wrap .rightWrap a:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.sec7Wrap {
    flex-flow: column;
    gap: 36px 0;
    background: url(../images/main/bg_sec7.png) no-repeat center bottom/100% auto;
    padding-top: 125px;
    padding-bottom: 250px;
}