:root {
    --inner__pdding: 20px;
    --green: #006B42;
    --yellow: #fdd34e;
    --color-black: #222222;

}

@media screen and (max-width:420px) {
    :root {
        --inner__pdding: 10px;
    }
}

body {
    font-size: 14px;
    margin: 0;
    padding: 0;
    background: #fffbef;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1.7;
    overflow-y: scroll;

}

body:after {
    content: "";
    height: 100vh;
    width: 100vw;
    position: absolute;
    background-image: url(../../../../images/sp/cfa/onefes/pc_bg.png);
    background-repeat: repeat;
    background-size: cover;
    position: fixed;
    top: 0;
    z-index: -1;
    opacity: .1;

}

.question {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.question .body__inner {
    flex: 1;
}


#app {
    transition: opacity 0.3s ease;
    opacity: 1;

}

#app.is-fadeout {
    opacity: 0;
}

footer {

    color: #888888;
    text-align: center;
    padding: 30px 0;
    margin-top: 50px;
    max-width: 600px;
    width: 100%;
    margin: auto;
    background: #fff;
    border-left: 2px solid #fee191;
    border-right: 2px solid #fee191;

    background-image: url(../../../../images/sp/cfa/onefes/footer_bg.png);
    background-repeat: repeat;
    background-size: cover;

}

footer .power {
    color: #7298ed;
}

.footer__btn {
    color: #ed743f;
    text-align: center;

    flex-direction: column;
    gap: 3px;
    margin: auto;
}

.c-shadow__inner.footer__btn {
    display: flex;
}

.footer_btn_url {
    font-size: 12px;
}

.footer__logo {
    width: clamp(150px, calc((200/ 600)*100vw), 200px);
    margin-bottom: 10px;
}

.l-inner {
    max-width: 600px;
    margin: auto;
    padding: 0 var(--inner__pdding);
}

.l-fitinner {
    max-width: 600px;
    margin: auto;
}

.result__card--body {
    max-width: 480px;
    margin: auto;
    padding: 0 10px;
}

img {
    width: 100%;
    height: auto;
}



.btn a {
    text-align: center;
    font-weight: bold;
    text-decoration: none;
    max-width: 300px;
    background: #ff4040;
    color: #fff;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    width: 90%;
    margin: auto;
    box-shadow: 0px 3px 0 0 #e22727;
}

.result__contents {
    margin-bottom: 30px;
}

.index__content:before,
.questionMain:before,
.result__contents:before {
    content: "";
    background: url(../../../../images/sp/cfa/onefes/headoc.png);
    background-repeat: repeat;
    background-size: contain;
    padding-bottom: 15px;
    width: 100%;
    display: block;
    aspect-ratio: 1200/279;
    margin-top: -2px;
}

.indexHead {
    background: var(--yellow);
    padding-top: 20px;

}

.questionHead {
    background: var(--yellow);
    padding-top: 10px;
    position: relative;
}

.question__head {
    width: 80%;
    margin: 0 auto 0;
    transform: translate(-9%, 0px);
}

.question__imageouter {
    width: 200px;
    margin: auto;
    height: 100svh;
    text-align: center;
    color: #FDD34E;
}



.body__inner {
    width: 100%;
    max-width: 600px;
    margin: auto;
    background: #fff;
    border-left: 2px solid #FDD34E;
    border-right: 2px solid #FDD34E;
    padding-bottom: 30px;
}

.index__sub {
    max-width: 200px;
    width: 40%;
    margin: auto;
}




.index__head {
    width: 60%;
    max-width: 400px;
    margin: auto;
}

.index__content {
    text-align: center;
}

.index__content--heading {
    font-size: clamp(24px, calc((30/ 600)*100vw), 30px);
    font-weight: bold;
    color: var(--green);
    margin-bottom: 10px;
    margin-top: 20px;
}

