/* Auto-generated index.scss for foundation */

/* Auto-generated index.scss for layout */

/* Auto-generated index.scss for component */

/* Auto-generated index.scss for project */

.p-archive-facility-list {
	display: block;
	width: 100%;
}

.p-archive-facility-list__link .image {
	transition: transform 0.3s ease;
}

.p-facility-list__title {
	color: #333 !important;
	transition: color 0.3s ease;
}

.p-facility-list__body {
	padding-block: 15px;
	border: 1px solid #ddd;
	border-top: none;
}

.p-archive-facility-list__facility {
	margin-block-end: 0px !important;
	padding-inline: 14px !important;
	font-size: 14px !important;
	transition: color 0.3s ease;
}

.p-archive-facility-list__address {
	margin-block-start: 5px !important;
	padding-inline: 14px !important;
	font-size: 14px !important;
	transition: color 0.3s ease;
}

.p-archive-facility-list__info {
	-moz-text-align-last: left;
	display: block;
	margin-block: 5px;
	padding-inline: 14px;
	font-weight: 600;
	font-size: 12px;
	font-size: 14px !important;
	line-height: 2.2;
	text-align-last: left;
	transition: color 0.3s ease;
}

.p-archive-facility-list__info br {
	display: none;
}

.p-archive-facility-list_table {
	width: 92.4796747967%;
	margin-inline: auto;
	border-collapse: collapse;
	font-size: 14px;
	text-align: center;
}

.p-archive-facility-list_table th,
.p-archive-facility-list_table td {
	width: 70.0934579439%;
	padding: 10px 5px;
	border: 2px solid #ccc;
	vertical-align: middle;
}

.p-archive-facility-list_table thead th {
	background: #0fb700;
	color: #fff;
	font-weight: bold;
}

.p-archive-facility {
	display: block !important;
}

.p-archive-facility .p-archive-facility__heading:not(:first-child) {
	margin-block-start: 80px;
}

.p-archive-facility__heading {
	margin-inline: calc(50% - 50vw);
	margin-block-end: 40px;
	padding-inline: calc(50vw - 50%);
	padding-block: 22px;
	background: #0fb700;
	color: #fff;
	font-weight: 600;
	font-size: 26px;
}

.p-archive-facility__lists {
	display: flex;
	flex-wrap: wrap;
}

.p-archive-facility__list {
	height: auto !important;
}

.p-page-accordion .slick-track {
	width: 50% !important;
	margin-inline: auto;
}

.p-page-accordion .slick-current {
	width: 100% !important;
}

.p-page-accordion .box_item {
	background: transparent !important;
}

.p-page-accordion .title {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-block-end: unset !important;
	font-weight: 600 !important;
	font-size: 20px !important;
}

.p-page-accordion .desc {
	background: #fff;
}

.p-page-accordion__info {
	font-weight: 600;
	font-size: 16px;
}

.p-page-accordion_table {
	width: 100%;
	margin-inline: auto;
	border-collapse: collapse;
	font-size: 16px;
	text-align: center;
}

.p-page-accordion_table th,
.p-page-accordion_table td {
	width: 70.0934579439%;
	padding: 10px 5px;
	border: 2px solid #ccc;
	vertical-align: middle;
}

.p-page-accordion_table thead th {
	background: #0fb700;
	color: #fff;
	font-weight: bold;
}

.p-page-content p:has(.q_custom_button1) {
	width: 960px;
	margin-inline: auto;
	text-align: left !important;
}

.p-page-content p a.is-current {
	background: #D3ECCD;
	color: #393E46 !important;
}

.p-top-facility-list {
	display: block;
	width: 100%;
	height: 100%;
}

.p-top-facility-list__link {
	padding-block-end: 10px;
}

.p-top-facility-list__link .image {
	transition: transform 0.3s ease;
}

.p-facility-list__title {
	margin-block-end: unset !important;
}

.p-top-facility-list__facility {
	margin-block-end: 0px !important;
	padding-inline: 14px !important;
	font-size: 14px !important;
}

.p-top-facility-list__address {
	margin-block: 9px !important;
	padding-inline: 14px !important;
	font-size: 14px !important;
}

.p-top-facility-list__info {
	-moz-text-align-last: left;
	display: block;
	margin-block-end: 10px;
	padding-inline: 14px;
	font-weight: 600;
	font-size: 12px;
	font-size: 14px !important;
	line-height: 2;
	text-align-last: left;
}

.p-top-facility-list__info br {
	display: none;
}

