/* カスタマイズ用CSS */
:root {
  --color-primary: #2d4090;
  --font-color-primary: #333030;
}
body {
    font-family: "M PLUS 1", sans-serif;
    font-size: 16px;
    color: var(--font-color-primary);
}

/* インナー */
.ec-layoutRole .ec-layoutRole__contents {
    max-width: 1200px;
    width: 90%;
    justify-content: space-between;
}
/* mainブロック& 右サイドブロック*/
@media only screen and (min-width: 768px) {
    .ec-layoutRole .ec-layoutRole__mainWithColumn {
        max-width: 920px;
    }
    .ec-layoutRole .ec-layoutRole__right {
        max-width: 250px;
    }
}
@media screen and (max-width: 1200px) {
    .ec-layoutRole .ec-layoutRole__contents {
        justify-content: flex-start;
        gap: 10px;
    }
}
/*****************/
/* ヘッダー */
/*****************/
.ec-headerNaviRole_bg {
    background-color: var(--color-primary);
}
.ec-headerNaviRole__logo {
    width: 30%;
    height: auto;
}
.ec-headerNaviRole {
    max-width: 1200px;
    color: var(--font-color-primary);
    padding-left: 8px;
    padding-right: 8px;
}
.ec-headerNaviRole .ec-headerNaviRole__right {
    width: 45%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}
.ec-headerNaviRole .ec-headerNaviRole__left {
    width: 25%;
}
.fa-user:before,
.fa-heart:before,
.fa-lock:before {
    color: #fff;
}
.ec-headerNaviRole .ec-headerNaviRole__search {
    display: block;
}
.ec-headerSearch .ec-headerSearch__category {
    float: left;
    width: 40%;
}
.ec-headerSearch .ec-headerSearch__keyword {
    float: right;
    width: 60%;
    border-bottom-left-radius: inherit;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
    padding: 7px 24px 7px 8px;
}
.ec-cartNavi .ec-cartNavi__icon {
    color: #fff;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before {
    top: 1em;
}
@media only screen and (min-width: 768px) {
    .ec-headerNaviRole {
        padding-bottom: 20px;
    }
    .ec-headerNav .ec-headerNav__itemLink {
        color: #fff;  
    }
    .ec-cartNavi .ec-cartNavi__icon {
        color: black;
    }
    .ec-headerSearch .ec-headerSearch__keyword input[type=search] {
        font-size: 16px;
        padding-right: 35px;
        padding-left: .3em;
    }
    .ec-headerSearch .ec-headerSearch__category .ec-select select {
        max-width: none;
    }
}
@media screen and (max-width: 1200px) {
    .ec-headerNav .ec-headerNav__itemLink {
        display: none;
    }
    .ec-headerNaviRole .ec-headerNaviRole__left {
        width: 35%;
    }
    .ec-headerNaviRole .ec-headerNaviRole__right {
        width: 35%;
    }
}    

@media screen and (max-width: 768px) {
    .ec-headerNaviRole {
        flex-wrap: wrap;
    }
    .ec-headerNaviRole .ec-headerNaviRole__left {
        order: 3; /* 一番後ろに回す */
        width: 95%;
        margin: 0 auto;
    }
        
    .ec-headerNaviRole .ec-headerNaviRole__logo {
        width: 30%;
    }
    .ec-headerNaviRole .ec-headerNaviRole__right {
        width: 60%;
        justify-content: flex-end;
    }
    .ec-headerNaviRole {
        padding-bottom: 14px;
        padding-top: 8px;
    }
    .ec-headerNaviRole .ec-headerNaviRole__search {
        margin-top: 0;
    }
    .ec-headerNav {
        display: flex;
        justify-content: flex-end;
    }
    .ec-headerRole__cart {
        margin-left: 18px;
    }
    .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
        border-top-left-radius: 50px;
        border-bottom-left-radius: 50px;
        border-top-right-radius: unset;
    }
}
@media screen and (max-width: 599px) {
    .ec-headerNav .ec-headerNav__itemIcon {
        margin-right: 0;
    }
    .ec-cartNavi {
        padding-left: 0;
    }
    .ec-headerNaviRole {
        padding: 12px 0 18px;
    }
    .ec-headerNaviRole .ec-headerNaviRole__right {
        width: 50%;
        justify-content: space-evenly;
    }
    .ec-headerNaviRole .ec-headerNaviRole__logo {
        width: 50%;
    }
}

