/* Sass Document */
#intro {
  padding: 6rem 0 10rem;
}
@media screen and (max-width: 1200px) {
  #intro {
    padding: 5vw 0 8.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #intro {
    padding: 18.6666666667vw 0 6.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .wrap {
    width: 92vw;
  }
}
#intro .center {
  margin-bottom: 6rem;
}
@media screen and (max-width: 1200px) {
  #intro .center {
    margin-bottom: 5vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .center {
    width: 86.6666666667vw;
    margin: 0 auto 9.3333333333vw;
  }
}
#intro .center p {
  text-align: center;
}
@media screen and (max-width: 840px) {
  #intro .center p {
    font-size: 3.7333333333vw;
  }
}
#intro .page_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.2rem;
  margin-bottom: 8rem;
}
@media screen and (max-width: 1200px) {
  #intro .page_nav {
    gap: 1vw;
    margin-bottom: 6.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .page_nav {
    gap: 1.3333333333vw;
    margin-bottom: 13.3333333333vw;
  }
}
#intro .page_nav li {
  width: calc((100% - 2.4rem) / 3);
}
@media screen and (max-width: 1200px) {
  #intro .page_nav li {
    width: calc((100% - 2vw) / 3);
  }
}
@media screen and (max-width: 840px) {
  #intro .page_nav li {
    width: calc((100% - 1.3333333333vw) / 2);
  }
}
#intro .page_nav li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 7.5rem;
  font-size: 1.7rem;
  color: #0A51B8;
  font-weight: 700;
  border: 0.15rem solid #0A51B8;
  border-radius: 0.5rem;
}
@media screen and (max-width: 1200px) {
  #intro .page_nav li a {
    height: 6.25vw;
    font-size: 1.4166666667vw;
    border-radius: 0.4166666667vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .page_nav li a {
    height: 17.6vw;
    padding-right: 2.4vw;
    font-size: 3.7333333333vw;
    text-align: center;
    line-height: 1.5;
    border-radius: 1.3333333333vw;
  }
}
#intro .page_nav li a br.tab {
  display: none;
}
@media screen and (max-width: 1200px) {
  #intro .page_nav li a br.tab {
    display: block;
  }
}
#intro .page_nav li a .arrow {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 2rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 0.15rem solid #0A51B8;
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 1200px) {
  #intro .page_nav li a .arrow {
    right: 1.25vw;
    width: 1.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .page_nav li a .arrow {
    right: 2.4vw;
    width: 4vw;
  }
}
#intro .page_nav li a .arrow:after {
  content: "";
  display: block;
  width: 0.4rem;
  height: 0.4rem;
  border-top: solid 0.15rem #0A51B8;
  border-right: solid 0.15rem #0A51B8;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
@media screen and (max-width: 1200px) {
  #intro .page_nav li a .arrow:after {
    width: 0.3333333333vw;
    height: 0.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .page_nav li a .arrow:after {
    width: 1.0666666667vw;
    height: 1.0666666667vw;
    -webkit-transform: translateY(-0.2666666667vw) rotate(135deg);
            transform: translateY(-0.2666666667vw) rotate(135deg);
  }
}
#intro .banner {
  max-width: 70rem;
  margin: 0 auto 5rem;
}
@media screen and (max-width: 1200px) {
  #intro .banner {
    margin: 0 auto 4.1666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .banner {
    margin: 0 auto 5.3333333333vw;
  }
}
#intro .tour_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.2rem;
}
@media screen and (max-width: 1200px) {
  #intro .tour_list {
    gap: 1vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .tour_list {
    gap: 1.3333333333vw;
  }
}
#intro .tour_list li {
  width: calc((100% - 3.6rem) / 4);
}
@media screen and (max-width: 1200px) {
  #intro .tour_list li {
    width: calc((100% - 3vw) / 4);
  }
}
@media screen and (max-width: 840px) {
  #intro .tour_list li {
    width: 100%;
  }
}
#intro .tour_list li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.8rem;
  width: 100%;
  height: 7.5rem;
  font-size: 1.7rem;
  color: #fff;
  font-weight: 700;
  border-radius: 0.5rem;
  background: #1D2089;
}
@media screen and (max-width: 1200px) {
  #intro .tour_list li a {
    gap: 1.5vw;
    height: 6.25vw;
    font-size: 1.4166666667vw;
    border-radius: 0.4166666667vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .tour_list li a {
    gap: 4.8vw;
    height: 17.3333333333vw;
    font-size: 4.2666666667vw;
    border-radius: 1.3333333333vw;
  }
}
#intro .tour_list li a img {
  width: 1.5rem;
}
@media screen and (max-width: 1200px) {
  #intro .tour_list li a img {
    width: 1.25vw;
  }
}
@media screen and (max-width: 840px) {
  #intro .tour_list li a img {
    width: 4vw;
  }
}

