main {
	overflow: hidden;
}

.p-mv {
	position: relative;
}

.p-mv__slider .slider-image {
	width: 11rem;
}

.p-mv__slider .slider-image img {
	width: 100%;
}

.p-intro {
	position: relative;
	z-index: 1;
}

.p-intro .scroll-bg__item.--01 {
	top: -1.4rem;
	left: -1rem;
}

.p-intro .scroll-bg__item.--02 {
	top: -5rem;
	right: -0.5rem;
}

.p-intro__title {
	margin: -2rem auto 0;
}

.p-intro__txt {
	font-size: 1.6rem;
	text-align: center;
}

.p-intro__user .slider-image__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.p-intro__user .slider-image__name {
	--lh: 1.0625;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", -apple-system, YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 0.777rem;
	text-align: center;
	margin-top: 0.5rem;
	word-break: break-all;
}

.p-intro__user .slider-image__name::before,
.p-intro__user .slider-image__name::after {
	content: "";
	display: block flow;
	inline-size: 0;
	block-size: 1px;
}

.p-intro__user .slider-image__name::before {
	margin-block-end: calc((1 - var(--lh, 1.5)) * 0.5em);
}

.p-intro__user .slider-image__name::after {
	margin-block-start: calc((1 - var(--lh, 1.5)) * 0.5em);
}

.p-intro__user .slider-image__item {
	transition: transform 0.5s cubic-bezier(0.32, 1.96, 0.44, 0.79) 0s;
}

.p-intro__user .slider-image__item-media {
	border-radius: 2rem;
	position: relative;
}

.p-intro__user .slider-image__item-media .image {
	background-color: #fff;
	border-radius: inherit;
	position: relative;
	z-index: 2;
	overflow: hidden;
	width: 100%;
	height: 11.1rem;
}

