/*カスタマイズ用CSS */
body {
  font-family: "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, 'Noto Sans JP', 'Meiryo', 'メイリオ', sans-serif;
  line-height: 1.4;
  background-color: #111;
  color: #ddd;
  -webkit-text-size-adjust: 100%;
}

h1,h2,h3,h4 {
  font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 0;
  padding: 0;
  letter-spacing: 1px;
  font-feature-settings: "palt";
}

.mb8 {margin-bottom: 8px;}
.mb16 {margin-bottom: 16px;}
.mb24 {margin-bottom: 24px;}
.mb32 {margin-bottom: 32px;}

.no_pc {
  display: none!important;
}
.no_sp {
  display: block!important;
}
.xs_small {
  font-size: 1.2rem;
}
.font_gray {
  color: #ddd;
}
.text_wrapper {
  margin-bottom: 16px;
}

.flex_wrapper {
  display: flex;
}

@media (max-width: 768px) {
  .no_pc {
    display: block!important;
  }
  .no_sp {
    display: none!important;
  }
  .xs_small {
    display: block;
  }
  .text_wrapper {
    margin-bottom: 14px;
  }

  .flex_wrapper {
    display: block;
  }
}
@media (max-width: 320px) {
  .ec-shelfRole {
    font-size: 15px;
  }
}

.title.main,
.main_title {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  margin-bottom: 24px;
}
.title.sub,
.sub_title {
  font-size: 20px;
  font-size: 2rem;
  margin-bottom: 12px;
}
.title.sub span,
.sub_title span {
  color: #ddd;
}
.block_title {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 8px;
}
.border_bottom {
  padding-bottom: 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-bottom: 1px solid #ddd;
  margin-bottom: 16px;
}
a.page_link:after {
  color: #3C3E75;
  font-family: "Font Awesome 5 Free";
  content: ' \f105';
  font-weight: 900;
  margin-left: 4px;
}
.links {
    padding-bottom: 4px;
    border-bottom: 2px solid #fff;
}
a.links:after {
  color: #fff;
  font-family: "Font Awesome 5 Free";
  content: ' \f105';
  font-weight: 900;
  margin-left: 4px;
}

