@charset "UTF-8";


/*———————————
共通
———————————*/
* {
    box-sizing: border-box;
}

:root {
    /*カラー変数*/
    --main-color: #003f8e;
    --main-color-r: 0;
    --main-color-g: 63;
    --main-color-b: 142;
}

/* flex */
.fx {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}



/* ナビ下写真 */

.kv {
    padding-top: 20%;
    background: url(../img/common/key_visual.png) no-repeat center center;
    background-size: cover;
}



/* pc,sp表示切り替え */
.pc-on {
    display: block;
}

.sp-on {
    display: none;
}

@media screen and (max-width: 769px) {
    .pc-on {
        display: none;
    }

    .sp-on {
        display: block;
    }
}

/* テキスト */
a {
    color: var(--mai-color);
}

.main-txt {
    font-size: 17px;
    text-align: center;
    margin-bottom: 30px;
}

@media screen and (max-width:768px) {
    .main-txt {
        font-size: 15px;
        margin-bottom: 20px;
    }

}

/* 装飾 */

.st-border {
    border: 1px solid var(--main-color);
}

/* ボタン */
.el-button {
    width: 100%;
    max-width: 400px;
    text-align: center;
    padding: 15px 30px;
    border: 1px solid var(--main-color);
    border-radius: 8px;
    position: relative;
    display: block;
    margin-inline: auto;
    font-size: 1.8rem;
    transition: .5s;
}

.el-button::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto;
    vertical-align: middle;
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid var(--main-color);
    border-right: 2px solid var(--main-color);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: .5s;
}

.el-button:hover {
    background-color: var(--main-color);
    color: #fff;
    opacity: 1;
}

.el-button:hover::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}

@media screen and (max-width:768px) {
    .el-button {
        font-size: 1.6rem;
        padding: 10px 20px;
        width: 60%;
    }
}

/*———————————
ヘッダー
———————————*/
.logo {
    line-height: 1;
}

@media screen and (max-width: 769px) {
    .logo {
        margin-bottom: 15px;
    }
}

.logo__sub {
    display: block;
    font-size: 17px;
    margin-bottom: 1.2rem;
    letter-spacing: 0.04em;
}

@media screen and (max-width: 769px) {
    .logo__sub {
        margin-bottom: 0.6rem;
        font-size: 12px;
    }
}

.logo__name {
    display: block;
    font-size: 44px;
    font-weight: bold;
    font-family: 'Kosugi Maru', sans-serif;
    color: var(--main-color);
}

@media screen and (max-width: 769px) {
    .logo__name {
        font-size: 22px;
    }
}

.logo__img {
    display: block;
}

.logo__img img {
    width: 250px;
}

@media screen and (max-width: 769px) {
    .logo__img {
        font-size: 22px;
        text-align: center;
    }

    .logo__img img {
        width: 100%;
        max-width: 250px;
    }
}

.logo__img.cat01 {
    text-align: center;
}

@media screen and (max-width: 769px) {
    .logo__img.cat01 {
        font-size: 22px;
    }

    .logo__img.cat01 img {
        width: 85%;
    }
}

.header {
    position: relative;
}

@media screen and (max-width: 769px) {
    .header .sp-menu-btn {
        position: absolute;
        display: block;
        width: 30px;
        background-color: var(--main-color);
        padding: 12px 8px;
        top: 0;
        right: 0;
        line-height: 0;
    }
}

.header__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1024px;
    margin: 0 auto;
    padding: 16px 0;
}

@media screen and (max-width: 769px) {
    .header__inner {

        flex-direction: column;
        margin: 0 5%;
        padding: 30px 0 22px 0;
    }
}

/* お問い合わせ */

.conact-mail {
    font-size: 20px;
    border-radius: 8px;
    padding: 5px 10px;
    font-weight: bold;
    color: var(--main-color);
}

.conact-mail::before {
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    content: "\f0e0";
    font-weight: normal;
}

/*———————————
グロナビ
———————————*/

.navi-area {
    border-top: solid 1px #c5c5c5;
}

@media screen and (max-width: 769px) {
    .navi-area {
        position: absolute;
        width: 100%;
        top: 114px;
        left: 0;
        background-color: #fff;
        display: none;
        border-bottom: solid 1px #c5c5c5;
    }
}

