@charset "UTF-8";
/* =========================================================================================================================================== */
/*
/* マイページ関連のデザインファイル
/*
/* =========================================================================================================================================== */


/* =========================================================================================================================================== */
/* ログイン画面
/* =========================================================================================================================================== */
@media all {
    /* ログイン */
    .ec-login {
        padding-bottom: 50px;
        border-bottom: solid 1px;
    }
    
    .ec-login__text {
        width: 100%;
        min-height: 100px;
        border: solid 1px var(--black);
        padding: 20px;
        font-size: 18px;
        line-height: calc(21 / 18);
        letter-spacing: normal;
        margin-bottom: 52px;
    }
    
    .ec-login__input {
        padding-bottom: 60px;
    }
    
    .ec-login__input-row {
        display: grid;
        grid-template-columns: 140px 1fr;
        padding-bottom: 40px;
    }
    
    .ec-login__input-row label {
        font-size: 18px;
        letter-spacing: normal;
        line-height: 40px;
    }
    
    .ec-login__input-row input {
        width: 100%;
        height: 40px;
        border: solid 1px var(--black);
        padding: 0 10px;
        font-size: 16px;
    }
    
    .ec-checkbox {
        padding-left: 140px;
        margin-top: -15px;
        cursor: pointer;
    }
    
    .ec-checkbox label {
        font-size: 18px;
        line-height: 21px;
        letter-spacing: normal;
        cursor: pointer;
    }
    
    .ec-login__actions button {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        max-width: 300px;
        height: 50px;
        border: none;
        background-color: var(--brown);
        color: var(--white);
        margin: 0 auto;
        font-family: var(--font-mincho);
        font-size: 20px;
        font-weight: var(--font-weight__semibold);
        margin-bottom: 28px;
    }
    
    .ec-login__link {
        width: 100%;
        max-width: 300px;
        margin: 0 auto;
        padding-bottom: 15px;
    }
    
    .ec-login__link a {
        font-size: 18px;
        letter-spacing: normal;
        font-weight: var(--font-weight__bold);
        line-height: 22px;
        display: inline-block;
        border-bottom: solid 2px;
        color: var(--green);
    }


    /* ゲスト購入 */
    .ec-guest {
        padding-top: 70px;
        padding-bottom: 160px;
    }
    
    .ec-guest__header {
        font-size: 33px;
        font-family: var(--font-shippori);
        font-weight: var(--font-weight__bold);
        text-align: center;
        line-height: calc(38 / 33);
        letter-spacing: normal;
        color: var(--green);
        padding-bottom: 55px;
    }
    
    .ec-guest__actions {
        padding-bottom: 95px;
    }
    
    .ec-guest__actions a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        max-width: 300px;
        height: 50px;
        border: none;
        background-color: var(--brown);
        color: var(--white);
        margin: 0 auto;
        font-family: var(--font-mincho);
        font-size: 20px;
        font-weight: var(--font-weight__semibold);
    }
    
    .ec-guest__back a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        max-width: 300px;
        height: 50px;
        border: none;
        background-color: var(--black);
        color: var(--white);
        margin: 0 auto;
        font-family: var(--font-mincho);
        font-size: 20px;
        font-weight: var(--font-weight__semibold);
    }
}
@media screen and (max-width: 767px){
}


/* =========================================================================================================================================== */
/* 新規会員登録完了
/* =========================================================================================================================================== */
@media all {
    .ec-registerCompleteRole {
        padding-bottom: 150px;
    }

    .ec-reportText {
        width: 100%;
        min-height: 100px;
        border: solid 1px var(--black);
        padding: 20px;
        font-size: 18px;
        line-height: calc(21 / 18);
        letter-spacing: normal;
        margin-bottom: 52px;
    }
    
    .ec-reportDescription {
        display: flex;
        justify-content: center;
        font-size: 18px;
        line-height: calc(37 / 18);
        margin-bottom: 100px;
    }
}

@charset "UTF-8";
/* =========================================================================================================================================== */
/*
/* マイページ関連のデザインファイル
/*
/* =========================================================================================================================================== */

