@charset "UTF-8";
.item__text > a:before, .item__title > a:before, .card-d__btn > a:before, .card-c__title-company > a:before, .card-c__text > a:before, .card-c__title > a:before, .card-b__title > a:before, .card-a__more > a:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

@font-face {
  font-display: optional;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/NotoSansCJKjp-Regular.woff2") format("woff2");
}
@font-face {
  font-display: optional;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  src: url("fonts/NotoSansCJKjp-Medium.woff2") format("woff2");
}
@font-face {
  font-display: optional;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  src: url("fonts/NotoSansCJKjp-Bold.woff2") format("woff2");
}
@font-face {
  font-display: optional;
  font-family: "Albert Sans";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/AlbertSans-Regular.woff2") format("woff2");
}
@font-face {
  font-display: optional;
  font-family: "Albert Sans";
  font-style: normal;
  font-weight: 500;
  src: url("fonts/AlbertSans-Medium.woff2") format("woff2");
}
@font-face {
  font-display: optional;
  font-family: "Albert Sans";
  font-style: normal;
  font-weight: 600;
  src: url("fonts/AlbertSans-SemiBold.woff2") format("woff2");
}
/*====================================

Utilities

====================================*/
.u-mt-0 {
  margin-top: 0px !important;
}

.u-mb-0 {
  margin-bottom: 0px !important;
}

.u-ml-0 {
  margin-left: 0px !important;
}

.u-mr-0 {
  margin-right: 0px !important;
}

.u-pt-0 {
  padding-top: 0px !important;
}

.u-pb-0 {
  padding-bottom: 0px !important;
}

.u-pl-0 {
  padding-left: 0px !important;
}

.u-pr-0 {
  padding-right: 0px !important;
}

.u-mt-5 {
  margin-top: 5px !important;
}

.u-mb-5 {
  margin-bottom: 5px !important;
}

.u-ml-5 {
  margin-left: 5px !important;
}

.u-mr-5 {
  margin-right: 5px !important;
}

.u-pt-5 {
  padding-top: 5px !important;
}

.u-pb-5 {
  padding-bottom: 5px !important;
}

.u-pl-5 {
  padding-left: 5px !important;
}

.u-pr-5 {
  padding-right: 5px !important;
}

.u-mt-10 {
  margin-top: 10px !important;
}

.u-mb-10 {
  margin-bottom: 10px !important;
}

.u-ml-10 {
  margin-left: 10px !important;
}

.u-mr-10 {
  margin-right: 10px !important;
}

.u-pt-10 {
  padding-top: 10px !important;
}

.u-pb-10 {
  padding-bottom: 10px !important;
}

.u-pl-10 {
  padding-left: 10px !important;
}

.u-pr-10 {
  padding-right: 10px !important;
}

.u-mt-15 {
  margin-top: 15px !important;
}

.u-mb-15 {
  margin-bottom: 15px !important;
}

.u-ml-15 {
  margin-left: 15px !important;
}

.u-mr-15 {
  margin-right: 15px !important;
}

.u-pt-15 {
  padding-top: 15px !important;
}

.u-pb-15 {
  padding-bottom: 15px !important;
}

.u-pl-15 {
  padding-left: 15px !important;
}

.u-pr-15 {
  padding-right: 15px !important;
}

.u-mt-20 {
  margin-top: 20px !important;
}

.u-mb-20 {
  margin-bottom: 20px !important;
}

.u-ml-20 {
  margin-left: 20px !important;
}

.u-mr-20 {
  margin-right: 20px !important;
}

.u-pt-20 {
  padding-top: 20px !important;
}

.u-pb-20 {
  padding-bottom: 20px !important;
}

.u-pl-20 {
  padding-left: 20px !important;
}

.u-pr-20 {
  padding-right: 20px !important;
}

.u-mt-25 {
  margin-top: 25px !important;
}

.u-mb-25 {
  margin-bottom: 25px !important;
}

.u-ml-25 {
  margin-left: 25px !important;
}

.u-mr-25 {
  margin-right: 25px !important;
}

.u-pt-25 {
  padding-top: 25px !important;
}

.u-pb-25 {
  padding-bottom: 25px !important;
}

.u-pl-25 {
  padding-left: 25px !important;
}

.u-pr-25 {
  padding-right: 25px !important;
}

.u-mt-30 {
  margin-top: 30px !important;
}

.u-mb-30 {
  margin-bottom: 30px !important;
}

.u-ml-30 {
  margin-left: 30px !important;
}

.u-mr-30 {
  margin-right: 30px !important;
}

.u-pt-30 {
  padding-top: 30px !important;
}

.u-pb-30 {
  padding-bottom: 30px !important;
}

.u-pl-30 {
  padding-left: 30px !important;
}

.u-pr-30 {
  padding-right: 30px !important;
}

.u-mt-35 {
  margin-top: 35px !important;
}

.u-mb-35 {
  margin-bottom: 35px !important;
}

.u-ml-35 {
  margin-left: 35px !important;
}

.u-mr-35 {
  margin-right: 35px !important;
}

.u-pt-35 {
  padding-top: 35px !important;
}

.u-pb-35 {
  padding-bottom: 35px !important;
}

.u-pl-35 {
  padding-left: 35px !important;
}

.u-pr-35 {
  padding-right: 35px !important;
}

.u-mt-40 {
  margin-top: 40px !important;
}

.u-mb-40 {
  margin-bottom: 40px !important;
}

.u-ml-40 {
  margin-left: 40px !important;
}

.u-mr-40 {
  margin-right: 40px !important;
}

.u-pt-40 {
  padding-top: 40px !important;
}

.u-pb-40 {
  padding-bottom: 40px !important;
}

.u-pl-40 {
  padding-left: 40px !important;
}

.u-pr-40 {
  padding-right: 40px !important;
}

.u-mt-45 {
  margin-top: 45px !important;
}

.u-mb-45 {
  margin-bottom: 45px !important;
}

.u-ml-45 {
  margin-left: 45px !important;
}

.u-mr-45 {
  margin-right: 45px !important;
}

.u-pt-45 {
  padding-top: 45px !important;
}

.u-pb-45 {
  padding-bottom: 45px !important;
}

.u-pl-45 {
  padding-left: 45px !important;
}

.u-pr-45 {
  padding-right: 45px !important;
}

.u-mt-50 {
  margin-top: 50px !important;
}

.u-mb-50 {
  margin-bottom: 50px !important;
}

.u-ml-50 {
  margin-left: 50px !important;
}

.u-mr-50 {
  margin-right: 50px !important;
}

.u-pt-50 {
  padding-top: 50px !important;
}

.u-pb-50 {
  padding-bottom: 50px !important;
}

.u-pl-50 {
  padding-left: 50px !important;
}

.u-pr-50 {
  padding-right: 50px !important;
}

.u-mt-55 {
  margin-top: 55px !important;
}

.u-mb-55 {
  margin-bottom: 55px !important;
}

.u-ml-55 {
  margin-left: 55px !important;
}

.u-mr-55 {
  margin-right: 55px !important;
}

.u-pt-55 {
  padding-top: 55px !important;
}

.u-pb-55 {
  padding-bottom: 55px !important;
}

.u-pl-55 {
  padding-left: 55px !important;
}

.u-pr-55 {
  padding-right: 55px !important;
}

.u-mt-60 {
  margin-top: 60px !important;
}

.u-mb-60 {
  margin-bottom: 60px !important;
}

.u-ml-60 {
  margin-left: 60px !important;
}

.u-mr-60 {
  margin-right: 60px !important;
}

.u-pt-60 {
  padding-top: 60px !important;
}

.u-pb-60 {
  padding-bottom: 60px !important;
}

.u-pl-60 {
  padding-left: 60px !important;
}

.u-pr-60 {
  padding-right: 60px !important;
}

.u-mt-65 {
  margin-top: 65px !important;
}

.u-mb-65 {
  margin-bottom: 65px !important;
}

.u-ml-65 {
  margin-left: 65px !important;
}

.u-mr-65 {
  margin-right: 65px !important;
}

.u-pt-65 {
  padding-top: 65px !important;
}

.u-pb-65 {
  padding-bottom: 65px !important;
}

.u-pl-65 {
  padding-left: 65px !important;
}

.u-pr-65 {
  padding-right: 65px !important;
}

.u-mt-70 {
  margin-top: 70px !important;
}

.u-mb-70 {
  margin-bottom: 70px !important;
}

.u-ml-70 {
  margin-left: 70px !important;
}

.u-mr-70 {
  margin-right: 70px !important;
}

.u-pt-70 {
  padding-top: 70px !important;
}

.u-pb-70 {
  padding-bottom: 70px !important;
}

.u-pl-70 {
  padding-left: 70px !important;
}

.u-pr-70 {
  padding-right: 70px !important;
}

.u-mt-75 {
  margin-top: 75px !important;
}

.u-mb-75 {
  margin-bottom: 75px !important;
}

.u-ml-75 {
  margin-left: 75px !important;
}

.u-mr-75 {
  margin-right: 75px !important;
}

.u-pt-75 {
  padding-top: 75px !important;
}

.u-pb-75 {
  padding-bottom: 75px !important;
}

.u-pl-75 {
  padding-left: 75px !important;
}

.u-pr-75 {
  padding-right: 75px !important;
}

.u-mt-80 {
  margin-top: 80px !important;
}

.u-mb-80 {
  margin-bottom: 80px !important;
}

.u-ml-80 {
  margin-left: 80px !important;
}

.u-mr-80 {
  margin-right: 80px !important;
}

.u-pt-80 {
  padding-top: 80px !important;
}

.u-pb-80 {
  padding-bottom: 80px !important;
}

.u-pl-80 {
  padding-left: 80px !important;
}

.u-pr-80 {
  padding-right: 80px !important;
}

.u-mt-85 {
  margin-top: 85px !important;
}

.u-mb-85 {
  margin-bottom: 85px !important;
}

.u-ml-85 {
  margin-left: 85px !important;
}

.u-mr-85 {
  margin-right: 85px !important;
}

.u-pt-85 {
  padding-top: 85px !important;
}

.u-pb-85 {
  padding-bottom: 85px !important;
}

.u-pl-85 {
  padding-left: 85px !important;
}

.u-pr-85 {
  padding-right: 85px !important;
}

.u-mt-90 {
  margin-top: 90px !important;
}

.u-mb-90 {
  margin-bottom: 90px !important;
}

.u-ml-90 {
  margin-left: 90px !important;
}

.u-mr-90 {
  margin-right: 90px !important;
}

.u-pt-90 {
  padding-top: 90px !important;
}

.u-pb-90 {
  padding-bottom: 90px !important;
}

.u-pl-90 {
  padding-left: 90px !important;
}

.u-pr-90 {
  padding-right: 90px !important;
}

.u-mt-95 {
  margin-top: 95px !important;
}

.u-mb-95 {
  margin-bottom: 95px !important;
}

.u-ml-95 {
  margin-left: 95px !important;
}

.u-mr-95 {
  margin-right: 95px !important;
}

.u-pt-95 {
  padding-top: 95px !important;
}

.u-pb-95 {
  padding-bottom: 95px !important;
}

.u-pl-95 {
  padding-left: 95px !important;
}

.u-pr-95 {
  padding-right: 95px !important;
}

.u-mt-100 {
  margin-top: 100px !important;
}

.u-mb-100 {
  margin-bottom: 100px !important;
}

.u-ml-100 {
  margin-left: 100px !important;
}

.u-mr-100 {
  margin-right: 100px !important;
}

.u-pt-100 {
  padding-top: 100px !important;
}

.u-pb-100 {
  padding-bottom: 100px !important;
}

.u-pl-100 {
  padding-left: 100px !important;
}

.u-pr-100 {
  padding-right: 100px !important;
}

@media only screen and (min-width: 768px), print {
  .u-mt-0-pc {
    margin-top: 0px !important;
  }
  .u-mb-0-pc {
    margin-bottom: 0px !important;
  }
  .u-ml-0-pc {
    margin-left: 0px !important;
  }
  .u-mr-0-pc {
    margin-right: 0px !important;
  }
  .u-pt-0-pc {
    padding-top: 0px !important;
  }
  .u-pb-0-pc {
    padding-bottom: 0px !important;
  }
  .u-pl-0-pc {
    padding-left: 0px !important;
  }
  .u-pr-0-pc {
    padding-right: 0px !important;
  }
  .u-mt-5-pc {
    margin-top: 5px !important;
  }
  .u-mb-5-pc {
    margin-bottom: 5px !important;
  }
  .u-ml-5-pc {
    margin-left: 5px !important;
  }
  .u-mr-5-pc {
    margin-right: 5px !important;
  }
  .u-pt-5-pc {
    padding-top: 5px !important;
  }
  .u-pb-5-pc {
    padding-bottom: 5px !important;
  }
  .u-pl-5-pc {
    padding-left: 5px !important;
  }
  .u-pr-5-pc {
    padding-right: 5px !important;
  }
  .u-mt-10-pc {
    margin-top: 10px !important;
  }
  .u-mb-10-pc {
    margin-bottom: 10px !important;
  }
  .u-ml-10-pc {
    margin-left: 10px !important;
  }
  .u-mr-10-pc {
    margin-right: 10px !important;
  }
  .u-pt-10-pc {
    padding-top: 10px !important;
  }
  .u-pb-10-pc {
    padding-bottom: 10px !important;
  }
  .u-pl-10-pc {
    padding-left: 10px !important;
  }
  .u-pr-10-pc {
    padding-right: 10px !important;
  }
  .u-mt-15-pc {
    margin-top: 15px !important;
  }
  .u-mb-15-pc {
    margin-bottom: 15px !important;
  }
  .u-ml-15-pc {
    margin-left: 15px !important;
  }
  .u-mr-15-pc {
    margin-right: 15px !important;
  }
  .u-pt-15-pc {
    padding-top: 15px !important;
  }
  .u-pb-15-pc {
    padding-bottom: 15px !important;
  }
  .u-pl-15-pc {
    padding-left: 15px !important;
  }
  .u-pr-15-pc {
    padding-right: 15px !important;
  }
  .u-mt-20-pc {
    margin-top: 20px !important;
  }
  .u-mb-20-pc {
    margin-bottom: 20px !important;
  }
  .u-ml-20-pc {
    margin-left: 20px !important;
  }
  .u-mr-20-pc {
    margin-right: 20px !important;
  }
  .u-pt-20-pc {
    padding-top: 20px !important;
  }
  .u-pb-20-pc {
    padding-bottom: 20px !important;
  }
  .u-pl-20-pc {
    padding-left: 20px !important;
  }
  .u-pr-20-pc {
    padding-right: 20px !important;
  }
  .u-mt-25-pc {
    margin-top: 25px !important;
  }
  .u-mb-25-pc {
    margin-bottom: 25px !important;
  }
  .u-ml-25-pc {
    margin-left: 25px !important;
  }
  .u-mr-25-pc {
    margin-right: 25px !important;
  }
  .u-pt-25-pc {
    padding-top: 25px !important;
  }
  .u-pb-25-pc {
    padding-bottom: 25px !important;
  }
  .u-pl-25-pc {
    padding-left: 25px !important;
  }
  .u-pr-25-pc {
    padding-right: 25px !important;
  }
  .u-mt-30-pc {
    margin-top: 30px !important;
  }
  .u-mb-30-pc {
    margin-bottom: 30px !important;
  }
  .u-ml-30-pc {
    margin-left: 30px !important;
  }
  .u-mr-30-pc {
    margin-right: 30px !important;
  }
  .u-pt-30-pc {
    padding-top: 30px !important;
  }
  .u-pb-30-pc {
    padding-bottom: 30px !important;
  }
  .u-pl-30-pc {
    padding-left: 30px !important;
  }
  .u-pr-30-pc {
    padding-right: 30px !important;
  }
  .u-mt-35-pc {
    margin-top: 35px !important;
  }
  .u-mb-35-pc {
    margin-bottom: 35px !important;
  }
  .u-ml-35-pc {
    margin-left: 35px !important;
  }
  .u-mr-35-pc {
    margin-right: 35px !important;
  }
  .u-pt-35-pc {
    padding-top: 35px !important;
  }
  .u-pb-35-pc {
    padding-bottom: 35px !important;
  }
  .u-pl-35-pc {
    padding-left: 35px !important;
  }
  .u-pr-35-pc {
    padding-right: 35px !important;
  }
  .u-mt-40-pc {
    margin-top: 40px !important;
  }
  .u-mb-40-pc {
    margin-bottom: 40px !important;
  }
  .u-ml-40-pc {
    margin-left: 40px !important;
  }
  .u-mr-40-pc {
    margin-right: 40px !important;
  }
  .u-pt-40-pc {
    padding-top: 40px !important;
  }
  .u-pb-40-pc {
    padding-bottom: 40px !important;
  }
  .u-pl-40-pc {
    padding-left: 40px !important;
  }
  .u-pr-40-pc {
    padding-right: 40px !important;
  }
  .u-mt-45-pc {
    margin-top: 45px !important;
  }
  .u-mb-45-pc {
    margin-bottom: 45px !important;
  }
  .u-ml-45-pc {
    margin-left: 45px !important;
  }
  .u-mr-45-pc {
    margin-right: 45px !important;
  }
  .u-pt-45-pc {
    padding-top: 45px !important;
  }
  .u-pb-45-pc {
    padding-bottom: 45px !important;
  }
  .u-pl-45-pc {
    padding-left: 45px !important;
  }
  .u-pr-45-pc {
    padding-right: 45px !important;
  }
  .u-mt-50-pc {
    margin-top: 50px !important;
  }
  .u-mb-50-pc {
    margin-bottom: 50px !important;
  }
  .u-ml-50-pc {
    margin-left: 50px !important;
  }
  .u-mr-50-pc {
    margin-right: 50px !important;
  }
  .u-pt-50-pc {
    padding-top: 50px !important;
  }
  .u-pb-50-pc {
    padding-bottom: 50px !important;
  }
  .u-pl-50-pc {
    padding-left: 50px !important;
  }
  .u-pr-50-pc {
    padding-right: 50px !important;
  }
  .u-mt-55-pc {
    margin-top: 55px !important;
  }
  .u-mb-55-pc {
    margin-bottom: 55px !important;
  }
  .u-ml-55-pc {
    margin-left: 55px !important;
  }
  .u-mr-55-pc {
    margin-right: 55px !important;
  }
  .u-pt-55-pc {
    padding-top: 55px !important;
  }
  .u-pb-55-pc {
    padding-bottom: 55px !important;
  }
  .u-pl-55-pc {
    padding-left: 55px !important;
  }
  .u-pr-55-pc {
    padding-right: 55px !important;
  }
  .u-mt-60-pc {
    margin-top: 60px !important;
  }
  .u-mb-60-pc {
    margin-bottom: 60px !important;
  }
  .u-ml-60-pc {
    margin-left: 60px !important;
  }
  .u-mr-60-pc {
    margin-right: 60px !important;
  }
  .u-pt-60-pc {
    padding-top: 60px !important;
  }
  .u-pb-60-pc {
    padding-bottom: 60px !important;
  }
  .u-pl-60-pc {
    padding-left: 60px !important;
  }
  .u-pr-60-pc {
    padding-right: 60px !important;
  }
  .u-mt-65-pc {
    margin-top: 65px !important;
  }
  .u-mb-65-pc {
    margin-bottom: 65px !important;
  }
  .u-ml-65-pc {
    margin-left: 65px !important;
  }
  .u-mr-65-pc {
    margin-right: 65px !important;
  }
  .u-pt-65-pc {
    padding-top: 65px !important;
  }
  .u-pb-65-pc {
    padding-bottom: 65px !important;
  }
  .u-pl-65-pc {
    padding-left: 65px !important;
  }
  .u-pr-65-pc {
    padding-right: 65px !important;
  }
  .u-mt-70-pc {
    margin-top: 70px !important;
  }
  .u-mb-70-pc {
    margin-bottom: 70px !important;
  }
  .u-ml-70-pc {
    margin-left: 70px !important;
  }
  .u-mr-70-pc {
    margin-right: 70px !important;
  }
  .u-pt-70-pc {
    padding-top: 70px !important;
  }
  .u-pb-70-pc {
    padding-bottom: 70px !important;
  }
  .u-pl-70-pc {
    padding-left: 70px !important;
  }
  .u-pr-70-pc {
    padding-right: 70px !important;
  }
  .u-mt-75-pc {
    margin-top: 75px !important;
  }
  .u-mb-75-pc {
    margin-bottom: 75px !important;
  }
  .u-ml-75-pc {
    margin-left: 75px !important;
  }
  .u-mr-75-pc {
    margin-right: 75px !important;
  }
  .u-pt-75-pc {
    padding-top: 75px !important;
  }
  .u-pb-75-pc {
    padding-bottom: 75px !important;
  }
  .u-pl-75-pc {
    padding-left: 75px !important;
  }
  .u-pr-75-pc {
    padding-right: 75px !important;
  }
  .u-mt-80-pc {
    margin-top: 80px !important;
  }
  .u-mb-80-pc {
    margin-bottom: 80px !important;
  }
  .u-ml-80-pc {
    margin-left: 80px !important;
  }
  .u-mr-80-pc {
    margin-right: 80px !important;
  }
  .u-pt-80-pc {
    padding-top: 80px !important;
  }
  .u-pb-80-pc {
    padding-bottom: 80px !important;
  }
  .u-pl-80-pc {
    padding-left: 80px !important;
  }
  .u-pr-80-pc {
    padding-right: 80px !important;
  }
  .u-mt-85-pc {
    margin-top: 85px !important;
  }
  .u-mb-85-pc {
    margin-bottom: 85px !important;
  }
  .u-ml-85-pc {
    margin-left: 85px !important;
  }
  .u-mr-85-pc {
    margin-right: 85px !important;
  }
  .u-pt-85-pc {
    padding-top: 85px !important;
  }
  .u-pb-85-pc {
    padding-bottom: 85px !important;
  }
  .u-pl-85-pc {
    padding-left: 85px !important;
  }
  .u-pr-85-pc {
    padding-right: 85px !important;
  }
  .u-mt-90-pc {
    margin-top: 90px !important;
  }
  .u-mb-90-pc {
    margin-bottom: 90px !important;
  }
  .u-ml-90-pc {
    margin-left: 90px !important;
  }
  .u-mr-90-pc {
    margin-right: 90px !important;
  }
  .u-pt-90-pc {
    padding-top: 90px !important;
  }
  .u-pb-90-pc {
    padding-bottom: 90px !important;
  }
  .u-pl-90-pc {
    padding-left: 90px !important;
  }
  .u-pr-90-pc {
    padding-right: 90px !important;
  }
  .u-mt-95-pc {
    margin-top: 95px !important;
  }
  .u-mb-95-pc {
    margin-bottom: 95px !important;
  }
  .u-ml-95-pc {
    margin-left: 95px !important;
  }
  .u-mr-95-pc {
    margin-right: 95px !important;
  }
  .u-pt-95-pc {
    padding-top: 95px !important;
  }
  .u-pb-95-pc {
    padding-bottom: 95px !important;
  }
  .u-pl-95-pc {
    padding-left: 95px !important;
  }
  .u-pr-95-pc {
    padding-right: 95px !important;
  }
  .u-mt-100-pc {
    margin-top: 100px !important;
  }
  .u-mb-100-pc {
    margin-bottom: 100px !important;
  }
  .u-ml-100-pc {
    margin-left: 100px !important;
  }
  .u-mr-100-pc {
    margin-right: 100px !important;
  }
  .u-pt-100-pc {
    padding-top: 100px !important;
  }
  .u-pb-100-pc {
    padding-bottom: 100px !important;
  }
  .u-pl-100-pc {
    padding-left: 100px !important;
  }
  .u-pr-100-pc {
    padding-right: 100px !important;
  }
}
@media only screen and (max-width: 767px) {
  .u-mt-0-sp {
    margin-top: 0px !important;
  }
  .u-mb-0-sp {
    margin-bottom: 0px !important;
  }
  .u-ml-0-sp {
    margin-left: 0px !important;
  }
  .u-mr-0-sp {
    margin-right: 0px !important;
  }
  .u-pt-0-sp {
    padding-top: 0px !important;
  }
  .u-pb-0-sp {
    padding-bottom: 0px !important;
  }
  .u-pl-0-sp {
    padding-left: 0px !important;
  }
  .u-pr-0-sp {
    padding-right: 0px !important;
  }
  .u-mt-5-sp {
    margin-top: 5px !important;
  }
  .u-mb-5-sp {
    margin-bottom: 5px !important;
  }
  .u-ml-5-sp {
    margin-left: 5px !important;
  }
  .u-mr-5-sp {
    margin-right: 5px !important;
  }
  .u-pt-5-sp {
    padding-top: 5px !important;
  }
  .u-pb-5-sp {
    padding-bottom: 5px !important;
  }
  .u-pl-5-sp {
    padding-left: 5px !important;
  }
  .u-pr-5-sp {
    padding-right: 5px !important;
  }
  .u-mt-10-sp {
    margin-top: 10px !important;
  }
  .u-mb-10-sp {
    margin-bottom: 10px !important;
  }
  .u-ml-10-sp {
    margin-left: 10px !important;
  }
  .u-mr-10-sp {
    margin-right: 10px !important;
  }
  .u-pt-10-sp {
    padding-top: 10px !important;
  }
  .u-pb-10-sp {
    padding-bottom: 10px !important;
  }
  .u-pl-10-sp {
    padding-left: 10px !important;
  }
  .u-pr-10-sp {
    padding-right: 10px !important;
  }
  .u-mt-15-sp {
    margin-top: 15px !important;
  }
  .u-mb-15-sp {
    margin-bottom: 15px !important;
  }
  .u-ml-15-sp {
    margin-left: 15px !important;
  }
  .u-mr-15-sp {
    margin-right: 15px !important;
  }
  .u-pt-15-sp {
    padding-top: 15px !important;
  }
  .u-pb-15-sp {
    padding-bottom: 15px !important;
  }
  .u-pl-15-sp {
    padding-left: 15px !important;
  }
  .u-pr-15-sp {
    padding-right: 15px !important;
  }
  .u-mt-20-sp {
    margin-top: 20px !important;
  }
  .u-mb-20-sp {
    margin-bottom: 20px !important;
  }
  .u-ml-20-sp {
    margin-left: 20px !important;
  }
  .u-mr-20-sp {
    margin-right: 20px !important;
  }
  .u-pt-20-sp {
    padding-top: 20px !important;
  }
  .u-pb-20-sp {
    padding-bottom: 20px !important;
  }
  .u-pl-20-sp {
    padding-left: 20px !important;
  }
  .u-pr-20-sp {
    padding-right: 20px !important;
  }
  .u-mt-25-sp {
    margin-top: 25px !important;
  }
  .u-mb-25-sp {
    margin-bottom: 25px !important;
  }
  .u-ml-25-sp {
    margin-left: 25px !important;
  }
  .u-mr-25-sp {
    margin-right: 25px !important;
  }
  .u-pt-25-sp {
    padding-top: 25px !important;
  }
  .u-pb-25-sp {
    padding-bottom: 25px !important;
  }
  .u-pl-25-sp {
    padding-left: 25px !important;
  }
  .u-pr-25-sp {
    padding-right: 25px !important;
  }
  .u-mt-30-sp {
    margin-top: 30px !important;
  }
  .u-mb-30-sp {
    margin-bottom: 30px !important;
  }
  .u-ml-30-sp {
    margin-left: 30px !important;
  }
  .u-mr-30-sp {
    margin-right: 30px !important;
  }
  .u-pt-30-sp {
    padding-top: 30px !important;
  }
  .u-pb-30-sp {
    padding-bottom: 30px !important;
  }
  .u-pl-30-sp {
    padding-left: 30px !important;
  }
  .u-pr-30-sp {
    padding-right: 30px !important;
  }
  .u-mt-35-sp {
    margin-top: 35px !important;
  }
  .u-mb-35-sp {
    margin-bottom: 35px !important;
  }
  .u-ml-35-sp {
    margin-left: 35px !important;
  }
  .u-mr-35-sp {
    margin-right: 35px !important;
  }
  .u-pt-35-sp {
    padding-top: 35px !important;
  }
  .u-pb-35-sp {
    padding-bottom: 35px !important;
  }
  .u-pl-35-sp {
    padding-left: 35px !important;
  }
  .u-pr-35-sp {
    padding-right: 35px !important;
  }
  .u-mt-40-sp {
    margin-top: 40px !important;
  }
  .u-mb-40-sp {
    margin-bottom: 40px !important;
  }
  .u-ml-40-sp {
    margin-left: 40px !important;
  }
  .u-mr-40-sp {
    margin-right: 40px !important;
  }
  .u-pt-40-sp {
    padding-top: 40px !important;
  }
  .u-pb-40-sp {
    padding-bottom: 40px !important;
  }
  .u-pl-40-sp {
    padding-left: 40px !important;
  }
  .u-pr-40-sp {
    padding-right: 40px !important;
  }
  .u-mt-45-sp {
    margin-top: 45px !important;
  }
  .u-mb-45-sp {
    margin-bottom: 45px !important;
  }
  .u-ml-45-sp {
    margin-left: 45px !important;
  }
  .u-mr-45-sp {
    margin-right: 45px !important;
  }
  .u-pt-45-sp {
    padding-top: 45px !important;
  }
  .u-pb-45-sp {
    padding-bottom: 45px !important;
  }
  .u-pl-45-sp {
    padding-left: 45px !important;
  }
  .u-pr-45-sp {
    padding-right: 45px !important;
  }
  .u-mt-50-sp {
    margin-top: 50px !important;
  }
  .u-mb-50-sp {
    margin-bottom: 50px !important;
  }
  .u-ml-50-sp {
    margin-left: 50px !important;
  }
  .u-mr-50-sp {
    margin-right: 50px !important;
  }
  .u-pt-50-sp {
    padding-top: 50px !important;
  }
  .u-pb-50-sp {
    padding-bottom: 50px !important;
  }
  .u-pl-50-sp {
    padding-left: 50px !important;
  }
  .u-pr-50-sp {
    padding-right: 50px !important;
  }
  .u-mt-55-sp {
    margin-top: 55px !important;
  }
  .u-mb-55-sp {
    margin-bottom: 55px !important;
  }
  .u-ml-55-sp {
    margin-left: 55px !important;
  }
  .u-mr-55-sp {
    margin-right: 55px !important;
  }
  .u-pt-55-sp {
    padding-top: 55px !important;
  }
  .u-pb-55-sp {
    padding-bottom: 55px !important;
  }
  .u-pl-55-sp {
    padding-left: 55px !important;
  }
  .u-pr-55-sp {
    padding-right: 55px !important;
  }
  .u-mt-60-sp {
    margin-top: 60px !important;
  }
  .u-mb-60-sp {
    margin-bottom: 60px !important;
  }
  .u-ml-60-sp {
    margin-left: 60px !important;
  }
  .u-mr-60-sp {
    margin-right: 60px !important;
  }
  .u-pt-60-sp {
    padding-top: 60px !important;
  }
  .u-pb-60-sp {
    padding-bottom: 60px !important;
  }
  .u-pl-60-sp {
    padding-left: 60px !important;
  }
  .u-pr-60-sp {
    padding-right: 60px !important;
  }
  .u-mt-65-sp {
    margin-top: 65px !important;
  }
  .u-mb-65-sp {
    margin-bottom: 65px !important;
  }
  .u-ml-65-sp {
    margin-left: 65px !important;
  }
  .u-mr-65-sp {
    margin-right: 65px !important;
  }
  .u-pt-65-sp {
    padding-top: 65px !important;
  }
  .u-pb-65-sp {
    padding-bottom: 65px !important;
  }
  .u-pl-65-sp {
    padding-left: 65px !important;
  }
  .u-pr-65-sp {
    padding-right: 65px !important;
  }
  .u-mt-70-sp {
    margin-top: 70px !important;
  }
  .u-mb-70-sp {
    margin-bottom: 70px !important;
  }
  .u-ml-70-sp {
    margin-left: 70px !important;
  }
  .u-mr-70-sp {
    margin-right: 70px !important;
  }
  .u-pt-70-sp {
    padding-top: 70px !important;
  }
  .u-pb-70-sp {
    padding-bottom: 70px !important;
  }
  .u-pl-70-sp {
    padding-left: 70px !important;
  }
  .u-pr-70-sp {
    padding-right: 70px !important;
  }
  .u-mt-75-sp {
    margin-top: 75px !important;
  }
  .u-mb-75-sp {
    margin-bottom: 75px !important;
  }
  .u-ml-75-sp {
    margin-left: 75px !important;
  }
  .u-mr-75-sp {
    margin-right: 75px !important;
  }
  .u-pt-75-sp {
    padding-top: 75px !important;
  }
  .u-pb-75-sp {
    padding-bottom: 75px !important;
  }
  .u-pl-75-sp {
    padding-left: 75px !important;
  }
  .u-pr-75-sp {
    padding-right: 75px !important;
  }
  .u-mt-80-sp {
    margin-top: 80px !important;
  }
  .u-mb-80-sp {
    margin-bottom: 80px !important;
  }
  .u-ml-80-sp {
    margin-left: 80px !important;
  }
  .u-mr-80-sp {
    margin-right: 80px !important;
  }
  .u-pt-80-sp {
    padding-top: 80px !important;
  }
  .u-pb-80-sp {
    padding-bottom: 80px !important;
  }
  .u-pl-80-sp {
    padding-left: 80px !important;
  }
  .u-pr-80-sp {
    padding-right: 80px !important;
  }
  .u-mt-85-sp {
    margin-top: 85px !important;
  }
  .u-mb-85-sp {
    margin-bottom: 85px !important;
  }
  .u-ml-85-sp {
    margin-left: 85px !important;
  }
  .u-mr-85-sp {
    margin-right: 85px !important;
  }
  .u-pt-85-sp {
    padding-top: 85px !important;
  }
  .u-pb-85-sp {
    padding-bottom: 85px !important;
  }
  .u-pl-85-sp {
    padding-left: 85px !important;
  }
  .u-pr-85-sp {
    padding-right: 85px !important;
  }
  .u-mt-90-sp {
    margin-top: 90px !important;
  }
  .u-mb-90-sp {
    margin-bottom: 90px !important;
  }
  .u-ml-90-sp {
    margin-left: 90px !important;
  }
  .u-mr-90-sp {
    margin-right: 90px !important;
  }
  .u-pt-90-sp {
    padding-top: 90px !important;
  }
  .u-pb-90-sp {
    padding-bottom: 90px !important;
  }
  .u-pl-90-sp {
    padding-left: 90px !important;
  }
  .u-pr-90-sp {
    padding-right: 90px !important;
  }
  .u-mt-95-sp {
    margin-top: 95px !important;
  }
  .u-mb-95-sp {
    margin-bottom: 95px !important;
  }
  .u-ml-95-sp {
    margin-left: 95px !important;
  }
  .u-mr-95-sp {
    margin-right: 95px !important;
  }
  .u-pt-95-sp {
    padding-top: 95px !important;
  }
  .u-pb-95-sp {
    padding-bottom: 95px !important;
  }
  .u-pl-95-sp {
    padding-left: 95px !important;
  }
  .u-pr-95-sp {
    padding-right: 95px !important;
  }
  .u-mt-100-sp {
    margin-top: 100px !important;
  }
  .u-mb-100-sp {
    margin-bottom: 100px !important;
  }
  .u-ml-100-sp {
    margin-left: 100px !important;
  }
  .u-mr-100-sp {
    margin-right: 100px !important;
  }
  .u-pt-100-sp {
    padding-top: 100px !important;
  }
  .u-pb-100-sp {
    padding-bottom: 100px !important;
  }
  .u-pl-100-sp {
    padding-left: 100px !important;
  }
  .u-pr-100-sp {
    padding-right: 100px !important;
  }
}
.u-w-100p {
  width: 100%;
}

