:root {
	--color_text: #333;
	--color_main: #f38aa1;
	--clr-pnk1: #f6c6d7;
	--clr-pnk2: #f4e1e6;
	--clr-pnk3: #d2a8d6;
	--clr-pnk4: #FDF4F4;
	--clr-gry1: #cccccc;
	--clr-gry2: #F5F5F5;
	--clr-grn: #00b5a4;
	--clr-blu2: #4fa9de;
	--clr-blu1: #2aa2db;
	--clr-red1: #f27b83;
	--clr-red2: #f2305a;
	--clr-yel: #f2dc8a;
	--ttl: "Mochiy Pop One", sans-serif;
}

:root {
	--swl-fz--xs: .75em;
	--swl-fz--small: .875em;
	--swl-fz--large: 1.125em;
	--swl-fz--huge: 1.375em;
}

/*common */

a {
	/* display: block; */
	transition: all 0.3s ease;
}

a:hover {
	opacity: 0.6;
}

.pc {
	display: block;
}

.tb {
	display: none;
}

.tbonly {
	display: none;
}

.sp {
	display: none;
}


img {
	height: auto;
	max-width: 100%;
}

address {
	font-style: normal;
}

ul li {
	list-style-position: inside;
}

/* .swell-block-fullWide__inner {
	padding: 0 5%;
} */





@media (max-width: 960px) {
	.pc {
		display: none;
	}


	.tb {
		display: block;
	}

	.tbonly {
		display: block;
	}

	.u-mb-60 {
		margin-bottom: 5em !important;
	}

	.u-mb-50 {
		margin-bottom: 4em !important;
	}

	.u-mb-40 {
		margin-bottom: 3em !important;
	}

	.u-mb-30 {
		margin-bottom: 2em !important;
	}

	.u-mb-20 {
		margin-bottom: 1em !important;
	}

	.u-fz-xl {
		font-size: 1.25em !important;
	}

	.swell-block-fullWide__inner {
		padding: 0 5%;
	}

}

@media (max-width: 600px) {


	.tbonly {
		display: none;
	}

	.sp {
		display: block;
	}


}


/* ---------------------------------------------------------
   header  | ヘッダー
   --------------------------------------------------------- */

.l-header__inner.l-container {
	max-width: none;
	position: relative;
	padding-right: 0;
}

.c-gnav {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: auto auto;
	gap: 10px 15px;
	padding: 20px 0;
}

.c-gnav>.menu-item>a {
	padding: 5px;
}

.c-gnav>.menu-item>a .ttl {
	font-size: 16px;
	font-weight: 500;

}

.c-gnav>.menu-item:nth-of-type(1) {
	grid-row: 2;
}

.c-gnav>.menu-item:nth-of-type(2) {
	grid-row: 2;
}

.c-gnav>.menu-item:nth-of-type(3) {
	grid-row: 2;
}

.c-gnav>.menu-item:nth-of-type(4) {
	grid-row: 2;
}

.c-gnav>.menu-item:nth-of-type(5) {
	grid-row: 2;
}

.c-gnav>.menu-item:nth-of-type(6) {
	grid-row: 2;
}

.c-gnav>.menu-item:nth-of-type(7) {
	grid-column: 6;
	grid-row: 1;
}

/* .c-gnav>.menu-item:nth-of-type(8){
	grid-column: 6;
	grid-row: 1;
} */
.c-gnav>.menu-item:nth-of-type(n+7)>a .ttl {
	font-size: 14px;
	line-height: 1;
	font-weight: 400;
}


.l-fixHeader__inner {
	max-width: none;
}

.c-headLogo .-img {
	max-width: auto;
}

.l-fixHeader__logo .c-headLogo {
	width: auto;
	height: 42px;
}

.c-gnav>.menu-item>a::after {
	bottom: -10px;
}

.c-gnav>.menu-item:nth-of-type(n+7)>a:after {
	content: none;
}

.c-gnav>li:hover>a::after {
	transform: scaleX(1);
}

.l-header__inner.l-container .w-header.pc_ {
	height: auto;
}

.l-header__inner.l-container .w-header.pc_ div,
.l-header__inner.l-container .w-header.pc_ p {
	height: 100%;
}

.l-header__inner.l-container .w-header__inner a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: 14px;
	font-weight: 600;
	color: #fff;
	background: #efa4ab;
	padding: 0 10px;
	gap: 5px;
}

.l-header__inner.l-container .w-header__inner a span {
	width: 100%;
}


.l-header__inner.l-container .w-header__inner a span::after {
	width: 100%;
	max-width: none;
}



@media (max-width: 1200px) {
	.c-gnav {
		gap: 8px;
	}

	.c-gnav>.menu-item>a {
		padding: 0 5px;

	}

}

@media (min-width: 960px) {
	.-series-right .w-header #custom_html-2 [class*=is-style-btn_] {
		margin-bottom: 0 !important;
	}

	.-series-right .w-header #custom_html-2 div {
		display: flex;
		align-items: center;
		justify-content: center;
	}
}


