@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho&display=swap');

:root {
	--black: #534741;
	--green: #408A69;
	--yellow: #FFF998;
	--light-yellow: #FFFEF2;
	--red: #ba2636;
}

.article_wrap {
	margin-bottom: 0!important;
}

h2, h3, h4, p, li, a, summary, th, td {
	font-family: "Zen Old Mincho", serif!important;
	font-weight: 400;
}

h2 {
	background: none!important;
	color: var(--green)!important;
}

p {
	margin-bottom: 2rem!important;
}

/* ◆◆◆ 枠外背景 ◆◆◆ */
.keni-main {
	overflow: hidden;
	background-image:url( https://pilates.diet-seikotu-seitai.com/wp-content/uploads/2025/06/pilates-bg.webp)!important;
	background-attachment: fixed!important;
	background-repeat: no-repeat;
	background-size: cover;
}
/* ◆◆◆ /枠外背景 ◆◆◆ */

/*◆◆◆ 文字 ◆◆◆ */
.mincho {
	font-family: "Zen Old Mincho", serif;
}

.gothic {
	font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
}

.text__green {
	color: var(--green);
	font-weight: 600;
}

.marker__yellow {
	font-weight:bold;
	background:linear-gradient(transparent 60%, #FFF998 60%);
}

h2.green__title {
	position: relative;
	font-weight: 400;
	border-bottom: solid 1px;
	padding: 1rem 0 1.5rem 0;
}

h2.green__title:before {
	position: absolute;
	color: #ABD8C5;
	font-size: 2.4rem;
	top: -2.4rem;
	left: 0.3rem;
}

.reason h2.green__title:before, .reason5 h2.green__title:before {
	content: "Reason";
}

.voice h2.green__title:before, .ba h2.green__title:before {
	content: "Customer testimonials";
}

.flow h2.green__title:before {
	content: "Flow";
}

.qa h2.green__title:before {
	content: "Q&A";
}

.access h2.green__title:before {
	content: "Access";
}

/* ◆◆◆ h1 ◆◆◆ */
.h1_title h1 {
	color: white;
	max-width: 600px;
	margin: 0 auto;
}

.h1_title  {
	background: var(--green);
}
/* ◆◆◆ /h1 ◆◆◆ */
	
/* ◆◆◆ FV ◆◆◆ */
.fv figure {
	margin: 0;
}
/* ◆◆◆ /FV ◆◆◆ */


/* ◆◆◆ オファー ◆◆◆ */
.offer {
	margin-top: 3rem;
}
.offer figure {
	margin: 0;
}
/* ◆◆◆ /オファー ◆◆◆ */


/* ◆◆◆ 問合 ◆◆◆ */
.contact {
	margin-top: 3rem;
}

.contact__btn {
	margin-bottom: 2rem;
	transition-duration: 0.6S;
}

.contact__btn:hover {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
	transition-property: all;
	transition-duration: 0.6S;
}
/* ◆◆◆ /問合 ◆◆◆ */


/* ◆◆◆ お悩み ◆◆◆ */
.problem {
	margin-top: 5rem;
}

.problem__inner {
	position: relative;
	background: #D8D1D1;
	padding-top: 3rem;
	padding-bottom: 3rem;
}

.problem__inner:after {
	position: absolute;
	content: "";
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	background: #D8D1D1;
	width: 100%;
	height: 3rem;
	bottom: -3rem;
	left: 50%;
	transform: translatex(-50%);
}

h2.problem__title {
	color: var(--black)!important;
	font-weight: 500;
	text-align: center;
	background: white!important;
	border-radius: 5rem;
	padding: 1.5rem 1rem;
}

figure.problem-img {
	position: absolute;
	width: 40%;
	top: 10.5rem;
	left: 50%;
	transform: translatex(-50%);
	margin: 0!important;
	z-index: 1;
}

ul.problem__items {
	position: relative;
	background: white;
	list-style: none;
	padding: 2rem;
	margin: 18rem 0 0 0!important;
	z-index: 10;
}

.problem__items li {
	position: relative;
	color: white;
	font-size: clamp(1.7rem, 2vw, 2rem);
	letter-spacing: 2px;
	background: #6C6A6A;
	padding: 1.4rem 1rem 1.4rem 7rem;
	list-style: none;
}

.problem__items li:before {
	position: absolute;
	top: 1.5rem;
	left: 3rem;
	content: "";
	background: url(https://pilates.diet-seikotu-seitai.com/wp-content/uploads/2025/06/pilates-check.webp);
	background-size: cover;
	width: 2.4rem;
	height: 2.4rem;
}

p.problem__message {
	color: white;
	font-size: clamp(2.2rem, 4vw, 3.2rem)!important;
	text-align: center;
	line-height: 1.4;
	background: var(--green);
	padding: 5rem 2rem 3rem;
	margin-bottom: 0!important;
}

p.problem__message span {
	color: var(--yellow);
}
/* ◆◆◆ /お悩み ◆◆◆ */

/* ◆◆◆ 改善する理由 ◆◆◆ */
.reason {
	background: var(--light-yellow);
	padding-top: 8rem;
	padding-bottom: 3rem;
}
/* ◆◆◆ /改善する理由 ◆◆◆ */


/* ◆◆◆ 喜びの声 ◆◆◆ */
.voice, .ba {
	margin-top: 8rem;
	margin-bottom: 6rem;
}

.voice__inner, .ba__inner {}

h2.voice__title, h2.ba__title {
	text-align: center;
}

ul.voice__items, ul.ba__items {
	counter-reset: ba;
	list-style: none;
}

.voice__item-title:before, .ba__item-title:before {
	position: absolute;
	content: "";
	clip-path: circle(50% at 50% 50%);
	background: var(--green);
	width: 5rem;
	height: 5rem;
	bottom: -5rem;
	left: 50%;
	transform: translatex(-50%);
}

.ba__item-title:after {
	position: absolute;
	color: white;
	font-size: 2.6rem;
	font-weight: 600;
	content: counter(ba, decimal-leading-zero);
	counter-increment: ba;
	bottom: -3.8rem;
	left: 50%;
	transform: translatex(-50%);
}

.voice__item-title:after {
	position: absolute;
	color: white;
	font-size: 2.6rem;
	font-weight: 600;
	content: counter(ba, decimal-leading-zero);
	counter-increment: ba;
	bottom: -3.8rem;
	left: 50%;
	transform: translatex(-50%);
}

.ba__item, .voice__item {
	text-align: center;
	padding: 2rem 0 0;
}

.ba__item-img, .voice__item-img {
	display: flex;
	justify-content: space-between;
	margin-top: 2.5rem;
}

figure.ba__img, figure.voice__img {
	width: 49%;
	margin: 0;
}

.ba__item-title, .voice__item-title {
	position: relative;
}

.ba__item-title h3, .voice__item-title h3 {
	text-align: center;
	font-size:clamp(1.8rem, 3.2vw, 2.2rem)!important;
	background: url(https://pilates.diet-seikotu-seitai.com/wp-content/uploads/2025/06/voice-title-bg.webp);
	background-size: 100% 100%;
	border: none;
	padding: 2rem 1rem 3.5rem;
	margin: 0 0 0.5rem!important;
}

p.ba__item-meta, p.voice__item-meta {
	text-align: center;
	font-size: 1.5rem;
	margin: 0 1rem 0.5rem!important;
}

p.voice__item-meta{
	color: var(--green);	
}

p.ba__item-text, p.voice__item-text {
	margin-bottom: 0!important;
}

p.voice__item-text {
	text-align: justify;
}

p.ba__item-text span, p.voice__item-text span {
	color: var(--red);
	font-size: 150%;
}

p.ba__item-note, p.voice__item-note {
	color: gray;
	font-size: 80%!important;
	margin-bottom: 0!important;
}

p.voice__item-note {
	text-align: right;
}
/* ◆◆◆ /喜びの声 ◆◆◆ */


/* ◆◆◆ 5つの理由 ◆◆◆ */
.reason5 {
	margin-top: 8rem;
}

.reason5__inner {}

h2.reason5__title {
	text-align: center;
}

ul.reason5__items {
	counter-reset: reason;
	list-style: none;
}

li.reason5__item {
	margin-bottom: 4rem;
}

li.reason5__item h3 {
	position: relative;
	display: flex;
	color: white;
	border: none;
	align-items: center;
	background: url(https://pilates.diet-seikotu-seitai.com/wp-content/uploads/2025/06/reason-title-bg.webp);
	background-size: 100% 100%;
	height: 10rem;
	padding: 1rem 1rem 1rem 10rem;
	margin-bottom: 0!important;
}

li.reason5__item h3:before {
	position: absolute;
	content: counter(reason, decimal-leading-zero);
	counter-increment: reason;
	color: var(--yellow);
	font-size: 5rem;
	font-weight: 400;
	top: 50%;
	left: 2rem;
	transform: translatey(-50%);
}

.reason5__item .inner {
	background: var(--light-yellow);
	padding-bottom: 0.5rem;
}

figure.reason5__img {
	padding-top: 2.4rem;
	margin-top: 0!important;
}

.reason5__item p {
	text-align: justify;
}
/* ◆◆◆ /理由 ◆◆◆ */


/* ◆◆◆ 流れ ◆◆◆ */
.flow {
	border-bottom: solid var(--green);
	margin-top: 8rem;
	margin-bottom: 7rem;
}

h2.flow-title {
	
	text-align: center;
}

.flow__inner {}

ul.flow__items {
	counter-reset: flow;
	list-style: none;
}

li.flow__item {
	
	padding: 0 0 0 5rem;
	margin-bottom: 0;
	
}

li.flow__item:nth-of-type(even) {
	background: var(--light-yellow);
}

.flow__item-inner{ 
	border-left: dotted 2px var(--green);
	padding: 4rem 5rem 2rem 3rem;
}

li.flow__item h3 {
	position: relative;
	color: var(--green);
	border: none;
	padding-top: 0!important;
}

li.flow__item h3:before{
	position: absolute;
	content: "";
	width: 4rem;
	height: 4rem;
	top: -0.5rem;
	left: -5rem;
}

li.flow__item:nth-of-type(odd) h3::before{
	background: url(https://pilates.diet-seikotu-seitai.com/wp-content/uploads/2025/06/flow-title-number-bg-odd.webp);
	background-size: cover;
}

li.flow__item:nth-of-type(even) h3::before{
	background:  url(https://pilates.diet-seikotu-seitai.com/wp-content/uploads/2025/06/flow-title-number-bg-even.webp);
	background-size: cover;
}

li.flow__item h3:after {
	position: absolute;
	content: counter(flow);
	counter-increment: flow;
	font-size: 2.7rem;
	top: -0.2rem;
	left: -3.7rem;
}

li.flow__item:nth-of-type(odd) h3::after {
	color: white;
}

li.flow__item:nth-of-type(even) h3::after {
	color: var(--green);
}

figure.flow__img {}

li.flow__item p {
	text-align: justify;
}
/* ◆◆◆ /流れ ◆◆◆ */


/* ◆◆◆ 質問 ◆◆◆ */
.qa {
	margin-top: 8rem;
}
.qa__inner {}

h2.qa__title {
	text-align: center;
}

.qa__list {}

.qa__list details {
	font-size: 2rem;
	text-align: justify;
	border-radius: 0.6rem;
	padding: 1rem 0;
    margin-bottom: 0;
}

.qa__list details summary {
	position:relative;
    color: #777;
	background: #FCFCFC;
	padding: 2rem 5rem 1.6rem 7rem;
	cursor: pointer;
}

.qa__list details p {
	position: relative;
	padding: 2rem 3rem 2rem 5rem;
    margin: 0.4rem 2rem 0!important;
}

.qa__list details summary::before, .qa__list details p:before {
    position: absolute;
	font-size: 2.8rem;
	font-weight: 600;
}

.qa__list details summary::before {
	color: var(--green);
	content: "Q.";
	top: 1.8rem;
	left: 3rem;
}

.qa__list details p:before {
	content: "A.";
	color: var(--black);
	top:1.8rem;
	left: 1rem;
}

/*Chrome用のデフォルト三角削除*/
.qa__list details summary::-webkit-details-marker {
	display: none;
}

/*アコーディオンプラスアイコン*/
.qa__list details summary::after, .qa__list details[open] summary::after {
	position: absolute;
	content: "";
	top:2rem;
	right:2.5rem;
}

.qa__list details summary::after {
	content: "＋";
	font-size: 2.4rem;
}
/*アコーディオンオープン時マイナスアイコンに変更*/
.qa__list details[open] summary::after {
	content: "ー";
	font-size: 2rem;
	font-family: sans-serif;
}

/*Q&Aの三角を消す*/
.qa__list summary {
	display: block;
	list-style: none;
}
/* 一部ブラウザで消えなかった場合は以下も追記 */
.qa__list summary::-webkit-details-marker {
	display:none;
}
/* ◆◆◆ /質問 ◆◆◆ */


/* ◆◆◆ アクセス ◆◆◆ */
.access {
	margin-top: 8rem;
	margin-bottom: 5rem;
}

.g-map {
	margin-bottom: 4rem;
}

.access__inner {}

p.access__clinic-name {
	color: var(--green);
	text-align: center;
	font-size: clamp(2.2rem, 4vw, 3rem)!important;
}

h2.access__title {
	text-align: center;
}

.access figure {
	margin-bottom: 3rem;
}



table.access__table th {
	text-align: left;
	background: none;
}

table.access__table th, table.access__table td {
	font-size: clamp(1.6rem, 2vw, 2rem);
	padding: 1.6rem 1rem;
}

.access__table th, .access__table td {
	border: none;
	border-bottom: solid 0.5px #42210B;
}

.access__table th {
	color: var(--green);
	font-weight: 400;
}

/* ◆◆◆ /アクセス ◆◆◆ */


/* ◆◆◆ フッターボタン ◆◆◆ */
.footer__contact {
	position: fixed;
	bottom: 0.5rem;
	right: 1rem;
	width: 40rem;
	z-index: 10;
}

.article-body {
	padding-bottom: 5rem;
}

/*1つの場合*/
.footer__contact-btn1 {
	transition: 0.6s;
}

.footer__contact-btn1:hover {
	transform: scale(1.05,1.05);
}

/*2つの場合*/
.footer__contact-btn2 {}

.footer__btn2-item {
	transition: 0.6s;
	margin-bottom: 1.6rem;
}

.footer__btn2-item:hover {
	transform: scale(1.05,1.05);
}
/* ◆◆◆ /フッターボタン ◆◆◆ */

/* ◆◆◆ フッター ◆◆◆ */
.keni-footer_wrap {
	background: #5a544b!important;
	margin-top: -5rem;
}

.keni-copyright_wrap {
	border-top: none!important;
	text-align: center;
}

.keni-copyright {
	color: white;
}
/* ◆◆◆ /フッター ◆◆◆ */



/* ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ SP ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ */

@media (max-width: 600px) {
	
	/* ◆◆◆ お悩み ◆◆◆ */
	.problem {
		margin-top: 4rem;
	}
	
	ul.problem__items {
		padding: 1rem;
		margin: 11rem 0 0 0 !important;
	}
	
	figure.problem-img {
		top: 13rem;
	}
	
	.problem__items li {
		list-style: none;
		letter-spacing: 0.3;
		padding: 1.4rem 1rem 1.4rem 5rem;
	}
	
	.problem__items li:before {
		width: 2rem;
		height: 2rem;
		top: 2rem;
		left: 1.5rem;
	}
	/* ◆◆◆ /お悩み ◆◆◆ */
	
	
	/* ◆◆◆ 喜びの声 ◆◆◆ */
	.ba, .voice {
		margin-top: 6rem;
	}
	
	.ba__item, .voice__item {
		padding: 2rem 0 0;
	}
	
	li.voice__item {
		padding: 2rem 0 0.6rem;
	}
	
	.ba__item-title h3, .voice__item-title h3 {
		padding: 2rem 1rem 4.5rem;
		line-height: 1.5;
	}

	figure.voice__item-img {
		float: left;
		width: 100%;
		padding: 0 0 1.6rem 0;
	}

	p.voice__item-text {}
	/* ◆◆◆ /喜びの声 ◆◆◆ */
	
	
	/* ◆◆◆ 理由 ◆◆◆ */
	li.reason5__item h3 {
		padding: 1rem 1rem 1rem 7rem;
	}
	
	li.reason5__item h3:before {
		font-size: 4rem;
		left: 1.5rem;
	}
	/* ◆◆◆ /理由 ◆◆◆ */
	
	
	/* ◆◆◆ 流れ ◆◆◆ */
	li.flow__item {
		padding: 0 0 0 3rem;
	}
	
	.flow__item-inner {
		padding: 4rem 3rem 2rem 2rem;
	}
	
	li.flow__item h3 {
		padding-left: 1rem;
	}
	
	li.flow__item h3:before {
		left: -4.2rem;
	}
	
	li.flow__item h3:after {
		left: -2.9rem;
	}
	/* ◆◆◆ /流れ ◆◆◆ */


	/* ◆◆◆ 質問 ◆◆◆ */
	.qa__list {
		padding-bottom: 3rem;
		margin-top: 4rem;
	}

	.qa__list details {
		font-size: 1.7rem;
		padding: 0.5rem 0;
	}
	
	.qa__list details summary {
		padding: 1rem 4rem 0.6rem 5rem;
	}

	.qa__list details p {
		position: relative;
		padding: 1rem 1rem 1rem 3rem;
		margin: 0.4rem 2rem 0!important;
	}
	
	.qa__list details summary::before, .qa__list details p:before {
		font-size: 2rem;
	}

	.qa__list details summary::before {
		top: 0.8rem;
		left: 1.5rem;
	}

	.qa__list details p:before {
		top:1rem;
		left: -0.5rem;
	}

	/*アコーディオンプラスアイコン*/
	.qa__list details summary::after, .qa__list details[open] summary::after {
		width: 1.6rem;
		height: 1.6rem;
		top:0.9rem;
		right: 1.8rem;
	}
	
	/* ◆◆◆ /質問 ◆◆◆ */
	
	
	/* ◆◆◆ アクセス ◆◆◆ */
	.access {
		margin-top: 4rem;
	}
	
	p.access__clinic-name {
		margin-bottom: 0!important;
	}
	
	table.access__table {
		padding-top: 0;
	}
	
	.access__table th, .access__table td {
		display: block;
		width: 100%;
		text-align: center!important;
	}
	
	table.access__table th {
		border: none;
		padding-top: 1.6rem;
		padding-bottom: 0;
	}
	
	table.access__table td {
		padding-top: 0;
		padding-bottom: 1.6rem;
	}
	/* ◆◆◆ /アクセス ◆◆◆ */
	
	
	/* ◆◆◆ フッターボタン ◆◆◆ */
	.footer__contact {
		bottom: 0;
		right: 0;
		width: 100%;
	}

	/*1つの場合*/
	.footer__contact-btn1 {
		transition: 0.6s;
	}

	/*2つの場合*/
	.footer__contact-btn2 {
		display: flex;
		}

	.footer__btn2-item {
		width: 50%;
		padding: 0.1rem;
		margin-bottom: 0;
	}
	/* ◆◆◆ フッターボタン ◆◆◆ */

}