.u-left {
  text-align: left !important;
}

.u-center {
  text-align: center !important;
}

.u-right {
  text-align: right !important;
}

.u-font-bold {
  font-weight: bold !important;
}

.u-font-normal {
  font-weight: normal !important;
}

.u-block {
  display: block !important;
}

.u-inline-block {
  display: inline-block !important;
}

.u-inline {
  display: inline !important;
}

@media only screen and (max-width: 767px) {
  .u-block-sp {
    display: block !important;
  }
  .u-inline-block-sp {
    display: inline-block !important;
  }
  .u-inline-sp {
    display: inline !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-block-pc {
    display: block !important;
  }
  .u-inline-block-pc {
    display: inline-block !important;
  }
  .u-inline-pc {
    display: inline !important;
  }
}
.u-clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.u-nowrap {
  white-space: nowrap !important;
}

.u-hidden {
  display: none !important;
}

@media only screen and (max-width: 767px) {
  .u-hidden-sp {
    display: none !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-hidden-pc {
    display: none !important;
  }
}
.u-red {
  color: #ec4943;
}

.u-blue {
  color: #53c4c1;
}

.u-txt {
  color: #1d1d1d !important;
}

.u-bg-gray {
  background-color: #f4f4f4;
}

.u-bg-wh {
  background-color: #ffffff;
}

.u-orange {
  color: #faac42;
}
.u-orange-dark {
  color: #ef5f41;
}

.u-bree, .feature-b__maplink {
  font-family: bree, sans-serif;
}

.u-bg-block {
  background-image: linear-gradient(90deg, #fff 20%, transparent 20%), linear-gradient(#fff 30%, #f4f4f4 30%, #f4f4f4 70%, #fff 70%);
}

.u-fs-10 {
  font-size: 10px !important;
}

.u-fs-11 {
  font-size: 11px !important;
}

.u-fs-12 {
  font-size: 12px !important;
}

.u-fs-13 {
  font-size: 13px !important;
}

.u-fs-14 {
  font-size: 14px !important;
}

.u-fs-15 {
  font-size: 15px !important;
}

.u-fs-16 {
  font-size: 16px !important;
}

.u-fs-17 {
  font-size: 17px !important;
}

.u-fs-18 {
  font-size: 18px !important;
}

.u-fs-19 {
  font-size: 19px !important;
}

.u-fs-20 {
  font-size: 20px !important;
}

.u-fs-21 {
  font-size: 21px !important;
}

.u-fs-22 {
  font-size: 22px !important;
}

.u-fs-23 {
  font-size: 23px !important;
}

.u-fs-24 {
  font-size: 24px !important;
}

.u-fs-25 {
  font-size: 25px !important;
}

.u-fs-26 {
  font-size: 26px !important;
}

.u-fs-27 {
  font-size: 27px !important;
}

.u-fs-28 {
  font-size: 28px !important;
}

.u-fs-29 {
  font-size: 29px !important;
}

.u-fs-30 {
  font-size: 30px !important;
}

.u-fs-31 {
  font-size: 31px !important;
}

.u-fs-32 {
  font-size: 32px !important;
}

.u-fs-33 {
  font-size: 33px !important;
}

.u-fs-34 {
  font-size: 34px !important;
}

.u-fs-35 {
  font-size: 35px !important;
}

.u-fs-36 {
  font-size: 36px !important;
}

.u-fs-37 {
  font-size: 37px !important;
}

.u-fs-38 {
  font-size: 38px !important;
}

.u-fs-39 {
  font-size: 39px !important;
}

.u-fs-40 {
  font-size: 40px !important;
}

.u-fs-41 {
  font-size: 41px !important;
}

.u-fs-42 {
  font-size: 42px !important;
}

.u-fs-43 {
  font-size: 43px !important;
}

.u-fs-44 {
  font-size: 44px !important;
}

.u-fs-45 {
  font-size: 45px !important;
}

.u-fs-46 {
  font-size: 46px !important;
}

.u-fs-47 {
  font-size: 47px !important;
}

.u-fs-48 {
  font-size: 48px !important;
}

.u-fs-49 {
  font-size: 49px !important;
}

.u-fs-50 {
  font-size: 50px !important;
}

.u-fs-51 {
  font-size: 51px !important;
}

.u-fs-52 {
  font-size: 52px !important;
}

.u-fs-53 {
  font-size: 53px !important;
}

.u-fs-54 {
  font-size: 54px !important;
}

.u-fs-55 {
  font-size: 55px !important;
}

.u-fs-56 {
  font-size: 56px !important;
}

.u-fs-57 {
  font-size: 57px !important;
}

.u-fs-58 {
  font-size: 58px !important;
}

.u-fs-59 {
  font-size: 59px !important;
}

.u-fs-60 {
  font-size: 60px !important;
}

.u-fs-61 {
  font-size: 61px !important;
}

.u-fs-62 {
  font-size: 62px !important;
}

.u-fs-63 {
  font-size: 63px !important;
}

.u-fs-64 {
  font-size: 64px !important;
}

.u-fs-65 {
  font-size: 65px !important;
}

.u-fs-66 {
  font-size: 66px !important;
}

.u-fs-67 {
  font-size: 67px !important;
}

.u-fs-68 {
  font-size: 68px !important;
}

.u-fs-69 {
  font-size: 69px !important;
}

.u-fs-70 {
  font-size: 70px !important;
}

.u-fs-71 {
  font-size: 71px !important;
}

.u-fs-72 {
  font-size: 72px !important;
}

.u-fs-73 {
  font-size: 73px !important;
}

.u-fs-74 {
  font-size: 74px !important;
}

.u-fs-75 {
  font-size: 75px !important;
}

.u-fs-76 {
  font-size: 76px !important;
}

.u-fs-77 {
  font-size: 77px !important;
}

.u-fs-78 {
  font-size: 78px !important;
}

.u-fs-79 {
  font-size: 79px !important;
}

.u-fs-80 {
  font-size: 80px !important;
}

.u-fs-81 {
  font-size: 81px !important;
}

.u-fs-82 {
  font-size: 82px !important;
}

.u-fs-83 {
  font-size: 83px !important;
}

.u-fs-84 {
  font-size: 84px !important;
}

.u-fs-85 {
  font-size: 85px !important;
}

.u-fs-86 {
  font-size: 86px !important;
}

.u-fs-87 {
  font-size: 87px !important;
}

.u-fs-88 {
  font-size: 88px !important;
}

.u-fs-89 {
  font-size: 89px !important;
}

.u-fs-90 {
  font-size: 90px !important;
}

.u-fs-91 {
  font-size: 91px !important;
}

.u-fs-92 {
  font-size: 92px !important;
}

.u-fs-93 {
  font-size: 93px !important;
}

.u-fs-94 {
  font-size: 94px !important;
}

.u-fs-95 {
  font-size: 95px !important;
}

.u-fs-96 {
  font-size: 96px !important;
}

.u-fs-97 {
  font-size: 97px !important;
}

.u-fs-98 {
  font-size: 98px !important;
}

.u-fs-99 {
  font-size: 99px !important;
}

.u-fs-100 {
  font-size: 100px !important;
}

@media only screen and (min-width: 768px), print {
  .u-fs-10-pc {
    font-size: 10px !important;
  }
  .u-fs-11-pc {
    font-size: 11px !important;
  }
  .u-fs-12-pc {
    font-size: 12px !important;
  }
  .u-fs-13-pc {
    font-size: 13px !important;
  }
  .u-fs-14-pc {
    font-size: 14px !important;
  }
  .u-fs-15-pc {
    font-size: 15px !important;
  }
  .u-fs-16-pc {
    font-size: 16px !important;
  }
  .u-fs-17-pc {
    font-size: 17px !important;
  }
  .u-fs-18-pc {
    font-size: 18px !important;
  }
  .u-fs-19-pc {
    font-size: 19px !important;
  }
  .u-fs-20-pc {
    font-size: 20px !important;
  }
  .u-fs-21-pc {
    font-size: 21px !important;
  }
  .u-fs-22-pc {
    font-size: 22px !important;
  }
  .u-fs-23-pc {
    font-size: 23px !important;
  }
  .u-fs-24-pc {
    font-size: 24px !important;
  }
  .u-fs-25-pc {
    font-size: 25px !important;
  }
  .u-fs-26-pc {
    font-size: 26px !important;
  }
  .u-fs-27-pc {
    font-size: 27px !important;
  }
  .u-fs-28-pc {
    font-size: 28px !important;
  }
  .u-fs-29-pc {
    font-size: 29px !important;
  }
  .u-fs-30-pc {
    font-size: 30px !important;
  }
  .u-fs-31-pc {
    font-size: 31px !important;
  }
  .u-fs-32-pc {
    font-size: 32px !important;
  }
  .u-fs-33-pc {
    font-size: 33px !important;
  }
  .u-fs-34-pc {
    font-size: 34px !important;
  }
  .u-fs-35-pc {
    font-size: 35px !important;
  }
  .u-fs-36-pc {
    font-size: 36px !important;
  }
  .u-fs-37-pc {
    font-size: 37px !important;
  }
  .u-fs-38-pc {
    font-size: 38px !important;
  }
  .u-fs-39-pc {
    font-size: 39px !important;
  }
  .u-fs-40-pc {
    font-size: 40px !important;
  }
  .u-fs-41-pc {
    font-size: 41px !important;
  }
  .u-fs-42-pc {
    font-size: 42px !important;
  }
  .u-fs-43-pc {
    font-size: 43px !important;
  }
  .u-fs-44-pc {
    font-size: 44px !important;
  }
  .u-fs-45-pc {
    font-size: 45px !important;
  }
  .u-fs-46-pc {
    font-size: 46px !important;
  }
  .u-fs-47-pc {
    font-size: 47px !important;
  }
  .u-fs-48-pc {
    font-size: 48px !important;
  }
  .u-fs-49-pc {
    font-size: 49px !important;
  }
  .u-fs-50-pc {
    font-size: 50px !important;
  }
  .u-fs-51-pc {
    font-size: 51px !important;
  }
  .u-fs-52-pc {
    font-size: 52px !important;
  }
  .u-fs-53-pc {
    font-size: 53px !important;
  }
  .u-fs-54-pc {
    font-size: 54px !important;
  }
  .u-fs-55-pc {
    font-size: 55px !important;
  }
  .u-fs-56-pc {
    font-size: 56px !important;
  }
  .u-fs-57-pc {
    font-size: 57px !important;
  }
  .u-fs-58-pc {
    font-size: 58px !important;
  }
  .u-fs-59-pc {
    font-size: 59px !important;
  }
  .u-fs-60-pc {
    font-size: 60px !important;
  }
  .u-fs-61-pc {
    font-size: 61px !important;
  }
  .u-fs-62-pc {
    font-size: 62px !important;
  }
  .u-fs-63-pc {
    font-size: 63px !important;
  }
  .u-fs-64-pc {
    font-size: 64px !important;
  }
  .u-fs-65-pc {
    font-size: 65px !important;
  }
  .u-fs-66-pc {
    font-size: 66px !important;
  }
  .u-fs-67-pc {
    font-size: 67px !important;
  }
  .u-fs-68-pc {
    font-size: 68px !important;
  }
  .u-fs-69-pc {
    font-size: 69px !important;
  }
  .u-fs-70-pc {
    font-size: 70px !important;
  }
  .u-fs-71-pc {
    font-size: 71px !important;
  }
  .u-fs-72-pc {
    font-size: 72px !important;
  }
  .u-fs-73-pc {
    font-size: 73px !important;
  }
  .u-fs-74-pc {
    font-size: 74px !important;
  }
  .u-fs-75-pc {
    font-size: 75px !important;
  }
  .u-fs-76-pc {
    font-size: 76px !important;
  }
  .u-fs-77-pc {
    font-size: 77px !important;
  }
  .u-fs-78-pc {
    font-size: 78px !important;
  }
  .u-fs-79-pc {
    font-size: 79px !important;
  }
  .u-fs-80-pc {
    font-size: 80px !important;
  }
  .u-fs-81-pc {
    font-size: 81px !important;
  }
  .u-fs-82-pc {
    font-size: 82px !important;
  }
  .u-fs-83-pc {
    font-size: 83px !important;
  }
  .u-fs-84-pc {
    font-size: 84px !important;
  }
  .u-fs-85-pc {
    font-size: 85px !important;
  }
  .u-fs-86-pc {
    font-size: 86px !important;
  }
  .u-fs-87-pc {
    font-size: 87px !important;
  }
  .u-fs-88-pc {
    font-size: 88px !important;
  }
  .u-fs-89-pc {
    font-size: 89px !important;
  }
  .u-fs-90-pc {
    font-size: 90px !important;
  }
  .u-fs-91-pc {
    font-size: 91px !important;
  }
  .u-fs-92-pc {
    font-size: 92px !important;
  }
  .u-fs-93-pc {
    font-size: 93px !important;
  }
  .u-fs-94-pc {
    font-size: 94px !important;
  }
  .u-fs-95-pc {
    font-size: 95px !important;
  }
  .u-fs-96-pc {
    font-size: 96px !important;
  }
  .u-fs-97-pc {
    font-size: 97px !important;
  }
  .u-fs-98-pc {
    font-size: 98px !important;
  }
  .u-fs-99-pc {
    font-size: 99px !important;
  }
  .u-fs-100-pc {
    font-size: 100px !important;
  }
}
@media only screen and (max-width: 767px) {
  .u-fs-10-sp {
    font-size: 10px !important;
  }
  .u-fs-11-sp {
    font-size: 11px !important;
  }
  .u-fs-12-sp {
    font-size: 12px !important;
  }
  .u-fs-13-sp {
    font-size: 13px !important;
  }
  .u-fs-14-sp {
    font-size: 14px !important;
  }
  .u-fs-15-sp {
    font-size: 15px !important;
  }
  .u-fs-16-sp {
    font-size: 16px !important;
  }
  .u-fs-17-sp {
    font-size: 17px !important;
  }
  .u-fs-18-sp {
    font-size: 18px !important;
  }
  .u-fs-19-sp {
    font-size: 19px !important;
  }
  .u-fs-20-sp {
    font-size: 20px !important;
  }
  .u-fs-21-sp {
    font-size: 21px !important;
  }
  .u-fs-22-sp {
    font-size: 22px !important;
  }
  .u-fs-23-sp {
    font-size: 23px !important;
  }
  .u-fs-24-sp {
    font-size: 24px !important;
  }
  .u-fs-25-sp {
    font-size: 25px !important;
  }
  .u-fs-26-sp {
    font-size: 26px !important;
  }
  .u-fs-27-sp {
    font-size: 27px !important;
  }
  .u-fs-28-sp {
    font-size: 28px !important;
  }
  .u-fs-29-sp {
    font-size: 29px !important;
  }
  .u-fs-30-sp {
    font-size: 30px !important;
  }
  .u-fs-31-sp {
    font-size: 31px !important;
  }
  .u-fs-32-sp {
    font-size: 32px !important;
  }
  .u-fs-33-sp {
    font-size: 33px !important;
  }
  .u-fs-34-sp {
    font-size: 34px !important;
  }
  .u-fs-35-sp {
    font-size: 35px !important;
  }
  .u-fs-36-sp {
    font-size: 36px !important;
  }
  .u-fs-37-sp {
    font-size: 37px !important;
  }
  .u-fs-38-sp {
    font-size: 38px !important;
  }
  .u-fs-39-sp {
    font-size: 39px !important;
  }
  .u-fs-40-sp {
    font-size: 40px !important;
  }
  .u-fs-41-sp {
    font-size: 41px !important;
  }
  .u-fs-42-sp {
    font-size: 42px !important;
  }
  .u-fs-43-sp {
    font-size: 43px !important;
  }
  .u-fs-44-sp {
    font-size: 44px !important;
  }
  .u-fs-45-sp {
    font-size: 45px !important;
  }
  .u-fs-46-sp {
    font-size: 46px !important;
  }
  .u-fs-47-sp {
    font-size: 47px !important;
  }
  .u-fs-48-sp {
    font-size: 48px !important;
  }
  .u-fs-49-sp {
    font-size: 49px !important;
  }
  .u-fs-50-sp {
    font-size: 50px !important;
  }
  .u-fs-51-sp {
    font-size: 51px !important;
  }
  .u-fs-52-sp {
    font-size: 52px !important;
  }
  .u-fs-53-sp {
    font-size: 53px !important;
  }
  .u-fs-54-sp {
    font-size: 54px !important;
  }
  .u-fs-55-sp {
    font-size: 55px !important;
  }
  .u-fs-56-sp {
    font-size: 56px !important;
  }
  .u-fs-57-sp {
    font-size: 57px !important;
  }
  .u-fs-58-sp {
    font-size: 58px !important;
  }
  .u-fs-59-sp {
    font-size: 59px !important;
  }
  .u-fs-60-sp {
    font-size: 60px !important;
  }
  .u-fs-61-sp {
    font-size: 61px !important;
  }
  .u-fs-62-sp {
    font-size: 62px !important;
  }
  .u-fs-63-sp {
    font-size: 63px !important;
  }
  .u-fs-64-sp {
    font-size: 64px !important;
  }
  .u-fs-65-sp {
    font-size: 65px !important;
  }
  .u-fs-66-sp {
    font-size: 66px !important;
  }
  .u-fs-67-sp {
    font-size: 67px !important;
  }
  .u-fs-68-sp {
    font-size: 68px !important;
  }
  .u-fs-69-sp {
    font-size: 69px !important;
  }
  .u-fs-70-sp {
    font-size: 70px !important;
  }
  .u-fs-71-sp {
    font-size: 71px !important;
  }
  .u-fs-72-sp {
    font-size: 72px !important;
  }
  .u-fs-73-sp {
    font-size: 73px !important;
  }
  .u-fs-74-sp {
    font-size: 74px !important;
  }
  .u-fs-75-sp {
    font-size: 75px !important;
  }
  .u-fs-76-sp {
    font-size: 76px !important;
  }
  .u-fs-77-sp {
    font-size: 77px !important;
  }
  .u-fs-78-sp {
    font-size: 78px !important;
  }
  .u-fs-79-sp {
    font-size: 79px !important;
  }
  .u-fs-80-sp {
    font-size: 80px !important;
  }
  .u-fs-81-sp {
    font-size: 81px !important;
  }
  .u-fs-82-sp {
    font-size: 82px !important;
  }
  .u-fs-83-sp {
    font-size: 83px !important;
  }
  .u-fs-84-sp {
    font-size: 84px !important;
  }
  .u-fs-85-sp {
    font-size: 85px !important;
  }
  .u-fs-86-sp {
    font-size: 86px !important;
  }
  .u-fs-87-sp {
    font-size: 87px !important;
  }
  .u-fs-88-sp {
    font-size: 88px !important;
  }
  .u-fs-89-sp {
    font-size: 89px !important;
  }
  .u-fs-90-sp {
    font-size: 90px !important;
  }
  .u-fs-91-sp {
    font-size: 91px !important;
  }
  .u-fs-92-sp {
    font-size: 92px !important;
  }
  .u-fs-93-sp {
    font-size: 93px !important;
  }
  .u-fs-94-sp {
    font-size: 94px !important;
  }
  .u-fs-95-sp {
    font-size: 95px !important;
  }
  .u-fs-96-sp {
    font-size: 96px !important;
  }
  .u-fs-97-sp {
    font-size: 97px !important;
  }
  .u-fs-98-sp {
    font-size: 98px !important;
  }
  .u-fs-99-sp {
    font-size: 99px !important;
  }
  .u-fs-100-sp {
    font-size: 100px !important;
  }
}
.line-marker {
  background: linear-gradient(transparent 70%, #fddeb3 0%);
  display: inline;
  padding: 0 2px 4px;
}

@media only screen and (min-width: 768px), print {
  .u-center-pc {
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .u-right-sp {
    text-align: right;
  }
  .u-sp-block-auto {
    display: block !important;
    margin-left: auto;
    margin-right: auto;
  }
}
.rel {
  position: relative;
}

.ab {
  position: absolute;
}

.flex, .flex-center, .flex-between {
  display: flex;
  flex-wrap: wrap;
}

.flex-between {
  justify-content: space-between;
}

.flex-center {
  justify-content: center;
}

.align-center {
  align-items: center;
}

.block-auto {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.block {
  display: block;
}

@media only screen and (min-width: 768px), print {
  .pc_none {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .sp_none {
    display: none;
  }
}
.text-center {
  text-align: center;
}

.fff {
  color: #fff;
}

.f125 {
  font-size: 1.125em;
}

.w80 {
  width: 80%;
}

.w100 {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .sp-w100 {
    width: 100% !important;
  }
  .sp-text-left {
    text-align: left !important;
  }
}
.u-rel {
  position: relative;
}

.u-z-index2 {
  z-index: 2;
}

/* Layouts */
/*
* 幅を決めるクラス
* Bootstrap の container みたいなもの
*/
.container, .cv-line__inner {
  width: 1166px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 1225px) {
  .container, .cv-line__inner {
    width: auto;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .container, .cv-line__inner {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media only screen and (min-width: 1226px), print {
  .container.-col-2, .-col-2.cv-line__inner {
    display: flex;
    justify-content: space-between;
  }
  .container.-col-2.-cases, .-col-2.-cases.cv-line__inner {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 1226px), print {
  .container__main {
    flex: none;
    width: 830px;
  }
  .container__main.-cases {
    width: 870px;
  }
}
@media only screen and (min-width: 1226px), print {
  .container__sub {
    flex: none;
    width: 300px;
  }
  .container__sub.-cases {
    width: 270px;
    margin-top: 1.5em;
    padding-right: 2em;
    position: sticky;
    top: 80px;
  }
}
@media only screen and (max-width: 1225px) {
  .container__sub {
    margin-top: 50px;
  }
}

@media only screen and (min-width: 768px), print {
  .grid-2col {
    display: flex;
    justify-content: space-between;
  }
}
.grid-2col.-contact {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 768px), print {
  .grid-2col.-service {
    flex-wrap: wrap;
  }
}

@media only screen and (min-width: 768px), print {
  .grid-2col__cell {
    flex: 1;
  }
}
@media only screen and (min-width: 768px), print {
  .grid-2col__cell.-case {
    flex: none;
    width: 47.5%;
  }
}
@media only screen and (max-width: 767px) {
  .grid-2col__cell.-case {
    max-width: 380px;
    margin-left: auto;
    margin-right: auto;
  }
  .grid-2col__cell.-case:nth-child(2) {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 768px), print {
  .grid-2col__cell.-contact {
    flex: none;
    width: 44.4444%;
  }
}
@media only screen and (max-width: 767px) {
  .grid-2col__cell.-contact {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
  .grid-2col__cell.-contact:nth-child(2) {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 768px), print {
  .grid-2col__cell.-service {
    flex: none;
    width: 48%;
    margin-bottom: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .grid-2col__cell.-service {
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40px;
  }
}

.grid-3col {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1225px) {
  .grid-3col {
    justify-content: space-between;
    width: 720px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 767px) {
  .grid-3col {
    display: block;
    width: auto;
  }
}

.grid-3col__cell {
  width: 350px;
  margin-bottom: 50px;
}
@media only screen and (min-width: 1226px), print {
  .grid-3col__cell {
    margin-left: 58px;
  }
  .grid-3col__cell.-service {
    margin-left: 38px;
  }
  .grid-3col__cell:nth-child(3n+1) {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .grid-3col__cell {
    width: auto;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
  }
  .grid-3col__cell:nth-child(n+2) {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 1226px), print {
  .grid-3col__cell.-member {
    margin-bottom: 0;
  }
  .grid-3col__cell.-member:nth-child(3n+2) {
    margin-top: 100px;
  }
}

.grid-4col {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1225px) {
  .grid-4col {
    width: 870px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 929px) {
  .grid-4col {
    justify-content: space-between;
    width: 575px;
  }
}
@media only screen and (max-width: 767px) {
  .grid-4col {
    width: auto;
    max-width: 575px;
  }
}
@media only screen and (max-width: 1225px) {
  .grid-4col.-service {
    width: 873px;
  }
}
@media screen and (max-width: 932px) {
  .grid-4col.-service {
    justify-content: space-between;
    width: auto;
    max-width: 580px;
  }
}
@media only screen and (max-width: 767px) {
  .grid-4col.-service {
    margin-left: -1em;
  }
}
@media only screen and (max-width: 767px) {
  .grid-4col.-serviceindex, .grid-4col.-live {
    margin-left: -1em;
  }
}
.grid-4col__cell {
  width: 280px;
  margin-bottom: 60px;
  margin-left: 15px;
}
@media only screen and (min-width: 1226px), print {
  .grid-4col__cell:nth-child(4n+1) {
    margin-left: 0;
  }
}
@media only screen and (max-width: 1225px) {
  .grid-4col__cell:nth-child(3n+1) {
    margin-left: 0;
  }
}
@media screen and (max-width: 929px) {
  .grid-4col__cell.grid-4col__cell {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .grid-4col__cell {
    max-width: 48%;
    margin-bottom: 30px;
  }
  .-serviceindex .grid-4col__cell, .-live .grid-4col__cell {
    max-width: 49%;
    margin-bottom: 30px;
  }
}
.grid-4col__cell.-service {
  width: 287px;
  margin-left: 6px;
}
@media only screen and (min-width: 1226px), print {
  .grid-4col__cell.-service:nth-child(4n+1) {
    margin-left: 0;
  }
}
@media only screen and (max-width: 1225px) {
  .grid-4col__cell.-service:nth-child(3n+1) {
    margin-left: 0;
  }
}
@media screen and (max-width: 929px) {
  .grid-4col__cell.-service.grid-4col__cell {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .grid-4col__cell.-service {
    max-width: 50%;
  }
}

.grid-5col.-flow {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 999px) {
  .grid-5col.-flow {
    display: block;
  }
}
.grid-5col__cell.-flow {
  width: 160px;
}
@media only screen and (max-width: 999px) {
  .grid-5col__cell.-flow {
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
  }
}

.grid-cases {
  display: flex;
  flex-wrap: wrap;
  width: 870px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 929px) {
  .grid-cases {
    justify-content: space-between;
    width: 575px;
  }
}
@media only screen and (max-width: 767px) {
  .grid-cases {
    width: auto;
    max-width: 575px;
  }
}
.grid-cases__cell {
  width: 280px;
}
@media only screen and (min-width: 768px), print {
  .grid-cases__cell {
    margin-bottom: 60px;
    margin-left: 15px;
  }
  .grid-cases__cell:nth-child(3n+1) {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .grid-cases__cell {
    max-width: 48%;
    margin-bottom: 30px;
  }
}

.cover, div .article__content .customer-i__img, .card-c__img.-whp img, .card-c__img.-seminar img, .card-a__img.-seminar img, .card-a__img > iframe, .card-a__img > img {
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

/* Button */
.btn.-hover-grad.-arrow:hover:after, #contact .submit_btn input.-hover-grad.-arrow[type=submit]:hover:after, .btn.-arrow-white:after, #contact .submit_btn input.-arrow-white[type=submit]:after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2214%22%20viewBox%3D%220%200%2016%2014%22%3E%3Cpath%20d%3D%22M8.683%2C1l-1.9%2C1.8L10.9%2C6.73H0V9.27H10.9L6.785%2C13.2l1.9%2C1.8L16%2C8Z%22%20transform%3D%22translate(0%20-1)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}

.btn.-with-icon-circle-red, #contact .submit_btn input.-with-icon-circle-red[type=submit], .btn.-with-icon-circle-grad, #contact .submit_btn input.-with-icon-circle-grad[type=submit], .btn.-with-icon-circle-white, #contact .submit_btn input.-with-icon-circle-white[type=submit] {
  padding: 16px 40px;
  font-size: 16px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .btn.-with-icon-circle-red, #contact .submit_btn input.-with-icon-circle-red[type=submit], .btn.-with-icon-circle-grad, #contact .submit_btn input.-with-icon-circle-grad[type=submit], .btn.-with-icon-circle-white, #contact .submit_btn input.-with-icon-circle-white[type=submit] {
    width: 100%;
  }
}
.btn.-with-icon-circle-red::after, #contact .submit_btn input.-with-icon-circle-red[type=submit]::after, .btn.-with-icon-circle-grad::after, #contact .submit_btn input.-with-icon-circle-grad[type=submit]::after, .btn.-with-icon-circle-white::after, #contact .submit_btn input.-with-icon-circle-white[type=submit]::after {
  content: "";
  position: absolute;
  top: calc(50% - 8px);
  right: 20px;
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
}

.btn, #contact .submit_btn input[type=submit] {
  display: inline-block;
  position: relative;
  width: 290px;
  padding: 20px;
  border-radius: 33px;
  border: 1px solid #1d1d1d;
  background-color: #fff;
  text-decoration: none;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  line-height: inherit;
  letter-spacing: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  color: inherit;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: opacity 0.3s;
}
.btn:hover, #contact .submit_btn input[type=submit]:hover {
  opacity: 0.8;
}
.btn, #contact .submit_btn input[type=submit] {
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .btn, #contact .submit_btn input[type=submit] {
    width: 270px;
  }
}
.btn.-clr, #contact .submit_btn input.-clr[type=submit] {
  background: none;
  border: 1px solid;
}
.btn.-big, #contact .submit_btn input.-big[type=submit] {
  border-radius: 4em;
}
@media only screen and (min-width: 768px), print {
  .btn.-big, #contact .submit_btn input.-big[type=submit] {
    font-size: 1.125em;
  }
}
@media only screen and (max-width: 767px) {
  .btn.-big, #contact .submit_btn input.-big[type=submit] {
    min-width: 270px;
    width: auto;
    max-width: 100%;
  }
}
.btn:after, #contact .submit_btn input[type=submit]:after {
  display: inline-block;
  position: relative;
  width: 16px;
  height: 14px;
  margin-left: 10px;
  vertical-align: -1px;
  background-repeat: no-repeat;
}
.btn:disabled, #contact .submit_btn input[type=submit]:disabled {
  opacity: 0.2;
  cursor: default;
}
.btn.-arrow:after, #contact .submit_btn input.-arrow[type=submit]:after {
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2214%22%20viewBox%3D%220%200%2016%2014%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22linear-gradient%22%20x1%3D%220.09%22%20x2%3D%221%22%20y2%3D%221%22%20gradientUnits%3D%22objectBoundingBox%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23faac3b%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e31745%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M8.683%2C1l-1.9%2C1.8L10.9%2C6.73H0V9.27H10.9L6.785%2C13.2l1.9%2C1.8L16%2C8Z%22%20transform%3D%22translate(0%20-1)%22%20fill%3D%22url(%23linear-gradient)%22%2F%3E%3C%2Fsvg%3E");
}
.btn.-arrow-white:after, #contact .submit_btn input.-arrow-white[type=submit]:after {
  content: "";
}
.btn.-arrow-down:after, #contact .submit_btn input.-arrow-down[type=submit]:after {
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214%22%20height%3D%2216%22%20viewBox%3D%220%200%2014%2016%22%3E%3Cpath%20d%3D%22M8.683%2C1l-1.9%2C1.8L10.9%2C6.73H0V9.27H10.9L6.785%2C13.2l1.9%2C1.8L16%2C8Z%22%20transform%3D%22translate(15)%20rotate(90)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}
.btn.-hover-grad, #contact .submit_btn input.-hover-grad[type=submit] {
  overflow: hidden;
  transition: color 0.5s;
}
.btn.-hover-grad > span, #contact .submit_btn input.-hover-grad[type=submit] > span {
  position: relative;
}
.btn.-hover-grad:before, #contact .submit_btn input.-hover-grad[type=submit]:before {
  content: "";
  position: absolute;
  top: 0;
  right: -2px;
  bottom: 0;
  left: -2px;
  background-image: linear-gradient(90deg, #faac42 0%, #e31745 100%);
  background-repeat: no-repeat;
  background-color: #faac42;
  transform: skewX(-16deg) translateX(-100%);
  transition: all 0.5s;
}
.btn.-hover-grad:hover, #contact .submit_btn input.-hover-grad[type=submit]:hover {
  opacity: 1;
  color: #ffffff;
}
.btn.-hover-grad:hover:before, #contact .submit_btn input.-hover-grad[type=submit]:hover:before {
  transform: skewX(-16deg);
}
.btn.-hover-grad.-arrow:hover:after, #contact .submit_btn input.-hover-grad.-arrow[type=submit]:hover:after {
  transition-delay: 0.3s;
}
.btn.-header, #contact .submit_btn input.-header[type=submit] {
  width: 130px;
  padding: 10px;
  border-radius: 22px;
  font-size: 12px;
}
.btn.-header.-grad, #contact .submit_btn input.-header.-grad[type=submit] {
  padding: 11px;
}
.btn.-header.-cta, #contact .submit_btn input.-header.-cta[type=submit] {
  display: block;
  margin: 0 auto 1em;
  width: 200px;
  border: none;
  font-size: 1em;
  padding: 1em;
  border-radius: 3em;
}
.is-active .btn.-header.-cta, .is-active #contact .submit_btn input.-header.-cta[type=submit], #contact .submit_btn .is-active input.-header.-cta[type=submit] {
  display: none;
}
.btn.-footnav, #contact .submit_btn input.-footnav[type=submit] {
  width: 130px;
  padding: 10px;
  border-radius: 22px;
  font-size: 12px;
}
.btn.-footnav.-grad, #contact .submit_btn input.-footnav.-grad[type=submit] {
  padding: 11px;
}
@media only screen and (min-width: 768px), print {
  .btn.-footnav.-grad, #contact .submit_btn input.-footnav.-grad[type=submit] {
    margin-top: 2em;
  }
}
@media only screen and (min-width: 768px), print {
  .btn.-footnav, #contact .submit_btn input.-footnav[type=submit] {
    margin-top: 1em;
  }
}
.btn.-grad, #contact .submit_btn input.-grad[type=submit] {
  padding: 21px;
  border-style: none;
  background-image: linear-gradient(106deg, #faac42 0%, #e31745 100%);
  background-repeat: no-repeat;
  background-color: #faac42;
  color: #ffffff;
}
.btn.-grad-2, #contact .submit_btn input.-grad-2[type=submit] {
  border-style: none;
  background-image: linear-gradient(90deg, #e60033 0%, #eb6100 100%);
  background-color: #e60033;
  color: #fff;
}
.btn.-text-grad, #contact .submit_btn input.-text-grad[type=submit] {
  background-image: linear-gradient(90deg, #e60033 0%, #eb6100 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #e60033;
  border-style: none;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.25);
}
.btn.-footer, #contact .submit_btn input.-footer[type=submit] {
  display: block;
  width: auto;
  padding: 18px;
  font-size: 12px;
  border-radius: 0;
}
.btn.-orange, #contact .submit_btn input.-orange[type=submit] {
  background-color: #faac42;
  border-color: #faac42;
  color: #fff;
}
.btn.-orange-b, #contact .submit_btn input.-orange-b[type=submit] {
  background-color: #eb6100;
  border-color: #eb6100;
  color: #fff;
}
.btn.-red, #contact .submit_btn input.-red[type=submit] {
  background-color: #e60033;
  border-color: #e60033;
  color: #fff;
}
.btn.-news, #contact .submit_btn input.-news[type=submit] {
  width: 100%;
  padding: 13px;
  border-radius: 24px;
  border-style: none;
  background-color: #f4f4f4;
  font-size: 12px;
}
@media only screen and (max-width: 767px) {
  .btn.-news, #contact .submit_btn input.-news[type=submit] {
    padding: 10px;
    border-radius: 21px;
    font-size: min(12px, 2.5vw);
  }
}
.btn.-news.is-active, #contact .submit_btn input.-news.is-active[type=submit] {
  background-color: #faac42;
  color: #fff;
}
.btn.-sm, #contact .submit_btn input.-sm[type=submit] {
  width: 230px;
  padding: 12px;
  border-radius: 24px;
  font-size: 12px;
}
@media only screen and (max-width: 767px) {
  .btn.-sm, #contact .submit_btn input.-sm[type=submit] {
    width: 205px;
    padding: 9px;
    border-radius: 21px;
    font-size: 12px;
  }
}
.btn.-xs, #contact .submit_btn input.-xs[type=submit] {
  width: 140px;
  padding: 12px;
  border-radius: 24px;
  font-size: 12px;
}
@media only screen and (max-width: 767px) {
  .btn.-xs, #contact .submit_btn input.-xs[type=submit] {
    width: 140px;
    padding: 12px;
    border-radius: 24px;
    font-size: 12px;
  }
}
@media only screen and (max-width: 767px) {
  .btn.-sm-sp, #contact .submit_btn input.-sm-sp[type=submit] {
    width: 150px;
    padding: 9px;
    border-radius: 21px;
    font-size: 12px;
  }
}
.btn.-lg, #contact .submit_btn input.-lg[type=submit] {
  width: auto;
}
@media only screen and (max-width: 767px) {
  .btn.-lg, #contact .submit_btn input.-lg[type=submit] {
    width: auto;
  }
}
.btn.-drawer, #contact .submit_btn input.-drawer[type=submit] {
  width: 320px;
  max-width: 100%;
  padding: 16px;
  font-size: 16px;
}
.btn.-line, #contact .submit_btn input.-line[type=submit] {
  padding-left: 60px;
  border-style: none;
  background-color: #06c755;
  color: #fff;
  text-align: left;
  border-radius: 40px;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}
