/*
###################################################################################################################################

#visual

###################################################################################################################################
*/
/*visual ------------------------------------------------------------------------------------*/
body.acp #visual h1 > span {
  display: none;
}
@media screen and (min-width:768px), print {
  /*visual pc ------------------------------------------------------------------------------------*/
  #visual {
    background-image: url(../../images/acp/mv_acp_01_pc.jpg);
    background-position: center center;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*visual tab ------------------------------------------------------------------------------------*/
}
@media only screen and (max-width: 767px) {
  /*visual sp ------------------------------------------------------------------------------------*/
  #visual {
    background-image: url(../../images/acp/mv_acp_01_sp.jpg);
    background-position: center center;
  }
}
/*
###################################################################################################################################

common

###################################################################################################################################
*/
.file_link {
  color: #303030;
  text-decoration: underline;
}
.file_link {
  text-decoration: underline;
  color: #303030;
  border: 1px solid #c1c1c1;
  position: relative;
  text-align: center;
  background-color: #FFFFFF;
}
.file_link:after {
  display: inline-block;
  content: "";
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.file_link.pdf:after {
  background-image: url(../../images/care/contact/icon_pdf.png);
}
.file_link.excel:after {
  background-image: url(../../images/care/contact/icon_excel.svg);
}
#nav_wrap .localnavi > li > a {
  text-decoration: none;
  color: #FFFFFF;
  font-weight: 500;
  justify-content: center;
  align-items: center;
}
#nav_wrap .localnavi > li {
  background-color: #299EDB;
}
@media screen and (min-width:768px), print {
  /*common pc ------------------------------------------------------------------------------------*/
  .file_link {
    padding: 10px 0;
    min-width: 320px;
    display: inline-block;
  }
  .file_link:after {
    width: 22px;
    height: 22px;
    margin: 0 0 -5px 5px;
  }
  .file_list {
    margin: 10px -1% 0;
  }
  .file_list > li {
    margin: 0 1% 0;
    flex-basis: 31.333%;
  }
  .file_list > li a {
    display: block;
    min-width: 0px;
  }
  #nav_wrap {
    margin: 60px 0 20px;
  }
  #nav_wrap .localnavi > li {
    border-radius: 37px;
    flex-basis: 31.9%;
    margin-bottom: 40px;
  }
  #nav_wrap .localnavi > li > a {
    padding: 20px 0;
    font-size: 2rem;
    line-height: 1.5;
  }
  .contactBtn > a {
    min-width: 300px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*common tab ------------------------------------------------------------------------------------*/
}
@media only screen and (max-width: 767px) {
  /*common sp ------------------------------------------------------------------------------------*/
  .file_link {
    display: block;
    padding: 2.78vw 0;
    margin: 0 6vw;
  }
  .file_link:after {
    width: 4.17vw;
    height: 4.17vw;
    margin: 0 0 -0.8vw 1.39vw;
  }
  .file_list {
    display: block;
  }
  .file_list > li + li {
    margin-top: 2.78vw;
  }
  #nav_wrap {
    margin: 8.33vw 0 4.16vw;
  }
  #nav_wrap .localnavi > li {
    border-radius: 6.94vw;
    flex-basis: 41.67vw;
    margin-bottom: 4.17vw;
  }
  #nav_wrap .localnavi > li > a {
    line-height: 1.45;
    padding: 0 4.17vw;
    min-height: 13.89vw;
    text-align: center;
    letter-spacing: 0.03em;
  }
}
/*
###################################################################################################################################

body.care

###################################################################################################################################
*/
body.care .list .ttl {
  font-weight: 500;
}
@media (min-width:768px), print {
  /*body.care pc ------------------------------------------------------------------------------------*/
  body.care .list > li {
    flex-basis: 31.6%;
    margin-bottom: 70px;
  }
  body.care .list .ttl {
    font-size: 2rem;
    margin: 15px 0 10px;
    text-align: center;
  }
  body.care .list .txt {
    margin-bottom: 40px;
  }
  body.care .list .btn01 > a {
    padding: 8px 0;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*body.care tab ------------------------------------------------------------------------------------*/
}
@media (max-width: 767px) {
  /*body.care sp ------------------------------------------------------------------------------------*/
  body.care #sec01 {
    margin: 8.33vw 0;
  }
  body.care .list > li {
    margin-bottom: 8.33vw;
  }
  body.care .list > li:last-child {
    margin-bottom: 0;
  }
  body.care .list .ttl {
    margin: 4.17vw 0;
    font-size: 4.17vw;
  }
  body.care .list .txt {
    margin-bottom: 4.17vw;
  }
}
/*
###################################################################################################################################

body.appli

###################################################################################################################################
*/
/*
###################################################################################################################################

step_list

###################################################################################################################################
*/
/*step_list ------------------------------------------------------------------------------------*/
#form .step_list_dot {
  position: relative;
  z-index: 0;
}
#form .step_list {
  justify-content: space-between;
}
#form .step_list > li {
  text-align: center;
}
#form .step_list .circle_icon_list {
  background-color: #b9b9b9;
  display: flex;
  border-radius: 100px;
  color: #FFFFFF;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 0 auto 10px;
  flex-direction: column;
}
#form .step_list > li.active .circle_icon_list {
  background-color: #299edb;
}
#form .step_list .circle_icon_list > dt, #form .step_list .circle_icon_list > dd {
  font-weight: 400;
}
#form .step_list .circle_icon_list > dt {
  line-height: 1.1;
  letter-spacing: 0.08em;
}
#form .step_list .circle_icon_list > dd {
  line-height: 1;
  font-weight: 500;
}
#form .step_list .step_list_txt {
  letter-spacing: 0;
}
#form .step_list li.active .step_list_txt {
  color: #299EDB;
}
#form .step_list_dot:before {
  width: 100%;
  height: 3px;
  content: "";
  display: block;
  background: repeating-linear-gradient(-90deg, #b9b9b9, #b9b9b9 3px, #FFFFFF 2px, #FFFFFF 10px);
  position: absolute;
  top: 50%;
  left: 0px;
  margin: -1em auto auto;
  right: 0px;
  z-index: -1;
}
@media screen and (min-width:768px), print {
  /*step_list pc ------------------------------------------------------------------------------------*/
  #form {
    padding-bottom: 70px;
  }
  #form .container {
    max-width: 1000px;
  }
  #form .lead {
    margin-bottom: 40px;
  }
  #form .lead .ttl {
    font-weight: 700;
  }
  #form .form_txt {
    margin-bottom: 60px;
  }
  #form .step_list_dot {
    margin: 0 auto 45px;
    max-width: 490px;
  }
  #form .step_list .circle_icon_list {
    width: 96px;
    height: 96px;
  }
  #form .step_list .circle_icon_list > dt {
    margin: 5px 0;
  }
  #form .step_list .circle_icon_list > dd {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 767px) {
  /*step_list sp ------------------------------------------------------------------------------------*/
  #form .step_list_dot {
    margin: 8.33vw auto 10.42vw;
  }
  #form .step_list .circle_icon_list {
    width: 16.3vw;
    height: 16.3vw;
    margin: 0 auto 1.39vw;
  }
  #form .step_list .circle_icon_list > dt {
    font-size: 3vw;
    margin: 1.3vw 0;
  }
  #form .step_list .circle_icon_list > dd {
    font-size: 4.86vw;
  }
}
/*
###################################################################################################################################

#form

###################################################################################################################################
*/
/*form ------------------------------------------------------------------------------------*/
#form .form_tbl {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #999999;
}
#form .form_tbl .prefectures_list select {
  border: 1px solid #D1D1D1;
  font-weight: 400;
}
#form .form_tbl .select_wrap .prefectures_list {
  display: inline-block;
  margin: 0 15px 15px 0;
  width: 30%;
}
#form .form_tbl .select_wrap .prefectures_list:nth-child(3n) {
  margin: 0 0 15px;
}
#form .form_tbl .select_wrap .prefectures_list select {
  width: 100%;
}
#form .form_tbl input[type="text"] {
  border: 1px solid #D1D1D1;
  background-color: #EFEFEF;
  font-weight: 400;
  font-family: source-han-sans-japanese, sans-serif;
}
#form .form_tbl input[type="radio"] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
  position: absolute;
  margin: auto 0;
  left: 0px;
}
#form .form_tbl th {
  text-align: left;
  font-weight: 400;
}
#form .form_tbl .note_txt.red {
  color: #F80606;
}
#form .form_tbl .file_area input {
  display: none;
}
#form .form_tbl .file_area .file_btn {
  background: #efefee;
  border: 1px solid #a1a1a1;
  display: inline-block;
  text-align: center;
  border-radius: 2px;
  letter-spacing: 0;
  line-height: 1.4;
}
#form .form_tbl .file_area .file_btn:hover {
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
  opacity: .6
}
#form .form_tbl .ttl {
  font-weight: 500;
}
#form .form_tbl .prefectures_list {
  display: inline-block;
  position: relative;
}
#form .form_tbl .prefectures_list:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 0px;
  margin: auto 0;
  bottom: 0px;
}
#form .form_tbl td .radio_list > li {
  position: relative;
}
#form .btn_wrap {
  text-align: center;
}
#form .btn_wrap input {
  background-color: #D71501;
  display: inline-block;
  color: #FFFFFF;
  text-decoration: none;
  text-align: center;
}
#form .btn_wrap .arrow.back input {
  background-color: #B9B9B9;
}
#form .btn_wrap .arrow {
  position: relative;
}
#form .btn_wrap .arrow:after {
  content: "";
  position: absolute;
  border: 1px solid;
  border-color: #FFFFFF #FFFFFF transparent transparent;
  transform: rotate(45deg);
  bottom: 0;
  margin: auto 0;
  top: 0;
}
#form .btn_wrap .arrow.back:after {
  border-color: transparent transparent #FFFFFF #FFFFFF;
}
#form .form_end_ttl {
  font-weight: 500;
}
#form .form_end_txt p > a {
  text-decoration: none;
  color: #303030;
}
@media screen and (min-width:768px), print {
  /*form pc ------------------------------------------------------------------------------------*/
  #form {
    padding-bottom: 70px;
  }
  #form .container {
    max-width: 1000px;
  }
  #form .lead {
    margin-bottom: 40px;
  }
  #form .lead p + p {
    margin-top: 20px;
  }
  #form .form_txt {
    margin-bottom: 60px;
    text-align: center;
  }
  #form .form_tbl {
    margin-bottom: 50px;
  }
  #form .form_tbl th {
    width: 180px;
    letter-spacing: 0.2em;
  }
  #form .form_tbl th, #form .form_tbl td {
    padding: 20px 0;
    border-bottom: 1px solid #999999;
  }
  #form .form_tbl td .radio_list > li {
    flex-basis: calc(26.3% - 1em);
    padding-left: 1em;
  }
  #form .form_tbl td .radio_list.col2 > li {
    flex-basis: calc(43% - 1em);
  }
  #form .form_tbl .facility_area {
    margin-left: 10px;
  }
  #form .form_tbl input[type="text"] {
    border-radius: 3px;
    padding: 20px 15px;
    width: calc(100% - 30px);
    letter-spacing: 0.2em;
    font-size: 1.5rem;
  }
  #form .form_tbl input[type="text"].year {
    margin: 0 5px;
    width: 90px;
  }
  #form .form_tbl input[type="text"].day, #form .form_tbl input[type="text"].month {
    width: 50px;
    margin: 0 5px 0 10px;
  }
  #form .form_tbl input[type="text"].facility {
    margin: 0 25px 0 10px;
    width: 338px;
  }
  #form .form_tbl input[type="text"].code {
    width: 130px;
    margin-right: 15px;
  }
  #form .form_tbl input[type="text"].tel {
    width: 175px;
    margin-right: 15px;
  }
  #form .form_tbl input[type="text"].fax {
    width: 175px;
    margin-right: 15px;
  }
  #form .form_tbl input[type="radio"] {
    top: 10px;
  }
  #form .form_tbl .prefectures_list {
    width: 160px;
    margin: 0 0 15px 15px;
  }
  #form .form_tbl .prefectures_list:after {
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 9px solid #000000;
    right: 10px;
  }
  #form .form_tbl .prefectures_list select {
    padding: 10px 15px;
    width: 160px;
    font-size: 1.5rem;
  }
  #form .form_tbl .file_area {
    margin-bottom: 25px;
  }
  #form .form_tbl .file_area .file_btn {
    padding: 2px 3px 3px;
    font-size: 1.5rem;
    width: 110px;
    margin-right: 10px;
  }
  #form .form_tbl .note_txt {
    margin-top: 10px;
  }
  #form .form_tbl .ttl {
    margin-bottom: 10px;
  }
  #form .btn_wrap {
    justify-content: center;
  }
  #form .btn_wrap input {
    padding: 20px 0;
    width: 100%;
  }
  #form .btn_wrap .arrow + .arrow {
    margin-left: 75px;
  }
  #form .btn_wrap .arrow {
    flex-basis: 240px;
  }
  #form .btn_wrap .arrow:after {
    width: 7px;
    height: 7px;
    right: 20px;
  }
  #form .btn_wrap .arrow.back:after {
    left: 20px;
    right: auto;
  }
  #form .form_end_ttl {
    margin-bottom: 35px;
    font-size: 2.5rem;
  }
  #form .circle_icon {
    position: relative;
    padding-left: 1.2em;
  }
  #form .circle_icon:before {
    background-color: #313131;
    content: "";
    position: absolute;
    left: 0px;
  }
  #form .form_end_txt {
    margin-bottom: 105px;
  }
  #form .form_end_txt p + p {
    margin-top: 35px;
  }
  #form .circle_icon:before {
    width: 15px;
    height: 15px;
    border-radius: 15px;
    top: 4px;
  }
}
@media only screen and (max-width: 767px) {
  /*form sp ------------------------------------------------------------------------------------*/
  #form {
    padding: 7.64vw 0 15.97vw;
  }
  #form .lead {
    margin-bottom: 8.33vw;
    letter-spacing: 0.2em;
    line-height: 2;
  }
  #form .lead p + p {
    margin-top: 4.17vw;
  }
  #form .form_txt {
    margin-bottom: 11.11vw;
  }
  #form .form_tbl {
    margin-bottom: 7.64vw;
  }
  #form .form_tbl th {
    letter-spacing: 0.2em;
    padding: 3.47vw 0;
  }
  #form .form_tbl td {
    padding-bottom: 3.47vw;
    border-bottom: 1px solid #999999;
  }
  #form .form_tbl th, #form .form_tbl td {
    display: block;
    width: 100%;
  }
  #form .form_tbl td .radio_list > li {
    flex-basis: calc(50% - 1.2em);
    padding-left: 1.2em;
  }
  #form .form_tbl td .radio_list.col2 > li {
    flex-basis: calc(100% - 1.2em);
  }
  #form .form_tbl td .radio_list.col2 > li + li {
    margin-top: 4.17vw;
  }
  #form .form_tbl input[type="radio"] {
    top: 1.4vw;
    width: 3.33vw;
    height: 3.33vw;
  }
  #form .form_tbl input[type="text"] {
    border-radius: 0.42vw;
    padding: 3.47vw 2.78vw;
    width: calc(100% - 5.56vw);
    letter-spacing: 0.2em;
    font-size: 3.33vw;
  }
  #form .form_tbl input[type="text"].year {
    margin: 0 0.69vw;
    width: 16.83vw;
  }
  #form .form_tbl input[type="text"].day, #form .form_tbl input[type="text"].month {
    width: 8.33vw;
    margin: 0 0.69vw 0 2vw;
  }
  #form .form_tbl input[type="text"].facility {
    padding: 3.47vw 2.78vw;
    width: 76.39vw;
    margin-bottom: 1.39vw;
  }
  #form .form_tbl input[type="text"].code {
    margin-bottom: 2vw;
  }
  #form .form_tbl input[type="text"].tel {
    margin-bottom: 2vw;
  }
  #form .form_tbl input[type="text"].fax {
    margin-bottom: 2vw;
  }
  #form .form_tbl .prefectures_list {
    width: 33.33vw;
    margin: 0 0 2.78vw 2vw;
  }
  #form .form_tbl .prefectures_list:after {
    border-left: 1.39vw solid transparent;
    border-right: 1.39vw solid transparent;
    border-top: 2vw solid #000000;
    right: 2vw;
  }
  #form .form_tbl .prefectures_list select {
    width: 100%;
    padding: 3.47vw 2vw;
    font-size: 3.33vw;
  }
  #form .form_tbl .select_wrap .prefectures_list {
    margin: 0 2.78vw 2vw 0 !important;
    width: 45%;
  }
  #form .form_tbl .select_wrap .prefectures_list:nth-child(2n) {
    margin: 0 0 2vw !important;
  }
  #form .form_tbl .file_area {
    margin-bottom: 6.94vw;
  }
  #form .form_tbl .file_area .file_btn {
    margin-right: 1.39vw;
    padding: 0.69vw 1.39vw;
    font-size: 3.33vw;
  }
  #form .form_tbl .note_txt {
    margin-top: 2vw;
  }
  #form .form_tbl .ttl {
    margin-bottom: 2.78vw;
  }
  #form .btn_wrap {
    justify-content: center;
  }
  #form .btn_wrap input {
    padding: 4.17vw 0;
    width: 100%;
  }
  #form .btn_wrap .arrow + .arrow {
    margin-top: 3.47vw;
  }
  #form .btn_wrap .arrow {
    flex-basis: calc(100% - 12vw);
    margin: 0 6vw;
  }
  #form .btn_wrap .arrow:after {
    width: 1.67vw;
    height: 1.67vw;
    right: 6vw;
  }
  #form .btn_wrap .arrow.back:after {
    left: 6vw;
    right: auto;
  }
  #form .circle_icon:before {
    width: 3vw;
    height: 3vw;
    border-radius: 3vw;
    top: 1vw;
  }
  #form .form_end_ttl {
    margin-bottom: 7.64vw;
    font-size: 4.86vw;
  }
  #form .form_end_txt {
    margin-bottom: 13.89vw;
  }
  #form .form_end_txt p + p {
    margin-top: 8.33vw;
  }
}
/*
###################################################################################################################################

body.faq

###################################################################################################################################
*/
/*
###################################################################################################################################

common

###################################################################################################################################
*/
/*common ------------------------------------------------------------------------------------*/
@media screen and (min-width:768px), print {
  /*common pc ------------------------------------------------------------------------------------*/
}
@media only screen and (max-width: 767px) {
  /*common sp ------------------------------------------------------------------------------------*/
}
/*
###################################################################################################################################

q_list,a_list

###################################################################################################################################
*/
/*q_list,a_list ------------------------------------------------------------------------------------*/
body.faq .q_list, body.faq .a_list {
  align-items: flex-start;
}
body.faq .q_list {
  border: 1px solid #D2D2D2;
  position: relative;
  background-color: #FFFFFF;
}
body.faq .a_list {
  display: none;
}
body.faq .q_list dt, body.faq .a_list dt {
  font-weight: 500;
  letter-spacing: 0.06em;
}
body.faq .q_list dt {
  color: #F19700;
}
body.faq .a_list dt {
  color: #56BD87;
}
body.faq .q_list dd {
  letter-spacing: 0.06em;
}
body.faq .q_list:before, body.faq .q_list:after {
  content: "";
  background-color: #303030;
  position: absolute;
  top: 0px;
  margin: auto 0;
  bottom: 0px;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}
