@charset "UTF-8";
@import url(./reset.css);
@import url(./common.css);
.noto {
		font-family: "Noto Sans JP", sans-serif;
}

.primg {
		transition-timing-function: ease-out !important;
}

.kv {
		width: 100%;
		max-width: 100%;
		height: 766px;
		position: relative;
		top: 0;
		overflow: hidden;
		padding-top: 64px;
		z-index: 9;
}

.kv .bg_grad {
		position: absolute;
		top: -225px;
		right: -204px;
		transform: rotate(16deg);
		width: 1224px;
		z-index: 9;
}

.kv .bg_grad svg {
		max-width: 1224px;
		width: 100%;
}

.kv .bg_grad path {
		fill: url(#gradient);
}

.kv .bg_grad #stop1 {
		animation: stop1 30s ease-in-out infinite;
}

@keyframes stop1 {
		0% {
				stop-color: #EB7D78;
		}
		25% {
				stop-color: #A395C2;
		}
		50% {
				stop-color: #94704D;
		}
		75% {
				stop-color: #917478;
		}
		100% {
				stop-color: #EB7D78;
		}
}

.kv .movie {
		aspect-ratio: 16 / 9;
		-webkit-mask-image: url(../img/kv_movie_mask.svg);
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: 0 0;
		-webkit-mask-size: 100%;
		mask-image: url(../img/kv_movie_mask.svg);
		mask-repeat: no-repeat;
		mask-position: 0 0;
		mask-size: 100%;
		max-width: 1431px;
		width: 100%;
		position: absolute;
		bottom: -40px;
		right: 25.7%;
		z-index: 10;
}

.kv .videomask {
		max-width: 1431px;
		width: 100%;
		position: absolute;
		top: 64px;
		right: 25.7%;
		z-index: 10;
}

