/* 공통스타일 */
 *{position: relative; padding: 0; margin: 0;}
 li,ol,ul{list-style: none;}
 img{display: block;}
 a{text-decoration: none;}
 button, input{outline: none; border:none;}
 div, header, footer, section, span{
    font-family: 'IBM Plex Sans KR', sans-serif;
 }
 section{clear:both;}


/* 상단스타일 */
header{
    height: 171px;
    width: 100%;
    /* border: 1px solid violet; */
    overflow: hidden;
}
/* header .header-1{
    padding-right: 0px;
    padding-left: 0px;
} */
header .free{  
    width: 100%;
    height: 40px;
    background-color: black;
    color: white;
    font-size: 16px;  
    display: flex;
    justify-content: center;
    align-items: center;
}
header .logo{ }
header .logo-wrap{width: 270px; bottom: 16px;}
header .logo img{width: 100%; height: 100%;}




@media(max-width: 1620px){   
    header .search{left:10%;}  
}
@media(max-width: 1250px){   
    header .search{display: none !important;} 
    header .user{left:10%;} 
}
@media(min-width:992px){
    .hidden-menu{display: none;}  
}
@media(max-width:992px){
    header .user{left: 55%;}   
    header .logo{ left: 32%; }   
}
@media(max-width:768px){
    header{height: 150px;}
    .header-2{
        padding: 38px 10px !important; 
    }  
    header .logo{ left:100px; }
    .ham-btn{  top: 66px !important;  }
    header .user{left: -2%;}  
}
@media(max-width: 540px){
    .hidden-menu{left:12px;}
    header .logo{ left:28%;}
    header .logo-wrap{width: 170px; top:-5px;}
    header .user{left: 1% !important; top:0 !important;} 
    header .user i{font-size: 18px !important; top:2px;}
    .ham-btn{   }
}
@media(max-width: 420px){
    header{height: 105px;}
    .header-2{padding: 21px 16px !important;}
    header .logo{left: 24%;}
    .ham-btn{top: 47px !important}
}
@media(max-width: 375px){
    header .logo{ left: 21%;}
}




header .header-2{
    /* border:1px solid green; */
    padding: 50px 20px; 
    box-sizing: border-box; 
}
header .menu{
    display: flex;
    justify-content: center;
    align-items: center;  
    /* left: 10%;  */
}
header .menu li{ 
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-size: 18px;
    font-weight: 700px;
    letter-spacing: 3px;
    padding-left: 30px;
}
header .menu li a{color: #333333; white-space: nowrap;}
header .search{}
header .search input{
    /* border:1px solid green; */
    width: 65px;
    float: right;
    right: 30px;
    font-size: 20px;
    background-color: #fafafa;
}
header .search input:focus::placeholder{color: transparent;}
header .search i{
    float: right;
    right: 15px;
    top: 9px;
    font-size: 16px;
}
header .search .search-wrap{background-color: #fafafa; width: 200px; height: 30px; float: right;}
header .user{   
    /* border:1px solid blue;     */
}
header .user i{  
    float: right;
    font-size: 25px;
    color:#333333;   
}
header .user i:nth-child(1){margin-left: 20px;}

.container-fluid{
    padding-right: 0px;
    padding-left: 0px;
    margin-right: 0;
    margin-left: 0;
}

.section{
    padding-top: 50px;
    padding-bottom: 50px;
}


/* 하단스타일 */
footer{   
    padding-top: 100px;
}
footer .container{}
footer .container .item{}
footer .container .item  h4{
    font-size: 25px;
    font-weight: 400;
    line-height: 40px;
}
footer .container .item  .site{
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 3px;
    margin-bottom: 30px;
}
footer .container .item  p{
    font-size: 18px;
    font-weight: 300;  
    padding-bottom: 5px;
}
footer .container:last-child{
    padding-top: 30px;
    padding-bottom: 30px;
}
footer .container:last-child p{
    font-size: 16px;
    line-height: 60px;  
}
footer .container:last-child i{
    font-size: 22px;
    line-height: 60px; 
    margin-right: 25px; 
}
footer .container:last-child .sns{
    left:88px;
}
footer .copy{
    letter-spacing: 2px;
}
footer .subbb{margin-bottom: 30px;}
footer .foot-line{background-color: #f7f7f7;}
footer .foot2-line{border-top: 1px solid #cfcece; background-color: #f1f1f1; }
footer .foot1-wrap{
    padding-top: 40px;
    padding-bottom: 40px;      
}


@media(max-width:1000px){
    footer .container:last-child p{
        text-align: center; 
        line-height: 30px; 
    }
    footer .container:last-child .sns{
        text-align: center; 
        left:0px;
    }
}
/* btn */
.btn-2{
    background-color: black;
    color:white;
    height: 50px;
    width: 150px;
    cursor: pointer;
}

/* top btn */
.btn-top{
    position: fixed;
    right:50px;
    bottom:50px;
    width: 50px;
    height: 50px;
    border: 3px solid #dddddd;
    border-radius: 50%;
    z-index: 1000;
    display: none;
}
.btn-top .bar{
    display: block;
    position: absolute;
    left:calc(50% - 1px); top:50%;
    width: 2px;
    background-color: #dddddd;
    transition: 0.5s;
}
.btn-top .bar1{
    height: 18px;
    transform: translate(0px,-9px);
}
.btn-top .bar2{
    height: 8px;
    transform: rotate(45deg);
    transform-origin: right top;
    margin-top: -8px;    
}
.btn-top .bar3{
    height: 8px;
    transform: rotate(-45deg);
    transform-origin: left top;
    margin-top: -8px;
}
.btn-top:hover{
    background-color: #dddddd;
}
.btn-top:hover .bar{
    background-color: white;
}

/* 샵페이지의 공통 스타일 */
.page-title h1{
    /* border:1px solid blue; */
    text-align: center;
    text-transform: uppercase;
    font-size: 49px;
    font-weight: 100;
    line-height: 100px;    
    color:white;
    top: 48%;
    transform: translate(0,-50%);
    font-family: 'Nanum Pen Script', cursive;
}
@media(max-width:900px){
    .page-title h1{font-size: 30px;  line-height: 50px;  }
}
@media(max-width: 475px){
    .page-title h1{font-size: 20px;  line-height: 40px;  }
    .title-b{font-size: 30px !important;           }
}
@media(max-width: 320px){
    .ham-btn{left: -8px !important;}
    header .logo-wrap{left:-9% !important;}
    header .user{left:4% !important; top:4px !important;}
    header .user i:nth-child(1){margin-left: 9px !important; }
   
}

.page-title{ 
    /* border:1px solid red; */
    background-image: url("211217_img_a-interior/shop-banner2.jpg");
    background-size: cover;
    background-position: center center;
    height: 550px;
}

/* ham-btn addClass part */
.ham-btn{
    width: 80px;
    height: 70px;
    /* border: 1px solid; */
    display: none;
    position: absolute; top:85px; left:15px;
}
.ham{
    width: 35px;
    height: 2px;
    background-color: gray;
    position: absolute;
    left:22px;
}
.ham1{top:15px;}
.ham2{top:25px;}
.ham3{top:35px;}
.hidden-menu{
    display: none;
    width: 100%;    
}
.hidden-menu .menus{
    left:5%;
    width: 90%;
    cursor: pointer;
    line-height: 50px;
    letter-spacing: 3px;
    border-bottom:1px solid gray;
}
.hidden-menu .menus:last-child{
    border-bottom: none;
}

@media(max-width:1000px){
    .ham-btn{display: block;}
    .logo{left:70px;}    
}