:root {
	--black: #6A5959;
	--orange: #D4945C;
	--red:#E05F2F;
	--l-orange: #FAEFE4;
	--yellow: #FFEB00;
	--brown: #9A8771;
	--green: #30954D;
	--gothic: 'Helvetica Neue', '游ゴシック体', YuGothic, 'メイリオ', Meiryo, sans-serif;
	--mincho: '游明朝体', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', serif;
}

img {
	display: block;
}

/* フェードイン調整 */
[data-aos^=fade][data-aos^=fade] {
	opacity: 0;
	transform: translateY(12px);
	/* ← ここ追加。値を小さく */
	transition-property: opacity, transform;
}

[data-aos^=fade][data-aos^=fade].aos-animate {
	opacity: 1;
	transform: translateY(0);
	/* 元の位置に戻す */
}

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

html {
	font-size: 62.5%;
	/* デスクトップ（基準: 10px） */
}

@media (max-width: 1024px) {
	html {
		font-size: 56.25%;
		/* タブレット（基準: 9px） */
	}
}

@media (max-width: 768px) {
	html {
		font-size: 50%;
		/* スマートフォン（基準: 8px） */
	}
}


body {
	color: var(--black) !important;
	font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif !important;
}

/* 自動<p>タグの非表示 */
p:empty {
	display: none !important;
}

body.page p:empty {
	display: none !important;
}

a {
	text-decoration: none;
	transition: opacity 0.3s ease;
	display: block;
}

a:hover {
	text-decoration: none;
	opacity: 0.6;
}

/*デフォルトのCSS打ち消し*/
h2,
h3 {
	margin: 0;
	padding: 0;
}

ul,
li {
	margin: 0;
	padding: 0;
}

/*.c-postContent>* {
	margin-top: 0;
}*/

/*画像の縦横比設定*/
img {
	width: 100%;
	height: auto;
	display: block;
}

@media (max-width: 768px) {
	img {
		width: 100%;
		height: auto;
	}
}

p {
	margin: 0;
}

figure {
	margin: 0;
}

/* brタグ */
.pc-only {
	display: block;
}

.tb {
	display: none;
}

.sp-only {
	display: none;
}

@media (max-width: 1024px) {
	.tb {
		display: block;
	}
}

@media (max-width: 768px) {
	.pc-only {
		display: none !important;
	}

	.sp-only {
		display: block;
	}
}

/*共通class*/
.mt-1 {
	margin-top: 1rem;
}

.mt-2 {
	margin-top: 2rem;
}

.mt-3 {
	margin-top: 3rem;
}

.mt-4 {
	margin-top: 4rem;
}

.mt-5 {
	margin-top: 5rem;
}

.mt-6 {
	margin-top: 6rem;
}

.f-500 {
	font-weight: 500;
}

.f-600 {
	font-weight: 600;
}

.r-font {
	color: var(--red);
}

.o-font {
	color: var(--orange);
}

.y-font {
	color: #FFEB00;
}