.navi {
    max-width: 1024px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    text-align: center;
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: 0.08em;
}

@media screen and (max-width: 769px) {
    .navi {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        font-size: 13px;
    }
}

.navi li {
    width: 100%;
    height: 80px;
    border-left: solid 1px #c5c5c5;
}

.navi li.current {
    background: var(--main-color);
}

.navi li.current a {
    color: #fff;
}

@media screen and (max-width: 769px) {
    .navi li {
        width: 100%;
        height: 40px;
        box-sizing: border-box;
        border-bottom: solid 1px #c5c5c5;
    }

    .navi li:nth-child(odd) {
        border-left: none;
    }
}

.navi li:last-child {
    border-right: solid 1px #c5c5c5;
}

@media screen and (max-width: 769px) {
    .navi li:last-child {
        width: 100%;
        border: none;
    }
}

.navi a {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 100%;
    height: 80px;
}

@media screen and (max-width: 769px) {
    .navi a {
        height: 40px;
    }
}

@media screen and (min-width: 770px) {
    .navi a:hover {
        background: var(--main-color);
        color: #fff;
    }
}

/*———————————
フッター
———————————*/


/*
ホバーリンク
———————————*/
.el-floatLink {
    position: relative;
}

.el-floatLink_pc {
    right: 0;
    bottom: 70px;
    width: fit-content;

    text-align: center;
    background-color: var(--main-color);
    padding: 7px;
    position: fixed;
    z-index: 100;
    border-radius: 5px 0 0 5px;
}


