/* Minification failed. Returning unminified contents.
(374,24): run-time error CSS1039: Token not allowed after unary operator: '-delay'
(408,34): run-time error CSS1039: Token not allowed after unary operator: '-rx'
(408,63): run-time error CSS1039: Token not allowed after unary operator: '-ry'
 */
/*フォント*/
.font-title {
	margin: 0 0 .6rem;
	font-size: 55px;
	line-height: 1.45;
	font-weight: 800;
	color: #3f3f3f;
	text-wrap: balance;
}

.keep {
	display: inline-block; /* この塊を1ブロック扱い */
	white-space: nowrap; /* 塊の中では改行禁止 */
}

.font-title-sub {
	display: inline-block;
	font-size: 1.16em;
	line-height: 1.2;
	color: #569999;
	font-weight: 800;
	background: linear-gradient(180deg, transparent 72%, #FFF3C4 0);
}

.icon-title {
	width: 20px;
	height: 20px;
	display: inline-block;
}

/*トップ実績表示エリア*/
.font-report-number {
	font-weight: 900;
	font-size: 28px;
	line-height: 1;
	color: #37AB9D;
}

@media (min-width: 1600px) {
	.font-report-number {
		font-size: 32px;
	}
}

@media (max-width: 768px) {
	.font-title {
		font-size: 36.5px;
	}


	.font-report-number {
		font-size: 24px;
	}
}

/*トップの写真表示エリア*/
/*＝＝＝＝＝＝*/
.top-post-slide-area {
	z-index: 1;
	aspect-ratio: 9/16;
	max-height: 580px;
}

#kv-wrap {
	position: relative;
	width: 100%;
	height: 100%;
	border-radius:30px;
	overflow: hidden;
	max-height: 580px;
	border:1px solid #4f4f4f;
}

@media (max-width: 768px) {
	.top-post-slide-area {
		max-height: 310px;
	}

	#kv-wrap {
		max-height: 310px;
		border: none;
	}

	.top-post-slide-icon {
		right:unset;
		left:20px;
		height: 29px !important;
	}
}

.layer-filter {
	position: absolute;
	inset: 0;
	background: rgba(255,255,255,.2);
	pointer-events: none;
	z-index: 3
}

.top-post-slide-icon {
	top: 10px;
	right: 20px;
	z-index: 4;
	width: auto;
	height: 35px
}

/*＝＝＝＝＝＝*/

/*トップのイラスト*/
.top-heart-icon {
	width: 65px;
	height: auto;
	bottom: 165px;
	left: -75px;
	z-index: 2;
}

.top-share-icon {
	width: 62px;
	height: auto;
	bottom: 240px;
	left: -18px;
	z-index: 2;
}

.top-thumbup-icon {
	width: 62px;
	height: auto;
	bottom: 210px;
	left: 110px;
	z-index: 2
}

.top-comment-icon {
	width: 68px;
	height: auto;
	bottom: 120px;
	left: 130px;
	z-index: 2;
}

.top-person-image {
	width: 200px;
	height: auto;
	bottom: -10px;
	left: -50px;
	z-index: 2;
}

@media (max-width: 768px) {
	.top-heart-icon {
		width: 25px;
		height: auto;
		bottom: 80px;
		left: unset;
		right:95px
	}

	.top-share-icon {
		width: 25px;
		height: auto;
		bottom: 110px;
		left: unset;
		right:70px;
	}

	.top-thumbup-icon {
		width: 25px;
		height: auto;
		bottom: 105px;
		left: unset;
		right: 10px;
	}

	.top-comment-icon {
		width: 25px;
		height: auto;
		bottom: 75px;
		left: unset;
		right:0px;
	}

	.top-person-image {
		width: 100px;
		height: auto;
		bottom: -10px;
		left:unset;
		right: 10px;
	}
}



/*＝＝＝＝＝＝*/
/*Whatsセクション*/

.second-background {
	overflow: hidden;
	background: linear-gradient(180deg, #F7FCFC 0%, #ffffff 100%);
}

.second-background-dot {
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background-image: radial-gradient(rgba(122,186,187,0.28) 0.8px, transparent 0.9px);
	background-size: 16px 16px;
	background-position: 0 0;
	background-repeat: repeat;
	-webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.0) 55%);
	mask-image: linear-gradient(180deg, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.0) 55%);
}