@media (max-width: 768px) {
  .title.main,
  .main_title {
    font-size: 20px;
    font-size: 2rem;
  }
  .title.sub,
  .sub_title {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/****** Base Layout Setting ********/
.ec-layoutRole {
  background: #111;
  color: #ddd;
}
.ec-headerTitle .ec-headerTitle__title a {
  color: #ddd;
}
.ec-itemNav__nav {
  background: #f2f2f2;
}
.ec-itemNav__nav li a {
  background: transparent;
  padding: 16px 14px;
}

@media (max-width: 768px) {
  .ec-headerNav .ec-headerNav__item {
    text-align: center;
  }
}

/*ヘッダー要素*/
.ec-headerNaviRole {
    padding: 0 10px 20px!important;
}
.ec-layoutRole__header {
  border-top: 6px solid #3C3E75;
}
.ec-headerTitle .copy {
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: 1px;
  color: #ddd;
  margin-bottom: 4px;
}
.ec-headerTitle .ec-headerTitle__title a {
    font-size: 22px;
  margin-bottom: 24px;
}
.ec-headerTitle .header_logo img {
  width: 220px;
  height:auto;
  display: block;
}
@media(max-width:768px) {
  .ec-headerTitle .ec-headerTitle__title {
    margin-bottom: 16px;
  }
  .ec-headerTitle .ec-headerTitle__title a {
    margin-bottom: 0;
  }
  .ec-headerNaviRole {
    padding-top: 0;
  }
  .ec-headerNaviRole .ec-headerNaviRole__right {
    width: 100%;
  }
  .ec-cartNavi .ec-cartNavi__icon {
    color: #ddd;
  }
  .ec-headerTitle .header_logo img {
    width: 200px;
  }
  .ec-headerTitle .copy {
    margin-bottom: 0;
  }
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
  background: #3C3E75;
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
  padding: 8px 24px 8px 16px;
}
.ec-headerNav__item .ec-headerNav__itemIcon,
.ec-headerNav .ec-headerNav__itemLink {
  color: #ddd;
}
.ec-headerNav__item span.ec-headerNav__itemLink {
  font-size: 12px;
}
.ec-cartNavi {
  margin-left: 8px;
}

@media only screen and (max-width: 768px) {
  .ec-headerNav__item span.ec-headerNav__itemLink {
    display: block;
    font-size: 8px;
    margin: -4px auto 0;
  }
  .ec-cartNavi {
    margin-left: 0;
  }
}

/*ヘッダー下のカテゴリ*/
.ec-itemNav__nav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.ec-itemNav__nav li a {
  font-size: 14px;
  font-size: 1.4rem;
}

/*トップページのスライダー*/
@media(max-width:768px) {
  .ec-sliderRole {
    margin-top: 15px;
    padding: 0;
    overflow: hidden;
  }
}
.ec-sliderRole {
    padding: 0;
}
.ec-sliderRole .slick-slide {
  padding: 0 4px;
}
.ec-sliderRole .slick-dots li button:before {
  background-color: #fff;
}
.item_photo img {
  width: 100%;
}
@media(max-width:768px) {
  .item_photo img {
    margin-bottom: 8px;
  }
}

/*トップページのスライダー下のインフォメーション*/
.information {
  text-align: center;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 16px 0;
  margin-bottom: 24px;
}
@media(max-width:768px) {
  .information {
    text-align: left;
    padding: 16px;
  }
}

/*トップページスライダー下のカテゴリ表示（PCのみ）*/
.ec-categoryNaviRole {
  margin: 0 auto 24px;
  padding: 0 10px;
}

/*トップページスライダー下のカテゴリ表示（SPのみ）*/
@media(max-width:768px) {
  #item_list .category_container {
    padding-top: 12px;
    color: #222;
    background: #f8f8f8;
  }
  #item_list .category_container .main_title {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
  #item_list .category_container .main_title a {
    color: #222;
  }
  #item_list .category_list {
    padding: 12px 0 8px;
    margin-bottom: 32px;
    border-top: 1px solid #222;
    border-bottom: 1px solid #222;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  #item_list .category_list li {
    margin: 0 6px 6px;
    list-style-type: none;
  }
  #item_list .category_list a {
    padding: 0 8px;
    border-bottom: none;
    height: 25px;
    line-height: 25px;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 1px;
    font-feature-settings: "palt";
    color: #222;
  }
}
.item_photo img {
  margin-bottom: 16px;
}

/*人気商品*/
.pickup_item h3 {
  font-size: 16px;
}
.pickup_item .item_comment.text-warning {
  font-weight: bold;
}
#item_list .row {
  margin: 0 -30px 24px;
}
@media (max-width:768px){
  #item_list .row {
    margin-bottom: 0;
  }
  #item_list dl {
    min-height: 55px;
  }
  .pickup_item .item_comment.text-warning {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  .pickup_item .item_name {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  .pickup_item .item_price {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
}

/*新着情報*/
.news_contents {
  max-width: 1150px;
  float: none;
  margin: 0 auto 32px;
  padding: 24px 16px;
  background: #222222;
  border: 1px solid #ddd;
}
#news_area {
  color: #ddd;
  margin-bottom: 32px;
}
.news_contents:after {
  float: none;
}
#news_area .heading01 {
  padding: 0;
  text-align: left;
}
.newslist {
  border-top: 1px dashed #555555;
}
.newslist dl {
  border-top: 1px dotted #ccc;
}
.newslist dt {
  cursor: pointer;
  padding: 16px;
  position: relative;
}
.newslist dt .angle-circle {
  position: absolute;
  right: 16px;
  top: 14px;
  width: 25px;
  height: 25px;
  display: inline-block;
  border-radius: 50%;
  background: #222;
}
.newslist dd {
  display: none;
  margin: 0 16px 16px;
}

.txt_bnr_area {
  padding: 0 0 16px;
}
.txt_bnr_area img {
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .txt_bnr_area img {
    width: 80%;
  }
}

/*トピック*/
#contents_top .item_comment {
  font-weight: bold;
  margin-bottom: 8px;
}
#contents_top .btn_wrapper {
  width: 160px;
  text-align: center;
  margin: 16px 0 24px;
}
#contents_top .btn_wrapper .btn {
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  padding: 8px 12px;
  display: block;
  background: #3C3E75;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
}
#contents_top .btn_wrapper .btn:after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  float: right;
}
#contents_top .btn_wrapper .btn i {
  margin-left: 4px;
}
#contents_top .more_link {
  font-weight: bold;
}