.el-floatLink_pc a {
    color: #fff;
    font-size: 17px;
    font-weight: bold;
    line-height: 1.2;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

.el-floatLink_pc a span {
    font-size: 24px;

}

.el-floatLink_sp {
    display: none;
}

@media screen and (max-width:768px) {
    .el-floatLink_pc {
        display: none;
    }

    .el-floatLink_sp {

        background-color: #ecf7f8;
        position: fixed;
        bottom: 0;
        width: 100%;

    }

    .el-floatLink_item {
        width: 50%;
        padding: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .el-floatLink_item:first-of-type {
        border-right: 1px solid #333;
    }

    .el-floatLink_itemimg {
        width: 15%;
        max-width: 40px;
        margin-right: 6px;
    }

    .el-floatLink_itemimg img {
        vertical-align: middle;
    }

    .el-floatLink_item p {
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        line-height: 0.9;

    }

    .el-floatLink_item p span {
        font-size: 11px;
        display: block;
        margin-top: 5px;
    }

}

.footer__inner {
    max-width: 1024px;
    margin: 0 auto;
    padding: 40px 0 0px;
}

@media screen and (max-width: 769px) {
    .footer__inner {
        margin: 0 5%;
    }
}

.footer__card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 30px;
}

@media screen and (max-width: 769px) {
    .footer__card {
        padding-bottom: 15px;
        margin-bottom: 15px;
        flex-direction: column;
    }
}

.footer__card .logo img {
    max-width: 250px;
}

@media screen and (max-width: 769px) {
    .footer__card .logo img {
        width: 100%;
    }
}

.footer .address {
    text-align: right;
    font-size: 0;
}

@media screen and (max-width: 769px) {
    .footer .address {
        text-align: left;
    }
}

.footer .address dt,
.footer .address dd {
    display: inline-block;
    font-size: 14px;
    letter-spacing: 0.16em;
}

@media screen and (max-width: 769px) {

    .footer .address dt,
    .footer .address dd {
        font-size: 12px;
    }
}

.footer .address dt {
    margin-right: .5em;
}

.footer .tel {
    position: relative;
    text-align: right;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    line-height: 1.4;
}

@media screen and (max-width: 769px) {
    .footer .tel {
        text-align: left;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
    }
}

.footer .tel dl {
    margin-right: 1em;
    letter-spacing: 0.16em;
}

.footer .tel dl:last-child {
    margin-right: 0;
}

.footer .tel dt {
    margin-right: 0.5em;
}

.footer .tel dt,
.footer .tel dd {
    display: inline-block;
    font-size: 14px;
}

@media screen and (max-width: 769px) {

    .footer .tel dt,
    .footer .tel dd {
        font-size: 12px;
    }
}

.footer__link-area {
    margin-bottom: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

@media screen and (max-width: 769px) {
    .footer__link-area {
        margin-bottom: 20px;
        -webkit-justify-content: space-around;
        justify-content: space-around;
    }
}

.footer__navi {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 60%;
}

@media screen and (max-width: 769px) {
    .footer__navi {
        width: 100%;
    }
}

.footer__navi li {
    box-sizing: border-box;
    min-width: 180px;
    padding-left: 10px;
    margin-bottom: 10px;
    font-size: 14px;
    color: var(--main-color);
}

@media screen and (max-width: 769px) {
    .footer__navi li {
        padding-left: 0px;
        min-width: inherit;
        width: 100%;
    }
}

.footer__navi li a {
    color: var(--main-color);
}

.footer .contact {
    background: var(--main-color);
    width: 100px;
    padding: 8px 0 0 8px;
    border: solid 2px var(--main-color);
    box-shadow: 1px 2px 1px rgba(var(--main-color-r), var(--main-color-g), var(--main-color-b), 0.5);
}

.footer .contact img {
    display: block;
    width: 100%;
}

.footer .copyright {
    text-align: right;
    font-size: 13px;
}

@media screen and (max-width: 769px) {
    .footer .copyright {
        font-size: 11px;
        text-align: center;
    }
}



/*———————————
トップページ
———————————*/


/*
共通
———————————*/
.content {
    padding-top: 70px;
    padding-bottom: 70px;
}

.wrap {
    width: 900px;
    margin: 0 auto 100px;
}

.main-col {
    width: 900px;
    margin-inline: auto;
    margin-bottom: 100px;
}

@media screen and (max-width:768px) {
    .wrap {
        width: auto;
        margin: 0 5% 60px;
    }

    .main-col {
        width: auto;
        margin-inline: auto;
        margin-bottom: 60px;
        padding-right: 20px;
        padding-left: 20px;
    }
}

/* 見出し */

.block__ttl {
    margin-bottom: 30px;
    font-size: 30px;
    letter-spacing: 0.12em;
    text-align: center;
}

@media screen and (max-width: 769px) {
    .block__ttl {
        margin-bottom: 15px;
        font-size: 22px;
    }
}

.block__ttl span {
    position: relative;
    display: inline-block;

    width: 70%;
}

@media screen and (max-width: 769px) {
    .block__ttl span {
        padding: 0 54px;
    }
}

.block__ttl span::before,
.block__ttl span::after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 30%;
    height: 1px;
    background-color: var(--main-color);
}

@media screen and (max-width: 769px) {

    .block__ttl span::before,
    .block__ttl span::after {
        width: 54px;
    }
}

.block__ttl span::before {
    left: 0;
}

.block__ttl span:after {
    right: 0;
}


/* お知らせ */

.news {
    width: 100%;
    max-width: 600px;
    display: flex;
    margin: 0 auto 15px;
}

@media screen and (max-width: 769px) {
    .news {
        align-items: flex-start;
        flex-direction: column;
    }
}

.news__date {
    margin-right: 10px;
    font-size: 13px;
    font-size: 17px;
    width: 140px;
}

.news__text {
    font-size: 17px;
    width: calc(100% - 150px);
}

@media screen and (max-width: 769px) {
    .news__date {
        font-size: 1.6rem;
    }

    .news__text {
        word-break: break-all;
        font-size: 1.6rem;
        width: 100%;
    }
}

.news-more {
    text-align: right;
    font-size: 14px;
}

.news-more a {
    position: relative;
    display: inline-block;
    padding: 0 12px 0 0;
    vertical-align: middle;
    text-decoration: none;
}

.news-more a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 2px;
    margin: auto;
    vertical-align: middle;
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid var(--main-color);
    border-right: 2px solid var(--main-color);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* 法人 */
.bl-rijicho h4 {
    text-align: center;
    font-size: 24px;
    margin-bottom: 40px;
}

.bl-boss_prof {
    margin-bottom: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.bl-boss_prof .el-imgntxt_img {
    width: 170px;

}

.bl-boss_prof .el-imgntxt_txt {
    font-size: 24px;
}

.bl-boss_prof .el-imgntxt_txt span {
    font-size: 17px;
}

.bl-boss_greeting {
    font-size: 17px;
    padding: 20px;
    border-radius: 8px;
    background: rgba(var(--main-color-r), var(--main-color-g), var(--main-color-b), 0.1);
}

.bl-boss_greeting h5 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 24px;
    text-align: center;
}

@media screen and (max-width:768px) {
    .bl-boss_prof {
        gap: 20px;
    }

    .bl-boss_prof .el-imgntxt_img {
        width: 150px;
    }

    .bl-boss_greeting {
        font-size: 15px;
    }

    .bl-boss_greeting h5 {
        font-size: 15px;
    }
}

/* 概要 */
.table {
    width: 100%;
    max-width: 600px;
    border: solid 1px var(--main-color);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 65px;
    font-size: 17px;
    border-spacing: 0
}

@media screen and (max-width: 769px) {
    .table {
        font-size: 15px;
    }
}

.table th,
.table td {
    padding: 15px 20px;
}

@media screen and (max-width: 769px) {

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

.table th {
    width: 35%;
    background: var(--main-color);
    color: #fff;
    border-bottom: solid 1px #fff;
}

.table td {
    border-bottom: solid 1px var(--main-color);
}

.table tr:last-of-type th,
.table tr:last-of-type td {
    border: none;
}

.table td a {
    color: var(--main-color);
}

/* 拠点一覧 */

.bl-base_wrap {
    width: 100%;
    max-width: 600px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 60px 0;
    margin-left: auto;
    margin-right: auto;
}

.bl-base {
    width: 45%;
}

.bl-base h3 {
    font-size: 20px;
    padding-bottom: 5px;
    border-bottom: 1px solid var(--main-color);
    margin-bottom: 12px;
    font-weight: 500;

}

/*
.bl-base h3:before {
    content: "○";
    margin-right: 5px;

}
*/
.bl-base h4 {
    font-size: 17px;
    font-weight: bold;
    display: inline-block;
    padding-left: 10px;
    margin-top: 16px;
    margin-bottom: 8px;
    line-height: 1.2;
    border-left: 4px solid var(--main-color);
}

.bl-base h4:first-of-type {
    margin-top: 0;
}

.bl-base li {
    font-size: 17px;
    margin-bottom: 6px;
    color: var(--main-color);
}

.bl-base li:last-of-type {
    margin-bottom: 0;
}

.bl-base li::before {
    content: "□";
    margin-right: 5px;
}

.bl-base a {
    text-decoration: underline;
}

@media screen and (max-width:768px) {

    .bl-base_wrap {
        flex-direction: column;
    }

    .bl-base {
        width: 100%;
    }

    .bl-base h3 {
        font-size: 18px;


    }

    .bl-base h3:before {
        content: "○";
        margin-right: 5px;
    }

    .bl-base h4 {
        font-size: 15px;
    }

    .bl-base li {
        font-size: 15px;
        margin-bottom: 6px;
    }


}

/* 採用 */
.bl-recruit_wrap {
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
}

.bl-recruit_wrap:last-of-type {
    margin-bottom: 0;
}

.bl-recruit_ttl {
    font-size: 20px;
    padding-bottom: 5px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--main-color);
    margin-bottom: 12px;
    font-weight: 500;
}

.bl-recruit_item {
    display: block;
    margin-bottom: 18px;

    border-radius: 8px;
    overflow: hidden;

}

.bl-recruit_item dl {
    display: flex;
    flex-direction: column;
    width: 100%;

}


.bl-recruit_item dt {
    width: 100%;
    padding: 4px 6px;
    background-color: var(--main-color);
    color: #fff;
    font-weight: 600;
    font-size: 16px;
}

.bl-recruit_item dd {
    padding: 4px 8px;
    font-size: 17px;
}

@media screen and (max-width:768px) {
    .bl-recruit_ttl {
        font-size: 18px;
    }

    .bl-recruit_item dt {
        font-size: 15px;
    }

    .bl-recruit_item dd {
        font-size: 15px;
    }
}

/*
404
———————————*/
.sec-404 {
    padding: 60px 20px;
    text-align: center;
    font-size: 17px;
}

.sec-404 p {

    margin-bottom: 30px;
}

.sec-404 a {
    color: var(--main-color);
}


/*
お知らせ
———————————*/
.post-cont a {
    color: var(--main-color);
    text-decoration: underline;
}


/*
お知らせ詳細 .bl_single
———————————*/

.sec-news.sec-newsSingle {
    width: 800px;
    padding-top: 150px;
}

.bl_single {
    max-width: 600px;
    padding: 50px 20px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    font-size: 17px;
    line-height: 1.8;
}



.bl_single_item {
    padding: 0 0 30px;
    border-bottom: 1px solid #244f84;
}

.bl_single_date {
    font-size: 17px;
    font-weight: 600;
}

.bl_single_title {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 1.5vw;
    letter-spacing: 0.5px;
}

@media screen and (max-width:768px) {
    .sec-news.sec-newsSingle {
        width: 100%;
        padding-top: 100px;
    }
}

.bl_single_title {
    margin-bottom: 40px;
}
}

