﻿@charset "utf-8";
/* CSS Document */

body {
    font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic Pro", "Yu Gothic", "Meiryo", sans-serif;
}


/*=============================================================================
  SP START
=============================================================================*/
@media screen and (min-width: 200px) {
    .twitter-timeline {
        height: 600px;
        overflow: scroll;
    }

    #slider-pro-pc {
        display: none;
    }

    .main-visual-sp {
        width: 100%;
    }

    .main-visual-sp-txt {
        margin: 0 0 10px 0;
    }

    .main-visual-sp-txt img {
        display: block;
        margin: 10px auto 0 auto;
        max-width: 210px;
        width: 100%;
    }

    .main-visual-sp-img {
        border: 5px solid #7ec7f1;
        border-radius: 10px;
        margin: 0 auto;
        overflow: hidden;
        width: 96%;
    }

    .main-visual-sp-img img {
        display: block;
        margin: 0 auto;
        width: 100%;
    }

    .activity-wrap {
        margin: 15px auto;
        width: 100%;
    }

    .activity-inner {
        background: url(../images/bg_stripe_blue.png);
        padding: 20px 20px;
    }

    ul.activity-list {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        list-style: none;
        margin: 0 auto;

/* width: 50%; */
        max-width: 300px;
        padding: 0;
    }

    ul.activity-list li {
        background: #fff;
        border-radius: 10px;
        max-width: 290px;
        min-width: 230px;
        overflow: hidden;
    }

    ul.activity-list li + li {
        margin-top: 10px;
    }

    ul.activity-list li a {
        color: #333;
        display: block;
        font-size: 120%;
        font-weight: bold;
        margin: 0;
        padding: 0;
        text-align: center;
        text-decoration: none;
    }

    ul.activity-list li p {
        margin: 0.5em 0;
    }

    ul.activity-list li a img {
        display: block;
        width: 100%;
    }

    ul.activity-list li a img:hover {
        filter: opacity(70%);
    }

    .catch-area {
        align-items: center;

/* background: #aaaaaa; */
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 0 auto;
        max-width: 850px;
    }

    .catch-txt {
        font-size: 115%;
        letter-spacing: 1px;
        margin: 0 0 10px 0;
        width: 90%;
    }

    .catch-txt p {
        line-height: 200%;
        margin: 0;
    }

    .catch-txt p br {
        display: none;
    }

    .catch-txt p span {
        /* display: block; */
        background: linear-gradient(transparent 70%, #ff0 70%);
    }

    .catch-txt p span + br + span {
        /* margin-left: 0; */
    }
    .catch-img {
        margin: 0 0 0 2%;
        max-width: 140px;
        width: 50%;
    }

    .catch-img img {
        display: block;
        margin: 0 auto;
        width: 100%;
    }

    .embed-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 20px auto 0 auto;
        overflow: hidden;
        width: 95%;
    }
    .embed-wrap2 {
        margin: 20px auto 0 auto;
        width: 95%;
    }

    section.embed-info {
        margin: 0 auto 20px auto;
        max-width: 900px;
        width: 100%;
    }

    h2.embed-title {
        margin: 0 0 1.2em 0;
        text-align: center;
    }

    span.embed-title-en {
        color: #44acd3;
        font-size: 75%;
        font-weight: normal;
        letter-spacing: 1px;
    }

    p.embed-title-jp {
        color: #333;
        letter-spacing: 1px;
        margin: 0;
    }

    p.embed-title-jp span {
        background: #fff;
        padding: 0 10px;
    }

    p.embed-title-jp:after {
        background: #333;
        content: "";
        display: block;
        height: 1px;
        margin: -0.7em auto 0 auto;
        width: 100%;
    }

    .embed-info-inner {
        background: #fff;
        border: 1px solid #ddd;
        height: 330px;
        overflow-y: scroll;
        padding: 10px 20px;
    }

    .embed-info-inner dl {
        color: #333;
        margin: 0;
    }

    .embed-info-inner dl dt, .embed-info-inner dl dd {
        line-height: 150%;
    }

    .embed-info-inner dt {
        margin: 0;
        width: 100%;
    }

    .embed-info-inner dd {
        border-bottom: 1px dotted #ccc;
        margin: 0 0 0 0;
        padding: 0 0 0.5em 0;
        width: 100%;
    }

    .embed-info-inner dl dd + dt {
        margin: 0.5em 0 0 0;
    }

    section.embed-tw {
        margin: 0 0 0 0;
        width: 500px;
    }
    section.embed-fb {
        margin: 0 0 0 0;
        width: 500px;
    }
    footer {
        background: #3b7bce;
        margin: 30px 0 0 0;
        padding: 0 0 0 0;
    }

    .footer-inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        margin: 0 20px;
        padding: 25px 0;
    }

    ul.footer-navi {
        list-style: none;
        margin: 0 0 0.5em 0;
        padding: 0;
        width: 100%;
        /* background: #aaaaaa; */
    }

    ul.footer-navi li {
    }

    ul.footer-navi li + li {
        margin-top: 0.5em;
    }

    ul.footer-navi li a {
        color: #fff;
        text-decoration: none;
    }

    .footer-info {
        margin: 30px 0 0 0;
        width: 100%;
    }

    h2.footer-info-title {
        color: #fff;
        display: block;
        margin: 0 0 0 auto;
        text-align: center;
        width: 100%;
    }

    address.footer-info-contact {
        display: block;
        font-style: normal;
        margin: 0 0 0 auto;
        width: 100%;
    }

    ul.footer-info-contact-list {
        list-style: none;
        margin: 15px 0 0 0;
        padding: 0;
        text-align: center;
    }

    ul.footer-info-contact-list li {
        align-items: center;
        color: #fff;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    ul.footer-info-contact-list li + li {
        margin-top: 1em;
    }

    ul.footer-info-contact-list li a {
        color: #fff;
        text-decoration: none;
    }

    .footer-bottom {
        background: #fff;
        margin: 0;
        width: 100%;
    }
    .footer-bottom-inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 auto;
        padding: 0 0;
        width: 95%;
    }

    .footer-copyright {
        margin: 5px 0 0 0;
        order: 2;
        text-align: center;
        width: 100%;
    }

    .footer-bottom-link {
        margin: 5px 0 0 0;
        order: 1;
        padding: 0;
        width: 100%;
    }

    ul.footer-bottom-link-list {
        display: flex;
        flex-wrap: wrap;
        font-size: 85%;
        justify-content: center;
        list-style: none;
        margin: 0;
        padding: 0;
    }

    ul.footer-bottom-link-list li {
    }

    ul.footer-bottom-link-list li + li {
    }

    ul.footer-bottom-link-list li a {
        align-items: center;
        color: #333;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        text-decoration: none;
    }

    ul.footer-bottom-link-list li a:before {
        border-color: transparent transparent transparent #29487d;
        border-style: solid;
        border-width: 3px 0 3px 8px;
        content: "";
        display: block;
        height: 0;
        margin: 1px 2px 0 0;
    }
    a.footer-map,
    a.footer-tel,
    a.footer-fax {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .footer-map:before,
    .footer-tel:before,
    .footer-fax:before {
        content: "";
        display: block;
        height: 30px;
        width: 30px;
    }

    .footer-map:before {
        background: url(../images/icon_map.png) no-repeat center;
    }

    .footer-tel:before {
        background: url(../images/icon_tel.png) no-repeat center;
        margin: 0 2px 0 0;
    }

    .footer-fax:before {
        background: url(../images/icon_fax.png) no-repeat center;
        margin: 0 2px 0 0;
    }

    @media screen and (max-width: 768px) {
        .kokumin_link {
            margin-top: 10px;
            text-align: center;
        }
    }


    .main-visual-sub-pc {
        display: none;
    }

    section.contents-wrap {
        margin: 0 auto;
        width: 95%;
    }

    .page-title {
        font-size: 180%;
        margin: 1em 0;
        text-align: center;
    }

    .page-title span {
        border: 1px solid #e7bd68;
        border-left: 0;
        border-right: 0;
        display: block;
        padding: 0.2em 0;
    }

    .page-desc-wrap {
        margin: 1em 0 2em 0;
    }

    .page-desc-wrap p {
        font-size: 115%;
        line-height: 170%;
        margin: 0 10px;
        text-align: justify;
    }

    .page-desc-wrap p br {
        display: none;
    }

    .page-desc-wrap p strong {
        color: #de9b13;
    }

    ol.oath-list {
        counter-reset: oath;
        list-style: none;
        margin: 0;
        padding: 0 0 0 0;
    }

    ol.oath-list li {
        counter-increment: oath;
    }

    ol.oath-list li + li {
        margin-top: 55px;
    }

    dl.oath-list-detail {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }


    dl.oath-list-detail dt {
        color: #09489d;
        font-size: 130%;
        font-weight: bold;
        text-align: center;
        width: 100%;
    }

    dl.oath-list-detail dt:before {
        background: #09499d;
        border-radius: 50%;
        color: #fff;
        content: counter(oath);
        display: block;
        font-size: 140%;
        font-weight: normal;
        height: 50px;
        line-height: 50px;
        margin: 0 auto 0 auto;
        text-align: center;
        width: 50px;
    }

    dl.oath-list-detail dt strong {
        color: #de9b13;
        font-size: 140%;
        font-weight: bold;
    }

    dl.oath-list-detail dd {
        margin: 0 auto 0 auto;
        max-width: 100%;
        padding: 0;
    }

    dl.oath-list-detail dt span {
        display: block;
    }

    .oath-list-txt {
        margin: 10px auto 0 auto;
        max-width: 380px;
    }

    .oath-list-txt p {
        margin: 0 10px;
        text-align: justify;
    }
    .oath-list-img {
        background: #f4e2c5;
        border-radius: 50%;
        display: block;
        left: 5px;
        margin: 20px auto 0 auto;
        max-width: 380px;
        position: relative;
        z-index: 1;
    }

    .oath-list-img img {
        border-radius: 50%;
        display: block;
        height: auto;
        left: -10px;
        position: relative;
        top: -10px;
        width: 100%;
        z-index: 2;
    }

    .profile-wrap {
    }

    div#slider-prof {
        margin: 0 auto;
        max-width: 440px !important;
    }

    .profile-img {
        max-width: 440px !important;
    }

    .profile-txt {
        margin: 10px auto 0 auto;
    }

    .profile-name {
        margin: 0;
        padding: 0;
        text-align: center;
    }

    p.profile-name-b {
        color: #09499d;
        font-size: 140%;
        font-weight: bold;
        margin: 0;
    }

    p.profile-name-ruby {
        color: #666;
        font-size: 70%;
        font-weight: normal;
        margin: 0;
    }

    dl.profile-txt-deatile {
        display: flex;
        flex-wrap: wrap;
        font-size: 110%;
        justify-content: flex-start;
        margin: 20px 0 0 0;
        padding: 0;
    }

    dl.profile-txt-deatile dt {
        background: #09489d;
        color: #fff;
        padding: 3px 0;
        text-align: center;
        width: 100%;
    }

    dl.profile-txt-deatile dd {
    }

    p.profile-name-ruby:before {
        content: "・・;
    }

    p.profile-name-ruby:after {
        content: "・・;
    }

    dl.profile-txt-deatile dd {
        margin: 0;
        padding: 0;
        text-align: center;
        width: 100%;
    }

    dl.profile-txt-deatile dd + dt {
        margin-top: 10px;
    }
    .profile-jpb-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 35px 0 10px 0;
    }

    section.profile-job-child {
        margin: 0 0 15px 0;
        width: 100%;
    }

    .profile-job-name {
        margin: 0;
        text-align: center;
    }

    .profile-job-name span {
        background: #fff;
        padding: 0 10px;
    }

    .profile-job-name:after {
        background: #de9b13;
        content: "";
        display: block;
        height: 1px;
        margin: -0.7em auto 0 auto;
        width: 100%;
    }

    ul.profile-job-list {
        font-size: 95%;
        line-height: 130%;
        margin: 20px 0;
        padding-left: 25px;
    }

    ul.profile-job-list li {
    }

    ul.profile-job-list li + li {
        margin-top: 0.5em;
    }
    ul.profile-job-list li.profile-job-list-head {
        color: #09489d;
        font-size: 110%;
        letter-spacing: 1px;
        list-style: none;
        margin: 0 0 1em -1.5em;
    }

    table.profile-career-tbl {
        border-collapse: collapse;
        border-spacing: 0;
        margin: 0 auto 40px auto;
        width: 100%;
    }

    table.profile-career-tbl tr {
        display: block;
        margin: 0 0 0 0;
    }

    table.profile-career-tbl th, table.profile-career-tbl td {
        display: block;

/* border: 1px solid #cccccc; */
        padding: 2px 10px 2px 10px;
        text-align: left;
    }

    table.profile-career-tbl th {
        background: rgba(126, 197, 241, 0.2);
        border-bottom: 0;

/* color: #ffffff; */
        margin-top: 15px;
        padding: 8px 10px;
    }

    table.profile-career-tbl td {
        border-bottom: 0;
    }

    table.profile-career-tbl tr:last-child td {
        /* border-bottom: 1px solid #cccccc; */
    }
    .profile-career-title {
        margin: 0 0 0.5em 0;
        text-align: center;
    }

    .profile-career-title span {
        background: #fff;
        padding: 0 10px;
    }

    .profile-career-title:after {
        background: #de9b13;
        content: "";
        display: block;
        height: 1px;
        margin: -0.7em auto 0 auto;
        width: 100%;
    }


    .policy-wrap {
        margin: 0 0 30px 0;
    }
    ol.policy-list {
        counter-reset: policy;
        list-style: none;
        margin: 0;
        padding: 0;
    }

    ol.policy-list li {
        counter-increment: policy;
    }

    .policy-detail {
        background: #f7f7f7;
        border-radius: 10px;
        margin: 0;
        padding: 20px;
    }

    .policy-detail dt {
        color: #094a9d;
        font-size: 135%;
        font-weight: bold;
        margin: 0 0 0.5em 0;
        text-align: center;
    }

    .policy-detail dd {
        margin: 0;
        padding: 0;
    }

    .policy-detail dd p {
        margin: 0;
        text-align: justify;
    }

    ol.policy-list li:before {
        color: #de9b13;
        content: counter(policy);
        display: block;
        font-size: 190%;
        font-weight: bold;
        margin: 0 0 -20px 0;
        position: relative;
        text-align: center;
        top: -2px;
    }

    ol.policy-list li + li {
        margin-top: 10px;
    }



    h2.page-title-02 {
        background: #09499d;
        border-radius: 4px;
        color: #fff;
        font-size: 115%;
        letter-spacing: 1px;

/* max-width: 960px; */
        margin-left: auto;
        margin-right: auto;
        padding: 5px 10px;
        padding-bottom: 10px;
        padding-top: 10px;
    }

    dl.access-info {
        border-top: 1px solid #ccc;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        margin: 0 0 20px 0;
        padding: 0;
    }

    dl.access-info dt, dl.access-info dd {
        /* margin-bottom: 0px; */
        border-bottom: 1px solid #ccc;
        padding: 6px 3%;
    }

    dl.access-info dt {
        background: #efefef;
        width: 19%;
        /* padding: 6px 10px; */
    }

    dl.access-info dd {
        margin: 0 0 0 0;
        width: 69%;
        /* border-bottom: 1px dotted #cccccc; */
    }

    .access-map-wrap {
        height: 300px;
        margin: 0 auto;
        max-width: 800px;
    }

    .access-map-wrap iframe {
        height: 100%;
        width: 100%;
    }
    .access-parking-wrap {
        height: auto;
        margin: 0 auto;
        max-width: 450px;
    }

    .access-parking-wrap img {
        display: block;
        margin: 0;
        width: 100%;
    }

    .sitepolicy-intro {
        font-size: 95%;
        margin: 0 0 30px 0;
        padding: 0 15px;
    }
    ol.sitepolicy-num-list {
        background: #f3f3f3;
        border: 1px solid #ccc;
        padding: 1em 1em 1em 2em;
        padding-left: 1.5em;
    }

    ol.sitepolicy-num-list li {
    }

    ol.sitepolicy-num-list li + li {
        margin-top: 1em;
    }

    ul.sitepolicy-list {
        background: #f3f3f3;
        border: 1px solid #ccc;
        padding: 1em 1em 1em 2em;
        padding-left: 1.5em;
    }

    ul.sitepolicy-list li {
    }

    ul.sitepolicy-list li + li {
        margin-top: 1em;
    }

    .press-navi {
        margin: 30px 0;
        padding: 0 5px;
        /* background: #f3f3f3; */
        /* border: 1px dotted #cccccc; */
        /* border-left: 0; */
        /* border-right: 0; */
    }

    ul.press-navi-list {
        display: flex;
        flex-wrap: wrap;
        font-size: 100%;
        justify-content: flex-start;
        list-style: none;
        margin: 0;
        padding: 0;
    }

    ul.press-navi-list li {
        margin: 5px 0;
        margin: 2px 1%;
        text-align: center;
        width: 31%;
    }

    ul.press-navi-list li + li {
    }

    ul.press-navi-list a {
        background: #fff;
        border: 1px solid #09489d;
        color: #09489d;
        display: block;
        padding: 2px 10px;
        text-decoration: none;
    }

    .press-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    dl.press-item {
        border: 1px solid #ccc;
        margin: 1%;
        width: 230px;
    }

    dl.press-item dt {
        background: #f6f6f6;
        font-size: 105%;
        padding: 10px 15px;
        text-align: center;
    }

    dl.press-item dd {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 0;
        padding: 0;
        width: 100%;
    }

    dl.press-item dd a {
        display: block;
        padding: 10px 0;
        text-decoration: none;
        width: 100%;
    }

    dl.press-item dd a:after {
        background: #de9b13;
        color: #fff;
        content: "PDF形式で見る";
        display: block;
        font-size: 95%;
        margin: 5px auto 0 auto;
        padding: 2px 10px;
        text-align: center;
        width: 60%;
    }

    dl.press-item dd a img {
        display: block;
        margin: 0 auto;
    }

    ul.page-navi {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        list-style: none;
        margin: 40px 0 40px 0;
        padding: 0;
    }

    ul.page-navi li {
        width: 100%;
    }

    ul.page-navi li a {
        background: #aaa;
        background: #fff;
        border: 1px solid #09489d;
        color: #09489d;
        display: block;
        padding: 0.5em 1em;
        text-align: center;
        text-decoration: none;
        transition: all 0.3s ease-in-out;
    }

    ul.page-navi li + li {
        margin-top: 0.5em;
    }

    ul.page-navi li a:hover {
        background: #09489d;
        color: #fff;
        transition: all 0.3s ease-in-out;
    }

    dl.center-rule {
        margin: 0 auto;
        padding: 0;
        width: 95%;
    }

    dl.center-rule dt {
        border-bottom: 1px dotted #ccc;
        color: #09489d;
        font-size: 110%;
        font-weight: bold;
        margin: 0 0 0.2em 0;
        padding: 0 0 0.2em 0;
    }

    dl.center-rule dd {
        line-height: 140%;
        margin: 0 0 1.5em 0;
    }

    ol.center-num-list {
        margin: 1em 0 0 0;
        padding: 0 0 0 1.5em;
    }

    ol.center-num-list li {
    }

    ol.center-num-list li p {
        margin: 0;
    }

    ol.center-num-list li + li {
        margin-top: 1em;
    }

    span.center-num-list-title {
        font-weight: bold;
    }

    .nyukai-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        /* max-width: 300px; */
        /* margin: 0; */
    }

    .nyukai-item {
        width: 48%;
    }

    .nyukai-item a {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        text-decoration: none;
    }

    .nyukai-item h3 {
        color: #09489d;
        font-size: 101%;
        font-weight: normal;
        margin: 0.3em 0 0 0;
        order: 2;
        text-align: center;
        width: 100%;
    }

    .nyukai-item div {
        order: 1;
    }

    .nyukai-item div img {
        border: 1px solid #ccc;
        display: block;
        height: auto;
        margin: 0 auto;
        max-width: 169px;
        width: 100%;
    }

    .nyukai-item + .nyukai-item {
        /* margin-top: 30px; */
    }

    .kouenkai-intro-txt {
        margin: 0 10px 0 10px;
    }

    figure.kouenkai-intro-img {
        margin: 0;
    }

    figure.kouenkai-intro-img img {
        display: block;
        margin: 0 auto;
        max-width: 160px;
        width: 100%;
    }

    ul.kouenkai-list {
        margin: 0 0 0 0;
        padding: 0 0 0 1.5em;
    }

    ul.kouenkai-list li {
    }

    ul.kouenkai-list li + li {
        margin-top: 1em;
    }

    .sns-wrap-all {
        margin: 0;
        padding: 0;
    }

    dl.sns-wrap {
        border: 1px solid #ccc;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding: 20px 3%;
        width: 94%;
    }

    dl.sns-wrap dt {
        font-size: 18px;
        margin: 0 0 10px 0;
        text-align: center;
        width: 100%;
    }

    dl.sns-wrap dt a {
        color: #09489d;
        font-weight: bold;
        text-decoration: none;
    }

    dl.sns-wrap dd {
        margin: 0;
        padding: 0;
    }

    dl.sns-wrap dd a {
    }

    dl.sns-wrap dd figure {
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }

    .sns-wrap-txt {
        font-size: 98%;
        word-break: break-word;
    }

    dl.sns-wrap dd figure img {
        display: block;
        height: auto;
        margin: 0 auto;
        max-width: 268px;
        width: 100%;
    }

    .sns-wrap-txt a {
        align-items: center;
        color: #094a9d;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        text-decoration: none;
    }

    dl.sns-wrap dd a:before {
        background: url(../socialaccount/images/chk_off.png) no-repeat center;
        content: "";
        display: block;
        height: 20px;
        margin: 0 5px 0 0;
        width: 22px;
    }

    .sns-wrap-txt a span {
        display: block;
        width: 90%;
    }

    table.voice_tbl {
        border-collapse: collapse;
        border-left: #ccc solid 1px;
        border-top: #ccc solid 1px;
        margin: 0;
        width: 100%;
    }
    table.voice_tbl th {
        background-color: #efefef;
        border: 1px solid #ccc;
        border-left: 0;
        border-top: 0;
        display: block;
        font-weight: normal;

/* width: 100%; */
        text-align: left;
    }
    table.voice_tbl td {
        border: 1px solid #ccc;
        border-left: 0;
        border-top: 0;
        display: block;
        /* width: 100%; */
    }
    table.voice_tbl input, table.voice_tbl textarea {
        border: 0;

/* font-family: Arial, sans-serif; */
        /* color: #666; */
        border: solid 1px #ccc;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
        -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
        -moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
        box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
        font-size: 120%;
        padding: 2px;
    }
    .btn_submit {
        padding: 12px 0;
        text-align: center;
    }
    .btn_submit input {
        padding: 4px 8px;
        text-align: center;
        width: 120px;
    }

    /* kouenkai */

    .kouenkai {
        margin: 1em auto;
        position: relative;
        width: 86%;
    }

    .kouenkai img {
        float: left;
        margin: 10px 10px 3px 0 ;
    }

    .kai_intro {
        font-size: 130%;
        letter-spacing: 0.1em;
        line-height: 140%;
        margin: 0 0 0.7em;
        padding: 0.2em 0 0 0;
        text-indent: 1em;
    }

    .kiyaku {
        list-style: none;
        margin: 10px auto 30px;
        padding: 0;
        width: 86%;
    }
    .kiyaku li {
        font-size: 130%;
        line-height: 160%;
        list-style: circle;
        list-style-position: inside;
        margin-left: 2em;
        padding-keft: 2em;
        text-indent: -2em;
    }

    .kiyaku li.nomark {
        list-style: none;
    }

    .entry {
        display: block;
        height: 74px;
        margin: 25px auto 50px;
        width: 404px;
    }
    table.voice_tbl tr {
        display: block;
    }

    table.voice_tbl th, table.voice_tbl td {
        padding: 5px 10px;
    }

    em.red {
        background: #fff;
        border: 1px solid #f00;
        color: #f00;
        font-size: 80%;
        font-style: normal;
        font-weight: bold;
        margin: 0 0 0 10px;
        padding: 0 5px 0 5px;
    }

    table.voice_tbl input[type="text"], table.voice_tbl textarea {
        display: block;
        width: 98%;
    }
    table.voice_tbl textarea {
        resize: vertical;
    }

    .report-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    dl.report-item {
        border: 1px solid #ccc;
        margin: 1%;
        width: 230px;
    }

    dl.report-item + dl.report-item {
    }

    dl.report-item dt {
        background: #f6f6f6;
        font-size: 105%;
        padding: 10px 15px;
        text-align: center;
    }

    dl.report-item dd {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 0;
        padding: 0;
        width: 100%;
    }

    dl.report-item dd a {
        display: block;
        padding: 10px 0;
        text-decoration: none;
        width: 100%;
    }

    dl.report-item dd a img {
        display: block;
        margin: 0 auto;
    }

    dl.report-item dd a:after {
        background: #de9b13;
        color: #fff;
        content: "PDF形式で見る";
        display: block;
        font-size: 95%;
        margin: 5px auto 0 auto;
        padding: 2px 10px;
        text-align: center;
        width: 60%;
    }

    .no-disp-pc {
        display: block;
    }
    .no-disp-sp {
        display: none;
    }

    a.btn-gotopage {
        display: block;
        padding-left: 1em !important;
        padding-right: 1em !important;
    }


    #page_top {
        bottom: 10px;
        display: none;
        position: fixed;
        right: 10px;
        z-index: 100;
    }
    #page_top a {
        background: none;
        bottom: 0;
        color: #000;
        display: block;
        height: 100px;
        position: relative;
        text-align: center;
        text-decoration: none;
        transition: all 0.3s, all 0.3s;
        width: 120px;
    }
    #page_top a span {
        color: #fff;
        display: block;
        font-size: 75%;
        font-size: 130%;
        font-weight: bold;
        line-height: 40px;
    }
    #page_top a span br {
        display: none;
    }
    #page_top a:hover {
        bottom: 4px;
        color: #e4007f;
        position: relative;
    }
}

