@keyframes change-movie-fadein {
	0%{
		opacity: 1;
	}
	20%{
		opacity: 1;
		transform: scale(1.02);
	}
	30%{
		opacity: 1;
		transform: scale(1.02);
	}
	100%{
		opacity: 0;
		transform: scale(1.1);
	}
}
@keyframes change-img-fadein {
	0%{ opacity: 0; }
	12%{ opacity: 1; }
	16%{ opacity: 1; }
	30%{
		opacity: 0;
		transform: scale(1.02);
	}
	100%{
		opacity: 0;
		transform: scale(1.1);
	}
}
@keyframes change-img-fadeout {
	0%{
		opacity: 0;
		transform: scale(1.1);
	}
	12%{ opacity: 1; }
	16%{ opacity: 1; }
	25% { opacity: 0; }
	30%{
		opacity: 0;
		transform: scale(1.08);
	}
	100%{
		opacity: 0;
		transform: scale(1);
	}
}
@keyframes change-img4-fadeout {
	0%{
		opacity: 0;
		transform: scale(1.1);
	}
	12%{ opacity: 1; }
	14%{
		opacity: 1;
		transform: scale(1.08);
	}
	20% {
		opacity: 0;
		transform: scale(1.08);
	}
	30%{
		opacity: 0;
		transform: scale(1.08);
	}
	40%{ opacity: 0; }
	50%{ opacity: 0; }
	60%{ opacity: 0; }
	70%{ opacity: 0; }
	80%{ opacity: 0; }
	90%{ opacity: 0; }
	100%{
		opacity: 0;
		transform: scale(1);
	}
}
@keyframes change-img1-fadeout {
	0%{ opacity: 1; }
	12%{ opacity: 1; }
	16%{ opacity: 1; }
	30%{
		transform: scale(1.01);
		opacity: 0;
	}
	60%{
		transform: scale(1.01);
		opacity: 0;
	}
	70%{
		transform: scale(1);
		opacity: 1;
	}
	100%{
		transform: scale(1);
		opacity: 1;
	}
}
@keyframes change-content-img {
	0%{ opacity: 1; }
	5%{ opacity: 1; }
	10%{ opacity: 0; }
	60%{ opacity: 0; }
	70%{ opacity: 1; }
	100%{ opacity: 1; }
}
.top-movie-pc {
	display: block;
	position: relative;
	transform: none;
	width: 100%;
	height: 100%;
/* 	aspect-ratio: 1556 / 909; */
	aspect-ratio: 1556 / 1100;
}
.top-movie-pc-1,
.top-movie-pc-2,
.top-movie-pc-3,
.top-movie-pc-4 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
}
.top-movie-pc-1{
	width: 100%;
	display: block;
	position: relative;
	transform: none;
	width: 100%;
}
.top-movie-pc-1-content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	/* aspect-ratio: 1609 / 915; */
	height: 135%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}

/* 6秒までのアニメーション */
.top-movie-pc-content-1 {
	width: calc(50% - 2px);
	border-bottom: 4px solid #FFF;
	border-right: 4px solid #FFF;
	box-sizing: content-box;
	animation: change-content-img 18s infinite;
	animation-delay: 5s;
	opacity: 1;
}
.top-movie-pc-content-2 {
	width: calc(50% - 2px);
	opacity: 1;
}
.top-movie-pc-content-3 {
	width: calc(50% - 2px);
	border-right: 4px solid #FFF;
	box-sizing: content-box;
	animation: change-content-img 18s infinite;
	animation-delay: 5s;
	opacity: 1;
}
.top-movie-pc-content-4 {
	width: calc(50% - 2px);
	border-top: 4px solid #FFF;
	box-sizing: content-box;
	animation: change-content-img 18s infinite;
	animation-delay: 5s;
	opacity: 1;
}
.top-movie-pc-content-1 img {
	animation: change-content-img 18s infinite;
	animation-delay: 3s;
	opacity: 1;
}
.top-movie-pc-content-2 img {
	animation: change-content-img 18s infinite;
	animation-delay: 4s;
	opacity: 1;
}
.top-movie-pc-content-3 img {
	/* 	.top-movie-content-3 .top-movie-content-3-wrapper { */
	animation: change-content-img 18s infinite;
	animation-delay: 2s;
	opacity: 1;
	background: #fff;
}
.top-movie-pc-content-4 img {
	animation: change-content-img 18s infinite;
	animation-delay: 1s;
	opacity: 1;
}

