@charset "utf-8";

:root {
	--ai-curve-sweep-a: url("data:image/svg+xml,%3Csvg width='1220' height='520' viewBox='0 0 1220 520' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-82 300C80 126 244 73 430 146C608 216 710 368 1300 84' stroke='%234FC7FF' stroke-width='2.5' stroke-linecap='round' opacity='.42'/%3E%3Cpath d='M-64 365C120 196 288 157 462 219C644 284 786 372 1272 156' stroke='%235283FF' stroke-width='2' stroke-linecap='round' opacity='.33'/%3E%3Cpath d='M-28 238C154 98 318 95 494 188C670 281 818 286 1190 88' stroke='%23FFFFFF' stroke-width='1.4' stroke-linecap='round' opacity='.18'/%3E%3Cpath d='M92 92C258 -12 430 30 572 160C724 300 882 312 1202 214' stroke='%234FC7FF' stroke-width='1.6' stroke-linecap='round' opacity='.24'/%3E%3Cpath d='M168 438C322 352 494 342 654 392C812 442 964 428 1236 286' stroke='%23FFFFFF' stroke-width='1.2' stroke-linecap='round' opacity='.14'/%3E%3C/svg%3E");
	--ai-curve-sweep-b: url("data:image/svg+xml,%3Csvg width='1180' height='500' viewBox='0 0 1180 500' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-60 110C124 252 302 288 472 214C652 136 796 42 1240 236' stroke='%234FC7FF' stroke-width='2.4' stroke-linecap='round' opacity='.36'/%3E%3Cpath d='M-84 176C130 304 310 334 492 267C690 194 834 128 1234 312' stroke='%235283FF' stroke-width='1.9' stroke-linecap='round' opacity='.30'/%3E%3Cpath d='M-32 66C162 168 348 170 522 92C700 12 858 4 1188 178' stroke='%23FFFFFF' stroke-width='1.3' stroke-linecap='round' opacity='.16'/%3E%3Cpath d='M74 392C250 284 410 286 586 340C758 394 914 378 1214 246' stroke='%234FC7FF' stroke-width='1.5' stroke-linecap='round' opacity='.22'/%3E%3Cpath d='M138 452C300 384 452 390 604 424C746 456 902 448 1168 356' stroke='%23FFFFFF' stroke-width='1.1' stroke-linecap='round' opacity='.13'/%3E%3C/svg%3E");
	--ai-curve-sweep-soft: url("data:image/svg+xml,%3Csvg width='1040' height='430' viewBox='0 0 1040 430' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-52 254C102 122 250 92 412 154C566 213 696 320 1080 120' stroke='%232874FC' stroke-width='2.2' stroke-linecap='round' opacity='.16'/%3E%3Cpath d='M-36 318C136 190 292 170 448 220C610 272 742 344 1062 192' stroke='%234FC7FF' stroke-width='1.7' stroke-linecap='round' opacity='.14'/%3E%3Cpath d='M52 92C216 10 364 42 504 150C650 263 810 264 1052 166' stroke='%23062F58' stroke-width='1.3' stroke-linecap='round' opacity='.08'/%3E%3C/svg%3E");
	--ai-line-hero-orbit: url("data:image/svg+xml,%3Csvg width='1320' height='680' viewBox='0 0 1320 680' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-160 562C152 238 424 148 710 238C908 300 1060 288 1390 112' stroke='%234FC7FF' stroke-width='1.7' stroke-linecap='round' opacity='.25'/%3E%3Cpath d='M-128 506C142 285 372 235 626 302C872 366 1048 342 1344 190' stroke='%23FFFFFF' stroke-width='1.1' stroke-linecap='round' opacity='.18'/%3E%3Cpath d='M-70 612C220 360 486 314 766 398C984 464 1152 430 1370 286' stroke='%235283FF' stroke-width='1.4' stroke-linecap='round' opacity='.22'/%3E%3Cellipse cx='330' cy='360' rx='420' ry='118' transform='rotate(-14 330 360)' stroke='%234FC7FF' stroke-width='1' opacity='.13'/%3E%3Cellipse cx='420' cy='330' rx='560' ry='150' transform='rotate(-14 420 330)' stroke='%23FFFFFF' stroke-width='1' opacity='.09'/%3E%3C/svg%3E");
	--ai-line-worry-call: url("data:image/svg+xml,%3Csvg width='1180' height='360' viewBox='0 0 1180 360' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-76 214C136 106 350 118 560 188C762 255 942 252 1258 88' stroke='%234FC7FF' stroke-width='1.8' stroke-linecap='round' opacity='.30'/%3E%3Cpath d='M-44 260C180 188 348 202 516 238C694 276 888 310 1190 176' stroke='%23FFFFFF' stroke-width='1.1' stroke-linecap='round' opacity='.18'/%3E%3Cpath d='M100 154H140L154 118L174 196L196 92L218 218L242 136L258 154H328' stroke='%234FC7FF' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round' opacity='.22'/%3E%3Cpath d='M760 86H790L804 54L824 132L846 36L866 152L890 78L908 86H982' stroke='%235283FF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' opacity='.18'/%3E%3C/svg%3E");
	--ai-line-quality-contour: url("data:image/svg+xml,%3Csvg width='1280' height='620' viewBox='0 0 1280 620' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-120 338C108 176 300 132 504 188C714 246 826 418 1410 136' stroke='%234FC7FF' stroke-width='1.8' stroke-linecap='round' opacity='.24'/%3E%3Cpath d='M-82 408C142 244 350 212 562 264C760 312 900 428 1340 238' stroke='%235283FF' stroke-width='1.4' stroke-linecap='round' stroke-dasharray='26 18' opacity='.20'/%3E%3Cpath d='M40 202C276 52 504 70 690 208C860 334 1034 344 1300 206' stroke='%23FFFFFF' stroke-width='1.1' stroke-linecap='round' opacity='.16'/%3E%3Cellipse cx='960' cy='220' rx='260' ry='82' transform='rotate(9 960 220)' stroke='%234FC7FF' stroke-width='1' opacity='.13'/%3E%3Cellipse cx='960' cy='220' rx='360' ry='112' transform='rotate(9 960 220)' stroke='%23FFFFFF' stroke-width='1' opacity='.08'/%3E%3C/svg%3E");
	--ai-line-roadmap-route: url("data:image/svg+xml,%3Csvg width='1200' height='500' viewBox='0 0 1200 500' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-60 286C130 120 252 396 438 250C610 116 738 106 910 228C1016 303 1104 310 1268 170' stroke='%234FC7FF' stroke-width='1.8' stroke-linecap='round' opacity='.30'/%3E%3Cpath d='M-30 348C174 224 308 414 494 306C676 201 830 184 1012 286C1110 342 1188 330 1282 260' stroke='%23FFFFFF' stroke-width='1.1' stroke-linecap='round' stroke-dasharray='18 16' opacity='.18'/%3E%3Ccircle cx='258' cy='330' r='8' fill='%234FC7FF' opacity='.24'/%3E%3Ccircle cx='438' cy='250' r='10' fill='%23FFFFFF' opacity='.18'/%3E%3Ccircle cx='690' cy='144' r='8' fill='%234FC7FF' opacity='.24'/%3E%3Ccircle cx='910' cy='228' r='10' fill='%23FFFFFF' opacity='.16'/%3E%3C/svg%3E");
	--ai-line-light-thread: url("data:image/svg+xml,%3Csvg width='1040' height='360' viewBox='0 0 1040 360' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-80 220C126 96 302 88 476 156C640 220 774 254 1110 92' stroke='%232874FC' stroke-width='1.4' stroke-linecap='round' opacity='.12'/%3E%3Cpath d='M-52 282C160 176 332 166 512 214C684 260 820 300 1080 182' stroke='%234FC7FF' stroke-width='1' stroke-linecap='round' opacity='.10'/%3E%3Cellipse cx='780' cy='140' rx='210' ry='58' transform='rotate(10 780 140)' stroke='%23062F58' stroke-width='1' opacity='.045'/%3E%3C/svg%3E");
	--ai-line-scene-orbit: url("data:image/svg+xml,%3Csvg width='1180' height='420' viewBox='0 0 1180 420' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cellipse cx='790' cy='182' rx='424' ry='104' transform='rotate(4 790 182)' stroke='%232874FC' stroke-width='1.1' opacity='.12'/%3E%3Cellipse cx='822' cy='190' rx='530' ry='134' transform='rotate(4 822 190)' stroke='%234FC7FF' stroke-width='1' opacity='.10'/%3E%3Cpath d='M-70 312C170 188 356 186 548 242C740 298 906 308 1210 174' stroke='%232874FC' stroke-width='1.2' stroke-linecap='round' opacity='.10'/%3E%3C/svg%3E");
}

