.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3100 .elementor-element.elementor-element-24dea39{--display:flex;--min-height:300px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overflow:hidden;--overlay-opacity:0.5;}.elementor-3100 .elementor-element.elementor-element-24dea39:not(.elementor-motion-effects-element-type-background), .elementor-3100 .elementor-element.elementor-element-24dea39 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://shinkabooks.com/wp-content/uploads/2025/12/wht_bg.jpg");background-size:cover;}.elementor-3100 .elementor-element.elementor-element-24dea39::before, .elementor-3100 .elementor-element.elementor-element-24dea39 > .elementor-background-video-container::before, .elementor-3100 .elementor-element.elementor-element-24dea39 > .e-con-inner > .elementor-background-video-container::before, .elementor-3100 .elementor-element.elementor-element-24dea39 > .elementor-background-slideshow::before, .elementor-3100 .elementor-element.elementor-element-24dea39 > .e-con-inner > .elementor-background-slideshow::before, .elementor-3100 .elementor-element.elementor-element-24dea39 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#FFFFFF;--background-overlay:'';}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3100 .elementor-element.elementor-element-fbcbb29{z-index:5;}.elementor-3100 .elementor-element.elementor-element-3a8d56b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-3100 .elementor-element.elementor-element-3a8d56b:not(.elementor-motion-effects-element-type-background), .elementor-3100 .elementor-element.elementor-element-3a8d56b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #F0F0F0 0%, #FFFFFF 100%);}.elementor-widget-text-editor .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-3100 .elementor-element.elementor-element-88997ae > .elementor-widget-container{margin:0px 0px -12px 0px;}.elementor-3100 .elementor-element.elementor-element-88997ae{text-align:center;font-family:"Bebas Neue", Sans-serif;font-size:72px;font-weight:700;letter-spacing:1.5px;color:#004CA010;}.elementor-3100 .elementor-element.elementor-element-88997ae p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-030be28 > .elementor-widget-container{margin:-80px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-030be28{text-align:center;font-family:"Noto Sans JP", Sans-serif;font-size:18px;font-weight:500;letter-spacing:1.5px;color:#C8A366;}.elementor-3100 .elementor-element.elementor-element-030be28 p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-042ed25 > .elementor-widget-container{margin:-20px 0px 0px 0px;padding:0px 0px 20px 0px;}.elementor-3100 .elementor-element.elementor-element-042ed25{text-align:center;font-family:"Noto Serif JP", Sans-serif;font-size:50px;font-weight:900;color:#004CA0;}.elementor-3100 .elementor-element.elementor-element-042ed25 p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-b896338 > .elementor-widget-container{padding:0px 0px 20px 0px;}.elementor-3100 .elementor-element.elementor-element-b896338{text-align:center;font-family:"Noto Serif JP", Sans-serif;font-size:50px;font-weight:900;color:#004CA0;}.elementor-3100 .elementor-element.elementor-element-b896338 p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-8a9432c > .elementor-widget-container{margin:0px 0px -40px 0px;padding:0px 0px 40px 0px;}.elementor-3100 .elementor-element.elementor-element-ed44a6f{--display:flex;--gap:60px 20px;--row-gap:60px;--column-gap:20px;--border-radius:20px 20px 20px 20px;--padding-top:65px;--padding-bottom:60px;--padding-left:60px;--padding-right:60px;}.elementor-3100 .elementor-element.elementor-element-ed44a6f:not(.elementor-motion-effects-element-type-background), .elementor-3100 .elementor-element.elementor-element-ed44a6f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#004CA0;}.elementor-3100 .elementor-element.elementor-element-9d6275b{text-align:center;font-family:"Noto Serif JP", Sans-serif;font-size:28px;font-weight:700;letter-spacing:1.5px;color:#FFFFFF;}.elementor-3100 .elementor-element.elementor-element-9d6275b p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-be8d1dd{text-align:center;font-family:"Noto Serif JP", Sans-serif;font-size:28px;font-weight:700;letter-spacing:1.5px;color:#FFFFFF;}.elementor-3100 .elementor-element.elementor-element-be8d1dd p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-4d90401{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3100 .elementor-element.elementor-element-88d7c92{--display:flex;--justify-content:center;}.elementor-3100 .elementor-element.elementor-element-4fb14ec > .elementor-widget-container{margin:0px 0px -20px 0px;}.elementor-3100 .elementor-element.elementor-element-4fb14ec{text-align:center;font-family:"Noto Serif JP", Sans-serif;font-size:18px;font-weight:700;letter-spacing:1.5px;}.elementor-3100 .elementor-element.elementor-element-4fb14ec p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-62ff5e9{text-align:center;font-family:"Noto Serif JP", Sans-serif;font-size:32px;font-weight:700;letter-spacing:1.5px;color:#FFFFFF;}.elementor-3100 .elementor-element.elementor-element-62ff5e9 p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-dc23c43{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-image .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3100 .elementor-element.elementor-element-8c38b85{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3100 .elementor-element.elementor-element-8c38b85:not(.elementor-motion-effects-element-type-background), .elementor-3100 .elementor-element.elementor-element-8c38b85 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 0%, #F0F0F0 100%);}.elementor-3100 .elementor-element.elementor-element-6875632{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3100 .elementor-element.elementor-element-9f9837f > .elementor-widget-container{margin:0px 0px -12px 0px;}.elementor-3100 .elementor-element.elementor-element-9f9837f{text-align:center;font-family:"Bebas Neue", Sans-serif;font-size:72px;font-weight:700;letter-spacing:1.5px;color:#004CA010;}.elementor-3100 .elementor-element.elementor-element-9f9837f p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-a2537bf > .elementor-widget-container{margin:-80px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-a2537bf{text-align:center;font-family:"Noto Sans JP", Sans-serif;font-size:18px;font-weight:500;letter-spacing:1.5px;color:#C8A366;}.elementor-3100 .elementor-element.elementor-element-a2537bf p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-229527d{text-align:center;font-family:"Noto Sans JP", Sans-serif;font-size:24px;font-weight:700;color:#004CA0;}.elementor-3100 .elementor-element.elementor-element-229527d p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-23a3967{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3100 .elementor-element.elementor-element-294aa2b > .elementor-widget-container{margin:0px 0px -12px 0px;}.elementor-3100 .elementor-element.elementor-element-294aa2b{text-align:center;font-family:"Bebas Neue", Sans-serif;font-size:72px;font-weight:700;letter-spacing:1.5px;color:#004CA010;}.elementor-3100 .elementor-element.elementor-element-294aa2b p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-1ef2786 > .elementor-widget-container{margin:-80px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-1ef2786{text-align:center;font-family:"Noto Sans JP", Sans-serif;font-size:18px;font-weight:500;letter-spacing:1.5px;color:#C8A366;}.elementor-3100 .elementor-element.elementor-element-1ef2786 p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-4bf8ecd{text-align:center;font-family:"Noto Sans JP", Sans-serif;font-size:24px;font-weight:700;color:#004CA0;}.elementor-3100 .elementor-element.elementor-element-f5217c8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:10px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-3100 .elementor-element.elementor-element-f5217c8:not(.elementor-motion-effects-element-type-background), .elementor-3100 .elementor-element.elementor-element-f5217c8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #F0F0F0 0%, #FFFFFF 100%);}.elementor-3100 .elementor-element.elementor-element-5c4e5e4 > .elementor-widget-container{margin:0px 0px -12px 0px;}.elementor-3100 .elementor-element.elementor-element-5c4e5e4{text-align:center;font-family:"Bebas Neue", Sans-serif;font-size:72px;font-weight:700;letter-spacing:1.5px;color:#004CA010;}.elementor-3100 .elementor-element.elementor-element-5c4e5e4 p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-f3896af > .elementor-widget-container{margin:-80px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-f3896af{text-align:center;font-family:"Noto Sans JP", Sans-serif;font-size:18px;font-weight:500;letter-spacing:1.5px;color:#C8A366;}.elementor-3100 .elementor-element.elementor-element-f3896af p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-bb8ae87 > .elementor-widget-container{margin:-20px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-3100 .elementor-element.elementor-element-24dea39{--min-height:220px;}.elementor-3100 .elementor-element.elementor-element-fbcbb29 > .elementor-widget-container{padding:20px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-3a8d56b{--padding-top:40px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-3100 .elementor-element.elementor-element-88997ae{font-size:48px;}.elementor-3100 .elementor-element.elementor-element-030be28 > .elementor-widget-container{margin:-60px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-030be28{font-size:16px;}.elementor-3100 .elementor-element.elementor-element-042ed25{font-size:20px;}.elementor-3100 .elementor-element.elementor-element-b896338 > .elementor-widget-container{margin:-20px 0px 0px 0px;padding:0px 0px 10px 0px;}.elementor-3100 .elementor-element.elementor-element-b896338{font-size:20px;}.elementor-3100 .elementor-element.elementor-element-b896338 p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-ed44a6f{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-3100 .elementor-element.elementor-element-9d6275b{font-size:14px;}.elementor-3100 .elementor-element.elementor-element-be8d1dd{font-size:14px;}.elementor-3100 .elementor-element.elementor-element-4d90401{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3100 .elementor-element.elementor-element-4fb14ec{font-size:10px;}.elementor-3100 .elementor-element.elementor-element-62ff5e9{font-size:24px;}.elementor-3100 .elementor-element.elementor-element-dc23c43.e-con{--order:-99999 /* order start hack */;}.elementor-3100 .elementor-element.elementor-element-8c38b85{--padding-top:20px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}.elementor-3100 .elementor-element.elementor-element-9f9837f{font-size:48px;}.elementor-3100 .elementor-element.elementor-element-a2537bf > .elementor-widget-container{margin:-60px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-a2537bf{font-size:16px;}.elementor-3100 .elementor-element.elementor-element-229527d > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-229527d{text-align:center;font-size:14px;letter-spacing:1.5px;}.elementor-3100 .elementor-element.elementor-element-229527d p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-294aa2b{font-size:48px;}.elementor-3100 .elementor-element.elementor-element-1ef2786 > .elementor-widget-container{margin:-60px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-1ef2786{font-size:16px;}.elementor-3100 .elementor-element.elementor-element-4bf8ecd > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-4bf8ecd{text-align:center;font-size:14px;letter-spacing:1.5px;}.elementor-3100 .elementor-element.elementor-element-4bf8ecd p{margin-block-end:0px;}.elementor-3100 .elementor-element.elementor-element-f5217c8{--padding-top:10px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-3100 .elementor-element.elementor-element-5c4e5e4{font-size:48px;}.elementor-3100 .elementor-element.elementor-element-f3896af > .elementor-widget-container{margin:-60px 0px 0px 0px;}.elementor-3100 .elementor-element.elementor-element-f3896af{font-size:16px;}}@media(min-width:768px){.elementor-3100 .elementor-element.elementor-element-24dea39{--content-width:1200px;}.elementor-3100 .elementor-element.elementor-element-88d7c92{--width:40%;}.elementor-3100 .elementor-element.elementor-element-dc23c43{--width:60%;}.elementor-3100 .elementor-element.elementor-element-6875632{--width:50%;}.elementor-3100 .elementor-element.elementor-element-23a3967{--width:50%;}}/* Start custom CSS *//* --- 共通スタイル --- */
/* Noto Sans JP のウェイト 500, 700 を読み込み */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700&family=Bebas+Neue&display=swap');

