﻿/*common*/
html, body {
margin: 0;
padding: 0;
}
body {
	box-sizing: border-box;
}
#contents {
max-width: 1024px;
width: 100%;
margin: 0 auto;
padding: 0;
position: relative;
}
#contents img {
width: 100%;
height: auto;
}


#contents .chat{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  width: 340px;
  margin: 0 auto 0;
}
#contents .chat_icon{
  width: 52px;
  opacity: 0;
  animation-duration: .2s;
  animation-delay: .5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
@keyframes chat_icon {
  0%{transform: translateY(-20%); opacity: 1;}
  100%{transform: translateY(0); opacity: 1;}
}
#contents .is-active .chat_icon{
  animation-name: chat_icon;
}
#contents .chat_comment{
  position: relative;
  width: 270px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  padding: 10px 5px;
  border-radius: 15px;
  margin-left: 17px;
  font-size: 16px;
  line-height: 1.6;
  color: #fff;
  opacity: 0;
  animation-duration: 1.9s;
  animation-delay: 1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
#contents .chat_comment-l{
  font-size: 18.5px;
}
#contents .chat_comment small{
  font-size: 12px;
}
#contents .chat_comment::before{
  content: "";
  position: absolute;
  top: 10px;
  right: 99.5%;
  display: block;
  background-image: url(https://838b311d46dc2310ea26750bf0a20f37.cdnext.stream.ne.jp/50/acr/sp/contents/ad/50/ent/dha_spco_dhmu114/img/comment_deco_002.webp);
  background-size: cover;
  width: 14px;
  height: 23px;
}
@keyframes chat_comment {
  0%{transform: translateX(-2%) scale(.975); opacity: 1; color: #000;}
  15%{transform: translateX(0) scale(1); opacity: 1; color: #000;}
  85%{transform: translateX(0) scale(1); opacity: 1; color: #000;}
  100%{transform: translateX(0) scale(1); opacity: 1; color: #000;}
}
#contents .is-active .chat_comment{
  animation-name: chat_comment;
}

#contents .wrap{
  background-color: #8daad9;
}

/*mainvisual*/
#mainvisual {
position: relative;
padding: 0;
}
#mainvisual .mv_inner {
position: relative;
}

#mainvisual .title{
display: block;
max-width: 400px;
width: 100%;
margin: 0 auto 18px;
background-image: url(https://838b311d46dc2310ea26750bf0a20f37.cdnext.stream.ne.jp/50/acr/sp/contents/ad/50/ent/dha_spco_dhmu114/img/title_bg_002.webp);
background-size: 100% auto;
background-repeat: no-repeat;
}
#mainvisual .title img{
  opacity: 1;
}


#mainvisual .chat_icon{
  animation-delay: 0s;
}
#mainvisual .chat_comment{
  animation-delay: .5s;
}

#mainvisual .bnr_area{
  opacity: 0;
  transition: .25s;
  transition-delay: 2s;
}
#mainvisual .is-active .bnr_area{
  opacity: 1;
}

#mainvisual .chat_cap{
  color: #fff;
  font-size: 13px;
  line-height: 1.3;
  width: 335px;
  margin: 10px auto 0;
}
#mainvisual .attention{
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 20px auto 0;
  font-size: 20px;
  color: #fff;
}
#mainvisual .attention img{
  display: block;
  width: 25px;
  margin: 0 10px;
  animation-name: attention;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-fill-mode: forwards;
}
@keyframes attention {
  0%{transform: translateY(-5%);}
  50%{transform: translateY(5%);}
  100%{transform: translateY(-5%);}
}

#mainvisual .bnr{
  margin: 10px auto 0;
  max-width: 370px;
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
}
#mainvisual .bnr img{
  display: block;
}

