/* カスタマイズ用CSS */
/*==================================
    #common
==================================*/
img {
	width: auto\9;
	height: auto;
	max-width: 100%;
	vertical-align: middle;
	border: 0;
	-ms-interpolation-mode: bicubic;
}
img:hover {
    opacity: 0.9;
}
.ec-totalBox {
    position: sticky;
    top: 0;
}
.is-sp {
    display: none;
}
/*==================================
    #header
==================================*/
.ec-headerNewsRole {
    height: 30px;
    color: #fff;
    line-height: 30px;
    background: #2EB6AA;
}
    .ec-headerNewsRole .ec-headerNewsRole__newsTitle {
        color: #fff;
        font-size: 12px;
        text-align: center;
    }
.ec-headerNaviRole {
    padding-bottom: 0;
}
.ec-headerRole .ec-headerRole__title {
    width: 280px;
    margin: 0 auto;
    margin-bottom: 20px;
}
.ec-categoryNaviRole {
    margin-bottom: 40px;
}
.ec-itemNav {
    background: #2EB6AA;
}
.ec-itemNav__nav {
    padding: 10px 0;
}
.ec-itemNav__nav li a {
    padding: 8px 32px;
    color: #fff;
    border-right: 1px solid #fff;
    background: #2EB6AA !important;
}
.ec-itemNav__nav li a:hover {
    background: #26998F !important;
}
.ec-itemNav__nav li:first-child a {
    border-left: 1px solid #fff;
}
.ec-itemNav__nav li ul li a {
    color: #fff;
    background: #2EB6AA !important;
}
/* .ec-itemNav__nav li ul li ul li a {
    background: #157b99;
} */
.ec-itemNav__nav li:hover ul li a {
    border: none;
    background: #2EB6AA !important;
}
.ec-itemNav__nav li ul li a:hover {
    background: #26998F !important;
}
/*==================================
    #main
==================================*/
.product-detail-stock-alert-label {
    color: #DE5D50;
    font-weight: 600;
}
.category-list-block {
    display: grid;
    grid-template-columns: repeat(2, minmax(150px, 1fr));
    gap: 30px;
}
.ec-eyecatchRole {
    margin-top: 60px;
}
/*** ランキング ***/
.ec-newItemRole .ec-newItemRole__listItemTitle {
    font-size: 16px;
}
#top_ranking .ec-newItemRole .ec-newItemRole__listItem a {
    display: block;
}
#top_ranking .ec-newItemRole__listItem {
    position: relative;
}
#top_ranking .ec-newItemRole__listItem .ranking-number {
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translate(-50%, -50%);
}
#top_ranking .ec-newItemRole__listItem .ranking-number img {
    width: 58px;
}
/*** 商品一覧 ***/
.ec-shelfRole .ec-shelfGrid__item .product-detail-name {
    margin-bottom: 10px;
    font-weight: bold;
}
#top_ranking .price02-default,
.ec-shelfRole .price02-default {
    display: flex;
    justify-content: start;
}
#top_ranking .price02-default .price02-default-label,
.ec-shelfRole .price02-default .price02-default-label {
    font-size: 12px;
}
#top_ranking .price02-default .price-standard,
.ec-shelfRole .price02-default .price-standard {
    width: 50%;
}
#top_ranking .price02-default .price02-default-price,
.ec-shelfRole .price02-default .price02-default-price {
    font-weight: bold;
}
#top_ranking .price02-default > div > p,
.ec-shelfRole .price02-default > div > p {
    margin-bottom: 0;
    color: #dd0000;
    font-size: 12px;
}
#top_ranking .price02-default .customer_rank_price_default,
.ec-shelfRole .price02-default .customer_rank_price_default {
    color: #dd0000;
    font-size: 16px;
    font-weight: bold;
}
#top_ranking .price02-default,
#page_product_list .price02-default {
    margin-top: 15px;
    margin-bottom: 10px;
}
/*** 商品詳細 ***/
.ec-productRole .ec-productRole__priceRegular {
    padding: 0;
}
.ec-productRole .ec-productRole__price {
    display: flex;
    align-items: center;
    margin: 10px 0;
    padding: 0;
}
.ec-productRole .ec-productRole__price .member-label {
    font-size: 16px;
}
.ec-productRole__priceRegular .del {
    color: #f00;
    text-decoration : line-through ;
}
.ec-productRole__priceRegular .del span {
    color: #525263;
}
/*==================================
    #footer
==================================*/
.ec-footerRole {
    border-top: none;
    background: #0057AA;
}
.footer-contents-block {
    display: flex;
}
.footer-contents-block .footer-contents-left .calender-block-title {
    margin-bottom: 16px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}
