@charset "UTF-8";

/*
==================================================
 オススメマン 子テーマCSS 管理メモ
 2026-09-16 安全整理版

 【編集するときの検索キーワード】
 ・見出し                 → 「子テーマ用のスタイル」
 ・カテゴリー             → 「カテゴリーアイコン共通」
 ・ランキング旧h6         → 「ランキング　h6」
 ・通常テーブル           → 「5. テーブル」
 ・Pochipp                → 「Pochipp 商品ボックス」
 ・ページネーション       → 「ページネーション」
 ・モバイルヘッダー       → 「モバイル：スクロール量」
 ・商品スペック           → 「商品スペック：2カラムテーブル」
 ・評価基準               → 「ランキング採点基準：RATING GUIDE」
 ・おすすめ/もう一歩      → 「判断ポイント Ver.2」
 ・TOPへ戻る              → 「TOPへ戻るボタン」
 ・モバイルカテゴリー     → 「モバイル：カテゴリーから探す」
 ・Qoo10                  → 「Qoo10対応 本番完成版」
 ・セール                 → 「開催中のセール・キャンペーン」
 ・比較表                 → 「比較表 V2 統合完成版」
 ・目的別カード           → 「目的別商品カード Ver.3」

 【整理方針】
 ・既存ルールの順序は変更しない
 ・@media の構造は変更しない
 ・現行 Ver.2 / Ver.3 は変更しない
 ・今回は明確に旧版だった「おすすめポイント / もう一歩」のみ削除
==================================================
*/

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/* 見出し */
.article h1 {
  color: #333333;
  font-size: 22px;
}

.article h2 {
  position: relative;
  background-color: transparent !important;
  /* 背景を白（透明）にする */
  padding: 10px 0 10px 15px !important;
  /* 左側に少し余白をあける */
  color: #333333;
  font-size: 22px;
  font-weight: bold;
  border-left: none !important;
  /* 以前の太い左線を消す */
  border-bottom: 2px solid #e0e0e0 !important;
  /* 全体の細い下線（グレー） */
  border-radius: 0;
  /* 角丸をリセット */
  margin: 40px 0 20px !important;
}

/* 下線の左端だけ色を変える（緑のアクセント） */
.article h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  /* 親要素の下線に重ねる */
  width: 80px;
  /* 緑色の線の長さ */
  height: 2px;
  /* 緑色の線の太さ */
  background-color: #2ecc71 !important;
  /* アクセントカラー（緑） */
}

.article h3 {
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;

  margin: 32px 0 18px !important;
  padding: 0 !important;

  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

/* H4：左寄せ・複数行対応 */
.article h4 {
  display: block !important;
  text-align: left !important;
  width: 100% !important;
  margin: 40px 0 20px 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  clear: both !important;

  color: #333 !important;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8 !important;

  text-decoration: underline solid #333 2px !important;
  text-underline-offset: 0.3em;
  text-decoration-skip-ink: none;
}

.article h6 {
  font-size: 18px;
  border-bottom: none;
}

.related-entry-card-title,
.entry-card-title {
  -webkit-line-clamp: 2;
}

.related-entry-card-snippet,
.entry-card-snippet {
  -webkit-line-clamp: 2 !important;
}


/* 検索窓を丸くする */
input.search-edit {
  border-radius: 40px;
  /*角丸の大きさの指定*/
}

/* お問い合わせ必須フィールドのラベルスタイル */
.wpcf7-form .required {
  background-color: #ff0000;
  /* レッド */
  color: #ffffff;
  padding: 2px 5px;
  border-radius: 3px;
  margin-left: 10px;
  font-size: 12px;
}

#wpcf7-area input[type=”checkbox”],
#wpcf7-area input[type=”radio”] {
  appearance: auto;
}

.wpcf7 input[type="submit"] {
  width: 50%;
  padding: 15px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: none;
  background: #c8161d;
  color: #fff;
  transition: 0.3s;
  font-weight: bold;
  font-size: 16px;
}

.page .date-tags,
.page .author-info {
  display: none;
}

a {
  text-decoration: none;
}

.navi-footer-in a {
  font-size: 13px;
}

.copyright {
  font-size: 11px !important;
  /* コピーライトサイズ */
}

.pr-label {
  font-size: 10px !important;
  text-align: left;
  /* PRサイズ */
}

/* サイドバー見出し */
.sidebar h3 {
  background: transparent;
  /* 背景を透明にする */
}


/************************************
** 管理画面のカスタマイズから転記
************************************/

/* ========================================
 * カテゴリーアイコン共通
 * ======================================== */

.widget_categories ul li a::before {
  content: "" !important;
  display: inline-block !important;

  width: 26px !important;
  height: 26px !important;

  margin-right: 14px !important;

  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;

  vertical-align: middle !important;

  font-family: initial !important;
  font-weight: normal !important;
}

/* 記事本文内のバナー広告リンクを強制的に中央へ */
.entry-content a>img[width][height] {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100% !important;
  height: auto !important;
}

/*************************************************
 * サイドバー：カテゴリー一覧
 *************************************************/


/* ========================================
 * カテゴリー行 共通
 * ======================================== */

.widget_categories ul li a {
  display: flex;
  align-items: center;

  padding: 15px 1px 15px 10px;

  border-bottom: 1px dashed #CCCCCC;

  font-size: 14px !important;
  line-height: 1.45 !important;
}


/* カテゴリー名 */
#categories-6.widget_categories .list-item-caption {
  font-weight: 550 !important;
}


/* ========================================
 * 親カテゴリー：PNGアイコン
 * ======================================== */

#categories-6.widget_categories > ul > li > a::before {
  content: "" !important;

  display: inline-block !important;

  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  flex-basis: 34px !important;
  flex-shrink: 0 !important;

  margin-right: 14px !important;
  padding: 0 !important;

  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;

  font-family: initial !important;
  font-size: 0 !important;
  font-weight: normal !important;

  vertical-align: middle !important;
}


/* ========================================
 * 各カテゴリー：PNGアイコン
 * ======================================== */

/* おすすめランキング */
.widget_categories li.cat-item-85 > a::before {
  background-image: url("/wp-content/uploads/category-icons/01-ranking.png") !important;
}

/* セール・キャンペーン */
.widget_categories li.cat-item-12 > a::before {
  background-image: url("/wp-content/uploads/category-icons/02-campaign.png") !important;
}

/* 家電 */
.widget_categories li.cat-item-3 > a::before {
  background-image: url("/wp-content/uploads/category-icons/03-home-appliance.png") !important;
}

/* パソコン・周辺機器 */
.widget_categories li.cat-item-4 > a::before {
  background-image: url("/wp-content/uploads/category-icons/04-pc.png") !important;
}

/* ビューティー */
.widget_categories li.cat-item-6 > a::before {
  background-image: url("/wp-content/uploads/category-icons/05-beauty.png") !important;
}

/* ヘルスケア */
.widget_categories li.cat-item-7 > a::before {
  background-image: url("/wp-content/uploads/category-icons/06-healthcare.png") !important;
}

/* ファッション */
.widget_categories li.cat-item-25 > a::before {
  background-image: url("/wp-content/uploads/category-icons/07-fashion.png") !important;
}

/* ベビー・キッズ */
.widget_categories li.cat-item-16 > a::before {
  background-image: url("/wp-content/uploads/category-icons/08-kids.png") !important;
}

/* アウトドア・キャンプ */
.widget_categories li.cat-item-18 > a::before {
  background-image: url("/wp-content/uploads/category-icons/09-outdoor.png") !important;
}

/* インテリア・家具 */
.widget_categories li.cat-item-20 > a::before {
  background-image: url("/wp-content/uploads/category-icons/10-interior.png") !important;
}

/* ペット用品 */
.widget_categories li.cat-item-21 > a::before {
  background-image: url("/wp-content/uploads/category-icons/11-pet.png") !important;
}

/* 脱毛 */
.widget_categories li.cat-item-13 > a::before {
  background-image: url("/wp-content/uploads/category-icons/12-hair-removal.png") !important;
}

/* 旅行 */
.widget_categories li.cat-item-28 > a::before {
  background-image: url("/wp-content/uploads/category-icons/13-travel.png") !important;
}

/* 車・バイク */
.widget_categories li.cat-item-22 > a::before {
  background-image: url("/wp-content/uploads/category-icons/14-car-bike.png") !important;
}

/* インターネット回線 */
.widget_categories li.cat-item-10 > a::before {
  background-image: url("/wp-content/uploads/category-icons/15-internet.png") !important;
}

/* 食品 */
.widget_categories li.cat-item-41 > a::before {
  background-image: url("/wp-content/uploads/category-icons/16-food.png") !important;
}

