@charset "UTF-8";

/* =======================================================
   Sunmedic Theme - Sunhome Ogori CSS（完全整理版）
   条件：削除なし / 省略なし / SP（max-width系）は最下部に集約
   前提：表示結果基準（後勝ち・有効値のみを採用）
======================================================= */

/* =======================================================
   00. 基本レイアウト
======================================================= */
.sunhome {
	font-family: "Noto Sans JP", sans-serif;
	color: #333;
	line-height: 1.9;
}

.sh-section {
	padding: 0;
}

.sh-section:last-child {
	border-bottom: none;
}

.sh-inner {
	width: 92%;
	max-width: 980px;
	margin: 0 auto;
}

/* 見出し */
.sh-title {
	font-size: 32px;
	letter-spacing: 0.06em;
	margin-bottom: 35px;
	font-weight: 500;
	text-align: center;
	position: relative;
}

/* =======================================================
   01. HERO
======================================================= */
.sh-hero-text {
	text-align: center;
	padding: 90px 20px 70px;
	background: #fff;
}

.sh-hero-sub {
	font-size: 16px;
	color: #666;
	letter-spacing: 0.08em;
	margin-bottom: 12px;
}

.sh-hero-title {
	font-size: 38px;
	font-weight: 400;
	letter-spacing: 0.1em;
	margin-bottom: 18px;
}

.sh-hero-desc {
	font-size: 17px;
	color: #444;
	margin: 0;
	line-height: 1.9;
}

.sh-hero-image img {
	width: 100%;
	height: auto;
	display: block;
}

/* =======================================================
   02. 固定ナビ（通常）
======================================================= */
.sh-nav {
	width: 100%;
	margin: 0;
	padding: 20px 0;
}

/* 実HTML基準：grid */
.sh-nav-grid {
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	gap: 10px;
}

.sh-nav a {
	flex: 1;
	display: block;
	position: relative;
	background: #EEEEEE;
	color: #333;
	text-align: center;
	padding: 14px 10px;
	border-radius: 4px;
	font-size: 16px;
	text-decoration: none;
	overflow: hidden;
	transition: background .2s ease;
}

.sh-nav a::after {
	content: "";
	position: absolute;
	right: 16px;
	bottom: 8px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 18px 18px;
	border-color: transparent transparent #66CDAA transparent;
}

/* =======================================================
   03. 固定ナビ（PC hover）
======================================================= */
@media screen and (min-width: 800px) {
	.sh-nav a:hover {
		background: #e4e4e4;
	}
}

/* =======================================================
   04. 固定ナビ（追随：sticky）
======================================================= */
.sh-nav.is-fixed {
	position: sticky;
	top: 0;
	z-index: 999;
	background: #fff;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* =======================================================
   06. アクセス
======================================================= */
#access.sh-section {
	background: #E9F8F2;
	padding: 80px 20px 100px;
	text-align: center;
}

.sh-access-catch {
	font-size: 14px;
	color: #666;
	margin-bottom: 10px;
}

.sh-access-title {
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 20px;
	color: #333;
}

.sh-access-info {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 16px;
	color: #333;
}

.sh-access-info i {
	color: #66CDAA;
	font-size: 18px;
}

.sh-access-link {
	margin-left: 15px;
	font-size: 14px;
	color: #66CDAA;
	text-decoration: none;
}

.sh-access-link:hover {
	text-decoration: underline;
}

.sh-access-box {
	max-width: 900px;
	margin: 50px auto 0;
	background: #fff;
	padding: 40px 30px;
	border-radius: 12px;
	font-size: 16px;
	line-height: 1.9;
	color: #333;
	box-shadow: 0 3px 10px rgba(0,0,0,0.06);
}

/* =======================================================
   07. 施設紹介（#about）
======================================================= */
#about .sh-about-block {
	width: 100%;
	display: flex;
	align-items: center;
	margin: 100px 0;
	padding: 0;
}

#about .sh-about-img img,
#about .sh-about-img-full img {
	width: 100%;
	height: auto;
	display: block;
}

