@charset "UTF-8";
.txtEx {
	text-indent: 120%;
	white-space: nowrap;
	overflow: hidden;
}
.PC {display: none;}
.SP {display: inherit;}

html {
	font-size: 1.333333vw;
}
body {}


.container {
	padding: 0%;
}
.btn {
}
	.btn.btn-arr {
	}
				.btn.btn-arr:before,
				.btn.btn-arr:after {
					width: 3.3rem;
					height: 3.3rem;
				}
				.btn.btn-arr:after {
				}


.btn-large {
	padding: 1.6rem 2.4rem;
	font-size: 1.5rem;
}
.section-title-large {
	font-size: 2.8rem;
}
.section-header {
	margin-bottom: 8rem;
}



}
.section-title-large {
}
.section-title-large mark {
}
.section-lead {
	font-size: 2.8rem;
}
.section-header {
}


.info-bar {
	padding-left: 0.5rem;
}
	.info-bar span {
		font-size: 1.6rem;
	}



.sect-fv-firstview {
	min-height: 226rem;
	padding: 0rem;
	background-image: url("../images/spfv_bg.png");
	background-position: center top;
	background-size: 100%;
}
	.sect-fv-firstview .container {
		padding-top: 7.7rem;
		padding-bottom: 16rem;
	}
.fv-grid {
	grid-template-columns: 1fr;
	gap: 3rem;
}
	.fv-logo {
		width: 61.9rem;
		margin-inline: auto;
		margin-bottom: 5rem;
	}
		.fv-logo .t01 {
			padding-top: 1.5rem;
			font-size: 2.6rem;
		}
		.fv-logo .t02 {
				left: 50%;
				translate: -50% 0;
			font-size: 2.6rem;
		}
			.fv-logo .t02 span {
				margin: 0 3rem;
			}
		.fv-logo .t03 {
				bottom: 9.5rem;
			font-size: 3.7rem;
			letter-spacing: 0.04em;
		}
			.fv-logo .t03 mark {
			}
			.fv-logo .t03 span {
				font-size: 4.3rem;
			}
	.fv-catch {
		position: relative;
			top: 0;
		width: 60.1rem;
		margin-inline: auto;
		margin-bottom: 5rem;
	}
		.fv-catch .t01 {
				top: auto;
				bottom: 0rem;
				right: auto;
				left: auto;
			writing-mode: rl;
			font-size: 2.8rem;
			line-height: 2;
			letter-spacing: 0.1em;
			white-space: nowrap;
		}
			.fv-catch .t01 .m1 {
			}
			.fv-catch .t01 .m2 {
			}
		.fv-catch [class^="t02"] {
			font-size: 2rem;
		}
			.fv-catch .t02 {
					top: 29rem;
					left: 23.4rem;
				font-size: 3rem;
				line-height: 1.2;
			}
				.fv-catch .t02 strong {
					font-size: 3.6rem;
				}
			.fv-catch .t02a {
					top: 14.4rem;
					left: 8.4rem;
			}
			.fv-catch .t02b {
					top: 14.4rem;
					left: 39.5rem;
			}
			.fv-catch .t02c {
					top: 47rem;
					left: 38.6rem;
			}
			.fv-catch .t02d {
					top: 46rem;
					left: 6.7rem;
			}
	.fv-visual {
			flex-direction: column;
			align-items: center;
		margin-bottom: 7.6rem;
		margin-left: 0;
	}
	.chat-pop {
		width: 27rem;
		height: 27rem;
	}
		.chat-pop p {
			font-size: 2.8rem;
			letter-spacing: 0.06em;
			margin-bottom: 6rem;
		}
	.chat-widget {
		width: 57.8rem;
		height: 38.8rem;
		margin-top: -10rem;
	}
.fv-cta {
	width: 59rem;
		flex-direction: column;
		gap: 4rem;
	margin-inline: auto;
	margin-bottom: 5.8rem;
}
	.fv-cta .btn {
		width: 100%;
			justify-content: center;
		padding: 3.4rem;
		font-size: 3.2rem;
		letter-spacing: 0.08em;
		filter: drop-shadow(var(--shadow) 0 1.2rem 1.2rem);
	}
	.fv-chat-sp-img {
		display: block;
		width: 100%;
		margin-bottom: 2rem;
	}
	.fv-note .SP {
		display: block;
	}
	.fv-meta {
		font-size: 2.4rem;
	}