/* ギフト・プレゼント */
.widget_categories li.cat-item-29 > a::before {
  background-image: url("/wp-content/uploads/category-icons/17-gift.png") !important;
}

/* コスメ・化粧品 */
.widget_categories li.cat-item-5 > a::before {
  background-image: url("/wp-content/uploads/category-icons/18-cosme.png") !important;
}

/* 釣り */
.widget_categories li.cat-item-23 > a::before {
  background-image: url("/wp-content/uploads/category-icons/19-fishing.png") !important;
}

/* スポーツ */
.widget_categories li.cat-item-24 > a::before {
  background-image: url("/wp-content/uploads/category-icons/20-sports.png") !important;
}

/* ドリンク・お酒 */
.widget_categories li.cat-item-17 > a::before {
  background-image: url("/wp-content/uploads/category-icons/21-drink.png") !important;
}

/* 就職・転職 */
.widget_categories li.cat-item-14 > a::before {
  background-image: url("/wp-content/uploads/category-icons/22-business.png") !important;
}

/* その他 */
.widget_categories li.cat-item-121 > a::before {
  background-image: url("/wp-content/uploads/category-icons/23-etc.png") !important;
}


/* ========================================
 * 子カテゴリー
 * ======================================== */

.widget_categories ul li ul li > a::before {
  content: "›" !important;

  background: none !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 16px !important;
  height: 20px !important;

  margin-right: 8px !important;
  padding: 0 !important;

  font-family: inherit !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  color: #888 !important;

  flex: 0 0 16px !important;
}


/* 子カテゴリー文字 */
.widget_categories ul li ul li > a {
  font-size: 13px !important;
  font-weight: 400 !important;
}


/* ========================================
 * 最初の親カテゴリー
 * ======================================== */

.widget_categories > ul > li:first-child > a {
  border-top: none !important;
}

/************************************
** SNS ボタンをまとめて丸くする
************************************/

/*シェア・フォローボタンの枠組み*/
.sns-share.ss-top .sns-share-buttons,
.sns-share.ss-bottom .sns-share-buttons,
.sns-follow.sf-bottom .sns-follow-buttons,
.sns-follow.sf-widget .sns-follow-buttons {
	justify-content: center; /*中央に寄せる*/
	flex-wrap: wrap; /*折り返す*/
}

/*シェア・フォローボタンのリンク*/
.sns-share.ss-top .sns-buttons a,
.sns-share.ss-bottom .sns-buttons a,
.sns-follow.sf-bottom .sns-buttons a,
.sns-follow.sf-widget .sns-buttons a {
	width: 40px; /*横幅*/
	height: 40px; /*高さ*/
	margin-right: 4px; /*右側の余白*/
	margin-left: 4px; /*左側の余白*/
	border-radius: 50%; /*丸み*/
}

/*プロフィールウィジェットのリンク*/
.sns-follow.sf-profile .sns-buttons a {
	border-radius: 50%; /*丸み*/
}

/*シェアボタンのアイコン*/
.sns-share.ss-top .sns-buttons a .social-icon,
.sns-share.ss-bottom .sns-buttons a .social-icon {
	font-size: 18px; /*アイコンの大きさ*/
}

/*フォローボタンのアイコン*/
.sns-follow.sf-bottom .sns-follow-buttons .follow-button,
.sns-follow.sf-widget .sns-follow-buttons .follow-button {
	font-size: 24px; /*アイコンの大きさ*/
}

/*シェアボタンのキャプション*/
.sns-share.ss-top .sns-buttons a .button-caption,
.sns-share.ss-bottom .sns-buttons a .button-caption {
	display: none; /*非表示*/
}

/*シェア・フォローボタンのシェア数*/
.sns-share.ss-top .sns-buttons a .share-count,
.sns-share.ss-bottom .sns-buttons a .share-count,
.sns-follow.sf-bottom .sns-buttons a .follow-count,
.sns-follow.sf-widget .sns-buttons a .follow-count {
	right: -2px; /*右側からの距離*/
	bottom: -2px; /*下側からの距離*/
	padding: 2px; /*内側の余白*/
	font-size: 10px; /*文字の大きさ*/
	border: solid 1px; /*線*/
	border-radius: 3px; /*丸み*/
	background-color: inherit; /*背景色*/
}

/*シェア数の表示が必要ないシェア・フォローボタン*/
.sns-share.ss-top .sns-buttons a .share-count:empty,
.sns-share.ss-bottom .sns-buttons a .share-count:empty,
.sns-follow.sf-bottom .sns-buttons a .follow-count:empty,
.sns-follow.sf-widget .sns-buttons a .follow-count:empty {
	padding: 0; /*内側の余白*/
	border: 0; /*線*/
}

/*  ヘッダー高さ変更 */
.header-container-in.hlt-top-menu .logo-header {
	display: flex;
  align-items: center;
	height: 88px;
	max-height: none;
}

/*  ロゴサイズ変更 */
.header-container-in.hlt-top-menu .logo-header img {
	width: 235px;
	max-height: none;
}

/************************************
** ランキング　h6
************************************/
/* 記事全体のリセットを削除、または無効化し、
   特定のクラス（rank-group）でリセットするように変更 */
.rank-group {
  counter-reset: rank-counter;
}

/* 記事全体で数字をリセット */
.entry-content {
  counter-reset: rank-counter;
}

/* 基本デザイン：クラス名に「rank」が含まれるh6共通 */
.article h6.rank {
  position: relative;
  display: block;
  margin: 15px 0 15px !important; 
  padding: 5px 0 5px 75px !important;
  background: transparent !important;
  color: #333 !important;
  font-size: 18px;
  font-weight: bold;
  border: none !important;
}

/* アイコンの共通設定（4位以下のグレーを基本にする） */
.article h6.rank::before {
  counter-increment: rank-counter;
  content: counter(rank-counter) "位";
  
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 60px;
  height: 35px;
  line-height: 35px;
  background: #999 !important; /* 基本はグレー */
  color: #fff !important;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  border-radius: 4px;
}

/* 1位〜3位の色を「クラス名」で上書きする（優先度を上げています） */
.article h6.rank.rank1::before { background: #eab308 !important; }
.article h6.rank.rank2::before { background: #94a3b8 !important; }
.article h6.rank.rank3::before { background: #b48a78 !important; }

/*************************************************
 * 5. テーブル
 *************************************************/

/* 固定テーブル */
table.has-fixed-layout {
  table-layout: auto !important;
  width: 100% !important;
  border: none !important;
  background-color: transparent !important;
  border-collapse: collapse !important;
  margin-bottom: 2em;
}

/* セル共通 */
table.has-fixed-layout tr,
table.has-fixed-layout th,
table.has-fixed-layout td {
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid #ddd !important;
  padding: 18px 10px !important;
  text-align: left;
  vertical-align: middle;
}

/* 1列目 */
table.has-fixed-layout tr th:first-child,
table.has-fixed-layout tr td:first-child {
  width: auto !important;
  white-space: nowrap !important;
  font-weight: bold;
  color: #333 !important;
  padding-right: 30px !important;
}

/* 2列目以降 */
table.has-fixed-layout tr th:nth-child(n+2),
table.has-fixed-layout tr td:nth-child(n+2) {
  width: auto !important;
  white-space: normal !important;
  padding-left: 10px !important;
}

/* Gutenberg固定レイアウト解除 */
table.is-style-fixed-layout {
  table-layout: auto !important;
  width: 100% !important;
}

/* テーブル内画像：表示枠を統一 */
table img {
  display: block !important;

  width: 65px !important;
  height: 65px !important;
  max-width: 65px !important;
  max-height: 65px !important;

  object-fit: contain !important;

  margin: 0 auto !important;
}

/* 画像セル */
table td:nth-child(3) {
  width: 95px !important;
  min-width: 95px !important;
  text-align: center !important;
}

/* テーブルヘッダー */
.entry-content table thead th {
  background-color: #f1f6f3 !important;
  color: #333 !important;
  font-weight: bold !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;

  vertical-align: middle !important;
}

/********************************************************
 * Pochipp 商品ボックス
 ********************************************************/

.pochipp-box {
  width: 100% !important;
  margin: 40px auto !important;
  padding: 0 0 30px !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  display: block !important;
  text-align: center !important;
}


/* ========================================
 * 商品画像
 * ======================================== */

.pochipp-box__image {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
}

.pochipp-box__image a {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
}

.pochipp-box__image img {
  display: block !important;
  width: 330px !important;
  max-width: 70% !important;
  height: auto !important;
  max-height: 360px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}


/* ========================================
 * 商品情報
 * ======================================== */

.pochipp-box__main {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  text-align: center !important;
}

.pochipp-box__info {
  width: 100% !important;
  margin: 0 !important;
  text-align: center !important;
}

.pochipp-box__title {
  width: 100% !important;
  margin: 0 auto 25px !important;
  text-align: center !important;
}

.pochipp-box__price,
.pochipp-box__detail {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: center !important;
}


/* ========================================
 * 購入ボタン：PC・共通
 * ======================================== */

.pochipp-box__btns {
  width: 100% !important;
  margin: 20px auto 0 !important;
}

/* 各購入ボタン */
.pochipp-box__btn {
  box-sizing: border-box !important;

  min-height: 54px !important;
  padding: 14px 12px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  line-height: 1.3 !important;

  /* 控えめな角丸 */
  border-radius: 4px !important;
}



/* ========================================
 * Pochippロゴ
 * ======================================== */

.pochipp-box__footer {
  position: static !important;
  display: block !important;
  width: 100% !important;
  margin-top: 10px !important;
  text-align: right !important;
}

/* ========================================
 * スマホ
 * ======================================== */

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

  /* Pochipp全体 */
  .pochipp-box {
    margin: 30px auto !important;
  }

  /* 商品画像 */
  .pochipp-box__image img {
    width: 280px !important;
    max-width: 85% !important;
  }

  /* ========================================
   * 購入ボタン
   * ======================================== */

  /* ボタンエリアを左右に少し広げる */
  .pochipp-box__btns {
    width: calc(100% + 40px) !important;
    max-width: none !important;

    margin-top: 22px !important;
    margin-left: -20px !important;
    margin-right: -20px !important;
  }

  /* Amazon・楽天・Yahooの各ボタン枠 */
  .pochipp-box__btnwrap {
    width: 100% !important;
    max-width: none !important;

    margin: 0 auto 3px !important;
  }

  /* 実際の購入ボタン */
  .pochipp-box__btn {
    box-sizing: border-box !important;

    width: 100% !important;
    max-width: none !important;
    min-height: 50px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 15px 12px !important;

    font-size: 17px !important;
    line-height: 1.3 !important;
	border-radius: 4px !important;
  }

}

/* =========================================
   ページネーション
========================================= */

/* 「次のページ」ボタンを非表示 */
.pagination-next-link {
  display: none !important;
}

/* ページネーション全体 */
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  margin: 45px auto;
}

/* ページ番号 */
.pagination .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 7px;
  background: transparent;
  color: #333;
  font-size: 17px;
  font-weight: 400;
  text-decoration: none;
}

