﻿@charset "UTF-8";

/* ----トップページ本文---- */
.block-top-body--body {
	width: 100%;
	margin-bottom: 13.3vw;
}
.block-top-body--body .top-slider-image {
	display: none;
}
.block-top-body--body .top-slider-image a, .block-top-body--body .top-slider-image span {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
}
.block-top-body--body .top-slider-image a img, .block-top-body--body .top-slider-image span img {
	opacity: 0;
}
.block-top-body--body .slick-arrow {
	position: absolute;
	top: 50%;
	z-index: 10;
	padding: 0;
	border: none;
	background: none;
	outline: none;
}
.block-top-body--body .slick-arrow:before {
	content: '';
	display: block;
	width: 6.66vw;
	height: 6.66vw;
	border-top: solid 2px #ffffff;
	border-left: solid 2px #ffffff;
}
.block-top-body--body .slick-arrow.slick-prev {
	left: 1.333vw;
}
.block-top-body--body .slick-arrow.slick-prev:before {
	margin-left: 1.3vw;
	transform: rotate(-45deg);
}
.block-top-body--body .slick-arrow.slick-next {
	right: 1.333vw;
}
.block-top-body--body .slick-arrow.slick-next:before {
	margin-right: 1.3vw;
	transform: rotate(135deg);
}
.block-top-body--body .slick-dots {
	position: absolute;
	bottom: -2.4rem;
	width: 100%;
	display: flex;
	justify-content: center;
}
.block-top-body--body .slick-dots li {
	margin-right: 2.0rem;
	width: 0.9rem;
	height: 0.9rem;
}
.block-top-body--body .slick-dots li:last-child {
	margin-right: 0;
}
.block-top-body--body .slick-dots li button {
	border: none;
	width: 0.9rem;
	height: 0.9rem;
	text-indent: 300%;
	white-space: nowrap;
	overflow: hidden;
	position: relative;
	background: #ffffff;
	padding: 0;
	border-radius: 0.9rem;
}
.block-top-body--body .slick-dots li button:before, .block-top-body--body .slick-dots li button:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 0.9rem;
}
.block-top-body--body .slick-dots li button:before {
	width: 100%;
	background-color: #ccc;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
transition: all .3s ease}
.block-top-body--body .slick-dots li button:hover:before {
	background-color: #929292;
}
.block-top-body--body .slick-dots li button:after {
	width: 0;
	background-color: #911330;
}
.block-top-body--body .slick-dots li.slick-active button:after {
	animation-name: slickDotAnimation;
	animation-duration: 4.5s;
	animation-timing-function: linear;
	animation-fill-mode: forwards;
}
.block-top-body--body .slick-dots li button:hover {
	cursor: pointer;
}
@keyframes slickDotAnimation {
	from {
		width: 0;
	}
	to {
		width: 100%;
	}
}
/* ----トップページ予備テンプレート1---- */
#block_of_top_free1 {
	width: 93.333vw;
	margin: 0 auto 0;
}
#block_of_top_free2 {
	width: 93.333vw;
	margin: 0 auto 0;
}
.block-top--item-list {
	width: 100%;
	margin: 0 auto 3.0rem;
}
.block-top--item-list h2 {
	margin: 0 0 1.7rem;
	text-align: center;
}
.block-top--item-list .block-top--item-list--line {
}
.block-top--item-list .block-top--item-list--item {
	position: relative;
	width: 100%;
}
.block-top--item-list .block-top--item-list--item {
	margin-top: 3.0rem;
}
.block-top--item-list h2+.block-top--item-list--item {
	margin-top: 0;
}
.block-top--item-list .block-top--item-list--item figure {
	margin: 0 0 1.2rem;
	text-align: center;
}
.block-top--item-list .block-top--item-list--item dl {
	margin: 0 0 0;
}
.block-top--item-list .block-top--item-list--item dl dt {
	margin: 0 0 0.9rem;
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	color: #911330;
}
.block-top--item-list .block-top--item-list--item a.btn-more {
	margin: 0.9rem 0 0;
}

/* ----ヘッダー---- */
.optimaized-h1 {
	position: absolute;
	z-index: 0;
	top: 13.730vw;
	left: 0;
	width: 100vw;
	height: 9.333vw;
	padding: 4.6vw 0.3rem 0;
	white-space: nowrap;
	overflow: hidden;
	background: url(../../img/usr/common/head_bg_sp.jpg) center / cover no-repeat;
	font-size: 0.9rem;
	line-height: 1.2;
	font-weight: normal;
	color: #ffffff;
	text-align: center;
	text-overflow: ellipsis;
}
.pane-header {
	position: fixed;
	z-index: 99995;
	left: 0;
	top: 0;
	width: 100vw;
	height: 13.733vw;
	margin: 0;
	padding: 0;
	background: #ffffff;
	text-align: center;
}
.pane-header__order {
	position: absolute;
}
.pane-header .block-header-logo {
	width: 15.733vw;
	margin: 0 auto 0;
	padding-top: 0.5rem;
}
.pane-header .block-header-logo img {
	height: auto;
}
.pane-header .block-headernav--menu {
	position: absolute;
	left: 1.0rem;
	top: 1.0rem;
}
.pane-header .block-headernav--menu p {
	padding: 2.4rem 0 0;
	font-size: 0.8rem;
	line-height: 1.2;
	text-align: center;
}
.pane-header .block-headernav--menu p:before, .pane-header .block-headernav--menu p:after {
	content: '';
}
.pane-header .block-headernav--menu p:before, .pane-header .block-headernav--menu p:after, .pane-header .block-headernav--menu p>span {
	position: absolute;
	left: calc(50% - 1.0rem);
	display: inline-block;
	width: 2.0rem;
	height: 1.5px;
	background: #333333;
}
.pane-header .block-headernav--menu p:before {
	top: 0.4rem;
}
.pane-header .block-headernav--menu p:after {
	top: 1.6rem;
}
.pane-header .block-headernav--menu p>span {
	top: 1.0rem;
}
.pane-header .block-headernav--search {
	position: absolute;
	left: 4.8rem;
	top: 1.0rem;
}
.pane-header .block-headernav--search p {
	padding: 2.4rem 0 0;
	width: 3.2rem;
	font-size: 0.8rem;
	line-height: 1.2;
	text-align: center;
	background: url(../../img/usr/common/icon_head_search.png) center top / auto 1.9rem no-repeat;
}
.pane-header .block-headernav {
	position: absolute;
	right: 1.1rem;
	top: 1.0rem;
}
.pane-header .block-headernav ul {
	display: flex;
	justify-content: flex-end;
}
.pane-header .block-headernav ul li {
	margin: 0 0 0 0.6rem;
}
.pane-header .block-headernav ul li a {
	display: block;
	margin: 0;
	padding: 2.4rem 0 0;
	font-size: 0.8rem;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}
.pane-header .block-headernav .block-headernav--item-login {
	background: url(../../img/usr/common/icon_head_login.png) center top / auto 1.9rem no-repeat;
}
.pane-header .block-headernav .block-headernav--item-mypage {
	background: url(../../img/usr/common/icon_head_mypage.png) center top / auto 1.9rem no-repeat;
}
.pane-header .block-headernav .block-headernav--item-cart a {
	display: flex;
	flex-flow: wrap;
	justify-content: center;
	padding: 0;
	width: 6em;
}
.pane-header .block-headernav .block-headernav--item-cart a span {
	display: block;
}
.pane-header .block-headernav .block-headernav--item-cart a .block-headernav--cart-icon {
	width: 2.1rem;
	height: 2.4rem;
	background: url(../../img/usr/common/icon_head_cart.png) center top / auto 1.9rem no-repeat;
}
.pane-header .block-headernav .block-headernav--item-cart a .block-headernav--cart-count {
	background: #d30030;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-left: 0.25rem;
	width: 1.8rem;
	height: 1.8rem;
	font-size: 0.8rem;
	line-height: 1.1;
	border-radius: 1.8rem;
	color: #fff;
}
.pane-header .block-headernav .block-headernav--item-cart a .block-headernav--cart-count:empty {
	display: none;
}
.pane-header .block-headernav .block-headernav--item-cart a .block-headernav--cart-text {
	width: 100%;
}
.block-headernav--bg {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 99998;
	background: rgba(0, 0, 0, 0.7);
}
#header-over-nav--btn {
	position: fixed;
	z-index: 99998;
	width: 100vw;
	left: 0;
	top: 0;
	display: none;
}
#header-over-nav {
	position: fixed;
	z-index: 99999;
	width: calc(100% - 4.5rem);
	width: 0;
	left: 0;
	top: 0;
	bottom: 0;
	overflow: hidden;
	transition: all 0.3s;
	display: none;
}
#header-over-nav.js-st__open {
	width: calc(100% - 4.5rem);
}
.block-headernav--menu-close {
  display: flex;
  justify-content: center;
  position: absolute;
	z-index: 99999;
	right: 1.1rem;
	top: 0;
	width: 3.4rem;
	height: 9rem;
  background-color: var(--black1);
  padding-top: 2.8rem;
  color: var(--white);
  border: 1px solid var(--gray3);
  border-radius: 0 0 1rem 0;
}
.block-headernav--menu-close span {
  display: inline-block;
  writing-mode: vertical-rl;
  letter-spacing: .04em;
  font-weight: 500;
}
.block-headernav--menu-close:before,
.block-headernav--menu-close:after {
	position: absolute;
	left: 50%;
	top: 1.4rem;
	content: '';
	display: block;
	width: 1.0rem;
	height: 1px;
	background: #ffffff;
  translate: -.5rem 0;
}
.block-headernav--menu-close:before {
	transform: rotate(45deg);
}
.block-headernav--menu-close:after {
	transform: rotate(-45deg);
}
.header-over-nav--container {
	position: relative;
	z-index: 15;
	left: 0;
	width: 90.666vw;
	max-height: 100%;
	padding: 0 0 3.0rem;
	overflow: auto;
	background: #FAFAFA;
}
.header-over-nav--container>dl {
  padding: 0 1.2rem;
}
.header-over-nav--container>dl dt {
	display: block;
	margin: 0;
	padding: 2rem 0 .8rem;
	color: var(--red4);
  font-family: var(--serif);
	font-size: 1.6rem;
	line-height: 1.2;
	font-weight: 500;
  border-bottom: 1px solid var(--red5);
}
.header-over-nav--container>dl dd ul li a {
	display: flex;
  align-items: center;
  column-gap: .6rem;
	margin: 0;
	padding: 1.2rem 3.4rem 1.2rem 1.4rem;
	text-decoration: none;
	font-size: 1.6rem;
  font-weight: 500;
	line-height: 1.4;
}
.header-over-nav--container>dl dd ul li a:before {
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .4rem 0 .4rem 0.7rem;
	border-color: transparent transparent transparent var(--red1);
}
.header-over-nav--info {
  padding: 2rem;
  background: url(../../img/usr/common/bg_spnav.jpg) no-repeat center / cover;
  margin-top: 1rem;
}
.header-over-nav--info-title {
  font-family: var(--serif);
  font-size: 1.6rem;
  text-align: center;
  font-weight: 500;
  color: var(--red1);
}
.header-over-nav--info-list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 1rem;
  row-gap: 1rem;
  margin-top: 1.4rem;
}
.header-over-nav--info-list-i {
  width: calc((100% - 1rem) / 2);
  height: 5rem;
  border: 1px solid var(--red6);
  border-radius: .3rem;
  overflow: hidden;
}
.header-over-nav--info-list-i a {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: .6rem;
  width: 100%;
  height: 100%;
  font-family: var(--serif);
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: .04em;
  line-height: 1.15;
  background-color: var(--white);
  background-size: 2rem 2rem;
}
.header-over-nav--info-list-i a::before {
  display: block;
  content: "";
  width: 2.2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.header-over-nav--info-list-i.-first a::before {
  background-image: url(../../img/usr/common/icon_spnav_first.png);
}
.header-over-nav--info-list-i.-guide a::before {
  background-image: url(../../img/usr/common/icon_spnav_guide.png);
}
.header-over-nav--info-list-i.-delivery a::before {
  background-image: url(../../img/usr/common/icon_spnav_delivery.png);
}
.header-over-nav--info-list-i.-gift a::before {
  background-image: url(../../img/usr/common/icon_spnav_gift.png);
}
.header-over-nav--info-contact {
  width: 100%;
  aspect-ratio: 29 / 22;
  margin-top: 2rem;
  background: url(../../img/usr/common/bg_spnav_contact.png) no-repeat center / cover;
  padding: 2rem 1.5rem 2.4rem;
}
.header-over-nav--info-contact-title {
  font-size: 1.4rem;
  font-family: var(--serif);
  font-weight: 500;
  text-align: center;
  color: var(--red1);
}
.header-over-nav--info-contact-tel {
  margin-top: 1.2rem;
}
.header-over-nav--info-contact-tel a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  column-gap: 1rem;
  height: 3.7rem;
  font-size: 2.6rem;
  font-family: var(--serif);
  font-weight: 500;
  color: var(--red1);
  margin: 0 auto;
}
.header-over-nav--info-contact-tel a::before {
  display: block;
  content: "";
  width: 2rem;
  height: 2.3rem;
  background: url(../../img/usr/common/icon_spnav_tel.png) no-repeat center / contain;
}
.header-over-nav--info-contact-text {
  font-size: 1.2rem;
  letter-spacing: .02em;
  text-align: center;
  margin-top: 1.2rem;
}
.header-over-nav--info-contact-text span:nth-child(1) {
  display: block;
  font-weight: 500;
}
.header-over-nav--info-contact-btn {
  margin-top: 1.2rem;
}
.header-over-nav--info-contact-btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
  width: 100%;
  height: 4.4rem;
  font-size: 1.3rem;
  color: var(--white);
  font-weight: 500;
  line-height: 1;
  background-color: var(--red1);
  border-radius: 10rem;
}
.header-over-nav--info-contact-btn a::before {
  display: block;
  content: "";
  width: 2.2rem;
  height: 1.53rem;
  background: url(../../img/usr/common/icon_spnav_mail.png) no-repeat center / contain;
}
.header-over-nav--close {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% - 5.6rem);
  height: 4.3rem;
  margin: 2rem auto 0;
  border-radius: 10rem;
  border: 1px solid var(--gray3);
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: .04em;
}
.header-over-nav--close span {
  position: relative;
}
.header-over-nav--close span::before,
.header-over-nav--close span::after {
  display: block;
  content: "";
  width: 2.1rem;
  height: .1rem;
  background-color: var(--black2);
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -4em;
}
.header-over-nav--close span::before {
  rotate: -45deg;
}
.header-over-nav--close span::after {
  rotate: 45deg;
}