:root {
	--base-line-mesh: image-set(
		url("promo_bg01.webp") type("image/webp"),
		url("promo_bg01.png") type("image/png")
	);
	--base-line-sweep: url("cmn_bg01.png");
	--base-line-white: image-set(
		url("bnr_bg01.webp") type("image/webp"),
		url("bnr_bg01.png") type("image/png")
	);
}


.cmn_tate {
	writing-mode: vertical-rl;
}


.cmn_gradation {
	background: linear-gradient(90deg, #4fc7ff, #5283ff);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

.cmn_gradation02 {
	background: linear-gradient(90deg, #ff8800, #ff6600);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}


.accodion_toggle01::before {
	background: linear-gradient(90deg, #4fc7ff, #5283ff);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}


.main-navigation:not(.is-open) {
	background-color: var(--main);
}

body.one-container #content.site-content {
	padding-bottom: 0 !important;
	padding-top: 0 !important;
}

#home_worry.gb-element-519d4789 {
	background-color: #6b94cd;
	background-image:
		linear-gradient(0deg, rgba(80, 128, 188, 0.46), rgba(80, 128, 188, 0.46)),
		url("worry-hotel-front-night-bg.webp") !important;
	background-position:
		center,
		center top !important;
	background-repeat: no-repeat, no-repeat !important;
	background-size:
		auto,
		cover !important;
	overflow: hidden;
	position: relative;
}


#home_promo.gb-element-95f0a489 {
	background-image: url("fv-hotel-lobby-bg.png") !important;
	background-position: center top !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

#home_promo.gb-element-95f0a489::before,
#home_promo.gb-element-95f0a489::after {
	display: none !important;
}

#home_promo h2 .cmn-soshoku-a {
	background: linear-gradient(90deg, #4fc7ff, #5283ff);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

@media (max-width: 767px) {
	#home_promo.gb-element-95f0a489 {
		background-position: left top !important;
		background-size: cover !important;
	}
}


#home_worry .gb-element-4d3ba34d {
	background: #fff;
	position: relative;
	z-index: 2;
}

#home_worry .gb-text-bbee0152 {
	display: table;
	margin-left: auto;
	margin-right: auto;
}

#home_worry .gb-element-07f3256c {
	background-color: #fff;
	isolation: isolate;
}

#home_worry .gb-element-07f3256c > * {
	position: relative;
	z-index: 1;
}

#home_worry .gb-element-07f3256c::after {
	z-index: 0;
}


.ai-solution-set {
	background-color: #f4f4f9;
	background-image: linear-gradient(180deg, #f8fbff 0%, #f4f4f9 100%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto;
	overflow: hidden;
	padding: 135px 20px 125px;
	position: relative;
	z-index: 1;
}

.ai-solution-set::before {
	background-image: url("cmn_bg01.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 26.25vw;
	left: 0;
	opacity: 0.06;
	position: absolute;
	top: -7.55vw;
	width: 51.04vw;
	z-index: -1;
}

.ai-solution-set::after {
	color: rgba(0, 82, 184, 0.05);
	content: "SOLUTION";
	font-family: Roboto, sans-serif;
	font-size: clamp(86px, 8vw, 150px);
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.05em;
	line-height: 1;
	position: absolute;
	top: 90px;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: -1;
}

.ai-solution-set__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--gb-container-width);
	text-align: center;
}

.ai-solution-set__label {
	align-items: center;
	column-gap: 20px;
	display: flex;
	justify-content: center;
	margin-bottom: 25px;
}

.ai-solution-set__label span {
	background-color: #3ea1f9;
	height: 2px;
	width: 35px;
}

.ai-solution-set__label h2 {
	color: #062f58;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.15em;
	line-height: 1.5;
	margin-bottom: 0;
}

.ai-solution-set__title {
	color: #062f58;
	font-size: clamp(36px, 3.2vw, 52px);
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.45;
	margin-bottom: 32px;
}

.ai-solution-set__title mark {
	font-weight: inherit;
}

.ai-solution-set__lead {
	color: #062f58;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 2;
	margin: 0 auto 80px;
	max-width: 760px;
}

.ai-solution-set__card {
	background-color: #ffffff;
	border-radius: 8px 8px 0 0;
	box-shadow: 0 0 20px 0 rgba(15, 62, 138, 0.08);
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin-left: auto;
	margin-right: auto;
	max-width: 1240px;
	padding: 78px 42px 74px;
}

.ai-solution-set__point {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	min-height: 260px;
	padding: 0 22px;
}

.ai-solution-set__point + .ai-solution-set__point {
	border-left: 1px solid #c3cfe6;
}

.ai-solution-set__point-label {
	background-color: #f4f4f9;
	border-radius: 999px;
	color: #3ea1f9;
	font-size: 15px;
	line-height: 1;
	margin-bottom: 24px;
	min-width: 122px;
	padding: 7px 18px;
}

.ai-solution-set__icon {
	align-items: center;
	color: #4aaaff;
	display: flex;
	height: 120px;
	justify-content: center;
	margin-bottom: 24px;
	width: 130px;
}

.ai-solution-set__icon svg {
	fill: none;
	height: 112px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 4;
	width: 112px;
}

.ai-solution-set__icon img {
	display: block;
	height: 112px;
	object-fit: contain;
	width: 112px;
}

.ai-solution-set__point h3 {
	color: #062f58;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.7;
	margin-bottom: 0;
	text-align: center;
}

.ai-solution-set__point h3 span {
	color: #0052b8;
}

@media (max-width: 767px) {
	.ai-solution-set {
		padding: 60px 15px 55px;
	}

	.ai-solution-set::before {
		height: 155px;
		left: -35px;
		top: -35px;
		width: 300px;
	}

	.ai-solution-set::after {
		font-size: 56px;
		top: 54px;
	}

	.ai-solution-set__label {
		column-gap: 10px;
		margin-bottom: 16px;
	}

	.ai-solution-set__label span {
		width: 15px;
	}

	.ai-solution-set__label h2 {
		font-size: 15px;
		letter-spacing: 0.08em;
	}

	.ai-solution-set__title {
		font-size: 27px;
		line-height: 1.5;
		margin-bottom: 20px;
	}

	.ai-solution-set__lead {
		font-size: 14px;
		line-height: 1.9;
		margin-bottom: 38px;
		text-align: left;
	}

	.ai-solution-set__card {
		grid-template-columns: 1fr;
		padding: 38px 24px 34px;
	}

	.ai-solution-set__point {
		min-height: auto;
		padding: 0;
	}

	.ai-solution-set__point + .ai-solution-set__point {
		border-left: 0;
		border-top: 1px solid #c3cfe6;
		margin-top: 34px;
		padding-top: 34px;
	}

	.ai-solution-set__point-label {
		font-size: 15px;
		margin-bottom: 20px;
	}

	.ai-solution-set__icon {
		height: 112px;
		margin-bottom: 20px;
		width: 122px;
	}

	.ai-solution-set__icon svg {
		height: 108px;
		width: 108px;
	}

	.ai-solution-set__icon img {
		height: 108px;
		width: 108px;
	}

	.ai-solution-set__point h3 {
		font-size: 17px;
		line-height: 1.65;
	}
}