/* ---------------------------------------------------------
   Footer  | フッター
   --------------------------------------------------------- */

.footer_top {
	background: var(--clr-gry2);
	padding: 30px 5% 30px;
}

.footer_wrap {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.footer_grouptop {
	font-size: clamp(18px, 2.34vw, 20px);
	font-weight: 700;
	width: 250px;
}

.footer_group {
	display: flex;
	flex-wrap: wrap;
	row-gap: 20px;
	width: calc(100% - 250px);
}

.footer_group li {
	border-left: 1px solid var(--clr-pnk1);
	padding-left: 10px;
	width: 33.3%;
}

.footer_group li img {
	vertical-align: middle;
	width: 80px;
}

.footer_group li span {
	font-size: clamp(14px, 1.82vw, 16px);
	padding-left: 15px;
	display: inline-block;
}

.footer_mid {
	align-items: flex-end;
	background: var(--clr-pnk4);
	display: flex;
	justify-content: space-between;
	padding: 50px 5% 20px;
}

.footer_logo {
	margin: 0 auto 20px;
	width: clamp(250px, 35.16vw, 340px);
}

.footer_address {
	margin: 0 auto;
	text-align: center;
	width: -moz-max-content;
	width: max-content;
}

.footer_name {
	font-size: clamp(18px, 2.34vw, 22px);
	margin-bottom: 5px;
}

.footer_name span {
	font-size: .8em;
	margin-right: .5em;
}

.footer_contact {
	font-size: clamp(14px, 1.82vw, 16px);
}

.footer_contact a {
	display: inline-block;
}

.footer_tel {
	margin-right: 20px;
	pointer-events: none;
}

.footer_mail {
	text-decoration: underline;
}

.footer_btm {
	background: var(--color_main);
	padding: 10px 3%;
}

.footer_wrap {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.footer_link {
	align-items: center;
	display: flex;
	gap: 15px;
}

.footer_link li a {
	color: #fff;
	font-size: 12px;
	padding-left: 0.8em;
	position: relative;
}

.footer_link li a::before {
	color: #fff;
	content: "\f105";
	font-family: fontawesome;
	left: 0;
	position: absolute;
	top: 1px;
}

.footer_copyright {
	color: #fff;
	font-size: 12px;
}

@media only screen and (max-width: 1400px) {
	.footer_group li {
		width: 50%;
	}
}

@media (max-width: 1200px) {
	.footer_wrap {
		flex-direction: column;
		row-gap: 20px;
	}

	.footer_group {
		margin: 0 auto;
		width: 100%;
	}

	.footer_group li img {
		width: 60px;
	}
}

@media (max-width: 960px) {
	.footer_top {
		padding: 20px 5% 20px;
	}

	.footer_wrap {
		margin: 0 auto;
		row-gap: 10px;
	}

	.footer_grouptop {
		background: #fff;
		border-radius: 10px;
		font-weight: normal;
		position: relative;
		text-align: center;
		width: 100%;
	}

	.footer_grouptop a {
		align-items: center;
		display: flex;
		height: 50px;
		justify-content: center;
		position: relative;
	}

	.footer_grouptop a::before {
		aspect-ratio: 1/1;
		background: url(./img/gnav_arw.png) no-repeat center center/contain;
		content: "";
		display: block;
		left: 2.5%;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 12px;
	}

	.footer_group {
		justify-content: space-between;
		row-gap: 10px;
	}

	.footer_group li {
		background: #fff;
		border-radius: 10px;
		padding-left: 0;
		width: 49%;
		border-left: none;
	}

	.footer_group li a {
		align-items: center;
		display: block;
		display: flex;
		height: 50px;
		justify-content: center;
	}

	.footer_group li img {
		display: none;
	}

	.footer_group li span {
		letter-spacing: 0.05em;
		line-height: 1.3;
		margin-left: 0;
		position: relative;
		text-align: center;
		width: 100%;
	}

	.footer_group li span::before {
		aspect-ratio: 1/1;
		background: url(./img/gnav_arw.png) no-repeat center center/contain;
		content: "";
		display: block;
		left: 5%;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 12px;
	}
}

@media (max-width: 782px) {

	.footer_logo {
		margin-bottom: 20px;
		text-align: center;
	}

	.footer_contact span {
		display: block;
	}

	.footer_tel {
		margin: 10px auto 0;
		pointer-events: auto;
		text-decoration: underline;
		width: -moz-max-content;
		width: max-content;
	}


	.footer_copyright {
		line-height: 1.5;
		text-align: center;
	}

	.footer_copyright span {
		display: inline-block;
	}
}

@media (max-width: 600px) {
	.footer_mid {
		align-items: center;
		flex-direction: column;
		padding: 30px 5% 10px;
	}

	.footer_link {
		justify-content: space-between;
		margin-bottom: 10px;
	}
}


/* ---------------------------------------------------------
   mainvisual  | メインビジュアル
   --------------------------------------------------------- */

.p-mainVisual::after {
	content: "";
	position: absolute;
	display: block;
	width: 216px;
	aspect-ratio: 480 / 587;
	background: url(./img/tree-1.png) no-repeat center/contain;
	left: 3%;
	bottom: 10px;
	z-index: 5;
}

.p-mainVisual .swiper-wrapper {
	border-top-left-radius: 60px;
	border-bottom-left-radius: 60px;
	overflow: hidden;
	width: 88%;
	margin: 0 0 0 auto;
}

.p-mainVisual__textLayer {
	height: auto;
	width: max-content;
	left: 12%;
	top: 15%;
	transform: translateX(-30%);
	justify-content: flex-start;
	padding: 0;
}

.p-mainVisual__slideTitle {
	font-size: clamp(1.563rem, 1.232rem + 1.41vw, 2.5rem);
	font-family: var(--ttl);
	line-height: 1;
}

.p-mainVisual__slideTitle span {
	display: block;
	width: max-content;
	background: #fff;
	padding: .5em;
	letter-spacing: .1em;
}

.p-mainVisual__slideTitle span+span {
	margin-top: 20px;
}


@media (max-width: 960px) {

	.p-mainVisual .swiper-wrapper {
		width: calc(100% - 50px);
		border-top-left-radius: 30px;
		border-bottom-left-radius: 30px;

	}

	.p-mainVisual__textLayer {
		left: 50px;
		transform: translateX(-40px);
	}

	.p-mainVisual::after {
		width: 100px;
	}

	.p-mainVisual__slideTitle span+span {
		margin-top: 10px;
	}

}



/* ---------------------------------------------------------
   Top  |  Topページ
   --------------------------------------------------------- */

/* 背景 */
#body_wrap.top::before {
	content: none;
}

/* h2 title */
.top h2 {
	text-align: center;
	font-family: var(--ttl);
	font-size: clamp(1.563rem, 1.25rem + 1.33vw, 2.25rem);
	letter-spacing: .15em;
	font-weight: 500;
	position: relative;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.top h2::after {
	content: "";
	display: block;
	position: absolute;
	width: 2.2em;
	aspect-ratio: 168 / 36;
	background: url(./img/ttl_deco.png) no-repeat center/contain;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);

}


/*common  */
.top .l-content {
	margin-bottom: 0;
}



/* .top .swell-block-fullWide__inner {
	padding: 0 5vw;
} */

/* .swell-block-columns .swell-block-column {
    margin: 0 0 0 var(--swl-clmn-mrgn--x);
    padding: var(--swl-clmn-pddng);
    width: calc(var(--clmn-w) - var(--swl-clmn-mrgn--x));
} */
/* top-wrap */
.top-wrap .swell-block-columns__inner {
	padding: 0 40px;
	width: min(100%, 1480px);
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--swl-clmn-mrgn--x);
	margin-inline: auto;
}