.index__content--body {
    display: flex;
    flex-direction: column;
    gap: 20px;
    line-height: 2;
    margin-bottom: 20px;
}

.modal-open {
    overflow: hidden;
}


/* モーダル */
#modal {
    position: fixed;
    top: 0;
    left: 0;
    border: none;
    padding: 30px;
    background: #ffffff;
    z-index: 10;
    flex-direction: column;
    gap: 20px;
    border-radius: 10px;
}

#modal::backdrop {
    background: rgba(0, 0, 0, 0.6);
}

#modal[open] {
    display: flex;
    align-items: center;
    justify-content: center;
}


#modal__close {
    position: absolute;
    top: 0px;
    right: 0px;
    cursor: pointer;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: background 0.3s;
}


#modal__close svg {
    pointer-events: none;
}

.modal__list {
    animation-fill-mode: backwards;
}

.modal__list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
}

.indexStart {
    text-align: center;
}


.submit_btn button,
.submit_btn a {
    letter-spacing: 2px;
    color: #fff;
    background: #FF7979;
    width: 90%;
    max-width: 300px;
    padding: 20px;
    text-align: center;
    border-radius: 10px;
    box-shadow: 3px 4px 0 0 #e15b5b;
    display: inline-block;
}

.c-shadow {
    position: relative;
    z-index: 1;
    display: inline-block;

}

.c-shadow:before {
    content: "";
    display: block;
    position: absolute;
    border: 1px solid;
    border-radius: 10px;
    height: 100%;
    z-index: -1;
    box-sizing: border-box;
    top: 3px;
    width: 100%;
    margin: auto;
    left: 3px;
    right: 3px;
}

.c-shadow__inner {
    border: 1px solid;
    border-radius: 10px;
    position: relative;
    background-color: #fff;
    display: inline-block;
    padding: 10px;
    box-sizing: border-box;
    width: 100%;

}

.footer__btn--outer {
    margin-bottom: 30px;
}


.footer__btn--outer .c-shadow__inner {
    border: 1px solid #FF7979;
}

.footer__btn--outer .c-shadow:before {
    color: #ed743f;
}

.c-selectbtn a:after,
.c-selectbtn button:after {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSIyNHB4IiBmaWxsPSIjMWYxZjFmIj48cGF0aCBkPSJtMzIxLTgwLTcxLTcxIDMyOS0zMjktMzI5LTMyOSA3MS03MSA0MDAgNDAwTDMyMS04MFoiLz48L3N2Zz4=');
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 1rem;
}

.select__btn a {
    font-size: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
}


.options {
    display: flex;
    flex-direction: column;
    gap: 10px;
}


.c-question__heading {
    background: #eee;
    padding: 10px;
}

@media screen and (min-width:600px) {
    .c-question__heading {
        text-align: center;
    }
}

.c-question__heading span {
    font-weight: bold;
    font-size: 20px;
    text-align: center;
}

.c-question__heading {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin: 20px 0 20px;
    border-radius: 3px;
    line-height: 1.6;
}

.c-selectbtn {
    font-size: 16px;
}

