@charset "utf-8";

.imgBox {
  width: 100%;
  max-width: 100%;
}
.spOnly {
  display: none;
}
.pcOnly {
  display: inherit;
}
@media screen and (max-width: 736px) {
  .spOnly {
    display: inherit;
  }
  .pcOnly {
    display: none;
  }
}

.txt_type01 {
  line-height: 1.8;
  font-size: 1.5rem;
}
figure img {
  max-width: 100%;
}
figure .caption {
  padding: 10px 0 0;
  text-align: center;
}
@media screen and (max-width: 736px) {
figure .caption {
  text-align: left;
}
.paragraph01 {
  font-size: 1.5rem;
}
}

.color_3999de {
  color:#3999de;
}
.backLine_d8f1ff {
  background-color: #d8f1ff;
}
.flexCnt {
  display: flex;
}
.flex_heading02 {
  padding: 0 0 9px;
  display: flex;
  align-items: center;
  overflow: hidden;
}
  .flex_heading02 .title_icon {
    width: 115px;
    margin: 0 10px 0 0;
  }
@media screen and (max-width: 736px) {
.flex_heading02 {
  font-size: 2.2rem;
}
  .flex_heading02 .title_icon {
    width: 85px;
    padding-left: 3px;
  }
  .flex_heading02 .t {
    padding-right: 3px;
  }
}

.tableLayout01 {
  border-right: 1px solid #444444;
  border-bottom: 1px solid #444444;
}
.tableLayout01 th,
.tableLayout01 td {
  border-left: 1px solid #444444;
  border-top: 1px solid #444444;
  text-align: center;
}
.tableLayout01 tbody th,
.tableLayout01 .lv02 {
  vertical-align: middle;
  background: #f9f8e9;
}
.tableLayout01 thead th,
.tableLayout01 .lv01 {
  color: #444444;
  background: #f3eca3;
}

.heading01 {
  margin-bottom: 1.5em;
}

.key figure img {
  width: 100%;
  margin: 0 auto;
}
.key figure .caption {
  margin: 5px auto 15px;
}
.key .paragraph01 {
  margin-top: 1.5em !important;
}

@media screen and (max-width: 736px) {
.key figure .caption {
  text-align: left;
}
}

.voiceBox01 {
  width: 100%;
  max-width: 560px;
  margin: 0 auto 1.5% 0;
}
  .voicetext01 {
    padding: 4.5% 5.5%;
    border: 4px solid #fe8b96;
    border-radius: 100px;
    font-weight: 600;
  }
  .voiceBox_icon01 {
    width: 100%;
    max-width: 37px;
    min-width: 25px;
    margin: 0 auto;
    display: block;
  }
.voiceBox01.right {
  margin: 0 0 3.5% auto;
}
@media screen and (max-width: 736px) {
.voiceBox01 {
  max-width: 100%;
}
  .voicetext01 {
    border-radius: 20px;
  }
}


.pointBox01 {
  margin: 0 0 3.5%;
}
  .point_icon01 {
    width: 100%;
    max-width: 120px;
    min-width: 45px;
    margin: 0;
  }
  .pointTxtBox {
    width: 100%;
    padding: 0 0 0 13px;
  }
    .point_heading01 {
      padding: 35px 0 15px;
      background: url('../images/point_border.png') repeat-x; /* 背景画像を横方向にリピート */
      background-size: 40px;
      background-position: 6px 100%;
    }
    .pointBox01_imgBox {
      max-width: 680px;
      display: flex;
      gap: 5%;
      margin-top: 15px;
    }
    .pointBox01_imgBox img {
      width: 45%;
    }
@media screen and (max-width: 736px) {
.pointBox01 {
  position: relative;
}
  .point_icon01 {
    max-width: 80px;
    min-width: 80px;
    position: absolute;
    top: 15px;
    left: 0;
  }
  .point_icon01.one {
    top: 0;
  }
  .point_heading01 {
    width: auto;
    padding: 15px 0 10px;
    margin: 0 0 0 80px;
    background-size: 30px;
    background-position: 6px 100%;
  }
  .pointTxtBox .paragraph01 {
    font-size: 1.5rem;
    margin: 25px 0 15px !important;
  }
  .tableWrap01 {
    margin-top: 10px;
  }
}

