@charset "UTF-8";
body {
  background-image: url(../images/body-bg.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-position: bottom;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",
    "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
@media screen and (min-width: 750px) {
  .body-inner {
    max-width: 40%;
    box-shadow: 0 1px 20px rgb(0 0 0 / 30%);
    background: #fff;
    margin-left: auto;
    margin-right: auto;
  }
}
img {
  width: 100%;
  max-width: none; /* 親要素を超えてもいい */
  height: auto; /* アスペクト比を維持 *
  display: block; /* 余白を削除 */
  aspect-ratio: auto; /* 画像の元の比率を維持 */
  margin-top: -1px; /*--隙間調整--*/
}

/* フローティングバナー */
/* ============================================ */
.float-bnr {
  height: 0;
  opacity: 0;
  transition: 1s;
  pointer-events: none;
}

.float-bnr.show {
  display: none;/*最初は隠す*/
  height: auto;
  opacity: 1;
  transition: 1s;
  pointer-events: painted;
  position: fixed;
  bottom: 10px;
  z-index: 9999;
  margin: auto;
  left: 0;
  right: 0;
}

@media screen and (min-width: 750px) {
  .float-bnr.show {
    max-width: 40%;
  }
}
/* フローティングバナー ここまで */
/* ============================================ */




/* コンテンツの横幅 */
/* ============================================ */
.contents-inner {
  width: 100%;
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}
/* コンテンツの横幅 ここまで */
/* ============================================ */

/* CTAボタン */
/* ============================================ */

.cta-wrapper {
  position: relative;
}

.cta-area {
  position: absolute;
  bottom: 6%;
}

.cta-area-02 {
  position: absolute;
  bottom: 13%;
}

.btn_animate01 {
  margin: 0 auto;
  animation: fuwafuwa 1s ease 0s infinite alternate;
  transform-origin:center;
  cursor: pointer;
  display: block;
  }
  @keyframes fuwafuwa {
  from {transform: scale(0.9,0.9);}
  to {transform: scale(1,1);}
  }


/* CTAボタン ここまで */
/* ============================================ */

.movie {
  position: relative;
}

.movie-area {
  position: absolute;
  width: 88%;
  display: block;
  top: 23%;
  left: 6%;
}

.movie iframe {
  width: 100%;
  aspect-ratio: 650 / 813;
}


@media screen and (max-width: 750px) {
  .privacy_wrap {
      font-size: 4.21875vw;
  }
}

.privacy_wrap {
  margin: 0 auto 0;
  padding: 0 5.4% 0 5.1%;
  top: 0;
  color: #3E3A39;
  font-size: 27px;
}

@media screen and (max-width: 750px) {
  .privacy_wrap h1 {
      font-size: 7.65625vw;
  }
}

.privacy_wrap h1 {
  color: #333;
  font-size: 28px;
  text-align: center;
  margin: 0;
  padding: 12% 0 3.2%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 600;
}

@media screen and (max-width: 750px) {
  .privacy_wrap .top {
      font-size: 3.4375vw;
      line-height: 1.8rem;
  }
}

.privacy_wrap .top {
  text-align: justify;
  font-size: 16px;
  line-height: 2rem;
  font-weight: 300;
}

@media screen and (max-width: 750px) {
  .privacy_wrap h2 {
      font-size: 3.59375vw;
  }
}

.privacy_wrap h2 {
  font-size: 20px;
  text-align: left;
  margin: 0 0 -1.6% 0;
  padding: 2% 0 2.2%;
  border-bottom: solid 1px #333;
  font-weight: 400;
}

@media screen and (max-width: 750px) {
  .privacy_wrap p {
      font-size: 3.28125vw;
      line-height: 1.8rem;
  }
}

.privacy_wrap p {
  font-size: 16px;
  line-height: 2rem;
  margin: 4% 0; 
  font-weight: 300;
}

@media screen and (max-width: 750px) {
  .sctl_wrap {
      font-size: 4.21875vw;
  }
}

.sctl_wrap {
  margin: 0 auto 0;
  padding: 0 5.4% 0 5.1%;
  top: 0;
  color: #3E3A39;
  font-size: 27px;
}

@media screen and (max-width: 750px) {
  .sctl_wrap h1 {
      font-size: 7.65625vw;
  }
}

.sctl_wrap h1 {
  color: #333;
  font-size: 28px;
  text-align: center;
  margin: 0;
  padding: 12% 0 8%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 600;
}

@media screen and (max-width: 750px) {
  .sctl_wrap .top {
      font-size: 3.4375vw;
      line-height: 1.8rem;
  }
}


@media screen and (max-width: 750px) {
  .sctl_wrap h2 {
      font-size: 3.59375vw;
  }
}

.sctl_wrap h2 {
  font-size: 18px;
  text-align: left;
  padding: 2.5% 3%;
  background-color:  #e6e6e6;
  font-weight: 400;
}

@media screen and (max-width: 750px) {
  .sctl_wrap p {
      font-size: 3.28125vw;
      line-height: 1.8rem;
  }
}

.sctl_wrap p {
  font-size: 16px;
  line-height: 2rem;
  margin: 4% 0; 
  padding: 0 3%;
  font-weight: 300;
}


/* footer */
/* ============================================ */
footer {
  display: block;
  padding: 6% 1% 22% 1%;
  background: #fff;
}
ul {
  list-style: none;
}
.footer_nav {
  text-align: center;
}
.footer_nav li {
  display: inline-block;
  border-right: #333 solid thin;
  font-size: 13px;
}
.footer_nav li:nth-child(2) {
  border-right: none;
}
.footer_nav li a {
  text-decoration: none;
  padding: 0 8px 0 0;
  color: #333;
}
.footer_nav li:last-child {
  border: none;
}
footer .copyright {
  text-align: center;
  padding: 10px 0;
  font-size: 12px;
  padding-bottom: 10px;
  color: #333;
}
/* footer ここまで */
/* ============================================ */