/* ---------------------------------------------------------------
start ITEM CSS
--------------------------------------------------------------- */

/* --------------- archive --------------- */
.lead_results {
	width: 94%;
	max-width: 1080px;
	margin: 0 auto 30px;
}
@media print,screen and ( max-width: 700px ) {
	.lead_results {
		display: none;
	}
}

.wrap_topItems {
	width: 94%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 0;
	display: grid;
	gap: 60px 20px;
	grid-template-columns: repeat(5, minmax(200px, 1fr));
	grid-auto-flow: dense;
}

.wrap_topItems article[data-col="about"] {
	grid-column-start: span 2;
}

.wrap_topItems article.video {
	grid-column-start: span 2;
}

.wrap_topItems article.video.narrow {
	grid-column-start: span 1;
}

.wrap_topItems article {
	margin: 0;
	color: #000;
	text-decoration: none;
	position: relative;
	z-index: 0;
}

.wrap_topItems .ranking {
	width: 42px;
	line-height: 1;
	position: absolute;
	top: 6px;
	left: 6px;
}

.wrap_topItems .ranking img {
	width: 100%;
}



.trim {
	width: 100%;
	height: 264px;
	margin: 0 0 10px;
	padding: 12px 12px;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 0;
}

.img_thumb_items {
	width: 100%;
	height: 100%;
	object-fit: scale-down;
}

