.container {
    padding-top: 3.15vw;
}
.container .bg.item_2 {
    width: 13.8vw;
    right: 6vw;
    top: 27.5vw;
}

.profile {
    margin: auto 5.44vw;
}
.profile .profile_title {
    font-family: KaiminSoStd-Heavy;
    font-weight: normal;
    font-size: 2.92vw;
    line-height: 5.1vw;
    text-align: left;
    color: #231815;
    margin-bottom: 1.65vw;
}
.profile .profile_detail {
    display: flex;
    align-items: flex-start;
}
.profile .profile_detail .profile_photo {
    width: 20vw;
    margin-right: 4.18vw;
}
.profile .profile_detail .profile_photo img {
    width: 100%;
    display: block;
}
.profile .profile_detail .profile_content {
    width: calc(100% - 24.18vw);
}
.profile .profile_detail .profile_content .subtitle {
    font-family: UDShinGoPr6-Regular;
    font-weight: normal;
    font-size: 1.98vw;
    line-height: 3.46vw;
    color: #231815;
    margin-bottom: 0.7vw;
}
.profile .profile_detail .profile_content .profile_text {
    font-family: UDShinGoPr6-Regular;
    font-weight: normal;
    font-size: 1.56vw;
    letter-spacing: 0.05em;
    line-height: 2.3vw;
    color: #231815;
}
.profile .profile_detail .profile_content .name {
    font-family: KsoSennin;
    font-weight: normal;
    font-style: italic;
    font-size: 2.3vw;
    letter-spacing: 0.06em;
    line-height: 4vw;
    color: #231815;
}
.profile .profile_detail .profile_content .name .big {
    font-size: 3.97vw;
    letter-spacing: 0.14em;
    line-height: 6.95vw;
    margin-left: 2vw;
}

.company_info {
    padding-top: 5.4vw;
    margin: auto 5.44vw;
}
.company_info .info_title {
    font-family: KaiminSoStd-Heavy;
    font-weight: normal;
    font-size: 2.92vw;
    line-height: 5.1vw;
    color: #231815;
    margin-bottom: 1vw;
}
.company_info .info_content {
    width: 72vw;
}
.company_info .info_content .info_item {
    display: flex;
    font-family: UDShinGoPr6-Regular;
    font-weight: normal;
    font-size: 1.56vw;
    letter-spacing: 0.05em;
    line-height: 3.32vw;
    color: #231815;
    border-bottom: 1px solid #727171;
}
.company_info .info_content .info_item:first-child {
    border-top: 1px solid #727171;
}
.company_info .info_content .info_item .info_label {
    width: 11.6%;
    margin-right: 4.4%;
    text-align-last: justify;
    white-space: nowrap;
    display: flex;
    justify-content: space-between;
}
.company_info .info_content .info_item .info_text {
    width: 85%;
}

.history_info {
    padding-top: 4.67vw;
    margin: auto 5.44vw;
}
.history_info .info_title {
    font-family: KaiminSoStd-Heavy;
    font-weight: normal;
    font-size: 2.92vw;
    line-height: 5.1vw;
    color: #231815;
    margin-bottom: 1vw;
}
.history_info .info_content {
    width: 72vw;
}
.history_info .info_content .info_item {
    display: flex;
    font-family: UDShinGoPr6-Regular;
    font-weight: normal;
    font-size: 1.56vw;
    letter-spacing: -0.05vw;
    line-height: 3.32vw;
    color: #231815;
    border-bottom: 1px solid #727171;
}
.history_info .info_content .info_item:first-child {
    border-top: 1px solid #727171;
}
.history_info .info_content .info_item .info_label {
    width: 23.6%;
    margin-right: 4.4%;
    text-align-last: justify;
    white-space: nowrap;
}
.history_info .info_content .info_item .info_text {
    width: 72%;
}

