@charset "utf-8";
/* CSS Document */

html{
  font-size: 10px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.025em;
  -webkit-text-size-adjust: 100%;
  font-family: 'Noto Sans JP', sans-serif;
  height:100vh;
}

body{
  font-size: 18px;
  position: relative;
  min-height: 100vh;
  background-color: #fff;
  background-image: url("../images/bg-fixed.png");
  background-size: 100% auto;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center center;
  margin:0;
  padding:0;
}

@media screen and (max-width: 780px) { body{ font-size: 18px; } }

header{
  background-image: url("../images/header-bg.png");
  background-size: cover;
  background-position: center;
  position: relative;
}
.header-wrap{
  max-width: 1000px;
  margin:0 auto;
  padding:2rem 0 10rem 0;
}

.header-arrow{
  width:100%;
  text-align: center;
  position: absolute;
  bottom:-50px;
  z-index: 99;
}

img{ max-width: 100%; }

main{
  max-width: 1000px;
  margin:0 auto;
  margin-top: 10rem;
  background-color: #fff;
  padding-top:2rem;
  box-shadow: 0 0 10px 2px #aaa;
}

h2{
  text-align: center;
  margin-bottom:5rem;
  margin-top:5rem;
}

.text-box{
  width:96%;
  max-width: 800px;
  margin: 0 auto 3rem auto;
  text-align: left;
}

.text-img{
  text-align: center;
  padding: 3rem 0 2rem;
}

.text-img-left{
  text-align: left;
  padding: 3rem 0 2rem;
}


.s-14{ font-size:14px; }
.s-16{ font-size:16px; }

.s-20{ font-size:20px; }
.s-21{ font-size:21px; }
.s-22{ font-size:22px; }
.s-24{ font-size:24px; }
.s-25{ font-size:25px; }

.s-30{ font-size:30px; }
.s-32{ font-size:32px; }
.s-34{ font-size:34px; }
.s-35{ font-size:35px; }

.s-40{ font-size:40px; }
.s-43{ font-size:43px; }

