@charset "UTF-8";
/* アンカーリンク
------------------------------------------------------------------------- */
.wrap_anchor_link {
	margin-top: 12.8vw;
}

.btn_anchor {
	margin-bottom: 2.1333333333vw;
}
.btn_anchor:last-child {
	margin-bottom: 0;
}
.btn_anchor a {
	position: relative;
	z-index: 1;
}
.btn_anchor a::after {
	content: "";
	display: block;
	width: 2.6666666667vw;
	height: 1.6vw;
	background: url(../images/guide/icon_anchor.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 6.4vw;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 1;
}
.btn_anchor a span::before, .btn_anchor a span::after {
	content: none;
}

/* ご利用の流れ
------------------------------------------------------------------------- */
.wrap_step_contents {
	width: 91.7333333333vw;
	margin: 14.9333333333vw auto 0;
}
.wrap_step_contents .btn,
.wrap_step_contents .btn02 {
	width: 100%;
	line-height: 1.25;
}
.wrap_step_contents .btn a,
.wrap_step_contents .btn02 a {
	text-align: center;
}

.step_contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
	margin-bottom: 4.2666666667vw;
}
.step_contents:last-child {
	margin-bottom: 0;
}

.step {
	width: 17.0666666667vw;
	text-align: center;
}
.step span {
	display: block;
	font-weight: 900;
	font-size: 3.7333333333vw;
	color: #1489E5;
	margin-bottom: 2.1333333333vw;
}

.wrap_step_text {
	width: 72.5333333333vw;
	padding: 4.2666666667vw;
	background: #F8F8F8;
	border-radius: 4.2666666667vw;
}
.wrap_step_text .ttl_heading02 {
	margin-bottom: 2.1333333333vw;
}
.wrap_step_text .ttl_heading02::before {
	min-width: 1.0666666667vw;
	max-width: 1.0666666667vw;
	height: 6.6666666667vw;
	-webkit-transform: translateY(0.8vw);
	transform: translateY(0.8vw);
}

.step_lead_text {
	margin-bottom: 4.2666666667vw;
}

.step_text_contents {
	margin-bottom: 6.4vw;
}
.step_text_contents:last-child {
	margin-bottom: 0;
}

