#Wrap:has(#secondary) #tblLayout tbody{
    width: 100%;
}

#Wrap:has(#secondary) #tblLayout tr{
    width: 100%;
}

/* #dvProductDetailArea > div{
    display: flex;
    gap: 50px;
} */

#dvProductDetailArea #detailImage {
    width: 100%;
    float: unset;
}

#dvProductDetailArea h2{
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 20px;
}

#dvProductDetailArea h3{
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
}

#primary{
    width: calc(1200px - 273px);
    padding-left: 0;
}

.detail__right{
    width: 50%;
}

#dvProductDetailArea .wrapProductPrice p{
    font-size: 18px;
    font-weight: 500;
    line-height: 1.3;
    display: flex;
    align-items: end;
    gap: 5px;
}

#detailOne .productPrice span{
    font-size: 20px;
    font-weight: 500;
}

#dvProductDetailArea .wrapProductPrice p strike{
    font-weight: 500;
}

#detailOne .productPrice span.product__tax{
    font-size: 14px;
}

#dvProductDetailArea .wrapProductPrice p:nth-of-type(n + 2){
    margin-top: 10px;
}

#detailOne .productPrice span.product__tax span{
    font-size: 13px;
}

.product__information{
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: 15px;
}

.productStock{
    font-size: 15px;
}

.product__favorite{
    margin-top: 15px;
    text-align: right;
}

.product__favorite a{
    display: inline-block;
    width: 100%;
    max-width: 270px;
    font-size: 14px;
    border: 1px solid #2D58B8;
    border-radius: 5px;
    padding: 10px 0;
    text-align: center;
    font-weight: 500;
    border-radius: 50px;
    color: #2D58B8;
    transition: all 0.3s ease;
}

.product__favorite a:hover{
    background-color: #2D58B8;
    color: #fff;
}

#dvProductDetailArea #dvProductSubInfo{
    text-align: right;
    display: flex;
    justify-content: right;
}

.productAmount{
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #333;
    border-radius: 5px;
    padding: 10px 20px;
    text-align: center;
    font-weight: 500;
    border-radius: 50px;
    color: #333;
    line-height: 24px;
    font-size: 14px;
    padding-right: 10px;
}

.productAmount input{
    border: 0;
    font-size: 14px;
}

.product__card__infro{
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: 10px;
    margin-top: 20px;
}

.productCart{
    margin: 0;
}

.productCart .btn{
    background: #2D58B8!important;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    border-radius: 50px;
    padding: 10px 20px;
    text-align: center;
    display: flex;
    align-items: center;
    gap: 10px;
}

.addCart p{
    padding: 0;
}

.addCart .btnCart:nth-of-type(n + 2){
    margin-top: 10px;
}

#dvProductReviewButtonControls{
display: none;
}

.selectValiation select{
max-width: 100%;
width: 80%;
padding: 10px;
border-radius: 5px;
}

/* optionのvalue有無によるスタイル */
.selectValiation select option.has-value {
color: #333;
background-color: #fff;
}

.selectValiation select option.no-value {
color: #999;
background-color: #f5f5f5;
}

.selectValiation select option.selected {
background-color: #2D58B8;
color: #fff;
}

.product__option span{
display: inline-block;
font-size: 14px;
}

.product__option select{
margin-top: 10px;
max-width: 100%;
width: 80%;
padding: 10px;
border-radius: 5px;
}

.product__option .field-boxes{
display: flex;
gap: 10px;
align-items: center;
margin-top: 10px;
}

.product__option .field-boxes label{
font-size: 14px;
}

.product__option .field-boxes input{
margin-right: 10px;
}

#divMultiVariation{
display: none;
}

.productName a{
font-weight: 500;
font-size: 14px;
line-height: 24px;
}

#dvCrossSell .productInfoList ul li{
line-height: normal;
}


#dvUpSell .productInfoList ul li p{
font-weight: 400;
font-size: 20px;
line-height: 24px;
margin-top: 6px;
}

#dvUpSell .productInfoList ul li small{
font-size: 12px;
}

#Wrap:has(#secondary) #tblLayout td{
min-width: 250px;
}
#Wrap:has(#secondary) #tblLayout tr{
display: flex!important;
}
#dvProductDetailArea {
display: flex;
gap: 30px;
}   
#dvProductDetailArea > div {
width: 50%;
}

#dvProductDetailArea #detailOne{
width: 100%;
}

#dvProductDescription {
clear: both;
width: calc(1200px - 273px);
margin: 10px 0 30px 0;
/* padding-left: 20px; */
margin-top: 30px;
}
#Wrap:has(#secondary) #tblLayout td:nth-child(2){
width: calc(1200px - 273px);
min-width: auto;
padding-left: 20px;

}

form{
overflow-y: clip;
}

p.productDescription__title{
font-size: 15px;
line-height: 1.5;
font-weight: 500;
}

