@charset "utf-8";
/* カスタマイズ用CSS */
/*基本情報 --------------------*/
html, body, h1, h2, h3, h4, h5, h6 a, p, span, em, small, strong, sub, sup, mark, del, ins, strike, abbr, dfn, blockquote, q, cite, code, pre, ol, ul, li, dl, dt, dd, div, section, article, main, aside, nav, header, hgroup, footer, img, figure, figcaption, address, time, audio, video, canvas, iframe, details, summary, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
}
html {
  font-size: 62.5%;
}
body {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #2f2a25;
  font-family: 'Noto Sans JP', sans-serif;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  body {
    font-family: 'Noto Sans JP', sans-serif;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
    line-height: 1.4;
  }
}
* {
  box-sizing: border-box;
}
*:focus {
  outline: none;
}
/*ヘッダー --------------------*/
/*商品検索、ログイン、カート --------- */
.ec-layoutRole__header {
  padding-bottom: 5px;
  border-bottom: 25px solid #de0421;
}
.ec-headerNaviRole {
  max-width: 2000px;
  width: 100%;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 0;
}
.ec-headerNaviRole .ec-headerNaviRole__left, .ec-headerNaviRole .ec-headerNaviRole__right {
  width: 100%;
}
.ec-headerNaviRole .ec-headerNaviRole__left h1 a {
  font-size: 3.0rem;
  color: #000;
  display: inline-block;
  margin: 0;
  text-decoration: none;
  font-weight: bold;
}
.ec-headerTitle__title {
  display: flex;
  align-items: center;
}
.ec-cartNaviNull .ec-cartNaviNull__message {
  background-color: #31708f;
  font-weight: 500;
}
/*logo--------- */
h1 {
  margin: 0 !important;
}
/*検索--------- */
aside.c-sidebar {
  max-width: 600px;
  width: 100%;
}
.ec-layoutRole {
  background: #efefef;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
  border-radius: 0;
  background: #de0421;
}
.ec-headerSearch .ec-headerSearch__category {
  width: 37%;
  margin-right: 10px;
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
  max-width: 165px;
  height: 36px;
}
.ec-headerSearch .ec-headerSearch__keyword {
  width: 60%;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
  border-radius: 0;
}
ul.head-btn-wrap {
  display: flex;
  justify-content: space-around;
  align-items: center;
}
ul.head-btn-wrap li {
  width: 130px;
  padding: 0 10px;
  border-right: 1px solid #777;
  text-align: center;
}
ul.head-btn-wrap li a {
  display: block;
}
ul.head-btn-wrap li img {
  width: 30px;
}
ul.head-btn-wrap li span {
  font-size: 1.2rem;
}
@media screen and (max-width:767px) {
  .ec-headerNavSP {
    right: 3px;
    left: auto;
  }
  .ec-headerNaviRole {
    padding-left: 10px;
  }
  .ec-drawerRoleClose {
    right: 3px;
    left: auto;
  }
}
@media screen and (max-width:480px) {
  .ec-drawerRole {
    width: 100%;
    transform: translateY(-1000px);
  }
  .ec-drawerRole.is_active {
    z-index: 900;
  }
  .ec-headerNavSP {
    z-index: 800;
  }
  .ec-drawerRole .ec-headerLinkArea {
    background: #000;
  }
}
.ec-drawerRole {
  background: #000;
}
/*フッター --------------------*/
.ec-layoutRole__footer {
  margin-top: 100px;
}
.footer {
    position: relative;
    padding-top: 60px;
    padding-bottom: 70px;
    text-align: center;
    border-top: 5px solid #7e7979;
    background: #c5c5c5;
}
.footer .page-top {
  position: absolute;
  top: -22px;
  left: 0;
  width: 100%;
  text-align: center;
}
.footer-logo {
  margin-bottom: 35px;
}
.footer-logo a {
  display: inline-block;
  max-width: 216px;
  width: 50%;
}
.footer-logo a img {
  width: 100%;
}
.footer-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 750px;
  width: 100%;
  margin: 0 auto 18px;
}
.footer-nav li {
  font-size: 1.6rem;
  line-height: 1;
}
.footer-nav li a:hover {
  opacity: 1;
}
.footer-nav li:hover {
  color: #89662d;
}
.footer-nav.sub-nav {
  max-width: 490px;
  margin-bottom: 25px;
}
.footer-nav.sub-nav li {
  font-size: 1.3rem;
}
.footer .more-btn {
  margin-bottom: 40px;
}
.footer-info {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 640px;
  width: 100%;
  margin: 0 auto 22px;
}
.footer-info li {
  font-size: 1.2rem;
  line-height: 1;
  padding: 0 16px;
  border-right: 1px solid #fff;
}
.footer-info li:last-of-type {
  border: none;
}
.footer-info li a:hover {
  opacity: 1;
  color: #89662d;
}
.copyright {
  font-size: 1.1rem;
}
@media screen and (max-width:767px) {
  .footer-logo {
    margin-bottom: 50px;
  }
 .footer-logo a {
    width: 100%;
    max-width: 350px;
}
  .footer-nav {
    flex-direction: column;
  }
  .footer-nav li {
    font-size: 3.6vw;
    margin-bottom: 3.6vw;
  }
  .footer-nav.sub-nav {
    margin-bottom: 40px;
  }
  .footer-nav.sub-nav li {
    font-size: 3vw;
  }
  .footer-info {
    flex-direction: column;
  }
  .footer-info li {
    font-size: 3vw;
    margin-bottom: 2.6vw;
    border-right: none;
  }
  .footer-info li:nth-of-type(2) a {
    color: #89662d;
  }
  .copyright {
    font-size: 3vw;
  }
}
@media screen and (max-width:480px) {
  .footer-nav li {
    font-size: 1.4rem;
    margin-bottom: 1.8rem;
  }
  .footer-nav.sub-nav {
    margin-bottom: 30px;
  }
  .footer-nav.sub-nav li {
    font-size: 1.6rem;
  }
  .footer-info li {
    font-size: 1.4rem;
    margin-bottom: 1rem;
  }
  .footer .more-btn {
    margin-bottom: 30px;
  }
  .copyright {
    font-size: 1.3rem;
  }
  .ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
    font-weight: 400;
  }
  .ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading, .ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
    font-size: 1.4rem;
  }
}
/*コンテンツ（共通） --------------------*/
/*初期タグ --------- */
.front-h0 {
  font-size: 0;
}
a {
  color: #000;
  text-decoration: none;
}
a:hover {
  opacity: 0.8;
  color: #31708f;
}
img {
  max-height: 100%;
  max-width: 100%;
  vertical-align: bottom;
}
.object-fit-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
ul, ol, li {
  list-style: none;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
td, th {
  padding: 0;
}
video, iframe {
  max-width: 100%;
  border: none;
}
a:focus, a:hover {
  color: #31708f;
  text-decoration: none;
}
.ec-layoutRole .ec-layoutRole__contents {
  max-width: 1450px;
  justify-content: space-between;
  clear: both;
  padding: 30px 0;
}
.c-wide {
  padding-left: 30px;
  padding-right: 30px;
}
.c-wrap-white {
  padding: 10px 15px;
  margin-bottom: 15px;
  background: #fff;
}
@media screen and (max-width:1400px) {
  .ec-layoutRole .ec-layoutRole__contents {
    padding: 60px 15px;
  }
}

@media screen and (max-width: 767px) {
  .c-wrap-white {
  padding: 20px 15px 10px;
}
}
/*余白調整
--------- */
.contents-wrap {
  padding-left: 15px;
  padding-right: 15px;
}
.page-size {
  /* max-width: 1400px; */
  max-width: 1080px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .contents-wrap {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media screen and (max-width: 480px) {
  .contents-wrap {
    padding-left: 10px;
    padding-right: 10px;
  }
}
/*文字装飾 ---------
*/
.small-red {
  font-size: 1.4rem;
  color: #31708f;
}
.txt-left {
  text-align: left;
}
.txt-bold {
  font-weight: bold;
}
.fs14 {
  font-size: 1.4rem;
}
.ec-link {
  color: #31708f;
}
.ec-link:hover {
  color: #440201;
}
/*レスポンシブ --------- */
.sp, .sp-only {
  display: none;
}
.pc-only {
  display: block;
}
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block;
  }
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
    width: 100%;
  }
}
.mt100 {
  margin-top: 100px;
}
/*内部スクロール --------- */
.scorll-target {
  padding-top: 64px;
  margin-top: -64px;
}
/*サイドコンテンツ --------------------*/
.ec-layoutRole .ec-layoutRole__left {
  display: block;
  width: 20%;
}
.ec-layoutRole .ec-layoutRole__mainWithColumn {
  width: 78%;
}
.ec-layoutRole__left {
  margin-bottom: 100px;
}
.c-sidebar__category {
  margin-top: 15px;
}
.c-sidebar__category h3 {
  margin-bottom: 30px;
  padding-bottom: 15px;
  border-bottom: 1px solid #cbcbcb;
  font-size: 1.8rem;
  font-weight: 600;
}
@media screen and (max-width: 959px) {
  .c-sidebar__category h3 {
    margin-bottom: 15px;
    padding-bottom: 10px;
    font-size: 1.84rem;
  }
}
@media screen and (max-width: 820px) {
  .c-sidebar__category h3 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .ec-layoutRole .ec-layoutRole__left {
    display: none;
  }
  .ec-layoutRole .ec-layoutRole__mainWithColumn {
    width: 100%;
  }
}
/*カテゴリー--------- */
.ec-itemNav__nav {
  display: block;
}
ul.ec-itemNav__nav-custum li, ul.ec-itemNav__nav-custum-category li {
  text-align: left;
}
ul.ec-itemNav__nav-custum-category li::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105";
  color: #31708f;
}
ul.ec-itemNav__nav-custum-category li ul li {
  text-align: left;
  margin-left: 20px;
}
ul.ec-itemNav__nav-custum, .mb-category {
  margin-bottom: 30px;
}
/*メインコンテンツ
--------------------*/
.ec-layoutRole__mainBottom .ec-eyecatchRole__image {
  max-width: 600px;
}
.ec-layoutRole__mainBottom .ec-blockBtn--top, .ec-cartRole {
  margin-top: 60px;
}
/* TOP：NEWS--------- */
@media only screen and (min-width: 768px) {
  .ec-newsRole {
    padding: 0;
  }
  .ec-newsRole .ec-newsRole__news-wrap {
    padding: 5px 0 30px;
  }
  .ec-newsRole .ec-newsRole__news {
    border: none;
    padding: 0;
    max-width: 1450px;
    margin: 0 auto;
  }
  .ec-newsRole .ec-newsRole__newsItem {
    padding: 10px 0;
  }
}
.ec-inlineBtn--top {
  float: right;
  margin-top: 10px;
  background-color: #000;
  border-color: #000;
}
.ec-newsRole .ec-newsRole__newsTitle {
  color: #000;
}
/* TOP：タイルカテゴリ---------
*/
.c-main-category .nav-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-top: -30px;
}
.c-main-category .nav-wrap a {
  padding: 15px;
  border: 1px solid #d7d7d7;
  margin: 3px;
}
.c-main-category .nav-wrap ul li {
  float: left;
}
.c-main-category .nav-wrap ul li a {
  padding: 15px;
  display: block;
}
.c-main-category .nav-wrap ul li a:hover, .c-main-category .nav-wrap a:hover {
  background: #f5dfdf;
}
@media only screen and (max-width: 767px) {
.c-main-category .nav-wrap a,
  .c-main-category .nav-wrap ul li a{
    padding: 7px;
    font-size: 1.4rem;
}

}
/* TOP：注目のトピックス--------- */
.c_flex-toptopics {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  /*margin-bottom: 100px;*/
}
.c_box_fixed--item {
  display: flex;
  justify-content: space-between;
  width: 48%;
}
.c_box_fixed--item .txt-inner {
  padding: 10px 5px;
  margin-right: 30px;
  max-width: 300px;
}
img.c_box_fixed--img {
  max-width: 245px;
  width: 100%;
  margin-bottom: 10px;
  object-fit: cover;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .c_flex-toptopics {
  margin-bottom: 30px;
}
  .c_box_fixed--item {
    width: 100%;
  }
  .c_box_fixed--item .txt-inner {
    max-width: 200px;
  }
}
/* キャンペーン・おすすめ情報 --------- */
.p-pick-up-list {
  position: relative;
}
.p-pick-up-list__item {
  margin: 0 2.5rem;
}
.p-pick-up-item__img {
  margin: 0 auto;
  max-width: 52rem;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-pick-up-item__img {
    max-width: 35rem;
  }
}
@media screen and (max-width: 375px) {
  .p-pick-up-item__img {
    max-width: 30rem;
  }
}
.p-pick-up-item__img::before {
  content: "";
  display: block;
  padding-top: 67.307692%;
  background: #000;
}
.p-pick-up-item__img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  z-index: 10;
}
.p-pick-up-item__heading {
  padding: 1.5rem 0;
  max-width: 32rem;
  width: 100%;
  line-height: 1;
  letter-spacing: 0.05em;
  font-weight: 600;
  /*color: #fff; text-align: center; border-radius: 3rem; background: linear-gradient(to
right, #ebb3ad 0%, #a94442 100%);*/
}
@media screen and (max-width: 767px) {
  .p-pick-up-item__heading {
    margin-top: 2rem;
    padding: 1.25rem 0;
    max-width: 25rem;
    font-size: 1.8rem;
  }
}
.p-pick-up-item__text {
  max-width: 48.5rem;
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.625;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-pick-up-item__text {
    margin-top:0;
  }
}
@media screen and (max-width: 375px) {
  .p-pick-up-item__text {
    max-width: 30rem;
  }
}
.slick-num-pick-up {
  text-align: center;
  font-weight: 600;
}
/* 下層：商品一覧--------- */
.ec-shelfGrid .ec-shelfGrid__item {
  display: flex;
  flex-direction: unset;
  justify-content: space-between;
  width: 100%;
}
li.ec-shelfGrid__item.border {
  border-bottom: 1px solid #BDBBBB;
  margin-bottom: -10px;
}
.ec-shelfGrid__item-image img {
  max-width: 180px;
}
.product-name {
  font-weight: 600;
  padding-bottom: 5px;
  display: block;
}
ol.ec-topicpath {
  color: #31708f;
}
.producs-list-cart {
  display: flex;
}
.product-list-txt {
  max-width: 450px;
  padding-left: 15px;
  padding-right: 15px;
}
p.price02-default {
  margin-top: 30px;
}
.ec-productRole__actions {
  margin-top: 22px;
}
@media only screen and (max-width: 768px) {
  .ec-shelfGrid .ec-shelfGrid__item {
    padding: 0 16px;
    width: 100%;
  }
}
/* 下層：商品詳細--------- */
/* 下層：お問い合わせ--------- */
@media only screen and (min-width: 768px) {
  .ec-off1Grid .ec-off1Grid__cell {
    margin-left: 0;
  }
  .ec-off1Grid .ec-off1Grid__cell {
    width: 100%;
  }
  .ec-off1Grid .ec-off1Grid__cell {
    margin-top: 60px;
  }
  .ec-off1Grid .ec-off1Grid__cell {
    margin-top: 60px;
  }
  .problem .ec-off1Grid p {
    margin: 16px 0;
  }
}
/* 下層：キャンセル・返品・交換---------
*/
@media only screen and (min-width: 768px) {
  .ec-borderedDefs dd {
    width: 80%;
    line-height: 2;
  }
  .ec-borderedDefs dt {
    padding-top: 5px;
    width: 20%;
  }
}
/* 下層：ログイン--------- */
.ec-login {
  margin-top: 60px;
}
.ec-blockBtn--cancel {
  background-color: #31708f;
  border-color: #31708f;
}
.ec-blockBtn--cancel:hover {
  background-color: #300100;
  border-color: #300100;
}

