@charset "utf-8";


body {
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}

.org-main * {
	font-family: "Noto Sans JP";
	color: #3C3C3A;
}

.section__inner {
	width: 1280px;
	margin: 0 auto;
}

/*-------------------- メイン画像 --------------------*/

.section__mainvie {
	background: url(../images/bg_mainview.webp) no-repeat center / cover;
	padding: 120px 0;
	margin-bottom: 110px;
}
	.mainview__title {
		font-size: 53px;
		font-weight: 700;
		letter-spacing: 5.3px;
		line-height: 150%;
		color: #FFF;
		text-align: center;
	}


/*-------------------- 安心して暮らせる、充実の保証制度 --------------------*/

.section__warranty {
	margin-bottom: 50px;
}
	.warranty__contents {
		display: flex;
		align-items: center;
		gap: 78px;
	}
		.warranty__en-text {
			font-size: 15px;
			font-weight: 500;
			letter-spacing: 6px;
			font-family: Chillax;
			color: #3C3C3A;
			margin-bottom: 9px;
		}
		.warranty__title {
			font-size: 48px;
			font-weight: 500;
			letter-spacing: 7.2px;
			line-height: 130%;
			margin-bottom: 40px;
			color: #3C3C3A;
		}
			.warranty__title span {
				font-size: 48px;
				font-weight: 500;
				letter-spacing: 7.2px;
				line-height: 130%;
				color: #EE848B;
			}
		[class*="warranty__text--"] {
			font-weight: 500;
			color: #3C3C3A;
		}
		.warranty__text--top {
			font-size: 18px;
			font-weight: 600;
			line-height: 150%;
			letter-spacing: 2.16px;
			margin-bottom: 15px;
		}
			.warranty__text--top span {
				color: #EE848B;
				font-weight: 500;
			}
		.warranty__text--center {
			font-size: 15px;
			line-height: 185%;
			letter-spacing: 2.6px;
			margin-bottom: 11px;
		}
		.warranty__text--notes {
			font-size: 14px;
			line-height: 150%;
			letter-spacing: 1.6px;
		}
		.warranty__image {
			min-width: 710px;
		}

/*-------------------- ご購入者さま専用のお問い合わせ窓口 --------------------*/

.section__banner {
	padding-bottom: 130px;
	margin-bottom: 126px;
	overflow: hidden;
}
	.contact__banner {
		position: relative;
		z-index: 1;
	}
	.contact__banner::before {
		content: '';
		background: #F4F4F4;
		width: 900px;
		height: 298px;
		position: absolute;
		bottom: -130px;
    	right: -320px;
		z-index: -1;
	}
		.contact__tel {
			font-size: 42px;
			font-weight: 700;
			font-family: Chillax;
			position: absolute;
			bottom: 28px;
			right: 288px;
			letter-spacing: 0.09em;
		}

/*-------------------- Worries and anxieties --------------------*/

.section__worries {
	margin-bottom: 65px;
}
	.worries__inner {
		width: 1090px;
		margin: 0 auto;
	}
		.section__title {
			font-size: 66px;
			font-weight: 400;
			color: #231815;
			text-align: center;
			margin-bottom: 47px;
			font-family: Chillax;
			letter-spacing: 0;
		}
			.worries__contents--top {
				margin-bottom: 50px;
			}
				.worries__title {
					font-size: 24px;
					font-weight: 500;
					letter-spacing: 2.4px;
					text-align: center;
					margin-bottom: 25px;
				}
					.worries__title span {
						font-size: 24px;
						font-weight: 500;
						letter-spacing: 2.4px;
						color: #EE848B;
					}
				.worries__list {
					display: flex;
					flex-wrap: wrap;
					justify-content: center;
					align-items: center;
					gap: 6px;
				}
					.worries__item {
						display: flex;
						align-items: center;
						gap: 5px;
						width: 542px;
						height: 60px;
						border: 1px solid #D9D9D9;
						font-size: 15px;
						font-weight: 500;
						letter-spacing: 1.9px;
						padding-left: 14px;
					}
						.worries__item::before {
							content: '';
							background: url(../images/icon_worries-question.webp) no-repeat center / cover;
							display: block;
							width: 34px;
							height: 34px;
						}
			.worries__contents--bottom {
				.worries__title {
					margin-bottom: 50px;
				}
			}
				.worries__image {
					margin-bottom: 50px;
				}
					.worries__img {
						width: 1024px;
						margin: 0 auto;
					}
					.worries__notes {
						font-size: 14px;
						font-weight: 500;
						letter-spacing: 0.7px;
						margin-top: 9px;
						text-align: center;
					}
				.worries__text {
					font-size: 15px;
					font-weight: 500;
					letter-spacing: 1.5px;
					line-height: 185%;
					text-align: center;
				}

/*-------------------- Warranty Details --------------------*/

