@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}


/************************************
**上記デフォルトで記載があったが、使用していない。
************************************/

/************************************
**サイト全体
************************************/

body {
    background-color: #fff !important;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

      a {
        text-decoration: none;
        color: inherit;
      }

#main {
padding-top: 0 !important;
}

.entry-content{
	margin-top: 0em!important;
    margin-bottom: 0em!important;
}


/* ヘッダー内調整 */
/* --- ▼グローバルナビを横並び固定にする ---------- */
#navi .menu-header {
  display: flex;          /* 横並び */
  align-items: center;    /* 垂直中央 */
  flex-wrap: nowrap;      /* 折り返し禁止 */
}

/* --- ▼電話ボタン(li#menu-item-401)だけ右端へ ------ */
#menu-item-401 {
  margin-left:14px;  /* 任意の数値に変更 */
}

/* --- ▼画像サイズをナビ高さにフィットさせる -------- */
#menu-item-401 .heamenu-img {
  height: 60px;           /* テーマのヘッダー高に合わせて調整 */
  width: auto;
}


.navi-in a {
    padding: 0 0.8em !important;
  }

  .heamenu-line {
    color: #fff !important;
    background-color: #00aeef !important;
    opacity: 1 !important;
    font-size: 1.2em !important;
    padding: 10px !important;
    border-radius: 10px !important;
  }

  .heamenu-img {
    width: 100% !important;
  }


/* フッター内調整 */



/* スマホ対応用ヘッダーが2重表示されるので対策用 */
@media (max-width: 834px){
  #header,          /* ロゴ＋ナビ全体 */
  #navi{            /* グローバルメニュー */
    display:none !important;
  }
}



/* スマホ対応用 */
@media (max-width: 768px) {
  .logo-header {
    display: none !important;
  }

  .img-hyouzi-pc {
    display: none !important;	  
}
  .img-hyouzi-sp {
    display: block !important;	  
}
	
/* ─────────────── 共通：電話ボタン画像を定義 ─────────────── */

/* 画像 URL を 1 回書けば両方で使い回せるようにカスタムプロパティを作る */
:root{
  --tel-img:url('https://waseshinjuku-okazaki.jp/wp-content/uploads/2025/05/早稲田電話（枠なし）_青.webp');
}

/* ── ① ヘッダーモバイルボタン側 ─────────────────── */

/* 星アイコンなど既定の .menu-icon を消す */
.phone-btn .custom-menu-icon.menu-icon{
  display:none !important;
}

/* ダミー文字列を非表示にしつつ画像を背景で表示 */
.phone-btn .custom-menu-caption.menu-caption{
  display:block;
  width:140px;       /* ←画像横幅に合わせて調整 */
  height:46px;       /* ←画像高さに合わせて調整 */
  background:var(--tel-img) center/contain no-repeat;
  text-indent:-9999px;   /* 文字を画面外へ */
  overflow:hidden;
  line-height:0;
  padding:0;
}

/* ── ② ドロワーメニュー側（<img> を横並び＆拡大） ─────────── */

.menu-drawer .menu-item-401 a{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px 0;
}

.menu-drawer .menu-item-401 .heamenu-img{
  width:160px;       /* モバイルで読みやすいサイズに */
  height:auto;
}

/* テキストが入っていない <a> でもタップ領域全体を確保 */
.menu-drawer .menu-item-401 a:hover{
  opacity:.8;
}

	

  .heamenu-tel {
    color: #fff !important;
    background-color: #1f2b66 !important;
    opacity: 1 !important;
    font-size: 13px !important;
    padding: 4px !important;
    border-radius: 10px !important;

  }


	  .heamenu-line {
    font-size: 13px !important;
    padding: 4px !important;
    font-weight: bold;
  }
	
	/* ヘッダーナビ内の星アイコンを非表示にする */
.navi-menu-button .menu-icon .fa-star{
  display:none !important;
}

	
	/* ───────── ベースレイアウト ───────── */
.menu-drawer{
  padding:24px 16px;                    /* 余白を増やして詰まり感を解消 */
}
.menu-drawer li{
  margin-bottom:14px;                   /* 各項目の上下間隔 */
  list-style:none;
}

/* ───────── 通常リンク（塾・フリースクール） ───────── */
.menu-drawer li a{
  display:block;
  font-size:1.05rem;                    /* 少し大きめ */
  font-weight:500;
  color:#222;
  text-decoration:none;
}
.menu-drawer li a:hover{
  opacity:.7;
}

/* ───────── CTA① 無料体験ボタン ───────── */
.menu-drawer .menu-item-390 a{          /* ID 390 = 無料体験 */
  background:#00aeef;
  color:#fff !important;
  text-align:center;
  padding:12px 0;
  border-radius:9999px;
  font-weight:600;
  letter-spacing:.03em;
  width:100%;
}
.menu-drawer .menu-item-390{ margin-bottom:20px; }

/* ───────── CTA② 電話ボタン（アイコン＋番号横並び） ───────── */
.menu-drawer .menu-item-401 a{
  display:flex;
  align-items:center;
  gap:10px;
  background:#f7f7f7;
  padding:12px 16px;
  border-radius:12px;
  width:100%;
}
.menu-drawer .menu-item-401 a:hover{ background:#ececec; }

.menu-drawer .menu-item-401 .heamenu-img{
  width:100%;           /* アイコンを程よい大きさに統一 */
  height:auto;
}


/* ───────── 小さい端末でフォントが大きすぎる場合の調整例 ───────── */
  .menu-drawer li a{ font-size:1rem; }
  .menu-drawer .menu-item-401 a::after{ font-size:1.1rem; }}




	
/************************************
**ヘッダー内調整
************************************/
.navi-in a {
    padding: 0 0.8em !important;
  }
	
/* フッター内の「無料体験に申し込む」ボタンを8割にする */
.mobile-footer-menu-buttons .navi-menu-button.menu-button a[href="https://pcdo-school.jp/free-input/"] {
    width: 100%; /* ボタンの幅を80%にする */
    margin: 0 auto; /* ボタンを中央に配置 */
}

/* フッター内の「電話」ボタンを8割にする */
.mobile-footer-menu-buttons .navi-menu-button.menu-button a[href="tel:0564-79-6400"] {
    width: 100%; /* ボタンの幅を80%にする */
    margin: 0 auto; /* ボタンを中央に配置 */
}

	
/* ボタン全体の高さを揃える */
.mobile-footer-menu-buttons .navi-menu-button.menu-button a {
    display: inline-block;
    width: 80%;                 /* 幅を8割に設定 */
    height: 50px;               /* ボタンの高さを固定（例: 50px） */
    line-height: 50px;          /* ボタンのテキストを中央に揃えるために高さに合わせる */
    text-align: center;         /* テキストを中央揃え */
    box-sizing: border-box;     /* パディングを含めてサイズ計算 */
}

/* アイコンをテキストと垂直方向で中央に揃える */
.mobile-footer-menu-buttons .navi-menu-button.menu-button a .custom-menu-icon {
    vertical-align: middle;     /* アイコンを垂直方向で中央に揃える */
    margin-right: 10px;         /* テキストとの間にスペースを確保 */
}

/* アイコンのサイズを調整 */
.mobile-footer-menu-buttons .navi-menu-button.menu-button a .custom-menu-icon .fa {
    font-size: 20px;            /* アイコンサイズの調整 */
    line-height: 50px;          /* 高さをアイコンに合わせて中央に配置 */
}
	
	
/* フッター内の「無料体験に申し込む」ボタンを8割にする */
.mobile-footer-menu-buttons .navi-menu-button.menu-button a[href="https://pcdo-school.jp/free-input/"] {
    font-size: 20px;            /* アイコンサイズの調整 */
}

/* フッター内の「電話」ボタンを8割にする */
.mobile-footer-menu-buttons .navi-menu-button.menu-button a[href="tel:0564-79-6400"] {
    font-size: 20px;            /* アイコンサイズの調整 */
}
	
}
.broken_link{
    text-decoration: none!important;
}

