@charset "utf-8";

/* リセットCSS */
* {
	margin: 0;
	padding: 0;
	min-height: 0;
	min-width: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	height: 100%;
	scroll-behavior: smooth;
}

ul li,
ol li {
	list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: var(--fw-base);
	font-size: 100%;
	margin: 0;
}

p {
	margin: 0;
}

strong {
	font-weight: inherit;
}

a:focus,
*:focus {
	outline: none;
}

article,
header,
footer,
aside,
figure,
figcaption,
nav,
section,
main {
	display: block;
}

main {
	overflow: hidden !important;
}

body {
	font-family: var(--ff-base);
	font-weight: var(--fw-base);
	font-feature-settings: "palt" 1;
	letter-spacing: var(--ls-default);
	width: 100%;
	color: var(--txt-c-base);
	position: relative;
	z-index: 0;
	overflow-x: clip;
}

a {
	text-decoration: none;
	outline: none;
	word-wrap: break-word;
	color: var(--txt-c-base);
}

a img,
a {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

img {
	height: auto;
	max-width: 100%;
	box-sizing: unset;
	vertical-align: bottom;
}

iframe {
	vertical-align: bottom;
}

.formReset :where(button,
	input[type="button"],
	input[type="submit"],
	input[type="text"],
	input[type="image"],
	select) {
	background-color: unset;
	color: var(--txt-c-base);
	-webkit-appearance: none;
	border-radius: 0;
	border: none;
}

.formReset :where(input[type="text"],
	input[type="text"]::placeholder) {
	font-family: var(--ff-base);
}

.formReset :where(input[type="text"]) {
	color: var(--txt-c-base);
}

.formReset :where(input[type="text"]::placeholder) {
	color: var(--c-gray-300);
}

time {
	font-family: var(--ff-noto);
}

/* フォントCSS */
.ff-mincho {
	font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', '游明朝体', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', sans-serif;
}

/* imgリセット */
.imgauto {
	height: auto;
	width: 100%;
	box-sizing: unset;
	line-height: 1rem;
	display: block;
}

/* セクション間隔*/
.g-mgt {
	margin-top: var(--sec-spc);
}

.g-mgb {
	margin-bottom: var(--sec-spc);
}

.g-pd {
	padding-block: var(--sec-spc);
}

.g-pdt {
	padding-top: var(--sec-spc);
}

.g-pdb {
	padding-bottom: var(--sec-spc);
}

.g-mgt--half {
	margin-top: var(--sec-spc-half);
}

.g-mgb--half {
	margin-bottom: var(--sec-spc-half);
}

.g-pd--half {
	padding-block: var(--sec-spc-half);
}

.g-pdt--half {
	padding-top: var(--sec-spc-half);
}

.g-pdb--half {
	padding-bottom: var(--sec-spc-half);
}

.g-mgb--80 {
	margin-bottom: var(--spc-80);
}

/* グリッド */
.grid {
	display: grid;
	grid-template-columns: repeat(var(--grid-cols, 1), minmax(var(--grid-min-size, 0), 1fr));
	gap: var(--grid-gap, 0);
}

@media screen and (min-width: 768px) {
	.grid {
		--grid-cols: var(--grid-cols-pc, 1);
		--grid-gap: var(--grid-gap-pc, 0);
	}
}

@media screen and (max-width: 767px) {
	.grid {
		--grid-cols: var(--grid-cols-sp, 1);
		--grid-gap: var(--grid-gap-sp, 0);
	}
}

/* スライダー読み込みまで非表示 */
.slick {
	opacity: 0;
	transition: opacity .3s linear;
}

.slick.slick-initialized {
	opacity: 1;
}

.swiper {
	overflow: hidden;
	opacity: 0;
	transition: opacity .3s linear;
}

.swiper.swiper-initialized {
	opacity: 1;
}

/* 縦書き */
.tategaki {
	writing-mode: vertical-rl;
}

/* 文字間 */
::placeholder,
input[type="text"],
[class*="ttl"],
[class*="lead"],
[class*="heading"],
a {
	letter-spacing: var(--ls-default);
}

/* テキスト行間文字間 */
[class*="txt"] {
	letter-spacing: var(--ls-default);
}

/* スクロールバー消す */
.noscrollbar,
.noscrollbar {
	-ms-overflow-style: none;
	/* IE, Edge 対応 */
	scrollbar-width: none;
	/* Firefox 対応 */
}

.noscrollbar::-webkit-scrollbar,
.noscrollbar::-webkit-scrollbar {
	/* Chrome, Safari 対応 */
	display: none;
}

/* youtube */
.youtubeContainer iframe {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
}

/* 改行用 */
.dib {
	display: inline-block;
}

/* 非表示 */
.displaynone {
	display: none;
}

/* 親要素超えて幅100% */
.full-width {
	width: 100vw;
	--oya: calc(50% - 50vw);
	;
	margin-left: var(--oya);
	margin-right: var(--oya);
}

@media (hover: hover) {

	.formReset button:hover,
	.formReset input[type="button"]:hover,
	.formReset input[type="submit"]:hover,
	.formReset input[type="image"]:hover,
	.formReset select:hover {
		cursor: pointer;
	}

	a:hover {
		opacity: 0.7;
		text-decoration: none;
	}

	a:hover img {
		opacity: 0.75 !important;
	}
}

html.no-smooth-scroll {
	scroll-behavior: auto;
}

.g-inner,
.g-inner--l,
.g-inner--m,
.g-inner--s,
.g-inner--ss {
	width: var(--inner-w);
	margin-inline: auto;
}

@media screen and (min-width: 768px) {
	html {
		scroll-padding-top: 120px;
	}

	body {
		font-size: var(--fz-15-const);
		line-height: 1.7;
		-ms-text-size-adjust: 100%;
		-webkit-text-size-adjust: 100%;
	}

	a[href^="tel:"] {
		pointer-events: none;
	}

	.g-inner--pc {
		width: var(--inner-w);
		margin-inline: auto;
	}

	.g-inner,
	.g-inner--m,
	.g-inner--pc {
		max-width: var(--pc-maw-md);
	}

	.g-inner--l {
		max-width: var(--pc-maw-lg);
	}

	.g-inner--s {
		max-width: var(--pc-maw-sm);
	}

	.g-inner--ss {
		max-width: var(--pc-maw-ss);
	}

	.g-inner--pcHasSlickGap {
		--inner-adjust: calc(var(--slick-gap) * 2);
		width: calc(var(--inner-w) + var(--inner-adjust));
		max-width: calc(var(--pc-maw-md) + var(--inner-adjust));
		margin-inline: auto;
	}

	.g-pd--halfPcOnly {
		padding-block: var(--sec-spc-half);
	}

	.sp {
		display: none !important;
	}

	.tategaki--pc {
		writing-mode: vertical-rl;
	}

	/* pc順番付与 */
	.orderPc-1st {
		order: 1;
	}

	.orderPc-2nd {
		order: 2;
	}

	.orderPc-3rd {
		order: 3;
	}

	.orderPc-4th {
		order: 4;
	}

	.orderPc-5th {
		order: 5;
	}

	.orderPc-6th {
		order: 6;
	}

	.orderPc-7th {
		order: 7;
	}

	.orderPc-8th {
		order: 8;
	}

	.orderPc-9th {
		order: 9;
	}

	.orderPc-10th {
		order: 10;
	}

	.orderPc-11th {
		order: 11;
	}

	.orderPc-12th {
		order: 12;
	}

	.orderPc-13th {
		order: 13;
	}

	.orderPc-14th {
		order: 14;
	}

	.orderPc-15th {
		order: 15;
	}

	.orderPc-16th {
		order: 16;
	}

	.orderPc-17th {
		order: 17;
	}

	.orderPc-18th {
		order: 18;
	}

	.orderPc-19th {
		order: 19;
	}

	.orderPc-20th {
		order: 20;
	}

	.orderPc-21th {
		order: 21;
	}

	.orderPc-22th {
		order: 22;
	}

	.orderPc-23th {
		order: 23;
	}

	.orderPc-24th {
		order: 24;
	}

	.orderPc-25th {
		order: 25;
	}

	.orderPc-26th {
		order: 26;
	}

	.orderPc-27th {
		order: 27;
	}

	.orderPc-28th {
		order: 28;
	}

	.orderPc-29th {
		order: 29;
	}

	.orderPc-30th {
		order: 30;
	}

	.orderPc-31th {
		order: 31;
	}

	.orderPc-32th {
		order: 32;
	}

	.orderPc-33th {
		order: 33;
	}

	.orderPc-34th {
		order: 34;
	}

	.orderPc-35th {
		order: 35;
	}

	.orderPc-36th {
		order: 36;
	}

	.orderPc-37th {
		order: 37;
	}

	.orderPc-38th {
		order: 38;
	}

	.orderPc-39th {
		order: 39;
	}

	.orderPc-40th {
		order: 40;
	}
}

@media screen and (max-width: 767px) {
	html {
		scroll-padding-top: 50px;
	}

	body {
		font-size: var(--fz-14-const);
		line-height: 1.6;
	}

	.g-inner--sp {
		width: var(--inner-w);
		margin-inline: auto;
	}

	.g-pd--halfPcOnly {
		padding-block: var(--sec-spc);
	}

	.pc {
		display: none !important;
	}

	.sp-scroll--y {
		overflow-y: scroll;
		overflow-x: auto;
	}

	.sp-scroll--x {
		overflow-x: scroll;
		overflow-y: auto;
		padding-inline: calc((100% - var(--inner-w)) / 2);
	}

	.tategaki--sp {
		writing-mode: vertical-rl;
	}

	.formReset input[type="text"],
	.formReset input[type="text"]::placeholder {
		font-size: 16px;
	}
}

/* ■■■■■■■■■■■■■■■■■■■■■■header■■■■■■■■■■■■■■■■■■■■■■ */
header {
	background-color: var(--c-black);
}

/* ハンバーガー */
.hamburger {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	position: fixed;
	right: 1.6%;
	width: 60px;
	height: 60px;
	padding: 10px 10px;
	z-index: 1100;
	box-sizing: border-box;
	touch-action: manipulation;
	--hamburger-line-color: var(--c-white);
	--hamburger-line-ps: 9px;
}

.hamburger--menu {
	top: 10px;
	background-color: #0d0d0d47;
	border-radius: 50%;
}

.hamburger--search {
	top: 80px;
}

/* .hamburger:after{
  content: "";
  position: absolute;
  bottom: 0;
  white-space: nowrap;
  left: 50%;
  transform: translateX(-50%);
  font-size: 10px;
  min-width: 65px;
  text-align: center;
}
.hamburger.active:after{
  content: var(--this-label-active);
		color: var(--c-white);
} */
.hamburger__icon {
	position: relative;
}

.hamburger__icon,
.hamburger__icon:before,
.hamburger__icon:after {
	display: block;
	width: 22px;
	height: 2px;
	background-color: var(--hamburger-line-color);
	transition-property: background-color, transform;
	transition-duration: 0.4s;
}

.hamburger .hamburger__icon:before {
	width: 100% !important;
}

.hamburger .hamburger__icon:after {
	width: 100% !important;
}

.hamburger__icon:before,
.hamburger__icon:after {
	position: absolute;
	content: "";
}

.hamburger__icon:before {
	top: calc(0px - var(--hamburger-line-ps));
}

.hamburger__icon:after {
	top: var(--hamburger-line-ps);
}

.hamburger.active .hamburger__icon {
	background-color: transparent;
}

.hamburger.active .hamburger__icon:before,
.hamburger.active .hamburger__icon:after {
	background-color: var(--hamburger-line-color);
}

.hamburger.active .hamburger__icon:before {
	transform: translateY(var(--hamburger-line-ps)) rotate(45deg);
	background-color: var(--hamburger-line-color);
}

.hamburger.active .hamburger__icon:after {
	transform: translateY(calc(0px - var(--hamburger-line-ps))) rotate(-45deg);
	background-color: var(--hamburger-line-color);
}

body.no-scroll {
	overflow: hidden;
}


.fat-nav {
	top: 0;
	left: 0;
	z-index: 999;
	position: fixed;
	display: none;
	width: 100%;
	height: 100%;
	background: #434343;
	color: var(--c-white);
	transform: scale(1);
	transition-property: transform;
	transition-duration: 0.4s;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
}

.fat-nav.active {
	transform: scale(1);
}

.fat-nav__wrapper {
	width: 92%;
	margin: 0 auto;
	height: 100% !important;
	transform: unset !important;
	padding: 0 0% 50px;
	max-width: 1100px;
	box-sizing: border-box;
}

/* ------------------ハンバーガー中身------------------ */
#headerarea {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background-color: var(--c-black);
	z-index: 900;
}

