@charset "UTF-8";

.page-banner {
	&:after {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		width: 100rem;
		height: 60rem;
		background: url("../../img/page/working_at_maruishi/banner-img.png") no-repeat center left / contain;
		@media screen and (max-width: 767px) {
			width: 35.7rem;
			height: 21.4rem;
			top: unset;
			transform: unset;
			bottom: 0;
		}
	}
}

#work {
	padding-top: 19.2rem;
	padding-bottom: 20rem;
	@media screen and (max-width: 767px) {
		padding-top: 6rem;
		padding-bottom: 6rem;
	}
	.block1 {
		background: url("../../common/img/general/red-bg.jpg") no-repeat center center / 100% 100%;
		margin-bottom: 9.1rem;
		padding-top: 19.2rem;
		padding-bottom: 11.2rem;
		@media screen and (max-width: 767px) {
			margin-bottom: 6rem;
			padding-top: 6rem;
			padding-bottom: 6rem;
			background: radial-gradient(128.55% 331.8% at 0% -115.3%, rgba(255, 177, 183, 0.8) 0%, rgba(230, 0, 18, 0.8) 100%);
		}
		.white-card {
			background-color: #fff;
			border-radius: 2rem;
			padding: 6.4rem;
			box-sizing: border-box;
			@media screen and (max-width: 767px) {
				padding: 3.2rem 2rem;
			}
			.title {
				font-family: var(--zen);
				font-style: normal;
				font-weight: 700;
				font-size: 3rem;
				line-height: 150%;
				letter-spacing: 0.15em;
				color: #e60012;
				margin-bottom: 2.4rem;
				@media screen and (max-width: 767px) {
					font-size: 1.8rem;
					margin-bottom: 1rem;
				}
			}
			& p {
				font-family: var(--zen);
				font-style: normal;
				font-weight: 500;
				font-size: 2rem;
				line-height: 180%;
				letter-spacing: 0.07em;
				color: #000000;
				@media screen and (max-width: 767px) {
					font-size: 1.4rem;
					line-height: 160%;
				}
			}
		}
	}
	.block2 {
		margin-bottom: 15.2rem;
		@media screen and (max-width: 767px) {
			margin-bottom: 6rem;
		}
		.steps {
			display: flex;
			flex-direction: column;
			gap: 4rem;
			@media screen and (max-width: 767px) {
				gap: 2rem;
			}
			& li {
				.title-flex {
					display: flex;
					align-items: baseline;
					margin-bottom: 0.8rem;
					gap: 0.8rem;
					.num {
						font-family: var(--overpass);
						font-style: normal;
						font-weight: 900;
						font-size: 3rem;
						line-height: 150%;
						color: #e60012;
						white-space: nowrap;
						@media screen and (max-width: 767px) {
							font-size: 2rem;
						}
					}
					.title {
						font-family: var(--zen);
						font-style: normal;
						font-weight: 500;
						font-size: 2.6rem;
						line-height: 150%;
						letter-spacing: 0.08em;
						color: #000000;
						@media screen and (max-width: 767px) {
							font-size: 1.8rem;
						}
					}
				}
				& p {
					font-family: var(--zen);
					font-style: normal;
					font-weight: 400;
					font-size: 1.8rem;
					line-height: 180%;
					letter-spacing: 0.1em;
					color: #000000;
					@media screen and (max-width: 767px) {
						font-size: 1.4rem;
						line-height: 160%;
					}
				}
			}
		}
	}
}

.gray-container {
	background-color: #f3f5f6;
	width: 100%;
	padding: 16rem;
	box-sizing: border-box;
	border-radius: 5rem;
	@media screen and (max-width: 767px) {
		padding: 4rem 2rem;
		border-radius: 2rem;
	}
	.monthly {
		.container {
			padding-top: 4.8rem;
			padding-bottom: 4.8rem;
			border-top: #b9c3d2 1px solid;
			@media screen and (max-width: 767px) {
				padding-top: 2rem;
				padding-bottom: 2rem;
				border: none;
			}
			.month {
				margin-bottom: 3.2rem;
				font-family: var(--zen);
				font-style: normal;
				font-weight: 700;
				font-size: 2.6rem;
				line-height: 150%;
				letter-spacing: 0.08em;
				color: #000000;
				@media screen and (max-width: 767px) {
					margin-bottom: 2rem;
					font-size: 1.8rem;
				}
			}
			.title {
				margin-bottom: 2.4rem;
				font-family: var(--zen);
				font-style: normal;
				font-weight: 700;
				font-size: 3.2rem;
				line-height: 150%;
				letter-spacing: 0.08em;
				color: #e60012;
				@media screen and (max-width: 767px) {
					font-size: 1.8rem;
					margin-bottom: 1rem;
				}
			}
			& p {
				font-family: var(--zen);
				font-style: normal;
				font-weight: 400;
				font-size: 1.8rem;
				line-height: 180%;
				letter-spacing: 0.1em;
				color: #000000;
				margin-bottom: 3.2rem;
				@media screen and (max-width: 767px) {
					font-size: 1.4rem;
					line-height: 160%;
					margin-bottom: 3rem;
				}
			}
			.flex {
				width: 100%;
				display: flex;
				justify-content: space-between;
				gap: 11.2rem;
				@media screen and (max-width: 767px) {
					flex-direction: column;
					gap: 2rem;
				}
				.text-cont {
					width: 65.8rem;
					@media screen and (max-width: 767px) {
						width: 100%;
					}
				}
				.img-cont {
					width: 60rem;
					flex: 1;
					@media screen and (max-width: 767px) {
						width: 100%;
					}
				}
			}
			.flex.adjust {
				@media screen and (max-width:767px){
					margin-bottom: 2rem;
				}
			}
		}
		.container:last-child {
			border-bottom: #b9c3d2 1px solid;
			@media screen and (max-width:767px){
				border: none;
			}
		}
	}
}
