
.title {
	position: relative;
	padding-bottom: 5px;   /* 線と文字の間に余白 */
	font-size: 32px;
	font-weight: bold;
	width: 1035px;
}

.glossary_sub_contents a {
  text-decoration: none;
}

.glossary_sub_contents{
	background: rgba(255, 255, 255, 0.8);
  width: 90%;
  margin: -6px auto 0px auto;
  padding-top: 50px;
  padding-bottom: 50px;
	border-radius: 0 0 60px 60px;
}
.glossary-margin40{
	width:90%;
	margin:40px auto;
}
/* 数字（1. 2. など）を大きく */
li.glossary-list::marker {
  font-size: 1.4em;
  font-weight: bold;
}

/* 項目名を大きく */
li.glossary-list .title {
  font-size: 1.4em;
  font-weight: bold;
  display: inline-block; /* margin を確実に効かせる */
  margin-bottom: 16px;
}

li.glossary-list {
  margin-bottom: 40px;
  list-style-type:none;
}

/* 説明文は通常サイズ */
li.glossary-list p {
  font-size: 1em;
  margin-top: 0.3em;
}
.glossary-list ul {
  list-style-type: disc;
}


/*赤い長方形のあしらいのためのスタイル*/
li.glossary-list {
  position: relative;
}

/* 赤い縦長の長方形 */
li.glossary-list::before {
  content: "";
  position: absolute;
  left: -1.6em;        /* ← 数字より左に出す */
  top: 0.5em;
  width: 6px;
  height: 1.4em;
  background-color: #CD1111;
}


.glossary_index{
  display: flex;
  flex-wrap: wrap;
}

.glossary_index_item{
  justify-content: center;
  align-items: center;
  margin:16px;
}
.glossary_index_item a{
  padding: 10px 15px;
  color: #000;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.2;
  background-color: #ccc;
  display: inline-block;
  border-radius: 20px;
    
}

.glossary{
  border:1.2px solid #593216;
  border-radius:20px;
  padding:15px 20px 20px;
  /*height:20vh;*/
  line-height: 2; 
  margin-bottom: 1em;
  letter-spacing: 0.05em;
}
.glossary-item-flex{
display: flex;
flex-wrap: wrap;
  gap: 18px; /* アイテム間の余白 */
  /*align-items: flex-start;  高さを揃える場合 */
  margin-left:-24px;
  margin-right:16px;
}
.glossary-item-flex .glossary {
  flex: 1 1 calc(33.333% - 16px); /* 3列＋gapを考慮 */
  box-sizing: border-box;          /* パディングやボーダーを含めて幅計算 */
}
.glossary-term{
  font-weight:bold;
  font-size:1.2em;
  padding:5px 0;
  letter-spacing: 0.05em;
}

.glossary-description{
  margin-inline-start: 0px;
}


/* ルビ（ふりがな）のスタイル */
  rt {
    color: #777;       /* 少しグレーにして存在感を下げる */
    font-size: 0.6em; /* 少し大きめにして読みやすく */
    font-weight: 500;  /* 標準の太さ */
    user-select: none; /* コピー時にふりがなが邪魔しないようにする */
  }

  /* 用語本体のスタイル */
  ruby {
    font-weight: bold; /* 用語を強調 */
    margin-right: 4px; /* 次の文字との間隔 */
  }
 .ref {
  color: #593216;          /* 知的な印象の青、またはサイトのテーマカラー */
  font-weight: bold;       /* 少し太くする */
  border-bottom: 2px dotted #593216; /* 下に点線を引く */
}

