:root {
	--red: #E83828;
	--green: #8FC31F;
	--dark-green: #76A959;
	--orange: #F39800;	
	--yellow: #FFDA6C;
	--pink: #EB6C8A;
	--ivory: #FFFCF2;
	--brown: #604C3F;
	--black: #585858;
	--gothic: 'Helvetica Neue', '游ゴシック体', YuGothic, 'メイリオ', Meiryo, sans-serif;
	--mincho: '游明朝体', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', serif;
}

/* ◆◆◆ 下層P LP化につき非表示 ◆◆◆ */
.c-filterLayer, .p-breadcrumb {
	display: none;
}
.l-content__body {
	margin-top: 0;
}

/* ◆◆◆ 枠外背景 ◆◆◆ */
@media (min-width: 769px) {
	.l-wrapper {
		overflow: hidden;
		background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/12/bg.webp);
		background-attachment: fixed;
		background-repeat: no-repeat;
		background-size: cover;
	}
}
/* ◆◆◆ /枠外背景 ◆◆◆ */


/* ◆◆◆ フォントサイズ ◆◆◆ */
/* このサイトに合う設定に調整 */
h2 {
	font-size: clamp(1.8rem, 2.8vw, 2.3rem);
	min-height: 0;
	line-height: 1.2;
	padding: 0 0 1em;
	background: none;
	color: var(--black);
}

h3 {
	font-size: clamp(1.5rem, 2.4vw, 2rem);
	min-height: 0;
	margin-top: 3rem;
	padding: 0;
	border: none;
}

p, li, a {
	font-size: clamp(1rem, 1.6vw, 1.3rem);
}

p {
	color: var(--brown);
	margin-bottom: 2rem;
}

.blue__bg {
	color: white;
	background: #477CB2;
}

img {
	display: block;
}

/* ◆◆◆ /フォントサイズ ◆◆◆ */


/* ◆◆◆ 文字色 ◆◆◆ */
.text__red {
	color: var(--red);
	font-weight: 600;
}

.text__blue {
	color: var(--blue);
	font-weight: 600;
}

.text__pink {
	color: var(--pink);
	font-weight: 600;
}

.text__orange {
	color: var(--orange);
	font-weight: 600;
}
/* ◆◆◆ /文字色 ◆◆◆ */


/* ◆◆◆ マーカー ◆◆◆ */
.marker__yellow {
	font-weight:bold;
	background:linear-gradient(transparent 60%, #FFDA6C 60%);
}

.marker__pink {
	font-weight:bold;
	background:linear-gradient(transparent 60%, var(--pink) 60%);
}
/* ◆◆◆ /マーカー ◆◆◆ */

/* ◆◆◆ TOP日付カウンター実装前 ◆◆◆ */
.day-counter p {
	color: white;
	font-size: clamp(1.5rem, 3.2vw, 2.4rem);
	font-weight: 600;
	letter-spacing: 0.1em;
	text-align: center;
	background: var(--red);
	padding: 0.5em;
	margin-bottom: 0;
}

.counter__small {
	font-size: 80%;
}
/* ◆◆◆ /TOP日付カウンター実装前 ◆◆◆ */


/* ◆◆◆ TOP日付カウンター実装後 ◆◆◆ */
.top-timer {
		background: var(--red);
	text-align: center;
	padding-top: 0.4em;
}

.top-timer__note {
	color: var(--red);
	font-size:clamp(0.9rem, 1.4vw,1.2rem);
		font-weight: 600;
	background: white;
	border-radius:1em;
	padding:0.1em 1em;
}

.timer-container {
	background: var(--red);
    color: #ffffff;
    padding: 0 0.2em 0.2em;
    font-weight: bold;
    font-family: "Helvetica Neue", Arial, sans-serif;
    display: flex;
    justify-content: center;
}

.timer-display, #countdown-wrapper {
    display: flex;
    align-items: baseline;
}

.num {
    font-size: clamp(2rem, 4.4vw,4rem);
    font-weight: 900;
    line-height: 1; 
    margin: 0 2px;
}

/* ミリ秒部分を消したい場合はここを有効に */
/* .timer-ms { display: none; } */

.timer-label {
    font-size: clamp(1.4rem, 2.4vw,2.2rem);
    margin-right: 10px;
}

.unit {
    font-size: clamp(1.2rem, 2vw,1.6rem);
    margin-right: 8px;
    vertical-align: middle;
}

/* ミリ秒部分を後で消したい場合はここを有効に */
/* .timer-ms { display: none; } */

/* ◆◆◆ /TOP日付カウンター実装後 ◆◆◆ */


/* ◆◆◆ FV ◆◆◆ */
.fv figure {
	margin: 0;
}
/* ◆◆◆ /FV ◆◆◆ */


/* ◆◆◆ オファー ◆◆◆ */
.offer {}

.offer figure {
	margin: 0;
}

.offer__inner {
	position: relative;
}

.offer__btn {
	position: absolute;
	width: 70%;
	bottom: 3.3em;
	left: 50%;
	transform: translateX(-50%);
	transition: 0.6s;
}

.offer__btn:hover {
	transform: translateX(-50%) scale(1.05);
}
/* ◆◆◆ /オファー ◆◆◆ */


