@charset "utf-8";
/* CSS Document */

body{
    background: #000;
    color: #FFF;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-weight: normal;
}

a:link, a:visited, a:active, a:hover {
    color: #FFF;
}

#page-top a{
    color: #FFF;
}


.header_logo #hms_logo {
    fill: #fff;
}

.header_menu i {
    color: #FFF;
}

.hamburger span {
    background: #FFF;
}


nav#globalMenuSp a {
    color: #000 !important;
}

.header_banner,.header_text_info_wrap{
    display: none;
}




.fs-l-main {
    padding: 0;
    margin: 0;
    max-width: 100%;
}

.luxury_hero {
    margin-bottom: 0;
    padding: 0;
}

.swiper-slide a {
    display: grid;
}

.swiper-slide a div{
    background: linear-gradient(45deg, #2c2c2c 5%, #050504, #2c2c2c 95%);
    height: 20vh;
    position: relative;
}

.swiper-slide a div h2{
    position: absolute;
    left: 1rem;
    top:-4rem;
    line-height: 1.5;
}


.swiper-slide a div h2 span{
    display: block;
    font-size: 0.75rem;    
}


.swiper-slide a div img {
    width: 30%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    position: absolute;
}




.luxury_description {
    padding: 3rem 0;
    margin: 0;
    text-align: center;
}

.luxury_description p span{
    display: block;
}




.luxury_brandlist {
    background: #2c2c2c;
    padding: 5rem 0;
    margin: 0;
}

.luxury_content_title {
    padding: 0 0 2rem;
    text-align: center;
}

.luxury_content_title h2 {
    font-size: 1.25rem;
    max-width: 1440px;
    margin: auto;
    padding: 0 1rem;
}

.luxury_content_title h2 span{
    font-size: 0.75rem;
    display: block;
}


.luxury_brandlist_box {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 4px;
    padding: 4px;
    max-width: 1440px;
    margin: auto;
}

.luxury_brandlist_box > div {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 60%;
}

.luxury_brandlist_box a {
    display: block;
    width: 100%;
    height: 100%;
}

.brand_list_bg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 1;
    opacity: 0.7;
    object-fit: cover;
    width: 110%;
    height: 110%;
}

.brand_list_logo {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    height: 100%;
    max-width: 55%;
    max-height: 24%;
    object-fit: contain;
}







/*tabの形状*/
.tab{
	display: flex;
	flex-wrap: nowrap;
    padding: 0 1rem;
}

.tab li{
    flex: none;
}

.tab li a {
    display: block;
    margin: 0;
    padding: 1rem 1rem 1rem 0;
    color: #999;
}

/*liにactiveクラスがついた時の形状*/
.tab li.active a{
    color: #000;
}


/*エリアの表示非表示と形状*/
.area {
	display: none;/*はじめは非表示*/
	opacity: 0;/*透過0*/
	padding: 2rem 0;
}

/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
    display: block;/*表示*/
    animation-name: displayAnime;/*ふわっと表示させるためのアニメーション*/
    animation-duration: 2s;
    animation-fill-mode: forwards;
}

@keyframes displayAnime{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}


.tab_slide_box {
    width: 100%;
    overflow-x: scroll;
}






.luxury_product {
    background: #FFF;
    color: #000;
    margin: 0;
    padding: 5rem 0;
}

.luxury_product_box {
    max-width: 1440px;
    margin: auto;
}

.luxury_brand_product_slide_box {
    width: 100%;
    overflow-x: scroll;
    margin-bottom: 2rem;
}

.luxury_brand_product_slide [id*="_rcmdjp_display_"]{
    display: grid;
    grid-template-columns: repeat(5,65vw);
    padding: 0 1rem;
}

.luxury_brand_product_slide [id*="_rcmdjp_display_"] > div {
    padding: 0 0 1rem;
}


.luxury_brand_product_slide_wrap a {
    color: #000;
}
.luxury_brand_product_slide img {
    margin-bottom: 1rem;
}

