.container {
	max-width: 1200px;
}
@media screen and (max-width: 768px) {}


/*------------------------------------
.mv
------------------------------------*/
.mv {
	padding-top: 120px;
}
.mv .container {
	display: flex;
	justify-content: space-between;
}
.mv h1 {
	display: flex;
	flex-direction: column;
	font-size: 36px;
	font-weight: 400;
	letter-spacing: 0;
}
.mv h1 span {
	font-size: 16px;
}
.mv p {
	width: 41.6666666667%;
	font-weight: 400;
	text-align: justify;
}
@media screen and (max-width: 768px) {
	.mv {
		padding-top: 50px;
	}
	.mv .container {
		flex-wrap: wrap;
	}
	.mv h1 {
		font-size: 5.87vw;
		margin-bottom: 30px;
	}
	.mv p {
		width: 100%;
	}
}


/*------------------------------------
.original
------------------------------------*/
.original {
	padding-top: 140px;
}
.original-list {
	display: flex;
	flex-wrap: wrap;
	gap: 80px;
}
.original-list li {
	width: calc((100% - 80px) / 2);
}
.original-list a:hover {
	opacity: 1;
}
.hover-img {
	display: inline-block;
	position: relative;
	margin-bottom: 20px;
}
.hover-img img {
	display: block;
	width: 100%;
	height: auto;
}
.hover-img .img-hover {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.hover-img:hover .img-hover {
	opacity: 1;
}
.original-list h3 {
	font-size: 26px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.5;
}
.original-list h3 span {
	display: block;
	font-size: 16px;
}
@media screen and (max-width: 768px) {
	.original {
		padding-top: 50px;
	}
	.original-list {
		gap: 50px;
	}
	.original-list li {
		width: 100%;
	}
	.original-list h3 {
		font-size: 20px;
	}
}


/*------------------------------------
.top
------------------------------------*/
.top .container {
	display: grid;
	grid-template-columns: 1fr 420px;
	gap: 5.21vw;
	align-items: start;
}
@media screen and (max-width: 768px) {
	.top .container {
		display: block;
	}
}

/*.product__slider*/
.product__slider {
	grid-column: 1;
	flex: 1 1 650px;
	max-width: 650px;
	min-width: 0;
}
.slider-main .slick-prev,
.slider-main .slick-next {
	width: 24px;
	height: 20px;
	z-index: 1;
}
.slider-main .slick-prev {
	left: 16px;
}
.slider-main .slick-next {
	right: 16px;
}
.slider-main .slick-prev:before,
.slider-main .slick-next:before {
	display: block;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 24px;
	height: 20px;
	font-size: 0;
}
.slider-main .slick-prev:before {
	background-image: url("../images/original-frame/arrow-prev.svg");
}
.slider-main .slick-next:before {
	background-image: url("../images/original-frame/arrow-next.svg");
}
.slider-main img {
	width: 100%;
}
.slider-main figcaption {
	font-weight: 400;
	text-align: justify;
	margin: 8px 0 0;
}
.slider-thumb-grid {
  margin-top: 24px;
  display: flex;
  flex-wrap: nowrap;
  gap: 15px;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 20px; /* スクロールバー分 */
  -webkit-overflow-scrolling: touch;

  /* Firefox */
  scrollbar-width: thin;
  scrollbar-color: #808080 #d9d9d9;
}

/* ===== Chrome / Safari ===== */
.slider-thumb-grid::-webkit-scrollbar {
  height: 5px;
}

.slider-thumb-grid::-webkit-scrollbar-track {
  background: #d9d9d9; /* ← 背景 */
}

.slider-thumb-grid::-webkit-scrollbar-thumb {
  background: #808080; /* ← バー */
  border-radius: 999px;
}

.slider-thumb-grid::-webkit-scrollbar-thumb:hover {
  background: #666; /* 少し濃く（任意） */
}

/* ===== サムネ ===== */
.slider-thumb-grid .thumb {
  flex: 0 0 auto;
  width: calc((100% - 40px) / 5);
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: block;
}

.slider-thumb-grid .thumb img {
  width: 100%;
  display: block;
  transition: opacity .2s;
  opacity: 0.5;
}

.slider-thumb-grid .thumb.is-active img,
.slider-thumb-grid .thumb:hover img {
  opacity: 1;
}
@media screen and (max-width: 768px) {}

/*.product__info*/
.product__info {
	grid-column: 2;
	flex: 1 1 450px;
	max-width: 450px;
	min-width: 0;
}
.product__title {
	font-size: 26px;
	margin-bottom: 24px;
}
.product__title span {
	display: block;
	font-size: 16px;
}
.product__txt {
	text-align: justify;
	margin-bottom: 24px;
}
.product__table {
	border-top: 1px solid #cfcfcf;
}
.product__table dl {
	display: flex;
	border-bottom: 1px solid #cfcfcf;
	line-height: 2;
	padding: 20px 0;
}
.product__table dt {
	flex: 1 1 auto;
	min-width: 0;
	padding-right: 24px;
}
.product__table dd {
	flex: 0 0 280px;
	font-weight: 400;
}
.product__table a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
}
.product__table span {
	margin-left: auto;
}
.product__table span::before {
	content: "¥";
}
.c-arrow {
	width: 6px;
	height: 10px;
}
.c-arrow__img {
	width: 6px;
}
@media screen and (max-width: 768px) {
	.product__info {
		padding-top: 32px;
	}
	.product__title {
		font-size: 24px;
		margin-bottom: 16px;
	}
	.product__title span {
		font-size: 14px;
	}
	.product__txt {
		font-size: 14px;
		margin-bottom: 32px;
	}
	.product__table dl {
		padding: 16px;
	}
}


/*------------------------------------
.gallery
------------------------------------*/
.gallery {
	padding-top: 130px;
}
.gallery-list {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.gallery-list li {
	width: calc((100% - 20px) / 2);
}
.gallery-list img {
	width: 100%;
}
@media screen and (max-width: 768px) {
	.gallery {
		padding-top: 50px;
	}
	.gallery-list li {
		width: 100%;
	}
}


/*------------------------------------
.lineup
------------------------------------*/
.lineup {
	margin-bottom: 80px;
	padding-top: 130px;
}
.lineup h2 {
	font-size: 20px;
	line-height: 1;
	margin-bottom: 70px;
}
.lineup-list {
	display: flex;
	flex-wrap: wrap;
	gap: 55px 20px;
}
.lineup-list li {
	width: calc((100% - 60px) / 4);
}
.lineup-list figcaption {
	margin: 12px 0 0;
	font-weight: 400;
	line-height: 1;
	text-align: left;
}
@media screen and (max-width: 768px) {
	.lineup {
		margin-bottom: 30px;
		padding-top: 50px;
	}
	.lineup h2 {
		font-size: 18px;
		margin-bottom: 24px;
	}
	.lineup-list {
		gap: 40px 20px;
	}
	.lineup-list li {
		width: calc((100% - 20px) / 2);
	}
}