.btn.-line::before, #contact .submit_btn input.-line[type=submit]::before {
  content: "";
  position: absolute;
  top: calc(50% - 15px);
  left: 16px;
  width: 30px;
  height: 30px;
  background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%2216%2016%2088%2088%22%20width%3D%2230%22%20height%3D%2230%22%3E%3Cpath%20d%3D%22M103.5%2C54.72c0-19.55-19.6-35.45-43.7-35.45S16.11%2C35.17%2C16.11%2C54.72c0%2C17.53%2C15.55%2C32.21%2C36.54%2C35%2C1.43.31%2C3.36.94%2C3.85%2C2.16a8.93%2C8.93%2C0%2C0%2C1%2C.14%2C4L56%2C99.55c-.19%2C1.1-.88%2C4.32%2C3.78%2C2.35S85%2C87.09%2C94.13%2C76.54h0c6.33-7%2C9.37-14%2C9.37-21.82%22%20fill%3D%22%23fff%22%2F%3E%3Cg%20fill%3D%22%2306c755%22%3E%3Cpath%20d%3D%22M50.93%2C45.28H47.86a.85.85%2C0%2C0%2C0-.85.85v19a.85.85%2C0%2C0%2C0%2C.85.85h3.07a.85.85%2C0%2C0%2C0%2C.85-.85v-19a.85.85%2C0%2C0%2C0-.85-.85%22%2F%3E%3Cpath%20d%3D%22M72%2C45.28H69a.85.85%2C0%2C0%2C0-.85.85V57.44L59.38%2C45.65l-.06-.08h0l-.05-.05h0l0%2C0%2C0%2C0%2C0%2C0%2C0%2C0%2C0%2C0h0l-.05%2C0h0l-.05%2C0h-3.3a.85.85%2C0%2C0%2C0-.85.85v19a.85.85%2C0%2C0%2C0%2C.85.85h3.06a.86.86%2C0%2C0%2C0%2C.86-.85V53.86l8.73%2C11.79a.63.63%2C0%2C0%2C0%2C.22.21h0l.05%2C0h0l0%2C0%2C0%2C0h0l.06%2C0h0A.78.78%2C0%2C0%2C0%2C69%2C66H72a.85.85%2C0%2C0%2C0%2C.85-.85v-19a.85.85%2C0%2C0%2C0-.85-.85%22%2F%3E%3Cpath%20d%3D%22M43.54%2C61.25H35.21V46.13a.85.85%2C0%2C0%2C0-.85-.85H31.3a.85.85%2C0%2C0%2C0-.85.85v19h0a.87.87%2C0%2C0%2C0%2C.23.59h0v0a.87.87%2C0%2C0%2C0%2C.59.23H43.54a.85.85%2C0%2C0%2C0%2C.85-.85V62.1a.85.85%2C0%2C0%2C0-.85-.85%22%2F%3E%3Cpath%20d%3D%22M89%2C50a.85.85%2C0%2C0%2C0%2C.85-.85V46.13a.85.85%2C0%2C0%2C0-.85-.85H76.7a.85.85%2C0%2C0%2C0-.59.24h0v0a.83.83%2C0%2C0%2C0-.24.59h0v19h0a.83.83%2C0%2C0%2C0%2C.24.59h0a.85.85%2C0%2C0%2C0%2C.59.24H89a.85.85%2C0%2C0%2C0%2C.85-.85V62.1a.85.85%2C0%2C0%2C0-.85-.85H80.62V58H89a.85.85%2C0%2C0%2C0%2C.85-.85V54.11a.85.85%2C0%2C0%2C0-.85-.85H80.62V50Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat;
}
.btn.-line-grad-1, #contact .submit_btn input.-line-grad-1[type=submit] {
  background-image: linear-gradient(90deg, #06c755 0%, #06c755 50%, #1f96ff 100%);
}
.btn.-line-grad-2, #contact .submit_btn input.-line-grad-2[type=submit] {
  background-image: linear-gradient(90deg, #06c755 0%, #06c755 50%, #fff23b 100%);
}
.btn.-with-icon-circle-white::after, #contact .submit_btn input.-with-icon-circle-white[type=submit]::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%3E%3Ccircle%20opacity%3D%220.3%22%20cx%3D%227.97619%22%20cy%3D%227.97619%22%20r%3D%227.97619%22%20transform%3D%22matrix(-1%200%200%201%2015.9531%200)%22%20fill%3D%22white%22%2F%3E%3Ccircle%20opacity%3D%220.7%22%20cx%3D%224.55782%22%20cy%3D%224.55782%22%20r%3D%224.55782%22%20transform%3D%22matrix(-1%200%200%201%2012.5352%203)%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
}
.btn.-text-grad-2, #contact .submit_btn input.-text-grad-2[type=submit], .btn.-with-icon-circle-red, #contact .submit_btn input.-with-icon-circle-red[type=submit], .btn.-with-icon-circle-grad, #contact .submit_btn input.-with-icon-circle-grad[type=submit] {
  border-color: #fff;
  background-color: #fff;
  color: #e60033;
}
.btn.-text-grad-2 > span, #contact .submit_btn input.-text-grad-2[type=submit] > span, .btn.-with-icon-circle-red > span, #contact .submit_btn input.-with-icon-circle-red[type=submit] > span, .btn.-with-icon-circle-grad > span, #contact .submit_btn input.-with-icon-circle-grad[type=submit] > span {
  display: inline-block;
  background-image: linear-gradient(90deg, #e60033 0%, #eb6100 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
}
.btn.-with-icon-circle-red::after, #contact .submit_btn input.-with-icon-circle-red[type=submit]::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%3E%3Ccircle%20opacity%3D%220.3%22%20cx%3D%227%22%20cy%3D%227%22%20r%3D%227%22%20transform%3D%22matrix(-1%200%200%201%2014%200)%22%20fill%3D%22%23E60033%22%2F%3E%3Ccircle%20opacity%3D%220.7%22%20cx%3D%224%22%20cy%3D%224%22%20r%3D%224%22%20transform%3D%22matrix(-1%200%200%201%2011%203)%22%20fill%3D%22%23E60033%22%2F%3E%3C%2Fsvg%3E");
}
.btn.-with-icon-circle-grad::after, #contact .submit_btn input.-with-icon-circle-grad[type=submit]::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%3E%3Ccircle%20opacity%3D%220.3%22%20cx%3D%227.97619%22%20cy%3D%227.97619%22%20r%3D%227.97619%22%20transform%3D%22matrix(-1%200%200%201%2015.9531%200)%22%20fill%3D%22url(%23paint0_linear_10270_1080)%22%2F%3E%3Ccircle%20opacity%3D%220.7%22%20cx%3D%224.55782%22%20cy%3D%224.55782%22%20r%3D%224.55782%22%20transform%3D%22matrix(-1%200%200%201%2012.5352%203)%22%20fill%3D%22url(%23paint1_linear_10270_1080)%22%2F%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22paint0_linear_10270_1080%22%20x1%3D%220%22%20y1%3D%227.97619%22%20x2%3D%2215.9524%22%20y2%3D%227.97619%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22%23E60033%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23EB6100%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22paint1_linear_10270_1080%22%20x1%3D%220%22%20y1%3D%224.55782%22%20x2%3D%229.11565%22%20y2%3D%224.55782%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22%23E60033%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23EB6100%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E");
}
.btn.-outline-white, #contact .submit_btn input.-outline-white[type=submit] {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  transition-property: background-color;
}
.btn.-outline-white:hover, #contact .submit_btn input.-outline-white[type=submit]:hover {
  background-color: rgba(255, 255, 255, 0.1);
  opacity: 1;
}

/* Legacy Styles */
.aboutus {
  margin-top: 50px;
  padding: 50px 0;
  background-color: #effafd;
}
@media only screen and (max-width: 767px) {
  .aboutus {
    padding: 10px 0 30px;
  }
}
@media only screen and (min-width: 768px), print {
  .aboutus__row-1 {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    height: 540px;
  }
}
@media only screen and (min-width: 768px), print {
  .aboutus__row-2, .aboutus__row-3 {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
  }
}
@media only screen and (min-width: 768px), print {
  .aboutus__sub-row {
    display: flex;
    justify-content: space-between;
    width: 420px;
    margin-left: auto;
  }
}
.aboutus__item.-no-3 {
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .aboutus__item {
    margin-top: 20px;
    text-align: center;
  }
  .aboutus__item > img {
    width: 100%;
    max-width: 420px;
  }
}

