@charset "UTF-8";

/*!
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
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/* noto-sans-jp-100 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 100;
  src: url('../fonts/noto-sans-jp-v52-japanese-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-200 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 200;
  src: url('../fonts/noto-sans-jp-v52-japanese-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-300 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/noto-sans-jp-v52-japanese-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-regular - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/noto-sans-jp-v52-japanese-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-500 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/noto-sans-jp-v52-japanese-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-600 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/noto-sans-jp-v52-japanese-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-700 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/noto-sans-jp-v52-japanese-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-800 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/noto-sans-jp-v52-japanese-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* noto-sans-jp-900 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/noto-sans-jp-v52-japanese-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}

/* kiwi-maru-300 - japanese_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Kiwi Maru';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/kiwi-maru-v14-japanese_latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* kiwi-maru-regular - japanese_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Kiwi Maru';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/kiwi-maru-v14-japanese_latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}
/* kiwi-maru-500 - japanese_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Kiwi Maru';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/kiwi-maru-v14-japanese_latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-display: swap;
}

body{
    overflow-x: hidden !important;
		overflow-y: scroll !important;
		-webkit-overflow-scrolling: touch;
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/* 投稿のカスタマイズ 20260309以前*/
/* .article h3 {
    border-left: 7px solid #F9D923;
    border-bottom: 0px;
    border-right: 0px;
    border-top: 0px;
}
.logo-header img {
    margin-bottom: 10px;
}
html .body .has-teal-background-color {
    background-color: #0E7E1A !important;
}
html .body .has-vivid-cyan-blue-background-color {
    background-color: #0E7E1A !important;
}
.article h2{
    background-color: #ffffff;
    position: relative;
}
.article h2::before{
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 7px);
  width: 16px;
  height: 16px;
  border-radius: 30%;
  background-color: #F9D923;
}
@media screen and (max-width: 480px) {
    .entry-title, .article h2 {
        padding: 0.6em 1.2em;
    }
}
.global-game{
  border-color: #0E7E1A !important;

}
.article h6 {
    border-bottom: 1px solid #0E7E1A;
}
.wp-block-media-text__media img, .wp-block-media-text__media video {
    border-radius: 7px;
}
.hoiku{
  border-color: #9BC935 !important;
}
.hoiku .article h6 {
    border-bottom: 1px solid #9BC935;
} */

/************************************
** 投稿ページデザイン調整（固定ページには影響させない）20260309
************************************/

/************************************
 * 投稿ページのみデザイン調整
 * 対象: body.single-post
 * メインカラー: #F9D923
************************************/

body.single-post {
  --post-accent: #F9D923;
  --post-accent-deep: #dfbe16;
  --post-accent-soft: rgba(249, 217, 35, 0.16);
  --post-bg: #f4f4f1;
  --post-surface: #ffffff;
  --post-surface-soft: #fbfbf7;
  --post-text: #1f2733;
  --post-text-sub: #55606f;
  --post-text-soft: #7b8490;
  --post-border: rgba(0, 0, 0, 0.06);
  --post-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  --post-shadow-soft: 0 6px 18px rgba(0, 0, 0, 0.04);
  --post-radius-lg: 24px;
  --post-radius-md: 16px;
  --post-radius-sm: 10px;

  background: var(--post-bg);
  color: var(--post-text);
}

/* 投稿ページではヘッダーとフッターを背景になじませる */
body.single-post #header-container,
body.single-post header,
body.single-post .header-container,
body.single-post #footer,
body.single-post footer,
body.single-post .footer {
  background: var(--post-bg) !important;
  box-shadow: none !important;
  border: none !important;
}

/* 全体の文字 */
body.single-post .main,
body.single-post .article,
body.single-post .entry-content {
  color: var(--post-text);
  font-family: 'Noto Sans JP', sans-serif;
}

/* 記事本体 */
body.single-post .article {
  background: var(--post-surface);
  border: 1px solid var(--post-border);
  border-radius: var(--post-radius-lg);
  box-shadow: var(--post-shadow);
  padding: 38px 40px 46px;
}

/* 記事上部メタ */
body.single-post .entry-categories,
body.single-post .entry-categories a,
body.single-post .post-date,
body.single-post .entry-meta,
body.single-post .author-info {
  color: var(--post-text-soft);
  font-size: 14px;
  letter-spacing: 0.01em;
}