/* 現在のページ */
.pagination .page-numbers.current {
  background: #f5f5f5;
}

/* 「…」 */
.pagination .dots {
  width: auto;
}

/* 左右の矢印 */
.pagination .prev,
.pagination .next {
  width: 30px;
}

.pagination .prev::before,
.pagination .next::before {
  font-size: 25px;
}

/* スマホ */
@media screen and (max-width: 768px) {
  .pagination {
    gap: 5px;
    margin: 35px auto;
  }

  .pagination .page-numbers {
    width: 35px;
    height: 35px;
    font-size: 15px;
  }

  .pagination .prev,
  .pagination .next {
    width: 22px;
  }

  .pagination .prev::before,
  .pagination .next::before {
    font-size: 22px;
  }
}

/* ========================================
 * Pochipp 価格表示
 * ======================================== */

/* 価格本体 */
.pochipp-box__price {
  display: block !important;
  width: 100% !important;

  margin: 10px auto 0 !important;

  text-align: center !important;

  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;

  color: #e64a35 !important;
}

/* 日時・Amazon調べ */
.pochipp-box__price span {
  display: block !important;

  margin-top: 3px !important;

  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;

  color: #777 !important;
}

/* Pochippロゴを非表示 */
.pochipp-box__logo {
  display: none !important;
}

/*************************************************
 * モバイル：スクロール量に応じて徐々に縮小
 *************************************************/
@media screen and (max-width: 767px) {

  #header-container {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    background: #fff !important;
  }

  #header,
  #header .header-in,
  #header .logo-header {
    height: calc(70px - (24px * var(--header-shrink, 0))) !important;
    min-height: calc(70px - (24px * var(--header-shrink, 0))) !important;
  }

  #header,
  #header .header-in,
  #header .logo-header,
  #header .header-site-logo-image {
    transition: none !important;
  }

  #header .logo-header {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #header .header-site-logo-image {
    max-height: calc(44px - (12px * var(--header-shrink, 0))) !important;
    width: auto !important;
  }
}

/* ========================================
 * モバイル：サイドバー表示中は固定ヘッダーを隠す
 * ======================================== */

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

  body:has(#sidebar-menu-input:checked) #header-container {
    display: none !important;
  }

}

/* ========================================
 * モバイルサイドメニュー：CLOSEボタン
 * ======================================== */

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

  #sidebar-menu-content .menu-close-button {
    display: block !important;

    width: fit-content !important;
    height: auto !important;

    margin: 18px auto 20px !important;
    padding: 7px 18px !important;

    background: #f7f7f7 !important;
    border: 1px solid #ddd !important;
    border-radius: 20px !important;

    color: transparent !important;

    font-size: 0 !important;
    line-height: 1 !important;

    text-align: center !important;
    cursor: pointer !important;

    box-shadow: none !important;
  }

  /* CLOSE文字 */
  #sidebar-menu-content .menu-close-button::after {
    content: "CLOSE";

    color: #555 !important;

    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;

    line-height: 1 !important;
  }

}

/*************************************************
 * 商品スペック：2カラムテーブル
 *************************************************/


/* ========================================
 * 共通
 * ======================================== */

.spec-columns {
  box-sizing: border-box !important;
}

/* テーブル共通 */
.spec-columns table.has-fixed-layout {
  width: 100% !important;
  table-layout: fixed !important;
}

/* 項目名 */
.spec-columns table.has-fixed-layout th:first-child,
.spec-columns table.has-fixed-layout td:first-child {
  width: 40% !important;
  white-space: normal !important;
  vertical-align: middle !important;
  font-weight: 700 !important;
}

/* 内容 */
.spec-columns table.has-fixed-layout th:nth-child(2),
.spec-columns table.has-fixed-layout td:nth-child(2) {
  width: 60% !important;
  white-space: normal !important;
  vertical-align: middle !important;
}


/* ========================================
 * PC
 * ======================================== */

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

  .spec-columns {
    display: flex !important;
    align-items: stretch !important;
    gap: 28px !important;
  }

  /* カラム構造 */
  .spec-columns > .wp-block-column {
    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
  }

  /* テーブルが直接入っている構造 */
  .spec-columns > .wp-block-table {
    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  /* 行の高さ */
  .spec-columns table.has-fixed-layout tr {
    height: 70px !important;
  }

  /* セル余白 */
  .spec-columns table.has-fixed-layout th,
  .spec-columns table.has-fixed-layout td {
    padding: 10px 16px !important;
  }

}


/* ========================================
 * スマホ
 * ======================================== */

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

  .spec-columns {
    display: block !important;
  }

  .spec-columns > .wp-block-column,
  .spec-columns > .wp-block-table {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* PCの高さ固定を解除 */
  .spec-columns table.has-fixed-layout tr {
    height: auto !important;
  }

  /* 項目名 */
  .spec-columns table.has-fixed-layout th:first-child,
  .spec-columns table.has-fixed-layout td:first-child {
    width: 40% !important;
    padding: 11px 10px !important;
  }

  /* 内容 */
  .spec-columns table.has-fixed-layout th:nth-child(2),
  .spec-columns table.has-fixed-layout td:nth-child(2) {
    width: 60% !important;
    padding: 11px 10px !important;
  }

}


/*************************************************
 * 商品スペック：全部見るボタン
 *************************************************/

.spec-toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  gap: 7px !important;

  width: fit-content !important;

  margin: 16px auto 32px !important;
  padding: 6px 10px !important;

  border: none !important;
  background: transparent !important;

  color: #888 !important;

  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;

  cursor: pointer !important;
}


/* 下向き矢印 */
.spec-toggle::after {
  content: "" !important;

  display: block !important;

  width: 8px !important;
  height: 8px !important;

  border-right: 2px solid #999 !important;
  border-bottom: 2px solid #999 !important;

  transform: rotate(45deg) !important;
  margin-top: -4px !important;

  flex: 0 0 auto !important;
}


/* 開いた時：上向き */
.spec-columns.is-open + .spec-toggle::after {
  transform: rotate(225deg) !important;
  margin-top: 4px !important;
}


/*************************************************
 * 公開記事ページ：デフォルト3行表示
 *************************************************/


