﻿@charset "utf-8";
/* CSS Document */

@media screen and (min-width : 768px) {

    header {
        background-size: cover;
        border-top: solid #00327f 2px;
    }

    header .text_box {
        width: 70%;
    }

    .under_page01 header .text_box .page_icon {
        margin: 8vw 0 10px;
    }

    .under_page02 header .text_box .page_title {
        margin: 8vw 0 15px;
    }

    .for_companies .photo img {
        width: 50%;
    }

    .for_companies .box_wrap .right img {
        width: 50%;
    }

    .top_wrap02 .item_box img {
        margin: 0 0 10px;
        width: 49%;
    }

    #pdflink a {
        color: #fff;
        text-decoration: none;
    }

    #pdflink a:hover {
        color: #fff;
        text-decoration: underline;
    }

    /* footer
   ========================================================================== */
    footer {
        margin: 0;
        padding: 45px 0 0;
        background: #f0f6f8;
    }

    /* under_page01 footer
   =================== */
    .under_page01 footer {
        background: #f0f6f8;
    }

    footer .title {
        margin: 0 0 20px;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        color: #011e47;
    }

    footer .box_wrap {
        margin: 0 auto 50px;
        width: 540px;
        box-sizing: border-box;
        font-size: 0;
    }

    footer .box_wrap .box {
        margin: 0 0 0;
        background: #fff;
        width: 50%;
        height: 210px;
        box-sizing: border-box;
        vertical-align: top;
        display: inline-block;
    }

    footer .box_wrap .box a {
        display: block;
        padding: 47px 0 0;
        height: 210px;
        box-sizing: border-box;
    }

    footer .box_wrap .box a:hover span {
        opacity: 0.5;
    }

    footer .box_wrap .box:nth-child(1) {
        border-bottom: none;
        border-right: 1px solid #e3e3e3;
    }

    footer .box_wrap .box .icon {
        margin: 0 0 5px;
        text-align: center;
        display: block;
        height: 70px;
        box-sizing: border-box;
    }

    footer .box_wrap .box .main_text {
        margin: 0 0 9px;
        text-align: center;
        display: block;
        font-size: 20px;
        color: #00327f;
        font-weight: bold;
    }

    footer .box_wrap .box .text {
        margin: 0 0 0;
        text-align: center;
        display: block;
        font-size: 14px;
    }


}

