@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* ----------------------------------
 フォント
-------------------------------------*/
body * {
  font-family: "Zen Maru Gothic", sans-serif;
}
p {
	font-weight: 400;
}
/* ----------------------------------
ヘッダー
-------------------------------------*/
.l-header__barInner.l-container {
	background-color: #FAF7EF;
	color: #333333;
}
.l-header__inner.l-container,
.l-fixHeader__inner.l-container,
.l-header__barInner.l-container{
	max-width: 100%;
}
/* メニュー */
.c-gnav>.menu-item>a .ttl {
	font-size: 16px;
}
span.c-smallNavTitle.desc {
	font-size: 12px;
}
/*--------------------------------------------- 
SPメニュー
----------------------------------------------- */
.l-header__customBtn.sp_ {
	display: none;
}
@media screen and (max-width: 960px) {
	.p-spMenu__inner {
		padding-top: 50px;
	}
	.c-widget__title.-spmenu {
		display: none;
	}
	.p-spMenu__nav {
		margin-top: 0;
		padding-bottom: 0;
/* 		margin-bottom: 50px; */
	}
	.c-iconBtn__icon {
		font-size: 30px;
	}
	.-right .p-spMenu__inner {
		width: 100%;
		transform: translateX(100vw);
	 margin-top: 0;
	}
	[data-spmenu=opened] .p-spMenu__inner {
		transform: translateX(0);
	}
	.p-spMenu__inner::before {
		background: #70b52c;
		background: rgba(250,247,239,.9);
	}
	.p-spMenu__closeBtn {
		display: flex;
		height: 60px;
		width: 100%;
	}
	.l-header__menuBtn.sp_ {
		width: 60px;
		height: 60px;
	}
	.c-iconBtn {
		width: 60px;
		height: 60px;
	}
	i.c-iconBtn__icon.icon-close-thin:before {
/* 		color: #FFFFFF; */
	}
	[data-spmenu = "opened"] .p-spMenu__closeBtn {
		justify-content: flex-end;
	}
	.c-gnav .sub-menu a:before, .c-listMenu a {
		position: relative;
	}
	.c-gnav .sub-menu a:before, .c-listMenu a {
		color: #333333;
	}
	.p-spMenu__body {
		padding: 30px 10px;
		background: transparent;
	}
/* 	.p-spMenu__bottom {
		margin-top: 0;
	} */
	.c-iconBtn__icon:before {
		font-size: 30px;
	}
/* 	.arrow-on .c-smallNavTitle.desc:before {
		content: none;
	} */
}
.footer-sns-unit.sp-menu-btm {
	margin: 0 auto;
}
.c-spnav a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 18px;
	font-weight: bold;
	color: #333333;
}
/* メニューアイテム矢印 */
/* .c-gnav .sub-menu a:before, .c-listMenu a:before {
		left: auto !important;
		right: 20px;
} */
/* .c-spnav a:before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 10px;
	background-color: #FFFFFF;
	margin-right: 5px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	right: 10px;
} */
/* フロートボタン */
.page-float-btn-unit.sp-menu-inner-btn {
	position: static;
	top: auto;
	right: auto;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.page-float-btn-unit.sp-menu-inner-btn > p {
	flex-basis: 100%;
	text-align: center;
}
.sp-menu-inner-btn .page-float-btn-item {
	flex-basis: calc((100% - 10px) /2);
	border: 1px solid #333333;
	padding: 10px;
}
.sp-menu-inner-btn .page-float-btn-item.tel-btn {
	margin-bottom: 0px;
}
.sp-menu-inner-btn .page-float-btn-item a {
	flex-direction: row;
	justify-content: center;
	gap: 10px;
	font-size: 14px;
}
.sp-menu-inner-btn .float-btn-icon {
	width: 30px;
	height: 30px;
}
/* ----------------------------------
ファーストビュー
-------------------------------------*/
div#main_visual {
	padding: 15px 20px 0;
	border-radius: 30px 30px 0 0;
}
.p-mainVisual__slide.c-filterLayer.-nofilter {
	border-radius: 30px 30px 0 0;
}
.p-mainVisual__slideTitle {
	font-size: 35px;
	text-shadow: 0 2px 3px rgba(0,0,0,.3);
	margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
	.p-mainVisual__slideTitle {
		font-size: 25px;
	}
	div#main_visual {
		padding: 10px 10px 0;
		border-radius: 30px 30px 0 0;
	}
	.p-mainVisual__slide.c-filterLayer.-nofilter {
		border-radius: 30px 30px 0 0;
	}
}
/* フロートボタン */
.page-float-btn-unit {
	position: absolute;
	top: 45px;
	right: 50px;
	z-index: 2;
}
.page-float-btn-item {
	border: 2px solid #333333;
	box-shadow: 0 2px 5px rgba(0,0,0,.3);
	border-radius: 5px;
	padding: 5px 10px;
}
.page-float-btn-item.tel-btn {
	background-color: #FDD000;
	margin-bottom: 10px;
}
.page-float-btn-item.mail-btn {
	background-color: #31980C;
}
.page-float-btn-item a {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
	font-size: 12px;
}
.page-float-btn-item.tel-btn a {
	color: #333333;
}
.page-float-btn-item.mail-btn a {
	color: #FFFFFF;
}
.float-btn-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	background-color: #FFFFFF;
	border-radius: 17pc;
}
.float-btn-icon i {
	font-size: 15px;
	color: #333333;
}
.float-btn-txt {
}
/* ファーストビューボタン */
div#main_visual .normal-btn a {
	justify-content: center;
}
@media screen and (max-width: 960px) {
	div#main_visual .page-float-btn-unit {
		display: none;
	}
}
/* ---------------------------------共通--------------------------------------------------共通---------------------------------------------------共通------------------------------------
共通
-------------------------------------*/
/* ボタン */
.normal-btn {
	min-width: 300px;
}
.normal-btn a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	font-size: 18px;
	padding: 20px 40px;
}
.normal-btn a:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900; 
  content: "\f152";
}
.normal-btn.yellow a {
	background-color: #FDD000;
	border: 1px solid #333333;
	color: #333333;
	transition: .3s;
}
.normal-btn.green a {
	background-color: #31980C;
	border: 1px solid #333333;
	color: #FFFFFF;
	transition: .3s;
}
.normal-btn.yellow a:hover {
	background-color: #FAF7EF;
	color: #31980C;
	border: 1px solid #31980C;
	box-shadow: 0 2px 3px rgba(0,0,0,.3);
	transition: .3s;
}
.normal-btn.green a:hover {
	background-color: #FAF7EF;
	color: #31980C;
	border: 1px solid #31980C;
	box-shadow: 0 2px 3px rgba(0,0,0,.3);
	transition: .3s;
}
@media screen and (max-width: 768px) {
	.normal-btn {
		min-width: 250px;
	}
	.normal-btn a {
		font-size: 16px;
		padding: 20px 30px;
	}
}
/* 配置 */
.normal-btn-outer.center {
	justify-content: center;
}
.normal-btn-outer.left {
	justify-content: flex-start;
}
.normal-btn-outer.right {
	justify-content: flex-end;
}
/* セクションタイトル（CENTER） */
.section-ttl-center {
	text-align: center;
}
.section-ttl-center h2.is-style-section_ttl {
	font-size: 35px;
	margin-bottom: 0;
}
.section-ttl-center p {
	color: #31980C;
	font-weight: bold;
	font-size: 18px;
	display: inline-block;
	background-color: #FAF7EF;
	position: relative;
	padding: 0 10px;
}
.back-clear p {
	background-color: #FFFFFF;
}
.back-none p {
	background-color: transparent;
}
.section-ttl-center p:before {
	content: "";
	display: inline-block;
	width: calc(100% + 30px);
	height: 3px;
	border-radius: 2px;
	background-color: #FDD000;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}
@media screen and (max-width: 960px) {
	.section-ttl-center h2.is-style-section_ttl {
		font-size: 30px;
	}
	.section-ttl-center p {
		font-size: 16px;
	}
	.section-ttl-center p:before {
		width: calc(100% + 25px);
	}
	.normal-btn-outer.left,
	.normal-btn-outer.right {
		justify-content: center;
	}
}
/* セクションタイトル（LEFT） */
.section-ttl-left {
	text-align: left;
}
.section-ttl-left h2.is-style-section_ttl {
	font-size: 35px;
	margin-bottom: 0;
	text-align: left;
}
.section-ttl-left p {
	color: #31980C;
	font-weight: bold;
	font-size: 18px;
	display: inline-block;
	position: relative;
	padding: 0 10px 0 25px;
}
.section-ttl-left p:before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 5px;
	border-radius: 3px;
	background-color: #FDD000;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	z-index: -1;
}
@media screen and (max-width: 960px) {
	.section-ttl-left h2.is-style-section_ttl {
		font-size: 30px;
	}
	.section-ttl-left p {
		font-size: 16px;
	}
	.section-ttl-left p:before {
		height: 4px;
	}
}
/* ノーマルテキスト */
p.normal-txt {
	line-height: 2;
}
p.normal-txt-ce {
	line-height: 2;
	text-align: center;
}
@media screen and (max-width: 960px) {
	p.normal-txt {
		text-align: left;
	}	
}
/* --------------------トップページ-----------------------------------------------------------------------------------------------トップページ---------------------
トップページ
-------------------------------------*/
/* TOP AboutUs */
.top-aboutus-item-unit > .wp-block-group__inner-container {
	display: flex;
	justify-content: center;
	gap: 30px;
}
.top-aboutus-item-unit .top-aboutus-image {
	flex-basis: calc((100% - 30px) / 2);
	margin-bottom: 0;
}
.top-aboutus-item-unit .top-aboutus-image figure {
	position: relative;
}
.top-aboutus-txt-item {
	flex-basis: calc((100% - 30px) / 2);
	margin-bottom: 0;
}
.top-aboutus-item-unit .top-aboutus-image figure:before {
	content: "";
	display: inline-block;
	width: 300px;
	height: 212px;
	background-image: url(https://cocoroen.com/wp-content/uploads/2026/05/top-aboutus-2.png);
	position: absolute;
	bottom: -106px;
	left: -100px;
}
.top-aboutus-ttl-area {
	margin-bottom: 30px;
}
.top-aboutus-ttl-area p {
	color: #31980C;
	margin-bottom: 0;
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 18px;
	font-weight: bold;
}
.top-aboutus-ttl-area p:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 4px;
	background-color: #FDD000;
	border-radius: 3px;
}
.top-aboutus-ttl-area h2.is-style-section_ttl {
	font-size: 35px;
	text-align: left;
	margin-top: 0;
	line-height: 1.5;
}
p.top-aboutus-disc-txt {
	margin-bottom: 30px;
	line-height: 2;
}
@media screen and (max-width: 960px) {
	.top-aboutus-item-unit > .wp-block-group__inner-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 30px;
	}
	.top-aboutus-item-unit .top-aboutus-image {
		flex-basis: 100%;
	}
	.top-aboutus-item-unit .top-aboutus-image figure {
		position: relative;
	}
	.top-aboutus-txt-item {
		flex-basis: 100%;
		margin-bottom: 0;
	}
	.top-aboutus-item-unit .top-aboutus-image figure:before {
		content: none;
	}
	.top-aboutus-ttl-area {
		margin-bottom: 20px;
	}
	.top-aboutus-ttl-area p {
		font-size: 16px;
	}
	.top-aboutus-ttl-area p:before {
		width: 15px;
	}
	.top-aboutus-ttl-area h2.is-style-section_ttl {
		font-size: 30px;
	}
}
@media screen and (max-width: 768px) {
	.top-aboutus-ttl-area h2.is-style-section_ttl {
		font-size: 25px;
	}
}
/* 施設紹介 */
#top-facility {
	padding-top: 150px !important;
}
h3.is-style-section_ttl.top-facility-item-ttl {
	font-size: 25px;
	font-weight: 500;
	background-color: #31980C;
	color: #FFFFFF;
	padding: 8px 12px;
	border-radius: 10px 10px 0 0;
	margin-top: 0;
	margin-bottom: 20px;
}
/* 施設ポイント */
.top-facility-item-unit > .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 25px;
}
.top-facility-item {
	margin-bottom: 0;
	flex-basis: calc((100% - 50px) / 3);
	background-color: #FFFFFF;
	padding: 15px 10px;
	border-radius: 10px;
	box-shadow: 0 2px 5px rgba(0,0,0,.1);
}
.top-facility-item-ttl-group {
	margin-bottom: 10px;
}
.top-facility-item-ttl-group > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
}
.top-facility-item-ttl-group figure {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0;
	flex-basis: 100px;
	width: 100px;
	height: 100px;
	background-color: #EFEFEF;
	border-radius: 50px;
}
.top-facility-item-ttl-group figure img {
	width: 65px;
	height: 65px;
}
.top-facility-item-ttl-group h4.is-style-section_ttl {
	margin-top: 0;
	flex-basis: calc(100% - 100px);
	padding-left: 15px;
	color: #31980C;
	font-weight: 500;
	text-align: left;
	font-size: 20px;
}
@media screen and (max-width: 960px) {
	#top-facility {
		padding-top: 100px !important;
	}
	/* 施設紹介 */
	h3.is-style-section_ttl.top-facility-item-ttl {
		font-size: 20px;
	}
	/* 施設ポイント */
	.top-facility-item-unit > .wp-block-group__inner-container {
		gap: 15px;
	}
	.top-facility-item {
		flex-basis: calc((100% - 15px) / 2);
	}
	.top-facility-item-ttl-group > .wp-block-group__inner-container {
		display: block;
	}
	.top-facility-item-ttl-group figure {
		display: flex;
		width: 80px;
		height: 80px;
		margin: 0 auto 10px;
	}
	.top-facility-item-ttl-group figure img {
		width: 50px;
		height: 50px;
	}
	.top-facility-item-ttl-group h4.is-style-section_ttl {
		flex-basis: 100%;
		padding-left: 0px;
		text-align: center;
	}	
}
@media screen and (max-width: 768px) {
	/* 施設ポイント */
	.top-facility-item-unit > .wp-block-group__inner-container {
		gap: 10px;
	}
	.top-facility-item-ttl-group h4.is-style-section_ttl {
		font-size: 18px;
	}	
}