/* 6秒後のアニメーション */
.top-movie-pc-1 {
	animation: change-img1-fadeout 18s infinite;
	animation-delay: 6s;
	transform: scale(1);
	position: relative;
	opacity: 1;
}
.top-movie-pc-2 {
	animation: change-img-fadeout 18s infinite;
	animation-delay: 9s;
	transform: scale(1.1);
}
.top-movie-pc-3 {
	animation: change-img-fadein 18s infinite;
	animation-delay: 12s;
	transform: scale(1);
}
.top-movie-pc-4 {
	animation: change-img-fadeout 18s infinite;
	animation-delay: 15s;
	transform: scale(1.1);
}



.top-visual-title {
/* 	display: none; */
	position: absolute;
	top: calc(100% - 64%);
	width: 100%;
	text-align: center;
	letter-spacing: .2rem;
	z-index: 2;
	color: #ffffff;
	font-family: 'Noto Serif JP', serif;
	background-color: rgba(0, 0, 0, 0.3);
	padding: 2rem 0;
}
.top-visual-text {
	font-size: 2rem;
}
.top-visual-title-en {
	font-size: 1.5rem;
}

.top-mainVisual-container {
	width: 100%;
/* 	height: calc(100vh - 86px); */
/* 	max-height: calc(100vh - 86px); */
	margin-top: 60px;
	aspect-ratio: 1609 / 915;
	display: block;
	position: relative;
	overflow: hidden;
}
.top-movie-sp {
	display: none;
}
.top-mainVisual-container .top-slider img {
	width: 100%;
	height: auto;
	display: block;
	vertical-align: bottom;
}

	.top-about-container {
	  width: 100%;
	  max-width: 1200px;
	  margin: 0px auto 200px;
	  position: relative;
	}
	.top-about-container::before {
		content: 'ABOUT';
		position: absolute;
		top: 240px;
		left: -120px;
		transform: rotate(90deg);
		color: #3E3A39;
		font-size: 22px;
		font-family: 'Yu Gothic', serif;
		letter-spacing: 6.6px;
	}
	.top-about-title {
	  position: relative;
	  z-index: 2;
	}
	.top-about-wrapper {
	  width: 54%;
	  position: relative;
	  background-image: url(<?php echo get_stylesheet_directory_uri(); ?>/images/top-texture_1);
	  background-size: cover;
	  margin-top: -20px;
	}
	.top-about {
		position: relative;
		margin-bottom: 40px;
	}
	.top-about::before {
		content: '';
		position: absolute;
		top: 74px;
		right: 46%;
		background-image: url(../images/concept/texture-new.jpg);
		background-repeat: no-repeat;
		width: 100%;
		max-width: 900px;
		aspect-ratio: 8 / 5;
		z-index: -1;
	}
	.top-about-content {
	  max-width: calc(620px + 8%);
	  width: 100%;
	  margin-left: auto;
	  padding: 120px 160px 120px 40px;
	  position: relative;
	}
	.top-about-content h3 {
	  margin-bottom: 16px;
	  font-size: 20px;
	  letter-spacing: 7px;
	}
	.top-about-content p {
	  margin-bottom: 48px;
	  font-size: 14px;
	  letter-spacing: 3.6px;
	  line-height: 2;
		font-family: 'Noto Serif JP', serif;
	}
	.top-about-image {
	  position: absolute;
	  top: 180px;
	  left: 44%;
	  width: 56%;
	  max-width: 1000px;
	  display: block;
	  z-index: 1;
	}
	.top-about-title { padding-left: 20px; }

	.top-contact {
		padding-top: 6rem;
		background-color: #F5F5F5;
	}
	.top-contact-title {
		width: 100%;;
		max-width: 1240px;
		margin-inline: auto;
		padding-inline: 20px;
	}
	.top-contact-container {
		background-image: url(../images/top-contact-bg.jpg);
		background-size: 50% 100%;
		background-repeat: no-repeat;
		background-color: #575959;
		padding-block: 4rem;
		margin-top: 2rem;
	}
	.top-contact-content {
		position: relative;
		width: calc(100% - 40px);
		max-width: 1200px;
		margin-inline: auto;
		background-color: #FFFFFF;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.top-contact-content::before {
		content: '';
		position: absolute;
		top: 20%;
		right: calc(50% - .5px);
		width: 1px;
		height: 60%;
		background-color: #575959;
	}
	.top-contact-content::after {
		content: 'CONTACT';
		position: absolute;
		top: 60px;
		left: -130px;
		transform: rotate(90deg);
		color: #3E3A39;
		font-size: 22px;
		font-family: 'Yu Gothic', serif;
		letter-spacing: 6.6px;
	}
	.top-contact-answer {
		display: grid;
		place-items: center;
		grid-column: span 1 / span 1;
		position: relative;
	}
	.top-contact-answer ul {
		display: inline-grid;
		row-gap: 12px;
		list-style: none;
		margin-top: 40px;
	}
	.top-contact-answer ul li { position: relative;	}
	.top-contact-answer ul li::before {
		content: '';
		position: absolute;
		top: calc(50% - 1.5px);
		left: -12px;
		width: 3px;
		height: 3px;
		background-color: #575959;
		border-radius: 50%;
	}
	.top-contact-answer-text {
		position: absolute;
		top: 40px;
		left: 36px;
		transform: rotate(-6deg);
		font-size: 14px;
		font-family: 'Noto Serif JP', serif;
	}
	.top-contact-answer-text img {
		position: absolute;
		bottom: -42px;
		left: 0;
		width: 100%;
		transform: rotate(9deg);
	}
	.top-contact-info {
		padding-block: 4rem;
		display: grid;
		place-content: center;
		grid-column: span 1 / span 1;
	}
	.top-contact-tel {
		display: flex;
		align-items: end;
		column-gap: 10px;
	}
	.top-contact-tel span:nth-child(1) {
		padding-bottom: 4px;
		font-size: 14px;
		font-weight: bold;
		letter-spacing: 4.8px;
	}
	.top-contact-tel span:nth-child(2) {
		font-size: 24px;
		font-weight: bold;
		letter-spacing: 7.8px;
		color: #3E3A39;
	}
	.top-contact-tel span:nth-child(2) a {
		text-decoration: none;
		color: #3E3A39;
	}
