@charset "utf-8";

@media (min-width: 769px) {
	html {
		font-size: min(calc(100vw / ( 1280 / 1 )), 1px);
	}
}
@media (max-width: 768px) {
	html {
		font-size: calc(100vw / ( 450 / 1 ));
	}
}

:root {
	--white: #fff;
	--black: #333;
	--gray: #c5c0bf;
	--gray2: #5a5a5a;
	--gray3: #f5f5f5;
	--gray4: #ddd;
	--beige: #fbf5e9;
	--blue: #2c5668;
	--blue2: #75c5d0;
	--gold: #987a12;
	--yellow: #f9d200;
	--red: #df634e;
	--green: #1e9687;
	--green2: #dcf1ea;
	--gradient: linear-gradient(180deg, var(--blue2) 0%, var(--green) 100%);
	--s8: 8rem;
	--s12: 12rem;
	--s14: 14rem;
	--s16: 16rem;
	--s18: 18rem;
	--s24: 24rem;
	--s32: 32rem;
	--s40: 40rem;
	--s48: 48rem;
	--s56: 56rem;
	--shadow: 0 0 4rem var(--gray);
}

body {
	color: var(--black);
	font-size: var(--s16);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 1.8;
	position: relative;
}

*,
*::before,
*::after {
	box-sizing: border-box
}
img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
i {
	font-style: normal;
}
u {
	text-decoration: none;
}
a {
	color: var(--black);
}
.ani_over,
.ani_over::before,
.ani_over::after {
	transition: all .3s ease-out;
}

/* 背景 */
.bg_gra {
	background: var(--gradient);
}
.bg_wht {
	background-color: var(--white);
}
.bg_beige {
	background-color: var(--beige);
}
.bg_black {
	background-color: var(--black);
}
.bg_green {
	background-color: var(--green);
}
.bg_green2 {
	background-color: var(--green2);
}
.bg_blue {
	background-color: var(--blue);
}
.bg_blue2 {
	background-color: var(--blue2);
}
.bg_red {
	background-color: var(--red);
}
.bg_yell {
	background-color: var(--yellow);
}

/* フォント */
.en {
	font-family: "Montserrat", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
}
.nycd {
  font-family: "Nothing You Could Do", cursive;
  font-weight: 400;
  font-style: normal;
}
.fc_wht {
	color: var(--white);
}
.fc_green {
	color: var(--green);
}
.fc_green2 {
	color: var(--green2);
}
.fc_blue2 {
	color: var(--blue2);
}
.fc_red {
	color: var(--red);
}
.fc_yell {
	color: var(--yellow);
}
.fs14 {
	font-size: var(--s14);
}
.fs18 {
	font-size: var(--s18);
}
.fs24 {
	font-size: var(--s24);
}
.fs32 {
	font-size: var(--s32);
}
.fs40 {
	font-size: var(--s40);
}
.fs56 {
	font-size: var(--s56);
}
.ta_center {
	text-align: center;
}
.block {
	display: block;
}

/* テキスト装飾 */
.outline {
	paint-order: stroke;
}
.dot {
	position: relative;
}
.dot::before {
	content: '';
	aspect-ratio: 1 / 1;
	border-radius: 100vmax;
	margin-inline: auto;
	position: absolute;
	inset: 0 0 auto;
}
.slash {
	display: inline-block;
	position: relative;
}
.slash::before,
.slash::after {
	content: '';
	margin-block: auto;
	position: absolute;
	inset: 0 auto;
}
.slash::before {
	left: 0;
	rotate: -20deg;
}
.slash::after {
	right: 0;
	rotate: 20deg;
}
.slash.fc_green::before,
.slash.fc_green::after {
	background: var(--green);
}
.fc_wht .slash::before,
.fc_wht .slash::after,
.slash.fc_wht::before,
.slash.fc_wht::after {
	background: var(--white);
}
.line {
	display: inline-block;
	position: relative;
}
.line::before,
.line::after {
	content: '';
	width: 16rem;
	height: 1px;
	margin-block: auto;
	position: absolute;
	inset: 0 auto;
}
.fc_wht .line::before,
.fc_wht .line::after,
.line.fc_wht::before,
.line.fc_wht::after {
	background: var(--white);
}
.line::before {
	right: calc(100% + var(--s8));
}
.line::after {
	left: calc(100% + 4rem);
}
img[class^="kirakira"] {
	position: absolute;
}
.next {
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	margin-inline: auto;
	position: absolute;
	inset: auto 0;
}

/* アニメーション */
.kirakira1,
.kirakira3 {
	animation: shining1 3s linear infinite;
}
.kirakira2,
.kirakira4 {
	animation: shining2 3s linear infinite;
}
@keyframes shining1 {
	0%, 100% { opacity: 0; }
	50% { opacity: 1; }
}
@keyframes shining2 {
	0%, 100% { opacity: 1; }
	50% { opacity: 0; }
}
.loop_wrap {
	display: flex;
	overflow: hidden;
}
.loop_wrap span {
	white-space: nowrap;
}
.ani_loop1 {
	animation: ani-loop1 60s -30s linear infinite;
}
.ani_loop2 {
	animation: ani-loop2 60s linear infinite;
}
@keyframes ani-loop1 {
	from { translate: 100% 0; }
	to { translate: -100% 0; }
}
@keyframes ani-loop2 {
	from { translate: 0 0; }
	to { translate: -200% 0; }
}

/* リスト */
.notice li {
	display: flex;
}
.notice li::before {
	content: '※';
	padding-right: var(--s12);
	flex-shrink: 0;
}
.list_icon {
	display: grid;
	place-content: center;
	flex-shrink: 0;
}

/* アイコン付きテキスト */
.tel {
	background: url(/images/menu/aga/icon_reserve.svg) no-repeat left center / 34rem auto;
	line-height: 35rem;
	padding-left: var(--s40);
}

/* 見出し */
.sec_ttl {
	font-size: 0;
	text-align: center;
}
.sec_ttl .en {
	font-size: var(--s18);
	line-height: 20rem;
	padding-inline: 3rem;
	display: inline-block;
}
.sec_ttl small {
	font-size: var(--s18);
	font-weight: 900;
	display: block;
}
.sec_ttl .ttl small {
	margin-top: 6rem;
}
.sec_ttl .ttl span {
	font-size: var(--s40);
	font-weight: 900;
	display: block;
}
.sec_ttl:not(:has(small)) .ttl span {
	margin-top: -8rem;
}
.sec_ttl:has(small) .ttl span {
	margin-top: -16rem;
}

/* 角丸 */
.circle {
	aspect-ratio: 1 / 1;
	border-radius: 100vmax;
}
.round {
	border-radius: 100vmax;
}

/* フキダシ */
.balloon {
	position: relative;
}
.balloon::after {
	content: '';
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	margin-inline: auto;
	position: absolute;
	inset: calc(100% - 1rem) 0 auto;
}
.balloon.bg_wht::after {
	background: var(--white);
}
.balloon.bg_green::after {
	background: var(--green);
}

