@charset "utf-8";
/* =========================================================
   202610new / layout.css
   全ページで読む：色の定義・共通部品・ヘッダー・フッター
   ★旧デザインのページ（202304new の CSS を読むページ）でも読む。
     旧 common.css の `* { font-family; color }` `a:hover * { opacity }` などに
     負けないよう、このファイルの中だけで完結させる（下の「旧CSSへの防御」）。
   ★クラス名は必ず wp- で始める（旧CSSと衝突させない／ad- banner は広告ブロッカーに消される）
   ========================================================= */

:root {
	--wp-green: #217611;          /* メインカラー（ボタンの緑） */
	--wp-green-hover: #3a9a27;    /* ホバー：背景色を 10～20% 明るく */
	--wp-green-light: #8fba89;    /* ご利用ガイドのアイコンの丸 */
	--wp-text: #333333;
	--wp-bg: #ffffff;
	--wp-bg-news: #ecf6ea;        /* お知らせ背景 */
	--wp-bg-popular: #f0ffec;     /* カテゴリ別 人気の商品 */
	--wp-bg-gray: #f5f5f5;        /* ご利用ガイド */
	--wp-bg-bar: #f7f7f7;         /* 即日出荷・お支払いの帯 */
	--wp-bg-footer: #e7e7e7;
	--wp-red: #c40d12;
	--wp-brown: #a97f1d;          /* フードのボタン */
	--wp-brown-hover: #c49a36;
	--wp-orange: #fdaf05;
	--wp-orange-hover: #ffc43d;
	--wp-orange-deep: #fe7815;
	--wp-orange-deep-hover: #ff9442;
	--wp-cream: #fff5dc;
	--wp-cream-hover: #fffaec;
	--wp-line: #c9c9c9;
	--wp-shadow: 0 3px 12px rgba(0, 0, 0, .10);
	--wp-radius: 12px;
	--wp-font: "Google Sans Flex", "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--wp-font-ja: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--wp-font-mincho: "Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;
	--wp-max: 1472px;             /* 現行サイトと同じ最大幅（PSD の注記） */
	--wp-gutter: 24px;
}
@media (max-width: 767px) {
	/* スマホの文字は PSD 実寸から一律 20% 大きく（2026-10-08 kanさん 指示）。倍率はここ1か所 */
	:root { --wp-gutter: 10px; --wp-sp-fs: 1.2; }
}

/* ---------- 旧CSSへの防御（旧デザインのページに載せたとき用） ---------- */

.wp-header, .wp-footer, .wp-pagetop { font-family: var(--wp-font); color: var(--wp-text); font-size: 16px; line-height: 1.6; text-align: left; }
.wp-header *, .wp-footer *, .wp-pagetop * { font-family: inherit; color: inherit; box-sizing: border-box; }
.wp-header a:hover, .wp-header a:hover *, .wp-footer a:hover, .wp-footer a:hover *, .wp-pagetop:hover, .wp-pagetop:hover * { opacity: 1; filter: none; }
/* ★base.css の `.wp-body ul { margin:0; padding:0 }` と同じ詳細度（0,1,1）で書く。
     :where() で 0,1,0 にすると、旧デザインのページでだけ .wp-inner の左右の余白が ul に効き、
     新TOP（base.css を読む）とメニューの幅が食い違う（2026-10-10 に実測して直した） */
.wp-header h1, .wp-header h2, .wp-header h3, .wp-header p, .wp-header ul,
.wp-footer h1, .wp-footer h2, .wp-footer h3, .wp-footer p, .wp-footer ul { margin: 0; padding: 0; }
.wp-header :where(form) { margin: 0; padding: 0; }
/* 旧CSSの `h2 { font-size; line-height }` `h3 { width:980px; border-bottom }` などを打ち消す（詳細度 0,1,0。後ろのクラス指定が勝つ） */
.wp-header :where(h1, h2, h3), .wp-footer :where(h1, h2, h3) { width: auto; border: 0; background: none; line-height: inherit; }
.wp-header :where(ul), .wp-footer :where(ul) { list-style: none; }
.wp-header a, .wp-footer a, a.wp-pagetop { text-decoration: none; }
.wp-header img, .wp-footer img { max-width: 100%; height: auto; vertical-align: middle; border: 0; }
.wp-header button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
.wp-header [hidden], .wp-footer [hidden] { display: none !important; }

