main {
	width: 1200px;
	margin: 80px auto 0 auto;
	padding: 0 80px 110px 80px;
	display: block;
	box-sizing: content-box;
}
main .topicpath {
	font-size: 0.625em;
	margin-top: 20px;
	display: flex;
}
main .topicpath a {
	color: #9b9b9b;
}
main .topicpath li + li::before {
	content: "/";
	color: #9b9b9b;
	margin: 0 0.5em;
}

main h1 {
	font-size: 0.625em;
	text-align: center;
	letter-spacing: 0.1em;
	margin-top: 110px;
}
main h1::before {
	content: attr(data-en);
	font-size: 1.813rem;
	font-weight: 700;
	letter-spacing: 0;
	display: block;
	margin-bottom: 15px;
}

/* 検索 */
.select {
	background: #1e1e1e;
	border: 1px solid #707070;
	margin-top: 55px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.select .selectbox {
	width: 305px;
	height: 35px;
	border: 1px solid #9b9b9b;
	position: relative;
	padding: 0 30px 0 15px;
	position: relative;
	margin: 0 20px;
}
.select .selectbox::after {
	content: "";
	background-color: #fff;
	width: 16px;
	height: 20px;
	-webkit-clip-path: polygon(50% 50%, 0 0, 100% 0);
	clip-path: polygon(50% 50%, 0 0, 100% 0);
	display: block;
	position: absolute;
	right: 10px;
	top: 10px;
	bottom: 0;
	margin: auto;
}
.select .selectbox p {
	font-size: 0.875em;
	color: #9b9b9b;
	display: flex;
	align-items: center;
	height: 33px;
}
.select .selectbox p.checked {
	color: #fff;
}
.select .selectbox ul {
	font-size: 0.813em;
	font-weight: 700;
	position: absolute;
	background: rgba(230, 228, 228, 0.9);
	top: 27px;
	z-index: -1px;
	width: calc(100% - 10px);
	padding: 20px 25px 20px 0;
	left: 0;
	right: 0;
	margin: auto;
	border-radius: 4px;
	opacity: 0;
	visibility: hidden;
	max-height: 405px;
	overflow-y: scroll;
	z-index: 5;
}
.select .selectbox ul li {
	padding-left: 25px;
	height: 25px;
	display: flex;
	align-items: center;
}
.select .selectbox ul li:hover {
	background: #fff;
}
.select .selectbox ul li input {
	display: none;
}
.select .selectbox.open ul {
	opacity: 1;
	visibility: visible;
}

/* 一覧 */
#list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 10px;
}
#list::after {
	content: "";
	width: 365px;
}
#list .item_box {
	width: 365px;
	margin-top: 40px;
}
#list .item_box .img {
	aspect-ratio: 4/3;
	overflow: hidden;
}
#list .item_box .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#list .item_box .name {
	font-size: 1.25em;
	font-weight: 700;
	margin-top: 15px;
}
#list .item_box .name.new::after {
	content: "New!";
	font-size: 0.813rem;
	color: #ff0000;
	margin-left: 10px;
}
#list .item_box .name .maker {
	font-size: 0.688rem;
	font-weight: 400;
	margin-right: 10px;
}
#list .item_box .parts {
	line-height: 1.2;
	font-size: 0.875em;
	margin-top: 10px;
}
#list .item_box .status-A {
	line-height: 1.2;
	font-size: 0.813em;
	color: #9b9b9b;
	margin-top: 5px;
}
#list .item_box .status-B {
	font-size: 0.75em;
	background: #f2f2f2;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 10px;
	padding: 10px;
}
#list .item_box .status-B div {
	width: 49%;
	display: flex;
}
#list .item_box .status-B div dt {
	color: #868686;
	width: 6em;
}
#list .item_box .status-B div:nth-child(2n + 2) dt {
	width: 5em;
}
#list .item_box .status-B div dd {
	font-weight: 500;
}
#list .item_box .price {
	font-size: 0.625em;
	text-align: right;
	margin-top: 15px;
}
#list .item_box .price span {
	font-size: 0.438rem;
}
#list .item_box .price strong {
	font-size: 1.375rem;
	font-weight: 700;
	margin-left: 10px;
}

