/* カスタマイズ用CSS */
/*全体*/
* {
    font-family: dnp-shuei-mgothic-std, sans-serif;

    font-weight: 400;

    font-style: normal;
}

.show-pc {
    display: none;
}
.show-sp {
    display:block;
}

@media (min-width: 768px) {
    .show-pc {
        display: block !important;
    }
    .show-sp {
        display: none !important;
    }
}

a {
    text-decoration: none !important;
    color: #664733;
}

a:hover {
    color: #664733;
}

ul {
    list-style: none;
    padding-left: 0;
}

.flex {
    display: flex;
}

/*ヘッダー*/
.ec-layoutRole__header {
    margin-bottom: 2rem;
}

.ec-headerNaviRole img {
    width: 15rem;
}
.ec-headerNav .ec-headerNav__itemLink {
    margin-right: 10px;
}

.header {
    padding-bottom: 20px;
    padding-top: 20px;
}

@media only screen and (max-width: 768px) {
    .ec-headerNav__item:nth-of-type(3) {
        display: none !important;
    }
    .ec-cartNavi {
        padding: 10px 0 0 15px;
    }
    .header img {
        margin-left: 2.5rem;
    }
    .ec-headerNavSP {
        top: 20px;
    }
}

/*フッター*/
.ec-footerRole {
    background: #41BAA4;
    border-top: none;
}

.ec-footerRole .ec-footerRole__inner img {
    width: 15rem;
}
.ec-footerTitle__copyright {
    padding-top: 2rem;
}

@media only screen and (max-width: 768px) {
    .ec-footerRole .ec-footerRole__inner img {
        width: 10rem;
    }
}

/*フッターガイド*/
.ec-footerGuide {
    padding: 30px 0;
    background: #2f2f2f;
    margin-top: 50px;
}
.ec-footerGuide__wrap {
    display: flex;
}

.ec-footerGuide__item:first-child {
    border-left: none;
}
.ec-footerGuide__item h5 {
    color: #FFF;
}
.ec-footerGuide__item {
    flex: 0 0 33.3%;
    align-items: center;
    border-left: solid 1px rgba(255, 255, 255, 0.2);
    padding: 0 20px;
    color: rgb(170, 170, 170);
}
@media only screen and (max-width: 580px) {
    .ec-footerGuide__wrap {
        flex-direction: column;
    }

    .ec-footerGuide__item:first-child {
        border-top: none;
    }

    .ec-footerGuide__item {
        flex: 0 0 33.3%;
        align-items: center;
        border-top: solid 1px rgba(255, 255, 255, 0.2);
        padding: 20px;
    }
}

/*トップカテゴリー*/
.ec-categoryRole .ec-secHeading__ja {
    padding-top: 0.5rem;
}

@media only screen and (min-width: 768px) {
    .ec-categoryRole .ec-categoryRole__list {
        flex-wrap: wrap;
    }
}

@media only screen and (min-width: 768px) {
    .ec-categoryRole .ec-categoryRole__listItem:not(:last-of-type) {
        margin-right: 0;
    }
}

@media only screen and (min-width: 768px) {
    .ec-categoryRole .ec-categoryRole__listItem {
        width: 100%;
    }
}

/*トップ新着商品*/
.item_title_box {
    border-top: solid 1px #41BAA4;
    border-bottom: solid 1px #41BAA4;
    margin-top: 1.5rem;
    padding: 1rem 0;
}

.ec-newItemRole .ec-newItemRole__listItemHeading {
    margin-top: calc(25% - 20px);
}

/*トップお知らせ*/
.ec-newsRole .ec-newsRole__news {
     border: 0;
     padding: 20px 0;
}

/*下層共通*/
.ec-role {
    padding-top: 3rem;
}

/*プライバシーポリシー*/
.privacy .ec-off1Grid__cell p{
    padding-left: 1em;
    line-height: 3rem;
}

.privacy .ec-heading-bold {
    padding-left: 1em;
}

.ec-heading-bold {
    background: #f6f6f6;
    padding: 0.5rem;
    font-size: 16px;
}

.ec-off1Grid__cell {
    font-size: 14px;
}

@media only screen and (min-width: 768px) {
    .ec-pageHeader h1 {
        font-size: 24px;
        border-bottom: 0;
    }
}

