@charset "utf-8";

*, *:before, *:after {
    box-sizing: border-box;
}
body{
    padding: 0;
}
.wrap{
    max-width: 100%;
    margin: 0;
}
.body-wrap{
    width: min(100%,650px);
    margin: 0 auto;
    & img{
        width: 100%;
    }
}

.plist2 + .price{
    background: #a71623;
    padding-top: 1px;
}

/*よくある質問*/
.faq{
    background: url(https://gigaplus.makeshop.jp/makecorlant/kenta2027/img/12-2.jpg) left top;
    padding-bottom: min(4vw, 62px);
    position: relative;
    overflow: hidden;
    & img{
        position: relative;
        display: block;
    }
    &::before{
        content: "";
        display: block;
        aspect-ratio: 1000 / 220;
        width: 100%;
        height: auto;
        position: absolute;
        left: 0;
        bottom: 0;
        background: url(https://gigaplus.makeshop.jp/makecorlant/kenta2027/img/12-3.jpg) left bottom / cover;
        z-index: 0;
    }
}
.faq-con {
    width: 87.5%;
    display: block;
    margin: 0 auto;
}
.faq-title{
    position: relative;
    display: flex;
    cursor: pointer;
    margin: 0;
    font-family: "Noto Serif JP", serif;
    background: #ec2d32;
    padding: min(2.5vw, 1.05rem) min(2.5vw, 1rem) min(2.5vw, 1.4rem) min(2.5vw, 1.5rem);
    gap: min(1.8vw, 0.55rem);
    &::before{
        content: "Q.";
        font-size: clamp(14px, 3vw, 30px);
        font-weight: 100;
        line-height: 1;
        font-weight: 900;
        color: #fff;
        position: relative;
        top: -0.15rem;
    }
    & span{
        font-size: 1.5vw;
        color: #fff;
        width: 100%;
        line-height: 1;
        font-size: clamp(14px, 3vw, 28px);
        font-weight: 900;
    }
    &.rot span::after{
        transform: translatey(-38%) rotate(32deg);
    }
}
.faq-text{
    color: #040000;
    font-weight: 400;
    font-size: clamp(13px, 3vw, 20px);
    font-family: "Zen Kaku Gothic New", sans-serif;
    display: none;
    padding: min(2.5vw, 1.25rem) min(2.5vw, 1.5rem) min(2.5vw, 1.4rem) min(3.2vw, 1.5rem);
    line-height: 1.55;
    background: #fff;
    position: relative;
    & p{
        letter-spacing: min(0.45vw,0.15rem);
        & strong{
            font-weight: bold;
            display: block;
            margin-bottom: min(2vw, 0.8rem);
        }
    }
    & + .faq-title{
        margin-top: min(5vw, 40px);
    }
}
.faq-tt{
    position: relative;
    display: flex;
    gap: min(2vw, 1rem);
    &::before {
        content: "A.";
        font-size: clamp(14px, 3vw, 27px);
        font-weight: 100;
        line-height: 1;
        font-weight: 900;
        color: #990000;
        position: relative;
        top: 0.1rem;
        font-family: "Noto Serif JP", serif;
    }
}

/*ボタン*/
.price{
    position: relative;
}
.purchase{
    /* padding: 0 0 min(2vw, 12px); */
    position: absolute;
    left: 0;
    bottom: min(7vw,45px);
    width: 100%;
    display: block;
    & form{
        width: calc(100% - min(2.5vw, 20px)*2);
        margin: 0 auto;
        position: relative;
        /* overflow: hidden;
        border-radius: 25rem;; */
        /* &::after{
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            border: 2px solid #f8efdf;
            border-radius: 8px;
            animation: loopRipple 2s infinite;
            z-index: -1;
        } */
    }
    & input{
        background: none;
        border: none;
        padding: 0;
    }
}
.purchase-btn{
    display: block;
    text-decoration: none;
    animation: ButtonA 2s ease-in-out infinite;
    transform-origin: center center;
    height: auto;
    width: 100%;
    filter: drop-shadow(5px 6px 5px rgb(0,0,0,0.8));
    -o-object-fit: contain;
    object-fit: contain;
}

@keyframes ButtonA {
/* 0%, 100% { transform: rotate(0deg); }
  25%      { transform: rotate(6deg); }
  75%      { transform: rotate(-6deg); } */
    0% {
        transform: translate(4px, 0px);
    }
    5% {
        transform: translate(-4px, 0px);
    }
    10% {
        transform: translate(4px, 0px);
    }
    15% {
        transform: translate(-4px, 0px);
    }
    20% {
        transform: translate(4px, 0px);
    }
    25% {
        transform: translate(-4px, 0px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}
