@charset "UTF-8";

@media screen and (min-width:751px){
  #lp_contents{
    font-size : 10px;
  }
}
@media screen and (max-width:750px){
  #lp_contents{
    font-size : 1.33vw;
  }
}

#lp_contents {
  background : #fff;
	color : #000;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings : 'palt';
  line-height : 1.5;
	text-align : justify;
}

#lp_contents a:hover,
#lp_contents a img:hover{
  cursor: pointer;
  opacity:0.8;
}

#lp_contents img{
  display : block;
  height:auto;
  width   : 100%;
}

#lp_contents img{
  object-fit: cover;
}

#lp_contents p{
  color:#000;
}

#lp_contents .header,
#lp_contents .main {
  margin: 0 auto;
  max-width: 750px;
}

#lp_contents .offer {
  position: relative;
}

#lp_contents .offer_btn {
  position: absolute;
  bottom: 1.6%;
  left: 0;
  right: 0;
  margin: auto;
  width: 58.5em;
}

#lp_contents .offer.--02 .offer_btn {
  bottom: 10%;
}

#lp_contents .offer_btn_final {
  position: absolute;
  bottom: 15%;
  left: 0;
  right: 0;
  margin: auto;
  width: 67.2em;
}

#lp_contents .offer_parts {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 45.8em;
}

@keyframes shiny {
  0% { left: -20%; }
  10% { left: 120%; }
  100% { left: 120%; }
}

.shiny-btn {
  display: block;
  line-height: 5em;
  color: #ffffff;
  border-radius: 15em;
  overflow: hidden;
}

.shiny-btn::after {
  content: '';
  position: absolute;
  top: -10%;
  left: -20%;
  width: 5em;
  height: 100%;
  transform: scale(2) rotate(20deg);
  background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);

  /* アニメーション */
  animation-name: shiny;
  animation-duration: 6s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

#lp_contents .last_seibun {
  display: block;
  margin: 4em auto -.5em;
  width: 21.5em;
}
