.ec-layoutRole {
        background: var(--body-background);
    }

    /* カートに入れるボタン */
    .ec-blockBtn--action.add-cart {
        background: var(--color-white);
        border: 1px solid var(--primary-color);
        border-radius: 5px;
        transition: all 0.3s ease;
        color: var(--primary-color);
    }

    .ec-blockBtn--action.add-cart:hover {
        background: var(--primary-color);
        color: var(--color-white);
    }

    .ec-shelfRole {
        line-height: var(--body-line-height);
    }

    /* 商品詳細 */
    .ec-productRole {
        line-height: var(--body-line-height);
    }

    a:hover {
        color: unset;
    }

    @media screen and (min-width: 768px) {
        html {
            font-size: 62.5%;
        }

        .ec-headerNaviRole {
            padding: 0;
        }

        .ec-layoutRole__contents {
            padding: 150px 0;
        }

        .ec-role {
            padding-left: 0;
            padding-right: 0;
        }

        .ec-input select,
        .ec-birth select,
        .ec-select select,
        .ec-halfInput select,
        .ec-numberInput select,
        .ec-zipInput select,
        .ec-telInput select,
        .ec-input select,
        .ec-birth select,
        .ec-select select,
        .ec-telInput select,
        .ec-zipInput select,
        .ec-numberInput select,
        .ec-halfInput select,
        .ec-input input,
        .ec-birth input,
        .ec-select input,
        .ec-halfInput input,
        .ec-numberInput input,
        .ec-zipInput input,
        .ec-telInput input {
            font-size: 1.6rem;
        }

        .ec-blockBtn--action {
            font-size: 1.6rem;
        }

        #page_help_guide .guide__buttons {
            gap: 20px 45px;
        }

        #page_help_guide .guide__button {
            width: 330px;
        }

        #page_help_guide .guide__button .guide__button-link {
            width: 100%;
        }

        /* サイドバー
        --------------------------------*/
        .ec-layoutRole .ec-layoutRole__left {
            width: 230px;
            margin-right: 40px;

        }

        #side-headerNaviRole .ec-headerNaviRole {
            padding: 0;
            width: 230px;
            margin-bottom: 25px;
        }

        #side-headerNaviRole .ec-layoutRole .ec-layoutRole__left {
            width: 230px;
        }

        /* 検索・カテゴリ */
        #side-headerNaviRole .ec-headerSearch__category,
        #side-headerNaviRole .ec-headerSearch__keyword {
            float: none;
            width: 100%;
            border-radius: 0;
        }

        #side-headerNaviRole .ec-headerNaviRole__search,
        #side-headerNaviRole .ec-headerNaviRole .ec-headerNaviRole__left {
            width: 100%;
        }

        #side-headerNaviRole .ec-headerSearch .ec-headerSearch__category .ec-select select {
            width: 100%;
            max-width: 100%;
            text-align: center;
            background: var(--color-gray-dark);
            border-radius: 0;
        }

        #side-headerNaviRole .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search,
        #side-headerNaviRole .ec-headerSearch__keyword input {
            border-radius: 0;
        }

        #side-headerNaviRole .ec-headerSearch__keyword .search-name {
            background: var(--color-gray-light);
        }

        /* カテゴリ一覧 */
        #side-headerNaviRole h4.side-cat-ttl {
            font-size: 2.4rem;
            border-top: 2px solid;
            border-bottom: 2px solid;
            text-align: center;
            padding: 5px 0;
            font-weight: 500;
            margin-bottom: 10px;
        }

        #side-headerNaviRole .ec-itemNav__nav {
            display: block;
        }

        #side-headerNaviRole .ec-categoryNaviRole {
            padding: 0;
            margin-bottom: 40px;
        }

        #side-headerNaviRole .ec-itemNav__nav>li {
            float: none;
            width: 100%;
        }

        #side-headerNaviRole .ec-itemNav__nav>li>a {
            font-size: 1.6rem;
            text-align: center;
            position: relative;
            background: none;
            font-weight: var(--font-weight-medium);
            border-bottom: 1px solid var(--color-gray-dark);
        }

        #side-headerNaviRole .ec-itemNav__nav>li>a:hover {
            text-decoration: underline;
        }

        .ec-itemNav__nav li ul {
            inset: 0 -86% auto auto;
        }

        .ec-itemNav__nav li ul li a {
            font-weight: var(--font-weight-medium);
            background: rgba(var(--color-gray-light-rgb), .85) !important;
            color: var(--body-font-color);
        }

        .ec-itemNav__nav li ul li a:hover {
            opacity: 1;
            background: var(--color-gray-light) !important;
        }

        .ec-itemNav__nav li ul li ul li a {
            background: rgba(var(--color-gray-light-rgb), .85);
            color: var(--body-font-color);
        }

        .ec-itemNav__nav li ul li ul li a:hover {
            opacity: 1;
            background: var(--color-gray-light) !important;
        }

        /* #side-headerNaviRole .ec-itemNav__nav>li>a:before {
            width: 5px;
            height: 5px;
            border-radius: 50%;
            background: #f8a955;
            position: absolute;
            content: '';
            left: 0;
            top: 0;
            bottom: 0;
            margin: auto 0;
            z-index: 1;
        } */

        .ec-itemNav__nav li ul li ul:before {
            color: var(--body-font-color);
        }

        /* カートボタン */
        #side-headerNaviRole .ec-headerNaviRole__right,
        #side-headerNaviRole .ec-headerRole__cart,
        #side-headerNaviRole .ec-cartNavi {
            width: 100%;
            border-radius: 0;
        }

        /* カートボタン */
        #side-headerNaviRole .ec-headerNav .ec-headerNav__item,
        #side-headerNaviRole .ec-headerNav .ec-headerNav__item a {
            width: 100%;
            text-align: center;
            display: block;
            color: var(--color-gray-light);
        }

        #side-headerNaviRole .ec-headerNav .ec-headerNav__item a {
            background: var(--primary-color);
            display: flex;
            align-items: center;
            justify-content: center;
            height: 50px;
        }

        #side-headerNaviRole .ec-headerNav .ec-headerNav__item span {
            color: #fff;
            font-size: 1.5rem;
            font-weight: 500;
        }

        #side-headerNaviRole .ec-headerNav .ec-headerNav__itemIcon {
            color: #fff;
            margin-right: 5px;
            margin-left: 0;
        }

        #side-headerNaviRole .ec-headerNav__itemIcon.fa-heart {
            color: #cb0e20;
        }

        #side-headerNaviRole .ec-headerNav__item.navItem_favor a {
            background: #fff;
            border: 1px solid var(--primary-color);

        }

        #side-headerNaviRole .ec-headerNav__item.navItem_favor a span {
            color: var(--primary-color);
        }

        #side-headerNaviRole .ec-headerRole__cart .ec-cartNaviWrap .ec-cartNavi {
            background: var(--color-gray-extra-light);
        }

        /* アイテムリスト */
        .ec-shelfGrid {
            margin: 0;
            gap: 40px;
        }

        .ec-shelfGrid .ec-shelfGrid__item {
            width: 230px;
            padding: 0;
        }

        .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd),
        .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {
            padding: 0;
        }

        .ec-shelfGrid__item .price02-default,
        .ec-favoriteRole .ec-favoriteRole__itemPrice {
            text-align: right;
            color: var(--primary-color);
            font-weight: var(--font-weight-bold);
            font-size: var(--font-size-16);
        }

        /* 商品詳細 */
        .ec-productRole .ec-productRole__tags {
            border-bottom: none;
        }

        .tradelaw__table,
        .about__table {
            padding: 40px;
        }
    }

    @media screen and (max-width: 767px) {
        .ec-layoutRole__contents {
            padding: 22% 0;
        }

        .ec-inlineBtn--action,
        .ec-inlineBtn--cancel,
        .ec-blockTopBtn,
        .ec-blockBtn,
        .ec-blockBtn--action,
        .ec-blockBtn--cancel,
        .ec-inlineBtn,
        .ec-input textarea,
        .ec-birth textarea,
        .ec-select textarea,
        .ec-halfInput textarea,
        .ec-numberInput textarea,
        .ec-zipInput textarea,
        .ec-telInput textarea,
        .ec-input input,
        .ec-birth input,
        .ec-select input,
        .ec-halfInput input,
        .ec-numberInput input,
        .ec-zipInput input,
        .ec-telInput input,
        .ec-input select,
        .ec-birth select,
        .ec-select select,
        .ec-halfInput select,
        .ec-numberInput select,
        .ec-zipInput select,
        .ec-telInput select {
            font-size: 4vw !important;
        }

        /* 商品詳細 価格 */
        .ec-price .ec-price__price {
            font-size: 7.5vw;
        }

        #page_product_detail .ec-productRole .ec-productRole__profile,
        #page_product_detail .ec-productRole .ec-productRole__description {
            font-size: 4vw;
        }

        #page_help_guide .guide__button {
            margin-bottom: 8%;
        }

        #page_help_guide .guide__button :last-child {
            margin-bottom: 0;
        }

        #page_help_guide .guide__button .guide__button-link::before {
            transform: rotate(90deg);
        }

        .tradelaw__table,
        .about__table {
            padding: 10% 6%;
        }

        /* マイページ メニュー */
        .ec-navlistRole .ec-navlistRole__navlist a {
            font-size: 3.45vw;
        }

        /* お気に入り一覧 */
        .ec-favoriteRole .ec-favoriteRole__itemList {
            gap: 4vw 4%;
        }

        #page_mypage_favorite .ec-favoriteRole__item {
            width: 48%;
            padding: 0;
        }

        /* 商品一覧 名前 */
        .ec-shelfGrid__item .ec-shelfGrid__item-name,
        .ec-favoriteRole .ec-favoriteRole__itemTitle {
            font-size: 4.6vw;
            line-height: 1.6;
        }

        /* 商品一覧 価格 */
        .ec-shelfGrid__item .price02-default,
        .ec-favoriteRole .ec-favoriteRole__itemPrice {
            text-align: right;
            color: var(--primary-color);
            font-weight: var(--font-weight-bold);
            font-size: var(--font-size-19);
        }

        /* カートに入れるボタン */
        #page_product_list .ec-blockBtn--action.add-cart {
            background: none;
            border-radius: 0;
            font-size: 3.85vw;
            margin-top: 6%;
            height: 14vw;
        }

    }