@charset "UTF-8";
/*==================================
      レスポンシブ設定 マップ型変数breakpointsを定義
      =================================*/
/*==================================
      # 色、フォントファミリー
      =================================*/
/*==================================
      common(一般) - 全体に共通するスタイル
      =================================*/
@media screen and (max-width: 767px) {
  .is-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .is-sp {
    display: none;
  }
}

body {
  font-size: 16px;
  color: #59493f;
  font-family: "Hiragino Sans", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", sans-serif;
  line-height: 1.5;
  background: #fff;
}

@media screen and (max-width: 767px) {
  body {
    font-weight: 500;
  }
}

.inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 40px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

@media screen and (max-width: 767px) {
  .inner {
    padding: 0 20px;
  }
}

img {
  width: 100%;
  vertical-align: bottom;
}

a {
  font-family: "Hiragino Sans", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", sans-serif;
}

.section {
  padding: 70px 0 70px;
}

.section-title {
  position: relative;
  line-height: 1.3;
  max-width: 630px;
  margin: 0 auto 50px;
}

.section-title .text {
  border-bottom: 7px dotted #87ceea;
  font-weight: 500;
  padding-bottom: 10px;
  text-align: center;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: 1.5px;
}

.section-title .red1 {
  color: #f45a79;
  font-size: 26px;
}

.section-title .red2 {
  font-size: 40px;
  color: #f45a79;
}

.section-title .red3 {
  font-size: 30px;
  color: #f45a79;
}

.section-title .big {
  font-size: 40px;
}

.section-title .big2 {
  font-size: 36px;
}

.section-title .icon {
  position: absolute;
  top: 50%;
  left: -130px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #77c0dd;
  width: 120px;
  height: 120px;
  border: 2px dotted #77c0dd;
  display: table;
  text-align: center;
  border-radius: 50%;
  font-weight: bold;
}

.section-title .icon .point_text {
  display: table-cell;
  vertical-align: middle;
  font-size: 22px;
}

.section-title .icon .point_text span {
  font-size: 30px;
}

.top_band {
  background: #87ceea;
  padding: 35px 20px;
}

.top_band .text {
  color: #fff;
  font-size: 50px;
  text-align: center;
  font-weight: 500;
  font-style: italic;
  text-shadow: 0px 0px 10px #2d6e88;
  line-height: 1;
  position: relative;
  max-width: 700px;
  margin: 0 auto;
}

.top_band .text .img {
  max-width: 220px;
  position: absolute;
  top: -44px;
  right: -50px;
}

.top_band .top_text1 {
  color: #fff;
  font-size: 27px;
  text-align: center;
  font-weight: 700;
  text-shadow: 0px 0px 10px #2d6e88;
  line-height: 1;
  margin-bottom: 10px;
  font-family: serif;
}

.top_band .top_text2 {
  color: #fff;
  font-size: 50px;
  text-align: center;
  font-weight: 700;
  font-family: serif;
  text-shadow: 0px 0px 10px #2d6e88;
  line-height: 1;
  margin-bottom: 30px;
}

.section1 h2 {
  color: #f45a79;
  font-size: 40px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 50px;
}

.section1 .movie {
  max-width: 900px;
  margin: 0 auto 60px;
}

.section1 .bottom {
  max-width: 740px;
  margin: 0 auto;
}

.section1 .lead {
  font-size: 40px;
  color: #59493f;
  text-align: center;
  border-bottom: 7px dotted #87ceea;
  font-weight: 400;
  padding-bottom: 10px;
  margin-bottom: 30px;
}

.section1 ul li {
  padding-left: 10px;
  margin-bottom: 20px;
  font-size: 26px;
  color: #59493f;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.section1 ul li .icon {
  max-width: 35px;
  position: relative;
  top: -5px;
  margin-right: 2px;
}

.section2 {
  position: relative;
  background: #e0f2ff;
}

.section2 .but {
  max-width: 280px;
  margin: 0 auto;
  position: absolute;
  top: -38px;
  left: 50%;
  width: 100%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.section2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 810px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto 80px;
}

.section2 ul li {
  color: #59493f;
  border-radius: 50%;
  background: #fff;
  width: 370px;
  height: 370px;
  text-align: center;
  font-size: 25px;
  display: table;
  text-align: center;
  font-weight: 500;
  -webkit-box-shadow: 11px 11px 0px #7ecef4;
          box-shadow: 11px 11px 0px #7ecef4;
  line-height: 2;
}

.section2 ul li:last-child {
  margin-bottom: 0;
}

.section2 ul li .text {
  display: table-cell;
  vertical-align: middle;
}

.section2 ul li span {
  max-width: 30px;
  width: 100%;
  display: inline-block;
}

.section2 ul li span img {
  vertical-align: middle;
}

.section2 .bottom_text {
  font-size: 22px;
  line-height: 2;
  color: #59493f;
  max-width: 900px;
  margin: 0 auto;
}

.section2 .bottom_text .text {
  max-width: 565px;
  position: relative;
}

.section2 .bottom_text .cry {
  max-width: 280px;
  margin: 0 auto;
  position: absolute;
  bottom: -70px;
  right: 10%;
  width: 100%;
  right: -330px;
}

.section3 {
  position: relative;
  padding-top: 130px;
}

.section3 .star-left {
  position: absolute;
  bottom: 0%;
  left: 7%;
  max-width: 80px;
}

.section3 .section3-inner {
  position: relative;
}

.section3 .star-right {
  position: absolute;
  top: 0%;
  right: 7%;
  max-width: 80px;
}

.section3 .but {
  max-width: 555px;
  margin: 0 auto;
  position: absolute;
  top: 0px;
  left: 50%;
  width: 100%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.section3 h2 {
  color: #867560;
  text-align: center;
  font-size: 45px;
  font-weight: 600;
  margin-bottom: 80px;
}

.section3 h2 span {
  font-size: 130%;
  letter-spacing: -5px;
  margin-right: 7px;
}

.section3 .bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  max-width: 900px;
  margin: 0 auto;
}

.section3 .bottom .left {
  width: 50%;
}

.section3 .bottom .right {
  width: 46%;
  font-size: 22px;
  line-height: 2;
}

.section3 .bottom .right span {
  color: #f45a79;
}

.section4 {
  background: #feefe9;
  position: relative;
}

.section4 .inner {
  position: relative;
}

.section4 .person1 {
  position: absolute;
  max-width: 185px;
  left: 2%;
  bottom: -36px;
  z-index: 2;
}

.section4::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 50vw 6vw 0vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section4::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 6vw 50vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section4 h2 {
  font-size: 45px;
  font-weight: 600;
  color: #87ceea;
  text-align: center;
  max-width: 630px;
  margin: 0 auto 100px;
  line-height: 1.3;
  position: relative;
}

.section4 h2 span {
  color: #59493f;
  font-size: 40px;
}

.section4 h2 .icon-left {
  position: absolute;
  bottom: 0;
  left: -13%;
  max-width: 60px;
}

.section4 h2 .icon-right {
  position: absolute;
  bottom: 0;
  right: -13%;
  max-width: 60px;
}

.section4 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 50px;
}

.section4 ul li {
  background: #e0f2ff;
  padding: 79px 0 50px;
  text-align: center;
  position: relative;
  border-radius: 24px;
}

@media screen and (min-width: 768px) {
  .section4 ul li {
    width: calc(33.33% - 15px * 2/3);
    margin-right: 15px;
  }
  .section4 ul li:last-child {
    margin-right: 0;
  }
}

.section4 ul li .heading {
  position: absolute;
  top: -60px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: #77c0dd;
  text-align: center;
  color: #fff;
  font-size: 22px;
  display: table;
}

.section4 ul li .heading .wrap {
  display: table-cell;
  vertical-align: middle;
  line-height: 1;
}

.section4 ul li .img {
  position: absolute;
  bottom: -7%;
  right: 3%;
  max-width: 80px;
}

.section4 ul li:nth-child(1) .img {
  position: absolute;
  bottom: 9%;
  right: 5%;
  max-width: 40px;
}

.section4 ul li:nth-child(2) .img {
  position: absolute;
  bottom: -7%;
  right: 0%;
  max-width: 100px;
}

.section4 ul li:nth-child(3) .img {
  position: absolute;
  bottom: 5%;
  right: 3%;
  max-width: 113px;
}

.section4 ul li .heading {
  font-weight: 600;
}

.section4 ul li .text {
  font-size: 22px;
  font-weight: 500;
}

.section4 ul li .text span {
  color: #f45a79;
  font-size: 28px;
}

.section4 ul li .bottom {
  font-size: 32px;
  font-weight: 600;
  color: #59493f;
  line-height: 1.3;
}

.section4 .last_text {
  font-size: 30px;
  font-weight: 500;
  text-align: center;
  color: #59493f;
}

.footer {
  background: #87ceea;
  padding: 35px 0;
}

.footer .copyright {
  text-align: center;
  color: #fff;
  font-size: 18px;
}

.section5 {
  padding-bottom: 0;
}

.section5 .lead {
  font-size: 32px;
  text-align: center;
  font-weight: 400;
}

.section5 .lead span {
  font-size: 40px;
  font-weight: 500;
}

.section5 .bottom_img {
  margin: 0 auto 0px;
}

.section5 .bottom_text {
  font-size: 28px;
  font-weight: 600;
  text-align: center;
}

.section5 .bottom_text span {
  color: #f45a79;
  font-size: 32px;
}

.section5 .blue_band {
  color: #fff;
  font-weight: 600;
  text-align: center;
  background: #87ceea;
  font-size: 40px;
  padding: 60px 20px 20px;
  position: relative;
}