/* ◆◆◆ 問合 ◆◆◆ */
.contact {
	margin-top: 1em;
}

.contact__btn-item {
	margin-bottom: 0.5em;
	transition-duration: 0.6S;
}

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


/* ◆◆◆ セクションの最初に使う木目背景の小さいテキスト ◆◆◆ */
.section__label {
	font-size: 90%;
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/wood.webp);
	letter-spacing: 1px;
	padding: 0.2em 0.5em;
	margin-bottom: 0;
}
/* ◆◆◆ /セクションの最初に使う木目背景の小さいテキスト ◆◆◆ */


/* ◆◆◆ プロスポーツ選手も ◆◆◆ */
.support__box {
    position: relative;
    font-weight: 600;
    background: #EBF6FF;
}

.support__box:before {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/support-top.webp);
	background-size: 100% 100%;
	width: 100%;
	height: 3em;
	top: -3em;
	left: 0;
}

.support h2 {
	position: relative;
	font-size: clamp(1.3rem, 2.2vw, 1.8rem);
	letter-spacing: 2px;
	text-align: center;
	line-height: 1.6;
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reason-ttl-bg.webp);
	background-size:90% 100%;
	background-repeat: no-repeat;
	background-position: center;
	padding: 2em 0 1.2em;
	margin-bottom: 3.5em;
}

.support h2:after {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/arrow.webp);
	background-size: cover;
	width: 0.3em;
	height: 1.8em;
	bottom: -2.8em;
	left: 50%;
	z-index: 1;
}

.support h2 span {
	color: var(--orange);
}

.support__box-text1 {
	text-align: center;
	padding-bottom: 2em;
	margin: 0 auto;
	position: relative;
	padding: 1em 4em 3em;
}

.support__box-text1 p {
	font-size: clamp(1.5rem, 2.8vw, 2.4rem);
	text-align: center;
	display: inline-block;
	padding-inline: 0.5em;
	margin-bottom: 0;
}

.support__box-text-small {
	font-size: 80%;
}

.support__box figure {
	padding-bottom: 7em;
}

.support__box-text2 {
	position: absolute;
	left: 5%;
	bottom: 0
}

.support__box-text2 p {
	font-size: clamp(1.5rem, 2.8vw, 2.4rem);
}

.support__pro {
	color: white;
	background: #477CB2;
	display: inline-block;
	border-radius: 3em;
	padding-inline: 0.6em;
	margin-bottom: 0.5em;
}

p.support__pro {
	font-size: clamp(1rem, 1.8vw, 1.4rem);
}
/* ◆◆◆ /プロスポーツ選手も ◆◆◆ */

/* ◆◆◆ メディア掲載 ◆◆◆ */
.media__title {
	position: relative;
}

.media__title h2 {
	position: absolute;
	font-size: clamp(1.2rem, 2.3vw, 1.9rem);
	bottom: 0.2em;
	padding-left:26%;
}

.media__title h2 span {
	color: var(--red);
		font-size: 120%;
}


/*スライド*/

.media-slid {
  max-width: 600px;
  position: relative;
  margin: 0 auto;
}

figure.image-wrapper {
	
}

.swipe-arrow img {
	width: 30%;
	padding-top: 1em;
	margin: 0 auto;
}

.swiper {
  width: 100%;
  max-width: 550px;
  margin: 0 auto;
}

.swiper-wrapper {
    transition: transform 0.5s ease-in-out;
}

.swiper-slide {
  line-height: 0;
  flex: 0 0 100%;
	font-size: 0;
}

.swiper-slide figure {
  margin: 0;
  padding: 0;
	padding-inline: 25%;
}

.swiper-slide img {
  /*width: 100%;
  height: auto;
  display: block;*/
	vertical-align: top;
}

.image-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  /*padding: 0;
  margin: 0;*/
}

.image-wrapper img {
  width: 100%;
  height: auto;
  display: block;
}

.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 7rem;
  cursor: pointer;
  z-index: 10;
  transition: 0.6s;
}

.swiper-button-prev:hover, .swiper-button-next:hover {
  opacity: 0.7;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  display: none;
}

/* ◆◆◆ /メディア掲載 ◆◆◆ */


/* ◆◆◆ 理由 ◆◆◆ */
.reason {
	margin-top: 1em;
}

.reason__title {
	position: relative;
	text-align: center;
}

.reason__title h2 {
	position: absolute;
	color: var(--brown);
	width: 100%;
	bottom: 0.8em;
	left: 50%;
	transform: translatex(-50%);
	padding-bottom: 0;
}

