/*
Theme Name: Toyooka-hospital COMMON Theme
Theme URL: http://www.robo.co.jp
Description: This is Toyooka-hospital COMMON Theme.
Author: Terasrin
Version: 1.0
*/

body{ padding: 0px!important;}

.wp-block-image{margin: 0px!important}

/* editor */

/* editor */

/* 文字色 */
.has-hdk-b-color {
	color: #6ABC3F;
}
.has-hdk-c-color {
	color: #F5FAF1;
}
.has-izs-b-color {
	color: #D58924;
}
.has-izs-c-color {
	color: #FDFAF7;
}
.has-asg-b-color {
	color: #007760;
}
.has-asg-c-color {
	color: #EDF6F5;
}
.has-ass-b-color {
	color: #714198;
}
.has-ass-c-color {
	color: #F5F1F8;
}
.has-gray-color {
	color: #CCCCCC;
}
.has-darkgray-color {
	color: #817D79;
}
.has-truered-color {
	color: #FF0000;
}
.has-trueblue-color {
	color: #0000FF;
}
.has-justrightgray-color {
	color: #666666;
}
.has-palegray-color {
	color: #ededed;
}
.has-paleyellow-color {
	color: #ffffcc;
}
.has-palelightblue-color {
	color: #ccffff;
}
.has-paleyellowgreen-color {
	color: #e0ffe0;
}
.has-palepalepink-color {
	color: #fee6e6;
}


/* 背景色 */
.has-hdk-b-background-color {
	background-color: #6ABC3F;
}
.has-hdk-c-background-color {
	background-color: #F5FAF1;
}
.has-izs-b-background-color {
	background-color: #D58924;
}
.has-izs-c-background-color {
	background-color: #FDFAF7;
}
.has-asg-b-background-color {
	background-color: #007760;
}
.has-asg-c-background-color {
	background-color: #EDF6F5;
}
.has-ass-b-background-color {
	background-color: #714198;
}
.has-ass-c-background-color {
	background-color: #F5F1F8;
}
.has-gray-background-color {
	background-color: #CCCCCC;
}
.has-darkgray-background-color {
	background-color: #817D79;
}
.has-truered-background-color {
	background-color: #FF0000;
}
.has-trueblue-background-color {
	background-color: #0000FF;
}
.has-justrightgray-background-color {
	background-color: #666666;
}
.has-palegray-background-color {
	background-color: #ededed;
}
.has-paleyellow-background-color {
	background-color: #ffffcc;
}
.has-palelightblue-background-color {
	background-color: #ccffff;
}
.has-paleyellowgreen-background-color {
	background-color: #e0ffe0;
}
.has-palepalepink-background-color {
	background-color: #fee6e6;
}


/* キーボードフォーカス */
.search-pagenation a:focus-visible {
  outline: 2px solid var(--hover-color, #3BA1C8);
  outline-offset: 2px;
}

/* PC版（画面幅が1025px以上） */
@media screen and (min-width: 1025px) {
  #wpcf7cpcnf table, .wpcf7cp-btns{
    width: 50%;
  }

  .wpcf7cp-btns button{
      margin-top: 32px;
      margin-left: 10px;
      margin-right: 10px;
      padding-top: 20px;
      padding-bottom: 20px;
    font-size: 20px;
  }

}

/* モバイル・タブレット版（画面幅が1024px以下） */
@media screen and (max-width: 1024px) {
  #wpcf7cpcnf table, .wpcf7cp-btns{
    width: 94%;
  }
  .wpcf7cp-btns button{
      margin-top: 16px;
      margin-left: 5px;
      margin-right: 5px;
      padding-top: 10px;
      padding-bottom: 10px;
    font-size: 14px;
  }
}

ul.medical-treatment {
	padding-left: 0px;
	display: block;
	letter-spacing: -.4em;
	margin-bottom: 40px!important;
}
ul.medical-treatment li {
	list-style: none;
	width: 25%;
	display: inline-block;
	letter-spacing: normal;
	margin: 0px!important;
	vertical-align: top;
}
ul.medical-treatment li a {
	display: block!important;
	padding: 10px!important;
	text-align: left!important;
	background-color: var(--key-color)!important;
	margin: 5px;
	border-radius: 50px;
	position: relative;
  color: #FFF;
}
ul.medical-treatment li a:after {
	position: absolute;
	right: 10px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

table.medical-treatment { }

table.closedday { }

table.medical-treatment thead th, table.closedday thead th {
	background-color: var(--key-color)!important;
	color: #FFF;
	text-align: center!important;
}
table.medical-treatment td, table.closedday td{
  padding: 5px;
    border: 1px solid #999999;
}
table.medical-treatment tbody:nth-child(even), table.closedday tbody > tr:nth-child(even)  {
    background-color: var(--bg-color);
}

/*診療担当表用*/
table.staff_table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #999999;
}
table.staff_table th,
table.staff_table td {
	padding: 5px;
	border: 1px solid #999999;
}


