@charset "UTF-8";

/**
 * 全体で使うscss用変数
 */

body {
    color: #000;
    line-height: 1.8;
}

.d-f {
    display: flex;
}

.header_logo_link {
    display: block;
    width: 40%;
}

@media screen and (max-width: 599px) {
    .header_logo_link {
        width: 90%;
    }
}

.content {
    margin: 0 auto;
    padding: 50px 0;
    width: 100%;
}

@media screen and (max-width: 599px) {
    .content {
        margin-top: 30px;
        padding: 30px 3%;
    }
}

.content:nth-of-type(odd) {
    background-color: #eef7f2;
}

.content.top {
    margin-top: 30px;
    padding-top: 0;
}

.contain {
    max-width: 1080px;
}

.contain .header_logo_area {
    width: 50%;
}

@media screen and (max-width: 599px) {
    .contain .header_logo_area {
        width: 40%;
    }
}

.contain .header_logo_area .header_catch_copy {
    font-size: 16px;
}

@media screen and (max-width: 599px) {
    .contain .header_logo_area .header_catch_copy {
        font-size: 3vw;
        line-height: 1.2;
    }
}

.contain .header_link_area {
    width: 30%;
}

.contain .header_link_area .header_logo_link {
    display: block;
    width: 30%;
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    .contain .header_link_area .header_logo_link {
        width: 15%;
    }
}

@media screen and (max-width: 599px) {
    .contain .header_link_area .header_logo_link {
        width: 45%;
    }
}

.contain .header_link_area .header_logo_link .header_link_image {
    width: 100%;
}

.contain .menu_button_area {
    display: block;
    background-color: #4bb582;
    padding: 15px 20px 5px;
}

@media screen and (min-width: 960px) {
    .contain .menu_button_area {
        display: none;
    }
}

.contain .btn {
    padding: 8px 0;
}

@media screen and (max-width: 599px) {
    .contain.navbar {
        align-items: flex-start;
        padding: 0 10px;
    }
}

@media screen and (max-width: 599px) {
    .contain.navbar.pre_login {
        padding: 0;
    }
}

.contain .speech_bubble {
    background: #fff;
    border: solid 2px #f2f2f2;
    border-radius: 8px;
    box-sizing: border-box;
    display: block;
    position: relative;
    margin: 1.5em auto;
    max-width: 100%;
    min-width: 120px;
    padding: 30px 10px;
    width: 80%;
}

@media screen and (max-width: 599px) {
    .contain .speech_bubble {
        width: 100%;
    }
}

.contain .speech_bubble:before {
    border: 12px solid transparent;
    border-top: 12px solid #fff;
    bottom: -24px;
    content: "";
    left: 50%;
    margin-left: -15px;
    position: absolute;
    z-index: 2;
}

.contain .speech_bubble:after {
    border: 14px solid transparent;
    border-top: 14px solid #f2f2f2;
    bottom: -30px;
    content: "";
    left: 50%;
    margin-left: -17px;
    position: absolute;
    z-index: 1;
}

.contain .speech_bubble .speech_title {
    background-color: #4bb582;
    border-radius: 50px;
    color: #fff;
    padding: 6px;
    text-align: center;
    margin: 0 auto;
    width: 60%;
}

@media screen and (max-width: 599px) {
    .contain .speech_bubble .speech_title {
        width: 80%;
    }
}

.contain .speech_bubble .speech_list {
    margin-top: 20px;
}

.contain .speech_bubble .speech_list .speech_list_detail {
    font-weight: bold;
    list-style-position: inside;
    list-style-image: url();
    padding-left: 30px;
    line-height: 1.6em;
    background: url(/images/check.png?60f8223d4477b56be34b087374965dba) left 0px
        top 3px no-repeat;
    background-size: 20px auto;
    margin: 30px auto 0;
    text-indent: -0.2em;
    text-align: left;
    width: 80%;
}

@media screen and (max-width: 599px) {
    .contain .speech_bubble .speech_list .speech_list_detail {
        margin: 20px 0 0 0.4em;
        width: 100%;
    }
}

.contain .speech_bubble .speech_list .speech_list_detail:marker {
    font-size: 10px;
    width: 10px;
}

.contain .speech_bubble.top {
    margin-top: 50px;
    width: 100%;
}

.contain .speech_bubble.top .speech_title {
    width: 80%;
}

.contain .speech_bubble.top .speech_list_detail {
    width: 80%;
}