/************************************
** 固定ページの修正
************************************/
.post-11 .entry-title,
.post-81 .entry-title,
.post-63 .entry-title,
.post-181.entry-title,
.post-219 .entry-title,
.post-6300 .entry-title {
display: none;
}


.post-11 .date-tags,
.post-81 .date-tags,
.post-181 .date-tags,
.post-219 .date-tags,
.post-369 .date-tags,
.post-425 .date-tags,
.post-443 .date-tags,
.post-491 .date-tags,
.post-3 .date-tags,
.post-423 .date-tags,
.post-63 .date-tags {
display: none;
}

.post-63 .entry-title,
.post-81 .entry-title,
.post-181 .entry-title,
.post-425 .entry-title,
.post-491 .entry-title,
.post-3 .entry-title,
.post-443 .entry-title,
.post-423 .entry-title,
.post-5599 .entry-title {
text-align: center;
}

.post-2127 .article-header {
display: none;
}


/************************************
**サイト全体終了
************************************/

/************************************
**ヘッダー全体
************************************/
#navi .navi-in>ul>li {
    width: auto;
}
/************************************
**ヘッダー全体終了
************************************/

/************************************
**トップページの修正
************************************/
      .container {
        max-width: 100%;
        margin: 0 auto;
      }
      .h2-common{
        background-color: unset!important;
      }
      .h3-common{
        border: unset!important;
      }
      .h4-common{
        
      }
      /* Hero Section */
      .hero {
        background-color: #e9f7ff;
        padding: 0;
        position: relative;
        overflow: hidden;
        height: 600px;
        background-image: url("https://pcdo-school.jp/wp-content/uploads/2024/09/scholl_in2-scaled.webp");
        background-size: cover;
        background-position: center;
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .hero-center {
        background-color: rgba(255, 255, 255, 0.9);
        border-radius: 50%;
        width: 500px;
        height: 500px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: 20px;
        box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
        z-index: 2;
        position: relative;
      }
      .hero-center h2 {
        color: #00AEEF;
        font-size:  2em;
        margin-bottom: 10px;
      }
      .hero-center p {
        font-size: 1.1em;
        line-height: 1.3;
      }
     

/* Info Navigation Section - */
      .info-nav-section {
        padding: 30px 0;
        background-color: #fff;
      }

.jp_card_container_8475 {
    width: 100%;
    max-width: 1200px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    font-family: 'Hiragino Sans', 'Meiryo', sans-serif;
}

.jp_info_card_9632 {
    width: 100%;
    max-width: 500px;
    border-radius: 25px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
    position: relative;
    background-color: white;
}

.jp_card_image_wrapper_4721 {
    width: 100%;
    height: 280px;
    overflow: hidden;
    position: relative;
}

.jp_card_image_7863 {
    width: 100%;
    height: 100%;
    object-fit: cover;
}



      
      /* School List Section */
      .school-list {
        padding: 60px 0;
        background-color: white;
      }
      .section-title {
        text-align: center;
        margin-bottom: 40px;
        color: #333;
        position: relative;
      }
      .section-title h2 {
        font-size: 28px;
        display: inline-block;
        padding-bottom: 10px;
      }
      .section-title h2:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 60px;
        height: 3px;
        background-color: #00AEEF;
      }
      .school-grid {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 30px;
      }
      .school-card {
        border-radius: 10px;
        overflow: hidden;
        background-color: white;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        transition: transform 0.3s;
      }
      .school-card:hover {
        transform: translateY(-10px);
      }
      .school-image {
        height: 200px;
        overflow: hidden;
      }
      .school-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
      .school-content {
        padding: 20px;
      }
      .school-title {
        text-align: center;
        margin-bottom: 15px;
      }
      .school-title h3 {
        font-size: 22px;
        margin-bottom: 5px;
      }
      .orange-title {
        color: #FF9900;
      }
      .blue-title {
        color: #0066CC;
      }
      .pink-title {
        color: #FF6699;
      }
      .school-description {
        font-size: 14px;
        margin-bottom: 20px;
        min-height: 150px;
      }
      .school-link {
        display: block;
        text-align: center;
        padding: 10px;
        border-radius: 5px;
        font-weight: bold;
        color: white;
        transition: all 0.3s;
      }
      .school-link:hover {
        opacity: 0.9;
        transform: translateY(-2px);
      }
      .orange-btn {
        background-color: #FF9900;
      }
      .blue-btn {
        background-color: #0066CC;
      }
      .pink-btn {
        background-color: #FF6699;
      }
      
      /* Features Section */
      .features {
        padding: 60px 0;
        background-color: #e9f7ff;
      }
      .feature-content {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 40px;
      }
      .feature-text {
        flex: 1;
        padding-right: 40px;
        padding-left: 20px;
      }
      .feature-text h3 {
        font-size: 24px;
        color: #0066CC;
        margin-bottom: 20px;
        position: relative;
        padding-left: 30px;
      }
      .feature-text h3:before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 20px;
        height: 20px;
        background-color: #00AEEF;
        border-radius: 50%;
      }
      .feature-image {
        flex: 1;
        text-align: center;
      }
      .feature-image img {
        max-width: 100%;
        border-radius: 10px;
      }
      
      /* CTA Section */
      .cta-section {
        padding: 60px 0;
        text-align: center;
        background-color: white;
      }
      .cta-content {
        max-width: 800px;
        margin: 0 auto;
      }
