		* {
			box-sizing: border-box;
		}

		:root {
			--top-section-height: 302px;
			--top-section-height-sp: 259px;
			--primary-KOGANEI-blue: #005EAD;
			--text-black: #151515;
			--bg-blue: #F3F8FC;
			--text-gray: #D7D7D7;
			--text-gray-dark: #9C9C9C;

			--content-width: 1056px;
			--content-padding-sides: calc((100vw - var(--content-width)) / 2);
		}

		html,
		body {
			width: 100%;
			height: 100%;
			overflow: auto;
			margin: 0;
			padding: 0;

			-ms-overflow-style: none;
			scrollbar-width: none;
		}

		.page {
			overflow-x: hidden;
			overflow-y: auto;
			height: auto;
			-ms-overflow-style: none;
			/* Edge */
			scrollbar-width: none;
			/* Firefox */
		}

		.page::-webkit-scrollbar {
			display: none;
			/* Chrome,Safari */
		}

		.slide {
			position: -webkit-sticky;
			position: sticky;
			top: 0;
			height: auto;
			display: flex;
			justify-content: center;
			align-items: center;
			color: white;
			background-size: cover;
			background-position: center;
		}

		section {
			width: 100%;
		}

		.site-header {
			background: var(--primary-KOGANEI-blue, #005EAD) !important;
		}

		.top-section {
			position: relative;
			height: var(--top-section-height);
			overflow: hidden;

			.top-section-common {
				gap: 24px;
				opacity: 1;
				padding-top: 130px;
				padding-right: 118px;
				padding-bottom: 40px;
				padding-left: 118px;

				position: relative;
				z-index: 2;
				display: flex;
				flex-direction: column;
				align-items: flex-start;

				.pankuzu-list {
					display: flex;
					width: 100%;
				}

				.pankuzu-unit {
					color: var(--text-black);
					font-family: Noto Sans JP;
					font-weight: 400;
					font-style: Regular;
					font-size: 12px;
					line-height: 150%;
					letter-spacing: 0%;

					a {
						color: var(--text-black);
						text-decoration: none;
					}
				}

				.pankuzu-separator {
					position: relative;
					width: 24px;
					height: 18px;

					&::after {
						position: absolute;
						content: "";
						top: 0;
						left: 50%;
						width: 1px;
						height: 16px;
						background-color: var(--text-black);
						transform: rotate(30deg);
					}
				}

				.top-title {
					display: flex;
					flex-direction: column;
					gap: 0px;

					.top-title-main {
						color: var(--text-black);
						font-family: Noto Sans JP;
						font-weight: 500;
						font-size: 40px;
						line-height: 160%;
						letter-spacing: 0;

					}

					.top-title-sub {
						color: var(--text-black);
						font-family: Noto Sans JP;
						font-weight: 400;
						font-size: 16px;
						line-height: 155%;
						letter-spacing: 0;
					}
				}
			}
		}

		.main-section {
			max-width: 100%;
			margin: 0 auto;
			padding-top: 80px;
			padding-bottom: 80px;
			background-color: var(--bg-blue);

			.sitemap-grid {
				background-color: white;
				display: grid;
				grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
				column-gap: 16px;
				row-gap: 56px;
				max-width: var(--content-width);
				margin: 0 auto;
				padding: 24px;

				.grid-cell {
					display: flex;
					flex-direction: column;
					gap: 16px;

					.sitemap-title {
						margin: 0;

						a {
							font-family: Noto Sans JP;
							font-weight: 700;
							font-size: 18px;
							line-height: 140%;
							letter-spacing: 0;
							color: #000;
							text-decoration: none;

							&:hover {
								text-decoration: none;
							}
						}

					}

					.sitemap-list {
						list-style: none;
						margin: 0;
						padding: 0;
						display: flex;
						flex-direction: column;
						gap: 8px;
						flex-wrap: wrap;
						align-content: flex-start;
						align-items: flex-start;

						li {
							line-height: 0;

							a {
								font-family: Noto Sans JP;
								font-weight: 400;
								font-size: 16px;
								line-height: 140%;
								letter-spacing: 0;
								color: var(--text-black);
								text-decoration: none;

								&:hover {
									text-decoration: none;
								}
							}
						}
					}
				}
			}
		}

		@media screen and (max-width: 768px) {
			:root {
				--top-section-height: var(--top-section-height-sp);
			}

			.top-section {
				height: var(--top-section-height);

				.top-section-common {
					gap: 24px;
					opacity: 1;

					padding: 104px 24px 40px;

					.pankuzu-list {
						width: auto;
					}

					.top-title {
						.top-title-main {
							font-size: 32px;
						}
					}
				}
			}
			.main-section {
				margin: 0 auto 40px;
				width: 100%;
				padding: 56px 24px;

				.sitemap-grid {
					padding: 24px;
					display: flex;
					flex-direction: column;
					row-gap: 30px;
					column-gap: 0;
					width: 100%;
				}

			}
		}