body.faq .q_list.active:before {
  display: none;
}
body.faq .q_list.active:after {
  transform: rotate(90deg);
}
@media screen and (min-width:768px), print {
  /*q_list,a_list pc ------------------------------------------------------------------------------------*/
  body.faq #contents .list_dot01 li:before {
    top: 15px;
  }
  body.faq .q_list {
    padding: 10px 25px;
  }
  body.faq .a_list {
    padding: 35px 25px 0;
  }
  body.faq .faq_list > li + li {
    margin-top: 35px;
  }
  body.faq .q_list:before {
    width: 19px;
    height: 3px;
    right: 30px;
  }
  body.faq .q_list:after {
    width: 3px;
    height: 19px;
    right: 38px;
  }
  body.faq .q_list dt, body.faq .a_list dt {
    font-size: 3.5rem;
    flex-basis: 60px;
    line-height: 1.2;
    margin-top: -5px;
  }
  body.faq .q_list dd, body.faq .a_list dd {
    flex-basis: calc(100% - 95px);
  }
  body.faq .q_list dd {
    font-size: 2rem;
  }
  body.faq .file_list {
    margin: 0 -1.66%;
  }
  body.faq .file_list > li {
    margin: 0 1.66%;
    flex-basis: 30%;
  }
  body.faq .file_link {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 767px) {
  /*q_list,a_list sp ------------------------------------------------------------------------------------*/
  body.faq .q_list {
    padding: 2vw 11.11vw 2vw 2vw;
  }
  body.faq .a_list {
    padding: 4.86vw 2vw 0 2vw;
  }
  body.faq .faq_list > li + li {
    margin-top: 5.56vw;
  }
  body.faq .q_list:before {
    width: 3.61vw;
    height: 3px;
    right: 4.17vw;
  }
  body.faq .q_list:after {
    width: 3px;
    height: 3.61vw;
    right: 5.56vw;
  }
  body.faq .q_list dt, body.faq .a_list dt {
    font-size: 6.25vw;
    flex-basis: 7.64vw;
    line-height: 1.2;
    margin-top: -0.69vw;
  }
  body.faq .q_list dd, body.faq .a_list dd {
    flex-basis: calc(100% - 7.64vw);
  }
  body.faq .q_list dd {
    font-size: 4.17vw;
    letter-spacing: 0.06em;
  }
  body.faq .file_link {
    margin: 2.78vw 0 0;
  }
}
/*
###################################################################################################################################

section

###################################################################################################################################
*/
/*section ------------------------------------------------------------------------------------*/
@media screen and (min-width:768px), print {
  body.faq #contents section:nth-child(even) {
    background-color: #F8F7F7;
  }
  /*section pc ------------------------------------------------------------------------------------*/
  body.faq #contents section:nth-child(odd) {
    margin: 60px 0;
  }
  body.faq #contents section:nth-child(even) {
    padding: 60px 0;
  }
  body.faq #contents section .secttl {
    margin-bottom: 45px;
  }
  body.faq #nav_wrap {
    margin-top: 100px;
  }
}
@media only screen and (max-width: 767px) {
  /*section sp ------------------------------------------------------------------------------------*/
  body.faq #contents section:nth-child(odd) {
    margin: 8.33vw 0;
  }
  body.faq #contents section:nth-child(even) {
    padding: 8.33vw 0;
  }
}
/*
###################################################################################################################################

body.list

###################################################################################################################################
*/
/*
###################################################################################################################################

#sec01

###################################################################################################################################
*/
/*sec01 ------------------------------------------------------------------------------------*/
body.list #sec01 .tbl_style02 th {
  text-align: left;
}
body.list #sec01 .tbl_style02 td {
  text-align: left;
}
body.list #sec01 .tbl_style02 .checkbox [type="checkbox"] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
  position: absolute;
  left: 0px;
}
body.list #sec01 .tbl_style02 .checkbox > li {
  position: relative;
}
body.list #sec01 .entry_btn, body.result #sec01 .entry_btn {
  text-align: right;
}
body.list #sec01 .entry_btn > a, body.result #sec01 .entry_btn > a {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  color: #FFFFFF;
  background-color: #299EDB;
  position: relative;
}
body.list #sec01 .entry_btn > a:before, body.result #sec01 .entry_btn > a:before {
  content: "";
  border: 1px solid;
  border-color: #FFFFFF #FFFFFF transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  bottom: 0;
  margin: auto 0;
  top: 0;
}
@media screen and (min-width:768px), print {
  /*sec01 pc ------------------------------------------------------------------------------------*/
  body.list #sec01 {
    margin-bottom: 115px;
  }
  body.list #sec01 .tbl_style02 {
    margin-bottom: 50px;
  }
  body.list #sec01 .tbl_style02 th {
    letter-spacing: 0.2em;
    padding: 15px;
    width: 210px;
  }
  body.list #sec01 .tbl_style02 .checkbox [type="checkbox"] {
    top: 10px;
  }
  body.list #sec01 .tbl_style02 .checkbox > li {
    flex-basis: calc(13.44% - 1.2em);
    padding-left: 1.2em;
  }
  body.list #sec01 .tbl_style02 .checkbox.col3 {
    margin: 0 -2%;
  }
  body.list #sec01 .tbl_style02 .checkbox.col3 > li {
    flex-basis: calc(29% - 1.2em);
    margin: 0 2%;
    padding-left: 1.2em;
  }
  body.list #sec01 .tbl_style02 .checkbox > li label {
    margin-right: 20px;
  }
  body.list #sec01 .entry_btn {
    text-align: center;
  }
  body.list #sec01 .entry_btn > a {
    font-size: 1.4rem;
    padding: 20px 0;
    width: 240px;
  }
  body.list #sec01 .entry_btn > a:before {
    width: 6px;
    height: 6px;
    right: 15px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*sec01 tab ------------------------------------------------------------------------------------*/
}
@media only screen and (max-width: 767px) {
  /*sec01 sp ------------------------------------------------------------------------------------*/
  body.list #sec01 {
    margin: 5.56vw 0 16.67vw;
  }
  body.list #sec01 .tbl_style02 {
    margin-bottom: 7.64vw;
  }
  body.list #sec01 .tbl_style02 td {
    padding-bottom: 2vw;
  }
  body.list #sec01 .tbl_style02 .checkbox > li {
    flex-basis: calc(33% - 1.5em);
    padding-left: 1.5em;
    margin-bottom: 4.17vw;
  }
  body.list #sec01 .tbl_style02 .checkbox.col2 > li {
    flex-basis: calc(100% - 1.5em);
    padding-left: 1.5em;
  }
  body.list #sec01 .tbl_style02 .checkbox [type="checkbox"] {
    top: 1.25vw;
  }
  body.list #sec01 .entry_btn {
    margin: 0 6vw;
    text-align: center;
  }
  body.list #sec01 .entry_btn > a {
    padding: 5.56vw 0;
    width: 100%;
  }
  body.list #sec01 .entry_btn > a:before {
    width: 1.39vw;
    height: 1.39vw;
    right: 3vw;
  }
}
/*
###################################################################################################################################

body.result

###################################################################################################################################
*/
/*
###################################################################################################################################

#sec01

###################################################################################################################################
*/
/*sec01 ------------------------------------------------------------------------------------*/
body.result #sec01 .tbl_style02 td:first-child {
  font-weight: 500;
}
@media screen and (min-width:768px), print {
  /*sec01 pc ------------------------------------------------------------------------------------*/
  body.result #sec01 {
    padding-bottom: 35px;
  }
  body.result #sec01 .tbl_style02 {
    margin-bottom: 20px;
  }
  body.result #sec01 .tbl_style02 td:first-child {
    width: 210px;
  }
  body.result #sec01 .entry_btn > a {
    font-size: 1.4rem;
    padding: 3px 0;
    width: 150px;
  }
  body.result #sec01 .entry_btn > a:before {
    width: 6px;
    height: 6px;
    right: 10px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*sec01 tab ------------------------------------------------------------------------------------*/
}
@media only screen and (max-width: 767px) {
  /*sec01 sp ------------------------------------------------------------------------------------*/
  body.result #sec01 {
    padding: 9.72vw 0;
  }
  body.result #sec01 .tbl_style02 {
    margin-bottom: 6.25vw;
  }
  body.result #sec01 .tbl_style02 th, body.result #sec01 .tbl_style02 td {
    display: table-cell;
  }
  body.result #sec01 .tbl_style02 th {
    text-align: center;
  }
  body.result #sec01 .tbl_style02 td:first-child {
    border-right: 1px solid #8b8b8b;
  }
  body.result #sec01 .entry_btn > a {
    padding: 2vw 0;
    width: 41.67vw;
    margin: 0 auto;
    text-align: center;
    display: block;
  }
  body.result #sec01 .entry_btn > a:before {
    width: 1.39vw;
    height: 1.39vw;
    right: 3vw;
  }
}
/*
###################################################################################################################################

#sec02

###################################################################################################################################
*/
/*sec02 ------------------------------------------------------------------------------------*/
body.result #sec02 {
  background-color: #F8F8F8;
}
body.result .localnavi > li {
  background-color: #299EDB;
}
body.result #sec02 .tbl_style02 td .web_btn > a {
  text-decoration: none;
  color: #303030;
  border: 1px solid #C1C1C1;
  display: inline-block;
  position: relative;
  text-align: center;
}
body.result #sec02 .tbl_style02 td .web_btn > a:before {
  content: "";
  position: absolute;
  background-image: url(../../images/common/icon_job_01.svg);
  background-repeat: no-repeat;
  top: 0px;
  margin: auto 0;
  bottom: 0px;
}
@media screen and (min-width:768px), print {
  /*sec02 pc ------------------------------------------------------------------------------------*/
  body.result #sec02 {
    padding: 85px 0 65px;
  }
  body.result #sec02 .secttl {
    margin-bottom: 85px;
  }
  body.result #sec02 .number_txt {
    margin-bottom: 5px;
  }
  body.result #sec02 .tbl_style02 td:first-child {
    /*width: 750px;*/
    width: 50%;
  }
  body.result .localnavi > li {
    border-radius: 37px;
    flex-basis: 31.9%;
    margin-bottom: 40px;
  }
  body.result #sec02 .tbl_style02 td dl.flexbox dt {
    flex-basis: 75.5%;
  }
  body.result #sec02 .tbl_style02 td dl.flexbox dd {
    flex-basis: 24%;
  }
  body.result #sec02 .tbl_style02 td .web_btn{
        float: right;
    }
  body.result #sec02 .tbl_style02 td .web_btn > a {
    font-size: 1.4rem;
    display: block;
    padding-left: 20px;
    width: 70px;
  }
  body.result #sec02 .tbl_style02 td .web_btn > a:before {
    width: 19px;
    height: 18px;
    left: 15px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*sec02 tab ------------------------------------------------------------------------------------*/
}
@media only screen and (max-width: 767px) {
  /*sec02 sp ------------------------------------------------------------------------------------*/
  body.result #sec02 {
    padding: 7.64vw 0 9.72vw;
  }
  body.result #sec02 .number_txt {
    margin-bottom: 3.47vw;
  }
  body.result #sec02 .tbl_style02 td dl.flexbox {
    display: block;
  }
  body.result #sec02 .tbl_style02 td .add_txt {
    margin-bottom: 2.78vw;
  }
  body.result #sec02 .tbl_style02 td .web_btn > a {
    /*width: 31.94vw;*/
    width: 19vw;
    /*padding: 2vw 0;*/
    margin-right: auto;
    padding: 1vw 0;
    padding-left: 20px;
  }
  body.result #sec02 .tbl_style02 td .web_btn > a:before {
    width: 3.75vw;
    height: 3.47vw;
    /*left: 6vw;*/
    left: 4vw;
  }
}
/*
###################################################################################################################################

#sec03

###################################################################################################################################
*/
/*sec03 ------------------------------------------------------------------------------------*/
body.acp .imgShizumin {
  text-align: center;
}
@media screen and (min-width:768px), print {
  /*sec03 pc ------------------------------------------------------------------------------------*/
  body.acp #sec03 {
    padding: 50px 0 50px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*sec03 tab ------------------------------------------------------------------------------------*/
  body.acp #sec03 {
    padding: 50px 0 50px;
  }
}
@media only screen and (max-width: 767px) {
  /*sec03 sp ------------------------------------------------------------------------------------*/
  body.acp #sec03 {
    padding: 7.64vw 0 9.72vw;
  }
  body.acp #sec03 .imgShizumin {
    margin: 0px 6vw;
  }
}
/*
###################################################################################################################################

body.case

###################################################################################################################################
*/
/*
###################################################################################################################################

#sec01

###################################################################################################################################
*/
/*sec01 ------------------------------------------------------------------------------------*/
body.case #sec01 .cat_list > li.green {
  background-color: #76CCB7;
}
body.case #sec01 .cat_list > li.blue {
  background-color: #1ba1e6;
}
body.case #sec01 .cat_list > li.yellow {
  background-color: #f49937;
}
body.case #sec01 .cat_list > li.pink {
  background-color: #fa5789;
}
body.case #sec01 .cat_list > li.purple {
  background-color: #b55df3;
}
body.case #sec01 .cat_list > li > a {
  text-decoration: none;
  color: #FFFFFF;
  display: block;
}
body.case .meta {
  align-items: center;
}
body.case #sec01 .area_list > li .ttl {
  font-weight: 700;
}
body.case #sec01 .area_list .ttl > a {
  color: #2F2F2F;
}
body.case .meta .cat > li > a {
  color: #ffffff;
  display: block;
  line-height: 1.1;
  text-decoration: none;
}
body.case .meta .cat > li.green > a {
  background-color: #76CCB7;
}
body.case .meta .cat > li.blue > a {
  background-color: #1ba1e6;
}
body.case .meta .cat > li.yellow > a {
  background-color: #f49937;
}
body.case .meta .cat > li.pink > a {
  background-color: #fa5789;
}
body.case .meta .cat > li.purple > a {
  background-color: #b55df3;
}
@media screen and (min-width:768px), print {
  /*sec01 pc ------------------------------------------------------------------------------------*/
  body.acp #sec01 .container p {
    font-size: 1.7rem;
  }
  body.case #sec01 .btn01 > a {
    padding: 8px 0;
  }
  body.case #sec01 .cat_list {
    margin-bottom: 30px;
    justify-content: center;
  }
  body.case #sec01 .cat_list > li > a {
    font-size: 1.2rem;
    padding: 5px 10px;
    line-height: 1.1;
  }
  body.case #sec01 .cat_list > li + li {
    margin-left: 10px;
  }
  body.case #sec01 .area_list {
    margin: 0 -1.15% 60px;
  }
  body.case #sec01 .area_list > li {
    flex-basis: 31%;
    margin: 0 1.15% 80px;
  }
  body.case #sec01 .area_list > li .pic {
    margin-bottom: 15px;
  }
  body.case #sec01 .area_list > li .ttl {
    margin-bottom: 20px;
    font-size: 1.7rem;
    letter-spacing: 0.03em;
  }
  body.case #sec01 .area_list > li .txt {
    margin-bottom: 35px;
  }
  body.case .meta {
    margin-bottom: 15px;
  }
  body.case .meta dt {
    margin-right: 10px;
  }
  body.case .meta .cat > li > a {
    padding: 4px 10px 6px;
    font-size: 1.2rem;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*sec01 tab ------------------------------------------------------------------------------------*/
  body.acp #sec01 .container p {
    font-size: 17rem;
  }
  body.case #sec01 .cat_list > li > a {
    letter-spacing: 0.02em;
  }
  body.case .meta .cat > li > a {
    letter-spacing: 0.02em;
  }
}
@media only screen and (max-width: 767px) {
  /*sec01 sp ------------------------------------------------------------------------------------*/
  body.case #sec01 {
    padding: 8.33vw 0 9vw;
  }
  body.acp #sec01 .container p {
    font-size: 3.8vw;
  }
  body.case #sec01 .btn01 > a {
    padding: 4.86vw 0;
  }
  body.case #sec01 .cat_list {
    margin-bottom: 4.17vw;
  }
  body.case #sec01 .cat_list > li > a {
    font-size: 2.78vw;
    padding: 1vw 2vw;
  }
  body.case #sec01 .cat_list > li {
    margin-right: 2.78vw;
    margin-bottom: 2.78vw;
  }
  body.case #sec01 .area_list > li {
    flex-basis: 100%;
    margin-bottom: 6.94vw;
  }
  body.case #sec01 .area_list > li .pic {
    margin-bottom: 2.78vw;
  }
  body.case #sec01 .area_list > li .ttl {
    margin-bottom: 4.17vw;
  }
  body.case #sec01 .area_list > li .txt {
    margin-bottom: 6.25vw;
    font-size: 3vw;
  }
  body.case .meta {
    margin-bottom: 2vw;
  }
  body.case .meta dt {
    margin-right: 2vw;
    font-size: 3vw;
  }
  body.case .meta .cat > li > a {
    padding: 1vw 2vw 1.6vw;
    font-size: 2.78vw;
  }
}
/*
###################################################################################################################################

body.single

###################################################################################################################################
*/
/*
###################################################################################################################################

#sec01

###################################################################################################################################
*/
/*sec01 ------------------------------------------------------------------------------------*/
body.single #sec01 {
  background-color: #EFF6F7;
}
body.single #sec01 .bg_white {
  background-color: #FFFFFF;
}
body.single #sec01 .postttl {
  font-weight: 500;
  line-height: 1.1;
}
body.single #sec01 .btn_wrap .prev > a:before {
  content: "＜";
}
body.single #sec01 .btn_wrap .next > a:after {
  content: "＞";
}
body.single #sec01 .navi_wrap {
  align-items: center;
}
body.single #sec01 .btn_wrap .prev > a, body.single #sec01 .btn_wrap .next > a, body.single #sec01 .btn_wrap .btn01 > a {
  color: #303030;
}
@media screen and (min-width:768px), print {
  /*sec01 pc ------------------------------------------------------------------------------------*/
  body.single #topicspath {
    margin: 25px auto 40px;
    position: absolute;
    left: 0;
    right: 0;
    width: 1200px;
  }
  body.single #sec01 {
    padding: 90px 0;
  }
  body.single #sec01 .bg_white {
    padding: 40px 150px 105px;
  }
  body.single #sec01 .postttl {
    margin-bottom: 50px;
    font-size: 3rem;
  }
  body.single #sec01 .btn_wrap {
    position: relative;
  }
  body.single #sec01 .btn_wrap .prev > a, body.single #sec01 .btn_wrap .next > a {
    font-size: 1.4rem;
  }
  body.single #sec01 .btn_wrap .btn01 {
    position: absolute;
    top: 0px;
    left: 0px;
    margin: 0 auto;
    right: 0px;
    width: 240px;
  }
  body.single #sec01 .btn_wrap .btn01 > a {
    padding: 15px 0;
  }
  body.single #sec01 .navi_wrap {
    margin: 0 195px;
    height: 60px;
  }
  body.single #sec01 .post-content {
    margin-bottom: 80px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*sec01 tab ------------------------------------------------------------------------------------*/
}
@media only screen and (max-width: 767px) {
  /*sec01 sp ------------------------------------------------------------------------------------*/
  body.single #sec01 {
    padding: 6.25vw 0 10.42vw;
  }
  body.single #sec01 .bg_white {
    padding: 5.56vw 6vw 13.19vw;
  }
  body.single #sec01 .postttl {
    font-size: 5.56vw;
    line-height: 1.5;
    margin-bottom: 3.47vw;
  }
  body.single #sec01 .btn_wrap .btn01 > a {
    margin: 0;
  }
  body.single #sec01 .navi_wrap {
    margin-bottom: 6.94vw;
  }
  body.single #sec01 .post-content {
    margin-bottom: 14.58vw;
  }
}
/*
###################################################################################################################################

body.acp

###################################################################################################################################
*/
body.acp .function_list > li a {
  color: #303030;
  display: block;
  text-decoration: none;
}
body.acp .function_list > li p a {
  display: inline-block;
  font-weight: bold;
}
body.acp .function_list .ttl {
  font-weight: 700;
  text-align: center;
}
body.acp .function_box > li:nth-child(odd) {
  background-color: rgba(243, 234, 231, 0.82);
}
body.acp .function_box .function_ttl {
  font-weight: 500;
}
body.acp .function_box .txt_box .ttl {
  font-weight: 700;
}
body.acp .boxYoutube {
  text-align: center;
}
#sec02 .ttl {
  font-weight: 500;
}
#sec02 .ttl:first-of-type {
  margin-top: 0px;
}

