@charset "utf-8";


/* --------------------------
基本設定
----------------------------- */
.container {
    width: 100%;
}

.content-item {
    width: 100%;
}


/* --------------------------
スライドショー
----------------------------- */

/* スライド全体 */
.slideshow-container {
    position: relative;

    max-width: 900px;
    margin: 2rem auto 0;

}

/* スライドの切り替わりアニメーション */
.slide {
    display: none;

    transition: all 1s;
    animation: fadein 2s ease-out;
}

@keyframes fadein {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

/* 画像サイズ */
.slide img {
    width: 100%;
    max-height: 530px;

    object-fit: cover;
    object-position: center center;
}

/* 切り替えボタン */
.prev,
.next {
    position: absolute;
    top: 45%;
    
    display: flex;
    justify-content: center;
    align-items: center;

    width: 50px;
    height: 50px;

    color: #fff;
    background: #bbb;
    border: none;
    border-radius: 50%;

    font-size: 1.1rem;

    cursor: pointer;
    user-select: none;
}
.prev {
    right: calc(100% + 5px);
}

.next {
    left: calc(100% + 5px);
}

/* インジケーター */
.dot-container {
    text-align: center;
    padding: 10px;
}

.dot {
    display: inline-block;

    height: 15px;
    width: 15px;

    margin: 0 2px;

    background: #bbb;
    border-radius: 50%;

    transition: background .5s ease;

    cursor: pointer;
}

.dot:hover,
.dot.active {
    background: #717171;
}


/* --------------------------
ページリンク
----------------------------- */
.related-area {
    display: flex;
    flex-direction: column;
    gap: 3rem;
    width: 80%;
}

.related-area dl {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;

    border-bottom: 3px solid #222;
}

.related-area dt {
    font-size: 1.5rem;
    vertical-align: bottom;
    font-family: "Avenir Next", "Segoe UI", "Calibri", sans-serif;

}
.related-area dd {
    padding: 0 0 .25rem;
}

.related-area a:hover dl{
    color: #DC8F0D;
    border-bottom: 3px solid #DC8F0D;
    transition: all .2s;
}

/* --------------------------
コレクション基本設定
----------------------------- */

.content {
    padding: 0 2rem;
}

.cl-wrapper {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}
.cl-wrap {
    display: grid;
    grid-template-columns: repeat( 2, 1fr);
    column-gap: 2rem;
    row-gap: 3rem;
}

.content-item {
    margin: 0 0 5rem;
}

.cl-title {
    text-align: center;
    font-family: "caraque-melted", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 4rem;
    letter-spacing: 2px;

    margin: 0 0 1rem;
}


.cl-sub-title {
    text-align: center;

    margin: 0 0 3rem;
}



/* --------------------------
コレクションアイテム
----------------------------- */
/*---- 親要素の指定：parent--------------------------------- */
.item-box .box-parent {
    position: relative;
    border-radius: 25px;
}

/*---- バックの設定：back--------------------------------- */
.item-box .box-back {
    top: 10px;
    left: 10px;

    background: #bbb;
}

/*---- ベースの設定：base--------------------------------- */
.item-box .box-base {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;

    height: 280px;

    padding: 1rem 5% 1rem;
}


/*---- 穴--------------------------------- */
.item-box .box-base:before {
    position: absolute;
    top: 20px;
    left: 50%;

    display: block;
    content: '';

    width: 110px;
    height: 25px;

    background: #bbb;
    border: 3px solid #222;
    border-radius: 50px;

    transform: translateX(-50%);
}
.item-box .box-base::after {
    position: absolute;
    top: 27px;
    left: calc(50% + 5px);

    display: block;
    content: '';

    width: 100px;
    height: 18px;

    background: #fff;
    border: 3px solid #222;
    border-radius: 50px;

    transform: translateX(-50%);
}

/* <!-- 棒のスタイル --> */
.item-box .key {
    content: '';
    display: block;

    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);

    width: 23px;
    height: 55px;

    background: #dddddd;
    border: 3px solid #222;
    border-radius: 10px 10px 5px 5px;
    
    z-index: 10;
}
/*---- テキストエリア--------------------------------- */
.item-box .text-area {
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    width: 50%;

    padding: 2rem 0 0 ;
    margin: 0rem 0 0;
}

.item-box h4 {
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 1rem;
}
.feat {
    font-size: .9rem;
}

.artist {
    font-size: .9rem;
    margin: 0 0 2rem;
    line-height: 1.5;
}

.price {
    position: absolute;
    right: 2rem;
    bottom: 1.5rem;

    width: 100%;
    
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
}

