		* {
			box-sizing: border-box;
		}
		:root {
			--top-section-height: 276px;
			--top-section-height-sp: 237px;
			--primary-KOGANEI-blue: #005EAD;
			--text-black: #151515;
			--bg-blue: #D9EEFE;
			--text-gray: #9C9C9C;
		}

		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: 3px;

					.top-title-main {
						color: var(--text-black);
						font-family: Noto Sans JP;
						font-weight: 500;
						font-style: Medium;
						font-size: 40px;
						line-height: 160%;
						letter-spacing: 0;

					}
				}
			}
		}

		.main-section {
			max-width: 100%;
			margin: 0 auto;

			.accordion {
				width: 1056px;
				margin: 40px auto 56px;

				summary {
					opacity: 1;
					padding: 18px 24px;
					border-radius: 4px;
					background: var(--primary-KOGANEI-blue, #005EAD);
					cursor: pointer;
					outline: none;
					list-style: none;
					-webkit-user-select: none;
					-moz-user-select: none;
					-ms-user-select: none;
					user-select: none;

					display: flex;
					justify-content: space-between;
					align-items: center;
					flex-wrap: nowrap;

					.arccordion-title {
						font-family: Noto Sans JP;
						font-weight: 700;
						font-size: 24px;
						line-height: 140%;
						letter-spacing: 0;
						color: var(--bg-white, #FFFFFF);

					}

					.inn {
						position: relative;
						width: 64px;
						height: 36px;
						background-color: var(--bg-white, #FFFFFF);
						border-radius: 200px;
						border: 2px solid var(--primary-KOGANEI-blue);

						&::before {
							position: absolute;
							content: "";
							top: 42%;
							left: 50%;
							width: calc(7px * sqrt(2));
							height: calc(7px * sqrt(2));
							transform: translate(-50%, -50%) rotate(135deg);
							border-top: 2px solid var(--primary-KOGANEI-blue, #005EAD);
							border-right: 2px solid var(--primary-KOGANEI-blue, #005EAD);
							transition: all 0.3s ease;
						}
					}
				}

				&[open] summary .inn::before {
					transform: translate(-50%, 0%) rotate(-45deg);
				}

				.accordion-content {
					margin-top: 40px;
					width: 1056px;

					table {
						border: 1px solid var(--text-gray, #9C9C9C);
						border-collapse: collapse;
						--cell-horizontal-padding: 15px;
						--cell-vertical-padding: 15.4px;

						tr {
							width: 1056px;
						}

						thead {
							background-color: var(--bg-blue, #D9EEFE);


							.th {
								font-family: Noto Sans JP;
								font-weight: 700;
								font-style: Bold;
								font-size: 18px;
								line-height: 140%;
								letter-spacing: 0%;
								color: var(--text-black, #151515);
								border: 1px solid var(--text-gray, #9C9C9C);
								text-align: left;
								padding: var(--cell-vertical-padding) var(--cell-horizontal-padding);
							}
							.th:first-child {
								width: 200px;
							}
							.th:nth-child(2) {
								width: 200px;
							}
							.th:nth-child(3) {
								width: 328px;
							}

							.th.sq-series,
							.th.sq-model {
								min-width: calc(198px - var(--cell-horizontal-padding) * 2);
							}

							.th.sq-text,
							.th.sq-answer {
								min-width: calc(326px - var(--cell-horizontal-padding) * 2);
							}
						}

						tbody {
							.td {
								font-weight: 400;
								font-size: 15.6px;
								line-height: 184%;
								letter-spacing: .03em;
								color: var(--text-black, #151515);
								border: 1px solid var(--text-gray, #9C9C9C);
								text-align: start;
								vertical-align: baseline;
								padding: var(--cell-vertical-padding) var(--cell-horizontal-padding);
							}

						}
					}
				}
			}
		}

		@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 {
				.accordion {
					width: calc(100% - 48px);
					margin: 0px auto 10px;
					padding-bottom: 20px;

					summary {
						padding: 16px 16px;

						.arccordion-title {
							font-size: 18px;
							line-height: 140%;
							font-weight: 500;
						}

						.inn {
							width: 40px;
							height: 24px;

							&::before {
								width: calc(4.705px);
								height: calc(4.705px);
								border-top-width: 1px;
								border-right-width: 1px;

							}
						}


					}

					.accordion-content {
						margin-top: 24px;
						width: 100%;
						padding-bottom: 30px;

						table {
							width: 100%;

							tr {
								width: 100%;
							}

							thead .th,
							tbody .td {
								font-size: 14px;
							}
						}
					}
				}
			}

		}