/* pager */
.pager {
	font-size: 18px;
	font-family: Arial, Helvetica, sans-serif;
	margin-top: 115px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.pager div {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin: 0 5px;
}
.pager .current {
	color: #fff;
	background: #1e1e1e;
	border-radius: 3px;
}
.pager .current a {
	color: #fff;
	background: #1e1e1e;
	border-radius: 3px;
}
.pager a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: relative;
}
.pager a:hover {
	opacity: 1;
}
.pager .pagination-number:not(.current) a:hover::before {
	content: "";
	width: 16px;
	height: 2px;
	background: #1e1e1e;
	position: absolute;
	bottom: 0;
}
.prev img {
	margin-right: auto;
}
.next img {
	transform: scale(-1, 1);
	margin-left: auto;
}
.pager .disabled img {
	opacity: 0.5;
}

/* detail */
/* スライダー */
.slider {
	width: 100%;
	height: 450px;
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	/*background: #1E1E1E;*/
}
.slider-main {
	max-width: 50%;
	/* aspect-ratio: 800/470; */
	overflow: hidden;
}
.slider-main .swiper-slide {
	width: 100%;
	height: 100%;
}
.slider-main .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.thumbbox {
	flex-shrink: 0;
	width: 50%;
	min-width: 420px;
	padding: 20px;
	background: #1e1e1e;
	overflow: hidden;
}
.thumbbox p {
	color: #fff;
	font-size: 0.688rem;
	width: 373px;
	margin: 0 auto;
}

.thumb {
	margin: 30px auto 0 auto;
	width: 379px;
	height: 312px;
	overflow: hidden;
	padding: 3px;
	position: relative;
	z-index: 0;
}
.thumb::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 33px;
	background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 30.54%, #1e1e1e 69.46%, #1e1e1e 100%);
	bottom: 0;
	z-index: 1;
}
.slider-thumb {
	width: 376px;
	padding-right: 3px;
}
.slider-thumb .swiper-wrapper {
	display: grid !important;
	grid-template-columns: repeat(6, 1fr);
	gap: 5px;
	/*height: 100px;*/
}
.slider-thumb .swiper-slide {
	width: 60px !important;
	height: 45px !important;
}
.slider-thumb .swiper-slide img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.swiper-slide-thumb-active {
	position: relative;
	z-index: 1;
}
.swiper-slide-thumb-active::before {
	content: "";
	position: absolute;
	width: 60px;
	height: 45px;
	border: 3px solid #3a8cea;
	z-index: 10;
	top: -3px;
	left: -3px;
}
.swiper-controller {
	position: relative;
	width: 373px;
	height: 24px;
	margin: 30px auto 0 auto;
	padding: 0;
	display: flex;
	justify-content: space-between;
}
.swiper-controller .swiper-button-prev {
	width: 39px;
	left: 20px;
	z-index: 10;
}
.swiper-controller .swiper-button-next {
	width: 39px;
	right: 20px;
	z-index: 10;
}
.swiper-controller .swiper-button-prev::after,
.swiper-controller .swiper-button-next::after {
	content: "";
	width: 39px;
	height: 24px;
	border-radius: 4px;
	background: url(../../images/ic_arrow.svg) #fff no-repeat center center;
	background-size: 6px auto;
}
.swiper-controller .swiper-button-next::after {
	transform: scale(-1, 1);
}
.swiper-controller .swiper-button-disabled {
	opacity: 0.8 !important;
}
.swiper-controller .swiper-pagination {
	color: #fff;
	font-size: 1.188rem;
	font-weight: 700;
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9;
}

/* 詳細内容 */
.details {
	display: flex;
	justify-content: space-between;
	margin-top: 55px;
}
.details .column {
	width: 560px;
}

