@charset "UTF-8";

/* ====== インスタントLIVE 配色 ====== */
.live-lp {
	--live-blue: #0071bc;
	--live-orange: #fc6010;
	--live-red: #e82d00;
	--live-yellow: #fff579;
	--live-text: #333333;
}

/* ====== 共通パーツ（モード見出し・吹き出し・チェック・マーカー） ====== */
.live-mode-title {
	display: block;
	position: relative;
	z-index: 10;
	width: 340px;
	margin: 0 auto -10px;
	padding: 16px 0;
	border: 6px solid var(--live-orange);
	border-radius: 40px;
	background: #ffffff;
	color: var(--live-orange);
	font-size: 3.8rem;
	line-height: 3.6rem;
	text-align: center;
}

.live-callout {
	display: block;
	position: relative;
	margin: 0;
	padding: 30px 35px;
	border: 4px solid var(--live-blue);
	border-radius: 5px;
	background: #ffffff;
	color: var(--live-text);
	font-size: 2rem;
	line-height: 3.5rem;
	text-align: left;
}

.live-callout::before,
.live-mode-note::before {
	position: absolute;
	top: -20px;
	left: -20px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--live-red);
	color: #ffffff;
	font-family: "Font Awesome 5 Free";
	font-size: 1.6rem;
	font-weight: 900;
	line-height: 32px;
	text-align: center;
	content: "\f00c";
}

.live-marker {
	background: linear-gradient(transparent 50%, var(--live-yellow) 50%);
}

/* ====== 商談モード ====== */
.live-lp .live-first-bg {
	padding-top: 50px;
}

.live-lp .live-first-inner {
	padding-top: 33px;
}

.live-lead {
	display: inline-block;
	margin: 0;
	color: #000000;
	font-size: 2.2rem;
	line-height: 3.6rem;
	text-align: left;
}

.live-lead-em {
	border-bottom: 4px double #d70211;
	color: #d70211;
}

.live-first-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 30px 44px;
	margin-top: 30px;
}

.live-shodan {
	position: relative;
	width: 537px;
	max-width: 100%;
	margin: 0;
}

.live-shodan-img {
	display: block;
	width: 100%;
	height: auto;
}

.live-shodan-callout {
	position: absolute;
	top: 246px;
	left: 72px;
	width: 318px;
	padding: 4px 0 4px 20px;
	border-width: 3px;
	border-color: #1271bc;
	border-radius: 0;
	font-size: 1.8rem;
	line-height: 2.6rem;
}

.live-shodan-callout::before {
	top: -16px;
	left: -12px;
}

.live-shodan-callout::after {
	position: absolute;
	top: 50%;
	left: calc(100% + 12px);
	margin-top: -13px;
	border-top: 13px solid transparent;
	border-bottom: 13px solid transparent;
	border-left: 22px solid #1271bc;
	content: "";
}

.live-mode-note {
	position: relative;
	width: 252px;
	min-height: 297px;
	margin-top: 23px;
	padding: 41px 15px 20px;
	background: #f3f7fc;
	text-align: left;
}

.live-mode-note::before {
	top: -10px;
	left: -10px;
}

.live-mode-note-text {
	margin: 0 0 27px 10px;
	color: var(--live-text);
	font-size: 1.7rem;
	line-height: 2.8rem;
}

.live-mode-note-toggle {
	display: block;
	width: 220px;
	height: auto;
	border: 1px solid #1271bc;
}

/* ====== 商談管理との連動 ====== */
.live-lp .live-start {
	padding-top: 20px;
}

.live-band {
	max-width: 1300px;
	margin: 0 auto;
	padding: 10px 10px 11px;
	background: var(--live-blue);
	color: #ffffff;
	font-size: clamp(2.4rem, 2.15vw, 3rem);
	line-height: 5.7rem;
	letter-spacing: -0.02em;
	text-align: center;
}

.live-band-em {
	border-bottom: 9px solid var(--live-yellow);
}

.live-list {
	position: relative;
	max-width: 1000px;
	margin: 3px auto 0;
}

