/*-------------------------------
画像無限ループ
-------------------------------*/
 
    .popup-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      display: flex;
      justify-content: center;
      align-items: center;
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.5s ease-in-out, visibility 0.5s;
    }

    .popup {
      background: white;
      padding: 7px;
      border-radius: 8px;
      position: relative;
      width: 265px;
      text-align: center;
    }

    .close-btn {
      position: absolute;
      top: 10px;
      right: 10px;
      background: none;
      border: none;
      font-size: 18px;
      cursor: pointer;
    }

    .popup-overlay.show {
      opacity: 1;
      visibility: visible;
    }


.loop_wrap {
  display: flex;
  width: 100vw;
  height: 40%;
  overflow: hidden;
}
.loop_wrap img {
  width: auto;
  height: 100%;
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
.loop_wrap img:first-child {
  animation: loop 50s -25s linear infinite;
}
.loop_wrap img:last-child {
  animation: loop2 50s linear infinite;
}
/*-------------------------------
モーダルCSS
-------------------------------*/
.modal-div{
  position: absolute;
  top: 93.5%;
  width: 100%
}
/* モーダルを開くボタン */
.modal-open{
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
  color: #4c4c4c;
  text-decoration:underline;
  border: none;
  cursor: pointer;
}

/* モーダルと背景の指定 */
.modal{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,75%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  z-index: 10000;
}

/* モーダルの擬似要素の指定 */
.modal:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  margin-left: -0.2em;
}

/* クラスが追加された時の指定 */
.modal.is-active{
  opacity: 1;
  visibility: visible;
}

/* モーダル内側の指定 */
.modal-container{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 600px;
  width: 90%;
}

/* モーダルを閉じるボタンの指定 */
.modal-close{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -20px;
  right: -20px;
  width: 40px;
  height: 40px;
  color: #fff;
  background: #000;
  border-radius: 50%;
  cursor: pointer;
}

/* モーダルのコンテンツ部分の指定 */
.modal-content{
  background: #fff;
  text-align: left;
  line-height: 1.8;
  padding: 20px;
}

/* モーダルのコンテンツ部分のテキストの指定 */
.modal-content p{
  margin: 1em 0;
}
/*-------------------------------
モーダルCSS
-------------------------------*/

/*-------------------------------
Common
-------------------------------*/
body {
  background-color: #fff;
  font-family: "YuGothic", "Arial", sans-serif;
  font-size: 1.6rem;
  color: #000;
  line-height: 1.8;
  letter-spacing: 0.05em;
  margin: 0;
}