table.closedday tbody tr:nth-child(even) {
    background-color: var(--bg-color);
}


/* サイトマップ全体エリア */
.sitemap-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 2rem 1rem;
}

.sitemap-title {
    font-size: 1.75rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #333;
}

/* 階層リストツリー構造 */
.sitemap-tree ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

/* 2階層目以降のネストと左ガイド線 */
.sitemap-tree ul ul {
    padding-left: 1.25rem;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    border-left: 1px dashed #ccc; /* 階層がわかりやすい縦の点線 */
}

/* 各リスト項目 */
.sitemap-tree li {
    position: relative;
    margin-bottom: 0.5rem;
    line-height: 1.5;
}

/* 2階層目以降の横ガイド線 */
.sitemap-tree ul ul > li::before {
    content: "";
    position: absolute;
    top: 0.75em;
    left: -1.25rem;
    width: 0.75rem;
    height: 1px;
    background-color: #ccc;
}

/* リンクデザイン */
.sitemap-tree a {
    color: #333;
    text-decoration: none;
    transition: color 0.2s ease;
}

.sitemap-tree a:hover {
    color: #0066cc;
    text-decoration: underline;
}

/* 親階層（1階層目）の強調 */
.sitemap-tree > ul > li {
    font-weight: bold;
    margin-bottom: 1rem;
}

/* 子階層はノーマルウェイト */
.sitemap-tree ul ul li {
    font-weight: normal;
}


/* ##### ほすぴたる用 #####*/
/* コンテナ（外枠の罫線） */
.hospital-news-item {
  display: flex;
  flex-direction: column;
  border: 1px solid #000000; /* 画像通りの黒枠線 */
  margin-bottom: -1px; /* 連続したときに枠線が重複して太くなるのを防止 */
  padding: 15px;
  background-color: #ffffff;
  font-family: sans-serif;
  box-sizing: border-box;
}

/* PC表示：左右2カラム（左サムネイル・右コンテンツ） */
@media (min-width: 768px) {
  .hospital-news-item {
    flex-direction: row;
    padding: 0;
  }
}

/* サムネイルエリア */
.hospital-news-item__thumb {
  width: 100%;
  text-align: center;
  margin-bottom: 15px;
}

@media (min-width: 768px) {
  .hospital-news-item__thumb {
    width: 220px; /* 画像の左側カラム幅 */
    flex-shrink: 0;
    border-right: 1px solid #000000; /* 左右を仕切る縦罫線 */
    margin-bottom: 0;
    padding: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

.hospital-news-item__thumb img {
  max-width: 100%;
  height: auto;
  box-shadow: 0 2px 5px rgba(0,0,0,0.15); /* 誌面っぽい薄い影 */
}

/* 右側コンテンツエリア */
.hospital-news-item__content {
  flex: 1;
  font-size: 14px;
  line-height: 1.6;
  color: #000000;
}

@media (min-width: 768px) {
  .hospital-news-item__content {
    padding: 15px 20px;
  }
}

/* 青文字PDFリンク */
.pdf-link {
  color: var(--key-color);
  text-decoration: underline;
  margin-left: 5px;
}

.pdf-link:hover {
  text-decoration: none;
}

/* タイトル */
.hospital-news-item__title {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 12px 0;
}

/* 内容テキスト */
.hospital-news-item__text {
  margin: 0 0 15px 0;
  word-break: break-all;
}

/* 別紙ブロック */
.hospital-news-item__sub {
  margin-bottom: 15px;
}

.hospital-news-item__sub-title {
  font-weight: bold;
  margin: 0 0 5px 0;
}

.hospital-news-item__sub-text {
  margin: 0;
}

/* 発行日（青文字表記） */
.hospital-news-item__date {
  color: var(--key-color);
  margin-top: 10px;
}




/* 2. 右寄せ（alignright） */
figure.wp-block-image.alignright,
.alignright {
    float: right !important;
    display: block !important;
    margin: 0 0 1em 1.5em !important;
}

/* 3. 中央寄せ（aligncenter） */
figure.wp-block-image.aligncenter,
.aligncenter {
    float: none !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center;
}

/* 4. 左寄せ（alignleft） */
figure.wp-block-image.alignleft,
.alignleft {
    float: left !important;
    display: block !important;
    margin: 0 1.5em 1em 0 !important;
}

/* キャプションを通常のブロック化して幅を維持する */
.wp-block-image figcaption,
.wp-block-image .aligncenter > figcaption,
.wp-block-image .alignleft > figcaption,
.wp-block-image .alignright > figcaption {
    display: block !important;
    width: 100% !important;
    text-align: center; /* 必要に応じて中央寄せ */
}

/* tyhp以外では削除 */
h5 {
    border-bottom: 1px solid var(--key-color);
    padding-bottom: 10px;
}