@charset "utf-8";
* {
  margin:0;
  padding:0;
  box-sizing: border-box;
}
body {
  font-family:"ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo, Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-weight: 500;
  line-height: 1.0em;
  color: #000;
  letter-spacing: 0em;
}
ul,ol {
  list-style-type:none;
}
a:hover {
  opacity:1.0;
}
a:focus {
  outline: none;
}
img{
	height:auto;
	border:0;
	vertical-align:top;
  max-width: 100%;
	margin:0;
}
video {
  vertical-align: bottom;
  width:100%;
  height:auto;
  outline: none;
}
.sourceview {
  line-height: 0;
}
.sourceview img {
  display: block;
  width: 1px;
  height: auto;
}
.content_wrap {
  max-width: 750px;
  margin:0 auto;
  overflow: hidden;
}
.content_wrap img {
  display: block;
  height: auto;
}
.rl {
  position: relative;
}
.btn01 {
  position: absolute;
  width: 677px;
  top:1300px;
  left:45px;
  animation: jello 2.8s infinite;
}
.btn01 a {
  display: block;
}
.qa_wrap {
  background: #e0c0c5 url(../images/qa_bg.jpg) left top/100% no-repeat;
  padding:292px 40px 65px 40px;
}
.qa_wrap .accordionlist:not(:nth-of-type(1)) {
  margin-top: 15px;
}
.accordionlist dt {
  position: relative;
  cursor: pointer;
}
.accordionlist dt:before {
  position: absolute;
  content: "";
  top: 0;
  width: 25px;
  background: #000;
  height: 2px;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  top: 50%;
  right: 40px;
  transition: .3s all;
}
.accordionlist dt:after {
  position: absolute;
  content: "";
  top: 0;
  width: 25px;
  background: #000;
  height: 2px;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  top: 50%;
  right: 40px;
  transition: .3s all;
}
.accordionlist dt.active:before {
  display: none;
}
.accordionlist dt.active:after {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
}
.accordionlist dd {
  display: none;
}
.f_footer {
  padding:40px 0 100px;
}
.f_footer .f_logo {
  width: 124px;
  margin:0 auto;
}
.f_footer .fnavi {
  width: 100%;
  margin: 0 auto;
  padding: 35px 0 0 0;
  display: flex;
  justify-content: center;
}
.f_footer .fnavi li {
  padding:0 15px;
  line-height: 1.2em;
}
.f_footer .fnavi li:not(:nth-of-type(1)) {
  border-left:1px solid #000;
}
.f_footer .fnavi li a {
  color:#000;
  display: block;
  opacity: 1;
  text-decoration: none;
  font-size:18px;
}
.f_footer .fnavi li a:hover {
  text-decoration: underline;
}
@keyframes jello {
  0% {
      transform: scale(1, 0.98);
  }
  20% {
      transform: scale(0.9, 1.1);
  }
  65% {
      transform: scale(1, 1.0);
  }
  100% {
      transform: scale(1, 1.0);
  }
}
.btm-fix {
  position: fixed;
  left:50%;
  margin-left:-375px;
  bottom:0;
  width: 750px;
  height:208px;
  z-index: 2;
  display: none;
}
.btn02 {
  position: absolute;
  width: 731px;
  animation: jello 2.8s infinite;
  top:0;
  right:0px;
}
.btn02 a {
  display: block;
}
.b_acc {
  background: #ce236f;
  padding:0 30px 55px;
}
.b_acc dd {
  display: none;
}
.b_acc .accordionlist dt {
  position: relative;
  cursor: pointer;
}
.b_acc .accordionlist dt:before {
  position: absolute;
  content: "";
  top: 0;
  width: 20px;
  background: #fff;
  height: 1px;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  top: 50%;
  right: 35px;
  transition: .3s all;
}
.b_acc .accordionlist dt:after {
  position: absolute;
  content: "";
  top: 0;
  width: 20px;
  background: #fff;
  height: 1px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 50%;
  right: 35px;
  transition: .3s all;
}
.b_acc .accordionlist dt.active:before {
  display: none;
}
.b_acc .accordionlist dt.active:after {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}
.btn-insta {
  position: absolute;
  width: 570px;
  top:1235px;
  left:90px;
}
.btn-insta a {
  display: block;
}
@media(max-width:749px) {
 img {
   width: 100%;
 }
 .content_wrap {
   width: 100%;
 }
 .btn01 {
   width: 90.26vw;
   top:173.33vw;
   left:6vw;
 }
 .qa_wrap {
    padding:38.93vw 5.3vw 8.66vw 5.3vw;
  }
  .qa_wrap .accordionlist:not(:nth-of-type(1)) {
    margin-top: 2vw;
  }
  .accordionlist dt:before {
    width: 3.33vw;
    height: 1px;
    top: 50%;
    right: 5.3vw;
  }
  .accordionlist dt:after {
    width: 3.33vw;
    height: 1px;
    top: 50%;
    right: 5.3vw;
  }
  .f_footer {
    padding:5.3vw 0 17vw;
  }
  .f_footer .f_logo {
    width: 16.53vw;
  }
  .f_footer .fnavi {
    padding: 4.5vw 0 0 0;
  }
  .f_footer .fnavi li {
    padding:0 1.5vw;
    line-height: 1.0em;
  }
  .f_footer .fnavi li a {
    font-size:2.8vw;
  }
  .btm-fix {
    left:0;
    margin-left:0;
    bottom:0;
    width: 100%;
    height:27.73vw;
  }
  .btn02 {
    width: 97.46vw;
  }
  .b_acc {
    padding:0 4vw 7.33vw;
  }
  .b_acc .accordionlist dt:before {
    width: 2.66vw;
    right: 4.66vw;
  }
  .b_acc .accordionlist dt:after {
    width: 2.66vw;
    right: 4.66vw;
  }
  .btn-insta {
    width: 76vw;
    top:164.66vw;
    left:12vw;
  }
}
