#selectmenu{
    max-width: 768px;
    margin: 0 auto;
    position: sticky;
    top: 0;
    z-index: 999;
    background: rgb(256, 256, 256,0.5);
    padding: 10px 0;
}

.select {
    position: relative;
    display: inline-block;
    margin: 10px 5px;
}
.select100{
    width: calc(100% - 15px);
}
.select50{
    width: calc(50% - 15px);
}

.select::before,
.select::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.select::before {
    display: inline-block;
    right: 0;
    width: 2.8em;
    height: 2.8em;
    border-radius: 0 25px 25px 0;
    background-color: #ff0001;
}

.select::after {
    position: absolute;
    top: 50%;
    right: 1.4em;
    transform: translate(50%, -50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
}

.select select {
    appearance: none;
    /* min-width: 230px; */
    width: 100%;
    height: 2.5em;
    padding: .5em 3.6em .4em 1.5em;
    border: none;
    border-radius: 25px;
    background-color: #f5f5f5;
    color: #333;
    font-size: 1.1em;
    line-height: 1.2em;
    font-weight: 700;
    cursor: pointer;
    outline: 1px solid #000;
    letter-spacing: 2px;
}

.select select:focus {
    /* outline: 2px solid #ff0001; */
    /* outline: 0px solid #ff0001; */
}
.select select option{
    /* font-size: 100px; */
}

.items-container{

}
.three_flex{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    background: #d9d9d9;
    padding: 5px 0px 5px 5px;
    gap: 5px;
    margin: 0 auto;
    align-items: stretch;
}
.three_flex .item{
    position: relative;
    flex: 0 1 calc(33% - 7px);
    height: auto;
    display: block;
    background: #fff;
    padding: 2px;
    /* margin: 2.5px 0; */
}
.three_flex::after{
    content: "";
    width: 33%;
    margin-right: auto;
}
.three_flex .item .none_item{
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4) ;
    position: absolute;
    top: 0;
    left: 0;

    text-align: center;
    color: #fff;
    font-size: 50px;
}
.three_flex .item .none_item::after{
    content: "";
    background: url(../../common/images/pict/soldout.png) no-repeat;
    width: 90%;
    height: 90%;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    aspect-ratio: 1 / 1;
    background-position: center;
}
.display_item{
    display: flex;
    flex-direction: column;
    height: 100%;
}
.three_flex .item img{
    width: 100%;
    height: auto;
    padding: 0;
    flex-grow: 1;
    margin-bottom: auto;
}
.three_flex .item img::after{
    content: "";
    flex-grow: 1;
}
.three_flex .item p{
    margin: 0;
    padding: 0 2.5px;
}
.item__hinmei{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
    /* flex-grow: 1;
    margin-top: auto; */
    margin-bottom: 3px !important;
}
.item__baika{
    text-align: right;
    color: #B60005;
    text-align: right;
    font-family: "Noto Sans JP";
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.item__baika span{
    font-family: Lato;
    font-size: 20px;
    font-weight: 800;
}

/* 個組たたむ */
/* 1行 = 3アイテム想定なら、12番目以降を非表示 */
.items-container .item:nth-child(n+10) {
  display: none;
}

/* 展開時に表示 */
.items-container.expanded .item {
  display: block;
}

#to_category{
    position:sticky;
    bottom: 20px;   /* 画面下からの余白 */
    left: 50%;

    transform: translateX(-50%);
    padding: 10px 10px;
    background: #005AAC;
    color: #fff;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    z-index: 999;

    display: block;
    margin: 10px auto 0;
    width: 150px;
    text-align: center;
    font-weight: 600;
}
#to_category::before,
#to_category::after{
    content: "^";
    position: absolute;
    font-size: 28px;
    top: 6px;
}
#to_category::before{
    left: 15px;
}
#to_category::after{
    right: 15px;
}

#toggleItems {
    position:relative;
    padding: 10px 30px;
    background: #333;
    color: #fff;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    z-index: 1000;

    display: block;
    margin: 10px auto 0;
    width: 130px;
}
.expanded #toggleItems {
    position:sticky;
    bottom: 20px;   /* 画面下からの余白 */
    left: 50%;
    transform: translateX(-50%);
}


