/**
 * mymoods 2026 リデザイン (20260108_mymoods.xd A案) — サイト chrome + トップ + 認証。
 * 正典: XD アートボード PC_top_A / SP_top / SP_navi / PC_認証。REDESIGN-2026.md 参照。
 * 命名は .mmv2- プレフィックス。旧テーマ CSS と衝突させない。
 */

:root {
	--mmv2-black: #020202;
	--mmv2-ink: #2c2c2c;
	--mmv2-dark: #1a1a1a;
	--mmv2-panel: #2c2c2c;
	--mmv2-bg: #f4f4f4;
	--mmv2-white: #fff;
	--mmv2-green: #6cc71f;
	--mmv2-green-dark: #58ab13;
	--mmv2-line: #06c755;
	--mmv2-red: #e54242;
	--mmv2-gray: #919191;
	--mmv2-gray-dark: #606060;
	--mmv2-border: #c9c9c9;
	--mmv2-chip-bg: #efefef;
	--mmv2-font-en: "Helvetica Neue", Helvetica, Arial, "Noto Sans Japanese", sans-serif;
	--mmv2-font-jp: "Noto Sans Japanese", "Hiragino Kaku Gothic ProN", "Helvetica Neue", Arial, sans-serif;
	--mmv2-container: 1520px;
	--mmv2-radius: 10px;
}

body.mmv2 {
	background: var(--mmv2-bg);
	font-family: var(--mmv2-font-jp);
	color: var(--mmv2-ink);
	margin: 0;
}

/* v2 コンポーネントは常に border-box(環境の base CSS に依存しない)。
   content-box だと width:100%+padding のピル/ボタンがカードからはみ出す。 */
[class*="mmv2-"],
[class*="mmv2-"] *,
[class*="mmv2-"] *::before,
[class*="mmv2-"] *::after,
.mmv2 .age-verification-overlay,
.mmv2 .age-verification-overlay * {
	box-sizing: border-box;
}

.mmv2-container {
	max-width: var(--mmv2-container);
	margin-inline: auto;
	padding-inline: 24px;
}

.mmv2 a { text-decoration: none; color: inherit; }
.mmv2 img { max-width: 100%; display: block; }
.mmv2 button { font-family: inherit; cursor: pointer; }

/* ============================= お知らせバー ============================= */
.mmv2-announce {
	background: var(--mmv2-black);
	color: #fff;
	position: relative;
	z-index: 60;
}
.mmv2-announce__inner {
	max-width: var(--mmv2-container);
	margin-inline: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 36px;
	padding-inline: 48px;
	position: relative;
}
.mmv2-announce__track { overflow: hidden; flex: 1; }
.mmv2-announce__msg {
	display: none;
	text-align: center;
	font-size: 12px;
	letter-spacing: .02em;
	color: #fff;
	line-height: 1.4;
	padding-block: 9px;
}
.mmv2-announce__msg.is-active { display: block; }
.mmv2-announce__msg a { color: #fff; text-decoration: underline; text-underline-offset: 2px; }
.mmv2-announce__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 22px; height: 22px;
	border-radius: 50%;
	border: 0;
	background: #2c2c2c;
	color: #fff;
	display: grid;
	place-items: center;
	padding: 0;
}
.mmv2-announce__arrow svg { width: 10px; height: 10px; }
.mmv2-announce__arrow--prev { left: 16px; }
.mmv2-announce__arrow--next { right: 16px; }

