@charset "utf-8";
/* LP — 健康の秋リスタートキャンペーン */

body.page-template-page-lp,
body.page-template-page-lp-php {
	background: #f4f1ee;
	font-family: "Noto Sans JP", "myfont", sans-serif;
	color: #595757;
}

body.page-template-page-lp .header-wrap,
body.page-template-page-lp-php .header-wrap,
body.page-template-page-lp footer,
body.page-template-page-lp-php footer,
body.page-template-page-lp .banner-reservation,
body.page-template-page-lp-php .banner-reservation,
body.page-template-page-lp .footer-link,
body.page-template-page-lp-php .footer-link {
	display: none !important;
}

.lp-page {
	max-width: 345px;
	margin: 0 auto;
	background: #fff;
	padding-top: 0;
	overflow: hidden;
	container-type: inline-size;
	container-name: lp;
}

.lp-page img {
	border: 0;
	vertical-align: top;
	object-fit: cover;
	max-width: 100%;
	height: auto;
}

.lp-header {
	position: fixed;
	top: 0;
	width: 100%;
	max-width: 345px;
	z-index: 100;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 47px;
	height: 13.663cqi;
	padding: 0 13px 0 16px;
	padding: 0 3.78cqi 0 4.59cqi;
	background: #fff;
	box-sizing: border-box;
}

.lp-header__logo {
	display: block;
	width: 32.332cqi;
	height: 5.797cqi;
}

.lp-header__logo img {
	width: 32.332cqi;
	height: 5.797cqi;
	max-width: none;
	display: block;
}

.lp-header__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 37.96cqi;
	height: 9.317cqi;
	padding: 0;
	border-radius: 4.65cqi;
	background: #ea764e;
	color: #fff;
	font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
	font-size: 3.198cqi;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1;
}

/* Hero / FV */
.lp-hero {
	position: relative;
	margin: 0;
	line-height: 0;
}

.lp-hero__photo {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
	object-fit: contain;
	object-position: top center;
}

/* FV 下の帯 */
.lp-notice {
	margin: 0;
	background: #ea764e;
	padding: 2.62cqi 4.65cqi;
	color: #fff;
	font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
	font-size: 4.36cqi;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.4;
	text-align: center;
}

/* LINE CTA */
.lp-cta {
	background: #e8f7ee;
	padding: 3.52cqi 9.3cqi 2.76cqi;
	text-align: center;
}

.lp-cta h2 {
	margin: 0 0 3.2cqi;
	color: #06c755;
	font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
	font-size: 5.814cqi;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.4;
}

.lp-cta__card {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #fff;
	border-radius: 4.2cqi;
	padding: 2.03cqi 1.74cqi 2.03cqi 5.23cqi;
	box-shadow: none;
	text-align: left;
}

.lp-cta__sub {
	display: block;
	font-size: 3.227cqi;
	font-weight: 400;
	color: #231815;
	margin-bottom: 0.87cqi;
	line-height: 1.4;
}

.lp-cta__main {
	display: block;
	color: #06c755;
	font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
	font-size: 3.983cqi;
	font-weight: 700;
	line-height: 1.4;
}

.lp-cta__main em {
	font-style: normal;
	font-size: 5.436cqi;
	font-weight: 700;
}

.lp-cta__card img {
	width: 16.563cqi;
	height: 16.563cqi;
	max-width: none;
	flex: 0 0 16.563cqi;
	margin-top: -1.2cqi;
	margin-bottom: -1.2cqi;
	margin-right: -0.4cqi;
}

/* Campaign */
.lp-campaign {
	background: #fff;
	margin: 0;
	line-height: 0;
}

.lp-campaign__photo {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
	object-fit: contain;
	object-position: top center;
}

/* Worries */
.lp-worries {
	position: relative;
	overflow: hidden;
	background: #fdece8;
}

.lp-worries__top {
	position: relative;
	z-index: 1;
	padding: 7.8cqi 0 14cqi 8.1cqi;
}

.lp-worries__top h2 {
	position: relative;
	z-index: 2;
	margin: 0 8cqi 5.5cqi 0;
	padding: 0 0 2.6cqi;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 5.22cqi;
	font-weight: 700;
	color: #231815;
	line-height: 1.35;
	letter-spacing: 0.02em;
	text-align: center;
	background: url("../../lp/images/worry-underline.png") no-repeat center bottom;
	background-size: 88.5cqi 1.5cqi;
}