/* ========================================
 * PC
 * 左右それぞれ先頭3行を表示
 * ======================================== */

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

  body.single .spec-columns:not(.is-open)
  table tbody tr:nth-child(n+4) {
    display: none !important;
  }

}


/* ========================================
 * スマホ
 * 全体で先頭3項目だけ表示
 * ======================================== */

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

  /* すべての行を一旦非表示 */
  body.single .spec-columns:not(.is-open)
  table tbody tr {
    display: none !important;
  }

  /* 左側テーブルの先頭3行だけ表示 */
  body.single .spec-columns:not(.is-open)
  > .wp-block-column:first-child
  table tbody tr:nth-child(-n+3) {
    display: table-row !important;
  }

  /* テーブルが直接入っている場合 */
  body.single .spec-columns:not(.is-open)
  > .wp-block-table:first-child
  table tbody tr:nth-child(-n+3) {
    display: table-row !important;
  }

  /* ボタンを少し小さく */
  .spec-toggle {
    margin-top: 14px !important;
    margin-bottom: 28px !important;

    font-size: 13px !important;
  }

}

/*************************************************
 * 投稿編集画面：全行表示
 *************************************************/

.editor-styles-wrapper .spec-columns table tbody tr,
.block-editor-block-list__layout .spec-columns table tbody tr,
.wp-block .spec-columns table tbody tr {
  display: table-row !important;
}

/*************************************************
 * ランキング採点基準：RATING GUIDE
 *************************************************/


/* ========================================
 * 全体
 * ======================================== */

.rating-guide {
  margin: 28px 0 34px !important;

  border: 1px solid #e8e8e8 !important;
  border-radius: 8px !important;

  background: #fff !important;

  overflow: hidden !important;
}


/* ========================================
 * アコーディオン見出し
 * ======================================== */

.rating-guide .toggle-button {
  position: relative !important;

  display: block !important;

  padding: 18px 56px 18px 20px !important;

  background: #fafafa !important;

  border: none !important;

  color: #333 !important;

  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;

  text-align: center !important;

  cursor: pointer !important;
}


/* RATING GUIDE */
.rating-guide .toggle-button::before {
  content: "RATING GUIDE" !important;

  display: block !important;

  margin-bottom: 4px !important;

  color: #c2c2c2 !important;

  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;

  letter-spacing: 0.12em !important;
}


/* ========================================
 * 開閉アイコン ＋ / −
 * ======================================== */

/* ＋ */
.rating-guide .toggle-button::after {
  content: "＋" !important;

  position: absolute !important;
  top: 50% !important;
  right: 22px !important;

  margin: 0 !important;

  color: #888 !important;

  font-family: Arial, sans-serif !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  line-height: 1 !important;

  transform: translateY(-50%) !important;

  transition: color 0.2s ease !important;
}


/* 開いたときは − */
.rating-guide .toggle-checkbox:checked + .toggle-button::after {
  content: "−" !important;
}


/* ========================================
 * スマホ
 * ======================================== */

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

  .rating-guide .toggle-button::after {
    right: 16px !important;
    font-size: 18px !important;
  }

}


/* ========================================
 * 開いた本文エリア
 * ======================================== */

.rating-guide .toggle-content {
  padding: 8px 28px 10px !important;

  background: #fff !important;

  /* Cocoon標準の枠線を整理 */
  border-left: none !important;
  border-right: none !important;
  border-bottom: none !important;
  border-top: 1px solid #eeeeee !important;
}


/* ========================================
 * 冒頭説明文
 * ======================================== */

.rating-guide .toggle-content > p {
  margin: 0 !important;
  padding: 0 0 20px !important;

  color: #444 !important;

  font-size: 15px !important;
  line-height: 1.9 !important;
}


/* ========================================
 * 評価項目リスト
 * ======================================== */

.rating-guide ul {
  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;

  counter-reset: rating-number !important;
}


/* 各評価項目 */
.rating-guide li {
  position: relative !important;

  margin: 0 !important;

  padding: 20px 0 20px 55px !important;

  border-bottom: 1px solid #f0f0f0 !important;

  list-style: none !important;

  counter-increment: rating-number !important;
}


/* 最後の項目は区切り線なし */
.rating-guide li:last-child {
  border-bottom: none !important;
}


/* ========================================
 * 01 / 02 / 03 ...
 * ======================================== */

.rating-guide li::before {
  content: counter(rating-number, decimal-leading-zero) !important;

  position: absolute !important;

  top: 21px !important;
  left: 0 !important;

  color: #aaa !important;

  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;

  letter-spacing: 0.05em !important;
}


/* ========================================
 * 評価項目名
 * ======================================== */

.rating-guide li strong {
  display: block !important;

  margin: 0 0 7px !important;

  color: #333 !important;

  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
}


/* ========================================
 * 評価項目の説明文
 * ======================================== */

.rating-guide li {
  color: #444 !important;

  font-size: 15px !important;
  line-height: 1.9 !important;
}


/* ========================================
 * スマホ
 * ======================================== */

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

  .rating-guide {
    margin: 22px 0 28px !important;

    border-radius: 7px !important;
  }


  /* 見出し */

  .rating-guide .toggle-button {
    padding: 16px 46px 16px 16px !important;

    font-size: 15px !important;
    line-height: 1.5 !important;
  }


  .rating-guide .toggle-button::before {
    margin-bottom: 4px !important;

    font-size: 9px !important;
  }


  .rating-guide .toggle-button::after {
    right: 16px !important;

    font-size: 13px !important;
  }


  /* 本文 */

  .rating-guide .toggle-content {
    padding: 6px 18px 8px !important;
  }


  /* 冒頭説明 */

  .rating-guide .toggle-content > p {
    padding-bottom: 14px !important;

    font-size: 14px !important;
    line-height: 1.8 !important;
  }


  /* 評価項目 */

  .rating-guide li {
    padding: 17px 0 17px 40px !important;

    font-size: 14px !important;
    line-height: 1.8 !important;
  }


  /* 01 / 02 / 03 */

  .rating-guide li::before {
    top: 18px !important;

    font-size: 12px !important;
  }


  /* 評価項目名 */

  .rating-guide li strong {
    margin-bottom: 5px !important;

    font-size: 14px !important;
    line-height: 1.6 !important;
  }

}

/************************************************
 * おすすめポイント / もう一歩
 * 判断ポイント Ver.2
 ************************************************/


/* ========================================
 * 2カラム全体
 * ======================================== */

body .osrm-ranking .osrm-product .point-compare {
  display: flex !important;
  align-items: stretch !important;
  gap: 20px !important;
}


/* ========================================
 * PC：左右50：50
 * ======================================== */

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

  body .osrm-ranking .osrm-product
  .point-compare > .wp-block-column {
    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    display: flex !important;
  }

}


/* ========================================
 * ボックス共通
 * ======================================== */

body .osrm-ranking .osrm-product .point-good,
body .osrm-ranking .osrm-product .point-more {
  position: relative !important;

  width: 100% !important;
  height: 100% !important;

  box-sizing: border-box !important;

  margin: 0 !important;
  padding: 22px !important;

  border: 1px solid #e3e7e5 !important;
  border-radius: 10px !important;

  box-shadow: none !important;

  overflow: hidden !important;
}


/* ========================================
 * おすすめポイント
 * ======================================== */

body .osrm-ranking .osrm-product .point-good {
  background: #f7fcf9 !important;

  border: 1px solid #dce9e1 !important;
  border-top: 4px solid #2eaf67 !important;
}


/* 見出し */

body .osrm-ranking .osrm-product
.point-good > .wp-block-heading:first-child {
  margin: 0 0 18px !important;
  padding: 0 0 13px !important;

  background: transparent !important;

  color: #238b52 !important;

  border: 0 !important;
  border-bottom: 1px solid #dce9e1 !important;

  text-align: left !important;

  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}


/* 見出しアイコン */

body .osrm-ranking .osrm-product
.point-good > .wp-block-heading:first-child::before {
  content: "✓";

  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 22px;
  height: 22px;

  margin-right: 8px;

  background: #2eaf67 !important;
  color: #fff !important;

  border-radius: 50%;

  font-size: 13px;
  font-weight: 700;

  vertical-align: 1px;
}


/* ========================================
 * もう一歩
 * ======================================== */

body .osrm-ranking .osrm-product .point-more {
  background: #faf9f6 !important;

  border: 1px solid #e4e0d9 !important;
  border-top: 4px solid #9b9487 !important;
}


/* 見出し */

body .osrm-ranking .osrm-product
.point-more > .wp-block-heading:first-child {
  margin: 0 0 18px !important;
  padding: 0 0 13px !important;

  background: transparent !important;

  color: #625d55 !important;

  border: 0 !important;
  border-bottom: 1px solid #e4e0d9 !important;

  text-align: left !important;

  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}


