@charset "utf-8";

/* Generic-child-obitoku-nurse : main.content ONLY
    メインカラムのコンテンツブロック内にのみ適用される汎用スタイル
    各ページ共通と、ページ個別の指定があります
        【各ページ・複数ページ 共通】
　　　　・メインコンテンツ内ヘッダ・h要素・画像キャプション
　　　　・固定・最上親ページ内子ページリストレイアウト
        ・固定・子ページを持つ最上の親以外のページ内 孫ページ以下ページリスト
        ・ブロック要素（.article-body , .article-sub）
        【ページ個別】
        ・診療科・部署ページ（page-section.php）
        ・病院指標ページ（page-hpdata.php）
        ・サイトマップページ
        ・お問い合わせフォーム
        ・メインコンテンツ - INDEX・アーカイブページ（お知らせ・ブログ）ページナビ
        ・お知らせ・ブログページ（投稿・カスタム投稿タイプ）共通
        ・お知らせページ（投稿）
        ・ブログページ（カスタム投稿タイプ）
        ・検索結果ページ（search.php）
        ・サンプル・確認ページ（page-sample.php）
        【メディアクエリ】
*/
/*【各ページ・複数ページ 共通】*/
/* メインコンテンツ内ヘッダ・h要素
------------------------------------------------------------ */
/*メインコンテンツ - メインカラム - エントリーヘッダ：entry.php - header */
main.content header {}

/*メインコンテンツ - メインカラム - エントリーヘッダ - エントリータイトル：header h1.entry-title */
main.content header h1.entry-title {
    font-size: 2.25em;
    position: relative;
    padding-left: 0;
    border-bottom: #66cccc double 3px;
    line-height: initial;
    padding-bottom: 10px;
    margin: 0px 0px 1em;
}

main.content header h1.entry-title::before {
    display: none;
}

main.content header h1.entry-title a {
    color: #000;
    pointer-events: none;
}

/*メインコンテンツ - メインカラム - エントリーコンテンツ：entry.php - article.post*/
main.content article.post {}

/*メインコンテンツ - メインカラム - エントリーコンテンツ - エントリーヘッダ：article.post header */
main.content article.post header {
    line-height: 160%;
}

/*メインコンテンツ - メインカラム - エントリーコンテンツ - エントリーコンテント：投稿内容 div.entry-content */
main.content article.post .entry-content {
    line-height: 160%;
    padding: 1em 0;
}

/*メインコンテンツ内 h要素（h2～h6）*/
main.content .entry-content h2,
main.content .entry-content h3,
main.content .entry-content h4,
main.content .entry-content h5,
main.content .entry-content h6 {
    margin: 0 0 1rem;
}

/*メインコンテンツ内 ページ内ナビ*/
main.content nav.local-menu {
    background-color: #F7F1EB;
    color: #333;
    margin: 0 auto 30px auto;
    padding: 15px 15px 0 0px;
    width: 100%;
}

main.content nav.local-menu ul {
    list-style: none;
    margin: 0 auto;
    font-family: 'Noto Sans JP', sans-serif;
}

main.content nav.local-menu ul li {
    display: inline-block;
    padding: 0 16px;
    border-right: 1px solid #ccc;
    margin: 0 0 15px 0;
}


main.content nav.local-menu ul li a:link,
main.content nav.local-menu ul li a:visited,
main.content nav.local-menu ul li a:active {
    color: #333;
    display: block;
    text-decoration: none;
}

main.content nav.local-menu ul li a:hover {
    color: #E2D4C7;
    display: block;
}

/* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
main.content .entry-content .child-page-list>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
}

main.content .entry-content .child-page-list>ul::before,
main.content .entry-content .child-page-list>ul::after {
    content: "";
    display: block;
    width: 24%;
    height: 0;
}

main.content .entry-content .child-page-list>ul::before {
    order: 1;
}

main.content .entry-content .child-page-list>ul>li {
    background-color: #fff;
    border: #ddd solid 1px;
    border-radius: 10px;
    list-style: none;
    position: relative;
    transition: .3s;
    width: 24%;
    font-family: 'Zen Maru Gothic', sans-serif;
}

main.content .entry-content .child-page-list>ul>li:last-child {
    margin: 0 0 1em;
}

main.content .entry-content .child-page-list>ul>li:hover {
    background-color: #f7f7f7;
}

main.content .entry-content .child-page-list>ul>li figure p.thumbnail {
    background: url("../images/common/bg-childpage-list.png") no-repeat center center;
    background-size: cover;
    border-radius: 10px 10px 0 0;
    height: 160px;
    margin: 0;
    padding: 0;
    width: 100%;
}

main.content .entry-content .child-page-list>ul>li figure p img {
    height: 160px;
    border-radius: 10px 10px 0 0;
    margin: 0;
    object-fit: cover;
    width: 100%;
}

main.content .entry-content .child-page-list>ul>li figure figcaption a {
    display: block;
    padding: 1rem;
    text-decoration: none;
}

main.content .entry-content .child-page-list>ul>li figure figcaption a::before {
    content: '\e5cc';
    font-family: 'Material Icons';
    padding: 0 .25em 0 0;
}

main.content .entry-content .child-page-list>ul>li figure figcaption a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: rgba(0, 0, 0, 0);
}

main.content .entry-content .child-page-list>ul>li figure figcaption a,
main.content .entry-content .child-page-list>ul>li figure figcaption span.no-link {
    display: block;
    padding: 1rem;
    text-decoration: none;
    font-size: 18px;
}

main.content .entry-content .child-page-list>ul>li figure figcaption span.no-link {
    color: #666;
}

main.content .entry-content .child-page-list>ul>li figure figcaption a::before,
main.content .entry-content .child-page-list>ul>li figure figcaption span.no-link::before {
    content: '\e5cc';
    font-family: 'Material Icons';
    padding: 0 .25em 0 0;
}

main.content .entry-content .child-page-list>ul>li figure figcaption a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: rgba(0, 0, 0, 0);
}

/* 固定・子ページを持つ最上の親以外のページ内 孫ページ以下ページリスト
------------------------------------------------------------ */
.sub-child-page-list {}

.sub-child-page-list>ul:has(li) {
    align-items: flex-start;
    background-color: #f7f7f7;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 2rem 0 0 0;
    padding: 1rem 1rem 0 1rem;
}

.sub-child-page-list>ul::before,
.sub-child-page-list>ul::after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}

.sub-child-page-list>ul::before {
    order: 1;
}

.sub-child-page-list>ul>li {
    background-color: #fff;
    border: #ddd solid 1px;
    list-style: none;
    position: relative;
    transition: .3s;
    width: 32%;
}

.sub-child-page-list>ul>li:last-child {
    margin: 0 0 1rem !important;
}

.sub-child-page-list>ul>li>a {
    display: block;
    padding: 1rem;
}

.sub-child-page-list>ul>li>a::before {
    content: '\eac9';
    font-family: 'Material Icons';
}

/*曾孫以下ページリスト表示*/
.sub-child-page-list>ul>li>ul.children {
    margin: -.5rem 0 0 0 !important;
    padding: 0 0 0 1.5rem;
}

.sub-child-page-list>ul>li>ul.children li {
    list-style: none;
    padding: 0 .5rem .5rem;
}

.sub-child-page-list>ul>li>ul.children li>a::before {
    content: '\e5da';
    font-family: 'Material Icons';
}

/* ブロック要素
div class="article-body article-sub" .article-sbody , .article-sub
---------------------------------------------------- */
.content .article-body {
    margin: 0 auto 50px auto;
    width: 100%;
}

.content .article-body .article-sub {
    margin: 0 auto 25px auto;
    width: 100%;
}

/*【ページ個別】*/
/* 診療科・部署ページ（page-section.php）
------------------------------------------------------------ */
/*診療科一覧リスト 暫定 */
#section-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
}

#section-list::after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}