@media (min-width:768px), print {
  /*body.acp pc ------------------------------------------------------------------------------------*/
  body.acp #visual {
    background-image: url(../../images/acp/mv_acp_01_pc.jpg);
    background-position: center center;
  }
  #information_sharing, #secure_mail, #bulletin_board, #facilities_services {
    display: block;
    margin-top: -50px;
    padding-top: 50px;
  }
  body.acp #sec01 {
    margin-bottom: 20px;
  }
  body.acp #sec01 .lead {
    text-align: center;
    margin-bottom: 50px;
  }
  body.acp .function_list > li {
    flex-basis: 47.5%;
    margin-bottom: 50px;
  }
  body.acp .function_list .ttl {
    margin: 15px 0;
    font-size: 1.6rem;
  }
  body.acp .function_box > li {
    padding: 50px 0 70px;
  }
  body.acp .function_box ul li + li {
    margin-top: 60px;
  }
  body.acp .function_box .function_ttl {
    font-weight: 700;
    font-size: 2rem;
    margin-bottom: 40px;
  }
  body.acp .function_box .function_ttl_mt {
    padding-top: 40px !important;
  }
  body.acp .function_box .pic {
    flex-basis: 24%;
  }
  body.acp .function_box .txt_box {
    flex-basis: 73.3%;
  }
  body.acp .function_box .txt_box .ttl {
    font-size: 1.6rem;
  }
  #sec02 .ttl {
    font-size: 2rem;
    margin-bottom: 10px;
  }
  #sec02 .ttl {
    margin-top: 50px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*body.acp tab ------------------------------------------------------------------------------------*/
}
@media (max-width: 767px) {
  /*body.acp sp ------------------------------------------------------------------------------------*/
  body.acp #visual {
    background-image: url(../../images/acp/mv_acp_01_sp.jpg);
    background-position: center center;
  }
  #information_sharing, #secure_mail, #bulletin_board, #facilities_services {
    display: block;
    margin-top: -19.45vw;
    padding-top: 19.45vw;
  }
  body.acp #sec01 {
    margin: 8.33vw 0 1.39vw;
  }
  body.acp #sec01 .lead {
    margin-bottom: 5.56vw;
  }
  body.acp .function_list {
    display: block;
  }
  body.acp .function_list > li {
    margin-bottom: 6.94vw;
  }
  body.acp .function_list .ttl {
    margin: 2.08vw 0;
  }
  body.acp .function_box {
    display: block;
  }
  body.acp .function_box > li {
    padding: 8.33vw 0;
  }
  body.acp .function_box ul li {
    display: block;
  }
  body.acp .function_box ul li + li {
    margin-top: 8.33vw;
  }
  body.acp .function_box .function_ttl {
    font-size: 4.17vw;
    margin-bottom: 5.56vw;
  }
  body.acp .function_box .function_ttl_mt {
    padding-top: 5.56vw !important;
  }
  body.acp .function_box .txt_box .ttl {
    margin: 4.17vw 0;
  }
  #sec02 .ttl {
    margin: 10.89vw 0 3.47vw;
    font-size: 4.17vw;
  }
  body.acp .wrapYoutube {
    margin-top: 30px;
  }
  body.acp .boxYoutube {
    padding: 0px 10px;
    margin-bottom: 50px;
  }
  body.acp .boxYoutube iframe {
    width: 100%;
  }

}
/*
###################################################################################################################################

body.contact

###################################################################################################################################
*/
body.contact #sec02 {
  background-color: #f8f8f8;
}
body.contact #sec02 .ttl2,
body.contact #sec03 .ttl {
    position: relative;
  font-weight: 500;
  padding-left: 1em;
}
body.contact #sec02 .ttl2:first-child,
body.contact #sec03 .ttl:first-child {
    margin-bottom: 0;
}
body.contact #sec02 .ttl2:before,
body.contact #sec03 .ttl:before {
    content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  width: 4px;
  height: 100%;
  background-color: #299EDB;
}
body.contact .flow_box > li {
  border-bottom: 1px solid #999999;
}
body.contact .flow_box dl {
  position: relative;
}
body.contact .flow_box .ttl {
  font-weight: 500;
}
body.contact .btn01.form > a {
  color: #FFFFFF;
  background-color: #299edb;
  border: none;
}
.btn01 > a:after {
  border-color: #FFFFFF #FFFFFF transparent transparent;
}
body.contact #sec01 .boxBuAnchor  {
  margin-top: 20px;
}
body.contact #sec01 .boxBuAnchor ul {
  display: table;
  margin: 0px auto;
}
body.contact #sec01 .boxBuAnchor ul > li {
  display: table-cell;
  padding: 0px 15px;
}
body.contact .bgA {
  background-color: #f46296;
}
body.contact .bgB {
  background-color: #f79534;
}
body.contact #sec01 .boxBuAnchorNew  {
  margin-top: 35px;
}
body.contact #sec01 .boxBuAnchorNew ul {
  display: table;
  margin: 0px auto;
}
body.contact #sec01 .boxBuAnchorNew ul > li {
  display: table-cell;
  width: 385px;
}
body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(1) {
  padding-right: 20px;
}
body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(2) {
  padding-left: 20px;
}
body.contact #sec01 .boxBuAnchorNew ul > li > a {
  display: table;
  width: 365px;
  height: 55px;
  padding: 10px 0px;
  position: relative;
  text-decoration: none;
  color: #ffffff;
  font-weight: bold;
}
body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(1) > a {
  margin-left: 20px;
}
body.contact #sec01 .boxBuAnchorNew ul > li > a::before {
  content: "";
  width: 18px;
  height: 9px;
  position: absolute;
  margin: auto 0px;
  top: 0px;
  bottom: 0px;
  right: 20px;
  background: url(../../images/care/contact/icon_anchor.svg) no-repeat;
  background-size: cover;
}
body.contact #sec01 .boxBuAnchorNew ul > li > a > div {
  display: table-cell;
  vertical-align: middle;
}
body.contact #sec01 .boxBuAnchorNew ul > li > a > div:nth-of-type(1) {
  width: 70px;
  text-align: center;
  font-size: 20px;
  border-right: 1px solid #ffffff;
}
body.contact #sec01 .boxBuAnchorNew ul > li > a > div:nth-of-type(2) {
  padding-right: 55px;
  padding-left: 30px;
  font-size: 16px;
  line-height: 150%;
  text-align: left;
}
body.contact #sec01 .boxBuAnchorNew ul > li .txNote {
  width: 365px;
  padding-top: 10px;
  padding-left: 1em;
  text-indent: -1em;
}
body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(1) .txNote {
  margin-left: 20px;
}
body.contact .boxTtlAnchor {
  margin-top: 40px;
}
body.contact .boxTtlAnchor .headline {
  display: table;
  width: 525px;
  height: 45px;
  padding: 15px 0px;
  margin: 0px auto;
}
body.contact .boxTtlAnchor .headline > div {
  display: table-cell;
  vertical-align: middle;
  color: #ffffff;
}
body.contact .boxTtlAnchor .headline > div:nth-of-type(1) {
  width: 100px;
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  border-right: 1px solid #ffffff;
}
body.contact .boxTtlAnchor .headline > div:nth-of-type(2) {
  padding: 0px 35px;
  font-size: 28px;
  font-weight: normal;
}
body.contact .boxTtlAnchor .txNote {
  text-align: center;
  padding-top: 10px;
  font-size: 14px;
}



