body{
  background: #fff;
}
@media(max-width:768px){
  section[id]{
    margin-top: -3.5rem;
    padding-top: 3rem;
  }
}

.btn{
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn img{
  max-height: 1em;
  height: auto;
}
.btn--strong{
  min-height: 2.5em;
}
.mainhdr{
  margin: 0 auto;
  padding: 0;
}
.mainhdr__cvs{
  margin: 0.5rem auto;
  width: 100%;
  max-width: 60rem;
}
.mainhdr__lead__lead{
  display: block;
  max-width: 50rem;
  margin: 0 auto;
}
.lp__main{
  max-width: 1084px;
  margin: 0 auto;
}

@media(min-width:768px) and (max-width: 1024px){
  .mainhdr__sub__ttl{
    margin-left: 30px;
  }
}
@media(min-width:768px){
  .lp__nobreak{
    display: inline-block;
    white-space: nowrap;
  }
}

/* ヘッダー */
.lp__ttl{
  margin: 0.5rem;
  color: #f01586;
  font-weight: bold;
  text-align: center;
}
.lp__ttl__ttl{
  margin: 0.5rem auto;
  max-width: 50rem;
}
.lp__btnlist{
  margin: 2rem auto;
}
@media(max-width:768px){
  .lp__btnlist{
    display: grid;
    grid-auto-columns: calc(50% - 0.25em) calc(50% - 0.25em);
    grid-gap: 1rem 0.5rem;
  }
  .lp__btnlist__li > .btn{
    min-width: 0;
    margin: 0;
    padding: 0.5rem;
  }
  .lp__btnlist__li--l{
    grid-column: 1 / 3;
  }
}
@media(min-width:768px){
  .lp__btnlist{
    text-align: center;
  }
  .lp__btnlist__li{
    display:inline-block;
    margin: 0.5rem;
  }
  .lp__btnlist__li--l{
    width: 20rem;
  }
  .lp__btnlist__li--s{
    width: 24rem;
  }
  .lp__btnlist__li > .btn{
    width: 100%;
    margin: 0;
    padding: 1rem 1.5rem;
  }
}

.lp__btnsub{
  display: grid;
  grid-template-columns: calc(50% - 0.25em) calc(50% - 0.25em);
  grid-gap: 0.5em;
  margin: 2em 0;
}
.lp__btnsub__ph{
  grid-row: 1 / 3;
  align-self: center;
}
.lp__btnsub__btn{
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0.5rem;
}

.lp__subhdr{
  margin: 1rem -15px -1rem;
  padding: 2rem 1.5rem 1.5rem;
  background: url(../image/bg_ttl.jpg) no-repeat 50% 0 #ffd5f3;
  background-size: cover;
}
.lp__subhdr > img{
  display: block;
  width: 75%;
  max-width: 20em;
  margin: 0 auto;
}
.award{
  margin: -0.5rem 0 0;
}
@media(min-width:768px){
  .lp__subhdr{
    padding: 3rem 2rem;
  }
}

.lp__sec{
  margin: 1.5rem 0;
}

.lp__points{
  overflow: hidden;
  margin: -0.25rem -15px 0;
}
@media(max-width:768px){
  .lp__points{
    margin-top: -3rem;
    padding-top: 3rem;
  }
}
.lp__point{
  position: relative;
  z-index: 1;
}
.lp__point__inner{
  position: relative;
  z-index: 2;
  padding: 1rem 15px;
}
.lp__point::before{
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  right: 0;
  bottom: -0.5em;
  z-index: -2;
}
.lp__point::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 1.5rem;
  background: url(../image/line.svg) repeat-x 50% 50%;
  background-size: auto 100%;
}
.lp__point__ttl{
  font-size: 1.4em;
}
.lp__point__ttl > img{
  max-height: 1em;
}
.lp__point__ph{
  position: absolute;
  bottom: -0.5em;
  max-height: 90%;
  z-index: -1;
}
.lp__point__bg{
  position: absolute;
  top: 50%;
  z-index: -1;
  max-width: 50%;
  max-height: 80%;
  transform: translateY(-50%);
}