/* ドロップシャドウ */
.shadow {
	filter: drop-shadow(var(--shadow));
}

/* アコーディオン開閉 */
.open_btn {
	position: relative;
	cursor: pointer;
}
.open_btn::before,
.open_btn::after {
	content: '';
	width: 20rem;
	height: 2rem;
	margin-block: auto;
	position: absolute;
	inset: 0 auto;
}
.open_btn::before {
	rotate: -90deg;
}
.open_btn.open::before {
	background: transparent;
	rotate: 0deg;
}
.open_btn:has(.fc_green)::before,
.open_btn:has(.fc_green)::after {
	background: var(--green);
}
.acc-content {
	display: none;
}

/* PCビュー */
@media (min-width: 769px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
	#main_content,
	#header,
	#footer {
		width: 450rem;
		margin-inline: auto;
	}
	#main_content > section,
	#footer {
		position: relative;
		z-index: 1;
	}
	.sp_only {
		display: none !important;
	}
	.pc_left {
		width: calc(50% - 225rem);
		display: grid;
		place-content: center;
		position: fixed;
		inset: 0;
	}
	.pc_bg {
		height: 100%;
		max-height: 100%;
		object-fit: cover;
		position: absolute;
		inset: 0;
	}
	.pc_logo {
		width: calc(100vw / ( 1920 / 106 ));
		position: absolute;
		top: calc(100vw / ( 1920 / 36 ));
		left: calc(100vw / ( 1920 / 40 ));
	}
	.pc_message {
		line-height: 1.5;
		text-align: center;
		position: relative;
	}
	.pc_message img {
		width: calc(100vw / ( 1920 / 123 ));
	}
	.pc_message p {
		font-size: calc(100vw / ( 1920 / 42 ));
		margin-top: calc(100vw / ( 1920 / 20 ));
	}
	.pc_message p span::before,
	.pc_message p span::after {
		content: '"';
		color: var(--gray);
	}
	.pc_message .nycd {
		font-size: calc(100vw / ( 1920 / 32 ));
		white-space: nowrap;
		position: absolute;
		top: calc(100vw / ( 1920 / 234 ));
		left: calc(50% + calc(100vw / ( 1920 / 14 )));
		rotate: -5deg;
	}
	#header .cv_btn {
		margin-top: var(--s56);
		position: relative;
		z-index: 1;
	}
}
/* SPビュー */
@media (max-width: 768px) {
	.pc_only {
		display: none !important;
	}
}

/* ヘッダー */
#header {
	height: var(--s48);
	padding: var(--s8);
	position: fixed;
	inset: 0;
	z-index: 999;
}
#header.bg {
	background: rgba(51, 51, 51, .6);
}
#header .logo {
	width: 155rem;
	display: block;
	position: relative;
	z-index: 102;
}
.gnav .anchor_list {
	display: grid;
	gap: var(--s32);
	position: relative;
	z-index: 1;
}
.gnav .anchor_list li {
	font-size: var(--s16);
	font-weight: 900;
}
/* ヘッダーPC */
@media (min-width: 769px) {
	.gnav {
		width: calc(50% - 225rem);
		display: grid;
		place-content: center;
		position: fixed;
		inset: 0 auto;
		right: 0;
	}
	.gnav::before {
		content: '';
		background: var(--gradient);
		opacity: .7;
		position: absolute;
		inset: 0;
	}
}
/* ヘッダーSP */
@media (max-width: 768px) {
	.btn-trigger {
		height: 48rem;
		aspect-ratio: 1;
		margin-block: auto;
		display: grid;
		place-content: center;
		gap: var(--s8);
		position: absolute;
		inset: 0 auto;
		right: 0;
		z-index: 102;
	}
	.btn-trigger span {
		width: var(--s24);
		height: 2rem;
		background: var(--white);
		border-radius: 100vmax;
	}
	.btn-trigger.active {
		background: var(--white);
	}
	.btn-trigger.active span {
		background: var(--black);
	}
	.btn-trigger.active span:nth-of-type(1),
	.btn-trigger.active span:nth-of-type(3) {
		margin: auto;
		position: absolute;
		inset: 0;
	}
	.btn-trigger.active span:nth-of-type(1) {
		rotate: 45deg;
	}
	.btn-trigger.active span:nth-of-type(2) {
		background: transparent;
	}
	.btn-trigger.active span:nth-of-type(3) {
		rotate: -45deg;
	}
	.gnav {
		width: 100vw;
		height: 100vh;
		background: rgba(51, 51, 51, .8);
		padding-bottom: 64rem;
		position: fixed;
		inset: 0 auto;
		left: 100vw;
	}
	.menuOpen .gnav {
		left: 0;
	}
	.gnav .anchor_list {
		height: 100%;
		place-content: center;
		z-index: 1;
	}
	.floating {
		display: none;
		inset: auto 0;
		z-index: calc(infinity);
	}
	.float_cv {
		height: 64rem;
		display: grid;
		place-content: center;
	}
}

/* CTA */
.cta {
	width: 402rem;
	margin-inline: auto;
}
.cv_wrap {
	text-align: center;
	padding: 0 3rem 3rem;
	position: relative;
}
.cta .circle {
	height: 66rem;
	font-size: var(--s14);
	font-weight: 900;
	line-height: 1.2;
	display: grid;
	place-content: center;
	position: absolute;
	top: -8rem;
	left: 10rem;
}
.cta .cv_copy {
	font-weight: 900;
	padding-block: 6rem 2rem;
}
.cta .cv_copy > span,
.cta .cv_copy > em {
	display: block;
}
.cta .cv_copy > span {
	font-size: var(--s14);
}
.cta .cv_copy > em {
	font-size: var(--s24);
	margin-top: -8rem;
}
.cta .cv_copy .dot::before {
	height: 2rem;
}
.cta .bg_yell .dot::before {
	background: var(--black);
}
.cta .bg_green .dot::before {
	background: var(--white);
}
.cv_wrap img {
	width: 86rem;
	position: absolute;
	top: 2rem;
	right: var(--s8);
}
.cv_price_wrap {
	padding-block: 10rem var(--s8);
}
.cv_course span {
	font-size: 16rem;
	font-weight: 700;
	display: inline-block;
}
.cv_course .course {
	margin-left: var(--s8);
	padding-left: var(--s8);
	position: relative;
}
.cv_course .course::before {
	content: '';
	width: 1px;
	height: var(--s14);
	background: var(--gray4);
	margin-block: auto;
	position: absolute;
	inset: 0;
}
.cv_course .amount {
	width: 58rem;
	height: var(--s18);
	font-size: var(--s12);
	line-height: var(--s16);
	vertical-align: 1rem;
	border: 1px var(--black) solid;
	margin-left: 5rem;
	display: inline-block;
}
.cv_price {
	margin-top: 22rem;
}
.cv_price em {
	font-size: 80rem;
	line-height: 0;
}
.cv_price .yen {
	font-size: var(--s32);
	font-weight: 900;
	margin-left: var(--s8);
}
.cv_btn {
	width: 354rem;
	height: 65rem;
	margin-inline: auto;
	display: grid;
	place-content: center;
}
.cv_btn span {
	font-size: var(--s18);
	font-weight: 900;
}
.cta .notice {
	font-size: 10rem;
	margin-top: var(--s8);
}
.cta .notice + .cv_btn {
	margin-top: var(--s16);
}
.cta .cv_wrap + .cv_btn {
	margin-top: var(--s40);
}

