/* ------------------------------------
   page.css
   固定ページのスタイル
   ------------------------------------ */
/********************************
	ページヘッダー
********************************/
/*** ブログ ***/
#page_headline {
    background: none;
    color: #fff !important;
    letter-spacing: 0.1em;
	margin: auto;
	width: 100%;
	height: auto;
}
/*** 固定ページ ***/
#page_header .content{
	width: 100%;
}
.blog #page_header .content{
	display: none !important;
}
#page_header .content h2{
	display: none!important;
}
/* 小さめタブレット・大きめスマホ */
@media (max-width: 800px) {
	#page_headline {
		position: absolute;
	}
	#page_header .content{
		padding: 0;
		margin-bottom: 40px;
	}
}
/********************************
	固定ページヘッダー
********************************/
#page_headline{
	background:none;
	color: #fff !important;
	letter-spacing: 0.1em;
}
/*** 固定ページ ヘッダー画像::疑似要素 ***/
#page_contents{
	position: relative; /* 疑似要素を配置するために必要 */
}
#page_contents::before,
#page_contents::after {
	content: "";
	position: absolute;
	top: 0;              /* 上部に配置。必要に応じて調整 */
 	width: 266px;        /* 画像サイズに合わせて調整 */
	height: 208px;
	background-size: contain;
	background-repeat: no-repeat;
	pointer-events: none; /* クリックの邪魔をしないように */
	/* 初期状態を透明＆少し上に */
	opacity: 0;
	transform: translateY(-30px);
	animation: fadeDown 1s ease-out forwards;
}
#page_contents::before {
	left: 0;
	background-image: url("../img/item/item_leaf_bg_l.png");
	animation-delay: 0.3s; /* 少し遅れて登場 */
}
#page_contents::after {
	right: 0;
	background-image: url("../img/item/item_leaf_bg_r.png");
	animation-delay: 0.6s; /* さらに遅れて登場 */
}
/* フワッと下に降りてくるアニメーション */
@keyframes fadeDown {
  from {
	opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* 小さめPC */
@media (max-width: 920px) {
	#page_contents::before,
	#page_contents::after {
		top: -16px;
		 width: 200px;        /* 画像サイズに合わせて調整 */
	}
}
@media (max-width: 800px) {
	#page_contents::before,
	#page_contents::after {
		width: 160px;        /* 画像サイズに合わせて調整 */
	}
}
/* 小さめタブレット・大きめスマホ */
@media (max-width: 600px) {
	#page_contents::before,
	#page_contents::after {
		 width: 130px;        /* 画像サイズに合わせて調整 */
	}
} 
/********************************
	固定ページ ページ幅 780px
********************************/
body.page #page_contents .post_content {
    max-width: 780px;
    margin: 0 auto;
}
/********************************
	固定ページ 見出し
********************************/
/* 小さめタブレット・大きめスマホ */
@media (max-width: 600px) {
	.post_content h2.wp-block-heading{
		font-size: 24px;
		letter-spacing: 0.1em;
	}
} 
/*** 固定ページ 見出しにリーフのアイコン ***/
.post_content h2.wp-block-heading{
	position: relative;
	color: #4b3a21 !important;
	margin-top: 80px !important;
	letter-spacing: 0.03em;
}
.post_content h2.wp-block-heading::before{
	content: '';
	position: absolute;
	top: -70px;
	left: 50%;
	margin-left: -27px;
	width: 54px;
	height: 62px;
	background-image: url("../img/item_leaf_01.svg");
	background-repeat: no-repeat;
}
/*** 固定ページ見出し ***/
.post_content h2.page_heading_balance{
	margin-top: 120px !important;
}
/***　固定ページ ブロックグループ ***/
.wp-block-group{
	margin-bottom: 80px;
}
/********************************
	固定ページ テーブル
********************************/
@media (max-width: 800px) {
	.post_content td{
		border: 0px solid #ddd !important;
		text-align: center !important;
	}
	.post_content td:first-child {
		border-top: 1px solid #ddd !important;
		border-bottom: 1px solid #ddd !important;
		 padding: 8px 30px 8px !important;
	}
}
/********************************
	固定ページ リンクバナー
********************************/
#linkbanner_area{
	z-index: 3;
	margin-top: 80px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
}
.link_banner--wrap{
	width: 48.5%;
	margin: 0;
	padding: 0;
}
.link_banner{
	border-radius: 24px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.link_banner:hover{
	transform: translateY(-5px); /* 少し上に移動 */
	box-shadow: 0 4px 6px rgba(0,0,0,0.15); /* 影をつけて浮かせる */
}
.link_banner--item{
	position: relative;
}
.link_banner--item-img img{
	border: solid 4px #62be6d;
	border-radius: 10px;
	margin: auto;
}
.link_banner--item-label{
	color: #fff !important;
	font-size: 24px;
	font-family: "fot-chiaro-std", sans-serif !important;
	font-weight: 300;
	font-style: normal;
	background-color: #62be6d;
	display: inline-flex;           /* インライン要素＋flexbox */
	align-items: center;            /* 縦方向の中央揃え */
	padding: 8px 24px;
	margin-bottom: 0 !important;
	border-radius: 32px;
	line-height: 1 !important;
	position: absolute;
	bottom: -15px;
	left: 10px
}
.link_banner--item-arrow{
	font-size: 14px;
	padding-left: 8px;
}
@media (max-width: 800px) {
	#linkbanner_area{
		margin-top: 50px;
	}
}
/* 小さめタブレット・大きめスマホ */
@media (max-width: 600px) {
	.link_banner--wrap{
		margin: auto;
		margin-bottom: 36px;
		width: 92%;
		margin-left: 8px;
	}
} 
/********************************
	私たちについて
********************************/
/*** 疑似要素をふわっと表示させる ***/
.item_plus,
.item_plus_02{
	position: relative;
}
.item_plus::before,
.item_plus_02::before{
	content: "";
	position: absolute;
	width: 170px;
	height: 215px;
  	background: url("../img/item/item_01.svg") no-repeat center/contain;
	transform: translateY(30px); /* 少し下から */
	transition: all 0.6s ease-out;
	opacity: 0;
}
.item_plus::before {
	bottom: -100px;
	right: -100px;
}
.item_plus_02::before {
	z-index: -5;
	top: -80px;
	left: -240px;
}
/* 表示状態：ふわっと */
.item_plus::before,
.item_plus_02::before{
	opacity: 1;
	transform: translateY(0); /* 元の位置に */
}
/* タブレット */
@media (max-width: 800px) {
	.item_plus::before{
		width: 150px;
		right: -50px;
	}
	.item_plus_02::before {
		width: 150px;
		top: -100px;
		left: -50px;
	}
}
/* 小さめタブレット・大きめスマホ */
@media (max-width: 600px) {
	.item_plus::before{
		width: 100px;
		right: -50px;
		bottom: -120px;
	}
	.item_plus_02::before {
		width: 100px;
		top: -140px;
		left: -50px;
	}
}
/********************************
	施設紹介
********************************/
#Philosophy{
	position: relative;
}
/*** 大切にしたい想い **/
.philosophy_item--wrap{
	background-color: #fdfbef;
	padding: 50px 80px;
	border-radius: 16px;
}
.philosophy_item--wrap ul{
	margin-left: 0;
}
.philosophy_item--wrap h3{
	text-align: center;
	position: relative;
}
/*** 運営理念 疑似要素 ***/
.philosophy_item--wrap h3::before,
.philosophy_item--wrap h3::after {
  content: "";
  display: inline-block;
  width: 215px;                /* 画像の幅 */
  height: 20px;                /* 高さは実寸 or 調整 */
  background: url("../img/rinen/kazari-01.png") no-repeat center;
  background-size: contain;    /* 幅に収まるように調整 */
  vertical-align: middle;
}
/* 左側 */
.philosophy_item--wrap h3::before {
  margin-right: 20px; /* 見出しテキストとの余白 */
	margin-bottom: 8px;
}
/* 右側 */
.philosophy_item--wrap h3::after {
  margin-left: 20px;  /* 見出しテキストとの余白 */
	margin-bottom: 8px;
}
/*** 運営理念 内容 ***/
li.philosophy_item{
	position: relative;
	color: #745735 !important;
	font-weight: 600;
	list-style-type: none;
	font-size: 1.4em;
	line-height: 1.4;
	margin-bottom: 1.2em;
	margin-left: 60px;
}
li.philosophy_item::before{
	content: "";
	position: absolute;
	top: 0;
	left: -60px;
	display: block;
	width: 45px;   /* 画像の横幅 */
	height: 45px;  /* 画像の高さ */
	background-size: contain; /* 画像を枠に収める */
	vertical-align: middle;   /* テキストとの縦位置調整 */
}
li.philosophy_item:first-child::before {
	background: url("../img/rinen/rinen_01.svg") no-repeat center center;
}
li.philosophy_item:nth-child(2)::before {
	background: url("../img/rinen/rinen_02.svg") no-repeat center center;
}
li.philosophy_item:nth-child(3)::before {
	background: url("../img/rinen/rinen_03.svg") no-repeat center center;
}
li.philosophy_item:nth-child(4)::before {
	background: url("../img/rinen/rinen_04.svg") no-repeat center center;
}
li.philosophy_item:nth-child(5)::before {
	background: url("../img/rinen/rinen_05.svg") no-repeat center center;
}
/* タブレット */
@media (max-width: 800px) {
	.philosophy_item--wrap h3::before,
	.philosophy_item--wrap h3::after {
	  width: 140px;
	}
	.philosophy_item--wrap{
		padding: 30px;
	}
	li.philosophy_item{
		font-size: 1.3em;
		line-height: 1.4;
		margin-bottom: 1.5em;
		margin-left: 50px;
	}
	li.philosophy_item::before{
		top: -8px;
		left: -50px;
		width: 40px;   /* 画像の横幅 */
		height: 40px;  /* 画像の高さ */
		vertical-align: middle;   /* テキストとの縦位置調整 */
	}
}