/*-------------------------------
Main
-------------------------------*/
#lp-content {
  max-width: 750px;
  margin: auto;
  overflow: hidden;
}
@media (max-width: 1023px) {
  #lp-content {
    width: 100%;
  }
}
#lp-content .d-f {
  display: flex;
}
#lp-content .fw-b {
  font-weight: bold;
}
#lp-content .lp-img-box {
  position: relative;
  display: flex;
  justify-content: center;
}
#lp-content .lp-img {
  width: 100%;
}
#lp-content .fv-parts {
  z-index: 2;
}
#lp-content .shine {
  position: relative;
  width: 100%;
}
#lp-content .shine::before {
  content: "";
  position: absolute;
  top: 22%;
  left: 10vw;
  display: block;
  width: 20vw;
  height: 6%;
  background: linear-gradient(339deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 70%);
  animation: shine 2.5s ease-in 0s infinite;
  transform: translateX(1px);
  opacity: 0;
}
@keyframes shine {
  0% {
    opacity: 0;
    right: 0;
    transform: translateX(1px);
  }
  8% {
    opacity: 0.5;
    right: 50%;
    transform: translateX(50%);
  }
  16% {
    opacity: 1;
    right: 100%;
    transform: translateX(100%);
  }
  24% {
    opacity: 0;
    right: 100%;
    transform: translateX(100%);
  }
  100% {
    opacity: 0;
    right: 100%;
    transform: translateX(100%);
  }
}
#lp-content .lp-fv01-parts {
  position: absolute;
  top: 50%;
  left: 1%;
  width: 37%;
}
#lp-content .lp-fv02-parts {
  position: absolute;
  top: 57.5%;
  right: 0.5%;
  width: 67%;
}
#lp-content .lp-fv03-parts {
  position: absolute;
  top: 55%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 90%;
}
#lp-content .lp-cta-btn {
  position: absolute;
  top: 70.5%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 78%;
  animation-name: UpDown;
  animation-duration: 0.6s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
  animation-direction: alternate;
}
@keyframes UpDown {
  0% {
    transform: translateY(-4px);
  }
  100% {
    transform: translateY(4px);
  }
}
#lp-content .lp-03-parts {
  position: absolute;
  top: 12.1%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 78%;
}
#lp-content .lp-04-ttl {
  position: absolute;
  top: 10.5%;
  width: 65%;
}
#lp-content .lp-05-parts {
  position: absolute;
  bottom: 5.5%;
}
#lp-content .lp-05-parts img {
  max-width: 140%;
  width: 140%;
}
#lp-content .slide05-top {
  animation: infinity-scroll-left 20s infinite linear 0.5s both;
  display: flex;
}
#lp-content .slide05-bottom {
  animation: infinity-scroll-right 20s infinite linear 0.5s both;
  display: flex;
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0%);
  }
}
#lp-content .lp-06-ttl {
  position: absolute;
  top: 8%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 82%;
}
#lp-content .lp-06-copy {
  position: absolute;
  top: 40.2%;
  right: 17%;
  width: 31%;
}
#lp-content .lp-07-copy {
  position: absolute;
  top: 28.3%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 92%;
}
#lp-content .lp-07-graph {
  position: absolute;
  top: 49.3%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 92%;
}
#lp-content .lp-07-tag {
  position: absolute;
  bottom: 8.5%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 92%;
}
#lp-content .lp08 {
  margin-top: -40%;
}
#lp-content .lp-08-list {
  position: absolute;
  bottom: 13.5%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 92%;
}
#lp-content .lp-08-detail {
  position: absolute;
  margin: 15px auto 60px;
  padding: 30px 0;
  border-radius: 5px;
  width: 92%;
  background-color: #fff;
}
@media (max-width: 919px) {
  #lp-content .lp-08-detail {
    padding: 10px 0;
  }
}
#lp-content .lp-08-detail .lp-08-detail-ttl {
  text-align: center;
  z-index: 3;
}
#lp-content .lp-08-detail .lp-08-detail-answer {
  display: none;
  font-size: 14px;
  padding: 35px;
}
#lp-content .lp-09-copy {
  position: absolute;
  top: 59.7%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 89%;
}
#lp-content .lp-09-graph {
  position: absolute;
  top: 70%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 65%;
}
#lp-content .lp-10-graph {
  position: absolute;
  top: 21.65%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 72%;
}
#lp-content .lp-10-copy {
  position: absolute;
  top: 31.8%;
  left: 23%;
  width: 48%;
}
#lp-content .lp-11-copy {
  position: absolute;
  top: 24.4%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 89%;
}
#lp-content .lp-11-copy2 {
  position: absolute;
  bottom: 16.15%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 62%;
}
#lp-content .lp-11-slide {
  position: absolute;
  width: 100%;
  bottom: 3.8%;
  text-align: center;
}
#lp-content .lp-11-slide li {
  width: 413px;
  justify-content: center;
  display: flex;
}
#lp-content .lp-11-slide img {
  width: 69%;
}
#lp-content .bx-wrapper {
  position: absolute;
  bottom: calc(3.2% - 10px);
  max-width: 100vw !important;
}
#lp-content .bx-viewport {
  height: 100% !important;
}
#lp-content .bx-pager {
  display: flex;
  justify-content: center;
}
#lp-content .bx-pager-link {
  background: #413b3f;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  border-radius: 999px;
}
#lp-content .bx-controls {
  top: 15px;
  position: relative;
}
#lp-content .active {
  background-color: #b31c4b;
  color: #b31c4b;
}
#lp-content .lp-11-faq-box {
  background-image: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/14-2.png);
  background-size: cover;
  padding-bottom: 15px;
}
#lp-content .lp-11-faq {
  margin: 0 auto;
  padding: 0;
  border-radius: 5px;
  width: 92%;
  background: linear-gradient(to right, #eba1c9, #c29ed5, #8ab1dd);
  position: relative;
}
#lp-content .lp-11-faq .lp-08-detail-ttl {
  text-align: center;
  z-index: 3;
}
#lp-content .lp-11-faq .lp-08-detail-answer {
  display: none;
  font-size: 14px;
  padding: 35px;
}

