/*
Theme Name: matsusaka_saiseikai
*/

/* googleのWEBフォントインポート */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Gothic&display=swap');


/* -----------------------------------
■共通設定
----------------------------------- */

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

html {
	/* 文字の大中小がある場合、bodyに設定したサイズが上書きされるため「html」に設定。 */
/*	font-size: 17px;	/* 基準値は17px相当 */
						/* 固定か可変か不明のため後で変更できるようにここ以外は全て相対（%等）指定 */
	font-size: 0.88541666666667vw;	/* 可変 */
	font-size: 1.0625vw;	/* 可変 */
	color:#000000;
	font-family: "Noto Sans JP", sans-serif;
}
@media screen and (min-width:1600px) {
	html {
		font-size:18px;
	}
}
body {
	font-size: 100%;
	margin: 0;
	padding: 0;
}

header, main, aside, footer, nav {
    display: block;
	margin: 0;
    padding: 0;
}


/* ◆ヘッダ固定セット◆ */

#headerBottom.fixed{
	position: fixed;/*fixedを設定して固定*/
	z-index: 999;/*最前面へ*/
	top:-0.5em;/*位置指定*/
	left:0;/*位置指定*/
}

html{
    scroll-behavior: smooth;	/* ※ページスクロールのスクリプトを削除する */
}

@media only screen and (min-width:751px) { /* for PC */
  html {
    scroll-padding-top: 70px;
  }
}
@media only screen and (max-width:750px) { /* for SP */
  html {
    scroll-padding-top: 20px;
  }
}

a:link, a:visited {
	color: #0000EE;
	text-decoration: underline;
}
a:hover, a:active, a:focus {
	color: #EE0000;
	text-decoration: underline;
}

a {
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.5s ease-out;  /* FF4+ */
	-ms-transition: all 0.5s ease-out;  /* IE10? */
	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
	transition: all 0.5s ease-out;
}

a img{
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.5s ease-out;  /* FF4+ */
	-ms-transition: all 0.5s ease-out;  /* IE10? */
	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
	transition: all 0.5s ease-out;
}
a:hover img{
	opacity: 0.5;
}

p {
	line-height: 1.75em;
}

/* -----------------------------------
■リスト
----------------------------------- */

main ul,main ol{
	margin: 1em;
	padding-left: 1em;
}
main ul li,main ol li{
	line-height: 1.5em;
	margin-bottom: 0.5em;
}

main ol{
	margin-left:0;
}
main ol li{
	margin-left: 0.5em;
	padding-left:0;
}

main ul li ul,main ol li ol{
	margin-top: 1em;
}
main ul li ul li ul,main ol li ol li ol{
	margin-top: 1em;
}

main ul li ul{
	list-style: disc;
}

/* -----------------------------------
■カスタムテーマwp独自スタイルの補足
----------------------------------- */

.alignnone {
    margin: 5px 0 0 0;
}
 
.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}
 
.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}
 
.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
 
.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}
 
a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}
 
a img.alignnone {
    margin: 5px 0 0 0;
}
 
a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
 
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
 
.wp-caption {
    background: #eee;
    border: 1px solid #ddd;
    max-width: 96%;
    padding: 10px;
}
 
.wp-caption.alignnone {
    margin: 5px 0 0 0;
}
 
.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}
 
.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}
 
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
 
.wp-caption p.wp-caption-text {
    margin: 0;
    padding: 5px 0;
}

/* ◆次へ・前へ◆ */

.naviLinkArea, .naviLinkArea2 {
	margin-top:100px;
	text-align:center;
}

.naviLinkArea a, .naviLinkArea2 a {
	position: relative;
	display: inline-block;
	width: auto;
	margin: 0 0.8em 1em 0.8em;
	padding: 0.5em 1em 0.5em 1em;
	background: #2c73db !important;
	border: solid 1px #2c73db;
	color: #FFF !important;
	text-decoration: none !important;
	border-radius: 1.5em;
}

.naviLinkArea a:after, .naviLinkArea2 a:after {
	content: '';
	width: 0.6em;
	height: 0.6em;
	border: 0px;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 0.3em);
	right: 1em;
}

.naviLinkArea  span.butNextPost a, .naviLinkArea2 span.butNextPost a {
	padding: 0.5em 2em 0.5em 1em;
}
.naviLinkArea  span.butNextPost a:after, .naviLinkArea2 span.butNextPost a:after {
	right: 1em;
}
.naviLinkArea  span.butPreviousPost a, .naviLinkArea2 span.butPreviousPost a {
	padding: 0.5em 1em 0.5em 2em;
}
.naviLinkArea  span.butPreviousPost a:after, .naviLinkArea2 span.butPreviousPost a:after {
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	left: 1em;
}

.naviLinkArea a:hover, .naviLinkArea2 a:hover {
	color: #2c73db !important;
	background: #FFF !important;
	text-decoration: none;
}
.naviLinkArea a:hover:after, .naviLinkArea2 a:hover:after {
	border-top: solid 2px #2c73db;
	border-right: solid 2px #2c73db;
}

/* 両端の場合 */
.naviLinkArea2 {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}
.naviLink2 a {
	margin: 0 0.5em 1em;
}
 .naviLinkArea2 a {
	margin: 0 0.5em 1em;
}

/* ◆ページネーション◆ */
.pagination {
display: flex;
align-items: center;
justify-content: center;
margin: 40px 0;
position: relative;
font-size: 76.47058823529412%;	/* 13px */
}

.pagination span, .pagination a {
display: block;
width: auto;
margin: 0.235em;	/* 4px */
padding: 0.47em;	/* 8px */
border: 1px solid #2c73db;
background-color: #fff;
text-decoration: none;
text-align: center;
line-height: 1.23em;	/* 16px */
}

/* ページ番号 */
.pagination .pager{
width: 1.88em; /* 32px */
}

/* 文字色など */
.pagination > a:link, .pagination > a:visited {
	color: #2c73db!important;
}

/* ホバー時 & 現在のページ */
.pagination a:hover,
.pagination .current {
color: #fff!important;
border-color: #2c73db;
background-color: #2c73db;
}

/* 前へ */
.pagination a.prev {
margin-right: 1.23em;	/* 16px */
}
/* 次へ */
.pagination a.next {
margin-left: 1.23em;	/* 16px */
}
/* 最初へ */
.pagination a.first {}
/* 最後へ */
.pagination a.last {}

/* Page x / y */
.pagination span.page_num {
display: none;
}

/* -----------------------------------
■Contactform7
----------------------------------- */

/* ◆基本◆ */

.cf-area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 2em 0;
	border-bottom: 1px solid #CCCCCC;
	transition: all .3s;
}

.cf-area:last-child {
	border-bottom: none;
}

.cf-area dt {
	width: 10em;
	margin: 0;
	padding: 0;
	padding-right: 1em;
	text-align: right;
	line-height: 1.5;
}

.cf-area dd {
	flex: 1;
	line-height: 1.5;
	margin: 0;
	padding: 0;
}

.cf-area dd p:first-child {
	margin-top: 1.3em;
}

.cf-area input, .cf-area textarea {
	width: 100%;
	margin: 0;
	padding: 0.8em;
	border: none;
	border: 1px solid #666666;
	background-color: #EEEEEE;
	font-size: 1em;
	resize: vertical;
	transition: all .3s;
}

.cf-area input:focus,.cf-area textarea:focus {
	outline: none;
	background: #dde2e9;
}

.cf-required {
	background: #b91e23;
	color: #fff;
	font-size: 0.8em;
	padding: 0 0.4em 0.1em 0.4em;
	border-radius: 0.1em;
}

/* ◆送信ボタン◆ */

.cf-send input {
	display: block;
	background: #2c73db;
	width: 15em;
	height: 3em;
	margin: 1.5em auto 0;
	border: none;
	border-radius: 0.5em;
	color: #fff;
	box-shadow: 2px 5px 15px 0 rgba(0, 0, 0, .2);
	font-size: 1.3em;
	font-weight: bold;
	transition: all .3s;
}

.cf-send input:hover {
	filter: brightness(1.25);
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	background-color: #fce3e3;
	border: none;
	text-align: center;
}

/* ◆セレクト◆ */

.wpcf7 .select {
	width: 20em;
	height: 3.2em;
}
.wpcf7 .select .wpcf7-form-control {
	width: 100%;
	height: 100%;
	padding: 10px 20px;
	box-sizing: border-box;
}
.wpcf7 .select {
	position: relative;
}
.wpcf7 .select::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.8em 0.48em 0 0.48em;
	border-color: #000 transparent transparent transparent;
	position: absolute;
	top: 50%;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 20px;
	pointer-events: none;
}
.wpcf7 .select .wpcf7-form-control {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance: none;
}

/* ◆チェックボックス◆ */

.wpcf7-list-item {
	display: block;
	line-height: 1.2;
}

.wpcf7-list-item + .wpcf7-list-item {

}
input[type="checkbox"] {
	display: none;
}
.wpcf7-list-item-label {
	position: relative;
	height: 1em;
	line-height: 1em;
	padding-left: 1.25em;
	display: inline-block;
}
.wpcf7-list-item-label::before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	border: 0.1em solid;
	background: #fff;
	position: absolute;
	left: 0;
	top: 0;
	box-sizing: border-box;
}
input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
	content: "";
	display: block;
	width: 0.6em;
	height: 0.333em;
	border-top: 0.15em solid #b91e23;
	border-right: 0.15em solid #b91e23;
	position: absolute;
	left: 0.2em;
	top: 45%;
	-webkit-transform : translateY(-50%) rotate(135deg);
	transform : translateY(-50%) rotate(135deg);
}


@media screen and (max-width:768px){
	.cf-area {
		display: block;
	}

	.cf-area dt {
		width: 100%;
		margin-bottom: 0.4em;
		padding-right: 0;
		text-align: left;
		line-height: 1.5;
	}
}

/* -----------------------------------
■クリップボード専用
----------------------------------- */

/* ◆画像◆ */

.imageArea{
	width: 100%;
	display: block;
	text-align: center;
}
.imageArea img{
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto 1em auto;
}

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

/* ◆汎用Flex◆ */

.flexAreaA{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 0 auto;
	padding: 0;
	list-style: none;
}
.flexAreaA > *{
	width: 65%;
	margin: 0;
	padding: 0;
	order: 1;
}
.flexAreaA > *:nth-child(odd){
	width: 32%;
	order: 2;
}

.flexAreaB{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 0 auto;
	list-style: none;
}
.flexAreaB > *{
	width: 65%;
	margin: 0;
	padding: 0;
	order: 2;
}
.flexAreaB > *:nth-child(odd){
	width: 32%;
	order: 1;
}

.flex2Area, .flex3Area, .flex4Area, .flex6Area{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 2em;
	margin: 0 auto 0 auto;
}
ul.flex2Area, ul.flex3Area, ul.flex4Area, ul.flex6Area{
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: left;
}
.flex2Area > div > img, .flex3Area > div > img, .flex4Area > div > img, .flex6Area > div > img,
.flex2Area > li > img, .flex3Area > li > img, .flex4Area > li > img, .flex6Area > li > img {
	margin: 0;
}
.flex2Area > div, .flex2Area > li {
	width: calc((100% - 2em * 1) / 2);
}
.flex3Area > div, .flex3Area > li {
	width: calc((100% - 2em * 2) / 3);
}
.flex4Area > div, .flex4Area > li{
	width: calc((100% - 2em * 3) / 4);
}
.flex6Area > div, .flex6Area > li{
	width: calc((100% - 2em * 5) / 6);
}

/* ◆スクエアボード◆ */

.squareBoardA {
	width: 100%;
	display: block;
	padding: 1.5em;
	margin: 0 auto 1.5em auto;
	border-radius: 0.5em;
	background: #FFFFFF;
	filter: drop-shadow(0 2px 2px rgba(0,0,0,0.3));
}
.squareBoardA > *:first-child{
	margin-top: 0;
}
.squareBoardA > *:last-child{
	margin-bottom: 0;
}

.squareBoardB {
	width: 100%;
	display: block;
	padding: 1.5em;
	margin: 0 auto 1.5em auto;
	background: #f3eae2;
}
.squareBoardB > *:first-child{
	margin-top: 0;
}
.squareBoardB > *:last-child{
	margin-bottom: 0;
}

/* ボードのタイトル */
.boardTitle {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 108%;
	font-weight: 500;
	color: #2c73db;
}
.boardTitle::before {
	margin-right: 1em; /* テキストの間の余白 */
	content: '';
	flex-grow: 1; /* 領域いっぱいまで広げる */
	height: 0.07894em; /* 線の太さ */
	display: inline-block;
	background-color: #2c73db;
}
.boardTitle::after {
	margin-left: 1em;
	content: '';
	flex-grow: 1;
	height: 0.07894em;
	display: inline-block;
	background-color: #2c73db;
}

/* -----------------------------------
■基本レイアウト
----------------------------------- */

/* -----------------------------------
■見出し
----------------------------------- */

/* ◆見出し◆ */
h1 {
	width: 100%;
	font-size: 200%;	/* 44px / 22px*/
	font-weight: 500;
	line-height: 1.2em;
	margin: 0 auto;
	padding: 1.477272727272727em 0 1.545454545454545em 0;	/* 65px、68px（73px想定）*/
}

.h1Sub{
	font-size: 80%;
}