.kv .videomask .mask {
		-webkit-clip-path: url(#mask);
		clip-path: url(#mask);
}

.kv .kv_products {
		position: absolute;
		bottom: 0;
		left: 40px;
		width: 613px;
		z-index: 12;
}

.kv .kv_ttl_en {
		position: absolute;
		right: 20px;
		top: 141px;
		z-index: 12;
}

.kv .kv_ttl_en img {
		max-width: 595px;
}

.kv .kv_ttl_jp {
		position: absolute;
		right: 206px;
		top: 338px;
		z-index: 12;
}

.kv .kv_ttl_jp img {
		max-width: 93px;
}

.kv .scroll {
		position: absolute;
		top: 570px;
		right: 77px;
		width: 120px;
		height: 120px;
		z-index: 12;
}

.kv .scroll .scdown {
		animation: 10s linear infinite rotation;
}

@keyframes rotation {
		0% {
				transform: rotate(0);
		}
		100% {
				transform: rotate(360deg);
		}
}

.kv .scroll .scmark {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
}

@media (max-width: 780px) {
		.kv {
				width: 100%;
				max-width: 100%;
				height: 135vw;
				position: relative;
				top: 0;
				left: 0;
				overflow: hidden;
				margin-top: -14vw;
				z-index: 9;
		}
		.kv .bg_grad {
				position: absolute;
				top: -15.6vw;
				right: -33.4vw;
				transform: rotate(9deg);
				width: 210vw;
				z-index: 9;
		}
		.kv .bg_grad svg {
				max-width: 210vw;
				width: 100%;
		}
		.kv .bg_grad path {
				fill: url(#gradient);
		}
		.kv .bg_grad #stop1 {
				animation: stop1 30s ease-in-out infinite;
		}
		@keyframes stop1 {
				0% {
						stop-color: #EB7D78;
				}
				25% {
						stop-color: #A395C2;
				}
				50% {
						stop-color: #94704D;
				}
				75% {
						stop-color: #917478;
				}
				100% {
						stop-color: #EB7D78;
				}
		}
		.kv .videomask {
				max-width: 99%;
				width: 99%;
				height: 96.974vw;
				position: absolute;
				top: 57vw;
				right: 1vw;
				left: 0;
				bottom: 0;
				z-index: 10;
		}
		.kv .videomask video {
				width: 174%;
				/* ビデオの幅を100%に設定 */
				height: 96.974vw;
		}
		.kv .videomask .masks {
				clip-path: url(#masksp);
				-webkit-clip-path: url(#masksp);
		}
		.kv .videomask svg {
				position: absolute;
				top: 0;
				left: 0;
				width: 99%;
				/* SVGの幅を100%に設定 */
				height: 100%;
				/* SVGの高さを100%に設定 */
				object-fit: cover;
				/* アスペクト比を維持しつつカバー */
		}
		.kv .movie {
				aspect-ratio: 7 / 5;
				-webkit-mask-image: url(../img/kv_movie_mask-s.svg);
				-webkit-mask-repeat: no-repeat;
				-webkit-mask-position: 0 0;
				-webkit-mask-size: 100%;
				mask-image: url(../img/kv_movie_mask-s.svg);
				mask-repeat: no-repeat;
				mask-position: 0 0;
				mask-size: 100%;
				max-width: 99vw;
				width: 100%;
				height: 112.9vw;
				position: absolute;
				top: 55vw;
				right: 1%;
				left: 0;
				z-index: 10;
		}
		.kv .movie video {
				width: 200%;
		}
		.kv .kv_products {
				position: absolute;
				bottom: 0;
				left: 3vw;
				width: 60vw;
				z-index: 12;
		}
		.kv .kv_products img {
				max-width: 100%;
		}
		.kv .kv_ttl_en {
				position: absolute;
				right: 0;
				top: 25.2vw;
				z-index: 12;
		}
		.kv .kv_ttl_en img {
				max-width: 84vw;
		}
		.kv .kv_ttl_jp {
				position: absolute;
				right: 12vw;
				top: 52.8vw;
				z-index: 12;
		}
		.kv .kv_ttl_jp img {
				max-width: 15vw;
		}
		.kv .scroll {
				position: absolute;
				top: 115vw;
				right: 5vw;
				width: 20vw;
				height: 20vw;
				z-index: 12;
		}
		.kv .scroll .scdown {
				animation: 10s linear infinite rotation;
		}
		.kv .scroll .scdown img {
				max-width: 100%;
		}
		@keyframes rotation {
				0% {
						transform: rotate(0);
				}
				100% {
						transform: rotate(360deg);
				}
		}
		.kv .scroll .scmark {
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
		}
}

.s1 {
		background-color: #CFB19B;
		width: 100%;
		height: auto;
		position: relative;
		z-index: 98;
}

.s1 .slide-text {
		position: absolute;
		z-index: 0;
		top: 150px;
		left: 0;
		width: 100%;
		height: 83px;
		background-image: url(../img/s1_typo.svg);
		opacity: 0.13;
		mix-blend-mode: multiply;
		background-repeat: repeat-x;
		background-size: auto 83px;
		/* 画像の高さ */
		animation: textPCloop 40s linear infinite;
}

@keyframes textPCloop {
		from {
				background-position: 0 0;
		}
		to {
				background-position: -1920px 0;
				/* 画像のマイナス幅 */
		}
}

.s1 .inner {
		width: 960px;
		height: 1350px;
		margin: 0 auto;
		position: relative;
}

.s1 .inner .pr00 {
		position: absolute;
		top: 0;
		left: -352px;
}

.s1 .inner .pr01 {
		position: absolute;
		top: 150px;
		right: -570px;
}

.s1 .inner .pr02 {
		position: absolute;
		top: 642px;
		right: -523px;
}

.s1 .inner .pr03 {
		position: absolute;
		top: 1072px;
		left: -427px;
}

.s1 .inner h2 {
		font-size: 34px;
		font-weight: 500;
		line-height: 2;
		color: #fff;
		position: absolute;
		top: 208px;
		left: 523px;
}

.s1 .inner p {
		font-size: 16px;
		font-weight: 500;
		line-height: 2.75;
		color: #fff;
		position: absolute;
		top: 357px;
		left: 523px;
}

.s1 .inner .youtube {
		position: relative;
		width: 100%;
		padding-top: 56.25%;
		top: 761px;
}

.s1 .inner .youtube iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
}

.s1 .media {
		width: 100%;
		height: 121px;
		position: relative;
		overflow-x: hidden;
}

.s1 .media .bg_ttl {
		position: absolute;
		top: 0;
		right: calc(50% + 176px);
}

.s1 .media .bg_ttl img {
		opacity: 0.12;
		mix-blend-mode: multiply;
}

.s1 .media .swiper {
		margin-top: 50px;
}

.s1 .media .swiper-wrapper {
		display: flex;
		align-items: center;
		transition-timing-function: linear !important;
}

.s1 .media .swiper-wrapper .swiper-slide {
		text-align: center;
		line-height: 1;
		display: flex;
		align-items: flex-start;
		justify-content: center;
}

.s1 .media .swiper-wrapper .swiper-slide img {
		display: inline;
		width: auto;
		max-width: 100%;
		max-height: 100%;
		align-self: center;
}

.s1 .s1_bottom {
		width: 960px;
		height: 300px;
		margin: 0 auto;
		position: relative;
}

.s1 .s1_bottom .pr04 {
		position: absolute;
		top: 0;
		right: -117px;
		z-index: 95;
}

.s1:before {
		content: "";
		background-image: url(../img/s1_before.svg);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		top: -148px;
		left: 0;
		right: 0;
		z-index: 110;
		width: 100%;
		height: 148px;
}

.s1:after {
		content: "";
		background-image: url(../img/s1_after.svg);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		bottom: -148px;
		left: 0;
		right: 0;
		z-index: 110;
		width: 100%;
		height: 148px;
}

@media (max-width: 780px) {
		.s1 {
				background-color: #CFB19B;
				width: 100%;
				height: auto;
				position: relative;
				z-index: 98;
		}
		.s1 .slide-text {
				position: absolute;
				z-index: 0;
				top: 12vw;
				left: 0;
				width: 100%;
				height: 10.64vw;
				background-image: url(../img/s1_typo.svg);
				opacity: 0.13;
				mix-blend-mode: multiply;
				background-repeat: repeat-x;
				background-size: auto 10.64vw;
				/* 画像の高さ */
				animation: textPCloop 40s linear infinite;
		}
		@keyframes textPCloop {
				from {
						background-position: 0 0;
				}
				to {
						background-position: -1920px 0;
						/* 画像のマイナス幅 */
				}
		}
		.s1 .inner {
				width: 90vw;
				height: 156vw;
				margin: 0 auto;
				position: relative;
		}
		.s1 .inner .pr00 {
				position: absolute;
				top: 163vw;
				left: -43vw;
				right: -10vw;
		}
		.s1 .inner .pr00 img {
				max-width: 100%;
		}
		.s1 .inner .pr01 {
				position: absolute;
				top: 16.53vw;
				right: -52.17vw;
		}
		.s1 .inner .pr01 img {
				max-width: 100vw;
		}
		.s1 .inner h2 {
				font-size: 5.64103vw;
				font-weight: 500;
				line-height: 2.1;
				color: #fff;
				position: absolute;
				top: 22.5vw;
				left: 5vw;
				right: 5vw;
		}
		.s1 .inner p {
				font-size: 3.33333vw;
				font-weight: 500;
				line-height: 2.38;
				color: #fff;
				position: absolute;
				top: 48vw;
				left: 5vw;
		}
		.s1 .inner .youtube {
				position: relative;
				width: 100%;
				padding-top: 56.25%;
				top: 93.666vw;
		}
		.s1 .inner .youtube iframe {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
		}
		.s1 .media {
				width: 100%;
				height: 20vw;
				position: relative;
				overflow-x: hidden;
		}
		.s1 .media .bg_ttl {
				position: absolute;
				top: 0;
				right: 55vw;
		}
		.s1 .media .bg_ttl img {
				max-width: 100%;
				opacity: 0.12;
				mix-blend-mode: multiply;
		}
		.s1 .media .swiper {
				margin-top: 7vw;
		}
		.s1 .media .swiper-wrapper {
				display: flex;
				align-items: center;
				transition-timing-function: linear !important;
		}
		.s1 .media .swiper-wrapper .swiper-slide {
				text-align: center;
				line-height: 1;
				display: flex;
				align-items: flex-start;
				justify-content: center;
		}
		.s1 .media .swiper-wrapper .swiper-slide img {
				display: inline;
				width: auto;
				max-width: 100%;
				max-height: 100%;
				align-self: center;
		}
		.s1 .s1_bottom {
				width: 100%;
				height: 89.46vw;
				margin: 0 auto;
				position: relative;
		}
		.s1 .s1_bottom .pr04 {
				position: absolute;
				top: 0;
				right: -117px;
				z-index: 95;
		}
		.s1:before {
				content: "";
				background-image: url(../img/s1_before-s.svg);
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: absolute;
				top: -8.7vw;
				left: 0;
				right: 0;
				z-index: 110;
				width: 100%;
				height: 8.9vw;
		}
		.s1:after {
				content: none;
		}
}

.s2:before {
		content: "";
		background-image: url(../img/s2_before.svg);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		top: -72px;
		left: 0;
		right: 0;
		z-index: 100;
		width: 100%;
		height: 623px;
}

.s2:after {
		content: "";
		background-image: url(../img/s2_after.svg);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		bottom: -320px;
		left: 0;
		right: 0;
		z-index: 100;
		width: 100%;
		height: 831px;
}

.s2 {
		background-color: #fff;
		width: 100%;
		height: auto;
		position: relative;
}

.s2 .slide-text {
		position: absolute;
		z-index: 101;
		top: 290px;
		left: 0;
		width: 100%;
		height: 83px;
		background-image: url(../img/s2_typo.svg);
		opacity: 0.13;
		mix-blend-mode: multiply;
		background-repeat: repeat-x;
		background-size: auto 83px;
		/* 画像の高さ */
		animation: textPCloop_r 40s linear infinite;
}

@keyframes textPCloop_r {
		from {
				background-position: 0 0;
		}
		to {
				background-position: 1920px 0;
				/* 画像のマイナス幅 */
		}
}

.s2 .inner {
		width: 960px;
		height: 350px;
		margin: 0 auto;
		position: relative;
}

.s2 .inner .s2_pr00 {
		position: absolute;
		top: 60px;
		left: -331px;
		z-index: 102;
}

.s2 .inner .ttl {
		position: absolute;
		z-index: 102;
		top: 62px;
		left: -98px;
		width: 475px;
		height: 212px;
		background-image: url(../img/s2_ttl_bg.webp);
		background-repeat: no-repeat;
		background-size: contain;
}

.s2 .inner .ttl h2 {
		font-size: 42px;
		color: #fff;
		text-align: center;
		margin: 130px auto 0;
}

.s2 .s2_slider01 {
		margin: 0 auto;
		width: 100%;
		position: relative;
		z-index: 103;
		padding-bottom: 150px;
}

.s2 .s2_slider01 .swiper {
		overflow: visible;
}

.s2 .s2_slider01 #swiper2 .swiper-slide {
		display: flex;
		flex-direction: column;
		width: 400px !important;
		margin: 0;
}

.s2 .s2_slider01 #swiper2 .swiper-slide .swiper2_img {
		max-width: 100%;
}

.s2 .s2_slider01 #swiper2 .swiper-slide h3 {
		margin: -35px auto 15px;
		font-size: 24px;
		font-weight: 500;
		line-height: 1;
		text-align: center;
		color: #505050;
}