#about .sh-about-text h3,
#about .sh-about-text-full h3 {
	font-size: 30px;
	font-weight: 700;
	margin-bottom: 20px;
	letter-spacing: 0.03em;
	color: #333;
	text-align: left;
}

#about .sh-about-text p,
#about .sh-about-text-full p {
	font-size: 16px;
	line-height: 1.9;
	color: #444;
	margin-bottom: 16px;
	text-align: left;
}

#about .block-1 {
	width: 100%;
	display: flex;
	flex-direction: row;
	margin: 100px 0;
}

#about .block-1 .sh-about-img {
	width: 62%;
}

#about .block-1 .sh-about-text {
	width: 280px;
	padding-left: 40px;
}

#about .block-2 {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 4%;
	width: 100%;
	max-width: 640px;
	margin: 100px auto;
}

#about .block-2 .sh-about-text {
	width: 53%;
}

#about .block-2 .sh-about-img {
	width: 41%;
}

#about .block-3 {
	flex-direction: column;
	max-width: 1000px;
	margin: 120px auto;
}

#about .block-3 .sh-about-img-full img {
	margin-bottom: 20px;
}

#about .block-3 .sh-about-text-full {
	width: 100%;
}

/* =======================================================
   08. 職員体制（緑枠）
======================================================= */
.sh-green-box {
	border: 3px solid #66CDAA;
	border-radius: 10px;
	padding: 40px 30px;
	max-width: 1000px;
	margin: 60px auto;
	background: #fff;
}

.sh-green-box h3.sh-green-title {
	font-size: 24px;
	font-weight: 700;
	text-align: center;
}

.sh-green-box ul {
	padding-left: 0;
	list-style: none;
}

.sh-green-box ul li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 14px;
}

.sh-green-box ul li::before {
	content: "●";
	position: absolute;
	left: 0;
	top: 3px;
}

/* =======================================================
   09. 運営理念（グレー）
======================================================= */
.sh-gray-box {
	background: #f2f3f5;
	padding: 60px 40px;
	border-radius: 12px;
	max-width: 1000px;
	margin: 80px auto;
	text-align: center;
}

.sh-gray-box h3 {
	font-size: 28px;
	margin-bottom: 30px;
}
.sh-gray-box.is-show li {
	text-align:left;
	line-height:3;
}

/* =======================================================
   10. Feature（特徴）
======================================================= */
#feature {
	width: 100%;
	padding: 0;
}

.sunhome-feature-row {
	display: flex;
	width: 100%;
}

.sunhome-feature-img,
.sunhome-feature-text {
	flex: 0 0 50%;
	box-sizing: border-box;
}

.sunhome-feature-text {
	background: #E9F8F2;
	padding: 40px;
}

.sunhome-feature-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
@media screen and (max-width: 799px) {
	.sunhome-feature-row {
		flex-direction: column;
	}

	.sunhome-feature-img,
	.sunhome-feature-text {
		flex: 0 0 100%;
		width: 100%;
	}
}


/* =======================================================
   11. 木質ゾーン背景（ギャラリー / 施設概要 / 料金）
======================================================= */
#sunhome-gallery,
#outline,
#price {
	background: #F3EDE3;
	padding: 80px 0;
}

.sh-wood-title {
	color: #4A3B2A;
	text-align: center;
}

.sh-wood-title::after {
	content: "";
	width: 50px;
	height: 2px;
	background: #A67C52;
	display: block;
	margin: 10px auto 0;
}

/* =======================================================
   12. 施設概要テーブル
======================================================= */
.sh-outline-table {
	width: 92%;
	max-width: 900px;
	margin: 40px auto 0;
	border-collapse: collapse;
	font-size: 16px;
	color: #4A3B2A;
}

.sh-outline-table th,
.sh-outline-table td {
	padding: 18px 14px;
	border-bottom: 1px solid #A67C52;
}

.sh-outline-table th {
	width: 28%;
	background: #EFE7DD;
	font-weight: 600;
	text-align: left;
}

