@charset "UTF-8";
/* ======================================================
医療機関の方へ（profession）
ブレイクポイント: 1001px
====================================================== */


/* ======================================================
共通（PC / SP）
====================================================== */
.note {
	font-size: 14px;
}
.note1 {
	font-size: 16px;
}

/* 受診までの流れ：各ステップ内テキストは中央寄せ */
#renkei .flow_box__step,
#renkei .flow_box__step p {
	text-align: center;
}
.flow_box__act {
	font-weight: 500;
	/* margin-bottom: 0.4em; */
	text-align: center;
}


/* ======================================================
PC
====================================================== */
@media (min-width: 1001px) {

	/* アンカーナビ
	---------------------------------------------------------------------- */
	#ancselect .anclist {
		gap: 2%;
		margin-bottom: 100px;
	}
	.anclist li {
		width: 32%;
	}

	/* box_grid2 / box1
	---------------------------------------------------------------------- */
	.box_grid2 {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 40px 3%;
		margin-bottom: 20px;
	}
	.box_grid2 .box1 {
		width: 48%;
		margin-bottom: 0;
	}
	.box1 {
		border: 1px solid var(--primary-color);
		border-radius: 20px;
		overflow: hidden;
		background-color: #fff;
		margin-bottom: 40px;
	}
	.box1__ttl {
		background-color: #ffe2e4;
		border-bottom: 1px solid var(--primary-color);
		color: var(--primary-color);
		font-size: 2.4rem;
		font-weight: 400;
		text-align: center;
		line-height: 1.5;
		padding: 0.5em 0;
	}
	.box1__body {
		padding: 1.1em 1.5em;
		font-size: 1.6rem;
		line-height: 1.33334;
	}
	.box1__body .list2 > li + li {
		/* margin-top: 0.4em; */
	}

	/* cnote（注意書き）
	---------------------------------------------------------------------- */
	.cnote {
		/* margin-bottom: 35px; */
		text-box-edge: cap alphabetic;
		text-box-trim: trim-start;
	}
	.cnote > li {
		font-size: 1.6rem;
		line-height: 2;
		/* margin-bottom: 12px; */

	}
	.cnote > li:last-child {
		margin-bottom: 0;
	}
	.cnote > li a {
		color: var(--secondary-color);
	}

	/* 各種用紙のダウンロード
	---------------------------------------------------------------------- */
	.dlList {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin-bottom: 20px;
	}
	.dlBox {
		width: 30.6%;
		display: flex;
		flex-direction: column;
		border: 1px solid var(--primary-color);
		border-radius: 16px;
		overflow: hidden;
		background-color: #fff;
	}
	.dlBox__ttl {
		background-color: #ffe2e4;
		border-bottom: 1px solid var(--primary-color);
		color: var(--primary-color);
		font-size: 2.4rem;
		font-weight: 400;
		text-align: center;
		line-height: 1.35;
		padding: 0.7em 0.5em;
	}
	.dlBox__body {
		flex: 1;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 20px;
		padding: 20px 0;
	}
	.dlBox .pdfbtn_wrap {
		width: 100%;
	}
	.dlBox .pdfbtn {
		width: 264px;
		max-width: 100%;
		height: 40px;
		padding: 0 1em;
		font-size: 1.5rem;
	}
	.dlBox .pdfbtn img {
		right: 16px;
		width: 22px;
		height: 24px;
	}

	/* 受診までの流れ（flow_box）
	---------------------------------------------------------------------- */
	.flow_box {
		position: relative;
		border: 1px solid var(--primary-color);
		border-radius: 20px;
		background-color: #fff;
		overflow: hidden;
		margin-bottom: 40px;
	}
	.flow_box__ttl {
		background-color: #ffe2e4;
		font-size: 2.4rem;
		font-weight: 400;
		line-height: 1.2;
		color: var(--primary-color);
		text-align: center;
		padding: 0.6em 2em;
		border-bottom: 1px solid var(--primary-color);
	}
	.flow_box__steps {
		display: flex;
		align-items: stretch;
	}
	.flow_box__step {
		position: relative;
		flex: 1;
		padding: 24px 16px;
		border-right: 1px solid var(--primary-color);

		/* ステップ内を縦方向のFlexboxにする */
		display: flex;
		flex-direction: column;
	}
	.flow_box__step:last-child {
		border-right: none;
	}
	.flow_box__num {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		margin: 0 auto 12px;
		border-radius: 50%;
		background-color: var(--secondary-color);
		color: #fff;
		font-size: 2.4rem;
		font-family: "Montserrat", sans-serif;
		font-weight: 500;
	}
	.flow_box__step .flow_box__step_ttl {
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1.3;
		margin-bottom: 0.4em;

		/* タイトル部分を2行分の高さに統一 */
		height: 2.6em;

		/* 1行の「患者さま」も上下中央に配置 */
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.flow_box__step p {
		font-size: 1.5rem;
		line-height: 1.5;
	}
	.flow_box__step .flow_box__act {
		font-size: 1.6rem;
	}

	/* スタッフ紹介テーブル
	---------------------------------------------------------------------- */
	.staffTbl.ctable {
		margin-bottom: 20px;
	}
	.staffTbl.ctable th {
		width: 40%;
		text-align: center;
		vertical-align: middle;
	}
	.staffTbl.ctable td {
		vertical-align: middle;
	}

	/* 連絡先ボックス（telBox）
	---------------------------------------------------------------------- */
	.telBox {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		gap: 4%;
	}
	.telBox__box {
		width: 48%;
		border: 1px solid var(--primary-color);
		border-radius: 40px;
		background-color: #fff;
		padding: 30px 24px 24px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.telBox__box > * {
		width: 100%;
		text-align: center;
	}
	.telBox__label {
		display: inline-block;
		width: auto;
		border: 1px solid var(--primary-color);
		font-size: 1.6rem;
		line-height: 1.3;
		padding: 0.08em 2em 0.12em;
		margin: 0 auto 0.4em;
	}
	.telBox__tel {
		font-family: "Montserrat", sans-serif;
		font-size: 3.6rem;
		font-weight: 500;
		line-height: 1.2;
	}
	.telBox__mail {
		font-size: 1.5rem;
		margin-top: 0.15em;
	}

	/* 障害者病棟：対象者リスト（2段組）
	---------------------------------------------------------------------- */
	.diseaseList {
		column-count: 2;
		column-gap: 48px;
	}
	.diseaseList > li {
		break-inside: avoid;
		line-height: 1.5;
	}
	.diseaseList > li + li {
		/* margin-top: 0.2em; */
	}
	#shougai .pdfbtn_wrap {
		margin-top: 40px;
	}
	#shougai .pdfbtn {
		width: 460px;
	}
	#renkei .flow_box + .pdfbtn_wrap {
		margin-top: 32px;
	}

	/* 関連ページカード
	---------------------------------------------------------------------- */
	#profNav .w1000 {
		border-top: 1px solid var(--primary-color);
		padding-top: 60px;
	}
	.navCards {
		display: flex;
		justify-content: flex-start;
		gap: 40px;
	}
	.navCards > li {
		width: 49%;
		border: 1px solid var(--primary-color);
		border-radius: 20px;
		overflow: hidden;
	}
	.navCards > li > a {
		display: flex;
		flex-direction: column;
		background-color: #fff;
		padding: 10px;
	}
	.navCards__thumb img {
		width: 100%;
		aspect-ratio: 47 / 7;
		object-fit: cover;
		border-radius: 10px;
	}
	.navCards__label {
		text-align: center;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1.4;
		margin: 16px 0 10px;
	}
	.navCards li a .arrow {
		padding: 5px 0;
		margin-bottom: 0;
	}
	.navCards li a .arrow__inner {
		height: 14px;
		align-items: center;
	}
	.navCards li a .arrow__inner img {
		display: block;
	}

}
/* ======================================================
/PC
====================================================== */


