@charset "UTF-8";

/* ブレイクポイント
sp　〜600px
tab&pc　601px〜
greeting pc 960px〜
*/

/* ==============
Greeting
============== */
.greeting {
    padding-bottom: 80px;
    margin-bottom: 80px;
    background-color: #fff;
}

.greeting .greeting_inner .greeting_img img {
    width: 100%;
    margin-bottom: 8px;
}

.content_title {
    display: block;
    font-size: 4rem;
    text-align: center;
    color: var(--color-blue);
    font-family: var(--font_en);
    font-weight: 500;
    opacity: .5;
    letter-spacing: 1.5rem;
}

.greeting .greeting_inner .greeting_text .greeting_maintext .greeting_name {
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}

h2 {
    font-size: 1.6rem;
    text-align: center;
    margin-right: 32px;
}

.greeting .greeting_inner .greeting_text .greeting_maintext {
    margin-bottom: 24px;
}

.facility_text p {
    font-size: 1.3rem;
    font-weight: 300;
    text-align: justify;
}

.greeting_maintext p {
    font-size: 1.3rem;
    font-weight: 300;
    text-align: justify;
}

.greeting .greeting_inner .greeting_text .greeting_subtext dt {
    font-size: 1.3rem;
    font-weight: 500;
    margin-bottom: 16px;
}

.greeting .greeting_inner .greeting_text .greeting_subtext dd {
    font-size: 1.3rem;
    font-weight: 300;
    margin-bottom: 16px;
}

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

    .greeting .greeting_inner .greeing_content {
        display: flex;
        justify-content: flex-end;
        flex-direction: row-reverse;
    }

    .greeting .greeting_inner .greeting_img {
        margin-right: 16px;
    }

    .greeting .greeting_inner .greeting_img img {
        width: 420px;
        margin-bottom: 8px;
    }

    .greeting .greeting_inner .greeing_content .content_title {
        transform: rotate(90deg) translateX(100%);
        transform-origin: right top;
        font-size: 7.5rem;
        position: absolute;
        right: 0;
    }

    .greeting_text p {
        font-size: 1.4rem;
        line-height: 2;
    }

    .facility_text p {
        font-size: 1.4rem;
        line-height: 2;
    }

    .greeting .greeting_inner .greeing_content .greeting_text {
        margin-right: 140px;
    }

    .greeting .greeting_inner .greeing_content .greeting_text .greeting_subtext {
        display: flex;
        justify-content: flex-start;
    }

    .greeting .greeting_inner .greeing_content .greeting_text .greeting_subtext .career_text {
        margin-right: 64px;
    }

    /*======min-width:960px======*/
}

/* ==============
Facility
============== */
.facility {
    padding-bottom: 80px;
}

.facility_inner {
    padding: 0 16px;
}

.facility .facility_inner .facility_content h2 {
    margin-top: 32px;
    margin-right: 0;
    margin-bottom: 16px;
}

.facility .facility_inner .facility_content .content_title .facility_text p {
    margin-bottom: 16px;
}

.facility .facility_inner .facility_content ul li {
    margin-bottom: 16px;
}

.facility .facility_inner .facility_content ul li figure figcaption {
    font-size: 1.3rem;
    font-weight: 300;
}

.facility .facility_inner .facility_content ul li img {
    width: 100%;
}

@media screen and (min-width:960px) {
    .facility_inner {
        padding: 0 0px;
    }

    .facility .facility_inner .facility_content {
        display: flex;
        justify-content: space-between;
        margin-left: 140px;
    }

    .facility .facility_inner .facility_content .content_title {
        transform: rotate(-90deg) translateX(-100%);
        transform-origin: left top;
        font-size: 7.5rem;
        position: absolute;
        left: 0;
    }

    .facility .facility_inner .facility_content ul {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .facility .facility_inner .facility_content ul li {
        width: 48%;
    }

    .facility .facility_inner .facility_content ul li img {
        width: 400px;

    }

    .facility .facility_inner .facility_content .radius {
        border-radius: 56px 0px 0px 0px;
    }

    /*======min-width:960px======*/
}

/* ==============
mv
============== */
.mv {
    position: fixed;
    width: 100%;
    height: 100vh;
    z-index: -1;
    top: 0;
    left: 0;
}

.mv img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
    opacity: .3;
}