.s2 .s2_slider01 #swiper2 .swiper-slide p {
		font-size: 16px;
		line-height: 2.25;
		margin: 0 16px 35px;
}

.s2 .s2_slider01 #swiper2 .swiper-slide .w_box {
		width: 368px;
		margin: 0 auto;
		background-color: #FAF7F4;
		border-radius: 6px;
}

.s2 .s2_slider01 #swiper2 .swiper-slide .w_box h6 {
		font-size: 17px;
		font-weight: 700;
		line-height: 1;
		color: #CFB19B;
		text-align: center;
		margin: -10px auto 0;
		font-family: "Noto Sans JP", sans-serif;
}

.s2 .s2_slider01 #swiper2 .swiper-slide .w_box p {
		font-size: 14px;
		font-weight: 400;
		line-height: 2.2;
		margin: 15px 21px;
		font-family: "Noto Sans JP", sans-serif;
}

.s2 .s2_slider01 #swiper2 .swiper-button-prev {
		background-image: url(../img/s2_prev.svg);
		width: 54px;
		height: 54px;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: -143px;
		left: calc(50% + 352px);
		z-index: 120;
		cursor: pointer;
}

.s2 .s2_slider01 #swiper2 .swiper-button-prev:after {
		content: none;
}

.s2 .s2_slider01 #swiper2 .swiper-button-next {
		background-image: url(../img/s2_next.svg);
		width: 54px;
		height: 54px;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: -143px;
		left: calc(50% + 426px);
		z-index: 110;
		cursor: pointer;
}

.s2 .s2_slider01 #swiper2 .swiper-button-next:after {
		content: none;
}

.s2 .s2_slider01 #swiper2 .swiper-pagination {
		position: absolute;
		text-align: center;
		transition: .3s opacity;
		transform: translate3d(0, 0, 0);
		z-index: 10;
		bottom: -40px;
		left: 50%;
		ransform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
}

.s2 .s2_slider01 #swiper2 .swiper-pagination .swiper-pagination-bullet-active {
		background-color: #CFB19B !important;
		opacity: 1 !important;
}

.s2 .s2_slider01 #swiper2 .swiper-pagination .swiper-pagination-bullet {
		background-color: #EBEBEB;
		opacity: 1 !important;
		width: 10px;
		height: 10px;
		margin: 0 8px;
}

.s2 .s2_slider02 {
		margin: 0 auto;
		width: 100%;
		position: relative;
		z-index: 103;
}

.s2 .s2_slider02 #swiper3 .swiper-wrapper {
		transition-timing-function: linear;
}

.s2 .s2_slider02 #swiper3 .swiper-slide {
		display: flex;
		flex-direction: column;
		width: 272px !important;
		margin: 0;
}

.s2 .s2_slider02 #swiper3 .swiper-slide .swiper3_img {
		max-width: 100%;
}