.sect-abt-about {
	padding: 7rem 0;
}
	.sect-abt-about h2 {
		width: 61.8rem;
		margin-bottom: 6rem;
	}
		.sect-abt-about h2 .t01 {
				top: 1.3rem;
				left: 22.3rem;
			font-size: 4rem;
		}
		.sect-abt-about h2 .t02 {
				top: 8.3rem;
				left: 3.2rem;
			font-size: 9.2rem;
			line-height: 1.6;
		}
			.sect-abt-about h2 .t02 span {
				margin-right: 9.2rem;
			}
			.sect-abt-about h2 .t02 small {
				margin-right: 6.2rem;
			}
	.about-compare {
		width: 68rem;
		margin-inline: auto;
	}
		.about-before,
		.about-after {
			display: flex;
				flex-direction: column;
			width: 100%;
			padding: 3rem 2.4rem 9rem 2.4rem;
		}
				.about-before:before,
				.about-after:before {
				}
				.about-after:before {
					width: 20rem;
				}
				.about-before:after,
				.about-after:after {
						order: 1;
					position: static;
					width: 30.8rem;
					height: 31.8rem;
				}
				.about-after:after {
					height: 37.1rem;
					margin-top: -5rem;
				}
		.about-after {
		}
			.about-label {
					order: 2;
				width: 40rem;
				margin-inline: auto;
				margin-top: 4.4rem;
				margin-bottom: 3rem;
				padding: 0.9rem 0;
				font-size: 3.2rem;
				letter-spacing: 0.12em;
			}
						.about-label:before {
						}
				.about-after .about-label {
				}
							.about-after .about-label:before {
							}
	.about-heading {
			order: 3;
			align-self: auto;
		margin-bottom: 5rem;
		font-size: 9rem;
		letter-spacing: 0.12em;
	}
		.about-list {
				order: 3;
			margin-left: 6rem;
		}
			.about-list li {
				padding-left: 0rem;
				margin-bottom: 0rem;
				font-size: 2.8rem;
				line-height: 2;
			}
						.about-before .about-list li::before,
						.about-after .about-list li::before {
							width: 2.6rem;
							height: 2.6rem;
							margin-right: 1.6rem;
						}
						.about-after .about-list li::before {
						}
	.about-arrow {
		margin-top: -1rem;
		margin-bottom: 2rem;
	}
		.about-arrow-icon {
			width: 36px;
			height: 36px;
		}
					.about-arrow-icon::after {
						border-top: 2px solid var(--paper);
						border-right: 2px solid var(--paper);
						transform: translate(-50%, -65%) rotate(135deg);
					}


.sect-prb-problem {
	padding: 7rem 0 9rem 0;
}
	.sect-prb-problem .section-header {
		margin-bottom: 22rem;
	}
		.sect-prb-problem .section-header .wrap {
			display: block;
			margin-bottom: 4rem;
		}
	.sect-prb-problem .section-eyebrow {
		width: 44rem;
		margin: 0;
		margin-bottom: 3rem;
		margin-inline: auto;
		font-size: 4rem;
		letter-spacing: 0.04em;
	}
	.sect-prb-problem .section-title-large {
		font-size: 8.6rem;
	}
	.sect-prb-problem .section-lead {
	}

.problem-grid {
	display: flex;
		gap: 22rem 0;
		flex-direction: column;
}
	.problem-card {
		width: 60rem;
		margin-inline: auto;
		padding: 0rem 0rem 7rem 0rem;
	}
		.problem-card .fuki {
			margin-top: -10rem;
			margin-bottom: 8rem;
			padding: 4.6rem 6rem;
			border-radius: 5.5rem;
		}
					.problem-card .fuki:before {
							bottom: -3.8rem;
						width: 18rem;
						height: 5.4rem;
					}
			.problem-num {
				width: 5.8rem;
			}
			.problem-heading {
				font-size: 4.2rem;
				letter-spacing: 0.06em;
			}
			.problem-icon {
				width: 24.6rem;
				height: 20.9rem;
				margin-bottom: 5rem;
			}
			.problem-desc {
				width: 44rem;
				font-size: 2.8rem;
				letter-spacing: 0.04em;
			}
.problem-t01 {
	font-size: 4rem;
}
	.problem-t01 strong {
		font-size: 5rem;
	}
	.prb-survey {
		max-width: 100%;
		width: 68rem;
		margin: 8rem auto 4rem auto;
		padding: 0 3.2rem 4rem;
		border-radius: 2.4rem;
	}
					.prb-survey::before {
						height: 0.8rem;
						margin: 0 -3.2rem 0;
					}
		.prb-survey-wm {
				bottom: -2rem;
			font-size: 12rem;
		}
		.prb-survey-conn {
			margin-top: 4rem;
			font-size: 2.6rem;
		}
		.prb-survey-impact {
			margin-top: 2rem;
			font-size: 4rem;
			white-space: normal;
		}
			.prb-survey-lead {
				font-size: 4.8rem;
				margin-right: 0.6rem;
			}
			.prb-survey-n {
				font-size: 6.6rem;
			}
			.prb-survey-swoosh {
					bottom: -3.2rem;
					left: -2.4rem;
					right: -0.4rem;
				width: calc(100% + 2.8rem);
				height: 3.6rem;
			}
			.prb-survey-dat {
				display: block;
				margin: 3rem 0 0 0;
				font-size: 5.5rem;
			}
		.prb-survey-claim {
			margin-top: 3.2rem;
			padding: 0 2.4rem;
			font-size: 2.2rem;
		}
					.prb-survey-claim::before,
					.prb-survey-claim::after {
						width: 0.8rem;
					}
		.prb-survey .prb-survey-note {
			font-size: 1.6rem;
			margin-top: 2rem;
		}