/* 記事内スタイル */
.bl_single_txt {
    width: 100%;
}

.bl_single_txt h4 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 20px;
    border-left: 3px solid #029245;
    padding-left: 12px;
    line-height: 1;
    letter-spacing: 0.5px;
}

.bl_single_txt h5 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1.2;
    letter-spacing: 0.5px;
}

.bl_single_txt p {
    margin-bottom: 30px;
    line-height: 2;
    text-align: justify;
    letter-spacing: 0.5px;
}

.bl_single_txt strong {
    font-weight: 600;
    font-family: "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

.bl_single_txt img {
    height: auto;
}

.bl_single_txt h6 {
    font-size: 17px;
    margin-top: -30px;
    margin-bottom: 30px;
}

@media screen and (max-width:768px) {
    .bl_single_txt h4 {
        font-size: 20px;
    }

    .bl_single_txt h5 {
        font-size: 17px;
    }

    .bl_single_txt p {
        font-size: 15px;
    }

    .bl_single_txt h6 {
        font-size: 15px;
    }

}

/* ページャー */
.el_pager_wrap {}

.el_pager {
    padding: 5% 0px;
}

.el_pager_PREV {
    width: 15%;
}

.el_pager a {
    color: #434343;
}

.el_pager_ALL {
    width: 70%;
    text-align: center;
}

.el_pager_NEXT {
    width: 15%;
}

/* スマホ */
@media screen and (max-width: 768px) {
    .el_pager {
        padding: 6vw 0px;
    }

    .el_pager_PREV {
        width: 25%;
    }

    .el_pager_ALL {
        width: 50%;
        text-align: center;
    }

    .el_pager_NEXT {
        width: 25%;
    }
}


/*
プライバシーポリシー
—————————————————*/

@media screen and (min-width: 770px) {
    .page-privacy .wrap {
        width: 900px;
        margin: 0 auto;
    }
}

.page-privacy .content__ttl {
    padding: 45px 0 30px;
    text-align: center;
    font-size: 30px;
    font-weight: normal;
    letter-spacing: 0.12em;
}

.policy_content {
    padding-bottom: 35px;
}

.policy_content h2 {
    margin-bottom: 10px;
    border-bottom: 2px solid #b8b8b8;
    padding: 25px 0 10px 0;
    font-weight: 500;
    font-size: 22px;
}

.policy_content p {
    font-size: 17px;
    padding: 5px 0;
}

.policy_content .policy_list {
    padding: 10px 0;
}

.policy_content .policy_list h3 {
    font-size: 17px;
    border-bottom: 1px solid #cccccc;
    padding: 10px 0;
    margin-bottom: 8px;
}

.policy_content .policy_list ol.number_ol,
.policy_content .policy_list ol.number_ol li {
    list-style-type: auto;
    font-size: 17px;
    margin-left: 1.3em;
    line-height: 1.75;
    letter-spacing: 1px;
}

.policy_content .policy_list ul.s_list,
.policy_content .policy_list ol.re_number_ol li ul.s_list li {
    list-style-type: disc;
    font-size: 17px;
    margin-left: 1.2em;
    line-height: 1.6;
    letter-spacing: 1px;
    padding: 6px;
}

.policy_content .policy_list ul.s_list li,
.policy_content .policy_list ol.number_ol li ul.s_list li {
    list-style-type: disc;
}

.policy_content .policy_list ul.s_list li,
.policy_content .policy_list ol.re_number_ol li ul.s_list li {
    padding: 0;
    font-size: 17px;
}

.policy_content .policy_list ul.s_list li:before {
    display: none;
}

.policy_content .policy_list ol.re_number_ol {
    counter-reset: count 0;
    font-size: 17px;
    margin-left: 1.2em;
    line-height: 1.6;
    letter-spacing: 1px;
}

.policy_content .policy_list ol.re_number_ol li {
    position: relative;
    padding: 0 0 12px 8px;
    font-size: 17px;
}

.policy_content .policy_list ol.re_number_ol li:before {
    content: "("counter(count)")";
    counter-increment: count 1;
    left: -20px;
    top: 0;
    position: absolute;
}

.policy_content .policy_list ol.re_number_ol li p,
.policy_content .policy_list p {
    padding: 0;
    margin-bottom: 4px !important;
    line-height: 1.7;
}

.policy_content .policy_list ol.re_number_ol li p.addr_txt {
    padding: 10px 0;
}

.policy_content .policy_list a {
    color: #3081be;
}

.policy_content p.addr {
    padding: 10px 0 !important;
}

.policy_content .privacy h3 {
    font-size: 17px;
    border-bottom: 1px solid rgb(233, 225, 202);
    margin: 0px 0px 3px;
    padding: 15px 0px 7px;
}

@media screen and (max-width: 769px) {
    .page-privacy .wrap {
        width: auto;
        margin: 0 5%;
    }

    .page-privacy .content__ttl {
        padding: 15px 0;
        font-size: 20px;
    }

    .policy_content h2 {
        font-size: 18px;
    }

    .policy_content .policy_list h3 {
        font-size: 15px !important;
    }

    .policy_content p,
    .policy_content .policy_list ol.number_ol,
    .policy_content .policy_list ol.number_ol li,
    .policy_content .policy_list ul.s_list,
    .policy_content .policy_list ul.s_list li,
    .policy_content .policy_list ol.re_number_ol,
    .policy_content .policy_list ol.re_number_ol li,
    .policy_content .policy_list ol.re_number_ol li ul.s_list li {
        font-size: 13px;
    }
}

.privacy_link {
    text-align: center;
    padding: 13px 0;
}

.privacy_link a {
    font-size: 14px;
    color: #50acd3;
}


/*
2503改修
———————————*/


/*———————————
採用情報
———————————*/
.page-recruit {
    width: 100%;
    max-width: 900px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 50px;
    padding-bottom: 50px;
}

.sec-recruit_list .block__ttl {
    margin-bottom: 40px;
}

.sec-recruit_list .main-txt {
    margin-bottom: 50px;
}

@media screen and (max-width:768px) {

    .page-recruit {
        padding-left: 5%;
        padding-right: 5%;
    }

    .sec-recruit_list .block__ttl {
        margin-bottom: 25px;
    }

    .sec-recruit_list .main-txt {
        margin-bottom: 30px;
    }
}

/*
採用ソートボタン
———————————*/

/* フィルター */

.searchandfilter {
    margin-bottom: 50px;
}

.searchandfilter + p {
    font-size: 2rem;
    text-align: center;
    padding: 30px 0;
}

.searchandfilter ul {
    display: flex;
    justify-content: space-between;

    @media screen and (max-width: 768px) {
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }
}

/* プルダウン装飾 */
.searchandfilter li {
    display: inline-flex;
    align-items: center;
    position: relative;
    font-size: 1.8rem;
    width: 220px;
    border: 1px solid var(--main-color);
    border-radius: 8px;
    overflow: hidden;

    @media screen and (max-width:768px) {
        font-size: 1.6rem;

    }

    &::after {
        position: absolute;
        right: 15px;
        width: 10px;
        height: 7px;
        background-color: #535353;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        content: '';
        pointer-events: none;
    }
}

.searchandfilter li

/* 検索ボックス */
.searchandfilter li:last-of-type {
    width: 180px;
    border: none;
}

.searchandfilter li:last-of-type::after {
    content: none;
}

.searchandfilter li select {
    appearance: none;
    width: 100%;
    height: 60px;
    padding: 10px 30px 10px 10px;
    border: none;
    border-radius: 3px;
    background-color: #fff;
    color: #333333;
    font-size: 1em;
    cursor: pointer;

    @media screen and (max-width:768px) {
        height: 50px;
        padding: 5px 30px 5px 10px
    }
}

.searchandfilter label {
    margin: 0 5px;
    padding: 0 5px;
    display: block;
    color: #1d1d1d;
    font-size: 12px;
    position: relative;
    line-height: 30px;
}

.searchandfilter input[type="radio"] {
    accent-color: #a83f3f;
}

.searchandfilter input[type="submit"] {
    border: 1px solid var(--main-color);
    background-color: var(--main-color);
    color: #fff;
    font-weight: 400;
    border-radius: 8px;
    letter-spacing: .2rem;
    text-align: center;
    height: 60px;
    width: 100%;
    font-size: 2rem;
}




/*
採用リスト
———————————*/
.bl-recruit_post {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;

    @media screen and (max-width:768px) {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin-inline: auto;
    }
}

.bl-recruit_item {
    padding-bottom: 16px;
    border: 1px solid var(--main-color);
    color: #333;
}

.bl-recruit_link {
    display: grid;
    grid-template-rows: auto auto auto auto 1fr;
    height: 100%;
    /* ← 中の要素が全体に広がるように */
}

.bl-recruit_img {
    margin-bottom: 12px;
    aspect-ratio: 3/2;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    /* 画像のはみ出しを隠す */
    position: relative;

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        /* カバーにする */
        object-position: center;
        /* 中央寄せ */

    }
}


