@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&family=Noto+Sans+JP:wght@100..900&display=swap");
/* # =================================================================
#	メイン
# ================================================================= */
/*!
 * blocks-content.css
 * - common.css の強いリセット（*{margin:0…}）の影響下でも “本文だけ” 破綻しにくい設計
 *
 * 想定HTML:
 * <* class="post-content wp-block-post-content is-layout-flow"> ... </*>
 */
/* =========================================================
   0) 本文コンテナのベース
   ========================================================= */
.wp-block-post-content {
  /* common.css が font-size: inherit を全要素に当てるので、本文側で基準を作る */
  font-size: var(--wp--preset--font-size--medium, 16px);
  line-height: 1.8;
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
  font-weight: 400;
  -webkit-font-feature-settings: "liga";
  font-feature-settings: "liga";
  /* 文字色は theme.json があるならそれを優先 */
  color: var(--wp--preset--color--contrast, inherit);
  /* 長文の読みやすさ */
  word-break: break-word;
  overflow-wrap: anywhere;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

/* 画像や埋め込みがはみ出しにくいように */
.wp-block-post-content img,
.wp-block-post-content video,
.wp-block-post-content iframe {
  max-width: 100%;
}

.wp-block-post-content iframe[src*='youtube'] {
  aspect-ratio: 16 / 9;
  height: auto;
}

/* =========================================================
   1) ブロック間の標準余白（Twenty系の肝）
   ========================================================= */
/* theme.json の blockGap を尊重。無ければ 1.5rem を標準に。 */
.wp-block-post-content.is-layout-flow {
  --my--content-gap: var(--wp--style--block-gap, 1.5rem);
}

/* 「兄弟ブロックの間にだけ」余白を付ける */
.wp-block-post-content.is-layout-flow > * + * {
  -webkit-margin-before: var(--my--content-gap);
  margin-block-start: var(--my--content-gap);
}

/* =========================================================
   2) 見出し（控えめに Twenty系っぽく）
   ========================================================= */
.wp-block-post-content :where(h1, h2, h3, h4, h5, h6) {
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: 0.01em;
}

/* 見出しはブロック間余白だけだと弱いことがあるので、少し強調 */
.wp-block-post-content :where(h1) {
  font-size: clamp(1.8rem, 3vw, 2.4rem);
}

.wp-block-post-content :where(h2) {
  font-size: clamp(1.5rem, 2.4vw, 2rem);
}

.wp-block-post-content :where(h3) {
  font-size: clamp(1.25rem, 2vw, 1.6rem);
}

.wp-block-post-content :where(h4) {
  font-size: 1.15rem;
}

.wp-block-post-content :where(h5) {
  font-size: 1.05rem;
}

.wp-block-post-content :where(h6) {
  font-size: 1.0rem;
}

/* 見出し直後の余白は少し詰める（文章のまとまり感） */
.wp-block-post-content :where(h1, h2, h3, h4, h5, h6) + * {
  -webkit-margin-before: calc(var(--my--content-gap) * 0.55);
  margin-block-start: calc(var(--my--content-gap) * 0.55);
}

/* =========================================================
   3) 段落・リンク
   ========================================================= */
.wp-block-post-content {
  font-size: 16px;
  line-height: 1.75em;
  letter-spacing: 0.1em;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content {
    font-size: 15px;
  }
}

.wp-block-post-content p {
  /* ブロック間余白が主役なので、p自体のmarginは持たせない（=Twenty寄り） */
}

.wp-block-post-content a {
  color: var(--wp--preset--color--primary, currentColor);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

.wp-block-post-content a:hover {
  text-decoration-thickness: 0.12em;
}

/* =========================================================
   4) リスト（common.cssで潰れがちなので復活）
   ========================================================= */
.wp-block-post-content :where(ul, ol) {
  margin: 0;
  -webkit-padding-start: 1.5em;
  padding-inline-start: 1.5em;
}

.wp-block-post-content ul {
  list-style: disc;
}

.wp-block-post-content ol {
  list-style: decimal;
}

.wp-block-post-content li + li {
  -webkit-margin-before: 0.25em;
  margin-block-start: 0.25em;
}

/* 入れ子は少し詰める */
.wp-block-post-content li :where(ul, ol) {
  -webkit-margin-before: 0.35em;
  margin-block-start: 0.35em;
}

/* =========================================================
   5) 引用・プルクオート
   ========================================================= */
.wp-block-post-content blockquote {
  margin: 0;
  padding: 0.2em 0 0.2em 1.1em;
  border-left: 3px solid currentColor;
  opacity: 0.9;
}

.wp-block-post-content blockquote cite {
  display: block;
  margin-top: 0.6em;
  font-size: 0.9em;
  opacity: 0.8;
}

/* pullquote はコア側CSSもあるので最低限の整え */
.wp-block-post-content .wp-block-pullquote {
  margin: 0;
  padding: 1.2em 1.4em;
  border-top: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
}

.wp-block-post-content .wp-block-pullquote blockquote {
  border-left: none;
  padding: 0;
}

/* =========================================================
   6) 区切り線（separator）
   ========================================================= */
.wp-block-post-content hr,
.wp-block-post-content .wp-block-separator {
  border: none;
  border-top: 1px solid currentColor;
  opacity: 0.25;
  margin: 0;
  /* 余白は blockGap に任せる */
}

/* =========================================================
   7) コード・整形済みテキスト
   ========================================================= */
.wp-block-post-content :where(code, kbd, samp) {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 0.95em;
  padding: 0.15em 0.35em;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.06);
}

.wp-block-post-content pre {
  margin: 0;
  padding: 1em 1.1em;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.06);
  overflow: auto;
}