.sect-str-strengths {
	padding: 0rem 0 10rem 0;
}
	.sect-str-strengths .container {
		background-position: center top;
		background-size: 53rem;
	}
	.sect-str-strengths .section-header {
		margin-bottom: 51rem;
		padding-top: 54rem;
		padding-left: 0;
	}
		.sect-str-strengths .section-header .section-eyebrow {
			width: 11rem;
			margin-inline: auto;
			margin-bottom: 2.5rem;
		}
		.sect-str-strengths .section-header .section-title-large {
			margin-bottom: 5rem;
			font-size: 8rem;
			text-align: center;
		}
		.sect-str-strengths .section-lead {
			text-align: center;
		}



.str-dashboard {
	margin-bottom: 5rem;
}
	.str-point {
		width: 66rem;
		margin-bottom: 17rem;
	}
				.str-point:last-child {
					margin-bottom: 0;
				}
	.str-point.reverse {
		scale: 1 1;
	}
		.str-point.reverse .str-point-text {
				scale: 1 1;
			padding-left: 7.5rem;
		}
		.str-point.reverse .str-point-visual {
				scale: 1 1;
		}
	.str-point.centering {
	}
		.str-point.centering .str-point-text {
			display: flex;
				flex-direction: column;
			width: 100%;
			margin: 0 auto;
			padding-top: 0rem;
		}
			.str-point.centering .str-point-num {
					order: 2;
					left: 50%;
					translate: -50% 0;
			}
			.str-point.centering .str-point-heading {
					order: 3;
				margin-bottom: 3rem;
				text-align: center;
			}
			.str-point.centering .str-point-desc {
					order: 4;
				width: 100%;
				margin-bottom: 3rem;
				text-align: center;
			}
		.str-point.centering .str-point-visual {
				order: 1;
			position: static;
		}
					.str-point.centering .str-point-visual.i02 {
					}
					.str-point.centering .str-point-visual.i03 {
					}

		/*#pt2*/
		.str-point.str-point2.centering {
			padding-top: calc(160rem - 20rem);
		}
			.str-point.str-point2.centering .str-point-text {
				position: relative;
				padding-top: 20rem;
			}
				.str-point.str-point2.centering .str-point-text .str-point-visual {
					position: absolute;
						z-index: 10;
						top: auto;
						left: 50%;
						/*bottom: calc(100% - 20rem);*/
						bottom: calc(100% - 10rem);
						translate: -50% 0;
					width: 74rem;
					filter: none;
				}
				.str-point.str-point2.centering .str-point-text .str-point-num {
					position: relative;
				}
				.str-point.str-point2.centering .str-point-text .str-point-heading {
					text-align: left;
				}
				.str-point.str-point2.centering .str-point-text .str-point-desc {
					text-align: left;
				}
		/*#pt3*/
		.str-point.str-point3.centering {
			padding-top: calc(280rem - 20rem);
		}
			.str-point.str-point3.centering .str-point-text {
				position: relative;
				padding-top: 20rem;
			}
				.str-point.str-point3.centering .str-point-text .str-point-visual {
					position: absolute;
						z-index: 10;
						top: auto;
						left: 50%;
						bottom: calc(100% - 10rem);
						translate: -50% 0;
					width: 74rem;
					filter: none;
				}
				.str-point.str-point3.centering .str-point-text .str-point-num {
					position: relative;
				}
				.str-point.str-point3.centering .str-point-text .str-point-heading {
					text-align: left;
				}
				.str-point.str-point3.centering .str-point-text .str-point-desc {
					text-align: left;
				}
		/*#pt4*/
		.str-point.str-point4 {
			margin-top: 45rem;
		}
	.str-point-text {
		width: auto;
		padding: 7rem 7.5rem;
		padding-top: 25rem;
		background: linear-gradient(180deg,
			var(--paper) 0%,
			var(--white) 100%
		);
		filter: drop-shadow(var(--shadow_weakness) 0 4.2rem 2.6rem);
	}
	.str-point-text2 {
		width: 66rem;
		margin-top: 4rem;
		padding: 7rem 0rem;
	}
		.str-point-text2 h4 {
			margin-bottom: 2rem;
			font-size: 3.4rem;
			line-height: 1.5;
		}
			.str-point-text2 h4 mark {
			}
			.str-point-text2 h4 strong {
				font-size: 4.6rem;
			}
		.str-point-text2 p {
			font-size: 2.8rem;
		}
	.str-point-text3 {
			flex-direction: column;
			gap: 0 3rem;
		width: 66rem;
		margin-top: 2rem;
		padding: 7rem 0rem;
		padding-top: 10rem;
	}
		.str-point-text3 .imgwrap {
			width: 43.8rem;
			margin-bottom: 6rem;
		}
			.str-note-stat {
			}
				/*.str-note-stat-original -- removed */
				.str-note-stat .str-note-stat-sub {
					font-size: 3.8rem;
				}
				.str-note-stat .str-note-stat-num {
					font-size: 7.4rem;
					line-height: 1;
				}
					.str-note-stat-num span {
						font-size: 14.2rem;
					}
		.str-point-text3 .txtwrap {
		}
		.str-point-text3 h4 {
			margin-bottom: 6rem;
			font-size: 5rem;
			text-align: center;
			line-height: 1.44;
		}
			.str-point-text3 h4 mark {
			}
			.str-point-text3 h4 strong {
				font-size: 5rem;
			}
		.str-point-text3 p {
			width: 55rem;
			font-size: 2.8rem;
		}
	.str-point-num {
		position: static;
		height: 8.8rem;
		margin-bottom: 2rem;
	}
		.str-point-num picture {
			display: block;
			height: 100%;
		}
		.str-point-num img {
			width: auto;
			height: 100%;
		}
	.str-point-heading {
		margin-bottom: 5rem;
		font-size: 5.6rem;
	}
		.str-point-heading mark {
		}
	.str-point-desc {
		width: 51rem;
		font-size: 2.8rem;
		line-height: 1.85;
	}
	.str-point-note {
		margin-top: 4rem;
		font-size: 2rem;
	}
	.str-point-visual {
		position: absolute;
			z-index: 10;
			top: auto;
			right: 0;
			bottom: calc(100% - 20rem);
			left: 50%;
			translate: -50% 0;
		width: 54rem;
		filter: drop-shadow(var(--shadow_weak) 1rem 2rem 2rem);
	}
										.str-point-visual.i02:before {
											pointer-events: none;
											content: "";
											position: absolute;
												z-index: 10;
												top: -3.9rem;
												/*bottom: 0rem;*/
												/*bottom: 45rem;*/
												left: 0rem;
											/*display: block;*/
											display: none;
											width: 74rem;
											height: 161.6rem;
											background: url("../images/spstr_02img.png") no-repeat center bottom;
											background-size: 100%;
											opacity: 0.4;
										}
	.str-point-visual .mock-dashboard {
		padding: 4rem 4.5rem;
	}
		.str-point-visual .mock-dashboard-title {
			font-size: 2.4rem;
		}
		.str-point-visual .mock-dashboard-date {
			font-size: 2rem;
		}
		.str-point-visual .mock-dashboard-stats {
			gap: 0 1.8rem;
			margin-bottom: 3.6rem;
		}
			.str-point-visual .mock-stat-card {
				padding: 2rem 2rem;
			}
				.str-point-visual .mock-stat-label {
					font-size: 1.8rem;
				}
				.str-point-visual .mock-stat-value {
					font-size: 2rem;
				}
					.str-point-visual .mock-stat-value strong {
						font-size: 4.4rem;
					}
			.str-point-visual .mock-ranking-title {
				margin-bottom: 2.8rem;
				font-size: 2rem;
			}
			.str-point-visual .mock-ranking-list {
				margin-left: 4rem;
			}
				.str-point-visual .mock-ranking-list li {
					padding: 1.15rem 0;
					font-size: 2rem;
				}
					.str-point-visual .mock-ranking-list li::before {
						width: 3.6rem;
						font-size: 2rem;
					}
				.str-point-visual .mock-q {
					width: 30rem;
					font-size: 2rem;
				}
				.str-point-visual .mock-bar {
				}
				.str-point-visual .mock-cnt {
					width: 4.5rem;
					font-size: 2rem;
				}
	.str-map {
			flex-direction: column;
			gap: 4.5rem 0;
			align-items: center;
		margin-top: 0;
		margin-left: 0;
		padding-left: 0;
	}
		.str-map-lp {
			width: 40rem;
			margin-right: 2.5rem;
			padding-bottom: 4rem;
			border-radius: 2.4rem;
		}
			.str-map-lp-label {
				margin-bottom: 1.8rem;
				padding: 1rem 4.5rem;
				font-size: 2.1rem;
			}
			.str-map-lp-inner {
				width: 31rem;
				padding: 1rem;
				border-radius: 0.8rem;
			}
				.str-map-section {
					margin-bottom: 1rem;
					padding: 2.4rem 2rem;
					font-size: 2rem;
					border: 0;
					border-radius: 0.8rem;
				}
				.str-map-ai {
						gap: 0 1rem;
					margin-bottom: 1.4rem;
					margin-inline: -3.5rem;
					padding: 1.2rem 3rem;
					font-size: 2.2rem;
					border-radius: 0.8rem;
				}
							.str-map-ai::after {
									top: calc(50% - 2px / 2);
									translate: 0 0;
								border: 2px solid var(--accent);
								border-bottom: 0;
							}
							.str-map-ai::before {
								width: 1.6rem;
								height: 1.6rem;
							}

							.str-map-ai01:after {
									left: auto;
									right: calc(110% + 1.6rem);
								width: 4rem;
								height: 58rem;
								border-right: 0;
							}
							.str-map-ai01:before {
									left: auto;
									right: 110%;
							}

							.str-map-ai02:after {
									left: calc(110% + 1.6rem);
								width: 4rem;
								height: 68rem;
								border-left: 0;
							}
							.str-map-ai02:before {
									left: 110%;
							}

							.str-map-ai03:after {
									left: auto;
									right: calc(110% + 1.6rem);
								width: 2rem;
								height: 78rem;
								border-right: 0;
							}
							.str-map-ai03:before {
									left: auto;
									right: 110%;
							}
					.str-map-ai-icon {
						width: 4.4rem;
					}
		.str-map-questions {
			display: flex;
				flex-direction: column;
				gap: 2rem 0;
				align-items: flex-start;
			width: 64rem;
			padding-top: 0;
			filter: none;
		}
			.str-map-qgroup {
				width: 40rem;
				padding: 0 2.6rem;
				padding-bottom: 3rem;
				border-radius: 1.2rem;
			}
						.str-map-qgroup:nth-child(2) {
								align-self: flex-end;
							margin-right: 2rem;
							margin-left: 0;
						}
						.str-map-qgroup:nth-child(3) {
							width: 45rem;
						}
				.str-map-qgroup-title {
					margin-top: 1.6rem;
					margin-bottom: 1.2rem;
					font-size: 2rem;
				}
				.str-map-qlist {
						gap: 0.6rem 0;
				}
					.str-map-qlist li {
						width: auto;
						padding: 0.4rem 2rem;
						font-size: 2rem;
						border-radius: 0.6rem;
					}
	/*.str-guide-original -- removed */
	.str-guide {
			flex-direction: column;
			gap: 6rem 0rem;
			justify-content: center;
			align-items: center;
		/*margin-top: -62.6rem;*/
	}
		.str-guide-card {
			display: flex;
				flex-direction: column;
				align-items: center;
			width: 54rem;
			padding: 0 0 4.5rem 0;
			border-radius: 2rem;
			background: var(--gray-100);
			box-shadow: 0 4px 20px rgba(0,0,0,0.04);
		}
			.str-guide-question {
				width: 48rem;
				height: 14rem;
				margin-top: -2rem;
				border-radius: 1.6rem;
			}
				.str-guide-q-text {
					font-size: 3rem;
				}
				.str-guide-q-sub {
					font-size: 2.4rem;
				}
			.str-guide-arrow {
				width: 5.3rem;
				margin-top: 1.4rem;
				margin-bottom: 0.6rem;
			}
			.str-guide-reading {
				width: 45.6rem;
				margin-bottom: 1rem;
			}
				.str-guide-reading-label {
					width: 17rem;
					height: 5.4rem;
					font-size: 2.4rem;
					border-radius: 0.8rem 0.8rem 0 0;
				}
				.str-guide-reading-desc {
					padding: 3.2rem;
					font-size: 2.4rem;
					line-height: 1.66;
					border: 1px solid var(--gray-200);
					border-radius: 0 0.8rem 0.8rem 0.8rem;
				}
					.str-guide-reading-desc mark {
					}
			.str-guide-action {
				position: relative;
				display: flex;
					align-items: flex-start;
					gap: 0 1.6rem;
				width: 45.6rem;
				height: auto;
				margin-top: 1.7rem;
				padding-bottom: 3rem;
				background: #fff;
				border: 1px solid var(--gray-200);
				border-radius: 0.4rem;
			}
				.str-guide-action-label {
					flex-shrink: 0;
					position: absolute;
						z-index: 10;
						top: -2rem;
						left: 1rem;
					width: 11.8rem;
					height: 11.8rem;
					font-size: 2.4rem;
					line-height: 1.25;
				}
				.str-guide-action-body {
					display: flex;
						flex: 1;
						flex-direction: column;
						align-items: center;
					padding: 1.9rem 0 0 0;
					text-align: center;
				}
					.str-guide-action-icon {
						width: 14rem;
						height: auto;
						margin-bottom: 0.3rem;
					}
					.str-guide-action-desc {
						font-size: 2.4rem;
					}
						.str-guide-action-desc mark {
							color: var(--accent);
							font-weight: 700;
							background: none;
						}
	.str-accuracy {
		padding: 10rem 4rem;
		padding-top: 6.4rem;
	}
		.str-accuracy-head {
			width: 44rem;
			margin-bottom: 1rem;
		}
			.str-accuracy-title {
				font-size: 1.9rem;
			}
			.str-accuracy-period {
				font-size: 1.6rem;
			}
		.str-accuracy-stats {
				gap: 0 1.2rem;
			margin-bottom: 4.8rem;
		}
			.str-accuracy-stat {
					flex: 1;
				padding: 1.2rem 1.6rem;
			}
				.str-accuracy-stat-label {
					font-size: 2.1rem;
					margin-bottom: 0.2rem;
				}
				.str-accuracy-stat-value {
					font-size: 5.6rem;
				}
					.str-accuracy-stat-value small {
						font-size: 3.5rem;
					}
				.str-accuracy-stat.is-current .str-accuracy-stat-value {
				}
		.str-accuracy-bars {
				gap: 1.3rem 0;
			padding: 0 1rem;
		}
			.str-accuracy-row {
			}
				.str-accuracy-month {
					width: 7.6rem;
					font-size: 1.8rem;
				}
				.str-accuracy-bar {
					height: 1.2rem;
				}
				.str-accuracy-pct {
					width: 4rem;
					font-size: 2.4rem;
				}
					.str-accuracy-pct small {
						font-size: 1.6rem;
					}
	.str-point-end {
	}
		.str-point-end .t01 {
			font-size: 4rem;
			font-weight: 700;
		}
			.str-point-end .t01 mark {
			}
		.str-point-end .str-point-note {
			margin-top: 3rem;
			text-align: center;
		}