#section-list li,
#section-list li:last-child {
    background-color: #fff;
    border: #ddd solid 1px;
    list-style: none;
    margin: 0 0 1rem;
    padding: 1rem;
    position: relative;
    text-align: center;
    transition: .3s;
    width: 32%;
}

#section-list li a::after {
    background-color: rgba(0, 0, 0, 0);
    content: "";
    pointer-events: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}

/*外来診療受付ボックスエリア*/
.reception_box {
    background-color: rgba(3, 164, 239, .10);
    margin: 2rem 0;
    padding: 1rem;
}

.reception_box:not(:empty) {
    background-color: rgba(3, 164, 239, .00);
    margin: 0;
    padding: 0;
}

.reception_box.no-display {
    display: none;
}

main.content .entry-content .reception_box h3 {
    background-color: transparent;
    color: rgba(3, 164, 239, 1.00);
    font-size: 1.25em;
    justify-content: center;
    padding: 0;
}

main.content .entry-content .reception_box h3::before {
    display: none;
}

main.content .entry-content .reception_box table {
    font-size: .875em;
}

main.content .entry-content .reception_box table th,
main.content .entry-content .reception_box table td {
    min-width: 80px;
    padding: .5rem;
    width: calc(100% / 7);
}

main.content .entry-content .reception_box table th {
    background-color: rgba(3, 164, 239, .50);
}

/*外来診療担当医表リンクエリア*/
.schedule-link {
    margin: 3rem 0;
}

.schedule-link p {
    text-align: center;
}

.schedule-link p a.btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
}

.schedule-link p a.btn::before {
    content: "\ebcc";
    font-family: "Material Icons";
    font-size: 1.5rem;
    padding: 0 .5rem 0 0;
}

/*医師ボックスエリア*/
.doctor_box-wrap {
    margin: 2rem 0;
}

.doctor_box-wrap .doctor_box {
    border-bottom: #eee solid 1px;
    border-left: #eee solid 1px;
    margin: 0 0 1rem;
    padding: 0 0 1rem 1rem;
}

.doctor_box-wrap .doctor_box.no-display {
    display: none;
}

.doctor_box-wrap .doctor_box:last-child {
    margin: 0;
}

.doctor_box-wrap .doctor_box .doctor-prof {
    display: flex;
    justify-content: space-between;
}

.doctor_box-wrap .doctor_box .doctor-prof .photo {
    margin: 0 1rem 1rem 0;
}

.doctor_box-wrap .doctor_box .doctor-prof .photo p {
    border: #ddd solid 1px;
    line-height: 0;
    margin: 0;
}

.doctor_box-wrap .doctor_box .doctor-prof .photo img {
    height: 188px;
    object-fit: cover;
    width: 132px;
}

.doctor_box-wrap .doctor_box .doctor-prof .name-post {
    flex: 1;
}

.doctor_box h4.name {
    align-items: center;
    border-bottom: 3px solid #eee;
    display: flex;
    font-size: 1.5em;
    justify-content: space-between;
    padding: 0.5rem 0 .5rem 1rem !important;
    position: relative;
}

.doctor_box h4.name::before {
    height: 2px;
}

.doctor_box h4.name span {
    color: #999;
    font-size: .75em;
    font-weight: normal;
}

.doctor_box .post,
.doctor_box .specialty {
    margin: 0 0 .5rem;
}

.doctor_box .post {
    border-bottom: #ddd dotted 1px;
    padding: 0 0 .5rem;
}

.doctor_box .post p,
.doctor_box .specialty p {
    margin: 0;
}

/* Q&Aページ（page-faq.php）
------------------------------------------------------------ */
/*faqボックスエリア*/
.faq_box-wrap {
    margin: 2rem 0;
}

.faq_box-wrap .faq_box {
    margin: 0 0 1rem;
    padding: 0;
}

.faq_box-wrap .faq_box.no-display {
    display: none;
}

.faq_box-wrap .faq_box:last-child {
    margin: 0;
}

.faq_box h3.faq_ttl {
    align-items: center;
    color: #333;
    background-color: rgba(235, 251, 227, 1);
    border-bottom: none !important;
    border-radius: 10px;
    display: flex;
    font-size: 1.25em;
    line-height: 100%;
    margin: 0 !important;
    padding: 1rem !important;
    position: relative;
}

main.content .entry-content .faq_box h3.faq_ttl::before {
    background-color: transparent;
}

.faq_box h3.faq_ttl::after {
    border: 10px solid transparent;
    border-top: 10px solid rgba(235, 251, 227, 1);
    content: "";
    display: block;
    position: absolute;
    bottom: -20px;
    left: 1.5rem;
}

.faq_box h3.faq_ttl::before {
    background-color: transparent;
    background-image: none !important;
    border: none;
    content: "Q." !important;
    font-size: 1.75rem;
    height: 1.75rem !important;
    margin: 0;
    position: relative !important;
    bottom: 0 !important;
    left: 0 !important;
    width: auto !important;
}

.faq_box div.answer {
    align-items: flex-start;
    display: flex;
    margin: 0 0 2rem;
    padding: 2rem .5rem;
}

.faq_box div.answer::before {
    background-color: transparent;
    border-radius: none;
    color: #66cccc;
    content: "A.";
    font-size: 1.75rem;
    line-height: 100%;
    margin: 0 1rem;
    width: auto;
}

.faq_box div.answer>div>p {
    margin: 0;
}

/* 病院指標ページ（page-hpdata.php）
body.hpdata , body.hpdata-child
------------------------------------------------------------ */
body.hpdata main.content,
body.hpdata-child main.content {
    width: 100%;
}

body.hpdata aside#sidebar,
body.hpdata-child aside#sidebar {
    display: none;
}

/*プリズム配布テンプレート対応スタイル*/
/*外部サイトリンク*/
.out_link {
    text-align: right;
}

/*見出し*/
.div-title,
.div-title-hist {
    background-color: rgba(3, 164, 239, 1.00);
    color: #fff;
    display: flex;
    flex-wrap: nowrap;
    font-size: 1.14em;
    justify-content: space-between;
    padding: 0.5rem;
}

/*csvダウンロードリンク*/
a.csv_btn {
    align-items: center;
    background-color: rgba(255, 255, 255, .85);
    border: 1px solid #fff;
    display: inline-flex;
    font-size: .75rem;
    justify-content: center;
    padding: 0 .5rem;
    position: relative;
    text-decoration: none;
    width: fit-content;
}

a.csv_btn::after {
    content: "\f090";
    font-family: "Material Icons";
}

/*table*/
.template-table {
    border-collapse: collapse;
}

.template-table th,
.template-table td {
    width: auto;
}

.template-table th.left_align {
    text-align: left;
}

.number-cell {
    text-align: right;
    width: 75px;
}

/*コメント*/
.comment {
    background-color: rgba(3, 164, 239, .25);
    margin: 1rem 0;
    padding: .5rem;
}

/*米印*/
span.kome {
    font-size: x-small;
}

/*更新履歴*/
.div-title-hist {
    background-color: #C90;
    margin: 0 0 1rem;
}

.hist_list {
    display: flex;
    flex-wrap: wrap;
    padding: 1rem 0;
}

.hist_list dt {
    width: 130px;
}

.hist_list dd {
    width: calc(100% - 140px);
}

div[id^="cd_top3_nm_"],
div[id^="ope_top3_nm_"],
div[id^="cd_top5_nm_"],
div[id^="ope_top5_nm_"] {
    padding: 5px;
}

div[id^="cd_top3_nm_"]:before,
div[id^="ope_top3_nm_"]:before,
div[id^="cd_top5_nm_"]:before,
div[id^="ope_top5_nm_"]:before {
    content: "■";
    font-size: large;
}

/* サイトマップページ body.sitemap , ul.wsp-pages-list
------------------------------------------------------------ */
body.sitemap main.content .entry-content .wsp-pages-list {
    margin: 0;
}