.bl-recruit_ttl {

    font-size: 18px;
    margin: 10px 0;
    padding-left: 15px;
    padding-right: 15px;

}


.bl-recruit_tags {
    font-size: 1.5rem;
    flex-direction: column;
    min-height: 5.5rem;
    line-height: 1.4;

    font-size: 1.6rem;
    padding-left: 15px;
    padding-right: 15px;

    @media screen and (max-width:768px) {
        min-height: initial;
        margin-bottom: 10px;
    }

}



.bl-recruit_job {
    color: var(--main-color);
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 12px;
    padding-left: 15px;
    padding-right: 15px;

}

.bl-recruit_clinic {
    font-weight: 500;
    color: var(--main-color);
    font-size: 1.5rem;
    padding-left: 15px;
    padding-right: 15px;
}

.bl-recruit_notice {
    font-size: 1.5rem;
    padding-left: 15px;
    padding-right: 15px;
}

/*———————————
トップページ
———————————*/
/*
メッセージ
———————————*/

.sec-message_txt {
    padding: 0 50px;

    h3 {
        font-size: 3rem;
        text-align: center;
    }

    .el-button_wrap {
        padding: 30px 0;
    }
}

@media screen and (max-width:768px) {
    .sec-message_txt {
        padding: 0;

        h3 {
            font-size: 2em;
            font-feature-settings: "palt";
            letter-spacing: 1px;
        }
    }
}

