#mv {
  position: relative;
  background: url(../../common/img/mv_bg.png);
  background-size: 100% 100%;
  height: 950px; 
  margin-top: 60px;
}
#mv::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  background: #FFF;
}
#mv .wrap {
  padding-top: 100px;
}
#mv .cloud {
  position: absolute;
  bottom: -1px;
  left: 0;
  z-index: 3;
  width: 100%; 
}
.sti,
.photo,
.sti_name {
  opacity: 0;
  transition: opacity 1s ease;
}
.sti.show,
.photo.show,
.sti_name.show {
  opacity: 1;
}

.photo{
  opacity: 0;
  transform: translateY(5%);
  transition: opacity 1s ease, transform 1s ease;
}
.photo.show{
  opacity: 1;
  transform: translateY(0);
}

#prof {
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-top: -120px;
  margin-bottom: 100px;
  z-index: 10;
}
#prof .name {
  font-size: 56px;
  font-weight: 700;
  margin-right: 1em;
  letter-spacing: 0.05em; 
}
#prof .name .en {
  font-size: 15px;
  display: block;
  margin-bottom: -0.5em; 
  letter-spacing: 0.02em;
}
#prof .data {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.8; 
}
#prof .data span{
  font-weight: 400;
}

#question .conte{
  position: relative;
  width: 900px;
  margin-left: auto;
  margin-right: auto;
}
#question .fl_box{
  display: flex;
}
#question .txt{
  font-size: 17px;
  font-weight: 700;
  line-height: 1.7;
  text-align: justify;
  letter-spacing: 0.04em;
}
#question .bg_img{
  z-index: -5 !important;
}

#other {
  position: relative;
  background: url(../../common/img/other_bg.png);
  background-size: 100% 100%;
  margin-top: 200px;
  padding-top: 216px;
  padding-bottom: 315px; 
}
#other::before {
  content: "";
  background: url(../../common/img/other_before.png);
  background-size: 100% 100%;
  width: 100%;
  height: 315px;
  position: absolute;
  bottom: 0;
  left: 0; 
}
#other .sec_ttl {
  text-align: center; 
}
#other .sec_ttl .en {
  font-size: 110px;
  font-weight: 700;
  letter-spacing: 0.03em; 
}
#other .sec_ttl .jp {
  font-size: 36px;
  font-weight: 700;
  letter-spacing: 0.06em; 
}
#other .members {
  max-width: 1255px;
  width: 95%;
  margin-left: auto;
  margin-right: auto;
  display: flex; 
  justify-content: space-around;
}
#other .members .member {
  width: 25.33%;
}
#other .members .member.width_ex {
  width: 42%;
}

#other .members .member:nth-child(2) {
  margin-top: 9%; 
}

#other .members .member a{
  position: relative;
  display: block;
  color: #FFF;
  text-align: center;
  font-size: 25px;
  font-weight: 700;
}
#other .members .member .more_txt{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  line-height: 1.1;
  opacity: 0;
}
#other .members .member .more_txt .arrow{
  font-size: 16px;
}
#other .members .member._07 .more_txt{
  opacity: 1;
}
#other .members .member._07 a{
  cursor: default;
}

#news {
  margin-top: -1vw; 
}
#news::after {
  background: #000; 
}

#lottie01,
#lottie02,
#lottie03{
  position: absolute;
  width: 100%;
  z-index: -3;
}
#lottie01{
  right: 0;
  top: 10%;
}
#lottie02{
  left: 5%;
  top: 50%;
  transform: translateY(-50%);
}
#lottie03{
  bottom: 10%;
  left: 45%;
  transform: translateX(-50%);
}

@media(max-width:1400px) {
  #mv {
    height: 67.85vw; 
    margin-top: 4.28vw;
  }
  #mv .wrap {
    padding-top: 7.14vw;
  }
  #prof {
    margin-top: -8.57vw;
    margin-bottom: 7.14vw;
  }
  #prof .name {
    font-size: 4vw;
  }
  #prof .name .en {
    font-size: 1.07vw;
  }
  #prof .data {
    font-size: 1.28vw;
  }
  #question .conte{
    width: 64.28vw;
  }
  #question .txt{
    font-size: 1.21vw;
  }
  
  #other {
    margin-top: 14.2vw;
    padding-top: 15.42vw;
    padding-bottom: 22.5vw; 
  }
  #other::before {
    height: 22.5vw;
  }
  #other .sec_ttl .en {
    font-size: 7.85vw;
  }
  #other .sec_ttl .jp {
    font-size: 2.57vw;
  }
}
@media(max-width:900px) {
  #mv {
    background: url(../../common/img/mv_bg_sp.png);
    background-size: 100% 100%;
    height: 119.06vw; 
    margin-top: 14.66vw;
    overflow: hidden;
  }
  #mv .wrap {
    padding-top: 18vw;
  }
  #prof {
    width: 90.4vw;
    margin-left: auto;
    margin-right: auto;
    top: auto;
    left: auto;
    transform: translateX(0);
    display: block;
    margin-top: -12vw;
    margin-bottom: 0;
  }
  #prof .name {
    font-size: 10vw;
    margin-right: 0;
  }
  #prof .name .en {
    font-size: 3.33vw;
    margin-bottom: 0.02em;
  }
  #prof .data {
    font-size: 4vw;
    line-height: 1.5; 
    margin-top: 0.55em;
  }

  #question .q_01,
  #question .q_02,
  #question .q_03{
    margin-top: 0 !important;
    padding-top: 0 !important;
    overflow: hidden;
  }
  #question .conte{
    width: 90.4vw;
  }
  #question .q_01 .conte {
    padding-top: 0 !important;
    margin-top: 25.6vw;
  }
  #question .q_02 .conte,
  #question .q_03 .conte {
    margin-top: 12.8vw !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  #question .fl_box{
    display: block;
    margin-top: 0 !important;
  }
  #question .txt{
    width: 100% !important;
    font-size: 4vw;
    padding: 0 !important;
    margin-top: 1em;
  }
  #other {
    background: url(../../common/img/other_bg_sp.png);
    background-size: 100% 100%;
    margin-top: 20vw;
    padding-top: 14.13vw;
    padding-bottom: 52.66vw; 
  }
  #other::before {
    height: 47.6vw;
  }
  #other .sec_ttl .en {
    font-size: 14.66vw;
  }
  #other .sec_ttl .jp {
    font-size: 4.8vw;
  }
  #other .members {
    display: block;
    margin-top: 8vw;
  }
  #other .members .member {
    width: 60.66vw; 
  }
  #other .members .member.width_ex {
    width: 85vw;
  }
  #other .members .member:nth-child(2) {
    margin-top: 0; 
    margin-left: auto;
    margin-right: 0;
  }

  #lottie01,
  #lottie02,
  #lottie03{
    position: absolute;
    width: 100%;
    z-index: 5;
  }
  #lottie01{
    right: 0;
    top: -15vw;
  }
  #lottie02{
    left: 5%;
    top: 50%;
    transform: translateY(-50%);
  }
  #lottie03{
    top: 11vw;
    bottom: auto;
    left: 45%;
    transform: translateX(-50%);
  }
}