body.sitemap main.content .entry-content .wsp-pages-list li {
    line-height: normal;
    list-style: none;
    margin: 0
}

body.sitemap main.content .entry-content .wsp-pages-list li a {
    text-decoration: none;
}

body.sitemap main.content .entry-content .wsp-pages-list li ul {
    margin: 0;
}

/*第一階層*/
body.sitemap main.content .entry-content .wsp-pages-list>li {
    border-bottom: #ddd dotted 1px;
    font-weight: bold;
    margin: 0 0 1rem;
    padding: 0;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>a::before {
    content: "\e5df";
    font-family: 'Material Icons';
}

body.sitemap main.content .entry-content .wsp-pages-list>li>a:last-child {
    display: block;
    padding: 0 0 1rem;
}

/*第二階層*/
body.sitemap main.content .entry-content .wsp-pages-list>li>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: .5rem 0 0 1rem;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li {
    font-weight: normal;
    margin: 0 0 .5rem;
    padding: 0 0 .5rem;
    width: 49%;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>a::before {
    content: "\e5cc";
    font-family: 'Material Icons';
}

/*第三階層*/
body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul {
    padding: .5rem 0 0 1rem;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul>li {
    font-weight: normal;
    margin: 0 0 .5rem;
    padding: 0 0 .5rem;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul>li:last-child {
    border-bottom: none;
    margin: 0;
    padding: 0;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul>li>a::before {
    content: "\eac9";
    font-family: 'Material Icons';
}

/*第三階層以下*/
body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul>li ul {
    padding: .5rem 0 0 1rem;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul>li ul li {
    font-weight: normal;
    margin: 0 0 .5rem;
    padding: 0 0 .5rem;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul>li ul li:last-child {
    border-bottom: none;
    margin: 0;
    padding: 0;
}

body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li>ul>li ul li a::before {
    content: "-";
}

/* お問い合わせフォーム body.inquiry , .wpcf7
------------------------------------------------------------ */
body.inquiry main.content .entry-content .wpcf7 {
    width: 100%;
}

.wpcf7 form {
    margin: 0 auto;
    width: 80%;
}

/*フォーム入力項目群*/
main.content .entry-content .wpcf7 form .mailform .form_list {
    margin: 3rem 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dt {
    padding: .5rem 0;
    text-align: right;
    width: 10rem;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd {
    margin: 0;
    width: calc(100% - 11rem);
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd #your-year {
    margin: 0 0 10px 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd #your-month {
    margin: 0 0 10px 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd #your-date {
    margin: 0 0 10px 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list input[type="checkbox"]+span {
    display: inline-block;
    padding: 0 0 0 .25rem;
}

main.content .entry-content .wpcf7 form .mailform .form_list span.required::after {
    content: "*";
    color: #f00;
    display: inline;
    padding: 0 0 0 .25em;
}

main.content .entry-content .wpcf7 form .mailform .form_list input[type="text"],
main.content .entry-content .wpcf7 form .mailform .form_list textarea {
    width: 100%;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd>span.select {
    position: relative;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd>span.select::after {
    color: #ddd;
    content: "\f078";
    display: inline;
    font-family: FontAwesome;
    position: absolute;
    top: calc(50% - .5em);
    right: .5em;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd p {
    font-size: .875rem;
    margin: 1em 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd p.form-attention {
    font-size: 1rem;
    margin: 0.25rem 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd ul {
    margin: 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl dd ul li {
    margin: 0;
}

main.content .entry-content .wpcf7 form .mailform .form_list select {
    appearance: none;
    border: #ddd solid 1px;
    border-radius: 5px;
    font-size: 1em;
    margin: 0;
    padding: .5em 2em .5em .5em;
    max-width: 100% !important;
    height: auto;
}

/*ラジオボタン*/
main.content .entry-content .wpcf7 form .mailform .form_list .wpcf7-radio .wpcf7-list-item {
    display: block;
    margin: 0 0 .5rem;
}

/*チェックボックス*/
main.content .entry-content .wpcf7 form .mailform .form_list .wpcf7-checkbox .wpcf7-list-item {
    display: block;
}

/* main.content .entry-content .wpcf7 form .mailform .form_list .wpcf7-checkbox .wpcf7-list-item:first-child {
    margin-left: 0;
} */

/*グループ*/
main.content .entry-content .wpcf7 form .mailform .form_list .group {
    background-color: #f5f5f5;
    border: #ddd solid 1px;
    margin: .5rem 0;
    padding: .5rem;
}

/*グループ - 注意事項*/
main.content .entry-content .wpcf7 form .mailform .form_list .group .group-note {
    border: #f00 solid 1px;
    font-size: .875rem;
    padding: .25rem;
}

main.content .entry-content .wpcf7 form .mailform .form_list .group .group-note li {
    padding: 0 0 .25rem;
}

main.content .entry-content .wpcf7 form .mailform .form_list .group .group-note li:last-child {
    padding: 0;
}

/*フォーム入力項目群 - 各項目毎設定*/
main.content .entry-content .wpcf7 form .mailform .form_list dl.subject input[type="text"],
main.content .entry-content .wpcf7 form .mailform .form_list dl.affiliation input[type="text"],
main.content .entry-content .wpcf7 form .mailform .form_list dl.address-addr input[type="text"] {
    width: 80%;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl.name input[type="text"],
main.content .entry-content .wpcf7 form .mailform .form_list dl.address-city input[type="text"],
main.content .entry-content .wpcf7 form .mailform .form_list dl.tel input[type="tel"],
main.content .entry-content .wpcf7 form .mailform .form_list dl.mail input[type="email"] {
    width: 60%;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl.address-zip input[type="tel"],
main.content .entry-content .wpcf7 form .mailform .form_list dl.address-pref input[type="text"] {
    width: 30%;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl.age input[type="text"] {
    width: 15%;
}

/*フォーム入力項目群 - 個別設定*/
main.content .entry-content .wpcf7 form .mailform .form_list dl.job span:first-child select {
    margin: 0 0 .5rem;
}

main.content .entry-content .wpcf7 form .mailform .form_list dl.qualification textarea,
main.content .entry-content .wpcf7 form .mailform .form_list dl.motive textarea,
main.content .entry-content .wpcf7 form .mailform .form_list dl.pr textarea,
main.content .entry-content .wpcf7 form .mailform .form_list dl.message textarea {
    height: 8rem;
}

/*プライバシーチェック*/
main.content .entry-content .wpcf7 form .mailform .form_privacy {
    border: #ddd double 3px;
    margin: 2rem 0;
    padding: 1rem;
    text-align: center;
}

/*プライバシーチェック - チェックボックス*/
main.content .entry-content .wpcf7 form .mailform .form_privacy p input[type="checkbox"] {
    box-sizing: border-box;
    display: none;
    padding: 0;
}

main.content .entry-content .wpcf7 form .mailform .form_privacy p span:nth-child(2) {
    align-items: center;
    display: flex;
    position: relative;
}

main.content .entry-content .wpcf7 form .mailform .form_privacy p span:nth-child(2)::before {
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 3px;
    content: '';
    display: block;
    height: 20px;
    margin: 0 .5rem 0 0;
    position: relative;
    transition: all .2s;
    width: 20px;
}

main.content .entry-content .wpcf7 form .mailform .form_privacy p span:nth-child(2)::after {
    border-left: 2px solid #dc3232;
    border-bottom: 2px solid #dc3232;
    content: '';
    height: 6px;
    margin-top: -6px;
    opacity: 0;
    position: absolute;
    left: 4px;
    top: 50%;
    transform: rotate(-45deg) scale(.5);
    transition: all .2s;
    width: 14px;
}

main.content .entry-content .wpcf7 form .mailform .form_privacy p input[type="checkbox"]:checked+span:nth-child(2)::after {
    opacity: 1;
    -webkit-transform: rotate(-45deg) scale(1);
    transform: rotate(-45deg) scale(1);
}

/*送信ボタン*/
main.content .entry-content .wpcf7 form .mailform input[type="submit"] {
    transition: .3s;
}

/* メインコンテンツ - INDEX・アーカイブページ（お知らせ・ブログ）ページナビ
-------------------------------------------------------------------- */
#cms-pagination {
    width: 100%;
    overflow: hidden;
    margin: 2em 0 .5em;
}

#cms-pagination ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
    position: relative;
}

#cms-pagination ul li,
#cms-pagination ul li:last-child {
    display: inline-block;
    margin: 0 0 .5em;
}

#cms-pagination ul li a,
#cms-pagination ul li span {
    align-items: center;
    border: #f7f7f7 solid 1px;
    display: inline-flex;
    justify-content: space-around;
    height: 100%;
    margin: 0 .25em;
    padding: .25em .5em;
    text-decoration: none;
}

#cms-pagination ul li span {
    background-color: #f7f7f7;
    color: #999;
}

/*現在のページ*/
#cms-pagination ul li.pagination-index span {
    color: rgba(102, 204, 204, 1);
    font-weight: bold;
}

/*先頭*/
#cms-pagination ul li.pagination-no-num.first a::before,
#cms-pagination ul li.pagination-no-num.first span::before {
    content: "\e5dc";
    font-family: 'Material Icons';
}

/*前*/
#cms-pagination ul li.pagination-no-num.prev a::before,
#cms-pagination ul li.pagination-no-num.prev span::before {
    content: "\e314";
    font-family: 'Material Icons';
}

/*次*/
#cms-pagination ul li.pagination-no-num.next a::after,
#cms-pagination ul li.pagination-no-num.next span::after {
    content: "\e315";
    font-family: 'Material Icons';
}

/*最後*/
#cms-pagination ul li.pagination-no-num.last a::after,
#cms-pagination ul li.pagination-no-num.last span::after {
    content: "\e5dd";
    font-family: 'Material Icons';
}

/*総件数表示*/
.pagination-txt {
    color: #999;
    text-align: center;
}

/* お知らせ・ブログページ（投稿・カスタム投稿タイプ）共通
body.blog（お知らせ INDEX）
body.archive（お知らせ カテゴリ・アーカイブ / ブログ カテゴリ・アーカイブ）
body.post-type-archive-blogs（ブログ INDEX）
body.tax-blogs-category（お知らせ・ブログ カテゴリ）
------------------------------------------------------------ */
body.blog main.content article,
body.archive main.content article,
body.recruit_info main.content .entry-list#recruit article,
body.post-type-archive-blogs main.content article {
    background-color: #fff;
    border-bottom: #ddd dotted 1px;
    margin: 0;
    padding: .5em;
    position: relative;
    transition: .3s;
}

body.blog main.content article:hover,
body.archive main.content article:hover,
body.recruit_info main.content .entry-list#recruit article:hover,
body.post-type-archive-blogs main.content article:hover {
    background-color: #f7f7f7;
}


body.recruit_info main.content .entry-list#recruit .article-list {
    margin-bottom: 50px;
}

body.blog main.content article:first-of-type,
body.archive main.content article:first-of-type,
body.recruit_info main.content .entry-list#recruit article:first-of-type,
body.post-type-archive-blogs main.content article:first-of-type {
    border-top: #ddd dotted 1px;
}

body.blog main.content article::after,
/* body.archive main.content article::after, */
body.recruit_info main.content .entry-list#recruit article::after,
body.post-type-archive-blogs main.content article::after {
    content: '\e5df';
    display: inline-block;
    font-family: 'Material Icons';
    padding: 0;
    position: absolute;
    right: 0;
    top: calc(50% - .5em);
}

body.blog main.content article header,
body.archive main.content article header,
body.recruit_info main.content .entry-list#recruit article header,
body.post-type-archive-blogs main.content article header {
    display: flex;
    flex-direction: column-reverse;
    flex-wrap: wrap;
}

body.recruit_info main.content .entry-list#recruit .section-wrap .header-wrap h2 {
    background-color: #66cccc;
    color: #fff;
    display: flex;
    flex-wrap: nowrap;
    font-size: 1.6em;
    justify-content: flex-start;
    padding: .6rem;
    border-radius: 10px;
    margin: 0 0 1em;
}

body.blog main.content article header h2,
body.archive main.content article header h2,
body.recruit_info main.content .entry-list#recruit article.post h3.entry-title,
body.post-type-archive-blogs main.content article header h2 {
    font-size: 1.25em;
    font-weight: normal;
}

body.blog main.content article header h2 a,
body.archive main.content article header h2 a,
body.recruit_info main.content .entry-list#recruit article.post h3.entry-title a,
body.post-type-archive-blogs main.content article header h2 a {
    display: block;
    padding: 1rem;
    text-decoration: none;
    font-size: 18px;
    font-family: 'Zen Maru Gothic', sans-serif;
}

body.blog main.content article header h2 a::after,
body.archive main.content article header h2 a::after,
body.recruit_info main.content .entry-list#recruit article.post h3 a::after,
body.post-type-archive-blogs main.content article header h2 a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: rgba(0, 0, 0, 0);
}

body.blog main.content article .entry-meta,
body.archive main.content article .entry-meta,
body.recruit_info main.content .entry-list#recruit article .entry-meta,
body.post-type-archive-blogs main.content article .entry-meta {
    margin: 0;
    padding: 0;
}

body.blog main.content article .entry-meta .entry-date,
body.archive main.content article .entry-meta .entry-date,
body.recruit_info main.content .entry-list#recruit article .entry-meta .entry-date,
body.post-type-archive-blogs main.content article .entry-meta .entry-date {
    padding: 0 .5em 0 0;
}

body.blog main.content article .entry-meta .category {
    display: none;
    /* background-color: #ddd;
    border: #ddd solid 1px;
    border-radius: 5px;
    color: #666;
    display: inline-block;
    line-height: 100%;
    padding: .15em 1em;
    text-align: center; */
}

/* body.blog main.content article .entry-meta .category, */
body.archive main.content article .entry-meta .category,
body.post-type-archive-blogs main.content article .category,
body.recruit_info main.content .entry-list#recruit article .category {
    background-color: #F7F1EB;
    border: #F7F1EB solid 1px;
    border-radius: 5px;
    color: #666;
    display: inline-block;
    line-height: 100%;
    padding: .15em 1em;
    text-align: center;
}

/*お知らせカテゴリ*/
body.blog main.content article .entry-meta .category,
body.archive main.content article .entry-meta .category,
body.recruit_info main.content .entry-list#recruit article .entry-meta .category {
    margin-right: 5px;
}

body.blog main.content article .entry-meta .category.newcomer,
body.archive main.content article .entry-meta .category.newcomer,
body.recruit_info main.content .entry-list#recruit article .entry-meta .category.newcomer {
    background-color: #ffeaf4;
}

body.blog main.content article .entry-meta .category.senior,
body.archive main.content article .entry-meta .category.senior,
body.recruit_info main.content .entry-list#recruit article .entry-meta .category.senior {
    background-color: #eafff4;
}

body.blog main.content article .entry-meta .category.mother,
body.archive main.content article .entry-meta .category.mother {
    background-color: #eaf4ff;
}

body.blog main.content article .entry-meta .category.licensed,
body.archive main.content article .entry-meta .category.licensed {
    background-color: #ffffea;

}

body.blog main.content article .entry-meta .category.u-turn,
body.archive main.content article .entry-meta .category.u-turn {
    background-color: #f4eaff;
}

/*ブログカテゴリ*/
body.post-type-archive-blogs main.content article span.category,
body.tax-blogs-category main.content article span.category {
    background-color: #fff !important;
}

body.post-type-archive-blogs main.content article span.category.hospital,
body.tax-blogs-category main.content article span.category.hospital {
    border: rgba(130, 174, 70, 1.0) solid 1px;
}

body.post-type-archive-blogs main.content article span.category.nurse,
body.tax-blogs-category main.content article span.category.nurse {
    border: rgba(236, 109, 113, 1.0) solid 1px;
}

body.post-type-archive-blogs main.content article span.category.resident,
body.tax-blogs-category main.content article span.category.resident {
    border: rgba(37, 183, 192, 1.0) solid 1px;
}

body.post-type-archive-blogs main.content article span.category:first-of-type,
body.tax-blogs-category main.content article span.category:first-of-type {
    display: none;
}

/*staff 先輩メッセージトップサムネイルレイアウト(S)*/
.article-lists.staff-lists {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
}

.article-lists.staff-lists::after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}

main.content .article-lists.staff-lists article {
    background-color: #fff;
    border: #ddd solid 1px;
    border-radius: 10px;
    list-style: none;
    position: relative;
    transition: .3s;
    width: 32%;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    margin: 0 0 1em;
}

main.content .article-lists.staff-lists article:last-child {
    margin: 0 0 1em;
}

main.content .article-lists.staff-lists article:hover {
    background-color: #f7f7f7;
}

.article-lists.staff-lists article p .thum img {
    height: 100%;
    object-fit: cover;
    width: 30%;
}

.article-lists.staff-lists article p.cat-thum {
    width: 100%;
    height: 200px;
    border-radius: 10px 10px 0 0;
    background-color: red;
    margin: 0;
}

.article-lists.staff-lists article.staff-category-newcomer p.cat-thum {
    background: linear-gradient(150deg, rgba(255, 240, 245, 1) 50%, rgba(249, 211, 203, 1) 100%);
}

.article-lists.staff-lists article.staff-category-senior p.cat-thum {
    background: linear-gradient(150deg, rgba(238, 251, 227, 1) 50%, rgba(120, 240, 180, 1) 100%);
}

.article-lists.staff-lists article.staff-category-mother p.cat-thum {
    background: linear-gradient(150deg, rgba(227, 247, 251, 1) 50%, rgba(185, 208, 234, 1) 100%);
}

.article-lists.staff-lists article.staff-category-licensed p.cat-thum {
    background: linear-gradient(150deg, rgba(251, 245, 227, 1) 50%, rgba(234, 232, 133, 1) 100%);
}

.article-lists.staff-lists article p.cat-thum::before {
    position: absolute;
    width: 120px;
    height: 120px;
    top: 0;
    right: 0;
    bottom: 15%;
    left: 0;
    margin: auto;
}

.article-lists.staff-lists article.staff-category-newcomer p.cat-thum::before {
    content: url(../images/staff/img_newcomer.png);
}

.article-lists.staff-lists article.staff-category-senior p.cat-thum::before {
    content: url(../images/staff/img_senior.png);
}

.article-lists.staff-lists article.staff-category-mother p.cat-thum::before {
    content: url(../images/staff/img_mother.png);
}

.article-lists.staff-lists article.staff-category-licensed p.cat-thum::before {
    content: url(../images/staff/img_licensed.png);
}

/*カテゴリ名表示アイコン*/
.article-lists.staff-lists article p.cat-thum span.cat-name {
    background-color: #fff;
    border-radius: .5rem;
    display: inline-block;
    font-size: .75rem;
    margin: .5rem;
    padding: .25rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 400;
    color: #666;
}
/*staff 先輩メッセージトップサムネイルレイアウト(E)*/

/*staff 先輩メッセージ投稿ページ エントリーフッタ(S)*/
body.single-staff main.content article .entry-footer {
    display: none;
}
/*staff 先輩メッセージ投稿ページ エントリーフッタ(E)*/

/* 統一書式テンプレート */
.recruit_info div.resume-box {
    border-color: #ddd;
    font-size: clamp(0.875rem, 0.852rem + 0.11vw, 0.938rem)
}

.recruit_info div.resume-box a {
    color: #66cccc;
}

.recruit_info div.resume-box p {
    margin-bottom: 0.2em;
}

.lineBoxStyle01 {
    padding: 20px;
    border: 1px solid #CCC;
}

/* リンクアイコン */
.recruit_info a.xls_link::before {
    content: "\f1c3";
    font-family: FontAwesome;
    padding-right: .5em;
    color: green;
}

.recruit_info a.pdf_link::before {
    content: "\f1c1";
    color: firebrick;
    font-family: FontAwesome;
    padding-right: .5em;
}

/*投稿ページ */
body.single main.content .entry-content {
    line-height: 160%;
    padding: 1rem 0;
}

body.single main.content p {
    font-size: 1rem;
    line-height: 160%;
    margin: 1rem 0;
}

/*投稿ページ 日付*/
body.single main.content article .entry-meta {
    display: none;
    /* background-color: #f7f7f7;
    line-height: 100%;
    margin: 1rem 0;
    padding: 1rem;
    text-align: right; */
}

/*entry-meta内 カテゴリ非表示*/
body.single main.content article .entry-meta .category {
    display: none;
}

/*投稿ページ エントリーフッタ*/
body.single main.content article .entry-footer {
    border-bottom: #ddd dotted 1px;
    border-top: #ddd dotted 1px;
    margin: 1rem 0;
    padding: 1rem;
    text-align: right;
}

body.single main.content article .entry-footer .category {
    background-color: rgba(130, 174, 70, .25);
    border: rgba(130, 174, 70, .25) solid 1px;
    border-radius: 5px;
    color: #666;
    display: inline-block;
    padding: .25em 1rem;
}

body.single main.content article .entry-footer .category.newcomer {
    background-color: #ffeaf4;
}

body.single main.content article .entry-footer .category.senior {
    background-color: #eafff4;
}

body.single main.content article .entry-footer .category.mother {
    background-color: #eaf4ff;
}

body.single main.content article .entry-footer .category.licensed {
    background-color: #ffffea;
}

body.single main.content article .entry-footer .category.u-turn {
    background-color: #f4eaff;
}

/*投稿ページ カテゴリ デフォルト（お知らせ）*/
/* body.single main.content article .entry-footer .category {
    background-color: rgba(130, 174, 70, .25);
    border: rgba(130, 174, 70, .25) solid 1px;
    border-radius: 5px;
    color: #666;
    display: inline-block;
    padding: .25em 1rem;
} */

/*投稿ページ カテゴリ お知らせ - 重要なお知らせ*/
/* body.single main.content article .entry-footer .category.important {
    background-color: rgba(236, 109, 113, .25);
    border: rgba(236, 109, 113, .25) solid 1px;
} */

/*投稿ページ カテゴリ ブログ - 病院ブログ*/
/* body.single main.content article .entry-footer .category.hospital {
    background-color: rgba(255, 255, 255, 1.00);
    border: rgba(130, 174, 70, 1.0) solid 1px;
} */

/*投稿ページ カテゴリ ブログ - 看護部ブログ*/
body.single main.content article .entry-footer .category.nurse {
    background-color: rgba(255, 255, 255, 1.00);
    border: rgba(236, 109, 113, 1.0) solid 1px;
}

/*投稿ページ カテゴリ ブログ - 研修医ブログ*/
body.single main.content article .entry-footer .category.resident {
    background-color: rgba(255, 255, 255, 1.00);
    border: rgba(37, 183, 192, 1.0) solid 1px;
}

body.single-blogs main.content article .entry-footer span.category:first-of-type {
    display: none;
}

/*投稿ページ 記事下ページャー（前へ・次へ）*/
body.single main.content footer .nav-links::after {
    content: "";
    clear: both;
    display: block;
}

body.single main.content footer .nav-links .nav-previous a,
body.single main.content footer .nav-links .nav-next a {
    align-items: center;
    border: #f7f7f7 solid 1px;
    display: inline-flex;
    justify-content: space-around;
    height: 100%;
    margin: 0 .25em;
    padding: .25em .75em;
    text-decoration: none;
}

body.single main.content footer .nav-links .nav-previous a::before {
    content: "\e314";
    font-family: 'Material Icons';
    padding: 0 .25em 0 0;
}

body.single main.content footer .nav-links .nav-next a::after {
    content: "\e315";
    font-family: 'Material Icons';
    padding: 0 0 0 .25em;
}

/* お知らせページ（投稿）
body.blog（お知らせINDEX）
body.archive（お知らせ カテゴリ・アーカイブ）
body.single（お知らせ 投稿ページ）
------------------------------------------------------------ */
/*サイドバーウィジェットからカスタム投稿タイプ（ブログ）のカテゴリとアーカイブを非表示*/
/*--管理画面サイドバーウィジェット管理内でウィジェットにID命名必須*/
body.blog #side-blogs-category,
body.archive #side-blogs-category,
body.single #side-blogs-category,
body.blog #side-blogs-archive,
body.archive #side-blogs-archive,
body.single #side-blogs-archive {
    display: none;
}