/*****************/
/* フッター */
/*****************/
.ec-footerRole {
    background: var(--color-primary);
}
.ec-footerNavi li + li {
    border-left: 2px solid #fff;
}
.ec-footerNavi .ec-footerNavi__link a {
    text-decoration: none;
    font-size: 18px;
}
.ec-layoutRole__contentBottom ~ .ec-layoutRole__footer .ec-footerRole {
    margin-top: 0;
}
@media screen and (max-width: 900px) {
    .ec-footerNavi .ec-footerNavi__link a {
        font-size: 14px;
    }
}
@media screen and (max-width: 768px) {
    .ec-footerNavi li + li {
        border-left: none;
    }
    .ec-footerRole {
        padding: 0;
    }
    .ec-footerNavi {
        display: flex;
        flex-direction: column;
    }
    .ec-footerNavi .ec-footerNavi__link {
        padding: 10px 0;
        border-bottom: 1px solid #fff;
    }
    .ec-footerRole .ec-footerRole__inner {
        padding: 0;
    }
    .ec-footerNavi .ec-footerNavi__link a {
        border-bottom: none;
        display: block;
        padding: 4px 0;
        font-size: 18px;
    }
}
@media screen and (max-width: 599px) {
    .ec-footerTitle .ec-footerTitle__logo a {
        font-size: 16px;
    }
    .ec-footerNavi .ec-footerNavi__link a {
        font-size: 14px;
    }
}

/*****************/
/* メニューバー */
/*****************/
.ap_cat_navi_wrapper {
    max-width: 1200px;
    margin: 2rem auto;
}
.ap_cat_navi_list {
    display: flex;
    font-size: 16px;
    list-style: none;
    text-align: center;
    justify-content: space-between;
    padding: 0;
}
.ap_cat_navi_list a{
    background: var(--color-primary);
    padding: 1rem 2rem;
    border-radius: 36px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #fff;
}
.ap_cat_navi_list img {
    width: 2.4rem;
    height: auto;
    margin-right: 10px;
}
@media screen and (max-width: 1200px) {
    .ap_cat_navi_list {
        display: flex;
        justify-content: space-around;
        font-size: 13px;
    }
    .ap_cat_navi_list li {
        width: 18%;
    }
    .ap_cat_navi_list li a {
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: .8rem .8rem;
        border-radius: 44px;
    }
    .ap_cat_navi_list li img {
        width: 2rem;
        margin-bottom: 4px;
    }
}
@media screen and (max-width: 870px) {
    .ap_cat_navi_list {
        font-size: 10px;
    }
    .ap_cat_navi_list li img {
        width: 22px;
    }
}
@media screen and (max-width: 599px) {
    .ap_cat_navi_wrapper {
        margin: 0 auto;
    }
    .ap_cat_navi_list {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        background: var(--color-primary);
        font-size: 13px;
    }
    .ap_cat_navi_list li {
        width: 50%;
    }
    .ap_cat_navi_list li:nth-child(odd) {
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
    }
    .ap_cat_navi_list li:nth-child(even) {
        border-top: 1px solid #fff;
    }
    .ap_cat_navi_list li:nth-child(5) {
        width: 100%;
        border-right: unset;
    }
    .ap_cat_navi_list li a {
        flex-direction: row;
        justify-content: center;
        align-items: center;
        border-radius: unset;
        padding: .4rem 0;
    }
}

/**********************/
/* 見出し */
/**********************/

