@charset "UTF-8";
.div-mv {
  height: 100vh;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 5%;
  align-items: flex-start;
  background: #192b4c;
}
@media only screen and (max-width: 1023px) {
  .div-mv {
    background: none;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-mv {
    padding: 0 5%;
  }
}

.div-mv:after {
  content: "";
  width: 140%;
  height: 140%;
  position: absolute;
  left: -20%;
  top: -20%;
  transform: rotate(-10deg);
  background: url("../../img/fig_main_tech.jpg") no-repeat 100% 100%;
  background-size: cover;
  z-index: -1;
}
@media only screen and (max-width: 1023px) {
  .div-mv:after {
    height: 110%;
    top: -10%;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-mv:after {
    width: 160%;
    left: -30%;
  }
}

.div-mv-btn {
  position: relative;
  z-index: 2;
  padding-top: 8.5rem;
}
@media only screen and (max-width: 767px) {
  .div-mv-btn {
    padding-top: 3rem;
    width: 100%;
  }
}
.div-mv-btn a {
  width: 43.8rem;
  height: 7.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.4rem;
  font-weight: 700;
  background: linear-gradient(-25deg, #e82828 0%, #ae1111 100%);
  color: #fff;
  border-radius: 10rem;
  box-shadow: 0 0 0.5rem 0 rgba(25, 43, 76, 0.2);
  z-index: 1;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .div-mv-btn a {
    width: 100%;
    height: 6rem;
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .div-mv-btn a:after {
    content: "";
    width: 0%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    transition: all .5s;
    background: #fff;
    z-index: -1;
  }
  .div-mv-btn a:hover {
    color: #192b4c;
  }
  .div-mv-btn a:hover:after {
    width: 100%;
  }
}
.div-mv-btn a span {
  font-size: 3.6rem;
  margin-right: .5rem;
}
@media only screen and (max-width: 767px) {
  .div-mv-btn a span {
    font-size: 2.8rem;
  }
}
.div-mv-message p {
  font-size: 5.4rem;
  color: #fff;
  font-weight: 700;
}
@media only screen and (max-width: 1023px) {
  .div-mv-message p {
    font-size: 4.2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-mv-message p {
    font-size: 2.7rem;
  }
}

.div-mv-message p b {
  font-size: 6rem;
  font-weight: 700;
}
@media only screen and (max-width: 1023px) {
  .div-mv-message p b {
    font-size: 5rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-mv-message p b {
    font-size: 3.6rem;
  }
}

.div-mv-message p mark {
  font-size: 7rem;
  font-weight: 700;
  position: relative;
  margin-right: 1.5rem;
  padding: 0 1.5rem;
  color: #fff;
  position: relative;
  z-index: 1;
  background: none;
}
@media only screen and (max-width: 1023px) {
  .div-mv-message p mark {
    font-size: 6rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-mv-message p mark {
    font-size: 5.4rem;
    display: inline-block;
    margin-bottom: 1rem;
  }
}

.div-mv-message p mark:before, .div-mv-message p mark:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
}
.div-mv-message p mark:before {
  background: linear-gradient(-25deg, #5575b2 0%, #3f99ff 100%);
  top: .5rem;
  left: .5rem;
}
.div-mv-message p mark:after {
  border: .1rem solid #fff;
  box-sizing: border-box;
}

.section-check {
  background: url("../../img/bg_sha.svg") no-repeat 50% 100% #c7d3eb;
  background-size: 100% 22.5rem;
  padding: 2rem 0 30rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row-reverse;
}
@media only screen and (max-width: 1023px) {
  .section-check {
    padding-bottom: 20rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-check {
    flex-direction: column;
    padding-top: 0;
    background-size: 100% 8rem;
    padding-bottom: 8rem;
  }
}

.section-check-header {
  width: 25%;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .section-check-header {
    width: 100%;
    margin-top: -5rem;
  }
}
.section-check-header:after {
  content: "";
  position: absolute;
  background: #bccae6;
  opacity: 0.5;
  z-index: -1;
  width: 31rem;
  height: 31rem;
  transform: rotate(45deg);
  right: 4vw;
  bottom: -16rem;
}
@media only screen and (max-width: 767px) {
  .section-check-header:after {
    left: -26rem;
    right: auto;
  }
}
.section-check-header-ttl {
  font-size: 4rem;
  line-height: 1.3;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
@media only screen and (max-width: 1023px) {
  .section-check-header-ttl {
    font-size: 3.2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-check-header-ttl {
    font-size: 2rem;
    margin: 0 auto;
  }
}

.section-check-header-ttl b {
  font-size: 4.8rem;
}
@media only screen and (max-width: 1023px) {
  .section-check-header-ttl b {
    font-size: 4rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-check-header-ttl b {
    font-size: 2.6rem;
  }
}

.section-check-header-ttl strong {
  font-size: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .section-check-header-ttl strong {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-check-header-ttl strong {
    font-size: 3.6rem;
  }
}

.section-check-inner {
  width: 100%;
  padding-right: 4vw;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 1023px) {
  .section-check-inner {
    padding: 0 2.5rem;
    align-items: flex-start;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-check-inner {
    padding: 0 1.5rem;
  }
}

.section-check-inner ul {
  max-width: 77.5rem;
  padding-top: 2rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.section-check-inner ul li {
  max-width: 59rem;
  min-width: 50rem;
  background: #192b4c;
  color: #fff;
  border-radius: 10rem;
  height: 8rem;
  padding: 1.5rem 2.5rem 1.5rem 1.5rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 2.4rem;
  line-height: 1.2;
  font-weight: 700;
  margin-bottom: 2rem;
  margin-right: auto;
}
@media only screen and (max-width: 1023px) {
  .section-check-inner ul li {
    width: auto;
    min-height: 8rem;
    height: auto;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-check-inner ul li {
    min-width: 0;
    font-size: 1.5rem;
    min-height: 6rem;
    margin-bottom: 1.5rem;
  }
}

.section-check-inner ul li:nth-of-type(2) {
  margin-left: 10rem;
}
@media only screen and (max-width: 1023px) {
  .section-check-inner ul li:nth-of-type(2) {
    margin-left: 0;
  }
}
.section-check-inner ul li:nth-of-type(3) {
  margin-left: 20rem;
}
@media only screen and (max-width: 1023px) {
  .section-check-inner ul li:nth-of-type(3) {
    margin-left: 0;
  }
}
.section-check-inner ul li span {
  width: 5rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0;
  font-size: 3rem;
  color: #5575b2;
  background: #fff;
  border-radius: 50%;
  margin-right: 1rem;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .section-check-inner ul li span {
    width: 3.6rem;
    height: 3.6rem;
    font-size: 2rem;
  }
}
.section-check-en {
  margin-left: 1rem;
  margin-right: auto;
}
.section-check-en img {
  width: 55vw;
}
@media only screen and (max-width: 767px) {
  .section-check-en img {
    width: 90vw;
  }
}
.section-recommend {
  width: 100%;
  padding-top: 7rem;
  background: url("../../img/bg_1.png") no-repeat 0% 100% #c7d3eb;
  background-size: 100% auto;
}
@media only screen and (max-width: 1023px) {
  .section-recommend {
    padding-top: 0;
    background: none;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend {
    padding-top: 2.5rem;
  }
}

.section-recommend-en {
  padding-left: 2%;
  position: relative;
  z-index: 2;
}
.section-recommend-en img {
  max-width: 78vw;
}
@media only screen and (max-width: 767px) {
  .section-recommend-en img {
    width: 42rem;
    max-width: none;
    position: absolute;
    left: -19rem;
    top: 17rem;
    transform: rotate(90deg);
    opacity: 0.5;
  }
}
.section-recommend-wrap {
  max-width: 100rem;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 10rem;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-wrap {
    flex-direction: column;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend-wrap {
    padding-bottom: 5rem;
  }
}
@media only screen and (max-width: 1023px) {
  .section-recommend-wrap:after {
    content: "";
    width: 100%;
    height: 40rem;
    background: url("../../img/bg_1.png") no-repeat 0% 0% #c7d3eb;
    background-size: 100% 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -2;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend-wrap:after {
    height: 16rem;
  }
}

.section-recommend-header {
  flex-shrink: 0;
}
.section-recommend-header-ttl {
  font-size: 4rem;
  line-height: 1.3;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-header-ttl {
    font-size: 3.2rem;
    padding-top: 2.5rem;
  }
  .section-recommend-header-ttl br {
    display: none;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend-header-ttl {
    font-size: 2rem;
  }
}

.section-recommend-header-ttl b {
  font-size: 4.8rem;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-header-ttl b {
    font-size: 3.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend-header-ttl b {
    font-size: 2.4rem;
  }
}

.section-recommend-header-ttl strong {
  font-size: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-header-ttl strong {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend-header-ttl strong {
    font-size: 3.2rem;
  }
}

.section-recommend-inner {
  padding: 6rem 0;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-inner {
    padding: 3rem 0 6rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend-inner {
    padding: 1rem 1.5rem 2rem 1.5rem;
  }
}

.section-recommend-inner:before, .section-recommend-inner:after {
  content: "";
  position: absolute;
  background: #bccae6;
  opacity: 0.5;
  z-index: -1;
}
.section-recommend-inner:after {
  width: 26rem;
  height: 26rem;
  transform: rotate(45deg);
  left: -20vw;
  bottom: 10rem;
}
@media only screen and (max-width: 767px) {
  .section-recommend-inner:after {
    width: 13rem;
    height: 13rem;
    left: -9rem;
    bottom: 28rem;
  }
}
.section-recommend-inner:before {
  width: 37rem;
  height: 37rem;
  transform: rotate(45deg);
  right: -29vw;
  bottom: 2rem;
}
@media only screen and (max-width: 767px) {
  .section-recommend-inner:before {
    width: 24rem;
    height: 24rem;
    right: -20rem;
    bottom: 6rem;
  }
}
.section-recommend-inner ul {
  padding-top: 2rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.section-recommend-inner ul li {
  background: #c7d3eb;
  border-radius: 10rem;
  height: 8rem;
  padding: 1.5rem 2.5rem 1.5rem 1.5rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 2.4rem;
  line-height: 1.2;
  font-weight: 700;
  margin-bottom: 2rem;
  margin-right: auto;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-inner ul li {
    width: 100%;
    height: 7rem;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-recommend-inner ul li {
    font-size: 1.5rem;
    height: 6rem;
    margin-bottom: 1.5rem;
  }
}

.section-recommend-inner ul li:nth-of-type(1), .section-recommend-inner ul li:nth-of-type(3) {
  margin-left: 5rem;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-inner ul li:nth-of-type(1), .section-recommend-inner ul li:nth-of-type(3) {
    margin: 0 auto 2rem;
  }
}
.section-recommend-inner ul li:nth-of-type(4) {
  margin-left: -5rem;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-inner ul li:nth-of-type(4) {
    margin: 0 auto 2rem;
  }
}
.section-recommend-inner ul li:nth-of-type(2) {
  margin-left: 15rem;
}
@media only screen and (max-width: 1023px) {
  .section-recommend-inner ul li:nth-of-type(2) {
    margin: 0 auto 2rem;
  }
}
.section-recommend-inner ul li span {
  width: 5rem;
  height: 5rem;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0;
  font-size: 3rem;
  color: #fff;
  background: #5575b2;
  border-radius: 50%;
  margin-right: 1rem;
}
@media only screen and (max-width: 767px) {
  .section-recommend-inner ul li span {
    width: 3.6rem;
    height: 3.6rem;
    font-size: 2rem;
  }
}
.section-reason {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 6rem 0 0;
}
@media only screen and (max-width: 767px) {
  .section-reason {
    padding-top: 4rem;
  }
}
.section-reason-header {
  position: relative;
  z-index: 1;
  margin-bottom: 5rem;
}
@media only screen and (max-width: 767px) {
  .section-reason-header {
    margin-bottom: 3rem;
  }
}
.section-reason-header-ttl {
  font-size: 4rem;
  line-height: 1.3;
  text-align: left;
}
@media only screen and (max-width: 1023px) {
  .section-reason-header-ttl {
    font-size: 3.2rem;
    text-align: center;
    padding: 0 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-header-ttl {
    font-size: 2rem;
    padding: 0;
  }
}

.section-reason-header-ttl b {
  font-size: 4.8rem;
}
@media only screen and (max-width: 1023px) {
  .section-reason-header-ttl b {
    font-size: 3.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-header-ttl b {
    font-size: 2.4rem;
  }
}

.section-reason-header-ttl strong {
  font-size: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .section-reason-header-ttl strong {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-header-ttl strong {
    font-size: 3.2rem;
  }
}

.section-reason-header-ttl mark {
  font-size: 5.6rem;
  color: #192b4c;
  background: none;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1023px) {
  .section-reason-header-ttl mark {
    font-size: 4.8rem;
    display: inline-block;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-header-ttl mark {
    font-size: 3.2rem;
    display: inline;
  }
}

.section-reason-header-ttl mark:after {
  content: "";
  width: 100%;
  height: 1.2rem;
  background: rgba(255, 208, 44, 0.75);
  position: absolute;
  left: 0;
  bottom: 1rem;
  z-index: -1;
}
@media only screen and (max-width: 1023px) {
  .section-reason-header-ttl mark:after {
    height: 1rem;
    bottom: .3rem;
  }
}
.section-reason-header:after {
  content: "";
  position: absolute;
  background: #ffd02c;
  opacity: 0.2;
  z-index: -1;
  width: 34rem;
  height: 34rem;
  transform: rotate(45deg);
  left: -26vw;
  top: 6rem;
}
@media only screen and (max-width: 767px) {
  .section-reason-header:after {
    left: -30rem;
  }
}
.section-reason-inner {
  width: 100%;
  position: relative;
  z-index: 1;
  padding-bottom: 10rem;
}
@media only screen and (max-width: 767px) {
  .section-reason-inner {
    padding-bottom: 6rem;
  }
}
.section-reason-inner:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  height: 59rem;
  background: url("../../img/bg_1.png") no-repeat 0% 100% rgba(255, 208, 44, 0.75);
  background-size: 100% 100%;
}
@media only screen and (max-width: 767px) {
  .section-reason-inner:after {
    height: 12rem;
  }
}
.section-reason-inner:before {
  content: "";
  position: absolute;
  right: -10vw;
  bottom: -16rem;
  z-index: 1;
  width: 59rem;
  height: 59rem;
  background: #ffae00;
  transform: rotate(45deg);
  opacity: 0.2;
}
@media only screen and (max-width: 767px) {
  .section-reason-inner:before {
    right: -60rem;
  }
}
.section-reason-inner .article-reason {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row-reverse;
  padding: 2rem 3vw;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1023px) {
  .section-reason-inner .article-reason {
    margin-bottom: 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-inner .article-reason {
    flex-direction: column;
    padding: 2rem 5%;
  }
}

.section-reason-inner .article-reason:nth-of-type(2n) {
  flex-direction: row;
}
@media only screen and (max-width: 767px) {
  .section-reason-inner .article-reason:nth-of-type(2n) {
    flex-direction: column;
  }
}
.section-reason-inner .article-reason:nth-of-type(2n) .article-reason-ttl {
  margin-right: auto;
  margin-left: 0;
}
.section-reason-inner .article-reason:nth-of-type(2n) .article-reason-inner {
  padding-right: 0;
  padding-left: 5rem;
  justify-content: flex-start;
}
@media only screen and (max-width: 1023px) {
  .section-reason-inner .article-reason:nth-of-type(2n) .article-reason-inner {
    padding-left: 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-inner .article-reason:nth-of-type(2n) .article-reason-inner {
    padding-left: 0;
  }
}

.section-reason-inner .article-reason:nth-of-type(2n) .article-reason-inner p {
  margin-right: auto;
  margin-left: 0;
}
.section-reason-inner .article-reason:nth-of-type(2n) .article-reason-en {
  left: auto;
  right: 3vw;
}
.section-reason-inner .article-reason-fig {
  width: 50rem;
  flex-shrink: 0;
}
@media only screen and (max-width: 1023px) {
  .section-reason-inner .article-reason-fig {
    width: 50%;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-inner .article-reason-fig {
    width: 100%;
  }
}

.section-reason-inner .article-reason-ttl {
  font-size: 2.8rem;
  line-height: 1.5;
  padding-bottom: 2rem;
}
@media only screen and (max-width: 1023px) {
  .section-reason-inner .article-reason-ttl {
    font-size: 2.4rem;
    padding-top: 2rem;
    padding-bottom: 1.5rem;
  }
  .section-reason-inner .article-reason-ttl br {
    display: none;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-inner .article-reason-ttl {
    font-size: 1.8rem;
  }
}

.section-reason-inner .article-reason-inner {
  width: 60rem;
  padding-right: 5rem;
  text-align: left;
}
@media only screen and (max-width: 1023px) {
  .section-reason-inner .article-reason-inner {
    padding-right: 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-inner .article-reason-inner {
    width: 100%;
    padding: 0;
  }
}

.section-reason-inner .article-reason-inner p {
  font-size: 1.4rem;
  line-height: 2;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .section-reason-inner .article-reason-inner p {
    font-size: 1.3rem;
    line-height: 1.6;
  }
}
.section-reason-inner .article-reason-en {
  position: absolute;
  z-index: -1;
  left: 3vw;
  top: 5rem;
}
@media only screen and (max-width: 1023px) {
  .section-reason-inner .article-reason-en {
    top: 0;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-reason-inner .article-reason-en {
    z-index: 2;
  }
}

.section-reason-inner .article-reason-en img {
  width: 40vw;
}
@media only screen and (max-width: 767px) {
  .section-reason-inner .article-reason-en img {
    width: 70vw;
  }
}
.section-merit {
  background: rgba(255, 208, 44, 0.75);
  padding: 7rem 0;
}
@media only screen and (max-width: 767px) {
  .section-merit {
    padding: 5rem 0;
  }
}
.section-merit-en {
  position: absolute;
  right: 3vw;
}
@media only screen and (max-width: 767px) {
  .section-merit-en {
    margin-top: -3rem;
  }
}
.section-merit-en img {
  width: 41vw;
}
@media only screen and (max-width: 767px) {
  .section-merit-en img {
    width: 60vw;
  }
}
.section-merit-header {
  max-width: 100rem;
  margin: 0 auto 6rem;
  position: relative;
  z-index: 1;
  padding-left: 9rem;
}
@media only screen and (max-width: 1023px) {
  .section-merit-header {
    margin-left: 6rem;
    padding-left: 10rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-header {
    margin-left: 2rem;
    padding-left: 5.5rem;
    margin-bottom: 4rem;
  }
}

.section-merit-header-catch {
  position: absolute;
  left: 0;
  top: -10rem;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 4.8rem;
  line-height: 1;
  font-weight: 700;
  height: 40rem;
  top: -11rem;
}
@media only screen and (max-width: 1023px) {
  .section-merit-header-catch {
    font-size: 3.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-header-catch {
    font-size: 2.4rem;
  }
}

.section-merit-header-ttl {
  text-align: left;
  line-height: 1.3;
}
.section-merit-header-ttl b {
  font-size: 4.8rem;
}
@media only screen and (max-width: 1023px) {
  .section-merit-header-ttl b {
    font-size: 3.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-header-ttl b {
    font-size: 2rem;
  }
}

.section-merit-header-ttl strong {
  font-size: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .section-merit-header-ttl strong {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-header-ttl strong {
    font-size: 3.2rem;
  }
}

.section-merit-header-ttl strong mark {
  position: relative;
  z-index: 1;
  color: #192b4c;
  background: none;
}
.section-merit-header-ttl strong mark:after {
  content: "";
  width: 100%;
  height: 1.2rem;
  background: #fff;
  position: absolute;
  left: 0;
  bottom: 1rem;
  z-index: -1;
}
@media only screen and (max-width: 1023px) {
  .section-merit-header-ttl strong mark:after {
    height: 1rem;
    bottom: .3rem;
  }
}
.section-merit-inner {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  max-width: 100rem;
  margin: 0 auto;
}
@media only screen and (max-width: 1023px) {
  .section-merit-inner {
    padding: 0 3vw;
  }
}
.section-merit-inner:before {
  content: "";
  position: absolute;
  left: -40vw;
  bottom: 16rem;
  z-index: 1;
  width: 59rem;
  height: 59rem;
  background: #ffae00;
  transform: rotate(45deg);
  opacity: 0.2;
}
@media only screen and (max-width: 767px) {
  .section-merit-inner:before {
    left: -60rem;
  }
}
.section-merit-inner:after {
  content: "";
  position: absolute;
  right: -20vw;
  bottom: -16rem;
  z-index: 1;
  width: 40rem;
  height: 40rem;
  background: #ffae00;
  transform: rotate(45deg);
  opacity: 0.2;
}
@media only screen and (max-width: 767px) {
  .section-merit-inner:after {
    right: -40rem;
  }
}
.section-merit-inner dl {
  width: 42.4rem;
  position: relative;
  z-index: 1;
  margin: 0 1rem 5rem;
  padding: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
}
@media only screen and (max-width: 1023px) {
  .section-merit-inner dl {
    width: 48%;
    margin: 0 0 4rem;
    padding: 3rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-inner dl {
    width: 96%;
    margin-bottom: 2.5rem;
    padding: 2.2rem;
  }
}

.section-merit-inner dl:nth-of-type(3) {
  margin: 0 25% 5rem;
}
@media only screen and (max-width: 1023px) {
  .section-merit-inner dl:nth-of-type(3) {
    margin: 0 0 4rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-inner dl:nth-of-type(3) {
    margin-bottom: 2.5rem;
  }
}

.section-merit-inner dl:before, .section-merit-inner dl:after {
  content: "";
  background: url("../../img/waku.svg") no-repeat;
  background-size: 6.4rem auto;
  width: 6.4rem;
  height: 6.4rem;
  position: absolute;
  top: 0;
}
.section-merit-inner dl:before {
  left: 0;
  transform: scale(-1, 1);
}
.section-merit-inner dl:after {
  right: 0;
}
.section-merit-inner dl dt {
  font-size: 2.8rem;
  padding-bottom: 1.5rem;
}
@media only screen and (max-width: 1023px) {
  .section-merit-inner dl dt {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-inner dl dt {
    font-size: 2rem;
  }
}

.section-merit-inner dl dt mark {
  color: #5575b2;
  background: #fff;
  padding: 0 1rem;
}
@media only screen and (max-width: 1023px) {
  .section-merit-inner dl dt mark {
    padding: 0 .5rem;
  }
}
.section-merit-inner dl dt:before, .section-merit-inner dl dt:after {
  content: "";
  background: url("../../img/waku.svg") no-repeat;
  background-size: 6.4rem auto;
  width: 6.4rem;
  height: 6.4rem;
  position: absolute;
  bottom: 0;
}
.section-merit-inner dl dt:before {
  left: 0;
  transform: scale(-1, -1);
}
.section-merit-inner dl dt:after {
  right: 0;
  transform: scale(1, -1);
}
.section-merit-inner dl:nth-of-type(1) dd:after {
  content: "Merit.01";
}
.section-merit-inner dl:nth-of-type(2) dd:after {
  content: "Merit.02";
}
.section-merit-inner dl:nth-of-type(3) dd:after {
  content: "Merit.03";
}
.section-merit-inner dl:nth-of-type(4) dd:after {
  content: "Merit.04";
}
.section-merit-inner dl:nth-of-type(5) dd:after {
  content: "Merit.05";
}
.section-merit-inner dl dd {
  height: 100%;
  font-size: 1.4rem;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .section-merit-inner dl dd {
    font-size: 1.3rem;
    line-height: 1.6;
  }
}
.section-merit-inner dl dd:after {
  content: "";
  position: absolute;
  right: 2rem;
  bottom: 1rem;
  font-size: 6rem;
  line-height: 1;
  color: rgba(255, 174, 0, 0.5);
  font-weight: 500;
  z-index: -1;
}
@media only screen and (max-width: 1023px) {
  .section-merit-inner dl dd:after {
    font-size: 5rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-merit-inner dl dd:after {
    font-size: 4rem;
  }
}

.section-features {
  position: relative;
  z-index: 1;
  padding: 10rem 2rem;
}
@media only screen and (max-width: 767px) {
  .section-features {
    padding: 6rem 1.5rem;
  }
}
.section-features:after {
  content: "";
  position: absolute;
  left: -40vw;
  bottom: -6rem;
  z-index: -1;
  width: 59rem;
  height: 59rem;
  background: #c7d3eb;
  transform: rotate(45deg);
  opacity: 0.2;
}
@media only screen and (max-width: 767px) {
  .section-features:after {
    left: -60rem;
  }
}
.section-features:before {
  content: "";
  position: absolute;
  right: -30vw;
  bottom: 16rem;
  z-index: -1;
  width: 59rem;
  height: 59rem;
  background: #c7d3eb;
  transform: rotate(45deg);
  opacity: 0.2;
}
@media only screen and (max-width: 767px) {
  .section-features:before {
    right: -50rem;
  }
}
.section-features-en {
  position: absolute;
  left: 3vw;
  top: 6rem;
  opacity: 0.5;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .section-features-en {
    left: -.5rem;
    top: 2rem;
  }
}
.section-features-en img {
  width: 10vw;
}
@media only screen and (max-width: 767px) {
  .section-features-en img {
    width: 5.5rem;
  }
}
.section-features-header {
  text-align: center;
  padding-bottom: 7rem;
}
@media only screen and (max-width: 767px) {
  .section-features-header {
    padding-bottom: 3rem;
  }
}
.section-features-header-ttl {
  font-size: 4rem;
  line-height: 1.3;
}
@media only screen and (max-width: 1023px) {
  .section-features-header-ttl {
    font-size: 3.2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-features-header-ttl {
    font-size: 2.4rem;
    line-height: 1.2;
  }
}

.section-features-header-ttl b {
  font-size: 4.8rem;
}
@media only screen and (max-width: 1023px) {
  .section-features-header-ttl b {
    font-size: 3.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-features-header-ttl b {
    font-size: 2.8rem;
  }
}

.section-features-header-ttl mark {
  color: #192b4c;
  background: none;
  position: relative;
  z-index: 1;
}
.section-features-header-ttl mark b {
  font-size: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .section-features-header-ttl mark b {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-features-header-ttl mark b {
    font-size: 3.8rem;
  }
}

.section-features-header-ttl mark:after {
  content: "";
  width: 100%;
  height: 1.2rem;
  background: #5575b2;
  position: absolute;
  left: 0;
  bottom: 1rem;
  z-index: -1;
}
@media only screen and (max-width: 1023px) {
  .section-features-header-ttl mark:after {
    height: 1rem;
    bottom: .3rem;
  }
}
.section-features-inner {
  max-width: 100rem;
  margin: 0 auto;
}
.section-features-inner .article-features {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .section-features-inner .article-features {
    position: relative;
    margin-bottom: 3rem;
    align-items: flex-start;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-features-inner .article-features {
    flex-direction: column;
    padding-bottom: 2rem;
  }
}

.section-features-inner .article-features:after {
  content: "";
  position: absolute;
  left: 6rem;
  bottom: 2rem;
  opacity: 0.2;
  font-size: 6rem;
  line-height: 1;
  color: #5575b2;
}
@media only screen and (max-width: 767px) {
  .section-features-inner .article-features:after {
    left: 0;
    font-size: 4rem;
    bottom: 0;
  }
}
.section-features-inner .article-features:nth-of-type(1):after {
  content: "Feature.01";
}
.section-features-inner .article-features:nth-of-type(2):after {
  content: "Feature.02";
}
.section-features-inner .article-features:nth-of-type(3):after {
  content: "Feature.03";
}
.section-features-inner .article-features:nth-of-type(4):after {
  content: "Feature.04";
}
.section-features-inner .article-features:nth-of-type(2n) {
  flex-direction: row-reverse;
}
@media only screen and (max-width: 767px) {
  .section-features-inner .article-features:nth-of-type(2n) {
    flex-direction: column;
  }
}
.section-features-inner .article-features:nth-of-type(2n):after {
  left: auto;
  right: 6rem;
}
@media only screen and (max-width: 767px) {
  .section-features-inner .article-features:nth-of-type(2n):after {
    right: 0;
  }
}
.section-features-inner .article-features:nth-of-type(2n) .article-features-inner {
  padding-left: 0;
  padding-right: 3.5rem;
}
@media only screen and (max-width: 767px) {
  .section-features-inner .article-features:nth-of-type(2n) .article-features-inner {
    padding: 0;
  }
}
@media only screen and (max-width: 1023px) {
  .section-features-inner .article-features:nth-of-type(2n) .article-features-inner h3 {
    left: 0;
  }
}
.section-features-inner .article-features-fig {
  width: 26rem;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .section-features-inner .article-features-fig {
    margin: 0 auto;
  }
}
.section-features-inner .article-features-inner {
  width: 100%;
  padding-left: 3.5rem;
}
@media only screen and (max-width: 1023px) {
  .section-features-inner .article-features-inner {
    padding-top: 10rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-features-inner .article-features-inner {
    padding: 0;
  }
}

.section-features-inner .article-features-inner h3 {
  font-size: 2.8rem;
  line-height: 1.3;
  padding-bottom: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
@media only screen and (max-width: 1023px) {
  .section-features-inner .article-features-inner h3 {
    font-size: 2.4rem;
    position: absolute;
    left: 20rem;
    top: 1.5rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-features-inner .article-features-inner h3 {
    width: 100%;
    position: static;
    font-size: 2rem;
    margin-top: -1rem;
    padding-bottom: 1rem;
  }
}

.section-features-inner .article-features-inner h3 mark {
  background: #5575b2;
  color: #fff;
  font-weight: 700;
  padding: 0 .5rem;
  margin-bottom: .5rem;
}
@media only screen and (max-width: 767px) {
  .section-features-inner .article-features-inner h3 mark {
    background: none;
    padding: 0;
    margin: 0;
  }
  .section-features-inner .article-features-inner h3 mark b {
    background: #5575b2;
    padding: 0 .5rem;
    display: inline-block;
    margin-bottom: .3rem;
  }
}
.section-features-inner .article-features-inner p {
  font-size: 1.4rem;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .section-features-inner .article-features-inner p {
    font-size: 1.3rem;
    line-height: 1.6;
  }
}
.section-step {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding: 10rem 3rem;
}
@media only screen and (max-width: 767px) {
  .section-step {
    padding: 6rem 1.5rem;
  }
}
.section-step-inner {
  width: 69rem;
}
@media only screen and (max-width: 1023px) {
  .section-step-inner {
    width: 100%;
    padding: 0 6vw;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-step-inner {
    padding: 0;
  }
}

.section-step-inner ol {
  padding-top: 2rem;
}
.section-step-inner ol li {
  height: 6rem;
  background: #c7d3eb;
  border-radius: 3rem;
  padding: .5rem;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.3;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 1023px) {
  .section-step-inner ol li {
    height: 6rem;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-step-inner ol li {
    height: 5rem;
    font-size: 1.6rem;
    line-height: 1.2;
    padding-right: 1rem;
  }
}

.section-step-inner ol li:before {
  content: "";
  width: 5rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  color: #5575b2;
  border-radius: 50%;
  margin-right: 1.5rem;
  background: #fff;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .section-step-inner ol li:before {
    width: 3.6rem;
    height: 3.6rem;
    font-size: 1.6rem;
    margin-right: .8rem;
  }
}
.section-step-inner ol li:nth-of-type(1):before {
  content: "01";
}
.section-step-inner ol li:nth-of-type(2):before {
  content: "02";
}
.section-step-inner ol li:nth-of-type(3):before {
  content: "03";
}
.section-step-inner ol li:nth-of-type(4):before {
  content: "04";
}
.section-step-country {
  width: 100%;
  padding-top: 10rem;
}
@media only screen and (max-width: 1023px) {
  .section-step-country {
    padding-top: 7rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-step-country {
    padding-top: 3rem;
  }
}

.section-step-country div {
  max-width: 85rem;
  margin: 0 auto;
  border-radius: .5rem;
  border: 0.1rem solid #c7d3eb;
  padding: 8rem 4rem 5rem;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .section-step-country div {
    padding: 4rem 2rem 0;
  }
}
.section-step-country div dt {
  position: absolute;
  width: 100%;
  left: 0;
  top: -1.4rem;
  text-align: center;
}
.section-step-country div dt mark {
  background: #fff;
  padding: 0 1rem;
  color: #5575b2;
  font-size: 2.8rem;
  line-height: 1;
}
@media only screen and (max-width: 1023px) {
  .section-step-country div dt mark {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-step-country div dt mark {
    font-size: 1.7rem;
  }
}

.section-step-country div dd ul {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .section-step-country div dd ul {
    flex-direction: column;
  }
}
.section-step-country div dd ul li {
  width: 100%;
  font-size: 1.8rem;
  text-align: center;
  font-weight: 700;
}
@media only screen and (max-width: 1023px) {
  .section-step-country div dd ul li {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-step-country div dd ul li {
    font-size: 1.4rem;
    margin-bottom: 2.5rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    text-align: left;
  }
}

.section-step-country div dd ul li figure {
  height: 10rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 2rem;
}
@media only screen and (max-width: 767px) {
  .section-step-country div dd ul li figure {
    padding-bottom: 0;
    margin-right: 1rem;
    height: auto;
    flex-shrink: 0;
  }
}
.section-step-country div dd ul li figure img {
  max-width: 8.3rem;
  max-height: 8.5rem;
}
@media only screen and (max-width: 767px) {
  .section-step-country div dd ul li figure img {
    width: 6rem;
  }
}
.section-step-header {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 100%;
  padding-right: 8rem;
}
@media only screen and (max-width: 1023px) {
  .section-step-header {
    padding: 0 0 3rem;
  }
}
.section-step-header-en {
  font-size: 8rem;
  color: #5575b2;
  font-weight: 700;
  line-height: 1.1;
}
@media only screen and (max-width: 1023px) {
  .section-step-header-en {
    font-size: 7rem;
  }
}
.section-step-header-ttl {
  font-size: 1.6rem;
}
@media only screen and (max-width: 1023px) {
  .section-step-header-ttl {
    font-size: 1.4rem;
  }
}
.section-point {
  padding: 12rem 2rem;
}
@media only screen and (max-width: 1023px) {
  .section-point {
    padding: 8rem 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point {
    padding: 6rem 1.5rem 4rem;
  }
}

.section-point-header {
  text-align: center;
  padding-bottom: 8rem;
}
@media only screen and (max-width: 767px) {
  .section-point-header {
    padding-bottom: 5rem;
  }
}
.section-point-header-logo {
  max-width: 17rem;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .section-point-header-logo {
    max-width: 10rem;
  }
}
.section-point-header-ttl {
  font-size: 1.6rem;
}
@media only screen and (max-width: 1023px) {
  .section-point-header-ttl {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point-header-ttl {
    font-size: 1.4rem;
  }
}

.section-point-header-en {
  font-size: 8rem;
  font-weight: 700;
  color: #5575b2;
  line-height: 1;
}
@media only screen and (max-width: 1023px) {
  .section-point-header-en {
    font-size: 7rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point-header-en {
    font-size: 6rem;
  }
}

.section-point-inner {
  display: flex;
  justify-content: center;
  max-width: 128rem;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .section-point-inner {
    flex-direction: column;
  }
}
.section-point-inner .article-point {
  width: 33%;
  padding: 0 2rem;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .section-point-inner .article-point {
    padding: 0 1rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point-inner .article-point {
    width: 100%;
    margin-bottom: 4rem;
  }
}

.section-point-inner .article-point:before {
  content: "";
  position: absolute;
  left: 0;
  top: -0.8em;
  color: #5575b2;
  font-size: 6rem;
  width: 100%;
  text-align: center;
  font-weight: 700;
}
@media only screen and (max-width: 1023px) {
  .section-point-inner .article-point:before {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point-inner .article-point:before {
    font-size: 3.6rem;
  }
}

.section-point-inner .article-point:nth-of-type(1):before {
  content: "01";
}
.section-point-inner .article-point:nth-of-type(2):before {
  content: "02";
}
.section-point-inner .article-point:nth-of-type(3):before {
  content: "03";
}
.section-point-inner .article-point-fig {
  width: 20rem;
  height: 20rem;
  background: #c7d3eb;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  margin: 0 auto 3rem;
}
@media only screen and (max-width: 1023px) {
  .section-point-inner .article-point-fig {
    width: 18rem;
    height: 18rem;
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point-inner .article-point-fig {
    width: 16rem;
    height: 16rem;
  }
}

.section-point-inner .article-point-fig img {
  width: 100%;
  max-width: 11rem;
}
@media only screen and (max-width: 1023px) {
  .section-point-inner .article-point-fig img {
    max-width: 9rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point-inner .article-point-fig img {
    max-width: 7rem;
  }
}

.section-point-inner .article-point-inner p {
  font-size: 1.4rem;
  line-height: 2;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .section-point-inner .article-point-inner p {
    font-size: 1.3rem;
    line-height: 1.6;
  }
}
.section-point-inner .article-point-ttl {
  font-size: 2.1rem;
  line-height: 1.5;
  text-align: center;
  padding-bottom: 2rem;
}
@media only screen and (max-width: 1023px) {
  .section-point-inner .article-point-ttl {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-point-inner .article-point-ttl {
    font-size: 1.6rem;
    padding-bottom: 1rem;
  }
}

.section-form {
  background: rgba(199, 211, 235, 0.2);
  padding: 12rem 2rem;
}
@media only screen and (max-width: 1023px) {
  .section-form {
    padding: 8rem 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-form {
    padding: 6rem 1.5rem 2rem;
  }
}

.section-form-header {
  text-align: center;
  padding-bottom: 7rem;
}
@media only screen and (max-width: 1023px) {
  .section-form-header {
    padding-bottom: 4rem;
  }
}
.section-form-header-en {
  font-size: 8rem;
  line-height: 1;
  color: #5575b2;
  font-weight: 700;
}
@media only screen and (max-width: 1023px) {
  .section-form-header-en {
    font-size: 7rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-form-header-en {
    font-size: 6rem;
  }
}

.section-form-header-ttl {
  font-size: 1.8rem;
}
@media only screen and (max-width: 1023px) {
  .section-form-header-ttl {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-form-header-ttl {
    font-size: 1.4rem;
  }
}

.section-form-txt {
  text-align: center;
  padding-bottom: 6rem;
}
@media only screen and (max-width: 1023px) {
  .section-form-txt {
    padding-bottom: 4rem;
  }
}
.section-form-txt p {
  font-size: 1.6rem;
  line-height: 2;
}
@media only screen and (max-width: 1023px) {
  .section-form-txt p {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .section-form-txt p {
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: left;
  }
}

.section-form-inner {
  max-width: 72rem;
  margin: 0 auto;
}
.section-form-inner dl {
  margin-bottom: 2.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .section-form-inner dl {
    flex-direction: column;
  }
}
.section-form-inner dl.required dt:before {
  content: "必須";
  border-radius: .3rem;
  background: #e82828;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  width: 3.8rem;
  height: 1.5rem;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .section-form-inner dl.required dt:before {
    margin-right: .5rem;
  }
}
.section-form-inner dl dt {
  width: 22rem;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-shrink: 0;
  font-size: 1.6rem;
  padding-right: 2rem;
}
@media only screen and (max-width: 767px) {
  .section-form-inner dl dt {
    width: 100%;
    justify-content: flex-start;
    padding: 0 0 .5rem;
  }
}
.section-form-inner dl dd {
  width: 100%;
}
.section-form-inner dl dd input[type="text"], .section-form-inner dl dd input[type="email"], .section-form-inner dl dd input[type="tel"] {
  border: 0.1rem solid #c7d3eb;
  border-radius: .3rem;
  background: #fff;
  padding: 1.5rem;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .section-form-inner dl dd input[type="text"], .section-form-inner dl dd input[type="email"], .section-form-inner dl dd input[type="tel"] {
    padding: 1rem;
    font-size: 1.6rem;
  }
}
.section-form-inner dl dd .select-after {
  width: 2rem;
  text-align: center;
}
.section-form-inner dl dd .form-select {
  height: 5.4rem;
  overflow: hidden;
  border-radius: .3rem;
  border: 1px solid #c7d3eb;
  background: #fff;
  position: relative;
}
.section-form-inner dl dd .form-select.select-year, .section-form-inner dl dd .form-select.select-day, .section-form-inner dl dd .form-select.select-month {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .section-form-inner dl dd .form-select {
    height: 4.6rem;
  }
}
.section-form-inner dl dd .form-select.error {
  border-color: #ffd02c;
}
.section-form-inner dl dd .form-select:after {
  width: 1.2rem;
  height: 1.2rem;
  line-height: 1;
  text-align: center;
  content: "\e5cf";
  font-family: 'Material Icons';
  color: #5575b2;
  background: #fff;
  top: 50%;
  margin-top: -.7rem;
  position: absolute;
  z-index: 1;
  font-size: 1.8rem;
  right: 2rem;
}
@media only screen and (max-width: 767px) {
  .section-form-inner dl dd .form-select:after {
    font-size: 1.4rem;
    right: 1rem;
  }
}
.section-form-inner dl dd .form-select > select {
  width: 130%;
  line-height: 5.2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0 3rem 0 1.5rem;
  background: transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
  z-index: 2;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .section-form-inner dl dd .form-select > select {
    line-height: 4.2rem;
    padding: 0 2.5rem 0 1rem;
  }
}
.section-form-inner dl dd .form-select > select::-ms-expand {
  display: none;
}
.section-form-inner dl dd .form-select > select:focus {
  border: none;
  outline: none;
  box-shadow: none;
}
.section-form-inner dl dd ul {
  display: flex;
  justify-content: space-between;
}
.section-form-inner dl dd ul li {
  padding: .3rem;
}
.section-form-inner dl dd ul li.form-input {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.section-form-inner .wdg_note_registration {
  font-size: 1.6rem;
  text-align: center;
  padding: 4rem 0;
}
@media only screen and (max-width: 767px) {
  .section-form-inner .wdg_note_registration {
    font-size: 1.4rem;
    padding: 0 0 2rem 0;
    text-align: left;
  }
}
.section-form-inner-registration {
  padding-top: 4rem;
}
@media only screen and (max-width: 767px) {
  .section-form-inner-registration {
    padding-top: 2rem;
    font-size: 1.1rem;
  }
}
.section-form-inner-registration ul {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2.5rem 0;
}
.section-form-inner-registration ul li {
  margin-right: 1.5rem;
}
.section-form-inner-registration ul li img {
  border-radius: 50%;
  width: 7.5rem;
}
.section-form-inner-btn button {
  border: none;
  outline: none;
  width: 33rem;
  height: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #5575b2;
  color: #fff;
  font-weight: 700;
  border-radius: 10rem;
  font-size: 1.6rem;
  margin: 0 auto;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .section-form-inner-btn button {
    font-size: 1.5rem;
    width: 26rem;
    height: 5rem;
  }
}
@media only screen and (min-width: 1024px) {
  .section-form-inner-btn button:hover {
    background: #192b4c;
  }
}

.div-entry {
  background: url("../../img/bg_tech_counseling.jpg") no-repeat 50% 50%;
  background-size: cover;
  height: 44rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .div-entry {
    height: 38rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-entry {
    height: 28rem;
  }
}

.div-entry p {
  font-size: 3.6rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 1023px) {
  .div-entry p {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-entry p {
    font-size: 2rem;
  }
}

.div-entry p mark {
  background: #fff;
  color: #5575b2;
  padding: 0 1rem;
}
@media only screen and (max-width: 767px) {
  .div-entry p mark {
    padding: 0.5rem;
    margin-bottom: 2.5rem;
    line-height: 2;
  }
}
.div-entry p b {
  font-size: 4rem;
  color: #192b4c;
}
@media only screen and (max-width: 1023px) {
  .div-entry p b {
    font-size: 3.4rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-entry p b {
    font-size: 2rem;
    padding-right: .5rem;
  }
}

.div-entry p span {
  font-size: 3.2rem;
}
@media only screen and (max-width: 1023px) {
  .div-entry p span {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-entry p span {
    font-size: 1.7rem;
    display: inline-block;
    padding-left: 0.5rem;
  }
}

.div-entry-btn {
  padding-top: 5rem;
}
@media only screen and (max-width: 1023px) {
  .div-entry-btn {
    padding-top: 3.5rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-entry-btn {
    width: 100%;
    padding: 2rem 5% 0;
  }
}

.div-entry-btn a {
  width: 43.8rem;
  height: 7.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.4rem;
  font-weight: 700;
  background: linear-gradient(-25deg, #e82828 0%, #ae1111 100%);
  color: #fff;
  border-radius: 10rem;
  box-shadow: 0 0 0.5rem 0 rgba(25, 43, 76, 0.2);
  z-index: 1;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .div-entry-btn a {
    width: 100%;
    height: 6rem;
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .div-entry-btn a:after {
    content: "";
    width: 0%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    transition: all .5s;
    background: #fff;
    z-index: -1;
  }
  .div-entry-btn a:hover {
    color: #192b4c;
  }
  .div-entry-btn a:hover:after {
    width: 100%;
  }
}
.div-entry-btn a span {
  font-size: 3.6rem;
  margin-right: .5rem;
}
@media only screen and (max-width: 767px) {
  .div-entry-btn a span {
    font-size: 2.8rem;
  }
}
.div-message {
  background: url("../../img/bg_tech_ok.jpg") no-repeat 100% 50%;
  background-size: cover;
  padding: 12rem 10vw 10rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
@media only screen and (max-width: 1023px) {
  .div-message {
    padding: 12rem 3rem 4rem 3rem;
    background-position: 50% 50%;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-message {
    padding: 22rem 1.5rem 1.5rem;
    background-position: 50% 0%;
    background-color: #192b4c;
    background-size: auto 20rem;
  }
}

.div-message p {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 700;
  text-shadow: 0 0 2rem rgba(255, 255, 255, 0.5);
  padding-bottom: 4rem;
}
@media only screen and (max-width: 1023px) {
  .div-message p {
    font-size: 1.4rem;
    padding-bottom: 2rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-message p {
    font-size: 1.3rem;
    line-height: 1.3;
    padding-bottom: 1.5rem;
    color: #fff;
    text-shadow: none;
  }
}

.div-message p strong {
  font-size: 3.6rem;
  line-height: 1.5;
  display: inline-block;
}
@media only screen and (max-width: 1023px) {
  .div-message p strong {
    font-size: 2.8rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-message p strong {
    font-size: 1.8rem;
  }
}

.div-message dl {
  background: rgba(25, 43, 76, 0.9);
  max-width: 62rem;
  padding: 4rem;
  color: #fff;
}
@media only screen and (max-width: 1023px) {
  .div-message dl {
    padding: 3rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-message dl {
    padding: 1.5rem;
    background: #fff;
    color: #192b4c;
  }
}

.div-message dl dt {
  font-size: 3.2rem;
  line-height: 1.5;
  text-align: left;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 1023px) {
  .div-message dl dt {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-message dl dt {
    font-size: 1.6rem;
  }
}

.div-message dl dd {
  font-size: 1.4rem;
  line-height: 2;
}
@media only screen and (max-width: 1023px) {
  .div-message dl dd {
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 1023px) and (max-width: 767px) {
  .div-message dl dd {
    font-size: 1.2rem;
    line-height: 1.3;
  }
}