/* FV */
.fv_ttl_wrap {
	height: 573rem;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
	text-align: center;
	padding: var(--s48) var(--s48) 0;
}
.fv h1 {
	font-size: 0;
}
.fv h1 .balloon {
	font-size: var(--s14);
	padding: 0 9rem 3rem;
}
.fv h1 .balloon::after {
	width: 9rem;
	height: 7rem;
}
.fv h1 .outline {
	color: var(--white);
	font-size: 64rem;
	font-weight: 900;
	line-height: 1.2;
	-webkit-text-stroke: 3rem var(--black);
	text-stroke: 3rem var(--black);
	margin-top: 3rem;
	display: block;
}
.fv h1 .outline span {
	font-size: 125%;
	display: inline-block;
}
.fv h1 .outline br + span {
	margin-top: -8rem;
}
.fv_ba {
	margin-top: var(--s24);
	display: flex;
	justify-content: center;
	gap: var(--s40);
}
.fv_ba figure {
	width: 120rem;
	position: relative;
}
.fv_ba figcaption {
	width: var(--s40);
	height: var(--s14);
	font-size: 10rem;
	line-height: 13rem;
	position: absolute;
	left: 0;
	bottom: 0;
}
.fv_ba .before::after {
	content: '';
	width: var(--s8);
	height: 10rem;
	background: var(--white);
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	margin-block: auto;
	position: absolute;
	inset: 0 auto;
	right: -26rem;
}
.fv_appeal {
	height: 110rem;
	margin-top: 26rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--s12);
}
.fv_appeal li {
	display: grid;
	place-content: center;
	position: relative;
}
.fv_appeal span:not(.fs14):not(.en) {
	font-weight: 900;
}
.fv_appeal li:nth-child(1) .en {
	line-height: 1.2;
	margin-block: -5rem -2rem;
}
.fv_appeal li:nth-child(1) .en + span {
	line-height: 1.2;
}
.fv_appeal li:nth-child(2) span:last-of-type,
.fv_appeal li:nth-child(3) span:last-of-type {
	margin-top: -6rem;
}
.fv_appeal li::after {
	position: absolute;
}
.fv_appeal li:nth-child(1)::after,
.fv_appeal li:nth-child(3)::after {
	color: var(--white);
	font-size: 10rem;
	right: var(--s8);
	bottom: -6rem;
}
.fv_appeal li:nth-child(1)::after {
	content: '※1';
}
.fv_appeal li:nth-child(2)::after {
	content: '';
	width: 106rem;
	height: 47rem;
	background: url(/images/menu/aga/fv_drglow.png) no-repeat center center / 100% auto;
	margin-inline: auto;
	inset: auto 0 -15rem;
	rotate: 5deg;
}
.fv_appeal li:nth-child(3)::after {
	content: '※2';
}
.fv .cta {
	margin-top: var(--s32);
	padding-bottom: var(--s40);
}

/* AGA治療の特徴 */
.feature {
	padding: var(--s40) var(--s48);
}
.feat_ttl {
	font-weight: 900;
}
.feat_ttl small {
	font-size: var(--s18);
}
.feat_ttl em {
	font-size: var(--s32);
	margin-top: -8rem;
	display: block;
}
.feat_list {
	margin-top: var(--s16);
	display: grid;
	gap: var(--s24);
	counter-reset: feat_list;
}
.feat_list li {
	height: 166rem;
	padding-inline: var(--s32);
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
.feat_list li > * {
	position: relative;
	z-index: 1;
}
.feat_list li::before {
	counter-increment: feat_list;
  content: '0'counter(feat_list);
	color: var(--gray3);
	font-size: 80rem;
	font-family: "Montserrat", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	line-height: 1.2;
	position: absolute;
}
.feat_list li:nth-child(1)::before {
	top: -9rem;
	left: 89rem;
}
.feat_list li:nth-child(2)::before {
	top: -10rem;
	right: 55rem;
}
.feat_list li:nth-child(3)::before {
	top: -6rem;
	left: 63rem;
}
.feat_list li:nth-child(even) figure {
	margin-inline: auto 0;
	order: 2;
}
.feat_list li:nth-child(even) .inner {
	order: 1;
}
.feat_list figure {
	flex-shrink: 0;
}
.feat_list li:nth-child(1) figure {
	width: 126rem;
}
.feat_list li:nth-child(2) figure {
	width: 127rem;
}
.feat_list li:nth-child(3) figure {
	width: 90rem;
	margin-left: 10rem;
}
.feat_list .inner {
	flex-grow: 1;
}
.feat_list li:nth-child(1) .inner {
	margin-left: var(--s16);
}
.feat_list li:nth-child(2) .inner {
	padding-right: 28rem;
}
.feat_list li:nth-child(3) .inner {
	margin-left: var(--s40);
}
.feat_list h3 .slash {
	font-size: var(--s12);
	font-weight: 500;
	padding-inline: var(--s8);
}
.feat_list h3 .slash::before,
.feat_list h3 .slash::after {
	width: 1px;
	height: var(--s14);
	translate: 0 2rem;
}
.feat_list h3 em {
	font-size: var(--s24);
	font-weight: 900;
	display: block;
}
.feat_list h3 .slash + em {
	margin-top: -10rem;
}
.feat_list .inner p {
	font-size: var(--s14);
	margin-top: 4rem;
}

/* 症例写真 */
.case {
	padding-top: var(--s56);
}
.case_list {
	padding-block: var(--s24) 72rem;
}
.case_in {
	width: 402rem;
	margin-inline: auto;
	padding: 20rem var(--s24) var(--s24);
}
.case_info span {
	font-size: var(--s14);
	font-weight: 900;
	display: inline-block;
	position: relative;
}
.case_info .gender {
	margin-left: 10rem;
	padding-left: var(--s8);
}
.case_info .gender::before {
	content: '';
	width: 1px;
	height: var(--s14);
	background: var(--gray);
	margin-block: auto;
	position: absolute;
	inset: 0;
}
.case_info small {
	font-size: var(--s12);
	display: block;
}
.case_photo {
	margin-top: var(--s8);
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.case_photo figure {
	position: relative;
}
.case_photo figcaption {
	font-size: var(--s12);
	line-height: 27rem;
	position: absolute;
	inset: auto 0 0;
}
.case_photo .after figcaption {
	border-left: 1px var(--white) solid;
}
.case .risk {
	font-size: 12rem;
	margin-top: var(--s14);
	padding-inline: var(--s24);
}

/* swiper */
#main_content .swiper-button-prev,
#main_content .swiper-button-next {
	width: 50rem;
	height: 50rem;
	background: url(/images/menu/aga/icon_arrow.svg) no-repeat center center / 100% auto;
	position: absolute;
}
#main_content .swiper-button-prev {
	left: 0;
}
#main_content .swiper-button-next {
	right: 0;
	scale: -1 1;
}
#main_content .swiper-button-prev::after,
#main_content .swiper-button-next::after {
	content: '';
}
#main_content .swiper-pagination {
	font-size: 0;
	display: flex;
	justify-content: center;
	gap: 4rem;
}
#main_content .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
#main_content .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0;
}
#main_content .swiper-pagination-bullet {
	background: var(--gray);
	opacity: 1;
}
#main_content .swiper-pagination-bullet-active {
	background: var(--gray2);
}
.case .swiper-button-prev,
.case .swiper-button-next {
	top: 180rem;
}
.case .swiper-pagination {
	bottom: 42rem;
}