.p-intro__user .slider-image__item-media::before {
	background-image: linear-gradient(to right top, #f4beff, #e1c5ff);
	border-radius: inherit;
	content: "";
	position: absolute;
	inset: 0;
	margin: -1px;
}

.p-intro__user .slider-image__item-media::after {
	border-radius: inherit;
	background: #FBE7FF;
	background: linear-gradient(90deg, rgb(251, 231, 255) 0%, rgb(244, 190, 255) 62%, rgb(225, 197, 255) 92%);
	filter: blur(10px);
	content: "";
	position: absolute;
	top: 0;
	right: -0.5rem;
	bottom: -0.8rem;
	left: 0;
	overflow: hidden;
	will-change: transform;
}

.p-intro__user .slider-image__item:hover {
	transform: scale(1.06);
}

.p-intro__user .slick-list {
	margin: -2rem -3rem 0;
}

.p-intro__user .slick-slide {
	padding: 3rem 3rem 0;
}

.p-intro__user .slick-arrow {
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 2.3rem;
	height: 2.3rem;
	margin-top: 1rem;
	z-index: 10;
}

.p-intro__user .slick-arrow::before {
	display: none;
}

.p-intro__user .slick-prev {
	background-image: url("../images/common/ic_slider_prev.svg");
	left: -2rem;
}

.p-intro__user .slick-next {
	background-image: url("../images/common/ic_slider_next.svg");
	right: -2rem;
}

.p-intro__button {
	margin-top: 4.5rem;
}

.p-about {
	padding: 5rem 0 5rem;
	position: relative;
	z-index: 2;
}

.p-about .scroll-bg__item.--01 {
	top: -8.6rem;
	right: -1.6rem;
	left: auto;
}

.p-about__wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.p-about__text span {
	color: #E593F9;
}

.p-about__media {
	max-width: 23.2rem;
	margin: 0 auto;
	position: relative;
}

.p-plan {
	background: #FBE7FF;
	background: linear-gradient(90deg, rgb(251, 231, 255) 0%, rgb(244, 190, 255) 62%, rgb(225, 197, 255) 100%);
	padding: 5rem 0;
	position: relative;
	z-index: 1;
}

.p-plan .scroll-bg__item.--01 {
	top: -9.3rem;
}

.p-plan__title {
	text-align: center;
	line-height: 1.8605;
}

.p-plan__text span {
	color: #fff;
}

.p-plan__media {
	max-width: 24.8rem;
	margin: 5rem auto 0;
}

.p-plan__images .item {
	transform-origin: center bottom;
}

.p-plan__images .item.--01 {
	width: 14.1rem;
}

.p-plan__images .item.--02 {
	width: 14.6rem;
}

.p-plan__images .item.--03 {
	width: 14.4rem;
}

.p-plan__images .item.--04 {
	width: 14.1rem;
}

.p-plan__images .item.animate_animated {
	opacity: 0;
	animation: 0.6s ease-in-out 0s 1 normal forwards running animation-3tpvxt;
}

.p-machines {
	padding: 3rem 0 11rem;
	position: relative;
	z-index: 1;
}

.p-machines .scroll-bg__item.--02 {
	top: -10.5rem;
	right: 0;
}

.p-machines__head {
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
}

.p-machines__head .media {
	max-width: 19.1rem;
	position: relative;
}

.p-machines__ttl {
	line-height: 1.8666666667;
	position: relative;
}

.p-machines__text {
	font-size: 1.4rem;
	line-height: 1.6428571429;
}

.p-machines__content {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 4rem;
}

.p-machines__map .map {
	border-radius: 4rem;
	position: relative;
}

.p-machines__map .map::before {
	background-image: linear-gradient(to right top, #f4beff, #e1c5ff);
	border-radius: inherit;
	content: "";
	position: absolute;
	inset: 0;
	margin: -0.4rem;
}

.p-machines__map .map::after {
	border-radius: inherit;
	background: #FBE7FF;
	background: linear-gradient(90deg, rgb(251, 231, 255) 0%, rgb(244, 190, 255) 62%, rgb(225, 197, 255) 92%);
	filter: blur(10px);
	content: "";
	position: absolute;
	top: 0;
	right: -0.5rem;
	bottom: -0.7rem;
	left: 0;
	overflow: hidden;
	will-change: transform;
}

.p-machines__map .map-box {
	border-radius: inherit;
	height: 33.5rem;
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.p-machines__map .map-box iframe {
	border: none;
	width: 100%;
	height: 100%;
}

.p-machines__info .video {
	border-radius: 4rem;
	position: relative;
}

.p-machines__info .video::before {
	background-image: linear-gradient(to right top, #f4beff, #e1c5ff);
	border-radius: inherit;
	content: "";
	position: absolute;
	inset: 0;
	margin: -0.4rem;
}

.p-machines__info .video::after {
	border-radius: inherit;
	background: #FBE7FF;
	background: linear-gradient(90deg, rgb(251, 231, 255) 0%, rgb(244, 190, 255) 62%, rgb(225, 197, 255) 92%);
	filter: blur(10px);
	content: "";
	position: absolute;
	top: 0;
	right: -0.5rem;
	bottom: -0.7rem;
	left: 0;
	overflow: hidden;
	will-change: transform;
}

.p-machines__info .video-box {
	border-radius: inherit;
	height: 100%;
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.p-machines__info .video iframe {
	width: 100%;
	height: 100%;
	border: none;
}

.p-machines__info .images {
	display: flex;
	margin-top: 4.8rem;
	gap: 2rem;
}

.p-machines__info .images-item {
	border-radius: 4rem;
	position: relative;
	flex: 1;
}

.p-machines__info .images-item::before {
	background-image: linear-gradient(to right top, #f4beff, #e1c5ff);
	border-radius: inherit;
	content: "";
	position: absolute;
	inset: 0;
	margin: -0.4rem;
}

.p-machines__info .images-item::after {
	border-radius: inherit;
	background: #FBE7FF;
	background: linear-gradient(90deg, rgb(251, 231, 255) 0%, rgb(244, 190, 255) 62%, rgb(225, 197, 255) 92%);
	filter: blur(10px);
	content: "";
	position: absolute;
	top: 0;
	right: -0.5rem;
	bottom: -0.7rem;
	left: 0;
	overflow: hidden;
	will-change: transform;
}

.p-machines__info .images-item__box {
	border-radius: inherit;
	position: relative;
	z-index: 2;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.p-faq {
	background: #FBE7FF;
	background: linear-gradient(90deg, rgb(251, 231, 255) 0%, rgb(244, 190, 255) 62%, rgb(225, 197, 255) 100%);
	position: relative;
	padding: 4rem 0 6.7rem;
	z-index: 1;
}

.p-faq .scroll-bg__item.--02 {
	top: -9.5rem;
	right: auto;
	left: 0.5rem;
}

.p-faq__title {
	margin-bottom: 2rem;
}

.p-faq__content {
	position: relative;
}

.p-faq__media {
	max-width: 20.8rem;
	margin: 0 auto;
}

.p-faq .faq {
	background-color: #fff;
	border: 0.7rem solid #E593F9;
	border-radius: 2rem;
	overflow: hidden;
	padding: 1.4rem 1.2rem;
}

.p-faq .faq-item {
	border: 0.4rem solid #E593F9;
	border-radius: 2rem;
	padding: 3rem 1.5rem;
}

.p-faq .faq-item.is-show .faq-item__head::after {
	background-image: url("../images/common/ic_minus.svg");
}

.p-faq .faq-item:not(:last-child) {
	margin-bottom: 2rem;
}

.p-faq .faq-item__head {
	color: #5E5E5E;
	cursor: pointer;
	font-size: 1.8rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", -apple-system, YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 600;
	position: relative;
}

.p-faq .faq-item__head::after {
	content: "";
	background: url("../images/common/ic_plus.svg") no-repeat center/contain;
	width: 2rem;
	height: 2rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	transform-origin: center center;
	transform: all 0.3s ease;
}

.p-faq .faq-item__body {
	display: none;
}

.p-faq .faq-item__content {
	margin-top: 1.5rem;
}

.p-faq .faq-item__content p {
	color: #5E5E5E;
	font-size: 1.4rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", -apple-system, YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 500;
}

.p-find {
	position: relative;
	padding: 5rem 0 5rem;
	z-index: 1;
}

.p-find .scroll-bg__item.--01 {
	top: -8rem;
	right: 0;
	left: auto;
}

.p-find .scroll-bg__item.--02 {
	top: auto;
	right: auto;
	bottom: -10rem;
	left: -0.5rem;
}

.p-find__media {
	max-width: 24.3rem;
	margin: 1rem auto 0;
	position: relative;
}

.p-find__button {
	margin-top: 3rem;
}

@media (min-width: 768px) {

.p-mv__slider .slider-image {
	width: 34rem;
}

.p-intro .scroll-bg__item.--01 {
	top: -14rem;
	left: -15.6rem;
	max-width: 37.5rem;
}

.p-intro .scroll-bg__item.--02 {
	top: -23rem;
	right: -15.5rem;
	max-width: 44.5rem;
}

.p-intro__title {
	max-width: 101.9rem;
	margin-top: -14rem;
}

.p-intro__txt {
	font-size: 3.8rem;
}

.p-intro__user {
	margin-top: 3.4rem;
}

.p-intro__user .slider-image__list {
	grid-template-columns: repeat(5, 1fr);
	gap: 5rem 6.6rem;
}

.p-intro__user .slider-image__name {
	--lh: 1.0625;
	font-size: 3.2rem;
}

.p-intro__user .slider-image__item-media {
	border-radius: 4rem;
}

.p-intro__user .slider-image__item-media .image {
	height: 35.4rem;
}

.p-intro__user .slider-image__item-media::before {
	margin: -0.3rem;
}

.p-intro__user .slick-slide {
	padding: 3rem 3rem 0;
}

.p-intro__user .slick-arrow {
	width: 8.8rem;
	height: 8.8rem;
	margin-top: -1.9rem;
}

.p-intro__user .slick-prev {
	left: -8.8rem;
}

.p-intro__user .slick-next {
	right: -8.8rem;
}

.p-intro__button {
	margin-top: 10.9rem;
}

.p-about {
	padding: 15rem 0 13.6rem;
}

.p-about .scroll-bg__item.--01 {
	top: -37.5rem;
	right: -14.5rem;
	max-width: 37.5rem;
}

.p-about__wrap {
	flex-direction: row;
}

.p-about__title {
	letter-spacing: 0.159em;
}

.p-about__text {
	margin-top: 4.4rem;
	letter-spacing: -0.05em;
}

.p-about__media {
	max-width: 62.8rem;
	margin-top: 4rem;
	margin-right: -6.2rem;
	top: 8.9rem;
}

.p-plan {
	padding: 18.2rem 0 5rem;
}

.p-plan .scroll-bg__item.--01 {
	top: -27rem;
	left: 4rem;
	max-width: 37.5rem;
}

.p-plan__text {
	line-height: 2.4615384615;
	margin-top: 5.3rem;
	text-align: center;
}

.p-plan__media {
	max-width: 59.9rem;
	margin-top: 11rem;
}

.p-plan__images .item {
	position: absolute;
}

.p-plan__images .item.--01 {
	top: -10rem;
	left: -10rem;
	width: 56rem;
}

.p-plan__images .item.--02 {
	top: -3.4rem;
	right: -4rem;
	width: 42.4rem;
}

.p-plan__images .item.--03 {
	bottom: 26rem;
	left: 2.6rem;
	width: 42.4rem;
}

.p-plan__images .item.--04 {
	bottom: 27rem;
	right: 4.1rem;
	width: 41.1rem;
}

.p-machines {
	padding: 15.9rem 0 14.7rem;
}

.p-machines .scroll-bg__item.--02 {
	top: -26rem;
	right: 4.8rem;
	max-width: 44.5rem;
}

.p-machines__head {
	flex-direction: row;
}

.p-machines__head .media {
	max-width: 56.1rem;
	left: -2.5rem;
}

.p-machines__ttl {
	top: -2.4rem;
}

.p-machines__text {
	font-size: 2rem;
	line-height: 1.75;
}

.p-machines__content {
	flex-direction: row;
	gap: 4rem;
	margin-top: -3rem;
}

.p-machines__map {
	flex: 0 0 71.1rem;
}

.p-machines__map .map {
	border-radius: 5rem;
}

.p-machines__map .map::before {
	margin: -0.7rem;
}

.p-machines__map .map::after {
	right: -0.8rem;
	bottom: -1rem;
}

.p-machines__map .map-box {
	height: 80rem;
}

.p-machines__info {
	flex: 1;
	padding-left: 8.6rem;
}

.p-machines__info .video {
	border-radius: 5rem;
}

.p-machines__info .video::before {
	margin: -0.7rem;
}

.p-machines__info .video::after {
	right: -0.8rem;
	bottom: -1rem;
}

.p-machines__info .video-box {
	height: 34.3rem;
}

.p-machines__info .images {
	gap: 3.5rem;
	margin-top: 3rem;
}

.p-machines__info .images-item {
	border-radius: 5rem;
}

.p-machines__info .images-item::before {
	margin: -0.7rem;
}

.p-machines__info .images-item::after {
	right: -0.8rem;
	bottom: -1rem;
}

.p-faq {
	padding: 22.2rem 0 13rem;
}

.p-faq .scroll-bg__item.--02 {
	top: -30rem;
	left: 1.8rem;
	max-width: 44.5rem;
}

.p-faq__title {
	margin-bottom: 14rem;
}

.p-faq__media {
	position: absolute;
	right: -1.3rem;
	top: -42.1rem;
	max-width: 54.9rem;
}

.p-faq .faq {
	border-radius: 4rem;
	border-width: 1.1rem;
	padding: 13.2rem 7rem 7.8rem;
}

.p-faq .faq-item {
	border-radius: 4rem;
	padding: 3rem 5rem 2rem 12rem;
}

.p-faq .faq-item:not(:last-child) {
	margin-bottom: 3.5rem;
}

.p-faq .faq-item__head {
	font-size: 3.2rem;
	padding-right: 5rem;
}

.p-faq .faq-item__head::after {
	width: 3rem;
	height: 3rem;
}

.p-faq .faq-item__content {
	margin-top: 3rem;
}

.p-faq .faq-item__content p {
	font-size: 1.8rem;
	line-height: 2.4444444444;
}

.p-find {
	padding: 17.5rem 0 17rem;
}

.p-find .scroll-bg__item.--01 {
	top: -16.7rem;
	right: 4rem;
	max-width: 37.5rem;
}

.p-find .scroll-bg__item.--02 {
	bottom: 2rem;
	left: 3rem;
	max-width: 44.5rem;
}

.p-find__media {
	max-width: 73.9rem;
	margin-top: 6.5rem;
	left: 1.2rem;
}

.p-find__button {
	margin-top: 6rem;
}

}

@media (max-width: 767px) {

.p-about__title {
	text-align: center;
}

.p-plan__title {
	letter-spacing: -0.1em;
}

.p-plan__images {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3rem 1rem;
}

.p-plan__images .item.--01 {
	aspect-ratio: 1;
	position: relative;
}

.p-plan__images .item.--01 img {
	position: absolute;
	top: -2rem;
	left: -2rem;
	width: 20rem;
	display: block;
	height: auto;
	max-width: unset;
}

.p-plan__images .item.--02 img {
	position: relative;
	left: 0rem;
}

.p-plan__images .item.--03 {
	aspect-ratio: 1;
	position: relative;
}

.p-plan__images .item.--03 img {
	position: absolute;
	top: -2rem;
	left: -1rem;
	width: 17rem;
	display: block;
	height: auto;
	max-width: unset;
}

.p-plan__images .item.--04 {
	aspect-ratio: 1;
	position: relative;
}

.p-plan__images .item.--04 img {
	position: absolute;
	top: -2rem;
	left: -1rem;
	width: 17rem;
	display: block;
	height: auto;
	max-width: unset;
}

.p-machines__ttl {
	text-align: center;
	letter-spacing: -0.1em;
}

.p-machines__text {
	margin: 2rem 0;
}

.p-machines__info .video {
	aspect-ratio: 204/364;
	margin: 0 auto;
	width: 20.4rem;
}

}