@media(min-width:768px){
  .lp__point{
    font-size: 1.6em;
  }
  .lp__point__inner{
    padding: 3rem 10%;
  }
}
.lp__point--retake::before{
  background: #ffcd5e;
}
.lp__point--200::before{
  background: #ff0;
}
.lp__point--print::before{
  background: #acdd4c;
}
.lp__point--noapp::before{
  background: #b3ffff;
}
.lp__point--size::before{
  background: #de9bff;
}
.lp__point__inner--retake,
.lp__point__inner--print{
  padding-left: 50%;
}
.lp__point__inner--200,
.lp__point__inner--noapp,
.lp__point__inner--size{
  padding-right: 50%;
}
.lp__point__ph--retake,
.lp__point__ph--print{
  right: 53%;
}
.lp__point__ph--print{
  left: 15px;
  bottom: 1rem;
  top: 1.5rem;
}
.lp__point__ph--200,
.lp__point__ph--noapp,
.lp__point__ph--size{
  left: 53%;
}
.lp__point__ph--size{
  left: 48%;
  max-width: 60%;
  max-height: 160%;
}
.lp__point__bg--retake,
.lp__point__bg--print{
  right: -5%;
}
.lp__point__bg--200,
.lp__point__bg--noapp,
.lp__point__bg--size{
  left: -5%;
}
.lp__point.init .lp__point__ph--retake,
.lp__point.init .lp__point__ph--print{
  transform: translateX(-100%);
}
.lp__point.shown .lp__point__ph--retake,
.lp__point.shown .lp__point__ph--print{
  animation: slideinLeft 1s ease 0s 1 normal forwards;
}
.lp__point.init .lp__point__ph--200,
.lp__point.init .lp__point__ph--size{
  transform: translateX(100%);
}
.lp__point.shown .lp__point__ph--200,
.lp__point.shown .lp__point__ph--size{
  animation: slideinRight 1s ease 0s 1 normal forwards;
}
.lp__point.init .lp__point__ttl{
  opacity: 0;
}
.lp__point.shown .lp__point__ttl{
  animation: fadein 1s ease 1s 1 normal forwards;
}
.lp__point.init .lp__point__txt{
  opacity: 0;
}
.lp__point.shown .lp__point__txt{
  animation: fadein 1s ease 1.5s 1 normal forwards;
}
@keyframes slideinLeft {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slideinRight {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media(min-width:768px){
  .lp__point__inner--retake{
    padding-left: 40%;
  }
  .lp__point__inner--200{
    padding-right: 40%;
  }
  .lp__point__ph--retake{
    right: 63%;
  }
  .lp__point__ph--200{
    left: 63%;
  }
  .lp__point__ph--print{
    top: 2rem;
  }
  .lp__point__bg--retake{
    right: 0;
  }
  .lp__point__bg--200{
    left: 0;
  }
}

.lp__point__cvs{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  max-width: 15em;
  margin: 0 auto;
  padding: 0;
  border-radius: 1rem;
  background: #fff;
  list-style: none;
}
.lp__point__cvs > li{
  margin: 0.25em 0.5rem;
}
.lp__point__cvs__img{
  height: 1em;
}
.lp__point__cvs__img--711{
  height: 2em;
}
.lp__point__cvs__img--lawson{
  height: 0.8em;
}
.lp__point__cvs__img--poplar{
  height: 1.1em;
}
.lp__point__cvs__img--ministop{
  height: 2em;
}
.lp__point__cvs__img--seicomart{
  height: 1.6em;
}
.lp__point__cvs__img--daily{
  height: 1.5em;
}


.lp__line{
  background: #08c655;
  color: #fff;
  padding: 1px 15px;
  text-align: center;
}
.lp__line__ttl{
  margin: 0.5rem 0 0.25rem;
}
.lp__line__ttl > img{
  width: 20em;
}
.lp__line__txt{
  margin: 0.75em 0;
}
.lp__line__link{
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #08c655;
  margin: 2px -12px;
  padding: 0.5rem 12px;
  text-decoration: none;
}
.lp__line__link__icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3em;
  height: 3em;
  margin-right: 0.5em;
  padding: 0.5em;
  background: #08c655;
  color: #fff;
  border-radius: 50%;
}
@media(min-width:768px){
  .lp__line{
    padding-top: 0.5em;
  }
  .lp__line__link{
    font-size: 1.4em;
  }
}

.lp__video__ttl{
  margin: 1rem 0 0;
  padding: 15px;
  background: #f01586;
  color: #fff;
  line-height: 1;
  text-align: center;
}
.lp__video__ttl > img{
  width: 20em;
}
.lp__video__cts > .movieframe{
  margin: 0 auto;
}
@media(min-width:768px){
  .lp__video__cts{
    border: solid 2px #f01586;
    padding: 2rem 28px;
  }
}

.lp__site{
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 40em;
  margin: 0 auto;
}
.lp__site__ill{
  width: 45%;
  margin-right: 1rem;
}
.lp__sec--btn{
  display: flex;
  align-items: center;
  justify-content: center;
}

.lp__ftr__catch{
  font-size: 1.2em;
  font-weight: bold;
}
@media(min-width:768px){
  .lp__ftr__catch{
    font-size: 1.8em;
  }
}