#header-over-search {
	position: fixed;
	z-index: 99999;
	left: 0;
	top: 0;
	width: 100%;
	display: none;
}
.block-search-box--form {
	position: relative;
	align-items: stretch;
	margin: 0;
	padding: 1.2rem;
	background: #ffffff;
}
.block-search-box--form>span:first-child {
	border: none;
	border-bottom: solid 1px #333333;
}
.block-search-box--form>span:first-child .block-search-box--keyword {
	padding: 0;
	background: none;
	border: none;
	width: calc(100% - 2.3rem);
	height: 2.9rem;
	outline: none;
}
.block-search-box--form>span.input-group-btn {
	position: absolute;
	right: 1.2rem;
	top: 1.2rem;
	width: 2.3rem;
	height: 2.9rem;
}
.block-search-box--form>span.input-group-btn button {
	border: none;
	background: url(../../img/usr/common/icon_head_search.png) center top / auto 1.9rem no-repeat;
	width: 2.3rem;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	font-size: 0;
	text-indent: -9999em;
}
.block-search-suggest {
	position: absolute;
	display: block;
	z-index: 100000;
	text-align: left;
	padding: 5px;
	width: calc(100vw - 2.4rem);
	background-color: #fff;
	border: solid 1px #ccc;
}
.block-search-suggest {
	position: fixed;
}
/* ----パンくず---- */
.block-topic-path {
	margin: 0;
	padding: 0 1.2rem 1.3rem;
	background: none;
}
.block-topic-path a {
	text-decoration: none;
}

/* ----フッター---- */
.pane-footer {
  width: 100%;
  position: relative;
  /* margin-top: 9rem; */
}
.footer-inner {
  position: relative;
}

/* footer-nav */
.footer-nav {
  display: block;
  background: url(../../img/usr/footer/bg_pink.jpg) no-repeat center / cover;
}
.footer-nav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.footer-nav-list-i {
  width: 50%;
}
.footer-nav-list-i:nth-child(2n) {
  border-left: 1px solid rgba(var(--gray1RGB), .2);
}
.footer-nav-list-i:nth-child(n + 3) {
  border-top: 1px solid rgba(var(--gray1RGB), .2);
}
.footer-nav-list-i a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: 1.3rem;
  width: 100%;
  height: 13rem;
}
.footer-nav-list-i-img {
  width: 3rem;
  height: 3rem;
}
.footer-nav-list-i:nth-child(3) .footer-nav-list-i-img {
  width: 4.3rem;
}
.footer-nav-list-i-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}
.footer-nav-list-i-text {
  font-family: var(--serif);
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: .04em;
}
/* footer-main */
.footer-main {
  background: url(../../img/usr/footer/bg_gray.jpg) no-repeat center / cover;
}
.footer-main-inner {
  margin: 0 auto;
  padding: 5rem 2rem;
}
.footer-main-left {
  width: 100%;
}
.footer-main-title {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: var(--serif);
  color: var(--red1);
}
.footer-main-productList {
  display: flex;
  flex-wrap: wrap;
  row-gap: 1.4rem;
  margin: 2rem 0 3rem;
}
.footer-main-productList-i {
  display: flex;
  align-items: center;
  column-gap: .6rem;
  width: 50%;
}
.footer-main-productList-i::before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-top: .4rem solid transparent;
  border-bottom: .4rem solid transparent;
  border-left: .7rem solid var(--red1);
}
.footer-main-productList-i a {
  display: block;
  width: 100%;
  font-size: 1.6rem;
  letter-spacing: .04em;
}
.footer-main-snsList {
  display: flex;
  flex-direction: column;
  row-gap: 1.2rem;
  margin-top: 2rem;
}
.footer-main-snsList-i {
  width: 100%;
  height: 5.2rem;
}
.footer-main-snsList-i a {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
  width: 100%;
  height: 100%;
  background: url(../../img/usr/footer/bg-btn-sp.jpg) no-repeat center / cover;
  border-radius: 10rem;
  overflow: hidden;
}
.footer-main-snsList-i a:hover {
  text-decoration: none;
  opacity: var(--opacity);
}
.footer-main-snsList-i.-line .footer-main-snsList-i-img {
  width: 2.6rem;
  height: 2.5rem;
}
.footer-main-snsList-i.-mailnews .footer-main-snsList-i-img {
  width: 2.4rem;
  height: 2.4rem;
}
.footer-main-snsList-i.-instagram .footer-main-snsList-i-img {
  width: 2.6rem;
  height: 2.6rem;
}
.footer-main-snsList-i-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}
.footer-main-snsList-i-text {
  display: flex;
  align-items: flex-end;
  column-gap: .5em;
  font-weight: 500;
}
.footer-main-snsList-i-text-small {
  font-size: 1.4rem;
}
.footer-main-snsList-i-text-main {
  font-size: 1.6rem;
  letter-spacing: .04em;
}
.footer-main-contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: url(../../img/usr/footer/bg-tel-sp.png) no-repeat center / contain;
  padding: 3.2rem;
  margin-top: 3rem;
}
.footer-main-contact-title {
  font-size: 1.6rem;
  font-family: var(--serif);
  font-weight: 500;
  color: var(--red1);
}
.footer-main-contact-tel {
  display: flex;
  align-items: center;
  column-gap: 1rem;
  margin-top: 1.8rem;
}
.footer-main-contact-tel-img {
  display: block;
  width: 2rem;
  height: 2.3rem;
}
.footer-main-contact-tel-img img {
  display: block;
  width: 100%;
  height: 100%;
}
.footer-main-contact-tel-num a {
  font-size: 2.6rem;
  font-family: var(--serif);
  font-weight: 500;
  color: var(--red1);
  line-height: 1;
}
.footer-main-contact-info {
  font-size: 1.2rem;
  margin-top: 1.2rem;
  text-align: center;
}
.footer-main-contact-info span {
  font-weight: 500;
}
.footer-main-contact-btn {
  width: 100%;
  height: 4.4rem;
  margin-top: 1.8rem;
}
.footer-main-contact-btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
  width: 100%;
  height: 100%;
  background-color: var(--red1);
  border-radius: 10rem;
}
.footer-main-contact-btn a:hover {
  opacity: var(--opacity);
}
.footer-main-contact-btn-img {
  width: 2.2rem;
  height: 1.5rem;
}
.footer-main-contact-btn-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}
.footer-main-contact-btn-text {
  font-size: 1.3rem;
  color: var(--white);
  font-weight: 500;
}
.footer-main-right {
  display: none;
}

/* footer-bottom */
.footer-bottom {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: var(--red1);
  padding: 3.5rem 4rem;
}
.footer-bottom-links {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 1rem;
}
.footer-bottom-links-i {
  position: relative;
}
.footer-bottom-links-i + .footer-bottom-links-i::before {
  display: block;
  content: "";
  width: 1px;
  height: 1.2rem;
  background-color: rgba(var(--whiteRGB), .5);
  position: absolute;
  top: 1px;
  left: 0;
}
.footer-bottom-links-i a {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: .5rem;
  font-size: 1.4rem;
  color: var(--white);
  letter-spacing: .04em;
  line-height: 1;
  padding: 0 2rem;
}
.footer-bottom-links-i:nth-child(1) a {
  padding-left: 0;
}
.footer-bottom-links-i:nth-child(2) a,
.footer-bottom-links-i:nth-child(4) a {
  padding-right: 0;
}
.footer-bottom-links-i a img {
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  object-fit: contain;
  object-position: center center;
}
.footer-copy {
  font-size: 1rem;
  letter-spacing: .04em;
  color: var(--white);
  margin-top: 3rem;
}

/* ----ページトップに戻る---- */
.block-page-top a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: .5rem;
  width: 7rem;
  height: 7rem;
  background-color: var(--white);
  border-radius: 50%;
  border: 1px solid var(--red3);
}
.block-page-top a:hover {
  text-decoration: none;
}
.block-page-top a:before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-left: .7rem solid transparent;
  border-right: .7rem solid transparent;
  border-bottom: .8rem solid var(--red3);
}
.block-page-top a:after {
  display: block;
  content: "ページ\Aトップへ\A戻る";
  font-size: 1rem;
  color: var(--red3);
  font-weight: 500;
  letter-spacing: -.04em;
  line-height: 1.2;
  text-align: center;
  white-space: pre;
}
.block-page-top {
  position: fixed;
  top: auto;
  bottom: 1rem;
  right: 2rem;
  display: none;
  height: fit-content;
  z-index: 2;
}
body:has(.block-goods-fixedButtons) .block-page-top {
  bottom: 7rem;
}
.page-method .block-page-top {
  position: fixed;
  top: auto;
  bottom: 74px;
  right: 2rem;
  display: none;
}
.block-page-top.-is-fixed {
  position: absolute;
  top: 0;
  translate: 0 -70%;
}

/* ----PC/スマホ切り替えスイッチ---- */
.block-switcher {
  display: flex;
  width: 84px;
  margin: 0;
  padding: 3px;
  border-radius: 2px;
  background: rgba(34, 34, 34, 0.1);
}

.block-switcher .block-switcher-container {
  width: 38px;
  margin-right: 2px;
}

.block-switcher .block-switcher-container + .block-switcher-container {
  margin-right: 0;
}

.block-switcher .block-switcher-container .block-switcher--current {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 4px 0;
  text-align: center;
  font-size: 10px;
  line-height: 1.5;
  background: #fff;
}

.block-switcher .block-switcher-container .block-switcher--current::before {
  display: block;
  width: 30px;
  height: 30px;
  margin: 0 0 3px;
  background: url(../../img/usr/common/ico_sp.png) center center / 14px auto no-repeat;
  content: "";
}

.block-switcher .block-switcher-container .block-switcher--switch {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 4px 0;
  text-align: center;
  font-size: 10px;
  line-height: 1.5;
  opacity: 0.3;
}

.block-switcher .block-switcher-container .block-switcher--switch::before {
  display: block;
  width: 30px;
  height: 30px;
  margin: 0 0 3px;
  background: url(../../img/usr/common/ico_pc.png) center center / 24px auto no-repeat;
  content: "";
}

.block-switcher .block-switcher-container .block-icon-image-small {
  display: none;
}

.block-switcher .block-switcher-container .block-icon-image-switcher {
  display: none;
}

/* ----Copyright---- */
.block-copyright {
  margin: 0 0 20px;
  font-size: 10px;
  color: #111;
}

/* ----カテゴリ画面---- */
.block-category-list--header-img {
  padding: 0 0 20px;
}

.block-category-list--header-img img {
  width: 100%;
}

.block-category-list--header {
  text-align: center;
  margin: 0 0 7.2vw;
  padding-bottom: 0;
}

.block-category-list--comment {
  text-align: center;
  margin: -2.9vw 10px 7.2vw;
}

/* ----ジャンル---- */
.block-genre-page--goods {
	margin: 0 0 4.0rem;
}
.block-genre-page--header {
	text-align: center;
	margin: 0 0 7.2vw;
	padding-bottom: 0;
}
.block-genre-page--comment {
	text-align: center;
	margin: -2.9vw 10px 7.2vw;
}

/* ----ブランド画面---- */
.page-brandlist .block-topic-path {
  margin-top: 0;
}
.block-brand-list--item-img img {
  width: 100%;
  height: auto;
}
.block-brand-list--item-name {
  padding: 25px 20px 12px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
}
.block-brand-list--item-comment {
  padding: 0 20px 60px;
}
.block-brand-detail--image img {
  width: 100%;
  height: auto;
}
/* ----商品一覧---- */
.block-filter--header {
  position: fixed;
  left: 10px;
  bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 1.4rem;
  width: 27rem;
  height: 5.6rem;
  border-radius: 10rem;
  z-index: 99980;
  background: var(--red2);
}
.block-filter--header::before {
  display: block;
  content: "";
  width: 2.7rem;
  height: 2rem;
  background: url(../../img/usr/common/icon_filter.png) no-repeat center / contain;
}
.block-filter--header.block-filter--open {
  display: none;
}

.block-filter--header .block-filter--header-label {
  margin: 0;
  padding: 0;
  font-family: var(--sans);
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: none;
}

.block-filter--modal {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  z-index: 99999;
}
.block-filter--frame {
  width: calc(100% - 40px);
  height: fit-content;
  max-height: calc(100dvh - 10rem);
  background: #fff;
  border-radius: .8rem;
  padding: 4rem 3rem;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.block-filter--frame-header {
  font-weight: 500;
  line-height: 2.2rem;
  text-align: center;
  margin-top: 0;
  margin-bottom: 4rem;
  padding: 0;
}
.block-filter--frame-close {
  display: block;
  font-size: 1.1rem;
  font-weight: 500;
  white-space: nowrap;
  text-align: center;
  background: url(../../img/usr/common/icon_close.png) no-repeat center top / 1.6rem 1.6rem;
  padding-top: 2.1rem;
  position: absolute;
  top: 1.5rem;
  right: 1rem;
}
.block-filter--wrapper {
  width: 100%;
  overflow: hidden;
}
.block-filter--inner {
  display: block;
  width: 100%;
  min-height: 12rem;
}
.block-filter--filter-items {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.5rem;
  row-gap: 1.5rem;
  width: 100%;
  height: fit-content;
  max-height: 22.5rem;
  overflow-y: auto;
}
.block-filter--wrapper.-is-second .block-filter--filter-items {
  display: none;
}
.block-filter--list-item {
  display: block;
  width: calc((100% - 1.5rem) / 2);
  border: 1px solid var(--gray1);
  border-radius: .5rem;
}
.block-filter--expand-icon {
  display: none;
}
.block-filter--select-label {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 4.3rem;
  font-size: 1.4rem;
  font-weight: 500;
  padding: 0;
}
.block-filter--options-wrap {
  width: 100%;
  height: fit-content;
  max-height: 22.5rem;
  overflow-x: hidden;
  overflow-y: auto;
  display: none;
}
.block-filter--wrapper.-is-second .block-filter--options-wrap {
  display: block;
}
.block-filter--filter-options {
  display: none;
  flex-wrap: wrap;
  column-gap: 1.4rem;
  row-gap: 1.4rem;
  border: none;
}
.block-filter--filter-options.-is-active {
  display: flex;
}
.block-filter--filter-options-title {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
  padding-bottom: .8rem;
  border-bottom: 1px solid var(--gray2);
}
.block-filter--element {
  display: block;
  border: none;
  width: calc((100% - 1.4rem) / 2);
}
.block-filter--element .block-filter--option-items {
  display: block;
  width: 100%;
  height: auto;
  padding: 0;
}
.block-filter--element .block-filter--option-items .checkbox {
  font-size: 1.2rem;
  margin-right: 0;
  position: relative;
}
.block-filter--element .block-filter--option-items .checkbox:has(input:checked) {
  color: var(--red1);
}
.block-filter--element .block-filter--option-items .checkbox input[type="checkbox"] {
  width: 1.8rem;
  height: 1.8rem;
  accent-color: var(--red1);
}
.block-filter-buttons {
  margin-top: 4rem;
}
.block-filter-prev {
  display: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 4.3rem;
  font-size: 1.4rem;
  font-weight: 500;
  border: 1px solid var(--gray2);
  border-radius: 10rem;
  overflow: hidden;
  margin-bottom: 1rem;
  position: relative;
}
.block-filter-prev::before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-top: .3rem solid transparent;
  border-bottom: .3rem solid transparent;
  border-right: .6rem solid var(--red3);
  position: absolute;
  top: 50%;
  left: 1.8rem;
  translate: 0 -50%;
}
.block-filter--frame:has(.-is-second) .block-filter-prev {
  display: flex;
}
.block-filter-close {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
  width: 100%;
  height: 4.3rem;
  background: var(--red4);
  border-radius: 10rem;
  overflow: hidden;
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--white);
}
.block-filter-close-icon {
  display: block;
  width: 2.1rem;
  height: 1.6rem;
  position: relative;
}
.block-filter-close-icon::before,
.block-filter-close-icon::after {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--white);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.block-filter-close-icon::before {
  rotate: -45deg;
}
.block-filter-close-icon::after {
  rotate: 45deg;
}
.block-filter--modal .block-filter--frame-bg {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  cursor: pointer;
}