/* =========================================================================================================================================== */
/* 共通パーツ
/* =========================================================================================================================================== */
/* ヘッダー部 */
@media all {
    /* メッセージ */ 
    .ec-welcomeMsg {
        width: 100%;
        display: flex;
        justify-content: space-between;
        font-size: 18px;
    }
    .ec-welcomeMsg p {
        margin-bottom: 30px;
    }
    .ec-welcomeMsg p a {
        color: var(--color-gray);
    }
    .ec-welcomeMsg p a span {
        color: var(--color-red);
    }

    /* マイページメニュー */
    .ec-navlistRole {
    }
    .ec-navlistRole ul {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .ec-navlistRole ul li {
        width: calc((100% - 52px) / 5);
    } 
    .ec-navlistRole ul li a {
        display: flex;
        width: 100%;
        height: 48px;
        justify-content: center;
        align-items: center;
        text-align: center;
        color: var(--black);
        border: solid 1px var(--black);
        line-height: 20px;
        font-size: 16px;
        letter-spacing: normal;
    }
    .ec-navlistRole ul li a span {
        display: none;
    }
    .ec-navlistRole ul li.active a {
        color: var(--brown);
        border-color: var(--brown);
    }
}
@media screen and (max-width: 767px){
    /* メッセージ */ 
    .ec-welcomeMsg p {
        font-size: 12px;
        margin-bottom: 17px;
    }

    /* マイページメニュー */
    .ec-navlistRole ul li {
        width: calc((100% - 9px) / 2);
        margin-bottom: 7px;
        font-size: 12px;
    }
    .ec-navlistRole ul li a br {
        display: none;
    }   
    .ec-navlistRole ul li a span {
        display: inline;
    }
}

/* 商品一覧 */
@media all {
    .mypage .ec-imageGrid {
        display: flex;
    }
    .mypage .ec-imageGrid__img {
        width: 150px;
    }
    .mypage .ec-imageGrid__img img {
        width: 100%;
    }
    
    .mypage .ec-imageGrid__content {
        width: calc(100% - 150px);
        padding-left: 22px;
    }
    
    .mypage .ec-imageGrid__name {
        line-height: 24px;
        letter-spacing: 0.05em;
        padding-bottom: 29px;
        margin-bottom: 0;
        font-size: 16px;
    }
}

/* 戻るボタン */
.mypage .ec-inlineBtn {
    display: flex;
    width: 100%;
    max-width: 220px;
    height: 39px;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background-color: var(--color-gray);
    color: white;
    border-radius: 19.5px;
    font-size: 12px;
}

/* =========================================================================================================================================== */
/* マイページログイン
/* =========================================================================================================================================== */
@media all {
    #page_mypage_login .ec-layoutRole__main {
        background-color: var(--color-yellow);
        overflow: hidden;
    }

    #page_mypage_login .ec-loginRole {
        margin-top: 18.4px;
        border: solid 1px var(--color-lightgray);
        margin-bottom: 68px;
    }
}
@media screen and (max-width: 1023px){
    #page_mypage_login .ec-loginRole {
        border: none;
        margin-bottom: 31.7px;
    }
    #page_mypage_login .ec-loginRole .inner .ec-login .ec-login__text p {
        padding-top: 0;
    }    
    #page_mypage_login .ec-loginRole .inner .ec-guest {
        padding-bottom: 0;
    }
}