.fat-nav__wrapper .g-hotKeyword a {
	color: var(--c-white);
}

.fat-nav__wrapper .g-history {
	margin-bottom: var(--spc-20);
	padding-top: var(--spc-40);
	position: relative;
}

.fat-nav__wrapper .g-history::after {
	content: "";
	position: absolute;
	width: 300px;
	height: 1px;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-image: linear-gradient(to right, #A7A7A7 3px, transparent 3px);
	background-size: 6px 1px;
	background-repeat: repeat-x;
	background-position: left top;
}

.fat-nav__wrapper .g-btnContainer {
	padding-bottom: var(--spc-40);
	margin-bottom: var(--spc-30);
	position: relative;
}

.fat-nav__wrapper .g-btnContainer::after {
	content: "";
	position: absolute;
	width: 300px;
	height: 1px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background-image: linear-gradient(to right, #A7A7A7 3px, transparent 3px);
	background-size: 6px 1px;
	background-repeat: repeat-x;
	background-position: left bottom;
}

.fat-nav__wrapper .g-history .flywheel-recommend__frame[data-frame-id="history"] {
	width: 100vw;
	margin-inline: calc(50% - 50vw);
}

.fat-nav__wrapper .g-history .fr3-productListStatic {
	padding-left: 4% !important;
}

.hamburger__linkList {
	--grid-cols-sp: 2;
	--grid-gap-sp: 8px;
	max-width: 300px;
	margin-inline: auto;
	margin-bottom: var(--spc-40);
	padding-top: var(--spc-40);
}

.hamburger__linkList li a {
	color: var(--c-white);
	font-size: 13px;
}

.fat-nav__wrapper .ft-sns {
	justify-content: center;
	padding-block: var(--spc-40);
	position: relative;
}

.fat-nav__wrapper .ft-sns::after {
	content: "";
	position: absolute;
	width: 300px;
	height: 1px;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-image: linear-gradient(to right, #A7A7A7 3px, transparent 3px);
	background-size: 6px 1px;
	background-repeat: repeat-x;
	background-position: left top;
}

.fat-nav__wrapper .g-searchForm-hot .g-mgb--80 {
	margin-bottom: var(--spc-40);
}

.sd-menuContainer {
	width: 100vw;
	margin-inline: calc(50% - 50vw);
}

.sd-heading--nextToggle {
	position: relative;
	padding-right: 30px;
	margin-top: 15px;
}

.sd-heading--nextToggle__trigger {
	display: inline-block;
	aspect-ratio: 1/1;
	width: 30px;
	position: absolute;
	top: 47%;
	transform: translateY(-50%);
	right: 8%;
	background-color: var(--c-orange);
	border-radius: 50%;
}

.sd-heading--nextToggle__trigger::before,
.sd-heading--nextToggle__trigger::after {
	content: "";
	display: inline-block;
	background: var(--c-white);
	width: 50%;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: .3s;
}

.sd-heading--nextToggle__trigger::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.sd-heading--nextToggle.is-open .sd-heading--nextToggle__trigger::after {
	transform: translate(-50%, -50%) rotate(180deg);
}

.sd-heading--nextToggle+.sd-menu {
	display: none;
}

.sd-menu li:not(:last-child) {
	border-bottom: 1px dashed var(--c-gray-300);
}

.sd-menu li {
	margin-inline: 8.5%;
}

.sd-menu li a {
	color: var(--c-white);
}

.sd-menuContainer+.sd-menuContainer {
	position: relative;
}

.sd-menuContainer+.sd-menuContainer::before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: var(--c-gray-200);
}

.sd-menuContainer .sd-heading--nextToggle {
	margin: 0;
	padding: 18px 8.5%;
	font-size: 16px;
	position: relative;
	padding-right: 56px;
}

/* .sd-menuContainer .sd-heading--nextToggle.is-open .sd-heading--nextToggle__trigger::after{
	  opacity: 0;
  transform: translate(-50%, -50%) rotate(90deg);
} */

/* 右の + / -（丸背景なしにする） */
/* .sd-menuContainer .sd-heading--nextToggle__trigger{
  background: transparent;
  border-radius: 0;
  width: 32px;
  height: 32px;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
} */

/* .sd-menuContainer .sd-heading--nextToggle__trigger::before,
.sd-menuContainer .sd-heading--nextToggle__trigger::after{
  width: 18px;
  height: 2px;
  background: #fff;
}

.sd-menuContainer .sd-heading--nextToggle.is-open .sd-heading--nextToggle__trigger::after{
  opacity: 0;
  transform: translate(-50%, -50%) rotate(90deg);
} */

.sd-menuContainer .sd-menu--lv1 {
	background: var(--c-gray-200);
	padding: 0;
	margin: 0;
}

.sd-menuContainer .sd-menu--lv1>li {
	list-style: none;
}

.sd-menuContainer .sd-menu--lv1>li>a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 10px 16px 0;
	color: var(--c-black);
	text-decoration: none;
	font-size: 14px;
}

.sd-menuContainer .sd-menu--lv1>li>a::after {
	content: "";
	width: 7px;
	height: 7px;
	border-top: 1.5px solid var(--c-black);
	border-right: 1.5px solid var(--c-black);
	transform: rotate(45deg);
	flex: 0 0 auto;
	margin-left: 12px;
}

.fat-nav__wrapper .g-searchWorries__list {
	display: block;
}

.fat-nav__wrapper .g-searchWorries__list li a {
	background-color: unset;
	border-radius: unset;
	text-align: unset;
	font-size: 14px;
	color: var(--c-black);
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 10px 16px 0;
	text-decoration: none;
}

.fat-nav__wrapper .g-searchWorries__list li a::after {
	content: "";
	width: 7px;
	height: 7px;
	border-top: 1.5px solid var(--c-black);
	border-right: 1.5px solid var(--c-black);
	transform: rotate(45deg);
	flex: 0 0 auto;
	margin-left: 12px;
}

.sd-heading--nextToggle.is-open .sd-heading--nextToggle__trigger::after {
	opacity: 0;
}

@media (hover: hover) {

	.g-searchWorries__list li a:hover,
	.g-searchCategory__list li a:hover,
	.g-imgList a:hover {
		color: var(--c-black);
	}
}





/* ------------------ヘッダー追従------------------ */
@media screen and (min-width: 768px) {
	:root {
		--HEADER_HEIGHT: 160px;
		--HEADER_HEIGHT--EASY: 120px;
	}

	body {
		padding-top: var(--HEADER_HEIGHT);
	}

	body:has(.headerarea-easy) {
		padding-top: var(--HEADER_HEIGHT--EASY);
	}

	[hx-select="#headerarea"]{
		height: var(--HEADER_HEIGHT);
	}

	#headerarea {
		position: absolute;
		width: 100%;
		top: 0;
		left: 0;
	}

	body.scroll #headerarea {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100;
		background-color: #fffffff3;
		width: 100vw;
		margin-inline: calc(50% - 50vw);
		transform: translateY(-100%);
		animation: headerSlideDown 0.5s ease forwards;
	}

	body.scroll #headerarea.headerarea-easy {
		position: static;
	}
}

/* 追従上から出てくるアニメーション */
@keyframes headerSlideDown {
	to {
		transform: translateY(0);
	}
}