@media screen and (min-width : 769px) {

    body {
        min-width: 1000px;
    }

    a {
        text-decoration: none;
    }

    a.over {
        transition: all ease-out 0.3s;
    }

    a.over:hover {
        opacity: 0.6;
    }

    .inner_wrap {
        width: 1000px;
        margin: auto;
    }

    img {
        width: auto !important;
    }

    span.blo {
        display: inline;
    }

    span.blo02 {
        display: block;
        font-size: inherit;
        color: inherit;
    }

    /* header
   ========================================================================== */
    header {
        background: #fff;
        width: 100%;
    }

    header .border {
        width: 100%;
        border-bottom: solid 1px #e8eeef;
    }

    header .inner_wrap {
        margin: 6px auto 8px;
        padding: 0;
        width: 1000px;
    }

    .h_wrap {
        margin: 0 auto 0;
        padding: 0 0 0;
        height: 54px;
        width: 1000px;
        box-sizing: border-box;
        background: #fff;
        position: relative;
        border-radius: none;
        border: none;
    }

    header h1 img {
        float: left;
        width: 250 !important;
    }

    header h2 {
        font-size: 14px;
        color: #00327f;
        float: left;
        margin: 17px 0 0 16px;
    }

    header .text_box {
        position: absolute;
        width: auto;
        display: inline-block;
        line-height: 0;
        bottom: 20px;
        right: 0px;
    }

    /* navi */
    .h_wrap .sp_navi_toggle,
    .sp_navi {
        display: none;
    }

    nav {
        height: 54px;
        display: block;
    }

    .navi_wrap {
        width: 1000px;
        height: 54px;
        margin: auto;
        font-size: 0;
    }

    .navi_wrap div {
        width: 20%;
        text-align: center;
        display: inline-block;
    }

    .navi_wrap a {
        font-weight: 600;
        display: block;
        text-align: center;
        padding: 0 0 0;
        font-size: 14px;
        height: 54px;
        box-sizing: border-box;
        line-height: 80px;
        border: 1px solid #fff;
        transition: all ease-out 0.3s;
        line-height: 54px;
    }

    .navi_wrap a:hover {
        background: #0092d4;
        border: 1px solid #0092d4;
        color: #fff;
    }

    .navi_wrap div:last-child a:hover {
        background: #0092d4;
        border: 1px solid #0092d4;
        color: #fff;
    }

    .navi_wrap .drop_navi {
        position: relative;
        color: #000;
        font-size: 14px;
        height: 54px;
        vertical-align: top;
        line-height: 54px;
        font-weight: 600;
    }

    .navi_wrap .drop_navi:hover {
        background: #0092d4;
        color: #fff;
    }

    .navi_wrap .dropmenu {
        position: absolute;
        top: 54px;
        left: 0%;
        height: auto;
        z-index: 5;
        box-shadow: none;
        display: block;
        font-size: inherit;
        display: none;
        width: 200px;
    }

    .navi_wrap .dropmenu a {
        background: #0092d4;
        font-size: inherit;
        padding: 0 0 0 20px;
        height: 60px;
        line-height: 60px;
        box-sizing: border-box;
        background: #0092d4;
        display: block;
        color: #fff;
        font-size: 14px;
        border: none;
        text-align: left;
    }

    .navi_wrap .dropmenu a span {
        transition: all ease-out 0.2s;
        font-size: inherit;
        color: inherit;
    }

    .navi_wrap .dropmenu a:hover {
        background: #fff;
        border: none;
    }

    .navi_wrap .dropmenu a:hover span {
        color: #0092d4;
    }

    /*  main  */
    .pc_top_main {
        background: url(../images/main.jpg) center top 100%;
        background-size: cover;
        height: 100%;
        padding-top: 386px;
    }

    .pc_top_main .banne_rarea {
        background: -moz-linear-gradient(90deg, rgba(0, 57, 145, 0.8), rgba(13, 159, 220, 0.8) 50%, rgba(0, 57, 145, 0.8));
        background: -webkit-linear-gradient(90deg, rgba(0, 57, 145, 0.8), rgba(13, 159, 220, 0.8) 50%, rgba(0, 57, 145, 0.8));
        background: linear-gradient(90deg, rgba(0, 57, 145, 0.8), rgba(13, 159, 220, 0.8) 50%, rgba(0, 57, 145, 0.8));
    }

    .pc_top_main .banne_rarea .inner_wrap {
        width: 550px;
        margin: 0 auto;
        padding: 10px 0;
    }

    .pc_top_main .banne_rarea .inner_wrap .banner {
        float: left;
        width: 180px;
        margin-right: 5px;
    }

    .pc_top_main .banne_rarea .inner_wrap .banner:last-child {
        float: left;
        width: 180px;
        margin-right: 0;
    }

    .pc_top_main .banne_rarea .inner_wrap .banner .contact {
        height: 32px;
        margin-bottom: 2px;
    }

    /* under_page01
   ========================================================================== */
    .under_page01 .under_pagetitle {
        margin: 0 0 60px;
        padding: 0 0 50px;
        position: relative;
        background: url(../images/bg_under01.jpg) no-repeat center top;
        background-size: cover;
    }

    .under_page01 .under_pagetitle .inner_wrap {
        margin: 0 auto 0;
        padding: 20px 0 0;
        width: 1000px;
        height: 300px;
        box-sizing: border-box;
        position: relative;
    }

    .under_page01 .under_pagetitle .text_box {
        position: relative;
        box-sizing: border-box;
        width: 100%;
        display: inline-block;
        line-height: 150%;
        bottom: 0;
        right: auto;
        text-align: center;
    }

    .under_page01 .under_pagetitle .text_box .page_icon {
        margin: 30px 0 20px;
        line-height: 0;
        text-align: center;
    }

    .under_page01 .under_pagetitle .text_box .page_icon img {
        width: 35px;
    }

    .under_page01 .under_pagetitle .text_box .page_title {
        margin: 0 0 10px;
        display: inline-block;
        width: auto;
        padding: 0 0 10px;
        text-align: center;
        font-size: 26px;
        font-weight: bold;
        color: #85b800;
    }

    .under_page01 .under_pagetitle .text_box_medi .page_title {
        color: #2b75c1;
    }

    .under_page01 .under_pagetitle .text_box_service .page_title {
        color: #2c74c1;
    }

    .under_page01 .under_pagetitle .text_box_alliance .page_title {
        color: #ffa000;
    }

    .under_page01 .under_pagetitle .text_box_rec .page_title {
        color: #5155b9;
    }

    .recruit02 .under_pagetitle .text_box_rec .page_title {
        color: #6e51b9;
    }

    .under_page01 .under_pagetitle .text_box .en_page_title{color: #E89C64;font-weight: 700;}

    .under_page01 .under_pagetitle .text_box .main_text {
        margin: 0 0 0;
        padding: 0 10px;
        display: block;
        text-align: center;
        font-size: 16px;
        font-weight: bold;
        color: #424242;
    }

    /* under_page02
   ========================================================================== */
    .under_page02 .under_pagetitle {
        margin: 0 0 60px;
        padding: 0 0 50px;
        position: relative;
        background: url(../images/bg_under02.jpg) no-repeat center top;
        background-size: cover;
    }

    .under_page02 .under_pagetitle .inner_wrap {
        margin: 0 auto 0;
        padding: 20px 0 0;
        width: 1000px;
        height: 300px;
        box-sizing: border-box;
        position: relative;
    }

    .under_page02 .under_pagetitle .text_box {
        position: relative;
        box-sizing: border-box;
        width: 100%;
        display: inline-block;
        line-height: 150%;
        bottom: 0;
        right: auto;
        text-align: center;
    }

    .under_page02 .under_pagetitle .text_box .page_title {
        margin: 55px 0 20px;
        display: inline-block;
        width: auto;
        padding: 0 0 17px;
        text-align: center;
        font-size: 22px;
        font-weight: bold;
        color: #001d62;
        background: url(../images/border.png) no-repeat center bottom;
        background-size: auto;
    }

    .under_page02 .under_pagetitle .text_box .main_text {
        margin: 0 0 0;
        padding: 0 10px;
        display: block;
        text-align: center;
        font-size: 16px;
        font-weight: bold;
        color: #001d62;
    }




    /* top_page_photo
   ========================================================================== */
    .top_page_photo {
        margin: 0 0 0;
    }

    .top_page_photo .box_wrap:first-child {
        margin: 0 auto 0;
        font-size: 0;
        text-align: right;
        max-width: 1500px;
        background: #00327f;
    }

    .top_page_photo .box_wrap {
        margin: 0 auto 0;
        font-size: 0;
        text-align: right;
        max-width: 1500px;
        background: #001d62;
    }

    .top_page_photo .box_wrap {
        margin: 0 auto 0;
        font-size: 0;
        text-align: right;
        max-width: 1500px;
    }

    .top_page_photo .box_wrap .photo.sp,
    .sp {
        display: none;
    }

    .top_page_photo .box_wrap .photo.pc {
        display: inline-block;
    }

    .top_page_photo .box_wrap .photo {
        margin: 0 0 0;
        line-height: 0;
        display: inline-block;
        vertical-align: top;
        width: 50%;
        height: 340px;
        box-sizing: border-box;
        background: url(../img/top_page/photo01.jpg) no-repeat center center;
        background-size: cover;
    }

    .top_page_photo .box_wrap02 .photo {
        background: url(../img/top_page/photo02.jpg) no-repeat center center;
        background-size: cover;
    }

    .top_page_photo .box_wrap .photo img {
        width: 100% !important;
        display: none;
    }

    .top_page_photo .box_wrap .text_box {
        margin: 0 0 0;
        padding: 22px 20px 0 0%;
        position: relative;
        display: inline-block;
        vertical-align: top;
        width: 50%;
        box-sizing: border-box;
        transition: all ease-out 0.3s;
    }

    .top_page_photo .box_wrap .text_box .inner {
        margin: 0 0 0;
        text-align: left;
        width: 430px;
        display: inline-block;
    }

    .top_page_photo .box_wrap .text_box .title {
        margin: 0 0 15px;
        padding: 10px 0 0;
        font-size: 30px;
        font-weight: bold;
        color: #fff;
        line-height: 150%;
        display: inline-block;
    }

    .top_page_photo .box_wrap .text_box .title .title_inner01 {
        font-size: inherit;
        font-weight: bold;
        color: inherit;
        display: inline-block;
        background: #00327f;
        z-index: 1;
        position: relative;
    }

    .top_page_photo .box_wrap .text_box .title .title_inner02 {
        font-size: inherit;
        font-weight: bold;
        color: inherit;
        display: inline-block;
        background: #001d62;
        z-index: 1;
        position: relative;
    }

    .top_page_photo .box_wrap .text_box .title:after {
        content: "";
        background: rgba(255, 255, 255, 0.5);
        right: -600%;
        top: 30px;
        width: 600%;
        height: 1px;
        position: absolute;
        z-index: 0;
    }

    .top_page_photo .box_wrap .text_box .text {
        margin: 0 0 10px;
        padding: 0;
        font-size: 15px;
        color: #fff;
        line-height: 180%;
    }

    .top_page_photo .box_wrap .bottom_text01 {
        margin: 0 0 0;
        padding: 10px;
        font-size: 14px;
        color: #fff;
        background: #141E61;
        line-height: 150%;
        width: 200px;
    }

    .top_page_photo .box_wrap .bottom_text02 {
        margin: 0 0 0;
        padding: 10px;
        font-size: 14px;
        color: #fff;
        background: #00327f;
        line-height: 150%;
        width: 200px;
    }

    /* link_box
   ========================================================================== */
    .link_box {
        margin: 0 0 0;
        padding: 50px 0 40px;
    }

    .link_box .box_wrap {
        margin: 0 0 0;
        padding: 0 0 0;
        font-size: 0;
    }

    .link_box .box_wrap .box {
        margin: 0 0 0;
        padding: 25px;
        background: rgba(235, 110, 139, 0.45);
        height: 270px;
        width: 50%;
        display: inline-block;
        box-sizing: border-box;
        vertical-align: top;
    }

    .link_box .box_wrap .box:nth-child(2) {
        background: rgba(133, 184, 0, 0.45);
    }

    .link_box .box_wrap .box:nth-child(3) {
        background: rgba(255, 160, 0, 0.45);
    }

    .link_box .box_wrap .box:nth-child(4) {
        background: rgba(110, 81, 185, 0.45);
    }

    .link_box .box_wrap .box .white_bg {
        margin: 0 0 0;
        padding: 20px 25px 25px 25px;
        background: #fef5f7;
        height: 220px;
        box-sizing: border-box;
    }

    .link_box .box_wrap .box:nth-child(2) .white_bg {
        background: #faffee;
    }

    .link_box .box_wrap .box:nth-child(3) .white_bg {
        background: #fef7eb;
    }

    .link_box .box_wrap .box:nth-child(4) .white_bg {
        background: #f6f7fe;
    }

    .link_box .box_wrap .box .title {
        margin: 0 0 15px;
        padding: 5px 5px 0 40px;
        background: url(../images/icon01.png) no-repeat left top;
        background-size: auto;
        color: #eb6e8b;
        font-size: 19px;
        font-weight: bold;
    }

    .link_box .box_wrap .box:nth-child(2) .title {
        color: #85b800;
        background: url(../images/icon02.png) no-repeat left top;
        background-size: auto;
    }

    .link_box .box_wrap .box:nth-child(3) .title {
        color: #ffa000;
        background: url(../images/icon03.png) no-repeat left top;
        background-size: auto;
    }

    .link_box .box_wrap .box:nth-child(4) .title {
        color: #6e51b9;
        background: url(../images/icon04.png) no-repeat left top;
        background-size: auto;
    }

    .link_box .box_wrap .box .text {
        margin: 0 0 20px;
        font-size: 14px;
        line-height: 180%;
        min-height: 75px;
    }

    .link_box .box_wrap .box .btn {
        margin: 0 0 0;
        width: 70%;
    }

    .link_box .box_wrap .box .btn a {
        display: inline-block;
    }

    .link_box .box_wrap .box .btn a img {
        width: 100%;
    }

    /* top_news
   ========================================================================== */
    .top_news {
        margin: 0 0 0;
        padding: 35px 0 50px;
    }

    .top_news .title {
        margin: 0 0 25px;
        font-size: 20px;
        color: #00327f;
    }

    .top_news .box_wrap {
        margin: 0 0 0;
    }

    .top_news .box_wrap .banne_rarea {
        width: 240px;
        float: right;
        padding-top: 0;
        border: none;
    }

    .top_news .box_wrap .banne_rarea p {
        width: 100%;
        margin: 0 auto;
    }

    .top_news .box_wrap .banne_rarea img {
        width: 240px !important;
        margin: 0 auto;
    }

    .top_news .box_wrap .box {
        margin: 0 0 20px;
        float: left;
    }

    .top_news .box_wrap .box a {
        display: block;
    }

    .top_news .box_wrap .box a:hover span {
        text-decoration: underline;
    }

    .top_news .box_wrap .box:last-child {
        margin: 0 0 0;
    }

    .top_news .box_wrap .box .day {
        margin: 0 0 5px;
        padding: 0 0 5px;
        color: #00327f;
        font-size: 12px;
        border-bottom: none;
        display: inline-block;
        vertical-align: top;
        width: 72px;
        height: 40px;
        box-sizing: border-box;
        font-weight: bold;
    }

    .top_news .box_wrap .box .text_box {
        margin: 0 0 0;
        padding: 0 0 0 20px;
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
        border-left: 1px solid #00327f;
        width: 920px;
    }

    .top_news .box_wrap .box .text_box .news_title:first-child {
        margin: 0 0 5px;
        font-size: 16px;
        color: #414141;
        font-weight: bold;
        display: block;
    }

    .top_news .box_wrap .box .text_box .news_title {
        margin: 20px 0 5px;
        font-size: 16px;
        color: #414141;
        font-weight: bold;
        display: block;
    }

    .top_news .box_wrap .box .text_box .news_text {
        margin: 0 0 0;
        font-size: 14px;
        color: #414141;
        display: block;
        line-height: 150%;
    }

    /* スクロール */
    .top_news .scroll {
        overflow-y: scroll;
        max-height: 500px;
    }

    .top_news .scroll::-webkit-scrollbar {
        height: 8px;
    }

    /*バーの太さ*/
    .top_news .scroll::-webkit-scrollbar-track {
        background: #dddddd;
    }

    /*バーの背景色*/
    .top_news .scroll::-webkit-scrollbar-thumb {
        background: #2cc2e4;
    }

    /*バーの色*/

    /* company
   ========================================================================== */
    .company {
        margin: 60px 0 80px;
        padding: 0 0 0;
    }

    .company .inner_wrap {
        font-size: 0;
    }

    .company .left {
        margin: 0 0 0;
        padding: 0 0 0;
        text-align: left;
        line-height: 0;
        border-bottom: none;
        display: inline-block;
        width: 240px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .company .right {
        margin: 0 0 0;
        padding: 0 0 0 35px;
        border-left: 1px solid #00327f;
        display: inline-block;
        width: 760px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .company .right table {
        margin: 0 0 0;
        width: 100%;
    }

    .company .right table:nth-child(1) {
        margin: 0 0 20px;
    }

    .company .right table th {
        padding: 0 5px 10px;
        font-size: 15px;
        font-weight: bold;
        color: #00327f;
        vertical-align: top;
        width: 100px;
    }

    .company .right table td {
        padding: 0 5px 20px;
        font-size: 15px;
        vertical-align: top;
        line-height: 150%;
    }

    .company .right table td .table_tel {
        margin-right: 50px;
    }

    .company .right table td a {
        color: #00327f;
    }

    .company .right table td a:hover {
        text-decoration: underline;
    }

    .company .right table:nth-child(2) th {
        padding: 0 5px 10px;
        font-size: 15px;
        font-weight: bold;
        color: #00327f;
        vertical-align: top;
        width: 100%;
        display: block;
    }

    .company .right table:nth-child(2) td {
        padding: 0 5px 20px;
        font-size: 15px;
        vertical-align: top;
        line-height: 150%;
        width: 100%;
        display: block;
        position: relative;
    }

    .company .right table:nth-child(2) td .box {
        margin: 0 0 20px;
    }

    .company .right table:nth-child(2) tr:last-child td {
        padding: 0 5px 0;
    }

    .company .right table:nth-child(2) tr:last-child td .box:last-child {
        margin: 0 0 0;
    }

    .company .right table:nth-child(2) td .box .title {
        margin: 0 0 5px;
        display: block;
        font-size: 16px;
        font-weight: bold;
    }

    .company .right table:nth-child(2) td .box .text {
        margin: 0 0 5px;
        display: block;
        font-size: 15px;
    }

    .company .right table:nth-child(2) td .box .item {
        margin: 0 0 0;
        display: block;
        width: auto;
        position: absolute;
        right: 0;
        top: 0;
    }

    .company .right table:nth-child(2) td .box .item a {
        display: inline-block;
    }

    .company .right table:nth-child(2) td .box .item a img {
        width: 100%;
    }

    /* message
   ========================================================================== */
    .message {
        margin: 0 0 100px;
    }

    .message .box {
        margin: 0 0 0;
        padding: 38px;
        border: 1px solid #e3e3e3;
    }

    .message .box .title {
        margin: 0 0 35px;
        font-size: 24px;
        font-weight: bold;
        color: #00327f;
        text-align: center;
    }

    .message .box .text {
        margin: 0 0 0;
        font-size: 15.3px;
        line-height: 180%;
    }

    /* title_box service
   ========================================================================== */
    .title_box {
        margin: 0 0 25px;
        padding: 0 25px;
        background: url(../images/box_left.jpg) no-repeat left center, url(../images/box_right.jpg) no-repeat right center, url(../images/box_mid.jpg) repeat-x;
        background-size: auto 100%;
        font-size: 25px;
        font-weight: bold;
        color: #2c74c1;
        height: 67px;
        box-sizing: border-box;
        line-height: 67px;
    }

    /* title_box_rec
   ========================================================================== */
    .title_box_rec {
        background: url(../img/recruit/box_left.jpg) no-repeat left center, url(../img/recruit/box_right.jpg) no-repeat right center, url(../img/recruit/box_mid.jpg) repeat-x;
        background-size: auto 100%;
        color: #5155b9;
    }

    /* recruit02 title_box_rec
   ========================================================================== */
    .recruit02 .title_box_rec {
        background: url(../img/recruit02/box_left.jpg) no-repeat left center, url(../img/recruit02/box_right.jpg) no-repeat right center, url(../img/recruit02/box_mid.jpg) repeat-x;
        background-size: auto 100%;
        color: #6e51b9;
    }

    /* title_box_alla
   ========================================================================== */
    .title_box_alla {
        background: url(../img/alliance/box_left.jpg) no-repeat left center, url(../img/alliance/box_right.jpg) no-repeat right center, url(../img/alliance/box_mid.jpg) repeat-x;
        background-size: auto 100%;
        color: #ffa000;
    }

    /* title_border service
   ========================================================================== */
    .title_border {
        margin: 0 0 25px;
        padding: 0 0 0;
        font-size: 20px;
        font-weight: bold;
        color: #2c74c1;
        position: relative;
    }

    .title_border .inner {
        padding: 0 20px 0 0;
        background: #fff;
        display: inline-block;
        color: inherit;
        font-size: inherit;
    }

    .title_border:after {
        content: "";
        background: url(../images/border.jpg) no-repeat left center, #e3e3e3;
        background-size: auto;
        width: 100%;
        height: 1px;
        position: absolute;
        top: 10px;
    }

    /* title_border_green
   ========================================================================== */
    .title_border_green {
        color: #2b75c1;
    }

    .title_border_green .no {
        color: #2b75c1;
        font-weight: bold;
    }

    .title_border_green:after {
        content: "";
        background: url(../images/border.jpg) no-repeat left center, #e3e3e3;
        background-size: auto;
    }

    /* service_page
   ========================================================================== */



    /* interpreter
   ======================================== */
    .interpreter {
        margin: 0 0 0;
        padding: 0 0;
    }

    .interpreter .inner_wrap {
        overflow: hidden;
    }

    /* problem
   ======================================== */
    .problem {
        margin: 0 0 20px;
    }

    .problem .title {
        margin: 0 0 15px;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        color: #335b99;
        text-align: center;
    }

    .problem .box_wrap {
        margin: 0 0 25px;
        font-size: 0;
        border: 1px solid #e3e3e3;
    }

    .problem .box_wrap .box {
        margin: 0 0 0;
        padding: 30px 23px 10px;
        border: none;
        border-bottom: none;
        display: inline-block;
        vertical-align: top;
        width: 50%;
        box-sizing: border-box;
        min-height: 160px;
    }

    .problem .box_wrap .box:nth-child(1) {
        border-right: 1px solid #e3e3e3;
        border-bottom: 1px solid #e3e3e3;
    }

    .problem .box_wrap .box:nth-child(2) {
        border-bottom: 1px solid #e3e3e3;
    }

    .problem .box_wrap .box:nth-child(3) {
        border-right: 1px solid #e3e3e3;
    }

    .problem .box_wrap .box:last-child {
        border-bottom: none;
    }

    .problem .box_wrap .box .box_title {
        margin: 0 0 10px;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
    }

    .problem .box_wrap .box .box_text {
        margin: 0 0 0;
        font-size: 15px;
    }

    .problem .bottom_text {
        margin: 0 0 15px;
        font-size: 15x;
    }

    /* mid_box
   ======================================== */
    .mid_box {
        margin: 0 0 20px;
    }

    .mid_box .box_wrap {
        margin: 0 0 0;
        padding: 35px 35px 0;
        border: 1px solid #e3e3e3;
    }

    .mid_box .box_wrap .box {
        margin: 0 0 30px;
    }

    .mid_box .box_wrap .box .box_title {
        margin: 0 0 5px;
        font-size: 18px;
        font-weight: bold;
        color: #2c74c1;
    }

    .mid_box .box_wrap .box .box_text {
        margin: 0 0 0;
        font-size: 16px;
    }

    /* mid_box02
   ======================================== */
    .mid_box02 {
        margin: 0 0 20px;
        padding: 18px;
        background: #abbdd1;
    }

    .mid_box02 .title {
        margin: 0 0 15px;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        color: #2c74c1;
        text-align: center;
    }

    .mid_box02 .box_wrap {
        margin: 0 0 0;
        font-size: 0;
    }

    .mid_box02 .box_wrap .box {
        margin: 0 0 0;
        padding: 16px;
        border: 1px solid #e3e3e3;
        background: #fff;
        display: inline-block;
        width: calc(100% / 3);
        vertical-align: top;
        box-sizing: border-box;
    }

    .mid_box02 .box_wrap .box:nth-child(2) {
        border-left: none;
        border-right: none;
    }

    .mid_box02 .box_wrap .box:last-child {
        border-bottom: 1px solid #e3e3e3;
    }

    .mid_box02 .box_wrap .box .box_title {
        margin: 0 0 10px;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
    }

    .mid_box02 .box_wrap .box .box_text {
        margin: 0 0 0;
        font-size: 15px;
        text-align: center;
    }

    /* right_price_wrap
   ======================================== */
    .right_price_wrap {
        margin: 0 0 45px;
        text-align: right;
    }

    .right_price_wrap .right_price {
        margin: 0 0 0;
        padding: 8px 20px;
        background: #ededed;
        font-size: 16px;
        font-weight: bold;
        display: inline-block;
    }

    .right_price_wrap .right_price .border {
        margin: 0 20px 0;
        display: inline-block;
        color: #c7c7c7;
    }

    /* bottom_price_box
   ======================================== */
    .bottom_price_box {
        margin: 0 0 45px;
    }

    .bottom_price_box .bottom_text {
        margin: 0 0 10px;
        font-size: 15px;
    }

    /* translation
   ======================================== */
    .translation {
        margin: 0 0 50px;
    }

    .translation .title_bottom {
        margin: 0 0 25px;
        color: #abbdd1;
        font-size: 24px;
        font-weight: bold;
        line-height: 150%;
    }

    .translation .text {
        margin: 0 0 25px;
        font-size: 15px;
    }

    .translation table {
        margin: 0 0 10px;
        width: 100%;
    }

    .translation table th {
        margin: 0 0 0;
        padding: 6px 15px;
        width: 50px;
        font-size: 16px;
        color: #2d74c2;
        border: 1px solid #2d74c2;
        background: #abbdd1;
        text-align: center;
        vertical-align: middle;
    }

    .translation table td {
        margin: 0 0 0;
        padding: 6px 15px;
        font-size: 15px;
    }

    .translation .right_price_wrap {
        margin-top: 45px;
    }

    /* for_companies
   ========================================================================== */
    .for_companies {
        margin: 0 0 40px;
        overflow: hidden;
        position: relative;
    }

    .for_companies .title {
        margin: 0 0 40px;
        font-size: 25px;
        font-weight: bold;
        color: #4b6800;
        line-height: 150%;
    }

    .for_companies .box_wrap {
        margin: 0 0 0;
        font-size: 0;
    }

    .for_companies .box_wrap .left {
        margin: 0 40px 0 0;
        display: inline-block;
        width: 640px;
        box-sizing: border-box;
        vertical-align: top;
        overflow: hidden;
        font-size: 16px;
    }

    .for_companies .box_wrap .left .text_box {
        margin: 0 0 40px;
    }

    .for_companies .box_wrap .left .text_box .text {
        margin: 0 0 10px;
        font-size: 16px;
        line-height: 150%;
    }

    .for_companies .box_wrap .left .text_box .text .bold {
        font-size: inherit;
        font-weight: bold;
    }

    .for_companies .box_wrap .left .text_box .text .green {
        font-size: inherit;
        color: #7faf00;
    }

    .for_companies .photo {
        display: none;
    }

    .for_companies .box_wrap .right {
        margin: 0 0 0;
        line-height: 0;
        font-size: 0;
        display: inline-block;
        width: 320px;
        box-sizing: border-box;
        vertical-align: top;
    }

    .for_companies .box_wrap .right img.pc {
        display: block;
    }

    /* medical_mid_box
   ========================================================================== */
    .medical_mid_box {
        margin: 0 0 0;
    }

    .medical_mid_box.medical_mid_box02 {
        margin: 0 0 50px;
    }

    .medical_mid_box .box_wrap {
        margin: 0 0 0;
        padding: 40px 0 0;
        border-top: 1px solid #e3e3e3;
        font-size: 0;
    }

    .medical_mid_box.medical_mid_box02 .box_wrap {
        margin: 0 0 20px;
        padding: 40px 0 40px;
        border-bottom: 1px solid #e3e3e3;
    }

    .medical_mid_box .box_wrap .left {
        margin: 0 30px 0 0;
        display: inline-block;
        width: 200px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .medical_mid_box .box_wrap .left .title_bg {
        margin: 0 auto 0;
        font-size: 20px;
        font-weight: bold;
        text-align: center;
        color: #fff;
        width: 200px;
        height: 200px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        /* 縦方向中央揃え（Safari用） */
        align-items: center;
        /* 縦方向中央揃え */
        -webkit-justify-content: center;
        /* 横方向中央揃え（Safari用） */
        justify-content: center;
        /* 横方向中央揃え */
        box-sizing: border-box;
    }

    .medical_mid_box02 .box_wrap .left .title_bg {
        padding: 0 0 0 5px;
        text-align: left;
    }

    .medical_mid_box .box_wrap .right {
        margin: 0 0 0;
        padding: 0 0 0;
        display: inline-block;
        width: 770px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .medical_mid_box .box_wrap .right .box {
        margin: 0 0 20px;
    }

    .medical_mid_box .box_wrap .right .box .title {
        margin: 0 0 10px;
        padding: 0 0 3px;
        font-size: 16px;
        font-weight: bold;
        border-bottom: 1px solid #e3e3e3;
    }

    .medical_mid_box .box_wrap .right .box .title.green {
        color: #7faf00;
    }

    .medical_mid_box .box_wrap .right .box .before {
        margin: 0 0 5px;
        padding: 0 0 3px 65px;
        font-size: 15px;
        line-height: 150%;
        position: relative;
    }

    .medical_mid_box .box_wrap .right .box .before:before {
        content: "Before：";
        font-weight: bold;
        font-style: italic;
        position: absolute;
        left: 0;
    }

    .medical_mid_box .box_wrap .right .box .after {
        margin: 0 0 5px;
        padding: 0 0 3px 60px;
        font-size: 15px;
        font-weight: bold;
        line-height: 150%;
        position: relative;
        color: #7faf00;
    }

    .medical_mid_box .box_wrap .right .box .after:before {
        content: "After：";
        font-weight: bold;
        color: #7faf00;
        font-style: italic;
        position: absolute;
        left: 0;
    }

    .medical_mid_box .box_wrap .right .box .text {
        margin: 0 0 0;
        font-size: 15px;
        line-height: 180%;
    }

    .medical_mid_box .box_wrap .right .box .text .green {
        color: #7faf00;
    }

    /* medical_bottom_box
   ========================================================================== */
    .medical_bottom_box {
        margin: 0 0 100px;
    }

    .medical_bottom_box .photo {
        margin: 0 0 20px;
        text-align: center;
        line-height: 0;
    }

    .medical_bottom_box .photo img {
        width: 150px !important;
    }

    .medical_bottom_box .title {
        margin: 0 0 30px;
        font-size: 24px;
        font-weight: bold;
        text-align: center;
    }

    .medical_bottom_box table {
        margin: 0 0 10px;
        width: 100%;
    }

    .medical_bottom_box table th {
        margin: 0 0 0;
        padding: 10px 5px;
        width: 150px;
        font-size: 16px;
        color: #fff;
        border: 1px solid #2b75c1;
        background: #2b75c1;
        text-align: center;
        vertical-align: middle;
        display: table-cell;
        box-sizing: border-box;
    }

    .medical_bottom_box table td {
        margin: 0 0 0;
        padding: 10px;
        font-size: 15px;
        border: 1px solid #2b75c1;
        display: table-cell;
    }

    /* rec_box
   ========================================================================== */
    .rec_box {
        margin: 0 0 0;
    }

    .rec_box03 {
        margin: 0 0 90px;
    }

    .rec_box .box_wrap {
        margin: 0 0 60px;
        font-size: 0;
    }

    .rec_box .box_wrap .left {
        margin: 0 30px 0 0;
        display: inline-block;
        width: 650px;
        box-sizing: border-box;
        vertical-align: top;
    }

    .rec_box .box_wrap .left .text {
        margin: 0 0 15px;
        font-size: 15px;
        line-height: 180%;
    }

    .rec_box .box_wrap .left .border_box {
        margin: 0 0 10px;
        padding: 5px;
        border: 1px solid #5155b9;
    }

    .rec_box .box_wrap .left .border_box02 {
        margin: 0 0 30px;
    }

    .rec_box .box_wrap .left .border_box .border_box_left {
        margin: 0 0 5px;
        font-size: 15px;
        color: #5155b9;
        font-weight: bold;
        display: inline-block;
        width: 112px;
        box-sizing: border-box;
        vertical-align: top;
        text-align: center;
    }

    .rec_box .box_wrap .left .border_box .border_box_right {
        margin: 0 0 0;
        padding: 0 0 0 10px;
        font-size: 15px;
        border-top: none;
        border-left: 1px solid #e3e3e3;
        display: inline-block;
        width: 520px;
        box-sizing: border-box;
        vertical-align: top;
    }

    .rec_box .box_wrap .right {
        margin: 0 0 0;
        text-align: center;
        line-height: 0;
        display: inline-block;
        width: 320px;
        box-sizing: border-box;
        vertical-align: top;
    }

    .rec_box .box_wrap .right img {
        width: 60%;
    }

    /* recruit02 rec_box
   ========================================================================== */
    .recruit02 .rec_box .box_wrap .left .border_box {
        border: 1px solid #6e51b9;
    }

    .recruit02 .rec_box .box_wrap .left .border_box .border_box_left {
        color: #6e51b9;
    }

    /* alliance
   ========================================================================== */

    /* top_wrap
   ===================================== */
    .top_wrap {
        margin: 0 0 40px;
    }

    .top_wrap .box_wrap {
        margin: 0 0 0;
        padding: 0 0 40px;
        font-size: 0;
        border-bottom: 1px solid #e3e3e3;
    }

    .top_wrap .box_wrap .left {
        margin: 0 40px 0 0;
        display: inline-block;
        width: 640px;
        box-sizing: border-box;
        vertical-align: top;
    }

    .top_wrap .box_wrap .left .title {
        margin: 0 0 25px;
        font-size: 26px;
        font-weight: bold;
        color: #ffa000;
    }

    .top_wrap .box_wrap .left .text {
        margin: 0 0 0;
        font-size: 16px;
        line-height: 150%
    }

    .top_wrap .box_wrap .right {
        margin: 0 0 0;
        line-height: 0;
        text-align: center;
        display: inline-block;
        width: 320px;
        box-sizing: border-box;
        vertical-align: top;
    }

    .top_wrap .box_wrap .right img {
        width: 70%;
    }

    /* top_wrap02
   ===================================== */
    .top_wrap02 {
        margin: 0 0 50px;
    }

    .top_wrap02 .title {
        margin: 0 0 25px;
        font-size: 19px;
        font-weight: bold;
        color: #875b10;
        text-align: center;
    }

    .top_wrap02 .item_box {
        margin: 0 0 0;
        text-align: center;
    }

    .top_wrap02 .item_box img {
        margin: 0 7px 0;
    }

    /* agreement
   ===================================== */
    .agreement {
        margin: 0 0 50px;
    }

    .agreement .top_text {
        margin: 0 0 25px;
        font-size: 15px;
        line-height: 150%;
    }

    .agreement .top_box {
        margin: 0 0 20px;
        padding: 25px 40px 50px;
        border: 1px solid #e3e3e3;
    }

    .agreement .top_text .bold {
        font-weight: bold;
    }

    .agreement02 .top_text {
        margin: 0 0 70px;
        padding: 0 0 70px;
        border-bottom: 1px solid #e3e3e3;
    }

    .agreement .top_box .title {
        margin: 0 0 20px;
        position: relative;
        font-size: 17px;
        font-weight: bold;
        color: #ffa000;
    }

    .agreement .top_box .title .inner {
        padding: 0 10px 0 0;
        font-size: inherit;
        color: inherit;
        background: #fff;
        position: relative;
        z-index: 1;
    }

    .agreement .top_box .title:after {
        content: "";
        background: url(../img/alliance/border.jpg) repeat-x;
        background-size: auto;
        width: 100%;
        height: 5px;
        position: absolute;
        left: 0;
        top: 9px;
    }

    .agreement .top_box .text {
        margin: 0 0 40px;
        font-size: 15px;
        line-height: 180%;
    }

    .agreement .top_box .photo {
        margin: 0 0 0;
        line-height: 0;
    }

    /* agreement_mid
   ===================================== */
    .agreement_mid {
        margin: 0 0 80px;
    }

    .agreement_mid .box_wrap {
        margin: 0 0 20px;
        font-size: 0;
    }

    .agreement_mid .box_wrap .left {
        margin: 0 20px 0 0;
        display: inline-block;
        width: 280px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .agreement_mid .box_wrap .left .title {
        margin: 0 0 20px;
        position: relative;
        font-size: 16px;
        font-weight: bold;
        color: #875b10;
    }

    .agreement_mid .box_wrap .left .title .inner {
        padding: 0 10px 0 0;
        font-size: inherit;
        color: inherit;
        background: #fff;
        position: relative;
        z-index: 1;
    }

    .agreement_mid .box_wrap .left .title:after {
        content: "";
        background: #e3e3e3;
        width: 100%;
        height: 1px;
        position: absolute;
        left: 0;
        top: 11px;
    }

    .agreement_mid .box_wrap .right {
        margin: 0 0 0;
        display: inline-block;
        width: 700px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .agreement_mid .box_wrap .right .text_box {
        margin: 0 0 0;
    }

    .agreement_mid .box_wrap .right .text_box .text {
        margin: 0 0 5px;
        padding: 0 0 0 18px;
        font-size: 15px;
        line-height: 180%;
        position: relative;
    }

    .agreement_mid .box_wrap .right .text_box .text:before {
        content: "●";
        color: #ffa000;
        position: absolute;
        left: 0;
    }

    .agreement_mid .photo {
        margin: 0 0 0;
        line-height: 0;
    }

    .agreement_mid .bottom_box {
        margin: 0 0 0;
        padding: 20px 30px;
        border: 1px solid #003990;
    }

    .agreement_mid .bottom_box .left {
        margin: 0 0 0;
        display: inline-block;
        width: 155px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .agreement_mid .bottom_box .left .title {
        margin: 0 0 10px;
        padding: 0 0 5px;
        font-size: 18px;
        font-weight: bold;
        color: #003990;
        border-bottom: none;
    }

    .agreement_mid .bottom_box .right {
        margin: 0 0 0;
        padding: 0 0 0 40px;
        display: inline-block;
        width: 740px;
        vertical-align: top;
        box-sizing: border-box;
        border-left: 1px solid #e3e3e3;
    }

    .agreement_mid .bottom_box .right .text {
        margin: 0 0 0;
        padding: 0 0 0;
        font-size: 15px;
        line-height: 180%;
    }

    /* agreement_bottom_box
   ========================================================================== */
    .agreement_bottom_box {
        margin: 0 0 0;
    }

    .agreement_bottom_box .photo {
        margin: 0 0 20px;
        text-align: center;
        line-height: 0;
    }

    .agreement_bottom_box .photo img {
        width: 120px !important;
    }

    .agreement_bottom_box .title {
        margin: 0 0 30px;
        font-size: 24px;
        font-weight: bold;
        text-align: center;
    }

    .agreement_bottom_box .text {
        margin: 0 0 30px;
        font-size: 15px;
        line-height: 150%
    }

    .labor .labor_title {
        margin: 0 0 15px;
        font-size: 18px;
        font-weight: bold;
        color: #875b10;
        text-align: center;
    }

    .labor table {
        margin: 0 0 40px;
        width: 100%;
    }

    .labor table td {
        margin: 0 0 0;
        padding: 15px 0;
        width: 50%;
        border: 1px solid #e3e3e3;
        font-size: 17px;
        vertical-align: middle;
        text-align: center;
        font-weight: bold;
    }

    /* gray_wrap
   ===================================== */
    .gray_wrap {
        margin: 0 0 100px;
    }

    .gray_wrap .gray_box {
        margin: 0 0 30px;
        padding: 25px;
        background: #f7f7f7;
    }

    .gray_wrap .gray_box .box_title {
        margin: 0 0 20px;
        font-size: 20px;
        font-weight: bold;
        color: #ffa000;
    }

    .gray_wrap .gray_box .box_text {
        margin: 0 0 20px;
        font-size: 16px;
        line-height: 180%;
    }

    .gray_wrap .gray_box .white_box {
        margin: 0 0 0;
        padding: 10px 20px;
        font-size: 16px;
        font-weight: bold;
        background: #fff;
    }

    .gray_wrap .box_wrap {
        margin: 0 0 0;
        font-size: 0;
    }

    .gray_wrap .box_wrap .box {
        margin: 0 0 30px;
        display: inline-block;
        width: 480px;
        min-height: 220px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .gray_wrap .box_wrap .box:nth-child(2n+1) {
        margin-right: 40px;
    }

    .gray_wrap .bottom_box {
        margin: 0 0 0;
    }

    .gray_wrap .bottom_box .box_wrap02 {
        margin: 0 0 0;
        font-size: 0;
    }

    .gray_wrap .bottom_box .box_wrap02 .left {
        margin: 0 0 0;
        line-height: 0;
        text-align: center;
        display: inline-block;
        width: 350px;
        height: 250px;
        min-height: 220px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .gray_wrap .bottom_box .box_wrap02 .right {
        margin: 0 0 0;
        padding: 30px 25px;
        border: 1px solid #e3e3e3;
        border-left: none;
        display: inline-block;
        width: 650px;
        height: 250px;
        vertical-align: top;
        box-sizing: border-box;
    }

    .gray_wrap .bottom_box .box_wrap02 .right .box_title {
        margin: 0 0 15px;
        padding: 0 0 15px;
        font-size: 20px;
        font-weight: bold;
        color: #ffa000;
        border-bottom: 1px solid #e3e3e3;
    }

    .gray_wrap .bottom_box .box_wrap02 .right .text {
        margin: 0 0 0;
        font-size: 15px;
        line-height: 180%;
    }

    /* contact
   ========================================================================== */
    .contact {
        margin: 0;
    }

    .contact .top_text {
        margin: 0 0 35px;
        font-size: 15px;
        line-height: 150%;
    }

    .contact .top_text .req {
        font-size: 13px;
        font-weight: normal;
    }

    .contact .title {
        margin: 0 0 20px;
        font-size: 25px;
        font-weight: bold;
        line-height: 150%;
        color: #00327f;
    }

    /* form */
    .req {
        color: #2d74c2;
        font-size: 10px;
        vertical-align: super;
        font-weight: bold;
    }

    .contact .table_wrap {
        margin: 0 0 100px;
        padding: 30px 40px;
        border: 1px solid #e3e3e3;
    }

    .contact table {
        width: 100%;
        font-size: 15px;
        box-sizing: border-box;
    }

    .contact th,
    .contact td {
        border: none;
        border: none;
        width: auto;
        display: table-cell;
        padding: 10px 0;
        vertical-align: middle;
    }

    .contact tr:first-child th,
    .contact tr:first-child td {
        border: none;
    }

    .contact tr:last-child td {
        border: none;
    }

    .contact th {
        width: 160px;
        color: #00327f;
        font-weight: bold;
    }

    .contact .textarea th {
        vertical-align: top;
    }

    .contact td {
        border: none;
    }

    .contact input,
    .contact textarea {
        font-size: 16px;
        padding: 10px;
        box-sizing: border-box;
        width: 100%;
        border: none;
    }

    .contact select {
        font-size: 16px;
        padding: 10px;
        box-sizing: border-box;
        width: 300px;
        border: 1px solid #e3e3e3;
        color: #00327f;
    }

    .zsk_btn_area {
        text-align: center;
        padding: 50px 0 20px;
    }

    .zsk_btn_area button {
        color: #FFF;
        border: none;
        padding: 15px 20px;
        width: 310px;
        height: 45px;
        margin: 0 10px 20px;
        font-size: 16px;
        cursor: pointer;
        transition: all ease-out 0.3s;
    }

    .zsk_btn01 {
        background: url(../images/conf.png) no-repeat center center;
        background-size: auto;
    }

    .zsk_btn02 {
        background: url(../images/back.png) no-repeat center center;
        background-size: auto;
    }

    .zsk_btn03 {
        background: url(../images/send.png) no-repeat center center;
        background-size: auto;
    }

    .zsk_btn01_chn {
        background: url(../images/conf_chn.png) no-repeat center center;
        background-size: auto;
    }

    .zsk_btn02_chn {
        background: url(../images/back_chn.png) no-repeat center center;
        background-size: auto;
    }

    .zsk_btn03_chn {
        background: url(../images/send_chn.png) no-repeat center center;
        background-size: auto;
    }

    .zsk_btn_area button:hover {
        opacity: 0.6;
    }


    .thanks {
        margin: 0 0 0;
    }

    .thanks .table_wrap {
        margin: 0 0 100px;
        padding: 30px 40px;
        border: 1px solid #e3e3e3;
    }

    .thanks .thanks_title {
        margin: 0 0 10px;
        font-size: 20px;
        font-weight: bold;
        color: #00327f;
    }

    .thanks .text {
        margin: 0 0 0;
        font-size: 15px;
        line-height: 150%;
    }

    /* footer
   ========================================================================== */
    footer {
        margin: 0;
        padding: 45px 0 0;
        background: #f0f6f8;
    }

    footer.thanks_chn {
        margin: 0;
        padding: 0;
    }

    /* under_page01 footer
   =================== */
    .under_page01 footer {
        background: #f0f6f8;
    }

    footer .title {
        margin: 0 0 20px;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        color: #011e47;
    }

    footer .box_wrap {
        margin: 0 auto 50px;
        width: 540px;
        box-sizing: border-box;
        font-size: 0;
    }

    footer .box_wrap .box {
        margin: 0 0 0;
        background: #fff;
        width: 50%;
        height: 210px;
        box-sizing: border-box;
        vertical-align: top;
        display: inline-block;
    }

    footer .box_wrap .box a {
        display: block;
        padding: 47px 0 0;
        height: 210px;
        box-sizing: border-box;
    }

    footer .box_wrap .box a:hover span {
        opacity: 0.5;
    }

    footer .box_wrap .box:nth-child(1) {
        border-bottom: none;
        border-right: 1px solid #e3e3e3;
    }

    footer .box_wrap .box .icon {
        margin: 0 0 5px;
        text-align: center;
        display: block;
        height: 70px;
        box-sizing: border-box;
    }

    footer .box_wrap .box .main_text {
        margin: 0 0 9px;
        text-align: center;
        display: block;
        font-size: 20px;
        color: #00327f;
        font-weight: bold;
    }

    footer .box_wrap .box .text {
        margin: 0 0 0;
        text-align: center;
        display: block;
        font-size: 14px;
    }

    footer address {
        font-size: 10px;
        background: #fff;
        color: #263970;
        padding: 5px 10px;
        text-align: center;
    }


    /* TOPへ戻るボタン
   ========================================================================== */
    #page-top {
        position: fixed;
        bottom: 20px;
        right: 40px;
        z-index: 100;
    }

    #page-top img {
        width: auto;
    }

    #page-top span {
        display: none;
    }

    #page-top a {
        display: block;
        height: 69px;
        opacity: 0.8;
        transition: ease-in 0.3s;
    }

    #page-top a:hover {
        opacity: 1;
    }

    /* bottom_tel
   ========================================================================== */
    .bottom_tel {
        display: none;
    }

    /* 表示・非表示
   ========================================================================== */
    .pc_none {
        display: none;
    }

    .sp_none {
        display: block;
    }

    /* トップページ　メインビジュアル内
   ========================================================================== */
    .pc_top_titlelogo {
        position: absolute;
        width: auto;
        display: inline-block;
        line-height: 0;
        bottom: 330px;
        right: 163px;
    }

}


@media screen and (min-width : 1150px) {

    .top_page_photo .box_wrap .text_box {
        padding: 30px 80px 0 0;
    }

}

/* 首页 */
.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}

.entry-title--post-type--page,
h2 {
    padding: 8px 0;
    border-top: 2px solid #337ab7;
    border-bottom: 1px solid #0000000f;
    font-size: 28px;
    line-height: 51px;
    margin-bottom: 25px;
}

.wp-block-columns {
    align-items: normal !important;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap !important;
}

body .is-layout-flex {
    display: flex;
}

:root :where(.is-layout-flex) {
    gap: 24px;
}

.wp-block-column {
    flex-grow: 1;
    min-width: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}

.wp-block-column img {
    width: 100% !important;
    height: auto;
}

.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
    flex-basis: 0;
    flex-grow: 1;
}

.is-layout-flex {
    flex-wrap: wrap;
    align-items: center;
}

:root :where(.is-layout-flow)>* {
    margin-block-start: 24px;
    margin-block-end: 0;
}

.wp-block-buttons>.wp-block-button {
    display: inline-block;
    margin: 0;
    margin: auto;
}

.wp-block-buttons .wp-block-button__link {
    border-radius: 5px;
}

.wp-block-button .wp-block-button__link {
    background-color: #337ab7;
    display: none;
}

.wp-block-button__link {
    padding-top: calc(.6em + 2px);
    padding-bottom: calc(.6em + 2px)
}

.wp-block-button__link,
.wp-block-button__link:hover {
    color: #fff
}

.wp-block-button__link {
    font-size: 1rem;
    transition: all .1s ease-in;
    width:180px;
}

:root :where(.wp-element-button, .wp-block-button__link) {
    /* background-color: #32373c; */
    border-width: 0;
    color: #fff;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    padding: calc(0.667em + 2px) calc(1.333em + 2px);
    text-decoration: none;
}

.wp-block-button__link {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    word-break: break-word
}

.aligncenter {
    clear: both;
}

.wp-block-search.aligncenter .wp-block-search__inside-wrapper {
    margin: auto;
}

.wp-block-search__inside-wrapper {
    display: flex;
    flex: auto;
    flex-wrap: nowrap;
    max-width: 100%;
}

.wp-block-search input.wp-block-search__input {
    max-width: initial;
    width: 64%;
    border: 1px solid #ccc;
    padding: 6px 12px;
    font-size: 14px;
    margin-right: 0;
    margin-bottom: 0;
}

.wp-block-search .wp-block-search__button {
    width: 33%;
    color: #fff;
    background-color: #337ab7;
    border: none;
    padding: 6px;
    font-size: 16px;
    box-shadow: none;
    text-align: center;
    margin-left: 10px;
}

.wp-block-search__button,
.wp-block-search__input {
    border-radius: 5px;
}

.wp-block-search .wp-block-search__label {
    display: none;
}

.alignfull,
.alignfull.swiper-container,
.alignfull.vk_slider,
.alignfull.wp-block-cover,
.alignfull.wp-block-cover-image,
.alignfull.wp-block-image {
    width: auto;
    margin-left: calc(50% - 49.6vw);
    margin-right: calc(50% - 49.6vw);
    max-width: 100vw;
}

.wp-block-cover,
.wp-block-cover-image {
    align-items: center;
    background-position: 50%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    min-height: 430px;
    overflow: hidden;
    overflow: clip;
    padding: 1em;
    position: relative;
    background: #ffffff75;
}

.has-text-align-center {
    text-align: center;
}

.index01bg {
    background: url(/images/bg2.png)center no-repeat;
    background-size: 100% 100%;
    display: flex;
    margin-left: calc(50% - 49.6vw);
    margin-right: calc(50% - 49.6vw);
    min-height: 545px;
    display: none;
}

.index01_cen01 {
    max-width: 1110px;
    margin: auto;
}

.index01_cen02 {
    display: flex;
    margin-top: 24px;
    gap: 24px;
}

.index01_cen02 img {
    width: 354px !important;
}

.index01_cen02 .title {
    font-size: 19px;
    color: #fff;
    text-align: center;
    border-bottom: 1px solid #0000000f;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.index01_cen02 .content {
    margin-top: 10px;
    color: #fff;
    font-size: 16px;
}

.index02bg {
    background: url(/images/bg3.jpg) center no-repeat;
    background-size: 100% 100%;
    margin-left: calc(50% - 49.6vw);
    margin-right: calc(50% - 49.6vw);
}

.index02_cen01 .title {
    padding: 14px 0;
    border-top: 2px solid #337ab7;
    border-bottom: 1px solid #0000000f;
    font-size: 28px;
    color: #000;
    font-weight: bold;
    margin: 25px 0 28px;
}

.index02_cen01 {
    max-width: 1110px;
    margin: auto;
    min-height: 553px;
}

.index02_cen02 {
    margin-top: 20px;
}

.index02_cen04 {
    margin: 24px 0px;
    font-size: 24px;
    font-weight: bold;
    border-bottom: 1px solid #0003;
    padding: 12px 0px;
    position: relative;
}

.index02_cen04::after {
    content: ".";
    line-height: 0;
    display: block;
    overflow: hidden;
    position: absolute;
    bottom: -1px;
    width: 30%;
    border-bottom: 1px solid #337ab7;
}

.index02_cen05 {
    display: flex;
    gap: 24px;
}

.index02_cen06 img {
    width: 100% !important;
}

.index02_cen07 {
    font-size: 19px;
    font-weight: bold;
    margin: 0 0 19px;
    padding: 0 0 9px;
    border-bottom: 1px solid #0000000f;
}

.index02_cen08 {
    font-size: 18px;
    margin: 24px 0 18px;
}

.index02_cen09 {
    margin-top: 24px;
}

.index02_cen11 {
    border-radius: 5px;
    background-color: #337ab7;
    padding-top: calc(.6em + 2px);
    padding-bottom: calc(.6em + 2px);
    color: #fff;
    font-size: 16px;
}

.index03bg {
    font-size: 32px;
    margin: 24px 0 32px;
    font-weight: bold;
}

.index04bg {
    display: flex;
    gap: 24px;
}



.index04_cen01 img {
    width: 100% !important;
}

.index04_cen02 {
    padding: .5em;
    background-color: #0000000f;
    border-radius: 5px;
    font-size: 21px;
    font-weight: bold;
    margin-bottom: 20px;
}

.index04_cen03 {
    margin: 24px 0 18px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}

.index04_cen04 {
    display: flex;
    justify-content: center;
    height: 45px;
}


    .index04_cen01{
        flex-basis: 0;
        flex-grow: 0.5;
       }


.index04_cen05 {
    border-radius: 5px;
    background-color: #337ab7;
    padding-top: calc(.6em + 2px);
    padding-bottom: calc(.6em + 2px);
    color: #fff;
}

.index05bg {
    font-size: 28px;
    margin: 0px 0 28px;
    font-weight: bold;
    padding: 14px 0;
    border-top: 2px solid #337ab7;
    border-bottom: 1px solid #0000000f;
}

.smb-step__item {
    margin-left: 60px;
}

.smb-step__item__title {
    align-items: center;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    font-weight: 700;
    /* margin-bottom: var(--_margin-1); */
    position: relative;
}

.smb-step__item__title>.smb-step__item__number {
    left: 0;
    margin-left: -65px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.smb-step__body {
    position: relative;
}

.smb-step__body:before {
    border-left: 1px dotted #ccc;
    bottom: 20px;
    content: "";
    display: block;
    left: 14px;
    position: absolute;
    top: 10px;
}

.smb-step__body>*+* {
    margin-top: 40px;
}

.smb-step__item__number {
    --_font-size-level: -2;
    align-items: center;
    background-color: #000;
    border-radius: 100%;
    color: #ffffff;
    display: flex;
    /* font-size: var(--_font-size); */
    font-weight: 400;
    height: 40px;
    justify-content: center;
    /* line-height: var(--_line-height); */
    overflow: hidden;
    width: 40px;
}

.smb-step__item__number:before {
    content: counter(item);
    counter-increment: item;
}

.smb-step__item__title>span {
    flex: 1 1 auto;
}

.index06bg {
    max-width: 1110px;
    margin: auto;
    z-index: 1;
}


element.style {
    background-color: #3e80a8;
}

.wp-block-cover .has-background-dim:not([class*=-background-color]),
.wp-block-cover-image .has-background-dim:not([class*=-background-color]),
.wp-block-cover-image.has-background-dim:not([class*=-background-color]),
.wp-block-cover.has-background-dim:not([class*=-background-color]) {
    background-color: #000;
}

/* .wp-block-cover .wp-block-cover__background, .wp-block-cover .wp-block-cover__gradient-background, .wp-block-cover-image .wp-block-cover__background, .wp-block-cover-image .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim:not(.has-background-gradient):before, .wp-block-cover.has-background-dim:not(.has-background-gradient):before {
    bottom: 0;
    left: 0;
    opacity: .5;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
} */

.wp-block-cover-image.has-parallax,
.wp-block-cover.has-parallax,
.wp-block-cover__image-background.has-parallax,
video.wp-block-cover__video-background.has-parallax {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
}


.wp-block-cover .wp-block-cover__image-background,
.wp-block-cover video.wp-block-cover__video-background,
.wp-block-cover-image .wp-block-cover__image-background,
.wp-block-cover-image video.wp-block-cover__video-background {
    border: none;
    bottom: 0;
    box-shadow: none;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    object-fit: cover;
    outline: none;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

.wp-block-cover__image-background,
.wp-block-cover__video-background {
    z-index: 0;
}

/* .wp-block-cover .wp-block-cover__background, .wp-block-cover .wp-block-cover__gradient-background, .wp-block-cover-image .wp-block-cover__background, .wp-block-cover-image .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim:not(.has-background-gradient):before, .wp-block-cover.has-background-dim:not(.has-background-gradient):before {
    bottom: 0;
    left: 0;
    opacity: .5;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
} */
.has-white-background-color {
    background-color: #ffffff !important;
}


body .container .is-layout-flow>*+*, body .is-layout-constrained>*+* {
    -webkit-margin-before: unset;
    margin-block-start: unset;
}

:root :where(.is-layout-flow) > :first-child {
    margin-block-start: 0;
}
@media (min-width: 576px) {

    .container,
    .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {

    .container,
    .container-md,
    .container-sm {
        max-width: 720px;
    }
}

@media (min-width: 782px) {
    .wp-block-columns {
        flex-wrap: nowrap !important;
    }

    .wp-block-columns {
        align-items: center !important;
        box-sizing: border-box;
        display: flex;
        /* flex-wrap: wrap !important; */
    }

    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 0;
        flex-grow: 1;
    }
}

@media (min-width: 992px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm {
        max-width: 960px;
    }

}

@media (min-width: 1200px) {
    .site-body {
        padding: 3.5rem 0 4rem;
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1140px;
    }
}

@media (max-width: 999px) {

    .entry-title--post-type--page,
    h2 {
        font-size: 22px;
        line-height: 32px;
    }

    body .is-layout-flex,
    .index01_cen02,
    .index02_cen05,
    .index04bg {
        display: block;
    }

    .wp-block-spacer {
        /* display: none; */
    }

    .index01_cen02 img {
        width: 100% !important;
    }

    .index01_cen02 {
        padding: 0px 20px;
        box-sizing: border-box;
    }

    .index02_cen01 {
        padding: 0px 20px;
        box-sizing: border-box;
    }

    .hideCon {
        display: none;
    }
}

.smb-list ul {
    list-style: none !important;
}

.smb-list ul>li {
    position: relative;
}

li {
    margin-top: .5em;
    margin-bottom: .5em;
}

.smb-list ul>li .smb-list__icon {
    /* left: -1.5em; */
    /* position: absolute; */
    margin-right: 10px;
}

svg:not(:host).svg-inline--fa,
svg:not(:root).svg-inline--fa {
    overflow: visible;
    box-sizing: content-box;
}

.svg-inline--fa {
    display: var(--fa-display, inline-block);
    height: 1em;
    overflow: visible;
    vertical-align: -.125em;
}

.wp-block-table,
blockquote,
dl,
iframe,
ol,
p,
ul {
    margin-bottom: 24px;
}

.searchform div {
    display: flex;
}

input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url],
select,
textarea {
    font-size: 1rem;
    border: 1px solid #0003;
    border-radius: 5px;
    padding: .8em 1em;
    /* margin: 0 0 .5rem; */
    width: 100%;
    color: #333333;
    background-color: #fff;
}

.searchform input[type=text] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

input[type=submit] {
    font-size: 1rem;
    /* border: 1px solid var(--vk-color-primary-dark); */
    background-color: #337ab7;
    color: #fff;
    padding: .5em 2em;
    border-radius: 5px;
}

.searchform input[type=submit] {
    border: 1px solid #0003;
    border-left: none;
    padding-left: .5em;
    padding-right: .5em;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    letter-spacing: 1px;
    width: 30%;
}

.medical_btn {
    margin: 0 !important;
}

.service01bg {
    margin-top: -70px;
    padding-top: 70px;
    margin-bottom: 70px;
}

.service01bg>.container {
    max-width: 1030px;
    width: 100%;
    margin: auto;
    padding: 0 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.service01bg>.container .img {
    width: 50%;
}

.service01bg>.container .img img {
    border-radius: 10px;
    max-width: 100%;
    height: auto;
    width: auto;
    display: block;
}

.service01bg>.container>.content.reverse {
    padding: 0 0 0 2%;
}

.service01bg>.container>.content {
    width: 48%;
    padding: 0 2% 0 0;
}

.service01bg>.container>.content>h2 {
    color: #002857;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 20px;
    border-top: 0px
}

.service01bg>.container>.content>h3 {
    color: #E89C64;
    font-weight: 700;
    font-size: 1.13rem;
    font-family: arial;
    margin-bottom: 30px;
    display: none;
}

.service01bg p:last-child {
    padding: 0;
}

.service01bg p {
    text-align: left;
    font-size: 1rem;
    line-height: 2;
    padding: 0 0 40px;
    color: #1f2933;
}

@media (max-width:999px) {
    .service01bg>.container {
        display: block;
    }
    .service01bg > .container .img,.service01bg > .container > .content{
        width: 100%;
    }
    .service01bg > .container > .content > h2{
        margin-top: 20px;
    }
}


/*banner*/
.banner {
	position: relative;
	overflow: hidden;
}

.banner .swiper-container {}

.banner .swiper-slide {
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.banner .swiper-slide.swiper-slide-active {
	z-index: 2;
}

.banner .swiper-slide img {
	display: block;
	width: 100% !important;
	height: 40vw;
	background: #f9f9f9;
/* margin-top:80px; */
}

.banner .swiper-slide .txtbg {
	width: 80%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.banner .swiper-slide .txt {
	color: #fff;
	text-align: center;
}

.banner .swiper-slide .txt .h2 {
	font-size: 3.12vw;
	line-height: 1.2em;
	font-weight: bold;
	margin-bottom: 1.04vw;
}

.banner .swiper-slide .txt .h3 {
	font-size: 2.08vw;
	line-height: 1.4em;
}

.banner .swiper-pagination {
	height: 10px;
	bottom: 20px;
}

.banner .swiper-pagination span {
	display: inline-block;
	vertical-align: top;
	width: 10px;
	height: 10px;
	border-radius: 10px;
	margin: 0 8px;
	background: #fff;
	opacity: 1;
	transition: all .3s ease;
}

.banner .swiper-pagination span.swiper-pagination-bullet-active {
	width: 20px;
	background: #fff;
	opacity: 1;
}

.banner .swiper-button-prev,
.banner .swiper-button-next {
	width: 60px;
	height: 60px;
	margin-top: -30px;
	background-color: rgba(0, 0, 0, .5);
	background-size: 15px 30px;
	opacity: 0;
	transition: all .3s ease;
	border-radius: 8px;
}

.banner .swiper-button-prev {
	left: 5%;
	transform: translateX(-100%);
}

.banner .swiper-button-next {
	right: 5%;
	transform: translateX(100%);
}

.banner:hover .swiper-button-prev,
.banner:hover .swiper-button-next {
	opacity: .7;
	transform: translateX(0) !important;
}

.banner .swiper-button-prev:hover,
.banner .swiper-button-next:hover {
	opacity: 1;
}

@media(max-width:999px) {
	.banner .swiper-slide img {
		height: 50vw;
margin-top:0px;
	}

	.banner .swiper-slide .txtbg {
		width: 90%;
	}

	.banner .swiper-slide .txt .h2 {
		font-size: 24px;
		line-height: 1.2em;
		margin-bottom: 5px;
	}

	.banner .swiper-slide .txt .h3 {
		font-size: 14px;
		line-height: 1.4em;
	}

	.banner .swiper-pagination {
		bottom: 10px;
	}

	.banner .swiper-button-prev,
	.banner .swiper-button-next {
		width: 40px;
		height: 40px;
		margin-top: -20px;
	}
}