.top-wrap_item {
	margin: 0 !important;
	width: auto !important;
}


/* top-btn */
.top-btn a {
	padding: .6em 0;
	width: 300px;
	min-width: auto;
}

.top-btn a span {
	letter-spacing: .2em;
}



@media (max-width: 960px) {
	.top-wrap .swell-block-columns__inner {
		padding: 0;
		grid-template-columns: repeat(2, 1fr);
		gap: 40px;
	}

	.top-wrap_item:nth-child(3) {
		grid-column: 1 / -1;
		justify-self: center;
		max-width: calc(50% - var(--swl-clmn-mrgn--x) / 2);
	}

	.top-btn a {
		padding: .4em 0;
	}

	.top-btn a span {
		font-size: 1em !important;
	}
}

@media (max-width: 600px) {
	.top-wrap .swell-block-columns__inner {
		grid-template-columns: repeat(1, 1fr);
		height: max-content;
	}

	.top-wrap_item:nth-child(3) {
		grid-column: auto;
		max-width: 100%;
	}
}

/* top-news */
.top-news {
	position: relative;
	padding-bottom: 200px !important;
}

.top-news::after {
	content: "";
	position: absolute;
	display: block;
	background: url(./img/risu.png) no-repeat center/contain;
	width: clamp(110px, 16%, 230px);
	aspect-ratio: 498 / 388;
	right: 5%;
	bottom: 1%;
	z-index: 5;

}

.top-news .is-style-more_btn {
	display: none;
}

.top-news_list {
	width: auto;
	flex: 1
}

.top-news_wrap .swell-block-columns__inner {
	align-items: center;
}

.top-news .top-btn a {
	width: 200px;
}

@media (max-width: 960px) {
	.top-news {
		padding-bottom: 110px !important;
	}

}

@media (max-width: 600px) {
	.top-news .top-btn a {
		width: 300px;
	}
}

/* top-blog */
.top-blog {
	position: relative;

}

.top-blog::before {
	content: "";
	display: block;
	position: absolute;
	top: 40px;
	left: 10%;
	width: clamp(70px, 10%, 120px);
	aspect-ratio: 500 / 575;
	background: url(./img/bird.png) no-repeat center/contain;

}