/* ======================================================
SP
====================================================== */
@media (max-width: 1000px) {

	/* unit3 下マージン（本ページ専用の上書き）
	---------------------------------------------------------------------- */
	.unit3 {
		margin-bottom: 8.66667vw;
	}

	/* アンカーナビ
	---------------------------------------------------------------------- */
	#ancselect .anclist {
		margin-bottom: 16vw;
	}
	.anclist li {
		width: 100%;
	}

	/* box_grid2 / box1
	---------------------------------------------------------------------- */
	.box_grid2 {
		display: block;
		/* margin-bottom: 6vw; */
	}
	.box_grid2 .box1 {
		width: 100%;
	}
	.box1 {
		border: 1px solid var(--primary-color);
		border-radius: 3vw;
		overflow: hidden;
		background-color: #fff;
		margin-bottom: 5.33334vw;
	}
	.box1__ttl {
		border-bottom: 1px solid var(--primary-color);
		background-color: #ffe2e4;
		color: var(--primary-color);
		font-size: 4.8vw;
		text-align: center;
		line-height: 1.3;
		padding: 2.93334vw 2vw;
	}
	.box1__body {
		padding: 3.46667vw;
		font-size: 3.46667vw;
		line-height: 1.6;
	}
	.box1__body .list2 > li + li {
		/* margin-top: 1.33334vw; */
	}

	/* cnote（注意書き）
	---------------------------------------------------------------------- */
	.cnote {
		margin-bottom: 5vw;
	}
	.cnote > li {
		font-size: 3.46667vw;
		line-height: 1.5;
		/* margin-bottom: 3vw; */
	}
	.cnote > li:last-child {
		margin-bottom: 0;
	}
	.cnote > li a {
		color: var(--secondary-color);
	}
	#renkei .paragraph1,
	#community .paragraph1 {
		font-size: 3.2vw;
	}
	#community .ch4_3 {
		line-height: 1.166667;
	}

	/* 各種用紙のダウンロード
	---------------------------------------------------------------------- */
	.dlList {
		display: block;
		margin-bottom: 5.33334vw;
	}
	.dlBox {
		border: 1px solid var(--primary-color);
		border-radius: 3vw;
		overflow: hidden;
		background-color: #fff;
		margin-bottom: 5.33334vw;
	}
	.dlBox:last-child {
		margin-bottom: 0;
	}
	.dlBox__ttl {
		background-color: #ffe2e4;
		border-bottom: 1px solid var(--primary-color);
		color: var(--primary-color);
		font-size: 4.8vw;
		font-weight: 400;
		text-align: center;
		line-height: 1.3;
		padding: 3vw 2vw;
	}
	.dlBox__body {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 4vw;
		padding: 4vw;
	}
	.dlBox__body .pdfbtn_wrap {
		margin-top: 0;
	}
	.dlBox .pdfbtn {
		width: 74.66667vw;
		max-width: 100%;
		height: 8vw;
	}

	/* 受診までの流れ（flow_box）
	---------------------------------------------------------------------- */
	.flow_box {
		position: relative;
		border: 1px solid var(--primary-color);
		border-radius: 4vw;
		background-color: #fff;
		overflow: hidden;
		margin-bottom: 4vw;
	}
	.flow_box__ttl {
		background-color: #ffe2e4;
		font-size: 4.8vw;
		font-weight: 400;
		color: var(--primary-color);
		text-align: center;
		padding: 3vw 4vw;
		border-bottom: 1px solid var(--primary-color);
		line-height: 1.4;
	}
	.flow_box__steps {
		display: flex;
		flex-direction: column;
	}
	.flow_box__step {
		position: relative;
		padding: 2.66667vw 4vw 5.33334vw;
		border-bottom: 1px solid var(--primary-color);
	}
	.flow_box__step:last-child {
		border-bottom: none;
	}
	.flow_box__num {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 7vw;
		height: 7vw;
		margin: 2.66667vw auto 2vw;
		border-radius: 50%;
		background-color: var(--secondary-color);
		color: #fff;
		font-size: 3.73334vw;
		font-family: "Montserrat", sans-serif;
		font-weight: 700;
	}
	.flow_box__step .flow_box__step_ttl {
		font-size: 4.8vw;
		font-weight: 400;
		text-align: center;
		line-height: 1.3;
		margin-bottom: 1.33334vw;
	}
	.flow_box__step p {
		font-size: 3.73334vw;
		line-height: 1.6;
	}

	/* スタッフ紹介テーブル
	---------------------------------------------------------------------- */
	.staffTbl.ctable {
		margin-bottom: 5.33334vw;
		table-layout: fixed;
	}
	.staffTbl.ctable th {
		width: 64vw;
		text-align: left;
		vertical-align: middle;
	}
	.staffTbl.ctable td {
		vertical-align: middle;
	}

	/* 連絡先ボックス（telBox）
	---------------------------------------------------------------------- */
	.telBox {
		display: block;
	}
	.telBox__box {
		width: 100%;
		border: 1px solid var(--primary-color);
		border-radius: 5.33334vw;
		background-color: #fff;
		padding: 4vw;
		margin-bottom: 4vw;
		text-align: center;
	}
	.telBox__box:last-child {
		margin-bottom: 0;
	}
	.telBox__box > * {
		text-align: center;
	}
	.telBox__label {
		display: inline-block;
		width: 34.66667vw;
		border: 1px solid var(--primary-color);
		font-size: 3.46667vw;
		line-height: 1.3;
		text-align: center;
		white-space: nowrap;
		padding: 0.05em 0 0.1em;
		margin: 0 auto 2vw;
	}
	.telBox__tel {
		font-family: "Montserrat", sans-serif;
		font-size: 6.4vw;
		font-weight: 500;
		line-height: 1;
	}
	.telBox__tel a {
		line-height: 1;
	}
	.telBox__mail {
		font-size: 3.2vw;
		margin-top: 2.66667vw;
		line-height: 1;
	}

	/* 障害者病棟：対象者リスト
	---------------------------------------------------------------------- */
	.diseaseList > li {
		line-height: 1.5;
	}
	.diseaseList > li + li {
		/* margin-top: 1.33334vw; */
	}
	#shougai .pdfbtn_wrap {
		margin-top: 6.66667vw;
	}
	#shougai .pdfbtn {
		width: 80vw;
	}

	/* 関連ページカード
	---------------------------------------------------------------------- */
	#profNav .w1000 {
		border-top: 1px solid var(--primary-color);
		padding-top: 8vw;
	}
	.navCards {
		display: flex;
		flex-direction: column;
		gap: 5.33334vw;
	}
	.navCards > li {
		width: 100%;
		border: 1px solid var(--primary-color);
		border-radius: 3vw;
		overflow: hidden;
	}
	.navCards > li > a {
		display: flex;
		flex-direction: column;
		background-color: #fff;
		padding: 4vw;
	}
	.navCards__thumb img {
		width: 100%;
		aspect-ratio: 67 / 10;
		object-fit: cover;
		border-radius: 1.33334vw;
	}
	.navCards__label {
		text-align: center;
		font-size: 4.26667vw;
		font-weight: 500;
		line-height: 1.4;
		margin: 2.66667vw 0 4vw;
	}
	.navCards li a .arrow__inner {
		height: 2.4vw;
		align-items: center;
	}
	.navCards li a .arrow__inner img {
		display: block;
	}

}
/* ======================================================
/SP
====================================================== */

/* 段落の最終行に「す。」だけが残らないようにする（20261027） */
#community p,
#iryobyoutou p,
#shougai p {
  text-wrap: pretty;
}
#community p .nowrap,
#iryobyoutou p .nowrap,
#shougai p .nowrap {
  white-space: nowrap;
}