body.scroll .hd-container {
	width: var(--inner-w);
	height: 60px;
	margin-inline: auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

body.scroll .g-userMenuContainer,
body.scroll .hd-navContainer {
	display: contents;
}

body.scroll .hd-logo {
	display: none;
}

body.scroll .g-userMenu {
	position: static;
	top: unset;
	left: unset;
	order: 2;
	width: fit-content;
	margin-inline: auto 0;
}

body.scroll .g-nav__item-btnWrap {
	order: 3;
	width: fit-content;
	margin-left: var(--spc-50);
}

body.scroll .g-userMenu li a::before {
	background-color: var(--c-black);
}

body.scroll .hd-navContainer .g-nav li a,
body.scroll .hd-navContainer .g-nav li {
	color: var(--c-black);
	font-size: var(--fz-13);
}

body.scroll .hd-navContainer .g-nav>li {
	padding-inline: var(--spc-20);
}

body.scroll .hd-navContainer .g-nav>li:not(:last-child) {
	border-right: 0.5px solid var(--c-gray-200);
}

body.scroll .g-userMenu {
	gap: var(--spc-20);
}

.hd-navContainer .hd-nav__dropdownContainer a .sp {
	display: block !important;
}

.hd-navContainer .hd-nav__dropdownContainer a {
	font-family: var(--ff-base);
}

@media (hover: hover) {
	.g-nav li a:hover {
		color: var(--c-gold-600) !important;
		opacity: 1;
	}

	.g-nav li:hover .g-nav__item {
		color: var(--c-gold-600);
	}

	.g-nav .g-searchWorries__list li a:hover,
	.g-nav .g-searchCategory__list li a:hover {
		box-shadow: unset;
		color: var(--c-gold-600);
	}

	body.scroll .hd-navContainer .g-nav__item-btn a:hover {
		background-color: var(--c-gold-600);
		color: var(--c-white);
		opacity: 0.7;
	}
}

@media screen and (max-width: 890px) and (min-width: 768px) {
	body.scroll .hamburger--menu.sp {
		display: flex !important;
	}

	body.scroll #headerarea {
		display: none;
	}
}

/* カートボタン通常定期切り分け */
.g-userMenu>li.hd-user__cart[ontouchstart=""],
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] {
	padding-inline: 0;
	position: relative;
}

.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]>a {
	pointer-events: none;
}

.ft-spMenu>li[ontouchstart=""]:active .hd-nav__dropdownContainer {
	top: -90px;
	visibility: visible;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""] .hd-nav__dropdown,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .hd-nav__dropdown {
	padding: 15px 10px !important;
	min-width: unset !important;
	max-width: 90px !important;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""] .dropdown-col ul,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .dropdown-col ul {
	display: block;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""] .dropdown-col ul li,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .dropdown-col ul li {
	margin-bottom: 0;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""] li:first-child,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] li:first-child {
	margin-bottom: 10px;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""] li a,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] li a {
	font-size: 12px !important;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""]:hover .hd-nav__dropdown,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .hd-nav__dropdown {
	padding: 15px 10px !important;
	min-width: unset !important;
	max-width: 90px !important;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.g-userMenu .hd-nav__dropdown--category,
.ft-spMenu .hd-nav__dropdown--category {
	display: block;
	width: 100%;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""]:hover .dropdown-col ul,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .dropdown-col ul {
	display: block;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""]:hover .dropdown-col ul li,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .dropdown-col ul li {
	margin-bottom: 0;
}

.g-userMenu>li.hd-user__cart[ontouchstart=""]:hover li:first-child,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover li:first-child {
	margin-bottom: 10px;
}

.dropdown-col ul li .g-userMenu>li.hd-user__cart[ontouchstart=""]:hover li a,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover li a {
	font-size: 12px !important;
	display: flex;
}

.hd-nav__dropdown .fs-client-cart-count,
.hd-nav__dropdown .fs-client-subscriptionCart-count {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	top: unset !important;
	left: unset !important;
	right: unset !important;
	line-height: 1;
	padding-bottom: 1px;
}

@media screen and (min-width: 768px) {

	.g-userMenu>li.hd-user__cart[ontouchstart=""] .hd-nav__dropdownContainer,
	.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .hd-nav__dropdownContainer {
		width: 90px;
		height: 80px;
		right: 0;
	}

	.g-userMenu>li.hd-user__cart[ontouchstart=""]:hover .hd-nav__dropdownContainer,
	.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .hd-nav__dropdownContainer {
		width: 90px;
		height: 80px;
		right: 0;
	}
}

@media screen and (max-width: 767px) {

	.g-userMenu>li.hd-user__cart[ontouchstart=""] .hd-nav__dropdownContainer,
	.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .hd-nav__dropdownContainer {
		width: 90px;
		height: 60px;
		right: 0;
	}

	.g-userMenu>li.hd-user__cart[ontouchstart=""]:hover .hd-nav__dropdownContainer,
	.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .hd-nav__dropdownContainer {
		width: 90px;
		height: 60px;
		right: 0;
	}
}

/* 初期は非表示 */
.ft-spMenu__cart .hd-nav__dropdownContainer {
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: .3s ease;
}

/* チェックされたら表示 */
#cartToggle:checked+.ft-spMenu__item+.hd-nav__dropdownContainer {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	top: -100px;
}

.ft-spMenu__cart .hd-nav__dropdown--category .dropdown-col ul {
	grid-template-columns: 1fr;
}

.ft-spMenu__cart .hd-nav__dropdown {
	width: 95px;
	padding: 15px 10px;
}

@media (hover: hover) {
	.g-userMenu>li.hd-user__cart[ontouchstart=""] li a:hover {
		opacity: 1;
		color: var(--c-gold-600);
	}

	.g-userMenu>li.hd-user__cart[ontouchstart=""]:hover a::before {
		background-color: var(--c-gold-600);
	}
}


/* ■■■■■■■■■■■■■■■■■■■■■■side■■■■■■■■■■■■■■■■■■■■■■ */

/* ■■■■■■■■■■■■■■■■■■■■■■footer■■■■■■■■■■■■■■■■■■■■■■ */
#footerarea {
	background-color: var(--c-black);
}

/* ロゴ */
.ft-logo {
	max-width: 1300px;
	width: 92%;
	margin-inline: auto;
}

/* 検索バー */
.ft-searchForm .g-searchForm {
	margin-inline: auto;
}

@media screen and (min-width: 768px) {
	.ft-searchForm .formReset input[type="text"] {
		padding: 15px 50px 15px 25px !important;
	}

	.ft-searchForm .g-searchForm {
		margin-block: var(--spc-100);
	}

	.ft-searchForm .g-searchForm {
		max-width: 380px !important;
	}
}

@media screen and (max-width: 767px) {
	.ft-searchForm .formReset input[type="text"] {
		padding: 10px 30px 10px 20px !important;
	}

	.ft-searchForm .g-searchForm {
		margin-block: var(--spc-60);
	}

	.ft-searchForm>.g-searchForm {
		max-width: 280px;
		width: 90%;
	}
}

/* ナビゲーション */
.ft-nav {
	justify-content: center;
	padding-bottom: 25px;
	margin-bottom: 25px;
	border-bottom: 1px solid var(--c-white);
}

.ft-nav li a{
	font-size: var(--fz-14) !important;
}

@media screen and (max-width: 767px) {
	.ft-nav {
		flex-wrap: wrap;
		gap: 13px 0;
	}
}

/* コピーライト類 */
.ft-wrap {
	display: flex;
	justify-content: space-between;
}

.ft-copy {
	font-size: var(--fz-11);
	color: var(--c-white);
}

@media screen and (min-width: 768px) {
	.ft-wrap {
		padding-bottom: 70px;
	}
}

@media screen and (max-width: 767px) {
	.ft-wrap {
		flex-direction: column-reverse;
		align-items: center;
		gap: 25px;
		padding-bottom: 25px;
	}
}





.g-sns {
	display: flex;
}

.g-sns li a {
	display: block;
	content: "";
	display: inline-block;
	--this-mask: var(--this-icon) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--c-white);
	aspect-ratio: 1/1;
	width: 100%;
}

@media screen and (min-width: 768px) {
	.ft-sns {
		gap: var(--spc-30);
	}

	.ft-sns li {
		width: 28px;
	}
}

@media screen and (max-width: 767px) {
	.ft-sns {
		justify-content: flex-end;
		gap: 20px;
	}

	.ft-sns li {
		width: 33px;
	}
}


/* .g-userMenuContainer */
.g-userMenu {
	display: flex;
	height: 100%;
	align-items: center;
}

.g-userMenu li {
	flex: 1;
	position: relative;
}

.g-userMenu li>span {
	height: 100%;
}

.g-userMenu li::after {
	content: "";
	display: inline-block;
	background: var(--bg-c-gray-op40);
	width: 1px;
	height: calc(100% - 20px);
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.g-userMenu__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	gap: 2px;
}

.g-userMenu__item::before {
	content: '';
	--this-mask: var(--this-icon) no-repeat center center / var(--this-size, 100%);
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--c-white);
	aspect-ratio: 1/1;
	display: block;
}

.g-userMenu__item.active::before {
	--this-mask: var(--this-icon-active);
}

.g-userMenu__item::after {
	display: block;
	text-align: center;
	content: attr(aria-label);
	font-family: var(--ff-en);
	font-size: 10px;
	color: var(--c-white);
	letter-spacing: 0.05em;
}

.g-userMenu__item.hamburger--search.active::after {
	content: '閉じる';
}

.g-userMenu__item.active::after {
	content: var(--this-label-active);
}

.g-userMenu__item .fs-client-cart-count {
	top: -11px;
	right: -10px;
}

@media (hover: hover) {
	.g-userMenu__item:hover {
		opacity: 1;
	}

	.g-userMenu__item:hover::before {
		background-color: var(--c-gold-600) !important;
	}

	.hd-navContainer .g-nav__item-btn a:hover {
		opacity: 0.7;
	}
}

