.archive-hero { display:none; }

/* モバイル（幅768px以下）だけ表示 */
@media screen and (max-width: 768px) {
  .archive-hero { display:block; width:100%; }
.gallery {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2列 */
  gap: 8px; /* 列・行の間隔 */
  justify-items: center;
}
#navbar {
  position: fixed !important;  /* sticky を完全に殺す */
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 1000 !important;
  transition: transform 0.3s ease !important;
  background: white; /* sticky側で上書きされる可能性があるので明示 */
}

#navbar.hidden {
  transform: translateY(-100%) !important;
}
.main{
  margin-top: 50px;
}
.card {
  width: 100%;
  max-width: 100%; /* カード幅は列幅にフィット */
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  transition: transform .2s, box-shadow .2s;
}

.card img {
  width: 100%;
  aspect-ratio: 1/1; /* 正方形 */
  object-fit: cover;
  display: block;
}

.card-title {
  padding: 4px; /* スマホ用：狭め */
  font-size: 12px; /* スマホ用：小さめ */
  color: #1a1a1a;
  word-break: break-word;
  text-decoration: none;
  border-bottom: none;
}
.card a {
  text-decoration: none;
  color: inherit;
}

.card:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 12px rgba(0,0,0,0.15);
}
.top-menu {
  display: flex !important;        /* 念のため上書き */
  flex-direction: row !important;  /* 縦並びを横並びに上書き */
  justify-content: space-between;  /* 左右均等配置 */
  align-items: center;
  gap: 0;                          /* 要素間の隙間は均等配置で調整 */
  margin-bottom: 12px;
  padding: 0 8px;
  overflow-x: auto;
}
/* トップメニューリンク */
.top-menu a {
  flex: 1 1 auto;         /* 均等幅 */
  text-align: center;
  padding: 8px 0;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  transition: all .2s;
  white-space: nowrap;    /* 長いテキストを改行させない */
}
/* --- 画像のレスポンシブ切替 --- */
.responsive-image img {
  width: 100%;
  height: auto;
  display: block;
}

.responsive-image img.pc-only {
  display: none !important; /* スマホ用：非表示 */
}

.responsive-image img.sp-only {
  display: block !important; /* スマホ用：表示 */
}
.spacer{
  margin-top: 50px;
}
}
