/* デフォルトスタイル（PC表示） */
body, header {
  margin: 0; /* 親要素の余計なマージンをリセット */
  padding: 0; /* 親要素の余計なパディングをリセット */
  box-sizing: border-box; /* 余白を含めた幅、高さの設定 */
}

.sp-nav {
  display: none !important;
}

.sp-only {
  display: none !important;
}

.pc-only {
  display: block !important;
  max-width: 100%; /* ヘッダー画像の幅を親要素に合わせる */
  height: auto; /* 高さの比率を維持 */
  margin: 0 auto; /* 左右中央に配置 */
  display: block;
}

@media (max-width: 768px) {
  .pc-only {
    display: none !important;
  }

  .sp-nav {
    display: block !important;
    background-color: #f8f8f8;
    padding: 5px 10px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }

  .sp-only {
    display: block !important;
    width: 100%;
    height: auto; /* 高さの比率を維持 */
  }

  #navi ul {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    gap: 5px;
    padding: 0;
  }

  #navi li {
    text-align: center;
  }

  #navi li a {
    display: block;
    color: #333;
    text-decoration: none;
    font-size: 12px;
    padding: 8px 5px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }

  #navi li:first-child a {
    border-left: none;
  }

  #navi li:nth-child(6) a {
    border-left: none;
  }

  #navi a span {
    display: block;
  }
}