.lp-worries__row {
	position: relative;
	min-height: 69cqi;
}

.lp-worries__list {
	position: relative;
	z-index: 2;
	width: 86.3cqi;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lp-worries__list li {
	position: relative;
	margin: 0 0 4.4cqi;
	padding: 0 28cqi 0 7.4cqi;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.88cqi;
	font-weight: 500;
	line-height: 1.32;
	color: #231815;
}

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

.lp-worries__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.15cqi;
	width: 6.1cqi;
	height: 6.1cqi;
	background: url("../../lp/images/worry-check.svg") no-repeat center;
	background-size: contain;
}

.lp-worries__woman {
	position: absolute;
	right: -14cqi;
	bottom: -8cqi;
	z-index: 1;
	width: 52.3cqi;
	height: auto;
	pointer-events: none;
}

.lp-worries__ribbon {
	position: relative;
	z-index: 4;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.2cqi;
	width: 118%;
	margin: -3.2cqi 0 -2.4cqi -9%;
	padding: 3.4cqi 10cqi 3.6cqi 8cqi;
	background: #fff200;
	transform: rotate(-5deg);
	box-shadow: 0 0.4cqi 0 rgba(234, 118, 78, 0.08);
}

.lp-worries__ribbon p {
	margin: 0;
	color: #ed1c24;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.64cqi;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: 0.02em;
	text-align: center;
}

.lp-worries__bang {
	display: block;
	margin: -1.2cqi -2cqi 0 0;
	color: #ed1c24;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14.3cqi;
	font-weight: 900;
	line-height: 0.8;
	transform: rotate(12deg);
}