.second-background-circle {
	position: absolute;
	top: -40px;
	left: -60px;
	width: 250px;
	height: 250px;
	border-radius: 50%;
	background: rgba(122,186,187,0.06);
	z-index: 1;
	pointer-events: none;
}

.balloon-1 {
	top: -190px;
	left: 120px;
}

.balloon-2 {
	top: -150px;
	left: 0;
}

.balloon-2-rq {
	top: -45px;
	left: 0;
	opacity: 0.2
}

/*＝＝＝＝＝＝*/

/*見出しボーダー*/
.head-border-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}

.head-border {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
}

.head-border-line {
	flex: 1;
	height: 0;
	border-top: 2px solid #8FD0CF;
}

.head-border-center {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.head-border-triangle {
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 10px solid #8FD0CF;
	margin-top: 4px;
}

/*ビフォーアフターのボーダー*/
.border-gray {
	height: 1px;
	background-color: #dcdcdc;
}

.border-green {
	height: 1px;
	background-color: #CBEDEA;
}

/*＝＝＝＝＝＝*/
/*背景デザイン*/
.new-top-background {
	background-color: #EAF8F7;
	background-image: radial-gradient(rgba(122,186,187,.28) 0.8px, transparent 0.9px), linear-gradient(180deg, #EAF8F7 0%, #F7FCFC 100%);
	background-size: 16px 16px, auto;
	background-repeat: repeat, no-repeat;
	background-position: 0 0, 0 0;
}

/*カードエリア*/
.card-area {
	padding: 22px;
	border-radius: 18px;
	background: #fff;
	border: 1px solid #DCEEEE;
	box-shadow: 0 8px 24px rgba(8,24,31,.06);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*バナー広告のイメージ図*/
.ad-sample {
	bottom: 11.2%;
	right: 3.8%;
	width: 63.3%
}



/* 共通の初期状態 */
.box-anime {
	opacity: 0;
	transition: opacity 0.6s ease, transform 0.6s ease;
}

/* 左から */
.box-left-anime {
	transform: translateX(-30px);
}

	.box-left-anime.show {
		opacity: 1;
		transform: translateX(0);
	}

/* 右から */
.box-right-anime {
	transform: translateX(30px);
}

	.box-right-anime.show {
		opacity: 1;
		transform: translateX(0);
	}

/* 下から */
.box-up-anime {
	transform: translateY(30px);
}

	.box-up-anime.show {
		opacity: 1;
		transform: translateY(0);
	}

/* その場でフェードイン */
.box-fade-anime {
	transform: none;
}

	.box-fade-anime.show {
		opacity: 1;
	}




/*ポイント獲得アニメーション*/
.float-icon {
	position: absolute;
	width: 28px;
	height: 28px;
	opacity: 0;
	transform: translate(0,0) scale(0.8);
	animation: floatUp 2.8s forwards;
	animation-delay: var(--delay, 0ms);
	pointer-events: none;
	z-index: 5;
}

	.float-icon.coin {
		border-radius: 50%;
		background: radial-gradient(circle at 35% 35%, rgba(255,255,255,.85) 0 18%, transparent 19%), radial-gradient(circle at 60% 65%, rgba(255,255,255,.50) 0 12%, transparent 13%), radial-gradient(circle, #FFE08A 0 60%, #F4C84E 61% 100%);
		box-shadow: 0 2px 6px rgba(0,0,0,.15);
	}

		.float-icon.coin::after {
			content: "P";
			position: absolute;
			inset: 0;
			display: grid;
			place-items: center;
			font-weight: 900;
			font-size: 13px;
			color: #C98C00;
			text-shadow: 0 1px 0 rgba(255,255,255,.35), 0 -1px 0 rgba(0,0,0,.18);
		}

@keyframes floatUp {
	0% {
		opacity: 0;
		transform: translate(0, 0) scale(0.8);
	}

	30% {
		opacity: 1;
	}

	100% {
		transform: translate(calc(var(--rx, 0.5) * 60px), calc(var(--ry, -1) * 40px)) scale(1.1);
		opacity: 1;
	}
}
