body {
  margin: 0;
  font-family: "Segoe UI", sans-serif;
  background: #eef2f7;
  color: #2c3e50;
}

/* ヘッダー */
header {
  background: linear-gradient(135deg, #1f3c88, #2c3e50);
  color: white;
  padding: 30px 20px;
  text-align: center;
}

/* ナビ */
nav {
  background: #2c3e50;
  padding: 10px;
  text-align: center;
}
nav a {
  color: white;
  margin: 0 10px;
  text-decoration: none;
}

/* コンテンツ */
.container {
  max-width: 1000px;
  margin: auto;
  padding: 20px;
}

/* セクション */
section {
  background: white;
  margin-bottom: 20px;
  padding: 20px;
  border-radius: 10px;
}

/* 見出し */
h2 {
  border-left: 5px solid #1f3c88;
  padding-left: 10px;
}

/* グリッド */
.grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}

.card img {
  width: 100%;
  border-radius: 8px;
}

/* カバーアート */
.cover-grid {
  display: cover-grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}

.cover-grid img {
  width: 100%;
  object-fit: cover;
}

/* メンバー */
.member {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.member img {
  width: 70px;
  border-radius: 50%;
}

/* お知らせ（最新が上） */
.news-list {
  list-style: none;
  padding: 0;
}
.news-list li {
  border-bottom: 1px solid #ddd;
  padding: 8px 0;
  font-size: 14px;
}

/* フッター */
footer {
  text-align: center;
  padding: 20px;
  font-size: 12px;
  color: #777;
}

ol {
  padding-left: 20px;
}

h3 {
  margin-top: 20px;
}
/* 学歴・職歴の行間調整 */
.container p {
  margin: 5px 0;
  line-height: 1.4;
}
ul {
  margin: 5px 0 15px 20px;
}

li {
  margin-bottom: 4px;
}
.career {
  list-style: none;
  padding: 0;
}

.career li {
  display: flex;
  gap: 20px;
  margin-bottom: 5px;
}

.period {
  width: 180px;
  flex-shrink: 0;
}

.content {
  flex: 1;
}
a {
  color: #1f3c88;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}
/* ヘッダー全体 */
.top-header {
  background: white;
  border-bottom: 1px solid #ddd;
  padding: 10px 20px;
}

/* 中身 */
.header-inner {
  display: flex;
  align-items: center;
  gap: 15px;
}

/* ロゴ */
.logo {
  height: 50px;
}

/* テキスト */
.header-text h1 {
  margin: 0;
  font-size: 22px;
  color: #2c3e50;  /* 濃い青グレー */
}

.university {
  margin: 0;
  font-size: 14px;
  color: #555;  /* 少し薄め */
}
/* 共用設備を少し淡く */
section:nth-of-type(2) {
  background: #f8fafc;
}

ol {
  padding-left: 20px;
}

h3 {
  margin-top: 15px;
}

li {
  margin-bottom: 5px;
}

/* 研究内容 */
.research-item {
  margin-bottom: 40px;
}

.research-item h3 {
  margin-bottom: 10px;
}

.research-content {
  display: flex;
  align-items: center;
  gap: 20px;
}

.research-content .text {
  flex: 1;
}

.research-content .image {
  flex: 1;
}

.research-content img {
  width: 100%;
  border-radius: 10px;
}

@media (max-width: 768px) {
  .research-content {
    flex-direction: column;
  }
}
/* お知らせ画像 */
.news-img {
  display: block;
  margin: 5px auto;   /* ← これが中央寄せのポイント */

  width: 240px;      /* ← 好きなサイズに調整 */
  height: auto;      /* ← 縦横比を保つ */
}
/* 研究室概要文字の大きさ */
.about p {
  font-size: 20px;   /* 好きな大きさに */
  line-height: 1.6;  /* 読みやすく */
}
html {
  overflow-y: scroll;
}