.gradient__orange {
    background: -webkit-linear-gradient(top, #FFC20E, #ea5506);
    background: -moz-linear-gradient(top, #FFC20E, #ea5506);
    background: -o-linear-gradient(top, #FFC20E, #ea5506);
    background: linear-gradient(to bottom, #FFC20E, #ea5506);
    /* テキストクリップ */
    -webkit-background-clip: text;
    -moz-background-clip: text;
    background-clip: text;
    /* テキスト色透明化 */
    -webkit-text-fill-color: transparent;
    -moz-text-fill-color: transparent;
    color: transparent;
}

ul.reason__items {
	display: flex;
	flex-wrap: wrap;
	gap: 0.7em;
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reason-bg3.webp);
	background-size: 100% 100%;
	counter-reset: reason;
	list-style: none;
	padding: 2em 1.8em 3.5em;
	margin: 0;
}

li.reason__item {
	position: relative;
	flex: 0 0 calc((100% - 0.7em) / 2);
	box-sizing: border-box;
	border-top: solid 7px var(--dark-green);
	border-bottom: solid 7px var(--dark-green);
	background: white;
	box-shadow: 2px 2px 4px #c8c2be;
	padding: 2em 1em 1em;
	margin-bottom: 2em;
}

li.reason__item:before {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reason-tub.webp);
	background-size: cover;
	width: 5em;
	height: 4.4em;
	top: -2.3em;
	left: 50%;
	transform: translatex(-50%);
}

li.reason__item h3 {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--dark-green);
	font-size: clamp(0.8rem, 1.5vw, 1.2rem);
	text-align: center;
	height: 3.5em;
	background-image: repeating-linear-gradient(90deg, #76a959, #76a959 3px, transparent 3px, transparent 7px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 100% 3px;
	padding-bottom: 1em;
	margin-top: 0;
}

li.reason__item:after {
	position: absolute;
	content: counter(reason, decimal-leading-zero);
	counter-increment: reason;
	color: var(--dark-green);
	font-size: clamp(1.3rem, 2.4vw, 2rem);
	top: -0.8em;
	left: 50%;
	transform: translatex(-50%);
}

li.reason__item figure {
	padding-block: 0.8em;
}

.reason__item p {
	font-size: clamp(0.8rem, 1.5vw, 1.1rem);
	line-height: 1.5;
	margin-bottom: 0;
}

.reason__message {
	position: relative;
}

.reason__message p {
	position: absolute;
	font-size: clamp(1.2rem, 2vw, 1.7rem);
	font-weight: 600;
	line-height: 1.5;
	width: 100%;
	text-align: center;
	bottom: 1.2em;
}
/* ◆◆◆ /理由 ◆◆◆ */


/* ◆◆◆ さらに嬉しいポイント ◆◆◆ */
.point__inner {
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp);
	background-size: 100%;
	background-repeat: no-repeat;
	padding-top: 2em;
}

.point__inner img:last-child {
	width: 95%;
	padding: 0.4em 0 0 28%;
}

.title__green {
	text-align: center;
	margin-bottom: 2em;
}
.title__green h2 {
	font-size: clamp(1.6rem, 2.8vw, 2.4rem);
	color: white;
	text-shadow: 2px 2px 6px #69821b;
	display: inline-block;
	background: var(--green);
	padding: 0.3em 1em;
	min-width: 8em;
}
/* ◆◆◆ さらに嬉しいポイント ◆◆◆ */

/* ◆◆◆ お悩み ◆◆◆ */
.problem {
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/ploblem-bg.webp) no-repeat top/cover;
	padding: 6em 0 1.5em;
}

.problem__inner {}

h2.problem__title {
	font-size: clamp(2rem, 3.8vw, 3.4rem);
	color: white;
	letter-spacing: 3px;
	text-align: center;
	text-shadow: 2px 2px 4px gray;
}

h2.problem__title span {
	text-emphasis: "●";
	-webkit-text-emphasis: "●";
	font-size: 1em;
}

p.problem__message {
	text-align: center;
	font-size: clamp(1rem, 2.4vw, 1.8rem);
	font-weight: 600;
	line-height: 1.5;
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/problem-parts.webp) no-repeat center/100% 100%;
	padding: 2em 1em 1.4em;
	margin-bottom: 0;
}

/* ◆◆◆ /お悩み ◆◆◆ */


/* ◆◆◆ 喜びの声 ◆◆◆ */

.voice {
	position: relative;
	z-index: 1
}

.voice__inner {
	background: var(--ivory) url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-top: 3em;
}

.voice:after {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/voice-bg-after.webp);
	background-size: 100% 100%;
	width: 100%;
	height: 3em;
	left: 0;
	bottom: -3em;
}

.voice .title__green {
	position: relative;
	margin-bottom: 1.2em;
}

.voice .title__green:before {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/cracker-1.webp)no-repeat top/100%;
	width: 100%;height: 6em;top: -1em;left: 50%;transform: translatex(-50%);
	bottom: -7em;
}

p.voice__sub-title {
	position: relative;
	text-align: center;
	font-size: clamp(1.5rem, 2.4vw, 2rem);
	font-weight: 600;
	line-height: 1.3;
	margin-bottom: 0.6em;
}


p.voice__sub-title span {
	font-size: 120%;
}

p.voice__sub-title span:first-child {
	color: var(--red);
}

p.voice__sub-title span:last-child {
	color: var(--orange);
}

ul.voice__items {
	list-style: none;
	padding: 0;
	margin: 0;
}

li.voice__item {
	background: white;
	border: solid 4px var(--orange);
	border-radius: 2em;
	box-shadow: 2px 2px 6px #d3cbc6;
	padding: 2.6rem 2.6rem 0.6rem 2.6rem;
	margin-bottom: 2rem;
}

li.voice__item:last-child {
	margin-bottom: 0;
}

figure.voice__item-img {
	margin: 0 0 1.4em;
}