.sh-outline-table tr:last-child th,
.sh-outline-table tr:last-child td {
	border-bottom: none;
}

/* =======================================================
   13. ギャラリー
======================================================= */
.sunhome-gallery {
	width: 100%;
	overflow: hidden;
	padding: 1em 0 2em 0;
}

.sunhome-gallery-track {
	display: flex;
	gap: 20px;
	will-change: transform;
}

/* =======================================================
   14. チェキ風デザイン
======================================================= */
.sunhome-item {
	position: relative;
	flex: 0 0 260px;
	padding: 14px 14px 28px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.sunhome-item img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	border-radius: 6px;
}

.sunhome-item:nth-child(5n+1) { transform: rotate(-4deg); }
.sunhome-item:nth-child(5n+2) { transform: rotate(3deg); }
.sunhome-item:nth-child(5n+3) { transform: rotate(-2deg); }
.sunhome-item:nth-child(5n+4) { transform: rotate(5deg); }
.sunhome-item:nth-child(5n+5) { transform: rotate(-5deg); }

.sunhome-item::before {
	content: "";
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%) rotate(-2deg);
	width: 90px;
	height: 22px;
	background: rgba(255, 255, 150, 0.7);
	box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

/* =======================================================
   15. 料金ゾーン背景 / 料金テーブル（PC）
======================================================= */
#price.sh-section {
	background: #F3EDE3;
	padding: 80px 0;
}

.price-flex {
	display: flex;
	justify-content: center;
	gap: 18px;
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
}

.price-table-box {
	width: 50%;
}

.price-room-title {
	text-align: center;
	font-size: 16px;
	margin-bottom: 20px;
	color: #4A3B2A;
}

.price-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
	background: #fff;
	color: #333;
}

.price-table th,
.price-table td {
	border: 1px solid #A67C52;
	padding: 10px 8px;
	text-align: center;
}

.price-table th {
	background: #EFE7DD;
	font-weight: 600;
}

/* =======================================================
   16. スタッフ紹介（PC＝2カラム）
======================================================= */
.staff-section {
	max-width: 1200px;
	margin: 0 auto;
	padding: 60px 20px;
}

.staff-director {
	display: flex;
	align-items: flex-start;
	gap: 40px;
	padding: 40px;
	border: 2px solid #66CDAA;
	border-radius: 10px;
	margin-bottom: 60px;
}

.staff-photo {
	width: 180px;
	height: 180px;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid #66CDAA;
	flex-shrink: 0;
}

.staff-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.staff-body {
	flex: 1;
}

.staff-heading {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 20px;
}

.staff-body p {
	margin-bottom: 14px;
	font-size: 15px;
	line-height: 1.8;
}

.staff-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 16px;
}

.staff-job,
.staff-age {
	padding: 6px 14px;
	border: 1px solid #66CDAA;
	border-radius: 6px;
	font-size: 14px;
	white-space: nowrap;
}

.staff-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px;
}

.staff-item {
	display: flex;
	align-items: flex-start;
	gap: 24px;
	padding: 30px 24px;
	border: 2px solid #66CDAA;
	border-radius: 10px;
	background: #fff;
}

/* =======================================================
   17. About / 採用情報バナー
======================================================= */
.about-banner {
	width: 100%;
	padding: 150px 0;
	text-align: center;
	background-size: cover;
	background-position: center;
}

.about-banner .about-inner {
	text-align: center;
}

.about-banner .about-btn {
	display: inline-block;
	padding: 14px 30px;
	color: #fff;
	border-radius: 4px;
	font-weight: 600;
	font-size: 1.2rem;
}

.about-type-nursing {
	background-image: url('../img/nursing/recruit-bg.jpg');
}

.about-type-nursing .about-btn {
	background: #66CDAA;
}

/* =======================================================
   18. CSS衝突防止（小郡ページ）
======================================================= */
#sunhome-detail #nursing-hero,
#sunhome-detail #nursing-gallery,
#sunhome-detail #nursing-facilities,
#sunhome-detail #nursing-recruit {
	display: none !important;
}