/* こんなお悩みはありませんか？ */
.worries .list_wrap {
	background: rgba(44, 86, 104, .9) url(/images/menu/aga/worries_bg.jpg) no-repeat center top / auto 100%;
	padding: var(--s56) var(--s48) 60rem;
	position: relative;
}
.wos_ttl .slash {
	padding-inline: 7rem;
}
.wos_ttl .slash::before,
.wos_ttl .slash::after {
	width: 1px;
	height: var(--s16);
}
.wos_ttl span {
	font-size: var(--s32);
	font-weight: 900;
}
.wos_ttl em {
	background: linear-gradient(0deg, transparent 3rem, var(--white) 3rem, var(--white) 6rem, transparent 6rem);
	font-size: 150%;
	padding-right: 3rem;
}
.wos_ttl .slash + span {
	margin-top: -18rem;
}
.wos_ttl span + span {
	margin-top: -14rem;
}
.wos_img {
	width: 117rem;
	position: absolute;
	top: 98rem;
	right: 48rem;
}
.wos_list {
	margin-top: var(--s14);
	padding: var(--s14) var(--s24);
}
.wos_list li {
	padding-block: var(--s12);
	display: flex;
	align-items: center;
}
.wos_list li + li {
	border-top: 1px var(--gray4) solid;
}
.wos_list .list_icon {
	width: 50rem;
}
.wos_list li:nth-child(1) img {
	width: 39rem;
}
.wos_list li:nth-child(2) img {
	width: 29rem;
}
.wos_list li:nth-child(3) img {
	width: 20rem;
}
.wos_list li:nth-child(4) img {
	width: 17rem;
}
.wos_list li:nth-child(5) img {
	width: 22rem;
}
.wos_list li:nth-child(6) img {
	width: 23rem;
}
.wos_list p {
	font-size: var(--s14);
	font-weight: 900;
	margin-left: var(--s12);
	flex-grow: 1;
}
.worries .next {
	width: 144rem;
	height: 72rem;
	font-size: var(--s14);
	font-weight: 900;
	line-height: 1.2;
	padding-top: 6rem;
	bottom: -11rem;
}
.worries .bg_wrap {
	padding-block: 50rem var(--s40);
}
.wos_copy {
	font-weight: 900;
	position: relative;
}
.wos_balloon {
	width: 64rem;
	background: url(/images/menu/aga/icon_balloon.svg) no-repeat center top / 100% auto;
	font-size: var(--s14);
	aspect-ratio: 1 / 1;
	padding-top: 20rem;
	position: absolute;
	top: -21rem;
	left: 15rem;
}
.wos_balloon small {
	font-size: var(--s12);
}
.wos_copy em {
	font-size: 64rem;
	-webkit-text-stroke: 4rem var(--black);
	text-stroke: 4rem var(--black);
}
.wos_copy em .dot::before {
	height: 8rem;
	background: var(--black);
	translate: 0 2rem;
}
.wos_copy > small {
	font-size: var(--s24);
	margin-left: var(--s8);
}
.wos_copy .block {
	font-size: var(--s40);
	margin-top: -32rem;
}
.worries .cta {
	margin-top: var(--s14);
}

