/* カスタマイズ用CSS */
/*******************************
 *
 * 共通
 *
 ******************************/
html {
}
a {
    text-decoration: none;
    color: #525263;
}
a:hover,
a:active,
a:focus {
    text-decoration: none;
    color: #525263;
    opacity: .7;
}
.ec-alert-warning__text a {
    color: #FFFFFF;
}
/* 内部リンク */
a.link-current:after {
    position: absolute;
    top: -1px;
    right: -15px;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 16px;
    color: #79B659 !important;
}
/* 外部リンク */
a.link-blank:after {
    position: absolute;
    top: -2px;
    right: -20px;
    content: "\f35d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 14px;
    color: #79B659 !important;
}
.pc-only {
    display: block;
}
.sp-only {
    display: none;
}

.txt-left {
    text-align: left !important;
}
.txt-middle {
    display: inline-block;
    font-size: .9em;
}
.txt-small {
    display: inline-block;
    font-size: .8em;
}
.txt-very-small {
    display: block;
    font-size: .5em;
}
.width50 {
    width: 50% !important;
}

/* リンクカラー */
.ec-orderMail .ec-orderMail__close a,
.ec-orderMail .ec-orderMail__link a,
.registration_page .ec-zipInputHelp a span,
.ec-zipInputHelp span,
.ec-link,
.product_detail .ec-productRole__category ul li a,
.product_list .ec-topicpath__item a,
.ec-navlistRole .active a,
#page_help_tradelaw .ec-borderedDefs a,
.product_list .ec-topicpath__item--active a {
    color: #79B659;
}
.ec-orderMail .ec-orderMail__close a:hover,
.ec-orderMail .ec-orderMail__close a:active,
.ec-orderMail .ec-orderMail__close a:focus,
.ec-orderMail .ec-orderMail__link a:hover,
.ec-orderMail .ec-orderMail__link a:active,
.ec-orderMail .ec-orderMail__link a:focus,
.registration_page .ec-zipInputHelp a span:hover,
.registration_page .ec-zipInputHelp a span:active,
.registration_page .ec-zipInputHelp a span:focus,
.ec-zipInputHelp span:hover,
.ec-zipInputHelp span:active,
.ec-zipInputHelp span:focus,
.ec-link:hover,
.ec-link:active,
.ec-link:focus,
.product_detail .ec-productRole__category ul li a:hover,
.product_detail .ec-productRole__category ul li a:active,
.product_detail .ec-productRole__category ul li a:focus,
.product_list .ec-topicpath__item a:hover,
.product_list .ec-topicpath__item a:active,
.product_list .ec-topicpath__item a:focus,
.ec-navlistRole .active a:hover,
.ec-navlistRole .active a:active,
.ec-navlistRole .active a:focus,
#page_help_tradelaw .ec-borderedDefs a:hover,
#page_help_tradelaw .ec-borderedDefs a:active,
#page_help_tradelaw .ec-borderedDefs a:focus,
.product_list .ec-topicpath__item--active a:hover,
.product_list .ec-topicpath__item--active a:active,
.product_list .ec-topicpath__item--active a:focus {
    color: #79B659;
    opacity: .7;
}
.ec-login,
.ec-guest {
    background: transparent;
    border: 1px solid #b3b4b4;
}
.ec-login .ec-icon img {
    opacity: .5;
}


/*******************************
 *
 * ヘッダー
 *
 ******************************/
/* ヘッダーの訴求帯ブロック */
.ec-headerNewsRole {
    background-color: #D87753;
}
/* カートアイコン */
.ec-headerNaviRole .ec-cartNavi .ec-cartNavi__div {
    background-color: #D85F67;
}
.ec-headerNaviRole .ec-cartNavi__badge {
    border: 1px solid #D85F67;
    color: #D85F67;
}
/* アイコン */
.ec-headerNaviRole .ec-headerContact img,
.ec-headerNaviRole .ec-headerMember img,
.ec-headerNaviRole .ec-headerFavorite img,
.ec-headerNaviRole .ec-headerLogin img {
    width: auto;
    height: 24px;
}


/*******************************
 *
 * フッター
 *
 ******************************/
.ec-footerRole {
    background-color: #D87753;
}


/*******************************
 *
 * TOPページ
 *
 ******************************/
.front_page .ec-contentRole .content-arrows button {
    background-color: #79B659;
}
.front_page .ec-contentRole .slick-slide {
    margin: 0 16px;
}


/*******************************
 *
 * 一覧の(税込)表示
 *
 ******************************/