/*
ニュース
———————————*/
.sec-news .el-button_wrap {
    padding-top: 40px;
}


/*———————————
法人について
———————————*/
.page-about {
    padding-top: 50px;
    padding-bottom: 50px;
}

/*
理念
———————————*/
.sec-rinen {
    padding-bottom: 40px;
}

/*
概要
———————————*/
.sec-about_table {
    table {
        max-width: 800px;

        .un-about_base td span {
            font-weight: bold;
            display: inline-block;
            margin-top: 20px;

            &:first-child {
                margin-top: 0;
            }
        }

    }
}

/*———————————
拠点一覧
———————————*/
.page-base {
    padding-top: 50px;
    padding-bottom: 50px;

    h2 {
        margin-bottom: 50px;
    }

    .bl-baseList_wrap {
        margin-bottom: 60px;
        border-bottom: 1px dotted var(--main-color);
        padding-bottom: 50px;

        @media screen and (max-width:768px) {
            margin-bottom: 40px;
            max-width: 400px;
            margin-inline: auto;
        }

        h3 {
            text-align: center;
            font-size: 24px;
            margin-bottom: 20px;

            @media screen and (max-width:768px) {
                font-size: 2rem;
            }
        }

        .bl-baseList {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            gap: 35px 25px;

            @media screen and (max-width:768px) {
                grid-template-columns: 1fr;

            }

            .bl-baseList_item a {
                display: flex;
                flex-direction: column;
                gap: 8px;
                font-size: 1.6rem;
                line-height: 1;

                .bl-baseList_img {
                    width: 100%;
                    aspect-ratio: 3/2;

                    img {
                        width: 100%;
                        display: block;
                    }
                }

                .bl-baseList_name {
                    font-size: 130%;
                    font-weight: bold;
                    line-height: 1.4;
                }
            }
        }

    }
}


