/* 共通ヘッダー・フッター用CSS */

.header-nav {
  background: linear-gradient(90deg, #005bac 0%, #00b4d8 100%);
  padding: 0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.07);
}
.header-nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.header-nav li {
  margin: 0 10px;
}
.header-nav a {
  display: block;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  padding: 16px 18px;
  border-radius: 6px 6px 0 0;
  transition: background 0.2s, color 0.2s;
}
.header-nav a:hover, .header-nav a:focus {
  background: #fff;
  color: #005bac;
}

.site-footer {
  background: #005bac;
  color: #fff;
  text-align: center;
  padding: 18px 0 12px 0;
  font-size: 1em;
  letter-spacing: 0.05em;
  margin-top: 40px;
}
.site-footer p {
  margin: 0;
}

@media (max-width: 700px) {
  .header-nav ul {
    flex-direction: column;
    align-items: stretch;
  }
  .header-nav li {
    margin: 0;
  }
  .header-nav a {
    border-radius: 0;
    padding: 14px 0;
    border-bottom: 1px solid #fff3;
  }
  .header-nav a:last-child {
    border-bottom: none;
  }
}