@media (max-width: 780px) {
		.s2:before {
				content: "";
				background-image: url(../img/s2_before-s.svg);
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: absolute;
				top: -24vw;
				left: 0;
				right: 0;
				z-index: 100;
				width: 100%;
				height: 76vw;
		}
		.s2:after {
				content: "";
				background-image: url(../img/s2_after-s.svg);
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: absolute;
				bottom: -29.358vw;
				left: 0;
				right: 0;
				z-index: 100;
				width: 100%;
				height: 60.358vw;
		}
		.s2 {
				background-color: #fff;
				width: 100%;
				height: auto;
				position: relative;
		}
		.s2 .slide-text {
				position: absolute;
				z-index: 101;
				top: 12vw;
				left: 0;
				width: 100%;
				height: 10.64vw;
				background-image: url(../img/s2_typo.svg);
				opacity: 0.13;
				mix-blend-mode: multiply;
				background-repeat: repeat-x;
				background-size: auto 10.64vw;
				/* 画像の高さ */
				animation: textPCloop_r 40s linear infinite;
		}
		@keyframes textPCloop_r {
				from {
						background-position: 0 0;
				}
				to {
						background-position: 1920px 0;
						/* 画像のマイナス幅 */
				}
		}
		.s2 .inner {
				width: 90vw;
				height: 35vw;
				margin: 0 auto;
				position: relative;
		}
		.s2 .inner .s2_pr00 {
				position: absolute;
				top: -12vw;
				left: -20vw;
				z-index: 103;
		}
		.s2 .inner .s2_pr00 img {
				max-width: 40vw;
		}
		.s2 .inner .ttl {
				position: absolute;
				z-index: 102;
				top: 0;
				left: 0;
				width: 60.89vw;
				height: 27.179vw;
				background-image: url(../img/s2_ttl_bg.webp);
				background-repeat: no-repeat;
				background-size: contain;
		}
		.s2 .inner .ttl h2 {
				font-size: 6.41026vw;
				color: #fff;
				text-align: left;
				margin: 16vw 0 0 10vw;
		}
		.s2 .s2_slider01 {
				margin: 0 auto;
				width: 100%;
				position: relative;
				z-index: 103;
				padding-bottom: 20vw;
		}
		.s2 .s2_slider01 .swiper {
				overflow: visible;
		}
		.s2 .s2_slider01 #swiper2 .swiper-slide {
				display: flex;
				flex-direction: column;
				width: 75vw !important;
				margin: 0;
		}
		.s2 .s2_slider01 #swiper2 .swiper-slide .swiper2_img img {
				max-width: 75vw !important;
		}
		.s2 .s2_slider01 #swiper2 .swiper-slide h3 {
				margin: -35px auto 15px;
				font-size: 4.35897vw;
				font-weight: 500;
				line-height: 1;
				text-align: center;
				color: #505050;
		}
		.s2 .s2_slider01 #swiper2 .swiper-slide p {
				font-size: 3.33333vw;
				line-height: 2;
				margin: 0 16px 35px;
		}
		.s2 .s2_slider01 #swiper2 .swiper-slide .w_box {
				width: 75vw;
				margin: 0 auto;
				background-color: #FAF7F4;
				border-radius: 0.76923vw;
		}
		.s2 .s2_slider01 #swiper2 .swiper-slide .w_box h6 {
				font-size: 3.33333vw;
				font-weight: 700;
				line-height: 1;
				color: #CFB19B;
				text-align: center;
				margin: -10px auto 0;
				font-family: "Noto Sans JP", sans-serif;
		}
		.s2 .s2_slider01 #swiper2 .swiper-slide .w_box p {
				font-size: 2.82051vw;
				font-weight: 400;
				line-height: 2.2;
				margin: 15px 21px;
				font-family: "Noto Sans JP", sans-serif;
		}
		.s2 .s2_slider01 #swiper2 .swiper-button-prev {
				background-image: url(../img/s2_prev.svg);
				width: 10vw;
				height: 10vw;
				background-repeat: no-repeat;
				background-size: contain;
				position: absolute;
				top: -20vw;
				left: 70vw;
				z-index: 120;
				cursor: pointer;
		}
		.s2 .s2_slider01 #swiper2 .swiper-button-prev:after {
				content: none;
		}
		.s2 .s2_slider01 #swiper2 .swiper-button-next {
				background-image: url(../img/s2_next.svg);
				width: 10vw;
				height: 10vw;
				background-repeat: no-repeat;
				background-size: contain;
				position: absolute;
				top: -20vw;
				left: 85vw;
				z-index: 110;
				cursor: pointer;
		}
		.s2 .s2_slider01 #swiper2 .swiper-button-next:after {
				content: none;
		}
		.s2 .s2_slider01 #swiper2 .swiper-pagination {
				position: absolute;
				text-align: center;
				transition: .3s opacity;
				transform: translate3d(0, 0, 0);
				z-index: 10;
				bottom: -40px;
				left: 50%;
				ransform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
		}
		.s2 .s2_slider01 #swiper2 .swiper-pagination .swiper-pagination-bullet-active {
				background-color: #CFB19B !important;
				opacity: 1 !important;
		}
		.s2 .s2_slider01 #swiper2 .swiper-pagination .swiper-pagination-bullet {
				background-color: #EBEBEB;
				opacity: 1 !important;
				width: 10px;
				height: 10px;
				margin: 0 8px;
		}
		.s2 .s2_slider02 {
				margin: 0 auto;
				width: 100%;
				position: relative;
				z-index: 103;
		}
		.s2 .s2_slider02 #swiper3 .swiper-wrapper {
				transition-timing-function: linear;
		}
		.s2 .s2_slider02 #swiper3 .swiper-slide {
				display: flex;
				flex-direction: column;
				width: 40vw !important;
				margin: 0;
		}
		.s2 .s2_slider02 #swiper3 .swiper-slide .swiper3_img {
				max-width: 100%;
		}
		.s2 .s2_slider02 #swiper3 .swiper-slide .swiper3_img img {
				max-width: 40vw !important;
		}
}

.s3 {
		background-color: #CFB19B;
		width: 100%;
		height: auto;
		position: relative;
		margin-top: 320px;
		padding-bottom: 140px;
}

.s3 .slide-text {
		position: absolute;
		z-index: 101;
		top: 239px;
		left: 0;
		width: 100%;
		height: 83px;
		background-image: url(../img/s1_typo.svg);
		opacity: 0.13;
		mix-blend-mode: multiply;
		background-repeat: repeat-x;
		background-size: auto 83px;
		/* 画像の高さ */
		animation: textPCloop_r 40s linear infinite;
}

@keyframes textPCloop_r {
		from {
				background-position: 0 0;
		}
		to {
				background-position: 1920px 0;
				/* 画像のマイナス幅 */
		}
}

.s3 .inner {
		width: 960px;
		height: 350px;
		margin: 0 auto;
		position: relative;
}

.s3 .inner .s3_pr00 {
		position: absolute;
		top: -110px;
		left: -454px;
		z-index: 102;
}

.s3 .inner .ttl {
		position: absolute;
		z-index: 102;
		top: -86px;
		left: -100px;
		width: 510px;
		height: 210 px;
		background-image: url(../img/s3_ttl_img.webp);
		background-repeat: no-repeat;
		background-size: contain;
}

.s3 .inner .ttl h2 {
		font-size: 42px;
		color: #fff;
		line-height: 1.8;
		text-align: left;
		margin: 100px 0 0 100px;
}

.s3 .inner .info {
		position: absolute;
		top: 47px;
		right: 0;
}

.s3 .s3_slider {
		margin: -60px auto 0;
		width: 100%;
		position: relative;
		z-index: 103;
}

.s3 .s3_slider #swiper4 .swiper-wrapper {
		transition-timing-function: linear;
}

.s3 .s3_slider #swiper4 .swiper-slide {
		display: flex;
		flex-direction: column;
		width: 456px !important;
		margin: 0;
}

.s3 .s3_slider #swiper4 .swiper-slide .swiper_img {
		max-width: 100%;
}

.s3 .s3_slider #swiper4 .swiper-slide .swiper_img_mt {
		max-width: 100%;
		margin-top: 75px;
		margin-left: 15px;
}

.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner {
		width: 260px;
		margin: -95px auto 0;
}

.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner h6 {
		text-align: left;
		font-size: 22px;
		font-weight: 500;
		line-height: 1.6;
		color: #fff;
		margin-bottom: 15px;
}

.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner h6 span {
		font-size: 16px;
}

.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner ul {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
}

.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner ul li {
		background-color: #DAC0AE;
		border-radius: 50px;
		text-align: center;
		padding: 10px 20px;
		font-size: 12px;
		color: #fff;
		line-height: 1;
		margin: 0 10px 10px 0;
}

.s3 .ac_contents {
		width: 960px;
		margin: 0 auto;
		position: relative;
		padding-top: 50px;
}

.s3 .ac_contents .en_ttl {
		position: absolute;
		top: 50px;
		left: -250px;
		z-index: 99;
		mix-blend-mode: multiply;
		opacity: 0.12;
}

.s3 .ac_contents ul {
		display: flex;
		justify-content: space-between;
		width: 768px;
		margin: 65px auto;
}