@media screen and (min-width: 769px) {
    .catch-txt {
        margin: 0;
        width: 65%;
    }

    ul.activity-list {
        max-width: 740px;
        width: 95%;
    }

    ul.activity-list li {
        max-width: 290px;
        min-width: 190px;
        width: 31%;
    }

    ul.activity-list li + li {
        margin: 0 0 0 1%;
    }

    .footer-inner {
        justify-content: center;
    }

    ul.footer-navi {
        text-align: center;
        width: 40%;
    }

    dl.oath-list-detail dt {
        margin: 0 0 10px 0;
    }

    dl.oath-list-detail dt:before {
    }

    .oath-list-txt {
        margin: 10px 20px 30px 0;
        max-width: 760px;
        width: 55%;
    }

    dl.oath-list-detail dd {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .oath-list-img {
        margin: 0;
        max-width: 760px;
        width: 50%;
    }

    .profile-txt {
        align-items: center;
        display: flex;
    }

    h2.profile-name {
        width: 50%;
    }

    p.profile-name-b {
        font-size: 160%;
    }

    p.profile-name-ruby {
    }

    dl.profile-txt-deatile {
        width: 50%;
    }

    .policy-detail dt {
        text-align: center;
    }

    .press-wrap {
        justify-content: flex-start;
    }

    .press-wrap {
        margin: 0 auto;
        width: 750px;
    }

    ul.page-navi li {
        width: 48%;
    }

    ul.page-navi li + li {
        margin: 0 0 0 1em;
    }

    .center-wrap {
    }

    dl.center-rule {
        width: 100%;
    }
    .nyukai-wrap {
        justify-content: flex-start;
    }

    .nyukai-item {
        width: 260px;
    }

    .kouenkai-intro {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }

    figure.kouenkai-intro-img {
        width: 30%;
    }

    .kouenkai-intro-txt {
        width: 70%;
    }

    .sns-wrap-all {
        align-items: flex-start;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        margin: 0 auto;
        max-width: 800px;
    }

    dl.sns-wrap {
        width: 41%;
    }

    table.voice_tbl th, table.voice_tbl td {
        display: table-cell;
    }

    table.voice_tbl tr {
        display: table-row;
    }

    table.voice_tbl th {
        width: 34%;
    }

    table.voice_tbl {
        margin: 0 auto;
        max-width: 900px;
    }

    .report-wrap {
        justify-content: flex-start;
        margin: 0 auto;
        width: 750px;
    }

    .width-100 {
        width: 100px;
    }
    .width-200 {
        width: 200px;
    }
    .width-150 {
        width: 150px;
    }
    .width-120 {
        width: 120px;
    }
    .width-30 {
        width: 30px;
    }
    .width-80 {
        width: 80px;
    }
    .width-50 {
        width: 50px;
    }
    .pdng-t-0 {
        padding-top: 0 !important;
    }
}


@media screen and (min-width: 1024px) {
    .wrap {
        background: rgba(255,255,255,1.0);
        min-width: 1190px;
        width: 100%;
    }
    main {
        margin: 0 0 0 0;
    }

    #slider-pro-pc {
        border: 5px solid #c0eeff;
        border-radius: 10px;
        display: block;
        margin: 20px auto 0 auto;
        overflow: hidden;
        width: 1180px;
    }
    .main-visual-sp {
        display: none;
    }

    .activity-wrap {
        margin: 30px auto;
        min-width: 1000px;
        width: 100%;
    }

    .activity-inner {
        background: none;
        padding: 20px 0;
    }

    ul.activity-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        list-style: none;
        margin: 0 auto;
        max-width: 100%;
        padding: 0;
        width: 1000px;
    }

    ul.activity-list li {
        background: none;
        margin: 0 0;
        width: 290px;
    }

    ul.activity-list li a {
        display: block;
        text-decoration: none;
    }

    ul.activity-list li + li {
        margin: 0 0 0 20px;
    }

    ul.activity-list li a p {
        color: #333;
        font-size: 115%;
        font-weight: bold;
        letter-spacing: 1px;
        margin: 15px 0;
        text-align: center;
    }

    .activity-inner:after {
        background: url(../images/bg_stripe_blue.png) repeat;
        content: "";
        display: block;
        height: 180px;
        margin: -175px 0 0 0;
        width: 100%;
    }

    ul.activity-list li a img {
        border-radius: 10px;
        display: block;
    }
    .catch-area {
        align-items: center;

/* background: #aaaaaa; */
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 auto;
        max-width: 850px;
    }

    .catch-txt {
        font-size: 160%;
        letter-spacing: 1px;
        width: auto;
    }

    .catch-txt p {
        line-height: 200%;
        margin: 0;
    }

    .catch-txt p span {
        /* display: block; */
        background: linear-gradient(transparent 70%, #ff0 70%);
    }

    .catch-txt p br {
        display: inline;
    }

    .catch-txt p span + br + span {
        margin-left: 1em;
    }

    .embed-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 20px auto 0 auto;
        max-width: 1200px;
        min-width: 1000px;
    }
    .embed-wrap2 {
        margin: 20px auto 0 auto;
        max-width: 1200px;
        min-width: 1000px;
    }

    section.embed-info {
        width: 100%;
    }

    h2.embed-title {
        margin: 0 0 1.2em 0;
        text-align: center;
    }

    span.embed-title-en {
        color: #44acd3;
        font-size: 75%;
        font-weight: normal;
        letter-spacing: 1px;
    }

    p.embed-title-jp {
        color: #333;
        letter-spacing: 1px;
        margin: 0;
    }

    p.embed-title-jp span {
        background: #fff;
        padding: 0 10px;
    }

    p.embed-title-jp:after {
        background: #333;
        content: "";
        display: block;
        height: 1px;
        margin: -0.7em auto 0 auto;
        width: 100%;
    }

    .embed-info-inner {
        background: #fff;
        border: 1px solid #ddd;
        height: 600px;
        overflow-y: scroll;
        padding: 10px 20px;
    }

    .embed-info-inner dl {
        color: #333;
        margin: 0;
    }

    .embed-info-inner dl dt, .embed-info-inner dl dd {
        line-height: 150%;
    }

    .embed-info-inner dt {
        margin: 0;
        width: 100%;
    }


    .embed-info-inner dd {
        border-bottom: 1px dotted #ccc;
        margin: 0 0 0 0;
        padding: 0 0 0.5em 0;
        width: 100%;
    }

    .embed-info-inner dl dd + dt {
        margin: 0.5em 0 0 0;
    }

    section.embed-tw {
        margin: 0 3% 0 0;
        width: 500px;
    }
    .twitter-timeline {
        height: 600px !important;
        overflow: scroll!important;
    }
    section.embed-fb {
        margin: 0 0 0 3%;
        width: 500px;
    }
    footer {
        background: #3b7bce;
        margin: 25px 0 0 0;
        min-width: 1000px;
        padding: 0 0 0 0;
    }

    .footer-inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        margin: 0 auto;
        padding: 25px 0;
        width: 1200px;
    }

    ul.footer-navi {
        list-style: none;
        margin: 0;
        padding: 0;

/* background: #aaaaaa; */
        text-align: left;
        width: 22%;
    }

    ul.footer-navi li {
    }

    ul.footer-navi li + li {
        margin-top: 1em;
    }

    ul.footer-navi li a {
        color: #fff;
        text-decoration: none;
    }

    .footer-info {
        margin: 0;
        width: 34%;
    }

    h2.footer-info-title {
        color: #fff;
        display: block;
        margin: 0 0 0 auto;
        text-align: left;
        width: 100%;
    }

    address.footer-info-contact {
        display: block;
        font-style: normal;
        margin: 0 0 0 auto;
        width: 100%;
    }

    ul.footer-info-contact-list {
        list-style: none;
        margin: 30px 0 0 0;
        padding: 0;
    }

    ul.footer-info-contact-list li {
        justify-content: flex-start;
    }

    ul.footer-info-contact-list li + li {
        margin-top: 1em;
    }

    ul.footer-info-contact-list li a {
        color: #fff;
        text-decoration: none;
    }

    .footer-bottom {
        background: #fff;
        margin: 0;
        min-width: 1000px;
    }
    .footer-bottom-inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 auto;
        padding: 15px 0;
        width: 1000px;
    }

    .footer-copyright {
        margin: 0;
        order: 1;
        width: 30%;
    }

    .footer-bottom-link {
        margin: 0;
        order: 2;
        padding: 0;
        width: 50%;
    }

    ul.footer-bottom-link-list {
        display: flex;
        flex-wrap: wrap;
        font-size: 85%;
        justify-content: flex-end;
        list-style: none;
        margin: 0;
        padding: 0;
    }

    ul.footer-bottom-link-list li {
    }

    ul.footer-bottom-link-list li + li {
    }

    ul.footer-bottom-link-list li a {
        align-items: center;
        color: #333;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        text-decoration: none;
    }

    ul.footer-bottom-link-list li a:before {
        border-color: transparent transparent transparent #29487d;
        border-style: solid;
        border-width: 3px 0 3px 8px;
        content: "";
        display: block;
        height: 0;
        margin: 1px 2px 0 0;
    }

    .main-visual-sub-pc {
        display: block;
        margin: 20px auto;
        min-width: 1190px;
    }

    .main-visual-pc-img {
        border: 4px solid #7ec6f1;
        border-radius: 10px;
        margin: 0 auto;
        overflow: hidden;
        width: 1180px;
    }

    .main-visual-pc-img img {
        display: block;
        margin: 0 auto;
    }

    .main-visual-sub-sp {
        display: none;
    }

    section.contents-wrap {
        /* max-width: 1190px; */
        margin: 0 auto 180px !important;
        width: 960px;
    }
    .width-oath {
        width: 1190px !important;
    }

    .page-title {
        margin: 1em auto;
        max-width: 50%;
    }

    .page-desc-wrap {
        font-size: 115%;
        margin: 0 auto;
        text-align: center;
        width: 550px;
    }

    ol.oath-list {
        margin: 90px auto 0 auto;
        width: 70%;
    }

    ol.oath-list li {
    }

    ol.oath-list li + li {
        margin: 50px 0 0 0;
    }

    dl.oath-list-detail {
        margin: 0;
    }

    dl.oath-list-detail dt {
        /* width: 50%; */
        /* background: #aaaaaa; */
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    dl.oath-list-detail dt:before {
        font-size: 220%;
        height: 75px;
        line-height: 75px;
        margin: 0 15px 0 0;
        width: 75px;
    }

    dl.oath-list-detail dd {
        justify-content: center;
        margin: -120px 0 0 0;
    }

    .oath-list-txt {
        font-size: 105%;
        line-height: 170%;
        margin: 0 3% 0 6%;
        width: 45%;
    }

    .oath-list-img {
        width: 380px;
    }


    ol.oath-list li:nth-child(even) dl.oath-list-detail dt {
        margin: 0 0 0 auto;
        width: 56%;
    }

    ol.oath-list li:nth-child(even) .oath-list-img {
        order: 1;
    }
    ol.oath-list li:nth-child(even) .oath-list-txt {
        margin-left: 9%;
        margin-right: 0;
        order: 2;
    }

    div#slider-prof {
        margin: 0;
    }

    .profile-txt {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 0;
        width: 50%;
    }

    .profile-wrap {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    h2.profile-name {
        margin-bottom: 2em;
        width: 100%;
    }

    dl.profile-txt-deatile {
        justify-content: center;
        margin: 0;
        width: 90%;
    }

    dl.profile-txt-deatile dt,
    dl.profile-txt-deatile dd {
        margin: 0 0 15px 0;
        padding: 3px 0;
    }

    dl.profile-txt-deatile dd + dt {
        margin-top: 0;
    }

    dl.profile-txt-deatile dt {
        width: 30%;
    }

    dl.profile-txt-deatile dd {
        padding-left: 1em;
        text-align: left;
        width: 46%;
    }
    .profile-jpb-wrap {
        margin: 40px auto 0 auto;
        max-width: 920px;
    }

    section.profile-job-child {
        width: 48%;
    }

    section.profile-career {
        margin: 15px auto 0 auto;
        max-width: 800px;
    }

    table.profile-career-tbl {
        margin: 20px 0 30px 0;
    }

    table.profile-career-tbl tr {
        display: table-row;
    }
    table.profile-career-tbl th, table.profile-career-tbl td {
        border-bottom: 1px solid #fff;
        display: table-cell;
        line-height: 160%;
        padding: 0.5em 2em 0.5em 2em;
    }

    table.profile-career-tbl th {
        text-align: right;
        vertical-align: top;
        width: 25%;
    }

    table.profile-career-tbl td {
        border-bottom: 1px dotted #ccc;
        padding-left: 1.5em;
    }

    .page-desc-wrap-wide {
        text-align: left;
        width: 75%;
    }

    .policy-wrap {
        margin: 40px auto 0 auto;
        width: 100%;
    }

    ol.policy-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    ol.policy-list li {
        margin: 0 0 20px 0;
        width: 49%;
    }

    ol.policy-list li + li {
        margin-top: 0;
    }

    dl.policy-detail {
        min-height: 148px;
        padding: 20px 40px 30px 40px;
    }

    ol.policy-list li:last-child {
        width: 100%;
    }

    ol.policy-list li:last-child dl.policy-detail {
        min-height: 90px;
    }

    ol.policy-list li:last-child dl.policy-detail dd p {
        text-align: center;
    }

    .policy-detail dt {
        margin: 0 0 1em 0;
    }

    ol.policy-list li:before {
        font-size: 220%;
    }

    ol.policy-list li:nth-child(3) .policy-detail {
        min-height: 157px !important;
    }

    .access-office-wrap {
        align-items: flex-start;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 auto 0 0;
        width: 100%;
        /* max-width: 960px; */
        /* padding-top: 10px; */
        /* padding-bottom: 15px; */
    }

    dl.access-info {
        margin: 0;
        order: 2;
        width: 340px;
    }

    .access-map-wrap {
        height: 400px;
        margin: 0;
        order: 1;
        width: 600px;
    }

    ul.press-navi-list li {
        margin: 5px 1%;
        width: 23%;
    }

    .kouenkai-intro {
        justify-content: flex-start;
    }

    figure.kouenkai-intro-img {
        width: 24%;
    }

    .kouenkai-intro-txt {
        margin: 0;
        width: 74%;
    }

    .no-disp-pc {
        display: none;
    }
    .no-disp-sp {
        display: block;
    }


    #page_top {
        bottom: 10px;
        display: none;
        position: fixed;
        right: 10px;
        z-index: 100;
    }
    #page_top a {
        background: none;
        bottom: 0;
        color: #000;
        display: block;
        height: 100px;
        position: relative;
        text-align: center;
        text-decoration: none;
        transition: all 0.3s, all 0.3s;
        width: 120px;
    }
    #page_top a span {
        display: block;
        font-size: 120%;
        font-weight: bold;
    }
    #page_top a span br {
        display: none;
    }
    #page_top a:hover {
        bottom: 4px;
        color: #e4007f;
        position: relative;
    }
}

