@charset "UTF-8";

/* 全画面 */
.block-fullwindowsize {
	width: var(--fullWindowSize);
	background-color: rgba(0, 0, 0, 0.1);
	margin-left: calc((100% - var(--fullWindowSize)) / 2);
	margin-right: calc((100% - var(--fullWindowSize)) / 2);
}

body.st__lb-open {
	overflow: hidden;
}

.u-hidden-sp {
	display: none;
}

@media screen and (min-width: 768px) {
	.u-hidden-sp {
		display: block;
	}

	.u-hidden-pc {
		display: none;
	}
}

/* 最近見た商品 */
.block-recent-item {
	margin: 3.0rem 0 5.2rem;
	width: var(--fullWindowSize);
	margin-left: calc((100% - var(--fullWindowSize)) / 2);
}

.block-recent-item .block-recent-item--header {
	margin: 0 1.5rem 2.2rem;
	font-size: 1.6rem;
	font-weight: bold;
}

.block-recent-item .block-recent-item--body {
	overflow: hidden;
}

.block-recent-item--message {
	margin: 0 auto;
	text-align: center;
	/*width: calc(var(--fullWindowSize) - 4.0rem);
	*/
	width: auto;
}

.block-recent-item--keep-history {
	display: none !important;
}

@media screen and (max-width: 767px) {
	.block-recent-item .swiper-buttons {
		display: none !important;
	}
}

/* 商品一覧 */
.block-goodslist--head {
	position: relative;
}

.block-goodslist--head:has(.js-goodslist-modal--btn) {
	padding-right: 11rem;
}

.block-goodslist--head .js-goodslist-modal--btn {
	position: absolute;
	right: 0;
	top: 0;
}

.js-goodslist-modal .js-goodslist-modal--btn {
	display: inline-block;
	font-size: 1.1rem;
	letter-spacing: 1px;
	color: #ffffff;
	background: #333333;
	padding: 1.0rem 3.5rem 1.0rem 1.5rem;
	text-decoration: none !important;
}

.js-goodslist-modal .js-goodslist-modal--btn::before,
.js-goodslist-modal .js-goodslist-modal--btn::after {
	display: block;
	content: '';
	width: 1.0rem;
	height: 1px;
	background: #ffffff;
	position: absolute;
	right: 1.5rem;
	top: 50%;
}

.js-goodslist-modal .js-goodslist-modal--btn::after {
	transform: rotate(90deg);
}

.js-goodslist-modal:has(.js-goodslist-modal--modal.st__open) .js-goodslist-modal--btn::after {
	transform: rotate(0deg);
}

.js-goodslist-modal--modal {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 500;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	visibility: hidden;
	opacity: 0;
	transition: all 0.5s;
}

.js-goodslist-modal--modal.st__open {
	visibility: visible;
	opacity: 1;
}

.js-goodslist-modal--modal .js-goodslist-modal--bg {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 5;
	background: rgba(0, 0, 0, 0.7);
}

.js-goodslist-modal--modal .js-goodslist-modal--body {
	position: relative;
	z-index: 10;
	background: #ffffff;
	width: calc(100% - 4.0rem);
	max-height: 90vh;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 1.5rem 1.5rem 3.0rem;
}

.js-goodslist-modal--modal .js-goodslist-modal--close {
	position: relative;
	z-index: 10;
	width: calc(100% - 4.0rem);
	height: 0;
}

.js-goodslist-modal--modal .js-goodslist-modal--close span {
	display: block;
	position: absolute;
	right: 0;
	top: -2.5rem;
	width: 2.0rem;
	height: 2.0rem;
	cursor: pointer;
}

.js-goodslist-modal--modal .js-goodslist-modal--close span::before,
.js-goodslist-modal--modal .js-goodslist-modal--close span::after {
	display: block;
	content: '';
	width: 1.8rem;
	height: 1px;
	background: #ffffff;
	position: absolute;
	top: 50%;
	right: 0;
}

.js-goodslist-modal--modal .js-goodslist-modal--close span::before {
	transform: rotate(45deg);
}

.js-goodslist-modal--modal .js-goodslist-modal--close span::after {
	transform: rotate(-45deg);
}

.js-goodslist-modal--modal .js-goodslist-modal--body>*:not(:first-child) {
	margin-top: 1.8rem;
}

.page-genre .wrapper>.pane-contents,
.page-category .wrapper>.pane-contents,
.page-event .wrapper>.pane-contents {
	overflow: hidden;
	margin-top: -3rem;
	padding-top: 3rem;
}

.block-goodslist-page--freepage-header {
	position: relative;
	margin-left: -2rem;
	margin-right: -2rem;
}