.wrap_topItems .item .tag {
	display: flex;
	position: absolute;
	bottom: 6px;
	left: 6px;
}
.tag span {
	width: 56px;
	height: 20px;
	margin: 0 6px 0 0;
	color: #fff;
	font-weight: 300;
	text-align: center;
	line-height: 1.2;
	border-radius: 3px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.tag span.new {
	font-size: 13px;
	background-color: #c76e6f;
}

.tag span.limited {
	font-size: 11px;
	background-color: #cdac57;
}

.info {
	font-size: 14px;
	line-height: 1.3;
}

.info .maker_fav {
	width: 100%;
	margin: 0 0 8px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.info .maker_fav .maker {
	margin-top: 4px;
	font-size: 13px;
	font-weight: 300;
}

.info .maker_fav .icon_fav {
	width: 22px;
	height: 22px;
	margin: 0 0 0 8px;
	padding: 0;
	flex-shrink: 0;
}

.icon_fav .wpfp-link {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	display: block;
	position: relative;
}

.icon_fav .wpfp-link span.fav {
	width: 60px;
	height: 60px;
	margin: 0;
	padding: 0;
	background-image: url(../img/fav-heart.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: auto 100%;
	transition: background-position 0s steps(28);
	display: inline-block;
	position: absolute;
	top: calc( 50% - 30px );
	left: calc( 50% - 30px );
}
.icon_fav .wpfp-link span.fav.added {
	animation: anim-fav1 1s steps(28) forwards;
}

@keyframes anim-fav1 {
	0% { background-position: 0 0; }
	100% { background-position: -1680px 0; }
}

.info .name {
	color: #000;
	line-height: 1.2;
	text-decoration: none;
}

.info .name:hover {
	text-decoration: underline;
}

.wrap_topItems .item .info .price {
	margin: 0;
	padding: 0;
}

.wrap_topItems .item .info .price .strike {
	padding: 0 5px 0 0;
	color: #999;
	text-decoration: line-through;
}
.wrap_topItems .item .info .price .discount {
	color: #df4244;
	font-weight: 600;
	font-size: 16px;
}
.wrap_topItems .item .info .price .discount .rate {
	margin: 0 0 0 8px;
	padding: 0 5px;
	font-size: 13px;
	line-height: 1.4;
	border: solid 1px #df4244;
	border-radius: 3px;
}


.wrap_topItems article.link_topabout {
	height: 360px;
	border: solid 10px #fff;
	text-align: center;
	background-image: url(../img/top/bg_about.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transition: .2s;
}

	.wrap_topItems article.link_topabout:hover {
		opacity: 0.75;
	}

.wrap_topItems article.link_topabout a {
	width: 100%;
	height: 100%;
	color: #000;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
}

.wrap_topItems article.link_topabout dl {
	margin: 0;
	padding: 0;
}

.wrap_topItems article.link_topabout dl dt {
	margin: 0 0 10px;
	padding: 0;
	font-size: 23px;
	font-weight: 400;
	line-height: 1.3;
}

.wrap_topItems article.link_topabout dl dd {
	margin: 0;
	padding: 0;
	line-height: 1.8;
}

.wrap_topItems article.video a {
	color: #000;
	text-decoration: none;
	transition: .2s;
}

	.wrap_topItems article.video a:hover {
		opacity: 0.75;
	}

.wrap_topItems article.video .trim {
	width: 100%;
	height: 264px;
	margin: 0 0 12px;
	border: solid 10px #fff;
	position: relative;
	z-index: 0;
}

.wrap_topItems article.video .trim::after {
	content: "";
	width: 64px;
	height: 64px;
	margin: auto;
	background-image: url(../img/icon_play.svg);
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.wrap_topItems article.video .trim img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wrap_topItems article.video dl {
	margin: 0;
	padding: 0;
	font-weight: 400;
}

.wrap_topItems article.video dl dt {
	width: 100%;
	margin: 0 0 5px;
	padding: 0;
	font-size: 20px;
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wrap_topItems article.video dl dd {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 13px;
	line-height: 1.5;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wrap_topItems article.topics {
	background-color: #fff;
}

.wrap_topItems article.topics .trim {
	width: 100%;
	height: 216px;
	border: solid 10px #fff;
}

.wrap_topItems article.topics .trim img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media print,screen and ( min-width: 701px ) {
	.wrap_topItems article.topics .trim img { transition: all .3s; }
	.wrap_topItems article.topics a:hover .trim img {
		opacity: 0.8;
		transform: scale(1.1);
	}
}

.wrap_topItems article.topics dl {
	margin: 0;
	padding: 0 12px 10px;
}

.wrap_topItems article.topics dl dt {
	width: 100%;
	margin: 0 0 8px;
	padding: 0;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.25;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.wrap_topItems article.topics dl dd {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 13px;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
}


.btn_readmore {
	width: 100%;
	padding-top: 60px;
	display: flex;
	justify-content: center;
}

.btn_readmore a {
	width: 115px;
	line-height: 1;
	transition: .2s;
	display: block;
}

	.btn_readmore a:hover {
		opacity: 0.75;
	}



/* ---------------------------------------------------------------
start max 1200px
--------------------------------------------------------------- */

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



}

/* ---------------------------------------------------------------
end max 1200px
--------------------------------------------------------------- */


/* ---------------------------------------------------------------
start max 1033px
--------------------------------------------------------------- */

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

	.wrap_topItems {
		grid-template-columns: repeat(4,1fr);
	}

}

/* ---------------------------------------------------------------
end max 1033px
--------------------------------------------------------------- */

/* ---------------------------------------------------------------
start max 850px
--------------------------------------------------------------- */

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

	.col_topLinks ul li {
		margin: 0 35px 30px 0;
	}

	.wrap_topItems {
		grid-template-columns: repeat(3,1fr);
	}




}

/* ---------------------------------------------------------------
end max 850px
--------------------------------------------------------------- */
/* ---------------------------------------------------------------
start min 701px
--------------------------------------------------------------- */

@media print,screen and ( min-width: 701px ) {

	.wrap_topItems .item a .img_thumb_items { transition: all .3s; }
	.wrap_topItems .item a:hover .img_thumb_items {
		opacity: 0.8;
		transform: scale(1.1);
	}



}

/* ---------------------------------------------------------------
end min 701px
--------------------------------------------------------------- */
/* ---------------------------------------------------------------
start max 700px
--------------------------------------------------------------- */

@media print,screen and ( max-width: 700px ) {


	.mds_top1 {
		font-size: 28px;
	}

	.col_topMain {
		padding: 30px 0 50px;
	}

	.col_topMain .mds_top1 {
		margin-bottom: 30px;
	}

	.col_topLinks {
		display: none;
	}

	.col_topItems .deco3 {
		display: none;
	}

	.col_topItems {
		padding: 40px 0 50px;
	}

	.col_topItems .mds_top1 {
		margin-bottom: 35px;
	}

	.wrap_topItems {
		width: 90%;
		gap: 20px 20px;
		grid-template-columns: repeat(2,1fr);
	}

	.wrap_topItems article.link_topabout {
		height: 78vw;
		border-width: 6px;
	}

	.wrap_topItems article.link_topabout a {
		padding-top: 2vw;
	}

	.wrap_topItems article.link_topabout dl dt {
		margin-bottom: 2vw;
		font-size: 5vw;
	}

	.wrap_topItems article.link_topabout dl dd {
		font-size: 3.2vw;
	}

	.trim {
		height: 62vw;
		margin-bottom: 8px;
		padding: 6px;
	}

	.ranking {
		width: 9vw;
		top: 1vw;
		left: 1vw;
	}

	.tag {
		bottom: 1vw;
		left: 1vw;
	}

	.wrap_topItems article.topics .trim {
		height: 50vw;
		margin-bottom: 3px;
		border-width: 6px;
	}

	.wrap_topItems article.video .trim {
		height: 52vw;
		border-width: 6px;
	}

	.wrap_topItems article.video .trim::after {
		width: 13vw;
		height: 13vw;
	}

	.wrap_topItems article.topics dl dd {
		font-size: 14px;
		line-height: 1.5;
	}

	.btn_readmore {
		padding-top: 40px;
	}





}

/* ---------------------------------------------------------------
end max 700px
--------------------------------------------------------------- */

/* ---------------------------------------------------------------
start max 450px
--------------------------------------------------------------- */

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

	.mds_top1 {
		font-size: 26px;
	}

	.col_topMain {
		padding-top: 25px;
	}

	.col_topMain {
		padding-top: 35px;
	}

	.wrap_topItems {
		gap: 15px 15px;
	}

	.col_topItems .mds_top1 {
		margin-bottom: 30px;
	}

	.wrap_topItems article.link_topabout dl dt {
		font-size: 5.8vw;
	}

	.wrap_topItems article.link_topabout dl dd {
		font-size: 3.8vw;
	}

}

/* ---------------------------------------------------------------
end max 450px
--------------------------------------------------------------- */



/* --------------- detail --------------- */
.wrap_detail_top {
	width: 94%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 35px 0 0;
	display: flex;
	justify-content: space-between;
}
@media print,screen and ( max-width: 700px ) {
	.wrap_detail_top {
		padding: 35px 0 0;
		display: block;
	}
}

.img_detail {
	width: 94%;
	max-width: 500px;
	margin: 0 2% 0 0;
}
@media print,screen and ( max-width: 700px ) {
	.img_detail {
		margin: 0 auto 3rem;
	}
}

.img_sub .swiper-slide {
	position: relative;
}
.img_sub .swiper-slide:before {
	content: "";
	display: block;
	padding-top: 100%;
}
.img_sub .swiper-slide img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
}

@media print,screen and ( min-width: 701px ) {
	.img_sub .swiper-slide.current img {
		border: 2px solid #d7d7d7;
		transition: border .5s;
	}
	.img_main {
		width: 100%;
		height: 500px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.img_main img {
		width: 100%;
		max-width: 95%;
		max-height: 500px;
		object-fit: contain;
	}
	.img_sub {
		margin-top: 10px;
		list-style: none;
		display: flex;
		flex-wrap: wrap;
	}
	.img_sub .swiper-slide {
		width: calc(100% / 6);
		margin: -1px 0 0 -1px;
		border-top: 1px solid #818181;
		border: 1px solid #818181;
	}
	.img_sub .swiper-slide:first-child,
	.img_sub .swiper-slide:nth-of-type(7n) {
		margin: -1px 0 0 0;
	}
	.img_sub .swiper-slide img {
		border: 2px solid transparent;
		transition: border .5s;
	}
	.img_sub img {
		cursor: pointer;
		object-fit: cover;
	}
}
@media print,screen and ( max-width: 700px ) {
	.img_main {
		display: none;
	}
}

@media print,screen and ( max-width: 700px ) {
	.swiper--wrapper {
		width: 100%;
		height: 300px;
		padding: 0;
		margin: 0;
	}
	.swiper-slide {
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		text-align: center;
		aspect-ratio: 1 / 1;
	}
	.swiper-slide img {
		width: 100%;
	}
}


.wrap_detail_subdesc {
	width: 94%;
	max-width: 1080px;
	margin: 100px auto 0;
	padding: 0;
}
@media print,screen and ( max-width: 700px ) {
	.wrap_detail_subdesc {
		margin: 50px auto 0;
	}
}

ul.link_description {
	margin: 0 0 45px;
	padding: 0 15px 5px;
	border-bottom: 1px solid #b1b1b1;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
@media print,screen and ( max-width: 700px ) {
	ul.link_description {
		display: none;
	}
}
ul.link_description li {
	margin: 5px 40px 5px 0;
	padding: 0;
}
ul.link_description li a {
	margin: 0;
	padding: 0 20px 0 0;
	display: block;
	position: relative;
	vertical-align: middle;
	text-decoration: none;
	transition: .2s;
}
ul.link_description li a:hover {
	opacity: 0.75;
}
ul.link_description li a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto 0;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top: 1px solid #818181;
	border-right: 1px solid #818181;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.subdesc_detail {
	padding: 0 15px;
}
.subdesc_detail h3 {
	margin: 0 0 15px;
	font-size: 20px;
	font-weight: 400;
	pointer-events: none;
}
.lead_subdesc {
	margin: 0 20px 50px;
	font-size: 13px;
	display: block;
}
.subdesc_detail:last-of-type .lead_subdesc {
	margin: 0 20px 0;
}
.lead_subdesc p {
	margin: 0 0 12px;
}
.lead_subdesc p:last-of-type {
	margin: 0;
}
.lead_subdesc img,
.lead_subdesc iframe {
	max-width: 100%;
}
@media print,screen and ( max-width: 700px ) {
	.subdesc_detail {
		padding: 0;
	}
	.subdesc_detail h3 {
		padding: 0 34px 0 5px;
		font-size: 17px;
		font-weight: 400;
		pointer-events: all;
		border-bottom: 1px solid #b1b1b1;
		position: relative;
		color: #000;
		vertical-align: middle;
		text-decoration: none;
	}
	.subdesc_detail h3::after {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 15px;
		margin: auto 0;
		content: "";
		vertical-align: middle;
		width: 6px;
		height: 6px;
		border-top: 1px solid #818181;
		border-right: 1px solid #818181;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		transition: .2s;
	}
	.subdesc_detail h3.active::after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.lead_subdesc {
		margin: 0 10px 35px;
		display: none;
	}
	.subdesc_detail:last-of-type .lead_subdesc {
		margin: 0 10px 0;
	}
}

.iframe-responsive {
	position: relative;
	width: 60%;
	margin: 0 0 20px;
	padding: calc(315 / 560 * 60%) 0 0;
}
@media print,screen and ( max-width: 700px ) {
	.iframe-responsive {
		width: 100%;
		padding: calc(315 / 560 * 100%) 0 0;
	}
}
.iframe-responsive iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


.no_item {
	padding: 40px 0;
	text-align: center;
}


























.desc_detail {
	width: 94%;
	max-width: 500px;
}
@media print,screen and ( max-width: 700px ) {
	.desc_detail {
		margin: 0 auto;
	}
}

.desc_detail .tag {
	margin: 0 0 25px;
	display: flex;
}
@media print,screen and ( max-width: 700px ) {
	.desc_detail .tag {
		margin: 0 0 5px;
	}
}

.desc_detail .brand {
	margin: 0 0 12px;
	font-weight: 300;
}
@media print,screen and ( max-width: 700px ) {
	.desc_detail .brand {
		margin: 0;
	}
}

.desc_detail .name {
	margin: 0 0 35px;
	font-size: 25px;
	font-weight: 500;
	line-height: 1.5;
}
@media print,screen and ( max-width: 700px ) {
	.desc_detail .name {
		margin: 0 0 10px;
	}
}

.desc_detail .lead {
	margin: 0 0 30px;
}

.desc_detail .lead a { text-decoration: underline; }
.desc_detail .lead a:hover { text-decoration: none; }

.desc_detail dl.option {
	margin: 0 0 15px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start; 
}
.desc_detail dl.option:last-of-type {
	margin: 0 0 50px;
}
.desc_detail dl.option dt {
	width: 150px;
}
.desc_detail dl.option dd {
	width: 200px;
	margin: 0;
}
.desc_detail dl.option dd select {
	width: 100%;
	padding: 10px;
	border-radius: 5px;
	border: 1px solid #818181;
}
@media print,screen and ( max-width: 700px ) {
	.desc_detail dl.option dt {
		width: 130px;
		font-size: 14px;
	}
	.desc_detail dl.option dd {
		width: calc(100% - 150px);
		margin: 0 0 0 20px;
	}
	.desc_detail dl.option:last-of-type {
		margin: 0 0 20px;
	}
}

.desc_detail dl.item-sku {
	margin: 0;
	padding: 0;
	border: none;
	display: table;
}

.desc_detail dl.item-sku dt {
	min-width: 76px;
	margin: 0;
	padding: 0;
	font-weight: normal;
	background: none;
	border: none;
	display: table-cell;
}

.desc_detail dl.item-sku dd {
	margin: 0;
	padding: 2px 5px;
	border: none;
	display: table-cell;
}

.desc_detail dl.item-sku dd select {
	margin: 0;
	padding: 5px;
	font-size: 15px;
	box-sizing: border-box;
}

.priceBox {
	margin: 0 0 25px;
	padding: 0 0 25px;
	border-bottom: 1px solid #818181;
}
.priceBox span.price {
	color: #000;
	font-size: 25px;
	font-weight: 400;
}
.priceBox span.general {
	font-size: 12px;
}

.priceBox dl.cont_discount {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: baseline;
}
.priceBox dl.cont_discount dt {
	width: 76px;
	margin: 0;
	padding: 0;
}

.priceBox dl.cont_discount dd {
	width: calc( 100% - 76px );
	margin: 0;
	padding: 0;
}

.priceBox .strike {
	color: #999;
	background: linear-gradient( 180deg, rgba(255,255,255,0) 50%, #999 calc( 50% + 1px ), rgba(255,255,255,0) calc( 50% + 2px ) );
}
.priceBox .strike span.price { font-size: 20px; }

.priceBox  dl.cont_discount .discount {
	padding: 0 0 0 5px;
	color: #df4244;
	font-size: 24px;
	font-weight: 600;
}
.priceBox  dl.cont_discount .discount .rate {
	margin: 0 0 0 8px;
	padding: 0 5px;
	font-size: 17px;
	line-height: 1.3;
	border: solid 1px #df4244;
	border-radius: 3px;
}

.cartBox {
	margin: 25px 0 0;
	display: flex;
	align-items: flex-end;
}
.cartBox span.quantity {
	text-align: center;
}
.cartBox input.skuquantity {
	width: 60px;
	height: 60px;
	margin: 0 10px;
	padding: 10px;
	font-size: 15px;
	text-align: center;
	border-radius: 5px;
	border: 1px solid #818181;
}
@media print,screen and ( max-width: 700px ) {
	.cartBox input.skuquantity {
		margin: 0;
	}
}

.cartBox span.cart-button {
	height: 60px;
	position: relative;
	display: inline-block;
	border-radius: 5px;
	background-color: #f28180;
	cursor: pointer;
	transition: .2s;
}
.cartBox span.cart-button:after{
	display: block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 30px;
	width: 24px;
	height: 24px;
	margin: auto 0;
	background: url("../img/item/icon_cart.svg") no-repeat center;
}
@media print,screen and ( min-width: 699px ) {
	.cartBox span.cart-button {
		width: 275px;
	}
	.cartBox span.cart-button:hover{
		background-color: #ef7b81;
	}
}
@media print,screen and ( max-width: 700px ) {
	.cartBox span.cart-button {
		width: 100%;
	}
}

.cartBox input.skubutton {
	width: 275px;
	height: 60px;
	color: #FFF;
	border:none;
	background: none;
	cursor: pointer;
}
@media print,screen and ( max-width: 700px ) {
	.cartBox input.skubutton {
		width: 100%;
	}
}

.cartBox .icon_fav {
	margin: 0 0 0 10px;
	padding: 0;
	display: block;
}

.cartBox .icon_fav .wpfp-link {
	width: 60px;
	height: 60px;
}

@media print,screen and ( max-width: 700px ) {
	.cartBox .icon_fav .wpfp-link { width: 46px; }
}

.cartBox .icon_fav .wpfp-link span.fav {
	width: 80px;
	height: 80px;
	top: calc( 50% - 40px );
	left: calc( 50% - 40px );
}
.cartBox .icon_fav .wpfp-link span.fav.added {
	animation: anim-fav2 1s steps(28) forwards;
}

@keyframes anim-fav2 {
	0% { background-position: 0 0; }
	100% { background-position: -2240px 0; }
}


.noitem {
	margin: 100px 20px;
	color: #626262;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
}














