/* =========================================================
   GETO KOGEN / 冬ページ専用 CSS（style2.css）
   ---------------------------------------------------------
   トーン: 深いブルー #083c45 / アクセント #0fa3c9 / 雪白 #ffffff
   ベース: 余白ゆったり・角丸・薄いシャドウで読みやすさ重視
   ======================================================= */

/* 0) Reset-ish & 基本タイポ */
html,body{height:100%; margin:0; padding:0;}
body{
  font-family:"Open Sans","Hiragino Kaku Gothic ProN","Meiryo",system-ui,-apple-system,sans-serif;
  color:#083c45;
  line-height:1.75;
  background:#fff;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
h1,h2,h3,.font-alt_2{
  font-family:"Roboto Condensed","Open Sans",sans-serif;
  letter-spacing:.02em;
  font-weight:700;
  color:#083c45;
}
a{color:#0fa3c9;text-decoration:none}
a:hover{opacity:.9}

/* 1) レイアウトユーティリティ */
.container{max-width:1200px}
@media (min-width:1200px){
  .container{max-width:1200px} /* 幅100%指定は解除して中央寄せを維持 */
}
.mt-10{margin-top:10px}.mb-20{margin-bottom:20px}

/* 2) ナビゲーション（既存のnavbar-transparent想定で上に被せる） */
.navbar.navbar-custom{
  border:none; background:transparent; transition:background .3s ease, box-shadow .3s ease;
}
.navbar.navbar-custom.scrolled{
  background:rgba(8,60,69,.92); box-shadow:0 4px 16px rgba(0,0,0,.12);
}
.navbar-brand img{height:26px}
.navbar-toggle .icon-bar{background:#fff}

/* 3) ヒーローセクション */
.home-section.home-full-height{min-height:80vh; position:relative}
.hero-slider_2{position:relative; width:100%; min-height:70vh; display:flex; align-items:center; justify-content:center}
.slides_2{
  position:relative; width:100%; min-height:70vh;
  background-size:cover; background-position:center;
  display:flex; align-items:center; justify-content:center; text-align:center;
}
.slides_2::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.25));
}
.slides_2 > .col-sm-6{position:relative; z-index:1; float:none}
.module-title_2{
  font-size:40px; line-height:1.2; color:#fff; text-shadow:0 2px 10px rgba(0,0,0,.35);
  margin:0 0 8px;
}
.module-subtitle_2{
  font-size:18px; color:#e6f7fb; letter-spacing:.08em;
}

