@font-face {
    font-family: CarismaClassic;
    src: url(/assets/fonts/CarismaClassic-500Medium.woff2);
    font-weight: 500;
}
.quick-menu{
	display : flex;
	width : 100%;
	max-width : 600px;
	height : 50px;
	position : fixed;
	left : 50%;
	bottom : 0;
	transform : translateX(-50%);
	z-index : 100;
}
.quick-menu > .customer{
	display : flex;
	align-items : center;
	justify-content : center;
	width : 35%;
	height : 100%;
	font-size : 24px;
	letter-spacing : -0.033em;
	color : #fff;
	background : #2e2774;
	border-radius : 5px 5px 0 0;
}
.quick-menu > .open{
	display : flex;
	align-items : center;
	justify-content : center;
	flex-direction : row;
	width : 35%;
	height : 100%;
	font-size : 22px;
	letter-spacing : -0.033em;
	color : #2e2774;
	/* background : #fff; */
	background : linear-gradient(to bottom, #fff, #ddd);
	font-weight : 500;
	border-radius : 5px 5px 0 0;
}
.quick-menu > .open > span{
	font-family : CarismaClassic;
	font-weight : 700;
}
.quick-menu > .video-btn{
	display : flex;
	align-items : center;
	justify-content : center;
	background : #51423e;
	width : 30%;
	font-size : 22px;
	letter-spacing : -0.033em;
	color : #fff;
	border-radius : 5px 5px 0 0;
}
.main-section-visual{
    width : 100%;
    height : 1000px;
    position : relative;
	overflow : hidden;
}
.visual-slide{
	width : 100%;
	height : 100%;
}
.visual-bg{
    width : 100%;
    height : 100%;
    position : absolute;
	overflow : hidden;
}
.visual-bg > img{
	width : 100%;
    height : 100%;
	object-fit : cover;
	object-position : center bottom;
	transform : scale(1.25);
	transition : transform 4s;
}
.swiper-slide-active .visual-bg > img{
	transform : scale(1);
}
.visual-inner{
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    width : 100%;
	max-width : 76.1667%;
	margin : 0 auto;
    height : 100%;
	padding-top: 100px;
}
.visual-title{
    font-size: 62px;
	line-height: 72px;
	font-weight: 400;
	letter-spacing: -0.033em;
	color: #fff;
	margin-bottom: 66px;
	font-weight : 100;
	/* text-align: center; */
	transform: translateY(-100px);
    opacity: 0;
	transition : transform 1.2s, opacity 1.2s;
	padding-bottom: 33px;
	position : relative;
}
.visual-title::after{
	position : absolute;
	content : '';
	width : 0;;
	height : 1px;
	background : rgba(255,255,255,0.5);
	left : 0;
	bottom : 0;
	transition : width .5s;
}
.swiper-slide-active .visual-title::after{
	width : 38px;
	transition : width .5s 1s;
}
.visual-title b{display : block;margin-top: 10px; font-weight : 500;color :#d8c5b0;}
.swiper-slide-active .visual-title{
	transform: translateY(0);
    opacity: 1;
	transition : transform 1.2s .5s, opacity 1.2s .5s;
}
.visual-title > span {
	font-weight: 500;
	display: inline-block;
	color: #2e2774;
	opacity: 0;
    transform: scale(1.4);
	transition : transform 1.2s, opacity 1.2s;
}
.swiper-slide-active .visual-title > span{
	opacity: 1;
    transform: scale(1);
	transition : transform 1.2s .5s, opacity 1.2s .5s;
}
.visual-rect{
    width : 1px;
    height : 32px;
    background : #b1afcb;
    margin-bottom : 32px;
    animation : visual-rect 1s both;
    animation-delay: .5s;
}
@keyframes visual-rect {
    0%{
        clip-path: inset(0 0 100% 0);
    }
    100%{
        clip-path: inset(0 0 0 0);
    }
}
.visual-sub-title{
    font-size: 20px;
    font-weight: 100;
    color : #000;
    letter-spacing: -0.013em;
    margin-bottom : 19px;
	transform: translateY(-50px);
    opacity: 0;
	transition : transform 1.2s, opacity 1.2s;
}
.swiper-slide-active .visual-sub-title{
	transform: translateY(0px);
    opacity: 1;
	transition : transform 1.2s 1s, opacity 1.2s 1s;
}
.visual-logo{
    width : 47.5vw;
	max-width : 285px;
	transform: translateY(50px);
    opacity: 0;
	transition : transform 1.2s, opacity 1.2s;
}
.swiper-slide-active .visual-logo{
	transform: translateY(0);
	opacity: 1;
	transition : transform 1.2s 1s, opacity 1.2s 1s;
}
.visual-sign{
	width : 77.1667vw;
	max-width : 463px;
	margin-top : 23px;/*3.8333vw*/
	opacity : 0;
	transform : translateX(-100px) translateY(50px);
	transition : transform 1.2s, opacity 1.2s;
}
.swiper-slide-active .visual-sign{
	opacity : 1;
	transform : translateX(-10px) translateY(0px);
	transition : transform 1.2s 1s, opacity 1.2s 1s;
}
.visual-list{
	display : flex;
	gap : 4px;
	margin : 20px 0 17px;
	max-width : 75vw;
}
.visual-list > li{
	height : 60px;
	border-radius : 4px;
	color : #fff;
	font-size : 12px;
	letter-spacing : -0.025em;
	font-family : GmarketSans;
	font-weight : 300;
	white-space : nowrap;
	animation : visual-list 1.2s both;
	opacity : 0;
	transform : translateX(50px);
	transition : transform 1.2s, opacity 1.2s;
}
.swiper-slide-active .visual-list > li{
	transform: translateY(0px);
    opacity: 1;
	transition : transform 1.2s 1s, opacity 1.2s 1s;
}
.visual-list > li > b{
	font-size : 22px;
	font-family : GmarketSans;
	font-weight : 500
}
.visual-list > li:nth-child(1){
	display : flex;
	align-items : center;
	justify-content : center;
	background : #a32a58;
	padding : 0 25px;
}
.visual-list > li:nth-child(2){
	display : flex;
	flex-direction : column;
	align-items : center;
	justify-content : center;
	background : #20a09a;
	padding : 0 35px;
	animation-delay : 1.4s;
}
.swiper-slide-active .visual-list > li:nth-child(2){
	transition : transform 1.2s 1.4s, opacity 1.2s 1.4s;
}
/**/
.main-section-premium{
    padding: 105px 0;
    position : relative;
    overflow : hidden;
}
.premium-bg{
    position :absolute;
    width : 100%;
    height : 100%;
    left : 0;
    top : 0;
    background : url(/m/assets/images/main/premium-bg.png)no-repeat;
    background-position: center;
}
.premium-slide{
    width : 93.3333%;
    margin : 0 auto;
}
.premium-img{
    margin-bottom: 29px;
}
.premium-box + .premium-box{
    margin-top : 262px;
}
.premium-box{
    transition : opacity 1s, transform 1s;
}
.premium-box:nth-child(1){
    opacity : 0;
    transform: translateY(-100px);
}
.premium-box:nth-child(2){
    opacity : 0;
    transform: translateY(100px);
}
.active .swiper-slide-active .premium-box{
    opacity: 1;
    transform: translateX(0);
}
.premium-con-title{
    font-size: 25px;
    font-weight: 300;
    letter-spacing: -0.033em;
    color : #2e2774;
    margin-bottom : 17px;
}
.premium-con-title > b{
    font-weight: 500;
}
.premium-desc{
    font-size: 18px;
    letter-spacing: -0.03em;
    font-weight: 300;
    color : #231f20;
}
.premium-title-box{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width : 100%;
    height : 100%;
    position : absolute;
    padding-bottom : 200px;
    transform: translateY(100px);
    opacity: 0;
    transition : transform 1s, opacity 1s;
}
.active .premium-title-box{
    transform: translateY(0);
    opacity: 1;
}
.premium-title{
    font-size: 55px;
    line-height: 1em;
    font-family: CarismaClassic;
    margin-bottom: 21px;
    font-weight: 400;
    letter-spacing: 0em;
	color : #28246d;
    transition : letter-spacing 1s;
}
.active .premium-title{
    letter-spacing: 0.467em;
}
.premium-sub-title{
    font-size: 20px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: -0.033em;
    color : #231f20;
    text-align: center;
    margin-bottom : 33px;
}
.premium-pagination{
    display: flex;
    gap : 15px;
    position : static;
}
.premium-pagination .swiper-pagination-bullet{
    width : 15px;
    height : 15px;
    border-radius: 0;
    transform: rotate(45deg);
    border : 1px solid #2e2774;
    background : transparent;
    opacity: 1;
}
.premium-pagination .swiper-pagination-bullet-active{
    background : #2e2774;
}
/**/
.main-section-envi{
    background : #e7e7e7;
    padding : 101px 0 54px;
    overflow: hidden;
}
.envi-title{
    font-size: 55px;
    font-family: CarismaClassic;
    font-weight: 500;
    letter-spacing: 0.417em;
    line-height: 58px;
    text-align: center;
    margin-bottom : 22px;
	color : #28246d;
    letter-spacing: 0em;
    opacity: 0;
    transition : opacity 1s, letter-spacing 1s;
}
.active .envi-title{
    letter-spacing: 0.417em;
    opacity: 1;
}
.envi-sub-title{
    font-size: 20px;
    font-weight: 300;
    letter-spacing: -0.033em;
    line-height: 30px;
    margin-bottom : 46px;
    text-align: center;
    transform: translateY(50px);
    opacity: 0;
    transition : opacity 1s, transform 1s;
}
.active .envi-sub-title{
    transform: translateY(0);
    opacity: 1;
}
.envi-slide{
    width : 71.3333%;
    margin : 0 auto;
    opacity: 0;
    transition: opacity 1s;
}
.active .envi-slide{
    opacity: 1;
    transition-delay: .5s;
}
.envi-img{
    margin-bottom : 66px;
}
.envi-con-box{
    text-align: center;
    transform: translateY(50px);
    opacity: 0;
    transition : transform 1s, opacity 1s;
}
.active .swiper-slide-active .envi-con-box{
    transform: translateY(0);
    opacity: 1;
}
.envi-con-num{
    font-size: 25px;
    font-weight: 500;
    letter-spacing: -0.033em;
    color : #2e2774;
    margin-bottom: 18px;
}
.envi-con-title{
    font-size: 25px;
    font-weight: 300;
    letter-spacing: -0.033em;
    color : #2e2774;
    margin-bottom : 22px;
}
.envi-con-title > b{
    font-weight: 500;
}
.envi-rect{
    display: block;
    margin : 0 auto;
    width : 1px;
    height : 30px;
    background : #2e2774;
    margin-bottom : 25px;
}
.envi-desc{
    font-size: 18px;
    font-weight: 300;
    letter-spacing: -0.033em;
    line-height: 28px;
}
/**/
.main-section-brand{
    padding : 98px 0;
}
.brand-title{
    font-size: 55px;
    font-family: CarismaClassic;
    font-weight: 500;
    letter-spacing: 0.237em;
    margin-bottom : 36px;
    text-align: center;

    letter-spacing: 0em;
    opacity: 0;
    transition : letter-spacing 1s, opacity 1s;
}
.active .brand-title{
    letter-spacing: 0.237em;
    opacity: 1;
}
.brand-bg-box{
    display: flex;
    align-items: center;
    justify-content: center;
    width : 100%;
    height : 376px;
    position : relative;
    overflow : hidden;
    margin-bottom: 40px;
}
.brand-bg-box > img{
    position : absolute;
}
.brand-bg-01{
    transform: scale(1.5);
    transition : transform 2s;
}
.active .brand-bg-01{
    transform: scale(1);
}
.brand-bg-02{
    width : 51.6667%;
    opacity: 0;
    transform: translateY(-50px);
    transition : transform 1s, opacity 1s;
}
.active .brand-bg-02{
    transform: translateY(0);
    opacity: 1;
    transition-delay: .5s;
}
.brand-bg-03{
    width : 76.8333%;
    mix-blend-mode: lighten;
    opacity: 0;
    transition : opacity 2s;
}
.active .brand-bg-03{
    opacity: 0.1;
    transition-delay: 0s;
}
.brand-con-box{
    text-align: center;
    transform: translateY(50px);
    opacity: 0;
    transition : transform 1s, opacity 1s;
}
.active .brand-con-box{
    transform: translateY(0);
    opacity: 1;
    transition-delay : .5s;
}
.brand-sub-title{
    font-weight: 500;
    letter-spacing: -0.033em;
    font-size: 25px;
    line-height: 1em;
    margin-bottom : 27px
}
.brand-desc{
    font-size: 18px;
    font-weight: 300;
    letter-spacing: -0.033em;
    line-height: 28px;
}
/**/
.main-section-location{
    position: relative;
    padding : 117px 0 106px;
    overflow: hidden;
}
.location-bg{
    position : absolute;
    width : 100%;
    height : 100%;
    left : 0;
    top : 0;
    background : url(/m/assets/images/main/location-bg.jpg)no-repeat;
    background-size: cover;
    background-position : left top;
    z-index: -1;

    transform: scale(1.2);
    transition : transform 2s;
}
.active .location-bg{
    transform: scale(1);
}
.location-title{
    font-size: 55px;
    letter-spacing: 0.297em;
    font-family: CarismaClassic;
    font-weight: 500;
    margin-bottom : 43px;
    text-align: center;
    opacity: 0;
    letter-spacing: 0em;
    transition : opacity 1s, letter-spacing 1s;
}
.active .location-title{
    opacity: 1;
    letter-spacing: 0.297em;
}
.location-map{
    margin : 0 auto 35px;
    width : 75.5%;

    opacity: 0;
    transition : opacity 1s;
}
.active .location-map{
    opacity: 1;
    transition-delay: .5s;
}
.location-btn-box{
    opacity: 0;
    transform: translateY(50px);
    transition : opacity 1s, transform 1s;
}
.active .location-btn-box{
    opacity: 1;
    transform: translateY(0);
    transition-delay: 1s;
}
.location-btn-box + .location-btn-box{
    margin-top : 38px;
}
.location-address{
    font-size: 18px;
    font-weight: 300;
    letter-spacing: -0.033em;
    margin-bottom: 23px;
    text-align: center;
}
.location-btn{
    width : 61.6667%;
    margin : 0 auto;
}

/************ new ***************/
.main-section-unit{
	background : #f5f1eb;
	position : relative;
}
.unit-top{
	width : 100%;
	margin : 0 auto;
	position : relative;
	padding: 79px 68px 303px;
}
.unit-title{
	margin-bottom: 40px;
}
.unit-title > p{
	font-size : 60px;
	font-weight : 500;
	font-family : CarismaClassic;
	color : #000000;
}
.unit-title > p > div{
	opacity : 0;
	transform : translateY(-100px);
	font-family : CarismaClassic;
}
.unit-title > p.color{
	color : #2e2774;
}
.unit-desc{
	font-size : 15px;
	letter-spacing : -0.033em;
	color : #231f20;
	font-weight : 300;
	line-height : 25px;
	transform : translateY(100px);
	opacity : 0;
	transition : transform 1.2s, opacity 1.2s;
}
.active .unit-desc{
	transform : translateY(0px);
	opacity : 1;
	transition : transform 1.2s .5s, opacity 1.2s .5s;
}
.unit-obj{
	position : absolute;
	bottom : 44px;
	left : 0;
	opacity : 0;
	transition : transform 1.2s, opacity 1.2s;
	mix-blend-mode: darken;
}
.active .unit-obj{
	opacity : 1;
	transition : transform 1.2s .5s, opacity 1.2s .5s;
}
.unit-logo{
	position : absolute;
	bottom : 0;
	left : 50%;
	transform : translateX(-50%) translateY(50%);
	z-index : 10;
	width : 19vw;
	max-width : 114px;
}
.unit-bottom{
	display : flex;
	flex-direction : column;
	align-items : center;
	justify-content : center;
	background : url(/assets/images/main/unit-bg.jpg)no-repeat center;
	background-size : cover;
	padding: 82px 0 91px;
	overflow : hidden;
}
.unit-slide{
	width : 493px;
	height : 315px;
	margin-bottom: 30px;;
	mix-blend-mode: darken;

	transform : translateY(-100px);
	opacity : 0;
	transition : transform 1.2s, opacity 1.2s;
}
.active .unit-slide{
	transform : translateY(0px);
	opacity : 1;
	transition : transform 1.2s .5s, opacity 1.2s .5s;
}
.unit-slide .swiper-slide{
	display : flex;
	align-items : center;
	justify-content : Center;
	mix-blend-mode: darken;
}
.unit-slide .swiper-slide > img{
	width : 100%;
	height : 100%;
	object-fit : contain;
	object-position : center;
	mix-blend-mode: darken;
}
.unit-btn-box{
	display : flex;
	justify-content : center;
	flex-wrap : wrap;
	width : 480px;
	gap : 15px;
	margin-bottom: 32px;
	transform : translateY(100px);
	opacity : 0;
	transition : transform 1.2s, opacity 1.2s;
}
.active .unit-btn-box{
	transform : translateY(0px);
	opacity : 1;
	transition : transform 1.2s .5s, opacity 1.2s .5s;
}
.unit-btn-box > li{
	width : 57px;
	padding-bottom : 8px;
	border-bottom : 1px solid transparent;
	font-size : 16px;
	font-family : CarismaClassic;
	color : #5d5d5d;
	transition : color .5s, border-color .5s;
	text-align : center;
	cursor : pointer;
}
.unit-btn-box > li.on,
.unit-btn-box > li:hover{
	color : #000;
	border-color : #2e2774;
}
.unit-con{
	position : relative;
	transform : translateY(100px);
	opacity : 0;
	transition : transform 1.2s, opacity 1.2s;
}
.active .unit-con{
	transform : translateY(0px);
	opacity : 1;
	transition : transform 1.2s .5s, opacity 1.2s .5s;
}
.unit-con > li{
	display : flex;
	flex-direction : column;
	align-items : center;
	gap :17px;
	position : absolute;
	top : 0;
	white-space : nowrap;
	opacity : 0;
	pointer-events : none;
	font-size : 40px;
	font-family : CarismaClassic;
	color : #2e2774;
	transition : opacity .5s;
}
.unit-con > li.on{
	opacity : 1;
	pointer-events : all;
}
.unit-con > li:first-child{
	position : static;
}
.unit-con > li > a{
	display : flex;
	align-items : center;
	justify-content : center;
	width : 177px;
	height : 46px;
	background :  #2e2774;
	color : #fff;
	font-size : 13px;
	font-weight : 300;
	border-radius : 100px;
}


@media(max-width : 600px){
	.quick-menu{
		height : 8.3333vw;
	}
	.quick-menu > .customer{
		font-size : 4vw;
	}
	.quick-menu > .open{
		font-size : 3.6667vw;
	}
	.quick-menu > .video-btn{
		font-size : 3.6667vw;
	}
    .main-section-visual{
        height : 166.6667vw;
    }
	.visual-inner{
		padding-top: 16.6667vw;
	}
    .visual-title{
        font-size: 10.3333vw;
        line-height: 12vw;
        margin-bottom : 11vw;
		padding-bottom: 5.5vw;
    }
    .visual-rect{
        height : 5.3333vw;
        margin-bottom : 5.3333vw;
    }
    .visual-sub-title{
        font-size: 3.3333vw;
        margin-bottom : 3.1667vw;
    }

	.visual-list{
		gap : 0.6667vw;
		margin : 3.3333vw 0 2.8333vw;
	}
	.visual-list > li{
		height : 10vw;
		border-radius : 0.6667vw;
		font-size :  2vw;
	}
	.visual-list > li > b{
		font-size : 3.6667vw;
	}
	.visual-list > li:nth-child(1){
		padding : 0 4.1667vw;
	}
	.visual-list > li:nth-child(2){
		padding : 0 5.8333vw;
	}

    /**/
    .main-section-premium{
        padding: 17.5vw 0;
    }
    .premium-img{
        margin-bottom: 4.8333vw;
    }
    .premium-box + .premium-box{
        margin-top : 43.6667vw;
    }
    .premium-con-title{
        font-size: 4.1667vw;
        margin-bottom : 2.8333vw;
    }
    .premium-desc{
        font-size: 3vw;
    }
    .premium-title-box{
        padding-bottom : 33.3333vw;
    }
    .premium-title{
        font-size: 9.1667vw;
        margin-bottom: 3.5vw;
    }
    .premium-sub-title{
        font-size: 3.3333vw;
        line-height: 5vw;
        margin-bottom : 5.5vw;
    }
    .premium-pagination{
        gap : 2.5vw;
    }
    .premium-pagination .swiper-pagination-bullet{
        width : 2.5vw;
        height : 2.5vw;
    }
    /**/
    .main-section-envi{
        padding : 16.8333vw 0 9vw;
    }
    .envi-title{
        font-size: 9.1667vw;
        line-height: 9.6667vw;
        margin-bottom : 3.6667vw;
    }
    .envi-sub-title{
        font-size: 3.3333vw;
        line-height: 5vw;
        margin-bottom : 7.6667vw;
    }
    .envi-img{
        margin-bottom : 11vw;
    }
    .envi-con-num{
        font-size: 4.1667vw;
        margin-bottom: 3vw;
    }
    .envi-con-title{
        font-size: 4.1667vw;
        margin-bottom : 3.6667vw;
    }
    .envi-rect{
        height : 5vw;
        margin-bottom : 4.1667vw;
    }
    .envi-desc{
        font-size: 3vw;
        line-height: 4.6667vw;
    }
    /**/
    .main-section-brand{
        padding : 16.3333vw 0;
    }
    .brand-title{
        font-size: 9.1667vw;
        margin-bottom : 6vw;
    }
    .brand-bg-box{
        height : 62.6667vw;
        margin-bottom: 6.6667vw;
    }
    .brand-sub-title{
        font-size: 4.1667vw;
        margin-bottom : 4.5vw;
    }
    .brand-desc{
        font-size: 3vw;
        line-height: 4.6667vw;
    }
    /**/
    .main-section-location{
        position: relative;
        padding : 19.5vw 0 17.6667vw;
    }
    .location-title{
        font-size: 9.1667vw;
        margin-bottom : 7.1667vw;
    }
    .location-map{
        margin : 0 auto 5.8333vw;
    }
    .location-btn-box + .location-btn-box{
        margin-top : 6.3333vw;
    }
    .location-address{
        font-size: 3vw;
        margin-bottom: 3.8333vw;
    }
	/************ new ***************/
	.unit-top{
		padding: 13.1667vw 11.3333vw 50.5vw;
	}
	.unit-title{
		margin-bottom: 6.6667vw;
	}
	.unit-title > p{
		font-size : 10vw;
	}
	.unit-desc{
		font-size : 2.5vw;
		line-height : 4.1667vw;
	}
	.unit-obj{
		bottom : 7.3333vw;
	}
	.unit-bottom{
		padding: 13.6667vw 0 15.1667vw;
	}
	.unit-slide{
		width : 82.1667vw;
		height : 52.5vw;
		margin-bottom: 5vw;
	}
	.unit-btn-box{
		width : 80vw;
		gap : 2.5vw;
		margin-bottom: 5.3333vw;
	}
	.unit-btn-box > li{
		width : 9.5vw;
		padding-bottom : 1.3333vw;
		font-size : 2.6667vw
	}
	.unit-con > li{
		gap : 2.8333vw;
		font-size : 6.6667vw;
	}
	.unit-con > li > a{
		width : 29.5vw;
		height : 7.6667vw;
		font-size : 2.1667vw;
	}
}