@charset "utf-8";
/* generic-hild-tokyoheart Style main.content ONLY
    メインカラムのコンテンツブロック内にのみ適用される汎用スタイル
    各ページ共通と、ページ個別の指定があります
        【各ページ・複数ページ 共通】
　　　　・メインコンテンツ内ヘッダ・h要素・画像キャプション
　　　　・固定・最上親ページ内子ページリストレイアウト
        ・固定・子ページを持つ最上の親以外のページ内 孫ページ以下ページリスト
        ・ブロック要素（.article-body , .article-sub）
        【ページ個別】
        ・病院指標ページ
        ・診療科・部門案内ページ
        ・外来診療担当医表ページ
        ・講演テーマ一覧ページ
        ・採用情報ページ
        ・サイトマップページ
        ・お問い合わせページ
        ・メインコンテンツ - INDEX・アーカイブページ（お知らせ・ブログ）ページナビ
        ・お知らせページ（投稿）
        ・検索結果ページ（search.php）
        【メディアクエリ】
*/
/*
    font-family: 'Noto Sans JP', sans-serif;
    font-family: 'Noto Serif JP', serif;
    font-family: "Poppins", sans-serif;
*/
/*
ネイビー：Primary - #19448e
rgba(25, 68, 142, 1);

赤：Accent - #d70035
rgba(215, 0, 53, 1);

水色：Secondary - #2ca9e1
rgba(44, 169, 225, 1);

グリーン：Sub Accent - #5dcecb
rgba(93, 206, 203, 1);
*/
/*【各ページ・複数ページ 共通】*/
/* メインコンテンツ内ヘッダ・h要素
------------------------------------------------------------ */
/*メインコンテンツ - メインカラム - エントリーヘッダ：entry.php - header */
main.content header {}

/*メインコンテンツ - メインカラム - エントリーヘッダ - エントリータイトル：header h1.entry-title */
main.content header h1.entry-title {
    border-bottom: rgba(25, 68, 142, 1) double 3px;
    border-top: rgba(25, 68, 142, 1) double 3px;
    color: rgba(25, 68, 142, 1);
    font-size: 2.25em;
    font-weight: normal;
    line-height: initial;
    margin: 0 0 1em;
    padding: .25em 0;
    position: relative;
}

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: rgba(93, 206, 203, .25);
    border-radius: .5rem;
    color: #333;
    margin: 0 auto 30px auto;
    padding: 1rem 1rem 0 1rem;
    width: 100%;
}
main.content nav.local-menu ul {
    list-style: none;
    margin: 0 auto;
}
main.content nav.local-menu ul li {
    border-right: 1px solid #999;
    display: inline-block;
    font-size: .875rem;
    margin: 0 0 1rem 0;
    padding: 0 .5rem;
}
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: #333;
    display: block;
    text-decoration: underline;
}

/* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
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::after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}
main.content .entry-content .child-page-list>ul>li {
    background-color: #fff;
    border: #ddd solid 1px;
    border-radius: .25rem;
    list-style: none;
    position: relative;
    transition: .3s;
    width: 32%;
}
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;
    height: 160px;
    margin: 0;
    padding: 0;
    width: 100%;
}
main.content .entry-content .child-page-list>ul>li figure p img {
    height: 160px;
    margin: 0;
    object-fit: cover;
    width: 100%;
}
main.content .entry-content .child-page-list>ul>li figure figcaption a {
    display: block;
    padding: 1.5rem 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);
}

/*診療科・部門（section）のみアイキャッチ画像非表示*/
body.section main.content .entry-content .child-page-list>ul>li figure p.thumbnail {
    display: none;
}

/* 固定・子ページを持つ最上の親以外のページ内 孫ページ以下ページリスト
------------------------------------------------------------ */
.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>li {
    background-color: #fff;
    border-radius: .25rem;
    list-style: none;
    position: relative;
    transition: .3s;
    width: 48%;
}

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

