/* 
================
common
================
*/
.fs-c-productActionButton {
    margin-bottom: 40px;
}
#fs_ProductDetails .fs-c-featuredProduct {
    display: block !important;
    background-color: greenyellow;
}
#fs_ProductDetails .fs-c-slick.slick-slider a,
#fs_ProductDetails .fs-c-productPrice__main__price,
#fs_ProductDetails .fs-c-productPrice__addon {
    color: #000;
    font-weight: bold;
}
#fs_ProductDetails .fs-c-mark--coolDelivery,
#fs_ProductDetails .fs-c-productListItem__control {
    display: none;
}
#fs_ProductDetails .fs-c-slick .slick-track {
    display: flex;
}
#fs_ProductDetails .fs-c-slick .slick-slide {
    height: auto;
}
#fs_ProductDetails .fs-c-slick .slick-slide > div {
    height: 100%;
}
#fs_ProductDetails .fs-c-productListCarousel__list__item {
    display: flex !important;
    flex-direction: column;
    height: 100%;
}
#fs_ProductDetails .fs-c-productListItem__prices {
    margin-top: auto;
}
#fs_ProductDetails .fs-c-productListCarousel__list__item {
    max-width: 220px;
    min-width: 220px;
}
#fs_ProductDetails .fs-c-slick .slick-slide a {
    overflow: hidden;
}
#fs_ProductDetails .fs-c-slick .slick-slide a:hover {
    opacity: 1;
}
#fs_ProductDetails .fs-c-slick .slick-slide a:hover img {
    transform: scale(1.1);
    opacity: 1;
}
#fs_ProductDetails .fs-c-slick .slick-slide img {
    width: 220px;
    height: 220px;
    object-fit: cover;
}
#fs_ProductDetails .fs-c-productListCarousel__list__item {
    margin: 0 7px;
}
#fs_ProductDetails .fs-c-slick {
    position: relative;
}
#fs_ProductDetails .fs-c-productListCarousel__ctrl {
    min-width: 35px;
    flex-basis: 35px;
    transform: translateY(-40px);
}
#fs_ProductDetails h2.fs-c-productListItem__productName a:hover {
    text-decoration: none;
    color: #666;
}
#fs_ProductDetails .fs-c-button--carousel--next::before,
#fs_ProductDetails .fs-c-button--carousel--prev::before {
    content: "";
    background: url(../tasting/icon_arrow.svg) no-repeat center;
    width: 10px;
    height: 20px;
}
#fs_ProductDetails .fs-c-button--carousel--prev::before {
    transform: rotate(-180deg);
}
#fs_ProductDetails .fs-c-button--carousel--next {
    transform: translateX(-4px);
}
#fs_ProductDetails .fs-c-button--carousel--prev {
    transform: translateX(4px);
}
#fs_ProductDetails .fs-c-button--carousel--next:hover {
    transform: translateX(0);
}
#fs_ProductDetails .fs-c-button--carousel--prev:hover {
    transform: translateX(0);
}
#fs_ProductDetails .fs-c-featuredProduct {
    background: url(../tasting/bg_recommend.png);
    padding-bottom: 20px;
    background-size: cover;
    margin-bottom: 40px;
}
#fs_ProductDetails h2.fs-c-featuredProduct__title {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border: none;
    color: #3e3a39;
    font-weight: bold;
    padding: 44px 44px 34px;
    margin: 0;
}
#fs_ProductDetails h2.fs-c-featuredProduct__title::before,
#fs_ProductDetails h2.fs-c-featuredProduct__title::after {
    display: inline-block;
    content: "";
}
#fs_ProductDetails h2.fs-c-featuredProduct__title::before {
    width: 21px;
    height: 28px;
    background: url(../tasting/icon_recommend.svg) no-repeat center;
    background-size: contain;
    margin-right: 13px;
}
#fs_ProductDetails h2.fs-c-featuredProduct__title::after {
    width: 155px;
    height: 12px;
    margin-left: auto;
    background: url(../tasting/ttl_recommend.svg) no-repeat center;
    background-size: contain;
}
#fs_ProductDetails .fs-c-price__currencyMark,
#fs_ProductDetails .fs-c-price__value,
#fs_ProductDetails .fs-c-productPrice__addon {
    font-size: 15px;
}
@media (max-width: 600px) {
    #fs_ProductDetails .fs-c-productListCarousel__list__item {
        max-width: 132px;
        min-width: 132px;
    }
    #fs_ProductDetails .fs-c-slick .slick-slide img {
        width: 132px;
        height: 132px;
    }
    #fs_ProductDetails h2.fs-c-featuredProduct__title {
        padding: 6vw;
        font-size: 4.8vw;
    }
    #fs_ProductDetails h2.fs-c-featuredProduct__title::after {
        width: 30vw;
        height: 3vw;
    }
}