h2 {
	color: #2c73db;	
	font-size: 172.7272727272727%;	/* 38px / 22px */
	font-weight: 500;
	line-height: 1.2em;
	
	margin: -0.2em -0.9em 1em -0.9em;
	padding: 0 0 0.5263157894736842em 0.9em;
	border-bottom: 0.07894em solid #2c73db;
}

h3 {
	color: #000;
	font-size: 145.4545454545455%;	/* 32px / 22px */
	font-weight: 500;
	line-height: 1.2em;
	background: #f3eae2;
	
	margin: -0.2em 0 1em 0;
	padding:  0.25em 0.75em 0.35em 0.75em;
	border-left: 0.28125em solid #2c73db;
}

h4 {
	position: relative;
	display: block;
	color: #2c73db;
	font-size: 136.3636363636364%;	/* 30px / 22px */
	font-weight: 500;
	line-height: 1.2em;
	
	margin: -0.2em 0 1em 0;
	padding: 0 0 0 1.26666em;
}
h4::before {
	position: absolute;
	content: "";
	display: block;
	width: 0.93333em;
	height: 0.15em;
	background: #2c73db;
	top: calc(1.36em / 2);
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	left: 0;
}

h5 {
/*	color: #000000;
	font-size:108%;
	font-weight: 500;
	padding: 0;
	margin: 0 0 1.253em;*/
}

p {

}

/* パンくずリスト */
#breadcrumb {
	width: 100%;
	padding: 0;
	margin: 0;
	font-size:90.9090909090909%;	/* 20px / 22px */
	font-weight: normal;
	line-height: 1.2em;
}
#breadcrumb ul{
	padding: 0;
	margin:0;
}
#breadcrumb li{
	display:inline;
	list-style: none;
}
#breadcrumb li:after{
	content: '>';
	padding: 0 1.0em;
	color: #000000;
}
#breadcrumb li:last-child:after{
	content: '';
}
#breadcrumb li a {
	color: #0000EE;
	text-decoration: underline;
}
#breadcrumb li a:hover {
	color: #EE0000;
	text-decoration: underline;
}


/*----- ページトップへ -----*/

#pageTop {
	position: fixed;
	right: 3em;
	bottom: 3em;
	z-index: 500;
}
#pageTop a {
}
#pageTop a:hover {
	opacity: 0.8;
}
#pageTop img{
	width: 60px;
	height: auto;
}

/* ■ファイルアイコンの自動表示 */
a:not(.noIcon)[href$=".pdf"]:after,
span.markPdf:after{
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconPdf.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".doc"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconDoc.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".docx"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconDocx.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".xls"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconXls.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".xlsx"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconXlsx.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".csv"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconCsv.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".zip"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconZip.gif) no-repeat center right;
	vertical-align: sub;
}

/* ■ファイルアイコン非表示エリア */
.linkNoMark a:not(.noIcon)[href$=".pdf"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".doc"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".docx"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".xls"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".xlsx"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".csv"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".zip"]:after {
    display: none;
}

/* 汎用リンク */

/* 表組 */

/* 表組：A */
.tableDesignA, .tableDesignB {
	width : 100%;
	table-layout: fixed;
	/*margin: 0 auto 3em auto;*/
	margin: 0 auto 1.5em auto;	/* 暫定で下の空き変更 */
	padding: 0;
	border-collapse: collapse;  /* 表の線と線の間を空けない */
	border: 2px solid #b3b3b3;
}
.tableDesignB {
	width: auto;
	margin: 0 0 1.5em 0;
}
.tableDesignA th, .tableDesignB th {
	line-height: 1.5em;
	font-weight: 500;
	padding: 0.25em 0.5em;
	white-space: nowrap;
	border: 2px solid #b3b3b3;
	text-align: center;
	background: #2c73db;
	color: #FFF;
}
.tableDesignB th {
	width: auto;
}
.tableDesignA td, .tableDesignB td {
	line-height: 1.5em;
	padding: 1em 0.5em;
	border: 2px solid #b3b3b3;
	font-weight: 500;
}
.tableDesignA caption, .tableDesignB caption {
	text-align: left;
	caption-side: top;
}

/* テーブルスクロール */
.table-scroll, .table-scroll2{
	overflow-y: hidden!important;
}

/* テーブルサブカラー */

.subColor {
	background:  #f3eae2;
	font-weight: normal;
}

/* テーブルサブフォント */

.subFont {
	font-size: 75%;
	font-weight: normal;
}

/* 縞模様背景 */

.tableStripe tr:nth-child(odd) td {
	background: #e9f1fb; /* 奇数行の背景色 */
}

/* 外来担当表 */

.tableGairai td {
	text-align: center;
}

/* GoogleMap */

.googleMap {
	height: 0;
	overflow: hidden;
	padding-bottom: 33.3%;
	position: relative;
}
.googleMap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

/* -----------------------------------
■ヘッダー
----------------------------------- */

/* ヘッダ詳細 */

header {
	width: 100%;
	margin: 0 auto;
/*	padding: 40px 0 45px 0;*/
	padding: 2.083333333333333vw 0 0 0;	/* 次のコンテンツで空きが違うのでここでは↓空けない */
}
.headerNest {
	width: 90%;
	max-width: 1768px;
	margin: 0 auto;
/*	padding: 0 0 15px 0;*/
	padding: 0 0 0.78125vw 0;
}
.headerFlex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 0 2em;
}
.headerFlex > div:first-child{
/*	padding-left: 15px;*/
	padding-left: 0.78125vw;
}
.headerFlex > div:first-child > a {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.hLogo{
	display: block;
	width: 4.117647058823529em;	/* 70px / 17px */
}
.hTitle{
	display: block;
	width: 20.76470588235294em;	/* 353px / 17px */
}
.headerFlex > div:last-child {
}

/* -----------------------------------
□ヘッダー：ツールエリア
----------------------------------- */
/* ツールエリア */
.headerToolArea {
	margin: 0;
	padding: 0;
	display: block;
	font-size: 70.58823529411765%;	/* 12px / 17px */
	line-height: 1;
}
.toolFlexBox {
	margin: 0;
	padding: 5px 0;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-items: center;
}
.toolFlexBox > div {
	display: inline-block;
	margin: 0;
	padding: 0 5px 0 0;
}
/* カラー変更 */
.naviTheme {
	margin: 0 auto;
}
.naviTheme ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: flex-start;
}
.naviTheme li {
	margin: 0 3px 0 0;
	padding: 0;
}
.naviTheme li a {
/*	font-family: "Zen Kaku Gothic New", serif;	*/
	font-size: 96.495%;
	color: #333;
	margin: 0 0 0 0;
	padding: 3px 4px 4px;
	display: inline-block;
	text-align: center;
	border: 1px solid #333333;
	border-radius: 5px;
	background: #FFF;
	text-decoration: none
}
.naviTheme li .white a {
	color: #333;
	background: #FFF;
}
.naviTheme li .blue a {
	color: #FFF;
	background: #0033CC;
}
.naviTheme li .black a {
	color: #FFF;
	background: #000;
}
/* テキストサイズ変更 */
.naviFont {
	margin: 0 auto;
}
.naviFont ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: flex-start;
}
.naviFont li {
	margin: 0 3px 0 0;
	padding: 0;
}
.naviFont li a {
/*	font-family: "Zen Kaku Gothic New", serif;*/
	font-size: 96.495%;
	color: #000000;
/*	width:2.7em;*/
	margin: 0 0 0 0;
	padding: 3px;
	display: inline-block;
	text-align: center;
/*	font-size: 13px;*/
	border: 1px solid #333333;
	border-radius: 5px;
/*	background: #FFF;*/
	text-decoration: none
}
.naviFont li a:hover {
	background: #CCC;
	text-decoration: none;
}

/* -----------------------------------
□ヘッダー：検索、言語ボタン　※仮
----------------------------------- */
.naviButton{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;	
	border: 1px solid #333333;
	gap: 0 3px;
	width: 9em;
	padding: 4px 0.5em 5px;
	border-radius: 1em;
}
.naviButton > img{
	width: 1.25em;		/* 15px /12px */
}
a.naviButton {
}
.headerToolArea a.naviButton, .headerToolArea a.naviButton:visited {
	color: #000000;
	text-decoration: none;
}
.headerToolArea a.naviButton:hover {	/* 未定 */
	color: #000000;
	text-decoration: none;
}

/* ----- ヘッダー：検索 ----- */

/* 開閉する検索窓（共通するところは言語も指定） */

.searchToggle, .langToggle1, .langToggle2{	/* PC用 ON/OFF */
	display:none;
}
.searchButton, .langButton1, .langButton2{
	position: relative;
}
.searchButton > a, .langButton1 > a, .langButton2 > a{
	position: relative;
	background: #FFFFFF;
	z-index: 1000;
	cursor: pointer;
}
.searchAreaPC, .langAreaPC{	/* PC専用の検索エリア */
	border:1px solid #666666;
	background: #FFFFFF;
	position:absolute;
	right: 0.5em;

	width: 23em;
	padding: 0.3em 0.4em 0.3em;
	z-index: 300;
}
.searchAreaPC{
	top: calc(1.25em + 9px + 5px);
	font-size:120%;
	width: 20em;
}
.langAreaPC{
	top: calc(1.5em + 9px + 5px);
	left: 0.1em;
	width: 24em;
	padding: 1.2em 1.2em 1.3em;
}

.searchArea {
	width: 2rem;
	height: 2rem;
	position: relative;
}
/*検索窓のエリア*/
.searchWrap {
	position: absolute;/*絶対配置にして*/
	z-index: 99;/*最前面に設定。数字は変更可*/
	top: -4px;
	right: -4px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: inherit;
	padding: 5px;
}
#js-search{
	color: transparent;
	color: #FFFFFF;
	-webkit-appearance: none;/*SafariやChromeのデフォルトの設定を無効*/
	width: 1.8rem;
	height: 1.8rem;
	padding: 0.45rem;
	background: #0055BB url("images/common/icon_search01.svg") no-repeat 0.225rem center;/*虫眼鏡アイコンを背景に表示*/
	background-size: 1.125rem 1.125rem;
	outline: none;
	cursor: pointer;/*カーソルを指マークに*/
	border: 1px solid #0055BB;
	border-radius: 0.25rem;
}
#js-search span{
	position: absolute;
	left: -9999px;
}

.headerSearch{
	width: 0;
	opacity: 0;
	transition: 0.6s ease;
	pointer-events: none;
}

.headerSearch form{
	display: flex;
	align-items: center;
	justify-content: center;
}
.headerSearch input[type=text]{
	width: 100%;
	height: 2rem;
	border: 1px solid #c8c8c8;
	padding: 0.25em 0 0.25em 0.5em;
	border-radius: 0.25rem;
}
.headerSearch input[type=submit]{
	position: absolute;
	left: -9999px;
}
.headerSearchLabel{
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	width: auto;
	height: 2rem;
	min-width: 3rem;
	padding: 0.25em 1.3em 0.25em 1.3em;
	overflow: hidden;
	color: #FFFFFF;
	background-color: #2c73db;
	white-space: nowrap;
	border: 2px solid #FFFFFF;
	transition: 0.4s ease;
	border-radius: 0.25rem;
}
.headerSearchLabel:hover{
	background-color: #FFFFFF;
	color: #2c73db;
}

	.searchArea {
		width: auto;
		height: auto;
		padding: 0.2em 0;
		position: relative;
	}
	.searchWrap{
		position: relative;
		z-index: 99;
		width: 100%;
		top: 0;
		left: 0;
		padding: 0;
	}
	.headerSearch{
		pointer-events: auto;
		display: block;
		width: 100%;
		opacity: 1;
	}
	.searchAreaPC .headerSearchLabel{
		border: 2px solid #2c73db;
	}


	#js-search{
		cursor: auto;
	}


/* ~~ PCのみ ~~ */
@media screen and (min-width:768px) {

	.is-search{
		pointer-events: auto;
		display: block;
		width: 14.2857em;
		opacity: 1;
	}

}

/* ----- ヘッダー：言語 ----- */

ul.langList{
	list-style-type: none;
	margin: 0;
	padding: 0;
	font-size: 110%;
}
ul.langList > li{
	margin: 0 0 1.0em 0;
	padding: 0;
}
ul.langList > li:last-child{
	margin: 0;
}
.langNote{
	font-size: 115%;
	line-height: 1.3em;
	margin: 0 0 1em 0;
	background: #e3f5ec;
	padding: 0 0.15em;
}


/* -----------------------------------
□ヘッダー：テキストのみ
----------------------------------- */

.headerToolArea a {
}
.headerToolArea a, .headerToolArea a:visited {
	color: #000000;
	text-decoration: none;
}
.headerToolArea a:hover {	/* 未定 */
	color: #2c73db;
	text-decoration: none;
}

.hTel{
	display: block;
	width: 23em;	/* 276px / 12px */
}

/* -----------------------------------
□ヘッダー：お問い合わせボタン
----------------------------------- */

.toolFlexBox > div.menuButton {
	padding: 0 0 0 0.8em;
	font-size: 133.3333333333333%;	/* 16px / 12px */
}
.toolFlexBox > div.menuButton:last-child {
	margin: 0 0 0 0;
}
.toolFlexBox > div.menuButton > a {
	border: 1px solid #2c73db;
	background: #2c73db;
	border-radius: 2.0em;
	padding: 0.5em 1.4em 0.6em;
}
.toolFlexBox > div.menuButton > a:link, .toolFlexBox > div.menuButton > a:visited {
	color: #FFFFFF;
}
.toolFlexBox > div.menuButton > a:hover{
	background: #FFFFFF;
	color:#2c73db;
	text-decoration: none;
}