@media screen and (max-width: 599px) {
    .contain .speech_bubble.top .speech_list_detail {
        width: 100%;
    }
}

.contain .community_image_area {
    margin-top: 50px;
}

@media screen and (min-width: 960px) {
    .contain .community_image_area {
        display: flex;
        justify-content: space-between;
    }
}

@media screen and (max-width: 599px) {
    .contain .community_image_area {
        margin-top: 30px;
    }
}

.contain .community_image_area .before_situation {
    background-color: #e6e6e6;
}

@media screen and (min-width: 960px) {
    .contain .community_image_area .before_situation {
        width: 45%;
    }
}

@media screen and (max-width: 599px) {
    .contain .community_image_area .before_situation {
        padding: 0;
    }
}

.contain .community_image_area .before_situation .situation_title {
    background-color: #999999;
}

.contain .community_image_area .before_situation .before_situation_image_area {
    margin: 20px auto 0;
    width: 30%;
}

@media screen and (max-width: 599px) {
    .contain
        .community_image_area
        .before_situation
        .before_situation_image_area {
        width: 40%;
    }
}

.contain .community_image_area .arrow_image_area {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 10px auto;
    width: 20%;
}

@media screen and (min-width: 960px) {
    .contain .community_image_area .arrow_image_area {
        margin: 0;
        width: 8%;
    }
}

.contain .community_image_area .after_situation {
    background-color: #fff;
    border: 3px solid #ed7d0c;
}

@media screen and (min-width: 960px) {
    .contain .community_image_area .after_situation {
        width: 45%;
    }
}

@media screen and (max-width: 599px) {
    .contain .community_image_area .after_situation {
        padding: 0;
    }
}

.contain .community_image_area .after_situation .situation_title {
    background-color: #ed7d0c;
}

.contain .community_image_area .after_situation .after_situation_image_area {
    margin: 20px auto 0;
}

@media screen and (min-width: 960px) {
    .contain
        .community_image_area
        .after_situation
        .after_situation_image_area {
        width: 90%;
    }
}

@media screen and (max-width: 599px) {
    .contain
        .community_image_area
        .after_situation
        .after_situation_image_area {
        width: 80%;
    }
}

.contain .community_image_area .situation_title {
    color: #fff;
    font-weight: bold;
    padding: 20px;
    text-align: center;
}

@media screen and (min-width: 960px) {
    .contain .community_image_area .situation_title {
        font-size: 25px;
    }
}

@media screen and (max-width: 599px) {
    .contain .community_image_area .situation_title {
        font-size: 20px;
    }
}

@media screen and (max-width: 599px) {
    .contain h2 {
        font-size: 6vw;
        line-height: 1.5;
    }
}

.contain .title_sub_description {
    color: #4bb582;
    font-weight: bold;
    font-size: 25px;
    margin: 30px 0 0 2.2em;
    text-indent: -1.7em;
}

@media screen and (max-width: 599px) {
    .contain .title_sub_description {
        font-size: 5vw;
    }
}

.contain .title_sub_description:before {
    content: "\25EF";
    padding-right: 15px;
}

.contain .service_guide_area {
    width: 48%;
}

@media screen and (max-width: 599px) {
    .contain .service_guide_area {
        margin-top: 30px;
        width: 100%;
    }
}

.contain .service_guide_area .service_guide_link {
    display: block;
}

.contain .service_guide_area .service_guide_link:hover {
    opacity: 0.8;
}

.contain .service_guide_area .service_guide_link .service_title {
    background-color: #4bb582;
    color: #fff;
    padding: 10px;
    text-align: center;
}

.contain .other_content_guide {
    background-color: #fff;
    border: 1px solid #f2f2f2;
    box-shadow: 0 0 2px gray;
    margin-top: 20px;
    width: 30%;
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    .contain .other_content_guide {
        width: 32%;
    }
}

@media screen and (max-width: 599px) {
    .contain .other_content_guide {
        width: 100%;
    }
}

.contain .other_content_guide .other_content_link {
    color: #000;
    display: block;
    padding: 30px;
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    .contain .other_content_guide .other_content_link {
        padding: 10px;
    }
}

.contain .other_content_guide .other_content_link:hover {
    opacity: 0.6;
}

.contain .other_content_guide .other_content_link .other_content_title {
    border-bottom: solid 2px #4bb582;
    display: inline-block;
    font-size: 20px;
    padding-bottom: 3px;
}

