@charset "utf-8";
#hero {
	width: 100%;
	height: auto;
	min-height: 100vh;
	position: relative;
	overflow: hidden;
}
	.hero__obj_01 {
		width: calc((494 / 1280) * 100%);
		height: auto;
		opacity: .4;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
	.hero__obj_02 {
		width: 100%;
		height: auto;
		opacity: .2;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 1;
	}
	.hero__obj_03 {
		width: calc((1350 / 1280) * 100vw);
		max-width: 1350px;
		height: auto;
		filter: drop-shadow(0 calc((10 / 1280) * 100vw) calc((10 / 1280) * 100vw) rgba(55, 55, 56, 0.20));
		position: absolute;
		bottom: calc((60 / 1280) * 100vw);
		left: 50%;
		transform: translate(-50%, 0);
		z-index: 3;

		opacity: 0;
		transition: 1s;
		transition-delay: 2s;
	}
	.loaded .hero__obj_03 {
		opacity: .23;
	}
	.hero__inner {
		/* width: 100%; */
		max-width: 1280px;
		/* height: calc((901 / 1280) * 100vw); */
		height: calc(100vh + calc((60 / 1280) * 100vw));

		margin: 0 auto;
		position: relative;
		z-index: 4;
	}
		.hero__visual {
			width: calc((660 / 1280) * 100%);
			height: 100%;
			position: relative;
		}
			.hero__visual__image {
				height: auto;
				position: absolute;
			}
			.hero__visual__image._01 {
				width: calc((788.66 / 660) * 100%);
				/* filter: drop-shadow(calc((7 / 1280) * 100vw) calc((14 / 1280) * 100vw) calc((34 / 1280) * 100vw) rgba(55, 55, 56, 0.20)); */
				filter: drop-shadow(7px 14px 34px rgba(55, 55, 56, 0.20));
				/* transform: rotate(4.458deg); */
				/* top: calc((85 / 1280) * 100vw);
				left: calc((208 / 1280) * -100vw); */
				top: calc(((85 / 846) * 100vh) + 46px);
				left: calc((208 / 660) * -100%);

				z-index: 1;

				opacity: 0;
				/* transform: rotate(4.458deg) translate(-0.3vw, -3vw); */
				transform: rotate(4.458deg) translate(-3px, -30px);
				transition: 1s;
				/* transition-delay: 1.45s; */
			}
			.loaded .hero__visual__image._01 {
				opacity: 1;
				transform: rotate(4.458deg) translate(0%, 0%);
			}
			.hero__visual__image._02 {
				width: calc((381.65 / 660) * 100%);
				/* filter: drop-shadow(calc((23 / 1280) * -100vw) calc((54 / 1280) * 100vw) calc((34 / 1280) * 100vw) rgba(55, 55, 56, 0.20)); */
				filter: drop-shadow(23px 54px 34px rgba(55, 55, 56, 0.20));
				/* transform: rotate(19deg); */
				/* top: calc((326 / 1280) * 100vw);
				right: calc((30 / 1280) * -100vw); */
				top: calc(((326 / 846) * 100vh) + 46px);
				right: calc((30 / 660) * -100%);

				z-index: 2;

				opacity: 0;
				/* transform: rotate(19deg) translate(-1.2vw, -3vw); */
				transform: rotate(19deg) translate(-12px, -30px);
				transition: 1s;
				/* transition-delay: 1.3s; */
			}
			.loaded .hero__visual__image._02 {
				opacity: 1;
				transform: rotate(19deg) translate(0%, 0%);
			}
		.hero__contents {
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
			align-items: start;
			/* width: calc((540 / 1280) * 100vw); */
			width: calc((540 / 1280) * 100%);
			position: absolute;
			/* top: calc((217 / 1280) * 100vw);
			left: calc((660 / 1280) * 100%); */
			top: calc(((217 / 846) * 100vh) + 46px);
			left: calc((660 / 1280) * 100%);
		}
			.hero__contents__price_wrap {
				/* padding: calc((5 / 1280) * 100vw) calc((25 / 1280) * 100vw) calc((5 / 1280) * 100vw) calc((16 / 1280) * 100vw); */
				padding: 5px 25px 5px 16px;
				/* margin-bottom: calc((16 / 1280) * 100vw); */
				margin-bottom: 16px;
				position: relative;
				z-index: 2;

				overflow: hidden;
			}
				.hero__contents__price_wrap::before {
					content: "";
					width: 100%;
					height: 100%;
					background-color: var(--color--black);
					position: absolute;
					top: 0;
					left: 0;
					z-index: -1;

					transform-origin: left top;
					transform: scale(0, 1);
					transition: .6s var(--ease-out);
				}
				.loaded .hero__contents__price_wrap::before {
					transform: scale(1, 1);
				}
				.hero__contents__price_wrap__inner {
					display: flex;
					justify-content: flex-start;
					align-items: flex-end;

					/* transform: translateY(5vw); */
					transform: translateY(50px);
					transition: .5s var(--ease-out);
					transition-delay: .5s;
				}
				.loaded .hero__contents__price_wrap__inner {
					transform: translateY(0%);
				}
					.hero__contents__price__label {
						/* margin-right: calc((3 / 1280) * 100vw); */
						margin-right: 3px;
						-webkit-writing-mode: vertical-rl;
						-moz-writing-mode: vertical-rl;
						-ms-writing-mode: tb-rl;
						-ms-writing-mode: vertical-rl;
						writing-mode: vertical-rl;
						/* font-size: var(--15px); */
						font-size: 15px;
						font-weight: 900;
						line-height: calc(17 / 15);
						letter-spacing: 0.15em;
						color: var(--color--orange_red);
						position: relative;
						/* top: calc((2 / 1280) * -100vw); */
						top: -2px;
					}
					.hero__contents__price__main {
						width: auto;
						height: auto;
						/* margin-right: calc((3 / 1280) * 100vw); */
						margin-right: 3px;
						color: var(--color--orange_red);
					}
						.hero__contents__price__main span {
							display: inline-block;
							/* margin-right: calc((3 / 1280) * 100vw); */
							margin-right: 3px;
							/* font-size: var(--36px); */
							font-size: 36px;
							font-weight: 600;
							line-height: calc(40 / 36);
							letter-spacing: -0.03em;
							position: relative;
							top: 1px;
						}
						.hero__contents__price__main small {
							display: inline-block;
							/* font-size: var(--25px); */
							font-size: 25px;
							font-weight: 900;
							line-height: 1.2;
							position: relative;
							/* top: calc((1 / 1280) * -100vw); */
							top: 1px;
						}
					.hero__contents__price__txt {
						/* padding-bottom: calc((4 / 1280) * 100vw); */
						padding-bottom: 4px;
						/* font-size: var(--25px); */
						font-size: 25px;
						font-weight: 700;
						line-height: 1.2;
						color: var(--color--white);
					}
			.hero__contents__copy_wrap {
				width: auto;
				height: auto;
				/* margin-bottom: calc((23 / 1280) * 100vw); */
				margin-bottom: 23px;
			}
				.hero__contents__copy {
					/* font-size: var(--48px); */
					font-size: 48px;
					font-weight: 900;
					line-height: .2;
					letter-spacing: 0.05em;
					white-space: nowrap;
					color: var(--color--black);
				}
					.hero__contents__copy__bg {
						display: inline-block;
						line-height: 1.3;

						/* padding: calc((4 / 1280) * 100vw) calc((10 / 1280) * 100vw) calc((4 / 1280) * 100vw); */
						padding: 4px 10px 4px;
						/* margin-bottom: calc((8 / 1280) * -100vw); */
						margin-bottom: -8px;
						position: relative;

						overflow: hidden;
					}
						.hero__contents__copy__bg::before {
							content: "";
							width: 100%;
							height: 100%;
							background-color: var(--color--white);
							position: absolute;
							top: 0;
							left: 0;
							z-index: -1;

							transform-origin: left top;
							transform: scale(0, 1);
							transition: .6s var(--ease-out);
						}
						.loaded .hero__contents__copy__bg::before {
							transform: scale(1, 1);
						}
						.hero__contents__copy__bg__inner {
							display: inline-block;
							/* transform: translateY(5vw); */
							transform: translateY(60px);
							transition: .5s var(--ease-out);
						}
						.hero__contents__copy__bg__inner._l01 {
							transition-delay: .5s;
						}
						.hero__contents__copy__bg__inner._l02 {
							transition-delay: .56s;
						}
						.hero__contents__copy__bg__inner._l03 {
							transition-delay: .62s;
						}
						.hero__contents__copy__bg__inner._l04 {
							transition-delay: .68s;
						}
						.loaded .hero__contents__copy__bg__inner {
							transform: translateY(0px);
						}
			.hero__contents__keyword_list_wrap {
				width: auto;
				height: auto;

				opacity: 0;
				transition: 1s;
				transition-delay: 1.3s;
			}
				.loaded .hero__contents__keyword_list_wrap {
					opacity: 1;
				}
				.hero__contents__keyword_list {
					display: flex;
					justify-content: flex-start;
					align-items: flex-start;
					flex-wrap: wrap;
					/* row-gap: var(--10px); */
					row-gap: 10px;
					/* column-gap: var(--9px); */
					column-gap: 9px;
				}
				.hero__contents__keyword_list._sp {
					display: none;
				}
					.hero__contents__keyword_list__item {
						/* padding: 0 calc((11 / 1280) * 100vw); */
						padding: 0 11px;
						/* border-radius: calc((3 / 1280) * 100vw); */
						border-radius: 3px;
						background-color: rgba(255, 255, 255, 0.7);
						border: solid 1px var(--color--red);
						/* font-size: var(--14px); */
						font-size: 14px;
						font-weight: 700;
						line-height: 1.8;
						letter-spacing: 0.06em;
						color: var(--color--red);
					}
						.hero__contents__keyword_list__item::before {
							content: "#";
						}

#question {
	width: 100%;
	height: auto;
}
	.question__inner {
		width: 95%;
		max-width: 1222px;
		height: auto;
		padding: 0 0 80px;
		margin: 0 auto;
	}
		.question__heading {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 100%;
			height: auto;
			margin: 0 auto 30px;
		}
			.question__heading__txt {
				padding: 11px 28px 11px 38px;
				font-size: 40px;
				font-weight: 900;
				line-height: 1.3;
				letter-spacing: 0.05em;
				text-align: center;
				color: var(--color--black);
				position: relative;
				z-index: 2;

				overflow: hidden;
			}
				.question__heading__txt::before {
					content: "";
					width: 100%;
					height: 100%;
					background-color: var(--color--white);
					position: absolute;
					top: 0;
					left: 0;
					z-index: -1;

					transform-origin: left top;
					transform: scale(0, 1);
					transition: .5s var(--ease-out);
				}
				.run.question__heading__txt::before {
					transform: scale(1, 1);
				}
				.question__heading__txt__inner {
					display: inline-block;
					transform: translateY(120%);
					transition: .5s;
					transition-delay: .5s;
				}
				.run .question__heading__txt__inner {
					transform: translateY(0%);
				}
					.question__heading__txt .ls {
						margin-right: -0.1em;
					}
					.question__heading__txt .red {
						color: var(--color--black);
						transition: .3s;
						transition-delay: 1s;
					}
					.run.question__heading__txt .red {
						color: var(--color--red);
					}
					.question__heading__txt strong {
						position: relative;
					}
						.question__heading__txt strong::before {
							content: "";
							width: 6px;
							height: 6px;
							border-radius: 9999px;
							background-color: var(--color--red);
							position: absolute;
							top: -2px;
							left: 50%;
							/* transform: translateX(-50%); */

							opacity: 0;
							transform: translate(-50%, 10px);
							transition: .3s;
							transition-delay: 1s;
						}
						.run.question__heading__txt strong::before {
							opacity: 1;
							transform: translate(-50%, 0px);
						}
		.question__txt {
			width: 100%;
			height: auto;
			margin-bottom: 60px;
			font-size: 18px;
			font-weight: 700;
			line-height: 1.8;
			letter-spacing: 0.06em;
			text-align: center;
			color: var(--color--black);
		}
		.question__contents {
			width: 100%;
			height: auto;
		}
			.question__list {
				display: grid;
				grid-template-columns: repeat(3, 1fr);
				gap: 5px;
				width: 100%;
				height: auto;
				filter: drop-shadow(0 15px 10px rgba(55, 55, 56, 0.05));
			}
				.question__list__item {
					height: auto;
					padding: 30px 0 50px;
					background-color: var(--color--white);

					opacity: 0;
					transform: translateY(10px);
					transition: .8s;
				}
				.run.question__list__item {
					opacity: 1;
					transform: translateY(0px);
				}
				.question__list__item:nth-of-type(1) {
					border-radius: 10px 0 0 10px;
				}
				.question__list__item:nth-of-type(3) {
					border-radius: 0 10px 10px 0;
				}
					.question__list__item__heading {
						width: calc((288 / 404) * 100%);
						height: auto;
						margin: 0 auto 15px;

						opacity: 0;
						transform: translateY(10px);
						transition: .8s;
						transition-delay: .3s;
					}
					.run .question__list__item__heading {
						opacity: 1;
						transform: translateY(0px);
					}
					.question__list__item__image {
						width: calc((288 / 404) * 100%);
						height: auto;
						margin: 0 auto;

						opacity: 0;
						transition: .8s;
						transition-delay: .7s;
					}
					.run .question__list__item__image {
						opacity: 1;
					}