#home_harassment h3 .cmn-soshoku-a {
	background: linear-gradient(90deg, #4fc7ff, #5283ff);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

#home_harassment h4 {
	word-break: keep-all;
}


#home_used .gb-text-71864982::after {
	content: "AI SERVICE";
}

#home_used .gb-element-10577ee1 {
	align-items: center;
}

#home_used .gb-element-581ad59d {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 650px;
}

#home_used .gb-media-668d806d[src*="ai-smartphone-ui-only-hero"] {
	display: block;
	filter: drop-shadow(0 24px 34px rgba(6, 47, 88, 0.18));
	margin: 0 auto;
	max-width: 78%;
	object-fit: contain;
	width: min(30vw, 360px);
}

#home_used .gb-text-0ed8be08 {
	margin-top: 16px;
}

#home_used .gb-element-ab9d6d78 {
	background-image: none;
	padding-bottom: 34px;
}

#home_used .ai-service-flow {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 20px;
}

#home_used .ai-service-flow__item {
	background-color: rgba(255, 255, 255, 0.86);
	border: 1px solid #c3cfe6;
	border-radius: 6px;
	padding: 20px 18px 18px;
	text-align: left;
}

#home_used .ai-service-flow__num {
	align-items: center;
	background: linear-gradient(90deg, #4fc7ff, #5283ff);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	height: 26px;
	justify-content: center;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 12px;
	width: 46px;
}

#home_used .ai-service-flow__item h3 {
	color: #062f58;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	margin-bottom: 8px;
}

#home_used .ai-service-flow__item p:not(.ai-service-flow__num) {
	color: #062f58;
	font-size: 13px;
	letter-spacing: 0;
	line-height: 1.8;
	margin-bottom: 0;
}

@media (max-width: 767px) {
	#home_used .gb-element-581ad59d {
		min-height: auto;
	}

	#home_used .gb-media-668d806d[src*="ai-smartphone-ui-only-hero"] {
		max-width: 76%;
		width: min(62vw, 230px);
	}

	#home_used .gb-element-ab9d6d78 {
		padding-bottom: 25px;
	}

	#home_used .ai-service-flow {
		grid-template-columns: 1fr;
	}

	#home_used .ai-service-flow__item {
		padding: 18px 18px 16px;
	}
}


#home_case {
	display: none;
}

.ai-flow-section {
	background-color: #f4f9ff;
	background-image: linear-gradient(180deg, #f8fbff 0%, #f4f9ff 100%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto;
	overflow: hidden;
	padding: 120px 20px 130px;
	position: relative;
	z-index: 1;
}

.ai-flow-section::before {
	background-image: repeating-radial-gradient(ellipse at center, rgba(40, 116, 252, 0.18) 0 1px, transparent 1px 9px);
	border-radius: 50%;
	content: "";
	height: 360px;
	left: -80px;
	opacity: 0.35;
	position: absolute;
	top: -90px;
	width: 680px;
	z-index: -1;
}

.ai-flow-section::after {
	color: rgba(0, 82, 184, 0.055);
	content: "FLOW";
	font-family: Roboto, sans-serif;
	font-size: clamp(88px, 8vw, 150px);
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.05em;
	line-height: 1;
	position: absolute;
	top: 82px;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: -1;
}

.ai-flow-section__inner {
	margin: 0 auto;
	max-width: 1200px;
}

.ai-flow-section__heading {
	margin-bottom: 62px;
	text-align: center;
}

.ai-flow-section__eyebrow {
	color: #2874fc;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.18em;
	margin-bottom: 16px;
}

.ai-flow-section__heading h2 {
	color: #062f58;
	font-size: clamp(34px, 3vw, 46px);
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.45;
	margin-bottom: 18px;
}

.ai-flow-section__heading > p:not(.ai-flow-section__eyebrow) {
	color: #4a5c70;
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 0 auto;
	max-width: 780px;
}

.ai-flow-steps {
	display: grid;
	gap: 28px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	position: relative;
}

.ai-flow-step {
	background-color: #fff;
	border: 1px solid #d6e4f7;
	border-radius: 8px;
	box-shadow: 0 18px 42px rgba(15, 62, 138, 0.08);
	overflow: visible;
	position: relative;
}

.ai-flow-step:not(:last-child)::after {
	background-color: #2874fc;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	content: "";
	filter: drop-shadow(0 8px 12px rgba(40, 116, 252, 0.24));
	height: 42px;
	position: absolute;
	right: -22px;
	top: 132px;
	width: 42px;
	z-index: 2;
}

.ai-flow-step__image {
	aspect-ratio: 16 / 10;
	background-color: #eaf4ff;
	border-radius: 8px 8px 0 0;
	overflow: hidden;
}

.ai-flow-step__image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ai-flow-step__body {
	padding: 28px 28px 30px;
}

.ai-flow-step__label {
	align-items: center;
	background: linear-gradient(90deg, #4fc7ff, #5283ff);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	height: 30px;
	justify-content: center;
	letter-spacing: 0.08em;
	line-height: 1;
	margin-bottom: 18px;
	min-width: 88px;
	padding: 0 14px;
}

.ai-flow-step h3 {
	color: #062f58;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.55;
	margin-bottom: 14px;
}

.ai-flow-step__body p:not(.ai-flow-step__label) {
	color: #263b52;
	font-size: 15px;
	letter-spacing: 0.02em;
	line-height: 1.9;
	margin: 0;
}

@media (max-width: 767px) {
	.ai-flow-section {
		padding: 65px 15px 70px;
	}

	.ai-flow-section::before {
		height: 155px;
		left: -35px;
		top: -35px;
		width: 300px;
	}

	.ai-flow-section::after {
		font-size: 60px;
		top: 54px;
	}

	.ai-flow-section__heading {
		margin-bottom: 38px;
	}

	.ai-flow-section__eyebrow {
		font-size: 14px;
		margin-bottom: 10px;
	}

	.ai-flow-section__heading h2 {
		font-size: 28px;
		line-height: 1.55;
		margin-bottom: 16px;
	}

	.ai-flow-section__heading > p:not(.ai-flow-section__eyebrow) {
		font-size: 14px;
		line-height: 1.9;
		text-align: left;
	}

	.ai-flow-steps {
		gap: 34px;
		grid-template-columns: 1fr;
	}

	.ai-flow-step:not(:last-child)::after {
		bottom: -28px;
		height: 34px;
		left: 50%;
		right: auto;
		top: auto;
		transform: translateX(-50%) rotate(90deg);
		width: 34px;
	}

	.ai-flow-step__body {
		padding: 24px 22px 26px;
	}

	.ai-flow-step h3 {
		font-size: 18px;
	}

	.ai-flow-step__body p:not(.ai-flow-step__label) {
		font-size: 14px;
	}
}


#home_merit {
	background-color: #073a62;
	background-image:
		linear-gradient(140deg, rgba(6, 47, 88, 0) 0%, rgba(40, 116, 252, 0.18) 100%);
	background-position:
		center;
	background-repeat: no-repeat;
	background-size:
		auto;
	overflow: hidden;
	padding: 112px 20px 128px;
	position: relative;
}

#home_merit::before,
#home_merit::after {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	-webkit-mask-image: radial-gradient(ellipse at center, #000 42%, rgba(0, 0, 0, 0.74) 58%, transparent 82%);
	mask-image: radial-gradient(ellipse at center, #000 42%, rgba(0, 0, 0, 0.74) 58%, transparent 82%);
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

#home_merit::before {
	background-image: var(--base-line-mesh);
	height: 471px;
	left: -250px;
	opacity: 0.5;
	top: -18px;
	width: 1023px;
}

#home_merit::after {
	background-image: var(--base-line-white);
	bottom: 52px;
	height: 218px;
	opacity: 0.58;
	right: -140px;
	transform: rotate(180deg);
	width: 908px;
}