.s3 .ac_contents ul li {
		border-radius: 100px;
		border: 1px solid #fff;
		height: 64px;
		text-align: center;
		flex-basis: 368px;
		transition: all ease-in-out 0.125s;
}

.s3 .ac_contents ul li p {
		font-size: 18px;
		font-weight: 400;
		line-height: 1;
		color: #fff;
		position: relative;
		padding: 22px;
}

.s3 .ac_contents ul li p:after {
		content: "";
		background-image: url(../img/s3_arrow.svg);
		width: 22px;
		height: 8px;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: calc(50% - 4px);
		right: 20px;
}

.s3 .ac_contents ul li:hover {
		background-color: #fff;
		filter: drop-shadow(0px 20px 20px rgba(0, 0, 0, 0.08));
}

.s3 .ac_contents ul li:hover p {
		color: #CFB19B;
}

.s3 .ac_contents ul li:hover p:after {
		background-image: url(../img/s3_arrow_on.svg);
}

.s3 .s3_pr01 {
		position: absolute;
		bottom: -200px;
		left: calc(50% + 240px);
		z-index: 102;
}

.s3:after {
		content: "";
		background-image: url(../img/s3_after.svg);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		bottom: -148px;
		left: 0;
		right: 0;
		z-index: 101;
		width: 100%;
		height: 148px;
}