.luxury_brand_product_slide h3 {
    padding: 0 1rem;
    font-size: inherit;
}

.luxury_brand_product_slide span {
    padding: 0;
    font-size: inherit;
}



.luxury_brand_link{
    text-align: center;
}


.luxury_brand_link a{
    display: inline-block;
    text-align: center;
    border: 1px solid #000;
    line-height: 4.5;
    padding: 0 2rem;
}







.luxury_form {
    padding: 5rem 0;
    margin: 0;
}


.luxury_form .luxury_content_title img {
    width: 120px;
    margin-bottom: 1rem;
}

.luxury_form > p {
    text-align: center;
    margin-bottom: 2rem;
}

.luxury_form > p span{
    display: block;
}

.luxury_form_box {
    padding: 0 1rem;
    max-width: 1440px;
    margin: 0 auto;
}

.luxury_form_box:after {
    content: " ";
    display: block;
    width: 100%;
    border-bottom: 1px solid #FFF;
    margin: 4rem auto 4rem;
}

.luxury_form_box > div:nth-child(even){
    margin-bottom: 1rem;
}

.luxury_form_box select{
    height: 36px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


.luxury_form_box input,
.luxury_form_box select,
.luxury_form_box textarea {
    background: #505050;
    border:1px solid #666666;
    border-radius: 0.5rem;
    color: #FFF;
}

.luxury_form_box textarea{
    line-height: 1.5;
    padding: 0.5rem 1rem;
}

.luxury_form_box input + input{
    margin-top: 0.5rem;
}

.form_attention {
    margin-bottom: 3rem;
}

.form_attention p{
    display: grid;
    grid-template-columns: 1rem 1fr;
    font-size: 0.75rem;
}

.form_attention p:before{
    content: "※";
}

.luxry_form_button {
    text-align: center;
}

.luxry_form_button input {
    line-height: 3;
    width: 100%;
    max-width: 360px;
    color: #FFF;
    border: 1px solid #FFF;
    background: transparent;
    font-size: inherit;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}


.tel_contact {
    text-align: center;
}

.luxury_content_title h3{
    font-size: 1rem;
}

.tel_contact h3{
    font-size: 1rem;
    margin-bottom: 1rem;
}

.tel_contact h3 span {
    display: block;
    font-size: 0.75rem;
}

.tel_contact > div span {
    display: block;
}

.tel_contact > div {
    margin-bottom: 2rem;
}

.tel_contact a {
    font-size: 1.5rem;
    display: inline-block;
    border: 1px solid #FFF;
    border-radius: 0.5rem;
    padding: 0 2rem;
    line-height: 2;
}

.luxury_end {
    margin: 0;
    display: grid;
    width: 100%;
    height: 60vh;
    align-content: center;
    justify-content: center;
}

.luxury_end img {
    width: 60%;
    margin: auto;
    max-width: 220px;
}

footer{
    background: #505050;
}


/* tablet */
@media screen and (min-width: 48rem) {

    .swiper-slide a {
        grid-template-columns: 1.5fr 1fr;
    }    

    .swiper-slide a div {
        height: 100%;
    }

    .swiper-slide a div h2{
        left: 1.5rem;
        bottom: 1.5rem;
        top: auto;
    }   
    
    .luxury_description {
        padding: 4rem 0;
    }    
    
    .luxury_description p {
        line-height: 3;
    }

    .luxury_description p span {
        display: inline-block;
    }
    
    .luxury_brandlist_box {
        grid-template-columns: 1fr 1fr 1fr;
    }   
 
    .luxury_product_box {
        display: grid;
        grid-template-columns: 20% 80%;
    }
    
    .tab_slide_box {
        overflow-x: inherit;
    }   
    
    .tab {
        flex-direction: column;
    }

    .luxury_product .luxury_content_title {
        text-align: left;
        padding: 0 0 2rem;
    }
    
    .tab li a {
        padding: 0;
        line-height: 2.5;
    }    
    
    .area {
        padding: 0 0 2rem;
    }  
    
    .luxury_brand_product_slide .fr3-productListStatic__responsive_2{
        grid-template-columns: repeat(5,23vw) !important;
    }    

    .luxury_brand_product_slide h3, .luxury_brand_product_slide span {
        font-size: 0.75rem;
    }    
    
    .luxury_form_box {
        width: 70%;
    }    
    
}

/* tablet landscape */
@media screen and (min-width: 48rem) and (orientation:landscape){
    .swiper-slide a {
        grid-template-columns: 1fr 1fr;
    }    

    .luxury_form > p span {
        display: inline-block;
    }
    
    .luxury_brand_link a {
        line-height: 4;
    }    

    .luxury_form_box {
        display: grid;
        grid-template-columns: 0.5fr 1fr;
        grid-gap: 1rem;
        line-height: 3;
    }    
    .luxury_form_box select {
        height: 42px;
    }   

    .luxury_form_box textarea,
    .luxury_form_box > div:nth-child(even) {
        margin-bottom: 0;
    }   
    
    
    .form_attention,
    .luxry_form_button{
        grid-column: 1/3;
    }   
    
    .luxury_form_box:after {
        grid-column: 1/3;
    }    
}


/* PC */
@media screen and (min-width: 65rem) {

.swiper-slide a div img {
    width: 20%;
    max-width: 190px;
}    
    
.swiper-slide a div h2 {
    left: 3rem;
    bottom: 3rem;
}    

.swiper-slide a div h2 span {
    font-size: 1rem;
}    

.luxury_description {
    padding: 8rem 0;
}    

.luxury_description p {
    font-size: 1.25rem;
}    
    
.luxury_brandlist,
.luxury_product,
.luxury_form{
    padding: 10rem 0;
}
    
.luxury_content_title {
    padding: 0 0 5rem;
}  
    
.luxury_content_title h2 {
    font-size: 2rem;
    padding: 0 1rem;
}

.luxury_content_title h2 span{
    font-size: 1rem;
}
    
.luxury_brandlist_box {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}    

.brand_list_logo {
    height: 100%;
    max-height: 20%;
}    
    
    
.tab {
    padding: 0;
}    

    
.luxury_product_box {
    display: grid;
    grid-template-columns: 15% 85%;
    padding: 0 1rem;
}  
    
.luxury_brand_product_slide_box {
    overflow: inherit;
}
  
    
.luxury_brand_product_slide .fr3-productListStatic__responsive_2 {
    grid-template-columns: repeat(5,1fr) !important;
    }
    
.luxury_form > p {
    margin-bottom: 5rem;
}
    
.luxury_form_box {
    width: 960px;
    grid-row-gap: 3rem;
}    
    
.form_attention p {
    font-size: 0.875rem;
    line-height: 2.5;
} 
    
.luxury_form_box:after {
    margin: 6rem auto 8rem;
}    
    
.luxury_content_title h3 {
    font-size: 1.5rem;
}    
    
.tel_contact h3 {
    font-size: 1.5rem;
    margin-bottom:2rem;
}
    
.tel_contact h3 span {
    font-size: 1.125rem;
}    

    
.tel_contact > div span {
    display: inline-block;
    margin: 0 1rem;
}    
    
.tel_contact > div {
    margin-bottom: 3rem;
}    
    
    
.tel_contact a {
    font-size: 2rem;
    display: inline-block;
    border: 1px solid #FFF;
    border-radius: 0.5rem;
    padding: 0 6rem;
    line-height: 3;
}    
    
    
}


/* form記入後ページ */
.form_end {
    display: grid;
    width: 100%;
    height: 90vh !important;
    align-items: center;
    text-align: center;
}

.form_end_box p {
    margin-bottom: 4rem;
}

