/* スライダー */
/* スライダー */
#top-facility-slide {
	padding-top: 0 !important;
}
.top-facility-slider-ttl-outer {
	text-align: center;
	margin-bottom: 15px;
}
.top-facility-slider-ttl {
	display: inline-block;
	position: relative;
}
.top-facility-slider-ttl:before,
.top-facility-slider-ttl:after {
	content: "";
	display: inline-block;
	width: 3px;
	height: 30px;
	border-radius: 3px;
	background-color: #31980C;
	position: absolute;
	bottom: -0px;
}
.top-facility-slider-ttl:before {
	left: -15px;
	transform: rotate(-20deg);
}
.top-facility-slider-ttl:after {
	right: -15px;
	transform: rotate(20deg);
}
.top-facility-slider-ttl h3.is-style-section_ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-weight: 500;
	font-size: 25px;
}
.top-facility-slider-ttl h3.is-style-section_ttl i {
	font-weight: 900;
	width: 35px;
	height: 35px;
	border-radius: 20px;
	color: #FFFFFF;
	background-color: #31980C;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
}
.flowing-slider .swiper-wrapper .swiper-slide img {
	box-shadow: 0 2px 5px rgba(0,0,0,.2);
}
.flowing-slider .swiper-wrapper {
  transition-timing-function: linear;
}
@media screen and (max-width: 960px) {
	.top-facility-slider-ttl h3.is-style-section_ttl {
		gap: 10px;
		font-weight: 500;
		font-size: 20px;
	}
	.top-facility-slider-ttl h3.is-style-section_ttl i {
		width: 30px;
		height: 30px;
		font-size: 14px;
	}
}
/* ご利用案内 */
#top-guide {
	padding-top: 150px !important;
}
.top-guide-item-unit {
	max-width: 1320px;
	margin-left: auto;
	padding-left: 50px;
}
@media screen and (min-width: 1440px) {
	.top-guide-item-unit {
		max-width: 1320px;
		margin: 0 auto;
		padding-left: 0;
	}
}
.top-guide-item-unit > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
	gap: 50px;
	flex-wrap: wrap;
}
.top-guide-txt-item {
	flex-basis: calc(100% - 25px - 55%);
	margin-bottom: 0;
}
.top-guide-image-item {
	flex-basis: calc(100% - 25px - 45%);
}
.top-guide-image-item figure img {
	width: 100%;
	justify-content: center;
}
ul.top-guide-link-unit {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	list-style: none;
	padding: 0;
	margin-bottom: 40px;
}
ul.top-guide-link-unit li {
	flex-basis: calc((100% - 20px) / 2);
	margin: 0;
}
ul.top-guide-link-unit li a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 15px;
	color: #333333;
	border-bottom: 1px solid #31980C;
	padding-bottom: 8px;
	transition: .3s;
}
ul.top-guide-link-unit li a:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900; 
  content: "\f152";
	color: #31980C;
	transition: .3s:
}
ul.top-guide-link-unit li:hover a:after {
	transform: translateX(10px);
	transition: all .3s:
}
ul.top-guide-link-unit li:hover a {
	color: #31980C;
	transition: .3s;
}
@media screen and (max-width: 960px) {
	#top-guide {
		padding-top: 100px !important;
	}
	.top-guide-item-unit {
		max-width: 1320px;
		margin-left: auto;
		padding: 0 20px;
	}
	.top-guide-item-unit > .wp-block-group__inner-container {
		gap: 30px;
	}
	.top-guide-txt-item {
		flex-basis: 100%;
		order: 2;
	}
	.top-guide-image-item {
		flex-basis: 100%;
		order: 1;
	}
}
@media screen and (max-width: 768px) {
	#top-guide {
		padding-top: 60px !important;
	}
	.top-guide-item-unit {
		padding: 0 15px;
	}
	ul.top-guide-link-unit {
		gap: 0 20px;
		margin-bottom: 40px;
	}
	ul.top-guide-link-unit li {
		flex-basis: 100%;
	}
	ul.top-guide-link-unit li a {
		justify-content: space-between;
		padding: 10px 8px;
	}
}
/* ニュース */
.top-news-item-unit > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
}
.top-news-txt-item {
	flex-basis: 20%;
}
.top-news-post-item {
	flex-basis: 80%;
	padding-left: 50px;
}
.-type-simple .p-postList__link {
	padding-top: 20px;
	padding-bottom: 20px;
}
.p-postList__times.c-postTimes.u-thin {
	font-size: 14px;
	margin-right: 10px;
}
span.p-postList__cat.u-thin.icon-folder {
	font-size: 12px;
	background-color: #FDD000;
	color: #333333;
	opacity: 1;
	padding: 3px 10px;
	border-radius: 20px;
	margin-right: 0px;
}
span.p-postList__cat.u-thin.icon-folder[data-cat-id = "8"] {
	background-color: #31980C;
	color: #FFFFFF;
}
span.p-postList__cat.u-thin.icon-folder:before,
.p-postList__times.c-postTimes.u-thin:before{
	content: none;
}
.-type-simple .p-postList__title {
	font-weight: 500;
}
@media screen and (min-width: 960px) {
	.-type-simple .p-postList__link {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.-type-simple .p-postList__body {
		display: flex;
		align-items: center;
	}
	.-type-simple .p-postList__body .p-postList__meta {
		margin-bottom: 0;
	}
	.p-postList__times.c-postTimes.u-thin {
		font-size: 14px;
		margin-right: 15px;
	}
	span.p-postList__cat.u-thin.icon-folder {
		font-size: 14px;
		background-color: #FDD000;
		color: #333333;
		opacity: 1;
		padding: 3px 15px;
		border-radius: 20px;
		margin-right: 15px;
	}
	span.p-postList__cat.u-thin.icon-folder[data-cat-id = "8"] {
		background-color: #31980C;
		color: #FFFFFF;
	}
	span.p-postList__cat.u-thin.icon-folder:before,
	.p-postList__times.c-postTimes.u-thin:before{
		content: none;
	}
	.-type-simple .p-postList__title {
		font-weight: 500;
	}
}
@media screen and (max-width: 960px) {
	/* ニュース */
	.top-news-item-unit > .wp-block-group__inner-container {
		flex-wrap: wrap;
	}
	.top-news-txt-item {
		flex-basis: 100%;
	}
	.top-news-post-item {
		flex-basis: 100%;
		padding-left: 0px;
	}
	.top-news-post-item .p-postListWrap {
		margin-bottom: 30px;
	}
	.top-news-txt-item > .wp-block-group__inner-container > p {
		margin-bottom: 0 !important;
	}
}
/* ----------------------------------
CTA
-------------------------------------*/
#cta-area {
	background-image: url(https://cocoroen.com/wp-content/uploads/2026/05/cta-back.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right top;
}
.cta-item-unit > .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.cta-item {
	flex-basis: calc((100% - 40px) / 2);
	margin-bottom: 0;
	border-top: 2px solid #31980C;
	background-color: #FFFFFF;
	padding: 15px 10px 20px;
	border-radius: 0 0 20px 20px;
	box-shadow: 0 2px 5px rgba(0,0,0,.1);
}
.cta-item h3.is-style-section_ttl {
	margin-bottom: 15px;
	font-size: 18px;
}
p.cta-tel-number {
	font-size: 45px;
	font-weight: 900;
	text-align: center;
	margin-bottom: 10px;
	line-height: 1.2;
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: center;
}
p.cta-tel-number:before {
	width: 35px;
	height: 35px;
	border-radius: 20px;
	background-color: #FDD000;
  font-family: "Font Awesome 6 Free";
  font-weight: 900; 
  content: "\f095";
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	margin-top: 5px;
}
p.cta-time-txt {
	text-align: center;
	font-weight: 500;
}
#cta-area p.normal-txt-ce {
	font-weight: 500;
	text-shadow: 0 2px 2px rgba(255,255,255,.2);
}
/*  */
#cta-area .section-ttl-center p {
}
#cta-area .section-ttl-center p:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 3px;
	border-radius: 2px;
	background-color: #FDD000;
	position: absolute;
	top: 50%;
	left: -25px;
	transform: translate(0,-50%);
	z-index: -1;
}
#cta-area .section-ttl-center p:after {
	content: "";
	display: inline-block;
	width: 20px;
	height: 3px;
	border-radius: 2px;
	background-color: #FDD000;
	position: absolute;
	top: 50%;
	right: -25px;
	transform: translate(0,-50%);
	z-index: -1;
}
@media screen and (max-width: 960px) {
	.cta-item-unit > .wp-block-group__inner-container {
		gap: 20px;
	}
	.cta-item {
		flex-basis: 100%;
	}
	p.cta-tel-number {
		font-size: 35px;
		gap: 10px;
	}
	p.cta-tel-number:before {
		width: 30px;
		height: 30px;
		font-size: 14px;
	}
	#cta-area .section-ttl-center p:before {
		width: 15px;
		left: -20px;
	}
	#cta-area .section-ttl-center p:after {
		width: 15px;
		right: -20px;
	}
	#cta-area p.normal-txt-ce {
		margin-bottom: 20px !important;
	}
}
/* ----------------------------------
フッター
-------------------------------------*/
.top #content {
	margin-bottom: 0;
	padding-top: 0;
}
.l-footer__foot {
	padding: 0;
}
#footer-area {
	position: relative;
	padding-bottom: 300px !important;
}
#footer-area:after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 280px;
	background-image: url(https://cocoroen.com/wp-content/uploads/2026/05/footer-back-image.svg);
	background-position: center bottom;
	background-size: cover;
	position: absolute;
	bottom: 10px;
	left: 0;
}
.footer-menu-unit > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
ul.footer-nav-menu {
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 20px;
}
ul.footer-nav-menu li {
	margin: 0;
}
ul.footer-nav-menu li a {
	transition: .3s;
	font-size: 18px;
}
ul.footer-nav-menu li a:hover {
	text-decoration: underline;
	text-shadow: 0 2px 4px rgba(0,0,0,.1);
	transition: .3s;
}

