@charset "utf-8";

/*///////////////////// font-face ///////////////////////////*/
@font-face {
	font-family: 'Zen Maru Gothic';
	src: url(/fonts/ZenMaruGothic-Regular.woff2);
	font-weight: 400;
	font-display: swap;
}
@font-face {
	font-family: 'Zen Maru Gothic';
	src: url(/fonts/ZenMaruGothic-Medium.woff2);
	font-weight: 500;
	font-display: swap;
}
@font-face {
	font-family: 'Zen Maru Gothic';
	src: url(/fonts/ZenMaruGothic-Bold.woff2);
	font-weight: 700;
	font-display: swap;
}
@font-face {
	font-family: 'Zen Kaku Gothic New';
	src: url(/fonts/ZenKakuGothicNew-Regular.woff2);
	font-weight: 400;
	font-display: swap;
}
@font-face {
	font-family: 'Zen Kaku Gothic New';
	src: url(/fonts/ZenKakuGothicNew-Medium.woff2);
	font-weight: 500;
	font-display: swap;
}
/*///////////////////// font-face ///////////////////////////*/

body {
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}

.reservation-side-link{
	display: none!important;/* テンプレ打ち消すために!importantかけてます */
}

/*==============================
リセット
==============================*/
.l-main{
	width: auto;
	padding: 0;
	background-color: #fff;
	overflow: hidden;
}

.l-main * {
	font-family: 'Zen Maru Gothic', sans-serif;
}

#contents{
	width: auto;
	padding: 0;
}

/*==============================
共通
==============================*/
[class*="section__wrapper--"]{
	padding-block: 100px;
}

[class*="section__inner--"]{
	width: 1140px;
	margin: auto;
}

[class*="section__ttl--"]{
	margin: 0;
	color: #2D2A22;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 1.28px;
	line-height: 1;
}

[class*="section__sub-ttl--"]{
	margin: 0;
	color: #F49E21;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 2.56px;
	line-height: 1;
}

[class*="ttl__box--"]{
	display: flex;
	flex-direction: column;
	gap: 15px;
}

/*==============================
メイン画像
==============================*/
.main__img{
	width: 100%;
	height: 100%;
}

.main__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/*==============================
Advice（CTA）
==============================*/
.section__wrapper--advice{
	padding-block: 64px 61px;
	background: url(../images/cta_bg.webp) no-repeat center / cover;
}
	.section__inner--advice{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 40px;
	}
	.advice__box{
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 30px;
	}
	.advice__sub-ttl{
		margin: 0;
		color: #F49E21;
		font-family: "Zen Maru Gothic", sans-serif;
		font-size: 32px;
		font-weight: 700;
		letter-spacing: 1.28px;
		line-height: 1;
	}
		[class*="advice__group--"]{
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 14px;
		}
			[class*="advice__caption--"]{
				position: relative;
				margin: 0;
				color: #2D2A22;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 18px;
				font-weight: 700;
				line-height: 1;
				text-align: center;
			}
			[class*="advice__caption--"]::before,
			[class*="advice__caption--"]::after{
				content: '';
				display: inline-block;
				width: 2px;
				height: 20px;
				border-radius: 40px;
				position: absolute;
				top: 0;
				bottom: 0;
				margin: auto;
			}
			.advice__caption--consult::before{
				left: -17px;
				background: #3588BF;
				transform: rotate(153deg);
			}
			.advice__caption--consult::after{
				right: -17px;
				background: #3588BF;
				transform: rotate(207deg);
			}
			.advice__caption--line::before{
				left: -17px;
				background: #06C755;
				transform: rotate(153deg);
			}
			.advice__caption--line::after{
				right: -17px;
				background: #06C755;
				transform: rotate(207deg);
			}
			[class*="advice__btn--"]{
				position: relative;
				display: flex;
				justify-content: center;
				align-items: center;
				width: 456px;
				height: 80px;
				border-radius: 40px;
				box-sizing: border-box;
				text-decoration: none;
			}
			.advice__btn--consult{
				background: #3588BF;
				box-shadow: 0 4px 0 0 #2C709D;
			}
			.advice__btn--line{
				background: #06C755;
				box-shadow: 0 4px 0 0 #01923D;
			}
			[class*="advice__btn--"]::after{
				content: '';
				display: block;
				width: 11px;
				height: 18px;
				background: url(../images/icon_arrow.svg) no-repeat center / contain;
				position: absolute;
				top: 0;
				bottom: 0;
				right: 27px;
				margin: auto;
			}
				[class*="advice__btn-text--"]{
					color: #FFFFFF;
					font-family: "Zen Maru Gothic", sans-serif;
					font-size: 28px;
					font-weight: 700;
					line-height: 1;
					letter-spacing: 1.12px;
					text-align: center;
				}

/*==============================
Worries
==============================*/
.section__wrapper--worries{
	position: relative;
}
.section__wrapper--worries::after{
	content: '';
	display: block;
	width: 132px;
	height: 55px;
	background: url(../images/worries_arrow.svg) no-repeat center / contain;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -34px;
	margin: auto;
	z-index: 1;
}
	.section__inner--worries{
		display: flex;
		justify-content: center;
		align-items: flex-start;
		gap: 60px;
	}
		.worries__content{
			display: flex;
			flex-direction: column;
			gap: 39px;
			width: 530px;
			flex-shrink: 0;
			margin: 38px 0 0;
		}
			.worries__list{
				display: flex;
				flex-direction: column;
				gap: 11px;
				margin: 0;
				padding: 0;
				list-style: none;
			}
				.worries__item{
					position: relative;
					margin: 0;
					padding: 0 0 8px 20px;
					border-bottom: 1px solid #C1D4E2;
					color: #2D2A22;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 18px;
					font-weight: 400;
					line-height: 1.6;
				}
				.worries__item::before{
					content: '';
					display: block;
					width: 8px;
					height: 8px;
					border-radius: 50%;
					background: #3588BF;
					position: absolute;
					top: 10px;
					left: 0;
				}
		.worries__img{
			margin: 0;
			width: 550px;
			height: 361px;
			flex-shrink: 0;
			border-radius: 20px;
			overflow: hidden;
		}
			.worries__img img{
				display: block;
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: bottom;
				vertical-align: top;
			}