.ttl_step {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1333333333vw;
	font-weight: bold;
	font-size: 4.8vw;
	letter-spacing: 0.1em;
	margin-bottom: 4.2666666667vw;
	line-height: 1.3333333333;
}
.ttl_step::before {
	content: "";
	display: block;
	min-width: 2.1333333333vw;
	max-width: 2.1333333333vw;
	height: 2.1333333333vw;
	border-radius: 50%;
	background: -webkit-gradient(linear, left top, left bottom, from(#1489E5), to(#0244C8));
	background: linear-gradient(to bottom, #1489E5 0%, #0244C8 100%);
	-webkit-transform: translateY(2.6666666667vw);
	transform: translateY(2.6666666667vw);
}

.step_tel {
	font-size: 6.4vw;
	line-height: 1;
}

/* ========== 申請書類の準備 ========== */
.wrap_btn02 {
	margin-bottom: 6.4vw;
}

/* 提出書類 */
.documents_contents {
	padding-bottom: 6.4vw;
	margin-bottom: 6.4vw;
	border-bottom: 1px solid #BEBEBE;
}
.documents_contents:last-child {
	margin-bottom: 0;
}

.submitted_day {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 42.6666666667vw;
	height: 8.5333333333vw;
	border: 1px solid #0244C8;
	border-radius: 4.2666666667vw;
	color: #0244C8;
	font-weight: bold;
	font-size: 4.8vw;
	letter-spacing: 0.1em;
	margin-bottom: 2.1333333333vw;
}

/* 必須・任意マーク */
.file_mark {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 21.8666666667vw;
	height: 6.9333333333vw;
	border-radius: 1.0666666667vw;
	color: #fff;
	font-weight: bold;
	font-size: 3.7333333333vw;
	margin-bottom: 2.1333333333vw;
}
.file_mark.required {
	background: #FF776B;
}
.file_mark.any {
	background: #6C7179;
}

.file_ttl {
	font-weight: bold;
	font-size: 4.8vw;
	line-height: 1.3333333333;
	margin-bottom: 2.1333333333vw;
}

.ul_file li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1.0666666667vw;
	margin-bottom: 2.1333333333vw;
}
.ul_file li:last-child {
	margin-bottom: 0;
}
.ul_file li::before {
	content: "";
	display: block;
	min-width: 4.2666666667vw;
	max-width: 4.2666666667vw;
	height: 4.2666666667vw;
	background-repeat: no-repeat;
	background-size: contain;
	-webkit-transform: translateY(1.6vw);
	transform: translateY(1.6vw);
}
.ul_file li.pdf::before {
	background-image: url(../images/guide/icon_pdf.svg);
}
.ul_file li.excel::before {
	background-image: url(../images/guide/icon_excel.svg);
}
.ul_file li.word::before {
	background-image: url(../images/guide/icon_word.svg);
}
.ul_file li a {
	color: #0244C8;
	text-decoration: underline;
	font-size: 4.8vw;
}

.file_contents,
.file_items {
	margin-bottom: 4.2666666667vw;
}
.file_contents:last-child,
.file_items:last-child {
	margin-bottom: 0;
}

/* Web掲載希望時の提出書類 */
.ttl_step02 {
	letter-spacing: 0.03em;
}

.step_lead_text a {
	color: #0244C8;
	text-decoration: underline;
}

/* イベント実施 */
.step_contents:not(:last-child) .step {
	position: relative;
	z-index: 1;
}
.step_contents:not(:last-child) .step::before {
	content: "";
	display: block;
	width: 1.0666666667vw;
	height: calc(100% - 24.5333333333vw);
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: -1;
}
.step_contents:first-child .step::before {
	background: #1489E5;
}
.step_contents:nth-child(2) .step::before {
	background: #0244C8;
}
.step_contents:last-child .step_lead_text {
	margin-bottom: 0;
}

/* よくある質問
------------------------------------------------------------------------- */
.dl_faq dt, .dl_faq dd {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 6.4vw;
}
.dl_faq dt::before, .dl_faq dd::before {
	content: "";
	display: block;
	min-width: 17.0666666667vw;
	max-width: 17.0666666667vw;
	height: 17.0666666667vw;
	background-repeat: no-repeat;
	background-size: contain;
}
.dl_faq dt {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-weight: bold;
	font-size: 4.8vw;
	color: #0244C8;
	margin-bottom: 4.2666666667vw;
}
.dl_faq dt::before {
	background-image: url(../images/guide/icon_question.svg);
}
.dl_faq dd {
	margin-bottom: 8.5333333333vw;
}
.dl_faq dd:last-of-type {
	margin-bottom: 0;
}
.dl_faq dd::before {
	background-image: url(../images/guide/icon_answer.svg);
}
.dl_faq dd a {
	color: #0244C8;
	text-decoration: underline;
}

/* お申込み時の注意点
------------------------------------------------------------------------- */
.wrap_point_contents {
	width: 95.7333333333vw;
	margin: 0 auto 6.4vw;
}

.point_contents {
	padding: 6.4vw 4.2666666667vw 6.4vw 4vw;
	background: #F8F8F8;
	border-radius: 4.2666666667vw;
	margin-bottom: 4.2666666667vw;
}
.point_contents:last-child {
	margin-bottom: 0;
}

.ol_point li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.6666666667vw;
	margin-bottom: 2.1333333333vw;
	line-height: 2;
}
.ol_point li:last-child {
	margin-bottom: 0;
}

/* 表 */
.wrap_cancel_table {
	margin-top: 4.2666666667vw;
}
.wrap_cancel_table table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #fff;
	table-layout: fixed;
}
.wrap_cancel_table table th {
	width: 46.9333333333vw;
	background: #EBF6FF;
	color: #0244C8;
	border: 1px solid #fff;
	padding: 3.2vw 1.8666666667vw;
	text-align: left;
}
.wrap_cancel_table table td {
	padding: 3.2vw 2.1333333333vw;
	font-weight: bold;
	text-align: right;
	background: #fff;
	border: 1px solid #F8F8F8;
}

