@charset "UTF-8";
/********************************************************************************

page-top.css　トップページcss

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

/*============================================================
 PC
*============================================================*/

/* reset
*================ */
#page-top main .inner > *:not(h1, h2, h3, h4) {
    margin-bottom: 0;
}
/* parts
*================ */
/* btn */
#page-top .main .inner section .cta_btn {
    z-index: 10;
}
/* hover */
#page-top a {
    transition: 0.2s;
}
#page-top a:hover {
    opacity: 0.5;
    transition: 0.2s;
}
/* grecaptcha-badge */
#page-top .grecaptcha-badge {
    display: none;
}

/* layout
*================ */
#page-top .main .inner {
    max-width: 600px;
    margin: 80px auto 160px auto;
    padding: 0;
    box-shadow: 0px 0px 5px 4px #c6c6c6;
}
#page-top .main .inner section {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 1;
}


/* main
*================ */
/* mv_bottom */
#page-top section.mv_bottom {
    position: relative;
}
#page-top section.mv_bottom .cta_btn {
    position: absolute;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
}
/* recommended_for */
#page-top section.recommended_for {
    position: relative;
}
#page-top section.recommended_for .cta_btn {
    position: absolute;
    bottom: 3%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
}

/* case */
#page-top section.case {
    position: relative;
}
#page-top section.case .cta_btn {
    position: absolute;
    bottom: 1.5%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
}
/* medical_expenses_deduction */
#page-top section.medical_expenses_deduction {
    position: relative;
}
#page-top section.medical_expenses_deduction .cta_btn {
    position: absolute;
    top: 26%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
}
/* access */
#page-top section.access {
    position: relative;
}



/* fixed_cta */
#page-top .main section.fixed_cta {
    position: fixed;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 600px;
    width: 100%;
}

#page-top .main section.fixed_cta .cta_btn {
    width: 80%;
}

/*============================================================
 TB
*============================================================*/
@media screen and (max-width: 1024px) {}



/*============================================================
 SP
*============================================================*/
@media screen and (max-width: 767px) {
    #page-top .main .inner {
        margin: 0 auto;
        padding-bottom: 40px;
    }
}