.top-contact-tel img {
	width: 20px;
	display: block;
	margin-bottom: 3px;
}
	.top-contact-holiday {
		color: #8D8D8D;
		font-size: 14px;
		letter-spacing: 2px;
		margin-bottom: 24px;
	}
	.top-contact-link {
		width: 320px;
		height: 48px;
		display: flex;
		align-items: center;
		justify-content: center;
		column-gap: 20px;
		background-color: #00863D;
		color: #FFFFFF;
		letter-spacing: 2.4px;
		border-radius: 6px;
		text-decoration: none;
	}
	.top-contact-link img { width: 20px; }

	.top-banner {
		padding: 4rem 0 10rem;
		background-color: #F5F5F5;
	}
.top-banner a {
	width: 100%;
		max-width: 1200px;
		margin-inline: auto;
		display: block;
}
	.top-banner img {
		width: 100%;
		max-width: 1200px;
		margin-inline: auto;
		display: block;
	}
	.top-banner img.top-banner-sp { display: none; }

	.top-blog,
   .top-instargam {
		width: 100%;
		max-width: 1240px;
		margin-inline: auto;
		padding-inline: 20px;
	   padding-bottom: 6rem;
		display: grid;
		color: #3E3A39;
  }
	.top-blog-container {
		width: 100%;
		margin-top: 2rem;
	}
	.top-blog-link {
		width: 230px;
		height: 46px;
		position: relative;
		display: flex;
		align-items: center;
		padding-left: 36px;
		margin-left: auto;
		background-color: #575959;
		color: #FFFFFF;
		letter-spacing: 8.5px;
		font-size: 14px;
		cursor: pointer;
		text-decoration: none;
	}
	.top-blog-link::before {
		content: '';
		position: absolute;
		top: calc(50% - .5px);
		right: 0;
		width: 52px;
		height: 1px;
		background-color: #FFFFFF;
	}
	.top-blog ul {
		list-style: none;
		margin-bottom: 4rem;
	}
	.top-blog ul li a {
		display: flex;
		align-items: center;
		column-gap: 12px;
		flex-wrap: wrap;
		padding-block: 16px;
		border-bottom: 1px solid #CCCCCC;
		text-decoration: none;
	}
	.top-blog-date {
		color: #3E3A39;
		font-size: 12px;
		font-weight: bold;
		letter-spacing: 2.16px;
	}
	.top-blog-category {
		width: 100px;
		padding: 6px 10px;
		background-color: #EEEEEE;
		color: #3E3A39;
		font-size: 12px;
		letter-spacing: 1.6px;
		text-align: center;
	}
	.top-blog-title {
		color: #3E3A39;
		font-size: 14px;
		letter-spacing: 2.16px;
	}

	.top-concept-container {
		width: 100%;
		max-width: 1200px;
		margin: 80px auto 200px;
		padding-top: 80px;
		position: relative;
	}
	.top-concept-wrapper {
		width: 54%;
		position: relative;
	}