p.voice__item-meta {
	text-align: center;
	font-size: clamp(1rem, 1.7vw, 1.3rem);
	font-weight: 600;
	margin: 0 0 0.6em;
}

p.voice__item-meta span {
	color: white;
	border-radius: 3em;
	background: var(--orange);
	padding: 0.4em 1em;
}

p.voice__item-text {
	font-size: clamp(1rem, 1.6vw, 1.3rem);
	line-height: 2;
	text-align: justify;
	margin-bottom: 0;
}

.voice__item-text {
  background-image: 
    linear-gradient(90deg,transparent 0%,transparent 50%,white 50%,white 100%),
    linear-gradient(180deg,transparent 0%,transparent 97.5%,#a99e93 100%); 
	background-size: 8px 100%, 100% 2em;
	background-repeat: repeat;
	line-height: 2em; 
	padding-bottom: 0.4em;
}

p.voice__item-note {
	font-size: 80%;
	color: gray;
	text-align: right;
	margin-bottom: 1em;
}

.voice__list-note {
	font-size: 80%;
	text-align: right;
	padding-right: 0.3em;
	margin: 1em 0 0;
}

/* ◆◆◆ /喜びの声 ◆◆◆ */



/* ◆◆◆ 各症状 ◆◆◆ */
.menu__inner {
	background: white url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-block: 3em 2em;
}

.menu__sub-title, .cause__sub-title, .method__sub-title, .solution__sub-title, .access__sub-title {
	font-size: clamp(1.6rem, 2.2vw, 2rem);
	font-weight: 600;
	text-align: center;
	line-height: 1.4;
}

.menu__sub-title span, .cause__sub-title span, .method__sub-title span, .solution__sub-title span {
	color: #EA5514;
	font-size: 120%;
}

ul.menu__items {
	display: flex;
	gap: 1.5em;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
}

li.menu__item {
	flex: 0 0 calc((100% - 1.5em) / 2);
	box-sizing: border-box;
	text-align: center;
	background: var(--ivory);
	border-radius: 1.5em;
	border: solid 5px var(--orange);
	box-shadow: 2px 2px 6px #c8c2be;
	padding:0.6em;
	margin: 0;
}

li.menu__item h3 {
	font-size: clamp(0.8rem, 1.8vw, 1.4rem);
	color: white;
	background: var(--orange);
	border-radius: 2em;
	padding: 0.2em;
	margin-top: 0.6em;
}

li.menu__item figure {
	margin-bottom: 0;
}
/* ◆◆◆ /各症状 ◆◆◆ */


/* ◆◆◆ 痛みの原因 ◆◆◆ */
.cause__inner {
	position: relative;
	background: var(--ivory) url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-block: 3em 2em;
}

.cause__inner:after {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/voice-bg-after.webp);
	background-size: 100% 100%;
	width: 100%;
	height: 3em;
	left: 0;
	bottom: -3em;
	z-index: 1;
}

.cause__item {
	position: relative;
	margin-bottom: 2em
}

.cause__items .cause__item:nth-child(1) figure {
	padding-right: 30%;
}

.cause__items .cause__item:nth-child(2) figure {
	padding-left: 30%;
}

.cause__items .cause__item p {
	position: absolute;
	font-size: clamp(1.2rem, 2.4vw, 2rem);
	color: white;
	font-weight: 600;
	text-align: center;
	background: var(--orange);
	width: 50%;
	padding: 1.5em 0;
	top: 50%;
	transform: translatey(-50%);
}

.cause__items .cause__item:nth-child(1) p {
    right: 0; 
}

.cause__items .cause__item:nth-child(2) p {
    left: 0;
}

.cause-but, .method-but {
	position: relative;
	background: white;
	padding-block: 5em 2em;
}

.cause-but__fukidashi, .method-but__fukidashi {
	position: absolute;
	top: -1em;
	left: 50%;
	transform: translatex(-50%);
	z-index: 2;
}

.cause-but__fukidashi p, .method-but__fukidashi p {
	position: relative;
	font-size: clamp(1rem, 2vw, 1.6rem);
	color: white;
	font-weight: 600;
	text-align: center;
	border-radius: 50%;
	display: inline-block;
	background: var(--brown);
	padding: 1.5em 1em;
}

.cause-but__fukidashi p:after, .method-but__fukidashi p:after {
	position: absolute;
	content: "";
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	background: var(--brown);
	width: 1.3em;
		height: 1em;
	left: 50%;
	bottom: -0.6em;
	transform: translatex(-50%);
	z-index: 3;
}

.cause-but__text, .method-but__text, .flow__text {
	font-size: clamp(1.4rem, 2.6vw, 2.2rem);
	font-weight: 600;
	letter-spacing: 2px;
	text-align: center;
	line-height: 1.4;
	padding-top: 1.7em;
}

.cause-but__text span, .method-but__text span, .flow__text span {
	color: var(--orange);
}
/* ◆◆◆ /痛みの原因 ◆◆◆ */


/* ◆◆◆ 当院での改善方法 ◆◆◆ */
.method__inner {
	position: relative;
	background: white url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-block: 3em 2em;
}

