/* 全体レイアウト */
header img {
    max-width: 100%;
  
  }
.container {
    display: flex;
    min-height: 100vh;
    background-color: #f4f4f4;
}

/* 左メニュー（サイドバー） */
.sidebar {
    
width: 170px;
background-color: #333;
padding: 20px;
color: white;
flex-shrink: 0;
}

.menu {
position: sticky;
top: 20px; /* 上からのオフセット位置 */
}
.sidebar ul {
list-style-type: none;
padding: 0;
}

.sidebar ul li {
margin: 15px 0;
}

.sidebar ul li a {
color: white;
text-decoration: none;
font-size: 18px;
}

.sidebar ul li a:hover {
text-decoration: underline;
}

.sidebar ul .submenu {
margin-left: 20px; /* 右にずらす（インデント） */
font-size: 14px;   /* 文字サイズを小さく */
}

/* メインコンテンツ */
.main-content {
flex: 1;
padding: 20px;
background-color: white;
}

.header {
/* background-color: #555;
color: white; */
padding: 20px;
text-align: center;
}

.content h2 {
font-size: 24px;
color: #333;
}

.content {
    margin-top: 60px; 
}

.content p {
font-size: 16px;
line-height: 1.6;
color: #666;
}
.fanbook-gallery {
    display: flex;
    justify-content: space-between; /* 画像の間隔を均等に */
    gap: 10px; /* 画像間のスペース */
    margin-top: 20px; /* 上部に余白を追加 */
    flex-wrap: wrap;
  }
  
  .fanbook-gallery img {
    width: 140px; /* 画像の幅を150pxに統一 */
    height: auto; /* 縦横比を保ちながら高さを自動調整 */
    object-fit: cover; /* 画像を枠内に収めつつ、中央に合わせる */
    transition: transform 0.3s ease; /* hover時の動きを滑らかに */
  }
  .fanbook-gallery a {
    display: inline-block;
    text-align: center; /* キャプションを中央寄せ */
    transition: transform 0.3s ease; /* 変化を滑らかに */
    text-decoration: none;

  flex-basis: calc(20% - 10px);
  }
  .fanbook-gallery p {
    margin-top: 5px;
    font-size: 12px;
    color: #333; /* キャプションの文字色 */
  }
  /* hover時に少しずれる（上に5px動く） */
.fanbook-gallery a:hover {
    transform: translateY(-5px);
  }



  .banner-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }
  
  .banner-container .banner {
    flex: 1 1 45%;
    margin: 10px;
  }
  /* 小さい画面用のスタイル */
  @media (max-width: 768px) {
    .banner-container .banner {
      flex-basis: 100%; /* 画面の全幅を占めるようにする */
      margin: 5px 0; /* 上下のみマージンを設定 */
    }
  }
  .tutorial {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
.banner {
    margin-top: 20px;
    text-align: center;
  }
  
  .banner a {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: black;
    font-size: 14px;
  }
  
  .banner img {
    max-width: 100%;
  }
  
  .banner p {
    margin-top: 10px;
  }
  .banner a{
    transition: transform 0.3s ease; /* アニメーションのスムーズさを指定 */
  }
  
  .banner a:hover  {
    transform: translateY(-5px); /* hover時に画像を少し上に動かす */
  }
  
  .bannerlogo {
    margin-top: 30px;
    text-align: center;
  }
  .bannerlogo img {
    max-width: 50%;
  }

  .update {
    margin-top: 20px;
    font-size: 14px;
    text-align: right;
  }
  .other-works a  {
    transition: transform 0.3s ease; /* アニメーションのスムーズさを指定 */
  }
  
  .other-works a:hover  {
    transform: translateY(-5px); /* hover時に画像を少し上に動かす */
  }
  
  /* 特定セクションの項目間にスペースを追加 */
  .other-works a {
    display: block; /* リンクをブロック要素にして、行ごとに扱う */
    
    text-decoration: none; /* 下線を消す */
  }
  .other-works h4{
    margin-top: 45px; /* 上に15pxのスペースを追加 */
    font-size: 18px;
  }
  .other-works h2{
    margin-top: 80px; /* 上に15pxのスペースを追加 */

  }
  .other-works p{
    margin-top: -10px; /* 上に15pxのスペースを追加 */
  }
  .language-switcher {
    position: absolute;
    top: 10px;
    right: 10px;
  }
  
  .language-switcher a {
    color: #999999; /* リンクの色 */
    text-decoration: none;
    font-size: 18px;
  }
  
  .language-switcher a:hover {
    color: #cccccc; /* マウスオーバー時の色 */
  }

/* レスポンシブデザイン */
@media (max-width: 768px) {
.container {
    flex-direction: column;
}

.sidebar {
    position: sticky;
    width: 100%;
    padding: 0px;
    text-align: center;
}



.main-content {
    margin-top: 20x; 
    padding: 10px;
}
}