.top-blog_list {
	/* width: min(100%, 1400px); */
	padding: 0 3%;
	margin-inline: auto;
}


.top-blog .c-postThumb__figure {
	aspect-ratio: 3 / 2;
}

.top-blog_list .-type-card .p-postList__title {
	font-size: 16px;
	font-weight: 500;
}

@media (min-width: 1020px) {
	.top-blog_list .-type-card.-pc-col3 .p-postList__item {
		width: 25%;
		padding: 0 1em;
	}
}

@media (max-width: 960px) {

	.top-blog::before {
		top: 10px;
		left: 5%;
	}

	.top-blog_list .-type-card .p-postList__title {
		font-size: 14px;
	}

}



/* top-about */
.top-about {
	position: relative;
}


.top-about::before {
	content: "";
	position: absolute;
	display: block;
	top: 10px;
	left: 1%;
	background: url(./img/tree-2.png) no-repeat center/contain;
	width: clamp(120px, 17%, 250px);
	aspect-ratio: 642 / 824;
	transform: translateY(-20%);
	z-index: 5;
}


.top-about::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	right: 3%;
	width: clamp(80px, 12.5%, 180px);

	aspect-ratio: 500 / 457;
	background: url(./img/house.png) no-repeat center/contain;
	z-index: 5;
}

.top-about .swell-block-fullWide__inner {
	z-index: 10;
}

.top-about_wrap {
	padding-left: calc(50vw - 550px);
	position: relative;
}

.top-about_wrap .wp-block-media-text__content {
	padding: 0 3rem 0 0;
	gap: 5em;
}

.top-about_wrap .wp-block-media-text__media {
	position: relative;
	z-index: 0;
}

.top-about_wrap .wp-block-media-text__media::before {
	content: "";
	display: block;
	position: absolute;
	width: 40%;
	aspect-ratio: 1 / 1;
	background: url(./img/maru_blu.png) no-repeat center/contain;
	top: -3%;
	left: 2%;
}

.top-about_wrap .wp-block-media-text__media::after {
	content: "";
	display: block;
	position: absolute;
	width: 25%;
	aspect-ratio: 1 / 1;
	background: url(./img/maru_yel.png) no-repeat center/contain;
	bottom: -3%;
	left: -3%;
	z-index: -1;
}


.top-about_wrap .wp-block-media-text__media img {
	-webkit-mask-size: contain;
	mask-size: contain;

	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-image: url(./img/top-about_shape.png);
	mask-image: url(./img/top-about_shape.png);

}


.top-about_item .c-bannerLink {
	border-radius: 50%;
	overflow: visible;
}

.top-about_item .c-bannerLink__text {
	position: absolute;
	width: 120px;
	height: 120px;
	background: url(./img/maru-2.png) no-repeat center/contain;
	padding: 0;
	left: -6%;
	top: auto;
	bottom: 0;
}

.top-about_item .c-bannerLink__title {
	font-size: 1.2em;
	white-space: nowrap;
	color: var(--color_text);
}

@media (max-width: 1200px) {
	.top-about .swell-block-fullWide__inner {
		padding: 0 30px;
	}

	.top-about_wrap {
		display: flex;
		flex-direction: column;
		padding-left: 0;
	}

	.top-about_wrap .wp-block-media-text__media {
		width: min(800px, 100%);
		margin-inline: auto;
	}

	.top-about_wrap .wp-block-media-text__content {
		width: min(700px, 100%);
		margin-inline: auto;
		padding: 0;
	}

	.top-about_item .c-bannerLink__text {
		width: 100px;
		height: 100px;
	}

	.top-about_item .c-bannerLink__title {
		font-size: 1.1em;
	}

}


@media (max-width: 960px) {
	.top-about .swell-block-fullWide__inner {
		padding: 0 5%;

	}

	.top-about .top-btn {
		margin-top: -40px;
	}

}

@media (max-width: 600px) {
	.top-about::after {
		bottom: -20px;
	}

	.top-about_item figure {
		aspect-ratio: 3 / 2;
	}

	.top-about_item .c-bannerLink {
		border-radius: 30% 30% 10px 10px;
	}

	.top-about_item .c-bannerLink__text {
		left: 0;
	}

}



/* top-support */
.top-support {
	position: relative;
	z-index: 0;
}

.top-support::before {
	content: "";
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	background: url(./img/flag.png) no-repeat center/contain;
	width: clamp(140px, 20%, 300px);
	aspect-ratio: 828 / 394;

}

.top-support::after {
	content: "";
	position: absolute;
	display: block;
	bottom: 0;
	right: 1%;
	background: url(./img/tree-3.png) no-repeat center/contain;
	width: clamp(140px, 17.4%, 250px);
	aspect-ratio: 546 / 547;

}

.top-support .top-wrap_item figure {
	width: 100%;
	aspect-ratio: 3 / 2;
}


@media (max-width: 1200px) {


	.top-support_item .c-bannerLink__title {
		font-size: 1.25em;
	}
}

