:root {
	--fs-16-18: clamp(1.6rem, 1.107rem + 0.481vw, 1.8rem);
	--fs-18-21: clamp(1.8rem, 1.061rem + 0.719vw, 2.1rem);
	--fs-21-24: clamp(2.1rem, 1.362rem + 0.719vw, 2.4rem);
	--fs-25-30: clamp(2.5rem, 1.269rem + 1.20vw, 3rem);
	--fs-27-32: clamp(2.7rem, 1.469rem + 1.20vw, 3.2rem);
}
@media screen and (max-width: 640px) {
	:root {
		--fs-16-18: 1.4rem;
		--fs-18-21: 1.6rem;
		--fs-21-24: 1.8rem;
		--fs-25-30: 2.0rem;
		--fs-27-32: 2.2rem;
	}
}

#work {
	font-size: var(--fs-18-21);
	text-align: left;
	line-height: 1.8;
}
section {
	margin-bottom: 120px;
	position: relative;
}
.flex {
	display: flex;
}
.mcobi {
	background: var(--mcbg);
	padding: 30px;
}
h2 {
	font-size: var(--fs-27-32);
	color: var(--main-color);
	font-weight: 600;
	text-align: center;
	margin-bottom: 60px;
	line-height: 1.2;
}
h2.uline {
	font-size: var(--fs-25-30);
	color: var(--font-blk);
	border-bottom: 10px solid var(--main-color);
	display: inline-block;
	padding: 0 40px 12px 10px;
	text-align: left;
}
h2 br {
	display: none;
}
img.smp {
	display: none;
}
.mcbtn {
	font-size: var(--fs-16-18);
	font-weight: 600;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: var(--main-color);
	text-align: left;
	border-radius: 20px;
	padding: 10px 20px;
	margin-top: 40px;
	-webkit-transition: 0.5s all;
	transition: 0.5s all;
	border: none;
	cursor: pointer;
	color: var(--font-blk);
}
.mcbtn:hover {
	background-color: #fdaf55;
}
.mcbtn span.icon {
	font-size: 60px;
	color: #fff;
	margin-right: -20px;
	margin-left: 0;
}
@media screen and (max-width: 640px) {
	section {
		margin-bottom: 80px;
	}
	.mcobi {
		padding: 18px;
	}
	h2 {
		margin-bottom: 30px;
	}
	h2.uline {
		padding: 0 5% 12px 1%;
	}
	img.dsk {
		display: none;
	}
	img.smp {
		display: block;
	}
	.mcbtn span.icon {
		font-size: 40px;
	}
}
@media screen and (max-width: 480px) {
	h2 br {
		display: block;
	}
}

#detail .flex {
	max-width: 86%;
}
#detail .flex {
	gap: 30px;
	align-items: center;
}
#detail .flex img,
#detail .flex p {
	width: 50%;
}
@media screen and (max-width: 900px) {
	#detail .flex {
		flex-direction: column;
		max-width: 100%;
	}
	#detail .flex img {
		width: 80%;
	}
	#detail .flex p {
		width: 100%;
	}
}

#workflow h3 {
	background: var(--mcblue);
	color: #fff;
	text-align: center;
	font-size: var(--fs-21-24);
	font-weight: 500;
	width: 100%;
	max-width: 250px;
	display: block;
	margin: 0 auto 90px;
	border-radius: 50px;
	padding: 5px 0;
}
#workflow .flex > div {
	flex: 1;
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: calc((100% - 160px) / 3);
}
#workflow .boxarea {
	max-width: 340px;
	padding: 16px;
	background: var(--mcbg);
	border-radius: 10px;
	font-size: var(--fs-16-18);
	flex: 1;
	text-align: justify;
}
#workflow .boxarea img {
	width: 70%;
	max-width: 210px;
	margin-bottom: 16px;
	margin-top: -25%;
}
#workflow .flex > span {
	color: #AEB4BF;
	vertical-align: middle;
	font-size: 80px;
	display: flex;
	align-items: center;
	width: 80px;
}
#workflow .flex > span.smp {
	display: none;
}
@media screen and (max-width: 900px) {
	#workflow .flex > div {
		max-width: calc((100% - 100px) / 3);
	}
	#workflow .flex > span {
		font-size: 50px;
		width: 50px;
	}
}
@media screen and (max-width: 640px) {
	#workflow .flex {
	flex-direction: column;
	}
	#workflow .flex > div {
		max-width: 100%;
	}
	#workflow .boxarea {
		max-width: 100%;
	}
	#workflow .boxarea img {
		width: 160px;
		margin-top: -90px;
		margin-bottom: 14px;
	}
	#workflow .flex > span.dsk {
		display: none;
	}
	#workflow .flex > span.smp {
		display: flex;
		font-size: 80px;
		height: 60px;
		width: 80px;
	}
}


#schedule h2 {
	color: var(--mcblue);
}
#schedule img {
	width: 100%;
}


#rewarding .mcobi .flex {
	align-items: flex-end;
}
#rewarding .mcobi img {
	width: 35%;
	margin: 0 40px 0 50px;
}
#rewarding .mcobi ul {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
#rewarding .mcobi li {
	background: #fff;
	padding: 20px;
	font-size: var(--fs-16-18);
}
#rewarding .mcobi li span {
	font-size: var(--fs-18-21);
	color: var(--mcblue);
	display: block;
	margin-bottom: 6px;
}
@media screen and (max-width: 800px) {
	#rewarding .mcobi .flex {
		flex-direction: column-reverse;
	}
	#rewarding .mcobi img {
		width: 35%;
		margin: 20px 40px 0 50px;
	}
}
@media screen and (max-width: 640px) {
	#rewarding .mcobi ul {
		gap: 20px;
	}
	#rewarding .mcobi li {
		padding: 12px;
	}
}


#career .text {
	margin-bottom: 60px;
}
#career .text p span {
	display: block;
	font-size: var(--fs-21-24);
	font-weight: 600;
	margin-bottom: 16px;
	color: var(--mcblue);
}
#career h3 {
	font-size: var(--fs-27-32);
	color: var(--mcblue);
	font-weight: 600;
	text-align: center;
	margin-bottom: 60px;
}
#career img {
	width: 100%;
}
#career .mcbtn {
	padding: 5px 20px;
	margin-top: 20px;
}
@media screen and (max-width: 640px) {
	#career .text {
		margin-bottom: 30px;
	}
	#career h3 {
		margin-bottom: 30px;
	}
}