.faq-item .lp08-question {
  color: #381212;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
}
@media (max-width: 919px) {
  .faq-item .lp08-question {
    font-size: 138%;
  }
}
.faq-item .lp11-question {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: left;
  padding: 15px 50px;
  cursor: pointer;
}
.faq-item .question-arrow::after {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 42px;
  right: 10%;
  background-image: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/08plus.png);
  background-size: cover;
}
@media (max-width: 919px) {
  .faq-item .question-arrow::after {
    top: 12px;
  }
}
.faq-item .question-arrow.open::after {
  top: 42px;
  right: 10%;
  background-image: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/08minus.png);
  background-size: cover;
}
@media (max-width: 919px) {
  .faq-item .question-arrow.open::after {
    top: 12px;
  }
}
.faq-item .question-arrow11::after {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 19px;
  right: 3%;
  background-image: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/11plus.png);
  background-size: cover;
}
.faq-item .question-arrow11.open::after {
  top: 19px;
  right: 3%;
  background-image: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/11minus.png);
  background-size: cover;
}
.faq-item .answer {
  padding: 6% 6% 2%;
  color: #000000;
  font-size: 21px;
  font-weight: 200;
  line-height: 1.4;
}
@media (max-width: 919px) {
  .faq-item .answer {
    padding: 6% 6% 2%;
    font-size: 2.5vw;
  }
}
.faq-item .answer11 {
  display: none;
  padding: 15px;
  color: #000000;
  font-size: 13px;
  font-weight: 200;
  line-height: 1.4;
  background-color: #fff;
  border-radius: 0 0 5px 5px;
}
.faq-item .question {
  position: relative;
}
.faq-item .question::before {
  content: "";
  background-image: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/11-q.png);
  width: 25px;
  height: 70%;
  background-size: 100%;
  background-repeat: no-repeat;
  top: 25%;
  left: 10px;
  position: absolute;
}

.slider-card {
  margin-left: 16%;
}

.question-block {
  display: block;
  height: auto;
  position: absolute;
  width: 560px !important;
  height: auto;
  padding-bottom: 23px;
}
@media (max-width: 919px) {
  .question-block {
    width: 70vw !important;
  }
}

.question-block img {
  width: 100%;
  height: auto;
}

.bx-slider {
  width: 750px;
  height: 650px;
  margin: 30px auto;
}
@media (max-width: 919px) {
  .bx-slider {
    width: 100%;
    height: 90vw;
  }
}

.slide-ttl {
  text-align: center;
}
.slide-ttl img {
  width: 90%;
  height: auto;
  position: relative;
  left: 5%;
}

.bx-prev {
  width: 90px;
  height: 90px;
  background: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/arrow-left.png) no-repeat;
  background-size: cover;
  top: -17.5rem;
  left: -0.5rem;
  position: absolute;
  z-index: 2;
}
@media (max-width: 919px) {
  .bx-prev {
    width: 60px;
    height: 60px;
    top: -41.5vw;
    left: -10px;
  }
}