/* =======================================================
   19. SP（スマホ）最適化：一括集約
======================================================= */
@media screen and (max-width: 799px) {

	.sh-nav {
		padding: 10px 0;
		background: #fff;
	}

	.sh-nav-grid {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 10px;
		width: 92%;
		margin: 0 auto;
	}

	.sh-nav a {
		flex: 0 0 48%;
		max-width: 48%;
	}

	/* ★ 追加：about テキストSP最適化（block-1 / block-2 共通で効かせる） */
	#about .sh-about-block {
		flex-direction: column;
		margin: 60px 0;
	}

	#about .sh-about-img,
	#about .sh-about-img-full {
		width: 100%;
	}

	#about .sh-about-text,
	#about .sh-about-text-full {
		width: 90%;
		margin: 0 auto;
		padding-left: 0;
		text-align: left;
	}

	#about .sh-about-text h3,
	#about .sh-about-text-full h3 {
		text-align: center;
		font-size: 20px;
		line-height: 1.4;
	}

	#about .sh-about-text p,
	#about .sh-about-text-full p {
		font-size: 15px;
		line-height: 1.8;
	}

	.sh-nav-toggle {
		display: none;
	}

	/* section自体は100% */
	.sh-section,
	#access,
	#about,
	#feature,
	#sunhome-gallery,
	#outline,
	#price,
	#staff {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	/* 中身は90%で統一 */
	.sh-inner,
	.sh-access-box,
	.sh-about-text,
	.sh-about-text-full,
	.sunhome-feature-text,
	.price-flex,
	.staff-section {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}

	/* flex系は縦積み＋幅100% */
	.sh-about-block,
	.sunhome-feature-row,
	.price-flex,
	.staff-director,
	.staff-item {
		flex-direction: column;
	}

	/* flex子要素の幅固定を解除 */
	.sh-about-img,
	.sh-about-img-full,
	.sh-about-text,
	.sh-about-text-full,
	.sunhome-feature-img,
	.sunhome-feature-text,
	.price-table-box,
	.staff-photo,
	.staff-body {
		width: 100%;
		max-width: 100%;
	}

	/* テーブルははみ出し防止 */
	table {
		width: 100%;
		table-layout: fixed;
		word-break: break-word;
	}

	/* ギャラリー横スクロール安全化 */
	.sunhome-gallery {
		overflow-x: hidden;
	}

}

/* =======================================================
   SP：スタッフ紹介 1カラム化 ＋ メタ情報整理
======================================================= */
@media screen and (max-width: 799px) {

	/* セクション全体を1列に */
	.staff-section {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
		padding: 40px 0;
	}

	/* 施設長・スタッフ共通で縦並び */
	.staff-director,
	.staff-item {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 20px;
		padding: 24px 20px;
	}

	/* 写真は中央・サイズ少し小さめ */
	.staff-photo {
		width: 140px;
		height: 140px;
		margin: 0 auto;
	}

	/* テキストは中央寄せしない（読みやすさ優先） */
	.staff-body {
		width: 100%;
		text-align: left;
	}

	/* スタッフ一覧を1列に */
	.staff-grid {
		display: flex;
		flex-direction: column;
		gap: 30px;
	}

	/* ▼ メタ情報（〇をきれいに） */
	.staff-meta {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		margin-bottom: 12px;
	}

	.staff-job,
	.staff-age {
		display: inline-block;
		padding: 6px 14px;
		border-radius: 999px; /* ← 丸く */
		font-size: 13px;
		font-weight: 500;
		background: #E9F8F2;
		border: 1px solid #66CDAA;
		color: #333;
		white-space: nowrap;
	}

	/* 見出しサイズ微調整 */
	.staff-heading {
		font-size: 20px;
		text-align: center;
		margin-bottom: 10px;
	}

	/* 本文 */
	.staff-body p {
		font-size: 14px;
		line-height: 1.8;
	}
}