.sub-child-page-list>ul>li>a {
    background-color: rgba(44, 169, 225, 0);
    border: #ddd solid 1px;
    border-radius: .25rem;
    color: rgba(44, 169, 225,1);
    display: block;
    padding: 1rem;
    text-decoration: none;
    transition: .3s;
}
.sub-child-page-list>ul>li>a:hover {
    background-color: rgba(44, 169, 225, .25);
    border: rgba(44, 169, 225, 1) solid 1px;
    display: block;
    padding: 1rem;
    text-decoration: none;
}
.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%;
    font-family: 'Noto Sans JP', sans-serif;
}

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

/*【ページ個別】*/
/* 病院指標ページ（page-hpdata.php）
body.hpdata , body.hpdata-child
------------------------------------------------------------ */
/*病院情報の公表 - 子ページリスト*/
body.hpdata .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;
}

body.hpdata .sub-child-page-list>ul>li {
    width: 100%;
}

/*病院情報の公表 - 詳細ページ*/
/*プリズム配布テンプレート対応スタイル*/
/*外部サイトリンク*/
body.page-template-page-hpdata .out_link {
    text-align: right;
}

/*見出し*/
body.page-template-page-hpdata .div-title,
body.page-template-page-hpdata .div-title-hist,
body.page-template-page-hpdata .div-title-shitsu {
    background-color: rgba(34, 58, 112, 1);
    ;
    color: #fff;
    display: flex;
    flex-wrap: nowrap;
    font-size: 1.14em;
    justify-content: space-between;
    padding: 0.5rem;
}

/*csvダウンロードリンク*/
body.page-template-page-hpdata 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;
}

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

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

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

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

body.page-template-page-hpdata .number-cell {
    text-align: right;
    width: 75px;
}

/*コメント*/
body.page-template-page-hpdata .comment,
body.page-template-page-hpdata .comment-shitsu {
    background-color: rgba(234, 237, 247, 1);
    margin: 1rem 0;
    padding: .5rem;
}

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

/*更新履歴*/
body.page-template-page-hpdata .div-title-hist {
    background-color: rgba(34, 58, 112, 1);
    ;
    margin: 0 0 1rem;
}

body.page-template-page-hpdata .hist_list {
    display: flex;
    flex-wrap: wrap;
    padding: 1rem 0;
}

body.page-template-page-hpdata .hist_list dt {
    width: 130px;
}

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

body.page-template-page-hpdata div[id^="cd_top3_nm_"],
body.page-template-page-hpdata div[id^="ope_top3_nm_"],
body.page-template-page-hpdata div[id^="cd_top5_nm_"],
body.page-template-page-hpdata div[id^="ope_top5_nm_"] {
    padding: 5px;
}

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

/* 診療科・部門案内ページ
body.post-type-archive-section （診療科・部門案内：INDEXページ）
body.tax-section-category （診療科・部門案内：カテゴリ一覧ページ）
body.single-section （診療科・部門案内：投稿ページ）
------------------------------------------------------------ */
/*診療科・部門案内：INDEXページ*/
body.post-type-archive-section {}

body.post-type-archive-section main.content > p {
    margin: 1rem 0;
}
body.post-type-archive-section main.content .sections {
    margin: 0 0 2rem;
}

/*診療科・部門案内：投稿ページ*/
/*医師情報*/
.doctor_box-wrap {
    margin: 2rem 0;
}
.doctor_box-wrap .doctor_box {
    border-bottom: #eee solid 1px;
    border-left: #eee solid 1px;
    margin: 0 0 1.5rem;
    padding: 0 0 1.5rem 1rem;
    position: relative;
}
.doctor_box-wrap .doctor_box::before {
    border: rgba(93, 206, 203, 1) solid 10px;
    border-top-color: transparent;
    border-right-color: transparent;
    border-left-color: transparent;
    content: "";
    display: block;
    position: absolute;
        right: -10px;
        top: -10px;
    transform: rotate(45deg);
    z-index: 1;
}
.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: 170px;
    object-fit: cover;
    width: 170px;
}
.doctor_box-wrap .doctor_box .doctor-prof .name-post {
    flex: 1;
}
.doctor_box h4.name {
    align-items: center;
    border-bottom: 1px solid #eee;
    border-top: none !important;
    display: flex;
    font-size: 1.24rem;
    justify-content: flex-start;
    padding: .5rem 0 !important;
    position: relative;
}
.doctor_box h4.name::before {
    display: none;
}
.doctor_box h4.name span {
    color: #999;
    font-size: .875rem;
    font-weight: normal;
    padding: 0 1rem;
}
.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;
}
.doctor_box h5 {
    color: rgba(93, 206, 203, 1) !important;
}
.doctor_box h5::before {
    background-color: rgba(93, 206, 203, 1) !important;
}