.mock-accuracy-highlight {
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.8rem;
}
.mock-accuracy-val {
	font-size: 2.8rem;
}


.sect-ftr-features {
	padding: 7rem 0;
	padding-bottom: 0;
}
	.sect-ftr-features .container {
			gap: 0rem;
		width: 100%;
		min-width: 0rem;
		padding: 9rem 0;
		padding-bottom: 20rem;
		background: var(--gray-100) no-repeat top center;
		background-image: url("../images/spftr_bg.png");
		background-size: 100%;
	}
					.sect-ftr-features .container:before,
					.sect-ftr-features .container:after {
						content: "";
						position: absolute;
							z-index: 10;
						width: 0;
						height: 0;
						border-width: 0 0 4.5rem 75rem;
					}
					.sect-ftr-features .container:before {
							bottom: calc(100% - 1px);
					}
					.sect-ftr-features .container:after {
						border-width: 4.5rem 75rem 0 0;
					}
	.sect-ftr-features .section-header {
		margin-right: 4.4rem;
	}
		.sect-ftr-features .section-header .section-eyebrow {
			font-size: 3.2rem;
			margin-left: 1rem;
		}
		.sect-ftr-features .section-header .ftr_wrap {
			display: flex;
				align-items: center;
				gap: 0 4rem;
		}
		.sect-ftr-features .section-title-large {
			font-size: 9.2rem;
		}
		.sect-ftr-features .section-lead {
			font-size: 2.8rem;
		}
	.sect-ftr-features .features-grid {
		display: flex;
			flex-direction: column;
			gap: 1.8rem 0;
		width: 48rem;
	}
		.feature-card {
			width: 48rem;
			padding: 3rem 5rem 6rem 5rem;
			border-radius: 2rem;
		}
					.feature-card:hover {
						transform: translateY(-4px);
						box-shadow: 0 8px 24px rgba(0,0,0,0.06);
					}
					.feature-card:before {
						content: "";
						position: absolute;
							z-index: 10;
							top: 3rem;
							right: 4.8rem;
						display: block;
						width: 10.6rem;
						height: 10.6rem;
						background: url("../images/ftr_icon.png") no-repeat left top;
						background-size: 69.4rem;
					}
					.feature-card:nth-child(2):before {
						background-position: right top;
					}
					.feature-card:nth-child(3):before {
						background-position: left bottom;
					}
					.feature-card:nth-child(4):before {
						background-position: right bottom;
					}
		.feature-num {
			height: 4.8rem;
			margin-bottom: 5.8rem;
		}
			.feature-num img {
				width: auto;
				height: 100%;
			}
	.feature-heading {
		margin-bottom: 6rem;
		font-size: 4.6rem;
		line-height: 1.3;
	}
				.feature-heading:before {
					width: 20rem;
					height: 3px;
					margin-top: 1.1rem;
					border-left: 4rem solid var(--gray-900);
				}
	.feature-desc {
		width: 38rem;
		font-size: 2.6rem;
	}