/* 小さめタブレット・大きめスマホ */
@media (max-width: 600px) {
	.philosophy_item--wrap{
		padding: 36px 18px;
	}
	.philosophy_item--wrap h3{
		font-size: 1.6em;
	}
	/*** 運営理念 疑似要素 ***/
	.philosophy_item--wrap h3::before,
	.philosophy_item--wrap h3::after {
	  content: "";
		text-align: center;
		margin: auto;
	  display: block;
	  width: 220px;                /* 画像の幅 */
	  background: url("../img/rinen/kazari-01.png") no-repeat center;
	  background-size: contain;    /* 幅に収まるように調整 */
	}
	/* 左側 */
	.philosophy_item--wrap h3::before {
		margin-bottom: 0;
	}
	/* 右側 */
	.philosophy_item--wrap h3::after {
		margin-bottom: 0px;
	}
} 
/*** 私たちの想い ***/
.our_values--item{
	width: 30%;
}
.our_values--item h3{
	margin-bottom: 0.8em;
	text-align: center;
	font-size: 24px;
}
.our_values--item p{
	line-height: 1.8 !important;
	font-size: 15px;
}
.our_values--item-img img{
	border-radius: 400px; 
	border: solid 8px #62be6d; 
	display: block;
	width: 95%;
	margin: auto;
	margin-bottom: 16px !important;
}
@media (max-width: 790px) {
	.our_values--item{
		width: 100%;
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: 24px;
	}
	.our_values--item-img{
		padding-top: 16px;
		width: 30%;
		display: block;
	}
	.our_values--item-lead{
		width: 65%;
	}
	.our_values--item-lead h3{
		text-align: left;
	}
	.our_values--item-img img{
		width: 75%;
	}
}
/* 小さめタブレット・大きめスマホ */
@media (max-width: 600px) {
	.our_values--item-img{
		width: 100%;
	}
	.our_values--item-lead{
		width: 100%;
	}
	.our_values--item-lead h3{
		text-align: center;
		font-size: 30px;
	}
	.our_values--item-img img{
		width: 55%;
	}
}
/*** 施設概要 ***/
.facility_flor{
	margin-top: 60px;
}
/*** アクセスMAP ***/
.map_info{
	padding: 40px;
	background-color: #fdf9f0;
	margin-top: 24px;
}
.map_info--item{
    justify-content:flex-start;
}
.map_info--item dt{
	width: 12%;
	color: #62be6d;
}
.map_info--item dd{
	width: 85%;
	margin-bottom: 0.4em;
}
/* 小さめタブレット・大きめスマホ */
@media (max-width: 600px) {
	.map_info{
		padding: 16px;
	}
	.map_info--item dt{
		width: 20%;
	}
	.map_info--item dd{
		width: 77%;
	}
}
/********************************
	疑似要素
********************************/
#Philosophy.item_01-after::after{
	position: absolute;
	bottom: -150px;
	right: -240px;
}
#Point.item_01-before::before{
	position: absolute;
	top: -60px;
	left: -240px;
}
#Point.item_02-after::after{
	position: absolute;
	bottom: -200px;
	right: -240px;
}