.ap_common_title {
    color: var(--color-primary);
    display: flex;
    font-size: 22px;
    font-weight: bold;
    align-items: center;
    margin-top: 0;
    margin-bottom: 14px;
}
.ap_common_title:before {
    content: "■";
    margin-right: .4rem;
    font-size: 20px;
}
@media screen and (max-width: 768px) {
    .ap_common_title {
        font-size: 20px;
    }
    .ap_common_title:before {
        font-size: 18px;
    }
}
@media screen and (max-width: 599px) {
    .ap_common_title {
        font-size: 16px;
    }
    .ap_common_title:before {
        font-size: 14px;
    }
}
/*****************/
/* スライダー */
/*****************/
.ec-sliderRole {
    padding: 0;
}
.slick-dots li.slick-active button:before {
    background: var(--color-primary);
    opacity: 1;
}
.slick-dots li button:before {
    background: #8dafcb;
}

/*****************/
/* カテゴリナビ*/
/*****************/
.ec-itemNav {
    margin-top: 40px;
    margin-bottom: 30px;
}
.ap_category_list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding-left: 0;
    column-gap: 3.5%;
}
.ap_category_list li {
    width: 31%;
}
.ec-itemNav .ap_category_list_link{
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #ebedf4;
    border-bottom: 1px solid #ebedf4;
    padding: 16px 10px;
    margin-top: -1px;
    align-items: center;
    height: 63px;
    font-weight: normal;
    text-align: left;
}
.ap_category_list img {
    height: 23px;
    width: auto;
}
.ec-categoryNaviRole a {
    color: var(--font-color-primary);
}
.ap_category_list li:hover {
    background-color: #e5e8f1f6;
}
@media only screen and (min-width: 768px) {
    .ec-categoryNaviRole {
        padding: 0;
    }
}
@media screen and (max-width: 1250px) {
    .ap_category_list_link span {
        font-size: 13px;
        padding-right: 10px;
    }
    .ap_category_list img {
        height: 15px;
    }
}
@media screen and (max-width: 768px) {
    .ec-itemNav {
        margin-top: 16px;
    }
    .ec-itemNav .ap_category_list_link {
        /* height: 50px; */
    }
    .ec-itemNav {
        margin-bottom: 28px;
    }
}
@media screen and (max-width: 599px) {
    .ap_category_list li {
        width: 48%;
    }
}

/*****************/
/* 新着商品 */
/*****************/
.ap_new_item_wrapper {
    padding: 0;
}
.ec-newItemRole .ec-newItemRole__listItem a {
    color: var(--font-color-primary)!important;
}
.ec-newItemRole .ec-newItemRole__listItem {
    margin: 0 0 60px!important;
}
.ec-newItemRole .ec-newItemRole__listItemTitle {
    font-size: 18px;
    font-weight: normal;
}
.ec-newItemRole .ec-newItemRole__listItemPrice {
    font-size: 18px;
}
@media only screen and (min-width: 768px) {
    .ec-newItemRole .ec-newItemRole__list {
        flex-wrap: wrap;
        gap: 2%;
    }
    .ec-newItemRole .ec-newItemRole__listItem {
        width: 32%;
    }
    .ec-newItemRole {
        padding: 40px 0 60px;
    }
}
/*****************/
/* お知らせ */
/*****************/
.ec-layoutRole__contentBottom {
    background: #ebedf4;
    padding: 50px;
}
.ec-newsRole {
    padding: 0;
}
.ec-newsRole .ec-newsRole__newsTitle {
    color: var(--font-color-primary);
}
.ec-newsRole .ec-newsRole__newsDescription {
    font-size: 16px;
    color: var(--font-color-primary);
    line-height: 1.5;
}
.ec-newsRole .ec-newsRole__newsItem {
    border-bottom: 1px solid var(--color-primary);
}
.ec-newsRole .ec-newsRole__newsCloseBtn {
    background:  var(--color-primary);
    width: 26px;
    height: 26px;
}
.ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i {
    transform: rotate(90deg) translateY(0.5px)
}