.ceo-msg-wrapper {
  /* 【修正】all: initial は削除しました（他の表示崩れを防ぐため） */
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  
  /* === ▼▼ ここでパディング・余白を一括調整できます ▼▼ === */
  
  /* 基本の余白（本文の段落間など） */
  --space-base: 20px;
  
  /* 実績ボックス（IMPACT BOX）の【外側】の余白 */
  --impact-margin-top: 40px;    /* ボックスの【上】の外側余白 */
  --impact-margin-bottom: 40px; /* ボックスの【下】の外側余白 */
  
  /* 実績ボックス（IMPACT BOX）の【内側】の余白 */
  --impact-padding: 30px;
  
  /* 最後のメッセージ部分の設定（ご指定の数値: 0px） */
  --message-padding-top: 0px;  /* メッセージ上の余白 */
  
  /* === ▲▲ 調整はここまで ▲▲ === */

  /* 色の変数定義 */
  --c-primary: #004CA0;
  --c-accent: #C8A366;
  
  /* 【修正】本文カラーを #202020 に変更 */
  --c-text-body: #202020;
  
  --c-text-head: #111827;
  --c-bg-light: #F9FAFB;
  --c-bg-card: #FFFFFF;
  
  /* フォント設定 */
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px; /* 基準サイズ */
  font-weight: 500;
  color: var(--c-text-body);
  line-height: 2.0;
  letter-spacing: 0.05em;
  text-align: left; /* 親要素の影響を受けないように左揃えを明示 */
}