.contain .content_guide_title {
    background-color: #4bb582;
    color: #fff;
    font-size: 30px;
    padding: 20px 0;
    text-align: center;
    width: 100%;
}

@media screen and (max-width: 599px) {
    .contain .content_guide_title {
        font-size: 20px;
        padding: 10px 0;
    }
}

.contain .content_guide_area {
    margin-top: 30px;
    width: 48%;
}

@media screen and (max-width: 599px) {
    .contain .content_guide_area {
        margin-top: 10px;
        width: 100%;
    }
}

.contain .voice_card_detail {
    border: 1px solid lightgray;
    padding: 30px 20px;
    width: 48%;
}

.contain .voice_card_detail:nth-of-type(2n) {
    margin-left: 1%;
}

.contain .voice_card_detail:nth-of-type(2n-1) {
    margin-right: 1%;
}

@media screen and (max-width: 599px) {
    .contain .voice_card_detail {
        padding: 20px;
        width: 100%;
    }
}

.contain .voice_card_detail.top {
    width: 48%;
}

@media screen and (max-width: 599px) {
    .contain .voice_card_detail.top {
        width: 100%;
    }
}

.contain .voice_card_detail .experience_voice_text {
    border-top: 1px solid lightGray;
    margin-top: 20px;
    padding-top: 20px;
}

.contain.top_content {
    margin-top: 80px;
}

@media screen and (max-width: 599px) {
    .contain.top_content {
        margin-top: 50px;
    }
}

@media screen and (max-width: 599px) {
    .contain .course {
        display: block;
    }
}

@media screen and (min-width: 960px) {
    .contain .course .left_box {
        margin-right: 5%;
        width: 45%;
    }
}

@media screen and (min-width: 960px) {
    .contain .course .right_box {
        margin-left: 5%;
        width: 45%;
    }
}

.contain .course .course_h3 {
    padding: 8px;
}

.contain .anchor_link_area .anchor_link_detail {
    margin: 30px auto 0;
    width: 50%;
}

@media screen and (max-width: 599px) {
    .contain .anchor_link_area .anchor_link_detail {
        margin-top: 20px;
        width: 100%;
    }
}

.contain .anchor_link_area .anchor_link_detail .anchor_link {
    color: #fff;
}

.contain .anchor_link_area .anchor_link_detail .anchor_link .anchor_text_area {
    background-color: #4bb582;
    padding: 20px;
    text-align: center;
}

.contain
    .anchor_link_area
    .anchor_link_detail
    .anchor_link
    .anchor_text_area
    .anchor_image_area {
    width: 10%;
}

.contain .main_visual_below_link_area {
    margin-top: 10px;
    width: 32%;
}

@media screen and (max-width: 599px) {
    .contain .main_visual_below_link_area {
        width: 100%;
    }
}

.contain .trial_button_area {
    margin-top: 50px;
}

@media screen and (max-width: 599px) {
    .contain .trial_button_area {
        margin-top: 10px;
    }
}

.contain .trial_button_area .play_icon {
    height: 40px;
    width: 40px;
}

@media screen and (max-width: 599px) {
    .contain .trial_button_area .play_icon {
        height: 30px;
        width: 30px;
    }
}

.contain .trial_button_area .trial_description {
    font-weight: 600;
    font-size: 22px;
    text-align: center;
}

@media screen and (max-width: 599px) {
    .contain .trial_button_area .trial_description {
        font-size: 15px;
    }
}

.contain .trial_button_area .trial_button {
    background-color: #ef3543;
    border-radius: 10px;
    margin: 10px auto 0;
    width: 500px;
    box-shadow: 0 6px 0 0 #ab0210;
    transform: translateY(-6px);
    transition: 0.3s all;
}

@media screen and (max-width: 599px) {
    .contain .trial_button_area .trial_button {
        width: 100%;
    }
}

.contain .trial_button_area .trial_button:hover {
    box-shadow: 0 2px 0 0 #ef3543;
    transform: translateY(-2px);
}

.contain .trial_button_area .trial_button .trial_button_link {
    align-items: center;
    color: #fff;
    display: flex;
    justify-content: center;
    padding: 20px 0;
}

@media screen and (max-width: 599px) {
    .contain .trial_button_area .trial_button .trial_button_link {
        padding: 11.3px 0;
    }
}

.contain
    .trial_button_area
    .trial_button
    .trial_button_link
    .trial_button_text {
    font-size: 24px;
    font-weight: bold;
    margin-left: 10px;
}