/* 個組詳細 */
.detail{
    max-width: 320px;
    height: 90%;
    margin: 0 auto;
}
ul{
    list-style: none;
    padding: 0;
    margin: 0;
}
.detail ul li{
    display: inline-block;
}
.detail p{
    padding: 0;
    margin: 0;
}
.n_text{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.img__set{
    padding: 15px 0;
}
.img__set__sub{
    max-width: 250px;
    margin: 0 auto;
}
.detail__comment{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.shape__set{
    color: #fff;
}
.shape__set li{
    padding: 0 3px 1px 5px;
    margin: 2.5px 0;

    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    line-height: 22px;
    display: inline-block;
}
.shape00{
    background: #DF5357;
}
.shape01{
    background: #7B7C7A;
}
.shape02{
    background: #834774;
}
.shape03{
    background: #2471AE;
}
.shape04{
    background: #5B4121;
}
.shape05{
    background: #A2791E;
}
.shape06{
    background: #DF5357;
}
.shape07{
    background: #A76095;
}
.shape08{
    background: #002569;
}
.shapeEnd{
    background: #666666;
    margin-right: auto;
    padding: 0 3px 1px 5px;
    margin: 2.5px 0;

    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    line-height: 22px;
    display: inline-block;
}

.detail__hinmei{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.pict__set{
    padding: 15px 0 !important;
}
.pict{
    /* width: 40px; */
    width: auto;
    height: 40px;
    /* padding: 2.5px; */
    padding-bottom: 5px;
}
.pict img{
    /* width: 40px; */
    width: auto;
    height: 40px;
}

.detail__baika__area{
    position: relative;
    width: 100%;
    display: inline-block;
    margin-left: auto;
    text-align: right;
    padding-bottom: 15px;
}
.detail__baika__set,
.detail__waribiki{
    display: inline-block;
}
.detail__baika__set{
    padding: 0 0px 0px 5px;
}

.detail__baika__hontai{
    color: #B60005;
    text-align: right;
    font-family: "Noto Sans JP";
    /* font-size: 15px; */
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    vertical-align: bottom;
}
.detail__baika__hontai span{
    font-size: 40px;
    font-weight: 800;
    line-height: 40px;
}
.detail__baika__hontai .normal{
    font-family: Lato;
}
.detail__baika__hontai .unusual{

}
.spbaika{
    background: #B60005;
    font-size: 14px !important;
    color: #FFFF00;
    display: inline-block;
    line-height: 16px !important;
    padding: 2px;
    margin-right: 3px;
    vertical-align: bottom;
}
.detail__baika__zeikomi{
    color: #B60005;
    text-align: right;
    font-family: "Noto Sans JP";
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.detail__waribiki{
    position: relative;
    width: 50px;
    /* width: 60px; */
    vertical-align: bottom;
}
.detail__waribiki img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}
.detail__waribiki__text{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);

    color: #FFF;
    text-align: center;
    font-family: Lato;
    font-size: 11px;
    line-height: 13px;
    /* font-size: 12px;
    line-height: 15px; */
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.detail__waribiki__text span{
    font-size: 23px;
    line-height: 18px;
    /* font-size: 30px;
    line-height: 25px; */
}
.detail__waribiki_zubari{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);

    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 14px;
    /* font-size: 16px; */
    font-style: normal;
    font-weight: 900;
    line-height: 23px;
    width: 50px;
}

/* モーダルを開くボタンのスタイル */
.open-modal {
    position: absolute; /* ボタンをページ上に絶対位置で配置 */
    top: 50%; /* ボタンを縦方向に中央に配置 */
    left: 50%; /* ボタンを横方向に中央に配置 */
    width: 250px; /* ボタンの幅 */
    height: 60px; /* ボタンの高さ */
    font-size: 18px; /* ボタン内のテキストのフォントサイズ */
    font-weight: bold; /* テキストのフォントを太字に設定 */
    color: #fff; /* ボタンのテキストカラーを白に設定 */
    background: #000; /* ボタンの背景色を黒に設定 */
    border: #000; /* ボタンの境界線を黒に設定 */
    border-radius: 14px; /* ボタンの角を丸くするための半径 */
    cursor: pointer; /* カーソルがホバーした時にポインタが表示されるように設定 */
    transform: translate(-50%, -50%); /* 中央に位置するための補正 */
}

/* モーダルウィンドウの基本スタイル */
.modal {
    display: none; /* デフォルトでは非表示に設定 */
    position: fixed; /* モーダルがページ全体に固定されるように設定 */
    top: 0; /* ページの最上部からスタート */
    left: 0; /* ページの最左端からスタート */
    width: 100%; /* モーダルが画面全体の幅を占める */
    height: 100%; /* モーダルが画面全体の高さを占める */
    background-color: rgba(0, 0, 0, 0.4); /* 背景を半透明の黒に設定（モーダルの背後が見えるように） */
    z-index: 9999;
}

.modal-content {
    position: fixed; /* モーダル内容が画面上に固定されるように設定 */
    top: 50%; /* 縦方向の中央に配置 */
    left: 50%; /* 横方向の中央に配置 */
    transform: translate(-50%, -50%); /* 完全に中央に配置するための補正 */
    padding: 0; /* モーダル内の余白を設定 */
    max-width: 375px; /* モーダルの幅 */
    width: 100%;
    height: auto; /* モーダルの高さ */
    background-color: #fff; /* モーダルの背景色を白に設定 */
    border: 1px solid #888; /* 境界線の色を薄いグレーに設定 */
}

/* モーダルを閉じるボタン（×）のスタイル */
#closeModal {
    position: absolute; /* モーダル内で絶対位置に配置 */
    display: flex; /* ボタン内のテキストが中央に配置されるようにフレックスボックスを使用 */
    align-items: center; /* ボタン内のテキストを縦方向に中央揃え */
    justify-content: center; /* ボタン内のテキストを横方向に中央揃え */
    top: 10px; /* モーダル内容の上部から離れた位置に配置 */
    right: 10px; /* モーダル内容の右端から離れた位置に配置 */
    font-size: 15px; /* 閉じるボタンのフォントサイズ */
    line-height: 20px;
    font-weight: bold; /* 閉じるボタンのフォントを太字に設定 */
    cursor: pointer; /* ホバー時にポインタが表示されるように設定 */
    color: #FFF; /* 閉じるボタンのテキストカラーを白に設定 */
    width: 25px; /* ボタンの幅 */
    height: 25px; /* ボタンの高さ */
    /* ボタンの背景色をダークグレーに設定 */
    /* background-color: #777; */
    background-color: #fff;
    border: #fff; /* ボタンの境界線を背景と同じ色に設定 */
}

@media (max-width: 767px){
    #selectmenu{
        margin: 0 auto;
        position: initial;
        top: 0;
        padding: 10px 0;
    }

    .select {
        margin: 5px 5px;
    }
    .select50{
        width: calc(100% - 15px);
    }
    .select::before,
    .select::after {
        position: absolute;
        content: '';
        pointer-events: none;
    }

    .select::before {
        display: inline-block;
        right: 0;
        width: 2.5em;
        height: 2em;
        border-radius: 0 25px 25px 0;
        background-color: #ff0001;
    }

    .select::after {
        position: absolute;
        top: 45%;
        right: 1.4em;
        transform: translate(50%, -50%) rotate(45deg);
        width: 6px;
        height: 6px;
        border-bottom: 3px solid #fff;
        border-right: 3px solid #fff;
    }

    .select select {
        appearance: none;
        /* min-width: 230px; */
        width: 100%;
        height: 2.em;
        padding: .5em 2em .4em 1.5em;
        border: none;
        border-radius: 25px;
        background-color: #f5f5f5;
        color: #333;
        font-size: 0.8em;
        line-height: 1.5em;
        font-weight: 700;
        cursor: pointer;
        outline: 1px solid #000;
        letter-spacing: 1.5px;
    }

    /* .three_flex .item .none_item::after{
        content: "完 売";
        padding: 0px 10px 4px 10px;
        font-size: 25px;
        line-height: 45px;
        width: 50%;
    } */

    /* modal */
    .modal-content {
        max-height: 600px;
        height: 90%; /* モーダルの高さ */
        overflow-y: scroll;
        display: flex;
        align-items: center;
    }
}