@media (max-width: 780px) {
		.s3 {
				background-color: #CFB19B;
				width: 100%;
				height: auto;
				position: relative;
				margin-top: 12vw;
				padding-bottom: 45vw;
		}
		.s3 .slide-text {
				position: absolute;
				z-index: 101;
				top: 100vw;
				left: 0;
				width: 100%;
				height: 10.64vw;
				background-image: url(../img/s1_typo.svg);
				opacity: 0.13;
				mix-blend-mode: multiply;
				background-repeat: repeat-x;
				background-size: auto 10.64vw;
				/* 画像の高さ */
				animation: textPCloop_r 40s linear infinite;
		}
		@keyframes textPCloop_r {
				from {
						background-position: 0 0;
				}
				to {
						background-position: 1920px 0;
						/* 画像のマイナス幅 */
				}
		}
		.s3 .inner {
				width: 100%;
				height: 30vw;
				margin: 0 auto;
				position: relative;
		}
		.s3 .inner .s3_pr00 {
				position: absolute;
				top: 0;
				left: -15vw;
				z-index: 102;
		}
		.s3 .inner .s3_pr00 img {
				max-width: 50vw;
		}
		.s3 .inner .ttl {
				position: absolute;
				z-index: 102;
				top: 15vw;
				left: 3vw;
				width: 67.692vw;
				height: 32.4vw;
				background-image: url(../img/s3_ttl_img.webp);
				background-repeat: no-repeat;
				background-size: contain;
		}
		.s3 .inner .ttl h2 {
				font-size: 6.41026vw;
				color: #fff;
				line-height: 1.8;
				text-align: left;
				margin: 12vw 0 0 10vw;
				white-space: nowrap;
		}
		.s3 .inner .info {
				position: absolute;
				top: 55vw;
				right: 5vw;
				left: 15vw;
		}
		.s3 .inner .info img {
				max-width: 75vw;
		}
		.s3 .s3_slider {
				margin: 65vw auto 0;
				width: 100%;
				position: relative;
				z-index: 103;
		}
		.s3 .s3_slider #swiper4 .swiper-wrapper {
				transition-timing-function: linear;
		}
		.s3 .s3_slider #swiper4 .swiper-slide {
				display: flex;
				flex-direction: column;
				width: 70vw !important;
				margin: 0;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_img {
				max-width: 100%;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_img img {
				max-width: 70vw;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_img_mt {
				max-width: 100%;
				margin-top: 10vw;
				margin-left: 1vw;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_img_mt img {
				max-width: 70vw;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner {
				width: 50vw;
				margin: -12vw auto 0;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner h6 {
				text-align: left;
				font-size: 3.58974vw;
				font-weight: 500;
				line-height: 1.6;
				color: #fff;
				margin-bottom: 2vw;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner h6 span {
				font-size: 2.82051vw;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner ul {
				display: flex;
				justify-content: flex-start;
				flex-wrap: wrap;
		}
		.s3 .s3_slider #swiper4 .swiper-slide .swiper_inner ul li {
				background-color: #DAC0AE;
				border-radius: 50px;
				text-align: center;
				padding: 1.5vw 2vw;
				font-size: 2.82051vw;
				color: #fff;
				line-height: 1;
				margin: 0 1.5vw 1.5vw 0;
		}
		.s3 .ac_contents {
				width: 80vw;
				margin: 0 auto;
				position: relative;
				padding-top: 10vw;
		}
		.s3 .ac_contents .en_ttl {
				position: absolute;
				top: inherit;
				bottom: -14vw;
				left: -10vw;
				width: 75vw;
				z-index: 99;
				mix-blend-mode: multiply;
				opacity: 0.12;
		}
		.s3 .ac_contents .en_ttl img {
				max-width: 75vw;
		}
		.s3 .ac_contents ul {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				width: 70vw;
				margin: 10vw auto;
		}
		.s3 .ac_contents ul li {
				border-radius: 12.82051vw;
				border: 1px solid #fff;
				height: auto;
				text-align: center;
				flex-basis: 70vw;
				transition: all ease-in-out 0.125s;
				margin-bottom: 3vw;
		}
		.s3 .ac_contents ul li p {
				font-size: 3.33333vw;
				font-weight: 400;
				line-height: 1;
				color: #fff;
				position: relative;
				padding: 4vw 0;
		}
		.s3 .ac_contents ul li p:after {
				content: "";
				background-image: url(../img/s3_arrow.svg);
				width: 4vw;
				height: 1.5vw;
				background-repeat: no-repeat;
				background-size: contain;
				position: absolute;
				top: calc(50% - .7vw);
				right: 4vw;
		}
		.s3 .s3_pr01 {
				position: absolute;
				bottom: -5vw;
				left: 50vw;
				z-index: 102;
		}
		.s3 .s3_pr01 img {
				max-width: 60vw;
		}
		.s3:after {
				content: "none";
		}
}

.s4 {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding-bottom: 200px;
}

.s4 .slide-text {
		position: absolute;
		z-index: 105;
		top: 377px;
		left: 0;
		width: 100%;
		height: 83px;
		background-image: url(../img/s4_typo.svg);
		opacity: 0.13;
		mix-blend-mode: multiply;
		background-repeat: repeat-x;
		background-size: auto 83px;
		/* 画像の高さ */
		animation: textPCloop_r 40s linear infinite;
}

@keyframes textPCloop_r {
		from {
				background-position: 0 0;
		}
		to {
				background-position: 1920px 0;
				/* 画像のマイナス幅 */
		}
}

.s4 .inner {
		width: 960px;
		height: 1590px;
		margin: 0 auto;
		position: relative;
}

.s4 .inner .s4_pr00 {
		position: absolute;
		top: -110px;
		left: -304px;
		z-index: 102;
}

.s4 .inner .s4_pr01 {
		position: absolute;
		top: -80px;
		right: -540px;
		z-index: 102;
}

.s4 .inner .s4_pr02 {
		position: absolute;
		top: 120px;
		left: -591px;
		z-index: -1;
}

.s4 .inner .s4_pr02 img {
		opacity: 0.09;
}

.s4 .inner .s4_pr03 {
		position: absolute;
		top: 1100px;
		right: -550px;
		z-index: 102;
}

.s4 .inner .s4_pr03 img {
		opacity: 0.09;
}

.s4 .inner .ttl {
		position: absolute;
		z-index: 102;
		top: 100px;
		left: 96px;
		width: 610px;
		height: 245px;
		background-image: url(../img/s4_ttl_img.webp);
		background-repeat: no-repeat;
		background-size: contain;
}

.s4 .inner .ttl h2 {
		font-size: 42px;
		color: #fff;
		line-height: 1.8;
		text-align: left;
		margin: 122px 0 0 122px;
		white-space: nowrap;
}

.s4 .inner .date {
		background-image: url(../img/s4_date_bg.svg);
		width: 319px;
		height: 71px;
		position: absolute;
		top: 320px;
		left: 320px;
		z-index: 102;
		display: flex;
		justify-content: center;
		align-items: center;
}

.s4 .inner .date p {
		font-size: 21px;
		font-weight: 600;
		color: #fff;
		line-height: 1;
		text-align: center;
		margin-top: -15px;
}

.s4 .inner ul {
		display: flex;
		justify-content: space-between;
		width: 100%;
		flex-wrap: wrap;
		position: absolute;
		top: 430px;
		left: 0;
		right: 0;
		z-index: 106;
}

.s4 .inner ul li {
		flex-basis: 224px;
		position: relative;
		text-align: center;
		margin-bottom: 85px;
}

.s4 .inner ul li .btn a {
		z-index: 999;
}

.s4 .inner ul li .thm {
		width: 148px;
		height: 148px;
		position: absolute;
		top: 0;
		left: 38px;
		z-index: 106;
		margin: 0 auto 16px;
		cursor: pointer;
}

.s4 .inner ul li .thm .c_bg {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 106;
}

.s4 .inner ul li .thm .thm_img {
		width: 138px;
		height: 138px;
		max-width: 138px;
		position: absolute;
		top: 5px;
		left: 5px;
		z-index: 108;
}

.s4 .inner ul li .thm:hover .c_bg {
		animation: .5s linear infinite rotation;
}

.s4 .inner ul li .thm:hover .thm_img {
		animation: none;
		transform: none;
		transition: unset;
}

.s4 .inner ul li .account {
		margin: 155px auto 15px;
		font-size: 18px;
		font-weight: 500;
		line-height: 1;
		color: #505050;
}

.s4 .inner ul li p {
		font-size: 13px;
		font-weight: 400;
		line-height: 2.3;
		color: #505050;
		text-align: left;
		margin: 0 auto 10px;
}

.s4 .inner ul li .photo {
		max-width: 100%;
		width: 224px;
		height: 194px;
		margin: 0 auto;
		overflow: hidden;
		transition: 1s all;
		border-radius: 10px;
}

.s4 .inner ul li .photo img {
		transition: transform .6s ease;
}

.s4 .inner ul li .photo:hover img {
		transform: scale(1.1, 1.1);
		transition: transform .6s ease;
}

.s4 .sns {
		margin: 50px auto 100px;
		text-align: center;
		position: relative;
		z-index: 110;
}

.s4 .sns h6 {
		font-size: 18px;
		font-weight: 600;
		line-height: 1;
		color: #505050;
}

.s4 .sns ul {
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 25px auto 0;
}

.s4 .sns li {
		margin: 0 14px;
}

.s4 .sns li img {
		max-width: 42px;
}

.s4 .s2_slider02 {
		margin: 0 auto;
		width: 100%;
		position: relative;
		z-index: 103;
}

.s4 .s2_slider02 #swiper3 .swiper-wrapper {
		transition-timing-function: linear;
}

.s4 .s2_slider02 #swiper3 .swiper-slide {
		display: flex;
		flex-direction: column;
		width: 272px !important;
		margin: 0;
}

.s4 .s2_slider02 #swiper3 .swiper-slide .swiper3_img {
		max-width: 100%;
}

.s4:before {
		content: "";
		background-image: url(../img/s4_before.svg);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		top: -2px;
		left: 0;
		right: 0;
		z-index: 102;
		width: 100%;
		height: 597px;
}

@media (max-width: 780px) {
		.s4 {
				position: relative;
				width: 100%;
				height: auto;
				margin: 0 auto;
				padding-bottom: 15vw;
		}
		.s4 .slide-text {
				position: absolute;
				z-index: 105;
				top: 60vw;
				left: 0;
				width: 100%;
				height: 10.64vw;
				background-image: url(../img/s4_typo.svg);
				opacity: 0.13;
				mix-blend-mode: multiply;
				background-repeat: repeat-x;
				background-size: auto 10.64vw;
				/* 画像の高さ */
				animation: textPCloop_r 40s linear infinite;
		}
		@keyframes textPCloop_r {
				from {
						background-position: 0 0;
				}
				to {
						background-position: 1920px 0;
						/* 画像のマイナス幅 */
				}
		}
		.s4 .inner {
				width: 80vw;
				height: 440vw;
				margin: 0 auto;
				position: relative;
		}
		.s4 .inner .s4_pr00 {
				position: absolute;
				top: -10vw;
				left: -25vw;
				right: 80vw;
				z-index: 104;
		}
		.s4 .inner .s4_pr00 img {
				max-width: 35vw;
		}
		.s4 .inner .s4_pr01 {
				display: none;
		}
		.s4 .inner .s4_pr02 {
				position: absolute;
				top: 120vw;
				left: -10vw;
				z-index: -1;
		}
		.s4 .inner .s4_pr02 img {
				opacity: 0.09;
				max-width: 33.3vw;
		}
		.s4 .inner .s4_pr03 {
				position: absolute;
				top: 300vw;
				right: -10vw;
				z-index: 102;
		}
		.s4 .inner .s4_pr03 img {
				opacity: 0.09;
				max-width: 34.3vw;
		}
		.s4 .inner .ttl {
				position: absolute;
				z-index: 103;
				top: 0;
				left: 3vw;
				width: 78vw;
				height: 31.4vw;
				background-image: url(../img/s4_ttl_img.webp);
				background-repeat: no-repeat;
				background-size: contain;
		}
		.s4 .inner .ttl h2 {
				font-size: 6.41026vw;
				color: #fff;
				line-height: 1.8;
				text-align: left;
				margin: 15vw 0 0 0vw;
				white-space: nowrap;
		}
		.s4 .inner .date {
				background-image: url(../img/s4_date_bg.svg);
				background-repeat: no-repeat;
				background-size: contain;
				width: 55vw;
				height: 12.17vw;
				position: absolute;
				top: 32vw;
				left: 10vw;
				z-index: 103;
				display: flex;
				justify-content: center;
				align-items: center;
		}
		.s4 .inner .date p {
				font-size: 3.58974vw;
				font-weight: 600;
				color: #fff;
				line-height: 1;
				text-align: center;
				margin-top: -2vw;
		}
		.s4 .inner ul {
				display: flex;
				justify-content: space-between;
				width: 80vw;
				flex-wrap: wrap;
				position: absolute;
				top: 50vw;
				left: 0;
				right: 0;
				z-index: 106;
		}
		.s4 .inner ul li {
				flex-basis: 35vw;
				position: relative;
				text-align: center;
				margin-bottom: 10vw;
		}
		.s4 .inner ul li .btn a {
				z-index: 999;
		}
		.s4 .inner ul li .thm {
				width: 24vw;
				height: 24vw;
				position: absolute;
				top: 0;
				left: 6vw;
				z-index: 106;
				margin: 0 auto 16px;
				cursor: pointer;
		}
		.s4 .inner ul li .thm .c_bg {
				position: absolute;
				top: 0;
				left: 0;
				z-index: 106;
		}
		.s4 .inner ul li .thm .c_bg img {
				max-width: 100%;
		}
		.s4 .inner ul li .thm .thm_img {
				width: 22vw;
				height: 22vw;
				max-width: 22vw;
				position: absolute;
				top: 1vw;
				left: 1vw;
				z-index: 108;
		}
		.s4 .inner ul li .thm .thm_img img {
				max-width: 100%;
		}
		.s4 .inner ul li .account {
				margin: 26vw auto 1.5vw;
				font-size: 3.33333vw;
				font-weight: 500;
				line-height: 1;
				color: #505050;
		}
		.s4 .inner ul li p {
				font-size: 2.5641vw;
				font-weight: 400;
				line-height: 2;
				color: #505050;
				text-align: left;
				margin: 0 auto 3vw;
		}
		.s4 .inner ul li .photo {
				max-width: 35vw;
				width: 100%;
				height: auto;
				margin: 0 auto;
				border-radius: 10px;
		}
		.s4 .inner ul li .photo img {
				max-width: 100%;
		}
		.s4 .sns {
				margin: 15vw auto 20vw;
				text-align: center;
		}
		.s4 .sns h6 {
				font-size: 3.46154vw;
				font-weight: 600;
				line-height: 1;
				color: #505050;
		}
		.s4 .sns ul {
				display: flex;
				justify-content: center;
				align-items: center;
				margin: 3vw auto 0;
		}
		.s4 .sns li {
				margin: 0 3vw;
		}
		.s4 .sns li img {
				max-width: 8vw;
		}
		.s4 .s2_slider02 {
				margin: 0 auto;
				width: 100%;
				position: relative;
				z-index: 103;
		}
		.s4 .s2_slider02 #swiper3 .swiper-wrapper {
				transition-timing-function: linear;
		}
		.s4 .s2_slider02 #swiper3 .swiper-slide {
				display: flex;
				flex-direction: column;
				width: 40vw !important;
				margin: 0;
		}
		.s4 .s2_slider02 #swiper3 .swiper-slide .swiper3_img {
				max-width: 100%;
		}
		.s4 .s2_slider02 #swiper3 .swiper-slide .swiper3_img img {
				max-width: 40vw !important;
		}
		.s4:before {
				content: "";
				background-image: url(../img/s4_before-s.svg);
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: absolute;
				top: -10vw;
				left: 0;
				right: 0;
				z-index: 103;
				width: 100%;
				height: 92.0256vw;
		}
}