@media only screen and (min-width: 768px) {
    .ec-newsRole {
        padding: 0;
    }
    .ec-newsRole .ec-newsRole__newsHeading {
        align-items: center;
    }
    .ec-newsRole .ec-newsRole__news {
        border: none;
        padding: 0;
    }
    .ec-newsRole .ec-newsRole__newsDate {
        font-size:18px;
    }
    .ec-newsRole .ec-newsRole__newsTitle {
        font-size:18px;
    }
}

/**********************/
/* 商品画像サイズの調整 */
/**********************/
.ec-sliderItemRole .slideThumb img,
.ec-shelfGrid .ec-shelfGrid__item img,
.ec-cartNaviIsset .ec-cartNaviIsset__cartImage img, 
.ec-cartRole img, 
.ec-imageGrid .ec-imageGrid__img img, 
.ec-favoriteRole .ec-favoriteRole__item img,
.ap_product_detail_slide_item img,
.ec-newItemRole__listItem img {
    object-fit: contain;
    aspect-ratio: 1 / 1;
}

/**********************/
/* ボタン */
/**********************/
.ec-blockBtn {
    height: 48px;
    line-height: 48px;
}
/* カート入れるボタン、送信ボタン */
.ec-blockBtn--action {
    border-radius: 31px;
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    height: 48px;
    line-height: 48px;
    margin-top: 14px;
    font-size: 16px;
}
.ap_product_detail_add_btn {
    height: 48px;
    line-height: 48px;
    margin-top: 42px;
}
.ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action:hover {
    color: var(--color-primary);; 
    background-color: #fff;
    border-color: var(--color-primary);
}
.ec-blockBtn--action:disabled, .ec-blockBtn--action.disabled {
    border-color: #464654;
    color: #464654;
    background-color: #fff;
}
@media only screen and (min-width: 768px) {
    .ec-productRole .ec-productRole__btn {
        min-width: 300px;
    }
}
@media screen and (max-width: 1024px) {
    .ec-productRole .ec-productRole__btn {
        width: 100%;
        min-width: auto;
    }
}
@media screen and (max-width: 599px) {
    .ec-blockBtn--action {
        font-size: 14px;
    }
}

/* キャンセルボタン */
.ec-blockBtn--cancel {
    border-radius: 31px;
    height: 48px;
    line-height: 48px;
}
/* 数量ボタン */
.ec-numberInput input[type=number] {
    border: 1px solid var(--color-primary);
    margin-right: 8px;
    margin-left: 8px;
    font-weight: bold;
    color: var(--color-primary);
    margin-bottom: 0;
    border-radius: 6px;
}
.ec-numberInput button[type=button] {
    height: 40px;
    border: 1px solid var(--color-primary);
    width: 40px;
}
.ap_btn_plus {
  display: inline-block;
  vertical-align: middle;
  color: var(--color-primary);
  line-height: 1;
  width: 2px;
  height: 14px;
  background: currentColor;
  border-radius: 1px;
  position: relative;
  top: -2px;
}
.ap_btn_plus::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  transform: rotate(90deg);
}
.ap_btn_minus {
  display: inline-block;
  vertical-align: middle;
  color: var(--color-primary);
  line-height: 1;
  width: 10px;
  height: 2px;
  border-radius: 1px;
  top: -2px;
  position: relative;
  background: currentColor;
}
.ec-numberInput {
    margin-top: 1rem;
    display: flex;
    align-items: center;
}
.ap_product_list_quantity {
    justify-content: space-around;
}
.ap_quantity_btn {
    font-size: 15px;
}
@media screen and (max-width: 1300px) {
    .ap_quantity_btn {
        display: none;
    }
}
@media screen and (max-width: 1024px) {
    .ec-numberInput input[type=number] {
        max-width: 50px;
        margin-right: 2px;
        margin-left: 2px;
    }
    .ec-numberInput button[type=button] {
        width: 34px;
    }
}
/* お気に入りボタン */
.ap_product_detail_favo_btn {
    height: 48px;
    line-height: 48px;
    border-radius: 31px;
    background: #0bb0d1;
    border-color: #0bb0d1;
}
.ap_product_detail_favo_btn:hover {
    background: #fff;
    border-color: #0bb0d1;
    color: #0bb0d1;
}
.btn-check:checked + .ap_product_detail_favo_btn,
.btn-check:active + .ap_product_detail_favo_btn,
.ap_product_detail_favo_btn:active,
.ap_product_detail_favo_btn.active,
.show > .ap_product_detail_favo_btn.dropdown-toggle {
    background-color: #0bb0d1;
    border-color: #0bb0d1;
    color:#fff;
}
.ap_product_detail_favo_btn:active:focus,
.ap_product_detail_favo_btn.active:focus {
    box-shadow: 0 0 0 0.25rem #03b3d6;
}