/*==============================
Solution
==============================*/
.section__wrapper--solution{
	padding-block: 84px 100px;
	background-color: #FFFBEA;
}
	.section__inner--solution{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
		.ttl__box--solution{
			align-items: center;
			text-align: center;
			gap: 15px;
			margin: 0 0 37px;
		}
			.section__sub-ttl--solution{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--solution{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.solution__list{
			display: flex;
			align-items: flex-start;
			gap: 19px;
			margin: 0 0 40px;
			padding: 0;
			list-style: none;
			width: 100%;
		}
			.solution__item{
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 15px;
				flex-shrink: 0;
			}
			.solution__item:not(:last-child){
				padding-right: 20px;
				border-right: 1px solid #FFE4BC;
			}
				.solution__img{
					margin: 0;
					width: 255px;
					height: 180px;
					border-radius: 10px;
					overflow: hidden;
				}
					.solution__img img{
						display: block;
						width: 100%;
						height: 100%;
						object-fit: cover;
						vertical-align: top;
					}
				.solution__text{
					margin: 0;
					color: #2D2A22;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 16px;
					font-weight: 400;
					line-height: 1.63;
					text-align: center;
				}
		.solution__closing{
			text-align: center;
		}
			.solution__lead{
				margin: 0;
				color: #2D2A22;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 24px;
				font-weight: 500;
				line-height: 1.4;
			}
				.solution__lead-accent{
					color: #F49E21;
					font-family: "Zen Maru Gothic", sans-serif;
					font-size: 30px;
					font-weight: 700;
					line-height: 1.4;
				}
			.solution__note{
				margin: 0;
				color: #2D2A22;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 24px;
				font-weight: 500;
				line-height: 1.3;
			}

/*==============================
Leave（なぜ仲介手数料0円）
==============================*/
.section__wrapper--leave{
	padding-block: 87px 80px;
	background-color: #EDF7FF;
}
	.section__inner--leave{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
		.ttl__box--leave{
			align-items: center;
			text-align: center;
			gap: 15px;
			margin: 0 0 37px;
		}
			.section__sub-ttl--leave{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--leave{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.leave__explanation{
			display: flex;
			flex-direction: column;
			gap: 25px;
			width: 100%;
			margin: 0 0 41px;
		}
			.leave__body{
				display: flex;
				flex-direction: column;
				gap: 15px;
			}
				.leave__text{
					margin: 0;
					color: #2D2A22;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 18px;
					font-weight: 400;
					line-height: 1.61;
				}
					.leave__marker{
						background-image: linear-gradient(#FFF1B8, #FFF1B8);
						background-repeat: no-repeat;
						background-size: 100% 16px;
						background-position: left 0.8em;
						-webkit-box-decoration-break: clone;
						box-decoration-break: clone;
						font-family: "Zen Kaku Gothic New", sans-serif;
					}
				.leave__note{
					margin: 0;
					color: #5E5E5E;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 13px;
					font-weight: 400;
					line-height: 1.62;
				}
		.leave__diagrams{
			display: flex;
			align-items: center;
			gap: 30px;
			margin: 0 0 38px;
		}
			[class*="leave__diagram--"]{
				position: relative;
				width: 555px;
				flex-shrink: 0;
			}
				[class*="leave__diagram-ttl--"]{
					position: absolute;
					top: 5px;
					left: 0;
					right: 0;
					margin: 0;
					color: #333333;
					font-family: "Zen Maru Gothic", sans-serif;
					font-size: 18px;
					font-weight: 700;
					line-height: 1;
					text-align: center;
					z-index: 1;
				}
				.leave__diagram-ttl--company{
					color: #2D2A22;
				}
				[class*="leave__diagram-body--"]{
					display: flex;
					flex-direction: column;
					align-items: center;
					gap: 32px;
					margin-top: 15px;
					padding: 45px 40px 35px;
					box-sizing: border-box;
				}
				.leave__diagram-body--general{
					background: #FFFFFF;
				}
				.leave__diagram-body--company{
					background: #FFFBEA;
				}
					.leave__diagram-img{
						margin: 0;
						width: 301px;
						height: 250px;
					}
					[class*="leave__diagram--"]:last-child .leave__diagram-img{
						width: 308px;
					} 
						.leave__diagram-img img{
							display: block;
							width: 100%;
							height: 100%;
							object-fit: contain;
							vertical-align: top;
						}
					.leave__diagram-caption{
						margin: 0;
						width: 475px;
						color: #333333;
						font-family: "Zen Maru Gothic", sans-serif;
						font-size: 16px;
						font-weight: 500;
						line-height: 1;
						text-align: center;
					}
						.leave__diagram-accent{
							color: #F36417;
							font-family: "Zen Maru Gothic", sans-serif;
							font-size: 16px;
							font-weight: 500;
							line-height: 1.8;
						}
		.leave__table{
			width: 1140px;
			border-collapse: separate;
			border-spacing: 0;
			table-layout: fixed;
			margin: 0 0 40px;
		}
			.leave__table th,
			.leave__table td{
				width: 380px;
				height: 75px;
				padding: 0 30px;
				box-sizing: border-box;
				text-align: center;
				vertical-align: middle;
			}
			.leave__th--label{
				background: #3588BF;
				border-radius: 20px 0 0 0;
				color: #FFFFFF;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 18px;
				font-weight: 700;
				line-height: 1;
			}
			.leave__th--general{
				background: #636363;
				color: #FFFFFF;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 18px;
				font-weight: 700;
				line-height: 1;
			}
			.leave__th--company{
				--line-top: -3px;
				--line-right: -3px;
				--line-bottom: 0;
				--line-left: -3px;
				position: relative;
				background: #F49E21;
				border-radius: 0 10px 0 0;
				color: #FFFFFF;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 18px;
				font-weight: 700;
				line-height: 1;
			}
			.leave__th--company::after{
				content: "";
				position: absolute;
				top: var(--line-top);
				right: var(--line-right);
				bottom: var(--line-bottom);
				left: var(--line-left);
				border: 3px solid #F49E21;
				border-bottom: none;
				border-radius: 0 20px 0 0;
				box-sizing: border-box;
				pointer-events: none;
			}
			.leave__row-label{
				background: #F3F4F4;
				border: 1px solid #E6E6E6;
				border-top: none;
				color: #3588BF;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 18px;
				font-weight: 700;
				line-height: 1.2;
			}
			.leave__table tbody tr:last-child .leave__row-label{
				border-radius: 0 0 0 20px;
			}
			.leave__td--general{
				background: #FFFFFF;
				border-bottom: 1px solid #E6E6E6;
				color: #2D2A22;
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 16px;
				font-weight: 400;
				line-height: 1.6;
			}
			.leave__td--company{
				--line-top: 0;
				--line-right: -3px;
				--line-bottom: -3px;
				--line-left: -4px;
				position: relative;
				background: #FFFFFF;
				color: #2D2A22;
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 16px;
				font-weight: 400;
				line-height: 1.6;
			}
			.leave__td--company::after{
				content: "";
				position: absolute;
				top: var(--line-top);
				right: var(--line-right);
				bottom: var(--line-bottom);
				left: var(--line-left);
				border-right: 3px solid #F49E21;
				border-left: 3px solid #F49E21;
				border-bottom: 1px solid #FFF1DD;
				box-sizing: border-box;
				pointer-events: none;
			}
			.leave__table tbody tr:last-child .leave__td--company{
				border-radius: 0 0 20px 0;
			}
			.leave__table tbody tr:last-child .leave__td--company::after{
				border-bottom: 3px solid #F49E21;
				border-radius: 0 0 20px 0;
			}
				.leave__fee-zero{
					color: #F36417;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 16px;
					font-weight: 400;
					line-height: 1.6;
				}
					.leave__fee-num{
						color: #F36417;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 30px;
						font-weight: 400;
						line-height: 1.6;
					}
		.leave__staff{
			position: relative;
			display: flex;
			align-items: flex-start;
			gap: 25px;
			width: 1140px;
			padding: 40px;
			box-sizing: border-box;
			background: #FFFFFF;
			border-radius: 20px;
		}
			.leave__badge{
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				gap: 0;
				width: 170px;
				height: 170px;
				margin: 0;
				padding-bottom: 7px;
				box-sizing: border-box;
				background: #F49E21;
				border-radius: 9999px;
				position: absolute;
				top: -20px;
				left: -34px;
				transform: rotate(-10deg);
				z-index: 1;
			}
				.leave__badge-label{
					color: #FFFFFF;
					font-family: "Zen Maru Gothic", sans-serif;
					font-size: 30px;
					font-weight: 500;
					line-height: 1;
					text-align: center;
				}
				.leave__badge-num-wrap{
					display: flex;
					align-items: flex-end;
				}
					.leave__badge-num{
						color: #FFFFFF;
						font-family: "Zen Maru Gothic", sans-serif;
						font-size: 60px;
						font-weight: 700;
						line-height: 1;
					}
					.leave__badge-unit{
						color: #FFFFFF;
						font-family: "Zen Maru Gothic", sans-serif;
						font-size: 24px;
						font-weight: 700;
						line-height: 1.2;
						text-align: center;
					}
			.leave__staff-img{
				margin: 0;
				width: 360px;
				height: 361px;
				flex-shrink: 0;
				border-radius: 10px;
				overflow: hidden;
			}
				.leave__staff-img img{
					display: block;
					width: 100%;
					height: 100%;
					object-fit: cover;
					vertical-align: top;
				}
			.leave__staff-content{
				display: flex;
				flex-direction: column;
				gap: 0;
				flex: 1;
				min-width: 0;
				margin: 76px 0 0;
			}
				.leave__staff-ttl{
					margin: 0 0 10px;
					color: #3588BF;
					font-family: "Zen Maru Gothic", sans-serif;
					font-size: 24px;
					font-weight: 500;
					line-height: 1.6;
				}
				.leave__staff-text{
					margin: 0 0 16px;
					color: #2D2A22;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 16px;
					font-weight: 400;
					line-height: 1.62;
				}
				.leave__staff-info{
					display: flex;
					align-items: center;
					gap: 10px;
					width: 100%;
				}
					.leave__staff-name{
						display: flex;
						align-items: baseline;
						gap: 15px;
						flex: 1;
						margin: 0;
						min-width: 0;
					}
						.leave__staff-role{
							color: #2D2A22;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 16px;
							font-weight: 400;
							line-height: 1.6;
						}
						.leave__staff-person{
							color: #2D2A22;
							font-family: "Zen Maru Gothic", sans-serif;
							font-size: 24px;
							font-weight: 400;
							line-height: 1;
						}
					.leave__qualification{
						display: flex;
						align-items: flex-end;
						gap: 5px;
						margin: 0;
						padding: 0;
						list-style: none;
						flex-shrink: 0;
					}
						.leave__qualification-item{
							padding: 2px 10px 3px;
							background: #FEF5E9;
							border-radius: 9999px;
							color: #F49E21;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 13px;
							font-weight: 400;
							line-height: 1.6;
						}

/*==============================
New house（新築一戸建て）
==============================*/
.section__wrapper--new-house{
	padding-block: 84px 99px;
	overflow: hidden;
}
	.section__inner--new-house{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 38px;
		width: 100%;
	}
		.ttl__box--new-house{
			align-items: center;
			text-align: center;
		}
			.section__sub-ttl--new-house{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--new-house{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.new-house__content{
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 30px;
			width: 100%;
		}
		.new-house__slider{
			position: relative;
			width: 100%;
		}
			.new-house__list{
				display: flex;
			}
			.new-house__item{
				width: 320px;
				height: auto;
				box-sizing: border-box;
			}
				.new-house__link{
					display: flex;
					flex-direction: column;
					align-items: center;
					gap: 12px;
					width: 100%;
					padding: 20px 20px 21px;
					box-sizing: border-box;
					background: #FFFFFF;
					border: 1px solid #E6E6E6;
					border-radius: 10px;
				}
					.new-house__img{
						position: relative;
						margin: 0;
						width: 280px;
						height: 210px;
						border-radius: 5px;
						overflow: hidden;
					}
						.new-house__img > a{
							display: block;
							width: 100%;
							height: 100%;
						}
						.new-house__img img{
							display: block;
							width: 100%;
							height: 100%;
							object-fit: contain;
							background-color: #f5f5f5;
						}
						.new-house__favorite{
							display: block;
							width: 50px;
							height: 50px;
							padding: 0;
							border: none;
							background: url(../images/icon_favorite.svg) no-repeat center / contain;
							position: absolute;
							top: 8px;
							right: 8px;
							cursor: pointer;
							z-index: 2;
						}
						.new-house__favorite.is-checked{
							background: url(../images/icon_favorite_on.svg) no-repeat center / contain;
						}
					.new-house__info{
						display: flex;
						flex-direction: column;
						align-items: flex-start;
						gap: 0;
						width: 280px;
						text-decoration: none;
						color: inherit;
					}
						.new-house__name{
							margin: 0;
							width: 100%;
							overflow: hidden;
							color: #2D2A22;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 16px;
							font-weight: 500;
							line-height: 1.6;
							text-overflow: ellipsis;
							white-space: nowrap;
						}
						.new-house__price-wrap{
							display: flex;
							align-items: flex-end;
							justify-content: center;
							gap: 8px;
							margin: 0 0 3px;
						}
							.new-house__price{
								margin: 0;
								color: #2D2A22;
								font-family: "Zen Kaku Gothic New", sans-serif;
								font-size: 13px;
								font-weight: 400;
								line-height: 1.6;
								white-space: nowrap;
							}
								.new-house__price .price{
									color: #F49E21;
									font-family: "Zen Maru Gothic", sans-serif;
									font-size: 30px;
									font-weight: 700;
									line-height: 1;
								}
							.new-house__spec{
								margin: 0;
								color: #2D2A22;
								font-family: "Zen Kaku Gothic New", sans-serif;
								font-size: 13px;
								font-weight: 400;
								line-height: 1.6;
								white-space: nowrap;
							}
						.new-house__address,
						.new-house__traffic{
							margin: 0 0 2px;
							width: 100%;
							overflow: hidden;
							color: #2D2A22;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 13px;
							font-weight: 400;
							line-height: 1.6;
							text-overflow: ellipsis;
							white-space: nowrap;
						}
			.new-house__pagination{
				position: static;
				margin-top: 30px;
			}
			.new-house__slider .swiper-pagination-bullet{
				width: 20px;
				height: 2px;
				margin: 0 3px !important;
				border-radius: 4px;
				background: #CBCBCB;
				opacity: 1;
			}
			.new-house__slider .swiper-pagination-bullet-active{
				background: #3588BF;
			}
		.new-house__btn{
			display: flex;
			justify-content: center;
			align-items: center;
			width: 257px;
			height: 48px;
			background: #3588BF;
			border-radius: 150px;
			text-decoration: none;
		}
			.new-house__btn-text{
				color: #FFFFFF;
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 16px;
				font-weight: 400;
				line-height: 1.6;
			}

/*==============================
Contact diagnosis
==============================*/
.section__wrapper--contact-diagnosis{
	padding-block: 65px 60px;
	background: url(../images/contact_bg.webp) no-repeat center / cover;
}
	.section__inner--contact-diagnosis{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
		.ttl__box--contact-diagnosis{
			align-items: center;
			text-align: center;
			margin: 0 0 37px;
		}
			.section__sub-ttl--contact-diagnosis{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--contact-diagnosis{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.contact-diagnosis__text{
			margin: 0 0 44px;
			width: 100%;
			color: #2D2A22;
			font-family: "Zen Kaku Gothic New", sans-serif;
			font-size: 18px;
			font-weight: 400;
			line-height: 1.6;
			text-align: center;
		}
		.contact-diagnosis__group{
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 14px;
			width: 600px;
		}
			.contact-diagnosis__caption{
				position: relative;
				margin: 0;
				color: #2D2A22;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 18px;
				font-weight: 700;
				line-height: 1;
				text-align: center;
			}
			.contact-diagnosis__caption::before,
			.contact-diagnosis__caption::after{
				content: '';
				display: block;
				width: 2px;
				height: 20px;
				border-radius: 40px;
				background: #06C755;
				position: absolute;
				top: 0;
				bottom: 0;
				margin: auto;
			}
			.contact-diagnosis__caption::before{
				left: -17px;
				transform: rotate(153deg);
			}
			.contact-diagnosis__caption::after{
				right: -17px;
				transform: rotate(207deg);
			}
			.contact-diagnosis__btn{
				position: relative;
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: 90px;
				background: #06C755;
				border-radius: 9999px;
				box-shadow: 0 4px 0 0 #01923D;
				box-sizing: border-box;
				text-decoration: none;
			}
			.contact-diagnosis__btn::after{
				content: '';
				display: block;
				width: 11px;
				height: 18px;
				background: url(../images/icon_arrow.svg) no-repeat center / contain;
				position: absolute;
				top: 0;
				bottom: 0;
				right: 30px;
				margin: auto;
			}
				.contact-diagnosis__btn-text{
					color: #FFFFFF;
					font-family: "Zen Maru Gothic", sans-serif;
					font-size: 28px;
					font-weight: 700;
					line-height: 1.2;
					letter-spacing: 1.12px;
					text-align: center;
				}

/*==============================
Achievement（お取引実績例）
==============================*/
.section__wrapper--achievement{
	padding-block: 85px 100px;
	background-color: #EDF7FF;
}
	.section__inner--achievement{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 40px;
	}
		.ttl__box--achievement{
			align-items: center;
			text-align: center;
		}
			.section__sub-ttl--achievement{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--achievement{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.achievement__list{
			display: flex;
			align-items: center;
			gap: 30px;
			margin: 0;
			padding: 0;
			list-style: none;
		}
			.achievement__item{
				display: flex;
				flex-direction: column;
				align-items: center;
				width: 360px;
				padding: 27px 26px 26px;
				box-sizing: border-box;
				background: #FFFFFF;
			}
				.achievement__info{
					display: flex;
					align-items: center;
					gap: 12px;
					margin-bottom: 20px;
				}
					.achievement__icon{
						display: block;
						width: 80px;
						height: 80px;
						flex-shrink: 0;
					}
					.achievement__price-wrap{
						display: flex;
						flex-direction: column;
						align-items: flex-start;
						justify-content: flex-end;
						gap: 0;
					}
						.achievement__label{
							margin: 0;
							color: #333333;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 16px;
							font-weight: 400;
							line-height: 1;
						}
						.achievement__price{
							display: flex;
							align-items: flex-end;
							gap: 1px;
							margin: 0;
						}
							.achievement__num--price{
								color: #3588BF;
								font-family: "Zen Kaku Gothic New", sans-serif;
								font-size: 60px;
								font-weight: 500;
								line-height: 1;
							}
							.achievement__unit{
								color: #333333;
								font-family: "Zen Kaku Gothic New", sans-serif;
								font-size: 16px;
								font-weight: 400;
								line-height: 1.6;
							}
				.achievement__check{
					display: flex;
					justify-content: center;
					align-items: center;
					width: 29px;
					height: 29px;
					margin: 0 0 -15px;
					background: #3588BF;
					border-radius: 9999px;
					position: relative;
					z-index: 1;
				}
					.achievement__check img{
						display: block;
						width: 23px;
						height: 23px;
					}
				.achievement__saving{
					display: flex;
					align-items: baseline;
					justify-content: center;
					gap: 5px;
					width: 100%;
					margin: 0;
					padding: 13px 20px 25px;
					box-sizing: border-box;
					background: #FFFBEA;
					position: relative;
					z-index: 0;
				}
					.achievement__saving-label{
						color: #333333;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 16px;
						font-weight: 400;
						line-height: 1;
					}
					.achievement__num--saving{
						color: #F49E21;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 60px;
						font-weight: 500;
						line-height: 1;
					}

/*==============================
Flow（ご相談の流れ）
==============================*/
.section__wrapper--flow{
	padding-block: 80px 100px;
}
	.section__inner--flow{
		display: flex;
		align-items: flex-start;
		gap: 60px;
	}
		.flow__img{
			margin: 0;
			width: 550px;
			height: 435px;
			flex-shrink: 0;
			border-radius: 20px;
			overflow: hidden;
		}
			.flow__img img{
				display: block;
				width: 100%;
				height: 100%;
				object-fit: cover;
				vertical-align: top;
			}
		.flow__content{
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 35px;
			width: 530px;
			flex-shrink: 0;
			margin: 39px 0 0;
		}
			.section__sub-ttl--flow{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--flow{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
			.flow__list{
				display: flex;
				flex-direction: column;
				gap: 18px;
				margin: 0;
				padding: 0;
				list-style: none;
				position: relative;
			}
			.flow__list::before{
				content: '';
				display: block;
				width: 1px;
				height: 200px;
				background: #E6E6E6;
				position: absolute;
				top: 7px;
				left: 25px;
			}
				.flow__item{
					position: relative;
					z-index: 1;
				}
					.flow__ttl-wrap{
						display: flex;
						align-items: center;
						gap: 10px;
						margin-bottom: -5px;
					}
						.flow__num{
							display: flex;
							justify-content: center;
							width: 50px;
							height: 50px;
							margin: 0;
							padding: 7px 0 0;
							background: #FFEFC2;
							border-radius: 9999px;
							color: #F49E21;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 24px;
							font-weight: 700;
							line-height: 1.4;
							text-align: center;
							flex-shrink: 0;
						}
						.flow__ttl{
							margin: 0;
							color: #363636;
							font-family: "Zen Maru Gothic", sans-serif;
							font-size: 24px;
							font-weight: 500;
							line-height: 1.4;
						}
					.flow__text{
						margin: 0;
						padding-left: 60px;
						color: #2D2A22;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 16px;
						font-weight: 400;
						line-height: 1.8;
					}

/*==============================
Contact second
==============================*/
.section__wrapper--contact-second{
	padding-block: 66px 60px;
	background: url(../images/contact_bg-second.webp) no-repeat center / cover;
}
	.section__inner--contact-second{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
		.ttl__box--contact-second{
			align-items: center;
			text-align: center;
			margin: 0 0 38px;
		}
			.section__sub-ttl--contact-second{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--contact-second{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.contact-second__text{
			margin: 0 0 43px;
			width: 100%;
			color: #2D2A22;
			font-family: "Zen Kaku Gothic New", sans-serif;
			font-size: 18px;
			font-weight: 400;
			line-height: 1.6;
			text-align: center;
		}
		.contact-second__btns{
			display: flex;
			align-items: flex-end;
			gap: 30px;
		}
			.contact-second__tel{
				display: flex;
				flex-direction: column;
				align-items: center;
				justify-content: center;
				gap: 13px;
				width: 456px;
			}
				.contact-second__tel-link{
					display: flex;
					align-items: baseline;
					gap: 9px;
					text-decoration: none;
				}
					.contact-second__tel-icon{
						display: block;
						width: 41px;
						height: 42px;
						flex-shrink: 0;
					}
					.contact-second__tel-num{
						color: #3588BF;
						font-family: "Zen Maru Gothic", sans-serif;
						font-size: 60px;
						font-weight: 700;
						line-height: 1;
						letter-spacing: 2px;
					}
				.contact-second__info{
					display: flex;
					align-items: center;
					gap: 20px;
				}
					.contact-second__hours,
					.contact-second__holiday{
						margin: 0;
						color: #000000;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 13px;
						font-weight: 400;
						line-height: 1.6;
					}
			.contact-second__line{
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 15px;
			}
				.contact-second__caption{
					position: relative;
					margin: 0;
					color: #2D2A22;
					font-family: "Zen Maru Gothic", sans-serif;
					font-size: 18px;
					font-weight: 700;
					line-height: 1;
					text-align: center;
				}
				.contact-second__caption::before,
				.contact-second__caption::after{
					content: '';
					display: block;
					width: 2px;
					height: 20px;
					border-radius: 40px;
					background: #06C755;
					position: absolute;
					top: 0;
					bottom: 0;
					margin: auto;
				}
				.contact-second__caption::before{
					left: -17px;
					transform: rotate(153deg);
				}
				.contact-second__caption::after{
					right: -17px;
					transform: rotate(207deg);
				}
				.contact-second__btn{
					position: relative;
					display: flex;
					justify-content: center;
					align-items: center;
					width: 456px;
					height: 80px;
					background: #06C755;
					border-radius: 40px;
					box-shadow: 0 4px 0 0 #01923D;
					box-sizing: border-box;
					text-decoration: none;
				}
				.contact-second__btn::after{
					content: '';
					display: block;
					width: 11px;
					height: 18px;
					background: url(../images/icon_arrow.svg) no-repeat center / contain;
					position: absolute;
					top: 0;
					bottom: 0;
					right: 30px;
					margin: auto;
				}
					.contact-second__btn-text{
						color: #FFFFFF;
						font-family: "Zen Maru Gothic", sans-serif;
						font-size: 28px;
						font-weight: 700;
						line-height: 1;
						letter-spacing: 1.12px;
						text-align: center;
					}

/*==============================
Reason（選ばれる理由）
==============================*/
.section__wrapper--reason{
	padding-block: 84px 100px;
	background-color: #FFFBEA;
}
	.section__inner--reason{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 37px;
	}
		.ttl__box--reason{
			align-items: center;
			text-align: center;
		}
			.section__sub-ttl--reason{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--reason{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.reason__list{
			display: flex;
			flex-wrap: wrap;
			align-items: flex-start;
			gap: 20px;
			margin: 0;
			padding: 0;
			list-style: none;
			width: 100%;
		}
			.reason__item{
				display: flex;
				align-items: center;
				gap: 15px;
				width: 560px;
			}
				.reason__img{
					margin: 0;
					width: 170px;
					height: 170px;
					flex-shrink: 0;
				}
					.reason__img img{
						display: block;
						width: 100%;
						height: 100%;
						vertical-align: top;
					}
				.reason__body{
					display: flex;
					flex-direction: column;
					align-items: flex-start;
					gap: 10px;
					flex: 1;
					min-width: 0;
				}
					.reason__ttl{
						display: flex;
						align-items: center;
						gap: 8px;
						margin: 0;
					}
						.reason__num{
							color: #F49E21;
							font-family: "Zen Maru Gothic", sans-serif;
							font-size: 30px;
							font-weight: 700;
							line-height: 1;
							letter-spacing: 1.2px;
							flex-shrink: 0;
						}
						.reason__ttl-text{
							color: #2D2A22;
							font-family: "Zen Maru Gothic", sans-serif;
							font-size: 24px;
							font-weight: 500;
							line-height: 1.4;
						}
					.reason__item:last-child .reason__ttl{
						align-items: flex-start;
					}
					.reason__text{
						margin: 0;
						color: #2D2A22;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 16px;
						font-weight: 400;
						line-height: 1.6;
					}

/*==============================
Voice（お客様の声）
==============================*/
.section__wrapper--voice{
	padding-block: 104px 100px;
	overflow: hidden;
}
	.section__inner--voice{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 40px;
		width: 100%;
	}
		.ttl__box--voice{
			align-items: center;
			text-align: center;
		}
		.voice__content{
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 31px;
			width: 100%;
		}
		.voice__slider{
			position: relative;
			width: 100%;
		}
			.voice__item{
				width: 550px;
				height: auto;
				box-sizing: border-box;
			}
				.voice__card{
					display: flex;
					align-items: center;
					gap: 20px;
					width: 100%;
					padding: 40px;
					box-sizing: border-box;
					background: #EDF7FF;
					border-radius: 20px;
				}
					.voice__avatar{
						display: flex;
						flex-direction: column;
						align-items: center;
						gap: 9px;
						width: 84px;
						flex-shrink: 0;
					}
						.voice__img{
							margin: 0;
							width: 84px;
							height: 87px;
						}
							.voice__img img{
								display: block;
								width: 100%;
								height: 100%;
								object-fit: cover;
								border-radius: 50%;
							}
						.voice__name{
							margin: 0;
							width: 100%;
							overflow: hidden;
							color: #3588BF;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 14px;
							font-weight: 500;
							line-height: 1.6;
							text-align: center;
							text-overflow: ellipsis;
							white-space: nowrap;
						}
					.voice__text{
						flex: 1;
						min-width: 0;
						margin: 0;
						color: #2D2A22;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 16px;
						font-weight: 400;
						line-height: 1.6;
						display: -webkit-box;
						-webkit-box-orient: vertical;
						-webkit-line-clamp: 4;
						overflow: hidden;
						text-overflow: ellipsis;
					}
			.voice__pagination{
				position: static;
				margin-top: 26px;
			}
			.voice__slider .swiper-pagination-bullet{
				width: 20px;
				height: 2px;
				margin: 0 3px !important;
				border-radius: 4px;
				background: #CBCBCB;
				opacity: 1;
			}
			.voice__slider .swiper-pagination-bullet-active{
				background: #3588BF;
			}
		.voice__btn{
			display: flex;
			justify-content: center;
			align-items: center;
			width: 257px;
			height: 48px;
			background: #3588BF;
			border-radius: 150px;
			text-decoration: none;
		}
			.voice__btn-text{
				color: #FFFFFF;
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 16px;
				font-weight: 400;
				line-height: 1.6;
			}

/*==============================
Company（会社情報）
==============================*/
.section__wrapper--company{
	padding-block: 99px 100px;
	background-color: #FFFBEA;
}
	.company__content{
		display: flex;
		align-items: stretch;
		gap: 40px;
		width: 100%;
	}
			.company__info-area{
				display: flex;
				flex: 1;
				flex-direction: column;
				gap: 40px;
				min-width: 0;
				margin: 4px 0 0;
			}
				.ttl__box--company{
					align-items: flex-start;
				}
				.company__info-content{
					display: flex;
					flex-direction: column;
					gap: 30px;
					width: 100%;
				}
					.company__name{
						margin: 0;
						color: #2D2A22;
						font-family: "Zen Maru Gothic", sans-serif;
						font-size: 24px;
						font-weight: 500;
						line-height: 1.4;
					}
					.company__info{
						display: flex;
						flex-direction: column;
						gap: 18px;
						width: 100%;
					}
						.company__row{
							display: flex;
							flex-wrap: wrap;
							align-items: flex-start;
							column-gap: 36px;
							row-gap: 16px;
							width: 100%;
						}
							.company__label{
								margin: 0;
								width: 96px;
								color: #2D2A22;
								font-family: "Zen Maru Gothic", sans-serif;
								font-size: 16px;
								font-weight: 500;
								line-height: 1;
								flex-shrink: 0;
							}
							.company__value{
								flex: 1;
								min-width: 0;
								margin: 0;
								color: #2D2A22;
								font-family: "Zen Kaku Gothic New", sans-serif;
								font-size: 16px;
								font-weight: 400;
								line-height: 1.6;
							}
							.company__row::after{
								content: "";
								display: block;
								width: 100%;
								height: 1px;
								background: linear-gradient(to right, #F49E21 110px, #FCECD5 110px);
							}
			.company__photo-area{
				display: flex;
				flex-direction: column;
				justify-content: space-between;
				align-items: flex-start;
				flex-shrink: 0;
				width: 590px;
				overflow: hidden;
				gap: 33px;
			}
				.company__photo-wrap{
					display: flex;
					flex-direction: column;
					gap: 15px;
					width: 100%;
				}
					.company__slider{
						position: relative;
						width: 100%;
						overflow: hidden;
						border-radius: 20px;
					}
						.company__item{
							position: relative;
							width: 590px;
							height: 385px;
							overflow: hidden;
							border-radius: 20px;
							box-sizing: border-box;
						}
							.company__img{
								position: relative;
								margin: 0;
								width: 100%;
								height: 100%;
								border-radius: 20px;
								overflow: hidden;
							}
								.company__img img{
									display: block;
									width: 100%;
									height: 100%;
									object-fit: contain;
									background-color: #f5f5f5;
									border-radius: 20px;
								}
						.company__pagination{
							position: static !important;
							left: auto !important;
							transform: none !important;
							width: 100%;
							text-align: left !important;
							z-index: 1;
						}
						.company__pagination .swiper-pagination-bullet{
							width: 20px;
							height: 2px;
							margin: 0 3px !important;
							border-radius: 4px;
							background: #CBCBCB;
							opacity: 1;
						}
						.company__pagination .swiper-pagination-bullet:first-child{
							margin-left: 0 !important;
						}
						.company__pagination .swiper-pagination-bullet-active{
							background: #3588BF;
						}
				.company__btn{
					display: flex;
					justify-content: center;
					align-items: center;
					width: 257px;
					height: 48px;
					background: #3588BF;
					border-radius: 150px;
					text-decoration: none;
				}
					.company__btn-text{
						color: #FFFFFF;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 16px;
						font-weight: 400;
						line-height: 1.6;
					}

/*==============================
Contact（最終CTA）
==============================*/
.section__wrapper--contact{
	padding-block: 66px 60px;
	background: url(../images/contact_bg-bottom.webp) no-repeat center / cover;
}
	.section__inner--contact{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
		.ttl__box--contact{
			align-items: center;
			text-align: center;
			margin: 0 0 37px;
		}
			.section__sub-ttl--contact{
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 20px;
				letter-spacing: 0.8px;
			}
			.section__ttl--contact{
				font-size: 40px;
				letter-spacing: 1.6px;
			}
		.contact__text{
			margin: 0 0 43px;
			width: 100%;
			color: #2D2A22;
			font-family: "Zen Kaku Gothic New", sans-serif;
			font-size: 18px;
			font-weight: 400;
			line-height: 1.6;
			text-align: center;
		}
		.contact__btns{
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 43px;
		}
			.contact__row{
				display: flex;
				align-items: flex-end;
				gap: 30px;
			}
				.contact__tel{
					display: flex;
					flex-direction: column;
					align-items: center;
					justify-content: center;
					gap: 14px;
					width: 456px;
				}
					.contact__tel-link{
						display: flex;
						align-items: baseline;
						gap: 15px;
						text-decoration: none;
					}
						.contact__tel-icon{
							display: block;
							width: 35px;
							height: 35px;
							flex-shrink: 0;
						}
						.contact__tel-num{
							color: #3588BF;
							font-family: "Zen Maru Gothic", sans-serif;
							font-size: 60px;
							font-weight: 700;
							line-height: 1;
							letter-spacing: 2px;
						}
					.contact__info{
						display: flex;
						align-items: center;
						gap: 20px;
						margin: 0;
					}
						.contact__hours,
						.contact__holiday{
							margin: 0;
							color: #000000;
							font-family: "Zen Kaku Gothic New", sans-serif;
							font-size: 13px;
							font-weight: 400;
							line-height: 1.6;
						}
				.contact__group{
					display: flex;
					flex-direction: column;
					align-items: center;
					gap: 15px;
					width: 456px;
				}
					.contact__caption{
						position: relative;
						margin: 0;
						color: #2D2A22;
						font-family: "Zen Maru Gothic", sans-serif;
						font-size: 18px;
						font-weight: 700;
						line-height: 1;
						text-align: center;
					}
					.contact__caption::before,
					.contact__caption::after{
						content: '';
						display: block;
						width: 2px;
						height: 20px;
						border-radius: 40px;
						position: absolute;
						top: 0;
						bottom: 0;
						margin: auto;
					}
					.contact__caption::before{
						left: -17px;
						transform: rotate(153deg);
					}
					.contact__caption::after{
						right: -17px;
						transform: rotate(207deg);
					}
					.contact__caption--line::before,
					.contact__caption--line::after{
						background: #06C755;
					}
					.contact__caption--consult::before,
					.contact__caption--consult::after{
						background: #3588BF;
					}
					.contact__caption--reserve::before,
					.contact__caption--reserve::after{
						background: #F49E21;
					}
					.contact__btn{
						position: relative;
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: 80px;
						border-radius: 40px;
						box-sizing: border-box;
						text-decoration: none;
					}
					.contact__btn--line{
						background: #06C755;
						box-shadow: 0 4px 0 0 #01923D;
					}
					.contact__btn--consult{
						background: #3588BF;
						box-shadow: 0 4px 0 0 #2C709D;
					}
					.contact__btn--reserve{
						background: #F49E21;
						box-shadow: 0 4px 0 0 #D27C00;
						justify-content: flex-start;
						padding-left: 68px;
					}
					.contact__btn::after{
						content: '';
						display: block;
						width: 11px;
						height: 18px;
						background: url(../images/icon_arrow.svg) no-repeat center / contain;
						position: absolute;
						top: 0;
						bottom: 0;
						right: 30px;
						margin: auto;
					}
						.contact__btn-text{
							color: #FFFFFF;
							font-family: "Zen Maru Gothic", sans-serif;
							font-size: 28px;
							font-weight: 700;
							line-height: 1;
							letter-spacing: 1.12px;
							text-align: center;
						}
						.contact__btn-text--reserve{
							font-size: 29px;
							letter-spacing: 1.16px;
						}

/*==============================
Side nav（右サイド追従）
Figma: 60x180 / gap 10 / shadow 0 4px 0
==============================*/
.side-nav{
	position: fixed;
	top: 50%;
	right: 0;
	z-index: 2;
	transform: translateY(-50%);
	transition: opacity 0.3s, visibility 0.3s;
}
.side-nav.is-hidden{
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}
	.side-nav__wrap{
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: 10px;
	}
		.side-nav__btn{
			position: relative;
			display: flex;
			flex-direction: column;
			align-items: center;
			width: 60px;
			height: 180px;
			box-sizing: border-box;
			border-radius: 10px 0 0 10px;
			text-decoration: none;
			padding: 36px 0 0;
		}
		.side-nav__btn--line{
			background: #06C755;
			box-shadow: 0 4px 0 0 #01923D;
		}
		.side-nav__btn--consult{
			background: #3588BF;
			box-shadow: 0 4px 0 0 #2C709D;
		}
			.side-nav__btn-text{
				width: 20px;
				color: #FFFFFF;
				font-family: "Zen Maru Gothic", sans-serif;
				font-size: 24px;
				font-weight: 700;
				line-height: 1;
				text-align: center;
				writing-mode: vertical-rl;
				text-orientation: upright;
				letter-spacing: 4.7px;
			}
			.side-nav__badge{
				display: block;
				width: 79px;
				height: 84px;
				position: absolute;
				top: -44px;
				left: -27px;
				pointer-events: none;
			}
				.side-nav__badge-icon{
					display: block;
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
				.side-nav__badge-text{
					display: block;
					width: 100%;
					color: #06C755;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 12px;
					font-weight: 500;
					line-height: 1.2;
					text-align: center;
					position: absolute;
					top: 14px;
					left: 0;
				}
					.side-nav__badge-num{
						color: #06C755;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 24px;
						font-weight: 700;
						line-height: 1.2;
					}
					.side-nav__badge-unit{
						color: #06C755;
						font-family: "Zen Kaku Gothic New", sans-serif;
						font-size: 12px;
						font-weight: 500;
						line-height: 1.2;
					}