.day_trip_con {
  padding: 4.5rem 0;
}
@media screen and (max-width: 1200px) {
  .day_trip_con {
    padding: 3.75vw 0;
  }
}
@media screen and (max-width: 840px) {
  .day_trip_con {
    padding: 8vw 0;
  }
}
.day_trip_con:last-of-type {
  padding: 4.5rem 0 0;
}
@media screen and (max-width: 1200px) {
  .day_trip_con:last-of-type {
    padding: 3.75vw 0 0;
  }
}
@media screen and (max-width: 840px) {
  .day_trip_con:last-of-type {
    padding: 8vw 0 0;
  }
}
@media screen and (max-width: 840px) {
  .day_trip_con .wrap {
    width: 92vw;
  }
}
.day_trip_con .title02 {
  padding: 1.7rem 3rem;
  margin-bottom: 4rem;
  font-size: 2.2rem;
  color: #fff;
  font-weight: 700;
  background: #0A51B8;
  border-radius: 0.7rem;
}
@media screen and (max-width: 1200px) {
  .day_trip_con .title02 {
    padding: 1.4166666667vw 2.5vw;
    margin-bottom: 3.3333333333vw;
    font-size: 1.8333333333vw;
    border-radius: 0.5833333333vw;
  }
}
@media screen and (max-width: 840px) {
  .day_trip_con .title02 {
    padding: 3.7333333333vw 5.3333333333vw;
    margin-bottom: 6.1333333333vw;
    font-size: 4.2666666667vw;
    border-radius: 1.3333333333vw;
  }
}
.day_trip_con .in {
  padding: 0 2rem;
}
@media screen and (max-width: 1200px) {
  .day_trip_con .in {
    padding: 0 1.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  .day_trip_con .in {
    padding: 0 2.6666666667vw;
  }
}
.day_trip_con .in + .in {
  padding-top: 4rem;
  margin-top: 4rem;
  border-top: 0.1rem solid #B2B2B2;
}
@media screen and (max-width: 1200px) {
  .day_trip_con .in + .in {
    padding-top: 3.3333333333vw;
    margin-top: 3.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  .day_trip_con .in + .in {
    padding-top: 8vw;
    margin-top: 8vw;
  }
}
.day_trip_con .in .title03 {
  margin-bottom: 2.2rem;
  font-size: 1.8rem;
  color: #0A51B8;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  .day_trip_con .in .title03 {
    margin-bottom: 1.8333333333vw;
    font-size: 1.5vw;
  }
}
@media screen and (max-width: 840px) {
  .day_trip_con .in .title03 {
    margin-bottom: 6.1333333333vw;
    font-size: 4.2666666667vw;
  }
}
.day_trip_con .in .texin {
  margin-left: 1em;
  text-indent: -1em;
}
.day_trip_con .in p {
  font-weight: 500;
}

#sec01 {
  padding: 5rem 0 4.5rem;
}
@media screen and (max-width: 1200px) {
  #sec01 {
    padding: 4.1666666667vw 0 3.75vw;
  }
}
@media screen and (max-width: 840px) {
  #sec01 {
    padding: 6.6666666667vw 0 8vw;
  }
}
#sec01 .in ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-row-gap: 2rem;
}
@media screen and (max-width: 1200px) {
  #sec01 .in ul {
    grid-row-gap: 1.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec01 .in ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 4.8vw;
  }
}
#sec01 .in ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2.5rem;
}
@media screen and (max-width: 1200px) {
  #sec01 .in ul li {
    gap: 2.0833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec01 .in ul li {
    gap: 5.3333333333vw;
    width: 100%;
  }
}
#sec01 .in ul li:nth-child(1) {
  grid-area: 1/1/2/2;
}
#sec01 .in ul li:nth-child(2) {
  grid-area: 2/1/3/2;
}
#sec01 .in ul li:nth-child(3) {
  grid-area: 3/1/4/2;
}
#sec01 .in ul li:nth-child(4) {
  grid-area: 1/2/2/3;
}
#sec01 .in ul li:nth-child(5) {
  grid-area: 2/2/3/3;
}
#sec01 .in ul li .txt {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6875;
}
@media screen and (max-width: 1200px) {
  #sec01 .in ul li .txt {
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec01 .in ul li .txt {
    font-size: 3.7333333333vw;
  }
}
#sec01 .in ul.other_list {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(4, 1fr);
}
#sec01 .in ul.other_list li:nth-child(4) {
  grid-area: 4/1/5/2;
}
#sec01 .in ul.other_list li:nth-child(5) {
  grid-area: 1/2/2/3;
}
#sec01 .in ul.other_list li:nth-child(6) {
  grid-area: 2/2/3/3;
}
#sec01 .in ul.other_list li:nth-child(7) {
  grid-area: 3/2/4/3;
}
#sec01 .in ul.other_list li:nth-child(8) {
  grid-area: 4/2/5/3;
}
#sec01 .in:nth-of-type(3) ul {
  display: block;
}