.block-goodslist-page--freepage-header>picture img {
	width: 100%;
	height: auto;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title {
	position: absolute;
	/* top: 7.6rem;
	*/
	left: 2rem;
	z-index: 1;
	top: 50%;
	translate: 0 -50%;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 {
	/* top: 5.8rem;
	*/
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 .title {
	margin-bottom: 1.6rem;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .title {
	display: block;
	margin-bottom: 1.25rem;
	font-size: 3rem;
	color: #e60012;
	line-height: 1;
	font-weight: 400;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.title {
	font-size: 0;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r20 .title {
	color: #fff;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 picture.title {
	margin-bottom: 1rem;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.title img {
	width: auto;
	height: 2.5rem;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.label {
	display: block;
	margin-bottom: 1.23rem;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.label img {
	width: auto;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 picture.label img {
	height: 2.67rem;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title h1 {
	margin-bottom: 0;
	font-weight: normal;
	font-size: 0;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title h1 .sub-title {
	display: block;
	font-size: 1.4rem;
	color: #e60012;
	line-height: calc(66 / 42);
	font-weight: 500;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r20 h1 .sub-title {
	color: #fff;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 h1 .sub-title {
	color: #b38e0a;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1030 h1 .sub-title {
	color: #373775;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .text {
	display: none;
}

.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r20 .text {
	color: #bbbbbb;
}

@media screen and (max-width: 767px) {
	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title {
		top: 50%;
		translate: 0 -50%;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .title {
		margin-bottom: 0;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title h1 .sub-title {
		margin-top: 1.25rem;
	}
}

@media screen and (min-width: 768px) {
	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title h1 .sub-title {
		line-height: 1;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title h1 .sub-title .u-hidden-sp {
		display: inline;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .text {
		display: block;
		line-height: calc(35 / 20);
	}
}

@media screen and (max-width: 1319px) and (min-width: 768px) {
	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title {
		/* top: 10.77dvw;
		*/
		left: 2rem;
	}

	/* .block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 {
		top: 8.18vw;
	}
	*/
	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .title {
		margin-bottom: 1.67dvw;
		font-size: 4.7dvw;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.title {
		font-size: 0;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 picture.title {
		margin-bottom: 1.13dvw;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.title img {
		height: 4.02dvw;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.label {
		margin-bottom: 1.59dvw;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 picture.label img {
		height: 3.18dvw;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title h1 .sub-title {
		font-size: 1.82dvw;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .text {
		margin-top: 2.65dvw;
		font-size: 1.52dvw;
	}
}

@media screen and (min-width: 1320px) {
	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title {
		/* top: 14.2rem;
		*/
		left: 0;
	}

	/* .block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 {
		top: 10.8rem;
	}
	*/
	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .title {
		margin-bottom: 2.2rem;
		font-size: 6.2rem;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.title {
		font-size: 0;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 picture.title {
		margin-bottom: 1.5rem;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.title img {
		height: 5.3rem;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title picture.label {
		margin-bottom: 2.1rem;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title.r1020 picture.label img {
		height: 4.2rem;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title h1 .sub-title {
		font-size: 2.4rem;
	}

	.block-goodslist-page--freepage-header .block-goodslist-page--freepage-header-title .text {
		margin-top: 3.5rem;
		font-size: 2rem;
	}
}

/* 商品詳細 */
.goodsdetail-pane-contents {
	margin-bottom: 1.8rem;
}

#goodsdetail-pane-contents--head {
	margin: 0 0 3.3rem;
}

.block-goods-name {
	margin: 1.4rem 0 0.8rem;
}

.block-goods-name h1.block-goods-name--text {
	margin-top: 0.8rem;
	font-size: 1.8rem;
}

.revico-star-zone {
	display: none;
}

.block-goods-name~.revico-star-zone {
	display: block;
}

.revico-star-zone .revico-read-more-review__cln {
	text-decoration: underline;
}

.block-goods-comment {
	margin: 0 0 0;
	color: var(--color-gray);
}

#goodsdetail-share-btn {
	margin: 0.8rem 0;
	text-align: right;
}

#goodsdetail-share-btn a {
	display: inline-block;
	width: 1.55rem;
}

#goodsdetail-share-modal {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	visibility: hidden;
	opacity: 0;
	transition: all 0.5s;
}

#goodsdetail-share-modal.st__open {
	visibility: visible;
	opacity: 1;
}

#goodsdetail-share-modal--bg {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 5;
	background: rgba(0, 0, 0, 0.7);
}

#goodsdetail-share-modal--body {
	position: relative;
	z-index: 10;
	background: #ffffff;
	width: calc(100% - 4.0rem);
	max-height: 90vh;
	padding: 1.5rem 1.5rem 3.0rem;
}

#goodsdetail-share-modal--body .goodsdetail-share-modal--close {
	display: block;
	position: absolute;
	right: 0;
	top: -2.5rem;
	width: 2.0rem;
	height: 2.0rem;
}

#goodsdetail-share-modal--body .goodsdetail-share-modal--close::before,
#goodsdetail-share-modal--body .goodsdetail-share-modal--close::after {
	display: block;
	content: '';
	width: 1.8rem;
	height: 1px;
	background: #ffffff;
	position: absolute;
	top: 50%;
	right: 0;
}

#goodsdetail-share-modal--body .goodsdetail-share-modal--close::before {
	transform: rotate(45deg);
}

#goodsdetail-share-modal--body .goodsdetail-share-modal--close::after {
	transform: rotate(-45deg);
}

#goodsdetail-share-modal--body>dl {
	margin: 0 0 1.5rem;
	text-align: center;
}

#goodsdetail-share-modal--body>dl dt {
	margin: 0 0 0.8rem;
	font-size: 1.6rem;
	font-weight: bold;
}

.goodsdetail-share-modal--common>p {
	font-size: 1.2rem;
	margin: 0 0 0.5rem;
}

.goodsdetail-share-modal--common>div {
	display: flex;
	align-items: stretch;
	border: solid 1px #E8E8E8;
}

.goodsdetail-share-modal--common>div>p {
	flex: 1;
	overflow: hidden;
	padding: 1.0rem 1.5rem;
	font-size: 1.6rem;
	text-decoration: underline;
	font-weight: normal;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.goodsdetail-share-modal--common>div>a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 2.4rem;
}

.goodsdetail-share-modal--common>div>a img {
	width: 1.43rem;
}

.goodsdetail-share-modal--sns {
	margin: 2.0rem 0 0;
	display: flex;
	justify-content: center;
	gap: 1.5rem;
}

.goodsdetail-share-modal--sns li {
	width: 5.0rem;
}

/* 商品詳細MVバリエーション切り替え時アニメーション */
#goodsdetail-pane-contents.st-variation-change {
	animation: fadeInAnimation 0.4s ease-in-out;
}

/* 商品詳細MV */
#goodsdetail-gallery {
	margin: 0 -2.0rem 1.0rem;
}

#goodsdetail-gallery .goodsdetail-mv-main-wrap {
	position: relative;
}

#goodsdetail-gallery .goodsdetail-mv-main-wrap::after {
	display: block;
	content: '';
	width: 2.6rem;
	height: 2.6rem;
	background: url(../../img/usr/icon_detail_zoom.png) center / contain no-repeat;
	position: absolute;
	right: 1.0rem;
	bottom: 1.0rem;
	z-index: 5;
	pointer-events: none;
}

#goodsdetail-gallery .goodsdetail-mv-main-wrap {
	height: 0;
	padding: calc(100% * (520 / 390)) 0 0;
}

#goodsdetail-gallery .goodsdetail-mv-main {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

#goodsdetail-gallery .goodsdetail-mv-main-wrap {}

#goodsdetail-gallery .goodsdetail-mv-counter {
	position: absolute;
	left: 1.0rem;
	top: 1.0rem;
	z-index: 10;
	width: 7.8rem;
	height: 4.0rem;
	padding: 0 0.8rem;
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: rgba(110, 110, 110, 0.7);
	color: #ffffff;
}

#goodsdetail-gallery a.goodsdetail-mv-counter:hover {
	text-decoration: none;
	opacity: 0.8;
}

#goodsdetail-gallery .goodsdetail-mv-counter>span {
	display: block;
	width: 2.0rem;
	padding-top: 2.0rem;
	text-align: center;
	font-size: 0.8rem;
	background: url(../../img/usr/icon_detail_list.png) center top / 1.90rem auto no-repeat;
}

#goodsdetail-gallery .goodsdetail-mv-counter>p {
	font-size: 1.2rem;
	font-weight: normal;
}

#goodsdetail-gallery .goodsdetail-mv-main {
	text-align: center;
}

#goodsdetail-gallery .goodsdetail-mv-main:not(.swiper-initialized) ul li+li {
	display: none;
}

#goodsdetail-gallery .goodsdetail-mv-main:not(.swiper-initialized) ul,
#goodsdetail-gallery .goodsdetail-mv-main:not(.swiper-initialized) ul li {
	height: 100%;
}

#goodsdetail-gallery .goodsdetail-mv-main li figure {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

#goodsdetail-gallery .goodsdetail-mv-thumbnail {}

#goodsdetail-gallery .goodsdetail-mv-thumbnail ul {
	display: flex;
	flex-flow: wrap;
	gap: 0.3rem 0.6rem;
}

#goodsdetail-gallery .goodsdetail-mv-thumbnail ul li {
	position: relative;
	width: calc((100% - 0.6rem * 3) / 4);
	display: flex;
	align-items: center;
}

#goodsdetail-gallery .goodsdetail-mv-thumbnail ul li.st__active::after {
	display: block;
	content: '';
	border: solid 1px #333333;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	pointer-events: none;
}

.wrapper #goodsdetail-gallery .swiper-button-prev,
.wrapper #goodsdetail-gallery .swiper-button-next {
	width: 4.0rem;
	height: 5.5rem;
	margin-top: -1.0rem;
}

.wrapper #goodsdetail-gallery .swiper-button-prev {
	left: 0;
}