/*商品一覧*/
.ec-layoutRole__contents,
.ec-layoutRole__contents a,
.ec-shelfRole,
.ec-searchnavRole__counter,
.ec-topicpath,
.ec-topicpath .ec-topicpath__divider {
  color: #ddd;
}
.ec-searchnavRole {
    padding: 0;
}
.ec-layoutRole__contents a {
  margin-bottom: 8px;
}
.price02-default {
  margin-bottom: 8px;
}
.ec-productRole__actions span {
  font-size: 12px;
  font-size: 1.2rem;
}

/*ページネーション*/
.ec-pager .ec-pager__item--active {
  background: #3C3E75;
}
.ec-pager .ec-pager__item a:hover, .ec-pager .ec-pager__item--active a:hover {
  background: #3C3E75;
}

/*ボタン*/
.ec-blockBtn {
  height: 43px;
  line-height: 43px;
}
.ec-blockBtn--action {
  color: #fff;
  background-color: #3C3E75;
  border-color: #3C3E75;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0px 16px;
  font-weight: bold;
  border-radius: 4px;
  height: 43px;
  line-height: 43px;
  vertical-align: middle;
  transition: 0.3s;
}
.ec-blockBtn--action.disabled:hover, .ec-blockBtn--action.disabled:focus,
.ec-blockBtn--action.disabled.focus, .ec-blockBtn--action[disabled]:hover,
.ec-blockBtn--action[disabled]:focus, .ec-blockBtn--action[disabled].focus,
fieldset[disabled] .ec-blockBtn--action:hover,
fieldset[disabled] .ec-blockBtn--action:focus,
fieldset[disabled] .ec-blockBtn--action.focus,
.ec-blockBtn--action:hover {
  background-color: #484B86;
  border-color: #484B86;
}
.ec-blockBtn--cancel {
  background-color: #333;
  border-color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0px 16px;
  font-weight: bold;
  border-radius: 4px;
  height: 43px;
  line-height: 43px;
  vertical-align: middle;
  transition: 0.3s;
}
.ec-blockBtn--cancel:hover {
  background-color: #555;
  border-color: #555;
}

/*商品詳細*/
.ec-productRole {
  padding-top: 30px;
  color: #ddd;
}
.ec-productRole__description {
  margin-top: 32px;
}
.ec-productRole table {
  width: 100%;
}
.ec-productRole__profile,
.ec-sliderItemRole, .ec-headingTitle,
.ec-productRole .ec-productRole__price {
  color: #ddd;
}
.ec-productRole .ec-productRole__category a {
  color: #777;
}
.ec-productRole .ec-productRole__title .ec-headingTitle {
  font-size: 26px;
  font-size: 2.6rem;
}
.ec-productRole .ec-productRole__tags {
  margin-top: 0;
  padding-bottom: 0;
  border-bottom: 1px solid #ccc;
}
.ec-price .ec-price__price {
  padding: 0 8px 0 0;
}
.ec-productRole .ec-productRole__price {
  padding: 0;
  border-bottom: none;
}
.ec-productRole .ec-productRole__actions .ec-select select {
  min-width: 200px;
  max-width: 200px;
  height: 32px;
}
.notice {
  font-size: 12px;
  margin-bottom: 4px;
}
.notice:before {
  content: "※ ";
}
.ec-productRole .ec-productRole__category {
  font-size: 1.2rem;
  padding: 8px 0;
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
  margin-bottom: 32px;
}

@media (max-width:768px) {
  .ec-sliderItemRole {
    padding: 0;
  }
  .slick-list.draggable .slick-track {
    margin: 0 auto;
  }
  .slick-dots li.slick-active button:before,
  .slick-dots li button:before {
    background-color: #fff;
  }
}