@media screen and (max-width: 599px) {
    .contain
        .trial_button_area
        .trial_button
        .trial_button_link
        .trial_button_text {
        font-size: 18px;
        margin-top: 5px;
    }
}

.contain .trial_button_area.contact_button_area .trial_description {
    font-size: 16px;
}

@media screen and (max-width: 599px) {
    .contain .trial_button_area.contact_button_area .trial_description {
        font-size: 14px;
    }
}

.contain .trial_button_area.contact_button_area .trial_description .border1,
.contain .trial_button_area.contact_button_area .trial_description .border2 {
    height: 20px;
    width: 20px;
}

.contain .trial_button_area.contact_button_area .trial_button {
    width: 300px;
}

.contain
    .trial_button_area.contact_button_area
    .trial_button
    .trial_button_text {
    font-size: 18px;
}

.contain .top_content_block_title {
    text-align: center;
}

@media screen and (min-width: 960px) {
    .contain .top_content_block_title {
        font-size: 40px;
    }
}

.contain .message_area {
    margin-top: 30px;
}

.contain .message_area .message_image_area {
    margin: 0 auto;
    width: 70%;
}

@media screen and (max-width: 599px) {
    .contain .message_area .message_image_area {
        width: 100%;
    }
}

.contain .offer_service_list {
    padding: 0 3%;
}

@media screen and (max-width: 599px) {
    .contain .offer_service_list {
        padding: 0;
    }
}

.contain .offer_service_list .offer_service_list_item {
    align-items: center;
    border: 3px solid #4bb582;
    border-radius: 5px;
    display: flex;
    font-weight: bold;
    font-size: 24px;
    justify-content: flex-start;
    margin-top: 20px;
    padding: 10px;
}

@media screen and (max-width: 599px) {
    .contain
        .offer_service_list
        .offer_service_list_item:nth-child(2)
        .good_icon_image {
        width: 29%;
    }
}

@media screen and (max-width: 599px) {
    .contain .offer_service_list .offer_service_list_item {
        font-size: 18px;
        line-height: 1.5;
    }
}

.contain .offer_service_list .offer_service_list_item .good_icon_image {
    margin-right: 20px;
    width: 50px;
}

@media screen and (max-width: 599px) {
    .contain .offer_service_list .offer_service_list_item .good_icon_image {
        width: 25%;
    }
}

