@charset "UTF-8";

.title {
    color: #1E4592;
    font-size: 2.875rem;
    font-weight: 600;
    margin-bottom: 30px;
}

.title span {
    color: #666;
    font-size: 1.3125rem;
    display: block;
    margin-top: .5em;
}

.company_text {
    font-size: 1.125rem;
    line-height: 2;
}

/* mv */

.mv {
    position: relative;
}

.mv_image {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 0% 30%;
    object-position: 0% 30%;
    width: 100%;
}

/* for_future */

.just_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 75px;
}

.just_image {
    width: 50%;
}

.just_text {
    width: 40%;
}

.about_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    margin-top: 20px;
}

.about_image {
    width: 30%;
}

.about_text {
    width: 65%;
}

.company_about {
    margin: 70px auto 0;
    border-top: 3px solid #1E4592;
    border-bottom: 3px solid #1E4592;
    padding: 20px 1em;
    width: 60%;

}

.company_about dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    line-height: 2;

}

.company_about dt {
    width: 150px;
    font-weight: 300;
}

/* greeting */

.greeting {
    margin-top: 75px;
}

.greeting_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

}

.greeting_image {
    width: 25%;
}

.greeting_comment {
    width: 5%;
}

.greeting_comment_text_wrap {
    width: 90%;
}

.greeting_text_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 70%;
}

.greeting_text:last-of-type {
    margin-top: 2em;
}

/* sp */

@media (max-width:768px) {

    .title {
        font-size: 1.9375rem;
        margin-bottom: 30px;
    }

    .title span {
        font-size: 1rem;
    }

    .company_text {
        font-size: 0.875rem;
    }

    .mv {
        margin-top: 90px;
    }

    /* for_future */

    .just_wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-top: 16px;
    }

    .just {
        position: relative;
        overflow: hidden;
        padding: 10% 0 0;

    }

    .just_image {
        width: 100%;
    }

    .just_text {
        width: 100%;
        margin-top: -25%;
    }

    .just_about_image {
        margin-left: 16%;
    }

    .just_about_image img {
        -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
        transform: scale(1.2);
    }

    .about_wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .about_image {
        width: 60%;
    }

    .about_text {
        font-size: 0.875rem;
        width: 100%;
        margin-top: 20px;
    }

    .company_about {
        margin: 10px auto 0;
        padding: 20px 1em;
        width: 100%;

    }

    .company_about dt {
        width: 75px;
    }

    .greeting {
        margin-top: 15px;
    }

    .greeting_wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .greeting_image {
        width: 100%;
    }

    .greeting_comment_text_wrap {
        width: 83%;
        margin-top: 1em;
    }

    .greeting_comment {
        margin: 10% 1% 0 1%;
        width: 6vw;
    }

    .greeting_text_wrap {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        width: 100%;
    }
}