/* -----------------------
贈答用のパッケージもございます
------------------------- */
/*カートページ*/
.cart_page .option_block_wrapper {
  width: 50%;
  margin: 0 auto;

  padding-top: 40px;
}
.cart_page .ec-productRole__category .option_block {
  padding: 32px 24px 0;
  font-size: 12px;
}
/*商品詳細ページ*/
.ec-productRole__category.option_block_container {
  border: none!important;
}
.ec-shelfGrid {
    margin-left: -34px;
    margin-right: -34px;
}
.ec-productRole__category.option_block_container
.ec-shelfGrid .ec-shelfGrid__item {
  width: 33%;
}
.ec-productRole__category .option_block {
  position: relative;
  padding: 24px 0 0;
  border: 1px solid #ccc;
}
.ec-productRole__category .option_block .title_block {
  width: 60%;
  font-size: 14px;
  text-align: center;
  position: absolute;
  top: -6px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: #111;
}
.ec-productRole__category .option_block
.ec-shelfGrid .ec-shelfGrid__item {
  margin-bottom: 16px;
}
.ec-productRole__category .option_block
.ec-shelfGrid .ec-shelfGrid__item img {
  margin-bottom: 8px;
}
.ec-productRole__category .option_block ul .item_name {
  color: #ccc;
  padding: 4px 0;
}