/*———————————
お問い合わせ
———————————*/

.bl_form {
    width: 100%;
    max-width: 600px;
    padding: 60px 20px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;

}

.bl_form p,
.bl_form ul,
.bl_form li,
    {
    width: 100%;
}

.bl_form p {
    font-size: 1.8rem;
    line-height: 1.6;
    margin-bottom: 10px;
}

p.bl_contact_disc {
    margin-bottom: 40px;
}

.el_form_must {
    padding: 3px 6px;
    background-color: var(--main-color);
    color: #fff;
    margin-left: 10px;
    font-size: 1.5rem;
    border-radius: 8px;
}

.bl_form li {
    margin-bottom: 20px;
}

.bl_form li > input {
    padding: 5px 5px 5px 10px;
    font-size: 1.6rem;
    width: 100%;
    border: 1px solid #333;
    border-radius: 5px;
}


/* 住所 ———————————*/
.mwform-zip-field {
    display: block;
    margin-right: 20px;
    font-size: 1.6rem;
    margin-bottom: 10px;
}

.mwform-zip-field input[type="text"] {
    padding: 5px 5px 5px 10px;
    border: 1px solid #333;
    border-radius: 5px;
}

select.ken {
    padding: 5px;
    font-size: 1.6rem;
    margin-bottom: 10px;
    border-radius: 5px;
}