/* =========================================================================================================================================== */
/* パスワード再発行（入力ページ）
/* =========================================================================================================================================== */
@media all {
    #page_forgot .ec-layoutRole__main {
        padding-bottom: 100px;
        background-color: var(--color-yellow);
    }

    .ec-forgotRole__form {
        width: calc(100% - 72px);
        max-width: var(--content-width-1);
        margin: 0 auto;
    }

    .ec-forgotRole__form .ec-forgotRole__intro p {
        margin: 0;
        line-height: 32px;
    }
    .ec-forgotRole__form .ec-forgotRole__intro p br {
        display: none;
    }

    .ec-forgotRole__form .ec-borderedDefs {
        width: 100%;
        max-width: 410px;
        margin: 0;
        margin-top: 21.3px;
    }
    .ec-forgotRole__form .ec-borderedDefs dl {
        margin-bottom: 18.8px;
    }

    .ec-forgotRole__form .ec-cartRole__actions {
        width: 100%;
        max-width: unset;
    }
    .ec-forgotRole__form .ec-cartRole__actions .ec-blockBtn--action {
        width: 87px;
        height: 36px;
        border: none;
        border-radius: 18px;
        letter-spacing: 0.05em;
    }
    .ec-forgotRole__form .ec-cartRole__actions .ec-blockBtn--action:hover {
        opacity: 0.7;
    }
}
@media screen and (max-width: 767px){
    #page_forgot .ec-layoutRole__main {
        padding-bottom: 40px;
    }

    .ec-forgotRole__form .ec-forgotRole__intro p {
        line-height: 22px;
        margin-bottom: 22px;
    }
    .ec-forgotRole__form .ec-forgotRole__intro p br {
        display: block;
    }

    .ec-forgotRole__form .ec-borderedDefs {
        margin-top: 44px;
    }
    .ec-forgotRole__form .ec-borderedDefs dl {
        margin-bottom: 31.7px;
    }

    .ec-forgotRole__form .ec-cartRole__actions .ec-blockBtn--action {
        width: 269px;
        height: 45px;
        border-radius: 22.5px;
    }
}

/* =========================================================================================================================================== */
/* パスワード再発行（完了ページ）
/* =========================================================================================================================================== */
@media all {
    #page_forgot_complete .ec-layoutRole__main {
        padding-bottom: 53px;
        background-color: var(--color-yellow);
    }
    .ec-forgetCompleteRole {
        width: calc(100% - 72px);
        max-width: var(--content-width-1);
        margin: 0 auto;
    }
    .ec-forgetCompleteRole .ec-forgotRole__intro {
        max-width: 530px;
    }
    .ec-forgetCompleteRole .ec-forgotRole__intro p {
        margin: 0;
        line-height: 22px;
        letter-spacing: 0.05em;
    }
    .ec-forgetCompleteRole .ec-forgotRole__intro p br {
        display: none;
    }   
    #page_forgot_complete .ec-forgetCompleteRole .ec-forgotRole__intro {
        max-width: unset;
    }
    .ec-forgetCompleteRole .ec-forgotRole__actions {
        text-align: right;
        max-width: 530px;
        padding-top: 28px;
        letter-spacing: 0.05em;
    }
    .ec-forgetCompleteRole .ec-forgotRole__actions a {
        color: var(--color-red);
    } 
}
@media screen and (max-width: 767px){
    .ec-forgetCompleteRole .ec-forgotRole__intro p br {
        display: block;
    }
}

/* =========================================================================================================================================== */
/* パスワード再発行（再設定）
/* =========================================================================================================================================== */
@media all {
    #page_forgot_reset .ec-layoutRole__main {
        background-color: var(--color-yellow);
        padding-bottom: 48px;
    }

    #page_forgot_reset .ec-borderedDefs {
        max-width: var(--content-width-1);
    }

    #page_forgot_reset .ec-borderedDefs dl {
        max-width: 720px;
    }

    #page_forgot_reset #password_second {
        margin-top: 20px;
    }
    #page_forgot_reset #password_second::placeholder {
        font-size: 14px;
    }
}
@media screen and (max-width: 767px){

    #page_forgot_reset .ec-borderedDefs dl dt .ec-label {
        margin-bottom: 8px;
    }
    #page_forgot_reset .ec-input {
        margin-top: 0;
    }

    #page_forgot_reset .ec-registerRole__actions button {
        height: 45px;
        border-radius: 22.5px;
        max-width: 270px;
        margin-top: 40px;
    }
}