.s5:before {
		content: "";
		background-image: url(../img/s4_after.svg);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		top: -831px;
		left: 0;
		right: 0;
		z-index: 102;
		width: 100%;
		height: 831px;
}

.s5 {
		width: 100%;
		height: auto;
		position: relative;
		margin: 0 auto;
		background-color: #CFB19B;
}

.s5 .inner {
		width: 960px;
		margin: 0 auto;
		position: relative;
		padding: 50px 0 100px;
}

.s5 .inner .s5_pr00 {
		position: absolute;
		top: -150px;
		left: -331px;
		z-index: 102;
}

.s5 .inner .s5_pr01 {
		position: absolute;
		bottom: 0;
		right: -660px;
}

.s5 .inner .ttl {
		position: absolute;
		z-index: 102;
		top: -20px;
		left: -65px;
		width: 253px;
		height: 137px;
		background-image: url(../img/s5_ttl_bg.webp);
		background-repeat: no-repeat;
		background-size: contain;
}

.s5 .inner .ttl h2 {
		font-size: 40px;
		color: #fff;
		line-height: 1;
		text-align: left;
		margin: 60px 0 0 75px;
		white-space: nowrap;
}

.s5 .inner #news {
		margin: 0 0 0 208px;
		text-align: center;
}

.s5 .inner #news .news {
		display: flex;
		justify-content: space-between;
		width: 100%;
		padding-bottom: 30px;
		margin-bottom: 30px;
		border-bottom: 1px dotted #fff;
}

.s5 .inner #news .news .news_date {
		flex-basis: 96px;
		text-align: left;
}

.s5 .inner #news .news .news_date .date {
		font-size: 14px;
		color: #fff;
		line-height: 2;
		font-weight: 500;
		letter-spacing: -0.01em;
}

.s5 .inner #news .news .news_txt {
		flex-basis: 656px;
		text-align: left;
}

.s5 .inner #news .news .news_txt h5 {
		font-size: 18px;
		font-weight: 600;
		line-height: 1.6;
		color: #fff;
		margin-bottom: 15px;
}

.s5 .inner #news .news .news_txt p {
		font-size: 14px;
		font-weight: 400;
		line-height: 2.4;
		color: #fff;
}

.s5 .inner #news .news .news_txt p a {
		text-decoration: underline;
		color: #976a53;
}

.s5 .inner #news .newsnav {
		background-color: #fff;
		border-radius: 100px;
		padding: 15px 0;
		text-align: center;
		display: inline-block;
		cursor: pointer;
}

.s5 .inner #news .newsnav span {
		font-size: 15px;
		font-weight: 700;
		color: #CFB19B;
		margin: 0 90px;
		position: relative;
}

.s5 .inner #news .newsnav span:after {
		content: "";
		background-image: url(../img/news_nav_arrow.svg);
		background-repeat: no-repeat;
		background-size: contain;
		width: 22px;
		height: 8px;
		position: absolute;
		top: calc(50% - 4px);
		right: -70px;
}