/*診療科・部門サイドナビ（ページリスト）*/
/*ウィジェットリスト*/
aside#sidebar .widget-container nav ul {
    margin: 0;
    padding: 0;
}
aside#sidebar .widget-container nav ul > li {
    border-bottom: #ddd solid 1px;
    list-style: none;
    line-height: normal;
    margin: 0;
}
aside#sidebar .widget-container nav ul > li a {
    align-items: center;
    background-color: #fff;
    color: #333;
    display: flex;
    padding: 1rem 0;
    text-decoration: none;
}
aside#sidebar .widget-container nav ul > li a:hover {
    background-color: #F7F7F7;
    color: #666;
}
aside#sidebar .widget-container nav ul > li a::before {
    content: "\e5cc";
    font-family: 'Material Icons';
    padding: 0 .5rem 0 0;
}
/*第二階層*/
aside#sidebar .widget-container nav ul > li > ul {
    border-top: #ddd dotted 1px;
}
aside#sidebar .widget-container nav ul > li > ul > li {
    border-bottom: #ddd dotted 1px;
}
aside#sidebar .widget-container nav ul > li > ul > li:last-child {
    border-bottom: none;
}
aside#sidebar .widget-container nav ul > li > ul > li a {
    padding: .75rem 0 .75rem 1rem;
}
aside#sidebar .widget-container nav ul > li > ul > li a::before {
    content: "\eac9";
    font-family: 'Material Icons';
    padding: 0 .5rem 0 0;
}
/*第三階層*/
aside#sidebar .widget-container nav ul > li > ul > li > ul {
    border-top: #ddd dotted 1px;
}
aside#sidebar .widget-container nav ul > li > ul > li > ul > li {
    border-bottom: #ddd dotted 1px;
}
aside#sidebar .widget-container nav ul > li > ul > li > ul > li:last-child {
    border-bottom: none;
}
aside#sidebar .widget-container nav ul > li > ul > li > ul > li a {
    padding: .75rem 0 .75rem 2rem;
}
aside#sidebar .widget-container nav ul > li > ul > li > ul > li a::before {
    content: "-";
    padding: 0 .5rem 0 0;
}
/*該当ページ滞在時*/
aside#sidebar .widget-container nav ul li.current >a,
aside#sidebar .widget-container nav ul li.current_page_item >a,
aside#sidebar .widget-container nav ul li >a[aria-current] {
    background-color: #f7f7f7;
    color: #666;
}

/* 外来診療担当医表ページ
body.schedule.visit-child（page_schedule.php）
------------------------------------------------------------ */
/*PDFファイルダウンロード*/
body.schedule.visit-child main.content .schedule_pdf {
	border: rgba(25, 68, 142, 1) solid 2px;
    border-radius: 3px;
    text-align: center;
    padding: 0;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 30px;
    max-width: 300px;
}
body.schedule.visit-child main.content .schedule_pdf p{
	margin: 0;
}
body.schedule.visit-child main.content .schedule_pdf p a {
	background-color: rgba(25, 68, 142, 00);
    color: rgba(25, 68, 142, 1);
    display: block;
    padding: 1em;
    text-decoration: none;
    width: 100%;
    height: 100%;
}
body.schedule.visit-child main.content .schedule_pdf p a i {
    padding-right: 0.5em;
}
body.schedule.visit-child main.content .schedule_pdf p a:hover {
	background-color: rgba(25, 68, 142, .15);
    color: rgba(25, 68, 142, 1);
    opacity: 1.0;
}
body.schedule.visit-child main.content .schedule_pdf p a::before {
    display: none;
}
/*外来表table*/
body.schedule.visit-child main.content .visit-schedule table thead tr th:nth-last-child(-n+6) {
    width: 15%;
}

