.first_view .photo .photo_container {
    background-image: url("../img/fv.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
@media screen and (max-width: 979px) {
    .first_view .photo .photo_container {
        background-image: url("../img/fv_mb.jpg");
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: cover;
    }
}

#main .first_view {
    width: 100%;
    height: 100vh;
    height: 100svh;
}
#main .first_view .logo_top {
    position: absolute;
    top: 0;
    left: 0;
}
@media screen and (max-width: 979px) {
    #main .first_view .logo_top {
        display: none;
    }
}
#main .first_view .logo_top .logo a .logo_container {
    width: 224px;
    height: 86px;
    background-color: #fff;
}
@media screen and (max-width: 1199px) {
    #main .first_view .logo_top .logo a .logo_container {
        width: 190px;
        height: 70px;
    }
}
@media screen and (max-width: 599px) {
    #main .first_view .logo_top .logo a .logo_container {
        width: 156px;
        height: 60px;
    }
}
#main .first_view .logo_top .logo a .logo_container .svg {
    padding-top: 25px;
    padding-left: 25px;
}
@media screen and (max-width: 1199px) {
    #main .first_view .logo_top .logo a .logo_container .svg {
        padding-top: 19.5px;
        padding-left: 19.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .first_view .logo_top .logo a .logo_container .svg {
        padding-top: 17px;
        padding-left: 17px;
    }
}
@media screen and (max-width: 1199px) {
    #main .first_view .logo_top .logo a .logo_container .svg svg {
        width: 150px;
        height: 31px;
    }
}
@media screen and (max-width: 599px) {
    #main .first_view .logo_top .logo a .logo_container .svg svg {
        width: 125.5px;
        height: 26px;
    }
}
#main .first_view .logo_top .logo a .logo_container .svg svg .st0_logo {
    fill: #00a0eb;
}
#main .first_view .logo_top .logo a .logo_container .svg svg .st1_logo {
    fill: #0076c5;
}
#main .first_view .logo_top .logo a .logo_container .svg svg .st2_logo {
    fill: #004793;
}
#main .first_view .logo_top .logo a .logo_container .svg svg .st3_logo {
    fill: #737272;
}
#main .first_view .photo {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
@media screen and (max-width: 979px) {
    #main .first_view .photo {
        padding-top: 70px;
    }
}
@media screen and (max-width: 599px) {
    #main .first_view .photo {
        padding-top: 60px;
    }
}
#main .first_view .photo .photo_container {
    opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    width: 100%;
    height: 100%;
}
#main .first_view .photo .photo_container img {
    opacity: 0;
    position: relative;
    z-index: -1;
}
#main .first_view.fadeIn .photo .photo_container {
    -webkit-transition: opacity 1s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1s cubic-bezier(0.25, 1, 0.5, 1);
    transition: opacity 1s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1s cubic-bezier(0.25, 1, 0.5, 1);
    transition: opacity 1s cubic-bezier(0.33, 1, 0.68, 1), transform 1s cubic-bezier(0.25, 1, 0.5, 1);
    transition: opacity 1s cubic-bezier(0.33, 1, 0.68, 1), transform 1s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 1s cubic-bezier(0.25, 1, 0.5, 1);
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
}
#main .page_title {
    margin-top: 120px;
    margin-left: auto;
    margin-right: auto;
    width: 1100px;
}
@media screen and (max-width: 1199px) {
    #main .page_title {
        margin-top: 95px;
    }
}
@media screen and (max-width: 599px) {
    #main .page_title {
        margin-top: 70px;
    }
}
@media screen and (max-width: 1199px) {
    #main .page_title {
        width: 88vw;
    }
}
#main .page_title .title h1 {
    font-family: "Noto Serif JP", serif;
    font-size: 38px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: 0.25em;
    color: #004990;
    text-align: center;
}
#main .page_title .title h1 span {
    font-weight: 500;
}
#main .page_title .title h1 span.h {
    font-size: 34.2px;
}
@media screen and (max-width: 1199px) {
    #main .page_title .title h1 {
        font-size: 32px;
    }
    #main .page_title .title h1 span.h {
        font-size: 28.8px;
    }
}
@media screen and (max-width: 599px) {
    #main .page_title .title h1 {
        font-size: 26px;
    }
    #main .page_title .title h1 span.h {
        font-size: 23.4px;
    }
}
#main .page_title .title h1 span.h {
    letter-spacing: 0.2em;
}
#main .page_title .lead {
    margin-top: 60px;
}
@media screen and (max-width: 1199px) {
    #main .page_title .lead {
        margin-top: 51px;
    }
}
@media screen and (max-width: 599px) {
    #main .page_title .lead {
        margin-top: 42px;
    }
}
#main .page_title .lead p {
    margin-top: -9.5px;
    margin-bottom: -9.5px;
    font-size: 16px;
    font-weight: 400;
    line-height: 35px;
    letter-spacing: 0.05em;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    #main .page_title .lead p {
        margin-top: -8.25px;
        margin-bottom: -8.25px;
        font-size: 15px;
        line-height: 31.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .page_title .lead p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 14px;
        line-height: 28px;
    }
}
@media screen and (max-width: 599px) {
    #main .page_title .lead p {
        text-align: justify;
    }
}
@media screen and (max-width: 599px) {
    #main .page_title .lead p br {
        display: none;
    }
}
@media screen and (max-width: 599px) {
    #main .page_title .lead p span.b {
        display: inline;
    }
}
#main .info_content {
    margin-top: 150px;
    margin-left: auto;
    margin-right: auto;
    width: 1100px;
}
@media screen and (max-width: 1199px) {
    #main .info_content {
        margin-top: 112px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content {
        margin-top: 75px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content {
        width: 88vw;
    }
}
#main .info_content .info_title {
    text-align: center;
    position: relative;
}
#main .info_content .info_title .line {
    -webkit-transition: width 1s cubic-bezier(0.25, 1, 0.5, 1), left 1s cubic-bezier(0.25, 1, 0.5, 1);
    transition: width 1s cubic-bezier(0.25, 1, 0.5, 1), left 1s cubic-bezier(0.25, 1, 0.5, 1);
    width: 0%;
    height: 1px;
    background-color: #000;
    position: absolute;
    top: 50%;
    left: 50%;
}
@media screen and (max-width: 599px) {
    #main .info_content .info_title .line {
        display: none;
    }
}
#main .info_content .info_title .line.fadeIn {
    width: 100%;
    left: 0%;
}
#main .info_content .info_title .title {
    display: inline-block;
    margin: 0 auto;
    padding: 0 30px;
    background-color: #fff;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .info_content .info_title .title {
        padding: 0 20px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_title .title {
        padding: 0;
    }
}
#main .info_content .info_title .title h2 {
    margin-top: calc(0px - 0.35em);
    margin-bottom: calc(0px - 0.35em);
    font-family: "Noto Serif JP", serif;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.7em;
    letter-spacing: 0.25em;
    color: #0075c2;
}
#main .info_content .info_title .title h2 span {
    font-weight: 500;
}
#main .info_content .info_title .title h2 span.h {
    font-size: 28.8px;
}
@media screen and (max-width: 1199px) {
    #main .info_content .info_title .title h2 {
        font-size: 26px;
    }
    #main .info_content .info_title .title h2 span.h {
        font-size: 23.4px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_title .title h2 {
        font-size: 20px;
    }
    #main .info_content .info_title .title h2 span.h {
        font-size: 18px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_title.line_visible .line {
        display: block;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_title.line_visible .title {
        padding: 0 10px;
    }
}
#main .info_content .info_lead {
    margin-top: 60px;
}
@media screen and (max-width: 1199px) {
    #main .info_content .info_lead {
        margin-top: 50px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_lead {
        margin-top: 35px;
    }
}
#main .info_content .info_lead p {
    margin-top: -9.5px;
    margin-bottom: -9.5px;
    font-size: 16px;
    font-weight: 400;
    line-height: 35px;
    letter-spacing: 0.05em;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    #main .info_content .info_lead p {
        margin-top: -8.25px;
        margin-bottom: -8.25px;
        font-size: 15px;
        line-height: 31.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_lead p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 14px;
        line-height: 28px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_lead p {
        text-align: justify;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_lead p br {
        display: none;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_lead p span.b {
        display: inline;
    }
}
#main .info_content .info_body {
    margin-top: 60px;
    margin-left: auto;
    margin-right: auto;
    width: 900px;
}
@media screen and (max-width: 1199px) {
    #main .info_content .info_body {
        margin-top: 50px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_body {
        margin-top: 35px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content .info_body {
        width: 88vw;
    }
}
#main .info_content .info_body p {
    margin-top: -9.5px;
    margin-bottom: -9.5px;
    font-size: 16px;
    font-weight: 400;
    line-height: 35px;
    letter-spacing: 0.05em;
    text-align: justify;
}
@media screen and (max-width: 1199px) {
    #main .info_content .info_body p {
        margin-top: -8.25px;
        margin-bottom: -8.25px;
        font-size: 15px;
        line-height: 31.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content .info_body p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 14px;
        line-height: 28px;
    }
}
#main .info_content.info_content_corporate_philosophy .philosophy {
    margin-top: 60px;
    margin-left: auto;
    margin-right: auto;
    width: 880px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_corporate_philosophy .philosophy {
        margin-top: 51px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_corporate_philosophy .philosophy {
        margin-top: 42px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_corporate_philosophy .philosophy {
        width: 740px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_corporate_philosophy .philosophy {
        width: 500px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_corporate_philosophy .philosophy {
        width: 78vw;
    }
}
@media screen and (max-width: 439px) {
    #main .info_content.info_content_corporate_philosophy .philosophy {
        width: 88vw;
    }
}
#main .info_content.info_content_corporate_philosophy .philosophy .bg {
    background-color: #0075c2;
    border-radius: 5px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
#main .info_content.info_content_corporate_philosophy .philosophy .content {
    padding: 60px 20px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_corporate_philosophy .philosophy .content {
        padding: 50px 20px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_corporate_philosophy .philosophy .content {
        padding: 40px 15px;
    }
}
#main .info_content.info_content_corporate_philosophy .philosophy .content .text {
    margin-top: calc(0px - 0.4em);
    margin-bottom: calc(0px - 0.4em);
    font-family: "Noto Serif JP", serif;
    font-size: 26px;
    font-weight: 500;
    line-height: 1.8em;
    letter-spacing: 0.2em;
    color: #fff;
    text-align: center;
}
#main .info_content.info_content_corporate_philosophy .philosophy .content .text span {
    font-weight: 500;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_corporate_philosophy .philosophy .content .text {
        font-size: 22px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_corporate_philosophy .philosophy .content .text {
        font-size: 18px;
    }
}
#main .info_content.info_content_corporate_philosophy .info_lead {
    margin-top: 60px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_corporate_philosophy .info_lead {
        margin-top: 51px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_corporate_philosophy .info_lead {
        margin-top: 42px;
    }
}
#main .info_content.info_content_management_philosophy .joy {
    margin-top: 60px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy {
        margin-top: 51px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy {
        margin-top: 42px;
    }
}
#main .info_content.info_content_management_philosophy .joy .title {
    display: inline-block;
    width: 400px;
    border: 1px solid #000;
    border-radius: 5px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .title {
        width: 340px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .title {
        width: 280px;
    }
}
#main .info_content.info_content_management_philosophy .joy .title .text {
    padding: 18px 0;
    padding-left: 0.2em;
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: 0.2em;
    text-align: center;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
}
#main .info_content.info_content_management_philosophy .joy .title .text span {
    font-weight: 500;
}
#main .info_content.info_content_management_philosophy .joy .title .text span.h {
    font-size: 25.2px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .title .text {
        font-size: 23.5px;
    }
    #main .info_content.info_content_management_philosophy .joy .title .text span.h {
        font-size: 21.15px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .title .text {
        font-size: 19px;
    }
    #main .info_content.info_content_management_philosophy .joy .title .text span.h {
        font-size: 17.1px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .title .text {
        padding: 15px 0;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .title .text {
        padding: 12px 0;
        -webkit-transform: translateY(-1px);
                transform: translateY(-1px);
    }
}
#main .info_content.info_content_management_philosophy .joy .lead {
    margin-top: 50px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .lead {
        margin-top: 42px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .lead {
        margin-top: 34px;
    }
}
#main .info_content.info_content_management_philosophy .joy .lead p {
    margin-top: -9.5px;
    margin-bottom: -9.5px;
    font-size: 16px;
    font-weight: 400;
    line-height: 35px;
    letter-spacing: 0.05em;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .lead p {
        margin-top: -8.25px;
        margin-bottom: -8.25px;
        font-size: 15px;
        line-height: 31.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .lead p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 14px;
        line-height: 28px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .lead p {
        text-align: justify;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .lead p br {
        display: none;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .lead p span.b {
        display: inline;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 60px 1fr 60px 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 60px;
       -moz-column-gap: 60px;
            column-gap: 60px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 60px;
    margin-left: auto;
    margin-right: auto;
    width: 930px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .illust {
        margin-top: 51px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust {
        margin-top: 42px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .illust {
        width: 780px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_management_philosophy .joy .illust {
        -webkit-column-gap: 4vw;
           -moz-column-gap: 4vw;
                column-gap: 4vw;
        width: 88vw;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        row-gap: 30px;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box .head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 10px;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head {
        width: 200px;
        height: 200px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head {
        margin: 0 1vw;
        width: 24.6666666667vw;
        height: 24.6666666667vw;
    }
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head {
        margin: 0 auto;
        width: 26.6666666667vw;
        height: 26.6666666667vw;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head {
        width: 160px;
        height: 160px;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box .head:before {
    content: "";
    display: inline-block;
    margin: 2px;
    border: 3px solid #fff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head:before {
        border: 2px solid #fff;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head:before {
        border: 1px solid #fff;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box .head h3 {
    padding-left: 0.15em;
    margin-top: calc(0px - 0.3em);
    margin-bottom: calc(0px - 0.3em);
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.6em;
    letter-spacing: 0.15em;
    color: #fff;
    position: relative;
}
#main .info_content.info_content_management_philosophy .joy .illust .box .head h3 span {
    font-weight: 500;
}
#main .info_content.info_content_management_philosophy .joy .illust .box .head h3 span.h {
    font-size: 25.2px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head h3 {
        font-size: 23.5px;
    }
    #main .info_content.info_content_management_philosophy .joy .illust .box .head h3 span.h {
        font-size: 21.15px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .head h3 {
        font-size: 19px;
    }
    #main .info_content.info_content_management_philosophy .joy .illust .box .head h3 span.h {
        font-size: 17.1px;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box .body {
    margin-top: 30px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .body {
        margin-top: 25px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .body {
        margin-top: 20px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .body {
        margin-left: auto;
        margin-right: auto;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box .body p {
    margin-top: -9px;
    margin-bottom: -9px;
    font-size: 15px;
    font-weight: 400;
    line-height: 33px;
    letter-spacing: 0.05em;
    text-align: justify;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .body p {
        margin-top: -8px;
        margin-bottom: -8px;
        font-size: 14px;
        line-height: 30px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .body p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 13px;
        line-height: 27px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box .body p {
        text-align: center;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(1) .head {
    background-color: #00a0e9;
}
#main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(2) .head {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
    background-color: #0075c2;
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(2) .head {
        -webkit-transition-delay: 0s;
                transition-delay: 0s;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(2) .body {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(2) .body {
        -webkit-transition-delay: 0s;
                transition-delay: 0s;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(3) .head {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
    background-color: #004990;
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(3) .head {
        -webkit-transition-delay: 0s;
                transition-delay: 0s;
    }
}
#main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(3) .body {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_management_philosophy .joy .illust .box:nth-of-type(3) .body {
        -webkit-transition-delay: 0s;
                transition-delay: 0s;
    }
}
#main .history {
    margin-top: 150px;
    padding: 100px 0;
    margin-left: auto;
    margin-right: auto;
    width: 1100px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .history {
        margin-top: 112px;
    }
}
@media screen and (max-width: 599px) {
    #main .history {
        margin-top: 75px;
    }
}
@media screen and (max-width: 1199px) {
    #main .history {
        width: 88vw;
    }
}
@media screen and (max-width: 1199px) {
    #main .history {
        padding: 75px 0;
    }
}
@media screen and (max-width: 599px) {
    #main .history {
        padding: 50px 0;
        width: 94vw;
    }
}
#main .history .bg {
    background-color: #e0f4fc;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
#main .history .title {
    position: relative;
}
#main .history .title h2 {
    padding: 0 30px;
    margin-top: calc(0px - 0.35em);
    margin-bottom: calc(0px - 0.35em);
    font-family: "Noto Serif JP", serif;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.7em;
    letter-spacing: 0.25em;
    color: #0075c2;
    text-align: center;
}
#main .history .title h2 span {
    font-weight: 500;
}
#main .history .title h2 span.h {
    font-size: 28.8px;
}
@media screen and (max-width: 1199px) {
    #main .history .title h2 {
        font-size: 26px;
    }
    #main .history .title h2 span.h {
        font-size: 23.4px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .title h2 {
        font-size: 20px;
    }
    #main .history .title h2 span.h {
        font-size: 18px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .title h2 {
        margin-left: 5vw;
        margin-right: 5vw;
        padding: 0;
    }
}
#main .history .lead {
    margin-top: 60px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .history .lead {
        margin-top: 45px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .lead {
        margin-top: 30px;
    }
}
#main .history .lead p {
    padding: 0 30px;
    margin-top: -9.5px;
    margin-bottom: -9.5px;
    font-size: 16px;
    font-weight: 400;
    line-height: 35px;
    letter-spacing: 0.05em;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    #main .history .lead p {
        margin-top: -8.25px;
        margin-bottom: -8.25px;
        font-size: 15px;
        line-height: 31.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .lead p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 14px;
        line-height: 28px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .lead p {
        margin-left: 5vw;
        margin-right: 5vw;
        padding: 0;
        text-align: justify;
    }
}
@media screen and (max-width: 599px) {
    #main .history .lead p span.b {
        display: inline;
    }
}
#main .history .history_content {
    margin: 0 auto;
    margin-top: 70px;
    width: 790px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content {
        margin-top: 59px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content {
        margin-top: 48px;
    }
}
@media screen and (max-width: 1199px) {
    #main .history .history_content {
        width: 68vw;
    }
}
@media screen and (max-width: 979px) {
    #main .history .history_content {
        width: 72vw;
    }
}
@media screen and (max-width: 779px) {
    #main .history .history_content {
        width: 76vw;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content {
        width: 84vw;
    }
}
#main .history .history_content .history_box {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 130px 30px 1fr;
    grid-template-columns: 130px 1fr;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
    margin-top: 60px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box {
        margin-top: 51px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box {
        margin-top: 42px;
    }
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box {
        -ms-grid-columns: 95px 20px 1fr;
        grid-template-columns: 95px 1fr;
        -webkit-column-gap: 20px;
           -moz-column-gap: 20px;
                column-gap: 20px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box {
        -ms-grid-columns: 60px 12px 1fr;
        grid-template-columns: 60px 1fr;
        -webkit-column-gap: 12px;
           -moz-column-gap: 12px;
                column-gap: 12px;
    }
}
#main .history .history_content .history_box .line {
    width: 1px;
    background-image: linear-gradient(to bottom, #000, #000 1px, transparent 1px, transparent 3px);
    background-size: 1px 3px;
    background-position: left top;
    background-repeat: repeat-y;
    position: absolute;
    left: 65px;
    top: 60px;
    bottom: -50px;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .line {
        left: 47.5px;
        top: 46px;
        bottom: -43px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .line {
        left: 30px;
        top: 32px;
        bottom: -36px;
    }
}
#main .history .history_content .history_box .year {
    width: 130px;
    height: 50px;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .year {
        width: 95px;
        height: 38px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .year {
        width: 60px;
        height: 26px;
    }
}
#main .history .history_content .history_box .year .shape {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 50px;
    border: 1px solid #000;
    border-radius: 25px;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .year .shape {
        height: 38px;
        border-radius: 19px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .year .shape {
        height: 26px;
        border-radius: 13px;
    }
}
#main .history .history_content .history_box .year .shape .text {
    margin-top: 1px;
    padding-left: 0.1em;
    font-family: "Frank Ruhl Libre", serif;
    font-size: 28px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: 0.1em;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .year .shape .text {
        font-size: 23px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .year .shape .text {
        font-size: 19px;
    }
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .year .shape .text {
        font-size: 22px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .year .shape .text {
        font-size: 16px;
    }
}
#main .history .history_content .history_box .content .head {
    margin-top: 12px;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .content .head {
        margin-top: 8px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .content .head {
        margin-top: 4px;
    }
}
#main .history .history_content .history_box .content .head h3 {
    margin-top: calc(0px - 0.25em);
    margin-bottom: calc(0px - 0.25em);
    font-family: "Noto Serif JP", serif;
    font-size: 26px;
    font-weight: 500;
    line-height: 1.5em;
    letter-spacing: 0.1em;
    color: #004990;
}
#main .history .history_content .history_box .content .head h3 span {
    font-weight: 500;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .content .head h3 {
        font-size: 22px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .content .head h3 {
        font-size: 18px;
    }
}
#main .history .history_content .history_box .content .head_2 {
    margin-top: 60px;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .content .head_2 {
        margin-top: 51px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .content .head_2 {
        margin-top: 42px;
    }
}
#main .history .history_content .history_box .content .body {
    margin-top: 25px;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .content .body {
        margin-top: 21px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .content .body {
        margin-top: 17px;
    }
}
#main .history .history_content .history_box .content .body p {
    margin-top: -9px;
    margin-bottom: -9px;
    font-size: 15px;
    font-weight: 400;
    line-height: 33px;
    letter-spacing: 0.05em;
    text-align: justify;
}
@media screen and (max-width: 1199px) {
    #main .history .history_content .history_box .content .body p {
        margin-top: -8px;
        margin-bottom: -8px;
        font-size: 14px;
        line-height: 30px;
    }
}
@media screen and (max-width: 599px) {
    #main .history .history_content .history_box .content .body p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 13px;
        line-height: 27px;
    }
}
#main .info_content.info_content_business .business_content .business_box {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 430px 1fr;
    grid-template-columns: 430px 1fr;
    margin-top: 80px;
    height: 430px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box {
        margin-top: 67px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box {
        margin-top: 55px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box {
        -ms-grid-columns: 40vw 1fr;
        grid-template-columns: 40vw 1fr;
        height: 40vw;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        height: auto;
    }
}
#main .info_content.info_content_business .business_content .business_box .photo {
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box .photo {
        -ms-grid-column-align: center;
            justify-self: center;
        width: 500px;
        height: 500px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .photo {
        width: 88vw;
        height: 88vw;
    }
}
#main .info_content.info_content_business .business_content .business_box .photo .photo_container {
    width: 100%;
    height: 100%;
}
#main .info_content.info_content_business .business_content .business_box .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    position: relative;
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box .content {
        -ms-grid-column-align: center;
            justify-self: center;
        width: 500px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content {
        width: 88vw;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .bg {
    background-color: #e0f4fc;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
#main .info_content.info_content_business .business_content .business_box .content .container {
    padding: 0 80px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container {
        padding: 0 50px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box .content .container {
        padding: 40px 30px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container {
        padding: 35px 30px;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .head h3 {
    margin-top: calc(0px - 0.25em);
    margin-bottom: calc(0px - 0.25em);
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.5em;
    letter-spacing: 0.1em;
    color: #004990;
}
#main .info_content.info_content_business .business_content .business_box .content .container .head h3 span {
    font-weight: 500;
}
#main .info_content.info_content_business .business_content .business_box .content .container .head h3 span.h {
    font-size: 25.2px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .head h3 {
        font-size: 23.5px;
    }
    #main .info_content.info_content_business .business_content .business_box .content .container .head h3 span.h {
        font-size: 21.15px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .head h3 {
        font-size: 19px;
    }
    #main .info_content.info_content_business .business_content .business_box .content .container .head h3 span.h {
        font-size: 17.1px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .head h3 {
        text-align: center;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .body {
    margin-top: 25px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .body {
        margin-top: 22.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .body {
        margin-top: 20px;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .body p {
    margin-top: -9px;
    margin-bottom: -9px;
    font-size: 15px;
    font-weight: 400;
    line-height: 33px;
    letter-spacing: 0.05em;
    text-align: justify;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .body p {
        margin-top: -8px;
        margin-bottom: -8px;
        font-size: 14px;
        line-height: 30px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .body p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 13px;
        line-height: 27px;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .example {
    margin-top: 40px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example {
        margin-top: 35px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example {
        margin-top: 30px;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .example .example_head h4 {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: 0.1em;
    color: #004990;
}
#main .info_content.info_content_business .business_content .business_box .content .container .example .example_head h4 span {
    font-weight: 500;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .example_head h4 {
        font-size: 16px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .example_head h4 {
        font-size: 14px;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .example .line {
    margin-top: 10px;
    height: 1px;
    background-color: #000;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .line {
        margin-top: 9px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .line {
        margin-top: 7px;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .example .example_body {
    margin-top: 25px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .example_body {
        margin-top: 21px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .example_body {
        margin-top: 17px;
    }
}
#main .info_content.info_content_business .business_content .business_box .content .container .example .example_body p {
    margin-top: -9px;
    margin-bottom: -9px;
    font-size: 15px;
    font-weight: 400;
    line-height: 33px;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .example_body p {
        margin-top: -8px;
        margin-bottom: -8px;
        font-size: 14px;
        line-height: 30px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_business .business_content .business_box .content .container .example .example_body p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 13px;
        line-height: 27px;
    }
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(even) {
    -ms-grid-columns: 1fr 430px;
    grid-template-columns: 1fr 430px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_business .business_content .business_box:nth-of-type(even) {
        -ms-grid-columns: 1fr 40vw;
        grid-template-columns: 1fr 40vw;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box:nth-of-type(even) {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        height: auto;
    }
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(even) .photo {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box:nth-of-type(even) .photo {
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1/2;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        grid-row: 1/2;
    }
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(even) .content {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_business .business_content .business_box:nth-of-type(even) .content {
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1/2;
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        grid-row: 2/3;
    }
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(1) .photo .photo_container {
    background-image: url("../img/business_1.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(2) .photo .photo_container {
    background-image: url("../img/business_2.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(3) .photo .photo_container {
    background-image: url("../img/business_3.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(4) .photo .photo_container {
    background-image: url("../img/business_4.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_business .business_content .business_box:nth-of-type(5) .photo .photo_container {
    background-image: url("../img/business_5.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_vision .vision_content {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 100px 1fr 100px 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 100px;
       -moz-column-gap: 100px;
            column-gap: 100px;
    margin-top: 80px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content {
        margin-top: 67px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content {
        margin-top: 55px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content {
        -webkit-column-gap: 8vw;
           -moz-column-gap: 8vw;
                column-gap: 8vw;
    }
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_vision .vision_content {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        row-gap: 55px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content {
        row-gap: 45px;
    }
}
#main .info_content.info_content_vision .vision_content .line {
    width: 1px;
    height: 100%;
    background-image: linear-gradient(to bottom, #000, #000 1px, transparent 1px, transparent 3px);
    background-size: 1px 3px;
    background-position: left top;
    background-repeat: repeat-y;
    position: absolute;
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_vision .vision_content .line {
        display: none;
    }
}
#main .info_content.info_content_vision .vision_content .line_1 {
    left: 350px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .line_1 {
        left: 28vw;
    }
}
#main .info_content.info_content_vision .vision_content .line_2 {
    right: 350px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .line_2 {
        right: 28vw;
    }
}
#main .info_content.info_content_vision .vision_content .vision_box {
    position: relative;
}
#main .info_content.info_content_vision .vision_content .vision_box .ilust {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin: 0 auto;
    height: 210px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust {
        height: 168px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust {
        height: 147px;
    }
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust {
        height: 126px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust {
        height: 105px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust svg {
        height: 168px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust svg {
        height: 147px;
    }
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust svg {
        height: 126px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box .ilust svg {
        height: 105px;
    }
}
#main .info_content.info_content_vision .vision_content .vision_box .head {
    margin-top: 40px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .vision_box .head {
        margin-top: 35px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box .head {
        margin-top: 30px;
    }
}
#main .info_content.info_content_vision .vision_content .vision_box .head h3 {
    padding-left: 0.1em;
    margin-top: calc(0px - 0.25em);
    margin-bottom: calc(0px - 0.25em);
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.5em;
    letter-spacing: 0.1em;
    color: #004990;
    text-align: center;
}
#main .info_content.info_content_vision .vision_content .vision_box .head h3 span {
    font-weight: 500;
}
#main .info_content.info_content_vision .vision_content .vision_box .head h3 span.h {
    font-size: 25.2px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .vision_box .head h3 {
        font-size: 23.5px;
    }
    #main .info_content.info_content_vision .vision_content .vision_box .head h3 span.h {
        font-size: 21.15px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box .head h3 {
        font-size: 19px;
    }
    #main .info_content.info_content_vision .vision_content .vision_box .head h3 span.h {
        font-size: 17.1px;
    }
}
#main .info_content.info_content_vision .vision_content .vision_box .body {
    margin-top: 25px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .vision_box .body {
        margin-top: 22.5px;
    }
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_vision .vision_content .vision_box .body {
        margin-left: auto;
        margin-right: auto;
        width: 500px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box .body {
        margin-top: 20px;
        width: 88vw;
    }
}
#main .info_content.info_content_vision .vision_content .vision_box .body p {
    margin-top: -9px;
    margin-bottom: -9px;
    font-size: 15px;
    font-weight: 400;
    line-height: 33px;
    letter-spacing: 0.05em;
    text-align: justify;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .vision_box .body p {
        margin-top: -8px;
        margin-bottom: -8px;
        font-size: 14px;
        line-height: 30px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box .body p {
        margin-top: -7px;
        margin-bottom: -7px;
        font-size: 13px;
        line-height: 27px;
    }
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_vision .vision_content .vision_box_1 .ilust {
        height: 117.6px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box_1 .ilust {
        height: 98px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_vision .vision_content .vision_box_1 .ilust svg {
        height: 156.8px;
    }
}
@media screen and (max-width: 979px) {
    #main .info_content.info_content_vision .vision_content .vision_box_1 .ilust svg {
        height: 137.2px;
    }
}
@media screen and (max-width: 779px) {
    #main .info_content.info_content_vision .vision_content .vision_box_1 .ilust svg {
        height: 117.6px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_vision .vision_content .vision_box_1 .ilust svg {
        height: 98px;
    }
}
#main .info_content.info_content_office .office_content {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 55px 1fr 55px 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 55px;
       -moz-column-gap: 55px;
            column-gap: 55px;
    margin-top: 80px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .office_content {
        margin-top: 67px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .office_content {
        margin-top: 55px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .office_content {
        -webkit-column-gap: 4vw;
           -moz-column-gap: 4vw;
                column-gap: 4vw;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .office_content {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        row-gap: 40px;
    }
}
#main .info_content.info_content_office .office_content .office_box .photo {
    width: 330px;
    height: 330px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .office_content .office_box .photo {
        width: 26.6666666667vw;
        height: 26.6666666667vw;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .office_content .office_box .photo {
        margin: 0 auto;
        width: 78vw;
        height: 78vw;
    }
}
#main .info_content.info_content_office .office_content .office_box .photo .photo_container {
    width: 100%;
    height: 100%;
}
#main .info_content.info_content_office .office_content .office_box .title {
    margin-top: 40px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .office_content .office_box .title {
        margin-top: 33px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .office_content .office_box .title {
        margin-top: 26px;
    }
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .office_content .office_box .title {
        margin-top: 30px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .office_content .office_box .title {
        margin-top: 20px;
    }
}
#main .info_content.info_content_office .office_content .office_box .title h3 {
    padding-left: 0.1em;
    margin-top: calc(0px - 0.25em);
    margin-bottom: calc(0px - 0.25em);
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.5em;
    letter-spacing: 0.1em;
    color: #004990;
    text-align: center;
    line-height: 1.3em;
}
#main .info_content.info_content_office .office_content .office_box .title h3 span {
    font-weight: 500;
}
#main .info_content.info_content_office .office_content .office_box .title h3 span.h {
    font-size: 25.2px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .office_content .office_box .title h3 {
        font-size: 23.5px;
    }
    #main .info_content.info_content_office .office_content .office_box .title h3 span.h {
        font-size: 21.15px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .office_content .office_box .title h3 {
        font-size: 19px;
    }
    #main .info_content.info_content_office .office_content .office_box .title h3 span.h {
        font-size: 17.1px;
    }
}
#main .info_content.info_content_office .office_content .office_box:nth-of-type(1) .photo .photo_container {
    background-image: url("../img/office_1.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_office .office_content .office_box:nth-of-type(2) .photo .photo_container {
    background-image: url("../img/office_2.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_office .office_content .office_box:nth-of-type(3) .photo .photo_container {
    background-image: url("../img/office_3.jpg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
#main .info_content.info_content_office .other {
    margin-top: 80px;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .other {
        margin-top: 67px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .other {
        margin-top: 55px;
    }
}
#main .info_content.info_content_office .other .other_base a {
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
    width: 530px;
    height: 70px;
    background-color: #0075c2;
    border: 1px solid #0075c2;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .other .other_base a {
        width: 385px;
        height: 54px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .other .other_base a {
        width: 240px;
        height: 38px;
    }
}
#main .info_content.info_content_office .other .other_base a .container {
    -webkit-transition: color 0.2s linear;
    transition: color 0.2s linear;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #fff;
}
#main .info_content.info_content_office .other .other_base a .container .en .text {
    font-size: 17px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: 0.12em;
}
#main .info_content.info_content_office .other .other_base a .container .en .text span {
    font-weight: 500;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .other .other_base a .container .en .text {
        font-size: 15px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .other .other_base a .container .en .text {
        font-size: 13px;
    }
}
#main .info_content.info_content_office .other .other_base a .container .jp {
    margin-left: 15px;
    -webkit-transform: translateY(1px);
            transform: translateY(1px);
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .other .other_base a .container .jp {
        margin-left: 13px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .other .other_base a .container .jp {
        margin-left: 11px;
    }
}
#main .info_content.info_content_office .other .other_base a .container .jp .text {
    font-size: 14px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: 0.1em;
}
@media screen and (max-width: 1199px) {
    #main .info_content.info_content_office .other .other_base a .container .jp .text {
        font-size: 12.5px;
    }
}
@media screen and (max-width: 599px) {
    #main .info_content.info_content_office .other .other_base a .container .jp .text {
        font-size: 11px;
    }
}
#main .info_content.info_content_office .other .other_base a:hover {
    background-color: #fff;
}
#main .info_content.info_content_office .other .other_base a:hover .container {
    color: #0075c2;
}
/*# sourceMappingURL=style.css.map */