.access__map {
  position: relative;
  padding-bottom: 30%;
}
@media only screen and (max-width: 767px) {
  .access__map {
    padding-bottom: 80%;
  }
}
.access__map > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media only screen and (min-width: 768px), print {
  .access__grid {
    display: flex;
    justify-content: space-around;
  }
}
@media only screen and (max-width: 767px) {
  .access__grid {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media only screen and (min-width: 768px), print {
  .access__item {
    width: 400px;
    margin-top: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .access__item {
    margin-top: 40px;
  }
}

.arrow-link {
  color: #1d1d1d !important;
  text-decoration: underline !important;
  display: flex;
  align-items: center;
}
.arrow-link:after {
  margin-left: 0.25em;
  display: inline-block;
  width: 0.875em;
  height: 0.875em;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2214%22%20viewBox%3D%220%200%2016%2014%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22linear-gradient%22%20x1%3D%220.09%22%20x2%3D%221%22%20y2%3D%221%22%20gradientUnits%3D%22objectBoundingBox%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23faac3b%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e31745%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M8.683%2C1l-1.9%2C1.8L10.9%2C6.73H0V9.27H10.9L6.785%2C13.2l1.9%2C1.8L16%2C8Z%22%20transform%3D%22translate(0%20-1)%22%20fill%3D%22url(%23linear-gradient)%22%2F%3E%3C%2Fsvg%3E") 50%/100% auto no-repeat;
}

.article {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.article__thumb {
  margin-bottom: 25px;
}
.article__thumb.-video {
  position: relative;
  padding-bottom: 56.18%;
}
.article__thumb img {
  width: 100%;
}
.article__info {
  display: flex;
  margin-bottom: 30px;
}
.article__date {
  margin-left: auto;
  color: #808080;
  font-size: 14px;
  letter-spacing: 1px;
  display: flex;
  align-items: center;
}
.article__dateicon {
  width: 1em;
  margin-right: 0.25em;
  vertical-align: middle;
  display: inline-block;
}
.article__dateicon.-update {
  margin-left: 0.75em;
}
.article__category {
  display: inline-block;
  width: 107px;
  border: 1px solid #53c4c1;
  font-size: 12px;
  color: #53c4c1;
  text-align: center;
}
.article__title {
  margin-bottom: 60px;
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .article__title {
    margin-bottom: 40px;
    font-size: 20px;
    letter-spacing: 1px;
  }
}
.article__seminar-btn {
  margin-bottom: 50px;
  text-align: center;
}
.article__schedule {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 2px;
  font-family: bree, sans-serif;
}
@media only screen and (max-width: 767px) {
  .article__schedule {
    font-size: 18px;
    letter-spacing: 1px;
  }
}
.article__schedule > small {
  font-size: 18px;
}
@media only screen and (max-width: 767px) {
  .article__schedule > small {
    font-size: 14px;
  }
}
@media only screen and (min-width: 768px), print {
  .article__schedule-info {
    align-self: flex-end;
    font-size: 16px;
    margin-left: 20px;
    margin-bottom: 7px;
  }
}
@media only screen and (max-width: 767px) {
  .article__schedule-info {
    font-size: 14px;
  }
}
.article__lead {
  font-size: 16px;
  letter-spacing: 1px;
  font-weight: bold;
}
.article__content {
  max-width: 830px;
  margin-left: auto;
  margin-right: auto;
}
.article__content p {
  margin-bottom: 30px;
  word-break: break-all;
}
.article__content h2 {
  margin-top: 40px;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.25;
  margin-bottom: 15px;
}
.article__content h2:after {
  content: "";
  display: block;
  margin-top: 30px;
  width: 60px;
  height: 2px;
  background-color: #1d1d1d;
}
.article__content h3,
.article__content h4 {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.25;
}
.article__content img {
  display: block;
  width: 100%;
  max-width: 660px;
  margin-bottom: 15px;
}
.article__content .marker__yellow {
  background: linear-gradient(transparent 75%, #ffffb2 0);
}
.article__content .marker__pink {
  background: linear-gradient(transparent 75%, #ffb2d8 0);
}
.article__content .marker__orange {
  background: linear-gradient(transparent 75%, #ffd5b2 0);
}
.article__content .marker__blue {
  background: linear-gradient(transparent 75%, #b2d6ff 0);
}
.article__content .marker__green {
  background: linear-gradient(transparent 75%, #b2ffc1 0);
}
.article__content ul.circle {
  display: block;
  margin: 40px 0;
  width: 100%;
  padding: 0;
  list-style: none;
}
.article__content ul.circle > li {
  color: #000;
  display: block;
  font-size: 16px;
  font-weight: 400;
  line-height: 100%;
  margin-bottom: 25px;
  padding: 0 0 0 40px;
  position: relative;
}
.article__content ul.circle > li:after {
  content: "";
  display: block;
  position: absolute;
  height: 20px;
  width: 20px;
  border-radius: 10px;
  left: 0;
  margin-right: 15px;
  top: -2px;
}
.article__content ul.circle > li:before {
  content: "";
  display: block;
  position: absolute;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  width: 15px;
  height: 9px;
  transform: rotate(-45deg);
  left: 4px;
  top: 0px;
  z-index: 1;
}
.article__content ul.circle__red > li:after {
  background-color: #f04f6f;
}
.article__content ul.circle__orange > li:after {
  background-color: #ffa347;
}
.article__content ul.circle__green > li:after {
  background-color: #12d49d;
}
.article__content ul.square {
  display: block;
  margin: 40px 0;
  width: 100%;
  padding: 0;
  list-style: none;
}
.article__content ul.square > li {
  color: #000;
  display: block;
  font-size: 16px;
  font-weight: 400;
  line-height: 100%;
  margin-bottom: 25px;
  padding: 0 0 0 40px;
  position: relative;
}
.article__content ul.square > li:after {
  content: "";
  display: block;
  position: absolute;
  height: 18px;
  width: 18px;
  border-radius: 2px;
  left: 0;
  margin-right: 15px;
  top: -2px;
}
.article__content ul.square > li:before {
  content: "";
  display: block;
  position: absolute;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  width: 15px;
  height: 9px;
  transform: rotate(-45deg);
  left: 4px;
  top: -1px;
  z-index: 1;
}
.article__content ul.square__red > li:after {
  background-color: #f04f6f;
}
.article__content ul.square__orange > li:after {
  background-color: #ffa347;
}
.article__content ul.square__green > li:after {
  background-color: #12d49d;
}
.article__content ul.square__line > li:after {
  border: 2px solid #878787;
  height: 18px;
  width: 18px;
}
.article__content ul.square__line > li:before {
  border-left: 3px solid #f04f6f;
  border-bottom: 3px solid #f04f6f;
  width: 17px;
  height: 8px;
  left: 4px;
  top: -3px;
}
.article__content ol.circle {
  counter-reset: list;
  list-style-type: none;
  margin: 40px 0;
  padding: 0;
}
.article__content ol.circle > li {
  position: relative;
  padding: 0 0 0 30px;
  margin: 7px 0 7px 0px;
  font-weight: 400;
  font-size: 16px;
  line-height: 29px;
}
.article__content ol.circle > li:before {
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: 0px;
  width: 20px;
  height: 20px;
  text-align: center;
  color: #fff;
  line-height: 20px;
  border-radius: 50%;
  top: 3px;
  font-size: 14px;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
}
.article__content ol.circle__red > li:before {
  background-color: #f04f6f;
}
.article__content ol.circle__orange > li:before {
  background-color: #ffa347;
}
.article__content ol.circle__green > li:before {
  background-color: #12d49d;
}
.article__content ol.square {
  counter-reset: list;
  list-style-type: none;
  margin: 40px 0;
  padding: 0;
}
.article__content ol.square > li {
  position: relative;
  padding: 0 0 0 30px;
  margin: 7px 0 7px 0px;
  font-weight: 400;
  font-size: 16px;
  line-height: 29px;
}
.article__content ol.square > li:before {
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: 0px;
  width: 20px;
  height: 20px;
  text-align: center;
  color: #fff;
  line-height: 20px;
  border-radius: 2px;
  top: 3px;
  font-size: 14px;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
}
.article__content ol.square__red > li:before {
  background-color: #f04f6f;
}
.article__content ol.square__orange > li:before {
  background-color: #ffa347;
}
.article__content ol.square__green > li:before {
  background-color: #12d49d;
}
.article__content table,
.article__content th,
.article__content td,
.article__content tbody,
.article__content tfoot,
.article__content thead {
  border: 1px solid #d1d1d1;
}
.article__content ul,
.article__content ol {
  padding-left: 1rem;
}
.article__content ul {
  list-style: disc;
}
.article__content ol {
  list-style: decimal;
}
.article__content .text-center {
  text-align: center;
}
.article__content .cta-wrap_01 {
  font-size: 13px;
}
@media only screen and (min-width: 768px), print {
  .article__content .cta-wrap_01 .flex-center {
    display: flex;
    justify-content: space-between;
  }
}
.article__content .cta-wrap_01 .bg {
  padding: 1em 0;
}
.article__content .cta-wrap_01 .lefts {
  padding: 1em;
  width: 400px;
  max-width: 100%;
  background: url(../images/common/tel_wh.svg) no-repeat 50px 50%/2em 2em;
  padding-left: 3em;
  margin: 0 auto;
}
.article__content .cta-wrap_01 .lefts .is_tel {
  font-size: 1.846em;
  font-weight: bold;
}
.article__content .cta-wrap_01 .btn-wrap {
  border: 1px solid #ddd;
  padding: 1.25em;
  text-align: center;
}
@media only screen and (min-width: 768px), print {
  .article__content .cta-wrap_01 .btn-wrap {
    width: 48%;
  }
}
@media only screen and (max-width: 767px) {
  .article__content .cta-wrap_01 .btn-wrap {
    margin-bottom: 10px;
  }
}
.article__content .cta-wrap_01 .btn-wrap__or {
  background: #fbf2ec;
}
.article__content .cta-wrap_01 .btn-wrap__blue {
  background: #effafd;
}
.article__content .cta-wrap_01 .btn-wrap__pink {
  background: #fceff2;
}
.article__content .cta-wrap_01 .btn-cta_01 {
  display: block;
  font-weight: 500;
  width: 300px;
  max-width: 100%;
  text-align: center;
  margin: 0.5em auto 0;
  font-size: 1.5em;
  text-decoration: none;
  padding: 0.5em 0 0.5em 1em;
  border-radius: 4px;
  background: url(images/common/mail_wh.svg) no-repeat 2em 50%/1.25em 1.25em #eb6000;
  color: #fff;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: opacity 0.3s;
}
.article__content .cta-wrap_01 .btn-cta_01:hover {
  opacity: 0.8;
}
.article__content .cta-wrap_01 .btn-cta_01__shooot {
  background: url(mages/common/cinema_wh.svg) no-repeat 1.85em 50%/1.25em 1.25em #ff2e63;
}
.article__content .cta-wrap_01 .btn-cta_01__shooot02 {
  background: url(images/common/cinema_wh.svg) no-repeat 1.85em 50%/1.25em 1.25em #ff2e63;
  width: 370px;
}
@media only screen and (max-width: 767px) {
  .article__content .cta-wrap_01 .btn-cta_01__shooot02 {
    font-size: 16px;
    padding-top: 0;
    height: 56px;
    line-height: 56px;
  }
}
.article__content .cta-wrap_01 .btn-cta_01__contact {
  background: url(images/common/mail_wh.svg) no-repeat 1.5em 50%/1.25em 1.25em #eb6000;
}
.article__content .cta-wrap_01 .btn-cta_01__blue {
  background: url(images/common/book_wh.svg) no-repeat 1.85em 50%/1.25em 1.25em #008fbf;
}
.article iframe {
  max-width: 100%;
}

.bg-graysq {
  position: relative;
}
.bg-graysq .container, .bg-graysq .cv-line__inner {
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px), print {
  .bg-graysq:before {
    content: "";
    position: absolute;
    bottom: 10%;
    left: calc(50% - 390px);
    right: 0;
    height: 45%;
    background-color: #f4f4f4;
    z-index: 1;
  }
}

.big-card {
  padding: 40px 20px 80px;
  box-shadow: 0 0 20px 2px rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 767px) {
  .big-card {
    padding: 40px 20px;
  }
}
.big-card__heading {
  margin-bottom: 100px;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .big-card__heading {
    margin-bottom: 30px;
  }
}

.box-a {
  max-width: 972px;
  margin-left: auto;
  margin-right: auto;
}
.box-a__heading {
  color: #f4f4f4;
  font-size: 44px;
  line-height: 1;
  letter-spacing: 4px;
  text-indent: 4px;
  text-align: center;
  font-family: bree, sans-serif;
}
@media only screen and (max-width: 767px) {
  .box-a__heading {
    font-size: 32px;
  }
}
.box-a__heading.-pctel {
  font-size: 2em;
}
.box-a__body {
  margin-top: -5px;
  padding: 10px;
  border: 4px solid #f4f4f4;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .box-a__body {
    padding: 5px;
    border-width: 2px;
  }
}
.box-a__body-inner {
  padding: 40px 20px;
  background-color: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .box-a__body-inner {
    padding: 20px;
  }
}
.box-a__title {
  font-size: 20px;
  letter-spacing: 2px;
  line-height: 1.5;
  text-indent: 2px;
  text-align: center;
}
.box-a__text {
  margin-top: 30px;
  font-size: 16px;
  letter-spacing: 1px;
  text-align: center;
}
.box-a__btn {
  margin-top: 50px;
  text-align: center;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding-left: 50px;
}
@media only screen and (min-width: 768px), print {
  .breadcrumb {
    padding-right: 1em;
  }
}
.breadcrumb__tips {
  font-size: 10px;
}
.breadcrumb__tips span {
  color: #808080;
}
.breadcrumb__tips .breadcrumb_last {
  display: inline-block;
}
.breadcrumb__tips a {
  color: #1d1d1d;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .breadcrumb__tips {
    padding: 0.5em 1rem !important;
  }
}
.breadcrumb > li {
  color: #808080;
  font-size: 12px;
  letter-spacing: 1px;
}
.breadcrumb > li + li {
  margin-left: 4px;
}
.breadcrumb > li + li:before {
  content: ">";
  margin-right: 4px;
}
.breadcrumb > li > a {
  color: #1d1d1d;
  text-decoration: none;
}
.breadcrumb > li > a:hover {
  text-decoration: underline;
}

.breadcrumb_blog > li {
  font-size: 10px;
}

.card-a {
  position: relative;
  width: 420px;
  background-color: #fff;
  transition: 0.3s;
  -webkit-transition: 0.3s;
}
.card-a.-csr iframe {
  max-width: 100% !important;
}
@media only screen and (max-width: 767px) {
  .card-a {
    width: 230px;
  }
}
@media only screen and (min-width: 768px), print {
  .card-a {
    margin-top: 2px;
  }
  .card-a:not(.-no-effect):hover {
    transform: translate(0, -2px);
    -webkit-transform: translate(0, -2px);
    box-shadow: 0 0 1em 2px rgba(0, 0, 0, 0.08);
  }
}
.card-a__img {
  transition: 0.3s;
  -webkit-transition: 0.3s;
}
.card-a:not(.-no-effect):hover .card-a__img {
  opacity: 0.7;
}
.card-a__img > img {
  width: 100%;
  height: 90px;
}
@media only screen and (min-width: 768px), print {
  .card-a__img > img {
    height: 165px;
  }
}
.card-a__img > iframe {
  display: block;
  width: 100%;
  height: 130px;
}
@media only screen and (min-width: 768px), print {
  .card-a__img > iframe {
    height: 235px;
  }
}
.card-a__img.-seminar img {
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 768px), print {
  .card-a__img.-seminar img {
    height: auto;
  }
}
.card-a__content {
  padding: 20px 10px;
}
.card-a__info {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}
.card-a__date {
  margin-left: auto;
  color: #808080;
  font-size: 14px;
  letter-spacing: 1px;
}
.card-a__schedule {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 1px;
  font-family: bree, sans-serif;
}
@media only screen and (min-width: 768px), print {
  .card-a__schedule {
    font-size: 25px;
  }
}
.card-a__schedule > small {
  font-size: 18px;
}
.card-a__title {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1.5;
}
@media only screen and (min-width: 768px), print {
  .card-a__title {
    font-size: 20px;
  }
}
.card-a__title > a {
  color: inherit;
  text-decoration: none;
}
.card-a__title > a:hover {
  text-decoration: underline;
}
.card-a__text {
  margin-top: 15px;
  font-size: 14px;
}
@media only screen and (max-width: 767px) {
  .card-a__text {
    line-height: 1.6;
  }
}
.card-a__text > a {
  color: inherit;
  text-decoration: none;
}
.card-a__text > a:hover {
  text-decoration: underline;
}
.card-a__more {
  margin-top: 20px;
}
.card-a__more > a {
  color: #ec4943;
  font-size: 12px;
  text-decoration: none;
}
.card-a__more > a:after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 14px;
  margin-left: 10px;
  vertical-align: -2px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2214%22%20viewBox%3D%220%200%2016%2014%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22linear-gradient%22%20x1%3D%220.09%22%20x2%3D%221%22%20y2%3D%221%22%20gradientUnits%3D%22objectBoundingBox%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23faac3b%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e31745%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M8.683%2C1l-1.9%2C1.8L10.9%2C6.73H0V9.27H10.9L6.785%2C13.2l1.9%2C1.8L16%2C8Z%22%20transform%3D%22translate(0%20-1)%22%20fill%3D%22url(%23linear-gradient)%22%2F%3E%3C%2Fsvg%3E");
}
.card-a__blank {
  margin-top: 20px;
}
.card-a__blank > a {
  color: #ec4943;
  font-size: 12px;
  text-decoration: none;
}
.card-a__blank > a:after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 14px;
  margin-left: 6px;
  vertical-align: -2px;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22iso-8859-1%22%3F%3E%3Csvg%20version%3D%221.1%22%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22enable-background%3Anew%200%200%20512%20512%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cg%20fill%3D%22%23ec4943%22%3E%20%3Cg%3E%20%3Cpath%20d%3D%22M488.727%2C0H302.545c-12.853%2C0-23.273%2C10.42-23.273%2C23.273c0%2C12.853%2C10.42%2C23.273%2C23.273%2C23.273h129.997L192.999%2C286.09%20c-9.089%2C9.089-9.089%2C23.823%2C0%2C32.912c4.543%2C4.544%2C10.499%2C6.816%2C16.455%2C6.816c5.956%2C0%2C11.913-2.271%2C16.457-6.817L465.455%2C79.458%20v129.997c0%2C12.853%2C10.42%2C23.273%2C23.273%2C23.273c12.853%2C0%2C23.273-10.42%2C23.273-23.273V23.273C512%2C10.42%2C501.58%2C0%2C488.727%2C0z%22%2F%3E%20%3C%2Fg%3E%3C%2Fg%3E%3Cg%3E%20%3Cg%3E%20%3Cpath%20fill%3D%22%23ec4943%22%20d%3D%22M395.636%2C232.727c-12.853%2C0-23.273%2C10.42-23.273%2C23.273v209.455H46.545V139.636H256c12.853%2C0%2C23.273-10.42%2C23.273-23.273%20S268.853%2C93.091%2C256%2C93.091H23.273C10.42%2C93.091%2C0%2C103.511%2C0%2C116.364v372.364C0%2C501.58%2C10.42%2C512%2C23.273%2C512h372.364%20c12.853%2C0%2C23.273-10.42%2C23.273-23.273V256C418.909%2C243.147%2C408.489%2C232.727%2C395.636%2C232.727z%22%2F%3E%20%3C%2Fg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
.card-a__featureimg {
  width: 100%;
  height: 100px;
}
@media only screen and (min-width: 768px), print {
  .card-a__featureimg {
    height: 183px;
  }
}
.card-a__iframe {
  width: 100%;
}
@media only screen and (min-width: 768px), print {
  .card-a__iframe {
    height: 240px;
  }
}
.card-a__dummy {
  position: absolute;
  width: 100%;
  height: 30px;
  left: 0;
}
@media only screen and (min-width: 768px), print {
  .card-a__dummy {
    height: 60px;
  }
}
.card-a__dummy.-dummy01 {
  top: 0;
}
.card-a__dummy.-dummy01:before, .card-a__dummy.-dummy01:after {
  top: 0;
  position: absolute;
  content: "";
  width: 70px;
  height: 80px;
  display: block;
}
@media only screen and (min-width: 768px), print {
  .card-a__dummy.-dummy01:before, .card-a__dummy.-dummy01:after {
    width: 150px;
    height: 190px;
  }
}
.card-a__dummy.-dummy01:before {
  left: 0;
}
.card-a__dummy.-dummy01:after {
  right: 0;
}
.card-a__dummy.-dummy02 {
  top: 100px;
}
@media only screen and (min-width: 768px), print {
  .card-a__dummy.-dummy02 {
    top: 170px;
    height: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .card-a__dummy.-dummy02 {
    display: none;
  }
}

.card-b {
  position: relative;
  transition: 0.3s;
  -webkit-transition: 0.3s;
  background: #fff;
}
@media only screen and (min-width: 768px), print {
  .card-b {
    margin-left: 22px;
  }
}
@media only screen and (max-width: 767px) {
  .card-b:nth-of-type(odd) {
    margin-left: 1em;
  }
}
.card-b.-no-effect:hover {
  opacity: 1;
}
@media only screen and (min-width: 768px), print {
  .card-b:not(.-no-effect):hover {
    transform: translate(0, -2px);
    -webkit-transform: translate(0, -2px);
    box-shadow: 0 0 1em 2px rgba(0, 0, 0, 0.08);
  }
}
@media only screen and (min-width: 768px), print {
  .-serviceindex .card-b {
    margin-left: 0 !important;
  }
}
.card-b__img {
  position: relative;
  transition: 0.3s;
  -webkit-transition: 0.3s;
}
.card-b:not(.-no-effect):hover .card-b__img {
  opacity: 0.7;
}
.-serviceindex .card-b__img img {
  width: 100%;
}
.card-b__decoration {
  width: 200px;
  font-family: bree, sans-serif;
  position: absolute;
  top: -1em;
  line-height: 1.5;
  font-size: 1.125em;
}
@media only screen and (min-width: 768px), print {
  .card-b__decoration {
    text-align: center;
    font-size: 20px;
    top: 200px;
    left: -22px;
    transform-origin: 0 0;
    transform: rotate(-90deg);
  }
}
@media only screen and (max-width: 767px) {
  .card-b__decoration {
    color: #aaa;
    left: 0;
    width: 5em;
  }
}
.card-b__content {
  padding-top: 0.5em;
}
@media only screen and (min-width: 768px), print {
  .card-b__content {
    padding: 1em;
    padding-top: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .card-b__content.-csr {
    padding: 0.5em;
  }
}
.card-b__title {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1.4;
}
@media only screen and (min-width: 768px), print {
  .card-b__title {
    font-size: 18px;
  }
}
.card-b__title > a {
  color: inherit;
  text-decoration: none;
}
.card-b__text {
  margin-top: 15px;
  font-size: 12px;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .card-b__catch.-csr {
    font-size: 0.9em;
  }
}
.card-b .-kana {
  font-size: 0.85em;
  font-feature-settings: "palt";
  position: relative;
  top: -0.125em;
  margin: 0 0.125em;
}

.card-c {
  transition: 0.3s;
  -webkit-transition: 0.3s;
  position: relative;
}
@media only screen and (min-width: 768px), print {
  .card-c:not(.-no-effect):hover {
    transform: translate(0, -2px);
    -webkit-transform: translate(0, -2px);
    box-shadow: 0 0 1em 2px rgba(0, 0, 0, 0.08);
  }
}
.card-c__img img {
  width: 100%;
}
.card-c__img.-case {
  position: relative;
}
.card-c__img.-case:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2293%22%20height%3D%2293%22%20viewBox%3D%220%200%2093%2093%22%3E%20%3Cg%20id%3D%22_-%22%20data-name%3D%22-%22%20transform%3D%22translate(-195%20-3181)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_1063%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%201063%22%20cx%3D%2246.5%22%20cy%3D%2246.5%22%20r%3D%2246.5%22%20transform%3D%22translate(195%203181)%22%20fill%3D%22%23ddd%22%20opacity%3D%220.5%22%2F%3E%20%3Cpath%20id%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2_10%22%20data-name%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2%2010%22%20d%3D%22M24.029%2C6.058a4%2C4%2C0%2C0%2C1%2C6.941%2C0l20.6%2C35.954A4%2C4%2C0%2C0%2C1%2C48.1%2C48H6.9a4%2C4%2C0%2C0%2C1-3.471-5.988Z%22%20transform%3D%22translate(273%203200)%20rotate(90)%22%20fill%3D%22%23ddd%22%20opacity%3D%220.8%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") 50%/100% auto no-repeat;
  width: 6em;
  height: 6em;
  margin: auto;
  content: "";
  display: block;
  transition: 0.2s;
}
.card-c__img.-case.-none:after {
  display: none !important;
}
.card-c__img.-seminar img {
  width: 100%;
}
@media only screen and (min-width: 768px), print {
  .card-c__img.-seminar img {
    height: auto;
  }
}
.card-c__img.-whp img {
  width: 100%;
}
@media only screen and (min-width: 768px), print {
  .card-c__img.-whp img {
    height: 284px;
  }
}
.card-c__img {
  transition: 0.3s;
  -webkit-transition: 0.3s;
}
.card-c:not(.-no-effect):hover .card-c__img {
  opacity: 0.7;
}
.card-c__content {
  padding: 1em 1em 1.5em;
  background-color: #ffffff;
}
@media only screen and (max-width: 767px) {
  .card-c__content {
    padding: 10px 5px;
  }
}
.card-c__content.-flow {
  padding: 0 10px;
}
@media only screen and (max-width: 767px) {
  .card-c__content.-flow .card-c__text {
    padding: 0.5em;
  }
}
.card-c__customer-cat {
  padding: 2px;
  border-radius: 13px;
  background-color: #f4f4f4;
  text-align: center;
  font-size: 12px;
}
.card-c__info {
  display: flex;
  align-items: center;
}
.card-c__date {
  margin-left: auto;
  color: #808080;
  font-size: 14px;
  letter-spacing: 1px;
}
.card-c__schedule {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 1px;
}
@media only screen and (min-width: 768px), print {
  .card-c__schedule {
    font-size: 25px;
  }
}
.card-c__schedule {
  font-family: bree, sans-serif;
}
.card-c__schedule > small {
  font-size: 18px;
}
.card-c__title {
  font-size: 14px;
  line-height: 1.5;
}
.card-c__title.-whp {
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (min-width: 768px), print {
  .card-c__title.-whp {
    font-size: 1.25em;
    min-height: 3em;
    display: flex;
    align-items: center;
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .card-c__title {
    font-size: 12px;
  }
}
.card-c__title > a {
  color: inherit;
}
.card-c__title > a:hover {
  text-decoration: none;
}
.card-c__title.-lg {
  font-size: 18px;
}
@media only screen and (min-width: 768px), print {
  .card-c__title.-lg {
    font-size: 25px;
  }
}
.card-c__title-b {
  margin-bottom: 5px;
  font-size: 20px;
  text-align: center;
}
.card-c__text {
  margin-top: 15px;
  font-size: 12px;
  line-height: 1.5;
}
.card-c__text.-whp {
  margin-top: 0.75em;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 768px), print {
  .card-c__text.-whp {
    font-size: 1em;
  }
}
.card-c__text > a {
  color: inherit;
}
.card-c__text.-service {
  font-size: 14px;
}
.card-c__text.-sns {
  font-size: 1em;
  line-height: 1.7;
}
.card-c__catch {
  font-family: bree, sans-serif;
  color: #808080;
  font-size: 14px;
  text-align: center;
}
.card-c__title-company {
  font-size: 30px;
  letter-spacing: 1px;
  line-height: 1.5;
  text-align: center;
  font-family: bree, sans-serif;
}
@media only screen and (max-width: 767px) {
  .card-c__title-company {
    font-size: 20px;
  }
}
.card-c__title-company > a {
  color: inherit;
}
.card-c__title-company > a:hover {
  text-decoration: none;
}
.card-c__recimg {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 20vw;
}
@media only screen and (min-width: 768px), print {
  .card-c__recimg {
    height: 122px;
  }
}
.card-c a {
  color: #1d1d1d;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .card-c__flowimg {
    width: 75% !important;
  }
}
.card-c__flowno {
  font-size: 1.25em;
  line-height: 1;
  margin-right: 0.125em;
}
@media only screen and (min-width: 768px), print {
  .card-c__flowno {
    font-size: 1.5em;
    position: relative;
    top: 0.05em;
    vertical-align: top;
  }
}
.card-c__link {
  color: #1d1d1d !important;
}

.card-d {
  position: relative;
  padding-bottom: 24px;
}
.card-d__decoration {
  position: absolute;
  top: 400px;
  left: 0;
  width: 400px;
  text-align: right;
  font-family: bree, sans-serif;
  font-size: 26px;
  line-height: 1.5;
  transform-origin: 0 0;
  transform: rotate(-90deg);
}
.card-d__thumb {
  padding-left: 30px;
}
.card-d__content {
  margin-top: -80px;
  margin-right: 30px;
  padding: 110px 10px 30px;
  background-color: #f4f4f4;
  text-align: center;
}
.card-d__name {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 1px;
}
.card-d__text {
  font-size: 14px;
}
.card-d__btn {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  transition: all 0.3s;
}
.card-d__btn > a {
  position: static;
}
.card-d__btn > a:hover {
  opacity: 1;
}
.card-d__btn:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.card-slider {
  position: relative;
  margin-left: calc(50% - 583px);
  padding-bottom: 80px;
}
@media only screen and (max-width: 1225px) {
  .card-slider {
    margin-left: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .card-slider {
    margin-left: 10px;
    padding-bottom: 130px;
  }
}
.card-slider__title {
  font-size: 20px;
  letter-spacing: 1px;
  line-height: 1.5;
}
@media only screen and (min-width: 768px), print {
  .card-slider__title {
    font-size: 28px;
    letter-spacing: 3px;
  }
}
.card-slider__title.-index {
  margin-bottom: 1em;
}
.card-slider__list {
  margin-top: 20px;
}
.card-slider__list .slick-arrow {
  top: auto;
  bottom: -60px;
  width: 40px;
  height: 40px;
  background-repeat: no-repeat;
  transform: none;
}
@media only screen and (max-width: 767px) {
  .card-slider__list .slick-arrow {
    bottom: -85px;
  }
}
.card-slider__list .slick-arrow:before {
  content: none;
}
.card-slider__list .slick-arrow.slick-disabled {
  opacity: 0.2;
}
.card-slider__list .slick-prev {
  left: auto;
  right: calc(50vw - 503px);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%3E%3Cg%20fill%3D%22%23fff%22%20stroke%3D%22%231d1d1d%22%20stroke-width%3D%221%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2220%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2219.5%22%20fill%3D%22none%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M12.555%2C107.5l.9.893-4.015%2C3.975H21v1.263H9.442l4.015%2C3.975-.9.893L7%2C113Z%22%20transform%3D%22translate(6%20-92.5)%22%2F%3E%3C%2Fsvg%3E");
}
@media only screen and (max-width: 1225px) {
  .card-slider__list .slick-prev {
    right: 120px;
  }
}
.card-slider__list .slick-next {
  right: calc(50vw - 583px);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%3E%3Cg%20fill%3D%22%23fff%22%20stroke%3D%22%231d1d1d%22%20stroke-width%3D%221%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2220%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2219.5%22%20fill%3D%22none%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M15.445%2C107.5l-.9.893%2C4.015%2C3.975H7v1.263H18.558l-4.015%2C3.975.9.893L21%2C113Z%22%20transform%3D%22translate(6%20-92.5)%22%2F%3E%3C%2Fsvg%3E");
}
@media only screen and (max-width: 1225px) {
  .card-slider__list .slick-next {
    right: 30px;
  }
}
.card-slider__list .slick-slide {
  outline: none;
}
.card-slider__item {
  margin-right: 40px;
}
@media only screen and (max-width: 767px) {
  .card-slider__item {
    margin-right: 30px;
  }
}
.card-slider__status {
  position: absolute;
  left: calc(50% - 390px);
  right: 0;
  bottom: 0;
  height: 300px;
  background-color: #f4f4f4;
}
@media only screen and (max-width: 1225px) {
  .card-slider__status {
    left: 200px;
  }
}
@media only screen and (max-width: 767px) {
  .card-slider__status {
    left: 55px;
    height: 340px;
  }
}
.card-slider__number {
  position: absolute;
  bottom: 25px;
  right: calc(50vw - 410px);
  font-family: bree, sans-serif;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 1px;
}
@media only screen and (max-width: 1225px) {
  .card-slider__number {
    right: 210px;
  }
}
@media only screen and (max-width: 767px) {
  .card-slider__number {
    bottom: 50px;
  }
}

.case-filter {
  position: relative;
}
@media only screen and (max-width: 1225px) {
  .case-filter {
    padding: 20px;
    border-radius: 10px;
    border: 2px solid #ddd;
    margin-top: -60px;
  }
}
@media only screen and (max-width: 1225px) {
  .case-filter__scroll {
    display: none;
  }
}
.case-filter__scroll {
  overflow: scroll;
  height: 26vh;
  position: relative;
  padding-bottom: 2em;
}
@media only screen and (min-width: 1226px), print {
  .case-filter__scroll {
    margin-top: 1em;
    height: calc(100vh - 120px);
    border-right: 1px solid #ddd;
    padding-right: 0.5em;
  }
}
@media only screen and (max-width: 1225px) {
  .case-filter__shade {
    display: none;
    border-radius: 0 0 12px 12px;
  }
  .case-filter__shade.is-active {
    display: block;
  }
}
.case-filter__shade {
  position: absolute;
  width: 100%;
  height: 5em;
  opacity: 0.8;
  z-index: 2;
  bottom: 0;
  left: 0;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+50,ffffff+100,ffffff+100,ffffff+100&0+0,1+50,1+100 */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 50%, rgb(255, 255, 255) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}
@media only screen and (min-width: 1226px), print {
  .case-filter__shade {
    height: 3em;
    width: calc(100% - 3px);
  }
}
.case-filter__header {
  display: flex;
  justify-content: space-between;
}
.case-filter__heading {
  font-size: 1.125em;
  letter-spacing: 2px;
}
@media only screen and (min-width: 1226px), print {
  .case-filter__heading {
    font-size: 20px;
    width: 100%;
    text-align: center;
    display: none;
  }
}
@media only screen and (max-width: 1225px) {
  .case-filter__heading {
    line-height: 2;
  }
}
@media only screen and (min-width: 1226px), print {
  .case-filter__btn {
    display: none;
  }
}
.case-filter__btn {
  padding: 0;
  background-color: transparent;
  border-style: none;
  cursor: pointer;
}
.case-filter__btn.is-active .case-filter__btn-bar {
  display: none;
}
@media only screen and (max-width: 1225px) {
  .case-filter .searchandfilter {
    margin-top: 1em;
  }
}
@media only screen and (min-width: 1226px), print {
  .case-filter .searchandfilter > ul > li {
    margin-bottom: 2em;
    padding: 1em 0.4em !important;
    background: #f7f7f7;
  }
  .case-filter .searchandfilter > ul > li.sf-field-search {
    padding: 1em !important;
  }
}
@media only screen and (max-width: 1225px) {
  .case-filter .searchandfilter > ul > li:not(:last-of-type) {
    border-bottom: 2px solid #ddd;
  }
}
.case-filter .searchandfilter > ul > li > ul {
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 1em;
}
.case-filter .searchandfilter > ul > li > ul > li {
  margin-right: 3px;
}
.case-filter .searchandfilter > ul > li.sf-field-reset, .case-filter .searchandfilter > ul > li.sf-field-submit {
  display: none;
}
.case-filter .searchandfilter > ul > li.sf-field-search label {
  display: block;
}
.case-filter .searchandfilter > ul > li.sf-field-search .sf-input-text {
  width: 100%;
  padding: 8px 15px;
  border-radius: 30px;
  border: 1px solid #1d1d1d;
  font-family: inherit;
  font-size: 14px;
  outline: none;
  background: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22iso-8859-1%22%3F%3E%3Csvg%20fill%3D%22%23bababa%22%20version%3D%221.1%22%20id%3D%22Capa_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20511.999%20511.999%22%20style%3D%22enable-background%3Anew%200%200%20511.999%20511.999%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cg%3E%20%3Cg%3E%20%3Cpath%20d%3D%22M508.874%2C478.708L360.142%2C329.976c28.21-34.827%2C45.191-79.103%2C45.191-127.309c0-111.75-90.917-202.667-202.667-202.667%20S0%2C90.917%2C0%2C202.667s90.917%2C202.667%2C202.667%2C202.667c48.206%2C0%2C92.482-16.982%2C127.309-45.191l148.732%2C148.732%20c4.167%2C4.165%2C10.919%2C4.165%2C15.086%2C0l15.081-15.082C513.04%2C489.627%2C513.04%2C482.873%2C508.874%2C478.708z%20M202.667%2C362.667%20c-88.229%2C0-160-71.771-160-160s71.771-160%2C160-160s160%2C71.771%2C160%2C160S290.896%2C362.667%2C202.667%2C362.667z%22%2F%3E%20%3C%2Fg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E") 1em 50%/auto 50% no-repeat #fff;
  margin-bottom: 1.5em;
  padding-left: 2.75em;
}
@media only screen and (max-width: 767px) {
  .case-filter .searchandfilter > ul > li.sf-field-search .sf-input-text {
    padding: 9px 20px;
    padding-left: 2.75em;
    border-radius: 20px;
  }
}
.case-filter .searchandfilter h4 {
  font-weight: bold;
}
@media only screen and (min-width: 1226px), print {
  .case-filter .searchandfilter h4 {
    text-align: center;
  }
}
.case-filter .case-filter__btn {
  justify-content: center;
}
.case-filter .case-filter__btn .sf-field-submit {
  margin-right: 0 !important;
}
.case-filter__icon {
  width: 1em;
  height: 1em;
  position: relative;
  top: 0.125em;
  margin-right: 0.25em;
}
.case-filter .sf-input-checkbox {
  display: none;
}
.case-filter .sf-input-checkbox + label {
  position: relative;
}
.case-filter .sf-input-checkbox + label:before {
  border: 1px solid #ddd;
  content: "";
  width: 1.125em;
  height: 1.125em;
  display: inline-block;
  background: #f2f2f2;
  border-radius: 0.25em;
  margin-right: 0.5em;
  position: relative;
  top: 0.25em;
}
.case-filter .sf-input-checkbox:checked + label:before {
  background: #aaaaaa;
  border-color: #aaaaaa;
}
.case-filter .sf-input-checkbox:checked + label:after {
  position: absolute;
  top: 0.5em;
  left: 0.75em;
  content: "";
  width: 1.125em;
  height: 1.125em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248.15%22%20height%3D%2231.079%22%20viewBox%3D%220%200%2048.15%2031.079%22%3E%20%3Cpath%20id%3D%22%E5%90%88%E4%BD%93_18%22%20data-name%3D%22%E5%90%88%E4%BD%93%2018%22%20d%3D%22M43%2C0%2C18.221%2C26.276ZM0%2C6%2C18.221%2C26.276Z%22%20transform%3D%22translate(2.603%202.401)%22%20fill%3D%22rgba(0%2C0%2C0%2C0)%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%227%22%2F%3E%3C%2Fsvg%3E") 50%/90% auto no-repeat;
}
@media only screen and (min-width: 1226px), print {
  .case-filter .sf-count {
    font-size: 0.85em;
    padding-left: 3px;
  }
}

.case-foot a {
  transition: opacity 0.3s;
}
.case-foot a:hover {
  opacity: 0.8;
}
@media only screen and (min-width: 768px), print {
  .case-foot a {
    border-left: 1px solid #999999;
  }
}

.case-share {
  display: flex;
  justify-content: center;
  margin: 2em auto;
}
@media only screen and (max-width: 767px) {
  .case-share {
    transform: scale(0.85);
    -webkit-transform: scale(0.85);
    transform-origin: 50%;
    -webkit-transform-origin: 50%;
  }
}
.case-share__icon {
  fill: #faac42;
}
.case-share__copied {
  visibility: hidden;
  opacity: 0;
  transition: 2s;
  -webkit-transition: 2s;
}
.case-share__copied.is-active {
  opacity: 1;
  visibility: visible;
  animation: copied 1s 0s both;
  -webkit-animation: copied 1s 0s both;
}
@keyframes copied {
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.casecount {
  position: relative;
  text-align: center;
  font-size: 1.125em;
}
.casecount__no {
  font-size: 2em;
  color: #cf243b;
  margin-left: 0.125em;
  margin-right: 0.125em;
}

.categories {
  display: flex;
  flex-wrap: wrap;
}
.categories > li {
  min-width: 84px;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 2px 8px;
  background-color: #999999;
  font-size: 12px;
  line-height: 1.25;
  text-align: center;
  color: #fff;
  font-family: bree, sans-serif;
}
@media only screen and (min-width: 768px), print {
  .categories > li {
    background-color: #1d1d1d;
  }
}

#contact input[type=text], #contact input[type=email], #contact textarea {
  display: block;
  width: 100%;
  padding: 16px 30px;
  border-radius: 10px;
  border: 1px solid #D8D8D8;
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
@media only screen and (max-width: 767px) {
  #contact input[type=text], #contact input[type=email], #contact textarea {
    padding: 10px 20px;
  }
}
#contact input[type=text][size="6"],
#contact input[type=text][size="8"],
#contact input[type=text][size="10"] {
  display: inline;
  width: 100px;
}
@media only screen and (max-width: 767px) {
  #contact input[type=text][size="6"],
  #contact input[type=text][size="8"],
  #contact input[type=text][size="10"] {
    width: 80px;
  }
}
#contact select {
  display: block;
  font-size: 14px;
  font-family: inherit;
  font-weight: normal;
  color: inherit;
  line-height: inherit;
  padding: 16px 30px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #D8D8D8;
  border-radius: 10px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2211%22%20viewBox%3D%220%200%2019%2011%22%3E%3Cpath%20d%3D%22M0%2C6.575%2C2.24%2C4.5%2C9.5%2C11.349%2C16.76%2C4.5%2C19%2C6.575%2C9.5%2C15.5Z%22%20transform%3D%22translate(0%20-4.5)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to left, #D8D8D8, #D8D8D8 80px, #fff 80px);
  background-repeat: no-repeat, repeat;
  background-position: right 30px top 50%, right;
  background-size: 19px 11px, 100%;
  outline: none;
}
#contact select::-ms-expand {
  display: none;
}
#contact select option {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  #contact select {
    padding: 10px 20px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2211%22%20viewBox%3D%220%200%2019%2011%22%3E%3Cpath%20d%3D%22M0%2C6.575%2C2.24%2C4.5%2C9.5%2C11.349%2C16.76%2C4.5%2C19%2C6.575%2C9.5%2C15.5Z%22%20transform%3D%22translate(0%20-4.5)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to left, #D8D8D8, #D8D8D8 60px, #fff 60px);
    background-position: right 20px top 50%, right;
  }
}
#contact .form_list > li {
  margin-bottom: 50px;
}
#contact .form_list > li > label.span_3 {
  display: block;
  font-size: 18px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  #contact .form_list > li > label.span_3 {
    font-size: 16px;
  }
}
#contact .form_list > li > label.span_3.required:after {
  content: "＊";
  margin-left: 5px;
  color: #ec4943;
}
#contact .policy h2 {
  font-size: 18px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  #contact .policy h2 {
    font-size: 16px;
  }
}
#contact .policy_html {
  height: 400px;
  padding: 40px 30px;
  border: 2px solid #d8d8d8;
  border-radius: 5px;
  overflow: auto;
}
@media only screen and (max-width: 767px) {
  #contact .policy_html {
    padding: 20px;
  }
}
#contact .policy_check {
  margin-top: 30px;
  text-align: center;
}
#contact .submit_btn {
  margin-top: 40px;
  text-align: center;
}
#contact .submit_btn input[type=submit] {
  transition-property: all;
}
#contact .submit_btn input[type=submit]:hover {
  opacity: 1;
  background-color: #faac42;
  border-color: #faac42;
  color: #fff;
}
#contact .msgbox {
  text-align: center;
}
#contact .msgbox h2 {
  font-size: 1.2em;
}
#contact p:before {
  content: none;
}

