@charset "UTF-8";


/* 
------------------------------------------------------------------------------------*/
.mainTit_teiki {
  font-size: 2.6rem;
  font-weight: bold;
  text-align: center;
  margin: 0 16px;
  padding: 40px 0 4px;
}

.qa_mainList {
  background: #fff;
  border: #dcdcdc solid 1px;
  list-style: none;
  margin-top: 12px;
}
.qa_mainList:first-of-type { margin-top: 0; }

.qa_toggle { display: none; }

.qa_toggleTit {
  background: #fff;
  font-size: 2rem;
  font-weight: bold;
  line-height: 2.2rem;
  display: grid;
  align-items: center;
  position: relative;
  cursor: pointer;
  padding: 11px 40px 11px 12px;
}
.qa_toggleTit::before,
.qa_toggleTit::after {
  content: "";
  background: #000;
  width: 4px;
  height: 14px;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto 0;
  transition: all 0.3s;
}
.qa_toggleTit::after { transform: rotate(90deg); }
.qa_toggle:checked ~ h2 .qa_toggleTit::before { transform: rotate(90deg); }

.qa_toggleTit_sub {
  background: #f0f0f0;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2rem;
  display: flex;
  position: relative;
  cursor: pointer;
  margin: 0px 12px;
  padding: 11px 40px 11px 12px;
}
.qa_toggleTit_sub::before,
.qa_toggleTit_sub::after {
  content: "";
  background: #000;
  width: 4px;
  height: 14px;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -7px;
  transition: all 300ms;
}
.qa_toggleTit_sub::after { transform: rotate(90deg); }
.qa_toggleTit_sub_add::before { transform: rotate(90deg); }

.qa_toggleTit_sub span {
  line-height: 1.8rem;
  margin-right: 4px;
}

.qa_accordion,
.qa_accordion_detail {
  max-height: 0;
  overflow: hidden;  
  transition: max-height 250ms;
}
.qa_toggle:checked ~ .qa_accordion,
.qa_toggle:checked + h3 + .qa_accordion_detail { max-height: var(--max_height); }

.qa_accordion_detail {
  background: #f0f0f0;
  margin: 0px 12px 8px;
  padding: 0 12px;
}
.qa_accordion_detail::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #ccc;
  display: block;
  margin-bottom: 8px;
}
.qa_accordion_detail > *:first-child { margin-top: 0; }
.qa_accordion_detail > *:last-child { padding-bottom: 12px; }

.qa_h4 {
  --fs: 1.6rem;
  --fh: 1.8rem;
  font-size: var(--fs);
  text-indent: -1em;
  line-height: var(--fh);
  margin: calc(28px + ((var(--fs) - var(--fh)) / 2)) 0 calc(0px + ((var(--fs) - var(--fh)) / 2));
  padding-left: 1em;
}

.qa_txt {
  --fs: 1.6rem;
  --fh: 2.2rem;
  font-size: var(--fs);
  line-height: var(--fh);
  margin: calc(22px + ((var(--fs) - var(--fh)) / 2)) 0 calc(0px + ((var(--fs) - var(--fh)) / 2));
}
.qa_h4 + .qa_txt { margin-top: 6px; }

.qa_span_indent {
  width: 100%;
  --fs: 1.6rem;
  --fh: 2.2rem;
  font-size: var(--fs);
  line-height: var(--fh);
  text-indent: -1em;
  display: inline-block;
  margin: calc(3px + ((var(--fs) - var(--fh)) / 2)) 0 calc(0px + ((var(--fs) - var(--fh)) / 2));
  padding-left: 1em;
}

.qa_span_indent2 {
  width: 100%;
  --fs: 1.6rem;
  --fh: 2.2rem;
  font-size: var(--fs);
  line-height: var(--fh);
  text-indent: -2em;
  display: inline-block;
  margin: calc(3px + ((var(--fs) - var(--fh)) / 2)) 0 calc(0px + ((var(--fs) - var(--fh)) / 2));
  padding-left: 2em;
}

.aq_span_strikethrough { text-decoration: line-through; }

.qa_ul { list-style: disc; margin: 8px 0 0 23px; }
.qa_ol { margin: 8px 0 0 28px; }

.qa_ul li,
.qa_ol li {
  --fs: 1.6rem;
  --fh: 2.2rem;
  font-size: var(--fs);
  line-height: var(--fh);
  margin: calc(8px + ((var(--fs) - var(--fh)) / 2)) 0 calc(0px + ((var(--fs) - var(--fh)) / 2));
}
/* .rules_h2 + .rules_ul { margin-top: 10px; } */

.qa_txt + .qa_img { margin-top: 12px; }

.qa_table {
  width: 100%;
  border: #ccc solid 1px;
  border-left: none;
  border-bottom: none;
  border-spacing: 0;
  margin-top: 8px;
}

.qa_table th,
.qa_table td {
  width: 50%;
  background: #fff;
  border: #ccc solid 1px;
  border-top: none;
  border-right: none;
  text-align: center;
  padding: 12px 4px;
}
.qa_table td span { font-size: 1rem; }

.qa_table thead th { background: #d9d3cd; }
.qa_table tbody th { background: #eef6f8; }