.btn_point_text {
	width: 87.4666666667vw;
	margin: 0 auto 4.2666666667vw;
}

@media (min-width: 769px) {
	/* アンカーリンク
	------------------------------------------------------------------------- */
	.wrap_anchor_link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		gap: min(2.3529411765vw, 32px);
		margin-top: 0;
		padding: min(3.5294117647vw, 48px);
	}
	.btn_anchor {
		margin: 0;
	}
	.btn_anchor a::after {
		width: min(0.7352941176vw, 10px);
		height: min(0.5882352941vw, 8px);
		right: min(1.7647058824vw, 24px);
	}
	/* ご利用の流れ
	------------------------------------------------------------------------- */
	.flow .lead_text {
		text-align: left;
		width: min(68.2352941176vw, 928px);
		margin: 0 auto;
	}
	.wrap_step_contents {
		width: min(82.3529411765vw, 1120px);
		margin-top: min(2.3529411765vw, 32px);
	}
	.wrap_step_contents .btn02 {
		width: min(28.2352941176vw, 384px);
	}
	.wrap_step_contents .btn {
		width: min(31.7647058824vw, 432px);
		margin: 0;
	}
	.step_contents {
		gap: min(4.7058823529vw, 64px);
		margin-bottom: min(1.1764705882vw, 16px);
	}
	.step {
		width: min(7.0588235294vw, 96px);
	}
	.step span {
		font-size: min(1.7647058824vw, 24px);
		margin-bottom: 0;
	}
	.wrap_step_text {
		width: min(70.5882352941vw, 960px);
		padding: min(2.3529411765vw, 32px);
		border-radius: min(1.1764705882vw, 16px);
	}
	.wrap_step_text .ttl_heading02 {
		margin-bottom: min(1.1764705882vw, 16px);
	}
	.wrap_step_text .ttl_heading02::before {
		min-width: min(0.2941176471vw, 4px);
		max-width: min(0.2941176471vw, 4px);
		height: min(1.8382352941vw, 25px);
		-webkit-transform: translateY(min(0.4411764706vw, 6px));
		transform: translateY(min(0.4411764706vw, 6px));
	}
	.step_lead_text {
		margin-bottom: min(1.1764705882vw, 16px);
	}
	.step_text_contents {
		margin-bottom: min(1.7647058824vw, 24px);
	}
	.step_text_contents:last-child {
		margin-bottom: 0;
	}
	.ttl_step {
		gap: min(0.5882352941vw, 8px);
		font-size: min(1.3235294118vw, 18px);
		margin-bottom: min(1.7647058824vw, 24px);
	}
	.ttl_step::before {
		min-width: min(0.5882352941vw, 8px);
		max-width: min(0.5882352941vw, 8px);
		height: min(0.5882352941vw, 8px);
		-webkit-transform: translateY(min(0.5882352941vw, 8px));
		transform: translateY(min(0.5882352941vw, 8px));
	}
	.step_tel {
		font-size: min(1.7647058824vw, 24px);
	}
	/* ========== 申請書類の準備 ========== */
	.wrap_btn02 {
		margin-bottom: min(1.7647058824vw, 24px);
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
	/* 提出書類 */
	.documents_contents {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: min(2.3529411765vw, 32px);
		padding-bottom: min(1.7647058824vw, 24px);
		margin-bottom: min(1.7647058824vw, 24px);
	}
	.wrap_file_contents {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: min(1.7647058824vw, 24px) min(0.8823529412vw, 12px);
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-flex: 1;
		-ms-flex: 1;
		flex: 1;
	}
	.submitted_day {
		width: min(11.7647058824vw, 160px);
		height: min(2.3529411765vw, 32px);
		border-radius: min(1.1764705882vw, 16px);
		font-size: min(1.3235294118vw, 18px);
		margin-bottom: 0;
	}
	/* 必須・任意マーク */
	.file_mark {
		width: min(6.0294117647vw, 82px);
		height: min(1.9117647059vw, 26px);
		border-radius: min(0.2941176471vw, 4px);
		font-size: min(1.0294117647vw, 14px);
		margin-bottom: 0;
	}
	.file_ttl {
		font-size: min(1.3235294118vw, 18px);
		margin-bottom: min(0.2941176471vw, 4px);
	}
	.ul_file {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: min(1.1764705882vw, 16px);
	}
	.ul_file li {
		gap: min(0.2941176471vw, 4px);
		margin-bottom: 0;
	}
	.ul_file li::before {
		min-width: min(1.1764705882vw, 16px);
		max-width: min(1.1764705882vw, 16px);
		height: min(1.1764705882vw, 16px);
		-webkit-transform: translateY(min(0.4411764706vw, 6px));
		transform: translateY(min(0.4411764706vw, 6px));
	}
	.ul_file li a {
		font-size: min(1.3235294118vw, 18px);
		transition: 0.2s;
	}
	.ul_file li a:hover {
		color: #FF776B;
	}
	.file_items {
		margin-bottom: min(1.1764705882vw, 16px);
	}
	.file_contents {
		width: calc(100% - min(6.9117647059vw, 94px));
		margin-bottom: 0;
	}
	/* Web掲載希望時の提出書類 */
	.ttl_step02 {
		letter-spacing: 0.1em;
	}
	.steptext_contents_web .file_ttl .pc {
		display: inline;
	}
	/* イベント実施 */
	.step_contents:not(:last-child) .step::before {
		width: min(0.2941176471vw, 4px);
		height: calc(100% - min(6.7647058824vw, 92px));
	}
	/* よくある質問
	------------------------------------------------------------------------- */
	.dl_faq dt, .dl_faq dd {
		gap: min(2.3529411765vw, 32px);
	}
	.dl_faq dt::before, .dl_faq dd::before {
		min-width: min(4.7058823529vw, 64px);
		max-width: min(4.7058823529vw, 64px);
		height: min(4.7058823529vw, 64px);
	}
	.dl_faq dt {
		font-size: min(1.3235294118vw, 18px);
		margin-bottom: min(1.7647058824vw, 24px);
	}
	.dl_faq dd {
		margin-bottom: min(2.3529411765vw, 32px);
	}
	/* お申込み時の注意点
	------------------------------------------------------------------------- */
	.wrap_point_contents {
		width: min(82.3529411765vw, 1120px);
		margin: 0 auto min(3.5294117647vw, 48px);
	}
	.point_contents {
		padding: min(2.3529411765vw, 32px) min(7.0588235294vw, 96px);
		border-radius: min(1.1764705882vw, 16px);
		margin-bottom: min(1.1764705882vw, 16px);
	}
	.ol_point li {
		gap: min(0.5882352941vw, 8px);
		margin-bottom: min(0.5882352941vw, 8px);
	}
	/* 表 */
	.wrap_cancel_table {
		margin-top: min(0.5882352941vw, 8px);
	}
	.wrap_cancel_table table th, .wrap_cancel_table table td {
		width: 50%;
		padding: min(0.8823529412vw, 12px) min(2.3529411765vw, 32px);
	}
	.wrap_cancel_table p {
		text-align: right;
	}
	.btn_point_text {
		width: 100%;
		margin: 0 auto min(1.1764705882vw, 16px);
		text-align: center;
	}
}