/*特定商取引法に基づく表記*/
.indent li {
    padding-left:1em;
    text-indent:-1em;
}

.ec-borderedDefs {
    border-top: 1px solid #DCD8C9;
}
.ec-borderedDefs dl {
    border-bottom: 1px solid #DCD8C9;
}

@media only screen and (min-width: 768px) {
    .ec-borderedDefs dt {
        padding-top: 8px;
    }
    .ec-borderedDefs dd {
        line-height: 2.5;
    }
    .help .ec-borderedDefs dl {
        padding: 15px;
    }
}

/*マイページログイン*/
.ec-login {
    background: #FFFFFF;
}
input[type="password"] ,input[type="email"]  {
    border: 1px #DCD9C9 solid;
    border-radius: 0;
}
.form-check-label {
    font-weight: normal;
    font-size: 14px;
}
.my_page_login_msg {
    padding-top: 3rem;
}
.ec-link {
    color: #664733;
}
.ec-login__link {
    font-size: 14px;
}

/*パスワードの再発行*/
.ec-forgotRole__form {
    padding-top: 2rem;
}
.ec-para-normal {
    line-height: 3rem;
}

/*お問い合わせ(入力ページ)*/
.ec-zipInputHelp span {
    color: #664733;
}

/*お問い合わせ(確認ページ)*/
.ec-contactConfirmRole .ec-borderedDefs {
    margin-top: 3rem;
    margin-bottom: 5rem;
}

.ec-contactConfirmRole p {
    line-height: 2.5rem;
}

.ec-contactConfirmRole {
    padding-top: 3rem;
}

@media only screen and (min-width: 768px) {
    .ec-contactConfirmRole .ec-borderedDefs dl {
        padding: 15px;
    }
}

/*お問い合わせ完了ページ*/
.ec-reportDescription {
    text-align: left;
    font-size: 14px;
    line-height: 3rem;
}

.ec-pageHeader h1 {
    border-bottom: 0;
    border-top: 0;
}

.ec-contactCompleteRole .ec-reportHeading {
    margin: 0;
}

.ec-newItemRole .ec-newItemRole__listItemTitle {
    margin: 0;
}

/*会員登録(入力ページ)*/
.entry .ec-blockBtn--cancel {
    margin-top: 3rem;
}

/*会員登録(確認ページ)*/
.entry_confirm .ec-borderedDefs {
    margin-top: 3rem;
    margin-bottom: 5rem;
}

.entry_confirm p {
    line-height: 2.5rem;
}

@media only screen and (min-width: 768px) {
    .entry_confirm .ec-borderedDefs dl {
        padding: 15px;
    }
}

/*現在のカゴの中*/
.ec-cartHeader .ec-cartHeader__label {
    background: #ffffff;
    border-bottom: solid 1px #DCD8C9;
}
.ec-cartRow li {
    border-bottom: solid 1px #DCD8C9 !important;
}
.ec-cartHeader__label:nth-of-type(2) {
    text-align: left !important;
}
.ec-cartRole .ec-blockBtn--action {
    margin-right: 1rem;
}

@media only screen and (min-width: 768px) {
    .ec-cartRole .ec-cartRole__actions {
        width: 50%;
    }
}
@media only screen and (max-width: 768px) {
    .ec-cartRow  {
        font-size: 14px;
    }
}

/*ご注文手続き*/
.ec-orderRole .ec-rectHeading h2 {
    background: #ffffff;
    padding-left: 0;
    border-bottom: solid 1px #DCD8C9;
    margin-top: 0;
}
.ec-orderRole p {
    line-height: 2;
}

.ec-orderRole .ec-imageGrid {
    border-top: 0;
}

.ec-orderRole .ec-borderedList:first-child {
    border-top: 1px dotted #ccc;
}

/*MYページ/退会手続き(入力ページ)*/
.ec-withdrawRole__description {
    line-height: 2;
}

/*MYページ/退会手続き(確認ページ)*/
.ec-withdrawConfirmRole__description {
    line-height: 2;
}


/*MYページ*/
.mypage .ec-role {
    padding-left: 0;
    padding-right: 0;
}
@media only screen and (max-width: 768px) {
    .ec-historyRole__detail {
        padding-top: 2rem;
    }
}

