@charset 'UTF-8';
/*
Theme Name: HappySpaceHP
Description: WordPressオリジナルテーマ
Version: 1.0
Author: Jin
*/

* {
	margin: 0;
	padding: 0;
}

@font-face {
	font-family: "Zen Maru Gothic";
	src: url("fonts/zenmarugothic.woff2") format("woff2"),
		url("fonts/zenmarugothic.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}

body {
	background-color: #fffcf1;
	font-family: 'Gothic A1', sans-serif;
	color: #414141;
}

.head {
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 4em;
	font-weight: bold;
	letter-spacing: 0.18em;
	display: block;
	text-decoration: underline;
	text-decoration-color: yellow;
	text-decoration-thickness: 12px;
	text-underline-offset: 2px;
}

h1,
h2,
h3 {
	font-family: "Zen Maru Gothic";
}

.headdesc {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;

	height: 100%;
	/* 親要素（header）の高さに合わせる */
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.head_text {
	color: #14B884;
	font-size: 1.2em;
}

.headdesc>p {
	font-size: 1.5em;
	margin: 2em 0 1.8em;
	line-height: 2;
}

.headp_bold {
	font-size: 1.1em;
	color: #26D580;
	font-weight: bold;
}

.slide-btn_large {
	display: block;
	background-color: #F9F871;
	width: 400px;
	font-size: 1.5em;
	color: #1E1E1E;
	padding: 0.8em 1.6em;
	margin: 0 auto;
	border: none;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	border-radius: 100px;
	text-decoration: none;
}

.slide-btn_large .arrow {
	display: inline-block;
	margin-left: 5px;
	transition: transform 0.3s ease;
}

.slide-btn_large:hover {
	background-color: #f5e34b;
}

.slide-btn_large:hover .arrow {
	transform: translateX(5px);
}

.slide-btn_small {
	display: inline-block;
	background-color: #F9F871;
	width: 210px;
	font-size: 18px;
	color: #1E1E1E;
	line-height: 1.5;
	padding: 0.5rem 1.2rem;
	text-align: center;
	border: none;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	border-radius: 100px;
	text-decoration: none;
	transition: background-color 0.3s ease;
}

.slide-btn_small .arrow {
	display: inline-block;
	margin-left: 5px;
	transition: transform 0.3s ease;
}

.slide-btn_small:hover {
	background-color: #f5e34b;
}

.slide-btn_small:hover .arrow {
	transform: translateX(5px);
}

.headdesc>.slide-btn_large {
	margin: 0 auto;
}

.container {
	width: auto;
	margin-left: auto;
	margin-right: auto;
}

ul {
	list-style: none;
	padding-left: 0;
}

.service {
	padding-top: 8em;
	padding-bottom: 8em;
}

.service .container {
	width: 80%;
	margin: 0 auto;
	box-sizing: border-box;
}

.serviceblks {
	display: flex;
	gap: 5em;
}

.serviceblk {
	text-align: center;
	padding: 5em 2em;
	background-color: #26d581;
	border-radius: 100px;
	flex: 1;
}

.serviceblk h2 {
	color: #fbffd3;
	font-size: 2em;
	margin-bottom: 2em;
}

.serviceblk p {
	color: #fffcf1;
	padding: 2.5em 0;
	font-size: 1.2em;
}

.news {
	background-color: #14b884;
	padding-top: 8em;
	padding-bottom: 8em;
}

.news>.container {
	width: 90%;
}

.news>.container h2 {
	font-size: 40px;
	color: #fffcf1;
	text-align: center;
	padding-bottom: 2em;
}

.news>.container p {
	color: #fffcf1;
	margin-bottom: 2em;
}

.newsblks {
	display: flex;
	justify-content: space-evenly;
	gap: 2em;
}

.news .slide-btn_small {
	display: block;
	margin-left: auto;
	margin-right: 9%;
	margin-top: 2rem;
}

.newsblks a {
	text-decoration: none;
}

.newsblks .title {
	color: #fffcf1;
	font-weight: bold;
	line-height: 3em;
	font-size: 1.15em;
}

.newsblks .post_date {
	color: #fffcf1;
}

.newsblks img {
	width: 100%;
}

.more a {
	border-radius: 100px;
	font-size: 1.2em;
	text-align: center;
	display: block;
	margin-top: 3em;
	color: #313d42;
	width: 253px;
	background-color: #f9f871;
	padding: 0.5em 3.2em;
	margin-left: auto;
	margin-right: 3em;
}

.contact {
	background-image: url("img/contact_bg.png");
	background-size: cover;
	padding-top: 8em;
	padding-bottom: 8em;
}

.contact .container {
	text-align: center;
}

.contact h2 {
	background-color: #009e99;
	color: #fffcf1;
	border-radius: 20px;
	padding: 18px;
	font-size: 40px;
	letter-spacing: 28px;
	width: 600px;
	margin: 0em auto;
}

.contact p {
	color: #414141;
	font-size: 1.4em;
	line-height: 1.9em;
	padding: 3rem 0 2rem;
	white-space: pre-line;
}

.contactbtnblk {
	padding-top: 1em;
	display: flex;
	gap: 7em;
	justify-content: center;
}

.thankspage .other_head .balloon3 p {
	margin-top: 0rem;
}


.thankspage .other_head .slide-btn_small {
	margin-top: 3rem;
}


.balloon3 {
	position: relative;
	display: flex;
	margin: 1.5em auto;
	padding: 0 1.5rem;
	width: 400px;
	height: 200px;
	line-height: 28px;
	text-align: center;
	align-items: center;
	white-space: pre-line;
	color: white;
	font-size: 20px;
	font-weight: bold;
	background: #009E99;
	border-radius: 20px;
	box-sizing: border-box;
}

.balloon3:before {
	content: "";
	position: absolute;
	bottom: -25px;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #009E99;
	z-index: 0;
}

.slide-btn_large {
	margin: 0;
}

footer {
	background-color: #14b884;
	color: #fffcf1;
	padding-top: 4em;
	padding-bottom: 1em;
}

footer .container {
	display: flex;
	justify-content: center;
}

footer .container .foot_l {
	display: flex;
	align-items: center;
	position: relative;
	padding-right: 4em;
}

footer .container .foot_l p {
	font-size: 1.15em;
}

footer .container .foot_l::after {
	position: absolute;
	top: 0;
	left: 100%;
	margin: 0 1rem;
	content: "";
	width: 1px;
	height: 100%;
	background-color: #fffcf1;
}

footer .container img {
	display: block;
	margin-right: 3em;
}

footer .container .foot_r {
	padding-left: 5em;
}

footer .container .foot_r ul {
	list-style-type: none;
	padding-left: 0;
	display: flex;
	height: 100%;
}

footer .container .foot_r ul li a {
	text-decoration: none;
	color: #fffcf1;
	font-size: 1.15em;
}

footer .container .foot_r>ul>li {
	height: 100%;
	line-height: 3;
}

footer .container .foot_r>ul>li>ul {
	display: flex;
	flex-direction: column;
	flex-flow: column;
	margin-right: 2em;
	height: 100%;
}

.copyright {
	text-align: center;
	font-size: 0.8rem;
	margin-top: 1rem;
}

header {
	background-image: url("img/topbg.png");
	background-size: cover;
	box-sizing: border-box;
	aspect-ratio: 6 / 4;
	position: relative;
}

.navblk {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	padding: 0rem 1rem;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
}

.pc-menu {
	background-color: white;
	border: 1px solid #8CC5B8;
	border-radius: 10px;
	display: flex;
	align-items: center;
	gap: 1.5em;
	margin: 0;
	padding: 12px 20px;
}

.pc-menu>li>a {
	text-decoration: none;
	color: #2F4858;
}

.navblk ul li.navi_contact a {
	color: #fff;
}

.navi_contact>a {
	background-color: #009E99;
	border-radius: 100px;
	padding: 6px 17px;
	display: inline-block;
	border: 2px solid #009E99;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
}

.navi_contact>a:hover {
	background-color: transparent;
	color: #009E99 !important;
	background-color: #FFFFFF;
}

.hamburger-morph,
.nav-morph {
	display: none;
}

.treatment {
	background-color: #26D580;
	color: #fffcf1;
	padding: 7em 0em 8em;
}

.treatment>.container {
	width: 100%;
	display: flex;
	padding: 0 2em;
	align-items: center;
	gap: 5em;
	justify-content: space-around;
}

.treatment>.container h2 {
	color: #fbffd3;
	font-size: 2.3em;
	margin-bottom: 0.5em;
	letter-spacing: 0.7em;
}

.treatment>.container p {
	width: 440px;
	font-size: 1.3rem;
	margin-bottom: 2rem;
	line-height: 1.8;
}

.treatment>.container img {
	aspect-ratio: 1/1;
}

.information {
	background-color: #14B884;
	color: #fffcf1;
	padding: 8em 0em 7em;
}

.information .container {
	width: 100%;
	display: flex;
	padding: 0 2em;
	align-items: center;
	gap: 5em;
	justify-content: space-around;
}

.information .container h2 {
	color: #fbffd3;
	font-size: 2.3em;
	margin-bottom: 0.5em;
	letter-spacing: 0.7em;
}

.information .container p {
	width: 440px;
	font-size: 1.3rem;
	margin-bottom: 2rem;
	line-height: 1.8;
}

.information .container img {
	aspect-ratio: 1/1;
}

.img_res {
	display: none;
}

.wave_container {
	position: relative;
	background: #26D580;
}

.wave {
	position: absolute;
	height: 85px;
	width: 100%;
	background: #26D580;
	bottom: 0;
}

.wave::before,
.wave::after {
	content: "";
	display: block;
	position: absolute;
	border-radius: 100% 40%;
}

.wave::before {
	width: 55%;
	height: 120%;
	background-color: #14B884;
	right: 0%;
	top: 60%;
}

.wave::after {
	width: 55%;
	height: 100%;
	background-color: #26D580;
	left: 0%;
	top: 40%;
}

/*sub_page*/
.background-fixed {
	background-image: url("img/sub_header.png");
	background-size: 100% auto;
	/* 画面いっぱいに表示 */
	background-repeat: no-repeat;
	background-position: top center;
	/* 上部中央に配置 */
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	/* 画面全体を覆う */
	z-index: -1;
	/* 他のコンテンツの下に表示 */
}

.sub_header>.container {
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 13rem 0em 5rem;
}

.header_l {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	margin-left: 3em;
	width: 400px;
}

.header_l img {
	width: auto;
	margin-bottom: 1em;
}

.header_l h1 {
	font-size: 2.5em;
	font-weight: bold;
	text-align: center;
	letter-spacing: 1.3px;
}

.header_r img {
	width: 100%;
}

.sub_contact {
	width: 83.4%;
	margin: 8em auto;
	padding: 3em 2em;
	background-color: #009E99;
	color: white;
	border-radius: 20px;
	display: flex;
	align-items: center;
}

.sub_contact .contact_l {
	display: flex;
	position: relative;
}

.sub_contact .contact_l h2 {
	letter-spacing: 8px;
	margin: 2rem 3rem 2rem 0rem;
}

.sub_contact .contact_l::after {
	position: absolute;
	top: 0;
	left: 100%;
	margin: 0 1rem;
	content: "";
	width: 1px;
	height: 100%;
	background-color: #fffcf1;
}

.sub_contact .contact_c {
	display: flex;
	align-items: center;
	padding: 0 7em;
}

.sub_contact .contact_c p {
	line-height: 2;
	letter-spacing: 0.15em;
}

.sub_contactbtnblk {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.sub_contactbtnblk>.slide-btn_small {
	width: 260px;
	font-size: 1rem;
}

.phone_image_box {
	display: none;
}

/*no_phot_subheader*/
.other_head {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin: 13rem 0em 5rem;
}

.other_head img {
	width: auto;
	height: 90px;
	margin-bottom: 1em;
}

.other_head h1 {
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 1.3px;
}

.other_head p {
	font-size: 1.3rem;
	white-space: pre-line;
	text-align: center;
	margin-top: 1.5em;
}

/*about_us*/
.infomation {
	padding-top: 8em;
	margin: 0 auto;
}

.infomation h2 {
	font-size: 2em;
	font-weight: bold;
}

.curved {
	position: relative;
	background: #FFFCF1;
	height: 4em;
}

.curved::after {
	content: '';
	border-top-left-radius: 50% 100%;
	border-top-right-radius: 50% 100%;
	position: absolute;
	bottom: 0;
	width: 100%;
	background: #26D580;
	height: 100%;
}

.explanation_phone {
	display: none;
}

.explanation {
	background-color: #26D580;
	color: #FFFFFF;
	padding: 3em 0;
}

.explanation .container {
	display: flex;
	align-items: center;
	justify-content: space-around;
	width: 100%;
	padding: 2em 0;
}

.explanation .container p {
	line-height: 2;
	font-size: 1.3rem;
}

.explanation .container span {
	color: #fbffd3;
	font-size: large;
	font-size: 1.4rem;
	font-weight: bold;
}

.explanation .info_r {
	width: 550px;
	text-align: center;
}

.explanation .info_l {
	width: 550px;
	text-align: center;
}

.infomation {
	width: 83.4%;
	margin: 0 auto;
}

.infomation .info_top {
	text-align: center;
}

.infomation .info_top h2 {
	margin-bottom: 1em;
	letter-spacing: 0.5em;
}

.infomation .info_top img {
	width: 100%;
}

.infomation .info_bottom {
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 2rem auto 0rem;
}

.infomation .info_bottom .info_l li {
	display: flex;
	/* liをFlexコンテナにする */
	align-items: flex-start;
	/* 項目が複数行になっても上揃えにする */
	font-size: 1.15rem;
	padding: 0.5em 2em 0.5em 0;
	/* 左右のパディングを削除 */
	border-bottom: 1px dotted #14B884;
}

.infomation .info_bottom .info_l strong {
	display: inline-block;
	flex-shrink: 0;
	/* 項目名の幅を固定し、縮まないようにする */
	width: 5rem;
	/* 項目名の幅を統一 */
	margin-right: 1em;
}

.infomation .info_bottom .info_l {
	/* ul全体に左パディングを追加 */
	padding-right: 1rem;
	/* ul全体に右パディングを追加 */
}

.tel {
	border: none;
	text-decoration: none;
	color: inherit;

}

.infomation .info_bottom>* {
	flex: 1;
}

/*service*/
.ours_service .container {
	width: 70%;
	margin-top: 4em;
	text-align: center;
}

.ours_service h2 {
	font-size: 2.5em;
	text-align: center;
	text-decoration: underline;
	text-decoration-color: yellow;
	text-decoration-thickness: 7px;
	text-underline-offset: 2px;
	line-height: 1.2;
	margin-bottom: 3em;
}

.ours_service span {
	font-size: 1.5em;
	letter-spacing: -0.07em;
	color: #26D580;
}

.ours_service .svcblock {
	color: #FFFFFF;
	padding: 2em 0;
	margin-bottom: 4em;
	background-color: #14B884;
	border-radius: 20px;
}

.ours_service h3 {
	font-size: 2em;
	margin: 1rem 0;
	letter-spacing: 5px;
}

.ours_service .service_explanation p {
	font-size: 1.3em;
	margin: 0 auto;
	width: 590px;
	margin-top: 1.5rem;
	word-break: break-word;
}

.ours_service .number {
	margin-top: -4em;
}

.ours_service .number p {
	font-size: 2em;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	height: 60px;
	background-color: #FBFFD3;
	color: #313D43;
	border-radius: 50%;
	font-weight: bold;
	font-family: 'Segoe UI', sans-serif;
}

/*dayschedule*/
.afterschoolscedule {
	background-color: #26D580;
	color: #fffcf1;
	margin: 3em 0;
	padding: 7em 0em;
}

.afterschoolscedule .container {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.afterschoolscedule h2 {
	font-size: 1.7em;
	letter-spacing: 3px;
	margin-bottom: 2em;
}

.holidaysscedule {
	background-color: #14B884;
	color: #fffcf1;
	margin: 3em 0;
	padding: 7em 0em;
}

.holidaysscedule .container {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.holidaysscedule h2 {
	font-size: 1.7em;
	letter-spacing: 3px;
	margin-bottom: 2em;
}

/* time-schedule */
.time-schedule {
	width: 1000px;
	list-style: none;
	padding-left: 45px;
	border-left: 4px dotted #FFFF9E;
	box-sizing: border-box;
}

.time-schedule li {
	width: 100%;
	margin: 0 0;
	padding-bottom: 2em;
	position: relative;
}

.time-schedule span.time {
	font-family: 'Inter', 'Yu Gothic UI', sans-serif;
	font-size: 1.5em;
	width: 5em;
	display: inline-block;
	margin-left: -8em;
	padding: 0 0 5px;
	margin-top: 25px;
	vertical-align: top;
	position: relative;
	text-align: right;
	box-sizing: border-box;
}

.time-schedule span.time::after {
	content: "";
	position: absolute;
	right: -35px;
	top: 9px;
	background: #FFFF9E;
	width: 20px;
	height: 20px;
	border-radius: 10px;
}

.time-schedule .sch_box {
	display: inline-block;
	width: 100%;
	margin-left: 3.125rem;
	padding: 2em 1.5em;
	vertical-align: middle;
	background: #E2FFED;
	box-sizing: border-box;
	border-radius: 6px;
}

.time-schedule .sch_title {
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 0.5em;
	color: #414141;
}

.time-schedule .sch_tx {
	font-weight: normal;
	color: #414141;
	line-height: 1.6em;
	white-space: pre-line;
}

.time-schedule li:last-child {
	padding-bottom: 0;
}

/*information*/
.information_ex {
	width: 83.4%;
	margin: 0 auto;
}

.information_ex h2 {
	font-size: 1.7rem;
	letter-spacing: 2.5px;
}

.dot1 {
	font-size: small;
	margin-right: 0.5em;
	color: #14b884;
}

.service_object {
	width: 90%;
	margin: 1.5em auto 3em;
	padding: 2em 1.5em;
	background-color: #26D580;
	color: #FFFFFF;
	border-radius: 20px;
	letter-spacing: 1.5px;
	line-height: 1.6;
}

.service_object p {
	font-size: 1.0625rem;
	white-space: pre-line;
}

.custom-list {
	margin-top: 0.5rem;
	list-style: none;
}

.custom-list li {
	font-weight: bold;
	padding-left: 1.3rem;
	margin-bottom: 0.2rem;
	line-height: 1.5;
	position: relative;
}

.custom-list li::before {
	content: "●";
	left: 0;
	color: #FFFF9E;
	font-weight: bold;
	position: absolute;
}


.procedure {
	margin: 1.5em auto 3em;
	text-align: center;
}

.procedure img {
	width: 90%;
}

.info_title {
	font-size: 1.3em;
	color: #FBFFD3;
	margin-bottom: 0.5em;
}

.info_txt {
	line-height: 1.6;
	white-space: pre-line;
}

.flow-container::before,
.flow-container::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 20px;
	background-color: #FFFF9E;
	z-index: 0;
}

.flow-container::before {
	left: 23%;
}

.flow-container::after {
	left: 77%;
}

.flow-box {
	position: relative;
	z-index: 1;
}

.flow {
	margin: 1.5rem auto 3rem;
}

.flow-container {
	width: 90%;
	margin: 0 auto;
	position: relative;
}

.flow-box {
	background-color: #26D580;
	color: white;
	padding: 2em 1.5em;
	border-radius: 20px;
	margin-bottom: 3rem;
	text-align: center;
}

.flow-box h3 {
	color: #FBFFD3;
}

.flow-box p {
	margin: 1rem auto 0;
	line-height: 1.6;
	font-size: 1.0625rem;
	white-space: pre-line;
}

.flow-box.small p {
	width: 80%;
}

.flow-box.left_box {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.flow-container .slide-btn_small {
	background-color: #009E99;
	color: white;
	width: 250px;
	margin-top: 1rem;
	padding: 0.5rem 1rem;
	border-radius: 12px;
	font-size: 1rem;
	letter-spacing: 2px;
}

.flow-container .slide-btn_small:hover {
	background-color: #F9F871;
	color: #414141;
	transition: background-color 0.3s ease;
}


.flow-row.two-column {
	display: flex;
	justify-content: space-between;
	gap: 100px;
}

.flow-row .flow-box.small {
	flex: 1;
}

.flow-right-column {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.flow-box.full {
	width: 100%;
}

.fee {
	width: 90%;
	text-align: center;
	margin: 1.5em auto 3em;
	border-collapse: collapse;
	table-layout: fixed;
	border-spacing: 0;
	background: #cdf4f0;
}

.fee th {
	padding: 2em;
	border: solid 1px #ffffff;
	background: #14B884;
	color: #ffffff;
	letter-spacing: 1.5px;
}

.fee td {
	padding: 2em;
	border: solid 1px #ffffff;
	letter-spacing: 1.5px;
}

/*news*/
.newspage {
	width: 1000px;
	margin: 3em auto 0;
}

.news_archive {
	margin-bottom: 2.6em;
}

.news_archive a {
	display: inline-block;
	width: 140px;
	background-color: #26D580;
	padding: 1em 2em;
	margin-right: 1.2em;
	border-radius: 100px;
	font-size: 14px;
	color: #fff;
	text-decoration: none;
	text-align: center;
}

.news_archive a:first-child {
	background-color: #14B884;
}

.news_archive a:last-child {
	margin-right: 0;
}

.news_list {
	display: flex;
	gap: 2em;
}

.newsblk {
	line-height: 2;
}

.newsblk a {
	display: block;
	text-decoration: none;
	letter-spacing: 1.2px;
	color: #414141;
}

/*newscont*/
.news_list {
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	flex: 1 1 calc(33.333% - 20px);
	box-sizing: border-box;
}

.pagination {
	text-align: center;
	margin-top: 40px;
}

.pagination .page-numbers {
	display: inline-block;
	margin: 0 5px;
	padding: 8px 12px;
	border: 1px solid #ccc;
	border-radius: 10px;
	text-decoration: none;
	color: #414141;
}

.pagination .current {
	background-color: #14B884;
	color: #fff;
	font-weight: bold;
	border: 1px solid #14B884;
}

/*contact_form*/
.Form {
	margin-top: 80px;
	margin-left: auto;
	margin-right: auto;
	max-width: 1000px;
}

@media screen and (max-width: 480px) {
	.Form {
		margin-top: 40px;
	}
}

.Form-Item {
	border-top: 1px solid #ddd;
	padding: 24px;
	width: 100%;
	display: flex;
	align-items: center;
}

@media screen and (max-width: 480px) {
	.Form-Item {
		padding-left: 14px;
		padding-right: 14px;
		padding-top: 16px;
		padding-bottom: 16px;
		flex-wrap: wrap;
	}
}

.Form-Item:nth-child(5) {
	border-bottom: 1px solid #ddd;
}

.Form-Item-Label {
	width: 100%;
	max-width: 248px;
	letter-spacing: 0.05em;
	font-size: 18px;
}

@media screen and (max-width: 480px) {
	.Form-Item-Label {
		max-width: inherit;
		display: flex;
		align-items: center;
		font-size: 15px;
	}
}

.Form-Item-Label.isMsg {
	margin-top: 8px;
	margin-bottom: auto;
}

@media screen and (max-width: 480px) {
	.Form-Item-Label.isMsg {
		margin-top: 0;
	}
}

.Form-Item-Label-Required {
	border-radius: 6px;
	margin-right: 8px;
	padding-top: 8px;
	padding-bottom: 8px;
	width: 48px;
	display: inline-block;
	text-align: center;
	background: #14B884;
	color: #fff;
	font-size: 14px;
}

.Form-Item-Label-Any {
	border-radius: 6px;
	margin-right: 8px;
	padding-top: 8px;
	padding-bottom: 8px;
	width: 48px;
	display: inline-block;
	text-align: center;
	background: #26D580;
	color: #fff;
	font-size: 14px;
}

@media screen and (max-width: 480px) {
	.Form-Item-Label-Required {
		border-radius: 4px;
		padding-top: 4px;
		padding-bottom: 4px;
		width: 32px;
		font-size: 10px;
	}

	.Form-Item-Label-Any {
		border-radius: 4px;
		padding-top: 4px;
		padding-bottom: 4px;
		width: 32px;
		font-size: 10px;
	}
}

.Form-Item-Input {
	border: 1px solid #ddd;
	border-radius: 6px;
	margin-left: 40px;
	padding-left: 1em;
	padding-right: 1em;
	height: 48px;
	flex: 1;
	width: 100%;
	max-width: 650px;
	background: #eaedf2;
	font-size: 18px;
}

@media screen and (max-width: 480px) {
	.Form-Item-Input {
		margin-left: 0;
		margin-top: 18px;
		height: 40px;
		flex: inherit;
		font-size: 15px;
	}
}

.Form-Item-Textarea {
	border: 1px solid #ddd;
	border-radius: 6px;
	margin-left: 40px;
	padding-left: 1em;
	padding-right: 1em;
	height: 216px;
	flex: 1;
	width: 100%;
	max-width: 650px;
	background: #eaedf2;
	font-size: 18px;
}

@media screen and (max-width: 480px) {
	.Form-Item-Textarea {
		margin-top: 8px;
		margin-left: 0;
		height: 100px;
		flex: inherit;
		font-size: 15px;
	}
}

.Form-RadioGroup {
	display: flex;
	gap: 2em;
	margin-left: 40px;
	font-size: 18px;
}

.Form-Item-Serect {
	margin-left: 40px;
	font-size: 15px;
	display: inline-flex;
	align-items: center;
	position: relative;
	padding: 0.5rem;
}

.Form-Item-Serect::after {
	position: absolute;
	right: 15px;
	width: 10px;
	height: 7px;
	background-color: #494949;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
	pointer-events: none;
	padding: 0.5rem;
}

.Form-Item-Serect select {
	appearance: none;
	height: 2.8em;
	padding: .4em calc(.8em + 30px) .4em .8em;
	border: 1px solid #d0d0d0;
	border-radius: 3px;
	background-color: #eaedf2;
	color: #414141;
	font-size: 1em;
	cursor: pointer;
}

.Form-Btn {
	text-decoration: none;
	border-radius: 100px;
	font-size: 1.2em;
	text-align: center;
	display: block;
	color: #313d42;
	width: 253px;
	background-color: #f9f871;
	padding: 0.5em 3.2em;
	margin: 2em auto 8em;
	border: none;
}

@media screen and (max-width: 480px) {
	.Form-Btn {
		margin-top: 24px;
		padding-top: 8px;
		padding-bottom: 8px;
		width: 160px;
		font-size: 16px;
	}

	.Form-Item-Serect {
		margin-top: 7px;
		margin-left: 0px;
	}
}

/*記事投稿ページ*/
.main-contents {
	width: 83.4%;
	padding: 2rem 3rem;
	margin: 0 auto;
	background-color: white;
	border-radius: 5%;
}

.post-content {
	margin-top: 2rem;
}

.post-date {
	font-size: 0.8rem;
	color: rgb(12, 156, 12);
}

.post-item img {
	display: block;
	width: 800px;
	margin: 0 auto;
}

.post-title {
	margin-bottom: .5rem;
	line-height: 1.5;
	word-break: break-word;
	letter-spacing: 1.8px;
}

.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5 {
	font-family: 'Helvetica Neue', sans-serif;
	font-weight: bold;
	line-height: 1.4;
	margin: 1.2em 0 0.6em;
	color: #414141;
}

.post-content h1 {
	font-size: 2.2em;
	border-bottom: 2px solid #e0e0e0;
	padding-bottom: 0.3em;
}

.post-content h2 {
	font-size: 1.8em;
	border-left: 4px solid #14B884;
	padding-left: 0.5em;
}

.post-content h3 {
	font-size: 1.5em;
}

.post-content h4 {
	font-size: 1.3em;
}

.post-content h5 {
	font-size: 1.1em;
}

.post-content p {
	font-size: 1em;
	line-height: 1.8;
	margin: 1em 0;
}

.post-content ul,
.post-content ol {
	padding-left: 2rem;
}

.post-content ul {
	list-style: square;
}

.post-content ol {
	list-style: decimal;
}

.post-content li {
	line-height: 1.5;
}

.post-content li::marker {
	color: #14B884;
}

.post-content blockquote {
	border-left: 5px solid #14B884;
	background-color: #E6F7F0;
	padding: 1em 1.5em;
	margin: 1.5em 0;
	font-style: italic;
	color: #414141;
	position: relative;
}

.post-content blockquote::before {
	content: '“';
	position: absolute;
	font-size: 2.5rem;
	color: gray;
	top: 0;
	left: 8px;
}

.wp-block-button__link {
	background-color: #F9F871;
	color: #414141;
	border: none;
	margin: 1.5em 0;
	padding: 1rem 2rem;
	font-size: 1em;
	border-radius: 20px;
	cursor: pointer;
	transition: background-color 0.3s ease;
	text-decoration: none;
}

.wp-block-button__link:hover {
	background-color: #F5E34B;
}

.wp-block-buttons .wp-block-button__link {
	width: 300px;
}

.vk_balloon-position-left.vk_balloon-type-speech .vk_balloon_content .vk_balloon_content_before:not(.has-text-color),
.vk_balloon-position-left.vk_balloon-type-speech .vk_balloon_content .vk_balloon_content_after:not(.has-text-color) {
	border-color: transparent #FFF6D9 transparent transparent !important;
}

.vk_balloon_content {
	background: #FFF6D9 !important;
}

.post-date {
	margin-top: 2rem;
}

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

	.navblk ul {
		font-size: 0.9rem;
	}

	.slide-btn_large {
		width: 16.875rem;
		font-size: 1.1rem;
		padding: 0.8rem 1.6rem;
	}

	.slide-btn_small {
		width: 12rem;
		font-size: 1.0625rem;
		padding: 0.5rem 1rem;
	}

	footer .container img {
		width: 110px;
	}

	footer .container .foot_l {
		padding-right: 2em;
	}

	footer .container .foot_l p {
		font-size: 1rem;
		line-height: 1.4;
		color: inherit;
		text-decoration: none;
	}

	footer .container .foot_r {
		padding-left: 3em;
	}

	.foot_r>ul>li {
		font-size: 0.859rem;
	}

	/*index*/

	.headdesc .head {
		font-size: 2.5rem;
	}

	.headdesc p {
		font-size: 1.1rem;
		margin: 1.5rem 0;
		line-height: 1.7;
	}

	.headdesc .slide-btn_large {
		width: 14rem;
	}

	.head {
		text-decoration-thickness: 9px;
	}

	.treatment .container {
		padding: 0 2rem 0 1rem;
		gap: 1em;
	}

	.treatment {
		padding: 5.2rem 0 6rem;
	}

	.treatment img {
		width: 85%;
	}

	.treatment .info_r h2 {
		font-size: 1.7rem;
	}

	.treatment .info_r p {
		width: 400px;
		font-size: 1rem;
	}

	.information {
		padding: 5.2rem 0 6rem;
	}

	.information .container {
		padding: 0 1em 0 2rem;
		gap: 1em;
	}

	.information img {
		width: 85%;
	}

	.information .info_l h2 {
		font-size: 1.7rem;
	}

	.information .info_l p {
		width: 400px;
		font-size: 1rem;
	}

	.service {
		padding: 5.2rem 0;
	}

	.serviceblks {
		gap: 3rem;
	}

	.serviceblk h2 {
		font-size: 1.7rem;
		margin-bottom: 1rem;
	}

	.serviceblk p {
		font-size: 1rem;
	}

	.news {
		padding: 5.2rem 0;
	}

	.news .container h2 {
		font-size: 1.7rem;
	}

	.contact {
		padding: 4rem 0;
	}

	.contact h2 {
		width: 450px;
		font-size: 1.65rem;
	}

	.contact p {
		padding: 2rem 0 1rem;
		font-size: 1rem;
	}

	.contactbtnblk {
		font-size: 1rem;
		gap: 3rem;
	}

	/*subpage*/
	.header_l {
		margin-left: 0;
		width: 300px;
	}

	.header_l h1 {
		font-size: 2rem;
	}

	.header_l img {
		margin-bottom: 0.5em;
	}

	.sub_header>.container {
		margin: 13rem 0em 3rem;
	}

	.header_r {
		width: 60%;
	}

	.sub_contact {
		margin: 5.2em auto;
	}

	.sub_contact {
		width: 90%;
		padding: 3em 2em;
	}

	.sub_contact .contact_l h2 {
		font-size: 1.5rem;
		margin-right: 1em;
		letter-spacing: 4px;
	}

	.sub_contact .contact_c {
		padding: 0 1em 0 4em;
	}

	.sub_contact .contact_c p {
		font-size: 1rem;
	}

	.sub_contactbtnblk {
		padding-left: 1rem;
		gap: 0.5rem;
	}


	/*aboutus*/

	.explanation {
		padding: 1.5em 0;
	}

	.explanation>.container {
		padding: 1em 0;
	}

	.explanation .container p {
		line-height: 1.7;
		font-size: 1.1rem;
	}

	.explanation .container span {
		font-size: 1.2rem;
	}

	.infomation .info_top h2 {
		font-size: 1.8rem;
	}

	.infomation {
		padding-top: 5.2em;
	}

	.infomation .info_bottom .info_l li {
		font-size: 1rem;
		padding: 0.6em 1em 0.6em 0;
		border-bottom: 1px dotted #14B884;
	}

	.infomation .info_bottom .info_l strong {
		font-size: 1rem;
		margin-right: 0.5em;
	}

	.infomation .info_bottom .info_r {
		width: 40%;
	}

	/*servise*/

	.ours_service h2 {
		font-size: 1.8em;
		text-decoration-thickness: 6px;
		text-underline-offset: 2px;
		line-height: 1.2;
		margin-bottom: 2.5em;
	}

	.ours_service .number {
		margin-top: -3.5em;
	}

	.ours_service .number p {
		font-size: 1.8em;
		width: 50px;
		height: 50px;
	}

	.ours_service h3 {
		font-size: 1.8em;
	}

	.ours_service img {
		width: 70%;
	}

	.ours_service .service_explanation p {
		font-size: 1.1em;
		width: 70%;
		margin-top: 1rem;
	}

	/*dayschedule*/

	.afterschoolscedule .container,
	.holidaysscedule .container {
		width: 80%;
	}

	/* 共通セクションの余白調整 */
	.afterschoolscedule,
	.holidaysscedule {
		padding: 5.2em 2em;
	}

	.afterschoolscedule h2,
	.holidaysscedule h2 {
		font-size: 1.5em;
		letter-spacing: 2px;
		margin-bottom: 1.8em;
		text-align: center;
	}

	/* タイムスケジュール全体の幅調整 */
	.time-schedule {
		width: 100%;
		max-width: 100%;
		padding-left: 2.5em;
		border-left: 4px dotted #FFFF9E;
		box-sizing: border-box;
	}

	/* 時間表示の位置と余白調整 */
	.time-schedule span.time {
		font-size: 1.4em;
		width: 70.8px;
		margin-left: -6em;
		margin-top: 25px;
	}

	.time-schedule span.time::after {
		right: -29px;
		top: 9px;
		width: 16px;
		height: 16px;
	}

	/* スケジュールボックスの余白と幅調整 */
	.time-schedule .sch_box {
		margin-left: 2.5rem;
		padding: 1.8em 1.2em;
	}

	.time-schedule .sch_title {
		font-size: 1.1em;
		margin-bottom: 0.4em;
	}

	.time-schedule .sch_tx {
		font-size: 1em;
		line-height: 1.5em;
	}

	/*servise*/

	.service_object p {
		font-size: 1rem;
	}


	.flow-box h3 {
		font-size: 1.125rem;
	}

	.information_ex h2 {
		font-size: 1.5rem;
	}

	.custom-list li {
		font-size: 0.97rem;
	}

	.flow-box p {
		font-size: 1rem;
		margin: 0.4rem auto 0;
	}

	.flow-container .slide-btn_small {
		margin-top: 0.5rem;
	}

	.other_head {
		margin: 13rem 0em 3rem;
		;
	}

	.other_head img {
		width: auto;
		height: 70px;
		margin-bottom: 0.5em;
	}

	.other_head h1 {
		font-size: 2rem;
		font-weight: bold;
		text-align: center;
		letter-spacing: 1.3px;
	}

	.other_head p {
		font-size: 1.2rem;
		white-space: pre-line;
		text-align: center;
		margin-top: 1.5em;
	}

	.Form-Btn {
		margin-bottom: 5.2rem;
	}


}

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

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

	.hamburger-morph,
	.nav-morph {
		display: block;
	}

	.navblk img {
		width: 70%;
	}

	/* モバイル用のハンバーガーメニューとナビゲーションを表示 */
	.hamburger-morph {
		display: block;
		position: static;
		top: 1.25rem;
		right: 1.25rem;
		z-index: 1000;
		width: 3rem;
		height: 3rem;
		padding: 0;
		border: none;
		background: transparent;
		cursor: pointer;
	}

	.hamburger-morph__icon {
		width: 100%;
		height: 80%;
	}

	.hamburger-morph__line {
		fill: none;
		stroke: #8CC5B8;
		stroke-width: 6;
		transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
			stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
	}

	.hamburger-morph__line:nth-child(1) {
		stroke-dasharray: 60 207;
	}

	.hamburger-morph__line:nth-child(2) {
		stroke-dasharray: 60 60;
	}

	.hamburger-morph__line:nth-child(3) {
		stroke-dasharray: 60 207;
	}

	.hamburger-morph.active .hamburger-morph__line:nth-child(1) {
		stroke-dasharray: 90 207;
		stroke-dashoffset: -134;
	}

	.hamburger-morph.active .hamburger-morph__line:nth-child(2) {
		stroke-dasharray: 1 60;
		stroke-dashoffset: -30;
	}

	.hamburger-morph.active .hamburger-morph__line:nth-child(3) {
		stroke-dasharray: 90 207;
		stroke-dashoffset: -134;
	}

	.nav-morph {
		position: fixed;
		align-items: center;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: rgba(20, 184, 132, 0.97);
		clip-path: circle(0% at calc(100% - 44px) 44px);
		transition: clip-path 0.7s cubic-bezier(0.4, 0, 0.2, 1);
		z-index: 900;
	}

	.nav-morph.active {
		clip-path: circle(150% at calc(100% - 44px) 44px);
	}

	.nav-morph__wrapper {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
	}

	.nav-morph ul {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		height: 100%;
		list-style: none;
		padding: 0;
		text-align: center;
	}

	.nav-morph ul li {
		color: #fff;
		line-height: 1.25rem;
		margin-bottom: 1.25rem;
	}

	.nav-morph ul li a {
		color: #fff;
		text-decoration: none;
	}

	.nav-morph ul li.navi_contact a {
		padding: 0.3125rem 0.625rem;
	}

	.sub_contact {
		padding: 2.5em 1em;
	}

	.sub_header>.container {
		margin: 9.5rem 0em 3rem;
	}

	.header_r {
		aspect-ratio: 2/1;
	}

	.sub_contact .contact_l h2 {
		font-size: 1.2rem;
		letter-spacing: 1px;
		margin-top: 1em;
	}

	.sub_contact .contact_c p {
		font-size: 0.9rem;
		letter-spacing: 0px;
	}

	.sub_contactbtnblk .slide-btn_small {
		width: 220px;
		font-size: 0.95rem;
	}

	/*information*/
	.flow-row.two-column {
		gap: 70px;
	}
}

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

	.slide-btn_large {
		width: 250px;
		font-size: 1rem;
		padding: 0.3rem 0.6rem;
	}

	.slide-btn_small {
		display: inline-block;
		width: 11rem;
		font-size: 1rem;
		color: #1E1E1E;
		padding: 0.3rem 0.6rem;
	}

	.navblk img {
		width: 40%;
	}

	footer {
		padding: 1rem 0;
	}

	footer>.container {
		align-items: center;
	}

	footer .container img {
		width: 70px;
		margin-right: 1rem;
	}


	footer>.container>.foot_l {
		padding-right: 0rem;
	}

	.foot_l>p {
		display: none;
	}

	.foot_l::after {
		display: none;
	}

	footer .container .foot_r>ul>li {
		font-size: 0.7rem;
		line-height: 2.5;
	}

	footer>.container>.foot_r {
		padding-left: 0.5rem;
		padding-bottom: 0rem;
	}

	/*index*/

	header {
		background-image: url("img/topbg_p.png");
		aspect-ratio: 1 / 1;
	}

	.headdesc .head {
		display: none;
	}

	.head_text {
		font-size: 1.8rem;
		color: #26D580;
	}

	.headdesc p {
		display: none;
	}

	.headdesc .slide-btn_large {
		margin-top: auto;
		margin-bottom: 8%;
		width: 200px;
		font-size: 1.05rem;
		padding: 0.3rem 0.6rem;
	}

	.treatment {
		padding: 2.5rem 0 5rem;
	}

	.treatment img {
		width: 100%;
	}

	.treatment>.container {
		flex-direction: column;
		justify-content: center;
		gap: 0.5rem;
		text-align: center;
		padding: 0;
	}

	.treatment>.container>.info_l {
		width: 70%;
	}

	.treatment>.container h2 {
		font-size: 1.3rem;
	}

	.treatment>.container p {
		width: 350px;
		font-size: 1rem;
		margin-bottom: 1rem;
		line-height: 1.5;
	}

	.information {
		padding: 5rem 0 2.5rem;
	}

	.information>.container {
		flex-direction: column;
		justify-content: center;
		gap: 0.5rem;
		text-align: center;
		padding: 0;
	}

	.information img {
		width: 100%;
	}

	.information>.container h2 {
		font-size: 1.3rem;
	}

	.information>.container p {
		font-size: 1rem;
		margin-bottom: 1rem;
		width: 320px;
		line-height: 1.5;
	}

	.img_res {
		display: block;
		width: 70%;
	}

	.information>.container>.info_r {
		display: none;
	}

	.service {
		padding: 2.5rem 0;
	}

	.service>.container>.serviceblks {
		flex-direction: column;
		align-items: center;
		gap: 2rem;
	}

	.serviceblk {
		padding: 1.5rem 1rem;
		width: 100%;
		border-radius: 70px;
	}

	.serviceblk h2 {
		font-size: 1.3rem;
	}

	.serviceblk p {
		font-size: 1rem;
		padding: 1em 0;
		line-height: 1.5;
	}

	.news {
		padding: 1.5em 0;
	}

	.news .container h2 {
		font-size: 1.3rem;
		padding-bottom: 1rem;
	}

	.newsblks {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 1rem;
	}

	.newsblks .title {
		font-size: 1rem;
		line-height: 1em;
	}

	.newsblks p {
		font-size: 1rem;
		margin-bottom: 1em;
	}

	.news>.slide-btn_large {
		display: flex;
		justify-content: flex-end;
	}

	.newsblk>p {
		margin-bottom: 1em;
	}

	.contact {
		padding: 2rem;
		background-image: url("img/contactbi.png");
	}

	.contact h2 {
		font-size: 1.3rem;
		padding: 0.4rem;
		letter-spacing: 14px;
		border-radius: 10px;
		width: 16rem;
	}

	.contact p {
		padding: 1rem 0;
		font-size: 1rem;
	}

	.contactbtnblk {
		display: inline-block;
		padding-top: 0rem;
	}

	.contactbtnblk a:first-of-type {
		margin-bottom: 0.8rem;
	}

	.thankspage .other_head .slide-btn_small {
		margin: 1rem 0;
	}


	.balloon3 {
		position: relative;
		display: flex;
		margin: 1.5em auto;
		padding: 0 1.5rem;
		width: 300px;
		height: 150px;
		line-height: 28px;
		text-align: center;
		align-items: center;
		white-space: pre-line;
		color: white;
		font-size: 20px;
		font-weight: bold;
		background: #009E99;
		border-radius: 20px;
		box-sizing: border-box;
	}

	.balloon3:before {
		content: "";
		position: absolute;
		bottom: -25px;
		left: 50%;
		margin-left: -15px;
		border: 15px solid transparent;
		border-top: 15px solid #009E99;
		z-index: 0;
	}

	/*subpage*/
	.header_l h1 {
		font-size: 1.4rem;
	}

	.header_l img {
		margin-bottom: 0.3em;
		height: 40px;
	}

	.sub_header>.container {
		flex-direction: column;
		width: 90%;
		margin: 4rem auto 1.5rem;
		gap: 1rem;
	}

	.header_l {
		margin-left: 0;
		width: 100%;
		padding: 0 1em;
	}

	.header_l h1 {
		font-size: 1.4rem;
	}

	.header_r {
		width: 100%;
		padding: 0 1em;
	}

	.header_r img {
		width: 100%;
		height: auto;
	}

	.sub_contact {
		flex-direction: column;
		padding: 2em 1.5em;
		margin: 1.8rem auto;
	}

	.sub_contact .contact_l {
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 1em;
	}

	.sub_contact .contact_l::after {
		display: none;
	}

	.sub_contact .contact_l h2 {
		margin: 0 auto;
	}

	.sub_contact .contact_c p {
		text-align: center;
	}

	.sub_contact .contact_c {
		padding: 0;
		flex-direction: column;
		text-align: left;
	}

	.sub_contactbtnblk {
		align-items: center;
		margin-top: 1rem;
	}

	.sub_contactbtnblk>.slide-btn_small {
		width: 210px;
		max-width: 260px;
	}

	.phone_image_box {
		display: block;
		position: relative;
	}

	.overlay-text {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		color: white;
		font-weight: bold;
		z-index: 2;
		text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
		text-align: center;
		padding: 0.5em 1em;
	}

	.overlay-text h1 {
		width: 280px;
		font-size: 1.7rem;
		letter-spacing: 3px;
	}

	.phone_image_box img {
		filter: brightness(60%);
		width: 100%;
		height: auto;
		display: block;
	}

	.header_l,
	.header_r {
		display: none;
	}

	/*aboutus*/

	.curved {
		height: 3em;
	}

	.curved::after {
		height: 3em;
	}

	.explanation {
		display: none;
	}

	.explanation_phone {
		display: block;
		text-align: center;
		background-color: #26D580;
		color: white;
		padding: 1.5em 0;
	}

	.explanation_phone .container {
		width: 80%;
	}

	.explanation_phone img {
		margin: 0.7rem 0 0.3rem;
	}

	.explanation_phone .container p {
		font-size: 1rem;
	}

	.explanation_phone .container span {
		color: #FBFFD3;
		font-size: 1.1rem;
	}

	.infomation {
		padding-top: 2rem;
	}

	.infomation .info_bottom {
		display: block;
		margin: 1rem auto 0rem;
	}

	.infomation .info_top h2 {
		font-size: 1.3rem;
	}

	.infomation .info_bottom .info_l li {
		font-size: 1rem;
		padding: 0.4em 0;
		/* 左右のパディングを削除 */
	}

	.infomation .info_bottom .info_l strong {
		width: 4rem;
		/* 項目名の幅を統一 */
		font-size: 1rem;
	}

	.infomation .info_bottom .info_l {
		padding-left: 0rem;
		padding-right: 0rem;
	}

	.infomation .info_bottom .info_r {
		margin-top: 1rem;
		width: 100%;
	}

	/*servise*/

	.ours_service .container {
		width: 90%;
		margin-top: 2em;
	}

	.ours_service .svcblock {
		color: #FFFFFF;
		padding: 1.5em 0;
		margin-bottom: 2.5em;
		background-color: #14B884;
		border-radius: 20px;
	}

	.ours_service h2 {
		font-size: 1.3em;
		text-decoration-thickness: 4px;
		text-underline-offset: 2px;
		line-height: 1.2;
		margin-bottom: 2.5em;
	}

	.ours_service span {
		font-size: 1.4em;
	}

	.ours_service .number {
		margin-top: -2.8em;
	}

	.ours_service .number p {
		font-size: 1.5em;
		width: 40px;
		height: 40px;
	}

	.ours_service h3 {
		font-size: 1.25em;
		margin: 0.5rem 0 0.7rem;
	}

	.ours_service .service_explanation p {
		font-size: 1em;
		width: 70%;
		margin-top: 0.5rem;
	}

	/*dayschedule*/
	.time-schedule {
		padding-left: 1rem;
		border-left: 3px dotted #FFFF9E;
	}

	.afterschoolscedule img,
	.holidaysscedule img {
		width: 95px;
	}

	.time-schedule li {
		width: 100%;
		margin: 0 0;
		padding-bottom: 0.8em;
	}

	.time-schedule span.time {
		display: block;
		width: 100%;
		margin-left: 0;
		margin-top: 0.5em;
		text-align: left;
		font-size: 1.25rem;
	}

	.time-schedule span.time::after {
		left: -26px;
		right: auto;
	}

	.time-schedule .sch_box {
		margin-left: 0;
		padding: 1.5em 1em;
	}

	.afterschoolscedule,
	.holidaysscedule {
		padding: 3em 0em;
		margin: 2em 0;
	}

	.afterschoolscedule h2,
	.holidaysscedule h2 {
		font-size: 1.3em;
		margin-bottom: 1.5em;
		text-align: center;
	}

	.time-schedule .sch_title {
		font-size: 1.1em;
	}

	.time-schedule .sch_tx {
		font-size: 1em;
		line-height: 1.5em;
	}

	.wave {
		position: absolute;
		height: 40px;
		width: 100%;
		background: #26D580;
		bottom: 0;
	}

	/*information*/
	.information_ex {
		width: 99%;
	}

	.information_ex h2 {
		font-size: 1.3rem;
	}

	.service_object p {
		font-size: 0.98rem;
	}

	.service_object {
		margin: 0.8em auto 2em;
		padding: 1.5rem 1rem;
		background-color: #26D580;
		color: #FFFFFF;
		border-radius: 20px;
		letter-spacing: 1.5px;
		line-height: 1.6;
	}

	.flow {
		margin: 0.8em auto 2em;
	}

	.flow-box {
		background-color: #26D580;
		color: white;
		padding: 1.5rem 0.8rem;
		margin-bottom: 1.8rem;
	}

	.flow-container .slide-btn_small {
		font-size: 0.95rem;
	}

	.flow-box h3 {
		font-size: 1.09rem;
	}

	.flow-box p {
		font-size: 0.95rem;
		white-space: normal;
	}

	.flow-row.two-column {
		gap: 10px;
	}

	.flow-row .flow-box.small {
		flex: 0.8;
	}

	.flow-box.small p {
		width: 90%;
	}

	.flow-container::before {
		left: 22%;
	}

	.flow-container::after {
		left: 72%;
	}

	.fee {
		margin: 0.8em auto 2em;
	}

	.fee th {
		padding: 1rem 0.5rem;
		font-size: 0.95rem;
	}

	.fee td {
		padding: 1rem;
		font-size: 0.95rem;
	}

	/*contact*/
	.other_head {
		margin: 5rem 0em 0rem;
	}

	.other_head img {
		width: auto;
		height: 40px;
		margin-bottom: 0.3em;
	}

	.other_head h1 {
		font-size: 1.4rem;
	}

	.other_head p {
		font-size: 1rem;
		white-space: pre-line;
		text-align: center;
		margin-top: 0.5em;
	}

	.Form-Btn {
		margin-bottom: 2rem;
	}

	.Form-Item-Input {
		margin-top: 7px;
	}

	.Form-Item-Serect select {
		height: 2.18em;
	}

	.Form-RadioGroup {
		margin-top: 8px;
		margin-left: 0px;
	}

	/*記事投稿ページ*/
	.main-contents {
		width: 90%;
		padding: 2rem 1rem;
		margin-top: 1rem;
		border-radius: 20px;
	}

	.post-content {
		margin-top: 0rem;
	}

	.post-item img {
		width: 400px;
		margin: 0 auto;
	}

	.post-content h2 {
		font-size: 1.2rem;
	}

	.post-content h3 {
		font-size: 1.1rem;
		margin-top: 1rem;
	}

	.post-content p {
		font-size: 1rem;
	}


	.post-content li {
		line-height: 1.5;
	}

}