#trouble {
	width: 100%;
	height: auto;
	padding: 74px 0 calc((176 / 1280) * 100vw);
	background-color: var(--color--white);
	position: relative;
	overflow: hidden;
}
	.trouble__obj_01 {
		width: calc((494 / 1280) * 100%);
		height: auto;
		opacity: .09;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.trouble__obj_02 {
		width: calc((303 / 1280) * 100%);
		height: auto;
		opacity: .09;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 1;
	}
	.trouble__inner {
		width: 90%;
		max-width: 1080px;
		height: auto;
		margin: 0 auto;
		position: relative;
		z-index: 3;
	}
		.trouble__heading {
			width: 100%;
			height: auto;
			margin: 0 auto 26px;
		}
			.trouble__heading__txt {
				font-size: 40px;
				font-weight: 900;
				line-height: 1.6;
				letter-spacing: 0.05em;
				text-align: center;
				color: var(--color--black);
			}
				.trouble__heading__txt strong {
					display: inline-block;
					padding: 0 9px 0 12px;
					margin-right: 5px;
					font-weight: 900;
					color: var(--color--white);
					position: relative;
					z-index: 2;

					transition: .3s;
					transition-delay: .6s;
				}
					.trouble__heading__txt strong::before {
						content: "";
						width: 100%;
						height: calc(100% - 4px);
						background-color: var(--color--red);
						position: absolute;
						top: 3px;
						left: 0;
						z-index: -1;

						transform-origin: left top;
						transform: scale(0, 1);
						transition: .3s;
						transition-delay: .6s;
					}
					.run .trouble__heading__txt strong::before {
						transform: scale(1, 1);
					}
		.trouble__txt {
			width: 100%;
			height: auto;
			margin: 0 auto 60px;
			font-size: 18px;
			font-weight: 700;
			line-height: 1.8;
			letter-spacing: 0.06em;
			text-align: center;
			color: var(--color--black);
		}
		.trouble__table_wrap {
			width: 100%;
			height: auto;
		}
			.trouble__table {
				display: grid;
				grid-template-columns: repeat(4, 1fr);
				gap: 10px;
				width: 100%;
				height: auto;
			}
				.trouble__table__head {
					width: 100%;
					height: auto;
				}
				.trouble__table__column {
					width: 100%;
					height: auto;
					background-color: #FAFAFA;
				}
				.trouble__table__column._bandix {
					background-color: var(--color--white);
					filter: drop-shadow(0 0 7px rgba(55, 55, 56, 0.3));
					transform: scale(1.02);
				}
					.trouble__table__head__block,
					.trouble__table__column__heading {
						width: 100%;
						height: 100px;
					}
					.trouble__table__column__heading {
						display: flex;
						flex-direction: column;
						justify-content: center;
						align-items: center;
						background-color: #7D7D7D;
					}
					._bandix .trouble__table__column__heading {
						background-color: var(--color--black);
					}
						.trouble__table__column__heading__logo {
							width: 85%;
							max-width: 142px;
							height: auto;
						}
							.trouble__table__column__heading__logo svg {
								fill: var(--color--white);
							}
						.trouble__table__column__heading__txt_main {
							margin-bottom: 3px;
							font-size: 20px;
							font-weight: 700;
							line-height: 1.3;
							letter-spacing: 0.11em;
							text-align: center;
							color: var(--color--white);
						}
						.trouble__table__column__heading__txt_sub {
							font-size: 16px;
							font-weight: 500;
							line-height: 1.4;
							text-align: center;
							color: var(--color--white);
						}
					.trouble__table__head__item,
					.trouble__table__column__item {
						width: calc(100% - 34px);
						height: 148px;
					}
					.trouble__table__head__item {
						display: flex;
						justify-content: space-between;
						align-items: center;
					}
					.trouble__table__head__item:nth-of-type(2) {
						transition-delay: .15s;
					}
					.trouble__table__head__item:nth-of-type(3) {
						transition-delay: .2s;
					}
					.trouble__table__head__item:nth-of-type(4) {
						transition-delay: .25s;
					}
					.trouble__table__head__item:not(:last-of-type) {
						border-bottom: solid 1px #BABABA;
					}
						.trouble__table__head__item__txt {
							font-size: 18px;
							font-weight: 500;
							line-height: 1.5;
							color: var(--color--red);
						}
						.trouble__table__head__item__icon {
							width: calc((94 / 224) * 100%);
							height: auto;
						}
					.trouble__table__column__item {
						display: flex;
						flex-direction: column;
						justify-content: center;
						align-items: center;
						padding: 5px 0 0;
						margin: 0 auto;
					}
					.trouble__table__column__item:not(:last-of-type) {
						border-bottom: solid 1px #BABABA;
					}
						.trouble__table__column__item__icon {
							width: 34px;
							height: auto;
							margin: 0 auto 10px;
						}
						.trouble__table__column__item__txt {
							font-size: 16px;
							font-weight: 500;
							line-height: 22px;
							letter-spacing: 0em;
							text-align: center;
							color: var(--color--black);
						}
							.trouble__table__column__item__txt strong {
								display: inline;
								margin-left: 3px;
								font-size: 20px;
								font-weight: 500;
							}
							._good .trouble__table__column__item__txt strong {
								color: var(--color--red);
							}
							._nomal .trouble__table__column__item__txt strong {
								color: var(--color--green);
							}
							._bad .trouble__table__column__item__txt strong {
								color: var(--color--blue);
							}
	.trouble__edge {
		width: 100%;
		height: auto;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 1;
	}

#support {
	width: 100%;
	height: auto;
	padding: 70px 0 100px;
}
	.support__inner {
		width: 90%;
		max-width: 1080px;
		height: auto;
		margin: 0 auto;
	}
		.support__heading {
			width: 100%;
			height: auto;
			padding: 29px 0 22px;
			margin: 0 auto 50px;
			position: relative;
		}
			.support__heading::before,
			.support__heading::after {
				content: "";
				width: 100%;
				height: 1px;
				background-color: var(--color--black);
				position: absolute;
				left: 0;
				transition: .8s;
			}
			.support__heading::before {
				top: 0;
				transform-origin: left top;
				transform: scale(0,1);
			}
			.run.support__heading::before {
				transform: scale(1,1);
			}
			.support__heading::after {
				bottom: 0;
				transform-origin: right bottom;
				transform: scale(0,1);
			}
			.run.support__heading::after {
				transform: scale(1,1);
			}
			.support__heading__txt {
				width: 100%;
				height: auto;
				font-size: 40px;
				font-weight: 900;
				line-height: 1.6;
				letter-spacing: 0.05em;
				text-align: center;
				color: var(--color--black);
				
				opacity: 0;
				transform: translateY(20px);
				transition: .8s;
				transition-delay: .6s;
			}
				.run .support__heading__txt {
					opacity: 1;
					transform: translateY(0px);
				}
				.support__heading__logo {
					display: inline-block;
					width: 224px;
					height: auto;
					margin-right: 4px;
					position: relative;
					top: 3px;
				}
					.support__heading__logo svg {
						fill: var(--color--black);
					}
		.support__list_wrap {
			width: 100%;
			height: auto;
		}
			.support__list {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 100%;
				height: auto;
			}
				.support__list__item {
					display: flex;
					flex-direction: column;
					justify-content: flex-end;
					align-items: center;
					width: calc((260 / 1080) * 100%);
					height: auto;
					padding-bottom: calc((46 / 1080) * 100%);
					aspect-ratio: 1 / 1;
					border-radius: 9999px;
					background-color: var(--color--white);
					border: solid 1px var(--color--red);

					opacity: 0;
					transform: translateY(30px);
					transition: .8s;
				}
				.support__list__item:nth-of-type(2) {
					transition-delay: .05s;
				}
				.support__list__item:nth-of-type(3) {
					transition-delay: .1s;
				}
				.support__list__item:nth-of-type(4) {
					transition-delay: .15s;
				}
				.run .support__list__item {
					opacity: 1;
					transform: translateY(0px);
				}
					.support__list__item__icon {
						width: calc((131 / 258) * 100%);
						height: auto;
						margin: 0 auto;

						opacity: 0;
						transform: scale(1.1);
						transition: .8s;
					}
					.support__list__item:nth-of-type(1) .support__list__item__icon {
						transition-delay: .15s;
					}
					.support__list__item:nth-of-type(2) .support__list__item__icon {
						transition-delay: .2s;
					}
					.support__list__item:nth-of-type(3) .support__list__item__icon {
						transition-delay: .25s;
					}
					.support__list__item:nth-of-type(4) .support__list__item__icon {
						transition-delay: .3s;
					}
					.run .support__list__item__icon {
						opacity: 1;
						transform: scale(1);
					}
					.support__list__item:nth-of-type(4) .support__list__item__icon {
						width: calc((108 / 258) * 100%);
					}
					.support__list__item__txt {
						width: 100%;
						height: auto;
						margin-top: calc((27 / 258) * 100%);
						font-size: 20px;
						font-weight: 700;
						line-height: calc(26 / 20);
						text-align: center;
						color: var(--color--red);

						opacity: 0;
						transition: .8s;
					}
					.support__list__item:nth-of-type(1) .support__list__item__txt {
						transition-delay: .15s;
					}
					.support__list__item:nth-of-type(2) .support__list__item__txt {
						transition-delay: .2s;
					}
					.support__list__item:nth-of-type(3) .support__list__item__txt {
						transition-delay: .25s;
					}
					.support__list__item:nth-of-type(4) .support__list__item__txt {
						transition-delay: .3s;
					}
					.run .support__list__item__txt {
						opacity: 1;
						transform: translateY(0px);
					}
		.support__plus {
			width: 80px;
			height: 80px;
			margin: 18px auto 40px;
			position: relative;

			opacity: 0;
			transform: scale(1.2);
			transition: .8s;
		}
		.run.support__plus {
			opacity: 1;
			transform: scale(1);
		}
			.support__plus::before,
			.support__plus::after {
				content: "";
				background-color: var(--color--red);
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
			}
			.support__plus::before {
				width: 100%;
				height: 2px;
			}
			.support__plus::after {
				width: 2px;
				height: 100%;
			}
		.support__contents {
			display: flex;
			justify-content: space-between;
			align-items: stretch;
			flex-wrap: wrap;
			width: 100%;
			height: auto;
		}
			.support__contents__item {
				width: calc((532 / 1080) * 100%);
				height: auto;
				padding: 48px 30px 40px;
				border-radius: 5px;
				background-color: var(--color--red);

				opacity: 0;
				transition: .8s;
			}
			.support__contents__item:nth-of-type(1) {
				transform: translateX(-30px);
			}
			.support__contents__item:nth-of-type(2) {
				transform: translateX(30px);
			}
			.run .support__contents__item {
				opacity: 1;
				transform: translateX(0px);
			}
				.support__contents__item__details {
					width: 100%;
					height: auto;
				}
					.support__contents__item__details dt {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: auto;
						min-height: 80px;
						padding: 15px 0 14px;
						margin: 0 auto 30px;
						border-radius: 3px;
						background-color: var(--color--white);
						font-size: 30px;
						font-weight: 700;
						line-height: 1.2;
						text-align: center;
						color: var(--color--red);
						position: relative;
					}
						.support__contents__item__details dt::before {
							content: "";
							width: 2px;
							height: calc(100% + 2px);
							background-color: var(--color--red);
							position: absolute;
							top: -1px;
							left: 50%;
							transform: translateX(-50%);
						}
						.support__contents__item__details__txt {
							display: block;
							width: calc(50% - 1px);
						}
						.support__contents__item__details__txt:first-of-type {
							padding-right: 2px;
						}
						.support__contents__item__details__txt:last-of-type {
							padding-left: 2px;
						}
						.support__contents__item__details__times {
							width: 34px;
							height: 34px;
							border-radius: 9999px;
							background-color: var(--color--red);
							border: solid 1px var(--color--white);
							position: absolute;
						}
							.support__contents__item__details__times::before,
							.support__contents__item__details__times::after {
								content: "";
								background-color: var(--color--white);
								position: absolute;
								top: 50%;
								left: 50%;
								transform: translate(-50%, -50%) rotate(45deg);
							}
							.support__contents__item__details__times::before {
								width: 18px;
								height: 2px;
							}
							.support__contents__item__details__times::after {
								width: 2px;
								height: 18px;
							}
					.support__contents__item__details dd {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: auto;
						min-height: 82px;
						font-size: 14px;
						font-weight: 700;
						line-height: 1.9;
						text-align: center;
						color: var(--color--white);
					}
	@media all and (max-width: 1200px) {
			.support__contents__item {
				padding: 40px 30px 30px;
			}
					.support__contents__item__details dt {
						margin: 0 auto 18px;
						font-size: 24px;
					}
					.support__contents__item__details dd {
						text-align: left;
					}
	}
	@media all and (max-width: 1019px) {
					.support__contents__item__details dd {
						min-height: initial;
					}
						.support__contents__item__details dd br {
							display: none;
						}
	}

