@charset "UTF-8";

.main_container {
	position: relative;
}
.main_container::before {
	display: block;
	position: absolute;
	left: 50%;
	z-index: -1;
	transform: translateX(-50%);
	width: 1000%;
	height: 1000000px;
	background-repeat: repeat;
	background-position: center top;
	content: "";
}

.rates_advise-text {
	display: flex;
	position: relative;
	max-width: 570px;
	width: calc(100% - 60px);
	margin: 0 auto;
	margin-bottom: calc(clamp(1.25rem, -2.118rem + 7.02vw, 2.5rem) + 40px);
	padding: clamp(1.5rem, -3.721rem + 10.88vw, 3.438rem) 10px;
	background-color: #f0f0f0;
	font-size: clamp(0.875rem, -0.136rem + 2.11vw, 1.25rem);
	line-height: clamp(1.313rem, -1.045rem + 4.91vw, 2.188rem);
	text-align: center;
	flex-direction: column;
	align-items: center;
}
.rates_advise-text::after {
	position: absolute;
	top: calc(100% - 1px);
	height: clamp(1.25rem, -2.118rem + 7.02vw, 2.5rem);
	background-color: #f0f0f0;
	content: "";

	clip-path: polygon(0 0, 50% 100%, 100% 0);
	aspect-ratio: 5/2;
}


.rates_container {
	width: 100%;
	padding: 50px 0;
	background-color: rgba(37, 66, 92, 0.1);
}

.campaign_container {
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
	flex-direction: column;
	align-items: center;
}
.campaign_container p {
	font-weight: 500;
	font-size: clamp(0.875rem, -0.136rem + 2.11vw, 1.25rem);
	text-align: center;
}
.campaign_container p span {
	position: relative;
}
.campaign_container p span::after {
	position: absolute;
	bottom: 2px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: clamp(0.188rem, -0.149rem + 0.7vw, 0.313rem);
	background-color: #c1af4a;
	content: "";
}

.campaign_contents {
	display: flex;
	max-width: 655px;
	width: 100%;
	border: 1px solid #707070;
	border-radius: 30px;
	background-color: #ffffff;
	justify-content: center;
	align-items: flex-end;
}
.campaign_contents-text {
	max-width: 222px;
}
.campaign_contents-arrow {
	max-width: 43px;
}
.campaign_contents-free {
	max-width: 178px;
}
@media screen and (min-width: 601px) {
	.campaign_contents-text {
		margin-bottom: 5px;
	}
	.campaign_contents-arrow {
		margin: 0 20px 40px 3px;
	}
}
@media screen and (max-width: 600px) {
	.campaign_contents {
		flex-direction: column;
		align-items: center;

		row-gap: 15px;
	}
	.campaign_contents-arrow {
		transform: rotateZ(90deg);
	}
}

@media screen and (min-width: 768px) {
	.main_container {
		padding-top: calc(80px + 50px);
		padding-bottom: 135px;
	}
	.main_container::before {
		top: 80px;
		background-image: url(../images/access_bg-pc.png);
		background-size: 1920px 1610px;
		opacity: 0.4;
	}
	.common_page-title {
		margin-bottom: 45px;
	}

	.rates_container {
		padding: 65px 0 95px;
	}

	.campaign_contents {
		padding: 27.5px 10px;
	}



	.campaign_container {
		width: 95%;
		margin-bottom: 40px;

		row-gap: 25px;
	}
	.campaign_container p br {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.main_container {
		padding-top: calc(60px + 15px);
		padding-bottom: 110px;
	}
	.main_container::before {
		top: 60px;
		background-image: url(../images/access_bg-mb.png);
		background-size: 375px 1388px;
		opacity: 0.5;
	}
	.common_page-title {
		margin-bottom: 35px;
	}
	.rates_container {
		padding: 25px 0 60px;
	}
	.campaign_container p {
		line-height: 28px;
	}
	.campaign_container {
		width: 100%;
		margin-bottom: 30px;
		padding: 0 20px;

		row-gap: 20px;
	}
	.campaign_contents {
		padding: 23.5px 10px;
	}
}