.wp-block-post-content pre code {
  padding: 0;
  background: transparent;
}

/* =========================================================
   8) テーブル
   ========================================================= */
.wp-block-post-content table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.wp-block-post-content th,
.wp-block-post-content td {
  padding: 0.6em 0.75em;
  border: 1px solid rgba(0, 0, 0, 0.15);
  vertical-align: top;
}

.wp-block-post-content thead th {
  background: rgba(0, 0, 0, 0.05);
}

/* =========================================================
   9) 画像・キャプション・ギャラリー
   ========================================================= */
.wp-block-post-content figure {
  margin: 0;
}

.wp-block-post-content figcaption {
  margin-top: 0.6em;
  font-size: 0.9em;
  line-height: 1.6;
  opacity: 0.8;
}

/* gallery はコアCSSに寄せつつ微調整 */
/*.wp-block-post-content .wp-block-gallery {
 margin: 0;
}*/
/* =========================================================
   10) ボタン（coreの見た目を邪魔しない程度）
   ========================================================= */
.wp-block-post-content .wp-block-button .wp-block-button__link {
  text-decoration: none;
  border-radius: 9999px;
}

.wp-block-post-content .wp-block-button .wp-block-button__link:link, .wp-block-post-content .wp-block-button .wp-block-button__link:visited {
  color: #ffffff;
  text-decoration: none;
}

.wp-block-post-content .wp-block-button .wp-block-button__link:hover, .wp-block-post-content .wp-block-button .wp-block-button__link:active {
  color: #ffffff;
  text-decoration: none;
}

/* =========================================================
   11) アライン（wide/full）
   - レイアウト幅は theme.json 側（layout.contentSize/wideSize）推奨
   ========================================================= */
.wp-block-post-content :where(.alignwide, .alignfull) {
  width: 100%;
}

/* “とりあえず” wide/full を効かせたい場合の簡易版（必要なら調整）
   ※レイアウト設計によっては邪魔になるので、不要なら削除OK */
.wp-block-post-content .alignwide {
  max-width: var(--wp--style--global--wide-size, 1100px);
  margin-inline: auto;
}

.wp-block-post-content .alignfull {
  max-width: none;
  width: 100%;
  margin-inline: 0;
}

/* =========================================================
   12) 便利な最低限の保険
   ========================================================= */
/* 空の段落が高さだけ持つのを防ぎたい場合 */
.wp-block-post-content p:empty {
  display: none;
}

/* details ブロック等 */
.wp-block-post-content details {
  margin: 0;
  padding: 0.6em 0.8em;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}

.wp-block-post-content details > summary {
  cursor: pointer;
  font-weight: 600;
}

:root {
  --cnts-max-wid: 800px;
  --cnts-outer-max: 768px;
}

.wp-block-columns {
  gap: 0;
}

.editor-styles-wrapper {
  padding: 0 10px;
}