.price-area {
    align-items: baseline !important;
    flex-wrap: wrap !important;
}


/*******************************
 *
 * 品切れ中表示
 *
 ******************************/
.ec-shelfGrid__item-image {
    position: relative !important;
}
.sold-out {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    font-weight: 600;
    font-size: .8em;
    opacity: .3;
    background: #000;
    text-align: center;
}
.sold-out-txt {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    font-weight: 600;
    font-size: .8em;
    background: transparent;
    text-align: center;
}


/*******************************
 *
 * 商品詳細
 *
 ******************************/
.ec-productRole__description a {
    position: relative;
    text-decoration: none;
    color: #79B659;
}


/*******************************
 *
 * カレンダー
 *
 ******************************/
.ec-calendar__month {
    margin-bottom: 30px;
}
.ec-calendar .ec-calendar__today::before {
    background: transparent;
    border: 2px solid #79B659;
    border-radius: unset;
    
}


/*******************************
 *
 * ショッピングカート
 *
 ******************************/
.ec-progress .is-complete .ec-progress__number {
    background: #D87753;
}
.ec-progress .is-complete .ec-progress__label {
    color: #D87753;
}


/*******************************
 *
 * お気に入り
 *
 ******************************/
 #page_mypage_favorite .ec-blockBtn--cancel {
     margin-bottom: 10px;
     border-color: #d0d0d0;
     background: transparent;
 }
 #page_mypage_favorite .ec-blockBtn--cancel:focus {
     color: #525263;
     opacity: 1.0;
 }
 
 
/*******************************
 *
 * ご注文手続き
 *
 ******************************/
#page_shopping .ec-select__delivery {
    display: block;
}
#page_shopping .ec-alert-warning__text a {
    color: #ffffff;
    text-decoration: none;
}
#page_shopping .ec-alert-warning__text a:active,
#page_shopping .ec-alert-warning__text a:focus,
#page_shopping .ec-alert-warning__text a:hover {
    color: #ffffff;
}
/* エラーメッセージ */
#page_shopping .ec-alert-warning, #page_gmo_mypage_card_edit .ec-alert-warning {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}
#page_shopping .coupon-message a {
    text-decoration: underline;
}

/*******************************
 *
 * ご注文内容のご確認
 *
 ******************************/
#page_shopping_confirm .ec-select__time {
    display: block;
}
.mypageFavorite .ec-navlistRole__item.active {
    color: #D87753;
    opacity: 1.0;
}

/*******************************
 *
 * ご注文完了
 *
 ******************************/
.ec-reportDescription-info {
    margin: 30px 0;
    font-size: 12px;
}


/*******************************
 *
 * 特定商取引法に基づく表記
 *
 ******************************/
#page_help_tradelaw .ec-borderedDefs {
     padding: 10px;
}
#page_help_tradelaw .ec-borderedDefs dl {
    align-items: center;
}
#page_help_tradelaw .ec-borderedDefs dd {
    line-height: 2;
    /*font-weight: bold;*/
}
#page_help_tradelaw .ec-layoutRole__mainWithColumn th,
#page_help_tradelaw .ec-layoutRole__mainWithColumn td {
    border: 1px solid #bfbfbf;
}
.payment-content {
    margin-left: 20px;
}
#page_help_tradelaw table.payment-content {
    min-width: calc(100% - 20px);
    max-width: 100%;
    width: auto;
    margin-left: 20px;
}
#page_help_tradelaw table.payment-content tr:first-child td {
    font-weight: bold;
    background: #f6f6f7;
    text-align: center;
}
#page_help_tradelaw table.payment-content td {
    text-align: right;
    display: table-cell;
    padding: 10px;
}
#page_help_tradelaw .delivery-annotation {
    margin-top: 10px;
    margin-left: 20px;
    padding: 10px;
    color: #f29795;
    font-size: 1em;
}