#plan {
	width: 100%;
	height: auto;
	padding: 70px 0 74px;
	background-color: var(--color--white);
}
	.plan__inner {
		width: 90%;
		max-width: 1108px;
		height: auto;
		margin: 0 auto;
	}
		#plan .section__heading {
			margin: 0 auto 78px;
		}
		.plan__contents {
			width: 100%;
			height: auto;
		}
			.plan__list {
				display: grid;
				grid-template-columns: repeat(4, 1fr);
				gap: 10px;
				width: 100%;
				height: auto;
			}
				.plan__list__item {
					width: 100%;
					height: auto;
					padding: 57px 0 0;
					background-color: #EBEBEB;
					position: relative;
				
					opacity: 0;
					transform: translateY(20px);
					transition: .8s;
				}
				.plan__list__item:nth-of-type(2) {
					transition-delay: .1s;
				}
				.plan__list__item:nth-of-type(3) {
					transition-delay: .2s;
				}
				.plan__list__item:nth-of-type(4) {
					transition-delay: .3s;
				}
				.run.plan__list__item {
					opacity: 1;
					transform: translateY(0px);
				}
					.plan__list__item__heading {
						display: flex;
						justify-content: center;
						align-items: center;
						width: calc((230 / 270) * 100%);
						height: 63px;
						padding: 0 0 1px;
						position: absolute;
						top: -30px;
						left: 50%;
						/* transform: translateX(-50%); */

						opacity: 0;
						transform: translate(-50%, 10px);
						transition: .8s;
					}
					._planA .plan__list__item__heading {
						background-color: var(--color--blue);
						transition-delay: .1s;
					}
					._planB .plan__list__item__heading {
						background-color: var(--color--red);
						transition-delay: .2s;
					}
					._planC .plan__list__item__heading {
						background-color: var(--color--green);
						transition-delay: .3s;
					}
					._planD .plan__list__item__heading {
						background-color: var(--color--purple);
						transition-delay: .4s;
					}
					.run .plan__list__item__heading {
						opacity: 1;
						transform: translate(-50%, 0px);
					}
						.plan__list__item__heading::after {
							content: '';
							width: 0;
							height: 0;
							border-left: 10px solid transparent;
							border-right: 10px solid transparent;
							border-top: 13px solid;
							position: absolute;
							bottom: 1px;
							left: 50%;
							transform: translate(-50%, 100%);
						}
						._planA .plan__list__item__heading::after {
							border-top-color: var(--color--blue);
						}
						._planB .plan__list__item__heading::after {
							border-top-color: var(--color--red);
						}
						._planC .plan__list__item__heading::after {
							border-top-color: var(--color--green);
						}
						._planD .plan__list__item__heading::after {
							border-top-color: var(--color--purple);
						}
						.plan__list__item__heading__txt {
							width: 100%;
							height: auto;
							font-size: 16px;
							font-weight: 500;
							line-height: calc(20 / 16);
							text-align: center;
							color: var(--color--white);
						}
							.plan__list__item__heading__txt small {
								font-size: 13px;
							}
					.plan__list__item__contents {
						width: 100%;
						height: auto;
					}
						.plan__list__item__contents__plan_name {
							width: 100%;
							height: auto;
							margin: 0 auto 19px;
							font-size: 26px;
							font-weight: 700;
							line-height: 1;
							text-align: center;
						}
						._planA .plan__list__item__contents__plan_name {
							color: var(--color--blue);
						}
						._planB .plan__list__item__contents__plan_name {
							color: var(--color--red);
						}
						._planC .plan__list__item__contents__plan_name {
							color: var(--color--green);
						}
						._planD .plan__list__item__contents__plan_name {
							color: var(--color--purple);
						}
						.plan__list__item__contents__initial_cell,
						.plan__list__item__contents__monthly_cell {
							width: 100%;
							height: auto;
						}
						.plan__list__item__contents__initial_cell {
							padding: 0 0 13px;
						}
						.plan__list__item__contents__monthly_cell {
							padding: 19px 0 26px;
						}
							.plan__list__item__contents__initial_price_name,
							.plan__list__item__contents__monthly_price_name {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								height: auto;
								font-size: 14px;
								font-weight: 700;
								line-height: 1.5;
								text-align: center;
								color: var(--color--black);
							}
							.plan__list__item__contents__initial_price_name {
								margin: 0 auto -1px;
							}
							.plan__list__item__contents__monthly_price_name {
								margin: 0 auto -4px;
							}
								.plan__list__item__contents__initial_price_name::before,
								.plan__list__item__contents__initial_price_name::after,
								.plan__list__item__contents__monthly_price_name::before,
								.plan__list__item__contents__monthly_price_name::after {
									content: '';
									width: 1px;
									height: 13px;
									background-color: var(--color--black);
								}
								.plan__list__item__contents__initial_price_name::before,
								.plan__list__item__contents__monthly_price_name::before {
									transform: rotate(-27deg);
									margin-right: 7px;
								}
								.plan__list__item__contents__initial_price_name::after,
								.plan__list__item__contents__monthly_price_name::after {
									transform: rotate(27deg);
									margin-left: 7px;
								}
							.plan__list__item__contents__initial_price {
								padding-left: 16px;
								font-size: 50px;
								font-weight: 700;
								line-height: 57px;
								text-align: center;
								color: var(--color--black);
							}
								.plan__list__item__contents__initial_price span {
									display: inline-block;
									letter-spacing: -0.03em;
								}
								.plan__list__item__contents__initial_price small {
									display: inline-block;
									margin-left: 1px;
									font-size: 24px;
									font-weight: 900;
									line-height: 1;
									position: relative;
									top: -2px;
								}
							._planA .plan__list__item__contents__initial_price {
								color: var(--color--blue);	
							}
							._planB .plan__list__item__contents__initial_price {
								color: var(--color--red);
							}
							._planC .plan__list__item__contents__initial_price {
								color: var(--color--green);
							}
							._planD .plan__list__item__contents__initial_price {
								color: var(--color--purple);
							}
							.plan__list__item__contents__monthly_price {
								font-size: 40px;
								font-weight: 700;
								line-height: 57px;
								text-align: center;
								color: var(--color--gray);
								position: relative;
								z-index: 2;
							}
								.plan__list__item__contents__monthly_price span {
									display: inline-block;
									letter-spacing: -0.03em;
								}
								.plan__list__item__contents__monthly_price small {
									display: inline-block;
									margin-left: 1px;
									font-size: 20px;
									font-weight: 900;
									line-height: 1;
									position: relative;
									top: -1px;
								}
								.plan__list__item__contents__monthly_price::after {
									content: '';
									display: block;
									width: 150px;
									height: 22px;
									background-color: var(--color--white);
									position: absolute;
									bottom: 2px;
									left: 50%;
									transform: translateX(-50%) skew(-15deg);
									z-index: -1;
								}
						.plan__list__item__contents__line {
							width: calc(100% - 40px);
							height: 1px;
							margin: 0 auto;
							background-color: var(--color--white);
						}
						.plan__list__item__contents__deliverables {
							width: calc(100% - 60px);
							height: auto;
							padding: 18px 0 20px;
							margin: 0 auto;
						}
							.plan__list__item__contents__deliverables__ttl {
								width: 100%;
								height: auto;
								padding: 5px 0 6px;
								margin: 0 auto 12px;
								background-color: var(--color--white);
								font-size: 14px;
								font-weight: 700;
								line-height: calc(22 / 14);
								text-align: center;
								color: var(--color--black);
							}
							.plan__list__item__contents__deliverables__content {
								width: 100%;
								height: auto;
								font-size: 28px;
								font-weight: 700;
								line-height: 1;
								letter-spacing: 0.03em;
								text-align: center;
							}
							._planA .plan__list__item__contents__deliverables__content {
								color: var(--color--blue);
							}
							._planB .plan__list__item__contents__deliverables__content {
								color: var(--color--red);
							}
							._planC .plan__list__item__contents__deliverables__content {
								color: var(--color--green);
							}
							._planD .plan__list__item__contents__deliverables__content {
								color: var(--color--purple);
							}
							.plan__list__item__contents__deliverables__list {
								width: 145px;
								height: auto;
								margin: 9px auto 0;
								font-size: 13px;
								font-weight: 500;
								line-height: calc(22 / 13);
							}
							._planA .plan__list__item__contents__deliverables__list {
								color: var(--color--blue);
							}
							._planB .plan__list__item__contents__deliverables__list {
								color: var(--color--red);
							}
							._planC .plan__list__item__contents__deliverables__list {
								color: var(--color--green);
							}
							._planD .plan__list__item__contents__deliverables__list {
								color: var(--color--purple);
							}
								.plan__list__item__contents__deliverables__list__item {
									width: 100%;
									height: auto;
									padding-left: 14px;
									position: relative;
								}
									.plan__list__item__contents__deliverables__list__item::before,
									.plan__list__item__contents__deliverables__list__item::after {
										content: '';
										display: block;
										border-radius: 9999px;
										position: absolute;
									}
									.plan__list__item__contents__deliverables__list__item::before {
										width: 10px;
										height: 10px;
										top: 7px;
										left: 0;
										z-index: 1;
									}
									._planA .plan__list__item__contents__deliverables__list__item::before {
										background-color: var(--color--blue);
									}
									._planB .plan__list__item__contents__deliverables__list__item::before {
										background-color: var(--color--red);
									}
									._planC .plan__list__item__contents__deliverables__list__item::before {
										background-color: var(--color--green);
									}
									._planD .plan__list__item__contents__deliverables__list__item::before {
										background-color: var(--color--purple);
									}
									.plan__list__item__contents__deliverables__list__item::after {
										width: 4px;
										height: 4px;
										background-color: var(--color--white);
										top: 10px;
										left: 3px;
										z-index: 2;
									}
							.plan__list__item__contents__deliverables__support {
								width: 140px;
								height: auto;
								padding: 6px 0;
								margin: 13px auto 0;
								background-color: var(--color--white);
								font-size: 14px;
								font-weight: 700;
								line-height: calc(22 / 14);
								text-align: center;
							}
							._planA .plan__list__item__contents__deliverables__support {
								border: solid 1px var(--color--blue);
								color: var(--color--blue);
							}
							._planB .plan__list__item__contents__deliverables__support {
								border: solid 1px var(--color--red);
								color: var(--color--red);
							}
							._planC .plan__list__item__contents__deliverables__support {
								border: solid 1px var(--color--green);
								color: var(--color--green);
							}
							._planD .plan__list__item__contents__deliverables__support {
								border: solid 1px var(--color--purple);
								color: var(--color--purple);
							}
			.plan__note {
				width: 100%;
				height: auto;
				margin: 5px auto 0;
				font-size: 12px;
				font-weight: 700;
				line-height: calc(22 / 12);
				text-align: right;
				color: var(--color--black);

				opacity: 0;
				transform: translateY(20px);
				transition: .8s;
			}
			.run.plan__note {
				opacity: 1;
				transform: translateY(0px);
			}

