/* ナビゲーションバーの背景色 */
.navbar-salt {
  background: linear-gradient(
    135deg,
    #1e3a8a 0%,
    #3b82f6 50%,
    #60a5fa 100%
  ) !important;
  box-shadow: 0 2px 10px rgba(30, 58, 138, 0.3) !important;
  border-bottom: 2px solid rgba(255, 255, 255, 0.1) !important;
}

/* ブランド名のスタイル */
.navbar-salt .navbar-brand {
  color: #ffffff !important;
  font-weight: 600 !important;
  font-size: 1.25rem !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
}

/* ナビゲーションリンクのスタイル */
.navbar-salt .nav-link {
  color: rgba(255, 255, 255, 0.9) !important;
  font-weight: 500 !important;
  padding: 0.75rem 0.75rem !important;
  border-radius: 6px !important;
  margin: 0 0.125rem !important;
  transition: all 0.2s ease-in-out !important;
  white-space: nowrap !important;
  font-size: 0.9rem !important;
}

.navbar-salt .nav-link:hover {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.1) !important;
  transform: translateY(-1px) !important;
}

/* アクティブなリンクのスタイル */
.navbar-salt .nav-link.active {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.2) !important;
  font-weight: 600 !important;
}

/* ドロップダウンメニューのスタイル */
.navbar-salt .dropdown-menu {
  background: #ffffff !important;
  border: 1px solid rgba(59, 130, 246, 0.2) !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(30, 58, 138, 0.15) !important;
  margin-top: 0.5rem !important;
}

.navbar-salt .dropdown-item {
  color: #1e3a8a !important;
  padding: 0.5rem 1rem !important;
  transition: all 0.2s ease-in-out !important;
}

.navbar-salt .dropdown-item:hover {
  background: rgba(59, 130, 246, 0.1) !important;
  color: #1e40af !important;
}

.navbar-salt .dropdown-item.active {
  background: rgba(59, 130, 246, 0.15) !important;
  color: #1e3a8a !important;
  font-weight: 600 !important;
}

/* トグルボタンのスタイル */
.navbar-salt .navbar-toggler {
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  border-radius: 6px !important;
}

.navbar-salt .navbar-toggler:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.25) !important;
}

.navbar-salt .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* iPad/タブレットサイズでのコンパクト表示 */
@media (max-width: 1199.98px) {
  .navbar-salt .navbar-brand {
    font-size: 1rem !important;
  }

  .navbar-salt .nav-link {
    font-size: 0.8rem !important;
    padding: 0.5rem 0.4rem !important;
    margin: 0 0.05rem !important;
  }

  .navbar-salt .navbar-brand img {
    height: 28px !important;
    margin-right: 6px !important;
  }
}

/* モバイルサイズでのハンバーガーメニュー */
@media (max-width: 991.98px) {
  .navbar-salt .navbar-collapse {
    background: rgba(30, 58, 138, 0.95) !important;
    border-radius: 8px !important;
    margin-top: 0.5rem !important;
    padding: 0.5rem !important;
    backdrop-filter: blur(10px) !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
  }

  .navbar-salt .nav-link {
    margin: 0.15rem 0 !important;
    border-radius: 4px !important;
    padding: 0.4rem 0.75rem !important;
    font-size: 0.9rem !important;
  }

  .navbar-salt .dropdown-menu {
    font-size: 0.85rem !important;
    padding: 0.25rem 0 !important;
  }

  .navbar-salt .dropdown-item {
    padding: 0.3rem 0.75rem !important;
  }
}

/* スクロール時の効果 */
.navbar-salt.scrolled {
  background: linear-gradient(
    135deg,
    rgba(30, 58, 138, 0.95) 0%,
    rgba(59, 130, 246, 0.95) 50%,
    rgba(96, 165, 250, 0.95) 100%
  ) !important;
  backdrop-filter: blur(10px) !important;
}