.position_info {
    padding-top: 5.4vw;
    margin: auto 5.44vw;
}
.position_info .info_title {
    font-family: KaiminSoStd-Heavy;
    font-weight: normal;
    font-size: 2.92vw;
    line-height: 5.1vw;
    color: #231815;
    margin-bottom: 1vw;
}
.position_info .info_content {
    display: flex;
    justify-content: space-between;
}
.position_info .info_content .info_item {
    width: 42.4vw;
}
.position_info .info_content .info_item .info_detail {
    width: 100%;
    display: flex;
    justify-content: space-between;
    min-height: 12.65vw;
    flex-direction: row-reverse;
}
.position_info .info_content .info_item .info_detail .info_text {
    font-family: UDShinGoPr6-Regular;
    font-weight: normal;
    font-size: 1.56vw;
    letter-spacing: 0.05em;
    line-height: 2.1vw;
    color: #231815;
}
.position_info .info_content .info_item .info_detail .info_photo {
    width: 12.66vw;
    display: block;
}
.position_info .info_content .info_item .info_detail .info_photo img {
    width: 100%;
    display: block;
}
.position_info .info_content .info_item .info_map {
    position: relative;
    width: 100%;
    padding-top: 75%;
}
.position_info .info_content .info_item .info_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media(max-width: 768px) {
    .container .bg.item_2 {
        width: 19.62vw;
        right: 7.5vw;
        top: 165vw;
    }

    .profile {
        margin: auto;
        width: 85%;
    }
    .profile .profile_title {
        font-size: 7.4vw;
        letter-spacing: 0.05em;
        line-height: 7vw;
        text-align: center;
    }
    .profile .profile_detail {
        flex-direction: column;
    }
    .profile .profile_detail .profile_photo {
        width: 100%;
        display: flex;
        align-items: flex-end;
    }
    .profile .profile_detail .profile_photo img {
        width: 28.86vw;
        margin-right: 3.14vw;
    }
    .profile .profile_detail .profile_photo .subtitle {
        width: calc(100% - 32vw);
        font-family: UDShinGoPr6-Regular;
        font-weight: normal;
        font-size: 4.44vw;
        line-height: 6.67vw;
        text-align: left;
        color: #231815;
        white-space: nowrap;
    }
    .profile .profile_detail .profile_content {
        width: 100%;
        margin-top: 4.2vw;
    }
    .profile .profile_detail .profile_content .profile_text {
        font-size: 3.7vw;
        letter-spacing: 0.03em;
        line-height: 5.56vw;
    }
    .profile .profile_detail .profile_content .name {
        font-size: 5vw;
        line-height: 9vw;
    }
    .profile .profile_detail .profile_content .name .big {
        font-size: 9vw;
        line-height: 15vw;
    }

    .company_info {
        margin: auto;
        width: 85vw;
        padding-top: 25vw;
    }
    .company_info .info_title {
        font-size: 7.4vw;
        line-height: 13vw;
    }
    .company_info .info_content {
        width: 100%;
    }
    .company_info .info_content .info_item {
        font-size: 3.7vw;
        letter-spacing: 0.05em;
        line-height: 5.4vw;
        padding: 1vw 0;
    }
    .company_info .info_content .info_item .info_label {
        width: 25.7%;
        margin-right: 5.6%;
        letter-spacing: -0.01vw;
    }
    .company_info .info_content .info_item .info_text {
        width: 68.7%;
    }

    .history_info {
        margin: auto;
        width: 85vw;
    }
    .history_info .info_title {
        font-size: 7.4vw;
        line-height: 13vw;
    }
    .history_info .info_content {
        width: 100%;
    }
    .history_info .info_content .info_item {
        font-size: 3.7vw;
        letter-spacing: 0.05em;
        line-height: 5.4vw;
        padding: 1vw 0;
    }
    .history_info .info_content .info_item .info_label {
        width: 26.7%;
        margin-right: 5.6%;
        letter-spacing: -0.01vw;
        text-align-last: auto;
    }
    .history_info .info_content .info_item .info_text {
        width: 67.7%;
    }

    .position_info {
        width: 85vw;
        margin: auto;
    }
    .position_info .info_title {
        font-size: 7.4vw;
        line-height: 13vw;
    }
    .position_info .info_content {
        flex-direction: column;
    }
    .position_info .info_content .info_item {
        width: 100%;
        margin-bottom: 5vw;
    }
    .position_info .info_content .info_item .info_detail {
        display: block;
    }
    .position_info .info_content .info_item .info_detail .info_text {
        font-size: 3.7vw;
        letter-spacing: 0.05em;
        line-height: 5.56vw;
    }
    .position_info .info_content .info_item .info_detail .info_photo {
        float: right;
        width: 30vw;
        height: 20vw;
        margin-left: 10vw;
        margin-bottom: 1vw;
    }
    .position_info .info_content .info_item .info_detail .info_photo img {
        height: 100%;
    }
    .position_info .info_content .info_item .info_map {
        margin-top: 2vw;
        padding-top: 80%;
    }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .profile .profile_title {
        font-family: 'Noto Serif JP', serif;
        font-weight: bold;
    }
    .profile .profile_detail .profile_content .subtitle {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
    }
    .profile .profile_detail .profile_content .profile_text {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
    }
    .profile .profile_detail .profile_content .name {
        /* font-family: YakuHanJP,"游ゴシック",YuGothic,"ヒラギノ角ゴ  ProN W3",Hiragino Kaku Gothic ProN,"メイリオ",Meiryo,sans-serif; */
        font-family: "Noto Sans JP", sans-serif;
        font-weight: bold;
        font-style: italic;
    }
    .company_info .info_title {
        font-family: 'Noto Serif JP', serif;
        font-weight: bold;
    }
    .company_info .info_content .info_item {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
    }
    .history_info .info_title {
        font-family: 'Noto Serif JP', serif;
        font-weight: bold;
    }
    .history_info .info_content .info_item {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
    }
    .position_info .info_title {
        font-family: 'Noto Serif JP', serif;
        font-weight: bold;
    }
    .position_info .info_content .info_item .info_detail .info_text {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
    }
    .profile .profile_detail .profile_photo .subtitle {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
    }
}