/* ブログページ（カスタム投稿タイプ）
body.post-type-archive-blogs（ブログINDEX）
body.tax-blogs-category（ブログ カテゴリ・アーカイブ）
body.single-blogs（ブログ 投稿ページ）
------------------------------------------------------------ */
/*サイドバーウィジェットからお知らせのカテゴリとアーカイブを非表示*/
/*--管理画面サイドバーウィジェット管理内でウィジェットにID命名必須*/
body.post-type-archive-blogs #side-news-category,
body.tax-blogs-category #side-news-category,
body.single-blogs #side-news-category,
body.post-type-archive-blogs #side-news-archive,
body.tax-blogs-category #side-news-archive,
body.single-blogs #side-news-archive {
    display: none;
}

/*サイドバーウィジェットからカスタム投稿タイプ（ブログ）のカテゴリとアーカイブを表示*/
/*--管理画面サイドバーウィジェット管理内でウィジェットにID命名必須*/
body.post-type-archive-blogs #side-blogs-category,
body.tax-blogs-category #side-blogs-category,
body.single-blogs #side-blogs-category,
body.post-type-archive-blogs #side-blogs-archive,
body.tax-blogs-category #side-blogs-archive,
body.single-blogs #side-blogs-archive {
    display: block;
}

/* 検索結果ページ（search.php）
body.search-results（検索結果）
------------------------------------------------------------ */
/*検索結果一覧表示*/
body.search-results main.content article {
    background-color: #fff;
    border-bottom: #ddd dotted 1px;
    margin: 0;
    padding: 1rem;
    position: relative;
    transition: .3s;
}

