@charset "UTF-8";
/*ヘッダー*/
.g-nav .g-nav__list .nav-link{color: #333333;}
.u-font-ac{color: #178cff;}
.g-nav{background-color: #ffffff;}
.c-visual .c-visual__catchcopy{filter: drop-shadow(5px 5px 5px #4e4e4e);}
/* レスポンシブビデオスタイル */
#video-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%; /* 16:9のアスペクト比を維持 */
}

#video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* ヘッダーメニューの高さを考慮して、動画部分の表示位置を調整 */
#g-header + #visual {
  padding-top: 80px; /* ヘッダーメニューの高さに応じて適切な値を設定 */
}
#g-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000; /* 必要に応じて適切な値に調整 */
}
.c-visual{background-image: none;}
/*スマホヘッダー*/
.g-header .g-header__nav-sp-btn+.lower .ttl.--tel{background-color: #431a01;}
.g-header .g-header__nav-sp-btn+.lower .ttl.--mail{background-color: #178cff;}
.g-header .g-header__nav-sp-btn{background-color: #178cff;}
/*セクション*/
.c-after__ac{background-color: #178cff;}
.c-triangle:after{border-color: #178cff transparent transparent transparent}
.c-headline__type3{border-left: 6px solid #178cff;}
.c-image .c-image__caption{background-color: #178cff;}
.c-headline-grad:before{border-color: #431a01 transparent transparent transparent}
.p-common-recruit .p-common-recruit__list {width: 100%;display:block;}
.c-after__white.--5{background-color: #ffffffc7;}
.c-section.--right-radius-bg:before{background: #284d9d;opacity: 1;}
.ti-widget.ti-goog .ti-rating-text strong.ti-rating{color: #fff;}
/*フッター*/
.g-gmap iframe{height: 450px;margin-top: 0px;}
.g-fixarea .contact--1{background-color: #178cff}
.g-fixarea .contact--1:hover{background-color: #015eba;}
.g-fixarea .contact--2{background-color: #178cff}
.g-fixarea .contact--2:hover{background-color: #015eba;}
.preloader .preloader-after, .preloader .preloader-before{background: linear-gradient(to right,#178cff,#015eba);}
.g-hamburger{background-color: #178cff7a;}
.c-after__black{background-color: #f5f5f5;}
.g-fixarea .g-fixarea-footer__item{background: #178cff;}
.g-fixarea .g-fixarea-footer{border-top: 1px solid #178cff;}
.g-pagetop a{background: #178cff;}
/*下層ページ*/
.c-sitemap .nav-item a{background-color: #178cff;}
.post-content h2{background-color: #178cff;}
.u-font-kc{color: #178cff;}
.c-headline__type:before{background: #178cff;}
.c-headline__type2-ttl:after{color: #178cff;}
.c-section:nth-child(odd){background-color: #fff;}
.p-contact .g-form{background-color: #fff;}
.c-after__bc{background-color: #f5f5f5;}
.c-box{--bc: #178cff;}
.table {
  border-collapse: collapse; /* ボーダーを重ねないように設定 */
  width: 100%;
  margin-bottom: 1rem;
  color: var(--bs-table-color);
  vertical-align: top;
  border: 1px solid var(--bs-table-border-color); /* テーブル全体にボーダーを追加 */
}
.table th,
.table td {
  border: 1px solid var(--bs-table-border-color); /* セルにボーダーを追加 */
  padding: 0.5rem 0.5rem;
  background-color: var(--bs-table-bg);
}
.g-gmap{filter: grayscale(0%);}
/* トップページ SERVICEセクション */
.p-common-menu .p-common-menu__link{
  background-color:#fff;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 4px 8px rgba(0,0,0,.1);
  transition:transform .3s ease, box-shadow .3s ease;
  padding:20px 16px;

  /* 高さ揃え用 */
  height:100%;
  width:100%;
  display:flex;
  flex-direction:column;
}

.p-common-menu .p-common-menu__link:hover{
  transform:translateY(-5px);
  box-shadow:0 8px 16px rgba(0,0,0,.2);
}

/* ここを「カードの並びrow」だけに効かせる（安全） */
.p-common-menu .row.justify-content-center.gx-3 > [class*="col-"]{
  display:flex;
}

/* 本文を同じ行数で揃える（4行） */
.p-common-menu .p-common-menu__link p.u-mb-pc-32{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
}

/* トップスライダー */
.picture_box {
  overflow: hidden; /* 枠外の画像を隠す */
  width: 100%; /* スライダー全体の幅を指定 */
  position: relative;
  background-color: #f5f5f5; /* 必要なら背景色を調整 */
}

.picture_slider {
  display: flex; /* フレックスで横並び */
  gap: 10px; /* 各画像の間隔 */
  animation: slide 20s linear infinite; /* アニメーション追加 */
}

.c-image {
  width: 100%; /* グリッドに合わせてサイズ調整 */
  height: auto; /* アスペクト比を維持 */
}

/* アニメーション */
@keyframes slide {
  0% {
    transform: translateX(0); /* 初期位置 */
  }
  100% {
    transform: translateX(-100%); /* 左方向へ流れる */
  }
}

/* スライダーのループを実現するために複製要素を使用 */
