:where(.wp-block-columns){
  margin-bottom: 0;
}

/* =========================================================
   Gutenberg Button Styles (core/button)
   投稿者が「スタイル」から選べるプリセット
========================================================= */

/* 共通：形状・余白など（既存ボタンと合わせるなら調整OK） */
.wp-block-button.is-style-ishikyo-primary .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline .wp-block-button__link,
.wp-block-button.is-style-ishikyo-blue .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-blue .wp-block-button__link,
.wp-block-button.is-style-ishikyo-green .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-green .wp-block-button__link,
.wp-block-button.is-style-ishikyo-orange .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-orange .wp-block-button__link,
.wp-block-button.is-style-ishikyo-aqua .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-aqua .wp-block-button__link,
.wp-block-button.is-style-ishikyo-gray .wp-block-button__link,
.wp-block-button.is-style-ishikyo-dark .wp-block-button__link {
  border-radius: 40px;
  padding: 12px 16px;
  text-decoration: none;
  font-weight: 700;
  width: 200px;
  margin: 15px 0;
}

/* 赤グラデ（標準） */
.wp-block-button.is-style-ishikyo-primary .wp-block-button__link {
  color: #fff;
  border: 1px solid transparent;
  background: -webkit-gradient(linear, left top, left bottom, from(#e88778), to(#d0340f));
  background: linear-gradient(to bottom, #e88778, #d0340f);
}

/* アウトライン（赤枠） */
.wp-block-button.is-style-ishikyo-outline .wp-block-button__link {
  color: #d0340f;
  background: #fff;
  border: 2px solid #d0340f;
}

/* 青 */
.wp-block-button.is-style-ishikyo-blue .wp-block-button__link {
  color: #fff;
  background: #1755aa;
  border: 1px solid #1755aa;
}

/* アウトライン（青枠） */
.wp-block-button.is-style-ishikyo-outline-blue .wp-block-button__link {
  color: #1755aa;
  background: #fff;
  border: 2px solid #1755aa;
}

/* グリーン */
.wp-block-button.is-style-ishikyo-green .wp-block-button__link {
  color: #fff;
  background: #2e7d32;
  border: 1px solid #2e7d32;
}

/* アウトライン（緑枠） */
.wp-block-button.is-style-ishikyo-outline-green .wp-block-button__link {
  color: #2e7d32;
  background: #fff;
  border: 2px solid #2e7d32;
}

/* オレンジ */
.wp-block-button.is-style-ishikyo-orange .wp-block-button__link {
  color: #fff;
  background: #FFB733;
  border: 1px solid #FFB733;
}

/* アウトライン（オレンジ枠） */
.wp-block-button.is-style-ishikyo-outline-orange .wp-block-button__link {
  color: #FFB733;
  background: #fff;
  border: 2px solid #FFB733;
}

/* 水色 */
.wp-block-button.is-style-ishikyo-aqua .wp-block-button__link {
  color: #fff;
  background: #53c8d7;
  border: 1px solid #53c8d7;
}

/* アウトライン（水色枠） */
.wp-block-button.is-style-ishikyo-outline-aqua .wp-block-button__link {
  color: #53c8d7;
  background: #fff;
  border: 2px solid #53c8d7;
}

/* グレー（注意/無効風） */
.wp-block-button.is-style-ishikyo-gray .wp-block-button__link {
  color: #fff;
  background: #aaaaaa;
  border: 1px solid #aaaaaa;
}

/* ダーク（強調） */
.wp-block-button.is-style-ishikyo-dark .wp-block-button__link {
  color: #fff;
  background: #222;
  border: 1px solid #222;
}

.ishikyo-only-guest h3:first-child,
.ishikyo-only-login h3:first-child
{
  margin-top:15px !important;
  text-align: center;
}
.ishikyo-only-guest p,
.ishikyo-only-login p
{
  margin-top:15px !important;
  text-align: center;
}

.ishikyo-only-guest .is-layout-flex,
.ishikyo-only-login .is-layout-flex
{
  justify-content: space-around;
}
.is-campaign-cta{
/*  padding: 24px;
  border: 1px solid #fff;
  border-radius: 12px;
  margin: 15px auto;*/
}

.is-seminar-cta{
/*  padding: 24px;
  border: 1px solid #fff;
  border-radius: 12px;
  margin: 15px auto;*/
}


/* =========================================================
   ishikyo UI tokens（ここだけ触れば全体が変わる）
========================================================= */
:root{
  --ishikyo-radius-lg: 14px;
  --ishikyo-radius-md: 10px;
  --ishikyo-gap: 22px;

  --ishikyo-text: #222;
  --ishikyo-muted: #666;

  --ishikyo-border: rgba(0,0,0,.12);
  --ishikyo-border-strong: rgba(0,0,0,.18);

  /* 背景（Group） */
  --ishikyo-bg-beige: #f5f1e6;
  --ishikyo-bg-pink:  #faecef;
  --ishikyo-bg-cream: #fbf3df;
  --ishikyo-bg-sand:  #f3e7d8;
  --ishikyo-bg-mist:  #f3f3f3;

  /* 見出し・項目（色5種） */
  --ishikyo-red:    #c45757;
  --ishikyo-blue:   #2b6cb0;
  --ishikyo-green:  #2e7d32;
  --ishikyo-orange: #d9822b;
  --ishikyo-gray:   #666666;
  --ishikyo-brown:  #FFFFFF;
  --ishikyo-brown2:  #844d16;

  /* 帯の背景（薄め） */
  --ishikyo-red-bg:    #fdeeee;
  --ishikyo-blue-bg:   #eaf2ff;
  --ishikyo-green-bg:  #eaf6ea;
  --ishikyo-orange-bg: #fff2e6;
  --ishikyo-gray-bg:   #f3f3f3;
  --ishikyo-brown-bg:  #c8b097;
}


/* =========================================================
   A) Gutenberg Button Styles（core/button）
========================================================= */
.wp-block-button.is-style-ishikyo-primary .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline .wp-block-button__link,
.wp-block-button.is-style-ishikyo-blue .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-blue .wp-block-button__link,
.wp-block-button.is-style-ishikyo-green .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-green .wp-block-button__link,
.wp-block-button.is-style-ishikyo-orange .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-orange .wp-block-button__link,
.wp-block-button.is-style-ishikyo-aqua .wp-block-button__link,
.wp-block-button.is-style-ishikyo-outline-aqua .wp-block-button__link,
.wp-block-button.is-style-ishikyo-gray .wp-block-button__link,
.wp-block-button.is-style-ishikyo-dark .wp-block-button__link {
  border-radius: 40px;
  padding: 12px 16px;
  text-decoration: none;
  font-weight: 700;
  width: 200px;
}

.wp-block-button.is-style-ishikyo-primary .wp-block-button__link {
  color: #fff;
  border: 1px solid transparent;
  background: linear-gradient(to bottom, #e88778, #d0340f);
}
.wp-block-button.is-style-ishikyo-outline .wp-block-button__link {
  color: #d0340f;
  background: #fff;
  border: 2px solid #d0340f;
}
.wp-block-button.is-style-ishikyo-blue .wp-block-button__link {
  color: #fff;
  background: #1755aa;
  border: 1px solid #1755aa;
}
.wp-block-button.is-style-ishikyo-outline-blue .wp-block-button__link {
  color: #1755aa;
  background: #fff;
  border: 2px solid #1755aa;
}
.wp-block-button.is-style-ishikyo-green .wp-block-button__link {
  color: #fff;
  background: #2e7d32;
  border: 1px solid #2e7d32;
}
.wp-block-button.is-style-ishikyo-outline-green .wp-block-button__link {
  color: #2e7d32;
  background: #fff;
  border: 2px solid #2e7d32;
}
.wp-block-button.is-style-ishikyo-orange .wp-block-button__link {
  color: #fff;
  background: #FFB733;
  border: 1px solid #FFB733;
}
.wp-block-button.is-style-ishikyo-outline-orange .wp-block-button__link {
  color: #FFB733;
  background: #fff;
  border: 2px solid #FFB733;
}
.wp-block-button.is-style-ishikyo-aqua .wp-block-button__link {
  color: #fff;
  background: #53c8d7;
  border: 1px solid #53c8d7;
}
.wp-block-button.is-style-ishikyo-outline-aqua .wp-block-button__link {
  color: #53c8d7;
  background: #fff;
  border: 2px solid #53c8d7;
}
.wp-block-button.is-style-ishikyo-gray .wp-block-button__link {
  color: #fff;
  background: #aaaaaa;
  border: 1px solid #aaaaaa;
}
.wp-block-button.is-style-ishikyo-dark .wp-block-button__link {
  color: #fff;
  background: #222;
  border: 1px solid #222;
}


/* =========================================================
   B) 会員向け出し分け（見た目調整）
========================================================= */
.ishikyo-only-guest h3:first-child,
.ishikyo-only-login h3:first-child {
  margin-top:15px !important;
  text-align: center;
}
.ishikyo-only-guest p,
.ishikyo-only-login p {
  margin-top:15px !important;
  text-align: center;
}
.ishikyo-only-guest .is-layout-flex,
.ishikyo-only-login .is-layout-flex {
  justify-content: space-around;
}


/* =========================================================
   C) CTA（className方式）
========================================================= */
.is-campaign-cta{
/*  padding: 24px;
  border: 1px solid #fff;
  border-radius: 12px;
  margin: 15px auto;*/
}
.is-seminar-cta{
/*  padding: 24px;
  border: 1px solid #fff;
  border-radius: 12px;
  margin: 15px auto;*/
}


/* =========================================================
   1) セクション枠（Group）背景 5種
========================================================= */
.wp-block-group.is-style-ishikyo-bg-beige{
  background: var(--ishikyo-bg-beige);
  border-radius: var(--ishikyo-radius-lg);
  padding: 26px 24px;
}
.wp-block-group.is-style-ishikyo-bg-pink{
  background: var(--ishikyo-bg-pink);
  border-radius: var(--ishikyo-radius-lg);
  padding: 26px 24px;
}
.wp-block-group.is-style-ishikyo-bg-cream{
  background: var(--ishikyo-bg-cream);
  border-radius: var(--ishikyo-radius-lg);
  padding: 26px 24px;
}
.wp-block-group.is-style-ishikyo-bg-sand{
  background: var(--ishikyo-bg-sand);
  border-radius: var(--ishikyo-radius-lg);
  padding: 26px 24px;
}
.wp-block-group.is-style-ishikyo-bg-mist{
  background: var(--ishikyo-bg-mist);
  border-radius: var(--ishikyo-radius-lg);
  padding: 26px 24px;
}
.wp-block-group[class*="is-style-ishikyo-bg-"] > *:first-child{ margin-top: 0; }
.wp-block-group[class*="is-style-ishikyo-bg-"] > *:last-child{  margin-bottom: 0; }


/* =========================================================
   2) 見出し：幅100%の帯（投稿者が色を選べる：5種）
   - h1?h4対応（必要ならh5/h6も追加OK）
========================================================= */
h1[class*="is-style-ishikyo-heading-band-"],
h2[class*="is-style-ishikyo-heading-band-"],
h3[class*="is-style-ishikyo-heading-band-"],
h4[class*="is-style-ishikyo-heading-band-"]{
  position: relative;
  display: block;
  width: 100%;
  padding: 12px 16px;
  margin: 0 0 14px 0;
  border-radius: 10px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.35;
  box-sizing: border-box;
}

/* 左アクセント（帯っぽさ＋視認性） */
h1[class*="is-style-ishikyo-heading-band-"]::before,
h2[class*="is-style-ishikyo-heading-band-"]::before,
h3[class*="is-style-ishikyo-heading-band-"]::before,
h4[class*="is-style-ishikyo-heading-band-"]::before{
/*  content:"";
  position:absolute;
  left: 0;
  top: 0;
  width: 6px;
  height: 100%;
  border-radius: 10px 0 0 10px;
  opacity: .95;*/
}

/* 5色 */
h1.is-style-ishikyo-heading-band-red,
h2.is-style-ishikyo-heading-band-red,
h3.is-style-ishikyo-heading-band-red,
h4.is-style-ishikyo-heading-band-red{
  background: var(--ishikyo-red-bg);
  color: var(--ishikyo-red);
}
h1.is-style-ishikyo-heading-band-red::before,
h2.is-style-ishikyo-heading-band-red::before,
h3.is-style-ishikyo-heading-band-red::before,
h4.is-style-ishikyo-heading-band-red::before{ background: var(--ishikyo-red); }

h1.is-style-ishikyo-heading-band-blue,
h2.is-style-ishikyo-heading-band-blue,
h3.is-style-ishikyo-heading-band-blue,
h4.is-style-ishikyo-heading-band-blue{
  background: var(--ishikyo-blue-bg);
  color: var(--ishikyo-blue);
}
h1.is-style-ishikyo-heading-band-blue::before,
h2.is-style-ishikyo-heading-band-blue::before,
h3.is-style-ishikyo-heading-band-blue::before,
h4.is-style-ishikyo-heading-band-blue::before{ background: var(--ishikyo-blue); }

h1.is-style-ishikyo-heading-band-green,
h2.is-style-ishikyo-heading-band-green,
h3.is-style-ishikyo-heading-band-green,
h4.is-style-ishikyo-heading-band-green{
  background: var(--ishikyo-green-bg);
  color: var(--ishikyo-green);
}
h1.is-style-ishikyo-heading-band-green::before,
h2.is-style-ishikyo-heading-band-green::before,
h3.is-style-ishikyo-heading-band-green::before,
h4.is-style-ishikyo-heading-band-green::before{ background: var(--ishikyo-green); }

h1.is-style-ishikyo-heading-band-orange,
h2.is-style-ishikyo-heading-band-orange,
h3.is-style-ishikyo-heading-band-orange,
h4.is-style-ishikyo-heading-band-orange{
  background: var(--ishikyo-orange-bg);
  color: var(--ishikyo-orange);
}
h1.is-style-ishikyo-heading-band-orange::before,
h2.is-style-ishikyo-heading-band-orange::before,
h3.is-style-ishikyo-heading-band-orange::before,
h4.is-style-ishikyo-heading-band-orange::before{ background: var(--ishikyo-orange); }

h1.is-style-ishikyo-heading-band-brown,
h2.is-style-ishikyo-heading-band-brown,
h3.is-style-ishikyo-heading-band-brown,
h4.is-style-ishikyo-heading-band-brown{
  background: var(--ishikyo-brown-bg);
  color: var(--ishikyo-brown);
}
h1.is-style-ishikyo-heading-band-brown::before,
h2.is-style-ishikyo-heading-band-brown::before,
h3.is-style-ishikyo-heading-band-brown::before,
h4.is-style-ishikyo-heading-band-brown::before{ background: var(--ishikyo-brown); }

h1.is-style-ishikyo-heading-band-gray,
h2.is-style-ishikyo-heading-band-gray,
h3.is-style-ishikyo-heading-band-gray,
h4.is-style-ishikyo-heading-band-gray{
  background: var(--ishikyo-gray-bg);
  color: var(--ishikyo-gray);
}
h1.is-style-ishikyo-heading-band-gray::before,
h2.is-style-ishikyo-heading-band-gray::before,
h3.is-style-ishikyo-heading-band-gray::before,
h4.is-style-ishikyo-heading-band-gray::before{ background: var(--ishikyo-gray); }


/* =========================================================
   3) 行テンプレ：左「項目名ボックス」／右「内容」
   - Columns：className "ishikyo-info-row"（パターンと一致）
========================================================= */
.wp-block-columns.ishikyo-info-row{
  gap: var(--ishikyo-gap);
  margin: 18px 0;
}

/* =========================================================
   ★追加：PCは 22/78 を固定（編集者が触っても戻す）
   - パターン側の width 指定が消えても崩れないよう保険
========================================================= */
.wp-block-columns.ishikyo-info-row > .wp-block-column[class*="is-style-ishikyo-field-label-"]{
  flex-basis: 22% !important;
  width: 22% !important;
  flex-grow: 0;
}

.wp-block-columns.ishikyo-info-row > .wp-block-column.is-style-ishikyo-field-body{
  flex-basis: 78% !important;
  width: 78% !important;
  flex-grow: 1;
}


/* 左：項目名（色5種）共通の箱 */
.wp-block-column[class*="is-style-ishikyo-field-label-"]{
  display: flex;
  align-items: center;
}
.wp-block-column[class*="is-style-ishikyo-field-label-"] > *{
  background: #fff;
  border: 1px solid var(--ishikyo-border);
  border-radius: var(--ishikyo-radius-md);
  padding: 10px 14px;
  width: 100%;
  box-shadow: 0 1px 0 rgba(0,0,0,.05);
  position: relative;
  box-sizing: border-box;
}

/* 左アクセント（表の見た目寄せ） */
.wp-block-column[class*="is-style-ishikyo-field-label-"] > *::before{
/*  content:"";
  position:absolute;
  left:0;
  top:0;
  width: 4px;
  height: 100%;
  border-radius: var(--ishikyo-radius-md) 0 0 var(--ishikyo-radius-md);
  opacity: .9*/
}

/* 左カラム内テキスト */
.wp-block-column[class*="is-style-ishikyo-field-label-"] p{
  margin: 0;
  font-weight: 600;
  line-height: 1.35;
  text-align: center;
}

/* 左：色5種 */
.wp-block-column.is-style-ishikyo-field-label-red p{ color: var(--ishikyo-red); }
.wp-block-column.is-style-ishikyo-field-label-red > *::before{ background: var(--ishikyo-red); }

.wp-block-column.is-style-ishikyo-field-label-blue p{ color: var(--ishikyo-blue); }
.wp-block-column.is-style-ishikyo-field-label-blue > *::before{ background: var(--ishikyo-blue); }

.wp-block-column.is-style-ishikyo-field-label-green p{ color: var(--ishikyo-green); }
.wp-block-column.is-style-ishikyo-field-label-green > *::before{ background: var(--ishikyo-green); }

.wp-block-column.is-style-ishikyo-field-label-orange p{ color: var(--ishikyo-orange); }
.wp-block-column.is-style-ishikyo-field-label-orange > *::before{ background: var(--ishikyo-orange); }

.wp-block-column.is-style-ishikyo-field-label-brown p{ color: var(--ishikyo-brown2); }
.wp-block-column.is-style-ishikyo-field-label-brown > *::before{ background: var(--ishikyo-brown2); }

.wp-block-column.is-style-ishikyo-field-label-gray p{ color: var(--ishikyo-gray); }
.wp-block-column.is-style-ishikyo-field-label-gray > *::before{ background: var(--ishikyo-gray); }

/* 右：内容（罫線） */
.wp-block-column.is-style-ishikyo-field-body{
  border-bottom: 1px solid var(--ishikyo-border);
  padding-bottom: 14px;
}
.wp-block-column.is-style-ishikyo-field-body > *:first-child{ margin-top: 0; }
.wp-block-column.is-style-ishikyo-field-body > *:last-child{  margin-bottom: 0; }
.wp-block-column.is-style-ishikyo-field-body p{
  color: var(--ishikyo-text);
  line-height: 1.8;
}
.wp-block-column.is-style-ishikyo-field-body figure{ margin: 10px 0 0; }
.wp-block-column.is-style-ishikyo-field-body iframe{ max-width: 100%; }

/* モバイル：縦積み */
@media (max-width: 780px){
  .wp-block-columns.ishikyo-info-row{
    gap: 12px;
  }

    /* ★追加：スマホは縦積み＆両カラム100%を強制 */
  .wp-block-columns.ishikyo-info-row{
    flex-wrap: wrap !important;
  }
  .wp-block-columns.ishikyo-info-row > .wp-block-column{
    flex-basis: 100% !important;
    width: 100% !important;
  }

  /* 左ラベルが縦積みでも見やすいように */
  .wp-block-column[class*="is-style-ishikyo-field-label-"] > *{
    border-radius: 999px;
    text-align: center;
  }
  .wp-block-column[class*="is-style-ishikyo-field-label-"] > *::before{
    width: 0; /* 縦積みは左線を消してスッキリ */
  }
}

.wp-block-column-is-layout-flow{
  padding-top: 7px;
}

/* Gutenbergリスト　黒丸を戻す */
ul.wp-block-list {
    list-style: disc !important;
    padding-left: 1.5em;   /* 黒丸を表示させるための余白 */
}

ul.wp-block-list > li {
    list-style: disc !important;
    margin-left: 0 !important;
    margin-bottom: 1.5em;  /* 文字送り（行間ではなく項目間の間隔） */
    line-height: 1.5;      /* 行間を広げたい場合はこちら */
}
/* li内のspanがブロック化して黒丸がズレるのを防ぐ */
ul.wp-block-list li > span{
  display: inline;
}

.ishikyopost p{
  line-height: 200%;
}

:is(h1, h2, h3, h4)[class*="is-style-ishikyo-heading-band-"]
+ :is(h1, h2, h3, h4)[class*="is-style-ishikyo-heading-band-"] {
  margin-top: 20px;
}

.brb{
  border-bottom: 1px solid #333;
}
.brt{
  border-top: 1px solid #333;
}
.brr{
  border-right: 1px solid #333;
}
.brl{
  border-left: 1px solid #333;
}
.brall{
  border: 1px solid #333;
}

.bg_white{
  background-color: #fff;
}