#sec02 .title_area {
  margin: 5rem 0 2.5rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .title_area {
    margin: 4.1666666667vw 0 2.0833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .title_area {
    margin: 8vw 0 4.8vw;
  }
}
#sec02 .title_area img {
  display: block;
  width: 4rem;
  margin: 0 auto 1.3rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .title_area img {
    width: 3.3333333333vw;
    margin: 0 auto 1.0833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .title_area img {
    width: 10.6666666667vw;
    margin: 0 auto 4.2666666667vw;
  }
}
#sec02 .title_area .title04 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  #sec02 .title_area .title04 {
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .title_area .title04 {
    font-size: 6.6666666667vw;
  }
}
#sec02 .center {
  margin-bottom: 3.6rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .center {
    margin-bottom: 3vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .center {
    width: 86.6666666667vw;
    margin: 0 auto 10.6666666667vw;
  }
}
#sec02 .center p {
  text-align: center;
}
@media screen and (max-width: 840px) {
  #sec02 .in:first-of-type {
    padding: 0;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .in:first-of-type .title03 {
    margin: 0 2.6666666667vw 6.1333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .in:first-of-type .txt {
    margin: 0 2.6666666667vw;
  }
}
#sec02 .box_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.4rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_area {
    gap: 1.1666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_area {
    gap: 4vw;
  }
}
#sec02 .box_area .box {
  width: calc((100% - 1.4rem) / 2);
  padding: 3rem 1rem 3.2rem;
  background: #F4F4F4;
  border-radius: 0.7rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_area .box {
    width: calc((100% - 1.1666666667vw) / 2);
    padding: 2.5vw 0.8333333333vw 2.6666666667vw;
    border-radius: 0.5833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_area .box {
    width: 100%;
    padding: 5.8666666667vw 2.6666666667vw 6.9333333333vw;
    border-radius: 1.8666666667vw;
  }
}
#sec02 .box_area .box .title05 {
  margin-bottom: 3rem;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_area .box .title05 {
    margin-bottom: 2.5vw;
    font-size: 1.8333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_area .box .title05 {
    margin-bottom: 5.0666666667vw;
    font-size: 4.8vw;
  }
}
#sec02 .box_area .box .btn a {
  width: 31rem;
  height: 7rem;
  margin: 0 auto 2rem;
  color: #fff;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_area .box .btn a {
    width: 25.8333333333vw;
    height: 5.8333333333vw;
    margin: 0 auto 1.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_area .box .btn a {
    width: 66.6666666667vw;
    height: 14.6666666667vw;
    margin: 0 auto 5.3333333333vw;
  }
}
#sec02 .box_area .box .btn a:hover {
  opacity: 0.7;
}
#sec02 .box_area .box .btn._r a {
  background: #CE312A;
}
#sec02 .box_area .box .btn._r a .arrow {
  border: 0.15rem solid #fff;
}
#sec02 .box_area .box .btn._r a .arrow:after {
  border-top: solid 0.15rem #fff;
  border-right: solid 0.15rem #fff;
}
#sec02 .box_area .box .btn._b a:hover {
  background: #0A51B8;
  opacity: 0.7;
}
#sec02 .box_area .box .btn._g a {
  background: #01A85F;
}
#sec02 .box_area .box .btn._g a .arrow {
  border: 0.15rem solid #fff;
}
#sec02 .box_area .box .btn._g a .arrow:after {
  border-top: solid 0.15rem #fff;
  border-right: solid 0.15rem #fff;
}
#sec02 .box_area .box .btn._o a {
  gap: 1rem;
  font-size: 3.2rem;
  font-weight: 600;
  background: #F79800;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_area .box .btn._o a {
    gap: 0.8333333333vw;
    font-size: 2.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_area .box .btn._o a {
    gap: 1.8666666667vw;
    font-size: 7.7333333333vw;
  }
}
#sec02 .box_area .box .btn._o a .arrow {
  border: 0.15rem solid #fff;
}
#sec02 .box_area .box .btn._o a .arrow:after {
  border-top: solid 0.15rem #fff;
  border-right: solid 0.15rem #fff;
}
#sec02 .box_area .box p {
  font-size: 1.6rem;
  text-align: center;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_area .box p {
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_area .box p {
    font-size: 3.7333333333vw;
  }
}
#sec02 .box_l {
  padding: 2.7rem 4rem 3rem;
  margin-top: 4rem;
  background: #F2F6FC;
  border-radius: 0.7rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_l {
    padding: 2.25vw 3.3333333333vw 2.5vw;
    margin-top: 3.3333333333vw;
    border-radius: 0.5833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_l {
    padding: 6.4vw 6.6666666667vw 7.2vw;
    margin-top: 8vw;
    border-radius: 1.8666666667vw;
  }
}
#sec02 .box_l + .box_l {
  margin-top: 1rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_l + .box_l {
    margin-top: 0.8333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_l + .box_l {
    margin-top: 3.2vw;
  }
}
#sec02 .box_l .title04 {
  margin-bottom: 1.5rem;
  font-size: 1.6rem;
  color: #0A51B8;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_l .title04 {
    margin-bottom: 1.25vw;
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_l .title04 {
    margin-bottom: 3.4666666667vw;
    font-size: 4.2666666667vw;
  }
}
#sec02 .box_l p {
  font-size: 1.4rem;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_l p {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_l p {
    font-size: 3.7333333333vw;
  }
}
#sec02 .box_l .btn._r a {
  gap: 0.8rem;
  width: 23rem;
  height: 4.5rem;
  margin: 2rem 0;
  font-size: 2.5rem;
  color: #fff;
  font-weight: 600;
  background: #CE312A;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_l .btn._r a {
    gap: 0.6666666667vw;
    width: 19.1666666667vw;
    height: 3.75vw;
    margin: 1.6666666667vw 0;
    font-size: 2.0833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_l .btn._r a {
    gap: 1.8666666667vw;
    width: 66.6666666667vw;
    height: 14.6666666667vw;
    margin: 5.3333333333vw 0;
    font-size: 7.7333333333vw;
  }
}
#sec02 .box_l .btn._r a img {
  width: 1.6rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .box_l .btn._r a img {
    width: 1.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec02 .box_l .btn._r a img {
    width: 4.5333333333vw;
  }
}
#sec02 .box_l .btn._r a:hover {
  background: #0A51B8;
}

