h1 {
  font-size: 18pt;
  text-align: center;
}
h2 {
  font-size: 14pt;
  text-align: left;
  border-bottom: solid 1px gray;
  margin: 6px;
  background: rgba(224, 224, 224, 0.6);
}
p {
  word-break: break-all;
  margin: 18px;
  margin-top: 6px;
}
a {
  word-break: break-all;
}

.no-display {
  display: none;
}
.hidden {
  visibility: hidden;
  &::before {
    visibility: visible;
    content: "\40";
  }
}

div.main {
  margin: 12px;
}

div.currentDate, div.toIndex, div.toTop {
  text-align: right;
}

div#search {
  text-align: center;
}
#searchInput {
  width: 300px;
}

th {
  border: solid 1px;
  background: #eee;
  min-width: 90px;
  width:auto;
  &.detail {
    min-width: initial;
  }
}
td {
  border: solid 1px;
  word-break: break-word;
  /* セル内の改ページを禁止 */
  page-break-inside: avoid;
  &.detail {
    min-width: 50px;
    text-align: center;;
  }
}

table {
  /* 枠線を1本線指定 */
  border: solid 1px;
  border-collapse:  collapse;

  /* white-space: nowrap; */
}

@media print {
  label.language-toggle, div.toIndex, div#search, th.detail, td.detail {
    display: none;
  }
  table {
    font-size: 6pt;
  }
  thead {
    display: table-header-group;
    break-inside: avoid;
  }
  .detail {
    display: none;
  }
}

/* 言語切替 */
#language{
  display: none;
}
.language-toggle{
  display: flex;
  gap: 10px;
  margin: 10px;
  align-items: center;
  cursor: pointer;
  & .toggle-point{
    width: 36px;
    height: 15px;
    border: 1px solid #AAA;
    border-radius: 20px;
    padding: 2px;
    font-size: 0;
  }
  & .toggle-point::before{
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: black;
  }
}
#language:checked ~ .language-toggle .toggle-point{
  text-align:right;
}

#language:not(:checked) ~ *:is([lang]):not([lang='ja']) {
  display: none!important;
}

#language:checked ~ *:is([lang]):not([lang='en']) {
  display: none!important;
}
