@charset "UTF-8";
/* @import url(../fonts/Noto/load.css); */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");

/*更新イメージの調整
----------------------------------------------- */
.com-img {
  display: block;
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.com-img img {
  position: absolute;
  top: 50% !important;
  left: 50% !important;
  width: 100%;
  object-fit: cover;
  font-family: "object-fit: cover; object-position: bottom";
  object-position: center;
  min-height: 100%;
  min-width: 100%;
  transform: translateX(-50%) translateY(-50%);
}

img {
  max-width: 100%;
  vertical-align: middle;
}

/*==========================================
  ECCUBE4 ブロック
===========================================*/


/*オリジナルグローバルナビ
------------------------------------------ */
#nav {
  background: #333;
}

#nav li {
  max-width: 200px;
  width: 20%;
  text-align: center;
}

#nav li a {
  display: block;
  padding: 20px 3%;
  box-sizing: border-box;
  color: #fff;
  font-weight: 700;
}

#nav li a:hover {
  background: #de5d50;
  color: #fff;
}


/*オリジナルカート
------------------------------------------ */
#orgin-cart {
  width: 100%;
  padding-bottom: 30px;
}

#orgin-cart .ec-headerNaviRole__right,
#orgin-cart .ec-headerRole__cart,
#orgin-cart .ec-cartNaviWrap,
#orgin-cart .ec-cartNavi {
  width: 100%;
}

/*オリジナルログイン
------------------------------------------ */
.orgn-login {
  width: 100%;
  text-align: center;
  padding: 10px 20px 20px;
}

.orgn-login .ec-headerNav__item {
  display: block;
  width: 100%;
}

.orgn-login .ec-headerNav__item a {
  display: block;
  background: #de5d50;
  line-height: 1;
  padding: 10px 10px 15px;
  box-sizing: border-box;
}

.orgn-login .ec-headerNav__item a span,
.orgn-login .ec-headerNav__item a i {
  color: #fff;
}

/*オリジナルカテゴリー
------------------------------------------ */
.orgn-category .sidebar-category li {
  width: 100%;
}

.orgn-category .sidebar-category li a {
  text-align: left;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
}

.orgn-category .sidebar-category li:hover > ul {
  top: 0;
  left: 100%;
}

/*オリジナルサーチ
------------------------------------------ */
.orgn_search .ec-headerNaviRole__left {
  width: calc(100% / 1);
}

.orgn_search .ec-select_search {
  border-radius: 5px 0 0 5px !important;
}

.orgn_search .ec-headerSearch__keyword {
  border-radius: 0 5px 5px 0 !important;
}

.orgn_search .ec-headerSearch__keyword .ec-icon {
  width: 15px;
  height: 15px;
}

.orgn_search .ec-headerSearch__keyword input[type="search"] {
  padding: 0.5em 30px 0.5em 1em;
}

/*オリジナルメインビジュアル
------------------------------------------ */
/*slick*/
#orgn_mv {
  max-width: initial;
}

/*swiper*/
.swiper-container {
  height: 200px;
  margin-bottom: 5%;
}

.swiper-wrapper .swiper-slide {
  height: 100%;
}

.swiper-wrap {
  padding-bottom: 5%;
  position: relative;
  z-index: 0;
}

.swiper-wrap .swiper-button-prev,
.swiper-wrap .swiper-button-next {
  display: none;
}

.swiper-wrap .swiper-pagination {
  left: 0;
  right: 0;
  bottom: 0;
}

.swiper-wrap .swiper-pagination span {
  margin-right: 3%;
}

.swiper-wrap .swiper-pagination span:last-child {
  margin-right: 0;
}

/*オリジナルサブビジュアル
------------------------------------------ */
#sub-visual {
  height: 100px;
  background: url(../img/common/sub-visual-bg.jpg) no-repeat center/cover;
}

#sub-visual .inbox,
#sub-visual .sub-visual-box {
  height: 100%;
}

#sub-visual .subv-ttl {
  color: #fff;
  font-weight: 700;
  background: #333;
  padding: 2% 5%;
}

/*オリジナル新着商品
------------------------------------------ */
.bloc-new-products-list-wrp {
  padding: 5% 0;
}

.bloc-new-products-list-wrp .bloc-new-products-list-ttl {
  font-weight: 700;
  margin-bottom: 5%;
}

.bloc-new-products-list-wrp .top-new-products-btn-box {
  margin-bottom: 3%;
  text-align: right;
}

.bloc-new-products-list-wrp .top-new-products-btn-box a {
  font-weight: 700;
}

.bloc-new-products-list-wrp .bloc-new-products-list::-webkit-scrollbar {
  display: none;
}

