@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

body{font-family: "Playfair Display", "Noto Serif JP", serif; color: #000;}
button{font-family: "Playfair Display", serif; color: #000; background-color: none;}

.header{
    width: 80%; 
    position: fixed; 
    margin: 0 auto; 
    left: 0; 
    right: 0; 
    display: flex; 
    height: 90px; 
    align-items: center;
    background-color: #fff;
    z-index: 50;
    box-sizing: border-box;
    transition: all 0.5s;
}
.logo{
    display: block;
    width: 8.5vw;
    margin-left: 30px;
}
.logo img{
    width: 100%;
}


.menu{
    display: flex;
    position: relative;
    top: 18%;
}
.menu>li{
    padding-left: 30px;
}
.menu>li>a{
    display: block;
    font-size: 1vw;
}
.menu>li:hover>a{
    font-weight: bold;
}


.sub{
    position: fixed;
    display: flex;
    font-size: 1vw; 
    padding: 1.6vw 18vw;
    z-index: 10;
    width: 100%;
    left: 0;
    top: 90px;
    box-sizing: border-box;
    border-top: 1px solid #000;
}
.sub>li{
    flex: 1;
    text-align: center;
}
.sub>li>a{
    display: block;
    transition: all 0.2s;
}
.sub>li>a:hover{
    font-size: 1.2vw;
    font-weight: bold;
    color: #f08ca4;
}


.family{
    position: absolute;
    right: 0;
    width: 6vw;
    top: 30%;
    max-width: 180px;

}
.family_btn{
    width: 120%;
    font-size: 1vw;
    background: url(../imgs/bg_underline.png) bottom center no-repeat;
    background-size: 100%;
    text-align: left;
    letter-spacing: 0.1rcap;
    height: 60px;
    color: #000;
}
.family_btn::after{
    content: "▼"; 
    font-size: 10px; 
    line-height: 25px; 
    color: #000;
    padding-left: 8px;
}
.family_list{
    position: absolute;
    top: 110%;
    width: 200%;
    line-height: 210%;
    font-size: 0.85vw;
}
.family_list a{
    display: block;
}
.family_list>li>a:hover{
    font-weight: bold;
    color: #f08ca4;
}
.family_btn:hover{
    font-weight: bold;
}

.back img{
    width: 35px;
}


.main{
    width: 100%;
    height: calc(100vh - 120px);
    padding-top: 110px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-direction: column;
    overflow: hidden;
    margin-bottom: 10px;
}
.mainslide{
    max-width: 55vw;
    margin: 0 auto;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.slide{
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}
.slide img{
    max-width: 680px;
    width: 100%;
    max-height: 450px;
    height: 100%;
}
.mainslide::before{
    content: "♥";
    position: absolute;
    font-size: 4vw;
    left: -3vw;
    transform: rotate(-90deg);
    display: flex;
    align-items: center;
}

.mainslide::after{
    content: "♥";
    position: absolute;
    font-size: 4vw;
    right: -3vw;
    transform: rotate(90deg);
    display: flex;
    align-items: center;
}


.top_title{
    font-size: 3.6vw;
    text-align: center;
    padding-bottom: 9vw;
    padding-right: 1vw;
}
.bt_title{
    font-size: 3.8vw;
    text-align: center;
    padding-top: 9vw;
    padding-right: 1vw;
}



.contents{
    width: 80%;
    padding: 0 4vw;
    margin: 0 auto;
    margin-top: 5vw;
}
.box{
    width: 100%;
    height: 19vw;
    position: relative;
    margin: 10px 0;
    overflow: hidden;
    border: 1px solid #fff;
    transition: all 0.3s;
}
.box span{
    display: block;
    width: 100%;
    height: 100%;
}
.box a{
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(207, 155, 155, 0.3);
    display: flex;
    align-items: center;
    justify-content: space-between;
    left: 0;
    top: 0;
}
.box a p:nth-child(1){
    color: #fff; 
    font-size: 3vw; 
    width: 20%;
    border: 1px solid #fff;
    text-align: center;
    margin-left: 3vw;
    padding: 2px 0 5px;
}
.box a p:nth-child(2){
    color: #fff; 
    font-size: 3vw; 
    width: 5%;
    border: 2px dashed #fff;
    text-align: center;
    margin-right: 3vw;
    border-radius: 100%;
}
.box:hover{
    transform: scale(1.02);
}


.box1>span{background: url(../imgs/box1.jpg) center center no-repeat; background-size: cover;}
.box2>span{background: url(../imgs/box2.jpg) center center no-repeat; background-size: cover;}
.box3>span{background: url(../imgs/box3.jpg) center center no-repeat; background-size: cover;}
.box4>span{background: url(../imgs/box4.jpg) center center no-repeat; background-size: cover;}
.box5>span{background: url(../imgs/box5.jpg) center center no-repeat; background-size: cover;}
.box6>span{background: url(../imgs/box6.jpg) center center no-repeat; background-size: cover;}


.footer{
    padding-top: 50px;
    display: flex;
    margin: 0 auto;
    flex-direction: column;
    width: 80%;
    color: #000;
    align-items: center;
}
.f_menu{
    display: flex;
    margin: 0 auto;
    font-size: 1.2vw;
}
.f_menu>li{
    padding: 1vw;
    display: flex;
    align-items: center;
    font: 1vw;
}
.f_menu>li>a{
    display: block;
    transition: all 0.2s;
}
.f_menu>li:nth-child(1){
    font-size: 1.1vw;
    text-decoration: underline;
}
.f_logo{
    display: flex;
    align-items: center;
    justify-content: center;
}
.f_logo img{
    width: 40%;
    text-align: center;
}
.f_menu>li:hover a{
    color: #f08ca4;
    text-decoration: underline;
    font-weight: bold;
}
.subscribe{
    text-align: center;
    margin-top: 30px;
    margin-bottom: 100px;
}
.subscribe>p:nth-child(1){
    margin-bottom: 10px;
    font-size: 1.5vw;
    font-weight: 500;
    color: #f08ca4;
}
.subscribe>p:nth-child(2){
    margin-bottom: 20px;
    font-size: 1vw;
}
.subscribe>input{
    width: 11vw;
    height: 1.6vw;
    padding: 0.5vw 0;
}
.scrbtn{
    position: absolute; 
    top: 97vh; 
    right: 8vw; 
    cursor: pointer; 
    align-items: flex-end;
}
.scrbtn::before{
    position: absolute; 
    content: "Our Collection"; 
    bottom: 22px; 
    left: -7vw; 
    font-weight: bold; 
    font-size: 1vw;
}


/* mediaquery */
@media all and (max-width:1024px){
    .menu{display: none;}
    .header{width: 100%; justify-content: center;}
    .logo{width: 20vw;}
    .family{width: 16vw; height: 30px;}
    .family_list{top: 180%;}
    .family_list a{font-size: 1.7vw; line-height: 200%;}
    .family_btn{font-size: 2vw;}

    .m_btn{position: absolute; left: 3vw; width: 40px; height: 40px; cursor: pointer; display: flex; flex-direction: column; justify-content: center; top: 15px;}
    .m_btn span{border-top: 2px solid #000; width: 80%; margin: 4px 0;}
    .m_btn span:nth-child(2){width: 70%;}

    .m_nav_wrap{position: fixed; left: 0; top: 0; z-index: 10; width: 100%; height: 100%;}
    .m_nav_bg{width: 100%; height: 100%; background-color: rgba(0,0,0,0.4);}
    .m_nav{position: absolute; left: -100%; top: 0; width: 50vw; height: 100%; background-color: #fff; display: flex; flex-direction: column; justify-content: center; box-sizing: border-box; padding-left: 7vw; transition: all 0.3s;}
    .m_nav_active{left: 0;}

    .m_close{position: absolute; right: 20px; top: 20px; background: none;}
    .m_close img{width: 5vw;}
    .m_menu{position: absolute;}
    .m_menu>li{margin-bottom: 20px;}
    .m_menu>li>a{display: block; font-size: 3.5vw; font-weight: 500; transition: all 0.2s;}
    .m_menu>li>a:hover{text-decoration: underline; font-weight: bold;}
    

    .back{position: absolute; cursor: pointer; position: fixed; top: 2%; left: 2%; transition: all 0.2s;}
    .back::after{content: "Back"; display: block; text-align: right; left: 40px; bottom: 8px; position: absolute; font-weight: bold;}
    .back:hover{color: #f08ca4; transform: rotate(-5deg);}

    .m_sub{line-height: 200%; margin-top: 15px;}
    .m_sub>li>a:hover{color: #f08ca4; font-weight: bold}

    .mainslide{max-width: 80vw;}
    .top_title{font-size: 10vw; margin-bottom: 22vw;}
    .bt_title{font-size: 10vw; margin-top: 22vw;}
}



@media all and (max-width:767px){
    .m_nav{width: 80%;}
    .m_menu>li>a{font-size: 8vw;}
    .m_close img{width: 8vw;}
}

@media all and (min-width:1025px){
    /*모바일 요소 안보이도록 하기*/
    .mobile{display: none;}

}