@charset "utf-8";

main {
  padding-bottom: 55px;
}
#main_v {
  background-image: url(../img/main_v_bg.png);
  background-size: cover;
  height: 695px;
  background-position: center;
  position: relative;
}
#main_v a,
#main_v img {
  position: absolute;
}
#main_v .pkg {
  top: 28px;
  left: 82px;
}
#main_v .btn {
  top: 505px;
  left: 69px;
  display: block;
}
#main_v .desc {
  top: 41px;
  right: 85px;
}
#body {
  padding-top: 29px;
  text-align: center;
}
#body .txt {
  font-family: Sawarabi Gothic;
  font-size: 20px;
  line-height: 2.4;
}
#body .txt span {
  color: #f00;
}
#body .btn {
  display: block;
  width: 422px;
  margin: 35px auto 0;
}
#body .btn img {
  width: 100%;
}
#body .contact {
  border: 1px solid #a8a5a4;
  width: 960px;
  margin: 68px auto 0;
  padding: 33px 43px 24px;
}
#body .contact h3 {
  text-align: left;
  font-size: 20px;
  margin-bottom: 15px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "メイリオ", sans-serif;
}
#body .contact p {
  text-align: left;
  font-size: 16px;
}
#body .contact p:nth-of-type(n+2) {
  margin-top: 11px;
}
#body .contact .term {
  color: #f00;
}
#body .contact a {
  text-decoration: underline;
}
#body .contact a:hover {
  opacity: 0.7;
  transition: 0.3s;
}


@media screen and (max-width:1150px) {
  main {
    padding-bottom: 4.782608696vw;
  }
  #main_v {
    height: 60.434782609vw;
  }
  #main_v .pkg {
    top: 2.5vw;
    left: 7.130434783vw;
    width: 28.956521739vw;
  }
  #main_v .desc {
    top: 3.565217391vw;
    right: 7.391304348vw;
    width: 54.782608696vw;
  }
  #main_v .btn {
    top: 43.913043478vw;
    left: 6vw;
    width: 30.695652174vw;
    display: block;
  }
  #main_v .btn img {
    width: 100%;
  }
  #body {
    padding-top: 2.52173913vw;
  }
  #body .txt {
    font-size: 1.739130435vw;
  }
  #body .btn {
    width: 36.695652174vw;
    margin-top: 3.043478261vw;
  }
  #body .contact {
    width: 83.47826087vw;
    margin-top: 5.913043478vw;
    padding: 2.869565217vw 3.739130435vw 2.086956522vw;
  }
  #body .contact h3 {
    font-size: 1.739130435vw;
    margin-bottom: 1.304347826vw;
  }
  #body .contact p {
    font-size: 1.391304348vw;
  }
  #body .contact p:nth-of-type(n+2) {
    margin-top: 0.956521739vw;
  }
}

@media screen and (max-width:767px) {
  main {
    padding-bottom: 8vw;
  }
  #main_v {
    background-image: url(../img/main_v_bg_sp.jpg);
    height: 124.4vw;
  }
  #main_v .btn {
    width: 47vw;
    top: 99vw;
    left: 5vw;
  }
  #body .btn {
    width: 73vw;
  }
  #body .txt {
    font-size: 4.16vw;
  }
  #body .contact h3 {
    font-size: 3.9vw;
  }
  #body .contact p {
    font-size: 3.9vw;
  }
}