/* ----表示形式・並び替え---- */
.block-goods-list--display-style-items, .block-goods-list--sort-order-items {
    display: flex;
    align-items: center;
    margin: 0 10px 1.0rem;
}

.block-goods-list--display-style-items .block-style--header, .block-goods-list--sort-order-items .block-sort--header {
    display: block !important;
    width: 6.5rem;
    background: none;
}

.block-goods-list--display-style-items .block-style--header h2, .block-goods-list--sort-order-items .block-sort--header h2 {
    margin: 0;
    padding: 0;
    background: none;
    font-size: 1.2rem;
    line-height: 1.4;
    font-weight: normal;
    font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.block-goods-list--display-style-items .block-style--header .block-style--expand-icon, .block-goods-list--sort-order-items .block-sort--header .block-sort--expand-icon {
    display: none !important;
}

.block-goods-list--display-style-items .block-style--element, .block-goods-list--sort-order-items .block-sort--element {
    display: block !important;
    flex: 1;
}

.block-goods-list--display-style-items .block-style--element select, .block-goods-list--sort-order-items .block-sort--element select {
    width: 100%;
}

.block-goods-list--display-style-items .block-style--select, .block-goods-list--sort-order-items .block-sort--select {
    display: block;
    margin: 0;
    padding: 0;
    height: auto;
    width: auto;
}

.block-goods-list--display-style-items {
  display: flex;
  align-items: center;
  margin: 0 10px 1rem;
}

.block-goods-list--display-style-items .block-style--header {
  display: block;
  width: 6.5rem;
  background: none;
}

.block-goods-list--display-style-items .block-style--header h2 {
}

.block-goods-list--display-style-items .block-style--header .block-style--expand-icon {
  display: none;
}

.pane-main .block-goods-list--params {
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  width: calc(100vw - var(--usr-scrollbar-width));
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin: 20px calc(50% - ((100vw - var(--usr-scrollbar-width)) / 2));
}

.block-filter {}

.block-goods-list--params .block-filter {
  visibility: visible;
  margin: 0 auto 0 0;
  height: auto;
}

.block-goods-list--params .block-goods-list--display-style-items,
.block-goods-list--params .block-goods-list--sort-order-items {
  display: flex;
}

.block-goods-list--params .block-filter .block-filter--header,
.block-goods-list--params .block-filter .block-filter--header.block-filter--header.block-filter--open {
  position: static;
  display: flex;
  width: 120px;
  height: auto;
  margin: 0 auto 0 0;
  padding: 14px 4px;
  border-radius: 0;
  box-shadow: none;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
  background: #000;
}

.block-goods-list--params .block-filter .block-filter--header::before {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 11px;
  vertical-align: top;
  background: url(../../img/usr/common/ico_responsive_filter.png) center center / 100% auto no-repeat;
  content: "";
}

.block-goods-list--params .block-filter .block-filter--header h2 {
  border: 0;
  font-size: 12px;
  line-height: 1.5;
}

.block-goods-list--params .block-filter--modal .block-filter--frame {
  position: fixed;
  top: 0;
  left: 0;
  width: 83%;
  height: 100%;
  max-height: none;
  margin: 0;
  padding: 40px 0 68px;
  border-radius: 0;
  color: #fff;
  scrollbar-width: thin;
  scrollbar-color: transparent transparent;
  background: #000;
}

.block-goods-list--params .block-filter--modal .block-filter--frame::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.block-goods-list--params .block-filter--modal .block-filter--frame::-webkit-scrollbar-track {
  background-color: transparent;
}

.block-goods-list--params .block-filter--modal .block-filter--frame::-webkit-scrollbar-thumb {
  background-color: transparent;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--frame-header {
  display: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--frame-close {
  position: absolute;
  top: 17px;
  right: 25px;
  display: none;
  background: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--frame-close::before,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--frame-close::after {
  position: absolute;
  top: 7px;
  left: 15px;
  width: 2px;
  height: 18px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item {
  border: 0;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--select-label {
  height: 52px;
  padding-left: 16px;
  font-size: 22px;
  font-weight: bold;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--expand-icon {
  position: relative;
  width: 72px;
  height: 52px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--expand-icon > div {
  position: static;
  background: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--expand-icon > div.block-icon-image--plus::before {
  position: absolute;
  top: calc(50% - 8px);
  left: auto;
  right: 18px;
  width: 12px;
  height: 12px;
  border-left: 3px solid #fff;
  border-top: 3px solid #fff;
  transition: transform 0.3s, top 0.3s;
  transform: rotate(225deg);
  background: none;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--expand-icon > div.block-icon-image--minus::before {
  position: absolute;
  top: calc(50% - 4px);
  left: auto;
  right: 18px;
  width: 12px;
  height: 12px;
  border-left: 3px solid #fff;
  border-top: 3px solid #fff;
  transition: transform 0.3s, top 0.3s;
  transform: rotate(45deg);
  background: none;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--expand-icon > div::after {
  display: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--filter-options {
  border: 0;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--option-items {
  padding-left: 16px;
  height: auto;
  background: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--option-items label.checkbox {
  position: relative;
  display: block;
  padding: 8px 0 8px 33px;
  font-size: 15px;
  line-height: 1.4;
  color: #fff;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--option-items label.checkbox::before {
  position: absolute;
  top: calc(50% - 10px);
  left: 0;
  width: 21px;
  height: 21px;
  border: 1px solid rgba(255,255,255,0.09);
  background: rgba(255,255,255,0.15);
  z-index: 1;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--option-items label.checkbox.checked::after {
  position: absolute;
  top: calc(50% - 5px);
  left: 6px;
  width: 10px;
  height: 7px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  z-index: 2;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--option-items label.checkbox input[type="checkbox"] {
  display: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--option-items.block-filter--image img {
  vertical-align: middle;
  margin-right: 8px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--list-item .block-filter--option-items.block-filter--image span {
  display: inline-block;
  vertical-align: middle;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--select {
  padding-left: 16px;
  height: 60px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--select select {
  min-width: 0;
  max-width: 240px;
  width: 100%;
  height: 40px;
  border: 1px solid #808080;
  border-radius: 0;
  font-size: 15px;
  line-height: 38px;
  color: #fff;
  background: #000;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle {
  padding: 0 16px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treelist-layer {
  border: 0;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-2,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-3,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-4 {
  margin: 0;
  border: 0;
  font-size: 14px;
  background: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-2 {
  padding-bottom: 8px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem {
  padding: 0;
  border: 0;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-1 > .block-filter--treeitem {
  border-bottom: 1px solid #555;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-2 > .block-filter--treeitem {
  padding-left: 20px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-3 > .block-filter--treeitem {
  padding-left: 20px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-4 > .block-filter--treeitem {
  padding-left: 20px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-name {
  position: relative;
  padding: 0 0 0 33px;
  color: #fff;
  background: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-dir {
  position: relative;
  width: 56px;
  height: 56px;
  padding: 0;
  background: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-dir > div {
  position: static;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-dir > div::before {
  position: absolute;
  top: calc(50% - 5px);
  left: auto;
  right: 3px;
  width: 8px;
  height: 8px;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  transition: transform 0.3s, top 0.3s;
  transform: rotate(225deg);
  background: none;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-dir.expand-tree-open > div::before {
  top: calc(50% - 3px);
  transform: rotate(45deg);
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-dir > div::after {
  display: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-2 > .block-filter--treeitem .block-filter--treeitem-name {
  height: 56px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-2 > .block-filter--treeitem .block-filter--treeitem-name,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-3 > .block-filter--treeitem .block-filter--treeitem-name,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-4 > .block-filter--treeitem .block-filter--treeitem-name {
  height: 38px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-2 > .block-filter--treeitem .block-filter--treeitem-dir,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-3 > .block-filter--treeitem .block-filter--treeitem-dir,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle ul.block-filter--tree-4 > .block-filter--treeitem .block-filter--treeitem-dir {
  height: 38px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-name span,
.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-name span.block-filter--treeitem-selected {
  color: #fff;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-name span::before {
  position: absolute;
  top: calc(50% - 10px);
  left: 0;
  width: 21px;
  height: 21px;
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 10px;
  background: rgba(255,255,255,0.15);
  z-index: 1;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame .block-filter--treelist-filterstyle .block-filter--treeitem-name span.block-filter--treeitem-selected::after {
  position: absolute;
  top: calc(50% - 5px);
  left: 6px;
  width: 10px;
  height: 7px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  z-index: 2;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame .filter-button {
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex;
  gap: 8px;
  width: 83%;
  background-color: rgba(255,255,255,0.18);
  -webkit-backdrop-filter: blur(39px);
  backdrop-filter: blur(39px);
  padding: 12px 16px;
  z-index: 99;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .filter-button .filter-button--clear {
  display: block;
  width: 86px;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .filter-button .filter-button--clear .block-filter--clear-btn {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid #fff;
  padding: 11px 5px;
  font-size: 14px;
  font-weight: normal;
  line-height: 20px;
  text-align: center;
  color: #fff;
  background: none;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .filter-button .filter-buttonr--search {
  width: calc(100% - 94px);
  padding: 0;
}

.block-goods-list--params .block-filter--modal .block-filter--frame .filter-button .filter-buttonr--search .block-filter--search-btn {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
  padding: 12px 6px;
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
  color: #000;
}

.block-goods-list--params .block-filter--modal .block-filter--frame-bg {
  background: rgba(0, 0, 0, 0.85);
}

.block-goods-list--params .block-filter--modal .block-filter--frame-bg::before {
  position: absolute;
  top: 20px;
  right: calc(8.5% - 1px);
  width: 2px;
  height: 26px;
  transform: rotate(45deg);
  background: #fff;
  content: "";
}

.block-goods-list--params .block-filter--modal .block-filter--frame-bg::after {
  position: absolute;
  top: 20px;
  right: calc(8.5% - 1px);
  width: 2px;
  height: 26px;
  transform: rotate(-45deg);
  background: #fff;
  content: "";
}

.pane-main .block-goods-list--params .block-goods-list--display-style-items,
.pane-main .block-goods-list--params .block-goods-list--sort-order-items {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
  border-left: 1px solid #000;
  display: flex;
  flex-grow: unset;
  flex-shrink: unset;
  width: unset;
  min-width: 0;
  max-width: none;
}

.block-goods-list--params .block-goods-list--display-style-items .block-style--header {
  width: 90px;
  cursor: pointer;
}

.block-goods-list--params .block-goods-list--display-style-items .block-style--header h2 {
  width: 90px;
  padding: 14px 4px;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
  cursor: pointer;
}

.block-goods-list--params .block-goods-list--display-style-items .block-style--header h2::after {
  display: inline-block;
  width: 13px;
  height: 18px;
  margin-left: 10px;
  vertical-align: top;
  background: url(../../img/usr/common/ico_responsive_arrow.png) center center / 100% auto no-repeat;
  content: "";
}

.block-style--element-bg {
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  visibility: hidden;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
  opacity: 0.0;
  cursor: pointer;
  z-index: 9997;
}

.block-style--element-bg.is-show {
  visibility: visible;
  opacity: 1.0;
}

.block-style--element.is-show {
  visibility: visible;
  opacity: 1.0;
}

.block-style--element ul.block-style--list {
  display: block;
}

.block-style--element ul.block-style--list a,
.block-style--element ul.block-style--list span {
  position: relative;
  display: block;
  padding: 3px 0 3px 24px;
  font-size: 14px;
  text-decoration: none;
  line-height: 1.5;
  color: #fff;
}

.block-style--element ul.block-style--list span::before {
  position: absolute;
  top: 8px;
  left: 0;
  width: 12px;
  height: 7px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-35deg) skewY(-15deg);
  content: "";
}

.block-goods-list--params .block-goods-list--sort-order-items .block-sort--header {
  width: 90px;
  cursor: pointer;
}

.block-goods-list--params .block-goods-list--sort-order-items .block-sort--header h2 {
  width: 90px;
  padding: 14px 4px;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.block-goods-list--params .block-goods-list--sort-order-items .block-sort--header h2::after {
  display: inline-block;
  width: 13px;
  height: 18px;
  margin-left: 10px;
  vertical-align: top;
  background: url(../../img/usr/common/ico_responsive_arrow.png) center center / 100% auto no-repeat;
  content: "";
}

.block-sort--element-bg {
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  visibility: hidden;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
  opacity: 0.0;
  cursor: pointer;
  z-index: 9997;
}

.block-sort--element-bg.is-show {
  visibility: visible;
  opacity: 1.0;
}

.block-sort--element {

}

.block-sort--element.is-show {

}

.block-sort--element select {
  /* display: none; */
}

.block-sort--element ul.block-sort--list {
  display: block;
}

.block-sort--element ul.block-sort--list a,
.block-sort--element ul.block-sort--list span {
  position: relative;
  display: block;
  padding: 3px 0 3px 24px;
  font-size: 14px;
  text-decoration: none;
  line-height: 1.5;
  color: #fff;
}

.block-sort--element ul.block-sort--list span::before {
  position: absolute;
  top: 8px;
  left: 0;
  width: 12px;
  height: 7px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-35deg) skewY(-15deg);
  content: "";
}


/* ----イベント---- */
.block-top-event--header {
  width: 100%;
  margin: 3.0rem auto 2.5rem;
  padding: 2.5rem 0 0;
  background: url(../../img/usr/common/line.png) center top repeat-x;
  border: none;
  font-size: 2.2rem;
  line-height: 1.2;
  text-align: center;
}
.block-top-event--goods {
}
.block-top-event--bottom {
  text-align: center;
  margin-top: 3rem;
}
.event-special--wrap+.block-top-event--goods+.block-top-event--header {
  background: none;
  margin-top: 0;
}
.event-special--wrap {
  width: 100vw;
  margin: 0 auto 0;
  padding: 3.0rem 0;
  background: url(../../img/usr/common/event_bg01_sp.jpg) center top / 100% auto repeat-y;
}
.event-special--tit {
  width: 100vw;
  margin: 0 auto 0;
  padding: 0;
  text-align: center;
  background: url(../../img/usr/common/event_titlebg_sp.jpg) center / 100% auto no-repeat;
  font-size: 2.2rem;
  font-weight: normal;
  line-height: 10.666vw;
  color: #ffffff;
}
.event-special--btn {
  width: 100%;
  margin: 30px auto 0;
  text-align: center;
}
.event-special--container {
  width: 93.333vw;
  margin: 0 auto 0;
  display: flex;
  flex-flow: wrap;
  align-items: stretch;
  justify-content: space-between;
}
.event-special--container>.block-top-event--goods {
  display: none !important;
}
a.event-special--item {
  width: 45.333vw;
  margin: 2.0rem 0 0;
  border: solid 1px #fff;
  background: #ffffff;
  text-decoration: none;
}
a.event-special--item>div {
  display: flex;
  flex-flow: column;
  height: 100%;
}
a.event-special--item>div>p {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 1.0rem 0.7rem;
  font-size: 1.2rem;
  line-height: 1.4;
}
/* ----イベント詳細---- */
.h1.block-event-page--header-img {
  text-align: center;
}
.block-event-page--goods {
margin: 0;
}
.block-event-page--header {
text-align: center;
margin: 0 0 7.2vw;
padding-bottom: 0;
}
.block-event-page--comment {
  text-align: center;
  margin: -2.9vw 10px 7.2vw;
}
/* ----イベント：その他特集・コラム一覧---- */
.block-event-page .ev-others--nav {
  width: 93.333vw;
  margin: 0 auto 3.0rem;
}
.block-event-page .ev-others--nav ul {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
.block-event-page .ev-others--nav ul li {
  width: 29.333vw;
  border: solid 1px #d2d2d2;
  border-radius: 5px;
}
.block-event-page .ev-others--nav ul li a {
  position: relative;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 1.0rem 0 2.4rem;
  text-decoration: none;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.4;
}
.block-event-page .ev-others--nav ul li a span {
  display: block;
  text-align: center;
}
.block-event-page .ev-others--nav ul li a:after {
  position: absolute;
  right: calc(50% - 5px);
  bottom: 1.0rem;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 5px 0 5px;
  border-color: #911330 transparent transparent transparent;
}
.block-event-page .ev-others--nav~.block-event-page--accessory .block-top-event--goods {
  display: none !important;
}
.block-event-page .ev-others--head {
  width: 100%;
  background: #911330;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: normal;
  margin: 0 0 2.0rem;
  padding: 0.8rem 1.2rem;
  font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.block-event-page .ev-others--frame {
  width: 93.333vw;
  margin: 0 auto;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
.block-event-page .ev-others--frame a.event-special--item {
  display: block;
  margin: 0 0 2.5rem;
  padding: 0;
}
.block-event-page .ev-others--frame a.event-special--item>div>p {
  display: block;
  padding: 0.8rem 0 0;
  font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.block-event-page .ev-others--nav~.block-event-page--accessory .block-top-event--goods {
  display: none;
}
.block-event-page .ev-others--nav~.block-event-page--accessory {
  width: 93.333vw;
  margin: 0 auto;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
.block-event-page .ev-others--nav~.block-event-page--accessory>.ev-others--head {
  margin: 2.0rem -3.3335vw 0;
  width: calc(100% + 6.667vw);
}
.block-event-page .ev-others--nav~.block-event-page--accessory>.ev-others--head:first-child {
  margin-top: 0;
}
.block-event-page .ev-others--nav~.block-event-page--accessory .event-special--item {
  display: block;
  width: 45.333vw;
}

/* ----商品一覧画面：サムネイル：block-thumbnail-t---- */
.block-thumbnail-t {
}

.block-thumbnail-t--items {
    border-top: none;
    font-size: 0;
    width: calc(100% - 2.4rem);
    margin: 0 auto;
    padding: 0;
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    align-items: stretch;
    column-gap: 1.25rem;
    row-gap: 1.25rem;
}

.block-thumbnail-t--items>dl {
    width: calc((100% - 1.25rem) / 2);
    margin: 0;
    padding: 0;
    font-size: 1.2rem;
    line-height: 1.4;
}

.block-thumbnail-t--goods-image {
    margin: 0 0 0.9rem;
}

.block-thumbnail-t--goods-image figure {
    width: 100%;
    min-width: auto;
    min-height: auto;
    padding: 0;
    border: solid 1px #dfdfdf;
    background: none;
}

.block-thumbnail-t--goods-description .block-icon {
    margin: -0.5rem 0 0.8rem -0.5rem;
    display: flex;
    flex-flow: wrap;
    font-size: 0;
}

.block-thumbnail-t--goods-description .block-icon span {
    margin: 0.5rem 0 0 0.5rem;
}

.block-thumbnail-t--goods-name {
    font-weight: normal;
    margin: 0 0 0.8rem;
}

.block-thumbnail-t--price-infos {
    border-top: dotted 1px #a7a7a7;
    padding: 0.7rem 0 0;
    text-align: center;
}

.block-thumbnail-t--price {
    font-size: 15px;
    font-weight: bold;
    color: #cc0000;
}

.block-thumbnail-t--price span {
    display: inline-block;
    margin: 0 0 0 0.6rem;
    font-size: 1.0rem;
}

.block-thumbnail-t--price-infos.price__onsales .block-thumbnail-t--price {
    color: #cc0000;
}

.block-thumbnail-t--scomment {
    margin: 0.8rem 0 0;
    font-size: 1.2rem;
    text-align: left;
    color: #cc0000;
}

/* ----商品一覧画面：ランキング：block-ranking-r---- */
.block-ranking-r--items {
	border: none;
	font-size: 0;
	width: calc(100% - 2.4rem);
	margin: 0 auto 2.2rem;
	padding: 0;
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
  column-gap: 1.25rem;
  row-gap: 1.2rem;
}
.block-ranking-r--items>li {
	width: calc((100% - 1.25rem) / 2);
	margin: 0;
	padding: 0;
	font-size: 1.2rem;
	line-height: 1.4;
	overflow: hidden;
}
.block-ranking-r--goods-image {
	position: relative;
	margin: 0 0 1rem;
	padding: 3rem 0 0;
}
.block-ranking-r--goods-image figure {
	padding: 0;
	background: none;
	width: 16.2rem;
	height: 16.2rem;
	min-width: auto;
	min-height: auto;
}
.block-ranking-r--goods-image .block-ranking-r--rank {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	text-align: center;
	color: var(--black2);
	height: auto;
	background: none;
	font-size: 1.8rem;
	line-height: 1.2;
	font-weight: bold;
	vertical-align: baseline;
}
.block-ranking-r--goods-image .block-ranking-r--rank span {
	display: inline-block;
	margin-left: 0.3rem;
	font-size: 1.3rem;
	line-height: 1.2;
}
.block-ranking-r--goods-image .block-ranking-r--rank-1 {
	color: #cea500;
}
.block-ranking-r--goods-image .block-ranking-r--rank-2 {
	color: #666666;
}
.block-ranking-r--goods-image .block-ranking-r--rank-3 {
	color: #b16120;
}
.block-ranking-r--goods-name {
	font-weight: 400;
  margin: 0 0 .8rem;
}

.block-ranking-r--price-infos {
  border-top: dotted 1px #a7a7a7;
  padding: 0.7rem 0 0;
  text-align: center;
}
.block-ranking-r--price {
  font-size: 1.3rem;
  font-weight: bold;
  color: #cc0000;
}
.block-ranking-r--price span {
  display: inline-block;
  margin: 0 0 0 0.6rem;
  font-size: 1.0rem;
}
.block-ranking-r--scomment {
  margin: 0.8rem 0 0;
  font-size: 1.2rem;
  text-align: left;
  color: #cc0000;
}
/* ----商品一覧画面：レシピランキング：block-ranking-r.block-recipe-ranking-r ---- */
.block-recipe-ranking-r .block-ranking-r--price-infos {
  display: none;
}

/* ----商品一覧画面：買い物かご：block-cart-i---- */
.block-cart-i--items {
	border: none;
	font-size: 0;
	padding: 0;
	width: 93.333vw;
	margin: 0 auto;
	display: flex;
	flex-flow: wrap;
}
.block-cart-i--items li {
	width: 29.333vw;
	display: inline-block;
	vertical-align: top;
	font-size: 14px;
	margin: 0 0 2.666vw 2.666vw;
	padding: 0;
}
.block-cart-i--items li:nth-child(3n+1) {
	margin-left: 0;
}
.block-cart-i--items li figure {
	width: 29.333vw;
	height: 29.333vw;
}
.block-cart-i--goods-description {
	word-wrap: break-word;
	font-size: 1.2rem;
}


.block-top-event .block-top-event--goods {
  position: relative;
}

.block-top-event .block-ranking-r--items.swiper-wrapper {
  border: 0;
  flex-wrap: nowrap;
  width: 100%;
  margin: 0 0 20px;
  padding: 0;
}

.block-top-event .block-ranking-r--items.swiper-wrapper > li {
  margin-right: 0;
}

.block-top-event .block-top-event--goods .swiper-button-prev::after {
  position: absolute;
  width: 18px;
  height: 18px;
  border: 0;
  border-top: 2px solid #111;
  border-left: 2px solid #111;
  transform: rotate(-45deg);
  font-size: 0;
  z-index: 1;
  background: none;
  content: "";
}

.block-top-event .block-top-event--goods .swiper-button-next::after {
  position: absolute;
  width: 18px;
  height: 18px;
  border: 0;
  border-top: 2px solid #111;
  border-right: 2px solid #111;
  transform: rotate(45deg);
  font-size: 0;
  z-index: 1;
  background: none;
  content: "";
}

.block-top-event .block-ranking-r--items .block-ranking-r--item {
  display: block;
  padding: 0;
}

.block-top-event .block-ranking-r--items .block-ranking-r--goods-image figure img {
  width: 100%;
}

.block-top-event .block-ranking-r--items .block-ranking-r--goods-name {
  font-weight: normal;
  margin: 0 0 8px;
}

.block-top-event .block-ranking-r--items .block-ranking-r--comment {
  display: none;
}

.block-top-event .block-ranking-r--items .block-ranking-r--price {
  font-size: 15px;
}

/* ----最近みた商品---- */
.block-recent-item--body {
}
.block-cart-recent-item--header, .block-recent-item--header {
	width: 100%;
	margin: 3.0rem auto 2.5rem;
	padding: 2.5rem 0 0;
	background: url(../../img/usr/common/line.png) center top repeat-x;
	border: none;
	font-size: 2.2rem;
	line-height: 1.2;
	text-align: center;
}
.block-cart-recent-item--header {
  width: 100%;
}
.block-thumbnail-h--items {
	border: none;
	font-size: 0;
	width: 93.333vw;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
}
.block-thumbnail-h--items li {
	width: 29.333vw;
	margin: 0 0 2.2rem;
	padding: 0;
	font-size: 1.2rem;
	line-height: 1.4;
	overflow: hidden;
}
.block-thumbnail-h--items li:nth-child(3n+2):last-child {
	margin-right: calc(29.333vw + 2.6665vw);
}
.block-thumbnail-h--goods-image {
	margin: 0 0 0.8rem;
}
.block-thumbnail-h--goods-image figure {
	width: 29.333vw;
	height: 29.333vw;
}

.block-goods-detail-j--item {
  display: flex;
  padding: 20px 10px;
  border: 0;
}

.block-goods-detail-j--item a {
  display: block;
  width: 140px;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description {
  width: calc(100% - 140px);
  padding-left: 15px;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--goods-name {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--comment {
  margin: 0 0 8px;
  font-size: 11px;
  color: #808080;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--price-infos {
  margin: 0 0 4px;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--price-infos .block-goods-detail-j--scomment {
  font-size: 12px;
  font-weight: bold;
  color: #d53115;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--price-infos .block-goods-detail-j--scomment + .block-goods-detail-j--price-items .block-goods-detail-j--price {
  color: #d53115;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--price-infos .block-goods-detail-j--scomment + .block-goods-detail-j--price-items .block-goods-detail-j--default-price {
  font-size: 11px;
  font-weight: normal;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--price {
  margin: 0;
  font-size: 13px;
  font-weight: 500;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--stock {
  margin: 0 0 4px;
  display: flex;
  font-size: 13px;
  font-weight: 500;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--stock dt {
  font-weight: 500;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--stock dt::after {
  content: "：";
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--comment1 {
  margin: 0 0 16px;
  font-size: 11px;
  color: #808080;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--cart-btn .block-list-add-cart-btn {
  width: 100%;
  font-size: 13px;
  padding: 12px;
  border-radius: 22px;
}

.block-goods-detail-j--items .block-goods-detail-j--goods-description .block-goods-detail-j--custom-order .block-list-custom-order-btn {
  width: 100%;
  font-size: 13px;
  padding: 12px;
  border-radius: 22px;
}

.block-pickup-list-p .block-pickup-list-p--item .block-pickup-list-p--price-infos .block-pickup-list-p--scomment {
  font-size: 12px;
  font-weight: bold;
  color: #d53115;
}

.block-pickup-list-p .block-pickup-list-p--item .block-pickup-list-p--price-infos .block-pickup-list-p--price-items .price,
.block-pickup-list-p .block-pickup-list-p--item .block-pickup-list-p--price-infos .block-pickup-list-p--price-items .net-price {
  font-size: 18px;
  font-weight: bold;
}

.block-pickup-list-p .block-pickup-list-p--item .block-pickup-list-p--price-infos .block-pickup-list-p--price-items .default-price {
  font-size: 11px;
  font-weight: normal;
}

/* ----パンくずリスト---- */
.block-topic-path {
	margin: 0;
	padding: 0 1.2rem 1.3rem;
	background: none;
}
.block-topic-path a {
	text-decoration: none;
}

/* ----マイページ---- */

.block-favorite .block-accessory-list--name {
  padding: 16px 20px;
  background: none;
}

.block-store-coupon-list--table .block-store-coupon-list--bonus {
  font-size: 16px;
  font-weight: bold;
}

.block-login--member-header,
.block-login--first-time-header {
  margin-bottom: 8px;
}

.block-onetimepassword-certify--header,
.block-onetimepassword-send--header {
  padding-left: 0;
  padding-right: 0;
}

.block-inquiry-history--body li {
  padding: 8px 0;
}

.block-inquiry-history-detail--subject {
  padding: 8px 10px;
  background: none;
}

/* ---- 会員登録完了画面 ---- */
.page-entrycomplete .block-member-registration-completed form[action$="/customer/menu.aspx"] {
  display: none;
}

/* ----クイックオーダー---- */

.block-quick-order--price-pop {
  font-size: 12px;
  font-weight: bold;
  color: #d53115;
}

.block-quick-order--price {
  font-weight: 500;
  color: #c30;
}

.block-quick-order--price-price {
  color: #c30;
}

.block-quick-order--default-price {
  font-weight: normal;
}

.block-quick-order--subtotal-cell {
  color: #111;
}

/* ----購入フロー---- */

.block-cart-recent-item--header {
  width: calc(100% + 8vw);
  margin: 4rem -4vw 24px;
  padding: 40px 0 0;
  border: 0;
  text-align: center;
  font-size: 2.2rem;
  font-weight: normal;
  line-height: 1.333;
  color: #000;
  background: url(../../img/usr/common/line.png) center top repeat-x;
}

.block-cart-recent-item--header span {
  display: block;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.5;
}

.page-cart .block-search-box--form {
  display: none;
}

.block-cart--goods-list-item-delete-btn {
  text-decoration: none;
}

.block-cart--procedure-container {
  top: 0;
  transition: top 0.2s;
}

.block-cart--procedure-container.block-cart--procedure-container__fixed {
  top: 50px;
  padding-top: 2rem;
}

.block-order-method h2 {
  margin-top: 20px;
  margin-bottom: 8px;
  border: 0;
}

.block-order-estimate h2 {
  margin-bottom: 8px;
  border: 0;
}

.block-order-estimate--method h3 {
  border-bottom: 0;
}

.block-order-estimate--date-spec h3,
.block-order-estimate--time-spec h3,
.block-order-estimate--discount-info .block-order-estimate--point h3,
.block-order-estimate--discount-info .block-order-estimate--promotion-code h3,
.block-order-estimate--discount-info .block-order-estimate--promotion h3,
.block-order-estimate--discount-info .block-order-estimate--coupon h3,
.block-order-estimate--sales-append .block-order-estimate--confirmation-title h3 {
  border-bottom: 0;
}

.block-order-estimate--dest-address-item-buttons__selected {
  background: #ffebe8;
}

.block-order-gift-noshi h3 {
  margin-bottom: 8px;
}

.block-order-complete--wrapper {
  padding: 0 10px;
}

.block-order-complete--message {
  margin: 0 0 12px;
}

.block-order-complete--message p {
  padding: 0;
  font-size: 13px;
}

.block-order-complete--orderid {
  margin: 0 0 20px;
  border: 0;
}

.block-order-complete table.block-order-complete--orderid th {
  display: block;
  width: 100%;
  padding: 2px 0;
  border: 0;
  text-align: center;
  font-size: 11px;
  color: #808080;
  background: none;
}

.block-order-complete--orderid td {
  display: block;
  width: 100%;
  border: 0;
  padding: 0;
  font-size: 12px;
  background: none;
}

.block-order-complete--orderid td a {
  font-size: 12px;
}

.block-regular-goods-add--header,
.block-regular-goods-change--header {
  margin: -10px -10px 0;
}

.block-goodschange-list {
  margin: 10px;
}

.block-goodsadd-list--customer-name,
.block-goodschange-list--customer-name {
  margin: 0 0 10px;
  font-weight: bold;
}

.block-regular-purcharse-list--info-withdrawal {
  display: block;
  width: auto;
}

.block-order-regular-add-confirm h2 {
  margin-bottom: 8px;
  border: 0;
}

.block-order-regular-add-complete--wrapper {
  padding: 0 10px;
}

.block-order-regular-add-complete--message {
  margin: 0 0 12px;
}

.block-order-regular-add-complete--message p {
  padding: 0;
  font-size: 13px;
}

.block-order-regular-add-complete--regular-sales {
  margin: 0 0 20px;
  border: 0;
}

.block-order-regular-add-complete table th {
  display: block;
  width: 100%;
  padding: 2px 0;
  border: 0;
  text-align: center;
  font-size: 11px;
  color: #808080;
  background: none;
}

.block-order-regular-add-complete table td {
  display: block;
  width: 100%;
  border: 0;
  padding: 0;
  font-size: 12px;
  background: none;
}

.block-order-regular-add-complete table td a {
  font-size: 12px;
}

/* ----ページ機能---- */

.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 {
  margin: 0 10px;
}

.block-pagecategory-page-list--frame {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.block-pagecategory-page-list--frame .block-pagecategory-page-list--page {
  width: calc(50% - 5px);
  margin: 0 10px 10px 0;
}

.block-pagecategory-page-list--frame .block-pagecategory-page-list--page:nth-of-type(2n) {
  margin-right: 0;
}


/* ----商品詳細画面---- */
/*CSSによる商品詳細画面の項目の並び順変更用*/
.block-goods-detail {
	/* width: 93.333vw; */
  width: calc(100% - 2.5rem);
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: column wrap;
	flex-flow: column nowrap;
}
.block-goods-detail #large_image>ul>li:not(:first-child) {
	display: none;
}
.block-src-l {
  width: calc(100% + 2.5rem);
	position: relative;
	margin: 0 calc(-2.5rem / 2) 1.4rem;
  overflow: hidden;
}
.block-src-l figure {
  padding: 0 1.25rem;
}
.block-src-l .block-src-l--comment {
	min-height: 1.7rem;
	font-size: 1.4rem;
	line-height: 1.2;
}
/* slider */
.block-src-l .swiper-button-prev,
.block-src-l .swiper-button-next {
  width: 2.3rem;
  height: 6rem;
  background: rgba(220, 220, 220, 0.6);
  border-radius: .3rem;
}
.block-src-l .swiper-button-prev {
  left: 0;
}
.block-src-l .swiper-button-next {
  right: 0;
}
.block-src-l .swiper-button-prev::after,
.block-src-l .swiper-button-next::after {
  content: "";
  width: 10px;
  height: 10px;
  rotate: 45deg;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.block-src-l .swiper-button-prev::after {
  border-bottom: 2px #525252 solid;
  border-left: 2px #525252 solid;
}
.block-src-l .swiper-button-next::after {
  border-top: 2px #525252 solid;
  border-right: 2px #525252 solid;
}
/* Copylight画像 */
.block-src-c {
	margin: 0;
	overflow: hidden;
}
.block-src-c figure {
	margin: 0;
}
.block-src-c figure img {
	display: block;
	margin: 0 auto;
}
.block-src-c>div {
	text-align: center;
	margin: 0;
}
/* スライダー　サムネイル */
.block-goods-gallery {
	width: 93.333vw;
	margin: 0 auto;
}
.block-goods-gallery ul {
  display: flex;
  column-gap: 1rem;
  row-gap: 1rem;
  flex-wrap: wrap;
	padding: 0;
}
.block-goods-gallery li {
	margin: 0;
	padding: 0;
	width: calc((100% - 1rem * 4) / 5);
}
.block-goods-gallery li figure {
	width: 100%;
  aspect-ratio: 1/1;
}
.block-goods-gallery li figure:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border: 1px #ccc solid;
	opacity: 0;
	-webkit-transition: all .4s ease;
	-moz-transition: all .4s ease;
	transition: all .4s ease;
}
.block-goods-gallery li.swiper-slide-thumb-active figure:before {
	border: 2px #911330 solid;
	opacity: 1;
}

/* CSSで並び替え */
.block-goods-detail--promotion-freespace {
	order: 0;
}
.block-src-l {
	order: 10;
}
.block-src-c {
	order: 20;
}
.block-goods-gallery {
	order: 30;
}
.page-goods .block-icon {
	order: 40;
}
.block-goods-name {
	order: 50;
}
.block-goods-comment {
	order: 60;
}
.block-goods-affix-list {
	order: 70;
}
.block-goods-price {
	order: 80;
}
.block-goods-point {
	order: 90;
}
.block-variation {
	order: 100;
}
.block-switch-goods {
  order: 105;
}
.block-goods-sales-detail-append {
	order: 110;
}
.block-add-cart {
	order: 120;
}
.block-no-stock {
	order: 130;
}
.block-goods-store-stock {
	order: 140;
}
.block-goods-favorite {
	order: 150;
}
.block-contact-about-goods {
	order: 160;
}
.block-goods-comment1--title {
	order: 170;
}
.block-goods-comment1 {
	order: 180;
}
.block-goods-comment6 {
	order: 190;
}
.block-goods-spec--title {
	order: 200;
}
.block-goods-code {
	order: 210;
}
.block-goods-item-code {
	order: 220;
}
.block-goods-item-code2 {
	order: 230;
}
.block-goods-item-code3 {
	order: 240;
}
.block-goods-release-dt {
	order: 250;
}
.block-goods-class1 {
	order: 260;
}
.block-goods-class2 {
	order: 270;
}
.block-goods-attr1 {
	order: 280;
}
.block-goods-attr2 {
	order: 290;
}
.block-goods-attr3 {
	order: 300;
}
.block-goods-postage {
	order: 310;
}
.block-goods-stock {
	order: 320;
}
.block-goods-spec {
	order: 330;
}
.block-custom-order {
	order: 340;
}
.block-arrival-notice {
	order: 350;
}
.block-goods-comment2--title {
	order: 360;
}
.block-goods-comment2 {
	order: 370;
}
.block-goods-comment3--title {
	order: 380;
}
.block-goods-comment3 {
	order: 390;
}
.block-goods-comment4--title {
	order: 400;
}
.block-goods-comment4 {
	order: 410;
}
.block-goods-comment5--title {
	order: 420;
}
.block-goods-comment5 {
	order: 430;
}
.block-variation-back-order {
	order: 440;
}
.block-goods-set {
	order: 450;
}
.block-goods-sns {
	order: 460;
}
.block-goods-link {
	order: 470;
}
.block-rules-comment {
	order: 480;
}
.block-no-stock .block-no-stock--message {
	width: 100%;
}
.page-goods .block-icon {
  margin: 1.5rem 0 1.2rem;
	display: flex;
	flex-flow: wrap;
}
.page-goods .block-goods-detail > .block-icon {
	margin: 1.5rem 0 1.2rem;
}
.page-goods .block-icon>span {
	order: 10;
	margin: 0 0.5rem 0.5rem 0;
}
.page-goods .block-icon>span img {
	max-height: 1.6rem;
}
.page-goods .block-icon>span.block-icon--src1, .page-goods .block-icon>span.block-icon--comment1 {
	display: block;
	order: 0;
	margin: 0 auto 1.7rem;
	width: 100%;
	text-align: center;
}
.page-goods .block-icon>span.block-icon--src1 img {
	max-height: 2.2rem;
}
.page-goods .block-src-c~.block-icon {
	margin-top: 2.0rem;
}
.block-goods-name {
	margin: 0 0 1.0rem;
}
.block-goods-name h2 {
	margin: 0;
	padding: 0;
	font-size: 2.0rem;
	line-height: 1.4;
}
.block-goods-comment {
	margin: 0 0 1.0rem;
	padding: 0;
}
.block-goods-price {
	text-align: left;
	margin: 0 0 1.2rem;
}
.block-goods-price--on-sales-comment {
	font-size: 1.2rem;
	line-height: 1.4;
	color: #cc0000;
}
.block-goods-price--price {
	font-size: 2.0rem;
	color: #cc0000;
}
.block-goods-price--price:after {
	display: inline-block;
	content: '(税込)';
	font-size: 1.4rem;
}
.block-goods-price--default-price, .block-goods-price--net-price {
	display: none !important;
}
.block-goods-footer-cart {
	display: none !important;
}
.goods-detail-description.block-goods-point {
	margin: -0.8rem 0 1.4rem !important;
	display: flex;
}
.goods-detail-description.block-goods-point dt {
	width: auto;
	font-weight: normal;
}
.block-variation {
	margin: 0 0 1.8rem;
	padding: 0;
}
.block-variation>.block-variation {
	margin: 0;
	padding: 1.6rem 0;
	border-top: dotted 1px #bebebe;
	overflow: hidden;
}
.block-variation>.block-variation:last-child {
	padding-bottom: 0;
}
.block-variation--name--text {
	font-weight: bold;
}
.block-variation--selected-item {
	margin: 1.2rem 0 0;
}
.block-variation--item-list {
	display: flex;
	flex-flow: wrap;
	align-items: stretch;
	width: calc(100% + 2vw);
}
.block-variation--item-list .block-variation--item {
	position: relative;
	margin: 2vw 2vw 0 0;
	padding: 2px;
	height: 100%;
	font-size: 1.2rem;
}
.block-variation--item-list .block-variation--item dd {
	display: none !important;
}
.block-variation--item-list .block-variation--item dt {
	border: none !important;
	width: auto;
	height: auto;
	min-width: inherit;
	min-height: inherit;
}
.block-variation--item-list .block-variation--item dt>a, .block-variation--item-list .block-variation--item dt>span {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: auto;
	height: 100%;
	min-width: 50px;
	min-height: inherit;
	padding: 1.4rem 1.0rem;
}
.block-variation--item-list .block-variation--item dt>a:after, .block-variation--item-list .block-variation--item dt>span:after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	border: solid 1px #d2d2d2;
	transition: all 0.3s;
}
.block-variation--item-list .block-variation--item dt>a:hover:after, .block-variation--item-list .block-variation--item dt>span:hover:after, .block-variation--item-list .block-variation--item.active dt>span:after {
	border: solid 2px #911330;
}
.block-variation--item-list .block-variation--item dt>a {
	text-decoration: none;
}
.block-goods-sales-detail-append {
	margin: 0 0 2.8rem;
	padding: 1.6rem 0 0;
	border-top: dotted 1px #bebebe;
}
.block-goods-sales-detail-append>p:first-child {
	font-weight: bold;
}
.block-goods-sales-detail-append--item {
  display: none;
	margin: 0 0 0;
}
.block-goods-sales-detail-append.-non-giftSteps .block-goods-sales-detail-append--item {
  display: block;
}
.block-goods-sales-detail-append--item .form-group {
	margin: 1.2rem 0 0;
}
.block-goods-sales-detail-append--item .form-label {
	width: 100%;
	margin: 0 0 0.8rem;
	padding: 0.8rem 1.0rem;
	background: #eeeeee;
}
.block-goods-sales-detail-append--item .form-label label {
	font-weight: normal;
}
.block-goods-sales-detail-append--item .constraint {
	margin: 0;
}
.block-goods-sales-detail-append--item .form-control {
	margin: 0.5rem 0 0;
}
.block-goods-sales-detail-append--item .form-control select, .block-goods-sales-detail-append--item .form-control textarea {
	width: 100%;
}
.block-add-cart--btn {
	width: 100%;
	margin: 2.4rem 0 2.0rem;
	padding: 1.4rem 0 1.4rem 2.0rem;
	font-size: 1.8rem;
	line-height: 1.4;
	border-radius: 5px !important;
	background: #911330 url(../../img/usr/common/icon_cart.png) calc(50% - 5.2em) center / auto 2rem no-repeat;
}
.block-goods-favorite .block-goods-favorite--btn,
.block-goods-favorite .block-goods-favorite-registed--btn {
	margin: 0 0 1.5rem;
	padding: 1.4rem 0;
	width: 100%;
	background: none;
	border: solid 1px #666666;
	border-radius: 5px;
	font-size: 1.4rem;
	line-height: 1.2;
}
.block-goods-favorite .block-goods-favorite--btn::before,
.block-goods-favorite .block-goods-favorite-registed--btn::before {
	display: inline-block;
	content: '';
	margin-top: -4px;
	width: 28px;
	height: 16px;
	vertical-align: middle;
	background: url(../../img/usr/common/icon_heart.png) no-repeat center /contain;
}
.block-contact-about-goods {
	margin: 0 0 2.8rem;
	text-align: center;
}
.block-contact-about-goods-btn {
	font-size: 1.2rem;
	background: none;
	border: none;
	margin: 0;
	padding: 0;
	width: auto;
	text-decoration: underline !important;
}

/* 商品詳細 - LINEで共有 */
.block-contact-about-goods .text-goods-sns {
    margin: 20px auto 0;
	text-align: center;
	font-size: 1.1rem;
}
.block-contact-about-goods .text-goods-sns a {
    display: inline-block;
	border: 1px solid #666666;
	margin: 0 auto;
	padding: 6px 18px;
	text-decoration: none;
}
.block-contact-about-goods .text-goods-sns a span {
	padding-left: 8.2vw;
    display: table-cell;
    vertical-align: middle;
    height: 6vw;
    white-space: nowrap;
    background: url(../../img/usr/common/icon_line.png) left center no-repeat;
    background-size: 6vw;
}

.block-goods-comment--title {
	margin: 0 -3.3335vw 1.2rem;
	padding: 0.8rem 0.8rem 0.8rem 3.7rem;
	color: #911330;
	background: #f5ecee url(../../img/usr/common/icon_ume_sp.png) 1.25rem center / 1.75rem auto no-repeat;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.4rem;
	line-height: 1.4;
	font-weight: bold;
}


/* ギフト設定ボタン */
.gift-button {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
  width: 100%;
  height: 4.8rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: .04em;
  color: var(--black1);
  border-radius: .5rem;
  border: 1px solid var(--gray1);
  cursor: pointer;
}
.gift-button::before {
  display: block;
  content: "";
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  background-image: url(../../img/usr/common/icon_gift.png);
}

/* ---- ギフト設定 ---- */
.block-gift {
  width: 100%;
  height: 100dvh;
  border-radius: .5rem;
  padding: 5.4rem 2rem;
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100000;
  overflow-y: auto;
  
  display: none;
}
.block-gift-overlay {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(68, 68, 68, .8);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
.block-gift-reload {
  position: absolute;
  top: 1.4rem;
  right: 2rem;
  z-index: 1;
}
.block-gift-reload-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20rem;
  height: 3.2rem;
  background-color: rgba(68, 68, 68, .8);
  font-size: 1.3rem;
  font-weight: 500;
  color: var(--white);
  letter-spacing: .04em;
  border: 1px solid var(--gray3);
  border-radius: 3.5rem;
  padding-left: 1.6rem;
  position: relative;
}
.block-gift-reload-btn::before {
  display: block;
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  background: url(../../img/usr/goods/gift/reload.png) no-repeat center / contain;
  position: absolute;
  top: 50%;
  left: 1.2rem;
  translate: 0 -50%;
}
.block-gift-inner {
  background-color: var(--white);
  border-radius: 10px;
  overflow: hidden;
  padding: 0 0 2.5rem;
  position: relative;
  z-index: 2;
}
.block-gift-title {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--white);
  letter-spacing: .04em;
  width: 100%;
  height: 4.8rem;
  background-color: #AA4553;
}
.block-gift-title::before {
  display: block;
  content: "";
  width: 2rem;
  height: 2rem;
  background: url(../../img/usr/common/icon_gift_white.png) no-repeat center / contain;
}
.block-gift-header {
  display: block;
  padding: 2rem 2rem .5rem;
}
.block-gift-header-img {
  display: none;
}
.block-gift-header-list-wrapper {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  transition: all ease .5s;
}
.block-gift-header-list-wrapper[data-total-steps="2"] {
  max-width: 23rem;
}
.block-gift-header-list-wrapper[data-total-steps="3"] {
  max-width: 28.5rem;
}
.block-gift-header-list {
  display: flex;
  justify-content: space-between;
  width: 100%;
  overflow: hidden;
}
.block-gift-header-list:not(:has(.block-gift-header-list-i:nth-child(n + 2))) {
  justify-content: center;
}
.block-gift-header-list:has(.block-gift-header-list-i:nth-child(n + 2))::before {
  display: block;
  content: "";
  width: 100%;
  border-top: 2px dotted rgba(112, 112, 112, .2);
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 0;
  translate: 0 -1rem;
}
.block-gift-header-list-i {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: 3.2rem;
  font-weight: 500;
  letter-spacing: .04em;
  position: relative;
}

.block-gift-header-list-i:nth-child(1)::before,
.block-gift-header-list-i:last-child::before {
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background-color: var(--white);
  position: absolute;
  top: 0;
  z-index: 2;
}
.block-gift-header-list-i:nth-child(1)::before {
  left: 0;
}
.block-gift-header-list:not(:has(.block-gift-header-list-i:nth-child(n + 2))) 
.block-gift-header-list-i:nth-child(1)::before {
  /* display: none; */
}
.block-gift-header-list-i:last-child::before {
  right: 0;
}

.block-gift-header-list-i.-is-active::after {
  display: block;
  content: "";
  width: 100vw;
  border-top: 2px dotted #CE858F;
  position: absolute;
  top: 50%;
  right: 50%;
  translate: 1px -1rem;
  z-index: 0;
}

.block-gift-header-list:not(:has(.block-gift-header-list-i:nth-child(n + 2))) 
.block-gift-header-list-i.-is-active::after {
  display: none;
}

.block-gift-header-list-i-icon {
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background-color: var(--red3);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  z-index: 2;
  translate: 0 -1rem;
}
.block-gift-header-list-i.-is-active .block-gift-header-list-i-icon {
  width: 2rem;
  height: 2rem;
  background: url(../../img/usr/goods/gift/step/icon_active.png) no-repeat center / contain;
  border-radius: 0;
  background-color: var(--white);
}
.block-gift-header-list-i.-is-active ~ .block-gift-header-list-i .block-gift-header-list-i-icon {
  background-color: #D5D5D5;
}
.block-gift-header-list-i-name1 {
  font-size: 1rem;
  position: relative;
  z-index: 2;
}
.block-gift-header-list-i-name2 {
  min-height: calc(2em * 1.5);
  font-size: 1.1rem;
  text-align: center;
  position: relative;
  z-index: 2;
}
.block-gift-header-list-i.-is-active .block-gift-header-list-i-name2 {
  color: var(--red4);
}
.block-gift-steps {
  display: flex;
  overflow: hidden;
  width: fit-content;
  position: relative;
}
.block-gift-steps-step {
  display: none;
  width: calc(100vw - 4rem);
  padding: 0;
}
.block-gift-steps-step-title {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 4rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: .04em;
  background-color: #ECECEC;
  margin-bottom: 1.4rem;
}
.block-gift-steps-step .control-label {
  display: none;
}
.block-gift-steps-step .form-control {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2rem;
  row-gap: 2rem;
  padding: 0 2rem;
}
.block-gift-steps-step .form-control .radio {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: .6rem;
  width: calc((100% - (2rem * 2)) / 3);
  margin: 0;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
  font-feature-settings: "palt";
}
.block-gift-steps-step .form-control .radio:nth-child(3n + 4) {
  position: relative;
}
.block-gift-steps-step .form-control .radio:nth-child(3n + 4)::after {
  display: block;
  content: "";
  width: calc((100% * 3) + (2rem * 2));
  height: 1px;
  background-color: var(--gray2);
  position: absolute;
  top: -.7rem;
  left: 0;
}
.block-gift-steps-step .form-control .radio:nth-child(n + 4) {
  padding-top: 1rem;
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio::before,
.block-gift-steps-step.-steptype-noshi .form-control .radio::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  order: 1;
}
.block-gift-steps-step .form-control .radio input {
  margin: auto 0 0;
  order: 3;
}
.block-gift-steps-step .form-control .radio span {
  order: 2;
}
.block-gift-steps-step .form-control .help-block {
  width: 100%;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: .04em;
  color: var(--black1);
  margin: 0;
}
.block-gift-steps-step .form-control .help-block .housoushi-seasonal-text {
  display: block;
}

.block-gift-buttons {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 2rem;
  margin-top: 2rem;
}
.block-gift-buttons-i {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
  width: fit-content;
  height: 3.5rem;
  font-size: 1.4rem;
  font-weight: bold;
  border-radius: 2rem;
  padding: 0 1.3rem;
  cursor: pointer;
}
.block-gift-buttons-i.-prev {
  border: 1px solid #DFDFDF;
}
.block-gift-buttons-i.-prev::before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-top: .4rem solid transparent;
  border-right: .7rem solid var(--black1);
  border-bottom: .4rem solid transparent;
}
.block-gift-buttons-i.-next,
.block-gift-buttons-i.-cart {
  background-color: var(--red4);
  color: var(--white);
  margin-left: auto;
}
.block-gift-buttons-i.-next::after,
.block-gift-buttons-i.-cart::after {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-top: .4rem solid transparent;
  border-left: .7rem solid var(--white);
  border-bottom: .4rem solid transparent;
}

/* ラジオボタン */
.block-gift input[type="radio"] {
  width: 1.8rem;
  height: 1.8rem;
  background-color: var(--white);
  border: 1px solid #DFDFDF;
  border-radius: 50%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
}
.block-gift input[type="radio"]:checked {
  background-color: #E84F72;
  border-color: #E84F72;
}
.block-gift input[type="radio"]:checked::before {
  display: block;
  content: "";
  width: .6rem;
  height: .6rem;
  background-color: var(--white);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}

/* ギフト設定 - 画像 */
/* header箇所 */
.block-gift:has(.block-gift-steps-step.-steptype-housoushi.-is-active) .block-gift-header-img {
  background-image: url(../../img/usr/goods/gift/step/housoushi.png);
}
.block-gift:has(.block-gift-steps-step.-steptype-noshi.-is-active) .block-gift-header-img {
  background-image: url(../../img/usr/goods/gift/step/noshi.png);
}
.block-gift:has(.block-gift-steps-step.-steptype-tesage.-is-active) .block-gift-header-img {
  background-image: url(../../img/usr/goods/gift/step/tesage.png);
}
.block-gift:has(.block-gift-steps-step.-steptype-noshimaisuu.-is-active) .block-gift-header-img {
  background-image: url(../../img/usr/goods/gift/step/noshi-maisuu.png);
}

/* 包装紙 */
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="不要"])::before {
  background-image: url(../../img/usr/goods/gift/huyou.jpg);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="一般贈答用"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/ippan.png);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="慶事用"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/keiji.png);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="弔事用"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/chouji.png);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="母の日ラッピング"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/hahanohi.png);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="父の日ラッピング"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/chichinohi.png);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="敬老の日ラッピング"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/keirounohi.png);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="ホワイトデーラッピング"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/whiteday.png);
}
.block-gift-steps-step.-steptype-housoushi .form-control .radio:has(input[value="樽専用"])::before {
  background-image: url(../../img/usr/goods/gift/housoushi/tarusenyou.jpg);
}

/* のし紙 */
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="不要"])::before {
  background-image: url(../../img/usr/goods/gift/huyou.jpg);
}
/* 一般贈答用・慶事用 */
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御中元"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/ochugen.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="暑中御見舞"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/shochuomimai.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="暑中御伺い"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/shochuoukagai.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="残暑御見舞"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/zanshoomimai.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="残暑御伺い"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/zanshooukagai.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御歳暮"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/oseibo.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御年賀"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/onenga.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="寒中御見舞"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/kanchuimimai.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="無地（蝶結び）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/muji_choumusubi.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="無地（結切）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/muji_musubikiri.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御礼（蝶結び）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/orei_choumusubi.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御礼（結切）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/orei_musubikiri.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御誕生日御祝"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/otanjoubioiwai.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="内祝（蝶結び）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/uchiiwai_choumusubi.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="内祝（結切）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/uchiiwai_musubikiri.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御祝（蝶結び）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/oiwai_choumusubi.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御祝（結切）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/oiwai_musubikiri.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="快気祝"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/kaikiiwai.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御見舞"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/omimai.jpg);
}

/* 弔事用 */
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="無地（蓮）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/muji_ren.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="無地（黄水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/muji_kimizuhiki.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="無地（銀水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/muji_ginmizuhiki.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="志（蓮）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/kokorozashi_ren.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="志（黄水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/kokorozashi_kimizuhiki.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="志（銀水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/kokorozashi_ginmizuhiki.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="粗供養（蓮）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/sokuyou_ren.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="粗供養（黄水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/sokuyou_kimizuhiki.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="粗供養（銀水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/sokuyou_ginmizuhiki.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御供（蓮）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/osonae_ren.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御供（黄水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/osonae_kimizuhiki.jpg);
}
.block-gift-steps-step.-steptype-noshi .form-control .radio:has(input[value="御供（銀水引）"])::before {
  background-image: url(../../img/usr/goods/gift/noshigami/osonae_ginmizuhiki.jpg);
}
/* ギフト個別のスタイル */
/* GIFT02 */
.block-goods-sales-detail-append:has([data-gift="GIFT02"]):has(.-steptype-housoushi) .block-gift-header {
  padding-bottom: 2.5rem;
}
.block-goods-sales-detail-append:has([data-gift="GIFT02"]):has(.-steptype-housoushi) .block-gift-header-list-i.-step-1 .block-gift-header-list-i-name2 {
  width: 4em;
}
.block-goods-sales-detail-append:has([data-gift="GIFT02"]):has(.-steptype-housoushi) .block-gift-header-list-i.-step-2 .block-gift-header-list-i-name2 {
  width: 4em;
}
.block-goods-sales-detail-append:has([data-gift="GIFT02"]):has(.-steptype-housoushi) .block-gift-header-list-i.-step-3 .block-gift-header-list-i-name2 {
  width: 5em;
}
.block-goods-sales-detail-append:has([data-gift="GIFT02"]):has(.-steptype-housoushi) .block-gift-header-list-i.-step-4 .block-gift-header-list-i-name2 {
  width: 5em;
}

/* 追従カートボタン */
.block-goods-fixedButtons {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 6rem;
  position: fixed;
  left: 0;
  bottom: 0;
  background: #fff;
  z-index: 100;
  margin: 0;
}
/* 買い物かごに入れるボタン */
/* 在庫がありませんボタン */
/* 販売期間前後ボタン */
.block-goods-fixedButtons .block-add-cart,
.block-goods-fixedButtons .block-no-stock,
.block-goods-fixedButtons .block-outside-sales-period {
  flex: 1;
}
.block-goods-fixedButtons .block-add-cart .block-add-cart--btn,
.block-goods-fixedButtons .block-no-stock .block-no-stock--message,
.block-goods-fixedButtons .block-outside-sales-period .block-outside-sales-period--message {
  height: 6rem;
  font-size: 1.7rem;
  padding: 1.7rem 0 1.8rem 2.4rem;
  border-radius: 0 !important;
  margin: 0;
}
.block-goods-fixedButtons .block-no-stock .block-no-stock--message,
.block-goods-fixedButtons .block-outside-sales-period .block-outside-sales-period--message {
  font-size: 1.6rem;
  padding-left: 0;
  text-align: center;
}
/* お気に入りボタン */
.block-goods-fixedButtons .block-goods-favorite {
  width: 13.5rem;
}
.block-goods-fixedButtons .block-goods-favorite .block-goods-favorite--btn,
.block-goods-fixedButtons .block-goods-favorite .block-goods-favorite-registed--btn {
  height: 6rem;
  margin: 0;
  border-radius: 0;
  border: 1px solid var(--gray3);
  padding: 1.1rem 1.3rem 1.3rem 4.1rem;
  text-align: left;
  font-size: 1.3rem;
  white-space: normal;
  position: relative;
}
.block-goods-fixedButtons .block-goods-favorite .block-goods-favorite--btn::before,
.block-goods-fixedButtons .block-goods-favorite .block-goods-favorite-registed--btn::before {
  width: 2.2rem;
  height: 2rem;
  position: absolute;
  top: 50%;
  left: 1.3rem;
  translate: 0 -50%;
  margin: 0;
}

/*---- 商品コメント ----*/
.block-goods-comment1 {
	margin: 0 0 3.0rem;
}
.block-goods-comment2 {
	margin: 0 0 3.0rem;
}
.block-goods-comment3 {
	margin: 0 0 3.0rem;
}
.block-goods-comment4 {
	margin: 0 0 3.0rem;
}
.block-goods-comment5 {
	margin: 0 0 3.0rem;
}
.block-goods-comment6 {
	width: 100%;
	margin: 0 auto;
}
.tokusen_ {
	margin: 0 0 3.0rem;
	position: relative;
	padding: 0.3rem 10px;
	display: flex;
	align-items: center;
}
.tokusen_ .img_ {
	width: 4rem;
	min-width: 4rem;
	margin-right: 1.0rem;
}
.tokusen_ p {
	font-size: 1.2rem;
	line-height: 1.4;
}
.tokusen_:before, .tokusen_:after {
	content: '';
	width: 10px;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	border: solid 1px #d2d2d2;
}
.tokusen_:before {
	left: 0;
	border-right: none;
}
.tokusen_:after {
	right: 0;
	border-left: none;
}
.goods-detail-description:not(.block-goods-point) {
  margin: -1px 0 0;
	width: auto;
	display: flex;
	border: solid 1px #d2d2d2;
	font-size: 1.2rem;
}
.goods-detail-description:not(.block-goods-point):last-of-type {
  margin-bottom: 3rem;
} 
.goods-detail-description:not(.block-goods-point) dt {
	background: #eeeeee;
	padding: 0.6rem 0.8rem;
	width: 31.42%;
	min-width: 31.42%;
	max-width: 31.42%;
	font-weight: normal;
}
.goods-detail-description:not(.block-goods-point) dd {
	padding: 0.6rem 0.8rem;
	border-left: solid 1px #d2d2d2;
}
.ume-size_txt+p.AlignC {
	margin: 1.0rem 0 0;
	text-align: center;
}
.ume-size_title {
	font-size: 1.4rem;
	font-weight: bold;
	color: #911330;
}
.umeSizeBox {
	display: block;
	vertical-align: bottom;
	text-align: center;
	margin: 1.4rem 0 0;
}
.block-goods-comment5:after {
	content: '';
	display: table;
	clear: both;
}
/*---- 関連アイテム ----*/
.block-accessory-list {
}
.block-accessory-list--name {
	width: 100%;
	margin: 3.0rem auto 2.5rem;
	padding: 2.5rem 0 0;
	background: url(../../img/usr/common/line.png) center top repeat-x;
	border: none;
	font-size: 2.2rem;
	line-height: 1.2;
	text-align: center;
}
.block-cart--body+.block-accessory-list--name, .block-accessory-list .block-accessory-list--name:first-child {
	background: none;
	margin-top: 0;
}

/*---- ユーザーレビュー ----*/
.block-goods-user-review {
	width: 100vw;
	margin: 0 auto 0;
	padding: 2.0rem 0 2.4rem;
	background: url(../../img/usr/common/event_bg01_sp.jpg) center top / 100% auto repeat-y;
}
.block-goods-user-review>h2 {
	width: 93.333vw;
	margin: 0 auto 1.5rem;
	background: #990033;
	color: #ffffff;
	padding: 10px;
	font-size: 1.4rem;
	line-height: 1.4;
	font-weight: bold;
	color: #ffffff;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.block-goods-user-review--info {
	width: 93.333vw;
	margin: 0 auto 2.0rem;
	padding: 0;
	background: none;
}
.block-goods-user-review--count-summary {
	margin-bottom: 1.2rem;
	padding: 0;
	background: none;
	border: none;
	display: flex;
	justify-content: center;
	align-items: center;
}
.block-goods-user-review--score {
	margin-right: 1.8rem;
}
.block-goods-user-review--score dd img {
	height: 1.4rem;
	position: relative;
	top: 0.2rem;
}
.block-goods-user-review--count dd {
	font-weight: bold;
}
.block-goods-user-review--description {
	text-align: center;
}
.block-goods-user-review--description>p {
	display: inline-block;
	text-align: left;
}
.block-goods-user-review--write-review-btn,
.block-goods-user-review--write-review-link {
	display: block;
	margin: 1.5rem auto 0;
	font-size: 1.2rem;
	line-height: 1.4;
	padding: 1rem 0;
	width: 20rem;
	color: #ffffff;
	background: #333333;
  border-radius: 4px;
}
.block-goods-user-review--pagenav {
	margin: 2.7rem 0 0 0;
	clear: both;
	background: none;
	padding: 0;
	border: none;
	text-align: center;
}
.block-goods-user-review--pagenav #review_read_button a {
	display: inline-block;
}
.block-goods-user-review--pagenav #review_read_button a:after {
	display: inline-block;
	margin-left: 1.0rem;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 5px 0 5px;
	border-color: #333333 transparent transparent transparent;
}
.block-goods-user-review--pagenav #page_changer_top {
}
.block-goods-user-review--pagenav #page_changer_top>span {
	display: inline-block;
	margin: 0 0.3rem;
}
.block-goods-user-review--pager-now {
	color: #911330;
}
.block-goods-user-review--item {
	position: relative;
	width: 93.333vw;
	margin: 0 auto 1.0rem;
	padding: 1.5rem;
	border: none;
	background: #ffffff;
	border-radius: 5px;
}
.block-goods-user-review--item-date {
	position: absolute;
	right: 1.2rem;
	top: 1.5rem;
	font-size: 1.0rem;
	line-height: 1.4;
}
.block-goods-user-review--item-title {
	margin: 0 0 0;
	padding: 0 6.4em 0 0;
	font-size: 1.2rem;
	line-height: 1.4;
	font-weight: bold;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.block-goods-user-review--item-comment {
	font-size: 1.2rem;
	line-height: 1.4;
}
.block-goods-user-review--item-summary {
	display: flex;
	flex-flow: column-reverse;
	margin: 0.5rem 0 1.0rem;
}
.block-goods-user-review--item-name {
	font-size: 1.0rem;
	line-height: 1.4;
}
.block-goods-user-review--item-score {
	margin-bottom: 0.5rem;
}
.block-goods-user-review--item-score dt {
	display: none;
}
.block-goods-user-review--item-score dd img {
	height: 1.4rem;
	position: relative;
	top: 0;
	vertical-align: bottom;
}
.block-goods-user-review--item-moderate-vote, .block-goods-user-review--item-moderate-info1 {
	font-size: 1.0rem;
}
.block-goods-user-review--item-comment+.block-goods-user-review--item-moderate-vote, .block-goods-user-review--item-comment+.block-goods-user-review--item-moderate-info1 {
	margin-top: 1.4rem;
}
.block-goods-user-review--item-moderate-vote {
	padding-bottom: 0;
}
.block-goods-user-review--item-moderate-vote {
  display: none !important;
}
.block-user-review--review-item:first-child {
	border: none;
}
.block-user-review--review-header {
	width: 93.333vw;
	margin: 0 auto;
	padding: 1.2rem 1.2rem 0;
	border: solid 1px #911330;
	border-bottom: none;
	font-size: 1.4rem;
	font-weight: bold;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.block-user-review--evaluation {
	width: 93.333vw;
	margin: 0 auto;
	padding: 1.4rem 1.2rem 0;
	border: solid 1px #911330;
	border-bottom: none;
	border-top: none;
	display: flex;
	flex-flow: column-reverse;
}
.block-user-review--evaluation-score {
}
.block-user-review--evaluation-score dt {
	display: none;
}
.block-user-review--evaluation-score dd img {
	height: 1.4rem;
	top: 0;
}
.block-user-review--evaluator-name {
	font-size: 1.0rem;
}
.block-user-review--review-comment {
	width: 93.333vw;
	margin: 0 auto;
	padding: 1.4rem 1.2rem 1.2rem;
	border: solid 1px #911330;
	border-top: none;
}
/* ----レシピ詳細画面---- */
.block-goods-detail--promotion-freespace {
	margin: 0;
}
.block-goods-recipe-gallery {
	margin: 0 0 1.4rem;
	text-align: center;
}
.block-goods-recipe-head {
	margin: 0 0 1.7rem;
	text-align: center;
}
.block-goods-recipe-comment1 {
	width: 93.333vw;
	margin: 0 auto 2.7rem;
}
.block-goods-recipe-comment1 .red_ {
	color: #55922B;
}
.recipedetail_section {
	margin: 0 0 2.4rem;
}
.block-goods-recipe-comment1 h3 {
	margin: 0 0 1.2rem;
	padding: 0 0 0.7rem 2.3rem;
	border-bottom: solid 1px #990033;
	font-size: 1.4rem;
	line-height: 1.4;
	font-weight: bold;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: url(../../img/usr/common/icon_ume_sp.png) 0 0.2rem / 1.75rem auto no-repeat;
}
.recipedetail_make strong {
	font-weight: bold;
}
.recipedetail_make ol {
	counter-reset: li;
	/* li のカウンタ */
	list-style: none;
}
.recipedetail_make ol li {
	position: relative;
	padding-left: 1.3em;
}
.recipedetail_make ol li:before {
	position: absolute;
	left: 0;
	top: 0;
	color: #ab0132;
	font-weight: bold;
	counter-increment: li;
	content: counter(li) ". ";
}

/* ----ゲストお気に入り画面---- */
.block-guest-favorite-synchronize-title {
  font-weight: bold;
  font-size: 16px;
}
.block-guest-favorite-synchronize-description {
  font-size: 14px;
}
.block-guest-favorite-synchronize-link {
  text-align: center;
}
/* ----定期購入商品サイクル情報変更画面---- */
.block-regular-purcharse-cycle-info-update--skip-cancel-message {
  margin: 5px 0 0 5px;
}
/* ----アプリログイン訴求画面---- */
.block-applogin-body {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.9em;
  text-align: center;
  margin: auto;
  height: 100px;
}

/* ---- LightningRecommend ---- */
.block-top-lightningrecommend,
.block-ranking-lightningrecommend {
  padding: 0 0 40px;
}

.block-top-lightningrecommend--header,
.block-ranking-lightningrecommend--header {
  margin: 0 0 24px;
  padding: 40px 0 0;
  border: 0;
  text-align: center;
  font-family: "Josefin Sans", "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.333;
  color: #000;
  background: none;
}

.block-common-lightningrecommend {
  margin-top: 10px;
}

.block-common-lightningrecommend--header {
  padding: 16px 20px;
  border: 0;
  font-size: 19px;
  background: none;
}

.block-cart--lightningrecommend-wrapper {
  padding: 0 10px;
}

/* ----本品とレフィル切り替え画面---- */
.block-refillgoods-list {
  margin: 10px;
}
.block-regular-goods-refillgoods--header {
  margin: -10px -10px 0;
}

.block-goods-user-review--reply--item-frame{
  margin-top: 10px;
  padding: 15px 0;
  border-top: 1px dashed #dedede;
}

.block-goods-user-review--reply_name{
  margin-bottom: 10px;
}


/* ----トピックス一覧---- */
.block-top-topic, .block-topic-details {
	width: 93.333vw;
	margin: 0 auto;
}
.block-top-topic--body {
	width: 93.333vw;
	margin: 0 auto 12.5vw;
}
.pane-main>.block-topic-details {
	width: 93.333vw;
	margin: 0 auto 8vw;
}
.block-top-topic--header {
	position: relative;
	/*width: 100%;
	margin: 0 auto 4.5vw;
	padding: 0;
	border: none;
	text-align: center;
	font-size: 1.6rem;
	color: #911330;
	*/
	width: 100%;
	margin: 3.0rem auto 2.5rem;
	padding: 2.5rem 0 0;
	background: url(../../img/usr/common/line.png) center top repeat-x;
	border: none;
	font-size: 2.2rem;
	line-height: 1.2;
	text-align: center;
}
.block-top-topic--header:before {
	/*display: block;
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top:40px;
	width: 100%;
	height: 1px;
	background: #911330;
	*/
}
.block-top-topic--header span {
	/*position: relative;
	z-index: 10;
	display: inline-block;
	background: #ffffff;
	padding: 0 1.8rem 0;
	font-size: 1.6rem;
	color: #911330;
	*/
}
ul.block-topic-details--items {
	margin: 0;
border: none}
ul.block-top-topic--items li, ul.block-topic-details--items li {
	position: relative;
	margin: 2.0rem 0 0;
	padding: 0 0 1.1rem;
	border: none;
	border-bottom: dotted 1px #afafaf;
	font-size: 1.2rem;
}
ul.block-top-topic--items li a, ul.block-topic-details--items li a {
	text-decoration: none;
}
ul.block-top-topic--items li a dd, ul.block-topic-details--items li a dd {
	text-decoration: underline;
}
ul.block-top-topic--items li a:after, ul.block-topic-details--items li a:after {
	display: none;
}
ul.block-top-topic--items li dt, ul.block-topic-details--items li dt {
}
ul.block-top-topic--items li dd, ul.block-topic-details--items li dd {
	margin-top: 1.0rem;
}
ul.block-top-topic--items li .block-top-topic--icon, ul.block-topic-details--items li .block-topic-details--icon {
	position: absolute;
	left: 6rem;
	top: 0.4rem;
	max-height: 1.5rem;
}
ul.block-top-topic--items li.block-top-topic--image-item, ul.block-topic-details--items li.block-top-topic--image-item {
	margin-top: 0.9rem;
	padding: 0;
	border: none;
}
ul.block-top-topic--items li.block-top-topic--image-item .block-top-topic--icon, ul.block-topic-details--items li.block-top-topic--image-item .block-topic-details--icon {
	display: none;
}
ul.block-top-topic--items li:first-child, ul.block-topic-details--items li:first-child {
	margin-top: 0 !important;
}
.block-top-topic--next-page {
	margin: 2.0rem 0 0;
	padding: 0;
	text-align: center;
}
.block-topic-details--pager-top {
	margin: 0 0 3.0rem;
}
.block-topic-details--pager-bottom {
	margin: 3.0rem 0 3.0rem;
}

/* 検索結果 */

.block-search-goods--header {
    text-align: center;
    margin: 0 0 7.2vw;
    padding-bottom: 0;
}

.block-goods-list--display-style-items {
    display: none !important;
}

/* ----検索フォーム---- */
.block-search-goods .block-search-goods--condition-items {
    margin: 0;
    padding: 1.2rem 1.2rem 2.0rem;
    background: #eeeeee;
    border-bottom: solid 1px #eeeeee;
}

.block-search-goods .action-buttons {
    margin: 0;
    padding: 0 1.2rem 2.0rem;
    background: #eeeeee;
}

.block-search-goods .action-buttons .block-search-goods--search-btn {
    margin: 0;
    padding: 1.0rem 0;
    background: #333333 !important;
    border: solid 1px #333333 !important;
    font-size: 1.4rem;
    line-height: 1.8rem;
    letter-spacing: 0.5em;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px;
}

.block-search-goods .fieldset-vertical .form-group {
    margin: 1.0rem 0 0;
    padding: 0;
    background: #ffffff;
}

.block-search-goods .fieldset-vertical .form-group:first-child {
    margin-top: 0;
}

.block-search-goods .fieldset-vertical .form-group .form-label {
    display: block;
    float: none;
    margin: 0;
    padding: 0.8rem 1.0rem;
    border-left: solid 3px #333333;
    border-bottom: solid 1px #cccccc;
}

.block-search-goods .fieldset-vertical .form-group .form-control {
    padding: 1.0rem 1.5rem;
}

.block-search-goods .fieldset-vertical .form-group .form-control input[type="text"], .block-search-goods .fieldset-vertical .form-group .form-control input[type="tel"], .block-search-goods .fieldset-vertical .form-group .form-control input[type="email"], .block-search-goods .fieldset-vertical .form-group .form-control input[type="search"], .block-search-goods .fieldset-vertical .form-group .form-control input[type="password"], .block-search-goods .fieldset-vertical .form-group .form-control input[type="url"], .block-search-goods .fieldset-vertical .form-group .form-control input[type="number"], .block-search-goods .fieldset-vertical .form-group .form-control select, .block-search-goods .fieldset-vertical .form-group .form-control textarea {
    width: 100%;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--price .form-control {
    display: flex;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--price .form-control>div {
    display: flex;
    white-space: nowrap;
    align-items: center;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--price .form-control>div:first-child {
    margin-right: 0.8rem;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--price .form-control>div input {
    margin-right: 0.8rem;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--release-dt .form-control {
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--release-dt .form-control>div {
    display: flex;
    white-space: nowrap;
    align-items: center;
    margin-left: -0.8rem;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--release-dt .form-control>div:first-child {
    margin-bottom: 0.8rem;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--release-dt .form-control>div select {
    margin: 0 0.8rem;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--publication-dt .form-control {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.block-search-goods .fieldset-vertical .form-group.block-search-goods--publication-dt .form-control input {
    margin-right: 0.8rem;
}

/* カート */
.block-order-gift-dest--list-title,
.block-order-gift-dest--method-sender-title {
  color: var(--white);
  background-color: var(--red4);
  padding: .5rem 1.2rem;
  margin-bottom: 1.5rem !important;
}
.block-order-method h2,
.block-order-estimate h2,
.block-order-gift-select h2,
.block-order-gift-confirmation h2 {
  font-size: 2.2rem;
  line-height: 1.2;
  border-left: solid 5px var(--red4);
  padding: 0 0 0 8px;
  margin: 2.0rem 0 1.4rem 0;
}

.block-cart--body {
    padding: 10px 0;
}

.block-cart--procedure-container__fixed {
    padding: 10px 15px;
}

.block-cart--goods-list a {
    text-decoration: none;
}

.block-cart--procedure-container .action-buttons .action .btn {
    font-size: 1.5rem;
}

.block-order-flow--step {
    text-align: center;
}

.block-order-method h2, .block-order-estimate h2, .block-order-gift-select h2, .block-order-gift-confirmation h2 {
    font-size: 2.2rem;
    line-height: 1.2;
    border-left: solid 5px #911330;
    padding: 0 0 0 8px;
    margin: 2.0rem 0 1.4rem 0;
}

.block-order-gift-dest--list-title, .block-order-gift-dest--method-sender-title {
    background: #911330;
    color: #ffffff;
    padding: 1.2vw 3.333vw !important;
    margin-bottom: 3.333vw !important;
    line-height: 1.4 !important;
    border: none !important;
}

.block-order-gift-confirmation--order-comment-header {
    margin-left: -10px;
    margin-right: -10px;
}

.help-block {
    display: inline-block;
}

.block-order-method--payment-method-select li .help-block, .block-order-gift-select--method-list li .help-block {
    color: #333333;
}

.block-order-gift-confirmation--promotion-freespace .block-promotion-freespace h3 {
    display: none;
}

/* ----ノベルティ画像非表示---- */
.block-order-estimate--novelty-list>li:last-child .block-order-estimate--novelty-item-image>figure {
    display: none;
}

.block-order-estimate--novelty-list>li:last-child .block-order-estimate--novelty-item-goods {
    height: 55px;
}

.block-order-gift-confirmation--novelty-list>li:last-child .block-order-gift-confirmation--novelty-item-image>figure {
    display: none;
}

.block-order-gift-confirmation--novelty-list>li:last-child .block-order-gift-confirmation--novelty-item {
    height: 55px;
}

.block-order-estimate--method-pay-content {
    border-bottom: solid 1px #dcdcdc;
    border-top: none;
}

/*----注文確認画面キャンペーンコメント非表示----*/
.block-order-gift-confirmation--campaign-info-message a {
    display: none;
}

/*----注文確認画面ギフトフロー文言追加----*/
.block-order-gift-confirmation--novelty-content .form-error:first-child:after {
    content: "\Aお届け先1がご自宅以外の方はお気をつけください。";
    white-space: pre;
}

.block-mail-news-sample__modal, .block-mail-news-terms__modal {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    top: 0;
    z-index: 100000;
    width: 100%;
    height: 100%;
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-bg, .block-mail-news-terms__modal .block-mail-news-terms__modal-bg {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    top: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-container, .block-mail-news-terms__modal .block-mail-news-terms__modal-container {
    z-index: 10;
    position: absolute;
    top: 2.4rem;
    left: 2.9vw;
    margin-top: 2.4rem;
    width: 94.2vw;
    height: 42rem;
    max-height: calc(100% - 4.8rem);
    background: #ffffff;
    padding: 1.2rem;
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-close, .block-mail-news-terms__modal .block-mail-news-terms__modal-close {
    position: absolute;
    right: 0;
    bottom: calc(100% + 0.5rem);
    width: 1.8rem;
    height: 1.8rem;
    overflow: hidden;
    text-align: left;
    white-space: nowrap;
    text-indent: -9999rem;
    cursor: pointer;
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-close:before, .block-mail-news-sample__modal .block-mail-news-sample__modal-close:after, .block-mail-news-terms__modal .block-mail-news-terms__modal-close:before, .block-mail-news-terms__modal .block-mail-news-terms__modal-close:after {
    content: '';
    position: absolute;
    left: 0;
    top: 44%;
    display: block;
    width: 1.8rem;
    height: 0.3rem;
    background: #eee;
    transform: rotate(45deg);
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-close:after, .block-mail-news-terms__modal .block-mail-news-terms__modal-close:after {
    transform: rotate(-45deg);
}

.block-mail-news-sample__modal {
    display: none;
}

.block-mail-news-sample__modal-body {
    height: 100%;
}

.block-mail-news-sample__modal-body>p {
    height: 4.4rem;
    margin: 0;
    font-size: 2.2rem;
    line-height: 1.3;
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
}

.block-mail-news-sample__modal-box {
    overflow: auto;
    height: calc(100% - 4.4rem - 2px);
    border: solid 1px #d5d5d5;
}

.mail_news .block-mail_bnr {
    margin: -20px -10px 0;
}

.mail_news .sec02 {
    margin: 3.0rem -10px 0;
    padding: 3.4rem 2.0rem 1.0rem;
    background: #f9f9f9;
}

.mail_news .sec02 h2 {
    margin-top: 0;
}

.block-mail-news .mail_news .sec02>p img {
    margin-bottom: 0;
}

.block-mail-news-terms__open {
    text-align: right;
    margin: 0.8rem 0 0;
}

.block-mail-news--register-form {
    margin: 0 -10px 0;
    padding: 2.4rem 10px 2.4rem;
    border: solid 1.0rem #f9f9f9;
    background: #ffffff;
}

.block-mail-news--register-header {
    margin-top: 0;
}

.block-mail-news-terms__open span {
    text-decoration: underline;
}

.block-mail-news---release-form {
    border-top: none;
    margin: 0;
    padding: 1.0rem 0.3rem 0;
}

.block-mail-news--terms-of-service {
    display: none;
}

.block-mail-news-terms__modal-container .block-mail-news--terms-of-service {
    display: block;
}

.block-mail-news-terms__modal-container .block-mail-news--terms-of-service, .block-mail-news-terms__modal-container .block-mail-news--terms-of-service form, .block-mail-news-terms__modal-container .block-mail-news--terms-of-service textarea {
    height: 100%;
}

/* disabled radio */
.block-order-gift-select--method-list li input[type="radio"]:disabled {
    -webkit-appearance: none;
    appearance: none;
    background: #efefefa3;
    border: solid 1px #b2b2b2a3;
    border-radius: 100%;
}

.block-order-gift-select--method-list li .help-block {
    margin-top: 0;
}

.btn-3d-link {
    background: #F5BCBC;
}

/* メールニュース登録・解除 */
.block-mail-news-sample__modal, .block-mail-news-terms__modal {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    top: 0;
    z-index: 100000;
    width: 100%;
    height: 100%;
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-bg, .block-mail-news-terms__modal .block-mail-news-terms__modal-bg {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    top: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-container, .block-mail-news-terms__modal .block-mail-news-terms__modal-container {
    z-index: 10;
    position: absolute;
    top: 2.4rem;
    left: 2.9vw;
    margin-top: 2.4rem;
    width: 94.2vw;
    height: 42rem;
    max-height: calc(100% - 4.8rem);
    background: #ffffff;
    padding: 1.2rem;
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-close, .block-mail-news-terms__modal .block-mail-news-terms__modal-close {
    position: absolute;
    right: 0;
    bottom: calc(100% + 0.5rem);
    width: 1.8rem;
    height: 1.8rem;
    overflow: hidden;
    text-align: left;
    white-space: nowrap;
    text-indent: -9999rem;
    cursor: pointer;
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-close:before, .block-mail-news-sample__modal .block-mail-news-sample__modal-close:after, .block-mail-news-terms__modal .block-mail-news-terms__modal-close:before, .block-mail-news-terms__modal .block-mail-news-terms__modal-close:after {
    content: '';
    position: absolute;
    left: 0;
    top: 44%;
    display: block;
    width: 1.8rem;
    height: 0.3rem;
    background: #eee;
    transform: rotate(45deg);
}

.block-mail-news-sample__modal .block-mail-news-sample__modal-close:after, .block-mail-news-terms__modal .block-mail-news-terms__modal-close:after {
    transform: rotate(-45deg);
}

.block-mail-news-sample__modal {
    display: none;
}

.block-mail-news-sample__modal-body {
    height: 100%;
}

.block-mail-news-sample__modal-body>p {
    height: 4.4rem;
    margin: 0;
    font-size: 2.2rem;
    line-height: 1.3;
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
}

.block-mail-news-sample__modal-box {
    overflow: auto;
    height: calc(100% - 4.4rem - 2px);
    border: solid 1px #d5d5d5;
}

.mail_news .block-mail_bnr {
    margin: -20px -10px 0;
}

.mail_news .sec02 {
    margin: 3.0rem -10px 0;
    padding: 3.4rem 2.0rem 1.0rem;
    background: #f9f9f9;
}

.mail_news .sec02 h2 {
    margin-top: 0;
}

.block-mail-news .mail_news .sec02>p img {
    margin-bottom: 0;
}

.block-mail-news-terms__open {
    text-align: right;
    margin: 0.8rem 0 0;
}

.block-mail-news--register-form {
    margin: 0 -10px 0;
    padding: 2.4rem 10px 2.4rem;
    border: solid 1.0rem #f9f9f9;
    background: #ffffff;
}

.block-mail-news--register-header {
    margin-top: 0;
}

.block-mail-news-terms__open span {
    text-decoration: underline;
}

.block-mail-news---release-form {
    border-top: none;
    margin: 0;
    padding: 1.0rem 0.3rem 0;
}

.block-mail-news--terms-of-service {
    display: none;
}

.block-mail-news-terms__modal-container .block-mail-news--terms-of-service {
    display: block;
}

.block-mail-news-terms__modal-container .block-mail-news--terms-of-service, .block-mail-news-terms__modal-container .block-mail-news--terms-of-service form, .block-mail-news-terms__modal-container .block-mail-news--terms-of-service textarea {
    height: 100%;
}
.block-mail-news .block-mail-news--registration-message {
  margin: 3rem 0;
}

.btn-3d-link {
  background:#F5BCBC;
}
.block-order-gift-confirmation--return-agree a.btn-3d-link {
  margin-bottom: 10px;
}

/* 20241029 梅サイズ非表示 */
.block-goods-detail:has(.block-goods-comment5 .umeSizeBox) .block-goods-comment5,.block-goods-detail:has(.block-goods-comment5 .umeSizeBox) .block-goods-comment5--title {
    display: none;
}