@charset "utf-8";

/*
    新規・上書き用CSS
    
    common.cssの後に読み込まれます。
    新規や上書きのCSSはこちらに記述してください。
*/




/* レイアウト調整 202506 */

h2 {
	color: #000 !important;
}

.itemcategory-title-area {
	width: 100%;
	position: relative;
    margin: 20px auto 30px;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    aspect-ratio: 21 / 6;
}

.itemcategory-title-area-txt {
    width: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-7%, -50%);
    right: 0%;
}

.itemcategory-title-area-txt-header {
	background-color: #00af95;
	text-align: center;
}

.itemcategory-title-area-txt-header h1.h1-title {
	font-size: 1.4rem;
	color: #fff;
	margin: 0;
	padding: 10px 0;
}

.itemcategory-title-area-txt-read {
	background: rgba(255, 255, 255, 0.9);
	padding: 26px;
}

.itemcategory-title-area-txt-read p {
	font-size: 12px;
	line-height: 1.8;
	margin-bottom: 0;
}


.itemcategory-page-navi {
	display: flex;
	justify-content: space-between;
	gap: 24px;
}

.itemcategory-page-navi-list {
	display: block;
	width: calc((100% - 72px) / 4);
	background-color: #fff;
	border: 1px solid #dcdddd;
	border-radius: 8px;
	padding: 20px 10px;
	text-align: center;
	position: relative;
}

.itemcategory-page-navi-list-title {
	font-size: 16px;
	font-weight: bold;
	color: #00af95;
}

.itemcategory-page-navi-list-title::after {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	margin: 0 auto;
	background-image: url("/itemcategory/root/img/itemcategory-page-navi-list_arrow.png");
	background-repeat: no-repeat;
	position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    background-size: contain;
}

.itemcategory-category-description-area {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 24px;
}

.itemcategory-category-description-list {
	width: calc((100% - 48px) / 3) !important;
	display: flex;
	gap: 12px;
	align-items: center;
}

.itemcategory-category-description-list-image {
	width: 56px;
}

.itemcategory-category-description-list-txt {
	font-size: 13px;
	line-height: 1.4;
}

.itemcategory-page-navi-list-icon img {
	width: 40px;
}

.order-flow-area {
	display: flex;
	justify-content: space-between;
	gap: 24px;
}

.order-flow-area-step {
	width: calc((100% - 72px) / 4);
	background-color: #fff;
	border: 2px solid #f3f3f3;
	border-radius: 8px;
	padding: 20px;
	text-align: center;
	position: relative;
}

.order-flow-area-number {
    position: absolute;
    left: 10px;
    top: -10px;
	width: 32px;
	height: 32px;
	line-height: 32px;
	background-color: #16af96;
	border-radius: 50%;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}


.order-flow-area-icon {
	margin: 20px auto 10px;
}

.order-flow-area-icon img {
	height: 40px;
}

.order-flow-area-title {
	color: #16af96;
	font-size: 16px;
	line-height: 1.6;
	font-weight: bold;
	margin-bottom: 10px;
}

.order-flow-area-txt {
	width: 100%;
	text-align: left;
	font-size: 12px;
	line-height: 1.6;
	color: #555;
}

.review-works-area {
	background-color: #e9f6f3;
	border-radius: 8px;
	padding-bottom: 60px;
	margin-bottom: 60px;
}

.review-works-area h2 {
	margin: 60px auto 0;
	font-size: 18px;
	display: inline-block;
	border-bottom: 2px solid #009688;
	padding-bottom: 4px;
}

.review-works-area-lead {
	margin: 20px auto 20px;
	font-size: 12px;
}

#recommended-brand-items p {
	color: #444444;
    font-size: 0.8rem;
    font-weight: normal;
    letter-spacing: 0;
    padding-top: 0;
}

.features-box-txt p {
    color: #000;
    letter-spacing: 0;
    padding-top: 0;
}

.features-area {
    margin-bottom: 0;
}

.review-works-area {
	text-align: center;
}

.product_review {
    background-color: #fff;
    border-radius: 8px;
    padding: 20px;
    margin-left: 20px;
    align-items: stretch;
}

.review-works-area-h2 {
	margin-bottom: 30px !important;
}

.product_review_lead {
	display: flex;
}

.product_review_image {
	margin-right: 20px;
}

.recommended_products .slick-track {
	display: flex;
}
.recommended_products .slick-slide {
	height: auto !important;
}

.review-works-area .slick-slide {
	background-color: #fff;
}

.recommended_products {
    margin: 20px 0 0;
    display: flex;
}

.review-works-area .slide-common .slick-arrow {
    width: 25px;
    height: 35px;
    background-image: url("/itemcategory/root/img/right_arrow.png");
}

.review-works-area .slide-common .prevArrow {
    width: 25px;
    height: 35px;
    background-image: url("/itemcategory/root/img/left_arrow.png");
}

.recommended_products .nextArrow {
    transform: none !important;
    right: 10px !important;
    z-index: 100000;
    border: none !important;
    text-indent: -9999px;
    width: 25px !important;
    height: 36px !important;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("/itemcategory/root/img/right_arrow.png");
}

.recommended_products .prevArrow {
    transform: none !important;
    left: 10px !important;
    z-index: 100000;
    border: none !important;
    text-indent: -9999px;
    width: 25px !important;
    height: 36px !important;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("/itemcategory/root/img/left_arrow.png");
}