p.productDescription__detailText{
font-size: 13px;
line-height: 1.3;
font-weight: 500;
}

.productDescription__detail{
margin-top: 20px;
}

#Wrap:has(#secondary) #tblLayout td:nth-child(3){
display: none;
}

@media (max-width: 1300px) {
#Wrap:has(#secondary) #tblLayout td:nth-child(1){
display: none;
}
#Wrap:has(#secondary) #tblLayout td:nth-child(2){
margin: 0 auto;
padding-left: 0;
width: 100%;
}
#primary{
width: 100%;
}
#dvProductDetailArea > div{
width: 100%;
}
#dvProductDetailArea{
flex-direction: column;
}
#dvProductDescription{
width: 100%;
}
}

.slider-nav .slick-arrow{
display: none !important;
}

.slider-nav .slick-next{
display: none !important;
}

.slider-for .slick-prev{
left: 10px;
z-index: 1;
width: 50px;
height: 50px;
border-radius: 50%;
}

.slider-for .slick-prev::before{
content: "";
display: block;
position: absolute;
top: 50%;
left: 50%;
width: 9px;
height: 9px;
border-top: 2px solid #1b1b1b;
border-right: 2px solid #1b1b1b;
transform: translate(-50%, -50%) rotate(-135deg);
transform-origin: center;
transition: 0.15s;
}

.slider-for .slick-next{
right: 10px;
z-index: 1;
width: 50px;
height: 50px;
border-radius: 50%;

}

.slider-for .slick-next::before{
content: "";
display: block;
position: absolute;
top: 50%;
left: 50%;
width: 9px;
height: 9px;
border-top: 2px solid #1b1b1b;
border-right: 2px solid #1b1b1b;
transform: translate(-50%, -50%) rotate(45deg);
transform-origin: center;
transition: 0.15s;
}

.productAmount button{
background: transparent;
border: 0;
}

.productAmount input{
position: relative;
z-index: -1;
}

.productAmount__button__minus{
position: relative;
width: 20px;
height: 20px;
cursor: pointer;
}

.productAmount__button__minus::before{
position: absolute;
content: "";
width: 10px;
height: 1px;
background: #333;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

.productAmount__button__plus{
position: relative;
position: relative;
width: 20px;
height: 20px;
cursor: pointer;
}

.productAmount__button__plus::before{
position: absolute;
content: "";
width: 10px;
height: 1px;
background: #333;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

.productAmount__button__plus::after{
position: absolute;
content: "";
width: 1px;
height: 10px;
background: #333;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

.selectValiation select{
margin-top: 30px;
}

@media (max-width: 1300px) {
    #Wrap:has(#secondary) #tblLayout td:nth-child(2){
        max-width: 765px;
    }

    .module div.c-inner{
        padding: 0;
    }

    #dvProductDescription{
        padding: 0 20px;
    }

    #dvProductDescription{
        width: calc(100% - 40px);
    }

    #dvCrossSell{
        width: calc(100% - 40px);
        margin: auto;
    }

    section.c-item.c-sale.c-item-slider{
        padding: 0 20px;
    }

    section.c-item.c-ranking.c-item-slider{
        padding: 0 20px;
    }

    section.c-item.c-ranking.c-item-slider{
        padding: 0 20px!important;
    }
    section.c-item.c-check{
        padding: 0 20px;
    }
    .productCart .btn{
        font-size: 13px;
    }
}

.module li.c-item__unit{
    width: calc(25% - 30px * 3 / 4);
    
}

#dvCrossSell .productInfoList ul li p{
    font-weight: 400;
    font-size: 20px;
    line-height: 24px;
    margin-top: 6px;
}

.module .c-ranking{
    background: transparent!important;
    padding: 0!important;
}

.module .c-item-slider .slick-dots li button:before{
    background: #F2F2F2!important;
}

.module .c-item-slider .slick-dots li.slick-active button:before{
    background: #2D58B8!important;
}

#detailImage .slider-wrapper{
    overflow: hidden;
}



.product__option__detail span{
    font-size: 14px;
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
}

.product__option__detail select{
    font-size: 14px;
    padding: 10px 20px;

}

.field-boxes{
    margin-top: 15px;
}

.product__option__detail label{
    font-size: 14px;
}


.field-boxes{
    gap: 10px;
}

.product__option__detail span:empty{
    margin: 0;
}

.module .c-item-slider .slick-prev:before{
    left: 0!important;
}
.module .c-item-slider .slick-next:before{
    right: 0!important;
}

@media (max-width: 768px) {
    .module ul.c-item__list{
        gap: 15px;
    }
    
    .module li.c-item__unit{
        width: calc(20% - 15px * 3 / 4);
        margin-right: 0!important;
    }
    .module .c-check .c-item__unit:nth-of-type(2){
        margin-left: 0!important;
    }
    .module li.c-item__unit{
        width: calc(50% - 7.5px);

    }
}


.error{
    font-size: 15px;
    line-height: 1.5;

}