.cutin {
	min-height: 86rem;
	background: url("../images/cutinbg.png") no-repeat center top;
	background-size: 200rem 100%;
}
	.cutin .cutinwrap {
	}
	.cutin .h01 {
		font-size: 6rem;
		line-height: 1.8;
	}
		.cutin .h01 mark {
			position: relative;
		}
			.cutin .h01 mark:before {
					bottom: 102%;
				font-weight: 300;
			}
	.cutin .t01 {
		font-size: 2.8rem;
		line-height: 1.85;
	}


.sect-prc-pricing {
	padding: 7rem 0 13.5rem 0;
	padding-top: 0;
	background-size: 230rem;
	background-position: top 170rem center;
}
	.sect-prc-pricing .section-header {
		margin-bottom: 5rem;
	}
		.sect-prc-pricing .section-eyebrow {
		}
		.sect-prc-pricing .section-title-large {
			font-size: 10rem;
		}
			.sect-prc-pricing .section-title-large mark {
				font-size: 10rem;
			}

	.pricing-toggle {
		max-width: 100%;
	}
	.pricing-toggle {
		width: 59.8rem;
		padding: 0.5rem;
		border: 0.2rem solid var(--gray-300);
		background: var(--gray-200);
	}
		.pricing-toggle-btn {
			font-size: 3rem;
			letter-spacing: 0.06em;
		}
					.pricing-toggle-btn:nth-child(1) {
					}
					.pricing-toggle-btn:nth-child(2) {
					}
			.pricing-toggle-btn.is-active {
			}
				.pricing-toggle-badge {
					font-size: 2.4rem;
					letter-spacing: 0;
				}
					.pricing-toggle-btn.is-active .pricing-toggle-badge {
					}

	.pricing-grid {
		display: flex;
			gap: 8rem;
			flex-direction: column;
		width: 52rem;
		margin-bottom: 8.8rem;
	}
		.pricing-card {
			position: relative;
			padding-top: 6.5rem;
			border: 0.6rem solid var(--white);
			border-radius: 2rem;
		}
					.pricing-card:hover {
					}
					.pricing-card.popular {
						border: 0.6rem solid var(--black);
					}
	.pricing-popular-badge {
			left: 5rem;
		width: 12rem;
		height: 12rem;
		font-size: 3.4rem;
	}
	.pricing-card-head {
		margin-bottom: 4rem;
		text-align: center;
	}
		.pricing-name {
			margin-bottom: 0.5rem;
			font-size: 3.6rem;
		}
				.popular .pricing-name {
				}
				.popular .pricing-amount {
				}
				.popular .pricing-price {
					margin-bottom: 0;
				}
		.pricing-name-en {
			font-size: 2.4rem;
		}
					.popular .pricing-name-en {
					}
	.pricing-price {
			gap: 0.4rem;
		margin-bottom: 1rem;
	}
		.pricing-amount {
			font-size: 3.4rem;
		}
		.pricing-amount {
			color: var(--gray-900);
			font-family: var(--font-en2);
			font-size: 9rem;
			font-weight: 500;
			line-height: 1;
		}
		.pricing-unit {
			font-size: 5.4rem;
		}
		.pricing-unit2 {
			font-size: 2.4rem;
		}
			.pricing-unit2 small {
				font-size: 2.2rem;
			}

			.pricing_wrap {
				padding: 4rem 0 5rem 0;
				border-radius: 0 0 2rem 2rem;
			}
				.pricing_wrap .pricing-spec {
					width: 38rem;
					margin-bottom: 3rem;
				}
					.pricing-spec li {
						padding: 0.6rem 0;
						padding-left: 3rem;
						font-size: 2.8rem;
						line-height: 2.25;
					}
								.pricing-spec li::before {
									width: 2.6rem;
									height: 2.6rem;
								}
								.pricing-spec li:last-child {
								}
					.pricing_wrap .btn {
						width: 42rem;
						font-size: 2.8rem;
					}
				.pricing-common {
					display: flex;
						flex-wrap: wrap;
						gap: 2.6rem;
					margin-bottom: 8.5rem;
				}
					.pricing-common p {
							order: 2;
						position: relative;
						display: flex;
							justify-content: center;
							align-items: center;
						width: 26rem;
						height: 26rem;
						border: 0.2rem solid var(--black);
						font-size: 3.4rem;
						line-height: 1.3;
					}
								.pricing-common p:before {
										right: 2.3rem;
										bottom: 2.4rem;
									width: 5rem;
									height: 1rem;
								}
								.pricing-common p:after {
										top: 1.2rem;
										left: 1.2rem;
									width: 3.4rem;
									height: 3.4rem;
								}
								.pricing-common p.pop {
										order: 1;
									margin: 0 14rem;
								}
									.pricing-common p.pop:after {
									}
						.pricing-common p span {
							display: flex;
								justify-content: center;
								align-items: center;
							width: 23.8rem;
							height: 23.8rem;
							border-radius: 50%;
							background: var(--white);
						}
	.sect-prc-pricing .chat-widget {
		margin-top: 0;
	}


