@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@700&display=swap");

@media (max-width: 1499px) {
	#about .about_campaign {
		color: #24315C;
		font-size: 20px;
		line-height: 1;
		font-weight: 700;
		padding: 20px 0;
	}

	#about .flex {
		flex-wrap: nowrap;
		justify-content: space-between;
		gap: 35px;
	}

	#about .txt h3 {
		line-height: 1.5;
	}

	#about .txt p {
		line-height: 2;
	}

	#about dl {
		background-color: #fff;
		border-radius: 10px;
		padding: 20px;
		flex: 1;
	}

	#about dl dt {
		font-size: 20px;
		font-weight: 700;
		color: #24315C;
		line-height: 1;
		padding-bottom: 15px;
	}

	#about dl dd {
		border-top: rgba(5, 31, 116, 0.15) solid 1px;
		font-size: 15px;
		font-weight: 500;
		line-height: 1.666;
		color: #24315C;
	}

	#about .about_ul_1 li {
		margin-top: 10px;
		display: flex;
	}

	#about .about_ul_1 li::before {
		content: "・";
		margin: 0 5px;
	}

	#about dl dd p {
		font-weight: 700;
		margin-top: 15px;
		line-height: 1;
	}

	#about .about_ul_2 {
		margin-top: 15px;
	}

	#about .about_ul_2 li {
		margin-bottom: 10px;
		color: #24315C;
		background-color: #F7F7F7;
		border-radius: 4px;
		padding: 5px 10px;
		font-size: 13px;
		line-height: 1.5;
		display: inline-block;
		font-weight: 700;
	}

	#flow .flex {
		flex-wrap: nowrap;
		justify-content: space-between;
		gap: 35px;
		align-items: stretch;
	}

	#flow dl {
		background-color: #F7F7F7;
		border-radius: 10px;
		padding: 20px;
		flex: 1;
	}

	#flow dl dt {
		font-size: 20px;
		font-weight: 700;
		color: #24315C;
		line-height: 1;
		padding-bottom: 10px;
	}

	#flow dl dd {
		font-size: 13px;
		font-weight: 500;
		line-height: 1.5;
		color: #24315C;
	}

	#flow dl .flow_dd_2 {
		border-top: rgba(5, 31, 116, 0.15) solid 1px;
		margin-top: 15px;
	}

	#flow .flow_step {
		margin: 10px 0;
		color: #F7F7F7;
		background-color: #24315C;
		border-radius: 10px;
		padding: 5px 10px;
		font-size: 10px;
		line-height: 1;
		display: inline-block;
		font-weight: 700;
	}

	#flow .flow_item {
		display: flex;
		gap: 20px;
		align-items: center;
	}

	#flow .flow_item img {
		width: 35px;
		height: 35px;
	}

	#flow dl .flow_dd_2 p {
		font-weight: 700;
		margin: 15px 0 5px;
		line-height: 2;
	}

	#flow .flow_dd_2 li {
		margin-top: 10px;
		display: flex;
	}

	#flow .flow_dd_2 li::before {
		content: "・";
		margin: 0 5px;
	}

	.arrow {
		height: 50px;
		margin-left: 6px;
	}

	.arrow_line {
		width: 1.5px;
		height: 46px;
		margin: 0 auto;
		background-color: #24315C;
	}

	.arrow_head {
		width: 5px;
		height: 5px;
		clip-path: polygon(0 0, 100% 0, 50% 100%);
		background-color: #24315C;
	}
}

@media (max-width: 959px) {
	#about .flex {
		flex-direction: column;
		gap: 20px;
	}

	#flow .flex {
		flex-direction: column;
		gap: 20px;
	}
	
	#flow dl {
		width: 100%;
	}
}