@media (max-width:768px) {
  /*カートページ*/
  .cart_page .option_block_wrapper {
    width: 100%;
  }
  .cart_page .ec-productRole__category .option_block {
    padding: 32px 16px 0;
    font-size: 12px;
  }
  /*商品詳細ページ*/
  .ec-productRole__category .option_block .title_block {
    width: 80%;
  }
  .ec-productRole__category .option_block {
    padding: 24px 4px 0;
  }
  .ec-productRole__category .option_block
  .ec-shelfGrid .ec-shelfGrid__item {
    width: 33%;
    padding: 0 8px;
  }
}
/* -----------------------
商品詳細ページ　フリーエリア
------------------------- */
#item_photo_area .freearea {
  padding: 0 8px;
  margin-bottom: 32px;
}
#item_photo_area .freearea p {
  margin-top: 0;
}
#item_photo_area .freearea .heading01 {
  margin-bottom: 8px;
}
.item_price_list, .item_ingredient_list {
  font-size: 14px;
  border-top: 1px solid;
  margin: 16px 0;
}
#item_detail .notice {
  font-size: 12px;
  padding: 0 4px;
}
#item_detail  .notice:before {
  content: "※ ";
}
.item_detail_container {
  color: #222;
  background: #fafafa;
  padding: 16px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 24px;
}
.item_detail_container .basic {
  color: #222;
  table-layout: fixed;
  margin-bottom: 8px;
}
.item_detail_container table {
  width: 100%;
  max-width: 100%;
  text-align: left;
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
}
table.basic {
  border: 1px solid #bcbcbc;
  margin-bottom: 24px;
}
table.basic th {
  font-weight: normal;
  padding: 10px 8px 8px;
  border: 1px solid #bcbcbc;
  vertical-align: middle;
}
table.basic td {
  padding: 10px 8px 8px;
  border: 1px solid #bcbcbc;
  vertical-align: middle;
}
.item_detail_container .basic {
  color: #222;
  table-layout: fixed;
  margin-bottom: 8px;
}
.item_detail_container .basic th {
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  padding: 4px 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #bcbcbc;
  vertical-align: middle;
}
.item_detail_container .basic th span {
  display: block;
  font-size: 10px;
}
.item_detail_container .basic td {
  text-align: center;
}
.item_price_list tr, .item_ingredient_list tr {
  border-bottom: 1px solid;
}
.item_ingredient_list th {
  padding: 8px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.item_price_list td, .item_ingredient_list td {
  text-align: right;
  padding: 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.ec-cartNavi .ec-cartNavi__badge {
  background-color: #3C3E75;
}
.ec-layoutRole .ec-layoutRole__contents {
  margin-bottom: 32px;
  padding: 0 20px;
}
.ec-productRole__description .badge {
  background-color: #3C3E75;
  border-radius: 2px;
  padding: 4px 8px;
}

/*モーダル（カートに追加しました）*/
#ec-modal-header {
  color: #222;
}
.ec-layoutRole__contents a,
.ec-role .ec-layoutRole__contents a {
  margin-bottom: 0;
  border-radius: 4px;
}
.ec-inlineBtn--cancel {
  border-radius: 4px;
}
.ec-inlineBtn--action {
  background-color: #3C3E75;
  border-color: #3C3E75;
}
.blockBtn-action {
  background-color: #3C3E75;
  border-color: #3C3E75;
}

/*ショッピングカート*/
.ec-cartRole .ec-cartRole__cart {
  margin: 0;
}
.ec-progress .is-complete .ec-progress__number {
  background: #3C3E75;
}
.ec-progress .is-complete .ec-progress__label {
  color: #3C3E75;
}
.ec-progress .ec-progress__number {
  background: #555;
}
.ec-progress__label {
  color: #555;
}
.ec-cartCompleteRole,
.ec-cartRole .ec-cartRole__totalAmount,
.ec-cartRole {
  color: #ddd;
}
.ec-guest,.ec-cartHeader,.ec-AddAddress .ec-AddAddress__itemtContent,
.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,
.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel {
  color: #222;
}
.ec-progress .ec-progress__item:after {
  background: #555;
}
.ec-color-red {
  color: #8a6d3b;
}
.ec-role .ec-alert-warning {
  background: #BCBADB;
}
.ec-orderPayment .ec-radio img {
  max-width: 120px;
  margin-bottom: 16px;
}
.ec-select {
  margin-bottom: 8px;
}
.ec-shelfGrid .ec-select select {
  width: 100%;
}
.ec-input select, .ec-halfInput select,
.ec-numberInput select, .ec-zipInput select,
.ec-telInput select, .ec-select select, .ec-birth select {
  font-size: 16px;
  transform: scale(calc(14 / 16));
  height: 36px;
  padding: 3px 12px;
  margin-left: -4px;
}
.ec-input input, .ec-halfInput input,
.ec-numberInput input, .ec-zipInput input, .ec-telInput input,
.ec-select input, .ec-birth input {
  font-size: 16px;
  transform: scale(calc(14 / 16));
  height: 36px;
}
.ec-guest {
  padding: 8%;
}
.ec-guest .ec-guest__inner {
  text-align: left;
}
.ec-guest .ec-guest__inner p {
  font-size: 14px;
  margin-bottom: 16px;
}
.ec-guest .ec-guest__inner .entry_wrapper {
  padding: 16px 0;
}
.ec-guest .ec-guest__inner .entry {
  font-size: 14px;
  color: #3C3E75;
}
.ec-pageHeader h1 {
    font-size: 26px;
}

.ec-orderDelivery__item {
    margin-bottom: 40px;
}

@media (max-width:768px) {
  .ec-cartRole .ec-cartRole {
    padding-left: 0;
    padding-right: 0;
  }
  .ec-orderRole {
    font-size: 14px;
  }
  .ec-pageHeader h1 {
    padding: 12px 8px;
    border-bottom: 1px solid #ccc;
  }
  .ec-orderRole .ec-borderedList {
    border-top: none;
  }
  .ec-cartRow .ec-cartRow__delColumn {
    width: 10%;
  }
  .ec-cartRow .ec-cartRow__delColumn .ec-icon img {
    width: 1.2em;
    height: 1.2em;
  }
  .ec-cartRow .ec-cartRow__summary .ec-cartRow__name {
    font-size: 14px;
  }
  .ec-cartRole .ec-cartRole__progress {
    text-align: left;
  }
  .ec-cartRole .ec-cartRole__progress span {
    margin-top: 8px;
  }
  .ec-input select, .ec-halfInput select,
  .ec-numberInput select, .ec-zipInput select,
  .ec-telInput select, .ec-select select, .ec-birth select {
    -webkit-appearance: none!important;
  }
  .ec-shelfGrid__item .ec-select select {
    width: 100%;
    margin-left: -10px;
  }
  select:after {
    color: #222;
    font-family: "Font Awesome 5 Free";
    content: ' \f107';
    font-weight: 900;
    margin-right: 8px;
  }
  .ec-orderDelivery__actions {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
  }
}

/*特商法ページ*/
.ec-borderedDefs dl {
  padding: 15px 0;
}
.ec-borderedDefs dt {
  padding-top: 0;
}
.ec-borderedDefs dd {
  line-height: 1.5;
}

/*お問い合わせページ*/
.ec-contactRole,
.ec-contactConfirmRole,
.ec-contactCompleteRole {
  color: #ddd;
}

/*マイページ系*/
.ec-layoutRole__main,
.ec-login .ec-login__input, .ec-welcomeMsg,
.ec-role, .ec-registerRole, .ec-borderedDefs dt,
.ec-forgotRole .ec-forgotRole__intro,
.ec-mypageRole, .ec-orderRole, .ec-withdrawRole,
.ec-historyRole .ec-historyRole__contents {
  color: #ddd;
}
.ec-orderRole .ec-totalBox {
  color: #222;
}
.ec-login .ec-login__link a,
.form-check-label {
  font-size: 14px;
  color: #222;
}
.ec-login .ec-login__link a.ec-link.entry {
  color: #3C3E75;
}
.ec-login .ec-login__link a:hover {
  text-decoration: underline;
}
.ec-orderMail .ec-orderMail__link a {
  color: #555;
}
.ec-zipInputHelp .ec-zipInputHelp__icon {
  background: #3C3E75;
  top: -9px;
}
.ec-cartNaviNull .ec-cartNaviNull__message {
  background-color: #BCBADB;
}
.ec-orderPayment, .ec-orderConfirm, .ec-orderMails {
  margin-bottom: 40px;
}
.ec-orderDelivery .ec-orderDelivery__title {
  font-size:16px;
  padding: 12px 0;
}
.ec-historyListHeader .ec-historyListHeader__date {
  font-size: 16px;
}
.ec-rectHeading h1, .ec-rectHeading h2, .ec-rectHeading h3,
.ec-rectHeading h4, .ec-rectHeading h5, .ec-rectHeading h6 {
  background: transparent;
  padding: 8px 0;
  border-bottom: 1px solid #ddd;
  margin-bottom: 8px;
}
.ec-orderDelivery {
  margin-bottom: 24px;
}
.ec-orderDelivery__change .ec-inlineBtn {
    padding: 6px 12px;
}

.ec-zipInputHelp span {
  color: #ddd;
  text-decoration: underline;
  margin-left: 0;
}
.ec-required {
  color: #ddd;
  background: #3C3E75;
  padding: 2px 4px;
  border-radius: 2px;
}
.ec-borderedDefs {
  border-top: 1px dotted #555;
}
.ec-borderedDefs dl {
  border-bottom: 1px dotted #555;
}
.ec-navlistRole .active a {
  color: #ddd;
  background: #3C3E75;
}
.ec-navlistRole .ec-navlistRole__item a {
  margin-bottom: 0;
  transition: 0.3s;
  height: 100%;
  font-size: 14px;
}
.ec-navlistRole .ec-navlistRole__item a:hover {
  background: transparent;
  background: #333;
}
.ec-inlineBtn,
.ec-mypageRole .ec-inlineBtn {
  background-color: #3C3E75;
  border-color: #3C3E75;
  color: #ddd;
  border-radius: 4px;
}
.ec-mypageRole .ec-inlineBtn:hover {
  background-color: #484B86;
  border-color: #484B86;
  color: #ddd;
}
.ec-borderedList li:first-child .ec-imageGrid {
  border-top: none;
}
@media (max-width:768px) {
  .ec-mypageRole {
    font-size: 13px;
  }
  .ec-historyListHeader .ec-historyListHeader__date {
    background: #333;
    padding: 4px 8px;
    border-left: 3px solid #3C3E75;
    margin-bottom: 10px;
  }
}

/*会員登録*/
.ec-pageHeader {
  color: #dddddd;
}
.ec-checkbox a.ec-link {
  text-decoration: underline;
}
.ec-registerCompleteRole {
  color: #fff;
}
.ec-halfInput.error .ec-errorMessage {
  width: 45%;
  display: inline-block;
}
.ec-halfInput.error .ec-errorMessage:last-child {
  margin-left: 2%;
}
.error.ec-checkbox input, .error.ec-checkbox label {
  border-color: transparent;
  background: transparent;
}

/*送料･お支払い･発送について*/
.ec-layoutRole__footer .ec-categoryNaviRole {
  margin: 0 auto;
}
.shipping_container {
  background: #222;
  color: #ddd;
  padding: 40px 0 32px;
}

.shipping_container .inner_wrapper {
  max-width: 1130px;
  margin: 0 auto;
  color: #ddd;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.5px;
}

.shipping_container .flex {
  display: flex;
  justify-content: space-between;
}
.shipping_container .shipping {
  width: 70%;
  margin-right: 5%;
  padding-top: 32px;
}
.shipping_container .payment {
  padding-top: 32px;
}
.shipping_container .link_banner_wrapper img {
  max-width: 280px;
}
.shipping_container table {
  width: 100%;
  background: #f8f8f8;
  color: #222;
  margin-bottom: 16px;
}

.shipping_container table .header {
  background: #3C3E75;
  color: #ddd;
}
.shipping_container table tr {
  border-bottom: 1px solid #222;
}
.shipping_container table th {
  background: #ddd;
}
.shipping_container table th,
.shipping_container table td {
  padding: 12px;
  text-align: center;
  border-right: 1px solid #222;
}

/*送料についてページ*/
.shipping_container.shipping_page {
    background: transparent;
    padding: 0 16px 32px;
}
.shipping_container.shipping_page table {
    width: auto;
    margin-bottom: 32px;
    background: transparent;
}
.shipping_container.shipping_page table td {
    font-size: 1.2rem;
    background: #fff;
}
.shipping_container.shipping_page table td  i {
  margin-left: 4px;
}
.shipping_container.shipping_page table td:first-child {
    background: #ddd;
}
.shipping_container.shipping_page table .header td {
    padding: 8px 16px;
    background: #3C3E75;
}
.shipping_container.shipping_page table .header td:first-child {
    background: #3C3E75;
}
.shipping_container.shipping_page table .c_name td {
    padding: 6px 16px;
    background: #ddd;
}

@media (max-width: 768px) {
  .shipping_container {
    padding: 40px 16px 32px;
  }
  .shipping_container .flex {
    display: block;
  }
  .shipping_container .sub_title {
    padding-bottom: 6px;
    border-bottom: 1px solid #dddddd;
  }
  .shipping_container table {
    font-size: 12px;
  }
  .shipping_container.shipping_page table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .shipping_container.shipping_page table .header td,
  .shipping_container.shipping_page table .c_name td {
    font-size: 10px;
    padding: 6px 8px;
  }
  .shipping_container table .ex td {
    font-size: 10px;
  }
  .shipping_container table .header,
  .shipping_container table th {
    font-size: 11px;
  }
  .shipping_container table th,
  .shipping_container table td {
    padding: 8px;
  }
  .shipping_container .shipping {
    width: 100%;
    padding-top: 16px;
  }
  .ec-footerRole .category-nav li {
    margin: 0 4px 8px;
  }
}

#top_box__button_menu p {
    margin-bottom: 10px;
}

