.cfooter a {
  text-decoration: underline;
}
a img{
  transition:all 0.2s ease;
}
a:link,
a:visited{
  color:#007EA5;
}
a:hover{
  text-decoration:none !important;
}
a:hover img{
  opacity: 0.8;
}
img{
  max-width:100%;
  height:auto;
}
.fwb{
  font-weight: bold;
}
.txt_red{
  font-weight: bold;color: #CC0033;
}
body{
  font-size: 16px;color: #000;
}
.cpn-main{
  padding-bottom: 60px;
}
.contents{
  padding-bottom: 60px;
}
.contents h2 {
  font-size: 28px;
  text-align: center;
  padding-top: 0px;
}
.contents h2 span.redborder {
  width: 62px;
  display: block;
  border-bottom: 8px solid #CC0033;
  padding: 20px 0px 0px;
  margin: 0px auto 40px;
}
.contents.mainvisual_area{
  padding-bottom: 30px;
}
.contents.mainvisual_area .mainvisual{
  width: calc(100% + 60px);
  text-align: center;
  margin-left: -30px;
}
.contents.mainvisual_area .mainvisual h1{
  padding: 0;
}
.contents.mainvisual_area .period_area{
  background: linear-gradient(to bottom, #6DF8D7, #fff);
  padding: 30px 0 40px;
}
.contents.mainvisual_area .period_area .period_box{
  background-color: #fff;
  padding: 20px;
  max-width: 780px;
  margin: 0 auto 15px;
}
.contents.mainvisual_area .period_area .period_box .period_annotation{
  margin: 20px auto;
  font-size: 12px;
}
.contents.mainvisual_area .period_area .period_box .present{
  color: #3B1D78;
  background-color: #E8FFA1;
  padding: 5px 12px;
  max-width: 578px;
  margin: 0 auto;
}
.contents.mainvisual_area .period_area .period_box .period_annotation_01{
  text-align: left;
  font-size: 12px;
  padding-top: 20px;
  border-top: 1px #949494 dashed;
  margin-top: 20px;
}
.contents.mainvisual_area .period_area .period_annotation_02{
  text-align: left;
  font-size: 12px;
  max-width: 740px;
  margin: 0 auto;
}
.contents.mainvisual_area .entry_btn{
  margin: 40px auto 30px;
}
.contents.mainvisual_area .privilege{
  padding: 30px 0;
}
.contents.mainvisual_area .privilege a{
  display: inline-block;
  position: relative;
  margin-left: 25px;
}
.contents.mainvisual_area .privilege a::before{
  position: absolute;
  top: 50%;
  left: -20px;
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  vertical-align: middle;
  border-top: 2px solid #007EA5;
  border-right: 2px solid #007EA5;
  -webkit-transform: translateY(-9px) rotate(135deg);
  transform: translateY(-9px) rotate(135deg);
  transition: all 0.2s ease;
}
.contents.mainvisual_area .privilege a:hover::before {
  -webkit-transform: translateY(-6px) rotate(135deg);
  transform: translateY(-6px) rotate(135deg);
}
.contents.mainvisual_area .mv_under .note li{
  padding-left: 2em;
  text-indent: -1.8em;
  font-size: 14px;
}
.contents.mainvisual_area .mv_under .note li:last-child{
  text-indent: -1.5em;
}
.contents.mainvisual_area .mv_under .note li + li{
  margin-top: 10px;
}
.contents.skip_area{
  width: calc(100% + 60px);
  text-align: center;
  margin-left: -30px;
  padding-bottom: 0;
}
.contents.skip_area .skip_contents{
  background-color: #73F9D6;
  padding-bottom: 60px;
}
.contents.skip_area .skip_contents p{
  padding: 0 0 20px;
}
.contents.skip_area .skip_contents .img_area{
  padding: 20px 0;
  background-color: #fff;
  max-width: 780px;
  margin: 0 auto 20px;
}
.contents.skip_area .skip_contents .img_area img{
  max-width: 442px;
  width: 100%;
  height: auto;
}
.contents.skip_area .skip_contents .annotation{
  font-size: 12px;
  margin-bottom: 40px;
}
.contents.skip_area .skip_contents dl + dl{
  margin-top: 40px;
}
.contents.skip_area .skip_contents dl dt{
  position: relative;
  background-color: #FBAEED;
  padding: 8.5px 0 8.5px 20px;
  text-align: left;
  max-width: 780px;
  margin: 0 auto;
  font-size: 20px;
  color: #3B1D78;
  font-weight: bold;
  cursor: pointer;
}
.contents.skip_area .skip_contents dl dt:hover::after {
  opacity: 0.6;
}
.contents.skip_area .skip_contents dl dt::after{
  position: absolute;
  top: 50%;
  right: 32px;
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  vertical-align: middle;
  border-top: 2px solid #3B1D78;
  border-right: 2px solid #3B1D78;
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
  transition: all 0.2s ease;
}
.contents.skip_area .skip_contents dl.open dt::after{
  position: absolute;
  top: 50%;
  right: 32px;
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  vertical-align: middle;
  border-top: 2px solid #3B1D78;
  border-right: 2px solid #3B1D78;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  transition: all 0.2s ease;
}
.contents.skip_area .skip_contents .accordion-content{
  background-color: #FFF;
  padding: 30px 0 40px;
  display: none;
  margin: 0 auto;
  max-width: 780px;
}
.contents.skip_area .skip_contents .accordion-content .entry_area{
  max-width: 740px;
  margin: 0 auto;
}
.contents.skip_area .skip_contents .accordion-content .entry_area .step-title{
  background-color: #D1F6ED;
  padding: 2px 0;
  margin-bottom: 20px;
  font-weight: bold;
}
.contents.skip_area .skip_contents .accordion-content .step1_01, .contents.skip_area .skip_contents .accordion-content .step1_02{
  border: 1px solid #CCCCCC;
  padding: 20px;
  max-width: 660px;
  margin: 0 auto;
}
.contents.skip_area .skip_contents .accordion-content .step1_02{
  margin-top: 30px;
}
.contents.skip_area .skip_contents .accordion-content .redttl{
  font-weight: bold;
  color: #CC0033;
  text-align: left;
}
.contents.skip_area .skip_contents .accordion-content .btn{
  display: flex;
  justify-content: center;
  align-items: center;
}
.contents.skip_area .skip_contents .accordion-content .txt_btn{
  padding: 0;
}
.contents.skip_area .skip_contents .accordion-content .side_by_side{
  display: flex;
  justify-content: center;
  align-items: center;
}
.contents.skip_area .skip_contents .accordion-content .left_area, .contents.skip_area .skip_contents .accordion-content .right_area{
  max-width: 286px;
}
.contents.skip_area .skip_contents .accordion-content .side_by_side span.num{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  background-color: #FFE8E8;
  border-radius: 50%;
  font-size: 15px;
  line-height: 1;
  font-weight: bold;
  margin-right: 10px;
}
.contents.skip_area .skip_contents .accordion-content .side_by_side p {
  display: flex;
  align-items: flex-start;
}
.contents.skip_area .skip_contents .accordion-content .side_by_side .num_txt {
  flex: 1;
  text-align: left;
}
.contents.skip_area .skip_contents .accordion-content .arrow {
  display: flex;
  gap: 3px;
  margin: 0 7.5px;
}
.contents.skip_area .skip_contents .accordion-content .arrow i {
  width: 9px;
  height: 21px;
  background: #FAB2B2;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  display: block;
}
.contents.skip_area .skip_contents .accordion-content .ttl{
  font-size: 18px;
  font-weight: bold;
}
.contents.skip_area .skip_contents .accordion-content .entry_content img{
  max-width: 285px;
  height: auto;
  margin: 0 auto;
}
.contents.skip_area .skip_contents .accordion-content .entry_content + .entry_content{
  position: relative;
  margin-top: 75px;
}
.contents.skip_area .skip_contents .accordion-content .entry_content + .entry_content::before{
  content: "";
  position: absolute;
  top: -55px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 27.5px solid transparent;
  border-right: 27.5px solid transparent;
  border-top: 25px solid #9CEAD2;
}
.contents.skip_area .skip_contents .accordion-content .entry_content.entry_area_05 .ttl{
  padding: 0;
}
.contents.skip_area .skip_contents .accordion-content .entry_content + .entry_content.entry_area_05{
  margin-top: 65px;
}
.contents.skip_area .skip_contents .accordion-content .entry_content + .entry_content.entry_area_05::before{
  top: -45px;
}
.contents.skip_area .skip_contents .accordion-content .benefits_area .benefits_content_01{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  margin-bottom: 20px;
}
.contents.skip_area .skip_contents .accordion-content .benefits_area .benefits_content_01 img{
  width: 298px;
  height: auto;
}
.contents.skip_area .skip_contents .accordion-content .benefits_area .benefits_content_01 p{
  padding: 0;
}
.contents.skip_area .skip_contents .accordion-content .benefits_area .benefits_content_02{
  padding-top: 22px;
  border-top: 1px #949494 dashed;
  max-width: 700px;
  margin: 0 auto;
}
.contents.skip_area .skip_contents .accordion-content .c-btn1Col{
  margin: 0 auto;
  width: 384px;
}
.contents.skip_area .skip_contents .accordion-content .c-btn{
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  text-decoration: none;
  max-width: 384px;
  width: 100%;
  height: 56px;
  background-color: #5f72b2;
}
.contents.skip_area .skip_contents .accordion-content .c-btn:hover{
  opacity: 0.6;
}
.contents.skip_area .skip_contents .accordion-content .c-btn__text{
  display: inline-block;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 18px;
  padding-right: 26px;
  color: #fff;
  font-size: 15px;
  position: relative;
  text-align: center;
}
.contents.skip_area .skip_contents .accordion-content .c-btn__text::after{
  content: "";
  position: absolute;
  right: -5px;
  top: 50%;
  display: inline-block;
  vertical-align: middle;
  background-size: cover;
  background: url(//d1mts1n1u0bek1.cloudfront.net/std/campaigns/202605_fn/cpn-skip-yamawake/images/icon-arrow01-white.svg);
  width: 16px;
  height: 16px;
  margin-top: -8px;
}
.contents.skip_area .skip_contents .accordion-content .cost_area .cost-h3{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 0 30px;
}
.contents.skip_area .skip_contents .accordion-content .cost_area .forexample{
  margin-right: 10px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  background-color: #0047A8;
  padding: 16px 20px;
  line-height: 22px;
  border-radius: 50%;
  display: inline-block;
}
.contents.skip_area .skip_contents .accordion-content .cost_area ul.note_01{
  text-align: left;
  font-size: 12px;
  max-width: 614px;
  margin: 30px auto;
}
.contents.skip_area .skip_contents .accordion-content .cost_area ul.note_01 li + li {
  margin-top: 10px;
}
.contents.skip_area .skip_contents .accordion-content .cost_area ul.note_02{
  margin-top: 5px;
}
.contents.skip_area .skip_contents .accordion-content .cost_area ul.note_02 li.indent{
  padding-left: 1em;
}
.contents.skip_area .skip_contents .accordion-content .cost_area ul.note_02 li +  li{
  margin-top: 0;
}
.contents dd a {
  text-decoration: underline;
}
.contents.howto_area{
  background: linear-gradient(to bottom, #FFFCE0 0%, #A6F4CA 81%, #7EF8D3 95%);
  text-align: center;
}
.contents.howto_area h2{
  padding: 40px 0 30px;
}
.contents.howto_area .step-list {
  position: relative;
  max-width: 780px;
  background-color: #fff;
  margin: 0 auto 55px;
  padding: 20px 0;
}
.contents.howto_area .step-item {
  display: flex;
  position: relative;
  padding-left: 80px;
  max-width: 543px;
  margin: 0 auto;;
  min-height: 59px;
}
.contents.howto_area .step-item + .step-item{
  margin-top: 30px;
}
.contents.howto_area .step-list::before {
  display: none;
}
.contents.howto_area .step-item + .step-item::before {
  content: "";
  position: absolute;
  left: 28px;
  top: -30px;
  height: 30px;
  width: 3px;
  background: repeating-linear-gradient(to bottom, #808080 0px, #808080 3px, transparent 3px, transparent 8px);
}
.contents.howto_area .step-circle {
  position: absolute;
  left: 0;
  width: 59px;
  height: 59px;
  background-color: #6DF8D7;
  border-radius: 50%;
  text-align: center;
  line-height: 60px;
  font-weight: bold;
  color: #55329E;
  font-size: 14px;
}
.contents.howto_area .step-content{
  line-height: 21px;
  text-align: left;
}
.contents.howto_area .step-content .title {
  font-weight: bold;
  font-size: 18px;
  margin: 3px 0 5px;
  text-align: left;
  padding: 0;
}
.contents.howto_area .step-content .note {
  font-size: 14px;
  padding: 0;
}
.contents.howto_area .step-content .note + .note{
  margin-top: 5px;
}
.contents.howto_area .img-item {
  position: relative;
}
.contents.howto_area .img-item::before {
  content: "";
  position: absolute;
  top: -25.5px;   /* 上に出す */
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 27.75px solid transparent;
  border-right: 27.75px solid transparent;
  border-top: 25.5px solid #FA8CE8;
}
.contents.howto_area ul.annotation{
  text-align: left;
  max-width: 780px;
  margin: 30px auto 0;
  font-size: 14px;
}
.contents.howto_area ul.annotation li + li{
  margin-top: 5px;
}
.contents.faq_area{
  margin-top: 60px;
}
.contents.faq_area .bdr_r {
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 6px 6px 3px rgba(0, 0, 0, 0.1);
}
.contents.faq_area .accord + .accord {
  border-top: #fff solid 1px;
}
.contents.faq_area .accord dt {
  background: #333333;
  color: #fff;
  font-size: 14px;
  padding: 16px;
  position: relative;
  cursor: pointer;
}
.contents.faq_area .accord.open dt::after {
  position: absolute;
  top: 50%;
  right: 32px;
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  vertical-align: middle;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  transition: all 0.2s ease;
}
.contents.faq_area .accord dt::after {
  position: absolute;
  top: 50%;
  right: 32px;
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  vertical-align: middle;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
  transition: all 0.2s ease;
}
.contents.faq_area .accord dt:hover::after {
  opacity: 0.6;
}
.contents.faq_area .accord dd {
  display: none;
  margin: 0;
  padding: 16px;
  line-height: 24px;
  font-size: 14px;
}
.contents.overview h3{
  background-color: #FFE8E8;
  padding: 6px 10px;
  margin-top: 20px;
}
.contents.overview .annotation{
  font-size: 14px;
  padding-left: 1em;
  text-indent: -1em;
}
.contents.overview .indent{
  padding-left: 1em;
  text-indent: -1em;
}
.contents.overview ul.u-mt-20{
  margin: 20px 0 0;
}
.contents.overview ul.u-mt-20 li{
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 15px;
}
.contents .payment-txt li.indent{
  padding-left: 1em;
}
.contents.payment_area_02 h3{
  margin-bottom: 20px;
  border-bottom: 1px solid #707070;
  padding: 0 0 8px;
}
.contents .payment-txt .fwb + .indent {
  margin-top: 5px;
}
.contents .payment-txt .indent + .fwb {
  margin-top: 10px;
}
.contents .payment-txt .fwb + .indent + .indent {
  margin-top: 5px;
}
.contents .payment-txt a.key::after{
  display: inline-block;
  content: "";
  width: 15px;
  height: 15px;
  margin-left: 5px;
  background: url(//d1mts1n1u0bek1.cloudfront.net/std/campaigns/202605_fn/cpn-skip-yamawake/images/icon_key.png) no-repeat;
  background-size: cover;
  -webkit-transform: translateY(2px);
  transform: translateY(2px);
}
.fixedBtn{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  max-width: 1000px;
  width: 100%;
  padding: 0;
  margin: 0 auto;
  z-index: 2;
  padding: 20px 0;
  text-align: center;
  background: linear-gradient(to bottom, #6EFAD7, #A9F4CB);
}
@media screen and (min-width:769px){
  .pcOnly{display:block;}
  .spOnly{display:none;}
}
@media screen and (max-width:768px){
  .pcOnly{display:none;}
  .spOnly{display:block;}
  body{
    font-size: 14px;
  }
  .cpn-main {
    padding-bottom: 25%;
  }
  .contents{
    padding: 0 15px 40px;
  }
  .contents h2 {
    font-size: 24px;
}
  .contents.mainvisual_area{
    padding-bottom: 20px;
  }
  .contents.mainvisual_area .mainvisual {
    width: calc(100% + 30px);
    margin-left: -15px;
  }
  .contents.mainvisual_area .period_area{
    padding: 20px 15px;
  }
  .contents.mainvisual_area .period_area .period_box{
    padding: 20px 12px;
  }
  .contents.mainvisual_area .period_area .period_box .present{
    font-size: 13px;
    padding: 5px 10px;
  }
  .contents.mainvisual_area .period_area .period_box .period_annotation_01 li, .contents.mainvisual_area .period_area .period_annotation_02 li{
    padding-left: 1.25em;
    text-indent: -1.25em;
  }
  .contents.mainvisual_area .period_area .period_annotation_02{
    padding: 0 10px;
  }
  .contents.mainvisual_area .entry_btn{
    margin: 20px auto;
  }
  .contents.mainvisual_area .privilege{
    padding: 20px 0;
  }
  .contents.mainvisual_area .privilege a::before{
    top: 30%;
  }
  .contents.mainvisual_area .mv_under .note li{
    font-size: 12px;
  }
  .contents.skip_area{
    margin: 0;
    padding: 0;
    width: auto;
  }
  .contents.skip_area .skip_contents{
    padding: 0 15px 40px;
  }
  .contents.skip_area .skip_contents dl dt{
    padding: 8px 0 8px 12px;
    font-size: 18px;
  }
  .contents.skip_area .skip_contents dl dt::after{
    right: 12px;
  }
  .contents.skip_area .skip_contents dl.open dt::after{
    right: 12px;
  }
  .contents.skip_area .skip_contents{
    padding: 0 15px 40px;
  }
  .contents.skip_area .skip_contents .img_area{
    margin: 0 auto 10px;
    padding: 0;
  }
  .contents.skip_area .skip_contents p{
    font-size: 16px;
    line-height: 28px;
  }
  .contents.skip_area .skip_contents .annotation li{
    text-align: left;
    padding-left: 1.25em;
    text-indent: -1.25em;
  }
  .contents.skip_area .skip_contents .accordion-content{
    padding: 30px 12px 40px;
  }
  .contents.skip_area .skip_contents .accordion-content .step1_01, .contents.skip_area .skip_contents .accordion-content .step1_02 {
    padding: 20px 12px;
  }
  .contents.skip_area .skip_contents .accordion-content .step1_02 {
    margin-top: 20px;
  }
  .contents.skip_area .skip_contents .accordion-content .ttl{
    font-size: 16px;
  }
  .contents.skip_area .skip_contents .accordion-content .entry_content img{
    max-width: 225px;
  }
  .contents.skip_area .skip_contents .accordion-content .redttl{
    text-align: center;
    padding-bottom: 12px;
  }
  .contents.skip_area .skip_contents .accordion-content .side_by_side{
    display: block;
  }
  .contents.skip_area .skip_contents .accordion-content .side_by_side p{
    display: block;
    padding: 0 0 12px;
  }
  .contents.skip_area .skip_contents .accordion-content .left_area, .contents.skip_area .skip_contents .accordion-content .right_area{
    margin: 0 auto;
  }
  .contents.skip_area .skip_contents .accordion-content .arrow{
    flex-direction: column;
    gap: 5px;
    margin: 16px auto;
    align-items: center;
  }
  .contents.skip_area .skip_contents .accordion-content .arrow i{
    margin-top: -13px;
    transform: rotate(90deg);
  }
  .contents.skip_area .skip_contents .accordion-content .benefits_area .benefits_content_01{
    display: grid;
    gap: 20px;
  }
  .contents.skip_area .skip_contents .accordion-content .benefits_area .benefits_content_01 img{
    width: 100%;
  }
  .contents.skip_area .skip_contents .accordion-content .c-btn1Col{
    width: 100%;
  }
  .contents.skip_area .skip_contents .accordion-content .c-btn{
    max-width: 390px;
    height: 60px;
    margin: 0 auto;
  }
  .contents.skip_area .skip_contents .accordion-content .cost_area .cost-h3{
    padding: 0 0 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    max-width: 568px;
    margin: 0 auto;
  }
 .contents.skip_area .skip_contents .accordion-content .cost_area .cost-h3 .forexample_txt{
    text-align: left;
    word-break: break-word;
    flex: 1;
    min-width: 0;
    overflow-wrap: break-word;
  }
  .contents.skip_area .skip_contents .accordion-content .cost_area .forexample{
    font-size: 16px;
    padding: 11px 14px;
    line-height: 19.2px;
  }
  .contents.skip_area .skip_contents .accordion-content .cost_area ul.note_01{
    margin: 20px auto;
  }
  .contents.skip_area .skip_contents .accordion-content .cost_area ul.note_01 li{
    padding-left: 1.25em;
    text-indent: -1.25em;
  }
  .contents.skip_area .skip_contents .accordion-content .cost_area ul.note_01 li + li{
    text-indent: 0;
    padding-left: 0;
  }
  .contents.skip_area .skip_contents .accordion-content .cost_area ul.note_02 li.indent{
    padding-left: 1.25em;
  }
  .contents.howto_area{
    padding: 0 14px 40px;
  }
  .contents.howto_area .step-list{
    padding: 20px 12px;
    margin: 0 auto 65px;
  }
  .contents.howto_area .step-content .title{
    font-size: 16px;
  }
  .contents.howto_area .step-content .note{
    font-size: 12px;
    padding-left: 1.25em;
    text-indent: -1.25em;
  }
  .contents.howto_area .img-item::before{
    top: -40px;
  }
  .contents.howto_area ul.annotation{
    font-size: 12px;
  }
  .contents.faq_area, .contents.overview, .contents.payment_area_01, .contents.payment_area_02{
    padding: 0 15px 60px;
  }
  .contents.faq_area .accord dt{
    padding: 16px 59px 16px 16px;
  }
  .contents.overview p{
    font-size: 16px;
    padding: 20px 0 0;
  }
  .contents.overview ul.u-mt-20 {
    font-size: 16px;
  }
  .contents.payment_area_01 .payment-txt, .contents.payment_area_02 .payment-txt{
    font-size: 16px;
  }
}
@media screen and (max-width:479px){
  .contents.howto_area .step-item + .step-item::before{
    top: -38px;
    height: 38px;
  }
}
