
/*header*/
html {
    font-size: 62.5%;
}
.dc-sub-item .fa {
    display: none;
}
.dc-header__wrapper {
    max-width: unset;
}
.dc-header--brand {
    position: unset;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: 5rem;
}
.logo-navi-wrapper {
    align-items: center;
    display: flex;
    gap: 4rem;
}
.dc-header__brand {
    position: unset;
    width: 12rem;
}
/*いったんリセット*/
.dc-header--primary {
    height: auto;
}
/*カートdiv*/
.dc-header__cart {
    position: unset;
    padding: 0;
    display: flex;
    gap: 2.5rem;
    align-items: center;
}
/*カート*/
.fs-p-headerNavigation__link {
    position: relative;
    margin: 0;
}
/*ハート*/
.dc-header__wishicon {
    margin: 0;
}
.dc-header__cart img {
    width: 2.5rem;
}
/*カートイン数*/
.dc-header__cart-button {
    position: relative;
    width: unset;
    height: unset;
    font-size: unset;
}
.dc-minicart .dc-header-user__num {
    background: #cb333b;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .8rem;
    top: -.6rem;
    right: -.8rem;
}
/*headerおび*/
.header-pr-pc {
    background: #cb333b;
    padding: .85rem 0;
    text-align: center;
    color: #fff;
}
.header-pr-pc a {
    color: #fff;
}
/*4つメニュー*/
.dc-sub-item > a {
    font-size: 1.4rem;
    font-weight: 500;
    padding-block: 3rem;
    color: inherit !important;
}
/*背景色打ち消し*/
.dc-sub-item > a:before {
    display: none;
}
.dc-sub-item > a:hover {
    color: inherit;
}

/*ホバーメニュー*/
.dc-dropdown__body {
    top: 8rem;
    background: #fff;
    border-top: solid 1px #cb333b;
    padding-inline: calc(5rem + 12rem + 6rem) 0;
    padding-block: 4rem 15rem;
}
.dc-dropdown__wrapper {
    max-width: unset;
    justify-content: unset;
}
.category-all {
    margin: 0;
    padding: 0;
}

.dc-dropdown-links h4 {
    font-size: 1rem;
    font-weight: 700;
}
.dc-dropdown-links h4, .dc-dropdown-links .category-all li {
    margin-bottom: 1.2rem;
}
.categoryAll-flex {
    font-size: .95rem;
    font-weight: 500;
    justify-content: flex-start;
    gap: 4rem;
    margin: 0;
    display: flex;
}
.categoryAll-flex > li {
    margin: 0;
    width: unset;
}
.category-all.gray-box li {
    margin-bottom: .5rem;
    background: #777;
    padding: .5rem 2rem;
    text-align: center;
    color: #fff;
}
.category-all.gray-box li span {
    font-size: .7rem;
    padding-inline: .2rem;
}