.footer-logo-area figure {
	text-align: left;
}
.footer-logo-area figure img {
	min-width: 250px;
}
.footer-logo-area p {
	font-size: 18px;
	font-weight: 500;
}
p.copyright {
	padding-top: 5px;
	padding-bottom: 5px;
	background-color: #31980C;
	color: #FFFFFF;
	font-size: 14px;
	font-weight: 500;
}
@media screen and (max-width: 960px) {
	#footer-area {
		position: relative;
		padding-bottom: 200px !important;
	}
	#footer-area:after {
		content: "";
		display: inline-block;
		width: 100%;
		height: 200px;
		background-image: url(https://cocoroen.com/wp-content/uploads/2026/05/footer-back-image.svg);
		background-position: center bottom;
		background-size: cover;
		position: absolute;
		bottom: 10px;
		left: 0;
	}
	.footer-menu-unit > .wp-block-group__inner-container {
		flex-wrap: wrap;
		gap: 50px;
	}
	ul.footer-nav-menu {
		flex-basis: 100%;
		display: flex;
		gap: 0px;
		border-bottom: 1px solid #B9B9B9;
	}
	ul.footer-nav-menu li {
		margin: 0;
		flex-basis: 100%;
	}
	ul.footer-nav-menu li a {
		display: block;
		border-top: 1px solid #B9B9B9;
		font-size: 16px;
		padding: 15px 5px;
		text-align: center;
	}
	ul.footer-nav-menu li a:hover {
		text-decoration: none;
		text-shadow: 0 2px 4px rgba(0,0,0,.1);
		background-color: #31980C;
		color: #FFFFFF;
		transition: .3s;
	}
	.footer-logo-area {
		flex-basis: 100%;
		order: 2;
	}
	.footer-logo-area figure {
		text-align: center;
	}
	.footer-logo-area p {
		font-size: 16px;
		text-align: center;
	}
	p.copyright {
		padding-top: 5px;
		padding-bottom: 5px;
		background-color: #31980C;
		color: #FFFFFF;
		font-size: 14px;
		font-weight: 500;
	}
}
@media screen and (max-width: 768px) {
	#footer-area {
		padding-bottom: 150px !important;
	}
	#footer-area:after {
		height: 150px;
	}
}
/* ----------------------------------下層ページ共通-------------------------------下層ページ共通-------------------------------下層ページ共通-------------------------------下層ページ共通
下層ページ共通
-------------------------------------*/
/* 下層タイトル */
div#top_title_area {
	min-height: 350px;
}
.c-filterLayer.-texture-dot:after,
.l-topTitleArea.c-filterLayer::before{
	content: none;
}
h1.c-pageTitle {
	font-size: 35px;
	color: #31980C;
	text-shadow: 0 3px 2px rgba(0,0,0,.1);
	display: flex;
	align-items: center;
}
.c-pageTitle__subTitle {
	color: #333333;
	opacity: 1;
	font-size: 16px;
}
@media screen and (max-width: 960px) {
	/* 下層タイトル */
	div#top_title_area {
		min-height: 250px;
	}
	h1.c-pageTitle {
		font-size: 30px;
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
	.c-pageTitle__subTitle {
		margin-left: 0;
	}
}
/* ハート付きカラム */
.design-item-unit > .wp-block-group__inner-container {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 30px 10px;
}
.design-item {
	margin-bottom: 0;
	position: relative;
	border: 3px dotted #31980C;
	border-radius: 10px;
	padding: 30px 15px 15px;
}
.design-item .label {
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 2px 5px;
	margin-bottom: 0;
	background-color: #FDD000;
	font-weight: 600;
	border-radius: 5px;
	position: absolute;
	top: -18px;
	left: 15px;
}
.design-item .label i {
	width: 30px;
	height: 30px;
	background-color: #FFFFFF;
	border-radius: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	color: #F8538C;
}
.design-item h3.is-style-section_ttl {
	margin-top: 0;
	text-align: left;
	margin-bottom: 10px;
	font-weight: 500;
}
.design-item.half {
	flex-basis: calc((100% - 20px) / 2);
}
.design-item.wide {
	flex-basis: 100%;
}

