
/* ===== メインレイアウト ===== */
.ec-layoutRole{background:none;overflow:hidden;padding:0 40px;min-height:100vh;}
.ec-layoutRole .ec-layoutRole__contents{display:block;min-height:100vh;max-width:100%;width:calc(100% - 300px);float:right;padding-left:20px;position:relative;overflow:hidden;}

/* ===== サイドバー（position:fixed 左端固定） ===== */
.ec-layoutRole__left{display:none;position:fixed;left:0;top:0;width:300px;height:100vh;z-index:1;padding:0;margin:0;}
.ec-layoutRole__left .sidebar{position:fixed !important;left:0 !important;top:0 !important;width:300px;height:100vh;padding-left:40px;overflow-y:auto;background-color:#faf7f4;z-index:1;}
.ec-layoutRole__footer{clear:both;}

/* ===== メインコンテンツ全幅 ===== */
.ec-layoutRole .ec-layoutRole__mainWithColumn,
.ec-layoutRole .ec-layoutRole__main,
.ec-layoutRole .ec-layoutRole__mainBetweenColumn{width:100% !important;margin-top:157px;float:none !important;}

/* 1520px */
@media screen and (max-width:1520px){
    .ec-layoutRole .ec-layoutRole__left{width:280px !important;}
    .ec-layoutRole__left .sidebar{width:280px;}
    .ec-layoutRole .ec-layoutRole__contents{width:calc(100% - 280px);}
}
/* 1400px */
@media screen and (max-width:1400px){
    .ec-layoutRole{padding:0 20px;}
    .ec-layoutRole .ec-layoutRole__left{width:220px !important;}
    .ec-layoutRole__left .sidebar{width:220px;padding-left:20px;}
    .ec-layoutRole .ec-layoutRole__contents{width:calc(100% - 220px);padding-left:20px;}
}
/* 1150px */
@media screen and (max-width:1150px){
    .ec-layoutRole .ec-layoutRole__left{width:220px !important;}
    .ec-layoutRole .ec-layoutRole__contents{width:calc(100% - 220px);}
}
/* 950px（スマホ） */
@media screen and (max-width:950px){
    .ec-layoutRole{padding:0;}
    .ec-layoutRole .ec-layoutRole__contents{width:100% !important;float:none !important;padding-left:0 !important;margin-left:0 !important;}
    /* SP左右余白 */
    .main{padding-left:15px !important;padding-right:15px !important;}
    /* MV（ban02）は全幅 */
    .main>.ban02{margin-left:-15px !important;margin-right:-15px !important;width:calc(100% + 30px) !important;}
    /* banItemsはネガティブマージンをリセットして内側に収める */
    .main>.ban04>.banItems{margin-left:0 !important;margin-right:0 !important;padding:15px !important;}
    .main>.ban04>.banItems>ul{margin-left:-10px !important;}
    .main>.ban04>.banItems>ul>li{margin-left:10px !important;width:calc(50% - 10px) !important;}
    .pcShow{display:none !important;}
    .ec-layoutRole__left{position:fixed !important;left:0 !important;top:0 !important;width:270px !important;height:100vh !important;transform:translateX(-290px) !important;transition:transform 0.4s ease !important;background:#faf7f4 !important;z-index:9999 !important;overflow-y:scroll !important;box-shadow:none !important;display:block !important;}
    .ec-layoutRole__left .sidebar{position:static !important;width:100% !important;height:auto !important;overflow:visible !important;background:transparent !important;padding:0 !important;}
    .ec-layoutRole__left.showbar{transform:translateX(0) !important;box-shadow:4px 0 16px rgba(0,0,0,0.3) !important;}
    body.drawer-open::after{content:'';display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);z-index:9998;}
    .ec-layoutRole__mainWithColumn,
    .ec-layoutRole__main,
    .ec-layoutRole__mainBetweenColumn{width:100% !important;float:none !important;padding-left:0 !important;margin-left:0 !important;margin-top:0 !important;}
}

.ec-cartRole .ec-cartRole__cart{margin:0;border-left:1px dotted #ccc;border-right:1px dotted #ccc;}
.ec-progress .ec-progress__number{display:inline-flex;justify-content:center;align-items:center;}
.ec-progress .is-complete .ec-progress__number{background: #bf2929;}
.ec-progress .is-complete .ec-progress__label{color:#bf2929;}
.ec-cartHeader .ec-cartHeader__label{background: #7B1F1F;color:#fff;}
.ec-productRole img{width:auto;margin:auto;}
.main>.ban02 .pcbanner:after{padding-top:56%;}
.main>.ban02 .spbanner:after{padding-top:124%;}
.giftImg{margin:40px 0;}
.giftImg img:last-of-type{display:none;}
@media screen and (max-width:650px){
    .giftImg{margin:20px 0;}
    .giftImg img:first-of-type{display:none;}
    .giftImg img:last-of-type{display:block;}
    .ec-productRole{padding-left:0;padding-right:0;}
}

.ban02 .swiper-wrapper{padding-bottom:50px;}
.ban02 .swiper-pagination-bullet{width:11px;height:11px;}
.ban02 .swiper-pagination-bullet-active{background-color:#bf2929;}

.pt-20px{margin-top:20px;}
.figure01{max-width:600px;margin-top:20px;}
.ec-shelfGrid a{background: #f8f8f8;height:100%;}
.detaiBox{background: #fff;border: 1px solid gainsboro;padding: 10px 0;margin-top: 10px;}
.ec-shelfGrid a img{margin:auto;}
.ec-shelfGrid .ec-shelfGrid__item-image{background:#fff;}
.ec-shelfGrid p{padding:0px 10px;}
.price02-default{font-size: 18px;color: #de0000;font-weight: bold;}
.ec-productRole__actions{margin-top:10px;}
.descrip{background: #fff;width: calc(100% - 20px);margin: 10px;padding: 5px;border: 1px solid #d1d1d1;font-size: 14px;}
.ec-shelfGrid .ec-shelfGrid__item{justify-content:space-between;}
.slick-list{background:#fff;border:1px solid gray;}
.slide-item{background-repeat: no-repeat;background-size: contain;background-position:center;}
.slide-item:after{content:'';display:block;padding-top:100%;}
.slide-item img{display:none;}
#classcategory_id1 option:first-of-type,#classcategory_id2 option:first-of-type{display:none;}
#myMsg{margin-bottom: 10px;}
.myCategory{display:flex;align-items:center;    opacity: 0;
    position: absolute;
    z-index: -1;
    height: 0;}
.myCategory p{margin-right:10px;width:60px;}
.ec-headerSearch{max-width:490px;}
.ec-layoutRole__mainTop,.catList{max-width: 1090px;margin: auto;}
.ec-productRole{margin-top:20px;}
.ec-shelfGrid__item-image{display: flex;}
#RelatedProduct-product_area{margin-top:40px;}
.relationItem{border-bottom: 2px solid #7B1F1F;font-size: 18px;font-weight: bold;padding-bottom: 5px;margin-top: 40px;}

.commentStaff{display:flex;margin-top:40px;}
.commentStaff:after{content:'';order:1;display:block;width:177px;height:177px;background:url(https://shikki.jp/html/user_data/assets/img/20220401_man.jpg) no-repeat;background-size:contain;background-position:center;}
.commentStaff img{margin:0 40px 0 0;order:1;}
.commentStaffBox{margin-left:40px;order:2;border:2px solid #000;border-radius:15px;padding:20px;position:relative;}
.commentStaffBox:before{content: '';display: block;width: 30px;height: 30px;border-top: 2px solid #000;border-left: 2px solid #000;transform: rotate(-45deg) translateY(-50%);position: absolute;left: -6px;top: 50%;background: #faf7f4;}
.commentStaffBox p{position:relative;z-index:2;}
.standardsTable{width: calc(50% - 20px);text-align: center;border-collapse:collapse;}
.standardsTable td{border:1px solid;padding:4px;}
@media screen and (max-width:650px){
    .commentStaff{display:block;margin-top:20px;}
    .commentStaff:after{margin-top: 40px;}
    .commentStaffBox{padding:10px;margin-top:20px;margin-left: 0;}
    .commentStaff img{margin: 20px 0px 0 0;}
    .commentStaffBox:before{bottom: -16px;top:auto;left: 50px;transform: rotate(-135deg);}
    .standardsTable{width:100%;}
}

/* EC-CUBEデフォルトカテゴリナビを非表示 */
.ec-itemNav{display:none !important;}

/* ヘッダー位置 */
.header{margin-left:300px !important;width:calc(100% - 300px) !important;}
@media screen and (max-width:1520px){.header{margin-left:280px !important;width:calc(100% - 280px) !important;}}
@media screen and (max-width:1400px){.header{margin-left:220px !important;width:calc(100% - 220px) !important;}}
@media screen and (max-width:950px){.header{display:none !important;}}

/* ec-layoutRole__headerを無効化 */
.ec-layoutRole__header{height:0 !important;padding:0 !important;margin:0 !important;overflow:visible !important;}

/* 上部ナビ */
.navTitle{display:flex !important;visibility:visible !important;height:auto !important;overflow:visible !important;position:fixed !important;top:103px;left:300px;width:calc(100% - 300px);z-index:100;background:#fff;min-height:54px;justify-content:center;align-items:center;padding:8px 0;border-bottom:1px solid #e8e0d8;}
.goodNav{position:fixed;left:300px;top:157px;width:calc(100% - 300px);margin-bottom:0;display:none;z-index:200;background:#fff;box-shadow:0 4px 8px rgba(0,0,0,0.15);}

@media screen and (max-width:1520px){
    .navTitle{left:280px !important;width:calc(100% - 280px) !important;}
    .goodNav{left:280px !important;width:calc(100% - 280px) !important;position:fixed !important;top:54px !important;}
}
@media screen and (max-width:1400px){
    .navTitle{font-size:18px;left:220px !important;width:calc(100% - 220px) !important;}
    .goodNav{left:220px !important;width:calc(100% - 220px) !important;position:fixed !important;top:54px !important;}
    .navBox a.childTit{font-size:14px;}
}
@media screen and (max-width:950px){
    .navTitle{display:none !important;}
    .goodNav{display:none !important;}
}
@media screen and (max-width:650px){
    .navBox{padding:0px 10px 10px 0;}
    .grandBox{margin-left:10px;}
    .sub-menu{margin-top:10px;margin-left:10px;}
}

.navBtn{margin-right:20px;}
.navPart{display:none;width:100%;margin-top: 10px;}
.navTitle h3{font-size:14px;display:inline-flex !important;cursor:pointer;margin:0 !important;padding:14px 28px !important;line-height:1.5;pointer-events:auto;}
.navTitle h3:after{content:'';display:block;width: 0;height: 0;border-width: 7px;border-style: solid;border-color: #020202 transparent transparent transparent;margin: 9px 0 0 6px;}
.navBox{display:flex;flex-wrap:wrap;background: #fff;z-index: 9;border: 1px solid #e4e4e4;padding: 0px 20px 20px 0;}
.navBox a{color:#7b7b7b;display:block;margin-top:10px;}
.priceMenu.navBox a{width: calc(50% - 5px);border: 1px solid #dadada;}
.priceMenu.navBox a:hover{box-shadow:0px 0px 8px #a1a1a1;}
.priceMenu.navBox .sub-menu{display:flex;justify-content: space-between;}
.navBox a.childTit{color:#6f8c94;font-weight:bold;font-size:16px;}
.navBox .childBox2 a.childTit{color:#ffae00;font-weight:100;}
.sub-menu{margin-top:20px;margin-left:20px;position: relative;}

/* childBox：見切れ防止 */
.childBox{
    position:absolute;
    left:0;
    top:100%;
    display:none;
    background:#ffffff;
    border:1px solid gray;
    padding:10px;
    white-space:nowrap;
    z-index:200;
    box-shadow:0 0 8px rgba(0,0,0,0.5);
    max-width:320px;
    min-width:180px;
}
/* 右端に近いsub-menuのchildBoxは右寄せに展開（見切れ防止） */
.sub-menu:nth-last-child(-n+2) .childBox{
    left:auto;
    right:0;
}
.childBox li{border-bottom:1px solid gray;padding-bottom: 10px;}
.childBox li:last-of-type{border:none;padding-bottom: 0px;}
.childBox li a:hover{text-decoration:none !important;color:red;}
.grandBox{margin-left:20px;}

.buyTab{width:100%;border-collapse: collapse;display:none;}
.buyTab td{border: 1px solid #979797;padding: 5px 10px;}
.cate_h2{padding: 5px 0px 5px 12px;font-size: 16px;border-left: 5px solid #000;border-bottom: 1px dashed #ccc;}
.catList ul{flex-wrap:wrap;margin:20px 0 20px -20px;display:flex;}
.catList ul li{margin-left:20px;margin-top:10px;}
.catList ul li a{display:block;padding:5px 10px;background: #ffffff;color: #747474;border: 1px solid #747474;}
.catList ul li a:hover{background:#bf2929;color:#fff;text-decoration: none !important;}
.ec-productRole .ec-productRole__tag{margin-top:5px !important;}
.tagbox{padding:10px;display:none;}
.tagbox a{display:inline-block;border:1px solid gray;margin-top:10px;margin-left:5px;padding:5px;}
.tagbox a:hover{background:#bf2929;color:#fff;text-decoration:none;}
.nowtag{background:#bf2929;color:#fff !important;text-decoration:none;}
.childBox2{display:none;}
.mt{margin-top:20px;}

.contactSlogan{display:flex;justify-content:space-between;}
.contactSlogan dd{width:calc(50% - 20px);}
.contactSlogan dd a{color: #fff;display: flex;background: #fff;align-items: center;justify-content: space-between;padding: 20px;}
.contactSlogan dd a div{background: #7B1F1F;padding: 25px 20px;text-align: center;border-radius: 15px;width:50%;}
.contactSlogan dd a div img{max-width:40px;margin: 0 auto 20px;}
.contactSlogan dd a div.full_width{width:100%;}
@media screen and (max-width: 1300px){
    .contactSlogan dd{width:calc(50% - 10px);}
}
@media screen and (max-width: 950px){
    .contactSlogan{display:block;}
    .contactSlogan dd{width:100%;margin:20px auto 0;max-width:400px;}
    .contactSlogan dd a{display:block;}
    .contactSlogan dd a div{width:100%;}
    .contactSlogan dd a figure{margin-top:20px;}
}
.ec-shelfGrid .ec-select select{width:100%;}
.ec-searchnavRole__topicpath{margin-bottom:20px;}
#tag_name{width: fit-content;padding: 5px;background: #bf2929;color: #fff;border: 1px solid gray;margin-bottom: 30px;display:none;}
.banItems figure{background:#fff;position:relative;}
.banItems figure:after{content:'';display:block;padding-top:100%;}
.banItems figure img{margin:auto;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:100%;max-height:100%;}
/*.payMethod img{display:none;}*/
#form1 .form-group{display:none;}
.instagramBox{margin-top: 40px !important;}
.spShow{display:none !important;}
@media screen and (max-width: 950px){
    .spShow{display:block !important;}
    .pcShow{display:none !important;}
}
.ec-borderedDefs dd p:not(:first-of-type){margin-top:20px;}
.calendarBox{
    width: fit-content;
    margin: 40px auto 0;}
.apg_sc_table { 
     border-collapse: collapse; 
     border-spacing: 0; 
     line-height: 1.5; 
     margin-left: auto; 
     margin-right: 10px; 
     margin-bottom: 20px; 
 float: left; 
} 
 
.apg_sc_table th, 
.apg_sc_table td { 
 border: 1px solid #ccc; 
} 
 
.apg_sc_table thead th { 
     padding: 10px; 
     font-weight: bold; 
     vertical-align: top; 
     color: #fff; 
     background: #efefef; 
} 
 
.apg_sc_table tbody th { 
     background: #efefef; 
     line-height: 2.4em; 
     text-align: center; 
} 
 
.apg_sc_table td { 
     padding: 10px; 
     vertical-align: top; 
     text-align: center; 
     background-color: #fff; 
} 
 
/* ★休日のカラーはここで設定しています。*/ 
.apg_sc_table .apg_sc_holiday { 
     background: #ECC6C7 !important; 
} 
 
.apg_sc_table .apg_sc_saturday { 
 /*background: #BDE2E8;*/ 
} 
 
.apg_sc_table .apg_sc_sunday, 
.apg_sc_table .apg_sc_sunday { 
 /*background: #ECC6C7;*/ 
} 
 
@media only screen and (max-width: 767px) { 
 .apg_sc_table { 
 float: none; 
 margin-top: 20px; 
 margin-right: auto; 
 } 
}
.mobile-btn>div.active:after{content: "MENU";}
.sidebar .language #searchBtn{top:14px;}
@media (max-width:750px){
.sidebar>dl dt>a>img{height:72px !important;}
.sidebar>dl dd>a>img{height:72px !important;}
}

/* ========================================
   タグフィルタリングパネル
   ======================================== */
.tag-filter-panel {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 2px;
    margin-bottom: 20px;
    overflow: hidden;
}

.tag-filter-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    background: #fff;
    border-bottom: 1px solid #e8e8e8;
}

.tag-filter-title {
    font-size: 13px;
    font-weight: normal;
    color: #333;
    letter-spacing: 0.05em;
}

.tag-filter-clear {
    font-size: 11px;
    color: #7B1F1F;
    text-decoration: underline;
}

.tag-filter-clear:hover {
    color: #8a2010;
}

.tag-filter-groups {
    padding: 0;
}

.tag-filter-group {
    border-bottom: 1px solid #ebebeb;
}

.tag-filter-group:last-child {
    border-bottom: none;
}

.tag-filter-group-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 14px;
    cursor: pointer;
    background: #fff;
    transition: background 0.2s;
}

.tag-filter-group-header:hover {
    background: #f9f9f9;
}

.tag-filter-group-name {
    font-size: 12px;
    font-weight: normal;
    color: #555;
}

.tag-filter-group-arrow {
    width: 7px;
    height: 7px;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    transform: rotate(45deg);
    transition: transform 0.2s;
    flex-shrink: 0;
    margin-top: -3px;
}

.tag-filter-group.is-open .tag-filter-group-arrow {
    transform: rotate(-135deg);
    margin-top: 3px;
}

.tag-filter-group-body {
    display: none;
    padding: 4px 0 8px;
    background: #fff;
}

.tag-filter-group.is-open .tag-filter-group-body {
    display: block;
}

.tag-filter-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.tag-filter-item {
    padding: 0;
}

/* チェックボックス付きタグフィルターリンク */
.tag-filter-link{
    display:flex;
    align-items:center;
    padding:5px 14px;
    font-size:12px;
    color:#444;
    text-decoration:none;
    transition:background 0.15s;
    cursor:pointer;
    gap:6px;
    font-weight: normal;
}
.tag-filter-link input[type="checkbox"]{
    width:14px;
    height:14px;
    flex-shrink:0;
    accent-color:#7B1F1F;
    cursor:pointer;
    margin:0;
}
.tag-filter-link:hover{background:#f9f9f9;color:#7B1F1F;text-decoration:none !important;}
.tag-filter-item.is-active .tag-filter-link{color:#7B1F1F;font-weight:normal;background:#fef5f5;}

.tag-filter-name {
    flex: 1;
}

.tag-filter-count {
    font-size: 11px;
    color: #aaa;
    margin-left: 2px;
}

.tag-filter-item.is-active .tag-filter-count {
    color: #7B1F1F;
}

/* SP用タグフィルターボタン（スティッキー） */
.sp-tag-filter-btn {
    display: none;
}

@media (max-width: 950px) {
    .tag-filter-panel {
        display: none;
    }

    .sp-tag-filter-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 9999;
        background: #7B1F1F;
        color: #fff;
        border: none;
        border-radius: 0;
        height: 52px;
        padding: 0;
        font-size: 15px;
        font-weight: bold;
        box-shadow: 0 -2px 8px rgba(0,0,0,0.15);
        cursor: pointer;
        letter-spacing: 1px;
        gap: 8px;
    }

    /* SPモーダル */
    .sp-tag-filter-modal {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 2000;
        background: rgba(0,0,0,0.5);
    }

    .sp-tag-filter-modal.is-open {
        display: flex;
        align-items: flex-end;
    }

    .sp-tag-filter-modal-inner {
        background: #fff;
        width: 100%;
        max-height: 80vh;
        border-radius: 12px 12px 0 0;
        overflow-y: auto;
        padding-bottom: 20px;
    }

    .sp-tag-filter-modal-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 14px 16px;
        border-bottom: 1px solid #e0d5c8;
        position: sticky;
        top: 0;
        background: #fff;
        z-index: 1;
    }

    .sp-tag-filter-modal-title {
        font-size: 15px;
        font-weight: bold;
        color: #5a3e2b;
    }

    .sp-tag-filter-modal-close {
        font-size: 22px;
        color: #888;
        cursor: pointer;
        line-height: 1;
        padding: 4px;
    }

    .sp-tag-filter-modal .tag-filter-panel {
        display: block;
        border: none;
        margin: 0;
    }

    .sp-tag-filter-modal .tag-filter-header {
        display: none;
    }
}


/* ===== スマホ専用ヘッダーバー ===== */
.sp-header-bar {
    display: none;
}
@media screen and (max-width: 950px) {
    /* 旧ヘッダー（PC用）を非表示 */
    .header {
        display: none !important;
    }
    /* navTitle・goodNavも非表示 */
    .navTitle { display: none !important; }
    .goodNav  { display: none !important; }

    /* スマホ専用ヘッダーバーを表示 */
    .sp-header-bar {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: 56px;
        background: #fff;
        border-bottom: 1px solid #ddd;
        z-index: 10000;
        padding: 0 12px;
        box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    }

    /* ハンバーガーボタン */
    .sp-header-bar__menu {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 40px;
        height: 40px;
        background: none;
        border: none;
        cursor: pointer;
        gap: 5px;
        padding: 0;
    }
    .sp-header-bar__menu span {
        display: block;
        width: 24px;
        height: 2px;
        background: #333;
        border-radius: 2px;
        transition: all 0.3s;
    }

    /* 中央ロゴテキスト */
    .sp-header-bar__logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        font-size: 18px;
        font-weight: bold;
        color: #6b1a1a;
        text-decoration: none;
        letter-spacing: 0.05em;
        white-space: nowrap;
    }
    .sp-header-bar__logo:hover {
        text-decoration: none;
        opacity: 0.8;
    }

    /* 検索アイコン */
    .sp-header-bar__search {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        color: #333;
        text-decoration: none;
    }
    .sp-header-bar__search:hover {
        opacity: 0.7;
        text-decoration: none;
    }

    /* ドロワーの上端をヘッダー分下げる */
    .ec-layoutRole__left {
        top: 56px !important;
        height: calc(100vh - 56px) !important;
    }

    /* ページ全体のコンテンツをヘッダー分下げる */
    .ec-layoutRole {
        padding-top: 56px !important;
    }

    /* SPドロワー内サイドバーのパディング調整 */
    .ec-layoutRole__left .sidebar{
        padding:10px 0 20px !important;
    }
    /* SPドロワー内アコーディオンの幅 */
    .sidebar-accordion-nav{width:100%;}
    /* SPドロワー内の修理ボタン余白 */
    .shikki-repair-btn-new{margin:10px;}
    /* ロゴ等のSP表示調整 */
    .ec-layoutRole__left .sidebar .logo{padding:10px 10px 0;}
    .ec-layoutRole__left .sidebar .menu-icon{padding:0 10px;}
    .ec-layoutRole__left .sidebar .language{margin:10px;}
}

/* ========================================
   サイドバー アコーディオンナビ
   ======================================== */
.sidebar-accordion-nav{width:100%;font-size:13px;}
.acc-root-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;cursor:pointer;font-weight:bold;font-size:13px;color:#333;border-bottom:1px solid #e0d5c8;background:#f7f3ee;}
.acc-root-header:hover{background:#f0e8de;}
.acc-root.is-open > .acc-root-header{color:#7B1F1F;background:#fce8e4;}
.acc-arrow{display:inline-block;width:8px;height:8px;border-right:2px solid #5a3e2b;border-bottom:2px solid #5a3e2b;transform:rotate(45deg);transition:transform 0.2s;margin-top:-3px;flex-shrink:0;}
.acc-root.is-open > .acc-root-header .acc-arrow{transform:rotate(-135deg);margin-top:3px;}
.acc-root-body{display:none;background:#faf7f3;}
.acc-root.is-open > .acc-root-body{display:block;}
.acc-cat1-header{display:flex;justify-content:space-between;align-items:center;padding:8px 14px 8px 18px;cursor:pointer;font-size:12px;font-weight:bold;color:#5a3e2b;border-bottom:1px solid #e0d5c8;}
.acc-cat1-header:hover{background:#f0e8de;color:#7B1F1F;}
.acc-cat1.is-open > .acc-cat1-header{color:#7B1F1F;}
.acc-cat2-body{display:none;}
.acc-cat1.is-open > .acc-cat2-body{display:block;}
.acc-cat2-body a{display:flex;align-items:center;padding:5px 14px 5px 30px;font-size:12px;color:#444;text-decoration:none;border-bottom:1px solid #f0e8de;}
.acc-cat2-body a:before{content:'›';margin-right:6px;color:#7B1F1F;}
.acc-cat2-body a:hover{background:#f0e8de;color:#7B1F1F;text-decoration:none !important;}
.acc-show-more{display:block;width:100%;padding:7px 14px;font-size:11px;font-weight:bold;color:#888;background:#f7f3ee;border:none;border-top:1px solid #e0d5c8;cursor:pointer;text-align:center;}
.acc-show-more:hover{background:#f0e8de;color:#7B1F1F;}
.acc-cat1.is-hidden{display:none;}
.acc-plus{display:inline-block;width:12px;height:12px;position:relative;flex-shrink:0;}
.acc-plus::before,.acc-plus::after{content:'';position:absolute;background:#999;}
.acc-plus::before{width:2px;height:100%;top:0;left:5px;}
.acc-plus::after{width:100%;height:2px;top:5px;left:0;}
.acc-cat1.is-open > .acc-cat1-header .acc-plus::before{display:none;}
.acc-price-link{display:block;padding:8px 14px 8px 18px;font-size:12px;color:#444;border-bottom:1px solid #e0d5c8;text-decoration:none;background:#faf7f3;}
.acc-price-link:hover{background:#f0e8de;color:#7B1F1F;text-decoration:none;}

/* ========================================
   蓋付き椀 第3階層ボタン
   ======================================== */
.cat3-selector{margin:10px 0 16px;}
.cat3-selector__label{font-size:12px;font-weight:bold;color:#5a3e2b;margin-bottom:6px;}
.cat3-selector__buttons{display:flex;flex-wrap:wrap;gap:6px;}
.cat3-btn{padding:4px 14px;background:#fff;border:1px solid #ccc;border-radius:20px;font-size:12px;color:#555;text-decoration:none;transition:all 0.15s;display:inline-block;}
.cat3-btn:hover,.cat3-btn.is-active{background:#fce8e4;border-color:#7B1F1F;color:#7B1F1F;text-decoration:none !important;}

/* ========================================
   商品一覧バナーエリア
   ======================================== */
.list-page-banner{width:100%;margin-bottom:16px;}
.list-page-banner img{width:100%;height:auto;display:block;}

/* ===== 修理対応はこちらボタン ===== */
/* 修理ボタン周辺の赤帯リセット */
.sidebar .shikki-repair-btn-new,
a.shikki-repair-btn-new {
    background-image: url('/html/user_data/assets/img/repair_banner.png') !important;
    background-color: transparent !important;
    background-size: 100% auto !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    border-top: none !important;
    border-bottom: none !important;
    padding: 0 !important;
}
.shikki-repair-btn-new{
    display:block;
    margin:8px 0;
    padding:0;
    background:transparent url('/html/user_data/assets/img/repair_banner.png') center/100% auto no-repeat;
    color:transparent;
    border-radius:0;
    text-decoration:none;
    font-size:0;
    font-weight:bold;
    transition:opacity 0.2s;
    height:auto;
    aspect-ratio:8/1;
    width:100%;
    border:none !important;
}
.shikki-repair-btn-new:hover{opacity:0.85;text-decoration:none;color:transparent;}
.shikki-repair-btn-new__icon{display:none;}
.shikki-repair-btn-new__text{display:none;}


/* ===== メガメニュー ===== */
.goodNav.megaNav-open { display: block; }

.megaMenu {
    display: flex;
    min-height: 300px;
    max-height: 420px;
}

/* 左カラム */
.megaMenu__left {
    width: 33%;
    background: #f7f3ef;
    border-right: 1px solid #e0d8d0;
    overflow-y: auto;
    flex-shrink: 0;
}
.megaMenu__cat1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 16px;
    font-size: 13px;
    color: #444;
    cursor: pointer;
    border-bottom: 1px solid #ede8e3;
    transition: background 0.15s;
}
.megaMenu__cat1:hover,
.megaMenu__cat1.is-active {
    background: #fff;
    color: #7a1a1a;
    font-weight: bold;
    border-left: 3px solid #7a1a1a;
    padding-left: 13px;
}
.megaMenu__cat1 i {
    font-size: 10px;
    opacity: 0.4;
}
.megaMenu__cat1--single { border-left: none !important; }

/* 右カラム */
.megaMenu__right {
    flex: 1;
    background: #fff;
    padding: 20px 24px;
    overflow-y: auto;
}
.megaMenu__cat2 {
    display: none;
}
.megaMenu__cat2.is-active {
    display: block;
    animation: fadeInRight 0.15s ease;
}
@keyframes fadeInRight {
    from { opacity: 0; transform: translateX(8px); }
    to   { opacity: 1; transform: translateX(0); }
}
.megaMenu__cat2-title {
    font-size: 14px;
    font-weight: bold;
    color: #7a1a1a;
    border-bottom: 2px solid #7a1a1a;
    padding-bottom: 6px;
    margin-bottom: 12px;
}
.megaMenu__cat2-title a {
    color: #7a1a1a;
    text-decoration: none;
}
.megaMenu__cat2 ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px 16px;
    list-style: none;
    padding: 0;
    margin: 0;
}
.megaMenu__cat2 ul li a {
    font-size: 12px;
    color: #555;
    text-decoration: none;
    display: flex;
    align-items: center;
    padding: 5px 4px;
    border-radius: 3px;
    transition: background 0.1s, color 0.1s;
}
.megaMenu__cat2 ul li a::before {
    content: '\203a';
    margin-right: 6px;
    color: #bbb;
    font-size: 14px;
}
.megaMenu__cat2 ul li a:hover {
    background: #fdf0ee;
    color: #7a1a1a;
}

/* 金額グリッド */
.megaMenu--price {
    min-height: auto;
    padding: 20px;
}
.megaMenu__price-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    width: 100%;
}
.megaMenu__price-grid a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    color: #444;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    text-align: center;
}
.megaMenu__price-grid a span {
    font-size: 11px;
    font-weight: normal;
    color: #888;
    margin-top: 4px;
}
.megaMenu__price-grid a:hover {
    background: #fdf0ee;
    border-color: #7a1a1a;
    color: #7a1a1a;
}
.megaMenu__price-grid a:hover span { color: #7a1a1a; }

/* 修理対応ボタン 赤帯除去 */
.shikki-repair-btn-new {
    border-top: none !important;
    border-bottom: none !important;
    background: #7a1a1a !important;
    display: flex;
    align-items: center;
    padding: 10px 16px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    font-size: 13px;
    margin: 8px 0;
    border-radius: 4px;
}
.shikki-repair-btn-new:hover { background: #5a1010 !important; color: #fff; }
.shikki-repair-btn-new__icon { margin-right: 8px; font-size: 16px; }
.shikki-repair-btn-new__text { color: #fff; }

/* ブログアイコン */
.sidebar-blog-icon { display: block; margin: 8px 0; }
.sidebar-blog-icon img { width: 100%; height: auto; display: block; }

/* ===================================================
   ② トップメインビジュアルの見切れ修正（PC）
   =================================================== */
.main-visual,
.mainVisual,
#main-visual,
.slide,
.swiper-slide img,
.top-visual img,
.indexBanner img,
.PCbanner img {
    max-height: 85vh;
    object-fit: cover;
    width: 100%;
}

/* ===================================================
   ③ 全体 左右余白追加（PC）
   参考: kojima-ya.com のようなコンテンツ幅制限
   =================================================== */
@media screen and (min-width: 951px) {
    /* メインコンテンツエリアの最大幅と余白 */
    .ec-layoutRole__main,
    .ec-layoutRole__mainWithColumn,
    .ec-layoutRole__mainBetweenColumn,
    #page_homepage .content,
    .indexContents,
    .ec-role {
        max-width: 1200px;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
        box-sizing: border-box;
    }

    /* トップページのコンテンツブロック */
    .indexBlock,
    .indexSection,
    .topSection {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 40px;
        padding-right: 40px;
        box-sizing: border-box;
    }
}

/* ===================================================
   ④ フォント・行間設定
   本文16px以上、行間1.6以上
   =================================================== */
body,
p,
li,
td,
th,
dd,
dt,
span,
div {
    font-size: 16px;
    line-height: 1.8;
}

/* 見出しは除外 */
h1, h2, h3, h4, h5, h6 {
    line-height: 1.4;
}

/* 商品説明文 */
.ec-productRole__description,
.ec-productRole__description p,
.itemDetail,
.itemDetail p {
    font-size: 16px !important;
    line-height: 1.8 !important;
}

/* 商品一覧の説明文 */
.ec-shelfGrid__item p,
.ec-shelfGrid__item span {
    font-size: 15px;
    line-height: 1.7;
}

/* ===================================================
   ⑤ スマホ レスポンシブ対応
   「お探しの品見つけます！」セクション直下の画像
   =================================================== */
@media screen and (max-width: 950px) {
    /* トップページの画像エリアをレスポンシブに */
    .indexBlock img,
    .indexSection img,
    .topSection img,
    #page_homepage img,
    .content img {
        max-width: 100% !important;
        height: auto !important;
        display: block;
    }

    /* 横並びになっているブロックを縦積みに */
    .indexBlock .row,
    .indexSection .row,
    .topSection .row,
    .indexContents .row {
        flex-direction: column !important;
    }

    .indexBlock .col,
    .indexSection .col,
    .topSection .col,
    .indexContents .col {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 16px !important;
        box-sizing: border-box;
    }

    /* SP時の余白 */
    body {
        font-size: 15px;
        line-height: 1.7;
    }
}

/* navTitle(fixed)分のpadding-top確保 */
@media screen and (min-width: 951px) {
    .ec-layoutRole__mainWithColumn,
    .ec-layoutRole__mainBetweenColumn,
    .ec-layoutRole__main {
        padding-top: 70px !important;
    }
}

/* ===== MV（スライダー）スマホ表示修正 ===== */
@media screen and (max-width:950px){
    .ban02 .pcbanner{
        display: none !important;
        height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
        visibility: hidden !important;
    }
    .ban02 .pcbanner::after{
        content: none !important;
        display: none !important;
        padding-top: 0 !important;
        height: 0 !important;
    }
    .ban02 .spbanner{
        display: block !important;
        visibility: visible !important;
    }
    .ban02 .spbanner::after{
        padding-top: 124% !important;
    }
    .ban02 .swiper-slide{
        overflow: hidden !important;
        position: relative !important;
    }
}

/* ========================================
   2026-04-12 修正 ②③④⑤
   ======================================== */

/* ② MV（PCでの見切れ対策）------- */
/* スライダー全体をビューポート高さに収める */
@media screen and (min-width: 750px) {
    .ban02 {
        max-height: 100vh;
        overflow: hidden;
    }
    .ban02 .swiper-container {
        max-height: 100vh;
    }
    .ban02 .swiper-slide {
        max-height: 100vh;
        overflow: hidden;
    }
    .ban02 .swiper-slide img,
    .ban02 .swiper-slide picture img {
        width: 100%;
        height: 100vh;
        object-fit: cover;
        object-position: center top;
        display: block;
    }
    .ban02 .pcbanner:after {
        display: none !important;
    }
}

/* ③ 左右余白の追加（PC） ------- */
/* コンテンツ最大幅を制限し中央寄せ（サイドバーなし幅900px以上） */
@media screen and (min-width: 750px) {
    .main {
        max-width: 1100px;
        margin: 0 auto;
        padding: 0 30px;
        box-sizing: border-box;
    }
    /* ban02（MV）は余白なしで全幅 */
    .ban02 {
        margin-left: -30px !important;
        margin-right: -30px !important;
        max-width: calc(100% + 60px) !important;
        width: calc(100% + 60px) !important;
    }
}

/* ③ 全ページ共通の左右余白 */
@media screen and (min-width: 750px) {
    .ec-layoutRole__mainTop,
    .catList,
    .ec-role,
    .indexContents {
        max-width: 1100px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 30px;
        padding-right: 30px;
    }
}

/* ④ フォント・行間設定 ------- */
/* 本文フォント16px以上・行間1.6以上 */
body,
.main p,
.main li,
.main dt,
.main dd,
.main td,
.main th,
.ec-layoutRole p,
.ec-layoutRole li {
    font-size: 16px !important;
    line-height: 1.7 !important;
}

/* 商品説明・詳細テキスト */
.ec-productRole__description,
.ec-productRole__description p,
.ec-productRole__description li,
.knowware p, .knowware li,
.ec-pageHeader + div p,
.user_data p {
    font-size: 16px !important;
    line-height: 1.7 !important;
}

/* 小さくていいテキスト（ナビ等）は除外 */
.sidebar,
.sidebar *,
.header,
.header *,
.ec-progress,
.ec-cartRow,
.ec-cartHeader {
    font-size: inherit;
    line-height: inherit;
}

/* ⑤ スマホ ban04（お探しの品）レスポンシブ ------- */
@media screen and (max-width: 950px) {
    /* banItemsのグリッドをスマホで1列または2列に */
    .main>.ban04>.banItems>ul {
        margin-left: -10px !important;
    }
    .main>.ban04>.banItems>ul>li {
        width: calc(50% - 10px) !important;
        margin-left: 10px !important;
        margin-top: 10px !important;
    }
    /* banSloganもスマホ対応 */
    .main>.ban04>.banSlogan>li {
        width: calc(50% - 5px) !important;
    }
    .main>.ban04>.banSlogan>li:nth-child(1) {
        width: 100% !important;
    }
}

@media screen and (max-width: 650px) {
    /* 超小型スマホは1列 */
    .main>.ban04>.banItems>ul>li {
        width: calc(100% - 10px) !important;
    }
}

/* ⑤ ban01（お探しの品の上部画像エリア）スマホ対応 */
@media screen and (max-width: 950px) {
    .main>.ban01 img.pcimg,
    .main>.ban04 img.pcimg {
        display: none !important;
    }
    .main>.ban01 img.spimg,
    .main>.ban04 img.spimg {
        display: block !important;
        width: 100% !important;
    }
    /* divboxエリアのレスポンシブ */
    .divbox {
        flex-direction: column !important;
    }
    .divbox > div {
        width: 100% !important;
    }
}


/* ===== タグフィルター重複表示修正 ===== */
/* SPモーダル内のパネルはSP時のみ表示（PCでは非表示） */
@media screen and (min-width: 951px) {
    .sp-tag-filter-btn {
        display: none !important;
    }
    .sp-tag-filter-modal {
        display: none !important;
    }
}
/* PCパネルはPC時のみ表示（SPでは非表示） */
@media screen and (max-width: 950px) {
    #tagFilterPanel {
        display: none !important;
    }
}

/* ===== 商品一覧：絞り込み＋商品グリッド横並びレイアウト ===== */
@media screen and (min-width: 951px) {
    .product-list-body {
        display: grid;
        grid-template-columns: 200px 1fr;
        grid-template-rows: auto auto;
        column-gap: 24px;
        align-items: start;
    }
    /* タグフィルターパネルは左列・全行にまたがる */
    #tagFilterPanel {
        grid-column: 1;
        grid-row: 1 / span 2;
    }
    /* 商品一覧は右列1行目 */
    .product-list-body .ec-shelfRole {
        grid-column: 2;
        grid-row: 1;
        min-width: 0;
    }
    /* モーダルは右列（非表示なのでOK） */
    .product-list-body .ec-modal {
        grid-column: 2;
        grid-row: 1;
    }
    /* ページネーションは右列2行目 */
    .product-list-body .ec-pagerRole {
        grid-column: 2;
        grid-row: 2;
    }
    /* 絞り込みパネルと横並び時は3列グリッドに */
    .product-list-body .ec-shelfGrid .ec-shelfGrid__item {
        width: 33.333% !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
    .product-list-body .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {
        padding-right: 8px !important;
    }
    .product-list-body .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {
        padding-left: 8px !important;
    }
}
@media screen and (max-width: 950px) {
    .product-list-body {
        display: block;
    }
}

/* ===== カテゴリバナー（第4階層：ピンク） ===== */
.category-banner {
    background: #f9e8e8;
    border: 1px solid #e8c4c4;
    border-radius: 6px;
    padding: 16px 20px;
    margin-bottom: 16px;
    text-align: center;
}
.category-banner-text {
    color: #7B1F1F;
    font-size: 16px;
    font-weight: bold;
}

/* ===== タイプから選ぶ：タグボタン ===== */
.type-tag-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}
.type-tag-label {
    font-size: 14px;
    color: #555;
    white-space: nowrap;
    font-weight: bold;
}
.type-tag-btn {
    display: inline-block;
    padding: 6px 14px;
    border: 1px solid #7B1F1F;
    border-radius: 20px;
    font-size: 13px;
    color: #7B1F1F;
    text-decoration: none;
    background: #fff;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}
.type-tag-btn:hover,
.type-tag-btn.is-active {
    background: #7B1F1F;
    color: #fff;
}
.type-tag-btn.is-disabled {
    border-color: #ccc;
    color: #ccc;
    cursor: default;
    pointer-events: none;
}

/* ===== 絞り込みパネルタイトル ===== */
.tag-filter-title {
    font-size: 14px;
    font-weight: bold;
    color: #333;
}

/* SP: 絞り込みバー分の下余白 */
@media (max-width: 950px) {
    .ec-layoutRole__contents {
        padding-bottom: 70px !important;
    }
}

/* ===================================================
   白背景カード化（全ページ共通）
   =================================================== */

/* ページ全体背景をベージュに */
body {
    background-color: #f0ebe4 !important;
}

/* メインコンテンツを白カードに */
.ec-layoutRole__main,
.ec-layoutRole__mainWithColumn,
.ec-layoutRole__mainBetweenColumn {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 16px rgba(0,0,0,0.07) !important;
    padding-top: 32px !important;
    padding-bottom: 48px !important;
    margin-bottom: 40px !important;
}

/* サイドバー背景も合わせる */
.ec-layoutRole__left .sidebar,
.ec-layoutRole__left {
    background-color: #faf7f4 !important;
}

/* ヘッダーもミントグリーンをオフホワイトに */
.header {
    background: #faf7f4 !important;
}

/* スマホ時の白カード余白調整 */
@media screen and (max-width: 950px) {
    .ec-layoutRole__main,
    .ec-layoutRole__mainWithColumn,
    .ec-layoutRole__mainBetweenColumn {
        border-radius: 0 !important;
        box-shadow: none !important;
        padding-top: 20px !important;
        padding-bottom: 32px !important;
        margin-bottom: 0 !important;
    }
}

/* ===================================================
   D-1: 商品詳細・決済機能 UI改善 (2026-04-15)
   =================================================== */

/* === 商品詳細ページ: カートボタン強調 === */
.ec-blockBtn--action.add-cart {
    background-color: #7B1F1F !important;
    border-color: #7B1F1F !important;
    font-size: 16px !important;
    font-weight: bold !important;
    letter-spacing: 0.05em !important;
    border-radius: 4px !important;
    padding: 14px 0 !important;
    transition: background-color 0.2s ease, transform 0.1s ease !important;
}
.ec-blockBtn--action.add-cart:hover {
    background-color: #5a1616 !important;
    border-color: #5a1616 !important;
    transform: translateY(-1px) !important;
}
.ec-blockBtn--action.add-cart:active {
    transform: translateY(0) !important;
}

/* === 商品詳細: 素材・サイズ選択テーブル === */
.buyTab {
    width: 100%;
    border-collapse: collapse;
    display: none;
    margin: 10px 0 14px 0;
    border-radius: 4px;
    overflow: hidden;
    font-size: 14px;
}
.buyTab td {
    border: 1px solid #d4c5b5;
    padding: 8px 12px;
}
.buyTab td:first-child {
    background-color: #f5ede3;
    font-weight: bold;
    color: #5a3a1a;
    width: 80px;
}

/* === 商品詳細: 数量入力欄 === */
.ec-numberInput.mt {
    margin-top: 12px !important;
}
.ec-numberInput.mt span {
    font-size: 13px;
    color: #555;
    display: block;
    margin-bottom: 4px;
}
#quantity {
    border: 1px solid #c8a882 !important;
    border-radius: 4px !important;
    padding: 6px 10px !important;
    font-size: 15px !important;
    width: 80px !important;
    text-align: center !important;
}

/* === 決済ページ: お支払方法セクション === */
.ec-orderPayment {
    margin-bottom: 24px !important;
}
.ec-radio.payMethod {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 10px 0;
}
.ec-radio.payMethod > div {
    display: flex !important;
    align-items: center;
    border: 1px solid #d4c5b5;
    border-radius: 6px;
    padding: 10px 16px;
    background: #faf7f4;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    min-width: 160px;
}
.ec-radio.payMethod > div:hover {
    border-color: #7B1F1F;
    background: #fef5f0;
}
.ec-radio.payMethod input[type="radio"] {
    accent-color: #7B1F1F;
    margin-right: 8px;
    width: 16px;
    height: 16px;
}

/* === 決済ページ: 合計ボックス === */
.ec-totalBox {
    background: #faf7f4;
    border: 1px solid #e0d6cb;
    border-radius: 8px;
    padding: 20px !important;
}
.ec-totalBox__paymentTotal {
    font-size: 18px !important;
    font-weight: bold;
    color: #7B1F1F;
    border-top: 2px solid #7B1F1F;
    margin-top: 12px;
    padding-top: 12px;
}
.ec-totalBox__btn .ec-blockBtn--action {
    background-color: #7B1F1F !important;
    border-color: #7B1F1F !important;
    font-weight: bold !important;
    letter-spacing: 0.05em !important;
}
.ec-totalBox__btn .ec-blockBtn--action:hover {
    background-color: #5a1616 !important;
}

/* === 配送・送料注意書き: 商品詳細ページ === */
.ec-productRole__actions p {
    font-size: 12px;
    color: #666;
    line-height: 1.6;
    margin-top: 8px;
}

/* === スマホ時: 決済選択肢の縦並び === */
@media screen and (max-width: 767px) {
    .ec-radio.payMethod {
        flex-direction: column;
        gap: 8px;
    }
    .ec-radio.payMethod > div {
        min-width: unset;
        width: 100%;
    }
}