/* タイトル */
body.single-post .entry-title {
  margin: 0 0 20px;
  padding: 0;
  background: none;
  border: none;
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.35;
  font-weight: 800;
  color: var(--post-text);
  letter-spacing: 0.01em;
}

/* 本文 */
body.single-post .entry-content,
body.single-post .article p,
body.single-post .article li {
  font-size: 17px;
  line-height: 2;
  color: var(--post-text-sub);
}

body.single-post .article p + p {
  margin-top: 1.1em;
}

/* リンク */
body.single-post .entry-content a {
  color: #2f5b88;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 0.18em;
}

/* 見出し共通 */
body.single-post .article h2,
body.single-post .article h3,
body.single-post .article h4 {
  color: var(--post-text);
  letter-spacing: 0.01em;
}

/* h2: メイン見出し */
body.single-post .article h2 {
  position: relative;
  margin: 68px 0 24px;
  padding: 0 0 0 30px;
  background: none;
  border: none;
  font-size: clamp(24px, 3vw, 32px);
  line-height: 1.5;
  font-weight: 800;
}

body.single-post .article h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: linear-gradient(180deg, #fde86f 0%, var(--post-accent) 58%, var(--post-accent-deep) 100%);
  box-shadow: 0 4px 10px rgba(249, 217, 35, 0.28);
}

/* h3: セクション見出し */
body.single-post .article h3 {
  margin: 42px 0 18px;
  padding: 0 0 0 16px;
  background: none;
  border: none;
  border-left: 4px solid var(--post-accent);
  font-size: clamp(20px, 2.2vw, 24px);
  line-height: 1.6;
  font-weight: 700;
}

/* h4: 小見出し */
body.single-post .article h4 {
  margin: 30px 0 12px;
  padding: 0;
  background: none;
  border: none;
  font-size: 18px;
  line-height: 1.7;
  font-weight: 700;
}

/* 箇条書き */
body.single-post .article ul,
body.single-post .article ol {
  padding-left: 1.4em;
}

body.single-post .article li::marker {
  color: var(--post-accent-deep);
}

/* マーカー表現 */
body.single-post mark,
body.single-post .marker-yellow,
body.single-post .has-inline-color mark {
  background: linear-gradient(
    transparent 38%,
    rgba(249, 217, 35, 0.00) 38%,
    rgba(249, 217, 35, 0.55) 39%,
    rgba(249, 217, 35, 0.55) 88%,
    rgba(249, 217, 35, 0.00) 89%
  );
  color: inherit;
  padding: 0 .18em;
  border-radius: 2px;
}

/* 引用 */
body.single-post .article blockquote {
  margin: 30px 0;
  padding: 22px 24px;
  background: var(--post-surface-soft);
  border: 1px solid rgba(249, 217, 35, 0.24);
  border-radius: var(--post-radius-md);
  box-shadow: var(--post-shadow-soft);
  color: var(--post-text-sub);
}

/* 画像 */
body.single-post .entry-content img,
body.single-post .wp-block-image img,
body.single-post .wp-block-media-text__media img,
body.single-post .wp-block-media-text__media video {
  border-radius: 14px;
}

body.single-post .wp-block-image,
body.single-post .wp-block-media-text {
  margin-top: 28px;
  margin-bottom: 28px;
}

/* ボタン系 */
body.single-post .wp-block-button__link,
body.single-post .btn-wrap a,
body.single-post a.wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 14px 26px;
  border: none;
  border-radius: 999px;
  background: linear-gradient(180deg, #fde86f 0%, var(--post-accent) 58%, var(--post-accent-deep) 100%);
  color: #1f2733;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(249, 217, 35, 0.24);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

body.single-post .wp-block-button__link:hover,
body.single-post .btn-wrap a:hover,
body.single-post a.wp-block-button__link:hover {
  transform: translateY(-1px);
  filter: brightness(.98);
  box-shadow: 0 10px 22px rgba(249, 217, 35, 0.28);
}

/* 区切り線 */
body.single-post .article hr,
body.single-post .wp-block-separator {
  border: none;
  height: 1px;
  background: linear-gradient(
    90deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,0.08) 20%,
    rgba(0,0,0,0.08) 80%,
    rgba(0,0,0,0) 100%
  );
  margin: 42px 0;
}

/* 表 */
body.single-post .article table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--post-border);
  border-radius: 14px;
  background: #fff;
}