@media screen and (max-width: 768px) {
    /*赤帯*/
    .header-pr-pc {
        display: block;
        font-size: 1rem;
    }
    .dc-header--brand {
        padding-inline: 1rem;
    }
    .dc-header__brand {
        transform: unset;
        width: 10rem;
    }
    /*↓ここからハンバーガーメニュー*/
    .dc-menu-open {
        position: unset;
    }
    .css-sp-menu-icon {
        width: unset;
        border: none;
        background: unset;
        height: unset;
        border-radius: unset;
        position: unset;   
    }
    .dc-header__cart {
        gap: 2rem;
    }
    .dc-header__cart img {
        width: 2.2rem;
    }
    /*↓ハンバーガーメニュー内スクロールさせるため*/
    .dc-header--primary {
        height: 100vh;
        border-radius: 1.5rem 1.5rem 0 0;
        padding-bottom: 15rem;
    }

    /*.dc-header__side {
        position: relative;
    }*/
    .dc-header__side .dc-header--brand {
        background: unset;
        border-bottom: solid 1px #ddd;
        display: flex;
        align-items: center;
        padding: 0;
        height: auto;
    }
    /*ログイン*/
    /*SP下線*/
    .dc-header-user {
        border-bottom: solid 1px #ddd;
        padding-block: 2.5rem;
    }
    .dc-header-user a.dc-header-user__login {
        background: #cb333b;
        
    }
    .dc-header-user a.dc-header-user__newuser {
        border: solid 1px #866761;
    }
    .dc-header-user a.dc-header-user__login, 
    .dc-header-user a.dc-header-user__newuser {
        border-radius: 100px;
        padding-block: 1rem;
        font-weight: 600;
        font-size: 1.2rem;
    }
    .dc-navbar-mobile__header {
        background: #f7efeb;
        margin: 0;
        padding-block: 2rem;
    }
    .back-opacity-area {
      display: none; /* ←最初は非表示 */
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background-color: rgba(0, 0, 0, 0.6); /* 透過の黒 */
    }
    .dc-menu-close button {
        height: auto;
        width: auto;
    }
    .dc-menu-close {
        top: unset;
        right: 2rem;
    }
    .dc-menu-close button:after, 
    .dc-menu-close button:before {
        display: none;
    }


    /*↓ここからハンバーガーメニュー　メニュー部分*/
    .dc-navbar-mobile {
        padding: 0;
        font-size: 1.2rem;
    }
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu {
        padding: 0;
        margin: 0;
    }
    .dc-link-chev:after {
        display: none;
    }
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li a, 
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li span, 
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li > ul > li > a {
        padding: 1rem 2rem;
    }
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li > ul > li, 
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li a, 
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li span, 
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li > ul > li > a {
        border: none;
    }
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li > ul {
        margin: 0;
    }

    /*メニュー部分ボーダー*/
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li > ul > li > a, 
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu li span, 
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu .no-collapse {
        border-top: solid 1px #ddd;
    }
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu {
        border-bottom: solid 1px #ddd;
    }


    .add-pd-l {
        padding-inline: 4rem !important;
    }
    .add-pd-l2 {
        padding-inline: 6rem !important;
    }
    .dc-navbar-mobile ul.dc-dropdown-mobile-menu {
        border-top: none;
    }
    .dc-link-square-collapse:after {
        right: 2rem;
    }

    .dc-navbar-mobile__shopguide .category-all.gray-box {
        display: grid;
        grid-template-columns: repeat(2, 2fr);
        width: unset;
        gap: 1rem;

    }
    .dc-navbar-mobile__shopguide .category-all.gray-box li {
        margin: 0;
    }
    .dc-navbar-mobile__shopguide {
        background: none;
        padding-inline: 2rem;
        width: 100%;
        margin-block: 1.5rem;
    }
    /*検索窓*/
    .fs-p-searchForm {
        display: block!important;
    }
    .dc-header__side .dc-header--brand .dc-search__wrapper {
        width: 80%;
    }
    .dc-header__side .dc-header--brand .dc-search__wrapper .dc-search input {
        background: #f7efeb;
        padding-left: 3.5rem;
    }
    .dc-header__side .dc-header--brand .dc-search__wrapper .dc-keywords__list {
        margin-bottom: 2rem;
        justify-content: center;
        flex-wrap: wrap;
        width: 90%;
        margin-inline: auto;
    }
    .dc-header__side .dc-header--brand .dc-search__wrapper .dc-keywords__list a {
        background: none;
        color: #1c1c1c;
        border: solid 1px #1c1c1c;
        border-radius: 100px;
        padding-inline: 20px;
        font-size: 12px;
    }
    .dc-header__side .dc-header--brand .dc-search__wrapper #TARGET::placeholder {
        color: #866761 !important;
        opacity: .5;
    }
    .dc-header__side .dc-header--brand .dc-search__wrapper .dc-layout-head {
        margin-bottom: unset;
    }
    .dc-header__side .dc-header--brand .dc-search__wrapper .dc-search .dc-search-button {
        right: unset;
        left: 2rem;
    }

    .dc-social {
        align-items: center;
        display: flex;
        justify-content: center;
        padding: 0;
        flex-wrap: nowrap;
        gap: 2rem;
        margin-top: 3rem;
    }
    .dc-social li {
        width: 2rem;
    }
    .dc-social li img {
        filter: grayscale(100%) brightness(0.8) contrast(200%);
    }

}





