@charset "UTF-8";
/* ==========================================================================
   虐待防止研修 専門ページ  /shinka/abuse-training/
   ※ デザイン基盤は療育研修LP・法定研修LPと共有する。
      assets/css/ryoiku-training.css（--teal-* 等のトークン、.rt-* 共通コンポーネント、
      ヘッダー／フッター／CTA／FAQ／料金／レスポンシブ）を先に読み込み、
      このファイルでは「虐待防止研修ページ固有のもの」だけを定義する。

   配色方針:
     事業所編 = ティール（既存のブランドカラー）／家庭編 = 控えめなゴールド
     見出しの締め = ネイビー
     警告色（赤・黒）は使わない。安心感・誠実さ・温かさを優先する。
   ========================================================================== */

:root{
  --navy-800:#12293F;--navy-700:#1B3A5C;--navy-600:#254E78;--navy-100:#D5E0EB;--navy-50:#EEF3F8;
  --gold-600:#9C7526;--gold-500:#BC9038;--gold-400:#D4AC5C;--gold-200:#EBD9AE;--gold-100:#F4E9CE;--gold-50:#FBF6EA;
}

/* ===== 共通（他ページと同じ body クラス依存ルールをこのページにも） ===== */
/* 子テーマ style.css の body{overflow:hidden scroll!important} を打ち消す。
   これが効いていると body 内側にスクロールバー分(約15px)が確保され、
   全セクションの背景が右端まで届かず白い帯が出る。 */
body.coconova-abuse-page{overflow:visible!important;background:#fff}
body.coconova-abuse-page .coconova-breadcrumb{--cocobc-accent:#1E9494}

/* ===== ファーストビューの微調整（このページ固有） ===== */
/* H1直前のアイブロウ。検索語（対象＋研修名）との一致を一目で伝えるため、
   共通の .rt-hero-badge（12pxのピル）ではなく、本文より一段強いブロックにする。
   ゴールドの縦罫で視線を止め、H1との距離を詰めて1つのかたまりに見せる。 */
.coconova-abuse-page .ab-hero-eyebrow{margin:0 0 14px;padding:2px 0 2px 13px;border-left:4px solid var(--gold-400)}
.coconova-abuse-page .ab-hero-eyebrow-main{font-family:var(--font-heading);font-size:clamp(15px,3.7vw,19px);
  font-weight:700;color:var(--navy-700);line-height:1.55;letter-spacing:.01em;margin:0}
/* 「虐待防止研修」は検索語そのものなので、途中で改行させない */
.coconova-abuse-page .ab-hero-eyebrow-main em{font-style:normal;color:var(--gold-600);white-space:nowrap}
.coconova-abuse-page .ab-hero-eyebrow-sub{font-family:var(--font-heading);font-size:12.5px;font-weight:700;
  letter-spacing:.06em;color:var(--navy-600);line-height:1.6;margin:3px 0 0;opacity:.85}
/* H1 が療育/法定LPより長いため、最大文字サイズを少し下げて3行折り返しを防ぐ */
.coconova-abuse-page .rt-hero h1{font-size:clamp(24px,5.8vw,38px)}
/* スペックは3点。2カラムだと最後の1枚が余るため、1カラム↔3カラムで切り替える */
.coconova-abuse-page .rt-specs{grid-template-columns:1fr}

/* ===== 写真（いずれも 1080x720 = 3:2。トリミングせずそのまま見せる） ===== */
.coconova-abuse-page .rt-hero-media img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;
  border-radius:18px;box-shadow:0 12px 32px rgba(0,0,0,.10)}
.ab-course-img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;
  border-radius:16px;margin-bottom:18px}