/* -----------------------------------
□ヘッダー：スマホ時のみ表示するブロック
----------------------------------- */

.smIconFlex{
	display: none;

	position: fixed;
	top: 15px;
	right: 15px;
	z-index: 1000;

	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
	gap: 0 15px;
}


.smIconFlex > div:first-child, .smIconFlex > div:nth-child(2){
	line-height: 0;
}

/* ボタン */
.mainMenuButton {
	display: none;

	margin: 0;
	width: auto;
	
	z-index: 1000000;
}

.menu_button_view4 {
	display: block;
	width: 90px;
	height: 90px;
	background: #2c73db;
	cursor: pointer;
	border-radius: 8px;
}
.menu_button_view4 > .lineArea {
	position: relative;
	width:100%;
	height:65px;
}
.menu_button_view4 > .lineArea:before,
.menu_button_view4 > .lineArea:after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-1px);
	left: 15px;
	right: 15px;
	border-top: 4px solid #FFFFFF;
	transition: transform 0.3s;
}
.menu_button_view4 > .lineArea:after {
	border-bottom: 4px solid #FFFFFF;
	padding-top:13px;
}
.menu_button_view4 > .lineArea:before {
	transform: translateY(-17px);
}

.menu_button_view4.active > .lineArea:before {
	margin-top:-1px;
	transform: rotate(45deg);
}
.menu_button_view4.active > .lineArea:after {
	margin-top:-1px;
	transform: rotate(-45deg);
	border-bottom: none;
	padding-top:0;
}
.menu_button_view4 > .wordArea {
	padding:0 0 0 0;
	line-height:1.0em;
	text-align: center;
	color: #FFFFFF;
	font-size: 66.66666666666667%;	/* 16px / 24px */
	font-weight: bold;
	
	margin-top: -3px;
}


/* -----------------------------------
□ヘッダー：メインメニュー（枠）
　※メニュー本体はmenu.css参照
----------------------------------- */

.headerBlockMenu {
	display: block;
}
/* -----------------------------------
■コンテンツ
----------------------------------- */

/* メイン詳細 */
main {
	width: 100%;
	margin: 0;
	padding: 0;
}
main img{
	max-width: 100%;
	height: auto;
}


/* コンテンツ */
/* メモ：コンテンツの上下の空きはばらつきがあるので個々で付ける */
.contentsNest {
	font-size: 129.4117647058824%;	/* 22px / 17px コンテンツのベースサイズ */
	width: 90%;
	max-width: 1380px;
	margin: 0 auto;

}
.contentsNest2 {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
}
.contentsNestSlick {	/* slickを使用しているエリア専用 */
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 110px 0 80px;
}

.contentsBackH1 {
	background: #f3eae2;
}

.contentsBack {
}
.contentsBackBlue {
	background: #eaf1fb;
}
.contentsBackH1 {
	background: #f3eae2;
}

.headerSpaceIn{	/* 中面用のヘッダーまでの空き */
	margin: 1.354166666666667vw auto 3.385416666666667vw;	/* 30(26)pxと66(65)px(パンくずのline-heightの空きを除いた分) */
}
.mainContents{
	padding: 2.727272727272727em 1.55454em 6.181818181818182em 1.55454em;	/* 60px、136px */
}

/* -----------------------------------
■フッター
----------------------------------- */

/* フッター詳細 */

footer{
	background: #F2F2E8;
	margin: 0;
	padding: 0 0 0 0;
}
.footerNest{
	width: 80%;
	max-width: 1340px;	
	margin: 0 auto;
/*	padding: 85px 0 95px 0;*/
	padding: 4.427083333333333vw 0 4.947916666666667vw 0;

	font-size: 152.9411764705882%;
	position: relative;
}

.fHospital{
	font-size: 63.63636363636364%;	/* 14px / 22px */
	position: absolute;
	right: 0;
	top: 4.427083333333333vw;
}

.fLine{
	position: absolute;
	width: 10.41666666666667vw;
	right: 0;
	bottom: 2.473958333333333vw;
}
.fLine img{
	max-width: 100%;
	height: auto;
}


.footerTitle > a{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;	
}
.fLogo{
	display: block;
	width: 3.61em;	/* 95px / 25px */
}
.fTitle{
	display: block;
	width: 18.278em;	/* 481px / 25px */
}
.footerAddress{
	padding: 0.28em 0 0 3.65em;
}
.fTel{
	padding: 0.56em 0 0 3.85em;
}
.fTel > a > img{
	width: 14.744em;	/* 388px / 25px */
}




.footerFlex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: end;
	flex-direction: row-reverse;
	gap: 0 2em;
	
	width: 90%;
	max-width: 1340px;	
	margin: 0 auto;
	padding: 0;

}
.footerFlex > div:first-child {
	font-size: 82.35294117647059%;	/* 14px */
}