/* 
================
itemdetail
================
*/
.tabwrap {
    margin-bottom: 60px;
}
.tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    cursor: pointer;
    border-bottom: 3px solid #5f6963;
    gap: 20px;
    margin-bottom: 60px;
}
.tab {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    font-size: 16px;
    background-color: #ffeff3;
    border-bottom: 3px solid #fff;
    color: #5f6963;
    font-weight: bold;
    position: relative;
    height: 57px;
    box-sizing: border-box;
    padding-top: .25em;
}
.tab::before,
.tab::after {
    content: '';
    content: '';
    width: 0;
    height: 0;
    border: 10px solid transparent;
    top: -1px;
    position: absolute;
}
.tab::before {
    left: -1px;
    border-top-color: #fff;
    border-left-color: #fff;
}
.tab::after {
    right: -1px;
    border-top-color: #fff;
    border-right-color: #fff;
}
.tab.active {
    background-color: #5f6963;
    border-bottom: none;
    color: #fff;
}
.content {
    display: none;
    padding: 0;
    font-size: 14px;
    margin-top: -1px;
}
.content.active {
    display: block;
}
.img-detail {
    margin-bottom: 60px;
}
.btn-more-parent {
    position: relative;
}
.btn-more {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
    width: 170px;
    cursor: pointer;
}
.bnr-ranking a {
    display: block;
    position: relative;
    aspect-ratio: 385 / 172;
}
.bnr-ranking a img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.bnr-ranking a:hover,
.bnr-ranking a:hover img{
    opacity: 1;
}
.bnr-ranking a img.bnr-on {
    z-index: 1;
    opacity: 0;
}
.item-spec dl {
    display: flex;
    flex-wrap: wrap;
}
.item-spec dt,
.item-spec dd {
    font-size: 16px;
    min-height: 50px;
    border-bottom: 1px solid #dedede;
    box-sizing: border-box;
    padding: .8em 1.85em;
}
.item-spec dt {
    width: 180px;
    background-color: #ffeff3;
    font-weight: bold;
}
.item-spec dd {
    width: calc(100% - 180px);
}
.item-spec dt:last-of-type,
.item-spec dd:last-of-type {
    border: none;
}
@media (min-width: 841px) {
    .bnr-ranking a:hover img.bnr-on {
        opacity: 1;
    }
}
@media (max-width: 840px) {
    .tabs {
        margin-bottom: 6vw;
        gap: 6px;
    }
    .tab {
        font-size: 3.2vw;
        padding: 10px;
        height: 12.7vw;
    }
    .tab::before,
    .tab::after {
        border-width: 7px;
    }
    .content {
        font-size: 12px;
    }
    .img-detail {
        margin-bottom: 6vw;
    }
    .item-spec dt,
    .item-spec dd {
        font-size: 13px;
        padding: .8em;
        min-height: auto;
    }
    .item-spec dt {
        width: 9em;
    }
    .item-spec dd {
        width: calc(100% - 9em);
    }

    .btn-more {
        width: 98px;
    }
}