@media (max-width: 780px) {
		.s5:before {
				content: "";
				background-image: url(../img/s4_after-s.svg);
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: absolute;
				top: -59vw;
				left: 0;
				right: 0;
				z-index: 102;
				width: 100%;
				height: 59.10256vw;
		}
		.s5 {
				width: 100%;
				height: auto;
				position: relative;
				margin: 0 auto;
				background-color: #CFB19B;
		}
		.s5 .inner {
				width: 80vw;
				margin: 0 auto;
				position: relative;
				padding-bottom: 12vw;
		}
		.s5 .inner .s5_pr01 {
				position: absolute;
				bottom: inherit;
				top: 6vw;
				left: 50vw;
				z-index: 102;
		}
		.s5 .inner .s5_pr01 img {
				max-width: 60vw;
		}
		.s5 .inner .ttl {
				position: absolute;
				z-index: 102;
				top: 0;
				left: -10vw;
				width: 33.46154vw;
				height: 18.20513vw;
				background-image: url(../img/s5_ttl_bg.webp);
				background-repeat: no-repeat;
				background-size: contain;
		}
		.s5 .inner .ttl h2 {
				font-size: 6.41026vw;
				color: #fff;
				line-height: 1;
				text-align: left;
				margin: 10vw 0 0 10vw;
				white-space: nowrap;
		}
		.s5 .inner #news {
				margin: 0 auto 0;
				text-align: center;
				padding-top: 12vw;
		}
		.s5 .inner #news .news {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				width: 100%;
				padding-bottom: 5vw;
				margin-bottom: 7vw;
				border-bottom: 1px dotted #fff;
		}
		.s5 .inner #news .news .news_date {
				flex-basis: 100%;
				text-align: left;
		}
		.s5 .inner #news .news .news_date .date {
				font-size: 2.5641vw;
				color: #fff;
				line-height: 1;
				font-weight: 500;
				letter-spacing: -0.01em;
				margin-bottom: 1.5vw;
		}
		.s5 .inner #news .news .news_txt {
				flex-basis: 100%;
				text-align: left;
		}
		.s5 .inner #news .news .news_txt h5 {
				font-size: 3.58974vw;
				font-weight: 600;
				line-height: 1.6;
				color: #fff;
				margin-bottom: 3vw;
		}
		.s5 .inner #news .news .news_txt p {
				font-size: 2.82051vw;
				font-weight: 400;
				line-height: 2.4;
				color: #fff;
		}
		.s5 .inner #news .news .news_txt p a {
				text-decoration: underline;
				color: #976a53;
		}
		.s5 .inner #news .newsnav {
				background-color: #fff;
				border-radius: 12.82051vw;
				padding: 3.5vw 0;
				text-align: center;
				display: inline-block;
				cursor: pointer;
				position: relative;
				z-index: 100;
		}
		.s5 .inner #news .newsnav span {
				font-size: 3.33333vw;
				font-weight: 700;
				color: #CFB19B;
				margin: 0 90px;
				position: relative;
		}
		.s5 .inner #news .newsnav span:after {
				content: "";
				background-image: url(../img/news_nav_arrow.svg);
				background-repeat: no-repeat;
				background-size: contain;
				width: 5vw;
				height: 1.6vw;
				position: absolute;
				top: calc(50% - .8vw);
				right: -18vw;
		}
}

.s6 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		background-color: #CFB19B;
		position: relative;
		padding-top: 100px;
}

.s6 .slide-text {
		position: absolute;
		z-index: 0;
		top: -20px;
		left: 0;
		width: 100%;
		height: 83px;
		background-image: url(../img/s5_typo.svg);
		opacity: 0.13;
		mix-blend-mode: multiply;
		background-repeat: repeat-x;
		background-size: auto 83px;
		/* 画像の高さ */
		animation: textPCloop 40s linear infinite;
}

@keyframes textPCloop {
		from {
				background-position: 0 0;
		}
		to {
				background-position: -1920px 0;
				/* 画像のマイナス幅 */
		}
}

.s6 .inner {
		width: 960px;
		margin: 0 auto;
		position: relative;
}

.s6 .inner .s6_pr01 {
		position: absolute;
		bottom: 50px;
		left: -454px;
		z-index: 102;
}

.s6 .inner .ttl {
		position: absolute;
		z-index: 102;
		top: -60px;
		left: -85px;
		width: 362px;
		height: 161px;
		background-image: url(../img/s6_ttl_bg.webp);
		background-repeat: no-repeat;
		background-size: contain;
}

.s6 .inner .ttl h2 {
		font-size: 40px;
		color: #fff;
		line-height: 1.82;
		text-align: left;
		margin: 60px 0 0 95px;
		white-space: nowrap;
}

.s6 .inner .faq {
		margin: 0 0 0 208px;
}

.s6 .bnr {
		width: 544px;
		margin: 0 auto;
		overflow: hidden;
		transition: 1s all;
		border-radius: 10px;
}

.s6 .bnr img {
		max-width: 100%;
		transition: transform .6s ease;
}

.s6 .bnr:hover img {
		transform: scale(1.1, 1.1);
		transition: transform .6s ease;
}

@media (max-width: 780px) {
		.s6 {
				width: 100%;
				height: auto;
				margin: 0 auto;
				background-color: #CFB19B;
				position: relative;
				padding-top: 100px;
		}
		.s6 .slide-text {
				position: absolute;
				z-index: 0;
				top: -15vw;
				left: 0;
				width: 100%;
				height: 10.64vw;
				background-image: url(../img/s5_typo.svg);
				opacity: 0.13;
				mix-blend-mode: multiply;
				background-repeat: repeat-x;
				background-size: auto 10.64vw;
				/* 画像の高さ */
				animation: textPCloop 40s linear infinite;
		}
		@keyframes textPCloop {
				from {
						background-position: 0 0;
				}
				to {
						background-position: -1920px 0;
						/* 画像のマイナス幅 */
				}
		}
		.s6 .inner {
				width: 80vw;
				margin: 0 auto;
				position: relative;
		}
		.s6 .inner .s6_pr01 {
				position: absolute;
				bottom: inherit;
				top: -36vw;
				left: -25vw;
				z-index: 102;
		}
		.s6 .inner .s6_pr01 img {
				max-width: 50vw;
		}
		.s6 .inner .ttl {
				position: absolute;
				z-index: 102;
				top: 0;
				left: -8vw;
				width: 47.94872vw;
				height: 21.28205vw;
				background-image: url(../img/s6_ttl_bg.webp);
				background-repeat: no-repeat;
				background-size: contain;
		}
		.s6 .inner .ttl h2 {
				font-size: 6.41026vw;
				color: #fff;
				line-height: 1.82;
				text-align: left;
				margin: 10vw 0 0 8vw;
				white-space: nowrap;
		}
		.s6 .inner .faq {
				margin: 0 0 0 0;
				padding-top: 22vw;
		}
		.s6 .bnr {
				width: 90vw;
				margin: 0 auto;
		}
		.s6 .bnr img {
				max-width: 100%;
		}
}