@media screen and (min-width: 768px) {
	.g-userMenu__item::after {
		display: none;
	}

	.g-userMenu__item {
		height: fit-content;
	}

	.g-userMenu__item::before {
		width: 15px;
	}

	.g-userMenu {
		height: fit-content;
		gap: 20px;
	}

	.g-userMenuContainer {
		display: flex;
		justify-content: center;
		position: relative;
		padding-top: 30px;
		margin-bottom: 20px;
		height: 90px;
	}

	.g-userMenu {
		position: absolute;
		top: 30px;
		right: 0;
	}

	.g-userMenu .g-searchForm {
		display: none;
	}

	.g-userMenu li.is-active {
		position: relative;
	}

	.g-userMenu li.is-active .g-searchForm {
		display: block;
		position: absolute;
		bottom: -60px;
		left: -20px;
		width: 160px;
		border-radius: 0;
		background-color: var(--c-white);
	}

	.g-userMenu li.is-active .g-searchForm.formReset input[type="text"] {
		padding: 10px 30px 10px 10px;
		border-radius: 0;
		border: 1px solid var(--c-black);
	}

	.g-userMenu li.is-active .g-searchForm.formReset input[type="text"]::placeholder {
		font-size: var(--fz-12);
	}

	.g-userMenu li.is-active .g-searchForm.formReset .g-searchSubmit {
		width: 18px;
		height: 18px;
		right: 10px;
	}

	.g-userMenu li:nth-child(2) .g-userMenu__item::before {
		height: 100%;
		width: 9px;
		aspect-ratio: 1/2;
	}
}

/* ------------------ヘッダーsp　スマホ------------------ */
@media screen and (max-width: 767px) {
	:root {
		--g-userMenu-height: 77.9px;
	}

	body {
		padding-top: var(--g-userMenu-height);
	}

		body:has(.headerarea-easy) {
		padding-top: calc(var(--g-userMenu-height) + 40px);
	}

	.fs-preview-header {
		margin-bottom: 0;
	}

	.hd-logo {
		max-width: 57px;
	}

	.g-userMenuContainer {
		padding-block: 15px;
	}

	.fat-nav__wrapper .g-userMenuContainer {
		background-color: var(--c-black);
		width: 100vw;
		margin-inline: calc(50% - 50vw);
		margin-bottom: var(--spc-30);
	}

	.fat-nav__wrapper .g-userMenuContainer>div {
		display: flex;
		padding-right: 60px;
		justify-content: space-between;
		align-items: center;
	}

	.g-userMenu__item::after {
		display: none;
	}

	.g-userMenu__item {
		height: fit-content;
	}

	.g-userMenu__item::before {
		width: 23px;
	}

	.g-userMenu,
	body.scroll .g-userMenu {
		gap: 20px;
		position: fixed;
		top: 27px;
		right: 80px;
		height: auto;
		width: 80px;
		z-index: 910;
	}

	body.scroll .g-userMenu li a::before {
		background-color: var(--c-white);
	}

	body.scroll .hd-logo {
		display: block;
	}

	body.scroll .hd-container {
		width: 100%;
		height: 100%;
		margin-inline: auto;
		display: block;
		justify-content: unset;
		align-items: unset;
	}
		body.scroll .headerarea-easy .hd-container{
					width: var(--inner-w);
	}

	body.scroll .g-userMenuContainer {
		display: block;
	}

	.g-userMenu .g-searchForm {
		display: none;
	}

	.g-userMenu li.is-active {
		position: relative;
	}

	.g-userMenu li.is-active .g-searchForm {
		display: block;
		position: absolute;
		bottom: -60px;
		left: -20px;
		width: 160px;
		border-radius: 0;
		background-color: var(--c-white);
	}

	.g-userMenu li.is-active .g-searchForm.formReset input[type="text"] {
		padding: 10px 30px 10px 10px;
		border-radius: 0;
		border: 1px solid var(--c-black);
	}

	.g-userMenu li.is-active .g-searchForm.formReset input[type="text"]::placeholder {
		font-size: var(--fz-12);
	}

	.g-userMenu li.is-active .g-searchForm.formReset .g-searchSubmit {
		width: 18px;
		height: 18px;
		right: 10px;
	}
}



/* ロゴ hd-logo */
@media screen and (min-width: 768px) {
	.hd-logo {
		max-width: 57px;
	}
}

@media screen and (max-width: 767px) {
	.hd-logo {
		max-width: 48px;
	}
}

/* ナビゲーション */
.hd-navContainer {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 20px;
	height: 50px;
}

.g-nav {
	display: flex;
}

.g-nav li a {
	transition: none !important;
}

.g-nav>li {
	padding-inline: 15px;
	line-height: 1;
}

.g-nav>li:not(:last-child) {
	border-right: 0.5px solid var(--c-gray-200);
}

.g-nav>li,
.g-nav>li>a,
.hd-navContainer .g-nav__item-btn a {
	color: var(--c-white);
	font-family: var(--ff-serif);
}

.g-nav__item-btnWrap .g-nav__item-btn a {
	display: block;
	background-color: var(--c-gold-600);
	padding: 3px 10px;
	border-radius: 20px;
	color: var(--c-white);
}

@media screen and (min-width: 768px) {

	.g-nav>li,
	.g-nav>li>a,
	.hd-navContainer .g-nav__item-btn a {
		font-size: var(--fz-12);
	}
}

@media screen and (max-width: 767px) {

	.g-nav>li,
	.g-nav>li>a,
	.hd-navContainer .g-nav__item-btn a {
		font-size: 12px;
	}
}

/*  ドロップダウン */
.g-nav {
	position: relative;
}

.hd-nav__dropdownContainer,
.ft-spMenu>li[ontouchstart=""]:hover .hd-nav__dropdownContainer {
	pointer-events: none;
	visibility: hidden;
	opacity: 0;
	z-index: 100;
	transition: .3s ease;
	position: absolute;
	padding-top: var(--spc-10);
	width: 350px;
}

.g-nav>li[ontouchstart=""]:hover .hd-nav__dropdownContainer,
.g-userMenu>li[ontouchstart=""]:hover .hd-nav__dropdownContainer,
.ft-spMenu>li[ontouchstart=""]:hover .hd-nav__dropdownContainer {
	pointer-events: auto;
	visibility: visible;
	opacity: 1;
	z-index: 99;
	width: 380px;
}

.hd-nav__dropdown {
	background-color: var(--c-white);
	opacity: 0.96;
	padding: var(--spc-30);
	border-radius: 8px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/* カートボタンドロップダウン */
.g-nav>li.hd-user__cart[ontouchstart=""],
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] {
	padding-inline: 0;
	position: relative;
}

.g-nav>li.hd-user__cart[ontouchstart=""]>a,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]>a {
	pointer-events: none;
}

.g-nav>li.hd-user__cart[ontouchstart=""] .hd-nav__dropdownContainer,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .hd-nav__dropdownContainer {
	width: 110px;
	height: 80px;
	right: 0;
}

.ft-spMenu>li[ontouchstart=""]:active .hd-nav__dropdownContainer {
	top: -90px;
	visibility: visible;
}

.g-nav>li.hd-user__cart[ontouchstart=""] .hd-nav__dropdown,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .hd-nav__dropdown {
	padding: 15px 10px !important;
	min-width: unset !important;
	max-width: 110px !important;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.g-nav>li.hd-user__cart[ontouchstart=""] .dropdown-col ul,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .dropdown-col ul {
	display: block;
}

.g-nav>li.hd-user__cart[ontouchstart=""] .dropdown-col ul li,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] .dropdown-col ul li {
	margin-bottom: 0;
}

.g-nav>li.hd-user__cart[ontouchstart=""] ul li:first-child,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] ul li:first-child {
	margin-bottom: 10px;
}

.g-nav>li.hd-user__cart[ontouchstart=""] ul li a,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""] ul li a {
	font-size: 12px !important;
	display: flex;
}


.g-nav>li.hd-user__cart[ontouchstart=""]:hover .hd-nav__dropdownContainer,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .hd-nav__dropdownContainer {
	width: 110px;
	height: 80px;
	right: 0;
}

.g-nav>li.hd-user__cart[ontouchstart=""]:hover .hd-nav__dropdown,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .hd-nav__dropdown {
	padding: 15px 10px !important;
	min-width: unset !important;
	max-width: 110px !important;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.g-nav .hd-nav__dropdown--category,
.ft-spMenu .hd-nav__dropdown--category {
	display: block;
	width: 100%;
}

.g-nav>li.hd-user__cart[ontouchstart=""]:hover .dropdown-col ul,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .dropdown-col ul {
	display: block;
}

.g-nav>li.hd-user__cart[ontouchstart=""]:hover .dropdown-col ul li,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover .dropdown-col ul li {
	margin-bottom: 0;
}

.g-nav>li.hd-user__cart[ontouchstart=""]:hover li:first-child,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover li:first-child {
	margin-bottom: 10px;
}

.dropdown-col ul li .g-nav>li.hd-user__cart[ontouchstart=""]:hover li a,
.ft-spMenu>li.ft-spMenu__cart[ontouchstart=""]:hover li a {
	font-size: 12px !important;
	display: flex;
}

.hd-nav__dropdown .fs-client-cart-count,
.hd-nav__dropdown .fs-client-subscriptionCart-count {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	top: unset !important;
	left: unset !important;
	right: unset !important;
	line-height: 1;
	padding-bottom: 1px;
}

/* 初期は非表示 */
.ft-spMenu__cart .hd-nav__dropdownContainer {
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: .3s ease;
}

/* チェックされたら表示 */
#cartToggle:checked+.ft-spMenu__item+.hd-nav__dropdownContainer {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	top: -100px;
}

.ft-spMenu__cart .hd-nav__dropdown--category .dropdown-col ul {
	grid-template-columns: 1fr;
}

.ft-spMenu__cart .hd-nav__dropdown {
	width: 95px;
	padding: 15px 10px;
}

@media screen and (min-width: 768px) {}

@media screen and (max-width: 768px) {}

/* ドロップダウン内リスト */
.hd-navContainer .g-searchCategory__list,
.hd-navContainer .g-searchWorries__list {
	grid-template-columns: 1fr 1fr;
}

.hd-navContainer .g-imgList--series {
	grid-template-columns: repeat(3, 1fr);

}

.hd-navContainer .g-searchCategory__list li a,
.hd-navContainer .g-searchWorries__list li a {
	padding: 0;
	font-size: var(--fz-12);
}

@media (hover: hover) {}


/* ページトップ */
.pagetop {
	position: fixed;
	z-index: 99;
}

.pagetop::before {
	content: "";
	display: inline-block;
	background-color: var(--c-white);
	aspect-ratio: 1/1;
	width: 90%;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.pagetop a {
	display: block;
	aspect-ratio: 1/1;
	border-radius: 50%;
	--this-mask: var(--data-icon-page-top) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--txt-c-base);
	position: relative;
	z-index: 2;
}

