@charset "UTF-8";

/* 全体のスタイル設定 */
body,
html {
  margin: 0;
  padding: 0;
  width: 100%;
  /*スクロールバー非表示（IE・Edge）*/
  -ms-overflow-style: none;
  /*スクロールバー非表示（Firefox）*/
  scrollbar-width: none;
}

/*スクロールバー非表示（Chrome・Safari）*/
body::-webkit-scrollbar {
  display: none;
}

/* ナビゲーションバーのスタイル */
.navbar {
  position: fixed;
  /* 固定位置 */
  top: 0;
  /* 画面の最上部に配置 */
  z-index: 1000;
  /* 他の要素より前面に表示 */
  width: 100%;
  /* 幅を100%に設定 */
  padding: 5px;
  /* パディング */
  display: -webkit-flex;
  /* Safari 用 */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari 用 */
  justify-content: space-between;
  -webkit-align-items: center;
  /* Safari 用 */
  align-items: center;
  /* 中央揃え */
  width: 100%;
  /* ナビゲーションバーの幅を100%に設定 */
  background-color: #fff;
  /* 背景色 */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  /* 影を追加 */
}



/* ロゴのスタイル */
.logo {
  max-height: 50px;
  /* ロゴの高さ（必要に応じて変更） */
}

/* ナビゲーションリンクのスタイル */
.navbar-nav {
  list-style: none;
  display: flex;
  display: -webkit-flex;
  /* Safari 用 */
  align-items: center;
  margin: 0;
  padding-right: 40px;
}

.nav-item {
  margin-left: 20px;
  /* リンク間のマージン（必要に応じて変更） */
  word-wrap: break-word;
  max-width: 100%;
}

.nav-link {
  text-decoration: none;
  color: #333;
  /* リンクの色（必要に応じて変更） */
}

.nav-link:hover {
  color: #eaeaea;
  /* ホバー時のリンクの色（必要に応じて変更） */
}



/* モバイルビューでのスタイル */
@media (max-width: 768px) {
  .thumbSwiper .swiper-slide {

    /*追加した*/
    .navbar-nav {
      flex-direction: column;
      margin-left: 0;
    }

    .nav-item {
      margin-left: 0;
      margin-top: 10px;
    }
  }
}




/* Swiper container */
.swiper {
  width: 100%;
  height: 100%;
}

/* Swiper slide */
.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;

  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}

/* Navigation buttons */
.swiper-button-next,
.swiper-button-prev {
  color: #fff;
}

/* Pagination */
.swiper-pagination-bullet {
  background: #fff;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .swiper-slide {
    font-size: 14px;
  }
}



/* サムネイルスライダーのスタイル */
.thumbSwiper {
  height: 100%;
  /* 高さを自動調整に */
  overflow: visible;
  /* オーバーフローを表示 */
}


.thumbSwiper .swiper-slide {
  margin: 0;
  /* 上下のマージンを0に設定 */
  padding: 0;
  /* 上下のパディングを0に設定 */
}

.thumbSwiper .swiper-slide-thumb-active {
  opacity: 1;
  /* 不透明度 */
}

.thumbSwiper .swiper-slide img {
  width: 100%;
  /* 幅を自動調整に */
  height: auto;
  /* 高さをスライドの高さに合わせる */
  object-fit: cover;
  /* 画像がコンテナを覆うように調整 */
  object-position: center center;
  /* 画像の中心を基点に配置 */
}

.mainSwiper {
  height: auto;
  width: 100%;
  margin-top: 60px;
  /* ナビゲーションバーの高さに応じて調整 */
  /* その他のスタイル設定 */
}

.mainSwiper .swiper-slide img {
  max-width: 100%;
  /* 画像の最大幅をスライダーの幅に合わせる */
  height: auto;
  /* 高さを自動調整し、アスペクト比を維持 */
  object-fit: contain;
  /* 画像がコンテナに収まるように調整 */
  object-position: top center;
  /* 画像の上部を中心に配置 */
  object-fit: cover;
}





/* アクティブなサムネイルスライダーのスタイル */
.thumbSwiper .swiper-slide-active {
  border: none;
  /* 境界線を削除 */
}

.thumbSwiper {
  overflow: hidden;
  /* コンテナのオーバーフローを非表示に設定 */
}

.thumbSwiper .swiper-slide:hover {
  transform: scale(1.05);
  /* わずかに拡大 */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  /* 影を追加 */
  /* border: 2px solid #0056b3; */
  /* 境界線を追加 */
}

/* youtube start */
.youtube-container {
  display: flex;
  /* Flexboxコンテナとして定義 */
  justify-content: space-around;
  /* 各アイテムを均等に配置 */
}

.youtube-video {
  flex: 1;
  /* 各動画が均等な幅を取るように設定 */
  padding: 5px;
  /* ビデオ間の余白を設定 */
}

.youtube-video iframe {
  width: 100%;
  /* iframeを親要素の幅に合わせる */
  height: 250px;
  /* 適切な高さを設定 */
}

/* youtube end */

/* フッター用のスタイル */
.footer-navbar {
  background-color: #ffffff;
  /* box-shadowを削除 */
}

.footer-navbar .navbar-nav {
  list-style: none;
  display: flex;
  display: -webkit-flex;
  /* Safari 用 */
  margin-left: auto;
  align-items: center;
}

/*いらない？*/
.footer-navbar .nav-item {
  margin-left: 50px;
}

.footer-navbar .nav-link {
  text-decoration: none;
  color: #000;
  font-weight: bold;
}

.footer-navbar .nav-link:hover {
  color: #0056b3;
}

/* モバイルビューでのフッターのスタイル調整 */
@media (max-width: 768px) {
  .footer-navbar .navbar-nav {
    flex-direction: column;
    margin-left: 0;
  }

  .footer-navbar .nav-item {
    margin-left: 0;
    margin-top: 10px;
  }
}

.site-footer {
  text-align: center;
}

@media only screen and (max-width: 768px) {

  /* Styles for screens smaller than 768px */
  .header,
  .footer {
    padding: 10px;
  }

  .main-content {
    margin: 5px;
  }

  /* Other styles */
}

@media only screen and (max-width: 768px) {
  .nav-menu {
    display: none;

    /* Hide the regular menu */
  }

  .hamburger-menu {
    display: block;
    /* Show hamburger menu */
  }

  /* Other styles */
}

@media only screen and (max-width: 768px) {
  body {
    font-size: 16px;
  }

  /* Adjust other font sizes */
}

/* Adjusting Swiper container for all devices */
.swiper-container {
  margin: 0 auto;
  padding: 0;
  height: auto;
  /* Adjust based on your content */
}