@charset "UTF-8";


#share {
    /* bottom: 10% !important; */
    left: 3% !important;
}
#share img {
    margin: 0 auto;
}
.share-txt {
    background: #fffefd;
    padding: calc(40* (100vw / 750)) 0;
    margin: 0 !important;
}
.lp-page {
  margin: 0 auto;
  position: relative;
  overflow-y: hidden;
  color: #333333;
  font-family: "collier","Noto Sans JP", sans-serif;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0.05em;
  z-index: 0;
  background: #FFFEFD;
  width: 100%;
  font-weight: 400;
}
.lp-page img,
.lp-page svg {
  display: block;
  opacity: 1;
  width: 100%;
  height: auto;
}
.lp-page picture {
  display: block;
}
.lp-page a {
  display: block;
  color: inherit;
}
.lp-page *:focus {
  outline: none;
}
.lp-page a,
.lp-page label {
  /* -webkit-tap-highlight-color: rgba(240, 164, 149, 0.6); */
}
.lp-page input {
  display: none;
}
.lp-page li,
.lp-page ol {
  list-style-type: none;
}


  main {
    max-width: 100vw;
  }
  #Wrap {
    width: auto;
  }
  .wrapTop,
.wrapBottom {
    width: 100%;
  }

  .lp-page a {
    cursor: pointer;
  }


/*----------アニメーション----------*/