@media screen and (min-width: 768px) {
	.pagetop {
		width: 50px;
		bottom: 20px;
		right: 3%;
	}
}

@media screen and (max-width: 767px) {
	.pagetop {
		width: 35px;
		bottom: 80px;
		right: 10px;
	}
}


/* ■■■■■■■■■■■■■■■■■■■■■■全ページ共通部分■■■■■■■■■■■■■■■■■■■■■■ */
/* -------------------見出し-------------------- */
.g-heading--center>span {
	text-align: center;
}

.g-heading__ja {
	display: block;
	font-family: var(--ff-serif);
}

.g-heading__en {
	display: block;
	font-family: var(--ff-base);
	font-weight: 500;
	/* padding-top: var(--spc-10); */
}

.g-heading-line {
	position: relative;
	z-index: 2;
}

.g-heading-line .g-heading__ja {
	width: fit-content;
	background-color: var(--c-gray-100);
	padding-right: 10px;
}

.g-heading-line::before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: var(--txt-c-base);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: -1;
}

@media screen and (min-width: 768px) {
	.g-headingContainer {
		margin-bottom: var(--spc-40);
	}

	.g-heading-line {
		margin-bottom: var(--spc-30);
	}

	h1 .g-heading__ja {
		font-size: var(--fz-28);
	}

	h2 .g-heading__ja {
		font-size: var(--fz-24);
	}

	h3 .g-heading__ja {
		font-size: var(--fz-18);
	}

	.g-heading__en {
		font-size: var(--fz-16);
	}
}

@media screen and (max-width: 767px) {
	.g-headingContainer {
		margin-bottom: 20px;
	}

	.g-heading-line {
		margin-bottom: var(--spc-30);
	}

	h1 .g-heading__ja {
		font-size: var(--fz-28);
	}

	h2 .g-heading__ja {
		font-size: var(--fz-24);
	}

	h3 .g-heading__ja {
		font-size: var(--fz-18);
	}

	.g-heading__en {
		font-size: var(--fz-14);
	}
}

/* -------------------ボタン-------------------- */
/* コンテナベース */
.g-btnContainer {
	display: grid;
}

@media screen and (min-width: 768px) {
	.g-btnContainer {
		margin-top: var(--spc-50);
	}
}

@media screen and (max-width: 767px) {
	.g-btnContainer {
		margin-top: 30px;
	}
}

/* コンテナベース - 横並び */
.g-btnContainer--horizontal {
	display: flex;
	justify-content: center;
}

@media screen and (min-width: 768px) {
	.g-btnContainer--horizontal {
		gap: var(--spc-30);
	}
}

@media screen and (max-width: 767px) {
	.g-btnContainer--horizontal {
		gap: 10px;
	}
}

/* コンテナベース - PCのみ横並び */
@media screen and (min-width: 768px) {
	.g-btnContainer--horizontalPc {
		display: flex;
		justify-content: center;
		gap: var(--spc-30);
	}
}

@media screen and (max-width: 767px) {
	.g-btnContainer--horizontalPc {
		gap: 10px;
	}

	.g-btnContainer--horizontalPc .g-btn {
		margin-inline: auto;
	}
}

/* コンテナベース - 縦並び */
@media screen and (min-width: 768px) {
	.g-btnContainer--vertical {
		gap: var(--spc-20);
	}
}

@media screen and (max-width: 767px) {
	.g-btnContainer--vertical {
		gap: var(--spc-20);
	}

	.g-btnContainer--vertical .g-btn {
		margin-inline: auto;
	}
}

/* ボタンベース */
.g-btn {
	width: 100%;
}

.g-btn>a,
.g-btn>button {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
}

.g-btn>button {
	width: 100%;
}

@media screen and (min-width: 768px) {
	.g-btn {
		max-width: 300px;
	}

	.g-btn>a,
	.g-btn>button {
		min-height: 50px;
	}
}

@media screen and (max-width: 767px) {
	.g-btn {
		max-width: 300px;
	}

	.g-btn>a,
	.g-btn>button {
		min-height: 50px;
	}
}

/* ボタンベース_フォントサイズ */
.g-btn__label {
	font-weight: 400;
	letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
	.g-btn__label {
		font-size: var(--fz-sm);
	}
}

@media screen and (max-width: 767px) {
	.g-btn__label {
		font-size: 12px;
	}
}

/* カラーバリエーション */
.g-btn--primary>a,
.g-btn--primary>button {
	background-color: #E8E8E8;
	color: var(--c-black);
}

.g-btn--primary>a:visited {
	color: var(--c-black);
}

.g-btn--secondary>a,
.g-btn--secondary>button {
	background-color: var(--c-black);
}

.g-btn--secondary>a:visited {
	color: var(--c-white);
}

@media (hover: hover) {

	.g-btn>a,
	.g-btn>button {
		opacity: 1;
		transition: .3s ease;
	}

	.g-btn--primary>a:hover,
	.g-btn--primary>button:hover {
		opacity: 1;
		color: var(--c-white);
		background-color: var(--c-gray-300);
	}

	.g-btn--secondary>a:hover,
	.g-btn--secondary>button:hover {
		opacity: 1;
		background-color: var(--c-gray-300);
	}
}

/* 大きさ - long */
.g-btn--long {
	width: var(--inner-w);
	max-width: 388px;
}

/* 大きさ - small */
@media screen and (min-width: 768px) {
	.g-btn--small {
		max-width: 150px;
	}

	.g-btn--small>a {
		padding: 7px 0;
		min-height: 40px;
	}

	.g-btn--small .g-btn__label {
		font-size: 12px;
	}
}

@media screen and (max-width: 767px) {
	.g-btn--small {
		max-width: 128px;
	}

	.g-btn--small>a {
		padding: 7px 0;
		min-height: 30px;
	}

	.g-btn--small .g-btn__label {
		font-size: 10px;
	}
}

/* タイプ - center */
.g-btn--center {
	margin-inline: auto;
}

/* タイプ - arrow */
.g-btn--arrow>a,
.g-btn--arrow>button {
	position: relative;
}

.g-btn--arrow>a::after,
.g-btn--arrow>button::after {
	content: "";
	--this-mask: var(--data-icon-btn-arrow) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	aspect-ratio: 1/1;
	position: absolute;
	transition: .3s all ease;
}

.g-btn--arrow.g-btn--secondary>a::after,
.g-btn--arrow.g-btn--secondary>button::after {
	background-color: var(--c-white);
}

.g-btn--arrow.g-btn--primary>a::after,
.g-btn--arrow.g-btn--primary>button::after {
	background-color: var(--c-black);
}

@media screen and (min-width: 768px) {

	.g-btn--arrow>a::after,
	.g-btn--arrow>button::after {
		width: 10px;
		top: 40%;
		right: 10px;
	}
}

@media screen and (max-width: 767px) {

	.g-btn--arrow>a::after,
	.g-btn--arrow>button::after {
		width: 8px;
		top: 40%;
		right: 8px;
	}
}

@media (hover: hover) {

	.g-btn--arrow>a:hover::after,
	.g-btn--arrow>button:hover::after {
		background-color: var(--c-white);
	}
}

/* タイプ - anchor */
.g-btn--arrow.g-btn--anchor>a::after {
	transform: rotate(90deg);
}

/* タイプ - return */
.g-btn--arrow.g-btn--return a::after {
	transform: rotate(180deg) translateX(5px);
	right: unset;
}

@media screen and (min-width: 768px) {
	.g-btn--arrow.g-btn--return a::after {
		left: 15px;
	}
}

@media screen and (max-width: 767px) {
	.g-btn--arrow.g-btn--return a::after {
		left: 10px;
	}
}

/* -----------------タブ切り替え共通css----------------- */
.tab-nav {
	display: flex;
}

.tab-btn {
	flex: 1;
}

.tab-contents {
	height: 0;
	overflow: hidden;
	opacity: 0;
}

.tab-contents.show {
	cursor: auto;
	height: auto;
	overflow: unset;
	opacity: 1;
	transition: .5s opacity;
}

@media screen and (min-width: 768px) {
	.tab-btn:hover {
		cursor: pointer;
	}

	.tab-btn.show {
		cursor: auto;
	}
}

/* -----------------ポップアップ共通css----------------- */
body.fixed {
	position: fixed;
	width: 100%;
	overflow: hidden;
}

.popup-overlay {
	display: none;
	width: 100%;
	height: 100%;
	background-color: var(--c-black-op50);
}

.popup-overlay.fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
}

.popup-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: var(--c-white);
}

.popup-overlay .popup-box {
	overflow-y: scroll;
}

.popup-overlay button.closePopup {
	position: absolute;
	width: fit-content;
	display: flex;
	align-items: center;
	z-index: 999;
}

.popup-overlay button.closePopup::after {
	content: "";
	display: inline-block;
	--this-mask: var(--data-icon-popup-close) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--c-black);
	aspect-ratio: 1/1;
}

@media screen and (min-width: 768px) {
	.popup-overlay .popup-content {
		width: 95%;
		max-width: 900px;
	}

	.popup-overlay .popup-box {
		padding: 50px 30px;
		max-height: 90vh;
	}

	.popup-overlay button.closePopup {
		top: 16px;
		right: 12px;
		font-size: 14px;
		gap: 10px;
	}

	.popup-overlay button.closePopup::after {
		width: 20px;
	}
}

@media (hover: hover) {
	.popup-overlay button.closePopup:hover {
		cursor: pointer;
	}
}

@media screen and (max-width: 767px) {
	.popup-overlay .popup-content {
		width: 90%;
	}

	.popup-overlay .popup-box {
		padding: 30px 15px;
		max-height: 80vh;
	}

	.popup-overlay button.closePopup {
		top: 10px;
		right: 10px;
		font-size: 11px;
		gap: 3px;
	}

	.popup-overlay button.closePopup::after {
		width: 15px;
	}
}

/* -------------------g-slickArrow---------------------- */
[class*="g-slickArrow--"] {
	width: var(--slick-arrow-size);
	background-image: unset;
	border-radius: 50%;
	aspect-ratio: 1/1;
	display: inline-block;
	position: absolute;
	z-index: 2;
}