.p-top-facility-list_table {
	width: 90%;
	margin-inline: auto;
	border-collapse: collapse;
	font-size: 14px;
	text-align: center;
}

.p-top-facility-list_table th,
.p-top-facility-list_table td {
	width: 70.0934579439%;
	padding: 10px 5px;
	border: 2px solid #ccc;
	vertical-align: middle;
}

.p-top-facility-list_table thead th {
	background: #0fb700;
	color: #fff;
	font-weight: bold;
}

.p-top-facility__wrap {
	display: block !important;
}

.p-top-facility__wrap .p-top-facility__heading:not(:first-child) {
	margin-block-start: 80px;
}

.p-top-facility__heading {
	margin-inline: calc(50% - 50vw);
	margin-block-end: 40px;
	padding-inline: calc(50vw - 50%);
	padding-block: 22px;
	background: #0fb700;
	color: #fff;
	font-weight: 600;
	font-size: 26px;
}

.p-top-facility__lists {
	display: flex;
	flex-wrap: wrap;
	row-gap: 10px;
}

/**************************************
  h2：中央寄せ＋下線（トップページ除外）
**************************************/

body:not(.home) h2.wp-block-heading.has-text-align-center {
	display: inline-block !important;
	position: relative;
	margin: 0 auto 1.5em;
	color: #000;
	text-align: center !important;
}

/* h2 下線 */

body:not(.home) h2.wp-block-heading.has-text-align-center::before {
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 60px;
	height: 5px;
	transform: translateX(-50%);
	border-radius: 2px;
	background-color: #00c660;
	content: "";
}

/**************************************
  h3：左線＋背景色（トップページ除外）
**************************************/

body:not(.home) h3 {
	margin-bottom: 1.5em; /* 下に余白 */
	padding: 0.5em; /* 文字まわりの余白 */
	border-left: 5px solid #00c660; /* 左側の緑ライン */
	background: #fffaf4; /* 背景色（淡いクリーム） */
	color: #494949; /* 文字色 */
	font-weight: bold; /* 太字 */
	text-align: left; /* 左寄せ */
}
body:not(.home) h3 span {
	display:block;
	width: 229px;
	padding-top: 8px;
	padding-bottom: 8px;
}
@media (max-width: 1050px) {
	body:not(.home) h3 span {
		max-width: 100%;
		width: 36.0vw;
	}
}
@media (max-width: 1000px) {
	body:not(.home) h3 span {
		width: 35.4vw;
	}
}
@media (max-width: 950px) {
	body:not(.home) h3 span {
		width: 40.0vw;
	}
}
@media (max-width: 900px) {
	body:not(.home) h3 span {
		width: 39.4vw;
	}
}
@media (max-width: 850px) {
	body:not(.home) h3 span {
		width: 38.8vw;
	}
}
@media (max-width: 800px) {
	body:not(.home) h3 span {
		width: 38.2vw;
	}
}
@media (max-width: 800px) {
	body:not(.home) h3 span {
		width: 38.2vw;
	}
}
@media (max-width: 750px) {
	body:not(.home) h3 span {
		width: 91.0vw;
	}
}
@media (max-width: 650px) {
	body:not(.home) h3 span {
		width: 90.0vw;
	}
}
@media (max-width: 550px) {
	body:not(.home) h3 span {
		width: 88.4vw;
	}
}
@media (max-width: 470px) {
	body:not(.home) h3 span {
		width: 87.0vw;
	}
}
@media (max-width: 450px) {
	body:not(.home) h3 span {
		width: 86.0vw;
	}
}
/********************************************
   TCD CURE 固定ページ h2 を確実に中央寄せ
********************************************/

/* h2 の親要素の text-align を上書きする */

body:not(.home) .post_content,
body:not(.home) .article-inner,
body:not(.home) .content,
body:not(.home) .inner {
	text-align: center !important;
}

/* h2 の装飾 */

body:not(.home) h2.wp-block-heading.has-text-align-center {
	display: inline-block !important;
	position: relative !important;
	width: auto !important;
	margin: 0 auto 1.5em !important;
	text-align: center !important;
}

/* 下線 */

body:not(.home) h2.wp-block-heading.has-text-align-center::before {
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 60px;
	height: 5px;
	transform: translateX(-50%);
	border-radius: 2px;
	background-color: #00c660;
	content: "";
}

/* Auto-generated index.scss for utility */

.u-font {
	font-family: "Zen Old Mincho", serif;
}

.u-font__jp {
	font-family: "Zen Old Mincho", serif;
}