.details .name {
	font-size: 1.813rem;
	font-weight: 700;
	text-align: left;
	letter-spacing: -0.05rem;
	margin-top: 0;
}
.details .new::after {
	content: "New!";
	font-size: 1.188rem;
	color: #ff0000;
	margin-left: 20px;
}
.details .maker {
	font-size: 0.938rem;
	font-weight: 400;
	margin-right: 15px;
}
.details .parts {
	line-height: 1.2;
	font-size: 1.125em;
	font-weight: 500;
	margin-top: 20px;
}
.details .status-A {
	margin-top: 15px;
}
.details .status-A p {
	color: #9b9b9b;
	font-weight: 500;
}
.details .status-B {
	font-size: 1.063em;
	background: #f2f2f2;
	padding: 10px 15px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 30px;
}
.details .status-B div {
	width: 49%;
	display: flex;
}
.details .status-B div dt {
	color: #868686;
	width: 6em;
	font-weight: 500;
}
.details .status-B div:nth-child(2n + 2) dt {
	width: 5em;
}
.details .status-B div dd {
	font-weight: 500;
}
.details .price {
	font-size: 0.938rem;
	margin-top: 15px;
	font-weight: 500;
}
.details .price span {
	font-size: 0.688rem;
}
.details .price strong {
	font-size: 2.188rem;
	font-weight: 700;
	margin-left: 10px;
}
.details h2 {
	font-size: 1.25rem;
	border-left: 9px solid #bebebe;
	padding-left: 5px;
}
.details .partsList {
	font-size: 0.813rem;
	background: #f2f2f2;
	margin-top: 20px;
}
.details .partsList li {
	border-bottom: 1px solid #fff;
	padding: 10px 15px;
}

/* おすすめ */
#recommend {
	margin-top: 130px;
}
#recommend h2 {
	font-size: 1.375em;
	font-weight: 700;
	text-align: center;
}

/* ボタン・バナー */
.btnBlock {
	width: 100%;
	display: flex;
	justify-content: center;
	gap: 0 40px;
}

.bnr {
	width: 867px;
	margin: 95px auto 0 auto;
}
.bnr img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 1365px) {
	/* detail */
	/* スライダー */
	.slider {
		margin: 20px 0 0 0;
	}
}