/* 見出しアイコン */

body .osrm-ranking .osrm-product
.point-more > .wp-block-heading:first-child::before {
  content: "△";

  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 22px;
  height: 22px;

  margin-right: 8px;

  background: #ebe7df !important;
  color: #625d55 !important;

  border-radius: 50%;

  font-size: 12px;
  font-weight: 700;

  vertical-align: 1px;
}


/* ========================================
 * リスト共通
 * ======================================== */

body .osrm-ranking .osrm-product .point-good ul,
body .osrm-ranking .osrm-product .point-more ul {
  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;
}


body .osrm-ranking .osrm-product .point-good li,
body .osrm-ranking .osrm-product .point-more li {
  position: relative !important;

  margin: 0 0 11px !important;
  padding-left: 21px !important;

  font-size: 14px !important;
  line-height: 1.75 !important;
}


body .osrm-ranking .osrm-product .point-good li:last-child,
body .osrm-ranking .osrm-product .point-more li:last-child {
  margin-bottom: 0 !important;
}


/* ========================================
 * おすすめポイント：チェック
 * ======================================== */

body .osrm-ranking .osrm-product .point-good li::before {
  content: "✓" !important;

  position: absolute !important;

  left: 0 !important;
  top: 0 !important;

  color: #2eaf67 !important;

  font-weight: 700 !important;
}


/* ========================================
 * もう一歩：△
 * ======================================== */

body .osrm-ranking .osrm-product .point-more li::before {
  content: "△" !important;

  position: absolute !important;

  left: 0 !important;
  top: 1px !important;

  color: #8b8478 !important;

  font-size: 12px !important;
  font-weight: 700 !important;
}


/* ========================================
 * スマホ
 * ======================================== */

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

  body .osrm-ranking .osrm-product .point-compare {
    flex-direction: column !important;
    gap: 14px !important;
  }


  body .osrm-ranking .osrm-product
  .point-compare > .wp-block-column {
    width: 100% !important;
  }


  body .osrm-ranking .osrm-product .point-good,
  body .osrm-ranking .osrm-product .point-more {
    padding: 18px 17px 19px !important;

    border-radius: 9px !important;
  }


  body .osrm-ranking .osrm-product
  .point-good > .wp-block-heading:first-child,

  body .osrm-ranking .osrm-product
  .point-more > .wp-block-heading:first-child {
    margin-bottom: 15px !important;
    padding-bottom: 12px !important;

    font-size: 15px !important;
  }


  body .osrm-ranking .osrm-product .point-good li,
  body .osrm-ranking .osrm-product .point-more li {
    margin-bottom: 9px !important;

    font-size: 14px !important;
    line-height: 1.7 !important;
  }

}

/*************************************************
 * TOPへ戻るボタン｜丸型
 *************************************************/

.go-to-top {
  right: 14px !important;
  bottom: 16px !important;
}

.go-to-top-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 40px !important;
  height: 40px !important;

  padding: 0 !important;

  background: rgba(255, 255, 255, .96) !important;

  border: 1px solid #dedede !important;
  border-radius: 50% !important;

  box-shadow:
    0 3px 12px rgba(0, 0, 0, .08) !important;

  color: #555 !important;

  transition:
    transform .2s ease,
    box-shadow .2s ease,
    background .2s ease !important;
}


/* 二重矢印 → 細い一重シェブロン */
.go-to-top-button .fa-angle-double-up::before {
  content: "" !important;

  display: block !important;

  width: 10px !important;
  height: 10px !important;

  border-top: 2px solid #555 !important;
  border-left: 2px solid #555 !important;

  transform: rotate(45deg) !important;

  margin-top: 5px !important;
}


/* PCホバー */
@media (hover: hover) {

  .go-to-top-button:hover {
    background: #fff !important;

    box-shadow:
      0 5px 16px rgba(0, 0, 0, .12) !important;

    transform: translateY(-2px) !important;
  }

}


/* スマホ */
@media screen and (max-width: 768px) {

  .go-to-top {
    right: 12px !important;
    bottom: 14px !important;
  }

  .go-to-top-button {
    width: 44px !important;
    height: 44px !important;
  }

}
/*************************************************
 * モバイル：カテゴリーから探す
 *************************************************/

.mobile-category-trigger {
  display: none;
}

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

  .mobile-category-trigger {
    position: fixed !important;

    right: 12px !important;
    bottom: 14px !important;

    z-index: 99999 !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: 44px !important;

    padding: 0 15px !important;

background: #858585 !important;

border: 1px solid #dedede !important;
border-radius: 999px !important;

box-shadow:
  0 3px 12px rgba(0, 0, 0, .08) !important;

color: #fff !important;

    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 600 !important;

    line-height: 1 !important;

    cursor: pointer !important;

    appearance: none !important;
    -webkit-appearance: none !important;

    margin: 0 !important;

    transform: none !important;
  }


  .mobile-category-trigger-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin-right: 7px !important;

    font-size: 14px !important;
    line-height: 1 !important;
  }


  .mobile-category-trigger-text {
    white-space: nowrap !important;
  }


  .mobile-category-trigger:active {
    transform: translateY(1px) !important;
  }

}

/*************************************************
 * モバイル固定ボタン配置
 *
 *  ○ TOP
 *  [ カテゴリーから探す ]
 *************************************************/

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

  /* カテゴリーから探す */
  #mobile-category-trigger {
    right: 12px !important;
    bottom: 14px !important;
  }


  /* TOPへ戻る */
  .go-to-top {
    right: 12px !important;

    /* カテゴリーボタン44px
       ＋ 下14px
       ＋ ボタン間8px */
    bottom: 66px !important;
  }

}

/*************************************************
 * Cocoon標準モバイル下部メニューを非表示
 * サイドメニュー機能だけ残す
 *************************************************/

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

  /* 下部メニュー自体の表示領域をなくす */
  .mobile-footer-menu-buttons.mobile-menu-buttons {
    height: 0 !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;

    overflow: visible !important;

    pointer-events: none !important;
  }


  /* サイドバー以外の下部メニューボタンをすべて非表示 */
  .mobile-footer-menu-buttons.mobile-menu-buttons
  > li:not(.sidebar-menu-button) {
    display: none !important;
  }


  /* サイドバー機能を格納しているliだけ残す */
  .mobile-footer-menu-buttons.mobile-menu-buttons
  > .sidebar-menu-button {
    position: static !important;

    width: 0 !important;
    height: 0 !important;

    min-width: 0 !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;

    pointer-events: none !important;
  }


  /* Cocoon標準のサイドバーOPENボタンは見せない */
  #sidebar-menu-open {
    position: absolute !important;

    width: 1px !important;
    height: 1px !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;

    opacity: 0 !important;

    pointer-events: none !important;
  }


  /* 開いたサイドメニューは通常操作可能 */
  #sidebar-menu-content {
    pointer-events: auto !important;
  }

  #sidebar-menu-close,
  .sidebar-menu-close-button {
    pointer-events: auto !important;
  }

}

/*************************************************
 * Pochipp商品詳細｜Qoo10対応 本番完成版
 *************************************************/


/*************************************************
 * Qoo10専用カラー
 *************************************************/
.pochipp-box
.pochipp-box__btnwrap.qoo10-auto
.pochipp-box__btn {
  background: #536dce !important;
  color: #fff !important;
}


/*************************************************
 * PC
 *************************************************/