/* AGAとは */
.about {
	background: url(/images/menu/aga/about_bg.jpg) repeat-y center top / 100% auto;
	padding-block: 58rem 176rem;
}
.about_copy {
	background: url(/images/menu/aga/about_ttl_bg.svg) no-repeat left 20rem top 6rem / 162rem auto;
	position: relative;
}
.about_img {
	width: 90rem;
	position: absolute;
	top: -2rem;
	right: 38rem;
}
.about_copy .icon {
	width: 184rem;
	height: 38rem;
	background-image: url(/images/menu/aga/balloon_line.svg), url(/images/menu/aga/icon_hatena.svg);
	background-repeat: no-repeat, no-repeat;
	background-position: left bottom, left 2rem top 8rem;
	background-size: 177rem auto, 20rem auto;
	font-size: var(--s18);
	font-weight: 700;
	padding-left: 30rem;
	display: inline-block;
}
.about_ttl {
	font-weight: 900;
	margin-top: -12rem;
}
.about_ttl .outline {
	-webkit-text-stroke: 4rem var(--black);
	text-stroke: 4rem var(--black);
}
.about_ttl > span:nth-of-type(1) {
	margin-bottom: -32rem;
}
.about_ttl > span:nth-of-type(3) {
	margin-top: -8rem;
}
.about_ttl .border {
	background: linear-gradient(0deg, transparent 6rem, var(--yellow) 6rem, var(--yellow) 9rem, transparent 9rem);
	display: inline-block;
}
.about_copy .copy {
	font-weight: 900;
	margin-top: 20rem;
}
.about_copy .copy .slash {
	font-size: var(--s18);
	padding-inline: var(--s12);
}
.about_copy .copy .slash::before,
.about_copy .copy .slash::after {
	width: 1px;
	height: 21rem;
	translate: 0 4rem;
}
.about_copy .copy em {
	font-size: 133%;
}
.about_copy .copy .dot::before {
	height: 2rem;
	background: var(--yellow);
	translate: 0 2rem;
}
.about_copy .copy .bg {
	background: #d9d9d9;
	font-size: 29rem;
	line-height: 50rem;
	display: inline-block;
}
.about_copy .copy .slash + .bg {
	margin-top: 6rem;
	padding-inline: 17rem;
}
.about_copy .copy .bg + .bg {
	margin-top: 12rem;
	padding-inline: 8rem 5rem;
}
.about_copy .copy2 {
	margin-top: var(--s40);
}
.about_copy .shikamo {
	font-weight: 900;
	line-height: 80rem;
	padding-left: 116rem;
	display: inline-block;
	position: relative;
}
.about_copy .shikamo img {
	width: 111rem;
	margin-block: auto;
	position: absolute;
	inset: 0;
}
.about_copy .shikamo .dot::before {
	height: 4rem;
	background: var(--white);
}
.about_copy .copy2 small {
	font-weight: 700;
	margin-top: -8rem;
}
.about_copy .copy2 small + span {
	margin-top: 4rem;
}
.about_copy .copy2 .outline {
	font-weight: 900;
	-webkit-text-stroke: 4rem var(--black);
	text-stroke: 4rem var(--black);
}
.about_copy .copy2 .outline em {
	line-height: 67rem;
}
.about_copy .copy2 .outline span {
	line-height: var(--s48);
	margin-top: 6rem;
}
.about .notice {
	font-size: var(--s12);
	margin-top: var(--s32);
	padding-inline: var(--s24);
}
.about_detail {
	width: 402rem;
	margin: 64rem auto 0;
}
.about_detail .open_btn {
	padding: var(--s14) var(--s24);
}
.about_detail .open_btn::before,
.about_detail .open_btn::after {
	right: var(--s24);
}
.detail_wrap {
	padding: var(--s32) var(--s24) 36rem;
}
.detail_in {
	display: flex;
	flex-direction: column;
}
.detail_in + .detail_in {
	margin-top: 64rem;
}
.detail_ttl {
	font-size: var(--s24);
	font-weight: 700;
	order: 1;
}
.detail_txt {
	font-size: var(--s14);
}
.detail_in:not(:has(.factor_list)) .detail_txt {
	margin-top: var(--s16);
	order: 2;
}
.detail_in:has(.factor_list) .detail_txt {
	margin-top: var(--s40);
	order: 3;
}
.detail_in:not(:has(.factor_list)) .detail_img {
	margin-top: var(--s40);
	order: 3;
}
.detail_in:has(.factor_list) .detail_img {
	text-align: center;
	margin-top: 20rem;
	order: 2;
}
.detail_in:has(.factor_list) .detail_img img {
	width: 306rem;
}
.detail_img figcaption {
	font-weight: 900;
	margin-top: var(--s32);
}
.detail_img em {
	background: linear-gradient(0deg, transparent 6rem, var(--black) 6rem, var(--black) var(--s8), transparent var(--s8));
	margin-top: -14rem;
	display: inline-block;
}
.factor_list {
	margin-top: var(--s56);
	padding-inline: var(--s24);
	padding-bottom: 28rem;
	order: 4;
}
.factor_list dt {
	font-size: var(--s24);
	font-weight: 700;
	padding-block: 20rem var(--s12);
	border-bottom: 1px var(--gray) solid;
}
.factor_list dt em {
	font-size: var(--s40);
}
.factor_list dd {
	padding-block: var(--s14);
	display: flex;
	align-items: center;
}
.factor_list dt + dd {
	margin-top: 10rem;
}
.factor_list .list_icon {
	width: var(--s56);
}
.factor_list dd:nth-of-type(1) img,
.factor_list dd:nth-of-type(4) img,
.factor_list dd:nth-of-type(5) img {
	width: 27rem;
}
.factor_list dd:nth-of-type(2) img {
	width: 26rem;
}
.factor_list dd:nth-of-type(3) img {
	width: 18rem;
}
.factor_list .list_in {
	margin-left: var(--s16);
	flex-grow: 1;
}
.factor_list .ttl {
	font-size: var(--s16);
	font-weight: 700;
}
.factor_list .txt {
	font-size: var(--s12);
}

