p, li, a, h2, h3 {
    color: #403E29;
}
.font600 {
    font-weight: 600;
}
.font900 {
    font-weight: 900;
}
.font_42 {
    font-size: 2.625rem;
}
.top_32 {
    margin-top: 2rem;
}
.center_item {
    text-align: center;
}
.left_auto {
    margin-left: auto;
}
.auto_center {
    margin: 0 auto;
}

.main_container_apl {
    max-width: 1200px;
    min-width: 1200px;
    padding: 0 1.25rem;
}

nav.header_area_apl {
    padding: 1rem 0;
}

.header_area_apl.flex_container {
    justify-content: space-between;
}

.header_area_apl.flex_container img {
    height: 2.5rem;
}
.main_container_apl h2 {
    line-height: 4rem;
}

span.marker {
    background: linear-gradient(transparent 60%, #FDFEE0 40%);
}

section#key__visual {
    background-color: #fff;
}

section#key__visual .main_container_apl {
    padding: 9.375rem 1.25rem 0 1.25rem;
}

section#key__visual .main_container_apl .flex_container img {
    height: 20rem;
    width: auto;
    margin-top: -2.43rem;
}

section#key__visual .main_container_apl {
    font-weight: bold;
}

section#top__vision {
    background: inherit;
}
section#top__vision .main_container_apl {
    padding-top: 9.375rem;
}
section#top__vision .main_container_apl p {
    padding: 0;
    margin-top: 0;
    line-height: inherit;
}
section#top__vision .main_container_apl h2 {
    font-size: 2.625rem;
    line-height: 4rem;
}
section#top__vision .main_container_apl p.top_32 {
    margin-top: 2rem;
}

.service_intro_card {
    box-shadow: 0 .2rem .375rem #00000024;
    padding: 2rem;
    border-radius: .5rem;
    max-width: 800px;
    margin: 0 auto;
}

section#top__service p {
    margin-top: 0;
    line-height: inherit;
    font-weight: normal;
}

section#top__vision .main_container_apl p {
    font-weight: normal;
}
section#top__vision .main_container_apl p.title_head_sub {
    font-weight: 600;
}

section#top__service p.title_head_sub {
    font-weight: 600;
}

section#top__service h2 {
    text-align: left;
    font-size: 2.625rem;
    font-family: "dnp-shuei-mgothic-std", sans-serif;
    margin-top: 0;
}

section#top__service .main_container_apl {
    padding-top: 9.375rem;
}


section#top__service .main_container_apl img {
    height: 17.875rem;
}

.lino_btn {
    margin-left: auto;
}
.lino_btn:nth-child(2) {
    margin-left: 1rem; 
}

.lino_btn a {
    font-size: 1.125rem;
    color: #fff;
    font-weight: 600;
    text-align: center;
    width: 11rem;
    border-radius: .5rem;
    display: block;
    padding: .5rem 0;
    background-color: #F85231;
    text-decoration: none;
    box-shadow: 0 .2rem .375rem #00000024;
}
.lino_btn.login a {
    background-color: #70C963;
}

footer {
    background-color: #FDFEE0;
}

footer#top__footer {
    padding-top: 2rem;
    min-width: 1200px;
}

footer#top__footer .main_container_apl.flex_container {
    max-width: calc(800px + 3rem);
    min-width: calc(800px + 3rem);
    margin: 0 auto;
    justify-content: space-between;
    align-items: center;
}

footer#top__footer p.copy {
    font-size: .875rem;
    text-align: center;
    padding: 2rem;
    margin-bottom: 0;
}

.sp {
    display: none;
}

@media screen and (max-width: 767px) {
    section#top__vision .main_container_apl h2, section#top__service h2, .main_container_apl h2 {
        font-size: 1.7rem;
        line-height: 3rem;
    }
    .sp {
        display: inherit;
    }
    nav.header_area_apl {
        left: 0;
    }
    .main_container_apl {
        min-width: inherit;
    }
    footer#top__footer {
        min-width: inherit;
    }
    footer#top__footer .main_container_apl.flex_container {
        min-width: inherit;
        display: inherit;
    }
    section#key__visual .main_container_apl .flex_container {
        display: inherit;
    }
    section#key__visual .main_container_apl .flex_container img {
        width: 100%;
        object-fit: cover;
        object-position: center;
    }
    .service_intro_card .flex_container {
        display: inherit;
    }
    .service_intro_card .flex_container.sp_flex {
        display: flex;
    }
    .service_intro_card .flex_container .left_auto {
        text-align: center;
    }
    .lino_btn a {
        width: 8rem;
    }
    .lino_btn {
        margin-top: 2rem;
        margin-left: auto;
        margin-right: auto;
    }
    .lino_btn:nth-child(2) {
        margin-left: 1rem; 
        margin-left: auto;
        margin-right: auto;
    }
    
    footer#top__footer .auto_center {
        max-width: 21.5rem;
    }
    footer#top__footer .sp.center_item {
        padding-bottom: 2rem;
    }
    .pc {
        display: none;
    }

}