#option {
	width: 100%;
	height: auto;
	padding: 90px 0 136px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
	.option__obj_01 {
		width: calc((494 / 1280) * 100%);
		height: auto;
		opacity: .2;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.option__obj_02 {
		width: calc((303 / 1280) * 100%);
		height: auto;
		opacity: .3;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 1;
	}
	.option__inner {
		width: 90%;
		max-width: 1070px;
		height: auto;
		margin: 0 auto;
		position: relative;
		z-index: 2;
	}
		#option .section__heading {
			margin: 0 auto 34px;
		}
		.option__contents {
			width: 100%;
			height: auto;
		}
					.option__swiper .swiper-slide {
						width: 100%;
						height: auto;
					}
						.option__swiper__item {
							width: 100%;
							height: auto;
							filter: drop-shadow(0 3px 6px rgba(0, 0, 0, .15));
						}
							.option__swiper__item__ttl {
								width: 100%;
								height: auto;
								padding: 12px 0;
								border-radius: 3px 3px 0 0;
								background-color: var(--color--black);
							}
								.option__swiper__item__ttl__txt {
									font-size: 20px;
									font-weight: 700;
									line-height: 1;
									text-align: center;
									color: var(--color--white);
								}
							.option__swiper__item__contents {
								width: 100%;
								height: auto;
								padding: 0;
								background-color: var(--color--white);
								background-image: linear-gradient(#F3F3F3 1px, transparent 1px),
												  linear-gradient(90deg, #F3F3F3 1px, transparent 1px);
								background-size: 15px 15px;
								background-position: center center;
							}
								.option__swiper__item__contents__price {
									display: flex;
									justify-content: center;
									align-items: center;
									width: calc(100% - 36px);
									height: auto;
									padding: 34px 0 25px 12px;
									margin: 0 auto;
									border-bottom: solid 1px var(--color--black);
								}
									.option__swiper__item__contents__price__wrap {
										display: flex;
										justify-content: center;
										align-items: center;

										overflow: hidden;
									}
										.option__swiper__item__contents__price__label {
											-webkit-writing-mode: vertical-rl;
											-moz-writing-mode: vertical-rl;
											-ms-writing-mode: tb-rl;
											-ms-writing-mode: vertical-rl;
											writing-mode: vertical-rl;
											margin-right: 3px;
											font-size: 21px;
											font-weight: 900;
											line-height: 1;
											letter-spacing: 0.04em;
											text-align: center;
											color: var(--color--red);
											position: relative;
											top: 1px;

											opacity: 0;
											transform: translateY(120px);
											transition: .8s;
										}
										.run .option__swiper__item__contents__price__label {
											opacity: 1;
											transform: translateY(0px);
										}
										.option__swiper__item__contents__price__price {
											color: var(--color--red);

											opacity: 0;
											transform: translateY(120px);
											transition: .8s;
										}
										.run .option__swiper__item__contents__price__price {
											opacity: 1;
											transform: translateY(0px);
										}
											.option__swiper__item__contents__price__price span {
												display: inline-block;
												margin-right: 2px;
												font-size: 50px;
												font-weight: 700;
												line-height: 57px;
												letter-spacing: -0.03em;
											}
											.option__swiper__item__contents__price__price small {
												display: inline-block;
												font-size: 24px;
												font-weight: 900;
												line-height: 1;
												position: relative;
												top: -2px;
											}
								.option__swiper__item__contents__details {
									display: flex;
									flex-direction: column;
									justify-content: center;
									align-items: center;
									width: calc(100% - 36px);
									height: 136px;
									margin: 0 auto;
								}
									.option__swiper__item__contents__details__txt {
										width: 100%;
										height: auto;
										font-size: 14px;
										font-weight: 700;
										line-height: 1.8;
										color: var(--color--black);
										text-align: center;
									}
									.option__swiper__item__contents__details__list {
										display: flex;
										justify-content: center;
										align-items: center;
										flex-wrap: wrap;
										column-gap: calc((20 / 298) * 100%);
										row-gap: 2px;
										width: 100%;
										height: auto;
										margin: 2px auto 0;
									}
										.option__swiper__item__contents__details__list__item {
											padding-left: 14px;
											font-size: 16px;
											font-weight: 500;
											line-height: calc(22 / 16);
											color: var(--color--red);
											position: relative;
										}
											.option__swiper__item__contents__details__list__item::before,
											.option__swiper__item__contents__details__list__item::after {
												content: '';
												display: block;
												border-radius: 9999px;
												position: absolute;
											}
											.option__swiper__item__contents__details__list__item::before {
												width: 10px;
												height: 10px;
												background-color: var(--color--red);
												top: 9px;
												left: 0;
												z-index: 1;
											}
											.option__swiper__item__contents__details__list__item::after {
												width: 4px;
												height: 4px;
												background-color: var(--color--white);
												top: 12px;
												left: 3px;
												z-index: 2;
											}
			.option__note {
				width: 100%;
				height: auto;
				margin: 12px auto 0;
				font-size: 12px;
				font-weight: 700;
				line-height: calc(22 / 12);
				text-align: right;
				color: var(--color--black);

				opacity: 0;
				transform: translateY(20px);
				transition: .8s;
			}
			.run .option__note {
				opacity: 1;
				transform: translateY(0px);
			}

#flow {
	width: 100%;
	height: auto;
	padding: 80px 0 120px;
	border-radius: 70px 70px 0 0;
	background-color: var(--color--white);
	margin-top: -70px;
	position: relative;
	z-index: 2;
	overflow: hidden;
}
	.flow__inner {
		width: 90%;
		max-width: 1000px;
		height: auto;
		margin: 0 auto;
	}
		#flow .section__heading {
			margin: 0 auto 104px;
		}
		.flow__contents {
			width: 100%;
			height: auto;
		}
			.flow__swiper {
				width: calc((235 / 1000) * 100%);
				height: auto;
				margin: 0 auto 92px;
				overflow: initial;
			}
				.flow__swiper .swiper-wrapper {
					width: 100%;
					height: auto;
				}
					.flow__swiper .swiper-slide {
						width: 100%;
						height: auto;
						transition: transform 0.6s;
						transform: scale(1);
					}
					.flow__swiper .swiper-slide.swiper-slide-active {
						transform: scale(1.15);
					}
						.flow__swiper__item {
							width: 100%;
							height: auto;
							position: relative;

							opacity: 0;
							transform: translateY(20px);
							transition: .8s;
						}
						.flow__swiper .swiper-slide:nth-of-type(2) .flow__swiper__item {
							transition-delay: .2s;
						}
						.flow__swiper .swiper-slide:nth-of-type(3) .flow__swiper__item {
							transition-delay: .3s;
						}
						.flow__swiper .swiper-slide:nth-of-type(4) .flow__swiper__item {
							transition-delay: .4s;
						}
						.flow__swiper .swiper-slide:nth-of-type(5) .flow__swiper__item {
							transition-delay: .5s;
						}
						.flow__swiper .swiper-slide:nth-of-type(6) .flow__swiper__item {
							transition-delay: .6s;
						}
						.flow__swiper .swiper-slide:nth-of-type(7) .flow__swiper__item {
							transition-delay: .7s;
						}
						.run .flow__swiper__item {
							opacity: 1;
							transform: translateY(0px);
						}
							.flow__swiper__item::after {
								content: '';
								display: block;
								width: 20px;
								height: 13.08px;
								background-image: url('../image/flow-icon_arrow.svg');
								background-size: 100% 100%;
								background-repeat: no-repeat;
								background-position: center;
								position: absolute;
								top: calc((149 / 320) * 100%);
								right: calc((63 / 235) * -100%);
								z-index: 1;
							}
							.flow__swiper__item__number {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 53px;
								height: 42px;
								padding: 0 2px 0 0;
								border-radius: 3px;
								margin: 0 auto;
								background-color: #BABABA;
								transition: background-color .6s;
							}
							.swiper-slide-active .flow__swiper__item__number {
								background-color: var(--color--red);
							}
								.flow__swiper__item__number__txt {
									font-family: "Barlow", sans-serif;
									font-weight: 700;
									font-style: italic;
									font-size: 24px;
									line-height: 1;
									color: var(--color--white);
								}
							.flow__swiper__item__image {
								width: 100%;
								height: auto;
								margin: 0 auto 12px;
							}
							.flow__swiper__item__details {
								width: 100%;
								height: auto;
							}
								.flow__swiper__item__details dt {
									width: 100%;
									height: auto;
									margin: 0 auto 15px;
									font-size: 18px;
									font-weight: 700;
									line-height: calc(20 / 18);
									color: var(--color--red);
									text-align: center;
									white-space: nowrap;
								}
								.flow__swiper__item__details dd {
									display: flex;
									justify-content: center;
									width: 100%;
									height: auto;
									font-size: 14px;
									font-weight: 500;
									line-height: calc(22 / 13);
									color: var(--color--black);
									text-align: center;
									white-space: nowrap;
								}
			.flow__swiper__controls_wrap {
				display: flex;
				justify-content: center;
				align-items: center;

				opacity: 0;
				transform: translateY(20px);
				transition: .8s;
			}
			.run .flow__swiper__controls_wrap {
				opacity: 1;
				transform: translateY(0px);
			}
				.flow__swiper__controls {
					display: flex;
					justify-content: space-between;
					align-items: center;
					column-gap: 16px;
					width: auto;
					height: 60px;
					padding: 9px;
					border-radius: 30px;
					border: solid 1px var(--color--black);
				}
					.flow__swiper__pagination {
						counter-reset: number 0;
						display: flex;
						justify-content: center;
						align-items: center;
						column-gap: 12px;
						width: auto !important;
						height: auto !important;
						margin: initial;
						position: initial;
					}
						.flow__swiper__pagination .swiper-pagination-bullet {
							display: block;
							width: auto !important;
							height: auto !important;	
							margin: 0 !important;
							background: initial;
							font-size: 20px;
							font-weight: 700;
							line-height: 1;
							color: #BABABA;
							opacity: 1 !important;
							transition: color .6s;
						}
					@media (any-hover: hover) {
						.flow__swiper__pagination .swiper-pagination-bullet:hover {
							color: var(--color--black);
						}
					}
						.flow__swiper__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
							color: var(--color--black);
						}
							.flow__swiper__pagination .swiper-pagination-bullet::before {
								counter-increment: number 1;
								content: counter(number) '';
							}
					.flow__swiper__button_prev,
					.flow__swiper__button_next {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 40px;
						height: 40px;
						border-radius: 9999px;
						background-color: var(--color--black);
						position: initial;
						margin: initial;
						transition: background-color .6s;
					}
					.flow__swiper__button_prev {
						left: 0;
					}
					.flow__swiper__button_next {
						right: 0;
					}
				@media (any-hover: hover) {
					.flow__swiper__button_prev:hover,
					.flow__swiper__button_next:hover {
						background-color: var(--color--red);
					}
				}
					.flow__swiper__button_next.swiper-button-disabled,
					.flow__swiper__button_prev.swiper-button-disabled {
						opacity: 1 !important;
						background-color: #D9D9D9;
					}
						.flow__swiper__button-prev::after,
						.flow__swiper__button-next::after {
							content: '';
							display: none;
						}
						.flow__swiper__button_next svg,
						.flow__swiper__button_prev svg {
							fill: var(--color--white);
							transition: fill .6s;
						}
						.flow__swiper__button_next.swiper-button-disabled svg,
						.flow__swiper__button_prev.swiper-button-disabled svg {
							fill: var(--color--black);
						}