/* ソートなど */
.ec-input select,
.ec-birth select,
.ec-select select,
.ec-halfInput select,
.ec-numberInput select,
.ec-zipInput select,
.ec-telInput select {
    border-radius: 8px;
}
@media only screen and (min-width: 768px) {
    .ec-input select,
    .ec-birth select,
    .ec-select select,
    .ec-halfInput select
    .ec-numberInput select,
    .ec-zipInput select,
    .ec-telInput select {
        font-size: 1rem;
    }
    .ec-productRole .ec-productRole__actions .ec-select select {
        min-width: 300px;
        max-width: 300px;
    }
}
@media screen and (max-width: 1024px) {
    .ec-productRole .ec-productRole__actions .ec-select select {
        min-width: 100%;
        max-width: 100%;
    }
}

/* カートへすすむボタン */
.ec-inlineBtn--action {
    border-radius: 6px;
    margin-left: 6px;
}
/* 買い物を続けるボタン */
.ec-inlineBtn--cancel {
    border-radius: 6px;
}
/* キャンセルボタン */
.ec-cartNavi--cancel {
    border-radius: 31px;
}
/* 品切れボタン */
.ec-shelfGrid .ec-shelfGrid__item .ap_product_out_of_stock_btn {
    margin-top: auto;
}
/*  */
.btn-check:checked + .ec-blockBtn--action,
.btn-check:active + .ec-blockBtn--action,
.ec-blockBtn--action:active,
.ec-blockBtn--action.active,
.show > .ec-blockBtn--action.dropdown-toggle {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color:#fff;
}
/* レジへすすむボタン */
.ec-blockBtn--action:hover {
    color: var(--color-primary); 
    background-color: #fff;
    border-color: var(--color-primary);
}
.ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action:hover {
    color: var(--color-primary);
}
.btn-check:focus + .ec-blockBtn--action, .ec-blockBtn--action:focus {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color:#fff;
    box-shadow: 0 0 0 0.25rem rgba(46, 37, 179, 0.89);
}
.ec-blockBtn--action:active:focus,
.ec-blockBtn--action.active:focus {
    box-shadow: 0 0 0 0.25rem rgba(46, 37, 179, 0.89);;
}
/*****************/
/* 商品一覧画面 */
/*****************/
.ec-topicpath {
    padding: 10px 0!important;
}
.ec-topicpath .ec-topicpath__item a,
.ec-topicpath .ec-topicpath__item--active a,
.ec-searchnavRole .ec-searchnavRole__infos,
.ec-shelfRole {
    color: var(--font-color-primary);
}
.ap_product_detail_select {
    margin-bottom: 0;
}
.ec-numberInput {
    text-align: center;
}
.ap_product_list_service {
    justify-content: space-between;
}
.ap_product_list_spacer {
    margin-top: auto;
}
.ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn {
    margin-top: 0;
}
.ec-pager .ec-pager__item a,
.ec-pager .ec-pager__item a:hover {
    color: var(--color-primary);
}
.ec-pager .ec-pager__item--active{
    background: #293e964d;
    color: #fff;
}
.ec-searchnavRole .ec-searchnavRole__infos {
    align-items: center;
}
.ec-shelfRole {
    font-size: 18px;
}
.ec-topicpath .ec-topicpath__item--active {
    font-weight: normal;
}
@media only screen and (min-width: 768px) {
    .ec-shelfGrid .ec-shelfGrid__item {
        padding: 0 16px;
        width: 33%;
    }
}
@media screen and (max-width: 768px) {
    .ec-shelfGrid {
        justify-content: space-between;
    }
    .ec-shelfGrid .ec-shelfGrid__item {
        width: 48%;
    }
    .ec-searchnavRole .ec-searchnavRole__counter {
        margin-bottom: 0;
    }
    .ec-searchnavRole .ec-searchnavRole__infos {
        flex-direction: row;
        padding: 12px 0 0;
    }
    .ec-topicpath {
        border-top: none;
        font-size: 14px;
    }
}
@media screen and (max-width: 599px) {
    .ec-searchnavRole .ec-searchnavRole__infos {
        flex-direction: column;
    }
    .ec-searchnavRole .ec-searchnavRole__counter {
        margin-bottom: 10px;
    }
    .ec-shelfRole {
        padding: 0;
        font-size: 16px;
    }

}

