#feature {
	width: 100%;
	padding-block: 62px 80px;

	@media (max-width: 768px) {
		padding: 49px 16px 56px;
	}

	.card-container {
		display: grid;
		grid-template-rows: auto;
		justify-content: center;

		&.three {
			grid-template-columns: repeat(3, 1fr);
			gap: 24px;

			@media (max-width: 768px) {
				grid-template-columns: auto;
				grid-template-rows: repeat(3, auto);
			}
		}

		&.two {
			width: 74.6%;
			margin-inline: auto;
			grid-template-columns: 1fr 1.046fr;
			gap: 40px;

			@media (max-width: 768px) {
				width: 100%;
				grid-template-columns: auto;
				grid-template-rows: repeat(2, auto);
			}
		}

		.card {
			position: relative;
			background-color: #fff;
			border: 3px solid #3f3e52;
			padding: 54px 24px 44px;
			display: flex;
			flex-direction: column;
			gap: 16px;

			@media (max-width: 768px) {
				/* padding: 6.4vw; */
				padding: 24px;
				/* gap: 6.4vw; */
			}

			.number {
				position: absolute;
				top: -3px;
				left: -3px;
				font-size: 2.2rem;
				font-weight: bold;
				/* font-family: din-2014; */
				line-height: 1;
				color: #ffffff;
				width: 44px;
				height: 44px;
				display: flex;
				justify-content: center;
				align-items: center;
				background-color: #3f3e52;

				@media (max-width: 768px) {
					font-size: 3.6rem;
					width: 60px;
					height: 60px;
				}
			}

			.heading {
				font-size: 2.2rem;
				font-weight: bold;
				line-height: 1.6em;
				letter-spacing: 0;
				color: #1a1a1a;
				text-align: center;

				@media (max-width: 768px) {
					padding-left: 48px;
					text-align: left;
				}

				.pc_only {
					@media (max-width: 768px) {
						display: none;
					}
				}
			}

			.image {
				max-width: 194px;
				margin-inline: auto;
			}

			.text {
				font-size: 1.6rem;
				line-height: 1.6em;
				letter-spacing: 0;
				color: #1a1a1a;
				text-align: left;

				@media (max-width: 768px) {
					/* font-size: 4.26666667vw; */
					text-align: center;
				}
			}

			.note {
				font-size: 1.2rem;
				line-height: 1.5em;
				letter-spacing: 0;
				color: #949494;
				text-align: center;

				/* @media (max-width: 768px) {
					font-size: 3.2vw;
				} */

				& > a {
					text-decoration: underline;
				}
			}
		}
	}
}