#achievement {
	width: 100%;
	height: auto;
	padding: 74px 0 50px;
}
	.achievement__inner {
		width: 95%;
		max-width: 1200px;
		height: auto;
		margin: 0 auto;
	}
		.achievement__container {
			display: flex;
			justify-content: space-between;
			align-items: stretch;
			width: 100%;
			height: auto;
			padding: 0 0 0 calc((98 / 1200) * 100%);
			border-radius: 5px;
			background-color: #353434;
			overflow: hidden;
			position: relative;
		}
			.achievement__obj {
				width: calc((406 / 1200) * 100%);
				height: auto;
				opacity: .04;
				position: absolute;
				bottom: 0;
				left: 0;
				z-index: 1;
			}
			.achievement__contents {
				width: 342px;
				height: auto;
				padding: 86px 0 105px;
				position: relative;
				z-index: 2;
			}
				#achievement .section__heading {
					margin: 0 auto 76px;
				}
					#achievement .section__heading__txt {
						color: var(--color--white);
					}
						#achievement .section__heading__corner::before,
						#achievement .section__heading__corner::after {
							background-color: var(--color--white);
						}
				.achievement__copy {
					width: 100%;
					height: auto;
					margin: 0 auto 42px;
					font-size: 26px;
					font-weight: 900;
					line-height: 1.8;
					color: var(--color--white);

					opacity: 0;
					transform: translateY(20px);
					transition: .8s;
					transition-delay: .4s;
				}
				.run .achievement__copy {
					opacity: 1;
					transform: translateY(0px);
				}
				.achievement__txt {
					width: 100%;
					height: auto;
					font-size: 14px;
					font-weight: 700;
					line-height: 1.9;
					color: var(--color--white);

					opacity: 0;
					transform: translateY(20px);
					transition: .8s;
					transition-delay: .6s;
				}
				.run .achievement__txt {
					opacity: 1;
					transform: translateY(0px);
				}
			.achievement__images {
				flex: 1;
				height: auto;
				position: relative;
				overflow: hidden;
			}
				.achievement__images__column_wrap {
					width: calc((288 / 757) * 100%);
					height: 100%;
					position: absolute;
					top: 0;
					transform: rotate(-15deg);
				}
				.achievement__images__column_wrap:first-child {
					left: calc((159 / 757) * 100%);
				}
				.achievement__images__column_wrap:last-child {
					right: calc((20 / 757) * -100%);
				}
					.achievement__images__column {
						width: 100%;
						height: auto;

						opacity: 0;
						transition: .8s;
					}
					.run .achievement__images__column {
						opacity: 1;
					}
					.achievement__images__column_wrap:first-child .achievement__images__column {
						animation: scrollUp 60s linear infinite;
					}
					.achievement__images__column_wrap:last-child .achievement__images__column {
						animation: scrollDown 42.272s linear infinite;
					}
						.achievement__images__column__item {
							width: 100%;
							height: auto;
							margin-bottom: 30px;
						}
					@keyframes scrollUp {
						0% {
							transform: translateY(0);
						}
						100% {
							transform: translateY(-50%);
						}
					}
					@keyframes scrollDown {
						0% {
							transform: translateY(-50%);
						}
						100% {
							transform: translateY(0%);
						}
					}

#faq {
	width: 100%;
	height: auto;
	padding: 50px 0 90px;
}
	.faq__inner {
		width: 90%;
		max-width: 1000px;
		height: auto;
		margin: 0 auto;
	}
		#faq .section__heading {
			margin: 0 auto 42px;
		}
		.faq__contents {
			width: 100%;
			height: auto;
		}
			.faq__list {
				display: flex;
				flex-direction: column;
				justify-content: flex-start;
				align-items: stretch;
				row-gap: 2px;
				width: 100%;
				height: auto;
			}
				.faq__list__item {
					width: 100%;
					height: auto;

					opacity: 0;
					transform: translateY(20px);
					transition: .8s;
				}
				.faq__list__item:nth-of-type(2) {
					transition-delay: .1s;
				}
				.faq__list__item:nth-of-type(3) {
					transition-delay: .2s;
				}
				.faq__list__item:nth-of-type(4) {
					transition-delay: .3s;
				}
				.faq__list__item:nth-of-type(5) {
					transition-delay: .4s;
				}
				.faq__list__item:nth-of-type(6) {
					transition-delay: .5s;
				}
				.faq__list__item:nth-of-type(7) {
					transition-delay: .6s;
				}
				.faq__list__item:nth-of-type(8) {
					transition-delay: .7s;
				}
				.faq__list__item:nth-of-type(9) {
					transition-delay: .8s;
				}
				.faq__list__item:nth-of-type(10) {
					transition-delay: .9s;
				}
				.run .faq__list__item {
					opacity: 1;
					transform: translateY(0px);
				}
					.faq__list__item__q,
					.faq__list__item__a {
						width: 100%;
						height: auto;
						padding: 22px 80px 22px 26px;
						position: relative;
						cursor: pointer;
					}
					.faq__list__item__q {
						background-color: var(--color--white);
						color: var(--color--black);
					}
					.faq__list__item__a {
						display: none;
						background-color: var(--color--red);
						color: var(--color--white);
					}
						.faq__list__item__q::before,
						.faq__list__item__q::after {
							content: '';
							display: block;
							background-color: #454545;
							position: absolute;
							top: 50%;
							right: 40px;
							transform: translate(50%, -50%);
						}
						.faq__list__item__q::before {
							width: 20px;
							height: 1px;
						}
						.faq__list__item__q::after {
							width: 1px;
							height: 20px;
							transition: .3s;
						}
						.faq__list__item__q.active::after {
							transform: translate(50%, -50%) rotate(-90deg);
						}
						.faq__list__item__q__inner,
						.faq__list__item__a__inner {
							display: flex;
							justify-content: space-between;
							align-items: center;
							column-gap: 30px;
							width: 100%;
							height: auto;
						}
							.faq__list__item__q__icon,
							.faq__list__item__a__icon {
								display: block;
								width: 42px;
								height: 42px;
								padding: 0 0 1px 0;
								border-radius: 9999px;
								font-family: "Oswald", sans-serif;
								font-size: 23px;
								font-weight: 300;
								line-height: 42px;
								text-align: center;
							}
							.faq__list__item__q__icon {
								background-color: var(--color--black);
								color: var(--color--white);
							}
							.faq__list__item__q__txt {
								display: inline-block;
								flex: 1;
							}
							.faq__list__item__a__icon {
								background-color: var(--color--white);
								color: var(--color--black);
							}
							.faq__list__item__a__txt {
								flex: 1;
								display: inline-block;
							}

#contact {
	width: 100%;
	height: auto;
	padding: 74px 0 68px;
	background-color: var(--color--red);
	position: relative;
	overflow: hidden;
}
	.contact__obj_01 {
		width: calc((406 / 1280) * 100%);
		height: auto;
		opacity: .06;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 1;
	}
	.contact__obj_02 {
		width: 125.22px;
		height: auto;
		opacity: .1;
		position: absolute;
		top: 50%;
		right: -7px;
		transform: translateY(-50%);
		z-index: 1;
	}
	.contact__inner {
		width: 90%;
		max-width: 1000px;
		height: auto;
		margin: 0 auto;
		position: relative;
		z-index: 2;
	}
		#contact .section__heading {
			margin: 0 auto 40px;
		}
			#contact .section__heading__txt {
				color: var(--color--white);
			}
			#contact .section__heading__corner::before,
			#contact .section__heading__corner::after {
				background-color: var(--color--white);
			}
		.contact__contents {
			width: 100%;
			height: auto;
		}
			.contact__contents__heading {
				width: 570px;
				height: auto;
				padding: 18px 0 20px;
				margin: 0 auto 44px;
				background-color: var(--color--white);
				position: relative;
			}
				.contact__contents__heading::after {
					content: '';
					width: 0;
					height: 0;
					border-left: 9.5px solid transparent;
					border-right: 9.5px solid transparent;
					border-top: 17px solid var(--color--white);
					position: absolute;
					bottom: 1px;
					left: 50%;
					transform: translate(-50%, 100%);
				}
				.contact__contents__heading__txt {
					width: 100%;
					height: auto;
					font-size: 25px;
					font-weight: 900;
					line-height: 1.4;
					letter-spacing: 0.05em;
					text-align: center;
					color: var(--color--black);
				}
			.contact__contents__list {
				display: grid;
				grid-template-columns: repeat(2, 1fr);
				column-gap: 12px;
				width: 70%;
				height: auto;
				margin: 0 auto 38px;
			}
				.contact__contents__list__item {
					width: 100%;
					height: auto;
				}
					.contact__contents__list__item__link {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: auto;
						padding: 18px 0 17px;
						border-radius: 9999px;
						background-color: var(--color--red);
						border: solid 2px var(--color--white);
						font-size: 20px;
						font-weight: 900;
						line-height: 1.4;
						color: var(--color--white);
						position: relative;
					}
					.contact__contents__list__item:nth-of-type(1) .contact__contents__list__item__link {
						padding-right: 15px;
					}
					.contact__contents__list__item__link__arrow {
						display: block;
						width: 14px;
						height: auto;
						position: absolute;
						top: 50%;
						right: calc((25 / 350) * 100%);
						transform: translateY(-50%);
					}
						.contact__contents__list__item__link__arrow svg {
							fill: var(--color--white);
						}
				@media (any-hover: hover) {
					.contact__contents__list__item__link {
						transition: .3s;
					}		
					.contact__contents__list__item__link:hover {
						background-color: var(--color--white);
						color: var(--color--red);
					}
						.contact__contents__list__item__link__arrow svg {
							transition: .3s;
						}
						.contact__contents__list__item__link:hover .contact__contents__list__item__link__arrow svg {
							fill: var(--color--red);
						}
				}
			.contact__contents__tel {
				display: flex;
				justify-content: center;
				align-items: center;
				flex-wrap: wrap;
				width: 500px;
				height: auto;
				margin: 0 auto;
			}
				.contact__contents__tel__icon {
					display: flex;
					align-items: flex-end;
					width: 40px;
					height: auto;
					padding-top: 5px;
					margin-right: 20px;
				}
					.contact__contents__tel__icon svg {
						width: 100%;
						height: auto;
						fill: var(--color--white);
					}
				.contact__contents__tel__txt {
					font-size: 60px;
					font-weight: 700;
					line-height: 1;
					letter-spacing: 0.02em;
					color: var(--color--white);
					white-space: nowrap;
				}
					.contact__contents__tel__txt a {
						display: inline-block;
						color: var(--color--white);
					}
				.contact__contents__tel__note {
					width: 100%;
					height: auto;
					margin: 6px auto 0;
					font-size: 20px;
					font-weight: 900;
					line-height: 1.5;
					text-align: center;
					color: var(--color--white);
				}