.core-value {
  padding: 0 15px;
}
@media only screen and (min-width: 768px), print {
  .core-value {
    background-image: linear-gradient(#fff 38%, #f4f4f4 38%, #f4f4f4 87%, #fff 87%);
  }
}
.core-value__inner {
  max-width: 1166px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 768px), print {
  .core-value__inner {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 768px), print {
  .core-value__item {
    width: 17%;
  }
  .core-value__item:nth-child(even) {
    margin-top: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .core-value__item {
    text-align: center;
  }
  .core-value__item:nth-child(n+2) {
    margin-top: 20px;
  }
}

.csr-swiper {
  padding-bottom: 5em !important;
}
.csr-swiper .slick-next,
.csr-swiper .slick-prev {
  bottom: 0 !important;
}
.csr-swiper .slick-next::before, .csr-swiper .slick-next:after,
.csr-swiper .slick-prev::before,
.csr-swiper .slick-prev:after {
  opacity: 0 !important;
}

.csr__img {
  display: block;
  margin: 0 auto 1em;
}
@media only screen and (max-width: 767px) {
  .csr__img {
    width: 140px;
  }
}
.csr__cap {
  position: relative;
  z-index: 2;
}

div .article__content .customer-i {
  background: #f4f4f4;
  padding: 1.5em 1em;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 2em;
}
@media only screen and (min-width: 768px), print {
  div .article__content .customer-i {
    padding: 1.5em;
  }
}
div .article__content .customer-i p {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  div .article__content .customer-i p {
    font-size: 1em;
  }
}
div .article__content .customer-i .title__sub, div .article__content .customer-i .indexcta__en {
  width: 100%;
  line-height: 1;
  text-align: center;
}
div .article__content .customer-i__ttl {
  text-align: center;
  font-size: 1.5em;
  width: 100%;
  font-weight: bold;
  margin-bottom: 0.5em !important;
}
div .article__content .customer-i__left {
  width: 100%;
}
@media only screen and (min-width: 768px), print {
  div .article__content .customer-i__left {
    width: 200px;
  }
}
@media only screen and (max-width: 767px) {
  div .article__content .customer-i__left {
    text-align: center;
    margin-bottom: 1em;
  }
}
div .article__content .customer-i__left p {
  line-height: 1.4;
  font-size: 1em;
}
div .article__content .customer-i__right {
  width: 100%;
  padding: 0 1em;
}
@media only screen and (min-width: 768px), print {
  div .article__content .customer-i__right {
    width: calc(100% - 220px);
  }
}
div .article__content .customer-i__img {
  width: 150px;
  height: 150px;
}
@media only screen and (min-width: 768px), print {
  div .article__content .customer-i__img {
    width: 200px;
    height: 200px;
  }
}
@media only screen and (max-width: 767px) {
  div .article__content .customer-i__img {
    display: block;
    margin: 0 auto 1em;
  }
}
div .article__content .customer-i__result {
  margin-top: 1em;
  width: 100%;
  border-top: 1px solid;
  padding-top: 1em;
}
div .article__content .customer-i__result p {
  font-size: 1em;
}
@media only screen and (min-width: 768px), print {
  div .article__content .customer-i.-rev .customer-i__result {
    order: 5;
  }
  div .article__content .customer-i.-rev .customer-i__right {
    order: 3;
  }
  div .article__content .customer-i.-rev .customer-i__left {
    order: 4;
  }
}

.cv-contact {
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
  transition: opacity 0.3s;
}
.cv-contact:hover {
  opacity: 0.8;
}
@media only screen and (min-width: 768px), print {
  .cv-contact {
    background-image: url(img/common/cta-bg_contact.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
  .cv-contact picture {
    max-width: 98%;
    width: 1145px;
    display: block;
    margin: 0 auto;
    padding: 26px 0 40px;
  }
}
.cv-contact > a {
  display: block;
  text-align: center;
}
.cv-contact img {
  width: 100%;
}

.cv-line {
  padding: 40px 20px;
  background-image: url(img/cv-line-bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  color: #fff;
}
.cv-line__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .cv-line__inner {
    flex-direction: column;
  }
}
.cv-line__content {
  max-width: 370px;
  text-align: center;
}
.cv-line__catchcopy {
  margin-top: 20px;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 4px;
}
.cv-line__text {
  margin-top: 20px;
}
.cv-line__qr {
  width: 177px;
}
@media only screen and (max-width: 767px) {
  .cv-line__qr {
    margin-top: 20px;
  }
}
.cv-line__qr-lead {
  margin-left: -2px;
  margin-right: -2px;
  color: #25c300;
  font-size: 26px;
  text-indent: 2px;
  letter-spacing: 2px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
}
.cv-line__qr-lead > small {
  font-size: 18px;
}
.cv-line__qr-img {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 176px;
  margin-top: 5px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22177%22%20height%3D%22176%22%20viewBox%3D%220%200%20177%20176%22%3E%3Cg%20transform%3D%22translate(13%2011.639)%22%3E%3Crect%20width%3D%22129.998%22%20height%3D%22129.998%22%20rx%3D%2213%22%20transform%3D%22translate(11.818%2010.665)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M127.423%20143.179H25.76A15.779%2015.779%200%200110%20127.419V25.756A15.776%2015.776%200%200125.76%2010h101.663a15.774%2015.774%200%200115.76%2015.756v101.663a15.777%2015.777%200%2001-15.76%2015.76zm-101.663-130a12.59%2012.59%200%2000-12.578%2012.574v101.666a12.59%2012.59%200%200012.578%2012.577h101.663A12.59%2012.59%200%2000140%20127.419V25.756a12.59%2012.59%200%2000-12.577-12.574z%22%20fill%3D%22%2325c300%22%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%22%2325c300%22%3E%3Cpath%20d%3D%22M7.447%2046.996V26.773A19.818%2019.818%200%200127.241%206.979h18.315V0H27.241A26.8%2026.8%200%2000.468%2026.773v20.223z%22%2F%3E%3Cpath%20d%3D%22M169.144%20128.637l.06%2020.22a19.81%2019.81%200%2001-19.73%2019.854l-18.311.057.021%206.979%2018.314-.057a26.8%2026.8%200%200026.688-26.854l-.06-20.22z%22%2F%3E%3Cpath%20d%3D%22M129.567%207.627l20.22.121a19.815%2019.815%200%200119.67%2019.915l-.11%2018.314%206.979.043.11-18.314A26.8%2026.8%200%2000149.83.77L129.61.646z%22%2F%3E%3Cpath%20d%3D%22M46.932%20168.818l-20.22-.06a19.82%2019.82%200%2001-19.734-19.854l.057-18.314-6.979-.021-.057%2018.315a26.805%2026.805%200%200026.691%2026.854l20.223.06z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.cv {
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
  background-image: url(img/common/cta-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transition: opacity 0.3s;
}
.cv:hover {
  opacity: 0.8;
}
.cv {
  margin-bottom: 2em;
}
@media only screen and (max-width: 767px) {
  .cv {
    background-image: url(img/common/cta-bg-sp.jpg);
  }
}
.cv > a {
  display: block;
  text-align: center;
}
.cv img {
  width: 100%;
}

.cv02 {
  max-width: 2000px;
  margin: 20px auto 0;
}
@media only screen and (min-width: 768px), print {
  .cv02 {
    margin-top: 150px;
    width: 100%;
    display: flex;
  }
}
.cv02__link {
  transition: opacity 0.3s;
}
.cv02__link:hover {
  opacity: 0.8;
}
.cv02__link {
  display: block;
}
@media only screen and (min-width: 768px), print {
  .cv02__link:last-of-type {
    border-left: 1px solid #eee;
  }
}
@media only screen and (max-width: 767px) {
  .cv02__link:last-of-type {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 768px), print {
  .cv02__link {
    width: 50%;
  }
}
.cv02 img {
  width: 100%;
}

.description {
  position: relative;
  background-color: #f4f4f4;
}
.description:before {
  font-family: bree;
  content: "Our Services";
  color: #f4f4f4;
  position: absolute;
  font-size: 80px;
  top: -70px;
  left: 0;
  line-height: 1;
  z-index: 90;
  height: 1em;
  width: 6em;
}
@media only screen and (max-width: 767px) {
  .description:before {
    display: none;
  }
}
.description:after {
  font-family: bree;
  content: "Our Services";
  color: #f4f4f4;
  position: absolute;
  font-size: 80px;
  bottom: -70px;
  right: 0;
  line-height: 1;
  transform: rotate(180deg);
  z-index: 90;
}
@media only screen and (max-width: 767px) {
  .description:after {
    display: none;
  }
}
.description__body {
  position: relative;
  width: 1166px;
  margin: 200px auto;
  padding: 80px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .description__body {
    width: 100%;
    margin: 0;
    padding: 20px;
    flex-direction: column;
  }
}
.description__title {
  min-width: 500px;
}
@media only screen and (max-width: 767px) {
  .description__title {
    min-width: 100%;
  }
}
.description__list {
  position: absolute;
  top: auto;
  right: 0;
  z-index: 100;
}
@media only screen and (max-width: 767px) {
  .description__list {
    position: relative;
  }
}
.description__list-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 56px;
}
@media only screen and (max-width: 767px) {
  .description__list-box {
    margin: 30px 0 0 0;
    flex-direction: column;
  }
}
.description__list-box:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .description__list-box:first-child {
    margin: 30px 0 0 0;
  }
}
.description__list-img {
  transition: opacity 0.3s;
}
.description__list-img:hover {
  opacity: 0.8;
}
.description__list-body {
  width: 500px;
  margin-left: 20px;
}
@media only screen and (max-width: 767px) {
  .description__list-body {
    width: 100%;
    margin: 20px 0 0 0;
  }
}
.description__list-title {
  font-size: 18px;
}
@media only screen and (min-width: 768px), print {
  .description__list-title {
    font-size: 24px;
    line-height: 1.2;
  }
}
.description__list-title > a {
  color: inherit;
  text-decoration: none;
}
.description__list-title > a:hover {
  text-decoration: underline;
}
.description__list-text {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .description__list-text {
    margin: 10px 0 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .description__img {
    width: 70%;
    display: block;
    margin: 0 auto;
  }
}

#ez-toc-container {
  padding: 32px 32px 32px 32px;
  margin: 64px 0 32px;
  background-color: #f8f8f8 !important;
}
#ez-toc-container .ez-toc-title-container .ez-toc-title {
  color: #636363;
}
#ez-toc-container .ez-toc-title-container .ez-toc-title-toggle {
  display: none;
}
#ez-toc-container nav .ez-toc-list {
  margin: 32px 16px 0px 16px;
}
#ez-toc-container nav .ez-toc-list li a {
  display: inline-block;
  margin-bottom: 16px;
  font-size: 16px;
  color: #333;
}
#ez-toc-container nav .ez-toc-list li a:hover {
  color: #333;
}

.faq {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 25px;
  border-radius: 10px;
  border: 1px solid #1d1d1d;
}
.faq.is-active {
  border-color: #3ca2a1;
}
.faq__head {
  position: relative;
  cursor: pointer;
}
.faq__head:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 25px;
  width: 35px;
  height: 35px;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2235%22%20height%3D%2235%22%20viewBox%3D%220%200%2035%2035%22%3E%3Cpath%20d%3D%22M17.5%2C0A17.5%2C17.5%2C0%2C1%2C1%2C0%2C17.5%2C17.508%2C17.508%2C0%2C0%2C1%2C17.5%2C0Zm0%2C1.522A15.978%2C15.978%2C0%2C1%2C1%2C1.522%2C17.5%2C15.986%2C15.986%2C0%2C0%2C1%2C17.5%2C1.522Zm.761%2C15.217h9.13v1.522h-9.13v9.13H16.739v-9.13H7.609V16.739h9.13V7.609h1.522Z%22%20fill%3D%22%2353c4c1%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
}
.faq__head.is-active:before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2235%22%20height%3D%2235%22%20viewBox%3D%220%200%2035%2035%22%3E%3Cpath%20d%3D%22M17.5%2C0A17.5%2C17.5%2C0%2C1%2C1%2C0%2C17.5%2C17.508%2C17.508%2C0%2C0%2C1%2C17.5%2C0Zm0%2C1.522A15.978%2C15.978%2C0%2C1%2C1%2C1.522%2C17.5%2C15.986%2C15.986%2C0%2C0%2C1%2C17.5%2C1.522Zm9.891%2C15.217v1.522H7.609V16.739Z%22%20fill%3D%22%2353c4c1%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
}
.faq__q {
  padding: 10px 50px 10px 54px;
  font-size: 16px;
  font-weight: bold;
  text-indent: -39px;
}
.faq__q:before {
  content: "Q.";
  margin-right: 10px;
  font-size: 24px;
  letter-spacing: 3.6px;
}
.faq__body {
  display: none;
}
.faq__a {
  padding: 0 15px 25px 54px;
  font-size: 14px;
  text-indent: -39px;
}
.faq__a:before {
  content: "A.";
  margin-right: 10px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 3.6px;
  color: #53c4c1;
}
.faq__link {
  color: #faac42;
  text-decoration: underline;
  display: block;
}