/* =========================================================================================================================================== */
/* ログアウト
/* =========================================================================================================================================== */
@media all {
    .page_mypage_logout .ec-layoutRole__main {
        padding-bottom: 53px;
        background-color: var(--color-yellow);
    }

    .ec-logoutRole .ec-logout__intro p {
        text-align: center;
        margin-bottom: 40.7px;
    }

    .ec-logoutRole .ec-logout__actions .ec-logout__link a {
        width: 100%;
        max-width: 269px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 53px;
        border-radius: 26.5px;
        letter-spacing: 0.05em;
        color: var(--color-white);
        margin-bottom: 17.2px;
    }
    .ec-logoutRole .ec-logout__actions .ec-logout__link .ec-blockBtn--action {
        background-color: var(--color-red);
    }
    .ec-logoutRole .ec-logout__actions .ec-logout__link .ec-blockBtn--cancel {
        background-color: var(--color-gray);
    }
}
@media screen and (max-width: 1023px){
    .ec-logoutRole .ec-logout__actions .ec-logout__link a {
        height: 45px;
        margin-bottom: 22px;
    }
}

/* =========================================================================================================================================== */
/* 購入履歴
/* =========================================================================================================================================== */
@media all {
    .ec-mypageRole .ec-para-normal {
        font-size: 16px;
        margin-top: 50px;
        background-color: var(--gray);
        line-height: 20px;
        padding: 16px 15px 14px;
    }
    .ec-mypageRole .ec-para-normal.nohistroy {
        border-bottom: solid 1px var(--gray2);
        padding-bottom: 11px;
    }
    .ec-mypageRole .ec-historyRole {
        padding-top: 22px;
        padding-bottom: 27px;
        border-bottom: solid 1px var(--gray2);
    }
    .ec-mypageRole .ec-historyRole.last {
        border-bottom: solid 1px var(--color-red);
    }
    .ec-mypageRole .ec-historyRole__contents {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    .ec-mypageRole .ec-historyRole__header {
        width: 220px;
    }
    .ec-mypageRole .ec-historyListHeader__date {
        line-height: 21px;
        letter-spacing: normal;
    }
    .ec-mypageRole .ec-historyListHeader .ec-definitions {
        display: flex;
        justify-content: flex-start;
        margin: 0;
        line-height: 21px;
        letter-spacing: normal;
    }
    .ec-mypageRole .ec-historyListHeader .ec-definitions dt {
        line-height: 21px;
    }
    .ec-mypageRole .ec-historyListHeader .ec-definitions dt::after {
        content: "：";
    }
    .ec-mypageRole .ec-historyListHeader .ec-definitions dd {
        line-height: 21px;
    }
    .ec-mypageRole p.ec-historyListHeader__action {
        margin: 0;
        padding-top: 35px;
    }
    .ec-mypageRole p.ec-historyListHeader__action a {
        font-size: 16px;
        width: 110px;
        height: 26px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        background-color: var(--brown);
        color: var(--white);
        margin: 0;
        border-radius: revert-layer;
    }
    .ec-mypageRole .ec-historyRole__detail {
        width: calc(100% - 220px);
    }

    .ec-mypageRole .ec-historyRole__actionSp {
        display: none;
        margin: 0;
        padding-top: 28.5px;
    }
    .ec-mypageRole .ec-historyRole__actionSp a {
        font-size: 12px;
        width: 84px;
        height: 22px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        border-radius: 11px;
        background-color: var(--color-red);
        color: var(--color-white);
    }
}
@media screen and (max-width: 767px){
    .ec-mypageRole .ec-para-normal {
        margin-top: 22.8px;
    }
    .ec-mypageRole .ec-historyRole {
        padding-bottom: 33px;
    }
    .ec-mypageRole .ec-historyRole__header {
        width: 100%;
    }
    .ec-mypageRole p.ec-historyListHeader__action {
        display: none;
    }
    .ec-mypageRole .ec-historyRole__detail {
        width: 100%;
    }
    .ec-mypageRole .ec-historyRole__detail .ec-imageGrid {
        padding-top: 15px;
        padding-bottom: 0;
    }

    .ec-mypageRole .ec-historyRole__actionSp {
        display: block;
    }
    #page_mypage_history.mypage .ec-inlineBtn {
        max-width: 270px;
        height: 45px;
        border-radius: 22.5px;
        font-size: 16px;
    }
}

