@charset "UTF-8";
/* 基準文字サイズ */
html {
  font-size: clamp(14px, 2vw, 18px); /* 全体の基準サイズ */
  line-height: 1.6;
}

/* 見出し */
h1 {
  font-size: 1.6rem; /* html基準の2倍 */
  line-height: 1.4;
}

h2 {
  font-size: 1.4rem;
  line-height: 1.3;
  display: inline-block;
  padding:0 0 0 10px;
	margin:0;
	border-left:solid 5px #2e1203;
	border-bottom:solid 1px #2e1203;
    white-space: nowrap; 
}

h3 {
  font-size: 1.3rem;
  line-height: 1.3;
}

h4 {
  font-size: 1.1rem;
  line-height: 1.2;
}

/* 本文・リスト */
body, p, li {
  font-size: 1rem;
  line-height: 1.3;
  margin:1% 0;
}

small {
  font-size: 1rem;
  font-style: italic;
  line-height: 1.1;
  padding:0 ;
}

/* リンク矢印 */
.link-arrow::before {
  content: "→ ";
  padding: 0 0 0 2%;
}

hr {
  border: none;
  border-top: 1px solid #ccc;  /*線の太さ・色 */
  margin: 1.8em 0;              /* 上下余白 */
}

.site-title {
  display: flex;        /* Flexboxを有効にする */
  align-items: center;  /* 縦方向の中央に揃える */
  color: #000000;          /* または black */
  text-decoration: none;
}

.title1 h2,
.title2 h1,
.title2 p {
  /* 必要に応じて、それぞれの要素の余白やスタイルを調整 */
  margin: 2% 10px;

}

/* ヘッダー文字調整 */
header h2 {
  font-size: 1.3rem; /* 学部名 */
}

header {
  display: flex;
  flex-wrap: wrap;      /* スマホで縦並びになるように */
  align-items: center;  /* 縦方向の中央揃え */
  justify-content: flex-start;
  padding: 0.5rem 1rem;
  border-bottom: 1px solid #555;
  background-image: linear-gradient(to bottom,#fffacd 40%,#f5deb3 75%);
}

header .title1,
header .title2 {
  margin: 0.5rem;
}

/* ニュース記事内のリスト・日付 */
#pageBodyMain #news .date {
  font-size: 0.9rem;
  color: #555;
}

#pageBodyMain #news p {
  font-size: 1rem;
}

/* フッター */
#pageFoot {
  text-align: center;
}

#pageFoot small {
  font-size: 0.8rem;
}



#pageBodyMain {
  display: flex;
  flex-direction: column; /* 基本は縦並び */
  gap: 2rem;              /* セクション間の余白 */
  max-width: 900px;
  width: 90%;
  margin: auto;
  padding: 1rem;
  box-sizing: border-box;
}

.gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); /* 画面幅に応じて列数変化 */
  gap: 16px;
  padding: 1rem 0;
}

.gallery figure {
  margin: 0;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  text-align: center;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.gallery img {
  width: 100%;
  height: auto;
  display: block;
}

.gallery figcaption {
  padding: 0.5rem;
  font-size: 0.875rem;
  color: #333;
}



body{
	padding:0;
	background-color:#EEE8AA;
	background-image:linear-gradient(to bottom,#f0e68c,#EEE8AA 700px);
}

#page {
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
    background-color:#ffffff;
	  box-shadow: 0 0 3px rgba(0,0,0,1);
}

ul, ol {
  margin: 0 0 1em 1em;   /* 上右下左 */
  padding: 0 0 0 2%;
}

section {
  padding: 0;
  margin-bottom: 3px;

}