.sect-cta-calltoaction {
	padding: 13rem 0 16rem 0;
	background:
		url("../images/cta_bg.jpg") no-repeat center top,
		url("../images/cta_bgr.jpg") no-repeat center top 164rem;
	background-size:
		200rem 100%,
		200rem 100%
	;
}
	.sect-cta-calltoaction .container {
		color: var(--white);
	}
	.sect-cta-calltoaction .section-header {
		margin-bottom: 8rem;
	}
	.sect-cta-calltoaction .section-title-large {
		font-size: 3.8rem;
	}
		.sect-cta-calltoaction .section-title-large span {
			font-size: 8.6rem;
		}
		.sect-cta-calltoaction .section-lead {
			font-size: 2.8rem;
			line-height: 1.85;
		}
.cta-grid {
		flex-direction: column;
		gap: 8.8rem;
}
.cta-path {
	width: 68rem;
	margin-inline: auto;
	padding-bottom: 8rem;
	border-radius: 2rem;
}
	.cta-path-label {
		width: 56rem;
		height: 11rem;
		padding: 0 6rem;
		font-size: 4.4rem;
	}
		.cta-path-label span {
			margin-right: 3.4rem;
			font-size: 5rem;
			font-weight: 500;
		}
	.cta-path-heading {
		margin-bottom: 2.6rem;
		font-size: 4.6rem;
		line-height: 1.5;
	}
	.cta-path-desc {
		margin-bottom: 5rem;
		font-size: 2.6rem;
	}
	.cta-path .cta-path-checks {
		display: block;
		margin-bottom: 7rem;
	}
		.cta-path-checks li {
				flex-direction: inherit;
			padding-left: 2rem;
			font-size: 3.4rem;
			letter-spacing: 0.06em;
			line-height: 2;
			border-right: 0;
		}
					.cta-path-checks li::before {
						width: 2.8rem;
						height: 2.6rem;
						margin-right: 1.4rem;
					}
			.cta-path .btn {
				width: 58rem;
				padding: 4rem 0;
				font-size: 3.2rem;
			}
		.cta-form {
				gap: 2.2rem;
			width: 58rem;
			margin-inline: auto;
		}
		.cta-form-field {
			display: block;
			margin-bottom: 1rem;
		}
			.cta-form-field .t01 {
				width: 56rem;
				margin: 0 auto;
				margin-bottom: 1rem;
				padding-top: 1.4rem;
				padding-left: 1em;
				font-size: 3rem;
			}
			.cta-form-field input,
			.cta-form-field select,
			.cta-form-field textarea {
				padding: 3rem 4rem;
				border-radius: 0.8rem;
				font-size: 3rem;
			}
						.cta-form-field input::placeholder,
						.cta-form-field select::placeholder,
						.cta-form-field textarea::placeholder{
						}
			.cta-form-field input:focus,
			.cta-form-field select:focus,
			.cta-form-field textarea:focus {
				border-color: var(--black);
				outline: none;
			}
			.cta-form-field select {
				cursor: pointer;
				color: var(--gray-500);
				-webkit-appearance: none;
				appearance: none;
				background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
				background-repeat: no-repeat;
				background-position: right 1.4rem center;
				padding-right: 3.6rem;
			}
			.cta-form-field textarea {
				resize: vertical;
				min-height: 10rem;
			}
			.cta-form .btn {
				width: 58rem;
				margin-inline: auto;
				margin-top: 6rem;
			}