/* 微調整 */
@media (max-width: 768px) {
	.about-banner {
		padding: 100px 0;
	}

	.about-banner .about-btn {
		font-size: 1.1rem;
		padding: 12px 24px;
	}
}
/* =======================================================
   ご入居までの流れ（新規）
======================================================= */

#flow {
	padding: 80px 0 100px;
}

.flow-wrap {
	max-width: 1100px;
	margin: 0 auto 5em;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}

.flow-step {
	width: 23%;
	background: #fff;
	border: 1px solid #A67C52;
	display: flex;
	flex-direction: column;
}

.flow-head {
	background: #6b6b6b;
	color: #fff;
	text-align: center;
	padding: 14px 10px;
	font-size: 18px;
	letter-spacing: 0.1em;
}

.flow-body {
	padding: 30px 20px;
	text-align: center;
	flex: 1;
}

.flow-body h3 {
	font-size: 18px;
	margin-bottom: 15px;
	font-weight: 600;
	color: #333;
}

.flow-body p {
	font-size: 15px;
	line-height: 1.8;
	color: #444;
	margin-bottom: 10px;
}

.flow-tel {
	display: inline-block;
	margin-top: 10px;
	padding: 10px 18px;
	border: 1px solid #333;
	font-size: 18px;
	letter-spacing: 0.05em;
}

/* 矢印（PC） */
.flow-arrow {
	width: 4%;
	position: relative;
}

.flow-arrow::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 14px;
	border-right: 2px solid #333;
	border-bottom: 2px solid #333;
	transform: translate(-50%, -50%) rotate(-45deg);
}
.flow-target {
	width: 1100px;
	margin: 0 auto 5em;
}

.flow-target h3 {
	border-bottom: 1px dotted #aaa;
	height: 2em;
}

.flow-target ul {
	margin: 0 0 3em 0;
}

/* =======================================================
   SP：縦並び
======================================================= */
@media screen and (max-width: 799px) {

	.flow-wrap {
		flex-direction: column;
		gap: 30px;
	}

	.flow-step {
		width: 100%;
	}

	.flow-arrow {
		width: 100%;
		height: 20px;
	}

	.flow-arrow::before {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	.flow-target {
		width: auto;
		margin: 0 1em 5em;
	}
	.flow-target ul {
		padding: 0 0 0 1.5em ;
	}
}
/* =======================================================
   アニメーション追加分
======================================================= */
/* HERO テキスト */
.sh-hero-text {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1.4s ease, transform 1.4s ease;
}

.sh-hero-text.is-show {
	opacity: 1;
	transform: translateY(0);
}
/* HERO 画像：下からスライドして出現 */
.sh-hero-image {
	overflow: hidden;
}

.sh-hero-image img {
	display: block;
	transform: translateY(110%);
	transition: transform 2.2s cubic-bezier(0.22, 0.61, 0.36, 1);
	will-change: transform;
}

/* 表示状態 */
.sh-hero-image.is-show img {
	transform: translateY(0);
}

/* アクセス中身だけ */
#access .sh-access-catch,
#access .sh-access-title,
#access .sh-access-info,
#access .sh-access-box {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1.4s ease, transform 1.4s ease;
}

#access.is-show .sh-access-catch,
#access.is-show .sh-access-title,
#access.is-show .sh-access-info,
#access.is-show .sh-access-box {
	opacity: 1;
	transform: translateY(0);
}
/* =======================================================
   施設紹介（#about）Scroll Animation【最終正解】
======================================================= */

/* ---------- block-1：テキスト ---------- */
#about .sh-title,
#about .sh-about-text,
#about .sh-about-text-full {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 1.2s ease, transform 1.2s ease;
}

#about.is-show .sh-title,
#about.is-show .sh-about-text,
#about.is-show .sh-about-text-full {
	opacity: 1;
	transform: translateY(0);
}

#about.is-show .sh-title { transition-delay: 0s; }
#about.is-show .sh-about-text { transition-delay: 0.15s; }
#about.is-show .sh-about-text-full { transition-delay: 0.3s; }

