@charset "utf-8";

/* ---------------------------------------------------------------
Reset
--------------------------------------------------------------- */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}

body {
  line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
  display:block;
}

nav,ul {
  list-style:none;
}

blockquote, q {
  quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content:'';
  content:none;
}

a {
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}

/* change colours to suit your needs */
ins {
  background-color:#ff9;
  color:#000;
  text-decoration:none;
}

/* change colours to suit your needs */
mark {
  background-color:#ff9;
  color:#000;
  font-style:italic;
  font-weight:bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom:1px dotted;
  cursor:help;
}

table {
  border-collapse:collapse;
  border-spacing:0;
}

/* change border colour to suit your needs */
hr {
  display:block;
  height:1px;
  border:0;
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}

input, select {
  vertical-align:middle;
}


/*=========================
common
==========================*/
body {
  height: auto;
  margin: 0 auto;
  background: #fff;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}

img {
  width: 100%;
  display: block;
  margin: 0 auto;
}
a {
  display: block;
  color: #000;
}

/*=========================
body
==========================*/
#xWarp { overflow: hidden;}

.lp-warp {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}


/* 質問エリアの表示・非表示 */
.question-warp,
.answer-contents {
  visibility: hidden;
  opacity: 0;
  height: 0;
  overflow: hidden;
}
.question-warp.is-active {
  visibility: visible;
  opacity: 1;
  height: auto;
  transition: .5s;
}
.answer-contents.is-active {
  visibility: visible;
  opacity: 1;
  height: auto;
}


/* 質問エリア */
.lp-warp .question {
  margin: 5% 2.66% 10% 2.66%;
  padding: 5% 0;
  background-color: #fff7f7;
  border-radius: 10px;
}
.lp-warp .answer-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 7.04% 7.04% 0 7.04%;
}
.lp-warp .answer-list li {
  width: 48%;
  margin-bottom: 4%;
}
.lp-warp .answer-list img:hover {
  cursor: pointer;
}
.lp-warp .answer-list input[type="radio"] {
  display: none;
}

/* 質問2 */
.lp-warp .question02 .answer-next01 {
  position: relative;
}
.lp-warp .question02 .answer-next01-btn {
  position: absolute;
  left: 7%; bottom: 8.4%;
  width: 85%;
}
.lp-warp .answer-next-btn {
  width: 85%;
  margin: 10% auto;
}

/* チケット受け取りページボタン・動画 */
.lp-warp .last-movie-warp,
.lp-warp .last-btn-warp {
  position: relative;

}
.lp-warp .last-btn {
  position: absolute;
  left: 6.5%;
  bottom: 8%;
  width: 86.93%;
  z-index: 3;
}

.lp-warp .last-movie {
  width: 100%;
  vertical-align: bottom;
}

.lp-warp .last-movie02 {
  position: absolute;
  bottom: 6%;
  left: 6%;
  width: 88%;
  vertical-align: bottom;
}
.lp-warp .last-movie02 video {
  width: 100%;
}
.lp-warp .last-movie02::after {
  content: "";
  position: absolute;
  top: 30%;
  left: 0;
  right: 0;
  width: 20%;
  padding-top: 20%;
  margin: 0 auto;
  background: url(../img/icn_play.png) no-repeat;
  background-size: 100%;
  cursor: pointer;
}
.lp-warp .last-movie02.is-hide::after {
  content: none;
}

@media (min-width: 769px) {
  .lp-warp a,
  .answer-list img {
    transition: .5s;
  }
  .lp-warp a:hover,
  .answer-list img:hover {
    opacity: .8;
  }
}

/* footer非表示 */
.footer.is-hide {
  display: none;
}

/*=========================
 紙吹雪
==========================*/
.confetti{
  display: none;
  position: fixed;
  top: 0; left: 0;
  z-index: 2;
}

/*=========================
アニメーション
==========================*/
.lp-warp .anime-huwa {
  position: relative;
  animation: 1s huwahuwa 0s infinite;
  overflow: hidden;
}
.lp-warp .anime-huwa::after {
  content: '';
  position: absolute;
  top: -100px;
  left: -100px;
  width: 50px;
  height: 50px;
  background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
  animation: 3s kira 0s ease-in-out infinite;
}

@keyframes huwahuwa {
  0% {
    transform: scaleX(1);
  }
  50% {
    transform: scale3d(0.95,0.95,0.95);
  }
  100% {
    transform: scaleX(1);
  }
}
@keyframes kira {
  0% {
      transform: scale(0) rotate(25deg);
      opacity: 0;
  }

  50% {
      transform: scale(1) rotate(25deg);
      opacity: 1;
  }

  100% {
      transform: scale(50) rotate(25deg);
      opacity: 0;
  }
}