#company {
	width: 100%;
	height: auto;
	padding: 85px 0 80px;
	position: relative;
	overflow: hidden;
}
	.company__obj {
		width: 144.26px;
		height: auto;
		position: absolute;
		top: -4px;
		left: -4px;
		opacity: .07;
		z-index: 1;
		filter: drop-shadow(0 0 10px rgba(0, 0, 0, .5));
	}
	.company__inner {
		width: 90%;
		max-width: 1000px;
		height: auto;
		margin: 0 auto;
		position: relative;
		z-index: 2;
	}
		.company__container {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			width: 100%;
			height: auto;
		}
			.company__heading {
				width: 275px;
				height: auto;
			}
			.company__contents {
				width: calc(100% - 365px);
				height: auto;
			}
				.company__info_list {
					width: 100%;
					height: auto;
					border-top: solid 1px var(--color--black);
				}
					.company__info_list__item {
						display: flex;
						justify-content: space-between;
						align-items: flex-start;
						width: 100%;
						height: auto;
						padding: 27px 0;

						opacity: 0;
						transform: translateY(20px);
						transition: .8s;
					}
					.company__info_list__item:not(:nth-of-type(1)) {
						border-top: solid 1px #BABABA;
					}
					.company__info_list__item:nth-of-type(2) {
						transition-delay: .1s;
					}
					.company__info_list__item:nth-of-type(3) {
						transition-delay: .2s;
					}
					.company__info_list__item:nth-of-type(4) {
						transition-delay: .3s;
					}
					.company__info_list__item:nth-of-type(5) {
						transition-delay: .4s;
					}
					.company__info_list__item:nth-of-type(6) {
						transition-delay: .5s;
					}
					.company__info_list__item:nth-of-type(7) {
						transition-delay: .6s;
					}
					.company__info_list__item:nth-of-type(8) {
						transition-delay: .7s;
					}
					.company__info_list__item:nth-of-type(9) {
						transition-delay: .8s;
					}
					.company__info_list__item:nth-of-type(10) {
						transition-delay: .9s;
					}
					.run .company__info_list__item {
						opacity: 1;
						transform: translateY(0px);
					}
						.company__info_list__item dt {
							width: calc((200 / 630) * 100%);
							min-width: 90px;
							height: auto;
							font-size: 14px;
							font-weight: 500;
							line-height: 1.5;
							letter-spacing: 0.01em;
							color: var(--color--black);
						}
						.company__info_list__item dd {
							flex: 1;
							height: auto;
							font-size: 14px;
							font-weight: 500;
							line-height: 1.5;
							letter-spacing: 0.01em;
							color: var(--color--black);
						}

/* PC ================================================== */
@media all and (min-width: 769px) and (max-width: 1279px) {
/* hero */
#hero {
	min-height: initial;
}
	.hero__inner {
		width: 100%;
		height: calc((901 / 1280) * 100vw);
	}
			.hero__visual__image._01 {
				filter: drop-shadow(calc((7 / 1280) * 100vw) calc((14 / 1280) * 100vw) calc((34 / 1280) * 100vw) rgba(55, 55, 56, 0.20));
				top: calc((85 / 1280) * 100vw);
				left: calc((208 / 1280) * -100vw);
				transform: rotate(4.458deg) translate(-0.3vw, -3vw);
			}
			.hero__visual__image._02 {
				filter: drop-shadow(calc((23 / 1280) * -100vw) calc((54 / 1280) * 100vw) calc((34 / 1280) * 100vw) rgba(55, 55, 56, 0.20));
				top: calc((326 / 1280) * 100vw);
				right: calc((30 / 1280) * -100vw);
				transform: rotate(19deg) translate(-1.2vw, -3vw);
			}
		.hero__contents {
			width: calc((540 / 1280) * 100vw);
			top: calc((217 / 1280) * 100vw);
			left: calc((660 / 1280) * 100%);
		}
			.hero__contents__price_wrap {
				padding: calc((5 / 1280) * 100vw) calc((25 / 1280) * 100vw) calc((5 / 1280) * 100vw) calc((16 / 1280) * 100vw);
				margin-bottom: calc((16 / 1280) * 100vw);
			}
				.hero__contents__price_wrap__inner {
					transform: translateY(5vw);
				}
					.hero__contents__price__label {
						margin-right: calc((3 / 1280) * 100vw);
						font-size: var(--15px);
						top: calc((2 / 1280) * -100vw);
					}
					.hero__contents__price__main {
						margin-right: calc((3 / 1280) * 100vw);
					}
						.hero__contents__price__main span {
							margin-right: calc((3 / 1280) * 100vw);
							font-size: var(--36px);
						}
						.hero__contents__price__main small {
							font-size: var(--25px);
							top: calc((1 / 1280) * -100vw);
						}
					.hero__contents__price__txt {
						padding-bottom: calc((4 / 1280) * 100vw);
						font-size: var(--25px);
					}
			.hero__contents__copy_wrap {
				margin-bottom: calc((23 / 1280) * 100vw);
			}
				.hero__contents__copy {
					font-size: var(--48px);
				}
					.hero__contents__copy__bg {
						padding: calc((4 / 1280) * 100vw) calc((10 / 1280) * 100vw) calc((4 / 1280) * 100vw);
						margin-bottom: calc((8 / 1280) * -100vw);
					}
						.hero__contents__copy__bg__inner {
							transform: translateY(5vw);
						}
				.hero__contents__keyword_list {
					row-gap: var(--10px);
					column-gap: var(--9px);
				}
					.hero__contents__keyword_list__item {
						padding: 0 calc((11 / 1280) * 100vw);
						border-radius: calc((3 / 1280) * 100vw);
						font-size: var(--14px);
					}
}

@media all and (min-width: 769px){
/* hero */
						.hero__contents__copy__bg:last-of-type::before {
							width: calc(100% - 20px);
						}

/* trouble */
				.trouble__table__column {
					opacity: 0;
					transform: translateX(-20px);
					transition: .8s;
				}
				.trouble__table__column._bandix {
					opacity: 0;
					filter: drop-shadow(0 0 7px rgba(55, 55, 56, 0));
					transform: translateX(-20px) scale(1);
					transition: .8s;
				}
				.trouble__table__column:nth-of-type(2) {
					transition-delay: .1s;
				}
				.trouble__table__column:nth-of-type(3) {
					transition-delay: .2s;
				}
				.trouble__table__column:nth-of-type(4) {
					transition-delay: .3s;
				}
				.run .trouble__table__column {
					opacity: 1;
					transform: translateX(0px);
				}
				.run .trouble__table__column._bandix {
					opacity: 1;
					transform: translateX(0px);
				}
				.trouble__table__column._bandix._active {
					transform: scale(1.02);
					filter: drop-shadow(0 0 7px rgba(55, 55, 56, 0.3));
					transition: .5s;
					transition-delay: 0s;
				}
					.trouble__table__head__item {
						opacity: 0;
						transform: translateY(20px);
						transition: .5s;
					}
					.run .trouble__table__head__item {
						opacity: 1;
						transform: translateY(0px);
					}
					.trouble__table__head__item:nth-of-type(2) {
						transition-delay: .15s;
					}
					.trouble__table__head__item:nth-of-type(3) {
						transition-delay: .2s;
					}
					.trouble__table__head__item:nth-of-type(4) {
						transition-delay: .25s;
					}

/* option */
			.option__swiper {
				width: 100%;
				height: auto;
				overflow: initial;
			}
				.option__swiper .swiper-wrapper {
					display: grid;
					grid-template-columns: repeat(3, 1fr);
					column-gap: 34px;
					row-gap: 48px;
					width: 100%;
					height: auto;
				}
						.option__swiper__item {
							opacity: 0;
							transform: translateY(20px);
							transition: .8s;
						}
						.option__swiper .swiper-slide:nth-of-type(2) .option__swiper__item {
							transition-delay: .2s;
						}
						.option__swiper .swiper-slide:nth-of-type(3) .option__swiper__item {
							transition-delay: .3s;
						}
						.option__swiper .swiper-slide:nth-of-type(4) .option__swiper__item {
							transition-delay: .4s;
						}
						.option__swiper .swiper-slide:nth-of-type(5) .option__swiper__item {
							transition-delay: .5s;
						}
						.option__swiper .swiper-slide:nth-of-type(6) .option__swiper__item {
							transition-delay: .6s;
						}
						.run .option__swiper__item {
							opacity: 1;
							transform: translateY(0px);
						}
}