/* 4) セクション見出し（midashi） */
.midashi{ text-align:center; padding:40px 12px 10px }
.midashi h1{
  font-size:36px; margin:0 0 10px; position:relative; display:inline-block;
}
.midashi img{max-width:240px; height:auto; display:block; margin:10px auto 0}
.divider-w{
  border:0; height:2px; width:120px;
  margin:20px auto; background:linear-gradient(90deg,#0fa3c900,#0fa3c9,#0fa3c900);
}

/* サブ見出し（1行強調） */
.hei-1 h2{font-size:22px; font-weight:700; margin:12px 0 0}

/* 5) ボックス：対象者（box26） */
.box26{
  position:relative; margin:28px auto 0; max-width:760px;
  background:#fff; border:2px solid #0fa3c9; border-radius:14px;
  padding:14px 18px; box-shadow:0 6px 24px rgba(0,0,0,.06);
}
.box26 .box-title{
  position:absolute; top:-13px; left:16px;
  background:#0fa3c9; color:#fff; font-weight:700;
  border-radius:10px; padding:4px 12px; font-size:14px; letter-spacing:.05em;
}
.box26 p{font-size:20px;margin:6px 0 0; font-weight:700}

/* 6) ジグザグの区切り */
.zigzag, .zigzag_2{
  height:22px; background:
  repeating-linear-gradient(-45deg, #fff, #fff 10px, #e8f6fb 10px, #e8f6fb 20px);
}

/* 7) スカイ背景ブロック */
.bg_sky{
  background:linear-gradient(180deg,#e8f6fb,#ffffff);
  padding:36px 12px; text-align:center;
}
.bg_sky .inner img{max-width:240px; height:auto}
.bg_sky .inn-in{margin:18px auto 0; max-width:980px}
.bg_sky .inn-in h2{
  font-size:20px; font-weight:600;
}

/* 強調リボン（19歳シーズン券1900円） */
.box2{
  display:inline-block; margin:18px auto 12px; padding:10px 22px;
  background:#169cb3; color:#fff; border-radius:999px; font-weight:800; letter-spacing:.06em;
  box-shadow:0 6px 24px rgba(8,60,69,.18);
  font-size:20px;
}
.box2 p {
  margin:0;
}

/* 8) 2つ目のスカイエリア */
.bg_sky_2{
  background:linear-gradient(180deg,#ffffff,#eef9fc);
  padding:48px 12px 64px;
}
@media (max-width: 768px) {
    .inner_2 {
        text-align: center;
        padding: 0;
    }
}
	/* 9) PC/SP 出し分け */
.for-pc{display:block}

.box29{
  margin:0 auto;
  max-width:900px;
  padding:18px 20px;
  background:#fff;
  border:1px solid #d8eef5;
  border-radius:16px;
  box-shadow:0 10px 28px rgba(0,0,0,.06);
  text-align:left;
}
.box29 .box-title{
  font-size:22px;
  font-weight:800;
  margin:0 0 14px;
  padding-left:14px;
  position:relative;
}
.box29 .box-title::before{
  content:"";
  position:absolute; left:0; top:6px;
  width:6px; height:18px; border-radius:3px;
  background:#0fa3c9;
}

/* 各行スタイル */
.back_p, .back_p_2{
  position: relative;
  margin: 12px 0;
  padding: 10px 12px 10px 16px;
  background:#f3fbfe;
  border-radius:10px;
}
.back_p::before, .back_p_2::before{
  content:"";
  position:absolute;
  left:6px; top:12px;
  width:6px; height:18px;
  border-radius:3px;
  background:#0fa3c9;
}
.back_f, .back_f_1, .back_f_2, .back_f_3{
  margin:10px 0;
  padding:10px 12px;
  background:#fff;
  border:1px dashed #cdebf4;
  border-radius:10px;
}

/* ダウンロードボタン */
.header-dl-list{
  list-style:none;
  display:flex;
  gap:14px;
  padding:0;
  margin:12px 0;
  flex-wrap:wrap;
}
.header-dl img{
  height:44px;
  width:auto;
  display:block;
}

/* ------------------------
   スマホ時の調整
   ------------------------ */
@media (max-width:767px){
  .box29{
    padding:14px 14px;
  }
  .box29 .box-title{
    font-size:20px;
    margin-bottom:10px;
  }
  .box29 .box-title::before{
    top:4px; height:16px; width:5px;
  }
  .back_p, .back_p_2{
    font-size:15px;
    padding:10px 10px 10px 16px;
  }
  .back_f, .back_f_1, .back_f_2, .back_f_3{
    font-size:14px;
    padding:8px 10px;
  }
  .header-dl img{
    height:38px;
  }
}
.midashi img{
	width:80%;
	max-width:500px;
}

/* キャッチコピー強調 */
.catchcopy {
  display:inline-block;
  font-size: 2.2rem;       /* PC時 */
  font-weight: 800;
  color: #d62828;          /* 赤系で目立たせる（#083c45に変えてもOK） */
  line-height:1.3;
  text-shadow: 0 2px 4px rgba(0,0,0,.15);
  margin: 10px 0;
}

@media (max-width:767px){
  .catchcopy {
    font-size: 1.6rem;     /* スマホで大きすぎないサイズに調整 */
  }
}
img[src=""], img:not([src]){ display:none; }
.navbar.navbar-custom{ background:transparent; box-shadow:none; }
.home-section{ padding-top:0; margin-top:0; }
.navbar-fixed-top + section#home{ margin-top:0; }

/* 3) ヒーロー画像のフィットとテキストの読みやすさ調整 */
.hero-slider_2{ min-height:70vh; }
.slides_2{
  min-height:70vh;
  background-size:cover;       /* 画面比率で切れても全画面フィット */
  background-position:center;  /* 中央トリミング */
}
.slides_2 > .col-sm-6{
  float:none; width:100%; max-width:760px; padding:0 16px; margin:0 auto;
}

/* 4) モバイルではオーバーレイ/影を弱める（暗すぎ問題の解消） */
@media (max-width:767px){
  .slides_2::before{
    background:linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.18));
  }
  .module-title_2{
    font-size:28px;
    text-shadow:0 1px 3px rgba(0,0,0,.25);
    margin-bottom:6px;
  }
  .module-subtitle_2{
    font-size:14px; letter-spacing:.06em;
    color:#f0fbff;
  }
}

/* 5) ナビロゴの崩れ（高さゼロ・改行）対策 */
.navbar-brand img{ display:block; max-height:28px; height:auto; }

@media (max-width:768px) {
	.box2 p {
		font-size:15px !important;
	}
}