.feature-b {
  position: relative;
}
@media only screen and (min-width: 768px), print {
  .feature-b {
    display: flex;
    align-items: center;
  }
}
@media only screen and (min-width: 768px) and (min-width: 768px), print {
  .feature-b {
    margin-top: -100px;
    padding-top: 100px;
  }
}
@media only screen and (min-width: 768px), print {
  .feature-b.-rev {
    flex-direction: row-reverse;
  }
}
@media only screen and (max-width: 767px) {
  .feature-b {
    padding-top: 35px;
  }
}
@media only screen and (min-width: 768px), print {
  .feature-b + .feature-b {
    margin-top: -100px;
    padding-top: 200px;
  }
}
@media only screen and (max-width: 767px) {
  .feature-b + .feature-b {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 768px), print {
  .feature-b__img {
    flex: none;
  }
}
.feature-b__img img {
  max-width: 550px;
}
@media only screen and (max-width: 1225px) {
  .feature-b__img img {
    max-width: 50vw;
  }
}
@media only screen and (max-width: 767px) {
  .feature-b__img img {
    max-width: 100%;
    width: 100%;
  }
}
.feature-b__maplink {
  background: #1d1d1d;
  color: #fff !important;
  display: inline-block;
  line-height: 1;
  padding: 0.25em 0.5em 0.5em;
  transition: 0.2s;
  border-radius: 0.25em;
  margin-left: 0.5em;
}
@media only screen and (max-width: 767px) {
  .feature-b__maplink {
    font-size: 0.8em;
  }
}
.feature-b__maplink:after {
  width: 0.65em;
  height: 0.65em;
  display: inline-block;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2211%22%20viewBox%3D%220%200%2019%2011%22%3E%3Cg%3E%3Cg%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M18.385%201.562l-.86-.782-8.398%208.36L.728.78l-.86.782%209.259%209.257z%22%2F%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M18.385%201.562l-.86-.782-8.398%208.36L.728.78l-.86.782%209.259%209.257z%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%/100% auto;
  margin-left: 0.25em;
}
.feature-b__maplink:hover {
  text-decoration: none !important;
  opacity: 0.85;
}
.feature-b__map {
  position: relative;
}
@media only screen and (min-width: 768px), print {
  .feature-b__map {
    flex: none;
    width: 770px;
  }
}
@media only screen and (max-width: 1225px) {
  .feature-b__map {
    width: 50vw;
  }
}
@media only screen and (max-width: 767px) {
  .feature-b__map {
    width: 100%;
  }
}
.feature-b__map:after {
  content: "";
  display: block;
  padding-bottom: 66%;
}
.feature-b__map > iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}
.feature-b__content {
  position: relative;
  flex: auto;
  background-color: #f4f4f4;
  margin-left: calc(583px - 50vw);
  padding-left: calc(50vw - 583px);
  padding-right: 100px;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 1225px) {
  .feature-b__content {
    margin-left: -30px;
    padding: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .feature-b__content {
    margin-left: 0;
    padding: 20px 15px;
  }
}
.feature-b.-rev .feature-b__content {
  margin-left: 0;
  margin-right: calc(583px - 50vw);
  padding-left: 100px;
  padding-right: calc(50vw - 583px);
}
@media only screen and (max-width: 1225px) {
  .feature-b.-rev .feature-b__content {
    margin-right: -30px;
    padding: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .feature-b.-rev .feature-b__content {
    margin-right: 0;
    padding: 20px 15px;
  }
}
.feature-b__decoration {
  position: absolute;
  top: -70px;
  left: 0;
  color: #f4f4f4;
  font-size: 80px;
  line-height: 1;
  font-family: bree, sans-serif;
  letter-spacing: 4px;
}
@media only screen and (max-width: 767px) {
  .feature-b__decoration {
    top: -35px;
    font-size: 40px;
    letter-spacing: 2px;
  }
}
.feature-b.-rev .feature-b__decoration {
  left: auto;
  right: 0;
}
.feature-b__name {
  font-family: bree, sans-serif;
  font-size: 30px;
  line-height: 1.5;
  letter-spacing: 3px;
}
@media only screen and (max-width: 767px) {
  .feature-b__name {
    font-size: 20px;
    letter-spacing: 1px;
  }
}
.feature-b__name > small {
  display: inline-block;
  font-size: 14px;
  letter-spacing: 0;
}
.feature-b__text {
  margin-top: 40px;
  font-size: 14px;
}
@media only screen and (max-width: 767px) {
  .feature-b__text {
    margin-top: 20px;
  }
}
.feature-b__text p + p {
  margin-top: 26px;
}
.feature-b__btn {
  margin-top: 50px;
}

.feature {
  position: relative;
  margin-top: 90px;
  padding-top: 50px;
}
@media only screen and (min-width: 768px), print {
  .feature {
    max-width: 1250px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 1225px) {
  .feature {
    padding-top: 300px;
  }
}
@media only screen and (max-width: 767px) {
  .feature {
    margin-top: 40px;
    margin-left: 15px;
    margin-right: 15px;
    padding-top: 0;
    box-shadow: 0 0 20px 2px rgba(0, 0, 0, 0.1);
  }
}
@media only screen and (min-width: 768px), print {
  .feature__img {
    position: absolute;
    top: 0;
    left: 0;
  }
  .feature__img > img {
    position: relative;
    max-width: 640px;
  }
}
@media only screen and (max-width: 767px) {
  .feature__img > img {
    width: 100%;
  }
}
.feature__content {
  position: relative;
  padding: 40px 50px 60px;
  background-color: #fff;
}
@media only screen and (min-width: 768px), print {
  .feature__content {
    display: flex;
    flex-direction: column;
    width: 500px;
    min-height: 450px;
    margin-left: auto;
    margin-right: calc(50% - 500px);
    box-shadow: 0 0 20px 2px rgba(0, 0, 0, 0.1);
  }
}
@media only screen and (max-width: 1225px) {
  .feature__content {
    margin-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .feature__content {
    padding: 20px;
  }
}
.feature__title-main {
  color: #1d1d1d;
  font-size: 24px;
  letter-spacing: 4px;
  line-height: 1.3;
  font-family: Lato, sans-serif;
  font-weight: bold;
  text-align: center;
}
.feature__title-sub {
  margin-top: 10px;
  margin-bottom: 45px;
  color: #1d1d1d;
  font-size: 14px;
  line-height: 1.3;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .feature__title-sub {
    margin-bottom: 20px;
  }
}
.feature__text {
  margin-top: 30px;
  letter-spacing: 0.5px;
}
@media only screen and (max-width: 767px) {
  .feature__text {
    margin-top: 20px;
  }
}
.feature__btn {
  margin-top: auto;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .feature__btn {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 768px), print {
  .feature.-rev .feature__img {
    left: auto;
    right: 0;
  }
  .feature.-rev .feature__content {
    margin-left: calc(50% - 500px);
    margin-right: auto;
  }
}
@media only screen and (max-width: 1225px) {
  .feature.-rev .feature__content {
    margin-left: 0;
  }
}
@media only screen and (min-width: 768px), print {
  .feature.-top {
    margin-top: 70px;
  }
  .feature.-top .feature__img:before {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    bottom: -20px;
    left: -20px;
    border: 5px solid #baefed;
  }
  .feature.-top.-rev {
    padding-top: 0;
  }
  .feature.-top.-rev .feature__img {
    top: 100px;
  }
  .feature.-top.-rev .feature__img:before {
    top: -20px;
    right: -20px;
    bottom: 20px;
    left: 20px;
  }
}
@media only screen and (min-width: 768px), print {
  .feature.-top.-rev {
    padding-top: 0;
    padding-bottom: 50px;
  }
  .feature.-top.-rev .feature__img {
    top: 100px;
  }
  .feature.-top.-rev .feature__img:before {
    top: -20px;
    right: -20px;
    bottom: 20px;
    left: 20px;
  }
}
@media only screen and (max-width: 1225px) {
  .feature.-top.-rev {
    padding-bottom: 250px;
  }
  .feature.-top.-rev .feature__img {
    top: 300px;
  }
}
@media only screen and (max-width: 767px) {
  .feature.-top.-rev {
    padding-bottom: 0;
  }
}
.feature.-message {
  padding-top: 130px;
}
@media only screen and (min-width: 1226px), print {
  .feature.-message {
    min-height: 550px;
  }
}
@media only screen and (max-width: 1225px) {
  .feature.-message {
    padding-top: 500px;
  }
}
.feature.-message .feature__content {
  min-height: 0;
  padding: 30px 20px;
  border: 2px solid #53c4c1;
  box-shadow: none;
}
.feature.-message .feature__label {
  margin-bottom: 25px;
  color: #53c4c1;
  font-size: 16px;
  letter-spacing: 2px;
}
.feature.-message .feature__name {
  color: #baefed;
  font-size: 50px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 25px;
}
@media only screen and (min-width: 768px), print {
  .feature.-message .feature__name {
    position: absolute;
    top: -90px;
    left: 0;
    width: 700px;
  }
}
@media only screen and (max-width: 767px) {
  .feature.-message .feature__name {
    margin-bottom: 10px;
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: 4px;
    text-align: center;
  }
}
.feature.-message .feature__title-main {
  text-align: left;
}
.feature.-message .feature__text {
  margin-top: 25px;
}

@media only screen and (min-width: 768px), print {
  .features {
    display: flex;
    flex-wrap: wrap;
  }
}
.features__article {
  background-repeat: no-repeat;
  background-position: 50% 0;
}
@media only screen and (min-width: 768px), print {
  .features__article {
    background-size: 160px auto;
    width: 25%;
    padding: 0 1em;
  }
}
@media only screen and (max-width: 767px) {
  .features__article {
    background-size: 110px auto;
    margin-bottom: 2em;
  }
}
.features__h3 {
  font-size: 1.25em;
  line-height: 1.5;
  margin-bottom: 5em;
  margin-top: 1em;
}
@media only screen and (min-width: 768px), print {
  .features__h3 {
    font-size: 1.5em;
    text-align: center;
    margin-bottom: 4em;
    height: 3em;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4em;
    margin-top: 0.5em;
  }
}

.fee {
  margin-top: 150px;
}
@media only screen and (max-width: 767px) {
  .fee {
    margin-top: 50px;
  }
}
.fee__title {
  text-align: center;
  font-size: 24px;
}
.fee__body {
  width: 1166px;
  margin: 62px auto 0;
}
@media only screen and (max-width: 1225px) {
  .fee__body {
    width: auto;
    margin: 0;
  }
}
@media only screen and (max-width: 1225px) {
  .fee__read {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .fee__read {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media only screen and (min-width: 768px), print {
  .fee__read {
    text-align: center;
  }
}
.fee__row {
  margin-top: 63px;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .fee__row {
    margin: 0;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 767px) {
  .fee__col {
    width: 49%;
    margin-top: 20px;
  }
}
.fee__price {
  color: #ef5f41;
  font-size: 24px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .fee__price {
    font-size: 16px;
  }
}
.fee__img {
  margin-top: 52px;
}
@media only screen and (max-width: 767px) {
  .fee__img {
    margin: 10px 0 0;
  }
}
.fee__category {
  margin-top: 10px;
}
.fee__category li {
  display: inline-block;
  background-color: #1d1d1d;
  color: #fff;
  padding: 0 10px;
  font-size: 12px;
}
.fee__text {
  margin-top: 10px;
}

.flow-card {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1226px), print {
  .flow-card.-left .flow-card__heading {
    align-self: flex-end;
  }
  .flow-card.-left .flow-card__number {
    right: 0;
  }
}
.flow-card__heading {
  align-self: flex-start;
  padding: 10px 50px 16px;
  border-radius: 31px;
  border: 1px solid #6dddda;
  font-size: 24px;
  letter-spacing: 4px;
  text-indent: 4px;
  line-height: 1;
  font-weight: bold;
  font-style: italic;
  color: #6dddda;
  text-align: center;
}
.flow-card__heading > span {
  margin-left: 10px;
  font-size: 34px;
}
.flow-card.-line .flow-card__heading {
  border-color: #25c300;
  color: #25c300;
}
.flow-card__img {
  margin-top: 20px;
}
@media only screen and (min-width: 1226px), print {
  .flow-card__text-wrapper {
    height: 0;
  }
}
.flow-card__text {
  margin-top: 15px;
  line-height: 2;
  letter-spacing: 0.7px;
}
.flow-card__sub-heading {
  font-size: 20px;
  font-weight: bold;
}

.flow {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  .flow {
    width: 100%;
    margin: 50px 0 0;
    padding: 20px;
  }
}
.flow__card {
  display: flex;
  align-items: center;
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  .flow__card {
    flex-direction: column;
    margin-top: 30px;
  }
}
.flow__card figure {
  margin: 0 51px 0 0;
}
@media only screen and (max-width: 767px) {
  .flow__card figure {
    margin: 0;
  }
}
.flow__card:first-child {
  margin-top: 58px;
}
@media only screen and (max-width: 767px) {
  .flow__card:first-child {
    margin-top: 30px;
  }
}
.flow__card:nth-child(odd) {
  flex-direction: row-reverse;
}
@media only screen and (max-width: 767px) {
  .flow__card:nth-child(odd) {
    flex-direction: column;
  }
}
.flow__card:nth-child(odd) figure {
  margin: 0 0 0 51px;
}
@media only screen and (max-width: 767px) {
  .flow__card:nth-child(odd) figure {
    margin: 0;
  }
}
.flow__text h3 {
  font-size: 20px;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .flow__text h3 {
    margin-top: 20px;
    font-size: 18px;
  }
}
.flow__text p {
  margin-top: 26px;
}
@media only screen and (max-width: 767px) {
  .flow__text p {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .flow__text {
    padding: 1em 0;
    width: 100%;
  }
}
@media only screen and (min-width: 768px), print {
  .flow__img {
    flex: none;
    width: 48.89%;
  }
}
.flow__content {
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
  background-image: linear-gradient(90deg, #fff 25%, transparent 25%), linear-gradient(90deg, transparent 75%, #fff 75%), linear-gradient(#fff 19%, #f4f4f4 19%, #f4f4f4 23%, #fff 23%, #fff 69%, #f4f4f4 69%, #f4f4f4 73%, #fff 73%);
  background-size: 100% 50%, 100% 50%, 100% 100%;
  background-position: top, bottom, top;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 1225px) {
  .flow__content {
    background-image: linear-gradient(90deg, #fff 25%, transparent 25%), linear-gradient(90deg, transparent 75%, #fff 75%), linear-gradient(#fff 12%, #f4f4f4 12%, #f4f4f4 15%, #fff 15%, #fff 46%, #f4f4f4 46%, #f4f4f4 49%, #fff 49%, #fff 79%, #f4f4f4 79%, #f4f4f4 82%, #fff 82%);
    background-size: 100% 30%, 100% 30%, 100% 100%;
  }
}
@media only screen and (max-width: 767px) {
  .flow__content {
    background-image: none;
    position: relative;
  }
  .flow__content:before {
    background: #f4f4f4;
    width: 20%;
    height: calc(100% - 170px);
    content: "";
    position: absolute;
    top: 100px;
    left: 0;
    right: 0;
    display: block;
    margin: auto;
  }
}

.form {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.form__heading {
  font-size: 30px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .form__heading {
    font-size: 20px;
  }
}
.form__step {
  margin-top: 60px;
  margin-bottom: 50px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .form__step {
    margin-top: 30px;
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 768px), print {
  .form .inner_content > p {
    font-size: 18px;
    letter-spacing: 1px;
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .form .inner_content > p {
    font-size: 16px;
  }
}
.form .inner_content .header_rmesg {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .form .inner_content .header_rmesg {
    margin-bottom: 30px;
  }
}
.form .inner_content fieldset {
  margin: 0;
  padding: 0;
  border-style: none;
}
.form .inner_content dl {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .form .inner_content dl {
    margin-bottom: 30px;
  }
}
.form .inner_content .title, .form .inner_content h2 {
  font-size: 18px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  .form .inner_content .title, .form .inner_content h2 {
    font-size: 16px;
  }
}
.form .inner_content .title .need, .form .inner_content h2 .need {
  color: #ec4943;
}
.form .inner_content .title .caution, .form .inner_content h2 .caution {
  display: block;
  font-size: 16px;
}
@media only screen and (max-width: 767px) {
  .form .inner_content .title .caution, .form .inner_content h2 .caution {
    font-size: 12px;
  }
}
.form .inner_content input[type=text], .form .inner_content textarea {
  display: block;
  width: 100%;
  padding: 16px 30px;
  border-radius: 10px;
  border: 1px solid #D8D8D8;
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
@media only screen and (max-width: 767px) {
  .form .inner_content input[type=text], .form .inner_content textarea {
    padding: 10px 20px;
  }
}
.form .inner_content textarea {
  height: 300px;
}
.form .inner_content input[type=radio], .form .inner_content input[type=checkbox] {
  margin-right: 5px;
}
.form .inner_content .phone input {
  display: inline;
  width: 100px;
}
@media only screen and (max-width: 767px) {
  .form .inner_content .phone input {
    width: 80px;
  }
}
.form .inner_content .phone li {
  display: inline-block;
}
.form .inner_content select {
  display: block;
  font-size: 14px;
  font-family: inherit;
  font-weight: normal;
  color: inherit;
  line-height: inherit;
  padding: 16px 30px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #D8D8D8;
  border-radius: 10px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2211%22%20viewBox%3D%220%200%2019%2011%22%3E%3Cpath%20d%3D%22M0%2C6.575%2C2.24%2C4.5%2C9.5%2C11.349%2C16.76%2C4.5%2C19%2C6.575%2C9.5%2C15.5Z%22%20transform%3D%22translate(0%20-4.5)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to left, #D8D8D8, #D8D8D8 80px, #fff 80px);
  background-repeat: no-repeat, repeat;
  background-position: right 30px top 50%, right;
  background-size: 19px 11px, 100%;
  outline: none;
}
.form .inner_content select::-ms-expand {
  display: none;
}
.form .inner_content select option {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .form .inner_content select {
    padding: 10px 20px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2211%22%20viewBox%3D%220%200%2019%2011%22%3E%3Cpath%20d%3D%22M0%2C6.575%2C2.24%2C4.5%2C9.5%2C11.349%2C16.76%2C4.5%2C19%2C6.575%2C9.5%2C15.5Z%22%20transform%3D%22translate(0%20-4.5)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to left, #D8D8D8, #D8D8D8 60px, #fff 60px);
    background-position: right 20px top 50%, right;
  }
}
.form .inner_content #contact-privacy {
  height: 400px;
  padding: 40px 30px;
  border: 2px solid #d8d8d8;
  border-radius: 5px;
  overflow: auto;
}
@media only screen and (max-width: 767px) {
  .form .inner_content #contact-privacy {
    padding: 20px;
  }
}
.form .inner_content .submit_emesg {
  margin-top: 50px;
  text-align: center;
  color: #ec4943;
}
.form .inner_content .submit_emesg > a {
  color: inherit;
}
.form .inner_content a {
  color: #419cf7;
}
.form__unit {
  border-style: none;
}
.form__unit:nth-child(n+2) {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .form__unit:nth-child(n+2) {
    margin-top: 30px;
  }
}
.form__subunit {
  border-style: none;
}
.form__subunit:nth-child(n+3) {
  margin-top: 20px;
}
.form__label {
  padding: 0;
  font-size: 16px;
  font-weight: bold;
}
.form__required {
  font-size: 18px;
  color: #F76B87;
}
.form__control {
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  .form__control {
    margin-top: 5px;
  }
}
.form__control a {
  color: #00a3e1;
  font-weight: bold;
  text-decoration: none;
}
.form__control a:hover {
  text-decoration: underline;
}
.form__btn {
  margin-top: 50px;
  text-align: center;
}
.form__textbox {
  width: 100%;
  padding: 16px 30px;
  border-radius: 10px;
  border: 1px solid #1d1d1d;
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
@media only screen and (max-width: 767px) {
  .form__textbox {
    padding: 10px 20px;
  }
}
.form__textbox.-ml {
  height: 250px;
}
.form__select {
  display: block;
  font-size: 14px;
  font-family: inherit;
  font-weight: normal;
  color: inherit;
  line-height: inherit;
  padding: 16px 30px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #1d1d1d;
  border-radius: 10px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2211%22%20viewBox%3D%220%200%2019%2011%22%3E%3Cpath%20d%3D%22M0%2C6.575%2C2.24%2C4.5%2C9.5%2C11.349%2C16.76%2C4.5%2C19%2C6.575%2C9.5%2C15.5Z%22%20transform%3D%22translate(0%20-4.5)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to left, #53c4c1, #53c4c1 80px, #fff 80px);
  background-repeat: no-repeat, repeat;
  background-position: right 30px top 50%, right;
  background-size: 19px 11px, 100%;
  outline: none;
}
.form__select::-ms-expand {
  display: none;
}
.form__select option {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .form__select {
    padding: 10px 20px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2211%22%20viewBox%3D%220%200%2019%2011%22%3E%3Cpath%20d%3D%22M0%2C6.575%2C2.24%2C4.5%2C9.5%2C11.349%2C16.76%2C4.5%2C19%2C6.575%2C9.5%2C15.5Z%22%20transform%3D%22translate(0%20-4.5)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to left, #53c4c1, #53c4c1 60px, #fff 60px);
    background-position: right 20px top 50%, right;
  }
}
.form__file {
  position: relative;
}
.form__file-info {
  display: flex;
  align-items: center;
  border-radius: 10px;
  border: 1px solid #1d1d1d;
  overflow: hidden;
}
.form__file-name {
  flex: auto;
  padding: 0 30px;
  color: #afafaf;
}
@media only screen and (max-width: 767px) {
  .form__file-name {
    padding: 10px 20px;
  }
}
.form__file.is-active .form__file-name {
  color: #1d1d1d;
}
.form__file-label {
  flex: none;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 30px;
  background-color: #53c4c1;
  color: #ffffff;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .form__file-label {
    padding: 10px 20px;
  }
}
.form__file-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

.handbook {
  width: 952px;
  max-width: 100%;
  margin: 0 auto 2em;
  position: relative;
}
@media only screen and (min-width: 768px), print {
  .handbook {
    margin-bottom: 4em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.handbook__img {
  position: relative;
  z-index: 1;
  margin: auto;
  display: block;
  width: 30%;
}
@media only screen and (min-width: 768px), print {
  .handbook__img {
    right: 113px;
    width: 107.67px;
    position: absolute;
    top: 0;
    bottom: 0;
  }
}
.handbook__txt {
  position: relative;
  z-index: 1;
  line-height: 1.6;
}
@media only screen and (min-width: 768px), print {
  .handbook__txt {
    font-size: 1.286em;
  }
}
@media only screen and (max-width: 767px) {
  .handbook__txt {
    padding-top: 1em;
  }
}
.handbook:before {
  background: #f4f4f4;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  z-index: 0;
}
@media only screen and (min-width: 768px), print {
  .handbook:before {
    height: 77px;
  }
}

.heading {
  margin-bottom: 20px;
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 3px;
}
@media only screen and (max-width: 767px) {
  .heading {
    font-size: 20px;
    letter-spacing: 1px;
  }
}

.hero {
  position: relative;
  height: 800px;
  background-image: url(img/top/mv.jpg);
  background-position: right;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 767px) {
  .hero {
    height: auto;
    background-size: cover;
    background-position: right;
  }
}
.hero__text {
  text-align: center;
}
@media only screen and (min-width: 768px), print {
  .hero__text {
    position: absolute;
    top: 180px;
    left: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .hero__text {
    padding: 70px 20px 40px;
  }
  .hero__text img {
    max-width: 350px;
  }
}
.hero__text-3 {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .hero__text-3 {
    margin-top: 10px;
  }
}
.hero__btn {
  position: absolute;
  bottom: -40px;
  left: 0;
  right: 0;
  width: 40px;
  height: 75px;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  .hero__btn {
    display: none;
  }
}

.history {
  position: relative;
  max-width: 1346px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1219px) {
  .history {
    padding-left: 35px;
    padding-right: 20px;
  }
}
@media screen and (max-width: 449px) {
  .history {
    padding-left: 20px;
    padding-right: 10px;
  }
}
.history:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background-color: #faac42;
}
@media screen and (max-width: 1219px) {
  .history:before {
    left: 35px;
  }
}
@media screen and (max-width: 449px) {
  .history:before {
    left: 20px;
  }
}
.history__item {
  position: relative;
  width: 50%;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media screen and (max-width: 1219px) {
  .history__item {
    width: auto;
  }
}
.history__item:before {
  content: "";
  position: absolute;
  top: 40px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #faac42;
}
@media screen and (max-width: 449px) {
  .history__item:before {
    top: 45px;
    width: 20px;
    height: 20px;
  }
}
.history__item.-left {
  padding-right: 40px;
  text-align: right;
}
@media screen and (max-width: 1219px) {
  .history__item.-left {
    padding-left: 40px;
    padding-right: 0;
    text-align: left;
  }
}
@media screen and (max-width: 449px) {
  .history__item.-left {
    padding-left: 25px;
  }
}
.history__item.-left:before {
  right: -16px;
}
@media screen and (max-width: 1219px) {
  .history__item.-left:before {
    left: -15px;
    right: auto;
  }
}
@media screen and (max-width: 449px) {
  .history__item.-left:before {
    left: -10px;
  }
}
.history__item.-right {
  margin-left: 50%;
  padding-left: 40px;
}
@media screen and (max-width: 1219px) {
  .history__item.-right {
    margin-left: 0;
  }
}
@media screen and (max-width: 449px) {
  .history__item.-right {
    padding-left: 25px;
  }
}
.history__item.-right:before {
  left: -15px;
}
@media screen and (max-width: 449px) {
  .history__item.-right:before {
    left: -10px;
  }
}
.history__date {
  position: relative;
  z-index: 2;
  font-size: 20px;
  letter-spacing: 1px;
  font-weight: bold;
}
.history__text {
  position: relative;
  z-index: 2;
  font-size: 18px;
  letter-spacing: 1px;
}
@media screen and (max-width: 449px) {
  .history__text {
    font-size: 16px;
  }
}
.history__year {
  position: absolute;
  top: 0;
  z-index: 1;
  font-size: 80px;
  letter-spacing: 4px;
  line-height: 1;
  font-family: bree, sans-serif;
  color: #f4f4f4;
}
.history__item.-left .history__year {
  right: 215px;
}
@media screen and (max-width: 1219px) {
  .history__item.-left .history__year {
    left: 215px;
    right: 0;
  }
}
@media screen and (max-width: 449px) {
  .history__item.-left .history__year {
    left: 160px;
  }
}
.history__item.-right .history__year {
  left: 215px;
}
@media screen and (max-width: 449px) {
  .history__item.-right .history__year {
    left: 160px;
  }
}
.history__img {
  position: absolute;
}
@media screen and (max-width: 1219px) {
  .history__img {
    position: static;
    margin-top: 10px;
  }
}
.history__img.-no-01 {
  top: -90px;
  right: 0;
  width: 253px;
}
.history__img.-no-02 {
  top: 0;
  left: 30px;
}
.history__img.-no-03 {
  top: -5px;
  left: 400px;
}
.history__img.-no-04 {
  top: 40px;
  right: 340px;
}
.history__img.-no-05 {
  top: 110px;
  left: 100px;
  width: 300px;
  max-width: 100%;
}
.history__img.-no-06 {
  top: -150px;
  right: 185px;
}
.history__img.-no-07 {
  top: -20px;
  right: -530px;
}
.history__img.-no-08 {
  top: 110px;
  left: 70px;
}
.history__img.-no-09 {
  top: 130px;
  left: 125px;
  width: 300px;
}

@media only screen and (max-width: 767px) {
  .how-cs {
    font-size: 0.9em;
  }
}
.how-cs__pdf {
  transition: opacity 0.3s;
}
.how-cs__pdf:hover {
  opacity: 0.8;
}
.how-cs__pdf {
  display: block;
  margin: 3em auto;
  margin-inline: auto;
  color: #1d1d1d;
}
@media only screen and (min-width: 768px), print {
  .how-cs__pdf {
    font-size: 1.125em;
    text-align: center;
    max-width: 750px;
  }
}
@media only screen and (min-width: 768px), print {
  .how-cs__grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.5em;
  }
}
.how-cs__grid img {
  border: #e1e1e1 1px solid;
}
.how-cs__h3 {
  font-size: 1.85em;
}
.how-cs__h4 {
  font-size: 1.25em;
}
.how-cs__link {
  transition: opacity 0.3s;
}
.how-cs__link:hover {
  opacity: 0.8;
}
.how-cs__link {
  color: #faac42;
}

.how-dx {
  margin: 0em 0 0.5em;
  padding: 1.5em 3em;
  background: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .how-dx {
    font-size: 0.9em;
  }
}
.how-dx__caution {
  font-size: 0.85em;
  margin-bottom: 2em;
  padding-left: 1em;
}
@media only screen and (min-width: 768px), print {
  .how-dx__caution {
    text-align: right;
  }
}

.howiframe {
  max-width: 100%;
  aspect-ratio: 1920/1080;
  height: 100%;
  margin-inline: auto;
  display: block;
  max-width: calc(100% - 2em);
}
@media only screen and (min-width: 768px), print {
  .howiframe {
    width: 600px;
  }
}

.hrpdf__h2 {
  text-align: center !important;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .indexcta {
    padding-top: 2em;
    padding-bottom: 2em;
  }
}
.indexcta__grid {
  display: flex;
  gap: 2em;
  justify-content: center;
}
@media only screen and (min-width: 768px), print {
  .indexcta__grid {
    justify-content: stretch;
  }
}
@media only screen and (max-width: 767px) {
  .indexcta__grid {
    flex-wrap: wrap;
  }
}
.indexcta__grid a {
  transition: opacity 0.3s;
}
.indexcta__grid a:hover {
  opacity: 0.8;
}
.indexcta__grid a {
  display: block;
}
@media only screen and (min-width: 768px), print {
  .indexcta__grid a {
    position: relative;
    max-height: 348px;
    overflow: hidden;
  }
}
.indexcta__grid a.-seminar {
  border: 1px solid #e1e1e1;
}
.indexcta__grid a.-seminar img {
  display: block;
}
.indexcta__grid a.-book {
  width: 100%;
  display: block;
  background-repeat: no-repeat;
  background-position: 50%;
}
@media only screen and (min-width: 768px), print {
  .indexcta__grid a.-book {
    background-size: cover;
    height: calc(100% - 2.5em);
  }
}
@media only screen and (max-width: 767px) {
  .indexcta__grid a.-book {
    height: 100%;
    aspect-ratio: 545/210;
    background-size: 100% auto;
  }
}
@media only screen and (max-width: 767px) {
  .indexcta__box {
    max-width: 400px;
    width: 90%;
    margin: 1em auto;
  }
}
@media only screen and (min-width: 768px), print {
  .indexcta__box {
    width: 50%;
  }
}
.indexcta__en {
  margin-right: 0.5em;
}
.indexcta__txt {
  font-weight: bold;
  text-align: center;
  margin-bottom: 0.25em;
}
@media only screen and (min-width: 768px), print {
  .indexcta__txt {
    font-size: 1.25em;
  }
}
.indexcta__sh {
  margin: 0 0.5em;
}

.items {
  padding: 100px 40px;
}
@media only screen and (max-width: 767px) {
  .items {
    padding: 50px 10px;
  }
}
.items.-side {
  padding: 0;
}
.items__btn {
  margin-top: 80px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .items__btn {
    margin-top: 40px;
  }
}

.item {
  position: relative;
  padding: 20px 0;
  border-bottom: 1px solid #4a4a4a;
  color: #1d1d1d;
  text-decoration: none;
  transition: opacity 0.3s;
}
.item:hover {
  opacity: 0.8;
}
.item:first-child {
  border-top: 1px solid #4a4a4a;
}
.item.-media {
  display: flex;
}
.item.-lg {
  padding: 40px 0;
}
@media only screen and (max-width: 767px) {
  .item.-lg {
    padding: 20px 0;
  }
}
.item__num {
  flex: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 25px;
  margin-right: 10px;
  font-size: 24px;
  font-weight: bold;
  color: #bababa;
}
.item__num.-white {
  background-color: #fff;
}
.item__num.-gray {
  background-color: #f4f4f4;
}
.item__num.-no-1, .item__num.-no-2, .item__num.-no-3 {
  color: #fff;
}
.item__num.-no-1 {
  background-color: #dbb400;
}
.item__num.-no-2 {
  background-color: #c9caca;
}
.item__num.-no-3 {
  background-color: #c9ae5d;
}
.item__content {
  flex: auto;
}
.item__info {
  display: flex;
  align-items: center;
}
.item__date {
  margin-left: auto;
  font-family: bree, sans-serif;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 2px;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .item__date {
    font-size: 16px;
  }
}
.item__img {
  flex: none;
  margin-right: 20px;
}
.item.-lg .item__img {
  margin-right: 40px;
}
@media only screen and (max-width: 767px) {
  .item.-lg .item__img {
    margin-right: 20px;
    width: 100px;
  }
}
.item__img.-sm {
  width: 130px;
}
.item__img.-sm a {
  display: block;
  max-height: 100px;
  overflow: hidden;
}
.item__title {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 1px;
}
.item__title > a {
  color: inherit;
  text-decoration: none;
}
.item__title > a:hover {
  text-decoration: underline;
}
.item__text {
  margin-top: 15px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .item__text {
    font-size: 12px;
    -webkit-line-clamp: 3;
  }
}
.item__text > a {
  color: inherit;
  text-decoration: none;
}
.item__text > a:hover {
  text-decoration: underline;
}
.item__thumb {
  width: 130px;
  display: block;
}
@media only screen and (min-width: 768px), print {
  .item__thumb {
    width: 100px;
  }
}

.keyvisual {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .keyvisual {
    justify-content: flex-start;
    flex-direction: column;
  }
}
.keyvisual__breadcrumb {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: calc(100% - 1076px);
  min-width: 20%;
}
@media only screen and (max-width: 767px) {
  .keyvisual__breadcrumb {
    width: 100%;
    order: 2;
  }
}
.keyvisual__breadcrumb:before {
  content: "";
  flex: 0.5;
  display: block;
  width: 100%;
  background-color: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .keyvisual__breadcrumb:before {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .keyvisual__breadcrumb ul {
    padding: 0.5em 1rem !important;
  }
}
.keyvisual__title {
  position: relative;
  max-width: 80%;
}
@media only screen and (max-width: 767px) {
  .keyvisual__title {
    max-width: none;
  }
}
.keyvisual__title-main, .keyvisual__text h1 {
  color: #fff;
  font-size: 40px;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .keyvisual__title-main, .keyvisual__text h1 {
    font-size: 20px;
  }
}
.keyvisual__text {
  width: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.keyvisual__text span {
  font-size: 30px;
}
@media only screen and (max-width: 767px) {
  .keyvisual__text span {
    font-size: 16px;
    line-height: 1;
  }
}
@media only screen and (min-width: 768px), print {
  .keyvisual__img {
    aspect-ratio: 1076/200;
    overflow: hidden;
  }
}
.keyvisual__img img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .keyvisual__img img {
    height: 160px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.keyvisuals {
  display: flex;
  justify-content: space-between;
}
.keyvisuals.-lp-utilization {
  justify-content: flex-end;
}
@media only screen and (max-width: 767px) {
  .keyvisuals {
    justify-content: flex-start;
    flex-direction: column;
  }
}
.keyvisuals.-template {
  position: relative;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 768px), print {
  .keyvisuals.-template:before {
    background: #fff;
    position: absolute;
    top: -100px;
    right: 0;
    content: "";
    display: block;
    height: 200px;
    width: calc(100% - 18em - 50px);
  }
}
.keyvisuals__breadcrumb {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}
@media only screen and (min-width: 768px), print {
  .keyvisuals__breadcrumb {
    width: calc(18em + 50px);
  }
}
@media only screen and (max-width: 767px) {
  .keyvisuals__breadcrumb {
    order: 2;
  }
}
.keyvisuals__breadcrumb:before {
  content: "";
  display: block;
  width: 100%;
  height: 110px;
  background-color: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .keyvisuals__breadcrumb:before {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .keyvisuals__breadcrumb ul {
    padding: 0.5em 1rem !important;
  }
}
.keyvisuals__title {
  position: relative;
  background-position: 50%;
  background-size: cover;
  height: 160px;
}
.keyvisuals__title.-videotips {
  background-color: #2e3236;
  background-size: contain;
  background-repeat: no-repeat;
  height: auto;
}
.keyvisuals__title.-lp-utilization {
  height: auto;
  padding-bottom: 1em;
}
@media only screen and (min-width: 768px), print {
  .keyvisuals__title.-lp-utilization {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
    height: auto;
    width: 100%;
    background-position: 50% 10%;
  }
}
@media only screen and (min-width: 1226px), print {
  .keyvisuals__title.-lp-utilization {
    height: auto !important;
    width: calc(100% - 10em);
    padding: 4em 0 3em;
  }
}
@media only screen and (max-width: 767px) {
  .keyvisuals__title.-lp-utilization {
    padding-bottom: 2em;
  }
}
.keyvisuals__title.-lp-utilization:before {
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  z-index: 0;
}
@media only screen and (min-width: 768px), print {
  .keyvisuals__title {
    height: 200px;
    width: calc(100% - 18em - 50px);
  }
}
.keyvisuals__text {
  width: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%);
}
.keyvisuals__text span {
  font-size: 30px;
}
@media only screen and (max-width: 767px) {
  .keyvisuals__text span {
    font-size: 16px;
    line-height: 1;
  }
}
.keyvisuals__text h1, .keyvisuals__text__h1 {
  color: #fff;
  font-size: 40px;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .keyvisuals__text h1, .keyvisuals__text__h1 {
    font-size: 20px;
  }
}
.keyvisuals__videotipsbnr {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  transition: 0.2s;
  background: #fff;
  opacity: 0;
}
.keyvisuals__videotipsbnr:hover {
  opacity: 0.15;
}

.kv {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  padding-top: 40px;
}
@media screen and (max-width: 999px) {
  .kv {
    display: block;
    padding-top: 20px;
    margin-bottom: 0;
  }
}
.kv__catchcopy {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 0 40px;
}
@media screen and (max-width: 999px) {
  .kv__catchcopy {
    padding: 0 1em;
  }
}
.kv__movie {
  position: relative;
  width: calc(100% - 366px);
  margin-top: -50px;
}
@media screen and (max-width: 999px) {
  .kv__movie {
    width: auto;
    margin-top: -10px;
    margin-left: 1.5em;
  }
}
.kv__movie:after {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}
.kv__movie > iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}
.kv__content {
  display: flex;
  width: 366px;
  flex-direction: column;
  text-align: center;
}
@media screen and (max-width: 999px) {
  .kv__content {
    width: calc(100% - 1.5em);
    margin-top: -100px;
    padding-top: 170px;
    padding-bottom: 75px;
    background-color: #f4f4f4;
  }
}
.kv__content-upper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  margin-top: 3em;
  margin-bottom: -3em;
}
@media screen and (max-width: 1224px) {
  .kv__content-upper {
    flex: auto;
    margin-top: 0;
  }
}
@media screen and (max-width: 999px) {
  .kv__content-upper {
    padding-left: 1.5em;
  }
}
.kv__heading {
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 8px;
  text-indent: 8px;
  line-height: 1.2;
}
@media screen and (max-width: 1224px) {
  .kv__heading {
    font-size: 28px;
  }
}
@media screen and (max-width: 999px) {
  .kv__heading {
    font-size: 28px;
    text-indent: 5px;
    letter-spacing: 5px;
  }
}
.kv__text {
  margin-top: 1.5em;
  padding-left: 3px;
  font-size: 16px;
  letter-spacing: 3px;
  font-feature-settings: "palt";
}
@media screen and (max-width: 999px) {
  .kv__text {
    font-size: 14px;
  }
}
.kv__textb {
  font-size: 1.5em;
}
.kv__content-bottom {
  flex: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f4f4f4;
}
@media screen and (max-width: 999px) {
  .kv__content-bottom {
    margin-top: 50px;
    padding-left: 1.5em;
  }
}
.kv__sym {
  padding-left: 0.25em;
  padding-right: 0.25em;
  display: block;
  margin: 0 auto;
}
@media screen and (max-width: 1224px) {
  .kv__sym {
    max-width: 60%;
  }
}
@media only screen and (max-width: 767px) {
  .kv__sym {
    margin-bottom: 1em;
  }
}
.kv__caution {
  text-align: left;
  width: 100%;
  font-size: 0.75em;
  padding: 0.5em 2em;
}

.kv2 {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .kv2 {
    justify-content: flex-start;
    flex-direction: column;
  }
}
.kv2__breadcrumb {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: calc(100% - 1076px);
  min-width: 20%;
}
@media only screen and (max-width: 767px) {
  .kv2__breadcrumb {
    width: 100%;
    order: 2;
  }
}
.kv2__breadcrumb:before {
  content: "";
  flex: 0.5;
  display: block;
  width: 100%;
  background-color: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .kv2__breadcrumb:before {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .kv2__breadcrumb ul {
    padding: 0.5em 1rem !important;
  }
}
.kv2__title {
  position: relative;
  max-width: 80%;
}
@media only screen and (max-width: 767px) {
  .kv2__title {
    max-width: none;
  }
}
.kv2__title-main, .kv2__text h1 {
  color: #fff;
  font-size: 40px;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .kv2__title-main, .kv2__text h1 {
    font-size: 20px;
  }
}
.kv2__text {
  width: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.kv2__text span {
  font-size: 30px;
}
@media only screen and (max-width: 767px) {
  .kv2__text span {
    font-size: 16px;
    line-height: 1;
  }
}
.kv2__imgbg {
  overflow: hidden;
  background-color: #999;
  background-position: 50%;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 767px) {
  .kv2__imgbg {
    height: 160px;
    background-size: auto 100%;
  }
}
@media only screen and (min-width: 768px), print {
  .kv2__imgbg {
    height: 200px;
    aspect-ratio: 1076/200;
    background-size: cover;
  }
}
@media only screen and (min-width: 768px), print {
  .kv2__img {
    aspect-ratio: 1076/200;
    overflow: hidden;
  }
}
.kv2__img img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .kv2__img img {
    height: 160px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media only screen and (min-width: 768px), print {
  .lead {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
}
.lead__heading {
  margin-bottom: 40px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.lead p {
  margin-top: 30px;
  font-size: 14px;
  letter-spacing: 1px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .lead p {
    text-align: left;
  }
}
.lead p + .lead__heading {
  margin-top: 50px;
}

.link {
  display: inline-block;
  position: relative;
  text-decoration: none;
  color: #EC4943;
}
.link:after {
  display: inline-block;
  width: 16px;
  height: 14px;
  margin-left: 10px;
  vertical-align: -1px;
  background-repeat: no-repeat;
}
.link.-arrow:after {
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2214%22%20viewBox%3D%220%200%2016%2014%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22linear-gradient%22%20x1%3D%220.09%22%20x2%3D%221%22%20y2%3D%221%22%20gradientUnits%3D%22objectBoundingBox%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23faac3b%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e31745%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M8.683%2C1l-1.9%2C1.8L10.9%2C6.73H0V9.27H10.9L6.785%2C13.2l1.9%2C1.8L16%2C8Z%22%20transform%3D%22translate(0%20-1)%22%20fill%3D%22url(%23linear-gradient)%22%2F%3E%3C%2Fsvg%3E");
}

.list-a {
  display: flex;
  flex-wrap: wrap;
  padding: 15px 52px;
  border: 3px solid #6dddda;
}
@media only screen and (max-width: 767px) {
  .list-a {
    padding: 10px 5px;
  }
}
.list-a > li {
  padding: 5px 8px;
  font-size: 16px;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  .list-a > li {
    padding: 5px 10px;
    font-size: 14px;
  }
}
.list-a > li:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-right: 5px;
  background-color: #6dddda;
  vertical-align: -2px;
}

.liver-wp-bnr {
  border: 1px #ddd solid;
  display: block;
  margin: 1em auto 2em;
  transition: 0.2s;
  -webkit-transition: 0.2s;
  max-width: 394px;
}
@media only screen and (min-width: 768px), print {
  .liver-wp-bnr {
    width: 736px;
    max-width: 95%;
  }
}
.liver-wp-bnr:hover {
  opacity: 0.85;
}
.liver-wp-bnr img {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
}

@media only screen and (max-width: 767px) {
  .lp-remote {
    margin-top: 20px;
  }
}
.lp-remote img {
  width: 100%;
}
.lp-remote__iframe {
  max-width: 100%;
}
@media only screen and (min-width: 768px), print {
  .lp-remote__iframe {
    margin: auto;
    top: 2em;
    left: 0;
    right: 0;
    position: absolute;
    top: 100px;
    width: 800px;
  }
}
@media only screen and (max-width: 767px) {
  .lp-remote__iframe {
    width: 100%;
    margin-top: 0;
  }
  .lp-remote__iframe iframe {
    width: calc(100% - 2rem) !important;
    margin-left: 1rem !important;
    display: block !important;
  }
}
@media only screen and (max-width: 767px) {
  .lp-remote__iframe {
    margin-top: -60vw;
  }
}
@media only screen and (min-width: 768px), print {
  .lp-remote__btnwrap {
    margin-top: 160px;
  }
}
@media only screen and (max-width: 1125px) {
  .lp-remote__btnwrap {
    display: none;
  }
}
.lp-remote__btnwrap.-tab {
  display: none;
}
@media only screen and (max-width: 1125px) {
  .lp-remote__btnwrap.-tab {
    margin-top: 0;
    display: block;
    padding: 2rem 1.5rem;
  }
}
.lp-remote__btn {
  position: relative;
  width: 400px;
  max-width: 100%;
  display: block;
  margin: 10vw auto;
}
@media only screen and (min-width: 768px), print {
  .lp-remote__btn {
    margin: 2em auto;
  }
}
.lp-remote__btn:hover {
  top: 1px;
  left: 1px;
}
.lp-remote__foot {
  padding: 2em;
  background: #020264;
  color: #fff;
}
@media only screen and (min-width: 768px), print {
  .lp-remote__foot {
    font-size: 1.5em;
  }
}
.lp-remote__tel {
  color: #fff;
}
@media only screen and (min-width: 768px), print {
  .lp-remote__tel {
    text-decoration: none;
    pointer-events: none;
  }
}

.lp-somejob__logo {
  width: 200px;
  padding: 1em;
  display: block;
}
@media only screen and (max-width: 767px) {
  .lp-somejob__logo {
    margin: 0 auto;
  }
}
@media only screen and (min-width: 768px), print {
  .lp-somejob__logo {
    width: 260px;
  }
}
.lp-somejob__img {
  display: block;
  margin: 0 auto;
}
@media only screen and (min-width: 768px), print {
  .lp-somejob__img {
    max-width: 1100px;
  }
  .lp-somejob__img.-img2 {
    max-width: 1080px;
  }
}
.lp-somejob__cta {
  line-height: 1;
  padding: 1em 2em;
  box-shadow: 0em 0.25em 0.25em rgba(0, 0, 0, 0.2);
  background: #f43535;
  color: #fff;
  font-weight: bold;
  border: 3px solid #fff;
  text-decoration: none;
  text-align: center;
  display: inline-block;
  max-width: 100%;
  border-radius: 3em;
  transition: 0.2s;
  font-size: 1.125em;
}
@media only screen and (min-width: 768px), print {
  .lp-somejob__cta {
    font-size: 1.65em;
  }
}
.lp-somejob__cta.-head {
  margin-top: 0em;
  margin-right: 1em;
  font-size: 1.25em;
  margin-bottom: 0;
  box-shadow: 0em 0.125em 0.125em rgba(0, 0, 0, 0.2);
}
@media only screen and (max-width: 767px) {
  .lp-somejob__cta.-head {
    display: none;
  }
}
.lp-somejob__cta:hover {
  opacity: 0.85;
}
.lp-somejob__copyright {
  padding: 1em;
  background: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .lp-somejob__copyright {
    padding-bottom: 6em;
  }
}
.lp-somejob__h1 {
  letter-spacing: 0.05em;
  font-size: 1.25em;
  text-align: center;
  font-weight: bold;
  margin-bottom: 2em;
  line-height: 1.4;
}
@media only screen and (min-width: 768px), print {
  .lp-somejob__h1 {
    padding-top: 100px;
    margin-top: 1em;
    font-size: 1.75em;
  }
}
.lp-somejob__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (min-width: 768px), print {
  .lp-somejob__head {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
  }
}
.lp-somejob__fixed {
  background: #fff;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .lp-somejob__fixed {
    position: fixed;
    width: 100%;
    bottom: -8em;
    left: 0;
    padding: 1.5em 0;
    animation: lp-somejob-cta 0.2s 1.5s both;
  }
}
@media only screen and (min-width: 768px), print {
  .lp-somejob__fixed {
    padding: 2em 0;
    margin: 0 auto 10em;
  }
}

@keyframes lp-somejob-cta {
  100% {
    bottom: 0;
  }
}
.lp-utilization-cp {
  background: rgba(252, 205, 141, 0.5);
  padding: 1em;
}
@media only screen and (min-width: 768px), print {
  .lp-utilization-cp {
    padding: 4em 0 3em;
    margin-top: -2em;
  }
}
.lp-utilization-cp__foot .lp-utilization-cp {
  position: relative;
  margin-top: 3em;
  margin-bottom: 5em;
}
@media only screen and (min-width: 768px), print {
  .lp-utilization-cp__foot .lp-utilization-cp {
    padding: 3em 0 3em;
  }
}
.lp-utilization-cp__foot .lp-utilization-cp:after {
  width: 5em;
  height: 3em;
  display: block;
  margin: auto;
  position: absolute;
  bottom: -4em;
  left: 0;
  right: 0;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2269%22%20height%3D%2218%22%20viewBox%3D%220%200%2069%2018%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_5657%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%205657%22%20transform%3D%22translate(-1.107%20-18.718)%22%3E%20%3Cpath%20id%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2_9%22%20data-name%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2%209%22%20d%3D%22M34.5%2C0%2C69%2C18H0Z%22%20transform%3D%22translate(70.107%2036.718)%20rotate(180)%22%20fill%3D%22%23ec4943%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%/100% auto;
}
.lp-utilization-cp__txt {
  font-size: 1.125em;
}
@media only screen and (min-width: 768px), print {
  .lp-utilization-cp__txt {
    text-align: center;
    font-size: 1.25em;
  }
}
.lp-utilization-cp__txt-big {
  font-size: 1.25em;
  font-weight: 600;
}
.lp-utilization-cp__txt.-red {
  color: #ec3342;
}
.lp-utilization-cp__date {
  font-size: 1.5em;
  font-weight: 600;
  line-height: 1.4;
}
.lp-utilization-cp__foot .lp-utilization-cp__date {
  text-align: center;
  padding-left: 0;
}
.lp-utilization-cp__date-srash {
  font-size: 0.75em;
  margin: 0 0.5em;
}
@media only screen and (min-width: 1226px), print {
  .lp-utilization-cp__date {
    padding-left: 4em;
  }
}
@media only screen and (min-width: 768px), print {
  .lp-utilization-cp__date {
    font-size: 1.85em;
  }
}

@media only screen and (min-width: 1226px), print {
  .lp-utilization__btn {
    margin-left: 60px;
  }
}
.lp-utilization__caption {
  width: 100%;
  position: relative;
  margin-bottom: 0em;
  text-align: center;
  padding-top: 2em;
}
@media only screen and (max-width: 1225px) {
  .lp-utilization__caption {
    margin-bottom: 1em;
    padding-top: 1em;
  }
}
.lp-utilization__keytxt {
  position: relative;
  width: 100%;
  padding: 0;
}
@media only screen and (min-width: 768px), print {
  .lp-utilization__keytxt {
    width: 45%;
    padding: 2em 1em 0em;
  }
}
@media only screen and (max-width: 1225px) {
  .lp-utilization__keytxt {
    padding-top: 0;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .lp-utilization__keytxt {
    width: 100%;
  }
}
.lp-utilization__ttlen {
  font-size: 1.25em;
}
@media only screen and (max-width: 767px) {
  .lp-utilization__ttlen {
    text-align: center;
    display: block;
  }
}
.lp-utilization__h1 {
  color: #fff;
  font-size: 1.25em;
  font-weight: 500;
  line-height: 1.6;
}
.lp-utilization__h1-big {
  font-size: 1.25em;
  font-weight: 600;
  text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.5);
}
@media only screen and (min-width: 1226px), print {
  .lp-utilization__h1 {
    font-size: 1.65em;
  }
}
@media only screen and (max-width: 767px) {
  .lp-utilization__h1 {
    text-align: center;
  }
}
.lp-utilization__iframe {
  position: relative;
  width: 100%;
  margin-top: 1em;
}
@media only screen and (min-width: 768px), print {
  .lp-utilization__iframe {
    width: 80%;
  }
}
@media only screen and (min-width: 1226px), print {
  .lp-utilization__iframe {
    width: 45%;
    margin-bottom: 1em;
  }
}
.lp-utilization__iframe > iframe {
  width: 100%;
  height: 50vw;
  max-height: 300px;
  max-width: 589px;
  display: block;
  margin: 0 auto;
}
@media only screen and (min-width: 1226px), print {
  .lp-utilization__iframe > iframe {
    height: 22vw;
  }
}
.lp-utilization__copywrap {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1225px) {
  .lp-utilization__copywrap {
    justify-content: center;
  }
}
.lp-utilization__copy {
  line-height: 1.4;
  text-align: center;
  color: #fff;
  background: rgba(212, 45, 59, 0.5);
  border-radius: 50%;
  width: 11em;
  height: 11em;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 1em;
  font-size: 0.8em;
  margin-bottom: 2em;
  margin-top: 1em;
}
@media only screen and (max-width: 767px) {
  .lp-utilization__copy {
    font-size: 0.6em;
    margin-left: 0.5em;
  }
}
.lp-utilization__copytxt-big {
  font-size: 1.25em;
  font-weight: 600;
}

.main {
  padding-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  .main {
    padding-bottom: 40px;
  }
}
.main.-top {
  padding-bottom: 0;
}

@media only screen and (min-width: 768px), print {
  .media {
    display: flex;
  }
  .media.-rev {
    flex-direction: row-reverse;
  }
  .media.-rev .media__img {
    margin-left: 40px;
    margin-right: 0;
  }
  .media.-center {
    align-items: center;
  }
}
.media + .media {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .media + .media {
    margin-top: 40px;
  }
}

@media only screen and (min-width: 768px), print {
  .media__img {
    flex: none;
    margin-right: 40px;
    max-width: 50%;
  }
}
.media.-column .media__img {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .media__img {
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .media__content {
    margin-top: 20px;
  }
}

.media__heading {
  font-size: 24px;
  font-weight: bold;
  color: #53c4c1;
  text-align: center;
}

.media__name {
  margin-bottom: 50px;
}

.media__text:nth-child(n+2) {
  margin-top: 25px;
}
.media__text + .media__heading {
  margin-top: 40px;
}

.member-slider {
  position: relative;
}
.member-slider__list {
  margin-top: 20px;
  margin-bottom: 0;
  padding-bottom: 90px;
}
.member-slider__list .slick-arrow {
  top: auto;
  bottom: 0px;
  width: 40px;
  height: 40px;
  background-repeat: no-repeat;
  transform: none;
  z-index: 99;
}
@media only screen and (max-width: 767px) {
  .member-slider__list .slick-arrow {
    bottom: -85px;
  }
}
.member-slider__list .slick-arrow:before {
  content: none;
}
.member-slider__list .slick-arrow.slick-disabled {
  opacity: 0.2;
}
.member-slider__list .slick-prev {
  left: calc(50vw - 583px);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%3E%3Cg%20fill%3D%22%23fff%22%20stroke%3D%22%231d1d1d%22%20stroke-width%3D%221%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2220%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2219.5%22%20fill%3D%22none%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M12.555%2C107.5l.9.893-4.015%2C3.975H21v1.263H9.442l4.015%2C3.975-.9.893L7%2C113Z%22%20transform%3D%22translate(6%20-92.5)%22%2F%3E%3C%2Fsvg%3E");
}
@media only screen and (max-width: 767px) {
  .member-slider__list .slick-prev {
    left: 15px;
  }
}
.member-slider__list .slick-next {
  right: calc(50vw - 583px);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%3E%3Cg%20fill%3D%22%23fff%22%20stroke%3D%22%231d1d1d%22%20stroke-width%3D%221%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2220%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2219.5%22%20fill%3D%22none%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M15.445%2C107.5l-.9.893%2C4.015%2C3.975H7v1.263H18.558l-4.015%2C3.975.9.893L21%2C113Z%22%20transform%3D%22translate(6%20-92.5)%22%2F%3E%3C%2Fsvg%3E");
}
@media only screen and (max-width: 767px) {
  .member-slider__list .slick-next {
    right: 15px;
  }
}
.member-slider__list .slick-slide {
  outline: none;
}
.member-slider__list .slick-dots {
  bottom: 15px;
}
.member-slider__list .slick-dots li button {
  width: 30px;
  height: 30px;
}
.member-slider__list .slick-dots li button:before {
  content: "";
  top: 10px;
  left: 10px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: currentColor;
}
.member-slider__item {
  margin-right: 40px;
}
@media only screen and (max-width: 767px) {
  .member-slider__item {
    margin-right: 30px;
  }
}
.member-slider__item .card-d {
  max-width: 350px;
}

.movieworks {
  position: relative;
}
.movieworks:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 390px);
  right: 0;
  bottom: 0;
  height: 85%;
  background-color: #f4f4f4;
}
@media only screen and (min-width: 768px), print {
  .movieworks:before {
    height: 800px;
  }
}

.mv {
  height: 344px;
  margin-bottom: 50px;
  padding-top: 20px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 767px) {
  .mv {
    height: 250px;
  }
}

.mv__title {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  .mv__title {
    margin-top: 50px;
  }
}

.news-list__item + .news-list__item {
  margin-top: 25px;
}

.news {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .news {
    flex-wrap: wrap;
  }
}

.news__date {
  flex: none;
  display: block;
  width: 120px;
  font-weight: bold;
  font-style: italic;
}

.news__category {
  flex: none;
  display: block;
  width: 110px;
  border: 1px solid #6dddda;
  color: #6dddda;
  font-size: 12px;
  letter-spacing: 1px;
  text-align: center;
}

.news__title {
  display: block;
  margin-left: 30px;
  color: inherit;
  text-decoration: none;
}
.news__title:hover {
  text-decoration: underline;
}
.news__title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media only screen and (max-width: 767px) {
  .news__title {
    width: 100%;
    margin-top: 5px;
    margin-left: 0;
  }
}

.offer__body {
  background: url(./img/service/japan_bg.png) center center/auto 100% no-repeat;
  height: 491px;
  margin: 0 auto;
  padding: 150px 0 0;
}
@media only screen and (min-width: 768px), print {
  .offer__body {
    margin-bottom: -90px;
  }
}
@media only screen and (max-width: 767px) {
  .offer__body {
    width: 100%;
    height: auto;
    padding: 60px 20px 0;
  }
}

.page-nav {
  width: 570px;
  margin: 100px auto 0;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .page-nav {
    width: 100%;
    margin: 50px 0 0;
    font-size: 12px;
  }
}
.page-nav li a {
  text-decoration: none;
  color: #1D1D1D;
}
.page-nav li a:after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 14px;
  margin-left: 10px;
  vertical-align: -1px;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2210%22%20height%3D%2212%22%20viewBox%3D%220%200%2010%2012%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3ClinearGradient%20id%3D%22linear-gradient%22%20x1%3D%220.09%22%20x2%3D%221%22%20y2%3D%221%22%20gradientUnits%3D%22objectBoundingBox%22%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23faac3b%22%2F%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e31745%22%2F%3E%0A%20%20%20%20%3C%2FlinearGradient%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20id%3D%22iconmonstr-arrow-20%22%20d%3D%22M6.512%2C1%2C5.089%2C2.285%2C8.177%2C5.093H0V6.907H8.177L5.089%2C9.715%2C6.512%2C11%2C12%2C6Z%22%20transform%3D%22translate(11)%20rotate(90)%22%20fill%3D%22url(%23linear-gradient)%22%2F%3E%0A%3C%2Fsvg%3E%0A");
}
@media only screen and (max-width: 767px) {
  .page-nav li {
    text-align: center;
  }
}

.pagination {
  position: relative;
  margin-top: 50px;
}
.pagination__prev, .pagination__next {
  position: absolute;
  top: 0;
}
.pagination__prev.-disabled, .pagination__next.-disabled {
  opacity: 0.2;
}
.pagination__prev {
  left: 0;
}
.pagination__next {
  right: 0;
}
.pagination > .page-numbers {
  display: flex;
  justify-content: center;
}
.pagination > .page-numbers > li:nth-child(n+2) {
  margin-left: 25px;
}
@media only screen and (max-width: 767px) {
  .pagination > .page-numbers > li:nth-child(n+2) {
    margin-left: 5px;
  }
}
.pagination > .page-numbers > li > .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #1d1d1d;
  font-size: 24px;
  letter-spacing: 2px;
  text-indent: 2px;
  color: inherit;
  text-decoration: none;
  font-family: bree, sans-serif;
}
@media only screen and (max-width: 767px) {
  .pagination > .page-numbers > li > .page-numbers {
    width: 28px;
    height: 28px;
    padding: 0;
    font-size: 14px;
  }
}
.pagination > .page-numbers > li > .page-numbers.current {
  background-color: #1d1d1d;
  color: #fff;
}
.pagination > .page-numbers > li > .page-numbers.dots {
  border-style: none;
}

.patent__h3 {
  margin-top: 1em;
  font-size: 1.125em;
  margin-bottom: 0.25em;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 768px), print {
  .patent__h3 {
    font-size: 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  .patent__bg {
    overflow: auto;
    white-space: nowrap;
  }
  .patent__bg:-webkit-scrollbar {
    height: 0.25em;
  }
  .patent__bg:-webkit-scrollbar-track {
    background: #f1f1f1;
  }
  .patent__bg:-webkit-scrollbar-thumb {
    background: #bcbcbc;
  }
}
.patent__t {
  -webkit-text-size-adjust: 100%;
  width: 100%;
  border-collapse: collapse;
}
@media only screen and (max-width: 767px) {
  .patent__t {
    font-size: 0.875em;
  }
}
.patent__t tbody {
  -webkit-text-size-adjust: 100%;
}
.patent__t th,
.patent__t td {
  border: 1px solid #ccc;
  padding: 1em;
  line-height: 1.6;
  font-size: 1em;
  pointer-events: none;
  text-decoration: none;
}
@media only screen and (min-width: 768px), print {
  .patent__t th.-txt,
  .patent__t td.-txt {
    font-weight: 500;
  }
}
.patent__t th {
  background: #f4f4f4;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .patent__t th {
    text-align: left;
  }
}
@media only screen and (min-width: 768px), print {
  .patent__t th.-txt {
    width: 55%;
  }
  .patent__t th.-trad {
    width: 55%;
  }
  .patent__t th.-date, .patent__t th.-no {
    text-align: center;
  }
}
.patent__t td {
  background: #fff;
}
.patent__t img {
  display: block;
  margin: 0.5em 0 0;
  width: 140px;
}
@media only screen and (min-width: 768px), print {
  .patent__t img {
    width: 200px;
    margin: 0.5em auto 0;
  }
}
@media only screen and (max-width: 767px) {
  .patent__spttl {
    margin-top: -30px !important;
    padding-top: 60px !important;
  }
}

.pctel {
  font-size: 12px;
  padding: 1em;
}
@media only screen and (min-width: 768px), print {
  .pctel {
    font-size: 14px;
  }
}
.pctel__wrap {
  transition: 0.3s;
  -webkit-transition: 0.3s;
  position: absolute;
  right: -350px;
  z-index: 1000;
  top: 60px;
}
@media only screen and (min-width: 768px), print {
  .pctel__wrap {
    top: 75px;
  }
}
.pctel__wrap.-active {
  right: 1em;
}
.pctel__text-1 {
  font-size: 1em;
  letter-spacing: 2px;
  text-indent: 2px;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .pctel__text-1 {
    padding-top: 1.5em;
  }
}
.pctel__text-2 {
  margin-top: 0.25em;
  margin-bottom: 1em;
  font-size: 1em;
  letter-spacing: 2px;
  text-indent: 2px;
  line-height: 1.5;
}
.pctel__text-2 > span {
  font-weight: 600;
  font-family: bree, sans-serif;
}
.pctel__unit {
  position: relative;
  padding: 0.5em;
  border: 1px solid #1d1d1d;
}
.pctel__unit:not(:last-of-type) {
  margin-bottom: 1.25em;
}
.pctel__branch-en {
  position: absolute;
  top: 4em;
  left: -1em;
  width: 5em;
  text-align: center;
  font-family: bree, sans-serif;
  font-size: 1.125em;
  line-height: 1;
  transform-origin: 0 0;
  transform: rotate(-90deg);
}
.pctel__branch {
  position: absolute;
  top: -10px;
  left: 0;
  right: 0;
  width: 103px;
  margin: auto;
  font-size: 1.125em;
  line-height: 1;
  background-color: #f4f4f4;
}
.pctel__tel {
  font-size: 1.25em;
  color: #ef5f41;
  text-indent: 3px;
  letter-spacing: 3px;
  font-weight: 600;
  font-family: bree, sans-serif;
}
.pctel__link {
  color: #ef5f41;
  text-decoration: none;
}
@media only screen and (min-width: 768px), print {
  .pctel__link {
    pointer-events: none;
  }
}
.pctel__rel {
  position: relative;
}
.pctel__close {
  display: block;
  position: absolute;
  top: 1em;
  right: 1.25em;
}

.post-links-simple {
  display: flex;
}
.post-links-simple__item.-prev > a {
  padding: 10px 0 10px 25px;
}
.post-links-simple__item.-prev > a:before {
  left: 0;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22M9.953%200v5.354L5.329%2010l4.624%204.646V20L0%2010z%22%20fill%3D%22%2353c4c1%22%2F%3E%3C%2Fsvg%3E");
}
.post-links-simple__item.-next {
  margin-left: auto;
}
.post-links-simple__item.-next > a {
  padding: 10px 25px 10px 0;
}
.post-links-simple__item.-next > a:before {
  right: 0;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22M0%200v5.354L4.624%2010%200%2014.646V20l9.953-10z%22%20fill%3D%22%2353c4c1%22%2F%3E%3C%2Fsvg%3E");
}
.post-links-simple__item > a {
  display: block;
  position: relative;
  color: #53c4c1;
  font-weight: bold;
  font-style: italic;
  text-decoration: none;
}
.post-links-simple__item > a:hover {
  text-decoration: underline;
}
.post-links-simple__item > a:before {
  content: "";
  position: absolute;
  top: 12px;
  width: 10px;
  height: 20px;
}

.post-links {
  display: flex;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .post-links {
    display: block;
  }
}
@media only screen and (min-width: 768px), print {
  .post-links:before {
    content: "";
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 50%;
    width: 1px;
    background-color: #eee;
  }
}
.post-links__item {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .post-links__item {
    width: auto;
  }
  .post-links__item.-next {
    margin-top: 20px;
  }
}

.post-link {
  display: flex;
  align-items: center;
  position: relative;
  color: inherit;
  text-decoration: none;
}
.post-link:hover {
  text-decoration: underline;
}
.post-link.-prev {
  padding-left: 20px;
  padding-right: 40px;
}
@media only screen and (max-width: 767px) {
  .post-link.-prev {
    padding-right: 0;
  }
}
.post-link.-next {
  flex-direction: row-reverse;
  padding-left: 40px;
  padding-right: 20px;
}
@media only screen and (max-width: 767px) {
  .post-link.-next {
    padding-left: 0;
  }
}
.post-link__title {
  display: block;
}
.post-link.-prev .post-link__title {
  margin-left: 10px;
}
.post-link.-next .post-link__title {
  margin-right: 10px;
}
.post-link__prev, .post-link__next {
  position: absolute;
  color: #53c4c1;
  letter-spacing: 2px;
  font-style: italic;
}
.post-link__prev > svg, .post-link__next > svg {
  vertical-align: -4px;
}
.post-link__prev {
  left: 0;
}
.post-link__prev > svg {
  margin-right: 15px;
}
.post-link__next {
  right: 0;
}
.post-link__next > svg {
  margin-left: 15px;
}

.pricing {
  margin: 150px auto 0;
  width: 972px;
}
@media only screen and (max-width: 767px) {
  .pricing {
    width: 100%;
    margin: 50px 0 0;
  }
}
.pricing__title {
  font-size: 24px;
  text-align: center;
}
.pricing__title.-en {
  font-size: 44px;
  color: #f4f4f4;
  text-align: center;
  margin-top: 20px;
  position: relative;
  line-height: 1;
  top: 5px;
}
@media only screen and (max-width: 767px) {
  .pricing__title.-en {
    margin-top: 0;
  }
}
.pricing__body {
  border: 4px solid #f4f4f4;
}
.pricing__inbox {
  background-color: #f4f4f4;
  margin: 10px;
  padding: 70px;
}
@media only screen and (max-width: 767px) {
  .pricing__inbox {
    padding: 20px;
  }
}
.pricing__inbox-inner {
  width: 640px;
  padding: 30px 50px;
  margin: 48px auto 0;
  border: 4px solid #fff;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .pricing__inbox-inner {
    margin: 15px auto 0;
    width: 100%;
    padding: 10px;
  }
}
.pricing__list {
  font-size: 20px;
  color: #ef5f41;
  text-align: center;
}
.pricing__list.-studio {
  text-align: left;
}
@media only screen and (min-width: 768px), print {
  .pricing__list.-studio {
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media only screen and (min-width: 768px), print {
  .pricing__list.-studio li {
    display: flex;
  }
}
@media only screen and (max-width: 767px) {
  .pricing__list {
    font-size: 16px;
  }
}
.pricing__list li {
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .pricing__list li {
    border-bottom: 1px solid #fff;
    padding: 0.25em 0;
  }
}
@media only screen and (min-width: 768px), print {
  .pricing__cap {
    width: 20em;
  }
}
@media only screen and (max-width: 767px) {
  .pricing__cap {
    color: #1d1d1d;
  }
}
.pricing__price {
  text-align: center;
}
@media only screen and (min-width: 768px), print {
  .pricing__price {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .pricing__price {
    margin-bottom: 0.25em;
  }
  .pricing__price.-spcenter {
    text-align: center;
  }
}
.pricing__tax {
  font-size: 0.8em;
}
.pricing__notes {
  margin-top: 1em;
}
@media only screen and (min-width: 768px), print {
  .pricing__notes {
    margin-top: 25px;
    text-align: center;
  }
}
.pricing__contttl {
  margin-top: 1em;
}
@media only screen and (min-width: 768px), print {
  .pricing__contttl {
    font-size: 1.125em;
    text-align: center;
  }
}
.pricing__conttxt {
  margin-bottom: 1em;
}
@media only screen and (max-width: 767px) {
  .pricing__conttxt {
    padding-left: 1em;
    line-height: 1.6;
  }
}
@media only screen and (min-width: 768px), print {
  .pricing__conttxt {
    text-align: center;
  }
}

.privacy p {
  margin-bottom: 0.5em;
}
.privacy p + h2 {
  margin-top: 1.5em;
}
.privacy__h2 {
  font-weight: 500;
}
@media only screen and (min-width: 768px), print {
  .privacy__h2 {
    font-size: 1.25em;
  }
}

.qa {
  width: 1166px;
  margin: 157px auto 0;
  max-width: 100%;
}
@media only screen and (max-width: 767px) {
  .qa {
    width: 100%;
    margin: 50px 0 0;
  }
}
.qa__box.is-color {
  background: rgba(0, 135, 255, 0.05);
}
.qa.-narrow {
  margin: 0 auto;
  max-width: 1000px;
}
.qa__title {
  font-size: 24px;
  text-align: center;
}
.qa__body {
  margin-top: 86px;
  border-bottom: 1px solid #bfbfbf;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .qa__body {
    margin-top: 20px;
  }
}
.qa__question {
  display: flex;
  align-items: flex-end;
  border-top: 1px solid #bfbfbf;
  padding: 33px 0;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .qa__question {
    padding: 10px 20px;
  }
}
.qa__answer {
  color: #808080;
  display: flex;
  align-items: flex-start;
  padding-bottom: 33px;
}
@media only screen and (max-width: 767px) {
  .qa__answer {
    padding: 20px;
  }
}
.qa__answer.is-hash {
  display: flex !important;
}
.qa__answer.is-none {
  display: none;
}
.qa__text {
  font-size: 16px;
  margin-left: 33px;
}
@media only screen and (max-width: 767px) {
  .qa__text {
    margin: 0 25px 0 15px;
  }
}
.qa__icon {
  font-size: 30px;
}
@media only screen and (min-width: 768px), print {
  .qa__icon {
    line-height: 1;
  }
}
.qa__toggle {
  width: 15px;
  margin-left: auto;
  position: relative;
  align-self: center;
}
.qa__toggle::before, .qa__toggle::after {
  content: "";
  display: block;
  width: 15px;
  height: 3px;
  border-radius: 5px;
  background: #1d1d1d;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.qa__toggle::after {
  background: #1d1d1d;
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.qa__toggle.active::after {
  transform: rotate(0);
  transition: 0.5s;
}

.recommend__img {
  padding: 60px 0 30px;
}
@media only screen and (min-width: 768px), print {
  .recommend__img {
    padding: 150px 0 50px;
  }
}
.recommend__txt {
  position: relative;
  color: #ec4943;
  text-align: center;
  background: #f4f4f4;
  margin: 2em auto 4em;
  padding: 1.5em 1em;
  z-index: 2;
  max-width: 100%;
  width: 95%;
}
@media only screen and (min-width: 768px), print {
  .recommend__txt {
    padding: 3em 0;
    font-size: 24px;
    margin-bottom: 100px;
    width: 974px;
  }
}
.recommend__txt:before {
  width: calc(100% + 1em);
  height: calc(100% + 1em);
  position: absolute;
  content: "";
  display: block;
  top: -0.5em;
  left: -0.5em;
  z-index: -1;
  background: rgba(0, 0, 0, 0);
  border: 4px solid #f4f4f4;
}
.recommend__txt:after {
  width: 3em;
  height: 1em;
  display: block;
  margin: auto;
  position: absolute;
  bottom: -2em;
  left: 0;
  right: 0;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2269%22%20height%3D%2218%22%20viewBox%3D%220%200%2069%2018%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_5657%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%205657%22%20transform%3D%22translate(-1.107%20-18.718)%22%3E%20%3Cpath%20id%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2_9%22%20data-name%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2%209%22%20d%3D%22M34.5%2C0%2C69%2C18H0Z%22%20transform%3D%22translate(70.107%2036.718)%20rotate(180)%22%20fill%3D%22%23ec4943%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%/100% auto;
}

.recruit__main {
  margin-top: 1.5rem;
}
@media only screen and (min-width: 768px), print {
  .recruit__main {
    margin-top: 3rem;
  }
}
.recruit__content {
  margin-top: 1.5rem;
}
@media only screen and (min-width: 768px), print {
  .recruit__content {
    margin-top: 3rem;
  }
}
.recruit__content img {
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 768px), print {
  .recruit__content img {
    width: 80%;
  }
}
.recruit__content p {
  margin-bottom: 1em;
}
@media only screen and (min-width: 768px), print {
  .recruit__content p {
    margin-bottom: 2em;
  }
}
.recruit__article {
  margin-top: 2em;
}
.recruit__h2 {
  font-weight: 500;
  font-size: 1.25em;
  margin-bottom: 0.25em;
  line-height: 1.4;
}
@media only screen and (min-width: 768px), print {
  .recruit__h2 {
    font-size: 1.75em;
  }
}
.saa-body__header {
  position: absolute;
}
@media only screen and (min-width: 768px), print {
  .saa-body__section {
    padding-top: 1rem;
  }
}
.saa-body__img {
  margin-bottom: 2em;
  display: block;
}
.saa-body__h1 {
  letter-spacing: 0.03em;
}
@media only screen and (min-width: 768px), print {
  .saa-body__h1 {
    font-size: 26px;
    line-height: 1.4;
    text-align: left;
  }
}
.saa-body__form {
  max-width: 100%;
}
@media only screen and (min-width: 1226px), print {
  .saa-body__form {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1226px), print {
  .saa-body__left {
    width: 30%;
  }
}
@media only screen and (min-width: 1226px), print {
  .saa-body__right {
    width: 64%;
  }
}
.saa-body #contact .form_list > li {
  margin-bottom: 1.5em;
}
@media only screen and (min-width: 768px), print {
  .saa-body #contact .form_list > li {
    display: flex;
    flex-wrap: wrap;
  }
}
.saa-body #contact .form_list > li > label.span_3 {
  font-size: 14px;
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 768px), print {
  .saa-body #contact .form_list > li > label.span_3 {
    font-size: 16px;
    width: 11em;
    text-align: right;
    padding-right: 1em;
  }
}
@media only screen and (min-width: 768px), print {
  .saa-body #contact .policy {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.saa-body #contact .policy h2 {
  font-size: 14px;
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 768px), print {
  .saa-body #contact .policy h2 {
    font-size: 16px;
    width: 11em;
    text-align: right;
    padding-right: 1em;
  }
}
.saa-body #contact .policy_html {
  height: 120px;
  padding: 1.5em;
  font-size: 0.85em;
}
@media only screen and (min-width: 768px), print {
  .saa-body #contact .policy_html {
    width: calc(100% - 11rem);
  }
}
@media only screen and (min-width: 768px), print {
  .saa-body #contact .policy_check {
    width: 100%;
  }
}
.saa-body #contact .policy_check label:after {
  content: "＊";
  color: #ec4943;
}
@media only screen and (min-width: 768px), print {
  .saa-body .input.col.span_9 {
    width: calc(100% - 13em);
  }
}
.saa-body .f_comb {
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 768px), print {
  .saa-body .f_comb {
    font-size: 16px;
  }
}
.saa-body__caution {
  margin-bottom: 0.5em;
}
.saa-body__caution-required {
  color: #ec4943;
}

.search-result {
  margin-bottom: 30px;
  font-size: 20px;
}
@media only screen and (max-width: 767px) {
  .search-result {
    font-size: 14px;
  }
}
.search-result__total {
  font-size: 40px;
  font-family: bree, sans-serif;
  letter-spacing: 2px;
  height: 1.85em;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .search-result__total {
    font-size: 24px;
  }
}
.search-result__current {
  margin-left: 5px;
  font-size: 30px;
  font-family: bree, sans-serif;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  .search-result__current {
    font-size: 18px;
  }
}

.search {
  padding: 50px;
  border-radius: 10px;
  border: 1px solid #D8D8D8;
}
@media only screen and (max-width: 767px) {
  .search {
    padding: 20px;
  }
}
.search__form {
  position: relative;
}
@media only screen and (min-width: 768px), print {
  .search__form {
    display: flex;
    align-items: center;
  }
}
@media only screen and (min-width: 768px), print {
  .search__form-label {
    width: 220px;
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .search__form-label {
    display: block;
    margin-bottom: 10px;
    font-size: 16px;
  }
}
.search__input {
  position: relative;
}
@media only screen and (min-width: 768px), print {
  .search__input {
    flex: auto;
  }
}
.search__input > input[type=text] {
  width: 100%;
  padding: 19px 30px;
  border-radius: 30px;
  border: 1px solid #1d1d1d;
  font-family: inherit;
  font-size: 14px;
  outline: none;
}
@media only screen and (max-width: 767px) {
  .search__input > input[type=text] {
    padding: 9px 20px;
    border-radius: 20px;
  }
}
.search__btn {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  padding: 5px;
  border-style: none;
  background-color: transparent;
  outline: none;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .search__btn {
    right: 20px;
  }
}
.search__btn > svg {
  width: 21px;
}
.search__tagsort {
  margin-top: 30px;
}
@media only screen and (min-width: 768px), print {
  .search__tagsort {
    display: flex;
    align-items: center;
  }
}
@media only screen and (min-width: 768px), print {
  .search__tagsort-label {
    flex: none;
    width: 220px;
    padding-left: 65px;
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .search__tagsort-label {
    margin-bottom: 10px;
    font-size: 16px;
  }
}
.search__tags {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -10px;
}
.search__tags > li {
  margin-right: 20px;
  margin-bottom: 10px;
}
.search__tags > li > a {
  display: block;
  padding: 10px 20px;
  background-color: #f4f4f4;
  color: inherit;
  text-decoration: none;
}
.search__tags > li > a:hover {
  text-decoration: underline;
}

.section {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media only screen and (max-width: 767px) {
  .section {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
.section__btn {
  margin-top: 50px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .section__btn {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 768px), print {
  .section__btn.-pc-right {
    margin-left: auto;
    margin-right: 0;
  }
}
.section__title {
  text-align: center;
  font-size: 24px;
}

.seminar-p {
  max-width: 830px;
  margin-left: auto;
  margin-right: auto;
}
.seminar-p__ttl {
  font-size: 1.5em;
  font-weight: 500;
}
.seminar-p__title {
  margin-bottom: 1em;
}
.seminar-p__article {
  margin-bottom: 3em;
}
@media only screen and (min-width: 768px), print {
  .seminar-p__grid {
    display: flex;
  }
}
@media only screen and (max-width: 767px) {
  .seminar-p__img {
    max-width: 180px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-bottom: 0.5em;
  }
  .seminar-p__img.-noimg {
    display: none;
  }
}
@media only screen and (min-width: 768px), print {
  .seminar-p__left {
    width: 244px;
  }
}
.seminar-p__right {
  line-height: 1.7;
}
@media only screen and (min-width: 768px), print {
  .seminar-p__right {
    width: calc(100% - 244px - 2em);
    padding-left: 1.5em;
  }
}
.seminar-p__name {
  font-size: 1.25em;
  font-weight: bold;
  margin-top: 0;
}
.seminar-p__conpany {
  font-size: 1.125em;
  font-weight: bold;
  line-height: 1.5;
}
.seminar-p__txt {
  margin-top: 0.75em;
  font-size: 0.95em;
  line-height: 1.6;
  text-align: justify;
}
.seminar-p__txt:before {
  content: "";
  display: block;
  background: rgb(93, 93, 93);
  width: 3em;
  height: 1px;
  margin-bottom: 0.5em;
}

@media only screen and (min-width: 1226px), print {
  .seminar {
    min-height: 430px;
    display: flex;
    flex-wrap: wrap;
  }
}
.seminar__schedule {
  width: 516px;
  margin-left: auto;
  padding-right: 40px;
}
@media only screen and (max-width: 1225px) {
  .seminar__schedule {
    width: auto;
    margin-left: 0;
    padding: 0 10px;
  }
}
@media only screen and (max-width: 767px) {
  .seminar__schedule {
    order: 3;
    width: 100%;
  }
}
.seminar__schedule-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.seminar__schedule-caption {
  font-size: 40px;
  font-weight: 600;
  font-family: bree, sans-serif;
  letter-spacing: 2px;
  line-height: 1.5;
}
@media only screen and (max-width: 1225px) {
  .seminar__schedule-caption {
    font-size: 24px;
  }
}
.seminar__schedule-text-1 {
  margin-top: 10px;
  font-family: bree, sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 3px;
}
@media only screen and (max-width: 1225px) {
  .seminar__schedule-text-1 {
    font-size: 20px;
    letter-spacing: 2px;
  }
}
.seminar__schedule-text-1 > small {
  font-size: 18px;
  letter-spacing: 2px;
}
@media only screen and (max-width: 1225px) {
  .seminar__schedule-text-1 > small {
    font-size: 14px;
    letter-spacing: 1px;
  }
}
.seminar__schedule-text-2 {
  margin-top: 5px;
  font-size: 16px;
}
@media only screen and (max-width: 1225px) {
  .seminar__schedule-text-2 {
    font-size: 12px;
  }
}
.seminar__img {
  flex: none;
  position: relative;
  width: 650px;
  max-width: 100%;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .seminar__img {
    padding: 0 30px;
    order: 1;
    height: auto;
  }
}
.seminar__img img {
  width: 100%;
}
.seminar__img a {
  transition: 0.2s;
}
.seminar__img a:hover {
  opacity: 0.85;
}
.seminar__content {
  width: calc(50vw + 393px);
  margin-top: 30px;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: calc(50vw - 583px);
  padding-right: 500px;
  background-color: #f4f4f4;
  max-width: 100%;
}
@media only screen and (max-width: 767px) {
  .seminar__content {
    width: auto;
    margin-top: -130px;
    padding: 155px 10px 10px;
    font-size: 12px;
    order: 2;
  }
}
.seminar__content > p {
  margin-top: 20px;
}
.seminar__title {
  font-size: 16px;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  .seminar__btn {
    order: 5;
    padding: 1em 10px;
    margin: 0 0 -2rem auto;
  }
}
@media only screen and (max-width: 767px) {
  .seminar__sptxt {
    order: 4;
    padding: 0 10px;
  }
}

.sentence-b {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  font-size: 14px;
  letter-spacing: 1px;
}
.sentence-b__img {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .sentence-b__img {
    margin-top: 40px;
  }
}
.sentence-b__heading {
  margin-bottom: 40px;
  font-size: 20px;
  letter-spacing: 2px;
  line-height: 1.5;
}
.sentence-b p + p {
  margin-top: 26px;
}

@media only screen and (min-width: 768px), print {
  .sentence {
    text-align: center;
    font-size: 18px;
  }
}
.sentence {
  font-size: 16px;
  letter-spacing: 1px;
}
.sentence p + p {
  margin-top: 26px;
}

.short_bnr {
  width: 380px;
  max-width: 100%;
  display: block;
  margin: 2em auto;
  border: 1px solid #222;
  transition: 0.2s;
  -webkit-transition: 0.2s;
}
.short_bnr:hover {
  opacity: 0.85;
}
.short_bnr img {
  vertical-align: bottom;
  margin-bottom: 0 !important;
}
.short_bnr__book {
  width: 700px;
  border: 1px solid #999999;
}

@media only screen and (min-width: 768px), print {
  .sidebar {
    height: 100%;
  }
}
@media only screen and (min-width: 768px), print {
  .sidebar__bnr-list > li {
    margin-top: 1.75em;
  }
}
@media only screen and (min-width: 768px), print {
  .sidebar__bnr-list {
    position: sticky;
    top: calc(100px + 3vh);
    z-index: 3;
    background: #fff;
  }
  .sidebar__bnr-list.-static {
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .sidebar__bnr-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-left: -10px;
    margin-right: -10px;
  }
  .sidebar__bnr-list > li {
    width: 49%;
    padding: 0 0.25em 0.5em;
  }
}
.sidebar__bnr {
  display: block;
  margin: 0 auto;
}
.sidebar a {
  transition: opacity 0.3s;
}
.sidebar a:hover {
  opacity: 0.8;
}
@media only screen and (max-width: 767px) {
  .sidebar__videotips {
    width: 70% !important;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (min-width: 768px), print {
  .smallimg {
    max-width: 300px !important;
  }
}

.sns {
  display: flex;
}
.sns.-center {
  justify-content: center;
}
.sns > li:nth-child(n+2) {
  margin-left: 60px;
}
@media only screen and (max-width: 767px) {
  .sns > li:nth-child(n+2) {
    margin-left: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .sns > li svg {
    width: 40px;
    height: 40px;
  }
}
.sns__h2icon {
  height: auto;
  width: 1em;
  margin-right: 0.25em;
}
.sns__h2icon.-yt {
  margin-right: 0.45em;
}
.sns__h2icon.-tw {
  width: 0.85em;
}
.sns a {
  transition: 0.2s;
  -webkit-transition: 0.2s;
}
.sns a:hover {
  opacity: 0.85;
}

.snsflow__matter {
  color: #d42d3b;
  border: 1px solid;
  display: inline-block;
  padding: 0 0.75em;
  margin-bottom: 0.25em;
  min-width: 6em;
  text-align: center;
}
.snsflow__matter.-some {
  color: #faac42;
  font-family: bree, sans-serif;
}
.snsflow__no {
  font-size: 1.25em;
  margin-right: 0.25em;
}

.snss {
  position: relative;
}
.snss__img {
  width: auto !important;
}
.snss__h4 {
  width: 100%;
  font-size: 1.5em;
  color: #faac42;
  position: absolute;
  text-align: center;
  top: calc(50% - 1.35em);
  left: 50%;
  transform: translate(-50%, -50%);
  line-height: 1.4;
}
@media only screen and (min-width: 768px), print {
  .snss__h4 {
    font-size: 1.8em;
  }
}

.sp-menu {
  position: relative;
  z-index: 1700;
  top: 0;
  right: 0;
  width: 45px;
  height: 40px;
  padding: 0;
  border: none;
  background-color: transparent;
  font-family: inherit;
  font-size: 16px;
  line-height: 1;
  outline: none;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
}

.sp-menu__bar-3, .sp-menu__bar-2, .sp-menu__bar-1 {
  position: absolute;
  left: 10px;
  right: 10px;
  height: 2px;
  background-color: #1d1d1d;
  transition: all 0.3s;
}

.sp-menu__bar-1 {
  display: block;
  top: 10px;
  transform-origin: left;
}
.is-drawer-active .sp-menu__bar-1 {
  transform: translateY(-2px) rotate(45deg) scaleX(1.4142);
}

.sp-menu__bar-2 {
  display: block;
  top: 19px;
}
.is-drawer-active .sp-menu__bar-2 {
  transform: scaleX(0);
}

.sp-menu__bar-3 {
  display: block;
  top: 28px;
  transform-origin: left;
}
.is-drawer-active .sp-menu__bar-3 {
  transform: translateY(5px) rotate(-45deg) scaleX(1.4142);
}

.summary {
  margin: 100px auto 0;
}
@media only screen and (max-width: 767px) {
  .summary {
    margin: 50px 0 0;
    width: 100%;
    margin: 0;
  }
}
.summary__body {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .summary__body {
    width: 100%;
    display: block;
  }
}
.summary__body.-reverse {
  flex-direction: row-reverse;
}
@media only screen and (max-width: 767px) {
  .summary__title {
    padding: 0;
    margin-bottom: 0 !important;
    margin-top: 50px;
  }
}
.summary__text {
  width: 545px;
}
@media only screen and (max-width: 767px) {
  .summary__text {
    width: 100%;
    padding: 1em 0;
  }
}
.summary__text h2 {
  font-size: 18px;
}
@media only screen and (min-width: 768px), print {
  .summary__text h2 {
    font-size: 20px;
  }
}
.summary__text p {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .summary__text p {
    margin-top: 10px;
  }
}
.summary__heading {
  font-size: 20px;
}
.summary__h2.-recommend {
  font-size: 18px;
}
@media only screen and (min-width: 768px), print {
  .summary__h2.-recommend {
    font-size: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .summary__h2.-recommend {
    margin-top: 1.5rem;
    text-align: center;
  }
}
@media only screen and (min-width: 768px), print {
  .summary__h2.-reverse {
    padding-left: 620px;
  }
}
.summary__h3 {
  font-size: 16px;
}
@media only screen and (min-width: 768px), print {
  .summary__h3 {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .summary__h3 {
    line-height: 1.6;
  }
}
@media only screen and (min-width: 768px), print {
  .summary__img {
    width: 570px;
    margin-left: 50px;
  }
  .summary__body.-reverse .summary__img {
    margin-left: 0;
    margin-right: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .summary__img {
    width: 100%;
    margin-left: 0;
  }
  .summary__img > img {
    width: 100%;
  }
}
.summary__img iframe {
  max-width: 100%;
}
@media only screen and (max-width: 767px) {
  .summary__img iframe {
    height: 60vw;
  }
}
.summary__blockauto {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .summary__blockauto {
    width: 85% !important;
  }
}
.summary__txt-red {
  color: #ec4943;
}
@media only screen and (min-width: 768px), print {
  .summary__txt-red {
    font-size: 1.3em;
  }
}

.tab-vertical {
  margin: 157px auto 0;
}
@media only screen and (max-width: 767px) {
  .tab-vertical {
    width: 100%;
    margin-top: 50px;
  }
}
.tab-vertical__title {
  text-align: center;
  font-size: 24px;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__title {
    padding: 0 10px;
    font-size: 20px;
  }
}
.tab-vertical__body {
  display: flex;
  background-color: #f9f9f9;
  margin-top: 105px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__body {
    display: block;
    margin-top: 20px;
  }
}
.tab-vertical__nav {
  flex: none;
  width: 366px;
}
@media only screen and (max-width: 1225px) {
  .tab-vertical__nav {
    width: 200px;
  }
}
@media only screen and (max-width: 767px) {
  .tab-vertical__nav {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 767px) {
  .tab-vertical__nav li {
    width: 50%;
  }
}
.tab-vertical__nav li > a {
  display: block;
  padding: 40px;
  text-align: center;
  font-size: 20px;
  color: inherit;
  text-decoration: none;
}
.tab-vertical__nav li > a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 1225px) {
  .tab-vertical__nav li > a {
    padding: 40px 20px;
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .tab-vertical__nav li > a {
    padding: 10px;
    font-size: 12px;
  }
}
.tab-vertical__nav li > a.is-active {
  background-color: #f4f4f4;
}
.tab-vertical__contents {
  flex: auto;
  background-color: #f4f4f4;
}
.tab-vertical__content {
  position: relative;
  padding: 50px;
}
@media only screen and (min-width: 768px), print {
  .tab-vertical__content {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .tab-vertical__content {
    width: 100%;
    padding: 20px;
    border-bottom: 1px solid #fff;
  }
}
.tab-vertical__content.is-active {
  display: block;
}
.tab-vertical__content-title {
  font-size: 18px;
}
@media only screen and (min-width: 768px), print {
  .tab-vertical__content-title {
    pointer-events: none;
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .tab-vertical__content-title.js-videoproductions-sp {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22113.568%22%20height%3D%2249.627%22%20viewBox%3D%220%200%20113.568%2049.627%22%3E%20%3Cg%20id%3D%22next%22%20transform%3D%22translate(113.568%20-112.556)%20rotate(90)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_11%22%20data-name%3D%22%E3%83%91%E3%82%B9%2011%22%20d%3D%22M161.417%2C54.52%2C117.1.946a2.341%2C2.341%2C0%2C0%2C0-3.76%2C0%2C3.692%2C3.692%2C0%2C0%2C0%2C0%2C4.546l42.428%2C51.289L113.339%2C108.07a3.692%2C3.692%2C0%2C0%2C0%2C0%2C4.546%2C2.468%2C2.468%2C0%2C0%2C0%2C1.87.952%2C2.394%2C2.394%2C0%2C0%2C0%2C1.87-.952L161.4%2C59.042A3.685%2C3.685%2C0%2C0%2C0%2C161.417%2C54.52Z%22%20transform%3D%22translate(0%200)%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 100% 50%/0.75em auto;
  }
  .tab-vertical__content-title.js-videoproductions-sp.is-active {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22113.568%22%20height%3D%2249.627%22%20viewBox%3D%220%200%20113.568%2049.627%22%3E%20%3Cg%20id%3D%22next%22%20transform%3D%22translate(0%20162.183)%20rotate(-90)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_11%22%20data-name%3D%22%E3%83%91%E3%82%B9%2011%22%20d%3D%22M161.417%2C54.52%2C117.1.946a2.341%2C2.341%2C0%2C0%2C0-3.76%2C0%2C3.692%2C3.692%2C0%2C0%2C0%2C0%2C4.546l42.428%2C51.289L113.339%2C108.07a3.692%2C3.692%2C0%2C0%2C0%2C0%2C4.546%2C2.468%2C2.468%2C0%2C0%2C0%2C1.87.952%2C2.394%2C2.394%2C0%2C0%2C0%2C1.87-.952L161.4%2C59.042A3.685%2C3.685%2C0%2C0%2C0%2C161.417%2C54.52Z%22%20transform%3D%22translate(0%200)%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 100% 50%/0.75em auto;
  }
}
.tab-vertical__content-text {
  margin: 20px 0 40px;
}
.tab-vertical__content-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
}
@media screen and (max-width: 1259px) {
  .tab-vertical__content-box {
    flex-direction: column;
  }
}
.tab-vertical__content-icons {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__content-icons {
    width: 100%;
    justify-content: center;
  }
}
.tab-vertical__content-icons dl {
  width: calc(25% - 1em);
  margin-right: 1em;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__content-icons dl {
    margin-bottom: 1em;
  }
}
@media only screen and (min-width: 768px), print {
  .tab-vertical__content-icons dl {
    width: 100px;
  }
}
.tab-vertical__content-icons dd {
  text-align: center;
  margin-top: 5px;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__content-icons dd {
    font-size: 12px;
  }
}
.tab-vertical__decoration {
  font-family: bree;
  color: #f4f4f4;
  position: absolute;
  font-size: 80px;
  top: -70px;
  left: 0;
  line-height: 1;
  z-index: 90;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__decoration {
    display: none;
  }
}
.tab-vertical__link {
  color: #1d1d1d;
}
.tab-vertical__link:hover {
  opacity: 0.85;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__spnone {
    display: none;
  }
}
.tab-vertical__flex {
  display: flex;
}
@media only screen and (max-width: 767px) {
  .tab-vertical__flex {
    justify-content: center;
  }
}
@media only screen and (min-width: 1226px), print {
  .tab-vertical__flex {
    margin-top: -4em;
  }
}

.tab__list {
  display: flex;
}
@media only screen and (min-width: 768px), print {
  .tab__item {
    width: 25%;
  }
}
@media only screen and (max-width: 767px) {
  .tab__item {
    flex: auto;
  }
}
@media only screen and (min-width: 768px), print {
  .tab__item:first-child {
    width: auto;
    flex: auto;
  }
}
.tab__item:first-child .tab__link {
  border-left-style: none;
}
.tab__link {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 80px;
  padding: 10px;
  border-bottom: 4px solid #ddd;
  font-size: 24px;
  letter-spacing: 2px;
  text-indent: 2px;
  line-height: 1.5;
  text-align: center;
  color: #ddd;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .tab__link {
    height: 60px;
    font-size: 12px;
  }
}
.tab__link.is-active {
  border-color: #faac42;
  background-color: transparent;
  color: #FAAC42;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .tab__link.is-active {
    padding-top: 17px;
    padding-bottom: 20px;
    border-left-width: 1px;
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
.tab__link.is-active:before {
  content: "";
  position: absolute;
  bottom: -12px;
  left: calc(50% - 6px);
  border-top: 8px solid #faac42;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
}
.tab__panel {
  display: none;
  padding-top: 50px;
}
@media only screen and (max-width: 767px) {
  .tab__panel {
    padding-top: 30px;
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tab__panel.is-active {
  display: block;
}
.tab__heading {
  margin-bottom: 100px;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .tab__heading {
    margin-bottom: 30px;
  }
}

.table-b {
  width: 900px;
  border-collapse: collapse;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .table-b {
    width: 600px;
  }
  .table-b__wrapper {
    padding-bottom: 30px;
    overflow: auto;
  }
}
.table-b th, .table-b td {
  border: 1px solid #1d1d1d;
  text-align: center;
  font-size: 14px;
}
.table-b th {
  padding: 17px 10px;
  color: #53c4c1;
  font-weight: bold;
}
.table-b td {
  padding: 13px 10px;
}
.table-b td.-lg {
  font-size: 18px;
  font-weight: bold;
}

.table {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  border-collapse: collapse;
}
.table th, .table td {
  padding: 25px 0;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .table th, .table td {
    display: block;
  }
}
.table th {
  font-weight: bold;
  text-align: left;
}
@media only screen and (min-width: 768px), print {
  .table th {
    width: 210px;
  }
}
@media only screen and (max-width: 767px) {
  .table th {
    padding-top: 15px;
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  .table td {
    padding-top: 5px;
    padding-bottom: 15px;
  }
}
.table td p + p {
  margin-top: 26px;
}
.table tr {
  border-bottom: 1px solid #ddd;
}
.table tr:first-child {
  border-top: 1px solid #ddd;
}
.table a {
  color: #6dddda;
  text-decoration: none;
}
.table a:hover {
  text-decoration: underline;
}

.tel__text-1 {
  font-size: 20px;
  letter-spacing: 2px;
  text-indent: 2px;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .tel__text-1 {
    font-size: 16px;
    letter-spacing: 1px;
  }
}
.tel__text-2 {
  margin-top: 20px;
  font-size: 16px;
  letter-spacing: 2px;
  text-indent: 2px;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .tel__text-2 {
    font-size: 16px;
    letter-spacing: 1px;
  }
}
.tel__text-2 > span {
  font-weight: 600;
  font-family: bree, sans-serif;
}
.tel__grid {
  margin: 30px auto 0;
}
@media only screen and (min-width: 768px), print {
  .tel__grid {
    display: flex;
    justify-content: space-between;
    max-width: 700px;
  }
}
@media only screen and (max-width: 767px) {
  .tel__grid {
    max-width: 300px;
  }
}
.tel__unit {
  position: relative;
  width: 300px;
  padding: 24px 10px;
  border: 1px solid #1d1d1d;
}
@media only screen and (max-width: 767px) {
  .tel__unit {
    width: auto;
  }
  .tel__unit:first-child {
    margin-bottom: 30px;
  }
}
.tel__branch-en {
  position: absolute;
  top: 105px;
  left: -22px;
  width: 105px;
  text-align: center;
  font-family: bree, sans-serif;
  font-size: 20px;
  line-height: 1.5;
  transform-origin: 0 0;
  transform: rotate(-90deg);
}
.tel__branch {
  position: absolute;
  top: -10px;
  left: 0;
  right: 0;
  width: 103px;
  margin: auto;
  font-size: 20px;
  line-height: 1;
  background-color: #f4f4f4;
}
.tel__tel {
  font-size: 30px;
  color: #ef5f41;
  font-size: 30px;
  text-indent: 3px;
  letter-spacing: 3px;
  font-weight: 600;
  font-family: bree, sans-serif;
}
.tel__link {
  color: #ef5f41;
  text-decoration: none;
}
@media only screen and (min-width: 768px), print {
  .tel__link {
    pointer-events: none;
  }
}

.textbox {
  width: 100%;
  padding: 15px 30px;
  border: 1px solid #191919;
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
@media only screen and (max-width: 767px) {
  .textbox {
    padding: 10px 20px;
  }
}
.textbox.-ml {
  height: 250px;
}
.textbox.-zip1 {
  width: 95px;
  margin-right: 10px;
}
@media only screen and (max-width: 767px) {
  .textbox.-zip1 {
    margin-bottom: 10px;
  }
}
.textbox.-zip2 {
  width: 110px;
  margin-left: 10px;
  margin-right: 35px;
}
.textbox.-other {
  margin-left: auto;
}
.textbox.-other.-ways {
  width: 455px;
}
@media only screen and (max-width: 767px) {
  .textbox.-other.-ways {
    width: calc(100% - 90px);
  }
}
.textbox.-other.-type {
  width: 620px;
}
@media only screen and (max-width: 767px) {
  .textbox.-other.-type {
    width: calc(100% - 90px);
  }
}

.tipsauthor {
  border-top: 1px solid #4a4a4a;
  margin-top: 2em;
  padding-top: 2em;
}
@media only screen and (max-width: 767px) {
  .tipsauthor {
    font-size: 0.9em;
  }
}
.tipsauthor p {
  margin-bottom: 0;
}
.tipsauthor__grid {
  display: flex;
}
.tipsauthor__img,
.tipsauthor .avatar {
  display: block !important;
  width: 80px !important;
  height: 80px;
  overflow: hidden;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 768px), print {
  .tipsauthor__img,
  .tipsauthor .avatar {
    width: 140px !important;
    height: 140px;
  }
}
.tipsauthor__left {
  width: 80px;
}
@media only screen and (min-width: 768px), print {
  .tipsauthor__left {
    width: 140px;
  }
}
.tipsauthor__right {
  width: calc(100% - 80px - 1em);
  padding-left: 1em;
}
@media only screen and (min-width: 768px), print {
  .tipsauthor__right {
    padding-left: 1.5em;
    width: calc(100% - 140px - 2em);
  }
}
.tipsauthor__ttl {
  line-height: 1.4;
  font-size: 0.9em;
  color: #fff;
  background: #1d1d1d;
  display: inline-block;
  padding: 0.25em 0.5em;
  margin-bottom: 0.5em !important;
}
.tipsauthor__name {
  font-weight: bold;
  font-size: 1.35em;
  line-height: 1.4;
  margin-bottom: 0.5em !important;
}
.tipsauthor__en {
  color: #faac42;
  line-height: 1.4;
}
.tipsauthor__txt {
  line-height: 1.6;
}

.title-b {
  margin-bottom: 50px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .title-b {
    margin-bottom: 30px;
  }
}
.title-b__main {
  font-size: 60px;
  line-height: 1.5;
  letter-spacing: 3px;
  text-indent: 3px;
  font-weight: 600;
  color: #faac42;
  font-family: bree, sans-serif;
}
@media only screen and (max-width: 767px) {
  .title-b__main {
    font-size: 30px;
    letter-spacing: 2px;
    text-indent: 2px;
  }
}
.title-b__main.-red {
  color: #dc1a25;
}
.title-b__sub {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 3px;
  text-indent: 3px;
}
@media only screen and (max-width: 767px) {
  .title-b__sub {
    font-size: 16px;
    letter-spacing: 1px;
    text-indent: 0;
  }
}
@media only screen and (min-width: 768px), print {
  .title-b__sub-b {
    font-size: 1.125em;
  }
}
.title-b__sub-b {
  line-height: 1.5;
  letter-spacing: 0.03em;
  margin-bottom: 0.5em;
}

.title {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .title {
    margin-bottom: 30px;
  }
}
.title.-sm {
  margin-bottom: 20px;
}
.title__main {
  font-size: 40px;
  line-height: 1.25;
  letter-spacing: 4px;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .title__main {
    font-size: 24px;
    letter-spacing: 2px;
  }
}
.title__main.-whp {
  font-size: 1.35em;
}
@media only screen and (min-width: 768px), print {
  .title__main.-whp {
    font-size: 2.5em;
  }
}
.title.-sm .title__main {
  font-size: 28px;
}
@media only screen and (max-width: 767px) {
  .title.-sm .title__main {
    font-size: 24px;
  }
}
.title__main.-sns {
  display: flex;
  align-items: center;
}
.title__sub, .indexcta__en {
  font-family: bree, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 1px;
  color: #faac42;
  height: 1.5em;
}
@media only screen and (max-width: 767px) {
  .title__sub, .indexcta__en {
    font-size: 16px;
  }
}
.title.-sm .title__sub, .title.-sm .indexcta__en {
  font-size: 16px;
}
.title__liner {
  margin-top: 60px;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .title__liner {
    margin-top: 20px;
  }
}
.title__liner span {
  letter-spacing: 0.03em;
  font-size: 24px;
  width: 245px;
}
@media only screen and (max-width: 767px) {
  .title__liner span {
    font-size: 16px;
    width: 13em;
  }
}
.title__liner:after {
  content: "";
  background-color: #f4f4f4;
  width: calc(100% - 245px);
  height: 5px;
  display: block;
}
@media only screen and (max-width: 767px) {
  .title__liner:after {
    width: calc(100% - 150px);
  }
}
.title__txt {
  letter-spacing: 0.03em;
  margin-top: 1em;
}
@media only screen and (min-width: 768px), print {
  .title__txt {
    font-size: 16px;
  }
}

.webiner-more {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 3;
}
@media only screen and (min-width: 768px), print {
  .webiner-more {
    top: 95px;
  }
}
@media only screen and (max-width: 767px) {
  .webiner-more {
    bottom: 2em;
  }
}
.webiner-more.active {
  display: none;
}
.webiner-more .btn, .webiner-more #contact .submit_btn input[type=submit], #contact .submit_btn .webiner-more input[type=submit] {
  background: #fff;
  border-width: 2px;
}
@media only screen and (max-width: 767px) {
  .webiner-more .btn, .webiner-more #contact .submit_btn input[type=submit], #contact .submit_btn .webiner-more input[type=submit] {
    transform: scale(0.8);
    transform-origin: 50%;
  }
}
.webiner-more .btn:hover, .webiner-more #contact .submit_btn input[type=submit]:hover, #contact .submit_btn .webiner-more input[type=submit]:hover {
  opacity: 1;
  top: 2px;
  position: relative;
}
.webiner-more:before, .webiner-more:after {
  border-top: 2px dashed;
  content: "";
  flex-grow: 1;
}
.webiner-more__wrap {
  height: 200px;
  overflow: hidden;
}
.webiner-more__wrap.active {
  height: auto;
}
.webiner-more__wrap.active:before {
  display: none;
}
.webiner-more__wrap:before {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 20%;
  content: "";
  z-index: 2;
  display: block;
  width: 100%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.01) 1%, #ffffff 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ededed', endColorstr='#ffffff',GradientType=0 );
}

.whplist > .container, .whplist > .cv-line__inner {
  position: relative;
  z-index: 1;
}
.whplist.-thanks:after {
  opacity: 0;
}
.whplist:after {
  content: "";
  position: absolute;
  left: calc(50% - 390px);
  right: 0;
  bottom: 0;
  height: 80%;
  background-color: #f4f4f4;
  z-index: 0;
}
@media only screen and (max-width: 767px) {
  .whplist:after {
    height: 90%;
    width: 80%;
    left: auto;
  }
}
.whplist__title {
  margin-top: -100px;
  padding-top: 100px;
}
.whplist__btn {
  padding: 1em 1em 1em 2em !important;
  margin-top: 1em;
  width: 222px !important;
  margin-bottom: 0.5em !important;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .whplist__btn {
    font-size: 0.75em !important;
  }
}
.whplist__btn:after {
  transition: 0.2s;
  top: 0;
  right: -1.25em;
  bottom: 0;
  margin: auto;
  width: 1em;
  height: 1em;
  content: "";
  left: auto;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.01%22%20height%3D%2210.381%22%20viewBox%3D%220%200%2014.01%2010.381%22%3E%20%3Cg%20id%3D%22arrow_prev%22%20transform%3D%22translate(-217.529%20-195.986)%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_4%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%204%22%20transform%3D%22translate(217.029%20196.533)%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_3%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%203%22%20transform%3D%22translate(0%200)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1%22%20data-name%3D%22%E3%83%91%E3%82%B9%201%22%20d%3D%22M116.449%2C158.792l-4.38%2C4.38a.28.28%2C0%2C0%2C1-.205.087.3.3%2C0%2C0%2C1-.205-.087.289.289%2C0%2C0%2C1%2C0-.411l3.878-3.878h-11.72a.292.292%2C0%2C0%2C1%2C0-.584h11.72l-3.878-3.878a.29.29%2C0%2C1%2C1%2C.411-.411l4.38%2C4.38A.278.278%2C0%2C0%2C1%2C116.449%2C158.792Z%22%20transform%3D%22translate(-102.525%20-153.925)%22%20fill%3D%22%23fff%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") 50%/100% auto no-repeat;
}
.whplist__card {
  position: relative;
}
.whplist__card:hover .whplist__btn:after {
  right: -1.5em;
}
.whplist__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  z-index: 2;
}

.whptab {
  display: flex;
  justify-content: space-around;
  margin-bottom: 2rem;
  font-size: 1.125em;
}
@media only screen and (max-width: 767px) {
  .whptab {
    flex-wrap: wrap;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (min-width: 768px), print {
  .whptab {
    margin-bottom: 4rem;
    font-size: 1.5em;
  }
}
.whptab__link {
  transition: 0.2s;
  color: #1d1d1d;
  text-decoration: none;
  border-bottom: 4px solid #faac42;
  text-align: center;
  position: relative;
  padding: 0.5em;
  width: 100%;
}
@media only screen and (min-width: 768px), print {
  .whptab__link {
    color: #777;
    width: calc(33% - 0.5em);
    border-color: #dddddd;
  }
  .whptab__link.-col2 {
    width: calc(50% - 0.5em);
  }
}
.whptab__link:after {
  transition: 0.2s;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.5em;
  margin: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.5em 0.5em 0 0.5em;
  border-color: #faac42 transparent transparent transparent;
}
@media only screen and (min-width: 768px), print {
  .whptab__link:after {
    border-color: #dddddd transparent transparent transparent;
  }
}
.whptab__link:hover {
  border-color: #faac42;
  color: #1d1d1d;
  top: -1px;
}
.whptab__link:hover:after {
  border-top-color: #faac42;
}

.works h2 {
  clear: both;
  color: #6dddda;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.works h2:nth-child(n+2) {
  margin-top: 80px;
}
.works h3 {
  clear: both;
  margin-top: 50px;
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: bold;
}
.works .table-works {
  clear: both;
  border-bottom: 1px solid #E0E0E1;
  margin: 1em 0 2em 0;
  background-color: #F9F8F8;
  overflow: hidden;
}
.works .table-works dt, .works .table-works dd {
  padding: 20px;
}
.works .table-works dt {
  border-top: 1px solid #E0E0E1;
  font-weight: bold;
  float: left;
  width: 100px;
}
@media sp {
  .works .table-works dt {
    width: 100%;
    float: none;
    padding: 0.5em 20px;
  }
}
.works .table-works dd {
  margin-left: 100px;
  border-top: 1px solid #E0E0E1;
  background-color: #fff;
}
@media only screen and (min-width: 768px), print {
  .works .imgleft_works {
    float: left;
  }
}
@media only screen and (min-width: 768px), print {
  .works .imgleft_works + .imglast {
    margin-left: 520px;
  }
}
@media only screen and (max-width: 767px) {
  .works .imgleft_works + .imglast {
    margin-top: 20px;
  }
}
.works .imglast + .table-works {
  margin-top: 70px;
}

.ytthumb {
  transition: 0.2s;
  -webkit-transition: 0.2s;
  overflow: hidden;
  position: relative;
  max-width: 660px;
  margin: 1em 0;
  font-size: 0.75em;
}
@media only screen and (min-width: 768px), print {
  .ytthumb {
    font-size: 1em;
  }
}
.ytthumb:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 6em;
  height: 5em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20176%20124%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bopacity%3A0.8%3B%7D.cls-2%7Bfill%3A%23fff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%3E%3Cg%20id%3D%22Layer_1%22%20data-name%3D%22Layer%201%22%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M172.32%2C19.36A22.12%2C22.12%2C0%2C0%2C0%2C156.76%2C3.7C143%2C0%2C88%2C0%2C88%2C0S33%2C0%2C19.24%2C3.7A22.12%2C22.12%2C0%2C0%2C0%2C3.68%2C19.36C0%2C33.18%2C0%2C62%2C0%2C62s0%2C28.82%2C3.68%2C42.64A22.12%2C22.12%2C0%2C0%2C0%2C19.24%2C120.3C33%2C124%2C88%2C124%2C88%2C124s55%2C0%2C68.76-3.7a22.12%2C22.12%2C0%2C0%2C0%2C15.56-15.66C176%2C90.82%2C176%2C62%2C176%2C62S176%2C33.18%2C172.32%2C19.36Z%22%2F%3E%3Cpolygon%20class%3D%22cls-2%22%20points%3D%2270%2088.17%20116%2062%2070%2035.83%2070%2088.17%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E") 50%/100% auto no-repeat;
  z-index: 3;
}
.ytthumb:after {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 5em;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0.70+0,0+100 */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#96000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
}
.ytthumb__img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
}
.ytthumb__txt {
  position: absolute;
  top: 1em;
  left: 1em;
  color: #fff;
  z-index: 2;
  font-size: 1.25em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: calc(100% - 1em);
}
.ytthumb__link {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 4;
  display: block;
}
.ytthumb:hover {
  opacity: 0.95;
}
.ytthumb:hover:before {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20176%20124%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Ared%3B%7D.cls-2%7Bfill%3A%23fff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%3E%3Cg%20id%3D%22Layer_1%22%20data-name%3D%22Layer%201%22%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M172.32%2C19.36A22.12%2C22.12%2C0%2C0%2C0%2C156.76%2C3.7C143%2C0%2C88%2C0%2C88%2C0S33%2C0%2C19.24%2C3.7A22.12%2C22.12%2C0%2C0%2C0%2C3.68%2C19.36C0%2C33.18%2C0%2C62%2C0%2C62s0%2C28.82%2C3.68%2C42.64A22.12%2C22.12%2C0%2C0%2C0%2C19.24%2C120.3C33%2C124%2C88%2C124%2C88%2C124s55%2C0%2C68.76-3.7a22.12%2C22.12%2C0%2C0%2C0%2C15.56-15.66C176%2C90.82%2C176%2C62%2C176%2C62S176%2C33.18%2C172.32%2C19.36Z%22%2F%3E%3Cpolygon%20class%3D%22cls-2%22%20points%3D%2270%2088.17%20116%2062%2070%2035.83%2070%2088.17%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E") 50%/100% auto no-repeat;
}