/*slider.css*/
/* assets/css/slider.css */

/* ──────────────────────────────────────
   スライダーのレスポンシブ設定 
   ────────────────────────────────────── */
   /* グローバルなスライダー要素の調整 */
   /*.hero-slider,
   .custom-slider {
     width: 100% !important;
     max-width: 100% !important;
     margin-top: 0 !important;
     margin-left: 0 !important;
     margin-right: 0 !important;
     padding: 0 !important;
   }*/
   
   /*.hero-slider {
     margin-bottom: 25px;
     position: relative;
     max-height: 366px;
     min-height: 50px;
     overflow: hidden; 
     
     height: 7rem; 
   }*/
   
   .grid-section .image-card {
     margin-bottom: 20px;
   }
   
   .custom-slider {
    position: relative; 
     top: 0; left: 0; right: 0; bottom: 0;
     width: 100%;
     padding-bottom: 45%; 
     
     overflow: hidden; 
   }
   
   .custom-slider .slide {
     position: absolute;
     top: 0; left: 0; right: 0; bottom: 0;
     width: 100%; 
     /*height: 100%; */
     opacity: 0;
     transition: opacity 0.5s ease-in-out; 
     background-repeat: no-repeat;
     background-size: cover; 
     background-position: center;
     display: flex;
     align-items: center; 
     justify-content: center;
     min-height: 50px;  
   }
   
   .custom-slider .slide.active {
     opacity: 1;
     z-index: 1;
   }
   
   /* 共通テキストスタイル */
   .slide-text {
     font-family: 'Noto Serif JP', serif;
     position: relative; /* flexboxの子要素として適切に配置 */
     text-align: center;
     font-weight: bold;
     line-height: 1.3;
     white-space: normal;
     padding: 0 10px; /* 小さい画面でテキストが端に寄りすぎるのを防ぐ */
     box-sizing: border-box; /* paddingを含めて幅を計算 */
     /*max-width: 90%;*/ /* テキストが広がりすぎないように制限 */
     width: 100%; /* p要素の width: 100% に合わせる */
   }
   
   /* Slide 5: 画像ロゴのスライド専用スタイル (Concrete5のインラインCSSを完全に移行) */
   .slide-5 .slide-text-5 {
     display: flex;
     align-items: center;
     justify-content: center;
     height: 100%; /* 親要素の高さに合わせる */
     width: auto; /* 画像のサイズに合わせるため auto に */
     max-width: 80%; /* 画像ロゴが広がりすぎないように制限 */
   }
   .slide-5 .slide-text-5 img {
     /*max-width: 100%;
     height: auto;*/
   }
   .slide-text-5 img {
       max-width: 100%;     /* ロゴの幅（調整可能） */
       height: auto;
   }
   
   /* テキストの飾り*/
   .shadow_white{
     color:#12295b;
     text-shadow:#ffffff 2px 0px 10px, #ffffff -2px 0px 10px, #ffffff 0px -2px 10px, #ffffff 0px 2px 10px, #ffffff 2px 2px 10px, #ffffff -2px 2px 10px, #ffffff 2px -2px 10px, #ffffff -2px -2px 10px, #ffffff 1px 2px 10px, #ffffff -1px 2px 10px, #ffffff 1px -2px 10px, #ffffff -1px -2px 10px, #ffffff 2px 1px 10px, #ffffff -2px 1px 10px, #ffffff 2px -1px 10px, #ffffff -2px -1px 10px;
    }
    .shadow_black{
      color:#ffffff;
      text-shadow: #12295b 2px 0px 10px, #12295b -2px 0px 10px, #12295b 0px -2px 10px, #12295b 0px 2px 10px, #12295b 2px 2px 10px, #12295b -2px 2px 10px, #12295b 2px -2px 10px, #12295b -2px -2px 10px, #12295b 1px 2px 10px, #12295b -1px 2px 10px, #12295b 1px -2px 10px, #12295b -1px -2px 10px, #12295b 2px 1px 10px, #12295b -2px 1px 10px, #12295b 2px -1px 10px, #12295b -2px -1px 10px;
    }
   
   .slide-5 .slide-text-5{
     position: relative;
     margin: 0; 
     padding: 0; 
     width: auto;
     height: auto; 
   }
   .slide-5 .slide-text img{
     width: 70%; 
     /*max-width: 767px; 
     height: auto;
     position: absolute; 
     right: 50%;
     top: 50%;
     transform: translate(50%, -2vw); */
   }
   
   
   .slide-text-5{
       display:flex;
   }
   .slide-logo {
       /*transform: translate(50%, -17%);*/
   }
   
   /* ──────────────────────────────────────
      スライダーのメディアクエリ 
      ────────────────────────────────────── */
   
   @media (max-width: 767px) {
     
     .slide-text{ 
      font-size: 14px !important; 
     }
    .custom-slider .slide{
     max-height:300px;
     }
   }
   
   /* 768px 以上 991px 以下のブレークポイント */
   @media (min-width: 768px) and (max-width: 991px) {
     
     .hero-slider {
       height: 17rem; 
       max-height: 272px; 
     }
     
     .slide-text {
       
     }
     
     .slide-5 .slide-text {
       height: 17.5vw !important;
     }
   
     .slide-5 .slide-text .funeral_risk_slider--img {
       transform: translate(50%, -17%); 
     }
   }
   
   @media (min-width: 992px) {
     .hero-slider {
       height: 22.875rem;
       max-height: 366px; 
     }
     
     .slide-text strong {
       font-size: 36px; 
     }
     .slide-5 .slide-text {
       height: 16rem !important; 
     }
   }
   
   /*----------------------------------------*/
   
   @media (max-width: 767px){
     /* 全スライド共通のテキストフォントサイズ */
     .slide-text{ 
       font-size: 14px !important;
       line-height: 1.8;
     }
     .custom-slider .slide{
      max-height:300px;
    }
   }
   
   @media (min-width: 414px) {
    .slide-text{ 
      
    }
    .custom-slider .slide{
     max-height:250px;
   }
   }
   
   @media (min-width: 768px) { 
     .hero-slider {
       height: 350px; 
       /*max-height: 350px; */
     }
     
     /* 全スライド共通のテキストフォントサイズ */
     .slide-text {
       font-size: 32px;
     }
     
     .slide-5 .slide-text img {
       /*transform: translate(50%, -17%);*/
   }
  }
   
   @media (min-width: 992px) { 
     .slide-text {
       font-size: 36px;
     }
     .custom-slider .slide{
       max-height:300px;
     }
   }
   
   @media (min-width: 1200px) {
     .slide-text {
       font-size: 36px;
     }
     .custom-slider .slide{
       max-height:330px;
     }
   }
   /* ──────────────────────────────────────
      TopPage
      ────────────────────────────────────── */
   
   
   /* 全体の余白調整 */
   .top-grid {
       margin: 60px 0;
   }
     
     /* 各アイテムの余白 */
   .top-grid .grid-item {
       margin-bottom: 30px;
       text-align: center;
   }
     
     /* アイコン画像のサイズ調整 */
   .grid-thumb img {
       display: inline-block;
       width: 100%;    /* アイコン幅 */
       height: auto;
       margin-bottom: 15px;
   }
   
      
   
     /* 全スライド共通のテキストフォントサイズ */
     .slide-text {
       font-size: 30px;
     }
   
   /* ──────────────────────────────────────
      TOP　中央 <３カラム×２行グリッドセクション
      ────────────────────────────────────── */
     /* テキストスタイル */
   .card-body {
       color: #333;
       font-family: 'Noto Serif JP', serif;
       line-height: 1.4;
       display:flex;
       flex-direction: column;
       align-items: center;
       position: absolute;
       top: 10%;
       left: 50%;
   }
   .card-body p{
       position: absolute;
       margin: 0;
       padding: 0;
       white-space: nowrap;
   }
   .slide-text{
     width: 100%;
     justify-content: space-evenly;
   }
   
   /* ──────────────────────────────────────
       スケジュール一覧（トップページ 下部）
     ────────────────────────────────────── */
     
     /* ラッパーで高さを制限し、縦にスクロール可能に */
   .wp-block-page-list-wrapper {
       max-height: 320px;       /* 表示高さをお好みで調整 */
       overflow-y: auto;
       position: relative;
       padding-right: 10px;     /* スクロールバーぶんの余白 */
   }
     
     /* スクロールバーのデザイン調整（Chrome/Safari/Edge） */
   .wp-block-page-list-wrapper::-webkit-scrollbar {
       width: 6px;
   }
   .wp-block-page-list-wrapper::-webkit-scrollbar-thumb {
       background-color: rgba(0,0,0,0.2);
       border-radius: 3px;
   }
     
    /* リスト全体は縦積み */
   .wp-block-page-list-pages {
       display: block;
   }
     
     /* １件ずつの境界線や余白 */
   .wp-block-page-list-page-entry {
       /*padding: 12px 0;*/
       border-bottom: 1px solid #e1e1e1;
   }
   .wp-block-page-list-page-entry:last-child {
       border-bottom: none;
   }
     
     /* 日付＋タイトルの縦並び */
   div.wp-page {
       font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
       font-weight: 400;
       font-size: 15px;
       line-height: 1.42857143;
       -webkit-font-smoothing: antialiased;
   }
     
   .wp-block-page-list-page-entry-text {
       display: block;
   }
     /*----もっと見る----*/
   .wp-custom-style-container.wp-custom-style-main-1701{
       margin-top: 10px;
       margin-right: 10px;
   }
  
   main{
           font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
           font-weight: 400;
           font-size: 15px;
           line-height: 1.42857143;
           -webkit-font-smoothing: antialiased;    
   }
   .wp-block-page-list-title a {
       /*font-size: 1.05rem;*/
       color: #333;
       text-decoration: none;
       font-weight:400;
   }
   .wp-block-page-list-title a:hover {
       text-decoration: underline;
   }
     
   .wp-block-custom-template-top-page-list {
       height: 100px;
       overflow: auto;
       background-color: #F4F4F4;
   }
   .wp-custom-style-container.wp-custom-style-main-1699 {
       padding-top: 5px;
       padding-right: 10px;
       padding-bottom: 10px;
       padding-left: 5px;
       border-width: 1px;
       border-style: solid;
       border-color: rgb(211, 211, 211);
   }
   div.wp-page main a:not(.fa):not(.btn):hover, div.wp-page footer a:not(.fa):not(.btn):hover {
       color: #729fff;
       text-decoration: none;
   }
   .wp-block-page-list-date {
       /*font-size: 0.9rem;*/
       color: #666;
       /*margin-bottom: 4px;*/
   }
   .card-img-top img{ 
       max-width: 100%;
       height: auto;
       margin: 0 auto;
   }
    
     /* ──────────────────────────────────────
          tab以下にした時のインフォメーション
          お気軽にお問い合わせ・ご相談ください
   　　　　icon_phone_square.png 03-3844-1987
   　　　　（365日24時間受付）
      ────────────────────────────────────── */
   .tel-box {
       text-align: center;
        margin-bottom: 20px;
   }
   
   .tel-link {
       font-weight: bold;
       font-size: 26px;
   }
   
   .tel-link a {
       vertical-align: middle;
   }
   .tel-link a img {
       border: 1px solid #11295b;
       border-radius: 100%;
   }
   .tel-text {
       margin-left: 10px;
   }
       
   @media screen and (min-width: 992px) {
       .tel-box {
           display: none;
           }
       }