@media screen and (min-width: 769px) {


  /***********************************************
   * 4ショップを横一列
   *
   * 楽天｜Amazon｜Yahoo｜Qoo10
   ***********************************************/
  .pochipp-box__btns:has(.qoo10-auto) {
    display: grid !important;

    grid-template-columns:
      repeat(4, minmax(0, 1fr)) !important;

    /* 横のボタン間隔 */
    column-gap: 6px !important;

    /* 公式サイトとの上下間隔 */
    row-gap: 10px !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
  }


  /***********************************************
   * Pochipp既存の幅・余白指定を解除
   ***********************************************/
  .pochipp-box__btns:has(.qoo10-auto)
  > .pochipp-box__btnwrap {
    display: block !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    flex: none !important;

    box-sizing: border-box !important;
  }


  /***********************************************
   * 各ボタンをセルいっぱいに
   ***********************************************/
  .pochipp-box__btns:has(.qoo10-auto)
  > .pochipp-box__btnwrap
  > .pochipp-box__btn {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;

    text-align: center !important;
    text-indent: 0 !important;

    box-sizing: border-box !important;
  }


  /***********************************************
   * Yahooショッピング
   *
   * 1行表示＋完全中央
   ***********************************************/
  .pochipp-box__btns:has(.qoo10-auto)
  > .pochipp-box__btnwrap.-yahoo
  > .pochipp-box__btn {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;

    padding-left: 4px !important;
    padding-right: 4px !important;

    white-space: nowrap !important;

    text-align: center !important;
    text-indent: 0 !important;

    font-size: 0.92em !important;

    box-sizing: border-box !important;
  }


  /***********************************************
   * Pochippボタン上部の訴求文
   *
   * 例：
   * ＼ポイント最大47.5倍！／
   *
   * Amazon等で同クラスを使用する場合も
   * 1行表示
   ***********************************************/
  .pochipp-box__btns:has(.qoo10-auto)
  .pochipp-box__saleInfo.-top {
    white-space: nowrap !important;

    width: max-content !important;
    max-width: none !important;

    margin-left: auto !important;
    margin-right: auto !important;
  }


  /***********************************************
   * Qoo10より後ろのカスタムボタン
   * ＝公式サイト
   *
   * PCでは2段目を全幅表示
   ***********************************************/
  .pochipp-box__btns:has(.qoo10-auto)
  > .qoo10-auto
  ~ .pochipp-box__btnwrap.-custom {
    grid-column: 1 / -1 !important;
  }

}

/*************************************************
 * オススメマン｜開催中のセール・キャンペーン
 *************************************************/


/*************************************************
 * セールエリア全体
 *************************************************/
.sale-banner-section {
  margin: 30px 0 36px !important;
}


/*************************************************
 * セール見出し
 *************************************************/
.sale-banner-heading {
  margin: 0 0 14px !important;
  padding: 0 !important;

  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;

  color: #333 !important;

  background: none !important;
  border: none !important;
}


/*************************************************
 * 横スクロールエリア
 *************************************************/
.sale-banner-scroll {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: 280px !important;
  gap: 14px !important;

  width: 100% !important;
  max-width: 100% !important;

  overflow-x: auto !important;
  overflow-y: hidden !important;

  padding: 4px 2px 12px !important;

  box-sizing: border-box !important;

  -webkit-overflow-scrolling: touch !important;

  scroll-snap-type: x proximity !important;

  scrollbar-width: thin;
  scrollbar-color: #bbb transparent;
}


/*************************************************
 * スクロールバー
 *************************************************/
.sale-banner-scroll::-webkit-scrollbar {
  height: 6px !important;
}

.sale-banner-scroll::-webkit-scrollbar-track {
  background: transparent !important;
}

.sale-banner-scroll::-webkit-scrollbar-thumb {
  background: #bbb !important;
  border-radius: 10px !important;
}


/*************************************************
 * バナーカード共通
 *************************************************/
.sale-banner-card {
  display: block !important;

  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: none !important;
  border-radius: 8px !important;

  overflow: hidden !important;

  text-decoration: none !important;

  scroll-snap-align: start !important;
}


/*************************************************
 * 画像＋アフィリエイトリンク
 *************************************************/
.sale-banner-image img {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  height: auto !important;

  margin: 0 !important;

  border-radius: 8px !important;

  object-fit: contain !important;
}


/*************************************************
 * ValueCommerce等の広告タグ
 *************************************************/
.sale-banner-tag {
  display: flex !important;

  align-items: flex-start !important;
  justify-content: flex-start !important;

  padding: 0 !important;
  margin: 0 !important;
}


.sale-banner-tag img {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  height: auto !important;

  margin: 0 !important;

  border-radius: 8px !important;
}


/*************************************************
 * スマホ
 *************************************************/
@media screen and (max-width: 768px) {

  .sale-banner-section {
    margin-top: 24px !important;
    margin-bottom: 30px !important;
  }


  .sale-banner-heading {
    margin-bottom: 12px !important;

    font-size: 17px !important;
  }


  /*
   * スマホは250px固定で横スクロール
   */
  .sale-banner-scroll {
    display: flex !important;

    align-items: flex-start !important;

    gap: 8px !important;

    width: 100% !important;
    max-width: 100% !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    padding: 0 0 10px !important;

    -webkit-overflow-scrolling: touch !important;

    scroll-snap-type: x proximity !important;
  }


  /*
   * 共通カード幅
   */
  .sale-banner-scroll > .sale-banner-card {
    flex: 0 0 auto !important;

    width: 250px !important;
    min-width: 250px !important;
    max-width: 250px !important;

    margin: 0 !important;

    scroll-snap-align: start !important;
  }


  /*
   * 自前画像
   */
  .sale-banner-image img {
    display: block !important;

    width: 250px !important;
    max-width: 250px !important;

    height: auto !important;

    margin: 0 !important;
  }


  /*
   * ASP広告タグ
   */
  .sale-banner-tag {
    width: 250px !important;
    min-width: 250px !important;
    max-width: 250px !important;

    padding: 0 !important;
    margin: 0 !important;
  }


  .sale-banner-tag img {
    display: block !important;

    width: 250px !important;
    max-width: 250px !important;

    height: auto !important;

    margin: 0 !important;
  }

}


/*************************************************
 * PC｜サイドバーをスクロール追随
 *************************************************/
@media screen and (min-width: 769px) {

  #sidebar {
    position: sticky !important;
    top: 40px !important;
    align-self: flex-start !important;
  }

}

/*************************************************
 * 目次｜横幅を広げる
 *************************************************/