.footerFlexIn{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: end;
	gap: 0 4em;	
	font-size: 94.11764705882353%;	/* 16px */
}
.footerFlexIn > div:first-child > div:first-child > a {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.footerFlexIn > div:first-child > div:last-child {
	padding-left: 4.375em;
}
/* スマホ時の下層固定メニュー */
.smFooterMenu{
	display: none;
}


/* -----------------------------------
□トップページ：スライダー
----------------------------------- */

/* ◆スライドエリア◆ */

.sliderCover {
	position: relative;
	width: 92.08333333333333%;
	max-width: 1768px;
	margin: 0 auto;
}

.sliderArea {
	width: 100%;
	max-width: 1768px;
	position: relative;
	margin: 2.34375vw auto 0 auto;
	line-height: 0;
}
.sliderArea img {
	max-width:100%;
	height:auto;
	margin:0 auto;
}
.slideText{
	position: absolute;
	top: 65%;
	left: 6.787330316742081%;
	left: 3.393665158371041%;
    transform: translateY(-65%);
	z-index: 100;
	text-shadow: 0px -1px 0px rgba(255, 255, 255, 1), 1px -1px 0px rgba(255, 255, 255, 1), 1px 0px 0px rgba(255, 255, 255, 1), 1px 1px 0px rgba(255, 255, 255, 1), 0px 1px 0px rgba(255, 255, 255, 1), -1px 1px 0px rgba(255, 255, 255, 1), -1px 0px 0px rgba(255, 255, 255, 1), -1px -1px 0px rgba(255, 255, 255, 1);
}
.slideText > .stMain{
	font-size: 335.2941176470588%;	/* 57px / 17px */
	padding: 0;
	margin: 0 0 0.4em -0.1em;
	line-height: 1.6em;
	font-weight: 400;
}
.slideText > .stMain > ruby > rt{
	font-size: 30%;
}
.slideText > .stSub{
	font-size: 111.7647058823529%;	/* 19px / 17px */
	padding: 0;
	margin: 0;
	line-height: 1.9em;
}

.slideBg, .slideBgSm {
	/*
		画像のサイズはpcが1820x790、スマホ専用が820x790
		スライドのサイズは
		PCは1768(移動量含めると1818必要)x596
		smは767(移動量含めると817必要)x790
	*/	
	width: 100%;
	background-size: 102.9411764705882%;
	background-repeat: no-repeat;
	background-position: -2.604166666666667vw center;
	display: block;
	margin: 0;
	padding: 0;
	padding-top: 33.93665158371041%; /* PCは高さ可変（youtubeのレスポンシヴと同じ原理で） */
}
@keyframes moveLeft {
  0% {
      transform: scale(1);
	  background-position: 0px center;
  }
  100% {
	  background-position: -2.604166666666667vw center;
  }
}
ul.slider > li.active > .slideBg,
ul.slider > li.active > .slideBgSm {
    animation: moveLeft 6.0s linear 0s;		/* スライドの秒数（speed）と同じに */
    animation-fill-mode: both;
}


/* スライドページャー */
.lSSlideOuter .lSPager.lSpg {
	position: absolute;
	z-index: 500;
	bottom: -40px;
	left: 50%;
	transform: translateX(-50%);
}
.lSSlideOuter .lSPager.lSpg > li:hover a, .lSSlideOuter .lSPager.lSpg > li.active a {
    background-color: #2c73db !important;
}



/* pcの画像をスマホにも使う場合 */
@keyframes moveLeftSM {
  0% {
      transform: scale(1);
	  background-position: -501px center;
  }
  100% {
	  background-position: calc(-2.604166666666667vw - 501px) center;
  }
}
@media screen and (max-width:767px) {	/* 動き用 */
	.slideBg, .slideBgSm {
		background-size: cover;
		width: 100%;
		height: 790px;
	}
	.slideBg {
		background-position: calc(-2.604166666666667vw - 501px) center;
	}
	ul.slider > li.active > .slideBg {
		animation: moveLeftSM 6.0s linear 0s;		/* スライドの秒数（speed+pause）より大きく */
	}
	
		/* スライドページャー */
	.lSSlideOuter .lSPager.lSpg {
		bottom: 100px;
	}
	
}



/* ■スライダー：slick用スタイル */
.slick-slide {
	margin: 0 45px;
	line-height: 1.7em;
	text-align: center;
}
.slick-slide img {
	display: inline-block!important;
	width: 100%;
}
.slick-slide a:link, .slick-slide a:visited {
	color: #000000;
	text-decoration: none;
}
.slick-slide a:hover {
	color: #EE0000;
	text-decoration: underline;
}

.slick-prev:before, .slick-next:before {
	color: #C14F1D;
	font-size:40px;
}
.slick-prev{
    left: 0;
    z-index:2;
    width: 40px;
    height: 40px;
}
.slick-next{
    right: 0;
    width: 40px;
    height: 40px;
}

.slick-slide {
	transition: all ease-in-out .3s;
	opacity: .2;
}
.slick-active {
	opacity: 1;
}
.slick-current {
	opacity: 1;
}

.slick-arrow {	/* 左右のボタン画像指定 */
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
.prev-arrow {
	cursor: pointer;
	left: 20px;
	z-index: 10;
}
.next-arrow {
	cursor: pointer;
	right: 20px;
}

.multipleArea {
	margin: 0 auto 0;
	padding: 0;
	width:90%;
	max-width: 1600px;
	text-align: center;
}

.multiple-item { /* slickの上下のスペースdotsを使う場合はpaddingを使用しない */
	margin: 0 60px 30px 60px;
	padding: 0;
}

/* slickの調整 */

/* Arrow */
.multiple-item .prev-arrow {
    margin-left: -60px;
}
.multiple-item .next-arrow {
    margin-right: -60px;
}

/* 画像のばらつき対策 */
.multiple-item .alignnone {
    margin: 0;
}

/* 画像の縦の真ん中寄せ */
.multiple-item li img {
		width: 100%;
/*		height: 15vw;*/
		height: auto;
		object-fit: contain;
}

/*IEのみ対策*/
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.multiple-item li img {
			height: auto;
	}
}



/* ◆スライダー：メインのスタイル◆ */

/*.mainSlider{
	list-style: none outside none;
	margin: 0 0 1rem 0;
	padding: 0 0 13px 0;
	width: 100%;
	height: auto;
}
.mainSlider li{
	list-style: none outside none;
	margin: 0;
	padding: 0;
}

.add-animation .slideBg {
	transform: scale(1.1, 1.1);
}

.slickControl {
	text-align: center;
}

.mainBtn{
	position: absolute;
	bottom: -5px;
	left: calc(50% + 80px);
	z-index :110;
}

.slick-data-control {
	line-height: 1.2;
	color: #000000;
}
*/
/* ドット */

/*.slide-dots-main {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	
	margin: 0 0 0 -14px;
	padding: 0;
	padding-top: 15px;
	text-align: center;
}
.slide-dots-main li {
	display: inline-block;
	margin: 0 12px;
	padding: 0;
}
.slide-dots-main li button {
	position: relative;
	text-indent: -9999px;
	background: none;
	border: none;
	outline: none;
	margin: 0;
	padding: 0;
}
.slide-dots-main li button::before {
	background-image: url(libs/slick/custom/dot_off.png);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	cursor: pointer;
	height: 14px;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 14px;
	width: 14px;
}
.slide-dots-main li.slick-active button::before {
	background-image: url(libs/slick/custom/dot_on.png);
}

.slide-dots-main a {
	text-decoration: none;
}
.slide-dots-main a:link {
	text-decoration: none;
}
.slide-dots-main a:visited {
	text-decoration: none;
}
.slide-dots-main a:hover, a:active, a:focus {
	text-decoration: none;
}*/

/* 再生・一時停止ボタン */

/*.btn {
	width: 30px;
	height: 30px;
	background-color: #FFFFFF;
	border-radius: 100%;
	position: relative;
	cursor: pointer;
	border: solid 2px #666666;
	overflow: hidden;
	line-height: 1;
	font-size: 0.5em;
}*/
 
/* 一時停止 */
/*.btn:not(.playback)::before,
.btn:not(.playback)::after {
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 2px;
    height: 10px;
    box-sizing: border-box;
    background-color: currentColor;
    content: "";
    color: #666666;
}
.btn:not(.playback)::before {
    left: 40%;
}
.btn:not(.playback)::after {
    left: 60%;
}*/

/* 再生 */
/*.btn.playback::after {
	position: absolute;
	top: 50%;
	left: 40%;
	transform: translateY(-50%);
	width: 0px;
	height: 0px;
	border: 6px solid transparent;
	border-left: 10px solid #666666;
	box-sizing: border-box;
	content: "";
}*/

/* 文字を隠す */
/*.btn span {
	position: absolute;
	left: -9999px;
}
span.hide {
	position: absolute;
	left: -9999px;
}*/


/* ◆スライダー：slick用スタイル◆ */

/* ホーム：slick上書き */

/*.slick-slide {
	width: 90%;
	margin: 0 2rem;
}
.slick-slide img {
	width: 100%;
	max-width: 100%;
}
.slick-prev:before, .slick-next:before {
	color: #036EB8;
	font-size: 2rem;
}
.slick-prev {
    left: 0;
    z-index:2;
    width: 40px;
    height: 40px;
}
.slick-next {
    right: 0;
    width: 40px;
    height: 40px;
}

.slick-slide {
	transition: all ease-in-out .3s;
	opacity: .2;
	opacity: 1;
}
.slick-active {
	opacity: 1;
}
.slick-current {
	opacity: 1;
}/*

/* 左右のボタン画像指定 */


/*.slick-arrow {
	position: absolute;
 	top: calc(50% - 15px);
    transform: translate(0,-50%);
	margin: auto;
}
.prev-arrow {
	cursor: pointer;
	left: 20px;
	z-index: 120;
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
/*	-moz-transition: all 0.5s ease-out;  /* FF4+ */
/*	-ms-transition: all 0.5s ease-out;  /* IE10? */
/*	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
/*	transition: all 0.5s ease-out;
/*}
.next-arrow {
	cursor: pointer;
	right: 20px;
	z-index: 130;
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
/*	-moz-transition: all 0.5s ease-out;  /* FF4+ */
/*	-ms-transition: all 0.5s ease-out;  /* IE10? */
/*	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
/*	transition: all 0.5s ease-out;
}

.prev-arrow:hover {
	opacity: 0.6;
}
.next-arrow:hover {
	opacity: 0.6;
}

.slideCover {	/* 上に乗せるイラスト用 */
/*	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.slideCover > img{
	width: 100%;
	height: auto;
}*/

/* -----------------------------------
□トップページ：その他
----------------------------------- */

/* トップアイコン部 */
.contentsIconArea{
	width: 22.23958333333333vw;
	width: 26.6875vw;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	z-index: 200;
	overflow: hidden;
	padding-left: 3px;
}

.topIconBoard{
	width: 100%;
	min-height: 6.61458333333333vw;
	padding: 0.3125vw;
	border-radius: 6.61458333333333vw 0 0 6.61458333333333vw;
	filter: drop-shadow(-2px 2px 2px rgba(0,0,0,0.3));
	background: #FFFFFF;
	margin: 2.08333333333333vw 0;
}

.topIconBoard a{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-decoration: none;
	padding-right: 1.590909090909091em;
}

.topIconBoard img{
	max-width: 6.30208333333333vw;
	height: auto;
}

.topIconBoard .mainWord{
	color: #555555;
	display: block;
	font-size: 164.7058823529412%;	/* 28px / 17px */
	text-align: right;
	margin: 0 auto 0.75em 0;
	line-height: 1.2;
}

.topIconBoard .subWord{
	color: #2c73db;
	display: block;
	text-align: right;
	font-size: 100%;	/* 17px / 17px */
	margin: 0 auto 0.75em 0;
}

.topIconBoard a:hover .mainWord{
	color: #EE0000;
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.5s ease-out;  /* FF4+ */
	-ms-transition: all 0.5s ease-out;  /* IE10? */
	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
	transition: all 0.5s ease-out;
}
.topIconBoard a:hover .subWord{
	color: #EE0000;
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.5s ease-out;  /* FF4+ */
	-ms-transition: all 0.5s ease-out;  /* IE10? */
	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
	transition: all 0.5s ease-out;
}


/* 診療科 */

.contentsBackShinryo {
	margin-top: 5.72916666666667vw ;	/* 110/1920 */
	padding: 7.8125vw 0 0 0;	/* 150/1920、0/1920 */
	background-color: #f6efe9;
}

.topShinryo{
	max-width: 1580px;
}

.shinryoCaption{
	width: 100%;
	text-align: center;
	font-size:190.9090909090909%;	/* 42px / 22px */
	font-weight: 500;
	margin: 1.976190476190476em 0 0 0;	/* 83px / 42px */
}
.shinryoCaption > span{
	display: block;
	color: #2c73db;
	font-size: 35.71428571428571%;
	font-weight: normal;
}


/* お知らせ */
.contentsBackInfo {
	padding: 17.70833333333333vw 0 28.33333333333333vw 0;	/* 340/1920、544/1920 */
	background-color: #f6efe9;
	background: linear-gradient(to bottom, rgba(246,239,233,1) 0%, rgba(246,239,233,0) 35%) ,url(images/home/bg_info_pc.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center bottom;
}

.topInfo{
	max-width: 1580px;
}
.topInfoFlex{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 0 3em;	/* 66px / 22px */
	width: 100%;
	max-width: 1580px;
	margin: 0 auto;
	background: #FFFFFF;
	padding: 2.5em 4.227272727272727em 2.272727272727273em 4.227272727272727em;	/* 55px / 22px、50px / 22px、93px / 22px */
}
.topInfoFlex > div:last-child{
	flex: 1;
}

.infoCaption{
	font-size:190.9090909090909%;	/* 42px / 22px */
	font-weight: 500;
	margin: 1.976190476190476em 0 0 0;	/* 83px / 42px */
}
.infoCaption > span{
	display: block;
	color: #2c73db;
	font-size: 35.71428571428571%;
	font-weight: normal;
}

ul.topInfoMainFlex{
	margin: 0;
	padding: 0;
}
ul.topInfoMainFlex > li{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 0 1.727272727272727em;
	width: 100%;

	line-height: 1.6em;
	margin: 0 0 1.4em;
}
.listArea ul.topInfoMainFlex > li{
	flex-wrap: wrap;
	align-items: center;
}

ul.topInfoMainFlex > li > div{
	font-size: 77.27272727272727%;	/* 17px / 22px */
}
ul.topInfoMainFlex > li > div.infoDay{
	font-size: 81.81818181818182%;	/* 18px / 22px */
	letter-spacing: 0.1em;
	color: #4d4d4d;
}
ul.topInfoMainFlex > li > div.infoCategory{
	font-size: 63.63636363636364%;	/* 14px / 22px */
	letter-spacing: 0.1em;
	line-height: 1.0;
	width: 11em;
	color: #48BB7D;
	text-align: center;
	padding: 0.4em 0 0 0;
}

ul.topInfoMainFlex > li > div.infoCategory a{
	display: block;
	width: 100%;
}
ul.topInfoMainFlex > li > div.category_page{	/* 検索の固定ページ用 */
	border: 1px solid #000000;
	border-radius: 1.2em;
	padding: 0.2em 0 0.3em;
	color:#000000;
}


ul.topInfoMainFlex > li > div > a:link, ul.topInfoMainFlex > li > div > a:visited{
	color: #000000;
	text-decoration: none;
}
ul.topInfoMainFlex > li > div > a:hover {
	color: #EE0000;
}

ul.topInfoMainFlex > li > div.infoTitle{
	flex: 1;
}
.listArea ul.topInfoMainFlex > li > div.infoTitle{
	flex: auto;
}

ul.topInfoMainFlex > li > div.infoExcerpt{
	width: 100%;
}

/* ■検索結果の表示調整 */

.search-results div.infoTitle a{
	display: block;
	font-size: 120%;
}

.search-results div.infoTitle a:link, .search-results div.infoTitle a:visited {
	color: #0000EE;
	text-decoration: underline;
}
.search-results div.infoTitle a:hover, .search-results div.infoTitle a:active, .search-results div.infoTitle a:focus {
	color: #EE0000;
	text-decoration: underline;
}


/* _でカテゴリのスラッグと紐づける */

ul.topInfoMainFlex > li > div.category_news > a,
ul.topInfoMainFlex > li > div.category_kanjya > a,
ul.topInfoMainFlex > li > div.category_iryou > a, 
ul.topInfoMainFlex > li > div.category_recruit > a,
ul.topInfoMainFlex > li > div.category_nyusatu > a{
	display: block;
	border-radius: 1.2em;
	padding: 0.2em 0 0.3em;
}

ul.topInfoMainFlex > li > div.category_news > a{
	color: #2c73db;
	border: 1px solid #2c73db;
}
ul.topInfoMainFlex > li > div.category_news > a:link, ul.topInfoMainFlex > li > div.category_news > a:visited{
	color: #2c73db;
}
ul.topInfoMainFlex > li > div.category_news > a:hover {
	color: #2c73db;
}

ul.topInfoMainFlex > li > div.category_kanjya > a{
	color: #f7931e;
	border: 1px solid #f7931e;
}
ul.topInfoMainFlex > li > div.category_kanjya > a:link, ul.topInfoMainFlex > li > div.category_kanjya > a:visited{
	color: #f7931e;
}
ul.topInfoMainFlex > li > div.category_kanjya > a:hover {
	color: #f7931e;
}

ul.topInfoMainFlex > li > div.category_iryou > a{
	color: #48BB7D;
	border: 1px solid #48BB7D;
}
ul.topInfoMainFlex > li > div.category_iryou > a:link, ul.topInfoMainFlex > li > div.category_iryou > a:visited{
	color: #48BB7D;
}
ul.topInfoMainFlex > li > div.category_iryou > a:hover {
	color: #48BB7D;
}

ul.topInfoMainFlex > li > div.category_recruit > a{
	color: #3EADC4;
	border: 1px solid #3EADC4;
}
ul.topInfoMainFlex > li > div.category_recruit > a:link, ul.topInfoMainFlex > li > div.category_recruit > a:visited{
	color: #3EADC4;
}
ul.topInfoMainFlex > li > div.category_recruit > a:hover {
	color: #3EADC4;
}

ul.topInfoMainFlex > li > div.category_nyusatu > a{
	color: #993388;
	border: 1px solid #993388;
}
ul.topInfoMainFlex > li > div.category_nyusatu > a:link, ul.topInfoMainFlex > li > div.category_nyusatu > a:visited{
	color: #993388;
}
ul.topInfoMainFlex > li > div.category_nyusatu > a:hover {
	color: #993388;
}

.topInfoBtnArea{
	text-align: right;
	margin: 1.8em 0 0 0;
}

/* 採用情報の背景 */

.topSaiyo{
	max-width: 1580px;
}

.topSaiyo li img{
	filter: drop-shadow(7px 7px 10px rgba(0,0,0,0.2));
	vertical-align: top;
}

.topSaiyoBack {
	width: 100%;
	background: center -165px url(images/home/top_saiyo_back.jpg) no-repeat;
	background-size: 3.823529411764706em auto 0 auto; /* 65px /17px */
	margin: 65px auto 0 auto;
	padding:8.823529411764706em 0 8.823529411764706em;	/* 150px /17px、150px /17px */
	overflow: hidden;
}
.topSaiyoFlex{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	
	position: relative;
	
	background: center right url(images/home/saiyo_bg_pc.jpg) no-repeat;
	background-size: cover;
	border: 1px solid #FFFFFF;
	box-shadow: 7px 7px 10px 0px rgba(0, 0, 0, 0.2);
	
	font-size:95.45454545454545%;	/* 21px / 22px ベース */
	line-height: 1.5em;
	padding: 0;

	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.5s ease-out;  /* FF4+ */
	-ms-transition: all 0.5s ease-out;  /* IE10? */
	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
	transition: all 0.5s ease-out;
}
.topSaiyoFlex:hover{
	border: 1px solid #2c73db;
}

.topSaiyoFlex:after {
	position: absolute;
	font-size: 125%;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	color: #2c73db;
	bottom: 0.8em;
	right: 1.0em;
	border-radius: 50%;
	background-color: #FFFFFF;
}
.topSaiyoFlex > div {
	border: none;
	border-color: #FFFFFF;
}
.topSaiyoFlex a {
	display: block;
	height: 100%;
/*	padding: 1.6em 1.8em;*/
	padding: 1.3em 1.8em;
}
.topSaiyoCaption{
	font-size: 238.0952380952381%;	/* 50px / 21px */
	letter-spacing: 0.1em;
	line-height: 1.0em;
	min-width: 8em;
}
.topSaiyoFlex a:link, .topSaiyoFlex a:visited, .topSaiyoFlex a:hover {
	color: #000000;
	text-decoration: none;
}
.topSaiyoFlex:hover a:link, .topSaiyoFlex:hover a:visited, .topSaiyoFlex:hover a:hover {
	color: #2c73db;
}

.tscSub{
	display: block;
	color: #2c73db;
	font-size: 30%;	/* 15px / 50px */
	letter-spacing: 0.1em;
	line-height: 1.0em;
	padding: 0.9em 0 0 0;
}
.topSaiyoImg{
	display: none;
}
.topSaiyoSubFlex{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	width: 100%;
}
.topSaiyoSubCaption{
	display: none;
}
.topSaiyoMain{
	width: 100%;
}
.topSaiyoMain > a{
	padding: 4.5em 0 0 0;
}

/* その他のエリア */
.topOtherBack {
	padding: 6.470588235294118em 0 2.647058823529412em 0;	/* 110px /17px、45px /17px */
}
.topOtherIconFlex {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	
	font-size: 94.11764705882353%;	/* 16px / 17px */

	gap: 1.1875em;	/* 19px / 16px */
	margin-bottom: 4.5em;

}
.topOtherIconFlex > div {
	display: table;
	width: 14em;
}
.topOtherIconFlex > div > a {
	display: table-cell;
	width: 100%;
	height: 8.75em;	/* 140px / 16px */
	text-align: center;
	vertical-align: middle;
	border: 1px solid #2c73db;
	border-radius: 10px;
}
.topOtherIconFlex > div > a:link, .topOtherIconFlex > div > a:visited {
	color: #2c73db;
	text-decoration: none;
}
.topOtherIconFlex > div > a:hover {
	color: #FFFFFF;
	background: #2c73db;
	text-decoration: none;
}
.topOtherIconFlex2 {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 2.352941176470588em;	/* 40px / 17px */
	margin: 0 auto 4.5em auto;
}

.topOtherBannerFlex {
	width: 90%;
	max-width: 1400px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 2em;
	margin: 0 auto 4.5em auto;
}
.topOtherBannerFlex > * {
	width: calc((100% - 2em * 3) / 4);
	text-align: center;
}



/* -----------------------------------
□中面：共通
----------------------------------- */

/* タイトル */
.titleCover{
	position: relative;
	background: #bbbbbb url("images/common/bg_diagonal.svg") repeat center center;
	background-size: 105px;
}
.titleCover:after{
	content: "　";
	position: absolute;
	background: url("images/common/title_wave.svg") repeat-x center bottom;
	background-size: 160px 23px;
	width: 100%;
	bottom: -1px;
	left: 0;
}
.titleCover > div{
	position: relative;
	font-family: "Zen Kaku Gothic New", serif;
	font-size: 171.428%;
	font-weight: 500;
	text-shadow: 0px -2px 0px rgba(255, 255, 255, 1),
	 2px -2px 0px rgba(255, 255, 255, 1),
	 2px 0px 0px rgba(255, 255, 255, 1),
	 2px 2px 0px rgba(255, 255, 255, 1),
	 0px 2px 0px rgba(255, 255, 255, 1),
	 -2px 2px 0px rgba(255, 255, 255, 1),
	 -2px 0px 0px rgba(255, 255, 255, 1),
	 -2px -2px 0px rgba(255, 255, 255, 1);
	width: 90%;
	max-width: 1340px;
	margin: 0 auto;
	padding: 2.6em 0 2.75em 4.217em;
	line-height: 1.5em;
}
.titleCover > div:before{
	content: "　";
	position: absolute;
	width: 2.777em;
	height: 100%;
	top: 0;
	left: 0.47em;
	z-index: 0;
}
.titleCover > div:after{
	content: "　";
	position: absolute;
	width: 4.0em;
	height: 100%;
	top: 0;
	right: 0em;
	z-index: 0;
}
.titleCover > div > span{
	position: relative;
	z-index: 10;
}
.titleAisatsu{	/* 挨拶 */
	background: #96bbed url("images/common/bg_diagonal.svg") repeat center center;	
	background-size: 105px;
}
.titleAisatsu > div:before{
	background: url("images/home/top_menu_icon01.svg") no-repeat center center;
	background-size: contain;
}
.titleAisatsu > div:after{
	background: url("images/common/title_icon01.svg") no-repeat center center;
	background-size: contain;
}
.titleTsuite{	/* 広域連合について */
	background: #b6dda1 url("images/common/bg_diagonal.svg") repeat center center;	
	background-size: 105px;
}
.titleTsuite > div:before{
	background: url("images/home/top_menu_icon02.svg") no-repeat center center;
	background-size: contain;
}
.titleTsuite > div:after{
	background: url("images/common/title_icon02.svg") no-repeat center center;
	background-size: contain;
}
.titleGikai{	/* 議会 */
	background: #e1de83 url("images/common/bg_diagonal.svg") repeat center center;	
	background-size: 105px;
}
.titleGikai > div:before{
	background: url("images/home/top_menu_icon03.svg") no-repeat center center;
	background-size: contain;
}
.titleGikai > div:after{
	background: url("images/common/title_icon03.svg") no-repeat center center;
	background-size: contain;
}
.titleSoumu{	/* 総務 */
	background: #f8d084 url("images/common/bg_diagonal.svg") repeat center center;	
	background-size: 105px;
}
.titleSoumu > div:before{
	background: url("images/home/top_menu_icon04.svg") no-repeat center center;
	background-size: contain;
}
.titleSoumu > div:after{
	background: url("images/common/title_icon04.svg") no-repeat center center;
	background-size: contain;
}
.titleKaigofukushi{	/* 介護保険 */
	background: #f8b4b5 url("images/common/bg_diagonal.svg") repeat center center;	
	background-size: 105px;
}
.titleKaigofukushi > div:before{
	background: url("images/home/top_menu_icon05.svg") no-repeat center center;
	background-size: contain;
}
.titleKaigofukushi > div:after{
	background: url("images/common/title_icon05.svg") no-repeat center center;
	background-size: contain;
}
.titleShogaifukushi{	/* 障害福祉 */
	background: #b2b3d8 url("images/common/bg_diagonal.svg") repeat center center;	
	background-size: 105px;
}
.titleShogaifukushi > div:before{
	background: url("images/home/top_menu_icon06.svg") no-repeat center center;
	background-size: contain;
}
.titleShogaifukushi > div:after{
	background: url("images/common/title_icon06.svg") no-repeat center center;
	background-size: contain;
}

/* コンテンツエリア */
.contentsBox{
	background: #FFFFFF;
	box-shadow: 0px 6px 5px 0px rgba(0,0,0,0.3);
	border-radius: 20px;
	padding: 85px 50px 100px;
}
.contentsBox p {
	line-height: 1.8em;
}
.contentsBox ul, .contentsBox ol {
	line-height: 1.8em;
}
.contentsBox ul li, .contentsBox ol  li {
	padding-bottom: 0.2em;
}

/* お知らせ一覧ページ */
 ul.newsAreCat {
	margin: 0 auto; 
	padding: 0 0 0 1.5em;
}
ul.newsAreCat > li {
	width: 100%;
	margin: 0 0 0.7em 0;
	padding: 0;
}
ul.newsAreCat > li:last-child {
	margin: 0 0 0 0;
}
ul.newsAreCat > li > span.newsDay {
	display: inline-block;
	min-width: 4.9em;
	margin: 0 0.5em 0 0;
	padding: 0;
}
ul.newsAreCat > li > span.newsCategory {
	display: inline-block;
	color: #FFFFFF;
	font-size: 71.42857142857143%;
	background: #55bb00;
	border-radius: 2em;
	margin: 0 2.466em 0 0;
	padding: 0.35em 1.9em 0.45em;
	line-height: 1.0em;
}
ul.newsAreCat > li > a:link, ul.newsAreCat > li > a:visited {
	color: #000000;
}
ul.newsAreCat > li > a:hover {
	color: #EE0000;
	text-decoration: underline;
}

/* -----------------------------------
□中面：扉
----------------------------------- */

/* ◆リンクボタン（共通）◆ */

a.subPage, span.subPage {
	padding-left: 2.666666666666667em !important;
	border-color: rgba(243,234,226,0.4) !important;
	background: rgba(243,234,226,0.4) !important;
}

a.subPage:hover {
	background: #2c73db !important;
}

a.subPage2, span.subPage2 {
	padding-left: 2.666666666666667em !important;
	background: rgba(149,185,237,0.1) !important;
}

a.subPage2:hover {
	background: #95b9ed !important;
}

a.subPage3, span.subPage3 {
	padding-left: 2.666666666666667em !important;
	border-color: rgba(243,234,226,0.4) !important;
	background: rgba(243,234,226,0.4) !important;
}

a.subPage3:hover {
	background: #2c73db !important;
}

a.otherPage, span.otherPage {
	border-color: #f3e2e5 !important;
	background: #f3e2e5 !important;
}

a.otherPage:hover {
	background: #2c73db !important;
	border-color: #2c73db !important;
}

.linkSub {
	font-size: 80% ;
}

/* ◆リンクボタンA（ベージュ背景）◆ */

.linkButtonA{
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 0.6666666666666667em 2%;
	list-style: none;
	width: 100%;
	margin: 0;
	padding: 0;
	
	font-size: 109.0909090909091%;	/* 24px / 22px */
	line-height: 1.2em;
}
.linkButtonA > div, .linkButtonA > li {
	width: 32%;
}
.linkButtonA > div > a, .linkButtonA > li > a, .linkButtonA > div > span, .linkButtonA > li > span {
	display: block;
	width: 100%;
	padding: 1.0em 3.666666666666667em 1.1em 1.666666666666667em;
}
.linkButtonA > div > a:link, .linkButtonA > li > a:link,
.linkButtonA > div > a:visited, .linkButtonA > li > a:visited,
.linkButtonA > div > span, .linkButtonA > li > span {
	position: relative;
	border: 1px solid #f3eae2;
	background: #f3eae2;
	color: #000000;
	text-decoration: none;
	border-radius: 2em;
}

.linkButtonA > div > a:hover, .linkButtonA > li > a:hover {
	border: 1px solid #2c73db;
	background: #2c73db;
	color: #FFFFFF;
}

.linkButtonA > div > a:link:after, .linkButtonA > li > a:link:after,
.linkButtonA > div > a:visited:after, .linkButtonA > li > a:visited:after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	border-radius: 50%;
	color: #2c73db;
	top: 50%;
	border-radius: 50%;
	background-color: #FFFFFF;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 1.666666666666667em;
}

.linkButtonA + .linkButtonA{
	margin-top: 0.6666666666666667em;
}


/* ◆リンクボタンB（ライン）◆ */

.linkButtonB{
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 0.6666666666666667em 2%;
	
	list-style: none;
	width: 100%;
	margin: 0;
	padding: 0;
	
	font-size: 109.0909090909091%;	/* 24px / 22px */
	line-height: 1.2em;
}
.linkButtonB > div, .linkButtonB > li {
	width: 32%;
}
.linkButtonB > div > a, .linkButtonB > li > a,
.linkButtonB > div > span, .linkButtonB > li > span {
	display: block;
	width: 100%;
	padding: 1.0em 3.666666666666667em 1.1em 1.666666666666667em;
}
.linkButtonB > div > a:link, .linkButtonB > li > a:link,
.linkButtonB > div > a:visited, .linkButtonB > li > a:visited,
.linkButtonB > div > span, .linkButtonB > li > span {
	position: relative;
	border: 1px solid #2c73db;
	background: #FFFFFF;
	color: #000000;
	text-decoration: none;
	border-radius: 2em;
}

.linkButtonB > div > a:hover, .linkButtonB > li > a:hover {
	border: 1px solid #2c73db;
	background: #95b9ed;
	color: #FFFFFF;
}

.linkButtonB > div > a:link:after, .linkButtonB > li > a:link:after,
.linkButtonB > div > a:visited:after, .linkButtonB > li > a:visited:after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	border-radius: 50%;
	color: #2c73db;
	top: 50%;
	border-radius: 50%;
	background-color: #FFFFFF;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 1.666666666666667em;
}