/* Tablet ================================================== */
@media all and (max-width: 768px){
/* hero */
	.hero__obj_01 {
		display: none;
	}
	.hero__obj_02 {
		width: 100%;
		height: calc((320 / 375) * 100vw);
	}
		.hero__obj_02 img {
			width: 100%;
			height: 100%;
		}
	.hero__obj_03 {
		width: calc((123.79 / 375) * 100vw);
		bottom: auto;
		top: 0;
		left: calc((15.75 / 375) * -100vw);
	}
	.hero__inner {
		height: calc(((590 / 375) * 100vw) + 56px);
	}
		.hero__visual {
			width: 100%;
		}
			.hero__visual__image._01 {
				width: calc((430.7 / 375) * 100%);
				filter: drop-shadow(calc((7 / 375) * 100vw) calc((14 / 375) * 100vw) calc((34 / 375) * 100vw) rgba(55, 55, 56, 0.20));
				/* transform: rotate(4.46deg); */
				top: calc((86.25 / 375) * 100vw);
				left: calc((15.9 / 375) * 100vw);

				transform: rotate(4.458deg) translate(-0.3vw, -3vw);
			}
			.hero__visual__image._02 {
				width: calc((210.78 / 375) * 100%);
				filter: drop-shadow(calc((22 / 375) * -100vw) calc((15 / 375) * 100vw) calc((34 / 375) * 100vw) rgba(55, 55, 56, 0.20));
				top: calc((326 / 1280) * 100vw);
				left: calc((30 / 1280) * -100vw);
			}
		.hero__contents {
			width: 100%;
			top: calc((340 / 375) * 100vw);
			left: 0;
			z-index: 2;
		}
			.hero__contents__price_wrap {
				padding: calc((2 / 375) * 100vw) calc((14 / 375) * 100vw) calc((2 / 375) * 100vw) calc((33 / 375) * 100vw);
				margin-bottom: 0;
			}
				.hero__contents__price_wrap__inner {
					transform: translateY(11vw);
				}
					.hero__contents__price__label {
						padding-bottom: calc((3.5 / 375) * 100vw);
						margin-right: calc((2 / 375) * 100vw);
						font-size: var(--13px);
						top: calc((1.5 / 375) * -100vw);
					}
					.hero__contents__price__main {
						margin-right: calc((2 / 375) * 100vw);
					}
						.hero__contents__price__main span {
							margin-right: calc((3 / 375) * 100vw);
							font-size: var(--33px);
							line-height: calc(41 / 33);
						}
						.hero__contents__price__main small {
							font-size: var(--20px);
							top: calc((0.5 / 375) * -100vw);
						}
					.hero__contents__price__txt {
						padding-bottom: calc((15 / 1280) * 100vw);
						font-size: var(--21px);
					}
			.hero__contents__copy_wrap {
				margin-bottom: calc((20 / 375) * 100vw);
				position: relative;
			}
				.hero__contents__copy_wrap::before {
					content: "";
					width: 100%;
					height: 100%;
					background-color: var(--color--white);
					position: absolute;
					top: 0;
					left: 0;
					z-index: -1;

					transform-origin: left top;
					transform: scale(0,1);
					transition: .5s var(--ease-out);
				}
				.loaded .hero__contents__copy_wrap::before {
					transform: scale(1,1);
				}
				.hero__contents__copy {
					font-size: var(--27px);
					line-height: var(--33px);
					position: relative;

					overflow: hidden;
				}
				.hero__contents__copy:nth-of-type(1) {
					padding: calc((4 / 375) * 100vw) calc((10 / 375) * 100vw) calc((0 / 375) * 100vw) calc((33 / 375) * 100vw);
				}
				.hero__contents__copy:nth-of-type(2) {
					padding: calc((0 / 375) * 100vw) calc((10 / 375) * 100vw) calc((0 / 375) * 100vw) calc((33 / 375) * 100vw);
				}
				.hero__contents__copy:nth-of-type(3) {
					padding: calc((0 / 375) * 100vw) calc((10 / 375) * 100vw) calc((11 / 375) * 100vw) calc((33 / 375) * 100vw);
				}
					.hero__contents__copy::before {
						display: none;
					}
					.hero__contents__copy__inner {
						display: inline-block;
						transform: translateY(150%);
						transition: .5s var(--ease-out);
						transition-delay: .5s;
					}
					.loaded .hero__contents__copy__inner {
						transform: translateY(0%);
					}
					.hero__contents__copy small {
						display: inline-block;
						margin-bottom: calc((2 / 375) * -100vw);
						font-size: var(--19px);
					}
						.hero__contents__copy__bg::before {
							display: none;
						}
			.hero__contents__keyword_list_wrap {
				width: 100%;
				overflow: hidden;
				position: relative;
			}
				.hero__contents__keyword_list {
					display: flex;
					flex-wrap: nowrap;
					row-gap: var(--10px);
					column-gap: var(--9px);
					animation: scroll_to_left 20s linear infinite;
				}
				.hero__contents__keyword_list._sp {
					display: flex;
					justify-content: flex-end;
					align-items: center;
					flex-wrap: nowrap;
					row-gap: var(--10px);
					column-gap: var(--9px);
					margin-top: var(--9px);
					animation: scroll_to_right 20s linear infinite;
				}
					.hero__contents__keyword_list__item {
						padding: calc((1 / 375) * 100vw) calc((8 / 375) * 100vw) calc((3 / 375) * 100vw);
						border-radius: calc((3 / 375) * 100vw);
						font-size: var(--13px);
						white-space: nowrap;
					}
					@keyframes scroll_to_left {
						0% {
							transform: translateX(0);
						}
						100% {
							transform: translateX(-100%);
						}
					}
					@keyframes scroll_to_right {
						0% {
							transform: translateX(0);
						}
						100% {
							transform: translateX(100%);
						}
					}

/* question */
	.question__inner {
		width: calc((300 / 375) * 100%);
		padding: 0 0 50px;
	}
		.question__heading {
			margin: 0 auto 20px;
		}
			.question__heading__txt {
				padding: 0;
				font-size: 24px;
				line-height: 1.4;
			}
				.question__heading__txt__inner_wrap {
					display: inline-block;
					overflow: hidden;
					position: relative;
				}
				.question__heading__txt__inner_wrap:nth-of-type(1) {
					margin-bottom: -7px;
				}
					.question__heading__txt__inner_wrap::after {
						content: '';
						display: block;
						width: 100%;
						height: 100%;
						background-color: var(--color--white);
						position: absolute;
						top: 0;
						left: 0;
						z-index: -1;

						transform: scale(0,1);
						transition: .5s var(--ease-out);
					}
					.run .question__heading__txt__inner_wrap::after {
						transform: scale(1,1);
					}
					.question__heading__txt__inner_wrap:nth-of-type(1) .question__heading__txt__inner {
						padding: 3px 6px 0;
					}
					.question__heading__txt__inner_wrap:nth-of-type(2) .question__heading__txt__inner {
						padding: 2px 4px 2px 7px;
					}
					.question__heading__txt::before {
						display: none;
					}
					.question__heading__txt .ls {
						margin-right: 0;
					}
		.question__txt {
			margin-bottom: 30px;
			font-size: 14px;
		}
			.question__list {
				display: flex;
				flex-direction: column;
			}
				.question__list__item {
					width: 100%;
					padding: 30px 0 30px;
					border-radius: 5px;
				}
				.question__list__item:nth-of-type(1) {
					border-radius: 5px;
				}
				.question__list__item:nth-of-type(3) {
					border-radius: 5px;
					padding-bottom: 15px;
				}
					.question__list__item__heading {
						width: calc((235 / 300) * 100%);
						margin: 0 auto;
					}
					.question__list__item__image {
						width: calc((235 / 300) * 100%);
					}

#trouble {
	padding: 50px 0 calc((95 / 375) * 100vw);
}
	.trouble__obj_01 {
		width: calc((272 / 375) * 100%);
	}
	.trouble__obj_02 {
		display: none;
	}
	.trouble__inner {
		width: 100%;
	}
		.trouble__heading {
			width: 100%;
			margin: 0 auto 30px;
		}
			.trouble__heading__txt {
				font-size: 24px;
			}
				.trouble__heading__txt strong {
					padding: 0px 5px 0px 7px;
					margin-right: 3px;
				}
					.trouble__heading__txt strong::before {
						height: 100%;
						top: 0;
					}
		.trouble__txt {
			width: 100%;
			margin: 0 auto 15px;
			font-size: 14px;
		}
		.trouble__table_wrap {
			width: calc((357 / 375) * 100%);
			padding: 15px 0;
			margin: 0 0 0 auto;
			overflow: auto;
			-ms-overflow-style: none;
			scrollbar-width: none
		}
		.trouble__table_wrap::-webkit-scrollbar {
			display: none;
		}
		.trouble__table_wrap::-moz-scrollbar {
			display: none;
		}
			.trouble__table {
				display: flex;
				justify-content: space-between;
				align-items: stretch;
				gap: 4px;
				width: 100%;
				min-width: 553px;
				padding-right: calc((18 / 375) * 100vw);
			}
				.trouble__table__head {
					width: calc((121 / 357) * 100%);
					min-width: 121px;

					opacity: 0;
					transform: translateX(-20px);
					transition: .8s;
				}
				.run .trouble__table__head {
					opacity: 1;
					transform: translateX(0);
				}
				.trouble__table__column {
					width: calc((134 / 357) * 100%);
					min-width: 134px;

					opacity: 0;
					transform: translateX(-20px);
					transition: .8s;
				}
				.trouble__table__column._bandix {
					background-color: #FAFAFA;
					/* filter: drop-shadow(0 0 5px rgba(55, 55, 56, 0.3)); */
					filter: drop-shadow(0 0 5px rgba(55, 55, 56, 0));

					transform: translateX(-20px) scale(1);
				}
				.run .trouble__table__column._bandix._active {
					filter: drop-shadow(0 0 5px rgba(55, 55, 56, 0.3));
					transition-delay: 0s;
				}
				.run .trouble__table__column {
					opacity: 1;
					transform: translateX(0) scale(1);
				}
				.trouble__table__column:nth-of-type(2) {
					transition-delay: .1s;
				}
				.trouble__table__column:nth-of-type(3) {
					transition-delay: .2s;
				}
				.trouble__table__column:nth-of-type(4) {
					transition-delay: .3s;
				}
					.trouble__table__head__block,
					.trouble__table__column__heading {
						height: 98px;
					}
					.trouble__table__column__heading {
						padding: 0;
					}
					._bandix .trouble__table__column__heading {
						padding: 0;
					}
						.trouble__table__column__heading__logo {
							width: calc((96.4 / 134) * 100%);
						}
						.trouble__table__column__heading__txt_main {
							margin-bottom: 0px;
							font-size: 16px;
						}
						.trouble__table__column__heading__txt_sub {
							font-size: 12px;
						}
					.trouble__table__head__item,
					.trouble__table__column__item {
						width: 100%;
						position: relative;
					}
						.trouble__table__head__item:not(:last-of-type)::before,
						.trouble__table__column__item:not(:last-of-type)::before {
							content: "";
							width: calc(100% - 16px);
							height: 1px;
							position: absolute;
							bottom: 1px;
							left: 8px;
						}
						.trouble__table__head__item::before {
							background-color: var(--color--white);
						}
						.trouble__table__column__item::before {
							background-color: #BABABA;
						}
					.trouble__table__head__item {
						flex-direction: column;
						justify-content: center;
						align-items: center;
						background-color: var(--color--red);
					}
					.trouble__table__head__item:not(:last-of-type) {
						border-bottom: none;
					}
						.trouble__table__head__item__txt {
							margin-bottom: 4px;
							font-size: 16px;
							line-height: 1.3;
							text-align: center;
							color: var(--color--white);
						}
						.trouble__table__head__item:last-of-type .trouble__table__head__item__txt {
							letter-spacing: -0.05em;
						}
						.trouble__table__head__item__icon {
							width: calc((54.45 / 121) * 100%);
						}
					.trouble__table__column__item {
						padding: 0;
					}
					.trouble__table__column__item:not(:last-of-type) {
						border-bottom: none;
					}
						.trouble__table__column__item__txt {
							display: flex;
							flex-direction: column;
							justify-content: flex-start;
							align-items: center;
						}
							.trouble__table__column__item__txt strong {
								margin-left: 0px;
							}
		.trouble__table_scroll_bar {
			width: 314px;
			height: 14px;
			margin: 9px auto 0;
			border-radius: 9999px;
			background-color: var(--color--gray_light);
			position: relative;
		}
			.trouble__table_scroll_bar__item {
				width: 100px;
				height: 8px;
				border-radius: 9999px;
				background-color: var(--color--gray);
				position: absolute;
				top: 3px;
				left: 3px;
			}
	.trouble__edge {
		height: 60px;
	}
		.trouble__edge img {
			width: 100%;
			height: 100%;
		}