/*
body.schedule.visit-child main.content .visit-schedule table tbody tr td {
    font-size: 14px;
    font-weight: bold;
    vertical-align: text-top;
}
body.schedule.visit-child main.content .visit-schedule table tbody tr td span{
    color: #666;
    display: block;
    font-size: 12px;
    font-weight: normal;
    padding: .25rem 0 .5rem;
}*/

/* CMS用に修正（20250925） */
body.schedule.visit-child main.content .visit-schedule table tbody tr td {
    font-size: 12px;
    /* font-weight: bold; */
    vertical-align: text-top;
    color: #666;
}
body.schedule.visit-child main.content .visit-schedule table tbody tr td span{
    color: #000;
    display: block;
    font-size: 14px;
    font-weight: normal;
    padding: .25rem 0 .5rem;
}


/* 採用情報ページ
body.post-type-archive-recruit （採用情報：INDEXページ）
body.tax-recruit-category （採用情報：カテゴリ一覧ページ）
body.single-recruit （採用情報：投稿ページ）
------------------------------------------------------------ */
/*採用情報：INDEXページ*/
body.post-type-archive-recruit {}
/*採用お問い合わせ注記*/
body.post-type-archive-recruit main.content .entry-content .recruit-note{
    border: rgba(44, 169, 225, .5) double 3px;
    margin: 2rem;
    padding: 0 1rem;
}
body.post-type-archive-recruit main.content .entry-content .recruit-note > ul {
    margin: 1.5em 0;
}
body.post-type-archive-recruit main.content .entry-content .recruit-note > ul li {
    list-style: none;
    padding: 0 0 0 1rem;
}
/*カテゴリ一覧表示の際のサムネイル*/
body.post-type-archive-recruit main.content .entry-content .child-page-list>ul>li.recruit_doctor figure p.thumbnail {
    background: url("../images/common/recruit/img_doctor.png") no-repeat center center;
    background-size: cover;
}
body.post-type-archive-recruit main.content .entry-content .child-page-list>ul>li.recruit_nurse figure p.thumbnail {
    background: url("../images/common/recruit/img_nurse.png") no-repeat center center;
    background-size: cover;
}
body.post-type-archive-recruit main.content .entry-content .child-page-list>ul>li.recruit_comedical figure p.thumbnail {
    background: url("../images/common/recruit/img_comedical.png") no-repeat center center;
    background-size: cover;
}
body.post-type-archive-recruit main.content .entry-content .child-page-list>ul>li.recruit_office figure p.thumbnail {
    background: url("../images/common/recruit/img_office.png") no-repeat center center;
    background-size: cover;
}
body.post-type-archive-recruit main.content .entry-content .child-page-list>ul>li.recruit_nursing_home figure p.thumbnail {
    background: url("../images/common/recruit/img_nursing_home.png") no-repeat center center;
    background-size: cover;
}
body.post-type-archive-recruit main.content .entry-content .child-page-list>ul>li.recruit_introduce figure p.thumbnail {
    background: url("../images/common/recruit/img_movie.png") no-repeat center center;
    background-size: cover;
}
body.post-type-archive-recruit main.content .entry-content .child-page-list>ul>li.recruit_other figure p.thumbnail {
    background: url("../images/common/recruit/img_other.png") no-repeat center center;
    background-size: cover;
}

/* 統一書式テンプレート */
.recruit div.resume-box {
    border-color:#ddd;
    font-size: clamp(0.875rem, 0.852rem + 0.11vw, 0.938rem)
}
.recruit div.resume-box a {
    color:#0072BB;
}
.recruit div.resume-box p {
    margin-bottom: 0.2em;
}

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

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

/* サイトマップページ body.sitemap , ul#sitemap_list
------------------------------------------------------------ */
body.sitemap main.content .entry-content .wsp-container {
    margin: 0 0 2rem;
}