#home_merit > .gb-element-2aff36fd {
	display: none;
}

.ai-quality-features {
	color: #fff;
	margin: 0 auto;
	max-width: 1120px;
	position: relative;
	z-index: 1;
}

.ai-quality-features::before {
	color: rgba(255, 255, 255, 0.05);
	content: "FEATURE";
	font-family: Roboto, sans-serif;
	font-size: clamp(86px, 8vw, 148px);
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.06em;
	line-height: 1;
	position: absolute;
	top: -44px;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: -1;
}

.ai-quality-features::after {
	background-image: repeating-radial-gradient(ellipse at center, rgba(79, 199, 255, 0.22) 0 1px, transparent 1px 9px);
	border-radius: 50%;
	content: "";
	height: 300px;
	opacity: 0.45;
	position: absolute;
	right: -180px;
	top: -60px;
	width: 560px;
	z-index: -1;
}

.ai-quality-features__heading {
	margin: 0 auto 68px;
	max-width: 840px;
	text-align: center;
}

.ai-quality-features__eyebrow {
	color: #4fc7ff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.18em;
	margin-bottom: 18px;
}

.ai-quality-features__heading h2 {
	color: #fff;
	font-size: clamp(36px, 3vw, 48px);
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.45;
	margin-bottom: 22px;
}

.ai-quality-features__heading > p:not(.ai-quality-features__eyebrow) {
	color: rgba(255, 255, 255, 0.86);
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 0;
}

.ai-quality-features__list {
	display: grid;
	gap: 34px;
}

.ai-quality-card {
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 22px 54px rgba(0, 18, 40, 0.28);
	display: grid;
	grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
	min-height: 360px;
	overflow: hidden;
	position: relative;
}

.ai-quality-card::before {
	background: linear-gradient(180deg, #062f58, #2874fc);
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 8px;
	z-index: 2;
}

.ai-quality-card:nth-child(even) {
	grid-template-columns: minmax(0, 1.06fr) minmax(0, 0.94fr);
}

.ai-quality-card:nth-child(even)::before {
	left: auto;
	right: 0;
}

.ai-quality-card:nth-child(even) .ai-quality-card__image {
	order: -1;
}

.ai-quality-card__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 54px 60px;
}

.ai-quality-card__label {
	color: #2874fc;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin-bottom: 18px;
}

.ai-quality-card h3 {
	color: #062f58;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.45;
	margin-bottom: 20px;
}

.ai-quality-card__body p:not(.ai-quality-card__label) {
	color: #2b3f55;
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 0;
}

.ai-quality-card__image {
	background-color: #dceaf7;
	margin: 0;
	min-height: 360px;
	overflow: hidden;
}

.ai-quality-card__image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ai-quality-features__note {
	color: rgba(255, 255, 255, 0.76);
	font-size: 13px;
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin: 24px 0 0;
	text-align: right;
}

@media (max-width: 767px) {
	#home_merit {
		padding: 70px 15px 78px;
	}

	#home_merit::before {
		height: 295px;
		left: -300px;
		opacity: 0.36;
		top: -20px;
		width: 640px;
	}

	#home_merit::after {
		bottom: 52px;
		height: 160px;
		opacity: 0.38;
		right: -245px;
		width: 620px;
	}

	.ai-quality-features::before {
		font-size: 58px;
		top: -18px;
	}

	.ai-quality-features::after {
		height: 170px;
		right: -115px;
		top: 10px;
		width: 300px;
	}

	.ai-quality-features__heading {
		margin-bottom: 42px;
		text-align: left;
	}

	.ai-quality-features__eyebrow {
		font-size: 14px;
		margin-bottom: 12px;
		text-align: center;
	}

	.ai-quality-features__heading h2 {
		font-size: 28px;
		line-height: 1.55;
		margin-bottom: 16px;
		text-align: center;
	}

	.ai-quality-features__heading > p:not(.ai-quality-features__eyebrow) {
		font-size: 14px;
		line-height: 1.9;
	}

	.ai-quality-features__list {
		gap: 26px;
	}

	.ai-quality-card,
	.ai-quality-card:nth-child(even) {
		display: flex;
		flex-direction: column;
		min-height: 0;
	}

	.ai-quality-card::before,
	.ai-quality-card:nth-child(even)::before {
		background: linear-gradient(90deg, #062f58, #2874fc);
		height: 6px;
		inset: 0 0 auto;
		width: auto;
	}

	.ai-quality-card:nth-child(even) .ai-quality-card__image {
		order: 0;
	}

	.ai-quality-card__body {
		padding: 30px 24px 32px;
	}

	.ai-quality-card__label {
		font-size: 13px;
		margin-bottom: 12px;
	}

	.ai-quality-card h3 {
		font-size: 22px;
		margin-bottom: 14px;
	}

	.ai-quality-card__body p:not(.ai-quality-card__label) {
		font-size: 14px;
		line-height: 1.9;
	}

	.ai-quality-card__image {
		aspect-ratio: 16 / 10;
		min-height: 0;
	}

	.ai-quality-features__note {
		font-size: 12px;
		margin-top: 18px;
		text-align: left;
	}
}


.ai-roadmap-section {
	background-color: #062f58;
	background-image:
		linear-gradient(120deg, rgba(6, 47, 88, 0.22), rgba(6, 47, 88, 0.08)),
		linear-gradient(120deg, #062f58 0%, #0b4478 48%, #2874fc 100%);
	background-position:
		center,
		center;
	background-repeat: no-repeat;
	background-size:
		auto,
		auto;
	color: #fff;
	overflow: hidden;
	padding: 112px 20px 126px;
	position: relative;
	z-index: 1;
}

.ai-roadmap-section::before {
	color: rgba(255, 255, 255, 0.055);
	content: "ROADMAP";
	font-family: Roboto, sans-serif;
	font-size: clamp(82px, 8vw, 152px);
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.06em;
	line-height: 1;
	position: absolute;
	top: 62px;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: -1;
}

.ai-roadmap-section::after {
	background-image: repeating-radial-gradient(ellipse at center, rgba(79, 199, 255, 0.22) 0 1px, transparent 1px 9px);
	border-radius: 50%;
	content: "";
	height: 320px;
	opacity: 0.1;
	position: absolute;
	right: -220px;
	top: -125px;
	width: 520px;
	z-index: -1;
}

.ai-roadmap-section__inner {
	margin: 0 auto;
	max-width: 1120px;
}

.ai-roadmap-section__heading {
	margin: 0 auto 62px;
	max-width: 850px;
	text-align: center;
}

.ai-roadmap-section__eyebrow {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1;
	margin: 0 0 22px;
}

.ai-roadmap-section__heading h2 {
	color: #fff;
	font-size: clamp(36px, 3vw, 48px);
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.45;
	margin: 0;
}

.ai-roadmap-section__heading > p:not(.ai-roadmap-section__eyebrow) {
	color: rgba(255, 255, 255, 0.86);
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 24px auto 0;
	max-width: 760px;
}

.ai-roadmap-features {
	display: grid;
	gap: 32px;
}

.ai-roadmap-feature {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 24px 54px rgba(0, 20, 48, 0.18);
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1fr);
	min-height: 420px;
	overflow: hidden;
	position: relative;
}