/* support */
#support {
	padding: 60px 0;
}
	.support__inner {
		width: calc((335 / 375) * 100%);
	}
		.support__heading {
			width: calc((300 / 335) * 100%);
			padding: 20px 0 16px;
			margin: 0 auto 35px;
		}
			.support__heading__txt {
				font-size: 24px;
				line-height: 1.3;
			}
				.support__heading__logo {
					width: 172px;
					margin-right: 0px;
					top: 3px;
				}
		.support__list_wrap {
			width: calc((300 / 335) * 100%);
			margin: 0 auto;
		}
			.support__list {
				display: grid;
				grid-template-columns: repeat(2, 1fr);
				gap: 8px;
				max-width: 500px;
			}
				.support__list__item {
					justify-content: center;
					width: 100%;
					padding-bottom: 0;
				}
				.support__list__item:nth-of-type(4) {
					padding-top: calc((9 / 146) * 100%);
				}
					.support__list__item__icon {
						width: calc((73.71 / 146) * 100%);
					}
					.support__list__item:nth-of-type(4) .support__list__item__icon {
						width: calc((60.95 / 146) * 100%);
					}
					.support__list__item__txt {
						margin-top: calc((7 / 146) * 100%);
						font-size: 16px;
						line-height: 1.2;
					}
		.support__plus {
			width: 56px;
			height: 56px;
			margin: 10px auto 20px;
		}
		.support__contents {
			flex-direction: column;
			justify-content: flex-start;
			row-gap: 10px;
		}
			.support__contents__item {
				width: 100%;
				padding: 20px 18px 18px;
			}
			.support__contents__item:nth-of-type(1) {
				transform: translateY(20px);
			}
			.support__contents__item:nth-of-type(2) {
				transform: translateY(20px);
			}
			.run .support__contents__item {
				transform: translateY(0);
			}
					.support__contents__item__details dt {
						min-height: 70px;
						margin: 0 auto 15px;
						font-size: 20px;
					}
						.support__contents__item__details__txt:first-of-type {
							padding-right: 4px;
						}
						.support__contents__item__details__txt:last-of-type {
							padding-left: 4px;
						}
					.support__contents__item__details dd {
						display: block;
						min-height: initial;
						font-size: 13px;
						line-height: 1.8;
						text-align: left;
					}

#plan {
	padding: 50px 0;
}
	.plan__inner {
		width: calc((300 / 375) * 100%);
	}
		#plan .section__heading {
			margin: 0 auto 50px;
		}
			.plan__list {
				display: flex;
				flex-direction: column;
				gap: 0px;
				row-gap: 50px;
			}
				.plan__list__item {
					padding: 60px 0 0;
				}
				.plan__list__item:nth-of-type(2) {
					transition-delay: 0s;
				}
				.plan__list__item:nth-of-type(3) {
					transition-delay: 0s;
				}
				.plan__list__item:nth-of-type(4) {
					transition-delay: 0s;
				}
				.run.plan__list__item {
					opacity: 1;
					transform: translateY(0px);
				}
					.plan__list__item__heading {
						width: 230px;
					}
						.plan__list__item__contents__initial_cell {
							padding: 0 0 13px;
						}
						.plan__list__item__contents__monthly_cell {
							padding: 17px 0 20px;
						}
			.plan__note {
				text-align: left;
			}

#option {
	padding: 50px 0 110px;
}
	.option__obj_01 {
		width: calc((253 / 375) * 100%);
		height: calc((311 / 375) * 100vw);
	}
		.option__obj_01 img {
			width: 100%;
			height: 100%;
		}
	.option__obj_02 {
		width: calc((266 / 375) * 100%);
		height: calc((365 / 375) * 100vw);
	}
		.option__obj_02 img {
			width: 100%;
			height: 100%;
		}
	.option__inner {
		width: 100%;
	}
		#option .section__heading {
			width: calc((300 / 375) * 100%);
			margin: 0 auto 30px;
		}
		.option__contents {
			opacity: 0;
			transform: translateY(20px);
			transition: .8s;
		}
		.run.option__contents {
			opacity: 1;
			transform: translateY(0px);
		}
			.option__swiper {
				overflow: initial;
			}
								.option__swiper__item__contents__price {
									width: calc(100% - 40px);
									padding: 20px 0 23px 10px;
								}
								.option__swiper__item__contents__details {
									width: calc(100% - 40px);
									height: 125px;
								}
									.option__swiper__item__contents__details__txt {
										font-size: 13px;
									}
									.option__swiper__item__contents__details__list {
										column-gap: 10px;
										row-gap: 1px;
										margin: 3px auto 0;
									}
										.option__swiper__item__contents__details__list__item {
											font-size: 14px;
										}
											.option__swiper__item__contents__details__list__item::before {
												top: 5px;
											}
											.option__swiper__item__contents__details__list__item::after {
												top: 8px;
											}
				.option__swiper-button-prev,
				.option__swiper-button-next {
					display: flex;
					justify-content: center;
					align-items: center;
					width: 49px;
					height: 49px;
					margin: 0;
					border-radius: 9999px;
					background-color: #D9D9D9;
					top: 54%;
					transform: translateY(-50%);
					transition: background-color .1s;
				}
				.option__swiper-button-prev:active,
				.option__swiper-button-next:active {
					background-color: var(--color--black);
				}
				.option__swiper-button-prev {
					left: 10px;
				}
				.option__swiper-button-next {
					right: 10px;
				}
					.option__swiper-button-prev svg,
					.option__swiper-button-next svg {
						width: 18px;
						height: auto;
						fill: var(--color--white);
					}
			.option__note {
				width: calc((300 / 375) * 100%);
				text-align: left;
			}

#flow {
	padding: 50px 0;
	border-radius: 50px 50px 0 0;
	margin-top: -50px;
}
	.flow__inner {
		width: 100%;
	}
		#flow .section__heading {
			width: calc((300 / 375) * 100%);
			margin: 0 auto 30px;
		}
			.flow__swiper {
				width: 280px;
				margin: 0 auto 30px;
				overflow: initial;
			}
					.flow__swiper .swiper-slide.swiper-slide-active {
						transform: scale(1);
					}
							.flow__swiper__item::after {
								display: none;
							}
							.flow__swiper__item__number {
								width: 52px;
								height: 39px;
								padding: 0 2px 0 0;
							}
							.flow__swiper__item__image {
								width: calc((295 / 375) * 100%);
								margin: 0 auto 5px;
							}
								.flow__swiper__item__details dt {
									font-size: 20px;
									line-height: calc(20 / 20);
								}
								.flow__swiper__item__details dd {
									font-size: 14px;
									font-weight: 500;
									line-height: 1.6;
								}
			.flow__swiper__controls_wrap {
				width: calc((340 / 375) * 100%);
				margin: 0 auto;
			}
				.flow__swiper__controls {
					height: 70px;
					padding: 7px;
					border-radius: 35px;
				}
					.flow__swiper__pagination {
						column-gap: 8px;
					}
					.flow__swiper__button_prev,
					.flow__swiper__button_next {
						width: 55px;
						height: 55px;
					}

#achievement {
	padding: 60px 0 40px;
}
	.achievement__inner {
		width: calc((335 / 375) * 100%);
	}
		.achievement__container {
			display: block;
			padding: 0;
		}
			.achievement__obj {
				display: none;
			}
			.achievement__contents {
				width: 100%;
				padding: 40px 0 50px;
				margin: 0 auto;
			}
				#achievement .section__heading {
					width: calc((300 / 335) * 100%);
					margin: 0 auto 25px;
				}
				.achievement__copy {
					width: calc((300 / 335) * 100%);
					margin: 0 auto 14px;
					font-size: 21px;
					white-space: nowrap;
				}
				.achievement__txt {
					width: calc((300 / 335) * 100%);
					margin: 0 auto;
					line-height: 1.8;
				}
			.achievement__images {
				flex: initial;
				width: 100%;
				margin: 0 auto 20px;
			
				opacity: 0;
				transition: .8s;
			}
			.run .achievement__images {
				opacity: 1;
			}
				.achievement__images img {
					width: 100%;
					height: auto;
				}

#faq {
	padding: 40px 0 60px;
}
	.faq__inner {
		width: calc((300 / 375) * 100%);
	}
		#faq .section__heading {
			margin: 0 auto 30px;
		}
			.faq__list {
				row-gap: 1px;
			}
					.faq__list__item__q,
					.faq__list__item__a {
						padding: 20px 60px 20px 20px;
					}
						.faq__list__item__q::before,
						.faq__list__item__q::after {
							right: 30px;
						}
						.faq__list__item__q__inner,
						.faq__list__item__a__inner {
							align-items: flex-start;
							column-gap: 12px;
						}
							.faq__list__item__q__txt {
								padding-top: 7px;
							}
							.faq__list__item__a__txt {
								padding-top: 7px;
							}

#contact {
	padding: 60px 0;
}
	.contact__obj_01 {
		width: calc((222 / 375) * 100%);
		height: calc((279 / 375) * 100vw);
	}
		.contact__obj_01 img {
			width: 100%;
			height: 100%;
		}
	.contact__obj_02 {
		width: 138.77px;
		top: 7px;
		right: -29px;
		transform: translateY(0%);
	}
	.contact__inner {
		width: calc((335 / 375) * 100%);
	}
		#contact .section__heading {
			width: calc((300 / 335) * 100%);
			margin: 0 auto 30px;
		}
			.contact__contents__heading {
				width: 100%;
				padding: 14px 0 16px;
				margin: 0 auto 35px;
			}
				.contact__contents__heading::after {
					border-left: 10.5px solid transparent;
					border-right: 10.5px solid transparent;
					border-top: 16px solid var(--color--white);
				}
				.contact__contents__heading__txt {
					font-size: 18px;
					line-height: 1.5;
				}
			.contact__contents__list {
				grid-template-columns: repeat(1, 1fr);
				column-gap: 0;
				row-gap: 15px;
				width: calc((300 / 335) * 100%);
				margin: 0 auto 40px;
			}
					.contact__contents__list__item__link {
						padding: 20px 0;
						font-size: 16px;
					}
					.contact__contents__list__item:nth-of-type(1) .contact__contents__list__item__link {
						padding-right: 7px;
					}
					.contact__contents__list__item__link__arrow {
						width: 13px;
						right: calc((27 / 300) * 100%);
					}
			.contact__contents__tel {
				width: 300px;
			}
				.contact__contents__tel__icon {
					width: 28px;
					height: auto;
					padding-bottom: 0;
					margin-right: 6px;
				}
				.contact__contents__tel__txt {
					font-size: 40px;
				}
				.contact__contents__tel__note {
					margin: 10px auto 0;
					font-size: 18px;
				}

#company {
	padding: 60px 0 70px;
}
	.company__obj {
		width: 171.88px;
		top: -15px;
	}
	.company__inner {
		width: calc((300 / 375) * 100%);
	}
		.company__container {
			flex-direction: column;
			justify-content: flex-start;
			align-items: stretch;
		}
			.company__heading {
				width: 100%;
				margin: 0 auto 40px;
			}
			.company__contents {
				width: 100%;
			}
					.company__info_list__item {
						padding: 23px 0 22px;
					}
						.company__info_list__item dt {
							width: 105px;
							min-width: initial;
						}
}

/* SP ================================================== */
@media all and (max-width: 575px){
/* flow */
			.flow__swiper {
				width: 100%;
				margin: 0 auto 30px;
				overflow: initial;
			}

}