@charset "UTF-8";


/*--------------------------------------------
common
--------------------------------------------*/
.pb0 {
  padding-bottom: 0 !important;
}


/*--------------------------------------------
wrapper
--------------------------------------------*/
body {
  background: #000;
}

.e__bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.e__bg::after {
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, var(--bg-opacity, 0));
  transition: background 0.1s linear;
  position: absolute;
  top: 0;
  left: 0;
}

.e__bg img {
  width: 100%;
  height: 640px;
  object-fit: cover;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e__bg img {
    height: 177.6vw;
  }
}

.e-wrapper {
  position: relative;
  z-index: 1;
}

/*--------------------------------------------
ttl
--------------------------------------------*/
.e-ttl {
  min-height: 640px;
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-ttl {
    min-height: 177.6vw;
    justify-content: center;
  }
}

.e-ttl__jp {
  display: block;
  color: #fff;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  margin: 65px 0 0 10.9375%;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-ttl__jp {
    font-size: 8.89vw;
    margin: 0;
  }
}

/*--------------------------------------------
content
--------------------------------------------*/
.e-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding-top: 80px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content {
    padding-top: 14.44vw;
  }
}
.e-content:nth-of-type(2) {
  padding-top: 224px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content:nth-of-type(2) {
    padding-top: 43.89vw;
  }
}

.e-content__catch {
  width: 100%;
  padding: 0 10.156% 150px 10.156%;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.06em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__catch {
    padding: 0 5.56vw 51.39vw 5.56vw;
    font-size: 4.44vw;
  }
}

.e-content__bg {
  position: relative;
  width: 100%;
  background: #fff;
}

.e-content__bg .u-ani_slide {
  width: 90%;
  margin: -64px 0 0 auto;
  overflow: hidden;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__bg .u-ani_slide {
    width: 94.444vw;
    margin-top: -18.055vw;
  }
}

.e-content__bg h3 {
  width: 100%;
  padding: 64px 0 10px 14px;
  background: linear-gradient(to right, #144781, #2176d9);
  color: #fff;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__bg h3 {
    padding: 15.28vw 0 1.67vw 3.89vw;
  }
}

.e-ttl-h3__en {
  display: block;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 300;
  font-size: 18px;
  font-style: normal;
  letter-spacing: 0;
  color: #fff;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-ttl-h3__en {
    font-size: 3.89vw;
  }
}

.e-ttl-h3__jp {
  margin-top: 14px;
  display: block;
  font-size: 28px;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.06em;
  color: #fff;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-ttl-h3__jp {
    margin-top: 0.83vw;
    font-size: 5.56vw;
  }
}

.e-content__inner {
  width: 100%;
  padding: 42px 10% 80px 10%;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner {
    padding: 7.222vw 5.56vw 11.67vw 5.56vw;
  }
}

.e-content__inner__txt {
  font-size: 16px;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.02em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__txt {
    font-size: 4.44vw;
  }
}

.e-content__block {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  background: #fff;
  padding-bottom: 65px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__block {
    padding-bottom: 18.06vw;
  }
}

.e-content__inner__container {
  width: 90%;
  padding: 30px 10% 45px 5%;
  background: #EDF5FF;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 4.86%;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__container {
    width: 94.44%;
    padding: 5.56vw 11.11vw 0 5.56vw;
    flex-direction: column;
    gap: 0;
  }
}
.e-content__inner__container:not(:nth-of-type(1)) {
  margin-top: 70px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__container:not(:nth-of-type(1)) {
    margin-top: 13.33vw;
  }
}

.e-content__inner__txt {
  flex: 1;
}

.e-content__inner__txt h4 {
  color: #296FC6;
  font-size: 24px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__txt h4 {
    font-size: 6.67vw;
  }
}

.e-content__inner__txt p,
.e-content__inner__container-txt__block p {
  margin-top: 15px;
  font-size: 15px;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.02em;
  padding-bottom: 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__txt p,
  .e-content__inner__container-txt__block p {
    margin-top: 6.11vw;
    font-size: 4.17vw;
    padding-bottom: 4.44vw;
  }
}
.e-content__inner__container-txt__block p {
  margin-top: 8px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__container-txt__block p {
    margin-top: 6.11vw;
  }
}

.e-content__inner__txt h5,
.e-content__inner__container-txt__block h5 {
  margin-top: 16px;
  color: #296FC6;
  font-size: 17px;
  font-weight: 300;
  line-height: 1.4;
  letter-spacing: 0.02em;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0));
  padding: 3px 8px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__txt h5,
  .e-content__inner__container-txt__block h5 {
    margin-top: 2.22vw;
    font-size: 4.72vw;
    padding: 0.56vw 1.11vw 0.56vw 7.22vw;
    position: relative;
  }
}

/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__list + h5 {
    margin-top: 5.56vw;
  }
  
  .e-content__inner__container-txt__block h4 + h5 {
    margin-top: 8.33vw;
  }
}

.e-content__inner__txt h5::before,
.e-content__inner__container-txt__block h5::before {
  margin-right: 4px;
  display: inline-block;
  content: "";
  width: 14px;
  height: 14px;
  background: #296FC6;
  background-repeat: no-repeat;
  background-size: contain;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__txt h5::before,
  .e-content__inner__container-txt__block h5::before {
    margin-right: 2.22vw;
    width: 2.78vw;
    height: 2.78vw;
    position: absolute;
    left: 2.22vw;
    top: 0.58em;
  }
}

.e-content__inner__container-txt__block h5 > span {
  display: block;
  margin: 3px 0 0 1.5em;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__container-txt__block h5 > span {
    margin: 0.83vw 0 0 0;
    font-size: 4.17vw;
    line-height: 1.6;
  }
}

.e-content__inner__img {
  margin-top: -75px;
  width: 40%;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__img {
    margin: 8.89vw -11.11vw 0;
    width: 100vw;
  }
}

.e-content__inner__container-txt {
  margin-top: 32px;
  position: relative;
  width: 90%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 32px 0;
  background: #fff;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__container-txt {
    margin-top: 13.33vw;
    flex-direction: column;
    width: 94.44%;
    gap: 13.33vw 0;
  }
}

.e-content__inner__container-txt__block {
  width: calc((100% - 2.77%) / 2);
  padding: 30px 10% 45px 5.55%;
  background: #EDF5FF;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__container-txt__block {
    width: 100%;
    padding: 5.56vw 11.11vw 5.56vw 5.56vw;
  }
}

.e-content__inner__list {
  margin-top: 4px;
  padding-left: 1.5em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__list {
    margin-top: 1.67vw;
  }
}

.e-content__inner__list li {
  list-style-type: disc;
  list-style-position: outside;
  text-indent: 0;
  color: #296FC6;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__list li {
    font-size: 4.17vw;
    line-height: 1.7;
  }
}

.e-content__inner__container-txt__block h4 {
  color: #296FC6;
  font-size: 28px;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.06em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .e-content__inner__container-txt__block h4 {
    font-size: 6.67vw;
    line-height: 1.5;
  }
}