.linkButtonB > div > a:hover:after, .linkButtonB > li > a:hover:after{
	color: #95b9ed;
}

.linkButtonB + .linkButtonB{
	margin-top: 0.6666666666666667em;
}

.buttonStart{
	justify-content: flex-start;
}

.buttonEnd{
	justify-content: flex-end;
}

/* ◆リンクボタンC（下向き）◆ */

.linkButtonC{
	display: flex;
	align-items: stretch;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 0.6666666666666667em 2%;
	
	list-style: none;
	width: 100%;
	margin: 0;
	padding: 0;
	
	font-size: 109.0909090909091%;	/* 24px / 22px */
	line-height: 1.2em;
}
.linkButtonC > div, .linkButtonC > li {
	width: 32%;
}
.linkButtonC > div > a, .linkButtonC > li > a {
	display: block;
	width: 100%;
	padding: 1.0em 3.666666666666667em 1.1em 1.666666666666667em;
}
.linkButtonC > div > a:link, .linkButtonC > li > a:link,
.linkButtonC > div > a:visited, .linkButtonC > li > a:visited {
	position: relative;
	border: 1px solid #2c73db;
	background: #FFFFFF;
	color: #000000;
	text-decoration: none;
	border-radius: 2em;
}

.linkButtonC > div > a:hover, .linkButtonC > li > a:hover {
	border: 1px solid #2c73db;
	background: #95b9ed;
	color: #FFFFFF;
}

.linkButtonC > div > a:link:after, .linkButtonC > li > a:link:after,
.linkButtonC > div > a:visited:after, .linkButtonC > li > a:visited:after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	border-radius: 50%;
	color: #2c73db;
	top: 50%;
	border-radius: 50%;
	background-color: #FFFFFF;
	-webkit-transform : translateY(-50%) rotate(90deg);
	transform : translateY(-50%) rotate(90deg);
	right: 1.666666666666667em;
}

.linkButtonC > div > a:hover:after, .linkButtonC > li > a:hover:after{
	color: #95b9ed;
}

.linkButtonB + .linkButtonC{
	margin-top: 0.6666666666666667em;
}

/* ◆リンクボタンD（第二段階のページにリンク）◆ */