@media screen and (max-width: 840px) {
  #sec03 .in:first-of-type {
    padding: 0;
  }
}
@media screen and (max-width: 840px) {
  #sec03 .in:first-of-type .title03 {
    margin: 0 2.6666666667vw 6.1333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec03 .in:first-of-type .txt {
    margin: 0 2.6666666667vw;
  }
}
#sec03 .btn_pdf a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.6rem;
  width: 60rem;
  height: 8rem;
  margin: 4rem auto 0;
  font-size: 1.8rem;
  color: #CE312A;
  font-weight: 700;
  border: 0.15rem solid #CE312A;
  border-radius: 0.5rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .btn_pdf a {
    gap: 2.1666666667vw;
    width: 50vw;
    height: 6.6666666667vw;
    margin: 3.3333333333vw auto 0;
    font-size: 1.5vw;
    border-radius: 0.4166666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec03 .btn_pdf a {
    gap: 3.4666666667vw;
    width: 100%;
    height: 18.6666666667vw;
    margin: 5.3333333333vw auto 0;
    font-size: 4.2666666667vw;
    text-align: center;
    border-radius: 1.3333333333vw;
  }
}
#sec03 .btn_pdf a img {
  width: 1.694rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .btn_pdf a img {
    width: 1.4116666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec03 .btn_pdf a img {
    width: 4.5173333333vw;
  }
}

