/* ================================================================
   DESIGN TOKENS v1  —  mirunote デザインシステム（2026-07-23）
   白基調 + ブルー3系統のみ。ゴールド／濃紺／原色ブルーは全廃。
   ================================================================ */
:root{
  --mn-blue-primary:#3B82B6;
  --mn-blue-deep:#245A8D;
  --mn-blue-soft:#EEF6FC;
  --mn-bg-white:#FFFFFF;
  --mn-bg-subtle:#F8FAFC;
  --mn-text-primary:#172033;
  --mn-text-secondary:#5B6778;
  --mn-border:#DCE6F0;
  --mn-on-dark:#CFE3F5;
  --mn-blue-text:#2F6FAE;
  --mn-on-dark-body:#D8E7F5;
}
/* ===== DESIGN TOKENS v1 END ===== */

/* ================================================================
   THEME TOKEN OVERRIDE v1  —  Re:Diver の基盤カラーを新デザインへ
   テーマは色をRGB三つ組のCSS変数で持ち、h2の青帯・リンク・
   ヘッダー・既定文字色すべてがここから流れている。
   ページ単位で個別に塗るのではなく、この根を差し替える。
   ・--rd--c--secondary  #245A8D(原色寄り) -> #245A8D (Deep)  白文字CR 7.18
   ・--rd--c--primary-on #245A8D(濃紺)     -> #172033 (Text)
   ・--rd--c--text       #000000(純黒)     -> #172033 (Text)
   ・--rd--c--primary    #F5F8FC           -> #F8FAFC (Subtle)
   ================================================================ */
:root,
body,
.l-body{
  --rd--c--secondary:36 90 141;
  --rd--c--secondary-on:255 255 255;
  --rd--c--primary:248 250 252;
  --rd--c--primary-on:23 32 51;
  --rd--c--text:23 32 51;
}

/* リンク色もテーマ変数 --rd--c--link から流れているため合わせて上書きする。
   #245A8D(原色寄り) -> #245A8D(Deep)  白背景で CR 7.18 */
:root,body,.l-body{
  --rd--c--link:36 90 141;
  --rd--c--link-hover:47 111 174;
}
/* ===== THEME TOKEN OVERRIDE v1 END ===== */


@charset "UTF-8";
/* =========================================================
   mn-mirunote-components  v1.0.0
   mirunote.com 共通コンポーネント (mn-*)
   統合元:
     - swell_child/mn-components.css  (レイアウト・カード・テーブル)
     - カスタマイザー追加CSS          (CF7・申込フォーム・申込カード)
   ========================================================= */

/* ---------------------------------------------------------
   CSS変数
   --------------------------------------------------------- */
:root {
  --mn-ink:           #245A8D;
  --mn-ink-soft:      #5b6675;
  --mn-line:          #e3e8ef;
  --mn-bg-soft:       #f6f8fb;
  --mn-accent:        #1f6f8b;
  --mn-accent-dark:   #16505f;
  --mn-accent-soft:   #eaf3f6;
  --mn-radius:        14px;
  --mn-shadow:        0 2px 10px rgba(31,39,51,.06);
  --mn-shadow-hover:  0 8px 24px rgba(31,39,51,.12);
  --mn-gap:           24px;
  --mn-section-y:     64px;
  --mn-maxw:          1100px;
  --mn-maxw-narrow:   760px;
}

/* ---------------------------------------------------------
   レイアウト
   --------------------------------------------------------- */
.mn-page-wrap  { color: var(--mn-ink); line-height: 1.85; }
.mn-section    { padding-block: var(--mn-section-y); }
.mn-section--soft { background: var(--mn-bg-soft); }
.mn-section > .mn-inner,
.mn-section-narrow { max-width: var(--mn-maxw); margin-inline: auto; padding-inline: 20px; }
.mn-section-narrow  { max-width: var(--mn-maxw-narrow); }
.mn-section__head   { text-align: center; margin-bottom: 40px; }
.mn-section__head h2 { font-size: clamp(1.5rem,2.4vw,2rem); line-height: 1.4; margin: 0 0 12px; }
.mn-section__head p  { color: var(--mn-ink-soft); margin: 0; }

/* ---------------------------------------------------------
   ヒーロー
   --------------------------------------------------------- */
.mn-hero        { background: linear-gradient(180deg,var(--mn-accent-soft),#fff); padding-block: clamp(48px,8vw,96px); }
.mn-hero__inner { max-width: var(--mn-maxw); margin-inline: auto; padding-inline: 20px; text-align: center; }
.mn-hero h1     { font-size: clamp(1.7rem,3.4vw,2.6rem); line-height: 1.35; margin: 0 0 16px; color: var(--mn-ink); }
.mn-hero p      { font-size: clamp(1rem,1.5vw,1.15rem); color: var(--mn-ink-soft); max-width: 640px; margin: 0 auto 28px; }
.mn-hero__cta   { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

/* ---------------------------------------------------------
   導入文（パンくず下）
   --------------------------------------------------------- */
.mn-lead { max-width: var(--mn-maxw-narrow); margin: 0 auto; padding: 24px 20px 8px; color: var(--mn-ink-soft); font-size: 1.02rem; }

/* ---------------------------------------------------------
   2カラム説明
   --------------------------------------------------------- */
.mn-cols       { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.mn-cols img   { width: 100%; height: auto; border-radius: var(--mn-radius); }

/* ---------------------------------------------------------
   カードグリッド / 汎用カード
   --------------------------------------------------------- */
.mn-card-grid         { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--mn-gap); }
.mn-card-grid--2      { grid-template-columns: repeat(2,1fr); }
.mn-card-grid--4      { grid-template-columns: repeat(4,1fr); }
.mn-card              { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--mn-line); border-radius: var(--mn-radius); padding: 24px; box-shadow: var(--mn-shadow); transition: transform .2s,box-shadow .2s; text-decoration: none; color: inherit; }
a.mn-card:hover       { transform: translateY(-3px); box-shadow: var(--mn-shadow-hover); }
.mn-card h3           { font-size: 1.15rem; margin: 0 0 10px; color: var(--mn-ink); }
.mn-card p            { margin: 0 0 16px; color: var(--mn-ink-soft); font-size: .96rem; }
.mn-card__more        { margin-top: auto; color: var(--mn-accent); font-weight: 600; font-size: .95rem; }

/* ---------------------------------------------------------
   サービスカード
   --------------------------------------------------------- */
.mn-service-card       { position: relative; padding-top: 28px; }
.mn-service-card .mn-badge { position: absolute; top: -12px; left: 24px; }

/* ---------------------------------------------------------
   大学カード / 一覧
   --------------------------------------------------------- */
.mn-school-list          { display: grid; grid-template-columns: repeat(2,1fr); gap: var(--mn-gap); }
.mn-school-card          { border: 1px solid var(--mn-line); border-radius: var(--mn-radius); padding: 22px; background: #fff; box-shadow: var(--mn-shadow); }
.mn-school-card h3       { margin: 0 0 6px; font-size: 1.1rem; }
.mn-school-card .mn-school-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.mn-school-card dl       { display: grid; grid-template-columns: auto 1fr; gap: 4px 14px; margin: 0; font-size: .92rem; }
.mn-school-card dt       { color: var(--mn-ink-soft); }

/* ---------------------------------------------------------
   バッジ
   --------------------------------------------------------- */
.mn-badge        { display: inline-block; background: var(--mn-accent-soft); color: var(--mn-accent-dark); font-size: .78rem; font-weight: 700; padding: 4px 12px; border-radius: 999px; letter-spacing: .02em; }
.mn-badge--solid { background: var(--mn-accent); color: #fff; }

/* ---------------------------------------------------------
   特徴リスト
   --------------------------------------------------------- */
.mn-feature-list            { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; }
.mn-feature-list li         { position: relative; padding-left: 34px; color: var(--mn-ink); }
.mn-feature-list li::before { content: ""; position: absolute; left: 0; top: .2em; width: 20px; height: 20px; border-radius: 50%; background: var(--mn-accent-soft); }
.mn-feature-list li::after  { content: ""; position: absolute; left: 6px; top: .45em; width: 8px; height: 4px; border-left: 2px solid var(--mn-accent); border-bottom: 2px solid var(--mn-accent); transform: rotate(-45deg); }

/* ---------------------------------------------------------
   比較表
   --------------------------------------------------------- */
.mn-comparison             { width: 100%; border-collapse: collapse; background: #fff; border-radius: var(--mn-radius); overflow: hidden; box-shadow: var(--mn-shadow); }
.mn-comparison th,
.mn-comparison td          { padding: 14px 16px; border-bottom: 1px solid var(--mn-line); text-align: left; font-size: .96rem; }
.mn-comparison thead th    { background: var(--mn-accent); color: #fff; font-weight: 600; }
.mn-comparison tbody tr:last-child td { border-bottom: 0; }
.mn-comparison tbody th    { background: var(--mn-bg-soft); color: var(--mn-ink); }

/* ---------------------------------------------------------
   CTA / 無料相談CTA
   --------------------------------------------------------- */
.mn-cta           { background: var(--mn-accent); color: #fff; border-radius: var(--mn-radius); padding: clamp(28px,4vw,48px); text-align: center; }
.mn-cta h2,
.mn-cta h3        { color: #fff; margin: 0 0 10px; font-size: clamp(1.3rem,2.2vw,1.7rem); }
.mn-cta p         { color: rgba(255,255,255,.9); margin: 0 0 22px; }
.mn-btn           { display: inline-block; padding: 14px 30px; border-radius: 999px; font-weight: 700; text-decoration: none; transition: opacity .2s,transform .2s; }
.mn-btn:hover     { transform: translateY(-2px); }
.mn-btn--primary  { background: #fff; color: var(--mn-accent-dark); }
.mn-btn--ghost    { background: transparent; color: #fff; border: 2px solid rgba(255,255,255,.8); }
.mn-btn--accent   { background: var(--mn-accent); color: #fff; }
.mn-cta--soft     { background: var(--mn-accent-soft); color: var(--mn-ink); }
.mn-cta--soft h2,
.mn-cta--soft h3  { color: var(--mn-ink); }
.mn-cta--soft p   { color: var(--mn-ink-soft); }

/* ---------------------------------------------------------
   記事内CTA
   --------------------------------------------------------- */
.mn-inline-cta        { border: 1px solid var(--mn-line); border-left: 4px solid var(--mn-accent); background: var(--mn-bg-soft); border-radius: 10px; padding: 20px 22px; margin: 32px 0; }
.mn-inline-cta strong { display: block; margin-bottom: 6px; color: var(--mn-ink); }

/* ---------------------------------------------------------
   関連ページカード（記事末導線）
   --------------------------------------------------------- */
.mn-link-panel             { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 16px; margin: 28px 0; }
.mn-link-panel a           { display: block; border: 1px solid var(--mn-line); border-radius: 12px; padding: 16px 18px; text-decoration: none; color: var(--mn-ink); background: #fff; transition: border-color .2s,box-shadow .2s; }
.mn-link-panel a:hover     { border-color: var(--mn-accent); box-shadow: var(--mn-shadow); }
.mn-link-panel a span      { display: block; color: var(--mn-accent); font-weight: 600; font-size: .9rem; margin-top: 6px; }

/* ---------------------------------------------------------
   FAQ
   --------------------------------------------------------- */
.mn-faq                   { display: grid; gap: 12px; }
.mn-faq details           { border: 1px solid var(--mn-line); border-radius: 10px; background: #fff; padding: 0 18px; }
.mn-faq summary           { cursor: pointer; padding: 16px 0; font-weight: 600; list-style: none; }
.mn-faq summary::-webkit-details-marker { display: none; }
.mn-faq details[open]     { box-shadow: var(--mn-shadow); }
.mn-faq details > p       { padding: 0 0 16px; margin: 0; color: var(--mn-ink-soft); }

/* ---------------------------------------------------------
   テーブル整形
   RE:DIVER由来 is-style-table__* が SWELL環境で
   無装飾（黒罫線）になっていたものを上品に再スタイル
   --------------------------------------------------------- */
/* 全コンテンツ表：黒 currentColor 罫線を淡色へ */
.wp-block-table td,
.wp-block-table th { border-color: var(--mn-line); }

/* 共通リセット（diver-blocks生成の表を確実に上書き） */
.wp-block-table table         { border-collapse: collapse !important; width: 100%; background: #fff; }
.wp-block-table table,
.wp-block-table thead,
.wp-block-table tbody,
.wp-block-table tfoot         { border: 0 !important; }
.wp-block-table td,
.wp-block-table th            { border: 0 !important; border-bottom: 1px solid #e3e8ef !important; padding: 14px 18px !important; line-height: 1.8; vertical-align: top; min-width: 0 !important; }
.wp-block-table tr:last-child > td,
.wp-block-table tr:last-child > th { border-bottom: 0 !important; }

/* key/value型（border-bottom-left-right）: 先頭列をラベル風に網掛け */
.wp-block-table.is-style-table__border-bottom-left-right { border: 1px solid #e3e8ef; border-radius: 8px; overflow: hidden; }
.wp-block-table.is-style-table__border-bottom-left-right tr > td:first-child { background: #f6f8fb; font-weight: 500; width: 30%; }

/* ---------------------------------------------------------
   CF7 共通デザイン
   --------------------------------------------------------- */
.wpcf7                  { max-width: 680px; margin: 0 auto; }
.wpcf7-form p           { margin: 0 0 18px; }
.wpcf7-form label       { display: block; font-weight: 500; color: #245A8D; margin: 0 0 6px; font-size: .96rem; line-height: 1.6; }

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form textarea,
.wpcf7-form select      { width: 100%; box-sizing: border-box; border: 1px solid #d7dee7; border-radius: 10px; padding: 13px 14px; font-size: 16px; background: #fff; color: #245A8D; line-height: 1.6; transition: border-color .15s,box-shadow .15s; -webkit-appearance: none; }
.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus { outline: none; border-color: #1f6f8b; box-shadow: 0 0 0 3px rgba(31,111,139,.15); }
.wpcf7-form textarea    { min-height: 160px; resize: vertical; }
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder { color: #9aa4b1; }

/* 同意チェック */
.wpcf7-form .wpcf7-acceptance      { display: block; margin: 4px 0 24px; font-size: .92rem; color: #5b6675; }
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item { margin: 0; }

/* 送信ボタン */
.wpcf7-form .wpcf7-submit           { display: inline-block; background: #1f6f8b; color: #fff; border: 0; border-radius: 999px; padding: 14px 48px; font-size: 1rem; font-weight: 600; cursor: pointer; transition: background .15s,transform .15s; -webkit-appearance: none; }
.wpcf7-form .wpcf7-submit:hover     { background: #16505f; transform: translateY(-1px); }
.wpcf7-form .wpcf7-spinner          { margin: 6px 0 0 10px; }
.wpcf7-form p:has(.wpcf7-submit)    { text-align: center; margin-top: 26px; }

/* エラー */
.wpcf7 .wpcf7-not-valid-tip         { color: #c0392b; font-size: .85rem; margin-top: 5px; }
.wpcf7-form .wpcf7-not-valid        { border-color: #e0a59c !important; }

/* レスポンスメッセージ */
.wpcf7 .wpcf7-response-output       { border-radius: 10px; padding: 12px 14px; font-size: .92rem; margin: 18px 0 0; }
.wpcf7-form.invalid  .wpcf7-response-output,
.wpcf7-form.unaccepted .wpcf7-response-output { border: 1px solid #e2b6b0; background: #fbece7; color: #8a2a1d; }
.wpcf7-form.sent     .wpcf7-response-output   { border: 1px solid #9fd9c4; background: #e8f6f0; color: #0f6e56; }

/* ---------------------------------------------------------
   申込カード / 申込ボタン / 申込フォームラッパー
   --------------------------------------------------------- */
.mn-application-cards         { display: grid; grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); gap: 20px; margin: 28px 0; }
.mn-application-cards .mn-application-card { margin: 0; }
.mn-application-card          { margin: 28px 0; padding: 28px; border: 1px solid #d9e6ea; border-radius: 18px; background: #fff; box-shadow: 0 8px 24px rgba(15,60,75,.06); }
.mn-application-card h3       { margin-top: 0; margin-bottom: 12px; font-size: 1.25rem; line-height: 1.5; color: #245A8D; }
.mn-application-card p        { margin-bottom: 20px; line-height: 1.9; }
.mn-application-button        { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 24px; border-radius: 999px; background: #1f6f8b; color: #fff !important; text-decoration: none; font-weight: 700; transition: opacity .2s ease,transform .2s ease; }
.mn-application-button:hover  { opacity: .9; transform: translateY(-1px); }
.mn-application-form          { max-width: 680px; margin: 0 auto; }

/* ---------------------------------------------------------
   法務テーブル（mn-legal-table）
   --------------------------------------------------------- */
.mn-legal-table               { width: 100%; border-collapse: collapse; }
.mn-legal-table td,
.mn-legal-table th            { padding: 12px 16px; border-bottom: 1px solid var(--mn-line); vertical-align: top; line-height: 1.8; }
.mn-legal-table tr > td:first-child,
.mn-legal-table tr > th:first-child { background: var(--mn-bg-soft); font-weight: 500; width: 28%; }
.mn-legal-table tr:last-child td,
.mn-legal-table tr:last-child th { border-bottom: 0; }

/* ---------------------------------------------------------
   CF7 フォーム行・バッジ拡張
   --------------------------------------------------------- */
.mn-badge--required        { background: #fce8e6; color: #c0392b; }
.mn-form-row               { margin-bottom: 22px; }
.mn-form-row label         { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.mn-form-help              { font-size: .87rem; color: var(--mn-ink-soft); margin: 0 0 8px; line-height: 1.6; }
.mn-form-submit            { text-align: center; margin-top: 28px; }

/* ---------------------------------------------------------
   レスポンシブ
   --------------------------------------------------------- */
@media (max-width: 900px) {
  .mn-card-grid,
  .mn-card-grid--4 { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 600px) {
  :root { --mn-section-y: 44px; }
  .mn-card-grid,
  .mn-card-grid--2,
  .mn-card-grid--4,
  .mn-school-list,
  .mn-cols         { grid-template-columns: 1fr; }
  .mn-hero__cta    { flex-direction: column; }
  .mn-btn          { width: 100%; }
  .wpcf7-form .wpcf7-submit { width: 100%; }
  .mn-application-card   { padding: 22px 18px; }
  .mn-application-button { width: 100%; }
  .wp-block-table td,
  .wp-block-table th     { padding: 10px 12px !important; }
  .wp-block-table.is-style-table__border-bottom-left-right tr > td:first-child { width: 38%; }
}


/* === dbp/card 内の見出し装飾リセット (2026-07-07 Re:Diver化第2弾 ID84) ===
   Re:Diverデフォルトのh3帯装飾(グレー背景+左バー)はカード内では過剰なため、
   dbp-card内に限り無地の見出しに戻す。対象はトップ等のdbp/cardのみ。 */
#content .dbp-card h3,
.dbp-card .dbp-card__inner h3 {
  background: none;
  border-left: none;
  border-bottom: none;
  padding: 0;
  margin-top: 4px;
  font-size: 1.15em;
  font-weight: 700;
  line-height: 1.5;
}

/* === /tutoring/ 105331 v4 全面リビルド (2026-07-15) === */
.page-id-105331 .l-flex > main + aside{display:none!important;}
.page-id-105331 .l-flex{justify-content:center!important;}
.page-id-105331 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
.page-id-105331{overflow-x:hidden;}
.page-id-105331 .single-post-main{font-size:16px;}
/* テーマ既定の本文幅(860px)を当ページのみ拡張 */
.page-id-105331 .single-post-main,
.page-id-105331 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
.page-id-105331 .wp-block-dbp-column{max-width:none!important;}
.page-id-105331 .dbp-section__inner{max-width:none!important;}

/* --- 見出し --- */
.page-id-105331 h1.single-post-title{font-size:44px!important;font-weight:700!important;color:#245A8D!important;line-height:1.4!important;margin:10px 0 0!important;letter-spacing:.01em;}
.page-id-105331 h2.wp-block-heading{background:none!important;color:#245A8D!important;border:none!important;border-left:6px solid #3B82B6!important;border-bottom:1px solid #DCE6F0!important;border-radius:0!important;padding:8px 0 12px 18px!important;margin:70px 0 26px!important;font-size:32px!important;line-height:1.45!important;font-weight:700!important;}
.page-id-105331 h2.wp-block-heading::before,.page-id-105331 h2.wp-block-heading::after{content:none!important;display:none!important;}
.page-id-105331 h2.msm-hero-h2{border:none!important;padding:0!important;margin:0 0 20px!important;font-size:30px!important;color:#245A8D!important;}
.page-id-105331 h3.wp-block-heading{background:none!important;color:#172033!important;border:none!important;border-left:4px solid #9db8dc!important;border-radius:0!important;padding:2px 0 2px 12px!important;margin:30px 0 14px!important;font-size:23px!important;line-height:1.55!important;font-weight:700!important;}
.page-id-105331 p{font-size:16px;line-height:1.9;}

/* --- ファーストビュー --- */
.page-id-105331 .mtu-hero-wrap{padding:8px 0 4px;}
.page-id-105331 .dbp-id-mtu-hero{align-items:center;gap:44px;}
.page-id-105331 .mtu-label{display:inline-block;background:#fff;border:1.5px solid #3B82B6;color:#245A8D;font-size:14px;font-weight:700;letter-spacing:.08em;padding:7px 18px;border-radius:8px;margin:0 0 18px;}
.page-id-105331 .mtu-lead{font-size:17.5px;line-height:1.95;margin:0 0 24px;color:#31415a;}
.page-id-105331 .mtu-hero-img img,.page-id-105331 .mtu-about-img img{width:100%;height:auto;border-radius:16px;box-shadow:0 14px 44px rgba(27,68,138,.14);}
.page-id-105331 .mtu-hero-img,.page-id-105331 .mtu-about-img{margin:0;width:100%;display:block;}
.page-id-105331 .mtu-hero-img img,.page-id-105331 .mtu-about-img img{display:block;background:#eef3f9;}
.page-id-105331 .mtu-tphoto{width:100%;display:block;}
.page-id-105331 figure.mtu-img-slot{width:100%;}
.page-id-105331 .mtu-cta-note{font-size:14px;color:#5B6778;text-align:center;margin:8px 0 12px;}
.page-id-105331 .mtu-hero-wrap .dbp-button{margin-block:0;}

/* --- チェック箇条書き(大きめ) --- */
.page-id-105331 ul.dbp-list.has-icon li{font-size:16px;line-height:1.75;padding-block:6px;}
.page-id-105331 .mtu-fvlist li,.page-id-105331 .mtu-biglist li{font-size:16.5px;line-height:1.8;padding-block:7px;}
.page-id-105331 .mtu-fvlist{margin:0 0 26px;}
@media(min-width:768px){
  .page-id-105331 .mtu-2col{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;}
}
.page-id-105331 .mtu-cardlist li{font-size:14.5px;line-height:1.7;padding-block:4px;}
.page-id-105331 .mtu-exlist li{font-size:14.5px;line-height:1.7;padding-block:4px;}

/* --- 実績帯 --- */
.page-id-105331 .mtu-proofband{background:#f0f5fb;border:1px solid #DCE6F0;border-radius:14px;padding:24px 22px;margin:30px 0 0;}
.page-id-105331 .mtu-proofband .dbp-column-item{display:block;text-align:center;padding:4px 14px;}
.page-id-105331 .mtu-proof-big{font-size:19px!important;font-weight:700;color:#245A8D;line-height:1.55;margin:0 0 4px;}
.page-id-105331 .mtu-proof-sub{font-size:13px!important;color:#5B6778;margin:0;line-height:1.6;}

/* --- カード --- */
.page-id-105331 .dbp-card{width:100%!important;background:#fff;border:1px solid #DCE6F0;border-radius:16px;box-shadow:0 3px 14px rgba(27,68,138,.05);height:100%;box-sizing:border-box;}
.page-id-105331 .dbp-card>.dbp-card__inner{padding:26px 26px;}
.page-id-105331 .dbp-column-item{display:flex;}
.page-id-105331 .dbp-column-item>.dbp-card{flex:1 1 auto;}
.page-id-105331 .dbp-card h3.wp-block-heading{border-left:none!important;padding:0!important;margin:0 0 10px!important;font-size:20px!important;}
.page-id-105331 .dbp-card p{font-size:15px;line-height:1.85;}
/* 写真列は等高flexの対象外 */
.page-id-105331 .dbp-id-mtu-hero>.dbp-column-item,
.page-id-105331 .dbp-id-mtu-about>.dbp-column-item,
.page-id-105331 .dbp-id-mtu-fit>.dbp-column-item,
.page-id-105331 .dbp-id-mtu-home>.dbp-column-item,
.page-id-105331 .dbp-id-mtu-report>.dbp-column-item,
.page-id-105331 .dbp-id-mtu-trialcol>.dbp-column-item,
.page-id-105331 .mtu-proofband .dbp-column-item{display:block;}

/* --- 横長ボックス(カードと差別化) --- */
.page-id-105331 .mtu-widebox{background:#f0f5fb;border:1px solid #cdddf0;border-radius:12px;padding:22px 26px;margin:26px 0;}
.page-id-105331 .mtu-widebox h3.wp-block-heading{margin:0 0 10px!important;border-left:4px solid #3B82B6!important;font-size:19px!important;}
.page-id-105331 .mtu-supp{font-size:15px;margin:0 0 10px;}
.page-id-105331 .mtu-supp:last-child{margin-bottom:0;}

/* --- 対応科目グリッド --- */
.page-id-105331 ul.mtu-subjects{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;list-style:none;margin:0;padding:0;}
.page-id-105331 ul.mtu-subjects li{background:#fff;border:1px solid #DCE6F0;border-radius:12px;padding:16px 12px;text-align:center;line-height:1.5;}
.page-id-105331 ul.mtu-subjects li strong{display:block;font-size:15.5px;color:#245A8D;}
.page-id-105331 ul.mtu-subjects li span{display:block;font-size:12.5px;color:#5B6778;margin-top:3px;}

/* --- 指導内容ステップ(矢印付き) --- */
.page-id-105331 .mtu-stepflow .dbp-column-item{position:relative;}
@media(min-width:1024px){
  .page-id-105331 .mtu-stepflow .dbp-column-item:not(:last-child)::after{content:"";position:absolute;right:-22px;top:50%;width:14px;height:14px;border-top:2px solid #9db8dc;border-right:2px solid #9db8dc;transform:translateY(-50%) rotate(45deg);}
}
.page-id-105331 .mtu-stepnum{font-size:26px!important;font-weight:700;color:#245A8D;letter-spacing:.04em;margin:0 0 4px!important;line-height:1.2;}

/* --- 講師3枠 --- */
.page-id-105331 .mtu-tphoto img{width:100%;max-width:none;aspect-ratio:1/1;object-fit:cover;border-radius:12px;}
.page-id-105331 .mtu-tphoto{margin:0 0 16px;}
.page-id-105331 .mtu-tname{font-size:21px!important;font-weight:700;color:#245A8D;margin:0 0 2px!important;}
.page-id-105331 .mtu-trole{font-size:13.5px!important;font-weight:600;color:#245A8D;margin:0 0 14px!important;}
.page-id-105331 .mtu-tmeta{font-size:13.5px!important;line-height:1.75;color:#5B6778;margin:0 0 10px!important;}
.page-id-105331 .mtu-tmeta strong{color:#245A8D;font-size:12.5px;letter-spacing:.04em;}
.page-id-105331 .mtu-note{font-size:13px!important;color:#5B6778;}
.page-id-105331 .mtu-footnote{font-size:13.5px!important;color:#5B6778;margin-top:22px;}

/* --- チーム制 --- */
.page-id-105331 .mtu-teambox{background:#f0f5fb;border:1px solid #cdddf0;border-radius:16px;padding:28px 26px;}
.page-id-105331 .mtu-team-center{text-align:center;font-size:18px!important;font-weight:700;color:#fff;background:#3B82B6;border-radius:999px;padding:10px 0;max-width:260px;margin:0 auto 22px!important;}
.page-id-105331 .mtu-team-node{text-align:center;background:#fff;border:1px solid #cdddf0;border-radius:10px;padding:14px 8px;font-size:14.5px!important;font-weight:700;color:#245A8D;margin:0!important;line-height:1.5;}
.page-id-105331 .mtu-teamshare{margin-top:22px;}
.page-id-105331 .mtu-teamshare li{font-size:15px;}

/* --- 合格実績 --- */
.page-id-105331 .dbp-id-mtu-results .dbp-column-item{display:block;background:#fff;border:1px solid #DCE6F0;border-radius:14px;padding:26px 18px;text-align:center;}
.page-id-105331 .mtu-rnum{font-size:46px!important;font-weight:700;color:#245A8D;line-height:1.1;margin:0 0 6px!important;}
.page-id-105331 .mtu-rnum span{font-size:20px;margin-left:2px;}
.page-id-105331 .mtu-rlabel{font-size:16.5px!important;font-weight:700;color:#245A8D;margin:0!important;}
.page-id-105331 .mtu-rnote{font-size:12.5px!important;color:#5B6778;margin:6px 0 0!important;}

/* --- 料金 --- */
.page-id-105331 .mtu-planname{font-size:22px!important;font-weight:700;color:#245A8D;margin:0 0 10px!important;padding-bottom:10px;border-bottom:1px solid #e6edf5;}
.page-id-105331 .mtu-planprice{font-size:36px!important;font-weight:700;color:#245A8D;line-height:1.25;margin:0 0 4px!important;}
.page-id-105331 .mtu-planprice small{font-size:14px;font-weight:600;color:#5B6778;}
.page-id-105331 .mtu-planmeta{font-size:13px!important;color:#5B6778;margin:0 0 12px!important;}

/* --- 体験授業 --- */
.page-id-105331 .mtu-trialbox{background:#fff;border:1px solid #cdddf0;border-radius:20px;padding:38px 34px;box-shadow:0 10px 32px rgba(27,68,138,.08);}

/* --- マーカー --- */
.page-id-105331 .mtu-marker{background:linear-gradient(transparent 55%,#ffe873 55%);font-weight:700;padding:0 2px;color:inherit;}

/* --- 差し替え用の空画像枠(空の間は非表示) --- */
.page-id-105331 figure.mtu-img-slot:empty{display:none;}
.page-id-105331 figure.mtu-img-slot img{width:100%;height:auto;border-radius:14px;border:1px solid #DCE6F0;}

/* --- CTAボタン --- */
.page-id-105331 .dbp-button-link{font-size:16px;font-weight:700;}

/* --- タブレット --- */
@media(max-width:1023px){
  .page-id-105331 ul.mtu-subjects{grid-template-columns:repeat(2,1fr);}
  .page-id-105331 h1.single-post-title{font-size:36px!important;}
  .page-id-105331 h2.wp-block-heading{font-size:28px!important;}
}
/* --- スマートフォン --- */
@media(max-width:640px){
  .page-id-105331 h1.single-post-title{font-size:31px!important;}
  .page-id-105331 h2.wp-block-heading{font-size:25px!important;margin:54px 0 20px!important;padding-left:14px!important;}
  .page-id-105331 h2.msm-hero-h2{font-size:25px!important;}
  .page-id-105331 h3.wp-block-heading{font-size:21px!important;}
  .page-id-105331 .mtu-lead{font-size:17px;}
  .page-id-105331 .dbp-id-mtu-hero{gap:26px;}
  .page-id-105331 .mtu-proofband .dbp-column-item{padding:12px 6px;border-top:1px solid #dbe5f0;}
  .page-id-105331 .mtu-proofband .dbp-column-item:first-child{border-top:none;}
  .page-id-105331 .mtu-rnum{font-size:40px!important;}
  .page-id-105331 .mtu-planprice{font-size:32px!important;}
  .page-id-105331 .mtu-trialbox{padding:26px 18px;}
  .page-id-105331 .dbp-card>.dbp-card__inner{padding:22px 20px;}
}
/* ===== /med-students/ (105326) 在校生向けハブ  ここから ===== */
/* 本文末尾styleから移設(2026-07-07 dbp化)。dbpブロックは native + navy/teal 再着色でスコープ */
.page-id-105326 .l-flex > main + aside{display:none!important;}
.page-id-105326 .l-flex{justify-content:center!important;}
.page-id-105326 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
.page-id-105326 .single-post-main,
.page-id-105326 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
.page-id-105326{overflow-x:hidden;--mds-navy:#123f66;--mds-navy2:#2a7fd4;--mds-teal:#3B82B6;--mds-ink:#245A8D;--mds-muted:#5b6b7f;--mds-line:#dce7f2;--mds-soft:#f3f8fd;--mds-accent:#3B82B6;--mds-accent-d:#145ba3;}
/* dbpブロックの情報色をtealへ(このページのみ) — fill button / accordion / step / icon が追従 */
.page-id-105326{--rd--c--information:29 118 204;--rd--c--information-on:255 255 255;}
.page-id-105326 .dbp-button{--dbp--button--color-text:#1D76CC!important;--dbp--button--color-border:#1D76CC!important;}
.page-id-105326 .dbp-button-link.is-style-fill{color:#fff!important;}
/* 見出し(セクションh2のみ。dbp内はh3/h5でここに該当せず) */
.page-id-105326 h2.wp-block-heading:not(.mn-home-section-title){background:none!important;color:var(--mds-navy)!important;border:none!important;border-left:6px solid var(--mds-navy)!important;border-bottom:1px solid var(--mds-line)!important;border-radius:0!important;padding:6px 0 10px 16px!important;margin:60px 0 22px!important;font-size:24px!important;line-height:1.5!important;font-weight:700!important;}
.page-id-105326 h2.wp-block-heading:not(.mn-home-section-title)::before,.page-id-105326 h2.wp-block-heading:not(.mn-home-section-title)::after{content:none!important;display:none!important;}
/* Hero(core/html — グラデ枠+ピルは dbp 非対応のため据置) */
.page-id-105326 .mds-hero{background:linear-gradient(135deg,var(--mds-navy) 0%,var(--mds-navy2) 100%);color:#fff;border-radius:12px;padding:36px 30px;margin:4px 0 40px;}
.page-id-105326 .mds-hero__eyebrow{font-size:12px;letter-spacing:2px;opacity:.85;margin:0 0 10px;font-weight:600;}
.page-id-105326 .mds-hero__title{font-size:24px;font-weight:700;line-height:1.5;margin:0 0 14px;color:#fff;}
.page-id-105326 .mds-hero__lead{font-size:15px;line-height:1.9;margin:0 0 18px;opacity:.96;}
.page-id-105326 .mds-hero__badges{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;margin:0 0 22px;padding:0;list-style:none;}
.page-id-105326 .mds-hero__badges li{display:flex;align-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:5px 14px;font-size:13px;line-height:1.5;}
.page-id-105326 .mds-hero .mds-btnrow{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 0;}
.page-id-105326 .mds-btn{display:inline-block;text-decoration:none;border-radius:8px;padding:13px 22px;font-size:15px;font-weight:700;line-height:1.4;text-align:center;transition:opacity .15s;}
.page-id-105326 .mds-btn:hover{opacity:.85;}
.page-id-105326 .mds-btn--primary{background:var(--mds-accent);color:#fff;border:1px solid var(--mds-accent-d);}
.page-id-105326 .mds-btn--ghost{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.55);}
/* 悩みリスト(core/list.mds-pains) */
.page-id-105326 ul.mds-pains{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:10px 0;padding:0;list-style:none;}
.page-id-105326 ul.mds-pains li{background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:8px;padding:12px 14px 12px 34px;font-size:14px;line-height:1.7;color:var(--mds-ink);position:relative;list-style:none;margin:0;}
.page-id-105326 ul.mds-pains li::before{content:"?";position:absolute;left:12px;top:12px;width:16px;height:16px;background:var(--mds-teal);color:#fff;border-radius:50%;font-size:11px;font-weight:700;text-align:center;line-height:16px;}
.page-id-105326 ul.mds-pains li::marker{content:"";}
/* 科目チップ(core/list.mds-subjects) */
.page-id-105326 ul.mds-subjects{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0;padding:0;list-style:none;}
.page-id-105326 ul.mds-subjects li{background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:999px;padding:6px 15px;font-size:13px;color:var(--mds-navy);font-weight:600;list-style:none;margin:0;}
.page-id-105326 ul.mds-subjects li::marker{content:"";}
/* dbp/card(対応内容6・比較2) navy見出し + teal リンク */
.page-id-105326 .dbp-card h3.wp-block-heading{color:var(--mds-navy)!important;font-size:16px!important;font-weight:700!important;line-height:1.5!important;margin:0 0 4px!important;}
.page-id-105326 .dbp-card p{font-size:14px;line-height:1.8;color:var(--mds-ink);}
.page-id-105326 .mds-more a{color:var(--mds-teal);font-weight:700;font-size:13px;text-decoration:none;}
.page-id-105326 .mds-more a:hover{text-decoration:underline;}
/* 比較(入試/在校) — 2枚目(このページ)を強調 */
.page-id-105326 .mds-clabel{font-size:12px!important;font-weight:700!important;color:#fff!important;background:var(--mds-muted);display:inline-block;border-radius:4px;padding:3px 10px;margin:0 0 6px!important;}
.page-id-105326 .mds-curl{font-family:'SF Mono',Menlo,Consolas,monospace;font-size:12px!important;color:var(--mds-teal)!important;margin:0 0 8px!important;}
.page-id-105326 .dbp-id-mds-compare .dbp-column-item:nth-child(2) .dbp-card{border:2px solid var(--mds-navy)!important;background:var(--mds-soft)!important;}
.page-id-105326 .dbp-id-mds-compare .dbp-column-item:nth-child(2) .mds-clabel{background:var(--mds-navy);}
/* CTAバンド(core/group.mds-cta-band + dbp/button×2) */
.page-id-105326 .mds-cta-band{background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:12px;padding:28px 22px;margin:32px 0;text-align:center;}
.page-id-105326 .mds-cta-band h3.wp-block-heading{font-size:18px!important;font-weight:700!important;color:var(--mds-navy)!important;margin:0 0 10px!important;background:none!important;border:none!important;padding:0!important;}
.page-id-105326 .mds-cta-band h3.wp-block-heading::before,.page-id-105326 .mds-cta-band h3.wp-block-heading::after{content:none!important;display:none!important;}
.page-id-105326 .mds-cta-band p{font-size:14px;line-height:1.8;margin:0 0 16px;color:var(--mds-ink);}
.page-id-105326 .mds-cta-band .mds-btnrow{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center;margin:0;}
.page-id-105326 .mds-cta-band .mds-btnrow .dbp-button{margin:0!important;}
.page-id-105326 .mds-note{font-size:13px;color:var(--mds-muted);line-height:1.8;margin:10px 0 0;}
.page-id-105326 .dbp-step-mark{background:#3B82B6!important;}
.page-id-105326 .dbp-step-mark .dbp-step-caption{color:#245A8D!important;}
/* スマホ */
@media(max-width:640px){
.page-id-105326 .l-flex > main{max-width:calc(100% - 32px)!important;}
.page-id-105326 .mds-hero{padding:26px 18px;}
.page-id-105326 .mds-hero__title{font-size:20px;}
.page-id-105326 h2.wp-block-heading:not(.mn-home-section-title){font-size:20px!important;margin:44px 0 18px!important;}
.page-id-105326 ul.mds-pains{grid-template-columns:1fr;}
.page-id-105326 .mds-hero .mds-btnrow .mds-btn{flex:1 1 100%;}
}
/* ===== /med-students/ (105326)  ここまで ===== */

/* ===== /med-students/ 子ページ4件 統一デザイン(parent-pageid-105326) ここから ===== */
.parent-pageid-105326,.parent-pageid-107847{overflow-x:hidden;--rd--c--information:29 118 204;--rd--c--information-on:255 255 255;}
.parent-pageid-105326 .l-flex > main + aside,.parent-pageid-107847 .l-flex > main + aside{display:none!important;}
.parent-pageid-105326 .l-flex,.parent-pageid-107847 .l-flex{justify-content:center!important;}
.parent-pageid-105326 .l-flex > main,.parent-pageid-107847 .l-flex > main{max-width:min(94%,860px)!important;margin-left:auto!important;margin-right:auto!important;}
.parent-pageid-105326 h2.wp-block-heading:not(.mn-home-section-title),.parent-pageid-107847 h2.wp-block-heading:not(.mn-home-section-title){background:none!important;color:var(--mds-navy)!important;border:none!important;border-left:6px solid var(--mds-navy)!important;border-bottom:1px solid var(--mds-line)!important;border-radius:0!important;padding:6px 0 10px 16px!important;margin:44px 0 18px!important;font-size:22px!important;line-height:1.5!important;font-weight:700!important;}
.parent-pageid-105326 h2.wp-block-heading:not(.mn-home-section-title)::before,.parent-pageid-105326 h2.wp-block-heading:not(.mn-home-section-title)::after,.parent-pageid-107847 h2.wp-block-heading:not(.mn-home-section-title)::before,.parent-pageid-107847 h2.wp-block-heading:not(.mn-home-section-title)::after{content:none!important;display:none!important;}
.parent-pageid-105326 .dbp-button,.parent-pageid-107847 .dbp-button{margin-top:26px!important;}
.parent-pageid-105326 p a[href="/med-students/"],.parent-pageid-107847 p a[href="/med-students/"]{font-weight:700;color:#245A8D;text-decoration:none;}
@media(max-width:640px){
.parent-pageid-105326 .l-flex > main,.parent-pageid-107847 .l-flex > main{max-width:calc(100% - 32px)!important;}
.parent-pageid-105326 h2.wp-block-heading:not(.mn-home-section-title),.parent-pageid-107847 h2.wp-block-heading:not(.mn-home-section-title){font-size:19px!important;margin:34px 0 14px!important;}
}
/* ===== 子ページ4件  ここまで ===== */

/* === /italy-med/ 105266 比較表 (dbp化に伴い本文styleから移設 2026-07-07) ===
   プラン比較表・個別指導優待表のみHTML管理(横スクロール+行見出しth必要のため)。
   他のimx-*コンポーネントはdbp化により廃止。 */
.imx-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #DCE6F0;border-radius:14px;background:#fff}
.imx-table{width:100%;min-width:680px;border-collapse:collapse;font-size:14.5px}
.imx-table th,.imx-table td{border:1px solid #DCE6F0;padding:11px 14px;text-align:left;white-space:nowrap}
.imx-table thead th{background:#3B82B6;color:#fff;font-weight:700}
.imx-table tbody th{background:#F8FAFC;font-weight:700;color:#172033}
.imx-table tbody tr:nth-child(even) td{background:#fafcfe}

/* ===== 模試ページ群(/moshi/ 105593 ハブ + 子5ページ imat/humat/ucbm/unisr/unicatt) dbp化 2026-07-10 ここから =====
   ハブ=.page-id-105593 / 子ページ(親=105593)=.parent-pageid-105593 に自動付与される共通クラスでまとめて定義。
   wp:html一枚岩からdbp/core Gutenbergブロックへ全面移行。装飾はここに集約、本文にstyle属性なし。 */
.page-id-105593 .mmh-kicker,
.parent-pageid-105593 .mmh-kicker{font-size:14px;font-weight:800;letter-spacing:.12em;color:#245A8D;margin:0 0 6px!important;}
.page-id-105593 .mmh-chips,
.parent-pageid-105593 .mmh-chips{color:#51627a;}
.page-id-105593 .mmh-tag,
.parent-pageid-105593 .mmh-tag{display:inline-block;font-weight:800;border-radius:5px;padding:3px 11px;margin:0 0 8px!important;}
.page-id-105593 .mml-tag-imat,.parent-pageid-105593 .mml-tag-imat{background:#e0ecf9;color:#245A8D;}
.page-id-105593 .mml-tag-private,.parent-pageid-105593 .mml-tag-private{background:#e6f1e9;color:#1e6b3a;}
.page-id-105593 .mml-tag-free,.parent-pageid-105593 .mml-tag-free{background:#fdf0dc;color:#8a5a08;}
.page-id-105593 .mmh-badge,
.parent-pageid-105593 .mmh-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 13px;font-size:13px;font-weight:700;background:#eef6ff;color:#1f5fa8;margin-bottom:6px!important;}
/* 模試日程表([mn_mock_schedule])は本文に直書きの<style>を持たない(plugin側でスコープ出力するため無変更) */
/* ===== 模試ページ群 ここまで ===== */

/* ===== 模試ページ群 デザイン強化(2026-07-10 第2弾) =====
   見出しは既存の確立済みパターン(105326等)を踏襲=左アクセントライン+下線、Re:Diver既定の背景バーは解除。
   H3はサイト全体のdbp-cardリセット(h3.wp-block-heading内、既存ルール)で既に無地化済みのため、
   カード外(media-text等)のh3にも同様の無地スタイルを明示適用してH2と明確に区別する。 */
.page-id-105593 h2.wp-block-heading,
.parent-pageid-105593 h2.wp-block-heading{background:none!important;color:#245A8D!important;border:none!important;border-left:6px solid #3B82B6!important;border-bottom:1px solid #DCE6F0!important;border-radius:0!important;padding:6px 0 10px 16px!important;margin:52px 0 20px!important;font-size:24px!important;line-height:1.5!important;font-weight:800!important;}
.page-id-105593 h2.wp-block-heading::before,.page-id-105593 h2.wp-block-heading::after,
.parent-pageid-105593 h2.wp-block-heading::before,.parent-pageid-105593 h2.wp-block-heading::after{content:none!important;display:none!important;}
.page-id-105593 .dbp-section h2.wp-block-heading,
.parent-pageid-105593 .dbp-section h2.wp-block-heading{margin-top:0!important;}
.page-id-105593 h3.wp-block-heading,
.parent-pageid-105593 h3.wp-block-heading{font-size:1.15em;font-weight:700;line-height:1.5;color:#172033;margin:0 0 4px;}
/* ヒーロー帯(dbp/section)内はkicker/lead/chipsの余白を最適化 */
.page-id-105593 .mmh-hero .dbp-section__inner,
.parent-pageid-105593 .mmh-hero .dbp-section__inner{padding-block:44px!important;}
/* 申込・料金セクションの帯内カード(dbp/card)を強調 */
.page-id-105593 .mmh-apply-card,
.parent-pageid-105593 .mmh-apply-card{border:1px solid #DCE6F0;box-shadow:0 6px 20px rgba(27,108,183,.1);}
/* 申込フォーム(CF7)の入力欄をカード内で読みやすく整える。CF7自体のmarkup/送信仕様は無変更 */
.page-id-105593 .mmh-apply-card .wpcf7-form label,
.parent-pageid-105593 .mmh-apply-card .wpcf7-form label{display:block;font-weight:700;font-size:16px;margin:18px 0 6px;color:#172033;}
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=text],
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=email],
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=tel],
.page-id-105593 .mmh-apply-card .wpcf7-form select,
.parent-pageid-105593 .mmh-apply-card .wpcf7-form input[type=text],
.parent-pageid-105593 .mmh-apply-card .wpcf7-form input[type=email],
.parent-pageid-105593 .mmh-apply-card .wpcf7-form input[type=tel],
.parent-pageid-105593 .mmh-apply-card .wpcf7-form select{width:100%;max-width:100%;min-height:50px;padding:12px 14px;border:1.5px solid #DCE6F0;border-radius:10px;font-size:16px;line-height:1.5;background:#fff;box-sizing:border-box;}
.page-id-105593 .mmh-apply-card .wpcf7-form textarea,
.parent-pageid-105593 .mmh-apply-card .wpcf7-form textarea{width:100%;max-width:100%;padding:12px 14px;border:1.5px solid #DCE6F0;border-radius:10px;font-size:16px;min-height:140px;box-sizing:border-box;}
.page-id-105593 .mmh-apply-card .wpcf7-form input:focus,
.page-id-105593 .mmh-apply-card .wpcf7-form select:focus,
.page-id-105593 .mmh-apply-card .wpcf7-form textarea:focus,
.parent-pageid-105593 .mmh-apply-card .wpcf7-form input:focus,
.parent-pageid-105593 .mmh-apply-card .wpcf7-form select:focus,
.parent-pageid-105593 .mmh-apply-card .wpcf7-form textarea:focus{outline:none;border-color:#3B82B6;box-shadow:0 0 0 3px rgba(27,108,183,.12);}
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=submit],
.parent-pageid-105593 .mmh-apply-card .wpcf7-form input[type=submit]{background:#3B82B6;color:#fff;border:none;border-radius:10px;padding:15px 40px;font-size:16px;font-weight:800;cursor:pointer;margin-top:22px;box-shadow:0 6px 16px rgba(27,108,183,.25);}
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=submit]:hover,
.parent-pageid-105593 .mmh-apply-card .wpcf7-form input[type=submit]:hover{opacity:.9;}
@media(max-width:640px){
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=submit],
.parent-pageid-105593 .mmh-apply-card .wpcf7-form input[type=submit]{width:100%;}
}
/* 小さな監修クレジット行(写真66px+短文) */

@media(max-width:640px){
.page-id-105593 h2.wp-block-heading,
.parent-pageid-105593 h2.wp-block-heading{font-size:20px!important;margin:38px 0 16px!important;padding:4px 0 8px 12px!important;}
}
/* ===== 模試ページ群 デザイン強化 ここまで ===== */

/* ===== /moshi/ ハブ(105593) 商用ページ全面再設計(2026-07-10 第3弾) =====
   見出しを3系統+ヒーローに整理:
   標準=既存の左アクセント(無指定) / 帯用反転=.mmh-h2-band(受付中・最終CTA) /
   申込専用=.mmh-h2-form / ヒーロー=.mmh-h2-hero。
   旧mmh-sup-photo(ヒーロー写真用)は本パスで完全不使用のため削除。 */
.page-id-105593 h2.wp-block-heading.mmh-h2-band,
.parent-pageid-105593 h2.wp-block-heading.mmh-h2-band{border:none!important;background:none!important;text-align:center;padding:0!important;margin:0 0 6px!important;font-size:26px!important;font-weight:800!important;color:#245A8D!important;}
.page-id-105593 h2.wp-block-heading.mmh-h2-form,
.parent-pageid-105593 h2.wp-block-heading.mmh-h2-form{border:none!important;background:none!important;text-align:center;padding:0!important;margin:0 0 8px!important;font-size:28px!important;font-weight:800!important;color:#245A8D!important;}
.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero,
.parent-pageid-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{border:none!important;background:none!important;padding:0!important;margin:0 0 16px!important;font-size:32px!important;line-height:1.4!important;font-weight:800!important;color:#245A8D!important;}
.page-id-105593 .mmh-kicker--center,
.parent-pageid-105593 .mmh-kicker--center{text-align:center;}

/* ヒーロー右側=成績表サンプル画像カード */
.page-id-105593 .mmh-hero-visual,
.parent-pageid-105593 .mmh-hero-visual{background:#fff;border:1px solid #DCE6F0;border-radius:16px;padding:16px;box-shadow:0 10px 28px rgba(27,108,183,.12);}
.page-id-105593 .mmh-hero-visual img,
.parent-pageid-105593 .mmh-hero-visual img{border-radius:10px;display:block;width:100%;height:auto;}
.page-id-105593 .mmh-hero-visual-cap,
.parent-pageid-105593 .mmh-hero-visual-cap{font-size:13px;color:#64748b;text-align:center;margin:10px 0 0!important;}

/* 実績帯(横長、写真なし) */
.page-id-105593 .mmh-achieve-item,
.parent-pageid-105593 .mmh-achieve-item{text-align:center;}

/* 模試一覧グループ */
.page-id-105593 .mmh-group-label,
.parent-pageid-105593 .mmh-group-label{font-size:17px;font-weight:800;color:#245A8D;margin:0 0 14px;padding-left:11px;border-left:4px solid #3B82B6;}

/* 申込セクション: 情報カード+フォームカードの2カラム */
.page-id-105593 .mmh-info-card,
.parent-pageid-105593 .mmh-info-card{background:#fff;border:1px solid #DCE6F0;border-radius:16px;padding:26px 26px;height:100%;box-sizing:border-box;}
.page-id-105593 .mmh-info-card ul,
.parent-pageid-105593 .mmh-info-card ul{margin:0;padding:0;list-style:none;}
.page-id-105593 .mmh-info-card li,
.parent-pageid-105593 .mmh-info-card li{position:relative;padding:9px 0 9px 26px;font-size:15px;color:#5B6778;line-height:1.7;border-bottom:1px dashed #DCE6F0;}
.page-id-105593 .mmh-info-card li:last-child,
.parent-pageid-105593 .mmh-info-card li:last-child{border-bottom:none;}
.page-id-105593 .mmh-info-card li::before,
.parent-pageid-105593 .mmh-info-card li::before{content:"✓";position:absolute;left:2px;top:9px;color:#fff;background:#3B82B6;width:18px;height:18px;border-radius:50%;font-size:11px;line-height:18px;text-align:center;font-weight:700;}

/* 受付中の模試バッジ列(有料/無料はplugin側mn-moshi-manager.phpで定義) */
@media(max-width:640px){
.page-id-105593 h2.wp-block-heading.mmh-h2-band,
.parent-pageid-105593 h2.wp-block-heading.mmh-h2-band{font-size:21px!important;}
.page-id-105593 h2.wp-block-heading.mmh-h2-form,
.parent-pageid-105593 h2.wp-block-heading.mmh-h2-form{font-size:22px!important;}
.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero,
.parent-pageid-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:24px!important;}
.page-id-105593 .mmh-info-card,
.parent-pageid-105593 .mmh-info-card{padding:20px;}
}
/* ===== /moshi/ 第3弾 ここまで ===== */

/* ===== /moshi/ ハブ(105593) ビジュアル総仕上げ(2026-07-10 第4弾) =====
   指摘対応: カード不揃い/実績帯が素のテキスト/見出し新旧混在。
   ハブは全H2を「中央+短いアクセント線」に統一(ヒーローのみ例外)。カードは白背景+等高。 */

/* --- ブログ用サイドバー非表示+本文中央寄せ(tutoring/med-studentsと同方式。模試ファミリー全ページ) --- */
.page-id-105593 .l-flex > main + aside,
.parent-pageid-105593 .l-flex > main + aside{display:none!important;}
.page-id-105593 .l-flex,
.parent-pageid-105593 .l-flex{justify-content:center!important;}
.page-id-105593 .l-flex > main,
.parent-pageid-105593 .l-flex > main{width:100%!important;max-width:min(94%,1040px)!important;margin-left:auto!important;margin-right:auto!important;}

/* --- 見出し統一(ハブのみ。子ページは既存の左アクセントを維持) --- */
.page-id-105593 h2.wp-block-heading{border:none!important;background:none!important;text-align:center!important;padding:0!important;margin:64px 0 12px!important;font-size:26px!important;font-weight:800!important;line-height:1.5!important;color:#172033!important;}
.page-id-105593 h2.wp-block-heading::before{content:none!important;display:none!important;}
.page-id-105593 h2.wp-block-heading::after{content:""!important;display:block!important;width:44px;height:3px;background:#3B82B6;border-radius:2px;margin:14px auto 0;position:static!important;}
.page-id-105593 .dbp-section h2.wp-block-heading{margin-top:0!important;}
.page-id-105593 h2.wp-block-heading.mmh-h2-band,
.page-id-105593 h2.wp-block-heading.mmh-h2-form{font-size:26px!important;margin:0 0 12px!important;color:#172033!important;text-align:center!important;}
.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{text-align:left!important;font-size:30px!important;margin:0 0 14px!important;color:#245A8D!important;}
.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{content:none!important;display:none!important;}
.page-id-105593 p.mmh-kicker{text-align:center;}
.page-id-105593 .mmh-hero p.mmh-kicker{text-align:left;}
.page-id-105593 p.mmh-sub{text-align:center;color:#5B6778;font-size:15.5px;line-height:1.85;max-width:720px;margin:0 auto 32px!important;}

/* --- カード統一(白背景・境界線・角丸・等高)。ハブ+子ページ共通 --- */
.page-id-105593 .dbp-card,
.parent-pageid-105593 .dbp-card{width:100%!important;background:#fff;border:1px solid #DCE6F0;border-radius:14px;box-shadow:0 2px 10px rgba(27,108,183,.05);height:100%;box-sizing:border-box;}
.page-id-105593 .dbp-card>.dbp-card__inner,
.parent-pageid-105593 .dbp-card>.dbp-card__inner{padding:24px 26px;}
.page-id-105593 .dbp-column-item,
.parent-pageid-105593 .dbp-column-item{display:flex;flex-direction:column;}
.page-id-105593 .dbp-column-item>.dbp-card,
.parent-pageid-105593 .dbp-column-item>.dbp-card{flex:1 1 auto;}
.page-id-105593 .dbp-card h3.wp-block-heading,
.parent-pageid-105593 .dbp-card h3.wp-block-heading{font-size:17px;font-weight:700;line-height:1.6;margin:0 0 8px;color:#172033;}
.page-id-105593 .dbp-card p,
.parent-pageid-105593 .dbp-card p{font-size:14.5px;line-height:1.85;color:#5B6778;margin:0 0 10px;}
.page-id-105593 .dbp-card p:last-child,
.parent-pageid-105593 .dbp-card p:last-child{margin-bottom:0;}
.page-id-105593 .dbp-card p a{color:#245A8D;font-weight:700;text-decoration:none;}
.page-id-105593 .dbp-card p a:hover{text-decoration:underline;}
.page-id-105593 .mmh-hero-visual>.dbp-card__inner{padding:0!important;}

/* --- 実績帯(1本の帯として描画。チェックはCSSで付与=アイコンブロック不使用) --- */
.page-id-105593 .dbp-id-achieve{background:#f4f8fc;border:1px solid #dbe7f3;border-radius:16px;padding:26px 24px;margin:36px 0 8px;}
.page-id-105593 .dbp-id-achieve .dbp-column-item{display:flex;align-items:center;justify-content:center;}
.page-id-105593 p.mmh-achieve-item{margin:0!important;font-size:14px;font-weight:700;color:#245A8D;line-height:1.75;}
.page-id-105593 p.mmh-achieve-item::before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#3B82B6;color:#fff;font-size:11px;font-weight:700;margin-right:8px;vertical-align:-4px;}

/* --- グループ見出し(模試一覧のIMAT/私立ラベル) --- */
.page-id-105593 p.mmh-group-label{margin:34px 0 16px!important;}

/* --- 模試後に分かること(media-text)の画像・余白統一 --- */
.page-id-105593 .wp-block-media-text{margin:0 0 36px;}
.page-id-105593 .wp-block-media-text__media img{border:1px solid #DCE6F0;border-radius:14px;box-shadow:0 10px 26px rgba(15,59,120,.08);}
.page-id-105593 .wp-block-media-text .wp-block-media-text__content{padding:0 0 0 34px;}
.page-id-105593 .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{padding:0 34px 0 0;}
.page-id-105593 .wp-block-media-text h3.wp-block-heading{font-size:19px;font-weight:800;margin:0 0 8px;color:#172033;}

/* --- 申込セクション --- */
.page-id-105593 .mmh-apply-card>.dbp-card__inner{padding:28px;}
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=submit]{width:100%;}

/* --- 流れ・FAQは本文幅を絞って読みやすく --- */
.page-id-105593 .dbp-step{max-width:860px;margin-left:auto;margin-right:auto;}
.page-id-105593 .dbp-accordion{max-width:860px;margin-left:auto!important;margin-right:auto!important;}

/* --- CTAボタン列(帯セクション内は中央) --- */
.page-id-105593 .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.page-id-105593 .mmh-final .wp-block-buttons,
.page-id-105593 .mmh-open .wp-block-buttons{justify-content:center;}

@media(max-width:640px){
.page-id-105593 h2.wp-block-heading{font-size:21px!important;margin:46px 0 10px!important;}
.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:23px!important;margin:0 0 12px!important;}
.page-id-105593 p.mmh-sub{margin:0 auto 24px!important;}
.page-id-105593 .dbp-card>.dbp-card__inner,
.parent-pageid-105593 .dbp-card>.dbp-card__inner{padding:18px 18px;}
.page-id-105593 .dbp-id-achieve{padding:20px 16px;}
.page-id-105593 .wp-block-media-text .wp-block-media-text__content,
.page-id-105593 .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{padding:16px 0 0;}
}
/* ===== /moshi/ 第4弾 ここまで ===== */

/* ===== /moshi/ ハブ 磨き第5弾(2026-07-10) + ヘッダー中間幅バグのサイト全体修正 ===== */

/* --- [サイト全体] ヘッダー: 約600〜799pxでグローバルナビとドロワーアイコン(カレンダー+メニュー)が
       重なって表示されるテーマ既知問題の修正。この帯域はドロワーメニューに一本化する。
       (アイコンフォント(Google Symbols)自体は全ページで正常ロードを確認済み) --- */
@media(max-width:799px){
header nav.is-position-right{display:none!important;}
}

/* --- ヒーロー内リズム調整 --- */
.page-id-105593 .mmh-hero .dbp-section__inner{padding-block:48px!important;}
.page-id-105593 .mmh-hero .mmh-chips{margin:0 0 2px!important;font-size:12.5px!important;letter-spacing:0;color:#51627a;white-space:nowrap;}
@media(max-width:420px){.page-id-105593 .mmh-hero .mmh-chips{font-size:11.5px!important;word-spacing:-2px;}}
.page-id-105593 .mmh-hero .wp-block-buttons{margin:12px 0 2px;}

/* --- 監修クレジット(小さな写真+一言。写真はcore/imageで差し替え可能) --- */
.page-id-105593 .mmh-credit{background:#F8FAFC;border:1px solid #DCE6F0;border-radius:12px;padding:10px 16px;margin-top:14px;gap:0 14px;align-items:center;}
.page-id-105593 .mmh-credit .wp-block-column{margin:0!important;}
.page-id-105593 .mmh-credit .wp-block-column:first-child{flex:0 0 64px!important;}
.page-id-105593 .mmh-credit figure{margin:0!important;}
.page-id-105593 .mmh-credit img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;}
.page-id-105593 .mmh-credit p{margin:0!important;color:#5B6778;font-size:13.5px;line-height:1.7;}

/* --- キッカー(小ラベル)とH2の距離を密着させ、セクション頭をひとまとまりに --- */
.page-id-105593 p.mmh-kicker{margin:60px 0 4px!important;}
.page-id-105593 .dbp-section p.mmh-kicker{margin-top:0!important;}
.page-id-105593 p.mmh-kicker + h2.wp-block-heading{margin-top:0!important;}
.page-id-105593 .mmh-hero p.mmh-kicker{margin:0 0 4px!important;}

/* --- 日程まわり: 見出し・説明・表をひとまとまりに --- */
.page-id-105593 p.mmh-sub{margin:0 auto 24px!important;}
.page-id-105593 h3.wp-block-heading{margin:20px 0 12px;}

/* --- 申込フォーム: 必須/任意バッジ(CF7の既存 mml-required/mml-optional spanに視覚スタイルを付与) --- */
.page-id-105593 .mmh-apply-card .mml-required,
.parent-pageid-105593 .mmh-apply-card .mml-required{display:inline-block;font-size:13px;font-weight:700;color:#fff;background:#e5484d;border-radius:5px;padding:1px 8px;margin-left:8px;line-height:1.7;vertical-align:2px;}
.page-id-105593 .mmh-apply-card .mml-optional,
.parent-pageid-105593 .mmh-apply-card .mml-optional{display:inline-block;font-size:13px;font-weight:700;color:#5B6778;background:#e8edf3;border-radius:5px;padding:1px 8px;margin-left:8px;line-height:1.7;vertical-align:2px;}

/* --- 同意チェック行(利用規約・プライバシーポリシー): ボックス化+チェックボックス整列 --- */
.page-id-105593 .mmh-apply-card .wpcf7-acceptance,
.parent-pageid-105593 .mmh-apply-card .wpcf7-acceptance{display:block;background:#F8FAFC;border:1px solid #DCE6F0;border-radius:10px;padding:11px 14px;margin:10px 0 0;font-size:14px;line-height:1.8;}
.page-id-105593 .mmh-apply-card .wpcf7-acceptance .wpcf7-list-item,
.parent-pageid-105593 .mmh-apply-card .wpcf7-acceptance .wpcf7-list-item{display:block;margin:0;}
.page-id-105593 .mmh-apply-card .wpcf7-acceptance input[type=checkbox],
.parent-pageid-105593 .mmh-apply-card .wpcf7-acceptance input[type=checkbox]{width:17px;height:17px;margin-right:9px;vertical-align:-3px;accent-color:#3B82B6;}
.page-id-105593 .mmh-apply-card .wpcf7-acceptance a,
.parent-pageid-105593 .mmh-apply-card .wpcf7-acceptance a{color:#245A8D;font-weight:700;}

/* --- Turnstile・送信ボタンまわりの余白 --- */
.page-id-105593 .mmh-apply-card .cf-turnstile{margin:16px 0 0;}
.page-id-105593 .mmh-apply-card textarea{min-height:96px!important;}

@media(max-width:640px){
.page-id-105593 .mmh-hero .dbp-section__inner{padding-block:34px!important;}
.page-id-105593 .mmh-credit{padding:9px 12px;}
.page-id-105593 .mmh-credit img{width:48px;height:48px;}
.page-id-105593 .mmh-credit .wp-block-column:first-child{flex:0 0 52px!important;}
.page-id-105593 p.mmh-kicker{margin:44px 0 4px!important;}
}
/* ===== 第5弾 ここまで ===== */

/* ===== HUMAT再構築(2026-07-11): 監修者写真=小さめ円形(メディアから差替可能なcore/image) ===== */
.parent-pageid-105593 .mmh-team-photo{margin:0 0 8px;}
.parent-pageid-105593 .mmh-team-photo img{width:110px;height:110px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 4px 14px rgba(27,108,183,.16);}
@media(max-width:640px){
.parent-pageid-105593 .mmh-team-photo img{width:90px;height:90px;}
}

/* ===== /moshi/ 申込セクション1カラム化+ヒーロー監修表記(2026-07-14 第7弾) =====
   仕様: PC/タブレット/スマホすべて縦1カラム(注意事項→フォーム)、中央寄せmax-width940px。
   ヒーロー監修文言「IMAT2位合格者（北部／Non-EU）が監修」の（北部／Non-EU）が監修 は途中改行禁止。 */
.page-id-105593 .mmh-credit .mmh-nb{white-space:nowrap;}
.page-id-105593 .mmh-apply .dbp-section__inner{max-width:940px;margin-left:auto;margin-right:auto;}
.page-id-105593 .mmh-apply .mmh-info-card,
.page-id-105593 .mmh-apply .mmh-apply-card{width:100%!important;max-width:100%;min-width:0;box-sizing:border-box;}
.page-id-105593 .mmh-apply .mmh-info-card{margin-top:8px;}
.page-id-105593 .mmh-apply .mmh-apply-card{margin-top:32px;}
.page-id-105593 .mmh-apply .mmh-info-card>.dbp-card__inner{padding:32px 34px;}
.page-id-105593 .mmh-apply .mmh-apply-card>.dbp-card__inner{padding:40px 38px;}
.page-id-105593 .mmh-apply .mmh-info-card li{padding-top:8px;padding-bottom:8px;font-size:16px;line-height:1.75;}
.page-id-105593 .mmh-apply-card .wpcf7,
.page-id-105593 .mmh-apply-card .wpcf7 p{font-size:16px;line-height:1.7;}
.page-id-105593 .mmh-apply-card .wpcf7-list-item-label{font-size:16px;line-height:1.6;}
.page-id-105593 .mmh-apply-card .wpcf7-not-valid-tip{font-size:14px;line-height:1.6;}
.page-id-105593 .mmh-apply-card .wpcf7-form input[type=submit]{min-height:52px;padding:14px 24px;font-size:17px;font-weight:700;}
@media(max-width:1024px){
.page-id-105593 .mmh-apply .mmh-apply-card>.dbp-card__inner{padding:30px 28px;}
}
@media(max-width:640px){
.page-id-105593 .mmh-apply .dbp-section__inner{padding-left:16px;padding-right:16px;}
.page-id-105593 .mmh-apply .mmh-info-card>.dbp-card__inner{padding:22px 20px;}
.page-id-105593 .mmh-apply .mmh-apply-card>.dbp-card__inner{padding:22px 20px;}
.page-id-105593 .mmh-apply .mmh-apply-card{margin-top:28px;}
.page-id-105593 .mmh-apply .mmh-info-card li{padding-top:6px;padding-bottom:6px;}
}
/* ===== 第7弾 ここまで ===== */

/* ===== /moshi/ 最終修正(2026-07-14 第8弾): ヒーロー右=問題用紙表紙 / 申込=1つの連続カード ===== */
/* --- ヒーロー右: 問題用紙(縦長)をカード内に自然に収める(全体表示・比率維持・切り抜きなし) --- */
/* ヒーロー右: 画像をカード枠にぴったり収める(上端フラッシュ・二重枠なし・キャプションは枠内下部) */
.page-id-105593 .mmh-hero-visual{padding:0!important;border:1px solid #DCE6F0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(15,59,120,.10);}
.page-id-105593 .mmh-hero-visual>.dbp-card__inner{padding:0!important;display:block;}
.page-id-105593 .mmh-qpaper{margin:0!important;}
.page-id-105593 .mmh-qpaper img{width:100%;max-width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;}
.page-id-105593 p.mmh-hero-visual-cap{margin:0!important;padding:14px 18px 16px;text-align:center;border-top:1px solid #F8FAFC;color:#5B6778;background:#fff;}

/* --- 申込: 1つの連続カード。上=注意事項(淡背景)/下=フォーム(白)。区切りは細線のみ、独立カード・大きな空白なし --- */
.page-id-105593 .mmh-application-card{width:100%;max-width:100%;min-width:0;box-sizing:border-box;background:#fff;border:1px solid #DCE6F0;border-radius:16px;overflow:hidden;box-shadow:0 6px 20px rgba(27,108,183,.10);margin-top:8px;}
.page-id-105593 .mmh-application-card>.wp-block-group{margin:0!important;}
.page-id-105593 .mmh-application-notice{background:#F8FAFC;border-bottom:1px solid #DCE6F0;padding:30px 34px;}
.page-id-105593 .mmh-application-notice h3.wp-block-heading{margin:0 0 8px;font-size:18px;font-weight:700;color:#172033;}
.page-id-105593 .mmh-application-notice ul{margin:0;padding:0;list-style:none;}
.page-id-105593 .mmh-application-notice li{position:relative;padding:8px 0 8px 26px;font-size:16px;color:#5B6778;line-height:1.75;border-bottom:1px dashed #DCE6F0;}
.page-id-105593 .mmh-application-notice li:last-child{border-bottom:none;padding-bottom:2px;}
.page-id-105593 .mmh-application-notice li::before{content:"✓";position:absolute;left:2px;top:11px;color:#fff;background:#3B82B6;width:18px;height:18px;border-radius:50%;font-size:11px;line-height:18px;text-align:center;font-weight:700;}
.page-id-105593 .mmh-application-form{background:#fff;padding:38px 40px;}

/* --- フォーム内部(旧.mmh-apply-cardスコープからの引き継ぎ。CF7本体は無変更) --- */
.page-id-105593 .mmh-application-form .wpcf7,
.page-id-105593 .mmh-application-form .wpcf7 p{font-size:16px;line-height:1.7;}
.page-id-105593 .mmh-application-form .wpcf7-form label{display:block;font-weight:700;font-size:16px;margin:18px 0 6px;color:#172033;}
.page-id-105593 .mmh-application-form .wpcf7-form input[type=text],
.page-id-105593 .mmh-application-form .wpcf7-form input[type=email],
.page-id-105593 .mmh-application-form .wpcf7-form input[type=tel],
.page-id-105593 .mmh-application-form .wpcf7-form select{width:100%;max-width:100%;min-width:0;min-height:50px;padding:12px 14px;border:1.5px solid #DCE6F0;border-radius:10px;font-size:16px;line-height:1.5;background:#fff;box-sizing:border-box;}
.page-id-105593 .mmh-application-form .wpcf7-form textarea{width:100%;max-width:100%;min-width:0;padding:12px 14px;border:1.5px solid #DCE6F0;border-radius:10px;font-size:16px;min-height:140px;box-sizing:border-box;}
.page-id-105593 .mmh-application-form .wpcf7-form input:focus,
.page-id-105593 .mmh-application-form .wpcf7-form select:focus,
.page-id-105593 .mmh-application-form .wpcf7-form textarea:focus{outline:none;border-color:#3B82B6;box-shadow:0 0 0 3px rgba(27,108,183,.12);}
.page-id-105593 .mmh-application-form .wpcf7-list-item-label{font-size:16px;line-height:1.6;}
.page-id-105593 .mmh-application-form .wpcf7-not-valid-tip{font-size:14px;line-height:1.6;}
.page-id-105593 .mmh-application-form .mml-required{display:inline-block;font-size:13px;font-weight:700;color:#fff;background:#e5484d;border-radius:5px;padding:1px 9px;margin-left:8px;line-height:1.7;vertical-align:2px;}
.page-id-105593 .mmh-application-form .mml-optional{display:inline-block;font-size:13px;font-weight:700;color:#5B6778;background:#e8edf3;border-radius:5px;padding:1px 9px;margin-left:8px;line-height:1.7;vertical-align:2px;}
.page-id-105593 .mmh-application-form .wpcf7-acceptance{display:block;background:#F8FAFC;border:1px solid #DCE6F0;border-radius:10px;padding:11px 14px;margin:10px 0 0;font-size:14px;line-height:1.8;color:#5B6778;}
.page-id-105593 .mmh-application-form .wpcf7-acceptance .wpcf7-list-item{display:block;margin:0;}
.page-id-105593 .mmh-application-form .wpcf7-acceptance input[type=checkbox]{width:17px;height:17px;margin-right:9px;vertical-align:-3px;accent-color:#3B82B6;}
.page-id-105593 .mmh-application-form .wpcf7-acceptance a{color:#245A8D;font-weight:700;}
.page-id-105593 .mmh-application-form .cf-turnstile{margin:16px 0 0;}
.page-id-105593 .mmh-application-form .wpcf7-form input[type=submit]{width:100%;background:#3B82B6;color:#fff;border:none;border-radius:10px;min-height:52px;padding:14px 24px;font-size:17px;font-weight:700;cursor:pointer;margin-top:22px;box-shadow:0 6px 16px rgba(27,108,183,.25);}
.page-id-105593 .mmh-application-form .wpcf7-form input[type=submit]:hover{opacity:.9;}
@media(max-width:1024px){
.page-id-105593 .mmh-application-form{padding:30px 28px;}
.page-id-105593 .mmh-application-notice{padding:26px 28px;}
}
@media(max-width:640px){
.page-id-105593 .mmh-application-notice{padding:22px 20px;}
.page-id-105593 .mmh-application-notice li{padding-top:6px;padding-bottom:6px;}
.page-id-105593 .mmh-application-form{padding:22px 20px;}
}
/* ===== 第8弾 ここまで ===== */
/* === tutoring v5 追加 (2026-07-16) === */
/* 講師2枚グリッド(2→3列拡張可能) */
.page-id-105331 .dbp-id-mtu-teachers{max-width:820px;margin-left:auto;margin-right:auto;}
.page-id-105331 .mtu-tphoto img{width:100%;max-width:none;aspect-ratio:1/1;object-fit:cover;border-radius:12px;background:#eef3f9;}
.page-id-105331 .mtu-tphoto{margin:0 0 16px;width:100%;display:block;}
.page-id-105331 .mtu-tlabel{font-size:12.5px!important;font-weight:700;color:#245A8D;letter-spacing:.04em;margin:6px 0 6px!important;}
/* 講師カードと注意書きの余白確保 */
.page-id-105331 .mtu-teachernote{margin-top:40px;}
.page-id-105331 .mtu-teachernote .mtu-note{margin:0;text-align:center;}
/* 1回の授業: 縦タイムライン */
.page-id-105331 .mtu-lsteplist{margin-top:6px;}
.page-id-105331 .mtu-lstep{position:relative;background:#fff;border:1px solid #DCE6F0;border-radius:12px;padding:16px 18px 16px 56px;margin:0 0 14px;box-shadow:0 2px 8px rgba(27,68,138,.04);}
.page-id-105331 .mtu-lstep:last-child{margin-bottom:0;}
.page-id-105331 .mtu-lstepnum{position:absolute;left:16px;top:16px;width:28px;height:28px;border-radius:50%;background:#3B82B6;color:#fff;font-size:14px!important;font-weight:700;line-height:28px;text-align:center;margin:0!important;}
.page-id-105331 .mtu-lstep h3.wp-block-heading{border-left:none!important;padding:0!important;margin:0 0 4px!important;font-size:17px!important;}
.page-id-105331 .mtu-lstep p{font-size:14px;margin:0;line-height:1.75;}
/* 短期集中: 年1回強調 */
.page-id-105331 .mtu-year1{display:block;background:#fff3e0;border:1px solid #f0c88a;border-radius:8px;padding:12px 14px;color:#a45a09;font-size:15.5px;margin:0 0 14px;line-height:1.7;}
/* 体験授業の料金 */
.page-id-105331 .mtu-trialprice{font-size:20px!important;font-weight:700;color:#245A8D;margin:18px 0 12px!important;}
/* 指導内容ラベル(01-04) */
.page-id-105331 .mtu-flabel{font-size:13px!important;font-weight:700;letter-spacing:.1em;color:#245A8D;margin:0 0 6px!important;line-height:1.2;}
/* 対応科目11項目グリッド */
.page-id-105331 ul.mtu-subjects{grid-template-columns:repeat(4,1fr);}
@media(max-width:1023px){.page-id-105331 ul.mtu-subjects{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){
  .page-id-105331 ul.mtu-subjects{grid-template-columns:repeat(2,1fr);}
  .page-id-105331 .mtu-lstep{padding-left:52px;}
}

/* ============================================================
   HUMAT模試 専用LP (page-id-105595) — /moshi/ヒーロー体系を子ページへ適用
   ============================================================ */
.page-id-105595 p.mmh-kicker,
/* ============================================================
   HUMAT模試 専用LP (page-id-105595) — /moshi/ヒーロー体系を子ページへ適用
   ============================================================ */
.page-id-105594 p.mmh-kicker{font-size:.8rem;font-weight:800;letter-spacing:.12em;color:#245A8D;margin:0 0 8px!important;}.page-id-105595 :is(h1,h2).wp-block-heading.mmh-h2-hero,
.page-id-105594 :is(h1,h2).wp-block-heading.mmh-h2-hero{border:none!important;background:none!important;padding:0!important;margin:0 0 14px!important;font-size:30px!important;line-height:1.45!important;font-weight:800!important;color:#245A8D!important;text-align:left!important;}.page-id-105595 :is(h1,h2).wp-block-heading.mmh-h2-hero::after,
.page-id-105594 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{content:none!important;display:none!important;}.page-id-105595 .mmh-hero .dbp-section__inner,
.page-id-105594 .mmh-hero .dbp-section__inner{padding-top:56px;padding-bottom:56px;}.page-id-105595 .mmh-hero .dbp-id-herohumat,
.page-id-105594 .mmh-hero .dbp-id-herohumat{align-items:center;}.page-id-105595 p.mmh-chips,
.page-id-105594 p.mmh-chips{color:#245A8D;font-weight:600;margin:14px 0 4px!important;}/* ヒーローCTA(ショートコード出力のwp-block-buttons) */
.page-id-105595 .mmh-hero .wp-block-buttons,
/* ヒーローCTA(ショートコード出力のwp-block-buttons) */
.page-id-105594 .mmh-hero .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 2px;}.page-id-105595 .mmh-hero .wp-block-buttons .dbp-button,
.page-id-105594 .mmh-hero .wp-block-buttons .dbp-button{margin:0;}/* 監修クレジット帯 */
.page-id-105595 .mmh-credit,
/* 監修クレジット帯 */
.page-id-105594 .mmh-credit{background:#F8FAFC;border:1px solid #DCE6F0;border-radius:12px;padding:10px 16px;margin-top:16px;gap:0 14px;align-items:center;}.page-id-105595 .mmh-credit .wp-block-column,
.page-id-105594 .mmh-credit .wp-block-column{margin:0!important;}.page-id-105595 .mmh-credit .wp-block-column:first-child,
.page-id-105594 .mmh-credit .wp-block-column:first-child{flex:0 0 64px!important;}.page-id-105595 .mmh-credit figure,
.page-id-105594 .mmh-credit figure{margin:0!important;}.page-id-105595 .mmh-credit img,
.page-id-105594 .mmh-credit img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;}.page-id-105595 .mmh-credit p,
.page-id-105594 .mmh-credit p{margin:0!important;color:#5B6778;font-size:13.5px;line-height:1.7;}.page-id-105595 .mmh-credit .mmh-nb,
.page-id-105594 .mmh-credit .mmh-nb{white-space:nowrap;}/* ヒーロービジュアル(問題画面画像=フラッシュ表示) */
.page-id-105595 .mmh-hero-visual,
/* ヒーロービジュアル(問題画面画像=フラッシュ表示) */
.page-id-105594 .mmh-hero-visual{padding:0!important;border:1px solid #DCE6F0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(15,59,120,.10);}.page-id-105595 .mmh-hero-visual>.dbp-card__inner,
.page-id-105594 .mmh-hero-visual>.dbp-card__inner{padding:0!important;display:block;gap:0!important;}.page-id-105595 .mmh-qpaper,
.page-id-105594 .mmh-qpaper{margin:0!important;}.page-id-105595 .mmh-qpaper img,
.page-id-105594 .mmh-qpaper img{width:100%;max-width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;}.page-id-105595 p.mmh-hero-visual-cap,
.page-id-105594 p.mmh-hero-visual-cap{margin:0!important;padding:12px 16px 14px;text-align:center;border-top:1px solid #F8FAFC;color:#5B6778;background:#fff;font-size:13px;}/* サブ見出し文 */
.page-id-105595 p.mmh-sub,
/* サブ見出し文 */
.page-id-105594 p.mmh-sub{color:#5B6778;font-size:15.5px;line-height:1.85;margin:0 0 22px!important;}/* 受験料カード(mmh-apply内、フォームはmn_mock_apply側CSSが担当) */
.page-id-105595 .mmh-apply-card,
/* 受験料カード(mmh-apply内、フォームはmn_mock_apply側CSSが担当) */
.page-id-105594 .mmh-apply-card{border:1px solid #DCE6F0;box-shadow:0 6px 20px rgba(27,108,183,.1);}.page-id-105595 .mmh-apply-card>.dbp-card__inner,
.page-id-105594 .mmh-apply-card>.dbp-card__inner{padding:28px;}
@media(max-width:900px){.page-id-105595 :is(h1,h2).wp-block-heading.mmh-h2-hero,
.page-id-105594 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:24px!important;}.page-id-105595 .mmh-hero .dbp-section__inner,
.page-id-105594 .mmh-hero .dbp-section__inner{padding-top:40px;padding-bottom:40px;}
}
@media(max-width:640px){.page-id-105595 :is(h1,h2).wp-block-heading.mmh-h2-hero,
.page-id-105594 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:22px!important;}.page-id-105595 .mmh-hero .wp-block-buttons,
.page-id-105594 .mmh-hero .wp-block-buttons{gap:10px;}.page-id-105595 .mmh-hero .wp-block-buttons .dbp-button,
.page-id-105594 .mmh-hero .wp-block-buttons .dbp-button{width:100%;}.page-id-105595 .mmh-hero .wp-block-buttons .dbp-button-link,
.page-id-105594 .mmh-hero .wp-block-buttons .dbp-button-link{width:100%;text-align:center;box-sizing:border-box;}.page-id-105595 .mmh-credit img,
.page-id-105594 .mmh-credit img{width:48px;height:48px;}.page-id-105595 .mmh-credit .wp-block-column:first-child,
.page-id-105594 .mmh-credit .wp-block-column:first-child{flex:0 0 52px!important;}.page-id-105595 .mmh-apply-card>.dbp-card__inner,
.page-id-105594 .mmh-apply-card>.dbp-card__inner{padding:20px;}
}/* HUMAT 受験後に確認できるもの — 実物レポート画像(media-text) */
.page-id-105595 .mmh-after-mt,
/* HUMAT 受験後に確認できるもの — 実物レポート画像(media-text) */
.page-id-105594 .mmh-after-mt{margin:0 0 26px;gap:0 34px;align-items:center;}.page-id-105595 .mmh-after-mt .wp-block-media-text__media img,
.page-id-105594 .mmh-after-mt .wp-block-media-text__media img{border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 8px 22px rgba(15,59,120,.10);display:block;width:100%;height:auto;}.page-id-105595 .mmh-after-mt .wp-block-media-text__content h3,
.page-id-105594 .mmh-after-mt .wp-block-media-text__content h3{margin:0 0 10px;font-size:19px;color:#245A8D;font-weight:800;}.page-id-105595 .mmh-after-mt .wp-block-media-text__content p,
.page-id-105594 .mmh-after-mt .wp-block-media-text__content p{margin:0 0 10px;color:#5B6778;line-height:1.85;font-size:15px;}
@media(max-width:781px){.page-id-105595 .mmh-after-mt,
.page-id-105594 .mmh-after-mt{gap:16px 0;}.page-id-105595 .mmh-after-mt .wp-block-media-text__content,
.page-id-105594 .mmh-after-mt .wp-block-media-text__content{padding:14px 2px 0!important;}
}.page-id-105595 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media,
.page-id-105594 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media{grid-column:2;grid-row:1;}.page-id-105595 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content,
.page-id-105594 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:1;}
@media(max-width:781px){.page-id-105595 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media,
.page-id-105594 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media,
.page-id-105595 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content,
.page-id-105594 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;}
}/* ============================================================
   HUMAT LP v2 改修 (2026-07-16)
   ============================================================ */
/* 選ばれる理由 = 4アイコンカード(2x2) */
.page-id-105595 .dbp-id-why .dbp-column-item,
/* ============================================================
   HUMAT LP v2 改修 (2026-07-16)
   ============================================================ */
/* 選ばれる理由 = 4アイコンカード(2x2) */
.page-id-105594 .dbp-id-why .dbp-column-item{display:flex;}.page-id-105595 .mmh-why-card,
.page-id-105594 .mmh-why-card{width:100%!important;border:1px solid #DCE6F0;border-radius:16px;background:linear-gradient(180deg,#fbfdff 0%,#f4f9fe 100%);box-shadow:0 6px 20px rgba(27,108,183,.07);transition:box-shadow .2s ease,transform .2s ease;}.page-id-105595 .mmh-why-card:hover,
.page-id-105594 .mmh-why-card:hover{box-shadow:0 12px 30px rgba(27,108,183,.13);transform:translateY(-2px);}.page-id-105595 .mmh-why-card>.dbp-card__inner,
.page-id-105594 .mmh-why-card>.dbp-card__inner{padding:30px 28px;gap:0;}.page-id-105595 .mmh-why-card .dbp-card__inner>h3,
.page-id-105594 .mmh-why-card .dbp-card__inner>h3{margin:0 0 8px!important;font-size:19px;font-weight:800;color:#245A8D;line-height:1.5;}.page-id-105595 .mmh-why-card .dbp-card__inner>h3::before,
.page-id-105594 .mmh-why-card .dbp-card__inner>h3::before{content:"";display:block;width:54px;height:54px;margin:0 0 15px;border-radius:15px;background-color:#eaf3fc;background-repeat:no-repeat;background-position:center;background-size:30px 30px;}.page-id-105595 .mmh-why-card p,
.page-id-105594 .mmh-why-card p{margin:0;color:#5B6778;font-size:15px;line-height:1.85;}
@media(max-width:640px){.page-id-105595 .mmh-why-card>.dbp-card__inner,
.page-id-105594 .mmh-why-card>.dbp-card__inner{padding:22px 20px;}}/* 料金 → お申し込み セクション間に余白 */
.page-id-105595 #application,
/* 料金 → お申し込み セクション間に余白 */
.page-id-105594 #application{margin-top:56px!important;padding-top:30px!important;border-top:1px solid #e6eef6!important;}
@media(max-width:640px){.page-id-105595 #application,
.page-id-105594 #application{margin-top:44px!important;padding-top:24px!important;}}/* 最終CTAボタンを中央揃え(本文中央のため) */
.page-id-105595 .mmh-final .mmh-cta-row,
/* 最終CTAボタンを中央揃え(本文中央のため) */
.page-id-105594 .mmh-final .mmh-cta-row{justify-content:center;}.page-id-105595 .mmh-why-1 .dbp-card__inner>h3::before,
.page-id-105594 .mmh-why-1 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205h10'/%3E%3Cpath%20d='M4%2010h10'/%3E%3Cpath%20d='M4%2015h6'/%3E%3Cpath%20d='m14.5%2015%202%202%204-4'/%3E%3C/svg%3E");}.page-id-105595 .mmh-why-2 .dbp-card__inner>h3::before,
.page-id-105594 .mmh-why-2 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='8.5'/%3E%3Cpath%20d='M12%207.5V12l3%202'/%3E%3C/svg%3E");}.page-id-105595 .mmh-why-3 .dbp-card__inner>h3::before,
.page-id-105594 .mmh-why-3 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%2020V11'/%3E%3Cpath%20d='M10%2020V5'/%3E%3Cpath%20d='M16%2020v-6'/%3E%3Cpath%20d='M21%2020H3'/%3E%3C/svg%3E");}.page-id-105595 .mmh-why-4 .dbp-card__inner>h3::before,
.page-id-105594 .mmh-why-4 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='9'%20r='5'/%3E%3Cpath%20d='m8.5%2013.2-1.5%207.8%205-2.8%205%202.8-1.5-7.8'/%3E%3C/svg%3E");}
/* === tutoring v7 追加 (2026-07-16 成約LP再設計) === */
/* mirunote個別指導とは: 強調文 */
.page-id-105331 .mtu-about-strong{font-size:17px!important;font-weight:700;color:#245A8D;margin:2px 0 12px!important;}
/* なぜmirunote 2x2カード等高 */
.page-id-105331 .dbp-id-mtu-why1>.dbp-column-item,
.page-id-105331 .dbp-id-mtu-why2>.dbp-column-item{display:flex;}
/* 授業外サポート4カード */
.page-id-105331 .dbp-id-mtu-home .dbp-card h3.wp-block-heading{margin-bottom:6px!important;}
/* 最終CTA: 濃紺背景帯 */
.page-id-105331 .mtu-finalbox{color:#fff;}
.page-id-105331 .mtu-finalbox h2.msm-hero-h2{color:#fff!important;text-align:center;font-size:30px!important;margin:0 0 14px!important;}
.page-id-105331 .mtu-final-lead{color:#4F5A6B!important;text-align:center;font-size:16.5px!important;max-width:760px;margin:0 auto 26px!important;}
.page-id-105331 .mtu-finalbox .dbp-card{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:none!important;}
.page-id-105331 .mtu-finalbox .dbp-card h3.wp-block-heading{color:#fff!important;border-left:3px solid #7fa8d9!important;font-size:17px!important;}
.page-id-105331 .mtu-finalbox .dbp-card p{color:#e3ecf6!important;font-size:14.5px;}
.page-id-105331 .mtu-finalbox .mtu-cta-note{color:#4F5A6B!important;}
.page-id-105331 .mtu-finalbox .dbp-button-link.is-style-fill{background:#3B82B6!important;color:#fff!important;}
.page-id-105331 .mtu-finalbox .dbp-id-mtu-finalcards{margin-bottom:26px;}
/* 週間計画画像を中央・幅制限 */
.page-id-105331 .mtu-fig-plan{max-width:820px;margin-left:auto;margin-right:auto;}
/* === tutoring v8 追加 (2026-07-16 イタリア医学部前面化) === */
/* なぜmirunote: 3+2カードとも等高(2段) */
.page-id-105331 .dbp-id-mtu-why1>.dbp-column-item,
.page-id-105331 .dbp-id-mtu-why2>.dbp-column-item{display:flex;}
/* 1回の授業: 縦長画像2枚を上部に(高さ揃え) */
.page-id-105331 .dbp-id-mtu-lessonimg{align-items:stretch;}
.page-id-105331 .mtu-fig-lesson img,.page-id-105331 .mtu-fig-solve img{width:100%;height:100%;object-fit:cover;border-radius:14px;}
.page-id-105331 .dbp-id-mtu-lessonimg>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-lessonimg .mtu-fig{margin:0;flex:1 1 auto;display:flex;}
/* 週間計画画像を中央・幅制限 */
.page-id-105331 .mtu-fig-week{max-width:860px;margin-left:auto;margin-right:auto;}
/* 短期集中2カード群 */
.page-id-105331 .dbp-id-mtu-intens2>.dbp-column-item{display:flex;}
/* CTA帯(#3B82B6) */
.page-id-105331 .mtu-finalbox{color:#fff;text-align:center;}
.page-id-105331 .mtu-finalbox h2.msm-hero-h2{color:#fff!important;text-align:center;font-size:30px!important;margin:0 0 14px!important;}
.page-id-105331 .mtu-final-lead{color:#4F5A6B!important;text-align:center;font-size:16.5px!important;max-width:760px;margin:0 auto 24px!important;}
.page-id-105331 .mtu-finalbox .mtu-cta-note{color:#4F5A6B!important;}
.page-id-105331 .mtu-finalbox .dbp-button-link.is-style-fill{background:#3B82B6!important;color:#fff!important;}/* HUMAT LP: ページ内の全ての表を th/td すべて中央揃えに統一 (2026-07-16)
   対象=日程表(.mms-mock-table) / 試験形式3表 / おすすめ表(core table)。page-id-105595 限定。 */
.page-id-105595 .wp-block-table th,
/* HUMAT LP: ページ内の全ての表を th/td すべて中央揃えに統一 (2026-07-16)
   対象=日程表(.mms-mock-table) / 試験形式3表 / おすすめ表(core table)。page-id-105595 限定。 */
.page-id-105594 .wp-block-table th,
.page-id-105595 .wp-block-table td,
.page-id-105594 .wp-block-table td,
.page-id-105595 .mn-moshi th,
.page-id-105594 .mn-moshi th,
.page-id-105595 .mn-moshi td,
.page-id-105594 .mn-moshi td,
.page-id-105595 .mms-mock-table th,
.page-id-105594 .mms-mock-table th,
.page-id-105595 .mms-mock-table td,
.page-id-105594 .mms-mock-table td{text-align:center!important;vertical-align:middle!important;}

/* IMAT LP: 選ばれる理由 追加アイコン(5=復習/6=解説・アドバイス) */
.page-id-105595 .mmh-why-5 .dbp-card__inner>h3::before,
.page-id-105594 .mmh-why-5 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%205.5A1.5%201.5%200%200%201%204.5%204H9a3%203%200%200%201%203%203v13a2.5%202.5%200%200%200-2.5-2.5H3z'/%3E%3Cpath%20d='M21%205.5A1.5%201.5%200%200%200%2019.5%204H15a3%203%200%200%200-3%203v13a2.5%202.5%200%200%201%202.5-2.5H21z'/%3E%3C/svg%3E");}
.page-id-105595 .mmh-why-6 .dbp-card__inner>h3::before,
.page-id-105594 .mmh-why-6 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20%2014.5a2%202%200%200%201-2%202H8l-4%203.5V5.5a2%202%200%200%201%202-2h12a2%202%200%200%201%202%202z'/%3E%3Cpath%20d='M8%208.5h8'/%3E%3Cpath%20d='M8%2012h5'/%3E%3C/svg%3E");}

/* HUMAT/IMAT LP: 申込カードがcolumn flexアイテムとしてmin-content幅(354px)で
   親(323px)を超え、overflow:hiddenで右端が切れる問題の修正。
   .mmh-apply-card に既に適用済みの手法(width/max-width/min-width)と同じ。 */
.page-id-105595 .mmh-application-card,
.page-id-105594 .mmh-application-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;}
.page-id-105595 .mmh-application-notice,
.page-id-105594 .mmh-application-notice,
.page-id-105595 .mmh-application-form,
.page-id-105594 .mmh-application-form{min-width:0;box-sizing:border-box;max-width:100%;}
.page-id-105595 .mmh-application-form .wpcf7-form input,
.page-id-105594 .mmh-application-form .wpcf7-form input,
.page-id-105595 .mmh-application-form .wpcf7-form select,
.page-id-105594 .mmh-application-form .wpcf7-form select,
.page-id-105595 .mmh-application-form .wpcf7-form textarea,
.page-id-105594 .mmh-application-form .wpcf7-form textarea{min-width:0;}
/* === tutoring v9 追加 (2026-07-17 教材強化・定着確認・CTA刷新) === */
/* 教材: 左画像・右リスト */
.page-id-105331 .dbp-id-mtu-matwrap>.dbp-column-item{display:block;}
.page-id-105331 .mtu-fig-mat img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;border:1px solid #DCE6F0;border-radius:14px;background:#fff;display:block;}
.page-id-105331 .mtu-fig-mat{width:100%;display:block;}
.page-id-105331 .mtu-fig-mat{margin:0;}
/* 定着確認カード(4列/2列) */
.page-id-105331 .dbp-id-mtu-chk>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-chk .dbp-card>.dbp-card__inner{padding:20px 18px;}
.page-id-105331 .dbp-id-mtu-chk .dbp-card h3.wp-block-heading{font-size:16px!important;margin:0 0 6px!important;}
.page-id-105331 .dbp-id-mtu-chk .dbp-card p{font-size:14px;}
@media(max-width:640px){
  .page-id-105331 .dbp-id-mtu-chk .dbp-card h3.wp-block-heading{font-size:15.5px!important;}
}

/* ===== /med-students/ 子ページ共通コンポーネント (2026-07-17 plans実装) ここから =====
   /med-students/ 配下の子ページ全体(parent-pageid-105326)で再利用する。
   今後追加予定の life-support / italian-lessons / preparation-program /
   pricing / mentors / faq も、本文に同じクラスを置くだけで同一意匠になる。
   既存子4ページ(progression/tutoring/exams/oral-exam)は mds-* クラスも
   dbp/card も未使用のため、本セクションの追加による表示変更は発生しない。 */
.parent-pageid-105326,.parent-pageid-107847{--mds-navy:#123f66;--mds-navy2:#2a7fd4;--mds-teal:#3B82B6;--mds-ink:#245A8D;--mds-muted:#5b6b7f;--mds-line:#dce7f2;--mds-soft:#f3f8fd;--mds-accent:#3B82B6;--mds-accent-d:#145ba3;}

/* --- ヒーロー(core/html) ハブ105326と同一意匠。子ページでは H1 を内包する --- */
.parent-pageid-105326 .mds-hero,.parent-pageid-107847 .mds-hero{background:linear-gradient(135deg,var(--mds-navy) 0%,var(--mds-navy2) 100%);color:#fff;border-radius:12px;padding:36px 30px;margin:4px 0 40px;}
.parent-pageid-105326 .mds-hero__eyebrow,.parent-pageid-107847 .mds-hero__eyebrow{font-size:12px;letter-spacing:2px;opacity:.85;margin:0 0 10px;font-weight:600;}
.parent-pageid-105326 h1.mds-hero__title,.parent-pageid-107847 h1.mds-hero__title{font-size:26px;font-weight:700;line-height:1.5;margin:0 0 14px;color:#fff;background:none;border:none;padding:0;}
.parent-pageid-105326 h1.mds-hero__title::before,.parent-pageid-105326 h1.mds-hero__title::after,.parent-pageid-107847 h1.mds-hero__title::before,.parent-pageid-107847 h1.mds-hero__title::after{content:none;display:none;}
.parent-pageid-105326 .mds-hero__lead,.parent-pageid-107847 .mds-hero__lead{font-size:15px;line-height:1.9;margin:0 0 18px;opacity:.96;}
.parent-pageid-105326 .mds-hero__badges,.parent-pageid-107847 .mds-hero__badges{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;margin:0 0 22px;padding:0;list-style:none;}
.parent-pageid-105326 .mds-hero__badges li,.parent-pageid-107847 .mds-hero__badges li{display:flex;align-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:5px 14px;font-size:13px;line-height:1.5;}
.parent-pageid-105326 .mds-hero .mds-btnrow,.parent-pageid-107847 .mds-hero .mds-btnrow{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 0;}

/* --- ボタン(core/html内) --- */
.parent-pageid-105326 .mds-btn,.parent-pageid-107847 .mds-btn{display:inline-block;text-decoration:none;border-radius:8px;padding:13px 22px;font-size:15px;font-weight:700;line-height:1.4;text-align:center;transition:opacity .15s;}
.parent-pageid-105326 .mds-btn:hover,.parent-pageid-107847 .mds-btn:hover{opacity:.85;}
.parent-pageid-105326 .mds-btn--primary,.parent-pageid-107847 .mds-btn--primary{background:var(--mds-accent);color:#fff;border:1px solid var(--mds-accent-d);}
.parent-pageid-105326 .mds-btn--ghost,.parent-pageid-107847 .mds-btn--ghost{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.55);}

/* --- dbp/card 共通(見出し・本文) --- */
/* dbp-card は既定 width:320px のため、グリッド内では 100% に伸ばす */
.page-id-105326 .dbp-column-item,.parent-pageid-105326 .dbp-column-item,.parent-pageid-107847 .dbp-column-item{display:flex;}
.page-id-105326 .dbp-column-item>.dbp-card,.parent-pageid-105326 .dbp-column-item>.dbp-card,.parent-pageid-107847 .dbp-column-item>.dbp-card{width:100%;max-width:100%;min-width:0;}
.parent-pageid-105326 .dbp-card h3.wp-block-heading,.parent-pageid-107847 .dbp-card h3.wp-block-heading{color:var(--mds-navy)!important;font-size:17px!important;font-weight:700!important;line-height:1.5!important;margin:0 0 4px!important;}
.parent-pageid-105326 .dbp-card p,.parent-pageid-107847 .dbp-card p{font-size:14px;line-height:1.8;color:var(--mds-ink);}

/* --- 料金表示 --- */
.page-id-105326 .mds-price,.parent-pageid-105326 .mds-price,.parent-pageid-107847 .mds-price{font-size:34px!important;font-weight:700;color:var(--mds-navy);line-height:1.2;margin:0 0 6px!important;}
.page-id-105326 .mds-price--sm,.parent-pageid-105326 .mds-price--sm,.parent-pageid-107847 .mds-price--sm{font-size:26px!important;}
.page-id-105326 .mds-price__unit,.parent-pageid-105326 .mds-price__unit,.parent-pageid-107847 .mds-price__unit{font-size:15px;font-weight:600;color:var(--mds-muted);}

/* --- プランラベル(個別指導つき 等) --- */
.page-id-105326 .mds-plan-label,.parent-pageid-105326 .mds-plan-label,.parent-pageid-107847 .mds-plan-label{display:inline-block;background:var(--mds-navy);color:#fff!important;font-size:12px!important;font-weight:700!important;border-radius:4px;padding:3px 10px;margin:0 0 6px!important;line-height:1.6;}

/* --- プラン内容リスト --- */
.page-id-105326 ul.mds-plan-feats,.parent-pageid-105326 ul.mds-plan-feats,.parent-pageid-107847 ul.mds-plan-feats{list-style:none;margin:6px 0 12px;padding:0;}
.page-id-105326 ul.mds-plan-feats li,.parent-pageid-105326 ul.mds-plan-feats li,.parent-pageid-107847 ul.mds-plan-feats li{position:relative;padding:7px 0 7px 24px;font-size:14px;line-height:1.7;color:var(--mds-ink);border-bottom:1px solid var(--mds-line);margin:0;list-style:none;}
.page-id-105326 ul.mds-plan-feats li:last-child,.parent-pageid-105326 ul.mds-plan-feats li:last-child,.parent-pageid-107847 ul.mds-plan-feats li:last-child{border-bottom:none;}
.page-id-105326 ul.mds-plan-feats li::before,.parent-pageid-105326 ul.mds-plan-feats li::before,.parent-pageid-107847 ul.mds-plan-feats li::before{content:"";position:absolute;left:4px;top:14px;width:10px;height:6px;border-left:2px solid var(--mds-teal);border-bottom:2px solid var(--mds-teal);transform:rotate(-45deg);}
.page-id-105326 ul.mds-plan-feats li::marker,.parent-pageid-105326 ul.mds-plan-feats li::marker,.parent-pageid-107847 ul.mds-plan-feats li::marker{content:"";}

/* --- Premium(2枚目)強調 --- */
.parent-pageid-105326 .dbp-id-mds-plans .dbp-column-item:nth-child(2)>.dbp-card,.parent-pageid-107847 .dbp-id-mds-plans .dbp-column-item:nth-child(2)>.dbp-card{border:2px solid var(--mds-navy)!important;background:var(--mds-soft)!important;}

/* --- 比較表(core/table.mds-comptable) --- */
.parent-pageid-105326 .mds-comptable,.parent-pageid-107847 .mds-comptable{margin:10px 0 0;overflow-x:auto;}
.parent-pageid-105326 .mds-comptable table,.parent-pageid-107847 .mds-comptable table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px;}
.parent-pageid-105326 .mds-comptable thead th,.parent-pageid-107847 .mds-comptable thead th{background:var(--mds-navy);color:#fff;font-weight:700;padding:11px 12px;text-align:left;border:1px solid var(--mds-navy);}
.parent-pageid-105326 .mds-comptable tbody th,.parent-pageid-107847 .mds-comptable tbody th{background:var(--mds-soft);color:var(--mds-navy);font-weight:700;text-align:left;padding:11px 12px;border:1px solid var(--mds-line);width:26%;}
.parent-pageid-105326 .mds-comptable tbody td,.parent-pageid-107847 .mds-comptable tbody td{padding:11px 12px;border:1px solid var(--mds-line);color:var(--mds-ink);vertical-align:top;}
.parent-pageid-105326 .mds-comptable tbody td:last-child,.parent-pageid-107847 .mds-comptable tbody td:last-child{background:#eaf2fb;}
.parent-pageid-105326 .mds-comptable tbody tr:last-child td,.parent-pageid-107847 .mds-comptable tbody tr:last-child td{font-size:13px;line-height:1.7;}

/* --- 科目チップ --- */
.parent-pageid-105326 ul.mds-subjects,.parent-pageid-107847 ul.mds-subjects{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0;padding:0;list-style:none;}
.parent-pageid-105326 ul.mds-subjects li,.parent-pageid-107847 ul.mds-subjects li{background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:999px;padding:6px 15px;font-size:13px;color:var(--mds-navy);font-weight:600;list-style:none;margin:0;}
.parent-pageid-105326 ul.mds-subjects li::marker,.parent-pageid-107847 ul.mds-subjects li::marker{content:"";}

/* --- 注意書きリスト --- */
.page-id-105326 ul.mds-note-list,.parent-pageid-105326 ul.mds-note-list,.parent-pageid-107847 ul.mds-note-list{list-style:none;margin:12px 0;padding:0;}
.page-id-105326 ul.mds-note-list li,.parent-pageid-105326 ul.mds-note-list li,.parent-pageid-107847 ul.mds-note-list li{position:relative;padding:0 0 0 18px;font-size:13px;line-height:1.9;color:var(--mds-muted);margin:0;list-style:none;}
.page-id-105326 ul.mds-note-list li::before,.parent-pageid-105326 ul.mds-note-list li::before,.parent-pageid-107847 ul.mds-note-list li::before{content:"※";position:absolute;left:0;top:0;}
.page-id-105326 ul.mds-note-list li::marker,.parent-pageid-105326 ul.mds-note-list li::marker,.parent-pageid-107847 ul.mds-note-list li::marker{content:"";}
.parent-pageid-105326 .mds-note,.parent-pageid-107847 .mds-note{font-size:13px;color:var(--mds-muted);line-height:1.8;margin:10px 0 0;}

/* --- FAQ(rank-math/faq-block) 表示とFAQPage構造化データは同一属性から生成される --- */
.page-id-105326 #rank-math-faq,.parent-pageid-105326 #rank-math-faq,.parent-pageid-107847 #rank-math-faq{margin:10px 0 0;}
.page-id-105326 #rank-math-faq .rank-math-list-item,.parent-pageid-105326 #rank-math-faq .rank-math-list-item,.parent-pageid-107847 #rank-math-faq .rank-math-list-item{background:#fff;border:1px solid var(--mds-line);border-radius:10px;padding:16px 18px;margin:0 0 10px;}
.page-id-105326 #rank-math-faq .rank-math-question,.parent-pageid-105326 #rank-math-faq .rank-math-question,.parent-pageid-107847 #rank-math-faq .rank-math-question{font-size:15px!important;font-weight:700!important;color:var(--mds-navy)!important;line-height:1.6!important;margin:0!important;padding:0 0 0 26px!important;background:none!important;border:none!important;position:relative;}
.page-id-105326 #rank-math-faq .rank-math-question::before,.parent-pageid-105326 #rank-math-faq .rank-math-question::before,.parent-pageid-107847 #rank-math-faq .rank-math-question::before{content:"Q";position:absolute;left:0;top:2px;width:18px;height:18px;background:var(--mds-teal);color:#fff;border-radius:50%;font-size:11px;font-weight:700;text-align:center;line-height:18px;}
.page-id-105326 #rank-math-faq .rank-math-question::after,.parent-pageid-105326 #rank-math-faq .rank-math-question::after,.parent-pageid-107847 #rank-math-faq .rank-math-question::after{content:none!important;display:none!important;}
.page-id-105326 #rank-math-faq .rank-math-answer,.parent-pageid-105326 #rank-math-faq .rank-math-answer,.parent-pageid-107847 #rank-math-faq .rank-math-answer{font-size:14px;line-height:1.9;color:var(--mds-ink);margin:10px 0 0;padding:0 0 0 26px;}
.page-id-105326 #rank-math-faq .rank-math-answer p,.parent-pageid-105326 #rank-math-faq .rank-math-answer p,.parent-pageid-107847 #rank-math-faq .rank-math-answer p{margin:0;font-size:14px;line-height:1.9;}

/* --- CTAバンド(core/group.mds-cta-band + dbp/button) --- */
.parent-pageid-105326 .mds-cta-band,.parent-pageid-107847 .mds-cta-band{background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:12px;padding:28px 22px;margin:32px 0;text-align:center;}
.parent-pageid-105326 .mds-cta-band h3.wp-block-heading,.parent-pageid-107847 .mds-cta-band h3.wp-block-heading{font-size:18px!important;font-weight:700!important;color:var(--mds-navy)!important;margin:0 0 10px!important;background:none!important;border:none!important;padding:0!important;}
.parent-pageid-105326 .mds-cta-band h3.wp-block-heading::before,.parent-pageid-105326 .mds-cta-band h3.wp-block-heading::after,.parent-pageid-107847 .mds-cta-band h3.wp-block-heading::before,.parent-pageid-107847 .mds-cta-band h3.wp-block-heading::after{content:none!important;display:none!important;}
.parent-pageid-105326 .mds-cta-band p,.parent-pageid-107847 .mds-cta-band p{font-size:14px;line-height:1.8;margin:0 0 16px;color:var(--mds-ink);}
.parent-pageid-105326 .mds-cta-band .mds-btnrow,.parent-pageid-107847 .mds-cta-band .mds-btnrow{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center;margin:0;}
.parent-pageid-105326 .mds-cta-band .mds-btnrow .dbp-button,.parent-pageid-107847 .mds-cta-band .mds-btnrow .dbp-button{margin:0!important;}

/* --- スマホ --- */
@media(max-width:640px){
.parent-pageid-105326 .mds-hero,.parent-pageid-107847 .mds-hero{padding:26px 18px;}
.parent-pageid-105326 h1.mds-hero__title,.parent-pageid-107847 h1.mds-hero__title{font-size:21px;}
.parent-pageid-105326 .mds-hero .mds-btnrow .mds-btn,.parent-pageid-107847 .mds-hero .mds-btnrow .mds-btn{flex:1 1 100%;}
.parent-pageid-105326 .mds-price,.parent-pageid-107847 .mds-price{font-size:30px!important;}
.parent-pageid-105326 .mds-cta-band .mds-btnrow .dbp-button,.parent-pageid-107847 .mds-cta-band .mds-btnrow .dbp-button{width:100%;}
}

/* --- メンター写真(core/image .mds-mentor-photo) 円形・メディアから差替可能 --- */
.page-id-105326 .mds-mentor-photo,.parent-pageid-105326 .mds-mentor-photo,.parent-pageid-107847 .mds-mentor-photo{margin:0;display:flex;justify-content:center;}
.page-id-105326 .mds-mentor-photo img,.parent-pageid-105326 .mds-mentor-photo img,.parent-pageid-107847 .mds-mentor-photo img{width:200px;height:200px;object-fit:cover;border-radius:50%;border:4px solid var(--mds-soft);box-shadow:0 6px 18px rgba(31,39,51,.12);display:block;}
.parent-pageid-105326 .dbp-id-mds-mentor-photo,.parent-pageid-107847 .dbp-id-mds-mentor-photo{align-items:center;}
@media(max-width:640px){
.parent-pageid-105326 .mds-mentor-photo img,.parent-pageid-107847 .mds-mentor-photo img{width:150px;height:150px;}
}
/* ===== /med-students/ 子ページ共通コンポーネント ここまで ===== */
/* === tutoring v10 追加 (2026-07-17 成約LP: 吹き出し/授業5群/合格者の声/体験授業) === */
/* 3. このような方におすすめ: 人物の吹き出しカード */
.page-id-105331 .dbp-id-mtu-fitb{margin-bottom:14px;}
.page-id-105331 .dbp-id-mtu-fitb>.dbp-column-item{display:block;}
.page-id-105331 .dbp-id-mtu-fitb .mtu-bubble{width:100%;height:calc(100% - 34px);display:flex;align-items:center;}
.page-id-105331 .mtu-bubble{position:relative;background:#fff;border:1px solid #dbe4f0;border-radius:14px;padding:18px 16px;margin:0 0 34px!important;box-shadow:0 2px 10px rgba(30,58,92,.06);}
.page-id-105331 .mtu-bubble::before{content:"";position:absolute;left:24px;bottom:-9px;width:18px;height:18px;background:#fff;border-right:1px solid #dbe4f0;border-bottom:1px solid #dbe4f0;transform:rotate(45deg);}
.page-id-105331 .mtu-bubble::after{content:"";position:absolute;left:18px;bottom:-34px;width:28px;height:28px;border-radius:50%;background:#dbe6f4;}
.page-id-105331 .mtu-bubble-text{margin:0!important;font-size:15px!important;line-height:1.65;font-weight:600;color:#245A8D;}
.page-id-105331 .dbp-id-mtu-fit>.dbp-column-item{display:block;}
/* 9. 1回の授業: 縦長2画像(比率維持) */
.page-id-105331 .dbp-id-mtu-lessonimg{align-items:start;}
.page-id-105331 .dbp-id-mtu-lessonimg>.dbp-column-item{display:block;}
.page-id-105331 .dbp-id-mtu-lessonimg .mtu-fig{margin:0;display:block;}
.page-id-105331 .mtu-fig-lesson img{aspect-ratio:900/1200;}
.page-id-105331 .mtu-fig-solve img{aspect-ratio:900/1060;}
.page-id-105331 .mtu-fig-lesson img,.page-id-105331 .mtu-fig-solve img{width:100%;height:auto;object-fit:contain;border:1px solid #DCE6F0;border-radius:14px;background:#fff;display:block;}
/* 9. 授業5グループカード */
.page-id-105331 .dbp-id-mtu-lgroups>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-lgroups .dbp-card>.dbp-card__inner{padding:20px 15px;}
.page-id-105331 .dbp-id-mtu-lgroups .dbp-card h3.wp-block-heading{font-size:16px!important;margin:2px 0 10px!important;}
.page-id-105331 .dbp-id-mtu-lgroups .mtu-cardlist li{font-size:13.5px;}
/* 10. 週間学習計画(縦長) */
.page-id-105331 .mtu-fig-week{max-width:720px;margin-left:auto;margin-right:auto;}
.page-id-105331 .mtu-fig-week img{width:100%;height:auto;aspect-ratio:1240/1520;object-fit:contain;border:1px solid #DCE6F0;border-radius:14px;background:#fff;display:block;}
/* 15. 合格者の声 */
.page-id-105331 .dbp-id-mtu-voices>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-voices .dbp-card{border-top:3px solid #3B82B6!important;}
.page-id-105331 .mtu-vlabel{display:inline-block;background:#e8f0fa;color:#245A8D;font-size:12px!important;font-weight:700;padding:4px 11px;border-radius:12px;margin:0 0 12px!important;}
.page-id-105331 .mtu-vquote{font-size:15px!important;line-height:1.85;color:#245A8D;margin:0 0 16px!important;}
.page-id-105331 .mtu-vname{font-weight:700;color:#245A8D;font-size:15px!important;margin:0 0 2px!important;}
.page-id-105331 .mtu-vach{font-size:13px!important;color:#6e7a8a;margin:0!important;}
/* 18. 体験授業 */
.page-id-105331 .mtu-trialbox{text-align:center;}
.page-id-105331 .mtu-trialbox h2.msm-hero-h2{color:#245A8D!important;text-align:center;font-size:29px!important;margin:0 0 14px!important;}
.page-id-105331 .mtu-trial-lead{text-align:center;font-size:16.5px!important;color:#4a5a6e!important;max-width:820px;margin:0 auto 30px!important;}
.page-id-105331 .dbp-id-mtu-trialcards{margin-bottom:28px;}
.page-id-105331 .dbp-id-mtu-trialcards>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-trialcards .dbp-card{text-align:left;}
.page-id-105331 .dbp-id-mtu-trialcards .dbp-card>.dbp-card__inner{padding:20px 18px;}
.page-id-105331 .dbp-id-mtu-trialcards .dbp-card h3.wp-block-heading{font-size:16px!important;margin:0 0 6px!important;}
.page-id-105331 .dbp-id-mtu-trialcards .dbp-card p{font-size:14px;}
.page-id-105331 .mtu-trialbox .mtu-trialprice{text-align:center;}
.page-id-105331 .mtu-trialbox .dbp-button-link.is-style-fill{background:#3B82B6!important;color:#fff!important;}
.page-id-105331 .mtu-trialbox .mtu-cta-note{color:#5a6a7e!important;text-align:center;}
@media(max-width:640px){
  .page-id-105331 .mtu-trialbox h2.msm-hero-h2{font-size:23px!important;}
  .page-id-105331 .mtu-bubble-text{font-size:14px!important;}
}
/* === tutoring v10.1 教材: 実物テキストページ(縦長) + ラインナップ === */
.page-id-105331 .mtu-fig-mat img{aspect-ratio:1130/1420!important;}
.page-id-105331 .mtu-fig-mat2{max-width:620px;margin-left:auto;margin-right:auto;}
.page-id-105331 .mtu-fig-mat2 img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;border:1px solid #DCE6F0;border-radius:14px;background:#fff;display:block;}
/* === tutoring v11 (2026-07-17 体験授業=授業風景+流れ / おすすめCTA) === */
.page-id-105331 .mtu-fitcta{text-align:center;}
.page-id-105331 .mtu-fitcta .mtu-supp{text-align:center;margin:0 0 16px!important;}
/* 体験授業: 左=授業風景 / 右=流れ */
.page-id-105331 .mtu-trialbox{text-align:left;}
.page-id-105331 .mtu-trial-lead{text-align:left;font-size:16.5px!important;color:#3f4f63!important;max-width:960px;margin:0 auto 14px!important;}
.page-id-105331 .dbp-id-mtu-trialwrap{margin-top:30px;align-items:center;}
.page-id-105331 .dbp-id-mtu-trialwrap>.dbp-column-item{display:block;}
.page-id-105331 .mtu-fig-trial{margin:0;display:block;}
.page-id-105331 .mtu-fig-trial img{width:100%;height:auto;aspect-ratio:1000/820;object-fit:contain;border:1px solid #DCE6F0;border-radius:14px;background:#fff;display:block;}
.page-id-105331 .dbp-id-mtu-trialwrap h3.wp-block-heading{margin-top:0!important;font-size:20px!important;}
.page-id-105331 .dbp-id-mtu-trialwrap .mtu-trialprice{text-align:left;margin:22px 0 14px!important;}
.page-id-105331 .mtu-trialbox .dbp-id-mtu-trialflow li{font-size:16px;}
@media(max-width:781px){
  .page-id-105331 .dbp-id-mtu-trialwrap .mtu-trialprice{text-align:center;}
  .page-id-105331 .dbp-id-mtu-trialwrap h3.wp-block-heading{margin-top:24px!important;}
}

/* ===== med-students CTA/余白 強化 (2026-07-17) ここから =====
   ボタンのCTA性（面積・コントラスト・押下感）とカード間余白を上げる。
   既存 mds-* / dbp のクラスに対する調整のみで、新しい体系は作らない。 */
.page-id-105326 .mds-btn,.parent-pageid-105326 .mds-btn,.parent-pageid-107847 .mds-btn{padding:15px 26px;font-size:15.5px;letter-spacing:.02em;}
.page-id-105326 .mds-btn--primary,.parent-pageid-105326 .mds-btn--primary,.parent-pageid-107847 .mds-btn--primary{background:#fff;color:var(--mds-accent);border:2px solid #fff;box-shadow:0 6px 18px rgba(6,32,58,.22);}
.page-id-105326 .mds-btn--primary:hover,.parent-pageid-105326 .mds-btn--primary:hover,.parent-pageid-107847 .mds-btn--primary:hover{opacity:1;transform:translateY(-2px);box-shadow:0 10px 24px rgba(6,32,58,.3);}
.page-id-105326 .mds-btn--ghost,.parent-pageid-105326 .mds-btn--ghost,.parent-pageid-107847 .mds-btn--ghost{border-width:2px;}
.page-id-105326 .mds-btn--ghost:hover,.parent-pageid-105326 .mds-btn--ghost:hover,.parent-pageid-107847 .mds-btn--ghost:hover{opacity:1;background:rgba(255,255,255,.22);transform:translateY(-2px);}
/* 本文中の塗りボタン(dbp)もCTAとして強調 */
.page-id-105326 .dbp-button-link.is-style-fill,.parent-pageid-105326 .dbp-button-link.is-style-fill,.parent-pageid-107847 .dbp-button-link.is-style-fill{padding:15px 28px!important;font-weight:700!important;border-radius:8px!important;box-shadow:0 6px 18px rgba(29,118,204,.3);transition:transform .15s,box-shadow .15s;}
.page-id-105326 .dbp-button-link.is-style-fill:hover,.parent-pageid-105326 .dbp-button-link.is-style-fill:hover,.parent-pageid-107847 .dbp-button-link.is-style-fill:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(29,118,204,.38);}
/* カード: 内側余白と間隔、境界を明るく */
.page-id-105326 .dbp-column.l-grid,.parent-pageid-105326 .dbp-column.l-grid,.parent-pageid-107847 .dbp-column.l-grid{gap:26px!important;}
.page-id-105326 .dbp-card,.parent-pageid-105326 .dbp-card,.parent-pageid-107847 .dbp-card{border:1px solid var(--mds-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 2px 10px rgba(18,63,102,.06);}
.page-id-105326 .dbp-card>.dbp-card__inner,.parent-pageid-105326 .dbp-card>.dbp-card__inner,.parent-pageid-107847 .dbp-card>.dbp-card__inner{padding:24px 22px!important;}
.page-id-105326 .dbp-card p,.parent-pageid-105326 .dbp-card p,.parent-pageid-107847 .dbp-card p{margin-bottom:0;}
@media(max-width:640px){
.page-id-105326 .dbp-column.l-grid,.parent-pageid-105326 .dbp-column.l-grid,.parent-pageid-107847 .dbp-column.l-grid{gap:18px!important;}
.page-id-105326 .dbp-card>.dbp-card__inner,.parent-pageid-105326 .dbp-card>.dbp-card__inner,.parent-pageid-107847 .dbp-card>.dbp-card__inner{padding:20px 18px!important;}
.page-id-105326 .dbp-button-link.is-style-fill,.parent-pageid-105326 .dbp-button-link.is-style-fill,.parent-pageid-107847 .dbp-button-link.is-style-fill{width:100%;box-sizing:border-box;}
}
/* ===== med-students CTA/余白 強化 ここまで ===== */


/* ===== UCBM (page-id-105596) — HUMAT(105595)体系を複製 ===== */
/* ============================================================
   HUMAT模試 専用LP (page-id-105596) — /moshi/ヒーロー体系を子ページへ適用
   ============================================================ */
.page-id-105596 p.mmh-kicker{font-size:.8rem;font-weight:800;letter-spacing:.12em;color:#245A8D;margin:0 0 8px!important;}
.page-id-105596 :is(h1,h2).wp-block-heading.mmh-h2-hero{border:none!important;background:none!important;padding:0!important;margin:0 0 14px!important;font-size:30px!important;line-height:1.45!important;font-weight:800!important;color:#245A8D!important;text-align:left!important;}
.page-id-105596 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{content:none!important;display:none!important;}
.page-id-105596 .mmh-hero .dbp-section__inner{padding-top:56px;padding-bottom:56px;}
.page-id-105596 .mmh-hero .dbp-id-herohumat{align-items:center;}
.page-id-105596 p.mmh-chips{color:#245A8D;font-weight:600;margin:14px 0 4px!important;}
/* ヒーローCTA(ショートコード出力のwp-block-buttons) */
.page-id-105596 .mmh-hero .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 2px;}
.page-id-105596 .mmh-hero .wp-block-buttons .dbp-button{margin:0;}
/* 監修クレジット帯 */
.page-id-105596 .mmh-credit{background:#F8FAFC;border:1px solid #DCE6F0;border-radius:12px;padding:10px 16px;margin-top:16px;gap:0 14px;align-items:center;}
.page-id-105596 .mmh-credit .wp-block-column{margin:0!important;}
.page-id-105596 .mmh-credit .wp-block-column:first-child{flex:0 0 64px!important;}
.page-id-105596 .mmh-credit figure{margin:0!important;}
.page-id-105596 .mmh-credit img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;}
.page-id-105596 .mmh-credit p{margin:0!important;color:#5B6778;font-size:13.5px;line-height:1.7;}
.page-id-105596 .mmh-credit .mmh-nb{white-space:nowrap;}
/* ヒーロービジュアル(問題画面画像=フラッシュ表示) */
.page-id-105596 .mmh-hero-visual{padding:0!important;border:1px solid #DCE6F0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(15,59,120,.10);}
.page-id-105596 .mmh-hero-visual>.dbp-card__inner{padding:0!important;display:block;gap:0!important;}
.page-id-105596 .mmh-qpaper{margin:0!important;}
.page-id-105596 .mmh-qpaper img{width:100%;max-width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;}
.page-id-105596 p.mmh-hero-visual-cap{margin:0!important;padding:12px 16px 14px;text-align:center;border-top:1px solid #F8FAFC;color:#5B6778;background:#fff;font-size:13px;}
/* サブ見出し文 */
.page-id-105596 p.mmh-sub{color:#5B6778;font-size:15.5px;line-height:1.85;margin:0 0 22px!important;}
/* 受験料カード(mmh-apply内、フォームはmn_mock_apply側CSSが担当) */
.page-id-105596 .mmh-apply-card{border:1px solid #DCE6F0;box-shadow:0 6px 20px rgba(27,108,183,.1);}
.page-id-105596 .mmh-apply-card>.dbp-card__inner{padding:28px;}
@media(max-width:900px){.page-id-105596 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:24px!important;}.page-id-105596 .mmh-hero .dbp-section__inner{padding-top:40px;padding-bottom:40px;}}
@media(max-width:640px){.page-id-105596 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:22px!important;}.page-id-105596 .mmh-hero .wp-block-buttons{gap:10px;}.page-id-105596 .mmh-hero .wp-block-buttons .dbp-button{width:100%;}.page-id-105596 .mmh-hero .wp-block-buttons .dbp-button-link{width:100%;text-align:center;box-sizing:border-box;}.page-id-105596 .mmh-credit img{width:48px;height:48px;}.page-id-105596 .mmh-credit .wp-block-column:first-child{flex:0 0 52px!important;}.page-id-105596 .mmh-apply-card>.dbp-card__inner{padding:20px;}}
/* HUMAT 受験後に確認できるもの — 実物レポート画像(media-text) */
.page-id-105596 .mmh-after-mt{margin:0 0 26px;gap:0 34px;align-items:center;}
.page-id-105596 .mmh-after-mt .wp-block-media-text__media img{border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 8px 22px rgba(15,59,120,.10);display:block;width:100%;height:auto;}
.page-id-105596 .mmh-after-mt .wp-block-media-text__content h3{margin:0 0 10px;font-size:19px;color:#245A8D;font-weight:800;}
.page-id-105596 .mmh-after-mt .wp-block-media-text__content p{margin:0 0 10px;color:#5B6778;line-height:1.85;font-size:15px;}
@media(max-width:781px){.page-id-105596 .mmh-after-mt{gap:16px 0;}.page-id-105596 .mmh-after-mt .wp-block-media-text__content{padding:14px 2px 0!important;}}
.page-id-105596 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media{grid-column:2;grid-row:1;}
.page-id-105596 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:1;}
@media(max-width:781px){.page-id-105596 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media, .page-id-105596 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;}}
/* ============================================================
   HUMAT LP v2 改修 (2026-07-16)
   ============================================================ */
/* 選ばれる理由 = 4アイコンカード(2x2) */
.page-id-105596 .dbp-id-why .dbp-column-item{display:flex;}
.page-id-105596 .mmh-why-card{width:100%!important;border:1px solid #DCE6F0;border-radius:16px;background:linear-gradient(180deg,#fbfdff 0%,#f4f9fe 100%);box-shadow:0 6px 20px rgba(27,108,183,.07);transition:box-shadow .2s ease,transform .2s ease;}
.page-id-105596 .mmh-why-card:hover{box-shadow:0 12px 30px rgba(27,108,183,.13);transform:translateY(-2px);}
.page-id-105596 .mmh-why-card>.dbp-card__inner{padding:30px 28px;gap:0;}
.page-id-105596 .mmh-why-card .dbp-card__inner>h3{margin:0 0 8px!important;font-size:19px;font-weight:800;color:#245A8D;line-height:1.5;}
.page-id-105596 .mmh-why-card .dbp-card__inner>h3::before{content:"";display:block;width:54px;height:54px;margin:0 0 15px;border-radius:15px;background-color:#eaf3fc;background-repeat:no-repeat;background-position:center;background-size:30px 30px;}
.page-id-105596 .mmh-why-card p{margin:0;color:#5B6778;font-size:15px;line-height:1.85;}
@media(max-width:640px){.page-id-105596 .mmh-why-card>.dbp-card__inner{padding:22px 20px;}}
/* 料金 → お申し込み セクション間に余白 */
.page-id-105596 #application{margin-top:56px!important;padding-top:30px!important;border-top:1px solid #e6eef6!important;}
@media(max-width:640px){.page-id-105596 #application{margin-top:44px!important;padding-top:24px!important;}}
/* 最終CTAボタンを中央揃え(本文中央のため) */
.page-id-105596 .mmh-final .mmh-cta-row{justify-content:center;}
.page-id-105596 .mmh-why-1 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205h10'/%3E%3Cpath%20d='M4%2010h10'/%3E%3Cpath%20d='M4%2015h6'/%3E%3Cpath%20d='m14.5%2015%202%202%204-4'/%3E%3C/svg%3E");}
.page-id-105596 .mmh-why-2 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='8.5'/%3E%3Cpath%20d='M12%207.5V12l3%202'/%3E%3C/svg%3E");}
.page-id-105596 .mmh-why-3 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%2020V11'/%3E%3Cpath%20d='M10%2020V5'/%3E%3Cpath%20d='M16%2020v-6'/%3E%3Cpath%20d='M21%2020H3'/%3E%3C/svg%3E");}
.page-id-105596 .mmh-why-4 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='9'%20r='5'/%3E%3Cpath%20d='m8.5%2013.2-1.5%207.8%205-2.8%205%202.8-1.5-7.8'/%3E%3C/svg%3E");}
/* HUMAT LP: ページ内の全ての表を th/td すべて中央揃えに統一 (2026-07-16)
   対象=日程表(.mms-mock-table) / 試験形式3表 / おすすめ表(core table)。page-id-105596 限定。 */
.page-id-105596 .wp-block-table th, .page-id-105596 .wp-block-table td, .page-id-105596 .mn-moshi th, .page-id-105596 .mn-moshi td, .page-id-105596 .mms-mock-table th, .page-id-105596 .mms-mock-table td{text-align:center!important;vertical-align:middle!important;}
/* IMAT LP: 選ばれる理由 追加アイコン(5=復習/6=解説・アドバイス) */
.page-id-105596 .mmh-why-5 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%205.5A1.5%201.5%200%200%201%204.5%204H9a3%203%200%200%201%203%203v13a2.5%202.5%200%200%200-2.5-2.5H3z'/%3E%3Cpath%20d='M21%205.5A1.5%201.5%200%200%200%2019.5%204H15a3%203%200%200%200-3%203v13a2.5%202.5%200%200%201%202.5-2.5H21z'/%3E%3C/svg%3E");}
.page-id-105596 .mmh-why-6 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20%2014.5a2%202%200%200%201-2%202H8l-4%203.5V5.5a2%202%200%200%201%202-2h12a2%202%200%200%201%202%202z'/%3E%3Cpath%20d='M8%208.5h8'/%3E%3Cpath%20d='M8%2012h5'/%3E%3C/svg%3E");}
/* HUMAT/IMAT LP: 申込カードがcolumn flexアイテムとしてmin-content幅(354px)で
   親(323px)を超え、overflow:hiddenで右端が切れる問題の修正。
   .mmh-apply-card に既に適用済みの手法(width/max-width/min-width)と同じ。 */
.page-id-105596 .mmh-application-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;}
.page-id-105596 .mmh-application-notice, .page-id-105596 .mmh-application-form{min-width:0;box-sizing:border-box;max-width:100%;}
.page-id-105596 .mmh-application-form .wpcf7-form input, .page-id-105596 .mmh-application-form .wpcf7-form select, .page-id-105596 .mmh-application-form .wpcf7-form textarea{min-width:0;}


/* ===== UniCatt (page-id-105598) — HUMAT(105595)体系を複製 ===== */
/* ============================================================
   HUMAT模試 専用LP (page-id-105598) — /moshi/ヒーロー体系を子ページへ適用
   ============================================================ */
.page-id-105598 p.mmh-kicker{font-size:.8rem;font-weight:800;letter-spacing:.12em;color:#245A8D;margin:0 0 8px!important;}
.page-id-105598 :is(h1,h2).wp-block-heading.mmh-h2-hero{border:none!important;background:none!important;padding:0!important;margin:0 0 14px!important;font-size:30px!important;line-height:1.45!important;font-weight:800!important;color:#245A8D!important;text-align:left!important;}
.page-id-105598 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{content:none!important;display:none!important;}
.page-id-105598 .mmh-hero .dbp-section__inner{padding-top:56px;padding-bottom:56px;}
.page-id-105598 .mmh-hero .dbp-id-herohumat{align-items:center;}
.page-id-105598 p.mmh-chips{color:#245A8D;font-weight:600;margin:14px 0 4px!important;}
/* ヒーローCTA(ショートコード出力のwp-block-buttons) */
.page-id-105598 .mmh-hero .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 2px;}
.page-id-105598 .mmh-hero .wp-block-buttons .dbp-button{margin:0;}
/* 監修クレジット帯 */
.page-id-105598 .mmh-credit{background:#F8FAFC;border:1px solid #DCE6F0;border-radius:12px;padding:10px 16px;margin-top:16px;gap:0 14px;align-items:center;}
.page-id-105598 .mmh-credit .wp-block-column{margin:0!important;}
.page-id-105598 .mmh-credit .wp-block-column:first-child{flex:0 0 64px!important;}
.page-id-105598 .mmh-credit figure{margin:0!important;}
.page-id-105598 .mmh-credit img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;}
.page-id-105598 .mmh-credit p{margin:0!important;color:#5B6778;font-size:13.5px;line-height:1.7;}
.page-id-105598 .mmh-credit .mmh-nb{white-space:nowrap;}
/* ヒーロービジュアル(問題画面画像=フラッシュ表示) */
.page-id-105598 .mmh-hero-visual{padding:0!important;border:1px solid #DCE6F0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(15,59,120,.10);}
.page-id-105598 .mmh-hero-visual>.dbp-card__inner{padding:0!important;display:block;gap:0!important;}
.page-id-105598 .mmh-qpaper{margin:0!important;}
.page-id-105598 .mmh-qpaper img{width:100%;max-width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;}
.page-id-105598 p.mmh-hero-visual-cap{margin:0!important;padding:12px 16px 14px;text-align:center;border-top:1px solid #F8FAFC;color:#5B6778;background:#fff;font-size:13px;}
/* サブ見出し文 */
.page-id-105598 p.mmh-sub{color:#5B6778;font-size:15.5px;line-height:1.85;margin:0 0 22px!important;}
/* 受験料カード(mmh-apply内、フォームはmn_mock_apply側CSSが担当) */
.page-id-105598 .mmh-apply-card{border:1px solid #DCE6F0;box-shadow:0 6px 20px rgba(27,108,183,.1);}
.page-id-105598 .mmh-apply-card>.dbp-card__inner{padding:28px;}
@media(max-width:900px){.page-id-105598 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:24px!important;}.page-id-105598 .mmh-hero .dbp-section__inner{padding-top:40px;padding-bottom:40px;}}
@media(max-width:640px){.page-id-105598 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:22px!important;}.page-id-105598 .mmh-hero .wp-block-buttons{gap:10px;}.page-id-105598 .mmh-hero .wp-block-buttons .dbp-button{width:100%;}.page-id-105598 .mmh-hero .wp-block-buttons .dbp-button-link{width:100%;text-align:center;box-sizing:border-box;}.page-id-105598 .mmh-credit img{width:48px;height:48px;}.page-id-105598 .mmh-credit .wp-block-column:first-child{flex:0 0 52px!important;}.page-id-105598 .mmh-apply-card>.dbp-card__inner{padding:20px;}}
/* HUMAT 受験後に確認できるもの — 実物レポート画像(media-text) */
.page-id-105598 .mmh-after-mt{margin:0 0 26px;gap:0 34px;align-items:center;}
.page-id-105598 .mmh-after-mt .wp-block-media-text__media img{border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 8px 22px rgba(15,59,120,.10);display:block;width:100%;height:auto;}
.page-id-105598 .mmh-after-mt .wp-block-media-text__content h3{margin:0 0 10px;font-size:19px;color:#245A8D;font-weight:800;}
.page-id-105598 .mmh-after-mt .wp-block-media-text__content p{margin:0 0 10px;color:#5B6778;line-height:1.85;font-size:15px;}
@media(max-width:781px){.page-id-105598 .mmh-after-mt{gap:16px 0;}.page-id-105598 .mmh-after-mt .wp-block-media-text__content{padding:14px 2px 0!important;}}
.page-id-105598 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media{grid-column:2;grid-row:1;}
.page-id-105598 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:1;}
@media(max-width:781px){.page-id-105598 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media, .page-id-105598 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;}}
/* ============================================================
   HUMAT LP v2 改修 (2026-07-16)
   ============================================================ */
/* 選ばれる理由 = 4アイコンカード(2x2) */
.page-id-105598 .dbp-id-why .dbp-column-item{display:flex;}
.page-id-105598 .mmh-why-card{width:100%!important;border:1px solid #DCE6F0;border-radius:16px;background:linear-gradient(180deg,#fbfdff 0%,#f4f9fe 100%);box-shadow:0 6px 20px rgba(27,108,183,.07);transition:box-shadow .2s ease,transform .2s ease;}
.page-id-105598 .mmh-why-card:hover{box-shadow:0 12px 30px rgba(27,108,183,.13);transform:translateY(-2px);}
.page-id-105598 .mmh-why-card>.dbp-card__inner{padding:30px 28px;gap:0;}
.page-id-105598 .mmh-why-card .dbp-card__inner>h3{margin:0 0 8px!important;font-size:19px;font-weight:800;color:#245A8D;line-height:1.5;}
.page-id-105598 .mmh-why-card .dbp-card__inner>h3::before{content:"";display:block;width:54px;height:54px;margin:0 0 15px;border-radius:15px;background-color:#eaf3fc;background-repeat:no-repeat;background-position:center;background-size:30px 30px;}
.page-id-105598 .mmh-why-card p{margin:0;color:#5B6778;font-size:15px;line-height:1.85;}
@media(max-width:640px){.page-id-105598 .mmh-why-card>.dbp-card__inner{padding:22px 20px;}}
/* 料金 → お申し込み セクション間に余白 */
.page-id-105598 #application{margin-top:56px!important;padding-top:30px!important;border-top:1px solid #e6eef6!important;}
@media(max-width:640px){.page-id-105598 #application{margin-top:44px!important;padding-top:24px!important;}}
/* 最終CTAボタンを中央揃え(本文中央のため) */
.page-id-105598 .mmh-final .mmh-cta-row{justify-content:center;}
.page-id-105598 .mmh-why-1 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205h10'/%3E%3Cpath%20d='M4%2010h10'/%3E%3Cpath%20d='M4%2015h6'/%3E%3Cpath%20d='m14.5%2015%202%202%204-4'/%3E%3C/svg%3E");}
.page-id-105598 .mmh-why-2 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='8.5'/%3E%3Cpath%20d='M12%207.5V12l3%202'/%3E%3C/svg%3E");}
.page-id-105598 .mmh-why-3 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%2020V11'/%3E%3Cpath%20d='M10%2020V5'/%3E%3Cpath%20d='M16%2020v-6'/%3E%3Cpath%20d='M21%2020H3'/%3E%3C/svg%3E");}
.page-id-105598 .mmh-why-4 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='9'%20r='5'/%3E%3Cpath%20d='m8.5%2013.2-1.5%207.8%205-2.8%205%202.8-1.5-7.8'/%3E%3C/svg%3E");}
/* HUMAT LP: ページ内の全ての表を th/td すべて中央揃えに統一 (2026-07-16)
   対象=日程表(.mms-mock-table) / 試験形式3表 / おすすめ表(core table)。page-id-105598 限定。 */
.page-id-105598 .wp-block-table th, .page-id-105598 .wp-block-table td, .page-id-105598 .mn-moshi th, .page-id-105598 .mn-moshi td, .page-id-105598 .mms-mock-table th, .page-id-105598 .mms-mock-table td{text-align:center!important;vertical-align:middle!important;}
/* IMAT LP: 選ばれる理由 追加アイコン(5=復習/6=解説・アドバイス) */
.page-id-105598 .mmh-why-5 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%205.5A1.5%201.5%200%200%201%204.5%204H9a3%203%200%200%201%203%203v13a2.5%202.5%200%200%200-2.5-2.5H3z'/%3E%3Cpath%20d='M21%205.5A1.5%201.5%200%200%200%2019.5%204H15a3%203%200%200%200-3%203v13a2.5%202.5%200%200%201%202.5-2.5H21z'/%3E%3C/svg%3E");}
.page-id-105598 .mmh-why-6 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20%2014.5a2%202%200%200%201-2%202H8l-4%203.5V5.5a2%202%200%200%201%202-2h12a2%202%200%200%201%202%202z'/%3E%3Cpath%20d='M8%208.5h8'/%3E%3Cpath%20d='M8%2012h5'/%3E%3C/svg%3E");}
/* HUMAT/IMAT LP: 申込カードがcolumn flexアイテムとしてmin-content幅(354px)で
   親(323px)を超え、overflow:hiddenで右端が切れる問題の修正。
   .mmh-apply-card に既に適用済みの手法(width/max-width/min-width)と同じ。 */
.page-id-105598 .mmh-application-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;}
.page-id-105598 .mmh-application-notice, .page-id-105598 .mmh-application-form{min-width:0;box-sizing:border-box;max-width:100%;}
.page-id-105598 .mmh-application-form .wpcf7-form input, .page-id-105598 .mmh-application-form .wpcf7-form select, .page-id-105598 .mmh-application-form .wpcf7-form textarea{min-width:0;}
/* === MN-TUTORING-V11-START === */
/* ═══════════════════════════════════════════════════════════════
   tutoring v11 (2026-07-18) リスト/タグ/吹き出し/ステップ/アイコンカード
   アイコンフォント(Google Symbols/Font Awesome)に一切依存しない実装。
   チェック・矢印=CSS描画、カードアイコン=data-URI SVG(mask)。
   ═══════════════════════════════════════════════════════════════ */

/* ── 共通リスト：CSS描画チェック（border回転・フォント非依存） ── */
.page-id-105331 .mn-tutoring-list{list-style:none!important;padding-left:0!important;margin:0 0 1em!important;}
.page-id-105331 .mn-tutoring-list>li{position:relative;padding-left:1.75em;margin:0 0 .55em;line-height:1.75;list-style:none!important;}
.page-id-105331 .mn-tutoring-list>li:last-child{margin-bottom:0;}

/* チェック型：丸背景＋CSSで描いたレ点 */
.page-id-105331 .mn-tutoring-list-check>li::before{
	content:"";position:absolute;left:0;top:.42em;
	width:1.15em;height:1.15em;border-radius:50%;
	background:#e8effa;box-sizing:border-box;
}
.page-id-105331 .mn-tutoring-list-check>li::after{
	content:"";position:absolute;left:.4em;top:.68em;
	width:.28em;height:.52em;
	border-right:2px solid #3B82B6;border-bottom:2px solid #3B82B6;
	transform:rotate(45deg);box-sizing:border-box;
}
/* ドット型 */
.page-id-105331 .mn-tutoring-list-dot>li::before{
	content:"";position:absolute;left:.3em;top:.72em;
	width:.45em;height:.45em;border-radius:50%;background:#3B82B6;
}
/* 注意型：控えめな横棒 */
.page-id-105331 .mn-tutoring-list-note>li{padding-left:1.4em;}
.page-id-105331 .mn-tutoring-list-note>li::before{
	content:"";position:absolute;left:.15em;top:.86em;
	width:.7em;height:2px;background:#9aa7b8;border-radius:2px;
}
/* 内部リンク一覧はドット型に統一 */
.page-id-105331 .mtu-linklist{list-style:none!important;padding-left:0!important;}
.page-id-105331 .mtu-linklist>li{position:relative;padding-left:1.1em;margin-bottom:.5em;list-style:none!important;}
.page-id-105331 .mtu-linklist>li::before{
	content:"";position:absolute;left:.1em;top:.72em;
	width:.4em;height:.4em;border-radius:50%;background:#8aa0c0;
}

/* ── 1. ファーストビュー直下3項目：タグ／ピル型 ── */
.page-id-105331 .mn-tutoring-tags{
	list-style:none!important;padding-left:0!important;
	display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px!important;
}
.page-id-105331 .mn-tutoring-tags>li{
	position:relative;list-style:none!important;margin:0;
	display:inline-flex;align-items:center;
	padding:7px 14px 7px 30px;
	background:#EEF6FC;border:1px solid #d2ddef;border-radius:999px;
	font-size:13.5px;line-height:1.5;color:#23385c;font-weight:600;
	white-space:normal;                /* 文字を途中で切らない */
	max-width:100%;box-sizing:border-box;
}
.page-id-105331 .mn-tutoring-tags>li::before{
	content:"";position:absolute;left:9px;top:50%;
	width:14px;height:14px;margin-top:-7px;border-radius:50%;
	background:#3B82B6;box-sizing:border-box;
}
.page-id-105331 .mn-tutoring-tags>li::after{
	content:"";position:absolute;left:13.6px;top:50%;
	width:3.6px;height:7px;margin-top:-4.8px;
	border-right:2px solid #fff;border-bottom:2px solid #fff;
	transform:rotate(45deg);box-sizing:border-box;
}

/* ── 3. このような方におすすめ：吹き出し型 ── */
.page-id-105331 .dbp-id-mtu-fitb>.dbp-column-item{display:flex;}
.page-id-105331 .mn-tutoring-bubble{
	position:relative;width:100%;
	background:#fff;border:1px solid #DCE6F0;border-left:4px solid #3B82B6;
	border-radius:12px;padding:16px 18px 16px 46px;
	box-shadow:0 1px 3px rgba(23,45,80,.05);
	display:flex;align-items:center;
}
/* 吹き出しのしっぽ */
.page-id-105331 .mn-tutoring-bubble::after{
	content:"";position:absolute;left:26px;bottom:-9px;
	width:16px;height:16px;background:#fff;
	border-right:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
	transform:rotate(45deg);
}
/* 悩みを表す控えめなアイコン（CSS描画の吹き出しマーク） */
.page-id-105331 .mn-tutoring-bubble::before{
	content:"";position:absolute;left:16px;top:50%;margin-top:-7px;
	width:18px;height:14px;border-radius:4px;
	background:#e8effa;border:1.5px solid #b7c8e4;box-sizing:border-box;
}
.page-id-105331 .mn-tutoring-bubble .mtu-bubble-text{
	margin:0!important;font-size:15px;line-height:1.7;color:#245A8D;font-weight:600;
}

/* ── 4. 対応する入試：下線付きテキストボタン（矢印はCSS） ── */
.page-id-105331 .mn-tutoring-text-link{
	display:inline-flex;align-items:center;gap:6px;
	text-decoration:none!important;
	color:#245A8D!important;font-weight:700;font-size:14.5px;
	padding-bottom:4px;border-bottom:1.5px solid #b9cae6;
	transition:color .18s ease,border-color .18s ease;
}
.page-id-105331 .mn-tutoring-text-link::after{
	content:"→";display:inline-block;font-size:1.05em;line-height:1;
	transition:transform .18s ease;
}
.page-id-105331 .mn-tutoring-text-link:hover{color:#245A8D!important;border-bottom-color:#3B82B6;}
.page-id-105331 .mn-tutoring-text-link:hover::after{transform:translateX(3px);}
/* 3カードでリンク位置を揃える */
.page-id-105331 .dbp-id-mtu-exams>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-exams .dbp-card{width:100%;display:flex;}
.page-id-105331 .dbp-id-mtu-exams .dbp-card__inner{display:flex;flex-direction:column;width:100%;}
.page-id-105331 .dbp-id-mtu-exams .msm-nav-link{margin-top:auto!important;padding-top:10px;}

/* ── 5. 1回の授業で行うこと：STEP 01〜05 ── */
.page-id-105331 .dbp-id-mtu-lgroups>.dbp-column-item{display:flex;position:relative;}
.page-id-105331 .dbp-id-mtu-lgroups .dbp-card{width:100%;}
.page-id-105331 .mn-tutoring-step-label{
	display:inline-block;margin:0 0 10px!important;
	padding:4px 10px;border-radius:5px;
	background:#3B82B6;color:#fff!important;
	font-size:11.5px!important;font-weight:700;letter-spacing:.06em;line-height:1.4;
}
.page-id-105331 .dbp-id-mtu-lgroups h3.wp-block-heading{
	font-size:16px!important;margin:0 0 8px!important;line-height:1.5;
}
.page-id-105331 .dbp-id-mtu-lgroups p:not(.mn-tutoring-step-label){font-size:14px;line-height:1.75;margin:0!important;}
/* PC: カード間を矢印でつなぐ */
@media (min-width:768px){
	.page-id-105331 .dbp-id-mtu-lgroups>.dbp-column-item+.dbp-column-item::before{
		content:"";position:absolute;left:-21px;top:34px;
		width:9px;height:9px;
		border-top:2px solid #b9cae6;border-right:2px solid #b9cae6;
		transform:rotate(45deg);
	}
}
/* SP: 縦型タイムライン（左に接続線） */
@media (max-width:767px){
	.page-id-105331 .dbp-id-mtu-lgroups>.dbp-column-item{padding-left:22px;}
	.page-id-105331 .dbp-id-mtu-lgroups>.dbp-column-item::after{
		content:"";position:absolute;left:6px;top:16px;bottom:-30px;
		width:2px;background:#DCE6F0;
	}
	.page-id-105331 .dbp-id-mtu-lgroups>.dbp-column-item:last-child::after{display:none;}
	.page-id-105331 .dbp-id-mtu-lgroups>.dbp-column-item::before{
		content:"";position:absolute;left:1px;top:16px;
		width:12px;height:12px;border-radius:50%;
		background:#3B82B6;border:2px solid #fff;z-index:1;
	}
}

/* ── 6. 日々の勉強もサポートします：4カードのアイコン（data-URI SVG / 単色・線幅統一） ── */
.page-id-105331 .dbp-id-mtu-home>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-home .dbp-card{width:100%;}
.page-id-105331 .mn-tutoring-ico{
	font-size:16.5px!important;margin:0 0 8px!important;line-height:1.5;
}
.page-id-105331 .mn-tutoring-ico::before{
	content:"";display:block;width:38px;height:38px;margin:0 0 12px;
	background-color:#3B82B6;                 /* ブランドカラー・単色 */
	-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
	-webkit-mask-position:center;mask-position:center;
	-webkit-mask-size:contain;mask-size:contain;
}
/* 学習計画=カレンダー */
.page-id-105331 .mn-tutoring-ico-plan::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M3 10h18M8 3v4M16 3v4"/><path d="M8.5 15.2l1.6 1.6 3.4-3.4"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M3 10h18M8 3v4M16 3v4"/><path d="M8.5 15.2l1.6 1.6 3.4-3.4"/></svg>');
}
/* 宿題設定=ノート＋鉛筆 */
.page-id-105331 .mn-tutoring-ico-hw::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M14 3H6a1.5 1.5 0 0 0-1.5 1.5v15A1.5 1.5 0 0 0 6 21h9a1.5 1.5 0 0 0 1.5-1.5V11"/><path d="M8 8h5M8 12h4"/><path d="M19.6 3.4a1.8 1.8 0 0 1 0 2.5l-5.2 5.2-2.9.6.6-2.9 5.2-5.2a1.8 1.8 0 0 1 2.3-.2z"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M14 3H6a1.5 1.5 0 0 0-1.5 1.5v15A1.5 1.5 0 0 0 6 21h9a1.5 1.5 0 0 0 1.5-1.5V11"/><path d="M8 8h5M8 12h4"/><path d="M19.6 3.4a1.8 1.8 0 0 1 0 2.5l-5.2 5.2-2.9.6.6-2.9 5.2-5.2a1.8 1.8 0 0 1 2.3-.2z"/></svg>');
}
/* 確認テスト=チェック付き答案 */
.page-id-105331 .mn-tutoring-ico-test::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M6 3h9l4 4v14a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z"/><path d="M14 3v5h5"/><path d="M8.4 13.6l1.7 1.7 4-4"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M6 3h9l4 4v14a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z"/><path d="M14 3v5h5"/><path d="M8.4 13.6l1.7 1.7 4-4"/></svg>');
}
/* 進捗管理=グラフ＋上向き矢印 */
.page-id-105331 .mn-tutoring-ico-progress::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 20V4"/><path d="M4 20h16"/><path d="M7.5 16.5v-3M12 16.5v-6M16.5 16.5v-4"/><path d="M14 6.5l3-3 3 3"/><path d="M17 3.5V9"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 20V4"/><path d="M4 20h16"/><path d="M7.5 16.5v-3M12 16.5v-6M16.5 16.5v-4"/><path d="M14 6.5l3-3 3 3"/><path d="M17 3.5V9"/></svg>');
}

/* ── スマートフォン ── */
@media (max-width:767px){
	.page-id-105331 .mn-tutoring-tags{gap:6px;}
	.page-id-105331 .mn-tutoring-tags>li{font-size:12.5px;padding:6px 12px 6px 28px;}
	.page-id-105331 .mn-tutoring-bubble{padding:14px 14px 14px 42px;}
	.page-id-105331 .mn-tutoring-bubble .mtu-bubble-text{font-size:14px;}
	.page-id-105331 .mn-tutoring-ico::before{width:32px;height:32px;margin-bottom:9px;}
}

/* 日々の勉強: SP1列 / タブレット2列 / PC4列 */
.page-id-105331 .dbp-id-mtu-home{grid-template-columns:1fr 1fr;}
@media (max-width:600px){.page-id-105331 .dbp-id-mtu-home{grid-template-columns:1fr!important;}}

/* ── v12: FVタグのPC/SP出し分け ── */
.page-id-105331 .mn-t-short{display:none;}
@media (max-width:767px){
	.page-id-105331 .mn-t-full{display:none;}
	.page-id-105331 .mn-t-short{display:inline;}
}


/* ── v13: 講師紹介(左写真/右情報) ── */
.page-id-105331 .dbp-id-tnobu,
.page-id-105331 .dbp-id-trui{
	align-items:start;margin-bottom:34px;
	background:#fff;border:1px solid #DCE6F0;border-radius:16px;padding:26px;
}
.page-id-105331 .dbp-id-tnobu>.dbp-column-item,
.page-id-105331 .dbp-id-trui>.dbp-column-item{display:block;}
.page-id-105331 .dbp-id-tnobu .mtu-tphoto,
.page-id-105331 .dbp-id-trui .mtu-tphoto{margin:0;}
.page-id-105331 .dbp-id-tnobu .mtu-tphoto img,
.page-id-105331 .dbp-id-trui .mtu-tphoto img{
	width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;
	border-radius:14px;display:block;
}
.page-id-105331 .mn-tutoring-teacher-headline{
	display:inline-block;margin:0 0 14px!important;
	padding:6px 14px;border-radius:6px;
	background:#eaf0fa;color:#245A8D!important;
	font-size:14.5px!important;font-weight:700;line-height:1.5;
}
.page-id-105331 .mn-tutoring-teacher-subjects{
	margin-top:14px!important;padding:14px 16px;
	background:#f6f9fd;border:1px solid #DCE6F0;border-radius:10px;
	font-size:14px;line-height:1.9;
}
.page-id-105331 .dbp-id-tnobu .mtu-tname,
.page-id-105331 .dbp-id-trui .mtu-tname{margin-top:0!important;}

/* ── v13: 教材カード ── */
.page-id-105331 .dbp-id-mtu-matcards>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-matcards .dbp-card{width:100%;}
.page-id-105331 .dbp-id-mtu-matcards h3.wp-block-heading{
	font-size:16px!important;margin:0 0 7px!important;line-height:1.5;
	padding-left:12px;border-left:3px solid #3B82B6;
}
.page-id-105331 .dbp-id-mtu-matcards p{font-size:14px;line-height:1.75;margin:0!important;}

@media (max-width:600px){
	.page-id-105331 .dbp-id-tnobu,
	.page-id-105331 .dbp-id-trui{padding:18px;}
	.page-id-105331 .dbp-id-tnobu .mtu-tphoto img,
	.page-id-105331 .dbp-id-trui .mtu-tphoto img{max-width:220px;margin:0 auto 16px;}
}


/* ── v13.1: 講師写真サイズ調整 ── */
.page-id-105331 .dbp-id-tnobu .mtu-tphoto img,
.page-id-105331 .dbp-id-trui .mtu-tphoto img{max-width:300px;}
@media (min-width:768px){
	.page-id-105331 .dbp-id-tnobu,
	.page-id-105331 .dbp-id-trui{grid-template-columns:300px 1fr!important;gap:30px;align-items:start;}
}

/* ── v14: 教材3カテゴリカード ── */
.page-id-105331 .dbp-id-mtu-matcards>.dbp-column-item{display:flex;}
.page-id-105331 .dbp-id-mtu-matcards .dbp-card{width:100%;}
.page-id-105331 .dbp-id-mtu-matcards h3.wp-block-heading{
	font-size:16px!important;margin:0 0 12px!important;line-height:1.5;
	padding-bottom:10px;border-bottom:2px solid #DCE6F0;color:#245A8D;
}
.page-id-105331 .dbp-id-mtu-matcards li{font-size:14px;line-height:1.7;}

/* ── v14: 個別指導開始までの流れ STEP1-4 ── */
.page-id-105331 .dbp-id-mtu-flow4>.dbp-column-item{display:flex;position:relative;}
.page-id-105331 .dbp-id-mtu-flow4 .dbp-card{width:100%;}
.page-id-105331 .dbp-id-mtu-flow4 h3.wp-block-heading{
	font-size:16px!important;margin:0 0 8px!important;line-height:1.5;
}
.page-id-105331 .dbp-id-mtu-flow4 p:not(.mn-tutoring-step-label){font-size:14px;line-height:1.75;margin:0!important;}
@media (min-width:768px){
	.page-id-105331 .dbp-id-mtu-flow4>.dbp-column-item+.dbp-column-item::before{
		content:"";position:absolute;left:-21px;top:34px;
		width:9px;height:9px;
		border-top:2px solid #b9cae6;border-right:2px solid #b9cae6;
		transform:rotate(45deg);
	}
}
@media (max-width:767px){
	.page-id-105331 .dbp-id-mtu-flow4>.dbp-column-item{padding-left:22px;}
	.page-id-105331 .dbp-id-mtu-flow4>.dbp-column-item::after{
		content:"";position:absolute;left:6px;top:16px;bottom:-30px;width:2px;background:#DCE6F0;
	}
	.page-id-105331 .dbp-id-mtu-flow4>.dbp-column-item:last-child::after{display:none;}
	.page-id-105331 .dbp-id-mtu-flow4>.dbp-column-item::before{
		content:"";position:absolute;left:1px;top:16px;
		width:12px;height:12px;border-radius:50%;
		background:#3B82B6;border:2px solid #fff;z-index:1;
	}
}

/* ── v14: 推奨プラン強調 ── */
.page-id-105331 .mn-tutoring-plan-rec::before{
	content:"おすすめ";display:inline-block;vertical-align:middle;
	margin-right:8px;padding:3px 9px;border-radius:4px;
	background:#3B82B6;color:#fff;
	font-size:11px;font-weight:700;letter-spacing:.04em;line-height:1.4;
}


/* ── v15: 開始までの流れ 補足文 ── */
.page-id-105331 .mn-tutoring-flow-note{
	margin-top:18px!important;padding:14px 18px;
	background:#f6f9fd;border:1px solid #DCE6F0;border-radius:10px;
	font-size:14.5px;line-height:1.7;color:#3f4f63!important;text-align:center;
}


/* ── v16: 月額 vs 短期集中 比較表 ── */
.page-id-105331 .mn-tutoring-compare{margin:24px 0 28px;overflow-x:auto;}
.page-id-105331 .mn-tutoring-compare table{
	width:100%;border-collapse:collapse;background:#fff;
	border:1px solid #DCE6F0;border-radius:12px;overflow:hidden;font-size:14.5px;
}
.page-id-105331 .mn-tutoring-compare thead th{
	background:#3B82B6;color:#fff;font-weight:700;
	padding:13px 14px;text-align:left;border:none;font-size:14.5px;
}
.page-id-105331 .mn-tutoring-compare thead th:first-child{width:88px;background:#24488c;}
.page-id-105331 .mn-tutoring-compare tbody th{
	background:#EEF6FC;color:#245A8D;font-weight:700;
	padding:13px 14px;text-align:left;white-space:nowrap;
	border-top:1px solid #DCE6F0;border-right:1px solid #DCE6F0;
}
.page-id-105331 .mn-tutoring-compare tbody td{
	padding:13px 14px;color:#245A8D;line-height:1.7;
	border-top:1px solid #DCE6F0;border-right:1px solid #DCE6F0;
}
.page-id-105331 .mn-tutoring-compare tbody td:last-child{border-right:none;}
@media (max-width:600px){
	.page-id-105331 .mn-tutoring-compare table{font-size:13px;}
	.page-id-105331 .mn-tutoring-compare thead th,
	.page-id-105331 .mn-tutoring-compare tbody th,
	.page-id-105331 .mn-tutoring-compare tbody td{padding:10px 9px;}
	.page-id-105331 .mn-tutoring-compare thead th:first-child{width:58px;}
}

/* ── v16: 授業画像の比率固定（SPで潰れないように） ── */
.page-id-105331 .mtu-fig-lesson img{aspect-ratio:900/1150;}
.page-id-105331 .mtu-fig-solve img{aspect-ratio:900/780;object-fit:contain;background:#fff;}


/* ── v16.1: 比較表のテーマ上書きを是正 ── */
.page-id-105331 .mn-tutoring-compare table thead th{
	background:#3B82B6!important;color:#fff!important;border:none!important;
}
.page-id-105331 .mn-tutoring-compare table thead th:first-child{background:#24488c!important;}
.page-id-105331 .mn-tutoring-compare table tbody th{
	background:#EEF6FC!important;color:#245A8D!important;
}
.page-id-105331 .mn-tutoring-compare table tbody td{background:#fff!important;}

/* ── v16.1: 画像比率の是正（lazyload前に潰れない / 縦横比を実寸に一致させる） ── */
/* 授業画像2枚は比率が異なるため、等高cropをやめて各自の比率で表示 */
.page-id-105331 .dbp-id-mtu-lessonimg{align-items:start!important;}
.page-id-105331 .dbp-id-mtu-lessonimg>.dbp-column-item{display:block!important;}
.page-id-105331 .mtu-fig-lesson img{
	width:100%!important;height:auto!important;object-fit:contain!important;
	aspect-ratio:900/1150!important;background:#fff;
}
.page-id-105331 .mtu-fig-solve img{
	width:100%!important;height:auto!important;object-fit:contain!important;
	aspect-ratio:900/780!important;background:#fff;
}
/* 実物の教材ページ（1130x1420）— 旧ラインナップ用の1:1指定を解除 */
.page-id-105331 .mtu-fig-mat img{aspect-ratio:1130/1420!important;object-fit:contain!important;}
/* 比率未指定で潰れていた3枚 */
.page-id-105331 .mtu-fig-week img{aspect-ratio:1240/1560;width:100%;height:auto;}
.page-id-105331 .mtu-fig-trial img{aspect-ratio:1000/820;width:100%;height:auto;}
.page-id-105331 .mtu-fig img[src*="report-sample"]{aspect-ratio:1429/1647;width:100%;height:auto;}


/* ── v16.2: lazyload(data-src化)に負けないよう !important + class選択に統一 ── */
.page-id-105331 .mtu-fig-week img{
	aspect-ratio:1240/1560!important;width:100%!important;height:auto!important;object-fit:contain!important;
}
.page-id-105331 .mtu-fig-trial img{
	aspect-ratio:1000/820!important;width:100%!important;height:auto!important;object-fit:contain!important;
}
.page-id-105331 .dbp-id-mtu-report .mtu-fig img{
	aspect-ratio:1429/1647!important;width:100%!important;height:auto!important;object-fit:contain!important;
}


/* ── v17: 料金直後の体験授業CTA ── */
.page-id-105331 .mn-tutoring-price-cta{
	margin:26px auto 8px;padding:24px 20px;
	background:#EEF6FC;border:1px solid #d7e2f2;border-radius:14px;text-align:center;
}
.page-id-105331 .mn-tutoring-price-cta .mtu-supp{
	text-align:center;margin:0 0 16px!important;font-size:15.5px;color:#245A8D!important;
}
.page-id-105331 .mn-tutoring-price-cta .mtu-cta-note{text-align:center;margin:10px 0 0!important;}
/* 問題画像の比率(v3) */
.page-id-105331 .mtu-fig-solve img{aspect-ratio:900/700!important;}

/* === MN-TUTORING-V11-END === */


/* ===== UniSR (page-id-105597) — HUMAT(105595)体系を複製 ===== */
/* ============================================================
   HUMAT模試 専用LP (page-id-105597) — /moshi/ヒーロー体系を子ページへ適用
   ============================================================ */
.page-id-105597 p.mmh-kicker{font-size:.8rem;font-weight:800;letter-spacing:.12em;color:#245A8D;margin:0 0 8px!important;}
.page-id-105597 :is(h1,h2).wp-block-heading.mmh-h2-hero{border:none!important;background:none!important;padding:0!important;margin:0 0 14px!important;font-size:30px!important;line-height:1.45!important;font-weight:800!important;color:#245A8D!important;text-align:left!important;}
.page-id-105597 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{content:none!important;display:none!important;}
.page-id-105597 .mmh-hero .dbp-section__inner{padding-top:56px;padding-bottom:56px;}
.page-id-105597 .mmh-hero .dbp-id-herohumat{align-items:center;}
.page-id-105597 p.mmh-chips{color:#245A8D;font-weight:600;margin:14px 0 4px!important;}
/* ヒーローCTA(ショートコード出力のwp-block-buttons) */
.page-id-105597 .mmh-hero .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 2px;}
.page-id-105597 .mmh-hero .wp-block-buttons .dbp-button{margin:0;}
/* 監修クレジット帯 */
.page-id-105597 .mmh-credit{background:#F8FAFC;border:1px solid #DCE6F0;border-radius:12px;padding:10px 16px;margin-top:16px;gap:0 14px;align-items:center;}
.page-id-105597 .mmh-credit .wp-block-column{margin:0!important;}
.page-id-105597 .mmh-credit .wp-block-column:first-child{flex:0 0 64px!important;}
.page-id-105597 .mmh-credit figure{margin:0!important;}
.page-id-105597 .mmh-credit img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;}
.page-id-105597 .mmh-credit p{margin:0!important;color:#5B6778;font-size:13.5px;line-height:1.7;}
.page-id-105597 .mmh-credit .mmh-nb{white-space:nowrap;}
/* ヒーロービジュアル(問題画面画像=フラッシュ表示) */
.page-id-105597 .mmh-hero-visual{padding:0!important;border:1px solid #DCE6F0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(15,59,120,.10);}
.page-id-105597 .mmh-hero-visual>.dbp-card__inner{padding:0!important;display:block;gap:0!important;}
.page-id-105597 .mmh-qpaper{margin:0!important;}
.page-id-105597 .mmh-qpaper img{width:100%;max-width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;}
.page-id-105597 p.mmh-hero-visual-cap{margin:0!important;padding:12px 16px 14px;text-align:center;border-top:1px solid #F8FAFC;color:#5B6778;background:#fff;font-size:13px;}
/* サブ見出し文 */
.page-id-105597 p.mmh-sub{color:#5B6778;font-size:15.5px;line-height:1.85;margin:0 0 22px!important;}
/* 受験料カード(mmh-apply内、フォームはmn_mock_apply側CSSが担当) */
.page-id-105597 .mmh-apply-card{border:1px solid #DCE6F0;box-shadow:0 6px 20px rgba(27,108,183,.1);}
.page-id-105597 .mmh-apply-card>.dbp-card__inner{padding:28px;}
@media(max-width:900px){.page-id-105597 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:24px!important;}.page-id-105597 .mmh-hero .dbp-section__inner{padding-top:40px;padding-bottom:40px;}}
@media(max-width:640px){.page-id-105597 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:22px!important;}.page-id-105597 .mmh-hero .wp-block-buttons{gap:10px;}.page-id-105597 .mmh-hero .wp-block-buttons .dbp-button{width:100%;}.page-id-105597 .mmh-hero .wp-block-buttons .dbp-button-link{width:100%;text-align:center;box-sizing:border-box;}.page-id-105597 .mmh-credit img{width:48px;height:48px;}.page-id-105597 .mmh-credit .wp-block-column:first-child{flex:0 0 52px!important;}.page-id-105597 .mmh-apply-card>.dbp-card__inner{padding:20px;}}
/* HUMAT 受験後に確認できるもの — 実物レポート画像(media-text) */
.page-id-105597 .mmh-after-mt{margin:0 0 26px;gap:0 34px;align-items:center;}
.page-id-105597 .mmh-after-mt .wp-block-media-text__media img{border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 8px 22px rgba(15,59,120,.10);display:block;width:100%;height:auto;}
.page-id-105597 .mmh-after-mt .wp-block-media-text__content h3{margin:0 0 10px;font-size:19px;color:#245A8D;font-weight:800;}
.page-id-105597 .mmh-after-mt .wp-block-media-text__content p{margin:0 0 10px;color:#5B6778;line-height:1.85;font-size:15px;}
@media(max-width:781px){.page-id-105597 .mmh-after-mt{gap:16px 0;}.page-id-105597 .mmh-after-mt .wp-block-media-text__content{padding:14px 2px 0!important;}}
.page-id-105597 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media{grid-column:2;grid-row:1;}
.page-id-105597 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:1;}
@media(max-width:781px){.page-id-105597 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media, .page-id-105597 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;}}
/* ============================================================
   HUMAT LP v2 改修 (2026-07-16)
   ============================================================ */
/* 選ばれる理由 = 4アイコンカード(2x2) */
.page-id-105597 .dbp-id-why .dbp-column-item{display:flex;}
.page-id-105597 .mmh-why-card{width:100%!important;border:1px solid #DCE6F0;border-radius:16px;background:linear-gradient(180deg,#fbfdff 0%,#f4f9fe 100%);box-shadow:0 6px 20px rgba(27,108,183,.07);transition:box-shadow .2s ease,transform .2s ease;}
.page-id-105597 .mmh-why-card:hover{box-shadow:0 12px 30px rgba(27,108,183,.13);transform:translateY(-2px);}
.page-id-105597 .mmh-why-card>.dbp-card__inner{padding:30px 28px;gap:0;}
.page-id-105597 .mmh-why-card .dbp-card__inner>h3{margin:0 0 8px!important;font-size:19px;font-weight:800;color:#245A8D;line-height:1.5;}
.page-id-105597 .mmh-why-card .dbp-card__inner>h3::before{content:"";display:block;width:54px;height:54px;margin:0 0 15px;border-radius:15px;background-color:#eaf3fc;background-repeat:no-repeat;background-position:center;background-size:30px 30px;}
.page-id-105597 .mmh-why-card p{margin:0;color:#5B6778;font-size:15px;line-height:1.85;}
@media(max-width:640px){.page-id-105597 .mmh-why-card>.dbp-card__inner{padding:22px 20px;}}
/* 料金 → お申し込み セクション間に余白 */
.page-id-105597 #application{margin-top:56px!important;padding-top:30px!important;border-top:1px solid #e6eef6!important;}
@media(max-width:640px){.page-id-105597 #application{margin-top:44px!important;padding-top:24px!important;}}
/* 最終CTAボタンを中央揃え(本文中央のため) */
.page-id-105597 .mmh-final .mmh-cta-row{justify-content:center;}
.page-id-105597 .mmh-why-1 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205h10'/%3E%3Cpath%20d='M4%2010h10'/%3E%3Cpath%20d='M4%2015h6'/%3E%3Cpath%20d='m14.5%2015%202%202%204-4'/%3E%3C/svg%3E");}
.page-id-105597 .mmh-why-2 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='8.5'/%3E%3Cpath%20d='M12%207.5V12l3%202'/%3E%3C/svg%3E");}
.page-id-105597 .mmh-why-3 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%2020V11'/%3E%3Cpath%20d='M10%2020V5'/%3E%3Cpath%20d='M16%2020v-6'/%3E%3Cpath%20d='M21%2020H3'/%3E%3C/svg%3E");}
.page-id-105597 .mmh-why-4 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='9'%20r='5'/%3E%3Cpath%20d='m8.5%2013.2-1.5%207.8%205-2.8%205%202.8-1.5-7.8'/%3E%3C/svg%3E");}
/* HUMAT LP: ページ内の全ての表を th/td すべて中央揃えに統一 (2026-07-16)
   対象=日程表(.mms-mock-table) / 試験形式3表 / おすすめ表(core table)。page-id-105597 限定。 */
.page-id-105597 .wp-block-table th, .page-id-105597 .wp-block-table td, .page-id-105597 .mn-moshi th, .page-id-105597 .mn-moshi td, .page-id-105597 .mms-mock-table th, .page-id-105597 .mms-mock-table td{text-align:center!important;vertical-align:middle!important;}
/* IMAT LP: 選ばれる理由 追加アイコン(5=復習/6=解説・アドバイス) */
.page-id-105597 .mmh-why-5 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%205.5A1.5%201.5%200%200%201%204.5%204H9a3%203%200%200%201%203%203v13a2.5%202.5%200%200%200-2.5-2.5H3z'/%3E%3Cpath%20d='M21%205.5A1.5%201.5%200%200%200%2019.5%204H15a3%203%200%200%200-3%203v13a2.5%202.5%200%200%201%202.5-2.5H21z'/%3E%3C/svg%3E");}
.page-id-105597 .mmh-why-6 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20%2014.5a2%202%200%200%201-2%202H8l-4%203.5V5.5a2%202%200%200%201%202-2h12a2%202%200%200%201%202%202z'/%3E%3Cpath%20d='M8%208.5h8'/%3E%3Cpath%20d='M8%2012h5'/%3E%3C/svg%3E");}
/* HUMAT/IMAT LP: 申込カードがcolumn flexアイテムとしてmin-content幅(354px)で
   親(323px)を超え、overflow:hiddenで右端が切れる問題の修正。
   .mmh-apply-card に既に適用済みの手法(width/max-width/min-width)と同じ。 */
.page-id-105597 .mmh-application-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;}
.page-id-105597 .mmh-application-notice, .page-id-105597 .mmh-application-form{min-width:0;box-sizing:border-box;max-width:100%;}
.page-id-105597 .mmh-application-form .wpcf7-form input, .page-id-105597 .mmh-application-form .wpcf7-form select, .page-id-105597 .mmh-application-form .wpcf7-form textarea{min-width:0;}


/* ===== UniCamillus (page-id-107745) — HUMAT(105595)体系を複製 ===== */
/* ============================================================
   HUMAT模試 専用LP (page-id-107745) — /moshi/ヒーロー体系を子ページへ適用
   ============================================================ */
.page-id-107745 p.mmh-kicker{font-size:.8rem;font-weight:800;letter-spacing:.12em;color:#245A8D;margin:0 0 8px!important;}
.page-id-107745 :is(h1,h2).wp-block-heading.mmh-h2-hero{border:none!important;background:none!important;padding:0!important;margin:0 0 14px!important;font-size:30px!important;line-height:1.45!important;font-weight:800!important;color:#245A8D!important;text-align:left!important;}
.page-id-107745 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{content:none!important;display:none!important;}
.page-id-107745 .mmh-hero .dbp-section__inner{padding-top:56px;padding-bottom:56px;}
.page-id-107745 .mmh-hero .dbp-id-herohumat{align-items:center;}
.page-id-107745 p.mmh-chips{color:#245A8D;font-weight:600;margin:14px 0 4px!important;}
/* ヒーローCTA(ショートコード出力のwp-block-buttons) */
.page-id-107745 .mmh-hero .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 2px;}
.page-id-107745 .mmh-hero .wp-block-buttons .dbp-button{margin:0;}
/* 監修クレジット帯 */
.page-id-107745 .mmh-credit{background:#F8FAFC;border:1px solid #DCE6F0;border-radius:12px;padding:10px 16px;margin-top:16px;gap:0 14px;align-items:center;}
.page-id-107745 .mmh-credit .wp-block-column{margin:0!important;}
.page-id-107745 .mmh-credit .wp-block-column:first-child{flex:0 0 64px!important;}
.page-id-107745 .mmh-credit figure{margin:0!important;}
.page-id-107745 .mmh-credit img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;}
.page-id-107745 .mmh-credit p{margin:0!important;color:#5B6778;font-size:13.5px;line-height:1.7;}
.page-id-107745 .mmh-credit .mmh-nb{white-space:nowrap;}
/* ヒーロービジュアル(問題画面画像=フラッシュ表示) */
.page-id-107745 .mmh-hero-visual{padding:0!important;border:1px solid #DCE6F0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(15,59,120,.10);}
.page-id-107745 .mmh-hero-visual>.dbp-card__inner{padding:0!important;display:block;gap:0!important;}
.page-id-107745 .mmh-qpaper{margin:0!important;}
.page-id-107745 .mmh-qpaper img{width:100%;max-width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;}
.page-id-107745 p.mmh-hero-visual-cap{margin:0!important;padding:12px 16px 14px;text-align:center;border-top:1px solid #F8FAFC;color:#5B6778;background:#fff;font-size:13px;}
/* サブ見出し文 */
.page-id-107745 p.mmh-sub{color:#5B6778;font-size:15.5px;line-height:1.85;margin:0 0 22px!important;}
/* 受験料カード(mmh-apply内、フォームはmn_mock_apply側CSSが担当) */
.page-id-107745 .mmh-apply-card{border:1px solid #DCE6F0;box-shadow:0 6px 20px rgba(27,108,183,.1);}
.page-id-107745 .mmh-apply-card>.dbp-card__inner{padding:28px;}
@media(max-width:900px){.page-id-107745 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:24px!important;}.page-id-107745 .mmh-hero .dbp-section__inner{padding-top:40px;padding-bottom:40px;}}
@media(max-width:640px){.page-id-107745 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:22px!important;}.page-id-107745 .mmh-hero .wp-block-buttons{gap:10px;}.page-id-107745 .mmh-hero .wp-block-buttons .dbp-button{width:100%;}.page-id-107745 .mmh-hero .wp-block-buttons .dbp-button-link{width:100%;text-align:center;box-sizing:border-box;}.page-id-107745 .mmh-credit img{width:48px;height:48px;}.page-id-107745 .mmh-credit .wp-block-column:first-child{flex:0 0 52px!important;}.page-id-107745 .mmh-apply-card>.dbp-card__inner{padding:20px;}}
/* HUMAT 受験後に確認できるもの — 実物レポート画像(media-text) */
.page-id-107745 .mmh-after-mt{margin:0 0 26px;gap:0 34px;align-items:center;}
.page-id-107745 .mmh-after-mt .wp-block-media-text__media img{border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 8px 22px rgba(15,59,120,.10);display:block;width:100%;height:auto;}
.page-id-107745 .mmh-after-mt .wp-block-media-text__content h3{margin:0 0 10px;font-size:19px;color:#245A8D;font-weight:800;}
.page-id-107745 .mmh-after-mt .wp-block-media-text__content p{margin:0 0 10px;color:#5B6778;line-height:1.85;font-size:15px;}
@media(max-width:781px){.page-id-107745 .mmh-after-mt{gap:16px 0;}.page-id-107745 .mmh-after-mt .wp-block-media-text__content{padding:14px 2px 0!important;}}
.page-id-107745 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media{grid-column:2;grid-row:1;}
.page-id-107745 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:1;}
@media(max-width:781px){.page-id-107745 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media, .page-id-107745 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;}}
/* ============================================================
   HUMAT LP v2 改修 (2026-07-16)
   ============================================================ */
/* 選ばれる理由 = 4アイコンカード(2x2) */
.page-id-107745 .dbp-id-why .dbp-column-item{display:flex;}
.page-id-107745 .mmh-why-card{width:100%!important;border:1px solid #DCE6F0;border-radius:16px;background:linear-gradient(180deg,#fbfdff 0%,#f4f9fe 100%);box-shadow:0 6px 20px rgba(27,108,183,.07);transition:box-shadow .2s ease,transform .2s ease;}
.page-id-107745 .mmh-why-card:hover{box-shadow:0 12px 30px rgba(27,108,183,.13);transform:translateY(-2px);}
.page-id-107745 .mmh-why-card>.dbp-card__inner{padding:30px 28px;gap:0;}
.page-id-107745 .mmh-why-card .dbp-card__inner>h3{margin:0 0 8px!important;font-size:19px;font-weight:800;color:#245A8D;line-height:1.5;}
.page-id-107745 .mmh-why-card .dbp-card__inner>h3::before{content:"";display:block;width:54px;height:54px;margin:0 0 15px;border-radius:15px;background-color:#eaf3fc;background-repeat:no-repeat;background-position:center;background-size:30px 30px;}
.page-id-107745 .mmh-why-card p{margin:0;color:#5B6778;font-size:15px;line-height:1.85;}
@media(max-width:640px){.page-id-107745 .mmh-why-card>.dbp-card__inner{padding:22px 20px;}}
/* 料金 → お申し込み セクション間に余白 */
.page-id-107745 #application{margin-top:56px!important;padding-top:30px!important;border-top:1px solid #e6eef6!important;}
@media(max-width:640px){.page-id-107745 #application{margin-top:44px!important;padding-top:24px!important;}}
/* 最終CTAボタンを中央揃え(本文中央のため) */
.page-id-107745 .mmh-final .mmh-cta-row{justify-content:center;}
.page-id-107745 .mmh-why-1 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205h10'/%3E%3Cpath%20d='M4%2010h10'/%3E%3Cpath%20d='M4%2015h6'/%3E%3Cpath%20d='m14.5%2015%202%202%204-4'/%3E%3C/svg%3E");}
.page-id-107745 .mmh-why-2 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='8.5'/%3E%3Cpath%20d='M12%207.5V12l3%202'/%3E%3C/svg%3E");}
.page-id-107745 .mmh-why-3 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%2020V11'/%3E%3Cpath%20d='M10%2020V5'/%3E%3Cpath%20d='M16%2020v-6'/%3E%3Cpath%20d='M21%2020H3'/%3E%3C/svg%3E");}
.page-id-107745 .mmh-why-4 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='9'%20r='5'/%3E%3Cpath%20d='m8.5%2013.2-1.5%207.8%205-2.8%205%202.8-1.5-7.8'/%3E%3C/svg%3E");}
/* HUMAT LP: ページ内の全ての表を th/td すべて中央揃えに統一 (2026-07-16)
   対象=日程表(.mms-mock-table) / 試験形式3表 / おすすめ表(core table)。page-id-107745 限定。 */
.page-id-107745 .wp-block-table th, .page-id-107745 .wp-block-table td, .page-id-107745 .mn-moshi th, .page-id-107745 .mn-moshi td, .page-id-107745 .mms-mock-table th, .page-id-107745 .mms-mock-table td{text-align:center!important;vertical-align:middle!important;}
/* IMAT LP: 選ばれる理由 追加アイコン(5=復習/6=解説・アドバイス) */
.page-id-107745 .mmh-why-5 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%205.5A1.5%201.5%200%200%201%204.5%204H9a3%203%200%200%201%203%203v13a2.5%202.5%200%200%200-2.5-2.5H3z'/%3E%3Cpath%20d='M21%205.5A1.5%201.5%200%200%200%2019.5%204H15a3%203%200%200%200-3%203v13a2.5%202.5%200%200%201%202.5-2.5H21z'/%3E%3C/svg%3E");}
.page-id-107745 .mmh-why-6 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20%2014.5a2%202%200%200%201-2%202H8l-4%203.5V5.5a2%202%200%200%201%202-2h12a2%202%200%200%201%202%202z'/%3E%3Cpath%20d='M8%208.5h8'/%3E%3Cpath%20d='M8%2012h5'/%3E%3C/svg%3E");}
/* HUMAT/IMAT LP: 申込カードがcolumn flexアイテムとしてmin-content幅(354px)で
   親(323px)を超え、overflow:hiddenで右端が切れる問題の修正。
   .mmh-apply-card に既に適用済みの手法(width/max-width/min-width)と同じ。 */
.page-id-107745 .mmh-application-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;}
.page-id-107745 .mmh-application-notice, .page-id-107745 .mmh-application-form{min-width:0;box-sizing:border-box;max-width:100%;}
.page-id-107745 .mmh-application-form .wpcf7-form input, .page-id-107745 .mmh-application-form .wpcf7-form select, .page-id-107745 .mmh-application-form .wpcf7-form textarea{min-width:0;}


/* ===== イタリア私立医学部総合模試(無料/page-id-107788) — HUMAT体系を複製 ===== */
/* ============================================================
   HUMAT模試 専用LP (page-id-107788) — /moshi/ヒーロー体系を子ページへ適用
   ============================================================ */
.page-id-107788 p.mmh-kicker{font-size:.8rem;font-weight:800;letter-spacing:.12em;color:#245A8D;margin:0 0 8px!important;}
.page-id-107788 :is(h1,h2).wp-block-heading.mmh-h2-hero{border:none!important;background:none!important;padding:0!important;margin:0 0 14px!important;font-size:30px!important;line-height:1.45!important;font-weight:800!important;color:#245A8D!important;text-align:left!important;}
.page-id-107788 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{content:none!important;display:none!important;}
.page-id-107788 .mmh-hero .dbp-section__inner{padding-top:56px;padding-bottom:56px;}
.page-id-107788 .mmh-hero .dbp-id-herohumat{align-items:center;}
.page-id-107788 p.mmh-chips{color:#245A8D;font-weight:600;margin:14px 0 4px!important;}
/* ヒーローCTA(ショートコード出力のwp-block-buttons) */
.page-id-107788 .mmh-hero .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 2px;}
.page-id-107788 .mmh-hero .wp-block-buttons .dbp-button{margin:0;}
/* 監修クレジット帯 */
.page-id-107788 .mmh-credit{background:#F8FAFC;border:1px solid #DCE6F0;border-radius:12px;padding:10px 16px;margin-top:16px;gap:0 14px;align-items:center;}
.page-id-107788 .mmh-credit .wp-block-column{margin:0!important;}
.page-id-107788 .mmh-credit .wp-block-column:first-child{flex:0 0 64px!important;}
.page-id-107788 .mmh-credit figure{margin:0!important;}
.page-id-107788 .mmh-credit img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;}
.page-id-107788 .mmh-credit p{margin:0!important;color:#5B6778;font-size:13.5px;line-height:1.7;}
.page-id-107788 .mmh-credit .mmh-nb{white-space:nowrap;}
/* ヒーロービジュアル(問題画面画像=フラッシュ表示) */
.page-id-107788 .mmh-hero-visual{padding:0!important;border:1px solid #DCE6F0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(15,59,120,.10);}
.page-id-107788 .mmh-hero-visual>.dbp-card__inner{padding:0!important;display:block;gap:0!important;}
.page-id-107788 .mmh-qpaper{margin:0!important;}
.page-id-107788 .mmh-qpaper img{width:100%;max-width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;}
.page-id-107788 p.mmh-hero-visual-cap{margin:0!important;padding:12px 16px 14px;text-align:center;border-top:1px solid #F8FAFC;color:#5B6778;background:#fff;font-size:13px;}
/* サブ見出し文 */
.page-id-107788 p.mmh-sub{color:#5B6778;font-size:15.5px;line-height:1.85;margin:0 0 22px!important;}
/* 受験料カード(mmh-apply内、フォームはmn_mock_apply側CSSが担当) */
.page-id-107788 .mmh-apply-card{border:1px solid #DCE6F0;box-shadow:0 6px 20px rgba(27,108,183,.1);}
.page-id-107788 .mmh-apply-card>.dbp-card__inner{padding:28px;}
@media(max-width:900px){.page-id-107788 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:24px!important;}.page-id-107788 .mmh-hero .dbp-section__inner{padding-top:40px;padding-bottom:40px;}}
@media(max-width:640px){.page-id-107788 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:22px!important;}.page-id-107788 .mmh-hero .wp-block-buttons{gap:10px;}.page-id-107788 .mmh-hero .wp-block-buttons .dbp-button{width:100%;}.page-id-107788 .mmh-hero .wp-block-buttons .dbp-button-link{width:100%;text-align:center;box-sizing:border-box;}.page-id-107788 .mmh-credit img{width:48px;height:48px;}.page-id-107788 .mmh-credit .wp-block-column:first-child{flex:0 0 52px!important;}.page-id-107788 .mmh-apply-card>.dbp-card__inner{padding:20px;}}
/* HUMAT 受験後に確認できるもの — 実物レポート画像(media-text) */
.page-id-107788 .mmh-after-mt{margin:0 0 26px;gap:0 34px;align-items:center;}
.page-id-107788 .mmh-after-mt .wp-block-media-text__media img{border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 8px 22px rgba(15,59,120,.10);display:block;width:100%;height:auto;}
.page-id-107788 .mmh-after-mt .wp-block-media-text__content h3{margin:0 0 10px;font-size:19px;color:#245A8D;font-weight:800;}
.page-id-107788 .mmh-after-mt .wp-block-media-text__content p{margin:0 0 10px;color:#5B6778;line-height:1.85;font-size:15px;}
@media(max-width:781px){.page-id-107788 .mmh-after-mt{gap:16px 0;}.page-id-107788 .mmh-after-mt .wp-block-media-text__content{padding:14px 2px 0!important;}}
.page-id-107788 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media{grid-column:2;grid-row:1;}
.page-id-107788 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:1;}
@media(max-width:781px){.page-id-107788 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__media, .page-id-107788 .mmh-after-mt.has-media-on-the-right .wp-block-media-text__content{grid-column:1;}}
/* ============================================================
   HUMAT LP v2 改修 (2026-07-16)
   ============================================================ */
/* 選ばれる理由 = 4アイコンカード(2x2) */
.page-id-107788 .dbp-id-why .dbp-column-item{display:flex;}
.page-id-107788 .mmh-why-card{width:100%!important;border:1px solid #DCE6F0;border-radius:16px;background:linear-gradient(180deg,#fbfdff 0%,#f4f9fe 100%);box-shadow:0 6px 20px rgba(27,108,183,.07);transition:box-shadow .2s ease,transform .2s ease;}
.page-id-107788 .mmh-why-card:hover{box-shadow:0 12px 30px rgba(27,108,183,.13);transform:translateY(-2px);}
.page-id-107788 .mmh-why-card>.dbp-card__inner{padding:30px 28px;gap:0;}
.page-id-107788 .mmh-why-card .dbp-card__inner>h3{margin:0 0 8px!important;font-size:19px;font-weight:800;color:#245A8D;line-height:1.5;}
.page-id-107788 .mmh-why-card .dbp-card__inner>h3::before{content:"";display:block;width:54px;height:54px;margin:0 0 15px;border-radius:15px;background-color:#eaf3fc;background-repeat:no-repeat;background-position:center;background-size:30px 30px;}
.page-id-107788 .mmh-why-card p{margin:0;color:#5B6778;font-size:15px;line-height:1.85;}
@media(max-width:640px){.page-id-107788 .mmh-why-card>.dbp-card__inner{padding:22px 20px;}}
/* 料金 → お申し込み セクション間に余白 */
.page-id-107788 #application{margin-top:56px!important;padding-top:30px!important;border-top:1px solid #e6eef6!important;}
@media(max-width:640px){.page-id-107788 #application{margin-top:44px!important;padding-top:24px!important;}}
/* 最終CTAボタンを中央揃え(本文中央のため) */
.page-id-107788 .mmh-final .mmh-cta-row{justify-content:center;}
.page-id-107788 .mmh-why-1 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205h10'/%3E%3Cpath%20d='M4%2010h10'/%3E%3Cpath%20d='M4%2015h6'/%3E%3Cpath%20d='m14.5%2015%202%202%204-4'/%3E%3C/svg%3E");}
.page-id-107788 .mmh-why-2 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='8.5'/%3E%3Cpath%20d='M12%207.5V12l3%202'/%3E%3C/svg%3E");}
.page-id-107788 .mmh-why-3 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%2020V11'/%3E%3Cpath%20d='M10%2020V5'/%3E%3Cpath%20d='M16%2020v-6'/%3E%3Cpath%20d='M21%2020H3'/%3E%3C/svg%3E");}
.page-id-107788 .mmh-why-4 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='9'%20r='5'/%3E%3Cpath%20d='m8.5%2013.2-1.5%207.8%205-2.8%205%202.8-1.5-7.8'/%3E%3C/svg%3E");}
/* HUMAT LP: ページ内の全ての表を th/td すべて中央揃えに統一 (2026-07-16)
   対象=日程表(.mms-mock-table) / 試験形式3表 / おすすめ表(core table)。page-id-107788 限定。 */
.page-id-107788 .wp-block-table th, .page-id-107788 .wp-block-table td, .page-id-107788 .mn-moshi th, .page-id-107788 .mn-moshi td, .page-id-107788 .mms-mock-table th, .page-id-107788 .mms-mock-table td{text-align:center!important;vertical-align:middle!important;}
/* IMAT LP: 選ばれる理由 追加アイコン(5=復習/6=解説・アドバイス) */
.page-id-107788 .mmh-why-5 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%205.5A1.5%201.5%200%200%201%204.5%204H9a3%203%200%200%201%203%203v13a2.5%202.5%200%200%200-2.5-2.5H3z'/%3E%3Cpath%20d='M21%205.5A1.5%201.5%200%200%200%2019.5%204H15a3%203%200%200%200-3%203v13a2.5%202.5%200%200%201%202.5-2.5H21z'/%3E%3C/svg%3E");}
.page-id-107788 .mmh-why-6 .dbp-card__inner>h3::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='30'%20height='30'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%231b6cb7'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20%2014.5a2%202%200%200%201-2%202H8l-4%203.5V5.5a2%202%200%200%201%202-2h12a2%202%200%200%201%202%202z'/%3E%3Cpath%20d='M8%208.5h8'/%3E%3Cpath%20d='M8%2012h5'/%3E%3C/svg%3E");}
/* HUMAT/IMAT LP: 申込カードがcolumn flexアイテムとしてmin-content幅(354px)で
   親(323px)を超え、overflow:hiddenで右端が切れる問題の修正。
   .mmh-apply-card に既に適用済みの手法(width/max-width/min-width)と同じ。 */
.page-id-107788 .mmh-application-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;}
.page-id-107788 .mmh-application-notice, .page-id-107788 .mmh-application-form{min-width:0;box-sizing:border-box;max-width:100%;}
.page-id-107788 .mmh-application-form .wpcf7-form input, .page-id-107788 .mmh-application-form .wpcf7-form select, .page-id-107788 .mmh-application-form .wpcf7-form textarea{min-width:0;}

/* ═══════════════════════════════════════════════════════════════
   子サービスページ (2026-07-19)
   /monthly-tutoring/ = 107633 ・ /intensive-tutoring/ = 107635
   /tutoring/(105331) のデザインシステムを同一クラス名で共有する。
   ═══════════════════════════════════════════════════════════════ */

/* ── 共通リスト（CSS描画チェック・フォント非依存） ── */
.page-id-107633 .mn-tutoring-list,
.page-id-107635 .mn-tutoring-list{list-style:none!important;padding-left:0!important;margin:0 0 1em!important;}
.page-id-107633 .mn-tutoring-list>li,
.page-id-107635 .mn-tutoring-list>li{position:relative;padding-left:1.75em;margin:0 0 .55em;line-height:1.75;list-style:none!important;}
.page-id-107633 .mn-tutoring-list>li:last-child,
.page-id-107635 .mn-tutoring-list>li:last-child{margin-bottom:0;}
.page-id-107633 .mn-tutoring-list-check>li::before,
.page-id-107635 .mn-tutoring-list-check>li::before{
	content:"";position:absolute;left:0;top:.42em;width:1.15em;height:1.15em;
	border-radius:50%;background:#e8effa;box-sizing:border-box;
}
.page-id-107633 .mn-tutoring-list-check>li::after,
.page-id-107635 .mn-tutoring-list-check>li::after{
	content:"";position:absolute;left:.4em;top:.68em;width:.28em;height:.52em;
	border-right:2px solid #3B82B6;border-bottom:2px solid #3B82B6;
	transform:rotate(45deg);box-sizing:border-box;
}
.page-id-107633 .mn-tutoring-list-note>li,
.page-id-107635 .mn-tutoring-list-note>li{padding-left:1.4em;}
.page-id-107633 .mn-tutoring-list-note>li::before,
.page-id-107635 .mn-tutoring-list-note>li::before{
	content:"";position:absolute;left:.15em;top:.86em;width:.7em;height:2px;
	background:#9aa7b8;border-radius:2px;
}

/* ── ファーストビュー ── */
.page-id-107633 .mtu-hero-wrap,
.page-id-107635 .mtu-hero-wrap{
	background:#EEF6FC;border:1px solid #DCE6F0;border-radius:16px;
	padding:32px 30px;margin-bottom:44px;
}
.page-id-107633 .mtu-label,
.page-id-107635 .mtu-label{
	display:inline-block;margin:0 0 12px!important;padding:5px 13px;border-radius:999px;
	background:#3B82B6;color:#fff!important;font-size:12.5px!important;font-weight:700;line-height:1.5;
}
.page-id-107633 .mtu-lead,
.page-id-107635 .mtu-lead{font-size:17px!important;line-height:1.95;color:#245A8D!important;margin:0 0 18px!important;}
.page-id-107633 .mtu-fvlist,
.page-id-107635 .mtu-fvlist{margin-bottom:22px!important;}
.page-id-107633 .mtu-cta-note,
.page-id-107635 .mtu-cta-note{text-align:center;font-size:13.5px;color:#5c6b80!important;margin:10px 0 0!important;}

/* ── 吹き出し ── */
.page-id-107633 .dbp-id-mp-fit>.dbp-column-item,
.page-id-107635 .dbp-id-it-fit>.dbp-column-item{display:flex;}
.page-id-107633 .mn-tutoring-bubble,
.page-id-107635 .mn-tutoring-bubble{
	position:relative;width:100%;background:#fff;
	border:1px solid #DCE6F0;border-left:4px solid #3B82B6;border-radius:12px;
	padding:16px 18px 16px 46px;box-shadow:0 1px 3px rgba(23,45,80,.05);
	display:flex;align-items:center;
}
.page-id-107633 .mn-tutoring-bubble::before,
.page-id-107635 .mn-tutoring-bubble::before{
	content:"";position:absolute;left:16px;top:50%;margin-top:-7px;
	width:18px;height:14px;border-radius:4px;background:#e8effa;
	border:1.5px solid #b7c8e4;box-sizing:border-box;
}
.page-id-107633 .mn-tutoring-bubble .mtu-bubble-text,
.page-id-107635 .mn-tutoring-bubble .mtu-bubble-text{
	margin:0!important;font-size:15px;line-height:1.7;color:#245A8D;font-weight:600;
}

/* ── アイコンカード（data-URI SVG） ── */
.page-id-107633 .dbp-id-mp-teach>.dbp-column-item,
.page-id-107635 .dbp-id-it-teach>.dbp-column-item,
.page-id-107633 .dbp-id-mp-mats>.dbp-column-item,
.page-id-107633 .dbp-id-mp-flow>.dbp-column-item,
.page-id-107633 .dbp-id-mp-plans>.dbp-column-item,
.page-id-107635 .dbp-id-it-plans>.dbp-column-item,
.page-id-107635 .dbp-id-it-cond>.dbp-column-item{display:flex;}
.page-id-107633 .dbp-card,.page-id-107635 .dbp-card{width:100%;}
.page-id-107633 .mn-tutoring-ico,
.page-id-107635 .mn-tutoring-ico{font-size:16.5px!important;margin:0 0 8px!important;line-height:1.5;}
.page-id-107633 .mn-tutoring-ico::before,
.page-id-107635 .mn-tutoring-ico::before{
	content:"";display:block;width:38px;height:38px;margin:0 0 12px;
	background-color:#3B82B6;
	-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
	-webkit-mask-position:center;mask-position:center;
	-webkit-mask-size:contain;mask-size:contain;
}
.page-id-107633 .mn-tutoring-ico-plan::before,
.page-id-107635 .mn-tutoring-ico-plan::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M3 10h18M8 3v4M16 3v4"/><path d="M8.5 15.2l1.6 1.6 3.4-3.4"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M3 10h18M8 3v4M16 3v4"/><path d="M8.5 15.2l1.6 1.6 3.4-3.4"/></svg>');
}
.page-id-107633 .mn-tutoring-ico-hw::before,
.page-id-107635 .mn-tutoring-ico-hw::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M14 3H6a1.5 1.5 0 0 0-1.5 1.5v15A1.5 1.5 0 0 0 6 21h9a1.5 1.5 0 0 0 1.5-1.5V11"/><path d="M8 8h5M8 12h4"/><path d="M19.6 3.4a1.8 1.8 0 0 1 0 2.5l-5.2 5.2-2.9.6.6-2.9 5.2-5.2a1.8 1.8 0 0 1 2.3-.2z"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M14 3H6a1.5 1.5 0 0 0-1.5 1.5v15A1.5 1.5 0 0 0 6 21h9a1.5 1.5 0 0 0 1.5-1.5V11"/><path d="M8 8h5M8 12h4"/><path d="M19.6 3.4a1.8 1.8 0 0 1 0 2.5l-5.2 5.2-2.9.6.6-2.9 5.2-5.2a1.8 1.8 0 0 1 2.3-.2z"/></svg>');
}
.page-id-107633 .mn-tutoring-ico-test::before,
.page-id-107635 .mn-tutoring-ico-test::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M6 3h9l4 4v14a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z"/><path d="M14 3v5h5"/><path d="M8.4 13.6l1.7 1.7 4-4"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M6 3h9l4 4v14a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z"/><path d="M14 3v5h5"/><path d="M8.4 13.6l1.7 1.7 4-4"/></svg>');
}
.page-id-107633 .mn-tutoring-ico-progress::before,
.page-id-107635 .mn-tutoring-ico-progress::before{
	-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 20V4"/><path d="M4 20h16"/><path d="M7.5 16.5v-3M12 16.5v-6M16.5 16.5v-4"/><path d="M14 6.5l3-3 3 3"/><path d="M17 3.5V9"/></svg>');
	        mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 20V4"/><path d="M4 20h16"/><path d="M7.5 16.5v-3M12 16.5v-6M16.5 16.5v-4"/><path d="M14 6.5l3-3 3 3"/><path d="M17 3.5V9"/></svg>');
}

/* ── STEP ラベル ── */
.page-id-107633 .mn-tutoring-step-label{
	display:inline-block;margin:0 0 10px!important;padding:4px 10px;border-radius:5px;
	background:#3B82B6;color:#fff!important;font-size:11.5px!important;font-weight:700;
	letter-spacing:.06em;line-height:1.4;
}
.page-id-107633 .dbp-id-mp-flow h3.wp-block-heading{font-size:16px!important;margin:0 0 8px!important;line-height:1.5;}
.page-id-107633 .dbp-id-mp-flow p:not(.mn-tutoring-step-label){font-size:14px;line-height:1.75;margin:0!important;}
.page-id-107633 .mn-tutoring-flow-note{
	margin-top:18px!important;padding:14px 18px;background:#f6f9fd;
	border:1px solid #DCE6F0;border-radius:10px;
	font-size:14.5px;line-height:1.7;color:#3f4f63!important;text-align:center;
}

/* ── 料金カード ── */
.page-id-107633 .mtu-planname,.page-id-107635 .mtu-planname{
	font-size:16px!important;font-weight:700;color:#245A8D!important;margin:0 0 6px!important;
}
.page-id-107633 .mtu-planprice,.page-id-107635 .mtu-planprice{
	font-size:32px!important;font-weight:700;color:#245A8D!important;line-height:1.2;margin:0 0 6px!important;
}
.page-id-107633 .mtu-planprice small,.page-id-107635 .mtu-planprice small{font-size:14px;font-weight:600;color:#5c6b80;}
.page-id-107633 .mtu-planmeta,.page-id-107635 .mtu-planmeta{font-size:13.5px;color:#5c6b80!important;margin:0 0 10px!important;}
.page-id-107633 .mn-tutoring-plan-rec::before{
	content:"おすすめ";display:inline-block;vertical-align:middle;margin-right:8px;
	padding:3px 9px;border-radius:4px;background:#3B82B6;color:#fff;
	font-size:11px;font-weight:700;letter-spacing:.04em;line-height:1.4;
}

/* ── 比較表 ── */
.page-id-107635 .mn-tutoring-compare{margin:24px 0 28px;overflow-x:auto;}
.page-id-107635 .mn-tutoring-compare table{
	width:100%;border-collapse:collapse;background:#fff;
	border:1px solid #DCE6F0;border-radius:12px;overflow:hidden;font-size:14.5px;
}
.page-id-107635 .mn-tutoring-compare table thead th{
	background:#3B82B6!important;color:#fff!important;border:none!important;
	padding:13px 14px;text-align:left;font-weight:700;
}
.page-id-107635 .mn-tutoring-compare table thead th:first-child{background:#24488c!important;width:104px;}
.page-id-107635 .mn-tutoring-compare table tbody th{
	background:#EEF6FC!important;color:#245A8D!important;font-weight:700;
	padding:13px 14px;text-align:left;white-space:nowrap;
	border-top:1px solid #DCE6F0;border-right:1px solid #DCE6F0;
}
.page-id-107635 .mn-tutoring-compare table tbody td{
	background:#fff!important;padding:13px 14px;color:#245A8D;line-height:1.7;
	border-top:1px solid #DCE6F0;border-right:1px solid #DCE6F0;
}
.page-id-107635 .mn-tutoring-compare table tbody td:last-child{border-right:none;}

/* ── 料金直後CTA ── */
.page-id-107633 .mn-tutoring-price-cta,
.page-id-107635 .mn-tutoring-price-cta{
	margin:26px auto 8px;padding:24px 20px;background:#EEF6FC;
	border:1px solid #d7e2f2;border-radius:14px;text-align:center;
}
.page-id-107633 .mn-tutoring-price-cta .mtu-supp,
.page-id-107635 .mn-tutoring-price-cta .mtu-supp{
	text-align:center;margin:0 0 16px!important;font-size:15.5px;color:#245A8D!important;
}

/* ── 補足ボックス / 最終CTA帯 ── */
.page-id-107633 .mtu-widebox,.page-id-107635 .mtu-widebox{
	background:#f6f9fd;border:1px solid #DCE6F0;border-radius:12px;padding:20px 22px;margin:18px 0 26px;
}
.page-id-107633 .mtu-widebox .mtu-supp,.page-id-107635 .mtu-widebox .mtu-supp{margin:0!important;font-size:15px;line-height:1.85;}
.page-id-107633 .mtu-finalbox,.page-id-107635 .mtu-finalbox{color:#fff;text-align:center;}
.page-id-107633 .mtu-finalbox h2.msm-hero-h2,.page-id-107635 .mtu-finalbox h2.msm-hero-h2{
	color:#fff!important;text-align:center;font-size:28px!important;margin:0 0 14px!important;
}
.page-id-107633 .mtu-final-lead,.page-id-107635 .mtu-final-lead{
	color:#4F5A6B!important;text-align:center;font-size:16.5px!important;max-width:760px;margin:0 auto 24px!important;
}
.page-id-107633 .mtu-finalbox .mtu-cta-note,.page-id-107635 .mtu-finalbox .mtu-cta-note{color:#4F5A6B!important;}
.page-id-107633 .mtu-finalbox .dbp-button-link.is-style-fill,
.page-id-107635 .mtu-finalbox .dbp-button-link.is-style-fill{background:#3B82B6!important;color:#fff!important;}
.page-id-107633 .mtu-footnote,.page-id-107635 .mtu-footnote{
	font-size:14px;color:#5c6b80!important;text-align:center;margin-top:24px!important;
}

@media (max-width:600px){
	.page-id-107633 .mtu-hero-wrap,.page-id-107635 .mtu-hero-wrap{padding:22px 18px;}
	.page-id-107633 .dbp-id-mp-mats,.page-id-107633 .dbp-id-mp-teach,
	.page-id-107635 .dbp-id-it-teach{grid-template-columns:1fr!important;}
	.page-id-107635 .mn-tutoring-compare table{font-size:13px;}
	.page-id-107635 .mn-tutoring-compare table thead th:first-child{width:70px;}
}

/* ── 修正: STEPラベル/流れカードを短期集中(107635)にも適用 ── */
.page-id-107635 .mn-tutoring-step-label{
	display:inline-block;margin:0 0 10px!important;padding:4px 10px;border-radius:5px;
	background:#3B82B6;color:#fff!important;font-size:11.5px!important;font-weight:700;
	letter-spacing:.06em;line-height:1.4;
}
.page-id-107635 .dbp-id-it-flow>.dbp-column-item,
.page-id-107635 .dbp-id-it-value>.dbp-column-item{display:flex;}
.page-id-107635 .dbp-id-it-flow h3.wp-block-heading{font-size:16px!important;margin:0 0 8px!important;line-height:1.5;}
.page-id-107635 .dbp-id-it-flow p:not(.mn-tutoring-step-label){font-size:14px;line-height:1.75;margin:0!important;}
@media (max-width:600px){
	.page-id-107635 .dbp-id-it-flow,.page-id-107635 .dbp-id-it-value,
	.page-id-107633 .dbp-id-mp-why,.page-id-107633 .dbp-id-mp-manage{grid-template-columns:1fr!important;}
}

/* ── Phase 6: /tutor-trial/(3864) の STEP カード ── */
.page-id-3864 .dbp-id-tt-step>.dbp-column-item{display:flex;}
.page-id-3864 .dbp-id-tt-step .dbp-card{width:100%;}
.page-id-3864 .mn-tutoring-step-label{
	display:inline-block;margin:0 0 10px!important;padding:4px 10px;border-radius:5px;
	background:#3B82B6;color:#fff!important;font-size:11.5px!important;font-weight:700;
	letter-spacing:.06em;line-height:1.4;
}
.page-id-3864 .dbp-id-tt-step h3.wp-block-heading{font-size:16px!important;margin:0 0 8px!important;line-height:1.5;}
.page-id-3864 .dbp-id-tt-step p:not(.mn-tutoring-step-label){font-size:14px;line-height:1.75;margin:0!important;}

/* ── Phase 6: 月額のプラン選択ガイド ── */
.page-id-107633 .dbp-id-mp-guide>.dbp-column-item{display:flex;}
.page-id-107633 .dbp-id-mp-guide h3.wp-block-heading{
	font-size:16px!important;margin:0 0 10px!important;line-height:1.5;
	padding-bottom:9px;border-bottom:2px solid #DCE6F0;color:#245A8D;
}
/* ── Phase 6: 短期集中の相談前確認カード ── */
.page-id-107635 .dbp-id-it-consult>.dbp-column-item{display:flex;}
.page-id-107635 .dbp-id-it-consult h3.wp-block-heading{font-size:15.5px!important;margin:0 0 8px!important;line-height:1.5;}
.page-id-107635 .dbp-id-it-consult p{font-size:14px;line-height:1.75;margin:0!important;}
@media (max-width:600px){
	.page-id-3864 .dbp-id-tt-step,.page-id-107633 .dbp-id-mp-guide,
	.page-id-107635 .dbp-id-it-consult{grid-template-columns:1fr!important;}
}

/* ═══════════════════════════════════════════════════════════════
   トップページ (ID84) Phase 7 (2026-07-19)
   ═══════════════════════════════════════════════════════════════ */
.home .mn-top-list{list-style:none!important;padding-left:0!important;margin:0 0 1em!important;}
.home .mn-top-list>li{position:relative;list-style:none!important;}
.home .mn-top-list-check>li{padding-left:1.75em;margin:0 0 .55em;line-height:1.75;}
.home .mn-top-list-check>li::before{
	content:"";position:absolute;left:0;top:.42em;width:1.15em;height:1.15em;
	border-radius:50%;background:#e8effa;box-sizing:border-box;
}
.home .mn-top-list-check>li::after{
	content:"";position:absolute;left:.4em;top:.68em;width:.28em;height:.52em;
	border-right:2px solid #3B82B6;border-bottom:2px solid #3B82B6;
	transform:rotate(45deg);box-sizing:border-box;
}
/* FV */
.home .mn-top-hero{
	background:#EEF6FC;border:1px solid #DCE6F0;border-radius:16px;
	padding:36px 32px;margin-bottom:48px;
}
.home .mn-top-label{
	display:inline-block;margin:0 0 14px!important;padding:6px 15px;border-radius:999px;
	background:#3B82B6;color:#fff!important;font-size:13px!important;font-weight:700;line-height:1.5;
}
.home .mn-top-lead{font-size:17.5px!important;line-height:1.95;color:#245A8D!important;margin:0 0 20px!important;}
/* FVタグ（ピル型・横並び） */
.home .mn-top-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px!important;}
.home .mn-top-tags>li{
	display:inline-flex;align-items:center;padding:7px 14px 7px 30px;
	background:#fff;border:1px solid #d2ddef;border-radius:999px;
	font-size:13.5px;line-height:1.5;color:#23385c;font-weight:600;
	white-space:normal;max-width:100%;box-sizing:border-box;margin:0;
}
.home .mn-top-tags>li::before{
	content:"";position:absolute;left:9px;top:50%;width:14px;height:14px;margin-top:-7px;
	border-radius:50%;background:#3B82B6;box-sizing:border-box;
}
.home .mn-top-tags>li::after{
	content:"";position:absolute;left:13.6px;top:50%;width:3.6px;height:7px;margin-top:-4.8px;
	border-right:2px solid #fff;border-bottom:2px solid #fff;
	transform:rotate(45deg);box-sizing:border-box;
}
/* CTA 2ボタン横並び */
.home .mn-top-btnrow{display:flex;flex-wrap:wrap;gap:14px;justify-content:flex-start;align-items:center;}
.home .mn-top-btnrow .dbp-button{margin:0!important;}
.home .mn-top-cta-note{font-size:13.5px;color:#5c6b80!important;margin:14px 0 0!important;line-height:1.8;}
/* 実績 */
.home .dbp-id-top-res>.dbp-column-item{text-align:center;}
.home .mtu-rnum{font-size:46px!important;font-weight:700;color:#245A8D!important;line-height:1.1;margin:0 0 6px!important;}
.home .mtu-rnum span{font-size:18px;margin-left:3px;}
.home .mtu-rlabel{font-size:16px!important;font-weight:700;color:#245A8D!important;margin:0 0 4px!important;}
.home .mtu-rnote{font-size:13px;color:#6e7d92!important;margin:0!important;}
.home .mtu-note{font-size:13.5px;color:#6e7d92!important;text-align:center;margin:12px 0 26px!important;}
.home .dbp-id-top-res2>.dbp-column-item,
.home .dbp-id-top-why>.dbp-column-item,
.home .dbp-id-top-svc>.dbp-column-item,
.home .dbp-id-top-exam>.dbp-column-item,
.home .dbp-id-top-other>.dbp-column-item{display:flex;}
.home .dbp-id-top-res2 .dbp-card,.home .dbp-id-top-why .dbp-card,
.home .dbp-id-top-svc .dbp-card,.home .dbp-id-top-exam .dbp-card,
.home .dbp-id-top-other .dbp-card{width:100%;}
.home .dbp-id-top-res2 h3.wp-block-heading{font-size:15.5px!important;margin:0 0 8px!important;line-height:1.5;color:#245A8D;}
.home .dbp-id-top-svc h3.wp-block-heading,
.home .dbp-id-top-exam h3.wp-block-heading,
.home .dbp-id-top-other h3.wp-block-heading{
	font-size:17px!important;margin:0 0 10px!important;line-height:1.5;
	padding-left:12px;border-left:3px solid #3B82B6;
}
/* サービス/入試カード: リンクを下端で揃える */
.home .dbp-id-top-svc .dbp-card__inner,
.home .dbp-id-top-exam .dbp-card__inner,
.home .dbp-id-top-other .dbp-card__inner{display:flex;flex-direction:column;width:100%;}
.home .dbp-id-top-svc .msm-nav-link,
.home .dbp-id-top-exam .msm-nav-link,
.home .dbp-id-top-other .msm-nav-link{margin-top:auto!important;padding-top:12px;}
/* テキストリンク */
.home .mn-top-text-link{
	display:inline-flex;align-items:center;gap:6px;text-decoration:none!important;
	color:#245A8D!important;font-weight:700;font-size:14.5px;
	padding-bottom:4px;border-bottom:1.5px solid #b9cae6;
	transition:color .18s ease,border-color .18s ease;
}
.home .mn-top-text-link::after{content:"→";display:inline-block;font-size:1.05em;line-height:1;transition:transform .18s ease;}
.home .mn-top-text-link:hover{color:#245A8D!important;border-bottom-color:#3B82B6;}
.home .mn-top-text-link:hover::after{transform:translateX(3px);}
/* 最終CTA帯 */
.home .mn-top-finalbox{color:#fff;text-align:center;}
.home .mn-top-finalbox h2.msm-hero-h2{color:#fff!important;text-align:center;font-size:28px!important;margin:0 0 14px!important;}
.home .mn-top-final-lead{color:#e3ecf6!important;text-align:center;font-size:16.5px!important;max-width:760px;margin:0 auto 24px!important;}
.home .mn-top-finalbox .mn-top-cta-note{color:#D8E7F5!important;text-align:center;}
.home .mn-top-finalbox .dbp-button-link.is-style-fill{background:#3B82B6!important;color:#fff!important;}

@media (max-width:600px){
	.home .mn-top-hero{padding:24px 18px;}
	.home .mn-top-lead{font-size:16px!important;}
	.home .mn-top-tags>li{font-size:12.5px;padding:6px 12px 6px 28px;}
	.home .mn-top-btnrow{flex-direction:column;align-items:stretch;}
	.home .mtu-rnum{font-size:38px!important;}
	.home .dbp-id-top-res2,.home .dbp-id-top-svc,
	.home .dbp-id-top-exam,.home .dbp-id-top-other{grid-template-columns:1fr!important;}
}

/* ── トップ H1 ── */
.home .mn-top-h1{
	font-size:34px!important;font-weight:700;line-height:1.5;
	color:#172033!important;margin:0 0 16px!important;letter-spacing:.01em;
}
@media (max-width:600px){
	.home .mn-top-h1{font-size:24px!important;line-height:1.55;}
}

/* ═══════════════════════════════════════════════════════════════
   大学別ページ (medschool CPT) SEO入口強化 (2026-07-19)
   ═══════════════════════════════════════════════════════════════ */
.single-medschool .mn-uni-list{list-style:none!important;padding-left:0!important;margin:0 0 1.2em!important;}
.single-medschool .mn-uni-list>li{position:relative;padding-left:1.75em;margin:0 0 .6em;line-height:1.85;list-style:none!important;}
.single-medschool .mn-uni-list-check>li::before{
	content:"";position:absolute;left:0;top:.45em;width:1.15em;height:1.15em;
	border-radius:50%;background:#e8effa;box-sizing:border-box;
}
.single-medschool .mn-uni-list-check>li::after{
	content:"";position:absolute;left:.4em;top:.71em;width:.28em;height:.52em;
	border-right:2px solid #3B82B6;border-bottom:2px solid #3B82B6;
	transform:rotate(45deg);box-sizing:border-box;
}
/* 注記 */
.single-medschool .mn-uni-note{
	font-size:13.5px;line-height:1.85;color:#5c6b80!important;
	background:#f6f9fd;border:1px solid #DCE6F0;border-radius:10px;
	padding:14px 16px;margin:16px 0 0!important;
}
/* 関連サービスのリンクカード */
.single-medschool .mn-uni-cards{gap:20px;margin:20px 0 8px;}
.single-medschool .mn-uni-linkcard{
	height:100%;background:#fff;border:1px solid #DCE6F0;border-radius:14px;
	padding:22px 22px 20px;display:flex;flex-direction:column;
}
.single-medschool .mn-uni-linkcard h3.wp-block-heading{
	font-size:17px!important;margin:0 0 10px!important;line-height:1.5;
	padding-left:12px;border-left:3px solid #3B82B6;color:#245A8D;
}
.single-medschool .mn-uni-linkcard p{font-size:14.5px;line-height:1.85;margin:0!important;}
.single-medschool .mn-uni-linkrow{margin-top:auto!important;padding-top:14px!important;}
.single-medschool .mn-uni-link{
	display:inline-flex;align-items:center;gap:6px;text-decoration:none!important;
	color:#245A8D!important;font-weight:700;font-size:14.5px;
	padding-bottom:4px;border-bottom:1.5px solid #b9cae6;
	transition:color .18s ease,border-color .18s ease;
}
.single-medschool .mn-uni-link::after{content:"→";display:inline-block;font-size:1.05em;line-height:1;transition:transform .18s ease;}
.single-medschool .mn-uni-link:hover{color:#245A8D!important;border-bottom-color:#3B82B6;}
.single-medschool .mn-uni-link:hover::after{transform:translateX(3px);}

@media (max-width:600px){
	.single-medschool .mn-uni-cards{gap:14px;}
	.single-medschool .mn-uni-linkcard{padding:18px 16px;}
}


/* ==========================================================================
   トップページ Phase2: FV 2カラム化 + 合格実績バッジ（scope: .home）
   ========================================================================== */
.home{
  --mn-navy:#245A8D;
  --mn-blue:#2F6FAE;
  --mn-gold:#CFE3F5;
  --mn-line:#e3ebf4;
}

/* ---- FV ---- */
.home .mn-top-hero{
  background:linear-gradient(180deg,#f6fafd 0%,#ffffff 78%);
  border-radius:22px;
  padding:clamp(26px,4vw,58px) clamp(18px,3vw,44px);
  margin-bottom:clamp(38px,6vw,68px);
}
.home .mn-top-hero-2col{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:clamp(24px,4vw,56px);
  align-items:center;
  max-width:1120px;
  margin-inline:auto;
}
.home .mn-top-hero-copy{ text-align:left; }

.home .mn-top-label{
  display:inline-block;
  margin:0 0 18px;
  padding:6px 15px;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.08em;
  color:var(--mn-blue);
  background:#eaf2fb;
  border-radius:999px;
}
.home .mn-top-h1{
  margin:0 0 16px;
  font-size:clamp(1.45rem,2.9vw,2.1rem);
  font-weight:800;
  line-height:1.46;
  letter-spacing:.01em;
  color:var(--mn-navy);
}
.home .mn-top-h1::after{
  content:"";
  display:block;
  width:58px;
  height:4px;
  margin-top:18px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--mn-gold),#e8d391);
}
.home .mn-top-lead{
  margin:0 0 22px;
  font-size:clamp(.92rem,1.1vw,1.01rem);
  line-height:1.95;
  color:#41505f;
}

/* チェックリスト（アイコンフォント不使用・CSS描画） */
.home .mn-top-tags{
  list-style:none;
  margin:0 0 26px;
  padding:0;
  display:grid;
  gap:11px;
}
.home .mn-top-tags li{
  position:relative;
  padding-left:30px;
  font-size:.95rem;
  font-weight:600;
  line-height:1.65;
  color:var(--mn-navy);
}
.home .mn-top-tags li::before{
  content:"";
  position:absolute;
  left:0;
  top:.3em;
  width:19px;
  height:19px;
  border-radius:50%;
  background:var(--mn-blue);
}
.home .mn-top-tags li::after{
  content:"";
  position:absolute;
  left:6.5px;
  top:.58em;
  width:5px;
  height:9px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}

.home .mn-top-btnrow{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:flex-start;
  margin:0 0 14px;
}
.home .mn-top-btnrow .dbp-button{ margin:0; }
.home .mn-top-cta-note{
  margin:0;
  font-size:.81rem;
  line-height:1.75;
  color:#6b7a89;
}

/* ---- FV ビジュアル ---- */
.home .mn-top-hero-visual{ position:relative; }
.home .mn-top-hero-img{
  margin:0;
  border:1px solid var(--mn-line);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 44px rgba(15,42,74,.15);
}
.home .mn-top-hero-img img{
  display:block;
  width:100%;
  height:auto;
}
.home .mn-top-hero-badge{
  position:absolute;
  left:-12px;
  bottom:-16px;
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:0;
  padding:12px 18px;
  border-radius:12px;
  border-left:4px solid var(--mn-gold);
  background:var(--mn-navy);
  color:#fff;
  box-shadow:0 12px 28px rgba(15,42,74,.26);
}
.home .mn-top-badge-k{
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.1em;
  color:#a9c6e6;
}
.home .mn-top-badge-v{
  font-size:1rem;
  font-weight:800;
  line-height:1.4;
}

/* ---- 合格実績バッジ ---- */
.home .mn-top-h2{
  max-width:1120px;
  margin:0 auto 22px;
  font-size:clamp(1.25rem,2.2vw,1.7rem);
  font-weight:800;
  color:var(--mn-navy);
  text-align:center;
}
.home .mn-top-stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  max-width:1120px;
  margin:0 auto 16px;
}
.home .mn-top-stat{
  padding:26px 16px 22px;
  text-align:center;
  background:#fff;
  border:1px solid var(--mn-line);
  border-top:4px solid var(--mn-blue);
  border-radius:14px;
  box-shadow:0 6px 18px rgba(15,42,74,.06);
}
.home .mn-top-stat:nth-child(4){ border-top-color:var(--mn-gold); }
.home .mn-top-stat-fig{
  margin:0 0 8px;
  line-height:1;
  color:var(--mn-navy);
}
.home .mn-top-stat-num{
  font-size:clamp(2.3rem,4.8vw,3.3rem);
  font-weight:800;
  letter-spacing:-.02em;
}
.home .mn-top-stat-unit{
  margin-left:3px;
  font-size:1.05rem;
  font-weight:700;
}
.home .mn-top-stat-label{
  margin:0 0 5px;
  font-size:.94rem;
  font-weight:700;
  line-height:1.5;
  color:var(--mn-navy);
}
.home .mn-top-stat-sub{
  margin:0;
  font-size:.74rem;
  line-height:1.6;
  color:#7a8794;
}
.home .mn-top-stats-note{
  max-width:1120px;
  margin:0 auto 30px;
  font-size:.79rem;
  line-height:1.75;
  color:#6b7a89;
}
.home .mn-top-facts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  max-width:1120px;
  margin-inline:auto;
}
.home .mn-top-fact{
  padding:22px 20px;
  background:#F8FAFC;
  border:1px solid #e8eff6;
  border-radius:14px;
}
.home .mn-top-fact-t{
  margin:0 0 8px;
  font-size:1rem;
  font-weight:700;
  line-height:1.55;
  color:var(--mn-navy);
}
.home .mn-top-fact p{
  margin:0;
  font-size:.87rem;
  line-height:1.85;
  color:#4a5866;
}

/* ---- レスポンシブ ---- */
@media (max-width:900px){
  .home .mn-top-hero-2col{
    grid-template-columns:1fr;
    gap:32px;
  }
  .home .mn-top-hero-badge{
    left:auto;
    right:10px;
    bottom:-14px;
  }
  .home .mn-top-stats{ grid-template-columns:repeat(2,1fr); }
  .home .mn-top-facts{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .home .mn-top-hero{ padding:24px 16px 30px; }
  .home .mn-top-h1{ line-height:1.5; }
  .home .mn-top-btnrow{
    flex-direction:column;
    align-items:stretch;
  }
  .home .mn-top-btnrow .dbp-button-link{
    display:block;
    text-align:center;
  }
  .home .mn-top-stat{ padding:20px 10px 18px; }
  .home .mn-top-stat-sub{ font-size:.7rem; }
}


/* ==========================================================================
   トップページ Phase3-1: mirunoteが選ばれる理由（scope: .home）
   アイコンは mask-image で描画。アイコンフォント／Google Symbols 不使用。
   ========================================================================== */

.home .mn-why-lead{
  max-width:820px;
  margin:0 auto 30px;
  font-size:clamp(.9rem,1.1vw,1rem);
  line-height:1.9;
  color:#4a5866;
  text-align:center;
}
.home .mn-why-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  max-width:1120px;
  margin:0 auto clamp(38px,6vw,64px);
}
.home .mn-why-card{
  position:relative;
  padding:26px 24px 24px 74px;
  background:#fff;
  border:1px solid var(--mn-line);
  border-radius:16px;
  box-shadow:0 4px 14px rgba(15,42,74,.05);
  transition:box-shadow .25s ease,transform .25s ease;
}
.home .mn-why-card:hover{
  box-shadow:0 10px 26px rgba(15,42,74,.10);
  transform:translateY(-2px);
}
.home .mn-why-num{
  position:absolute;
  left:24px;
  top:26px;
  margin:0;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.06em;
  color:var(--mn-blue);
}
.home .mn-why-num::after{
  content:"";
  display:block;
  width:26px;
  height:2px;
  margin-top:7px;
  border-radius:1px;
  background:linear-gradient(90deg,var(--mn-gold),#e8d391);
}
.home .mn-why-card::before{
  content:"";
  position:absolute;
  left:22px;
  top:64px;
  width:30px;
  height:30px;
  background:var(--mn-navy);
  opacity:.88;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-position:center;
  mask-position:center;
}
.home .mn-why-t{
  margin:0 0 9px;
  font-size:1rem;
  font-weight:700;
  line-height:1.55;
  color:var(--mn-navy);
}
.home .mn-why-d{
  margin:0;
  font-size:.87rem;
  line-height:1.9;
  color:#4a5866;
}
.home .mn-why-teacher::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%204%202%209l10%205%2010-5-10-5Z%22%2F%3E%3Cpath%20d%3D%22M6%2011.5V16c0%201.7%202.7%203%206%203s6-1.3%206-3v-4.5%22%2F%3E%3Cpath%20d%3D%22M22%209v5%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%204%202%209l10%205%2010-5-10-5Z%22%2F%3E%3Cpath%20d%3D%22M6%2011.5V16c0%201.7%202.7%203%206%203s6-1.3%206-3v-4.5%22%2F%3E%3Cpath%20d%3D%22M22%209v5%22%2F%3E%3C%2Fsvg%3E");}
.home .mn-why-univ::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2021h18%22%2F%3E%3Cpath%20d%3D%22M12%203%203%208h18l-9-5Z%22%2F%3E%3Cpath%20d%3D%22M5%2021V11%22%2F%3E%3Cpath%20d%3D%22M10%2021V11%22%2F%3E%3Cpath%20d%3D%22M14%2021V11%22%2F%3E%3Cpath%20d%3D%22M19%2021V11%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2021h18%22%2F%3E%3Cpath%20d%3D%22M12%203%203%208h18l-9-5Z%22%2F%3E%3Cpath%20d%3D%22M5%2021V11%22%2F%3E%3Cpath%20d%3D%22M10%2021V11%22%2F%3E%3Cpath%20d%3D%22M14%2021V11%22%2F%3E%3Cpath%20d%3D%22M19%2021V11%22%2F%3E%3C%2Fsvg%3E");}
.home .mn-why-solve::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228.5%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224.5%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228.5%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224.5%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221%22%2F%3E%3C%2Fsvg%3E");}
.home .mn-why-plan::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222.5%22%2F%3E%3Cpath%20d%3D%22M3%2010h18%22%2F%3E%3Cpath%20d%3D%22M8%203v4%22%2F%3E%3Cpath%20d%3D%22M16%203v4%22%2F%3E%3Cpath%20d%3D%22m8.5%2015.5%202.5%202.5%204.5-4.5%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222.5%22%2F%3E%3Cpath%20d%3D%22M3%2010h18%22%2F%3E%3Cpath%20d%3D%22M8%203v4%22%2F%3E%3Cpath%20d%3D%22M16%203v4%22%2F%3E%3Cpath%20d%3D%22m8.5%2015.5%202.5%202.5%204.5-4.5%22%2F%3E%3C%2Fsvg%3E");}
.home .mn-why-online::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222.5%22%20y%3D%224%22%20width%3D%2219%22%20height%3D%2213%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2021h8%22%2F%3E%3Cpath%20d%3D%22M12%2017v4%22%2F%3E%3Cpath%20d%3D%22M7%209.5h6%22%2F%3E%3Cpath%20d%3D%22M7%2012.5h4%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222.5%22%20y%3D%224%22%20width%3D%2219%22%20height%3D%2213%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2021h8%22%2F%3E%3Cpath%20d%3D%22M12%2017v4%22%2F%3E%3Cpath%20d%3D%22M7%209.5h6%22%2F%3E%3Cpath%20d%3D%22M7%2012.5h4%22%2F%3E%3C%2Fsvg%3E");}

@media (max-width:900px){
  .home .mn-why-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .home .mn-why-grid{ grid-template-columns:1fr; }
  .home .mn-why-card{ padding:22px 20px 20px 66px; }
  .home .mn-why-card::before{ top:58px; }
}


/* ==========================================================================
   トップページ ブランドリデザイン（scope: .home）
   Deep Navy #245A8D / Medical Blue #3B82B6 / Gold #CFE3F5 / White
   カード羅列を避け、余白と階層で情報を見せる。アイコンフォント不使用。
   ========================================================================== */
.home{
  --mn-navy:#245A8D;
  --mn-blue:#2F6FAE;
  --mn-gold:#CFE3F5;
  --mn-line:#e2e9f1;
  --mn-ink:#3d4b5a;
}

/* ---- 共通 ---- */
.home .mn-b-lead{
  max-width:760px;
  margin:0 auto 34px;
  font-size:clamp(.92rem,1.1vw,1.02rem);
  line-height:2;
  color:var(--mn-ink);
  text-align:center;
}
.home .mn-b-linkrow{ margin:14px 0 0; }
.home .mn-b-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-size:.86rem;
  font-weight:700;
  color:var(--mn-blue);
  text-decoration:none;
  border-bottom:1px solid rgba(23,105,170,.28);
  padding-bottom:2px;
  transition:color .2s ease,border-color .2s ease;
}
.home .mn-b-link::after{
  content:"";
  width:14px;
  height:1.5px;
  background:currentColor;
  position:relative;
  transition:transform .2s ease;
}
.home .mn-b-link:hover{ color:var(--mn-navy); border-color:var(--mn-navy); }
.home .mn-b-link:hover::after{ transform:translateX(3px); }

/* ---- サービス3領域 ---- */
.home .mn-svc{
  max-width:1120px;
  margin:0 auto 26px;
  padding:clamp(26px,3.4vw,44px) clamp(20px,3vw,44px);
  background:#fff;
  border:1px solid var(--mn-line);
  border-left:5px solid var(--mn-navy);
  border-radius:16px;
}
.home .mn-svc ~ .mn-svc{ border-left-color:var(--mn-blue); }
.home .mn-svc ~ .mn-svc ~ .mn-svc{ border-left-color:var(--mn-gold); }
.home .mn-svc-label{
  margin:0 0 10px;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.16em;
  color:var(--mn-blue);
}
.home .mn-svc-t{
  margin:0 0 12px;
  font-size:clamp(1.2rem,2vw,1.6rem);
  font-weight:800;
  line-height:1.5;
  color:var(--mn-navy);
}
.home .mn-svc-d{
  margin:0 0 26px;
  font-size:.94rem;
  line-height:1.95;
  color:var(--mn-ink);
  max-width:660px;
}
.home .mn-svc-items{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:24px;
  padding-top:24px;
  border-top:1px solid var(--mn-line);
}
.home .mn-svc-it{
  margin:0 0 8px;
  font-size:.98rem;
  font-weight:700;
  line-height:1.5;
  color:var(--mn-navy);
}
.home .mn-svc-id{
  margin:0;
  font-size:.85rem;
  line-height:1.9;
  color:var(--mn-ink);
}

/* ---- 選ばれる理由（ストーリー） ---- */
.home .mn-story{
  max-width:920px;
  margin:0 auto clamp(40px,6vw,72px);
}
.home .mn-story-row{
  display:grid;
  grid-template-columns:86px 1fr;
  gap:8px;
  padding:32px 0;
  border-top:1px solid var(--mn-line);
}
.home .mn-story-row:last-child{ border-bottom:1px solid var(--mn-line); }
.home .mn-story-num{
  margin:0;
  font-size:1.5rem;
  font-weight:800;
  line-height:1.2;
  color:var(--mn-gold);
  letter-spacing:.02em;
}
.home .mn-story-t{
  margin:0 0 12px;
  font-size:clamp(1.02rem,1.7vw,1.28rem);
  font-weight:800;
  line-height:1.6;
  color:var(--mn-navy);
}
.home .mn-story-d{
  margin:0;
  font-size:.92rem;
  line-height:2.05;
  color:var(--mn-ink);
}

/* ---- 対応する入試と大学 ---- */
.home .mn-exam-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  max-width:1120px;
  margin:0 auto 46px;
}
.home .mn-exam{
  padding:26px 24px;
  background:#F8FAFC;
  border:1px solid var(--mn-line);
  border-radius:14px;
}
.home .mn-exam-t{
  margin:0 0 10px;
  font-size:1.02rem;
  font-weight:700;
  line-height:1.5;
  color:var(--mn-navy);
}
.home .mn-exam-d{
  margin:0;
  font-size:.86rem;
  line-height:1.9;
  color:var(--mn-ink);
}
.home .mn-uni-cap{
  max-width:1120px;
  margin:0 auto 14px;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--mn-blue);
}
.home .mn-uni-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:12px;
  max-width:1120px;
  margin:0 auto;
}
.home .mn-uni-cell{ margin:0; }
.home .mn-uni-item{
  display:flex;
  flex-direction:column;
  gap:5px;
  height:100%;
  padding:20px 18px;
  background:#fff;
  border:1px solid var(--mn-line);
  border-radius:12px;
  text-decoration:none;
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.home .mn-uni-item:hover{
  border-color:var(--mn-blue);
  box-shadow:0 10px 24px rgba(11,31,58,.09);
  transform:translateY(-2px);
}
.home .mn-uni-en{
  font-size:.92rem;
  font-weight:700;
  line-height:1.45;
  color:var(--mn-navy);
}
.home .mn-uni-ja{
  font-size:.76rem;
  line-height:1.6;
  color:#7a8794;
}

/* ---- mirunoteについて ---- */
.home .mn-about{
  max-width:1120px;
  margin:clamp(40px,6vw,68px) auto;
  padding:clamp(28px,4vw,48px);
  background:#F8FAFC;
  border-radius:18px;
}
.home .mn-about-h{
  margin:0 0 14px;
  font-size:clamp(1.1rem,1.8vw,1.4rem);
  font-weight:800;
  color:var(--mn-navy);
  text-align:center;
}
.home .mn-about-d{
  max-width:820px;
  margin:0 auto;
  font-size:.89rem;
  line-height:2.1;
  color:var(--mn-ink);
}

/* ---- 最終CTA ---- */
.home .mn-final{
  max-width:1120px;
  margin:clamp(44px,6vw,76px) auto 0;
  padding:clamp(38px,5vw,64px) clamp(22px,4vw,48px);
  text-align:center;
  background:linear-gradient(160deg,var(--mn-navy) 0%,#245A8D 100%);
  border-radius:20px;
}
.home .mn-final-k{
  margin:0 0 12px;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.2em;
  color:var(--mn-gold);
}
.home .mn-final-h{
  margin:0 0 14px;
  font-size:clamp(1.2rem,2.4vw,1.85rem);
  font-weight:800;
  line-height:1.6;
  color:#fff;
}
.home .mn-final-d{
  max-width:640px;
  margin:0 auto 26px;
  font-size:.9rem;
  line-height:1.95;
  color:#c6d7e8;
}
.home .mn-final-btn{ margin:0 0 12px; }
.home .mn-final-btn .dbp-button{ margin:0; }
.home .mn-final-btn .dbp-button-link{
  background:var(--mn-gold) !important;
  color:var(--mn-navy) !important;
  font-weight:800;
}
.home .mn-final-note{
  margin:0;
  font-size:.78rem;
  color:#a9c0d6;
}

/* ---- レスポンシブ ---- */
@media (max-width:900px){
  .home .mn-exam-grid{ grid-template-columns:1fr; }
  .home .mn-story-row{
    grid-template-columns:1fr;
    gap:4px;
    padding:26px 0;
  }
  .home .mn-story-num{ font-size:1.15rem; }
}
@media (max-width:560px){
  .home .mn-svc{
    padding:24px 18px;
    border-left-width:4px;
  }
  .home .mn-svc-items{ gap:20px; }
  .home .mn-uni-grid{ grid-template-columns:1fr; }
  .home .mn-final{ padding:32px 18px; }
}


/* ==========================================================================
   トップページ Final Brand Redesign（scope: .home）
   余白を大きく取り、情報を詰め込まない。海外大学公式サイトの階層設計に寄せる。
   ========================================================================== */
.home{ --mn-bg:#F8FAFC; }

/* セクション間の余白 120〜160px */
.home .mn-top-h2{
  margin-top:clamp(76px,10vw,160px) !important;
  margin-bottom:clamp(26px,3vw,44px) !important;
  font-size:clamp(1.35rem,2.6vw,2.05rem) !important;
  letter-spacing:.01em;
}
.home .mn-top-hero + .mn-top-h2{ margin-top:clamp(56px,7vw,110px) !important; }

/* ---- FV：画像＋バッジ＋進学ルート ---- */
.home .mn-route{
  margin:0 0 12px;
  text-align:center;
}
.home .mn-route-k{
  display:inline-block;
  padding-bottom:22px;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.16em;
  color:var(--mn-blue);
  position:relative;
}
.home .mn-route-k::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:1px;
  height:16px;
  background:linear-gradient(180deg,var(--mn-gold),rgba(201,162,39,0));
}
.home .mn-top-hero-img img{
  aspect-ratio:16 / 9;
  object-fit:cover;
  object-position:70% center;
}
.home .mn-top-hero-badge{
  left:auto;
  right:-10px;
  bottom:-18px;
  flex-direction:row;
  align-items:baseline;
  gap:6px;
  padding:14px 20px;
}
.home .mn-hb-n{
  font-size:1.75rem;
  font-weight:800;
  line-height:1;
  color:#fff;
}
.home .mn-hb-u{
  font-size:.85rem;
  font-weight:700;
  color:var(--mn-gold);
}
.home .mn-hb-t{
  margin-left:6px;
  font-size:.78rem;
  font-weight:700;
  color:#c6d7e8;
}
.home .mn-imgnote{
  margin:26px 0 0;
  font-size:.7rem;
  color:#9aa7b4;
  text-align:right;
}

/* ---- 進学実績：数字を主役に ---- */
.home .mn-top-stats{
  gap:0 !important;
  border-top:1px solid var(--mn-line);
  border-bottom:1px solid var(--mn-line);
  padding:clamp(34px,4.5vw,56px) 0;
}
.home .mn-top-stat{
  padding:6px 18px !important;
  background:transparent !important;
  border:0 !important;
  border-right:1px solid var(--mn-line) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.home .mn-top-stat:last-child{ border-right:0 !important; }
.home .mn-top-stat-num{ font-size:clamp(2.6rem,5.6vw,4rem); }
.home .mn-top-stat-label{
  margin-top:10px !important;
  font-size:.84rem !important;
  font-weight:600 !important;
  line-height:1.7 !important;
  color:#5b6b7b !important;
}
.home .mn-top-stats-note{
  max-width:900px;
  margin:26px auto 0 !important;
  text-align:center;
}

/* ---- 3フェーズ ---- */
.home .mn-ph{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  gap:clamp(26px,4vw,60px);
  align-items:center;
  max-width:1120px;
  margin:0 auto clamp(60px,8vw,110px);
}
.home .mn-ph ~ .mn-ph .mn-ph-media{ order:2; }
.home .mn-ph ~ .mn-ph ~ .mn-ph .mn-ph-media{ order:0; }
.home .mn-ph-img{ margin:0; }
.home .mn-ph-img img{
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
  border-radius:16px;
  box-shadow:0 16px 40px rgba(11,31,58,.14);
}
.home .mn-ph-k{
  display:flex;
  align-items:baseline;
  gap:14px;
  margin:0 0 10px;
}
.home .mn-ph-n{
  font-size:.95rem;
  font-weight:800;
  color:var(--mn-gold);
  letter-spacing:.04em;
}
.home .mn-ph-en{
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.2em;
  color:var(--mn-blue);
  text-transform:uppercase;
}
.home .mn-ph-t{
  margin:0 0 14px;
  font-size:clamp(1.25rem,2.3vw,1.7rem);
  font-weight:800;
  line-height:1.5;
  color:var(--mn-navy);
}
.home .mn-ph-d{
  margin:0 0 20px;
  font-size:.93rem;
  line-height:2;
  color:var(--mn-ink);
}
.home .mn-ph-list{
  list-style:none;
  margin:0 0 22px;
  padding:0;
  display:grid;
  gap:9px;
}
.home .mn-ph-list li{
  position:relative;
  padding-left:20px;
  font-size:.87rem;
  line-height:1.75;
  color:var(--mn-ink);
}
.home .mn-ph-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.68em;
  width:8px;
  height:1.5px;
  background:var(--mn-gold);
}
.home .mn-ph-links{
  display:flex;
  flex-wrap:wrap;
  gap:22px;
}
.home .mn-ph-links .mn-b-linkrow{ margin:0; }

/* ---- 医学部進学までの流れ ---- */
.home .mn-flow{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:0;
  max-width:1120px;
  margin:0 auto clamp(38px,5vw,60px);
}
.home .mn-flow-step{
  position:relative;
  padding:34px 14px 0;
  border-top:2px solid var(--mn-line);
}
.home .mn-flow-step::before{
  content:"";
  position:absolute;
  left:0;
  top:-7px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:var(--mn-gold);
}
.home .mn-flow-k{
  margin:0 0 8px;
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--mn-blue);
}
.home .mn-flow-t{
  margin:0 0 8px;
  font-size:.98rem;
  font-weight:700;
  line-height:1.5;
  color:var(--mn-navy);
}
.home .mn-flow-d{
  margin:0;
  font-size:.78rem;
  line-height:1.85;
  color:#5b6b7b;
}
.home .mn-roadmap-img{
  max-width:1120px;
  margin:0 auto;
}
.home .mn-roadmap-img img{
  width:100%;
  height:auto;
  border-radius:16px;
}

/* ---- 入学後のイタリア語 ---- */
.home .mn-lang{
  max-width:1120px;
  margin:clamp(76px,10vw,150px) auto 0;
  padding:clamp(34px,5vw,64px) clamp(22px,4vw,56px);
  background:var(--mn-bg);
  border-left:5px solid var(--mn-gold);
  border-radius:16px;
}
.home .mn-lang-k{
  margin:0 0 12px;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.2em;
  color:var(--mn-blue);
}
.home .mn-lang-h{
  margin:0 0 16px !important;
  font-size:clamp(1.15rem,2vw,1.5rem);
  font-weight:800;
  color:var(--mn-navy);
}
.home .mn-lang-d{
  max-width:720px;
  margin:0 0 12px;
  font-size:.93rem;
  line-height:2.05;
  color:var(--mn-ink);
}
.home .mn-lang-note{
  margin:0;
  font-size:.8rem;
  color:#6b7a89;
}

/* ---- 最終CTA 2系統 ---- */
.home .mn-final-2col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  max-width:820px;
  margin:8px auto 0;
  text-align:left;
}
.home .mn-final-card{
  padding:26px 24px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
}
.home .mn-final-ct{
  margin:0 0 10px;
  font-size:.92rem;
  font-weight:800;
  color:var(--mn-gold);
}
.home .mn-final-cd{
  margin:0 0 18px;
  font-size:.83rem;
  line-height:1.9;
  color:#c6d7e8;
}
.home .mn-final-btn2{ margin:0; }
.home .mn-final-alt{
  display:inline-block;
  padding:11px 22px;
  font-size:.86rem;
  font-weight:700;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.5);
  border-radius:8px;
  transition:background .2s ease;
}
.home .mn-final-alt:hover{ background:rgba(255,255,255,.12); }

/* ---- レスポンシブ ---- */
@media (max-width:900px){
  .home .mn-ph{
    grid-template-columns:1fr;
    gap:22px;
  }
  .home .mn-ph ~ .mn-ph .mn-ph-media{ order:0; }
  .home .mn-flow{ grid-template-columns:repeat(2,1fr); }
  .home .mn-top-stats{ gap:26px 0 !important; }
  .home .mn-top-stat:nth-child(2){ border-right:0 !important; }
  .home .mn-final-2col{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .home .mn-flow{ grid-template-columns:1fr; }
  .home .mn-flow-step{ padding:26px 0 0; }
  .home .mn-top-stat{ border-right:0 !important; }
  .home .mn-top-hero-badge{
    right:6px;
    bottom:-16px;
    padding:11px 15px;
  }
  .home .mn-hb-n{ font-size:1.4rem; }
  .home .mn-lang{ padding:26px 18px; }
}


/* --- 画像コンテナの潰れ対策（遅延読込中のレイアウト崩れ防止） --- */
.home .mn-top-hero-visual,
.home .mn-top-hero-img,
.home .mn-ph-media,
.home .mn-ph-img,
.home .mn-roadmap-img{ width:100%; display:block; }
.home .mn-top-hero-img img,
.home .mn-ph-img img,
.home .mn-roadmap-img img{ width:100%; }
.home .mn-ph-img img{ background:#eef3f9; }
.home .mn-roadmap-img img{ aspect-ratio:16 / 9; object-fit:cover; background:#245A8D; }


/* --- mn-lazy-img-block: 遅延読込中の img を block 化しレイアウト崩れを防ぐ --- */
.home .mn-ph-img img,
.home .mn-roadmap-img img,
.home .mn-top-hero-img img{ display:block; width:100%; }
.home .mn-ph-img img{ aspect-ratio:4 / 3; object-fit:cover; }
.home .mn-roadmap-img img{ aspect-ratio:16 / 9; object-fit:cover; }

/* ===== トップ(84) 講師・実物証跡 ここから ===== */
/* AI画像撤去に伴い、実写(講師/教材/指導報告書)を扱うための最小スタイル */
.page-id-84 .mn-instructor-img{margin:0;}
.page-id-84 .mn-instructor-img img{width:100%;max-width:300px;height:auto;display:block;border-radius:12px;}
.page-id-84 .mn-proof-img{margin:0 0 8px;}
.page-id-84 .mn-proof-img a{display:block;cursor:zoom-in;}
.page-id-84 .mn-proof-img img{width:100%;height:auto;display:block;border:1px solid #dbe3ec;border-radius:8px;background:#fff;}
/* ===== トップ(84) ここまで ===== */


/* --- mn-lazy-render-off: トップは全セクションを常時描画する --- */
/* FlyingPress が #content に inline で content-visibility:auto を付ける。
   inline style は !important 付き宣言に負けるため、ここで打ち消す。 */
.home #content,
.home .content,
.home .single-post-main{
  content-visibility:visible !important;
  contain-intrinsic-size:auto !important;
}

/* ================================================================
   TOP (ID 84) BRAND REDESIGN v2  —  namespace: mn84-
   2026-07-21 rebuild. Scoped to .page-id-84. UNITS: px only
   (no rem/em/clamp/vw/vh). Larger type, unified buttons/colors.
   ================================================================ */
.page-id-84{
  --m84-navy:#245A8D;
  --m84-blue:#2F6FAE;
  --m84-gold:#CFE3F5;
  --m84-off:#F8FAFC;
  --m84-bg2:#EEF3F8;
  --m84-line:#DCE6F0;
  --m84-muted:#5B6778;
  --m84-ink:#172033;
}

/* full-bleed canvas */
.page-id-84 .l-inner-content{max-width:none!important;padding-left:0!important;padding-right:0!important;}
.page-id-84 .mn84{
  font-feature-settings:"palt" 1;
  color:var(--m84-ink);
  line-height:34px;
  overflow-x:hidden;
}
.page-id-84 .mn84 *{box-sizing:border-box;}

/* neutralise Re:Diver heading decoration */
.page-id-84 .mn84 h1,
.page-id-84 .mn84 h2,
.page-id-84 .mn84 h3,
.page-id-84 .mn84 h4{
  background:none!important;border:0!important;padding:0!important;
  margin:0;font-weight:800;color:var(--m84-navy);
}
.page-id-84 .mn84 h2::before,.page-id-84 .mn84 h2::after,
.page-id-84 .mn84 h3::before,.page-id-84 .mn84 h3::after{display:none!important;content:none!important;}
.page-id-84 .mn84 p{margin:0;}
.page-id-84 .mn84 ul{margin:0;padding:0;list-style:none;}
.page-id-84 .mn84 img{max-width:100%;height:auto;display:block;}
.page-id-84 .mn84 a{text-decoration:none;}

/* disable Re:Diver scroll fade-in (prevents white-out before observer fires) */
.page-id-84 .mn84,
.page-id-84 .mn84 > *,
.page-id-84 .has-animation > *,
.page-id-84 .mn84 section{
  opacity:1!important;transform:none!important;visibility:visible!important;animation:none!important;
}

/* ---------- layout primitives (px) ---------- */
.page-id-84 .mn84-sec{padding:84px 24px;}
.page-id-84 .mn84-sec--tight{padding:88px 24px;}
.page-id-84 .mn84-in{max-width:1200px;margin:0 auto;width:100%;}
.page-id-84 .mn84-in--narrow{max-width:900px;}
.page-id-84 .mn84-off{background:var(--m84-off);}
.page-id-84 .mn84-bluegrey{background:var(--m84-bg2);}
.page-id-84 .mn84-navy{background:var(--m84-navy);color:#fff;}
.page-id-84 .mn84-navy h2,.page-id-84 .mn84-navy h3{color:#fff;}

/* ---------- type (px) ---------- */
.page-id-84 .mn84-eyebrow{
  display:block;font-size:13px;font-weight:800;letter-spacing:2px;
  color:var(--m84-blue);margin-bottom:16px;
}
.page-id-84 .mn84-navy .mn84-eyebrow{color:var(--m84-gold);}
.page-id-84 .mn84-h2{
  font-size:34px;line-height:47px;letter-spacing:.5px;margin-bottom:20px!important;
}
.page-id-84 .mn84-h2 em{font-style:normal;color:var(--m84-blue);}
.page-id-84 .mn84-navy .mn84-h2 em{color:var(--m84-gold);}
.page-id-84 .mn84-lead{
  font-size:18px;line-height:32px;color:var(--m84-muted);max-width:760px;
}
.page-id-84 .mn84-navy .mn84-lead{color:#D8E7F5;}
.page-id-84 .mn84-center{text-align:center;}
.page-id-84 .mn84-center .mn84-lead{margin-left:auto;margin-right:auto;}

/* ---------- buttons (unified: primary navy / secondary white) ---------- */
.page-id-84 .mn84-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:58px;padding:0 34px;border-radius:8px;
  font-size:18px;font-weight:700;letter-spacing:.5px;
  border:2px solid transparent;transition:background-color .18s ease,color .18s ease,transform .18s ease,border-color .18s ease;
}
.page-id-84 .mn84-btn::after{content:"→";font-size:18px;line-height:1;}
.page-id-84 .mn84-btn--primary{background:var(--m84-navy);color:#fff;}
.page-id-84 .mn84-btn--primary:hover{background:var(--m84-blue);transform:translateY(-2px);}
.page-id-84 .mn84-btn--secondary{background:#fff;color:var(--m84-navy);border-color:var(--m84-navy);}
.page-id-84 .mn84-btn--secondary:hover{background:#EEF6FC;transform:translateY(-2px);}
/* on navy background */
.page-id-84 .mn84-btn--onnavy{background:#fff;color:var(--m84-navy);}
.page-id-84 .mn84-btn--onnavy:hover{background:var(--m84-gold);color:#231D07;transform:translateY(-2px);}
.page-id-84 .mn84-btn--ghostnavy{background:transparent;color:#fff;border-color:rgba(255,255,255,.5);}
.page-id-84 .mn84-btn--ghostnavy:hover{background:rgba(255,255,255,.12);border-color:#fff;transform:translateY(-2px);}
.page-id-84 .mn84-btnrow{display:flex;flex-wrap:wrap;gap:16px;margin-top:36px;}
.page-id-84 .mn84-center .mn84-btnrow{justify-content:center;}
.page-id-84 .mn84-note{margin-top:18px!important;font-size:15px;line-height:24px;color:var(--m84-muted);}
.page-id-84 .mn84-navy .mn84-note{color:#D8E7F5;}

/* text link (underline + arrow so it reads as a link, same size as body) */
.page-id-84 .mn84-tlink{
  display:inline-flex;align-items:center;gap:8px;font-size:17px;font-weight:700;
  color:var(--m84-blue);border-bottom:2px solid rgba(23,105,170,.35);padding-bottom:3px;
}
.page-id-84 .mn84-tlink::after{content:"→";}
.page-id-84 .mn84-tlink:hover{border-bottom-color:var(--m84-blue);}

/* ================= 01 HERO ================= */
.page-id-84 .mn84-hero{
  background:linear-gradient(168deg,#F2F7FC 0%,#FFFFFF 62%);
  padding:88px 24px 96px;border-bottom:1px solid var(--m84-line);
}
.page-id-84 .mn84-hero-grid{
  max-width:1240px;margin:0 auto;
  display:grid;grid-template-columns:1.28fr .72fr;gap:52px;align-items:start;
}
.page-id-84 .mn84-hero-label{
  display:inline-block;padding:10px 20px;border-radius:100px;
  background:#EEF6FC;color:var(--m84-blue);
  font-size:15px;font-weight:800;letter-spacing:1.5px;margin-bottom:28px;
}
.page-id-84 .mn84-h1{
  font-size:40px!important;line-height:54px!important;font-weight:800!important;
  color:var(--m84-navy)!important;letter-spacing:0;margin:0!important;
  word-break:normal;overflow-wrap:anywhere;
}
.page-id-84 .mn84-h1 em{font-style:normal;color:var(--m84-blue);}
.page-id-84 .mn84-rule{width:64px;height:4px;background:var(--m84-gold);border-radius:2px;margin:28px 0 26px;}
.page-id-84 .mn84-hero-lead{font-size:17px;line-height:30px;color:var(--m84-muted);max-width:560px;}
/* hero achievement hierarchy (large / medium / small) */
.page-id-84 .mn84-hero-ach{display:flex;flex-direction:column;gap:8px;margin-top:4px;}
.page-id-84 .mn84-ach-lg{font-size:28px;line-height:40px;font-weight:800;color:var(--m84-navy);letter-spacing:.5px;}
.page-id-84 .mn84-ach-lg b{font-size:34px;font-weight:800;color:var(--m84-blue);margin-left:4px;}
.page-id-84 .mn84-ach-md{font-size:20px;line-height:30px;font-weight:700;color:#3B5069;}
.page-id-84 .mn84-ach-sm{font-size:17px;line-height:28px;color:var(--m84-muted);}
.page-id-84 .mn84-hero-visual{position:relative;margin-top:46px;}
.page-id-84 .mn84-hero-img{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 26px 60px rgba(11,31,58,.22);}
.page-id-84 .mn84-hero-img img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center 40%;background:#DCE6F0;}
.page-id-84 .mn84-credit{margin-top:16px!important;font-size:13px;line-height:20px;color:#9CAAB8;text-align:right;}

/* ---- Hero-direct trust band (4 stats, navy) ---- */
.page-id-84 .mn84-statband{background:var(--m84-navy);padding:0 24px;}
.page-id-84 .mn84-statband-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);
}
.page-id-84 .mn84-stat{
  padding:48px 28px;border-left:1px solid rgba(255,255,255,.12);
  display:flex;flex-direction:column;gap:8px;
}
.page-id-84 .mn84-stat:first-child{border-left:0;}
.page-id-84 .mn84-stat-n{font-size:60px;line-height:1;font-weight:800;color:#fff;letter-spacing:-1px;}
.page-id-84 .mn84-stat-n small{font-size:24px;font-weight:700;margin-left:4px;color:var(--m84-gold);}
.page-id-84 .mn84-stat-sub{font-size:15px;font-weight:800;letter-spacing:1px;color:var(--m84-gold);}
.page-id-84 .mn84-stat-label{font-size:16px;line-height:25px;font-weight:700;color:#D8E7F5;}
.page-id-84 .mn84-stat-badge{
  align-self:flex-start;margin-top:2px;padding:5px 12px;border-radius:5px;
  background:var(--m84-gold);color:#231D07;font-size:13px;font-weight:800;letter-spacing:.5px;
}

/* ================= 02 NOBU ================= */
.page-id-84 .mn84-nobu{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;}
.page-id-84 .mn84-nobu-photo{margin:0;position:relative;}
.page-id-84 .mn84-nobu-photo img{
  width:100%;max-width:440px;aspect-ratio:1/1;object-fit:cover;object-position:center 18%;
  border-radius:12px;background:#E4ECF4;box-shadow:0 22px 52px rgba(11,31,58,.2);
}
.page-id-84 .mn84-nobu-rank{
  position:absolute;left:-12px;bottom:26px;padding:12px 20px;border-radius:8px;
  background:var(--m84-gold);color:#231D07;font-size:16px;font-weight:800;letter-spacing:.5px;
  box-shadow:0 12px 28px rgba(201,162,39,.36);
}
.page-id-84 .mn84-quote{font-size:19px;line-height:37px;color:#2B3E52;padding-left:28px;border-left:3px solid var(--m84-line);margin-bottom:30px!important;}
.page-id-84 .mn84-quote strong{font-weight:800;color:var(--m84-navy);}
.page-id-84 .mn84-sign{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:14px!important;}
.page-id-84 .mn84-sign-role{font-size:16px;font-weight:700;color:var(--m84-muted);letter-spacing:.5px;}
.page-id-84 .mn84-sign-name{font-size:28px;font-weight:800;color:var(--m84-navy);letter-spacing:1px;}

/* ================= 03 RESULTS ================= */
.page-id-84 .mn84-res{display:grid;grid-template-columns:1fr 1.25fr;gap:44px;align-items:start;margin-top:48px;}
.page-id-84 .mn84-resbox{padding:40px;border-radius:14px;background:#fff;border:1px solid var(--m84-line);box-shadow:0 12px 34px rgba(11,31,58,.06);}
.page-id-84 .mn84-resbox--year{background:var(--m84-navy);border-color:transparent;}
.page-id-84 .mn84-reslabel{display:inline-block;font-size:15px;font-weight:800;letter-spacing:2px;padding:7px 15px;border-radius:5px;margin-bottom:28px;}
.page-id-84 .mn84-resbox--year .mn84-reslabel{background:var(--m84-gold);color:#231D07;}
.page-id-84 .mn84-resbox--cum .mn84-reslabel{background:#EEF6FC;color:var(--m84-blue);}
.page-id-84 .mn84-resrow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0;border-bottom:1px dashed rgba(140,160,180,.34);}
.page-id-84 .mn84-resbox--year .mn84-resrow{border-bottom-color:rgba(255,255,255,.16);}
.page-id-84 .mn84-resrow:last-of-type{border-bottom:0;}
.page-id-84 .mn84-resname{font-size:18px;font-weight:700;color:var(--m84-navy);}
.page-id-84 .mn84-resbox--year .mn84-resname{color:#D6E3F0;}
.page-id-84 .mn84-resname .mn84-allpass{display:inline-block;margin-left:12px;padding:4px 11px;border-radius:5px;background:var(--m84-gold);color:#231D07;font-size:13px;font-weight:800;letter-spacing:.5px;vertical-align:middle;}
.page-id-84 .mn84-resnum{font-size:56px;font-weight:800;line-height:1;color:var(--m84-blue);letter-spacing:-1px;white-space:nowrap;}
.page-id-84 .mn84-resbox--year .mn84-resnum{color:#fff;}
.page-id-84 .mn84-resnum small{font-size:22px;font-weight:700;margin-left:5px;}
.page-id-84 .mn84-restotal{margin-top:24px!important;padding-top:22px;border-top:2px solid var(--m84-line);display:flex;align-items:center;justify-content:space-between;gap:14px;}
.page-id-84 .mn84-restotal .mn84-resname{font-size:18px;}
.page-id-84 .mn84-restotal b{font-size:52px;font-weight:800;color:var(--m84-navy);line-height:1;}
.page-id-84 .mn84-resnote{margin-top:22px!important;font-size:15px;line-height:26px;color:var(--m84-muted);}
.page-id-84 .mn84-resbox--year .mn84-resnote{color:#D8E7F5;}

/* ================= 04 PILLARS ================= */
.page-id-84 .mn84-pillars{margin-top:64px;}
.page-id-84 .mn84-pillar{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:64px 0;border-top:1px solid var(--m84-line);}
.page-id-84 .mn84-pillar:first-child{border-top:0;padding-top:0;}
.page-id-84 .mn84-pillar--flip .mn84-pillar-media{order:2;}
.page-id-84 .mn84-pillar-media{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 20px 48px rgba(11,31,58,.16);border:1px solid var(--m84-line);}
.page-id-84 .mn84-pillar-media img{width:100%;aspect-ratio:3/2;object-fit:cover;background:#DFE9F2;}
/* infographic variant: show the full graphic (never crop its text) */
.page-id-84 .mn84-pillar-media--graphic{background:var(--m84-off);box-shadow:0 14px 36px rgba(11,31,58,.1);}
.page-id-84 .mn84-pillar-media--graphic img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:var(--m84-off);}
.page-id-84 .mn84-pnum{display:flex;align-items:center;gap:16px;margin-bottom:18px!important;font-size:15px;font-weight:800;letter-spacing:2px;color:var(--m84-blue);}
.page-id-84 .mn84-pnum b{font-size:40px;font-weight:800;line-height:1;color:var(--m84-navy);letter-spacing:0;}
.page-id-84 .mn84-pnum span{flex:1;height:1px;background:var(--m84-line);}
.page-id-84 .mn84-h3{font-size:25px!important;line-height:36px!important;margin-bottom:14px!important;}
.page-id-84 .mn84-h3 em{font-style:normal;color:var(--m84-blue);}
.page-id-84 .mn84-ptext{font-size:17px;line-height:30px;color:var(--m84-muted);margin-bottom:22px!important;}
.page-id-84 .mn84-ptags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px;}
.page-id-84 .mn84-ptags li{display:inline-flex;align-items:center;height:46px;white-space:nowrap;padding:0 18px;border-radius:100px;background:var(--m84-off);border:1px solid var(--m84-line);font-size:16px;font-weight:700;line-height:22px;color:#3B5069;}
.page-id-84 .mn84-navy .mn84-ptags li{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#D6E3F0;}
.page-id-84 .mn84-plinks{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px;margin-top:30px;padding-top:26px;border-top:1px solid var(--m84-line);}
/* small primary CTA button inside a service block */
.page-id-84 .mn84-plink-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:50px;padding:0 26px;border-radius:8px;background:var(--m84-navy);color:#fff;font-size:16px;font-weight:700;letter-spacing:.5px;transition:background-color .18s ease,transform .18s ease;}
.page-id-84 .mn84-plink-btn::after{content:"→";}
.page-id-84 .mn84-plink-btn:hover{background:var(--m84-blue);transform:translateY(-2px);}
/* outline variant — identical geometry, secondary weight */
.page-id-84 .mn84-plink-btn--outline{background:#fff;color:var(--m84-navy);border:2px solid var(--m84-navy);}
.page-id-84 .mn84-plink-btn--outline:hover{background:#EEF6FC;color:var(--m84-navy);transform:translateY(-2px);}

/* ================= 05 ISSUES (navy editorial) ================= */
.page-id-84 .mn84-issues{margin-top:52px;}
.page-id-84 .mn84-issue{display:grid;grid-template-columns:auto 1fr;gap:44px;padding:34px 0;border-bottom:1px solid rgba(255,255,255,.14);align-items:baseline;}
.page-id-84 .mn84-issue:last-child{border-bottom:0;}
.page-id-84 .mn84-issue-n{font-size:38px;font-weight:800;line-height:1;color:var(--m84-gold);letter-spacing:1px;min-width:70px;}
.page-id-84 .mn84-issue-t{font-size:21px!important;line-height:31px!important;margin-bottom:12px!important;color:#fff;}
.page-id-84 .mn84-issue-d{font-size:16px;line-height:28px;color:#D8E7F5;}

/* ================= 06 REASONS (blue-grey magazine) ================= */
.page-id-84 .mn84-reasons{margin-top:44px;}
.page-id-84 .mn84-reason{display:grid;grid-template-columns:120px 1fr;gap:40px;padding:40px 0;border-top:1px solid #D5DFEA;align-items:start;}
.page-id-84 .mn84-reason:first-child{border-top:0;}
.page-id-84 .mn84-reason-n{font-size:52px;font-weight:800;line-height:1;color:#C3D0DE;letter-spacing:1px;}
.page-id-84 .mn84-reason:hover .mn84-reason-n{color:var(--m84-gold);transition:color .25s ease;}
.page-id-84 .mn84-reason-t{font-size:21px!important;line-height:31px!important;margin-bottom:12px!important;}
.page-id-84 .mn84-reason-t em{font-style:normal;color:var(--m84-blue);}
.page-id-84 .mn84-reason-d{font-size:16px;line-height:29px;color:var(--m84-muted);}

/* ================= 07 PROOF / EVIDENCE ================= */
.page-id-84 .mn84-proof-lead{display:grid;grid-template-columns:1.2fr 1fr;gap:52px;align-items:center;margin-top:52px;}
.page-id-84 .mn84-proof-lead--media{margin:0;border-radius:12px;overflow:hidden;border:1px solid var(--m84-line);box-shadow:0 18px 44px rgba(11,31,58,.14);}
.page-id-84 .mn84-proof-lead--media img{width:100%;height:auto;background:#EDF2F7;}
.page-id-84 .mn84-proof-t{font-size:22px!important;line-height:32px!important;margin-bottom:14px!important;}
.page-id-84 .mn84-proof-d{font-size:16px;line-height:29px;color:var(--m84-muted);}
.page-id-84 .mn84-proof-cap{margin-top:16px!important;font-size:14px;line-height:22px;color:#5B6778;}
.page-id-84 .mn84-proof-two{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:52px;}
.page-id-84 .mn84-proof-item{}
.page-id-84 .mn84-proof-item--media{margin:0 0 22px;border-radius:12px;overflow:hidden;border:1px solid var(--m84-line);box-shadow:0 14px 36px rgba(11,31,58,.12);background:var(--m84-off);}
/* documents & infographics: show in full, no crop */
.page-id-84 .mn84-proof-item--media img{width:100%;height:auto;background:var(--m84-off);}
.page-id-84 .mn84-proof-item-t{font-size:19px!important;line-height:28px!important;margin-bottom:12px!important;}
.page-id-84 .mn84-proof-item-d{font-size:17px;line-height:31px;color:var(--m84-muted);}

/* ================= 08 UNIVERSITIES ================= */
.page-id-84 .mn84-unihead{margin-bottom:44px;}
.page-id-84 .mn84-unicount{display:flex;gap:44px;flex-wrap:wrap;margin-top:32px;}
.page-id-84 .mn84-unicount div{display:flex;flex-direction:column;gap:6px;}
.page-id-84 .mn84-unicount b{font-size:44px;font-weight:800;line-height:1;color:#fff;}
.page-id-84 .mn84-unicount b em{font-style:normal;font-size:22px;color:var(--m84-gold);margin-left:4px;}
.page-id-84 .mn84-unicount span{font-size:16px;font-weight:700;color:#D8E7F5;letter-spacing:.5px;}
.page-id-84 .mn84-unicols{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.page-id-84 .mn84-unicol-h{display:flex;align-items:baseline;gap:12px;padding-bottom:16px;margin-bottom:8px;border-bottom:2px solid rgba(255,255,255,.2);}
.page-id-84 .mn84-unicol-h b{font-size:20px;font-weight:800;color:#fff;letter-spacing:1px;}
.page-id-84 .mn84-unicol-h span{font-size:15px;font-weight:700;color:var(--m84-gold);}
.page-id-84 .mn84-unilist{display:grid;grid-template-columns:1fr;}
.page-id-84 .mn84-uni{display:block;padding:16px 4px;border-bottom:1px solid rgba(255,255,255,.1);}
.page-id-84 .mn84-uni-name{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#fff;font-size:18px;font-weight:700;line-height:26px;}
.page-id-84 a.mn84-uni:hover .mn84-uni-name{color:var(--m84-gold);}
.page-id-84 a.mn84-uni:hover .mn84-uni-arrow{opacity:1;transform:translateX(2px);}
.page-id-84 .mn84-uni-arrow{color:var(--m84-gold);opacity:.55;transition:opacity .18s ease,transform .18s ease;font-size:16px;flex:none;}
.page-id-84 .mn84-uni-courses{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:10px;}
.page-id-84 .mn84-uni-course{font-size:14px;font-weight:600;line-height:1;color:#D8E7F5;padding:6px 12px;border-radius:5px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);}
/* section header image */
.page-id-84 .mn84-uni-hero{margin:0 0 44px;border-radius:14px;overflow:hidden;box-shadow:0 20px 48px rgba(0,0,0,.28);}
.page-id-84 .mn84-uni-hero img{width:100%;aspect-ratio:2/1;object-fit:cover;object-position:center 62%;background:#245A8D;}
.page-id-84 .mn84-uni-hero figcaption{padding:12px 18px;font-size:13px;line-height:20px;color:#5B6778;background:rgba(255,255,255,.04);}
.page-id-84 .mn84-eenote{margin-top:44px;padding:34px 40px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;}
.page-id-84 .mn84-eenote-t{font-size:21px!important;line-height:31px!important;margin-bottom:8px!important;color:#fff;}
.page-id-84 .mn84-eenote-d{font-size:16px;line-height:26px;color:#D8E7F5;}

/* ================= 09 VOICES ================= */
.page-id-84 .mn84-voice-lead{display:block;margin-top:52px;padding:44px;border-radius:14px;background:#fff;border:1px solid var(--m84-line);box-shadow:0 16px 40px rgba(11,31,58,.08);}
.page-id-84 .mn84-voice-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:120px;height:120px;border-radius:12px;background:var(--m84-navy);color:#fff;flex:none;}
.page-id-84 .mn84-voice-badge b{font-size:34px;font-weight:800;line-height:1;color:var(--m84-gold);}
.page-id-84 .mn84-voice-badge span{font-size:13px;font-weight:700;letter-spacing:.5px;}
.page-id-84 .mn84-voice-tag{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;}
.page-id-84 .mn84-voice-year{font-size:15px;font-weight:700;color:var(--m84-muted);letter-spacing:.5px;margin-bottom:12px!important;}
.page-id-84 .mn84-voice-tag i{font-style:normal;padding:6px 13px;border-radius:5px;background:#EEF6FC;color:var(--m84-blue);font-size:14px;font-weight:800;letter-spacing:.5px;}
.page-id-84 .mn84-voice-tag em{font-style:normal;font-size:15px;font-weight:700;color:var(--m84-muted);}
.page-id-84 .mn84-voice-lead-t{font-size:26px!important;line-height:38px!important;margin-bottom:14px!important;}
.page-id-84 .mn84-voice-lead-t a{color:var(--m84-navy);}
.page-id-84 .mn84-voice-lead-t a:hover{color:var(--m84-blue);}
.page-id-84 .mn84-voice-d{font-size:18px;line-height:33px;color:var(--m84-muted);}
.page-id-84 .mn84-voice-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;}
.page-id-84 .mn84-voice{padding:34px;border-radius:14px;background:#fff;border:1px solid var(--m84-line);box-shadow:0 12px 30px rgba(11,31,58,.06);}
.page-id-84 .mn84-voice-t{font-size:21px!important;line-height:31px!important;margin-bottom:12px!important;}
.page-id-84 .mn84-voice-t a{color:var(--m84-navy);}
.page-id-84 .mn84-voice-t a:hover{color:var(--m84-blue);}

/* ================= 10 START HERE ================= */
.page-id-84 .mn84-stages{margin-top:48px;}
.page-id-84 .mn84-stage{display:grid;grid-template-columns:auto 1fr auto;gap:40px;align-items:center;padding:38px 34px;border:1px solid var(--m84-line);border-radius:12px;background:#fff;margin-bottom:16px;transition:border-color .2s ease,transform .2s ease;}
.page-id-84 .mn84-stage:hover{border-color:var(--m84-blue);transform:translateX(4px);}
.page-id-84 .mn84-stage-step{font-size:15px;font-weight:800;letter-spacing:2px;color:#fff;background:var(--m84-navy);padding:11px 16px;border-radius:6px;white-space:nowrap;}
.page-id-84 .mn84-stage-t{font-size:23px!important;line-height:32px!important;margin-bottom:8px!important;}
.page-id-84 .mn84-stage-d{font-size:17px;line-height:29px;color:var(--m84-muted);}

/* ================= 11 ABOUT ================= */
.page-id-84 .mn84-about{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center;}
/* stacked variant: full-width copy, image below (better line length) */
.page-id-84 .mn84-about--stack{display:block;}
.page-id-84 .mn84-about--stack .mn84-about-body{max-width:900px;margin:0 auto 48px;}
.page-id-84 .mn84-about--stack .mn84-about-media{max-width:1000px;margin:0 auto;}
.page-id-84 .mn84-about-media{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 20px 48px rgba(11,31,58,.16);border:1px solid var(--m84-line);background:var(--m84-off);}
.page-id-84 .mn84-about-media img{width:100%;height:auto;background:var(--m84-off);}
.page-id-84 .mn84-about-roadmap{margin:28px 0 0;padding-top:26px;border-top:1px solid var(--m84-line);}
.page-id-84 .mn84-about-roadmap img{width:100%;height:auto;border-radius:10px;border:1px solid var(--m84-line);}
.page-id-84 .mn84-about-roadmap figcaption{margin-top:12px;font-size:14px;line-height:22px;color:#5B6778;}
.page-id-84 .mn84-about-p{font-size:19px;line-height:36px;color:var(--m84-muted);margin-bottom:20px!important;}
.page-id-84 .mn84-about-p strong{font-weight:800;color:var(--m84-navy);}

/* ================= 12 NEWS ================= */
.page-id-84 .mn84-news{margin-top:44px;}
.page-id-84 .mn84-newsitem{display:grid;grid-template-columns:auto auto 1fr;gap:32px;align-items:center;padding:26px 6px;border-top:1px solid var(--m84-line);}
.page-id-84 .mn84-newsitem:last-child{border-bottom:1px solid var(--m84-line);}
.page-id-84 .mn84-news-d{font-size:16px;font-weight:700;color:var(--m84-muted);white-space:nowrap;letter-spacing:.5px;}
.page-id-84 .mn84-news-c{font-size:13px;font-weight:800;letter-spacing:1px;padding:6px 13px;border-radius:5px;background:var(--m84-navy);color:#fff;white-space:nowrap;}
.page-id-84 .mn84-news-c--gold{background:var(--m84-gold);color:#231D07;}
.page-id-84 .mn84-news-t{font-size:19px;font-weight:700;color:var(--m84-navy);line-height:29px;}
.page-id-84 .mn84-newsitem:hover .mn84-news-t{color:var(--m84-blue);}

/* ================= 13 FAQ (native <details> — browser-controlled, cannot break) ================= */
.page-id-84 .mn84-faq{max-width:900px;}
.page-id-84 .mn84-faq-item{border-bottom:1px solid var(--m84-line);}
.page-id-84 .mn84-faq-item summary{
  list-style:none;cursor:pointer;position:relative;
  padding:28px 48px 28px 34px;
  font-size:19px;font-weight:700;color:var(--m84-navy);line-height:30px;
}
.page-id-84 .mn84-faq-item summary::-webkit-details-marker{display:none;}
.page-id-84 .mn84-faq-item summary::before{content:"Q";position:absolute;left:0;top:28px;font-size:19px;font-weight:800;color:var(--m84-blue);line-height:30px;}
.page-id-84 .mn84-faq-item summary::after{content:"";position:absolute;right:12px;top:36px;width:12px;height:12px;border-right:2px solid var(--m84-blue);border-bottom:2px solid var(--m84-blue);transform:rotate(45deg);transition:transform .22s ease;}
.page-id-84 .mn84-faq-item[open] summary::after{transform:rotate(-135deg);}
.page-id-84 .mn84-faq-item summary:focus-visible{outline:2px solid var(--m84-blue);outline-offset:3px;}
.page-id-84 .mn84-faq-a{position:relative;padding:0 34px 28px 34px;font-size:18px;line-height:32px;color:var(--m84-muted);}
.page-id-84 .mn84-faq-a::before{content:"A";position:absolute;left:0;top:0;font-size:19px;font-weight:800;color:var(--m84-gold);line-height:32px;}
@media (max-width:640px){
  /* small phones: let the H1 flow naturally instead of using the desktop breaks */
  .page-id-84 .mn84-h1 br{display:none;}
}
@media (max-width:520px){
  .page-id-84 .mn84-faq-item summary{padding:24px 36px 24px 30px;font-size:18px;}
  .page-id-84 .mn84-faq-a{padding:0 0 24px 30px;}
}

/* ================= 14 FINAL CTA ================= */
.page-id-84 .mn84-final{background:linear-gradient(150deg,#245A8D 0%,#245A8D 100%);padding:120px 24px;text-align:center;color:#fff;}
.page-id-84 .mn84-final .mn84-h2{color:#fff;}
.page-id-84 .mn84-final .mn84-h2 em{color:#fff;}
.page-id-84 .mn84-final-cases{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:12px 16px;margin-top:12px;max-width:760px;}
.page-id-84 .mn84-final-cases li{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:600;line-height:24px;color:#D8E7F5;padding:10px 18px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);}
.page-id-84 .mn84-final-cases li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--m84-gold);}
.page-id-84 .mn84-final-sub{margin-top:36px!important;font-size:16px;line-height:26px;color:#D8E7F5;}
.page-id-84 .mn84-final-sub a{color:#fff;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:2px;}
.page-id-84 .mn84-final-sub a:hover{border-bottom-color:#fff;}

/* ================= RESPONSIVE ================= */
/* small-desktop / large-tablet: scale typography down, keep 2-col layouts */
@media (max-width:1100px){
  .page-id-84 .mn84-h1{font-size:37px!important;line-height:50px!important;}
  .page-id-84 .mn84-h2{font-size:32px;line-height:44px;}
  .page-id-84 .mn84-ach-lg{font-size:25px;line-height:36px;}
  .page-id-84 .mn84-ach-lg b{font-size:30px;}
  .page-id-84 .mn84-ach-md{font-size:19px;line-height:29px;}
  .page-id-84 .mn84-stat-n{font-size:54px;}
}
@media (max-width:1000px){
  .page-id-84 .mn84-res{grid-template-columns:1fr;}
  .page-id-84 .mn84-about{grid-template-columns:1fr;}
  .page-id-84 .mn84-proof-lead{grid-template-columns:1fr;}
  .page-id-84 .mn84-unicols{grid-template-columns:1fr;gap:32px;}
  .page-id-84 .mn84-voice-grid{grid-template-columns:1fr;}
  .page-id-84 .mn84-proof-two{grid-template-columns:1fr;}
  .page-id-84 .mn84-h2{font-size:31px;line-height:42px;}
  .page-id-84 .mn84-h1{font-size:37px!important;line-height:50px!important;}
  /* tablet: scale the hero achievement stack down (never reuse PC sizes) */
  .page-id-84 .mn84-ach-lg{font-size:24px;line-height:34px;}
  .page-id-84 .mn84-ach-lg b{font-size:29px;}
  .page-id-84 .mn84-ach-md{font-size:18px;line-height:27px;}
  .page-id-84 .mn84-ach-sm{font-size:16px;line-height:26px;}
  .page-id-84 .mn84-hero-label{font-size:14px;letter-spacing:1px;}
  .page-id-84 .mn84-stat-n{font-size:52px;}
  .page-id-84 .mn84-resnum{font-size:48px;}
  .page-id-84 .mn84-h3{font-size:24px!important;line-height:34px!important;}
  .page-id-84 .mn84-uni-hero img{aspect-ratio:16/9;}
}
@media (max-width:820px){
  .page-id-84 .mn84-sec{padding:64px 22px;}
  .page-id-84 .mn84-sec--tight{padding:64px 22px;}
  .page-id-84 .mn84-hero{padding:56px 22px 72px;}
  .page-id-84 .mn84-hero-grid{grid-template-columns:1fr;gap:44px;}
  .page-id-84 .mn84-hero-visual{order:-1;margin-top:0;}
  .page-id-84 .mn84-hero-img img{aspect-ratio:16/10;}
  .page-id-84 .mn84-credit{text-align:left;}
  .page-id-84 .mn84-h1{font-size:33px!important;line-height:46px!important;word-break:normal;}
  /* mobile hero: compact hierarchy, full-width CTAs, shorter image */
  .page-id-84 .mn84-ach-lg{font-size:21px;line-height:31px;}
  .page-id-84 .mn84-ach-lg b{font-size:25px;}
  .page-id-84 .mn84-ach-md{font-size:16px;line-height:25px;}
  .page-id-84 .mn84-ach-sm{font-size:15px;line-height:24px;}
  .page-id-84 .mn84-hero-ach{gap:6px;}
  .page-id-84 .mn84-hero-img img{aspect-ratio:3/2;}
  .page-id-84 .mn84-plink-btn{width:100%;height:52px;font-size:15px;}
  .page-id-84 .mn84-plinks{gap:10px;}
  .page-id-84 .mn84-ptags li{height:42px;font-size:15px;padding:0 15px;}
  .page-id-84 .mn84-uni-hero img{aspect-ratio:16/10;}
  .page-id-84 .mn84-uni-name{font-size:17px;line-height:25px;}
  .page-id-84 .mn84-final-cases li{width:100%;font-size:15px;}
  .page-id-84 .mn84-hero-label{font-size:13px;letter-spacing:.5px;padding:8px 16px;}
  .page-id-84 .mn84-hero-lead{font-size:18px;line-height:31px;}
  .page-id-84 .mn84-h2{font-size:28px;line-height:40px;}
  .page-id-84 .mn84-h3{font-size:22px!important;line-height:32px!important;}
  .page-id-84 .mn84-lead{font-size:17px;line-height:30px;}
  .page-id-84 .mn84-statband-in{grid-template-columns:1fr;}
  .page-id-84 .mn84-stat{padding:28px 22px;border-left:0;border-top:1px solid rgba(255,255,255,.14);}
  .page-id-84 .mn84-stat:first-child{border-top:0;}
  .page-id-84 .mn84-stat-n{font-size:48px;}
  .page-id-84 .mn84-nobu{grid-template-columns:1fr;gap:34px;}
  .page-id-84 .mn84-nobu-photo{max-width:360px;}
  .page-id-84 .mn84-quote{font-size:18px;line-height:33px;padding-left:20px;}
  .page-id-84 .mn84-pillar{grid-template-columns:1fr;gap:28px;padding:48px 0;}
  .page-id-84 .mn84-pillar--flip .mn84-pillar-media{order:0;}
  .page-id-84 .mn84-ptext{font-size:17px;line-height:31px;}
  .page-id-84 .mn84-issue{grid-template-columns:1fr;gap:10px;}
  .page-id-84 .mn84-issue-n{font-size:30px;}
  .page-id-84 .mn84-issue-t{font-size:19px!important;line-height:29px!important;}
  .page-id-84 .mn84-issue-d{font-size:17px;line-height:30px;}
  .page-id-84 .mn84-reason{grid-template-columns:1fr;gap:10px;}
  .page-id-84 .mn84-reason-n{font-size:36px;}
  .page-id-84 .mn84-reason-t{font-size:19px!important;line-height:29px!important;}
  .page-id-84 .mn84-reason-d{font-size:17px;line-height:31px;}
  .page-id-84 .mn84-voice-lead{grid-template-columns:1fr;gap:24px;padding:32px;}
  .page-id-84 .mn84-voice-badge{width:100%;height:auto;flex-direction:row;gap:12px;padding:16px;}
  .page-id-84 .mn84-stage{grid-template-columns:1fr;gap:16px;align-items:start;}
  .page-id-84 .mn84-stage-step{justify-self:start;}
  .page-id-84 .mn84-newsitem{grid-template-columns:auto auto;row-gap:10px;}
  .page-id-84 .mn84-news-t{grid-column:1 / -1;font-size:18px;line-height:28px;}
  .page-id-84 .mn84-about-p{font-size:17px;line-height:31px;}
  .page-id-84 .mn84-eenote{flex-direction:column;align-items:flex-start;}
  .page-id-84 .is-accordion-type-faq .dbp-accordion-title{font-size:18px!important;line-height:28px!important;}
}
@media (max-width:520px){
  .page-id-84 .mn84-btn{width:100%;height:54px;padding:0 22px;font-size:16px;}
  .page-id-84 .mn84-btnrow{gap:12px;}
  .page-id-84 .mn84-h1{font-size:30px!important;line-height:42px!important;}
  .page-id-84 .mn84-h2{font-size:26px;line-height:37px;}
  .page-id-84 .mn84-resbox{padding:28px;}
  .page-id-84 .mn84-resnum{font-size:44px;}
  .page-id-84 .mn84-restotal b{font-size:40px;}
  .page-id-84 .mn84-nobu-photo{max-width:100%;}
  .page-id-84 .mn84-reason{grid-template-columns:1fr;}
  .page-id-84 .mn84-resname .mn84-allpass{display:inline-block;margin:6px 0 0;}
  .page-id-84 .is-accordion-type-faq .dbp-accordion-button{padding:24px 36px 24px 0!important;gap:12px!important;}
  .page-id-84 .is-accordion-type-faq .dbp-accordion-panel{padding:0 0 24px 0!important;gap:12px!important;}
}
/* ===== TOP(84) BRAND REDESIGN END ===== */

/* ================================================================
   TUTORING (ID 105331) v1  —  namespace: mnt-
   2026-07-21. Scoped to .page-id-105331. UNITS: px only.
   Same design language as the top page (mn84-).
   ================================================================ */
.page-id-105331{
  --mt-navy:#245A8D;
  --mt-blue:#2F6FAE;
  --mt-gold:#CFE3F5;
  --mt-off:#F8FAFC;
  --mt-line:#DCE6F0;
  --mt-muted:#5B6778;
}

/* disable Re:Diver scroll fade-in on this page (prevents white-out before the observer fires) */
.page-id-105331 .mnt,
.page-id-105331 .mnt > *,
.page-id-105331 .mnt section{
  opacity:1!important;transform:none!important;visibility:visible!important;animation:none!important;
}

/* ---- hero headline ---- */
.page-id-105331 .mtu-headline{
  font-size:40px;line-height:56px;font-weight:800;color:var(--mt-navy);
  letter-spacing:.5px;margin:6px 0 18px;word-break:keep-all;overflow-wrap:normal;
}
.page-id-105331 .mtu-headline em{font-style:normal;color:var(--mt-blue);}
.page-id-105331 .mtu-subtitle{font-size:19px;line-height:34px;color:var(--mt-muted);}
.page-id-105331 .mnt-heroimg{border-radius:14px;box-shadow:0 22px 52px rgba(11,31,58,.2);}
/* Rui profile is now single-column (AI portrait removed) */
.page-id-105331 .mnt-teacher-notext{max-width:100%;}

/* ---- 3 pillars ---- */
.page-id-105331 .mnt{font-feature-settings:"palt" 1;}
.page-id-105331 .mnt *{box-sizing:border-box;}
.page-id-105331 .mnt-pillars{padding:104px 24px;background:var(--mt-off);}
.page-id-105331 .mnt-in{max-width:1160px;margin:0 auto;}
.page-id-105331 .mnt-eyebrow{
  display:block;font-size:15px;font-weight:800;letter-spacing:3px;
  color:var(--mt-blue);margin-bottom:20px;
}
.page-id-105331 .mnt-h2{
  font-size:42px!important;line-height:56px!important;font-weight:800!important;
  color:var(--mt-navy)!important;background:none!important;border:0!important;
  padding:0!important;margin:0 0 56px!important;letter-spacing:.5px;
}
.page-id-105331 .mnt-h2::before,.page-id-105331 .mnt-h2::after{display:none!important;content:none!important;}
.page-id-105331 .mnt-h2 em{font-style:normal;color:var(--mt-blue);}

.page-id-105331 .mnt-block{
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
  padding:56px 0;border-top:1px solid var(--mt-line);
}
.page-id-105331 .mnt-block:first-of-type{border-top:0;padding-top:0;}
.page-id-105331 .mnt-block--flip .mnt-block-media{order:-1;}
.page-id-105331 .mnt-block-media{
  margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--mt-line);
  box-shadow:0 20px 48px rgba(11,31,58,.16);background:#fff;
}
.page-id-105331 .mnt-block-media img{width:100%;height:auto;display:block;}
.page-id-105331 .mnt-num{
  font-size:15px;font-weight:800;letter-spacing:2px;color:var(--mt-blue);
  margin:0 0 12px!important;
}
.page-id-105331 .mnt-h3{
  font-size:30px!important;line-height:44px!important;font-weight:800!important;
  color:var(--mt-navy)!important;background:none!important;border:0!important;
  padding:0!important;margin:0 0 20px!important;
}
.page-id-105331 .mnt-h3::before,.page-id-105331 .mnt-h3::after{display:none!important;content:none!important;}
.page-id-105331 .mnt-p{
  font-size:18px;line-height:34px;color:var(--mt-muted);margin:0 0 16px!important;
}
.page-id-105331 .mnt-p:last-child{margin-bottom:0!important;}

/* ---- responsive ---- */
@media (max-width:1100px){
  .page-id-105331 .mtu-headline{font-size:34px;line-height:48px;}
  .page-id-105331 .mnt-h2{font-size:36px!important;line-height:50px!important;}
  .page-id-105331 .mnt-h3{font-size:27px!important;line-height:40px!important;}
}
@media (max-width:900px){
  .page-id-105331 .mnt-pillars{padding:72px 22px;}
  .page-id-105331 .mnt-block{grid-template-columns:1fr;gap:26px;padding:44px 0;}
  /* mobile: text first, image after (natural reading order) */
  .page-id-105331 .mnt-block--flip .mnt-block-media{order:0;}
  .page-id-105331 .mnt-block-text{order:-1;}
  .page-id-105331 .mnt-h2{font-size:30px!important;line-height:44px!important;margin-bottom:36px!important;}
  .page-id-105331 .mnt-h3{font-size:24px!important;line-height:36px!important;}
  .page-id-105331 .mnt-p{font-size:17px;line-height:31px;}
  .page-id-105331 .mtu-headline{font-size:28px;line-height:42px;}
  .page-id-105331 .mtu-headline br{display:none;}
  .page-id-105331 .mtu-subtitle{font-size:17px;line-height:30px;}
}
@media (max-width:520px){
  .page-id-105331 .mtu-headline{font-size:25px;line-height:38px;}
  .page-id-105331 .mnt-h2{font-size:27px!important;line-height:40px!important;}
  .page-id-105331 .mnt-h3{font-size:22px!important;line-height:34px!important;}
  .page-id-105331 .mnt-p{font-size:16px;line-height:29px;}
}

/* ---- moshi section (separate from the 3 pillars) ---- */
.page-id-105331 .mnt-moshi{padding:0 24px 104px;background:var(--mt-off);}
.page-id-105331 .mnt-moshi .mnt-block{border-top:1px solid var(--mt-line);padding-top:56px;}
.page-id-105331 .mnt-cta{margin:22px 0 0!important;}
.page-id-105331 .mnt-tlink{
  display:inline-flex;align-items:center;gap:9px;font-size:17px;font-weight:700;
  color:var(--mt-blue);border-bottom:2px solid rgba(23,105,170,.35);padding-bottom:3px;
}
.page-id-105331 .mnt-tlink::after{content:"→";}
.page-id-105331 .mnt-tlink:hover{border-bottom-color:var(--mt-blue);}

/* ---- 4-step lesson flow ---- */
.page-id-105331 .mnt-flow{
  display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
  list-style:none;margin:32px 0 0;padding:0;counter-reset:none;
}
.page-id-105331 .mnt-flow-step{
  position:relative;display:flex;flex-direction:column;gap:10px;
  padding:28px 22px;background:#fff;border:1px solid var(--mt-line);border-radius:12px;
}
.page-id-105331 .mnt-flow-step::after{
  content:"";position:absolute;right:-14px;top:50%;width:10px;height:10px;
  border-top:2px solid var(--mt-blue);border-right:2px solid var(--mt-blue);
  transform:translateY(-50%) rotate(45deg);
}
.page-id-105331 .mnt-flow-step:last-child::after{display:none;}
.page-id-105331 .mnt-flow-n{font-size:14px;font-weight:800;letter-spacing:2px;color:var(--mt-blue);}
.page-id-105331 .mnt-flow-t{font-size:18px;font-weight:800;line-height:27px;color:var(--mt-navy);}
.page-id-105331 .mnt-flow-d{font-size:15px;line-height:25px;color:var(--mt-muted);}

/* ---- materials list inside pillar 01 ---- */
.page-id-105331 .mnt-label{
  font-size:15px;font-weight:800;letter-spacing:1px;color:var(--mt-navy);
  margin:6px 0 12px!important;
}
.page-id-105331 .mnt-list{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0;}
.page-id-105331 .mnt-list li{
  display:inline-flex;align-items:center;height:42px;padding:0 16px;
  background:#fff;border:1px solid var(--mt-line);border-radius:100px;
  font-size:15px;font-weight:700;color:#3B5069;white-space:nowrap;
}

/* ---- shrunk report note ---- */
.page-id-105331 .mnt-note-inline{
  max-width:900px;margin:0 auto!important;padding:20px 24px;
  background:var(--mt-off);border-left:4px solid var(--mt-blue);border-radius:6px;
  font-size:16px;line-height:28px;color:var(--mt-muted);
}

/* ---- final CTA (navy / white / blue only) ---- */
.page-id-105331 .mnt-final{
  background:linear-gradient(150deg,#245A8D 0%,#245A8D 100%);
  padding:88px 24px;border-radius:16px;text-align:center;color:#fff;
}
.page-id-105331 .mnt-final-h2{
  font-size:38px!important;line-height:54px!important;font-weight:800!important;
  color:#fff!important;background:none!important;border:0!important;padding:0!important;
  margin:0 0 22px!important;
}
.page-id-105331 .mnt-final-h2::before,.page-id-105331 .mnt-final-h2::after{display:none!important;content:none!important;}
.page-id-105331 .mnt-final-h2 em{font-style:normal;color:#fff;}
.page-id-105331 .mnt-final-lead{
  max-width:760px;margin:0 auto!important;font-size:17px;line-height:31px;color:#D8E7F5;
}
.page-id-105331 .mnt-final-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px;}
.page-id-105331 .mnt-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:58px;padding:0 30px;border-radius:8px;font-size:17px;font-weight:700;
  border:2px solid transparent;transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.page-id-105331 .mnt-btn::after{content:"→";}
.page-id-105331 .mnt-btn--primary{background:#fff;color:var(--mt-navy);}
.page-id-105331 .mnt-btn--primary:hover{background:var(--mt-blue);color:#fff;transform:translateY(-2px);}
.page-id-105331 .mnt-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5);}
.page-id-105331 .mnt-btn--ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;transform:translateY(-2px);}
.page-id-105331 .mnt-final-note{margin-top:20px!important;font-size:15px;color:#D8E7F5;}

/* ---- "このような方におすすめ" icons ---- */
.page-id-105331 .mnt-fitb .mtu-bubble{position:relative;padding-left:66px!important;}
.page-id-105331 .mnt-fitb .mtu-bubble::before{
  content:"";position:absolute;left:20px;top:50%;transform:translateY(-50%);
  width:32px;height:32px;background-repeat:no-repeat;background-position:center;background-size:contain;opacity:.9;
}
/* 1: learning route */
.page-id-105331 .mnt-fitb .dbp-column-item:nth-child(1) .mtu-bubble::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231769AA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='5' cy='19' r='2'/><circle cx='19' cy='5' r='2'/><path d='M7 19h6a4 4 0 0 0 4-4V7'/></svg>");
}
/* 2: score graph */
.page-id-105331 .mnt-fitb .dbp-column-item:nth-child(2) .mtu-bubble::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231769AA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 21h18'/><path d='M4 17l5-5 4 3 6-7'/><path d='M19 8V4h-4'/></svg>");
}
/* 3: schedule */
.page-id-105331 .mnt-fitb .dbp-column-item:nth-child(3) .mtu-bubble::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231769AA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='16' rx='2'/><path d='M8 3v4M16 3v4M3 11h18'/><path d='M9 15l2 2 4-4'/></svg>");
}
/* 4: support */
.page-id-105331 .mnt-fitb .dbp-column-item:nth-child(4) .mtu-bubble::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231769AA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21a8 8 0 1 0-16 0'/><circle cx='12' cy='8' r='4'/></svg>");
}
.page-id-105331 .mnt-fitb .dbp-column-item:nth-child(n+5) .mtu-bubble::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231769AA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 8v4l3 2'/></svg>");
}

@media (max-width:900px){
  .page-id-105331 .mnt-moshi{padding:0 22px 72px;}
  .page-id-105331 .mnt-flow{grid-template-columns:1fr;gap:14px;}
  .page-id-105331 .mnt-flow-step{padding:22px 20px;}
  .page-id-105331 .mnt-flow-step::after{right:auto;left:50%;top:auto;bottom:-12px;transform:translateX(-50%) rotate(135deg);}
  .page-id-105331 .mnt-final{padding:64px 22px;border-radius:12px;}
  .page-id-105331 .mnt-final-h2{font-size:28px!important;line-height:42px!important;}
  .page-id-105331 .mnt-final-lead{font-size:16px;line-height:29px;}
  .page-id-105331 .mnt-btn{width:100%;height:54px;font-size:16px;}
  .page-id-105331 .mnt-fitb .mtu-bubble{padding-left:58px!important;}
  .page-id-105331 .mnt-fitb .mtu-bubble::before{left:16px;width:26px;height:26px;}
}
@media (max-width:520px){
  .page-id-105331 .mnt-final-h2{font-size:25px!important;line-height:38px!important;}
  .page-id-105331 .mnt-flow-t{font-size:17px;}
}


/* ---- footnote: keep it inside the content column, centered (never stuck at the edge) ---- */
.page-id-105331 .mtu-footnote.mnt-footnote{
  max-width:900px;margin:40px auto 0!important;padding:20px 24px;
  text-align:center;font-size:16px;line-height:28px;color:var(--mt-muted);
  background:var(--mt-off);border:1px solid var(--mt-line);border-radius:10px;
}
.page-id-105331 .mtu-footnote.mnt-footnote a{
  color:var(--mt-blue);font-weight:700;border-bottom:2px solid rgba(23,105,170,.35);padding-bottom:2px;
}
.page-id-105331 .mtu-footnote.mnt-footnote a:hover{border-bottom-color:var(--mt-blue);}
@media (max-width:900px){
  .page-id-105331 .mtu-footnote.mnt-footnote{margin:28px 16px 0!important;padding:18px 20px;font-size:15px;line-height:26px;}
}


/* ---- 合格者の声: イニシャル横の小さな丸アバター ---- */
.page-id-105331 .mtu-vname.mnt-vname{
  display:flex;align-items:center;gap:12px;
}
.page-id-105331 .mnt-vavatar{
  width:48px;height:48px;flex:none;border-radius:50%;
  object-fit:cover;object-position:center 22%;
  border:2px solid #fff;box-shadow:0 2px 8px rgba(11,31,58,.16);
  background:var(--mt-off);
}
@media (max-width:520px){
  .page-id-105331 .mnt-vavatar{width:42px;height:42px;}
  .page-id-105331 .mtu-vname.mnt-vname{gap:10px;}
}


/* ---- テーマ既定ボタン(dbp/button)をブランド配色に統一 ----
   水色(information)＋オレンジ系を廃し、トップv4と同じ Navy / White / Blue に揃える。
   インラインstyleでCSS変数が入るため !important で上書きする。 */
.page-id-105331 .dbp-button{
  --dbp--button--color-background:#245A8D!important;
  --dbp--button--color-text:#FFFFFF!important;
  --dbp--button--color-border:#245A8D!important;
}
.page-id-105331 .dbp-button .dbp-button-link{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  min-height:58px;padding:0 32px!important;border-radius:8px!important;
  font-size:17px!important;font-weight:700!important;letter-spacing:.5px;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
/* 塗り＝プライマリ（濃紺） */
.page-id-105331 .dbp-button .dbp-button-link.is-button-design-fill{
  background-color:#245A8D!important;color:#FFFFFF!important;box-shadow:none!important;
}
.page-id-105331 .dbp-button .dbp-button-link.is-button-design-fill:hover{
  background-color:#3B82B6!important;color:#FFFFFF!important;transform:translateY(-2px);
}
/* 枠線＝セカンダリ（白地＋濃紺枠） */
.page-id-105331 .dbp-button .dbp-button-link.is-button-design-outline{
  background-color:#FFFFFF!important;color:#245A8D!important;
  box-shadow:inset 0 0 0 2px #245A8D!important;
}
.page-id-105331 .dbp-button .dbp-button-link.is-button-design-outline:hover{
  background-color:#EEF6FC!important;color:#245A8D!important;transform:translateY(-2px);
}
@media (max-width:520px){
  .page-id-105331 .dbp-button .dbp-button-link{
    width:100%;min-height:54px;font-size:16px!important;padding:0 20px!important;
  }
}

/* ===== TUTORING(105331) v1 END ===== */

/* ================================================================
   CONTACT (ID 103079) v1  —  namespace: mnc-
   2026-07-21. Scoped to .page-id-103079. UNITS: px only.
   Design language matches the top page (mn84-) / tutoring (mnt-).
   CF7 のフォーム機能・Turnstile には一切手を入れない（見た目のみ）。
   ================================================================ */
.page-id-103079{
  --mc-navy:#245A8D;
  --mc-blue:#2F6FAE;
  --mc-gold:#CFE3F5;
  --mc-off:#F8FAFC;
  --mc-line:#DCE6F0;
  --mc-muted:#5B6778;
}

.page-id-103079 .mnc{font-feature-settings:"palt" 1;color:#172033;}
.page-id-103079 .mnc *{box-sizing:border-box;}
.page-id-103079 .mnc p{margin:0;}
.page-id-103079 .mnc img{max-width:100%;height:auto;display:block;}
.page-id-103079 .mnc a{text-decoration:none;}

/* Re:Diver の見出し装飾をリセット */
.page-id-103079 .mnc h2,
.page-id-103079 .mnc h3{
  background:none!important;border:0!important;padding:0!important;
  margin:0;font-weight:800;color:var(--mc-navy);
}
.page-id-103079 .mnc h2::before,.page-id-103079 .mnc h2::after,
.page-id-103079 .mnc h3::before,.page-id-103079 .mnc h3::after{display:none!important;content:none!important;}

/* スクロールfade-inで白飛びしないように（自コンテンツ限定） */
.page-id-103079 .mnc,
.page-id-103079 .mnc > *,
.page-id-103079 .mnc section{
  opacity:1!important;transform:none!important;visibility:visible!important;animation:none!important;
}

/* ---------- layout ---------- */
.page-id-103079 .mnc-in{max-width:1100px;margin:0 auto;width:100%;}
.page-id-103079 .mnc-in--narrow{max-width:820px;}
.page-id-103079 .mnc-eyebrow{
  display:block;font-size:15px;font-weight:800;letter-spacing:3px;
  color:var(--mc-blue);margin-bottom:18px;
}

/* ---------- hero ---------- */
.page-id-103079 .mnc-hero{
  background:linear-gradient(168deg,#F2F7FC 0%,#FFFFFF 70%);
  padding:72px 24px 64px;border-bottom:1px solid var(--mc-line);
}
.page-id-103079 .mnc-h1{
  font-size:40px!important;line-height:56px!important;font-weight:800!important;
  color:var(--mc-navy)!important;margin:0 0 22px!important;letter-spacing:.5px;
}
.page-id-103079 .mnc-lead{
  font-size:18px;line-height:34px;color:var(--mc-muted);max-width:760px;
}
.page-id-103079 .mnc-lead strong{font-weight:800;color:var(--mc-navy);}

/* ---------- routes ---------- */
.page-id-103079 .mnc-routes{padding:72px 24px;background:var(--mc-off);}
.page-id-103079 .mnc-routes-label{
  font-size:16px;font-weight:800;letter-spacing:1px;color:var(--mc-navy);
  margin:0 0 28px!important;
}
.page-id-103079 .mnc-routegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.page-id-103079 .mnc-route{
  display:flex;flex-direction:column;gap:12px;
  padding:32px 28px;background:#fff;border:1px solid var(--mc-line);border-radius:12px;
}
.page-id-103079 .mnc-route-n{
  font-size:14px;font-weight:800;letter-spacing:2px;color:var(--mc-blue);
}
.page-id-103079 .mnc-route-t{font-size:21px!important;line-height:31px!important;margin:0!important;}
.page-id-103079 .mnc-route-d{font-size:16px;line-height:29px;color:var(--mc-muted);flex:1;}
.page-id-103079 .mnc-route-tag{
  align-self:flex-start;padding:7px 14px;border-radius:6px;
  background:#EEF6FC;color:var(--mc-blue);font-size:14px;font-weight:800;
}

/* ---------- buttons (navy / white only) ---------- */
.page-id-103079 .mnc-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  height:52px;padding:0 24px;border-radius:8px;
  font-size:16px;font-weight:700;letter-spacing:.5px;border:2px solid transparent;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.page-id-103079 .mnc-btn::after{content:"→";}
.page-id-103079 .mnc-btn--primary{background:var(--mc-navy);color:#fff;}
.page-id-103079 .mnc-btn--primary:hover{background:var(--mc-blue);color:#fff;transform:translateY(-2px);}
.page-id-103079 .mnc-btn--outline{background:#fff;color:var(--mc-navy);border-color:var(--mc-navy);}
.page-id-103079 .mnc-btn--outline:hover{background:#EEF6FC;transform:translateY(-2px);}

/* ---------- LINE ---------- */
.page-id-103079 .mnc-line{padding:72px 24px 24px;}
.page-id-103079 .mnc-h2{
  font-size:32px!important;line-height:46px!important;margin:0 0 24px!important;
}
.page-id-103079 .mnc-linebox{
  display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;
  padding:32px;border:1px solid var(--mc-line);border-radius:12px;background:var(--mc-off);
}
.page-id-103079 .mnc-qr{margin:0;}
.page-id-103079 .mnc-qr img{
  width:180px;height:180px;border-radius:10px;background:#fff;
  border:1px solid var(--mc-line);padding:8px;
}
.page-id-103079 .mnc-linetext{display:flex;flex-direction:column;gap:12px;}
.page-id-103079 .mnc-p{font-size:17px;line-height:31px;color:var(--mc-muted);}
.page-id-103079 .mnc-p strong{font-weight:800;color:var(--mc-navy);}
.page-id-103079 .mnc-note{font-size:15px;line-height:26px;color:#5B6778;}
.page-id-103079 .mnc-note a,
.page-id-103079 .mnc-p a,
.page-id-103079 .mnc-foot a{
  color:var(--mc-blue);font-weight:700;
  border-bottom:2px solid rgba(23,105,170,.35);padding-bottom:1px;
}
.page-id-103079 .mnc-note a:hover,
.page-id-103079 .mnc-foot a:hover{border-bottom-color:var(--mc-blue);}

/* ---------- form intro ---------- */
.page-id-103079 .mnc-form{padding:56px 24px 8px;}
.page-id-103079 .mnc-form .mnc-p{margin-bottom:14px!important;}

/* CF7 ラッパー（機能は不変・余白と最大幅のみ整える） */
.page-id-103079 .mnc-formwrap{
  max-width:820px!important;margin:0 auto 8px!important;padding:0 24px;
}
.page-id-103079 .mnc-foot{
  font-size:15px;line-height:26px;color:#5B6778;
  margin:8px auto 64px!important;padding:0 24px;
}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .page-id-103079 .mnc-routegrid{grid-template-columns:1fr;gap:18px;}
  .page-id-103079 .mnc-h1{font-size:34px!important;line-height:48px!important;}
  .page-id-103079 .mnc-h2{font-size:28px!important;line-height:40px!important;}
}
@media (max-width:820px){
  .page-id-103079 .mnc-hero{padding:56px 22px 48px;}
  .page-id-103079 .mnc-routes{padding:56px 22px;}
  .page-id-103079 .mnc-line{padding:56px 22px 20px;}
  .page-id-103079 .mnc-form{padding:44px 22px 8px;}
  .page-id-103079 .mnc-linebox{grid-template-columns:1fr;gap:22px;padding:26px;justify-items:center;text-align:left;}
  .page-id-103079 .mnc-lead{font-size:17px;line-height:31px;}
  .page-id-103079 .mnc-formwrap{padding:0 22px;}
  .page-id-103079 .mnc-foot{padding:0 22px;}
}
@media (max-width:520px){
  .page-id-103079 .mnc-h1{font-size:28px!important;line-height:42px!important;}
  .page-id-103079 .mnc-h2{font-size:24px!important;line-height:36px!important;}
  .page-id-103079 .mnc-route{padding:26px 22px;}
  .page-id-103079 .mnc-route-t{font-size:19px!important;line-height:29px!important;}
  .page-id-103079 .mnc-btn{width:100%;height:50px;font-size:15px;}
  .page-id-103079 .mnc-qr img{width:160px;height:160px;}
}

/* アイキャッチ（道標のストック写真）は v4 のブランド基準に合わないため非表示。
   _thumbnail_id は残すので OGP/SNS シェア画像には引き続き使われる。 */
.page-id-103079 .article-header .single_thumb{display:none!important;}

/* ===== CONTACT(103079) v1 END ===== */

/* ================================================================
   MOSHI (ID 105593) v1  —  scoped to .page-id-105593
   2026-07-21. UNITS: px only. Design language = top page v4.
   本文・ショートコード（CF7 105582 / mn_mock_schedule / mn_moshi_*）は無変更。
   見た目のみをブランド基準へ引き上げる。
   ================================================================ */
.page-id-105593{
  --mm-navy:#245A8D;
  --mm-blue:#2F6FAE;
  --mm-gold:#CFE3F5;
  --mm-off:#F8FAFC;
  --mm-line:#DCE6F0;
  --mm-muted:#5B6778;
}

/* ---------- Hero ---------- */
.page-id-105593 .mmh-hero .dbp-section-overlay{background:linear-gradient(168deg,#F2F7FC 0%,#FFFFFF 72%)!important;}
body.page-id-105593 .mmh-kicker{
  display:inline-block;padding:9px 18px;border-radius:100px;
  background:#EEF6FC;color:var(--mm-blue);
  font-size:14px!important;font-weight:800;letter-spacing:1.5px;margin-bottom:22px!important;
}
body.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{
  font-size:42px!important;line-height:60px!important;font-weight:800!important;
  color:var(--mm-navy)!important;letter-spacing:.5px;
  background:none!important;border:0!important;padding:0!important;margin:0 0 22px!important;
}
body.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero::before,body.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero::after{display:none!important;content:none!important;}
.page-id-105593 .mmh-hero .has-medium-font-size{
  font-size:18px!important;line-height:34px!important;color:var(--mm-muted)!important;
}
.page-id-105593 .mmh-chips{
  font-size:15px!important;line-height:26px!important;font-weight:700;
  color:var(--mm-navy)!important;margin-top:18px!important;
}

/* ---------- 見出し（v4 サイズ） ---------- */
body.page-id-105593 .dbp-section__inner > h2.wp-block-heading,
body.page-id-105593 .l-inner-content > h2.wp-block-heading{
  font-size:36px;line-height:52px;font-weight:800;color:var(--mm-navy);
  letter-spacing:.5px;
}
body.page-id-105593 h3.wp-block-heading{
  font-size:22px;line-height:33px;font-weight:800;color:var(--mm-navy);
}

/* ---------- ボタン統一（濃紺 / 白+濃紺枠のみ） ---------- */
.page-id-105593 .dbp-button{
  --dbp--button--color-background:#245A8D!important;
  --dbp--button--color-text:#FFFFFF!important;
  --dbp--button--color-border:#245A8D!important;
}
.page-id-105593 .dbp-button .dbp-button-link{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  min-height:58px;padding:0 32px!important;border-radius:8px!important;
  font-size:17px!important;font-weight:700!important;letter-spacing:.5px;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.page-id-105593 .dbp-button .dbp-button-link.is-button-design-fill{
  background-color:#245A8D!important;color:#FFFFFF!important;box-shadow:none!important;
}
.page-id-105593 .dbp-button .dbp-button-link.is-button-design-fill:hover{
  background-color:#3B82B6!important;color:#FFFFFF!important;transform:translateY(-2px);
}
.page-id-105593 .dbp-button .dbp-button-link.is-button-design-outline{
  background-color:#FFFFFF!important;color:#245A8D!important;
  box-shadow:inset 0 0 0 2px #245A8D!important;
}
.page-id-105593 .dbp-button .dbp-button-link.is-button-design-outline:hover{
  background-color:#EEF6FC!important;color:#245A8D!important;transform:translateY(-2px);
}

/* ---------- カード：高さと余白を統一 ---------- */
.page-id-105593 .dbp-card{height:100%;}
.page-id-105593 .dbp-card__inner{
  height:100%;padding:28px 26px!important;
  border:1px solid var(--mm-line);border-radius:12px;background:#fff;
}
.page-id-105593 .dbp-card__inner > p{font-size:16px;line-height:29px;color:var(--mm-muted);}

/* ---------- 成績表などの画像 ---------- */
.page-id-105593 .wp-block-image img{border-radius:10px;border:1px solid var(--mm-line);}

/* ---------- レスポンシブ ---------- */
@media (max-width:1100px){
  body.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:36px!important;line-height:52px!important;}
  body.page-id-105593 .dbp-section__inner > h2.wp-block-heading,
  body.page-id-105593 .l-inner-content > h2.wp-block-heading{font-size:31px;line-height:46px;}
}
@media (max-width:820px){
  body.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:29px!important;line-height:44px!important;}
  .page-id-105593 .mmh-hero .has-medium-font-size{font-size:17px!important;line-height:31px!important;}
  body.page-id-105593 .dbp-section__inner > h2.wp-block-heading,
  body.page-id-105593 .l-inner-content > h2.wp-block-heading{font-size:27px;line-height:40px;}
  body.page-id-105593 h3.wp-block-heading{font-size:20px;line-height:30px;}
  .page-id-105593 .dbp-card__inner{padding:24px 22px!important;}
}
@media (max-width:520px){
  body.page-id-105593 :is(h1,h2).wp-block-heading.mmh-h2-hero{font-size:25px!important;line-height:39px!important;}
  body.page-id-105593 .dbp-section__inner > h2.wp-block-heading,
  body.page-id-105593 .l-inner-content > h2.wp-block-heading{font-size:24px;line-height:36px;}
  .page-id-105593 .dbp-button .dbp-button-link{
    width:100%;min-height:54px;font-size:16px!important;padding:0 20px!important;
  }
  body.page-id-105593 .mmh-kicker{font-size:13px!important;}
}
/* ===== MOSHI(105593) v1 END ===== */

/* ================================================================
   ITALY-MED (ID 105266) v1  —  scoped to .page-id-105266
   2026-07-21. UNITS: px only. Design language = top page v4.
   ================================================================ */
.page-id-105266{
  --mi-navy:#245A8D;
  --mi-blue:#2F6FAE;
  --mi-gold:#CFE3F5;
  --mi-off:#F8FAFC;
  --mi-line:#DCE6F0;
  --mi-muted:#5B6778;
}

/* ---------- Hero ---------- */
body.page-id-105266 .mni-kicker{
  display:inline-block;padding:9px 18px;border-radius:100px;
  background:#EEF6FC;color:var(--mi-blue);
  font-size:14px!important;font-weight:800!important;letter-spacing:2px;margin:0 0 20px!important;
}
body.page-id-105266 .mni-h1{
  font-size:40px!important;line-height:58px!important;font-weight:800!important;
  color:var(--mi-navy)!important;letter-spacing:.5px;margin:0 0 22px!important;
}
.page-id-105266 .mni-heroimg{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 22px 52px rgba(11,31,58,.2);}
.page-id-105266 .mni-heroimg img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;background:#DCE6F0;}

/* ---------- 見出し（v4 サイズ） ---------- */
body.page-id-105266 .l-inner-content > h2.wp-block-heading,
body.page-id-105266 .dbp-section__inner > h2.wp-block-heading{
  font-size:36px;line-height:52px;font-weight:800;color:var(--mi-navy);letter-spacing:.5px;
}
body.page-id-105266 h3.wp-block-heading{
  font-size:22px;line-height:33px;font-weight:800;color:var(--mi-navy);
}

/* ---------- ボタン統一（濃紺 / 白+濃紺枠） ---------- */
.page-id-105266 .dbp-button{
  --dbp--button--color-background:#245A8D!important;
  --dbp--button--color-text:#FFFFFF!important;
  --dbp--button--color-border:#245A8D!important;
}
.page-id-105266 .dbp-button .dbp-button-link{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  min-height:58px;padding:0 32px!important;border-radius:8px!important;
  font-size:17px!important;font-weight:700!important;letter-spacing:.5px;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.page-id-105266 .dbp-button .dbp-button-link.is-button-design-fill{
  background-color:#245A8D!important;color:#FFFFFF!important;box-shadow:none!important;
}
.page-id-105266 .dbp-button .dbp-button-link.is-button-design-fill:hover{
  background-color:#3B82B6!important;color:#FFFFFF!important;transform:translateY(-2px);
}
.page-id-105266 .dbp-button .dbp-button-link.is-button-design-outline{
  background-color:#FFFFFF!important;color:#245A8D!important;
  box-shadow:inset 0 0 0 2px #245A8D!important;
}
.page-id-105266 .dbp-button .dbp-button-link.is-button-design-outline:hover{
  background-color:#EEF6FC!important;color:#245A8D!important;transform:translateY(-2px);
}

/* ---------- カード統一 ---------- */
.page-id-105266 .dbp-card{height:100%;}
.page-id-105266 .dbp-card__inner{
  height:100%;padding:28px 26px!important;
  border:1px solid var(--mi-line);border-radius:12px;background:#fff;
}

/* ---------- 大学一覧セクション ---------- */
.page-id-105266 .mni{font-feature-settings:"palt" 1;}
.page-id-105266 .mni *{box-sizing:border-box;}
.page-id-105266 .mni p{margin:0;}
.page-id-105266 .mni a{text-decoration:none;}
.page-id-105266 .mni,
.page-id-105266 .mni > *,
.page-id-105266 .mni section{opacity:1!important;transform:none!important;visibility:visible!important;animation:none!important;}
.page-id-105266 .mni-unis{background:var(--mi-navy);padding:80px 24px;margin:56px 0;border-radius:16px;}
.page-id-105266 .mni-in{max-width:1100px;margin:0 auto;}
.page-id-105266 .mni-eyebrow{
  display:block;font-size:15px;font-weight:800;letter-spacing:3px;color:var(--mi-gold);margin-bottom:18px;
}
body.page-id-105266 .mni-unis h2.mni-h2{
  font-size:34px!important;line-height:50px!important;font-weight:800!important;color:#fff!important;
  background:none!important;border:0!important;padding:0!important;margin:0 0 20px!important;
}
body.page-id-105266 .mni-unis h2.mni-h2::before,
body.page-id-105266 .mni-unis h2.mni-h2::after{display:none!important;content:none!important;}
.page-id-105266 .mni-lead{font-size:17px;line-height:31px;color:#D8E7F5;max-width:820px;margin-bottom:36px!important;}
.page-id-105266 .mni-unicols{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.page-id-105266 .mni-unicol-h{
  display:flex;align-items:baseline;gap:12px;padding-bottom:16px;margin-bottom:8px;
  border-bottom:2px solid rgba(255,255,255,.2);
}
.page-id-105266 .mni-unicol-h b{font-size:20px;font-weight:800;color:#fff;letter-spacing:1px;}
.page-id-105266 .mni-unicol-h span{font-size:15px;font-weight:700;color:var(--mi-gold);}
.page-id-105266 .mni-unilist{display:grid;grid-template-columns:1fr;}
.page-id-105266 .mni-uni{display:block;padding:16px 4px;border-bottom:1px solid rgba(255,255,255,.1);}
.page-id-105266 .mni-uni-name{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  color:#fff;font-size:18px;font-weight:700;line-height:26px;
}
.page-id-105266 a.mni-uni:hover .mni-uni-name{color:var(--mi-gold);}
.page-id-105266 a.mni-uni:hover .mni-uni-arrow{opacity:1;transform:translateX(2px);}
.page-id-105266 .mni-uni-arrow{color:var(--mi-gold);opacity:.55;font-size:16px;flex:none;transition:opacity .18s ease,transform .18s ease;}
.page-id-105266 .mni-uni-courses{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:10px;}
.page-id-105266 .mni-uni-course{
  font-size:14px;font-weight:600;line-height:1;color:#D8E7F5;
  padding:6px 12px;border-radius:5px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);
}

/* ---------- レスポンシブ ---------- */
@media (max-width:1100px){
  body.page-id-105266 .mni-h1{font-size:34px!important;line-height:50px!important;}
  body.page-id-105266 .l-inner-content > h2.wp-block-heading,
  body.page-id-105266 .dbp-section__inner > h2.wp-block-heading{font-size:31px;line-height:46px;}
  body.page-id-105266 .mni-unis h2.mni-h2{font-size:30px!important;line-height:44px!important;}
}
@media (max-width:900px){
  .page-id-105266 .mni-unicols{grid-template-columns:1fr;gap:32px;}
  .page-id-105266 .mni-unis{padding:60px 22px;border-radius:12px;}
}
@media (max-width:820px){
  body.page-id-105266 .mni-h1{font-size:28px!important;line-height:44px!important;}
  body.page-id-105266 .l-inner-content > h2.wp-block-heading,
  body.page-id-105266 .dbp-section__inner > h2.wp-block-heading{font-size:27px;line-height:40px;}
  body.page-id-105266 h3.wp-block-heading{font-size:20px;line-height:30px;}
  body.page-id-105266 .mni-unis h2.mni-h2{font-size:26px!important;line-height:39px!important;}
  .page-id-105266 .mni-lead{font-size:16px;line-height:29px;}
  .page-id-105266 .mni-uni-name{font-size:17px;line-height:25px;}
  .page-id-105266 .dbp-card__inner{padding:24px 22px!important;}
  .page-id-105266 .mni-heroimg img{aspect-ratio:16/10;}
}
@media (max-width:520px){
  body.page-id-105266 .mni-h1{font-size:25px!important;line-height:39px!important;}
  body.page-id-105266 .l-inner-content > h2.wp-block-heading,
  body.page-id-105266 .dbp-section__inner > h2.wp-block-heading{font-size:24px;line-height:36px;}
  .page-id-105266 .dbp-button .dbp-button-link{width:100%;min-height:54px;font-size:16px!important;padding:0 20px!important;}
  .page-id-105266 .mni-unis{padding:48px 18px;}
}
/* ===== ITALY-MED(105266) v1 END ===== */

/* ================================================================
   MEDSCHOOL CPT template v1  —  scoped to .single-medschool
   2026-07-21. UNITS: px only. Design language = top page v4.
   全24大学ページに一括適用。**本文（大学ごとの固有情報）は一切変更しない**。
   タイポグラフィ・表・FAQ・余白のみをブランド基準へ引き上げる。
   ================================================================ */
.single-medschool{
  --ms-navy:#245A8D;
  --ms-blue:#2F6FAE;
  --ms-gold:#CFE3F5;
  --ms-off:#F8FAFC;
  --ms-line:#DCE6F0;
  --ms-muted:#5B6778;
  --ms-ink:#172033;
}

/* ---------- 記事本文の基本 ---------- */
body.single-medschool .article-container{font-feature-settings:"palt" 1;}
body.single-medschool .l-inner-content p,
body.single-medschool .l-inner-content li{
  font-size:18px;line-height:34px;color:var(--ms-ink);
}

/* ---------- 見出し（v4 サイズ） ---------- */
body.single-medschool .article-header h1,
body.single-medschool h1.entry-title{
  font-size:40px;line-height:58px;font-weight:800;color:var(--ms-navy);letter-spacing:.5px;
}
/* テーマは h2 に青ベタ帯（#3B82B6）を敷き、文字は白（--rd--c--secondary-on）を前提にしている。
   ここで濃紺に上書きするとコントラスト3.05:1になり判読できないため、必ず白のままにする。 */
body.single-medschool .l-inner-content h2,
body.single-medschool .l-inner-content h2.wp-block-heading{
  font-size:30px!important;line-height:46px!important;font-weight:800!important;
  color:#FFFFFF!important;letter-spacing:.5px;
  padding:18px 24px!important;border-radius:10px!important;
  margin-top:64px!important;margin-bottom:26px!important;
}
body.single-medschool .l-inner-content h2 a{color:#FFFFFF!important;}
body.single-medschool .l-inner-content h3{
  font-size:23px;line-height:35px;font-weight:800;color:var(--ms-navy);
  margin-top:40px;margin-bottom:16px;
}
body.single-medschool .l-inner-content h4{
  font-size:19px;line-height:30px;font-weight:800;color:var(--ms-navy);
}

/* ---------- 表：医学部専門サイトとしてのブランド表現 ----------
   ヘッダー=濃紺+白文字／1列目=薄青+太字／行間広め／スマホ横スクロール。
   テーマ側が thead th に薄青(#DCE8F4)を当てているため !important で上書きする。 */
body.single-medschool .wp-block-table{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  border-radius:12px;border:1px solid var(--ms-line);margin:32px 0;
  background:#fff;box-shadow:0 6px 20px rgba(11,31,58,.05);
}
body.single-medschool .wp-block-table table{
  font-size:16px;line-height:29px;border-collapse:collapse;width:100%;
  min-width:520px;border:0;
}
body.single-medschool .wp-block-table th,
body.single-medschool .wp-block-table td{
  padding:17px 20px!important;border:0!important;
  border-bottom:1px solid var(--ms-line)!important;
  text-align:left;vertical-align:top;color:var(--ms-ink);
}
body.single-medschool .wp-block-table thead th{
  background:var(--ms-navy)!important;color:#FFFFFF!important;
  font-weight:800!important;font-size:15px!important;letter-spacing:1px;
  border-bottom:0!important;white-space:nowrap;
}
/* 1列目をラベル列として強調（見出し列パターンの表が多いため） */
body.single-medschool .wp-block-table tbody tr > *:first-child{
  background:#EEF6FC!important;font-weight:700!important;color:var(--ms-navy)!important;
  white-space:nowrap;
}
/* 数値・金額は視認性を上げる */
body.single-medschool .wp-block-table td strong{color:var(--ms-navy);font-weight:800;}
body.single-medschool .wp-block-table tbody tr:nth-child(even) > *:not(:first-child){background:#F8FAFC;}
body.single-medschool .wp-block-table tbody tr:last-child th,
body.single-medschool .wp-block-table tbody tr:last-child td{border-bottom:0!important;}
body.single-medschool .wp-block-table figcaption{
  font-size:14px;line-height:22px;color:var(--ms-muted);
  padding:12px 20px;background:var(--ms-off);margin:0;border-top:1px solid var(--ms-line);
}

/* ---------- リスト ---------- */
body.single-medschool .l-inner-content ul li,
body.single-medschool .l-inner-content ol li{margin-bottom:10px;}

/* ---------- 画像 ---------- */
body.single-medschool .l-inner-content .wp-block-image img{
  border-radius:12px;border:1px solid var(--ms-line);
}
body.single-medschool .l-inner-content .wp-block-image figcaption{
  font-size:14px;line-height:24px;color:#5B6778;margin-top:10px;
}

/* ---------- FAQ アコーディオン（他ページと統一） ---------- */
body.single-medschool .dbp-accordion-item{
  border:0!important;border-bottom:1px solid var(--ms-line)!important;
  border-radius:0!important;background:none!important;box-shadow:none!important;margin:0!important;
}
body.single-medschool .dbp-accordion-button{
  padding:26px 44px 26px 0!important;background:none!important;
}
body.single-medschool .dbp-accordion-title{
  font-size:19px!important;line-height:30px!important;font-weight:700!important;color:var(--ms-navy)!important;
}
body.single-medschool .dbp-accordion-content p{
  font-size:17px!important;line-height:31px!important;color:var(--ms-muted)!important;
}

/* ---------- ボタン（存在する場合は濃紺/白に統一） ---------- */
.single-medschool .dbp-button{
  --dbp--button--color-background:#245A8D!important;
  --dbp--button--color-text:#FFFFFF!important;
  --dbp--button--color-border:#245A8D!important;
}
.single-medschool .dbp-button .dbp-button-link{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  min-height:56px;padding:0 30px!important;border-radius:8px!important;
  font-size:17px!important;font-weight:700!important;
}
.single-medschool .dbp-button .dbp-button-link.is-button-design-fill{
  background-color:#245A8D!important;color:#fff!important;box-shadow:none!important;
}
.single-medschool .dbp-button .dbp-button-link.is-button-design-fill:hover{background-color:#3B82B6!important;}
.single-medschool .dbp-button .dbp-button-link.is-button-design-outline{
  background-color:#fff!important;color:#245A8D!important;box-shadow:inset 0 0 0 2px #245A8D!important;
}

/* ---------- 本文中リンク ---------- */
body.single-medschool .l-inner-content p a{
  color:var(--ms-blue);font-weight:700;
  border-bottom:1px solid rgba(23,105,170,.35);
}
body.single-medschool .l-inner-content p a:hover{border-bottom-color:var(--ms-blue);}

/* ---------- レスポンシブ ---------- */
@media (max-width:1100px){
  body.single-medschool .article-header h1,
  body.single-medschool h1.entry-title{font-size:34px;line-height:50px;}
  body.single-medschool .l-inner-content h2,
  body.single-medschool .l-inner-content h2.wp-block-heading{
    font-size:28px!important;line-height:42px!important;margin-top:56px!important;padding:16px 20px!important;}
  body.single-medschool .l-inner-content h3{font-size:22px;line-height:33px;}
}
@media (max-width:820px){
  body.single-medschool .article-header h1,
  body.single-medschool h1.entry-title{font-size:28px;line-height:44px;}
  body.single-medschool .l-inner-content h2,
  body.single-medschool .l-inner-content h2.wp-block-heading{
    font-size:25px!important;line-height:38px!important;margin-top:48px!important;
    margin-bottom:22px!important;padding:15px 18px!important;}
  body.single-medschool .l-inner-content h3{font-size:21px;line-height:32px;margin-top:32px;}
  body.single-medschool .l-inner-content p,
  body.single-medschool .l-inner-content li{font-size:17px;line-height:31px;}
  body.single-medschool .wp-block-table table{font-size:15px;line-height:26px;}
  body.single-medschool .wp-block-table th,
  body.single-medschool .wp-block-table td{padding:13px 14px;}
  body.single-medschool .dbp-accordion-title{font-size:18px!important;line-height:28px!important;}
}
@media (max-width:520px){
  body.single-medschool .article-header h1,
  body.single-medschool h1.entry-title{font-size:25px;line-height:39px;}
  body.single-medschool .l-inner-content h2,
  body.single-medschool .l-inner-content h2.wp-block-heading{
    font-size:22px!important;line-height:34px!important;padding:14px 16px!important;}
  body.single-medschool .l-inner-content h3{font-size:19px;line-height:30px;}
  body.single-medschool .l-inner-content p,
  body.single-medschool .l-inner-content li{font-size:16px;line-height:29px;}
  .single-medschool .dbp-button .dbp-button-link{width:100%;min-height:54px;font-size:16px!important;}
}
/* ===== MEDSCHOOL template v1 END ===== */

/* ================================================================
   TRUST PAGES v2  —  /voice/ (voice CPT archive) + /tutor-profile/ (5004)
   2026-07-22. UNITS: px only. Design language = top page v4.
   v2: 青背景H2を白文字へ（v1で濃紺にしてコントラスト3.08:1になっていた回帰の修正）／
       採用基準ボックスのカード化／講師プロフィールのカード化／事業者情報テーブルの整形。
   ================================================================ */
.post-type-archive-voice,
.page-id-5004{
  --tr-navy:#245A8D;
  --tr-blue:#2F6FAE;
  --tr-gold:#CFE3F5;
  --tr-off:#F8FAFC;
  --tr-line:#DCE6F0;
  --tr-muted:#5B6778;
  --tr-ink:#172033;
}

/* ================= /voice/ アーカイブ ================= */
body.post-type-archive-voice .archive-title,
body.post-type-archive-voice .archive-header h2,
body.post-type-archive-voice h2.archive-title{
  font-size:38px!important;line-height:56px!important;font-weight:800!important;
  color:var(--tr-navy)!important;letter-spacing:.5px;
  background:none!important;border:0!important;padding:0!important;
}
body.post-type-archive-voice .archive-count{
  font-size:15px!important;font-weight:700;color:var(--tr-blue)!important;
}
body.post-type-archive-voice article{
  border:1px solid var(--tr-line);border-radius:12px;overflow:hidden;background:#fff;
  transition:transform .18s ease,box-shadow .18s ease;
}
body.post-type-archive-voice article:hover{
  transform:translateY(-3px);box-shadow:0 14px 34px rgba(11,31,58,.12);
}
body.post-type-archive-voice article .entry-title,
body.post-type-archive-voice article h2,
body.post-type-archive-voice article h3{
  font-size:18px!important;line-height:29px!important;font-weight:700!important;color:var(--tr-navy)!important;
}
body.post-type-archive-voice article a{color:var(--tr-navy);}
body.post-type-archive-voice article img{width:100%;height:auto;display:block;}

/* ================= /tutor-profile/ ================= */
body.page-id-5004 .article-header h1,
body.page-id-5004 h1.entry-title{
  font-size:40px;line-height:58px;font-weight:800;color:var(--tr-navy);letter-spacing:.5px;
}

/* ---- H2：テーマが青ベタ背景（#3B82B6）を敷くため文字は必ず白 ----
   v1で濃紺を指定しコントラスト比3.08:1になっていた。白なら5.34:1でAA適合。 */
body.page-id-5004 .l-inner-content h2,
body.page-id-5004 .l-inner-content h2.wp-block-heading{
  font-size:30px!important;line-height:46px!important;font-weight:800!important;
  color:#FFFFFF!important;letter-spacing:.5px;
  padding:18px 24px!important;border-radius:10px!important;
  margin-top:64px!important;margin-bottom:26px!important;
}
body.page-id-5004 .l-inner-content h2 a{color:#FFFFFF!important;}

/* ---- H3：薄青背景（rgba(43,108,176,.1)）なので濃紺のまま ---- */
body.page-id-5004 .l-inner-content h3,
body.page-id-5004 .l-inner-content h3.wp-block-heading{
  font-size:23px!important;line-height:35px!important;font-weight:800!important;
  color:var(--tr-navy)!important;margin-top:44px!important;margin-bottom:18px!important;
}

body.page-id-5004 .l-inner-content p,
body.page-id-5004 .l-inner-content li{
  font-size:18px;line-height:34px;color:var(--tr-ink);
}
body.page-id-5004 .l-inner-content ul li{margin-bottom:10px;}

/* ---- 採用基準ボックス（必須条件 / 必須の選択条件）----
   テーマの has-border が border:0/padding:0 に潰れていたためカードとして作り直す */
body.page-id-5004 .l-inner-content .wp-block-group.has-border{
  background:var(--tr-off)!important;
  border:1px solid #D8E3EF!important;
  border-left:6px solid var(--tr-blue)!important;
  border-radius:12px!important;
  padding:26px 30px!important;
  margin:24px 0!important;
  box-shadow:0 6px 20px rgba(11,31,58,.05);
}
body.page-id-5004 .l-inner-content .wp-block-group.has-border > p:first-child{
  font-size:17px!important;line-height:28px!important;font-weight:800!important;
  color:var(--tr-navy)!important;margin:0 0 16px!important;
  padding-bottom:14px;border-bottom:1px solid #D8E3EF;
}
body.page-id-5004 .l-inner-content .wp-block-group.has-border ul{margin:0!important;}
body.page-id-5004 .l-inner-content .wp-block-group.has-border li{
  font-size:17px;line-height:31px;color:var(--tr-ink);
}
body.page-id-5004 .l-inner-content .wp-block-group.has-border li:last-child{margin-bottom:0;}

/* ---- 講師プロフィールをカード化 ---- */
body.page-id-5004 .l-inner-content .wp-block-columns{
  background:#fff;border:1px solid var(--tr-line);border-radius:14px;
  padding:28px 30px!important;margin:0 0 8px!important;
  box-shadow:0 10px 30px rgba(11,31,58,.06);
  align-items:flex-start;
}
body.page-id-5004 .l-inner-content .wp-block-columns p{margin-top:0;}

/* 講師写真：lazyload で潰れないよう枠を確保し、肖像として整える */
body.page-id-5004 .l-inner-content .wp-block-image img{
  width:240px!important;max-width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center 20%;
  border-radius:14px;background:var(--tr-off);border:1px solid var(--tr-line);
  box-shadow:0 14px 34px rgba(11,31,58,.16);
}
body.page-id-5004 .l-inner-content .wp-block-image{margin:0 0 12px;}

/* ---- 事業者情報テーブル ---- */
body.page-id-5004 .l-inner-content .wp-block-table{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid var(--tr-line);border-radius:12px;margin:28px 0;
}
body.page-id-5004 .l-inner-content .wp-block-table table{
  width:100%;min-width:520px;border-collapse:collapse;border:0;
  font-size:16px;line-height:28px;
}
body.page-id-5004 .l-inner-content .wp-block-table td{
  padding:16px 18px;border:0;border-bottom:1px solid var(--tr-line);
  text-align:left;vertical-align:top;color:var(--tr-ink);
}
body.page-id-5004 .l-inner-content .wp-block-table tbody tr > td:first-child{
  background:var(--tr-off);font-weight:700;color:var(--tr-navy);
  white-space:nowrap;width:230px;
}
body.page-id-5004 .l-inner-content .wp-block-table tbody tr:last-child td{border-bottom:0;}
body.page-id-5004 .l-inner-content .wp-block-table a{
  color:var(--tr-blue);font-weight:700;border-bottom:1px solid rgba(23,105,170,.35);
}

/* ---- FAQ アコーディオン（他ページと統一） ---- */
body.page-id-5004 .dbp-accordion-title{
  font-size:19px!important;line-height:30px!important;font-weight:700!important;color:var(--tr-navy)!important;
}
body.page-id-5004 .dbp-accordion-content p{
  font-size:17px!important;line-height:31px!important;color:var(--tr-muted)!important;
}

/* 本文リンク */
body.page-id-5004 .l-inner-content p a,
body.page-id-5004 .l-inner-content li a{
  color:var(--tr-blue);font-weight:700;border-bottom:1px solid rgba(23,105,170,.35);
}
body.page-id-5004 .l-inner-content p a:hover,
body.page-id-5004 .l-inner-content li a:hover{border-bottom-color:var(--tr-blue);}

/* ボタン統一（濃紺 / 白+濃紺枠） */
.page-id-5004 .dbp-button{
  --dbp--button--color-background:#245A8D!important;
  --dbp--button--color-text:#FFFFFF!important;
  --dbp--button--color-border:#245A8D!important;
}
.page-id-5004 .dbp-button .dbp-button-link{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  min-height:58px;padding:0 32px!important;border-radius:8px!important;
  font-size:17px!important;font-weight:700!important;letter-spacing:.5px;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.page-id-5004 .dbp-button .dbp-button-link.is-button-design-fill{
  background-color:#245A8D!important;color:#fff!important;box-shadow:none!important;
}
.page-id-5004 .dbp-button .dbp-button-link.is-button-design-fill:hover{
  background-color:#3B82B6!important;transform:translateY(-2px);
}
.page-id-5004 .dbp-button .dbp-button-link.is-button-design-outline{
  background-color:#fff!important;color:#245A8D!important;box-shadow:inset 0 0 0 2px #245A8D!important;
}
.page-id-5004 .dbp-button .dbp-button-link.is-button-design-outline:hover{
  background-color:#EEF6FC!important;transform:translateY(-2px);
}

/* ---------- レスポンシブ ---------- */
@media (max-width:1100px){
  body.post-type-archive-voice .archive-title,
  body.post-type-archive-voice .archive-header h2{font-size:32px!important;line-height:48px!important;}
  body.page-id-5004 .article-header h1,
  body.page-id-5004 h1.entry-title{font-size:34px;line-height:50px;}
  body.page-id-5004 .l-inner-content h2,
  body.page-id-5004 .l-inner-content h2.wp-block-heading{
    font-size:28px!important;line-height:42px!important;margin-top:56px!important;padding:16px 20px!important;}
}
@media (max-width:820px){
  body.post-type-archive-voice .archive-title,
  body.post-type-archive-voice .archive-header h2{font-size:27px!important;line-height:41px!important;}
  body.page-id-5004 .article-header h1,
  body.page-id-5004 h1.entry-title{font-size:28px;line-height:44px;}
  body.page-id-5004 .l-inner-content h2,
  body.page-id-5004 .l-inner-content h2.wp-block-heading{
    font-size:25px!important;line-height:38px!important;margin-top:48px!important;
    margin-bottom:22px!important;padding:15px 18px!important;}
  body.page-id-5004 .l-inner-content h3,
  body.page-id-5004 .l-inner-content h3.wp-block-heading{font-size:21px!important;line-height:32px!important;margin-top:34px!important;}
  body.page-id-5004 .l-inner-content p,
  body.page-id-5004 .l-inner-content li{font-size:17px;line-height:31px;}
  body.page-id-5004 .l-inner-content .wp-block-image img{width:200px!important;}
  body.page-id-5004 .l-inner-content .wp-block-columns{padding:24px 22px!important;}
  body.page-id-5004 .l-inner-content .wp-block-group.has-border{padding:22px 22px!important;}
  body.page-id-5004 .l-inner-content .wp-block-table table{font-size:15px;line-height:26px;}
  body.page-id-5004 .l-inner-content .wp-block-table td{padding:13px 14px;}
  body.page-id-5004 .l-inner-content .wp-block-table tbody tr > td:first-child{width:160px;white-space:normal;}
}
@media (max-width:520px){
  body.post-type-archive-voice .archive-title,
  body.post-type-archive-voice .archive-header h2{font-size:24px!important;line-height:37px!important;}
  body.page-id-5004 .article-header h1,
  body.page-id-5004 h1.entry-title{font-size:25px;line-height:39px;}
  body.page-id-5004 .l-inner-content h2,
  body.page-id-5004 .l-inner-content h2.wp-block-heading{
    font-size:22px!important;line-height:34px!important;padding:14px 16px!important;}
  body.page-id-5004 .l-inner-content h3,
  body.page-id-5004 .l-inner-content h3.wp-block-heading{font-size:19px!important;line-height:30px!important;}
  body.page-id-5004 .l-inner-content p,
  body.page-id-5004 .l-inner-content li{font-size:16px;line-height:29px;}
  body.page-id-5004 .l-inner-content .wp-block-image img{width:170px!important;}
  body.page-id-5004 .l-inner-content .wp-block-columns{padding:20px 18px!important;}
  body.page-id-5004 .l-inner-content .wp-block-group.has-border{padding:20px 18px!important;}
  .page-id-5004 .dbp-button .dbp-button-link{width:100%;min-height:54px;font-size:16px!important;}

  /* 事業者情報テーブルは横スクロールさせず、ラベル上／値下の積み上げにする */
  body.page-id-5004 .l-inner-content .wp-block-table{overflow-x:visible;}
  body.page-id-5004 .l-inner-content .wp-block-table table{min-width:0;display:block;}
  body.page-id-5004 .l-inner-content .wp-block-table tbody,
  body.page-id-5004 .l-inner-content .wp-block-table tr{display:block;width:100%;}
  body.page-id-5004 .l-inner-content .wp-block-table td{
    display:block;width:auto!important;white-space:normal!important;
    padding:12px 16px;border-bottom:0;
  }
  body.page-id-5004 .l-inner-content .wp-block-table tbody tr > td:first-child{
    font-size:14px;letter-spacing:.5px;padding-bottom:6px;
  }
  body.page-id-5004 .l-inner-content .wp-block-table tbody tr > td:last-child{
    background:#fff;padding-top:10px;padding-bottom:18px;border-bottom:1px solid var(--tr-line);
  }
  body.page-id-5004 .l-inner-content .wp-block-table tbody tr:last-child > td:last-child{border-bottom:0;}
}

/* lazyload の未読込状態でも枠を確保（読込前に18x29pxへ潰れてCLSが出るため）
   ★ src="" の img は「置換要素」にならず inline の非置換要素として扱われ、
     width/height が一切効かない。display:block が必須。 */
body.page-id-5004 .l-inner-content .wp-block-image img.lazyload,
body.page-id-5004 .l-inner-content .wp-block-image img.lazyloading{
  display:block!important;
  width:240px!important;height:240px!important;max-width:100%!important;
  opacity:1!important;background:var(--tr-off)!important;text-indent:0!important;
}
@media (max-width:820px){
  body.page-id-5004 .l-inner-content .wp-block-image img.lazyload,
  body.page-id-5004 .l-inner-content .wp-block-image img.lazyloading{width:200px!important;height:200px!important;}
}
@media (max-width:520px){
  body.page-id-5004 .l-inner-content .wp-block-image img.lazyload,
  body.page-id-5004 .l-inner-content .wp-block-image img.lazyloading{width:170px!important;height:170px!important;}
}

/* ===== TRUST PAGES v1 END ===== */


/* ==========================================================================
   Phase5 ブログ記事テンプレート（scope: .single-post / voice・news アーカイブ）
   既存記事の本文HTMLは一切変更しない。見た目のみ統一する。
   ⚠ H2の青帯(#3B82B6 背景 + 白文字)は既定仕様のため踏襲する。濃紺文字に
     上書きするとコントラスト比が落ちて判読不能になるため変更しない。
   ========================================================================== */
.single-post{
  --mn-navy:#245A8D;
  --mn-blue:#2F6FAE;
  --mn-gold:#CFE3F5;
  --mn-line:#e2e9f1;
  --mn-ink:#2c3a48;
}

/* ---- 本文タイポグラフィ ---- */
.single-post .article-container{ max-width:900px; }
.single-post .single-post-main .content{ max-width:860px; margin-inline:auto; }

.single-post .single-post-main .content p,
.single-post .single-post-main .content li{
  font-size:18px;
  line-height:1.95;
  color:var(--mn-ink);
}
.single-post .single-post-main .content > p{ margin-block:1.2em; }
.single-post .single-post-main .content strong{ font-weight:700; color:var(--mn-navy); }
.single-post .single-post-main .content a{
  color:var(--mn-blue);
  text-underline-offset:3px;
}

/* 見出しの余白だけ整える（配色は既存を踏襲） */
.single-post .single-post-main .content h2{
  margin-top:2.6em;
  margin-bottom:1em;
  font-size:22px;
  line-height:1.55;
  scroll-margin-top:90px;
}
.single-post .single-post-main .content h3{
  margin-top:2em;
  margin-bottom:.8em;
  font-size:19px;
  line-height:1.6;
  scroll-margin-top:90px;
}
.single-post .single-post-main .content h4{
  margin-top:1.6em;
  margin-bottom:.6em;
  font-size:17px;
  line-height:1.6;
  color:var(--mn-navy);
}

.single-post .single-post-main .content table{ font-size:15px; }
.single-post .single-post-main .content figure{ margin-block:1.6em; }
.single-post .single-post-main .content img{ height:auto; }

/* 手動スペーサーが多用されているため上限を設ける（本文は変更しない） */
.single-post .single-post-main .content .wp-block-spacer{ max-height:32px; }

/* ---- 記事冒頭のインライン目次 ---- */
.single-post .mn-toc{
  margin:0 0 40px;
  padding:24px 26px;
  background:#F8FAFC;
  border:1px solid var(--mn-line);
  border-left:4px solid var(--mn-gold);
  border-radius:14px;
}
.single-post .mn-toc-title{
  margin:0 0 14px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--mn-blue);
}
.single-post .mn-toc .rd-toc-list{
  margin:0;
  padding-left:1.4em;
}
.single-post .mn-toc .rd-toc-list li{
  margin:0;
  font-size:15px;
  line-height:1.85;
}
.single-post .mn-toc .rd-toc-list a{
  color:var(--mn-navy);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color .18s ease,color .18s ease;
}
.single-post .mn-toc .rd-toc-list a:hover{
  color:var(--mn-blue);
  border-bottom-color:currentColor;
}
.single-post .mn-toc .rd-toc-list ol{
  margin:.2em 0 .5em;
  padding-left:1.3em;
}
.single-post .mn-toc .rd-toc-list ol li{
  font-size:14px;
  color:#5b6b7b;
}

/* ---- KEY / NOTE / WARNING ボックス（新規記事用） ---- */
.single-post .single-post-main .content .mn-box{
  margin-block:2em;
  padding:20px 22px 20px 24px;
  border-radius:12px;
  border-left:4px solid var(--mn-blue);
  background:#F8FAFC;
}
.single-post .single-post-main .content .mn-box > p{
  margin-block:.5em;
  font-size:15px;
  line-height:1.9;
}
.single-post .single-post-main .content .mn-box > p:first-child{ margin-top:0; }
.single-post .single-post-main .content .mn-box > p:last-child{ margin-bottom:0; }
.single-post .single-post-main .content .mn-box::before{
  content:attr(data-label);
  display:block;
  margin-bottom:10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  color:var(--mn-blue);
}
.single-post .single-post-main .content .mn-box-key{
  border-left-color:var(--mn-gold);
  background:#fdfaf0;
}
.single-post .single-post-main .content .mn-box-key::before{ color:#8a6d12; }
.single-post .single-post-main .content .mn-box-warn{
  border-left-color:#c0392b;
  background:#fdf3f2;
}
.single-post .single-post-main .content .mn-box-warn::before{ color:#a5342a; }

/* 既存の旧Diverブロックの見た目を揃える（本文は変更しない） */
.single-post .single-post-main .content .loos-cap-block,
.single-post .single-post-main .content [class*="cap-block"]{
  border-radius:12px;
}
.single-post .single-post-main .content .loos-balloon,
.single-post .single-post-main .content [class*="balloon"]{
  font-size:15px;
  line-height:1.85;
}

/* ---- 記事末CTA ---- */
.single-post .mn-post-cta{
  margin:56px 0 8px;
  padding:36px 32px;
  text-align:center;
  background:linear-gradient(160deg,var(--mn-navy) 0%,#245A8D 100%);
  border-radius:18px;
}
.single-post .mn-post-cta-k{
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2em;
  color:var(--mn-gold);
}
.single-post .mn-post-cta-t{
  margin:0 0 12px;
  font-size:clamp(18px,2vw,23px);
  font-weight:800;
  line-height:1.6;
  color:#fff;
}
.single-post .mn-post-cta-d{
  max-width:560px;
  margin:0 auto 24px;
  font-size:15px;
  line-height:1.9;
  color:#c6d7e8;
}
.single-post .mn-post-cta-btnrow{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  margin:0 0 12px;
}
.single-post .mn-post-cta-btn,
.single-post .mn-post-cta-sub{
  display:inline-block;
  padding:14px 30px;
  font-size:15px;
  font-weight:800;
  text-decoration:none;
  border-radius:9px;
  transition:opacity .2s ease,background .2s ease;
}
.single-post .mn-post-cta-btn{
  background:var(--mn-gold);
  color:var(--mn-navy);
}
.single-post .mn-post-cta-btn:hover{ opacity:.88; }
.single-post .mn-post-cta-sub{
  color:#fff;
  border:1px solid rgba(255,255,255,.5);
}
.single-post .mn-post-cta-sub:hover{ background:rgba(255,255,255,.12); }
.single-post .mn-post-cta-note{
  margin:0;
  font-size:12px;
  color:#a9c0d6;
}

/* ---- レスポンシブ ---- */
@media (max-width:768px){
  .single-post .single-post-main .content p,
  .single-post .single-post-main .content li{
    font-size:17px;
    line-height:1.9;
  }
  .single-post .single-post-main .content h2{
    margin-top:2.2em;
    font-size:20px;
  }
  .single-post .mn-toc{ padding:20px 18px; }
  .single-post .mn-post-cta{ padding:28px 18px; }
  .single-post .mn-post-cta-btnrow{ flex-direction:column; }
  .single-post .mn-post-cta-btn,
  .single-post .mn-post-cta-sub{ display:block; }
}


/* ==========================================================================
   大学詳細ページ（scope: .single-university）
   ⚠ html の font-size は 10px。rem は使わず px で指定する。
   ⚠ H2は青背景＋白文字。濃紺文字にするとコントラストが落ちるため使わない。
   ========================================================================== */
.single-university{
  --mn-navy:#245A8D;
  --mn-blue:#2F6FAE;
  --mn-gold:#CFE3F5;
  --mn-line:#e2e9f1;
  --mn-ink:#2c3a48;
  --mn-bg:#F8FAFC;
}

/* ---- セクション ---- */
.single-university .mn-uni__sec{
  margin-bottom:56px;
  padding-top:8px;
}

/* ---- H2: 青背景 + 白文字 ---- */
.single-university .mn-uni__sec > h2,
.single-university .mn-uni__body h2{
  margin:0 0 24px;
  padding:16px 22px;
  font-size:30px;
  font-weight:800;
  line-height:1.5;
  color:#fff;
  background:var(--mn-blue);
  border-radius:10px;
  border-left:6px solid var(--mn-gold);
  scroll-margin-top:90px;
}

/* ---- H3 / H4 ---- */
.single-university .mn-uni__sec h3{
  margin:40px 0 16px;
  padding-left:14px;
  font-size:22px;
  font-weight:700;
  line-height:1.6;
  color:var(--mn-navy);
  border-left:4px solid var(--mn-blue);
  scroll-margin-top:90px;
}
.single-university .mn-uni__sec h4{
  margin:28px 0 12px;
  font-size:18px;
  font-weight:700;
  line-height:1.6;
  color:var(--mn-navy);
}

/* ---- 本文 ---- */
.single-university .mn-uni__sec p,
.single-university .mn-uni__sec li{
  font-size:18px;
  line-height:1.95;
  color:var(--mn-ink);
}
.single-university .mn-uni__sec strong{ color:var(--mn-navy); }
.single-university .mn-uni__sec a{
  color:var(--mn-blue);
  text-underline-offset:3px;
}

/* ---- 表: 横スクロールは表の内側だけ ---- */
.single-university .mn-uni__sec figure.wp-block-table,
.single-university .mn-uni__tablewrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin-block:24px;
}
.single-university .mn-uni__sec table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  font-size:16px;
  line-height:1.8;
  border:1px solid var(--mn-line);
  border-radius:10px;
  overflow:hidden;
}
.single-university .mn-uni__sec th,
.single-university .mn-uni__sec td{
  padding:13px 16px;
  border-bottom:1px solid var(--mn-line);
  vertical-align:top;
}
.single-university .mn-uni__sec thead th{
  background:var(--mn-navy);
  color:#fff;
  font-weight:700;
  text-align:left;
}
.single-university .mn-uni__sec tbody th{
  width:32%;
  background:var(--mn-bg);
  color:var(--mn-navy);
  font-weight:700;
  text-align:left;
}
.single-university .mn-uni__sec tbody tr:last-child th,
.single-university .mn-uni__sec tbody tr:last-child td{ border-bottom:0; }

/* ---- 画像 ---- */
.single-university .mn-uni__sec figure.wp-block-image{ margin-block:28px; }
.single-university .mn-uni__sec figure.wp-block-image img{
  display:block;
  width:100%;
  height:auto;
  border-radius:12px;
}

/* ---- 埋め込み（YouTube 等） ---- */
.single-university .mn-uni__sec .wp-block-embed__wrapper{ position:relative; }
.single-university .mn-uni__sec iframe{
  width:100%;
  max-width:100%;
  aspect-ratio:16 / 9;
  height:auto;
  border-radius:12px;
}

/* ---- 手動スペーサーの抑制 ---- */
.single-university .mn-uni__sec .wp-block-spacer{ max-height:32px; }

/* ---- レスポンシブ ---- */
@media (max-width:768px){
  .single-university .mn-uni__sec{ margin-bottom:40px; }
  .single-university .mn-uni__sec > h2,
  .single-university .mn-uni__body h2{
    padding:13px 16px;
    font-size:22px;
    border-left-width:5px;
  }
  .single-university .mn-uni__sec h3{
    margin-top:30px;
    font-size:19px;
  }
  .single-university .mn-uni__sec p,
  .single-university .mn-uni__sec li{
    font-size:17px;
    line-height:1.9;
  }
  .single-university .mn-uni__sec table{ font-size:15px; }
  .single-university .mn-uni__sec th,
  .single-university .mn-uni__sec td{ padding:11px 12px; }
  .single-university .mn-uni__sec tbody th{ width:38%; }
}

/* ================================================================
   COMMON UI v1  —  全ページ共通ルール（v5指示書 §1〜§4）
   2026-07-22. UNITS: px only（rem/em/clamp/vw は一切使用しない）
   root font-size が 10px のため rem 指定は意図しない縮小を招く。

   1) タイポグラフィをpxで統一（PC/Mobile）
   2) 見出し前スペーサー（H2=40 / H3=32 / H4=24、最初の見出しは除外）
   3) 青背景H2＝#3B82B6＋白文字
   4) お問い合わせフォームのUI（/contact-us/）

   ※ セレクタは意図的に低詳細度（直下セレクタ）にしてある。
      ページ個別ブロック（body.page-id-XXXX 等）が常に優先される。
   ================================================================ */

/* ---------- 1. 本文タイポグラフィ ----------
   **直下セレクタのみ**を対象にする。dbp-card / accordion / step などの
   コンポーネント内部の見出し・本文には一切波及しない。
   テーマ側 .single-post .single-post-main .content h2（詳細度 0,3,1・!importantなし）
   に勝つ必要があるため !important を付ける。
   ページ個別ブロック（body.page-id-XXXX = 0,2,2以上 + !important）は引き続き優先される。 */
.content > p,
.l-inner-content > p{
  font-size:18px!important;
  line-height:34px!important;   /* 18px × 1.9 */
  margin-bottom:28px!important;
}
.content > ul > li,
.content > ol > li,
.l-inner-content > ul > li,
.l-inner-content > ol > li{
  font-size:18px!important;line-height:34px!important;margin-bottom:14px;
}
.content > ul,
.content > ol,
.l-inner-content > ul,
.l-inner-content > ol{margin-top:24px;margin-bottom:32px;}
/* 表・画像・引用の前後にも余白を確保（本文の窮屈さ解消）
   テーマの .content > * + * / .single-post ... に勝つため !important */
.content > figure,
.l-inner-content > figure,
.content > .wp-block-table,
.l-inner-content > .wp-block-table,
.content > .wp-block-image,
.l-inner-content > .wp-block-image{margin-top:32px!important;margin-bottom:40px!important;}
.content > blockquote,
.l-inner-content > blockquote{margin-top:32px!important;margin-bottom:32px!important;}
/* 表の文字が小さく読みにくいので本文に近づける
   （テーマ .single-post .single-post-main .content table = 詳細度0,3,1 に勝つため !important） */
.content > .wp-block-table table,
.l-inner-content > .wp-block-table table{font-size:16px!important;line-height:28px!important;}
.content > .wp-block-table th,
.content > .wp-block-table td,
.l-inner-content > .wp-block-table th,
.l-inner-content > .wp-block-table td{padding:14px 18px!important;font-size:16px!important;line-height:28px!important;}

/* ---------- 2. 見出しサイズ＋前スペーサー ---------- */
.content > h2,
.l-inner-content > h2{font-size:32px!important;line-height:48px!important;font-weight:800;}
.content > h3,
.l-inner-content > h3{font-size:24px!important;line-height:38px!important;font-weight:800;}
.content > h4,
.l-inner-content > h4{font-size:20px!important;line-height:32px!important;font-weight:800;}

.content > h2:not(:first-child),
.l-inner-content > h2:not(:first-child){margin-top:80px!important;margin-bottom:24px!important;}
.content > h3:not(:first-child),
.l-inner-content > h3:not(:first-child){margin-top:56px!important;margin-bottom:18px!important;}
.content > h4:not(:first-child),
.l-inner-content > h4:not(:first-child){margin-top:40px!important;margin-bottom:14px!important;}
/* 自動スペーサー(mn-content-controls)は margin と二重加算になるため無効化し、
   余白は上記 margin に一元化する。スペーサーが無いページ（ショートコード含有）でも
   同じ間隔になる。 */
.content .mn-cc-auto-spacer,
.l-inner-content .mn-cc-auto-spacer{height:0!important;min-height:0!important;}
.content > h2:first-child,
.content > h3:first-child,
.content > h4:first-child,
.l-inner-content > h2:first-child,
.l-inner-content > h3:first-child,
.l-inner-content > h4:first-child{margin-top:0!important;}
.content > h2 + *,
.content > h3 + *,
.content > h4 + *,
.l-inner-content > h2 + *,
.l-inner-content > h3 + *,
.l-inner-content > h4 + *{margin-top:0!important;}

/* ---------- 3. 青背景H2（Re:Diver の帯仕様） ----------
   ⚠ 帯を「全ページのh2」に付けてはいけない。
   LPページ（italy-med / moshi 等）の h2 はページ個別ブロックで濃紺文字に
   指定されており、そこへ背景だけ足すと濃紺on青＝コントラスト1.07で読めなくなる。
   帯が実際に存在するのは **記事本文（single-post）** なので、そこだけを対象にする。
   色は #3B82B6 ＋ 白文字（CR 5.77）。 */
.single-post .single-post-main .content h2:not([class]),
.single-post .single-post-main .content h2.wp-block-heading:not([class*="is-style-"]):not([class*="is-design-"]),
.single-post .single-post-main .content h2.is-style-default{
  background-color:#3B82B6!important;
  color:#FFFFFF!important;
}
.single-post .single-post-main .content h2 a{color:#FFFFFF!important;}

/* ⚠ 固定ページの h2 には色を一切指定しない。
   固定ページは帯が無い（背景透明）ため、ここで白を当てると白地に白文字になる。
   実際に 2026-07-22 に /italy-med/ で CR=1.07 の事故を起こしたので規則を撤回した。
   固定ページの h2 色は、各ページ個別ブロックの指定に委ねる。 */

/* ---------- 4. お問い合わせフォーム（/contact-us/ 103079） ----------
   CF7のフォーム構造・フィールド名・メール設定は一切変更していない。
   「（必須）」のバッジ化のみ mu-plugin が出力時に span へ置換している。 */
.page-id-103079{
  --mf-navy:#245A8D;
  --mf-blue:#2F6FAE;
  --mf-line:#DCE6F0;
  --mf-off:#F8FAFC;
  --mf-ink:#172033;
}
.page-id-103079 .mn-form{
  background:#fff;border:1px solid var(--mf-line);border-radius:14px;
  padding:40px;box-shadow:0 10px 32px rgba(11,31,58,.07);
}
.page-id-103079 .mn-form p{margin:0 0 24px;}
.page-id-103079 .mn-form p:last-child{margin-bottom:0;}

/* ラベル */
.page-id-103079 .mn-form label{
  display:block;font-size:17px!important;line-height:28px!important;
  font-weight:700!important;color:var(--mf-navy)!important;
}
.page-id-103079 .mn-form label br{display:none;}
.page-id-103079 .mn-form .wpcf7-form-control-wrap{display:block;margin-top:10px;}

/* 必須バッジ */
.page-id-103079 .mn-req{
  display:inline-block;vertical-align:2px;margin-left:10px;
  padding:3px 9px;border-radius:4px;
  background:var(--mf-navy);color:#FFFFFF;
  font-size:12px;line-height:18px;font-weight:700;letter-spacing:1px;
}
.page-id-103079 .mn-opt{
  display:inline-block;vertical-align:2px;margin-left:10px;
  padding:3px 9px;border-radius:4px;
  background:#F8FAFC;color:#5A6B7D;
  font-size:12px;line-height:18px;font-weight:700;letter-spacing:1px;
}

/* 入力欄 */
.page-id-103079 .wpcf7-form input[type="text"],
.page-id-103079 .wpcf7-form input[type="email"],
.page-id-103079 .wpcf7-form input[type="tel"],
.page-id-103079 .wpcf7-form input[type="url"],
.page-id-103079 .wpcf7-form select,
.page-id-103079 .wpcf7-form textarea{
  width:100%!important;box-sizing:border-box;
  font-size:16px!important;line-height:26px!important;color:var(--mf-ink)!important;
  background:var(--mf-off)!important;
  border:1px solid var(--mf-line)!important;border-radius:10px!important;
  padding:13px 16px!important;
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease;
}
.page-id-103079 .wpcf7-form input[type="text"],
.page-id-103079 .wpcf7-form input[type="email"],
.page-id-103079 .wpcf7-form input[type="tel"],
.page-id-103079 .wpcf7-form input[type="url"],
.page-id-103079 .wpcf7-form select{min-height:54px!important;}
.page-id-103079 .wpcf7-form textarea{min-height:170px!important;resize:vertical;}

.page-id-103079 .wpcf7-form input:focus,
.page-id-103079 .wpcf7-form select:focus,
.page-id-103079 .wpcf7-form textarea:focus{
  outline:none!important;background:#fff!important;
  border-color:var(--mf-blue)!important;
  box-shadow:0 0 0 3px rgba(23,105,170,.16)!important;
}
.page-id-103079 .wpcf7-form ::placeholder{color:#5B6778;opacity:1;}

/* 必須欄は左に濃紺のライン（border ショートハンドに勝つため要素名を含める） */
.page-id-103079 .wpcf7-form input[aria-required="true"],
.page-id-103079 .wpcf7-form select[aria-required="true"],
.page-id-103079 .wpcf7-form textarea[aria-required="true"]{
  border-left:3px solid var(--mf-navy)!important;
  padding-left:14px!important;
}

/* 送信ボタン */
.page-id-103079 .wpcf7-form input[type="submit"],
.page-id-103079 .wpcf7-form button[type="submit"]{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:56px;padding:0 44px!important;
  background:var(--mf-navy)!important;color:#fff!important;
  border:0!important;border-radius:8px!important;
  font-size:17px!important;font-weight:700!important;letter-spacing:.5px;
  cursor:pointer;transition:background-color .18s ease,transform .18s ease;
}
.page-id-103079 .wpcf7-form input[type="submit"]:hover,
.page-id-103079 .wpcf7-form button[type="submit"]:hover{
  background:var(--mf-blue)!important;transform:translateY(-2px);
}

/* エラー・完了メッセージ */
.page-id-103079 .wpcf7-not-valid-tip{
  font-size:14px!important;line-height:22px;color:#C0392B!important;margin-top:8px;font-weight:700;
}
.page-id-103079 .wpcf7-form input.wpcf7-not-valid,
.page-id-103079 .wpcf7-form textarea.wpcf7-not-valid{
  border-color:#C0392B!important;background:#FDF6F5!important;
}
.page-id-103079 .wpcf7-response-output{
  font-size:16px!important;line-height:27px;border-radius:8px!important;
  padding:16px 18px!important;margin:24px 0 0!important;border-width:1px!important;
}

/* ---------- 5. lazyload で潰れる画像の枠確保 ----------
   Re:Diver の lazyload は src を空にして data-src に退避する。
   img が display:inline のままだと width/height 属性が無視され、
   1100x783 の画像が 87x32 に潰れる（CLSと表示崩れの原因）。
   media-text ブロックの画像は必ずカラム幅いっぱいに表示させる。 */
.wp-block-media-text__media img{
  display:block;width:100%;height:auto;
}
/* 本文中の figure 画像も同様に枠を確保する */
.content .wp-block-image img[data-src],
.l-inner-content .wp-block-image img[data-src]{
  display:block;height:auto;
}

/* ---------- 6. /moshi/ ヒーロー画像の比率 ----------
   縦長になりすぎないよう 4:3 に固定する。 */
.page-id-105593 .mmh-hero img{
  aspect-ratio:4 / 3;object-fit:cover;display:block;width:100%;height:auto;
}
.page-id-105593 .mmh-hero .mmh-credit img{
  aspect-ratio:1 / 1;width:56px;height:56px;
}

/* ---------- 7. /tutor-trial/ の画像重複解消 ----------
   アイキャッチと本文冒頭が同一ファイル（17-4.webp）で2枚並んでいたため、
   アイキャッチ側を隠して本文側をヒーローとして1枚だけ見せる。
   （/contact-us/ で使ったのと同じ手法・本文は変更しない） */
.page-id-3864 .article-header .single_thumb,
.page-id-3864 .article-header .eyecatch,
.page-id-3864 .single_thumb{display:none!important;}

/* ---------- レスポンシブ ---------- */
@media (max-width:820px){
  .content > p, .l-inner-content > p,
  .content > ul > li, .content > ol > li,
  .l-inner-content > ul > li, .l-inner-content > ol > li{font-size:17px!important;line-height:32px!important;}
  .content > h2, .l-inner-content > h2{font-size:26px!important;line-height:40px!important;}
  .content > h3, .l-inner-content > h3{font-size:21px!important;line-height:33px!important;}
  .content > h4, .l-inner-content > h4{font-size:18px!important;line-height:29px!important;}
  .content > h2:not(:first-child), .l-inner-content > h2:not(:first-child){margin-top:56px!important;margin-bottom:18px!important;}
  .content > h3:not(:first-child), .l-inner-content > h3:not(:first-child){margin-top:40px!important;margin-bottom:14px!important;}
  .content > h4:not(:first-child), .l-inner-content > h4:not(:first-child){margin-top:30px!important;margin-bottom:12px!important;}
  .content > p, .l-inner-content > p{margin-bottom:24px!important;}
  .content > ul, .content > ol, .l-inner-content > ul, .l-inner-content > ol{margin-bottom:26px;}
  .content > figure, .l-inner-content > figure,
  .content > .wp-block-image, .l-inner-content > .wp-block-image,
  .content > .wp-block-table, .l-inner-content > .wp-block-table{margin-top:26px!important;margin-bottom:30px!important;}
  .page-id-103079 .mn-form{padding:26px 20px;border-radius:12px;}
  .page-id-103079 .mn-form label{font-size:16px!important;line-height:27px!important;}
}
@media (max-width:520px){
  .content > p, .l-inner-content > p,
  .content > ul > li, .content > ol > li,
  .l-inner-content > ul > li, .l-inner-content > ol > li{font-size:16px!important;line-height:29px!important;}
  .page-id-103079 .mn-form{padding:22px 16px;}
  .page-id-103079 .wpcf7-form input[type="submit"],
  .page-id-103079 .wpcf7-form button[type="submit"]{width:100%;padding:0 20px!important;}
}
/* ===== COMMON UI v1 END ===== */


/* --- 大学ページ 共通セクション（合格戦略・比較・CTA）--- */
.single-university .mn-u-list{
  list-style:none;
  margin:0 0 24px;
  padding:0;
  display:grid;
  gap:12px;
}
.single-university .mn-u-list li{
  position:relative;
  padding:14px 18px 14px 44px;
  font-size:17px;
  line-height:1.8;
  color:var(--mn-ink);
  background:var(--mn-bg);
  border-radius:10px;
  border-left:3px solid var(--mn-gold);
}
.single-university .mn-u-list li::before{
  content:"";
  position:absolute;
  left:18px;
  top:1.35em;
  width:10px;
  height:2px;
  background:var(--mn-blue);
}
.single-university .mn-u-navnote,
.single-university .mn-u-note{
  padding:16px 18px;
  font-size:15px;
  line-height:1.9;
  color:#5b6b7b;
  background:var(--mn-bg);
  border-radius:10px;
}
.single-university .mn-u-note{ font-size:14px; }
.single-university .mn-u-lead{ margin-bottom:20px; }

/* CTA */
.single-university .mn-u-cta{
  margin:64px 0 24px;
  padding:40px 34px;
  text-align:center;
  background:linear-gradient(160deg,var(--mn-navy) 0%,#245A8D 100%);
  border-radius:18px;
}
.single-university .mn-u-cta-k{
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2em;
  color:var(--mn-gold);
}
.single-university .mn-u-cta .mn-u-cta-t{
  margin:0 0 14px;
  padding:0;
  background:none;
  border:0;
  font-size:26px;
  font-weight:800;
  line-height:1.55;
  color:#fff;
}
.single-university .mn-u-cta-d{
  max-width:620px;
  margin:0 auto 26px;
  font-size:16px;
  line-height:1.95;
  color:#c6d7e8;
}
.single-university .mn-u-cta-btnrow{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  margin:0 0 12px;
}
.single-university .mn-u-cta-btn,
.single-university .mn-u-cta-sub{
  display:inline-block;
  padding:15px 32px;
  font-size:16px;
  font-weight:800;
  text-decoration:none;
  border-radius:9px;
}
.single-university .mn-u-cta-btn{
  background:var(--mn-gold);
  color:var(--mn-navy);
}
.single-university .mn-u-cta-sub{
  color:#fff;
  border:1px solid rgba(255,255,255,.5);
}
.single-university .mn-u-cta-note{
  margin:0;
  font-size:13px;
  color:#a9c0d6;
}

@media (max-width:768px){
  .single-university .mn-u-cta{ padding:30px 18px; }
  .single-university .mn-u-cta .mn-u-cta-t{ font-size:21px; }
  .single-university .mn-u-cta-btnrow{ flex-direction:column; }
  .single-university .mn-u-cta-btn,
  .single-university .mn-u-cta-sub{ display:block; }
  .single-university .mn-u-list li{
    padding:12px 14px 12px 38px;
    font-size:16px;
  }
}

/* ================================================================
   TUTORING FAMILY v1  —  /tutoring/ を基準に個別指導系4ページを統一
   105331 tutoring（親） / 107633 月額プラン / 107635 短期集中プラン / 3864 体験授業
   2026-07-22. UNITS: px only.
   目的: 「枠なし・角丸なしの四角ボックスが並ぶだけ」の状態を解消し、
         高さ統一・余白設計・タイポグラフィで教育サービスらしい密度を出す。
   ================================================================ */
.page-id-105331,
.page-id-107633,
.page-id-107635,
.page-id-3864{
  --tf-navy:#245A8D;
  --tf-blue:#2F6FAE;
  --tf-gold:#CFE3F5;
  --tf-off:#F8FAFC;
  --tf-line:#DCE6F0;
  --tf-muted:#5B6778;
  --tf-ink:#172033;
}

/* ---------- カードの高さを揃える ---------- */
.page-id-105331 .dbp-column,
.page-id-107633 .dbp-column,
.page-id-107635 .dbp-column,
.page-id-3864 .dbp-column{align-items:stretch;}

.page-id-105331 .dbp-column-item,
.page-id-107633 .dbp-column-item,
.page-id-107635 .dbp-column-item,
.page-id-3864 .dbp-column-item{display:flex;align-items:stretch;}

/* グリッド項目は伸びるがカード自身が伸びないため height:100% を明示する。
   （align-items:stretch だけでは .dbp-card が親高さを埋めなかった） */
.page-id-105331 .dbp-column-item > .dbp-card,
.page-id-107633 .dbp-column-item > .dbp-card,
.page-id-107635 .dbp-column-item > .dbp-card,
.page-id-3864 .dbp-column-item > .dbp-card{
  width:100%;height:100%;display:flex;align-self:stretch;
}

/* ---------- カード本体 ---------- */
.page-id-105331 .dbp-card__inner,
.page-id-107633 .dbp-card__inner,
.page-id-107635 .dbp-card__inner,
.page-id-3864 .dbp-card__inner{
  width:100%;height:100%;box-sizing:border-box;
  padding:28px 26px!important;
  background:#FFFFFF;
  border:1px solid var(--tf-line);
  border-radius:12px;
  box-shadow:0 2px 8px rgba(11,31,58,.04);
  transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease;
}
.page-id-105331 .dbp-card__inner:hover,
.page-id-107633 .dbp-card__inner:hover,
.page-id-107635 .dbp-card__inner:hover,
.page-id-3864 .dbp-card__inner:hover{
  border-color:#DCE6F0;
  box-shadow:0 14px 32px rgba(11,31,58,.10);
  transform:translateY(-2px);
}

/* ---------- カード内タイポグラフィ ---------- */
.page-id-105331 .dbp-card__inner h3,
.page-id-107633 .dbp-card__inner h3,
.page-id-107635 .dbp-card__inner h3,
.page-id-3864 .dbp-card__inner h3{
  font-size:19px!important;line-height:30px!important;font-weight:800!important;
  color:var(--tf-navy)!important;margin:0 0 12px!important;
  background:none!important;padding:0!important;
}
.page-id-105331 .dbp-card__inner h4,
.page-id-107633 .dbp-card__inner h4,
.page-id-107635 .dbp-card__inner h4,
.page-id-3864 .dbp-card__inner h4{
  font-size:17px!important;line-height:27px!important;font-weight:800!important;
  color:var(--tf-navy)!important;margin:0 0 10px!important;
}
.page-id-105331 .dbp-card__inner p,
.page-id-107633 .dbp-card__inner p,
.page-id-107635 .dbp-card__inner p,
.page-id-3864 .dbp-card__inner p,
.page-id-105331 .dbp-card__inner li,
.page-id-107633 .dbp-card__inner li,
.page-id-107635 .dbp-card__inner li,
.page-id-3864 .dbp-card__inner li{
  font-size:16px!important;line-height:28px!important;color:var(--tf-muted)!important;
}
.page-id-105331 .dbp-card__inner > *:last-child,
.page-id-107633 .dbp-card__inner > *:last-child,
.page-id-107635 .dbp-card__inner > *:last-child,
.page-id-3864 .dbp-card__inner > *:last-child{margin-bottom:0!important;}

/* ---------- 吹き出し（mtu-bubble）は枠を二重にしない ---------- */
.page-id-105331 .mtu-bubble,
.page-id-107633 .mtu-bubble,
.page-id-107635 .mtu-bubble,
.page-id-3864 .mtu-bubble{background:var(--tf-off);border:1px solid var(--tf-line);border-radius:10px;}

/* ---------- FAQ アコーディオン（他ページと統一） ---------- */
.page-id-107633 .dbp-accordion-item,
.page-id-107635 .dbp-accordion-item,
.page-id-3864 .dbp-accordion-item{
  border:0!important;border-bottom:1px solid var(--tf-line)!important;
  border-radius:0!important;background:none!important;box-shadow:none!important;margin:0!important;
}
.page-id-107633 .dbp-accordion-title,
.page-id-107635 .dbp-accordion-title,
.page-id-3864 .dbp-accordion-title{
  font-size:18px!important;line-height:29px!important;font-weight:700!important;color:var(--tf-navy)!important;
}
.page-id-107633 .dbp-accordion-content p,
.page-id-107635 .dbp-accordion-content p,
.page-id-3864 .dbp-accordion-content p{
  font-size:16px!important;line-height:29px!important;color:var(--tf-muted)!important;
}

/* ---------- ボタン統一（濃紺 / 白+濃紺枠） ---------- */
.page-id-107633 .dbp-button,
.page-id-107635 .dbp-button,
.page-id-3864 .dbp-button{
  --dbp--button--color-background:#245A8D!important;
  --dbp--button--color-text:#FFFFFF!important;
  --dbp--button--color-border:#245A8D!important;
}
.page-id-107633 .dbp-button .dbp-button-link,
.page-id-107635 .dbp-button .dbp-button-link,
.page-id-3864 .dbp-button .dbp-button-link{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  min-height:58px;padding:0 32px!important;border-radius:8px!important;
  font-size:17px!important;font-weight:700!important;letter-spacing:.5px;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.page-id-107633 .dbp-button .dbp-button-link.is-button-design-fill,
.page-id-107635 .dbp-button .dbp-button-link.is-button-design-fill,
.page-id-3864 .dbp-button .dbp-button-link.is-button-design-fill{
  background-color:#245A8D!important;color:#FFFFFF!important;box-shadow:none!important;
}
.page-id-107633 .dbp-button .dbp-button-link.is-button-design-fill:hover,
.page-id-107635 .dbp-button .dbp-button-link.is-button-design-fill:hover,
.page-id-3864 .dbp-button .dbp-button-link.is-button-design-fill:hover{
  background-color:#3B82B6!important;transform:translateY(-2px);
}
.page-id-107633 .dbp-button .dbp-button-link.is-button-design-outline,
.page-id-107635 .dbp-button .dbp-button-link.is-button-design-outline,
.page-id-3864 .dbp-button .dbp-button-link.is-button-design-outline{
  background-color:#FFFFFF!important;color:#245A8D!important;
  box-shadow:inset 0 0 0 2px #245A8D!important;
}

/* ---------- セクション間の余白 ---------- */
.page-id-107633 .dbp-column,
.page-id-107635 .dbp-column,
.page-id-3864 .dbp-column{margin-bottom:8px;}

/* ---------- レスポンシブ ---------- */
@media (max-width:820px){
  .page-id-105331 .dbp-card__inner,
  .page-id-107633 .dbp-card__inner,
  .page-id-107635 .dbp-card__inner,
  .page-id-3864 .dbp-card__inner{padding:22px 20px!important;border-radius:10px;}
  .page-id-105331 .dbp-card__inner h3,
  .page-id-107633 .dbp-card__inner h3,
  .page-id-107635 .dbp-card__inner h3,
  .page-id-3864 .dbp-card__inner h3{font-size:18px!important;line-height:29px!important;}
}
@media (max-width:520px){
  .page-id-105331 .dbp-card__inner,
  .page-id-107633 .dbp-card__inner,
  .page-id-107635 .dbp-card__inner,
  .page-id-3864 .dbp-card__inner{padding:20px 16px!important;}
  .page-id-107633 .dbp-button .dbp-button-link,
  .page-id-107635 .dbp-button .dbp-button-link,
  .page-id-3864 .dbp-button .dbp-button-link{width:100%;min-height:54px;font-size:16px!important;}
}
/* ===== TUTORING FAMILY v1 END ===== */

/* ================================================================
   ITALY-MED REASONS v1  —  /italy-med/ (105266)「mirunoteが選ばれる理由」
   2026-07-22. UNITS: px only.
   単純カードの羅列にせず、番号・階層・余白で読み順を作る。
   ================================================================ */
.page-id-105266 .mni-reasons{
  background:linear-gradient(168deg,#245A8D 0%,#245A8D 100%);
  border-radius:16px;padding:72px 40px;margin:56px 0;
}
.page-id-105266 .mni-r-in{max-width:1080px;margin:0 auto;}
.page-id-105266 .mni-r-eyebrow{
  display:block;font-size:14px;font-weight:800;letter-spacing:3px;color:#CFE3F5;margin-bottom:16px;
}
.page-id-105266 h2.mni-r-title{
  font-size:36px!important;line-height:52px!important;font-weight:800!important;
  color:#FFFFFF!important;background:none!important;border:0!important;
  padding:0!important;margin:0 0 18px!important;letter-spacing:.5px;
}
.page-id-105266 h2.mni-r-title::before,
.page-id-105266 h2.mni-r-title::after{content:none!important;display:none!important;}
.page-id-105266 .mni-r-sub{
  font-size:17px!important;line-height:31px!important;color:#D8E7F5!important;
  max-width:820px;margin:0 0 44px!important;
}
.page-id-105266 .mni-r-sub strong{color:#FFFFFF;font-weight:800;}

.page-id-105266 .mni-r-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch;
}
.page-id-105266 .mni-r-card{
  display:flex;flex-direction:column;height:100%;box-sizing:border-box;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;padding:30px 28px;
}
.page-id-105266 .mni-r-no{
  display:inline-block;font-size:13px;font-weight:800;letter-spacing:2px;
  color:#CFE3F5;margin-bottom:12px;
}
.page-id-105266 h3.mni-r-h{
  font-size:21px!important;line-height:32px!important;font-weight:800!important;
  color:#FFFFFF!important;background:none!important;padding:0!important;
  margin:0 0 12px!important;
}
.page-id-105266 .mni-r-lead{
  font-size:16px!important;line-height:28px!important;color:#D8E7F5!important;margin:0 0 16px!important;
}
.page-id-105266 ul.mni-r-list{
  list-style:none;margin:0;padding:0;
}
.page-id-105266 ul.mni-r-list li{
  position:relative;padding-left:22px;margin-bottom:9px;
  font-size:16px!important;line-height:27px!important;color:#D8E7F5!important;
}
.page-id-105266 ul.mni-r-list li::before{
  content:"";position:absolute;left:0;top:11px;
  width:8px;height:8px;border-radius:2px;background:#CFE3F5;
}
.page-id-105266 ul.mni-r-list li:last-child{margin-bottom:0;}
.page-id-105266 .mni-r-note{
  font-size:14px!important;line-height:23px!important;color:#D8E7F5!important;
  margin:16px 0 0!important;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);
}

/* ---------- レスポンシブ ---------- */
@media (max-width:900px){
  .page-id-105266 .mni-r-grid{grid-template-columns:1fr;gap:18px;}
  .page-id-105266 .mni-reasons{padding:56px 26px;border-radius:12px;}
  .page-id-105266 h2.mni-r-title{font-size:29px!important;line-height:44px!important;}
}
@media (max-width:520px){
  .page-id-105266 .mni-reasons{padding:44px 18px;margin:40px 0;}
  .page-id-105266 h2.mni-r-title{font-size:25px!important;line-height:38px!important;}
  .page-id-105266 .mni-r-sub{font-size:16px!important;line-height:29px!important;margin-bottom:32px!important;}
  .page-id-105266 .mni-r-card{padding:24px 20px;}
  .page-id-105266 h3.mni-r-h{font-size:19px!important;line-height:30px!important;}
}
/* ===== ITALY-MED REASONS v1 END ===== */

/* ================================================================
   TUTORING PHOTOS v1  —  個別指導系ページの写真表示
   107633 月額プラン / 107635 短期集中プラン / 3864 体験授業
   2026-07-22. UNITS: px only.
   ⚠ Re:Diver の lazyload は src を空にするため、display:block と
     aspect-ratio が無いと画像が数十pxに潰れる。必ず枠を確保する。
   ================================================================ */
.page-id-107633 .mtu-photo,
.page-id-107635 .mtu-photo,
.page-id-3864 .mtu-photo{
  margin:24px 0 36px;
}
.page-id-107633 .mtu-photo img,
.page-id-107635 .mtu-photo img,
.page-id-3864 .mtu-photo img{
  display:block;width:100%;height:auto;
  aspect-ratio:5 / 3;object-fit:cover;object-position:center 40%;
  border-radius:14px;
  border:1px solid #DCE6F0;
  background:#F8FAFC;
  box-shadow:0 14px 34px rgba(11,31,58,.12);
}
/* 講師のポートレートは正方形で小さめに。
   ⚠ lazyload 中は src が空になるため [src*=…] だけでは一致しない。
      data-src も対象に含めること。 */
.page-id-3864 .mtu-photo img[src*="mirunote-Nobu"],
.page-id-3864 .mtu-photo img[src*="mirunote-Rui"],
.page-id-3864 .mtu-photo img[data-src*="mirunote-Nobu"],
.page-id-3864 .mtu-photo img[data-src*="mirunote-Rui"]{
  width:220px!important;aspect-ratio:1 / 1!important;object-position:center 25%;
  margin:0 auto;border-radius:14px;
}
.page-id-107633 .mtu-photo figcaption,
.page-id-107635 .mtu-photo figcaption,
.page-id-3864 .mtu-photo figcaption{
  margin-top:12px;text-align:center;
  font-size:14px;line-height:23px;color:#5B6778;
}

/* ---------- レスポンシブ ---------- */
@media (max-width:820px){
  .page-id-107633 .mtu-photo,
  .page-id-107635 .mtu-photo,
  .page-id-3864 .mtu-photo{margin:20px 0 30px;}
  .page-id-107633 .mtu-photo img,
  .page-id-107635 .mtu-photo img,
  .page-id-3864 .mtu-photo img{aspect-ratio:4 / 3;border-radius:12px;}
  .page-id-3864 .mtu-photo img[src*="mirunote-Nobu"],
  .page-id-3864 .mtu-photo img[src*="mirunote-Rui"],
  .page-id-3864 .mtu-photo img[data-src*="mirunote-Nobu"],
  .page-id-3864 .mtu-photo img[data-src*="mirunote-Rui"]{width:180px!important;}
}
@media (max-width:520px){
  .page-id-107633 .mtu-photo img,
  .page-id-107635 .mtu-photo img,
  .page-id-3864 .mtu-photo img{aspect-ratio:3 / 2;}
  .page-id-3864 .mtu-photo img[src*="mirunote-Nobu"],
  .page-id-3864 .mtu-photo img[src*="mirunote-Rui"],
  .page-id-3864 .mtu-photo img[data-src*="mirunote-Nobu"],
  .page-id-3864 .mtu-photo img[data-src*="mirunote-Rui"]{width:150px!important;}
  .page-id-107633 .mtu-photo figcaption,
  .page-id-107635 .mtu-photo figcaption,
  .page-id-3864 .mtu-photo figcaption{font-size:13px;line-height:21px;}
}
/* ===== TUTORING PHOTOS v1 END ===== */

/* ================================================================
   EASTERN-EUROPE (105270) v1  —  /eastern-europe-med/
   2026-07-22. UNITS: px only. /italy-med/ と同水準の海外医学部進学LP。
   ================================================================ */
.page-id-105270{
  --ee-navy:#245A8D; --ee-blue:#2F6FAE; --ee-gold:#CFE3F5;
  --ee-off:#F8FAFC; --ee-line:#DCE6F0; --ee-muted:#5B6778; --ee-ink:#172033;
}

/* ---------- Hero ---------- */
.page-id-105270 .mee-hero{margin:8px 0 8px;}
.page-id-105270 .mee-eyebrow{
  display:block;font-size:14px;font-weight:800;letter-spacing:3px;color:var(--ee-blue);margin-bottom:16px;
}
.page-id-105270 .mee-lead{
  font-size:19px!important;line-height:34px!important;color:var(--ee-ink)!important;
  max-width:900px;margin:0 0 28px!important;font-weight:500;
}
.page-id-105270 .mee-heroimg{margin:0;border-radius:16px;overflow:hidden;box-shadow:0 22px 52px rgba(11,31,58,.2);}
.page-id-105270 .mee-heroimg img{
  display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;background:#DCE6F0;
}
.page-id-105270 .mee-heroimg figcaption{
  font-size:13px;line-height:20px;color:#5B6778;text-align:right;padding:8px 4px 0;
}

/* ---------- グリッド共通 ---------- */
.page-id-105270 .mee-grid{display:grid;gap:22px;align-items:stretch;margin:8px 0 8px;}
.page-id-105270 .mee-grid-2{grid-template-columns:1fr 1fr;}

/* ---------- 国カード ---------- */
.page-id-105270 .mee-card{
  display:flex;flex-direction:column;height:100%;box-sizing:border-box;
  background:#fff;border:1px solid var(--ee-line);border-radius:12px;padding:26px 24px;
  box-shadow:0 2px 8px rgba(11,31,58,.04);
}
.page-id-105270 .mee-card-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px;
  padding-bottom:14px;border-bottom:1px solid var(--ee-line);}
.page-id-105270 .mee-card-head b{font-size:20px;font-weight:800;color:var(--ee-navy);}
/* 金色は白背景ではコントラスト不足（2.42）になるため、白カード上ではミュート色にする。
   金は濃紺背景の .mee-r-no でのみ使用する。 */
.page-id-105270 .mee-card-head span{font-size:13px;font-weight:700;letter-spacing:1px;color:var(--ee-muted);}
.page-id-105270 .mee-card-city{font-size:15px!important;line-height:24px!important;font-weight:700;color:var(--ee-blue)!important;margin:0 0 8px!important;}
.page-id-105270 .mee-card-desc{font-size:16px!important;line-height:27px!important;color:var(--ee-muted)!important;margin:0!important;}

/* ---------- 入試方式ミニカード ---------- */
.page-id-105270 .mee-mini{
  box-sizing:border-box;height:100%;background:var(--ee-off);
  border:1px solid var(--ee-line);border-radius:10px;padding:22px 22px;
}
.page-id-105270 h3.mee-mini-h{
  font-size:18px!important;line-height:28px!important;font-weight:800!important;color:var(--ee-navy)!important;
  margin:0 0 8px!important;padding:0!important;background:none!important;
}
.page-id-105270 .mee-mini p{font-size:16px!important;line-height:27px!important;color:var(--ee-muted)!important;margin:0!important;}

/* ---------- 特徴カード（濃紺帯） ---------- */
.page-id-105270 .mee-reason{
  box-sizing:border-box;height:100%;background:linear-gradient(165deg,#245A8D,#245A8D);
  border-radius:12px;padding:28px 26px;
}
.page-id-105270 .mee-r-no{display:inline-block;font-size:13px;font-weight:800;letter-spacing:2px;color:var(--ee-gold);margin-bottom:10px;}
.page-id-105270 h3.mee-r-h{
  font-size:20px!important;line-height:31px!important;font-weight:800!important;color:#fff!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-105270 .mee-reason p{font-size:16px!important;line-height:27px!important;color:#D8E7F5!important;margin:0!important;}

/* ---------- 有料相談チェックリスト ---------- */
.page-id-105270 ul.mee-check{list-style:none;margin:16px 0;padding:0;
  background:var(--ee-off);border:1px solid var(--ee-line);border-radius:12px;padding:26px 28px;}
.page-id-105270 ul.mee-check li{
  position:relative;padding-left:30px;margin-bottom:12px;
  font-size:17px!important;line-height:28px!important;color:var(--ee-ink)!important;
}
.page-id-105270 ul.mee-check li:last-child{margin-bottom:0;}
.page-id-105270 ul.mee-check li::before{
  content:"";position:absolute;left:0;top:6px;width:16px;height:16px;border-radius:4px;
  background:var(--ee-blue);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/16px no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/16px no-repeat;
}

/* ---------- CTA ---------- */
.page-id-105270 .mee-cta{
  background:linear-gradient(165deg,#245A8D,#245A8D);border-radius:16px;
  padding:56px 40px;margin:56px 0 16px;text-align:center;
}
.page-id-105270 h2.mee-cta-h{
  font-size:30px!important;line-height:44px!important;font-weight:800!important;color:#fff!important;
  background:none!important;border:0!important;padding:0!important;margin:0 0 14px!important;
}
.page-id-105270 h2.mee-cta-h::before,.page-id-105270 h2.mee-cta-h::after{content:none!important;display:none!important;}
.page-id-105270 .mee-cta-sub{font-size:17px!important;line-height:29px!important;color:#D8E7F5!important;margin:0 0 30px!important;}
.page-id-105270 .mee-cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.page-id-105270 .mee-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:58px;padding:0 34px;border-radius:8px;
  font-size:17px;font-weight:700;letter-spacing:.5px;text-decoration:none;
  transition:transform .18s ease,background-color .18s ease;
}
.page-id-105270 .mee-btn-fill{background:#fff;color:var(--ee-navy);}
.page-id-105270 .mee-btn-fill:hover{transform:translateY(-2px);background:#EEF6FC;}
.page-id-105270 .mee-btn-outline{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6);}
.page-id-105270 .mee-btn-outline:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 2px #fff;}

/* ---------- レスポンシブ ---------- */
@media (max-width:820px){
  .page-id-105270 .mee-grid-2{grid-template-columns:1fr;gap:16px;}
  .page-id-105270 .mee-lead{font-size:17px!important;line-height:31px!important;}
  .page-id-105270 .mee-heroimg img{aspect-ratio:4 / 3;}
  .page-id-105270 h2.mee-cta-h{font-size:25px!important;line-height:38px!important;}
  .page-id-105270 .mee-cta{padding:44px 22px;}
}
@media (max-width:520px){
  .page-id-105270 .mee-btn{width:100%;}
  .page-id-105270 ul.mee-check li{font-size:16px!important;}
}
/* ===== EASTERN-EUROPE (105270) v1 END ===== */

/* ================================================================
   NOTICE BAR v1  —  お知らせバーの再設計（2026-07-23）
   旧: ストライプ背景＋低コントラスト文字（CR 3.33 / 3.88）
   新: Deep Blue 単色 + 白文字（CR 7.18）。装飾を排し目立たせすぎない。
   ================================================================ */
.rd-notice,
.notice-bar,
[class*="rd-notice"]{
  background-image:none!important;
  background:#245A8D!important;
}
.rd-notice-text,
[class*="rd-notice"] .rd-notice-text{
  color:#FFFFFF!important;
  font-size:14px!important;line-height:22px!important;font-weight:600!important;
}
.rd-notice-badge,
[class*="rd-notice"] .rd-notice-badge{
  background:transparent!important;
  color:#FFFFFF!important;
  border:1px solid rgba(255,255,255,.7)!important;
  font-size:12px!important;line-height:18px!important;font-weight:700!important;
  padding:2px 8px!important;border-radius:4px!important;
}
.rd-notice a,
[class*="rd-notice"] a{color:#FFFFFF!important;text-decoration:underline;}
@media (max-width:520px){
  .rd-notice-text,[class*="rd-notice"] .rd-notice-text{font-size:13px!important;line-height:20px!important;}
  .rd-notice-badge,[class*="rd-notice"] .rd-notice-badge{font-size:11px!important;}
}
/* ===== NOTICE BAR v1 END ===== */

/* ================================================================
   TOP HERO v5  —  トップページ Hero の新デザイン（2026-07-23）
   実績バッジ・営業コピーを廃し、主文＋副文＋CTA＋代表講師の
   4要素だけに整理する。人物は巨大化させず信頼情報として扱う。
   ================================================================ */
.page-id-84 .mn84-hero-sub,
.home .mn84-hero-sub{
  font-size:17px;line-height:30px;color:#5B6778;
  margin:0 0 26px;max-width:560px;font-weight:500;
}

/* ---- 代表講師（Hero内・小さく） ---- */
.page-id-84 .mn84-herotutor,
.home .mn84-herotutor{
  display:flex;align-items:center;gap:20px;
  margin-top:34px;padding-top:26px;
  border-top:1px solid #DCE6F0;
}
.page-id-84 .mn84-herotutor-img,
.home .mn84-herotutor-img{
  flex:none;display:block;
  width:168px;height:168px;
  border-radius:12px;object-fit:cover;object-position:center 20%;
  background:#F8FAFC;border:1px solid #DCE6F0;
}
.page-id-84 .mn84-herotutor-role,
.home .mn84-herotutor-role{
  display:block;font-size:16px;line-height:26px;font-weight:800;
  color:#172033;margin-bottom:8px;
}
.page-id-84 ul.mn84-herotutor-list,
.home ul.mn84-herotutor-list{list-style:none;margin:0;padding:0;}
.page-id-84 ul.mn84-herotutor-list li,
.home ul.mn84-herotutor-list li{
  position:relative;padding-left:16px;margin:0 0 5px;
  font-size:15px;line-height:25px;color:#5B6778;
}
.page-id-84 ul.mn84-herotutor-list li::before,
.home ul.mn84-herotutor-list li::before{
  content:"";position:absolute;left:0;top:10px;
  width:6px;height:6px;border-radius:50%;background:#3B82B6;
}
.page-id-84 ul.mn84-herotutor-list li:last-child,
.home ul.mn84-herotutor-list li:last-child{margin-bottom:0;}

/* ---- 装飾番号のコントラスト（52px 大文字：3:1以上を確保） ---- */
.page-id-84 .mn84-reason-n,
.home .mn84-reason-n{color:#4E7FAD;}

/* ---- レスポンシブ ---- */
@media (max-width:820px){
  .page-id-84 .mn84-hero-sub,
  .home .mn84-hero-sub{font-size:17px;line-height:31px;margin-bottom:26px;}
  .page-id-84 .mn84-herotutor-img,
  .home .mn84-herotutor-img{width:132px;height:132px;}
  .page-id-84 .mn84-herotutor,
  .home .mn84-herotutor{gap:16px;margin-top:28px;padding-top:22px;}
}
@media (max-width:520px){
  .page-id-84 .mn84-herotutor-img,
  .home .mn84-herotutor-img{width:120px;height:120px;}
  .page-id-84 ul.mn84-herotutor-list li,
  .home ul.mn84-herotutor-list li{font-size:14px;line-height:23px;}
  .page-id-84 .mn84-herotutor-role,
  .home .mn84-herotutor-role{font-size:15px;}
}
/* ===== TOP HERO v5 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}






/* th の背景がインラインstyle（dbp のブロック設定）で Primary のまま残る。
   インラインに勝つため属性セレクタで明示的に上書きする。 */
body table th[style],
body .wp-block-table th[style],
body table th[style*="background"],
body [class*="dbp"] th[style]{
  background-color:#245A8D!important;
  background:#245A8D!important;
  color:#FFFFFF!important;
}





/* .page-id-XXXXX .mtu-label（詳細度0,2,0）に勝つため body+page-id で明示する。
   ページ個別ブロックが Primary背景+白文字(CR4.15) を指定していた。 */
body.page-id-105331 p.mtu-label, body.page-id-105331 .mtu-label,
body.page-id-107633 p.mtu-label, body.page-id-107633 .mtu-label,
body.page-id-107635 p.mtu-label, body.page-id-107635 .mtu-label,
body.page-id-3864  p.mtu-label, body.page-id-3864  .mtu-label{
  background:#EEF6FC!important;color:#245A8D!important;border:1px solid #DCE6F0!important;
}
body.page-id-105331 .mtu-final-lead, body.page-id-107633 .mtu-final-lead,
body.page-id-107635 .mtu-final-lead, body.page-id-3864 .mtu-final-lead,
body.page-id-105331 .mtu-cta-note, body.page-id-107633 .mtu-cta-note,
body.page-id-107635 .mtu-cta-note, body.page-id-3864 .mtu-cta-note{color:#4F5A6B!important;}

/* 淡色文字は .mtu-finalbox（濃色帯）の内側だけに限定する。
   帯の外にある .mtu-final-lead / .mtu-cta-note は明るい地の上にあるため
   淡色にすると CR1.20 になり読めない。 */
body .mtu-final-lead:not(.mtu-finalbox .mtu-final-lead),
body p.mtu-final-lead:not(.mtu-finalbox p.mtu-final-lead){color:#4F5A6B!important;}
body .mtu-cta-note:not(.mtu-finalbox .mtu-cta-note),
body p.mtu-cta-note:not(.mtu-finalbox p.mtu-cta-note){color:#4F5A6B!important;}

/* ================================================================
   FINALBOX CONTRAST v3  （2026-07-24・実測にもとづく確定版）
   .mtu-finalbox には濃色背景が付いておらず、実効背景は #F8FAFC（明るい地）。
   そこに淡色文字(#D8E7F5)を当てていたため CR1.20 で読めなかった。
   淡色指定を撤回し、明るい地に合う文字色へ統一する。
   ================================================================ */
body .mtu-finalbox .mtu-final-lead,
body .mtu-finalbox p.mtu-final-lead,
body .mtu-finalbox .mtu-cta-note,
body .mtu-finalbox p.mtu-cta-note,
body.page-id-105331 .mtu-finalbox .mtu-final-lead,
body.page-id-107633 .mtu-finalbox .mtu-final-lead,
body.page-id-107635 .mtu-finalbox .mtu-final-lead,
body.page-id-3864   .mtu-finalbox .mtu-final-lead,
body.page-id-105331 .mtu-finalbox .mtu-cta-note,
body.page-id-107633 .mtu-finalbox .mtu-cta-note,
body.page-id-107635 .mtu-finalbox .mtu-cta-note,
body.page-id-3864   .mtu-finalbox .mtu-cta-note{
  color:#4F5A6B!important;   /* #F8FAFC 上で CR 6.5 */
}
body .mtu-finalbox h2,
body .mtu-finalbox h3{color:#172033!important;}
/* ===== FINALBOX CONTRAST v3 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}






/* th の背景がインラインstyle（dbp のブロック設定）で Primary のまま残る。
   インラインに勝つため属性セレクタで明示的に上書きする。 */
body table th[style],
body .wp-block-table th[style],
body table th[style*="background"],
body [class*="dbp"] th[style]{
  background-color:#245A8D!important;
  background:#245A8D!important;
  color:#FFFFFF!important;
}





/* .page-id-XXXXX .mtu-label（詳細度0,2,0）に勝つため body+page-id で明示する。
   ページ個別ブロックが Primary背景+白文字(CR4.15) を指定していた。 */
body.page-id-105331 p.mtu-label, body.page-id-105331 .mtu-label,
body.page-id-107633 p.mtu-label, body.page-id-107633 .mtu-label,
body.page-id-107635 p.mtu-label, body.page-id-107635 .mtu-label,
body.page-id-3864  p.mtu-label, body.page-id-3864  .mtu-label{
  background:#EEF6FC!important;color:#245A8D!important;border:1px solid #DCE6F0!important;
}
body.page-id-105331 .mtu-final-lead, body.page-id-107633 .mtu-final-lead,
body.page-id-107635 .mtu-final-lead, body.page-id-3864 .mtu-final-lead,
body.page-id-105331 .mtu-cta-note, body.page-id-107633 .mtu-cta-note,
body.page-id-107635 .mtu-cta-note, body.page-id-3864 .mtu-cta-note{color:#4F5A6B!important;}
body.page-id-105331 .mtu-finalbox .mtu-final-lead, body.page-id-107633 .mtu-finalbox .mtu-final-lead,
body.page-id-107635 .mtu-finalbox .mtu-final-lead, body.page-id-3864 .mtu-finalbox .mtu-final-lead,
body.page-id-105331 .mtu-finalbox .mtu-cta-note, body.page-id-107633 .mtu-finalbox .mtu-cta-note,
body.page-id-107635 .mtu-finalbox .mtu-cta-note, body.page-id-3864 .mtu-finalbox .mtu-cta-note{color:#4F5A6B!important;}

/* 淡色文字は .mtu-finalbox（濃色帯）の内側だけに限定する。
   帯の外にある .mtu-final-lead / .mtu-cta-note は明るい地の上にあるため
   淡色にすると CR1.20 になり読めない。 */
body .mtu-final-lead:not(.mtu-finalbox .mtu-final-lead),
body p.mtu-final-lead:not(.mtu-finalbox p.mtu-final-lead){color:#4F5A6B!important;}
body .mtu-cta-note:not(.mtu-finalbox .mtu-cta-note),
body p.mtu-cta-note:not(.mtu-finalbox p.mtu-cta-note){color:#4F5A6B!important;}







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}






/* th の背景がインラインstyle（dbp のブロック設定）で Primary のまま残る。
   インラインに勝つため属性セレクタで明示的に上書きする。 */
body table th[style],
body .wp-block-table th[style],
body table th[style*="background"],
body [class*="dbp"] th[style]{
  background-color:#245A8D!important;
  background:#245A8D!important;
  color:#FFFFFF!important;
}





/* .page-id-XXXXX .mtu-label（詳細度0,2,0）に勝つため body+page-id で明示する。
   ページ個別ブロックが Primary背景+白文字(CR4.15) を指定していた。 */
body.page-id-105331 p.mtu-label, body.page-id-105331 .mtu-label,
body.page-id-107633 p.mtu-label, body.page-id-107633 .mtu-label,
body.page-id-107635 p.mtu-label, body.page-id-107635 .mtu-label,
body.page-id-3864  p.mtu-label, body.page-id-3864  .mtu-label{
  background:#EEF6FC!important;color:#245A8D!important;border:1px solid #DCE6F0!important;
}
body.page-id-105331 .mtu-final-lead, body.page-id-107633 .mtu-final-lead,
body.page-id-107635 .mtu-final-lead, body.page-id-3864 .mtu-final-lead,
body.page-id-105331 .mtu-cta-note, body.page-id-107633 .mtu-cta-note,
body.page-id-107635 .mtu-cta-note, body.page-id-3864 .mtu-cta-note{color:#4F5A6B!important;}
body.page-id-105331 .mtu-finalbox .mtu-final-lead, body.page-id-107633 .mtu-finalbox .mtu-final-lead,
body.page-id-107635 .mtu-finalbox .mtu-final-lead, body.page-id-3864 .mtu-finalbox .mtu-final-lead,
body.page-id-105331 .mtu-finalbox .mtu-cta-note, body.page-id-107633 .mtu-finalbox .mtu-cta-note,
body.page-id-107635 .mtu-finalbox .mtu-cta-note, body.page-id-3864 .mtu-finalbox .mtu-cta-note{color:#4F5A6B!important;}







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}






/* th の背景がインラインstyle（dbp のブロック設定）で Primary のまま残る。
   インラインに勝つため属性セレクタで明示的に上書きする。 */
body table th[style],
body .wp-block-table th[style],
body table th[style*="background"],
body [class*="dbp"] th[style]{
  background-color:#245A8D!important;
  background:#245A8D!important;
  color:#FFFFFF!important;
}



/* ================================================================
   LP LABEL / LEAD FIX v2  （2026-07-24）
   実測にもとづく修正。前回は背景を確認せず指定して悪化させたため差し替え。
   ・mtu-label      : 薄青(#EEF6FC)の上に白文字だった -> 濃青文字へ
   ・mtu-final-lead : 濃色帯ではなく明るい地(#F8FAFC)の上にあり、
                      淡い文字色(#D8E7F5)では読めない -> 本文グレーへ
   ・mtu-cta-note   : 薄青の上のグレーで僅かに不足 -> 濃いグレーへ
   ================================================================ */
body p.mtu-label,
body .mtu-label{
  background:#EEF6FC!important;
  color:#245A8D!important;          /* CR 6.5 */
  border:1px solid #DCE6F0!important;
}
body p.mtu-final-lead,
body .mtu-final-lead{color:#5B6778!important;}   /* 明るい地の上 CR 5.6 */
body p.mtu-cta-note,
body .mtu-cta-note{color:#4F5A6B!important;}     /* 薄青の上 CR 6.4 */

/* 濃色帯(.mtu-finalbox)の内側にある場合だけ淡色に戻す */
body .mtu-finalbox p.mtu-final-lead,
body .mtu-finalbox .mtu-final-lead,
body .mtu-finalbox p.mtu-cta-note,
body .mtu-finalbox .mtu-cta-note{color:#4F5A6B!important;}
/* ===== LP LABEL / LEAD FIX v2 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}






/* th の背景がインラインstyle（dbp のブロック設定）で Primary のまま残る。
   インラインに勝つため属性セレクタで明示的に上書きする。 */
body table th[style],
body .wp-block-table th[style],
body table th[style*="background"],
body [class*="dbp"] th[style]{
  background-color:#245A8D!important;
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* ================================================================
   LP LABEL / FINALBOX FIX v1  （2026-07-24）
   ・mtu-label（Hero上のラベル）が Primary背景＋白文字で CR4.15
   ・mtu-final-lead が濃色帯の上で CR1.14（ほぼ読めない）
   個別指導系4ページ + 模試 + 留学サポートに共通で効かせる。
   ================================================================ */
body .mtu-label,
body p.mtu-label{
  background:#EEF6FC!important;
  color:#245A8D!important;          /* 薄青地に濃青 CR 6.5 */
  border:1px solid #DCE6F0!important;
}
body .mtu-finalbox .mtu-final-lead,
body .mtu-final-lead,
body p.mtu-final-lead{color:#4F5A6B!important;}
body .mtu-finalbox .mtu-cta-note,
body .mtu-cta-note{color:#4F5A6B!important;}
body .mtu-finalbox h2,
body .mtu-finalbox h3,
body .mtu-finalbox p{color:#FFFFFF;}
body .mtu-finalbox p.mtu-final-lead{color:#4F5A6B!important;}
/* ===== LP LABEL / FINALBOX FIX v1 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}






/* th の背景がインラインstyle（dbp のブロック設定）で Primary のまま残る。
   インラインに勝つため属性セレクタで明示的に上書きする。 */
body table th[style],
body .wp-block-table th[style],
body table th[style*="background"],
body [class*="dbp"] th[style]{
  background-color:#245A8D!important;
  background:#245A8D!important;
  color:#FFFFFF!important;
}







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}




/* ================================================================
   RESIDUAL FIX v1  （2026-07-24）
   1) dbp-card がテーマのプリセット色 --wp--preset--color--diver-primary-on
      (#1E3352 旧濃紺) を既定文字色にしていた。新テキスト色へ差し替える。
   2) 合格者アバター48pxが lazyload の空srcで潰れていた（枠を確保）。
   3) 行内の th（thead を持たない表）も Primary背景のままで白文字CR4.15だった。
   ================================================================ */
:root,body,.l-body{
  --wp--preset--color--diver-primary-on:#172033;
  --wp--preset--color--diver-secondary:#245A8D;
}
.dbp-card,
.dbp-card__inner{color:#172033;}

/* 合格者アバター：空srcでも48pxの枠を確保する */
.mtu-vname img,
.mnt-vname img,
.mtu-vname img.lazyload,
.mnt-vname img.lazyload{
  display:block!important;
  width:48px!important;height:48px!important;
  border-radius:50%;object-fit:cover;flex:none;
  background:#EEF6FC;border:1px solid #DCE6F0;
}

/* thead を持たない表の見出しセルも Deep に */
body table th,
body .wp-block-table th{
  background-color:#245A8D!important;color:#FFFFFF!important;
}
body table tbody tr > td:first-child{background:#EEF6FC;}
/* ===== RESIDUAL FIX v1 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}


/* ================================================================
   CTA DIET v1  —  ボタン乱立の解消（2026-07-24）
   SERVICE の各柱に2〜3個のボタンが並び、ページ全体で14個あった。
   ナビゲーションとしての価値は残しつつ、ボタンではなく
   矢印付きテキストリンクにして「押すべき場所」を明確にする。
   ================================================================ */
.page-id-84 .mn84-plink-btn,
.home .mn84-plink-btn,
.page-id-84 .mn84-plink-btn--outline,
.home .mn84-plink-btn--outline{
  display:inline-flex!important;align-items:center;gap:6px;
  background:none!important;border:0!important;box-shadow:none!important;
  padding:0!important;min-height:0!important;border-radius:0!important;
  font-size:15px!important;font-weight:700!important;
  color:#245A8D!important;text-decoration:none!important;
  border-bottom:1px solid rgba(36,90,141,.3)!important;
  padding-bottom:2px!important;
}
.page-id-84 .mn84-plink-btn::after,
.home .mn84-plink-btn::after{content:"→";font-size:14px;}
.page-id-84 .mn84-plink-btn:hover,
.home .mn84-plink-btn:hover{border-bottom-color:#245A8D!important;}
.page-id-84 .mn84-plinks,
.home .mn84-plinks{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:18px!important;}

@media (max-width:520px){
  .page-id-84 .mn84-plinks,
  .home .mn84-plinks{gap:12px 18px;}
  .page-id-84 .mn84-plink-btn,
  .home .mn84-plink-btn{font-size:14px!important;}
}
/* ===== CTA DIET v1 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}





/* ================================================================
   TRUST BAR v1  —  Hero直下の信頼指標（2026-07-24）
   カードにせず、数字＋短い説明を余白で見せる。罫線は縦1本のみ。
   ================================================================ */
.page-id-84 .mn84-trustbar,
.home .mn84-trustbar{
  background:#FFFFFF;border-top:1px solid #DCE6F0;border-bottom:1px solid #DCE6F0;
  padding:44px 24px;margin:0;
}
.page-id-84 .mn84-trustbar-in,
.home .mn84-trustbar-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.page-id-84 .mn84-trust,
.home .mn84-trust{
  text-align:center;padding:6px 26px;
  border-left:1px solid #DCE6F0;
}
.page-id-84 .mn84-trust:first-child,
.home .mn84-trust:first-child{border-left:0;}
.page-id-84 .mn84-trust-n,
.home .mn84-trust-n{
  display:block;font-size:40px;line-height:50px;font-weight:800;
  color:#245A8D;letter-spacing:-1px;
}
.page-id-84 .mn84-trust-n small,
.home .mn84-trust-n small{font-size:20px;font-weight:700;margin-left:3px;}
.page-id-84 .mn84-trust-l,
.home .mn84-trust-l{
  display:block;margin-top:8px;
  font-size:14px;line-height:22px;color:#5B6778;letter-spacing:.5px;
}

/* ================================================================
   VOICES v2  —  ショートコード [mn_voices] の表示
   3列カードの反復にせず、1件目を大きく・2件目以降を横並びにする。
   ================================================================ */
.page-id-84 .mn84-voices,
.home .mn84-voices{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:34px;}
.page-id-84 .mn84-voice,
.home .mn84-voice{
  background:transparent;border:0;border-top:2px solid #DCE6F0;padding:22px 0 0;
}
.page-id-84 .mn84-voice--lead,
.home .mn84-voice--lead{
  grid-column:1 / -1;border-top:2px solid #245A8D;padding-top:24px;
}
.page-id-84 .mn84-voice-year,
.home .mn84-voice-year{
  font-size:13px!important;line-height:20px!important;font-weight:700;
  color:#5B6778!important;letter-spacing:1px;margin:0 0 8px!important;
}
.page-id-84 h3.mn84-voice-t,
.home h3.mn84-voice-t{
  font-size:20px!important;line-height:32px!important;font-weight:800!important;
  margin:0 0 10px!important;padding:0!important;background:none!important;
}
.page-id-84 .mn84-voice--lead h3.mn84-voice-t,
.home .mn84-voice--lead h3.mn84-voice-t{font-size:26px!important;line-height:40px!important;}
.page-id-84 h3.mn84-voice-t a,
.home h3.mn84-voice-t a{color:#172033!important;text-decoration:none;}
.page-id-84 h3.mn84-voice-t a:hover,
.home h3.mn84-voice-t a:hover{color:#245A8D!important;}
.page-id-84 .mn84-voice-d,
.home .mn84-voice-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0 0 12px!important;}
.page-id-84 .mn84-voice-more,
.home .mn84-voice-more{
  display:inline-block;font-size:15px;font-weight:700;color:#245A8D;text-decoration:none;
  border-bottom:1px solid rgba(36,90,141,.35);padding-bottom:2px;
}
.page-id-84 .mn84-voice-more:hover,
.home .mn84-voice-more:hover{border-bottom-color:#245A8D;}

@media (max-width:820px){
  .page-id-84 .mn84-trustbar-in,
  .home .mn84-trustbar-in{grid-template-columns:1fr;gap:26px;}
  .page-id-84 .mn84-trust,
  .home .mn84-trust{border-left:0;padding:0;}
  .page-id-84 .mn84-trust-n,
  .home .mn84-trust-n{font-size:38px;line-height:48px;}
  .page-id-84 .mn84-trustbar,
  .home .mn84-trustbar{padding:34px 20px;}
  .page-id-84 .mn84-voices,
  .home .mn84-voices{grid-template-columns:1fr;gap:22px;}
  .page-id-84 .mn84-voice--lead h3.mn84-voice-t,
  .home .mn84-voice--lead h3.mn84-voice-t{font-size:21px!important;line-height:33px!important;}
  .page-id-84 h3.mn84-voice-t,
  .home h3.mn84-voice-t{font-size:18px!important;line-height:29px!important;}
}
/* ===== TRUST BAR / VOICES v2 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}



/* ================================================================
   TUTORING HERO 1COL v1  （2026-07-24）
   Hero画像を廃止したため、右半分が空の2カラムになっていた。
   1カラムにして、コピーの読みやすい幅（最大720px）に収める。
   ================================================================ */
.page-id-105331 .dbp-id-mtu-hero{
  grid-template-columns:1fr!important;
}
.page-id-105331 .mtu-hero-wrap .mtu-headline{max-width:760px;}
.page-id-105331 .mtu-hero-wrap .mtu-subtitle{max-width:680px;}
.page-id-105331 .mtu-hero-wrap .mtu-fvlist{max-width:680px;}
/* ===== TUTORING HERO 1COL v1 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}

/* ================================================================
   STEP BLOCK / FORM LABEL FIX v1  （2026-07-24）
   ・dbp/step の caption が青地に青文字(CR1.00)で完全に読めなかった
   ・CF7必須バッジの赤 #E5484D は白文字 CR3.91 でAA未達
   ================================================================ */
.dbp-step-mark,
.dbp-step-mark.is-count-number{
  background-color:#245A8D!important;color:#FFFFFF!important;
}
.dbp-step-caption,
.dbp-step-mark .dbp-step-caption{
  background-color:transparent!important;
  color:#FFFFFF!important;
}
.dbp-step-mark.is-count-number .dbp-step-caption{color:#FFFFFF!important;}

/* 必須バッジ：赤は通知色として残しつつ AA を満たす濃さにする */
.mml-required,
.wpcf7 .mml-required,
span.mml-required{
  background-color:#B3261E!important;   /* 白文字 CR 6.1 */
  color:#FFFFFF!important;
}
/* ===== STEP BLOCK / FORM LABEL FIX v1 END ===== */







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* dbp/テーマ由来の表ヘッダーも Deep に統一（白文字 CR7.18）。
   Primary #3B82B6 のままだと白文字 CR4.15 で通常文字のAAに届かない。 */
body table thead th,
body .wp-block-table thead th,
body .dbp-table thead th,
body table th[style*="background"]{
  background-color:#245A8D!important;
  color:#FFFFFF!important;
}







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}

/* カード内の段落を一括で muted にするルール
   （.page-id-105331 .dbp-card__inner p / 詳細度 0,2,1）に負けていたため、
   同等以上の詳細度で STEPラベルの白文字を確定させる。 */
body .dbp-card__inner p.mtu-flabel,
body .dbp-card__inner span.mtu-flabel,
body .dbp-card__inner div.mtu-flabel,
body .mtu-stepflow p.mtu-flabel,
body .mnt-flow-step p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}







/* mtu-flabel の文字色は別ルール(同じ!important・より後方)に負けるため
   要素名を含めて詳細度を上げる。背景Deep + 白文字で CR 7.18。 */
p.mtu-flabel,
span.mtu-flabel,
div.mtu-flabel,
body .mtu-flabel,
body p.mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}
p.mtu-flabel *,
body .mtu-flabel *{color:#FFFFFF!important;}





/* ================================================================
   ON-BLUE READABILITY v1  —  青背景の上の文字（2026-07-24）
   Primary #3B82B6 は白文字でも CR4.15 で通常文字のAAに届かない。
   「文字を載せる青背景」は Deep #245A8D（白文字 CR7.18）に統一する。
   Primary は罫線・小さな装飾・ホバーなど文字を載せない用途に限る。
   ================================================================ */

/* STEPラベル：青背景に灰文字(CR1.38)で読めなかった */
.mtu-flabel,
.page-id-105331 .mtu-flabel,
.page-id-107633 .mtu-flabel,
.page-id-107635 .mtu-flabel,
.page-id-3864 .mtu-flabel{
  background:#245A8D!important;
  color:#FFFFFF!important;
}

/* 表ヘッダー：白文字を載せるので Deep に */
.content .wp-block-table thead th,
.l-inner-content .wp-block-table thead th{
  background:#245A8D!important;color:#FFFFFF!important;
}

/* アコーディオンのQ/Aアイコン：白文字が薄背景に乗って消えていた(CR1.07) */
.dbp-accordion-icon{
  background:#245A8D!important;
  color:#FFFFFF!important;
  border-radius:6px;
}
/* ===== ON-BLUE READABILITY v1 END ===== */



/* ================================================================
   NOTICE STRIPE REMOVE v1  —  お知らせバーの装飾ストライプを除去
   .rd-notice::before が repeating-linear-gradient(30deg,...) で
   斜めストライプを描いていた。単色に統一して情報を読みやすくする。
   ================================================================ */
.rd-notice::before,
[class*="rd-notice"]::before{
  content:none!important;
  background-image:none!important;
  display:none!important;
}
/* ===== NOTICE STRIPE REMOVE v1 END ===== */

/* ================================================================
   ON-NAVY TEXT FIX v1  —  濃青CTA帯の上の小文字（2026-07-23）
   #245A8D 上で CR 5.70 を確保する。装飾ラベルも同様。
   ================================================================ */
.page-id-84 .mn84-final .mn84-eyebrow,
.home .mn84-final .mn84-eyebrow,
.page-id-84 .mn84-cta .mn84-eyebrow,
.home .mn84-cta .mn84-eyebrow{color:#D8E7F5!important;}
.page-id-84 .mn84-final .mn84-note,
.home .mn84-final .mn84-note,
.page-id-84 .mn84-cta .mn84-note,
.home .mn84-cta .mn84-note,
.page-id-84 .mn84-final p.mn84-note,
.home .mn84-final p.mn84-note{color:#D8E7F5!important;}
/* ===== ON-NAVY TEXT FIX v1 END ===== */

/* ================================================================
   TUTORING CHILD UNIFY v1  —  /tutoring/ 配下4ページのブランド統一
   107633 月額プラン / 107635 短期集中プラン / 3864 体験授業 / 5004 講師紹介
   2026-07-24. UNITS: px only.

   親 /tutoring/ の実測値を基準として揃える：
     H2      32px / 700 / #245A8D / 背景なし / 左に3pxの罫線 / mt40 mb26
     H3      20px / 800 / #245A8D
     本文    18px / 32px / #5B6778
     カード  padding 28/26px, radius 12px, border 1px #DCE6F0
     ボタン  min-height 58px, 17px/700, #245A8D, radius 8px
     写真    最大 550px 幅・16px radius（1090pxの巨大画像を廃止）
   ================================================================ */
.page-id-107633,
.page-id-107635,
.page-id-3864,
.page-id-5004{
  --tc-deep:#245A8D;
  --tc-primary:#3B82B6;
  --tc-soft:#EEF6FC;
  --tc-line:#DCE6F0;
  --tc-ink:#172033;
  --tc-muted:#5B6778;
}

/* ---------- H2：親と同じ「青文字＋左罫線」に統一 ---------- */
body.page-id-107633 .l-inner-content h2,
body.page-id-107635 .l-inner-content h2,
body.page-id-3864   .l-inner-content h2,
body.page-id-5004   .l-inner-content h2,
body.page-id-107633 .l-inner-content h2.wp-block-heading,
body.page-id-107635 .l-inner-content h2.wp-block-heading,
body.page-id-3864   .l-inner-content h2.wp-block-heading,
body.page-id-5004   .l-inner-content h2.wp-block-heading{
  font-size:32px!important;line-height:46px!important;font-weight:700!important;
  color:#245A8D!important;
  background:none!important;background-color:transparent!important;
  border:0!important;border-left:3px solid #3B82B6!important;
  padding:8px 0 12px 18px!important;
  border-radius:0!important;
  margin-top:40px!important;margin-bottom:26px!important;
}
body.page-id-107633 .l-inner-content h2::before,
body.page-id-107635 .l-inner-content h2::before,
body.page-id-3864   .l-inner-content h2::before,
body.page-id-5004   .l-inner-content h2::before,
body.page-id-107633 .l-inner-content h2::after,
body.page-id-107635 .l-inner-content h2::after,
body.page-id-3864   .l-inner-content h2::after,
body.page-id-5004   .l-inner-content h2::after{content:none!important;display:none!important;}

/* ---------- H3 ---------- */
body.page-id-107633 .l-inner-content h3,
body.page-id-107635 .l-inner-content h3,
body.page-id-3864   .l-inner-content h3,
body.page-id-5004   .l-inner-content h3{
  font-size:20px!important;line-height:30px!important;font-weight:800!important;
  color:#245A8D!important;background:none!important;padding:0!important;
  margin-top:0!important;margin-bottom:12px!important;
}

/* ---------- 本文 ---------- */
body.page-id-107633 .l-inner-content > p,
body.page-id-107635 .l-inner-content > p,
body.page-id-3864   .l-inner-content > p,
body.page-id-5004   .l-inner-content > p{
  font-size:18px!important;line-height:32px!important;color:#5B6778!important;
}

/* ---------- 写真：主役にしない ----------
   本文幅の48%(550px)を占めて主張しすぎていた。
   写真は文章を補強する要素として 350〜400px に抑え、
   文章7 : 写真3 の比率にする。影も最小限。 */
.page-id-107633 .mtu-photo,
.page-id-107635 .mtu-photo,
.page-id-3864   .mtu-photo{
  /* 親の幅に引きずられて 181〜307px とバラついたため、幅を固定する */
  width:340px;max-width:100%;
  margin:8px 0 28px 32px;
  float:right;                 /* 文章の脇に添える */
  clear:both;
}
.page-id-107633 .mtu-photo img,
.page-id-107635 .mtu-photo img,
.page-id-3864   .mtu-photo img{
  width:100%!important;height:auto!important;
  aspect-ratio:4 / 3!important;object-fit:cover;
  border-radius:14px!important;
  border:1px solid #DCE6F0;
  box-shadow:0 4px 14px rgba(11,31,58,.06);   /* 影は最小限 */
}
.page-id-107633 .mtu-photo figcaption,
.page-id-107635 .mtu-photo figcaption,
.page-id-3864   .mtu-photo figcaption{
  margin-top:10px;text-align:left;
  font-size:13px;line-height:21px;color:#5B6778;
}
/* 写真の直後の見出しが回り込まないようにする */
.page-id-107633 .l-inner-content h2,
.page-id-107635 .l-inner-content h2,
.page-id-3864   .l-inner-content h2{clear:both;}

/* ---------- カード：枠を軽くし、密度を下げる ---------- */
.page-id-107633 .dbp-card__inner,
.page-id-107635 .dbp-card__inner,
.page-id-3864   .dbp-card__inner,
.page-id-5004   .dbp-card__inner{
  padding:28px 26px!important;
  background:#FFFFFF!important;
  border:1px solid #DCE6F0!important;
  border-radius:12px!important;
  box-shadow:0 2px 8px rgba(11,31,58,.04)!important;
}
.page-id-107633 .dbp-card__inner h3,
.page-id-107635 .dbp-card__inner h3,
.page-id-3864   .dbp-card__inner h3,
.page-id-5004   .dbp-card__inner h3{
  font-size:19px!important;line-height:30px!important;margin-bottom:12px!important;
}
.page-id-107633 .dbp-card__inner p,
.page-id-107635 .dbp-card__inner p,
.page-id-3864   .dbp-card__inner p,
.page-id-5004   .dbp-card__inner p{
  font-size:16px!important;line-height:28px!important;color:#5B6778!important;
}

/* ---------- ボタン ---------- */
.page-id-107633 .dbp-button-link,
.page-id-107635 .dbp-button-link,
.page-id-3864   .dbp-button-link,
.page-id-5004   .dbp-button-link{
  min-height:58px!important;padding:0 32px!important;
  font-size:17px!important;font-weight:700!important;border-radius:8px!important;
}
.page-id-107633 .dbp-button-link.is-button-design-fill,
.page-id-107635 .dbp-button-link.is-button-design-fill,
.page-id-3864   .dbp-button-link.is-button-design-fill,
.page-id-5004   .dbp-button-link.is-button-design-fill{
  background-color:#245A8D!important;color:#FFFFFF!important;box-shadow:none!important;
}
.page-id-107633 .dbp-button-link.is-button-design-outline,
.page-id-107635 .dbp-button-link.is-button-design-outline,
.page-id-3864   .dbp-button-link.is-button-design-outline,
.page-id-5004   .dbp-button-link.is-button-design-outline{
  background-color:#FFFFFF!important;color:#245A8D!important;
  box-shadow:inset 0 0 0 2px #245A8D!important;
}

/* ---------- セクション間隔（親と同じ余白感） ---------- */
.page-id-107633 .dbp-section__inner,
.page-id-107635 .dbp-section__inner,
.page-id-3864   .dbp-section__inner,
.page-id-5004   .dbp-section__inner{
  padding-top:83px;padding-bottom:83px;
}

/* ---------- レスポンシブ ---------- */
@media (max-width:820px){
  /* SP: .wp-block-heading 付きセレクタ（PC側と同じ組）も併記しないと
     PCルールが後勝ちして 32px のままになる。 */
  body.page-id-107633 .l-inner-content h2,
  body.page-id-107635 .l-inner-content h2,
  body.page-id-3864   .l-inner-content h2,
  body.page-id-5004   .l-inner-content h2,
  body.page-id-107633 .l-inner-content h2.wp-block-heading,
  body.page-id-107635 .l-inner-content h2.wp-block-heading,
  body.page-id-3864   .l-inner-content h2.wp-block-heading,
  body.page-id-5004   .l-inner-content h2.wp-block-heading{
    font-size:26px!important;line-height:38px!important;
    padding:6px 0 10px 14px!important;margin-top:34px!important;margin-bottom:20px!important;}
  body.page-id-107633 .l-inner-content h3,
  body.page-id-107635 .l-inner-content h3,
  body.page-id-3864   .l-inner-content h3,
  body.page-id-5004   .l-inner-content h3{font-size:18px!important;line-height:28px!important;}
  body.page-id-107633 .l-inner-content > p,
  body.page-id-107635 .l-inner-content > p,
  body.page-id-3864   .l-inner-content > p,
  body.page-id-5004   .l-inner-content > p{font-size:17px!important;line-height:31px!important;}
  /* SP: 回り込みを解除して全幅・高さ自動 */
  /* SP: 固定幅380pxが本文幅(363px)を超えて画面端まで届いていた。
     幅を解除しつつ、本文と同じ左右余白の内側に収める。 */
  .page-id-107633 .mtu-photo,
  .page-id-107635 .mtu-photo,
  .page-id-3864   .mtu-photo{
    float:none!important;
    width:calc(100% - 28px)!important;max-width:calc(100% - 28px)!important;
    margin:16px auto 26px!important;}
  .page-id-107633 .mtu-photo figcaption,
  .page-id-107635 .mtu-photo figcaption,
  .page-id-3864   .mtu-photo figcaption{text-align:left;}
  .page-id-107633 .mtu-photo img,
  .page-id-107635 .mtu-photo img,
  .page-id-3864   .mtu-photo img{aspect-ratio:16 / 10!important;border-radius:12px!important;}
  .page-id-107633 .dbp-section__inner,
  .page-id-107635 .dbp-section__inner,
  .page-id-3864   .dbp-section__inner,
  .page-id-5004   .dbp-section__inner{padding-top:56px;padding-bottom:56px;}
}
@media (max-width:520px){
  .page-id-107633 .dbp-card__inner,
  .page-id-107635 .dbp-card__inner,
  .page-id-3864   .dbp-card__inner,
  .page-id-5004   .dbp-card__inner{padding:20px 16px!important;}
  .page-id-107633 .dbp-button-link,
  .page-id-107635 .dbp-button-link,
  .page-id-3864   .dbp-button-link,
  .page-id-5004   .dbp-button-link{width:100%;min-height:54px!important;font-size:16px!important;}
}
/* ---------- 表の見出しセル ----------
   Primary #3B82B6 の上に白文字だと CR4.15 で通常文字のAAに届かない。
   文字を載せる青は Deep #245A8D（白文字 CR7.18）に統一する。
   th はクラスを持たずインラインstyleで着色されている場合があるため、
   ページスコープ + 要素 + [style] で確実に上書きする。 */
body.page-id-107633 table th, body.page-id-107635 table th,
body.page-id-3864   table th, body.page-id-5004   table th,
body.page-id-107633 table th[style], body.page-id-107635 table th[style],
body.page-id-3864   table th[style], body.page-id-5004   table th[style],
body.page-id-107633 .wp-block-table th, body.page-id-107635 .wp-block-table th,
body.page-id-3864   .wp-block-table th, body.page-id-5004   .wp-block-table th{
  background:#245A8D!important;background-color:#245A8D!important;
  color:#FFFFFF!important;font-size:15px!important;
}
body.page-id-107633 table tbody tr > *:first-child,
body.page-id-107635 table tbody tr > *:first-child,
body.page-id-3864   table tbody tr > *:first-child,
body.page-id-5004   table tbody tr > *:first-child{
  background:#EEF6FC!important;color:#245A8D!important;font-weight:700;
}

/* .mn-tutoring-* 専用クラスの表ヘッダーも Deep に統一。
   thead 内のセルだけを対象にし、tbody 1列目のラベル(薄青+濃青)は温存する。 */
body .wp-block-table[class*="mn-tutoring"] thead th,
body .wp-block-table[class*="mn-tutoring"] thead td,
body figure[class*="mn-tutoring"] thead th,
body figure[class*="mn-tutoring"] thead td{
  background:#245A8D!important;background-color:#245A8D!important;
  color:#FFFFFF!important;
}

/* ---------- タブレット（769〜1024px）----------
   実測で 4カラム=149px までカードが潰れ、写真も本文幅の55%を占めていた。
   ※ 768px ちょうどを取りこぼさないよう min-width は 768px にする。
   4カラムは2カラムへ、写真は幅を絞って回り込みを維持する。 */
@media (min-width:768px) and (max-width:1024px){
  .page-id-107633 .dbp-column,
  .page-id-107635 .dbp-column,
  .page-id-3864   .dbp-column,
  .page-id-5004   .dbp-column{
    grid-template-columns:1fr 1fr!important;
  }
  .page-id-107633 .mtu-photo,
  .page-id-107635 .mtu-photo,
  .page-id-3864   .mtu-photo{
    width:300px;margin:6px 0 22px 24px;float:right;
  }
}
/* ---------- 769〜820px は写真の回り込みを維持 ----------
   820px以下のSPルールが効いて float:none になり
   写真が本文幅の55%を占めていたため、この帯だけ上書きする。 */
@media (min-width:768px) and (max-width:820px){
  .page-id-107633 .mtu-photo,
  .page-id-107635 .mtu-photo,
  .page-id-3864   .mtu-photo{
    float:right!important;width:300px!important;max-width:300px!important;
    margin:6px 0 22px 24px!important;
  }
  .page-id-107633 .mtu-photo img,
  .page-id-107635 .mtu-photo img,
  .page-id-3864   .mtu-photo img{aspect-ratio:4 / 3!important;}
}

/* ---------- カードの最小幅を確保 ----------
   4カラム指定のグリッドが PC でも 97px まで潰れ、
   1行に2〜3文字しか入らない状態になっていた。
   auto-fit + minmax で「入るだけ並べる」方式に変える。 */
.page-id-107633 .dbp-column,
.page-id-107635 .dbp-column,
.page-id-3864   .dbp-column,
.page-id-5004   .dbp-column{
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;
}
@media (max-width:520px){
  .page-id-107633 .dbp-column,
  .page-id-107635 .dbp-column,
  .page-id-3864   .dbp-column,
  .page-id-5004   .dbp-column{grid-template-columns:1fr!important;}
}

/* ---------- 版面幅：真因は main の width ----------
   親 /tutoring/ には既存の
     .page-id-105331 .l-flex > main{width:100%;max-width:min(94%,1120px)}
   があり、これが 1120px を作っていた。子ページには無いためテーマ既定の
   860px のままだった。article / .content 側をいくら上書きしても効かない。
   同じ規則を子4ページへ拡張して版面を一致させる。 */
/* LP型固定ページ共通の版面（Re:Diver の size=none だけでは幅が広がらないため、
   親 /tutoring/ と同じ規則をLP群へ適用する） */
.page-id-107633 .l-flex > main,
.page-id-107635 .l-flex > main,
.page-id-3864   .l-flex > main,
.page-id-5004   .l-flex > main,
.page-id-105593 .l-flex > main, .page-id-105594 .l-flex > main,
.page-id-105595 .l-flex > main, .page-id-105596 .l-flex > main,
.page-id-105597 .l-flex > main, .page-id-105598 .l-flex > main,
.page-id-107745 .l-flex > main, .page-id-107788 .l-flex > main,
.page-id-107394 .l-flex > main, .page-id-105282 .l-flex > main,
.page-id-4933   .l-flex > main, .page-id-105266 .l-flex > main,
.page-id-105270 .l-flex > main, .page-id-106851 .l-flex > main,
.page-id-106852 .l-flex > main, .page-id-106853 .l-flex > main,
.page-id-103079 .l-flex > main, .page-id-105355 .l-flex > main,
.page-id-105356 .l-flex > main{
  width:100%!important;
  max-width:min(94%,1120px)!important;
  margin-left:auto!important;margin-right:auto!important;
}
/* サイドバー領域も親と同様に閉じる */
.page-id-107633 .l-flex > main + aside, .page-id-107635 .l-flex > main + aside,
.page-id-3864   .l-flex > main + aside, .page-id-5004   .l-flex > main + aside,
.page-id-105593 .l-flex > main + aside, .page-id-105594 .l-flex > main + aside,
.page-id-105595 .l-flex > main + aside, .page-id-105596 .l-flex > main + aside,
.page-id-105597 .l-flex > main + aside, .page-id-105598 .l-flex > main + aside,
.page-id-107745 .l-flex > main + aside, .page-id-107788 .l-flex > main + aside,
.page-id-107394 .l-flex > main + aside, .page-id-105282 .l-flex > main + aside,
.page-id-4933   .l-flex > main + aside, .page-id-105266 .l-flex > main + aside,
.page-id-105270 .l-flex > main + aside, .page-id-106851 .l-flex > main + aside,
.page-id-106852 .l-flex > main + aside, .page-id-106853 .l-flex > main + aside,
.page-id-103079 .l-flex > main + aside, .page-id-105355 .l-flex > main + aside,
.page-id-105356 .l-flex > main + aside{display:none!important;}

@media (max-width:520px){
  .page-id-107633 .l-flex > main, .page-id-107635 .l-flex > main,
  .page-id-3864   .l-flex > main, .page-id-5004   .l-flex > main,
  .page-id-105593 .l-flex > main, .page-id-107394 .l-flex > main,
  .page-id-105266 .l-flex > main, .page-id-105270 .l-flex > main,
  .page-id-103079 .l-flex > main{max-width:calc(100% - 32px)!important;}
}

/* ---------- チェックリスト（カードの代替） ----------
   「おすすめの方」等をカード6枚で並べるのをやめ、
   チェック記号＋1行のリストにする。装飾を足さない。 */
body .mtu-check{
  list-style:none!important;margin:8px 0 28px!important;padding:0!important;
}
body .mtu-check li{
  position:relative;padding-left:34px;margin-bottom:14px;
  font-size:18px;line-height:32px;color:#172033;
}
body .mtu-check li::before{
  content:"";position:absolute;left:0;top:7px;
  width:20px;height:20px;border-radius:5px;background:#245A8D;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/14px no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/14px no-repeat;
}
body .mtu-check li:last-child{margin-bottom:0;}

/* ---------- 料金比較表 ---------- */
body .mtu-pricetable{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid #DCE6F0;border-radius:12px;margin:24px 0 20px;background:#fff;
}
body .mtu-pricetable table{
  width:100%;min-width:640px;border-collapse:collapse;font-size:16px;line-height:27px;
}
body .mtu-pricetable th,
body .mtu-pricetable td{
  padding:16px 18px!important;border:0!important;
  border-bottom:1px solid #DCE6F0!important;text-align:left;vertical-align:top;
}
body .mtu-pricetable thead th{
  background:#245A8D!important;color:#FFFFFF!important;
  font-size:15px!important;font-weight:800!important;white-space:nowrap;
}
body .mtu-pricetable tbody th{
  background:#EEF6FC!important;color:#245A8D!important;font-weight:700!important;white-space:nowrap;
}
body .mtu-pricetable tbody td{color:#5B6778;}
body .mtu-pricetable tbody td strong{color:#172033;font-size:19px;font-weight:800;}
body .mtu-pricetable tbody tr:last-child th,
body .mtu-pricetable tbody tr:last-child td{border-bottom:0!important;}

@media (max-width:820px){
  body .mtu-check li{font-size:17px;line-height:30px;padding-left:30px;}
  body .mtu-check li::before{width:18px;height:18px;top:6px;}
  body .mtu-pricetable table{font-size:15px;line-height:25px;}
  body .mtu-pricetable th,body .mtu-pricetable td{padding:13px 14px!important;}
}

/* ---------- 番号付きステップ（カードの代替） ----------
   16カードで分断されていた指導内容を4項目に統合。
   囲み枠を作らず、番号と罫線だけで区切る。 */
body .mtu-steps{list-style:none!important;margin:8px 0 32px!important;padding:0!important;counter-reset:none;}
body .mtu-steps .mtu-step{
  display:flex;gap:22px;align-items:flex-start;
  padding:24px 0;border-top:1px solid #DCE6F0;margin:0;
}
body .mtu-steps .mtu-step:first-child{border-top:2px solid #245A8D;}
body .mtu-steps .mtu-step:last-child{border-bottom:1px solid #DCE6F0;}
body .mtu-step-n{
  flex:none;font-size:30px;line-height:1;font-weight:800;color:#245A8D;
  letter-spacing:-1px;padding-top:2px;min-width:46px;
}
body h3.mtu-step-t{
  font-size:20px!important;line-height:31px!important;font-weight:800!important;
  color:#172033!important;margin:0 0 8px!important;padding:0!important;background:none!important;
}
body .mtu-step-d{font-size:17px!important;line-height:30px!important;color:#5B6778!important;margin:0!important;}

/* ---------- 理由（横並び4項目・囲みなし） ---------- */
body .mtu-why{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:32px 34px;margin:24px 0 32px;
}
body .mtu-why-item{border-top:2px solid #DCE6F0;padding-top:18px;}
body .mtu-why-n{
  display:block;font-size:13px;font-weight:800;letter-spacing:1.5px;
  color:#245A8D;margin-bottom:8px;   /* Primary は白背景で CR3.97 のため Deep(6.87) */
}
body h3.mtu-why-t{
  font-size:18px!important;line-height:28px!important;font-weight:800!important;
  color:#172033!important;margin:0 0 8px!important;padding:0!important;background:none!important;
}
body .mtu-why-d{font-size:16px!important;line-height:28px!important;color:#5B6778!important;margin:0!important;}

@media (max-width:820px){
  body .mtu-steps .mtu-step{gap:16px;padding:20px 0;}
  body .mtu-step-n{font-size:24px;min-width:38px;}
  body h3.mtu-step-t{font-size:18px!important;line-height:29px!important;}
  body .mtu-step-d{font-size:16px!important;line-height:28px!important;}
  body .mtu-why{grid-template-columns:1fr;gap:22px;}
}

/* ---------- 入れ子になった alignfull セクションの補正 ----------
   本文全体を dbp-section で包んだため、元からあった内側の
   dbp-section(alignfull) が二重ネストになった。
   alignfull は「左に負マージン→画面幅いっぱい」を作る実装なので、
   親が既に幅を制限していると左だけ -131px ずれて中央から外れる。
   包んだ内側のセクションでは負マージンを打ち消す。 */
.mtu-page-wrap .wp-block-dbp-section.alignfull,
.mtu-page-wrap .dbp-section.alignfull{
  margin-left:0!important;margin-right:0!important;
  width:100%!important;max-width:100%!important;
}
/* 同じ理由で、包んだ内側の alignfull ブロック全般を補正する */
.mtu-page-wrap .alignfull{
  margin-left:0!important;margin-right:0!important;
  width:100%!important;max-width:100%!important;
}

/* ---------- CTA直前の確認内容＋講師写真 ----------
   「予約する」ボタンだけでは弱いため、体験授業で何を確認するかを
   4項目で示し、最後に誰が指導するのかを写真で補う。
   写真は主役にせず、文章の右に小さく添える。 */
body .mtu-ctalead{
  display:flex;gap:32px;align-items:flex-start;
  margin:22px 0 30px;text-align:left;
}
body .mtu-ctalead-t{
  font-size:17px!important;line-height:30px!important;
  color:#5B6778!important;margin:0 0 14px!important;
}
body ul.mtu-ctacheck{list-style:none!important;margin:0!important;padding:0!important;}
body ul.mtu-ctacheck li{
  position:relative;padding-left:30px;margin-bottom:11px;
  font-size:17px;line-height:29px;color:#172033;
}
body ul.mtu-ctacheck li::before{
  content:"";position:absolute;left:0;top:6px;
  width:18px;height:18px;border-radius:5px;background:#245A8D;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/13px no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/13px no-repeat;
}
body ul.mtu-ctacheck li:last-child{margin-bottom:0;}
body .mtu-ctaphoto{
  flex:none;width:300px;margin:0;
}
body .mtu-ctaphoto img{
  display:block;width:100%;height:auto;
  aspect-ratio:3 / 2;object-fit:cover;
  border-radius:12px;border:1px solid #DCE6F0;
  box-shadow:0 4px 14px rgba(11,31,58,.06);
}
body .mtu-ctaphoto figcaption{
  margin-top:9px;font-size:13px;line-height:21px;color:#5B6778;text-align:left;
}
@media (max-width:820px){
  body .mtu-ctalead{flex-direction:column;gap:20px;}
  /* 縦積み時に幅100%だと599pxまで伸びて他の写真(300px)と揃わない。
     写真は補助要素なので上限を設ける。 */
  body .mtu-ctaphoto{width:100%;max-width:380px;}
  body ul.mtu-ctacheck li{font-size:16px;line-height:28px;}
}
/* ===== TUTORING CHILD UNIFY v1 END ===== */


/* ==========================================================================
   トップ84 修正: CTA3段階化 + 利用者の声の版面/カード調整
   （html font-size=10px のため px 指定。mn84 変数を使用）
   ========================================================================== */
/* --- Tertiary: 矢印付きテキストリンク（Primary塗り/Secondary枠より明確に弱く）--- */
.home .mn84-plink-txt{
  display:inline-flex;align-items:center;gap:6px;
  height:auto;padding:0;
  background:none;border:0;border-radius:0;
  color:var(--m84-blue);font-size:15px;font-weight:700;letter-spacing:.3px;
  transition:color .18s ease;
}
.home .mn84-plink-txt::after{content:"→";font-weight:700;}
.home .mn84-plink-txt:hover{color:var(--m84-navy);text-decoration:underline;text-underline-offset:3px;transform:none;}

/* --- 利用者の声: 版面を絞り、左右に余白を残す --- */
.home .mn84-voiceswrap{max-width:940px;margin-inline:auto;}
/* カード感を弱める（強い影/太枠/大きな角丸を排し、左罫線の編集的引用に）*/
.home .mn84-voiceswrap .mn84-voice{
  padding:26px 28px;
  border:1px solid var(--m84-line);
  border-left:4px solid var(--m84-blue);
  border-radius:8px;
  box-shadow:none;
  background:#fff;
}
.home .mn84-voiceswrap .mn84-voice--lead{
  border:1px solid #d7e6f4;
  border-left:5px solid var(--m84-navy);
  background:#F4F9FD;
  padding:30px 34px;
}
.home .mn84-voiceswrap .mn84-voice-t{font-size:19px!important;line-height:29px!important;}
.home .mn84-voiceswrap .mn84-voice--lead .mn84-voice-t{font-size:22px!important;line-height:33px!important;}

@media (max-width:768px){
  .home .mn84-plinks{align-items:flex-start;}
  .home .mn84-voiceswrap .mn84-voice{padding:22px 20px;}
  .home .mn84-voiceswrap .mn84-voice--lead{padding:24px 22px;}
}

/* --- CTA Primary: 現行の .mn84-plink-btn{background:none} 上書きに勝つ高詳細度で塗りボタン化 --- */
.page-id-84 .mn84-plinks .mn84-plink-btn:not(.mn84-plink-txt):not(.mn84-plink-btn--outline){
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  height:50px;padding:0 26px;border-radius:8px;
  background:var(--m84-navy) !important;color:#fff !important;
  font-size:16px;font-weight:700;letter-spacing:.5px;border:0;
}
.page-id-84 .mn84-plinks .mn84-plink-btn:not(.mn84-plink-txt):not(.mn84-plink-btn--outline)::after{content:"→";}
.page-id-84 .mn84-plinks .mn84-plink-btn:not(.mn84-plink-txt):not(.mn84-plink-btn--outline):hover{background:var(--m84-blue) !important;}


/* --- 大学ページ Hero（scope: .single-university）px指定 --- */
.single-university .mn-uni__hero{
  margin-bottom:44px;
  padding:34px 34px 30px;
  background:linear-gradient(180deg,#F4F9FD 0%,#ffffff 100%);
  border:1px solid #e2e9f1;
  border-radius:18px;
}
.single-university .mn-uni__eyebrow{
  margin:0 0 10px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.08em;
  color:var(--mn-blue);
}
.single-university .mn-uni__hero .mn-uni__title{
  margin:0 0 6px;
  font-size:32px;
  font-weight:800;
  line-height:1.4;
  color:var(--mn-navy);
}
.single-university .mn-uni__hero .mn-uni__subtitle{
  margin:0 0 16px;
  font-size:17px;
  font-weight:600;
  color:#5b6b7b;
}
.single-university .mn-uni__loc{ margin:0 0 22px; font-size:14px; font-weight:600; color:#5b6b7b; }
.single-university .mn-uni__loc::before{ content:"📍"; margin-right:6px; filter:grayscale(1) opacity(.6); }
.single-university .mn-uni__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 20px;
}
.single-university .mn-uni__chip{
  display:inline-block;
  padding:5px 13px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  background:#EEF6FC;
  color:var(--mn-blue);
  border:1px solid #d3e5f4;
}
.single-university .mn-uni__chip--type{ background:var(--mn-navy); color:#fff; border-color:var(--mn-navy); }
/* IMAT対象=重要情報として淡いブルー強調 / 独自試験=淡いグレー */
.single-university .mn-uni__chip--imat{ background:#DBEAF7; color:#1F547F; border-color:#B9D4EC; }
.single-university .mn-uni__chip--exam{ background:#F0F2F5; color:#5B6778; border-color:#DDE3EA; }
/* --- Admission Snapshot 帯（Heroの下・数字情報を分離） --- */
.single-university .mn-uni__snap{
  margin:-24px 0 40px;
  padding:20px 24px;
  background:#fff;
  border:1px solid #e2e9f1;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(11,31,58,.05);
}
.single-university .mn-uni__snap-label{
  margin:0 0 14px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--mn-blue);
  text-transform:uppercase;
}
.single-university .mn-uni__snap-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:16px 28px;
  margin:0;
}
.single-university .mn-uni__snap-grid div{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding-left:14px;
  border-left:3px solid #e2e9f1;
}
.single-university .mn-uni__snap-grid dt{
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  color:var(--mn-blue);
}
.single-university .mn-uni__snap-grid dd{
  margin:0;
  font-size:15px;
  line-height:1.6;
  color:var(--mn-navy);
  font-weight:700;
}
.single-university .mn-uni__herocta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.single-university .mn-uni__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:50px;
  padding:0 24px;
  border-radius:9px;
  font-size:15px;
  font-weight:700;
  text-decoration:none;
  border:1px solid var(--mn-navy);
  color:var(--mn-navy);
  background:#fff;
  transition:all .18s ease;
}
.single-university .mn-uni__btn--primary{ background:var(--mn-navy); color:#fff; }
.single-university .mn-uni__btn--primary:hover{ background:var(--mn-blue); }
.single-university .mn-uni__btn:hover{ transform:translateY(-2px); }
.single-university .mn-uni__btn--ghost{ border-color:#cdd8e4; color:#5b6b7b; }
.single-university .mn-uni__hero .mn-uni__notice{ margin:20px 0 0; }

@media (max-width:768px){
  .single-university .mn-uni__hero{ padding:24px 18px; }
  .single-university .mn-uni__hero .mn-uni__title{ font-size:24px; }
  
  .single-university .mn-uni__snap-grid{ grid-template-columns:1fr; }
  .single-university .mn-uni__snap{ margin-top:-16px; padding:18px; }
  .single-university .mn-uni__herocta{ flex-direction:column; }
  .single-university .mn-uni__btn{ width:100%; }
}

/* ===== TOP84 v6 追補（2026-07-28）: Evidence再構成 / Nobu左右 / CTA矢印整理 / 余白調整 ===== */
/* CTA: 矢印はテキストリンクのみ。塗り/枠ボタンからは矢印を除去 */
.page-id-84 .mn84-plinks .mn84-plink-btn::after{content:"" !important;}
.page-id-84 .mn84-plink-txt::after{content:"→";font-weight:700;margin-left:6px;}
/* Nobu 左右レイアウトのキャプション（写真は左・補助、文章が主役） */
.page-id-84 .mn84-nobu-photo{margin:0;}
.page-id-84 .mn84-nobu-photo img{width:100%;max-width:340px;height:auto;display:block;border-radius:14px;box-shadow:0 18px 44px rgba(11,31,58,.16);}
.page-id-84 .mn84-nobu-cap{display:flex;flex-direction:column;gap:2px;margin-top:16px;}
.page-id-84 .mn84-nobu-cap-role{font-size:14px;font-weight:700;color:var(--m84-muted);letter-spacing:1px;}
.page-id-84 .mn84-nobu-cap-name{font-size:24px;font-weight:800;color:var(--m84-navy);letter-spacing:1px;line-height:1.2;}
.page-id-84 .mn84-nobu-cap-ach{font-size:14px;line-height:22px;color:#3A4A5C;margin-top:4px;}
/* Evidence: 3連の柱間余白を少し詰める */
.page-id-84 .mn84-pillars--evidence{gap:56px;}
/* STEP6 余白調整: NEWS/FAQ を締める */
.page-id-84 .mn84-sec--tight{padding:80px 24px;}
.page-id-84 .mn84-news{margin-top:8px;}
.page-id-84 .mn84-faq{margin-top:4px;}
@media(max-width:820px){
  .page-id-84 .mn84-nobu-photo img{max-width:260px;}
  .page-id-84 .mn84-nobu-cap-name{font-size:22px;}
  .page-id-84 .mn84-pillars--evidence{gap:40px;}
  .page-id-84 .mn84-sec--tight{padding:56px 20px;}
}

/* ===== TOP84 v7 追補（2026-07-28）: trust文字型 / SERVICEボタン綺麗化 / Nobu写真縮小 ===== */
/* 信頼帯: 第1指標をテキスト型に（数字ではなく在籍アピール） */
.page-id-84 .mn84-trust--txt{justify-content:center;}
.page-id-84 .mn84-trust-nt{display:block;font-size:23px;font-weight:800;color:var(--m84-navy);line-height:1.4;letter-spacing:.3px;}
@media(max-width:820px){ .page-id-84 .mn84-trust-nt{font-size:21px;} }

/* SERVICE 各柱のCTA: primary=濃紺塗り / secondary=白+紺枠 を「押せる綺麗なボタン」に統一
   （旧CTA DIET v1 の !important 平坦化を高詳細度で上書き） */
.page-id-84 .mn84-plinks .mn84-plink-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px;
  height:52px!important;min-height:52px!important;padding:0 26px!important;
  border-radius:8px!important;font-size:16px!important;font-weight:700!important;letter-spacing:.3px;
  text-decoration:none!important;border:2px solid var(--m84-navy)!important;border-bottom-width:2px!important;
  box-shadow:none!important;transition:background-color .18s ease,transform .18s ease;
}
.page-id-84 .mn84-plinks .mn84-plink-btn:not(.mn84-plink-btn--outline){background:var(--m84-navy)!important;color:#fff!important;}
.page-id-84 .mn84-plinks .mn84-plink-btn:not(.mn84-plink-btn--outline):hover{background:var(--m84-blue)!important;border-color:var(--m84-blue)!important;transform:translateY(-2px);}
.page-id-84 .mn84-plinks .mn84-plink-btn--outline{background:#fff!important;color:var(--m84-navy)!important;}
.page-id-84 .mn84-plinks .mn84-plink-btn--outline:hover{background:#EEF6FC!important;transform:translateY(-2px);}
.page-id-84 .mn84-plinks .mn84-plink-btn::after{content:""!important;}
.page-id-84 .mn84-plinks .mn84-plink-txt::after{content:"→"!important;font-weight:700;margin-left:6px;}
@media(max-width:520px){ .page-id-84 .mn84-plinks .mn84-plink-btn{width:100%!important;} }

/* 代表講師メッセージ: 写真を小さく（補助）+ 本文を主役に */
@media(min-width:821px){ .page-id-84 .mn84-nobu{grid-template-columns:260px 1fr!important;gap:48px;align-items:start;} }
.page-id-84 .mn84-nobu-photo img{max-width:230px;}
@media(max-width:820px){ .page-id-84 .mn84-nobu-photo img{max-width:190px;} }
.page-id-84 .mn84-nobu-msg{margin-bottom:22px;}
.page-id-84 .mn84-nobu-msg p{font-size:17px;line-height:32px;color:#2B3E52;margin-bottom:16px;}
.page-id-84 .mn84-nobu-msg p:last-child{margin-bottom:0;}
.page-id-84 .mn84-nobu-msg strong{font-weight:800;color:var(--m84-navy);}


/* ================================================================
   BRIEFING (ID 105282)  —  namespace: brf-  / scope: .page-id-105282
   2026-07-28. トップ84(mn84-)と同一の設計言語。UNITS: px only。
   ================================================================ */
.page-id-105282{
  --brf-navy:#245A8D; --brf-blue:#2F6FAE; --brf-off:#F8FAFC; --brf-bg2:#EEF3F8;
  --brf-line:#DCE6F0; --brf-muted:#5B6778; --brf-ink:#172033; --brf-soft:#EEF6FC;
}
.page-id-105282 .brf{color:var(--brf-ink);}
.page-id-105282 .brf *{box-sizing:border-box;}
.page-id-105282 .brf-in{max-width:1120px;margin:0 auto;}
.page-id-105282 .brf-in--narrow{max-width:900px;}
.page-id-105282 .brf-sec{padding:96px 24px;}
.page-id-105282 .brf-sec--off{background:var(--brf-off);}
.page-id-105282 .brf-sec--navy{background:var(--brf-navy);color:#fff;}
.page-id-105282 .brf-center{text-align:center;}
.page-id-105282 .brf-eyebrow{display:block;font-size:13px;font-weight:800;letter-spacing:2px;color:var(--brf-blue);margin-bottom:14px;}
.page-id-105282 .brf-sec--navy .brf-eyebrow{color:#BFD6EC;}
.page-id-105282 .brf-h1{font-size:44px;line-height:1.28;font-weight:800;color:var(--brf-navy);letter-spacing:.5px;margin:0 0 20px;}
.page-id-105282 .brf-h1 em{font-style:normal;color:var(--brf-blue);}
.page-id-105282 .brf-h2{font-size:34px;line-height:1.35;font-weight:800;color:var(--brf-navy);letter-spacing:.5px;margin:0 0 18px;}
.page-id-105282 .brf-sec--navy .brf-h2{color:#fff;}
.page-id-105282 .brf-h2 em{font-style:normal;color:var(--brf-blue);}
.page-id-105282 .brf-sec--navy .brf-h2 em{color:#BFD6EC;}
.page-id-105282 .brf-lead{font-size:18px;line-height:32px;color:var(--brf-muted);margin:0 0 34px;max-width:820px;}
.page-id-105282 .brf-lead--onnavy{color:#D7E4F1;}
.page-id-105282 .brf-note{font-size:14px;line-height:24px;color:var(--brf-muted);margin-top:24px;}
.page-id-105282 .brf-note--onnavy{color:#AFC6DD;}

/* ---- buttons ---- */
.page-id-105282 .brf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:56px;padding:0 30px;border-radius:8px;font-size:16px;font-weight:700;letter-spacing:.3px;text-decoration:none;border:2px solid var(--brf-navy);transition:background-color .18s ease,transform .18s ease,border-color .18s ease;}
.page-id-105282 .brf-btn--primary{background:var(--brf-navy);color:#fff;}
.page-id-105282 .brf-btn--primary:hover{background:var(--brf-blue);border-color:var(--brf-blue);color:#fff;transform:translateY(-2px);}
.page-id-105282 .brf-btn--secondary{background:#fff;color:var(--brf-navy);}
.page-id-105282 .brf-btn--secondary:hover{background:var(--brf-soft);transform:translateY(-2px);}
.page-id-105282 .brf-btn--onnavy{background:#fff;color:var(--brf-navy);border-color:#fff;}
.page-id-105282 .brf-btn--onnavy:hover{background:var(--brf-soft);transform:translateY(-2px);}
.page-id-105282 .brf-btn--ghostnavy{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.page-id-105282 .brf-btn--ghostnavy:hover{background:rgba(255,255,255,.1);border-color:#fff;transform:translateY(-2px);}
.page-id-105282 .brf-btn--full{width:100%;}
.page-id-105282 .brf-btnrow{display:flex;flex-wrap:wrap;gap:14px;margin-top:6px;}
.page-id-105282 .brf-btnrow--center{justify-content:center;}

/* ---- hero ---- */
.page-id-105282 .brf-hero{padding:72px 24px 40px;background:linear-gradient(180deg,#F4F8FC 0%,#fff 100%);}
.page-id-105282 .brf-hero-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
.page-id-105282 .brf-rule{width:64px;height:4px;background:var(--brf-blue);border-radius:2px;margin:0 0 22px;}
.page-id-105282 .brf-hero-sub{font-size:18px;line-height:32px;color:var(--brf-muted);margin:0 0 26px;}
.page-id-105282 .brf-chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0;}
.page-id-105282 .brf-chips li{font-size:13px;font-weight:700;color:var(--brf-navy);background:#fff;border:1px solid var(--brf-line);border-radius:999px;padding:7px 14px;}
.page-id-105282 .brf-chips li::before{content:"✓";color:var(--brf-blue);font-weight:800;margin-right:6px;}
.page-id-105282 .brf-hero-img{margin:0;border-radius:16px;overflow:hidden;border:1px solid var(--brf-line);box-shadow:0 26px 60px rgba(11,31,58,.18);aspect-ratio:3/2;}
.page-id-105282 .brf-hero-img img{width:100%;height:100%;object-fit:cover;display:block;}

/* ---- 3つの入口 ---- */
.page-id-105282 .brf-entries{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:16px;align-items:stretch;}
.page-id-105282 .brf-entry{display:flex;flex-direction:column;background:#fff;border:1px solid var(--brf-line);border-radius:14px;padding:30px 26px;box-shadow:0 10px 30px rgba(11,31,58,.06);}
.page-id-105282 .brf-entry--main{border:2px solid var(--brf-navy);box-shadow:0 18px 44px rgba(11,31,58,.14);}
.page-id-105282 .brf-entry-tag{align-self:flex-start;font-size:12px;font-weight:800;letter-spacing:1px;color:var(--brf-navy);background:var(--brf-soft);border:1px solid #C9DEF0;border-radius:6px;padding:5px 11px;margin-bottom:14px;}
.page-id-105282 .brf-entry-tag--free{color:#fff;background:var(--brf-navy);border-color:var(--brf-navy);}
.page-id-105282 .brf-entry-t{font-size:23px;font-weight:800;color:var(--brf-navy);margin:0 0 6px;}
.page-id-105282 .brf-entry-meta{font-size:14px;font-weight:700;color:var(--brf-blue);margin:0 0 12px;}
.page-id-105282 .brf-entry-d{font-size:15px;line-height:26px;color:var(--brf-muted);margin:0 0 22px;flex:1;}
.page-id-105282 .brf-entry .brf-btn{height:52px;font-size:15px;}

/* ---- topics ---- */
.page-id-105282 .brf-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.page-id-105282 .brf-topic{background:#fff;border:1px solid var(--brf-line);border-radius:12px;padding:26px 24px;}
.page-id-105282 .brf-sec--off .brf-topic{box-shadow:0 8px 24px rgba(11,31,58,.05);}
.page-id-105282 .brf-topic-k{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.8px;color:var(--brf-blue);background:var(--brf-soft);border-radius:5px;padding:4px 10px;margin-bottom:12px;}
.page-id-105282 .brf-topic-t{font-size:19px;font-weight:800;color:var(--brf-navy);margin:0 0 10px;line-height:1.4;}
.page-id-105282 .brf-topic-d{font-size:15px;line-height:26px;color:var(--brf-muted);margin:0 0 16px;}
.page-id-105282 .brf-topic-link{font-size:15px;font-weight:700;color:var(--brf-blue);text-decoration:none;}
.page-id-105282 .brf-topic-link::after{content:"→";margin-left:6px;}
.page-id-105282 .brf-topic-link:hover{text-decoration:underline;text-underline-offset:3px;}

/* ---- checklist ---- */
.page-id-105282 .brf-check{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 34px;}
.page-id-105282 .brf-check li{position:relative;padding-left:34px;font-size:16px;line-height:26px;color:var(--brf-ink);}
.page-id-105282 .brf-check li::before{content:"";position:absolute;left:0;top:3px;width:22px;height:22px;border-radius:50%;background:var(--brf-soft);border:1px solid #C9DEF0;}
.page-id-105282 .brf-check li::after{content:"✓";position:absolute;left:6px;top:2px;color:var(--brf-blue);font-weight:800;font-size:13px;}

/* ---- trust band ---- */
.page-id-105282 .brf-trust{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:8px;}
.page-id-105282 .brf-trust-i{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:22px 16px;text-align:center;}
.page-id-105282 .brf-trust-n{display:block;font-size:22px;font-weight:800;color:#fff;letter-spacing:.5px;margin-bottom:8px;}
.page-id-105282 .brf-trust-l{display:block;font-size:13px;line-height:20px;color:#CBDBEC;}

/* ---- steps ---- */
.page-id-105282 .brf-steps{display:grid;gap:16px;}
.page-id-105282 .brf-step{display:grid;grid-template-columns:64px 1fr;gap:22px;align-items:start;background:#fff;border:1px solid var(--brf-line);border-radius:12px;padding:24px 26px;}
.page-id-105282 .brf-step-n{font-size:30px;font-weight:800;color:var(--brf-blue);line-height:1;}
.page-id-105282 .brf-step-t{font-size:19px;font-weight:800;color:var(--brf-navy);margin:0 0 6px;}
.page-id-105282 .brf-step-d{font-size:15px;line-height:26px;color:var(--brf-muted);margin:0;}

/* ---- FAQ (native details) ---- */
.page-id-105282 .brf-faq{border-top:1px solid var(--brf-line);}
.page-id-105282 .brf-faq-item{border-bottom:1px solid var(--brf-line);background:#fff;}
.page-id-105282 .brf-faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:22px 20px;font-size:17px;font-weight:700;color:var(--brf-navy);position:relative;}
.page-id-105282 .brf-faq-item summary::-webkit-details-marker{display:none;}
.page-id-105282 .brf-faq-item summary::before{content:"Q";flex:0 0 auto;width:28px;height:28px;border-radius:6px;background:var(--brf-navy);color:#fff;font-size:14px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;}
.page-id-105282 .brf-faq-item summary::after{content:"＋";margin-left:auto;color:var(--brf-blue);font-weight:800;font-size:18px;}
.page-id-105282 .brf-faq-item[open] summary::after{content:"－";}
.page-id-105282 .brf-faq-a{padding:0 20px 24px 60px;font-size:16px;line-height:29px;color:var(--brf-muted);}

/* ---- final CTA ---- */
.page-id-105282 .brf-final{background:var(--brf-navy);color:#fff;padding:88px 24px;}
.page-id-105282 .brf-final .brf-h2{color:#fff;}
.page-id-105282 .brf-final .brf-h2 em{color:#BFD6EC;}
.page-id-105282 .brf-final .brf-eyebrow{color:#BFD6EC;}
.page-id-105282 .brf-final-sub{font-size:18px;line-height:31px;color:#D7E4F1;margin:0 auto 30px;max-width:640px;}
.page-id-105282 .brf-final-note{margin-top:22px;font-size:15px;color:#CBDBEC;}
.page-id-105282 .brf-final-note a{color:#fff;text-decoration:underline;text-underline-offset:3px;}

/* ---- responsive ---- */
@media(max-width:960px){
  .page-id-105282 .brf-hero-grid{grid-template-columns:1fr;gap:32px;}
  .page-id-105282 .brf-hero-visual{order:-1;}
  .page-id-105282 .brf-entries{grid-template-columns:1fr;}
  .page-id-105282 .brf-topics{grid-template-columns:1fr 1fr;}
  .page-id-105282 .brf-trust{grid-template-columns:1fr 1fr 1fr;}
  .page-id-105282 .brf-h1{font-size:34px;}
  .page-id-105282 .brf-h2{font-size:28px;}
  .page-id-105282 .brf-sec{padding:72px 20px;}
}
@media(max-width:600px){
  .page-id-105282 .brf-topics{grid-template-columns:1fr;}
  .page-id-105282 .brf-trust{grid-template-columns:1fr 1fr;}
  .page-id-105282 .brf-check{grid-template-columns:1fr;}
  .page-id-105282 .brf-h1{font-size:29px;}
  .page-id-105282 .brf-h2{font-size:25px;}
  .page-id-105282 .brf-btn{width:100%;}
  .page-id-105282 .brf-btnrow{gap:12px;}
  .page-id-105282 .brf-step{grid-template-columns:44px 1fr;gap:14px;padding:20px;}
  .page-id-105282 .brf-hero{padding:48px 20px 24px;}
  .page-id-105282 .brf-sec{padding:56px 20px;}
}

/* Re:Diver スクロールfade-inを .brf 内で無効化（初期非表示・blank化の防止・自ラッパー限定） */
.page-id-105282 .brf,
.page-id-105282 .brf section,
.page-id-105282 .brf > div{opacity:1 !important;transform:none !important;visibility:visible !important;animation:none !important;}

/* ===== BRIEFING v2 refine（2026-07-28）: Hero写真を脇役化 / 縦選択UI / 実績3本 ===== */
/* Hero: 文章70-80% : 写真20-30% */
@media(min-width:961px){
  .page-id-105282 .brf-hero-grid{grid-template-columns:1.9fr 1fr;gap:48px;}
}
.page-id-105282 .brf-hero-img{box-shadow:0 18px 44px rgba(11,31,58,.14);}

/* 縦方向の選択UI（カード3枚並びをやめる） */
.page-id-105282 .brf-picks{display:grid;gap:14px;margin-top:8px;}
.page-id-105282 .brf-pick{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;background:#fff;border:1px solid var(--brf-line);border-radius:12px;padding:22px 28px;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;}
.page-id-105282 .brf-pick:hover{border-color:var(--brf-navy);box-shadow:0 12px 30px rgba(11,31,58,.10);transform:translateY(-1px);}
.page-id-105282 .brf-pick--main{border:2px solid var(--brf-navy);box-shadow:0 12px 30px rgba(11,31,58,.08);}
.page-id-105282 .brf-pick-n{font-size:26px;font-weight:800;color:var(--brf-blue);line-height:1;min-width:32px;}
.page-id-105282 .brf-pick-body{display:flex;flex-direction:column;gap:6px;}
.page-id-105282 .brf-pick-t{font-size:20px;font-weight:800;color:var(--brf-navy);display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.page-id-105282 .brf-pick-price{font-size:12px;font-weight:800;letter-spacing:.5px;color:var(--brf-navy);background:var(--brf-soft);border:1px solid #C9DEF0;border-radius:6px;padding:4px 10px;}
.page-id-105282 .brf-pick-price--free{color:#fff;background:var(--brf-navy);border-color:var(--brf-navy);}
.page-id-105282 .brf-pick-d{font-size:15px;line-height:24px;color:var(--brf-muted);}
.page-id-105282 .brf-pick-cta{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--brf-navy);white-space:nowrap;}
.page-id-105282 .brf-pick-cta::after{content:"→";color:var(--brf-blue);font-weight:800;}
.page-id-105282 .brf-pick:hover .brf-pick-cta{color:var(--brf-blue);}
.page-id-105282 .brf-pick--main .brf-pick-cta{background:var(--brf-navy);color:#fff;border-radius:8px;padding:13px 24px;}
.page-id-105282 .brf-pick--main .brf-pick-cta::after{color:#fff;}
.page-id-105282 .brf-pick--main:hover .brf-pick-cta{background:var(--brf-blue);color:#fff;}

/* 実績帯 3本（数字を絞る） */
.page-id-105282 .brf-trust{grid-template-columns:repeat(3,1fr);}
.page-id-105282 .brf-trust-n{font-size:44px;line-height:1;}
.page-id-105282 .brf-trust-n small{font-size:17px;font-weight:700;margin-left:3px;}

@media(max-width:600px){
  .page-id-105282 .brf-pick{grid-template-columns:auto 1fr;row-gap:16px;padding:20px;gap:16px;}
  .page-id-105282 .brf-pick-cta{grid-column:1 / -1;width:100%;justify-content:center;border:2px solid var(--brf-navy);border-radius:8px;padding:14px;}
  .page-id-105282 .brf-pick--main .brf-pick-cta{background:var(--brf-navy);color:#fff;}
  .page-id-105282 .brf-pick--main .brf-pick-cta::after{color:#fff;}
  .page-id-105282 .brf-pick-cta::after{color:var(--brf-navy);}
  .page-id-105282 .brf-pick--main .brf-pick-cta{border-color:var(--brf-navy);}
}
@media(max-width:520px){
  .page-id-105282 .brf-trust{grid-template-columns:1fr;}
  .page-id-105282 .brf-trust-n{font-size:38px;}
}

/* ===== BRIEFING v3（2026-07-28）: 入口02・03もボタン化（全CTAをボタンで目立たせる） ===== */
.page-id-105282 .brf-pick-cta{border:2px solid var(--brf-navy);border-radius:8px;padding:13px 24px;background:#fff;color:var(--brf-navy);}
.page-id-105282 .brf-pick-cta::after{color:var(--brf-blue);}
.page-id-105282 .brf-pick:hover .brf-pick-cta{background:var(--brf-soft);color:var(--brf-navy);}
.page-id-105282 .brf-pick--main .brf-pick-cta{background:var(--brf-navy);color:#fff;border-color:var(--brf-navy);}
.page-id-105282 .brf-pick--main .brf-pick-cta::after{color:#fff;}
.page-id-105282 .brf-pick--main:hover .brf-pick-cta{background:var(--brf-blue);border-color:var(--brf-blue);color:#fff;}

/* MedStudents hub: H1はSEO/AXのため保持しつつ視覚的に非表示 */
.page-id-105326 h1.mds-h1-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}

/* MedStudents hub: size=full でもコンテンツ幅は「幅広」で止める（全幅にしない） */
/* mds-hub-width-cap */
.page-id-105326 .dbp-section__inner{max-width:1265px!important;margin-left:auto!important;margin-right:auto!important;}
.page-id-105326 .article-container > .l-inner-wide,
.page-id-105326 .entry-content > .l-inner-wide{max-width:1265px!important;margin-left:auto!important;margin-right:auto!important;}

/* MedStudents hub: 本文ブロックを幅広(1240px)に統一（900px制限を解除・全幅にはしない） */
/* mds-hub-block-wide */
.page-id-105326 .dbp-section__inner{--wp--style--global--content-size:1240px;}
.page-id-105326 .dbp-section__inner > .wp-block-dbp-column,
.page-id-105326 .dbp-section__inner > .wp-block-columns,
.page-id-105326 .dbp-section__inner > .wp-block-group,
.page-id-105326 .dbp-section__inner > .wp-block-dbp-accordion,
.page-id-105326 .dbp-section__inner > figure,
.page-id-105326 .dbp-section__inner > p,
.page-id-105326 .dbp-section__inner > h2,
.page-id-105326 .dbp-section__inner > .wp-block-dbp-heading{max-width:1240px!important;width:100%;}

/* MedStudents hub: flexコンテナ側のalign-itemsで子が900pxに縮むのを解除 */
/* mds-hub-flex-align */
.page-id-105326 .dbp-section__inner{align-items:stretch!important;}
.page-id-105326 .dbp-section__inner > *{align-self:stretch!important;}

/* MedStudents hub: 一部カラムが content-size(900px) に縮む問題を、詳細度を上げて解除 */
/* mds-hub-col-force */
body.page-id-105326 .dbp-section .dbp-section__inner > .wp-block-dbp-column.dbp-column{width:100%!important;max-width:1240px!important;}
body.page-id-105326 .dbp-section .dbp-section__inner > .wp-block-columns,
body.page-id-105326 .dbp-section .dbp-section__inner > .wp-block-dbp-accordion{width:100%!important;max-width:1240px!important;}

/* ================================================================
   MDS LIFE-SUPPORT v1  —  /med-students/life-support/ (107664)
   説明文の羅列 → サービスページ。白基調・青アクセント・カード乱用なし。
   既存 .parent-pageid-105326 のトークン(--mds-*)を再利用。UNITS: px only.
   コントラスト: 文字を載せる青は Deep #245A8D(白文字CR7.18)。
   #3B82B6 は大きい数字・罫線・装飾のみ(白背景で小文字は不可)。
   ================================================================ */

/* ---------- 白基調ヒーロー(グラデ禁止・2カラム) ---------- */
.parent-pageid-105326 .mds-lshero{
  display:grid;grid-template-columns:1fr 320px;gap:34px;align-items:center;
  background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:14px;
  padding:34px 34px;margin:6px 0 44px;
}
.parent-pageid-105326 .mds-lshero__eyebrow{
  font-size:13px;font-weight:700;letter-spacing:1px;color:#2f6fae;margin:0 0 12px;
}
.parent-pageid-105326 h1.mds-lshero__title{
  font-size:29px;line-height:1.55;font-weight:700;color:var(--mds-navy);
  margin:0 0 16px;padding:0;background:none;border:none;
}
.parent-pageid-105326 h1.mds-lshero__title::before,
.parent-pageid-105326 h1.mds-lshero__title::after{content:none;display:none;}
.parent-pageid-105326 .mds-lshero__lead{
  font-size:16px;line-height:1.95;color:var(--mds-ink);margin:0 0 22px;
}
.parent-pageid-105326 .mds-lshero__btns{display:flex;flex-wrap:wrap;gap:12px;}
.parent-pageid-105326 .mds-lshero__media{margin:0;}
.parent-pageid-105326 .mds-lshero__media img{
  width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;
  border-radius:12px;border:1px solid var(--mds-line);
  box-shadow:0 6px 18px rgba(18,63,102,.10);
}
.parent-pageid-105326 .mds-lshero__media figcaption{
  margin-top:8px;font-size:12px;line-height:1.6;color:var(--mds-muted);text-align:left;
}

/* ---------- ボタン(白背景用の追加バリアント) ---------- */
.parent-pageid-105326 .mds-btn--deep{
  background:#245A8D;color:#fff!important;border:1px solid #245A8D;
}
.parent-pageid-105326 .mds-btn--deep:hover{opacity:.9;}
.parent-pageid-105326 .mds-btn--outline{
  background:#fff;color:#245A8D!important;border:1.5px solid #245A8D;
}
.parent-pageid-105326 .mds-btn--outline:hover{background:#f2f7fc;opacity:1;}

/* ---------- 直面する問題(横並び3・カードにしない) ---------- */
.parent-pageid-105326 .mds-probs{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:6px 0 4px;
}
.parent-pageid-105326 .mds-prob{padding:4px 24px;border-left:1px solid var(--mds-line);}
.parent-pageid-105326 .mds-prob:first-child{border-left:none;padding-left:2px;}
.parent-pageid-105326 .mds-prob__n{
  display:block;font-size:13px;font-weight:800;letter-spacing:1px;color:#2f6fae;margin:0 0 8px;
}
.parent-pageid-105326 .mds-prob h3{
  font-size:16px;font-weight:700;color:var(--mds-navy);margin:0 0 8px;line-height:1.5;
}
.parent-pageid-105326 .mds-prob p{
  font-size:14px;line-height:1.85;color:var(--mds-muted);margin:0;
}

/* ---------- サポート内容(番号付き・編集的リスト、箱にしない) ---------- */
.parent-pageid-105326 ol.mds-svc{list-style:none;margin:8px 0 0;padding:0;counter-reset:none;}
.parent-pageid-105326 ol.mds-svc>li.mds-svc__item{
  display:flex;gap:20px;align-items:flex-start;
  padding:22px 4px;border-top:1px solid var(--mds-line);margin:0;list-style:none;
}
.parent-pageid-105326 ol.mds-svc>li.mds-svc__item:first-child{border-top:none;padding-top:6px;}
.parent-pageid-105326 ol.mds-svc>li.mds-svc__item::marker{content:"";}
.parent-pageid-105326 .mds-svc__n{
  flex:0 0 auto;font-size:26px;font-weight:800;color:#3B82B6;line-height:1.1;
  min-width:46px;letter-spacing:1px;
}
.parent-pageid-105326 .mds-svc__b{flex:1 1 auto;min-width:0;}
.parent-pageid-105326 .mds-svc__b h3{
  font-size:18px;font-weight:700;color:var(--mds-navy);margin:2px 0 12px;line-height:1.5;
}
.parent-pageid-105326 .mds-svc__b>ul{
  display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;
}
.parent-pageid-105326 .mds-svc__b>ul>li{
  background:#fff;border:1px solid var(--mds-line);border-radius:999px;
  padding:6px 14px;font-size:13px;color:var(--mds-ink);line-height:1.5;margin:0;list-style:none;
}
.parent-pageid-105326 .mds-svc__b>ul>li::marker{content:"";}
.parent-pageid-105326 .mds-svc__b>p{font-size:14px;line-height:1.85;color:var(--mds-ink);margin:0;}

/* ---------- 料金(大きいカード1枚) ---------- */
.parent-pageid-105326 .mds-pricecard{
  max-width:560px;margin:10px auto 0;background:#fff;
  border:1px solid var(--mds-line);border-top:4px solid #3B82B6;border-radius:14px;
  padding:32px 30px;box-shadow:0 4px 16px rgba(18,63,102,.06);
}
.parent-pageid-105326 .mds-pricecard__label{
  display:inline-block;background:var(--mds-navy);color:#fff;font-size:12px;font-weight:700;
  border-radius:4px;padding:3px 12px;margin:0 0 12px;line-height:1.6;
}
.parent-pageid-105326 .mds-pricecard__name{
  font-size:19px;font-weight:700;color:var(--mds-navy);margin:0 0 10px;line-height:1.5;
}
.parent-pageid-105326 .mds-pricecard .mds-price{margin:0 0 14px!important;}
.parent-pageid-105326 .mds-pricecard__note{
  font-size:13px;line-height:1.85;color:var(--mds-muted);margin:14px 0 0;
}
.parent-pageid-105326 .mds-pricecard__cta{margin-top:22px;width:100%;box-sizing:border-box;}

/* ---------- 対応範囲について(ネイティブ開閉・schema対象外) ---------- */
.parent-pageid-105326 details.mds-disc{
  border:1px solid var(--mds-line);border-radius:10px;background:#fff;margin:8px 0 0;overflow:hidden;
}
.parent-pageid-105326 details.mds-disc>summary{
  list-style:none;cursor:pointer;padding:16px 46px 16px 18px;position:relative;
  font-size:15px;font-weight:700;color:var(--mds-navy);line-height:1.6;
}
.parent-pageid-105326 details.mds-disc>summary::-webkit-details-marker{display:none;}
.parent-pageid-105326 details.mds-disc>summary::after{
  content:"";position:absolute;right:20px;top:50%;width:11px;height:11px;
  border-right:2px solid #3B82B6;border-bottom:2px solid #3B82B6;
  transform:translateY(-70%) rotate(45deg);transition:transform .18s;
}
.parent-pageid-105326 details.mds-disc[open]>summary::after{transform:translateY(-30%) rotate(-135deg);}
.parent-pageid-105326 details.mds-disc .mds-disc__body{padding:0 18px 20px;}
.parent-pageid-105326 details.mds-disc .mds-disc__body>p{font-size:14px;line-height:1.85;color:var(--mds-ink);margin:0 0 12px;}
.parent-pageid-105326 ul.mds-disc__list{list-style:none;margin:0 0 12px;padding:0;}
.parent-pageid-105326 ul.mds-disc__list li{
  position:relative;padding:6px 0 6px 26px;font-size:14px;line-height:1.7;
  color:var(--mds-ink);border-bottom:1px solid var(--mds-line);margin:0;list-style:none;
}
.parent-pageid-105326 ul.mds-disc__list li:last-child{border-bottom:none;}
.parent-pageid-105326 ul.mds-disc__list li::before{
  content:"×";position:absolute;left:6px;top:6px;color:#b3261e;font-weight:700;
}
.parent-pageid-105326 ul.mds-disc__list li::marker{content:"";}
.parent-pageid-105326 .mds-disc__note{font-size:13px;line-height:1.85;color:var(--mds-muted);margin:0;}

/* ---------- CTAバンドの mds-btn 対応(既存は .dbp-button 前提) ---------- */
.parent-pageid-105326 .mds-cta-band .mds-btnrow{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0;}
.parent-pageid-105326 .mds-cta-band .mds-btnrow .mds-btn{margin:0;}

/* ---------- レスポンシブ ---------- */
@media(max-width:781px){
  .parent-pageid-105326 .mds-lshero{grid-template-columns:1fr;gap:22px;padding:26px 20px;}
  .parent-pageid-105326 h1.mds-lshero__title{font-size:24px;}
  .parent-pageid-105326 .mds-lshero__btns .mds-btn{flex:1 1 100%;text-align:center;}
  .parent-pageid-105326 .mds-probs{grid-template-columns:1fr;}
  .parent-pageid-105326 .mds-prob{border-left:none;border-top:1px solid var(--mds-line);padding:16px 2px;}
  .parent-pageid-105326 .mds-prob:first-child{border-top:none;padding-top:2px;}
  .parent-pageid-105326 .mds-svc__n{font-size:22px;min-width:38px;}
  .parent-pageid-105326 .mds-svc__b h3{font-size:16px;}
  .parent-pageid-105326 ol.mds-svc>li.mds-svc__item{gap:14px;}
  .parent-pageid-105326 .mds-pricecard{padding:26px 20px;}
}
/* ===== MDS LIFE-SUPPORT v1 END ===== */


/* ===== /med-students/life-support/ (107664) 現地生活サポート ===== */
.page-id-107664 .l-flex > main + aside{display:none!important;}
.page-id-107664 .l-flex{justify-content:center!important;}
.page-id-107664 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
.page-id-107664{overflow-x:hidden;}
.page-id-107664 .single-post-main,
.page-id-107664 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
.page-id-107664 .dbp-section__inner > *:not(style):not(script){width:100%;max-width:100%;}
@media(max-width:781px){.page-id-107664 .dbp-section__inner{padding-left:20px;padding-right:20px;}}


/* ===== /med-students/preparation-program/ (107663) ===== */
.page-id-107663 .l-flex > main + aside{display:none!important;}
.page-id-107663 .l-flex{justify-content:center!important;}
.page-id-107663 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
.page-id-107663{overflow-x:hidden;}
.page-id-107663 .single-post-main,
.page-id-107663 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
.page-id-107663 .dbp-section__inner > *:not(style):not(script){width:100%;max-width:100%;}
@media(max-width:781px){.page-id-107663 .dbp-section__inner{padding-left:20px;padding-right:20px;}}


/* ================================================================
   /italy-med/ (ID 105266) 再設計  namespace: imd-  scope: .page-id-105266
   2026-07-28. IMAT.miro系: 白背景 / 青文字 / 余白 / 細罫 / 写真は脇役 / px。
   ================================================================ */
.page-id-105266{--n:#245A8D;--b:#2F6FAE;--off:#F8FAFC;--line:#E6ECF3;--line2:#D7E0EA;--mut:#5B6778;--ink:#1B2635;--soft:#EEF6FC;}
.page-id-105266 .imd{color:var(--ink);font-size:16px;line-height:1.9;}
.page-id-105266 .imd *{box-sizing:border-box;}
.page-id-105266 .imd-in{max-width:1080px;margin:0 auto;padding:0 28px;}
.page-id-105266 .imd-in--narrow{max-width:860px;}
.page-id-105266 .imd-center{text-align:center;}
.page-id-105266 .imd-sec{padding:104px 0;}
.page-id-105266 .imd-sec--tight{padding:72px 0;}
.page-id-105266 .imd-sec--off{background:var(--off);}
.page-id-105266 .imd-sec--navy{background:var(--n);color:#fff;}
.page-id-105266 .imd-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:2.5px;color:var(--b);margin-bottom:16px;}
.page-id-105266 .imd-sec--navy .imd-eyebrow,.page-id-105266 .imd-final .imd-eyebrow{color:#BFD6EC;}
.page-id-105266 .imd-h1{font-size:42px;line-height:1.4;font-weight:800;color:var(--n);letter-spacing:.5px;margin:0 0 26px;word-break:normal;overflow-wrap:anywhere;}
.page-id-105266 .imd-h1 em{font-style:normal;color:var(--b);}
.page-id-105266 .imd-h2{font-size:31px;line-height:1.45;font-weight:800;color:var(--n);letter-spacing:.5px;margin:0 0 20px;}
.page-id-105266 .imd-sec--navy .imd-h2,.page-id-105266 .imd-final .imd-h2{color:#fff;}
.page-id-105266 .imd-h2 em{font-style:normal;color:var(--b);}
.page-id-105266 .imd-final .imd-h2 em{color:#BFD6EC;}
.page-id-105266 .imd-lead{font-size:18px;line-height:1.9;color:var(--mut);margin:0 0 40px;max-width:760px;}
.page-id-105266 .imd-center-lead{margin-left:auto;margin-right:auto;}
.page-id-105266 .imd-note{font-size:14px;line-height:1.85;color:var(--mut);margin-top:26px;}
.page-id-105266 .imd-note--onnavy{color:#B9CCE0;}

/* buttons */
.page-id-105266 .imd-btn{display:inline-flex;align-items:center;justify-content:center;height:58px;padding:0 34px;border-radius:8px;font-size:16px;font-weight:700;letter-spacing:.3px;text-decoration:none;border:2px solid var(--n);transition:background-color .18s,transform .18s,border-color .18s;}
.page-id-105266 .imd-btn--primary{background:var(--n);color:#fff;}
.page-id-105266 .imd-btn--primary:hover{background:var(--b);border-color:var(--b);color:#fff;transform:translateY(-2px);}
.page-id-105266 .imd-btn--secondary{background:#fff;color:var(--n);}
.page-id-105266 .imd-btn--secondary:hover{background:var(--soft);transform:translateY(-2px);}
.page-id-105266 .imd-btn--onnavy{background:#fff;color:var(--n);border-color:#fff;}
.page-id-105266 .imd-btn--onnavy:hover{background:var(--soft);transform:translateY(-2px);}
.page-id-105266 .imd-btn--ghostnavy{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.page-id-105266 .imd-btn--ghostnavy:hover{background:rgba(255,255,255,.1);border-color:#fff;transform:translateY(-2px);}
.page-id-105266 .imd-btnrow{display:flex;flex-wrap:wrap;gap:14px;margin-top:4px;}
.page-id-105266 .imd-btnrow--center{justify-content:center;}

/* hero */
.page-id-105266 .imd-hero{padding:96px 0 84px;background:#fff;}
.page-id-105266 .imd-hero-sub{font-size:19px;line-height:1.95;color:var(--mut);margin:0 0 36px;max-width:720px;}

/* 3つのサポート領域（線だけ） */
.page-id-105266 .imd-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line2);}
.page-id-105266 .imd-area{padding:30px 30px 30px 0;border-bottom:1px solid var(--line2);}
.page-id-105266 .imd-areas .imd-area:not(:last-child){border-right:1px solid var(--line);}
.page-id-105266 .imd-area{padding:32px 28px;}
.page-id-105266 .imd-area-n{display:block;font-size:13px;font-weight:800;color:var(--b);letter-spacing:1px;margin-bottom:12px;}
.page-id-105266 .imd-area-t{font-size:19px;font-weight:800;color:var(--n);margin:0 0 10px;line-height:1.5;}
.page-id-105266 .imd-area-d{font-size:15px;line-height:1.85;color:var(--mut);margin:0;}
.page-id-105266 .imd-areas-note{font-size:16px;line-height:1.9;color:var(--ink);margin:34px 0 0;text-align:center;}
.page-id-105266 .imd-areas-note strong{color:var(--n);font-weight:800;}

/* なぜ選ばれるか（写真＋文章 70/30） */
.page-id-105266 .imd-why{display:grid;grid-template-columns:1.6fr .9fr;gap:52px;align-items:start;margin-top:8px;}
.page-id-105266 .imd-why-item{padding:26px 0;border-top:1px solid var(--line2);}
.page-id-105266 .imd-why-item:first-child{border-top:0;padding-top:0;}
.page-id-105266 .imd-why-t{font-size:20px;font-weight:800;color:var(--n);margin:0 0 10px;line-height:1.5;}
.page-id-105266 .imd-why-d{font-size:16px;line-height:1.9;color:var(--mut);margin:0;}
.page-id-105266 .imd-why-img{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--line2);position:sticky;top:100px;}
.page-id-105266 .imd-why-img img{width:100%;height:auto;display:block;object-fit:cover;}

/* 実績帯 */
.page-id-105266 .imd-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:8px;}
.page-id-105266 .imd-trust-i{text-align:center;padding:20px 12px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.05);}
.page-id-105266 .imd-trust-n{display:block;font-size:40px;font-weight:800;color:#fff;line-height:1;letter-spacing:.5px;}
.page-id-105266 .imd-trust-n small{font-size:16px;font-weight:700;margin-left:3px;}
.page-id-105266 .imd-trust-l{display:block;font-size:13px;line-height:1.6;color:#CBDBEC;margin-top:10px;}

/* プラン（カードではなく整った行） */
.page-id-105266 .imd-plans{border-top:1px solid var(--line2);margin-top:8px;}
.page-id-105266 .imd-plan{display:block;border-bottom:1px solid var(--line2);padding:30px 26px;text-decoration:none;transition:background-color .16s;position:relative;}
.page-id-105266 .imd-plan:hover{background:var(--off);}
.page-id-105266 .imd-plan--main{border-left:4px solid var(--n);background:#FCFDFE;}
.page-id-105266 .imd-plan-tag{position:absolute;top:30px;right:26px;font-size:11px;font-weight:800;letter-spacing:1px;color:#fff;background:var(--n);border-radius:5px;padding:4px 10px;}
.page-id-105266 .imd-plan-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 20px;margin-bottom:12px;}
.page-id-105266 .imd-plan-name{font-size:22px;font-weight:800;color:var(--n);}
.page-id-105266 .imd-plan-price{font-size:26px;font-weight:800;color:var(--ink);letter-spacing:.5px;}
.page-id-105266 .imd-plan-price small{font-size:13px;font-weight:700;color:var(--mut);margin-left:3px;}
.page-id-105266 .imd-plan-d{font-size:15px;line-height:1.85;color:var(--mut);margin:0 0 14px;max-width:760px;}
.page-id-105266 .imd-plan-cta{display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:700;color:var(--b);}
.page-id-105266 .imd-plan-cta::after{content:"→";}
.page-id-105266 .imd-plan:hover .imd-plan-cta{text-decoration:underline;text-underline-offset:3px;}
.page-id-105266 .imd-plans-note{font-size:14px;line-height:1.9;color:var(--mut);margin-top:24px;}
.page-id-105266 .imd-plans-note a{color:var(--b);}

/* サポート内容 / 流れ（番号＋行・線） */
.page-id-105266 .imd-steps,.page-id-105266 .imd-flow{border-top:1px solid var(--line2);margin-top:8px;}
.page-id-105266 .imd-step,.page-id-105266 .imd-flow-i{display:grid;grid-template-columns:64px 1fr;gap:24px;align-items:start;padding:26px 8px;border-bottom:1px solid var(--line2);}
.page-id-105266 .imd-step-n,.page-id-105266 .imd-flow-n{font-size:26px;font-weight:800;color:var(--b);line-height:1.2;}
.page-id-105266 .imd-step-t,.page-id-105266 .imd-flow-t{font-size:18px;font-weight:800;color:var(--n);margin:0 0 6px;}
.page-id-105266 .imd-step-d,.page-id-105266 .imd-flow-d{font-size:15px;line-height:1.85;color:var(--mut);margin:0;}

/* FAQ */
.page-id-105266 .imd-faq{border-top:1px solid var(--line2);}
.page-id-105266 .imd-faq-item{border-bottom:1px solid var(--line2);}
.page-id-105266 .imd-faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:22px 4px;font-size:17px;font-weight:700;color:var(--n);}
.page-id-105266 .imd-faq-item summary::-webkit-details-marker{display:none;}
.page-id-105266 .imd-faq-item summary::before{content:"Q";flex:0 0 auto;width:26px;height:26px;border-radius:6px;background:var(--n);color:#fff;font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;}
.page-id-105266 .imd-faq-item summary::after{content:"＋";margin-left:auto;color:var(--b);font-weight:800;font-size:17px;}
.page-id-105266 .imd-faq-item[open] summary::after{content:"－";}
.page-id-105266 .imd-faq-a{padding:0 4px 24px 42px;font-size:15.5px;line-height:1.9;color:var(--mut);}

/* final CTA */
.page-id-105266 .imd-final{background:var(--n);color:#fff;padding:96px 0;}
.page-id-105266 .imd-final-sub{font-size:18px;line-height:1.9;color:#D7E4F1;margin:0 auto 32px;max-width:640px;}

/* responsive */
@media(max-width:900px){
  .page-id-105266 .imd-areas{grid-template-columns:1fr;}
  .page-id-105266 .imd-areas .imd-area:not(:last-child){border-right:0;}
  .page-id-105266 .imd-why{grid-template-columns:1fr;gap:30px;}
  .page-id-105266 .imd-why-img{position:static;order:-1;}
  .page-id-105266 .imd-trust{grid-template-columns:1fr 1fr;}
  .page-id-105266 .imd-h1{font-size:33px;}
  .page-id-105266 .imd-h2{font-size:26px;}
  .page-id-105266 .imd-sec{padding:72px 0;}
}
@media(max-width:560px){
  .page-id-105266 .imd-in{padding:0 18px;}
  .page-id-105266 .imd-h1{font-size:28px;}
  .page-id-105266 .imd-h2{font-size:23px;}
  .page-id-105266 .imd-hero-sub{font-size:17px;}
  .page-id-105266 .imd-trust{grid-template-columns:1fr;}
  .page-id-105266 .imd-btn{width:100%;}
  .page-id-105266 .imd-step,.page-id-105266 .imd-flow-i{grid-template-columns:44px 1fr;gap:14px;}
  .page-id-105266 .imd-plan-price{font-size:22px;}
  .page-id-105266 .imd-sec{padding:56px 0;}
  .page-id-105266 .imd-hero{padding:56px 0 44px;}
}

/* ================================================================
   TOP84 UNIMAP v1  —  トップ(84) 大学一覧の対応大学マップ
   汎用キャンパス写真を廃止し、対応大学を都市別にプロットした
   ブランドマップ(mirunote_italy_map.jpeg 1600x928)を全表示する。
   crop厳禁（ラベルが切れるため object-fit:cover を使わない）。UNITS: px only.
   ================================================================ */
.page-id-84 .mn84-unimap{
  margin:0 0 44px;
  border-radius:14px;
  overflow:hidden;
  background:#eef4fb;                 /* マップ地の余白と同系色でカード化 */
  box-shadow:0 20px 48px rgba(0,0,0,.28);
}
.page-id-84 .mn84-unimap img{
  display:block;                      /* 自然比で全体表示・切り取らない */
  width:100%;
  height:auto;
  background:#eef4fb;
}
@media(max-width:781px){
  .page-id-84 .mn84-unimap{margin:0 0 34px;border-radius:12px;}
}
/* ===== TOP84 UNIMAP v1 END ===== */


/* ================================================================
   /italy-med/ 子3ページ（106851/106852/106853）販売LP
   namespace: ims-  scope: .parent-pageid-105266
   2026-07-29. 親imd-と同一のIMAT.miro系: 白 / 青 / 余白 / 細罫 / px。
   ================================================================ */
.parent-pageid-105266{--n:#245A8D;--b:#2F6FAE;--off:#F8FAFC;--line:#E6ECF3;--line2:#D7E0EA;--mut:#5B6778;--ink:#1B2635;--soft:#EEF6FC;}
.parent-pageid-105266 .ims{color:var(--ink);font-size:16px;line-height:1.9;}
.parent-pageid-105266 .ims *{box-sizing:border-box;}
.parent-pageid-105266 .ims-in{max-width:980px;margin:0 auto;padding:0 28px;}
.parent-pageid-105266 .ims-in--narrow{max-width:860px;}
.parent-pageid-105266 .ims-center{text-align:center;}
.parent-pageid-105266 .ims-sec{padding:88px 0;}
.parent-pageid-105266 .ims-sec--tight{padding:56px 0;}
.parent-pageid-105266 .ims-sec--off{background:var(--off);}
.parent-pageid-105266 .ims-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:2.5px;color:var(--b);margin-bottom:14px;}
.parent-pageid-105266 .ims-h1{font-size:38px;line-height:1.42;font-weight:800;color:var(--n);letter-spacing:.5px;margin:0 0 18px;word-break:normal;overflow-wrap:anywhere;}
.parent-pageid-105266 .ims-h1 em{font-style:normal;color:var(--b);}
.parent-pageid-105266 .ims-h2{font-size:29px;line-height:1.45;font-weight:800;color:var(--n);letter-spacing:.5px;margin:0 0 22px;}
.parent-pageid-105266 .ims-h2--small{font-size:22px;}
.parent-pageid-105266 .ims-lead{font-size:17px;line-height:1.95;color:var(--mut);margin:0 0 30px;max-width:720px;}
.parent-pageid-105266 .ims-lead2{font-size:16px;line-height:1.9;color:var(--mut);margin:0 0 26px;max-width:720px;}
.parent-pageid-105266 .ims-note{font-size:14px;line-height:1.9;color:var(--mut);margin:14px 0 0;}
.parent-pageid-105266 .ims-note strong{color:var(--n);font-weight:800;}

/* hero */
.parent-pageid-105266 .ims-hero{padding:56px 0 72px;background:#fff;border-bottom:1px solid var(--line);}
.parent-pageid-105266 .ims-crumb{font-size:13px;color:var(--mut);margin:0 0 30px;}
.parent-pageid-105266 .ims-crumb a{color:var(--b);text-decoration:none;}
.parent-pageid-105266 .ims-crumb a:hover{text-decoration:underline;}
.parent-pageid-105266 .ims-tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:1px;color:var(--n);background:var(--soft);border:1px solid #C9DEF0;border-radius:6px;padding:5px 12px;margin-bottom:18px;}
.parent-pageid-105266 .ims-price{font-size:32px;font-weight:800;color:var(--ink);letter-spacing:.5px;margin:0 0 18px;}
.parent-pageid-105266 .ims-price small{font-size:15px;font-weight:700;color:var(--mut);margin-left:4px;}

/* buttons */
.parent-pageid-105266 .ims-btn{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 32px;border-radius:8px;font-size:16px;font-weight:700;letter-spacing:.3px;text-decoration:none;border:2px solid var(--n);transition:background-color .18s,transform .18s,border-color .18s;}
.parent-pageid-105266 .ims-btn--primary{background:var(--n);color:#fff;}
.parent-pageid-105266 .ims-btn--primary:hover{background:var(--b);border-color:var(--b);color:#fff;transform:translateY(-2px);}
.parent-pageid-105266 .ims-btn--secondary{background:#fff;color:var(--n);}
.parent-pageid-105266 .ims-btn--secondary:hover{background:var(--soft);transform:translateY(-2px);}
.parent-pageid-105266 .ims-btn--onnavy{background:#fff;color:var(--n);border-color:#fff;}
.parent-pageid-105266 .ims-btn--onnavy:hover{background:var(--soft);transform:translateY(-2px);}
.parent-pageid-105266 .ims-btn--ghostnavy{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.parent-pageid-105266 .ims-btn--ghostnavy:hover{background:rgba(255,255,255,.1);border-color:#fff;transform:translateY(-2px);}
.parent-pageid-105266 .ims-btnrow{display:flex;flex-wrap:wrap;gap:14px;margin-top:4px;}
.parent-pageid-105266 .ims-btnrow--center{justify-content:center;}

/* こんな方へ */
.parent-pageid-105266 .ims-check{list-style:none;margin:0;padding:0;max-width:720px;}
.parent-pageid-105266 .ims-check li{position:relative;padding:15px 4px 15px 40px;border-bottom:1px solid var(--line2);font-size:16px;line-height:1.8;}
.parent-pageid-105266 .ims-check li:first-child{border-top:1px solid var(--line2);}
.parent-pageid-105266 .ims-check li::before{content:"";position:absolute;left:4px;top:19px;width:20px;height:20px;border-radius:5px;background:var(--soft);border:1px solid #C9DEF0;}
.parent-pageid-105266 .ims-check li::after{content:"✓";position:absolute;left:9px;top:15px;color:var(--b);font-weight:800;font-size:13px;}

/* 番号形式（サポート内容・流れ） */
.parent-pageid-105266 .ims-items{border-top:1px solid var(--line2);}
.parent-pageid-105266 .ims-item{display:grid;grid-template-columns:64px 1fr;gap:24px;align-items:start;padding:26px 8px;border-bottom:1px solid var(--line2);}
.parent-pageid-105266 .ims-item-n{font-size:26px;font-weight:800;color:var(--b);line-height:1.2;}
.parent-pageid-105266 .ims-item-t{font-size:18px;font-weight:800;color:var(--n);margin:0 0 6px;line-height:1.5;}
.parent-pageid-105266 .ims-item-d{font-size:15px;line-height:1.85;color:var(--mut);margin:0;}

/* 優待表 */
.parent-pageid-105266 .ims-table{overflow-x:auto;border:1px solid var(--line2);border-radius:12px;}
.parent-pageid-105266 .ims-table table{width:100%;border-collapse:collapse;min-width:520px;font-size:15px;background:#fff;}
.parent-pageid-105266 .ims-table th,.parent-pageid-105266 .ims-table td{border:1px solid var(--line);padding:13px 16px;text-align:center;line-height:1.7;}
.parent-pageid-105266 .ims-table thead th{background:var(--n);color:#fff;font-weight:800;}
.parent-pageid-105266 .ims-table tbody th{background:var(--soft);color:var(--n);font-weight:800;white-space:nowrap;}
.parent-pageid-105266 .ims-td-em{font-weight:800;color:var(--n);}

/* 他プラン */
.parent-pageid-105266 .ims-plans{border-top:1px solid var(--line2);}
.parent-pageid-105266 .ims-plan{display:block;border-bottom:1px solid var(--line2);padding:26px 20px;text-decoration:none;transition:background-color .16s;background:#fff;}
.parent-pageid-105266 .ims-plan:hover{background:var(--soft);}
.parent-pageid-105266 .ims-plan-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 18px;margin-bottom:10px;}
.parent-pageid-105266 .ims-plan-name{font-size:20px;font-weight:800;color:var(--n);}
.parent-pageid-105266 .ims-plan-price{font-size:22px;font-weight:800;color:var(--ink);}
.parent-pageid-105266 .ims-plan-price small{font-size:12px;font-weight:700;color:var(--mut);margin-left:3px;}
.parent-pageid-105266 .ims-plan-d{font-size:14.5px;line-height:1.85;color:var(--mut);margin:0 0 10px;max-width:720px;}
.parent-pageid-105266 .ims-plan-cta{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:700;color:var(--b);}
.parent-pageid-105266 .ims-plan-cta::after{content:"→";}
.parent-pageid-105266 .ims-plan:hover .ims-plan-cta{text-decoration:underline;text-underline-offset:3px;}

/* FAQ */
.parent-pageid-105266 .ims-faq{border-top:1px solid var(--line2);}
.parent-pageid-105266 .ims-faq-item{border-bottom:1px solid var(--line2);}
.parent-pageid-105266 .ims-faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:20px 4px;font-size:16.5px;font-weight:700;color:var(--n);}
.parent-pageid-105266 .ims-faq-item summary::-webkit-details-marker{display:none;}
.parent-pageid-105266 .ims-faq-item summary::before{content:"Q";flex:0 0 auto;width:26px;height:26px;border-radius:6px;background:var(--n);color:#fff;font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;}
.parent-pageid-105266 .ims-faq-item summary::after{content:"＋";margin-left:auto;color:var(--b);font-weight:800;font-size:17px;}
.parent-pageid-105266 .ims-faq-item[open] summary::after{content:"－";}
.parent-pageid-105266 .ims-faq-a{padding:0 4px 22px 42px;font-size:15px;line-height:1.9;color:var(--mut);}

/* final */
.parent-pageid-105266 .ims-final{background:var(--n);color:#fff;padding:84px 0;}
.parent-pageid-105266 .ims-final .ims-h2{color:#fff;}
.parent-pageid-105266 .ims-final .ims-eyebrow{color:#BFD6EC;}
.parent-pageid-105266 .ims-final-sub{font-size:17px;line-height:1.9;color:#D7E4F1;margin:0 auto 30px;max-width:620px;}

/* responsive */
@media(max-width:900px){
  .parent-pageid-105266 .ims-h1{font-size:31px;}
  .parent-pageid-105266 .ims-h2{font-size:25px;}
  .parent-pageid-105266 .ims-sec{padding:64px 0;}
}
@media(max-width:560px){
  .parent-pageid-105266 .ims-in{padding:0 18px;}
  .parent-pageid-105266 .ims-h1{font-size:26px;}
  .parent-pageid-105266 .ims-h2{font-size:22px;}
  .parent-pageid-105266 .ims-price{font-size:27px;}
  .parent-pageid-105266 .ims-btn{width:100%;}
  .parent-pageid-105266 .ims-item{grid-template-columns:44px 1fr;gap:14px;}
  .parent-pageid-105266 .ims-sec{padding:48px 0;}
  .parent-pageid-105266 .ims-hero{padding:36px 0 48px;}
}

/* Re:Diver スクロールfade-in無効化（imd/ims 自ラッパー限定・blank化防止） */
.page-id-105266 .imd,
.page-id-105266 .imd section,
.page-id-105266 .imd > div{opacity:1 !important;transform:none !important;visibility:visible !important;animation:none !important;}
.parent-pageid-105266 .ims,
.parent-pageid-105266 .ims section,
.parent-pageid-105266 .ims > div{opacity:1 !important;transform:none !important;visibility:visible !important;animation:none !important;}

/* ===== v2 refine（2026-07-29）: 誰向けか先出し / 結果→プラン名→価格 / 写真アクセント ===== */
.page-id-105266 .imd-plan-for{display:block;font-size:14.5px;font-weight:800;color:var(--b);margin-bottom:10px;line-height:1.6;}
.page-id-105266 .imd-why-img figcaption{padding:10px 2px 0;font-size:13px;color:var(--mut);line-height:1.6;}
.page-id-105266 .imd-why-img{border:0;}
.page-id-105266 .imd-why-img img{border-radius:14px;border:1px solid var(--line2);}
.page-id-105266 .imd-city{margin:8px auto 34px;max-width:760px;}
.page-id-105266 .imd-city img{width:100%;display:block;aspect-ratio:21/9;object-fit:cover;border-radius:14px;border:1px solid var(--line2);}
.page-id-105266 .imd-city figcaption{padding:10px 2px 0;font-size:13px;color:var(--mut);}
.parent-pageid-105266 .ims-plname{font-size:18px;font-weight:800;color:var(--b);letter-spacing:.5px;margin:0 0 8px;}
.parent-pageid-105266 .ims-photo{margin:44px 0 0;max-width:760px;}
.parent-pageid-105266 .ims-photo img{width:100%;display:block;aspect-ratio:21/9;object-fit:cover;border-radius:14px;border:1px solid var(--line2);}
.parent-pageid-105266 .ims-photo figcaption{padding:10px 2px 0;font-size:13px;color:var(--mut);}

/* v4: なぜmirunote の一貫フロー表示 */
.page-id-105266 .imd-flowline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 0;margin:14px 0 0;padding:0;}
.page-id-105266 .imd-flowline span{font-size:13px;font-weight:800;color:var(--n);background:var(--soft);border:1px solid #C9DEF0;border-radius:6px;padding:6px 12px;}
.page-id-105266 .imd-flowline span:not(:last-child)::after{content:"→";display:inline-block;margin:0 -6px 0 10px;color:var(--b);font-weight:800;}

/* ================================================================
   MDS PREP-PROGRAM v1  —  /med-students/preparation-program/ (107663)
   高単価LP。life-support の mds-lshero/mds-probs/mds-svc/mds-btn を再利用し、
   写真カード4 / 講師2 / 料金比較3 / STEP / 最終CTA を追加。
   .parent-pageid-105326 スコープ・トークン再利用。UNITS: px only.
   文字を載せる青は Deep #245A8D(CR7.18)。#3B82B6 は装飾のみ。
   ================================================================ */

/* Hero H1 内のサブ見出し */
.parent-pageid-105326 h1.mds-lshero__title .mds-lshero__sub{
  display:block;margin-top:10px;font-size:17px;line-height:1.6;font-weight:600;color:var(--mds-ink);
}
@media(max-width:781px){
  .parent-pageid-105326 h1.mds-lshero__title .mds-lshero__sub{font-size:15px;}
}

/* ---------- 3) 4ポイント: 写真付きカード ---------- */
.parent-pageid-105326 .mds-cardgrid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:8px 0 0;
}
.parent-pageid-105326 .mds-pcard{
  position:relative;background:#fff;border:1px solid var(--mds-line);border-radius:14px;overflow:hidden;
  box-shadow:0 4px 16px rgba(18,63,102,.06);display:flex;flex-direction:column;
}
.parent-pageid-105326 .mds-pcard__fig{margin:0;}
.parent-pageid-105326 .mds-pcard__fig img{
  display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#eef4fb;
}
.parent-pageid-105326 .mds-pcard__n{
  position:absolute;top:14px;left:14px;background:#245A8D;color:#fff;font-size:13px;font-weight:800;
  letter-spacing:1px;border-radius:6px;padding:3px 9px;line-height:1.4;
}
.parent-pageid-105326 .mds-pcard h3{
  font-size:17px;font-weight:700;color:var(--mds-navy);margin:18px 20px 8px;line-height:1.5;
}
.parent-pageid-105326 .mds-pcard p{
  font-size:14px;line-height:1.85;color:var(--mds-ink);margin:0 20px 20px;
}

/* ---------- 5) 講師カード2 ---------- */
.parent-pageid-105326 .mds-teachers{
  display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:8px 0 0;
}
.parent-pageid-105326 .mds-teacher{
  background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:14px;padding:26px 24px;
  display:flex;flex-direction:column;align-items:center;text-align:center;
}
.parent-pageid-105326 .mds-teacher__photo{margin:0 0 16px;}
.parent-pageid-105326 .mds-teacher__photo img{
  width:120px;height:120px;object-fit:cover;border-radius:50%;
  border:4px solid #fff;box-shadow:0 6px 18px rgba(18,63,102,.14);display:block;
}
.parent-pageid-105326 .mds-teacher__name{font-size:20px;font-weight:800;color:var(--mds-navy);margin:0 0 4px;}
.parent-pageid-105326 .mds-teacher__role{font-size:13px;font-weight:700;color:#2f6fae;margin:0 0 14px;line-height:1.5;}
.parent-pageid-105326 .mds-teacher__desc{font-size:14px;line-height:1.85;color:var(--mds-ink);margin:0 0 16px;}
.parent-pageid-105326 ul.mds-teacher__duties{list-style:none;margin:0;padding:0;width:100%;text-align:left;}
.parent-pageid-105326 ul.mds-teacher__duties li{
  position:relative;padding:7px 0 7px 26px;font-size:14px;line-height:1.6;color:var(--mds-ink);
  border-top:1px solid var(--mds-line);margin:0;list-style:none;
}
.parent-pageid-105326 ul.mds-teacher__duties li:first-child{border-top:none;}
.parent-pageid-105326 ul.mds-teacher__duties li::before{
  content:"";position:absolute;left:5px;top:13px;width:10px;height:6px;
  border-left:2px solid var(--mds-teal);border-bottom:2px solid var(--mds-teal);transform:rotate(-45deg);
}
.parent-pageid-105326 ul.mds-teacher__duties li::marker{content:"";}

/* 講師: リード文＋Rui主/Nobu従の重みづけ */
.parent-pageid-105326 .mds-teach-lead{
  font-size:15px;line-height:1.9;color:var(--mds-ink);text-align:center;
  max-width:760px;margin:0 auto 26px;
}
.parent-pageid-105326 .mds-teacher__cred{
  font-size:13px;font-weight:700;color:#2f6fae;margin:0 0 14px;line-height:1.5;
}
.parent-pageid-105326 .mds-teacher__role{margin-bottom:4px;}
/* Rui(1枚目)を主担当として控えめに強調 */
.parent-pageid-105326 .mds-teachers .mds-teacher:first-child{
  border-top:3px solid #3B82B6;background:#fff;box-shadow:0 6px 20px rgba(18,63,102,.10);
}

/* ---------- 6) 料金比較カード3 ---------- */
.parent-pageid-105326 .mds-plancards{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:8px 0 0;align-items:start;
}
.parent-pageid-105326 .mds-plan{
  position:relative;background:#fff;border:1px solid var(--mds-line);border-radius:14px;padding:28px 22px;
  box-shadow:0 4px 16px rgba(18,63,102,.06);display:flex;flex-direction:column;
}
.parent-pageid-105326 .mds-plan--hot{border:2px solid #245A8D;box-shadow:0 10px 30px rgba(18,63,102,.14);}
.parent-pageid-105326 .mds-plan__badge{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:#245A8D;color:#fff;font-size:12px;font-weight:700;border-radius:999px;padding:4px 16px;white-space:nowrap;
}
.parent-pageid-105326 .mds-plan__name{font-size:16px;font-weight:800;color:var(--mds-navy);margin:0 0 8px;letter-spacing:.5px;}
.parent-pageid-105326 .mds-plan__price{font-size:30px;font-weight:800;color:var(--mds-navy);line-height:1.1;margin:0 0 6px;}
.parent-pageid-105326 .mds-plan__price span{font-size:13px;font-weight:600;color:var(--mds-muted);margin-left:3px;}
.parent-pageid-105326 .mds-plan__meta{font-size:13px;color:var(--mds-muted);margin:0 0 16px;line-height:1.6;}
.parent-pageid-105326 ul.mds-plan__feats{list-style:none;margin:0 0 20px;padding:0;flex:1 1 auto;}
.parent-pageid-105326 ul.mds-plan__feats li{
  position:relative;padding:8px 0 8px 24px;font-size:14px;line-height:1.6;color:var(--mds-ink);
  border-bottom:1px solid var(--mds-line);margin:0;list-style:none;
}
.parent-pageid-105326 ul.mds-plan__feats li:last-child{border-bottom:none;}
.parent-pageid-105326 ul.mds-plan__feats li::before{
  content:"";position:absolute;left:4px;top:14px;width:10px;height:6px;
  border-left:2px solid var(--mds-teal);border-bottom:2px solid var(--mds-teal);transform:rotate(-45deg);
}
.parent-pageid-105326 ul.mds-plan__feats li::marker{content:"";}
.parent-pageid-105326 .mds-plan__cta{width:100%;box-sizing:border-box;text-align:center;}
.parent-pageid-105326 .mds-plan-note{font-size:13px;line-height:1.85;color:var(--mds-muted);margin:18px 0 0;}
.parent-pageid-105326 .mds-refund{
  font-size:14px;font-weight:700;color:#b3261e;margin:10px 0 0;
  background:#fdf2f2;border:1px solid #f3d0d0;border-radius:8px;padding:12px 16px;line-height:1.7;
}

/* ---------- 7) STEP ---------- */
.parent-pageid-105326 ol.mds-steps{list-style:none;margin:8px 0 0;padding:0;counter-reset:none;
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.parent-pageid-105326 ol.mds-steps>li.mds-step{
  list-style:none;margin:0;background:#fff;border:1px solid var(--mds-line);border-radius:12px;
  padding:22px 18px;border-top:3px solid #3B82B6;
}
.parent-pageid-105326 ol.mds-steps>li.mds-step::marker{content:"";}
.parent-pageid-105326 .mds-step__n{
  display:block;font-size:22px;font-weight:800;color:#3B82B6;line-height:1;margin:0 0 10px;letter-spacing:1px;
}
.parent-pageid-105326 .mds-step h3{font-size:16px;font-weight:700;color:var(--mds-navy);margin:0 0 8px;line-height:1.5;}
.parent-pageid-105326 .mds-step p{font-size:13px;line-height:1.75;color:var(--mds-muted);margin:0;}

/* ---------- 9) 最終CTA(イタリアキャンパス背景・ダーク帯) ---------- */
.parent-pageid-105326 .mds-finalcta{
  background-size:cover;background-position:center;border-radius:16px;
  margin:12px 0 0;padding:56px 28px;text-align:center;
}
.parent-pageid-105326 .mds-finalcta__in{max-width:680px;margin:0 auto;}
.parent-pageid-105326 .mds-finalcta__t{font-size:26px;font-weight:800;color:#fff;line-height:1.5;margin:0 0 14px;}
.parent-pageid-105326 .mds-finalcta__d{font-size:16px;line-height:1.9;color:#eaf2fb;margin:0 0 26px;}
.parent-pageid-105326 .mds-btn--onnavy{background:#fff;color:#245A8D!important;border:1px solid #fff;}
.parent-pageid-105326 .mds-btn--onnavy:hover{opacity:.9;}

/* ---------- レスポンシブ ---------- */
@media(max-width:781px){
  .parent-pageid-105326 .mds-cardgrid{grid-template-columns:1fr;gap:16px;}
  .parent-pageid-105326 .mds-teachers{grid-template-columns:1fr;gap:18px;}
  .parent-pageid-105326 .mds-plancards{grid-template-columns:1fr;gap:26px;}
  .parent-pageid-105326 .mds-plan--hot{order:-1;}
  .parent-pageid-105326 ol.mds-steps{grid-template-columns:1fr 1fr;gap:12px;}
  .parent-pageid-105326 .mds-finalcta{padding:44px 20px;}
  .parent-pageid-105326 .mds-finalcta__t{font-size:22px;}
}
@media(max-width:440px){
  .parent-pageid-105326 ol.mds-steps{grid-template-columns:1fr;}
}
/* ===== MDS PREP-PROGRAM v1 END ===== */


/* ===== /med-students/tutoring/ (105275) ===== */
.page-id-105275 .l-flex > main + aside{display:none!important;}
.page-id-105275 .l-flex{justify-content:center!important;}
.page-id-105275 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
.page-id-105275{overflow-x:hidden;}
.page-id-105275 .single-post-main,
.page-id-105275 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
.page-id-105275 .dbp-section__inner > *:not(style):not(script){width:100%;max-width:100%;}
@media(max-width:781px){.page-id-105275 .dbp-section__inner{padding-left:20px;padding-right:20px;}}

/* ================================================================
   MDS TUTORING v1  —  /med-students/tutoring/ (105275)
   在学生向け 医学専門科目 個別指導。prep/life-support の mds-* を再利用し、
   対応科目グループ / 2プラン料金 / 講師(無名ロールカード) / add-on注記 のみ追加。
   .parent-pageid-105326 スコープ。UNITS: px only。
   ================================================================ */

/* 対応科目: 分類見出し＋チップ(既存 .mds-subjects を流用) */
.parent-pageid-105326 .mds-subj{display:flex;flex-direction:column;gap:20px;margin:8px 0 0;}
.parent-pageid-105326 .mds-subjgroup{border-top:1px solid var(--mds-line);padding-top:16px;}
.parent-pageid-105326 .mds-subjgroup:first-child{border-top:none;padding-top:0;}
.parent-pageid-105326 .mds-subjgroup__h{
  font-size:14px;font-weight:800;color:var(--mds-navy);margin:0 0 10px;letter-spacing:.5px;
}
.parent-pageid-105326 .mds-subjgroup ul.mds-subjects{margin:0;}
.parent-pageid-105326 .mds-subjgroup ul.mds-subjects li{font-size:14px;padding:7px 16px;}

/* 料金: 2プラン(中央寄せ) */
.parent-pageid-105326 .mds-plancards--2{grid-template-columns:repeat(2,1fr);max-width:760px;margin-left:auto;margin-right:auto;}
/* add-on 注記(単独申込不可を明確化) */
.parent-pageid-105326 .mds-addon-notice{
  background:var(--mds-soft);border:1px solid var(--mds-line);border-left:4px solid #3B82B6;
  border-radius:10px;padding:16px 20px;margin:0 0 22px;
  font-size:15px;line-height:1.8;color:var(--mds-ink);
}
.parent-pageid-105326 .mds-addon-notice strong{color:var(--mds-navy);}

/* 講師: 無名の「医学専門科目担当講師」ロールカード(写真なし・実在人物を装わない) */
.parent-pageid-105326 .mds-teacher--role{
  align-items:flex-start;text-align:left;justify-content:flex-start;
  border-top:3px solid var(--mds-line);
}
.parent-pageid-105326 .mds-teacher--role .mds-teacher__b{width:100%;}
.parent-pageid-105326 .mds-teacher__badge{
  display:inline-block;background:var(--mds-navy);color:#fff;font-size:12px;font-weight:700;
  border-radius:4px;padding:3px 12px;margin:0 0 12px;line-height:1.6;
}
.parent-pageid-105326 .mds-teacher--role .mds-teacher__name{text-align:left;}
.parent-pageid-105326 .mds-teacher--role .mds-teacher__desc{text-align:left;}
.parent-pageid-105326 .mds-teacher__crithead{
  font-size:13px;font-weight:800;color:var(--mds-navy);margin:6px 0 8px;
}
/* SP: 2プランは縦積み(--2 が基底のSP 1col を上書きしていたため明示) */
@media(max-width:600px){
  .parent-pageid-105326 .mds-plancards--2{grid-template-columns:1fr;max-width:100%;}
}
/* ===== MDS TUTORING v1 END ===== */

/* ================================================================
   MDS PLANS v1  —  /med-students/plans/ (107658) 意思決定ページ
   prep/tutoring の mds-* を再利用し、困りごと表/Premium延長/語学/カテゴリ導線/単一講師 を追加。
   .parent-pageid-105326 スコープ。UNITS: px only。文字を載せる青は #245A8D。
   ================================================================ */

/* 困りごと→おすすめ 表 */
.parent-pageid-105326 table.mds-decide{width:100%;border-collapse:collapse;margin:8px 0 0;font-size:15px;}
.parent-pageid-105326 table.mds-decide thead th{
  background:#245A8D;color:#fff;text-align:left;font-weight:700;padding:12px 16px;font-size:14px;border:1px solid #245A8D;
}
.parent-pageid-105326 table.mds-decide tbody td{
  padding:13px 16px;border:1px solid var(--mds-line);vertical-align:middle;color:var(--mds-ink);
}
.parent-pageid-105326 table.mds-decide tbody tr:nth-child(even) td{background:var(--mds-soft);}
.parent-pageid-105326 table.mds-decide td:last-child{white-space:nowrap;width:44%;}
.parent-pageid-105326 table.mds-decide td a{color:#245A8D;font-weight:700;text-decoration:none;}
.parent-pageid-105326 table.mds-decide td a:hover{text-decoration:underline;}
@media(max-width:600px){
  .parent-pageid-105326 table.mds-decide,.parent-pageid-105326 table.mds-decide tbody,.parent-pageid-105326 table.mds-decide tr{display:block;}
  .parent-pageid-105326 table.mds-decide thead{display:none;}
  .parent-pageid-105326 table.mds-decide tr{border:1px solid var(--mds-line);border-radius:10px;margin:0 0 10px;padding:12px 14px;}
  .parent-pageid-105326 table.mds-decide td{border:none;padding:2px 0;white-space:normal!important;width:auto!important;}
  .parent-pageid-105326 table.mds-decide td:first-child{font-weight:700;color:var(--mds-navy);}
  .parent-pageid-105326 table.mds-decide td:last-child a{display:inline-block;margin-top:4px;}
}

/* Personal/Premium リード */
.parent-pageid-105326 .mds-plan-lead{font-size:15px;line-height:1.9;color:var(--mds-ink);margin:0 0 20px;max-width:820px;}
.parent-pageid-105326 .mds-plan__for{font-size:13px;color:var(--mds-muted);margin:0 0 16px;line-height:1.6;}

/* Premium 末尾の「個別指導 追加」延長ブロック */
.parent-pageid-105326 .mds-plan-ext{
  margin:18px -22px -28px;padding:18px 22px;background:var(--mds-soft);
  border-top:1px dashed var(--mds-line);border-radius:0 0 14px 14px;
}
.parent-pageid-105326 .mds-plan-ext__h{font-size:13px;font-weight:800;color:var(--mds-navy);margin:0 0 4px;}
.parent-pageid-105326 .mds-plan-ext__d{font-size:13px;line-height:1.7;color:var(--mds-ink);margin:0 0 8px;}
.parent-pageid-105326 .mds-plan-ext__link{font-size:14px;font-weight:700;color:#245A8D;text-decoration:none;}
.parent-pageid-105326 .mds-plan-ext__link:hover{text-decoration:underline;}

/* 語学サポート 2枚 */
.parent-pageid-105326 .mds-block-lead{font-size:15px;line-height:1.9;color:var(--mds-ink);margin:0 0 18px;}
.parent-pageid-105326 .mds-opts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:0;}
.parent-pageid-105326 .mds-optcard{background:#fff;border:1px solid var(--mds-line);border-radius:14px;padding:24px 22px;box-shadow:0 4px 16px rgba(18,63,102,.05);}
.parent-pageid-105326 .mds-optcard h3{font-size:18px;font-weight:700;color:var(--mds-navy);margin:0 0 6px;}
.parent-pageid-105326 .mds-optcard__price{font-size:15px;font-weight:700;color:#245A8D;margin:0 0 10px;}
.parent-pageid-105326 .mds-optcard p{font-size:14px;line-height:1.8;color:var(--mds-ink);margin:0 0 12px;}
.parent-pageid-105326 .mds-optcard__link{font-size:14px;font-weight:700;color:#245A8D;text-decoration:none;}
.parent-pageid-105326 .mds-optcard__link:hover{text-decoration:underline;}

/* 別カテゴリ導線(価格なし) */
.parent-pageid-105326 .mds-catcalls{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:0;}
.parent-pageid-105326 .mds-catcall{background:var(--mds-soft);border:1px solid var(--mds-line);border-left:4px solid #3B82B6;border-radius:12px;padding:24px 22px;}
.parent-pageid-105326 .mds-catcall__k{font-size:13px;font-weight:700;color:#2f6fae;margin:0 0 6px;}
.parent-pageid-105326 .mds-catcall h3{font-size:18px;font-weight:700;color:var(--mds-navy);margin:0 0 8px;line-height:1.5;}
.parent-pageid-105326 .mds-catcall p{font-size:14px;line-height:1.8;color:var(--mds-ink);margin:0 0 16px;}

/* 講師 1枚(中央) */
.parent-pageid-105326 .mds-teachers--one{grid-template-columns:1fr;max-width:520px;margin-left:auto;margin-right:auto;}

@media(max-width:781px){
  .parent-pageid-105326 .mds-opts{grid-template-columns:1fr;gap:16px;}
  .parent-pageid-105326 .mds-catcalls{grid-template-columns:1fr;gap:16px;}
}
/* ===== MDS PLANS v1 END ===== */

/* ================================================================
   MDS LANG v1  —  語学サービス(italian-lessons 107662 / medical-conversation 105279)
   prep/tutoring の mds-* を再利用。レッスン形式2分割＋講師プロフィール一覧を追加。
   105279 は root ページのため body に parent-pageid-105326 を付与して同スコープに載せる。
   .parent-pageid-105326 スコープ。UNITS: px only。
   ================================================================ */

/* 講師プロフィール一覧(実写なしロールカード内) */
.parent-pageid-105326 ul.mds-teacher__prof{list-style:none;margin:0 0 14px;padding:0;width:100%;}
.parent-pageid-105326 ul.mds-teacher__prof li{
  position:relative;padding:6px 0 6px 16px;font-size:14px;line-height:1.7;color:var(--mds-ink);margin:0;list-style:none;
}
.parent-pageid-105326 ul.mds-teacher__prof li::before{
  content:"";position:absolute;left:2px;top:14px;width:5px;height:5px;border-radius:50%;background:#3B82B6;
}
.parent-pageid-105326 ul.mds-teacher__prof li::marker{content:"";}

/* レッスン形式(前半/後半) */
.parent-pageid-105326 .mds-lessonfmt{margin:22px 0 0;background:var(--mds-soft);border:1px solid var(--mds-line);border-radius:14px;padding:24px 22px;}
.parent-pageid-105326 .mds-lessonfmt__h{font-size:16px;font-weight:800;color:var(--mds-navy);margin:0 0 16px;}
.parent-pageid-105326 .mds-lessonfmt__row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.parent-pageid-105326 .mds-lessonfmt__seg{background:#fff;border:1px solid var(--mds-line);border-radius:10px;padding:16px 18px;}
.parent-pageid-105326 .mds-lessonfmt__t{display:inline-block;background:#245A8D;color:#fff;font-size:13px;font-weight:700;border-radius:4px;padding:3px 12px;margin:0 0 10px;}
.parent-pageid-105326 .mds-lessonfmt__seg ul{list-style:none;margin:0;padding:0;}
.parent-pageid-105326 .mds-lessonfmt__seg li{position:relative;padding:5px 0 5px 18px;font-size:14px;line-height:1.7;color:var(--mds-ink);margin:0;list-style:none;}
.parent-pageid-105326 .mds-lessonfmt__seg li::before{content:"";position:absolute;left:3px;top:12px;width:8px;height:5px;border-left:2px solid var(--mds-teal);border-bottom:2px solid var(--mds-teal);transform:rotate(-45deg);}
.parent-pageid-105326 .mds-lessonfmt__seg li::marker{content:"";}
.parent-pageid-105326 .mds-lessonfmt__note{font-size:13px;line-height:1.8;color:var(--mds-muted);margin:14px 0 0;}
@media(max-width:600px){.parent-pageid-105326 .mds-lessonfmt__row{grid-template-columns:1fr;gap:12px;}}
/* ===== MDS LANG v1 END ===== */

/* ================================================================
   MDS HUB v1  —  /med-students/ ハブ(105326) の状況別サポート6枚
   価格なし・詳細ページへの導線カード。3列(auto-fit)。
   .parent-pageid-105326 スコープ(105326はmu-pluginでこのbody classを付与)。UNITS: px only。
   ================================================================ */
.parent-pageid-105326 .mds-svcgrid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:8px 0 0;
}
.parent-pageid-105326 .mds-svccard{
  background:#fff;border:1px solid var(--mds-line);border-radius:14px;padding:22px 20px;
  display:flex;flex-direction:column;box-shadow:0 3px 12px rgba(18,63,102,.05);
}
.parent-pageid-105326 .mds-svccard h3{
  font-size:17px;font-weight:700;color:var(--mds-navy);margin:0 0 8px;line-height:1.5;
}
.parent-pageid-105326 .mds-svccard p{
  font-size:14px;line-height:1.8;color:var(--mds-ink);margin:0 0 14px;flex:1 1 auto;
}
.parent-pageid-105326 .mds-svccard a{
  font-size:14px;font-weight:700;color:#245A8D;text-decoration:none;margin-top:auto;
}
.parent-pageid-105326 .mds-svccard a:hover{text-decoration:underline;}
/* ===== MDS HUB v1 END ===== */


/* ===== 105326 トップ: 親ページ用860px指定より後に1120pxを再指定 ===== */
body.page-id-105326 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
body.page-id-105326 .single-post-main,
body.page-id-105326 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
@media(max-width:781px){body.page-id-105326 .dbp-section__inner{padding-left:20px;padding-right:20px;}}


/* ===== /med-students/services/ (107661) ===== */
body.page-id-107661 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
body.page-id-107661 .single-post-main,
body.page-id-107661 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
@media(max-width:781px){body.page-id-107661 .dbp-section__inner{padding-left:20px;padding-right:20px;}}


/* ===== /med-students/plans/ (107658) ===== */
body.page-id-107658 .l-flex > main{width:100%!important;max-width:min(94%,1120px)!important;margin-left:auto!important;margin-right:auto!important;}
body.page-id-107658 .single-post-main,
body.page-id-107658 .content.l-inner-content{max-width:min(94vw,1120px)!important;}
@media(max-width:781px){body.page-id-107658 .dbp-section__inner{padding-left:20px;padding-right:20px;}}