@media only screen and (min-width: 768px) {
    /* ヘッダー */
    .ec-layoutRole {
        overflow-x: hidden;
    }
    #page_help_tradelaw .ec-borderedDefs dt {
        padding-top: 0;
    }
}
@media only screen and (min-width: 1180px) {
    .have_curtain .ec-overlayRole {
        display: none !important;
    }
}
@media all and (min-width: 768px) and (max-width: 1180px) {
    /* ロゴ */
    .ec-headerNaviRole .ec-headerRole {
        max-width: 290px;
    }
    /* 検索欄 */
    .ec-headerNaviRole .ec-headerSearch__category {
        width: 140px;
    }
    .ec-headerNaviFix .ec-headerNaviFix__inner .ec-headerNaviRole__left {
        display: inline-table;
        width: 40%;
        padding: 30px 10px 30px 0;
    }
    /* アイコン */
    .ec-headerNaviRole .ec-headerNav__item {
        margin-right: 6px;
    }
    .ec-headerNaviRole .ec-headerSearch .ec-headerSearch__keyword {
        width: 200px;
    }
    /* ヘッダー全体 */
    .ec-headerNaviFix .ec-headerNaviFix__inner {
        justify-content: space-around;
    }
    .ec-headerNaviRole .ec-cartNavi__price {
        display: none;
    }
    /* 新着商品・キャンペーン・ランキング */
    .front_page .ec-contentRole .slick-slide {
        /*width: 15% !important;*/
        margin: 0 16px !important;
    }
    /* フッター */
    .ec-footerNavi > div:nth-child(1) {
        width: 40%;
        padding-left: 10px;
    }
    .ec-footerRole .ec-footerNavi .ec-footerNavi__info dl {
        padding-right: 0;
    }
    .ec-footerNavi > div:not(:nth-child(1)) {
        width: 30%;
    }
    .ec-footerRole .ec-footerNavi .ec-footerNavi__guide {
        padding: 0;
        border-left: none;
    }
    .ec-footerRole .ec-footerNavi .ec-footerNavi__site {
        padding: 0;
        border-right: none;
    }
    .shoppingLogin .ec-layoutRole__mainWithColumn {
        margin: 0 0 0 20px;
    }
    .have_curtain .ec-overlayRole {
        display: block;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        background: rgba(0, 0, 0, 0.5);
        visibility: visible;
    }

    #page_shopping .ec-alert-warning {
        max-width: 100%;
    }
}
@media only screen and (max-width: 767px) {
    .pc-only {
        display: none;
    }
    .sp-only {
        display: block;
    }
    
    /* SP メニュー */
    .ec-headerNaviRole .ec-headerRole__navSP .ec-headerNavSP {
        top: 32px;
    }
    .ec-drawerRole .ec-headerSearch {
        background-color: #D87753;
    }
    .ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {
        background-color: #fff !important;
    }
    .ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading p {
        padding: 0 11px;
    }
    /* アイコン下の名称 */
    .ec-headerNav .ec-headerNav__itemLink {
        display: inline-block;
        font-size: 10px;
    }
    /* メニューの検索アイコン */
    .ec-headerSearch .ec-headerSearch__keywordBtn {
        opacity: 1 !important;
    }
    /* TOPページ */
    .front_page .ec-contentRole .slick-slide {
        margin: 0 8px !important;
    }
    .front_page .ec-contentRole .slick-list {
        margin: 0 -10px !important;
    }
    /* 商品一覧 */
    .product_list .ec-mainImage img {
        width: 100% !important;
        margin: 0;
    }
    .product_list .ec-topicpath {
        width: 100% !important;
        margin: 0;
        padding: 6px 20px;
    }
    .ec-productRole__priceRegular--div {
        /*width: 100%;*/
    }
    /* 下位ページ-タイトル */
    .ec-pageHeader h1 {
        padding: 20px 0 !important;
        font-size: 20px !important;
    }
    
    /* SPメニューカテゴリナビ */
    .ec-drawerRole .ec-headerCategoryArea .ec-itemNav {
        display: block;
    }
    
    /* SP 検索ボタン階層変更 */
    .ec-headerSearch .ec-headerSearch__keywordBtn {
        z-index: auto;
    }
    
    /* SP ブラウザURLバー被り防止 */
    .ec-drawerRole .ec-headerLinkArea {
        padding-bottom: 135px;
    }
    
    /* SP メニューハンバーガーボタン枠線 */
    .ec-headerNavSP {
        border: 1px solid #D87753;
    }
    
    /*******************************
     *
     * 特定商取引法に基づく表記
     *
     ******************************/
    #page_help_tradelaw table.payment-content td {
        font-size: 12px;
    }
    .have_curtain .ec-overlayRole {
        display: block;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        background: rgba(0, 0, 0, 0.5);
        visibility: visible;
    }
    .ec-cartNaviIsset.is-active {
        max-height: calc( 100vh - 150px);
        z-index: 9001;
        overflow-y: scroll;
    }

    #page_shopping .ec-alert-warning {
        max-width: 100%;
    }
    #page_shopping .ec-alert-warning__text {
        text-align: left;
    }

    #page_shopping .ec-alert-warning, #page_gmo_mypage_card_edit .ec-alert-warning {
        display: block;
        max-width: 100%;
    }
}