.wrapper #goodsdetail-gallery .swiper-button-next {
	right: 0;
}

.wrapper #goodsdetail-gallery .swiper-button-prev.swiper-button-disabled,
.wrapper #goodsdetail-gallery .swiper-button-next.swiper-button-disabled {
	opacity: 0.3;
}

.wrapper #goodsdetail-gallery .swiper-button-prev {
	background: url(../../img/usr/icon_detail_arrow_l.png) 1.0rem center / 1.0rem auto no-repeat;
}

.wrapper #goodsdetail-gallery .swiper-button-next {
	background: url(../../img/usr/icon_detail_arrow_r.png) calc(100% - 1.0rem) center / 1.0rem auto no-repeat;
}

@media screen and (max-width: 11767px) {
	.goodsdetail-mv-thumbnail-wrap {
		position: fixed;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		z-index: 500;
		display: flex;
		align-items: center;
		justify-content: center;
		visibility: hidden;
		opacity: 0;
	}

	.goodsdetail-mv-thumbnail-wrap.st__close {
		background: #cc0000;
	}

	.goodsdetail-mv-thumbnail-wrap.st__close,
	.goodsdetail-mv-thumbnail-wrap.st__open {
		transition: all 0.5s;
	}

	.goodsdetail-mv-thumbnail-wrap.st__open {
		visibility: visible;
		opacity: 1;
	}

	.goodsdetail-mv-thumbnail-bg {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		z-index: 5;
		background: rgba(0, 0, 0, 0.7);
	}

	.goodsdetail-mv-thumbnail {
		position: relative;
		z-index: 10;
		background: #ffffff;
		width: calc(100% - 4.0rem);
	}

	.goodsdetail-mv-thumbnail-container {
		max-height: 90vh;
		overflow-y: auto;
		padding: 1.5rem 1.5rem 3.0rem;
	}

	.goodsdetail-mv-thumbnail .goodsdetail-mv-thumbnail--tit {
		margin: 0 0 1.0rem;
		font-size: 1.6rem;
		font-weight: bold;
		text-align: center;
	}

	.goodsdetail-mv-thumbnail .goodsdetail-mv-thumbnail--close {
		display: block;
		position: absolute;
		right: 0;
		top: -2.5rem;
		width: 2.0rem;
		height: 2.0rem;
	}

	.goodsdetail-mv-thumbnail .goodsdetail-mv-thumbnail--close::before,
	.goodsdetail-mv-thumbnail .goodsdetail-mv-thumbnail--close::after {
		display: block;
		content: '';
		width: 1.8rem;
		height: 1px;
		background: #ffffff;
		position: absolute;
		top: 50%;
		right: 0;
	}

	.goodsdetail-mv-thumbnail .goodsdetail-mv-thumbnail--close::before {
		transform: rotate(45deg);
	}

	.goodsdetail-mv-thumbnail .goodsdetail-mv-thumbnail--close::after {
		transform: rotate(-45deg);
	}
}

body.page-goods:has(#goback-cartarea) #footer-block-nav {
	padding-bottom: 5.0rem;
}

#goback-cartarea {
	position: fixed;
	/* left: 1.0rem;
	right: 1.0rem; */
	bottom: 1.0rem;
	z-index: 20;
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s;
	left: 50%;
	transform: translateX(-50%);
	pointer-events: none;
}

#goback-cartarea.st__active {
	visibility: visible;
	opacity: 1;
}

#goback-cartarea a {
	/* margin: 0 auto; */
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28rem;
	height: 4.0rem;
	font-size: 1.6rem;
	background: var(--color-red);
	border: solid 1px var(--color-red);
	color: #ffffff;
	text-decoration: none !important;
	pointer-events: auto;
}

#goback-cartarea a::before {
	margin: 0 1.5rem 0 0;
	content: '';
	display: block;
	width: 1.75rem;
	height: 1.75rem;
	background: url(../../img/usr/common/header_icon_cart_white.png) center / contain no-repeat;
}

#unisize_1000:not(:empty) {
	margin-bottom: 1.5rem;
}

.block-goods-size--box.block-unisize .block-size--item-title {
	margin-bottom: 1em;
}

.c-item-detail-expand-items--table {
	display: table;
	width: 100%;
	border-right: solid 1px #D9D9D9;
	border-bottom: solid 1px #D9D9D9;
}

.c-item-detail-expand-items--table>div {
	display: table-row;
}

.c-item-detail-expand-items--table>div>div {
	display: table-cell;
	border-left: solid 1px #D9D9D9;
	border-top: solid 1px #D9D9D9;
	padding: 0.8rem 0.5rem;
	font-size: 1.4rem;
	font-weight: 500;
	text-align: center;
}

.c-item-detail-expand-items--table>div:first-child>div,
.c-item-detail-expand-items--table>div>div:first-child {
	background: #F9F8F6;
}

/* 商品詳細　バリエーション */
#goodsdetail-variation-frame {
	margin: 0;
	display: flex;
	flex-flow: column;
}

#goodsdetail-variation-frame .js-goods-variation-detail,
#goodsdetail-variation-frame .js-goods-variation-detail>form {
	display: contents;
}

#goodsdetail-variation-frame #goods-variation-detail--line1 {
	order: 10;
}

#goodsdetail-variation-frame #goods-variation-detail--line2 {
	order: 50;
}

#goodsdetail-variation-frame .block-goods-comment9 {
	order: 30;
}

#goodsdetail-variation-frame #goodsdetail-unisize-btn {
	order: 35;
	max-width: 500px;
}

#goodsdetail-variation-frame #goodsdetail-unisize-btn:has(*) {
	margin-top: 2.2rem;
}

#goodsdetail-variation-frame .block-goods-comment9 {
	font-size: 1.2rem;
	font-weight: 500;
}

#goodsdetail-variation-frame .block-goods-comment9 a {
	text-decoration: underline;
}

.block-variation .block-variation {
	margin: 0 0 1.8rem;
}

.block-variation .block-variation--name {
	margin: 0 0 1.0rem;
	font-size: 1.6rem;
	font-weight: bold;
}

.block-variation .block-variation--name.block-size--name {
	margin-bottom: 0.7rem;
}

.block-variation--item-list {
	display: flex;
	flex-flow: wrap;
	gap: 1.0rem;
}

.block-variation--item {
	width: 4.0rem;
	font-size: 1.0rem;
	font-weight: 500;
	margin: 0;
}

.block-variation--item dt {
	position: relative;
	width: 100%;
	min-width: auto;
	min-height: auto;
	border: none !important;
}

.block-variation--item dt::before {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 5;
	display: block;
	content: '';
	border: solid 1px #D9D9D9;
	pointer-events: none;
}

.block-variation--item.active dt::before,
.block-variation--item.color-disable-stock.active dt::before,
.block-variation--item.size-disable-stock.active dt::before {
	border-color: #333333;
}

.block-variation--item.block-color--item {
	width: 5.0rem;
}