/* 子要素全ての box-sizing を強制（レイアウト崩れ防止） */
.ceo-msg-wrapper *,
.ceo-msg-wrapper *::before,
.ceo-msg-wrapper *::after {
  box-sizing: border-box;
}

.ceo-container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0;
  position: relative;
}

/* --- 背景装飾（透かし文字） --- */
.ceo-story-bg-text {
  position: absolute;
  top: -40px; /* 位置調整 */
  right: 0;
  font-family: 'Bebas Neue', sans-serif;
  font-size: 140px;
  font-weight: 400;
  color: rgba(0, 76, 160, 0.03);
  line-height: 1;
  pointer-events: none;
  z-index: -1;
  user-select: none;
  letter-spacing: 0.05em;
}

/* --- ストーリー要素 --- */
.ceo-story-section {
  display: block;
  width: 100%;
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
}

.ceo-story-content {
  width: 100%;
  margin: 0 auto;
}

/* 本文テキスト設定 */
.ceo-text-body {
  color: var(--c-text-body);
  font-size: 16px; /* PCでのデフォルトサイズ */
  margin-bottom: var(--space-base);
  text-align: justify;
  font-weight: 500;
}

/* ドロップキャップ（先頭文字装飾） */
.ceo-drop-cap::first-letter {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3em;
  float: left;
  line-height: 1;
  margin-right: 15px;
  margin-top: 5px;
  margin-bottom: 0;
  color: #fff;
  background-color: var(--c-primary);
  padding: 8px 12px;
  border-radius: 4px 12px 0 12px;
  box-shadow: 3px 3px 0 var(--c-accent);
  font-weight: 700;
}