.live-list-img {
	display: block;
	width: 100%;
	height: auto;
}

.live-list-callout {
	position: absolute;
	top: 293px;
	left: -68px;
	width: 360px;
	height: 185px;
	padding: 25px 0 0 37px;
	box-shadow: 0 3px 6px #00000029;
}

/* ====== 機能紹介（吹き出し＋画面） ====== */
.live-feature {
	display: flex;
	flex: 0 1 530px;
	flex-direction: column;
	align-items: center;
	min-width: 0;
	margin: 0;
}

.live-feature-callout {
	margin-bottom: 25px;
}

.live-feature-callout::after {
	position: absolute;
	top: 100%;
	left: 50%;
	z-index: 10;
	width: 50px;
	height: 36px;
	margin: 4px 0 0 -25px;
	background: var(--live-blue);
	clip-path: polygon(28% 0, 72% 0, 72% 45%, 100% 45%, 50% 100%, 0 45%, 28% 45%);
	content: "";
}

.live-feature-img {
	display: block;
	width: calc(100% - 10px);
	height: auto;
	margin-right: 10px;
	border: 1px solid #0057bc;
	box-shadow: 10px 10px 0 var(--live-blue);
}

/* ====== 通常モード ====== */
.live-normal {
	padding: 70px 20px 63px;
}

.live-normal .live-mode-title {
	margin-bottom: -21px;
}

.live-normal-feature {
	width: 610px;
	max-width: 100%;
	margin: 0 auto;
}

.live-normal-feature .live-feature-callout {
	padding-top: 36px;
}

/* ====== Tablet ====== */
@media screen and (max-width: 1199px) {
	.live-list-callout {
		position: relative;
		top: auto;
		left: auto;
		width: auto;
		height: auto;
		max-width: 360px;
		margin: 30px auto 0;
		padding: 25px 30px;
	}

	.live-feature-callout {
		padding: 20px;
		font-size: 1.5rem;
		line-height: 2.6rem;
	}
}

/* ====== SP ====== */
@media screen and (max-width: 767px) {
	.live-mode-title {
		width: 220px;
		padding: 10px 0;
		border-width: 4px;
		font-size: 2.4rem;
		line-height: 3rem;
	}

	.live-callout::before,
	.live-mode-note::before {
		top: -14px;
		left: -8px;
		width: 28px;
		height: 28px;
		font-size: 1.4rem;
		line-height: 28px;
	}

	.live-lp .live-first-bg {
		padding-top: 30px;
	}

	.live-lp .live-first-inner {
		padding-top: 25px;
	}

	.live-lead {
		font-size: 1.5rem;
		line-height: 2.6rem;
	}

	.live-shodan-callout {
		position: relative;
		top: auto;
		left: auto;
		width: auto;
		margin-top: 25px;
		padding: 10px 15px;
		font-size: 1.4rem;
		line-height: 2.4rem;
	}

	.live-shodan-callout::after {
		display: none;
	}

	.live-mode-note {
		width: 100%;
		min-height: 0;
		margin-top: 0;
		padding: 25px 15px 20px;
	}

	.live-mode-note-text {
		margin: 0 0 20px;
		font-size: 1.4rem;
		line-height: 2.4rem;
	}

	.live-mode-note-toggle {
		margin: 0 auto;
	}

	.live-band {
		margin: 0 10px;
		padding: 12px 15px;
		font-size: 1.8rem;
		line-height: 3rem;
	}

	.live-band-em {
		border-bottom-width: 5px;
	}

	.live-list {
		margin: 3px 10px 0;
	}

	.live-list-callout {
		margin-top: 25px;
		padding: 20px;
		font-size: 1.5rem;
		line-height: 2.6rem;
	}

	.live-feature-callout {
		padding: 20px 15px;
		font-size: 1.4rem;
		line-height: 2.4rem;
	}

	.live-normal {
		padding: 40px 10px 0;
	}

	.live-normal .live-mode-title {
		margin-bottom: -14px;
	}
}