.block-color--item dt.block-color--item-term {
	position: relative;
	width: 5.0rem;
	height: calc(5.0rem * (520 / 390));
}

.block-variation--item.color-disable-stock dt,
.block-variation--item.size-disable-stock dt {
	border: solid 1px #D9D9D9;
	background: #EFEFEF;
}

.block-variation--item.color-disable-stock dt::before,
.block-variation--item.size-disable-stock dt::before {
	border-color: #D9D9D9;
}

.block-variation--item.color-disable-stock dt,
.block-variation--item.size-disable-stock dt {
	overflow: hidden;
}

.block-variation--item.size-disable-stock dt::after {
	content: "";
	position: absolute;
	width: 174%;
	height: 1px;
	background-color: #cccccc;
	transform: rotate(-53deg);
	top: 100%;
	left: 0;
	transform-origin: left center;
}

.page-goods:has(.aw-prod-socks, .aw-prod-branket, .aw-prod-socks-gift) .block-variation--item.size-disable-stock dt::after {
	transform: rotate(334deg);
	top: 99%;
}

@media screen and (min-width: 768px) {
	.page-goods:has(.aw-prod-socks, .aw-prod-branket, .aw-prod-socks-gift) .block-variation--item.size-disable-stock dt::after {
		transform: rotate(336deg);
		top: 99%;
	}
}

.block-variation--item.size-disable-stock dt::after {
	width: 140%;
	height: 1px;
	transform: rotate(-45deg);
	top: 100%;
	left: 0;
	transform-origin: left center;
}

.block-color--item-term figure {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.block-variation--item.block-size--item {
	width: auto;
	min-width: 4.0rem;
}

.block-size--item-term span {
	display: flex;
	width: auto;
	height: 4.0rem;
	padding: 0 .5rem;
	font-family: var(--font-jost);
	font-size: 1.3rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.block-variation--item dd {
	margin: 0.5rem 0 0;
	color: var(--color-gray);
	text-align: center;
}

/* サイズチャートを見る */
.block-variation--sizechart {
	position: relative;
	display: none;
}

#goodsdetail-pane-contents:has(.block-goods-size--box.block-unisize) .block-variation--sizechart,
#goodsdetail-pane-contents:has(.block-goods-comment5) .block-variation--sizechart {
	display: block;
}

.block-variation--sizechart a {
	position: absolute;
	right: 0;
	top: 0.2rem;
	color: var(--color-red);
	font-size: 1.1rem;
	display: flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0 1.8rem 0 0;
	font-size: 1.2rem;
}

.block-variation--sizechart a::before {
	display: block;
	content: '';
	width: 2.0rem;
	height: 2.0rem;
	background: url(../../img/usr/icon_detail_sizechart.png) center / contain no-repeat;
}

.block-variation--sizechart a::after {
	content: "";
	width: 0.7rem;
	height: 0.7rem;
	border-top: solid 1px var(--color-red);
	border-right: solid 1px var(--color-red);
	transform: rotate(135deg);
	position: absolute;
	right: 0.2rem;
	top: calc(50% - 0.5rem);
}

#block-variation--sizechart-modal {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	visibility: hidden;
	opacity: 0;
	transition: all 0.5s;
}

#block-variation--sizechart-modal.st__open {
	visibility: visible;
	opacity: 1;
}

#block-variation--sizechart-modal--bg {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 5;
	background: rgba(0, 0, 0, 0.7);
}

#block-variation--sizechart-modal--body {
	position: relative;
	z-index: 10;
	background: #ffffff;
	width: calc(100% - 4.0rem);
	max-height: 90vh;
	padding: 1.5rem 1.5rem 3.0rem;
}

#block-variation--sizechart-modal--body .block-variation--sizechart-modal--close {
	display: block;
	position: absolute;
	right: 0;
	top: -2.5rem;
	width: 2.0rem;
	height: 2.0rem;
}

#block-variation--sizechart-modal--body .block-variation--sizechart-modal--close::before,
#block-variation--sizechart-modal--body .block-variation--sizechart-modal--close::after {
	display: block;
	content: '';
	width: 1.8rem;
	height: 1px;
	background: #ffffff;
	position: absolute;
	top: 50%;
	right: 0;
}

#block-variation--sizechart-modal--body .block-variation--sizechart-modal--close::before {
	transform: rotate(45deg);
}

#block-variation--sizechart-modal--body .block-variation--sizechart-modal--close::after {
	transform: rotate(-45deg);
}

#block-variation--sizechart-modal--body .block-goods-size--box.block-unisize:not(:first-child) {
	margin-top: 2.0rem;
}

#block-variation--sizechart-modal--body .block-variation--sizechart-modal--close+.block-goods-size--box.block-unisize:not(:first-child) {
	margin-top: 0;
}

/* AiReco 商品詳細 */
.block-common-lightningrecommend {
	position: relative;
	margin: 3.0rem 0;
	padding-top: 2.4rem;
}

.block-common-lightningrecommend::before {
	display: block;
	content: '';
	position: absolute;
	left: -2.0rem;
	right: -2.0rem;
	top: 0;
	height: 1px;
	background: #E8E8E8;
}

.block-common-lightningrecommend .block-common-lightningrecommend--header {
	font-size: 1.8rem;
	font-weight: bold;
}

#goodsdetail_itemhistory.block-recent-item .block-recent-item--header,
#block_of_itemhistory .block-recent-item--header {
	position: relative;
	margin-top: 3.0rem;
	padding-top: 2.4rem;
}

#goodsdetail_itemhistory.block-recent-item .block-recent-item--header::before,
#block_of_itemhistory .block-recent-item--header::before {
	display: block;
	content: '';
	position: absolute;
	left: -1.5rem;
	right: -1.5rem;
	top: 0;
	height: 1px;
	background: #E8E8E8;
}

.block-search-goods--from-dt,
.block-search-goods--to-dt {
	display: flex;
	align-items: center;
	gap: 0.5em;
}

.block-search-goods--from-dt+.block-search-goods--to-dt {
	margin-top: 1.0rem;
}

/* aireco（仮） */
.block-common-lightningrecommend--list {
	margin: 0 -2.0rem;
}

@media screen and (max-width: 767px) {
	.block-common-lightningrecommend--list {
		overflow-x: auto;
		overflow-y: auto;
	}

	.block-common-lightningrecommend--list .block-thumbnail-t {
		overflow: visible !important;
	}

	.block-common-lightningrecommend--list .swiper-buttons {
		display: none !important;
	}
}

.block-common-lightningrecommend--list .block-thumbnail-t--items::before,
.block-common-lightningrecommend--list .block-thumbnail-t--items::after {
	display: block;
	content: '';
	width: 1.0rem;
	min-width: 1.0rem;
	height: 1.0rem;
}

.block-common-lightningrecommend--list .block-thumbnail-t--items {
	display: flex;
	flex-wrap: nowrap;
	gap: 0;
}

.block-common-lightningrecommend--list .block-thumbnail-t .block-thumbnail-t--goods {
	width: 15.6rem;
	min-width: 15.6rem;
	margin: 0;
	padding: 0 0.5rem;
}

