.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%;
	}
}


/*------------------------------------
.semi-order
------------------------------------*/
.semi-order {
	padding-top: 140px;
}
.semi-order h3 {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 24px;
	letter-spacing: 0;
	margin-bottom: 50px;
}
.semi-order h3 span {
	font-size: 12px;
	font-weight: 200;
}
@media screen and (max-width: 768px) {
	.semi-order {
		padding-top: 50px;
	}
	.semi-order h3 {
		font-size: 22px;
		letter-spacing: .05em;
		margin-bottom: 30px;
	}
	.semi-order h3 span {
		font-size: 14px;
		font-weight: 500;
	}
}


/*------------------------------------
.type
------------------------------------*/
.type__img {
	margin-bottom: 30px;
}
.type__img img {
	width: 100%;
}
.type-list {
	display: flex;
	justify-content: space-between;
}
.type-list li {
	width: 30%;
}
.type-list h4 {
	font-size: 18px;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 20px;
}
.type-list p {
	font-size: 14px;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.type__img {
		margin-bottom: 50px;
	}
	.type-list {
		flex-wrap: wrap;
		gap: 50px;
	}
	.type-list li {
		width: 100%;
	}
}


/*------------------------------------
.design
------------------------------------*/
.design {
	padding-top: 200px;
}
.design__txt {
	text-align: center;
	margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
	.design {
		padding-top: 80px;
	}
	.design__txt {
		text-align: justify;
	}
}

/* --- Tabs --- */
.tabs {}
.tabs__list {
	display: flex;
	gap: 25px;
	border-bottom: 1px solid #ccc;
}
.tabs__tab {
	position: relative;
	width: calc((100% - 100px) / 5);
	padding-bottom: 20px;
}
.tabs__tab::after {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 100%;
	height: 3px;
}
.tabs__tab.is-active::after {
	background-color: #4d4d4d;
}
.tabs__tab:hover::after {
	background-color: #4d4d4d;
}
.tabs__tab img {
	display: block;
	margin-bottom: 20px;
}
.tabs__tab p {
	font-size: 18px;
	font-weight: 200;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.tabs__list {
		display: flex;
		flex-wrap: nowrap;        /* 折り返しさせない */
		overflow-x: auto;
		overflow-y: hidden;              /* ← 縦スクロールを無効化 */
		-webkit-overflow-scrolling: touch;
		touch-action: pan-x;             /* ← 横パンだけ許可（iOSでも効くことが多い） */
		overscroll-behavior-x: contain;  /* ← 可能なら「親への伝播」を抑える */
		overscroll-behavior-y: none;
		gap: 15px;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		padding: 0 3.208vw;
	}
	.tabs__tab {
		flex-shrink: 0;           /* 縮まないようにする */
		width: 130px;
		white-space: nowrap;      /* テキスト折返し防止 */
		padding-bottom: 10px;
	}
	.tabs__tab.is-active::after {
		height: 5px;
	}
	.tabs__tab img {
		margin-bottom: 10px;
	}
	.tabs__tab p {
		font-size: 13px;
	}
}

/* --- Panels --- */
.tabs__panels {
	margin-top: 100px;
}
.tabs__panel {
	display: none;
}
.tabs__panel.is-active {
	display: flex;
	gap: 9.83333333333%;
}
.design__content {
	width: 50%;
}
.design__content h2 {
	font-size: 26px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 50px;
}
.design__content p {
	line-height: 2;
	text-align: justify;
}
.design__content .design__size {
	padding-top: 40px;
}
.design__size p {
	margin-bottom: 30px;
}
.design__library {
	width: 40.1666666667%;
}
.slider-main img {
  width: 100%;
  display: block;
}
.slider-thumb-grid{
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
/* buttonの見た目を消す */
.slider-thumb-grid .thumb{
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: block;
}
.slider-thumb-grid .thumb img{
  width: 100%;
  display: block;
  transition: .2s;
}
.slider-thumb-grid .thumb.is-active img{
  opacity: 1;
}
@media screen and (max-width: 768px) {
	.tabs__panels {
		margin-top: 50px;
	}
	.tabs__panel.is-active {
		flex-wrap: wrap;
		gap: 50px;
	}
	.design__content,
	.design__library {
		width: 100%;
	}
	.design__content h2 {
		margin-bottom: 30px;
	}
	.design__size p {
		font-size: 15px;
		margin-bottom: 50px;
	}
}


/*------------------------------------
.custom
------------------------------------*/
.custom {
	padding: 200px 0 150px;
}
.custom__txt {
	text-align: center;
	margin-bottom: 50px;
}
.custom-list {
	display: flex;
	gap: 75px;
}
.custom-list li {
	width: calc((100% - 150px) / 2);
}
.custom-list img {
	width: 100%;
	margin-bottom: 30px;
}
.custom-list h4 {
	font-size: 18px;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 20px;
}
.custom-list p {
	font-size: 14px;
	line-height: 2;
}
.custom__btn {
	margin-top: 125px;
}
.custom__btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	border: 1px solid #000;
	max-width: 360px;
	width: 100%;
	height: 70px;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: .03em;
	line-height: 1;
	margin: auto;
}
.custom__btn a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-image: url("../images/arrow.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	width: 21px;
	height: 19px;
}
@media screen and (max-width: 768px) {
	.custom {
		padding: 80px 0 70px;
	}
	.custom-list {
		flex-wrap: wrap;
		gap: 50px;
	}
	.custom-list li {
		width: 100%;
	}
	.custom-list img {
		margin-bottom: 20px;
	}
	.custom__btn {
		margin-top: 50px;
	}
}