/*footer*/
/* アコーディオン*/
.dc-footer-category-links li:not(:first-child), 
.foot-acd-contents li:first-child {
    margin-top: .7em;
}
.foot-acd-contents li:last-child {
    margin-bottom: 1.7rem;
}
.dc-footer--nav input {
    display: none;
}
.foot-acd-contents {
    height: 0;
    margin: 0;
    overflow: hidden;
    visibility: hidden;
}
.foot-acd-btn {
    display: block;
    margin-bottom: 0;
    padding-left: 2.5rem;
    position: relative;
}
.foot-acd-btn::before {
    content: "＋";
    font-size: .75rem;
    left: 0;
    position: absolute;
}
.foot-acd-tgl:checked + .foot-acd-btn::before {
    content: "－";
}
.foot-acd-tgl:checked + .foot-acd-btn + .foot-acd-contents {
    height: auto;
    overflow: visible;
    visibility: visible;
}


/*new*/
.dc-footer {
    background: #1c1c1c;
    padding-block: 6rem;
}
.dc-footer--nav {
    background: unset;
    padding-block: unset;
    width: 80%;
    margin-inline: auto;
}
.dc-footer--nav .dc-footer__wrapper {
    padding: 0;
    max-width: 85%;
    gap: 5rem;
    position: unset;
    justify-content: space-evenly;
}

.dc-footer-category.snsicon-area {
    flex: unset;
    margin: 0;
}
.footer--logo-sns {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4rem;
    border-bottom: solid 1px #666;
    padding-bottom: 4rem;
    max-width: 85%;
    margin-inline: auto;
}
.dc-footer-category-links.snsicon {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-bottom: 0;
}
.dc-footer-category-links.snsicon li {
    width: 1.7rem;
    margin: 0;
    padding: 0;
}
.dc-footer__brand {
    width: 15rem;
    filter: invert(1);
}
/*コピーライトPC用*/
.dc-copyright {
    text-align: right;
    color: #fff;
    margin-top: 1rem;
    font-size: .85rem;
}
/*/*コピーライトSP用*/
.dc-copyright.newstyle.footer-list-menu-pc-d-none {
    display: none;
}
/*ログインボタンエリア*/
.dc-footer-sub {
    font-size: 1.1rem;
    letter-spacing: .1rem;
    flex: unset;
}
.dc-footer-sub, .dc-footer-user {
    margin: 0;
}
.dc-footer-sub ul:not(last-child) {
    margin-bottom: 2rem;
}
.dc-footer-sub ul li {
    margin-right: 0;
}
.dc-footer-sub a:hover {
    opacity: .7;
    text-decoration-line: none;
}
.dc-footer-user {
    width: unset;
}
.dc-footer-user a {
    border-radius: 100px;
    color: unset;
    padding: 1rem 0;
    font-weight: 600;
    line-height: unset;
}
.dc-footer-user li:nth-child(1) a {
    background: #cb333b;
    color: #fff;
}
.dc-footer-user li:nth-child(2) a {
    background: #fff;
}
.dc-footer-category {
    margin: 0;
    flex: unset;
}
/*PC非表示*/
.dc-footer-sub.pc-d-none {
    display: none;
}
/*返品交換・ご利用ガイド*/
.dc-footer-service-guide, 
.dc-footer-service.gray-box {
    margin: 0;
    padding: 0;
    list-style: none;
}
.dc-footer-service-guide li a {
    text-align: center;
    display: block;
    background: #fff;
    border-radius: 100px;
    padding: .6rem 1rem;
    margin-bottom: 1rem;
    font-weight: 600;
}
/*サービス箇条書き*/
.dc-footer-service.gray-box li {
    margin-bottom: .5rem;
    background: #777;
    padding: .5rem 1.5rem;
    text-align: center;
    color: #fff;
}
.dc-footer-service.gray-box li span {
    font-size: .7rem;
    padding-inline: .2rem;
    font-weight: 500;
}
/*アイコン色*/
.dc-footer-category-links.snsicon li:not(:first-child) {
    filter: invert(1);
}
.dc-footer-category-links.snsicon li:first-child {
    filter: grayscale(100%) brightness(1) contrast(100%);
}