/* 商品コメント4（商品情報） */
.block-goods-comment4>dd dl+dl {
	margin-top: 2.0rem;
}

.block-goods-comment4>dd dl dt {
	margin: 0 0 1.0rem;
}

.block-goods-comment4>dd dl dd {
	padding-left: 0rem;
	color: #6E6E6E;
	font-size: 1.4rem;
}

/* 商品コメント6（よくあるご質問） */
.block-goods-comment6 {
	margin: 2.0rem 0 2.4rem;
}

.block-goods-comment6 h2 {
	display: block;
	position: relative;
	z-index: 0 !important;
	margin: 0 0 2.4rem;
	padding: 2.4rem 0 0;
	font-size: 1.8rem;
	font-weight: bold;
	content: 'よくあるご質問';
}

.block-goods-comment6 .faq_section {
	margin-top: 2px;
	color: #6E6E6E;
}

.block-goods-comment6 .faq_section .faq_question {
	position: relative;
	margin: 0;
	padding: 1.0rem 3.2rem 1.0rem 1.0rem;
	background: #F2F2F2;
	font-size: 1.4rem;
	cursor: pointer;
}

.block-goods-comment6 .faq_section .faq_answer {
	font-size: 1.4rem;
}

.block-goods-comment6 .faq_section>.faq_question::before,
.block-goods-comment6 .faq_section>.faq_question::after {
	display: block;
	content: '';
	width: 1.2rem;
	height: 2px;
	background: #6E6E6E;
	position: absolute;
	right: 1.0rem;
	top: calc(50% - 1px);
}

.block-goods-comment6 .faq_section>.faq_question::after {
	transform: rotate(90deg);
}

.block-goods-comment6 .faq_section>.faq_question.active::after {
	display: none;
}

.block-goods-comment6 .faq_section .faq_answer {
	padding: 1.0rem 1.0rem 2.0rem;
}

/* ↓ 後日削除分 ↓ */
.block-goods-comment6 .faq_dl {
	margin-top: 2px;
	color: #6E6E6E;
}

.block-goods-comment6 .faq_dl>dt {
	position: relative;
	margin: 0;
	padding: 1.0rem 3.2rem 1.0rem 1.0rem;
	background: #F2F2F2;
	font-size: 1.4rem;
	cursor: pointer;
}

.block-goods-comment6 .faq_dl dd {
	font-size: 1.4rem;
}

.block-goods-comment6 .faq_dl>dt::before,
.block-goods-comment6 .faq_dl>dt::after {
	display: block;
	content: '';
	width: 1.2rem;
	height: 2px;
	background: #6E6E6E;
	position: absolute;
	right: 1.0rem;
	top: calc(50% - 1px);
}

.block-goods-comment6 .faq_dl>dt::after {
	transform: rotate(90deg);
}

.block-goods-comment6 .faq_dl>dt.active::after {
	display: none;
}

.block-goods-comment6 .faq_dl>dd {
	padding: 1.0rem 1.0rem 2.0rem;
}

/* ↑ 後日削除分 ↑ */
/* 商品詳細　revico*/
.revico-widget {
	font-family: var(--font-default) !important;
}

.revicoCommentSliderContents {
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
	width: min(calc(1280px + 40px), var(--fullWindowSize));
}

.page-goods .revicoCommentSliderContents {
	padding: 0;
	width: 100%;
}