/* ---------- block-1：画像 ---------- */
#about .block-1 .sh-about-img {
	overflow: hidden;
}

#about .block-1 .sh-about-img img {
	transform: translateX(-120%);
	transition: transform 1.8s cubic-bezier(0.22, 0.61, 0.36, 1);
}

#about.is-show .block-1 .sh-about-img img {
	transform: translateX(0);
	transition-delay: 0.9s;
}

/* ---------- block-2 / block-3 本体 ---------- */
#about .block-2,
#about .block-3 {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1s ease, transform 1s ease;
}

#about .block-2.is-show,
#about .block-3.is-show {
	opacity: 1;
	transform: translateY(0);
}

/* ---------- SP 無効 ---------- */
@media (max-width: 768px) {
	/* Smart Slider uses inline transforms to move inactive image layers off-screen. */
	#about > :not(.n2-section-smartslider),
	#about > :not(.n2-section-smartslider) * {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}
/* =======================================================
   green / gray：順番フェードイン
======================================================= */
#about .sh-green-box,
#about .sh-gray-box {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.9s ease, transform 0.9s ease;
}

#about .sh-green-box.is-show,
#about .sh-gray-box.is-show {
	opacity: 1;
	transform: translateY(0);
}

/* =======================================================
   固定ナビ（PCのみ）
======================================================= */

/* ナビ全体：背景100% */
.sh-nav {
	position: sticky;
	top: 0;
	z-index: 100;
	background: #fff;
	border-bottom: 1px solid #e5e5e5;
}

/* 中身：今のサイズ感を維持 */
.sh-nav-grid {
	max-width: 1200px; /* 既存に合わせてOK */
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	padding: 12px 16px;
}

/* リンク */
.sh-nav-grid a {
	text-decoration: none;
	color: #333;
	font-size: 15px;
}

/* ===== SPは非表示 ===== */
@media (max-width: 768px) {
	.sh-nav {
		display: none;
	}
}
/* =========================================
   施設紹介（#about）｜SmartSlider 全体幅制御
========================================= */

#about .n2-section-smartslider {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	margin-bottom: 60px;
}
/* =========================================
   施設紹介（#about）｜サムネ一覧 外枠
========================================= */

#about .n2-ss-slider-controls-side {
	background-color: #ffffff !important;
}

#about .n2-section-smartslider .nextend-bar > div{
	background: rgba(0, 0, 0, 0.45) !important;
	padding: 8px 26px !important;
	border-radius: 2px !important;
}

#about .n2-section-smartslider .nextend-bar span{
	font-size: 2.25rem !important;
	font-weight: 600;
	letter-spacing: 0.05em;
}

/* =======================================================
   医療・健康管理：病院名縦リスト
======================================================= */
.sh-hospital-list {
	list-style: none;
	padding-left: 0;
	margin: 0 0 1.5em 0;
}

.sh-hospital-list li {
	position: relative;
	padding-left: 1.2em;
	margin-bottom: 0.5em;
	font-size: 15px;
	line-height: 1.8;
}

.sh-hospital-list li::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
	color: #66CDAA;
}

.sh-hospital-list li a {
	color: #333;
	text-decoration: none;
	border-bottom: 1px solid #66CDAA;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.sh-hospital-list li a:hover {
	color: #3aad84;
	border-bottom-color: #3aad84;
}

/* =======================================================
   施設長メッセージ：インタビュー記事リンク
======================================================= */
.staff-interview-link {
	margin-top: 20px;
	padding: 14px 18px;
	background: #E9F8F2;
	border-left: 4px solid #66CDAA;
	border-radius: 4px;
}

.staff-interview-link a {
	color: #2e7d62;
	font-size: 14px;
	line-height: 1.7;
	text-decoration: none;
	word-break: break-all;
}

.staff-interview-link a:hover {
	text-decoration: underline;
	color: #1b5c47;
}

@media screen and (max-width: 799px) {
	.staff-interview-link {
		margin-top: 16px;
		padding: 12px 14px;
	}

	.staff-interview-link a {
		font-size: 13px;
	}
}