.sect-trs-trust {
	padding: 16rem 0 20rem 0;
	background:
		no-repeat center top,
		no-repeat right bottom
	;
	background-color: var(--paper);
	background-image:
		url("../images/trs_bg.png"),
		url("../images/trs_bg2.png")
	;
	background-size:
		200rem,
		140rem
	;
}
	.sect-trs-trust .container {
		text-align: center;
	}
	.trust-intro {
		margin-bottom: 5rem;
		text-align: center;
	}
		.trust-logo {
			width: 59rem;
			margin-inline: auto;
			margin-bottom: 3rem;
		}
		.trust-lead {
			font-size: 2.8rem;
			line-height: 1.85;
		}
			.trust-lead mark {
				color: var(--accent);
				font-weight: 500;
			}
	.trust-stats {
			flex-wrap: wrap;
			gap: 4rem 6rem;
		margin-bottom: 14rem;
	}
				.trust-stats:after {
						right: 3rem;
					font-size: 2.4rem;
				}
		.trust-stat {
		}
					.trust-stat:nth-child(1) {
						margin: 0 16rem;
					}
			.trust-stat-label {
				width: 16rem;
				height: 16rem;
				font-size: 2.6rem;
			}
			.trust-stat-num {
				display: flex;
					align-items: flex-end;
				font-size: 11rem;
			}
				.trust-stat-num small {
					font-size: 3.6rem;
					margin-bottom: 0.8em;
				}