.bx-next {
  width: 90px;
  height: 90px;
  background: url(https://belta-shop.jp/lp_media/transfer_from_rpst_v1/upload/save_image/equrythm/arrow-right.png) no-repeat;
  background-size: cover;
  top: -17.5rem;
  right: -0.5rem;
  position: absolute;
  z-index: 2;
}
@media (max-width: 919px) {
  .bx-next {
    width: 60px;
    height: 60px;
    top: -41.5vw;
    right: -10px;
  }
}/*# sourceMappingURL=style.css.map */


/* セクション */
section {
  width: 100%;
  max-width: 750px;
  max-width: 46.875rem;
  margin: 0 auto;
  margin-bottom: -5px;
  position: relative;
  overflow: hidden;
}
.section-margin01 {
  margin-top: -6%;
}

/* 動画 */
video {
  width: 100%;
}
.top-fv-video video {
  height: 100vh;
}
@media screen and (min-width: 768px) {
  .top-fv-video video {
    height: 100vh;
  }
}
.full-wrap {
  position: relative;
}
.full-wrap-video {
  position: absolute;
  left: 0;
  right: 0;
  top: 21%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.full-wrap-video video {
  width: 90%;
}
.full-wrap-coloring {
  position: absolute;
  right: 3%;
  top: 16%;
  width: 30%;
}
.full-wrap-coloring img {
  width: 92%;
}
.worries-wrap {
  position: relative;
}
.worries-wrap-video {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3.5%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.worries-wrap-video video {
  width: 92%;
}
.popular {
  position: relative;
}
.popular-gif {
  position: absolute;
  left: 0;
  right: 0;
  margin: o auto;
  top: 17%;
}

/* ボタン */
.header-btn {
  position: absolute;
  top: 0%;
  right: -2%;
  width: 31%;
  max-width: 219px;
}
.cta-btn01 {
  position: absolute;
  width: 90%;
  margin: 0 auto;
  left: 0;
  right: 0;
  top: 67%;
}
.cta-btn02 {
  position: absolute;
  width: 94%;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: 2%;
}
.float-btn {
  position: fixed;
  z-index: 100;
  margin: 0 auto;
  left: 0;
  right: 0;
  max-width: 750px;
  bottom: 0%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 100%;
}
.float-btn-img {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  -webkit-transition: 300ms;
  transition: 300ms;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.float-btn-img img {
  -o-object-fit: cover;
  object-fit: cover;
}
.float-btn-img::before {
  position: absolute;
  content: "";
  display: inline-block;
  top: -200px;
  left: 0;
  width: 30px;
  height: 50%;
  background-color: #fff;
  -webkit-transition: 300ms;
  transition: 300ms;
  -webkit-animation: shinyshiny 2.5s ease-in-out infinite;
  animation: shinyshiny 2.5s ease-in-out infinite;
}
@-webkit-keyframes UpDown {
  0% {
    -webkit-transform: scale(0.98);
    transform: scale(0.98);
  }
  100% {
    -webkit-transform: scale(1.02);
    transform: scale(1.02);
  }
}
@keyframes UpDown {
  0% {
    -webkit-transform: scale(0.98);
    transform: scale(0.98);
  }
  100% {
    -webkit-transform: scale(1.02);
    transform: scale(1.02);
  }
}
.opacity {
  opacity: 0;
}
@-webkit-keyframes shinyshiny {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
.cta-btn {
  width: 100%;
  -webkit-animation-name: UpDown;
  animation-name: UpDown;
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
  overflow: hidden;
  border-radius: 50px;
  border-style: none;
  background: none;
}
@media screen and (min-width: 768px) {
  .cta-btn {
    width: 88%;
  }
}
.cta-btn:hover {
  opacity: 0.8;
}
.cta-btn::before {
  position: absolute;
  content: "";
  display: inline-block;
  top: -200px;
  left: 0;
  width: 30px;
  height: 50%;
  background-color: #fff;
  -webkit-transition: 300ms;
  transition: 300ms;
  -webkit-animation: shinyshiny 2.5s ease-in-out infinite;
  animation: shinyshiny 2.5s ease-in-out infinite;
}
.cta-btn-top {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .teiki_h3_green {
    padding: 12px 8px;
    color: #fff;
    text-align: center;
    background: #f01f75;
  }
}

/* アコーディオン */
.accodion__link {
  position: relative;
  width: 90%;
  margin: 0 auto;
}
.accodion__link02 {
  position: relative;
  width: 90%;
  margin: 0 auto;
  margin-top: -28%;
}
.open-btn {
  position: relative;
}
.text-content {
  position: absolute;
  left: 0;
  right: 0;
  color: #fff;
  top: -20px;
  top: -1.25rem;
  text-align: center;
  background: #51270A;
  width: 90%;
  margin: 0 auto;
  margin-top: 7.5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 16px;
  font-size: 1rem;
  font-family: "Noto Sans", sans-serif;
  font-weight: 400;
  border-radius: 10px;
  padding: 6%;
}
@media screen and (min-width: 768px) {
  .text-content {
    padding: 2rem;
    font-size: 24px;
    top: -2.5rem;
    font-size: clamp(1.25rem, 3.2vw, 1.5rem);
  }
}
.text-content02 {
  position: absolute;
  left: 0;
  right: 0;
  color: #fff;
  background: #51270A;
  width: 90%;
  top: -15px;
  top: -0.9375rem;
  text-align: center;
  margin: 0 auto;
  margin-top: 6%;
  border-radius: 10px;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-family: "Noto Sans", sans-serif;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 6%;
  letter-spacing: 2px;
}
@media screen and (min-width: 768px) {
  .text-content02 {
    margin-top: 8%;
    padding: 2rem;
    font-size: clamp(1.25rem, 3.2vw, 1.5rem);
    top: -1.875rem;
  }
}
.text-content03 {
  position: absolute;
  left: 0;
  right: 0;
  color: #fff;
  background: #51270A;
  width: 90%;
  top: -15px;
  top: -0.9375rem;
  text-align: center;
  margin: 0 auto;
  margin-top: 5.5%;
  border-radius: 10px;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-family: "Noto Sans", sans-serif;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 6%;
  letter-spacing: 2px;
}
@media screen and (min-width: 768px) {
  .text-content03 {
    margin-top: 8%;
    padding: 2rem;
    font-size: clamp(1.25rem, 3.2vw, 1.5rem);
    top: -1.875rem;
  }
}
.open-btn:hover {
  cursor: pointer;
}
/*アイコンの＋と×*/
.title::before,
.title::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 2px;
  background-color: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  pointer-events: none;
}
.title::before {
  margin-top: 11%;
  top: 0%;
  right: 10%;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .title::before {
    margin-top: 9%;
  }
}
.title::after {
  top: 0%;
  margin-top: 11%;
  right: 10%;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
@media screen and (min-width: 768px) {
  .title::after {
    margin-top: 9%;
  }
}
.title-layout::before {
  top: 0%;
  right: 10%;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  margin-top: 11%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .title-layout::before {
    margin-top: 11%;
  }
}
.title-layout::after {
  top: 48%;
  right: 10%;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  margin-top: 11%;
}
@media screen and (min-width: 768px) {
  .title-layout::after {
    margin-top: 11%;
  }
}
/*　closeというクラスがついたら形状変化　*/
.title.close::before {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.title.close::after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.faq img {
  margin-top: 1px;
}
.faq {
  background: #eadaca;
}
.title01 {
  position: relative;
}
.title02 {
  position: relative;
}
/*アイコンの＋と×*/
.title01::before,
.title01::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 2px;
  background-color: #fefefe;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  pointer-events: none;
}
.title01::before {
  bottom: 10%;
  right: 7%;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.title01::after {
  bottom: 10%;
  right: 7%;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.title01.close::before {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.title01.close::after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
/*アイコンの＋と×*/
.title02::before,
.title02::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 2px;
  background-color: #fefefe;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  pointer-events: none;
}
.title02::before {
  top: 48%;
  right: 7%;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.title02::after {
  top: 48%;
  right: 7%;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.title02.close::before {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.title02.close::after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
/*アコーディオンで現れるエリア*/
.box02 {
  display: none; /*はじめは非表示*/
}


* {
  box-sizing: border-box;
}
body {
  font-family:'Avenir','Helvetica, Neue','Helvetica','Arial';
}

/*--- CTA ---*/
.cta_area{
  position: relative;
  display: flex;
}
.cta_area_button{
  position: absolute;
  top: 78%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 100%;
}
/*--- CTAボタンアニメーションここから ---*/
.keyframe {
  animation-name: anim_sc;
  transform: scale(1, 1);
}
@keyframes anim_sc {
  100% {
    transform: scale(0.9, 0.9);
  }
}
.animation {
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.2s;
}
/*--- CTAボタンアニメーションここまで ---*/

/* sliderエリアに必要なstyle大枠ここから */
.rel_img {
  position: relative;
}
/*--- CTA ---*/