.method__inner:after {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/12/method-bg-after.webp);
	background-size: 100% 100%;
	width: 100%;
	height: 3em;
	left: 0;
	bottom: -3em;
	z-index: 1;
}

ul.method__items {
	list-style: none;
	counter-reset: method;
	padding: 0;
}

li.method__item {
	position: relative;
	background: var(--ivory);
	box-shadow: 2px 2px 4px #c8c2be;
	border-radius:2em;
	padding: 2em 1.5em;
	margin-bottom: 2em;
}

li.method__item h3 {
	color: var(--orange);
	font-size: clamp(1.5rem, 2.1vw, 1.7rem);
	text-align: center;
}

li.method__item:before {
	position: absolute;
	content:"POINT " counter(method, decimal-leading-zero);
	counter-increment: method;
	font-size: clamp(2.1rem, 3.4vw, 3rem);
	font-weight: 400;
	color:rgba(243,152,0,0.25);
	top: 0;
	left: 0.6em;
}

li.method__item:after {
	position: absolute;
	content: "";
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	background:rgba(243,152,0,0.25);
	width: 48%;
	height: 0.1em;
	top: 3.7em;
	left: 0;
}

li.method__item figure {
	padding-block: 1em
}

li.method__item p {
	text-align: justify;
	margin-bottom:0;
}

li.method__item p span {
	color: var(--orange);
	font-weight: 600;
}

.method-but {
	background: var(--ivory);
}
/* ◆◆◆ /当院での改善方法 ◆◆◆ */


/* ◆◆◆ 根本解決したい方は当院 ◆◆◆ */
.solution__inner {
	position: relative;
	background: white url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-block: 3em 2em;
}

.solution__inner figure {
	margin-top: -8em;
}
/* ◆◆◆ /根本解決したい方は当院 ◆◆◆ */


/* ◆◆◆ 流れ ◆◆◆ */
.flow__inner {
	background: var(--ivory) url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-block: 3em 2em;
}

ul.flow__items {
	display: flex;
	gap: 1em;
	flex-wrap: wrap;
	list-style: none;
	counter-reset: flow;
	padding: 0;
}

li.flow__item {
	position: relative;
	flex: 0 0 calc((100% - 1em) / 2);
	box-sizing: border-box;
	text-align: center;
	background: white;
	border-radius: 0 0 1em 1em;
	border-top: solid 0.6em var(--green);
	box-shadow: 2px 2px 6px #c8c2be;
	padding:1em;
	margin-block: 2em 0;
}