body.search-results main.content article:hover {
    background-color: #f7f7f7;
}

body.search-results main.content article::after {
    content: '\e5df';
    display: inline-block;
    font-family: 'Material Icons';
    padding: 0;
    position: absolute;
    right: 0;
    top: calc(50% - .5em);
}

body.search-results main.content article:first-child {
    border-top: #ddd dotted 1px;
}

body.search-results main.content article header {
    display: flex;
    flex-direction: column-reverse;
    flex-wrap: wrap;
}

body.search-results main.content article header h2 {
    font-size: 1.25em;
    font-weight: normal;
}

body.search-results main.content article header h2 a {
    text-decoration: none;
}

body.search-results main.content article header h2 a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: rgba(0, 0, 0, 0);
}

/* サンプル・確認ページ（page-sample.php）
body.sample（サンプルページ）
------------------------------------------------------------ */
/* #today --- */
body.sample #today {
    margin: 50px 0 100px;
}

body.sample #today .section-wrap {
    border: #f7f7f7 solid 5px;
    margin: 0 auto;
    padding: 2rem;
    width: 1200px;
}

body.sample #today .contents {}

body.sample #today .contents ul li {
    /* スタイルリセット */
    margin: 0;
}

body.sample #today .contents .time-table-wrap {
    border-bottom: #e0e654 solid 3px;
    height: auto;
    margin: 0 0 1.75rem;
}