.bloc-new-products-list-wrp .bloc-new-products-list {
  overflow-x: scroll;
}

.bloc-new-products-list-wrp .bloc-new-products-list .com-bloc-new-products {
  flex: 0 0 40%;
  margin-right: 2%;
}

.bloc-new-products-list-wrp .bloc-new-products-list .com-bloc-new-products:last-of-type {
  margin-right: 0;
}

.bloc-new-products-list-wrp .bloc-new-products-list .com-bloc-new-products a {
  color: #333;
}

.bloc-new-products-list-wrp .bloc-new-products-list .com-bloc-new-products .com-img {
  width: 100%;
  padding-top: 100%;
  margin-bottom: 3%;
}

.bloc-new-products-list-wrp .bloc-new-products-list .com-bloc-new-products .com-bloc-new-products-info-ttl {
  font-weight: 700;
  margin-bottom: 3%;
}

.bloc-new-products-list-wrp .bloc-new-products-list .com-bloc-new-products .ec-newItemRole__listItemPrice {
}

.bloc-new-products-list-wrp .bloc-new-products-list .com-bloc-new-products h4 {
  border-bottom: 1px solid #ccc;
  margin-bottom: 3%;
  padding-bottom: 3%;
}

/*SB2お知らせ
------------------------------------------ */
#bloc-news {
  padding: 10% 0;
}

#bloc-news .bloc-news-post article {
  margin-bottom: 5%;
  padding-bottom: 5%;
  border-bottom: 1px solid #ccc;
}

#bloc-news .bloc-news-post article:last-child {
  border-bottom: none;
}

#bloc-news .bloc-news-post article a {
  color: #333;
  padding: 1%;
  box-sizing: border-box;
}

#bloc-news .bloc-news-post article a .com-img {
  width: 20%;
  padding-top: 20%;
}

#bloc-news .bloc-news-post article a .bloc-news-post-txtbox {
  width: 75%;
}

#bloc-news .bloc-news-post article a time {
}

#bloc-news .bloc-news-post article a .category {
  margin-bottom: 3%;
}

#bloc-news .bloc-news-post article a .category li {
  background: #333;
  color: #fff;
  display: inline-block;
  vertical-align: middle;
  padding: 1% 3%;
  text-align: center;
}

#bloc-news .bloc-news-post article a .bloc-news-post-ttl {
  font-weight: 700;
  margin-bottom: 3%;
}

#bloc-news .bloc-news-post article a .bloc-news-post-txt {
}

/*下層ボックス
=========================================================*/
#contents-u {
  padding: 100px 0 120px;
}

.over-wrp {
  overflow-x: hidden;
}

.over-box {
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

.over-inbox {
  width: 95%;
  margin: 0 auto;
}

/*下層共通タイトル
=========================================================*/
.ttl01 {
  font-weight: 700;
  border-bottom: 2px solid #ccc;
  margin-bottom: 5%;
  padding-bottom: 3%;
  line-height: 1.5;
}

/*運営会社
=========================================================*/
#company .info-dl .in-dl {
  border-bottom: 1px solid #f2f2f2;
}

#company .info-dl .in-dl dt,
#company .info-dl .in-dl dd {
  padding: 2% 2.5%;
  display: table-cell;
  vertical-align: top;
}

#company .info-dl .in-dl dt {
  background: #333;
  width: 20%;
  color: #fff;
}

#company .info-dl .in-dl dd {
  width: 80vw;
}

/*お知らせ一覧
=========================================================*/
.post-wrp .tag-change {
  margin-bottom: 10%;
}

.post-wrp .tag-change li {
  text-align: center;
  margin: 10px 10px 0 0;
  min-width: 190px;
  display: inline-block;
  vertical-align: middle;
}

.post-wrp .tag-change li a {
  padding: 10px 15px;
  display: block;
  border: solid 1px #333;
  color: #333;
  background: #fff;
}

.post-wrp .tag-change .current a {
  background: #333;
}

.post-wrp .tag-change .current a span {
  color: #fff;
}

.post-wrp .all-post-list article {
  margin-bottom: 25px;
  border-bottom: 1px solid #333;
}

.post-wrp .all-post-list article a {
  color: #000;
  padding: 0 0 25px;
  display: block;
  box-sizing: border-box;
}

.post-wrp .all-post-list article a .tag-time {
  margin-bottom: 25px;
}

.post-wrp .all-post-list article a .tag-name,
.post-wrp .all-post-list article a time {
  min-width: 125px;
  line-height: 1;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  padding: 10px 20px;
  box-sizing: border-box;
  margin-right: 1%;
  font-size: 12px;
}