@media screen and (max-width: 767px) {
	main {
		width: 93%;
		margin: 12vw auto 0 auto;
		padding: 0 0 60px 0;
	}

	main h1 {
		margin-top: 75px;
	}

	/* 検索 */
	.select {
		position: sticky;
		top: 12vw;
		margin: 20px calc(50% - 50vw);
		height: 55px;
		width: 100vw;
		padding: 0 20px;
		justify-content: space-between;
	}
	.select .selectbox {
		width: max(31%, 107px);
		height: 35px;
		padding: 0 20px 0 5px;
		margin: 0;
	}
	.select .selectbox::after {
		width: 10px;
		height: 10px;
		right: 5px;
		top: 5px;
	}
	.select .selectbox p {
		font-size: 0.688rem;
	}
	.select .selectbox ul {
		width: 237px;
		top: 34px;
		z-index: 2;
	}
	.select .selectbox:nth-of-type(2) ul {
		left: calc((100% - 237px) / 2);
	}
	.select .selectbox:nth-of-type(3) ul {
		left: auto;
		right: 0;
	}

	/* 一覧 */
	#list {
		margin-top: -20px;
	}
	#list::after {
		display: none;
	}
	#list .item_box {
		width: max(147px, 48%);
		margin-top: 35px;
	}

	#list .item_box .name {
		font-size: 0.938rem;
		margin-top: 5px;
	}

	#list .item_box .name .maker {
		font-size: 0.625rem;
		margin-right: 0;
		display: block;
	}
	#list .item_box .parts {
		font-size: 0.75rem;
		margin-top: 0;
	}
	#list .item_box .status-A {
		display: none;
	}
	#list .item_box .status-B {
		font-size: 0.5rem;
		margin-top: 10px;
		padding: 10px;
	}

	#list .item_box .status-B div {
		flex-direction: column;
		width: 48%;
	}
	#list .item_box .status-B div dt {
		width: 100%;
	}
	#list .item_box .status-B div:nth-child(2n + 2) dt {
		width: 100%;
	}
	#list .item_box .status-B div dd {
		font-size: 0.688rem;
	}
	#list .item_box .price {
		font-size: 0.625rem;
		margin-top: 5px;
	}
	#list .item_box .price span {
		font-size: 0.5rem;
	}
	#list .item_box .price strong {
		font-size: 1.125rem;
		display: block;
		margin-left: 0;
	}

	/* pager */
	.pager {
		font-size: 18px;
		margin-top: 50px;
	}
	.pager div {
		width: 38px;
		height: 38px;
	}
	.pager .current {
		color: #fff;
		background: #1e1e1e;
		border-radius: 3px;
	}
	.pager a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		position: relative;
	}
	.pager a:hover {
		opacity: 1;
	}
	.pager div:not([class]) a:hover::before {
		content: "";
		width: 16px;
		height: 2px;
		background: #1e1e1e;
		position: absolute;
		bottom: 0;
	}
	.prev img {
		margin-right: auto;
	}
	.next img {
		transform: scale(-1, 1);
		margin-left: auto;
	}

	/* detail */
	/* スライダー */
	.slider {
		width: 100%;
		margin: 20px 0 0;
		display: block;
		background: none;
		height: auto;
	}
	.slider-main {
		width: 100vw;
		max-width: none;
		margin: 0 calc(50% - 50vw);
		aspect-ratio: 800/470;
	}
	.slider-main .swiper-slide {
		width: 100%;
		height: 100%;
	}
	.slider-main .swiper-slide img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.thumbbox {
		width: 100%;
		min-width: 0;
		padding: 10px 0 15px;
		position: relative;
		z-index: 0;
		overflow: visible;
	}
	.thumbbox::before {
		content: "";
		position: absolute;
		width: 100vw;
		height: 100%;
		left: 0;
		top: 0;
		margin: 0 calc(50% - 50vw);
		background: #1e1e1e;
		z-index: -1;
	}
	.thumbbox p {
		font-size: 0.625rem;
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}

	.thumb {
		margin: 15px calc(50% - 50vw) 0 calc(50% - 50vw);
		width: 100vw;
		height: 59px;
	}
	.thumb::after {
		display: none;
	}
	.slider-thumb {
		width: 100%;
		padding-right: 0;
	}
	.slider-thumb .swiper-wrapper {
		width: 100%;
		display: flex !important;
		gap: 5px;
		/*overflow: visible;*/
	}
	.slider-thumb .swiper-slide {
		width: 52px !important;
		height: 52px !important;
	}
	.swiper-slide-thumb-active::before {
		width: 52px;
		height: 52px;
	}
	.swiper-controller {
		width: 100%;
	}
	.swiper-controller .swiper-pagination {
		font-size: 1.063rem;
	}

	/* 詳細内容 */
	.details {
		display: block;
		margin-top: 20px;
	}
	.details .column {
		width: 100%;
	}

	.details .name {
		font-size: 1.25rem;
	}
	.details .new::after {
		font-size: 0.875rem;
	}
	.details .maker {
		font-size: 0.688rem;
	}
	.details .parts {
		font-size: 0.813rem;
		margin-top: 5px;
	}
	.details .status-A {
		line-height: 1.2;
		margin-top: 5px;
	}
	.details .status-A p {
		font-size: 0.75rem;
	}
	.details .status-B {
		font-size: 0.813rem;
		padding: 10px;
		margin-top: 10px;
	}
	.details .price {
		font-size: 0.75rem;
		margin-top: 10px;
		text-align: right;
	}
	.details .price span {
		font-size: 0.625rem;
	}
	.details .price strong {
		font-size: 1.75rem;
	}

	.details h2 {
		font-size: 0.938rem;
		border-left: 5px solid #bebebe;
		margin-top: 45px;
	}
	.details .partsList {
		font-size: 0.75rem;
		margin-top: 10px;
	}

	/* おすすめ */
	#recommend {
		margin-top: 75px;
	}
	#recommend h2 {
		font-size: 1.125rem;
	}

	/* ボタン・バナー */
	.btnBlock {
		width: 100%;
		margin-top: 50px;
		align-items: center;
		flex-direction: column;
		gap: 20px 0;
	}

	.bnr {
		width: 100%;
		margin: 50px auto 0 auto;
	}

	.bottomBlock {
		margin: 60px 0 0 0;
		padding: 0;
	}
	.bottomBlock a {
		font-size: 0.813rem;
		height: 53px;
	}
}