body.single-post .article th,
body.single-post .article td {
  padding: 12px 14px;
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

body.single-post .article th {
  background: #fff8cf;
  color: var(--post-text);
  font-weight: 700;
}

/* 関連記事・下部ボックス */
body.single-post .related-entry-card-wrap,
body.single-post .related-list,
body.single-post .pager-post-navi,
body.single-post .comment-box {
  background: var(--post-surface);
  border: 1px solid var(--post-border);
  border-radius: var(--post-radius-md);
  box-shadow: var(--post-shadow-soft);
  padding: 20px;
}

/* サイドバーがある場合 */
body.single-post .widget {
  background: rgba(255,255,255,0.78);
  border: 1px solid rgba(0,0,0,0.04);
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.03);
}

/* スマホ */
@media screen and (max-width: 834px) {
  body.single-post .article {
    padding: 30px 24px 36px;
    border-radius: 20px;
  }

  body.single-post .entry-content,
  body.single-post .article p,
  body.single-post .article li {
    font-size: 16px;
    line-height: 1.95;
  }

  body.single-post .article h2 {
    margin-top: 52px;
    padding-left: 24px;
  }
}

@media screen and (max-width: 480px) {
  body.single-post .article {
    padding: 24px 18px 30px;
    border-radius: 18px;
  }

  body.single-post .entry-title {
    font-size: 28px;
    line-height: 1.4;
  }

  body.single-post .article h2 {
    font-size: 22px;
  }

  body.single-post .article h3 {
    font-size: 19px;
  }
}

/************************************
 * GLOBAL GAMEカード 再調整版
 * より今っぽく、やわらかく整理
************************************/

/* カード全体 */
.global-game {
  background: #fffefb !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  border-radius: 24px !important;
  box-shadow:
    0 12px 32px rgba(0, 0, 0, 0.05),
    0 2px 8px rgba(0, 0, 0, 0.03) !important;
  overflow: hidden;
  padding: 22px 24px !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.global-game:hover {
  transform: translateY(-2px);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.07),
    0 4px 10px rgba(0, 0, 0, 0.04) !important;
}

/* メディアテキスト */
.global-game.wp-block-media-text {
  gap: 30px !important;
  align-items: center;
  border: none !important;
}

/* 画像 */
.global-game .wp-block-media-text__media img,
.global-game img {
  display: block;
  width: 100%;
  border-radius: 18px !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06);
}

/* 本文エリア */
.global-game .wp-block-media-text__content {
  padding: 4px 4px 4px 0 !important;
}

/* 見出し */
.global-game h2,
.global-game h3,
.global-game h4 {
  color: #334155;
  letter-spacing: 0.04em;
}

/* GLOBAL GAME */
.global-game h2 {
  margin: 0 0 22px;
  padding: 0 0 14px;
  border: 0 !important;
  background: none !important;
  font-size: clamp(26px, 3vw, 34px);
  line-height: 1.35;
  font-weight: 800;
  text-align: center;
  position: relative;
}

.global-game h2::before {
  display: none !important;
}

.global-game h2::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin: 14px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #fde86f 0%, #F9D923 60%, #dfbe16 100%);
  box-shadow: 0 3px 8px rgba(249, 217, 35, 0.18);
}

/* 本文 */
.global-game p {
  font-size: 18px;
  line-height: 1.95;
  color: #46556b;
  margin-bottom: 0.9em;
}

/* リンク強調 */
.global-game a {
  color: #2f5b88;
  font-weight: 700;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 0.16em;
}

/* ボタンエリア */
.global-game .wp-block-buttons,
.global-game .wp-block-button {
  margin-top: 24px;
  margin-bottom: 0;
}