.section5 .blue_band::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 3vw 50vw 0 0;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}

.section5 .blue_band::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0 50vw 3vw 0;
  border-style: solid;
  border-color: transparent #fff transparent transparent;
}

.section5 .blue_section {
  background: url(../img/blue_bg.png) no-repeat bottom center/cover;
}

.section5 .sankaku {
  border-style: solid;
  border-width: 36px 82.5px 0 82.5px;
  border-color: #87ceea transparent transparent transparent;
  height: 36px;
  width: 165px;
  margin: 0 auto;
  position: absolute;
  bottom: -35px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (min-width: 1650px) {
  .blue_band::before {
    border-width: 2vw 50vw 0 0 !important;
  }
  .blue_band::after {
    border-width: 0 50vw 2vw 0 !important;
  }
}

.blue_text {
  max-width: 900px;
  margin: 0 auto 0px;
}

.section6 .lead {
  max-width: 900px;
  font-size: 20px;
  margin: 0 auto;
}

.section6 .lead span {
  font-size: 32px;
}

.section7 {
  background: #f2eee7;
}

.section7 .box {
  max-width: 900px;
  margin: 0 auto 50px;
  background: #fff;
  padding: 30px 20px;
  border-radius: 30px;
  position: relative;
}

.section7 .box .text {
  font-size: 33px;
  font-weight: 600;
  color: #f45a79;
  text-align: center;
}

.section7 .box .left {
  position: absolute;
  max-width: 165px;
  top: 10%;
  left: 5%;
}

.section7 .box .right {
  position: absolute;
  max-width: 105px;
  top: 50%;
  right: 13%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.section6 .lead span {
  font-size: 30px;
}

@media screen and (min-width: 768px) {
  .section6 .lead {
    padding-left: 12%;
    white-space: nowrap;
  }
}

.other {
  text-align: center;
  margin-bottom: 50px;
}

.other .text {
  font-size: 30px;
  color: #fff;
  background: #73bfdd;
  max-width: 290px;
  padding: 20px 0 30px;
  line-height: 1;
  margin: 0 auto;
  position: relative;
}

.other .text:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 145px 2vw 0vw;
  border-style: solid;
  border-color: transparent transparent #f2eee7 transparent;
  z-index: 3;
}

.other .text::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 2vw 145px;
  border-style: solid;
  border-color: transparent transparent #f2eee7 transparent;
  z-index: 3;
}

.but_other {
  text-align: center;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}

.but_other .text {
  font-size: 30px;
  color: #fff;
  background: #7e6b5a;
  max-width: 290px;
  padding: 20px 0 30px;
  line-height: 1;
  margin: 0 auto;
  position: relative;
}

.but_other .text:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 145px 2vw 0vw;
  border-style: solid;
  border-color: transparent transparent #e0f2ff transparent;
  z-index: 3;
}

.but_other .text::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 2vw 145px;
  border-style: solid;
  border-color: transparent transparent #e0f2ff transparent;
  z-index: 3;
}

.but_other2 {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}

.but_other2 .text {
  font-size: 43px;
  color: #fff;
  background: #f19ec2;
  max-width: 550px;
  padding: 20px 0 30px;
  line-height: 1;
  margin: 0 auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.but_other2 .text .img {
  position: relative;
  top: -15px;
  max-width: 92px;
  margin-right: 10px;
}

.but_other2 .text:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 275px 2vw 0vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.but_other2 .text::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 2vw 275px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section7 {
  position: relative;
}

.section7 .lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.section7 ul {
  margin-bottom: 50px;
}

.section7 ul li {
  font-weight: 500;
  margin-bottom: 10px;
  font-size: 24px;
  color: #59493f;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.section7 ul li .icon {
  max-width: 35px;
  position: relative;
  top: -5px;
  margin-right: 2px;
}

.section7 .bottom_text1 {
  font-size: 26px;
  max-width: 680px;
  margin: 0 auto 60px;
  font-weight: 500;
}

.section7 .bottom_text2 {
  font-size: 30px;
  max-width: 680px;
  margin: 0 auto 0px;
  font-weight: 500;
}

.section7 .bottom_text2 .span1 {
  color: #f45a79;
}

.section7 .bottom_text2 .span2 {
  font-size: 24px;
}

.section7 .inner {
  position: relative;
}

.section7 .person2 {
  max-width: 190px;
  position: absolute;
  bottom: -70px;
  right: 0;
}

.section8 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 60px;
}

.section8 ul li {
  width: 32%;
  padding: 3% 2%;
  border: 3px solid #f19149;
  border-radius: 20px;
}

.section8 ul li .icon {
  max-width: 160px;
  margin: 0 auto 20px;
}

.section8 ul li .text {
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
  margin-bottom: 20px;
}

.section8 ul li .img {
  width: 100%;
  padding-top: 68%;
  position: relative;
}

.section8 ul li .img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.section8 h2 {
  margin-bottom: 80px;
}

.section8 .flow {
  font-size: 36px;
  font-weight: 500;
  text-align: center;
  max-width: 750px;
  margin: 0 auto;
  color: #fff;
}

.section8 .flow .item1 {
  background: #f8b551;
  line-height: 1;
  margin: 0 auto;
  position: relative;
  margin-bottom: 30px;
}

.section8 .flow .item1::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 375px 2vw 0vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section8 .flow .item1::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 2vw 375px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section8 .flow .item2 {
  background: #f19149;
  line-height: 1;
  margin: 0 auto;
  position: relative;
  margin-bottom: 30px;
}

.section8 .flow .item2::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 375px 2vw 0vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section8 .flow .item2::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 2vw 375px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section8 .flow .item3 {
  background: #eb6100;
  line-height: 1;
  margin: 0 auto;
  position: relative;
  margin-bottom: 0px;
}

.section8 .flow .item3::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 375px 2vw 0vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section8 .flow .item3::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 2vw 375px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section8 .flow .item {
  padding: 25px 0 35px;
}

.section9 {
  background: #feefe9;
  position: relative;
}

.section9 .inner {
  position: relative;
}

.section9 .inner .person {
  position: absolute;
  bottom: -50px;
  max-width: 180px;
  right: 0;
}

.section9:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 3vw 50vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: white;
  border-left-color: transparent;
  z-index: 3;
}

.section9::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 50vw 3vw 0vw;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  z-index: 3;
}

.section9 .text1 {
  font-size: 30px;
  text-align: center;
  max-width: 700px;
  margin: 0 auto 20px;
  font-weight: 500;
  position: relative;
}

.section9 .text1 .left {
  position: absolute;
  left: -50px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 60px;
}

.section9 .text1 .right {
  position: absolute;
  right: -50px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 60px;
}

.section9 .text2 {
  font-size: 50px;
  font-weight: 500;
  text-align: center;
  position: relative;
  z-index: 4;
}

.section9 .text2 .small {
  font-size: 38px;
}

.section9 .text2 .dot {
  padding-top: .7em;
  background-position: top left -2px;
  background-repeat: repeat-x;
  background-size: 1em 0.8em;
  background-image: radial-gradient(0.09em 0.09em at center center, #f45a79, #f45a79 100%, transparent);
}

.section9 .red {
  color: #f45a79;
}

.section10 {
  text-align: center;
  font-weight: 500;
  line-height: 1.3;
}

.section10 .wrap1 {
  margin-bottom: 40px;
}

.section10 .wrap1 .text1 {
  font-size: 50px;
}

.section10 .wrap1 .text2 {
  color: #ab941d;
  font-size: 50px;
  position: relative;
  max-width: 580px;
  margin: 0 auto;
}

.section10 .wrap1 .text2 .left {
  max-width: 80px;
  position: absolute;
  top: 42%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: -70px;
}

.section10 .wrap1 .text2 .right {
  max-width: 80px;
  position: absolute;
  top: 42%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -70px;
}

.section10 .wrap1 .text2 span {
  font-size: 38px;
}

.section10 .wrap1 .text2 .span2 {
  color: #59493f;
}

.section10 .wrap1 .text3 {
  font-size: 50px;
  color: #ab941d;
}

.section10 .wrap1 .text3 span {
  color: #59493f;
  font-size: 38px;
}

.section10 .wrap2 .text1 {
  font-size: 38px;
  color: #7b9fba;
  line-height: 1;
}

.section10 .wrap2 .text2 {
  font-size: 60px;
  color: #7b9fba;
  font-weight: 600;
}

.section10 .wrap2 .text3 {
  font-size: 38px;
}

.section11 {
  background: #fdf9f5;
}

.section11 h2 {
  color: #f45a79;
  font-size: 36px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 60px;
}

.section11 h2 .text {
  display: inline-block;
  margin: 0 auto;
  position: relative;
}

.section11 h2 .text .left {
  position: absolute;
  max-width: 115px;
  top: 20%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: -125px;
}

.section11 h2 .text .right {
  position: absolute;
  max-width: 115px;
  top: 20%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -125px;
}

.section11 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 1000px;
  margin: 0 auto 25px;
}

.section11 ul li {
  background: #fff;
  border: 2px solid #f45a79;
  border-radius: 30px;
  padding: 4% 5%;
}

.section11 ul li:nth-child(1) .row3 img {
  position: relative;
  left: -2%;
}

.section11 ul li:nth-child(4) .row3 img {
  position: relative;
  right: -4%;
}

.section11 ul li .img {
  width: 90%;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .section11 ul li {
    width: calc(50% - 25px * 1/2);
    margin-right: 25px;
  }
  .section11 ul li:nth-child(2n) {
    margin-right: 0;
  }
  .section11 ul li:nth-child(n + 3) {
    margin-top: 25px;
  }
}