@media (max-width: 960px) {

	.top-support {
		padding-bottom: 6em !important;
	}

	.top-support .block-fullWide__inner>* {
		margin-bottom: 1em;
	}

}



/* top-entry */
.top-entry {
	margin-bottom: 0;
	padding: 3em 0 !important;
}

.top-entry_wrap {
	padding: 20px;
	background: #fff;
}

.top-entry_wrap .wp-block-media-text__content {
	padding: 0 30px 0;
}



@media (max-width: 960px) {
	.top-entry h2 {
		margin-inline: auto;
	}

	.top-entry_wrap {
		margin-right: 0;
		grid-template-columns: 100% !important;
		grid-template-rows: auto auto;
		gap: 20px;
	}


	.top-entry_wrap .wp-block-media-text__media {
		grid-column: 1 !important;
		grid-row: 1;
		width: min(100%, 600px);
		margin-inline: auto;
	}

	.top-entry_wrap .wp-block-media-text__content {
		padding: 0 !important;
		grid-column: 1 !important;
		grid-row: 2 !important;

	}
}

/* ---------------------------------------------------------
   page  |  固定ページ
   --------------------------------------------------------- */
@media (min-width: 600px) {
	.l-topTitleArea {
		min-height: 350px;
		padding: 1em 0;
	}
}

.l-topTitleArea .c-pageTitle {
	font-family: var(--ttl);
	font-weight: 500;
	background: rgba(239, 245, 232, .7);
	width: max-content;
	color: #333;
	padding: .5em 2em;
}

.l-mainContent__inner .c-pageTitle {
	text-align: center;
	font-family: var(--ttl);
	font-size: clamp(1.563rem, 1.25rem + 1.33vw, 2.25rem);
	letter-spacing: .15em;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	gap: 10px;
	margin: 4em 0 1.5em;
}

.l-mainContent__inner .c-pageTitle__inner {
	padding-top: 0;
}

.l-mainContent__inner .c-pageTitle:before {
	content: "";
	display: inline-block;
	position: relative;
	width: 1em;
	aspect-ratio: 170 / 70;
	background: url(./img/h1_deco-l.png) no-repeat center/contain;
}

.l-mainContent__inner .c-pageTitle:after {
	content: "";
	display: inline-block;
	position: relative;
	width: 1em;
	aspect-ratio: 170 / 70;
	background: url(./img/h1_deco-r.png) no-repeat center/contain;
	visibility: visible;
	height: auto;
}


/* 背景 */

@media (max-width: 1200px) {
	#body_wrap.-bg-fix:before {
		content: none;
	}
}

/* タイトル */
h2.page-h2 {
	text-align: center;
	font-family: var(--ttl);
	font-size: clamp(1.563em, 1.25em + 1.33vw, 2.25em) !important;
	letter-spacing: .15em;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	gap: 10px;
	margin: 4em 0 1.5em;
}

h2.page-h2:before {
	content: "";
	display: inline-block;
	position: relative;
	width: 1em;
	aspect-ratio: 170 / 70;
	background: url(./img/h1_deco-l.png) no-repeat center/contain;
}

h2.page-h2:after {
	content: "";
	display: inline-block;
	position: relative;
	width: 1em;
	aspect-ratio: 170 / 70;
	background: url(./img/h1_deco-r.png) no-repeat center/contain;
}

h3.page-h3 {
	font-size: clamp(1.25em, 1.05em + 0.67vw, 1.75em) !important;
	padding-bottom: 30px;
	background: url(./img/title-line.png) repeat-x left bottom/auto 15px;

}

h4.page-h4 {
	font-size: clamp(1.125em, 1.063em + 0.27vw, 1.25em) !important;
	padding-left: 35px;
	background: url(./img/reaf-1.png) no-repeat left center/25px auto;
}

/* .post_content h4 {
			font-size: 1.2em !important;
		} */

h5.page-h5 {
	padding-left: 10px;
	border-left: 5px solid #efa4ab;
}


/* 横幅ワイド */
.page-wide {
	margin-left: -100px;
	width: calc(100% + 200px);
}


@media (max-width: 1200px) {
	.page-wide {
		margin-left: 0;
		width: 100%;
	}

}


.center-left {
	text-align: center;
}

@media (max-width: 960px) {
	.center-left {
		text-align: left !important;
	}
}

/* パンくず */
@media (min-width: 600px) {
	.p-breadcrumb__list {
		font-size: 14px;
	}
}

.c-tagList a {
	background: #8ac26c;
	color: #fff;
}

.c-tagList::before {
	color: #8ac26c !important;

}

/*************************  園の紹介 about  **************************/


.about_rinen {
	width: min(700px, 100%);
	margin-inline: auto;
}

.about_list .swell-block-columns__inner {
	justify-content: center;

}


.about_goals {
	padding: 60px 0 !important;
	border: 2px solid;
	border-radius: 20px;
	position: relative;
	background: #fff;
}