.c-selectbtn .c-shadow__inner {
    text-align: center;
    padding: 20px 40px 20px 15px;
    font-size: clamp(12px, calc((16/ 370)*100vw), 16px);
    justify-content: center;
    align-items: center;
    border-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.result__heading {
    background: var(--yellow);
    padding-top: 20px;
}




.result__mv:after {
    content: "";
    aspect-ratio: 1/1;
    width: 60%;
    background: #fff;
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
    border-radius: 100%;
}


.result__mv picture {
    position: relative;
}


.result__mv {

    width: clamp(200px, calc((300/ 500)*100vw), 300px);
    margin: auto;
    position: relative;
    z-index: 1;
    margin-bottom: 10px;
}

.result__mv:after {
    content: "";
    aspect-ratio: 1/1;
    width: 60%;
    background: #fff;
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
    border-radius: 100%;
}

.result__mv {}

.result__mv picture {
    position: relative;
}

.result__type {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex-direction: column;
    font-weight: bold;
    font-size: 16px;
}

.result__type--outer {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    font-size: clamp(12px, calc((20/ 500)*100vw), 20px);
    font-weight: bold;
    gap: 5px;
    background: #fff;
    border-radius: 100px;
    padding: 10px 0;
    width: 95%;
    max-width: 500px;
    margin: 0 auto 20px;
}

.result__subtype {
    font-size: 14px;
    font-weight: 500;
}

.result__subtype:before {
    content: "(";
}

.result__subtype:after {
    content: ")";
}

.result__descriptioni {
    font-size: 16px;
    font-weight: bold;
}

.result__card--heading {
    aspect-ratio: 829 / 138;
    background: url(../../../../images/sp/cfa/onefes/resullt_title_bg.png);
    background-repeat: repeat;
    background-size: cover;
    display: flex;
    align-items: center;
    font-weight: bold;
    padding-left: 5%;
    width: 100%;
    height: auto;
    max-width: 500px;
    margin: auto;

}

.c-shadow__inner.footer__btn {
    background: #fee191;
    border-color: #ed743f;
}

.message__heading {
    aspect-ratio: 829 / 138;
    background: url(../../../../images/sp/cfa/onefes/result_message_heading_bg.png);
    background-repeat: repeat;
    background-size: cover;
    display: flex;
    align-items: center;
    font-weight: bold;

    width: 100%;
    height: auto;
    justify-content: center;
}

.result__message {
    background: url(../../../../images/sp/cfa/onefes/result_card_bgy.png);
    aspect-ratio: 885 / 632;
    width: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    padding: 7%;
    gap: 10px;
    display: flex;
    flex-direction: column;
    max-width: 400px;
    margin: auto;
    font-size: 16px;
}

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

    .result__message {
        font-size: 14px;
    }
}

.result__contents__inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 20px;

}

.result__share {
    border: 3px solid;
    border-radius: 20px;
    text-align: center;
    padding: 20px;
    color: #006B42;
}

.share__title {
    font-weight: bold;
    margin-bottom: 16px;
    font-size: 20px;
}

.result__sharebtns {
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
    align-items: center;
}

.redirect_share_group-body {
    display: flex;
    gap: 20px;
}


.redirext_share_item {
    text-decoration: none;
    display: block;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100px;
    overflow: hidden;
    padding: 10px;
}

.redirext_share_x {
    background-color: #000;
}

.redirect_share_line {
    background-color: #26ad36;
}

.redirect_share_facebook {
    background-color: #0766ff;
}

.result__sharebtns img {
    width: 30px;
    height: auto;
}

.result_copybox {
    display: flex;
    justify-content: center;
}

.result_share_copy {
    background: #fff;
    border: 1px solid #4C4040;
    border-radius: 50px;
    padding: 14px 35px 14px 18px;
    position: relative;
    transition: 0.3s;
    line-height: 1;
    cursor: pointer;
}

.resultShare {
    max-width: 500px;
    margin: 0 auto 50px;
}

.submit_btn {
    text-align: center;
}

.result__sharebox {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.result_qr {
    width: clamp(60px, calc((100/ 400)*100vw), 100px);
    aspect-ratio: 1/1;
}


body {
    opacity: 0;
}

body.loaded {
    opacity: 1;
    transition: .3s;
}

a:hover {
    opacity: .8;
    transition: .2s;
}

#modal__close:hover {
    background: #f0f0f0;
}

.submit_btn button:hover,
.submit_btn a:hover {
    opacity: .8;
}

.select__btn a:hover,
.c-selectbtn .c-shadow__inner:hover {
    opacity: 1;
    color: #006c43;
}

.c-shadow__inner.footer__btn:hover {
    background: #ffffff;
    transition: .2s;
}