[class*="g-slickArrow--"]::before {
	content: "";
	display: inline-block;
	--this-mask: var(--data-icon-slide-arrow) no-repeat center center;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	aspect-ratio: 1/1;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.g-slickArrow--prev {
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
}

.g-slickArrow--next {
	right: 10px;
	top: 50%;
	transform: translateY(-50%) rotate(180deg);
}

.g-slickArrow--white {
	background-color: unset;
}

.g-slickArrow--white::before {
	background-color: var(--c-gray-300);
}

.g-slickArrow--black {
	background-color: var(--c-black);
}

.g-slickArrow--black::before {
	background-color: var(--c-white);
}

@media (hover: hover) {
	[class*="g-slickArrow--"] {
		transition: .3s;
	}

	[class*="g-slickArrow--"]:hover {
		cursor: pointer;
	}

	.g-slickArrow--white:hover {
		background-color: unset;
	}

	.g-slickArrow--white:hover::before {
		background-color: var(--c-black);
	}

	.g-slickArrow--black:hover {
		background-color: var(--c-gold-600);
	}

	.g-slickArrow--black:hover::before {
		background-color: var(--c-white);
	}
}

@media screen and (min-width: 768px) {
	.g-hasSlickArrow {
		--slick-arrow-size: 30px;
		--slick-arrow-to-body: calc(0px - var(--slick-arrow-size) + var(--slick-gap) - 5px);
	}

	[class*="g-slickArrow--"]::before {
		mask-size: 35%;
	}
}

@media screen and (max-width: 767px) {
	.g-hasSlickArrow {
		--slick-arrow-size: 30px;
		--slick-arrow-to-body: calc(0px - var(--slick-arrow-size) + var(--slick-gap) - 5px);
	}

	[class*="g-slickArrow--"]::before {
		mask-size: 40%;
	}
}

/* -------------------g-slickDots-------------------- */
.slick:has(.g-slickDots) {
	margin-bottom: 0;
}

.g-slickDots {
	display: flex;
	justify-content: center;
}

.g-slickDots li {
	position: relative;
}

.g-slickDots button {
	font-size: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.g-slickDots .slick-active button {
	background-color: var(--txt-c-base);
	border-color: var(--txt-c-base);
}

.g-brandStory__slider .g-slickDots button[type="button"] {
	font-size: 0;
	background-color: var(--c-white);
	width: 50px;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.g-brandStory__slider .g-slickDots .slick-active button[type="button"] {
	background-color: var(--c-white);
}

.g-brandStory__slider .g-slickDots .slick-active button[type="button"]::after {
	content: "";
	background-color: var(--c-white);
	width: 50px;
	height: 2px;
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 100;
	animation: dotProgress var(--slick-autoplay, 6s) linear forwards;
}

@media screen and (min-width: 768px) {
	.g-slickDots {
		gap: 10px;
		margin-top: 10px;
	}

	.g-slickDots li {
		width: 50px;
	}

	.g-slickDots button {
		width: 10px;
	}
}

@media screen and (max-width: 767px) {
	.g-slickDots {
		gap: 5px;
		margin-top: 10px;
	}

	.g-slickDots li {
		width: 50px;
	}

	.g-slickDots button {
		width: 10px;
	}
}

/* --------------------g-txtLink-------------------- */
.g-txtLink {
	text-align: center;
	margin-top: var(--spc-30);
}

.g-txtLink a {
	display: inline-block;
	border-bottom: 1px solid var(--txt-c-base);
	font-size: var(--fz-14);
}

/* -------------------bgcolor-------------------- */
.bgcolor--gray {
	background-color: var(--c-gray-100);
}

/* -------------------is-targetBlank-------------------- */
.is-targetBlank {
	display: inline-block;
	position: relative;
	padding-right: 17px;
}

.is-targetBlank::after {
	content: "";
	display: inline-block;
	--this-mask: var(--data-icon-target-blank) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	aspect-ratio: 1/1;
	width: 13px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.is-targetBlank--brown::after {
	background-color: var(--txt-c-base);
}

.is-targetBlank--c-white::after {
	background-color: var(--txt-c-white);
}

/* --------------------g-payment-------------------- */
.g-payment {
	--grid-cols-pc: 5;
	--grid-gap-pc: 12px;
	--grid-cols-sp: 5;
	--grid-gap-sp: 8px;
	margin-top: var(--spc-20);
}

.g-payment li {
	border: 1px solid var(--bd-c-gray);
	border-radius: 4px;
	font-weight: 500;
	font-size: 10px;
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0.07em;
	overflow: hidden;
	min-height: 40px;
}

.g-payment li small {
	display: block;
	font-weight: 400;
}

/* ------------------- バナー共通 -------------------- */
.g-bnr {
	max-width: 485px;
	margin-inline: auto;
}

/* --------------------バナーリスト-------------------- */
.g-bnr2col,
.g-bnr3col {
	display: grid;
}
.g-bnr2col .fs-pt-column__item{
	padding: 0;
}
@media screen and (min-width: 768px) {
	.g-bnr2col {
		grid-template-columns: 1fr 1fr;
		gap: var(--spc-30);
	}

	.g-bnr3col {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--spc-20);
	}
}

@media screen and (max-width: 767px) {

	.g-bnr2col,
	.g-bnr3col {
		grid-template-columns: 1fr;
		gap: 10px;
	}
}

/* --------------------レコメンド-------------------- */
.flywheel-recommend__frame .fr3-productListStatic {
	display: grid;
}

.fr3-item__productName {
	font-size: var(--fz-14);
	margin-block: 5px 2px;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.fr3-item__productPrice__currencyMark,
.fr3-item__productPrice__value {
	font-size: var(--fz-17);
}

.fr3-item__productPrice__currencyMark {
	letter-spacing: .1em;
}

.fr3-item__productPrice__price {
	letter-spacing: .02em;
}

.fr3-item__productPrice__addon {
	font-size: var(--fz-13);
}

.fr3-item__link .fr3-item__imageContainer {
	overflow: hidden;
}
.fr3-item__image{
	aspect-ratio: 1/1;
	object-fit: cover;
}
@media screen and (min-width: 768px) {
	.flywheel-recommend__frame .fr3-productListStatic article {
		min-width: clamp(250px, 25vw, 318px);
	}

	.flywheel-recommend__frame .fr3-productListStatic {
		grid-template-columns: repeat(6, 1fr);
		gap: 2px;
		overflow-x: scroll;
		overflow-y: hidden;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}

	.flywheel-recommend__frame .fr3-productListStatic::-webkit-scrollbar {
		display: none;
	}

	.g-inner:has(.flywheel-recommend__frame) {
		width: 100%;
		max-width: unset;
	}

	.g-ranking .g-inner {
		max-width: unset;
		width: 100%;
	}

	.fr3-item__productName,
	.fr3-item__productPrice {
		padding-inline: var(--spc-10);
	}
}

@media screen and (max-width: 767px) {
	.flywheel-recommend__frame .fr3-productListStatic {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px 15px;
	}
}

@media (hover: hover) {
	.fr3-item__link:hover {
		opacity: 1;
	}

	.fr3-item__link:hover img {
		opacity: 1 !important;
		transform: scale(1.05);
	}
}

/* ------------------- ランキング -------------------- */
.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic article {
	position: relative;
}

.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic {
	counter-reset: original-counter;
}

.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic article::after {
	content: '' counter(original-counter);
	counter-increment: original-counter;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	position: absolute;
	z-index: 2;
	color: var(--c-black);
	background-color: var(--c-white);
	width: 45px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	font-family: var(--ff-serif);
	letter-spacing: 0;
	line-height: 1;
}

.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic article:nth-child(1)::after {
	color: var(--c-gold-600);
}

.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic article:nth-child(2)::after {
	color: #9F9F9F;
}

.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic article:nth-child(3)::after {
	color: #C57162;
}

@media screen and (min-width: 768px) {
	.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic article::after {
		width: 45px;
		font-size: var(--fz-24);
		top: 10px;
		left: 10px;
	}
}

@media screen and (max-width: 767px) {
	.flywheel-recommend__frame[data-frame-id="ranking"] .fr3-productListStatic article::after {
		width: 30px;
		font-size: var(--fz-20);
		top: 5px;
		left: 5px;
	}
}

/* ------------------- お知らせ掲載 -------------------- */
.hd-copyContainer {
	overflow: hidden;
}

.hd-copy {
	background-color: var(--c-gray-100);
}

.hd-copy p {
	/* text-align: center; */
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--fz-12);
	padding: 8px 0;
}

@media screen and (max-width: 767px) {
	.hd-copyContainer {
		height: 36px;
	}

	.hd-copy {
		display: flex;
		height: 100%;
		align-items: center;
		width: max-content;
	}

	.hd-copy__marquee {
		display: flex;
		animation: marquee-scroll 50s linear infinite;
		white-space: nowrap;
	}

	.hd-copy__marquee p {
		padding-right: 20px;
	}

	@keyframes marquee-scroll {
		0% {
			transform: translateX(0);
		}

		100% {
			transform: translateX(-100%);
		}
	}
}

/* --------------------商品を探す-------------------- */
.g-search {
	background-color: var(--c-gray-100);
}

/* --------------------キーワード検索-------------------- */
.g-searchForm.formReset {
	position: relative;
	max-width: 600px;
	margin-inline: auto;
	margin-bottom: var(--spc-10);
}

.g-searchForm.formReset input[type="text"] {
	width: 100%;
	background-color: var(--c-white);
}

.g-searchForm.formReset input[type="text"]::placeholder {
	color: var(--c-gray-300);
	font-size: var(--fz-16);
	font-weight: 400;
}

.g-searchForm.formReset .g-searchSubmit {
	aspect-ratio: 1 / 1;
	--MASK: var(--data-icon-item-search) no-repeat center center / 100%;
	mask: var(--MASK);
	-webkit-mask: var(--MASK);
	background-color: var(--c-black);
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}
.g-searchForm.formReset .g-searchSubmit{

}

@media screen and (min-width: 768px) {
	.g-searchForm.formReset input[type="text"] {
		padding: 25px 50px 25px 30px;
		border-radius: 35px;
	}

	.g-searchForm.formReset .g-searchSubmit {
		width: 23px;
		height: 23px;
	}
}

@media screen and (max-width: 767px) {
	.g-searchForm.formReset input[type="text"] {
		padding: 12px 30px 12px 20px;
		border-radius: 30px;
	}

	.g-searchForm.formReset .g-searchSubmit {
		width: 18px;
		height: 18px;
	}
}

/* ------------------- ホットキーワード -------------------- */
.g-hotKeyword {
	display: flex;
	justify-content: center;
	max-width: 600px;
	margin-inline: auto;
	overflow-x: scroll;
	overflow-y: hidden;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.g-column__list::-webkit-scrollbar {
	display: none;
}

.g-hotKeyword div a {
	font-size: var(--fz-14);
}

.g-hotKeyword div a::before {
	content: "#";
}

@media (hover: hover) {
	.g-hotKeyword div a:hover {
		opacity: 1;
		color: var(--c-gold-600);
	}
}

@media screen and (min-width: 768px) {
	.g-hotKeyword {
		flex-wrap: wrap;
		gap: 5px var(--spc-20);
	}
}

@media screen and (max-width: 767px) {
	.g-hotKeyword {
		width: 100vw;
		margin: 0 calc(50% - 50vw);
		padding-left: 7.3%;
		gap: 10px;
		overflow-x: scroll;
		overflow-y: hidden;
	}

	.g-hotKeyword div {
		min-width: fit-content;
	}
}

/* --------------------お悩みから探す-------------------- */
.g-searchWorries__list {
	--grid-cols-pc: 4;
	--grid-cols-sp: 2;
	--grid-gap-pc: var(--spc-20);
	--grid-gap-sp: 10px;
}

.g-searchWorries__list li a {
	display: block;
	padding: var(--spc-20);
	background-color: var(--c-white);
	border-radius: 10px;
	text-align: center;
	font-size: var(--fz-16);
	transition: .2s;
}

@media (hover: hover) {
	.g-searchWorries__list li a:hover {
		opacity: 1;
		box-shadow: inset 0 0 0 1px var(--c-gold-600);
	}
}

/* --------------------カテゴリーから探す-------------------- */
.g-searchCategory__list {
	--grid-cols-pc: 4;
	--grid-cols-sp: 2;
	--grid-gap-pc: var(--spc-20);
	--grid-gap-sp: 10px;
}

.g-searchCategory__list li a {
	display: block;
	padding: var(--spc-20);
	background-color: var(--c-white);
	border-radius: 10px;
	text-align: center;
	font-size: var(--fz-16);
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

@media (hover: hover) {
	.g-searchCategory__list li a:hover {
		opacity: 1;
		box-shadow: inset 0 0 0 1px var(--c-gold-600);
	}
}

/* ------------------- リストスタイル（画像） -------------------- */
.g-imgList a {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	text-align: center;
	height: 100%;
}

.g-imgList a::before {
	content: "";
	display: inline-block;
	background: var(--this-image) no-repeat center center / 100%;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	transition: .3s ease;
}

.g-imgList a span {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.3;
}

@media screen and (min-width: 768px) {
	.g-imgList a {
		gap: 10px;
	}
}

@media screen and (max-width: 767px) {
	.g-imgList a {
		gap: 8px;
	}

	.g-imgList {
		max-width: 500px;
		margin-inline: auto;
	}

	.g-img {
		height: 170px;
		overflow: hidden;
	}

	.g-img img {
		height: 170px;
		object-fit: cover;
	}
}

@media (hover: hover) {
	.g-imgList a:hover::before {
		background: var(--this-image) no-repeat center center / 110%;
	}

	.g-imgList a:hover {
		opacity: 1 !important;
	}
}

/* --------------------シリーズから探す-------------------- */
.g-imgList--series {
	--grid-cols-pc: 7;
	--grid-cols-sp: 3;
	--grid-gap-pc: var(--spc-30);
	--grid-gap-sp: 20px 15px;
}

/* --------------------コラム-------------------- */
.g-column__img img {
	aspect-ratio: 3/2;
	object-fit: cover;
}

.g-column__img {
	overflow: hidden;
}

.g-column__ttl {
	font-weight: 500;
	margin-block: var(--spc-15);
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	overflow: hidden;
}

.g-column__txt {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	overflow: hidden;
	margin-bottom: var(--spc-10);
}

.g-column__tagList {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
}

.g-column__tagList li {
	display: inline-block;
}

.g-column__tagList li a {
	font-size: var(--fz-14);
	border-radius: 20px;
	padding: 4px var(--spc-15);
	display: inline-block;
}

.g-column__tagList li a::before {
	content: "#";
}

@media screen and (min-width: 1150px) {
	.g-column__list {
		padding-inline: 7.3% 2%;
	}
}

@media screen and (min-width: 768px) and (max-width: 1149px) {
	.g-column__list {
		padding-inline: 2.5% 2.5%;
	}
}

@media screen and (min-width: 768px) {
	.g-column .g-inner {
		max-width: unset;
		width: 100%;
	}

	.g-column__list {
		display: flex;
		gap: var(--spc-20);
		gap: var(--spc-10);
		flex: 1;
		overflow-x: scroll;
		overflow-y: hidden;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}

	.g-column__list::-webkit-scrollbar {
		display: none;
	}

	.g-column__list>article {
		min-width: clamp(250px, 40vw, 570px)
	}

	.g-column__ttl,
	.g-column__txt,
	.g-column__tagList {
		padding-inline: var(--spc-10);
	}

	.g-column__ttl {
		font-size: var(--fz-20);
	}

	.g-column__txt {
		font-size: var(--fz-16);
	}

	.g-column__tagList li a {
		font-size: var(--fz-14);
		border: 1px solid var(--c-black);
	}
}

@media screen and (max-width: 767px) {
	.g-column__list {
		--grid-cols-sp: 2;
		--grid-gap-sp: 20px 15px;
	}

	.g-column__ttl {
		font-size: var(--fz-16);
	}

	.g-column__txt {
		font-size: var(--fz-14);
	}

	.g-column__tagList li a {
		font-size: var(--fz-12);
		border: 0.8px solid var(--c-black);
	}

	.g-column__list article:nth-child(n+5) {
		display: none;
	}
}

@media (hover: hover) {
	.g-column__list article a:hover {
		opacity: 1;
	}

	.g-column__list article a:hover img {
		opacity: 1 !important;
		transform: scale(1.05);
	}

	.g-column__ttl a:hover {
		opacity: 1;
		text-decoration-line: underline;
		text-decoration-thickness: 1px;
	}

	.g-column__tagList li a:hover {
		opacity: 1;
		background-color: var(--c-black);
		color: var(--c-white);
	}
}

/* --------------------ブランドストーリーコンテンツ-------------------- */
.g-brandStory.g-pd {
	background-color: var(--c-black);
	padding-block: var(--spc-80);
}

.g-brandStory__wrap {
	display: grid;
	align-items: center;
	gap: var(--spc-50);
}

.g-brandStory__logo {
	margin-bottom: 2%;
}

.g-brandStory__cach {
	color: var(--c-white);
	border-bottom: 1px solid var(--c-white);
	display: inline-block;
	font-size: var(--fz-14);
}

.g-brandStory__ttl {
	font-size: var(--fz-20);
	font-family: var(--ff-serif);
	color: var(--c-white);
}

.g-brandStory__txt {
	color: var(--c-white);
	font-size: var(--fz-14);
	max-width: 550px;
}

@media screen and (min-width: 768px) {
	.g-brandStory__wrap {
		grid-template-columns: 1fr 1fr;
	}

	.g-brandStory__cnt {
		padding-right: 7.3%;
	}

	.g-brandStory__logo {
		width: 18%;
		max-width: 117px;
	}

	.g-brandStory__cach {
		margin-bottom: var(--spc-40);
	}

	.g-brandStory__ttl {
		margin-bottom: var(--spc-40);
	}
}

@media screen and (max-width: 767px) {
	.g-brandStory__logo {
		width: 18%;
		max-width: 117px;
	}

	.g-brandStory__cnt {
		width: var(--inner-w);
		margin-inline: auto;
	}

	.g-brandStory__cach {
		margin-bottom: var(--spc-25);
	}

	.g-brandStory__ttl {
		margin-bottom: var(--spc-25);
	}

	.g-brandStory .g-btn {
		margin-inline: auto;
	}
	.g-brandStory__txt {
		line-height: 2;
	}
}

/* ------------------- レビュー -------------------- */
/*. --------- g-review__list ----------- */
.g-review__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.g-review__list li.fs-c-reviewList__item:nth-child(n+5) {
	display: none !important;
}

.g-review__list img {
	aspect-ratio: 3/2;
	object-fit: cover;
}

.g-review__list * {
	margin: 0px;
	padding: 0px;
	background: none;
	border: none;
	color: var(--c-black);
}

.fs-c-reviewStars::before {
	color: var(--c-orange);
}

.g-review__list a {
	display: block;
}

.g-review__list .fs-c-reviewList__item {
	background-color: var(--c-white);
	margin-bottom: 0 !important;
	position: relative;
}

.g-review__list .fs-c-reviewList__item .fs-c-time {
	display: none;
}

.g-review__list .fs-c-reviewList__item__product {
	display: contents;
	flex: 1;
}

.g-review__list .fs-c-reviewProduct__info {
	float: none !important;
	order: 4;
}

.g-review__list .fs-c-productName__name {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	font-weight: bold;
	font-size: var(--fz-16);
}

.g-review__list .fs-c-reviewInfo__reviewer {
	display: none !important;
}

.g-review__list .fs-c-reviewInfo__date>dt {
	display: none !important;
}

.g-review__list .fs-c-reviewBody {
	margin-top: 0px !important;
}

.g-review__list .fs-c-reviewList__item {
	display: flex;
	flex-direction: column;
	border-radius: var(--bdrs-md);
}

.g-review__list .fs-c-reviewList__item__info {
	display: contents;
}

.g-review__list .fs-c-reviewInfo__date {
	order: 1;
}

.g-review__list .fs-c-reviewList__item__product {
	order: 2;
}

.g-review__list .fs-c-reviewRating {
	order: 3;
}

.g-review__list .fs-c-reviewList__item__body {
	order: 4;
	font-size: var(--fz-14);
	font-weight: 400;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.g-review__list .fs-c-reviewInfo__date {
	text-align: right;
	font-size: 110% !important;
}

ul.g-review__list .slick-list {
	padding-block: 15px 25px;
}

.g-voice .fs-c-reviewProduct__image {
	box-shadow: none;
	width: 80%;
	margin-inline: auto;
}

.g-voice .fs-c-reviewList__item__product.fs-c-reviewProduct {
	gap: 10px;
	padding-top: 5px !important;
}

.g-voice .fs-c-reviewBody {
	white-space: normal;
}

.g-review__list .slick-slide img {
	margin-inline: auto;
}

.g-review__list .fs-c-reviewProduct__image a {
	overflow: hidden;
}

.fs-c-reviewList__item:first-child {
	border-top: none;
}

@media (hover: hover) {
	.g-review__list .fs-c-reviewProduct__image a:hover img {
		transform: scale(1.1);
		opacity: 1 !important;
	}

	.g-review__list .fs-c-reviewProduct__image a:hover {
		opacity: 1 !important;
	}

	.g-review__list .fs-c-productName a:hover {
		opacity: 1;
		text-decoration-line: underline;
		text-decoration-thickness: 1px;
		text-decoration-color: var(--c-black);
	}
}

@media screen and (min-width: 768px) {
	.g-review__list .fs-c-reviewInfo__date {
		font-size: 12px;
	}

	.g-review__list {
		gap: var(--spc-20);
	}
	.g-review__list .fs-c-reviewRating {
		margin-top: var(--spc-25);
	}
	.g-review__list .fs-c-reviewProduct__info {
		margin-block: var(--spc-25);
	}
}

@media screen and (max-width: 767px) {
	.g-review .g-inner {
		max-width: unset;
		width: 100%;
	}

	ul.g-review__list {
		padding-inline: 4%;
		overflow-x: scroll;
		overflow-y: hidden;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}

	ul.g-review__list::-webkit-scrollbar {
		display: none;
	}

	ul.g-review__list li {
		min-width: 200px;
	}

	.g-review__list .fs-c-reviewInfo__date {
		font-size: 10px;
	}

	ul.g-review__list .slick-list {
		padding-inline: 30px;
	}

	.g-review__list {
		gap: 10px;
	}

		.g-review__list .fs-c-reviewRating {
		margin-top: var(--spc-15);
	}

		.g-review__list .fs-c-reviewProduct__info {
			margin-block: var(--spc-15);
		}
}

/* --------------------インスタ-------------------- */
.g-insta__list {
	--grid-cols-pc: 5;
	--grid-cols-sp: 3;
	--grid-gap-pc: 5px;
	--grid-gap-sp: 5px;
}

.g-insta__list li {
	overflow: hidden;
}

.g-insta .g-heading__en {
	padding-top: var(--spc-10);
}

.g-insta__list li a img {
	aspect-ratio: 1 / 1;
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.g-insta__list li a video {
	aspect-ratio: 1 / 1;
	display: block;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.g-insta__list li:nth-child(n+10) {
		display: none;
	}
}

@media (hover: hover) {
	.g-insta__list li a:hover {
		opacity: 1;
	}

	.g-insta__list li a:hover img {
		opacity: 1 !important;
		transform: scale(1.05);
	}

	.g-insta .g-heading__en a:hover {
		opacity: 1;
		text-decoration-line: underline;
		text-decoration-thickness: 1px;
	}
}

/* --------------------お知らせ-------------------- */
.g-news__list {
	max-width: 800px;
	margin-inline: auto;
	background-color: var(--c-gray-100);
	padding: calc(var(--spc-50) + 5px) var(--spc-40);
}

.g-news__list li {
	display: flex;
	align-items: center;
}

.g-news__list li:not(:last-child) {
	border-bottom: 1px solid var(--c-white);
	padding-bottom: calc(var(--spc-20) + 5px);
	margin-bottom: calc(var(--spc-20) + 5px);
}

.g-news__date {
	font-size: var(--fz-14);
}

.g-news__week {
	font-size: var(--fz-14);
	margin-inline: var(--spc-20);
}

.g-news__name {
	font-size: var(--fz-14);
}

@media (hover: hover) {
	.g-news__name a:hover {
		opacity: 1;
		text-decoration-line: underline;
	}
}

@media screen and (max-width: 767px) {
		.g-news__list {
			max-height: 250px;
			overflow-x: hidden;
			overflow-y: scroll;
		}
	.g-news__list li {
		flex-direction: column;
		align-items: baseline;
		gap: 8px;

	}

}

/* --------------------閲覧履歴-------------------- */
.g-history__list {
	--grid-cols-pc: 15;
	--grid-cols-sp: 2;
	--grid-gap-pc: var(--spc-20);
	--grid-gap-sp: var(--spc-20);
}

.g-history .fr3-item__productName,
.g-history .fr3-item__productPrice {
	display: none;
}

.g-history .flywheel-recommend__frame .fr3-productListStatic article {
	min-width: clamp(90px, 15vw, 132px);
}

.g-history .flywheel-recommend__frame .fr3-productListStatic {
	grid-template-columns: repeat(15, 1fr);
	overflow-x: scroll;
	overflow-y: hidden;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.flywheel-recommend__frame .fr3-productListStatic::-webkit-scrollbar {
	display: none;
}

@media screen and (max-width: 767px) {
	.g-history{
		width: var(--inner-w) !important;
		margin-inline: auto;
	}

	.g-history .flywheel-recommend__frame .fr3-productListStatic{
		display: grid;
		grid-template-columns: repeat(5, 100px);
		grid-template-rows: repeat(2, auto);
		gap: 5px;
		overflow-x: scroll;
		overflow-y: hidden;
	}

	.g-history .flywheel-recommend__frame .fr3-productListStatic .fr3-item{
		min-width: 100px;
		width: 100px;
	}

	.g-history .flywheel-recommend__frame .fr3-productListStatic .fr3-item:nth-child(n+11){
		display: none;
	}
}

/* ------------------- ご利用ガイド -------------------- */
.g-guide {
	background-color: var(--c-white);
}

.g-guide__list {
	--grid-cols-pc: 4;
	--grid-cols-sp: 1;
	--grid-gap-pc: 0;
	--grid-gap-sp: 20px 15px;
}

.g-guide__img {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	margin-inline: auto;
	color: black;
}

.g-guide__ttl{
	font-size: var(--fz-16);
	font-weight: 500;
}

.g-guideCon__txt {
	font-size: var(--fz-14);
	line-height: 2;
}

@media screen and (min-width: 768px) {
	.g-guide__list li {
		padding-inline: var(--spc-15);
	}

	.g-guide__list li:not(:last-child) {
		border-right: 1px solid var(--c-gray-200);
	}

	.g-guide__img {
		width: 40%;
		max-width: 100px;
		margin-bottom: var(--spc-20);
	}

	.g-guide__ttl{
		text-align: center;
	}

	.g-guideCon__txt {
		text-align: center;
		margin-block: var(--spc-15);
	}

	.g-guide__img {
		background: #EEE2D0 no-repeat center / 45%;
	}
}

@media screen and (max-width: 767px) {
	.g-guide__list {
		width: 285px;
		margin-inline: auto;
	}

	.g-guide__list li {
		display: flex;
		gap: 15px;
		align-items: center;
	}

	.g-guide__img {
		width: 76px;
	}

	.g-guide__wrap {
		flex: 1;
	}

	.g-guide__img {
		background: #EEE2D0 no-repeat center / 50%;
	}
}

/* --------------------任意商品-------------------- */
.fs-c-productListItem__numberOfStock {
	display: none;
}

.g-fsProductList .fs-c-productListCarousel__list__itemTrack {
	width: 100% !important;
	max-width: unset !important;
	grid-template-columns: repeat(6, 1fr);
	overflow-x: scroll;
	overflow-y: hidden;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.g-fsProductList .fs-c-productMarks {
	display: none;
}

.fs-c-productName__variation__y {
	display: inline-block;
	background-color: var(--c-gray-100);
	padding: 3px 10px;
	margin-top: 5px;
}

.g-fsProductList .fs-c-productListItem__productName {
	padding-inline: var(--spc-10);
}

.g-fsProductList .fs-c-productListItem__prices {
	padding-inline: var(--spc-10);
}

@media (hover: hover) {
	.g-fsProductList .fs-c-productListCarousel__list__itemTrack article a:hover {
		opacity: 1;
		color: var(--c-black);
	}

	.g-fsProductList .fs-c-productListCarousel__list__itemTrack article a:hover img {
		transform: scale(1.05);
	}
}

@media screen and (min-width: 768px) {
	.g-fsProductList .fs-c-productListCarousel__list__itemTrack {
		gap: 2px;
	}

	.g-fsProductList .fs-c-productListCarousel__list__itemTrack article {
		min-width: clamp(250px, 25vw, 318px);
	}
}

@media screen and (max-width: 767px) {
	.g-fsProductList .fs-c-productListCarousel__list__itemTrack {
		gap: 5px;
	}

	.g-fsProductList .fs-c-productListCarousel__list__itemTrack article {
		min-width: clamp(165px, 30vw, 300px);
	}
}

/* --------------------会員特典-------------------- */
.g-memberBenefits {
	max-width: 656px;
	margin-inline: auto;
	margin-block: var(--spc-20) var(--spc-40);
}

.g-memberBenefits .g-heading__ja {
	font-size: var(--fz-22);
}

.g-memberBenefits .g-headingContainer {
	margin-bottom: var(--spc-20);
}

.g-memberBenefits__list {
	--grid-cols-pc: 3;
	--grid-cols-sp: 1;
	--grid-gap-pc: 0;
	--grid-gap-sp: 20px 15px;
}

.g-memberBenefits__list li .g-guideCon__txt {
	text-align: left;
}

@media screen and (min-width: 768px) {
	.g-memberBenefits .g-guide__img {
		width: 60%;
	}
}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

/* --------------------複製して使う-------------------- */
@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}