/* ルシアのAGA治療薬 */
.dr_grow {
	padding: 96rem var(--s24) 42rem;
	position: relative;
}
.dr_grow_img {
	height: 136rem;
	border: 3rem var(--blue2) solid;
	margin-inline: auto;
	position: absolute;
	inset: -74rem 0 auto;
}
.dr_grow_img .copy {
	width: 99rem;
	position: absolute;
	top: -47rem;
	left: -93rem;
}
.dr_grow_copy {
	position: relative;
}
.dr_grow_copy .line {
	font-size: 18rem;
}
.dr_grow_copy em {
	font-size: var(--s48);
	font-weight: 900;
	line-height: 1.5;
	-webkit-text-stroke: 3rem var(--black);
	text-stroke: 3rem var(--black);
	margin-top: var(--s8);
}
.dr_grow_copy .kirakira1 {
	width: 7rem;
	top: 50rem;
	left: var(--s56);
}
.dr_grow_copy .kirakira2 {
	width: 25rem;
	top: 80rem;
	right: var(--s24);
}
.dr_grow_copy .kirakira3 {
	width: 12rem;
	top: 107rem;
	right: 34rem;
}
.dr_grow_copy .kirakira4 {
	width: 27rem;
	top: 105rem;
	left: 20rem;
}
.dr_grow_wrap {
	margin-top: 52rem;
	padding-bottom: var(--s40);
	position: relative;
}
.dr_grow_badge {
	height: 110rem;
	display: grid;
	place-content: center;
	position: absolute;
	top: -18rem;
	left: -15rem;
}
.dr_grow_badge .en {
	line-height: 1.2;
	margin-block: -5rem -2rem;
}
.dr_grow_badge .en + span {
	font-weight: 900;
	line-height: 1.2;
}
.dr_grow_photo {
	height: 200rem;
	background: url(/images/menu/aga/dr_grow_package_bg.svg) no-repeat center top / 100% auto;
	padding-top: 78rem;
}
.dr_grow_photo img {
	width: 244rem;
	display: inline-block;
	rotate: -5deg;
}
.dr_grow_h2 h2,
.dr_grow_h2 p {
	font-weight: 900;
}
.dr_grow_h2 p {
	margin-top: -7rem;
}
.dr_grow_h2 span {
	height: 26rem;
	font-size: 16rem;
	line-height: var(--s24);
	border: 1px var(--green) solid;
	margin-top: var(--s16);
	padding-inline: 4rem;
	display: inline-block;
}
.dr_grow_loop {
	margin-top: var(--s8);
}
.dr_grow_loop span {
	font-size: 64rem;
	line-height: 77rem;
	-webkit-text-stroke: 2rem var(--gray);
	text-stroke: 2rem var(--gray);
}
.dr_grow_ttl .ttl {
	font-size: var(--s24);
	font-weight: 900;
	padding-bottom: var(--s32);
	position: relative;
}
.dr_grow_ttl .ttl::after {
	content: '';
	width: var(--s24);
	height: 1px;
	background: var(--gray);
	margin-inline: auto;
	position: absolute;
	inset: auto 0 0;
}
.dr_grow_ttl .txt {
	font-size: var(--s14);
	margin-top: var(--s32);
	padding-inline: var(--s24);
}
.dr_grow_ttl .balloon {
	line-height: 1.5;
	margin: var(--s56) var(--s24) 0;
	padding: 20rem 0 20rem 24rem;
}
.dr_grow_ttl .balloon::after {
	width: 20rem;
	height: var(--s16);
	background: var(--yellow);
}
.dr_grow_ttl .balloon_ttl {
	font-size: var(--s18);
	font-weight: 900;
}
.dr_grow_ttl .balloon_txt {
	font-size: var(--s12);
	margin-top: var(--s8);
}
.dr_grow_ttl .balloon img {
	width: 117rem;
	position: absolute;
	right: 2rem;
	bottom: 0;
}
.dr_grow_appeal {
	margin-top: 84rem;
	padding-inline: var(--s24);
}
.appeal_in {
	position: relative;
}
.appeal_in + .appeal_in {
	margin-top: 96rem;
}
.appeal_in .num {
	font-size: 120rem;
	position: absolute;
	top: -98rem;
}
.dr_grow_appeal > div:nth-of-type(odd) .num {
	right: 0;
}
.dr_grow_appeal > div:nth-of-type(even) .num {
	left: 0;
}
.appeal_in figure {
	padding-left: var(--s24);
}
.appeal_in .ttl {
	font-size: var(--s24);
	font-weight: 900;
	line-height: 1.5;
}
.appeal_in .ttl:not(:has(span + span + span)) {
	margin-top: -22rem;
}
.appeal_in .ttl:has(span + span + span) {
	margin-top: -75rem;
}
.appeal_in .ttl > span {
	height: 44rem;
	line-height: 44rem;
	padding-inline: var(--s8);
	display: inline-block;
}
.appeal_in .ttl > span + span {
	margin-top: var(--s8);
}
.appeal_in .ttl small {
	font-size: 10rem;
	font-weight: 500;
	vertical-align: 4rem;
}
.appeal_in .txt {
	font-size: var(--s14);
	margin-top: var(--s24);
}
.dr_grow_wrap .next {
	width: 110rem;
	height: 55rem;
	font-size: var(--s16);
	font-weight: 700;
	padding-top: 2rem;
	bottom: -54rem;
}
.conclusion {
	background: url(/images/menu/aga/conclusion_bg.svg) no-repeat left 17rem top var(--s24) / 235rem auto;
	padding-block: 76rem var(--s14);
	position: relative;
}
.conclusion p {
	font-size: var(--s56);
	font-weight: 900;
	line-height: 1.5;
}
.conclusion_img {
	width: 91rem;
	position: absolute;
	top: -14rem;
	right: var(--s24);
}
.conclusion .kirakira1 {
	width: 10rem;
	top: 74rem;
	left: 122rem;
}
.conclusion .kirakira2 {
	width: var(--s16);
	top: 83rem;
	left: 111rem;
}
.conclusion .kirakira3 {
	width: var(--s16);
	bottom: 6rem;
	right: 25rem;
}
.conclusion .kirakira4 {
	width: 27rem;
	bottom: 0;
	left: 10rem;
}
.ingredients {
	margin-top: var(--s48);
	padding: var(--s48) var(--s24);
}
.ing_wrap {
	margin-top: var(--s32);
}
.ing_ttl {
	font-weight: 700;
	padding: var(--s16) 0 var(--s16) var(--s12);
}
.ing_ttl::before,
.ing_ttl::after {
	background: var(--white);
	right: var(--s16);
}
.ing_wrap h4:nth-of-type(n+2) {
	margin-top: var(--s32);
}
.ing_ttl small {
	height: var(--s24);
	font-size: var(--s12);
	line-height: var(--s24);
	vertical-align: 2rem;
	padding-inline: var(--s12);
	display: inline-block;
}
.ing_ttl span {
	font-size: var(--s18);
	margin-left: var(--s8);
}
.ing_in {
	margin-top: var(--s24);
}
.ing_wrap > div:nth-last-of-type(n+2) {
	padding-bottom: var(--s32);
}
.ing_wrap > div:last-of-type {
	padding-bottom: var(--s16);
}
.ing_in .txt p {
	font-size: var(--s12);
}
.ing_wrap > div:nth-of-type(1) figure img {
	width: 306rem;
}
.ing_wrap > div:nth-of-type(2) figure {
	margin-top: var(--s40);
}
.ing_in figcaption {
	font-size: var(--s18);
	font-weight: 900;
	margin-top: var(--s8);
}
.ing_point {
	background-image: url(/images/menu/aga/icon_point.svg);
	background-repeat: no-repeat;
	background-position: left var(--s16) center;
	background-size: 42rem auto;
	font-size: var(--s12);
	margin-top: var(--s24);
	padding: var(--s16) var(--s16) var(--s16) 72rem;
}
.ing_tab {
	width: 100%;
	border-block: 2rem var(--black) solid;
	margin-top: var(--s32);
}
.ing_tab tr {
	display: flex;
}
.ing_tab tr + tr {
	border-top: 1px var(--gray4) solid;
}
.ing_tab th,
.ing_tab td {
	border: none;
	display: flex;
	align-items: center;
}
.ing_tab th {
	width: 95rem;
	font-size: var(--s12);
	line-height: 1.5;
	text-align: left;
	padding: var(--s24) 0 var(--s24) 10rem;
	flex-shrink: 0;
}
.ing_tab td {
	font-size: 10rem;
	padding: 20rem 0 20rem var(--s16);
	flex-grow: 1;
}

/* 服用後の経過 */
.progress {
	padding: 84rem var(--s24) var(--s56);
}
.prog_copy {
	margin-top: 20rem;
}
.prog_copy .slash {
	font-size: var(--s16);
	font-weight: 700;
	padding-inline: var(--s14);
}
.prog_copy .slash::before,
.prog_copy .slash::after {
	width: 1px;
	height: var(--s18);
	background: var(--black);
}
.prog_copy p {
	font-weight: 900;
	text-align: left;
	margin-top: -6rem;
	display: inline-block;
}
.prog_copy p span {
	font-size: var(--s16);
}
.prog_copy p span + span {
	margin-top: -8rem;
}
.prog_copy em {
	font-size: var(--s24);
	display: inline-block;
}
.prog_copy .bg_red {
	line-height: 30rem;
	margin-inline: 6rem 4rem;
	padding-inline: 4rem;
}
.prog_copy .fc_red {
	background: linear-gradient(0deg, transparent 4rem, var(--red) 4rem, var(--red) 6rem, transparent 6rem);
}
.prog_copy em small {
	font-size: var(--s18);
}
.prog_list {
	margin-top: var(--s40);
	display: grid;
	gap: 50rem;
}
.prog_list li {
	display: flex;
	position: relative;
}
.prog_list li:nth-last-child(n+2)::after {
	content: '';
	height: 50rem;
	background: url(/images/menu/aga/icon_arrow_gd.svg) no-repeat center center / 100% auto;
	aspect-ratio: 1 / 1;
	margin-inline: auto;
	position: absolute;
	inset: auto 0 -50rem;
}
.prog_list .time {
	width: 70rem;
	font-size: var(--s12);
	font-weight: 900;
	display: grid;
	place-content: center;
	flex-shrink: 0;
}
.prog_list .txt {
	padding: 20rem var(--s16);
	display: flex;
	align-items: center;
	flex-grow: 1;
}
.prog_list .txt p {
	font-size: 12rem;
}
.prog_list figure {
	width: 86rem;
	object-fit: cover;
	flex-shrink: 0;
}
.progress .notice {
	font-size: var(--s12);
	margin-top: var(--s16);
}

