.pride {
	margin-top: 2.5em;
	display: flex;
	flex-wrap: wrap;
	gap: 2.5em 0;
	& div {
		background: var(--color-purple-light2);
	}
	& dt {
		padding: 5px 10px;
		font-size: 18px;
		text-align: center;
		color: #fff;
		background: var(--color-purple);
	}
	& img {
		width: 100%;
		aspect-ratio: 16/9;
		margin: 0 auto;
		object-fit: cover;
		display: block;
	}
	.list {
		margin: 0;
		padding: 15px 20px 20px;
		font-size: 14px;
		& li::before {
			top: 11px;
		}
	}
	@media (width>=700px) {
		gap: 2.5em 1.5em;
		& div {
			width: calc(50% - .75em);
			
		}
	}
	@media (width>=1080px) {
		gap: 2.5em 0;
		justify-content: space-between;
		& div {
			width: 23.5%;
		}
		.list {
			font-size: 15px;
			& li::before {
				top: 12px;
			}
		}
	}
}


table {
	white-space: nowrap;
	& tr:nth-of-type(2) th {
		width: 120px;
		padding-inline: .5em;
	}
}


.registration {
	margin-top: 2.5em;
	& div {
		padding: 10px 20px;
		margin-top: 4px;
		display: flex;
		align-items: center;
		box-sizing: border-box;
		background: var(--color-purple-light2);
	}
	& dt {
		width: 6.5em;
		color: var(--color-purple);
		font-weight: var(--weight-bold);
	}
	.btn {
		width: calc(100% - 6.5em);
		margin: 0;
	}
	.btn-white {
		min-width: 0;
		width: min(100%, 200px);
		margin: 0;
		display: flex;
		gap: 0 10px;
	}
	@media (width>=768px) {
		max-width: 900px;
		margin-inline: auto;
		display: flex;
		justify-content: space-between;
		& div {
			width: calc(50% - 10px);
			padding-block: 15px 25px;
			display: block;
			text-align: center;
		}
		& dt, .btn {
			width: auto;
		}
		.btn-white {
			height: 50px;
			margin: 10px auto 0;
		}
	}
}


.companiesList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 30px 0;
	text-align: center;
	& li {
		width: 100%;
		line-height: 1.6;
	}
	& a {
		padding: 10px;
		box-sizing: border-box;
		display: block;
		border: 1px solid #ccc;
	}
	& img {
		width: min(100%, 320px);
		margin: 0 auto;
		display: block;
	}
	& figcaption {
		margin-top: .6em;
	}
	@media (width>=768px) {
		gap: 40px 0;
		& li {
			width: 48%;
		}
	}
	@media (width>=1080px) {
		&::after {
			content: "";
			display: block;
			width: 31%;
		}
		& li {
			width: 31%;
		}
		& a {
			margin-inline: 0;
		}
	}
}


.service {
	margin-top: 2.5em;
	display: flex;
	flex-wrap: wrap;
	gap: 2.5em 0;	
	& div {
		display: flex;
		flex-wrap: wrap;
		align-items: start;
		flex-direction: column;
	}
	& dt {
		margin-top: 1em;
		font-size: 20px;
		font-weight: var(--weight-bold);
		color: var(--color-purple);
	}
	& .img {
		order: -1;
		width: 100%;
		margin: 0;
		& img {
			max-width: none;
			width: 100%;
		}
	}
	@media (width>=768px) {
		justify-content: center;
		gap: 2.5em 40px;
		& div {
			width: min(calc(50% - 20px), 470px);
		}
		& dt {
			font-size: 22px;
		}
	}
	@media (width>=1180px) {
		gap: 3em 60px;
	}
}
.btn a.big {
	width: min(100%, 500px);
	padding-inline: 1em;
}


@media (1100px <= width <= 1700px )  {
	#memberregistration + .title-1 {
		margin-top: 140px;
	}
}