@media screen and (min-width: 1px) {
    #page_top {
        bottom: 5px;
        right: 5px;
    }
    #page_top a {
        background: #e4b55e;
        border: 2px solid #fff;
        border-radius: 50%;
        height: 40px;
        overflow: hidden;
        width: 40px;
    }
    #page_top a img {
        display: block;
        height: auto;
        margin: 0 auto;
        width: 80%;
    }
    #page_top a span {
    }

    #page_top a span br {
        display: inline;
    }
}

.txt-all-center {
    text-align: center;
}
.mrgn-t-m10 {
    margin-top: -10px !important;
}
.mrgn-b-30 {
    margin-bottom: 30px;
}
.mrgn-b-60 {
    margin-bottom: 60px;
}
.mrgn-b-90 {
    margin-bottom: 90px;
}
.mrgn-t-30 {
    margin-top: 30px;
}
.mrgn-t-60 {
    margin-top: 60px;
}
.mrgn-t-90 {
    margin-top: 90px;
}
.pdng-t-20 {
    padding-top: 20px !important;
}
.pdng-t-30 {
    padding-top: 30px !important;
}
.pdng-t-60 {
    padding-top: 60px !important;
}
.bg-none {
    background: none;
}
.bg-beige {
    background-color: #f9f5ee;
}