@media screen and (max-width: 768px) {
	.design-item-unit > .wp-block-group__inner-container {
		gap: 40px 10px;
	}
	.design-item {
		border: 2px dotted #31980C;
		padding: 25px 10px 10px;
	}
	.design-item .label {
		padding: 3px 8px;
		top: -20px;
		left: 10px;
	}
	.design-item .label i {
		width: 25px;
		height: 25px;
	}
	.design-item h3.is-style-section_ttl {
		font-size: 20px;
	}
	.design-item.half {
		flex-basis: 100%;
	}
	.design-item.wide {
		flex-basis: 100%;
	}
}
/* ----------------------------------
私たちについて
-------------------------------------*/
/* 私たちの想い */
#ourvision {
	padding-bottom: 150px !important;
}
p.ourvision-read {
	text-align: center;
	font-size: 18px;
	font-weight: 500;
	line-height: 2;
	margin-bottom: 50px;
}
@media screen and (max-width: 960px) {
	#ourvision {
		padding-bottom: 100px !important;
	}
	p.ourvision-read {
		font-size: 16px;
		text-align: left;
	}
}
/* メッセージ */
.about-message-item-unit > .wp-block-group__inner-container {
	display: flex;
	justify-content: center;
	align-items: center;
}
.about-message-image {
	flex-basis: 50%;
	margin-bottom: 0;
	padding-right: 30px;
}
.about-message-txt-item {
	flex-basis: 50%;
	margin-bottom: 0;
}
.about-message-ttl-area {
	margin-bottom: 30px;
}
.about-message-ttl-area p {
	color: #31980C;
	margin-bottom: 0;
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 18px;
	font-weight: bold;
}
.about-message-ttl-area p:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 4px;
	background-color: #FDD000;
	border-radius: 3px;
}
.about-message-ttl-area h2.is-style-section_ttl {
	font-size: 35px;
	text-align: left;
	margin-top: 0;
	line-height: 1.5;
}
p.about-message-disc-txt {
	margin-bottom: 15px;
	line-height: 2;
}
@media screen and (max-width: 960px) {
	.about-message-item-unit > .wp-block-group__inner-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 30px;
	}
	.about-message-image {
		flex-basis: 100%;
		padding-right: 0;
	}
	.about-message-txt-item {
		flex-basis: 100%;
		margin-bottom: 0;
	}
	.about-message-ttl-area {
		margin-bottom: 20px;
	}
	.about-message-ttl-area p {
		font-size: 16px;
	}
	.about-message-ttl-area p:before {
		width: 15px;
	}
	.about-message-ttl-area h2.is-style-section_ttl {
		font-size: 30px;
	}
	p.about-message-disc-txt {
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 768px) {
	.about-message-ttl-area h2.is-style-section_ttl {
		font-size: 25px;
	}
}
/* 会社概要 */
#company-info {
	padding-top: 150px !important;
}
.shindo-logo {
	margin-bottom: 50px;
}
.shindo-logo img {
	max-width: 260px;
}
.simple-table tr td {
	padding-top: 20px;
	padding-bottom: 20px;
}
.simple-table tr td:first-child {
	text-align: center;
	font-weight: 500;
}
.simple-table tr td:last-child {
	font-weight: 400;
}
@media screen and (max-width: 960px) {
	#company-info {
		padding-top: 100px !important;
	}
	.shindo-logo {
		margin-bottom: 40px;
	}
	.shindo-logo img {
		max-width: 230px;
	}
	.simple-table tr td {
		padding-top: 15px;
		padding-bottom: 15px;
		border: none
	}
	.simple-table tr td:first-child {
		background-color: #31980C;
		color: #FFFFFF;
		text-align: left;
	}
}
/* ----------------------------------
ご利用案内
-------------------------------------*/
#guide-top-area {
	padding-bottom: 150px !important;
}
p.guide-top-read {
	border-radius: 10px;
	line-height: 2;
	margin-bottom: 40px;
}
/* ご利用いただける方 */
.third-design-ttl-gruop {
	text-align: center;
	position: relative;
	margin-bottom: 40px;
}
.third-design-ttl-gruop h3.is-style-section_ttl {
	display: inline-block;
	background-color: #FFFFFF;
	padding: 0 20px;
	font-weight: 500;
	font-size: 20px;
}
.third-design-ttl-gruop:before {
	content: "";
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: #31980C;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.guide-top-column > .wp-block-group__inner-container {
	display: flex;
	gap: 20px;
}
.guide-top-item {
	flex-basis: calc((100% - 20px) / 2);
	margin-bottom: 0;
	padding: 30px 10px 10px;
	background-color: #FAF7EF;
	box-shadow: 0 2px 5px rgba(0,0,0,.1);
	border-radius: 10px;
	position: relative;
}
.guide-top-item h4.is-style-section_ttl {
	margin-bottom: 0;
	font-weight: 500;
	font-size: 18px;
	position: absolute;
	top: -18px;
	left: 50%;
	transform: translateX(-50%);
	display: inline-block;
	background-color: #FAF7EF;
	border: 1px solid #31980C;
	padding: 5px 20px;
	border-radius: 10px;
}
.guide-top-item p {
	line-height: 2;
}
@media screen and (max-width: 960px) {
	#guide-top-area {
		padding-bottom: 100px !important;
	}
	p.guide-top-read {
		margin-bottom: 30px;
	}
	/* ご利用いただける方 */
	.third-design-ttl-gruop {
		margin-bottom: 40px;
	}
	.third-design-ttl-gruop h3.is-style-section_ttl {
		font-size: 18px;
	}
	.guide-top-column > .wp-block-group__inner-container {
		flex-wrap: wrap;
		gap: 40px;
	}
	.guide-top-item {
		flex-basis: 100%;
		padding: 25px 10px 10px;
	}
	.guide-top-item h4.is-style-section_ttl {
		font-size: 16px;
	}
}
/* 施設紹介 */
#guide-facilicy-area {
	padding-top: 120px !important;
	padding-bottom: 120px !important;
}
.guide-facility-block > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
}
.guide-facility-gallery {
	flex-basis: 50%;
}
.guide-facility-txt-area {
	flex-basis: 50%;
	padding-left: 50px;
}
.guide-facility-txt-area ul {
	margin-bottom: 40px;
}
.vacant-block {
	background-color: #FFFFFF;
	position: relative;
	padding: 25px 10px 10px;
	border-radius: 10px;
	border: 2px dotted #31980C;
	margin-bottom: 30px;
}
h3.is-style-section_ttl.vacant-block-label {
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 2px 5px;
	margin-bottom: 0;
	background-color: #FDD000;
	font-weight: 600;
	border-radius: 5px;
	position: absolute;
	top: -18px;
	left: 15px;
	font-size: 18px;
}
h3.is-style-section_ttl.vacant-block-label i {
	width: 30px;
	height: 30px;
	background-color: #FFFFFF;
	border-radius: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	color: #F8538C;
}
.vacant-block p {
	font-weight: 500;
}
@media screen and (max-width: 960px) {
	/* 施設紹介 */
	#guide-facilicy-area {
		padding-top: 80px !important;
		padding-bottom: 80px !important;
	}
	.guide-facility-block > .wp-block-group__inner-container {
		flex-wrap: wrap;
		gap: 30px;
	}
	.guide-facility-gallery {
		flex-basis: 100%;
	}
	.guide-facility-txt-area {
		flex-basis: 100%;
		padding-left: 0px;
	}
	h3.is-style-section_ttl.vacant-block-label {
		font-size: 16px;
	}
	h3.is-style-section_ttl.vacant-block-label i {
		width: 25px;
		height: 25px;
	}
}
/* 支援案内 */
#support-area {
	padding-top: 150px !important;
}
p.support-read {
	margin-bottom: 50px;
	font-weight: 500;
}
@media screen and (max-width: 960px) {
	#support-area {
		padding-top: 100px !important;
	}
}
/* 1日の流れ */
p.dailyschedule-read {
	text-align: center;
	line-height: 2;
	font-weight: 500;
}
.dailyschedule-item-unit-outer > .wp-block-group__inner-container {
	display: flex;
	gap: 30px;
}
.dailyschedule-item-unit {
	margin-bottom: 0;
	flex-basis: calc((100% - 30px) / 2);
	position: relative;
	margin-bottom: 0;
}
.dailyschedule-item-unit:before {
	content: "";
	display: inline-block;
	width: 2px;
	height: 100%;
	background-color: #31980C;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}
.dailyschedule-item {
	padding: 5px 15px;
	background-color: #FFFFFF;
	border-radius: 50px;
	border: 1px solid #31980C;
}
.dailyschedule-item > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
	gap: 20px;
}
.dailyschedule-item p:first-child {
	margin-bottom: 0;
	font-size: 30px;
	font-weight: 600;
	color: #31980C;
	position: relative;
	display: flex;
	align-items: center;
	gap: 20px;
}
.dailyschedule-item p:last-child {
	font-size: 20px;
	font-weight: 500;
}
.dailyschedule-item p:first-child:after {
	content: "";
	display: inline-block;
	width: 18px;
	height: 2px;
	background-color: #FDD000;
	border-radius: 1px;
}
@media screen and (max-width: 768px) {
	/* 1日の流れ */
	p.dailyschedule-read {
		text-align: left;
	}
	.dailyschedule-item-unit-outer {
		position: relative;
	}
	.dailyschedule-item-unit-outer > .wp-block-group__inner-container {
		flex-wrap: wrap;
		gap: 20px;
	}
	.dailyschedule-item-unit {
		flex-basis: 100%;
	}
	.dailyschedule-item-unit:before {
		content: none;
	}
	.dailyschedule-item-unit-outer:before {
		content: "";
		display: inline-block;
		width: 2px;
		height: 100%;
		background-color: #31980C;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: -1;
	}
	.dailyschedule-item > .wp-block-group__inner-container {
		gap: 15px;
	}
	.dailyschedule-item p:first-child {
		font-size: 25px;
		gap: 15px;
	}
}
/* ご利用料金について */
p.price-read {
	line-height: 2;
	font-weight: 500;
	margin-bottom: 40px;
}
/* 利用の流れ */
p.flow-read {
	line-height: 2;
	margin-bottom: 60px;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.flow-step-item-unit {
	position: relative;
}
.flow-step-item-unit > .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
.flow-step-item-unit:before {
	content: "";
	display: inline-block;
	width: 100%;
	height: 2px;
	background-color: #31980C;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.flow-step-item {
	flex-basis: calc((100% - 90px) / 4);
	margin-bottom: 0;
	background-color: #FFFFFF;
	border-radius: 10px;
	border: 2px dotted #31980C;
	padding: 20px 10px;
	position: relative;
}
.flow-step-item:before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 22px;
	background-color: #31980C;
	position: absolute;
	top: 50%;
	right: -32px;
	transform: translateY(-50%);
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.flow-step-item:last-child:before {
	content: none;
}
.flow-step-item figure {
	margin-bottom: 10px;
}
.flow-step-item img {
	max-width: 95px;
}
.flow-step-item  h3.is-style-section_ttl {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: 500;
}
.flow-step-label {
	display: flex;
	flex-direction: column;
	gap: 3px;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-weight: 600;
	background-color: #FDD000;
	width: 50px;
	height: 50px;
	border-radius: 5px;
	line-height: 1;
	position: absolute;
	top: -25px;
	left: 10px;
}
.flow-step-label span {
	font-size: 25px;
}
p.flow-step-disc {
	line-height: 1.8;
	font-size: 14px;
}
@media screen and (max-width: 960px) {
	/* 利用の流れ */
	.flow-step-item-unit > .wp-block-group__inner-container {
		gap: 50px 30px;
	}
	.flow-step-item-unit:before {
		content: none;
	}
	.flow-step-item {
		flex-basis: calc((100% - 60px) / 2);
	}
	.flow-step-item:first-child:after,
	.flow-step-item:nth-child(3):after{
			content: "";
		display: inline-block;
		width: 30px;
		height: 2px;
		background-color: #31980C;
		position: absolute;
		top: 50%;
		right: -30px;
		transform: translateY(-50%);
		z-index: -1;
	}
	.flow-step-item:last-child:before,
	.flow-step-item:nth-child(2):before{
		content: none;
	}
	.flow-step-item img {
		max-width: 80px;
	}
}
@media screen and (max-width: 768px) {
	/* 利用の流れ */
	.flow-step-item-unit:before {
		content: "";
		width: 3px;
		height: 100%;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.flow-step-item {
		flex-basis: 100%;
	}
	.flow-step-item:first-child:after,
	.flow-step-item:nth-child(3):after{
			content: none;
	}
	.flow-step-item:before {
		content: "" !important;
		display: inline-block;
		width: 22px;
		height: 12px;
		background-color: #31980C;
		position: absolute;
		top: -13px;
		right: 50%;
		transform: translateX(50%);
		clip-path: polygon(0 0, 100% 0, 50% 100%);
	}
	.flow-step-item:first-child:before {
		content: none !important;
	}
}
/* ----------------------------------
施設紹介
-------------------------------------*/
/* リード文&空き状況 */
.facility-top-read {
	border-radius: 10px;
	line-height: 2;
	margin-bottom: 60px;
}
.vacant-block.facility-vacant {
	max-width: 500px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	/* リード文&空き状況 */
	.facility-top-read {
		margin-bottom: 40px;
	}
	.vacant-block.facility-vacant {
		margin: 0 auto;
	}
}
/* 居室紹介 */
.private-room-item-top-ttl {
	position: relative;
}
.private-room-item-top-ttl:before {
	content: "";
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: #31980C;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.private-room-item-top-ttl h3.is-style-section_ttl {
	display: inline-block;
	font-size: 25px;
	font-weight: 500;
	color: #FFFFFF;
	background-color: #31980C;
	padding: 0 20px;
	border-radius: 10px;
}
.private-room-item-unit > .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.private-room-item {
	margin-bottom: 0;
	flex-basis: calc((100% - 40px) / 3);
	background-color: #FAF7EF;
	padding: 10px 15px;
	border-radius: 10px;
}
.private-room-item figure {
	margin-bottom: 10px;
}
.private-room-item figure img {
	max-width: 100px;
}
.private-room-item h4.is-style-section_ttl {
	margin-top: 0;
	margin-bottom: 5px;
	font-weight: 500;
}
@media screen and (max-width: 960px) {
	/* 居室紹介 */
	.private-room-item-top-ttl h3.is-style-section_ttl {
		font-size: 20px;
		padding: 3px 20px;
		border-radius: 5px;
	}
	.private-room-item-unit > .wp-block-group__inner-container {
		gap: 15px 20px;
	}
	.private-room-item {
		flex-basis: calc((100% - 20px) / 2);
		padding: 10px 15px;
	}
	.private-room-item figure img {
		max-width: 80px;
	}
}
@media screen and (max-width: 768px) {
	/* 居室紹介 */
	.private-room-item-unit > .wp-block-group__inner-container {
		gap: 10px;
	}
	.private-room-item {
		flex-basis: calc((100% - 10px) / 2);
		padding: 10px;
	}
	.private-room-item figure img {
		max-width: 60px;
	}
	.private-room-item p {
		font-size: 14px;
	}
}
/* 周辺環境 */
.location-block > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
}
.location-gallery {
	flex-basis: 60%;
}
.location-txt-area {
	flex-basis: 40%;
	padding-right: 50px;
}
.location-txt-area figure {
	margin-bottom: 30px;
}
.location-txt-area table tr td {
	font-weight: 400;
	line-height: 2;
}
.location-txt-area table tr td:first-child {
	font-weight: 500;
}
@media screen and (max-width: 960px) {
	.location-block > .wp-block-group__inner-container {
		flex-wrap: wrap;
		gap: 40px;
	}
	.location-gallery {
		flex-basis: 100%;
	}
	.location-txt-area {
		flex-basis: 100%;
		padding-right: 0px;
		order: 2
	}
}
/* ----------------------------------
よくある質問
-------------------------------------*/
/* リード文&メニューリスト */
p.faq-top-read {
	border-radius: 10px;
	line-height: 2;
	margin-bottom: 40px;
}
ul.faq-menu-list {
	list-style: none;
	padding: 0;
	display: flex;
	gap: 30px;
}
ul.faq-menu-list li {
	flex-basis: calc((100% - 60px) / 3);
	margin-bottom: 0;
}
ul.faq-menu-list li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #31980C;
	color: #FFFFFF;
	padding: 15px 20px;
	border-radius: 10px;
	font-size: 18px;
	font-weight: 500;
	border: 1px solid #31980C;
	transition: .3s;
}
ul.faq-menu-list li a i {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	border-radius: 18px;
	background-color: #FFFFFF;
	color: #31980C;
	font-size: 16px;
	transition: .3s;
}
ul.faq-menu-list li a:hover {
	background: #FAF7EF;
	color: #31980C;
	box-shadow: 0 2px 5px rgba(0,0,0,.1);
	transition: .3s;
}
ul.faq-menu-list li a:hover i {
	background-color: #31980C;
	color: #FFFFFF;
	transition: .3s;
}
@media screen and (max-width: 960px) {
	p.faq-top-read {
		border-radius: 10px;
		line-height: 2;
		margin-bottom: 40px;
	}
	ul.faq-menu-list {
		flex-wrap: wrap;
		gap: 10px;
	}
	ul.faq-menu-list li {
		flex-basis: 100%;
	}
	ul.faq-menu-list li a {
		padding: 10px 15px;
	}
}
/* FAQ */
#faq-content-area {
	border-radius: 100px;
	margin-bottom: 80px !important;
}
.swell-block-accordion__title {
	background-color: #FFFFFF;
	border-radius: 5px;
}
span.swell-block-accordion__label {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 500 !important;
}
span.swell-block-accordion__label:before {
	content: "Q";
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFFFFF;
	font-size: 20px;
	font-weight: 600;
	background-color: #31980C;
	width: 43px;
	height: 43px;
	border-radius: 25px;
	flex: 0 0 43px; 
}
.swell-block-accordion__body {
	background-color: #FFFFFF;
	margin-top: 5px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}