.price p{
    background: #D4849A;
    color: #fff;
    border-radius: 50px;

    padding: 5px 1.2rem;

    font-size: .9rem;
    
}

.item-box img {
    width: 46%;
    max-width: 160px;

    margin: 2rem 0 0;
}


/*---- ホバー/クリックアクション--------------------------------- */

.box-parent {
    transform-origin: top center;
}
.box-parent:hover,
.box-parent:active {
    animation: slidehop .5s ease-in;
}

@keyframes slidehop {
    0%,100% {
        transform: rotate(0);
    }
    25% {
        transform: rotate(2deg);
    }
    50% {
        transform: rotate(1deg);
    }
    75% {
        transform: rotate(-1deg);
    }
}




/* --------------------------
レスポンシブ　1000px
----------------------------- */
@media(max-width:1000px) {

    /*---- スライドショー--------------------------------- */
    .main-img {
        margin: 0;
        width: 100%;
        max-width: none;
    }

    .slideshow-container {
        position: relative;
        width: 100%;
        max-width: none;
    }

    /* 画像サイズ */
    .slide {
        width: 100%;
    }
    .slide img{
        width: 100%;
    }

    /* 切り替えボタン */

    .prev,
    .next {
        top:105%;
        width: 30px;
        height: 30px;

        font-size: 1rem;
    }
    .prev{
        left: 30%;
        right: auto;
    }
    .next{
        left: auto;
        right: 30%;
    }
    /* インジケーター */
    .dot-container {
        position: absolute;
        top: 105%;
        left: 50%;
        transform: translateX(-50%);
    }

    /*---- ページリンク--------------------------------- */
    .related-area {
        width: 100%;
    }

    /* --------------------------
    コレクション基本設定
    ----------------------------- */
    .content-item {
        max-width: 800px;
    }

    /* 文字サイズ調整 */
    .item-box h4 {
        font-size: .9rem;
    }

    
}




/* --------------------------
レスポンシブ　600px
----------------------------- */
@media(max-width:600px) {
    /*---- ページタイトル--------------------------------- */
    .page-title h2 {
        font-size: 3rem;
    }


    /*---- ページリンク--------------------------------- */

    .related-area dt {
        font-size: 1.1rem;
    }

    .related-area dd {
        font-size: .8rem;
    }
    /*---- スライドショー--------------------------------- */
    .main-img {
        height: 400px;
    }

    .slideshow-container {
        margin: 0;
        height: 100%;
    }
    .slide img{
        width: 100%;
        height: 400px;
        max-height: none;
        object-fit: cover;
    }
    /* インジケーター・切り替えボタン */
    .prev,
    .next,
    .dot-container {
        top:calc(100% + 1rem);
    }

    .prev {
        left: 10%;
    }
    .next {
        right: 10%;
    }

    .dot {
        margin: 0 4px;
        margin: 0;
    }

    /*---- コンテンツ基本設定--------------------------------- */
    .content {
        padding: 0;
    }

    .cl-wrap {
        display: flex;
        grid-template-columns: none;
        gap: 1.5rem;

        overflow: scroll;
        padding: 0 2rem;
    }
    .cl-title {
        font-size: 3rem;
        padding: 0 2rem;
    }
    .cl-sub-title {
        padding: 0 2rem;
        line-height: 1.5;
    }

    /*---- コンテンツアイテム--------------------------------- */

    .item-box {
        flex-shrink: 0;
        width: 250px;
        padding: 2rem 0;

    }

    .item-box .box-base  {
        flex-direction: column-reverse;
        justify-content: flex-end;
        gap: 1rem;
        height: 380px;

        margin: auto;
        padding: 4rem 0 0; 
    }

    /* テキストエリア */
    .item-box .text-area {
        width: 90%;
        padding: 0 1rem;
    }

    .item-box h4 {
        margin: 0 0 .5rem;
    }

    .price {
        right: 2rem;
        bottom: 1rem;
    }
    /* 画像エリア */
    .item-box img {
        width: 75%;
        max-width: none;

        margin: 0;
    }



    /* スクロールバー非表示 */
    /* Webkit系ブラウザ（Chrome、Safari、Edgeなど）用 */
    .cl-wrap::-webkit-scrollbar {
        width: 0px;  /* スクロールバーの幅を0に設定 */
        background: transparent;  /* スクロールバーの背景を透明に設定 */
    }

    .cl-wrap::-webkit-scrollbar-thumb {
        background: transparent;  /* スクロールバーのつまみ（ドラッグ部分）を透明に設定 */
    }

    /* Firefox用 */
    .cl-wrap{
        scrollbar-width: none;  /* スクロールバーを非表示に設定 */
    }



}