.section11 ul li .row2 {
  font-size: 20px;
  margin-bottom: 20px;
  line-height: 2;
}

.section11 ul li span {
  color: #f45a79;
}

.section11 ul li .row1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.section11 ul li .row1 .num {
  color: #f45a79;
  font-size: 48px;
  margin-right: 20px;
  font-family: 'Arial', sans-serif;
  position: relative;
}

.section11 ul li .row1 .num .point {
  position: absolute;
  max-width: 100px;
  width: 80px;
  top: -48px;
  left: -34px;
}

.section11 ul li .row1 .text {
  font-size: 30px;
}

.section11 ul li .small {
  font-size: 22px;
}

.section11 .last_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1000px;
  margin: 0 auto;
  background: #fff;
  border: 2px solid #f45a79;
  border-radius: 30px;
  padding: 4% 5%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.section11 .last_item .left {
  width: 57%;
}

.section11 .last_item .right {
  width: 40%;
}

.section11 .last_item .row1 {
  font-size: 30px;
  margin-bottom: 20px;
}

.section11 .last_item .row2 {
  font-size: 20px;
  line-height: 2;
}

.section11 .last_item .row1 {
  font-weight: 500;
}

.section11 .last_item .row1 span {
  color: #f45a79;
}

.section11 ul li .row1 .text {
  font-weight: 500;
}

.section12 {
  background: url(../img/section12-bg.png) no-repeat bottom center/cover;
}

.section12 .lead {
  font-size: 40px;
  text-align: center;
  font-weight: 500;
  margin-bottom: 20px;
}

.section12 .title_wrap {
  max-width: 860px;
  margin: 0 auto 50px;
  text-align: center;
}

.section12 h2 {
  color: #916236;
  font-family: "Yu Mincho Light", "YuMincho", "Yu Mincho", "游明朝体", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  text-align: center;
  display: inline-block;
  position: relative;
}

