@charset "UTF-8";
/*============================
#sec01
============================*/
#sec01 .point {
  display: flex;
  gap: 20px;
  padding: 60px 0 20px;
}
@media screen and (max-width: 768px) {
  #sec01 .point {
    flex-direction: column;
    gap: 50px;
  }
}
#sec01 .point .point-item {
  width: 100%;
  background: #e6f6fc;
  padding: 0 30px 30px;
}
#sec01 .point .point-item figure {
  margin: -37px 0 20px;
  padding: 0;
}
@media screen and (max-width: 768px) {
  #sec01 .point .point-item figure {
    margin: -25px 0 15px;
  }
}
#sec01 .point .point-item figure img {
  display: block;
  width: auto;
  height: 72px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  #sec01 .point .point-item figure img {
    height: 50px;
  }
}
#sec01 .point .point-item .point-item-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.5em;
}
#sec01 .point .point-item .point-item-ttl h3 {
  font-size: 24px;
  line-height: 1.3;
  text-align: center;
  color: #0654A8;
}
#sec01 .point .point-item .point-item-ttl h3 sup {
  font-size: 0.55em;
}
#sec01 .point .point-item p {
  font-size: 15px;
  line-height: 1.6;
}
#sec01 .point + .jisageListFlex {
  margin-bottom: 60px;
}
#sec01 .step3 h3 {
  text-align: center;
  margin-bottom: 1em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #sec01 .step3 h3 {
    font-size: 17px;
  }
}
#sec01 .step3 figure {
  margin: 0 0 3em;
  padding: 0;
}
#sec01 .step3 + .flex {
  gap: 30px;
}
@media screen and (max-width: 768px) {
  #sec01 .step3 + .flex {
    flex-direction: column;
    gap: 0;
  }
}
#sec01 .step3 + .flex div:nth-of-type(2) {
  flex: 0 0 40%;
}

/*============================
#sec02
============================*/
/*============================
#sec03
============================*/
#sec03 .need figure {
  margin: 0;
}
#sec03 .rec-env {
  padding: 40px 0 0;
}
@media screen and (max-width: 768px) {
  #sec03 .rec-env {
    padding: 20px 0 10px;
  }
}
#sec03 .rec-env h3 {
  flex: 0 0 100%;
  font-size: 1em;
  margin-bottom: 0.5em;
}
#sec03 .rec-env dl {
  flex: 0 0 48%;
  font-weight: 600;
  margin-bottom: 0.5em;
}
#sec03 .rec-env dl:not(:first-of-type) {
  margin-top: 2em;
}
#sec03 .rec-env dl dt::before {
  content: "●";
  display: inline-block;
  color: #0654A8;
}
#sec03 ul.jisageListFlex {
  margin-bottom: 1em;
}
#sec03 ul.jisageListFlex li {
  font-size: 0.8em;
  line-height: 1.67;
}

/*============================
#sec04
============================*/
#sec04 .fundopen-slide-01 {
  overflow: hidden;
  margin: 2em -60px 0;
  padding: 0 60px;
  position: relative;
}
@media screen and (max-width: 768px) {
  #sec04 .fundopen-slide-01 {
    margin: 2em 0px 0;
    padding: 0 0;
  }
}
#sec04 .fundopen-slide-01 .fundopen-slide-01-inner {
  overflow: hidden;
}
#sec04 .fundopen-slide-01 .swiper-button-prev,
#sec04 .fundopen-slide-01 .swiper-button-next {
  cursor: pointer;
  display: block;
}
@media screen and (max-width: 768px) {
  #sec04 .fundopen-slide-01 .swiper-button-prev,
#sec04 .fundopen-slide-01 .swiper-button-next {
    display: none;
  }
}
#sec04 .fundopen-slide-01 .swiper-button-prev::after,
#sec04 .fundopen-slide-01 .swiper-button-next::after {
  color: #0654A8;
}
#sec04 .fundopen-slide-01 .swiper-pagination {
  margin: 0;
  position: static;
}
#sec04 .fundopen-slide-01 .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
}
#sec04 .fundopen-slide-01 .swiper-pagination-bullet-active {
  background: #0654A8;
}
#sec04 .swiper-wrapper {
  align-items: stretch;
}
#sec04 .swiper-slide {
  background: #e6f6fc;
  height: auto;
  padding: 30px;
}
@media screen and (max-width: 768px) {
  #sec04 .swiper-slide {
    padding: 20px;
  }
}
#sec04 .swiper-slide .flex {
  gap: 30px;
}
@media screen and (max-width: 768px) {
  #sec04 .swiper-slide .flex {
    flex-direction: column-reverse;
  }
}
#sec04 .swiper-slide figure {
  flex: 0 0 45%;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
#sec04 .swiper-slide p,
#sec04 .swiper-slide li {
  text-align: justify;
}
#sec04 .swiper-slide p {
  font-size: 15px;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  #sec04 .swiper-slide p {
    font-size: 13px;
  }
}
#sec04 .swiper-slide p strong:first-of-type {
  color: #0654A8;
  font-size: 18px;
  font-feature-settings: "palt";
}
#sec04 .swiper-slide .slide-num {
  color: #0654A8;
  font-size: 2em;
  line-height: 1;
  font-weight: 600;
  margin: 0 0 1em;
  font-family: "Barlow", sans-serif !important;
}
#sec04 .slide1 .flex {
  flex-direction: row-reverse;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  #sec04 .slide1 .flex {
    flex-direction: column-reverse;
  }
}
#sec04 .slide1 .flex figure {
  flex: 0 0 37%;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 768px) {
  #sec04 .slide1 .flex figure {
    width: 60%;
  }
}

/*============================
#sec05
============================*/
#sec05 ul.clm3 li {
  margin-bottom: 1em;
}
/*============================
#sec06
============================*/
#sec06 {
  margin-top: 90px;
}
#sec06 .box dl.flex-dl {
  display: flex;
  flex-wrap: wrap;
}
#sec06 .box dl.flex-dl dt,
#sec06 .box dl.flex-dl dd {
  margin-bottom: 0.5em;
}
#sec06 .box dl.flex-dl dt {
  flex: 0 0 9em;
}
#sec06 .box dl.flex-dl dd {
  flex: 0 0 calc(100% - 9em);
}