.linkButtonD{
	display: flex;
	align-items: stretch;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 0.6666666666666667em 2%;
	
	list-style: none;
	width: 100%;
	margin: 0;
	padding: 0;
	
	font-size: 118.1818181818182%;	/* 26px / 22px */
	font-weight: 500;
	line-height: 1.2em;
}
.linkButtonD > div, .linkButtonD > li {
	width: 32%;
}
.linkButtonD > div > a, .linkButtonD > li > a {
	display: block;
	width: 100%;
	padding: 1.0em 4em 1.1em 1em;
}
.linkButtonD > div > a:link, .linkButtonD > li > a:link,
.linkButtonD > div > a:visited, .linkButtonD > li > a:visited {
	position: relative;
	border: 1px solid #2c73db;
	background: #f3eae2;
	color: #000000;
	text-decoration: none;
}

.linkButtonD > div > a:hover, .linkButtonD > li > a:hover {
	border: 1px solid #2c73db;
	background: #2c73db;
	color: #FFFFFF;
}

.linkButtonD > div > a:link:after, .linkButtonD > li > a:link:after,
.linkButtonD > div > a:visited:after, .linkButtonD > li > a:visited:after {
	position: absolute;
	font-size: 80%;
	content: 'more＞';
	display: inline-block;
	width: 4em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	color: #000000;
	top: 50%;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 1em;
}

.linkButtonD > div > a:hover:after, .linkButtonD > li > a:hover:after{
	color: #FFFFFF;
}

/* ボタンDCを並べる */

.dcCover{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 0.6666666666666667em 2%;
	width: 100%;
	margin:  0;
	padding: 0;
}
.dcCover .linkButtonC{
	width: 32%;
}
.dcCover .linkButtonD{
	width: 32%;
}
.dcCover .linkButtonC > div, .dcCover .linkButtonC > li {
	width: 100%;
}
.dcCover .linkButtonD > div, .dcCover .linkButtonD > li {
	width: 100%;
}

.dcCover + h2{
	margin-top:64px;
}

/* ラインデザインのボタン（リストでなく単独で使用する場合） */
a.linkButtonLineB {
	display: inline-block;
	width: auto;
	padding: 0.5em 3.166666666666667em 0.6em 1.166666666666667em;
	font-size: 90%;
}
a.linkButtonLineB:link, a.linkButtonLineB:visited {
	position: relative;
	border: 1px solid #000000;
	background: #FFFFFF;
	color: #000000;
	text-decoration: none;
	border-radius: 2em;
}
a.linkButtonLineB:hover {
	background: #a3ddbe;
	color: #FFFFFF;
}
a.linkButtonLineB:link:after, a.linkButtonLineB:visited:after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	border-radius: 50%;
	color: #48BB7D;
	top: 50%;
	border-radius: 50%;
	background-color: #FFFFFF;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 1.166666666666667em;
}
a.linkButtonLineB:hover:after {
	color: #a3ddbe;
}


a.ilcNews:link, a.ilcNews:visited {
	color: #2c73db;
	border: 1px solid #2c73db;
}
a.ilcNews:hover {
	background: #2c73db;
	color: #FFFFFF;
}
a.ilcNews:link:after, a.ilcNews:visited:after {
	color: #2c73db;
	background-color: #FFFFFF;
}
a.ilcNews:hover:after {
	color: #2c73db;
}


a.ilcKanjya:link, a.ilcKanjya:visited {
	color: #f7931e;
	border: 1px solid #f7931e;
}
a.ilcKanjya:hover {
	background: #f7931e;
	color: #FFFFFF;
}
a.ilcKanjya:link:after, a.ilcKanjya:visited:after {
	color: #f7931e;
	background-color: #FFFFFF;
}
a.ilcKanjya:hover:after {
	color: #f7931e;
}


a.ilcIryou:link, a.ilcIryou:visited {
	color: #48BB7D;
	border: 1px solid #48BB7D;
}
a.ilcIryou:hover {
	background: #48BB7D;
	color: #FFFFFF;
}
a.ilcIryou:link:after, a.ilcIryou:visited:after {
	color: #48BB7D;
	background-color: #FFFFFF;
}
a.ilcIryou:hover:after {
	color: #48BB7D;
}


a.ilcRecruit:link, a.ilcRecruit:visited {
	color: #3EADC4;
	border: 1px solid #3EADC4;
}
a.ilcRecruit:hover {
	background: #3EADC4;
	color: #FFFFFF;
}
a.ilcRecruit:link:after, a.ilcRecruit:visited:after {
	color: #3EADC4;
	background-color: #FFFFFF;
}
a.ilcRecruit:hover:after {
	color: #3EADC4;
}


a.ilcNyusatu:link, a.ilcNyusatu:visited {
	color: #993388;
	border: 1px solid #993388;
}
a.ilcNyusatu:hover {
	background: #993388;
	color: #FFFFFF;
}
a.ilcNyusatu:link:after, a.ilcNyusatu:visited:after {
	color: #993388;
	background-color: #FFFFFF;
}
a.ilcNyusatu:hover:after {
	color: #993388;
}


/* ◆職員募集のボタン生成テーブル◆ */

.tableDesingRecruit{
	width: 102%;
	margin: 0 -1%;
	padding: 0;
	font-size: 109.0909090909091%;	/* 24px / 22px */
	text-align: center;
	line-height: 1.2em;
}

.tableDesingRecruit td{
	margin: 0;
	padding: 0;
	padding-right: 1%;
	padding-left: 1%;
}

.tableDesingRecruit a {
	display: block;
	width: 100%;
	padding: 1.0em 3.666666666666667em 1.1em 1.666666666666667em;
	margin: 0.5em 0 2em 0;
	text-align: left;
}
.tableDesingRecruit a:link,
.tableDesingRecruit a:visited {
	position: relative;
	border: 1px solid #2c73db;
	background: #FFFFFF;
	color: #000000;
	text-decoration: none;
	border-radius: 2em;
}

.tableDesingRecruit a:hover {
	border: 1px solid #2c73db;
	background: #95b9ed;
	color: #FFFFFF;
}

.tableDesingRecruit a:link:after,
.tableDesingRecruit a:visited:after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	border-radius: 50%;
	color: #2c73db;
	top: 50%;
	border-radius: 50%;
	background-color: #FFFFFF;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 1.666666666666667em;
}

.tableDesingRecruit a:hover:after{
	color: #95b9ed;
}


/* TOPページのボタンをここで追加する場合 */

.linkButtonTop{
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.6666666666666667em 2%;

	list-style: none;
	width: 90%;
	margin: 2em auto -2em auto;
	padding: 0;
	
	line-height: 1.2em;
}
.linkButtonTop > a, .linkButtonTop > li {
	width: 48%;
}

a.linkButtonTopA {
	display: flex;
	align-items: center;
	max-width: 100%;
	min-height: 4em;
	font-size: 136.3636363636364%;	/* 30px / 22px */
	font-weight: 500;
	line-height: 1.1;
	padding: 1em 3.5em 1em 2em;
	text-align: left;
}

a.linkButtonTopA span {
	color: #333333;
	font-size: 70%;	/* 30px / 22px */
	font-weight: 400;
}

a.linkButtonTopA:link, a.linkButtonTopA:visited {
	position: relative;
	background: #FFFFFF;
	color: #48bb7d;
	text-decoration: none;
	border-radius: 4em;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
}
a.linkButtonTopA:hover {
	background: #48BB7D;
	color: #FFFFFF;
}

a.linkButtonTopA:hover span {
	color: #FFFFFF;
}

a.linkButtonTopA:link:after, a.linkButtonTopA:visited:after {
	position: absolute;
	font-size: 80%;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: calc(1.5em + 0.15625vw);
	height: calc(1.5em +0.15625vww);
	line-height: 1.5em;
	text-align: center;
	border: 0.15625vw solid #48BB7D;
	border-radius: 50%;
	color: #48BB7D;
	top: 50%;
	border-radius: 50%;
	background-color: #FFFFFF;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 2em;
}

a.linkButtonTopB {
	display: flex;
	align-items: center;
	max-width: 100%;
	min-height: 4em;
	font-size: 136.3636363636364%;	/* 30px / 22px */
	font-weight: 500;
	line-height: 1.1;
	padding: 1em 3.5em 1em 2em;
	text-align: left;
}

a.linkButtonTopB span {
	color: #333333;
	font-size: 70%;	/* 30px / 22px */
	font-weight: 400;
}

a.linkButtonTopB:link, a.linkButtonTopB:visited {
	position: relative;
	background: #FFFFFF;
	color: #2c73db;
	text-decoration: none;
	border-radius: 4em;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
}
a.linkButtonTopB:hover {
	background: #2c73db;
	color: #FFFFFF;
}

a.linkButtonTopB:hover span {
	color: #FFFFFF;
}

a.linkButtonTopB:link:after, a.linkButtonTopB:visited:after {
	position: absolute;
	font-size: 80%;
	font-family: FontAwesome;
	content: '\f061';
	display: inline-block;
	width: calc(1.5em + 0.15625vw);
	height: calc(1.5em +0.15625vww);
	line-height: 1.5em;
	text-align: center;
	border: 0.15625vw solid #2c73db;
	border-radius: 50%;
	color: #2c73db;
	top: 50%;
	border-radius: 50%;
	background-color: #FFFFFF;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	right: 2em;
}


/* ◆診療医紹介◆ */

/* センター長など */
.cdName {
	font-size: 136.3636363636364%;	/* 30px / 22px */
	color: #000;
	font-weight: 500;
	line-height: 1.2em;
}

.doctorInfo {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	gap: 30px;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.doctorInfo >  li {
	width: calc(50% - 30px);
	margin: 0;
	padding: 0;
}

.doctorInfo details summary {
	cursor: pointer;
	width: 100%;
	font-size: 136.3636363636364%;	/* 30px / 22px */
	color: #000;
	font-weight: 500;
	line-height: 1.2em;
	background: #f3eae2;
	margin: -0.2em 0 0.3em 0;
	padding:  0.35em 2em 0.35em 0.75em;
	border-left: 0.28125em solid #2c73db;
	border-bottom: 1px solid #2c73db;
	position: relative;
}

.doctorInfo details summary span.kana {
	font-size: 70%;
}

.doctorInfo details summary::-webkit-details-marker {
	display: none;
}
.doctorInfo details summary::after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f107';
	color: #2c73db;
	top: 50%;
	transform: translateY(-50%);
	right: 1em;
}
.doctorInfo details[open] summary::after {
	content: '\f106';
}

.doctorInfo details {
	&::details-content {
		@media (prefers-reduced-motion: no-preference) {
			transition-duration: 300ms;
			transition-property: content-visibility, opacity;
			transition-behavior: allow-discrete;
		}
	}

	&:not([open])::details-content {
		opacity: 0;
	}
}

.doctorInfoFlex {
	display: flex;
	justify-content: space-between;
}
.doctorImageArea {
	width: 100%;
	margin: 1em auto 0 1em;
	aspect-ratio: 1/1;
	order: 2;
	flex-basis: calc(33% + 1em);
}
.doctorInfoImageArea img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.doctorTextArea {
	width: 100%;
	margin: 1em 0 0 1.36em;
	order: 1;
	flex-basis: auto;
}

.doctorInfo dl {
	padding-left: 1.36.3636363636364em;
}
.doctorInfo dt {
	width: 100%;
	display: block;
	color: #2C73DB;
	font-size: 113.6363636363636%;	/* 25px / 22px */
	font-weight: 500;
	line-height: 1.2em;
	margin: -0.2em 0 0.55em 0;
	padding: 0 0 0 1.26666em;
	position: relative;
}
.doctorInfo dt::before {
	position: absolute;
	content: "";
	display: block;
	width: 0.93333em;
	height: 0.15em;
	background: #2c73db;
	top: 50%;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	left: 0;
}

.doctorInfo dd {
	margin: 0 0 1.2em 0;
	padding: 0;
}


/* ◆よくある質問◆ */

.summary1 {
	cursor: pointer;
	width: 100%;
	font-size: 136.3636363636364%;	/* 30px / 22px */
	color: #000;
	font-weight: 500;
	line-height: 1.2em;
	background: #f3eae2;
	margin: 0 0 0 0;
	padding:  0.35em 2em 0.35em 0.75em;
	border-left: 0.28125em solid #2c73db;
	border-bottom: 1px solid #2c73db;
	position: relative;
}
.summary1::-webkit-details-marker {
	display: none;
}
.summary1::after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f107';
	color: #2c73db;
	top: 50%;
	transform: translateY(-50%);
	right: 1em;
}
details[open] .summary1::after {
	content: '\f106';
}

.summary2 {
	cursor: pointer;
	max-width: 100%;
	font-size: 136.3636363636364%;	/* 30px / 22px */
	color: #000;
	font-weight: 500;
	line-height: 1.2em;
	background: #FFFFFF;
	margin: 0 0 0 0;
	padding:  0.35em 2em 0.35em 0.75em;
	border-left: 0.28125em solid #2c73db;
	border-bottom: 1px solid #2c73db;
	position: relative;
	box-sizing: border-box;
}

.summary2:first-child {
	margin-top: 1em;
}

.summary2::-webkit-details-marker {
	display: none;
}
.summary2::after {
	position: absolute;
	font-family: FontAwesome;
	content: '\f107';
	color: #2c73db;
	top: 50%;
	transform: translateY(-50%);
	right: 1em;
}
details details[open] .summary2::after {
	content: '\f106';
}

.questionArea > details {
	margin-bottom: 1.36em;
}

.questionArea > details details {
	padding-left: 2em;
	margin-bottom: 1em;
}