select.ken > option {
    width: 100%;
}


.bl_form li > input::placeholder {
    font-size: 1.6rem;

}

.mw_wp_form span.error {
    font-size: 1.5rem;
    margin-top: 10px;

}

.bl_form li > textarea {
    border: 1px solid #333;
    padding: 5px 5px 5px 10px;
    width: 100%;
    font-size: 1.6rem;
}

.bl_form li > input:focus-visible,
.bl_form li > textarea:focus-visible {
    outline: 0px solid var(--main-color);
    border: 2px solid var(--main-color);
}

.bl_form label {
    position: relative;
}

.bl_form label span {
    font-size: 1.8rem;
    color: #333;
}


/* ラジオボタン ———————————*/


#un_radio {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 20px;
}

#un_radio > .mwform-radio-field {
    margin-right: 15px;
    margin-bottom: 20px;
}

#un_radio .horizontal-item + .horizontal-item {
    margin-left: 0;
}


/* ボタン ———————————*/

.bl_sendBtn {
    width: 100%;
    display: flex;
    justify-content: center;
}

.el_form_btn {
    display: block;
    width: 100%;
    max-width: 200px;
    margin-right: 20px;
    margin-left: 20px;
    transition: all 0.2s ease-in-out;
}

.el_form_btn:hover {
    opacity: 0.7;
    transition: all 0.2s ease-in-out;
}

/* 文字周り 確認画面での調整箇所*/
.mw_wp_form_confirm   li {
    font-size: 2rem;
    padding-bottom: 20px;
    border-bottom: 1px dotted var(--main-color)
}

.mw_wp_form_confirm  p {
    font-size: 1.6rem;
}



/* 入力画面 */
.mw_wp_form_input .el_form_btn {
    display: none;
}

.mw_wp_form_input .el_form_btn + .el_form_btn {
    display: block;
}

.el_form_btnLink {
    width: 100%;
    padding: 20px;
    background-color: var(--main-color);
    color: #fff;
    font-size: 2rem;
    border: none;
    border-radius: 10px;
    cursor: pointer;
}

.el_form_btnLink.un_back {
    border: 2px solid var(--main-color);
    background-color: #fff;
    color:  var(--main-color);
}

/* 完了画面 */

.mw_wp_form_complete .bl_contact_disc{
    font-size: 2rem;
    text-align: center;
    margin-bottom: 0;
    padding: 80px 20px;
}