.footer-contents-block .footer-contents-right {
    padding-left: 20px;
}
.ec-calendar__month:last-child {
    margin-left: 10px;
}
.ec-calendar .ec-calendar__today {
    border: 2px solid #dd0000;
    background: #fff;
    z-index: initial;
}
.ec-calendar .ec-calendar__title {
    border-bottom: 1px solid #ddd;
    background: #f8f8f8;
}
.ec-calendar__month th, .ec-calendar__month td {
    font-size: 12px;
}
.ec-calendar .ec-calendar__today::before {
    border-radius: 0;
    background: #fff;
}
.ec-calendar .ec-calendar__holiday {
    background: #FFCDD2;
}
.calender-block-info {
    display: flex;
    margin-top: 12px;
    color: #fff;
}
.calender-block-info .calendar-holiday-shape {
    display: block;
    width: 18px;
    height: 18px;
    background: #FFCDD2;
}
.footer-contents-block .footer-contents-right {
    flex: 1;
}
.ec-footerTitle .ec-footerTitle__logo {
    max-width: 320px;
    margin: 0 auto;
    margin-bottom: 20px;
}
.footer-logo-info {
    margin-bottom: 40px;
    color: #fff;
    font-size: 14px;
    text-align: center;
}
.footer-line-btn {
    max-width: 320px;
    margin: 0 auto;
    margin-bottom: 60px;
}
.ec-blockTopBtn {
    width: initial;
    height: initial;
    background: transparent;
    opacity: 1;
}
.ec-blockTopBtn img {
    width: 60px;
}

/*=========================================
    #media_query
=========================================*/
@media all and (max-width: 992px) {
    .is-pc {
        display: none !important;
    }
    .is-sp {
        display: block !important;
    }
    .ec-headerNewsRole {
        padding: 12px 0;
        height: auto;
        line-height: 1.5;
    }
    .ec-totalBox {
        position: initial;
    }
    .ec-footerTitle .ec-footerTitle__logo {
        max-width: 240px;
    }
    .footer-line-btn {
        max-width: 280px;
    }
}
@media all and (max-width: 768px) {
    .ec-sliderRole {
        padding-left: 0;
        padding-right: 0;
    }
    .ec-drawerRole {
        background: #1B99BF;
    }
    .ec-drawerRole .ec-headerLinkArea {
        background: #1B99BF;
    }
    .ec-itemNav__nav {
        padding: 0;
    }
    .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {
        color: #fff;
        border: none;
        border-bottom: 1px solid #ccc;
    }
    .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li a {
        padding: 8px 32px;
        padding-left: 48px;
    }
    .ec-headerRole .ec-headerRole__title {
        max-width: 220px;
    }
    #top_ranking .ec-newItemRole .ec-newItemRole__listItem a {
        margin-bottom: 60px;
    }
    .ec-eyecatchRole .ec-eyecatchRole__image {
        order: 2;
    }
    .category-list-block {
        display: gap;
        grid-template-columns: repeat(1, minmax(150px, 1fr));
        gap: 20px;
    }
    .ec-productRole .ec-productRole__price {
        margin: 20px 0;
        font-size: 20px;
    }
    .footer-contents-block {
        display: block;
        padding-top: 40px;
    }
    .footer-contents-block .footer-contents-right {
        padding-left: 0;
    }
    .ec-calendar {
        padding: 0 20px;
    }
    .ec-calendar__month {
        margin-top: 0;
    }
    .ec-calendar__month:last-child {
        margin-top: 10px;
        margin-left: 0;
    }
    .calender-block-info {
        margin-left: 20px;
    }
    .ec-footerNavi .ec-footerNavi__link a {
        border-bottom: 1px solid #fff;
    }
    .ec-footerTitle .ec-footerTitle__logo {
        max-width: 220px;
    }
}
@media all and (max-width: 576px) {
    
}