li.flow__item:before {
	position: absolute;
	content: "";
	background: url(https://atlas-group24.com/lp/wp-content/uploads/2025/12/flow-before.png) no-repeat top/cover;
	width: 3em;
	height: 2.5em;
	top: -3em;
	left: 0;
}

li.flow__item:after{
	position: absolute;
	content:counter(flow, decimal-leading-zero);
	counter-increment:flow;
	color: white;
	font-size: clamp(1.2rem,2.4vw,2rem);
	font-weight: 600;
	letter-spacing: 2px;
	top: -1.8em;
	left: 0.45em;
}

li.flow__item h3 {
	font-size: clamp(1rem, 1.8vw, 1.4rem);
	color: var(--green);
	border-bottom: solid 1px;
	padding-block: 0 0.8em;
	margin-block: 0.2em;
}

li.flow__item:nth-child(n+3):nth-child(-n+6) h3 {
	height: 4em;
	display: flex;
    align-items: center;
	justify-content: center;
}

li.flow__item figure {
	padding-block: 1em;
}

li.flow__item p {
	font-size: clamp(0.8rem, 1.5vw, 1.1rem);
	line-height: 1.5;
	text-align: justify;
	letter-spacing: 0;
	line-height: 1.6;
	margin-bottom: 0;
}
/* ◆◆◆ /流れ ◆◆◆ */


/* ◆◆◆ アクセス ◆◆◆ */
.access {
	margin-bottom: 0;
}

.access__inner {
	background: white url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-top: 3em;
}

table.access__table {
	border: none;
}

.access figure {
	padding-inline: 20%;
	margin-bottom: 2em;
}

table.access__table tr {
	border-top: dashed 1px var(--green);
}

table.access__table td {
	line-height: 1.4;
	color: var(--brown);
}

table.access__table th {
	text-align: center;
	color: var(--green);
	letter-spacing: 3px;
	background: white;
	height: 4em;
	width: 30%;
}

table.access__table th, table.access__table td {
	font-size: clamp(1rem, 1.8vw, 1.4rem);
	vertical-align: middle;
	border: none;
}
/* ◆◆◆ /アクセス ◆◆◆ */


/* ◆◆◆ よくある質問 ◆◆◆ */
.qa {
	padding-block: ;
}

.qa__inner {
	background: var(--ivory) url(https://atlas-group24.com/lp/wp-content/uploads/2025/11/reaf-bg.webp) no-repeat top/100%;
	padding-block: 3em 2em;
}

.qa-list__box {
	padding: 1.4em 1.6em;
    position: relative;
	line-height: 1.5;
	text-align: justify;
	border: solid 1px var(--brown);
	border-radius: 1.3em;
	background: white;
	margin-bottom: 1em;
}

.qa-list__box dt {
	color: var(--green);
	font-size: clamp(1.2rem, 2vw, 1.8rem);font-weight: 600;
	border-bottom: solid 1px var(--brown);
	padding-left: 1.8em;
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
}

.qa-list__box dd {
	font-size: clamp(1rem, 1.6vw, 1.2rem);
	color: var(--brown);
	padding-left: 2.3em;
}

.qa-list__box dt, .qa-list__box dd {
	position: relative;
}

.qa-list__box dt:before, .qa-list__box dd:before {
    position: absolute;
	font-size: clamp(1.5rem, 2.8vw, 2.4rem);
	font-weight: 400;
	top: -0.3em;
	left: 0;
}

.qa-list__box dt:before {
	content: "Q.";
}

.qa-list__box dd:before {
	content: "A.";
}
/* ◆◆◆ /よくある質問 ◆◆◆ */

@media (max-width: 768px) {

}






/* ◆◆◆ 流れ-01 文章あり縦並び ◆◆◆ */
.flow__01 {
	background: linear-gradient(to bottom, #f8f4e6, #f2f2c2);
	padding-block: 3em;
	margin-top: 1em;
}

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

.flow__01 .flow__inner {}

.flow__01 ul.flow__items {
	counter-reset: flow;
	list-style: none;
	padding: 0;
	margin: 0;
}

.flow__01 li.flow__item {
	background: white;
	padding: 2em 1.5em 0.5em;
	margin-bottom: 2em;
}

.flow__01 li.flow__item:last-of-type {
	margin-bottom: 0;
}

.flow__01 li.flow__item:after {
	content:'';
    display: block; 
	clear: both;
}

.flow__01 li.flow__item h3 {
		margin-top: 0;
}

.flow__01 li.flow__item h3:before {
	content: "流れ" counter(flow, decimal-leading-zero);
	counter-increment: flow;
	color: #89c3eb;
	font-size: clamp(1.6rem, 2.4vw, 2rem);
}

.flow__01 li.flow__item figure {
	width: 40%;
	float: right;
	padding-left: 1em;
	margin-top: 0.4em;
}

/* ◆◆◆ /流れ-01 文章あり縦並び ◆◆◆ */


/* ◆◆◆ 流れ-02 文章あり縦並び ◆◆◆ */
.flow__02 {
	background: linear-gradient(to bottom, #f8f4e6, #f2f2c2);
	padding-top: 3em;
	padding-bottom: 0.4em;
	margin-top: 1em;
}

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

.flow__02 .flow__inner {}

.flow__02 ul.flow__items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	counter-reset: flow;
	list-style: none;
	padding: 0;
	margin: 0;
}

.flow__02 li.flow__item {
	width: 33.3%;
	padding-inline: 1%;
	margin-bottom: 2.6em;
}

.flow__02 li.flow__item h3 {
	position: relative;
	font-size: clamp(0.8rem,1.5vw,1.2rem);
	text-align: center;
	line-height: 1.5;
	margin: 0;
}

.flow__02 li.flow__item h3:before {
	position: absolute;
	content: counter(flow, decimal-leading-zero);
	counter-increment: flow;
	color: #89c3eb;
	font-size: clamp(1.6rem, 2.4vw, 2rem);
	top: -1.3em;
	left: 50%;
	transform: translateX(-50%);
}

.flow__02 li.flow__item figure {
	width: 100%;
	margin: 0;
}

.flow__02 li.flow__item p {}
/* ◆◆◆ /流れ-02 文章あり縦並び ◆◆◆ */




/* ◆◆◆ フッターボタン ◆◆◆ */
/*固定ページだとフッターに隠れる件の調整*/
.l-content {z-index: 1;}
/*/固定ページだとフッターに隠れる件の調整*/

.footer__contact {
	position: fixed;
	bottom: 0.5em;
	right: 1em;
	width: 400px;
	z-index: 10;
}

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

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

/*2つの場合*/
.footer__contact-btn2 {}
.footer__btn2-item img {
	display:block; 
}

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

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


/* ◆◆◆ フッター ◆◆◆ */
.l-footer__foot {
	background: var(--green);
}

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


/* ◆◆◆ cf7 ◆◆◆ */
.contact__form {
	background: ivory;
	padding: 3em 5em;
	width: 100%;
}

.contact__form p {
	margin-bottom: 0!important;
}

.contact__form-item {
	margin-bottom: 2em;
}

.contact__label-required, .contact__label-any  {
	font-size: 75%;
	color: white;
	padding: 3px 6px 2px;
	border-radius: 1rem;
	margin-right: 0.5em;
}

/*必須ラベル*/
.contact__label-required {
	background: brown;
}

/*任意ラベル*/
.contact__label-any {
	background:gray;
}

.contact__consent {
	margin: 3em 0;
}

.contact__consent ul {
	line-height: 1.6;
}

.contact__consent ul li {
	font-size: clamp(0.7rem, 1.2vw, 1rem);
}

.contact__consent p {
	font-size: 94%;
}

.contact__personal-info {
	margin: 0;
	padding: 0;
	border: solid 2px #e9e9e9;
	border-radius: 0.5rem;
	padding: 1em;
	line-height: 1.3;
	overflow: auto;
	text-align: left;
	height: 10rem;
}

.wpcf7-submit {
	background: orange;
	border-radius: 0.5rem;
	padding: 1em 2em;
	margin-top: 3em;
	transition: 0.6s;
}

.wpcf7-submit:hover {
	opacity: 0.7;
	box-shadow: 2px 2px 2px gray;
}

textarea, input {
	background: white;
	width: 100%;
	box-shadow: 0 0 2px #c8c2c6;
}

span.wpcf7-list-item-label {
	font-size: clamp(0.9rem, 1.4vw, 1.2rem);
}

.contact__consent-check input {
	width: 2rem;
}
/* ◆◆◆ /cf7 ◆◆◆ */

/* ◆◆◆ ポップアップバナー ◆◆◆ */
/* ポップアップ外側（黒背景） */
.popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

/* ポップアップを画面中央に配置する枠 */
.popup__inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 500px;
}

/* ボタン配置の基準点 */
.popup__content-box {
    position: relative; 
    width: 100%;
}

.popup__bg img {
    width: 100%;
    height: auto;
    display: block;
}

/* ★ボタンを画像の上に重ねる（.offer__btn の設定を移植） */
.popup__btn {
    position: absolute;
    width: 70%;       /* offerと同じ */
    bottom: 3.3em;    /* offerと同じ */
    left: 50%;
    transform: translateX(-50%);
    transition: 0.6s;
}

.popup__btn:hover {
    transform: translateX(-50%) scale(1.05);
}

.popup__content-box {
    position: relative;
}

/* バツボタンのデザイン */
.popup__close {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 40px;
    height: 40px;
	background: rgba(0,0,0,0.7);
    color: #fff;
    border: 2px solid #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 24px;
    font-weight: bold;
	padding-bottom: 0.1em;
    z-index: 100;
    line-height: 1;
}


@media (max-width: 768px) {
    .popup__inner {
		width: 95%;
	}
    .popup__btn {
		bottom: 2em;
	}
	.popup__close {
        top: -7px;
        right: -7px;
    }
}
/* ◆◆◆ /ポップアップバナー ◆◆◆ */





/* ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ */
/* ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ TB ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ */
/* ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ */



@media (max-width: 1024px) {

}



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

@media (max-width: 768px) {
	
	/* ◆◆◆ 問い合わせボタン ◆◆◆ */
	.contact__btn {
		margin-block: 0.5em;
	}
	/* ◆◆◆ /問い合わせボタン ◆◆◆ */
	
	/* ◆◆◆ プロスポーツ選手も ◆◆◆ */
	.support h2 {
		line-height: 1.6;
		background-size:94% 100%;
		padding: 1.6em 0 0.9em;
	}

	.support h2:after {
		bottom: -2.4em;
	}

	.support__box-text1 {
		padding: 1em 3em 2em;
	}

	.support__box-text1 p {
		font-size: clamp(1.5rem, 2.8vw, 2.4rem);
		text-align: center;
		display: inline-block;
		padding-inline: 0.5em;
		margin-bottom: 0;
	}
	/* ◆◆◆ /プロスポーツ選手も ◆◆◆ */
	
	
	/* ◆◆◆ メディア掲載 ◆◆◆ */
	.media__title h2 {
		bottom: 0.8em;
	}
	
	.swiper-slide figure {
		padding-inline: 15%;
	}
	/* ◆◆◆ /メディア掲載 ◆◆◆ */	
	
	/* ◆◆◆ 理由 ◆◆◆ */
	.reason__title h2 {
		bottom: 0.3em;
	}

	ul.reason__items {
		gap: 0.4em;
		padding: 2em 1.2em;
	}

	li.reason__item {
			box-shadow: 2px 2px 4px #c8c2be;
			padding: 1.5em 0.5em 1em;
	}

	li.reason__item:before {
		width: 4em;
		height: 3.4em;
		top: -2em;
	}

	li.reason__item h3 {
		height: 3em;
		padding-bottom: 0.5em;
	}

	li.reason__item:after {
		top: -0.9em;
	}

	li.reason__item figure {
		padding-block: 0.8em;
	}

	.reason__item p {
		line-height: 1.5;
		margin-bottom: 0;
	}
	
	.reason__message p {
		bottom: 0.5em;
	}
	/* ◆◆◆ /理由 ◆◆◆ */
	
	
	/* ◆◆◆ お悩み ◆◆◆ */
	.problem {
		margin-top: 0;
	}
	
	ul.problem__items {
		padding: 0;
	}
	
	.problem__items li:before {
		width: 1.4rem;
		height: 1.4rem;
		top: 0.3rem;
		left: 0.5rem;
	}
	/* ◆◆◆ /お悩み ◆◆◆ */
	
	
	/* ◆◆◆ 喜びの声 ◆◆◆ */
	.voice {
	}
	
	li.voice__item {
		padding: 1.5em 1.5em 0.6em 1.5em;
	}

	figure.voice__item-img {
		width: 100%;
		padding: 0;
	}

	p.voice__item-text {}
	/* ◆◆◆ /喜びの声 ◆◆◆ */
	
	/* ◆◆◆ 各症状 ◆◆◆ */
	ul.menu__items {
		gap: 0.8em;
	}

	li.menu__item {
  		flex: 0 0 calc((100% - 0.8em) / 2);
		border: solid 3px var(--orange);
	}
	/* ◆◆◆ /各症状 ◆◆◆ */
	
	/* ◆◆◆ 痛みの原因 ◆◆◆ */
	.cause-but__text {
		padding-top: 1em;
	}
	/* ◆◆◆ /痛みの原因 ◆◆◆ */
	
	/* ◆◆◆ 当院での改善方法 ◆◆◆ */
	li.method__item {
		padding: 1em 1.5em;
		margin-bottom: 1em
	}
	
	li.method__item:after {
		top: 3.3em;
	}
	.method-but__text {
		padding-block: 0.6em;
		margin-bottom: 0;
	}
	/* ◆◆◆ /当院での改善方法 ◆◆◆ */
	
	/* ◆◆◆ 根本解決したい方は当院 ◆◆◆ */
	.solution__inner figure {
		margin-top: -5.5em;
	}
	/* ◆◆◆ /根本解決したい方は当院 ◆◆◆ */
	
	
	/* ◆◆◆ 流れ ◆◆◆ */
	ul.flow__items {
		gap: 0.5em;
	}

	li.flow__item {
		flex: 0 0 calc((100% - 0.5em) / 2);
		border-radius: 0 0 0.5em 0.5em;
		border-top: solid 0.5em var(--green);
		box-shadow: 2px 2px 6px #c8c2be;
		padding:0.6em;
	}

	li.flow__item:before {
		width: 2.4em;
		height: 2em;
		top: -2.4em;
	}

	li.flow__item:after{
		letter-spacing: 1px;
		top: -1.9em;
		left: 0.42em;
	}

	li.flow__item h3 {
		font-size: clamp(0.8rem, 1.8vw, 1.4rem);
		color: var(--green);
		border-bottom: solid 1px;
		padding-block: 0 0.8em;
		margin-block: 0.2em;
	}

	li.flow__item:nth-child(n+3):nth-child(-n+6) h3 {
		height: 4em;
		display: flex;
		align-items: center;
		justify-content: center;
	}


	li.flow__item figure {
		padding-block: 1em;
	}
	/* ◆◆◆ /流れ ◆◆◆ */
	
	
	/* ◆◆◆ よくある質問 ◆◆◆ */
	.qa {}

	.qa-list__box {
		padding: 1em;
		margin-bottom: 0.6em;
	}

	.qa-list__box dt {
		padding-left: 1.6em;
	}

	.qa-list__box dd {
		padding-left: 1.9em;
	}
	
	
	/* ◆◆◆ 流れ-01 文章あり縦並び ◆◆◆ */
	.flow__01 {
		margin-top: 0.5em;
	}

	.flow__01 li.flow__item {
		padding: 1.5em 1.5em 0.4em;
		margin-bottom: 2em;
	}

	.flow__01 li.flow__item figure {
		width: 100%;
		float: none;
		padding-left: 0;
		margin-top: 0.9em;
	}
	/* ◆◆◆ /流れ-01 文章あり縦並び ◆◆◆ */

	
	/* ◆◆◆ 流れ-02 文章あり縦並び ◆◆◆ */
	.flow__02 {
		margin-top: 0.5em;
	}

	.flow__02 li.flow__item {
		width: 50%;
		padding-inline: 2%;
		margin-bottom: 2em;
	}
	/* ◆◆◆ /流れ-02 文章あり縦並び ◆◆◆ */
	
	
	
	/* ◆◆◆ アクセス ◆◆◆ */
	.access {
		padding-bottom: 0;
	}

	.access figure {
		padding-inline: 10%;
		margin-bottom: 2em;
	}

	table.access__table td {
		line-height: 1.5;
		padding-top: 0!important;
	}

	table.access__table th {
		height: auto;
		padding-bottom: 0!important;
	}
	.access {
		margin-top: 0.5em;
	}
	
	table.access__table th, table.access__table td {
		text-align: center;
		display: block;
		width: 100%;
	}
	/* ◆◆◆ /アクセス ◆◆◆ */
	
	
	/* ◆◆◆ フッターボタン ◆◆◆ */
	.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.1em;
		margin-bottom: 0;
	}
	/* ◆◆◆ フッターボタン ◆◆◆ */
	
	.entry_title {
		padding-inline: 5%;
	}

	
	
	/* ◆◆◆ cf7 ◆◆◆ */
	.contact__form {
		padding: 2em 5%;
	}

	.contact__form-item {
		margin-bottom: 1em;
	}

	.contact__consent {
		margin: 2em 0;
	}

	.wpcf7-submit {
		margin-top: 2em;
	}

	.contact__consent-check input {
		width: 1.2em;
	}
	/* ◆◆◆ /cf7 ◆◆◆ */
	
}


/* AOS フェードイン初期状態の強制指定 */
[data-aos] {
    opacity: 0;
    transition-property: opacity, transform;
    transition-duration: 1.2s;
    transition-timing-function: ease-out-cubic;
}

[data-aos].aos-animate {
    opacity: 1;
    transform: none;
}

[data-aos="fade-up"] {
    transform: translateY(30px);
}

[data-aos="fade-up"].aos-animate {
    transform: translateY(0);
}
