

/* ---------- ---------- ヘッダー ---------- ---------- */ 

header {
  display: flex;
  width: 100%;
  top: 0;
  height: 80px;
  background-color: #cccccc;
  align-items: center;
  position: fixed;

}

 
.title {
  margin-left: auto;
  margin-right: auto;
}

.title h1 {
  margin: 0;
}

.title p {
  margin: 0;
}


.nav{
  margin-left: auto;
  margin-right: auto;
}


.menu-item {
  list-style: none;
  display: inline-block;
  padding: 10px;
}



/* ---------- ---------- メイン ---------- ---------- */ 


main {
  background-color: #ffffff;
  padding-top: 80px;
  width: 100%;
  height: auto;
}


/* ----- メインタイトル ----- */ 

.main-title {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 40px;
  display: flex;
  align-items: center;   /* 縦方向を中央揃え */
  gap: 20px;             /* ロゴと文字の間隔 */
}

.NIT-logo {
  width: 90px;           /* ロゴサイズ */
  height: auto;
}

.title-text h1 {
  margin: 0;
}

.title-text p {
  margin: 0;
}



/* ----- メインイメージ ----- */ 

.main-image {
  margin-top: 40px;      /* タイトルとの間隔 */
  text-align: center;    /* 画像を中央寄せ */
}

.main-image img {
  max-width: 100%;
  width: 800px;          /* 好きなサイズ */
  height: auto;
}

/* ----- メッセージ ----- */ 

.message {
  max-width: 900px;
  margin: 60px auto 0;
  padding: 0 20px;
}

.message h2 {
  margin-bottom: 10px;
}

.message p {
  line-height: 1.8;
}


/* ----- 新着 ----- */ 

.news {
  max-width: 900px;
  margin: 60px auto 0;
  padding: 20px;                /* 枠内の余白 */
  border: 2px solid #ccc;       /* 枠線 */
  border-radius: 8px;           /* 角丸 */
  background-color: #f9f9f9;    /* 任意で背景色 */
  margin-bottom: 40px;
}

.news h2 {
  margin-top: 0px;
  margin-bottom: 20px;
}

.news-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.news-list li {
  display: flex;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid #ddd;
}

.news-list li:last-child {
  border-bottom: none;  /* 最後の要素は線なし */
}

.news-list time {
  min-width: 100px;
  color: #555;
  font-weight: bold;
}

.news-list span {
  flex: 1;
}


/* ----- 新着リンク ----- */ 

.news-link {
  text-align: right;   /* 右寄せ */
  margin-top: 12px;    /* 上の余白 */
}

.news-link a {
  color: #0077cc;
  text-decoration: none;
  font-weight: bold;
}

.news-link a:hover {
  text-decoration: underline;
}






/* ---------- ---------- フッター ---------- ---------- */ 


footer {
  display: flex;             /* 横並び */
  justify-content: space-between; /* 左右に広げる */
  align-items: center;       /* 縦中央揃え */
  padding: 16px 20px;
  background-color: #333;
  color: #fff;
  font-size: 0.9rem;
  margin-left: auto;
  margin-right: auto;
}

.footer-left,
.footer-right {
  /* それぞれ特別な指定は不要 */
  margin-left: auto;
  margin-right: auto;
}