/* 返金保証 */
.guarantee {
	padding: 60rem var(--s24) var(--s40);
}
.gua_ttl {
	width: 354rem;
	margin-inline: auto;
	position: relative;
}
.gua_ttl::before,
.gua_ttl::after {
	content: '';
	width: 23rem;
	height: 57rem;
	background: url(/images/menu/aga/guarantee_bg.svg) no-repeat center center / 100% auto;
	margin-block: auto;
	position: absolute;
	inset: 0 auto;
}
.gua_ttl::before {
	left: 0;
}
.gua_ttl::after {
	right: 0;
	scale: -1 1;
}
.gua_ttl .en {
	font-size: var(--s14);
}
.gua_ttl h2 {
	font-size: var(--s32);
	font-weight: 900;
	line-height: 1.5;
	margin-top: -8rem;
}
.gua_copy {
	font-size: var(--s16);
	font-weight: 900;
	margin-top: var(--s12);
}
.gua_wrap {
	margin-top: var(--s24);
	padding-inline: var(--s24);
}
.gua_wrap .fc_green {
	font-weight: 700;
}
.gua_wrap .open_btn {
	font-size: var(--s14);
	padding-block: var(--s18);
}
.gua_wrap .open_btn::before,
.gua_wrap .open_btn::after {
	right: 0;
}
.terms {
	padding-bottom: 44rem;
}
.terms_txt,
.terms_list li {
	font-size: var(--s12);
}
.terms_in {
	margin-top: var(--s32);
}
.terms_list {
	margin-top: 4rem;
}
.terms_list li {
	display: flex;
}
.terms_list li::before {
	content: '・';
	margin-right: 4rem;
}