.about_goals-1 {
	border-color: var(--wp--preset--color--swl-deep-02);
}

.about_goals-2 {
	border-color: var(--wp--preset--color--swl-deep-03);
}

.about_goals-3 {
	border-color: var(--wp--preset--color--swl-deep-04);
}

.about_no {
	position: absolute;
	top: 0;
	left: 0;
	line-height: 1;
	padding: .8em;
	border-radius: 100px;
	color: #fff;
	transform: translate(25%, -50%);
}

.about_no::after {
	content: "";
	position: absolute;
	display: block;
	width: 88%;
	height: 88%;
	border: 1px solid #fff;
	border-radius: 100px;
	top: 6%;
	left: 6%;
}

.about_goals-1 .about_no {
	background-color: var(--wp--preset--color--swl-deep-02);
}

.about_goals-2 .about_no {
	background-color: var(--wp--preset--color--swl-deep-03);
}

.about_goals-3 .about_no {
	background-color: var(--wp--preset--color--swl-deep-04);
}

.about_goals-1::after {
	content: "";
	position: absolute;
	display: block;
	width: 23%;
	aspect-ratio: 164 / 152;
	background: url(./img/about_deco1.png) no-repeat center/contain;
	bottom: -10%;
	left: -7%;
}

.about_goals-2::after {
	content: "";
	position: absolute;
	display: block;
	width: 40%;
	aspect-ratio: 199 / 133;
	background: url(./img/about_deco2.png) no-repeat center/contain;
	top: -15%;
	right: 3%;
}

.about_goals-3::after {
	content: "";
	position: absolute;
	display: block;
	width: 40%;
	aspect-ratio: 209 / 146;
	background: url(./img/about_deco3.png) no-repeat center/contain;
	bottom: -10%;
	right: -15%;
}


.about_effort {
	align-items: center;
}

.about_effort ul {
	padding-left: 0;
}

.about_effort ul li+li {
	margin-top: 20px;
}

.about_effort ul li {
	list-style: none;
	padding-left: 40px;
	background: url(./img/reaf-1.png) no-repeat left top/25px auto;
}






/* .about_media>div {
	margin-left: -8em !important;
	padding: 10px 10px 10px 0px !important;
	background: #fbedf0;
}

@media (min-width: 961px) {
	.about_media.alignwide {
		left: -100px;
		width: calc(100% + 200px);
	}
}

@media (max-width: 960px) {
	.about_media {
		grid-template-columns: 100% !important;
	}

	.about_media>figure {
		grid-column: 1 !important;
		grid-row: 1 !important;
		width: min(600px, 100%);
		margin-inline: auto !important;
		;
	}

	.about_media>div {
		grid-column: 1 !important;
		grid-row: 2 !important;
		margin-left: 0 !important;
		padding: 10px !important;
	}
} */

/* マップ */
.about_map {
	margin-left: -100px;
	width: calc(100% + 200px);
	aspect-ratio: 5 / 3;
}

.about_map iframe {
	width: 100%;
	height: 100%;
}

@media (max-width: 1200px) {
	.about_map {
		margin-left: 0;
		width: 100%;
	}

}

/*************************  園の生活 life  **************************/
.life-cap .cap_box_ttl {
	font-size: 20px;
	gap: .3em;
	/* display: flex;
justify-content: center;
align-items: center; */

}