.revicoCommentSliderContents .revico-itemslider-contents .revico-itemslider--wrap * {
	font-size: 1.4rem;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-row-wrapper:has(.revico-review-comment-row-no-review) {
	width: 100% !important;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row-no-review {
	min-height: 10em;
	padding-top: 3em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.revicoCommentSliderContents .revico-comment-header,
.revicoCommentSliderContents .revico-comment-footer,
.revicoCommentSliderContents .revico-review-comment-detail--star-date,
.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--action,
.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--product {
	display: none !important;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-comment-main {
	width: 100%;
	max-width: 100%;
}

.revicoCommentSliderContents .revico-itemslider-contents {
	margin: 0 -2.0rem;
	padding: 0 2.0rem;
	overflow: hidden;
	background-color: #ffffff;
}

.revicoCommentSliderContents .revico-itemslider-contents .revico-review-comment-row-wrapper {
	margin: 0;
}

.revicoCommentSliderContents .revico-itemslider-contents .revico-itemslider--wrap {}

.revicoCommentSliderContents .revico-itemslider-contents .revico-itemslider--wrap.swiper {
	overflow: visible;
}

.revicoCommentSliderContents .revico-itemslider-contents .revico-itemslider--wrap.swiper .revico-review-comment-detail {
	border-top: solid 1px #D6D6D6;
	padding: 3.0rem 0;
	background: #ffffff;
	font-size: inherit;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer {
	margin: 0 0 1.0rem;
	display: flex;
	align-items: center;
	gap: 2.0rem;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-reviewer-image {
	width: 6.0rem;
	min-width: 6.0rem;
	height: 6.0rem;
	border-radius: 100%;
	overflow: hidden;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-reviewer-profile--name {
	font-size: 1.6rem;
	font-weight: bold;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer-profile--attribute {
	display: flex;
	flex-flow: wrap;
	gap: 0 1.2em;
	color: #757575;
	font-size: 1.2rem;
	line-height: 1.3;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer-profile--attribute * {
	font-size: 1.2rem !important;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer-profile--attribute:has(li) {
	margin: -0.25rem 0 0.25rem;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-label {}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-label::after {
	display: inline-block;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.4;
	margin: 0;
	padding: 0.2rem 1.5rem 0.3rem;
	border-radius: 1.5em;
	white-space: nowrap;
	min-width: 5em;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-label[data-reviewer-label=購入確認済み]::after {
	content: "購入確認済み";
	background-color: #E2E2E2;
	border: solid 1px #E2E2E2;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-label[data-reviewer-label=スタッフ]::after {
	content: "スタッフ";
	background-color: #ffffff;
	border: solid 1px var(--color-red);
	color: var(--color-red);
}

.revicoCommentSliderContents .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-label[data-reviewer-label=オーサー]::after {
	content: "オーサー";
	background-color: #E2E2E2;
	border: solid 1px #E2E2E2;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--star {
	margin: 0 0 2.0rem;
	justify-content: flex-start;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--star .revico-review-comment-detail--star-rate {
	transform: scale(1);
}

.revicoCommentSliderContents .revico-multicomment-top .revico-starability-result {
	width: 12.4rem;
	height: 2.0rem;
	background-size: auto 100%;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--star-rate-text,
.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--star-rate-text span {
	font-size: 1.6rem;
	font-weight: bold;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--star-rate-text::after {
	content: '.0';
	font-size: 1.6rem;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--title .revico-review-comment-detail--title-review-title {
	margin: 0 0 1.0rem;
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: bold;
}

.revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--comment {
	margin-top: 18px;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition {
	display: block !important;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) {
	display: block;
	width: auto !important;
	font-size: 1.4rem;
	font-weight: 500;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div.revico-review-comment-detail--addition-image {
	margin-top: 1.5rem;
	padding-left: 10px;
	padding-right: 10px;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div.revico-review-comment-detail--addition-image .revico-picture-slide-next {
	left: calc(100% - 14px);
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) * {
	margin: 0 !important;
	display: inline !important;
	font-size: inherit !important;
	font-weight: 500 !important;
	width: auto !important;
	color: inherit !important;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) .revico-review-comment-detail--addition-variation,
.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) .revico-review-comment-detail--addition-evaluationanswer {
	display: flex !important;
	gap: 0 1.2em;
	flex-flow: wrap;
	font-size: 1.2rem !important;
	color: #757575 !important;
	margin-top: 0.5rem !important;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) .revico-review-comment-detail--addition-variation+.revico-review-comment-detail--addition-evaluationanswer {
	margin-top: 0 !important;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) .revico-review-comment-detail--addition-variation *,
.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) .revico-review-comment-detail--addition-evaluationanswer * {
	font-size: 1.2rem !important;
	line-height: 1.4;
}

.revicoCommentSliderContents .revico-review-comment-detail--addition>div:not(.revico-review-comment-detail--addition-image) p a {
	text-decoration: underline !important;
}

@media screen and (max-width: 767px) {
	.revicoCommentSliderContents .swiper-buttons {
		display: none !important;
	}
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--staff-recommend .revico--slider-wrapper {
	display: none !important;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--staff-recommend--box {
	flex-flow: column;
	gap: 20px;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--staff-recommend--box .revico-review-comment-detail--staff-recommend--item {
	width: 100% !important;
	margin: 0 !important;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--staff-recommend--product-info {
	width: 20%;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-review-comment-detail--staff-recommend--staff-recommend-info {
	width: 80%;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-logo {
	font-size: 10px !important;
}

.revicoCommentSliderContents .revico-multicomment-top .revico-logo:before {
	margin-right: 70px !important;
}

.revico-multicomment-top .revico-review-comment-detail--staff-recommend--product-info--variation {
	display: none !important;
}

/* 3L以上はセット割バナー非表示（例外あり） */
#goodsdetail-pane-contents--body.st__large .set-ban {
	display: none !important;
}

.page-goods .stock_info {
	padding: 1.6rem 2rem;
	background: #f7f7f7;
	border: 2px solid #e60012;
	border-radius: 0.8rem;
	max-width: 500px;
}

.page-goods .stock_info>dt {
	color: #e60012;
	font-size: 1.8rem;
	font-weight: bold;
}

.page-goods .stock_info>dd {
	margin-top: 0.4rem;
}

.page-goods .stock_info>dd .marker {
	background: linear-gradient(transparent 60%, #ffff97 60%);
	font-weight: bold;
}

.block-eventlist li .column-list-ttl {
	position: relative;
	margin: 1rem 0 0;
	padding: 0;
	font-weight: bold;
	font-size: 1.4rem;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	overflow-wrap: break-word;
}

@media screen and (min-width: 768px) {
	.block-eventlist li .column-list-ttl {
		font-size: 1.6rem;
	}
}

.block-eventlist li .column-list-text {
	position: relative;
	margin: 0.5rem 0 0;
	padding: 0;
	font-weight: normal;
	font-size: 1.2rem;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	overflow-wrap: break-word;
}

@media screen and (min-width: 768px) {
	.block-eventlist li .column-list-text {
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 767px) {
	.revico_tab_content_description .revico-multicomment-top .revico-comment-main {
		max-width: 100%;
	}
}

#revico-review-zone {
	padding: 4.2rem 0 0;
}

#revico-review-zone::before {
	background-color: #F9F8F6;
}

#revico-review-zone>* {
	margin: 0 auto;
	width: calc(100dvw - 4.0rem);
}

@media screen and (min-width: 768px) {
	#revico-review-zone>* {
		padding: 0 20px;
		width: min(calc(1280px + 40px), var(--fullWindowSize));
		margin: 0 auto;
	}
}

#revico-review-zone .revico-star .revico-star-graph {
	background-color: #F9F8F6 !important;
}

#revico-review-zone .revico_reviewtabs {
	background-color: #F9F8F6 !important;
}

#revico-review-zone .revico_reviewtabs .revico_tab_content {
	background-color: #F9F8F6 !important;
}

#revico-review-zone .revico-common-background-style {
	background-color: #F9F8F6;
}

@media screen and (min-width: 768px) {

	#revico-review-zone:has(.revico-star-graph[data-review-count="0"]) .revico_reviewtabs,
	#revico-review-zone:has(.revico-star-graph[data-review-count="0"]) div.revico_reviewtabs {
		margin-top: 0;
	}
}

body.scroll-lock {
	overflow: hidden;
	touch-action: none;
}

body.scroll-lock .wrapper,
body.scroll-lock #header,
body.scroll-lock .block-product-scroll-link,
body.scroll-lock #goback-cartarea {
	scrollbar-gutter: stable;
	overflow: hidden;
}

@media screen and (min-width: 768px) {
	body.scroll-lock .mother-father-day-banner {
		right: 55px;
	}

	@-moz-document url-prefix() {
		body.scroll-lock .mother-father-day-banner {
			right: 40px;
		}
	}
}

.block-product-scroll-link {
	display: flex;
	justify-content: center;
	margin-top: calc(17 / 596 * 100 * 1vw);
	transition: all 0.5s;
}

.block-product-scroll-link.is-fixed {
	position: fixed;
	left: 0;
	right: 0;
	width: 100% !important;
	z-index: 100;
	background-color: rgba(237, 237, 237, .95);
	padding: calc(14 / 596 * 100 * 1vw) 0 calc(14 / 596 * 100 * 1vw);
	margin-top: 0;
}

.block-product-scroll-link ul {
	display: flex;
	justify-content: center;
	gap: 1px;
}

.block-product-scroll-link li {
	position: relative;
	width: calc(115 / 596 * 100 * 1vw);
	height: calc(60 / 596 * 100 * 1vw);
}

.block-product-scroll-link .link-scroll-group1 {
	order: 1;
}

.block-product-scroll-link .link-scroll-block1 {
	order: 2;
}

.block-product-scroll-link .link-scroll-feature {
	order: 3;
}

.block-product-scroll-link .link-scroll-comment6 {
	order: 4;
}

.block-product-scroll-link .link-scroll-review {
	order: 5;
}

.block-product-scroll-link li+li::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 1px;
	height: 100%;
	background-color: #e50114;
}

.block-product-scroll-link li a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	height: 100%;
	padding: calc(4 / 596 * 100 * 1vw) 0 calc(9 / 596 * 100 * 1vw);
	color: #e50113;
	font-weight: 500;
	text-align: center;
}

.block-product-scroll-link li a::after {
	content: '';
	width: calc(12 / 596 * 100 * 1vw);
	height: calc(7 / 596 * 100 * 1vw);
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url('../../img/usr/icon_arrow_red_24x14.png');
}

.block-product-scroll-link li a span {
	display: flex;
	align-items: center;
	line-height: calc(16 / 14);
	min-height: calc(32 / 596 * 100 * 1vw);
	font-size: calc(14 / 596 * 100 * 1vw);
}

@media screen and (min-width: 768px) {
	.block-product-scroll-link {
		margin-top: 45px;
	}

	.block-product-scroll-link.is-fixed {
		padding: 14px 0 14px;
		margin-top: 0;
	}

	.block-product-scroll-link ul {
		width: 97.6%;
		max-width: 976px;
		transition: all .3s;
	}

	.block-product-scroll-link.is-fixed ul {
		width: 95.83%;
		max-width: 1035px;
	}

	.block-product-scroll-link li {
		width: 20%;
		height: 58px;
	}

	.block-product-scroll-link li:first-of-type {
		border-left: 1px solid #e50114;
	}

	.block-product-scroll-link li:last-of-type {
		border-right: 1px solid #e50114;
	}

	.block-product-scroll-link.is-fixed li {
		height: 32px;
	}

	.block-product-scroll-link li a {
		justify-content: center;
		gap: 11px;
		padding: 0;
	}

	.block-product-scroll-link.is-fixed li a {
		flex-direction: row;
	}

	.block-product-scroll-link li a::after {
		width: 12px;
		height: 7px;
	}

	.block-product-scroll-link li a span {
		font-size: 13px;
		min-height: auto;
	}
}

.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--star .revico-review-comment-detail--star-date {
	font-size: 12px;
}

.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition .revico-review-comment-detail--addition-variation li,
.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition .revico-review-comment-detail--addition-evaluationanswer li {
	font-size: 12px;
}

.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-reviewer-profile .revico-review-comment-detail--addition-reviewer-profile--attribute li {
	font-size: 12px;
}

.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--comment--content {
	font-size: 14px;
}

.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--reply-comment--title {
	font-size: 14px;
}

.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--reply-comment--date {
	font-size: 12px;
}

.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--action-helpful,
.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--action-like {
	font-size: 14px;
}

@media screen and (max-width: 768px) {

	.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--action-helpful,
	.revico_tab_content .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--action-like {
		font-size: 10px;
	}
}

.block-goods-list-sub {
	gap: 1px;
}

.block-goods-list-sub li.block-goods-list-sub-line {
	position: relative;
}

.block-goods-list-sub li.block-goods-list-sub-line::after {
	content: '';
	position: absolute;
	background-color: #e8e8e8;
}

.block-goods-list-sub a {
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
}

.block-goods-list-sub-image img {
	width: auto;
}

.block-goods-list-sub-name {
	display: flex;
	align-items: center;
	font-weight: bold;
	text-align: center;
	color: #000;
}

@media screen and (max-width: 767px) {
	.block-goods-list-sub {
		margin-left: -2rem;
		margin-right: -2rem;
		margin-bottom: 6rem;
		border-top: 1px solid #e8e8e8;
	}

	.block-goods-list-sub li.block-goods-list-sub-line {
		width: calc(50% - 1px);
	}

	.block-goods-list-sub li.block-goods-list-sub-line::after {
		bottom: -1px;
		left: 0;
		width: 100%;
		height: 1px;
	}

	.block-goods-list-sub li.block-goods-list-sub-line:nth-of-type(odd):before {
		content: '';
		position: absolute;
		top: 0;
		right: -1px;
		width: 1px;
		height: 100%;
		background-color: #e8e8e8;
	}

	.block-goods-list-sub a {
		padding: 1.2rem;
	}

	.block-goods-list-sub-image img {
		max-height: 14.1rem;
	}

	.block-goods-list-sub-name {
		min-height: 4.3rem;
		font-size: 1.5rem;
		line-height: calc(43 / 30);
	}
}

@media screen and (min-width: 768px) {
	.block-goods-list-sub {
		gap: 1rem 1px;
	}

	.block-goods-list-sub li.block-goods-list-sub-line {
		width: calc((100% - 1px * 5) / 6);
	}

	.block-goods-list-sub li.block-goods-list-sub-line::after {
		top: 0;
		right: -1px;
		width: 1px;
		height: 100%;
	}

	.block-goods-list-sub li.block-goods-list-sub-line:nth-of-type(6n):after {
		content: none;
	}

	.block-goods-list-sub a {
		padding: 0 1.2rem 1.2rem;
	}

	.block-goods-list-sub-image img {
		max-height: 16.4rem;
	}

	.block-goods-list-sub-name {
		min-height: 5rem;
		margin-top: .4rem;
		font-size: 1.8rem;
		letter-spacing: .04em;
	}
}

/* 商品詳細　コメント7　身長別着用イメージ */
.block-goods-detail .block-goods-comment7 .wearByHeight--row+.wearByHeight--row {
	margin-top: 2.2rem;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--title {
	font-size: 1.4rem;
	font-weight: bold;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--main {
	margin-top: .9rem;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--slide {
	/* width: calc(100% + 2rem); */
	overflow: hidden;
	position: relative;
	padding-bottom: 1rem;
	cursor: pointer;
	z-index: 10;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--swipe {
	position: relative;
	z-index: 10;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--swipe::before {
	display: block;
	content: "";
	width: 17.5rem;
	aspect-ratio: 1/1;
	background: url(../../img/usr/common/swipeAnimation_layer.png) no-repeat center / contain;
	border-radius: 1rem;
	position: absolute;
	top: 3rem;
	left: 50%;
	transform: translate(-50%, 0);
	overflow: hidden;
	z-index: 10;
	pointer-events: none;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--swipe::after {
	display: block;
	content: "";
	width: 4.2rem;
	aspect-ratio: 35 / 41;
	background: url(../../img/usr/common/swipeAnimation_icon.png) no-repeat center / contain;
	position: absolute;
	top: 13.2rem;
	left: calc(50% - 1.75rem);
	z-index: 20;
	animation: touchAnimation 2s ease-out infinite;
	pointer-events: none;
}

@keyframes touchAnimation {
	0% {
		translate: 2rem 0;
		opacity: 0;
	}

	20% {
		translate: 2rem 0;
		opacity: 1;
	}

	80% {
		translate: -2rem 0;
		opacity: 1;
	}

	100% {
		translate: -2rem 0;
		opacity: 0;
	}
}

.block-goods-detail .block-goods-comment7 .wearByHeight--img {
	aspect-ratio: 41/60;
	border-radius: 1rem 1rem 0 0;
	overflow: hidden;
	position: relative;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--img-front,
.block-goods-detail .block-goods-comment7 .wearByHeight--img-back {
	width: 100%;
	height: 100%;
	transition: .3s;
	opacity: 1;
	visibility: visible;
	position: absolute;
	top: 0;
	left: 0;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--img-front:not(.-is-active),
.block-goods-detail .block-goods-comment7 .wearByHeight--img-back:not(.-is-active) {
	opacity: 0;
	visibility: hidden;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--img-front img,
.block-goods-detail .block-goods-comment7 .wearByHeight--img-back img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center center;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--content {
	width: 100%;
	padding: .6rem .8rem 1rem;
	background-color: #f9f8f6;
	border-radius: 0 0 1rem 1rem;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--toggle {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	margin-bottom: .3rem;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--toggle button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50%;
	height: 2rem;
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
	border: none;
	cursor: pointer;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--toggle-front {
	border-radius: .4rem 0 0 .4rem;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--toggle-back {
	border-radius: 0 .4rem .4rem 0;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--toggle button:not(.-is-active) {
	background: #bdbebd;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--toggle button.-is-active {
	background: #4c4c4c;
	position: relative;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--toggle button.-is-active::before {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-bottom: .5rem solid #4c4c4c;
	border-left: .5rem solid transparent;
	border-right: .5rem solid transparent;
	position: absolute;
	top: -.4rem;
	left: calc(50% - .25rem);
}

.block-goods-detail .block-goods-comment7 .wearByHeight--itemtext {
	font-size: 1.3rem;
	font-weight: bold;
	text-align: center;
	padding: .4rem 0;
}

.block-goods-detail .block-goods-comment7 .wearByHeight--itemtext+.wearByHeight--itemtext {
	border-top: 1px solid #cccccc;
}

.block-goods-detail .block-goods-comment7 .wearByHeight .swiper-scrollbar {
	background: transparent;
}

.block-goods-detail .block-goods-comment7 .wearByHeight .swiper-scrollbar-drag {
	background: #9e9e9d;
}

@media screen and (min-width: 768px) {
	.goodsdetail-accordion-section>dd:has(.wearByHeight) {
		padding: 3.7rem 0 2rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--row+.wearByHeight--row {
		margin-top: 3.3rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--title {
		padding: 0 2rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--main {
		margin-top: 1.3rem;
		padding-left: 1rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--slide {
		width: 100%;
		padding-bottom: 2rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--slide::before {}

	.block-goods-detail .block-goods-comment7 .wearByHeight--slide::after {}

	.block-goods-detail .block-goods-comment7 .wearByHeight--content {
		padding: 1rem .9rem 1rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--toggle {
		margin-bottom: 1.2rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--toggle button {
		height: 2.6rem;
		font-size: 1.5rem;
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--toggle button.-is-active::before {
		border-bottom: 1rem solid #4c4c4c;
		border-left: 1rem solid transparent;
		border-right: 1rem solid transparent;
		top: -.6rem;
		left: calc(50% - .8rem);
	}

	.block-goods-detail .block-goods-comment7 .wearByHeight--itemtext {
		font-size: 1.5rem;
		padding: .4rem 0;
	}
}

/* ReviCo */
.block-thumbnail-t .revico-star-zone {
	display: block;
}

/* 商品コメント9 サイズballoon */
.block-variation--sizechart {
	position: relative;
	z-index: 1;
}

.block-variation.block-size {
	position: relative;
}

.size-balloon-btn {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	margin-left: 0.5rem;
	cursor: pointer;
	padding: 0;
	border: none;
	background: none;
	translate: 0 .4rem;
}

.size-balloon {
	display: block;
	width: 26rem;
	padding: 1rem 3rem 1rem 1rem;
	background-color: rgba(0, 0, 0, .65);
	color: #fff;
	border-radius: .8rem;
	box-shadow: 0 0 .4rem rgba(0, 0, 0, .5);
	position: absolute;
	top: 1.2rem;
	left: 9rem;
	z-index: 10;
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease;
	translate: 0 -50%;
}

.size-balloon.-is-show {
	opacity: 1;
	visibility: visible;
}

.size-balloon::before {
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-top: .5rem solid transparent;
	border-bottom: .5rem solid transparent;
	border-right: 1rem solid rgba(0, 0, 0, .65);
	position: absolute;
	top: 50%;
	left: -1rem;
	translate: 0 -50%;
}

.size-balloon-content {
	height: 0;
	overflow: hidden;
	font-size: 1rem;
}

.size-balloon .size-balloon-content {
	height: auto;
}

.size-balloon-close {
	display: block;
	width: 1.9rem;
	height: 1.9rem;
	border-radius: 50%;
	background: #6e6e6e;
	border: none;
	padding: 0;
	cursor: pointer;
	position: absolute;
	top: .5rem;
	right: .5rem;
}

.size-balloon-close::before,
.size-balloon-close::after {
	display: block;
	content: '';
	width: 1.4rem;
	height: 2px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
}

.size-balloon-close::before {
	rotate: 45deg;
}

.size-balloon-close::after {
	rotate: -45deg;
}

@media screen and (min-width: 768px) {

	.size-balloon-btn,
	.size-balloon-close {
		transition: opacity 0.3s;
	}

	.size-balloon-btn:hover,
	.size-balloon-close:hover {
		opacity: .7;
	}

	.size-balloon {
		width: 33rem;
		max-width: 30vw;
		top: 1.3rem;
		left: 10rem;
		translate: 0 -50%;
	}

	.size-balloon-content {
		font-size: 1.2rem;
	}
}

/* ジャンル　フリースペース下部　シーン別おすすめ商品 */
body.page-genre:has(.scene) #block_of_itemhistory .block-recent-item--header {
	padding-top: 0 !important;
}

body.page-genre:has(.scene) #block_of_itemhistory .block-recent-item--header::before {
	display: none;
}

.genre-freespace-bottom.scene {
	margin: 2.5rem 0;

	.scene-title {
		font-size: 1.8rem;
		font-weight: bold;
		margin: 2.5rem 0 1.6rem;
	}

	.scene-list {
		display: flex;
		flex-wrap: wrap;
		column-gap: 1rem;
		row-gap: 2.4rem;
	}

	.scene-list-i {
		display: flex;
		flex-direction: column;
		width: calc((100% - 1rem) / 2);
	}

	.scene-list a {
		display: flex;
		flex-direction: column;
		flex: 1;
		text-decoration: none;
	}

	.scene-list-i-img {
		aspect-ratio: 190 / 140;
	}

	.scene-list-i-img img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: contain;
		object-position: center center;
	}

	.scene-list-i-title {
		font-size: 1.4rem;
		line-height: 1.3;
		font-weight: bold;
		color: #000;
		margin-top: .7rem;
	}

	.scene-list-i-text {
		font-size: 1.2rem;
		line-height: 1.4;
		font-weight: 500;
		color: #333;
		margin-top: 1rem;
		margin-bottom: 1.7rem;
	}

	.scene-list-i-link {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 4rem;
		background-color: #000;
		color: #fff;
		font-size: 1rem;
		font-weight: bold;
		margin-top: auto;
	}

	@media screen and (max-width: 767px) {
		padding-bottom: 3rem;
		position: relative;

		&::after {
			display: block;
			content: "";
			width: 100vw;
			height: 1px;
			background-color: #e8e8e8;
			position: absolute;
			bottom: 0;
			left: -2rem;
		}
	}

	@media screen and (min-width: 768px) {
		margin: 5rem 0;
		padding-top: 5rem;
		position: relative;

		&::before {
			display: block;
			content: '';
			height: 1px;
			background: #e8e8e8;
			position: absolute;
			top: 0;
			left: calc((100% - var(--fullWindowSize)) / 2);
			right: calc((100% - var(--fullWindowSize)) / 2);
		}

		.scene-list {
			column-gap: 4rem;
			row-gap: 4rem;
		}

		.scene-list-i {
			width: calc((100% - 4rem * 3) / 4);
		}

		.scene-list-i-title {
			font-size: 1.6rem;
			margin-top: 1.6rem;
		}

		.scene-list-i-text {
			font-size: 1.4rem;
			margin-top: 1.4rem;
			margin-bottom: 2.4rem;
		}

		.scene-list-i-link {
			font-size: 1.6rem;
		}
	}
}