.lp-worries__bottom {
	position: relative;
	z-index: 1;
	padding: 6.2cqi 0 0;
	background:
		radial-gradient(ellipse 78cqi 52cqi at 100% 92%, rgba(255, 196, 64, 0.7) 0%, rgba(255, 196, 64, 0) 62%),
		radial-gradient(ellipse 70cqi 46cqi at 0% 100%, rgba(255, 140, 70, 0.4) 0%, rgba(255, 140, 70, 0) 64%),
		linear-gradient(105deg, #e95295 0%, #ef6d7a 28%, #f5a142 68%, #f9a11b 100%);
	overflow: hidden;
	min-height: 86cqi;
}

.lp-worries__warn {
	position: relative;
	z-index: 4;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 0 7.3cqi;
	padding: 0 3.2cqi;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.83cqi;
	font-weight: 500;
	line-height: 1.31;
	letter-spacing: 0;
	text-align: center;
}

.lp-worries__warn span {
	display: block;
	white-space: nowrap;
	margin: 4px auto;
}

.lp-worries__solve {
	position: relative;
	z-index: 4;
	margin: 0 1.2cqi 8cqi 35.7cqi;
	font-family: "Noto Sans JP", sans-serif;
	text-align: left;
	top: 34px;
}

.lp-worries__kicker,
.lp-worries__brand,
.lp-worries__em {
	margin: 0;
	color: #fff768;
	white-space: nowrap;
}

.lp-worries__kicker {
	padding-left: 2.2cqi;
	font-size: 3.83cqi;
	font-weight: 700;
	line-height: 1.47;
}

.lp-worries__brand {
	padding-left: 0;
	margin-bottom: 3.8cqi;
	font-size: 3.83cqi;
	font-weight: 700;
	line-height: 1.47;
	letter-spacing: 0.01em;
}

.lp-worries__em {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
	padding-left: 2.2cqi;
	font-size: 7.86cqi;
	font-weight: 900;
	line-height: 1.44;
	letter-spacing: 0.02em;
	padding-top: 12px;
}

.lp-worries__em-line {
	position: relative;
	display: inline-block;
	padding: 0 0.6cqi 0.2cqi;
	background-image: linear-gradient(transparent 52%, rgba(233, 84, 50, 0.88) 52%, rgba(233, 84, 50, 0.88) 82%, transparent 82%);
}

.lp-worries__dot {
	position: relative;
}

.lp-worries__dot::before {
	content: "";
	position: absolute;
	top: -1.35cqi;
	left: 50%;
	width: 1.55cqi;
	height: 1.55cqi;
	border-radius: 50%;
	background: #fff;
	transform: translateX(-50%);
}

.lp-worries__staff {
	position: absolute;
	left: -2cqi;
	bottom: 0;
	z-index: 3;
	width: 44cqi;
	height: auto;
	pointer-events: none;
}

/* Reasons */
.lp-reasons {
	padding: 0 0 4cqi;
	background: #fff;
	overflow: hidden;
}

.lp-reasons > h2 {
	margin: 0;
	padding: 1.8cqi 4cqi;
	background: #ea764e;
	color: #fff;
	text-align: center;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 6.38cqi;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.45;
}

.lp-reason {
	position: relative;
	padding: 15.3cqi 0 6cqi;
	overflow: hidden;
}

.lp-reason__num {
	position: absolute;
	left: 5.8cqi;
	top: 11.1cqi;
	z-index: 0;
	width: 11.3cqi;
	height: auto;
	pointer-events: none;
}

.lp-reason h3 {
	position: relative;
	z-index: 1;
	margin: 0 2cqi 8.4cqi 19cqi;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.31cqi;
	font-weight: 700;
	line-height: 1.44;
	letter-spacing: 0.01em;
}

.lp-reason__main {
	position: relative;
	z-index: 1;
	min-height: 40.9cqi;
	padding: 0 32cqi 0 8.3cqi;
}

.lp-reason__main > p,
.lp-reason__copy p {
	margin: 0;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.2cqi;
	font-weight: 400;
	line-height: 2.07;
	letter-spacing: 0.02em;
}

.lp-reason__photo {
	position: absolute;
	top: -2.6cqi;
	right: -2.6cqi;
	z-index: 0;
	width: 39.15cqi;
	height: 40.91cqi;
	overflow: hidden;
	border-radius: 20.46cqi 0 0 20.46cqi;
}

.lp-reason__photo::after {
	content: "";
	position: absolute;
	top: -18%;
	left: -28%;
	width: 78%;
	height: 78%;
	background: radial-gradient(circle, rgba(255, 176, 196, 0.55) 0%, rgba(255, 176, 196, 0) 68%);
	mix-blend-mode: screen;
	pointer-events: none;
}

.lp-reason__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.lp-reason__note {
	position: relative;
	z-index: 1;
	margin: 3.5cqi 8cqi 0 8.3cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.53cqi;
	font-weight: 400;
	line-height: 1.91;
}

.lp-reason__note span {
	padding-left: 1em;
}

.lp-reason__box {
	position: relative;
	z-index: 1;
	margin: 5.5cqi 5.6cqi 0 8.8cqi;
	padding: 3cqi 3.6cqi 3.4cqi 4.6cqi;
	border: 1.6px solid transparent;
	border-radius: 5.8cqi;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(100deg, #ee88a6 0%, #eaa54e 100%) border-box;
}

.lp-reason__box p {
	margin: 0 0 2.9cqi;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.45cqi;
	font-weight: 700;
	line-height: 1.43;
	text-align: center;
	letter-spacing: 0.02em;
}

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

.lp-reason__box li {
	margin: 0;
	padding: 0;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.95cqi;
	font-weight: 400;
	line-height: 2.07;
}

.lp-reason__box li::before {
	content: "・";
}

.lp-reason--rev {
	padding: 6.3cqi 0 8cqi;
}

.lp-reason--rev .lp-reason__num {
	left: auto;
	right: -0.4cqi;
	top: 0;
	width: 18.35cqi;
}

.lp-reason--rev .lp-reason__main {
	min-height: 40.9cqi;
	padding: 8.7cqi 3.6cqi 0 41.2cqi;
}

.lp-reason--rev .lp-reason__copy {
	position: relative;
	z-index: 1;
}

.lp-reason--rev h3 {
	margin: 0 0 4.8cqi;
}

.lp-reason--rev .lp-reason__photo {
	top: 5.2cqi;
	left: 0;
	right: auto;
	border-radius: 0 20.46cqi 20.46cqi 0;
}

.lp-reason--rev .lp-reason__photo::after {
	display: none;
}

.lp-reasons .lp-reason:nth-child(4) .lp-reason__num {
	left: 2.2cqi;
	width: 17.8cqi;
}

.lp-reasons .lp-reason:nth-child(4) > h3 {
	margin-left: 12.2cqi;
}

.lp-reasons .lp-reason:nth-child(5) .lp-reason__photo {
	width: 35.6cqi;
}

/* Price */
.lp-price {
	position: relative;
	padding: 0 4.6cqi 8.7cqi;
	background:
		radial-gradient(ellipse 70cqi 48cqi at 8% 38%, #ffe8c4 0%, transparent 72%),
		radial-gradient(ellipse 64cqi 42cqi at 96% 72%, #ffd4b8 0%, transparent 70%),
		#fff8f0;
	text-align: center;
	overflow: hidden;
}

.lp-price__hero {
	position: relative;
	margin: 0 -4.6cqi 1.2cqi;
}

.lp-price__hero img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center 30%;
	max-width: none;
}

.lp-price__hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, #fff8f0 0%, transparent 26%, transparent 68%, #fff8f0 100%);
	pointer-events: none;
}

.lp-price h2 {
	position: relative;
	margin: 0 0 4.2cqi;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 6.4cqi;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.3;
}

.lp-price__card {
	width: 76.7cqi;
	margin: 0 auto 3.8cqi;
	overflow: hidden;
	background: #fff;
	border: 1.5px solid #f2b08c;
	border-radius: 3.5cqi;
}

.lp-price__card h3 {
	margin: 0;
	padding: 1.7cqi 2cqi;
	background: linear-gradient(90deg, #f08298 0%, #f4b35d 100%);
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.35cqi;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.35;
}

.lp-price__yen {
	margin: 3.2cqi 0 0;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 6.4cqi;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.02em;
}

.lp-price__yen span {
	font-size: 13.3cqi;
}

.lp-price__tax,
.lp-price__sub {
	margin: 0;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.13cqi;
	font-weight: 400;
	line-height: 1.4;
}

.lp-price__tax {
	margin: 1cqi 0 3.5cqi;
}

.lp-price__card:has(.lp-price__sub) .lp-price__tax {
	margin-bottom: 0.6cqi;
}

.lp-price__sub {
	margin-bottom: 2.4cqi;
}

.lp-price__family-tag {
	margin: -1cqi 0 2.4cqi;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.77cqi;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.lp-price__reassure {
	margin: 1.2cqi 0 4.2cqi;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.35cqi;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: 0.04em;
}

.lp-price__btn {
	position: relative;
	display: grid;
	grid-template-columns: 16.8cqi 1fr 6cqi;
	align-items: center;
	width: 95.6cqi;
	margin: 0 auto;
	padding: 1.4cqi 2.2cqi 1.6cqi 1.6cqi;
	background: #ea764e;
	border-radius: 1.4cqi;
	box-shadow: 0.7cqi 0.7cqi 0 #d45f38;
	color: #fff;
	text-align: center;
}

.lp-price__badge {
	position: relative;
	display: block;
	width: 16.8cqi;
	height: 16.8cqi;
}

.lp-price__badge img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
}

.lp-price__badge span {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ea5500;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.64cqi;
	font-weight: 900;
	letter-spacing: 0.04em;
	transform: rotate(-8deg);
}

.lp-price__btn-text {
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 5.22cqi;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.06em;
}

.lp-price__arrow {
	font-size: 6.4cqi;
	font-weight: 400;
	line-height: 1;
}

/* Steps */
.lp-steps {
	padding: 8.7cqi 5.8cqi 10.4cqi;
	background: #fff;
}

.lp-steps h2 {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 0 7cqi;
	text-align: center;
	line-height: 1.35;
}

.lp-steps__kicker,
.lp-steps__title {
	display: block;
	font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
	font-size: 7.54cqi;
	font-weight: 700;
	letter-spacing: 0.06em;
}

.lp-steps__kicker {
	color: #ea764e;
}

.lp-steps__title {
	color: #d56a42;
}

.lp-steps__list {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lp-steps__list::before {
	content: "";
	position: absolute;
	top: 16.5cqi;
	bottom: 16.5cqi;
	left: 16.5cqi;
	z-index: 0;
	width: 0.58cqi;
	background: #ea764e;
	transform: translateX(-50%);
}

.lp-steps__list li {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 33cqi minmax(0, 1fr);
	align-items: flex-start;
	margin: 0 0 7.2cqi;
}

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

.lp-steps__list img {
	position: relative;
	z-index: 2;
	width: 33cqi;
	height: 33cqi;
	max-width: none;
	border: 1.16cqi solid #ea764e;
	border-radius: 50%;
	box-sizing: border-box;
	object-fit: cover;
	background: #fff;
}

.lp-steps__body {
	padding-top: 0.4cqi;
	margin-left: -7.2cqi;
}

.lp-steps__label {
	display: flex;
	align-items: baseline;
	gap: 1.2cqi;
	margin: 0 0 0.6cqi 8.4cqi;
	line-height: 1;
}

.lp-steps__label span {
	color: #e39aaa;
	font-family: "Dancing Script", cursive;
	font-size: 5.2cqi;
	font-weight: 500;
	font-style: normal;
	line-height: 1;
}

.lp-steps__label em {
	color: #e8a44a;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 7.2cqi;
	font-style: italic;
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1;
}

.lp-steps__list h3 {
	display: block;
	width: calc(90% + 7.2cqi);
	margin: 0 0 1.7cqi;
	padding: 1.45cqi 4.2cqi 1.45cqi 9cqi;
	background: #ea764e;
	border-radius: 0 999px 999px 0;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.35cqi;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.35;
	box-sizing: border-box;
}

.lp-steps__list p {
	margin: 0 0 0 8.4cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.48cqi;
	font-weight: 400;
	line-height: 1.7;
}

.lp-steps__reassure {
	margin-top: 0.8cqi;
	color: #ea764e;
	font-weight: 700;
}

/* Q&A */
.lp-qa {
	padding: 6.5cqi 7.6cqi 9.4cqi;
	background: linear-gradient(90deg, #ee88a6 0%, #eaa54e 100%);
}

.lp-qa h2 {
	margin: 0;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 9.1cqi;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.48;
	text-align: center;
}

.lp-qa__sub {
	margin: 0 0 3cqi;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 5.12cqi;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.48;
	text-align: center;
}

.lp-qa dl {
	margin: 0;
}

.lp-qa dl > div {
	margin: 0 0 4.3cqi;
	padding: 1.7cqi 3.1cqi 2.8cqi 3.8cqi;
	background: #fff;
	border-radius: 3.4cqi;
	box-shadow: 0.69cqi 0.69cqi 0 rgba(0, 0, 0, 0.2);
}

.lp-qa dl > div:last-child {
	margin-bottom: 0;
}

.lp-qa dt,
.lp-qa dd {
	display: grid;
	grid-template-columns: 8.1cqi minmax(0, 1fr);
	column-gap: 3.3cqi;
	align-items: start;
	margin: 0;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
}

.lp-qa dt {
	margin-bottom: 1.8cqi;
	font-size: 3.44cqi;
	font-weight: 700;
	line-height: 1.5;
}

.lp-qa dd {
	font-size: 2.9cqi;
	font-weight: 400;
	line-height: 1.77;
}

.lp-qa dt span,
.lp-qa dd span {
	width: auto;
	height: auto;
	margin-top: -0.4cqi;
	padding: 0;
	border-radius: 0;
	background: none;
	color: #595757;
	font-family: "Zen Old Mincho", "Noto Serif JP", serif;
	font-size: 8.39cqi;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0;
}

.lp-qa dd span {
	color: #ea764e;
}

/* LINE consult */
.lp-consult {
	padding: 9.9cqi 4.6cqi 8.7cqi;
	background: #fff;
	text-align: center;
}

.lp-consult h2 {
	margin: 0 0 4.6cqi;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.44cqi;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.48;
}

.lp-consult p {
	margin: 0 0 5.7cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.9cqi;
	font-weight: 400;
	line-height: 2.01;
	letter-spacing: 0.02em;
}

.lp-consult__btn {
	display: grid;
	grid-template-columns: 14.6cqi 1fr 4.8cqi;
	align-items: center;
	width: 89.7cqi;
	height: 23.1cqi;
	margin: 0 auto;
	padding: 0 4.8cqi 0 4.8cqi;
	background: #06c755;
	border-radius: 999px;
	color: #fff;
	text-decoration: none;
	box-sizing: border-box;
}

.lp-consult__btn img {
	display: block;
	width: 14.55cqi;
	height: 13.83cqi;
	max-width: none;
	object-fit: contain;
}

.lp-consult__btn span {
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 5.46cqi;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: 0.02em;
	text-align: center;
}

.lp-consult__btn small {
	font-size: 5.46cqi;
	font-weight: 400;
}

.lp-consult__arrow {
	font-size: 5.69cqi;
	font-weight: 400;
	line-height: 1;
	text-align: right;
}

/* Doctor */
.lp-doctor {
	position: relative;
	padding: 11.6cqi 6.2cqi 14cqi 7.9cqi;
	background: #fff7f2;
	overflow: hidden;
}

.lp-doctor__label {
	margin: 0 0 2.1cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.57cqi;
	font-weight: 400;
	letter-spacing: 0.04em;
	text-align: center;
	line-height: 1.48;
}

.lp-doctor h2 {
	margin: 0 -5cqi 6.7cqi;
	color: #595757;
	font-family: "Zen Old Mincho", "Noto Serif JP", serif;
	font-size: 4.64cqi;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-align: center;
	line-height: 1.45;
	white-space: nowrap;
}

.lp-doctor__body {
	position: relative;
	z-index: 1;
	min-height: 41cqi;
}

.lp-doctor__body p {
	margin: 0;
	padding-right: 8cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.61cqi;
	font-weight: 400;
	line-height: 2.03;
	letter-spacing: 0.02em;
}

.lp-doctor__photo {
	position: absolute;
	right: -4cqi;
	bottom: -32cqi;
	z-index: 2;
	width: 38.8cqi;
	height: 38.8cqi;
	border-radius: 50%;
	object-fit: cover;
	max-width: none;
}

.lp-doctor__profile {
	position: relative;
	z-index: 1;
	width: 56cqi;
	margin: 5.2cqi 0 0;
}

.lp-doctor__name {
	margin: 0 0 2.4cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.57cqi;
	font-weight: 700;
	line-height: 1.48;
}

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

.lp-doctor__profile ul li {
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.46cqi;
	font-weight: 400;
	line-height: 1.92;
}

.lp-doctor__profile ul li::before {
	content: "・";
}

/* Voice */
.lp-voice {
	padding: 10.4cqi 6.2cqi 6cqi;
	background: #fff;
}

.lp-voice h2 {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 0 8.9cqi;
	padding: 0 0 3.2cqi;
	background: url("../../lp/images/voice-underline.svg") no-repeat center bottom;
	background-size: 88.5cqi 2.6cqi;
	text-align: center;
}

.lp-voice__title,
.lp-voice__sub {
	display: block;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 1.45;
}

.lp-voice__title {
	font-size: 5.2cqi;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.lp-voice__sub {
	margin-top: 0.8cqi;
	font-size: 4.64cqi;
	font-weight: 400;
	letter-spacing: 0.04em;
}

.lp-voice__card {
	position: relative;
	padding: 14.8cqi 4.2cqi 3.5cqi;
	background: #fdece8;
	border-radius: 8.7cqi;
}

.lp-voice__photo {
	position: absolute;
	top: -1.9cqi;
	left: -1.2cqi;
	z-index: 1;
	width: 33.15cqi;
	height: 29.3cqi;
	border-radius: 10cqi 4cqi 2cqi 2cqi;
	object-fit: cover;
	object-position: center top;
	max-width: none;
}

.lp-voice__card h3 {
	margin: 0 2cqi 5.2cqi 34cqi;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4.29cqi;
	font-weight: 700;
	line-height: 1.48;
	letter-spacing: 0.02em;
}

.lp-voice__quote {
	margin: 0 2cqi 5.8cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.81cqi;
	font-weight: 400;
	line-height: 1.96;
	letter-spacing: 0.02em;
}

.lp-voice__before {
	display: block;
	width: 67.4cqi;
	margin: 0 auto;
	padding: 1.4cqi 2cqi;
	background: #595757;
	border-radius: 999px;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.99cqi;
	font-weight: 400;
	line-height: 1.4;
	text-align: center;
}

.lp-voice__before::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	margin: 1.6cqi auto -0.4cqi;
	border-left: 3cqi solid transparent;
	border-right: 3cqi solid transparent;
	border-top: 3cqi solid #ea764e;
}

.lp-voice__result {
	width: 67.4cqi;
	margin: 2.2cqi auto 0;
	overflow: hidden;
	border-radius: 3.5cqi;
	background: #fff;
}

.lp-voice__after {
	margin: 0;
	padding: 1.4cqi 2cqi;
	background: #ea764e;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.99cqi;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

.lp-voice__result ul {
	margin: 0;
	padding: 2.2cqi 7.8cqi 2.8cqi;
	list-style: none;
}

.lp-voice__result li {
	position: relative;
	padding-left: 1.4em;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.13cqi;
	font-weight: 400;
	line-height: 1.82;
}

.lp-voice__result li::before {
	content: "●";
	position: absolute;
	left: 0;
	color: #ea764e;
	font-size: 2.4cqi;
}

.lp-voice > .lp-voice__card {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	padding-bottom: 1cqi;
}

.lp-voice__accordion {
	margin: 0;
	padding: 2.4cqi 4.2cqi 3.5cqi;
	background: #fdece8;
	border-radius: 0 0 8.7cqi 8.7cqi;
}

.lp-voice__more {
	display: block;
	width: 67.4cqi;
	margin: 0 auto;
	padding: 1.8cqi 2cqi;
	border: 1.5px solid #ea764e;
	border-radius: 2.3cqi;
	background: #fff;
	color: #ea764e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.19cqi;
	font-weight: 400;
	line-height: 1.4;
	text-align: center;
	cursor: pointer;
	list-style: none;
}

.lp-voice__more::-webkit-details-marker,
.lp-voice__more::marker {
	display: none;
	content: "";
}

.lp-voice__accordion[open] .lp-voice__more {
	color: #ea764e;
}

.lp-voice__accordion:not([open]) .lp-voice__stories {
	display: none;
}

.lp-voice__stories {
	display: grid;
	gap: 3.5cqi;
	margin: 3.5cqi -4.2cqi -3.5cqi;
	padding: 3.5cqi 0 0;
	background: #fff;
}

.lp-voice__card--story {
	padding: 5.2cqi 4.2cqi 5cqi;
}

.lp-voice__head {
	display: flex;
	align-items: center;
	gap: 3.2cqi;
	margin: 0 0 3.2cqi;
}

.lp-voice__avatar {
	flex-shrink: 0;
	width: 19.7cqi;
	height: 19.7cqi;
	border-radius: 50%;
	object-fit: cover;
	object-position: center top;
	max-width: none;
}

.lp-voice__card--story h3 {
	margin: 0;
	flex: 1;
	font-size: 4.06cqi;
	line-height: 1.45;
}

.lp-voice__card--story .lp-voice__quote {
	margin: 0 0 4.2cqi;
}

.lp-voice__card--story .lp-voice__before,
.lp-voice__card--story .lp-voice__result {
	width: 78cqi;
}

.lp-voice__outcome {
	margin: 0;
	padding: 2.4cqi 3.2cqi 3cqi;
	color: #595757;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3.13cqi;
	font-weight: 700;
	line-height: 1.7;
	text-align: center;
}

/* Contact */
.lp-contact {
	padding: 2cqi 5.2cqi 10cqi;
	background: #fff;
}

.lp-contact__tel,
.lp-contact__web {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 89.7cqi;
	min-height: 30.7cqi;
	margin: 0 auto 4.5cqi;
	padding: 2.8cqi 1.6cqi 2.6cqi;
	border-radius: 4.5cqi;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	box-shadow: 0.35cqi 0.69cqi 0.8cqi rgba(0, 0, 0, 0.22);
}

.lp-contact__tel {
	background: linear-gradient(180deg, #62b4f8 0%, #3b8ee4 100%);
}

.lp-contact__web {
	margin-bottom: 0;
	background: linear-gradient(180deg, #f39268 0%, #e25d32 100%);
}

.lp-contact span {
	display: block;
	margin: 0;
	color: #fff;
	font-size: 4.27cqi;
	font-weight: 400;
	letter-spacing: 0.04em;
	line-height: 1.45;
}

.lp-contact strong {
	display: block;
	margin: 1.1cqi 0 0.7cqi;
	color: #fff;
	font-size: 6.57cqi;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.2;
}

.lp-contact strong b {
	font-size: 5.12cqi;
	font-weight: 700;
}

.lp-contact small {
	display: block;
	margin: 0;
	color: #fff;
	font-size: 2.56cqi;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.48;
	opacity: 1;
}

.lp-contact__tel small {
	font-size: 2cqi;
	line-height: 1.35;
}

.lp-contact em {
	display: block;
	margin-top: 0.35cqi;
	color: #fff;
	font-size: 2cqi;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.35;
}

/* PC表示時のLP幅（345px固定→560px、body min-width:1280px解除） */
@media screen and (min-width: 738px) {
	body.page-template-page-lp,
	body.page-template-page-lp-php { min-width: 0; }
	.lp-page,
	.lp-header { max-width: 560px; }
}