.post-wrp .all-post-list article a time {
  background: #333;
  display: block;
}

.post-wrp .all-post-list article a time span {
  padding-left: 10px;
  color: #fff;
  position: relative;
}

.post-wrp .all-post-list article a time span:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  border-left: #fff solid 5px;
  top: 50%;
  width: 0;
  height: 0;
  border: transparent solid 5px;
  border-left: #fff solid 5px;
  margin-top: -5px;
}

.post-wrp .all-post-list article a .tag-name {
  display: inline-block;
  vertical-align: middle;
  border: solid 1px #333;
}

.post-wrp .all-post-list article a .tag-name span {
  color: #333;
}

.post-wrp .all-post-list article a .com-img {
  width: 200px;
  height: 200px;
}

.post-wrp .all-post-list article a .post-thumb-text {
  width: 855px;
}

.post-wrp .all-post-list article a h4 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 3%;
}

/*タグ一覧
----------------------------------------------------*/
.tag-select-box {
  position: relative;
  width: 40%;
  margin: 0 0 20px auto;
  max-width: 230px;
}

.tag-select-box:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  right: 0.8em;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 6px solid #2e2e2e;
  pointer-events: none;
}

.tag-select-box #tag-select {
  width: 100%;
  padding: 5% 20% 5% 5%;
  box-sizing: border-box;
  margin-left: auto;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  border: none;
  border-bottom: 2px solid #333;
  cursor: pointer;
  border-radius: 0;
  background: none;
  color: #333;
  font-weight: 700;
  appearance: none;
}

.tag-select-box #tag-select option {
  padding: 10px;
  box-sizing: border-box;
  cursor: pointer;
  box-sizing: border-box;
}

/*ページネーション
----------------------------------------------------*/
ul.pagenation li a {
  color: #38322d;
}

ul.pagenation li.current {
  color: #fff;
  background: #333;
}

ul.pagenation,
ul.pagenation li,
ul.pagenation li a {
  line-height: 1;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -js-display: flex;
  align-items: center;
  display: flex;
  justify-content: center;
}

ul.pagenation {
  margin-top: 20px;
  text-align: center;
  margin-bottom: 5%;
}

ul.pagenation li a {
  width: 45px;
  height: 45px;
  font-size: 17px;
}

ul.pagenation li.current {
  width: 45px;
  height: 45px;
  font-size: 20px;
  line-height: 1;
  box-sizing: border-box;
}

/*お知らせ個別
=========================================================*/
#contents-u.s-post .sb_style h1 {
  border-bottom: 1px solid #333;
}

#contents-u.s-post .sb_style h2 {
  border-left: 5px solid #333;
}

#contents-u.s-post .sb_style h3 {
  background: #333;
  color: #fff;
}

#contents-u.s-post .sb_style h4:before {
  background: #333;
}

#contents-u.s-post .sb_style h5 {
  background: #f2f2f2;
}

#contents-u.s-post .sb_style h6 {
  color: #333;
}

#contents-u.s-post .sb_style ul li:before {
  background: #333;
}

#contents-u.s-post .sb_style ol li:before {
  color: #fff;
  background: #333;
}

#contents-u.s-post .sb_style a {
  color: #333;
}

#contents-u.s-post .s-time-tag {
  text-align: right;
  margin-top: 100px;
  padding-top: 10px;
  border-top: 1px solid #333;
}

#contents-u.s-post .s-time-tag time {
  color: #333;
  font-weight: bold;
}

#contents-u.s-post .tag-name {
  min-width: 130px;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  padding: 8px 20px;
  box-sizing: border-box;
  border: solid 1px #333;
  margin-bottom: 20px;
  line-height: 1;
  color: #333;
}

#contents-u.s-post .tag-name span {
  color: #333;
}

/*ページボタン
----------------------------------------------------*/
.page-btn {
  position: relative;
  margin-top: 30px;
}

.page-btn a {
  position: relative;
  font-weight: bold;
}

.page-btn .right,
.page-btn .left {
  position: absolute;
}

.page-btn .right a,
.page-btn .left a {
  font-size: 16px;
}

.page-btn .right a:before,
.page-btn .left a:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 5px;
  height: 5px;
  margin-top: -5px;
  box-sizing: border-box;
}

.page-btn .left {
  left: 0;
}

.page-btn .left a {
  position: relative;
  padding-left: 20px;
}

.page-btn .left a:before {
  left: 0;
  border: solid 5px transparent;
}

.page-btn .right {
  right: 0;
}

.page-btn .right a {
  position: relative;
  padding-right: 20px;
}

.page-btn .right a:before {
  right: 0;
  border: solid 5px transparent;
}
