@charset "utf-8";
:root {
  --colorred: #ED213C;
  --colorblack: #707070;
  --colorgray: #F1F4F9;
  --colorwhite: #FFF;
}

/* ===============================
* Google Fonts (Shippori Mincho)
=============================== */
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');

.webpageBox {
  font-family: 'Shippori Mincho', serif;
  font-size: 15px;
}

.report_body {
  width: 960px;
  margin: 2em auto 0;
}

.report_body h4.report_year {
  text-align: center;
  font-weight: 800;
  background-color: #fff2cc;
  padding: 0.5em 0;
  margin: 0 0 2em;
}

.report_body h4.report_year span {
  font-size: 1.4em;
}

.report_body h4 {
  text-align: center;
  margin: 0 0 1em;
}

.report_body .report_ttl {
  text-align: center;
}

.report_body .report_ttl .thank {
  font-size: 2em;
  font-weight: 800;
}

.report_body .report_ttl .number {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 2em 0;
}

.report_body .report_ttl .number span {
  font-size: 1.8em;
  font-weight: 600;
}

.report_body .report_ttl .number img {
  width: 12em;
  margin: 0 1em;
}

.report_body .report_photo {
  display: flex;
  justify-content: space-around;
  margin: 0 0 2em;
}

.report_body section {
  margin: 0 0 2em;
}

.report_body .report_photo li {
  width: 45%;
  text-align: center;
}

.report_body .report_photo li span {
  font-size: .9em;
}

.report_body h5 {
  text-align: center;
  font-weight: 600;
  margin: 0 0 1em;
}

.report_body h5 > span:nth-of-type(1) {
  font-size: 1.6em;
  /* border-bottom: 1px solid #000; */
}

.report_body h5 > span:nth-of-type(1) > span {
  font-size: .75em;
}

.report_body h5 > span:nth-of-type(2) {
  color: #ec223c;
  font-size: 2.4em;
  padding-left: 0.5em;
}

.report_body h5 > span:nth-of-type(2) span {
  font-size: .75em;
}

.report_body h5 span:nth-of-type(3) {
  display: inline-block;
  margin: 0.25em 0 0;
  font-size: 1.2em;
}

.report_body .ruikei {
  text-align: center;
  font-size: 1.4em;
}

.report_body .ruikei span {
  color: #FF0033;
  font-weight: 600;
  border-bottom: 1px solid;
}

.report_body .ruikei span span {
  font-size: 1.8em;
  border-bottom: none;
}

.report_body table.main_table {
  border: 1px #D9D9D9 solid;
  width: 100%;
}

.report_body table.main_table th {
  background-color: #fff2cc;
  border: 1px #D9D9D9 solid;
  text-align: left;
  padding: 0.5em;
  font-weight: 600;
}

.report_body table.main_table th:nth-of-type(2),
.report_body table.main_table td:nth-of-type(2) {
  width: 8em;
}

.report_body table.main_table td {
  padding: 0.5em 1em;
  border: 1px #D9D9D9 solid;
}

.report_body table.main_table td:nth-of-type(2) {
  text-align: right;
}

.report_body table.main_table td[colspan="2"] {
  padding: 0;
}

.report_body table.main_table tr:last-child td {
  background-color: #fff2cc;
}

.report_body table.main_table > tbody > tr:last-child td:nth-of-type(1) {
  text-align: left;
  font-weight: 600;
}

.report_body table.main_table > tbody > tr:last-child td:nth-of-type(2) {
  font-weight: 600;
}

.report_body table.main_table table.inner_table {
  width: 100%;
}

.report_body table.main_table table.inner_table td {
  padding: 0.5px 1em 0.5em 2em;
  border-bottom: 1px #D9D9D9 solid;
  border-top: none;
  border-left: none;
  border-right: none;
}

.report_body table.main_table table.inner_table td:nth-of-type(2) {
  padding: 0.5em 0 0.5em 1em;
  border-left: 1px #D9D9D9 solid;
  width: 9em;
  text-align: right;
}

.report_body table.main_table table.inner_table tr:last-child td {
  border-bottom: none;
  background-color: #fff;
}

.report_body table.main_table table.inner_table td:nth-of-type(1) {
  text-align: left;
}

.report_body .carry-over {
  text-align: right;
  margin: 0.25em 0 0;
}

.report_body  .bank {
  font-family: "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  width: 60%;
  border: 0.25em var(--colorred) solid;
  padding: 2em;
  border-radius: 2em 0 2em 0;
  background-color: var(--colorwhite);
  box-sizing: border-box;
  margin: 0 auto;
  color: var(--colorblack);
}

.report_body  .info .bank {
  position: relative;
  width: 60%;
  top: -5em;
  left: 0;
  margin: 0 0 0 auto;
}

.report_body  .bank .inner-left {
  text-align: left;
  display: inline-block;
}

.report_body  .bank p {
  font-size: 1.8em;
  padding: 0 0 1em;
  font-weight: 600;
}

.report_body .bank p:last-child {
  font-size: 1em;
  padding: 0;
  color: var(--colorred);
  font-weight: 500;
}

@media screen and (max-width: 899px) {
  .webpageBox {
    font-size: 12px;
  }

  .report_body {
    width: auto;
    margin: 2em 0;
  }

  .report_body .report_ttl .number img {
    width: 10em;
  }

  .report_body h5 span:nth-of-type(1) {
    font-size: 1.6em;
  }

  .report_body h5 span:nth-of-type(2) {
    font-size: 2em;
    padding: 0;
  }

  .report_body h5 span:nth-of-type(3) {
    margin: 0;
    font-size: 1.2em;
  }

  table.main_table th,
  table.main_table td {
    font-size: 12px;
  }

  table.main_table th:nth-of-type(2),
  table.main_table td:nth-of-type(2) {
    width: 6em;
  }

  table.inner_table tr td:nth-of-type(2) {
    width: 7em;
  }

  .report_body .ruikei {
    font-size: 1.2em;
  }

  .report_body .ruikei span span {
    font-size: 1.6em;
  }

  .report_body  .bank {
    width: 100%;
    padding: 2em 1em;
  }

  .report_body  .bank p {
    font-size: 1.6em;
    padding: 0 0 0.5em;
  }

  .report_body  .info .bank {
    width: 90%;
    top: -2em;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}