.trs_wrap {
		flex-direction: column;
		gap: 12rem 0;
}
	.trust-company {
		width: 64rem;
		margin-inline: auto;
		margin-bottom: 0rem;
		font-size: 2.4rem;
		background: none;
	}
		.trust-company-title {
			margin-bottom: 2rem;
			padding-bottom: 2rem;
			font-size: 2.6rem;
			border-bottom: 0.2rem solid var(--gray-700);
		}
					.trust-company-title img {
						height: 3.3rem;
						margin-right: 2.5rem;
					}
		.trust-company-dl {
			font-size: 2.4rem;
		}
			.trust-company-dl dt {
				padding: 1.6rem 5.4rem 1.6rem 0.6rem;
				border-bottom: 0.2rem solid var(--gray-300);
			}
			.trust-company-dl dd {
				padding: 1.6rem 0;
				border-bottom: 0.2rem solid var(--gray-300);
			}
			.trust-company-dl a {
			}
						.trust-company-dl a:after {
							width: 2rem;
							height: 2rem;
						}

	.trust-portfolio {
		width: 64rem;
		margin-inline: auto;
		text-align: left;
		background: none;
	}
		.trust-portfolio-title {
			margin-bottom: 4.5rem;
			padding-bottom: 2rem;
			font-size: 2.6rem;
			border-bottom: 0.2rem solid var(--gray-700);
		}
					.trust-portfolio-title img {
						height: 3.3rem;
						margin-right: 2.5rem;
					}
		.trust-portfolio-list {
			display: flex;
				flex-direction: column;
				gap: 2rem 0;
			padding: 0;
		}
			.trust-portfolio-list li {}
			.trust-portfolio-list a {
				display: flex;
					gap: 0 2.8rem;
				padding: 1.4rem 5.4rem;
				color: inherit;
				text-decoration: none;
				border-radius: 1rem;
			}
						.trust-portfolio-list a:hover {
						}
				.trust-pf-badge {
					width: 8rem;
					height: 8rem;
					font-size: 3.2rem;
				}
				.trs_pf_wrap {
					display: flex;
						flex-direction: column;
						gap: 0.2rem 0;
				}
					.trust-pf-name {
						font-size: 2.4rem;
					}
					.trust-pf-desc {
						font-size: 2.2rem;
					}
				.trust-portfolio-list .svg {
					width: 2rem;
					margin: 0 1rem 0 auto;
				}






.sect-ft-footer {
	padding: 7rem 0 4rem 0;
}
	.sect-ft-footer .container {
			flex-direction: column;
	}
	.sect-ft-footer .footer-legal {
			gap: 4rem 0;
		margin-bottom: 9rem;
	}
		.footer-legal a {
			margin: 0 3.3rem;
			font-size: 2.4rem;
			letter-spacing: 0.06em;
		}
					.footer-legal a:hover {
					}
	.footer-copy {
		font-size: 2rem;
	}