body.sample #today .contents>p {
    text-align: center;
}

/*診療受付*/
body.sample .time-table {
    /* display:none; 強制表示 */
    display: block !important;
    padding: 1rem;
    margin: 0;
    width: 100%;
}

/*曜日記述 フロントページでは非表示*/
body.sample .time-table .hermit {
    background-color: #e0e654;
    font-weight: bold;
    padding: .5rem;
    text-align: center;
}

/*午前午後同時強制表示*/
body.sample .time-table .panel,
body.sample .time-table .panel.active {
    display: block;
    padding: 0 0 2rem;
}

body.sample .time-table .panel h3 {
    background-color: transparent;
    color: #000;
    display: block;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.25em;
    margin: 1rem 0;
    padding: 0;
    text-align: center;
}

body.sample .time-table .panel h3 span {
    background-color: #ddd;
    color: #fff;
    font-size: .75em;
    margin: 0 1rem 0 0;
    padding: .25rem 1rem;
}

body.sample .time-table .panel.am h3 span {
    background-color: #f19072;
}

body.sample .time-table .panel.pm h3 span {
    background-color: #a0d8ef;
}

.time-table .panel .closed {
    color: #ff7474;
    font-weight: bold;
    text-align: center;
}

body.sample .time-table .panel ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none;
    margin: 0 0 1rem;
}

body.sample .time-table .panel ul li {
    align-items: center;
    border-bottom: #ddd dotted 1px;
    display: flex;
    justify-content: space-between;
    padding: .5em 0;
    width: 30%;
}

body.sample .time-table .panel ul li span {
    display: block;
    max-width: 50%;
    text-align: right;
}

/*リンク集*/
.link-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.link-box dl {
    border-bottom: #ddd dotted 1px;
    padding: .5em 0;
    width: calc(50% - 2em);
    margin: 0 auto 1.5em 0px !important;
    padding-bottom: 20px !important;
}

.link-box dl dt {
    font-size: 18px;
}

.br-sc-only {
    display: block;
}

/* 凡例一覧 */
.han-wrap {
    margin: 0 auto 30px auto;
    padding: 0;
    width: 100%;
}

.han-wrap ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style: none;
    margin: 0% !important;
    padding: 0;
    width: 102%;
}

.han-wrap ul li {
    /* margin: 0 0 40px 2%; */
    /* width: 31.33%; */
    width: 50%;
}

.han-wrap p.head {
    border-bottom: 2px solid #95CB26;
    color: #333;
    display: block;
    font-size: 16px;
    font-weight: bold;
    padding: 0 0 0 45px;
    position: relative;
    width: 100%;
}

.han-wrap p.head::before {
    content: url(../images/access/area/ico/han-mappin-ico.png);
    position: absolute;
    top: -5px;
    left: 0;
    width: 34px;
    height: 45px;
}

.han-wrap ul li {
    list-style: none;
}

.han-wrap ul li::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
}

.han-wrap ul li figure {
    margin: 0.1em 40px 1em;
}

.han-wrap ul li figure img {
    border-radius: 15px;
    box-shadow: 7px 7px 0px #eee;
}

.han-wrap ul li figcaption {
    text-align: center;
}