.ai-roadmap-feature::before {
	background: linear-gradient(180deg, #062f58, #2874fc);
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 8px;
}

.ai-roadmap-feature:nth-child(even) {
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
}

.ai-roadmap-feature:nth-child(even)::before {
	inset: 0 0 0 auto;
}

.ai-roadmap-feature:nth-child(even) .ai-roadmap-feature__copy {
	order: 2;
}

.ai-roadmap-feature:nth-child(even) .ai-roadmap-feature__visual {
	order: 1;
}

.ai-roadmap-feature__copy {
	color: #062f58;
	padding: 54px 58px 52px;
}

.ai-roadmap-feature__phase {
	align-items: center;
	background-color: #d7f5e8;
	border-radius: 999px;
	color: #07815f;
	display: inline-flex;
	font-size: 15px;
	font-weight: 700;
	height: 38px;
	justify-content: center;
	letter-spacing: 0.06em;
	line-height: 1;
	margin: 0 0 24px;
	padding: 0 22px;
}

.ai-roadmap-feature h3 {
	color: #062f58;
	font-size: clamp(26px, 2.15vw, 34px);
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.45;
	margin: 0 0 22px;
}

.ai-roadmap-feature__copy > p:not(.ai-roadmap-feature__phase) {
	color: #263b52;
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 0 0 28px;
}

.ai-roadmap-feature ul {
	display: grid;
	gap: 12px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ai-roadmap-feature li {
	align-items: center;
	background-color: #edf5ff;
	border-radius: 8px;
	color: #1156b6;
	display: flex;
	font-size: 15px;
	font-weight: 700;
	gap: 12px;
	letter-spacing: 0.02em;
	line-height: 1.65;
	padding: 14px 16px;
}

.ai-roadmap-feature li::before {
	align-items: center;
	background: linear-gradient(90deg, #4fc7ff, #5283ff);
	border-radius: 50%;
	color: #fff;
	content: "✓";
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 12px;
	font-weight: 700;
	height: 24px;
	justify-content: center;
	line-height: 1;
	width: 24px;
}

.ai-roadmap-feature__visual {
	align-items: stretch;
	background: linear-gradient(140deg, #eaf4ff 0%, #f7fbff 100%);
	display: flex;
	justify-content: center;
	overflow: hidden;
	padding: 0;
}

.ai-roadmap-feature__image {
	display: block;
	height: 100%;
	max-height: none;
	max-width: none;
	min-height: 100%;
	object-fit: cover;
	width: 100%;
}

.ai-roadmap-ui {
	background-color: #fff;
	border: 1px solid #c9dcf5;
	border-radius: 18px;
	box-shadow: 0 20px 45px rgba(6, 47, 88, 0.16);
	max-width: 430px;
	min-height: 278px;
	padding: 28px;
	position: relative;
	width: 100%;
}

.ai-roadmap-ui__bar {
	display: flex;
	gap: 8px;
	margin-bottom: 22px;
}

.ai-roadmap-ui__bar span {
	background-color: #c9dcf5;
	border-radius: 50%;
	height: 10px;
	width: 10px;
}

.ai-roadmap-ui__status {
	background-color: #062f58;
	border-radius: 12px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.06em;
	margin-bottom: 22px;
	padding: 16px;
	text-align: center;
}

.ai-roadmap-ui__wave {
	align-items: center;
	display: flex;
	gap: 8px;
	height: 58px;
	justify-content: center;
	margin-bottom: 22px;
}

.ai-roadmap-ui__wave span {
	background: linear-gradient(180deg, #4fc7ff, #2874fc);
	border-radius: 999px;
	display: block;
	width: 8px;
}

.ai-roadmap-ui__wave span:nth-child(1),
.ai-roadmap-ui__wave span:nth-child(5) {
	height: 24px;
}

.ai-roadmap-ui__wave span:nth-child(2),
.ai-roadmap-ui__wave span:nth-child(4) {
	height: 42px;
}

.ai-roadmap-ui__wave span:nth-child(3) {
	height: 58px;
}

.ai-roadmap-ui__grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ai-roadmap-ui__grid p,
.ai-roadmap-bubbles p,
.ai-roadmap-dashboard div {
	background-color: #edf5ff;
	border: 1px solid #c9dcf5;
	border-radius: 10px;
	color: #1156b6;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	margin: 0;
	padding: 12px;
	text-align: center;
}

.ai-roadmap-ui--room {
	align-items: center;
	display: grid;
	gap: 20px;
	grid-template-columns: 150px minmax(0, 1fr);
}

.ai-roadmap-phone {
	background: linear-gradient(180deg, #062f58, #124c83);
	border: 8px solid #0b1f38;
	border-radius: 28px;
	box-shadow: 0 18px 36px rgba(6, 47, 88, 0.22);
	color: #fff;
	min-height: 250px;
	padding: 26px 16px 20px;
	text-align: center;
}

.ai-roadmap-phone span {
	background-color: #d8e6f7;
	border-radius: 999px;
	display: block;
	height: 5px;
	margin: 0 auto 24px;
	width: 42px;
}

.ai-roadmap-phone p {
	color: #a9d8ff;
	font-size: 13px;
	font-weight: 700;
	margin: 0 0 18px;
}

.ai-roadmap-phone strong {
	font-size: 18px;
	letter-spacing: 0.02em;
	line-height: 1.5;
}

.ai-roadmap-bubbles {
	display: grid;
	gap: 14px;
}

.ai-roadmap-bubbles p {
	background-color: #fff;
	text-align: left;
}

.ai-roadmap-ui--pms {
	padding-bottom: 34px;
}

.ai-roadmap-dashboard {
	display: grid;
	gap: 14px;
	margin-bottom: 30px;
}

.ai-roadmap-dashboard div {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 16px 18px;
	text-align: left;
}

.ai-roadmap-dashboard strong {
	color: #062f58;
	font-size: 17px;
}

.ai-roadmap-dashboard span {
	background-color: #d7f5e8;
	border-radius: 999px;
	color: #07815f;
	font-size: 13px;
	padding: 5px 12px;
}

.ai-roadmap-progress {
	background-color: #d9e8fb;
	border-radius: 999px;
	height: 12px;
	margin-bottom: 18px;
	overflow: hidden;
}

.ai-roadmap-progress span {
	background: linear-gradient(90deg, #4fc7ff, #2874fc);
	border-radius: inherit;
	display: block;
	height: 100%;
	width: 72%;
}

.ai-roadmap-ui--pms > p {
	color: #1156b6;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0;
	text-align: center;
}

.ai-roadmap-section__note {
	color: rgba(255, 255, 255, 0.78);
	font-size: 13px;
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin: 26px 0 0;
}


.ai-trust-section {
	background-color: #f2f8ff;
	background-image: linear-gradient(180deg, #f8fbff 0%, #f2f8ff 100%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto;
	color: #062f58;
	overflow: hidden;
	padding: 94px 20px 92px;
	position: relative;
	z-index: 1;
}

.ai-trust-section::before {
	color: rgba(40, 116, 252, 0.06);
	content: "TRUST";
	font-family: Roboto, sans-serif;
	font-size: clamp(86px, 10vw, 150px);
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.06em;
	line-height: 1;
	position: absolute;
	top: 58px;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: -1;
}

.ai-trust-section__inner {
	margin: 0 auto;
	max-width: 1180px;
}

.ai-trust-section__heading {
	margin: 0 auto 52px;
	text-align: center;
}

.ai-trust-section__eyebrow {
	color: #2874fc;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1;
	margin: 0 0 22px;
}

.ai-trust-section__heading h2 {
	color: #30343a;
	font-size: clamp(34px, 2.8vw, 44px);
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.45;
	margin: 0;
}

.ai-trust-cards {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-trust-card {
	background: #fff;
	border: 1px solid #d9e9ff;
	border-radius: 8px;
	box-shadow: 0 14px 32px rgba(6, 47, 88, 0.05);
	min-height: 148px;
	padding: 30px 28px 32px;
}

.ai-trust-card h3 {
	color: #062f58;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.55;
	margin: 0 0 18px;
}

.ai-trust-card h3 span {
	display: inline-block;
}

.ai-trust-card p {
	color: #30343a;
	font-size: 15px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 0;
}

.ai-trust-section__note {
	color: #ff2b2b;
	font-size: 13px;
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin: 20px 0 0;
}


.ai-faq-section {
	background-color: #f2f8ff;
	background-image: linear-gradient(180deg, #f2f8ff 0%, #f8fbff 100%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto;
	color: #062f58;
	overflow: hidden;
	padding: 92px 20px 100px;
	position: relative;
	z-index: 1;
}

.ai-faq-section::before {
	color: rgba(40, 116, 252, 0.06);
	content: "FAQ";
	font-family: Roboto, sans-serif;
	font-size: clamp(92px, 10vw, 150px);
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.06em;
	line-height: 1;
	position: absolute;
	top: 58px;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: -1;
}

.ai-faq-section__inner {
	margin: 0 auto;
	max-width: 920px;
}

.ai-faq-section__heading {
	margin: 0 auto 46px;
	text-align: center;
}

.ai-faq-section__eyebrow {
	color: #2874fc;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1;
	margin: 0 0 20px;
}

.ai-faq-section__heading h2 {
	color: #30343a;
	font-size: clamp(34px, 3vw, 44px);
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.35;
	margin: 0;
}

.ai-faq-list {
	display: grid;
	gap: 12px;
}

.ai-faq-item {
	background-color: #e5f1ff;
	border: 1px solid #c3dcff;
	border-radius: 8px;
	box-shadow: 0 12px 28px rgba(6, 47, 88, 0.035);
	color: #062f58;
	padding: 20px 24px 22px;
}

.ai-faq-item summary {
	align-items: flex-start;
	cursor: pointer;
	display: flex;
	font-size: 17px;
	font-weight: 700;
	gap: 8px;
	letter-spacing: 0.02em;
	line-height: 1.55;
	list-style: none;
}

.ai-faq-item summary::-webkit-details-marker {
	display: none;
}

.ai-faq-item summary::before {
	color: #062f58;
	content: "▶";
	font-size: 13px;
	line-height: 2;
	margin-top: 1px;
	transition: transform 0.2s ease;
}

.ai-faq-item[open] summary::before {
	content: "▼";
}

.ai-faq-item p {
	color: #30343a;
	font-size: 15px;
	letter-spacing: 0.02em;
	line-height: 1.9;
	margin: 18px 0 0 22px;
}


#home_contact > .gb-element-7c0016c6 {
	display: none !important;
}

#home_contact {
	box-sizing: border-box;
	padding: 125px 20px 96px !important;
}

.ai-entry-contact {
	background-color: #fff;
	border-radius: 8px;
	display: grid;
	gap: 58px;
	grid-template-columns: minmax(0, 0.76fr) minmax(0, 1.24fr);
	margin: 0 auto;
	max-width: 1100px;
	padding: 52px 56px 56px;
	position: relative;
	z-index: 1;
}

.ai-entry-contact__copy {
	padding-top: 8px;
}

.ai-entry-contact__eyebrow {
	color: #2874fc;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1;
	margin: 0 0 20px;
}

.ai-entry-contact__copy h2 {
	color: #30343a;
	font-size: clamp(34px, 3.1vw, 46px);
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.55;
	margin: 0 0 28px;
}

.ai-entry-contact__copy p:not(.ai-entry-contact__eyebrow) {
	color: #30343a;
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 0;
}

.ai-entry-form {
	display: grid;
	gap: 18px;
	margin: 0;
}

.ai-entry-form__field {
	display: grid;
	gap: 8px;
	margin: 0;
}

.ai-entry-form label,
.ai-entry-form legend {
	color: #30343a;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
}

.ai-entry-form input[type="text"],
.ai-entry-form input[type="email"],
.ai-entry-form input[type="tel"],
.ai-entry-form textarea {
	background-color: #fff;
	border: 1px solid #bdd2ec;
	border-radius: 5px;
	box-shadow: none;
	box-sizing: border-box;
	color: #012138;
	font-size: 16px;
	height: 52px;
	line-height: 1.6;
	padding: 10px 14px;
	width: 100%;
}

.ai-entry-form textarea {
	min-height: 126px;
	resize: vertical;
}

.ai-entry-form__radio {
	border: 1px solid #bdd2ec;
	border-radius: 5px;
	display: grid;
	gap: 10px;
	padding: 24px 18px 18px;
}

.ai-entry-form__radio legend {
	padding: 0 6px;
}

.ai-entry-form__radio label,
.ai-entry-form__privacy {
	align-items: center;
	display: flex;
	gap: 10px;
}

.ai-entry-form input[type="radio"],
.ai-entry-form input[type="checkbox"] {
	accent-color: #2874fc;
	margin: 0;
}

.ai-entry-form__privacy {
	font-size: 14px;
	margin-top: 2px;
}

.ai-entry-form__button {
	background-color: #30343a;
	border: 0;
	border-radius: 999px;
	color: #fff;
	cursor: pointer;
	font-size: 16px;
	font-weight: 700;
	height: 58px;
	letter-spacing: 0.02em;
	margin-top: 2px;
	text-align: center;
	transition: opacity 0.2s ease;
	width: 100%;
}

.ai-entry-form__button:hover,
.ai-entry-form__button:focus {
	opacity: 0.86;
}


.site-footer {
	background-color: #062f58;
}

.site-footer #footer-widgets,
.site-footer .site-info {
	display: none !important;
}

.ai-simple-footer {
	background-color: #062f58;
	box-sizing: border-box;
	color: #fff;
	padding: 42px 20px 44px;
}

.ai-simple-footer__inner {
	align-items: center;
	display: flex;
	gap: 32px;
	margin: 0 auto;
	max-width: 1728px;
	width: 90%;
}

.ai-simple-footer__brand {
	display: block;
	flex: 0 0 auto;
	line-height: 0;
	text-decoration: none;
}

.ai-simple-footer__brand img {
	display: block;
	height: auto;
	width: 218px;
}

.ai-simple-footer__body {
	color: #fff;
	display: grid;
	gap: 8px;
	min-width: 0;
}

.ai-simple-footer__company {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.6;
	margin: 0;
}

.ai-simple-footer__links {
	align-items: center;
	color: #fff;
	display: flex;
	flex-wrap: wrap;
	font-size: 18px;
	font-weight: 600;
	gap: 8px;
	letter-spacing: 0.02em;
	line-height: 1.6;
}

.ai-simple-footer__links a {
	color: #fff;
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.ai-simple-footer__links a:hover,
.ai-simple-footer__links a:focus {
	opacity: 0.75;
}

.ai-simple-footer__copyright {
	color: rgba(255, 255, 255, 0.72);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1.6;
	margin: 20px auto 0;
	text-align: center;
	width: 90%;
}

a.generate-back-to-top {
	background-color: rgba(255, 255, 255, 0.82) !important;
	bottom: 18px !important;
	color: var(--main) !important;
	height: 42px !important;
	line-height: 42px !important;
	right: 18px !important;
	width: 42px !important;
	z-index: 7 !important;
}

a.generate-back-to-top .gp-icon svg {
	height: 1em !important;
	top: 0 !important;
	width: 1em !important;
}


.gb-element-3bc65aaf .gb-element-24d7aa6f,
.gb-element-373dd514 .gb-element-366cf419,
.gb-element-5d01cb58 .gb-element-efead399 {
	display: none !important;
}

.gb-element-3bc65aaf .gb-element-6ab74c98,
.gb-element-373dd514 .gb-element-18fdb697,
.gb-element-5d01cb58 .gb-element-686dbedf {
	justify-content: center !important;
}

.gb-element-3bc65aaf .gb-element-9db37085,
.gb-element-373dd514 .gb-element-4e5bc27e,
.gb-element-5d01cb58 .gb-element-c32e88e8 {
	max-width: 720px;
	width: 66% !important;
}

.gb-element-3bc65aaf .gb-text-6541f4e5,
.gb-element-373dd514 .gb-text-eb5a88e8,
.gb-element-5d01cb58 .gb-text-e0fa57f5 {
	box-sizing: border-box;
	line-height: 1.55;
	min-height: 104px;
	padding-bottom: 20px !important;
	padding-top: 18px !important;
	width: 100%;
	word-break: keep-all;
}

.gb-element-3bc65aaf .gb-text-6541f4e5 .cmn-soshoku-a,
.gb-element-373dd514 .gb-text-eb5a88e8 .cmn-soshoku-a,
.gb-element-5d01cb58 .gb-text-e0fa57f5 .cmn-soshoku-a {
	display: inline-block;
	min-width: 230px;
	padding-left: 16px;
	padding-right: 16px;
	white-space: nowrap;
}

.cta-text-sp {
	display: none;
}

.gb-element-373dd514 .gb-text-90448c70 {
	font-size: clamp(32px, 2.5vw, 40px);
	line-height: 1.34;
	margin-left: auto;
	margin-right: auto;
	max-width: min(1160px, calc(100vw - 56px));
	overflow-wrap: break-word;
	white-space: normal;
	word-break: keep-all;
}

.gb-element-3bc65aaf .gb-text-6541f4e5::before,
.gb-element-373dd514 .gb-text-eb5a88e8::before,
.gb-element-5d01cb58 .gb-text-e0fa57f5::before {
	background-image: url("mail-cta-icon.svg") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 32px 32px !important;
	color: transparent !important;
	content: "" !important;
}

@media (max-width: 900px) {
	.ai-roadmap-feature,
	.ai-roadmap-feature:nth-child(even) {
		display: flex;
		flex-direction: column;
		min-height: 0;
	}

	.ai-roadmap-feature .ai-roadmap-feature__visual,
	.ai-roadmap-feature:nth-child(even) .ai-roadmap-feature__visual {
		order: 1;
	}

	.ai-roadmap-feature .ai-roadmap-feature__copy,
	.ai-roadmap-feature:nth-child(even) .ai-roadmap-feature__copy {
		order: 2;
	}

	.ai-roadmap-feature__image {
		aspect-ratio: 1 / 1;
		height: auto;
		min-height: 0;
	}

	.ai-trust-cards {
		grid-template-columns: 1fr;
	}

	.ai-entry-contact {
		gap: 36px;
		grid-template-columns: 1fr;
		padding: 42px 34px 44px;
	}
}

@media (max-width: 767px) {
	.ai-roadmap-section {
		padding: 72px 15px 76px;
	}

	.ai-roadmap-section::before {
		font-size: 58px;
		top: 44px;
	}

	.ai-roadmap-section::after {
		height: 180px;
		right: -120px;
		width: 330px;
	}

	.ai-roadmap-section__heading {
		margin-bottom: 38px;
		text-align: left;
	}

	.ai-roadmap-section__eyebrow {
		font-size: 14px;
		text-align: center;
	}

	.ai-roadmap-section__heading h2 {
		font-size: 28px;
		line-height: 1.55;
		text-align: center;
	}

	.ai-roadmap-section__heading > p:not(.ai-roadmap-section__eyebrow) {
		font-size: 14px;
		line-height: 1.9;
	}

	.ai-roadmap-features {
		gap: 24px;
	}

	.ai-roadmap-feature::before,
	.ai-roadmap-feature:nth-child(even)::before {
		background: linear-gradient(90deg, #4fc7ff, #2874fc);
		height: 6px;
		inset: 0 0 auto;
		width: auto;
	}

	.ai-roadmap-feature__copy {
		padding: 30px 24px 28px;
	}

	.ai-roadmap-feature__phase {
		font-size: 13px;
		height: 32px;
		margin-bottom: 16px;
		padding: 0 16px;
	}

	.ai-roadmap-feature h3 {
		font-size: 22px;
		margin-bottom: 14px;
	}

	.ai-roadmap-feature__copy > p:not(.ai-roadmap-feature__phase) {
		font-size: 14px;
		line-height: 1.9;
		margin-bottom: 20px;
	}

	.ai-roadmap-feature li {
		align-items: flex-start;
		font-size: 13px;
		gap: 10px;
		padding: 12px 14px;
	}

	.ai-roadmap-feature__visual {
		padding: 0;
	}

	.ai-roadmap-feature__image {
		aspect-ratio: 1 / 1;
	}

	.ai-roadmap-ui {
		border-radius: 14px;
		min-height: 0;
		padding: 20px;
	}

	.ai-roadmap-ui--room {
		grid-template-columns: 1fr;
	}

	.ai-roadmap-phone {
		margin: 0 auto;
		max-width: 180px;
		min-height: 220px;
		width: 100%;
	}

	.ai-roadmap-section__note {
		font-size: 12px;
		margin-top: 18px;
	}

	.ai-trust-section {
		padding: 68px 15px 62px;
	}

	.ai-trust-section::before {
		font-size: 72px;
		top: 45px;
	}

	.ai-trust-section__heading {
		margin-bottom: 34px;
	}

	.ai-trust-section__eyebrow {
		font-size: 13px;
		margin-bottom: 16px;
	}

	.ai-trust-section__heading h2 {
		font-size: 27px;
		text-align: left;
	}

	.ai-trust-card {
		min-height: 0;
		padding: 24px 22px 26px;
	}

	.ai-trust-card h3 {
		font-size: 18px;
		margin-bottom: 12px;
	}

	.ai-trust-card p {
		font-size: 14px;
		line-height: 1.9;
	}

	.ai-trust-section__note {
		font-size: 12px;
		text-align: left;
	}

	.ai-faq-section {
		padding: 66px 15px 72px;
	}

	.ai-faq-section::before {
		font-size: 72px;
		top: 44px;
	}

	.ai-faq-section__heading {
		margin-bottom: 32px;
	}

	.ai-faq-section__eyebrow {
		font-size: 13px;
		margin-bottom: 14px;
	}

	.ai-faq-section__heading h2 {
		font-size: 30px;
	}

	.ai-faq-list {
		gap: 10px;
	}

	.ai-faq-item {
		padding: 18px 18px 20px;
	}

	.ai-faq-item summary {
		font-size: 15px;
		line-height: 1.6;
	}

	.ai-faq-item p {
		font-size: 14px;
		line-height: 1.85;
		margin-left: 21px;
		margin-top: 12px;
	}

	#home_contact {
		padding: 46px 15px 58px !important;
	}

	.ai-entry-contact {
		border-radius: 6px;
		gap: 28px;
		padding: 30px 22px 32px;
	}

	.ai-entry-contact__copy {
		padding-top: 0;
	}

	.ai-entry-contact__eyebrow {
		font-size: 13px;
		margin-bottom: 14px;
	}

	.ai-entry-contact__copy h2 {
		font-size: 28px;
		line-height: 1.55;
		margin-bottom: 18px;
	}

	.ai-entry-contact__copy p:not(.ai-entry-contact__eyebrow) {
		font-size: 14px;
		line-height: 1.9;
	}

	.ai-entry-form {
		gap: 15px;
	}

	.ai-entry-form input[type="text"],
	.ai-entry-form input[type="email"],
	.ai-entry-form input[type="tel"] {
		height: 48px;
	}

	.ai-entry-form textarea {
		min-height: 110px;
	}

	.ai-entry-form__button {
		font-size: 15px;
		height: 54px;
	}

	.ai-simple-footer {
		padding: 34px 22px 38px;
	}

	.ai-simple-footer__inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 20px;
	}

	.ai-simple-footer__brand img {
		width: 198px;
	}

	.ai-simple-footer__company {
		font-size: 14px;
	}

	.ai-simple-footer__links {
		font-size: 15px;
		gap: 6px;
	}

	.gb-element-3bc65aaf .gb-element-9db37085,
	.gb-element-373dd514 .gb-element-4e5bc27e,
	.gb-element-5d01cb58 .gb-element-c32e88e8 {
		max-width: 100%;
		width: 100% !important;
	}

	.gb-element-3bc65aaf .gb-text-6541f4e5,
	.gb-element-373dd514 .gb-text-eb5a88e8,
	.gb-element-5d01cb58 .gb-text-e0fa57f5 {
		font-size: 17px;
		min-height: 98px;
		padding-left: 70px !important;
		padding-right: 34px !important;
	}

	.gb-element-3bc65aaf .gb-text-6541f4e5 .cmn-soshoku-a,
	.gb-element-373dd514 .gb-text-eb5a88e8 .cmn-soshoku-a,
	.gb-element-5d01cb58 .gb-text-e0fa57f5 .cmn-soshoku-a {
		line-height: 1.25;
		margin-bottom: 6px;
		min-width: 180px;
		padding-bottom: 4px;
		padding-top: 4px;
	}

	.gb-element-373dd514 .gb-text-90448c70 {
		font-size: 25px;
		line-height: 1.45;
		max-width: calc(100vw - 30px);
	}

	.cta-sp-break::after {
		content: "\A";
		white-space: pre;
	}

	.cta-caption-break::after {
		content: "\A";
		white-space: pre;
	}

	.cta-caption-separator {
		display: none;
	}

	.cta-text-pc {
		display: none;
	}

	.cta-text-sp {
		display: inline;
	}

	a.generate-back-to-top {
		display: none !important;
	}
}


#home_scene {
	background-color: #fff;
	background-image: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto;
	overflow: hidden;
	padding: 120px 20px 110px;
	position: relative;
}

#home_scene > .gb-element-79afe1ea {
	display: none;
}

#home_scene .gb-element-c67b1c6a {
	display: none;
}

.ai-scene-section {
	margin: 0 auto;
	max-width: 1180px;
	position: relative;
	text-align: center;
	z-index: 1;
}

.ai-scene-section::before {
	color: rgba(0, 82, 184, 0.055);
	content: "SCENE";
	font-family: Roboto, sans-serif;
	font-size: clamp(76px, 7vw, 132px);
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.06em;
	line-height: 1;
	position: absolute;
	top: -34px;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: -1;
}

.ai-scene-section__heading {
	margin: 0 auto 54px;
	max-width: 900px;
}

.ai-scene-section__eyebrow {
	color: #2874fc;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1;
	margin: 0 0 20px;
}

.ai-scene-section__heading h2 {
	color: #2f363d;
	font-size: clamp(34px, 3vw, 46px);
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.55;
	margin: 0;
}

.ai-scene-section__heading > p:not(.ai-scene-section__eyebrow) {
	color: #536170;
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 22px auto 0;
	max-width: 760px;
}

.ai-scene-cards {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0 auto;
	max-width: 1180px;
	text-align: left;
}

.ai-scene-card {
	background-color: #eaf4ff;
	border: 1px solid #c7dcfb;
	border-radius: 8px;
	box-shadow: 0 18px 38px rgba(15, 62, 138, 0.05);
	min-height: 280px;
	padding: 30px 28px 28px;
}

.ai-scene-card__tag {
	align-items: center;
	background-color: #2874fc;
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 15px;
	font-weight: 700;
	height: 34px;
	justify-content: center;
	line-height: 1;
	margin: 0 0 22px;
	min-width: 54px;
	padding: 0 14px;
}

.ai-scene-card h3 {
	color: #062f58;
	font-size: 21px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.65;
	margin: 0 0 18px;
}

.ai-scene-card p:not(.ai-scene-card__tag) {
	color: #263b52;
	font-size: 15px;
	letter-spacing: 0.02em;
	line-height: 2;
	margin: 0;
}

.ai-scene-section__badges {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-top: 28px;
}

.ai-scene-section__badges p {
	background-color: #d5f3ea;
	border-radius: 999px;
	color: #07815f;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	margin: 0;
	padding: 11px 22px;
}

@media (max-width: 1180px) {
	.ai-scene-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	#home_scene {
		padding: 70px 15px 72px;
	}

	.ai-scene-section::before {
		font-size: 60px;
		top: -15px;
	}

	.ai-scene-section__heading {
		margin-bottom: 34px;
	}

	.ai-scene-section__eyebrow {
		font-size: 14px;
		margin-bottom: 12px;
	}

	.ai-scene-section__heading h2 {
		font-size: 28px;
		line-height: 1.55;
	}

	.ai-scene-section__heading > p:not(.ai-scene-section__eyebrow) {
		font-size: 14px;
		line-height: 1.9;
		text-align: left;
	}

	.ai-scene-cards {
		gap: 16px;
		grid-template-columns: 1fr;
	}

	.ai-scene-card {
		min-height: 0;
		padding: 24px 22px 25px;
	}

	.ai-scene-card__tag {
		font-size: 13px;
		height: 30px;
		margin-bottom: 16px;
	}

	.ai-scene-card h3 {
		font-size: 18px;
		margin-bottom: 12px;
	}

	.ai-scene-card p:not(.ai-scene-card__tag) {
		font-size: 14px;
		line-height: 1.9;
	}

	.ai-scene-section__badges {
		align-items: stretch;
		flex-direction: column;
		margin-top: 20px;
	}

	.ai-scene-section__badges p {
		font-size: 13px;
		text-align: center;
	}
}



@media (max-width: 767px) {
	#home_worry.gb-element-519d4789 {
		background-position:
			center,
			center top !important;
		background-size:
			auto,
			cover !important;
	}

	.ai-solution-set,
	.ai-flow-section,
	#home_scene,
	.ai-trust-section,
	.ai-faq-section {
		background-position: center;
		background-size: auto;
	}

	.ai-solution-set {
		background-position: center;
	}

	.ai-flow-section {
		background-position: center;
	}

	#home_merit {
		background-position: center;
		background-size: auto;
	}

	.ai-roadmap-section {
		background-position:
			center,
			center;
		background-size:
			auto,
			auto;
	}

	#home_scene {
		background-position: center;
	}

	.ai-trust-section {
		background-position: center;
	}

	.ai-faq-section {
		background-position: center;
	}
}


.openbtn{
	position: relative;
	background:transparent;
	cursor: pointer;
	width: 50px;
	height:50px;
	border-radius: 5px;
}


.openbtn span{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 14px;
	height: 2px;
	border-radius: 2px;
	background: #fff;
	width: 45%;
}

.openbtn span:nth-of-type(1) {
	top:15px; 
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}



.openbtn.active span:nth-of-type(1) {
	top: 18px;
	left: 18px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
	top: 30px;
	left: 18px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}
