﻿@charset "UTF-8";

/* ----------------------------------
 Topics
---------------------------------- */
/* 一覧 */
.block-topic-details--pager-top { margin: 0 0 20px; justify-content: flex-end;}
.block-topic-details--pager-top .pager-total .pager-scope { font-size: var(--font-size-main);}
.block-topic-details--pager-top .pager-total .pager-count { font-size: var(--font-size-main);}
.block-topic-details--pager-top .pager-total .pager-count span { margin: 0 5px 0 0; font-size: var(--font-size-xlarge); font-weight: 700;}

.block-topic--items { position: relative;}
.block-topic--items li { width: 100%; padding: 0; margin: 0 0 20px 0; border: none;}
.block-topic--items li a,
.block-topic--items li .nolink { width: 100%; text-decoration: none; display: flex; justify-content: space-between; align-items: flex-start;}
.block-topic--items li figure  { width: 20%; margin: 0; background: var(--color-bg); transition: var(--transition);}
.block-topic--items li .block-top-topic--icon { height: 24px; vertical-align: top;}
.block-topic--items li dl { width: calc(80% - 24px); display: block;}
.block-topic--items li dt { font-weight: 500; display: flex; align-items: center; column-gap: 16px;}
.block-topic--items li dd {
  margin: 12px 0 0 0;
  font-size: var(--font-size-main);
	font-weight: 700;
  display: block;
  line-height: var(--line-height-middle);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-topic--items li a:hover figure { opacity: var(--opacity);}
.block-topic--items li a:hover dt,
.block-topic--items li a:hover dd { text-decoration: none; color: var(--color-sub);}
.block-topic--items li .date   { font-size: var(--font-size-main); font-weight: 500;}
.block-top-topic--next-page { width: 300px; height: 56px; margin: 24px auto 0;}
.block-top-topic--next-page a { border: var(--button-bg1) 2px solid; font-size: var(--font-size-main); text-decoration: none; color: #FFF; background-color: var(--button-bg1);}
.block-top-topic--next-page a::after { border-color: #FFF;}
.block-top-topic--next-page a:hover { color: var(--button-bg1); background-color: #FFF;}
.block-top-topic--next-page a:hover::after { border-color: var(--button-bg1);}

.block-top-topic { padding: 40px 0 0; margin: 0 0 40px;}
.block-top-topic .block-topic--items { min-height: 400px; padding: 0 0 0 calc(50% + 40px); position: relative;}
.block-top-topic .block-topic--items li { margin: 0 0 24px 0;}
.block-top-topic .block-topic--items li figure { width: 38.84%;}
.block-top-topic .block-topic--items li figure img { width: 100%; vertical-align: top;}
.block-top-topic .block-topic--items li dl { width: calc(61.16% - 24px);}
.block-top-topic .block-topic--items li:nth-child(1) { width: calc(50% - 20px); position: absolute; left: 0; top: 0;}
.block-top-topic .block-topic--items li:nth-child(1) a,
.block-top-topic .block-topic--items li:nth-child(1) .nolink { display: block;}
.block-top-topic .block-topic--items li:nth-child(1) figure  { width: 100%; margin: 0 0 14px;}
.block-top-topic .block-topic--items li:nth-child(1) dl      { width: 100%; display: block;}

.block-category-list--topic .block-top-topic--next-page { display: none;}

/* 詳細 */
h1.block-topic-page--article-header { font-size: var(--font-size-H2); text-align: left;}
.block-topic-page--article-body { font-size: var(--font-size-main);}

/* ----------------------------------
 Category
---------------------------------- */
/* 静的サブカテゴリー */
.sub-category-list-frame { padding: 60px 0;}
.sub-category-list-frame .inner-frame { max-width: var(--layout-max-width); padding: var(--layout-base-padding); margin: 0 auto;}
.sub-category-list-frame .sub-category-list { display: flex; flex-wrap: wrap; column-gap: 24px;}
.sub-category-list-frame .sub-category-list-item { width: calc((100% - (24px * 4))/5); height: var(--sub-category-item-height); flex-basis: auto; margin: 0 0 12px;}
.sub-category-list-frame .sub-category-list-item a {
  width: 100%;
  height: var(--sub-category-item-height);
	padding: var(--sub-category-item-a-padding);
  margin: 0;
	border: var(--button-bg1) 2px solid;
	border-radius: 56px;
  font-size: var(--font-size-large);
  font-weight: 700;
	text-decoration: none;
  line-height: var(--line-height-low);
  color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
	background-color: var(--button-bg1);
	position: relative;
	transition: var(--transition);
}
.sub-category-list-frame .sub-category-list-item a::after {
  content: '';
  width: 8px;
  height: 8px;
  border-right: #FFF 2px solid;
  border-top: #FFF 2px solid;
  position: absolute;
  right: 16px;
  top: calc(50% - 4px);
  display: block;
  transform: rotate(45deg);
}
.sub-category-list-frame .sub-category-list-item a:hover { color: var(--button-bg1); background-color: #FFF;}
.sub-category-list-frame .sub-category-list-item a:hover::after { border-color: var(--button-bg1);}
.sub-category-list-frame .sub-category-list-item .name {
	min-height: calc(var(--line-height-low) * 2);
  font-size: var(--font-size-main);
  font-weight: 700;
	text-decoration: none;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

@media screen and (max-width: 1340px) {
	.sub-category-list-frame .sub-category-list-item { width: calc((100% - (24px * 3))/4);}
}

/* ----------------------------------
 Event
---------------------------------- */
.block-top-event--header { padding: 0; margin: 0 0 24px; border: 0; font-size: var(--font-size-H2); font-weight: 700; text-align: left; color: var(--color-main);}
.block-top-event--header a { font-size: var(--font-size-H2); font-weight: 700; color: var(--color-main);}
.block-top-event--goods { margin: 0 0 40px;}

/* ----------------------------------
 Brand
---------------------------------- */
.block-brand-list { margin: 40px 0 60px;}
.block-brand-list .block-topic-path { margin-bottom: 40px;}
.block-brand-list--items { display: flex; flex-direction: row; flex-wrap: wrap;}
.block-brand-list--item { flex-grow: 1; flex-basis: 390px; max-width: 390px; margin: 0 0 60px 15px;}
.block-brand-list--item:nth-of-type(3n+1) { margin-left: 0;}
.block-brand-list--item-img { width: 390px; height: 240px;}
.block-brand-list--item-name,
.block-brand-list--item-comment { border: 0;}
.block-brand-list--item-name { padding: 16px 0 12px; font-size: 16px; font-weight: bold; line-height: 1.25; text-align: center;}
.block-brand-list--item-comment { border: 0; padding: 0;}
.block-brand-list--item-btn { display: block; text-align: center; width: 240px; height: auto; line-height: 1.5; color: #333; font-size: 14px; margin: 16px auto 0; padding: 15px 10px; border: 1px solid #111; background: #fff;}
.block-brand-detail--image { margin-top: 40px;}
.block-brand-detail--description { margin-bottom: 30px;}

/* ----------------------------------
 ページ機能
---------------------------------- */
.block-page-block--contents-text { display: flex; flex-direction: row; flex-wrap: wrap; width: 100%;}
.block-page-block--contents-body-text-2column { width: calc((100% - 20px) / 2); margin-right: 20px;}
.block-page-block--contents-body-text-2column:last-child { margin-right: 0;}
.block-page-block--contents-img { display: flex; flex-direction: row; flex-wrap: wrap; width: 100%;}
.block-page-block--contents-body-img-2column { width: calc((100% - 20px) / 2); margin-right: 20px;}
.block-page-block--contents-body-img-2column:last-child { margin-right: 0;}
.block-pagecategory-page-list--frame { display: flex; flex-wrap: wrap; width: 100%;}
.block-pagecategory-page-list--frame .block-pagecategory-page-list--page { width: calc(25% - 9px); margin: 0 12px 15px 0;}
.block-pagecategory-page-list--frame .block-pagecategory-page-list--page:nth-of-type(4n) { margin-right: 0;}


/* ==================================================
 Goods
================================================== */
/* オートアイコン
---------------------------------- */
.block-auto-icon { width: 100%; margin: 0 0 4px; display: flex; flex-wrap: wrap; column-gap: 6px; z-index: 2;}
.block-auto-icon span { max-width: 48px; width: calc((100% - (6px * 2))/3); display: block;}
.block-auto-icon span img { width: 100%; vertical-align: top;}

/* アイコン
---------------------------------- */
.block-icon { width: 100%; display: flex; flex-wrap: wrap; gap: 4px;}
.block-icon span { margin: 0;}
.block-icon span img { width: auto; height: 24px; vertical-align: top;}

/* 商品一覧
---------------------------------- */
/* R形式 */
.block-ranking-r--items { width: 100%; margin: 0; display: flex; flex-direction: row; flex-wrap: wrap; column-gap: 16px; position: relative;}
.block-ranking-r .block-ranking-r--item-body { width: calc((100% - (16px * 3))/4); flex-basis: auto; padding: 30px 24px 0; margin: 0 0 40px; display: block; position: relative;}
.block-ranking-r .block-ranking-r--item-body .block-auto-icon { width: 100%; padding: 0 24px; position: absolute; top: 0; left: 0; right: 0;}
.block-ranking-r .block-ranking-r--goods-image { width: calc(100% - 20px); height: auto; padding: calc(100% - 20px) 0 0; margin: 0 10px 20px; position: relative;}
.block-ranking-r .block-ranking-r--goods-image a { transition: var(--transition);}
.block-ranking-r .block-ranking-r--goods-image a:hover { opacity: var(--opacity);}
.block-ranking-r .block-ranking-r--goods-image figure { width: 100%; height: 100%; background: none; display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0;}
.block-ranking-r .block-ranking-r--goods-description { width: 100%; padding: 0 0 12px; margin: 0;}
.block-ranking-r .block-ranking-r--rank { margin: 0 0 10px; font-size: 24px; font-weight: 700; color: var(--color-blue); display: flex; align-items: baseline;}
.block-ranking-r .block-ranking-r--rank::before { content: 'No.'; font-size: 14px; font-weight: 700; color: var(--color-blue);}
.block-ranking-r .block-ranking-r--goods-name {
	max-height: calc(var(--font-size-main) * 2 * var(--line-height-low));
	margin: 0 0 8px;
	font-size: var(--font-size-main);
	font-weight: 700;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-ranking-r .block-ranking-r--goods-name a { font-size: var(--font-size-main); font-weight: 700; text-decoration: none;}
.block-ranking-r .block-ranking-r--goods-name a:hover { color: var(--color-sub);}
.block-ranking-r .block-revico-star-zone { max-height: 32px; margin: 0 0 8px; font-size: var(--font-size-main);}
.block-ranking-r .revico-star .revico-widget a.revico-read-more-review { display: none !important;}
.block-ranking-r .block-ranking-r--price-infos { margin: 0 0 12px; font-size: var(--font-size-main);}
.block-ranking-r .block-ranking-r--price-infos .price { font-size: var(--font-size-main); font-weight: 700; text-align: left;}
.block-ranking-r .block-ranking-r--price-infos .net-price { display: none !important;}
.block-ranking-r .block-ranking-r--price-infos .default-price { text-align: left;}
.block-ranking-r .block-ranking-r--price-infos .exchange-price { text-align: left;}
.block-ranking-r .block-ranking-r--price-infos:has(.default-price) .price { color: var(--color-sale);}
.block-ranking-r .block-ranking-r--price-infos:has(.default-price) .price .yen { color: var(--color-sale);}
.block-ranking-r .block-ranking-r--price-infos .block-exchange-price--rate-dt { text-align: left;}
.block-ranking-r .block-ranking-r--scomment { display: none !important;}
.block-ranking-r .block-ranking-r--comment  { display: none !important;}
.block-ranking-r .block-ranking-r--add-cart { width: 100%; height: var(--goods-list-cart-height);}
.block-ranking-r .block-ranking-r--add-cart .block-list-add-cart-btn {
  width: 100%;
  height: 100%;
  padding: 0 0 0 var(--goods-list-cart-icon-padding);
	border-radius: var(--goods-list-cart-height);
	font-weight: 700;
	text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
	background-image: var(--goods-list-cart-icon-image);
	background-repeat: no-repeat;
	background-position: var(--goods-list-cart-icon-position);
	-webkit-background-size: var(--goods-list-cart-icon-size);
	background-size: var(--goods-list-cart-icon-size);
	transition: var(--transition);
}
.block-ranking-r .block-ranking-r--add-cart .block-list-add-cart-btn:hover {
	color: var(--color-main);
	background-image: var(--goods-list-cart-icon-image-hover);
}
.block-ranking-r .block-ranking-r--custom-order { width: 100%; height: var(--goods-list-cart-height); position: relative;}
.block-ranking-r .block-ranking-r--custom-order .block-list-custom-order-btn {
  width: 100%;
  height: 100%;
  padding: 0;
	margin: 0;
	border-radius: var(--goods-list-cart-height);
	font-weight: 700;
	text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
	position: relative;
	transition: var(--transition);
}
.block-ranking-r .block-no-stock { width: 100%; height: var(--goods-list-cart-height);}
.block-ranking-r .block-no-stock .block-no-stock--message {
  width: 100%;
  height: 100%;
  padding: 0;
	margin: 0;
	border-radius: var(--goods-list-cart-height);
	border: var(--button-bg3) 1px solid;
	font-weight: 700;
	text-decoration: none;
	color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
	background: var(--button-bg3);
}

@media screen and (max-width: 1366px) {
	.block-ranking-r .block-ranking-r--item-body { padding: 30px 12px 0;}
	.block-ranking-r .block-ranking-r--item-body .block-auto-icon { padding: 0 12px;}
}
.block-ranking-r .block-ranking-r--icon-wrap .block-icon { padding: 12px 0 0; margin: 0; border-top: var(--border-dot);}

/* R形式 - スライダー */
.block-ranking-r.swiper .block-ranking-r--items.swiper-wrapper { column-gap: 0; flex-wrap: nowrap;}
.block-ranking-r.swiper .block-ranking-r--item-body { margin-bottom: 20px;}
.block-ranking-r.swiper .swiper-controls { justify-content: flex-end;}

/* I形式 */
.block-cart-i--items { width: 100%; margin: 0; display: flex; flex-direction: row; flex-wrap: wrap; column-gap: 16px; position: relative;}
.block-cart-i .block-cart-i--goods { width: calc((100% - (16px * 3))/4); flex-basis: auto; padding: 30px 24px 0; margin: 0 0 40px; display: block; position: relative;}
.block-cart-i--goods .block-auto-icon { width: 100%; padding: 0 24px; position: absolute; top: 0; left: 0; right: 0;}
.block-cart-i--goods .block-cart-i--image { width: calc(100% - 20px); height: auto; padding: calc(100% - 20px) 0 0; margin: 0 10px 20px; position: relative;}
.block-cart-i--goods .block-cart-i--image a { transition: var(--transition);}
.block-cart-i--goods .block-cart-i--image a:hover { opacity: var(--opacity);}
.block-cart-i--goods .block-cart-i--image figure { width: 100%; height: 100%; background: none; display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0;}
.block-cart-i--goods .block-cart-i--item-description { width: 100%; padding: 0 0 12px; margin: 0;}
.block-cart-i--goods .block-cart-i--goods-name {
	max-height: calc(var(--font-size-main) * 2 * var(--line-height-low));
	margin: 0 0 8px;
	font-size: var(--font-size-main);
	font-weight: 700;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-cart-i--goods .block-cart-i--goods-name a { font-size: var(--font-size-main); font-weight: 700; text-decoration: none;}
.block-cart-i--goods .block-cart-i--goods-name a:hover { color: var(--color-sub);}
.block-cart-i--goods .block-revico-star-zone { max-height: 32px; margin: 0 0 8px; font-size: var(--font-size-main);}
.block-cart-i--goods .revico-star .revico-widget a.revico-read-more-review { display: none !important;}
.block-cart-i--goods .block-cart-i--price-infos { margin: 0 0 12px; font-size: var(--font-size-main);}
.block-cart-i--goods .block-cart-i--price-infos .price { font-size: var(--font-size-main); font-weight: 700; text-align: left;}
.block-cart-i--goods .block-cart-i--price-infos .net-price { display: none !important;}
.block-cart-i--goods .block-cart-i--price-infos .default-price { text-align: left;}
.block-cart-i--goods .block-cart-i--price-infos .exchange-price { text-align: left;}
.block-cart-i--goods .block-cart-i--price-infos:has(.default-price) .price { color: var(--color-sale);}
.block-cart-i--goods .block-cart-i--price-infos:has(.default-price) .price .yen { color: var(--color-sale);}
.block-cart-i--goods .block-cart-i--price-infos .block-exchange-price--rate-dt { text-align: left;}
.block-cart-i--goods .block-cart-i--scomment { display: none !important;}
.block-cart-i--goods .block-cart-i--comment  { display: none !important;}
.block-cart-i--goods .block-cart-i--add-cart { width: 100%; height: var(--goods-list-cart-height);}
.block-cart-i--goods .block-cart-i--add-cart .block-list-add-cart-btn {
  width: 100%;
  height: 100%;
  padding: 0 0 0 var(--goods-list-cart-icon-padding);
	border-radius: var(--goods-list-cart-height);
	font-weight: 700;
	text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
	background-image: var(--goods-list-cart-icon-image);
	background-repeat: no-repeat;
	background-position: var(--goods-list-cart-icon-position);
	-webkit-background-size: var(--goods-list-cart-icon-size);
	background-size: var(--goods-list-cart-icon-size);
	transition: var(--transition);
}
.block-cart-i--goods .block-cart-i--add-cart .block-list-add-cart-btn:hover {
	color: var(--color-main);
	background-image: var(--goods-list-cart-icon-image-hover);
}
.block-cart-i--goods .block-cart-i--custom-order { width: 100%; height: var(--goods-list-cart-height); position: relative;}
.block-cart-i--goods .block-cart-i--custom-order .block-list-custom-order-btn {
  width: 100%;
  height: 100%;
  padding: 0;
	margin: 0;
	border-radius: var(--goods-list-cart-height);
	font-weight: 700;
	text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
	position: relative;
	transition: var(--transition);
}
.block-cart-i--goods .block-no-stock { width: 100%; height: var(--goods-list-cart-height);}
.block-cart-i--goods .block-no-stock .block-no-stock--message {
  width: 100%;
  height: 100%;
  padding: 0;
	margin: 0;
	border-radius: var(--goods-list-cart-height);
	border: var(--button-bg3) 1px solid;
	font-weight: 700;
	text-decoration: none;
	color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
	background: var(--button-bg3);
}

@media screen and (max-width: 1366px) {
	.block-cart-i--goods .block-cart-i--goods { padding: 30px 12px 0;}
	.block-cart-i--goods .block-cart-i--goods .block-auto-icon { padding: 0 12px;}
}
.block-cart-i--goods .block-cart-i--icon-wrap {}
.block-cart-i--goods .block-cart-i--icon-wrap .block-icon { padding: 12px 0 0; margin: 0; border-top: var(--border-dot);}

/* I形式 - スライダー */
.block-cart-i.swiper .block-cart-i--items.swiper-wrapper { column-gap: 0; flex-wrap: nowrap;}
.block-cart-i.swiper .block-cart-i--goods { margin-bottom: 20px;}
.block-cart-i.swiper .swiper-controls { justify-content: flex-end;}

/* P形式 */
.block-pickup-list-p--item { width: 100%; margin: 0; display: flex; flex-direction: row; flex-wrap: wrap; column-gap: 16px; position: relative;}
.block-pickup-list-p .block-pickup-list-p--item-body { width: calc((100% - (16px * 3))/4); flex-basis: auto; padding: 30px 24px 0; margin: 0 0 40px; display: block; position: relative;}
.block-pickup-list-p .block-pickup-list-p--item-body .block-auto-icon { width: 100%; padding: 0 24px; position: absolute; top: 0; left: 0; right: 0;}
.block-pickup-list-p .block-pickup-list-p--image { width: calc(100% - 20px); height: auto; padding: calc(100% - 20px) 0 0; margin: 0 10px 20px; position: relative;}
.block-pickup-list-p .block-pickup-list-p--image a { transition: var(--transition);}
.block-pickup-list-p .block-pickup-list-p--image a:hover { opacity: var(--opacity);}
.block-pickup-list-p .block-pickup-list-p--image figure { width: 100%; height: 100%; background: none; display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0;}
.block-pickup-list-p .block-pickup-list-p--item-description { width: 100%; padding: 0; margin: 0; position: relative;}
.block-pickup-list-p .block-pickup-list-p--goods-name {
	max-height: calc(var(--font-size-main) * 2 * var(--line-height-low));
	margin: 0 0 8px;
	font-size: var(--font-size-main);
	font-weight: 700;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-pickup-list-p .block-pickup-list-p--goods-name a { font-size: var(--font-size-main); font-weight: 700; text-decoration: none;}
.block-pickup-list-p .block-pickup-list-p--goods-name a:hover { color: var(--color-sub);}
.block-pickup-list-p .block-revico-star-zone { max-height: 32px; margin: 0 0 8px; font-size: var(--font-size-main);}
.block-pickup-list-p .revico-star .revico-widget a.revico-read-more-review { display: none !important;}
.block-pickup-list-p .block-pickup-list-p--price-infos { min-height: 40px; padding: 0 46px 0 0; margin: 0 0 12px; font-size: var(--font-size-main);}
.block-pickup-list-p .block-pickup-list-p--price-infos .price { font-size: var(--font-size-main); font-weight: 700; text-align: left;}
.block-pickup-list-p .block-pickup-list-p--price-infos .net-price { display: none !important;}
.block-pickup-list-p .block-pickup-list-p--price-infos .default-price { text-align: left;}
.block-pickup-list-p .block-pickup-list-p--price-infos .exchange-price { text-align: left;}
.block-pickup-list-p .block-pickup-list-p--price-infos:has(.default-price) .price { color: var(--color-sale);}
.block-pickup-list-p .block-pickup-list-p--price-infos:has(.default-price) .price .yen { color: var(--color-sale);}
.block-pickup-list-p .block-pickup-list-p--price-infos .block-exchange-price--rate-dt { text-align: left;}
.block-pickup-list-p .block-pickup-list-p--scomment { display: none !important;}
.block-pickup-list-p .block-pickup-list-p--comment  { display: none !important;}
.block-pickup-list-p .block-goods-favorite { position: absolute; bottom: 0; right: 0;}
.block-pickup-list-p .block-goods-favorite .block-goods-list--favorite--btn,
.block-pickup-list-p .block-goods-favorite .block-goods-list--favorite-registed--btn {
	width: 36px;
	height: 36px;
	display: block;
  background-image: url(../../img/usr/common/ico_goodslist_bookmark_btn.png);
	background-repeat: no-repeat;
	background-position: center center;
	-webkit-background-size: cover;
	background-size: cover;
  position: relative;
  top: 0;
  left: 0;
	transition: var(--transition);
}
.block-pickup-list-p .block-goods-favorite .block-goods-list--favorite-registed--btn {
  background-image: url(../../img/usr/common/ico_goodslist_bookmark_reg_btn.png);
}
.block-pickup-list-p .block-goods-favorite .block-goods-list--favorite--btn:hover,
.block-pickup-list-p .block-goods-favorite .block-goods-list--favorite-registed--btn:hover {
	opacity: var(--opacity);
}

@media screen and (max-width: 1366px) {
	.block-pickup-list-p .block-pickup-list-p--item-body { padding: 30px 12px 0;}
	.block-pickup-list-p .block-pickup-list-p--item-body .block-auto-icon { padding: 0 12px;}
}
.block-pickup-list-p .block-pickup-list-p--icon-wrap .block-icon { padding: 12px 0 0; margin: 0; border-top: var(--border-dot);}

/* P形式 - スライダー */
.block-pickup-list-p.swiper .block-pickup-list-p--item.swiper-wrapper { column-gap: 0; flex-wrap: nowrap;}
.block-pickup-list-p.swiper .block-pickup-list-p--item-body { margin-bottom: 20px;}
.block-pickup-list-p.swiper .swiper-controls { justify-content: flex-end;}

/* H形式 */
.block-thumbnail-h { width: 100%; margin: 0 auto; flex-wrap: wrap; align-items: flex-start; justify-content: flex-start; column-gap: 18px;}
.block-thumbnail-h--item { width: calc((100% - (18px * 7)) / 8); margin: 0 0 18px 0 !important;}
.block-thumbnail-h--item .block-thumbnail-h--goods-image { width: 100%px; padding: 100% 0 0 0; position: relative;}
.block-thumbnail-h--item .block-thumbnail-h--goods-image a { transition: var(--transition);}
.block-thumbnail-h--item .block-thumbnail-h--goods-image a:hover { opacity: var(--opacity);}
.block-thumbnail-h--item .block-thumbnail-h--goods-image figure {
  width: 100%;
  height: 100%;
  padding: 0;
	border-radius: var(--border-radius); 
  display: flex;
  justify-content: center;
  align-items: center;
  background: #FFF;
  position: absolute;
  top: 0;
  left: 0;
}
.block-thumbnail-h--item .block-thumbnail-h--goods-description { display: none;}

/* H形式 - スライダー */
.block-recent-item-header { margin: 0 0 26px; display: flex; justify-content: space-between; align-items: center;}
.block-recent-item--items.swiper .block-thumbnail-h.swiper-wrapper { flex-wrap: nowrap;}

/* T形式 */
.block-thumbnail-t--items { width: 100%; margin: 0; display: flex; flex-direction: row; flex-wrap: wrap; column-gap: 16px; position: relative;}
.block-thumbnail-t--items .block-thumbnail-t--goods { width: calc((100% - (16px * 3))/4); flex-basis: auto; padding: 24px 24px 10px; margin: 0 0 30px; display: block; position: relative;}
.block-thumbnail-t--items .block-thumbnail-t--goods .block-auto-icon { width: 100%; padding: 0 24px; position: absolute; top: 0; left: 0; right: 0;}
.block-thumbnail-t--items .block-thumbnail-t--goods .block-icon { display: none;}
.block-thumbnail-t--items .block-thumbnail-t--goods-image { width: calc(100% - 20px); height: auto; padding: calc(100% - 20px) 0 0; margin: 0 10px 20px; position: relative;}
.block-thumbnail-t--items .block-thumbnail-t--goods-image a { transition: var(--transition);}
.block-thumbnail-t--items .block-thumbnail-t--goods-image a:hover { opacity: var(--opacity);}
.block-thumbnail-t--items .block-thumbnail-t--goods-image figure { width: 100%; height: 100%; background: none; display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0;}
.block-thumbnail-t--items .block-thumbnail-t--goods-description { width: 100%; padding: 0 0 12px; margin: 0;}
.block-thumbnail-t--items .block-thumbnail-t--goods-name {
	max-height: calc(var(--font-size-main) * 2 * var(--line-height-low));
	margin: 0 0 8px;
	font-size: var(--font-size-main);
	font-weight: 700;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-thumbnail-t--items .block-thumbnail-t--goods-name a { font-size: var(--font-size-main); font-weight: 700; text-decoration: none;}
.block-thumbnail-t--items .block-thumbnail-t--goods-name a:hover { color: var(--color-sub);}
.block-thumbnail-t--items .variation-name { display: none;}
.block-thumbnail-t--items .block-thumbnail-t--price-infos { margin: 0 0 12px; font-size: var(--font-size-main);}
.block-thumbnail-t--items .block-thumbnail-t--price-infos .price { font-size: var(--font-size-main); font-weight: 700; text-align: left;}
.block-thumbnail-t--items .block-thumbnail-t--price-infos .net-price { display: none !important;}
.block-thumbnail-t--items .block-thumbnail-t--price-infos .default-price { text-align: left;}
.block-thumbnail-t--items .block-thumbnail-t--price-infos .exchange-price { text-align: left;}
.block-thumbnail-t--items .block-thumbnail-t--price-infos:has(.default-price) .price { color: var(--color-sale);}
.block-thumbnail-t--items .block-thumbnail-t--price-infos:has(.default-price) .price .yen { color: var(--color-sale);}
.block-thumbnail-t--items .block-thumbnail-t--goods-description .action { margin: 10px 0;}
.block-thumbnail-t--items .block-thumbnail-t--goods-description .action .btn { height: var(--goods-list-cart-height); margin: 0; font-size: var(--font-size-sub);}
.block-thumbnail-t--items .block-thumbnail-t--goods-description .action .block-goodschange-list-item-buttons-selected {
  width: 100%;
  height: var(--goods-list-cart-height);
  padding: 0;
	border-color: var(--color-red);
	border-radius: var(--goods-list-cart-height);
	font-weight: 700;
	text-decoration: none;
	color: var(--color-red);
  display: flex;
  justify-content: center;
  align-items: center;
	transition: var(--transition);
}

/* 使用しない表示形式 */
.block-goods-detail-j,
.block-goods-list-d,
.block-goods-list-l,
.block-goods-name-n,
.block-list-s,
.block-pickup-list-w,
.block-check-list-a--item,
.block-bulk-purchase-b { display: none;}

/* 商品利用許諾
---------------------------------- */
.block-goods-agree { max-width: var(--customer-frame); margin: 0 auto;}
.block-goods-agree .block-goods-agree--item { font-size: var(--font-size-main);}

/* 取扱店舗一覧
---------------------------------- */
.page-storestock h1.block-store-stock--name-header { margin: 0 0 30px; font-size: var(--font-size-H2); text-align: left;}
.page-storestock .block-store-stock--comment { margin: 0 0 30px; font-size: var(--font-size-main);}
.page-storestock .block-store-stock--goods { margin: 0 0 30px; display: flex; justify-content: space-between;}
.page-storestock .block-store-stock--goods .block-store-stock--goods-img { width: 40%; padding: 40% 0 0 0; position: relative;}
.page-storestock .block-store-stock--goods .block-store-stock--goods-img .block-store-stock--goods-img-l {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
}
.page-storestock .block-store-stock--goods .block-store-stock--goods-detail { width: calc(60% - 60px);}
.page-storestock .block-store-stock--goods .block-store-stock--goods-detail dt { font-size: var(--font-size-main); font-weight: 700;}
.page-storestock .block-store-stock--goods .block-store-stock--goods-detail dd { font-size: var(--font-size-main); font-weight: 500;}
.page-storestock h2.block-store-stock--header {
	padding: 0 0 0 36px;
	margin: 0 0 20px;
	font-size: var(--font-size-H4);
	font-weight: 700;
	line-height: var(--line-height-low);
	color: var(--color-main);
	position: relative;
}
.page-storestock h2.block-store-stock--header::before {
	content: '';
	width: 24px;
	height: 24px;
	background-image: var(--ttl-image1);
	background-repeat: no-repeat;
	background-position: center center;
	-webkit-background-size: 24px 24px;
	background-size: 24px 24px;
	position: absolute;
	top: 0;
	left: 0;
}
.page-storestock .block-store-stock--message { margin: 20px 0; font-size: var(--font-size-main);}
.page-storestock table.block-store-stock--table { width: 100%;}

/* ==================================================
 UserReview ユーザーレビュー
================================================== */
.block-review-list--item { width: 100%; margin: 0; display: flex; flex-direction: row; flex-wrap: wrap; column-gap: 16px; position: relative;}
.block-review-list .block-review-list--item-body { width: calc((100% - (16px * 3))/4); padding: 30px 24px 0; margin: 0 0 40px; display: block; position: relative;}
.block-review-list .block-review-list--image { width: calc(100% - 20px); padding: calc(100% - 20px) 0 0; margin: 0 10px 20px; position: relative;}
.block-review-list .block-review-list--image a { transition: var(--transition);}
.block-review-list .block-review-list--image a:hover { opacity: var(--opacity);}
.block-review-list .block-review-list--image figure { width: 100%; height: 100%; background: none; display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0;}
.block-review-list .block-review-list--item-description { width: 100%; padding: 0; margin: 0;}
.block-review-list .block-review-list--goods-name {
	max-height: calc(var(--font-size-main) * 2 * var(--line-height-low));
	margin: 0 0 16px;
	font-size: var(--font-size-main);
	font-weight: 700;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-review-list .block-review-list--goods-name a { font-size: var(--font-size-main); font-weight: 700; text-decoration: none;}
.block-review-list .block-review-list--goods-name a:hover { color: var(--color-sub);}
.block-review-list .block-review-list--goods-comment {
	height: calc(var(--font-size-small) * 3 * var(--line-height-middle) + 16px);
	padding: 16px 0 0;
	margin: 0 0 8px;
	border-top: var(--border-dot);
	font-size: var(--font-size-small);
	font-weight: 500;
  display: block;
  line-height: var(--line-height-middle);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.block-review-list .block-revico-star-zone { max-height: 32px; margin: 0 0 8px; font-size: var(--font-size-main);}
.block-review-list .revico-star .revico-widget a.revico-read-more-review { display: none !important;}
.block-review-list .block-review-list--detail { width: 100%; height: 36px;}

@media screen and (max-width: 1366px) {
	.block-review-list .block-review-list--item-body { padding: 30px 12px 0;}
}
@media screen and (max-width: 1200px) {
	.block-review-list .block-review-list--detail { letter-spacing: -1px;}
	.block-review-list .block-review-list--detail .design-button::after { right: 12px;}
}

/* レビュー - スライダー */
.block-review-list.swiper { overflow: hidden;}
.block-review-list.swiper .block-review-list--item.swiper-wrapper { column-gap: 0; flex-wrap: nowrap;}
.block-review-list.swiper .block-review-list--item-body { margin-bottom: 20px;}
.block-review-list.swiper .swiper-controls { justify-content: flex-end;}
.block-review-list:not(.swiper) .swiper-controls { display: none;}


/* ==================================================
 Entry
================================================== */
/* 会員規約
---------------------------------- */
.block-member-terms { max-width: var(--customer-frame); margin: 0 auto;}

/* 新規会員登録
---------------------------------- */
.block-member-info { max-width: var(--customer-frame); margin: 0 auto;}
.block-member-info .fieldset .form-control { max-width: calc(var(--customer-frame) - 388px);}
.block-member-info-confirmation { max-width: var(--customer-frame); margin: 0 auto;}

.block-member-registration-completed { max-width: var(--customer-frame); margin: 0 auto;}
.block-member-registration-completed h1 + p { font-size: var(--font-size-main); text-align: center;}

/* 簡易会員登録
---------------------------------- */
.block-quick-member-info { max-width: var(--customer-frame); margin: 0 auto;}
.block-quick-member-info--message p { font-size: var(--font-size-main);}
.block-quick-member-info-confirmation { max-width: var(--customer-frame); margin: 0 auto;}
.block-quick-member-info-confirmation p { font-size: var(--font-size-main);}
.block-quick-member-registration-completed { max-width: var(--customer-frame); margin: 0 auto;}
.block-quick-member-registration-completed p { font-size: var(--font-size-main); text-align: center;}

/* ワンタイムパスワード認証
---------------------------------- */
.block-onetimepassword-certify { max-width: var(--customer-frame); margin: 0 auto;}
.block-onetimepassword-certify--header-message { font-size: var(--font-size-main);}
.block-onetimepassword-certify--resend-message .block-onetimepassword-certify--resend-link { font-size: var(--font-size-main); text-decoration: underline; transition: var(--transition);}
.block-onetimepassword-certify--resend-message .block-onetimepassword-certify--resend-link:hover { color: var(--color-sub);}

/* ワンタイムパスワード送信
---------------------------------- */
.block-onetimepassword-send { max-width: var(--customer-frame); margin: 0 auto;}
.block-member-terms--message,
.block-onetimepassword-send--message { font-size: var(--font-size-main);}

/* ログイン
---------------------------------- */
.page-login .block-login { max-width: var(--customer-frame); margin: 0 auto;}
.page-login .block-login h2 {
	padding: 2px 0 2px 36px;
	margin: 0 0 20px;
	border: none;
	font-size: var(--font-size-H3);
	font-weight: 700;
	line-height: var(--line-height-low);
	color: var(--color-main);
	position: relative;
}
.page-login .block-login h2::before {
	content: '';
	width: 24px;
	height: 24px;
	position: absolute;
	top: 4px;
	left: 0;
	background-image: var(--ttl-image1);
	background-repeat: no-repeat;
	background-position: center center;
	-webkit-background-size: 24px 24px;
	background-size: 24px 24px;
}
.page-login .block-login *[class*="-text"],
.page-login .block-login *[class*="-message"],
.page-login .block-login .block-cart--amazonpay-description { padding-left: 36px; margin-bottom: 20px; font-size: var(--font-size-main);}
.page-login .block-login--member-body { display: block;}
.page-login .block-login--member-body .block-login--member-frame { margin: 0 0 60px; display: block;}
.page-login .block-login--member-body .block-login--social-frame { padding: 0; margin: 0 0 60px; display: block;}
.page-login .block-login--member-body .block-login--first-time   { padding: 0; margin: 0 0 60px; display: block;}
.page-login .block-login--member-body .block-login--linelogin-body { margin: 0 auto;}
.page-login .block-login--member-body .block-login--snslogin-body  { margin: 0 auto;}
.page-login .block-login--ask-password.help-block a:hover { color: var(--color-sub);}
.block-additional-authentication { max-width: var(--customer-frame); margin: 0 auto;}
.block-additional-authentication--body { padding: 0; border: none;}

/* アプリログイン訴求画面
---------------------------------- */
.block-applogin-body { font-size: 16px; letter-spacing: 0.1em; line-height: 1.9em; text-align: center; margin: auto; height: 100px;}

/* 会員登録完了
---------------------------------- */
.page-entrycomplete a.block-member-registration-completed--forward { border: var(--button-bg1) 2px solid; color: #FFF; background-color: var(--button-bg1); transition: var(--transition);}
.page-entrycomplete a.block-member-registration-completed--forward::after {
  content: '';
  width: 8px;
  height: 8px;
  border-right: #FFF 2px solid;
  border-top: #FFF 2px solid;
  position: absolute;
  right: 16px;
  top: calc(50% - 4px);
  display: block;
  transform: rotate(45deg);
}
.page-entrycomplete a.block-member-registration-completed--forward:hover { color: var(--button-bg1); background-color: #FFF;}
.page-entrycomplete a.block-member-registration-completed--forward:hover::after { border-color: var(--button-bg1); color: var(--button-bg1);}
