@charset "UTF-8";
/* LINE連携機能リリース記念キャンペーン 右下ポップアップバナー (sidebar-line-cp.php) */

.c-line-cp {
	position: fixed;
	right: 8px;
	bottom: 124px;
	z-index: 100;
	width: 196px;
	animation: c-line-cp-in .4s ease-out both;
}

/* ブログ: 右下の「MOSを体験／ページトップ」ボタン群の上に配置 */
.c-line-cp.is-blog {
	right: 5%;
	bottom: calc(5% + 190px);
}

.c-line-cp[hidden] {
	display: none;
}

@keyframes c-line-cp-in {
	from { opacity: 0; transform: translateY(16px); }
	to   { opacity: 1; transform: translateY(0); }
}

.c-line-cp__link {
	position: relative;
	display: block;
	padding: 12px 8px 10px;
	border-radius: 6px;
	background: #06c755;
	color: #fff;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
	transition: transform .2s, box-shadow .2s;
}

/* 吹き出しのしっぽ */
.c-line-cp__link::after {
	content: "";
	position: absolute;
	right: 60px;
	bottom: -12px;
	border-style: solid;
	border-width: 12px 0 0 18px;
	border-color: #06c755 transparent transparent transparent;
}

.c-line-cp__link:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, .22);
}

/* ＼ ／ で挟んだリード文 */
.c-line-cp__lead {
	position: relative;
	display: block;
	margin: 0 12px 4px;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.35;
}

.c-line-cp__lead::before,
.c-line-cp__lead::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 1px;
	height: 34px;
	background: #fff;
}

.c-line-cp__lead::before {
	left: -4px;
	transform: translateY(-50%) rotate(-30deg);
}

.c-line-cp__lead::after {
	right: -4px;
	transform: translateY(-50%) rotate(30deg);
}

.c-line-cp__main {
	display: block;
	margin-bottom: 6px;
	font-size: 15px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: .02em;
}

.c-line-cp__main em {
	font-size: 18px;
	font-style: normal;
}

.c-line-cp__btn {
	display: inline-block;
	padding: 1px 12px;
	border-radius: 999px;
	background: #222;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.6;
}

/* 閉じるボタン */
.c-line-cp__close {
	position: absolute;
	top: -8px;
	right: -4px;
	width: 22px;
	height: 22px;
	padding: 0;
	border: 1px solid #06c755;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
}

.c-line-cp__close::before,
.c-line-cp__close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 1.5px;
	background: #06c755;
}

.c-line-cp__close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.c-line-cp__close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.c-line-cp__close:hover {
	background: #06c755;
}

.c-line-cp__close:hover::before,
.c-line-cp__close:hover::after {
	background: #fff;
}

@media screen and (max-width: 767px) {
	.c-line-cp {
		bottom: 116px;
		width: 168px;
	}

	.c-line-cp__lead {
		font-size: 11px;
	}

	.c-line-cp__lead::before,
	.c-line-cp__lead::after {
		height: 28px;
	}

	.c-line-cp__main {
		font-size: 13px;
	}

	.c-line-cp__main em {
		font-size: 15px;
	}

	.c-line-cp__btn {
		font-size: 11px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.c-line-cp {
		animation: none;
	}
}