/* 料金 */
.price {
	padding: var(--s56) var(--s24) 44rem;
}
.price_tab {
	width: 100%;
	margin-top: var(--s32);
}
.price_tab tr {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
.price_tab tr + tr {
	border-top: 1px var(--gray) solid;
}
.price_tab th,
.price_tab td {
	border: none;
	display: grid;
	place-content: center;
}
.price_tab thead th:nth-child(n+3),
.price_tab tbody td + td {
	border-left: 1px var(--gray) dotted;
}
.price_tab thead th {
	height: 52rem;
	font-size: var(--s14);
	line-height: 1.5;
}
.price_tab tbody th,
.price_tab tbody td {
	height: var(--s56);
}
.price_tab tbody th {
	background: var(--gray3);
	font-size: var(--s12);
}
.price_tab tbody .wrap span {
	display: inline-block;
}
.price_tab tbody th .border {
	font-size: 10rem;
	font-weight: 500;
	line-height: var(--s18);
	border: 1px var(--red) solid;
	padding-inline: 3rem;
	translate: 0 -2rem;
}
.price_tab tbody td {
	background: var(--white);
	font-size: 10rem;
	text-align: center;
}
.price_tab tbody td em {
	font-size: 140%;
	font-weight: 900;
}
.price_tab tbody td .bg_red {
	font-size: 120%;
	font-weight: 900;
	line-height: var(--s16);
	padding-inline: 3rem;
	translate: 0 3rem;
}
.price .notice {
	font-size: var(--s12);
	margin-top: var(--s16);
}
.price .cta {
	margin-top: var(--s56);
}

/* こだわり */
.commitment {
	padding-top: 90rem;
	position: relative;
}
.commitment .sec_ttl {
	position: relative;
	z-index: 1;
}
.commit_loop {
	position: absolute;
	inset: 100rem 0 auto;
}
.commit_loop img {
	width: 1183rem;
	max-width: fit-content;
	opacity: .2;
}
.commit_list {
	padding-inline: var(--s24);
}
.commit_in {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% auto;
	aspect-ratio: 1 / 1;
	margin-top: var(--s40);
	display: grid;
	place-content: center;
}
.commit_in .en {
	font-size: 34rem;
	position: relative;
}
.commit_in .en::after {
	content: '';
	width: 38rem;
	height: 1px;
	background: var(--blue2);
	margin-inline: auto;
	position: absolute;
	inset: auto 0 10rem;
}
.commit_in h3 {
	font-size: var(--s24);
	font-weight: 900;
	line-height: 1.5;
	margin-top: var(--s16);
}
.commit_in .txt {
	font-size: var(--s14);
	margin-top: 28rem;
}

/* 治療開始までの流れ */
.flow {
	padding: 96rem var(--s24) 80rem;
	position: relative;
}
.flow_balloon {
	width: 66rem;
	position: absolute;
	top: 72rem;
	right: 72rem;
}
.flow_wrap {
	margin-top: 36rem;
	display: grid;
	gap: 40rem;
}
.flow_in {
	background-repeat: no-repeat;
	background-position-y: center;
	padding: 20rem var(--s24) 20rem 88rem;
	position: relative;
}
.flow_wrap > div:nth-of-type(1) {
	background-position-x: var(--s24);
	background-size: 54rem auto;
}
.flow_wrap > div:nth-of-type(2) {
	background-position-x: 28rem;
	background-size: var(--s48) auto;
}
.flow_wrap > div:nth-of-type(3) {
	background-position-x: var(--s24);
	background-size: var(--s48) auto;
}
.flow_wrap > div:nth-of-type(4) {
	background-position-x: var(--s32);
	background-size: 35rem auto;
}
.flow_in + .flow_in::before {
	content: '';
	width: 3rem;
	height: 40rem;
	background: var(--green);
	margin-inline: auto;
	position: absolute;
	inset: -40rem 0 auto;
}
.flow_num {
	width: 46rem;
	padding-top: 4rem;
	position: absolute;
	top: -24rem;
	left: -14rem;
}
.flow_num small {
	font-size: 10rem;
}
.flow_num em {
	font-size: 18rem;
	margin-top: -8rem;
}
.flow_ttl {
	font-size: var(--s16);
	font-weight: 900;
}
.flow_txt {
	font-size: var(--s12);
}
.flow_txt small {
	font-size: 10rem;
	border-bottom: 1px var(--black) solid;
}
.flow .cta {
	margin-top: 64rem;
}

/* リスクと副作用 */
.risk_bg {
	background: #4bab9f url(/images/menu/aga/risk_bg.jpg) no-repeat center top / 100% auto;
	padding: 80rem var(--s24) 64rem;
}
.risk_wrap {
	margin-top: var(--s16);
	padding: var(--s32) var(--s24) var(--s40);
}
.risk_wrap h3 {
	background: url(/images/menu/aga/icon_risk.svg) no-repeat left center / 19rem auto;
	font-size: 20rem;
	font-weight: 900;
	padding-left: 28rem;
}
.risk_wrap h3:nth-child(n+2) {
	margin-top: 45rem;
}
.risk_wrap .txt {
	font-size: var(--s14);
	margin-top: var(--s8);
}
.risk_list {
	margin-top: var(--s16);
	padding: var(--s16) var(--s12);
}
.risk_list li {
	font-size: var(--s14);
	display: flex;
}
.risk_list li::before {
	content: '・';
	padding-right: 3rem;
}

/* よくあるご質問 */
.risk + .qa {
	margin-top: 62rem;
}
.qa_wrap dt,
.qa_wrap dd {
	padding-inline: var(--s24);
	position: relative;
}
.qa_wrap dt .en,
.qa_wrap dd .en {
	font-size: var(--s24);
	position: absolute;
}
.qa_wrap dt .en {
	top: var(--s24);
	left: var(--s24);
}
.qa_wrap dd .en {
	top: var(--s16);
	left: 0;
}
.qa_wrap dt {
	margin-top: var(--s24);
	padding-block: var(--s32) var(--s24);
}
.qa_wrap dt::before,
.qa_wrap dt::after {
	right: var(--s24);
}
.qa_wrap dt .ttl {
	font-size: var(--s14);
	padding-inline: 28rem;
}
.qa_wrap dd {
	padding-bottom: var(--s24);
}
.qa_wrap dd .txt {
	border-top: 1px var(--gray4) solid;
	padding-top: var(--s24);
	padding-left: 28rem;
	position: relative;
}
.qa_wrap dd p {
	font-size: var(--s14);
}

/* クリニック一覧 */
.clinic {
	padding: 60rem var(--s24) 68rem;
}
.clinic_wrap {
	box-shadow: 0 0 2rem var(--gray);
	margin-top: var(--s24);
}
.area_name {
	font-size: var(--s18);
	font-weight: 700;
	padding: var(--s16) 0 var(--s16) var(--s24);
}
.area_name::before,
.area_name::after {
	background: var(--green);
	right: var(--s24);
}
.clinic_list {
	padding: 0 var(--s24) var(--s24);
}
.clinic_list li {
	border-bottom: 1px var(--gray) solid;
}
.clinic_list a {
	font-size: 14rem;
	padding-block: 10rem;
	display: block;
}
.arrow {
	background-image: url(/images/menu/aga/icon_arrow_br.svg);
	background-repeat: no-repeat;
	background-position: right 6rem center;
	background-size: 12rem auto;
}
.blank {
	background-image: url(/images/menu/aga/icon_blank.svg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 24rem auto;
}

/* フッター */
#footer {
	background: var(--black);
	font-size: var(--s12);
	text-align: center;
	padding-block: var(--s24) var(--s32);
}
#footer,
#footer a {
	color: var(--white);
}
#footer .pagemenu {
	padding-bottom: 22rem;
	display: grid;
	gap: 8rem;
	position: relative;
}
#footer .pagemenu::after {
	content: '';
	width: 34rem;
	height: 1px;
	background: var(--white);
	margin-inline: auto;
	position: absolute;
	inset: auto 0 0;
}
#footer .sns {
	margin-top: var(--s24);
	display: flex;
	justify-content: center;
	gap: var(--s16);
}
#footer .sns a {
	height: 20rem;
	white-space: nowrap;
	text-indent: 100%;
	filter: var(--img-white);
	display: block;
	overflow: hidden;
}
#footer .sns_f a {
	width: 20rem;
	background: url(/images/menu/aga/sns_facebook.svg) no-repeat center center / 100% auto;
}
#footer .sns_i a {
	width: 20rem;
	background: url(/images/menu/aga/sns_instagram.svg) no-repeat center center / 100% auto;
}
#footer .sns_t a {
	width: 18rem;
	background: url(/images/menu/aga/sns_x.svg) no-repeat center center / 100% auto;
}
#footer .sns_y a {
	width: 20rem;
	background: url(/images/menu/aga/sns_youtube.svg) no-repeat center center / 100% auto;
}
#footer .alltop {
	width: 254rem;
	margin: var(--s40) auto 0;
	position: relative;
}
#footer .alltop a {
	height: 42rem;
	background: var(--white);
	color: #efb75f;
	font-size: 13rem;
	font-weight: 700;
	letter-spacing: .12em;
	border-radius: 100vmax;
	padding-inline: 8rem 56rem;
	display: grid;
	place-content: center;
	position: relative;
	z-index: 1;
}
#footer .alltop::before {
	content: '';
	width: 254rem;
	height: 42rem;
	background: #111;
	border-radius: 100vmax;
	margin-inline: auto;
	position: absolute;
	inset: 0;
	top: 5rem;
}
#footer .alltop a::after {
	content: '';
	width: 53rem;
	height: 42rem;
	background: url(/images/menu/aga/luciashica2.png) no-repeat center center / 100% auto;
	position: absolute;
	top: 5rem;
	right: 5rem;
}
#footer .logo {
	margin-top: var(--s40);
}
#footer .logo a {
	width: 60rem;
	height: 78rem;
	background: url(/images/menu/aga/pc_logo.svg) no-repeat center center / 100% auto;
	white-space: nowrap;
	text-indent: 100%;
	filter: brightness(0) invert(1);
	margin-inline: auto;
	display: block;
	overflow: hidden;
}
#footer .subject {
	margin-top: var(--s16);
	display: flex;
	justify-content: center;
	gap: 4rem;
}
#footer .subject span {
	color: var(--white);
	line-height: 1.5;
	padding: 0 5rem 1rem;
	border: 1px var(--white) solid;
	border-radius: 5rem;
}
#footer .anchor {
	margin-top: 30rem;
}
#footer .copy {
	font-family: "Montserrat", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	margin-top: var(--s40);
}

/* フォーム */
.reserve {
	padding-block: 80rem 88rem;
}
.reserve_notice {
	margin-top: var(--s32);
	padding-inline: var(--s24);
}
.reserve_notice p {
	font-size: var(--s16);
}
.reserve_notice p:has(small) {
	margin-top: var(--s24);
}
.reserve_wrap {
	font-size: 0;
	margin-top: var(--s32);
}
.acusisIframe {
	min-height: 600rem !important;
}
.reserve_btn_wrap {
	margin-top: var(--s56);
}
.reserve_btn_wrap .cv_btn span {
	padding-right: var(--s24);
}
.hurry {
	margin: var(--s56) var(--s24) 0;
	padding: var(--s32) var(--s24);
}
.hurry .aten_ttl {
	background: url(/images/menu/aga/icon_caution_r.svg) no-repeat left center / 27rem auto;
	font-size: var(--s18);
	border-bottom: 1px var(--gray) solid;
	padding: var(--s16) 0 var(--s16) var(--s40);
}
.hurry .txt {
	margin-top: var(--s24);
}
.hurry .txt p {
	font-size: var(--s14);
}
.hurry a {
	border-bottom: 2rem var(--green) solid;
	margin-top: var(--s32);
	display: inline-block;
}
.hurry a span {
	font-size: var(--s16);
	font-weight: 700;
	padding-right: var(--s24);
}