.cta-container p {
  text-align: center;
}
p:has(> a.cta-section-btn) {
  text-align: center;
}


      .cta h2 {
        font-size: 28px;
        color: #333;
        margin-bottom: 20px;
      }
      .cta p {
        margin-bottom: 30px;
      }
      .cta-section-btn {
        display: inline-block;
        padding: 15px 40px;
        background-color: #00AEEF;
        color: white;
        border-radius: 50px;
        font-size: 18px;
        font-weight: bold;
        transition: all 0.3s;
      }
      .cta-section-btn:hover {
        background-color: #0091c7;
        transform: translateY(-3px);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
      }
      
      /* Location Section */
      .locations {
        padding: 60px 0;
        background-color: #f8f9fa;
      }
      .location-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
        margin-bottom: 30px;
      }
      .location-grid.second-row {
        grid-template-columns: repeat(3, 1fr);
        max-width: 900px;
        margin: 0 auto 30px;
      }
      .location-card {
        border-radius: 10px;
        overflow: hidden;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
        transition: transform 0.3s;
      }
      .location-card:hover {
        transform: translateY(-5px);
      }
      .location-card img {
        width: 100%;
        height: auto;
      }
      
      /* Features Carousel Section */
      .features-carousel {
        padding: 60px 0;
        background-color: #fff;
      }
      .features-subtitle {
        text-align: center;
        margin-bottom: 40px;
        background-color: #f0f9ff;
        padding: 10px 0px 0px 0;
      }
      .features-subtitle h3 {
        color: #00AEEF;
        font-size: 24px;
        font-weight: 600;
      }
      .features-slider {
        position: relative;
        max-width: 1100px;
        margin: 0 auto;
      }
      .feature-cards {
        display: flex;
        gap: 20px;
        padding: 20px 0;
      }
      .feature-card {
        flex: 1;
        border-radius: 10px;
        padding: 30px;
        position: relative;
        display: flex;
        flex-direction: column;
        height: 600px; /* Fixed height for all cards */
      }
      .feature-card.orange {
        background-color: #FFF7E6;
      }
      .feature-card.pink {
        background-color: #FFEAE6;
      }
      .feature-card.blue {
        background-color: #E6F6FE;
      }
      .card-number {
        font-size: 60px;
        font-weight: 700;
        margin-bottom: 10px;
        text-align: center;
        height: 70px; /* Fixed height */
      }
      .feature-card.orange .card-number {
        color: #FF9900;
      }
      .feature-card.pink .card-number {
        color: #FF6666;
      }
      .feature-card.blue .card-number {
        color: #00AEEF;
      }
      .card-heading {
        text-align: center;
        margin-bottom: 20px;
        height: 30px; /* Fixed height */
      }
      .card-heading h4 {
        font-size: 18px;
        font-weight: 600;
      }
      .feature-card.orange .card-heading h4 {
        color: #FF9900;
      }
      .feature-card.pink .card-heading h4 {
        color: #FF6666;
      }
      .feature-card.blue .card-heading h4 {
        color: #00AEEF;
      }
      .card-text {
        text-align: center;
        margin-top: 25px;
        font-size: 16px;
        line-height: 1.6;
        height: 80px; /* Fixed height for text container */
        overflow-y: auto; /* Allow scrolling if text is too long */
      }
      .card-image {
        text-align: center;
        height: 300px; /* Fixed height for image container */
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .card-image img {
        width: 300px;
        height: 300px;
        object-fit: cover;
        border-radius: 50%;
        /*border: 6px solid; */
        /*border-image: linear-gradient(to right, #FF9900, #FF6666, #00AEEF, #33CC33, #9966FF, #FF6699) 1; */
        /*border-image-slice: 1; */
      }
      .slider-dots {
        display: none;
      }
      .features-more {
        text-align: center;
        margin-top: 40px;
      }
      .more-link {
        display: inline-block;
        background-color: #00AEEF;
        color: white;
        padding: 15px 40px;
        border-radius: 50px;
        font-weight: 600;
        transition: all 0.3s;
      }
      .more-link:hover {
        background-color: #0091c7;
        transform: translateY(-3px);
      }
      .more-link span {
        margin-left: 5px;
      }
      
      
      /* Responsive */
      @media (max-width: 992px) {
        .hero-grid {
          grid-template-columns: 1fr;
          grid-template-rows: repeat(4, 250px);
        }
		  
      /* Hero Section */
      .hero-center {
        width: 300px;
        height: 300px;
      }
        .hero-center h2 {
        font-size: 1.4em;
      }
		  
        .hero-center p {
        font-size: 0.8em;
      }
		  
        .location-grid {
          grid-template-columns: 1fr 1fr;
        }
        .location-grid.second-row {
          grid-template-columns: 1fr 1fr 1fr;
        }
        .footer-content {
          grid-template-columns: 1fr 1fr;
        }
		  
        .card-text {
        overflow: unset;
      }
		  
		  
      }
 {}
      @media (max-width: 768px) {
        .school-grid,
        .feature-cards {
        display: block !important;
        }
        .location-grid,
        .location-grid.second-row {
          grid-template-columns: 1fr;
        }
        .feature-content {
          flex-direction: column;
        }
        .school-card,
        .feature-card {
          margin-bottom: 1em;
        }
        .feature-text {
          padding-right: 0;
          padding-left: 0;
          margin-bottom: 30px;
        }
        .footer-content {
          grid-template-columns: 1fr;
        }
    .jp_card_container_8475 {
        flex-direction: column;
        align-items: center;
    }
    
    .jp_info_card_9632 {
        max-width: 100%;
    }

      }


/************************************
**フリースクールの修正
************************************/
        /* メインビジュアル */
        .camp_main_visual {
            position: relative;
            overflow: hidden;
            height: 500px;
        }
        
        .camp_slider {
            display: flex;
            width: 100%;
            height: 100%;
        }
        
        .camp_slide {
            flex: 0 0 100%;
            background-size: cover;
            background-position: center;
            position: relative;
        }
        
        .camp_slide_content {
            position: absolute;
            top: 50%;
            right: 10%;
            transform: translateY(-50%);
            text-align: center;
            color: #fff;
            z-index: 2;
        }
        
        .camp_slide_title {
            font-size: 2.6em!important;
            font-weight: bold;
            margin-bottom: 15px;
            line-height: 1.3;
			margin-bottom: 0!important;
        }
        
        .camp_slide_text {
            font-size: 1em!important;
         /*max-width: 450px;        */
            margin-left: auto;
        }
        
        .camp_slide_nav {
            position: absolute;
            bottom: 20px;
            left: 0;
            right: 0;
            display: flex;
            justify-content: center;
            z-index: 3;
        }
        
        .camp_slide_nav_dot {
            width: 10px;
            height: 10px;
            border-radius: 50%;
            background-color: rgba(255, 255, 255, 0.5);
            margin: 0 5px;
            cursor: pointer;
        }
        
        .camp_slide_nav_dot.camp_active {
            background-color: #009fe8;
        }
        
        .camp_slide_arrow {
         /*position: absolute;         */
            top: 50%;
            transform: translateY(-50%);
            width: 50px;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: rgba(255, 255, 255, 0.7);
            border-radius: 50%;
            z-index: 3;
            cursor: pointer;
            font-size: 20px;
        }

         /*
        .camp_slide_arrow_prev {
            left: 20px;
        }
        
         .camp_slide_arrow_next {
            right: 20px;
        }
         */

      /* Responsive */
      @media (max-width: 768px) {
        .camp_slide_content {
        right: 0 !important;
        }

      }

        /* ミッションセクション */
        .camp_mission_section {
            display: flex;
            padding: 80px 0px;
            max-width: 1200px;
            margin: 0 auto;
        }
        
        .camp_mission_image {
            flex: 0 0 45%;
            position: relative;
        }
        
        .camp_mission_image img {
            width: 100%;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }
        
        .camp_mission_content {
            flex: 0 0 50%;
            padding-left: 60px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }
        
        .camp_mission_title {
            font-size: 2em!important;
            margin-bottom: 0!important;
			font-weight: unset!important;
            line-height: 1.5;
            position: relative;
            padding-left: 0!important;
        }
        
        .camp_philosophy {
            position: absolute;
            right: -20px;
            top: 0;
            bottom: 0;
            writing-mode: vertical-rl;
            text-orientation: mixed;
            color: #009fe8;
            font-size: 14px;
            letter-spacing: 2px;
        }
        
        .camp_mission_text {
            margin-bottom: 20px;
            font-size: 15px;
        }
        
      @media (max-width: 768px) {
        .camp_mission_section {
			  display: block !important;
			  padding: 80px 15px 10px;
        }

		  .camp_mission_content {
			  padding-left: 0px !important;
        }
		  
		  .camp_mission_title {
			  font-size: 1.6em !important;
			  padding-left: 0px !important;
			  margin-top: 0.5em;
        }
		 
		  .camp_philosophy {
			  padding-top: 1.6em !important;
        }
		  
      }

        /* 自分を拓くセクション */
        .camp_develop_section {
            padding: 80px 0px;
            max-width: 1200px;
            margin: 0 auto;
        }
        
        .camp_develop_content {
            display: flex;
            align-items: center;
            margin-bottom: 60px;
            gap: 40px;
        }
        
        .camp_develop_text {
            flex: 0 0 50%;
        }
        
        .camp_develop_text .camp_section_title,
        .camp_develop_text .camp_section_subtitle {
            text-align: left;
			font-weight: unset!important;
        }

        .camp_section_title {
            font-size: 2em!important;
            margin-bottom: 0!important;
            line-height: 1.5;
            padding:25px 25px 0 0 !important;
			font-weight: unset !important;
        }

        .camp_develop_text .camp_section_text {
            margin: 0;
            text-align: left;
        }
        
        .camp_develop_image {
            flex: 0 0 45%;
        }
        
        .camp_develop_image img {
            max-width: 100%;
            height: auto;
            border-radius: 10px;
        }

      @media (max-width: 768px) {
        .camp_develop_section {
			  display: block !important;
			  padding: 10px 15px;
        }

        .camp_develop_content {
			  display: block !important;
        }
		  
		  .camp_section_title {
			  font-size: 1.8em !important;
			  padding-left: 0px !important;
			  padding: 0px !important;
			  margin-top: 0.5em;
        }

        .camp_features {
			  display: block !important;
        }

      }
        
        /* 特徴セクション */
        .camp_features {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            max-width: 1200px;
            margin: 0 auto;
        }
        
        .camp_feature {
            flex: 0 0 30%;
            margin-bottom: 50px;
            text-align: center;
        }
        
        .camp_feature_image {
            margin-bottom: 20px;
            position: relative;
        }
        
        .camp_feature_image img {
                  /*  width: 100%; */
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }
        
        .camp_feature_icon {
            position: absolute;
            bottom: -30px;
            left: 50%;
            transform: translateX(-50%);
            width: 60px;
            height: 60px;
            border-radius: 50px !important;
        }
        
        .camp_feature_title {
            color: #009fe8;
            font-size: 18px;
            margin-bottom: 15px;
            margin-top: 40px;
            font-weight: bold;
        }
        
        .camp_feature_text {
            font-size: 14px;
            margin-bottom: 15px;
        }
        
        .camp_feature_result {
            font-weight: bold;
            font-size: 16px;
        }

      @media (max-width: 768px) {
        .camp_environment_section {
			  padding: 10px 15px !important;
        }

        .camp_environment_content {
			  display: block !important;
			  padding: 10px 15px;
        }

		   .camp_section_description{
			  margin-bottom: 0 !important;
        }

        .camp_slider_container img {
			   height: unset !important;
        }

        .camp_env_facility h3 {
			   font-size: 1.3em !important;
        }
		  
      }

        /* 学校環境セクション */
        .camp_environment_section,
        .camp_future_section,
        .camp_staff_section,
        .camp_curriculum_section,
        .camp_access_section {
            padding: 80px 50px;
            max-width: 1200px;
            margin: 0 auto;
        }

       .camp_staff_section {
            padding: 80px 0px;
        }

        .camp_environment_section {
            padding: 80px 0px;
        }

        .environmetnt_title {
            padding:0 0 !important;
        }

        .camp_admission_section {
            padding: 80px 50px;
            max-width: 1200px;
            margin: 0 auto 60px; /* 下部に余白を追加 */
            background-color: #f4f9fc;
        }
                
        .camp_section_text {
            max-width: 700px;
            margin: 0 auto 40px;
            font-size: 15px;
        }
        
        .camp_section_description {
            text-align: center;
            margin-bottom: 40px;
            font-size: 15px;
        }
        
        .camp_environment_content {
            display: flex;
            flex-wrap: wrap;
            gap: 40px;
        }
        
        .camp_environment_image {
            flex: 0 0 60%;
            position: relative;
        }
        
        .camp_slider_container {
            position: relative;
            width: 100%;
            border-radius: 10px;
            overflow: hidden;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }
        
        .camp_slider_container img {
            width: 100%;
            display: none;
            height: 400px;
            object-fit: cover;
        }
        
        .camp_slider_container img.camp_active_slide {
            display: block;
        }
        
        .camp_environment_info {
            flex: 0 0 35%;
        }
        
        .camp_env_facility {
            margin-bottom: 30px;
        }
        
        .camp_env_facility h3 {
            color: #009fe8;
            font-size: 1.6em;
            margin-bottom: 0px;
			padding: 12px 0 0 0;
        }
        
        .camp_env_facility ul {
            list-style: none;
            margin-top: 10px;
            padding: 0 !important;
        }
        
        .camp_env_facility li {
            margin-bottom: 5px;
            font-size: 18px !important;
        }

      @media (max-width: 768px) {

        .camp_access_section{
			  padding: 10px 15px !important;
        }
		  
        .camp_access_content{
			 display: block !important;
        }
		  
        .camp_access_title{
			     margin-top: 1.2em !important;
        }
		  
        .camp_curriculum_section {
			  padding: 10px 15px !important;
        }
		  
        .camp_admission_section {
			  padding: 10px 15px !important;
        }

        .camp_admission_buttons {
			  display: block !important;
			  text-align: center;
			  margin: 40px 0;
        }

        .camp_btn_blue {
			margin: 10px 0;
			font-size: 1.2em !important;
        }


.camp_admission_table table {
    border: none;
    background-color: transparent;
}
       
.camp_admission_table tbody {
    display: block;
}
       
.camp_admission_table tr {
    display: block;
    border: 1px solid #ddd;
    margin-bottom: 20px;
    background-color: #f9f9f9;
}
		  
.camp_admission_table th,
.camp_admission_table td {
    display: block;
    width: 100% !important;
    box-sizing: border-box;
    border: none;
}
       
.camp_admission_table th {
    text-align: center !important;
    font-size: 1em; !important;
    padding: 15px 10px;
    background-color: #f0f0f0;
    border-bottom: 1px solid #ddd;
}
       
.camp_admission_table td {
			  font-size: 1em !important;
    padding: 15px;
    background-color: #fff;
}
		  
		  
            .camp_curriculum_table {
                overflow-x: auto; /* 横スクロール可能に */
            }
            
            .camp_curriculum_table table {
                min-width: 700px; /* 最小幅を設定 */
                table-layout: fixed;
            }
            
            .camp_curriculum_table th:first-child,
            .camp_curriculum_table td:first-child {
                width: 120px;
                min-width: 120px;
            }
            
            .camp_curriculum_table th:not(:first-child),
            .camp_curriculum_table td:not(:first-child) {
                width: 116px; /* (700px - 120px) / 5 = 116px */
            }

		  
		  
		  
		  }
		  
        /* 入学案内テーブル */
        .camp_admission_table {
            margin-bottom: 40px;
        }
        
        .camp_admission_table table {
            width: 100%;
            border-collapse: collapse;
        }
        
        .camp_admission_table th,
        .camp_admission_table td {
            padding: 15px 20px;
            border: 1px solid #ddd;
            text-align: left;
        }
        
        .camp_admission_table th {
            background-color: #f9f9f9;
            width: 25%;
            font-weight: normal;
        }

        .camp_admission_table td {
            background-color: #ffffff !important;
        }
        
        .camp_sub_section_title {
            font-size: 22px;
            margin: 40px 0 0 !important;
        }
        
        .camp_admission_buttons {
            display: flex;
            justify-content: center;
            gap: 20px;
            margin-top: 40px;
        }
        
        .camp_btn_blue {
            background-color: #009fe8;
            color: white;
            padding: 12px 25px;
            border-radius: 5px;
            display: inline-block;
            font-weight: bold;
            font-size: 14px;
            transition: background-color 0.3s;
        }
        
        .camp_btn_blue:hover {
            background-color: #0080c0;
        }
        
        .camp_center_button {
            text-align: center;
            margin-top: 40px;
        }
        
        /* 放課後セクション */
        .camp_after_school_section {
            padding: 80px 0px;
            max-width: 1200px;
            margin: 0 auto;
        }
        
        .camp_after_school_content {
            max-width: 800px;
            margin: 0 auto;
        }
        
        .camp_section_header {
            text-align: center;
             /* margin-bottom: 40px; */
        }

        .camp_after_school_text {
            margin-bottom: 30px;
            text-align: center;
        }
        
        .camp_after_school_image {
            margin-bottom: 30px;
        }
        
        .camp_after_school_image img {
            width: 100%;
            border-radius: 10px;
			object-fit: cover;
			height: 30vh;
        }

      @media (max-width: 768px) {
        .camp_after_school_section {
			  padding: 10px 15px !important;
        }

      }
		  
        /* 未来を拓くセクション */
        .camp_future_section {
            padding: 80px 50px;
            max-width: 1200px;
            margin: 0 auto;
			background-color: #f4f9fc;
        }
        
        .camp_future_content {
            display: flex;
            align-items: center;
            margin-bottom: 60px;
            gap: 40px;
        }
        
        .camp_future_text {
            flex: 0 0 45%;
        }
        
        .camp_future_description {
            font-size: 15px;
            line-height: 1.8;
        }
        
        .camp_future_main_description {
            text-align: center;
            margin-bottom: 40px;
            font-size: 15px;
        }
        
        .camp_future_diagram {
            flex: 0 0 50%;
            text-align: center;
        }
        
        .camp_future_diagram img {
            max-width: 100%;
        }
        
        .camp_skills_container {
            display: flex;
            flex-wrap: wrap;
            gap: 30px;
            justify-content: center;
        }
        
        .camp_skill_column {
            flex: 0 0 calc(33.333% - 20px);
            min-width: 300px;
        }
        
        .camp_skill_card {
           /*  background-color: #f9f9f9; */
            border-radius: 10px;
            overflow: hidden;
           /*  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); */
        }
        
        .camp_skill_image {
            position: relative;
        }
        
        .camp_skill_image img:first-child {
            width: 100%;
        }
        
        .camp_skill_icon {
            position: absolute;
            bottom: -30px;
            left: 50%;
            transform: translateX(-50%);
            width: 60px;
            height: 60px;
            border-radius: 50%;
            border: 4px solid white;
        }
        
        .camp_skill_title {
            text-align: center;
            color: #009fe8;
            font-size: 18px;
            margin: 40px 0 15px;
            min-height: 54px; /* 最小の高さを固定 */
            display: flex;
            justify-content: center;
            align-items: center;
            line-height: 1.5;
            padding: 0 10px;
        }
        
        .camp_skill_details {
            padding: 0 20px 20px;
        }
        
        .camp_skill_subtitle {
            font-size: 16px;
            margin: 15px 0 5px;
        }
        
      @media (max-width: 768px) {
        .camp_future_section {
			  padding: 10px 15px !important;
        }
		  
        .camp_section_title {
			  text-align: center !important;
        }
		  
        .camp_section_subtitle {
			  text-align: center !important;
        }
		  
      }
		  
        /* カリキュラムセクション */
        .camp_curriculum_table {
            overflow-x: auto;
            margin-bottom: 40px;
        }
        
        .camp_curriculum_table table {
            width: 100%;
            border-collapse: collapse;
        }
        
        .camp_curriculum_table th,
        .camp_curriculum_table td {
            padding: 12px;
            border: 1px solid #ddd;
            text-align: center;
        }
        
        .camp_curriculum_table th {
            background-color: #f9f9f9;
        }
        
        .camp_center {
            text-align: center;
        }
        
        .camp_subject_self {
            background-color: #ffe5e5;
        }
        
        .camp_subject_english {
            background-color: #e5f1ff;
        }
        
        .camp_subject_music {
            background-color: #fff7e5;
        }
        
        .camp_subject_math {
            background-color: #e5ffe5;
        }
        
        .camp_subject_theme {
            background-color: #f0e5ff;
        }
        
        .camp_subject_project {
            background-color: #ffe5f7;
        }
        
        .camp_subject_free {
            background-color: #e5ffff;
        }
		  
/* ── ★ 追加：国語・理科・社会・休憩ラベル ───────────── */
.camp_subject_japanese { background-color: #fff0e0; } /* 国語＝薄オレンジ */
.camp_subject_science  { background-color: #e8fff0; } /* 理科＝薄ミント   */
.camp_subject_social   { background-color: #e8f0ff; } /* 社会＝薄スカイ   */

.camp_break {
    color: #0099ff;
    font-weight: bold;
}
        

        /* スタッフセクション */
        .camp_staff_image {
            text-align: center;
            margin-bottom: 30px;
        }
        
        .camp_staff_image img {
            max-width: 100%;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }
        
      @media (max-width: 768px) {
        .camp_staff_section {
			  padding: 10px 15px !important;
        }
		  
      }
		    
        /* アクセスセクション */
        .camp_access_content {
            display: flex;
            flex-wrap: wrap;
            gap: 40px;
            align-items: center;
            margin-bottom: 1.4em!important;
        }
        
        .camp_access_image {
            flex: 0 0 45%;
        }
        
        .camp_access_image img {
            width: 100%;
            border-radius: 10px;
            height: 300px !important;
            object-fit: cover !important;
            vertical-align: middle !important;
        }
        
        .camp_access_info {
            flex: 0 0 45%;
        }
        
        .camp_access_title {
            font-size: 20px;
            margin-bottom: 0.8em!important;
            color: #009fe8;
			padding: 0!important;
        }
        
        .camp_access_details {
            list-style: none;
            margin-top: 20px;
        }

        .camp_access_info ul {
			padding: 0!important;
        }
        
        .camp_access_details li {
            display: flex;
            align-items: center;
            margin-bottom: 15px;
        }
        
        .camp_access_details svg {
            margin-right: 10px;
            color: #009fe8;
        }
        
/************************************
**早稲田進学予備校岡崎校の修正
************************************/
        /* メインビジュアル */
        .kawai2025_hero {
            position: relative;
            height: 500px;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            color: white;
            overflow: hidden;
        }

        .kawai2025_hero img {
            position: absolute;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: -1;
            filter: brightness(0.7);
        }

        .kawai2025_hero_content {
            max-width: 800px;
            padding: 2rem;
            background-color: rgba(0, 0, 0, 0.5);
            border-radius: 10px;
        }

        .kawai2025_hero h1 {
            font-size: 2.5rem;
            margin-bottom: 1rem;
        }

        .kawai2025_hero p {
            font-size: 1.2rem;
            margin-bottom: 1.5rem;
        }

        .kawai2025_award_badge {
            background-color: #fc0;
            color: #333;
            padding: 5px 10px;
            border-radius: 5px;
            font-weight: bold;
            display: inline-block;
            margin-top: 10px;
        }

        /* 特典セクション */

        .kawai2025_kawaijuku_benefits_sectione_title {
            padding: 4rem 2rem;
            background-color: #f5f5f5;
			text-align: center !important;
			margin-bottom: 0px !important;
        }

        .kawai2025_benefits {
            padding: 4rem 2rem;
            background-color: #f5f5f5;
        }

        .kawai2025_benefits h2 {
            text-align: center;
            margin-bottom: 2rem;
            font-size: 2rem;
        }

        .kawai2025_benefits_container {
            display: flex;
            justify-content: space-around;
            flex-wrap: wrap;
            max-width: 1200px;
            margin: 0 auto;
        }

        .kawai2025_benefit_card {
            background-color: white;
            border-radius: 10px;
            padding: 2rem;
            margin: 1rem;
            width: 300px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }

        .kawai2025_benefit_card h3 {
            color: #003d7d;
            margin-bottom: 1rem;
        }

        /* 学習の仕組みセクション */
        .kawai2025_learning_system {
            padding: 4rem 0rem;
        }

        .kawai2025_learning_system h2 {
            text-align: center;
            margin-bottom: 2rem;
            font-size: 2rem;
        }

        .kawai2025_learning_features {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            max-width: 1200px;
            margin: 0 auto;
        }

        .kawai2025_feature {
            text-align: center;
            width: 45%;
            margin: 1rem;
        }

        .kawai2025_feature h3 {
            margin-bottom: 0.5em!important;
        }

        .kawai2025_feature_p {
            margin-bottom: 0!important;
        }

        .kawai2025_feature img {
            width: 100%;
			height: 50%;
            object-fit: cover;
            border-radius: 10px;
            margin-bottom: 1rem;
        }

        .kawai2025_feature ul {
            list-style: none;
        }

        .kawai2025_tools_materials {
            margin-bottom: 5% !important;
        }

.kawai2025_youtube_container {
    max-width: 100%;
    margin: 0 auto;
    padding: 20px 0;
    text-align: center;
}

.kawai2025_youtube_wrapper {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    position: relative;
}

.video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9のアスペクト比 */
    margin: 0 auto;
	margin-top: 0 !important;
}

.video {
    position: relative;
    width: 100%;
    height: 100%;
	margin-top: 0 !important;
}

.kawai2025_youtube_iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

   /* 教科セクション */
.kawai2025_subjects {
    padding: 4rem 2rem;
    background-color: #f5f5f5;
}

.kawai2025_subjects h2 {
    text-align: center;
    margin-bottom: 2rem;
    font-size: 2rem;
}

.kawai2025_subjects_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; /* space-aroundからspace-betweenに変更 */
    max-width: 1200px;
    margin: 0 auto;
}

.kawai2025_subject_card {
    background-color: white;
    border-radius: 10px;
    padding: 2rem;
    margin: 1rem 0; /* 上下のみマージンを設定 */
    width: 48%; /* PCでは2列レイアウト用に48%幅 */
    min-width: 300px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.kawai2025_subject_card h3 {
    color: #003d7d;
    margin-bottom: 1rem;
    font-size: 1.5rem;
}

.kawai2025_subject_card ul {
    list-style-position: inside;
    margin-left: 1rem;
}
        /* 料金プランセクション */
        .kawai2025_pricing {
            padding: 4rem 2rem;
        }

        .kawai2025_pricing h2 {
            text-align: center;
            margin-bottom: 1rem;
            font-size: 2rem;
        }

        .kawai2025_pricing_subtitle {
            text-align: center;
            margin-bottom: 2rem;
            font-size: 1.2rem;
            color: #e60000;
            font-weight: bold;
        }

        .kawai2025_plans {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            max-width: 1200px;
            margin: 0 auto;
        }

        .kawai2025_plan_card {
            background-color: white;
            border: 2px solid #003d7d;
            border-radius: 10px;
            padding: 2rem;
            margin: 1rem;
            width: 300px;
            text-align: center;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }

        .kawai2025_plan_card h3 {
            color: #003d7d;
            font-size: 1.5rem;
            margin-bottom: 1rem;
        }

        .kawai2025_price {
            font-size: 2rem;
            font-weight: bold;
            color: #336699;
            margin-bottom: 0.5rem;
        }

        .kawai2025_monthly_price {
            font-size: 1.2rem;
            color: #666;
            margin-bottom: 1rem;
        }

        .kawai2025_cta_button {
            display: inline-block;
            background-color: #336699;
            color: white;
            padding: 1rem 2rem;
            border-radius: 50px;
            text-decoration: none;
            font-weight: bold;
            margin-top: 1rem;
            transition: background-color 0.3s;
        }

        .kawai2025_cta_button:hover {
            background-color: #254980;
        }

        .kawai2025_special_note {
            margin-top: 2rem;
            text-align: center;
            color: #e60000;
        }
/* 合格者の声セクション */
        .kawai2025_testimonials {
            padding: 4rem 2rem;
            background-color: #f5f5f5;
        }

        .kawai2025_testimonials h2 {
            text-align: center;
            margin-bottom: 2rem;
            font-size: 2rem;
        }

        .kawai2025_testimonials_container {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            max-width: 1200px;
            margin: 0 auto;
        }

        .kawai2025_testimonial {
            background-color: white;
            border-radius: 10px;
            padding: 2rem;
            margin: 1rem;
            width: 45%;
            min-width: 300px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }

        .kawai2025_testimonial h3 {
            color: #003d7d;
            margin-bottom: 1rem;
        }

        .kawai2025_testimonial p {
            font-style: italic;
        }

        .kawai2025_highlight {
            background-color: #ffffcc;
            padding: 0 5px;
        }

        /* FAQ セクション */
        .kawai2025_faq {
            padding: 4rem 2rem;
        }

        .kawai2025_faq h2 {
            text-align: center;
            margin-bottom: 2rem;
            font-size: 2rem;
        }

        .kawai2025_faq_container {
            max-width: 800px;
            margin: 0 auto;
        }

        .kawai2025_faq_item {
            margin-bottom: 1.5rem;
            border-bottom: 1px solid #ddd;
            padding-bottom: 1.5rem;
        }

        .kawai2025_faq_question {
            font-weight: bold;
            margin-bottom: 0.5rem;
            display: flex;
            align-items: flex-start;
        }

        .kawai2025_faq_question span {
            color: #003d7d;
            margin-right: 0.5rem;
            font-weight: bold;
        }

        .kawai2025_faq_answer {
            margin-left: 1.5rem;
            display: flex;
            align-items: flex-start;
        }

        .kawai2025_faq_answer span {
            color: #e60000;
            margin-right: 0.5rem;
            font-weight: bold;
        }

        /* 推奨環境セクション */
        .kawai2025_requirements {
            padding: 4rem 2rem;
            background-color: #f5f5f5;
        }

        .kawai2025_requirements h2 {
            text-align: center;
            margin-bottom: 2rem;
            font-size: 2rem;
        }

        .kawai2025_kawaijuku_benefits_container {
                align-items: center !important;
				display: flex !important;
				justify-content: center !important;
				max-width: 1200px !important;
				margin: 0 auto !important;
				text-align: center !important;
        }
            
        .kawai2025_kawaijuku_benefit_item {
                width: 80% !important;
                margin-bottom: 30px !important;
				width: 30%; display: flex !important;
				flex-direction: column !important;
				align-items: center !important;
        }


        .kawai2025_requirements_container {
            max-width: 800px;
            margin: 0 auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-around;
        }

        .kawai2025_requirement_box {
            background-color: white;
            border-radius: 10px;
            padding: 2rem;
            margin: 1rem;
            width: 45%;
            min-width: 300px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }

        .kawai2025_requirement_box h3 {
            color: #003d7d;
            margin-bottom: 1rem;
        }

        .kawai2025_requirement_box ul {
            list-style-position: inside;
        }


        /* レスポンシブ対応 */
        @media (max-width: 768px) {
            .kawai2025_hero {
                height: unset;
            }

            .kawai2025_hero h1 {
                font-size: 2rem;
            }

            .kawai2025_benefit_card, .kawai2025_feature, .kawai2025_subject_card, .kawai2025_plan_card, .kawai2025_testimonial, .kawai2025_requirement_box {
                width: 90%;
            }
            
            /* 特典セクションを縦並びに */
            .kawai2025_kawaijuku_benefits_container {
                align-items: center !important;
				display: block !important;
				max-width: 1200px !important;
				margin: 0 auto !important;
				text-align: center !important;
            }
            
            .kawai2025_kawaijuku_benefit_item {
                width: 100% !important;
                margin-bottom: 30px !important;
				display: flex !important;
				flex-direction: column !important;
				align-items: center !important;
            }

            .kawai2025_header {
                flex-direction: column;
                text-align: center;
            }

            .kawai2025_nav ul {
                margin-top: 1rem;
                justify-content: center;
            }

            .kawai2025_nav ul li {
                margin: 0 10px;
            }
			
.video-container .video{
    margin-top: 0;
    overflow: unset;

}


   /* 教科セクション */
			
			.kawai2025_subjects {
                padding: 1rem;
			}
			
    .kawai2025_subjects_container {
        display:  block;
    }
    .kawai2025_subject_card {
        width: 100%; /* モバイル表示では1列 */
        margin: 1rem 0;
		padding: 0;
    }
	.kawai2025_subject_card ul {
        padding: 0 1rem 1rem;
        margin-left: 0;
	}		
			
	.kawai2025_tools_materials {
        margin-bottom: 30% !important;
	}

	.kawai2025_feature_tools_materials {
        object-fit: contain !important;
	}

			
        /* 料金プランセクション */
        .kawai2025_pricing {
            padding: 0rem;
        }

			.kawai2025_special_note {
            margin-top: 0rem;
        }

			
			/* 合格者の声セクション */
			.kawai2025_testimonials {
            padding: 1rem 0rem;
        }
			.kawai2025_testimonial{
            padding: 0.8rem;
        }

			
        /* FAQ セクション */
        .kawai2025_faq {
            padding: 1rem 0rem;
        }
			
        .kawai2025_faq_answer {
            margin-left: 0rem;
        }
			
			
			
        }
        
        /* アコーディオン用スタイル */
        .kawai2025_accordion {
            margin-bottom: 10px;
            /*border: 1px solid #ddd; */
            border-radius: 5px;
            overflow: hidden;
        }
        
        .kawai2025_accordion_header {
            background-color: #f8f9fa;
            padding: 15px;
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-weight: bold;
            border-bottom: 1px solid #ddd;
        }
        
        .kawai2025_accordion_header:hover {
            background-color: #e9ecef;
        }
        
        .kawai2025_accordion_header::after {
            content: '+';
            font-size: 20px;
            color: #003d7d;
        }
        
        .kawai2025_accordion_header.kawai2025_active::after {
            content: '-';
        }
        
        .kawai2025_accordion_content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease;
            background-color: white;
            padding: 0 15px;
        }
        
        .kawai2025_accordion_content.kawai2025_active {
            max-height: 500px;
            padding: 15px;
        }



/************************************
** 無料相談フォームのデザイン
************************************/
/* Contact Form 7 カスタマイズ用 */
/* クラス名「v68d9-」で衝突を防ぎます */
/* --- v68d9- で始まるクラス --- */

.v68d9-container {
  max-width: 600px;
  margin: 0 auto;
  padding: 20px;
  font-size: 1.2rem;
  line-height: 1.6;
}

/* ステップインジケーター */
.v68d9-step-indicator {
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-bottom: 20px;
  padding: 0;
}

.v68d9-step-item {
  display: flex;
  align-items: center;
  color: #999;
  font-size: 1.2rem;
}

.v68d9-step-number {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  background-color: #ccc;
  border-radius: 50%;
  color: #fff;
  margin-right: 8px;
  font-size: 1.2rem;
  font-weight: bold;
}

.v68d9-active .v68d9-step-number {
  background-color: #007bff;
}

/* タイトル・サブタイトル */
.v68d9-title {
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 0.8em;
  text-align: center;
}

.v68d9-subtitle {
  margin: 0.5em 0 0.2em;
  font-weight: bold;
  font-size: 1.3rem;
  text-align: center;
}

/* セクション */
.v68d9-section {
  margin-bottom: 1.5em;
}

/* 入力フィールド */
.v68d9-date,
.v68d9-input,
.v68d9-textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
  margin-bottom: 0.5em;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 1.1rem;
}

/* プルダウン用（select）のスタイル */
.v68d9-time {
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
  margin-bottom: 0.5em;
  font-size: 1.1rem;
  color: #666; /* 初期は薄い文字色 */
}
.v68d9-time option {
  color: #666;
}

/* 日付と時間を横並びに */
.v68d9-date,
.v68d9-time {
  display: inline-block;
  width: calc(100% - 0px);
  margin-right: 10px;
}

/* ラジオボタン */
.v68d9-radio {
  margin-right: 10px;
}

/* テキストエリア */
.v68d9-textarea {
  min-height: 80px;
  resize: vertical;
}

/* 選択情報表示枠 */
.v68d9-selected-info {
  padding: 10px 0;
  margin-bottom: 1em;
  border-bottom: 1px solid #ddd;
  text-align: center;
}

/* ボタンラップ */
.v68d9-button-wrap {
  text-align: center;
  margin-top: 1em;
}

/* ボタン */
.v68d9-next-step,
.v68d9-prev-step,
.v68d9-submit {
  background-color: #aaa;
  color: #fff;
  border: none;
  padding: 0.8em 2em;
  border-radius: 4px;
  cursor: pointer;
  font-size: 1rem;
  text-decoration: none;
  margin: 0.5em auto;
  display: inline-block;
}

.v68d9-next-step:hover,
.v68d9-prev-step:hover,
.v68d9-submit:hover {
  background-color: #0056b3;
}

/* ラベル */
.v68d9-label {
  font-weight: bold;
  margin-bottom: 0.5em;
  display: block;
  text-align: left;
}



/************************************
** 無料相談フォームのデザイン終わり
************************************/
/************************************
** 無料相談申し込み完了フォームのデザイン
************************************/

.thanks-container {
  max-width: 600px;
  margin: 0 auto;
  padding: 20px;
  font-size: 1rem;
  line-height: 1.6;
}

.thanks-alert {
  font-weight: bold;
  color: #d00;
  font-size: 1.1rem;
  margin-bottom: 1em;
}

.thanks-container hr {
  margin: 1.5em 0;
}

.thanks-container ol,
.thanks-container ul {
  margin-left: 1.2em;
}

.thanks-container strong {
  font-weight: bold;
}

/************************************
** 無料相談申し込み完了フォームのデザイン終わり
************************************/


/************************************
** 運営会社・グループ情報のデザイン
************************************/
    .access-section-line {
        border-bottom: 2px solid #c8c9ca;
        margin-bottom: 5% !important;
    }

    .access-section {
        margin: 0 auto;
        padding: 20px;
        box-sizing: border-box;
    }

    .access-section-ba-co {
        background-color: #f0f8ff !important;
    }

    .pu-title {
      text-align: center;
      font-size: 28px;
      margin-bottom: 5px;
      margin-top: 2%;
      background-color: #fff !important;
  }
    
    .pu-title-ba-co {
        background-color: #f0f8ff !important;
    }

    .shop-mapj-ba {
        background-color: #f0f8ff !important;
    }

    .access-title {
        text-align: center;
        font-size: 28px;
        color: #654321;
        margin-bottom: 10px;
    }
    .access-subtitle {
        text-align: center;
        font-size: 16px;
        color: #555;
        margin-bottom: 30px;
    }
    .access-content {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: 4%;

    }
    .access-info {
        width: 100%;
        max-width: 45%;
    }
    .access-map {
        width: 100%;
        max-width: 50%;
    }
    .info-section {
        margin-bottom: 20px;
    }
    .info-title {
        font-size: 18px;
        color: #ff69b4;
        margin-bottom: 10px;
    }
    .info-item {
        margin-bottom: 10px;
    }
    .info-label {
        font-weight: bold;
        margin-right: 10px;
    }
    .map-container {
        position: relative;
        width: 100%;
        padding-bottom: 75%; /* 4:3 Aspect Ratio */
        height: 0;
        overflow: hidden;
    }
    .map-container iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }




@media (max-width: 768px) {
  .feature-cards {
  display: block !important;
  }
  .pu-section {
    padding: 0 10px;
}
.pu-title {
    font-size: 24px;
}
.pu-subtitle {
    font-size: 12px;
    margin-bottom: 15px;
}
.pu-banner {
margin-bottom: 5%;
}
.pu-banner-grid {
    display: block !important;
    grid-template-columns: 1fr;
    gap: 15px;
}
.pu-banner h2 {
    font-size: 18px;
}
.pu-banner p {
    font-size: 12px;
}
.pu-treatment-type {
    font-size: 10px;
    padding: 3px 8px;
}
.pu-price-tag {
    font-size: 10px;
    padding: 3px 8px;
}

.flow-section-scroll-box {
        width: 100%;
    }
.flow-section-scroll {
    display: block;
    }

.image-container {
    flex-direction: column;
}
.image-item {
    width: 100%;
    margin-bottom: 20px;
}
.reason-card {
    width: 100%;
}
.content-grid {
    grid-template-columns: repeat(2, 1fr);
}
.contact-grid {
    grid-template-columns: 1fr;
}
.access-content {
    flex-direction: column;
}
.access-info, .access-map {
    max-width: 100%;
}

.unique-20250108-overlay-card-section {
flex-direction: column; /* 横並びから縦並びに変更 */
gap: 15px; /* カード間の隙間を調整 */
}

.unique-20250108-overlay-card {

}

.unique-20250108-overlay-content {
left: 10px; /* 左の余白を縮小 */
padding: 8px 15px; /* パディングを調整 */
}

.unique-20250108-overlay-title {
font-size: 1.2rem; /* タイトルのフォントサイズを縮小 */
}


}


