:root {
  --tablet-bp: 768px;
  --desktop-bp: 1024px;
}

html {
  font-size: 10pt;
}

body {
  font-family: "IBM Plex Sans JP";
  font-weight: 400;
  font-style: normal;
  font-size: 1.0rem;
  line-height: 1.3;
  color: #222222;
  overflow-y: scroll;
  font-feature-settings: "palt";
  background-color: #EEEEEE;
}

footer {
  grid-row: 3 / 4;
  grid-column: 1 / 2;
  margin: 0;
  padding: 0.2em 0;
  border-top: solid 1px #888888;
  z-index: 9000;
}

footer>ul {
  display: flex;
  justify-content: center;
}

footer>ul>li {
  /* margin: 0; */
  width: auto;
  list-style: none;
  flex-wrap: wrap;
  /* text-indent: 0; */
  /* padding-inline-start: 0; */
  text-align: center;
  border-left: solid 1px #888888;
}

footer>ul>li:last-child {
  border-right: solid 1px #888888;
}

footer>ul>li>a {
  margin: 0 10px;
}

p {
  margin: 0.5rem 0;
}

@media (min-width: 768px) {
  body {
    font-size: 1.1rem;
  }
}

@media (min-width: 1024px) {
  body {
    font-size: 1.2rem;
  }
}

p.right {
  text-align: right !important;
}

.mc {
  font-size: 1.4rem;
  font-feature-settings: "palt";
  margin: 1rem;
}

.mc p {
  text-indent: 1em;
  /* margin: 0.5em; */
  text-align: justify;
}

/* 見出し */
h1,
h2,
h3 {
  /* font-family: "BIZ UDMincho", serif; */
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-style: normal;
}

h1 {
  padding: 4px 0 4px 0;
}

h2 {
  /* padding: 4px 0 4px 0; */
  font-size: 1.8rem;
}

#tableContainer h2:after {
  content: "";
  display: block;
  border-bottom: solid 1px;
  border-image: linear-gradient(to right, #017FDB, #FEE101, #00A050, #DDDBCE, #CE3262) 1;
}

h3 {
  font-size: 1.6rem;
}

h3:after {
  /* border-bottom: solid 1pt #0000EE; */
  content: "";
  display: block;
  /* border-bottom: solid 1px; */
  height: 1px;
  width: 40%;
  background: linear-gradient(to right, #CE3262, transparent);
}

h3.no-underline:after {
  background: none;
}

/* リスト */
ul {
  margin: 0.5rem 0;
  margin-left: 2em;
}
ul li {
  padding-left: 1em;
  text-indent: -1em;
}
ul.style-none {
  margin-left: 1em;
}
ul.style-none li {
  list-style-type: none;
}
ul.style-disc {
  margin-left: 2em;
}
ul.style-disc li {
  list-style-type: disc;
}

.list:hover {
  /* background-color: #FFCCCC; */
  cursor: pointer;
}

@media (min-width: 1024px) {
  li {
    line-height: 1.3;
    /* padding-left: 1em; */
  }
}

/* a */
a:visited, a:link {
  color: #1967D2;
}

a:hover {
  background-color: #FFCCCC;
}

a.no_underline {
  color: inherit;
  text-decoration: none;
}

/* 赤枠 */
.rb {
  color: #CE3262;
  border: solid 1pt #CE3262;
  margin: 0 1em;
}
/* パンくずリスト */
#breadcrumbTag {
  padding-top: 5px;
  border-bottom: solid 1px #888888;
}

/*トップへ戻るボタン*/
#toTop {
  position: fixed;
  /*固定*/
  bottom: 20px;
  /*場所を右下に移動*/
  right: 20px;
  /*場所を右下に移動*/
  display: block;
  background-color: rgba(0, 0, 0, 0.3);
  /*以下、デザインはご自由に！！*/
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  font-size: 11px;
  width: 60px;
  height: 60px;
  text-align: center;
  line-height: 22px;
  border-radius: 30px;
  padding-top: 30px;
  box-sizing: border-box;
  z-index: 999;
}

#toTop:before {
  content: '\25B2';
  position: absolute;
  top: 10px;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 20px;
}

#toTop:hover {
  opacity: 0.5;
  cursor: pointer;
}

/* 印刷時の設定 */
.forprint {
  display: none;
}

/* 色 */
.bf {
  color: #017FDB;
}

.yf {
  color: #FEE101;
}

.gf {
  color: #00A050;
}

.wf {
  color: #DDDBCE;
}

.rf {
  color: #CE3262;
}

.of {
  color: #888888;
}

@media print {
  .forprint {
    display: inline;
  }

  .notprint {
    display: none;
  }

  body {
    zoom: 0.9;
    background-color: #FFFFFF;
  }

  main {
    grid-row: 1 / 3;
    grid-column: 1 / 3;
  }
}