@media (min-width:768px), print {
  /*body.contact pc ------------------------------------------------------------------------------------*/
  body.contact #contents #visual .container {
    max-width: 1200px;
  }
  body.contact #contents .container {
    max-width: 1000px;
  }
  body.contact #sec01 {
    margin-bottom: 60px;
  }
  body.contact #sec02 {
    padding: 60px 0;
  }
  body.contact #sec03 {
    margin: 60px 0;
  }
  body.contact .flow_box > li {
    padding: 25px 0;
  }
  body.contact .flow_box dt {
    background-color: #aecee9;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-basis: 80px;
    width: 80px;
    height: 80px;
    font-size: 3rem;
  }
  body.contact .flow_box dd {
    flex-basis: calc(100% - 110px);
    width: calc(100% - 110px);
  }
  body.contact .flow_box .ttl {
    font-size: 2rem;
    margin-bottom: 5px;
  }
  body.contact .flow_box .btn01 {
    text-align: left;
  }
  body.contact .flow_box p + p {
    margin-top: 15px;
  }
  body.contact #sec02 .ttl2,
  body.contact #sec03 .ttl {
      font-size: 2.5rem;
    margin: 60px 0 25px;
  }
  body.contact .btn01.form {
    margin-top: 50px;
  }
  body.contact #nav_wrap {
    margin-top: 100px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*body.contact tab ------------------------------------------------------------------------------------*/
}
@media (max-width: 767px) {
  /*body.contact sp ------------------------------------------------------------------------------------*/
  span#flow {
    display: block;
    padding-top: 13.89vw;
    margin-top: -13.89vw;
  }
  body.contact #sec01 {
    margin: 8.33vw 0;
  }
  body.contact #sec02 {
    padding: 8.33vw 0;
  }
  body.contact #sec03 {
    margin: 8.33vw 0;
  }
  body.contact #sec02 .secttl {
    margin-bottom: 0px;
  }
  body.contact .flow_box > li {
    padding: 5.56vw 0;
    position: relative;
  }
  body.contact .flow_box > li:before {
    background-color: #aecee9;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 5.56vw;
    left: 0px;
    width: 11.81vw;
    height: 11.81vw;
    font-size: 5.56vw;
  }
  body.contact .flow_box > li:nth-child(1):before {
    content: "1";
  }
  body.contact .flow_box > li:nth-child(2):before {
    content: "2";
  }
  body.contact .flow_box > li:nth-child(3):before {
    content: "3";
  }
  body.contact .flow_box > li:nth-child(4):before {
    content: "4";
  }
  body.contact .flow_box dt {
    display: none;
  }
  body.contact #sec01 .boxBuAnchorNew ul {
    display: block;
    text-align: center;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li {
    display: block;
    width: 73%;
    margin: 0px auto;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(1) {
    padding-right: 0px;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(2) {
    padding-left: 0px;
    margin-top: 20px;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li > a {
    width: 100%;
    height: 35px;
    padding: 10px 0px;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(1) > a {
    margin-left: 0px;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li > a::before {
    width: 14px;
    height: 7px;
    right: 13px;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li > a > div:nth-of-type(1) {
    width: 50px;
    text-align: center;
    font-size: 4.3vw;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li > a > div:nth-of-type(2) {
    padding-right: 40px;
    padding-left: 20px;
    font-size: 3.0vw;
    line-height: 150%;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li .txNote {
    width: 100%;
    padding-top: 5px;
    text-align: left;
  }
  body.contact #sec01 .boxBuAnchorNew ul > li:nth-of-type(1) .txNote {
    margin-left: 0px;
  }
  body.contact .boxTtlAnchor {
    margin-top: 15px;
  }
  body.contact .boxTtlAnchor .headline {
    display: table;
    width: 100%;
    height: auto;
    padding: 12px 0px;
  }
  body.contact .boxTtlAnchor .headline > div:nth-of-type(1) {
    width: 50px;
    font-size: 5vw;
  }
  body.contact .boxTtlAnchor .headline > div:nth-of-type(2) {
    padding: 0px 17px;
    font-size: 5vw;
  }
  body.contact .boxTtlAnchor .txNote {
    text-align: left;
    padding-top: 5px;
    font-size: 3.0vw;
    padding-left: 1em;
    text-indent: -1em;
  }
  
  body.contact #sec02 .flow_box .ttl {
    font-size: 4.17vw;
    line-height: 1.5;
    min-height: 11.81vw;
    display: flex;
    align-items: center;
    margin-bottom: 5.56vw;
    padding-left: 15.28vw;
  }
  body.contact #sec02 .flow_box .txt,
  body.contact #sec03 .flow_box .txt {
    padding-left: 15.28vw;
  }
  body.contact #sec02 .flow_box .txt + *,
  body.contact #sec03 .flow_box .txt + * {
      margin-top: 4.17vw;
  }
  body.contact .flow_box p + p {
    margin-top: 4.17vw;
  }
  body.contact #sec02 .ttl2,
  body.contact #sec03 .ttl {
      font-size: 4.86vw;
    margin: 9.72vw 0 5.56vw;
  }
  body.contact #sec03 .lead {
    margin-bottom: 4.17vw;
  }
  body.contact .btn01.form {
    margin-top: 9.72vw;
  }
}
/*
###################################################################################################################################

body.intro

###################################################################################################################################
*/
body.intro #sec01 .intro_list > li {
  background-color: #eaf4fd;
}
body.intro #sec01 .intro_list .ttl {
  font-weight: 500;
  text-align: center;
}
body.intro #sec02 {
  background-color: #f8f8f8;
}
body.intro #sec02 .btn01.form > a {
  background-color: #299EDB;
  color: #FFFFFF;
  border: none;
}
body.intro #sec02 .btn01.form > a:after {
  display: none;
}
@media (min-width:768px), print {
  /*body.intro pc ------------------------------------------------------------------------------------*/
  body.intro #sec01 {
    margin-bottom: 50px;
  }
  body.intro #sec01 .intro_list > li {
    flex-basis: 32.5%;
  }
  body.intro #sec01 .intro_list .inner {
    padding: 25px;
  }
  body.intro #sec01 .intro_list .ttl {
    margin: 15px 0 10px;
    font-size: 2rem;
  }
  body.intro #sec02 {
    padding: 50px 0;
  }
  body.intro #sec02 .img {
    margin-bottom: 30px;
    text-align: center;
  }
  body.intro #sec02 .lead {
    margin: 0 8.3% 30px;
  }
  body.intro #sec02 .btn01.form > a {
    min-width: 300px;
  }
}
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*body.intro tab ------------------------------------------------------------------------------------*/
}
@media (max-width: 767px) {
  /*body.intro sp ------------------------------------------------------------------------------------*/
  body.intro #sec01 {
    margin: 8.33vw 0;
  }
  body.intro #sec01 .intro_list > li + li {
    margin-top: 6vw;
  }
  body.intro #sec01 .intro_list .inner {
    padding: 5.56vw;
  }
  body.intro #sec01 .intro_list .ttl {
    margin: 4.17vw 0;
    font-size: 4.17vw;
  }
  body.intro #sec02 {
    padding: 8.33vw 0;
  }
  body.intro #sec02 .img {
    margin-bottom: 4.17vw;
  }
  body.intro #sec02 .lead {
    margin-bottom: 8.33vw;
  }
}

/* acp */
.tbl_acp_dl th:nth-of-type(2) {
  width: 25%;
}
.tbl_acp_dl td:nth-of-type(n+2) {
  text-align: center;
}