/* 実績ボックス */
.ceo-impact-box {
  background: linear-gradient(135deg, #ffffff 0%, #f0f7ff 100%);
  border: none;
  border-left: 6px solid var(--c-primary);
  padding: var(--impact-padding);
  margin-top: var(--impact-margin-top);
  margin-bottom: var(--impact-margin-bottom);
  border-radius: 0 16px 16px 0;
  box-shadow: 0 10px 30px rgba(0, 76, 160, 0.08);
  position: relative;
}

.ceo-impact-box::before {
  content: "IMPACT";
  position: absolute;
  top: calc(var(--impact-padding) * 0.5);
  right: calc(var(--impact-padding) * 0.75);
  font-size: 40px;
  font-family: 'Bebas Neue', sans-serif;
  color: rgba(0, 76, 160, 0.08);
  letter-spacing: 0.05em;
  line-height: 1;
}

.ceo-impact-title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  color: var(--c-primary);
  margin: 0 0 10px 0;
  font-weight: 700;
  position: relative;
  display: inline-block;
  line-height: 1.4;
}

.ceo-impact-title::after {
  content: "";
  display: block;
  width: 40px;
  height: 3px;
  background: var(--c-accent);
  margin-top: 5px;
}

/* マーカー装飾 */
.ceo-marker {
  background: linear-gradient(transparent 65%, rgba(200, 163, 102, 0.2) 65%);
  font-weight: 700;
  color: #111827;
  padding: 0 2px;
}

.ceo-message-flag {
  font-weight: 700;
  color: var(--c-primary);
  font-size: 1.1em;
  border-bottom: 2px solid var(--c-accent);
}

/* 最後のメッセージ部分 */
.ceo-message-highlight {
  border-top: none;
  padding-top: var(--message-padding-top);
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  color: var(--c-primary);
  font-weight: 500;
  margin-bottom: 40px;
  padding-bottom: 0 !important;
}

/* --- チェックリスト（Vision List）用のCSS --- */
.ceo-check-list {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.ceo-check-item {
  background: var(--c-bg-card);
  padding: 20px 40px;
  border-radius: 50px;
  border: 1px solid #EBF2FF;
  box-shadow: 0 4px 10px rgba(0,0,0,0.03);
  display: flex;
  align-items: center;
  transition: all 0.2s ease;
}

.ceo-check-item:hover {
  transform: translateX(5px);
  border-color: var(--c-primary);
  box-shadow: 0 8px 20px rgba(0, 76, 160, 0.08);
}

.ceo-check-icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  background: var(--c-primary);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 24px;
  font-size: 16px;
  font-weight: bold;
}

.ceo-check-icon svg {
  width: 16px;
  height: 16px;
  stroke-width: 3;
  fill: none;
  stroke: currentColor;
}

.ceo-check-text {
  font-size: 18px;
  font-weight: 700;
  color: var(--c-text-head);
  letter-spacing: 0.02em;
  line-height: 1.4;
}

/* ★★★ 最終防衛ライン：末尾の余白を強制的に削除 ★★★ */
.ceo-msg-wrapper > *:last-child,
.ceo-container > *:last-child,
.ceo-story-section > *:last-child,
.ceo-story-content > *:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* --- レスポンシブ --- */
@media screen and (max-width: 992px) {
  /* タブレット・小型PC向け調整 */
}

@media screen and (max-width: 768px) {
  /* スマホ対応 */
  
  .ceo-container {
    padding: 0 !important;
  }

  /* スマホでの本文フォントサイズ */
  .ceo-text-body {
    font-size: 14px;
  }

  .ceo-impact-box .ceo-text-body {
    font-size: 14px !important;
  }
  
  .ceo-story-bg-text {
    font-size: 60px;
    top: -10px;
  }
  
  .ceo-impact-box {
    padding: 20px;
    --impact-margin-top: 30px; 
  }
  
  .ceo-drop-cap::first-letter {
    font-size: 2.5em;
    margin-right: 10px;
    padding: 5px 10px;
  }
  
  .ceo-message-highlight {
    font-size: 16px;
  }
  
  /* スマホでのチェックリスト調整 */
  .ceo-check-item {
    padding: 20px;
    border-radius: 16px;
    align-items: flex-start;
  }
  .ceo-check-icon {
    margin-top: 2px;
    margin-right: 15px;
  }
  .ceo-check-text {
    font-size: 16px;
    line-height: 1.6;
  }
}/* End custom CSS */