.top-concept-wrapper::before {
	content: '';
	position: absolute;
	width: 900px;
	top: 10px;
   right: 38px;
	aspect-ratio: 8 / 3.9;
	background-image: url(../images/concept/texture-new.jpg);
	background-size: cover;
}
	.top-concept-content {
		max-width: calc(620px + 8%);
		width: 100%;
		margin-left: auto;
		padding: 120px 160px 120px 40px;
		position: relative;
	}
	.top-concept-container::after {
		content: 'CONCEPT';
		position: absolute;
		top: 260px;
		left: -130px;
		transform: rotate(90deg);
		color: #3E3A39;
		font-size: 22px;
		font-family: 'Yu Gothic', serif;
		letter-spacing: 6.6px;
	}
	.top-concept-content h3 {
		margin-bottom: 16px;
		font-size: 20px;
		letter-spacing: 7px;
		font-family: 'Noto Serif JP', serif;
		font-weight: 400;
	}
	.top-concept-content p {
		margin-bottom: 48px;
		font-size: 14px;
		letter-spacing: 3.6px;
		line-height: 2;
	}
	.top-concept-circle {
		width: 100px;
		height: 100px;
		display: block;
		position: absolute;
		top: 40px;
		right: calc(50% - 56px);
		z-index: 1;
	}
	.top-concept-title {
		position: absolute;
		bottom: -60px;
		left: 0;
		padding-left: 20px;
		width: auto;
		z-index: 2;
	}
	.top-concept-image {
		position: absolute;
		top: 190px;
		left: 46%;
		width: 54%;
		max-width: 1000px;
		display: block;
		z-index: 1;
	}
