:root {
	--red: #b7282e;
	--pink: #e7609e;
	--blue: #007bbb;	
	--yellow: #ffd900;
	--black: #444444;
	--gothic: 'Helvetica Neue', '游ゴシック体', YuGothic, 'メイリオ', Meiryo, sans-serif;
	--mincho: '游明朝体', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', serif;
}

body{
	font-family:"Noto Sans JP", sans-serif;
}

/* ◆◆◆ 枠外背景 ◆◆◆ */
@media (min-width: 769px) {
	.l-wrapper {
		overflow: hidden;
		background-image:url(http://xs986046.xsrv.jp/arkhe_hp/wp-content/uploads/2025/07/bk.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 {
	margin-bottom: 2rem;
}
.section__title{
	background:var(--ark-color--main);
    padding: 40px 0;
    text-align: center;
    color: #FFF;
    line-height: 1.4;
	text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
}

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


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

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

.text__bold{
	font-weight:bold;
}

.text__main{
	color:var(--ark-color--main);
}

.text__normal{
	font-weight:normal;
	color:var(--ark-color--text);
}
/* ◆◆◆ /文字色 ◆◆◆ */


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

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

/* ◆◆◆ /共通 ◆◆◆ */

.inner {
    padding: 0 30px;
}

ul{
	list-style:none;
}

a>img:hover{
	transition:0.3s;
    opacity:0.7;
}
/* ◆◆◆ /共通 ◆◆◆ */


/* ◆◆◆ ヘッダー ◆◆◆ */

.header__h1-item {
    background: var(--ark-color--main);
}

.bo-header__right-box-info p { /*診療時間など文字数に合わせて調整*/
	font-size: 1.1rem;
}

.bo-header__site-title {
    width:auto;
}

.bo-header__right-box {
    width:auto;
}

.bo-header__right-box {
    padding-left: 2%;
}

.bo-header__right-box-inner {
    display: flex;
    align-items: center;
    gap: 1em;
}

.bo-header__right-box-contact {
    width: 40%;
	flex-direction: column;
	gap:10px;
}
.bo-header__right-box-table {
    width: 60%;
}

header {
    border-bottom: 2px solid var(--ark-color--main);
}
/* ◆◆◆ /ヘッダー ◆◆◆ */


/* ◆◆◆ グロナビ ◆◆◆ */
.l-headerUnder {
	background: ;
}

.l-headerUnder .c-gnav>.menu-item>a {
    padding: 16px;
}

.c-gnav .__mainText {
    font-size: 18px;
}
/* ◆◆◆ /グロナビ ◆◆◆ */


/* ◆◆◆ サイドバー ◆◆◆ */

.side__box, .widget_nav_menu {
    background: white;
    border: solid 1px #454545;
}

.c-widget__title.-side, .c-widget h3 {
    background: var(--ark-color--main);
    color: #FFF;
}

.widget_nav_menu .menu {
    border: none;
}

.widget_nav_menu li:before {
    content: "";
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 1em;
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 10px solid var(--ark-color--main);
}

.widget_nav_menu li a {
    font-size: 1.1rem;
    color: var(--ark-color--text);
    padding-left: 2em;
    font-weight: 500;
}
.widget_nav_menu li:after {
	display:none;
}

.widget_nav_menu li{
    border-bottom: none !important;
}

.widget_nav_menu li + li {
    border-top: solid 1px #65482B;
}

.menu-item-has-children>.c-gnav__a::after {
    content: "";
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -4px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 13px solid var(--ark-color--main);
}

.l-headerUnder .c-gnav>.menu-item>a {
    font-weight:bold;
}
/*サイドバー　アクセス*/
h4.side__box-name {
	color: brown;
	font-size: 1.4rem;
	margin-block: 0.5em;
}

.side__box-block {
    margin-top: 1.0rem;
}

.side__box-block img{
	width:80%;
}

.side__box-topic {
	text-align: center;
    color: white;
    display: inline-block;
    background: var(--ark-color--main);
    border-radius: 12px;
    padding-inline: 1em;
    margin-bottom: 0.2em;
    font-weight: bold;
    font-size: 15px;
    width: 108px;
}

.side__box-content {
    font-size: 1.0rem;
    margin-bottom: 0;
}

.side__box-content span{
	font-size:0.9rem;
}

.side__box-block iframe{
	margin-top:1rem;
}

.side__box h4 {
	color: var(--black);
	font-size: 1.2rem;
	margin-bottom: 0.3em;
}

.side__box-address {
	font-size:1.1rem;
	margin-bottom: 0.5em;
}

.side__box-reserve {
	color: white;
	display: inline-block;
	background: orange;
	border-radius: 0.4rem;
	padding-inline: 1em;
	margin-block: 0.5em;
}

.side__box dt, .side__box dd {
	font-size: 1.1rem;
}

.side__box dt {
	font-weight: 600;
	color: gray;
}

.side__contact__btn {
	margin-bottom: 0.2em;
	transition: 0.6s;
}

.side__contact__btn:last-of-type {
	margin-bottom: 0;
}

.side__contact__btn:hover {
	opacity: 0.6;
}
/* ◆◆◆ /サイドバー ◆◆◆ */


/* ◆◆◆ FV ◆◆◆ */

.fv__top figure {
    max-width: 1200px;
}

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


/* ◆◆◆ オファー ◆◆◆ */



.offer {
	margin-top: 2em;
	padding-top:1em;
	padding-bottom:4em;
}

.offer figure {
	margin: 0 0 3em 0;
}

.offer__btn{
	display:flex;
	gap:10px;
}

.offer__btn a{
	width:calc((100% - 10px)/2);
}

section + .offer{
	margin-top:0;
	padding:0;
	padding-bottom:2em;
}

/* ◆◆◆ /オファー ◆◆◆ */


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

.contact__btn {
	margin-bottom: 2em;
	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: 0;
	margin-bottom:60px;
}

.problem__inner {
	background-image: linear-gradient(rgba(0, 0, 0, 0.25)), url(https://seitai-apar.net/wp-content/uploads/2025/11/jiritsu-img.webp);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 48px 30px;
}

.problem__list{
	padding-left: 0;
    list-style: none;
    margin: 0 10px;
}

.problem__list li{
	margin: 0;
    position: relative;
    padding-left: 50px;
    margin-bottom: 16.5px;
    font-weight: 600;
    font-size: clamp(20px, 2vw, 25px);
    color: #FFF;
    font-family: "Hiragino Kaku Gothic ProN", sans-serif;
    text-shadow: 1px 2px 2px #000;
    border-bottom: 2px solid #FFF;
	line-height:1.5;
}

.problem__list li span{
	color: #FFF81F;
}

.problem__list li::before{
	content: '';
    width: 28px;
    height: 28px;
    border: 2px solid #FFF;
    background-color: transparent;
    border-radius: 4px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.problem__list li ::after{
	content: '';
    border: solid #FFF;
    border-width: 0 3px 4px 0;
    height: 17px;
    width: 9px;
    position: absolute;
    top: 50%;
    left: 9px;
    transform: translateY(-50%) rotate(45deg);
}


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


/* ◆◆◆ 喜びの声 ◆◆◆ */
.voice {
	margin-top:0;
}

.voice__archives{
	padding:4em 0;
}

.voice__archives ul{
	list-style:none;
	display:flex;
	gap:10px;
	flex-wrap:wrap;
	padding:0;
	justify-content:center;
}

.voice__archives li{
	background:#FFF;
	padding:6px;
	margin:0;
	width:calc((100% - 20px)/3);
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
}

.voice__archives li img{
	display:block;
}

.voice__archives-text {
    text-align: center; /* Pタグの中身を中央揃え */
    padding: 0 40px; /* 左右の斜線のための余白 */
    position: relative; /* 擬似要素の位置の基準 */
    width: fit-content; /* 内容の幅に合わせる */
    margin: 30px auto; /* コンテナをページ中央に配置 */
}

.voice__archives p{
	font-size: clamp(1.9em, 2.5vw, 2.5em);
	font-weight:bold;
	text-align:center;
	line-height:1.4;
	margin:10px 0;
	display: inline-block;
}

.voice__archives p span{
	font-size:1.1em;
	color:var(--ark-color--main);
}

.voice__archives-text::before,
.voice__archives-text::after {
    content: '';
    display: block;
    width: 108px; /* 線の長さ */
    height: 4px; /* 線の太さ */
    background: var(--ark-color--main);
    position: absolute;
    top: 50%; /* 垂直方向中央 */
    /* 回転させる際の中心点を設定 */
    transform-origin: center; 
}

/* 左側の斜線 */
.voice__archives-text::before {
	left:-54px;
    transform: translateY(-50%) rotate(59deg); 
}

/* 右側の斜線 */
.voice__archives-text::after {
    right: -50px; /* 親要素（.voice__archives-text）の右端に配置 */
    /* 時計回りに回転 */
    transform: translateY(-50%) rotate(-59deg); 
}

ul.voice__items {
	list-style: none;
	padding: 40px 0 50px;
	margin: 0;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
	justify-content:center;
}

li.voice__item {
	background: #FFFCEA;
	padding: 15px;
	width:calc((100% - 20px)/2);
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
}

.voice__item-img {
    padding-right:14px;
	padding-bottom:14px;
    background: #FFFCEA;
    width: 33%;
	margin-right:12px;
	float:left;
}

.voice__item-img img{
	box-shadow: 0 0 0 4px #ffffff;
}

.voice__item-textbox{

}

.voice__item-textbox h3{
	margin-top:0;
    font-size: clamp(20px, 1.8vw, 24px);
	color:var(--ark-color--main);
	margin-bottom:4px;
	text-align:center;
}

.voice__item-text{
	background-color: #fff;
	padding:8px;
}

.voice__item-textbox p{
    background-image: linear-gradient(180deg, #ccc 1px, transparent 1px);
    background-size: 100% 36px;
    line-height: 36px;
    padding-bottom: 1px;
    background-repeat: repeat;
    font-size: 18px;
	margin-bottom:0;
    background-position-y: -1px;
    text-align: justify;
}


p.voice__item-text {
	line-height: 1.5;
	text-align: center;
	color:var(--ark-color--main);
	font-size: clamp(1.0rem, 1.7vw, 1.6rem);
	font-weight:bold;
	flex-grow:1;
	align-items: center;
    justify-content: center;
    display: flex;
	margin-bottom:8px;
}

p.voice__item-meta{
    color: var(--ark-color--main);
    font-weight: bold;
    margin-bottom: 1rem;
    background-image: none;
    font-size: clamp(18px, 1.8vw, 22px);
    line-height: 1.5;
	text-align:center;
}

.voice02{
	margin-top:0;
}

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


/* ◆◆◆ BA ◆◆◆ */
.ba {
	background: linear-gradient(to bottom, #f8f4e6, #f2f2c2);
	padding-block: 3rem;
	margin-top: 4rem;
}

.ba__inner {}

h2.ba__title {
	text-align: center;
}

ul.ba__items {
	list-style: none;
	counter-reset: ba;
	padding: 0;
	margin: 0;
}

.ba__item:before {
	content: "CASE " counter(ba, decimal-leading-zero);
	counter-increment: ba;
	color: #89c3eb;
	font-size: clamp(1.6rem, 2.4vw, 2rem);
}

li.ba__item {
	background: white;
	padding: 1.5em 1.5em 0.1em;
	margin-bottom: 2em;
}

.ba__item-img {
	display: flex;
	justify-content: space-between;
}

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

h3.ba__item-title {
	text-align: center;
	margin: 0.3em 1em 0.2em;
}

p.ba__item-meta {
	color: gray;
	text-align: center;
	font-size: clamp(0.9rem, 1.5vw, 1.2rem);
	margin-bottom: 0.5em;
}

p.ba__item-text {
	text-align: justify;
	margin-bottom: 2em;
}
/* ◆◆◆ /BA ◆◆◆ */


/* ◆◆◆ 理由 ◆◆◆ */
.reason {
	background: linear-gradient(to bottom, #f8f4e6, #f2f2c2);
	padding-block: 3em;
	margin-top: 4em;
}

.reason__inner {}

h2.reason__title {
	text-align: center;
}

ul.reason__items {
	counter-reset: reason;
	list-style: none;
	padding: 0;
	margin: 0;
}

li.reason__item {
	background: white;
	padding: 3em 2em 0.1em;
	margin-bottom: 2em;
}

li.reason__item h3{ 
	margin-top: 0;
}

li.reason__item h3:before {
	content: "理由" counter(reason, decimal-leading-zero);
	counter-increment: reason;
	color: #89c3eb;
	font-size: clamp(1.6rem, 2.4vw, 2rem);
}

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

.reason__item p {
	margin-bottom: 2em;
}
/* ◆◆◆ /理由 ◆◆◆ */


/* ◆◆◆ 施術方法 ◆◆◆ */

.about{
	margin-top:0;
}

.about__items{
	padding:44px 0;
}

li.about__item{
	position: relative;
    counter-increment: blockPoint;
	background:#FFFCEA;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.16);
	padding:24px 20px;
}

li.about__item + li{
	margin-top:30px;
}

li.about__item::before {
	position: absolute;
	content: '0' counter(blockPoint);
	top: 0;
	clip-path: polygon(0 0, 100% 0%, 100% 100%, 50% 82%, 0 100%);
	background: var(--ark-color--main);
	width: 54px;
	height: 80px;
	color: #FFF;
	text-align: center;
	line-height: 3;
	font-size: 28px;
	font-weight:bold;
}

li.about__item h3{
    font-size: clamp(1.3rem, 2.2vw, 2rem);
	margin-top:0;
	color:var(--ark-color--main);
	padding-left:80px;
	padding-bottom:30px;
	margin-bottom:30px;
	border-bottom:3px solid var(--ark-color--main);
}

.about__img {
	display: flex;
	float: left;
	width: 43%;
/* 	height: 150px; */
	align-items: center;
	justify-content: center;
	padding-right: 1em;
	overflow: hidden;
    position: relative;
    z-index: 2;
}

.about__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.about__text span{
	color:var(--ark-color--main);
}

.about__item p {
    font-size: clamp(16px, 2vw, 23px); /* 応答性のあるフォントサイズ */
    color: #454545;
    text-align: justify;
    margin-bottom: 0;
    
    /* ★ 修正1: line-height を単位なしの値に変更 ★ */
    /* font-size の変化に比例して行の高さが変化するよう設定 */
    line-height: 2.0; /* 2.0em ではなく 2.0 にする */
    
    background-color: inherit;
    background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #FFFCEA 0%, #FFFCEA 100%),
                      linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 97.5%, #646464 100%);
    
    /* ★ 修正2: background-size の縦幅を line-height と一致させる ★ */
    /* line-height: 2.0 の結果として計算された新しい line-height に基づく 2em を使用 */
    /* これでフォントサイズに比例して罫線間隔も変化します */
    background-size: 8px 100%, 100% 2em; 
    
    background-repeat: repeat;
}

/* ◆◆◆ /施術方法 ◆◆◆ */

/* ◆◆◆ /特徴 ◆◆◆ */
.feature{
	padding-bottom:45px;
}

.feature__items{
	padding:20px 0 50px;
	display:flex;
	flex-direction:column;
	gap:50px;
	counter-reset: featurePoint;
}

.feature__item{
	background:#FFFCEA;
	padding:20px;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.16);
	position:relative;
	counter-increment: featurePoint;
}


.feature__item::before {
    /* 擬似要素生成に必須のプロパティ */
	content: '理由';
	white-space: pre-wrap;
    display: block;
    /* 配置とスタイリング */
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: 71px;
    height: 71px;
    background: var(--ark-color--main);
    color: #FFF;
    /* テキストの中央寄せ */
    text-align: center;
    line-height: 1.5; /* 高さと合わせて垂直中央に */
    font-size: 20px;
    font-weight: bold;
	padding:4px;
}

.feature__item::after {
    content: counter(featurePoint, decimal-leading-zero); 
	top: 45px; 
    font-size: 30px; 
    font-weight: bold;
    color: #FFF; 
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: block; 

}


.feature__item h3{
	text-align:center;
	color:var(--ark-color--main);
	padding-bottom:18px;
	margin-bottom:30px;
	border-bottom:3px solid var(--ark-color--main);
	margin-top:5rem;
}

.feature__img{
	margin-bottom:24px;
}

.feature__item p{
	font-size:clamp(16px,2vw,23px);
	margin:0;
	line-height:1.5;
}

.feature__item p span{
	color:var(--ark-color--main);
}

/* ◆◆◆ /特徴 ◆◆◆ */


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

.flow__items{
	display:flex;
	flex-wrap:wrap;
	margin-top:50px;
	padding-left:0;
	margin-bottom:40px;
	
}

.flow__item{
	counter-increment: flowPoint;
	position:relative;
	width:calc((100% - 20px)/2);
	margin-bottom:40px;
}

.flow__item:nth-child(odd){
	margin-right:20px;
}

.flow__item:nth-child(even) h3::after{
	content: "";
    position: absolute;
    bottom:-3px;
    left: -20px;
    width: 20px;
    height: 2px;
    background-color: var(--ark-color--main);
    transform: translateY(-50%);
}

.flow__item h3{
    border-bottom: 2px solid var(--ark-color--main);
    padding-bottom: 1.3em;
    position: relative;
    margin-top: 0;
	color:var(--ark-color--main);
    font-size: clamp(1.3rem, 2.0vw, 28px);
}

.flow__item h3 span{
    font-size: clamp(1.5rem, 2.0vw, 40px);
    padding-right: 4px;
}

.flow__img{
	padding-top:20px;
	position:relative;
}

.flow__img::before{
	position: absolute;
    content: '';
    top: -17px;
    background-color: var(--ark-color--main);
	width:30px;
	height:30px;
	border-radius:50%;
}

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

/* ◆◆◆ 挨拶 ◆◆◆ */

.greeting{
	padding-bottom:4em;
}

.greeting__name{
	display:flex;
	justify-content:center;
	color:var(--ark-color--main);
	margin-bottom:32px;
	text-align:center;
}

.greeting__img{
	border-radius:50%;
	width:70%;
	margin:3em auto 0;
}

.greeting__text {
	padding:20px;
	 background-color: #FFFCEA;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.16);
}

.greeting__text p {
	background-color: inherit;
	background-image:
		linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #FFFCEA 0%, #FFFCEA 100%), linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 97.5%, #646464 100%);
	background-size: 8px 100%,100% 2em;
	line-height: 2em;
	background-repeat:repeat;
	text-align: justify;
	margin-bottom:0;
}


/* ◆◆◆ 挨拶 ◆◆◆ */

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

.access .inner{
	padding-top:2.5em;
}

.access__inner{
	padding:4em 40px 0;
}

.access__block{
	margin-bottom:2em;
}

.access__topic{
    text-align: center;
    color: white;
    display: inline-block;
    background: var(--ark-color--main);
    border-radius: 28px;
    padding-inline: 1em;
    margin-bottom: 0.2em;
    font-weight: bold;
    font-size: 1.6em;
    width: 170px;
}

.access__content{
	font-size:1.6em;
	line-height:1.5;
	margin-bottom:0;
}

.access__block figure{
	width:75%;
}

.access iframe{
	width:100%;
	height:500px;
}

/*アクセスページだけh2を非表示*/
.page-id-124 h2.access__title {
  display: none!important;
}
/* ◆◆◆ /アクセス ◆◆◆ */


/* ◆◆◆ フッターボタン ◆◆◆ */
.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 {
	transition: 0.6s;
	margin-bottom: 1.6em;
}

.footer__btn2-item img{
	width:100%;
}

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


/* ◆◆◆ フッター ◆◆◆ */

.bo-footer__container {
    padding-block: 3em;
}

/* ◆◆◆ /フッター ◆◆◆ */


/* ◆◆◆ 下層ページ ◆◆◆ */
body.page:not(.home) .l-content__body {
	margin-top: 1em;
}

.p-archive__title p.c-pageTitle__main, p.bo-page-title {
	font-size: clamp(1.8rem, 2.8vw, 2.3rem);
	font-weight: 600;
	padding: 0;
	border-bottom: solid 3px var(--ark-color--main);
	margin-top:0;
}

p.bo-page-title {
	text-align: center;
    font-size: clamp(1.8rem, 2.8vw, 2.3rem);
}

.lower li.voice__item {
    padding: 24px 15px 19px;
    margin: 0;
}

.lower p.voice__item-text {
    font-size: clamp(1.0rem, 1.6vw, 1.2rem);
    margin-bottom: 24px;
}

.page-problem{
	background:#F8F8F8;
}

.page-problem p{
	margin:0;
}

.page-problem__inner{
	position:relative;
	padding:38px 20px;
}

.page-problem__img{
	position:absolute;
	bottom:0;
	right:20px;
	width:23%;
}

.page-problem__list{
	padding:0;
}

.page-problem__list li{
	font-size: clamp(1.0em, 1.5vw, 1.2em);
	width:75%;
	padding-bottom:4px;
	margin-bottom:15px;
	line-height:1.5;
	position:relative;
	padding-left:40px;
}

.page-problem__list li span{
	display:block;
	border-bottom:1px solid var(--ark-color--main);
}

.page-problem__list li::before {
    content: '';
    width: 24px;
    height: 24px;
    border: 2px solid var(--ark-color--main);
    background-color: inherit;
    border-radius: 4px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.page-problem__list li::after{
	content: '';
    border: solid var(--ark-color--main);
    border-width: 0 3px 4px 0;
    height: 17px;
    width: 9px;
    position: absolute;
    top: 50%;
    left: 9px;
    transform: translateY(-50%) rotate(45deg);
}

.page-caution_sec01{
	background:#FFFCEA;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
	padding-top:40px;
	padding-bottom:20px;
	margin-bottom:130px;
	position:relative;
}

.caution-triangle{
	clip-path: polygon(50% 100%, 0 0, 100% 0);
	height:80px;
	width:100%;
	background:#FFFCEA;
	text-align:center;
	font-weight:bold;
	font-size: clamp(24px, 2.3vw, 31px);
}

.shadow{
    filter: drop-shadow(1px 4px 2px rgba(0, 0, 0, .16));
	position:absolute;
	bottom:-78px;
	left:0;
	right:0;
}

.page-caution{
	padding-bottom:60px;
}

.page-caution__img{
	margin-bottom:38px;
}

.page-caution__text{
    margin-bottom: 40px;
    line-height: 38px;
    background-color: inherit;
    background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #FFFCEA 0%, #FFFCEA 100%), linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 97.5%, #646464 100%);
    background-size: 8px 100%, 100% 38px;
    background-repeat: repeat;
	font-size:19px;
}

.page-caution__text p{
	margin-bottom:0;
}

.page-caution__text span{
	color:var(--ark-color--main);
}

.page-caution__text ul{
	list-style-type: disc;
}

.page-caution__text ul li{
	font-size: 19px;
    margin: 0;
    font-weight: bold;
}

.page-caution__text li span{
	color: var(--ark-color--main);
}

.page-caution h3{
	color:var(--ark-color--main);
	text-align:center;
	margin-bottom:38px;
}

.caution-text__wrapper{
	background:#FFFCEA;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
	padding:18px;
}

.page-caution_sec02 .page-caution__text{
	margin-bottom:0;
}

.page-about__inner{
    background: #FFFCEA;
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
    padding-top: 40px;
    padding-bottom: 20px;
	font-size:clamp(1rem, 1.6vw, 1.3rem);
}

.page-about__img{
	margin-bottom:38px;
}

.page-about__text{
	margin-bottom: 40px;
    line-height: 38px;
    background-color: inherit;
    background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #FFFCEA 0%, #FFFCEA 100%), linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 97.5%, #646464 100%);
    background-size: 8px 100%, 100% 38px;
    background-repeat: repeat;
}

.page-about__text p{
	margin-bottom:0;
	font-size:19px;
}

.page-about__text p span{
	color:var(--ark-color--main);
}

.page-about__text ul{
	list-style-type: disc;
	margin-bottom:38px;
}

.page-about__text ul li{
	font-size:19px;	
}

.page-about__text ol{
	position: relative;
	margin: 0;
	padding: 0;
}

.page-about__text ol li{
  list-style: none;
  list-style-position: outside;
  margin: 0;
  padding-left: 1.5em;
	font-size:19px;
}

.page-about__text ol li span{
  position: absolute;
  left: 0;
  margin: 0;
}


.page-about__text li{
	color:var(--ark-color--main);
	margin:0;
	font-weight:bold;
}

p.page-about__mb{
	margin-bottom:38px;
}

.page-diet ul.voice__items{
	flex-direction:column;
	gap:3rem;
}

.page-diet ul.voice__items li.voice__item{
	width:100%;
}

/* ◆◆◆ /下層ページ ◆◆◆ */


/* ◆◆◆ 対応症状リスト ◆◆◆ */
.shojo {}

ul.shojo__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	list-style: none;
	gap: 1.5em;
	width: 100%;
	padding: 0 0 3em 0;
	margin: 0;
}

ul.shojo__list li{
	text-align: center;
	flex: 1 1 calc(33.333% - 1.5em);
	max-width: calc(33.333% - 1em);
	margin-bottom: 0;
}

ul.shojo__list li a {
	color: white;
	font-size: clamp(1rem, 2vw, 1.6rem);
	text-decoration: none;
	border-radius: 0.5rem;
	background: var(--ark-color--main);
	display: block;
	padding: 0.6em;
	transition: 0.6s;
}

ul.shojo__list li a:hover {
	opacity: 0.6;
}
/* ◆◆◆ /対応症状リスト ◆◆◆ */


/* ◆◆◆ 執筆者情報 ◆◆◆ */
.writer {
	background-color: ivory;
	border: 1px solid brown;
}
/* ◆◆◆ /執筆者情報 ◆◆◆ */


/* ◆◆◆ 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 ◆◆◆ */


/* ◆◆◆ よくある質問 ◆◆◆ */
.qa{
	background: #FFFCEA;
}

.qa .section__title{
	margin-bottom:1.5em;
}

.qa .inner{
	padding-bottom:2rem;
}

.qa-list{
	background: #FFF;
    padding: 2rem;
    margin-bottom: 3rem;
    border-radius: 20px;
    box-shadow: 3px 3px 1px rgba(243, 152, 0, 1);
}

.qa-list dt, .qa-list dd {
	position: relative;
	font-size: clamp(1.0rem, 1.8vw, 1.6rem);
	line-height:1.5;
}

.qa-list dt {
	margin-bottom: 1rem;
	padding: 0 0 1rem 4rem;
	border-bottom:2px solid var(--ark-color--main);
	font-weight:bold;
}

.qa-list dd {
	padding: 0 0 0 4rem;

}

.qa-list dt:before, .qa-list dd:before {
	position: absolute;
	font-size: clamp(1.1rem, 1.8vw, 1.6rem);
	color: white;
	top: 0;
	left: 0;
	width: 2.4rem;
	padding-block; 1em;
	vertical-align: middle;
	text-align: center;
}

.qa-list dt:before {
	content: "Q";
	background: var(--ark-color--main);
	border-radius: 0.5rem;
}

.qa-list dd:before {
	content: "A";
	border: solid 1px var(--ark-color--main);
	background-color: #ffffff;
	color: var(--ark-color--main);
	border-radius: 0.5rem;
}
/* ◆◆◆ よくある質問 ◆◆◆ */

/* ◆◆◆ /料金 ◆◆◆ */

.page-price .offer figure{
	display:none;
}

.page-price .offer:first-of-type{
	padding-bottom:0;
}

.page-price .offer:first-of-type figure{
	display:block;
}

.page-price .offer:first-of-type .offer__btn{
	display:none;
}



.price__symptoms{
	background:#FFFCEA;
	margin-top:0;
}

.price__symptoms .inner{
	padding-top:3em;
	padding-bottom:3em;
}

.price__symptoms#inner{
	margin-bottom:5em;
}

.price__inner{
	padding:0 1.5em;
}

.bo-page-title + .price__symptoms{
	margin-top:2em;
}

.price__symptoms .section__title p{
	margin-bottom:8px;
	font-weight: bold;
}

.price__symptoms .section__title h2{
	padding-bottom:0;
	color:#FFF;
}

.price__symptoms-list{
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    list-style: none;
    gap: 0.5em;
    width: 100%;
    padding: 1em 0 3em;
    margin: 0;
}

.price__symptoms-list li{
	text-align: left;
    flex: 1 1 calc((100% - 1.5em)/4);
    max-width: calc((100% - 1.5em)/4);
    margin: 0;
}

.price__symptoms-list a{
    font-size: clamp(1rem, 1.5vw, 1.4rem);
    border-radius: 0.5rem;
    display: block;
    transition: 0.6s;
    font-weight: bold;
}

.price__symptoms-list a:hover{
	transition:0.3s;
    opacity:0.7;
}


.price__table{
	width:80%;
	margin:0 auto;
	font-size: clamp(1.1em, 2.5vw, 1.3em);
	border-top:1px solid var(--ark-color--border--table);
	border-right:1px solid var(--ark-color--border--table);
	margin-bottom:1em;
}

.price__table td{
	background:#FFF;
}

.price__table th,
.price__table td{
	vertical-align:middle;
	text-align: center;
}

.price__cp td{
	font-weight:bold;
	color:var(--ark-color--main);
	font-size:1.4em;
	position:relative;
}

.price__table td span{
	font-size: 1rem;
    font-weight: normal;
}

.price__maintext{
	text-align:center;
	font-size: clamp(1.3rem, 1.8vw, 1.6rem);
}

.price__maintext span{
	color:var(--ark-color--main);
	font-weight:bold;
	font-size: clamp(1.5rem, 2.0vw, 1.8rem);
}

.price__list{
    padding: 20px;
	margin-bottom:1em;
}

.price__list ul{
	padding-left: 0;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    width: fit-content;
    gap: 10px;
}

.price__list li{
	margin: 0;
    position: relative;
    padding-bottom: 5px;
    font-weight: 500;
    font-size: clamp(1.2rem, 1.8vw, 1.45rem);
    width: 100%;
    line-height: 1.4;
}

.price__text{
	background: #FFF;
    padding: 20px 33px;
    font-size: clamp(1.3rem, 1.8vw, 1.6rem);
    text-align: left;
    line-height: 1.4;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
}

/* ◆◆◆ /料金 ◆◆◆ */



/* ◆◆◆ 投稿記事下CTA ◆◆◆ */
.post__cta {
	padding-bottom: 2rem;
	margin-bottom: 2rem;
}
.post__cta .inner {
	padding: 0;
}
/* ◆◆◆ /投稿記事下CTA ◆◆◆ */


/* ◆◆◆ パンくず ◆◆◆ */
li.p-breadcrumb__item {
	margin-bottom: 0;
}
/* ◆◆◆ /パンくず ◆◆◆ */


/* ◆◆◆ アーカイブ ◆◆◆ */
/* ◆◆◆ /アーカイブ ◆◆◆ */

/* ◆◆◆ ブログ ◆◆◆ */
.p-entry__thumb {
    margin: 2rem 0 0;
    text-align: center;
    width: 100%;
}
.note {
	font-size: .9em;
}

.bo-credit {
	margin-top:60px;
	font-size:85%;
	color:gray;
}

.bo-credit a {
	color:gray;
	text-decoration:none;
}

.news-col {
	float: right;
	margin-left: 25px;
	width: 40%;
}
.fs_s {
	font-size: .8em;
}

@media (max-width: 768px) {
	.blog-after {
		flex-wrap:wrap;
	}
	.blog-after-content {
		width:100%;
	}
	.news-col {
		width: 50%;
	}
}
/* ◆◆◆ /ブログ ◆◆◆ */






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



@media (max-width: 1024px) {
	
	#sidebar{
		display:none;
	}

	
	/* ◆◆◆ ハンバーガーメニュー ◆◆◆ */
	/*ボタン背景色*/
	.l-header__drawerBtn {
		background: var(--ark-color--main);
		border-radius: 3px;
	}

	
	/*ボタン３本線*/
	.c-iconBtn__icon {
		color: white;
	}
	
	/*メニュー背景色*/
	.p-drawer{ 
		background: #FFFCEA;
	}
	
	.c-drawerNav__a {
		color: #666;
	}

	/* ◆◆◆ ハンバーガーメニュー ◆◆◆ */
}



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

@media (max-width: 768px) {
	
	.bo-header__right-box {
        display: none;
    }
	
	.section__title{
		padding: 25px 0;
        font-size: clamp(1.3rem, 5.0vw, 1.8rem);
	}
	
	/* ◆◆◆ 問い合わせボタン ◆◆◆ */
	.contact__btn {
		margin-bottom: 0.5em;
	}
	/* ◆◆◆ /問い合わせボタン ◆◆◆ */
	
	/* ◆◆◆ /オファー ◆◆◆ */	
	.inner{
		padding:1em;
	}
	
	.offer {
		margin-top: 1em;
		padding-top: 2em;
		padding-bottom: 2em;
	}
	
	.offer figure{
		margin-bottom:2em;
	}
	
	.offer__btn {
		flex-direction:column;
	}
	
	.offer__btn a{
		width:100%;
	}
	
	section + .offer {
		padding-bottom: 0;
	}
	/* ◆◆◆ /オファー ◆◆◆ */	
	
	
	/* ◆◆◆ お悩み ◆◆◆ */
	.problem {
		margin-bottom:40px;
	}
	
	.problem__inner{
		padding:20px;
	}
	
	.problem__list li{
		padding-left: 36px;
		font-size: clamp(16px, 4vw, 20px);
	}
	
	.problem__list li::before{
		width: 24px;
        height: 24px;
	}
	
	
	/* ◆◆◆ /お悩み ◆◆◆ */
	
	
	/* ◆◆◆ 喜びの声 ◆◆◆ */
	
	.voice__archives {
		padding: 2em 0;
	}
	
	.voice__archives li{
		width: calc((100% - 20px) / 3);
	}
	
	.voice__archives-text {
		margin: 10px auto;
	}
	
	.voice__archives p {
		font-size: clamp(1.6em, 2.5vw, 2.5em);
		margin:10px 0;
	}
	
	.voice__archives-text::before, .voice__archives-text::after {
		width: 78px;
		height: 3px;
	}
	
	.voice__archives-text::before {
		left:-28px;
	}
	
	.voice__archives-text::after {
		right:-28px;
	}

	ul.voice__items{
		flex-direction:column;
		padding:20px 0;
	}
	
	ul.voice__items> li{
		width:100%;
	}
	
.voice__item-textbox p {
    background-size: 100% 32px;
    line-height: 32px;
    padding-bottom: 1px;
    background-repeat: repeat;
    font-size: 16px;
    background-position-y: -1px;
}
	/* ◆◆◆ /喜びの声 ◆◆◆ */
	
	
	/* ◆◆◆ BA ◆◆◆ */
	.ba {
		margin-top: 3em;
	}
	
	li.ba__item {
		margin-bottom: 2em;
	}
	/* ◆◆◆ /BA ◆◆◆ */
	
	
	/* ◆◆◆ 特徴 ◆◆◆ */
	
	.feature__items{
		gap:30px;
		padding-bottom:30px;
	}
	.feature__item{
		padding:12px;
	}
	
	.feature__item::before {
		top: 12px;
		width: 54px;
		height: 54px;
		font-size: 16px;
	}
	
	.feature__media{
		padding:0 1em;
	}
	
	.feature__item::after {
        top: 30px;
        font-size: 23px;
	}
	
	.feature__item h3{
		margin-top:4.5rem;
		font-size: clamp(1.4rem, 2.4vw, 2rem);
		padding-bottom:10px;
		margin-bottom:16px;
	}
	
	.feature__img {
    	margin-bottom: 16px;
	}
	/* ◆◆◆ /特徴 ◆◆◆ */
	
	
	/* ◆◆◆ 施術方法 ◆◆◆ */
	.about__items {
		padding: 22px 0;
	}
	
	li.about__item::before {
		width: 44px;
		height: 60px;
		line-height: 2.5;
		font-size: 24px;
	}
	
	li.about__item {
		padding: 16px;
	}
	
	li.about__item h3 {
		padding-left: 70px;
		padding-bottom: 12px;
		margin-bottom: 20px;
	}
	
	.about__img {
		width:100%;
		padding:0;
		margin-bottom:10px;
		float:unset;
	}
	
	.about__item p {
		font-size: clamp(16px, 2vw, 23px);
	}
	
	/* ◆◆◆ /施術方法 ◆◆◆ */

	
	/* ◆◆◆ 流れ-02 文章あり縦並び ◆◆◆ */
	.flow__items{
		margin-top:30px;
		flex-direction:column;
		margin-bottom:20px;
	}
	
	.flow__item{
		width:100%;
		margin-right:0;
		margin-bottom:1.4em;
	}
	
	.flow__item:nth-child(odd) {
		margin-right: 0;
	}
	
	.flow__item h3 {
    	padding-bottom: 0.8em;
	}
	
	.flow__img::before {
        top: -11px;
        width: 20px;
        height: 20px;
	}
	
	.flow__item:nth-child(even) h3::after {
		display:none;
	}
	
	.flow__item h3{
		font-size: clamp(1.5rem, 4.0vw, 28px);
	}
	
	.flow__item h3 span {
		font-size: clamp(1.8rem, 2.0vw, 40px);
	}
	/* ◆◆◆ /流れ-02 文章あり縦並び ◆◆◆ */
	
	/* ◆◆◆ 挨拶 ◆◆◆ */	
	
	.greeting h3{
		margin-top:1em;
		font-size: clamp(1.4rem, 4.5vw, 2rem);
	}
	
	.greeting__img {
		width: 80%;
		margin: 2em auto 0;
	}
	/* ◆◆◆ 挨拶 ◆◆◆ */
	
	/* ◆◆◆ アクセス ◆◆◆ */
	.access {
	}
	
	.access__inner {
		padding: 2em 20px 0;
	}
	
	.access__block{
		margin-bottom:1.5em;
	}
	
	.access__topic {
		font-size: 1.2em;
		width: 130px;
	}
	
	.access__content {
		font-size: 1.2em;
	}
	
	.access iframe{
		height:300px;
	}

	/* ◆◆◆ /アクセス ◆◆◆ */
	
	
	/* ◆◆◆ フッターボタン ◆◆◆ */
	.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%;
		margin-bottom: 0;
	}
	
	.l-footer__foot {
		padding-bottom: 4.5rem;
	}
	/* ◆◆◆ フッターボタン ◆◆◆ */
	
	.entry_title {
		padding-inline: 5%;
	}
	
	/* ◆◆◆ パンくずリスト ◆◆◆ */
	.p-breadcrumb__list {
		padding-left: 5% !important;
	}
	/* ◆◆◆ /パンくずリスト ◆◆◆ */
	
	
	/* ◆◆◆ 対応症状リスト ◆◆◆ */
	ul.shojo__list {
		gap: 1em;
	}

	ul.shojo__list li{
		text-align: center;
		flex: 1 1 calc(50% - 0.5em);
		max-width: calc(50% - 0.5em);
	}

	ul.shojo__list li a {
		padding: 0.5em;
	}
	/* ◆◆◆ /対応症状リスト ◆◆◆ */
	
	/* ◆◆◆ /下層ページ ◆◆◆ */	
	
	.lower li.voice__item {
		padding: 18px 15px 14px;
	}

	.lower p.voice__item-text {
		font-size: clamp(1.2rem, 1.6vw, 1.5rem);
		margin-bottom: 16px;
	}
	
	.page-problem__inner {
		padding: 20px;
	}
	
	.page-problem__list li {
		width: 100%;
		margin-bottom: 10px;
		padding-left: 25px;
		font-size:15px;
	}
	
	.page-problem__list li::before {
		width: 18px;
		height: 18px;
	}
	
	.page-problem__list li::after {
		height: 14px;
		width: 7px;
		left: 7px;
	}
	
	.page-problem__img {
		display:none;
	}
	
	.page-caution{
		padding-bottom:30px;
	}
	
	.page-caution_sec01{
		padding:2em 1em;
		margin-bottom:50px;
	}
	
	.page-caution__img {
		margin-bottom: 20px;
	}
	
	.page-caution__text {
		margin-bottom: 20px;
		line-height: 32px;
		background-size: 8px 100%, 100% 32px;
		font-size:16px;
	}
	
	.page-caution__text ul li {
		font-size: 16px;
	}
	
	.caution-triangle {
		font-size: 20px;
	}
	
	.page-caution h3 {
		margin-bottom: 2rem;
		margin-top:2.2rem;
	}
	
	.caution-text__wrapper {
		padding: 12px;
	}
	
	.page-about .inner {
		padding-top: 2em;
	}
	
	.page-about__img {
		margin-bottom: 2.0em;
	}
	
	.page-about__text__wrapper {
		padding: 10px;
		margin-bottom: 2.0em;
	}
	
	.page-about__text{
		line-height: 32px;
		background-size: 8px 100%, 100% 32px;
	}

	.page-about__text p{
		font-size:16px;
	}

	.page-about__text ul{
		margin-bottom:32px;
	}

	.page-about__text ul li{
		font-size:16px;	
	}
	
	.page-about__text ol li {
		font-size: 16px;
	}
	p.page-about__mb {
		margin-bottom: 32px;
	}

	
	.writer__img {
        width: 100%;
        height: auto;
        padding-right: 0;
        padding-bottom: 16px;
    }

	/* ◆◆◆ /下層ページ ◆◆◆ */
	
	/* ◆◆◆ /料金 ◆◆◆ */
	
	
	.price__symptoms .inner {
		padding-top: 2em;
		padding-bottom: 1em;
	}
	
	.price__symptoms#inner {
		margin-bottom: 7em;
	}
	
	.price__symptoms-list{
		gap: 0.5em;
		padding:0 0 2em 0;
	}
	
	.price__symptoms-list li{
		font-size: clamp(1.2rem, 3.2vw, 1.4rem);
		width:calc((100% - 0.5em)/2);
		flex:none;
		max-width:none;
	}
	
	.price__symptoms p{
		font-size: clamp(0.9rem, 3.0vw, 1.2rem);
	}
	
	.price__table{
		width:100%;
	}
	
	.price__table td span {
		font-size: 0.8rem;
	}
	
	.price__maintext{
		line-height:1.5;
	}
	
	.price__list{
		padding: 10px 14px;
		margin-bottom:1em;
	}
	
	.price__list ul{
		width: auto;
	}
	
	.price__list li{
		font-size: clamp(15px, 4vw, 20px);
	}
	
	.price__text{
		padding: 14px 14px;
		font-size: clamp(1.2rem, 1.8vw, 1.6rem);
	}
	
		.page-price .offer{
		padding-top:0;
	}
	
	.price .bo-page-title{
		margin-bottom:0;
	}
	
	.page-diet ul.voice__items {
		gap: 2rem;
	}
	
	.page-diet .offer{
		padding-top:0;
	}
	
	/* ◆◆◆ /料金 ◆◆◆ */
	
	/* ◆◆◆ 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 ◆◆◆ */
	
}