/* =========================================================================================================================================== */
/* 購入履歴詳細
/* =========================================================================================================================================== */
@media all {
    .mypage .ec-orderRole {
        display: flex;
        width: 100%;
        flex-wrap: wrap;
    }
    
    /* 注文詳細 */
    .mypage .ec-orderRole__detail {
        width: calc(100% - 260px);
        padding-top: 76px;
        padding-right: 32px;
    }
    .mypage .ec-orderOrder .ec-definitions {
        display: flex;
        justify-content: start;
        line-height: 25px;
        flex-wrap: wrap;
    }
    .mypage .ec-orderOrder .ec-definitions dt:after {
        content: "：";
    }
    .mypage .ec-orderOrder .ec-definitions dt {
        line-height: 25px;
    }
    .mypage .ec-orderOrder .ec-definitions dd {
        line-height: 25px;
    }

    /* 商品一覧 */
    .mypage .ec-orderOrder .ec-imageGrid {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        margin-bottom: 20px;
    }
    .mypage .ec-orderOrder .ec-orderShelf {
        padding-top: 15px;
    }
    
    /* 配送先情報 */
    .mypage .ec-orderDelivery__title {
        margin-top: 20px;
        margin-bottom: 14px;
        padding-top: 0;
    }
    #page_mypage_history .ec-orderRole__detail .ec-orderDelivery__item {
        padding-top: 0;
    }
    .mypage .ec-orderDelivery__address {
        padding-top: 7px;
        padding-left: 0;
    }
    .mypage .ec-orderDelivery__address p {
        margin: 0;
        line-height: 25px;
    }
    .mypage .ec-orderDelivery__shipping {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 25px;
    }
    .mypage .ec-orderDelivery__shipping_name {
        width: 100%;
        display: flex;
    }
    .mypage .ec-orderDelivery__shipping dt {
        font-weight: var(--font-weight-medium);
        padding-right: 8px;
    }
    .mypage .ec-orderDelivery__shipping_date {
        display: flex;
    }
    .mypage .ec-orderDelivery__shipping_date dd {
        padding-right: 30px;
    }
    .mypage .ec-orderDelivery__shipping_time {
        display: flex;
    }
    
    /* 支払い情報 */
    .mypage .ec-orderPayment p {
        margin-top: 14px;
        margin-bottom: 14px;
    }

    /* お問合せ */
    .mypage .ec-orderConfirm p {
        margin-top: 14px;
        margin-bottom: 14px;
    }
    
    /* メール配信履歴 */
    .mypage .ec-orderMail__time {
        margin-top: 14px;
        margin-bottom: 13px;
    }
    .mypage .ec-orderMail__link {
        margin-bottom: 13px;
    }
    .mypage .ec-orderMail__link a {
        color: var(--color-red);
        cursor: pointer;
    }
    .mypage .ec-orderMail__body {
        display: none;
    }

    /* サマリー（金額） */
    .mypage .ec-orderRole__summary {
        width: 260px;
        padding-top: 46px;
    }
    .mypage .ec-totalBox {
        background-color: var(--gray);
        padding: 8px 12px 34px;
    }
    .mypage .ec-totalBox__spec {
        display: flex;
        justify-content: space-between;
        font-size: 12px;
        margin-bottom: 13px;
    }
    .mypage .ec-totalBox__spec dt {
        line-height: 22px;
    }
    .mypage .ec-totalBox__spec dd {
        letter-spacing: 0.05em;
        font-size: 16px;
        line-height: 22px;
    }
    .mypage .ec-totalBox__spec dd span {
        font-size: 12px;
    }
    .mypage .ec-totalBox__total {
        border-top: solid 1px var(--black);
        padding-top: 12.5px;
        display: flex;
        justify-content: flex-end;
        font-size: 12px;
    }
    .mypage .ec-totalBox__total dt {
        line-height: 25px;
        padding-right: 10px;
    }
    .mypage .ec-totalBox__total dd {
        font-size: 18px;
        line-height: 25px;
        letter-spacing: 0.05em;
    }
    .mypage .ec-totalBox__total dd span {
        font-size: 12px;
    }
    .mypage .ec-totalBox__paymentTotal {
        display: flex;
        justify-content: flex-end;
        font-size: 12px;
        padding-top: 12px;
        letter-spacing: normal;
    }
    .mypage .ec-totalBox__paymentTotal dt {
        line-height: 25px;
        padding-right: 10px;
    }
    .mypage .ec-totalBox__paymentTotal dd {
        font-size: 18px;
        line-height: 25px;
        color: var(--color-red);
        letter-spacing: 0.05em;
    }
    .mypage .ec-totalBox__paymentTotal dd span {
        font-size: 12px;
    }
    .mypage .ec-blockBtn--action.load-overlay {
        display: block;
        width: 100%;
        height: 39px;
        background-color: var(--brown);
        color: var(--white);
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 12px;
        margin-top: 18px;
    }
    #add_shopping_noshi_history_area .ec-orderDelivery__title {
        margin-bottom: 0;
        margin-top: 27px;
    }
    #add_shopping_noshi_history_area .ec-definitions--soft {
        display: flex;
        justify-content: space-between;
    }
    
    #add_shopping_noshi_history_area .ec-definitions--soft dt {
        font-weight: var(--font-weight-medium);
        line-height: 25px;
        width: 180px;
    }
    
    #add_shopping_noshi_history_area .ec-orderDelivery__address {
        padding-bottom: 27px;
    }
    
    #add_shopping_noshi_history_area .ec-definitions--soft dd {
        width: calc(100% - 180px);
    }
}
@media screen and (max-width: 767px){
    .mypage .ec-orderRole__detail {
        width: 100%;
        padding-top: 17px;
        padding-right: 0;
    }
/*    
    .mypage .ec-orderDelivery__address {
        font-size: 12px;
    }
    
    .mypage .ec-orderDelivery__shipping {
        font-size: 12px;
    }
*/
    .mypage .ec-orderDelivery__shipping_name {
        padding-bottom: 18px;
    }
/*    
    .mypage .ec-orderPayment p:last-child {
        font-size: 12px;
    }
    
    .mypage .ec-orderConfirm p:last-child {
        font-size: 12px;
    }
    
    .mypage .ec-orderMail {
        font-size: 12px;
    }
*/    
    .mypage .ec-orderMail__time {
        margin-bottom: 5px;
    }
    
    .mypage .ec-orderRole__summary {
        width: 100%;
    }
    
    .mypage .ec-totalBox {
        padding: 25px 9px;
    }
    
    .mypage .ec-totalBox__spec {
        padding-left: 12px;
        margin-bottom: 11px;
    }
    
    .mypage .ec-blockBtn--action.load-overlay {
        max-width: 270px;
        margin: 0 auto;
        margin-top: 25px;
        height: 45px;
        border-radius: 22.5px;
        font-size: 16px;
    }
    
    .mypage .ec-inlineBtn {
        margin-top: 24px;
    }
    #add_shopping_noshi_history_area .ec-definitions--soft dd {
        width: auto;
    }
    
    #add_shopping_noshi_history_area .ec-definitions--soft {
        justify-content: start;
    }
    
    #add_shopping_noshi_history_area .ec-definitions--soft dt {
        width: auto;
        padding-right: 20px;
    }
}