#sec04 .flex {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 840px) {
  #sec04 .flex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 6.1333333333vw;
  }
}
#sec04 .flex .txt {
  max-width: 60rem;
  width: 51.724137931%;
}
@media screen and (max-width: 840px) {
  #sec04 .flex .txt {
    max-width: none;
    width: 100%;
  }
}
#sec04 .flex figure {
  max-width: 50rem;
  width: 43.1034482759%;
}
@media screen and (max-width: 840px) {
  #sec04 .flex figure {
    max-width: none;
    width: 100%;
  }
}
#sec04 .map {
  width: 100%;
  margin-top: 5rem;
  aspect-ratio: 1/0.47225;
}
@media screen and (max-width: 1200px) {
  #sec04 .map {
    margin-top: 4.1666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec04 .map {
    margin-top: 6.1333333333vw;
    aspect-ratio: 1/1.3034769231;
  }
}
#sec04 .map iframe {
  width: 100%;
  height: 100%;
  border: none;
}

#sec05 figure {
  max-width: 80rem;
  margin: 4rem auto 0;
}
@media screen and (max-width: 1200px) {
  #sec05 figure {
    margin: 3.3333333333vw auto 0;
  }
}
@media screen and (max-width: 840px) {
  #sec05 figure {
    margin: 5.3333333333vw auto 0;
  }
}
#sec05 .box {
  padding: 2.7rem 4rem;
  margin-top: 4rem;
  background: #F2F6FC;
  border-radius: 0.7rem;
}
@media screen and (max-width: 1200px) {
  #sec05 .box {
    padding: 2.25vw 3.3333333333vw;
    margin-top: 3.3333333333vw;
    border-radius: 0.5833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec05 .box {
    padding: 6.4vw 6.6666666667vw;
    margin-top: 6.6666666667vw;
    border-radius: 1.8666666667vw;
  }
}
#sec05 .box .title04 {
  margin-bottom: 1.5rem;
  font-size: 1.6rem;
  color: #0A51B8;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  #sec05 .box .title04 {
    margin-bottom: 1.25vw;
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec05 .box .title04 {
    margin-bottom: 3.4666666667vw;
    font-size: 4.2666666667vw;
  }
}
#sec05 .box p + .title04 {
  margin-top: 2.5rem;
}
@media screen and (max-width: 1200px) {
  #sec05 .box p + .title04 {
    margin-top: 2.0833333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec05 .box p + .title04 {
    margin-top: 6.1333333333vw;
  }
}

#sec07 dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.5rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 1200px) {
  #sec07 dt {
    gap: 0.4166666667vw;
    margin-bottom: 1.6666666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec07 dt {
    gap: 2.4vw;
    margin-bottom: 3.7333333333vw;
  }
}
#sec07 dt .en {
  width: 2.9rem;
  font-size: 3rem;
  color: #0A51B8;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  #sec07 dt .en {
    width: 2.4166666667vw;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 840px) {
  #sec07 dt .en {
    width: 6.6666666667vw;
    font-size: 6.9333333333vw;
  }
}
#sec07 dt .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  #sec07 dt .txt {
    font-size: 1.5vw;
  }
}
@media screen and (max-width: 840px) {
  #sec07 dt .txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
}
#sec07 dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.5rem;
}
@media screen and (max-width: 1200px) {
  #sec07 dd {
    gap: 0.4166666667vw;
  }
}
@media screen and (max-width: 840px) {
  #sec07 dd {
    gap: 2.4vw;
  }
}
#sec07 dd .en {
  width: 2.9rem;
  font-size: 3rem;
  color: #CE312A;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  #sec07 dd .en {
    width: 2.4166666667vw;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 840px) {
  #sec07 dd .en {
    width: 6.6666666667vw;
    font-size: 6.9333333333vw;
  }
}
#sec07 dd .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.0625;
}
@media screen and (max-width: 1200px) {
  #sec07 dd .txt {
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 840px) {
  #sec07 dd .txt {
    font-size: 3.7333333333vw;
    line-height: 1.78571;
  }
}
#sec07 dd .txt .red {
  color: #CE312A;
  font-weight: 700;
}
#sec07 .banner {
  max-width: 60rem;
  margin: 7rem auto 0;
}
@media screen and (max-width: 1200px) {
  #sec07 .banner {
    margin: 5.8333333333vw auto 0;
  }
}
@media screen and (max-width: 840px) {
  #sec07 .banner {
    margin: 10.6666666667vw auto 0;
  }
}