.top-concept-text {
	font-family: serif;
}

	.top-instagram { grid-column: span 1 / span 1; }
	.top-instargam-container {
		width: 100%;
		margin-top: 2rem;
	}
	.top-instargam-link {
		width: 230px;
		height: 46px;
		position: relative;
		display: flex;
		align-items: center;
		padding-left: 36px;
		margin-top: 48px;
		margin-left: auto;
		background-color: #575959;
		color: #FFFFFF;
		letter-spacing: 8.5px;
		font-size: 14px;
		cursor: pointer;
	}
	.top-instargam-link::before {
		content: '';
		position: absolute;
		top: calc(50% - .5px);
		right: 0;
		width: 52px;
		height: 1px;
		background-color: #FFFFFF;
	}
	.top-instargam #sb_instagram #sbi_images {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
	}
	.top-instargam #sb_instagram.sbi_col_3 #sbi_images .sbi_item, #sb_instagram.sbi_col_3.sbi_disable_mobile #sbi_images .sbi_item {
		width: auto;
		grid-column: span 1 / span 1;
	}

	.top-news {
	  background-color: #FFF;
	  padding-block: 6rem;
	}
	.top-news-container {
	  width: 100%;
	  max-width: 1200px;
	  margin: 2rem auto 0;
	}
	.top-news-link {
	  width: 230px;
	  height: 46px;
	  position: relative;
	  display: flex;
	  align-items: center;
	  padding-left: 36px;
	  margin-left: auto;
	  background-color: #575959;
	  color: #FFFFFF;
	  letter-spacing: 8.5px;
	  font-size: 14px;
	  cursor: pointer;
	}
	.top-news-link::before {
	  content: '';
	  position: absolute;
	  top: calc(50% - .5px);
	  right: 0;
	  width: 52px;
	  height: 1px;
	  background-color: #FFFFFF;
	}
	.top-news ul { list-style: none; }
	.top-news ul li a {
	  display: flex;
	  align-items: center;
	  column-gap: 12px;
	  padding-block: 16px;
	  border-bottom: 1px solid #CCCCCC;
	  text-decoration: none;
	}
	.top-news-date {
	  color: #3E3A39;
	  font-size: 12px;
	  font-weight: bold;
	  letter-spacing: 2.16px;
	}
	.top-news-category {
	  width: 100px;
	  padding: 6px 10px;
	  background-color: #EEEEEE;
	  color: #3E3A39;
	  font-size: 12px;
	  letter-spacing: 1.6px;
	  text-align: center;
	}
	.top-news-title {
	  color: #3E3A39;
	  font-size: 14px;
	  letter-spacing: 2.16px;
	}

	.top-work {
		width: 100%;
		max-width: 100%;
		position: relative;
	}
	.top-work-container::before {
		content: 'WORKS';
		position: absolute;
		top: 100px;
		left: -120px;
		transform: rotate(90deg);
		color: #3E3A39;
		font-size: 22px;
		font-family: 'Yu Gothic', serif;
		letter-spacing: 6.6px;
	}
	.top-work::after {
		content: '';
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 22%;
		background-color: #F5F5F5;
	}
	.top-work-wrap {
		width: 100%;
		max-width: 1240px;
		margin-inline: auto;
		position: relative;
	}
	.top-work-container {
		width: 100%;
		max-width: 1200px;
		margin: 2rem auto 0;
		position: relative;
	}
	.top-work-swiper-prev {
		position: absolute;
		top: calc(50% - 12px);
		left: -42px;
		width: 24px;
		height: 24px;
		border-bottom: 3px solid #3E3A39;
		border-left: 3px solid #3E3A39;
		background-color: transparent;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.top-work-swiper-next {
		position: absolute;
		top: calc(50% - 12px);
		right: -42px;
		width: 24px;
		height: 24px;
		border-top: 3px solid #3E3A39;
		border-right: 3px solid #3E3A39;
		background-color: transparent;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.top-work-list {
		list-style: none;
		display: flex;
	}
	.top-work-list li {
		width: 20%;
		display: flex;
		align-items: center;
		justify-content: center;
		column-gap: 12px;
		padding-block: 20px;
		cursor: pointer;
	}
	.top-work-list li img { width: 24px; }
	.top-work-list li span {
		letter-spacing: 2.4px;
		font-size: 14px;
	}
	.swiper { width: 100%; }
	.swiper-slide {
		position: relative;
	}
	.top-swiper-content {
		position: absolute;
		bottom: 3%;
		right: 0;
		width: 420px;
		background-color: #FFFFFF;
		padding: 36px;
		display: grid;
		row-gap: 36px;
	}
	.top-swiper-title {
		display: grid;
		row-gap: 4px;
		font-family: 'Noto Serif JP', serif;
	}
	.top-swiper-title span:nth-child(1) {
		font-size: 14px;
		letter-spacing: 3px;
		font-weight: 400;
	}
	.top-swiper-title span:nth-child(2) {
		font-size: 24px;
		letter-spacing: 5.6px;
		font-weight: 400;
	}
	.top-swiper-content p {
		color: #3E3A39;
		font-size: 16px;
		letter-spacing: 1.8px;
		line-height: 2;
		font-family: serif;
	}
	.top-work-link {
		width: 230px;
		height: 46px;
		position: relative;
		display: flex;
		align-items: center;
		padding-left: 36px;
		margin-left: auto;
		background-color: #575959;
		color: #FFFFFF;
		letter-spacing: 8.5px;
		font-size: 14px;
		text-decoration: none;
		cursor: pointer;
	}
	.top-work-link::before {
		content: '';
		position: absolute;
		top: calc(50% - .5px);
		right: 0;
		width: 52px;
		height: 1px;
		background-color: #FFFFFF;
	}

	.top-container {
		width: 100%;
		max-width: 1240px;
		margin-inline: auto;
		padding: 0 20px 6rem;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 60px;
	}

.top-work-list-item img:nth-child(2) {
	display: none;
}
.top-work-list-item br { display: none; }
.top-work-list-item.is-top-work-active {
	background-color: #575959;
	color: #FFFFFF;
}
.top-work-list-item.is-top-work-active img:nth-child(1) {
	display: none;
}
.top-work-list-item.is-top-work-active img:nth-child(2) {
	display: block;
}

.top-swiprt-content-wrap {
	position: relative;
}
.top-work-slider-container {
	padding-top: 24px;
	margin-bottom: 4rem;
}
.top-work-slider-container ul{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	justify-content: center;
	gap: 24px;
	list-style: none;
	padding-inline: 64px;
}
.top-work-slider-container ul li a {
	display: grid;
	row-gap: 12px;
	text-decoration: none;
}
.top-work-slider-item-tags {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.top-work-slider-item-tag {
	padding: 6px 14px;
	border-radius: 3px;
	background-color: #EEEEEE;
	color: #3E3A39;
	font-size: 12px;
	font-family: 'Yu Gothic', serif;
	font-weight: 500;
}
.top-work-slider-item-title {
	color: #3E3A39;
	font-size: 16px;
	letter-spacing: 3.8px;
	word-break: break-all;
	font-family: 'Noto Serif JP', serif;
}

@media screen and (max-width: 1486px) {
}

@media screen and (max-width: 1300px) {
	.top-work-swiper-prev,
	.top-work-swiper-next {
		display: none;
	}
	.top-work-title { padding-left: 20px; }
}

@media screen and (max-width: 830px) {
	.top-container {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		row-gap: 48px;
	}
	.top-mainVisual-text p:nth-child(1) {
		font-size: 20px;
		margin-bottom: 20px;
	}
	.top-mainVisual-text p:nth-child(2) { font-size: 14px; }

	.top-about-title { margin-bottom: 24px; }
	.top-about-container { margin: 0; }
	.top-about-image {
		position: static;
		width: 100%;
		max-width: 100%;
	}
	.top-about-wrapper {
		width: 100%;
	}
	.top-about-content {
		max-width: 100%;
		padding: 4rem 10%;
	}
	.top-about-content p { margin-bottom: 0; }

	.top-contact-content {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	.top-contact-content::before { display: none; }
	.top-contact-answer { padding: 60px 40px 0; }
	.top-contact-container {
		background-size: cover;
	}
	.top-contact-tel { justify-content: center; }
	.top-contact-tel span:nth-child(1) { font-size: 10px; }
	.top-contact-tel span:nth-child(2) { font-size: 16px; }
	.top-contact-holiday {
		font-size: 12px;
		text-align: center;
	}
	.top-contact-link {
		width: 100%;
		margin-inline: auto;
	}
	.top-contact-answer ul li { font-size: 14px; }

	.top-concept-title {
		position: static;
		margin-bottom: 24px;
	}
	.top-concept-container { margin: 0; }
	.top-concept-image {
		position: static;
		width: 100%;
		max-width: 100%;
	}
	.top-concept-wrapper {
		width: 100%;
	}
	.top-concept-content {
		max-width: 100%;
		padding: 4rem 10%;
	}
	.top-concept-content h3 { font-size: 18px; }
	.top-concept-circle {
		top: 70px;
		right: 20px;
		width: 60px;
	}

	.top-work-list li {
		display: grid;
		justify-items: center;
		row-gap: 6px;
		padding-bottom: 4px;
	}
	.top-work-list li span {
		height: 36px;
		font-size: 10px;
		text-align: center;
	}
	.top-work-slider-container {
		padding-top: 12px;
		margin-bottom: 0;
	}
	.top-work-slider-container ul{
		grid-template-columns: repeat(1, minmax(0, 1fr));
		padding-inline: 24px;
		gap: 24px;
	}

	.top-swiper-content {
		position: static;
		width: 100%;
		row-gap: 16px;
		padding: 4rem 10%;
	}
	.top-swiper-title span:nth-child(1) { font-size: 10px; }
	.top-swiper-title span:nth-child(2) { font-size: 16px; }
	.top-swiper-text { font-size: 18px; }

	.top-about::before { display: none; }

	.top-work-list-item br { display: block; }

	.top-concept-wrapper::before {
		width: 100%;
		top: 0;
		aspect-ratio: 8 / 8;
	}

	.top-blog-title {
		width: 100%;
		margin-top: 10px;
	}

	.top-banner img.top-banner-pc { display: none; }
	.top-banner img.top-banner-sp { display: block; }

	.top-concept-content-title {
		display: flex;
		flex-direction: column;
	}
	.top-concept-content-title span:nth-child(1) {
		text-align: left;
	}
	.top-concept-content-title span:nth-child(2) {
		width: 85%;
		text-align: right;
	}
}

@media screen and (max-width: 450px) {
	.top-movie-pc { display: none; }
	.top-movie-sp {
		display: block;
		position: relative;
		transform: none;
		width: 100%;
		aspect-ratio: 3 / 4;
		height: calc(100% - 1px);
	}

	.top-visual-title { display: block; }
	
	.top-mainVisual-container {
		height: auto;
		aspect-ratio: unset;
		max-height: calc(100vh - 86px);
	}

	.top-movie-sp-1,
	.top-movie-sp-2,
	.top-movie-sp-3,
	.top-movie-sp-4 {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		opacity: 0;
	}
	.top-movie-sp-1{
		width: 100%;
		aspect-ratio: 3 / 4;
	}
	.top-movie-sp-1-content {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
	}
	
	/* 6秒までのアニメーション */
	.top-movie-sp-content-1 {
		width: calc(50% - 2px);
		border-bottom: 4px solid #FFF;
		border-right: 4px solid #FFF;
		box-sizing: content-box;
		animation: change-content-img 18s infinite;
		animation-delay: 5s;
		opacity: 1;
	}
	.top-movie-sp-content-2 {
		width: calc(50% - 2px);
		opacity: 1;
	}
	.top-movie-sp-content-3 {
		width: calc(50% - 2px);
		border-right: 4px solid #FFF;
		box-sizing: content-box;
		animation: change-content-img 18s infinite;
		animation-delay: 5s;
		opacity: 1;
	}
	.top-movie-sp-content-4 {
		width: calc(50% - 2px);
		border-top: 4px solid #FFF;
		box-sizing: content-box;
		animation: change-content-img 18s infinite;
		animation-delay: 5s;
		opacity: 1;
	}
	.top-movie-sp-content-1 img {
		animation: change-content-img 18s infinite;
		animation-delay: 3s;
		opacity: 1;
	}
	.top-movie-sp-content-2 img {
		animation: change-content-img 18s infinite;
		animation-delay: 4s;
		opacity: 1;
	}
	.top-movie-sp-content-3 img {
/* 	.top-movie-content-3 .top-movie-content-3-wrapper { */
		animation: change-content-img 18s infinite;
		animation-delay: 2s;
		opacity: 1;
		background: #fff;
	}
	.top-movie-sp-content-4 img {
		animation: change-content-img 18s infinite;
		animation-delay: 1s;
		opacity: 1;
	}

	/* 6秒後のアニメーション */
	.top-movie-sp-1 {
		animation: change-img1-fadeout 18s infinite;
		animation-delay: 6s;
		transform: scale(1);
		position: relative;
		opacity: 1;
	}
	.top-movie-sp-2 {
		animation: change-img-fadeout 18s infinite;
		animation-delay: 9s;
		transform: scale(1.1);
	}
	.top-movie-sp-3 {
		animation: change-img-fadein 18s infinite;
		animation-delay: 12s;
		transform: scale(1);
	}
	.top-movie-sp-4 {
		animation: change-img-fadeout 18s infinite;
		animation-delay: 15s;
		transform: scale(1.1);
	}
}

@media screen and (max-width: 500px) {
	.top-visual-title {
		top: calc(100% - 70%);
	}
	.top-visual-text {
		font-size: 1.1rem;
	}
	.top-visual-title-en {
		font-size: .5rem;
	}
}