/* =========================================================================================================================================== */
/* お届け先一覧
/* =========================================================================================================================================== */
@media all {
    .mypage .ec-addressList__item {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        width: calc(100% - 72px);
        max-width: var(--content-width-1);
        margin: 0 auto;
        padding-top: 28.5px;
        padding-bottom: 22.5px;
        border-top: solid 1px var(--color-red);
    }
    .mypage .ec-addressList__item:last-child {
        border-bottom: solid 1px var(--color-red);
    }
    
    /* 削除ボタン */
    .mypage .ec-addressList__remove {
        width: 26px;
        /* padding: 0 3px; */
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    /* お届け先情報 */
    .mypage .ec-addressList__remove .ec-icon {
        width: 20px;
    }
    .mypage .ec-addressList__address {
        flex: 1 0 0%;
        padding-left: 33px;
        line-height: 25px;
    }

    /* 変更ボタン */    
    .mypage .ec-addressList__action {
        width: 128px;
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }
    .mypage .ec-addressList__action .ec-inlineBtn {
        width: 66px;
        height: 32px;
        font-size: 16px;
        background-color: var(--color-red);
    }

    /* 追加ボタン */    
    .mypage .ec-addressRole__actions {
        width: calc(100% - 72px);
        max-width: var(--content-width-1);
        margin: 0 auto;
        padding-left: 3px;
        padding-top: 21.5px;
    }    
    .mypage .ec-addressRole__actions .ec-inlineBtn {
        margin-right: 0;
        background-color: var(--color-red);
        font-size: 16px;
    }
}
@media screen and (max-width: 767px){
    .mypage .ec-addressList__item {
        padding-top: 24.2px;
        padding-bottom: 21.5px;
    }
    
    /* お届け先情報 */
    .mypage .ec-addressList__address {
        padding-left: 15px;
    }
    
    /* 変更ボタン */      
    .mypage .ec-addressList__action {
        width: 100%;
        justify-content: flex-end;
    }
    .mypage .ec-addressList__action .ec-inlineBtn {
        margin-right: 0;
        margin-top: 11.3px;
    }
}


/* =========================================================================================================================================== */
/* お届け先追加・変更
/* =========================================================================================================================================== */
@media all {
    .mypage .ec-borderedDefs {
        padding-top: 27.5px;
    }

    .mypage .ec-RegisterRole__actions > * {
        max-width: unset;
    }

    .mypage .ec-RegisterRole__actions .ec-blockBtn--cancel {
        width: 220px;
        height: 39px;
        border: none;
        -webkit-appearance: none;
        background-color: var(--color-red);
        border-radius: 19.5px;
    }
}

/* =========================================================================================================================================== */
/* お気に入り商品
/* =========================================================================================================================================== */
@media all {
    .mypage .ec-favoriteRole {
        padding-top: 45px;
        background-color: var(--color-yellow);
        margin-top: 33px;
        padding-bottom: 10px;
    }
    .mypage .ec-favoriteRole__detail {
        width: calc(100% - 72px);
        margin: 0 auto;
        max-width: var(--content-width-4);
    }
    .mypage .ec-shelfGrid__item {
        position: relative;
    }
    #page_mypage_favorite .ec-layoutRole__footer {
        background-color: var(--color-yellow);
    }
}
@media screen and (max-width: 767px){
    .mypage .ec-favoriteRole {
        padding-top: 20px;
    }
}