.article .toc {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/*************************************************
 * 比較表 V2 統合完成版
 * class：compare-table-v2
 *
 * PC / SP とも横スクロール
 * 順位＋商品名＋画像の3列固定
 * スマホ固定3列：177px
 * 4列目：総合スコア
 * 5列目：詳細
 * 6列目以降：仕様・特徴・評価
 * Pochipp最大5ボタンを1行表示
 *************************************************/


/* =================================================
   1. 外側グループ
================================================= */

.compare-table-v2 {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  border: none !important;
  outline: none !important;
}


/* =================================================
   2. 表ラッパー
================================================= */

.compare-table-v2 .wp-block-table,
.compare-table-v2 figure.wp-block-table {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;

  overflow-x: auto !important;
  overflow-y: visible !important;

  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior-x: contain !important;

  box-sizing: border-box !important;
  border: none !important;
  outline: none !important;

  scrollbar-width: thin;
  scrollbar-color: #bbb transparent;
}

.compare-table-v2 .wp-block-table::-webkit-scrollbar,
.compare-table-v2 figure.wp-block-table::-webkit-scrollbar {
  height: 6px !important;
}

.compare-table-v2 .wp-block-table::-webkit-scrollbar-track,
.compare-table-v2 figure.wp-block-table::-webkit-scrollbar-track {
  background: transparent !important;
}

.compare-table-v2 .wp-block-table::-webkit-scrollbar-thumb,
.compare-table-v2 figure.wp-block-table::-webkit-scrollbar-thumb {
  background: #bbb !important;
  border-radius: 10px !important;
}


/* =================================================
   3. table 本体
================================================= */

.compare-table-v2 table {
  width: max-content !important;
  min-width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  table-layout: auto !important;

  border-collapse: separate !important;
  border-spacing: 0 !important;

  border: 1px solid #dcdcdc !important;
  outline: none !important;

  box-sizing: border-box !important;
}


/* =================================================
   4. セル共通
================================================= */

.compare-table-v2 th,
.compare-table-v2 td {
  box-sizing: border-box !important;
  vertical-align: middle !important;

  white-space: normal !important;

  background: #fff !important;

  border: none !important;
  border-right: 1px solid #eeeeee !important;

  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.compare-table-v2 th:last-child,
.compare-table-v2 td:last-child {
  border-right: none !important;
}


/* =================================================
   5. 横罫線
================================================= */

.compare-table-v2 tbody td {
  border-bottom: 1px solid #eeeeee !important;
}

.compare-table-v2 tbody tr:last-child td {
  border-bottom: none !important;
}


/* =================================================
   6. ヘッダー
================================================= */

.compare-table-v2 thead th {
  background: #f3f7f5 !important;
  border-bottom: 1px solid #e2e2e2 !important;

  font-weight: 700 !important;
  text-align: center !important;
}


/* =================================================
   7. 1列目：順位
================================================= */

.compare-table-v2 table tr > th:nth-child(1),
.compare-table-v2 table tr > td:nth-child(1) {
  position: sticky !important;
  position: -webkit-sticky !important;

  left: 0 !important;

  width: 64px !important;
  min-width: 64px !important;
  max-width: 64px !important;

  text-align: center !important;

  background: #fff !important;

  z-index: 30 !important;
}

.compare-table-v2 table thead tr > th:nth-child(1) {
  background: #f3f7f5 !important;
  z-index: 50 !important;
}


/* =================================================
   8. 2列目：商品名
================================================= */

.compare-table-v2 table tr > th:nth-child(2),
.compare-table-v2 table tr > td:nth-child(2) {
  position: sticky !important;
  position: -webkit-sticky !important;

  left: 64px !important;

  width: 130px !important;
  min-width: 130px !important;
  max-width: 130px !important;

  padding-left: 8px !important;
  padding-right: 8px !important;

  background: #fff !important;

  z-index: 29 !important;

  overflow-wrap: anywhere !important;
  word-break: normal !important;

  border-right: 1px solid #eeeeee !important;
}

.compare-table-v2 table thead tr > th:nth-child(2) {
  background: #f3f7f5 !important;
  z-index: 49 !important;
}


/* =================================================
   9. 3列目：画像
================================================= */

.compare-table-v2 table tr > th:nth-child(3),
.compare-table-v2 table tr > td:nth-child(3) {
  position: sticky !important;
  position: -webkit-sticky !important;

  left: 194px !important;

  width: 105px !important;
  min-width: 105px !important;
  max-width: 105px !important;

  background: #fff !important;

  z-index: 28 !important;

  border-right: 1px solid #e2e2e2 !important;

  box-shadow: 2px 0 4px rgba(0, 0, 0, .025) !important;
}

.compare-table-v2 table thead tr > th:nth-child(3) {
  background: #f3f7f5 !important;
  z-index: 48 !important;
}


/* =================================================
   10. 4列目：総合スコア
================================================= */

.compare-table-v2 table tr > th:nth-child(4),
.compare-table-v2 table tr > td:nth-child(4) {
  width: 140px !important;
  min-width: 140px !important;
  max-width: 140px !important;

  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}


/* =================================================
   11. 5列目：詳細
================================================= */

.compare-table-v2 table tr > th:nth-child(5),
.compare-table-v2 table tr > td:nth-child(5) {
  width: auto !important;
  min-width: 350px !important;
  max-width: none !important;

  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}


/* =================================================
   12. 6列目以降
================================================= */

.compare-table-v2 table tr > th:nth-child(n+6),
.compare-table-v2 table tr > td:nth-child(n+6) {
  width: 110px !important;
  min-width: 110px !important;
  max-width: 110px !important;

  white-space: normal !important;

  overflow-wrap: anywhere !important;
  word-break: normal !important;

  text-align: center !important;
}


/* =================================================
   13. 商品画像
================================================= */

.compare-table-v2 img {
  display: block !important;

  width: auto !important;
  max-width: 62px !important;

  height: auto !important;
  max-height: 66px !important;

  margin-left: auto !important;
  margin-right: auto !important;

  object-fit: contain !important;
}


/* =================================================
   14. Pochippショップボタン
================================================= */

.compare-table-v2 .osrm-pochipp-buttons {
  display: flex !important;

  flex-direction: row !important;
  flex-wrap: nowrap !important;

  align-items: flex-start !important;
  justify-content: flex-start !important;

  gap: 8px !important;

  width: max-content !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;

  white-space: nowrap !important;
}


/* ボタン外枠 */

.compare-table-v2 .osrm-pochipp-buttons
.pochipp-inline__btnwrap {
  display: inline-flex !important;

  width: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;

  flex: 0 0 78px !important;

  margin: 0 !important;
  padding: 0 !important;

  vertical-align: top !important;

  box-sizing: border-box !important;
}


/* 各ショップ固有の余白をリセット */

.compare-table-v2 .pochipp-inline__btnwrap.-amazon,
.compare-table-v2 .pochipp-inline__btnwrap.-rakuten,
.compare-table-v2 .pochipp-inline__btnwrap.-yahoo,
.compare-table-v2 .pochipp-inline__btnwrap.qoo10-auto,
.compare-table-v2 .pochipp-inline__btnwrap.-custom:not(.qoo10-auto) {
  margin-left: 0 !important;
  margin-right: 0 !important;
}


/* 実際の色付きボタン */

.compare-table-v2 .osrm-pochipp-buttons
.pochipp-inline__btnwrap > .pochipp-inline__btn {
  width: 100% !important;

  height: auto !important;
  min-height: 34px !important;

  padding-top: 7px !important;
  padding-bottom: 7px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  line-height: 1.2 !important;

  white-space: nowrap !important;

  box-sizing: border-box !important;
}


/* Qoo10 → 公式だけ少し間隔を広げる */

.compare-table-v2
.pochipp-inline__btnwrap.qoo10-auto
+ .pochipp-inline__btnwrap.-custom:not(.qoo10-auto) {
  margin-left: 4px !important;
}


/* =================================================
   15. PC
================================================= */

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

  .compare-table-v2 thead th {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  .compare-table-v2 tbody td {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }

}


/* =================================================
   16. スマホ
   固定3列：177px
   順位42 + 商品名80 + 画像55
================================================= */

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

  .compare-table-v2 th,
  .compare-table-v2 td {
    font-size: 11px !important;
    line-height: 1.45 !important;
  }


  /* 順位 */

  .compare-table-v2 table tr > th:nth-child(1),
  .compare-table-v2 table tr > td:nth-child(1) {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;

    padding-left: 3px !important;
    padding-right: 3px !important;
  }


  /* 商品名 */

  .compare-table-v2 table tr > th:nth-child(2),
  .compare-table-v2 table tr > td:nth-child(2) {
    left: 42px !important;

    width: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;

    padding-left: 4px !important;
    padding-right: 4px !important;

    font-size: 11px !important;
    line-height: 1.45 !important;

    background: #fff !important;
  }


  /* 画像 */

  .compare-table-v2 table tr > th:nth-child(3),
  .compare-table-v2 table tr > td:nth-child(3) {
    left: 122px !important;

    width: 55px !important;
    min-width: 55px !important;
    max-width: 55px !important;

    padding-left: 3px !important;
    padding-right: 3px !important;

    background: #fff !important;

    border-right: 1px solid #e2e2e2 !important;

    box-shadow: 2px 0 4px rgba(0, 0, 0, .025) !important;
  }


  /* 総合スコア */

  .compare-table-v2 table tr > th:nth-child(4),
  .compare-table-v2 table tr > td:nth-child(4) {
    width: 110px !important;
    min-width: 110px !important;
    max-width: 110px !important;
  }

/* 詳細：ボタン数に応じて横幅を決める */

.compare-table-v2 table tr > th:nth-child(5),
.compare-table-v2 table tr > td:nth-child(5) {
  width: 1% !important;
  min-width: 0 !important;
  max-width: none !important;
  white-space: normal !important;
}


  /* 6列目以降 */

  .compare-table-v2 table tr > th:nth-child(n+6),
  .compare-table-v2 table tr > td:nth-child(n+6) {
    width: 90px !important;
    min-width: 90px !important;
    max-width: 90px !important;

    text-align: center !important;
  }


  /* ヘッダー */

  .compare-table-v2 thead th {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }


  /* 商品行 */

  .compare-table-v2 tbody td {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }


  /* 商品画像 */

  .compare-table-v2 img {
    max-width: 45px !important;
    max-height: 50px !important;
  }


  /* Pochipp：スマホ */

  .compare-table-v2 .osrm-pochipp-buttons {
    gap: 4px !important;
  }

  .compare-table-v2 .osrm-pochipp-buttons
  .pochipp-inline__btnwrap {
    width: 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;

    flex: 0 0 68px !important;

    margin: 0 !important;
    padding: 0 !important;
  }

  .compare-table-v2 .osrm-pochipp-buttons
  .pochipp-inline__btnwrap > .pochipp-inline__btn {
    width: 100% !important;

    font-size: 10px !important;

    white-space: nowrap !important;
  }


  /* Qoo10 → 公式は通常2px + 4px */

  .compare-table-v2
  .pochipp-inline__btnwrap.qoo10-auto
  + .pochipp-inline__btnwrap.-custom:not(.qoo10-auto) {
    margin-left: 1px !important;
  }

}

/* =================================================
   スマホ：固定列を「順位＋商品名」の2列に変更
================================================= */

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

  /* 1列目：順位 */
  .compare-table-v2 table tr > th:nth-child(1),
  .compare-table-v2 table tr > td:nth-child(1) {
    position: sticky !important;
    left: 0 !important;
  }

  /* 2列目：商品名 */
  .compare-table-v2 table tr > th:nth-child(2),
  .compare-table-v2 table tr > td:nth-child(2) {
    position: sticky !important;
    left: 42px !important;
  }

  /* 3列目：画像は固定解除 */
  .compare-table-v2 table tr > th:nth-child(3),
  .compare-table-v2 table tr > td:nth-child(3) {
    position: static !important;
    left: auto !important;
    right: auto !important;
    z-index: auto !important;
    box-shadow: none !important;
  }

}