/* ボタン */
.global-game .wp-block-button__link,
.global-game .btn-wrap a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 220px;
  min-height: 56px;
  padding: 14px 28px;
  border: none !important;
  border-radius: 999px;
  background: linear-gradient(180deg, #fde86f 0%, #F9D923 58%, #dfbe16 100%) !important;
  color: #1f2733 !important;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 10px 22px rgba(249, 217, 35, 0.24);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.global-game .wp-block-button__link:hover,
.global-game .btn-wrap a:hover {
  transform: translateY(-2px);
  filter: brightness(.98);
  box-shadow: 0 14px 28px rgba(249, 217, 35, 0.28);
}

/************************************
 * マーカー表現をおしゃれに
************************************/

/* 既存の span.marker 用 */
.marker {
  background: none !important;
  color: #5e651f !important;
  padding: 0 .28em !important;
  border-radius: 6px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  background-image: linear-gradient(
    transparent 38%,
    rgba(249, 217, 35, 0) 38%,
    rgba(249, 217, 35, 0.42) 39%,
    rgba(249, 217, 35, 0.42) 86%,
    rgba(249, 217, 35, 0) 87%
  ) !important;
}

/* markタグにも適用 */
mark {
  background: none !important;
  color: inherit;
  padding: 0 .24em;
  border-radius: 6px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  background-image: linear-gradient(
    transparent 40%,
    rgba(249, 217, 35, 0.00) 40%,
    rgba(249, 217, 35, 0.38) 41%,
    rgba(249, 217, 35, 0.38) 86%,
    rgba(249, 217, 35, 0.00) 87%
  ) !important;
}

/************************************
 * スマホ
************************************/
@media screen and (max-width: 834px) {
  .global-game {
    padding: 18px !important;
    border-radius: 20px !important;
  }

  .global-game.wp-block-media-text {
    gap: 20px !important;
  }

  .global-game .wp-block-media-text__content {
    padding: 0 !important;
  }

  .global-game p {
    font-size: 16px;
    line-height: 1.9;
  }

  .global-game .wp-block-button__link,
  .global-game .btn-wrap a {
    width: 100%;
    min-width: 0;
  }
}

@media screen and (max-width: 600px) {
  .global-game {
    border-radius: 18px !important;
  }

  .global-game .wp-block-media-text__media img,
  .global-game img {
    border-radius: 14px !important;
  }

  .global-game h2 {
    font-size: 24px;
  }
}

/************************************
 * GLOBAL GAMEカード 最終調整版
 * 中身も含めて再設計
************************************/

.global-game {
  background: linear-gradient(180deg, #fffefb 0%, #fffdfa 100%) !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  border-radius: 28px !important;
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.05),
    0 3px 8px rgba(0, 0, 0, 0.03) !important;
  overflow: hidden;
  padding: 26px 28px !important;
  position: relative;
}

/* 上部にごく薄いアクセント */
.global-game::before {
  content: "";
  position: absolute;
  top: 0;
  left: 28px;
  right: 28px;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #fde86f 0%, #F9D923 60%, #dfbe16 100%);
  opacity: 0.9;
}

/* メディアテキスト全体 */
.global-game.wp-block-media-text {
  gap: 34px !important;
  align-items: center;
  border: none !important;
  grid-template-columns: 260px 1fr !important;
}

/* 画像エリア */
.global-game .wp-block-media-text__media {
  align-self: stretch;
}

.global-game .wp-block-media-text__media img,
.global-game img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 20px !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
}

/* 本文エリア */
.global-game .wp-block-media-text__content {
  padding: 4px 0 4px 0 !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* タイトル */
.global-game h2,
.global-game h3,
.global-game h4 {
  color: #334155;
  letter-spacing: 0.03em;
}

.global-game h2 {
  margin: 0 0 24px;
  padding: 0 0 16px;
  border: 0 !important;
  background: none !important;
  font-size: clamp(28px, 3vw, 36px);
  line-height: 1.3;
  font-weight: 800;
  text-align: left;
  position: relative;
}

.global-game h2::before {
  display: none !important;
}

.global-game h2::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 420px;
  height: 1px;
  margin-top: 14px;
  background: linear-gradient(
    90deg,
    rgba(249, 217, 35, 0.65) 0%,
    rgba(0, 0, 0, 0.08) 70%,
    rgba(0, 0, 0, 0.02) 100%
  );
}

/* 本文 */
.global-game p {
  margin: 0 0 1em;
  font-size: 18px;
  line-height: 1.95;
  color: #46556b;
}

.global-game p:last-of-type {
  margin-bottom: 0;
}

/* リンク */
.global-game a {
  color: #2f5b88;
  font-weight: 700;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 0.16em;
}

/* ボタンエリア */
.global-game .wp-block-buttons,
.global-game .wp-block-button {
  margin-top: 28px;
  margin-bottom: 0;
}

.global-game .wp-block-buttons {
  justify-content: flex-start;
}