/*カテゴリメニュー*/
.dc-footer-category__head {
    border: none;
    padding-bottom: 1rem;
    font-size: 1.1rem;
    line-height: 1.5;
    padding: 0;
    color: #fff;
}
.dc-footer-category__body ul, 
.dc-footer-category__body ul a {
    color: #999;
    font-size: 1.1rem;
    margin: 0;
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
    .dc-footer--nav .dc-footer__wrapper {
        max-width: unset;
    }
    .footer--logo-sns {
        max-width: unset;
    }
}

@media screen and (max-width:768px) {
    .dc-footer--nav {
        width: 90%;
    }
    .dc-footer-user, .dc-footer-category, .dc-footer-sub.pc-d-none {
        border-bottom: solid 1px #999;
        padding-bottom: 2rem;
    }
    .dc-footer-category.snsicon-area {
        border: none;
        padding: 0;
    }
    .dc-copyright {
        display: none;
    }
    .dc-copyright.newstyle.footer-list-menu-pc-d-none {
        display: block;
        padding-block: 2rem 0;
        margin: 0;
        text-align: center;
    }
    .dc-footer-user {
        padding: 2rem 0;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 1rem;
        border-bottom: solid 1px #999;
        padding-bottom: 1.5rem;
    }
    .dc-footer-user li {
        width: 100%;
    }
    .dc-footer-user a {
        display: block;
    }
    .dc-footer-user a::after {
        display: none;
    }
    /*SP表示*/
    .dc-footer-sub.pc-d-none {
        display: block;
        padding-bottom: 0;
    }
    /*SP非表示*/
    .dc-footer-service-guide.sp-d-none, 
    .dc-footer-service.gray-box.sp-d-none {
        display: none;
    }
    .dc-footer-service.gray-box.pc-d-none {
        display: grid;
        grid-template-columns: repeat(2, 2fr);
        gap: .5rem;
    }
    .dc-footer-service.gray-box.pc-d-none li {
        margin-bottom: 0;
    }
    .footer--logo-sns {
        margin-bottom: 0;
        padding: 0;
        border: none;
    }
    .dc-footer-category-links {
        padding: 0;
    }
    .dc-footer-category__head {
        margin-block: 2rem;
    }
    .dc-footer-service-guide li a {
        padding-block: 1rem;
    }
    .js-dc-accordion__body {
        display: block;
    }
    .js-dc-accordion__toggle:after {
        display: none;
    }




    .dc-footer-category__body.js-dc-accordion__body.flex {
        display: flex;
    }
    .dc-footer-category-links--half {
        width: 100%;
    }
    .dc-footer-category-links li:not(:first-child), 
    .dc-footer-category + .dc-footer-category {
        border: unset;
        margin-right: 0;
    }
    .foot-acd-contents li:first-child {
        margin-top: 1rem;
    }
    .dc-header--primary {
        padding-bottom: 80px;
    }
}


/*footer上部バナー*/
.above-footer-banner-2col {
    width: 90%;
    margin-inline: auto;
}
.above-footer-banner-2col img {
    height: auto;
}
.above-footer-banner-list {
    margin-bottom: 3rem;
}
.above-footer-banner-list p {
    text-align: center;
    margin-block: .8rem 0;
    letter-spacing: .1rem;
    font-size: 1.2rem;
}

@media screen and (min-width: 769px) {
    .above-footer-banner-2col {
        display: flex;
        gap: 3.5rem;
        align-items: flex-start;
        margin-block: 6rem;
        width: 70%;
    }
}