@media only screen and (max-width: 767px) {
  .ec-login {
  margin-top: 30px;
}
  .ec-checkbox label,
  .ec-link{
    font-size: 1.4rem;
}
}

/* 下層：新規会員登録--------- */
.ec-zipInputHelp span, .ec-required {
 color: #a94442;
}
.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {
  border-color: #31708f;
}
.ec-registerCompleteRole {
  padding-bottom: 100px;
  padding-top: 100px;
}
/* 下層：ショッピングカート--------- */
.ec-progress .is-complete .ec-progress__number {
  background: #31708f;
}
.ec-progress .is-complete .ec-progress__label {
  color: #31708f;
}
/* ボタン各種--------- */
.ec-blockBtn--action {
  font-size: 14px;
  background-color: #a94442 !important;
  border-color: #a94442 !important;
  border-radius: 50px;
}
.ec-blockBtn--action:hover {
  opacity: 0.8;
  background-color: #a94442 !important;
  border-color: #a94442 !important;
}

.ec-eyecatchRole .ec-eyecatchRole__introTitle {
  color: #de0421;
}
.ec-secHeading .ec-secHeading__en {
  color: #de0421;
}
.ec-blockBtn--top {
  background-color: #de0421;
  border-color: #de0421;
}
@media screen and (max-width: 767px) {
  .ec-newsRole {
    padding: 40px 0 0;
    padding-left: 10px;
    padding-right: 10px;
  }

  .ec-sliderRole {
    padding-left: 0;
    padding-right: 0;
  }
  .ec-eyecatchRole .ec-eyecatchRole__introDescription, p {
    font-size: 12px;
    line-height: 1.5;
  }
  .ec-eyecatchRole .ec-eyecatchRole__introTitle {
    margin-bottom: 0.5em;
    font-size: 18px;
  }
  .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {
    margin-bottom: 0.4em;
    font-size: 12px;
}
  .p-pick-up-item__heading {
    margin-top: 2rem;
    padding: 1.25rem 0;
    max-width: 25rem;
    font-size: 1.4rem;
  }
  .ec-shelfGrid .ec-shelfGrid__item {
    padding: 0;
  }
  .ec-shelfGrid__item-image img {
    max-width: 100%;
  }
  .ec-blockBtn--action {
    border-radius: 0;
  }
  .ec-shelfGrid .ec-shelfGrid__item-image {
    min-width: 60px;
  }
  .product-list-txt {
    min-width: 200px;
    max-height: 150px;
    display: inline-block;
    overflow: scroll;
  }
  p.price02-default {
    margin-top: 30px;
    font-weight: 800;
  }
  .products-item {}
  .ec-shelfGrid__item02 {
    display: flex;
    justify-content: space-between;
  }
  .ec-cartRole {
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
  }
  li.ec-shelfGrid__item.border {
    border-bottom: 1px solid #BDBBBB;
    margin-bottom: 10px;
  }
  .ec-shelfGrid .ec-shelfGrid__item {
    margin-bottom: 10px;
  }
  .ec-shelfGrid .ec-blockBtn--action {
    height: 30px;
    font-size: 12px;
    line-height: 0;
  }
  .ec-numberInput input[type='number'] {
    max-width: 50px;
  }
  
  .ec-cartNaviIsset.is-active {
    margin-top: 60px;
}
  .ec-cartRow .ec-cartRow__delColumn {
    width: 5%;
    padding-right: 3px;
}
  .ec-progress .ec-progress__item {
    font-weight: normal;
    font-size: 12px;
}
  .ec-cartRow .ec-cartRow__summary {
    font-weight: normal;
    font-size: 14px;
}
  .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {
    font-size: 1.4rem;
}

  
  .ec-rectHeading h1, .ec-rectHeading h2, .ec-rectHeading h3, .ec-rectHeading h4, .ec-rectHeading h5, .ec-rectHeading h6 {
    font-size: 1.6rem;
        padding: 8px 0;
}
  .ec-orderDelivery .ec-orderDelivery__title,
  .ec-select label{
    font-size: 1.6rem;
}
}