/* ===== 画像プレースホルダ（別の画像を仮置きしたいときに使う） ===== */
.ab-imgph{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  background:repeating-linear-gradient(135deg,var(--teal-50) 0 12px,#fff 12px 24px);
  border:1px dashed var(--teal-200);border-radius:16px;color:var(--teal-600);text-align:center;padding:20px}
.ab-imgph svg{opacity:.7}
.ab-imgph span{font-family:var(--font-heading);font-size:12.5px;font-weight:700;letter-spacing:.04em;line-height:1.6}
.ab-imgph small{display:block;font-family:var(--font-body);font-size:11.5px;font-weight:400;color:var(--gray-500);margin-top:2px}
.ab-imgph--hero{aspect-ratio:16/9;width:100%}
.ab-imgph--course{aspect-ratio:16/9;width:100%;margin-bottom:18px}
.ab-imgph--gold{background:repeating-linear-gradient(135deg,var(--gold-50) 0 12px,#fff 12px 24px);border-color:var(--gold-200);color:var(--gold-600)}

/* ===== 01. 問題提起 ===== */
.ab-problems{padding:var(--section-padding) 0;background:var(--navy-50)}
.ab-problems-head{text-align:center;margin-bottom:28px}
.ab-problems-head .section-title{color:var(--navy-700)}
.ab-problem-list{list-style:none;display:grid;grid-template-columns:1fr;gap:10px;max-width:880px;margin:0 auto}
.ab-problem{display:flex;align-items:flex-start;gap:11px;background:#fff;border:1px solid var(--navy-100);border-radius:14px;padding:15px 16px}
.ab-problem svg{flex-shrink:0;color:var(--navy-600);margin-top:3px}
.ab-problem span{font-size:15px;color:var(--gray-800);line-height:1.7}
.ab-problems-note{max-width:880px;margin:22px auto 0;text-align:center;font-size:15px;color:var(--gray-700);line-height:1.95}
.ab-problems-note strong{color:var(--navy-700)}

/* ===== 02. 守るのは、子どもだけではありません ===== */
.ab-protect{padding:var(--section-padding) 0;background:#fff}
.ab-protect-head{text-align:center;margin-bottom:30px}
.ab-protect-fig{max-width:520px;margin:0 auto 32px}
.ab-protect-fig svg{width:100%;height:auto;display:block}
.ab-protect-grid{display:grid;grid-template-columns:1fr;gap:14px;max-width:1000px;margin:0 auto}
.ab-protect-card{background:#fff;border:1px solid var(--gray-200);border-radius:18px;padding:24px 20px}
.ab-protect-card h3{font-family:var(--font-heading);font-size:17.5px;font-weight:700;line-height:1.5;margin-bottom:10px;display:flex;align-items:center;gap:10px}
.ab-protect-card p{font-size:15px;color:var(--gray-700);line-height:1.9}
.ab-protect-ico{width:40px;height:40px;flex-shrink:0;border-radius:12px;display:flex;align-items:center;justify-content:center}
.ab-protect-card--child{border-color:var(--teal-100);background:linear-gradient(180deg,var(--teal-50) 0%,#fff 55%)}
.ab-protect-card--child h3{color:var(--teal-700)} .ab-protect-card--child .ab-protect-ico{background:#fff;border:1px solid var(--teal-100);color:var(--teal-500)}
.ab-protect-card--staff{border-color:var(--navy-100);background:linear-gradient(180deg,var(--navy-50) 0%,#fff 55%)}
.ab-protect-card--staff h3{color:var(--navy-700)} .ab-protect-card--staff .ab-protect-ico{background:#fff;border:1px solid var(--navy-100);color:var(--navy-600)}
.ab-protect-card--family{border-color:var(--gold-200);background:linear-gradient(180deg,var(--gold-50) 0%,#fff 55%)}
.ab-protect-card--family h3{color:var(--gold-600)} .ab-protect-card--family .ab-protect-ico{background:#fff;border:1px solid var(--gold-200);color:var(--gold-500)}
.ab-protect-msg{max-width:820px;margin:26px auto 0;background:var(--navy-800);color:#fff;border-radius:20px;padding:26px 22px;text-align:center}
.ab-protect-msg p{font-family:var(--font-heading);font-size:clamp(17px,4vw,22px);font-weight:700;line-height:1.75;margin:0}
.ab-protect-msg em{font-style:normal;color:var(--teal-200)}

/* ===== 03. 2つの研修 ===== */
.ab-courses{padding:var(--section-padding) 0;background:linear-gradient(180deg,var(--teal-50) 0%,#fff 45%)}
.ab-courses-head{text-align:center;margin-bottom:30px}
.ab-course-grid{display:grid;grid-template-columns:1fr;gap:20px;max-width:1080px;margin:0 auto}
.ab-course{background:#fff;border:1px solid var(--teal-100);border-radius:22px;padding:24px 20px;box-shadow:0 10px 30px rgba(30,148,148,.08);display:flex;flex-direction:column}
.ab-course--home{border-color:var(--gold-200);box-shadow:0 10px 30px rgba(188,144,56,.10)}
.ab-course-tag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-family:var(--font-heading);font-size:12.5px;font-weight:700;letter-spacing:.06em;border-radius:20px;padding:5px 14px;margin-bottom:14px;
  background:var(--teal-50);border:1px solid var(--teal-100);color:var(--teal-700)}
.ab-course--home .ab-course-tag{background:var(--gold-50);border-color:var(--gold-200);color:var(--gold-600)}
.ab-course h3{font-family:var(--font-heading);font-size:clamp(18px,4.2vw,22px);font-weight:700;color:var(--gray-900);line-height:1.55;margin-bottom:10px}
.ab-course-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.ab-course-meta span{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--gray-700);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:16px;padding:5px 12px}
.ab-course-aim{background:var(--teal-50);border-left:4px solid var(--teal-300);border-radius:0 12px 12px 0;padding:14px 16px;margin-bottom:16px}
.ab-course--home .ab-course-aim{background:var(--gold-50);border-left-color:var(--gold-400)}
.ab-course-aim-label{font-family:var(--font-heading);font-size:12.5px;font-weight:700;color:var(--teal-700);letter-spacing:.06em;margin-bottom:5px}
.ab-course--home .ab-course-aim-label{color:var(--gold-600)}
.ab-course-aim p{font-size:15px;color:var(--gray-800);line-height:1.85;margin:0}
.ab-course-sub{font-family:var(--font-heading);font-size:14px;font-weight:700;color:var(--gray-600);letter-spacing:.04em;margin:0 0 10px}
.ab-course-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.ab-course-list li{font-size:14.5px;color:var(--gray-700);line-height:1.8;padding-left:22px;position:relative}
.ab-course-list li::before{content:'';position:absolute;left:2px;top:10px;width:8px;height:8px;border-radius:50%;background:var(--teal-300)}
.ab-course--home .ab-course-list li::before{background:var(--gold-400)}
.ab-course-more{font-size:13.5px;color:var(--gray-600);line-height:1.85;margin:-6px 0 18px}
.ab-course-take{margin-top:auto;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:14px;padding:16px}
.ab-course-take-label{font-family:var(--font-heading);font-size:12.5px;font-weight:700;color:var(--gray-600);letter-spacing:.06em;margin-bottom:6px}
.ab-course-take p{font-size:14.5px;color:var(--gray-800);line-height:1.85;margin:0}
.ab-course-take strong{color:var(--teal-700)}
.ab-course--home .ab-course-take strong{color:var(--gold-600)}

/* ===== 04. 具体例（明日の現場） ===== */
.ab-scenes{padding:var(--section-padding) 0;background:#fff}
.ab-scenes-head{text-align:center;margin-bottom:30px}
.ab-scene-block{max-width:1000px;margin:0 auto 24px}
.ab-scene-block:last-child{margin-bottom:0}
.ab-scene-label{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-heading);font-size:14px;font-weight:700;border-radius:20px;padding:6px 16px;margin-bottom:14px;
  background:var(--teal-50);border:1px solid var(--teal-100);color:var(--teal-700)}
.ab-scene-block--home .ab-scene-label{background:var(--gold-50);border-color:var(--gold-200);color:var(--gold-600)}
.ab-scene-grid{display:grid;grid-template-columns:1fr;gap:10px}
.ab-scene{background:#fff;border:1px solid var(--gray-200);border-left:4px solid var(--teal-200);border-radius:0 14px 14px 0;padding:15px 16px}
.ab-scene-block--home .ab-scene{border-left-color:var(--gold-200)}
.ab-scene p{font-size:15px;color:var(--gray-800);line-height:1.8;margin:0}
.ab-scenes-note{max-width:1000px;margin:24px auto 0;background:var(--navy-50);border:1px solid var(--navy-100);border-radius:16px;padding:18px 20px;text-align:center}
.ab-scenes-note p{font-size:14.5px;color:var(--gray-700);line-height:1.9;margin:0}
.ab-scenes-note strong{color:var(--navy-700)}

/* ===== 05. この研修ならではの学び ===== */
.ab-learn{padding:var(--section-padding) 0;background:var(--navy-50)}
.ab-learn-head{text-align:center;margin-bottom:30px}
.ab-learn-head .section-title{color:var(--navy-700)}
.ab-learn-grid{display:grid;grid-template-columns:1fr;gap:14px;max-width:1000px;margin:0 auto}
.ab-learn-card{background:#fff;border:1px solid var(--navy-100);border-radius:18px;padding:24px 20px}
.ab-learn-num{font-family:var(--font-en);font-size:12.5px;font-weight:700;letter-spacing:.12em;color:var(--navy-600);margin-bottom:8px}
.ab-learn-card h3{font-family:var(--font-heading);font-size:17.5px;font-weight:700;color:var(--navy-800);line-height:1.5;margin-bottom:10px}
.ab-learn-card p{font-size:15px;color:var(--gray-700);line-height:1.9}

/* ===== 06. 研修の進め方・教材としての特徴 ===== */
.ab-method{padding:var(--section-padding) 0;background:#fff}
.ab-method-head{text-align:center;margin-bottom:28px}
.ab-method-list{list-style:none;display:grid;grid-template-columns:1fr;gap:10px;max-width:900px;margin:0 auto}
.ab-method-list li{display:flex;align-items:flex-start;gap:11px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:14px;padding:15px 16px;font-size:15px;color:var(--gray-800);line-height:1.75}
.ab-method-list svg{flex-shrink:0;color:var(--teal-500);margin-top:3px}

/* ===== 07. 目指す事業所の姿 ===== */
.ab-future{padding:var(--section-padding) 0;background:linear-gradient(180deg,var(--teal-50) 0%,#fff 55%)}
.ab-future-head{text-align:center;margin-bottom:30px}
.ab-future-list{list-style:none;display:grid;grid-template-columns:1fr;gap:10px;max-width:900px;margin:0 auto}
.ab-future-list li{display:flex;align-items:flex-start;gap:11px;background:#fff;border:1px solid var(--teal-100);border-radius:14px;padding:15px 16px;font-size:15px;color:var(--gray-800);line-height:1.75;box-shadow:0 2px 10px rgba(30,148,148,.05)}
.ab-future-list svg{flex-shrink:0;color:var(--teal-500);margin-top:3px}
.ab-future-note{max-width:900px;margin:22px auto 0;text-align:center;font-size:14px;color:var(--gray-600);line-height:1.9}

/* ===== 08. 制度についての注記 ===== */
.ab-note{max-width:860px;margin:22px auto 0;background:var(--warm-50);border:1px solid var(--warm-200);border-radius:14px;padding:16px 18px;display:flex;gap:12px;align-items:flex-start}
.ab-note svg{flex-shrink:0;color:var(--orange-500);margin-top:2px}
.ab-note p{font-size:13.5px;color:var(--gray-700);line-height:1.85;margin:0}

/* ===== 09. 法定研修・制度への対応 ===== */
.ab-legal{padding:var(--section-padding) 0;background:#fff}
.ab-legal-head{text-align:center;margin-bottom:26px}
.ab-legal-inner{max-width:860px;margin:0 auto}
.ab-legal-inner p{font-size:15.5px;color:var(--gray-700);line-height:1.95;margin-bottom:14px}
.ab-legal-items{list-style:none;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:18px 0}
.ab-legal-items li{font-size:13.5px;color:var(--teal-700);background:var(--teal-50);border:1px solid var(--teal-100);border-radius:16px;padding:6px 14px}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media(min-width:600px){
  .coconova-abuse-page .rt-specs{grid-template-columns:repeat(3,1fr)}
  .ab-problem-list{grid-template-columns:repeat(2,1fr)}
  .ab-protect-grid{grid-template-columns:repeat(3,1fr)}
  .ab-scene-grid{grid-template-columns:repeat(2,1fr)}
  .ab-learn-grid{grid-template-columns:repeat(2,1fr)}
  .ab-method-list{grid-template-columns:repeat(2,1fr)}
  .ab-future-list{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:900px){
  /* PCではヒーローが2カラムになり右側が狭いので、スペックは縦積みに戻す */
  .coconova-abuse-page .rt-specs{grid-template-columns:1fr}
  .ab-course-grid{grid-template-columns:repeat(2,1fr);gap:24px}
  .ab-course{padding:30px 26px}
  .ab-protect-card{padding:28px 24px}
  .ab-learn-grid{grid-template-columns:repeat(4,1fr)}
  .ab-learn-card{padding:26px 22px}
  .ab-problem-list{grid-template-columns:repeat(3,1fr)}
  .ab-protect-msg{padding:34px 30px}
}

/* ==========================================================================
   Cocoon 親テーマのスタイル打ち消し（このページのみ）
   ※ margin を一律 0 にすると中央寄せ（margin:0 auto）や要素間の余白まで
      消えるため、list-style と padding だけ一括で打ち消し、margin は個別指定する。
   ========================================================================== */
.coconova-abuse-page h1,.coconova-abuse-page h2,.coconova-abuse-page h3,.coconova-abuse-page h4{background:none!important;border:none!important}
.coconova-abuse-page h1,.coconova-abuse-page h2:not(.section-title),.coconova-abuse-page h3,.coconova-abuse-page h4{padding:0!important}
.coconova-abuse-page .nav-links,.coconova-abuse-page .footer-links,.coconova-abuse-page .rt-price-targets,
.coconova-abuse-page .rt-faq-list,.coconova-abuse-page .ab-problem-list,.coconova-abuse-page .ab-course-list,
.coconova-abuse-page .ab-method-list,.coconova-abuse-page .ab-future-list,.coconova-abuse-page .ab-legal-items{list-style:none!important;padding:0!important}
.coconova-abuse-page .nav-links,.coconova-abuse-page .footer-links,.coconova-abuse-page .ab-legal-items{margin:0!important}
.coconova-abuse-page .ab-legal-items{margin:18px 0!important}
.coconova-abuse-page .rt-faq-list{margin:0 auto!important;max-width:800px!important}
.coconova-abuse-page .ab-problem-list,.coconova-abuse-page .ab-method-list,.coconova-abuse-page .ab-future-list{margin:0 auto!important}
.coconova-abuse-page .ab-course-list{margin:0 0 18px!important}
.coconova-abuse-page .rt-price-targets{margin:8px 0 0!important}
.coconova-abuse-page .rt-faq-list li,.coconova-abuse-page .ab-problem-list li,.coconova-abuse-page .ab-method-list li,
.coconova-abuse-page .ab-future-list li,.coconova-abuse-page .ab-legal-items li{list-style:none!important;margin:0!important}
.coconova-abuse-page .rt-faq-list li{padding:0!important}
.coconova-abuse-page .ab-course-list li{list-style:none!important;padding-left:22px!important;margin:0!important}
.coconova-abuse-page .rt-faq-list li::before,.coconova-abuse-page .ab-problem-list li::before,
.coconova-abuse-page .ab-method-list li::before,.coconova-abuse-page .ab-future-list li::before,
.coconova-abuse-page .ab-legal-items li::before{content:none!important}
.coconova-abuse-page img{border:none!important}
.coconova-abuse-page .article,.coconova-abuse-page .entry-content{padding:0!important;margin:0!important}
.coconova-abuse-page #content,.coconova-abuse-page .content{margin:0!important;padding:0!important;max-width:none!important}
.coconova-abuse-page *{box-sizing:border-box!important}