.han-wrap ul li.i01 figcaption::before {
    content: url(../images/access/area/ico/no01.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i02 figcaption::before {
    content: url(../images/access/area/ico/no02.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i03 figcaption::before {
    content: url(../images/access/area/ico/no03.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i04 figcaption::before {
    content: url(../images/access/area/ico/no04.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i05 figcaption::before {
    content: url(../images/access/area/ico/no05.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i06 figcaption::before {
    content: url(../images/access/area/ico/no06.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i07 figcaption::before {
    content: url(../images/access/area/ico/no07.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i08 figcaption::before {
    content: url(../images/access/area/ico/no08.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i09 figcaption::before {
    content: url(../images/access/area/ico/no09.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i10 figcaption::before {
    content: url(../images/access/area/ico/no10.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i11 figcaption::before {
    content: url(../images/access/area/ico/no11.png);
    vertical-align: middle;
    padding-right: 10px;
}

.han-wrap ul li.i12 figcaption::before {
    content: url(../images/access/area/ico/no12.png);
    vertical-align: middle;
    padding-right: 10px;
}

/*フロアマップ*/
.floormaps input[type="radio"] {
    display: none;
}

.floormaps label {
    background-color: #EEEEEE;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    height: 100%;
    margin: 0 0px 0 0;
    padding: 0.5em;
    text-align: center;
    width: 10.5%;
}

.floormaps label:last-child {
    margin: 0;
}

.floormaps label:hover {
    cursor: pointer;
}

.floormaps label:hover,
.floormaps input[type="radio"]:checked+label {
    color: #fff;
    font-weight: bold;
    background-color: #91CE1B;
    position: relative;
}

.floormaps input[type="radio"]:checked+label::after {
    content: "";
    border: 8px solid transparent;
    border-top: 8px solid #91CE1B;
    height: 0;
    position: absolute;
    top: 100%;
    left: 43%;
    width: 0;
}

.floormaps .tab-box {
    padding: 0;
    margin: 0;
    min-height: 100px;
}

.floormaps>.tab-box>div {
    display: none;
}

#floor_b2:checked~.tab-box>#floor_b2 {
    display: block;
    margin-top: 20px;
}

#floor_b1:checked~.tab-box>#floor_b1 {
    display: block;
    margin-top: 20px;
}

#floor_01:checked~.tab-box>#floor_01 {
    display: block;
    margin-top: 20px;
}

#floor_02:checked~.tab-box>#floor_02 {
    display: block;
    margin-top: 20px;
}

#floor_03:checked~.tab-box>#floor_03 {
    display: block;
    margin-top: 20px;
}

#floor_04:checked~.tab-box>#floor_04 {
    display: block;
    margin-top: 20px;
}

#floor_05:checked~.tab-box>#floor_05 {
    display: block;
    margin-top: 20px;
}

#floor_06:checked~.tab-box>#floor_06 {
    display: block;
    margin-top: 20px;
}

#floor_07:checked~.tab-box>#floor_07 {
    display: block;
    margin-top: 20px;
}

.floormaps .gallery {
    margin: 1em 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.floormaps .gallery::after {
    content: "";
    display: block;
    width: 30%;
}

.floormaps .gallery li {
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none;
    margin: 0 0 2% 0;
    padding: 0;
    width: 30%;
    margin-bottom: 2%;
}

.floormaps .gallery li:last-child {
    margin-bottom: auto;
}

.floormaps .gallery li span {
    background-color: #EEEEEE;
    display: block;
    padding: 0.25em;
    text-align: center;
    width: 100%;
}

.floormaps ul.facilities_name {
    margin: 0 auto 0px 0px;
}

.floormaps ul.facilities_name li {
    display: inline-block;
    list-style: none;
    padding: 10px 10px;
    border: 1px solid #ccc;
}

/*リンク集*/
ul.facility-link-collect {
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style-type: none;
    margin-left: 0px !important;
}

ul.facility-link-collect li {
    width: 48%;
    border: 1px solid #C8C8C8;
    border-radius: 20px;
    margin-bottom: 35px;
    list-style-type: none;
}

ul.facility-link-collect li:last-child {
    margin-bottom: auto !important;
}

ul.facility-link-collect li img {
    border-radius: 20px 0px 0px 20px;
    margin-right: 20px;
}

ul.facility-link-collect li a {
    align-items: center;
    color: #000;
    display: -webkit-flex;
    display: flex;
    height: 100%;
    justify-content: flex-start;
    position: relative;
    text-decoration: none;
    margin: 0;
    font-size: 16px;
    width: 100%;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

ul.facility-link-collect li:hover {
    background-color: #f7f7f7;
    transition: .5s;
}



/*【メディアクエリ】*/
@media(max-width:1260px) {

    /* サンプル・確認ページ（page-sample.php）
body.sample（サンプルページ）
------------------------------------------------------------ */
    /* #today --- */
    body.sample #today .section-wrap header h2 {
        font-size: 1.5rem;
    }

    body.sample #today .section-wrap {
        border: #f7f7f7 solid 5px;
        margin: 0 auto;
        padding: 2rem;
        width: 96%;
    }
}

@media (max-width: 1195px) {

    /*【各ページ・複数ページ 共通】*/
    /* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
    .link-box {
        display: block;
    }

    .link-box dl {
        width: 100%;
    }
}

@media(max-width:1024px) {

    /*【各ページ・複数ページ 共通】*/
    /* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
    main.content .entry-content .child-page-list>ul::before {
        display: none;
    }

    main.content .entry-content .child-page-list>ul::after {
        width: 32%;
    }

    main.content .entry-content .child-page-list>ul>li {
        width: 32%;
    }

    /*【ページ個別】*/
    /* 病院指標ページ（page-hpdata.php）
body.hpdata , body.hpdata-child
------------------------------------------------------------ */
    /*プリズム配布テンプレート対応スタイル*/
    /*見出し*/
    .div-title,
    .div-title-hist {
        flex-direction: column;
        justify-content: flex-start;
    }

    /* サンプル・確認ページ（page-sample.php）
body.sample（サンプルページ）
------------------------------------------------------------ */
    /* #today --- */
    body.sample #today {
        margin: 50px 0 70px;
    }

    body.sample #today .section-wrap {
        padding: 1rem;
        width: 90%;
    }

    body.sample #today .contents .time-table {
        padding: .5rem 2rem .5rem .5rem;
        position: relative;
    }

    /* perfect-scrollbar.js スクロールバー設定 */
    body.sample #today .contents .time-table .ps__thumb-y {
        background-color: rgba(224, 230, 84, .50) !important;
    }

    /*診療受付*/
    body.sample .time-table .panel ul li {
        width: 48%;
    }
}

@media(max-width:900px) {

    /*【各ページ・複数ページ 共通】*/
    /* メインコンテンツ内ヘッダ・h要素
------------------------------------------------------------ */
    .han-wrap ul li figure {
        margin: 5px 15px;
    }
}

@media(min-width:769px) {}

@media(max-width:768px) {

    /*【各ページ・複数ページ 共通】*/
    /* メインコンテンツ内ヘッダ・h要素
------------------------------------------------------------ */
    /*メインコンテンツ - メインカラム - エントリーヘッダ - エントリータイトル：header h1.entry-title */
    main.content header h1.entry-title {
        font-size: 1.5em;
    }

    /* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
    main.content .entry-content .child-page-list>ul::before,
    main.content .entry-content .child-page-list>ul::after {
        display: none;
    }

    main.content .entry-content .child-page-list>ul>li {
        width: 48%;
    }

    /* 固定・子ページを持つ最上の親以外のページ内 孫ページ以下ページリスト
------------------------------------------------------------ */
    .sub-child-page-list {}

    .sub-child-page-list>ul:has(li) {
        margin: 2rem auto;
        padding: .5rem;
        width: 96%;
    }

    .sub-child-page-list>ul {
        margin: 0;
        padding: 0;
    }

    .sub-child-page-list>ul::before,
    .sub-child-page-list>ul::after {
        display: none;
    }

    .sub-child-page-list>ul>li {
        margin: 0 0 .5rem !important;
        width: 100%;
    }

    .sub-child-page-list>ul>li:last-child {
        margin: 0 !important;
    }

    /* ブロック要素
div class="article-body article-sub" .article-sbody , .article-sub
---------------------------------------------------- */
    .content .article-body {
        margin: 0 auto 25px auto;
    }

    .content .article-body .article-sub {
        margin: 0 auto 12.5px auto;
    }

    /*【ページ個別】*/
    /* 診療科・部署ページ（page-section.php）
------------------------------------------------------------ */
    /*診療科一覧リスト 暫定 */
    #section-list li,
    #section-list li:last-child {
        width: 48%;
    }

    /* 病院指標ページ（page-hpdata.php）
body.hpdata , body.hpdata-child
------------------------------------------------------------ */
    body.hpdata main.content,
    body.hpdata-child main.content {
        overflow-x: scroll;
    }

    /* サイトマップページ body.sitemap , ul.wsp-pages-list
------------------------------------------------------------ */
    body.sitemap main.content .entry-content .wsp-pages-list>li>ul>li {
        width: 100%;
    }

    /* お問い合わせフォーム body.inquiry , .wpcf7
------------------------------------------------------------ */
    .wpcf7 form {
        margin: 0;
        width: 100%;
    }

    /* サンプル・確認ページ（page-sample.php）
body.sample（サンプルページ）
------------------------------------------------------------ */
    /* #today --- */
    body.sample #today {
        margin: 50px 0;
    }

    /*リンク集*/
    ul.facility-link-collect {
        display: -webkit-block;
        display: block;
    }

    ul.facility-link-collect li {
        width: 100%;
    }
}

@media(max-width:767px) {}

@media(max-width:576px) {

    /*【各ページ・複数ページ 共通】*/
    main.content nav.local-menu ul li a:link,
    main.content nav.local-menu ul li a:visited,
    main.content nav.local-menu ul li a:active {
        font-size: 14px;
    }

    /* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
    main.content .entry-content .child-page-list>ul>li {
        padding: .25rem;
        width: 100%;
        margin-bottom: 0.6rem;
    }

    main.content .entry-content .child-page-list>ul>li:last-child {
        margin: 0;
    }

    main.content .entry-content .child-page-list>ul>li figure {
        align-items: center;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
    }

    main.content .entry-content .child-page-list>ul>li figure p.thumbnail {
        height: 60px;
        width: 20%;
        border-radius: 6px;
    }

    main.content .entry-content .child-page-list>ul>li figure p img {
        height: 60px;
        border-radius: 6px;
    }

    main.content .entry-content .child-page-list>ul>li figure figcaption {
        width: 80%;
    }

    main.content .entry-content .child-page-list>ul>li figure figcaption a {
        padding: .5rem;
    }

    main.content .entry-content .child-page-list>ul>li figure figcaption a,
    main.content .entry-content .child-page-list>ul>li figure figcaption span.no-link {
        font-size: 16px;
    }

    /*【ページ個別】*/
    /* 診療科・部署ページ（page-section.php）
------------------------------------------------------------ */
    /* 診療科・部署ページ（page-section.php）
------------------------------------------------------------ */
    /*診療科一覧リスト 暫定 */
    #section-list li,
    #section-list li:last-child {
        text-align: left;
        width: 100%;
    }

    /*外来診療担当医表リンクエリア*/
    .schedule-link p a.btn {
        flex-wrap: wrap;
    }

    .schedule-link p a.btn::before {
        display: block;
        width: 100%;
    }

    /*医師ボックスエリア*/
    .doctor_box-wrap .doctor_box .doctor-prof {
        align-items: center;
        flex-direction: column;
    }

    .doctor_box-wrap .doctor_box .doctor-prof .photo {
        margin: 0 auto;
    }

    .doctor_box-wrap .doctor_box .doctor-prof .name-post {
        width: 100%;
    }

    .doctor_box h4.name {
        flex-wrap: wrap;
    }

    .doctor_box h4.name span {
        display: block;
        width: 100%;
    }

    /*staff 先輩メッセージトップサムネイルレイアウト(S)
------------------------------------------------------------ */
    body.post-type-archive-staff main.content .article-lists {
        display: block;
    }

    body.post-type-archive-staff main.content .article-lists article {
        width: 100%;
    }

    body.post-type-archive-staff main.content article p.cat-thum {
        height: 200px;
    }


    /*staff 先輩メッセージトップサムネイルレイアウト(E)*/

    /* 病院指標ページ（page-hpdata.php）
body.hpdata , body.hpdata-child
------------------------------------------------------------ */
    /*プリズム配布テンプレート対応スタイル*/
    /*table*/
    .content table.template-table th,
    .content table.template-table td {
        display: table-cell;
        width: auto !important;
    }

    .content table.template-table th {
        border: 1px solid #ddd;
    }

    /* お問い合わせフォーム body.inquiry .wpcf7
------------------------------------------------------------ */
    main.content .entry-content .wpcf7 form .mailform .form_list dl dt,
    main.content .entry-content .wpcf7 form .mailform .form_list dl dd {
        width: 100%;
    }

    main.content .entry-content .wpcf7 form .mailform .form_list dl dt {
        text-align: left;
    }

    /*フォーム入力項目群 - 各項目毎設定*/
    main.content .entry-content .wpcf7 form .mailform .form_list dl.subject input[type="text"],
    main.content .entry-content .wpcf7 form .mailform .form_list dl.affiliation input[type="text"],
    main.content .entry-content .wpcf7 form .mailform .form_list dl.address-addr input[type="text"] {
        max-width: 80%
    }

    main.content .entry-content .wpcf7 form .mailform .form_list dl.name input[type="text"],
    main.content .entry-content .wpcf7 form .mailform .form_list dl.address-city input[type="text"],
    main.content .entry-content .wpcf7 form .mailform .form_list dl.tel input[type="tel"],
    main.content .entry-content .wpcf7 form .mailform .form_list dl.mail input[type="email"] {
        max-width: 60%;
    }

    main.content .entry-content .wpcf7 form .mailform .form_list dl.address-zip input[type="tel"],
    main.content .entry-content .wpcf7 form .mailform .form_list dl.address-pref input[type="text"] {
        max-width: 30%;
    }

    main.content .entry-content .wpcf7 form .mailform .form_list dl.age input[type="text"] {
        max-width: 15%;
    }

    /*フォーム入力項目群 - 個別設定 - 生年月日*/
    main.content .entry-content .wpcf7 form .mailform .form_list dl.birth input[type="number"] {
        max-width: 25%;
    }

    .form_list p {
        margin: 5px 0em 0px !important;
    }

    main.content .entry-content .wpcf7 form .mailform .form_list dl {
        margin-bottom: 15px;
    }

    main.content .entry-content .wpcf7 form .mailform .form_list dl dt {
        padding: 0px !important;
        margin: 0 0 0em !important;
    }

    body.blog main.content article header h2 a,
    body.archive main.content article header h2 a,
    body.recruit_info main.content .entry-list#recruit article.post h3.entry-title a,
    body.post-type-archive-blogs main.content article header h2 a {
        font-size: 0.95rem;
    }

    .link-box dl dt {
        font-size: 0.95rem;
        font-weight: normal !important;
    }

    .link-box dl dd {
        font-size: 0.85rem;
        font-weight: normal;
    }

    /* サンプル・確認ページ（page-sample.php）
body.sample（サンプルページ）
------------------------------------------------------------ */
    /* #today --- */
    body.sample #today .section-wrap header h2 {
        font-size: 1.14rem;
    }

    body.sample #today .section-wrap header::after {
        height: 40px;
        width: 40px;
    }

    /*診療受付*/
    body.sample .time-table .panel h3 span {
        display: block;
        margin: 0 0 .5rem 0;
    }

    body.sample .time-table .panel ul li {
        width: 100%;
    }

    /*リンク集*/
    ul.facility-link-collect li {
        width: 100%;
        margin-bottom: 15px;
        border-radius: 15px;
    }

    ul.facility-link-collect li a {
        font-size: 0.95rem;
    }

    ul.facility-link-collect li img {
        width: 25%;
        border-radius: 15px 0px 0px 15px
    }
}

@media(max-width:350px) {

    /*【各ページ・複数ページ 共通】*/
    /* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
    main.content .entry-content .child-page-list>ul>li figure p.thumbnail {
        width: 60px;
    }

    main.content .entry-content .child-page-list>ul>li figure figcaption {
        width: calc(100% - 60px);
    }
}