@font-face {
    font-family: CarismaClassic;
    src: url(/assets/fonts/CarismaClassic-600DemiBold.woff2);
    font-weight: 600;
}
@font-face {
    font-family: GmarketSans;
    src: url(/assets/fonts/GmarketSansTTFMedium.woff2);
    font-weight: 500;
}
@font-face {
    font-family: GmarketSans;
    src: url(/assets/fonts/GmarketSansTTFLight.woff2);
    font-weight: 300;
}
*{
    margin : 0;
    padding : 0;
    box-sizing: border-box;
    font-family: Noto Sans KR;
}
html{
    scroll-behavior: smooth;
}
li{
    list-style: none;
}
a{
    text-decoration: none;
    color : inherit;
}
img{
    display: block;
    max-width: 100%;
}
/**/
#wrap{
    width : 100%;
    max-width : 600px;
    margin : 0 auto;
    overflow : hidden;
}
.header{
    display: flex;
    width : 100%;
    max-width : 600px;
    height : 136px;
    border-bottom : 1px solid rgba(0,0,0,0.1);
    position : fixed;
    left : 50%;
    transform: translateX(-50%);
    z-index: 1000;
	/* background: rgba(45,39,113,0.9); */
	background : #fff;
}
.header.sub{
    position : absolute;
}
.header-logo{
    width : 11.8333%;
    background : url(/m/assets/images/common/header-logo-new.png)no-repeat #2e2774;
    background-position : center;
    background-size : 24%;
}
.main-logo{
    width : 56.1667%;
    border-right : 1px solid rgba(0,0,0,0.1);
    background : url(/assets/images/common/main-logo.png)no-repeat;
    background-position : center;
    background-size : 70%;
}
.main-logo > a{
    display: block;
    width : 100%;
    height : 100%;
    color : transparent;
    font-size: 0;
    line-height: 0;
}
.header-right{
    display: flex;
    flex-wrap: wrap;
    flex : 1;
    width : 100%;
	border-left : 1px solid rgba(0,0,0,0.1);
}
.header-tel{
    width : 50%;
    height : 93px;
    background : url(/m/assets/images/common/header-tel-icon-new.png)no-repeat;
    background-position : center;
	background-size : 23%;
    border-right : 1px solid rgba(0,0,0,0.1);
    border-bottom : 1px solid rgba(0,0,0,0.1);
}
.hamburger{
    display: flex;
    align-items: center;
    justify-content: center;
    width : 50%;
    height : 93px;
    border-bottom : 1px solid rgba(0,0,0,0.1);
    position : relative;
}
.hamburger > span{
    position : absolute;
    width : 26.8817%;
    height : 1px;
    background : #373636;
    transition : width .5s, transform .5s;
}
.hamburger > span:nth-child(1){
    transform: translateY(-8px);
}
.header.on .hamburger > span:nth-child(1){
    transform: translateY(0) rotate(-45deg);
}
.header.on .hamburger > span:nth-child(2){
    width : 0;
}
.hamburger > span:nth-child(3){
    transform: translateY(8px);
}
.header.on .hamburger > span:nth-child(3){
    transform: translateY(0) rotate(45deg);
}
.header-right .open{
    display: flex;
	flex-direction : column;
    align-items: center;
    justify-content: center;
    width : 100%;
    height : calc(100% - 93px);
    font-size: 18px;
    letter-spacing: -0.033em;
    color : #373636;
	line-height : 1em;
	white-space : nowrap;
}
.header-right .open b{
	font-family : CarismaClassic;
}
.hamburger-nav{
    width : 100%;
    max-width : 600px;
    height : 100vh;
    position : fixed;
    left : 50%;
    z-index: 999;
    transform: translateX(calc(-50% + 100%));
    transition : transform 1s;
    padding : 136px 50px 0;
    background : #2e2775;
    border-left : 15px solid #d8c3ad;
}
.header.on + .hamburger-nav{
    transform: translateX(-50%);
}
.hamburger-nav > ul{
    padding : 30px 0;
    overflow : scroll;
}
.hamburger-nav > ul > li > a{
    display: block;
    padding : 20px 0;
    font-size: 24px;
    letter-spacing: -0.033em;
    color : #fff;
}
.hamburger-nav > ul > li > a:hover{
    color : #d8c3ad;
}
.hamburger-nav > ul > li > ul{
	display : none;
}
.hamburger-nav > ul > li > ul > li{
	display : inline-block;
	font-size : 18px;
	color : #fff;
	margin-right : 10px;
}
.hamburger-nav > ul > li > ul > li > a{
	display : flex;
	align-items : center;
	position : relative
}
.hamburger-nav > ul > li > ul > li:not(:last-child) > a{
	padding-right : 10px;
}
.hamburger-nav > ul > li > ul > li:not(:last-child) > a::after{
	position : absolute;
	content : '';
	width : 2px;
	height : 2px;
	background : #eee;
	right : 0;
	transform : translateX(100%);
}
/**/
.footer{
    background : #0e0d0d;
    padding : 59px 0 68px;
    position: relative;
    z-index: 50;
}
.footer-inner{
    width : 76%;
    margin : 0 auto;
}
.footer-logo{
    margin-bottom : 34px;
    width : 58.114%;
}
.footer-address{
    font-size: 18px;
    letter-spacing: -0.033em;
    color : #fff;
    font-style: normal;
    font-weight: 300;
    margin-bottom : 18px;
}
.footer-info{
    font-size: 18px;
    color : #4b4b4b;
    letter-spacing: -0.033em;
    line-height: 28px;
    margin-bottom : 29px;
}
.footer-info > li{
    padding-left : 20px;
    position : relative;
}
.footer-info > li::before{
    position :absolute;
    content : '※';
    left : 0;
    top : 0;
}
.footer-top{
    position : absolute;
    right : 0;
    bottom : 100%;
    width : 12.5%;
}
.footer-p{
	font-size: 16px;
    color : #4b4b4b;
    letter-spacing: -0.033em;
    margin-bottom : 15px;
	color : #f0f0f0;
}
@media(max-width : 600px){
    .header{
        height : 22.6667vw;
    }
    .header-tel{
        height : 15.5vw;
    }
    .hamburger{
        height : 15.5vw;
    }
    .hamburger > span:nth-child(1){
        transform: translateY(-1.3333vw);
    }
    .hamburger > span:nth-child(3){
        transform: translateY(1.3333vw);
    }
    .header-right .open{
        height : calc(100% - 15.5vw);
        font-size: 3vw;
    }
    .hamburger-nav{
        padding : 22.6667vw 8.3333vw 0;
    }
    .hamburger-nav > ul{
        padding : 5vw 0;
    }
    .hamburger-nav > ul > li > a{
        padding : 3.3333vw 0;
        font-size: 4vw;
    }
	.hamburger-nav > ul > li > ul > li{
		font-size : 3vw;
		margin-right : 1.6667vw;
	}
	.hamburger-nav > ul > li > ul > li:not(:last-child) > a{
		padding-right : 1.6667vw;
	}
	.hamburger-nav > ul > li > ul > li:not(:last-child) > a::after{
		width : 0.3333vw;
		height : 0.3333vw;
	}
    /**/
    .footer{
        background : #0e0d0d;
        padding : 59px 0 68px;
        position: relative;
    }
    .footer-logo{
        margin-bottom : 5.6667vw;
    }
    .footer-address{
        font-size: 3vw;
        margin-bottom : 3vw;
    }
    .footer-info{
        font-size: 3vw;
        line-height: 4.6667vw;
        margin-bottom : 4.8333vw;
    }
    .footer-info > li{
        padding-left : 3.3333vw;
    }
	.footer-p{
		font-size: 2.6667vw;
		margin-bottom : 2.5vw;
	}
}