@charset "UTF-8";

/* override */
.container .cntBlock {
	padding-bottom: 8vw;

	&:first-of-type {
		padding-top: 5.33vw;
	}

	&:last-child {
		padding-bottom: 21.33vw;
	}
}

@media screen and (min-width: 890px) {
	.container .cntBlock {
		padding-bottom: 60px;

		&:first-of-type {
			padding-top: 60px;
		}

		&:last-child {
			padding-bottom: 165px;
		}
	}
}

.cntHeading_type1.border {
	padding: 1.87vw 2.93vw 2.93vw;
	background-color: #f08e4a;
	border-bottom: 1px solid #DADADA;
	color: #fff;
	font-size: 4.27vw;
}

@media screen and (min-width: 890px) {
	.cntHeading_type1.border {
		padding: 8px 20px 10px;
		font-size: 1.625rem;
	}
}

/* anchor */
.anchor {
	margin-bottom: 9.33vw;

	.anchor_item {
		+ .anchor_item {
		margin-top: 1.6vw;
		}
	}

	.anchor_link {
		position: relative;
		display: flex;
		align-items: center;
		padding: 5.33vw 10.67vw 5.33vw 2.93vw;
		background-color: #f08e4a;
		text-decoration: none;
	}

	.anchor_link::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 4vw;
		width: 1.2vw;
		aspect-ratio: 1;
		border: solid #fff;
		border-width: 0 0 2px 2px;
		transform: rotate(315deg);
	}

	.anchor_text {
		color: #fff;
		font-size: 4.27vw;
		line-height: 1.57;
	}
}

@media screen and (min-width: 890px) {
	.anchor {
		display: flex;
		gap: 0 30px;
		margin-bottom: 70px;

		.anchor_item {
			flex: 0 0 calc((100% / 3) - 15px);

			+ .anchor_item {
			margin-top: 0;
			}
		}

		.anchor_link {
			height: 100%;
			justify-content: center;
			padding: 15px 20px 40px 20px;
		}

		.anchor_link::after {
			top: auto;
			right: auto;
			bottom: 10px;
			left: 50%;
			translate: 0 -50%;
			width: 12px;
			border-width: 0 0 3px 3px;
			aspect-ratio: 1;
		}

		.anchor_text {
			font-size: 1.625rem;
			text-align: center;
			line-height: 1.62;
		}
	}
}

/* lgCard */
.lgCard {
	+ .lgCard_blkttl {
		margin-top: 8vw;
	}

	.lgCard_item {
		+ .lgCard_item {
		margin-top: 8vw;
		}
	}

	.lgCard_title {
		margin-bottom: 5.33vw;
		font-size: 3.73vw;
		font-weight: 900;
		text-align: center;
	}

	.lgCard_text {
		margin-bottom: 5.33vw;
		font-size: 3.2vw;
		line-height: 1.83;
	}

	.lgCard_img {
		text-align: center;
	}

	.lgCard_btn > a {
		display: block;
		position: relative;
		box-sizing: border-box;
		width: 100%;
		padding: 4.8vw;
		margin-top: 5.33vw;
		background-color: #fff;
		border: solid 1px #f0560b;
		text-align: center;
		text-decoration: none;
		color: #f0560b;
		font-size: 2.66vw;

		&::after {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		right: 4vw;
		rotate: 225deg;
		translate: 0 -50%;
		width: 1.2vw;
		height: 1.2vw;
		border: solid #f0560b;
		border-width: 0 0 2px 2px;
		}
	}

	.lgCard_link {
		margin-top: 5.33vw;
		text-align: center;
		> a {
			color: #0099FF;
			font-size: 3.2vw;
			text-decoration: underline;
			letter-spacing: 0.022em;
		}
	}
}

@media screen and (min-width: 890px) {
	.lgCard {
		display: grid;
		grid-template-columns: repeat(3, 345px);
		gap: 60px;

		+ .lgCard_blkttl {
			margin-top: 60px;
		}

		.lgCard_item {
			display: grid;
			grid-template-rows: subgrid;
			grid-row: span 5;
			gap: 0;

			+ .lgCard_item {
			margin-top: 0;
			}
		}

		&.setTitle {
			.lgCard_item {
				grid-row: span 6;
			}
		}

		.lgCard_blkttl {
			display: flex;
			align-items: center;
		}

		.lgCard_title {
			margin-bottom: 20px;
			font-size: 1.375rem;
			font-weight: 900;
		}

		.lgCard_text {
			margin-bottom: 20px;
			font-size: 1rem;
		}

		.lgCard_img {
			width: 345px;
		}

		.lgCard_btn > a {
			padding: 18px 50px 18px 20px;
			margin-top: 20px;
			font-size: 0.93rem;
			transition: background-color .2s, color .2s;

			&::after {
				top: 50%;
				right: 33px;
				rotate: 225deg;
				translate: 0 -50%;
				width: 5px;
				height: 5px;
				transition: border-color .2s;
			}

			&:hover {
				background-color: #f0560b;
				color: #fff;

				&::after {
					border-color: #fff;
				}
			}
		}

		.lgCard_link {
			margin-top: 20px;
			text-align: center;
			> a {
				color: #0099FF;
				font-size: 1rem;
				letter-spacing: 0;
			}
		}
	}
}