/*h2見出し*/
body.sitemap main.content .entry-content .wsp-container h2 {
    border-bottom: 5px solid #eee;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.5em;
    padding: .5rem 0;
    position: relative;
}

body.sitemap main.content .entry-content .wsp-container h2::before {
    background-color: rgba(34, 58, 112, 1);
    ;
    content: '';
    height: 5px;
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 25%;
}

/*固定ページリスト*/
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: "-";
}

/*カスタム投稿タイプ表示  .wsp-xxx-list */
/*診療科・部門案内リスト*/
body.sitemap main.content .entry-content .wsp-sections-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
    padding: .5rem 0 0 1rem;
}

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

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

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

/*採用情報リスト*/
body.sitemap main.content .entry-content .wsp-recruits-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
    padding: .5rem 0 0 1rem;
}

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

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

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

/*カスタム投稿タイプカテゴリ表示  .wsp-xxx-categorys-list */
/*診療科・部門案内カテゴリ*/
body.sitemap main.content .entry-content .wsp-section-categorys-list {
    border: rgba(145, 114, 16, .50) double 3px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0;
    padding: .5rem;
}

body.sitemap main.content .entry-content .wsp-section-categorys-list>li {
    font-weight: normal;
    list-style: none;
    margin: .5rem;
    padding: 0;
    width: auto;
}

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

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

/*採用情報カテゴリ*/
body.sitemap main.content .entry-content .wsp-recruit-categorys-list {
    border: rgba(145, 114, 16, .50) double 3px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0;
    padding: .5rem;
}

body.sitemap main.content .entry-content .wsp-recruit-categorys-list>li {
    font-weight: normal;
    list-style: none;
    margin: .5rem;
    padding: 0;
    width: auto;
}

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

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


/* お問い合わせページ body.inquiry , .wpcf7
    メールフォーム共通 .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 {
    margin: 0;
    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 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,
main.content .entry-content .wpcf7 form .mailform .form_list dl dd > ul li p {
    font-size: .875rem;
    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 span:has( select)::after{
    color: #eee;
    content: "\f078";
    display: block;
    font-family: FontAwesome;
    position: absolute;
    top: calc(50% - .5em);
    right: .5em;
    z-index: 2;
}
main.content .entry-content .wpcf7 form .mailform .form_list .wpcf7-form-control-wrap:has( .wpcf7-radio ){
    align-items: center;
    display: flex;
    height: 100%;
}
/*出張医療講演のお申込 ： 希望日時*/
main.content .entry-content .wpcf7 form .mailform .form_list .hope-date .hope-first-date ,
main.content .entry-content .wpcf7 form .mailform .form_list .hope-date .hope-second-date{
    align-items: center;
    display: flex;
    flex-wrap: wrap;
}
main.content .entry-content .wpcf7 form .mailform .form_list .hope-date .hope-first-date > p,
main.content .entry-content .wpcf7 form .mailform .form_list .hope-date .hope-second-date > p {
    width: 100%;
}
main.content .entry-content .wpcf7 form .mailform .form_list .hope-date .hope-first-date span ,
main.content .entry-content .wpcf7 form .mailform .form_list .hope-date .hope-second-date span{
    margin: 0 .25rem;
}

/*フォーム入力項目群 - 各項目毎設定*/
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"] ,
main.content .entry-content .wpcf7 form .mailform .form_list dl.audience input[type="text"] ,
main.content .entry-content .wpcf7 form .mailform .form_list dl.gender 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: #6e7955;
    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.blog main.content article,
body.archive main.content article {
    background-color: #fff;
    border-bottom: #ddd dotted 1px;
    margin: 0;
    padding: 1rem;
    position: relative;
    transition: .3s;
}

body.blog main.content article:hover,
body.archive main.content article:hover {
    background-color: #f7f7f7;
}

body.blog main.content article:first-of-type,
body.archive main.content article:first-of-type {
    border-top: #ddd dotted 1px;
}