.swell-block-accordion__body p {
	flex-basis: calc(100% - 10px - 43px);
}
.swell-block-accordion__body:before {
	content: "A";
	flex-basis 43px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #333333;
	font-size: 20px;
	font-weight: 600;
	background-color: #FDD000;
	width: 43px;
	height: 43px;
	border-radius: 25px;
}
i.__icon--closed.icon-plus {
	background-color: #31980C;
	color: #FFFFFF;
	border-radius: 3px;
}
i.__icon--opened.icon-minus {
	background-color: #FDD000;
	color: #333333;
	border-radius: 3px;
}
@media screen and (max-width: 960px) {
	/* FAQ */
	#faq-content-area {
		border-radius: 50px;
		margin-bottom: 50px !important;
	}
	span.swell-block-accordion__label:before {
		font-size: 18px;
		width: 35px;
		height: 35px;
		flex: 0 0 35px; 
	}
	.swell-block-accordion__body p {
		flex-basis: calc(100% - 10px - 35px);
	}
	.swell-block-accordion__body:before {
		flex-basis 35px;
		font-size: 18px;
		width: 35px;
		height: 35px;
	}
}
/* -----------------------------------------------------------
お問い合わせ
-----------------------------------------------------------*/
.page-id-20 #cta-area {
	display: none;
}
.contact-top-read {
  border-radius: 10px;
  line-height: 2;
  margin-bottom: 60px;
}
.contact-tel-number {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 40px;
	font-weight: 700;
	margin-bottom: 0;
}
.contact-tel-number:before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900; 
  content: "\f2a0";
	font-size: 25px;
	display: inline-block;
	transform: rotate(-35deg);
}
.contact-tel-number-btm-disc {
	font-size: 14px;
}
/* LINEでのお問い合わせ */
h3.is-style-section_ttl.contact-line-sub-ttl {
	font-size: 20px;
	font-weight: 500;
	margin-top: 0;
}
/* お問い合わせフォーム */
.contact-form-inner {
	max-width: 1200px;
	margin: 0 auto;
}
.form-item {
	display: flex;
	padding: 10px 0;
}
/* ラベル */
.form-item label {
	flex-basis: 25%;
	display: flex;
	align-items: center;
}
/* ※ */
.form-item label span {
	color: red;
	line-height: 0.5;
	padding-left: 10px;
}
/* form */
.form-item > span {
	width: 75%;
}
.form-item input{
	height: 45px;
	width: 100%;
	background-color: #FFFFFF;
	border: 1px solid #D3D3D3;
}
/* subject */
.form-item.subject input {
	height: auto !important;
	width: auto;
}
.form-item.subject span label {
	font-size: 14px !important;
}
span#your-subject span {
	color: #333;
}
.form-item.subject .wpcf7-list-item-label {
	padding-left: 3px;
}
/* お問い合わせ内容 */
.form-item textarea {
	width: 100%;
	min-height: 200px;
	background-color: #FFFFFF;
	border: 1px solid #D3D3D3;
}
.form-item textarea#your-license {
	max-height: 100px;
}
/* 個人情報取扱同意 */
.last-check {
	margin-top: 20px;
	display: flex;
	justify-content: center;
}
.last-check input {
	width: 15px;
	height: 15px;
	vertical-align: middle;
}
.last-check label {
	padding-left: 15px;
	font-size: 16px;
	line-height: 2em;
}
/* 送信ボタン　 */
.send-btn {
	position: relative;
	max-width: 265px;
	height: 50px;
	margin: 0 auto;
	margin-top: 30px;
}
.send-btn input{
	width: 100%;
	padding: 15px 20px;
	background-color: #31980C;
	color: #FFFFFF;
	border: 1px solid #000000;
	font-weight: 500;
	letter-spacing: .2em;
	transition: .3s;
}
/* 送信ボタンホバー */
.send-btn input:hover {
	background-color: #FFFFFF;
	color: #31980C;
	border: 1px solid #31980C;
	transition: .3s;
}
/* お問合せ SP*/
@media screen and (max-width: 960px) {
		.contact-form-inner {
			margin: 0 auto;
			padding: 0;
		}
		.form-item {
			display: flex;
			flex-direction: column;
		}
		.form-item label {
			flex-basis: 100%;
			justify-content: left;
		}
	 .form-item label br {
		 display: none;
	}
		.form-item > span {
			width: 100%;
		}
		.form-item input{
			height: 45px;
			width: 100%;
		}
		.form-item .form-flex {
			width: 100%;
		}
		.form-item textarea {
			min-height: 200px;
		}
		.last-check {
			margin-top: 15px;
		}
		.send-btn {
			margin-top: 20px;
		}
		.send-btn input{
			height: 60px;
		}
	.your-subject span.wpcf7-list-item {
		width: 100%;
		margin-left: 0;
	}
	.your-subject input {
		height: 30px !important;
	}
}