.product .inner {
	gap: 40px;
}
.product .search_box {
	gap: 20px;
}
.product .search_box .search {
	flex: 1;
	width: 100%;
	border-radius: 20px;
	background: var(--white);
	padding: 16px;
	box-sizing: border-box;
}
.product .search_box .search input {
	flex: 1;
	width: 100%;
	font-size: 20px;
	letter-spacing: -0.8px;
	padding-left: 4px;
	background: transparent;
	box-sizing: border-box;
}
.product .search_box .search .search_btn {
	height: 60px;
	padding: 0 40px;
	border-radius: 15px;
	border: 1px solid rgba(255, 255, 255, 0.50);
	background: var(--key-color);
	font-size: 20px;
	font-weight: 500;
	color: var(--white);
	box-sizing: border-box;
}
.product .search_box > a {
	height: 60px;
	line-height: 60px;
	border-radius: 15px;
	border: 1px solid rgba(255, 255, 255, 0.50);
	background: rgba(0, 111, 255, 0.15);
	font-size: 20px;
	font-weight: 500;
	color: var(--key-color);
	padding: 0 30px;
	box-sizing: border-box;
}


.product .grid {
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.product .grid .item {
	background: var(--white);
	padding: 30px;
	gap: 60px;
	border-radius: 20px;
	box-sizing: border-box;
}
.product .grid .item .info_box {
	gap: 16px;
}
.product .grid .item .info_box .thumb {
	position: relative;
	width: 80px;
	height: 80px;
	border-radius: 10px;
	overflow: hidden;
}
.product .grid .item .info_box .thumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.product .grid .item .info_box .txt .name h4 {
	flex: 1;
	font-size: 24px;
	font-weight: 500;
	letter-spacing: -0.48px;
	text-transform: uppercase;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.product .grid .item .info_box .txt .name span {
	font-size: 14px;
	font-weight: 500;
	color: var(--key-color);
	padding: 6px 8px;
	border-radius: 15px;
	border: 1px solid rgba(255, 255, 255, 0.50);
	background: rgba(0, 111, 255, 0.15);
	box-sizing: border-box;
}
.product .grid .item .info_box .txt .type strong {
	font-weight: 500;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.product .grid .item .info_box .txt .type p {
	color: var(--text);
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.product .grid .item .info_box .price strong {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.48px;
}
.product .grid .item .info_box .price p {
	font-size: 14px;
	line-height: 1.4;
	letter-spacing: -0.28px;
}
.product .grid .item .info_box .price .up {
	color: #F60000;
}
.product .grid .item .info_box .price .down {
	color: var(--point);
}
.product .grid .item .btn_area a {
	display: inline-block;
	font-size: 20px;
	font-weight: 500;
	padding: 10px 30px;
	border-radius: 15px;
	box-sizing: border-box;
}
.product .grid .item .btn_area .like_btn {
	display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
	align-items: center;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.10);
}
.product .grid .item .btn_area .like_btn.on svg path {
	fill: var(--red);
}



.product .regist {
	padding: 40px;
	border-radius: 20px;
	background: var(--white);
	box-sizing: border-box;
}
.product .regist .form {
    gap: 20px 30px;
}
.product .regist .form .item {
    gap: 20px;
    font-size: 18px;
}
.product .regist .form .item > p {
    width: 110px;
}
.product .regist .form .item > div {
    position: relative;
}
.product .regist .form .item > div select {
	width: 100%;
	height: 56px;
    font-size: 18px;
	border: 1px solid var(--stroke);
    border-radius: 10px;
    padding: 0 20px;
    box-sizing: border-box;
}
.product .regist .form .item > div input[type=text],
.product .regist .form .item > div textarea {
	width: 100%;
	height: 56px;
    font-size: 18px;
	border: 1px solid var(--stroke);
    border-radius: 10px;
    padding: 16px 20px;
    box-sizing: border-box;
}
.product .regist .form .item > div textarea {
	height: 200px;
	resize: none;
}

.product .regist .form .btn_area button {
	width: 100%;
    max-width: 300px;
    height: 52px;
    font-size: 18px;
    font-weight: 500;
    border-radius: 50px;
    margin: 0 auto;
}




@media screen and (max-width: 1280px) {
	.product .search_box .search input {
		font-size: 18px;
	}
	.product .search_box .search .search_btn {
		height: 50px;
		font-size: 18px;
	}
	.product .search_box > a {
		height: 50px;
		line-height: 50px;
		font-size: 18px;
	}


	.product .grid .item {
		padding: 20px;
	}
	.product .grid .item .info_box .txt .name h4 {
		font-size: 22px;
	}
	.product .grid .item .btn_area a {
		font-size: 18px;
	}
}
@media screen and (max-width: 1024px) {
	.product .inner {
		gap: 20px;
	}

	.product .search_box {
		gap: 10px;
	}
	.product .search_box .search {
		border-radius: 15px;
		padding: 10px;
	}
	.product .search_box .search input {
        font-size: 16px;
        letter-spacing: 0;
    }
	.product .search_box .search .search_btn {
        height: 46px;
        font-size: 16px;
        border-radius: 10px;
    }
	.product .search_box > a {
		height: 46px;
		line-height: 46px;
		font-size: 16px;
		border-radius: 10px;
	}


	.product .grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.product .grid .item {
		gap: 30px;
	}
	.product .grid .item .btn_area a {
        font-size: 16px;
		border-radius: 10px;
    }
	.product .grid .item .btn_area .like_btn {
		width: 38px;
    	height: 38px;
	}


	.product .regist {
		padding: 30px 20px;
	}
	.product .regist .form .item {
		gap: 10px;
		font-size: 16px;
	}
	.product .regist .form .item > p {
		width: 95px;
	}
	.product .regist .form .item > div select {
		font-size: 16px;
	}
	.product .regist .form .item > div input[type=text], 
	.product .regist .form .item > div textarea {
		font-size: 16px;
	}
	.product .regist .form .btn_area button {
		height: 46px;
		font-size: 16px;
	}
}
@media screen and (max-width: 768px) {
	.product .search_box > a {
		width: 100%;
		text-align: center;
	}


	.product .grid {
		gap: 10px;
	}
	.product .grid .item .info_box .txt {
		flex: none;
		font-size: 14px;
	}
	.product .grid .item .info_box .txt .name h4 {
        font-size: 18px;
    }
	.product .grid .item .info_box .txt .name span {
		font-size: 12px;
	}
	.product .grid .item .info_box .price strong {
    	font-size: 20px;
	}
	.product .grid .item .btn_area a {
		font-size: 14px;
		padding: 10px 16px;
	}


	.product .regist .form {
		gap: 20px;
	}
	.product .regist .form .item {
		flex: none;
		width: 100%;
	}
	.product .regist .form .item > p {
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	.product .search_box .search .search_btn {
		width: 100%;
		height: 38px;
	}
	.product .search_box .search input {
		height: 38px;
	}


	.product .grid {
        grid-template-columns: repeat(1, 1fr);
    }
	.product .grid .item .info_box .txt {
		flex: 1;
	}
	.product .grid .item .btn_area .like_btn {
        width: 30px;
        height: 30px;
    }
	.product .grid .item .btn_area .like_btn svg {
		width: 16px;
	}
}
@media screen and (max-width: 380px) {
	.product .grid .item .info_box .thumb {
		width: 100%;
		height: 0;
		padding-bottom: 100%;
	}
	.product .grid .item .info_box .txt {
		flex: none;
	}
}