.section__service {
	padding: 61px 0 20px;
	overflow: hidden;
	position: relative;
	z-index: 1;

	.section__title {
		margin-bottom: 43px;
	}
}
	.section__service::before {
		content: '';
		background: #F4F4F4;
		width: 768px;
		height: calc(100% - 69px);
		position: absolute;
		top: 0;
		left: calc((100% - 1280px) / 2 - 320px);
		bottom: 0;
		z-index: -1;
	}
	.section__service::after {
		content: '';
		background: #E9E8E7;
		width: 1152px;
		height: 4029px;
		position: absolute;
		top: 1209px;
		right: calc((100% - 1280px) / 2 - 320px);
		bottom: 0;
		z-index: -1;
	}
	.service__contents--top {
		margin-bottom: 46px;
	}
		.service__title {
			font-size: 24px;
			font-weight: 500;
			letter-spacing: 2.4px;
			text-align: center;
			margin-bottom: 23px;
		}
			.service__title span {
				font-size: 24px;
				font-weight: 500;
				letter-spacing: 2.4px;
				color: #EE848B;
			}
		.service__warranty-list {
			display: flex;
			justify-content: center;
			gap: 2px;
		}
			[class*="service__warranty-item--"] a {
				display: flex;
				flex-direction: column;
				align-items: center;
				width: 254px;
				height: 300px;
				padding-top: 90px;
				font-size: 18px;
				font-weight: 400;
				letter-spacing: 1.26px;
				color: #FFF;
				text-align: center;
				position: relative;
			}
			.service__warranty-item--premium a {
				background: url(../images/bg_service-premium.webp) no-repeat center / cover;
			}
			.service__warranty-item--insurance a {
				background: url(../images/bg_service-insurance.webp) no-repeat center / cover;
			}
			.service__warranty-item--peace a {
				background: url(../images/bg_service-peace.webp) no-repeat center / cover;
			}
			.service__warranty-item--r1 a {
				background: url(../images/bg_service-r1.webp) no-repeat center / cover;
			}
			.service__warranty-item--service a {
				background: url(../images/bg_service-service.webp) no-repeat center / cover;
				width: 256px;
			}
				[class*="service__warranty-item--"] a span {
					font-size: 43px;
					font-weight: 400;
					color: #FFF;
					font-family: Chillax;
				}
				[class*="service__warranty-item--"] a::before {
					content: '';
					background: url(../images/icon_service-arrow.webp) no-repeat center / cover;
					display: block;
					width: 30px;
					height: 30px;
					position: absolute;
					bottom: 20px;
					left: 50%;
					transform: translateX(-50%);
				}
	.service__contents--center {
		margin-bottom: 80px;

		.service__title {
			margin-bottom: 27px;
		}
	}
		.comparison__text {
			font-size: 14px;
			font-weight: 500;
			letter-spacing: 1.1px;
			text-align: center;
			margin-top: 20px;
			color: #333;
		}

	.service__item--premium {
		width: 100%;
		background: url(../images/bg_premium.webp) no-repeat center / cover;
		padding: 60px 0 60px 60px;
		position: relative;

		.service__item-title {
			text-align: left;
		}
	}
		.service__item--premium::before {
			content: '';
			background: url(../images/img_service-mark.webp) no-repeat center / cover;
			display: block;
			width: 250px;
			height: 250px;
			position: absolute;
			bottom: -30px;
			right: -40px;
		}
	#premium,
	#insurance,
	#service {
		padding-top: 80px;
		margin-top: -80px;
	}
	#peace,
	#r1 {
		padding-top: 70px;
		margin-top: -70px;
	}
	.service__item--insurance {
		width: 100%;
		background: url(../images/bg_insurance.webp) no-repeat center / cover;
		padding: 60px;
	}
	.service__item--peace {
		width: 100%;
		background: url(../images/bg_peace.webp) no-repeat center / cover;
		padding: 52px 60px 60px;
	}
	.service__item--r1 {
		width: 100%;
		background: url(../images/bg_r1.webp) no-repeat center / cover;
		padding: 52px 60px 60px;
	}
	.service__item--service {
		width: 100%;
		background: url(../images/bg_service.webp) no-repeat center / cover;
		padding: 60px;

		.service__item-title{
			margin-bottom: 17px;
		}
		.service__item-text {
			text-align: center;
			letter-spacing: 2.4px;
		}
	}
	[class*="service__item--"]:not(:last-child) {
		margin-bottom: 80px;
	}
		.premium__wrap {
			display: flex;
			gap: 30px;
		}
			.premium__left {
				min-width: 189px;
			}
			.service__item-title {
				font-size: 34px;
				font-weight: 500;
				letter-spacing: 3.4px;
				color: #FFF;
				margin-bottom: 24px;
				text-align: center;
			}
			.service__item-text {
				font-size: 15px;
				font-weight: 400;
				line-height: 185%;
				letter-spacing: 1.8px;
				color: #FFF;
			}
			.service__item-notes {
				font-size: 14px;
				font-weight: 400;
				letter-spacing: 0.7px;
				line-height: 150%;
				color: #FFF;
				margin-top: 20px;
			}
		[class*="service__group--"]:not(:last-of-type) {
			border-bottom: 1px solid #D9D9D9;
			padding-bottom: 50px;
			margin-bottom: 50px;
		}
			.service__info {
				display: flex;
				align-items: center;
				gap: 20px;
			}
				.service__info-image {
					min-width: 200px;
				}
				.service__item-text {
					font-size: 15px;
					font-weight: 400;
					letter-spacing: 1.5px;
					line-height: 185%;
				}
			.service__detail-title {
				display: flex;
				align-items: center;
				gap: 6px;
				font-size: 18px;
				font-weight: 500;
				letter-spacing: 3.16px;
				color: #FFF;
				margin-bottom: 20px;
			}
				.service__detail-title::before {
					content: '';
					background: #FFF;
					width: 10px;
					height: 1px;
				}
			.insurance__list {
				display: flex;
				gap: 25px;
			}
				.insurance__item {
					display: flex;
					align-items: center;
					gap: 15px;
					width: 370px;
					height: 150px;
					background: #FFF;
					padding: 0 10px 0;
				}
					.insurance__image {
						min-width: 123px;
					}
					.insurance__text {
						font-size: 18px;
						font-weight: 600;
						line-height: 150%;
						letter-spacing: 2.16px;
					}
					.insurance__text span {
						color: #EE848B;
						font-size: 18px;
						font-weight: 600;
						line-height: 150%;
						letter-spacing: 2.16px;
					}
		.service__group--center {
			.service__detail-title {
				margin-bottom: 7px;
			}
		}
		.service__detail-text {
			font-size: 15px;
			font-weight: 500;
			line-height: 185%;
			letter-spacing: 1.5px;
			margin-bottom: 18px;
			color: #FFF;
		}
		.service__detail-list {
			display: flex;
			align-items: center;
			gap: 25px;
		}
			.service__detail-item {
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 2px;
				width: 370px;
				height: 140px;
				background: #FFF;
				padding-top: 27px;
			}
				[class*="service__detail-name"] {
					font-size: 15px;
					font-weight: 700;
					line-height: 185%;
					letter-spacing: 1.5px;
					text-align: center;
				}
				.service__detail-name--pink {
					color: #EE848B;
				}
				.service__detail-name--yellow {
					color: #D4B245;
				}
				.service__detail-description {
					font-size: 15px;
					font-weight: 500;
					line-height: 185%;
					letter-spacing: 1.5px;
					text-align: center;
				}
		.comparison__wrap {
			display: flex;
			gap: 10px;
		}
			.comparison__content {
				width: 575px;
				background: #FFF;
				padding: 33px 30px 30px;
			}
				[class*="comparison__title"] {
					font-size: 15px;
					font-weight: 700;
					letter-spacing: 1.5px;
					color: #807F7F;
					margin-bottom: 18px;
					text-align: center;
				}
				.comparison__title--pink {
					color: #EE848B;
				}
				.comparison__title--yellow {
					color: #D4B245;
				}
				.comparison__item {
					display: flex;
					align-items: center;
					gap: 10px;
				}
				.comparison__item:not(:last-child) {
					margin-bottom: 15px;
				}
					[class*="comparison__item-title"] {
						display: flex;
						justify-content: center;
						align-items: center;
						min-width: 150px;
						height: 40px;
						border-radius: 30px;
						background: #E9E8E7;
						font-size: 15px;
						font-weight: 700;
						line-height: 185%;
						letter-spacing: 1.5px;
						color: #807F7F;
					}
					.comparison__item-title--pink {
						background: #FDF3F3;
						color: #EE848B;
					}
					.comparison__item-title--yellow {
						color: #D4B245;
						background: #FBF7EC;
					}
					.comparison__item-text {
						font-size: 15px;
						font-weight: 500;
						letter-spacing: 2.2px;
						line-height: 130%;
					}
		.r1__text {
			font-size: 15px;
			font-weight: 500;
			letter-spacing: 1.5px;
			line-height: 185%;
			color: #FFF;
			text-align: center;
			margin-top: 50px;
		}
		.service__trouble-list {
			display: flex;
			gap: 25px;
			margin-bottom: 50px;
		}
			.service__trouble-item {
				width: 212px;
				background: #FFF;
			}
				.trouble__image {
					width: 100%;
					height: 120px;
				}
				.trouble__description {
					font-size: 15px;
					font-weight: 500;
					line-height: 160%;
					letter-spacing: 1.5px;
					text-align: center;
					padding: 23px 0;
				}
		.trouble__text {
			font-size: 18px;
			font-weight: 600;
			line-height: 150%;
			letter-spacing: 2.16px;
			color: #FFF;
			text-align: center;
			margin-bottom: 7px;
		}
		.trouble__notes {
			font-size: 14px;
			font-weight: 500;
			letter-spacing: 0.7px;
			color: #FFF;
			text-align: center;
		}