@media print {
    #slider-pro-sp {
        display: none;
    }
    h2.work-title {
        padding-top: 20px;
    }
    h2.about-title {
        padding: 20px 0 0 0;
    }
}

.footer-sns-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    list-style: none;
    margin: 10px 0 0;
    padding: 0;
}
.footer-sns-list li {
    font-size: 11px;
    margin: 3px 0;
    min-width: 77px;
    padding: 0;
    text-align: center;
}
.footer-sns-list li a {
    color: #fff;
}
.footer-sns-list li figure {
    margin: 0;
    padding: 0;
}

.header-sns-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    list-style: none;
    margin: 20px 0 0;
    padding: 0;
}
@media screen and (max-width: 768px) {
    .header-sns-list {
        box-sizing: border-box;
        justify-content: center;
        margin: 0 auto;
        margin-top: 30px;
        padding: 0 10px;
        width: 100%;
    }
    .header-sns-list li a {
        padding: 0 !important;
    }
}

.header-sns-list li {
    font-size: 11px;
    margin: 3px 5px;
    padding: 0;
    text-align: center;
    width: 50px;
}

.header-sns-list li a {
    color: #fff;
}

.header-sns-list li figure {
    font-size: 10px;
    margin: 0;
    padding: 0;
    width: 80px;
}