body.blog main.content article::after,
body.archive 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 {
    display: flex;
    flex-direction: column-reverse;
    flex-wrap: wrap;
}

body.blog main.content article header h2,
body.archive 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 {
    text-decoration: none;
}

body.blog main.content article header h2 a::after,
body.archive 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 {
    margin: 0;
    padding: 0;
}

body.blog main.content article .entry-meta .entry-date,
body.archive main.content article .entry-meta .entry-date {
    padding: 0 .5em 0 0;
}

body.blog main.content article .entry-meta .category,
body.archive main.content article .category {
    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 {
    background-color: #fff;
    border: rgba(34, 58, 112, 1) solid 1px;
    color: rgba(34, 58, 112, 1);
}

body.blog main.content article .entry-meta .category.important,
body.archive main.content article .entry-meta .category.important {
    background-color: rgba(211, 56, 28, 1);
    border: rgba(211, 56, 28, 1) solid 1px;
    color: #fff;
}

body.blog main.content article .entry-meta .category.recruit,
body.archive main.content article .entry-meta .category.recruit {
    background-color: #fff;
    border: rgba(188, 100, 164, 1) solid 1px;
    color: rgba(188, 100, 164, 1);
}


/*投稿ページ */
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 {
    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 {
    border-radius: 5px;
    display: inline-block;
    padding: .25em 1rem;
    background-color: #fff;
    border: rgba(34, 58, 112, 1) solid 1px;
    /* color: rgba(34, 58, 112, 1); */
}

body.single main.content article .entry-footer .category a {
    color: rgba(34, 58, 112, 1);
}


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

body.single main.content article .entry-footer .category.important a {
    color: #fff;
}


/*投稿ページ カテゴリ お知らせ - 採用情報*/
body.single main.content article .entry-footer .category.recruit {
    background-color: #fff;
    border: rgba(188, 100, 164, 1) solid 1px;
    /* color: rgba(188, 100, 164, 1); */
}

body.single main.content article .entry-footer .category.recruit a {
    color: rgba(188, 100, 164, 1);
}


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;
}

/* 検索結果ページ（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);
}

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

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

@media(max-width:768px) {

    /*【各ページ・複数ページ 共通】*/
    /* メインコンテンツ内ヘッダ・h要素
------------------------------------------------------------ */
    /*メインコンテンツ - メインカラム - エントリーヘッダ - エントリータイトル：header h1.entry-title */
    main.content header h1.entry-title {
        font-size: 1.75em;
    }
    main.content nav.local-menu ul li {
        font-size: .75rem;
    }
    
    /* 固定・最上親ページ内子ページリストレイアウト
-------------------------------------------------------------------- */
    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;
    }

    /*【ページ個別】*/

    /* 外来診療担当医表ページ
body.schedule.visit-child（page_schedule.php）
------------------------------------------------------------ */

    body.schedule.visit-child aside#sidebar {
        display: block;
    }


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

    /*診療科・部門案内リスト*/
    body.sitemap main.content .entry-content .wsp-sections-list>li {
        width: 100%;
    }

    /*採用情報リスト*/
    body.sitemap main.content .entry-content .wsp-recruits-list>li {
        width: 100%;
    }

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

}

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

@media(max-width:576px) {

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

    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%;
    }

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

    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;
    }

    /*【ページ個別】*/
    /*【ページ個別】*/
    /* 診療科・部門案内ページ
body.post-type-archive-section （診療科・部門案内：INDEXページ）
body.tax-section-category （診療科・部門案内：カテゴリ一覧ページ）
body.single-section （診療科・部門案内：投稿ページ）
------------------------------------------------------------ */
    /*診療科・部門案内：投稿ページ*/
    /*医師情報*/
    .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;
        padding: 0;
        width: 100%;
    }


    /* お問い合わせページ body.inquiry .wpcf7
------------------------------------------------------------ */
    main.content .entry-content .wpcf7 form .mailform .form_list dl {
        margin: 0 auto .5em auto;
    }

    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 {
        margin: 0;
        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: 80%;
    }

    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%;
    }

}

@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);
    }
}