/* =========================================================================================================================================== */
/* 退会手続き
/* =========================================================================================================================================== */
@media all {
    .mypage .ec-withdrawRole {
        text-align: center;
        padding-top: 37px;
        width: calc(100% - 50px);
        margin: 0 auto;
    }
    .mypage .ec-withdrawRole__icon img {
        width: 68px;
        padding-bottom: 18.5px;
    }

    .mypage .ec-withdrawRole__title {
        font-size: 25px;
        font-weight: var(--font-weight-extra-bold);
        color: var(--color-red);
        line-height: 35px;
        margin-bottom: 22.1px;
    }

    .mypage .ec-withdrawRole__description {
        line-height: 25px;
        letter-spacing: 0.05em;
        margin-bottom: 20px;
    }
    .mypage .ec-withdrawRole__description br.sp {
        display: none;
    }

    .mypage .ec-withdrawRole__buttonDiside button {
        width: 269px;
        height: 53px;
        border: none;
        -webkit-appearance: none;
        border-radius: 26.5px;
        background-color: var(--color-red);
        color: var(--color-white);
    }
    .mypage .ec-withdrawRole__buttonDiside button:hover {
        opacity: 0.7;
        text-decoration: underline;
    }
    .mypage .ec-withdrawRole__buttonCancel a {
        width: 269px;
        height: 53px;
        margin: 0 auto;
        margin-top: 29px;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: var(--color-gray);
        color: var(--color-white);
        border-radius: 26.5px;
    }
}
@media screen and (max-width: 767px) {
    .mypage .ec-withdrawRole__title {
        font-size: 20px;
    }
    .mypage .ec-withdrawRole__description br.sp {
        display: block;
    }
}