/*フッターカテゴリ表示*/
.footer_container .category_container {
  padding-top: 32px;
  color: #222;
  background: #f8f8f8;
}
@media (max-width:768px) {
  .footer_container .category_container {
    padding-top: 0;
  }
}
.footer_container .category_container .main_title {
  color: #222;
}
.footer_container .category_container .inner_wrapper {
  max-width: 1130px;
  margin: 0 auto;
}
.footer_container .ec-itemNav__nav {
  margin-bottom: 32px;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  background: #f8f8f8;
}
.ec-footerRole {
  background: #f8f8f8;
  padding: 0;
  margin: 0;
  border-top: none;
}
.ec-footerNavi .ec-footerNavi__link a {
  color: #222;
  text-decoration: none;
}

/*フッターロゴ*/
.ec-footerTitle {
  color: #222;
  padding: 50px 0 30px;
}
@media (max-width:768px) {
  .ec-footerTitle {
    padding: 20px 0;
  }
}
.ec-footerTitle__logo .logo {
  max-width: 180px!important;
}
.ec-footerTitle__copyright {
  font-size: 10px;
  font-size: 1rem;
  margin-top: 0;
}

/*SNSシェアボタン*/
.sns_container {
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 0;
}
.sns_container li {
    list-style-type: none;
    width: 32px;
    margin: 0 8px;
    text-align: center;
    color: #222;
}
.sns_container .message {
    width: auto;
    font-size: 14px;
}

@media (max-width:768px) {
    .sns_container {
        width: 90%;
    }
    .sns_container .message {
        font-size: 12px;
        text-align: right;
    }
    .sns_container li {
        margin: 0 4px;
    }
    .sns_container li img {
        width: 80%;
    }
}

/*TO TOPボタン*/
.ec-blockTopBtn {
  width: 40px;
  right: 8px;
  bottom: 24px;
  background-color: #3C3E75;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}