/* ページ内の統一フォント */
body {
  font-family: "Hiragino Mincho ProN", "游明朝", "YuMincho", "MS P明朝", serif;
}

/* 見出しフォント */
h1, h2, h3, h4, h5, h6 {
  font-family: "Hiragino Mincho ProN", "游明朝", "YuMincho", "MS P明朝", serif;
  color: #5a5a5a;
  font-weight: 400;
  margin: 30px 0 30px 0;
}

/* フェードインアニメーション */
.animate-box {

/* アニメーション設定 */
animation: fadeIn linear;
animation-timeline: view(); /* スクロールと連動 */
animation-range: entry 0% cover 30%;
}

/* スクロール用スペース */
.spacer {
  height: 100vh;
}

/* 区切り線 */
.hr1 {
  border-top: 2px solid #000;
  width: 100px;
  margin:50px auto;
}

/* メインビジュアル */
.background-container {
}
/* スマートフォン向け（デフォルト） */
.background-container {
  background-image: url('../images/bg_main_s.jpg');
  width: 100%; /* 横幅 */
  height: 90vh; /* 高さ */
  background-size: cover; /* 全体をカバー */
  background-position: top center; /* 位置 */
  background-repeat: no-repeat; /* 繰り返しなし */
}
/* デスクトップ向け */
@media (min-width: 768px) {
.background-container {
  background-image: url('../images/bg_main.jpg');
  width: 100%; /* 横幅 */
  height: 90vh; /* 高さ */
  background-size: cover; /* 全体をカバー */
  background-position: right top center; /* 位置 */
  background-repeat: no-repeat; /* 繰り返しなし */
  }
}

/* メインビジュアルエリア */
/* スマートフォン向け（デフォルト） */
.main_content {
  height: 100%;
  text-align: center;
}
/* デスクトップ向け */
.main_content {
  @media (min-width: 768px) {
  height: 100%;
  width: 600px;
  text-align: center;
  }
}

/* メインタイトル */
.main_title {
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
  padding-top: 140px;
  padding-right: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
}

/* メインテキスト */
.main_font {
  padding-top: 30px;
  padding-right: 20px;
  padding-bottom: 30px;
  padding-left: 20px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "Hiragino Mincho Pro#", "HiraKakuProN-W3", "游ゴシック", "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
  font-size: 20px;    /* 文字サイズ指定 */
  color: #FFFFFF;     /* 文字色指定 */
  font-weight: bold;
}

/* ショップリストビジュアル */
.shoplist-container {
  width: 100%;
  height: 100vh;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
/* スマートフォン向け（デフォルト） */
.shoplist-container {
  background-image: url('../images/bg_footer_s.jpg');
}
/* デスクトップ向け */
@media (min-width: 768px) {
.shoplist-container {
  background-image: url('../images/bg_footer.jpg');
  }
}
/* ショップリストビジュアルエリア */
/* スマートフォン向け（デフォルト） */
.shoplist_content {
  height: 100%;
  text-align: center;
}
/* デスクトップ向け */
.shoplist_content {
  @media (min-width: 768px) {
  height: 100%;
  width: 800px;
  text-align: center;
  }
}

/* ショップリストタイトル */
.shoplist_title {
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
  padding-top: 150px;
  padding-right: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
}

/* ショップリストテキスト */
.shoplist_font {
  padding-top: 30px;
  padding-right: 20px;
  padding-bottom: 30px;
  padding-left: 20px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "Hiragino Mincho Pro#", "HiraKakuProN-W3", "游ゴシック", "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
  font-size: 20px;    /* 文字サイズ指定 */
  color: #FFFFFF;     /* 文字色指定 */
  font-weight: bold;
}

/* リンクボタン１ */
.button-link {
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "Hiragino Mincho Pro#", "HiraKakuProN-W3", "游ゴシック", "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
  font-weight: bold;
  display: inline-block;
  padding: 10px 70px;
  background-color: #808080;
  color: #fff !important;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.1em;
  text-decoration: none;
  border-radius: 3px;
  transition: background-color 0.2s ease;
  text-align: center;
  border: 2px solid transparent;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
.button-link:hover {
  background-color: transparent;
  border: 2px solid #fff;
  border-color: #fff; 
  color: #fff !important;
}

/* リンクボタン２ */
.button-link2 {
  display: inline-block;
  padding: 10px 70px;
  background-color: #808080;
  color: #fff !important;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.1em;
  text-decoration: none;
  border-radius: 3px;
  transition: background-color 0.2s ease;
  text-align: center;
  border: 2px solid transparent;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
.button-link2:hover {
  color: #fff !important;
  background-color: #454a51;
  border: 2px solid transparent;
}

/* 中央に配置 */
.center-wrapper {
  width: 100%;
  max-width: 1200px;
  margin: auto;
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
  align-items: center;
}
.center-wrapper img {
 padding: 30px 0px;
}


/* コンテンツエリア（グレー） */
.area_content_gr {
  background-color: #EEEEEE;  /* グレー背景 */
  padding: 80px 0px;
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
}

/* コンテンツエリア（ホワイト） */
.area_content_wh {
  background-color: #FFFFFF;  /* ホワイト背景 */
  padding: 80px 0px;
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
}

/* プレート・バッジエリア */
.area_badge {
  background-color: #FFFFFF;  /* ホワイト背景 */
  margin-top: 50px;
  margin-bottom: 10px;
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
}

/* ギャラリーエリア */
.gallery_content {
  background-color: #FFFFFF;  /* ホワイト背景 */
  width: 100%;
  margin: 20px;
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
}
.gallery_content {
  @media (min-width: 768px) {
  width: 1100px;
  background-color: #FFFFFF;  /* ホワイト背景 */
  margin: 80px;
  display: flex;
  justify-content: center;  /* 横方向の中央揃え */
  }
}

/* コンテンツボックス */
.contentsbox {
  width: 100%;
  max-width: 1200px;
  margin: auto;
 }
.contentsbox img {
  width: 100%;
  padding: 10px;
 }
.text-center {
  text-align: center;
 }
 .flexbox {
  display: flex;
 }
 .box1 {
  width: 50%;
  margin: 0 auto;
 }
 .box2 {
  width: 50%;
  margin: 0 auto;
 }

/* デスクトップ向け */
 @media screen and (max-width: 768px) {
 .flexbox {
  display: block;
  }
 .flexbox .box1 {
  width: 100%;
  margin: 0 auto;
  }
 .flexbox .box2 {
  width: 100%;
  margin: 0 auto;
  }
}

/* 画像角丸 */
.kadomaru {
border-radius:20px;
}

/* キャプション */
.img_caption {
  padding-top: 20px;
  padding-right: 0px;
  padding-bottom: 30px;
  padding-left: 0px;
}

/* ギャラリーボックス */
.gallerybox {
  width: 100%;
  max-width: 1200px;
  margin: auto;
  display: flex;
  text-align:center;
  justify-content: center; /* 水平方向に中央 */
  align-items: center;     /* 垂直方向に中央 */
 }

.arrow-nav {
  position: fixed;
  top: 50%;
  width: 0;
  height: 0;
  z-index: 9999;
  cursor: pointer;
  transform: translateY(-50%);
  opacity: 0.7;
}

/* 左矢印（三角形） */
.arrow-left {
  left: 0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-right: 20px solid #fff; /* 矢印の色 */
}

/* 右矢印（三角形） */
.arrow-right {
  right: 0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid #fff;
}

/* ホバー時に少し濃くする */
.arrow-nav:hover {
  opacity: 1.0;
}