.zoomin.is-animated {
  animation: zoomIn 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
 
@keyframes zoomIn {
  0% {
    transform: scale(0.8);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.slidein.is-animated {
  animation: slideIn 1.5s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
 
@keyframes slideIn {
  0% {
    transform: translateY(100px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
  }
  40%,100% {
    opacity: 1;
  }
}

.popup.is-animated {
  animation: popup 1.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
 
@keyframes popup {
  0% {
    transform: translateY(40px) scale(0.8);
    opacity: 0;
  }
  100% {
    transform: translateY(0) scale(1.0);
  }
  80%, 100% {
    opacity: 1;
  }
}



.fadein {
    opacity: 0;
    transform: translateY(0);
    transition: opacity 2s 0s, transform 2s 0s;
  }
  
  .fadein.fade-active {
    opacity: 1;
    transform: translateY(0) translateZ(0);
    transition: opacity 2s 0s, transform 2s 0s;
  }
  
  
  .fadeup {
    opacity: 0;
    transform: translateY(2rem);
    transition: opacity 1s 0s, transform 1s 0s;
  }
  
  .fadeup.fade-active {
    opacity: 1;
    transform: translateY(0) translateZ(0);
    transition: opacity 1s 0s, transform 1s 0s;
  }
  
  .fadein-load {
    opacity: 0;
    transition: opacity 1s;
  }
  
  .fadein-load.fade-active {
    opacity: 1;
    transition: opacity 1s;
  }
  
  .fadeup-load {
    opacity: 0;
    transform: translateY(4rem) translateZ(0);
    transition: opacity 1s 0s, transform 1s 0s;
  }
  
  .fadeup-load.fade-active {
    opacity: 1;
    transform: translateY(0) translateZ(0);
    transition: opacity 1s 0s, transform 1s 0s;
  }

.lp-page * {
    box-sizing: border-box;
}

.lp-page .sp_only {
  display: none;
}

/* アコーディオン */
.lp-page .faq-list dt{
    display: block;
    padding: 2.4rem 2rem;
    border-top: 1px solid #D8D4CF;
    cursor: pointer;
    position: relative;
    border-bottom: none;
    font-weight: 500;
    font-size: 1.4rem;
    overflow: hidden;
}
.lp-page .faq-list dd{
    background: #FAF9F8;
    height: auto;
    display: none;
    border-bottom: none;
    font-size: 1.4rem;
    padding: 1.6rem 2rem;
    margin: 0 2rem 2.8rem;
    border-radius: .5rem;
    overflow: hidden;
}
.lp-page .faq-list {
    border-bottom: 1px solid #ddd;
    width: 80rem;
    margin: 0 auto;
}
.lp-page .faq-list dt:after {
    content: '+';
    font-size: 3rem;
    font-weight: 300;
    line-height: 1;
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    right: 2rem;
    color: #DD8558;
}
.lp-page .faq-list dt.clicked:after {
    content: '';
    background: #DD8558;
    height: .18rem;
    width: 1.2rem;
    right: 2.2rem;
}


/* コンテンツエリア調整 */
.lp-page .main-img {
    width: 110rem;
    margin: 5rem auto 8rem;
}

.lp-page section {
    padding-bottom: 12rem;
}

.lp-page section h3 {
    font-size: 1.4rem;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 3.5rem;
}

.lp-page section h3 span {
    font-size: 3.5rem;
    font-weight: 500;
    letter-spacing: 0.1em;
}

.lp-page .howto-area {
    background: #FAECD7;
    padding-top: 10rem;
    margin-bottom: 10rem;
}

.lp-page .intro-area .intro-txt {
    text-align: center;
    font-size: 1.6rem;
    line-height: 2;
}

.lp-page .intro-area .intro-txt span {
    display: block;
    margin-top: 1.5rem;
}

.lp-page .service-list {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.lp-page .service-list li {
    width: 23rem;
    height: 23rem;
    background: #FCF8F2;
    border-radius: .5rem;
}

.lp-page .service-list img {
    width: 11rem;
    margin: 1.5rem auto 1rem;
}

.lp-page .service-list p {
    text-align: center;
    font-size: 1.4rem;
}

.lp-page .service-list span {
    font-size: 1.3rem;
    display: block;
    color: #D67F52;
    font-weight: 600;
    padding-bottom: .5rem;
}

.lp-page .service-list a {
    text-align: center;
    color: #D67F52;
    margin-top: .5rem;
    font-weight: 500;
    text-decoration: underline;
}

.lp-page .intro-area h3 {
    margin-bottom: 2.5rem;
}

.lp-page .intro-area {
    padding-bottom: 8rem;
}

.lp-page .step-area {
    width: 110rem;
    margin: 0 auto;
}

.lp-page .step-area h4 {
    font-size: 2rem;
    text-align: center;
    background: #EDD8BF;
    border-radius: .2rem .2rem 0 0;
    padding: 1.5rem 0 1rem;
}

.lp-page .step-area .inner {
    background: #FFFEFD;
    border-radius: 0 0 .2rem .2rem;
    padding: 4rem 6rem 6rem;
}

.lp-page .step-area .step-list {
    display: flex;
    justify-content: center;
    gap: 4rem;
}

.lp-page .step-area .step-ttl {
    text-align: center;
    font-size: 1.8rem;
    color: #D67F52;
    font-weight: 500;
    padding-bottom: 1.5rem;
    letter-spacing: .1em;
}

.lp-page .step-area .step-ttl span {
    font-size: 2.8rem;
}

.lp-page .step-area .step-list li::after {
    content: '';
    position: absolute;
    background: url(../img/arrow.svg) no-repeat;
    width: 1.5rem;
    height: 3rem;
    background-size: 100%;
    top: 42%;
    transform: translate(0, -50%);
    right: -3rem;
}

.lp-page .step-area .step-img {
    width: 21rem;
    margin: 0 auto;
}

.lp-page .step-area .step-list li {
    position: relative;
    width: 30rem;
}

.lp-page .step-area .step-list li:last-child::after {
    content: none;
}

.lp-page .step-area .step-txt {
    text-align: center;
    padding-top: 2rem;
    font-size: 1.4rem;
    line-height: 1.75;
}

.lp-page #step02 {
    margin-top: 10rem;
}

.lp-page .step-area h4 span {
    font-size: 2.6rem;
}
.lp-page .note {
    font-size: 1.1rem;
    display: block;
    padding-top: .5rem;
}

.lp-page .card-area .card-list {
    display: flex;
    justify-content: center;
    gap: 9rem;
    flex-wrap: wrap;
	width: 110rem;
	margin: 0 auto;
}

.lp-page .card-area .card-list .inner {
    width: 50.5rem;
    position: relative;
}

.lp-page .card-area .card-list .inner ul {
    display: flex;
    gap: 2rem;
    justify-content: center;
}

.lp-page .card-area .card-list h4 {
    text-align: center;
    font-size: 2.5rem;
    color: #D67F52;
    font-weight: 500;
    padding-bottom: 1.5rem;
}

.lp-page .card-area .card-list .inner:nth-child(even):before {
    content: '';
    background: #EEEEEE;
    height: 100%;
    width: 1px;
    position: absolute;
    left: -4.5rem;
}

.lp-page .card-area .card-list .inner:nth-child(-n+2)::after {
    background: #EEEEEE;
    content: '';
    height: 1px;
    width: 100%;
    position: absolute;
    bottom: -4.5rem;
}

.lp-page .card-area .card-list .inner img {
    box-shadow: 0 0 8px #ddd;
}

.lp-page .card-area .card-list .inner p {
    text-align: center;
    font-size: 1.2rem;
    margin-top: 1rem;
    font-family: 'pragmatica', sans-serif;
}

.lp-page .gift-btn {
    text-align: center;
    background: #DD8558;
    color: #fff;
    width: 35rem;
    height: 6rem;
    line-height: 6rem;
    font-weight: 500;
    margin: 6rem auto 0;
    border-radius: 10rem;
    position: relative;
    font-size: 1.6rem;
    padding-left: 3rem;
}

.lp-page .gift-btn::before {
    content: '';
    position: absolute;
    background: url(../img/ico-gift.svg) no-repeat;
    width: 1.8rem;
    height: 2.2rem;
    background-size: 100%;
    left: 9rem;
    top: 50%;
    transform: translate(0, -50%);
}

.lp-page .card-area {
    padding-bottom: 10rem;
}

.lp-page .faq-list .ico {
    color: #DD8558;
    font-weight: 600;
    font-size: 1.7rem;
}

.lp-page .faq-list .txt {
    float: left;
    line-height: 1.8;
    width: 92%;
}

.lp-page .faq-list .ico {
    float: left;
    padding-right: .8rem;
    width: 3%;
}
.lp-page .gift-btn::after {
    content: '';
    width: 0.7rem;
    height: 0.7rem;
    margin: 0 10px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
    position: absolute;
    right: 1.6rem;
    top: 2.5rem;
}
.lp-page .faq-list dd .txt {
    width: 97%;
}
@media screen and (max-width: 1200px){
html {
  font-size: calc(10 * (100vw / 1200));
}
}

@media only screen and (min-width: 767px) {
.lp-page #step02 .step-list li:nth-child(3) .step-img {
    padding: 15rem 4.5rem;
    content: '';
    background: #FCF8F2;
    border-radius: 3rem;
}
}

@media only screen and (max-width: 768px) {
html {
	font-size: calc(10 * (100vw / 390));
}	
	
.lp-page .sp_only {
  display: block;
}
.lp-page .pc_only {
  display: none;
}

.lp-page .main-img {
    width: 100%;
    margin: 0 auto 5rem;
}

.lp-page section {
    padding-bottom: 7rem;
}

.lp-page section h3 span {
    font-size: 2.6rem;
}

.lp-page section h3 {
    font-size: 1.2rem;
    margin-bottom: 2.5rem;
}

.lp-page .intro-area h3 {
    margin-bottom: 2rem;
}

.lp-page .intro-area .intro-txt {
    font-size: 1.4rem;
}

.lp-page .intro-area .intro-txt span {
    margin-top: 1rem;
}

.lp-page .intro-area {
    padding-bottom: 5rem;
}

.lp-page .service-list li {
    width: 17rem;
    height: 17rem;
}

.lp-page .service-list img {
    width: 8rem;
    margin-bottom: 0;
}

.lp-page .service-list p {
    font-size: 1.2rem;
}

.lp-page .service-list span {
    font-size: 1.1rem;
}

.lp-page .service-list a {
    font-size: 1.2rem;
}

.lp-page .service-list {
    gap: 1.2rem;
}

.lp-page .howto-area {
    padding-top: 6rem;
    margin-bottom: 7rem;
}

.lp-page .step-area {
    width: 35rem;
}

.lp-page .step-area h4 {
    font-size: 1.6rem;
}

.lp-page .step-area h4 span {
    font-size: 2.2rem;
}

.lp-page .step-area .inner {
    padding: 2.5rem 0 5rem;
}

.lp-page .step-area .step-list {
    display: block;
}

.lp-page .step-area .step-ttl {
    font-size: 1.5rem;
}

.lp-page .step-area .step-ttl span {
    font-size: 2.5rem;
}

.lp-page .step-area .step-list li::after {
    right: 17rem;
    top: auto;
    bottom: -4rem;
    transform: rotate(90deg);
}

.lp-page .step-area .step-list li {
    width: 100%;
    margin-bottom: 5rem;
}

.lp-page .step-area .step-list li:last-child {
    margin-bottom: 0;
}

.lp-page #step02 {
    margin-top: 5rem;
}

.lp-page #step02 .step-list li:nth-child(3) .step-img {
    width: 14rem;
    background: none;
    padding: 0;
	height: 14rem;
}

.lp-page .card-area .card-list {
    gap: 3rem;
	width: 100%;
}

.lp-page .card-area .card-list .inner {
    width: 35rem;
}

.lp-page .card-area .card-list .inner:nth-child(-n+2)::after {
    content: none;
}

.lp-page .card-area .card-list .inner:nth-child(even):before {
    content: none;
}

.lp-page .card-area .card-list h4 {
    font-size: 2rem;
}

.lp-page .card-area .card-list .inner ul {
    gap: 1rem;
}

.lp-page .card-area .card-list .inner p {
    font-size: 1.1rem;
}

.lp-page .gift-btn {
    width: 27rem;
    height: 5rem;
    line-height: 5rem;
    font-size: 1.4rem;
    padding-left: 2.5rem;
    margin-top: 4rem;
}

.lp-page .gift-btn::before {
    width: 1.5rem;
    height: 2rem;
    left: 6rem;
}

.lp-page .card-area {
    padding-bottom: 6rem;
}	
	
.lp-page .faq-list {
    width: 35rem;
}

.lp-page .faq-list dt {
    padding: 2rem 1rem;
}

.lp-page .faq-list dt:after {
    right: 1rem;
}

.lp-page .faq-list dt.clicked:after {
    right: 1.2rem;
}

.lp-page .faq-list dd {
    font-size: 1.3rem;
    margin: 0 1rem 2.5rem;
    padding: 1.2rem;
}	
.lp-page .faq-list .ico {
    width: 7%;
}

.lp-page .faq-list .txt {
    width: 85%;
}

.lp-page .faq-list dd .txt {
    width: 93%;
}	
.lp-page .gift-btn::after {
    width: 0.5rem;
    height: 0.5rem;
    top: 2.1rem;
    right: 1rem;
}	
}


/* キャンペーンエリア調整 */
.lp-page .campaign-area {
    width: 96.6rem;
    margin: 0 auto;
    background: #FFF0E3;
    padding: 6rem 15rem;
    margin-bottom: 12rem;
    color: #D67F52;
    letter-spacing: .1em;
}

.lp-page .campaign-area h3 span {
    display: block;
    background: #D67F52;
    color: #fff;
    font-size: 1.6rem;
    width: 12rem;
    padding: .4rem 0 .2rem;
    border-radius: .4rem;
    margin: 0 auto .5rem;
}

.lp-page .campaign-area h3 {
    font-size: 4.2rem;
    font-weight: 500;
	letter-spacing: .1em;
}

.lp-page .campaign-area .day-txt {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top: 1px solid rgb(214 127 82 / 50%);
    border-bottom: 1px solid rgb(214 127 82 / 50%);
    padding: 1rem 0;
    gap: 1.5rem;
    width: 35rem;
    margin: -1.5rem auto 3.5rem;
}

.lp-page .campaign-area .day-txt dt {
    font-size: 1.4rem;
    font-weight: 500;
}

.lp-page .campaign-area .day-txt dd {
    font-size: 1.8rem;
    font-weight: 700;
}

.lp-page .campaign-area .day-txt dd span {
    font-size: 1.4rem;
}

.lp-page .campaign-area .main-txt {
    background: #D67F52;
    color: #fff;
    text-align: center;
    font-weight: 500;
    font-size: 1.8rem;
    padding: 1.2rem 0 1rem;
}

.lp-page .campaign-area .main-txt span {
    font-size: 2.8rem;
    font-weight: 700;
}

.lp-page .campaign-area .note {
    font-size: 1.2rem;
    padding-top: 2rem;
    text-align: center;
}
@media only screen and (max-width: 768px) {
.lp-page .campaign-area {
    width: 36rem;
    padding: 3rem 2.5rem;
    margin-bottom: 7rem;
}

.lp-page .campaign-area h3 {
    font-size: 3rem;
}

.lp-page .campaign-area h3 span {
    font-size: 1.4rem;
    width: 10rem;
}

.lp-page .campaign-area .day-txt {
    width: 100%;
    margin-bottom: 2.5rem;
    padding: .8rem 0 .6rem;
}

.lp-page .campaign-area .day-txt dt {
    font-size: 1.2rem;
}

.lp-page .campaign-area .day-txt dd {}

.lp-page .campaign-area .day-txt dd span {
    font-size: 1.2rem;
}

.lp-page .campaign-area .main-txt {
    font-size: 1.4rem;
}

.lp-page .campaign-area .main-txt span {
    font-size: 2.4rem;
}

.lp-page .campaign-area .note {
    font-size: 1.1rem;
    text-align: left;
    padding-top: 1.5rem;
}
.lp-page .campaign-area .bnr-img img {
    height: 26rem;
    width: 100%;
    object-fit: cover;
}
}