/* ---------- 共通の部品 ---------- */

.wp-inner {
	max-width: var(--wp-max);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--wp-gutter);
	padding-right: var(--wp-gutter);
	box-sizing: content-box !important;
}

.wp-en { font-family: var(--wp-font); }

.wp-visually-hidden {
	position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

.wp-svg { display: inline-block; width: 1em; height: 1em; vertical-align: -.125em; flex-shrink: 0; }

.wp-sp-br, .wp-sp-inline { display: none; }

/* ボタン（角丸・ホバーで背景を明るく） */
.wp-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: .9em;
	min-height: 48px; padding: 0 2em;
	background: var(--wp-green); color: #fff !important;
	border-radius: 999px;
	font-family: var(--wp-font-ja); font-size: 16px; font-weight: 700; line-height: 1.2;
	transition: background-color .2s;
}
.wp-btn * { color: #fff !important; }
.wp-btn .wp-svg { width: .75em; height: .75em; }
.wp-btn--brown { background: var(--wp-brown); }
.wp-btn--s { min-width: 253px; }
a.wp-btn:hover, a:hover .wp-btn { background: var(--wp-green-hover); }
a:hover .wp-btn--brown { background: var(--wp-brown-hover); }

/* =========================================================
   ヘッダー
   ========================================================= */

.wp-header { background: #fff; }

.wp-header__h1 { font-size: 12px; line-height: 1.5; color: #555; }
.wp-header__h1 .wp-inner { text-align: right; padding-top: 4px; }
.wp-header__h1 h1, .wp-header__h1 span { display: inline; font-size: inherit; font-weight: 400; color: #555; }

.wp-header__main { display: flex; align-items: center; min-height: 118px; }
.wp-header__12th { flex: 0 0 auto; width: 101px; margin-right: 6px; }
.wp-header__logo { flex: 0 0 auto; width: 235px; }
.wp-header__tagline { flex: 0 0 auto; margin-left: 10px !important; font-size: 13px; line-height: 1.38; color: #555; }

.wp-header__search { flex: 0 1 470px; min-width: 0; margin-left: auto; margin-right: 18px; } /* min-width:0 が無いと入力欄の既定の幅より縮まず、768～913px で買い物かごが右へ 17px はみ出す */
.wp-search { display: flex; height: 50px; border: 2px solid var(--wp-green); border-radius: 999px; overflow: hidden; background: #fff; }
.wp-search__input { flex: 1 1 auto; min-width: 0; border: 0; outline: 0; padding: 0 22px; font-family: var(--wp-font-ja); font-size: 16px; color: var(--wp-text); background: transparent; }
.wp-search__input::placeholder { color: #888; }
.wp-header .wp-search__btn { flex: 0 0 70px; display: flex; align-items: center; justify-content: center; background: var(--wp-green); color: #fff; font-size: 26px; transition: background-color .2s; }
.wp-header .wp-search__btn:hover { background: var(--wp-green-hover); }
.wp-search:focus-within { box-shadow: 0 0 0 3px rgba(33, 118, 17, .2); }

.wp-kw { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin-top: 10px; font-family: var(--wp-font-ja); font-size: 13px; }
.wp-kw__label { margin-right: 4px; color: #555; }
.wp-header .wp-kw__chip { display: inline-block; padding: 1px 10px; border: 2px solid #f5c045; border-radius: 999px; background: #fffbea; color: #444; line-height: 1.5; transition: background-color .2s; }
.wp-header .wp-kw__chip:hover { background: #fff3c4; }

.wp-header__btns { flex: 0 0 auto; display: flex; gap: 17px; }
.wp-header__btns a, .wp-header__btns button {
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
	width: 109px; height: 89px; border-radius: 6px; box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
	font-family: var(--wp-font-ja); font-size: 14px; font-weight: 700; line-height: 1;
	transition: background-color .2s;
}
.wp-header__btns .wp-svg { width: 30px; height: 30px; }
.wp-header__btn-member a { background: var(--wp-cream); color: #222; }
.wp-header__btn-member a:hover { background: var(--wp-cream-hover); }
.wp-header__btn-login a { background: var(--wp-orange); color: #fff; }
.wp-header__btn-login a:hover { background: var(--wp-orange-hover); }
.wp-header__btn-cart a { background: var(--wp-orange-deep); color: #fff; }
.wp-header__btn-cart a:hover { background: var(--wp-orange-deep-hover); }
.wp-header__btn-menu { display: none; }

/* グローバルナビ */
.wp-gnav { background: var(--wp-green); margin-top: 12px; }
.wp-gnav ul { display: flex; }
.wp-gnav li { flex: 1 1 0; position: relative; }
.wp-gnav li::before, .wp-gnav li:last-child::after {
	content: ""; position: absolute; top: 50%; left: 0; height: 26px; margin-top: -13px;
	border-left: 1px dashed rgba(255, 255, 255, .8);
}
.wp-gnav li:last-child::after { left: auto; right: 0; }
.wp-gnav a { display: flex; align-items: center; justify-content: center; height: 70px; padding: 0 8px; color: #fff; font-family: var(--wp-font-ja); font-size: 18px; font-weight: 700; text-align: center; line-height: 1.3; transition: background-color .2s; }
.wp-gnav a:hover { background: var(--wp-green-hover); }

.wp-spmenu { display: none; }

/* 即日出荷・お支払いの帯 */
.wp-infobar { display: flex; gap: 9px; margin-top: 18px !important; }
.wp-infobar > div { display: flex; align-items: center; background: var(--wp-bg-bar); min-height: 83px; padding: 8px 18px; font-family: var(--wp-font-ja); }
.wp-infobar__ship { flex: 0 0 53%; gap: 6px; }
.wp-infobar__pay { flex: 1 1 auto; gap: 14px; }
.wp-infobar__ico { flex: 0 0 auto; }
.wp-infobar__ship .wp-infobar__ico { width: 96px; }
.wp-infobar__pay .wp-infobar__ico { width: 48px; }
.wp-infobar__lead { font-size: 22px; font-weight: 900; white-space: nowrap; }
.wp-infobar__lead .wp-en { font-size: 1.25em; font-weight: 700; }
.wp-header .wp-infobar__big { font-size: 45px; font-weight: 900; line-height: 1; color: var(--wp-red); white-space: nowrap; letter-spacing: .02em; }
.wp-infobar__note { margin-left: 8px !important; font-size: 13px; line-height: 1.35; }
.wp-infobar__note strong { text-decoration: underline; }
.wp-infobar__pay p { font-size: 16px; line-height: 1.6; }
.wp-infobar__pay em { font-style: normal; font-size: 1.12em; font-weight: 500; }

/* ---------- タブレット（PC 表示のまま詰める） ---------- */

@media (max-width: 1279px) {
	.wp-header__tagline { display: none; }
	.wp-header__btns { gap: 10px; }
	.wp-header__btns a { width: 92px; height: 80px; font-size: 13px; }
	.wp-gnav a { font-size: 15px; }
	.wp-infobar { flex-direction: column; }
	.wp-infobar__ship { flex-basis: auto; justify-content: center; }
	.wp-infobar__pay { justify-content: center; }
}
@media (max-width: 1023px) and (min-width: 768px) {
	.wp-header__12th { width: 70px; }
	.wp-header__logo { width: 170px; }
	.wp-kw { display: none; }
	.wp-gnav a { font-size: 13px; height: 56px; }
}

/* ---------- スマホ ---------- */

@media (max-width: 767px) {
	.wp-sp-br, .wp-sp-inline { display: inline; }
	.wp-pc-br, .wp-pc-inline { display: none; }

	/* ヘッダーは幅に余裕が無い（ボタン 56px 幅・帯）ので 20% 拡大の対象外。メニューの中だけ拡大する */
	.wp-header { --wp-sp-fs: 1; }
	.wp-spmenu { --wp-sp-fs: 1.2; }
	.wp-header__h1 { font-size: calc(10px * var(--wp-sp-fs)); }
	.wp-header__h1 .wp-inner { padding-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

	.wp-header__main { min-height: 0; padding-top: 6px; padding-bottom: 6px; }
	.wp-header__12th { width: 50px; margin-right: 4px; }
	.wp-header__logo { width: 118px; }
	.wp-header__tagline, .wp-header__search, .wp-gnav { display: none; }

	.wp-header__btns { flex: 1 1 auto; margin-left: 8px; gap: 5px; }
	.wp-header__btns li { flex: 1 1 0; }
	.wp-header__btn-member { display: none; }
	.wp-header__btn-menu { display: block; }
	.wp-header__btns a, .wp-header__btns button { width: 100%; height: 56px; gap: 4px; font-size: calc(11.5px * var(--wp-sp-fs)); white-space: nowrap; }
	.wp-header__btns .wp-svg { width: 25px; height: 25px; }
	.wp-header__btn-menu button { background: var(--wp-green); color: #fff; font-family: var(--wp-font); font-size: calc(10px * var(--wp-sp-fs)); letter-spacing: .05em; }
	.wp-header__btn-menu button:hover { background: var(--wp-green-hover); }
	.wp-header__btn-menu span { display: block; line-height: 1; }
	.wp-header__btn-menu .wp-header__ico-close { display: none; }
	.wp-header__btn-menu button[aria-expanded="true"] .wp-header__ico-open { display: none; }
	.wp-header__btn-menu button[aria-expanded="true"] .wp-header__ico-close { display: block; }

	/* スマホのメニュー */
	.wp-spmenu { display: block; background: #fff; border-top: 3px solid var(--wp-green); padding: 14px var(--wp-gutter) 20px; box-shadow: 0 6px 12px rgba(0, 0, 0, .12); }
	.wp-spmenu .wp-search { height: 44px; }
	.wp-spmenu .wp-search__input { font-size: calc(16px * var(--wp-sp-fs)); padding: 0 14px; } /* 16px 未満だと iPhone がフォーカス時に拡大する */
	.wp-spmenu .wp-search__btn { flex-basis: 54px; font-size: calc(22px * var(--wp-sp-fs)); }
	.wp-spmenu .wp-kw { font-size: calc(12px * var(--wp-sp-fs)); }
	.wp-spmenu__list { margin-top: 14px !important; border-top: 1px solid #ddd; }
	.wp-spmenu__list a { display: flex; align-items: center; justify-content: space-between; padding: 13px 6px; border-bottom: 1px solid #ddd; font-family: var(--wp-font-ja); font-size: calc(15px * var(--wp-sp-fs)); font-weight: 700; }
	.wp-spmenu__list .wp-svg { width: 12px; height: 12px; color: var(--wp-green); }

	/* 帯 */
	.wp-infobar { gap: 8px; margin-top: 4px !important; }
	.wp-infobar > div { min-height: 0; padding: 7px 10px; }
	.wp-infobar__ship { justify-content: flex-start !important; gap: 4px; }
	.wp-infobar__ship .wp-infobar__ico { width: 38px; }
	.wp-infobar__lead { font-size: calc(13px * var(--wp-sp-fs)); line-height: 1.3; }
	.wp-header .wp-infobar__big { font-size: calc(27px * var(--wp-sp-fs)); }
	.wp-infobar__note { margin-left: 4px !important; font-size: calc(10px * var(--wp-sp-fs)); }
	.wp-infobar__pay { gap: 10px; justify-content: flex-start !important; }
	.wp-infobar__pay .wp-infobar__ico { width: 25px; }
	.wp-infobar__pay p { font-size: calc(13.5px * var(--wp-sp-fs)); line-height: 1.5; }
	.wp-header .wp-infobar__pay em { color: var(--wp-red); font-size: 1.18em; }
}

/* =========================================================
   フッター
   ========================================================= */

.wp-footer { background: var(--wp-bg-footer); margin-top: 0; }
.wp-footer__guide { padding: 80px 0 40px; }
.wp-footer__cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; align-items: start; }
.wp-footer__col { display: flex; flex-direction: column; gap: 12px; }

.wp-fcard { display: block; background: #fff; padding: 28px 31px 30px !important; font-family: var(--wp-font-ja); font-size: 17px; line-height: 1.6; }
.wp-fcard p { margin: 0 0 14px !important; }
.wp-fcard__ttl { margin: 0 0 18px !important; padding-bottom: 12px !important; border-bottom: 3px solid var(--wp-green); color: var(--wp-green); font-size: 22px; font-weight: 700; text-align: center; line-height: 1.4; }
.wp-fcard__ttl:not(:first-child) { margin-top: 26px !important; }
.wp-fcard__cards { display: flex; flex-wrap: wrap; gap: 9px; margin: 4px 0 16px !important; }
.wp-fcard__cards li { width: 62px; }
.wp-fcard__sub { color: #555; font-size: 16px; }
.wp-fcard .wp-btn { display: flex; width: 253px; margin: 18px auto 0; }
.wp-fcard__promo { color: var(--wp-red); font-size: 23px; font-weight: 700; text-align: center; }
.wp-fcard__list li { font-weight: 500; }
.wp-fcard__list li.is-red { color: var(--wp-red); }
.wp-fcard__list { margin-bottom: 4px !important; }

/* お客様サポート */
.wp-fcard__member { display: flex; gap: 6px; margin-bottom: 10px; }
.wp-mbtn { flex: 1 1 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 85px; border-radius: 8px; box-shadow: 0 2px 6px rgba(0, 0, 0, .15); font-size: 20px; font-weight: 900; line-height: 1.2; text-align: center; transition: background-color .2s; }
.wp-mbtn small { font-size: 13.5px; font-weight: 700; }
.wp-mbtn--login { background: var(--wp-orange); color: #fff !important; }
.wp-mbtn--login:hover { background: var(--wp-orange-hover); }
.wp-mbtn--regist { background: var(--wp-cream); color: #333 !important; }
.wp-mbtn--regist:hover { background: var(--wp-cream-hover); }
.wp-fcard__center { text-align: center; }
.wp-fcard__small { font-size: 15px; color: #555; }
.wp-fcard__contact { color: var(--wp-green); font-size: 16px; font-weight: 700; margin-top: 20px !important; margin-bottom: 8px !important; }
.wp-fcard__tel-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.wp-fcard__tel a { display: flex; align-items: center; gap: 6px; color: var(--wp-green); font-size: 28px; font-weight: 700; line-height: 1.1; white-space: nowrap; }
.wp-fcard__tel .wp-svg { width: 22px; height: 22px; }
.wp-fcard__tel small { display: block; text-align: center; font-size: 12.5px; line-height: 1.3; color: #555; margin-top: 2px; }
.wp-obtn { display: inline-flex; align-items: center; gap: 6px; padding: 9px 14px; border: 2px solid var(--wp-green); border-radius: 999px; color: var(--wp-green) !important; font-size: 13.5px; font-weight: 700; white-space: nowrap; transition: background-color .2s; }
.wp-obtn:hover { background: #eef7ec; }
.wp-fcard__2col { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 22px; text-align: center; }
.wp-fcard__ttl2 { margin-bottom: 14px !important; padding-bottom: 8px !important; border-bottom: 3px solid var(--wp-green); color: var(--wp-green); font-size: 20px; font-weight: 700; }
.wp-cartbtn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: 100%; max-width: 209px; min-height: 58px; border-radius: 8px; background: var(--wp-orange); box-shadow: 0 2px 6px rgba(0, 0, 0, .15); color: #fff !important; font-size: 16px; font-weight: 700; transition: background-color .2s; }
.wp-cartbtn:hover { background: var(--wp-orange-hover); }
.wp-fcard__qa img { width: 110px; }

/* NPポイント */
.wp-fcard--np { display: flex !important; align-items: center; justify-content: space-between; gap: 10px; color: var(--wp-text); }
.wp-fcard--np__txt { display: flex; flex-direction: column; align-items: center; text-align: center; flex: 1 1 auto; }
.wp-fcard--np__lead { color: var(--wp-orange) !important; font-size: 17px; font-weight: 700; margin-bottom: 8px; }
.wp-fcard--np strong { font-size: 28px; font-weight: 700; line-height: 1.3; }
.wp-fcard--np__rate { font-size: 14px; font-weight: 700; margin-top: 6px; }
.wp-fcard--np img { width: 150px; flex: 0 0 auto; }
.wp-fcard--np:hover { box-shadow: 0 0 0 3px rgba(33, 118, 17, .25); }

/* リンク・商品名 */
.wp-footer__links { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 60px !important; font-family: var(--wp-font-ja); font-size: 15px; }
.wp-footer__links li + li { border-left: 1px solid #aaa; }
.wp-footer__links a { display: block; padding: 0 16px; line-height: 1.4; }
.wp-footer__links a:hover, .wp-footer__items a:hover { color: var(--wp-green); text-decoration: underline; }
.wp-footer__items { margin-top: 30px !important; font-family: var(--wp-font-ja); font-size: 15px; text-align: center; }
.wp-footer__items-ttl { margin: 28px 0 10px !important; }
.wp-footer__items ul { display: flex; flex-wrap: wrap; justify-content: center; row-gap: 6px; }
.wp-footer__items li { border-right: 1px solid #c4c4c4; }
.wp-footer__items li:last-child { border-right: 0; }
.wp-footer__items a { display: block; padding: 0 16px; line-height: 1.5; }

.wp-footer__bottom { background: var(--wp-green); color: #fff; padding: 22px 0; }
.wp-footer__bottom .wp-inner { display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto auto; align-items: center; max-width: 1050px; }
.wp-footer__logo { grid-row: 1 / 3; width: 185px; }
.wp-footer__maker { justify-self: end; display: inline-block; padding: 4px 14px; border: 1px solid #fff; color: #fff; font-family: var(--wp-font-ja); font-size: 15px; }
.wp-footer__copy { justify-self: end; margin-top: 14px; color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .05em; }

/* ページトップ */
a.wp-pagetop {
	position: fixed; right: 20px; bottom: 20px; z-index: 50;
	display: flex; align-items: center; justify-content: center;
	width: 56px; height: 56px; border-radius: 50%;
	background: var(--wp-green); color: #fff; font-size: 22px; box-shadow: 0 2px 8px rgba(0, 0, 0, .2);
	opacity: 0; visibility: hidden; transition: opacity .3s, visibility .3s, background-color .2s;
}
a.wp-pagetop * { color: #fff; }
a.wp-pagetop.is-show { opacity: 1; visibility: visible; }
a.wp-pagetop:hover { background: var(--wp-green-hover); }

#ss_gmo_img_wrapper_100-50_flash_ja { display: block; text-align: center; padding: 10px 0; background: #fff; }

@media (max-width: 1279px) {
	.wp-fcard { padding: 24px 20px 24px !important; font-size: 15px; }
	.wp-fcard__ttl { font-size: 18px; }
	.wp-mbtn { font-size: 16px; }
	.wp-fcard__tel a { font-size: 22px; }
	.wp-fcard__tel-row { flex-direction: column; align-items: center; }
}
@media (max-width: 1023px) and (min-width: 768px) {
	.wp-footer__cols { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 767px) {
	.wp-footer__guide { padding: 30px 0 20px; }
	.wp-footer__cols { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.wp-footer__col { gap: 8px; }
	.wp-fcard { padding: 16px 16px 18px !important; font-size: calc(12px * var(--wp-sp-fs)); }
	.wp-fcard p { margin-bottom: 8px !important; }
	.wp-fcard__ttl { font-size: calc(15px * var(--wp-sp-fs)); margin-bottom: 10px !important; padding-bottom: 6px !important; border-bottom-width: 2px; }
	.wp-fcard__ttl:not(:first-child) { margin-top: 18px !important; }
	.wp-fcard__cards { gap: 6px; justify-content: space-between; flex-wrap: nowrap; }
	.wp-fcard__cards li { width: auto; flex: 1 1 0; max-width: 50px; }
	.wp-fcard__sub { font-size: calc(11px * var(--wp-sp-fs)); }
	.wp-fcard .wp-btn { width: -webkit-fit-content; width: fit-content; min-width: 0; min-height: 30px; margin-top: 10px; font-size: calc(10px * var(--wp-sp-fs)); padding: 0 2.2em; gap: .9em; }
	.wp-fcard__promo { font-size: calc(14px * var(--wp-sp-fs)); }
	.wp-mbtn { min-height: 61px; font-size: calc(13px * var(--wp-sp-fs)); }
	.wp-mbtn small { font-size: calc(10px * var(--wp-sp-fs)); }
	.wp-fcard__member { gap: 13px; padding: 0 10px; }
	.wp-fcard__small { font-size: calc(10px * var(--wp-sp-fs)); }
	.wp-fcard__contact { font-size: calc(12px * var(--wp-sp-fs)); margin-top: 12px !important; }
	.wp-fcard__tel-row { flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: flex-start; }
	.wp-fcard__tel a { font-size: calc(21px * var(--wp-sp-fs)); }
	.wp-fcard__tel .wp-svg { width: 15px; height: 15px; }
	.wp-fcard__tel small { font-size: calc(10px * var(--wp-sp-fs)); }
	.wp-obtn { padding: 6px 10px; font-size: calc(10px * var(--wp-sp-fs)); }
	.wp-fcard__2col { gap: 15px; margin-top: 16px; }
	.wp-fcard__ttl2 { font-size: calc(15px * var(--wp-sp-fs)); border-bottom-width: 2px; padding-bottom: 4px !important; margin-bottom: 10px !important; }
	.wp-cartbtn { min-height: 41px; font-size: calc(12px * var(--wp-sp-fs)); }
	.wp-fcard__qa img { width: 69px; }
	.wp-fcard--np__lead { font-size: calc(11.5px * var(--wp-sp-fs)); margin-bottom: 4px; }
	.wp-fcard--np strong { font-size: calc(15px * var(--wp-sp-fs)); }
	.wp-fcard--np__rate { font-size: calc(12px * var(--wp-sp-fs)); }
	.wp-fcard--np img { width: 90px; }

	.wp-footer__links { margin-top: 30px !important; font-size: calc(12px * var(--wp-sp-fs)); row-gap: 12px; padding: 0 20px; }
	.wp-footer__links li { border: 0 !important; }
	.wp-footer__links { display: grid; grid-template-columns: auto auto; justify-content: center; }
	.wp-footer__links li:nth-child(odd) a { border-right: 1px solid #aaa; }
	.wp-footer__links a { padding: 0 10px; }
	.wp-footer__items { font-size: calc(12px * var(--wp-sp-fs)); }
	.wp-footer__items-ttl { font-size: calc(14px * var(--wp-sp-fs)); margin-top: 26px !important; }
	.wp-footer__items ul { display: grid; grid-template-columns: repeat(4, auto); justify-content: center; row-gap: 12px; }
	.wp-footer__items li { border: 0; }
	.wp-footer__items a { padding: 0 9px; }
	.wp-footer__items ul.is-long, .wp-footer__items-ttl:nth-of-type(-n+3) + ul { grid-template-columns: 1fr; }

	.wp-footer__bottom { padding: 24px 0 30px; }
	.wp-footer__bottom .wp-inner { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	.wp-footer__logo { grid-row: auto; width: 92px; }
	.wp-footer__maker { justify-self: center; margin-top: 16px; font-size: calc(12px * var(--wp-sp-fs)); padding: 4px 16px; }
	.wp-footer__copy { justify-self: center; font-size: calc(9.5px * var(--wp-sp-fs)); margin-top: 16px; }

	#ss_gmo_img_wrapper_100-50_flash_ja { display: none; } /* SSL サイトシールはスマホでは出さない（2026-10-08 kanさん 指示） */
	a.wp-pagetop { right: 12px; bottom: 12px; width: 46px; height: 46px; font-size: calc(18px * var(--wp-sp-fs)); }
}