.contain .offer_service_list .offer_service_list_item .yellow_bottom_border {
    background: linear-gradient(transparent 80%, #ffff00 80%);
}

.contain .top_experience_voice {
    margin: 0 auto;
    width: 50%;
}

@media screen and (max-width: 599px) {
    .contain .top_experience_voice {
        width: 100%;
    }
}

.bad_rehabilitation_area {
    background-color: #f2f2f2;
    margin-top: 50px;
    padding: 50px 0;
}

@media screen and (max-width: 599px) {
    .bad_rehabilitation_area {
        padding: 30px 0;
    }
}

.bad_rehabilitation_area .bad_rehabilitation_example_list {
    margin-top: 30px;
}

.bad_rehabilitation_area
    .bad_rehabilitation_example_list
    .bad_rehabilitation_example_list_item {
    background-color: #4bb582;
    border-radius: 10px;
    color: #fff;
    font-weight: bold;
    font-size: 24px;
    margin-top: 20px;
    padding: 10px 30px;
}

@media screen and (max-width: 599px) {
    .bad_rehabilitation_area
        .bad_rehabilitation_example_list
        .bad_rehabilitation_example_list_item {
        font-size: 18px;
        margin-top: 10px;
        padding: 10px 20px;
    }
}

.bad_rehabilitation_area
    .bad_rehabilitation_example_list
    .bad_rehabilitation_example_list_item
    .list_focus_text {
    color: #ffff00;
}

.menu_guide_content {
    background-color: #f9f8e1;
    padding: 50px 0;
}

@media screen and (max-width: 599px) {
    .menu_guide_content {
        padding: 30px 0;
    }
}

.menu_guide_content .menu_guide_area {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}

@media screen and (max-width: 599px) {
    .menu_guide_content .menu_guide_area {
        flex-wrap: wrap;
        margin-top: 0;
    }
}

.menu_guide_content .menu_guide_area .menu_guide_item {
    width: 49%;
}

@media screen and (max-width: 599px) {
    .menu_guide_content .menu_guide_area .menu_guide_item {
        margin-top: 20px;
        width: 100%;
    }
}

.anchor_content_area {
    margin-top: 50px;
}

@media screen and (max-width: 599px) {
    .anchor_content_area {
        margin-top: 30px;
    }
}

.anchor_content_area .anchor {
    display: block;
    margin-top: -150px;
    padding-top: 150px;
}

@media screen and (max-width: 599px) {
    .anchor_content_area .anchor {
        margin-top: -80px;
        padding-top: 80px;
    }
}

.contact_area {
    background-image: url(/images/info_background_pc.jpg?3fd55a0adbfec14a5436814f15f80dcb);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    text-align: center;
    width: 100%;
}

@media screen and (min-width: 960px) {
    .contact_area {
        background-size: contain;
        padding-bottom: 46%;
    }
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    .contact_area {
        background-image: url(/images/info_background_sp.jpg?daacd171db4da3bfd64de30395c8ac25);
        padding: 40px;
    }
}

@media screen and (max-width: 599px) {
    .contact_area {
        background-image: url(/images/info_background_sp.jpg?daacd171db4da3bfd64de30395c8ac25);
        padding: 20px 10px;
    }
}

@media screen and (min-width: 960px) {
    .contact_area .pc_absolute {
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        width: 100%;
    }
}

@media screen and (max-width: 599px) {
    .contact_area h2 {
        font-size: 6.5vw;
    }
}

.contact_button_area .f-b {
    font-weight: bold;
}

@media screen and (min-width: 960px) {
    .contact_button_area .pc-flex {
        align-items: flex-end;
        display: flex;
        justify-content: center;
    }
}

@media screen and (min-width: 960px) {
    .contact_button_area .pc-flex .button_block {
        margin: 0 4%;
        width: 30%;
    }
}

.contact_button_area .pc-flex .button_block .free_text {
    align-items: center;
    justify-content: center;
}

.contact_button_area .pc-flex .button_block .border1 {
    margin-right: 20px;
}

.contact_button_area .pc-flex .button_block .border2 {
    margin-left: 20px;
}

.main_visual_area {
    position: relative;
}

@media screen and (min-width: 960px) {
    .main_visual_area.pre-login-top {
        margin-top: 78px;
    }
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    .main_visual_area.pre-login-top {
        margin-top: 10vh;
    }
}

.main_visual_area .contact_button_area {
    bottom: 70px;
    left: 0;
    position: absolute;
    width: 90%;
}

@media screen and (min-width: 960px) {
    .main_visual_area .contact_button_area {
        left: 120px;
    }
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    .main_visual_area .contact_button_area {
        bottom: 15px;
        left: 50px;
        width: 40%;
    }
}

@media screen and (max-width: 599px) {
    .main_visual_area .contact_button_area {
        bottom: 30px;
        margin: auto;
        right: 0;
    }
}

.main_visual_area .contact_button_area .pc-flex {
    justify-content: flex-start;
}

.pc_display {
    display: none;
}

@media screen and (min-width: 960px) {
    .pc_display {
        display: block;
    }
}

.sp_display {
    display: none;
}

@media screen and (max-width: 599px) {
    .sp_display {
        display: block;
    }
}

.tablet_display {
    display: none;
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    .tablet_display {
        display: block;
    }
}

header.pre_login {
    background-color: transparent;
}

@media screen and (max-width: 599px) {
    header .navbar-expand-lg {
        padding: 0;
    }
}

header .navbar-expand-lg.pre-login {
    background-color: #fff;
    padding: 0 0 20px;
}

@media screen and (max-width: 599px) {
    header .navbar-expand-lg.pre-login {
        padding: 0;
    }
}

header .hamburger .header_menu_area {
    background-color: #4bb582;
}

header .hamburger .header_menu_area .navbar-nav {
    align-items: flex-start;
    max-width: 1200px;
}

@media screen and (max-width: 599px) {
    header .hamburger .header_menu_area .navbar-nav {
        padding: 0 !important;
        margin-top: 0;
    }
}

header .hamburger .header_menu_area .navbar-nav .nav-item {
    background-color: #4bb582;
    border-color: #fff;
}

header .hamburger .header_menu_area .navbar-nav .nav-item:first-child {
    margin-left: 0;
}

@media screen and (min-width: 600px) and (max-width: 959px) {
    header .hamburger .header_menu_area .navbar-nav .nav-item {
        width: 100%;
    }
}

@media screen and (max-width: 599px) {
    header .hamburger .header_menu_area .navbar-nav .nav-item {
        margin-left: 0;
        width: 100%;
    }
}

header .hamburger .header_menu_area .navbar-nav .nav-item .nav-link {
    color: #fff;
    padding: 0;
}

header .hamburger .header_menu_area .navbar-nav .nav-item .fas.fa-chevron-down {
    color: #fff;
}

header
    .hamburger
    .header_menu_area
    .navbar-nav
    .nav-item
    .fas.fa-chevron-down:before {
    content: "\25BC";
}

header .hamburger .header_menu_area .navbar-nav .nav-item .accordion_menu {
    background-color: #fff;
}

header
    .hamburger
    .header_menu_area
    .navbar-nav
    .nav-item
    .accordion_menu
    .nav-link {
    color: #000;
}

header .pre_login_header_nav {
    position: relative;
}

header .pre_login_header_nav .pre_login_header_text_area {
    align-items: center;
    cursor: pointer;
    transition: color 0.3s, background 0.3s, border 0.3s;
}

header .pre_login_header_nav .pre_login_header_text_area.active {
    color: #000;
}

header .pre_login_header_nav .pre_login_header_text_area:hover {
    background-color: #023f20;
    color: #fff;
}

header
    .pre_login_header_nav
    .pre_login_header_text_area
    .pre_login_header_text {
    padding: 12px 4px 12px 16px;
}

header .pre_login_header_nav .pre_login_header_text_area .arrow_img_area {
    margin: 0 8px;
    width: 14px;
}

header .pre_login_header_nav .pre_login_header_nav_second {
    display: none;
    position: absolute;
    width: 100%;
}

header
    .pre_login_header_nav
    .pre_login_header_nav_second
    .pre_login_header_nav_second_anchor {
    border-top: 1px solid #fff;
    color: #fff;
    text-align: center;
}

header
    .pre_login_header_nav
    .pre_login_header_nav_second
    .pre_login_header_nav_second_anchor:last-child {
    border-bottom: 1px solid #fff;
}

header .pre_login_header_nav .pre_login_header_anchor {
    color: #fff;
    display: block;
    padding: 12px 16px;
    transition: color 0.3s, background 0.3s, border 0.3s;
}

header .pre_login_header_nav .pre_login_header_anchor:hover {
    background-color: #023f20;
}

header .contain {
    max-width: 1200px;
}

footer {
    margin-top: 50px;
}

footer.footer_pre_login {
    background-color: #fff;
}

footer .footer_list {
    align-items: center;
    display: flex;
    margin: 0 auto;
    max-width: 1200px;
}

@media screen and (max-width: 599px) {
    footer .footer_list {
        flex-wrap: wrap;
        text-align: center;
    }
}

footer .footer_list .footer_list_item {
    margin-left: 3rem;
}

@media screen and (max-width: 599px) {
    footer .footer_list .footer_list_item {
        margin-top: 2rem;
        margin-left: 0;
        width: 100%;
    }
}

footer .footer_list .footer_list_item .footer_list_link {
    color: #000;
}

footer .footer_list .footer_list_item .footer_list_link:hover {
    opacity: 0.5;
}

footer .footer_list .footer_list_item:first-child {
    margin-left: 0;
}

@media screen and (max-width: 599px) {
    footer .footer_list .footer_list_item:first-child {
        margin-top: 0;
    }
}

footer .footer_copyright_area {
    background-color: #4bb582;
    max-width: 100%;
    margin-top: 30px;
}

.orange_marker {
    background: linear-gradient(transparent 70%, #f1bf89 70%);
}

.video_comparison_table table {
    border-collapse: collapse;
    margin-top: 30px;
    table-layout: fixed;
    width: 100%;
}

@media screen and (max-width: 599px) {
    .video_comparison_table table {
        margin-top: 20px;
    }
}

.video_comparison_table table tr th,
.video_comparison_table table tr td {
    border: solid 1px;
    text-align: center;
}

@media screen and (min-width: 960px) {
    .video_comparison_table table tr th,
    .video_comparison_table table tr td {
        padding: 10px;
    }
}

@media screen and (max-width: 599px) {
    .video_comparison_table table tr th,
    .video_comparison_table table tr td {
        padding: 10px 1px;
    }
}

.video_comparison_table table tr th.ta-l,
.video_comparison_table table tr td.ta-l {
    text-align: left;
    vertical-align: baseline;
}

.video_comparison_table table tr th .large_text,
.video_comparison_table table tr td .large_text {
    font-size: 28px;
    font-weight: bold;
}

@media screen and (max-width: 599px) {
    .video_comparison_table table tr th .large_text,
    .video_comparison_table table tr td .large_text {
        font-size: 20px;
    }
}

.video_comparison_table table tr th .ta-l,
.video_comparison_table table tr td .ta-l {
    text-align: left;
}

.video_comparison_table table tr th .orange_text,
.video_comparison_table table tr td .orange_text {
    color: #ed7d0d;
}

.video_comparison_table table tr th .judge_img,
.video_comparison_table table tr td .judge_img {
    margin: auto;
    width: 40px;
}

@media screen and (max-width: 599px) {
    .video_comparison_table table tr th .judge_img,
    .video_comparison_table table tr td .judge_img {
        width: 30px;
    }
}

.video_comparison_table table tr th {
    background-color: #4bb582;
    color: #fff;
    font-weight: bold;
    padding: 16px;
}

@media screen and (min-width: 960px) {
    .video_comparison_table table tr th {
        font-size: 28px;
    }
}

@media screen and (max-width: 599px) {
    .video_comparison_table table tr th {
        line-height: 1.3;
        padding: 10px;
    }
}

.video_comparison_table table tr th:first-child {
    border: 1px solid #000;
    background-color: #fff;
    width: 20%;
}

.video_comparison_table table tr th:nth-child(3) {
    background-color: gray;
}

.video_comparison_table table tr th:last-child {
    font-weight: normal;
}

.video_comparison_table table tr th .detail_link {
    color: #4a79b3;
    font-weight: bold;
    text-decoration: none;
}

.video_comparison_table table tr td {
    padding: 16px;
}

@media screen and (min-width: 960px) {
    .video_comparison_table table tr td {
        font-size: 20px;
    }
}

@media screen and (max-width: 599px) {
    .video_comparison_table table tr td {
        font-size: 16px;
        padding: 16px 8px;
    }
}

.video_comparison_table table tr td:first-child {
    background-color: #dcf7e9;
}

@media screen and (min-width: 960px) {
    .video_comparison_table table tr td:first-child {
        font-size: 20px;
    }
}

.video_comparison_table table tr td:nth-child(2) {
    border-left: 3px solid red;
    border-right: 3px solid red;
}

@media screen and (min-width: 960px) {
    .video_comparison_table table tr td .caution_text {
        font-size: 25px;
    }
}

.video_comparison_table table tr:first-child th:nth-child(2) {
    border: 3px solid red;
    border-bottom: none;
}

.video_comparison_table table tr:last-child td:nth-child(2) {
    border-bottom: 3px solid red;
}

.fee_guide_table table {
    border-collapse: collapse;
    margin-top: 30px;
    table-layout: fixed;
    width: 100%;
}

@media screen and (max-width: 599px) {
    .fee_guide_table table {
        margin-top: 20px;
    }
}

.fee_guide_table table tr th,
.fee_guide_table table tr td {
    border: solid 1px;
    text-align: center;
}

@media screen and (min-width: 960px) {
    .fee_guide_table table tr th,
    .fee_guide_table table tr td {
        padding: 10px;
    }
}

@media screen and (max-width: 599px) {
    .fee_guide_table table tr th,
    .fee_guide_table table tr td {
        padding: 10px 1px;
    }
}

.fee_guide_table table tr th {
    background-color: #dcf7e9;
    padding: 16px;
}

@media screen and (min-width: 960px) {
    .fee_guide_table table tr th {
        font-size: 25px;
    }
}

@media screen and (max-width: 599px) {
    .fee_guide_table table tr th {
        padding: 10px;
    }
}

.fee_guide_table table tr th:first-child {
    background-color: #fff;
    width: 20%;
}

.fee_guide_table table tr th:nth-child(2) {
    color: #4bb582;
}

.fee_guide_table table tr th:last-child {
    font-weight: normal;
}

.fee_guide_table table tr th .detail_link {
    color: #4a79b3;
    font-weight: bold;
    text-decoration: none;
}

.fee_guide_table table tr td {
    background-color: #fff;
    padding: 16px;
}

@media screen and (min-width: 960px) {
    .fee_guide_table table tr td {
        font-size: 25px;
    }
}

.fee_guide_table table tr td:first-child {
    background-color: #e6e6e6;
}

@media screen and (min-width: 960px) {
    .fee_guide_table table tr td:first-child {
        font-size: 20px;
    }
}

.fee_guide_table table tr td:nth-child(2) {
    border-left: 3px solid red;
    border-right: 3px solid red;
}

@media screen and (min-width: 960px) {
    .fee_guide_table table tr td .caution_text {
        font-size: 25px;
    }
}

.fee_guide_table table tr:first-child th:nth-child(2) {
    border: 3px solid red;
    border-bottom: none;
}

.fee_guide_table table tr:last-child td:nth-child(2) {
    border-bottom: 3px solid red;
}

@media screen and (min-width: 960px) {
    .fee_guide_area {
        margin: 0 auto;
    }
}

.fee_guide_area .base_fee_area {
    color: #f93245;
    margin: 20px auto 0;
    width: 30%;
}

@media screen and (max-width: 599px) {
    .fee_guide_area .base_fee_area {
        width: 60%;
    }
}

.fee_guide_area .base_fee_area .strong_border {
    width: 10%;
}

.fee_box {
    border: 3px solid #000;
    margin: 10px auto 0;
    padding: 30px 0;
    width: 80%;
}

@media screen and (max-width: 599px) {
    .fee_box {
        padding: 20px 0;
        width: 100%;
    }
}

.fee_box .base_fee_number {
    font-size: 35px;
}

@media screen and (max-width: 599px) {
    .fee_box .base_fee_number {
        font-size: 8vw;
    }
}

.arrow_bottom_icon {
    width: 10%;
}

.flow_area {
    margin: 0 auto;
    width: 60%;
}

@media screen and (max-width: 599px) {
    .flow_area {
        width: 100%;
    }
}

.flow_area .step_image_area {
    margin: 20px auto 0;
    width: 30%;
}

@media screen and (max-width: 599px) {
    .flow_area .step_image_area {
        width: 50%;
    }
}

.plan_guide_area {
    margin-top: 50px;
}

@media screen and (max-width: 599px) {
    .plan_guide_area {
        margin-top: 30px;
    }
}

.plan_guide_area .plan_note {
    color: #f93245;
    text-align: right;
}

.plan_guide_area .plan_guide_detail {
    border: 1px solid #000;
    margin-top: 10px;
}

.plan_guide_area .plan_guide_detail .plan_title {
    background-color: #4bb582;
    color: #fff;
    font-weight: bold;
    font-size: 30px;
    margin: 0;
    padding: 30px 0;
    text-align: center;
}

.plan_guide_area .plan_guide_detail .plan_fee {
    border-top: 1px solid #000;
    color: #4bb582;
    font-size: 30px;
    padding: 10px 0;
    text-align: center;
}

.plan_guide_area .plan_guide_detail .plan_fee .fee_number {
    font-size: 50px;
}

.plan_guide_area .plan_guide_detail .plan_fee .first_month_free {
    color: #f93245;
    font-size: 30px;
}

.plan_guide_area .plan_guide_detail .plan_description {
    border-top: 1px solid #000;
    padding: 10px 30px 20px;
}

@media screen and (max-width: 599px) {
    .plan_guide_area .plan_guide_detail .plan_description {
        padding: 10px 20px 20px;
    }
}

.plan_guide_area .plan_guide_detail .plan_description .plan_description_list {
    list-style-type: none;
}

.plan_guide_area
    .plan_guide_detail
    .plan_description
    .plan_description_list
    .plan_description_list_detail {
    margin-top: 10px;
}

.noukun_image_area {
    margin: 10px auto 0;
    width: 10%;
}

@media screen and (max-width: 599px) {
    .noukun_image_area {
        width: 20%;
    }
}

@media screen and (max-width: 599px) {
    .sp-mt-0 {
        margin-top: 0;
    }
}

.border1,
.border2 {
    height: 30px;
    width: 30px;
}

@media screen and (max-width: 599px) {
    .border1,
    .border2 {
        height: 20px;
        width: 20px;
    }
}

@media screen and (max-width: 599px) {
    main {
        margin-top: 70px;
    }
}

.offer_guide_area {
    padding: 50px 0;
}

@media screen and (max-width: 599px) {
    .offer_guide_area {
        padding: 30px 3%;
    }
}

.before_login_top_content .content:nth-of-type(odd) {
    background-color: inherit;
}

h1 {
    margin-bottom: 0;
}

.video_program_guide_area {
    margin-top: 50px;
    padding: 0 3%;
}

@media screen and (max-width: 599px) {
    .video_program_guide_area {
        margin-top: 30px;
        padding: 0;
    }
}
