@charset "utf-8";

/****************************************

    /* いろいろ

*****************************************/

body {
    font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: .05em;
    background: #fff;
    background-size: contain;
    /* 背景画像を保ちつつ最大サイズにする */
    -webkit-text-size-adjust: 100%;
    max-width: 100%;
}


section {
    margin: auto;
    padding: 0px;
    max-width: 1300px;
}

/*画像*/
img {
    width: 100%;
    height: auto;
}

/*文字*/

p {
    font-size: clamp(14px, 3vw, 28px);

}

/*注釈*/
.note {
    font-size: 14px;
    text-align: right;
    font-weight: 200;
    margin: -20px 0;
}

.a-note {
    font-size: 14px;
    text-align: right;
    font-weight: 200;
    margin: 0;
}

/*メイン文字*/

/*背景*/
.back-box {
    margin: 5vw 20vw 0 20vw;
    padding: 5vw 2vw;
}

@media screen and (max-width:800px) {
    body {
        margin: 30px 0 0;
    }

    .note {
        font-size: 10px;
        text-align: right;
        font-weight: 200;
        margin: -10px 0;
    }

    .a-note {
        font-size: 1.5VW;
        text-align: right;
        font-weight: 200;
        margin: 0;
    }

    .back-box {
        margin: 10px 10px 0;
    }

}

/****************************************

    /* FV

*****************************************/

.header {
    text-align: center;
    margin: 0 230px;
}

@media screen and (max-width:800px) {

    .header {
        text-align: center;
        margin: 0 18px;
    }

}

/****************************************

    /* question

*****************************************/
.question {
    text-align: center;
    margin: 0 0 5vw 0;
}

.q-img {
    width: 8vw;
}

.q-box {
    margin: 1vw 0;
    padding: 0 0 2vw 0;
    background: #fff;
}

.box-title {
    background-color: #f0908d;
    padding: 0 5vw;
}

.box title h2 {
    color: #fff;
}

h2 {
    font-size: 1.1rem;
    font-weight: bold;
    padding: 1vw;
    color: #fff;
    margin: 2vw;
}

/*アンサー*/
.btn {
    color: #333333;
    background-color: #fdeff2;
    border-radius: 100vh;
    width: 24vw;
    height: 6vh;
    margin: 1vw;
    display: inline-block;
    font-size: clamp(12px, 1.8vw, 30px);
    line-height: 4vw;
}

input {
    display: none;
}

#check_content {
    display: none;
}

input[type=checkbox]:checked~#check_content {
    display: block;
}

input[type="checkbox"]:checked+label {
    background-color: #f0908d;
}

.answer {
    padding: 0 5vw;
    animation-name: fadein;
    animation-duration: 1s;
}

@keyframes fadein {
    from {
        opacity: 0;
        transform: translatey(-10px);
    }

    to {
        opacity: 1;
        transform: translatey(0);
    }
}

.flex-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1vw;
}

/*アンサー2*/

@media screen and (max-width:800px) {

    .btn {
        color: #171717;
        background-color: #FFE3DD;
        border-radius: 10px;
        width: 35vw;
        height: auto;
        font-size: 1.1rem;
        line-height: 23.5px;
        padding: 13px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .q-img {
        width: 13vw;
    }

}

/****************************************

    /* オファーボタン

*****************************************/

.offer-btn {
    text-align: center;
    margin: 5vw 0 0 0;
}

.offer-text {
    font-size: 1.1rem;
    font-weight: bold;
}

.offer-btn img {
    width: 45vw;
}

.anim-box {
    animation: poyopoyo 2s ease-out infinite;
    opacity: 1;
}

@keyframes poyopoyo {

    0%,
    40%,
    60%,
    80% {
        transform: scale(1.0);
    }

    50%,
    70% {
        transform: scale(0.95);
    }
}



@media screen and (max-width:800px) {

    .offer-btn img {
        width: 75vw;
    }

}