/************************************
** 運営会社・グループ情報のデザイン終わり
************************************/

/************************************
** ニュースセクションのデザイン開始
************************************/
.sec_20240911{
    margin: 3% 0 !important;
}

.back_pain_title_a1b2c_bagre {
  text-align: center;
  color: #333;
  font-size: 24px;
  margin-bottom: 20px;
  background-color: #e6f3ef !important;
}

.back_pain_title_a1b2c_bagre::after {
  content: '';
  display: block;
  width: 100px;
  height: 3px;
  background-color: #2e8b57;
  margin: 10px auto 0;
}

.back_pain_title_a1b2c_bagra {
  text-align: center;
  color: #333;
  font-size: 24px;
  margin-bottom: 20px;
  background-color: #f5f6f7 !important;
}

.back_pain_title_a1b2c_bagra::after {
  content: '';
  display: block;
  width: 100px;
  height: 3px;
  background-color: #2e8b57;
  margin: 10px auto 0;
}

.back_pain_title_a1b2c_bawhi {
  text-align: center;
  color: #333;
  font-size: 24px;
  margin-bottom: 20px;
  background-color: #fff !important;
}

.back_pain_title_a1b2c_bawhi::after {
  content: '';
  display: block;
  width: 100px;
  height: 3px;
  background-color: #2e8b57;
  margin: 10px auto 0;
}

