.henkin a {
    position: absolute;
    display: block;
    width: 22%;
    height: 3.5%;
    left: 28%;
    top: 54.5%;
}

.cta-btn img {
    margin-top: 80px;
}

/*全額返金リンク*/
.refundBox a {
    /*background: orange;*/
    width: 24%;
    height: 8%;
    left: 45%;
    top: 54%;
}

#wrap {
    overflow-x: initial !important;
}

#view-billing-information {
    text-align: left;
}

div.zaiko #two_months_ago,
div.zaiko #month_ago {
    left: 6%;
}

.henkin_link {
    position: absolute;
    bottom: 56.2%;
    left: 40%;
    width: 20%;
    height: 4.5%;
}

.cta_henkin_link {
    position: absolute;
    bottom: 4.7%;
    left: 5%;
    width: 16%;
    height: 1%;
}

#wrap {
    overflow-x: initial !important;
}

#view-billing-information {
    text-align: left;
}

#product_container .form_group_ec {
    position: relative;
}

#product_container .form_group_ec::before {
    position: absolute;
    top: 42%;
    right: 0.9em;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #666666;
    pointer-events: none;
}

#product_container .form_group_ec select {
    background-color: #f3f3f3;
}

.submit_bottom_sp_ec {
    width: 100%;
}


.end_campaign {
    border: 4px double #cca3a3;
    max-width: 450px;
    margin: 10% auto;
    display: block;
    line-height: 2em;
}

.end_campaign p {
    font-family: serif;
    display: block;
    color: #6b5151;
    padding: 0 4%;
}

.coupon_note {
    text-align: center;
    margin-top: 1%;
    color: red;
}

@media screen and (max-width: 768px) {
    .cta-btn img {
        margin-top: 18%;
        margin-left: 52%;
        width: 45%;
    }
}

.btn-animation {
    animation-name: test1;
    animation-duration: 1s;
    animation-timing-function: ease;
    animation-iteration-count: infinite;
}

@keyframes test1 {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }

    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05);
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}

.test1 {
    animation-name: test1;
    animation-duration: .8s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    max-width: 750px;
    overflow: hidden;
}

@keyframes test1 {
    from {}

    to {
        transform: scale(1.1, 1.1);
    }
}

.btn-fixed img {
    width: 90%;
}

.reflection-img {
    position: relative;
    overflow: hidden;

}

.reflection {
    height: 100%;
    width: 10%;
    position: absolute;
    top: -100px;
    left: 0;
    background-color: #fff;
    opacity: 0;
    transform: rotate(112deg);
    animation: reflection 2s ease-in-out infinite;
}

@keyframes reflection {
    0% {
        transform: scale(0) rotate(0deg);
        opacity: 0;
    }

    80% {
        transform: scale(0) rotate(12deg);
        opacity: 0.5;
    }

    81% {
        transform: scale(4) rotate(45deg);
        opacity: 1;
    }

    100% {
        transform: scale(20) rotate(45deg);
        opacity: 0;
    }
}