/* ============================= ヘッダー ============================= */
.mmv2-header {
	background: var(--mmv2-white);
	position: sticky;
	top: 0;
	z-index: 50;
}
.mmv2-header__inner {
	max-width: var(--mmv2-container);
	margin-inline: auto;
	padding-inline: 24px;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	height: 72px;
}
.mmv2-header__left { display: flex; align-items: center; gap: 18px; }
.mmv2-header__burger {
	background: none; border: 0; padding: 6px; margin-left: -6px;
	display: grid; place-items: center;
}
.mmv2-header__burger img { width: 22px; height: auto; }
.mmv2-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	padding: 10px 22px;
	border: 0;
	white-space: nowrap;
}
.mmv2-pill--ghost { background: #e3e3e3; color: var(--mmv2-ink); }
.mmv2-pill--green { background: var(--mmv2-green); color: #fff; }
.mmv2-pill--green:hover { background: var(--mmv2-green-dark); }
.mmv2-pill--green img { filter: brightness(0) invert(1); width: 16px; }
.mmv2-header__logo { display: block; }
.mmv2-header__logo img { height: 34px; width: auto; }
.mmv2-header__right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 16px;
}
.mmv2-iconbtn {
	position: relative;
	display: grid;
	place-items: center;
	background: none; border: 0; padding: 4px;
	color: var(--mmv2-ink);
}
.mmv2-iconbtn img { width: 20px; height: 20px; object-fit: contain; }
.mmv2-iconbtn .mmv2-cart-count {
	position: absolute;
	right: -5px; bottom: -3px;
	min-width: 15px; height: 15px;
	border-radius: 999px;
	background: var(--mmv2-black);
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	display: grid;
	place-items: center;
	padding-inline: 3px;
}

/* ============================= 検索オーバーレイ ============================= */
.mmv2-search {
	position: absolute;
	left: 0; right: 0; top: 100%;
	background: #fff;
	box-shadow: 0 8px 20px rgba(0,0,0,.1);
	z-index: 49;
}
.mmv2-search__form {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-block: 16px;
}
.mmv2-search__input {
	flex: 1;
	border: 0;
	border-bottom: 1px solid var(--mmv2-border);
	font-size: 15px;
	font-family: inherit;
	padding: 8px 2px;
	background: transparent;
	outline: none;
}
.mmv2-search__input:focus { border-color: var(--mmv2-black); }
.mmv2-search__close { font-size: 15px; color: var(--mmv2-gray-dark); }

/* SP 専用要素(PC では隠す) */
@media (min-width: 768px) {
	.mmv2-sp-only { display: none !important; }
}

/* ============================= ドロワー ============================= */
.mmv2-drawer {
	position: fixed;
	inset: 0;
	z-index: 100;
	visibility: hidden;
	pointer-events: none;
}
.mmv2-drawer.is-open { visibility: visible; pointer-events: auto; }
.mmv2-drawer__backdrop {
	display: block; /* base.css の div:empty 対策 */
	position: absolute; inset: 0;
	background: rgba(0,0,0,.45);
	opacity: 0;
	transition: opacity .25s;
}
.mmv2-drawer.is-open .mmv2-drawer__backdrop { opacity: 1; }
.mmv2-drawer__panel {
	position: absolute;
	top: 0; left: 0; bottom: 0;
	width: min(420px, 100%);
	background: var(--mmv2-dark);
	color: #fff;
	transform: translateX(-100%);
	transition: transform .3s ease;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: 24px 24px 0;
	display: flex;
	flex-direction: column;
}
.mmv2-drawer.is-open .mmv2-drawer__panel { transform: translateX(0); }
.mmv2-drawer__top {
	display: flex;
	align-items: center;
	gap: 22px;
}
.mmv2-drawer__top .mmv2-iconbtn { color: #fff; }
.mmv2-drawer__top .mmv2-iconbtn img { filter: brightness(0) invert(1); }
.mmv2-drawer__close { margin-left: auto; }
.mmv2-drawer__close svg { width: 18px; height: 18px; }
.mmv2-drawer__pills { display: flex; gap: 12px; margin-top: 26px; }
.mmv2-drawer__pills .mmv2-pill { flex: 1; padding-block: 13px; }
.mmv2-drawer__cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px 16px;
	padding-block: 30px;
}
.mmv2-drawer__cols + .mmv2-drawer__cols { border-top: 1px solid #3f3f3f; }
.mmv2-drawer__cols a {
	display: block;
	font-size: 14px;
	line-height: 2.3;
	color: #fff;
}
.mmv2-drawer__cols a:hover { color: var(--mmv2-green); }
.mmv2-drawer__sns { display: flex; gap: 22px; padding-block: 8px 28px; }
.mmv2-drawer__sns img { width: 18px; height: 18px; filter: brightness(0) invert(1); }
.mmv2-drawer__watermark { margin: auto -24px 0; overflow: hidden; }
.mmv2-drawer__watermark img {
	width: 110%;
	max-width: none;
	opacity: .18;
	filter: brightness(0) invert(.4);
	transform: translateY(22%);
}

/* ============================= 共通見出し ============================= */
.mmv2-section { padding-block: 44px; }
.mmv2-section__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: 26px;
}
.mmv2-section__title {
	font-family: var(--mmv2-font-en);
	font-size: clamp(22px, 1.9vw, 34px);
	font-weight: 600;
	letter-spacing: .01em;
	color: var(--mmv2-ink);
	margin: 0;
	text-transform: uppercase;
}
.mmv2-section__more {
	font-family: var(--mmv2-font-en);
	font-size: 13px;
	color: var(--mmv2-gray-dark);
	letter-spacing: .06em;
	text-transform: uppercase;
}
.mmv2-section__more:hover { color: var(--mmv2-ink); }

/* ============================= ヒーロー ============================= */
.mmv2-hero { padding-top: 14px; }
.mmv2-hero .swiper { border-radius: 0; }
.mmv2-hero__slide {
	display: block;
	aspect-ratio: 601 / 851;
	max-height: 74vh;
	overflow: hidden;
	background: #ddd;
}
.mmv2-hero__slide img { width: 100%; height: 100%; object-fit: cover; }
.mmv2-hero__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 34px; height: 34px;
	border-radius: 50%;
	border: 0;
	background: var(--mmv2-black);
	color: #fff;
	display: grid;
	place-items: center;
}
.mmv2-hero__nav svg { width: 12px; height: 12px; }
.mmv2-hero__nav--prev { left: 10px; }
.mmv2-hero__nav--next { right: 10px; }
.mmv2-hero__dots {
	display: flex;
	justify-content: center;
	gap: 7px;
	padding-top: 16px;
}
.mmv2-hero__dots .swiper-pagination-bullet {
	width: 6px; height: 6px;
	background: #b7b7b7;
	opacity: 1;
	margin: 0 !important;
}
.mmv2-hero__dots .swiper-pagination-bullet-active { background: var(--mmv2-black); }

