ul.sns{}
ul.sns #tw{display:none;}
section{}
section h1{text-align:center;}

.main #groupselector{}
.main #groupselector li{float:left;}
.main #groupselector li.selected{background:#ccc;}
.main #groupselector li.selected a{color:#f00;}
.main #groupselector li a{display:inline-block;padding:1em;}
/* 全体設定・中央寄せレイアウト */
body {
  margin: 0;
  padding: 0;
  font-family: sans-serif;
  color: #333;
  background-color: #fff;
  /* 上下にオレンジのアクセント線（スクリーンショット参照） */
  border-top: 5px solid #ff7f27;
  border-bottom: 5px solid #ff7f27;
  min-height: 100vh;
  box-sizing: border-box;
}

.container {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* ヘッダー */
.header {
  text-align: center;
  margin-bottom: 40px;
}

.site-title {
  font-size: 14px;
  color: #666;
  text-decoration: none;
  display: block;
  margin-bottom: 10px;
}

.page-title {
  font-size: 18px;
  font-weight: normal;
  margin: 0;
}

/* アルファベットナビゲーション */
.nav-alphabet {
  display: flex;
  gap: 40px;
  margin-bottom: 60px;
}

.nav-alphabet a {
  font-size: 24px;
  color: #0000ff;
  text-decoration: underline;
  font-weight: bold;
}

/* メインコンテンツエリア */
.content {
  width: 100%;
  max-width: 400px;
}

.status-text {
  font-size: 13px;
  margin-bottom: 8px;
}

/* リスト・テーブル表示 */
.character-table {
  width: 100%;
  border-collapse: collapse;
}

.character-table td {
  padding: 3px 0;
  font-size: 14px;
  line-height: 1.4;
}

.main table{width:80%;margin:0 auto 50px;}
.main table th{width:2em;font-size:2em;text-align:center;border:1px solid #000;}
.main table td{font-size:2em;padding:0.5em;}

@media screen and (max-width: 479px) {
    .main #groupselector li{width:16%;padding:0;}
}
