@charset "UTF-8";
.main_v {
  width: 94%;
  height: calc(100vh - 210px);
  position: relative;
  margin: 160px auto 0;
}
@media screen and (max-width: 767px) {
  .main_v {
    height: 60vh;
    margin-top: 0;
    width: 100%;
  }
}
.main_v .bodycopy {
  position: absolute;
  bottom: 2%;
  left: -1.5%;
  color: #FFFFFF;
  font-size: max(3.6vw, 3.9rem);
  font-weight: 600;
  z-index: 9;
  text-shadow: 0 5px 10px rgba(0, 0, 0, 0.24);
}
@media screen and (max-width: 767px) {
  .main_v .bodycopy {
    font-size: 2.2rem;
  }
}
.main_v .bodycopy span {
  background: #0010AD;
  display: inline-block;
  white-space: nowrap;
  margin-bottom: 0.1em;
  padding: 0 5%;
}
.main_v .main_v_slider {
  width: 100%;
  height: 100%;
  border-radius: 30px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .main_v .main_v_slider {
    width: 100%;
    height: 60vh;
    border-radius: 0;
  }
}
.main_v .main_v_slider .swiper {
  width: 100%;
  height: 100%;
}
.main_v .main_v_slider .swiper-wrapper,
.main_v .main_v_slider .swiper-slide > div {
  height: 100%;
  width: 100%;
}
.main_v .main_v_slider .slide {
  background-size: cover !important;
  background-position: center !important;
}
@-webkit-keyframes zoom-in {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.03);
  }
}
@keyframes zoom-in {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.03);
  }
}
.main_v .main_v_slider .swiper-slide-active .slide_img,
.main_v .main_v_slider .swiper-slide-duplicate-active .slide_img,
.main_v .main_v_slider .swiper-slide-prev .slide_img {
  -webkit-animation: zoom-in 10s linear 0s 1 normal both;
          animation: zoom-in 10s linear 0s 1 normal both;
}

.top_page_section {
  margin: 160px auto;
}
@media screen and (max-width: 767px) {
  .top_page_section {
    margin: 45px auto;
  }
}
.top_page_section .section_title {
  margin-bottom: 2.5em;
}
.top_page_section .section_title p {
  font-size: 6rem;
  line-height: 1;
  margin-bottom: 0.2em;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-weight: 600;
  color: #0010AD;
}
@media screen and (max-width: 767px) {
  .top_page_section .section_title p {
    font-size: 3.4rem;
  }
}
.top_page_section .section_title h2 {
  font-weight: 600;
  color: #8E91AC;
}
@media screen and (max-width: 767px) {
  .top_page_section .section_title h2 {
    font-size: 85%;
  }
}
.top_page_section .top_page_section_inr {
  width: 94%;
  margin: auto;
  padding: 5% 0;
}

@media screen and (max-width: 767px) {
  .message_section .inr {
    display: block;
    padding: 0 5%;
  }
}
.message_section .inr h2 {
  flex: 1;
  font-size: 3.6rem;
  color: #0010AD;
  font-weight: 600;
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .message_section .inr h2 {
    font-size: 2rem;
    margin-bottom: 1em;
  }
}
.message_section .inr .txt {
  flex: 2;
}
@media screen and (max-width: 767px) {
  .message_section .inr .txt {
    padding: 0;
  }
}
.message_section .inr .txt p {
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .plan_section {
    background: #F7F7F5;
    padding: 10% 0;
  }
}
.plan_section .section_title {
  text-align: center;
}
.plan_section .plan_section_inr {
  background: #F7F7F5;
  border-radius: 30px;
  padding: 5% 5%;
}
@media screen and (max-width: 767px) {
  .plan_section .plan_section_inr {
    padding: 0;
    background: none;
    border-radius: 0;
  }
}
.plan_section .reed_area {
  max-width: 680px;
  margin: 0 auto 60px;
}
.plan_section .plan_list {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 45px 5%;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .plan_section .plan_list {
    gap: 35px 0 50px;
  }
}
.plan_section .plan_list .top_plan_card {
  width: 30%;
}
@media screen and (max-width: 1023px) {
  .plan_section .plan_list .top_plan_card {
    width: 47.5%;
  }
}
@media screen and (max-width: 767px) {
  .plan_section .plan_list .top_plan_card {
    width: 100%;
  }
}
.plan_section .plan_slider {
  position: relative;
  width: 110%;
  padding-bottom: 80px;
  margin: 0 -5%;
  /* スライド全体 */
  /* 左右のスライド */
}
.plan_section .plan_slider div img {
  border-radius: 25px;
}
.plan_section .plan_slider .swiper-slide {
  transition: transform 0.6s;
}
.plan_section .plan_slider .swiper-slide-duplicate-next,
.plan_section .plan_slider .swiper-slide-duplicate-prev,
.plan_section .plan_slider .swiper-slide-next,
.plan_section .plan_slider .swiper-slide-prev {
  transform: scale(0.9);
}
.plan_section .plan_slider .swiper-pagination {
  bottom: -30px;
}
.plan_section .plan_slider .swiper-pagination .swiper-pagination-bullet-active {
  background: #0010AD;
}
.plan_section .top_plan_card .thum {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
}
.plan_section .top_plan_card .thum img {
  border-radius: 20px;
  overflow: hidden;
}
.plan_section .top_plan_card .inr {
  transition-property: all;
  transition-duration: 0.5s;
  position: relative;
  padding: 1.5em 0 0;
  text-align: center;
}
.plan_section .top_plan_card .inr .title h3 {
  font-size: 130%;
  color: #0010AD;
  font-weight: 600;
  margin-bottom: 0.35em;
}
.plan_section .top_plan_card .inr .title p {
  font-size: 90%;
}
.plan_section .top_plan_card .inr .tag_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 20px;
  gap: 5px 10px;
}
.plan_section .top_plan_card .inr .tag_area li {
  font-size: 75%;
}
.plan_section .top_plan_card .inr .tag_area li span {
  color: #8E91AC;
}
.plan_section .top_plan_card .inr .tag_area li span::before {
  content: "#";
}
.plan_section .top_plan_card:hover .thum img {
  transform: scale(1.05);
  overflow: hidden;
}

.topics_section .topics_section_inr {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .topics_section .topics_section_inr {
    display: block;
  }
}
.topics_section .topics_section_inr .topics_list {
  flex: 2;
}
.topics_section .topics_section_inr .topics_list p {
  font-size: 110%;
  margin-bottom: 1em;
}
.topics_section .topics_section_inr .topics_list p:last-child {
  margin-bottom: 0;
}
.topics_section .topics_section_inr .btn_more {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .topics_section .topics_section_inr .btn_more {
    text-align: center;
    margin: 35px 0;
  }
}

.column_section .section_title {
  text-align: center;
}

.digitalmap .digitalmap_inr iframe {
  width: 100%;
  height: 610px;
  border-radius: 30px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .digitalmap .digitalmap_inr iframe {
    height: 280px;
  }
}