h1 {
  height: 0;
  opacity: 0;
}

.asj {
  opacity: 0;
}

section {
  color: rgba(0, 0, 0, 0);
}
section .container {
  position: relative;
}
section .wrap {
  position: relative;
}
section .wrap > picture img {
  width: 100%;
}
section .wrap .content-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.bg01-section {
  background-color: #fff;
}
@media (min-width: 768px) {
  .bg01-section {
    margin-top: 80px;
  }
}
@media (max-width: 767px) {
  .bg01-section {
    margin-top: 56px;
  }
}
.bg01-section .content-wrap h2 {
  position: absolute;
  top: 28.5%;
  left: 10%;
  font-size: 56px;
  font-weight: 700;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg01-section .content-wrap h2 {
    font-size: 4vw;
  }
}
@media all and (max-width: 767px) {
  .bg01-section .content-wrap h2 {
    top: 6%;
    left: 15%;
    font-size: 8vw;
  }
}
.bg01-section .content-wrap h3 {
  position: absolute;
  top: 33.8%;
  left: 7%;
  font-size: 90px;
  font-weight: 700;
  letter-spacing: 0.07em;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg01-section .content-wrap h3 {
    font-size: 6.4285714286vw;
  }
}
@media all and (max-width: 767px) {
  .bg01-section .content-wrap h3 {
    top: 9.8%;
    left: 15.7%;
    font-size: 10.7142857143vw;
  }
}
.bg01-section .content-wrap h3 span {
  font-size: 140px;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg01-section .content-wrap h3 span {
    font-size: 10vw;
  }
}
@media all and (max-width: 767px) {
  .bg01-section .content-wrap h3 span {
    font-size: 17.8571428571vw;
  }
}
.bg01-section .content-wrap h3 i {
  font-size: 50px;
  vertical-align: text-top;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg01-section .content-wrap h3 i {
    font-size: 3.5714285714vw;
  }
}
@media all and (max-width: 767px) {
  .bg01-section .content-wrap h3 i {
    font-size: 7.1428571429vw;
  }
}
.bg01-section .content-wrap .s_text {
  position: absolute;
  top: 94.5%;
  left: 57.3%;
  color: #454545;
  font-size: 12px;
  letter-spacing: -0.04em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg01-section .content-wrap .s_text {
    font-size: 0.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg01-section .content-wrap .s_text {
    top: 95.3%;
    left: 9.7%;
    font-size: 1.8571428571vw;
    letter-spacing: -0.02em;
  }
}

.bg02-section h2 {
  text-align: center;
  position: absolute;
  top: 4%;
  left: 26.5%;
  font-size: 68px;
  font-weight: 700;
  color: #003eab;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg02-section h2 {
    font-size: 5vw;
  }
}
@media all and (max-width: 767px) {
  .bg02-section h2 {
    top: 4%;
    left: 9.4%;
    font-size: 8.5714285714vw;
    text-align: left;
    letter-spacing: 0;
  }
}
.bg02-section .subtitle {
  font-size: 54px;
  font-weight: 700;
  color: #fff;
  line-height: 1.6;
  letter-spacing: -0.06em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg02-section .subtitle {
    font-size: 3.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg02-section .subtitle {
    font-size: 4.6428571429vw;
  }
}
.bg02-section .des {
  font-size: 30px;
  color: #fff;
  line-height: 1.3;
  letter-spacing: -0.02em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg02-section .des {
    font-size: 2.1428571429vw;
  }
}
@media all and (max-width: 767px) {
  .bg02-section .des {
    font-size: 3.2142857143vw;
    letter-spacing: -0.03em;
  }
}
.bg02-section .space {
  display: none;
}
@media all and (max-width: 767px) {
  .bg02-section .space {
    display: inline;
  }
}
.bg02-section .txt_1 {
  position: absolute;
  top: 32%;
  left: 9.5%;
}
.bg02-section .txt_1 .des {
  -webkit-transform: translateX(-2%);
          transform: translateX(-2%);
}
@media all and (max-width: 767px) {
  .bg02-section .txt_1 {
    text-align: right;
    top: 30.6%;
    left: 57.7%;
  }
  .bg02-section .txt_1 .des {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.bg02-section .txt_2 {
  text-align: center;
  position: absolute;
  top: 32%;
  left: 39%;
}
@media all and (max-width: 767px) {
  .bg02-section .txt_2 {
    text-align: right;
    top: 53.5%;
    left: 39%;
  }
}
.bg02-section .txt_3 {
  text-align: center;
  position: absolute;
  top: 32%;
  left: 69.5%;
}
@media all and (max-width: 767px) {
  .bg02-section .txt_3 {
    text-align: right;
    top: 77%;
    left: 60%;
  }
}

.bg03-section h2 {
  text-align: center;
  position: absolute;
  top: 29%;
  left: 13.2%;
  font-size: 68px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg03-section h2 {
    font-size: 5vw;
  }
}
@media all and (max-width: 767px) {
  .bg03-section h2 {
    top: 6%;
    left: 9.4%;
    font-size: 8.5714285714vw;
    text-align: left;
    letter-spacing: 0;
  }
}
.bg03-section .box {
  text-align: right;
}
.bg03-section .box .txt_num {
  font-size: 88px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg03-section .box .txt_num {
    font-size: 6.2857142857vw;
  }
}
@media all and (max-width: 767px) {
  .bg03-section .box .txt_num {
    font-size: 4.6428571429vw;
  }
}
.bg03-section .box .content {
  position: relative;
  z-index: 0;
  display: inline-block;
  font-size: 60px;
  font-weight: 500;
  color: #003eab;
  line-height: 1.2;
  letter-spacing: -0.08em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg03-section .box .content {
    font-size: 4.2857142857vw;
  }
}
@media all and (max-width: 767px) {
  .bg03-section .box .content {
    font-size: 7.5714285714vw;
    letter-spacing: -0.03em;
  }
}
.bg03-section .box .content::after {
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
  content: attr(data-stroke);
  -webkit-text-stroke: 0.15em #ffffff;
  color: transparent;
  z-index: -1;
}
@media all and (max-width: 767px) {
  .bg03-section .box .content::after {
    display: none;
  }
}
.bg03-section .box span {
  position: relative;
  font-size: 16px;
  color: #003eab;
  vertical-align: 180%;
  letter-spacing: 0;
  z-index: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg03-section .box span {
    font-size: 1.1428571429vw;
  }
}
@media all and (max-width: 767px) {
  .bg03-section .box span {
    font-size: 2.2857142857vw;
    vertical-align: 140%;
    letter-spacing: -0.02em;
  }
}
.bg03-section .box span::after {
  position: absolute;
  content: attr(data-stroke);
  -webkit-text-stroke: 0.15em #ffffff;
  color: transparent;
  z-index: -1;
  top: 0;
  left: 0;
  white-space: nowrap;
}
@media all and (max-width: 767px) {
  .bg03-section .box span::after {
    display: none;
  }
}
.bg03-section .box_1 {
  position: absolute;
  top: 56.6%;
  left: 6.8%;
}
@media all and (max-width: 767px) {
  .bg03-section .box_1 {
    top: 44%;
    left: 18%;
  }
}
.bg03-section .box_2 {
  position: absolute;
  top: 56.6%;
  left: 24%;
}
.bg03-section .box_2 .content {
  letter-spacing: -0.03em;
}
.bg03-section .box_2 span {
  position: relative;
  -webkit-transform: translateX(10%);
          transform: translateX(10%);
  vertical-align: 160%;
}
@media all and (max-width: 767px) {
  .bg03-section .box_2 {
    top: 61.2%;
    left: 10%;
  }
  .bg03-section .box_2 span {
    font-size: 3.1428571429vw;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    vertical-align: 110%;
  }
}
.bg03-section .box_3 {
  position: absolute;
  top: 56.6%;
  left: 46.1%;
}
.bg03-section .box_3 .content {
  letter-spacing: -0.04em;
}
@media all and (max-width: 767px) {
  .bg03-section .box_3 {
    top: 83.4%;
    left: 10%;
  }
  .bg03-section .box_3 span {
    vertical-align: 170%;
  }
}
.bg03-section .s_text {
  position: absolute;
  top: 44%;
  left: 55.3%;
  font-size: 18px;
  line-height: 1.2;
  color: #003eab;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg03-section .s_text {
    font-size: 1.2857142857vw;
  }
}
@media all and (max-width: 767px) {
  .bg03-section .s_text {
    font-size: 2.8571428571vw;
    top: 72.8%;
    left: 21.6%;
    letter-spacing: 0.08em;
  }
}
.bg03-section .s_text .content {
  position: relative;
  z-index: 0;
}
.bg03-section .s_text .content::after {
  position: absolute;
  content: attr(data-stroke);
  -webkit-text-stroke: 0.15em #ffffff;
  z-index: -1;
  color: transparent;
  top: 0;
  left: 0;
}
@media all and (max-width: 767px) {
  .bg03-section .s_text .content::after {
    display: none;
  }
}

.bg04-section h2 {
  position: absolute;
  top: 0.8%;
  left: 16%;
  font-size: 80px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: #003eab;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg04-section h2 {
    font-size: 5.7142857143vw;
  }
}
@media all and (max-width: 767px) {
  .bg04-section h2 {
    text-align: center;
    top: 1%;
    left: 13.4%;
    font-size: 10.7142857143vw;
    letter-spacing: -0.02em;
  }
}
.bg04-section h2 span {
  color: #271d16;
}
.bg04-section .box .title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg04-section .box .title {
    font-size: 1.2857142857vw;
  }
}
@media all and (max-width: 767px) {
  .bg04-section .box .title {
    font-size: 2.5714285714vw;
  }
}
.bg04-section .box .txt {
  display: inline-block;
  font-size: 40px;
  font-weight: 700;
  color: #000;
  line-height: 1.2;
  letter-spacing: 0.03em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg04-section .box .txt {
    font-size: 2.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg04-section .box .txt {
    font-size: 4.2857142857vw;
    letter-spacing: 0.02em;
  }
}
.bg04-section .box span {
  display: inline-block;
  font-size: 14px;
  color: #000;
  vertical-align: top;
  -webkit-transform: translate(-50%, -10%);
          transform: translate(-50%, -10%);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg04-section .box span {
    font-size: 1vw;
  }
}
@media all and (max-width: 767px) {
  .bg04-section .box span {
    font-size: 2vw;
    -webkit-transform: translate(-76%, -2%);
            transform: translate(-76%, -2%);
  }
}
.bg04-section .box_1 {
  position: absolute;
  top: 40.5%;
  left: 3%;
}
@media all and (max-width: 767px) {
  .bg04-section .box_1 {
    top: 47%;
    left: 2.1%;
  }
}
.bg04-section .box_2 {
  position: absolute;
  top: 31.3%;
  left: 17.9%;
}
@media all and (max-width: 767px) {
  .bg04-section .box_2 {
    top: 38.2%;
    left: 18.1%;
  }
}
.bg04-section .box_2 span {
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media all and (max-width: 767px) {
  .bg04-section .box_2 span {
    -webkit-transform: translate(-76%, -2%);
            transform: translate(-76%, -2%);
  }
}
.bg04-section .box_3 {
  position: absolute;
  top: 25.5%;
  left: 33.5%;
}
@media all and (max-width: 767px) {
  .bg04-section .box_3 {
    top: 34%;
    left: 37%;
  }
}
.bg04-section .box_3 span {
  -webkit-transform: translate(-50%, -30%);
          transform: translate(-50%, -30%);
}
@media all and (max-width: 767px) {
  .bg04-section .box_3 span {
    -webkit-transform: translate(-76%, -2%);
            transform: translate(-76%, -2%);
  }
}
.bg04-section .box_4 {
  position: absolute;
  top: 21.8%;
  left: 49.3%;
}
@media all and (max-width: 767px) {
  .bg04-section .box_4 {
    top: 31%;
    left: 56.1%;
  }
}
.bg04-section .box_5 {
  position: absolute;
  top: 19.6%;
  left: 64.9%;
}
@media all and (max-width: 767px) {
  .bg04-section .box_5 {
    top: 29.4%;
    left: 76.8%;
  }
}
.bg04-section .box_5 span {
  -webkit-transform: translate(-50%, 10%);
          transform: translate(-50%, 10%);
}
@media all and (max-width: 767px) {
  .bg04-section .box_5 span {
    -webkit-transform: translate(-102%, -2%);
            transform: translate(-102%, -2%);
  }
}

.bg05-section h2 {
  font-size: 93px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: #003eab;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg05-section h2 {
    font-size: 6.6428571429vw;
  }
}
@media all and (max-width: 767px) {
  .bg05-section h2 {
    font-size: 14.2857142857vw;
    letter-spacing: -0.02em;
  }
}
.bg05-section .title_1 {
  position: absolute;
  top: 8%;
  left: 7.5%;
}
@media all and (max-width: 767px) {
  .bg05-section .title_1 {
    top: 3%;
    left: 8%;
  }
}
.bg05-section .title_2 {
  position: absolute;
  top: 28%;
  left: 78%;
}
@media all and (max-width: 767px) {
  .bg05-section .title_2 {
    top: 31%;
    left: 60%;
  }
}
.bg05-section .title_3 {
  position: absolute;
  top: 54%;
  left: 7.5%;
}
@media all and (max-width: 767px) {
  .bg05-section .title_3 {
    top: 63%;
    left: 8%;
  }
}
.bg05-section .box .title {
  font-size: 54px;
  font-weight: 700;
  line-height: 1.2;
  color: #003eab;
  letter-spacing: 0.02em;
  margin-bottom: 0.2em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg05-section .box .title {
    font-size: 3.9285714286vw;
  }
}
@media all and (max-width: 767px) {
  .bg05-section .box .title {
    font-size: 7.1428571429vw;
    line-height: 1.25;
  }
}
.bg05-section .box .txt_1 {
  font-size: 32px;
  color: #000;
  line-height: 1.2;
  letter-spacing: 0.08em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg05-section .box .txt_1 {
    font-size: 2.2857142857vw;
  }
}
@media all and (max-width: 767px) {
  .bg05-section .box .txt_1 {
    font-size: 4.8571428571vw;
    letter-spacing: 0;
    line-height: 1.1;
  }
}
.bg05-section .box .txt_2 {
  font-size: 32px;
  color: #000;
  line-height: 1.3;
  letter-spacing: 0.08em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg05-section .box .txt_2 {
    font-size: 2.2857142857vw;
  }
}
@media all and (max-width: 767px) {
  .bg05-section .box .txt_2 {
    font-size: 4.8571428571vw;
    letter-spacing: 0;
    line-height: 1.1;
  }
}
.bg05-section .box span {
  display: inline-block;
  font-size: 12px;
  color: #000;
  vertical-align: top;
  -webkit-transform: translate(0, 20%);
          transform: translate(0, 20%);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg05-section .box span {
    font-size: 0.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg05-section .box span {
    font-size: 1.7142857143vw;
  }
}
.bg05-section .box_1 {
  position: absolute;
  top: 19.3%;
  left: 24.5%;
}
@media all and (max-width: 767px) {
  .bg05-section .box_1 {
    top: 13.5%;
    left: 43.1%;
  }
}
.bg05-section .box_1 .title {
  letter-spacing: 0.06em;
  margin-bottom: 0.25em;
}
.bg05-section .box_1 .txt_1 {
  font-size: 34px;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg05-section .box_1 .txt_1 {
    font-size: 2.4285714286vw;
  }
}
@media all and (max-width: 767px) {
  .bg05-section .box_1 .txt_1 {
    font-size: 5vw;
    letter-spacing: -0.03em;
    line-height: 1.1;
  }
}
@media all and (max-width: 767px) {
  .bg05-section .box_1 .txt_1 span {
    font-size: 2vw;
    -webkit-transform: translate(0, -10%);
            transform: translate(0, -10%);
  }
}
.bg05-section .box_1 .txt_2 {
  font-size: 34px;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg05-section .box_1 .txt_2 {
    font-size: 2.4285714286vw;
  }
}
@media all and (max-width: 767px) {
  .bg05-section .box_1 .txt_2 {
    font-size: 5vw;
    letter-spacing: -0.03em;
    line-height: 1.1;
  }
}
.bg05-section .box_2 {
  position: absolute;
  top: 38.3%;
  left: 48%;
  text-align: right;
}
@media all and (max-width: 767px) {
  .bg05-section .box_2 {
    top: 41.5%;
    left: 3.7%;
  }
}
.bg05-section .box_2 .txt_2 {
  -webkit-transform: translateX(1.5%);
          transform: translateX(1.5%);
}
.bg05-section .box_3 {
  position: absolute;
  top: 67%;
  left: 24.5%;
}
@media all and (max-width: 767px) {
  .bg05-section .box_3 {
    top: 75%;
    left: 43%;
  }
}
.bg05-section .box_3 .title {
  margin-bottom: 0.3em;
}
@media all and (max-width: 767px) {
  .bg05-section .box_3 .title {
    letter-spacing: 0.05em;
  }
}
.bg05-section .box_3 .txt_1 {
  letter-spacing: 0.1em;
  margin-bottom: 0.1em;
}
@media all and (max-width: 767px) {
  .bg05-section .box_3 .txt_1 {
    letter-spacing: 0;
  }
}
.bg05-section .box_3 .txt_2 {
  letter-spacing: 0.1em;
}
@media all and (max-width: 767px) {
  .bg05-section .box_3 .txt_2 {
    letter-spacing: 0;
  }
}

.bg06-section h2 {
  position: absolute;
  top: 6.8%;
  left: 27%;
  font-size: 80px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: #003eab;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg06-section h2 {
    font-size: 5.7142857143vw;
  }
}
@media all and (max-width: 767px) {
  .bg06-section h2 {
    text-align: center;
    top: 6.6%;
    left: 9.2%;
    font-size: 10vw;
    letter-spacing: -0.01em;
  }
}
.bg06-section h2 span {
  color: #271d16;
}
.bg06-section .box .title {
  font-size: 68px;
  font-weight: 700;
  line-height: 1.2;
  color: #030e92;
  letter-spacing: 0.02em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg06-section .box .title {
    font-size: 4.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg06-section .box .title {
    font-size: 7.8571428571vw;
    line-height: 1.25;
    letter-spacing: -0.02em;
  }
}
.bg06-section .box .title span {
  display: inline-block;
  font-size: 84px;
  font-weight: 700;
  line-height: 1.2;
  color: #030e92;
  letter-spacing: 0.1em;
  -webkit-transform: translateY(5%);
          transform: translateY(5%);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg06-section .box .title span {
    font-size: 6vw;
  }
}
@media all and (max-width: 767px) {
  .bg06-section .box .title span {
    font-size: 8.9285714286vw;
    -webkit-transform: translateY(4%);
            transform: translateY(4%);
    line-height: 1.25;
  }
}
.bg06-section .box .title i {
  display: inline-block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  color: #030e92;
  letter-spacing: -0.04em;
  -webkit-transform: translate(-20%, -250%);
          transform: translate(-20%, -250%);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg06-section .box .title i {
    font-size: 1.1428571429vw;
  }
}
@media all and (max-width: 767px) {
  .bg06-section .box .title i {
    font-size: 2.2857142857vw;
    -webkit-transform: translate(-20%, -196%);
            transform: translate(-20%, -196%);
  }
}
.bg06-section .box .txt {
  font-size: 46px;
  color: #000e98;
  line-height: 1.2;
  letter-spacing: 0.04em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg06-section .box .txt {
    font-size: 3.2857142857vw;
  }
}
@media all and (max-width: 767px) {
  .bg06-section .box .txt {
    font-size: 4.8571428571vw;
    letter-spacing: 0.12em;
    line-height: 1.3;
  }
}
.bg06-section .box_1 {
  position: absolute;
  top: 24.8%;
  left: 37.5%;
}
@media all and (max-width: 767px) {
  .bg06-section .box_1 {
    top: 22.1%;
    left: 28.1%;
  }
}
.bg06-section .box_2 {
  position: absolute;
  top: 43.5%;
  left: 24%;
}
@media all and (max-width: 767px) {
  .bg06-section .box_2 {
    top: 38.8%;
    left: 16.7%;
  }
}
.bg06-section .box_2 .title {
  margin-bottom: 0.05em;
}
.bg06-section .box_2 .title span {
  letter-spacing: 0.05em;
}
.bg06-section .box_3 {
  position: absolute;
  top: 66.2%;
  left: 17.5%;
}
@media all and (max-width: 767px) {
  .bg06-section .box_3 {
    top: 58.5%;
    left: 16%;
  }
}
.bg06-section .box_3 .title {
  margin-bottom: 0.08em;
}
@media all and (max-width: 767px) {
  .bg06-section .box_3 .title {
    margin-bottom: 0.04em;
  }
}

.bg07-section h2 {
  position: absolute;
  top: 79.5%;
  left: 33.3%;
  font-size: 52px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg07-section h2 {
    font-size: 3.7142857143vw;
  }
}
@media all and (max-width: 767px) {
  .bg07-section h2 {
    top: 68.6%;
    left: 23.2%;
    font-size: 6.4285714286vw;
  }
}
.bg07-section .txt_1 {
  position: absolute;
  top: 12%;
  left: 13.5%;
  font-size: 40px;
  font-weight: 700;
  color: #013fab;
  line-height: 1.2;
  letter-spacing: -0.04em;
  -webkit-filter: drop-shadow(1px 1px 3px #fff);
          filter: drop-shadow(1px 1px 3px #fff);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg07-section .txt_1 {
    font-size: 2.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg07-section .txt_1 {
    font-size: 3.2142857143vw;
    line-height: 1.3;
    top: 10%;
    left: 10%;
  }
}
.bg07-section .txt_2 {
  position: absolute;
  top: 12%;
  left: 77.3%;
  font-size: 40px;
  font-weight: 700;
  color: #013fab;
  line-height: 1.2;
  letter-spacing: -0.04em;
  -webkit-filter: drop-shadow(1px 1px 3px #fff);
          filter: drop-shadow(1px 1px 3px #fff);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg07-section .txt_2 {
    font-size: 2.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg07-section .txt_2 {
    font-size: 3.2142857143vw;
    line-height: 1.3;
    top: 10%;
    left: 80%;
  }
}

.bg08-section .pro {
  text-align: center;
}
.bg08-section .pro .title {
  font-size: 86px;
  font-weight: 500;
  color: #001398;
  line-height: 1.55;
  letter-spacing: 0.03em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg08-section .pro .title {
    font-size: 6.1428571429vw;
  }
}
@media all and (max-width: 767px) {
  .bg08-section .pro .title {
    font-size: 8.5714285714vw;
    top: 10%;
    left: 10%;
  }
}
.bg08-section .pro .txt {
  font-size: 66px;
  font-weight: 700;
  color: #001398;
  line-height: 1.2;
  letter-spacing: 0.02em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg08-section .pro .txt {
    font-size: 4.7142857143vw;
  }
}
@media all and (max-width: 767px) {
  .bg08-section .pro .txt {
    font-size: 6.5714285714vw;
    top: 10%;
    left: 10%;
    letter-spacing: 0.03em;
  }
}
.bg08-section .pro span {
  display: inline-block;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.2;
  color: #001398;
  -webkit-transform: translate(0, -105%);
          transform: translate(0, -105%);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg08-section .pro span {
    font-size: 2.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg08-section .pro span {
    font-size: 4.2857142857vw;
    -webkit-transform: translate(-26%, -94%);
            transform: translate(-26%, -94%);
  }
}
.bg08-section .pro_1 {
  position: absolute;
  top: 8.7%;
  left: 13.5%;
}
@media all and (max-width: 767px) {
  .bg08-section .pro_1 {
    top: 5.3%;
    left: 11.4%;
  }
}
.bg08-section .pro_1 .title {
  color: #0fad93;
}
.bg08-section .pro_1 .txt {
  -webkit-transform: translateX(1%);
          transform: translateX(1%);
}
@media all and (max-width: 767px) {
  .bg08-section .pro_1 .txt {
    -webkit-transform: translateX(2%);
            transform: translateX(2%);
  }
}
.bg08-section .pro_2 {
  position: absolute;
  top: 48.4%;
  left: 56%;
}
@media all and (max-width: 767px) {
  .bg08-section .pro_2 {
    top: 48.1%;
    left: 48.9%;
  }
}
.bg08-section .box .tone {
  margin-bottom: 1.7em;
}
@media all and (max-width: 767px) {
  .bg08-section .box .tone {
    margin-bottom: 0.4em;
  }
}
.bg08-section .box .title {
  display: inline-block;
  font-size: 43px;
  font-weight: 500;
  color: #000;
  line-height: 1.2;
  letter-spacing: -0.04em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg08-section .box .title {
    font-size: 2.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg08-section .box .title {
    font-size: 4.4285714286vw;
  }
}
.bg08-section .box .txt {
  display: inline-block;
  font-size: 42px;
  color: #000;
  line-height: 1.2;
  letter-spacing: 0.04em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg08-section .box .txt {
    font-size: 2.8571428571vw;
  }
}
@media all and (max-width: 767px) {
  .bg08-section .box .txt {
    font-size: 4.2857142857vw;
    -webkit-transform: translateX(-3%);
            transform: translateX(-3%);
  }
}
.bg08-section .box_1 {
  position: absolute;
  top: 23.5%;
  left: 18.7%;
}
@media all and (max-width: 767px) {
  .bg08-section .box_1 {
    top: 15.2%;
    left: 18.3%;
  }
}
.bg08-section .box_2 {
  position: absolute;
  top: 63.6%;
  left: 61.5%;
}
@media all and (max-width: 767px) {
  .bg08-section .box_2 {
    top: 58.3%;
    left: 56%;
  }
}
.bg08-section .box_2 .tone {
  margin-bottom: 1.3em;
}
@media all and (max-width: 767px) {
  .bg08-section .box_2 .tone {
    margin-bottom: 0.2em;
  }
}

.bg09-section .type_1 {
  position: absolute;
  top: 1.5%;
  left: 24.9%;
}
@media all and (max-width: 767px) {
  .bg09-section .type_1 {
    top: 2.5%;
    left: 27.9%;
  }
}
.bg09-section .type_2 {
  position: absolute;
  top: 1.5%;
  left: 86%;
}
@media all and (max-width: 767px) {
  .bg09-section .type_2 {
    top: 2.5%;
    left: 81%;
  }
}
.bg09-section .type {
  white-space: nowrap;
  font-size: 36px;
  color: #000000;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  line-height: 1.2;
  letter-spacing: 0.16em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg09-section .type {
    font-size: 2.7142857143vw;
  }
}
@media all and (max-width: 767px) {
  .bg09-section .type {
    font-size: 2.5714285714vw;
    letter-spacing: 0.08em;
  }
}
.bg09-section .box {
  width: 100%;
  height: 23.5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 32px;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg09-section .box {
    gap: 2.285vw;
  }
}
@media all and (max-width: 767px) {
  .bg09-section .box {
    gap: 2.086vw;
    width: 87%;
  }
}
.bg09-section .head {
  width: 23.2%;
}
.bg09-section .head .title {
  text-align: center;
  font-size: 72px;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  letter-spacing: -0.04em;
  margin-bottom: 0.75em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg09-section .head .title {
    font-size: 5.1428571429vw;
  }
}
@media all and (max-width: 767px) {
  .bg09-section .head .title {
    font-size: 4.7142857143vw;
    line-height: 1.16;
  }
}
.bg09-section .head .subtitle {
  text-align: center;
  font-size: 56px;
  color: #fff;
  line-height: 1.2;
  letter-spacing: 0.02em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg09-section .head .subtitle {
    font-size: 4vw;
  }
}
@media all and (max-width: 767px) {
  .bg09-section .head .subtitle {
    font-size: 3.7142857143vw;
  }
}
.bg09-section .body {
  width: 74%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg09-section .body {
    gap: 1.14vw;
  }
}
@media all and (max-width: 767px) {
  .bg09-section .body {
    gap: 1.04vw;
  }
}
.bg09-section .pro {
  width: calc((100% - 16px) / 4);
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg09-section .pro {
    width: calc((100% - 1.14vw) / 4);
  }
}
@media all and (max-width: 767px) {
  .bg09-section .pro {
    width: calc((100% - 1.04vw) / 4);
  }
}
.bg09-section .pic {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto 2em;
  width: 66%;
  -webkit-transform: translateY(3%);
          transform: translateY(3%);
}
@media all and (max-width: 767px) {
  .bg09-section .pic {
    margin: 0 auto 0.3em;
  }
}
.bg09-section .name {
  position: relative;
}
.bg09-section .name .name_bg {
  width: 100%;
  height: auto;
  aspect-ratio: 1/0.298;
}
.bg09-section .name .name_bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.bg09-section .name .txt {
  white-space: nowrap;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 38px;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.15em;
}
@media all and (min-width: 769px) and (max-width: 1400px) {
  .bg09-section .name .txt {
    font-size: 2.7142857143vw;
  }
}
@media all and (max-width: 767px) {
  .bg09-section .name .txt {
    font-size: 2.7142857143vw;
  }
}
.bg09-section .box_1 {
  position: absolute;
  top: 6.4%;
  left: 0;
}
@media all and (max-width: 767px) {
  .bg09-section .box_1 {
    top: 8%;
    left: 6.66%;
  }
}
.bg09-section .box_1 .head {
  -webkit-transform: translate(0, 10%);
          transform: translate(0, 10%);
}
.bg09-section .box_2 {
  position: absolute;
  top: 30.7%;
  left: 0;
}
@media all and (max-width: 767px) {
  .bg09-section .box_2 {
    top: 32%;
    left: 6.66%;
  }
}
.bg09-section .box_2 .head {
  -webkit-transform: translate(0, 15%);
          transform: translate(0, 15%);
}
.bg09-section .box_2 .head .title {
  margin-bottom: 0.5em;
}
.bg09-section .box_3 {
  position: absolute;
  top: 55%;
  left: 0;
}
@media all and (max-width: 767px) {
  .bg09-section .box_3 {
    top: 55.2%;
    left: 6.66%;
  }
}
.bg09-section .box_3 .pic {
  margin: 0 auto 1.5em;
  width: 66%;
  -webkit-transform: translateY(3%);
          transform: translateY(3%);
}
@media all and (max-width: 767px) {
  .bg09-section .box_3 .pic {
    margin: 0 auto 0.3em;
    width: 60%;
  }
}
.bg09-section .box_3 .head {
  -webkit-transform: translate(0, 12%);
          transform: translate(0, 12%);
}
.bg09-section .box_4 {
  position: absolute;
  top: 77.3%;
  left: 0;
}
@media all and (max-width: 767px) {
  .bg09-section .box_4 {
    top: 77.5%;
    left: 6.66%;
  }
}
.bg09-section .box_4 .pic {
  margin: 0 auto 1.8em;
  width: 71%;
  -webkit-transform: translateY(3%);
          transform: translateY(3%);
}
@media all and (max-width: 767px) {
  .bg09-section .box_4 .pic {
    margin: 0 auto 0.5em;
    width: 70%;
  }
}
.bg09-section .box_4 .pro_4 .pic {
  width: 75%;
  -webkit-transform: translateY(2%);
          transform: translateY(2%);
  margin-bottom: 1.65em;
}
@media all and (max-width: 767px) {
  .bg09-section .box_4 .pro_4 .pic {
    width: 73.8%;
    margin-bottom: 0.5em;
  }
}
.bg09-section .box_4 .head {
  -webkit-transform: translate(0, 20%);
          transform: translate(0, 20%);
}
.bg09-section .box_4 .head .title {
  margin-bottom: 0.4em;
  color: #15358a;
}
.bg09-section .box_4 .head .subtitle {
  color: #15358a;
}
.bg09-section .box_4 .name .txt {
  color: #15358a;
}

@media (min-width: 768px) {
  .footer__content.active {
    margin: -39px 0;
  }
}