.ec-cartNavi .ec-cartNavi__label {
  display: flex;
  align-items: center;
}

.p-pick-up-list .prev-arrow-pick-up,
.p-pick-up-list .next-arrow-pick-up {
  position: absolute;
  top: 40%;
  left: 20px;
  width: 24px;
  height: 24px;
  background: #de0621;
  border: none;
  transform: translateY(-50%);
  z-index: 1;
}
.p-pick-up-list .next-arrow-pick-up {
  left: auto;
  right: 20px;
}
.p-pick-up-list .prev-arrow-pick-up::before {
  content: "\025c0";
  display: block;
  font-size: 14px;
  color: #FFF;
}
.p-pick-up-list .next-arrow-pick-up::before {
  content: "\025b6";
  display: block;
  font-size: 14px;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .p-pick-up-list__item {
    margin: 0 1rem;
  }
  .p-pick-up-item__heading {
    margin: 1rem 0 0;
    padding: 1rem 0;
    line-height: 1.4;
  }

  .ec-headerTitle__title h1 {
    width: 175px;
    padding: 0 !important;
    transform: translateY(-10px);
  }
  .footer-logo {
    width: 180px;
    margin: 0 auto 40px;
    font-size: 0;
  }
}

@media screen and (max-width: 480px) {
  .footer-nav.sub-nav a {
    font-size: 1.4rem;
  }
}

.ec-role {
  margin-top: -25px;
}
.ec-eyecatchRole .ec-eyecatchRole__intro {
  width: calc(100% - 600px);
}
.ec-eyecatchRole {
  align-items: center;
}
@media screen and (max-width: 767px) {
  .ec-eyecatchRole .ec-eyecatchRole__intro {
    width: 100%;
  }
}