.life-cap .cap_box_ttl::before {
	content: "";
	display: block;
	position: relative;
	width: 1.2em;
	height: 1.2em;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.life-cap[data-colset="col1"] .cap_box_ttl::before {
	background-image: url(./img/fall.png);
}

.life-cap[data-colset="col2"] .cap_box_ttl::before {
	background-image: url(./img/winter.png);
}

.life-cap[data-colset="col3"] .cap_box_ttl::before {
	background-image: url(./img/spring.png);
}

@media (max-width: 600px) {
	.life-cap table {
		--swl-cell1-width: 65px !important;
	}
}

/*************************  子育て支援 support  **************************/

.support_btn {
	justify-content: center;
}

.support_waku-gry {
	width: max-content;
	margin: 0 auto;
	border: 4px solid rgba(199, 199, 199, .15);
	padding: 20px 20px 20px 60px;
}

@media (max-width: 600px) {
	.support_btn li {
		font-size: 18px;
	}
}

/*************************  入園案内 entry  **************************/
.entry_heading img {
	width: min(700px, 100%)
}

.entry-cat>div {
	column-gap: 20px;
}

.entry-cat_body {
	width: calc((100% - 40px) / 3) !important;
	border: 1px solid #76c6d2;
	border-radius: 20px;
	padding: 0 0 20px !important;
	overflow: hidden;
}

.entry-cat_heading {
	background: #76c6d2;
	color: #fff;
	padding: 10px 0;

}

.entry-cat_txt {
	padding: 0 20px;
}

.entry_tbl table tr:nth-child(2) th,
.entry_tbl table tr:nth-child(2) td {
	border-bottom-width: 3px;
	border-bottom-style: double;

}

.entry_tab .c-tabBody {
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
	padding: 20px;
}

.entry_tab .c-tabList__button[aria-selected=true],
.entry_tab .c-tabList__button:hover {
	background-color: #76c6d2 !important;
}

.entry_tab .c-tabList__button::before {
	border-top-color: #76c6d2 !important;
}

@media (max-width: 960px) {
	.entry-cat>div {
		justify-content: space-around;
	}

	.entry-cat_body {
		width: calc((100% - 20px) / 2) !important;
	}
}

@media (max-width: 600px) {
	.entry-cat>div {
		justify-content: space-around;
	}

	.entry-cat_body {
		width: 100% !important;
	}
}

/*************************  保護者用 parent  **************************/

.parent_download img {
	vertical-align: middle;
}

/*************************  お問い合わせ formt  **************************/
.form_dl {
	display: table;
	border-bottom: 1px solid var(--clr-gry1);
	padding: 14px 0;
	width: 100%;
}

.form_dt {
	display: table-cell;
	padding: 12px 16px;
	width: 320px;
}

.form_dd {
	display: table-cell;
	flex: 1;
	padding: 0 16px;
	vertical-align: middle;

}


.form_required {
	clear: right;
	display: block;
	float: right;
	margin-left: 0;
	background: var(--clr-red2);
	color: #fff;
	font-size: 14px;
	height: 22px;
	line-height: 22px;
	text-align: center;
	width: 50px;
}

.form_dl:last-of-type {
	border-bottom: 1px solid var(--clr-gry1);
	margin-bottom: 50px;
}

.form_label {
	font-weight: bold;
	letter-spacing: 0.1em;
}



.form_input,
.form_textarea,
.form-select {
	background: #eee;
	border: 2px solid var(--clr-gry1);
	border-radius: 7px;
	padding: 6px 15px;
	width: 100%;
}

.form_input-fit {
	width: max-content;
}

.form_input::-moz-placeholder,
.form_textarea::-moz-placeholder {
	font-size: 14px;
}

.form_input::placeholder,
.form_textarea::placeholder {
	font-size: 14px;
}

.form_input:focus {
	background: #EFEFEF;
}

.form_textarea {
	height: 250px;
	width: 100%;
}

.form-radio {
	display: flex;
	gap: 100px;
	justify-content: center;
}

.form-radio_btn {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: absolute;
}

.form-radio_label {
	display: block;
	font-size: 15px;
	position: relative;
}

.form-radio_label::before {
	background: #fff;
	border: 1px solid var(--clr-gry1);
	border-radius: 50%;
	content: "";
	display: inline-block;
	height: 23px;
	margin-right: 10px;
	position: relative;
	vertical-align: middle;
	width: 23px;
}

.form-radio_btn:checked+.form-radio_label:after {
	background-color: var(--clr-gry1);
	border-radius: 50%;
	content: "";
	display: inline-block;
	height: 13px;
	left: 5px;
	position: absolute;
	top: 7px;
	width: 13px;
}

.form-ckbox {
	display: flex;
	gap: 10%;
	justify-content: center;
	flex-wrap: wrap;
}

.form-ckbox_btn {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: absolute;
}

.form-ckbox_label {
	font-size: 18px;
	position: relative;
}

.form-ckbox_label::before {
	border: 2px solid var(--clr-gry1);
	content: "";
	display: inline-block;
	height: 18px;
	margin-right: 10px;
	position: relative;
	vertical-align: middle;
	width: 18px;
}

.form-ckbox_btn:checked+.form-ckbox_label:after {
	border-bottom: 2px solid var(--clr-gry1);
	border-left: 2px solid var(--clr-gry1);
	content: "";
	height: 5px;
	left: 4px;
	position: absolute;
	top: 50%;
	transform: rotate(-45deg);
	transform-origin: center;
	width: 10px;
}

.form-select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border-radius: 5px;
	padding: 8px 10px;
	width: 100%;
	font-size: 16px;
	background-image: linear-gradient(45deg, transparent 50%, var(--clr-gry1) 50%),
		linear-gradient(135deg, var(--clr-gry1) 50%, transparent 50%);
	background-position: calc(100% - 20px) center, calc(100% - 15px) center;
	background-size: 5px 5px, 5px 5px;
	background-repeat: no-repeat;
	cursor: pointer;
}


/* .form-select {
  background: #eee;
  border: 2px solid var(--clr-gry1); 
   border-radius: 5px;
  margin: 0 auto;
  position: relative;
  width: 100%;
} */

/* .form-select:after {
  border-color: var(--clr-gry1) transparent transparent transparent;
  border-style: solid;
  border-width: 8.7px 5px 0 5px;
  content: "";
  display: block;
  height: 0;
  pointer-events: none;
  position: absolute;
  right: 13px;
  top: 45%;
  width: 0;
} */

.form-select_body {
	padding: 8px 10px;
	width: 100%;
}

.form-select_body option {
	font-size: 16px;
}