.box-item-outer{
    width: calc((100% - 105px) / 4);
    margin: 0 35px 25px 0;
    height: 460px;
}

.box-items a {
    width: auto !important;
    margin: 0 !important;
}

.box-items a .texts {
    text-align: center;
}

.box-items-link {
	position: relative;
}

@media (min-width: 768px) {
.box-item-outer:hover .box-items-link {
    background-color: #F5F5F5;
    border-bottom: solid 20px white;
}
.box-item-outer:hover .box-items-lead-hidden2 {
    display: block;
}
.box-item-outer:hover .box-items-lead-hidden {
    display: block;
}
.box-item-outer:hover .box-items-hidden {
    position: static;
    display: block;
}
}

.box-item-outer .box-items-link {
    z-index: 10;
    position: relative;
}


.box-items-name {
	color: #000;
    margin-bottom: 0;
}
.box-items-brand {
	color: #000;
	margin-bottom: 0;
}
.box-items-price {
	color: #000;
	font-size: 16px;
    margin-bottom: 0;
}
.box-items-stars {
    margin-bottom: 5px;
    color: #f39a00;
}
.box-items-lead-hidden {
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis;
}
.box-items-lead-hidden2 {
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}
.box-items-lead {
    font-weight: 100;
    margin-bottom: 10px;
    text-align: left;
    font-size: 0.8rem;
    color: #616161;
}
.box-items-button {
	display: inline-block;
    text-align: center;
    background-color: #00af95;
    color: #fff;
    padding: 4px 18px;
    border-radius: 6px;
    margin-bottom: 12px;
}
.box-items-master {
	text-align: left;
    font-weight: 100;
    font-size: 0.7rem;
    color: #616161;
}
.box-items-hidden {
	display: none;
	position: absolute;
}
.box-items-over {
	z-index: 300 !important;
	height: auto;
}

.box-item-outer:nth-child(4n) {
    margin-right: 0px;
}

.box-item-outer .text-red {
	font-size: 16px;
}





@media screen and (max-width: 1200px) {
	.itemcategory-title-area {
		background-position: top;
		margin-bottom: 10px;
		display: flex;
		flex-direction: column;
		aspect-ratio: auto;
		height: auto;
		padding: 0 !important;
	}

	.itemcategory-title-area-txt {
		width: 100%;
		position: static;
		transform: none;
		top: auto;
		left: auto;
		margin-bottom: 10px;
		padding-top: 31%;
	}

	.itemcategory-title-area-txt-header h1.h1-title {
		font-size: 1.2rem;
	}
	.itemcategory-title-area-txt-read {
		padding: 18px;
		border: 1px solid #00af95;
	}
}

@media screen and (max-width: 1080px) {
	.order-flow-area-title br {
		display: none;
	}
}

@media screen and (max-width: 1000px) {
	.order-flow-area {
		flex-flow: column;
		gap: 20px;
	}
	.order-flow-area-step {
		width: 100%;
		padding: 10px 20px 20px 20px;
		margin-bottom: 20px;
	}
	.order-flow-area-icon {
		margin: 10px auto 8px;
	}
	.order-flow-area-title {
		font-size: 1.1rem;
		height: auto;
	}
}

@media screen and (max-width: 840px) {
	.itemcategory-title-area {
    	width: 100%;
		height: auto;
		position: static;
	}
	.itemcategory-title-area-txt {
		width: 100%;
		height: auto;
		position: static;
	}
	.itemcategory-title-area-txt-header {
		height: auto;
	}
	.itemcategory-title-area-txt-header h1.h1-title {
		margin: 0;
		padding: 10px 0;
	}
	.itemcategory-title-area-txt-read {
		padding: 20px;
		height: auto;
		overflow-y: visible;
	}
	.itemcategory-page-navi {
		gap: 10px;
	}
	.itemcategory-page-navi-list {
		width: calc((100% - 30px) / 4);
		padding: 10px;
	}
	.itemcategory-page-navi-list-icon img {
		width: 32px;
	}
	.itemcategory-page-navi-list-title {
		font-size: 11px;
		line-height: 1.3;
		margin: 8px auto;
	}
	.itemcategory-page-navi-list-title span {
		display: none;
	}
	.itemcategory-category-description-area {
		gap: 12px;
	}
	.itemcategory-category-description-list {
		width: calc((100% - 20px) / 2) !important;
		gap: 12px;
	}
	.itemcategory-category-description-list-image {
		width: 42px;
	}
	.itemcategory-category-description-list-txt {
		font-size: 11px;
	}

	.product_review {
		padding: 10px;
		margin-left: 10px;
    }
	.product_review_lead {
		display: block;
	}
	product_review_image {
		margin: 0 auto;
	}
	.slick-slide img {
		display: inline-block !important;
	}
	.product_review_txt {
		margin-top: 10px;
	}
	.product_review p.product_review1 {
		font-size: 11px;
		margin-bottom: 2px;
	}
	.product_review p.product_review2 {
		font-size: 12px;
	}
	.product_review p.product_review3 {
		margin-bottom: 0;
	}
	.product_review_image {
		margin-right: 0;
	}
}


@media screen and (max-width: 767px) {
	.box-items-lead-hidden {
	    -webkit-line-clamp: 2;
	}
	.box-items-lead-hidden2 {
	    display: block;
	}
	.box-item-outer {
		width: calc(50% - 7px);
		margin: 0;
		height: auto;
	}
}