.back_pain_title_a1b2c_babei {
  text-align: center;
  color: #333;
  font-size: 24px;
  margin-bottom: 20px;
  background-color: #f9f7f2 !important;
}

.back_pain_title_a1b2c_babei::after {
  content: '';
  display: block;
  width: 100px;
  height: 3px;
  background-color: #2e8b57;
  margin: 10px auto 0;
}

.content-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    margin: 0 auto;
        }
        .content-item {
            background: #fff;
            border-radius: 5px;
            overflow: hidden;
            box-shadow: 0 2px 5px rgba(0,0,0,0.1);
        }
        .content-image {
            width: 90%;
            height: 200px;
            object-fit: cover;
            margin: auto;
            display: block;
        }
        .content-info {
            padding: 15px;
        }

        .content-date {
            font-size: 12px;
            color: #888;
        }
        .content-category {
            display: inline-block;
            padding: 2px 8px;
            background-color: #e0e0e0;
            color: #333;
            font-size: 12px;
            border-radius: 3px;
            margin-left: 10px;
        }
        .content-title {
            font-size: 16px;
            margin: 10px 0;
        }
        .content-excerpt {
            font-size: 14px;
            color: #666;
            display: -webkit-box;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .view-more {
            text-align: center;
            margin-bottom: 1%;
        }
        .view-more-btn {
            display: inline-block;
            padding: 10px 20px;
            background: #FF9900;
            color: white !important;
            text-decoration: none;
            border-radius: 5px;
            transition: all 0.3s;
        }
        .view-more-btn:hover {
            opacity: 0.8; /* 少し薄くする */
            color: #fff;
        }

@media (max-width: 768px) {
  .sec_20240911{
    margin: 5% 0 !important;
  }
  .back_pain_container_x7y9z {
  }

  .back_pain_title_a1b2c {
    font-size: 18px;
    padding: 15px;
    margin-bottom: 0;
    background-color: #e6f3ef;
  }

  .back_pain_title_a1b2c::after {
    display: none;
  }
        .content-grid {
            grid-template-columns: 1fr;
        }
}
/************************************
** ニュースセクションのデザイン終わり
************************************/


/************************************
** 固定ページで画像と文字が混ざるの解消デザイン終わり
************************************/
.certificate {margin:3rem 0;}
.certificate img {max-width:100%;height:auto;display:block;margin:0 auto;}


/************************************
** 固定ページで画像と文字が混ざるの解消デザイン終わり
************************************/