.form-privacy label {
	font-size: 14px;
	position: relative;
	display: inline-flex;
	align-items: center;
	cursor: pointer;
}

.form-privacy input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	position: absolute;
	width: 20px;
	height: 20px;
	margin: 0;
	opacity: 0;
	cursor: pointer;
}

.form-privacy label::before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 2px solid var(--color_text);
	margin-right: 10px;
	box-sizing: border-box;
}


.form-privacy input[type="checkbox"]:checked+.wpcf7-list-item-label::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 50%;
	width: 10px;
	height: 5px;
	border-left: 2px solid var(--color_text);
	border-bottom: 2px solid var(--color_text);
	transform: translateY(-50%) rotate(-45deg);
}


.form-btnarea {
	text-align: center;
}

.form-btnarea_btn {
	background: var(--color_main);
	border: 1px solid var(--color_main);
	border-radius: 10px;
	color: #fff;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
	padding: 20px 0;
	text-align: center;
	transition: all 0.3s;
	width: 255px;
}

.form-btnarea_btn:hover {
	background: #fff;
	color: var(--color_main);
}

.form-btnarea_btn.is-inactive {
	background: var(--clr-gry1);
	border: 1px solid var(--clr-gry1);
	pointer-events: none;
}

.form_note {
	font-size: 0.85em;
	margin-top: 0.3em;
}

.form-privacy {
	margin-bottom: 20px;
}

div.wpcf7 .wpcf7-spinner {
	display: block;
}


@media only screen and (max-width: 960px) {


	.form_dl {
		display: block;
		padding: 10px 0;
	}

	.form_dt {
		display: block;
		width: 100%;
		padding: 0px 10px 5px;
	}

	.form_dd {
		display: block;
		width: 100%;
		padding: 0 10px;
	}

	.form_required {
		display: inline-block;
		margin-left: 10px;
		float: none;
	}


}




/* ---------------------------------------------------------
   table  |  テーブル1
	 スマホで縦並び
   --------------------------------------------------------- */
.page-table1 {
	border: 5px solid #e4dcd7;
	border-radius: 5px;
	overflow: hidden;
}

.page-table1 table {
	border-radius: 10px;
	color: #5f4b3e;
}

.page-table1 table th {
	background: #f4ebe6;

}

.page-table1 table td {
	border-left: 2px solid #e4dcd7;
	padding-left: 1em;

}

.page-table1 table tr {
	border-top: 2px solid #e4dcd7
}

.page-table1 table a {
	color: #5f4b3e;
	text-decoration: underline;
}

@media (max-width: 960px) {
	.page-table1 {
		width: min(100%, 500px);
		margin-inline: auto;
	}

	.page-table1 table th {
		width: 100% !important;
		max-width: none !important;
		;
	}

	.page-table1 table th {
		padding: .5em;
	}

}

/* ---------------------------------------------------------
   table  |  テーブル2
	 スマホでスクロール
   --------------------------------------------------------- */
/* .page-table2 {
	border: 5px solid #e4dcd7;
border-radius: 10px;
} */

.page-table2 table {
	border-radius: 5px;
	color: #5f4b3e;
	border-bottom: #5f4b3e;
	border-right: #5f4b3e;
}

.page-table2 table th {
	background: #f4ebe6;

}

.page-table2 table td {
	border-left: 2px solid #e4dcd7;

}

/* 
.page-table2 table tr {
	border-top: 5px solid #e4dcd7;
	border-right:5px solid #e4dcd7;
	border-left:5px solid #e4dcd7;
} */
/* .page-table2 table tr {
	border-top: 2px solid #e4dcd7
} */

.c-scrollHint {
	margin-top: 0 !important;
}


/* ---------------------------------------------------------
   accordion  |  アコーディオン
   --------------------------------------------------------- */

.page-acc .swell-block-accordion__title {
	background: #76c6d2;
	color: #fff;
	text-align: center;
}

.page-acc .swell-block-accordion__body {
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.page-acc .page-h5{
	margin-top: 40px;
}


/* ---------------------------------------------------------
   pager  |  ページ送りナビゲーション
   --------------------------------------------------------- */
.post-nav {
	margin: 60px 0;
	text-align: center;
}

.post-nav_list {
	display: flex;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;

}

.post-nav_item {
	flex: 1;
}


.post-nav_center {
	display: inline-block;
	padding: 12px 20px;
	background-color: var(--color_main);
	color: #fff;
	border-radius: 5px;
	text-decoration: none;
	font-weight: bold;
	/*   transition: background-color 0.3s ease; */
}

.post-nav_prev,
.post-nav_next {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-decoration: none;
}

.post-nav_prev:before {
	content: "";
	width: 40px;
	height: 40px;
	background: url(./img/arw-prev.png) no-repeat center/contain;
	position: relative;
	display: inline-block;
}

.post-nav_next:after {
	content: "";
	width: 40px;
	height: 40px;
	background: url(./img/arw-next.png) no-repeat center/contain;
	position: relative;
	display: inline-block;
}


.post-nav_text {
	font-size: 16px;
}