.caseBoxWrapper {
  display: flex;
  gap: 2%;
}
  .caseBox01 {
    width: 47%;
  }
    .caseBox01 .imgBox {
      line-height: 0;
    }
    .caseBox01 .paragraph01 {
      padding: 4% 3.3%;
      margin: 0 !important;
      line-height: 1.9;
      border-radius: 0 0 15px 15px;
      background-color: #fdfbba;
    }
  .caseBox02 {
    width: 50%;
    padding: 0 2%;
  }
    .caseBox02 .voicetext01 {
      font-weight: normal;
    }
    .caseBox02 .imgBox {
      max-width: 230px;
      margin: 0 auto;
    }
    .caseBox02 .paragraph01 {
      padding: 0 0 0 33%;
    }
      .caseBox02_who {
        margin: 5px 0;
        display: inline-block;
      }
@media screen and (max-width: 736px) {
.caseBoxWrapper {
  display: block;
}
  .caseBox01,
  .caseBox02 {
    width: 100%;
  }
  .caseBox01 {
    margin: 0 0 20px;
  }
      .caseBox01 .paragraph01 {
        line-height: 1.5;
      }
  .caseBox02 {
    padding: 0;
  }
    .caseBox02 .paragraph01 {
      padding: 0 0 0 0;
      text-align: center;
    }
}

.location_heading02 {
  border: none;
  margin-bottom: 0;
}
  .location_heading02 .t {
    display: block;
    text-align: center;
  }
  .location_heading02 .t_btm {
    max-width: 230px;
    margin: 0 auto;
    display: block;
  }
  .locationBox01 {
    display: flex;
    gap: 0;
  }
    .locationBox01 {
    }
      .locationBox01 .imgBox {
        width: 48%;
        padding: 0 1% 0 0;
      }
      .locationBox01 .caption {
        width: 52%;
        padding: 0 2%;
        display: flex;
        align-items: center;
        text-align: left;
      }
  .locationBox02 {
    display: flex;
    gap: 0;
    margin: 2% 0 0;
  }
    .locationBox02 .img01 {
      width: 50%;
      padding: 0;
      text-align: right;
    }
      .locationBox02 .img01 img {
        max-width: 400px;
      }
    .locationBox02 .img02 {
      width: 50%;
      padding: 0 0 0 6%;
      margin: -2% 0 0;
      max-width: 400px;
    }
@media screen and (max-width: 736px) {
.location_heading02 {
  margin: 60px auto 20px;
}
  .locationBox01 {
    display: block;
  }
      .locationBox01 .imgBox {
        width: 100%;
        padding: 0 0 0;
      }
      .locationBox01 .caption {
        width: 100%;
        padding: 0 0 0;
        display: block;
      }
  .locationBox02 {
    display: block;
    margin: 20px 0 0;
  }
    .locationBox02 .img01 {
      width: 100%;
      padding: 0;
      text-align: inherit;
    }
      .locationBox02 .img01 img {
        max-width: inherit;
      }
    .locationBox02 .img02 {
      width: 100%;
      padding: 0 0 0;
      margin: 20px 0 0;
      max-width: inherit;
    }
}

.moreBoxWrapper {
  margin: 5% 5.5%;
}
  .moreLink01 {
    width: 100%;
    max-width: 550px;
    margin: 0 auto 15px;
    padding: 12px 0;
    text-align: center;
    border: 3px solid #3485ca;
    color: #fff;
    border-bottom: 5px solid #3485ca;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    font-weight: bold;
    transition: background-color 0.3s, color 0.3s;
    background-color: #3999de;
  }
    .moreLink_txt01 {
      width: 100%;
      max-width: 270px;
      color: #fff;
      letter-spacing: 0.08em;
    }
    .moreLink_icon01 {
      width: 50px;
      min-width: 50px;
      max-width: 50px;
      display: inline-block;
      margin: 0 0 0 10px;
    }
  .moreLink01:hover {
    background-color: #61bdff;
    text-decoration: none;
  }
@media screen and (max-width: 736px) {
.moreBoxWrapper {
  margin: 40px 0;
}
    .moreLink_icon01 {
      width: 30px;
      min-width: 30px;
      max-width: 30px;
      display: inline-block;
      margin: 0 0 0 10px;
    }
}