.u-font__en {
	font-family: "Libre Baskerville", serif;
}

.u-pointer__none {
	pointer-events: none !important;
}

.u-text__center {
	text-align: center !important;
}

.u-text__left {
	text-align: left !important;
}

.u-text__right {
	text-align: right !important;
}

.u-text__nowrap {
	white-space: nowrap;
}

@media (any-hover: hover) {

.p-archive-facility-list__link:hover .image {
	transform: scale(1.15);
}

.p-archive-facility-list__link:hover .p-facility-list__title,
.p-archive-facility-list__link:hover .p-archive-facility-list__facility,
.p-archive-facility-list__link:hover .p-archive-facility-list__address {
	color: #0fb700 !important;
}

.p-top-facility-list__link:hover .image {
	transform: scale(1.15);
}

}

@media (min-width: 768px) {

.is-sp {
	display: none !important;
}

.u-pointer__none--pc {
	pointer-events: none !important;
}

.u-text__center--pc {
	text-align: center !important;
}

.u-text__left--pc {
	text-align: left !important;
}

.u-text__right--pc {
	text-align: right !important;
}

.u-text__nowrap--pc {
	white-space: nowrap;
}

}

@media (max-width: 1160px) {

.p-page-content p:has(.q_custom_button1) {
	width: 720px;
}

}

@media (max-width: 830px) {

.p-archive-facility-list__facility {
	font-size: 12px !important;
}

.p-archive-facility-list__address {
	font-size: 12px !important;
}

.p-archive-facility-list__info {
	font-size: 12px !important;
}

.p-archive-facility-list_table {
	font-size: 12px !important;
}

.p-page-accordion_table {
	font-size: 14px !important;
}

.p-top-facility-list__facility {
	font-size: 12px !important;
}

.p-top-facility-list__address {
	font-size: 12px !important;
}

.p-top-facility-list__info {
	font-size: 12px !important;
}

.p-top-facility-list_table {
	font-size: 12px !important;
}

}

@media (max-width: 820px) {

.p-page-content p:has(.q_custom_button1) {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	width: 100%;
	gap: 3px;
}

.p-page-content p:has(.q_custom_button1) a {
	width: auto !important;
}

}

@media screen and (max-width: 767px) {

.is-pc {
	display: none !important;
}

.u-pointer__none--sp {
	pointer-events: none !important;
}

.u-text__center--sp {
	text-align: center !important;
}

.u-text__left--sp {
	text-align: left !important;
}

.u-text__right--sp {
	text-align: right !important;
}

.u-text__nowrap--sp {
	white-space: nowrap;
}

}

@media (max-width: 765px) {

.p-page-accordion .slick-track {
	width: 100% !important;
}

#page_header:has(.p-page-accordion) {
	height: 430px !important;
}

#page_header:has(.p-page-accordion) #page_header_inner {
	height: 100% !important;
}

}

@media (max-width: 600px) {

.p-top-facility__lists {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}

.p-top-facility__list {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	height: 100% !important;
}

	.p-top-facility-list__link {
		padding-block-end: unset;
	}

}

@media (max-width: 550px) {
	#service_list .item {
		width: calc(50% - 13px) !important;
		margin: 0 13px 13px 0 !important;
		height: auto;
	}
}

@media (max-width: 460px) {

.p-archive-facility-list__info br {
	display: block;
}

.p-top-facility-list__info br {
	display: block;
}

.inquiryBox .inqBox {
	width: 100%;
}

}

@media (max-width: 330px) {

.p-top-facility__list {
	width: 100% !important;
}

}


/*
 * 理念 ・ビジョンページのスタイル
*/
.rinen-page {
	margin-block-start: -90px !important;
}

.rinen-page h2 span {
	background-image: unset !important;
}

.rinen-page ol {
	max-width: 670px;
	margin-inline: auto !important;
	padding-inline-start: 30px;
	text-align: left;
}

.rinen-page h3 {
	border-left: unset !important;
	background: unset !important;
	color: #078c00 !important;
	text-align: center !important;
}

.rinen-page h3 span {
	position: relative;
	width: -moz-fit-content !important;
	width: fit-content !important;
	margin-inline: auto !important;
	background-image: unset !important;
}

.rinen-page h3 span::before {
	position: absolute;
	bottom: 0px;
	left: 50%;
	width: 70%;
	height: 3px;
	transform: translateX(-50%);
	background: #078c00;
	content: "";
}

.rinen-page .rinen-section {
	margin-block-start: 90px !important;
}

body:has(.rinen-page) {
	background: #d4edda;
}