.red{ color:#CD000F; }
.blue{ color:#181295; }
.magenta{ color:#ca006d; }
.bold{ font-weight:900; }
.center{ text-align: center; }
.right{ text-align: right; }
.mincho{font-family: 'Noto Serif JP', sans-serif;}
.under{ text-decoration: underline; }
.b-yellow{ background-color: #FFF119;}
.b-blue{ display: inline-block; background-color: #cfd9e9;}
.b-black{ display: block; background-color: #000; color:#fff; padding:1rem 2rem;}

.voice-list li{
  display: flex;
  width:100%;
}
.voice-img{
  width: 15%;
  margin:5%;
}

.voice-text {
  position: relative;
  display: inline-block;
  filter: drop-shadow(1px 4px 4px #ccc);
  margin: 1.5em 0 1.5em 15px;
  padding: 2rem;
  width: 80%;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #fff;
  border-radius: 10px;
  z-index: 99;
}

.voice-text:before {
  content: "";
  position: absolute;
  top: 20%;
  left: -29px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #fff;
}


.check-list li{
  position: relative;
  padding: 0 0 10px 2rem;
}
.check-list li:before{
  content:"";
  position: absolute;
  top:50%;
  left:0;
  transform: translateY(-65%);
  background-image: url("../images/icon-check-01.png");
  width: 14px;
  height: 13px;
}

hr{ width: 100%; color:#aaa; }


.gradient-box {
  border: 4px solid #c21500;
  border-image: linear-gradient(to right, #c21500 0%, #ffc500 100%);
  border-image-slice: 1;
  margin-top:2rem;
  position: relative;
  padding:0;
}

.gradient-box h3{
  text-align: center;
  margin:4rem 0 2rem 0;
}
.gradient-box hr{
  width: 80%;
  margin:0 auto;
}
.gradient-box .text-p{
  margin:2rem 3rem 5rem 3rem;
}




.merit-top{
  display: block;
  width: 100%;
  text-align: center;
  position: absolute;
  top:5px;
}
.merit-bottom{
  display: block;
  width: 100%;
  text-align: center;
  position: absolute;
  bottom:5px;
}



.option-text{
  width:720px;
  max-width: 90%;
  margin:4rem auto;
  font-size:13px;
  background-color: #f7f7f7;
  padding:1rem;
}


.qa-list{
  max-width: 1000px;
  margin-left:auto;
  margin-right:auto;
}
.qa-list li{
  position: relative;
  padding:1rem;
  margin-top: 10px;
  border: 3px solid #808080;
  border-radius: 15px;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.qa-list h4{
  text-indent: -1em;
  width: 100%;
  margin: 0;
  padding: 1rem 4rem 1rem 3rem;
  display: block;
  position: relative;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  -webkit-transition: color .25s ease;
  transition: color .25s ease;
}
.qa-list h4:before {
  content: "Q";
  color: #191964;
  font-size: 2em;
  font-weight: 500;
  font-family: 'Roboto', sans-serif;
  margin-right: 0.9rem;
}

.qa-list h4:after {
  content: '+';
  color:#6E6E9D;
  text-align: center;
  font-size: 2em;
  font-weight: 400;
  width: 10px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  position: absolute;
  right: 1rem;
  top: 50%;
}

.qa-list li.active h4:after{
  content: '-';
}

.qa-list p {
  display: none;
  overflow: hidden;
  font-size: 16px;
  padding: 1rem 2rem 1rem 4.5rem;
  border-top: 2px dashed #808080;
  text-indent: -2em;
}

.qa-list p:before {
  content: "A";
  color: #FFB10D;
  font-size: 2em;
  font-weight: 500;
  font-family: 'Roboto', sans-serif;
  margin-right: 0.9rem;
}

    @media screen and (max-width: 780px) {
      .header-wrap{padding:0;}
      h2{margin-bottom:3rem;}
      .header-arrow{display: none;}
      .s-40{ font-size:30px;}
      .voice-text:before{top:5%;}
      .gradient-box h3{width: 96%; margin-left:auto; margin-right:auto;}
      .qa-list li{ psdding: 0.5rem; }
      
      .qa-list h4:before { font-size:1.5rem; margin-right: 0.5rem; }
      .qa-list h4:after { right: 0rem; }
      
      
      .qa-list p:before { font-size:1.5rem; margin-right: 0.5rem; }
    }

.blue-area{
  color:#0043FF;
  border:#0043FF 2px solid;
  text-align: center;
  max-width: 420px;
  widht:90%;
  margin:2rem auto;
}

.blue-area a{
  display: block;
  padding:2rem;
}


footer{
  background-color: #000;
  padding:5rem;
}



.cp_arrows *{
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.cp_arrows {
  position: relative;
  display: flex;
  height: 80px;
  margin: 2em auto;
  justify-content: center;
  align-items: center;
}
.cp_arrows .cp_arrow {
  position: absolute;
  top: 80%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  opacity: 0;
}
.cp_arrows .cp_arrowfirst {
  -webkit-animation: arrow-move08 2s ease-in-out infinite;
          animation: arrow-move08 2s ease-in-out infinite;
}
.cp_arrows .cp_arrowsecond {
  -webkit-animation: arrow-move08 2s 1s ease-in-out infinite;
          animation: arrow-move08 2s 1s ease-in-out infinite;
}

@-webkit-keyframes arrow-move08 {
  0% {
    top: 40%;/*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
    opacity: 0;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes arrow-move08 {
  0% {
    top: 40%;/*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
    opacity: 0;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.balloon1 {
  position: relative;
  display: inline-block;
  margin: 0 0;
  padding: 5rem 10px;
  width: 100%;
  color: #555;
  font-size: 16px;
  background: #fff;
  filter: drop-shadow(1px 4px 4px #ccc);
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -60px;
  border: 60px solid transparent;
  border-top: 40px solid #fff;
  
}

.balloon1 div {
  margin: 5rem auto;
  width:100%;
  max-width: 1000px;
  text-align: center;
  padding: 0;
}