.questionArea details {
	&::details-content {
		@media (prefers-reduced-motion: no-preference) {
			transition-duration: 300ms;
			transition-property: content-visibility, opacity;
			transition-behavior: allow-discrete;
		}
	}

	&:not([open])::details-content {
		opacity: 0;
	}
}

.summary3 {
	max-width: 100%;
	color: #000;
	background: #FFFFFF;
	margin: 0 0 0 0;
	padding:  1em;
}

/* ◆カード◆ */

.card {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.cardItem {
	width: calc(33.3% - 30px);
	background: #fff;
	margin: 0;
	padding: 1em 0 1em 0;
}
.cardFlexCover {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0.5em;
}
.cardImageArea {
	width: 33%;
	margin: 0 auto;
	aspect-ratio: 1/1;
}
.cardImageArea img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.cardTextArea {
	width: 67%;
	margin: 0 auto;
	padding-left: 1em;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.cardImageArea img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cardItem p {
	margin-top: 0;
	margin-bottom: 0.5em;
}

.cardTitle {
	font-size: 136.3636363636364%;	/* 30px / 22px */
	margin-top: 0;
	margin-bottom: 0.5em;
}

.kana {
	font-size: 70%;
}

.card dl {

}
.card dt {
	font-size: 113.6363636363636%;	/* 25px / 22px */
	margin: 0.5em 0;
	padding: 0 0 0.125em 0;
	width: 100%;
	display: block;
	color: #2C73DB;
	border-bottom: 1px solid #2C73DB;
}

.card dd {
	margin: 0;
	padding: 0;
}

/* ◆出生前検査（NIPT）のご案内◆ */

.niptBoardLine {
	border: none;
	border-left: 2px solid #000000;
}

/* ◆モーダルウィンドウ◆ */

.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4);
}
.modal-content {
  background-color: #fefefe;  /* モーダルウィンドウの背景色 */
  margin: 15% auto;
  padding: 20px;
  border: 1px solid #888888;
  width: 80%;  /* モーダルウィンドウの横幅 */
  max-width: 940px;
}
.modal-title {
  color: #800000; /* モーダルウィンドウの文字の色 */
  font-size: 18px; /* モーダルウィンドウの文字の大きさ */
  font-weight: bold;
  line-height: 200%;
  text-align: center;
}
.close-button {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}
.close-button:hover,
.close-button:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

.modal-content img {
	max-width: 100%;
	height: auto;
}

/* -----------------------------------
■レスポンシブ対応
----------------------------------- */

.smOnly, .smOnly2 {
	display: none;
}

/* ~~ スマホ ~~ */
@media screen and (max-width:767px) {

	html {
/*		font-size: 200%;*/
/*		font-size: 24px;*/
		font-size: 29px;

	}
	
	.pcOnly {
		display: none;
	}

	.smOnly {
		display: inline;
	}
	.smOnly2 {
		display: block;
	}
	
	.contentsNest {
		font-size: 100%;
	}

	/* スマホ時テーブルのスクロール */
	.table-scroll, .table-scroll2 {
		-webkit-overflow-scrolling: touch;
		overflow: auto;
		overflow-y: auto!important;
		margin-bottom: 45px;
		width:100%;
	}
	.table-scroll:before, .table-scroll2:before {
		content: "※左右にフリックすると表がスライドします。";
	}
	.table-scroll table{
		min-width: 1100px;
	}
	.table-scroll2 table{
		min-width: 1600px;
	}
	.scroll_w1500 table{
		min-width: 1500px;
	}
	.table-scroll table:first-child, .table-scroll2  table:first-child{
		margin-top: 10px;
	}
	.table-scroll table:last-child, .table-scroll2  table:last-child{
		margin-bottom:0;
	}


	/* 基本レイアウト */
	h1 {
		font-size: 180%;
	}
	h2 {
		font-size: 166.6666666666667%;	/* 40px / 24px */
	}

	p {
		line-height: 2;
	}


	/* □ファイルアイコンの自動表示 */
	a:not(.noIcon)[href$=".pdf"]:after,
	span.markPdf:after{
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconPdf2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".doc"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconDoc2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".docx"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconDocx2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".xls"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconXls2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".xlsx"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconXlsx2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".csv"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconCsv2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".zip"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconZip2.gif) no-repeat center right;
	    background-size: contain;
	}

	/* 表組：透明（レスポンシブ：段組み解除） */
/*	.tableDesignClear, .tableDesignClear tbody {
		display: block;
	}
	.tableDesignClear tr {
		display: block;
		padding: 0 0 1.0em 0;
	}
	.tableDesignClear tr:last-child {
		padding: 0 0 0 0;
	}
	.tableDesignClear th, .tableDesignClear td {
		display: block;
		padding: 0 0 0.3em 0;
	}
	.tableDesignClear th:first-child, .tableDesignClear td:first-child {
		padding-right: 0;
	}
	.tableDesignClear th:first-child{
		font-weight: 500;
	}
	.tableDesignClear tr:last-child th, .tableDesignClear tr:last-child td {
		padding-bottom: 0.3em;
	}
	.tableDesignClear tr:last-child th:last-child, .tableDesignClear tr:last-child td:last-child {
		padding-bottom: 0;
	}*/

	/* グーグルマップ */
	.googleMap {
		height: 0;
		overflow: hidden;
		padding-bottom: 133.333%;
		position: relative;
	}
	
	#pageTop {
		right: 1em;
		bottom: 5.0em;
	}
	#pageTop img{
		width: 80px;
		height: auto;
	}

	/* ヘッダー */
	header {
/*		padding: 29px 0 14px 0;*/
		padding: 20px 0 0 0;
	}
	.headerNest {
		width: 93.65216%;
		width: 100%;
		padding: 0 0 0 0;
	}
	.hLogo{
		display: block;
/*		width: 58px;	基準サイズの参照用に元のサイズを残す*/
		width: 75px;
		width: 90px;
	}
	.hTitle{
		display: block;
/*		width: 293px;	基準サイズの参照用に元のサイズを残す*/
		width: 377px;
		width: 452px;
	}

	.headerToolArea{
		display: none;
	}

	.toolFlexBox {
		justify-content: center;
		color: #FFFFFF;
		font-size:80%;
		
		flex-wrap: wrap;
		gap: 1em 0;
	}
	.toolFlexBox > div {
		width:30%;
		margin:0 0 0 1em;
		padding: 0 0.5em 0 0;
		text-align: right;
	}
	.naviFont, .naviTheme {
		font-size:125%;
		width:60%!important;
		margin:0 1em 0 0!important;
		padding: 0 0 0 0;
	}
	.naviFont ul, .naviTheme ul {
		justify-content: flex-start;
	}
	.naviFont span a {
		background: #FFFFFF;
		padding: 0.5em;
	}
	.naviFont {
	}
	.naviTheme span a {
		padding: 0.5em 1.0em 0.6em;
	}

	/* スマホ時ヘッダ固定対応 */
	.menuAreaCover {
/*		display: none;*/
		font-size: 83.33333333333333%;
		font-size: 100%;
		overflow-y: scroll;
		max-height: 0;
		height: 0;
	}
	.menuAreaCover.active {	/* 複数クラスを満たすとき */
/*		display: block;*/
		max-height: 100%;
		height: 100%;
	}

	/* 検索 */
	.searchArea {
		width: auto;
		height: auto;
		padding: 0.2em 0;
		position: relative;
	}
	.searchWrap{
		position: relative;
		z-index: 99;
		width: 100%;
		top: 0;
		left: 0;
		padding: 0;
	}
	.headerSearch{
		pointer-events: auto;
		display: block;
		width: 100%;
		opacity: 1;
	}


	#js-search{
		cursor: auto;
	}

	/* ハンバーガーメニューを100%で表示するため .headerFlexをwidthを93.65216%に指定できない。
	　　そのため中の領域の左右のmarginにスペースを付けて疑似的に再現*/
	.headerFlex > div:first-child {
		margin-left: 3.17392%;
		margin-bottom: 30px;
	}
	.smIconFlex{
/*		display: flex;
		margin-right: 3.17392%;
		margin-bottom: 40px;*/
		display: block;
		position: fixed;
		top: 15px;
		right: 15px;
		z-index: 1000;
	}

	.mainMenuButton {
		display: block;
	}
	.headerBlockMenu{
		display: none;
		width: 100%;
	}	

	/* コンテンツ */
	.headerSpaceIn{	/* 中面用のヘッダーまでの空き */
		margin: 3.129074315514993vw auto 3.385416666666667vw;
	}

	/* フッター */
	footer{
		padding: 0 0 0 0;
	}
	
	.footerNest{
		width: 100%;
		margin: 0 auto;
		padding: 1.090909090909091em 0 165px 15px;
		padding: 1.4em 0 185px 15px;
		font-size: 91.66666666666667%;	/* 22px / 24px  */
		font-size: 76.38833333333334%;	/* 22px / 24px  */
		overflow: hidden;
	}
	
	.fHospital{
		font-size: 90.90909090909091%;	/* 20px / 22px */
		position: static;
		text-align:center;
		margin-bottom: 1em;
		margin-bottom: 1.5em;
		line-height: 1.8em;
	}
	.footerTitle{
		margin-bottom: 0.1em;
	}
	.fLogo{
		display: block;
		width: 4.409090909090909em;	/* 97px / 22px */
	}
	.fTitle{
		display: block;
		width: 17.95454545454545em;	/* 395px / 22px */
	}
	.fTel > a > img{
		width: 18.04545454545455em;	/* 397px / 22px */
	}
	.footerAddress{
		padding: 0 0 0 4.409090909090909em;
/*		margin-bottom: 0.1em;*/
	}
	.fTel{
		padding: 1.0em 0 0 4.409090909090909em;
	}

	.fLine{
		position: absolute;
		width: 200px;
		right: -15px;
		bottom: 220px;
		bottom: 265px;
	}

	
	.footerFlex {
		display: block;

		width: 90%;
		max-width: 1260px;	
		margin: 0 auto;
		padding: 0;

	}
	.footerFlex > div:first-child {
		font-size: 83.33333333333333%;	/* 20px / 24px  */
		line-height: 1.5em;
		margin-bottom: 85px;
		text-align: center;
	}
	.footerFlexIn{
		gap: 0 1em;	
		font-size: 91.66666666666667%;	/* 22px / 24px */
	}
	.footerFlexIn > div:first-child > div:last-child {
		padding-left: 3.545454545454545em;
	}
	
	.smFooterMenu{
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 900;

		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
		gap: 0 1.5em;
		width: 100%;
		
		background: #FFFFFF;
		box-shadow: 0px -1px 4px 4px #E6E6E6;
		font-size: 70.83333333333333%;		/* 17px / 24px */
		padding: 20px 0 20px 0;
	}
	.smFooterMenu > div{
		text-align: center;
		width: calc(25% - 6em);
		min-width: 7em;
		color: #2c73db;
	}
	.smFooterMenu a:link, .smFooterMenu a:visited {
		color: #2c73db;
		text-decoration: none;
	}
	.smFooterMenu a:hover, .smFooterMenu a:active, .smFooterMenu a:focus {
		color: #2c73db;
		text-decoration: none;
	}

	.langAreaSM{
		border:1px solid #666666;
		background: #FFFFFF;
		position:absolute;
		bottom: calc(1.5em + 59px + 18px + 10px);
		left: -2.0em;

		width: 31em;
		padding: 1.2em 1.2em 1.3em;
		z-index: 100;
	}

	ul.langList{
		list-style-type: none;
		margin: 0;
		padding: 0;
		font-size: 100%;
	}
	ul.langList > li{
		margin: 0 0 1.0em 0;
		padding: 0;
		text-align: left;
	}
	ul.langList > li:last-child{
		margin: 0;
	}
	ul.langList a:link, ul.langList a:visited {
		color: #000000;
		text-decoration: none;
	}
	ul.langList a:hover, ul.langList a:active, ul.langList a:focus {
		color: #000000;
		text-decoration: none;
	}


	/* トップページ */

	/* ◆スライドエリア◆ */
	.sliderCover{
		line-height: 0;
		width: 100%;
	}
	.sliderArea {
		position: relative;
		margin: 0 auto 0 auto;
	}
	.slideText{
		width: 100%;
		position: relative;
		top: 0;
		left: 0;
		background-image: linear-gradient(transparent, #ffffff 10% 100%);
		transform: translateY(0);
		margin-top: -200px;
		padding: 180px 1em 120px 1em;
	}
	.slideText > .stMain{
		font-size: 158.3333333333333%;	/* 38px / 24px */
		margin: 0 0 0.2em 0;
		line-height: 1.5em;
		text-align: center;
		color: #2c73db;
	}
	.slideText > .stMain br{
		display: none;
	}
	.slideText > .stSub{
		font-size: 91.66666666666667%;	/* 22px / 24px */
		text-align: center;
	}
	

	/* ■スライダー：slick用スタイル */
	.contentsNestSlick {	/* slickを使用しているエリア専用 */
		padding: 80px 0 60px;
	}
	.slick-slide {
		margin: 0 15px;
		line-height: 1.4em;
	}
	
	/* 矢印 */
	.slick-arrow {	/* 左右のボタン画像指定 */
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.prev-arrow {
		cursor: pointer;
		left: 45px;
		z-index: 10;
	}
	.next-arrow {
		cursor: pointer;
		right: 45px;
	}
	
	/* コンテンツの調整 */
	.multiple-item { /* slickの上下のスペースdotsを使う場合はpaddingを使用しない */
		margin: 0 50px 30px;
		padding: 0;
	}

	/* トップアイコン部 */
	.contentsIconArea{
		width: 47.19687092568449vw;
		top: calc(50% - 80px);
		transform: translateY(-50%);
	}

	.topIconBoard{
		width: 100%;
		min-height: 11.99478487614081vw;
		padding: 1.04302477183833vw;
		border-radius: 11.99478487614081vw 0 0 11.99478487614081vw;
		margin: 4.5632333767927vw 0;
	}

	.topIconBoard a{
		padding-right: 0.75em;
	}

	.topIconBoard img{
		max-width: 11.99478487614081vw;
	}

	.topIconBoard .mainWord{
		font-size: 24px;	/* 24px / 24px */
	}

	.topIconBoard .subWord{
		font-size: 14px;	/* 14px / 24px */
	}

	/* お知らせ */
	.contentsBackInfo {
		padding: 13.6897001303781vw 0 32.59452411994785vw 0;	/* 105/767、250/767 */
		background: linear-gradient(to bottom, rgba(246,239,233,1) 0%, rgba(246,239,233,0) 23%) ,url(images/home/bg_info_sm.jpg);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center bottom;
	}
	.topInfoBack{
		width: 100%;
		background: center bottom url(images/common/top_info_back.svg) no-repeat;
		background-size: contain;
		min-height:none;
		margin: 0 auto;
		padding: 0 0 205px 0;
	}
	.topInfoFlex{
		display: block;
		padding: 80px 12px 35px;
		background: transparent;
	}
	.topInfoFlex > div{
	}
	ul.topInfoMainFlex{
		margin: 0;
		padding: 0 20px;
	}
	ul.topInfoMainFlex > li{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		gap: 0.1em 0.66666em;
		width: 100%;

		line-height: 1.6em;
		margin: 0 0 1.6em;
	}
	ul.topInfoMainFlex > li > div{
		font-size: 95.83333333333333%;	/* 23px / 24px */
	}
	ul.topInfoMainFlex > li > div.infoTitle{
		width: 100%;
		margin: 0.5em 0;
		flex: auto;
	}
	.listArea ul.topInfoMainFlex > li > div.infoTitle{
		flex: auto;
	}

	ul.topInfoMainFlex > li > div.infoDay{
		font-size: 100%;	/* 24px */
	}
	ul.topInfoMainFlex > li > div.infoCategory{
		font-size: 75%;	/* 18px / 24px */
	}

	
	.infoCaption{
		width: 100%;
		text-align: center;
		margin: 1.976190476190476em 0 1.976190476190476em 0;	/* 83px / 42px */
	}
	
	.topInfo .tab-contents{
		padding: 2em 0.5em;
		background: #FFFFFF;
	}
	
	/* 診療科・部門のご紹介 */
	.contentsShinryobumonArea{
		padding: 95px 0 0 0;
	}
	.contentsShinryobumonArea .contentsNest{
		width: 100%;
	}
	.contentsKeyArea{
		display: block;
		margin: 0 auto 85px;
	}
	.contentsKeyArea > div{
		width: 100%;
		margin-bottom: 13px;
	}
	
	.topShinryobumonFlex{
		gap: 1em 1%;
	}
	.topShinryobumonFlex > div{
		width: 49.5%;
	}

	.topShinryobumonButton{
		text-align: center;
	}

	.topSaiyoBack {
		padding: 2.5em 0 2.5em;	/* 60px /24px */
	}
	.topSaiyoFlex{
		display: block;
		background: none;
		font-size: 83.33333333333333%;	/* 20px / 24px ベース */
		border: none;
		box-shadow: none;
	}
	.topSaiyoFlex:after {
		display: none;
	}
	.topSaiyoFlex:hover{
		border: none;
	}
	.topSaiyoFlex > div{
		-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
		-moz-transition: all 0.5s ease-out;  /* FF4+ */
		-ms-transition: all 0.5s ease-out;  /* IE10? */
		-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
		transition: all 0.5s ease-out;
	}
	.topSaiyoFlex > div:nth-child(2){
		border-top: 1px solid #FFFFFF;
		border-left: 1px solid #FFFFFF;
		border-right: 1px solid #FFFFFF;
	}
	.topSaiyoFlex > div:last-child{
		border-left: 1px solid #FFFFFF;
		border-right: 1px solid #FFFFFF;
		border-bottom: 1px solid #FFFFFF;
	}
	.topSaiyoFlex:hover > div:nth-child(2){
		border-top: 1px solid #2c73db;
		border-left: 1px solid #2c73db;
		border-right: 1px solid #2c73db;
	}
	.topSaiyoFlex:hover > div:last-child{
		border-left: 1px solid #2c73db;
		border-right: 1px solid #2c73db;
		border-bottom: 1px solid #2c73db;
	}
	.topSaiyoFlex a {
		padding: 0;
	}
	.topSaiyoCaption{
		font-size: 175%;	/* 35px / 20px */
		text-align: center;
		margin-bottom: 0.5714285714285714em;
	}
	.tscSub{
		display: block;
		color: #2c73db;
		font-size: 40%;	/* 14px / 35px */
		padding: 0.9em 0 0 0;
	}
	.topSaiyoImg{
		display: block;
		line-height: 0;
	}
	.topSaiyoImg img:hover{
		opacity: 1.0;
	}
	.topSaiyoSubFlex{
		background: #FFFFFF;
	}
	.topSaiyoSubCaption{
		display: block;
		font-size: 140%;	/* 28px / 20px */
		min-width: 8em;
		text-align: center;
	}
	.topSaiyoSubCaption a{
		padding: 1.071428571428571em 0;
	}
	.topSaiyoSubCaption a:link, .topSaiyoSubCaption a:visited, .topSaiyoSubCaption a:visited{
		color: #2c73db;
	}
	.topSaiyoMain{
		width: 100%;
	}
	.topSaiyoMain > a{
		padding: 1.6em 0 0 0;
	}

	.topOtherBack {
		padding: 85px 0 85px 0;
	}
	.topOtherIconFlex {
		gap: 1.1875em 0.6875em;	/* 19px / 16px */
	}
	.topOtherIconFlex > div {
		width: 13em;
	}

	.topOtherIconFlex2 {
		gap: 2em 1em;
		margin-bottom: 0;
	}

	.topOtherBannerFlex {
		width: 85%;
	}
	.topOtherBannerFlex > * {
		width: calc((100% - 2em * 1) / 2);
		text-align: center;
	}

	/* コンテンツエリア */
	.contentsBox{
		padding: 45px 30px 60px;
	}
	/* タイトル */
	.titleCover > div{
		padding: 1.6em 0 1.75em 2.817em;
	}
	.titleCover > div:before{
		width: 1.777em;
		left: 0.47em;
	}
	.titleCover > div:after{
		width: 3.0em;
		right: 0em;
	}

	/* ◇中面◇ */

	.linkButtonA{
		display: block;
	}
	.linkButtonA > div, .linkButtonA > li {
		width:100%;
		margin-bottom:1em;
	}

	.linkButtonB{
		display: block;
	}
	.linkButtonB > div, .linkButtonB > li {
		width:100%;
		margin-bottom:1em;
	}

	.linkButtonC{
		display: block;
	}
	.linkButtonC > div, .linkButtonC > li {
		width:100%;
		margin-bottom:1em;
	}

	.linkButtonD{
		display: block;
	}
	.linkButtonD > div, .linkButtonD > li {
		width:100%;
		margin-bottom:1em;
	}
	
	.dcCover{
		display: block;
	}
	.dcCover .linkButtonC{
		width: 100%;
	}
	.dcCover .linkButtonD{
		width: 100%;
	}

	.linkButtonTop {
		display: block;
		width:100%;
	}
	.linkButtonTop > a, .linkButtonTop > li {
		width:100%;
		margin-bottom:1em;
	}
	a.linkButtonTopA {
		font-size: 125%;	/* 30px / 24px */
	}
	a.linkButtonTopB {
		font-size: 125%;	/* 30px / 24px */
	}

	/* ◆診療医紹介◆ */

	.doctorInfo li {
		width: 100%;
	}

	/* ◆カード◆ */

	.card {
		font-size: 80%;
		display: block;
	}
	.cardItem {
		width: 100%;
		margin-bottom: 2em;
	}
	.cardImageArea {
		width: 25%;
	}
	.cardTextArea {
		width: 75%;
	}

	/* ◆出生前検査（NIPT）のご案内◆ */

	.niptBoardLine {
		border: none;
		border-top: 2px solid #000000;
	}

 	/* ◆職員募集のボタン生成テーブル◆ */
	.tableDesingRecruit th, .tableDesingRecruit td {
		display: block;
		width: 100%; /* ブレイクポイントで幅が異なる場合は忘れずに！ */
	}

}

/* ~~ slick スマホ ~~ */
@media screen and (max-width:767px) {
	/*IEのみ対策*/
	@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
		.multiple-item li img {
				height: auto;
		}
	}
}