.y-line {
	background: linear-gradient(transparent 65%, #FFEB00 65%);
}

.g-line {
	background: linear-gradient(transparent 65%, #D9E7E0 65%);
}

.g-font {
	color: var(--green);
}

.lg-font {
	color: #A7C8B6;
}

/* ◆◆◆ ヘッダー ◆◆◆ */
.l-header__body {
	max-width: 1200px;
}

.bo-header {
	padding-top: 2.5rem;
	padding-bottom: 3rem;
}

/*Safari対策*/
.c-headLogo__img {
	width: auto;
	height: auto;
	object-fit: contain;
}

@media (max-width: 768px) {
.bo-header {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}
	.bo-header__right-box {
		display: none;
	}
}


.bo-header__right-box-inner {
	display: flex;
	align-items: center;
	flex-direction: column;
}

.bo-header__top {
	display: flex;
	justify-content: center;
	gap: 2rem;
	padding-bottom: 1.5rem;
	border-bottom: 1px solid #847D72;
}

.bo-header__top-l {
	display: grid;
	place-items: center;
}

.bo-header__time {
	font-size: 1.5rem;
	background: var(--orange);
	color: #ffffff;
	padding: 0.4rem 1.3rem;
	border-radius: 50px;
}

.bo-header__tel {}

.bo-header__top-r {}

.bo-header__bottom {
	display: flex;
	justify-content: center;
	gap: 2rem;
	padding-top: 1.5rem;
}

.bo-header__text {
	font-size: 1.5rem;
	color: var(--black);
}




/* ◆◆◆ FV調整 ◆◆◆ */
.fv__top {
	background-size: cover;
	background-repeat: no-repeat;
}


.fv__top figure {
	width: 100%;
	aspect-ratio: 343 / 100;
	/* 1920:560の比率 */
	object-fit: contain;
	/* 全体を見せる */
	display: block;
}

@media (max-width: 768px) {
	.fv__top figure {
		aspect-ratio: 1 / 1;
		width: 100%;
	}
}

/* ◆◆◆ グロナビ ◆◆◆ */
.l-headerUnder {
	background: #ffffff;
	border-top: 1px solid #BFBFBF;
	border-bottom: 1px solid #BFBFBF;
}

.l-headerUnder .c-gnav>.menu-item>a {
	color: var(--black);
	font-size: 1.5rem;
	font-weight: 500;
	padding: 16px 10px;
	transition: color 0.3s ease;
	line-height: 1.5;
}

.c-gnav__li {
	width: 14rem;
}

.menu-item a span {
	font-size: 1.4rem;
}

/*.menu-item a:hover {
	opacity:1;
}*/

.l-headerUnder .c-gnav>.menu-item>a:hover {
	color: var(--green);
	 opacity:1;
}

/*グロナビサブメニュー*/
.c-gnav .sub-menu {
	background: var(--green);
	text-align: center;
}

.c-gnav__depth1:before {
	background-color: var(--green);
}

.l-headerUnder .c-gnav>.menu-item {
	position: relative;
}

.l-headerUnder .c-gnav>.menu-item::after {
	position: absolute;
	content: "";
	width: 1px;
	height: 90%;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #bfbfbf;
}

.l-headerUnder .c-gnav>.menu-item:last-child>a::after {
	background: none;
}

/*
.menu-item-243 a,
.menu-item-268 a {
	position: relative;
}

.menu-item-243 a span {
	position:relative;
	left:-6%;
}

.menu-item-268 a span {
	position:relative;
	left:-6%;
}
*/

.menu-item-243 a::after {
	position: absolute;
	content: "" !important;
	background: url(https://daichidoulabo.com/wp-content/uploads/2025/12/header-menu-sankaku.png);
     width: 10px;
    height: 5px;
    background-repeat: no-repeat;
    background-size: contain;
    top: 44%;
    right: 18%;
}

.menu-item-268 a::after {
	position: absolute;
	content: "" !important;
	background: url(https://daichidoulabo.com/wp-content/uploads/2025/12/header-menu-sankaku.png);
	width: 10px;
	height: 5px;
	background-repeat: no-repeat;
	background-size: contain;
	top: 44%;
	right: 7.5%;
}

.menu-item-243 a:hover:after {
	position: absolute;
	content: "" !important;
	background: url(https://daichidoulabo.com/wp-content/uploads/2025/12/header-menu-sankaku.png);
     width: 10px;
    height: 5px;
    background-repeat: no-repeat;
    background-size: contain;
    top: 44%;
    right: 18%;
	transform: rotate(180deg);
}

.menu-item-268 a:hover:after {
	position: absolute;
	content: "" !important;
	background: url(https://daichidoulabo.com/wp-content/uploads/2025/12/header-menu-sankaku.png);
	width: 10px;
	height: 5px;
	background-repeat: no-repeat;
	background-size: contain;
	top: 44%;
	right: 7.5%;
	transform: rotate(180deg);
}

.sub-menu.c-gnav__depth1 li a::after {
	background: none;
}

@media (min-width: 1024px) {
	.menu-item-243 .sub-menu.c-gnav__depth1 li:first-child a,
	.menu-item-243 .sub-menu.c-gnav__depth1 li:nth-child(4) a {
		padding-top: 1.55rem;
	}
}

/*ホバー時調整*/
.c-gnav .sub-menu .c-gnav__a:hover {
	color: var(--yellow);
	opacity: 1;
}

.c-gnav .sub-menu .c-gnav__a:hover:before {
	background-color: transparent;
}

@media (min-width: 768px) {

	/*サブメニューの折り返し*/
	.c-gnav .sub-menu {
		background: var(--green);
		display: flex;
		flex-wrap: wrap;
		width: 320px;
	}

	.c-gnav .sub-menu li {
		width: 50%;
	}

	/*サブメニューのボーダー*/
	.c-gnav .sub-menu li:nth-child(odd) {
		border-right: 1px solid #fff3;
	}

	.c-gnav .sub-menu li a span {
		font-size: 1.4rem;
	}

	.c-gnav .sub-menu li a span span {
		display: block;
		font-size: 1rem;
	}
}


@media (max-width: 1120px) {
	.l-headerUnder .c-gnav>.menu-item>a {
		padding: 11px 10px;
		font-size:1.3rem;
	}
}

@media (max-width: 999px) {
	.menu-item-243 a::after,
	.menu-item-268 a::after,
	.menu-item-243 a:hover:after,
	.menu-item-268 a:hover::after {
		display:none;
	}
	
	.menu-item-243 a span {
	left:2%;
}

.menu-item-268 a span {
	left:4%;
}
}


/* ◆◆◆ ハンバーガーメニュー ◆◆◆ */
@media (max-width: 1024px) {

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

	/*ボタン３本線*/
	.c-iconBtn__icon {
		color: white;
	}

	.p-drawer__body {
		padding: 0;
	}

	/*メニュー背景色*/
	.p-drawer {
		background: #6cbb90;
		border-top: #F0F1F3;
		border-bottom: #F0F1F3;
	}

	/*サブメニュー背景色*/
	.sub-menu {
		background: #ffb370;
	}

	/*サブメニューアイコン*/
	.c-submenuToggleBtn {
		background: #ffffff !important;
	}

	.c-submenuToggleBtn .c-submenuToggleBtn__svg {
		fill: black;
	}

	.c-submenuToggleBtn:after {
		box-shadow: inset 0 0 0 1px black;
		opacity: 1;
	}

	/*メニューリスト内設定*/
	.c-drawerNav {
		text-align: center;
	}

	.c-drawerNav .menu-item .c-drawerNav__a span {
		font-size: 2rem;
	}

	.p-drawer__close {
		font-size: 1.5rem;
	}
}


/*メインコンテンツ調整*/
.home.page .l-content__body {
	background: transparent;
}

.home.page .l-content__body {
	padding-top: 3rem;
	padding-bottom: 7rem;
}

.l-main__body>:first-child {
	margin-top: 4rem !important;
}

:not(.home).page .l-content__body {
	padding-top: 4rem;
	padding-bottom: 7rem;
}

/*下層ページ*/
.l-main__body.p-page.type-page>:first-child {
	margin-top: 0 !important;
}

@media (max-width: 768px) {
	.home.page .l-content__body {
		padding-top: 0rem;
		padding-bottom: 3rem;
	}

	.l-main.l-article {
		margin-top: 3rem;
	}

	:not(.home).page .l-content__body {
		padding-top: 0;
		padding-bottom: 7rem;
	}

	:not(.home) .l-main.l-article {
		margin-top: 0;
	}
}

/* ◆◆◆ サイドバー ◆◆◆ */
.widget_nav_menu {
	border-top: none !important;
	border: none !important;
	padding-bottom: 3rem;
}

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

.c-widget+.c-widget {
	margin-top: 4rem;
}

.c-widget__title.-side {
	background: linear-gradient(to bottom, #DBD6C8 0%, #C3BCAD 100%) !important;
	color: var(--black);
	font-size: 2rem;
	padding: 1.5rem 1.3rem 1.5rem 2.1rem;
	text-align: left !important;
	font-weight: 600;
	margin-bottom: 0 !important;
}

.widget_nav_menu .menu-item {
	border-bottom: none;
	position: relative;
}

.widget_nav_menu li:after {
	background: none;
}

.widget_nav_menu li a {
	color: var(--black);
	font-size: 1.8rem;
	padding: 1.8rem 1.4rem 1.8rem 2.2rem;
	text-align: left;
	position: relative;
	transition: color 0.3s ease;
	border-bottom: 1px solid #E3DFD5;
}

.widget_nav_menu li a:hover {
	color: var(--green);
	opacity: 1;
}

.widget_nav_menu li a::after {
	position: absolute;
	content: "";
	background: url(https://daichidoulabo.com/wp-content/uploads/2026/07/side-sankaku.webp);
	background-size: contain;
	background-repeat: no-repeat;
	width: 7px;
	height: 14px;
	top: 50%;
	transform: translateY(-50%);
	right: 9%;
}

.widget_nav_menu li a:hover::after {
	position: absolute;
	content: "";
	background: url(https://daichidoulabo.com/wp-content/uploads/2026/07/side-sankaku-hover.webp);
	background-size: contain;
	background-repeat: no-repeat;
	width: 7px;
	height: 14px;
	top: 50%;
	transform: translateY(-50%);
	right: 9%;
	opacity: 1;
}

/*サイドバー　アクセス*/
.side__box h3 {
	color: var(--black);
	background: linear-gradient(to bottom, #DBD6C8 0%, #C3BCAD 100%) !important;
	color: var(--black);
	font-size: 2rem;
	padding: 1.5rem 1.3rem 1.5rem 2.1rem;
	text-align: left !important;
	font-weight: 600;
}

.side__box-address {
	font-size: 1.6rem;
}

.side__box-name {
	width: 95%;
	margin-inline: auto;
	margin-top: 2rem;
}

.side__box-tel {
	width: 95%;
	margin-right: auto;
	margin-top: 1.5rem;
}

.side__box-title {
	font-size: 1.7rem;
	font-weight: 600;
	margin-top: 2rem;
}

.side__box-text {
	font-size: 15px;
	line-height: 1.6;
}

.side__box-text span {
	color: var(--orange);
	font-weight: 500;
}

.side__contact__btn {
	margin-top: 1.7rem;
	transition: 0.6s;
}

.side__contact__btn img {
	filter: drop-shadow(0 3px 6px rgba(0, 0, 0, .16));
}

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

.side__contact__btn:hover {
	opacity: 0.6;
}

/*ここからサイドバー院情報*/
.side__box-inner {
	padding: 3.5rem 2rem 2.5rem 2rem;
}

.side-bar__title {
	margin-bottom: 2rem;
}

.side-bar__text {
	font-size: 1.5rem;
}

.side-bar__tel {
	margin-top: 2rem;
}

.side-bar__attention {
	font-size: 1.7rem;
	text-align: center;
	background: #EEECE7;
	padding-block: 0.2rem;
	margin-top: 1.5rem;
}

.side-bar__texts {
	display: grid;
	gap: 2rem;
	margin-top: 2rem;
}

.side-bar__text.side-bar__list {
	padding-left: 2.5rem;
	position: relative;
}

.side-bar__text.side-bar__list::before {
	position: absolute;
	content: "";
	background: url(https://daichidoulabo.com/wp-content/uploads/2026/07/side-dot.webp);
	background-size: contain;
	background-repeat: no-repeat;
	width: 10px;
	height: 10px;
	top: 11%;
	left: 4%;
}

.side-bar__text--s {
	font-size: 1.3rem;
}

.side-bar__image {
	margin-top: 2rem;
}

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



/*-----------------------------共通-----------------------------*/
.inner {
	padding-inline: 3rem;
}

.section {
	margin-top: 7rem;
}

.section-title {
	text-align: center;
	font-size: 3.2rem;
	font-weight: 600;
	line-height: 1.8;
	position: relative;
	overflow: hidden;
}

.section-title span {
	color: var(--orange);
}

.section-title.section-title--fine::before,
.section-title.section-title--fine::after {
	position: absolute;
	content: "";
	background: var(--orange);
	height: 2px;
	width: 21%;
}

.section-title.section-title--voice::before,
.section-title.section-title--voice::after {
	position: absolute;
	content: "";
	background: var(--orange);
	height: 2px;
	width: 24%;
}

.section-title.section-title--ba::before,
.section-title.section-title--ba::after {
	position: absolute;
	content: "";
	background: var(--orange);
	height: 2px;
	width: 13%;
}


.section-title.section-title--u-top::before,
.section-title.section-title--u-top::after {
	position: absolute;
	content: "";
	background: var(--orange);
	height: 2px;
	width: 17%;
}

.section-title.section-title--problem::before,
.section-title.section-title--problem::after {
	position: absolute;
	content: "";
	background: var(--orange);
	height: 2px;
	width: 21%;
}

.section-title.section-title--reason::before,
.section-title.section-title--reason::after {
	position: absolute;
	content: "";
	background: var(--orange);
	height: 2px;
	width: 21%;
}

.section-title.section-title--reason.section-title--ba::before,
.section-title.section-title--reason.section-title--ba::after {
	width: 13%;	
}

.section-title.section-title--reason.section-title--jaw::before,
.section-title.section-title--reason.section-title--jaw::after {
	width: 15%;	
}

.section-title.section-title--reason.section-title--t::before,
.section-title.section-title--reason.section-title--t::after {
	width: 21%;	
}

.section-title.section-title--reason.section-title--jiritsu::before,
.section-title.section-title--reason.section-title--jiritsu::after {
	width: 11%;	
}


.section-title.section-title--fine::before {
	left: 0;
	bottom: 21%;
}

.section-title.section-title--fine::after {
	right: 0;
	bottom: 21%;
}

.section-title.section-title--voice::before {
	left: 0;
	bottom: 21%;
}

.section-title.section-title--voice::after {
	right: 0;
	bottom: 21%;
}

.section-title.section-title--ba::before {
left: -2%;
bottom: 50%;
}

.section-title.section-title--ba::after {
right: -2%;
 bottom: 50%;
}

.section-title.section-title--u-top::before {
	left: 0;
	bottom: 21%;
}

.section-title.section-title--u-top::after {
	right: 0;
	bottom: 21%;
}

.section-title.section-title--problem::before {
	left: 0;
	bottom: 44%;
}

.section-title.section-title--problem::after {
	right: 0;
	bottom: 44%;
}

.section-title.section-title--reason::before {
	left: 0;
	bottom: 24%;
}

.section-title.section-title--reason::after {
	right: 0;
	bottom: 24%;
}

.section-title.section-title--orange {
	padding-bottom: 1.5rem;
	border-bottom: 4px solid var(--orange);
}


@media (max-width: 1024px) {
	.section-title.section-title--fine::before,
	.section-title.section-title--fine::after {
		width: 15%;
	}

	.section-title.section-title--voice::before,
	.section-title.section-title--voice::after {
		width: 20%;
	}

	.section-title.section-title--u-top::before,
	.section-title.section-title--u-top::after {
		width: 8%;
	}

	.section-title.section-title--problem::before,
	.section-title.section-title--problem::after {
		height: 2px;
		width: 13%;
	}

	.section-title.section-title--reason::before,
	.section-title.section-title--reason::after {
		height: 2px;
		width: 16%;
	}
	
	.section-title.section-title--reason.section-title--jaw::before,
     .section-title.section-title--reason.section-title--jaw::after {
	width: 7%;	
}
	
	.section-title.section-title--reason.section-title--t::before,
     .section-title.section-title--reason.section-title--t::after {
	width: 18%;	
}

.section-title.section-title--reason.section-title--jiritsu::before,
.section-title.section-title--reason.section-title--jiritsu::after {
	width: 3%;	
}
}	


@media (max-width: 768px) {
	.inner {
		padding-inline: 5%;
	}

	.section {
		margin-top: 5rem;
	}

	.section-title {
		font-size: 2.2rem;
		font-weight: 600;
		line-height: 1.6;
	}

	.section-title.section-title--fine::before,
	.section-title.section-title--fine::after {
		width:
			12%;
	}

	.section-title.section-title--voice::before,
	.section-title.section-title--voice::after {
		width: 18%;
	}


	.section-title.section-title--u-top::before,
	.section-title.section-title--u-top::after {
		width: 8%;
	}

	.section-title.section-title--ba::before,
	.section-title.section-title--ba::after {
		width: 14%;
	}
	
	.section-title.section-title--ba::before {
    left: 2%;
	bottom: 74%;
}

	.section-title.section-title--ba::after {
    right: 2%;
	bottom: 74%;
}


	.section-title.section-title--orange {
		padding-bottom: 1rem;
		border-bottom: 2.5px solid var(--orange);
	}
	
	.section-title.section-title--reason::before,
.section-title.section-title--reason::after {
	width: 12%;
}
	
	 .section-title.section-title--reason.section-title--jaw::before,
     .section-title.section-title--reason.section-title--jaw::after {
	width: 5%;	
}
	
	 .section-title.section-title--reason.section-title--t::before,
     .section-title.section-title--reason.section-title--t::after {
	width: 14%;	
}
	
.section-title.section-title--jiritsu-top::before,
.section-title.section-title--jiritsu-top::after {
bottom: 15%;
}
}



/*-----------------------------TOP PC-----------------------------*/
/*患者様集合写真*/
.fine__wrap {
	background: url(https://daichidoulabo.com/wp-content/uploads/2026/01/fine-wrap.webp);
	background-repeat: no-repeat;
	background-size: cover;
	padding: 2.5rem;
	margin-top: 4.5rem;
}

.fine__list {
	list-style: none;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1rem;
}

.fine__item {
	width: 31.5%;
}

.fine__intro {
	text-align: center;
	font-size: 4rem;
	font-weight: 600;
	margin-top: 4rem;
}

.fine__intro.fine__intro--second {
	font-size: 5rem;
	margin-top: -1.5rem;
	margin-bottom: 3rem;
}

.fine__attention {
	margin-top: 2rem;
	font-size: 1.5rem;
	color: #847D72;
}

/*推薦者の声*/
.suisen__list {
	list-style: none;
	margin-top: 4rem;
	display: grid;
	gap: 3.2rem;
}

.susen__item {
	padding: 3rem 4rem;
	border: 4px solid var(--orange);
	border-radius: 25px;
	overflow: hidden;
}

.suisen__title {
	text-align: center;
	font-size: 3rem;
	font-weight: 600;
	color: var(--orange);
	padding-block: 3rem 2.5rem;
	position: relative;
	z-index: 2;
}

.suisen__title::before {
	position: absolute;
	content: "";
	background: var(--l-orange);
	width: 115%;
	height: 100%;
	left: 50%;
	top: 10%;
	transform: translateX(-50%);
	z-index: -1;
	top: -2%;
}

.suisen__flex {
	display: flex;
	gap: 2rem;
	margin-top: 2.5rem;
}

.suisen__image {
	max-width: 21.4rem;
}

.suisen__texts {}

.suisen__text {
	font-size: 1.8rem;
	line-height: 1.8;
}

.suisen__name-wrap {
	padding: 1rem;
	background: var(--l-orange);
	margin-top: 1.2rem;
}

.susen__name-clinic {
	font-size: 1.5rem;
}

.suisen__name {
	font-size: 1.8rem;
	color: var(--orange);
	font-weight: 600;
}

.suisen__outro {
	text-align: center;
	font-size: 4rem;
	font-weight: 600;
	margin-top: 5rem;
	line-height: 1.4;
}

.suisen__sankaku {
	width: 15%;
	margin: 3.5rem auto 0 auto;
}

/*お声*/
.voice__list {
	margin-top: 4rem;
	display: grid;
	gap: 3rem;
	list-style: none;

}

.voice__item {
	background: #FAF7F4;
	padding: 2.5rem;
	box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
	border-radius: 20px;
}

.voice__image {
	width: 40%;
	float: left;
	margin-right: 2rem;
}

.voice__texts {}

.voice__title {
	font-size: 2.2rem;
	font-weight: 600;
	color: var(--orange);
}

.voice__profile {
	font-size: 1.8rem;
	font-weight: 600;
	padding-bottom: 1rem;
	color: var(--orange);
	position: relative;
}

.voice__profile::after {
	position: absolute;
	content: "";
	background: var(--black);
	height: 1px;
	width: 58%;
	bottom: 0;
	right: 0;
}

.voice__text {
	font-size: 2rem;
	font-weight: 500;
	text-align: justify;
	margin-top: 1.5rem;
}

/*3つの違い*/
.difference {
	margin-top: 12rem;
}

.difference-title {
	font-size: 6.9rem;
	font-weight: 700;
	color: var(--orange);
	width: 52%;
	margin-left: auto;
	position: relative;
	line-height: 1.4;
}

.difference-title::before {
	position: absolute;
	content: "";
	background: url(https://daichidoulabo.com/wp-content/uploads/2026/01/d-1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	width: 34.5rem;
	height: 33.2rem;
	left: -88%;
	bottom: 0;
}

.difference-title-o {
	font-size: 2.4rem;
	background: var(--orange);
	color: #ffffff;
	text-align: center;
	padding: 0.8rem 2.5rem;
	border-radius: 50px;
}

.difference-title-s {
	font-size: 5.4rem;
	color: var(--black);
}

@media (max-width: 1260px) {
	.difference-title {
		font-size: 4rem;
		font-weight: 700;
	}

	.difference-title::before {
		width: 28.5rem;
		height: 27.2rem;
	}

	.difference-title-o {
		font-size: 1.7rem;
	}

	.difference-title-s {
		font-size: 4.5rem;
		color: var(--black);
	}

}


.difference__list {
	list-style: none;
	padding-top: 3rem;
	border-top: 4px solid var(--orange);
	display: grid;
	gap: 4.3rem;
}

.difference__item {}

.difference__sub-title {
	font-size: 4.2rem;
	text-align: center;
	color: var(--orange);
	font-weight: 600;
}

.difference__wrap {
	display: flex;
	justify-content: center;
	gap: 1.5rem;
	margin-top: 1.8rem;
}

.difference__content {
	width: 49.5%;
	text-align: center;
}

.difference__name {
	font-size: 2.6rem;
	font-weight: 600;
	padding-block: 0.8rem;
	color: #ffffff;
	background: #6f6f6f;
}

.difference__text {
    padding-block: 2rem;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.8;
    color: #6A5959;
    background: #DDDDDD;
    min-height: 210px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.difference__content--o .difference__name {
	background: var(--orange);
}

.difference__content--o .difference__text {
	background: #FAF7F4;
	color: var(--orange);
}

.difference__outro {
	width: 90%;
	margin-inline: auto;
}

/*ビフォーアフター*/
.ba__list {
	margin-top: 4rem;
	display: grid;
	gap: 6rem;
	list-style: none;
}

.ba__title {
	text-align: center;
	background: #57ab6f;
	padding-block: 2rem;
	font-size: 3rem;
	color: #ffffff;
	margin-top: 2rem;
	font-weight: 600;
}

.ba__attention {
	text-align: right;
	font-size: 1.5rem;
	margin-top: 1.2rem;
}

.ba__images {
display:flex;
gap:2rem;
}

.ba__bottom {
padding-block:1rem;
text-align:center;
font-size:3.2rem;
background:#6A5959;
color:#ffffff;
}

.ba__bottom.ba__bottom--after {
background:var(--orange)	;
}

.ba__texts {
margin-top:3rem;
text-align:center;
}

.ba__date {
font-size:2.6rem;
font-weight:600;
}

.ba__date span {
font-size:3.4rem;
font-weight:700;
color:#ff5e5e;
}

.ba__profile {
margin-top:1.5rem;
font-size:2.4rem;
}

/*オファー*/
.gold-title {
	background: var(--brown);
	text-align: center;
	color: #ffffff;
	font-size: 4rem;
	font-weight: 500;
	padding-block: 2rem;
}

.offer {
	text-align:center;
}

p.offer__price {
	position: relative;
	font-size: 8rem;
	color: var(--red);
	font-weight:600;
	text-align: center;
	padding-left: 1em;
	margin:4rem 0 0 0;	
	display:inline-block;
}

p.offer__price span {
	font-size: 40%;
	padding-left: 0.3em;
}

p.offer__price:before {
    position: absolute;
    content: "";
    background: url(https://daichidoulabo.com/wp-content/uploads/2026/03/offer-first.webp) no-repeat left top / cover;
     width: 0.4em;
    height: 0.8em;
    top: 0.9em;
    left: 0.5em;
    transform: translateY(-50%);
}

p.offer__usually {
	margin-top: -1.4em;
	text-align:center;
	font-size: 2.2rem;
    font-weight: 600;
    margin-right: 8em;
}

p.offer__first-come {
	font-size: 3rem;
	font-weight:600;
	text-align:center;
	margin-top:3rem;
}

p.offer__rest {
	font-size:6rem;	
	font-weight:600;
	color: var(--red);
	text-align:center;
}

.offer__image {
	margin-top: 4rem;
}

/*アクセス*/
.access figure {
	margin-top: 2.5rem;
}

.access__table {
	margin-top: 3rem;
}

.access__table table th,
.access__table table td {
	font-size: 2.3rem;
	vertical-align: middle;
	padding: 1.2rem 2.5rem !important;
	border: 1px solid var(--black);
	font-weight: 500;
}

.access__table table th {
	text-align: center;
	font-weight: 500;
	color: var(--orange);
	background: var(--l-orange);
	width: 26%;
}

.access__map {
	margin-top: 4rem;
	position: relative;
	width: 100%;
	padding: calc(530 / 800 * 100%) 0 0;
}

.access__map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*コンタクト*/
.contact {
	display: grid;
	gap: 3rem;
	width: 55%;
	margin-inline: auto;
}

.contact__btn img {
	filter: drop-shadow(0 3px 6px rgba(0, 0, 0, .16));
}


/*-----------------------------TOP TB-----------------------------*/
@media (max-width: 1024px) {
	.suisen__text {
		font-size: 1.8rem;
	}

	.difference__text {
		font-size: 2.2rem;
	}
}


/*-----------------------------TOP SP-----------------------------*/
@media (max-width: 768px) {

	/*患者様集合写真*/
	.fine__wrap {
		padding: 1.5rem;
		margin-top: 2.5rem;
	}

	.fine__list {
		flex-wrap: wrap;
		gap: 0.7rem;
	}

	.fine__intro {
		text-align: center;
		font-size: 3rem;
		margin-top: 2rem;
		line-height: 1.4;
	}

	.fine__intro.fine__intro--second {
		font-size: 3.6rem;
		margin-bottom: 1.8rem;
		margin-top: -0.8rem;
	}

	.fine__attention {
		margin-top: 1.4rem;
		font-size: 1.2rem;
	}

	/*推薦者の声*/
	.suisen__list {
		margin-top: 2.5rem;
		gap: 2.2rem;
	}

	.susen__item {
		padding: 2.5rem 2.5rem;
		border: 2.5px solid var(--orange);
		border-radius: 15px;
	}

	.suisen__title {
		font-size: 2.2rem;
		padding-block: 2rem 1.5rem;
	}

	.suisen__title::before {
		width: 125%;
		top: 2%;
	}

	.suisen__flex {
		display: flex;
		flex-direction: column;
		gap: 2rem;
		margin-top: 2.5rem;
		align-items: center;
	}

	.suisen__image {
		max-width: 80%;
		margin-inline: auto;
	}

	.suisen__texts {}

	.suisen__text {
		font-size: 1.9rem;
		line-height: 1.7;
	}

	.suisen__name-wrap {
		padding: 1.2rem;
		margin-top: 1.5rem;
	}

	.susen__name-clinic {
		font-size: 1.8rem;
	}

	.suisen__name {
		font-size: 2.2rem;
	}

	.suisen__outro {
		font-size: 2.6rem;
		margin-top: 3.2rem;
	}

	.suisen__sankaku {
		width: 15%;
		margin: 2.8rem auto 0 auto;
	}

	/*お声*/
	.voice__list {
		margin-top: 2.5rem;
		gap: 2.5rem;
	}

	.voice__item {
		padding: 2rem;
		border-radius: 15px;
	}

	.voice__image {
		width: 80%;
		float: none;
		margin: 0 auto;
	}

	.voice__texts {
		margin-top: 2rem;
	}

	.voice__title {
		font-size: 2.4rem;
		text-align: center;
	}

	.voice__profile {
		text-align: center;
		padding-bottom: 0.5rem;
	}

	.voice__profile::after {
		position: absolute;
		content: "";
		background: var(--black);
		height: 1px;
		width: 100%;
		bottom: 0;
		right: 0;
	}

	.voice__text {
		margin-top: 1.5rem;
	}

	/*3つの違い*/
	.difference {
		margin-top: 10rem;
	}

	.difference-title {
		font-size: 3.3rem;
		font-weight: 700;
	}

	.difference-title::before {
		width: 20.5rem;
		height: 19.2rem;
	}

	.difference-title-o {
		font-size: 1.2rem;
		padding: 0.7rem 2rem;
	}

	.difference-title-s {
		font-size: 3rem;
		color: var(--black);
	}

	.difference__list {
		padding-top: 2.8rem;
		border-top: 3px solid var(--orange);
		gap: 8rem;
	}

	.difference__sub-title {
		font-size: 2.5rem;
		text-align: center;
		color: var(--orange);
		font-weight: 600;
	}

	.difference__wrap {
		gap: 0.8rem;
		margin-top: 0.6rem;
	}

	.difference__content {
		width: 49.5%;
	}

	.difference__name {
		font-size: 1.75rem;
		padding-block: 0.6rem;
	}

	.difference__text {
		padding-block: 0rem;
		font-size: 1.6rem;
		line-height: 1.8;
		height: 100px;
		min-height: 120px;
	}

	.difference__content--o .difference__name {
		background: var(--orange);
	}

	.difference__content--o .difference__text {
		background: #FAF7F4;
		color: var(--orange);
	}

	.difference__outro {
		width: 90%;
		margin-inline: auto;
		margin-top: 5rem;
	}

	/*ビフォーアフター*/
	.ba__list {
		margin-top: 2rem;
		gap: 2.8rem;
	}

	.ba__title {
		padding-block: 1rem;
		font-size: 2rem;
		margin-top: 1rem;
	}

	.ba__attention {
		text-align: right;
		font-size: 1.5rem;
		margin-top: 0.8rem;
	}
	
	.ba__images {
display:flex;
gap:1.5rem;
}

.ba__bottom {
padding-block:0.5rem;
font-size:2.6rem;
}

.ba__texts {
margin-top:2rem;
}

.ba__date {
font-size:2.4rem;
}

.ba__date span {
font-size:3rem;
}

.ba__profile {
margin-top:1rem;
font-size:2rem
}

	/*オファー*/
	.gold-title {
		font-size: 2.8rem;
		padding-block: 1.2rem;
	}
	
	p.offer__price {
	font-size: 5.2rem;
	padding-left: 1em;
	margin:3rem 0 0 0;	
}

p.offer__price span {
	font-size: 40%;
	padding-left: 0.3em;
}

p.offer__usually {
	margin-top: -1.4em;
	font-size: 1.6rem;
    margin-right: 7.5em;
}

p.offer__first-come {
	font-size: 2.4rem;
	font-weight:600;
	text-align:center;
	margin-top:2rem;
}

p.offer__rest {
	font-size:3rem;	
}

.offer__price {
    margin-top: 3rem;
    width: 85%;
}
	/*アクセス*/
	.access figure {
		margin-top: 1.5rem;
	}

	.access__table {
		margin-top: 2.5rem;
	}

	.access__table table th,
	.access__table table td {
		padding: 1rem 1.4rem !important;
	}

	.access__table table th {
		text-align: center;
		font-weight: 500;
		color: var(--orange);
		background: var(--l-orange);
		width: 26%;
		font-size: 1.8rem;

	}

	.access__table table td {
		font-size: 1.7rem;

	}

	.access__map {
		margin-top: 2.5rem;
	}

	.contact {
		gap: 2rem;
		width: 80%;
	}
}


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

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


/* ◆◆◆ フッターボタン ◆◆◆ */
.footer__contact {
	position: fixed;
	bottom: 0;
	right: 0;
	width: 100%;
	z-index: 10;
}

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

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

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

.footer__btn2-item {
	transition: 0.6s;
}

.footer__btn2-item:hover {
	transform: scale(1.05, 1.05);
}

/* ◆◆◆ /フッターボタン ◆◆◆ */


/* ◆◆◆ 下層ページ ◆◆◆ */
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.7em 0 0 !important;
	border-bottom: solid 3px brown;
}

p.bo-page-title {
	margin-inline: 5%;
}

.p-archive__title p.c-pageTitle__main:first-letter,
p.bo-page-title:first-letter {
	font-size: clamp(2rem, 3.4vw, 2.8rem);
	color: brown;
}

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

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

.p-breadcrumb {
	padding: 1rem !important;
}

/* ◆◆◆ 対応症状リスト ◆◆◆ */
.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:3rem 0 0 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:#79ac8d;
	display: block;
	padding: 0.6em;
	transition: 0.6s;
}

ul.shojo__list li a:hover {
	opacity: 0.6;
}

/* ◆◆◆ /対応症状リスト ◆◆◆ */


/* ◆◆◆ 執筆者情報 ◆◆◆ */
.l-main__body>:last-child {
	padding-bottom: 0 !important;
}

.writer {
	background-color: #f6fcf8 !important;
	height: 425px;
	padding: 3em 6% 8rem 6% !important;
}

.writer__title {
	margin-bottom: 2rem;
}

@media (max-width: 768px) {
	.writer {
		width:95%;
		height: 530px;
		padding: 3em 5% 8rem 4% !important;
	}
}

/*-----------------------------TOP 下層ページ-----------------------------*/
/*なぜ？*/
.underpage-top {
	margin-top: 5rem;
}

.underpage-top figure {
	margin-top: 4rem;
}

/*お悩み*/
.problem__list {
	list-style: none;
	padding: 4rem 6rem 4rem 10rem;
	background: #F8F8F8;
	box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
	margin-top: 5rem;
	display: grid;
	gap: 1rem;
}

.problem__item {
	font-size: 2.5rem;
	position: relative;
	font-weight: normal;
	text-align: left;
	padding-left: 2rem;
}

.problem__item::before {
	position: absolute;
	content: "";
	background: url(https://daichidoulabo.com/wp-content/uploads/2026/03/chack-orange.webp);
	background-size: contain;
	background-repeat: no-repeat;
	width: 2.6rem;
	height: 2.6rem;
	top: 50%;
	transform: translateY(-50%);
	left: -2%;
}

.problem__outro {
	text-align: center;
	font-size: 3rem;
	font-weight: 500;
	margin-top: 5rem;
}

.problem__sankaku {
	width: 20%;
	margin-inline: auto;
	margin-top: 5rem;
}

/*理由*/
.reason__list {
	list-style: none;
	display: grid;
	gap: 4rem;
	padding-inline: 2rem;
	margin-top: 5rem;
}

.reason__item {}

.reason__title {
	background: var(--orange);
	padding: 1rem 2rem;
	color: #ffffff;
	font-size: 2.7rem;
	font-weight: 500;
}

.reason figure {
	margin-top: 2.5rem;
}

.reason__text {
	margin-top: 2rem;
	font-size: 2rem;
	text-align: justify;
	font-weight: 500;
}







/*-----------------------------タブレット 下層ページ-----------------------------*/
@media (max-width: 1024px) {
	.problem__list {
		padding: 3rem 3rem 3rem 4rem;
	}
	
	.problem__item {
	font-size: 2.1rem;
}
}



/*-----------------------------SP 下層ページ-----------------------------*/
@media (max-width: 768px) {

	/*なぜ？*/
	.underpage-top {
		margin-top: 4rem;
	}

	.underpage-top figure {
		margin-top: 2rem;
	}

	/*お悩み*/
	.problem__list {
		list-style: none;
		padding: 1.8rem 1.8rem 1.8rem 3rem;
		margin-top: 2.5rem;
	}

	.problem__item {
		font-size: 1.7rem;
		padding-left: 2rem;
	}

	.problem__item::before {
		width: 2rem;
		height: 2rem;
		top: 50%;
		transform: translateY(-50%);
		left: -2%;
	}
	
	.problem__item.problem__item--sp::before {
		top:26%;
	}



	/*理由*/
	.reason__list {
		gap: 2.5rem;
		padding-inline: 0;
		margin-top: 2.5rem;
	}

	.reason__title {
		padding: 0.5rem 1rem;
		font-size: 2.2rem;
	}

	.reason figure {
		margin-top: 1.5rem;
	}

	.reason__text {
		margin-top: 1rem;
		font-size: 1.9rem;
		font-weight: 500;
		line-height: 1.6;
	}
}

.c-copyright {
    font-size: 1rem;
}

/*初めての方へページ*/
.first__flex {
display:flex;
gap:2rem;
margin-top:4rem;
}

.first__flex.first__flex--r {
	flex-direction:row-reverse;
}

.first__image {
width:35%;
flex-shrink:1;
}

.first__texts {
width:70%;	
}

.first__text {
font-size:1.8rem;
}


.first__text--m {
margin-top:1.5rem;
}

@media (max-width: 768px){
.first__flex {
display:flex;
gap:2rem;
margin-top:2rem;
flex-direction:column;
}

.first__flex.first__flex--r {
	flex-direction:column;
}

.first__image {
width:80%;
margin-inline:auto;
}

.first__texts {
width:100%;	
}

.first__text {
font-size:1.9rem;
}


.first__text--m {
margin-top:1.5rem;
}
}

/*アクセスページ*/
.access__photos {
	display: flex;
	justify-content: center;
	gap: 1rem;
	margin-top: 5rem;
	padding-inline: 1rem;
}

.access__photo {
	width:32%;
}

.access__photo img {
	border: 2px solid var(--orange);
}

@media (max-width: 768px){
.access__photos {
		flex-direction: column;
		gap: 0.8rem;
		margin-top: 3rem;
		padding-inline: 0;
	}
	
	.access__photo {
    width: 100%;
}

	.access__photos-sp {
		display: flex;
		gap: 0.6rem;
	}

	.access__photo img {
		border: 2px solid var(--orange);
	}

	.access__photo-sp img {
		border: 2px solid var(--orange);
	}

}

/*投稿ページ調整*/
/*一覧調整*/
.p-archive .p-entry__head {
    margin-top: 3rem !important;
}

.p-archive__title.c-pageTitle {
    margin-top: 3rem !important;
}

.p-archive .c-pageTitle__main {
    font-size: 2.4rem;
    font-weight: 500;
}

.p-archive .p-postList .p-postList__title {
    font-size: 1.9rem;
    font-weight: 500;
}

.p-archive p {
    font-size: 1.6rem;
}

/*個別調整*/
.single-post .p-entry__head {
    margin-top: 3rem !important;
}

.single-post .c-pageTitle__main {
    font-size: 2.4rem;
    padding-left: 2rem;
    font-weight: 500;
}

.single-post .c-postMetas {
    padding-left: 2rem;
    font-size: 1.4rem;
}

.p-entry__thumb {
    width: 85%;
    margin-inline: auto;
}

.single-post .c-postContent {
    padding-inline: 3rem;
}

.single-post .c-postContent p {
    font-size: 1.8rem;
}

.blog-bo {
    font-size: 12px;
    margin-top: 100px;
}

.blog-bo a {
    color: #b3b3b3;
}

.single-post .contact {
    margin-top: 8rem;
}

/*ページネーション*/
.page-numbers:not(.dots).current,
.page-numbers:not(.dots):hover,
.post-page-numbers:not(.dots).current,
.post-page-numbers:not(.dots):hover {
    background-color: var(--green) !important;
}

@media (max-width: 768px) {

    /*一覧調整*/
    .p-archive__title.c-pageTitle {
        margin-top: 1rem !important;
    }

    .p-archive .p-postList .p-postList__title {
        font-size: 1.8rem;
    }

    .p-archive p {
        font-size: 1.5rem;
    }

    /*個別調整*/
    .single-post .p-entry__head {
        margin-top: 1rem !important;
    }

    .single-post .c-pageTitle__main {
        padding-left: 0;
    }

    .single-post .c-postMetas {
        padding-left: 0;
    }

    .p-entry__thumb {
        width: 90%;
    }

    .single-post .c-postContent {
        padding-inline: 0;
    }

    .single-post .inner {
        padding: 0;
    }

    .single-post .contact {
        margin-top: 5rem;
    }
}

/*施術の流れ*/
.flow__list {
    list-style: none;
    display: grid;
    gap: 4rem;
    margin-top: 5rem;
    padding: 0 0 0 3rem;
    position: relative;
}

.flow__list:before {
    content: '';
    position: absolute;
    left: 0;
    border-left: 1px solid;
    border-image: linear-gradient(to bottom, #DBD6C8 0%, #C3BCAD 100%);
    border-image-slice: 1;
    top: 0;
    left: -1%;
    height: 88%;
}

.flow__item {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 3rem;
}

.flow__texts {
    width: 65%
}

.flow__title {
    font-size: 2.4rem;
    font-weight: 500;
    padding: 0 0 0.5rem 0;
    border-bottom: 1px solid #d3d3d3;
    position: relative;
}

.flow__title::before {
    position: absolute;
    content: "1";
    color: #ffffff;
    background: var(--orange);
    line-height: 1.6;
    padding: 0.3rem 1.2rem;
    border-radius: 50px;
    font-size: 2.2rem;
    left: -12%;
    top: 50%;
    transform: translatey(-50%);
}

.flow__item:nth-child(2) .flow__title::before {
    content: "2";
}

.flow__item:nth-child(3) .flow__title::before {
    content: "3";
}

.flow__item:nth-child(4) .flow__title::before {
    content: "4";
}

.flow__item:nth-child(5) .flow__title::before {
    content: "5";
}

.flow__item:nth-child(6) .flow__title::before {
    content: "6";
}

.flow__text {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 2rem;
    text-align: justify;
}

.flow__item figure {
    width: 30%;
}

@media (max-width: 768px) {
    .flow__list {
        list-style: none;
        display: grid;
        gap: 4rem;
        margin-top: 5rem;
        padding: 0 0 0 3rem;
        position: relative;
    }

    .flow__list:before {
        left: 0%;
        height: 85%;
    }

    .flow__item {
        flex-direction: column;
        gap: 3rem;
    }

    .flow__texts {
        width: 100%;
    }

    .flow__title {
        font-size: 2.5rem;
    }


    .flow__text {
        font-size: 2rem;
        line-height: 1.6;
    }

    .flow__item figure {
        width: 80%;
        margin-inline: auto;
    }

}