/* ============================= 商品カード v2 ============================= */
.mmv2-card {
	background: var(--mmv2-white);
	border-radius: var(--mmv2-radius);
	padding: 14px 14px 18px;
	display: flex;
	flex-direction: column;
	height: 100%;
	position: relative;
}
.mmv2-card__imgwrap {
	position: relative;
	aspect-ratio: 1 / 1;
	background: #f7f7f7;
	border-radius: 6px;
	overflow: hidden;
	display: grid;
	place-items: center;
}
.mmv2-card__imgwrap img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.mmv2-card__wish {
	position: absolute;
	top: 10px; right: 10px;
	z-index: 2;
	background: none; border: 0; padding: 4px;
	color: #b7b7b7;
}
.mmv2-card__wish svg { width: 18px; height: 16px; }
.mmv2-card__wish.is-active, .mmv2-card__wish:hover { color: var(--mmv2-red); }
.mmv2-card__chips { display: flex; gap: 6px; margin-top: 12px; flex-wrap: wrap; }
.mmv2-chip {
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	padding: 5px 9px;
	border-radius: 3px;
	background: var(--mmv2-chip-bg);
	color: var(--mmv2-ink);
	font-family: var(--mmv2-font-en);
}
.mmv2-chip--sale { background: var(--mmv2-red); color: #fff; }
.mmv2-card__title {
	font-family: var(--mmv2-font-en);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .02em;
	margin-top: 10px;
	color: var(--mmv2-ink);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.mmv2-card__price {
	font-family: var(--mmv2-font-en);
	font-size: 13px;
	color: var(--mmv2-gray-dark);
	margin-top: 5px;
}
.mmv2-card__price del { color: #b7b7b7; margin-right: 6px; }
.mmv2-card__price ins { text-decoration: none; color: var(--mmv2-red); }
/* 星は共通の .mm-card-rating（mymoods-stars.css / inc/reviews.php）。件数だけ v2 の字体に寄せる。 */
.mmv2-card .mm-card-rating__count { color: var(--mmv2-gray); font-family: var(--mmv2-font-en); }
.mmv2-card__cta { margin-top: auto; padding-top: 14px; }
.mmv2-card__cta .mmv2-pill {
	width: 100%;
	padding-block: 11px;
	font-size: 13px;
}
.mmv2-card__cta .is-disabled { background: #d4d4d4; color: #fff; pointer-events: none; }

/* カードカルーセル */
.mmv2-cards-swiper { overflow: hidden; }
.mmv2-cards-swiper .swiper-slide { height: auto; display: flex; }
.mmv2-cards-swiper .mmv2-card { width: 100%; height: auto; }

/* ============================= LINEUP タイル ============================= */
.mmv2-lineup__grid { display: grid; gap: 18px; }
.mmv2-lineup__grid--2 { grid-template-columns: 1fr 1fr; }
.mmv2-lineup__grid--4 { grid-template-columns: repeat(4, 1fr); }
.mmv2-lineup__grid + .mmv2-lineup__grid { margin-top: 18px; }
.mmv2-tile {
	position: relative;
	border-radius: 2px;
	overflow: hidden;
	color: #fff;
	display: block;
	background: #222;
}
.mmv2-tile--wide { aspect-ratio: 900 / 620; }
.mmv2-tile--tall { aspect-ratio: 440 / 620; }
.mmv2-tile > img {
	position: absolute; inset: 0;
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .5s ease;
}
.mmv2-tile:hover > img { transform: scale(1.04); }
.mmv2-tile::after {
	content: "";
	position: absolute; inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,.85) 0%, rgba(0,0,0,.55) 25%, rgba(0,0,0,.15) 50%, rgba(0,0,0,0) 70%);
}
.mmv2-tile__body {
	position: absolute;
	left: 26px; right: 26px; bottom: 22px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 22px;
}
.mmv2-tile h3.mmv2-tile__title {
	font-family: var(--mmv2-font-en);
	font-size: clamp(18px, 1.5vw, 27px);
	font-weight: 700;
	letter-spacing: .01em;
	margin: 0;
	white-space: nowrap;
	color: #fff;
	line-height: 1.2;
	flex-shrink: 0;
}
.mmv2-tile__desc {
	font-size: 11px;
	line-height: 1.5;
	color: #fff;
	opacity: .95;
	max-width: 34em;
	text-align: right;
	text-wrap: balance;
}
.mmv2-tile--tall .mmv2-tile__body { flex-direction: column; align-items: flex-start; gap: 4px; }
.mmv2-tile--tall h3.mmv2-tile__title { white-space: normal; line-height: 1.25; }

/* ============================= NEWS ============================= */
.mmv2-news__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}
.mmv2-news-card { display: block; }
.mmv2-news-card__img {
	aspect-ratio: 4 / 3;
	background: #a9a9a9;
	border-radius: 2px;
	overflow: hidden;
}
.mmv2-news-card__img img { width: 100%; height: 100%; object-fit: cover; }
.mmv2-news-card__title {
	font-size: 13px;
	line-height: 1.75;
	margin-top: 12px;
	color: var(--mmv2-ink);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.mmv2-news-card__date {
	font-family: var(--mmv2-font-en);
	font-size: 12px;
	color: var(--mmv2-gray);
	margin-top: 8px;
}

/* ============================= フッター + EXCLUSIVES ============================= */
.mmv2-footer {
	background: var(--mmv2-dark);
	color: #fff;
	/*margin-top: 56px;*/
	position: relative;
	overflow: hidden;
}
.mmv2-exclusives {
	background: var(--mmv2-panel);
	border-radius: 8px;
	padding: 30px 34px;
	display: grid;
	grid-template-columns: auto repeat(4, 1fr);
	gap: 30px;
	align-items: center;
	margin-top: 56px;
	position: relative;
	z-index: 2;
}
.mmv2-exclusives__head h2 {
	font-family: var(--mmv2-font-en);
	font-size: 21px;
	font-weight: 700;
	letter-spacing: .02em;
	margin: 0 0 6px;
	color: #fff;
}
.mmv2-exclusives__head p { font-size: 11px; color: #b7b7b7; margin: 0; }
.mmv2-exclusives__item { display: flex; align-items: center; gap: 14px; }
.mmv2-exclusives__item img { width: 44px; height: 44px; }
.mmv2-exclusives__item p { font-size: 13px; font-weight: 700; line-height: 1.6; margin: 0; }

.mmv2-footer__cols {
	display: grid;
	grid-template-columns: 1.4fr 1.4fr 1.4fr .8fr;
	gap: 40px;
	padding-block: 48px 40px;
	position: relative;
	z-index: 2;
}
.mmv2-footer__label {
	font-family: var(--mmv2-font-en);
	font-size: 12px;
	letter-spacing: .08em;
	color: #8e8a8a;
	text-transform: uppercase;
	margin: 0 0 14px;
}
.mmv2-footer__links {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 18px;
	list-style: none;
	margin: 0; padding: 0;
}
.mmv2-footer__links--single { grid-template-columns: 1fr; }
.mmv2-footer__links a {
	display: block;
	font-size: 12.5px;
	line-height: 2.4;
	color: #e6e6e6;
}
.mmv2-footer__links a:hover { color: var(--mmv2-green); }
.mmv2-footer__sns { display: flex; gap: 18px; margin-bottom: 18px; }
.mmv2-footer__sns img { width: 17px; height: 17px; filter: brightness(0) invert(1); }
.mmv2-footer__sns a:hover img { filter: brightness(0) invert(.7); }
.mmv2-footer__copy { font-family: var(--mmv2-font-en); font-size: 12px; color: #b7b7b7; }
.mmv2-footer__watermark {
	position: relative;
	z-index: 1;
	margin-top: 10px;
	overflow: hidden;
	max-height: 190px;
}
.mmv2-footer__watermark img {
	width: 102%;
	max-width: none;
	margin-inline: -1%;
	filter: brightness(0) invert(.16);
	transform: translateY(24%);
}

/* ============================= 浮遊要素 ============================= */
.mmv2-line-float {
	position: fixed;
	left: 18px; bottom: 18px;
	z-index: 40;
	display: flex;
	align-items: center;
	gap: 8px;
	background: var(--mmv2-line);
	color: #fff;
	border-radius: 999px;
	padding: 9px 14px;
	font-size: 13px;
	font-weight: 700;
	box-shadow: 0 4px 14px rgba(0,0,0,.18);
}
.mmv2-line-float img { width: 20px; height: 20px; filter: brightness(0) invert(1); }
.mmv2-line-float__close {
	background: rgba(255,255,255,.25);
	border: 0;
	width: 18px; height: 18px;
	border-radius: 50%;
	color: #fff;
	font-size: 11px;
	line-height: 1;
	display: grid;
	place-items: center;
	margin-left: 2px;
}
.mmv2-chat-float {
	position: fixed;
	right: 18px; bottom: 18px;
	z-index: 40;
	width: 46px; height: 46px;
	border-radius: 50%;
	background: var(--mmv2-black);
	display: grid;
	place-items: center;
	box-shadow: 0 4px 14px rgba(0,0,0,.25);
}
.mmv2-chat-float img { width: 20px; height: 20px; filter: brightness(0) invert(1); }

/* ============================= 年齢認証 v2 ============================= */
.mmv2 .age-verification-overlay {
	position: fixed; inset: 0; z-index: 200;
	background: #fff;
	overflow-y: auto;
}
.mmv2 .age-verification-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	min-height: 100vh;
}
.mmv2 .age-verification-content {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 56px 32px;
	background:
		linear-gradient(45deg, rgba(2,2,2,.16) 25%, transparent 25%, transparent 75%, rgba(2,2,2,.16) 75%),
		linear-gradient(45deg, rgba(2,2,2,.10) 25%, transparent 25%, transparent 75%, rgba(2,2,2,.10) 75%),
		#cfcfcf;
	background-size: 140px 140px;
	background-position: 0 0, 70px 70px;
}
.mmv2 .age-verification-inner {
	max-width: 560px;
	text-align: center;
}
.mmv2 .age-verification-logo img { margin-inline: auto; width: 300px; height: auto; }
.mmv2 .age-verification-text { margin-top: 34px; font-size: 15px; font-weight: 700; line-height: 2; }
.mmv2 .age-verification-text p { margin: 0; }
.mmv2 .age-verification-actions {
	display: flex;
	gap: 18px;
	justify-content: center;
	margin-top: 30px;
}
.mmv2 .btn-age-yes, .mmv2 .btn-age-no {
	border: 0;
	border-radius: 999px;
	min-width: 220px;
	padding: 15px 20px;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
}
.mmv2 .btn-age-yes { background: var(--mmv2-green); }
.mmv2 .btn-age-yes:hover { background: var(--mmv2-green-dark); }
.mmv2 .btn-age-no { background: #a5a5a5; }
.mmv2 .age-verification-notice { margin-top: 30px; font-size: 12.5px; line-height: 2; color: var(--mmv2-ink); }
.mmv2 .age-verification-notice p { margin: 0; }
.mmv2 .age-verification-notice .notice-link { text-decoration: underline; text-underline-offset: 2px; }
.mmv2-age-delivery { margin-top: 40px; }
.mmv2-age-delivery__title {
	font-family: var(--mmv2-font-en);
	font-size: 21px;
	font-weight: 700;
	letter-spacing: .04em;
	color: var(--mmv2-ink);
	margin: 0 0 20px;
}
.mmv2-age-delivery__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.mmv2-age-delivery__card {
	background: #fff;
	border-radius: 8px;
	padding: 22px 16px;
	font-size: 11.5px;
	line-height: 1.9;
	text-align: left;
}
.mmv2-age-delivery__card img { width: 34px; height: 34px; margin-bottom: 12px; }
.mmv2 .age-verification-footer { margin-top: 36px; font-size: 11px; color: #3b5bd7; }
.mmv2 .age-verification-footer p { margin: 0; line-height: 1.9; }
.mmv2 .age-verification-image {
	display: block; /* base.css の div:empty{display:none} を打ち消す */
	background: url(v2/img/auth-bg.jpg) center / cover no-repeat;
	min-height: 100vh;
}

/* ============================= クッキーバナー ============================= */
.mmv2-cookiebar {
	position: fixed;
	left: 0; right: 0; bottom: 0;
	z-index: 210;
	background: #fff;
	box-shadow: 0 -3px 18px rgba(0,0,0,.12);
	display: none;
	align-items: center;
	gap: 24px;
	padding: 18px 32px;
}
.mmv2-cookiebar.is-visible { display: flex; }
.mmv2-cookiebar__text { flex: 1; font-size: 12.5px; line-height: 1.9; color: #3b5bd7; margin: 0; }
.mmv2-cookiebar__text a { color: inherit; text-decoration: underline; }
.mmv2-cookiebar__settings {
	background: none; border: 0;
	font-size: 12.5px;
	color: var(--mmv2-ink);
	white-space: nowrap;
}
.mmv2-cookiebar__accept {
	white-space: nowrap;
	padding: 13px 26px;
	font-size: 13px;
}

/* ============================= レスポンシブ ============================= */
@media (max-width: 1100px) {
	.mmv2-lineup__grid--4 { grid-template-columns: 1fr 1fr; }
	.mmv2-news__grid { grid-template-columns: repeat(2, 1fr); }
	.mmv2-exclusives { grid-template-columns: 1fr 1fr; }
	.mmv2-exclusives__head { grid-column: 1 / -1; }
	.mmv2-footer__cols { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 767px) {
	.mmv2-container { padding-inline: 16px; }
	.mmv2-announce__inner { padding-inline: 36px; }
	.mmv2-announce__arrow--prev { left: 8px; }
	.mmv2-announce__arrow--next { right: 8px; }
	.mmv2-announce__msg { font-size: 10.5px; }

	.mmv2-header__inner { height: 56px; padding-inline: 16px; grid-template-columns: auto 1fr auto; }
	.mmv2-header__left .mmv2-pill,
	.mmv2-header__right .mmv2-pill,
	.mmv2-header__right .mmv2-iconbtn--pc { display: none; }
	.mmv2-header__burger { order: 3; margin-left: 8px; margin-right: -6px; }
	.mmv2-header__logo { justify-self: start; }
	.mmv2-header__logo img { height: 26px; }
	.mmv2-header__left { order: 2; }
	.mmv2-header__right { gap: 12px; }

	.mmv2-section { padding-block: 30px; }
	.mmv2-hero { padding-top: 0; }
	.mmv2-hero .mmv2-container { padding-inline: 0; }
	.mmv2-hero__dots { padding-top: 12px; }

	.mmv2-sp-pills {
		display: flex;
		gap: 10px;
		background: var(--mmv2-black);
		padding: 12px 16px;
	}
	.mmv2-sp-pills .mmv2-pill { flex: 1; padding-block: 12px; }
	.mmv2-sp-pills .mmv2-pill--dark { background: transparent; color: #fff; border: 1px solid #4a4a4a; }

	.mmv2-lineup__grid--2 { grid-template-columns: 1fr; }
	.mmv2-lineup__grid--4 { grid-template-columns: 1fr 1fr; }
	.mmv2-lineup__grid, .mmv2-lineup__grid + .mmv2-lineup__grid { gap: 10px; margin-top: 10px; }
	.mmv2-tile__body { left: 16px; right: 16px; bottom: 14px; }
	.mmv2-tile--wide .mmv2-tile__body { flex-direction: column; align-items: flex-start; gap: 6px; }

	.mmv2-news__grid { gap: 12px; }
	.mmv2-news-card__title { font-size: 12px; }

	.mmv2-exclusives {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 24px 20px;
		margin-top: 36px;
	}
	.mmv2-footer__cols { grid-template-columns: 1fr; gap: 30px; padding-block: 36px 30px; }
	.mmv2-footer { margin-top: 36px; }

	.mmv2 .age-verification-wrapper { grid-template-columns: 1fr; }
	.mmv2 .age-verification-image { min-height: 40vh; order: -1; }
	.mmv2 .age-verification-content { padding: 40px 20px; }
	.mmv2 .age-verification-actions { flex-direction: column; align-items: stretch; }
	.mmv2-age-delivery__cards { grid-template-columns: 1fr; }
	.mmv2-cookiebar { flex-wrap: wrap; gap: 12px; padding: 16px; }

	.mmv2-line-float { left: 10px; bottom: 10px; font-size: 12px; }
	.mmv2-chat-float { right: 10px; bottom: 10px; }
}