h2 + h2{
	margin-top:64px;
}
p + h2{
	margin-top:64px;
}
ul + h2{
	margin-top:64px;
}
ol + h2{
	margin-top:64px;
}
table + h2{
	margin-top:64px;
}
div.table-scroll + h2,
div.table-scroll2 + h2,
div.googleMap + h2 {
	margin-top:64px;
}

h3 + h3{
	margin-top:64px;
}
p + h3{
	margin-top:64px;
}
ul + h3{
	margin-top:64px;
}
ol + h3{
	margin-top:64px;
}
table + h3{
	margin-top:64px;
}
div.table-scroll + h3,
div.table-scroll2 + h3,
div.googleMap + h3 {
	margin-top:64px;
}

h4 + h4{
	margin-top:64px;
}
p + h4{
	margin-top:64px;
}
ul + h4{
	margin-top:64px;
}
ol + h4{
	margin-top:64px;
}
table + h4{
	margin-top:64px;
}
div.table-scroll + h4,
div.table-scroll2 + h4,
div.googleMap + h4 {
	margin-top:64px;
}

h5 + h5{
	margin-top:64px;
}
p + h5{
	margin-top:64px;
}
ul + h5{
	margin-top:64px;
}
ol + h5{
	margin-top:64px;
}
table + h5{
	margin-top:64px;
}
div.table-scroll + h5,
div.table-scroll2 + h5,
div.googleMap + h5 {
	margin-top:64px;
}
p + table{
	margin-top:1.0em;
}

/* ↓から必要なものは↑に入れる　不要なものは最終的に削除 ------------------------------------------------------*/


/* -----------------------------------
□□未整理
----------------------------------- */


/* ◆罫線◆ */

/* 罫線：A */
.hrDesignA {
	border: none;
	margin: 30px auto;
	border-bottom: 4px solid #090;
}

/* ◆キャッチコピー◆ */
.catchCopyArea {
	display: block;
	width: 100%;
	padding: 0.5em;
	background-color: #99CC00;
	color: #FFF;
}

/* ◆アイキャッチ画像◆ */
.eyeCatchArea img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto 30px auto;
}

/* ◆リンクエリア◆ */
.linkArea {
	display: block;
	width: 100%;
	text-align: right;
}
.linkArea a {
	text-decoration: none;
	display: inline-block;
	width: auto;
	margin: 0 0 1em 1em;
	padding: 0.5em 1em;
	background-color: #99CC00;
	color: #FFF;
	border-radius: 5px;
}


/* ~~ スマホ ~~ */
@media screen and (max-width:767px) {
	
	.contentsFlexContainer {
		display: block;
	}

	/* ----- WPシステム関連 ----- */
	img.alignright,
	img.alignleft,
	img.aligncenter {
		display: block;
		float:none;
		margin-left: auto;
		margin-right: auto
	}

	/* ◆ページネーション◆ */
	.pagination {
		margin: 60px 0;
		font-size: 26px;
	}

	.pagination span, .pagination a {
		margin: 8px;
		padding: 16px;
		line-height: 32px;
	}

	/* ページ番号 */
	.pagination .pager{
		width: 64px;
	}

	/* 前へ */
	.pagination a.prev {
		margin-right: 32px;
	}
	/* 次へ */
	.pagination a.next {
		margin-left: 32px;
	}

	/* ----- クリップボード専用 ----- */

	/* ◇汎用Flex◇ */

	.flexAreaA{
		display: block;
	}
	.flexAreaA > *{
		width: 100%;
		padding-bottom: 0.5em;
	}
	.flexAreaA > *:nth-child(odd){
		width: 100%;
	}
	.flexAreaA > *:last-child{
		padding-bottom: 0;
	}

	.flexAreaB{
		display: block;
	}
	.flexAreaB > *{
		width: 100%;
		padding-bottom: 0.5em;
	}
	.flexAreaB > *:nth-child(odd){
		width: 100%;
	}
	.flexAreaB > *:last-child{
		padding-bottom: 0;
	}

	.flex2Area, .flex3Area, .flex4Area {
		gap: 1em;
	}
	.flex2Area > div, .flex3Area > div, .flex4Area > div,
	.flex2Area > li, .flex3Area > li, .flex4Area > li {
		width: 100%;
	}
 	.flex6Area{
		gap: 1em;
	}
	.flex6Area > div, .flex6Area > li {
		width: calc((100% - 1em * 1) / 2);
	}

}

/* ~~ 上書きPC ~~ */
@media screen and (min-width:768px) {

    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }

}