/* =================================================
   17. Gutenberg編集画面
================================================= */

.editor-styles-wrapper .compare-table-v2,
.block-editor-block-list__layout .compare-table-v2 {
  width: 100% !important;
  max-width: 860px !important;

  margin-left: auto !important;
  margin-right: auto !important;

  box-sizing: border-box !important;

  border: none !important;
  outline: none !important;
}

.editor-styles-wrapper .compare-table-v2 .wp-block-table,
.block-editor-block-list__layout .compare-table-v2 .wp-block-table,
.editor-styles-wrapper .compare-table-v2 figure.wp-block-table,
.block-editor-block-list__layout .compare-table-v2 figure.wp-block-table {
  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;

  overflow-x: auto !important;
  overflow-y: visible !important;

  border: none !important;
}

.editor-styles-wrapper .compare-table-v2 table,
.block-editor-block-list__layout .compare-table-v2 table {
  width: max-content !important;
  min-width: 100% !important;
  max-width: none !important;

  table-layout: auto !important;

  border-collapse: separate !important;
  border-spacing: 0 !important;

  border: 1px solid #dcdcdc !important;
}


/* =================================================
   18. 脚注
================================================= */

.compare-table-v2 > p,
.compare-table-v2 > .wp-block-paragraph,
.compare-table-v2 > ul,
.compare-table-v2 > ol {
  border: none !important;
  outline: none !important;
}

/************************************************
 * 目的別商品カード Ver.3
 * Pochippインライン画像対応
 ************************************************/

/* ========================================
   横スクロールエリア
======================================== */
.purpose-scroll {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 280px !important;
    gap: 16px !important;

    width: 100% !important;
    margin: 24px 0 32px !important;
    padding: 4px 4px 16px !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;

    box-sizing: border-box !important;
}

/* ========================================
   カード本体
======================================== */
.purpose-scroll > .purpose-card {
    position: relative !important;

    display: flex !important;
    flex-direction: column !important;

    width: auto !important;
    min-width: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 22px 20px 18px !important;

    background: #ffffff !important;
    border: 1px solid #e2e6e4 !important;
    border-top: 4px solid #2eaf67 !important;
    border-radius: 12px !important;

    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.04) !important;

    scroll-snap-align: start;

    box-sizing: border-box !important;
}

/* Gutenberg Group由来の余白をリセット */
.purpose-card > * {
    box-sizing: border-box;
}

/* ========================================
   01 / 02 / 03...
======================================== */
.purpose-card .purpose-no {
    margin: 0 0 9px !important;

    color: #2eaf67 !important;

    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.04em !important;
}

/* ========================================
   目的タイトル
======================================== */
.purpose-card .purpose-title {
    margin: 0 0 8px !important;
    padding: 0 !important;

    color: #292d2b !important;
    background: transparent !important;
    border: 0 !important;

    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;

    text-align: left !important;
}

/* ========================================
   目的の補足
======================================== */
.purpose-card .purpose-lead {
    margin: 0 0 17px !important;

    color: #666d69 !important;

    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
}

/* ========================================
   商品情報エリア
======================================== */
.purpose-card .purpose-product {
    margin: 0 !important;
    padding: 16px 0 0 !important;

    border-top: 1px solid #edf0ee !important;
}

/* メーカー */
.purpose-card .purpose-maker {
    margin: 0 0 5px !important;

    color: #777d7a !important;

    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

/* 商品名 */
.purpose-card .purpose-product-name {
    margin: 0 !important;

    color: #292d2b !important;

    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
}

/* ========================================
   Pochippインライン商品画像
======================================== */
.purpose-card .purpose-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 140px !important;

    margin: 10px 0 14px !important;
    padding: 0 !important;

    text-align: center !important;
}

/* Gutenbergが生成する余白を解除 */
.purpose-card .purpose-image p,
.purpose-card .purpose-image span {
    margin: 0 !important;
    padding: 0 !important;
}

/* Pochipp画像リンク */
.purpose-card .purpose-image a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 0 !important;

    text-decoration: none !important;
}

/* 商品画像 */
.purpose-card .purpose-image img {
    display: block !important;

    width: 120px !important;
    height: 120px !important;
    max-width: 120px !important;
    max-height: 120px !important;

    margin: 0 auto !important;

    object-fit: contain !important;
}

/* ========================================
   商品を選んだ理由
======================================== */
.purpose-card .purpose-reason {
    margin: 0 0 16px !important;

    color: #3f4441 !important;

    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
}

/* ========================================
   詳しく見るリンク
======================================== */
.purpose-card .purpose-link {
    margin: auto 0 0 !important;
    padding: 13px 0 0 !important;

    border-top: 1px solid #edf0ee !important;

    color: #238b52 !important;

    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
}

.purpose-card .purpose-link a {
    color: #238b52 !important;
    text-decoration: none !important;
}

.purpose-card .purpose-link a:hover {
    color: #176a3d !important;
    text-decoration: underline !important;
}

/* ========================================
   スマホ
======================================== */
@media screen and (max-width: 768px) {

    .purpose-scroll {
        grid-auto-columns: minmax(255px, 82%) !important;

        gap: 12px !important;

        margin: 20px 0 28px !important;

        /*
         * 右側に余白を残し、
         * 次のカードがあることを分かりやすくする
         */
        padding: 4px 18% 14px 2px !important;
    }

    .purpose-scroll > .purpose-card {
        padding: 19px 17px 17px !important;

        border-radius: 10px !important;
    }

    .purpose-card .purpose-no {
        margin-bottom: 8px !important;

        font-size: 12px !important;
    }

    .purpose-card .purpose-title {
        margin-bottom: 7px !important;

        font-size: 18px !important;
        line-height: 1.45 !important;
    }

    .purpose-card .purpose-lead {
        margin-bottom: 15px !important;

        font-size: 13px !important;
        line-height: 1.65 !important;
    }

    .purpose-card .purpose-product {
        padding-top: 14px !important;
    }

    .purpose-card .purpose-maker {
        font-size: 11px !important;
    }

    .purpose-card .purpose-product-name {
        font-size: 15px !important;
    }

    .purpose-card .purpose-image {
        min-height: 130px !important;

        margin: 8px 0 12px !important;
    }

    .purpose-card .purpose-reason {
        margin-bottom: 15px !important;

        font-size: 13px !important;
        line-height: 1.7 !important;
    }

    .purpose-card .purpose-link {
        padding-top: 12px !important;

        font-size: 13px !important;
    }
}


/************************************************
 * Gutenberg編集画面
 ************************************************/

.editor-styles-wrapper .purpose-scroll {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 280px !important;
    gap: 16px !important;

    overflow-x: auto !important;

    padding: 4px 4px 16px !important;
}

.editor-styles-wrapper .purpose-scroll > .purpose-card {
    display: flex !important;
    flex-direction: column !important;

    margin: 0 !important;
    padding: 22px 20px 18px !important;

    background: #ffffff !important;
    border: 1px solid #e2e6e4 !important;
    border-top: 4px solid #2eaf67 !important;
    border-radius: 12px !important;

    box-sizing: border-box !important;
}

.editor-styles-wrapper .purpose-card .purpose-no {
    color: #2eaf67 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.editor-styles-wrapper .purpose-card .purpose-title {
    color: #292d2b !important;
    background: transparent !important;
    border: 0 !important;

    font-size: 17px !important;
    font-weight: 700 !important;
}

.editor-styles-wrapper .purpose-card .purpose-lead,
.editor-styles-wrapper .purpose-card .purpose-reason {
    font-size: 13px !important;
}

.editor-styles-wrapper .purpose-card .purpose-product {
    padding-top: 16px !important;
    border-top: 1px solid #edf0ee !important;
}

.editor-styles-wrapper .purpose-card .purpose-maker {
    color: #777d7a !important;
    font-size: 11px !important;
}

.editor-styles-wrapper .purpose-card .purpose-product-name {
    font-size: 15px !important;
    font-weight: 700 !important;
}

.editor-styles-wrapper .purpose-card .purpose-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 140px !important;

    margin: 10px 0 14px !important;
}

.editor-styles-wrapper .purpose-card .purpose-image img {
    width: 120px !important;
    height: 120px !important;
    max-width: 120px !important;

    object-fit: contain !important;
}

.editor-styles-wrapper .purpose-card .purpose-link {
    margin-top: auto !important;
    padding-top: 13px !important;

    border-top: 1px solid #edf0ee !important;

    color: #238b52 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}