@charset "utf-8";

body {
  counter-reset: number cutNum;
}

/* ↓↓↓ ###↓↓↓ */
.mainbox {
  width: 100%;
  margin: 45px 0 0;
}

@media screen and (max-width: 750px) {
  .mainbox {
    width: 100%;
    margin: 20px 0 0;
  }
}

.mainbox .image {
  display: block;
  height: 100%;
}

.mainbox .image img {
  display: block;
  margin: 0 auto;
}

.definition {
  margin-bottom: 1px;
  display: flex;
}

@media screen and (max-width: 750px) {
  .definition {
    flex-direction: column;
  }
}

.attention {
  font-size: 12px;
}

.box-list{
  width: 100%;
  font-family: 'ヒラギノ角ゴ Pro';
  text-align: justify;
}

/* .box-list:last-of-type{
  margin-bottom: 65px;
} */

.table3-head,
.table2-head,
.table1-head {
  width: 100%;
  height: 50px;
  display: flex;
}

@media screen and (max-width: 750px) {

  .table3-head,
  .table2-head,
  .table1-head {
    display: none;
  }
}

.table3-head li,
.table2-head li,
.table1-head li{
  border-right: 1px solid #fff;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

p.table3-head,
p.table2-head,
p.table1-head{
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
  border-top: 1px solid #fff;
  display: flex;
  align-items: center;
  padding: 0 30px;
}

.table1-head li,
p.table1-head{
  background-color: #E88E7D;
}

.table2-head li,
p.table2-head {
  background-color: #19A0C4;
}

.table3-head li,
p.table3-head{
  background-color: #E0871E;
}


.table1-head li:nth-of-type(1) {
  width: 9%;
}

.table1-head li:nth-of-type(2) {
  width: 25%;
}

.table1-head li:nth-of-type(3) {
  width: 25%;
}

.table1-head li:nth-of-type(4) {
  width: 41%;
}

.table2-head li:nth-of-type(1) {
  width: 45%;
}

.table2-head li:nth-of-type(2) {
  width: 55%;
}

.table2-head li:last-of-type,
.table1-head li:last-of-type {
  margin-right: 0;
}

.table-body_txt,
.table2-body_txt{
  font-size: 1.4rem;
  font-weight: 300;
  background-color: #F2F2F2;
  border-top: 1px solid #fff;
  padding: 30px;
}

.table-body_txt .text-flex,
.table2-body_txt .text-flex{
  display: flex;
  text-indent: -2em;
  padding-left: 2em;
}

.table-body_txt .text-flex.two-lt,
.table2-body_txt .text-flex.two-lt{
  text-indent: -3em;
  padding-left: 3em;
}

.table-body_txt .text-flex.three-lt,
.table2-body_txt .text-flex.three-lt{
  text-indent: -4em;
  padding-left: 4em;
}

.table-body_txt .text-flex.four-lt,
.table2-body_txt .text-flex.four-lt{
  text-indent: -5em;
  padding-left: 5em;
}

.table-body_accordion{
  position: relative;
  background-color: #F2F2F2;
  border-top: 1px solid #fff;
}

.table-body_accordion .accordion_title{
  font-size: 1.6rem;
  font-weight: bold;
  cursor: pointer;
  text-indent: -2.2em;
  padding: 23px 60px 23px calc(30px + 2.2em);
  transition: padding ease .6s;
}

@media screen and (max-width: 750px) {
  .table-body_accordion .accordion_title{
    padding: 20px 60px 20px calc(15px + 2.2em);
  }
}

.table-body_accordion.active .accordion_title{
  padding-bottom: 0;
}

#general .table-body_accordion .accordion_title{
  color: #e96f57;
}

#area .table-body_accordion .accordion_title{
  color: #179fc4;
}

#job .table-body_accordion .accordion_title{
  color: #E0871E;
}

.table-body_accordion .accordion_title .num {
  content: '';
  position: relative;
  width: 1.8em;
  height: 1.125em;
  display: inline-block;
}

.table-body_accordion .accordion_title .num::before {
  position: absolute;
  counter-increment: cutNum 1;      /* number カウンタの増加数をセット */
  content: counter(cutNum, decimal-leading-zero);      /* 表示形式を指定 */
  top: 0;
  left: 135%;
}

.table-body_accordion .accordion_btn{
  position: absolute;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  top: 20px;
  right: 30px;
}

@media screen and (max-width: 750px) {
  .table-body_accordion .accordion_btn{
    right: 15px;
  }
}

#general .table-body_accordion .accordion_btn{
  background-color: #e88e7d;
}

#area .table-body_accordion .accordion_btn{
  background-color: #179fc4;
}

#job .table-body_accordion .accordion_btn{
  background-color: #E0871E;
}

.table-body_accordion .accordion_btn::before,
.table-body_accordion .accordion_btn::after{
  content: '';
  position: absolute;
  width: 14px;
  height: 1px;
  background-color: #fff;
  top: 14px;
  left: 8px;
}

.table-body_accordion .accordion_btn::after{
  transform: rotate(90deg);
  transform-origin: center;
  transition: transform ease .3s;
}

.table-body_accordion.active .accordion_btn::after{
  transform: rotate(360deg);
}

.table-body_accordion .accordion_body{
  display: none;
  color: initial;
  margin-top: 45px;
  padding: 30px;
  padding: 0 30px 30px;
}

@media screen and (max-width: 750px) {
  .table-body_accordion .accordion_body{
    padding: 0 20px 20px;
  }
}

.table-body_accordion .accordion_body p{
  font-size: 1.4rem;
  font-weight:300;
}

.box-list p+p{
  margin-top: 35px;
}

.table-body_accordion .accordion_body .accordion_head{
  font-size: 1.5rem;
  font-weight: bold;
  display: block;
  margin-bottom: 10px;
}

/* #general .table-body_accordion .accordion_body .accordion_head{
  color: #e88e7d;
}

#area .table-body_accordion .accordion_body .accordion_head{
  color: #179fc4;
} */

.table-body_accordion .accordion_body .dot{
  position: relative;
  display: block;
  padding-left: 1.4rem;
  margin-top: 10px;
}

.table-body_accordion .accordion_body strong+.dot {
  margin-top: unset;
}

.table-body_accordion .accordion_body .dot::before{
  content: '●';
  position: absolute;
  width: 1.4rem;
  height: 1.4rem;
  font-size: 1.4rem;
  top: 0;
  left: 0;
}

#general .table-body_accordion .accordion_body .dot::before{
  color: #e88e7d;
}

#area .table-body_accordion .accordion_body .dot::before{
  color: #0089af;
}

#job .table-body_accordion .accordion_body .dot::before{
  color: #E0871E;
}

.box-list .indent{
  display: block;
  text-indent: -1.4rem;
  padding-left: 1.4rem;
}

.box-list .number {
  position: relative;
  display: block;
  padding-left: 32px;
}

.box-list .number::before {
  position: absolute;
  counter-increment: number 1;      /* number カウンタの増加数をセット */
  content: '('counter(number)')';      /* 表示形式を指定 */
  top: 0;
  left: 0;
}

.box-list .note{
  margin-top: 20px;
}

.box-list .note+.note{
  margin-top: 0;
}

.table-body_note{
  background-color: #F2F2F2;
  border-top: 1px solid #fff;
  padding: 30px;
}

@media screen and (max-width: 750px) {
.table-body_note{
    padding: 20px;
  }
}

.table-body_note .note{
  margin-top: 0;
}

/* ↑↑↑ ###↑↑↑ */