.header-sns-list li figcaption {
    margin-top: 5px;
}

.sns-area {
    max-width: 350px;
    position: relative;
    width: 100%;
}
.sns-area::before {
    color: #094a9d;
    content: "最新情報はSNSをご覧ください";
    font-size: 18px;
    font-weight: bold;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.sns-area2 {
    max-width: 400px;
    position: relative;
    width: 100%;
}

.sns-area2 figcaption {
    color: #333;
    font-weight: bold;
    margin-top: 5px;
}

.sns-list {
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    margin-top: 30px;
    padding: 0 10px;
    width: 100%;
}
.sns-list li a {
    padding: 0 !important;
}


.sns-list li {
    direction: none;
    font-size: 11px;
    list-style: none;
    margin: 3px 5px;
    padding: 0;
    text-align: center;
}

.sns-list li a {
    color: #fff;
}

.sns-list li figure {
    font-size: 10px;
    margin: 0;
    padding: 0;
}



.section_title,
.section_title span {
    font-weight: bold;
    text-align: center;
}
.section_title {
    font-size: 36px;
    letter-spacing: 6px;
    line-height: 1;
    margin: 50px auto 32px;
    max-width: 1000px;
    width: 100%;
}
.section_title span {
    background: #fff;
    padding-left: 5px;
}
.section_title:after {
    background: #333;
    content: "";
    display: block;
    height: 1px;
    margin: -18px auto 0 auto;
    width: 100%;
}

.instagram {
    display: block;
    margin: 10px auto;
    max-width: 60px;
    width: 100%;
}
.instagram:hover {
    filter: opacity(70%);
}

.instagram img {
    height: auto;
    width: 100%;
}

.x-img {
	width:100%;
	max-width:480px;
	height:auto;
}