.editor-styles-wrapper > * {
  max-width: var(--cnts-outer-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.editor-styles-wrapper .wp-block-post-content figure[class*='wp-block-'] > *:not(table) {
  max-width: min(100%, var(--wp--style--global--content-size)) !important;
}

.editor-styles-wrapper .wp-block-post-content figure[class*='wp-block-'].alignwide > *, .editor-styles-wrapper .wp-block-post-content figure[class*='wp-block-'].alignfull > * {
  max-width: 100% !important;
}

.editor-styles-wrapper .wp-block-post-content figure[class*='wp-block-'].alignwide img, .editor-styles-wrapper .wp-block-post-content figure[class*='wp-block-'].alignfull img {
  width: 100% !important;
  height: auto;
}

.editor-styles-wrapper .wp-block-post-content .wp-block-gallery .wp-block-image {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.editor-styles-wrapper .wp-block-post-content .wp-block-image {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: 0 !important;
  margin-right: auto !important;
}

.editor-styles-wrapper .wp-block-post-content .wp-block-image.alignleft {
  float: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

.editor-styles-wrapper .wp-block-post-content .wp-block-image.aligncenter {
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.editor-styles-wrapper .wp-block-post-content .wp-block-image.alignright {
  float: none !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}

.editor-styles-wrapper .wp-block-flexible-table-block-table {
  overflow: visible !important;
}

.editor-styles-wrapper .wp-block-flexible-table-block-table table {
  overflow: visible !important;
}

.editor-styles-wrapper .acf-block-preview:empty {
  background-color: #eeeeee;
  min-height: 5em;
}

.editor-styles-wrapper .page-links01,
.editor-styles-wrapper .page-links02 {
  max-height: none;
  overflow-x: hidden;
  overflow-y: hidden;
  overflow: hidden;
}

.editor-styles-wrapper .page-links01 ul,
.editor-styles-wrapper .page-links02 ul {
  max-height: none;
  overflow-x: hidden;
  overflow-y: hidden;
  overflow: hidden;
}

/* フォーム要素を個別にデフォルトに戻す */
.wp-block-post-content .wpcf7 input,
.wp-block-post-content .wpcf7 textarea,
.wp-block-post-content .wpcf7 select,
.wp-block-post-content .wpcf7 button {
  all: revert;
}

.wp-block-post-content .wpcf7 .wpcf7-form-control.wpcf7-text {
  max-width: 90%;
  border: 1px solid #cccccc;
}

.wp-block-post-content .wpcf7 .wpcf7-select {
  max-width: 90%;
  border: 1px solid #cccccc;
}

.wp-block-post-content .wpcf7 .wpcf7-textarea {
  width: 90%;
  border: 1px solid #cccccc;
}

.wp-block-post-content .wpcf7 .wpcf7-form-control.wpcf7-submit {
  border-radius: 0;
  cursor: pointer;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid #000000;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #ffffff;
  color: #000000;
  position: relative;
  left: 0px;
  top: 0px;
  min-height: 50px;
  padding: 10px 40px;
  text-align: center;
  font-weight: bold;
}

.wpcf7 form.sent .wpcf7-response-output {
  background-color: #F3FFF3;
  border-color: #46b450;
  border-style: solid;
  border-width: 2px;
  margin-left: 0;
  margin-right: 0;
  padding: 1em 0.6em;
  border-radius: 8px;
  color: #46b450;
  font-size: 1.0em;
  line-height: 1.5em;
}

.wpcf7 form.invalid .wpcf7-response-output {
  background-color: #FFF5F5;
  border-color: #dc3232;
  border-style: solid;
  border-width: 2px;
  margin-left: 0;
  margin-right: 0;
  padding: 1em 0.6em;
  border-radius: 8px;
  color: #dc3232;
  font-size: 1.0em;
  line-height: 1.5em;
}

.acf-field-wysiwyg iframe,
.acf-field-wysiwyg textarea {
  max-height: 100px !important;
  min-height: 100px !important;
}

.acf-field-wysiwyg .mce-btn {
  display: none;
}

.acf-field-wysiwyg .mce-btn[aria-label*='リンクの挿入'] {
  display: block !important;
}

.editor-visual-editor__post-title-wrapper > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.block-editor-block-list__layout.is-root-container > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: 100% !important;
}

/* デフォルトのギャラリーブロック内の各画像コンテナを制御 */
.wp-block-gallery .wp-block-image a,
.wp-block-gallery .wp-block-image img {
  width: 100% !important;
  height: 100% !important;
}

/*.wp-block-gallery .wp-block-image img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center; 
}*/
.wp-block-gallery .wp-block-image {
  -webkit-box-flex: 0 !important;
  -webkit-flex-grow: 0 !important;
  -ms-flex-positive: 0 !important;
  flex-grow: 0 !important;
  /* カラム数が少なくても拡げて表示させない */
}

.wp-block-post-title {
  border-left: none;
  background-color: #e7e9f3;
  padding: 15px 20px;
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
  font-size: 22px;
  line-height: 1.25em;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #15298b;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-title {
    font-size: 20px;
    line-height: 1.25em;
  }
}

.wp-block-post-title {
  margin-bottom: 24px;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-title {
    margin-bottom: 32px;
  }
}

.wp-block-post-content.is-layout-flow {
  padding-left: 20px;
  padding-right: 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /*> iframe {
		width: 100%;
		aspect-ratio: 500 / 281;
	}*/
  /* card link */
}

.wp-block-post-content.is-layout-flow figure[class*='wp-block-'] > *:not(table) {
  max-width: min(100%, var(--wp--style--global--content-size));
}

.wp-block-post-content.is-layout-flow figure[class*='wp-block-'].alignwide, .wp-block-post-content.is-layout-flow figure[class*='wp-block-'].alignfull {
  width: auto;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.wp-block-post-content.is-layout-flow figure[class*='wp-block-'].alignwide > *:not(table), .wp-block-post-content.is-layout-flow figure[class*='wp-block-'].alignfull > *:not(table) {
  max-width: min(100%, var(--wp--style--global--wide-size));
}

.wp-block-post-content.is-layout-flow figure[class*='wp-block-'].alignwide img, .wp-block-post-content.is-layout-flow figure[class*='wp-block-'].alignfull img {
  width: 100%;
  height: auto;
}

.wp-block-post-content.is-layout-flow .alignleft {
  float: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

.wp-block-post-content.is-layout-flow .aligncenter {
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.wp-block-post-content.is-layout-flow .alignright {
  float: none !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}

.wp-block-post-content.is-layout-flow s {
  opacity: 0.6;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce > * + * {
  -webkit-margin-before: var(--my--content-gap);
  margin-block-start: var(--my--content-gap);
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce h1:not(:empty) + *, .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce h2:not(:empty) + *, .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce h3:not(:empty) + *, .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce h4:not(:empty) + *, .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce h5:not(:empty) + *, .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce h6:not(:empty) + * {
  -webkit-margin-before: calc(var(--my--content-gap) / 2);
  margin-block-start: calc(var(--my--content-gap) / 2);
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce ul {
  list-style-type: none;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .alignnone,
.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .alignleft,
.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .aligncenter,
.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .alignright {
  float: none;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce img[class*='wp-image-'] {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 600px;
  margin: 1.5em 0 1.5em;
  -ms-interpolation-mode: nearest-neighbor;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: -o-pixelated;
  image-rendering: pixelated;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce img[class*='wp-image-']:has(+ img[class*='wp-image-']),
.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce img[class*='wp-image-'] + img[class*='wp-image-'] {
  display: inline;
  margin-right: 1.0em;
  vertical-align: bottom;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce img[class*='wp-image-'][width='200'] {
  max-width: 200px;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce img[class*='wp-image-'][height='150'] {
  max-height: 150px;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption {
  width: auto !important;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin: 1.5em 0 1.5em !important;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption img {
  max-width: 100%;
  margin: 0;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption .wp-caption-text {
  margin-top: 8px;
  text-align: left;
  color: #221815;
  font-size: 14px;
  line-height: 1.5em;
  opacity: 0.8;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption.alignnone .wp-caption-text {
  text-align: left;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption.alignleft .wp-caption-text {
  text-align: left;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption.aligncenter .wp-caption-text {
  text-align: center;
}

.wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption.alignright .wp-caption-text {
  text-align: right;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce img[class*='wp-image-'] {
    max-width: 100%;
  }
  .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .wp-block-post-content.is-layout-flow .wp-block-freeform.block-library-rich-text__tinymce .wp-caption .wp-caption-text {
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.5em;
  }
}

.wp-block-post-content.is-layout-flow .post-date + .wp-block-heading {
  -webkit-margin-before: 0;
  margin-block-start: 0;
}

.wp-block-post-content.is-layout-flow h2.wp-block-heading {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-size: 22px;
  line-height: 1.5em;
  color: #15298b;
  font-weight: 600;
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
  -webkit-margin-after: 15px;
  margin-block-end: 15px;
}

.wp-block-post-content.is-layout-flow h2.wp-block-heading:nth-child(1) {
  -webkit-margin-before: 0;
  margin-block-start: 0;
}

.wp-block-post-content.is-layout-flow h2.wp-block-heading + h2 {
  -webkit-margin-before: 1.0em;
  margin-block-start: 1.0em;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow h2.wp-block-heading {
    font-size: 22px;
    -webkit-margin-before: 40px;
    margin-block-start: 40px;
    -webkit-margin-after: 15px;
    margin-block-end: 15px;
  }
}

.wp-block-post-content.is-layout-flow h3.wp-block-heading {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  position: relative;
  font-size: 20px;
  line-height: 1.5em;
  color: #15298b;
  font-weight: 600;
  -webkit-margin-before: 45px;
  margin-block-start: 45px;
  -webkit-margin-after: 15px;
  margin-block-end: 15px;
}

.wp-block-post-content.is-layout-flow h3.wp-block-heading:nth-child(1) {
  -webkit-margin-before: 0;
  margin-block-start: 0;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow h3.wp-block-heading {
    font-size: 20px;
    -webkit-margin-before: 40px;
    margin-block-start: 40px;
    -webkit-margin-after: 15px;
    margin-block-end: 15px;
  }
}

.wp-block-post-content.is-layout-flow h4.wp-block-heading,
.wp-block-post-content.is-layout-flow h5.wp-block-heading,
.wp-block-post-content.is-layout-flow h6.wp-block-heading {
  -webkit-margin-before: 45px;
  margin-block-start: 45px;
  -webkit-margin-after: 15px;
  margin-block-end: 15px;
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow h4.wp-block-heading,
  .wp-block-post-content.is-layout-flow h5.wp-block-heading,
  .wp-block-post-content.is-layout-flow h6.wp-block-heading {
    -webkit-margin-before: 40px;
    margin-block-start: 40px;
    -webkit-margin-after: 15px;
    margin-block-end: 15px;
  }
}

.wp-block-post-content.is-layout-flow h1 + *,
.wp-block-post-content.is-layout-flow h2 + *,
.wp-block-post-content.is-layout-flow h3 + *,
.wp-block-post-content.is-layout-flow h4 + *,
.wp-block-post-content.is-layout-flow h5 + *,
.wp-block-post-content.is-layout-flow h6 + * {
  -webkit-margin-before: 0 !important;
  margin-block-start: 0 !important;
}

.wp-block-post-content.is-layout-flow .wp-block-quote {
  background-color: #f7f7f7;
  padding: 3.0em 1.1em 1.1em 1.1em;
  border-color: #e1e1e1;
  border-width: 5px;
  position: relative;
}

.wp-block-post-content.is-layout-flow .wp-block-quote:before {
  content: "“";
  display: inline-block;
  position: absolute;
  top: 0.1em;
  left: 0.2em;
  height: 0.1em;
  margin: 0px;
  font-size: 3.8em;
  line-height: 1.0em;
  color: #d1d1d1;
  font-weight: bold;
}

.wp-block-post-content.is-layout-flow .wp-block-quote > * {
  margin-bottom: 1.5em;
}

.wp-block-post-content.is-layout-flow .wp-block-quote > *:nth-last-child(1) {
  margin-bottom: 0;
}

.wp-block-post-content.is-layout-flow .wp-block-image {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.wp-block-post-content.is-layout-flow .wp-block-image figcaption {
  margin: 0.4em 0 0;
  text-align: left;
  color: #000000;
  font-size: 1.0em;
}

.wp-block-post-content.is-layout-flow .wp-block-image.is-image-caption-center figcaption {
  text-align: center;
}

.wp-block-post-content.is-layout-flow .wp-block-image.is-image-caption-right figcaption {
  text-align: right;
}

.wp-block-post-content.is-layout-flow .wp-block-button .wp-element-button,
.wp-block-post-content.is-layout-flow .wp-block-button .wp-block-button__link {
  border-radius: 0;
  cursor: pointer;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  border: none;
  border-radius: 55px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #15298b;
  color: #ffffff;
  position: relative;
  left: 0px;
  top: 0px;
  min-width: 256px;
  min-height: 55px;
  padding: 5px 44px;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.25em;
  font-weight: 500;
}

.wp-block-post-content.is-layout-flow .wp-block-button .wp-element-button:link, .wp-block-post-content.is-layout-flow .wp-block-button .wp-element-button:visited,
.wp-block-post-content.is-layout-flow .wp-block-button .wp-block-button__link:link,
.wp-block-post-content.is-layout-flow .wp-block-button .wp-block-button__link:visited {
  color: #ffffff;
  text-decoration: none;
  opacity: 1.0;
}

.wp-block-post-content.is-layout-flow .wp-block-button .wp-element-button:hover, .wp-block-post-content.is-layout-flow .wp-block-button .wp-element-button:active,
.wp-block-post-content.is-layout-flow .wp-block-button .wp-block-button__link:hover,
.wp-block-post-content.is-layout-flow .wp-block-button .wp-block-button__link:active {
  color: #ffffff;
  text-decoration: none;
  opacity: 0.7;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .wp-block-button .wp-element-button,
  .wp-block-post-content.is-layout-flow .wp-block-button .wp-block-button__link {
    border-radius: 55px;
    min-width: 256px;
    min-height: 55px;
    padding: 5px 44px;
    font-size: 14px;
    line-height: 1.25em;
  }
}

.wp-block-post-content.is-layout-flow ruby > rt {
  display: ruby-text;
  font-size: 50%;
  text-align: start;
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media:after {
  content: attr(data-media-caption);
  display: block;
  white-space: pre-wrap;
  /* 改行反映 */
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-element-caption,
.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media:after {
  font-size: 14px;
  line-height: 1.5em;
  font-weight: normal;
  margin-top: 8px;
  margin-bottom: 0;
  text-align: left;
  opacity: 1.0;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow.wp-block-post-content .wp-element-caption,
  .wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media:after {
    font-size: 12px;
    margin-top: 4px;
  }
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-element-caption strong {
  color: #221815;
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-element-caption.is-caption-center {
  text-align: center;
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-element-caption.is-caption-right {
  text-align: right;
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media strong {
  color: #221815;
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media.is-caption-center:after {
  text-align: center;
}

.wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media.is-caption-right:after {
  text-align: right;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media {
    text-align: center;
  }
  .wp-block-post-content.is-layout-flow.wp-block-post-content .wp-block-media-text__media img {
    max-width: 60%;
    height: auto;
  }
}

.wp-block-post-content.is-layout-flow .wp-block-separator {
  opacity: 1.0;
  color: #cccccc;
  width: 100%;
  -webkit-margin-before: 1.75em;
  margin-block-start: 1.75em;
  -webkit-margin-after: 1.75em;
  margin-block-end: 1.75em;
}

.wp-block-post-content.is-layout-flow .wp-block-embed {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

.wp-block-post-content.is-layout-flow .wp-block-embed lite-youtube {
  max-width: none;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

.wp-block-post-content.is-layout-flow .wp-block-embed iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

.wp-block-post-content.is-layout-flow .wp-block-embed.wp-embed-aspect-16-9 iframe {
  aspect-ratio: 16 / 9;
}

.wp-block-post-content.is-layout-flow .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before {
  padding-top: 56.25%;
}

.wp-block-post-content.is-layout-flow .wp-block-embed.wp-embed-aspect-4-3 iframe {
  aspect-ratio: 16 / 9;
}

.wp-block-post-content.is-layout-flow .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper:before {
  padding-top: 56.25%;
}

.wp-block-post-content.is-layout-flow > *[style*='width:100%'],
.wp-block-post-content.is-layout-flow > *[style*='width: 100%'] {
  -webkit-box-sizing: border-box !important;
  box-sizing: border-box !important;
}

.wp-block-post-content.is-layout-flow .wp-block-media-text {
  -webkit-column-gap: 40px;
  -moz-column-gap: 40px;
  column-gap: 40px;
  row-gap: 1.75em;
}

.wp-block-post-content.is-layout-flow .wp-block-media-text > .wp-block-media-text__content {
  padding: 0;
}

.wp-block-post-content.is-layout-flow .wp-block-media-text > .wp-block-media-text__content > * + * {
  -webkit-margin-before: var(--my--content-gap);
  margin-block-start: var(--my--content-gap);
}

.wp-block-post-content.is-layout-flow h1 + .wp-block-media-text:has(> .wp-block-media-text__content > h2:nth-child(1)),
.wp-block-post-content.is-layout-flow h1 + .wp-block-media-text:has(> .wp-block-media-text__content > h3:nth-child(1)),
.wp-block-post-content.is-layout-flow h1 + .wp-block-media-text:has(> .wp-block-media-text__content > h4:nth-child(1)),
.wp-block-post-content.is-layout-flow h1 + .wp-block-media-text:has(> .wp-block-media-text__content > h5:nth-child(1)),
.wp-block-post-content.is-layout-flow h1 + .wp-block-media-text:has(> .wp-block-media-text__content > h6:nth-child(1)),
.wp-block-post-content.is-layout-flow h2 + .wp-block-media-text:has(> .wp-block-media-text__content > h2:nth-child(1)),
.wp-block-post-content.is-layout-flow h2 + .wp-block-media-text:has(> .wp-block-media-text__content > h3:nth-child(1)),
.wp-block-post-content.is-layout-flow h2 + .wp-block-media-text:has(> .wp-block-media-text__content > h4:nth-child(1)),
.wp-block-post-content.is-layout-flow h2 + .wp-block-media-text:has(> .wp-block-media-text__content > h5:nth-child(1)),
.wp-block-post-content.is-layout-flow h2 + .wp-block-media-text:has(> .wp-block-media-text__content > h6:nth-child(1)),
.wp-block-post-content.is-layout-flow h3 + .wp-block-media-text:has(> .wp-block-media-text__content > h2:nth-child(1)),
.wp-block-post-content.is-layout-flow h3 + .wp-block-media-text:has(> .wp-block-media-text__content > h3:nth-child(1)),
.wp-block-post-content.is-layout-flow h3 + .wp-block-media-text:has(> .wp-block-media-text__content > h4:nth-child(1)),
.wp-block-post-content.is-layout-flow h3 + .wp-block-media-text:has(> .wp-block-media-text__content > h5:nth-child(1)),
.wp-block-post-content.is-layout-flow h3 + .wp-block-media-text:has(> .wp-block-media-text__content > h6:nth-child(1)),
.wp-block-post-content.is-layout-flow h4 + .wp-block-media-text:has(> .wp-block-media-text__content > h2:nth-child(1)),
.wp-block-post-content.is-layout-flow h4 + .wp-block-media-text:has(> .wp-block-media-text__content > h3:nth-child(1)),
.wp-block-post-content.is-layout-flow h4 + .wp-block-media-text:has(> .wp-block-media-text__content > h4:nth-child(1)),
.wp-block-post-content.is-layout-flow h4 + .wp-block-media-text:has(> .wp-block-media-text__content > h5:nth-child(1)),
.wp-block-post-content.is-layout-flow h4 + .wp-block-media-text:has(> .wp-block-media-text__content > h6:nth-child(1)),
.wp-block-post-content.is-layout-flow h5 + .wp-block-media-text:has(> .wp-block-media-text__content > h2:nth-child(1)),
.wp-block-post-content.is-layout-flow h5 + .wp-block-media-text:has(> .wp-block-media-text__content > h3:nth-child(1)),
.wp-block-post-content.is-layout-flow h5 + .wp-block-media-text:has(> .wp-block-media-text__content > h4:nth-child(1)),
.wp-block-post-content.is-layout-flow h5 + .wp-block-media-text:has(> .wp-block-media-text__content > h5:nth-child(1)),
.wp-block-post-content.is-layout-flow h5 + .wp-block-media-text:has(> .wp-block-media-text__content > h6:nth-child(1)),
.wp-block-post-content.is-layout-flow h6 + .wp-block-media-text:has(> .wp-block-media-text__content > h2:nth-child(1)),
.wp-block-post-content.is-layout-flow h6 + .wp-block-media-text:has(> .wp-block-media-text__content > h3:nth-child(1)),
.wp-block-post-content.is-layout-flow h6 + .wp-block-media-text:has(> .wp-block-media-text__content > h4:nth-child(1)),
.wp-block-post-content.is-layout-flow h6 + .wp-block-media-text:has(> .wp-block-media-text__content > h5:nth-child(1)),
.wp-block-post-content.is-layout-flow h6 + .wp-block-media-text:has(> .wp-block-media-text__content > h6:nth-child(1)) {
  -webkit-margin-before: 1.5em !important;
  margin-block-start: 1.5em !important;
}

.wp-block-post-content.is-layout-flow .wp-block[data-type='acf/card-link'] .acf-block-component.acf-block-body > div {
  background-color: #f9f9f9;
  min-height: 3em;
}

.wp-block-post-content.is-layout-flow .wp-block[data-type='acf/card-link'] .acf-block-preview:empty:before {
  content: "カード型内部リンク";
}

.wp-block-post-content.is-layout-flow .card-link01,
.wp-block-post-content.is-layout-flow .blog_card {
  border: 1px solid #000000;
  color: #000000;
}

.wp-block-post-content.is-layout-flow .blog_card {
  display: block;
  position: relative;
  color: inherit;
  text-decoration: none;
}

.wp-block-post-content.is-layout-flow .card-link01 > a,
.wp-block-post-content.is-layout-flow .blog_card > .wrap {
  display: block;
  padding: 40px 20px 20px 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  color: inherit;
  text-decoration: none;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .card-link01 > a,
  .wp-block-post-content.is-layout-flow .blog_card > .wrap {
    padding: 35px 15px 15px 15px;
  }
}

.wp-block-post-content.is-layout-flow .card-link01 > a {
  position: relative;
}

.wp-block-post-content.is-layout-flow .card-link01 > a .shoulder,
.wp-block-post-content.is-layout-flow .blog_card .label {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  top: 0;
  padding: 5px 10px;
  background-color: #000000;
  color: #ffffff;
  font-size: 16px;
  line-height: 1.0em;
  font-weight: bold;
  white-space: nowrap;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .card-link01 > a .shoulder,
  .wp-block-post-content.is-layout-flow .blog_card .label {
    font-size: 14px;
  }
}

.wp-block-post-content.is-layout-flow .card-link01 > a .thumb,
.wp-block-post-content.is-layout-flow .blog_card > .wrap .photo {
  width: 200px;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .card-link01 > a .thumb,
  .wp-block-post-content.is-layout-flow .blog_card > .wrap .photo {
    width: 80px;
  }
}

.wp-block-post-content.is-layout-flow .card-link01 > a .data,
.wp-block-post-content.is-layout-flow .blog_card > .wrap .txt_area {
  width: calc(100% - 200px - 20px);
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .card-link01 > a .data,
  .wp-block-post-content.is-layout-flow .blog_card > .wrap .txt_area {
    width: calc(100% - 80px - 15px);
  }
}

.wp-block-post-content.is-layout-flow .card-link01 > a .title,
.wp-block-post-content.is-layout-flow .blog_card > .wrap .ttl {
  margin: 0;
  font-size: 20px;
  line-height: 1.5em;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .card-link01 > a .title,
  .wp-block-post-content.is-layout-flow .blog_card > .wrap .ttl {
    font-size: 18px;
  }
}

.wp-block-post-content.is-layout-flow .card-link01 > a .summary,
.wp-block-post-content.is-layout-flow .blog_card > .wrap p {
  margin: 0;
  font-size: 16px;
  line-height: 1.5em;
  padding-top: 10px;
  -webkit-margin-before: 10px;
  margin-block-start: 10px;
  border-top: 1px solid #cccccc;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .card-link01 > a .summary,
  .wp-block-post-content.is-layout-flow .blog_card > .wrap p {
    font-size: 14px;
  }
}

.wp-block-post-content.is-layout-flow .pager {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-top: 1px solid #15298b;
  padding: 20px 10px 0;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .pager {
    margin-left: -20px;
    margin-right: -20px;
    padding: 20px 10px 0;
  }
}

.wp-block-post-content.is-layout-flow .to-parent {
  margin-top: 64px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  .wp-block-post-content.is-layout-flow .to-parent {
    margin-top: 40px;
  }
}

.pager {
  margin-top: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.pager > span,
.pager > a {
  text-decoration: inherit;
  margin: 0 10px;
  font-size: 18px;
  list-style-image: 1.0em;
  color: #888888;
  font-weight: 400;
}

.pager > span.current,
.pager > a.current {
  font-weight: 600;
  color: #15298b;
}

.pager > span.prev, .pager > span.next, .pager > span.list,
.pager > a.prev,
.pager > a.next,
.pager > a.list {
  width: auto;
}

.pager > span.prev,
.pager > a.prev {
  margin-right: 20px;
}

.pager > span.next,
.pager > a.next {
  margin-left: 20px;
}

.pager > span.dots,
.pager > a.dots {
  color: #cccccc;
}

.pager a:hover {
  color: #15298b;
  opacity: 1.0;
}

.pager > span.next,
.pager > span.prev {
  color: #888888;
  opacity: 0.3;
}

@media only screen and (max-width: 767px) {
  .pager {
    margin-top: 30px;
  }
  .pager > span,
  .pager > a {
    margin: 0 10px;
    font-size: 15px;
    list-style-image: 1.0em;
  }
  .pager > span.prev,
  .pager > a.prev {
    margin-right: 20px;
  }
  .pager > span.next,
  .pager > a.next {
    margin-left: 20px;
  }
}

.post-password-form input[name='post_password'] {
  border: 1px solid #15298b;
  border-radius: 4px;
  background-color: #fcfcfc;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 12em;
  max-width: 36vw;
  min-height: 40px;
  margin-left: 0.5em;
  margin-right: 0.5em;
}

.post-password-form input[type='submit'] {
  border-radius: 0;
  cursor: pointer;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid #15298b;
  border-radius: 4px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #15298b;
  color: #ffffff;
  position: relative;
  left: 0px;
  top: 0px;
  min-height: 40px;
  padding: 3px 20px;
  text-align: center;
  font-weight: bold;
}

/*# sourceMappingURL=blocks-content.css.map */
