﻿@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400&display=swap");
.clear {
  clear: both
}
.link {
  font-size: 1.4rem
}
.link, .link:link, .link:visited {
  text-decoration: underline
}
.link:hover {
  opacity: .8
}
.va-t {
  vertical-align: top
}
.va-m {
  vertical-align: middle
}
.va-b {
  vertical-align: bottom
}
.fl-l {
  float: left
}
.fl-r {
  float: right
}
.touchdevice-block {
  display: none
}
body.touchdevice .touchdevice-block {
  display: block
}
.text-left {
  text-align: left
}
.text-right {
  text-align: right
}
.text-center {
  text-align: center
}
.text-justify {
  text-align: justify;
  text-justify: inter-ideograph
}
.text-nowrap {
  white-space: nowrap
}
img {
  max-width: 100%;
  height: auto
}
.mt0 {
  margin-top: 0px !important
}
.mb0 {
  margin-bottom: 0px !important
}
.ml0 {
  margin-left: 0px !important
}
.mr0 {
  margin-right: 0px !important
}
.pt0 {
  padding-top: 0px !important
}
.pb0 {
  padding-bottom: 0px !important
}
.pl0 {
  padding-left: 0px !important
}
.pr0 {
  padding-right: 0px !important
}
.mt5 {
  margin-top: 5px !important
}
.mb5 {
  margin-bottom: 5px !important
}
.ml5 {
  margin-left: 5px !important
}
.mr5 {
  margin-right: 5px !important
}
.pt5 {
  padding-top: 5px !important
}
.pb5 {
  padding-bottom: 5px !important
}
.pl5 {
  padding-left: 5px !important
}
.pr5 {
  padding-right: 5px !important
}
.mt10 {
  margin-top: 10px !important
}
.mb10 {
  margin-bottom: 10px !important
}
.ml10 {
  margin-left: 10px !important
}
.mr10 {
  margin-right: 10px !important
}
.pt10 {
  padding-top: 10px !important
}
.pb10 {
  padding-bottom: 10px !important
}
.pl10 {
  padding-left: 10px !important
}
.pr10 {
  padding-right: 10px !important
}
.mt15 {
  margin-top: 15px !important
}
.mb15 {
  margin-bottom: 15px !important
}
.ml15 {
  margin-left: 15px !important
}
.mr15 {
  margin-right: 15px !important
}
.pt15 {
  padding-top: 15px !important
}
.pb15 {
  padding-bottom: 15px !important
}
.pl15 {
  padding-left: 15px !important
}
.pr15 {
  padding-right: 15px !important
}
.mt20 {
  margin-top: 20px !important
}
.mb20 {
  margin-bottom: 20px !important
}
.ml20 {
  margin-left: 20px !important
}
.mr20 {
  margin-right: 20px !important
}
.pt20 {
  padding-top: 20px !important
}
.pb20 {
  padding-bottom: 20px !important
}
.pl20 {
  padding-left: 20px !important
}
.pr20 {
  padding-right: 20px !important
}
.mt25 {
  margin-top: 25px !important
}
.mb25 {
  margin-bottom: 25px !important
}
.ml25 {
  margin-left: 25px !important
}
.mr25 {
  margin-right: 25px !important
}
.pt25 {
  padding-top: 25px !important
}
.pb25 {
  padding-bottom: 25px !important
}
.pl25 {
  padding-left: 25px !important
}
.pr25 {
  padding-right: 25px !important
}
.mt30 {
  margin-top: 30px !important
}
.mb30 {
  margin-bottom: 30px !important
}
.ml30 {
  margin-left: 30px !important
}
.mr30 {
  margin-right: 30px !important
}
.pt30 {
  padding-top: 30px !important
}
.pb30 {
  padding-bottom: 30px !important
}
.pl30 {
  padding-left: 30px !important
}
.pr30 {
  padding-right: 30px !important
}
.mt35 {
  margin-top: 35px !important
}
.mb35 {
  margin-bottom: 35px !important
}
.ml35 {
  margin-left: 35px !important
}
.mr35 {
  margin-right: 35px !important
}
.pt35 {
  padding-top: 35px !important
}
.pb35 {
  padding-bottom: 35px !important
}
.pl35 {
  padding-left: 35px !important
}
.pr35 {
  padding-right: 35px !important
}
.mt40 {
  margin-top: 40px !important
}
.mb40 {
  margin-bottom: 40px !important
}
.ml40 {
  margin-left: 40px !important
}
.mr40 {
  margin-right: 40px !important
}
.pt40 {
  padding-top: 40px !important
}
.pb40 {
  padding-bottom: 40px !important
}
.pl40 {
  padding-left: 40px !important
}
.pr40 {
  padding-right: 40px !important
}
.mt45 {
  margin-top: 45px !important
}
.mb45 {
  margin-bottom: 45px !important
}
.ml45 {
  margin-left: 45px !important
}
.mr45 {
  margin-right: 45px !important
}
.pt45 {
  padding-top: 45px !important
}
.pb45 {
  padding-bottom: 45px !important
}
.pl45 {
  padding-left: 45px !important
}
.pr45 {
  padding-right: 45px !important
}
.mt50 {
  margin-top: 50px !important
}
.mb50 {
  margin-bottom: 50px !important
}
.ml50 {
  margin-left: 50px !important
}
.mr50 {
  margin-right: 50px !important
}
.pt50 {
  padding-top: 50px !important
}
.pb50 {
  padding-bottom: 50px !important
}
.pl50 {
  padding-left: 50px !important
}
.pr50 {
  padding-right: 50px !important
}
.mt-5 {
  margin-top: -5px !important
}
.mb-5 {
  margin-bottom: -5px !important
}
.ml-5 {
  margin-left: -5px !important
}
.mr-5 {
  margin-right: -5px !important
}
.mt-10 {
  margin-top: -10px !important
}
.mb-10 {
  margin-bottom: -10px !important
}
.ml-10 {
  margin-left: -10px !important
}
.mr-10 {
  margin-right: -10px !important
}
.mt-15 {
  margin-top: -15px !important
}
.mb-15 {
  margin-bottom: -15px !important
}
.ml-15 {
  margin-left: -15px !important
}
.mr-15 {
  margin-right: -15px !important
}
.mt-20 {
  margin-top: -20px !important
}
.mb-20 {
  margin-bottom: -20px !important
}
.ml-20 {
  margin-left: -20px !important
}
.mr-20 {
  margin-right: -20px !important
}
.mt-25 {
  margin-top: -25px !important
}
.mb-25 {
  margin-bottom: -25px !important
}
.ml-25 {
  margin-left: -25px !important
}
.mr-25 {
  margin-right: -25px !important
}
.w1em {
  width: 1em !important
}
.w2em {
  width: 2em !important
}
.w3em {
  width: 3em !important
}
.w4em {
  width: 4em !important
}
.w5em {
  width: 5em !important
}
.w6em {
  width: 6em !important
}
.w7em {
  width: 7em !important
}
.w8em {
  width: 8em !important
}
.w9em {
  width: 9em !important
}
.w10em {
  width: 10em !important
}
.w11em {
  width: 11em !important
}
.w12em {
  width: 12em !important
}
.w13em {
  width: 13em !important
}
.w14em {
  width: 14em !important
}
.w15em {
  width: 15em !important
}
.w16em {
  width: 16em !important
}
.w17em {
  width: 17em !important
}
.w18em {
  width: 18em !important
}
.w19em {
  width: 19em !important
}
.w20em {
  width: 20em !important
}
.max-w1em {
  max-width: 1em
}
.max-w2em {
  max-width: 2em
}
.max-w3em {
  max-width: 3em
}
.max-w4em {
  max-width: 4em
}
.max-w5em {
  max-width: 5em
}
.max-w6em {
  max-width: 6em
}
.max-w7em {
  max-width: 7em
}
.max-w8em {
  max-width: 8em
}
.max-w9em {
  max-width: 9em
}
.max-w10em {
  max-width: 10em
}
.max-w11em {
  max-width: 11em
}
.max-w12em {
  max-width: 12em
}
.max-w13em {
  max-width: 13em
}
.max-w14em {
  max-width: 14em
}
.max-w15em {
  max-width: 15em
}
.max-w16em {
  max-width: 16em
}
.max-w17em {
  max-width: 17em
}
.max-w18em {
  max-width: 18em
}
.max-w19em {
  max-width: 19em
}
.max-w20em {
  max-width: 20em
}
.max-w21em {
  max-width: 21em
}
.max-w22em {
  max-width: 22em
}
.max-w23em {
  max-width: 23em
}
.max-w24em {
  max-width: 24em
}
.max-w25em {
  max-width: 25em
}
.max-w26em {
  max-width: 26em
}
.max-w27em {
  max-width: 27em
}
.max-w28em {
  max-width: 28em
}
.max-w29em {
  max-width: 29em
}
.max-w30em {
  max-width: 30em
}
.max-w31em {
  max-width: 31em
}
.max-w32em {
  max-width: 32em
}
.max-w33em {
  max-width: 33em
}
.max-w34em {
  max-width: 34em
}
.max-w35em {
  max-width: 35em
}
.max-w36em {
  max-width: 36em
}
.max-w37em {
  max-width: 37em
}
.max-w38em {
  max-width: 38em
}
.max-w39em {
  max-width: 39em
}
.max-w40em {
  max-width: 40em
}
.min-w1em {
  min-width: 1em
}
.min-w2em {
  min-width: 2em
}
.min-w3em {
  min-width: 3em
}
.min-w4em {
  min-width: 4em
}
.min-w5em {
  min-width: 5em
}
.min-w6em {
  min-width: 6em
}
.min-w7em {
  min-width: 7em
}
.min-w8em {
  min-width: 8em
}
.min-w9em {
  min-width: 9em
}
.min-w10em {
  min-width: 10em
}
.min-w11em {
  min-width: 11em
}
.min-w12em {
  min-width: 12em
}
.min-w13em {
  min-width: 13em
}
.min-w14em {
  min-width: 14em
}
.min-w15em {
  min-width: 15em
}
.min-w16em {
  min-width: 16em
}
.min-w17em {
  min-width: 17em
}
.min-w18em {
  min-width: 18em
}
.min-w19em {
  min-width: 19em
}
.min-w20em {
  min-width: 20em
}
.modalMenu {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  z-index: 50000;
  display: flex;
  align-items: center
}
.modalMenu-box {
  border: 2px solid #f00200;
  padding: 30px 15px;
  border-radius: 20px;
  background-color: #ffffff;
  display: table;
  width: 100%;
  max-width: 1080px
}
@media (max-width: 768px) {
  .modalMenu-box {
    padding: 20px 10px;
    border-radius: 10px;
    overflow-y: auto;
    height: 100%;
    max-height: 400px
  }
}
@media (max-width: 768px) {
  .modalMenu-box {
    display: block
  }
}
.modalMenu-box-nav {
  padding: 0 10px;
  margin-bottom: 15px;
  display: table-cell
}
@media (max-width: 768px) {
  .modalMenu-box-nav {
    display: block
  }
}
.modalMenu-box-nav:nth-child(2) {
  max-width: 300px
}
@media (max-width: 768px) {
  .modalMenu-box-nav:nth-child(2) {
    max-width: 100%
  }
}
.modalMenu-box-nav:nth-child(4) {
  max-width: 200px
}
@media (max-width: 768px) {
  .modalMenu-box-nav:nth-child(4) {
    max-width: 100%
  }
}
.modalMenu-box-nav a {
  display: block;
  color: #164585;
  margin-bottom: 5px;
  font-size: 1.6rem;
  text-indent: -1.5em;
  padding-left: 1.5em
}
@media (max-width: 768px) {
  .modalMenu-box-nav a {
    margin-bottom: 0px;
    font-size: 1.1rem
  }
}
.modalMenu-box-nav a:hover {
  text-decoration: underline
}
.modalMenu-box-nav-h2 {
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
  white-space: nowrap;
  border-bottom: 3px solid #f00200;
  margin-bottom: 15px;
  padding: 0 5px 6px 5px
}
@media (max-width: 768px) {
  .modalMenu-box-nav-h2 {
    text-align: left;
    margin-bottom: 7px;
    border-bottom: 2px solid #f00200;
    padding: 0 5px 3px 0px
  }
}
.modalMenu-box-nav-h2 a {
  font-size: 1.8rem;
  color: #000000
}
@media (max-width: 768px) {
  .modalMenu-box-nav-h2 a {
    font-size: 1.3rem
  }
}
.modalMenu-box-ul {
  padding: 0 50px;
  display: table-cell
}
@media (max-width: 768px) {
  .modalMenu-box-ul {
    padding: 0px;
    display: block
  }
}
.modalMenu-box-ul-li {
  text-indent: -1em;
  padding-left: 1em
}
.modalMenu-box-ul-li a {
  display: table;
  margin: 5px 0;
  font-size: 1.6rem;
  color: #164585;
  position: relative
}
@media (max-width: 768px) {
  .modalMenu-box-ul-li a {
    font-size: 1.1rem
  }
}
.modalMenu-box-ul-li a:hover {
  text-decoration: underline
}
.modalMenu-box-ul-li a::after {
  content: "";
  right: -24px;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background: url(../img/kiyaku/blank.svg) right center no-repeat
}
@media (max-width: 768px) {
  .modalMenu-box-ul-li a::after {
    right: -18px
  }
}
.modalCloseBtn {
  position: fixed;
  right: 15px;
  top: 0px;
  color: #ffffff;
  font-size: 3rem
}
.main {
  padding-bottom: 50px
}
@media (max-width: 768px) {
  .main {
    padding-bottom: 30px
  }
}
.main .br {
  display: none
}
@media (max-width: 768px) {
  .main .br {
    display: block
  }
}
.main .spbr {
  display: block
}
@media (max-width: 768px) {
  .main .spbr {
    display: none
  }
}
.main .container {
  width: 100%;
  max-width: 1110px;
  margin: 0 auto;
  padding: 0 15px
}
.main-h1 {
  text-align: center;
  margin-bottom: 10px;
  padding-bottom: 5px;
  font-size: 2.4rem;
  font-weight: bold;
  border-bottom: 4px solid #f00200
}
@media (max-width: 768px) {
  .main-h1 {
    font-size: 2rem
  }
}
.main-h2 {
  font-weight: bold;
  font-size: 2.2rem;
  border-left: 6px solid #f00200;
  padding-left: 15px;
  margin-bottom: 35px
}
@media (max-width: 768px) {
  .main-h2 {
    border-left: 3px solid #f00200;
    font-size: 1.5rem;
    margin-bottom: 15px
  }
}
.main-h3Red {
  color: #f00200;
  font-weight: bold;
  font-size: 1.7rem;
  margin-bottom: 7px
}
@media (max-width: 768px) {
  .main-h3Red {
    font-size: 1.2rem;
    margin-bottom: 3px
  }
}
.main-h4 {
  font-weight: bold
}
@media (max-width: 768px) {
  .main-h4 {
    font-size: 1.1rem
  }
}
.main-h4Title {
  font-weight: bold;
  text-indent: -1.5rem;
  padding-left: 1.5rem;
  margin-bottom: 5px
}
@media (max-width: 768px) {
  .main-h4Title {
    font-size: 1.1rem;
    margin-bottom: 0px
  }
}
@media (max-width: 768px) {
  .main p {
    font-size: 1.1rem
  }
}
.main p.large-text {
  font-size: 1.7rem
}
@media (max-width: 768px) {
  .main p.large-text {
    font-size: 1.2rem
  }
}
.main p.large-text strong {
  font-weight: bold
}
.main p.red-text {
  color: #f00200
}
.main p.largeRed-text {
  font-size: 2rem;
  color: #f00200
}
@media (max-width: 768px) {
  .main p.largeRed-text {
    font-size: 1.3rem
  }
}
.main p.largeBlue-text {
  font-size: 2rem;
  color: #143894
}
@media (max-width: 768px) {
  .main p.largeBlue-text {
    font-size: 1.3rem
  }
}
.main span.blue {
  color: #033efe
}
.main-link {
  border: 1px solid #f00200;
  display: table;
  margin: 20px auto 0 auto;
  padding: 10px 0;
  width: 100%;
  max-width: 340px;
  color: #f00200;
  position: relative;
  text-align: center;
  font-weight: bold
}
@media (max-width: 768px) {
  .main-link {
    font-size: 1.2rem;
    padding: 7px 0
  }
}
.main-link::after {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-top: 2px solid #f00200;
  border-right: 2px solid #f00200;
  right: 15px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg)
}
@media (max-width: 768px) {
  .main-link::after {
    border-top: 1px solid #f00200;
    border-right: 1px solid #f00200
  }
}
.main-link:hover {
  opacity: .8
}
.main-number-li {
  text-indent: -1.5em;
  padding-left: 1.5em
}
@media (max-width: 768px) {
  .main-number-li {
    font-size: 1.1rem
  }
}
.main-dot-li {
  text-indent: -1em;
  padding-left: 1em
}
@media (max-width: 768px) {
  .main-dot-li {
    font-size: 1.1rem
  }
}
.main-dotNumber {
  margin-bottom: 20px
}
.main-dotNumber-li {
  text-indent: -2em;
  padding-left: 2em
}
@media (max-width: 768px) {
  .main-dotNumber-li {
    font-size: 1.1rem
  }
}
.main-dotSmall-li {
  text-indent: -0.6rem;
  padding-left: 0.6rem;
  font-size: 1.2rem
}
@media (max-width: 768px) {
  .main-dotSmall-li {
    font-size: 1.1rem
  }
}
.main-section {
  padding: 40px 0
}
@media (max-width: 768px) {
  .main-section {
    padding: 25px 0
  }
}
.main-section:nth-child(even) {
  background-color: #f7f7f0
}
.main-section-box {
  margin-bottom: 30px
}
@media (max-width: 768px) {
  .main-section-box {
    margin-bottom: 20px
  }
}
.main-section-line {
  border-top: 1px solid #bebebe;
  padding-top: 40px;
  margin-top: 40px
}
.main-section-pLeft {
  padding-left: 1em
}
.main-section-table1 {
  width: 100%;
  margin: 15px 0
}
@media (max-width: 768px) {
  .main-section-table1 {
    margin: 10px 0
  }
}
.main-section-table1 th {
  background-color: #727272;
  vertical-align: middle;
  color: #ffffff;
  font-size: 1.8rem
}
@media (max-width: 768px) {
  .main-section-table1 th {
    font-size: 1.2rem;
    white-space: nowrap;
    padding: 0 10px
  }
}
.main-section-table1 tr:first-child td {
  border-top: 0px solid #ffffff
}
.main-section-table1 td {
  background-color: #e5e5e5;
  vertical-align: middle;
  padding: 15px;
  border-left: 2px solid #ffffff;
  border-top: 2px solid #ffffff
}
@media (max-width: 768px) {
  .main-section-table1 td {
    font-size: 1.1rem;
    padding: 10px
  }
}
.main-section-table1 td .largeText {
  font-size: 1.7rem;
  white-space: nowrap
}
@media (max-width: 768px) {
  .main-section-table1 td .largeText {
    font-size: 1.2rem
  }
}
.main-section-table2 {
  width: 100%;
  margin: 15px 0
}
@media (max-width: 768px) {
  .main-section-table2 {
    margin: 10px 0
  }
}
.main-section-table2 thead th {
  background-color: #505050;
  vertical-align: middle;
  color: #ffffff;
  border-left: 2px solid #ffffff;
  line-height: 1.4;
  padding: 10px
}
@media (max-width: 768px) {
  .main-section-table2 thead th {
    font-size: 0.9rem
  }
}
.main-section-table2 tbody th {
  text-align: center;
  background-color: #7c7b7b;
  vertical-align: middle;
  font-weight: bold;
  color: #ffffff;
  border-top: 2px solid #ffffff;
  padding: 5px 5px
}
@media (max-width: 768px) {
  .main-section-table2 tbody th {
    font-size: 0.9rem
  }
}
.main-section-table2 tbody tr:last-child th {
  background-color: #505050
}
.main-section-table2 tbody td {
  text-align: center;
  background-color: #e5e5e5;
  vertical-align: middle;
  font-weight: bold;
  border-left: 2px solid #ffffff;
  border-top: 2px solid #ffffff;
  padding: 5px 0
}
@media (max-width: 768px) {
  .main-section-table2 tbody td {
    font-size: 0.9rem
  }
}
@media (max-width: 768px) {
  .main-section-table2 tbody td span {
    font-size: 0.9rem
  }
}
.main-section-table2 tbody td span.maru {
  color: #033efe;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: bold
}
@media (max-width: 768px) {
  .main-section-table2 tbody td span.maru {
    font-size: 1.2rem
  }
}
.main-section-table2 tbody td span.batu {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: normal
}
@media (max-width: 768px) {
  .main-section-table2 tbody td span.batu {
    font-size: 0.9rem
  }
}
.main-section-table2 tbody td .largeText {
  font-size: 1.7rem
}
@media (max-width: 768px) {
  .main-section-table2 tbody td .largeText {
    font-size: 0.9rem
  }
}
.main-section-table2 tbody tr:nth-child(2) td:nth-child(2) {
  color: #ffffff;
  background-color: #505050
}
.main-section-table2 tbody tr:nth-child(3) td:nth-child(1) {
  color: #ffffff;
  background-color: #7c7b7b
}
.main-section-table2 tbody tr:nth-child(4) td:nth-child(1) {
  color: #ffffff;
  background-color: #505050
}
.main-section-table2 tbody tr:nth-child(5) td:nth-child(1) {
  color: #ffffff;
  background-color: #7c7b7b
}
.main-section-table2 tbody tr:nth-child(6) td:nth-child(2) {
  color: #ffffff;
  background-color: #505050
}
.main-section-table2 tbody tr:nth-child(7) td:nth-child(1) {
  color: #ffffff;
  background-color: #7c7b7b
}
.main-section-table2 tbody tr:nth-child(8) td:nth-child(1) {
  color: #ffffff;
  background-color: #505050
}
.main-section-table2 tbody tr:nth-child(even) td {
  background-color: #cecece
}
.main-section-table3 {
  width: 100%;
  margin: 15px 0 45px 0;
  table-layout: fixed;
  position: relative
}
@media (max-width: 768px) {
  .main-section-table3 {
    margin: 10px 0 25px 0
  }
}
.main-section-table3 thead th {
  background-color: #475564;
  vertical-align: middle;
  color: #ffffff;
  border-left: 2px solid #ffffff;
  padding: 10px 20px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: left
}
@media (max-width: 768px) {
  .main-section-table3 thead th {
    font-size: 1.2rem;
    padding: 5px 20px;
    text-align: center
  }
}
.main-section-table3 tbody td {
  background-color: #e5e5e5;
  vertical-align: middle;
  font-weight: bold;
  border-left: 2px solid #ffffff;
  border-top: 2px solid #ffffff;
  padding: 10px 50px
}
@media (max-width: 768px) {
  .main-section-table3 tbody td {
    padding: 7px 15px;
    font-size: 1.1rem
  }
}
.main-section-table3::after {
  content: "+";
  position: absolute;
  left: 50%;
  font-size: 6rem;
  font-family: Arial, Helvetica, sans-serif;
  bottom: -78px;
  transform: translateX(-50%)
}
@media (max-width: 768px) {
  .main-section-table3::after {
    font-size: 3rem;
    bottom: -42px
  }
}
.main-section-table3:last-of-type {
  position: static
}
.main-section-table3:last-of-type::after {
  content: ""
}
.main-section-table4 {
  width: 100%;
  margin: 15px 0 0 0;
  table-layout: fixed
}
@media (max-width: 768px) {
  .main-section-table4 {
    margin: 10px 0 0 0
  }
}
.main-section-table4 thead th {
  background-color: #f00200;
  vertical-align: middle;
  color: #ffffff;
  border-left: 2px solid #ffffff;
  padding: 10px 20px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: left
}
@media (max-width: 768px) {
  .main-section-table4 thead th {
    font-size: 1.3rem;
    padding: 7px 15px
  }
}
.main-section-table4 tbody tr {
  background-color: #e5e5e5
}
.main-section-table4 tbody tr:nth-child(even) {
  background-color: #f3f3f3
}
.main-section-table4 tbody td {
  vertical-align: middle;
  border-left: 2px solid #ffffff;
  border-top: 2px solid #ffffff;
  padding: 25px 30px
}
@media (max-width: 768px) {
  .main-section-table4 tbody td {
    padding: 15px
  }
}
.main-section-table5 {
  width: 100%;
  margin: 2px 0 45px 0
}
@media (max-width: 768px) {
  .main-section-table5 {
    margin: 2px 0 25px 0
  }
}
.main-section-table5 thead th {
  vertical-align: middle;
  color: #ffffff;
  border-left: 2px solid #ffffff;
  padding: 10px 20px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: left
}
@media (max-width: 768px) {
  .main-section-table5 thead th {
    font-size: 1.3rem;
    padding: 7px 15px
  }
}
.main-section-table5 thead th.red {
  background-color: #f00200
}
.main-section-table5 thead th.blue {
  background-color: #143894
}
.main-section-table5 tbody th {
  white-space: nowrap;
  vertical-align: middle;
  border-top: 2px solid #ffffff;
  color: #ffffff;
  padding: 15px 20px;
  text-align: left;
  font-size: 1.8rem;
  line-height: 1.4;
  background-color: #727272
}
@media (max-width: 768px) {
  .main-section-table5 tbody th {
    font-size: 1.3rem;
    padding: 7px 15px
  }
}
.main-section-table5 tbody td {
  vertical-align: middle;
  border-top: 2px solid #ffffff;
  padding: 15px 20px;
  background-color: #ededed
}
@media (max-width: 768px) {
  .main-section-table5 tbody td {
    padding: 7px 15px
  }
}
.userGuide-nav {
  max-width: 840px;
  margin: 30px auto 50px auto
}
@media (max-width: 768px) {
  .userGuide-nav {
    margin: 15px auto 25px auto
  }
}
.userGuide-nav-ul {
  display: flex;
  justify-content: space-between;
  margin: 0 -8px
}
.userGuide-nav-ul-li {
  width: 100%;
  max-width: 400px;
  margin: 0 8px
}
.userGuide-nav-ul-li a {
  display: block;
  border: 1px solid #f00200;
  padding: 15px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  position: relative
}
@media (max-width: 768px) {
  .userGuide-nav-ul-li a {
    font-size: 1.1rem;
    padding: 10px;
    text-align: right
  }
}
.userGuide-nav-ul-li a::before {
  position: absolute;
  content: "";
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  height: 22px;
  background: url(../img/kiyaku/menu.svg) left center no-repeat
}
@media (max-width: 768px) {
  .userGuide-nav-ul-li a::before {
    width: 12px;
    height: 18px;
    left: 10px;
    background: url(../img/kiyaku/menu.svg) left center/12px 18px no-repeat
  }
}
.userGuide-nav-ul-li a:hover {
  opacity: .8
}
.beginner {
  display: block
}
@media (max-width: 768px) {
  .beginner .pc {
    display: none
  }
}
.beginner .sp {
  display: none
}
@media (max-width: 768px) {
  .beginner .sp {
    display: block
  }
}
.beginner-h1 {
  color: #f00200;
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif
}
@media (max-width: 768px) {
  .beginner-h1 {
    font-size: 2.6rem
  }
}
.beginner-h1 span {
  font-size: 3rem
}
@media (max-width: 768px) {
  .beginner-h1 span {
    font-size: 2rem
  }
}
.beginner-leadText {
  font-size: 1.9rem;
  text-align: center
}
@media (max-width: 768px) {
  .beginner-leadText {
    font-size: 1.2rem
  }
}
.beginner-ul {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  align-items: center
}
@media (max-width: 768px) {
  .beginner-ul {
    margin-top: 15px
  }
}
.beginner-ul-li {
  padding: 0 20px
}
@media (max-width: 768px) {
  .beginner-ul-li {
    padding: 0 5px
  }
}
.beginner-nextBtn {
  display: flex;
  justify-content: center;
  margin-top: 20px
}
.beginner-nextBtn li {
  width: 100%;
  max-width: 300px;
  margin: 0 15px
}
@media (max-width: 768px) {
  .beginner-nextBtn li {
    max-width: 150px;
    margin: 0 7px
  }
}
.beginner-nextBtn li a {
  border: 1px solid #f00200;
  display: block;
  text-decoration: none;
  padding: 15px;
  text-align: center;
  background-color: #ffffff;
  font-weight: bold;
  font-size: 1.6rem;
  position: relative
}
@media (max-width: 768px) {
  .beginner-nextBtn li a {
    font-size: 1.1rem;
    padding: 5px 15px
  }
}
.beginner-nextBtn li a::after {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  right: 15px;
  top: 50%;
  margin-top: -1px;
  border-top: 1px solid #f00200;
  border-right: 1px solid #f00200;
  transform: rotate(45deg) translateY(-50%)
}
.beginner p.laregeText {
  font-size: 1.8rem
}
@media (max-width: 768px) {
  .beginner p.laregeText {
    font-size: 1rem
  }
}
.beginner p.smallText {
  font-size: 1.3rem;
  text-align: left !important;
  padding: 0 20px
}
@media (max-width: 768px) {
  .beginner p.smallText {
    font-size: 1rem
  }
}
.beginner p.nextText {
  text-align: center;
  font-weight: bold;
  font-size: 2.6rem
}
@media (max-width: 768px) {
  .beginner p.nextText {
    font-size: 1.1rem
  }
}
.beginner p.optionText {
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  color: #f00200;
  position: relative;
  padding-top: 35px;
  margin-bottom: 10px
}
@media (max-width: 768px) {
  .beginner p.optionText {
    font-size: 1.4rem;
    padding-top: 15px
  }
}
.beginner p.optionText::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  width: 30px;
  height: 30px;
  transform: translateX(-50%);
  background: url(../img/beginner/plus.svg) no-repeat
}
@media (max-width: 768px) {
  .beginner p.optionText::before {
    top: -10px;
    background: url(../img/beginner/plus.svg) center/16px auto no-repeat
  }
}
.beginner a {
  color: #f00200;
  text-decoration: underline
}
.beginner a:hover {
  opacity: 0.8
}
.beginner-reservation {
  background: #ffcd06 url(../img/beginner/arrow.svg) right 20px center no-repeat;
  display: table;
  margin: 30px auto 35px auto;
  max-width: 290px;
  width: 100%;
  padding: 10px;
  text-align: center;
  color: #000000 !important;
  font-size: 2rem;
  text-decoration: none !important;
  font-weight: bold;
  box-shadow: 0 4px 0 #555555
}
@media (max-width: 768px) {
  .beginner-reservation {
    background: #ffcd06 url(../img/beginner/arrow.svg) right 10px center no-repeat;
    margin: 20px auto 20px auto;
    max-width: 200px;
    font-size: 1.3rem
  }
}
.beginner .container-lg {
  max-width: 800px;
  margin: 0 auto
}
.beginner-block {
  margin-top: 50px;
  background-color: #f7f7f0;
  padding: 50px 0
}
@media (max-width: 768px) {
  .beginner-block {
    margin-top: 25px;
    padding: 30px 0
  }
}
.beginner-section {
  margin-bottom: 50px
}
@media (max-width: 768px) {
  .beginner-section {
    padding: 0 15px;
    margin-bottom: 25px
  }
}
.beginner-section-h2 {
  border-left: 4px solid #f00200;
  font-size: 2.6rem;
  padding: 5px 0 5px 15px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  margin-bottom: 25px;
  line-height: 1
}
@media (max-width: 768px) {
  .beginner-section-h2 {
    padding: 5px 0 5px 8px;
    font-size: 1.5rem;
    margin-bottom: 20px
  }
}
.beginner-section-bnr {
  display: block;
  margin-top: 30px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.16)
}
.beginner-section-box {
  padding: 40px;
  background-color: #ffffff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.16);
  margin: 35px 0 20px 0
}
@media (max-width: 768px) {
  .beginner-section-box {
    padding: 20px;
    margin: 15px 0 20px 0
  }
.beginner-section-bnr {
  margin-top: 0px;
}	
}
.beginner-section-box-h3 {
  font-size: 2.4rem;
  font-weight: 700;
  color: #f00200;
  text-align: center
}
@media (max-width: 768px) {
  .beginner-section-box-h3 {
    font-size: 1.4rem
  }
}
.beginner-section-box-h3 span {
  background: linear-gradient(transparent 70%, #fdfa02 70%)
}
.beginner-section-box-text {
  font-weight: bold;
  font-size: 1.8rem
}
.beginner-section-box .row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between
}
@media (max-width: 768px) {
  .beginner-section-box .row {
    display: block
  }
}
.beginner-section-box-hosyo {
  display: flex;
  width: 100%;
  max-width: 330px;
  margin-top: 40px
}
@media (max-width: 768px) {
  .beginner-section-box-hosyo {
    max-width: 100%;
    margin-top: 10px
  }
}
.beginner-section-box-hosyo figure img {
  max-width: 96px !important
}
@media (max-width: 768px) {
  .beginner-section-box-hosyo figure img {
    max-width: 53px !important
  }
}
.beginner-section-box-hosyo-right {
  margin-left: 15px
}
@media (max-width: 768px) {
  .beginner-section-box-hosyo-right {
    width: 100%;
    margin-left: 8px
  }
}
.beginner-section-box-hosyo-right h4 {
  font-weight: bold;
  font-size: 2rem;
  position: relative;
  margin-bottom: 10px;
  padding-bottom: 5px
}
@media (max-width: 768px) {
  .beginner-section-box-hosyo-right h4 {
    font-size: 1.2rem
  }
}
.beginner-section-box-hosyo-right h4::before {
  background-color: #f00200;
  position: absolute;
  content: "";
  width: 100%;
  height: 4px;
  bottom: 0px;
  left: 0px
}
@media (max-width: 768px) {
  .beginner-section-box-hosyo-right h4::before {
    height: 2px
  }
}
.beginner-section-box-hosyo-right h4::after {
  background-color: #c4c4c4;
  position: absolute;
  content: "";
  width: 80%;
  height: 4px;
  bottom: 0px;
  right: 0px
}
@media (max-width: 768px) {
  .beginner-section-box-hosyo-right h4::after {
    height: 2px
  }
}
.beginner-section-box-hosyo-right p {
  font-size: 1.8rem;
  line-height: 1.4
}
@media (max-width: 768px) {
  .beginner-section-box-hosyo-right p {
    font-size: 1rem
  }
}
.beginner-section-row {
  display: flex;
  justify-content: space-between;
  align-items: center
}
@media (max-width: 768px) {
  .beginner-section-row {
    margin: 0 -8px
  }
}
.beginner-section-row-box {
  padding: 20px 15px;
  width: 100%;
  background-color: #ffffff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.16);
  /*margin-bottom: 40px;*/
  text-align: center
}
@media (max-width: 768px) {
  .beginner-section-row-box {
    margin: 0 8px 20px 8px;
    padding: 15px
  }
}
.beginner-section-row-box-h3 {
  font-size: 2.6rem;
  font-weight: 700;
  position: relative
}
@media (max-width: 768px) {
  .beginner-section-row-box-h3 {
    font-size: 1.7rem
  }
}
.beginner-section-row-box-h3::after {
  position: absolute;
  content: "";
  width: 140px;
  height: 4px;
  background-color: #f00200;
  left: 50%;
  bottom: 0px;
  transform: translateX(-50%)
}
@media (max-width: 768px) {
  .beginner-section-row-box-h3::after {
    width: 90px;
    height: 3px;
    bottom: -2px
  }
}
.beginner-section-row-box-h4 {
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 15px
}
@media (max-width: 768px) {
  .beginner-section-row-box-h4 {
    font-size: 1.1rem
  }
}
.beginner-section-row-box-h4 span {
  font-size: 2rem
}
@media (max-width: 768px) {
  .beginner-section-row-box-h4 span {
    font-size: 1.3rem
  }
}
.beginner-section-row-box-h4 span.redText {
  color: #f00200
}
.beginner-section-row-box-h4 span.smallText {
  font-weight: normal;
  font-size: 1.3rem
}
@media (max-width: 768px) {
  .beginner-section-row-box-h4 span.smallText {
    font-size: 1rem
  }
}
.beginner-section-row-box figure {
  padding: 15px 0 10px 0
}
.beginner-section-row-box-text {
  font-weight: bold;
  font-size: 1.8rem
}
.beginner-section-flow {
  padding: 50px 40px;
  width: 100%;
  background-color: #ffffff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.16);
  margin-bottom: 40px
}
@media (max-width: 768px) {
  .beginner-section-flow {
    padding: 20px;
    margin-bottom: 20px
  }
}
.beginner-section-flow p {
  font-size: 1.6rem !important
}
@media (max-width: 768px) {
  .beginner-section-flow p {
    font-size: 1rem !important
  }
}
.beginner-section-flow-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #f00200;
  padding-bottom: 5px;
  margin-bottom: 20px
}
@media (max-width: 768px) {
  .beginner-section-flow-title {
    margin-bottom: 15px
  }
}
.beginner-section-flow-title span.number {
  font-size: 3rem;
  border: 1px solid #f00200;
  padding: 5px 22px;
  border-radius: 50%;
  color: #f00200
}
@media (max-width: 768px) {
  .beginner-section-flow-title span.number {
    font-size: 1.6rem;
    padding: 5px 14px
  }
}
.beginner-section-flow-title h3 {
  margin-left: 20px;
  color: #f00200;
  font-size: 2.4rem;
  font-weight: bold
}
@media (max-width: 768px) {
  .beginner-section-flow-title h3 {
    margin-left: 10px;
    font-size: 1.4rem
  }
}
.beginner-section-flow-title-flex {
  display: flex;
  align-items: center;
  margin-bottom: 10px
}
.beginner-section-flow .row {
  display: flex;
  justify-content: space-between
}
@media (max-width: 768px) {
  .beginner-section-flow .row {
    display: block
  }
}
.beginner-section-flow-btns {
  margin-left: 40px
}
@media (max-width: 768px) {
  .beginner-section-flow-btns {
    margin-left: 0px;
    display: flex;
    justify-content: center
  }
}
.beginner-section-flow-btns a {
  display: block;
  width: 200px;
  max-width: 200px;
  color: #ffffff;
  background-color: #f00200;
  padding: 10px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  margin-bottom: 14px
}
.beginner-section-flow-btns a:hover {
  opacity: 0.8
}
@media (max-width: 768px) {
  .beginner-section-flow-btns a {
    width: 230px;
    max-width: 160px;
    font-size: 1.1rem;
    margin: 10px 5px 0 5px;
    padding: 5px 10px
  }
}
.beginner-section-flow-btns a::after {
  position: absolute;
  content: "";
  right: 15px;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -1px;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  transform: rotate(45deg) translateY(-50%)
}
.beginner-section-flow-block {
  border-bottom: 1px dashed #f00200;
  padding-bottom: 20px;
  margin-bottom: 20px
}
@media (max-width: 768px) {
  .beginner-section-flow-block {
    padding-bottom: 15px;
    margin-bottom: 15px
  }
}
.beginner-section-flow-block:first-child {
  padding-top: 40px
}
@media (max-width: 768px) {
  .beginner-section-flow-block:first-child {
    padding-top: 20px
  }
}
.beginner-section-flow-block:last-child {
  border-bottom: 0px dashed #f00200;
  margin-bottom: 0;
  padding-bottom: 0
}
.beginner-section-flow-block-ttl {
  display: flex;
  align-items: center;
  margin-bottom: 15px
}
@media (max-width: 768px) {
  .beginner-section-flow-block-ttl figure {
    width: 35px;
    height: auto
  }
}
.beginner-section-flow-block-ttl h4.redTitle {
  color: #f00200;
  font-size: 2.2rem;
  font-weight: bold;
  padding-left: 10px
}
@media (max-width: 768px) {
  .beginner-section-flow-block-ttl h4.redTitle {
    font-size: 1.3rem;
    padding-left: 6px
  }
}
.beginner-section-flow-block-ttl div {
  display: flex;
  align-items: center
}
.beginner-section-flow-block-ttl div .smallText {
  font-size: 1.4rem !important;
  font-weight: bold;
  line-height: 1.4;
  padding: 0 5px 0 0
}
@media (max-width: 768px) {
  .beginner-section-flow-block-ttl div .smallText {
    font-size: 1rem !important
  }
}
.beginner-section-flow-block-column p.dotText {
  font-size: 1.3rem !important;
  text-indent: -1em;
  padding-left: 1em
}
@media (max-width: 768px) {
  .beginner-section-flow-block-column p.dotText {
    font-size: 1rem !important
  }
}
.beginner-section-flow-block-column ul li {
  font-size: 1.6rem
}
@media (max-width: 768px) {
  .beginner-section-flow-block-column ul li {
    font-size: 1rem
  }
}
.beginner-section-flow-block-column ul.check li {
  padding-left: 1.5em;
  margin-bottom: 5px;
  background: url(../img/beginner/check.svg) left 4px no-repeat
}
@media (max-width: 768px) {
  .beginner-section-flow-block-column ul.check li {
    font-size: 1rem;
    background: url(../img/beginner/check.svg) left 4px/12px auto no-repeat
  }
}
.beginner-section-flow-block-column ul.check li span {
  font-size: 1.3rem
}
@media (max-width: 768px) {
  .beginner-section-flow-block-column ul.check li span {
    font-size: 1rem
  }
}
.beginner-section-flow-block-column ul.number li {
  text-indent: -1em;
  padding-left: 1em
}
.beginner-section-flow-block-column ul.dot li {
  text-indent: -1em;
  padding-left: 1em
}
.beginner-section-flow-block-column ul.dot li::before {
  content: "※"
}
.beginner-section-flow-block-column-bnr {
  margin: 20px 0 20px 0;
  text-align: center
}
@media (max-width: 768px) {
  .beginner-section-flow-block-column-bnr {
    margin: 15px 0 0 0
  }
}
.beginner-section-flow-block-column-return {
  margin-bottom: 20px
}
.beginner-section-flow-block-column-return h4 {
  font-size: 1.6rem;
  color: #f00200;
  font-weight: bold
}
@media (max-width: 768px) {
  .beginner-section-flow-block-column-return h4 {
    font-size: 1rem
  }
}
.beginner-section-flow-block-fukidashi {
  display: flex;
  justify-content: center;
  margin-top: 30px
}
.beginner-section-flow-block-fukidashi a {
  display: block;
  width: 320px;
  max-width: 320px;
  color: #f00200;
  border: 1px solid #f00200;
  padding: 10px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  margin-bottom: 14px;
  margin-left: 10px
}
.beginner-section-flow-block-fukidashi a:hover {
  opacity: 0.8
}
@media (max-width: 768px) {
  .beginner-section-flow-block-fukidashi a {
    width: 230px;
    max-width: 230px;
    font-size: 1.1rem;
    margin: 10px auto 0 auto;
    padding: 5px 10px
  }
}
.beginner-section-flow-block-fukidashi a::after {
  position: absolute;
  content: "";
  right: 15px;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -1px;
  border-top: 1px solid #f00200;
  border-right: 1px solid #f00200;
  transform: rotate(45deg) translateY(-50%)
}
@media (max-width: 768px) {
  .beginner-section-flow-block .fukidashi {
    max-width: 280px;
    height: auto
  }
}
.beginner-section-flow-block-btns {
  margin-left: 40px
}
@media (max-width: 768px) {
  .beginner-section-flow-block-btns {
    margin-left: 0px
  }
}
.beginner-section-flow-block-btns a {
  display: block;
  width: 200px;
  max-width: 200px;
  color: #f00200;
  border: 1px solid #f00200;
  padding: 10px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  margin-bottom: 14px
}
.beginner-section-flow-block-btns a:hover {
  opacity: 0.8
}
@media (max-width: 768px) {
  .beginner-section-flow-block-btns a {
    width: 230px;
    max-width: 230px;
    font-size: 1.1rem;
    padding: 5px 10px;
    margin: 10px auto 0 auto
  }
}
.beginner-section-flow-block-btns a::after {
  position: absolute;
  content: "";
  right: 15px;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -1px;
  border-top: 1px solid #f00200;
  border-right: 1px solid #f00200;
  transform: rotate(45deg) translateY(-50%)
}
@media (max-width: 768px) {
  .beginner-section .layout {
    display: block;
    padding: 0 7px
  }
}
.beginner-section .w380 {
  max-width: 380px
}
.beginner-section .w395 {
  max-width: 395px
}
@media (max-width: 768px) {
  .beginner-section .w395 {
    max-width: 100%;
    margin: 0 0 10px 0
  }
}
.beginner-section .justcontent-spacebetween {
  justify-content: space-between
}
@media (max-width: 768px) {
  .beginner-section .smork {
    max-width: 64px
  }
}
@media (max-width: 768px) {
  .beginner-section .mark {
    padding-right: 30px
  }
}
@media (max-width: 768px) {
  .beginner img.illust1 {
    max-width: 60px !important
  }
  .beginner img.illust2 {
    max-width: 140px !important
  }
}