section.top {
	margin-top: 30px;
	padding: 0px 5% 0px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> picture {
			> img {
				max-width: 100%;
			}
		}
	}
}
section.toptext01 {
	background-color: #d3edfb;
	padding: 20px 5% 20px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> picture {
			> img {
				max-width: 100%;
			}
		}
	}
}
section.toptext02 {
	padding: 30px 5% 30px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> p {
			font-size: min(1.5rem, 6vw);
			line-height: 1.7;
			color: #333;
			font-weight: 600;
			text-align: justify;
			padding-bottom: 40px;
			&:last-of-type {
				padding-bottom: unset;
			}
		}
	}
}
section.eventblock {
	background-color: #f0f0f0;
	&.first {
		padding: 40px 5% 0px 5%;
		@media (width < 650px) {
			padding: 20px 5% 0px 5%;
		}
	}
	&.second {
		padding: 40px 5% 40px 5%;
		@media (width < 650px) {
			padding: 20px 5% 20px 5%;
		}
	}
	> div {
		max-width: 1000px;
		margin-inline: auto;
		background-color: #fff;
		padding: min(3vw ,50px);
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 20px;
		@media (width < 650px) {
			grid-template-columns: repeat(1, 1fr);
			row-gap: 40px;
			padding: 20px;
		}
		> figure {
			> img {
				max-width: 100%;
			}
		}
	}
}
section.walkingpole {
	padding: 50px 5% 0px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> picture {
			> img {
				max-width: 100%;
			}
		}
		> div {
			padding-top: 40px;
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			column-gap: 20px;
			@media (width < 650px) {
				grid-template-columns: repeat(1, 1fr);
				row-gap: 40px;
			}
			> figure {
				> img {
					max-width: 100%;
				}
			}
		}
		> p {
			padding-block: 30px;
			font-size: 1.2rem;
			line-height: 1.7;
			color: #333;
			font-weight: 300;
			text-align: justify;
		}
	}
}
section.polelink {
	padding: 40px 5% 40px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> a {
			text-decoration: none;
			display: block;
			background: #e62e8b;
			color: #fff;
			border: 2px solid #e62e8b;
			border-radius: 4px;
			box-shadow: 0 0 0 1px #fff inset;
			font-size: min(1.5rem, 5vw);
			font-weight: 600;
			text-align: center;
			cursor: pointer ;
			padding: 0.9rem 1em ;
			transition: all .6s ;
			&:hover {
				box-shadow: 0 0 0 300px #fff inset;
				color: #e62e8b;
			}
		}
	}
}
section.bottom {
	background-color: #fcebee;
	padding: 30px 5% 30px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> p {
			font-size: min(1.8rem, 6.5vw);
			line-height: 1.7;
			color: #e62e8b;
			font-weight: 600;
		}
	}
}
section.subtitle {
	padding: 80px 5% 0px 5%;
	&.gray {
		background-color: #eff1f1;
	}
	&.pink {
		background-color: #f6e8ea;
	}
	> div {
		max-width: 1100px;
		margin-inline: auto;
		> div {
			display: flex;
			align-items: center;
			gap: 15px;
			> div {
				height: 2px;
				width: 12px;
				background-color: #28b4c8;
			}
			> h2 {
				font-size: min(2.2rem, 7vw);
				line-height: 1.3;
				color: #333;
				font-weight: 600;
				font-family: var(--font-serif);
			}
		}
		> p {
			font-size: min(1.0rem, 5.0vw);
			line-height: 1.6;
			color: #28b4c8;
			font-weight: 800;
			padding-top: 10px;
			padding-left: 25px;
		}
	}
}
section.a {
	padding: 30px 5% 40px 5%;
	> div {
		max-width: 1100px;
		margin-inline: auto;
		> p {
			font-size: min(1.3rem, 5.5vw);
			line-height: 2.0;
			color: #333;
			font-weight: 600;
			text-align: justify;
		}
	}
}