/* ボタン */
.global-game .wp-block-button__link,
.global-game .btn-wrap a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 220px;
  min-height: 56px;
  padding: 14px 30px;
  border: none !important;
  border-radius: 999px;
  background: linear-gradient(180deg, #fde86f 0%, #F9D923 58%, #dfbe16 100%) !important;
  color: #1f2733 !important;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 10px 22px rgba(249, 217, 35, 0.24);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.global-game .wp-block-button__link:hover,
.global-game .btn-wrap a:hover {
  transform: translateY(-2px);
  filter: brightness(.98);
  box-shadow: 0 14px 28px rgba(249, 217, 35, 0.28);
}

/************************************
 * マーカーもさらに上品に
************************************/

.marker {
  background: none !important;
  color: #5d651d !important;
  padding: 0 .32em !important;
  border-radius: 8px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  background-image: linear-gradient(
    transparent 42%,
    rgba(249, 217, 35, 0.00) 42%,
    rgba(249, 217, 35, 0.30) 43%,
    rgba(249, 217, 35, 0.30) 84%,
    rgba(249, 217, 35, 0.00) 85%
  ) !important;
}

mark {
  background: none !important;
  color: inherit;
  padding: 0 .28em;
  border-radius: 8px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  background-image: linear-gradient(
    transparent 42%,
    rgba(249, 217, 35, 0.00) 42%,
    rgba(249, 217, 35, 0.26) 43%,
    rgba(249, 217, 35, 0.26) 84%,
    rgba(249, 217, 35, 0.00) 85%
  ) !important;
}

/************************************
 * スマホ
************************************/
@media screen and (max-width: 834px) {
  .global-game {
    padding: 22px 20px !important;
    border-radius: 22px !important;
  }

  .global-game::before {
    left: 20px;
    right: 20px;
  }

  .global-game.wp-block-media-text {
    gap: 22px !important;
    grid-template-columns: 1fr !important;
  }

  .global-game .wp-block-media-text__content {
    padding: 0 !important;
  }

  .global-game h2 {
    text-align: center;
    font-size: 26px;
  }

  .global-game h2::after {
    margin-left: auto;
    margin-right: auto;
  }

  .global-game p {
    font-size: 16px;
    line-height: 1.9;
  }

  .global-game .wp-block-buttons {
    justify-content: center;
  }

  .global-game .wp-block-button__link,
  .global-game .btn-wrap a {
    width: 100%;
    min-width: 0;
  }
}

@media screen and (max-width: 600px) {
  .global-game {
    padding: 18px 16px !important;
    border-radius: 20px !important;
  }

  .global-game .wp-block-media-text__media img,
  .global-game img {
    border-radius: 16px !important;
  }

  .global-game h2 {
    font-size: 23px;
  }
}
.global-game h2 {
  font-size: clamp(24px, 2.5vw, 32px);
  letter-spacing: 0.02em;
  font-weight: 700;
}
.global-game p {
  max-width: 30em;
  line-height: 2;
}
.global-game .wp-block-buttons,
.global-game .wp-block-button {
  margin-top: 20px;
}

/************************************
 * 投稿ページ h3 見出しデザイン
************************************/

body.single-post .article h3 {
  position: relative;
  margin: 46px 0 20px;
  padding: 10px 0 10px 18px;
  border: 0 !important;
  background: none !important;
  color: #243244;
  font-size: clamp(22px, 2.4vw, 28px);
  line-height: 1.55;
  font-weight: 800;
  letter-spacing: 0.01em;
}

/* 左アクセント */
body.single-post .article h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: calc(100% - 8px);
  min-height: 32px;
  border-radius: 999px;
  background: linear-gradient(180deg, #fde86f 0%, #F9D923 58%, #dfbe16 100%);
  box-shadow: 0 4px 10px rgba(249, 217, 35, 0.22);
}

/* h3直後の本文とのつながりを自然に */
body.single-post .article h3 + p {
  margin-top: 0;
}

/* スマホ */
@media screen and (max-width: 834px) {
  body.single-post .article h3 {
    margin: 38px 0 16px;
    padding-left: 16px;
    font-size: 22px;
  }

  body.single-post .article h3::before {
    width: 5px;
    min-height: 28px;
  }
}

@media screen and (max-width: 480px) {
  body.single-post .article h3 {
    font-size: 20px;
    line-height: 1.5;
  }
}