/*MYページ/お届け先一覧*/
.ec-addressRole .ec-addressRole__actions {
    border-bottom: 0;
}

/*MYページ/お届け先追加*/
.mypage .ec-blockBtn--cancel {
    margin-top: 3rem;
}

/*MYページ/購入履歴詳細*/
.mypage_back {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

@media only screen and (min-width: 768px) {
    .mypage_back a {
        margin-left:16px;
    }
}

/*商品一覧*/
.ec-shelfGrid__item-image img {
    width: 100%;
}
.ec-topicpath__item a,.ec-searchnavRole__counter {
    color: #664733 !important;
}
#page_product_list .ec-select select {
    border: solid 1px #41BAA4;
}

.ec-shelfGrid .ec-shelfGrid__item-image {
    height: auto;
}
.ec-topicpath {
    border-top: 0;
    padding: 10px 20px;
}

.ec-productRole__description {
    overflow-wrap: anywhere;
}

@media only screen and (min-width: 768px) {
    .ec-topicpath {
        padding: 10px 0;
    }
    .ec-productRole__description {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/*商品詳細ページ*/
.ec-price {
    color: #A0A0A0;
    font-size: 20px;
}
.ec-price .ec-price__price {
    padding: 0;
}
.ec-productRole .ec-productRole__tags {
    border-bottom: 0;
}
.ec-productRole .ec-productRole__description {
    margin-top: 16px;
    margin-bottom: 16px;
    line-height: 2;
}
.ec-select select, .ec-numberInput .form-control {
    background-color: #ffffff;
    border: solid 1px #BAB65C;
    border-radius: 0;
}
.product_page .msg {
    padding-top: 3rem;
    line-height: 2;
    font-size: 14px;
}

@media only screen and (min-width: 768px) {
    .ec-productRole .ec-productRole__price {
        border-bottom: 0;
    }
    .ec-productRole .ec-productRole__title .ec-headingTitle {
        font-size: 24px;
    }
}

/*商品購入ログイン*/
.ec-guest__inner p {
    line-height: 2;
}

/*非会員購入情報入力*/
.ec-RegisterRole__actions {
    margin-top: 3rem;
}

/*商品購入/お届け先の複数指定*/
.ec-AddAddress .ec-AddAddress__info {
    text-align: left;
}
.ec-AddAddress {
    padding: 0 20px;
}
.ec-AddAddress .ec-AddAddress__selectNumber input {
    background-color: #ffffff;
    border: solid 1px #BAB65C;
    border-radius: 0;
}

@media only screen and (max-width: 768px) {
    .ec-AddAddress .ec-AddAddress__selectNumber {
        margin-left: 0px;
    }
}

/*商品購入/お届け先の追加*/
#page_shopping_shipping_edit .ec-registerRole {
    padding-left: 0;
    padding-right: 0;
}

/*下層ページサイド*/
.category_vertical .ec-headerSearch .ec-headerSearch__keyword {
    border-radius: 30px !important;
    width: 100% !important;
}

.category_vertical .ec-secHeading .ec-secHeading__en {
    font-size: 14px;
    font-weight: normal;
    letter-spacing: .1em;
    color: #664733;
}

.category_vertical .ec-secHeading {
    margin-top: 30px;
    margin-bottom: 30px;
}

.category_vertical .ec-role {
    padding: 0 20px !important;
}

.ec-categoryRole {
    padding: 3rem 0;
}

.category_vertical {
    margin-top: 15px;
}

.category_vertical .ec-secHeading, .ec-categoryRole .ec-category_side__list {
    margin-left: 1rem;
}

.category_vertical .ec-categoryRole__listItem a {
    font-size: 14px;
}

@media only screen and (min-width: 768px) {
    .category_vertical .ec-categoryRole__list {
        flex-wrap: wrap;
    }
}

@media only screen and (min-width: 768px) {
    .category_vertical .ec-categoryRole__listItem:not(:last-of-type) {
        margin-right: 0;
    }
}

@media only screen and (min-width: 768px) {
    .category_vertical .ec-categoryRole__listItem {
        width: 100%;
    }
}