/*q_area*/
#contents .q_inner {
padding: 52px 0 0;
}
#contents .a_area{
  opacity: 0;
  transition: .5s;
  transition-delay: 2s;
}
#contents .is-active .a_area{
  opacity: 1;
}
#contents .q_inner h3 {
width: 81px;
margin: 0 auto 10px;
}
#contents .q_inner p.q_body {
font-size: 21px;
line-height: 33px;
margin-top: 14px;
color: #fff;
font-weight: 600;
text-align: center;
}
#contents .q_inner p.q_body span {
border-bottom: 3px solid #f0d000;
font-weight: bold;
}
#contents .q_inner p.q_cap {
text-align: center;
font-size: 13px;
font-weight: 600;
margin: 15px auto 15px;
color: #fff;
}
#contents .q_inner p.cap {
text-align: left;
font-size: 13px;
line-height: 1.3;
color: #fff;
margin: 20px auto 30px;
}
#contents .q_inner .q_bnr {
margin:0 auto 26px;
max-width: 369px;
width: 100%;
border-radius: 8px;
overflow: hidden;
}
#contents .q_inner .q_bnr img{
display: block;
}
#contents .list li {
margin: 0 auto 8px;
width: 329px;
}
#contents .list input {
display: none;
}
#contents .list label {
position: relative;
display: flex;
justify-content: center;
align-items: flex-start;
flex-direction: column;
color: #000;
font-size: 19px;
line-height: 24px;
padding: 0px 10px 0px 50px;
min-height: 70px;
background-color: #ededed;
border-top: 2px solid #f2f2f2;
border-right: 2px solid #5477bb;
border-bottom: 2px solid #5477bb;
border-left: 2px solid #f2f2f2;
border-radius: 4px;
box-shadow: 0px 2px 2px rgba(0,0,0,0.15);
font-weight: 600;
}
#contents .list label::before {
content:"";
position: absolute;
top: 0;
bottom: 0;
left: 22px;
display: block;
width: 18px;
height: 18px;
margin: auto;
box-sizing: border-box;
border: 2px solid #000000;
}
#contents .list label strong {
font-weight: 900;
}
#contents .list label small {
font-size: 16px;
line-height: 22px;
}
#contents .list .on label {
color: #FFF;
background-color: #06c655;
border-top: 2px solid #09d367;
border-right: 2px solid #5477bb;
border-bottom: 2px solid #5477bb;
border-left: 2px solid #09d367;
}
#contents .list .on label::before {
border: 2px solid #ffffff;
}
#contents .list .on label::after {
content:"";
position: absolute;
top: 0;
bottom: 0;
left: 22px;
display: block;
width: 20px;
height: 10px;
margin: auto;
box-sizing: border-box;
border-left: 3px solid #ffffff;
border-bottom: 3px solid #ffffff;
transform: translate(4px, -6px) rotate(-40deg);
}
#contents .q_after_txt {
  width: 303px;
  margin: 45px auto;
  position: relative;
  z-index: 10;
}
#contents ul.btn_next {
width: 140px;
margin: 30px auto 0;
position: relative;
z-index: 10;
}
#contents ul.btn_next li {
opacity: 0.5;
}
#contents ul.btn_next li.on  {
cursor: pointer;
opacity: 1;
display: block;
}
#contents .cap {
max-width: 330px;
width: 100%;
margin: 20px auto 110px;
font-size: 13px;
line-height: 1.3;
color: #fff;
}
#contents .q_loading {
  width: 7px;
  margin: 65px auto 20px;
}
.q_area{
position: relative;
z-index: 5;
}


/*thanks*/
#contents .thanks_area {
padding: 10px 0 0;
}
#contents .thanks_area .thanks_inner {
width: auto;
padding: 0px 0 25px;
margin: auto;
}
#contents .thanks_area .thanks_img{
  width: 326px;
  margin: 0 auto 18px;
  transition: 1s;
  transition-delay: 1s;
}
#contents .thanks_area .is-active .thanks_img{
  transform: translateY(0vh);
}
#contents .thanks_area .thanks_img img{
  opacity: 0;
  transition: .5s;
  transition-delay: .5s;
}
#contents .thanks_area .is-active .thanks_img img{
  opacity: 1;
}
#contents .thanks_area .is-active .thanks_sub_img{
  width: 355px;
  margin: auto;
}
#contents .thanks_area .thanks_after{
  opacity: 0;
  transition: .5s;
  transition-delay: 1.5s;
}
#contents .thanks_area .is-active .thanks_after{
  opacity: 1;
}
#contents .thanks_area  .btn_try{
width: 360px;
margin: auto;
}
#contents .thanks_area .cap{
  margin: 30px auto 20px;
  font-size: 13px;
  line-height: 1.3;
}
#inquiry {
  padding: 20px 0 10px;
  border-top: 1px solid #aba792;
}