@charset "UTF-8";
/* 共通 */
body {
  font-family: "Noto Sans JP", sans-serif;
}

* {
  box-sizing: border-box;
}

.sp-pc {
  display: none;
}
@media screen and (max-width: 1080px) {
  .sp-pc {
    display: block;
  }
}

.pc {
  display: block;
}
@media screen and (max-width: 1080px) {
  .pc {
    display: none;
  }
}

.sp-tab {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp-tab {
    display: block;
  }
}

.tab {
  display: block;
}
@media screen and (max-width: 768px) {
  .tab {
    display: none;
  }
}

.Ban img {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  user-select: none;
}

.sp_u {
  display: inline-block;
}

/* パディング */
.p_b_30 {
  padding-bottom: 30px;
}
@media screen and (max-width: 480px) {
  .p_b_30 {
    padding-bottom: 20px;
  }
}

.p_b_50 {
  padding-bottom: 50px;
}
@media screen and (max-width: 480px) {
  .p_b_50 {
    padding-bottom: 30px;
  }
}

.p_b_100 {
  padding-bottom: 100px;
}
@media screen and (max-width: 480px) {
  .p_b_100 {
    padding-bottom: 50px;
  }
}

.m_b_50 {
  margin-bottom: 50px;
}
@media screen and (max-width: 480px) {
  .m_b_50 {
    margin-bottom: 30px;
  }
}

sup {
  font-size: 1.4rem;
  vertical-align: top;
}

#floating {
  position: fixed;
  bottom: 35px;
  right: 0;
  width: 435px;
  z-index: 99;
  height: 107px;
}
@media screen and (max-width: 768px) {
  #floating {
    height: 24.5vw;
    width: 100%;
    bottom: 0px;
  }
}
#floating .floating_area {
  width: 435px;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  #floating .floating_area {
    width: 100%;
  }
}
#floating .text, #floating .btn {
  display: inline-block;
}