.section12 h2 .h2_left {
  position: absolute;
  top: 50%;
  left: -110px;
  max-width: 100px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.section12 h2 .h2_right {
  position: absolute;
  top: 50%;
  right: -110px;
  max-width: 100px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.section12 h2 .text1 {
  font-size: 50px;
  position: relative;
  line-height: 1;
  margin-bottom: 10px;
}

.section12 h2 .text1 .min_left {
  position: absolute;
  top: 50%;
  left: 0px;
  max-width: 45px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.section12 h2 .text1 .min_right {
  position: absolute;
  top: 50%;
  right: 0px;
  max-width: 45px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.section12 h2 .text2 {
  font-size: 90px;
  line-height: 1;
  background: -webkit-linear-gradient(-90deg, #c18818, #874e0e);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.section12 h2 .text2 .span1 {
  font-size: 130px;
}

.section12 h2 .text2 .span2 {
  font-size: 140px;
}

.section12 ul {
  background: #faf8f1;
  -webkit-box-shadow: 2px 10px 10px #ddd;
          box-shadow: 2px 10px 10px #ddd;
  padding: 60px;
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}

.section12 ul .icon1 {
  position: absolute;
  top: 10px;
  left: 10px;
  max-width: 200px;
}

.section12 ul .icon-top {
  position: absolute;
  top: 20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 600px;
}

.section12 ul .icon-bottom {
  position: absolute;
  bottom: 20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 600px;
}

.section12 ul .icon-left {
  position: absolute;
  top: 50%;
  left: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 20px;
}

.section12 ul .icon-right {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 20px;
}

.section12 ul .icon2 {
  position: absolute;
  top: 10px;
  right: 10px;
  max-width: 200px;
}

.section12 ul .icon3 {
  position: absolute;
  bottom: 10px;
  right: 10px;
  max-width: 200px;
}

.section12 ul .icon4 {
  position: absolute;
  bottom: 10px;
  left: 10px;
  max-width: 200px;
}

.section12 ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
  border-bottom: 2px dotted #ba9632;
  position: relative;
}

.section12 ul li .img1 {
  position: absolute;
  max-width: 370px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -10%;
}

.section12 ul li .img2 {
  position: absolute;
  max-width: 240px;
  top: 20%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -7%;
}

.section12 ul li .icon {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: #c2103c;
  text-align: center;
  display: table;
}

.section12 ul li .icon .wrap {
  line-height: 1.1;
  display: table-cell;
  vertical-align: middle;
  color: #fff;
}

.section12 ul li .icon .wrap .heading {
  font-size: 34px;
  font-weight: 600;
}

.section12 ul li .icon .wrap .num {
  font-family: "Yu Mincho Light", "YuMincho", "Yu Mincho", "游明朝体", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  font-size: 70px;
  font-weight: 500;
}

.section12 ul li .content {
  font-size: 40px;
  margin-left: 30px;
  font-weight: 300;
  line-height: 1.2;
}

.section12 ul li .content .big {
  font-size: 60px;
  font-weight: 500;
}

.section12 ul li .content .red {
  color: #c2103c;
  font-weight: 500;
}

.section12 ul li .content .middle {
  font-size: 58px;
  font-weight: 500;
}

.min {
  font-family: "Yu Mincho Light", "YuMincho", "Yu Mincho", "游明朝体", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  font-weight: 600;
}

.section13 {
  background: url(../img/section13-bg.png) no-repeat top center/cover;
}

.section13 h2 {
  text-align: center;
  margin-bottom: 50px;
}

.section13 h2 .wrap {
  font-size: 40px;
  text-align: center;
  font-weight: 500;
  display: inline-block;
  padding: 0px 50px 50px 50px;
  position: relative;
}

.section13 h2 .wrap .icon {
  position: absolute;
  bottom: 0;
  max-width: 600px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}

.section13 .lead {
  font-size: 40px;
  font-weight: 500;
  text-align: center;
  color: #f45a79;
  margin-bottom: 30px;
  line-height: 1;
}

.section13 .row1 {
  font-size: 40px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}

.section13 .row1 .small {
  font-size: 28px;
  position: relative;
  top: -3px;
}

.section13 .row1 .en {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.section13 .row1 .en_top {
  display: inline-block;
  font-size: 10px;
}

.section13 .row1 .en_bottom {
  display: inline-block;
}

.section13 .row2 {
  font-size: 55px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  color: #e14957;
}

.section13 .row2 .small {
  font-size: 40px;
  position: relative;
  top: -3px;
}

.section13 .row2 .en {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.section13 .row2 .en_top {
  display: inline-block;
  font-size: 12px;
}

.section13 .row2 .en_bottom {
  display: inline-block;
}

.section13 .row3 {
  font-size: 45px;
  text-align: center;
  font-weight: 500;
  margin-bottom: 40px;
  line-height: 1;
}

.section13 .row4 {
  text-align: center;
}

.section13 .row4 .text {
  font-size: 45px;
  text-align: center;
  font-weight: 500;
  margin-bottom: 10px;
  line-height: 1;
  display: inline-block;
  position: relative;
}

.section13 .row4 .text .icon {
  position: absolute;
  top: -40px;
  left: -40px;
  max-width: 80px;
}

.section13 .row5 {
  font-size: 80px;
  margin-bottom: 10px;
}

.section13 .row5 .en_top {
  font-size: 16px;
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}

.black {
  color: #59493f;
}

.pink_box {
  text-align: center;
  max-width: 640px;
  margin: 0 auto;
  margin-bottom: 50px;
}

.pink_box .text {
  font-size: 45px;
  color: #fff;
  background: #f19ec2;
  padding: 20px 0 30px;
  line-height: 1.3;
  margin: 0 auto;
  position: relative;
}

.pink_box .text:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 330px 2vw 0vw;
  border-style: solid;
  border-color: transparent transparent #fff0ee transparent;
  z-index: 3;
}

.pink_box .text::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0vw 0 2vw 330px;
  border-style: solid;
  border-color: transparent transparent #fff0ee transparent;
  z-index: 3;
}

.section14 {
  background: url(../img/section14.png);
}

.section14 h2 {
  font-size: 40px;
  font-weight: 500;
  text-align: center;
  text-decoration: underline;
  color: #e60012;
  text-underline-offset: 10px;
  text-decoration-thickness: 3px;
  /* 線の太さ */
  margin-bottom: 30px;
}

.section14 .lead {
  font-size: 36px;
  text-align: center;
  color: #f45a79;
}

.section14 .lead .text1 {
  text-align: center;
  display: inline-block;
  margin: 0 auto 20px;
  font-weight: 500;
  position: relative;
}

.section14 .lead .text1 .left {
  position: absolute;
  left: -80px;
  bottom: 11%;
  max-width: 60px;
}

.section14 .lead .text1 .right {
  position: absolute;
  right: -80px;
  bottom: 7%;
  max-width: 60px;
}

.section14 .row1 {
  font-size: 40px;
  font-weight: 500;
  text-align: center;
}

.section_btn {
  text-align: center;
  margin-bottom: 40px;
}

.section_btn a {
  padding: 38px 0;
  display: block;
  border-radius: 30px;
  font-size: 36px;
  font-weight: 500;
  color: #fff;
  max-width: 780px;
  margin: 0 auto 0px;
  background: -webkit-gradient(linear, left top, left bottom, from(#f8c500), to(#ee6a00));
  background: linear-gradient(to bottom, #f8c500, #ee6a00);
  -webkit-transition: .3s;
  transition: .3s;
  text-shadow: 1px 1px 3px #707070;
}

.section_btn a:hover {
  opacity: .6;
}

.section_btn a span {
  margin-left: 20px;
  font-size: 30px;
}

.section15 .text {
  font-size: 20px;
  max-width: 780px;
  margin: 0 auto;
  line-height: 1.7;
  color: #afadad;
}

.section15 .text span {
  color: #e60012;
}

.section16 {
  font-weight: 400;
}

.section16 .se16-box {
  max-width: 900px;
  margin: 0 auto;
}

.section16 .text {
  font-size: 30px;
  color: #66a9c4;
  font-weight: 500;
}

.section16 .se16_wrap1 {
  margin-bottom: 30px;
}

.section16 .title_heading {
  font-size: 24px;
}

.section16 .title_heading span {
  vertical-align: text-bottom;
}

.section16 .title_bottom {
  color: #66a9c4;
  font-size: 26px;
}

.section16 .title_bottom span {
  font-size: 24px;
  margin-left: 20px;
}

.section16 .se16_wrap2 {
  font-size: 18px;
}

.section16 .se16_items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.section16 .se16_img {
  width: 50%;
}

.section16 .se16_content {
  width: 45%;
  font-weight: 500;
}

.section16 .pro_text {
  font-size: 22px;
  line-height: 1.7;
}

@media screen and (max-width: 1050px) and (min-width: 768px) {
  .section12 ul li .img1 {
    position: absolute;
    max-width: 110px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -8%;
  }
  .section12 ul li .img2 {
    position: absolute;
    max-width: 100px;
    top: 20%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -11%;
  }
  .section7 .box .right {
    position: absolute;
    max-width: 55px;
    top: 50%;
    right: 9%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section7 .box .left {
    position: absolute;
    max-width: 108px;
    top: 10%;
    left: 1%;
  }
  .section-title .icon {
    position: absolute;
    top: -1%;
    left: -63px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #77c0dd;
    width: 80px;
    height: 80px;
    border: 2px dotted #77c0dd;
    display: table;
    text-align: center;
    border-radius: 50%;
    font-weight: bold;
  }
  .section-title .icon .point_text {
    display: table-cell;
    vertical-align: middle;
    font-size: 18px;
  }
  .section-title .icon .point_text span {
    font-size: 23px;
  }
  .section3 h2 {
    color: #867560;
    text-align: center;
    font-size: 31px;
    font-weight: 600;
    margin-bottom: 40px;
  }
  .section4 ul li:nth-child(1) .img {
    position: absolute;
    bottom: 1%;
    right: 5%;
    max-width: 40px;
  }
  .section4 .last_text {
    font-size: 23px;
    font-weight: 500;
    text-align: center;
    color: #59493f;
  }
  .section7 .person2 {
    max-width: 120px;
    position: absolute;
    bottom: -70px;
    right: 0;
  }
}

@media screen and (max-width: 767px) {
  .top_band .top_text1 {
    font-size: 14px;
  }
  .top_band .top_text2 {
    font-size: 20px;
  }
  .top_band .text {
    font-size: 20px;
  }
  .top_band .text .img {
    max-width: 120px;
    position: absolute;
    top: -29px;
    right: 0px;
  }
  .top_band {
    padding: 15px 20px;
  }
  .section {
    padding: 30px 0 30px;
  }
  .section1 h2 {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .section1 .lead {
    font-size: 16px;
    margin-bottom: 20px;
    padding-bottom: 5px;
    border-bottom: 3px dotted #87ceea;
  }
  .section1 ul li {
    padding-left: 0px;
    margin-bottom: 20px;
    font-size: 13px;
  }
  .section1 ul li .icon {
    max-width: 20px;
    position: relative;
    top: -2px;
    margin-right: 1px;
  }
  .section1 .movie {
    margin-bottom: 30px;
  }
  .but_other .text {
    font-size: 16px;
    color: #fff;
    background: #7e6b5a;
    max-width: 290px;
    padding: 10px 0 13px;
    line-height: 1;
    margin: 0 auto;
    position: relative;
  }
  .but_other2 .text {
    font-size: 16px;
    max-width: 290px;
    padding: 10px 0 13px;
  }
  .but_other .text::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 0 4vw 145px;
    border-style: solid;
    border-color: transparent transparent #e0f2ff transparent;
    z-index: 3;
  }
  .but_other .text:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 145px 4vw 0vw;
    border-style: solid;
    border-color: transparent transparent #e0f2ff transparent;
    z-index: 3;
  }
  .other .text {
    font-size: 16px;
    max-width: 290px;
    padding: 10px 0 13px;
  }
  .but_other2 {
    top: -20px;
  }
  .but_other2 .text::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 0 4vw 145px;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .but_other2 .text:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 145px 4vw 0vw;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .but_other2 .text .img {
    position: relative;
    top: -8px;
    max-width: 30px;
    margin-right: 5px;
  }
  body,
  html {
    overflow-x: hidden;
  }
  .but_other {
    top: -20px;
  }
  .section2 ul li {
    font-size: 13px;
    width: 160px;
    height: 160px;
    -webkit-box-shadow: 4px 4px 0px #7ecef4;
            box-shadow: 4px 4px 0px #7ecef4;
  }
  .section2 ul {
    max-width: 380px;
  }
  .section2 ul li span {
    max-width: 15px;
  }
  .section2 ul {
    margin-bottom: 20px;
  }
  .section2 .bottom_text {
    font-size: 13px;
  }
  .section3 h2 {
    font-size: 16px;
    margin-bottom: 30px;
  }
  .section3 .bottom {
    display: block;
  }
  .section3 .bottom .left {
    width: 80%;
    margin: 0 auto 10px;
  }
  .section3 .bottom .right {
    width: 100%;
    font-size: 13px;
    line-height: 2;
  }
  .section3 h2 {
    margin-bottom: 20px;
  }
  .section {
    max-width: 500px;
    margin: 0 auto;
  }
  .section3 .star-left {
    position: absolute;
    bottom: -6%;
    left: 2%;
    max-width: 30px;
  }
  .section3 .star-right {
    position: absolute;
    top: -6%;
    right: 2%;
    max-width: 30px;
  }
  .section4 h2 {
    font-size: 16px;
  }
  .section4 h2 span {
    font-size: 15px;
  }
  .section4 h2 .icon-right {
    position: absolute;
    bottom: 0;
    right: -0%;
    max-width: 30px;
  }
  .section4 h2 .icon-left {
    position: absolute;
    bottom: 0;
    left: 0%;
    max-width: 30px;
  }
  .section4 h2 {
    max-width: 300px;
  }
  .section4 ul li .heading {
    position: absolute;
    top: -60px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #77c0dd;
    text-align: center;
    color: #fff;
    font-size: 12px;
    display: table;
  }
  .section2 .bottom_text .cry {
    max-width: 80px;
    margin: 0 auto;
    position: absolute;
    bottom: -29px;
    right: 10%;
    width: 100%;
    right: 0px;
  }
  .but_other2 {
    top: 0px;
  }
  .section2 .bottom_text .cry {
    max-width: 70px;
    margin: 0 auto;
    position: absolute;
    bottom: -61px;
    right: 10%;
    width: 100%;
    right: 0px;
  }
  .section4 ul li .text {
    font-size: 16px;
  }
  .section2 {
    padding-bottom: 60px;
  }
  .section3 {
    padding-top: 60px;
  }
  .section4 ul li .bottom {
    font-size: 18px;
  }
  .section4 ul {
    display: block;
  }
  .section4 ul li {
    width: 100%;
    margin-bottom: 20px;
    max-width: 400px;
    width: 80%;
    margin: 0 auto 20px;
  }
  .section4 ul li:last-child {
    margin-bottom: 0;
  }
  .section4 ul {
    margin-bottom: 30px;
  }
  .section4 ul li .heading {
    top: 20px;
  }
  .section4 h2 {
    margin-bottom: 20px;
  }
  .section4 ul li .text span {
    font-size: 16px;
  }
  .section4 ul li:nth-child(2) .img {
    position: absolute;
    bottom: 4%;
    right: 0%;
    max-width: 62px;
  }
  .section4 ul li:nth-child(3) .img {
    position: absolute;
    bottom: 5%;
    right: 3%;
    max-width: 53px;
  }
  .section4 .last_text {
    font-size: 16px;
  }
  .section4 .person1 {
    position: absolute;
    max-width: 85px;
    left: 2%;
    bottom: -27px;
    z-index: 2;
  }
  .section4 {
    padding-bottom: 80px;
  }
  .section4 .person1 {
    position: absolute;
    max-width: 80px;
    left: 2%;
    bottom: -74px;
    z-index: 2;
  }
  .section-title .red3 {
    font-size: 14px;
    color: #f45a79;
  }
  .section-title .big {
    font-size: 16px;
  }
  .section-title .text {
    border-bottom: 3px dotted #87ceea;
  }
  .section-title {
    position: relative;
    line-height: 1;
    max-width: 630px;
    margin: 0 auto 20px;
  }
  .section-title .icon {
    position: absolute;
    top: -15px;
    left: 50%;
    -webkit-transform: translateY(-50%);
    transform: translate(-50%, -50%);
    color: #77c0dd;
    width: 45px;
    height: 45px;
    border: 1px dotted #77c0dd;
    display: table;
    text-align: center;
    border-radius: 50%;
    font-weight: bold;
  }
  .section5 {
    padding-top: 70px;
  }
  .section-title .icon .point_text {
    font-size: 10px;
  }
  .section5 .lead span {
    font-size: 16px;
  }
  .section5 .lead {
    font-size: 14px;
    text-align: center;
    font-weight: 400;
  }
  .section-title .icon .point_text span {
    font-size: 12px;
  }
  .section5 .bottom_text {
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    margin-top: 20px;
  }
  .section5 .bottom_text span {
    font-size: 14px;
  }
  .section5 .blue_band {
    font-size: 16px;
    padding: 20px 20px 20px;
  }
  .section5 .sankaku {
    border-style: solid;
    border-width: 36px 82.5px 0 82.5px;
    border-color: #87ceea transparent transparent transparent;
    height: 12px;
    width: 95px;
    margin: 0 auto;
    position: absolute;
    bottom: -15px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .section-title .text {
    font-size: 16px;
  }
  .section-title .red2 {
    font-size: 20px;
    color: #f45a79;
  }
  .section-title .icon {
    top: -25px;
  }
  .section6 .lead {
    max-width: 900px;
    font-size: 14px;
    margin: 0 auto;
  }
  .section6 .lead span {
    font-size: 16px;
  }
  .section7 .box .text {
    font-size: 16px;
    font-weight: 600;
    color: #f45a79;
    text-align: center;
  }
  .section7 .box .right {
    position: absolute;
    max-width: 25px;
    top: 50%;
    right: 3%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section7 .box .left {
    position: absolute;
    max-width: 65px;
    top: -33%;
    left: 1%;
  }
  .section7 .box {
    max-width: 900px;
    margin: 0 auto 20px;
    background: #fff;
    padding: 10px 20px;
    border-radius: 30px;
    position: relative;
  }
  .other .text:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 145px 4vw 0vw;
    border-style: solid;
    border-color: transparent transparent #f2eee7 transparent;
    z-index: 3;
  }
  .other .text::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 0 4vw 145px;
    border-style: solid;
    border-color: transparent transparent #f2eee7 transparent;
    z-index: 3;
  }
  .other {
    text-align: center;
    margin-bottom: 10px;
  }
  .section-title .text {
    line-height: 1.5;
  }
  .section7 ul li {
    font-size: 14px;
  }
  .section7 ul li:last-child {
    margin-bottom: 0;
  }
  .section7 ul li .icon {
    max-width: 20px;
    position: relative;
    top: -3px;
    margin-right: 2px;
  }
  .section7 .bottom_text1 {
    font-size: 13px;
    max-width: 680px;
    margin: 0 auto 20px;
    font-weight: 500;
  }
  .section7 .bottom_text2 {
    font-size: 14px;
    max-width: 680px;
    margin: 0 auto 0px;
    font-weight: 500;
  }
  .section7 .person2 {
    max-width: 80px;
    position: absolute;
    bottom: -29px;
    right: 0;
  }
  .section7 .person2 {
    max-width: 70px;
    position: absolute;
    bottom: -100px;
    right: 21px;
  }
  .section7 .bottom_text2 .span2 {
    font-size: 14px;
  }
  .section7 {
    padding-bottom: 100px;
  }
  .section7 ul {
    margin-bottom: 20px;
  }
  .section-title .big2 {
    font-size: 16px;
  }
  .section8 {
    padding-top: 80px;
  }
  .section8 h2 {
    margin-bottom: 20px;
  }
  .section8 ul li .icon {
    max-width: 60px;
    margin: 0 auto 10px;
  }
  .section8 ul li .text {
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    line-height: 1.3;
    margin-bottom: 10px;
  }
  .section8 ul li {
    width: 32%;
    padding: 3% 1%;
    border: 3px solid #f19149;
    border-radius: 20px;
  }
  .section8 ul {
    margin-bottom: 20px;
  }
  .section8 .flow .item {
    padding: 15px 0 25px;
    margin-bottom: 15px;
  }
  .section8 .flow {
    font-size: 16px;
    max-width: 290px;
  }
  .section8 .flow .item1::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 0 4vw 145px;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .section8 .flow .item1::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 145px 4vw 0vw;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .section8 .flow .item2::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 0 4vw 145px;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .section8 .flow .item2::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 145px 4vw 0vw;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .section8 .flow .item3::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 0 4vw 145px;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .section8 .flow .item3::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-width: 0vw 145px 4vw 0vw;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 3;
  }
  .section9 .text1 {
    font-size: 14px;
  }
  .section9 .text1 .left {
    position: absolute;
    left: -15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 25px;
  }
  .section9 .text1 .right {
    position: absolute;
    right: -15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 25px;
  }
  .section9 .text1 {
    max-width: 350px;
  }
  .section9 .text2 {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    position: relative;
    z-index: 4;
  }
  .section9 .text2 .small {
    font-size: 13px;
  }
  .section9 {
    padding-bottom: 70px;
  }
  .section9 .inner .person {
    position: absolute;
    bottom: -65px;
    max-width: 80px;
    right: 10px;
  }
  .section10 .wrap1 .text2 span,
  .section10 .wrap1 .text3 span {
    font-size: 13px;
  }
  .section10 .wrap1 .text1,
  .section10 .wrap1 .text2,
  .section10 .wrap1 .text3 {
    font-size: 16px;
  }
  .section10 .wrap1 {
    margin-bottom: 40px;
    max-width: 290px;
    margin: 0 auto 20px;
  }
  .section10 .wrap1 .text2 .right {
    max-width: 50px;
    position: absolute;
    top: 42%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -50px;
  }
  .section10 .wrap1 .text2 .left {
    max-width: 50px;
    position: absolute;
    top: 42%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -50px;
  }
  .section10 .wrap2 .text1 {
    font-size: 16px;
  }
  .section10 .wrap2 .text2 {
    font-size: 24px;
  }
  .section10 .wrap2 .text3 {
    font-size: 14px;
  }
  .section10 .wrap1 {
    margin-bottom: 40px;
    max-width: 260px;
    margin: 0 auto 20px;
  }
  .section11 h2 .text {
    font-size: 16px;
  }
  .section11 h2 .text .right {
    position: absolute;
    max-width: 50px;
    top: 20%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -60px;
  }
  .section11 h2 .text .left {
    position: absolute;
    max-width: 50px;
    top: 20%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -60px;
  }
  .section11 h2 {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .section11 ul li .small {
    font-size: 13px;
  }
  .section11 ul li .row1 .text {
    font-size: 16px;
  }
  .section11 ul li .row1 .num {
    color: #f45a79;
    font-size: 38px;
    margin-right: 10px;
    font-family: 'Arial', sans-serif;
    position: relative;
  }
  .section11 ul li .row1 .num .point {
    position: absolute;
    max-width: 50px;
    width: 80px;
    top: -42px;
    left: -34px;
  }
  .section11 ul li {
    margin-bottom: 15px;
  }
  .section11 ul li:last-child {
    margin-bottom: 0;
  }
  .section11 ul li .row2 {
    font-size: 13px;
    margin-bottom: 10px;
  }
  .section11 ul li .row1 {
    margin-bottom: 0;
  }
  .section11 ul li .row3 {
    width: 80%;
    margin: 0 auto;
  }
  .section11 .last_item {
    display: block;
  }
  .section11 .last_item .row1 {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .section11 .last_item .left {
    width: 100%;
  }
  .section11 .last_item .right {
    width: 100%;
  }
  .section11 .last_item .row2 {
    font-size: 13px;
    margin-bottom: 10px;
  }
  .section11 .last_item .row1 {
    text-align: center;
  }
  .section12 .lead {
    font-size: 14px;
    text-align: center;
    font-weight: 500;
    margin-bottom: 10px;
  }
  .section12 h2 .text1 {
    font-size: 18px;
    position: relative;
    line-height: 1;
    margin-bottom: 10px;
  }
  .section12 h2 .text1 .min_right {
    position: absolute;
    top: 50%;
    right: 0px;
    max-width: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section12 h2 .text1 .min_left {
    position: absolute;
    top: 50%;
    left: 0px;
    max-width: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section12 h2 .text1 {
    font-size: 18px;
    position: relative;
    line-height: 1;
    margin-bottom: 10px;
    max-width: 230px;
    width: 230px;
    margin: 0 auto;
  }
  .section12 h2 .text2 {
    font-size: 30px;
  }
  .section12 h2 .text2 .span1 {
    font-size: 37px;
  }
  .section12 h2 .h2_right {
    position: absolute;
    top: 20%;
    right: -60px;
    max-width: 60px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section12 h2 .h2_left {
    position: absolute;
    top: 20%;
    left: -60px;
    max-width: 60px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section12 ul li .content {
    font-size: 13px;
  }
  .section12 ul li .content .big {
    font-size: 14px;
  }
  .section12 ul li .content .middle {
    font-size: 13px;
  }
  .section12 ul li .icon .wrap .heading {
    font-size: 11px;
    font-weight: 600;
  }
  .section12 ul li .icon .wrap .num {
    font-size: 14px;
  }
  .section12 ul li .icon {
    width: 37px;
    height: 37px;
    min-width: 37px;
    border-radius: 50%;
    background: #c2103c;
    text-align: center;
    display: table;
  }
  .section12 ul li .img1 {
    position: absolute;
    max-width: 55px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -16%;
  }
  .section12 ul li .img2 {
    position: absolute;
    max-width: 40px;
    top: 23%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -16%;
  }
  .section12 ul li .icon .wrap .num {
    font-size: 11px;
  }
  .section12 ul li .content {
    margin-left: 10px;
  }
  .section12 ul li .content {
    line-height: 1.5;
  }
  .section12 ul {
    padding: 15px;
  }
  .section12 ul .icon1 {
    position: absolute;
    top: 5px;
    left: 5px;
    max-width: 50px;
  }
  .section12 ul .icon2 {
    position: absolute;
    top: 5px;
    right: 5px;
    max-width: 50px;
  }
  .section12 ul .icon3 {
    position: absolute;
    bottom: 5px;
    right: 5px;
    max-width: 50px;
  }
  .section12 ul .icon4 {
    position: absolute;
    bottom: 5px;
    left: 5px;
    max-width: 50px;
  }
  .section12 ul .icon-right {
    position: absolute;
    top: 50%;
    right: 3px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 6px;
  }
  .section12 ul .icon-left {
    position: absolute;
    top: 50%;
    left: 3px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 6px;
  }
  .section12 ul li {
    padding: 10px 0;
  }
  .section12 ul .icon-top {
    position: absolute;
    top: -7px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 600px;
  }
  .section12 ul .icon-bottom {
    position: absolute;
    bottom: 4px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 600px;
  }
  .section12 ul li .img1 {
    position: absolute;
    max-width: 55px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0%;
  }
  .section12 ul li .img2 {
    position: absolute;
    max-width: 45px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -1%;
  }
  .section13 h2 .wrap {
    font-size: 16px;
    text-align: center;
    font-weight: 500;
    display: inline-block;
    padding: 0px 24px 18px 24px;
    position: relative;
  }
  .section13 h2 {
    margin-bottom: 20px;
  }
  .section13 .lead {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .section13 .row1 .small {
    font-size: 16px;
  }
  .section13 .row1 {
    font-size: 22px;
  }
  .section13 .row1 .small {
    font-size: 14px;
  }
  .section13 .row1 .small {
    top: -1px;
  }
  .section13 .row2 {
    font-size: 22px;
  }
  .section13 .row2 {
    font-size: 22px;
  }
  .section13 .row2 .small {
    font-size: 14px;
    top: -1px;
  }
  .section13 .row3 {
    font-size: 16px;
  }
  .section13 .row2 .en_top {
    font-size: 10px;
  }
  .section13 .row1 {
    margin-bottom: 20px;
  }
  .section13 .row2 {
    margin-bottom: 20px;
  }
  .section13 .row3 {
    margin-bottom: 20px;
  }
  .section13 .row4 .text {
    font-size: 20px;
  }
  .section13 .row4 .text .icon {
    position: absolute;
    top: -17px;
    left: -17px;
    max-width: 20px;
  }
  .section13 .row5 {
    font-size: 30px;
  }
  .section13 .row3 {
    margin-bottom: 0;
  }
  .pink_box {
    margin-bottom: 20px;
    margin-top: 20px;
  }
  .section14 h2 {
    font-size: 16px;
  }
  .section14 .lead {
    font-size: 16px;
  }
  .section14 .lead .text1 .right {
    position: absolute;
    right: -40px;
    bottom: 7%;
    max-width: 30px;
  }
  .section14 .lead .text1 .left {
    position: absolute;
    left: -40px;
    bottom: 7%;
    max-width: 30px;
  }
  .section12 ul {
    padding: 20px 20px;
  }
  .section14 h2 {
    margin-bottom: 20px;
  }
  .section14 .row1 {
    font-size: 14px;
    font-weight: 500;
    text-align: center;
  }
  .section_btn a {
    padding: 10px 0;
    display: block;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    max-width: 780px;
    margin: 0 auto 0px;
    background: -webkit-gradient(linear, left top, left bottom, from(#f8c500), to(#ee6a00));
    background: linear-gradient(to bottom, #f8c500, #ee6a00);
    -webkit-transition: .3s;
    transition: .3s;
    text-shadow: 1px 1px 3px #707070;
  }
  .section_btn a span {
    margin-left: 10px;
    font-size: 10px;
  }
  .section_btn {
    text-align: center;
    margin-bottom: 20px;
  }
  .section15 .text {
    font-size: 13px;
  }
  .section16 .se16_items {
    display: block;
  }
  .section16 .se16_img {
    width: 80%;
    margin: 0 auto;
  }
  .section16 .se16_content {
    width: 100%;
  }
  .section16 .title_heading {
    font-size: 14px;
  }
  .section16 .title_bottom {
    font-size: 14px;
  }
  .section16 .title_bottom span {
    font-size: 13px;
    margin-left: 10px;
  }
  .section16 .se16_wrap1 {
    margin-bottom: 10px;
    text-align: center;
  }
  .section16 .se16_wrap2 {
    font-size: 13px;
  }
  .section16 .se16_items {
    margin-bottom: 15px;
  }
  .section16 .pro_text {
    font-size: 13px;
  }
  .footer .copyright {
    font-size: 12px;
  }
}

@media screen and (max-width: 360px) {
  .section2 ul li {
    font-size: 12px;
    width: 135px;
    height: 135px;
    -webkit-box-shadow: 4px 4px 0px #7ecef4;
            box-shadow: 4px 4px 0px #7ecef4;
  }
  .section8 ul li .text {
    font-size: 11px;
  }
  .section9 .text1 {
    font-size: 12px;
  }
  .section12 h2 .h2_right {
    position: absolute;
    top: 20%;
    right: -44px;
    max-width: 60px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section12 h2 .h2_left {
    position: absolute;
    top: 20%;
    left: -44px;
    max-width: 60px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media screen and (min-width: 768px) {
  .section16 .pro_text {
    font-size: 21px;
  }
}

@media screen and (max-width: 767px) {
  .section9 .text2 .dot {
    padding-top: 0.7em;
    background-position: top left 0px;
    background-repeat: repeat-x;
    background-size: 1em 0.8em;
    background-image: radial-gradient(0.09em 0.09em at center center, #f45a79, #f45a79 100%, transparent);
  }
}

.dot_span {
  position: relative;
}

.dot_span::before {
  content: "・";
  /* 文字の上に置くものを指定 */
  position: absolute;
  /* 相対位置とする */
  top: -1em;
  /* 縦方向の表示位置を調整（-1emくらいがちょうどいいかんじ） */
  left: 0;
  color: #f45a79;
}

@media screen and (max-width: 767px) {
  .section3 h2 span {
    letter-spacing: 0;
  }
}

.section3 h2 span {
  letter-spacing: 0;
}

.banner {
  position: fixed;
  bottom: 2%;
  right: 1%;
  width: 280px;
  border-radius: 20px;
  -webkit-box-shadow: 0 3px 6px #707070;
          box-shadow: 0 3px 6px #707070;
  background: #fff;
  z-index: 10000;
}

.banner .wrap {
  position: relative;
  text-align: center;
}

.banner .img img {
  overflow: hidden;
  border-radius: 20px 20px 0 0;
}

.banner .batu {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 15px;
  display: block;
  -webkit-transition: .3s;
  transition: .3s;
}

.banner .batu:hover {
  opacity: .6;
}

.banner .batu img {
  vertical-align: middle;
}

.banner .content {
  padding: 20px 15px;
}

.banner .title {
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: 500;
}

.banner .btn {
  text-align: center;
}

.banner .btn a {
  display: block;
  background: -webkit-gradient(linear, left top, left bottom, from(#66ded1), to(#229efd));
  background: linear-gradient(to bottom, #66ded1, #229efd);
  font-size: 16px;
  padding: 10px 0;
  border-radius: 10px;
  -webkit-transition: .3s;
  transition: .3s;
  color: #fff;
  font-weight: 500;
}

.banner .btn a:hover {
  opacity: .6;
}

.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
  -webkit-transition: all 1s;
  transition: all 1s;
  z-index: -1;
}

.fadein.active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  z-index: 10000;
}

.none {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .banner {
    -webkit-box-shadow: none;
            box-shadow: none;
    position: fixed;
    bottom: 0;
    width: 100%;
    left: 0;
    right: initial;
    border-radius: 0;
  }
  .banner .content {
    padding: 10px;
  }
}

@media screen and (min-width: 768px) {
  .section5 .lead span {
    font-size: 42px;
    font-weight: 500;
  }
}

.blue_section h2 {
  text-align: center;
  line-height: 1;
  margin-bottom: 20px;
}

.blue_section h2 .heading {
  font-size: 28px;
  font-weight: 600;
  margin-bottom: 10px;
}

.blue_section h2 .bottom {
  display: inline-block;
  font-weight: 600;
  font-size: 40px;
  color: #f45a79;
  position: relative;
}

.blue_section h2 .bottom span {
  font-size: 50px;
  letter-spacing: 3px;
}

.blue_section h2 .bottom .left {
  position: absolute;
  max-width: 45px;
  bottom: 0;
  left: -45px;
}

.blue_section h2 .bottom .right {
  position: absolute;
  max-width: 45px;
  bottom: 0;
  right: -45px;
}

.blue_section .box {
  background: #fff;
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 20px;
  border-radius: 20px;
}

.blue_section .lest-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}

.blue_section ul {
  max-width: 440px;
  margin: 0 auto 30px;
}

.blue_section ul li {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 20px;
}

.blue_section ul li .icon {
  display: inline-block;
  width: 20px;
  margin-right: 10px;
}

.blue_section ul li .icon img {
  vertical-align: initial;
}

.blue_section .text {
  font-size: 34px;
  font-weight: 500;
  text-align: center;
}

.blue_section .text span {
  font-size: 38px;
  color: #f19149;
}

@media screen and (max-width: 767px) {
  .banner .btn a {
    position: relative;
  }
  .banner .btn a .hand_img {
    max-width: 35px;
    position: absolute;
    top: 35%;
    right: 10px;
  }
  .blue_section h2 .heading {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
  }
  .blue_section h2 .bottom {
    display: inline-block;
    font-weight: 600;
    font-size: 22px;
    color: #f45a79;
    position: relative;
  }
  .blue_section h2 .bottom span {
    font-size: 30px;
    letter-spacing: 3px;
  }
  .blue_section h2 .bottom .right {
    position: absolute;
    max-width: 15px;
    bottom: 0;
    right: -15px;
  }
  .blue_section h2 .bottom .left {
    position: absolute;
    max-width: 15px;
    bottom: 0;
    left: -15px;
  }
  .blue_section .box {
    padding: 10px;
  }
  .blue_section ul li {
    font-size: 14px;
  }
  .blue_section ul li .icon {
    display: inline-block;
    width: 15px;
    margin-right: 5px;
  }
  .blue_section .text {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
  }
  .blue_section .text span {
    font-size: 22px;
    color: #f19149;
  }
}

@media screen and (min-width: 768px) {
  .blue_section h2 .heading {
    font-size: 35px;
    font-weight: 600;
    margin-bottom: 10px;
  }
  .blue_section h2 .bottom {
    display: inline-block;
    font-weight: 600;
    font-size: 50px;
    color: #f45a79;
    position: relative;
  }
  .blue_section h2 .bottom span {
    font-size: 66px;
    letter-spacing: 3px;
  }
}

@media screen and (max-width: 767px) {
  .top_band .top_text1 {
    font-size: 18px;
  }
  .top_band .top_text2 {
    font-size: 23px;
  }
  .top_band .text {
    font-size: 23px;
    font-weight: bold;
    white-space: nowrap;
  }
  .section1 h2 {
    font-size: 23px;
    font-weight: bold;
  }
  .section1 .lead {
    font-weight: bold;
    font-size: 23px;
  }
  .section1 ul li {
    padding-left: 0px;
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: 500;
  }
  .but_other .text {
    font-weight: 600;
    font-size: 23px;
  }
  .section2 ul li {
    font-size: 16px;
    font-weight: 600;
  }
  .section2 ul li {
    width: 180px;
    height: 180px;
    white-space: nowrap;
  }
  .section2 .bottom_text .text {
    font-size: 16px;
  }
  .but_other2 .text {
    font-size: 23px;
    font-weight: bold;
  }
  .but_other2 .text .img {
    position: relative;
    top: -8px;
    max-width: 45px;
    margin-right: 5px;
  }
  .section3 h2 {
    font-size: 23px;
    line-height: 1.2;
    font-weight: bold;
  }
  .section2 .bottom_text .cry {
    max-width: 100px;
    margin: 0 auto;
    position: absolute;
    bottom: -61px;
    right: 10%;
    width: 100%;
    right: 0px;
  }
  .section3 .bottom .right {
    width: 100%;
    font-size: 16px;
    line-height: 2;
  }
  .section4 h2 {
    font-size: 22px;
  }
  .section4 h2 span {
    font-size: 21px;
  }
  .section4 h2 .icon-left {
    position: absolute;
    bottom: 0;
    left: -6%;
    max-width: 30px;
  }
  .section4 h2 .icon-right {
    position: absolute;
    bottom: 0;
    right: -6%;
    max-width: 30px;
  }
  .section4 ul li .heading {
    top: -5px;
  }
  .section4 ul li .heading {
    position: absolute;
    top: 10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #77c0dd;
    text-align: center;
    color: #fff;
    font-size: 20px;
    display: table;
  }
  .section4 ul li {
    background: #e0f2ff;
    padding: 110px 0 50px;
    text-align: center;
    position: relative;
    border-radius: 24px;
  }
  .section4 ul li .text {
    font-size: 20px;
    font-weight: 700;
  }
  .section4 ul li .text span {
    font-size: 20px;
    font-weight: bold;
  }
  .section4 ul li .bottom {
    font-size: 22px;
  }
  .section4 .last_text {
    font-size: 20px;
    white-space: nowrap;
  }
  .section4 {
    padding-bottom: 120px;
  }
  .section4 .person1 {
    position: absolute;
    max-width: 100px;
    left: 2%;
    bottom: -120px;
    z-index: 2;
  }
  .section-title .red3 {
    font-size: 20px;
    color: #f45a79;
  }
  .section-title .big {
    font-size: 23px;
  }
  .section-title .icon .point_text {
    font-size: 14px;
  }
  .section-title .icon .point_text span {
    font-size: 20px;
  }
  .section-title .icon {
    width: 70px;
    height: 70px;
    top: -45px;
  }
  .section5 {
    padding-top: 120px;
  }
  .section5 .lead {
    font-size: 18px;
    text-align: center;
    font-weight: 400;
  }
  .section-title .text {
    font-weight: 600;
  }
  .section5 .bottom_text {
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    margin-top: 20px;
  }
  .section5 .bottom_text span {
    font-size: 22px;
    margin-bottom: 20px;
    display: block;
  }
  .section5 .blue_band {
    font-size: 25px;
    padding: 29px 20px 20px;
  }
  .blue_section h2 .heading {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
  }
  .blue_section h2 .bottom {
    display: inline-block;
    font-weight: 700;
    font-size: 28px;
    color: #f45a79;
    position: relative;
  }
  .blue_section ul li {
    font-size: 16px;
  }
  .blue_section .box {
    padding: 20px 15px;
  }
  .blue_section .text {
    font-size: 20px;
    font-weight: 500;
    text-align: center;
  }
  .section6 {
    padding-top: 80px;
  }
  .section-title .text {
    font-size: 20px;
  }
  .section6 .lead {
    max-width: 900px;
    font-size: 16px;
    margin: 0 auto;
  }
  .section6 .lead span {
    font-size: 20px;
    font-weight: 600;
  }
  .section7 .box .text {
    font-size: 22px;
    font-weight: 600;
    color: #f45a79;
    text-align: center;
  }
  .section7 .box .right {
    position: absolute;
    max-width: 25px;
    top: 68%;
    right: 3%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .other .text {
    font-size: 23px;
    font-weight: bold;
  }
  .section7 ul li {
    font-size: 18px;
    font-weight: 600;
  }
  .section7 .bottom_text1 {
    font-size: 16px;
    max-width: 680px;
    margin: 0 auto 20px;
    font-weight: 500;
  }
  .section7 .bottom_text2 {
    font-size: 16px;
  }
  .section7 .person2 {
    max-width: 100px;
    position: absolute;
    bottom: -130px;
    right: 21px;
  }
  .section7 {
    padding-bottom: 130px;
  }
  .section8 {
    padding-top: 120px;
  }
  .section-title .big2 {
    font-size: 23px;
    font-weight: bold;
  }
  .section8 ul li .text {
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;
  }
  .section8 .flow {
    font-size: 20px;
    font-weight: bold;
  }
  .section9 .text1 {
    font-size: 20px;
    margin: 0 auto;
  }
  .section-title .red2 {
    font-size: 26px;
    color: #f45a79;
  }
  .section-title .red3 {
    font-size: 23px;
    color: #f45a79;
  }
  .section-title .text {
    font-size: 23px;
    font-weight: 700;
  }
  .section9 .text1 .right {
    position: absolute;
    right: -12px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 50px;
  }
  .section9 .text1 .left {
    position: absolute;
    left: -12px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 50px;
  }
  .section9 .text2 {
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    position: relative;
    z-index: 4;
    font-weight: 700;
  }
  .section9 .text1 {
    font-weight: 700;
  }
  .section9 .inner .person {
    position: absolute;
    bottom: -100px;
    max-width: 100px;
    right: 10px;
  }
  .section9 {
    padding-bottom: 100px;
  }
  .section10 .wrap1 .text1,
  .section10 .wrap1 .text2,
  .section10 .wrap1 .text3 {
    font-size: 20px;
    font-weight: bold;
  }
  .section9 .text2 .small {
    font-size: 14px;
  }
  .section10 .wrap1 .text2 span,
  .section10 .wrap1 .text3 span {
    font-size: 14px;
  }
  .section10 .wrap1 .text3 span {
    font-size: 18px;
  }
  .section10 .wrap2 .text1 {
    font-size: 20px;
    font-weight: 600;
  }
  .section10 .wrap2 .text2 {
    font-size: 32px;
  }
  .text3 {
    font-size: 20px !important;
  }
  .section11 h2 .text {
    font-size: 23px;
    font-weight: 700;
  }
  .section11 ul li .small {
    font-size: 16px;
  }
  .section11 ul li .row1 .text {
    font-size: 23px;
    font-weight: 600;
  }
  .section11 ul li .small {
    font-size: 18px;
  }
  .section11 ul li .row2 {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.7;
  }
  .section11 .last_item .row1 {
    font-size: 23px;
    margin-bottom: 10px;
    font-weight: bold;
  }
  .section11 .last_item .row2 {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .section12 .lead {
    font-size: 16px;
    text-align: center;
    font-weight: 600;
    margin-bottom: 10px;
  }
  .section12 h2 .text1 {
    font-size: 20px;
    position: relative;
    line-height: 1;
    margin-bottom: 10px;
    max-width: 290px;
    width: 250px;
    margin: 0 auto;
    font-weight: 600;
  }
  .section12 h2 .text2 {
    font-size: 37px;
  }
  .section12 h2 .text2 .span1 {
    font-size: 46px;
  }
  .section12 ul li .content {
    font-size: 16px;
  }
  .section12 ul li {
    padding: 15px 0;
    font-weight: 700;
  }
  .section12 ul li .content .big {
    font-size: 16px;
    font-weight: 600;
  }
  .section12 ul li .content .middle {
    font-size: 16px;
    font-weight: 600;
  }
  .section12 ul li .content {
    font-weight: 600;
  }
  .section12 ul li .img1 {
    max-width: 137px;
  }
  .section12 ul li .img2 {
    max-width: 125px;
    right: -10%;
  }
  .section13 h2 .wrap {
    font-size: 21px;
    font-weight: 600;
  }
  .section13 .lead {
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: 600;
  }
  .section13 .row1 {
    font-size: 24px;
    font-weight: 600;
  }
  .section13 .row1 .small {
    font-size: 17px;
    font-weight: 600;
  }
  .section13 .row2 .small {
    font-size: 17px;
    top: -1px;
    font-weight: 600;
  }
  .section13 .row2 {
    font-size: 34px;
    font-weight: 600;
  }
  .section13 .row3 {
    font-size: 18px;
    font-weight: 600;
  }
  .section13 .row4 .text {
    font-size: 27px;
    font-weight: 600;
  }
  .section13 .row5 {
    font-size: 42px;
    font-weight: 600;
  }
  .section14 h2 {
    font-size: 20px;
    font-weight: 600;
  }
  .section14 .lead {
    font-size: 23px;
    font-weight: 600;
  }
  .section14 .row1 {
    font-size: 16px;
    font-weight: 600;
    text-align: center;
  }
  .section_btn a {
    font-size: 22px;
    font-weight: bold;
  }
  .section_btn a span {
    font-size: 14px;
  }
  .section15 .text {
    font-size: 16px;
  }
  .section16 .title_heading {
    font-size: 16px;
    font-weight: bold;
  }
  .section16 .title_bottom {
    font-size: 16px;
    font-weight: bold;
  }
  .section16 .title_bottom span {
    font-size: 15px;
    font-weight: bold;
  }
  .section16 .se16_wrap2 {
    font-size: 16px;
  }
  .section16 .pro_text {
    font-size: 16px;
  }
  .section4 ul li {
    width: 90%;
  }
  .section1 h2 {
    white-space: nowrap;
  }
  body {
    padding-bottom: 87px;
  }
  .section4 h2 {
    font-weight: bold;
  }
  .section4 ul li .bottom {
    font-weight: bold;
  }
  .blue_section .text {
    font-weight: 700;
  }
  .section4 .last_text,
  .section5 .bottom_text,
  .section5 .blue_band,
  .section7 .box .text,
  .section10 .wrap2 .text1,
  .section10 .wrap2 .text2,
  .section10 .wrap2 .text3,
  .section11 ul li .small,
  .section11 ul li span,
  .section11 ul li .row1 .text,
  .section12 h2 .text1,
  .section12 .lead,
  .section12 h2 .text2 .span1,
  .section12 h2 .text2,
  .section12 ul li .content,
  .section12 ul li .content .red,
  .section12 ul li .content .big,
  .section12 ul li .content .big,
  .section12 ul li .content .middle,
  .section13 h2 .wrap,
  .section13 .lead,
  .section13 .row1,
  .section13 .row1 .small,
  .section13 .row2 .small,
  .section13 .row2,
  .section13 .row3,
  .section13 .row4 .text,
  .section14 h2,
  .section14 .lead .text1,
  .section14 .row1,
  .banner .title,
  .banner .btn a,
  .section6 .lead span,
  .section7 .bottom_text2 .span1,
  .min,
  .section12 ul li .icon .wrap .heading,
  .section12 ul li .icon .wrap .num,
  .section3 .bottom .right span {
    font-weight: bold !important;
  }
}

@media screen and (max-width: 374px) {
  .section14 h2 {
    font-size: 18px;
  }
}

@media screen and (max-width: 405px) {
  .section12 ul li .img2 {
    max-width: 105px;
    right: -10%;
  }
}

@media screen and (max-width: 398px) {
  .section12 ul li .img2 {
    max-width: 95px;
    right: -10%;
  }
}

@media screen and (max-width: 379px) {
  .section12 ul li .img2 {
    max-width: 90px;
    right: -10%;
    top: 15%;
  }
}

@media screen and (max-width: 374px) {
  .section12 ul li .img2 {
    right: -10%;
  }
}

@media screen and (max-width: 368px) {
  .section12 ul li .img2 {
    right: -10%;
  }
}

@media screen and (max-width: 374px) {
  .section12 ul li .img1 {
    max-width: 107px;
  }
}

@media screen and (max-width: 345px) {
  .section12 ul li .img1 {
    max-width: 87px;
  }
}

@media screen and (max-width: 355px) {
  .top_band .text {
    font-size: 20px;
    font-weight: bold;
    white-space: nowrap;
  }
  .section12 h2 .h2_left {
    max-width: 50px;
  }
  .section12 h2 .h2_right {
    max-width: 50px;
  }
}

@media screen and (max-width: 368px) {
  .section11 ul li .small {
    font-size: 16px;
  }
}

@media screen and (max-width: 390px) {
  .section11 ul li .row1 .num .point {
    position: absolute;
    max-width: 43px;
    width: 80px;
    top: -42px;
    left: -13px;
  }
}

@media screen and (max-width: 399px) {
  .section9 .text1 {
    font-size: 18px;
    margin: 0 auto;
  }
  .section9 .text2 {
    font-size: 18px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 340px) {
  .section9 .text1 {
    font-size: 17px;
    margin: 0 auto;
  }
  .section9 .text2 {
    font-size: 17px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 399px) {
  .section8 ul li .text {
    font-size: 13.5px;
    font-weight: 700;
  }
}

@media screen and (max-width: 375px) {
  .section8 ul li .text {
    font-size: 13px;
    font-weight: 700;
  }
}

@media screen and (max-width: 354px) {
  .section8 ul li .text {
    font-size: 12px;
    font-weight: 700;
  }
}

@media screen and (max-width: 330px) {
  .section8 ul li .text {
    font-size: 11px;
    font-weight: 700;
  }
}

@media screen and (max-width: 390px) {
  .section7 .box .text {
    font-size: 20px;
    font-weight: 600;
    color: #f45a79;
    text-align: center;
    white-space: nowrap;
  }
}

@media screen and (max-width: 360px) {
  .blue_section .text {
    font-size: 16px !important;
    font-weight: 500;
    text-align: center;
  }
  .blue_section .box {
    padding: 20px 10px;
  }
  .blue_section .text span {
    font-size: 18px;
    color: #f19149;
  }
  .blue_section ul li {
    font-size: 15px;
  }
}

@media screen and (max-width: 360px) {
  .section5 .blue_band {
    font-size: 23px;
    padding: 29px 20px 20px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 410px) {
  .section2 ul li {
    font-size: 15px;
    font-weight: 600;
  }
  .section2 ul li {
    width: 170px;
    height: 170px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 383px) {
  .section2 ul li {
    font-size: 15px;
    font-weight: 600;
  }
  .section2 ul li {
    width: 164px;
    height: 164px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 364px) {
  .section2 ul li {
    font-size: 13px;
    font-weight: 600;
  }
  .section2 ul li {
    width: 145px;
    height: 145px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 333px) {
  .section2 ul li {
    font-size: 12.5px;
    font-weight: 600;
  }
  .section2 ul li {
    width: 140px;
    height: 140px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 1000px) and (min-width: 768px) {
  body {
    overflow-x: hidden;
  }
  .section2 .bottom_text .cry {
    max-width: 180px;
    margin: 0 auto;
    position: absolute;
    bottom: -70px;
    right: 10%;
    width: 100%;
    right: -28%;
  }
  .section3 .star-left {
    position: absolute;
    bottom: -17%;
    left: 7%;
    max-width: 80px;
  }
  .section3 .star-right {
    position: absolute;
    top: -16%;
    right: 7%;
    max-width: 80px;
  }
  .section2 ul li {
    color: #59493f;
    border-radius: 50%;
    background: #fff;
    width: 300px;
    height: 300px;
    text-align: center;
    font-size: 22px;
    display: table;
    text-align: center;
    font-weight: 500;
    -webkit-box-shadow: 11px 11px 0px #7ecef4;
    box-shadow: 11px 11px 0px #7ecef4;
    line-height: 2;
  }
  .section4 ul li .text {
    font-size: 17px;
    font-weight: 500;
  }
  .section4 ul li .text span {
    color: #f45a79;
    font-size: 17px;
  }
  .section4 ul li .bottom {
    font-size: 21px;
    font-weight: 600;
    color: #59493f;
    line-height: 1.3;
  }
  .blue_section .text {
    font-size: 24px;
    font-weight: 500;
    text-align: center;
  }
  .blue_section .text span {
    font-size: 30px;
    color: #f19149;
  }
  .section6 .lead {
    white-space: initial;
  }
  .section12 h2 .h2_right {
    position: absolute;
    top: 50%;
    right: -70px;
    max-width: 80px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section12 h2 .h2_left {
    position: absolute;
    top: 50%;
    left: -70px;
    max-width: 80px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .section12 ul li .icon {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: #c2103c;
    text-align: center;
    display: table;
    min-width: 150px;
  }
  .section12 ul li .content .big {
    font-size: 43px;
    font-weight: 500;
  }
  .section12 ul li .content {
    font-size: 30px;
    margin-left: 30px;
    font-weight: 300;
    line-height: 1.2;
  }
  .section12 ul li .content .middle {
    font-size: 48px;
    font-weight: 500;
  }
  .section12 ul li .content {
    font-size: 26px;
    margin-left: 30px;
    font-weight: 300;
    line-height: 1.2;
  }
  .section12 ul li .content .big {
    font-size: 32px;
    font-weight: 500;
  }
  .section12 ul li .content .middle {
    font-size: 32px;
    font-weight: 500;
  }
  .section_btn a {
    font-size: 30px;
  }
}

@media screen and (max-width: 1050px) and (min-width: 768px) {
  .section12 ul li .img1 {
    position: absolute;
    max-width: 229px;
    top: -2%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -2%;
  }
  body, html {
    overflow-x: hidden;
  }
}

@media screen and (max-width: 1050px) and (min-width: 768px) {
  .section12 ul li .img2 {
    position: absolute;
    max-width: 200px;
    top: 0%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -5%;
  }
}

html {
  scroll-behavior: smooth;
}
.section1 .movie {
	
}
.movie1 .movie_wrap{
  padding-top: 48.5%;
  position: relative;
  width: 100%;
}

.movie1 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