/*****************/
/* 詳細画面 */
/*****************/
.ec-productRole {
    color: var(--font-color-primary);
}
.ec-headingTitle {
    margin: 0 0 12px;
}
.ec-price .ec-price__price {
    padding: 0;
}
.ec-productRole .ec-productRole__title .ec-headingTitle {
    font-weight: bold;
}
.ec-productRole .ec-productRole__code {
    border-bottom: none;
    font-size: 16px;
    padding: 0;
    margin-bottom: 16px;
}
.ec-productRole .ec-productRole__tags {
    padding-bottom: 0;
    border-bottom: none;
}
.ec-productRole .ec-productRole__category {
    border-bottom: none;
}
.ap_product_detail_text_center {
    text-align: left;
}
.ap_product_detail_servive_btn {
    margin-top: 130px;
}
.ec-productRole .ec-productRole__actions {
    padding:0;
    margin-top: 12px;
}
.ec-shelfGrid__item a > p:nth-of-type(2){
    margin-bottom: 10px;
}
.price02-default {
    text-align: center;
}
.ec-productRole__actions {
    margin-top: 10px;
}
.ec-sliderItemRole .slideThumb {
    width: 32%;
}
.ec-sliderItemRole .slideThumb img {
    width: 100%;
}
.ec-productRole .ec-productRole__priceRegular {
    padding-top: 0;
    margin-top: 16px;
}
.ap_product_detail_topicpath {
    border-bottom: 1px solid #ccc;
}
.ap_product_detail_description {
    margin-top: 0;
}
@media only screen and (min-width: 768px) {
    .ec-productRole .ec-productRole__price {
        margin-top: 16px;
        margin-bottom: 15px;
        padding: 0;
        border-bottom: none;
    }
    .ec-productRole .ec-productRole__description {
        padding-right: 0;
        line-height: 26px;
        margin-bottom: 16px;
        font-size: 16px;
        margin-top: 25px;
    }
    .ec-grid2 {
        margin-top: 35px;
    }
    .ec-sliderItemRole .item_nav {
        gap: 2%;
    }
    .ec-productRole .ec-productRole__title .ec-headingTitle {
        font-size: 25px;
    }
    .ec-price .ec-price__price {
        font-size: 22px;
    }
    .ec-price .ec-price__tax {
        font-size: 15px;
    }
}
@media screen and (max-width: 767px) {
    .ec-productRole {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .ec-productRole .ec-productRole__description {
        margin-top: 20px;
    }
}
@media screen and (max-width: 599px) {
    .ec-productRole .ec-productRole__title .ec-headingTitle {
        font-size: 20px;
    }
}

/*****************/
/* ショッピングカート */
/*****************/
.ec-progress .is-complete .ec-progress__number {
    background: var(--color-primary);
}
.ec-progress .is-complete .ec-progress__label {
    color: var(--color-primary);
}
.ec-cartNaviNull .ec-cartNaviNull__message {
    background: var(--color-primary);
}
.ec-alert-warning {
    background: var(--color-primary);
}
.ap_cart_saraya_text {
    margin-top: 15px;
}
.ec-cartRole .ec-cartRole__total {
    padding-bottom: 15px;
}
.ap_cart_title,
.ap_cart_contents{
    padding-left: 0;
    padding-right: 0;
}

@media screen and (max-width: 599px) {
    .ap_cart_form {
        padding-left: 0;
        padding-right: 0;
    }
}

/*****************/
/* PRバナー */
/*****************/
.ap_banner_item {
    width: 100%;
    margin-bottom: 34px;
}
.ap_banner_content ul {
    margin: 0;
    padding: 0;
}
.ap_banner_content li {
    list-style: none;
}
@media screen and (max-width: 767px) {
    .ap_banner_content ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .ap_banner_content li {
        width: 48%;
    }
    .ap_banner {
        margin: 0 auto;
        width: 90%;
    }
}
@media screen and (max-width: 599px) {
    .ap_banner_content li {
        width: 100%;
    }
}

/*****************/
/* contents_bottom */
/*****************/
.ec-layoutRole__contentBottom {
    padding: 35px 0;
}

/*****************/
/* ヘルプページなど */
/*****************/
.ap_single_title h1{
    text-align: center;
    font-weight: bold;
    font-size: 24px;
    margin-top: 30px;
    margin-bottom: 60px;
}
.ap_single_wrapper {
    max-width: 1000px;
}
.ec-role {
    color: var(--font-color-primary);
}
@media screen and (max-width: 599px) {
    .ap_single_title h1 { 
        font-size: 20px;
    }
}
/*****************/
/* 当サイトについて/使い方ガイド */
/*****************/
.ap_about_table {
    margin-bottom: 35px;
}
.ap_about_table th {
    padding: 1.5rem 2rem;
    text-align: center;
    font-weight: 600;
    min-width: 210px;
    border-bottom: 1px solid #ccc;
    background: #e5e5e54d;
}
.ap_about_table tr:last-child th {
    border-bottom: none;
}
.ap_about_table td {
    padding: 1.5rem 2rem;
    border-bottom: 1px solid #ccc;
    line-height: 1.7;
}
.ap_about_table tr:last-child td {
    border-bottom: none;
}
.ap_about_table a[href^="tel:"] {
    pointer-events: none;
    color: var(--font-color-primary);
}
.ap_about_text {
    font-size: 18px;
    line-height: 2;
}
@media screen and (max-width: 768px) {
    .ap_about_table,
    .ap_about_table tbody,
    .ap_about_table tr,
    .ap_about_table th,
    .ap_about_table td {
        display: block;
        width: 100%;
    }
    .ap_about_table {
        margin-bottom: 10px;
    }
    .ap_about_table th {
        border-bottom: none;
        text-align: left;
        padding: 10px 18px;
    }
    .ap_about_table td {
        border-bottom: none;
    }
    .ap_about_text {
        font-size: 16px;
    }
}

/*****************/
/* 利用規約 */
/*****************/
.ap_agreement_contents {
    margin-top: 60px;
    margin-bottom: 70px;
    line-height: 2.5;
}
.ap_agreement_contents h2 {
    margin-bottom: 15px;
    font-size: 20px;
}
.ap_agreement_text_ijou {
    text-align: right;
}

@media screen and (max-width: 768px) {
    .ap_agreement_contents {
        line-height: 1.8;
    }
    .ap_agreement_contents h2 {
        margin-bottom: 15px;
        font-size: 18px;
    }
}
/*****************/
/* 私たちについて*/
/*****************/
.ap_about_us_contents {
    margin: 70px auto 90px;
}
.ap_about_us_contents section {
    margin: 70px auto 60px;
}
.ap_about_us_contents h2 {
    font-size: 22px;
    margin-bottom: 34px;
    padding: 6px 13px;
    border-left: 5px solid var(--color-primary);
}
.ap_about_us_action ul {
    line-height: 3;
}
.ap_about_us_table th {
    padding: 1.5rem 2rem;
    text-align: center;
    font-weight: 600;
    width: 24%;
    border-bottom: 1px solid #ccc;
    background: #e5e5e54d;
}
.ap_about_us_table tr:last-child th {
    border-bottom: none;
}
.ap_about_us_table td {
    padding: 1.5rem 2rem;
    border-bottom: 1px solid #ccc;
    line-height: 1.7;
}
.ap_about_us_table tr:last-child td {
    border-bottom: none;
}

.ap_about_us_action p,
.ap_about_us_strength p {
    line-height: 2.4;
    
}
.ap_about_us_action_text01{
    margin-bottom: 24px;
}
.ap_about_us_action_text02{
    margin-top: 24px;
}
@media screen and (max-width: 768px) {
    .ap_about_us_table,
    .ap_about_us_table tbody,
    .ap_about_us_table tr,
    .ap_about_us_table th,
    .ap_about_us_table td {
        display: block;
        width: 100%;
    }
    .ap_about_us_table th {
        border-bottom: none;
        text-align: left;
        padding: 10px 18px;
    }
    .ap_about_us_table td {
        border-bottom: none;
    }
    .ap_about_us_action p,
    .ap_about_us_strength p {
        line-height: 1.8;
    }
    .ap_about_us_action ul {
        line-height: 2.4;
    }
}

/*****************/
/* お問い合わせ */
/*****************/
/* 共通 */
.ec-contactRole {
    color: var(--font-color-primary);
}
.ec-off1Grid {
    margin-top: 54px;
    margin-bottom: 70px;
}
.ap_contact_title {
    font-size: 20px;
    margin-top: 28px;
    display: flex;
    align-items: center;
}
.ap_contact_title:before {
    content: "■";
    margin-right: .4rem;
    font-size: 23px;
}
@media screen and (max-width: 599px) {
    .ap_contact_title {
        font-size: 18px;
    }
    .ap_contact_title:before {
        font-size: 20px;
    }
}
/* 入力画面 */
.ap_contact_checkbox_wrap02 {
    display: inline-flex;
    align-items: baseline;
}
.ap_contact_checkbox_wrap01 label,
.ap_contact_checkbox_wrap02 label {
    margin-left: 8px;
    line-height: 1.7;
}
.ap_contact_dd input{
    margin-bottom: 0;
}
.ap_contact_dd p {
    margin-top: 0;
    margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
    .ec-borderedDefs dt {
        padding-right: 13px;
    }
}

/*****************/
/* ログイン画面など */
/*****************/
@media only screen and (min-width: 768px) {
    .ec-pageHeader h1, .ec-pageHeader .h1 {
        border-top: none;
        border-bottom: none;
        margin-top: 14px;
        font-size: 26px;
        font-weight: normal;
        text-align: center;
    }
}

/*****************/
/* 新規会員登録 */
/*****************/
.ap_entry_dd input{
    margin-bottom: 0;
}
.ap_entry_dd p {
    margin-top: 0;
    margin-bottom: 0;
}
.ec-zipInputHelp a {
    vertical-align: middle;
}

/*****************/
/* 注文ページ */
/*****************/
.ap_delivery_options {
    display: none;
}

/*****************/
/* カート */
/*****************/

/*****************/
/* 共通 */
/*****************/
.ap_none_border{
    border: 0px;
}