@charset "utf-8";
#product_details {
	width: 100%;
	height: auto;
	padding: 60px 0 0;
}
	.product__main {
		width: 100%;
		height: auto;
		margin: 0 auto 60px;
	}
		.product__main__inner {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			width: 85%;
			max-width: 1000px;
			height: auto;
			margin: 0 auto;
		}
		.subscriptions .product__main__inner {
			width: calc((1000 / 1280) * 100%);
		}
			.product__main__image {
				width: calc((424 / 900) * 100%);
				height: auto;
				position: relative;
			}
			.subscriptions .product__main__image {
				width: calc((424 / 1000) * 100%);
			}
				.product__swiper {
					width: 100%;
					height: auto;
					margin: 0 auto 6px;
					aspect-ratio: 1 / 1;
				}
					.product__slide__image {
						width: 100%;
						height: 100%;
					}
						.product__slide__image img {
							width: 100%;
							height: 100%;
							object-fit: cover;
							object-position: center;
						}
				.product__swiper__navi {
					width: 100%;
					height: auto;
					aspect-ratio: 1 / 1;
					position: absolute;
					top: 0;
					left: 0;
					z-index: 1;
					pointer-events: none;
				}
					.product__swiper__prev,
					.product__swiper__next {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 50px;
						height: 50px;
						padding-top: 1px;
						margin-top: -25px;
						border-radius: 9999px;
						background-color: var(--color--black);
						border: solid 1px var(--color--blue);
						opacity: .9;
						position: absolute;
						top: 50%;
						cursor: pointer;
						pointer-events: auto;
					}
					.product__swiper__prev {
						padding-left: 3px;
						left: -25px;
					}
					.product__swiper__next {
						padding-left: 3px;
						right: -25px;
					}
				@media (any-hover: hover) {
					.product__swiper__prev,
					.product__swiper__next {
						transition: .3s;
					}
					.product__swiper__prev:hover,
					.product__swiper__next:hover {
						background-color: var(--color--blue);
					}
				}
						.product__swiper__prev img,
						.product__swiper__next img {
							width: 11px;
							height: auto;
							pointer-events: none;
						}
						.product__swiper__prev img::selection,
						.product__swiper__next img::selection {
							background-color: rgba(0, 0, 0, 0);
						}
						.product__swiper__prev {
							transform: scale(-1,1);
						}
				.product__swiper__pagination {
					display: flex;
					justify-content: flex-start;
					align-items: flex-start;
					flex-wrap: wrap;
					column-gap: 6px;
					row-gap: 8px;
					width: 100%;
					height: auto;
				}
					.product__swiper__pagination .swiper-pagination-bullet {
						display: block;
						width: calc(20% - ((24 / 5) * 1px));
						height: auto;
						aspect-ratio: 1 / 1;
						background-color: initial !important;
						border-radius: 0px !important;
						margin: 0 !important;
						opacity: 1 !important;
						position: relative;
						cursor: pointer;
					}
						.product__swiper__pagination .swiper-pagination-bullet::after {
							content: '';
							display: block;
							width: 100%;
							height: 100%;
							background-color: var(--color--black);
							opacity: 0;
							position: absolute;
							top: 0;
							left: 0;
							pointer-events: none;
							transition: .3s;
						}
						.product__swiper__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
							opacity: .6;
						}
					@media (any-hover: hover) {
						.product__swiper__pagination .swiper-pagination-bullet:hover::after {
							opacity: .6;
						}
					}
			.product__main__contents {
				width: calc((380 / 900) * 100%);
				height: auto;
			}
			.subscriptions .product__main__contents {
				width: calc((474 / 1000) * 100%);
			}
				.product__main__contents__new {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					width: 100%;
					height: auto;
					margin: 0 auto 10px;
				}
					.product__main__contents__new__label {
						display: flex;
						justify-content: center;
						align-items: center;
						width: auto;
						height: auto;
						padding: 3px 13px 2px;
						background-color: var(--color--black);
						font-family: "Roboto", sans-serif;
						font-size: 12px;
						font-weight: 700;
						line-height: 1.5;
						letter-spacing: 0.1em;
						color: var(--color--white);
					}
				.product__main__contents__info {
					width: 100%;
					height: auto;
					padding: 0 0 9px;
				}
					.product__main__contents__name {
						width: 100%;
						height: auto;
						margin: 0 auto 10px;
						font-size: 18px;
						font-weight: 700;
						line-height: 1.8;
						letter-spacing: 0.1em;
					}
					.product__main__contents__price {
						width: 100%;
						height: auto;
						font-family: "Roboto", sans-serif;
						font-size: 14px;
						font-weight: 700;
						line-height: 1.8;
						letter-spacing: 0.1em;
						color: #666666;
					}
					.product__main__contents__review_score {
					    display: inline-block;
					    cursor: pointer;
					}
					    .product__main__contents__review_score > div {
					        pointer-events: none;
					    }
				.product__main__contents__spec {
					width: 100%;
					height: auto;
					padding: 22px 0 28px;
					margin: 0 auto 20px;
					border-top: solid 1px var(--color--gray);
					border-bottom: solid 1px var(--color--gray);
				}
					.product__main__contents__spec__list {
						width: 100%;
						height: auto;
					}
						.product__main__contents__spec__list__item {
							display: flex;
							justify-content: flex-start;
							align-items: center;
							width: 100%;
							height: auto;
						}
						.product__main__contents__spec__list__item:not(:last-of-type) {
							margin-bottom: 18px;
						}
							.product__main__contents__spec__list__item dt {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 73px;
								height: 42px;
								border: solid 1px var(--color--black);
								font-size: 14px;
								font-weight: 500;
								line-height: 1.8;
								letter-spacing: 0.05em;
							}
							.product__main__contents__spec__list__item dd {
								flex: 1;
								height: auto;
								padding-left: 18px;
								font-size: 14px;
								font-weight: 500;
								line-height: 1.5;
								letter-spacing: 0.05em;
							}
				.product__main__contents__selected_item {
					width: 100%;
					height: auto;
					padding: 8px 14px 7px;
					margin: 0 auto 20px;
					background-color: var(--color--bluegray);
				}
					.product__main__contents__selected_item__txt {
						width: 100%;
						height: auto;
						font-size: 14px;
						font-weight: 500;
						line-height: 1.8;
						letter-spacing: 0.05em;
					}
						.product__main__contents__selected_item__heading {
							display: block;
							font-size: 12px;
						}
						.product__main__contents__selected_item__name {
							letter-spacing: 0em;
						}
						.product__main__contents__selected_item__size {
							margin-left: 5px;
							font-weight: 700;
						}
				.product__main__contents__size {
					display: flex;
					justify-content: flex-start;
					align-items: flex-start;
					flex-wrap: wrap;
					column-gap: 10px;
					row-gap: 8px;
					width: 100%;
					height: auto;
					margin: 0 auto 14px;
				}
					.product__main__contents__size__item {
						display: flex;
						flex-direction: column;
						justify-content: center;
						align-items: center;
						width: calc(33.3333% - (20 / 3) * 1px);
						height: auto;
						aspect-ratio: 120 / 60;
						/* background-color: var(--color--white);
						border: solid 1px var(--color--gray); */
						background-color: var(--color--bluegray);
						border: solid 1px var(--color--gray);
						cursor: pointer;
					}
					.product__main__contents__size._few .product__main__contents__size__item {
						width: calc(50% - 5px);
						padding: 2px 5px 0;
						aspect-ratio: 120 / 40;
					}
					._selected.product__main__contents__size__item {
						background-color: var(--color--lightblue);
						border-color: var(--color--black);
					}
						.product__main__contents__size__item__value {
							width: 100%;
							height: auto;
							margin: 0 auto 2px;
							font-size: 14px;
							font-weight: 500;
							line-height: 1.2;
							letter-spacing: 0.05em;
							text-align: center;
							/* color: var(--color--gray); */
							color: var(--color--black);
						}
						.product__main__contents__size__item__price {
							width: 100%;
							height: auto;
							font-size: 14px;
							font-weight: 700;
							line-height: 1.2;
							letter-spacing: 0.1em;
							text-align: center;
							/* color: var(--color--gray); */
							color: var(--color--black);
						}
						._selected .product__main__contents__size__item__value,
						._selected .product__main__contents__size__item__price {
							color: var(--color--black);
						}
				@media (any-hover: hover) {
					.product__main__contents__size__item {
						transition: .3s;
					}
					.product__main__contents__size__item:hover {
						border-color: var(--color--black);
					}
						.product__main__contents__size__item__value,
						.product__main__contents__size__item__price {
							transition: .3s;
						}
						.product__main__contents__size__item:hover .product__main__contents__size__item__value,
						.product__main__contents__size__item:hover .product__main__contents__size__item__price {
							color: var(--color--black);
						}
				}
				.product__main__contents__sub {
					width: 100%;
					height: auto;
					margin: 0 auto;
				}
					.product__main__contents__sub__tab_wrap {
						display: flex;
						justify-content: flex-start;
						align-items: flex-end;
						column-gap: 10px;
						width: 100%;
						height: 33px;
						margin: 0;
						position: relative;
					}
						.product__main__contents__sub__tab_wrap::after {
							content: '';
							display: block;
							width: 100%;
							height: 1px;
							background-color: var(--color--gray);
							position: absolute;
							bottom: 0;
							left: 0;
						}
						.product__main__contents__sub__tab {
							display: flex;
							justify-content: center;
							align-items: flex-end;
							width: 140px;
							height: 33px;
							border-radius: 5px 5px 0 0;
							padding-top: 1px;
							background-color: #F6F6F6;
							position: relative;
							cursor: pointer;
							transition: .3s;
						}
					@media (any-hover: hover) {
						.product__main__contents__sub__tab:hover {
							background-color: var(--color--gray);
						}
					}
							.product__main__contents__sub__tab::after {
								content: '';
								display: block;
								width: 100%;
								height: 100%;
								border-radius: 5px 5px 0 0;
								border-top: solid 1px var(--color--gray);
								border-right: solid 1px var(--color--gray);
								border-left: solid 1px var(--color--gray);
								position: absolute;
								top: 0;
								left: 0;
								z-index: 1;
								pointer-events: none;
							}
						._active.product__main__contents__sub__tab {
							background-color: var(--color--white);
							pointer-events: none;
							z-index: 1;
						}
							.product__main__contents__sub__tab__txt {
								width: 100%;
								height: auto;
								font-size: 16px;
								font-weight: 500;
								line-height: 1.8;
								letter-spacing: 0.1em;
								text-align: center;
								color: #A5A5A5;
							}
							._active .product__main__contents__sub__tab__txt {
								color: var(--color--black);
							}
					.product__main__contents__sub__body__wrap {
						width: 100%;
						height: auto;
					}
						.product__main__contents__sub__body {
							width: 100%;
							height: auto;
							padding: 30px 0 24px;
						}
							.product__main__contents__sub__body__inner {
								width: 100%;
								max-width: 408px;
								height: auto;
								margin: 0 auto;
							}
								.product__main__contents__sub__benefits {
									display: flex;
									justify-content: center;
									align-items: flex-start;
									flex-wrap: wrap;
									column-gap: 20px;
									row-gap: 10px;
									width: 100%;
									height: auto;
									margin: 0 auto 18px;
								}
									.product__main__contents__sub__benefits__item {
										width: auto;
										height: auto;
										padding: 1px 22px;
										border-radius: 9999px;
										background-color: var(--color--skyblue);
										font-size: 10px;
										font-weight: 700;
										line-height: 1.8;
										letter-spacing: 0.05em;
										text-align: center;
										color: var(--color--white);
									}
								.product__main__contents__sub__price {
									display: flex;
									justify-content: space-between;
									align-items: flex-end;
									width: 100%;
									height: auto;
									padding: 16px 25px 11px;
									background-color: #F1F6FF;
								}
									.product__main__contents__sub__price__before,
									.product__main__contents__sub__price__after {
										display: flex;
										justify-content: flex-start;
										align-items: center;
									}
										.product__main__contents__sub__price__before dt {
											font-size: 14px;
											font-weight: 500;
											line-height: 24px;
											letter-spacing: 0.05em;
											color: #A5A5A5;
										}
										.product__main__contents__sub__price__before dd {
											font-size: 14px;
											font-weight: 500;
											line-height: 24px;
											letter-spacing: 0em;
											color: #A5A5A5;
										}
										.product__main__contents__sub__price__after dt {
											font-size: 16px;
											font-weight: 700;
											line-height: 24px;
											letter-spacing: 0.05em;
											color: var(--color--blue);
										}
										.product__main__contents__sub__price__after dd {
											font-size: 16px;
											font-weight: 700;
											line-height: 24px;
											letter-spacing: 0.05em;
											color: var(--color--blue);
										}
											.product__main__contents__sub__price__number {
												font-family: "Roboto", sans-serif;
												letter-spacing: 0em;
											}
											.product__main__contents__sub__price__before dd small,
											.product__main__contents__sub__price__after dd small {
												display: inline-block;
												margin-left: 5px;
												font-size: 10px;
											}
									.product__main__contents__sub__price__arrow {
										width: 6px;
										height: auto;
										padding-bottom: 6px;
									}
										.product__main__contents__sub__price__arrow svg {
											fill: var(--color--blue);
										}
								.product__main__contents__sub__note {
									width: 100%;
									height: auto;
									font-size: 10px;
									font-weight: 400;
									line-height: 1.5;
									letter-spacing: 0em;
									color: #8C8C8C;
								}
								.product__main__contents__sub__note:first-of-type {
									margin-top: 20px;
								}
								.product__main__contents__sub__note + .product__main__contents__sub__note {
									margin-top: 10px;
								}
								.product__main__contents__sub__btn_wrap {
									width: 100%;
									height: 50px;
									margin: 30px auto 0;
								}
									.product__main__contents__sub__btn {
										display: flex;
										justify-content: center;
										align-items: center;
										width: 100%;
										height: 100%;
										padding-left: 4px;
										border-radius: 3px;
										background-color: var(--color--black);
										border: solid 1px var(--color--black);
										font-size: 16px;
										font-weight: 500;
										line-height: 1.5;
										letter-spacing: 0.1em;
										color: var(--color--white);
										position: relative;
									}
										.product__main__contents__sub__btn__icon {
											width: 22px;
											height: auto;
											margin-left: -88px;
											position: absolute;
											top: 50%;
											left: 50%;
											transform: translate(0%,-50%);
										}
											.product__main__contents__sub__btn__icon svg {
												fill: var(--color--white);
											}
										.product__main__contents__sub__btn__arrow {
											width: 6px;
											height: auto;
											position: absolute;
											top: 50%;
											right: 23px;
											transform: translate(0%,-50%);
										}
											.product__main__contents__sub__btn__arrow svg {
												fill: var(--color--white);
											}
								@media (any-hover: hover) {
									.product__main__contents__sub__btn {
										transition: .3s;
									}
									.product__main__contents__sub__btn:hover {
										background-color: var(--color--yellow);
										color: var(--color--black);
									}
											.product__main__contents__sub__btn__icon svg,
											.product__main__contents__sub__btn__arrow svg {
												transition: .3s;
											}
											.product__main__contents__sub__btn:hover .product__main__contents__sub__btn__icon svg,
											.product__main__contents__sub__btn:hover .product__main__contents__sub__btn__arrow svg {
												fill: var(--color--black);
											}
								}
				.product__main__contents__warranty {
					width: 100%;
					height: auto;
					margin: 0 auto 9px;
					font-size: 14px;
					font-weight: 700;
					line-height: 1.8;
					letter-spacing: 0.1em;
					text-align: center;
					color: #0980DA;
				}
				.product__main__contents__color {
					width: 100%;
					height: auto;
					position: relative;
				}
					.product__main__contents__color__arrow {
						width: 12px;
						height: auto;
						position: absolute;
						top: 17px;
						right: 11px;
						z-index: 1;
					}
				.co-selling-block {
					display: block !important;
				}
				.product__main__contents__add_area {
					display: flex;
					justify-content: space-between;
					align-items: center;
					width: 100%;
					height: auto;
					margin: 22px auto 22px;
					position: relative;
					z-index: 2;
				}
					.product__main__contents__add_area__quantity {
						display: block;
						width: 128px;
						height: 50px;
						position: relative;
					}
						.product__main__contents__add_area__quantity__input {
							width: 100%;
							height: 100%;
							border-radius: 3px;
							background-color: var(--color--white);
							border: solid 1px var(--color--gray);
							font-family: "Roboto", sans-serif;
							font-size: 18px;
							font-weight: 500;
							line-height: 1.8;
							letter-spacing: 0.1em;
							color: #666666;
							text-align: center;
						}
						.product__main__contents__add_area__quantity__input::-webkit-inner-spin-button,
						.product__main__contents__add_area__quantity__input::-webkit-outer-spin-button {
							-webkit-appearance: none;
							-moz-appearance:textfield;
						}
						.product__main__contents__add_area__quantity__btn {
							display: block;
							width: 25px;
							height: 25px;
							padding: 0;
							outline: none;
							position: absolute;
							top: 50%;
							transform: translate(0%,-50%);
							cursor: pointer;
						}
						._minus.product__main__contents__add_area__quantity__btn {
							left: 10px;
						}
						._plus.product__main__contents__add_area__quantity__btn {
							right: 10px;
						}
							.product__main__contents__add_area__quantity__btn::before,
							.product__main__contents__add_area__quantity__btn::after {
								content: '';
								display: block;
								width: 12px;
								height: 1px;
								background-color: var(--color--gray);
								position: absolute;
								top: 50%;
								left: 50%;
								transform: translate(-50%,-50%);
							}
							.product__main__contents__add_area__quantity__btn::after {
								transform: translate(-50%,-50%) rotate(90deg);
							}
							._minus.product__main__contents__add_area__quantity__btn::after {
								display: none;
							}
					.product__main__contents__add_area__btn_wrap {
						width: calc((100% - 145px));
						height: 50px;
					}
						.product__main__contents__add_area__btn {
							display: flex;
							justify-content: center;
							align-items: center;
							width: 100%;
							height: 100%;
							padding-left: 4px;
							border-radius: 3px;
							background-color: var(--color--black);
							border: solid 1px var(--color--black);
							font-size: 16px;
							font-weight: 500;
							line-height: 1.5;
							letter-spacing: 0.1em;
							color: var(--color--white);
							position: relative;
							cursor: pointer;
						}
							.product__main__contents__add_area__btn__icon {
								width: 22px;
								height: auto;
								position: absolute;
								top: 50%;
								left: 19px;
								transform: translate(0%,-50%);
							}
								.product__main__contents__add_area__btn__icon svg {
									fill: var(--color--white);
								}
							.product__main__contents__add_area__btn__arrow {
								width: 6px;
								height: auto;
								position: absolute;
								top: 50%;
								right: 23px;
								transform: translate(0%,-50%);
							}
								.product__main__contents__add_area__btn__arrow svg {
									fill: var(--color--white);
								}
					@media (any-hover: hover) {
						.product__main__contents__add_area__btn {
							transition: .3s;
						}
						.product__main__contents__add_area__btn:hover {
							background-color: var(--color--yellow);
							color: var(--color--black);
						}
								.product__main__contents__add_area__btn__icon svg,
								.product__main__contents__add_area__btn__arrow svg {
									transition: .3s;
								}
								.product__main__contents__add_area__btn:hover .product__main__contents__add_area__btn__icon svg,
								.product__main__contents__add_area__btn:hover .product__main__contents__add_area__btn__arrow svg {
									fill: var(--color--black);
								}
					}
					.co-text-out-of-stock,
					#text-out-of-stock {
						width: 128px;
						height: 50px;
						border-radius: 3px;
						background-color: var(--color--gray);
						border: solid 1px var(--color--gray);
						font-size: 16px;
						font-weight: 700;
						line-height: 1.8;
						letter-spacing: 0.1em;
						color: var(--color--black);
						text-align: center;
					}
					.c-product_info__text-out-of-stock {
						display: none;
					}
					.co-btn-stock-waiting-list,
					.product__main__contents__add_area__soldout {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: 50px;
						padding: 1px 0 0;
						margin: 0 auto 15px;
						border-radius: 3px;
						border: solid 1px var(--color--black);
						background-color: var(--color--black);
						font-family: 'Roboto', sans-serif;
						font-size: 14px;
						font-weight: 700;
						line-height: 1.5;
						letter-spacing: 0.1em;
						color: var(--color--white);
						text-align: center;
						
						pointer-events: none;
					}
					.product__main__contents__add_area__soldout {
						width: calc((100% - 145px));
						margin: 0;
					}
				/* @media (any-hover: hover) {
					.co-btn-stock-waiting-list {
						transition: .3s;
					}
					.co-btn-stock-waiting-list:hover {
						background-color: var(--color--yellow);
						color: var(--color--black);
					}
				} */
					.product__main__contents__btn_area {
						display: flex;
						justify-content: space-between;
						align-items: center;
						width: 100%;
						height: auto;
						margin: 0 auto 30px;
					}
						.product__main__contents__favorite__btn_wrap {
							width: calc(100% - 45px);
							height: auto;
						}
							.favorite__btn {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								height: 36px;
								border-radius: 3px;
								background-color: var(--color--yellow);
								cursor: pointer;
							}
							.favorite__btn[data-is-favorite="false"] {
								background-color: var(--color--skyblue);
							}
						@media (any-hover: hover) {
							.favorite__btn {
								transition: .3s;
							}
							.favorite__btn:hover {
								opacity: 0.8;
							}
						}
								.favorite__btn img {
									width: 22px;
									height: auto;
									margin-right: 6px;
								}
								.favorite__btn span {
									display: inline-block;
									font-size: 14px;
									font-weight: 700;
									line-height: 1.5;
									letter-spacing: 0.1em;
									color: var(--color--white);
								}
						.product__main__contents__share__btn_wrap {
							width: 36px;
							height: 36px;
						}
							.product__main__contents__share__btn {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								height: 100%;
								padding-bottom: 2px;
								cursor: pointer;
							}
								.product__main__contents__share__btn svg {
									width: 25px;
									height: auto;
									stroke: var(--color--black);
								}
							@media (any-hover: hover) {
								.product__main__contents__share__btn svg {
									transition: .3s;
								}
								.product__main__contents__share__btn:hover svg {
									stroke: var(--color--yellow);
								}
							}
					.product__main__contents__supported_payment {
						display: flex;
						justify-content: space-between;
						align-items: center;
						width: 100%;
						height: auto;
						margin: 0 auto 50px;
					}
					.subscriptions .product__main__contents__supported_payment {
						margin: 0 auto 40px;
					}
						.product__main__contents__supported_payment__item {
							height: auto;
						}
						._np.product__main__contents__supported_payment__item {
							width: calc((88.61 / 408) * 100%);
						}
						._jcb.product__main__contents__supported_payment__item {
							width: calc((36 / 380) * 100%);
						}
						._master.product__main__contents__supported_payment__item {
							width: calc((31.67 / 380) * 100%);
						}
						._visa.product__main__contents__supported_payment__item {
							width: calc((42.78 / 380) * 100%);
						}
						._amex.product__main__contents__supported_payment__item {
							width: calc((28 / 380) * 100%);
						}
						._rpay.product__main__contents__supported_payment__item {
							width: calc((32 / 380) * 100%);
						}
						._amazonpay.product__main__contents__supported_payment__item {
							width: calc((44 / 380) * 100%);
						}
					.product__main__contents__supplementary {
						width: 100%;
						height: auto;
						padding: 12px 0 0;
						margin: 0 auto 18px;
						border-top: solid 1px #A5A5A5;
					}
						.product__main__contents__supplementary__list {
							width: 100%;
							height: auto;
						}
							.product__main__contents__supplementary__list__item {
								width: 100%;
								height: auto;
								overflow: hidden;
								border-radius: 3px;
								border: solid 1px #A5A5A5;
							}
							.product__main__contents__supplementary__list__item:not(:last-of-type) {
								margin-bottom: 10px;
							}
								.product__main__contents__supplementary__list__item dt {
									width: 100%;
									height: auto;
									padding: 9px 38px 9px 14px;
									font-size: 14px;
									font-weight: 500;
									line-height: 1.5;
									letter-spacing: 0.05em;
									position: relative;
									cursor: pointer;
								}
									.product__main__contents__supplementary__list__item dt::before,
									.product__main__contents__supplementary__list__item dt::after {
										content: '';
										display: block;
										width: 12px;
										height: 1px;
										background-color: #A5A5A5;
										position: absolute;
										top: 20px;
										right: 13px;
										transform: translate(0%,-50%);
									}
									.product__main__contents__supplementary__list__item dt::after {
										transform: translate(0%,-50%) rotate(90deg);
										transition: .3s;
									}
									.product__main__contents__supplementary__list__item dt._open::after {
										transform: translate(0%,-50%) rotate(0deg);
									}
								.product__main__contents__supplementary__list__item dd {
									display: none;
									width: 100%;
									height: auto;
									padding: 0px 38px 9px 14px;
									font-size: 14px;
									font-weight: 500;
									line-height: 1.5;
									letter-spacing: 0.05em;
								}
					.product__main__contents__note {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 100%;
						height: auto;
						font-size: 12px;
						font-weight: 400;
						line-height: 1.5;
						letter-spacing: 0.06em;
						text-align: center;
						color: #A5A5A5;
					}
					.product__main__contents__note + .product__main__contents__note {
						margin-top: 10px;
					}
						.product__main__contents__note__modal_btn {
							display: flex;
							justify-content: center;
							align-items: center;
							cursor: pointer;
						}
					@media (any-hover: hover) {
						.product__main__contents__note__modal_btn:hover {
							text-decoration: underline;
						}
					}
							.product__main__contents__note__modal_btn img {
								width: 18px;
								height: auto;
								margin-right: 6px;
							}
					.modal {
						display: none;
						width: 100%;
						height: 100svh;
						position: fixed;
						top: 0;
						left: 0;
						z-index: 100;
					}
						.modal__bg {
							width: 100%;
							height: 100%;
							background-color: rgba(44, 44, 44, 0.5);
							position: absolute;
							top: 0;
							left: 0;
							z-index: 1;
						}
						.modal__container {
							display: none;
							width: 80%;
							max-width: 800px;
							height: auto;
							max-height: 70svh;
							padding: 40px 50px;
							background-color: var(--color--white);
							overflow: auto;
							position: absolute;
							top: 50%;
							left: 50%;
							transform: translate(-50%,-50%);
							z-index: 2;
						}
						.modal__container._modal_share {
							width: 300px;
							padding: 65px 50px;
						}
							.modal__close_btn {
								width: 40px;
								height: 40px;
								border-radius: 9999px;
								border: solid 1px var(--color--gray);
								position: absolute;
								top: 20px;
								right: 20px;
								z-index: 1;
								cursor: pointer;
							}
								.modal__close_btn::before,
								.modal__close_btn::after {
									content: '';
									display: block;
									width: 20px;
									height: 1px;
									background-color: var(--color--gray);
									position: absolute;
									top: 50%;
									left: 50%;
								}
								.modal__close_btn::before {
									transform: translate(-50%,-50%) rotate(45deg);
								}
								.modal__close_btn::after {
									transform: translate(-50%,-50%) rotate(-45deg);
								}
						@media (any-hover: hover) {
							.modal__close_btn {
								transition: .3s;
							}
							.modal__close_btn:hover {
								background-color: var(--color--gray);
							}
								.modal__close_btn::before,
								.modal__close_btn::after {
									transition: .3s;
								}
								.modal__close_btn:hover::before,
								.modal__close_btn:hover::after {
									background-color: var(--color--white);
								}
						}
							.modal__inner {
								width: 100%;
								height: 100%;
							}
								.modal__heading {
									display: flex;
									justify-content: center;
									align-items: center;
									width: 100%;
									height: auto;
									margin: 0 auto 30px;
									font-size: 16px;
									font-weight: 700;
									line-height: 1.5;
									letter-spacing: 0.06em;
									text-align: center;
									color: #A5A5A5;
								}
									.modal__heading img {
										width: 18px;
										height: auto;
										margin-top: 2px;
										margin-right: 6px;
									}
								.modal__txt {
									width: 100%;
									height: auto;
									font-size: 14px;
									font-weight: 500;
									line-height: 1.8;
									letter-spacing: 0.05em;
									color: #A5A5A5;
								}
								.share_modal__heading {
									width: 100%;
									height: auto;
									margin: 0 auto 24px;
									font-size: 16px;
									font-weight: 700;
									line-height: 1;
									letter-spacing: 0;
									text-align: center;
									color: var(--color--black);
								}
								.share_modal__list {
									display: flex;
									flex-direction: column;
									gap: 15px;
									width: 100%;
									height: auto;
								}
									.share_modal__list__item {
										width: 100%;
										height: auto;
									}
									.share_modal__list__item__link {
										display: flex;
										justify-content: flex-start;
										align-items: center;
										gap: 14px;
										width: 100%;
										height: auto;
										padding: 0;
										margin: 0;
									}
										.share_modal__list__item__icon {
											width: 40px;
											height: auto;
										}
										.share_modal__list__item__name {
											flex: 1;
											font-size: 16px;
											font-weight: 700;
											line-height: 1;
											text-align: left;
											color: var(--color--black);
										}
								@media (any-hover: hover) {
									.share_modal__list__item__link {
										transition: .3s;
									}
									.share_modal__list__item__link:hover {
										opacity: .7;
									}
								}
	.product__contents {
		width: 100%;
		height: auto;
	}
		.product__contents__tab_wrap {
			display: flex;
			justify-content: flex-start;
			align-items: flex-end;
			column-gap: 10px;
			width: 90%;
			max-width: 1120px;
			height: 60px;
			margin: 0 auto;
			position: relative;
		}
			.product__contents__tab_wrap::after {
				content: '';
				display: block;
				width: 100%;
				height: 1px;
				background-color: var(--color--gray);
				position: absolute;
				bottom: 0;
				left: 0;
			}
			.product__contents__tab {
				display: flex;
				justify-content: center;
				align-items: flex-end;
				width: 188px;
				height: 53px;
				padding-bottom: 10px;
				border-radius: 5px 5px 0 0;
				background-color: #F6F6F6;
				position: relative;
				cursor: pointer;
				transition: .3s;
			}
		@media (any-hover: hover) {
			.product__contents__tab:hover {
				background-color: var(--color--gray);
			}
		}
				.product__contents__tab::after {
					content: '';
					display: block;
					width: 100%;
					height: 100%;
					border-radius: 5px 5px 0 0;
					border-top: solid 1px var(--color--gray);
					border-right: solid 1px var(--color--gray);
					border-left: solid 1px var(--color--gray);
					position: absolute;
					top: 0;
					left: 0;
					z-index: 1;
					pointer-events: none;
				}
			._active.product__contents__tab {
				width: 252px;
				height: 60px;
				background-color: var(--color--white);
				pointer-events: none;
				z-index: 1;
			}
				.product__contents__tab__txt {
					width: 100%;
					height: auto;
					font-size: 18px;
					font-weight: 500;
					line-height: 1.8;
					letter-spacing: 0.1em;
					text-align: center;
					color: #A5A5A5;
				}
				._active .product__contents__tab__txt {
					color: var(--color--black);
				}
		.product__contents__panel__wrap {
			width: 100%;
			height: auto;
		}
			.product__contents__panel {
				display: none;
				width: 100%;
				height: auto;
			}
			.product__contents__panel._active {
				display: block;
			}
			.product__contents__panel._details {
				padding: 80px 0;
			}
/* 共通 */
.product__contents__heading {
	width: 100%;
	height: auto;
	padding-bottom: 10px;
	border-bottom: solid 1px var(--color--gray);
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.1em;
}
	.product__contents__heading span {
		background: linear-gradient(83deg, #042A9E -16.1%, #FFF7E7 130.8%);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;	
	}
				.product__contents__recommended {
					width: 100%;
					height: auto;
					margin: 0 auto 100px;
					position: relative;
					z-index: 2;
				}
					.product__contents__recommended__inner {
						display: flex;
						justify-content: space-between;
						align-items: flex-start;
						width: 80%;
						max-width: 883px;
						height: auto;
						padding: 0;
						margin: 0 auto;
					}
					.product__contents__recommended__details {
						width: calc((498 / 883) * 100%);
						height: auto;
						padding-top: 28px;
						padding-right: 50px;
					}
						.product__contents__recommended .product__contents__heading {
							border-bottom: initial;
							margin-bottom: 5px;
						}
						.product__contents__txt {
							width: 100%;
							height: auto;
							margin: 0 auto 34px;
							font-size: 28px;
							font-weight: 500;
							line-height: 1.8;
							letter-spacing: 0.05em;
						}
						.product__contents__recommended__list_wrap {
							width: 100%;
							height: auto;
						}
							.product__contents__recommended__list_heading {
								display: flex;
								justify-content: flex-start;
								align-items: center;
								width: 100%;
								height: auto;
								padding-left: 10px;
								margin: 0 auto 8px;
								font-size: 16px;
								font-weight: 700;
								line-height: 1.8;
								letter-spacing: 0.1em;
							}
								.product__contents__recommended__list_heading img {
									width: 12px;
									height: auto;
									margin-right: 9px;
								}
							.product__contents__recommended__list {
								width: 100%;
								height: auto;
								border-top: solid 1px var(--color--gray);
							}
								.product__contents__recommended__list__item {
									width: 100%;
									height: auto;
									padding: 12px 0 13px 46px;
									border-bottom: solid 1px var(--color--gray);
									font-size: 14px;
									font-weight: 500;
									line-height: 1.8;
									letter-spacing: 0.05em;
									position: relative;
								}
									.product__contents__recommended__list__item::before,
									.product__contents__recommended__list__item::after {
										content: '';
										display: block;
										position: absolute;
									}
									.product__contents__recommended__list__item::before {
										width: 15px;
										height: 15px;
										border: solid 1px var(--color--gray);
										top: 17px;
										left: 1px;
									}
									.product__contents__recommended__list__item::after {
										width: 7px;
										height: 14px;
										border-radius: 0 0 1px 0;
										border-right: solid 2px var(--color--skyblue);
										border-bottom: solid 2px var(--color--skyblue);
										top: 14px;
										left: 8px;
										transform: rotate(45deg);
									}
					.product__contents__recommended__image {
						width: calc((387 / 883) * 100%);
						height: auto;
						border-radius: 5px;
						overflow: hidden;
					}
						.product__contents__recommended__image img {
							width: 100%;
							height: 100%;
							object-fit: cover;
							object-position: center;
						}
				.product__contents__point {
					width: 100%;
					height: auto;
					margin: 0 auto 80px;
					position: relative;
					z-index: 1;
				}
					.product__contents__point::before {
						content: '';
						display: block;
						width: 100%;
						height: 391px;
						background: linear-gradient(1deg, #FFF7E7 -5.48%, #B1CCF5 113.58%);
						border-radius: 50% 50% 0px 0px / 391px 391px 0px 0px;
						background-color: var(--color--black);
						opacity: .1;
						position: absolute;
						top: 0;
						left: 0;
						transform: translate(0%,-100%);
						z-index: -1;
					}
						.product__contents__point .product__contents__heading {
							width: 90%;
							max-width: 1000px;
							height: auto;
							margin: 0 auto 30px;
						}
						.product__contents__point__list {
							display: flex;
							justify-content: space-between;
							align-items: flex-start;
							flex-wrap: wrap;
							width: calc((1000 / 1280) * 100%);
							max-width: 1000px;
							height: auto;
							margin: 0 auto 90px;
							counter-reset: number 0;
						}
							.product__contents__point__list::after {
								content: '';
								display: block;
								width: calc((319 / 1000) * 100%);
								height: 0;
							}
							.product__contents__point__list__item {
								width: calc((319 / 1000) * 100%);
								height: auto;
							}
								.product__contents__point__list__item__image {
									width: 100%;
									height: auto;
									aspect-ratio: 319 / 229;
									overflow: hidden;
									position: relative;
								}
									.product__contents__point__list__item__image img {
										width: 100%;
										height: 100%;
										object-fit: cover;
										object-position: center;
									}
									.product__contents__point__list__item__number {
										width: 59px;
										height: 59px;
										padding: 9px 0 0;
										background: linear-gradient(143deg, #B1CCF5 13.79%, #FFF7E7 104.23%);
										position: absolute;
										top: 0;
										left: 0;
										z-index: 1;
									}
										.product__contents__point__list__item__number__point {
											width: 100%;
											height: auto;
											margin: 0 auto -7px;
											font-family: "Roboto", sans-serif;
											font-size: 10px;
											font-weight: 700;
											line-height: 1.8;
											letter-spacing: 0em;
											text-align: center;
											color: var(--color--white);
										}
										.product__contents__point__list__item__number__value {
											width: 100%;
											height: auto;
											font-family: "Roboto", sans-serif;
											font-size: 24px;
											font-weight: 700;
											line-height: 1.8;
											letter-spacing: 0em;
											text-align: center;
											color: var(--color--white);
										}
											.product__contents__point__list__item__number__value::before {
												counter-increment: number 1;
												content: counter(number) '';
											}
								.product__contents__point__list__item__details {
									width: 100%;
									height: auto;
									padding: 17px 7px 0;
								}
									.product__contents__point__list__item__details__txt {
										width: 100%;
										height: auto;
									}
										.product__contents__point__list__item__details__txt dt {
											width: 100%;
											height: auto;
											padding: 0 0 14px;
											margin: 0 auto 15px;
											font-size: 18px;
											font-weight: 700;
											line-height: 1.8;
											letter-spacing: 0em;
											position: relative;
										}
											.product__contents__point__list__item__details__txt dt::after {
												content: '';
												display: block;
												width: 100%;
												height: 2px;
												background: var(--gradient_03);
												position: absolute;
												bottom: 0;
												left: 0;
												transform: translate(0%,50%);
											}
										.product__contents__point__list__item__details__txt dd {
											width: 100%;
											height: auto;
											font-size: 14px;
											font-weight: 500;
											line-height: 1.8;
											letter-spacing: 0em;
										}
						.product__contents__point__benefits {
							width: 100%;
							max-width: 824px;
							height: auto;
							margin: 0 auto 50px;
						}
							.product__contents__point__benefits__container {
								display: flex;
								justify-content: space-between;
								align-items: stretch;
								width: 100%;
								height: auto;
								margin: 0 auto 10px;
							}
								.product__contents__point__benefits__image {
									width: calc((394 / 824) * 100%);
									height: auto;
									aspect-ratio: 394 / 247;
									position: relative;
								}
									.product__contents__point__benefits__image img {
										width: 100%;
										height: 100%;
										object-fit: cover;
										object-position: center;
									}
									.product__contents__point__benefits__label {
										width: 150px;
										height: auto;
										aspect-ratio: 1 / 1;
										position: absolute;
										top: -50px;
										left: -56px;
										z-index: 1;
									}
								.product__contents__point__benefits__details {
									display: flex;
									justify-content: center;
									align-items: center;
									flex: 1;
									height: auto;
									padding: 37px calc((70 / 824) * 100%) 40px;
									background-color: #F8F8F8;
								}
									.product__contents__point__benefits__details__txt {
										width: 100%;
										height: auto;
									}
										.product__contents__point__benefits__details__txt dt {
											width: 100%;
											height: auto;
											margin: 0 auto 6px;
											font-size: 20px;
											font-weight: 700;
											line-height: 1.6;
											letter-spacing: 0em;
										}
										.product__contents__point__benefits__details__txt dd {
											width: 100%;
											height: auto;
											font-size: 14px;
											font-weight: 500;
											line-height: 1.8;
											letter-spacing: 0em;
										}
							.product__contents__point__benefits__note {
								width: 100%;
								height: auto;
								font-size: 12px;
								font-weight: 400;
								line-height: 1.5;
								letter-spacing: 0.06em;
								color: #8C8C8C;
							}
					.product__contents__point__data {
						width: 100%;
						height: auto;
					}
						.product__contents__point__data__container {
							width: 90%;
							max-width: 1160px;
							height: auto;
							padding: 40px 0 20px;
							margin: 0 auto;
							background-color: var(--color--bluegray);
						}
							.product__contents__point__data__heading {
								width: 100%;
								height: auto;
								margin: 0 auto 30px;
								font-size: 22px;
								font-weight: 700;
								line-height: 1.8;
								letter-spacing: 0.1em;
								text-align: center;
							}
							.product__contents__point__data__contents {
								display: flex;
								justify-content: center;
								align-items: flex-start;
								column-gap: calc((56 / 1160) * 100%);
								width: 100%;
								height: auto;
								margin: 0 auto 43px;
							}
								.product__contents__point__data__contents__item {
									width: calc((390 / 1160) * 100%);
									height: auto;
								}
									.product__contents__point__data__image {
										width: 100%;
										height: auto;
										margin: 0 auto 13px;
									}
									.product__contents__point__data__details {
										width: 100%;
										height: auto;
									}
										.product__contents__point__data__details dt {
											width: 100%;
											height: auto;
											padding: 0 0 7px;
											margin: 0 auto 10px;
											font-size: 18px;
											font-weight: 700;
											line-height: 1.8;
											letter-spacing: 0em;
											text-align: center;
											position: relative;
										}
											.product__contents__point__data__details dt::after {
												content: '';
												display: block;
												width: 100%;
												height: 2px;
												background: var(--gradient_03);
												position: absolute;
												bottom: 0;
												left: 0;
												transform: translate(0%,50%);
											}
										.product__contents__point__data__details dd {
											width: 100%;
											height: auto;
											font-size: 14px;
											font-weight: 500;
											line-height: 1.8;
											letter-spacing: 0em;
											text-align: center;
										}
							.product__contents__point__data__note {
								width: 100%;
								height: auto;
								padding-right: calc((20 / 1160) * 100%);
								font-size: 12px;
								font-weight: 400;
								line-height: 1.5;
								letter-spacing: 0.06em;
								text-align: right;
								color: #8C8C8C;
							}
				.product__contents__care {
					width: 90%;
					max-width: 1000px;
					height: auto;
					margin: 0 auto 80px;
				}
					.product__contents__care .product__contents__heading {
						margin-bottom: 30px;
					}
					.product__contents__care__list {
						width: 100%;
						height: auto;
					}
						.product__contents__care__list__item {
							width: 100%;
							height: auto;
						}
						.product__contents__care__list__item:not(:last-of-type) {
							margin-bottom: 40px;
						}
							.product__contents__care__list__item dt {
								width: 100%;
								height: auto;
								margin: 0 auto 13px;
								font-size: 22px;
								font-weight: 700;
								line-height: 1.8;
								letter-spacing: 0.1em;
							}
							.product__contents__care__list__item dd {
								width: 100%;
								height: auto;
								font-size: 14px;
								font-weight: 500;
								line-height: 1.8;
								letter-spacing: 0em;
							}
				.product__contents__size {
					width: 90%;
					max-width: 1000px;
					height: auto;
					margin: 0 auto;
				}
					.product__contents__size .product__contents__heading {
						margin-bottom: 10px;
					}
					.product__contents__size__table {
						width: 100%;
						height: auto;
					}
						.product__contents__size__table__row {
							display: flex;
							justify-content: space-between;
							align-items: flex-start;
							gap: 9px;
							width: 100%;
							height: auto;
							padding-left: 100px;
						}
						.product__contents__size__table__row + .product__contents__size__table__row {
							margin-top: 30px;
						}
							.product__contents__size__table__row__item {
								display: flex;
								flex-direction: column;
								flex: 1;
								height: auto;
							}
								.product__contents__size__table__row__item__cell {
									width: 100%;
									height: auto;
									padding: 15px 0;
									font-size: 14px;
									font-weight: 500;
									line-height: 1.8;
									letter-spacing: 0.05em;
									text-align: center;
									color: var(--color--black);
									position: relative;
								}
								.product__contents__size__table__row__item__cell._name {
									display: flex;
									justify-content: center;
									align-items: center;
									gap: 10px;
									min-height: 52px;
									padding: 10px 0;
									background: linear-gradient(94.78deg, #B1CCF5 0%, #FFF7E7 186.65%);
								}
									.product__contents__size__table__row__item__cell._name img {
										width: auto;
										height: 33px;
									}
									.product__contents__size__table__row__item__cell._name p {
										font-size: 18px;
										font-weight: 700;
										line-height: 1.8;
										letter-spacing: 0em;
									}
									.product__contents__size__table__row__item__cell::before {
										justify-content: center;
										align-items: center;
										width: 100px;
										height: calc(100% - 12px);
										padding: 8px 0;
										background-color: var(--color--bluegray);
										font-size: 16px;
										font-weight: 700;
										line-height: 1.8;
										letter-spacing: 0em;
										color: var(--color--black);
										position: absolute;
										top: 6px;
										right: 100%;
									}
									.product__contents__size__table__row__item .product__contents__size__table__row__item__cell._size::before {
										content: 'サイズ';
									}
									.product__contents__size__table__row__item .product__contents__size__table__row__item__cell._thickness::before {
										content: '厚さ';
									}
									.product__contents__size__table__row__item .product__contents__size__table__row__item__cell._type::before {
										content: 'タイプ';
									}
									.product__contents__size__table__row__item .product__contents__size__table__row__item__cell._purpose::before {
										content: '用途';
									}
									.product__contents__size__table__row__item .product__contents__size__table__row__item__cell._country::before {
										content: '生産国';
									}
									.product__contents__size__table__row__item:first-of-type .product__contents__size__table__row__item__cell::before {
										display: flex;
									}
									.product__contents__size__table__row__item:not(:first-of-type) .product__contents__size__table__row__item__cell::before {
										display: none;
									}
									.product__contents__size__table__row__item__cell::after {
										content: '';
										display: block;
										width: calc(100% + 18px);
										height: 1px;
										background-color: var(--color--gray);
										position: absolute;
										bottom: 0;
									}
									.product__contents__size__table__row__item:nth-of-type(1) .product__contents__size__table__row__item__cell::after {
										width: calc(100% - 20px);
										right: 0;
									}
									.product__contents__size__table__row__item:nth-of-type(2) .product__contents__size__table__row__item__cell::after {
										left: 50%;
										transform: translate(-50%,0%);
									}
									.product__contents__size__table__row__item:nth-of-type(3) .product__contents__size__table__row__item__cell::after {
										width: calc(100% - 20px);
										left: 0;
									}
									.product__contents__size__table__row__item__cell._name::after {
										display: none;
									}
									.product__contents__size__table__row__item__size_list {
										display: flex;
										flex-direction: column;
										gap: 14px;
										width: 100%;
										height: auto;
										padding: 10px 0 10px 20px;
									}
									.product__contents__size__table__row__item__size_list__item {
										width: 100%;
										height: auto;
										padding-left: 40px;
										font-size: 14px;
										font-weight: 500;
										line-height: 1.8;
										letter-spacing: 0em;
										text-align: left;
										color: var(--color--black);
										position: relative;
									}
										.product__contents__size__table__row__item__size_list__item::before {
											display: flex;
											justify-content: center;
											align-items: center;
											width: 30px;
											height: 30px;
											border-radius: 9999px;
											background: linear-gradient(94.78deg, #B1CCF5 0%, #FFF7E7 186.65%);
											font-size: 14px;
											font-weight: 700;
											line-height: 1;
											letter-spacing: 0em;
											position: absolute;
											top: 50%;
											left: 0;
											transform: translate(0%,-50%);
										}
										.product__contents__size__table__row__item__size_list__item._s::before {
											content: 'S';
										}
										.product__contents__size__table__row__item__size_list__item._sd::before {
											content: 'SD';
										}
										.product__contents__size__table__row__item__size_list__item._d::before {
											content: 'D';
										}
			.product__contents__panel._spec {
				padding: 70px 0 100px;
			}
				.product__contents__spec {
					width: 100%;
					height: auto;
				}
					.product__contents__spec__list {
						width: 565px;
						height: auto;
						margin: 0 auto;
						border-top: solid 1px #8C8C8C;
					}
						.product__contents__spec__list__item {
							display: flex;
							justify-content: space-between;
							align-items: center;
							width: 100%;
							height: auto;
							border-bottom: solid 1px #8C8C8C;
						}
							.product__contents__spec__list__item dt {
								width: 64px;
								height: auto;
								padding: 18px 0;
								font-size: 14px;
								font-weight: 500;
								line-height: 1.8;
								letter-spacing: 0.05em;
								text-align: center;
								color: #8C8C8C;
							}
							.product__contents__spec__list__item dd {
								flex: 1;
								height: auto;
								padding-left: 27px;
								font-size: 14px;
								font-weight: 500;
								line-height: 1.5;
								letter-spacing: 0.05em;
								color: #8C8C8C;
							}
			.product__contents__panel._faq {
				padding: 45px 0 100px;
			}
				.product__contents__faq {
					width: 100%;
					height: auto;
					padding: 63px 0 80px;
					background-color: var(--color--bluegray);
				}
					.product__contents__faq__inner {
						width: 90%;
						max-width: 1000px;
						height: auto;
						margin: 0 auto;
					}
						.product__contents__faq__heading {
							display: flex;
							justify-content: flex-start;
							align-items: center;
							width: 100%;
							height: auto;
							margin: 0 auto 50px;
							font-size: 22px;
							font-weight: 700;
							line-height: 1.8;
							letter-spacing: 0.1em;
						}
							.product__contents__faq__heading img {
								width: 30px;
								height: auto;
								padding-top: 2px;
								margin-right: 12px;
							}
						.product__contents__faq__list {
							width: 100%;
							height: auto;
							border-top: solid 1px #A5A5A5;
							counter-reset: number 0;
						}
							.product__contents__faq__list__item {
								width: 100%;
								height: auto;
								background-color: var(--color--white);
								border-bottom: solid 1px #A5A5A5;
							}
								.product__contents__faq__list__item dt {
									width: 100%;
									height: auto;
									padding: 27px 70px;
									font-size: 18px;
									font-weight: 500;
									line-height: 1.8;
									letter-spacing: 0.1em;
									position: relative;
									cursor: pointer;
								}
									.product__contents__faq__list__item dt::before {
										counter-increment: number 1;
										content: counter(number,decimal-leading-zero) '';
										display: flex;
										justify-content: center;
										align-items: center;
										width: 26px;
										height: 26px;
										padding: 1px 0 0 0.5px;
										border-radius: 9999px;
										background-color: #C8D7ED;
										font-family: "Roboto", sans-serif;
										font-size: 12px;
										font-weight: 700;
										line-height: 1.8;
										letter-spacing: 0em;
										text-align: center;
										color: var(--color--white);
										position: absolute;
										left: 26px;
										top: 31px;
									}
									.product__contents__faq__list__item dt::after {
										content: '';
										display: block;
										width: 20px;
										height: 20px;
										background-image: url('../image/products/x.png');
										background-position: center;
										background-repeat: no-repeat;
										background-size: cover;
										position: absolute;
										top: 33px;
										right: 21px;
										transition: .3s;
									}
									.product__contents__faq__list__item dt._open::after {
										transform: rotate(45deg);
									}
								.product__contents__faq__list__item dd {
									display: none;
									width: 100%;
									height: auto;
									padding: 1px 70px 35px;
									font-size: 14px;
									font-weight: 500;
									line-height: 1.8;
									letter-spacing: 0em;
								}
	.product__faq {
		width: 100%;
		height: auto;
		padding: 63px 0 80px;
		border-radius: 100px 100px 0 0;
		background-color: var(--color--bluegray);
	}
		.product__faq__inner {
			width: 90%;
			max-width: 1000px;
			height: auto;
			margin: 0 auto;
		}
			.product__faq__heading {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 100%;
				height: auto;
				margin: 0 auto 50px;
				font-size: 22px;
				font-weight: 700;
				line-height: 1.8;
				letter-spacing: 0.1em;
			}
				.product__faq__heading img {
					width: 30px;
					height: auto;
					padding-top: 2px;
					margin-right: 12px;
				}
			.product__faq__list {
				width: 100%;
				height: auto;
				border-top: solid 1px #A5A5A5;
				counter-reset: number 0;
			}
				.product__faq__list__item {
					width: 100%;
					height: auto;
					background-color: var(--color--white);
					border-bottom: solid 1px #A5A5A5;
				}
					.product__faq__list__item dt {
						width: 100%;
						height: auto;
						padding: 27px 70px;
						font-size: 18px;
						font-weight: 500;
						line-height: 1.8;
						letter-spacing: 0.1em;
						position: relative;
						cursor: pointer;
					}
						.product__faq__list__item dt::before {
							counter-increment: number 1;
							content: counter(number,decimal-leading-zero) '';
							display: flex;
							justify-content: center;
							align-items: center;
							width: 26px;
							height: 26px;
							padding: 1px 0 0 0.5px;
							border-radius: 9999px;
							background-color: #C8D7ED;
							font-family: "Roboto", sans-serif;
							font-size: 12px;
							font-weight: 700;
							line-height: 1.8;
							letter-spacing: 0em;
							text-align: center;
							color: var(--color--white);
							position: absolute;
							left: 26px;
							top: 31px;
						}
						.product__faq__list__item dt::after {
							content: '';
							display: block;
							width: 20px;
							height: 20px;
							background-image: url('../image/products/x.png');
							background-position: center;
							background-repeat: no-repeat;
							background-size: cover;
							position: absolute;
							top: 33px;
							right: 21px;
							transition: .3s;
						}
						.product__faq__list__item dt._open::after {
							transform: rotate(45deg);
						}
					.product__faq__list__item dd {
						display: none;
						width: 100%;
						height: auto;
						padding: 1px 70px 35px;
						font-size: 14px;
						font-weight: 500;
						line-height: 1.8;
						letter-spacing: 0em;
					}
	.product__related {
		width: 100%;
		height: auto;
		padding: 80px 0 100px;
	}
		.product__related__inner {
			width: 90%;
			max-width: 1000px;
			height: auto;
			margin: 0 auto;
		}
			.product__related__heading {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 100%;
				height: auto;
				padding-bottom: 10px;
				margin: 0 auto 40px;
				border-bottom: solid 1px var(--color--gray);
			}
				.product__related__heading__icon {
					width: 30px;
					height: auto;
					padding-top: 2px;
					margin-right: 20px;
				}
				.product__related__heading__main {
					flex: 1;
					height: auto;
					font-size: 22px;
					font-weight: 700;
					line-height: 1.8;
					letter-spacing: 0.1em;
				}
			.product__related__contents {
				width: 100%;
				max-width: 748px;
				height: auto;
				margin: 0 auto 60px;
			}
				.product__related__swiper {
					width: 100%;
					height: auto;
				}
					.product__related__swiper .swiper-wrapper {
						justify-content: space-between;
						align-items: flex-start;
						flex-wrap: wrap;
					}
					.product__related__swiper .swiper-wrapper::after {
						content: '';
						display: block;
						width: calc((242 / 748) * 100%);
						height: 0;
					}
						.product__related__swiper .swiper-slide {
							width: calc((242 / 748) * 100%);
							height: auto;
						}
						.product__related__swiper .swiper-slide:not(:nth-last-of-type(-n+3)) {
							margin-bottom: 20px;
						}
							.product__related__slide {
								width: 100%;
								height: auto;
							}
								.product__related__slide__inner {
									display: block;
									width: 100%;
									height: auto;
								}
									.product__related__slide__image {
										width: 100%;
										height: auto;
										margin: 0 auto 18px;
										aspect-ratio: 1 / 1;
										border-radius: 3px;
										overflow: hidden;
										position: relative;
									}
										.product__related__slide__image img {
											width: 100%;
											height: 100%;
											object-fit: cover;
											object-position: center;
										}
									@media (any-hover: hover) {
										.product__related__slide__image img {
											opacity: 1;
											transform: scale(1);
											transition: .3s;
										}
										.product__related__slide__inner:hover .product__related__slide__image img {
											transform: scale(1.04);
											opacity: .8;
										}
									}
										.items__icon_new {
											width: auto;
											height: auto;
											padding: 3px 13px 2px;
											border-radius: 0 0 3px 0;
											background-color: var(--color--black);
											font-family: "Roboto", sans-serif;
											font-size: 12px;
											font-weight: 700;
											line-height: 1.5;
											letter-spacing: 0.1em;
											color: var(--color--white);
											position: absolute;
											top: 0;
											left: 0;
										}
										.items__icon_popularity {
											width: 100px;
											height: auto;
											padding: 12px 0 4px;
											background-color: var(--color--skyblue);
											font-size: 12px;
											font-weight: 700;
											line-height: 1.5;
											letter-spacing: 0.1em;
											text-align: center;
											color: var(--color--white);
											position: absolute;
											top: -4px;
											left: 13px;
											transform: translate(-50%, 0%) rotate(-45deg);
										}
									.product__related__slide__details {
										width: 100%;
										height: auto;
									}
										.product__related__slide__name {
											width: 100%;
											height: auto;
											margin: 0 auto 3px;
											font-size: 14px;
											font-weight: 700;
											line-height: 1.8;
											letter-spacing: 0.1em;
											color: var(--color--black);
										}
									@media (any-hover: hover) {
										.product__related__slide__name {
											transition: .3s;
										}
										.product__related__slide__inner:hover .product__related__slide__name {
											color: var(--color--yellow);
										}
									}
										.product__related__slide__price {
											width: 100%;
											height: auto;
											font-size: 14px;
											font-weight: 700;
											line-height: 1.8;
											letter-spacing: 0.1em;
											color: #A5A5A5;
										}
										.product__related__slide__details__txt {
											width: 100%;
											height: auto;
											margin: 5px auto 0;
											font-size: 14px;
											font-weight: 500;
											line-height: 1.5;
											letter-spacing: 0.1em;
											color: var(--color--skyblue);
										}
			.product__related__btn_wrap {
				width: 100%;
				height: auto;
			} 
				.product__related_btn {
					margin: 0 auto;
				}

.campaign {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	pointer-events: none;
}
	.campaign_modal {
		width: 100%;
		height: 100%;
		position: relative;
		pointer-events: auto;
	}
		.campaign_modal__bg {
			width: 100%;
			height: 100%;
			background: var(--color--blue);
			opacity: .3;
		}
		.modal_close {
			cursor: pointer;
		}
		.campaign_modal__contents {
			width: 90%;
			max-width: 400px;
			height: auto;
			padding: 4px;
			border-radius: 8px;
			background-color: var(--color--white);
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%,-50%);
		}
			.campaign_modal__contents__close_btn {
				width: 40px;
				height: 40px;
				border-radius: 9999px;
				background-color: var(--color--white);
				position: absolute;
				top: -40px;
				right: -40px;
				z-index: 1;
			}
				.campaign_modal__contents__close_btn::before,
				.campaign_modal__contents__close_btn::after {
					content: '';
					display: block;
					width: 24px;
					height: 1px;
					background-color: var(--color--black);
					position: absolute;
					top: 50%;
					left: 50%;
				}
				.campaign_modal__contents__close_btn::before {
					transform: translate(-50%,-50%) rotate(45deg);
				}
				.campaign_modal__contents__close_btn::after {
					transform: translate(-50%,-50%) rotate(-45deg);
				}
			.campaign_modal__contents__image {
				width: 100%;
				height: auto;
				border-radius: 4px;
				overflow: hidden;
			}
			.campaign_modal__contents__image a {
				display: block;
				width: 100%;
				height: auto;
			}
		@media (any-hover: hover) {
			.campaign_modal__contents__image a img {
				transition: .3s;
			}
			.campaign_modal__contents__image a:hover img {
				transform: scale(1.03);
			}
		}
	.campaign_banner {
		display: none;
		width: 150px;
		height: auto;
		padding: 4px;
		border-radius: 8px;
		background-color: var(--color--white);
		position: absolute;
		bottom: 24px;
		right: 24px;
		pointer-events: auto;
	}
		.campaign_banner__close_btn {
			width: 24px;
			height: 24px;
			border-radius: 9999px;
			background-color: var(--color--white);
			position: absolute;
			top: -12px;
			right: -12px;
			z-index: 1;
			cursor: pointer;
		}
			.campaign_banner__close_btn::before,
			.campaign_banner__close_btn::after {
				content: '';
				display: block;
				width: 16px;
				height: 1px;
				background-color: var(--color--black);
				position: absolute;
				top: 50%;
				left: 50%;
			}
			.campaign_banner__close_btn::before {
				transform: translate(-50%,-50%) rotate(45deg);
			}
			.campaign_banner__close_btn::after {
				transform: translate(-50%,-50%) rotate(-45deg);
			}
		.campaign_banner__image {
			width: 100%;
			height: auto;
		}
			.campaign_banner__image a {
				display: block;
				width: 100%;
				height: auto;
				overflow: hidden;
			}
		@media (any-hover: hover) {
			.campaign_banner__image a img {
				transition: .3s;
			}
			.campaign_banner__image a:hover img {
				transform: scale(1.03);
			}
		}

/* PC ================================================== */
@media all and (max-width: 1059px){
								.product__main__contents__sub__benefits {
									column-gap: 10px;
								}
								.product__main__contents__sub__price {
									display: flex;
									flex-direction: column;
									justify-content: center;
									align-items: center;
									padding: 12px 25px 11px;
								}
									.product__main__contents__sub__price__before,
									.product__main__contents__sub__price__after {
										justify-content: center;
									}
									.product__main__contents__sub__price__arrow {
										width: 6px;
										height: auto;
										margin: 3px auto;
										padding-bottom: 0px;
										transform: rotate(90deg);
									}
								.product__main__contents__sub__note {
									width: 100%;
									height: auto;
									font-size: 10px;
									font-weight: 400;
									line-height: 1.5;
									letter-spacing: 0em;
									color: #8C8C8C;
								}
								.product__main__contents__sub__note:first-of-type {
									margin-top: 20px;
								}
								.product__main__contents__sub__note + .product__main__contents__sub__note {
									margin-top: 10px;
								}
								.product__main__contents__sub__btn_wrap {
									width: 100%;
									height: 50px;
									margin: 30px auto 0;
								}
									.product__main__contents__sub__btn {
										display: flex;
										justify-content: center;
										align-items: center;
										width: 100%;
										height: 100%;
										padding-left: 4px;
										border-radius: 3px;
										background-color: var(--color--black);
										border: solid 1px var(--color--black);
										font-size: 16px;
										font-weight: 500;
										line-height: 1.5;
										letter-spacing: 0.1em;
										color: var(--color--white);
										position: relative;
									}
										.product__main__contents__sub__btn__icon {
											width: 22px;
											height: auto;
											margin-left: -88px;
											position: absolute;
											top: 50%;
											left: 50%;
											transform: translate(0%,-50%);
										}
											.product__main__contents__sub__btn__icon svg {
												fill: var(--color--white);
											}
										.product__main__contents__sub__btn__arrow {
											width: 6px;
											height: auto;
											position: absolute;
											top: 50%;
											right: 23px;
											transform: translate(0%,-50%);
										}
											.product__main__contents__sub__btn__arrow svg {
												fill: var(--color--white);
											}
								@media (any-hover: hover) {
									.product__main__contents__sub__btn {
										transition: .3s;
									}
									.product__main__contents__sub__btn:hover {
										background-color: var(--color--yellow);
										color: var(--color--black);
									}
											.product__main__contents__sub__btn__icon svg,
											.product__main__contents__sub__btn__arrow svg {
												transition: .3s;
											}
											.product__main__contents__sub__btn:hover .product__main__contents__sub__btn__icon svg,
											.product__main__contents__sub__btn:hover .product__main__contents__sub__btn__arrow svg {
												fill: var(--color--black);
											}
								}
}
@media all and (max-width: 899px){
						.product__contents__size__table__row {
							gap: 5px;
							padding-left: 80px;
						}
									.product__contents__size__table__row__item__cell._name img {
										height: 30px;
									}
									.product__contents__size__table__row__item__cell._name p {
										font-size: 15px;
									}
									.product__contents__size__table__row__item__cell::before {
										width: 80px;
										font-size: 14px;
									}
									.product__contents__size__table__row__item__cell::after {
										width: calc(100% + 10px);
									}
}

/* Tablet ================================================== */
@media all and (max-width: 768px){
/* products */
#product_details {
	padding: 25px 0 0;
}
	.product__main {
		margin: 0 auto 50px;
	}
		.product__main__inner {
			display: block;
			width: calc((350 / 430) * 100%);
		}
		.subscriptions .product__main__inner {
			width: calc((350 / 430) * 100%);
		}
			.product__main__image {
				width: 100%;
				margin: 0 auto 30px;
			}
			.subscriptions .product__main__image {
				width: 100%;
			}
				.product__swiper {
					margin: 0 auto 5px;
				}
					.product__swiper__prev,
					.product__swiper__next {
						width: 40px;
						height: 40px;
						padding-top: 0;
						margin-top: -20px;
					}
					.product__swiper__prev {
						padding-left: 0;
						left: -20px;
					}
					.product__swiper__next {
						padding-left: 0;
						right: -20px;
					}
						.product__swiper__prev img,
						.product__swiper__next img {
							width: 9px;
						}
				.product__swiper__pagination {
					column-gap: 5px;
					row-gap: 5px;
				}
					.product__swiper__pagination .swiper-pagination-bullet {
						width: calc(20% - ((20 / 5) * 1px));
					}
			.product__main__contents {
				width: 100%;
			}
			.subscriptions .product__main__contents {
				width: 100%;
			}
				.product__main__contents__info {
					padding: 0;
					margin: 0 auto 20px;
				}
					.product__main__contents__name {
						margin: 0 auto 5px;
					}
				.product__main__contents__spec {
					padding: 14px 0;
					margin: 0 auto 20px;
				}
						.product__main__contents__spec__list__item {
							align-items: flex-start;
						}
				.product__main__contents__selected_item {
					padding: 8px 10px 7px;
					margin: 0 auto 22px;
				}
				.product__main__contents__size {
					column-gap: 9px;
					row-gap: 8px;
					margin: 0 auto 18px;
				}
					.product__main__contents__size__items {
						display: flex;
						justify-content: flex-start;
						align-items: flex-start;
						flex-wrap: wrap;
						column-gap: 10px;
						row-gap: 8px;
						width: 100%;
						height: auto;
					}
					.product__main__contents__size__item {
						width: calc(50% - 5px);
						aspect-ratio: 120 / 48;
					}
				.product__main__contents__sub {
					width: 100%;
					height: auto;
					margin: 0 auto;
				}
					.product__main__contents__sub__tab_wrap {
						display: flex;
						justify-content: flex-start;
						align-items: flex-end;
						column-gap: 10px;
						width: 100%;
						height: 36px;
						margin: 0;
						position: relative;
					}
						.product__main__contents__sub__tab_wrap::after {
							content: '';
							display: block;
							width: 100%;
							height: 1px;
							background-color: var(--color--gray);
							position: absolute;
							bottom: 0;
							left: 0;
						}
						.product__main__contents__sub__tab {
							display: flex;
							justify-content: center;
							align-items: flex-end;
							width: 130px;
							height: 36px;
							border-radius: 3px 3px 0 0;
							padding-top: 1px;
							background-color: #F6F6F6;
							position: relative;
							cursor: pointer;
							transition: .3s;
						}
					@media (any-hover: hover) {
						.product__main__contents__sub__tab:hover {
							background-color: var(--color--gray);
						}
					}
							.product__main__contents__sub__tab::after {
								content: '';
								display: block;
								width: 100%;
								height: 100%;
								border-radius: 3px 3px 0 0;
								border-top: solid 1px var(--color--gray);
								border-right: solid 1px var(--color--gray);
								border-left: solid 1px var(--color--gray);
								position: absolute;
								top: 0;
								left: 0;
								z-index: 1;
								pointer-events: none;
							}
						._active.product__main__contents__sub__tab {
							background-color: var(--color--white);
							pointer-events: none;
							z-index: 1;
						}
							.product__main__contents__sub__tab__txt {
								width: 100%;
								height: auto;
								font-size: 16px;
								font-weight: 500;
								line-height: 1.8;
								letter-spacing: 0.1em;
								text-align: center;
								color: #A5A5A5;
							}
							._active .product__main__contents__sub__tab__txt {
								color: var(--color--black);
							}
					.product__main__contents__sub__body__wrap {
						width: 100%;
						height: auto;
					}
						.product__main__contents__sub__body {
							width: 100%;
							height: auto;
							padding: 25px 0;
						}
							.product__main__contents__sub__body__inner {
								max-width: initial;
							}
								.product__main__contents__sub__benefits {
									column-gap: 10px;
									row-gap: 5px;
									margin: 0 auto 20px;
								}
									.product__main__contents__sub__benefits__item {
										padding: 0px 10px;
										font-size: 12px;
									}
								.product__main__contents__sub__price {
									flex-direction: row;
									justify-content: center;
									padding: 12px 0 12px;
								}
									.product__main__contents__sub__price__before,
									.product__main__contents__sub__price__after {
										justify-content: center;
										align-items: flex-start;
									}
										.product__main__contents__sub__price__before dt {
											color: #A5A5A5;
										}
										.product__main__contents__sub__price__before dd {
											text-align: right;
										}
										.product__main__contents__sub__price__after dt {
											color: var(--color--blue);
										}
										.product__main__contents__sub__price__after dd {
											text-align: right;
										}
											.product__main__contents__sub__price__before dd small,
											.product__main__contents__sub__price__after dd small {
												display: block;
												margin-left: auto;
												margin-right: 0;
												line-height: 1;
											}
									.product__main__contents__sub__price__arrow {
										margin: 0 calc((10 / 430) * 100vw);
										padding-bottom: 6px;
										transform: rotate(0deg);
									}
								.product__main__contents__sub__note {
									letter-spacing: 0.06em;
								}
								.product__main__contents__sub__btn_wrap {
									margin: 20px auto 0;
								}
										.product__main__contents__sub__btn__icon {
											margin-left: 0px;
											top: 19px;
										}
				.product__main__contents__warranty {
					margin: 0 auto 13px;
				}
				.product__main__contents__add_area {
					margin: 18px auto 20px;
				}
					.product__main__contents__add_area__quantity {
						width: 113px;
					}
					.product__main__contents__add_area__btn_wrap {
						width: calc((100% - 125px));
					}
						.product__main__contents__add_area__btn {
							font-size: 14px;
							padding-left: 11px;
						}
							.product__main__contents__add_area__btn__icon {
								width: 20px;
								left: 10px;
							}
							.product__main__contents__add_area__btn__arrow {
								right: 13px;
							}
					.co-text-out-of-stock,
					#text-out-of-stock {
						width: 113px;
					}
					.product__main__contents__add_area__soldout {
						width: calc((100% - 125px));
					}
					.product__main__contents__supported_payment {
						justify-content: center;
						align-items: center;
						flex-wrap: wrap;
						column-gap: 14px;
						row-gap: 10px;
						width: 80%;
						margin: 0 auto 20px;
					}
						._np.product__main__contents__supported_payment__item {
							width: 88.61px;
						}
						._jcb.product__main__contents__supported_payment__item {
							width: 30px;
						}
						._master.product__main__contents__supported_payment__item {
							width: 36px;
						}
						._visa.product__main__contents__supported_payment__item {
							width: 65px;
						}
						._amex.product__main__contents__supported_payment__item {
							width: 23px;
						}
						._rpay.product__main__contents__supported_payment__item {
							width: 25.74px;
						}
						._amazonpay.product__main__contents__supported_payment__item {
							width: 38px;
						}
					.product__main__contents__supplementary {
						padding: 30px 0 0;
						margin: 0 auto 10px;
					}
					.modal {
						display: none;
						width: 100%;
						height: 100dvh;
						position: fixed;
						top: 0;
						left: 0;
						z-index: 100;
					}
						.modal__bg {
							width: 100%;
							height: 100%;
							background-color: rgba(44, 44, 44, 0.5);
							position: absolute;
							top: 0;
							left: 0;
							z-index: 1;
						}
						.modal__container {
							width: 85%;
							max-height: 70svh;
							padding: 25px 40px;
							top: 50svh;
						}
							.modal__close_btn {
								top: 12px;
								right: 12px;
							}
		.product__contents__tab_wrap {
			column-gap: 7px;
			width: calc((350 / 430) * 100%);
			height: 42px;
		}
			.product__contents__tab {
				width: 130px;
				height: 37px;
				padding-bottom: 3px;
				border-radius: 3px 3px 0 0;
			}
				.product__contents__tab::after {
					border-radius: 3px 3px 0 0;
				}
			._active.product__contents__tab {
				width: 175px;
				height: 42px;
				padding-bottom: 5px;
			}
				.product__contents__tab__txt {
					font-size: 16px;
				}
			.product__contents__panel._details {
				padding: 60px 0 55px;
			}
				.product__contents__recommended {
					margin: 0 auto 64px;
				}
					.product__contents__recommended__inner {
						width: calc((350 / 430) * 100%);
					}
					.product__contents__recommended__details {
						width: 100%;
						padding-top: calc((17 / 430) * 100vw);
						padding-right: 0px;
						position: relative;
					}
						.product__contents__recommended .product__contents__heading {
							padding-bottom: 0;
							margin-bottom: 10px;
							font-size: 12px;
						}
						.product__contents__txt {
							width: 100%;
							/* margin: 0 auto 80px 0; */
							margin: 0 auto calc((80 / 430) * 100vw) 0;
							/* font-size: 24px; */
							font-size: calc((24 / 430) * 100vw);
							line-height: 1.7;
						}
							.product__contents__recommended__list_heading {
								justify-content: center;
								padding-left: 0px;
								margin: 0 auto 9px;
							}
					.product__contents__recommended__image {
						width: calc((159 / 430) * 100%);
						aspect-ratio: 159.45 / 192;
						position: absolute;
						top: 0;
						right: calc((40 / 430) * 100%);
					}
				.product__contents__point {
					margin: 0 auto 60px;
				}
					.product__contents__point::before {
						height: 324px;
						border-radius: 100% 0px 0px 0px / 324px 0px 0px 0px;
					}
						.product__contents__point .product__contents__heading {
							width: calc((390 / 430) * 100%);
						}
						.product__contents__point__list {
							display: block;
							width: calc((350 / 430) * 100%);
							margin: 0 auto 80px;
						}
							.product__contents__point__list::after {
								display: none;
							}
							.product__contents__point__list__item {
								width: 100%;
							}
							.product__contents__point__list__item:not(:last-of-type) {
								margin-bottom: 40px;
							}
								.product__contents__point__list__item__image {
									aspect-ratio: 350 / 251;
								}
								.product__contents__point__list__item__details {
									padding: 15px 0px 0;
								}
										.product__contents__point__list__item__details__txt dt {
											padding: 0 0 17px;
										}

						.product__contents__point__benefits {
							width: calc((350 / 430) * 100%);
						}
							.product__contents__point__benefits__container {
								display: block;
							}
								.product__contents__point__benefits__image {
									width: 100%;
									aspect-ratio: 350 / 220;
								}
									.product__contents__point__benefits__label {
										width: 100px;
										top: -47px;
										left: -20px;
									}
								.product__contents__point__benefits__details {
									display: block;
									flex: initial;
									width: 100%;
									padding: 35px;
								}
						.product__contents__point__data__container {
							width: calc((390 / 430) * 100%);
							padding: 40px calc((20 / 390) * 100%);
						}
							.product__contents__point__data__heading {
								margin: 0 auto 35px;
							}
							.product__contents__point__data__contents {
								display: block;
								margin: 0 auto 30px;
							}
								.product__contents__point__data__contents__item {
									width: 100%;
								}
								.product__contents__point__data__contents__item:not(:last-of-type) {
									margin-bottom: 50px;
								}
									.product__contents__point__data__image {
										margin: 0 auto 20px;
									}
							.product__contents__point__data__note {
								padding-right: calc((20 / 390) * 100%);
							}
				.product__contents__care {
					width: calc((350 / 430) * 100%);
				}
					.product__contents__care .product__contents__heading {
						margin-bottom: 20px;
					}
						.product__contents__care__list__item:not(:last-of-type) {
							margin-bottom: 30px;
						}
							.product__contents__care__list__item dt {
								margin: 0 auto 10px;
							}
				.product__contents__size {
					width: calc((350 / 430) * 100%);
				}
					.product__contents__size__note {
						width: 100%;
						height: auto;
						margin: -5px auto 5px;
						font-size: 13px;
						font-weight: 500;
						line-height: 1.8;
						letter-spacing: 0.05em;
						text-align: right;
						color: #A5A5A5;
					}
					.product__contents__size__table {
						gap: 30px;
					}
						.product__contents__size__table__row {
							flex-direction: column;
							justify-content: flex-start;
							align-items: stretch;
							gap: 10px;
							padding-left: 0;
						}
						.product__contents__size__table__row__item__body {
							display: none;
						}
						.product__contents__size__table__row + .product__contents__size__table__row {
							margin-top: 10px;
						}
							.product__contents__size__table__row__item {
								flex: initial;
								width: 100%;
							}
								.product__contents__size__table__row__item__cell._name {
									justify-content: flex-start;
									padding-left: 20px;
								}
								.product__contents__size__table__row__item__cell:not(._name) {
									padding-left: 80px;
									position: relative;
								}
									.product__contents__size__table__row__item__cell._name img {
										height: 33px;
									}
									.product__contents__size__table__row__item__cell._name p {
										font-size: 18px;
									}
									.product__contents__size__table__row__item__cell::before {
										width: 70px;
										font-size: 14px;
										left: 0;
										right: auto;
									}
									.product__contents__size__table__row__item:not(:first-of-type) .product__contents__size__table__row__item__cell::before {
										display: flex;
									}
									.product__contents__size__table__row__item__cell::after {
										content: '';
										display: block;
										width: calc(100% - 80px);
										height: 1px;
										background-color: var(--color--gray);
										position: absolute;
										bottom: 0;
										right: 0;
									}
									.product__contents__size__table__row__item:nth-of-type(1) .product__contents__size__table__row__item__cell::after {
										width: calc(100% - 80px);
										right: 0;
									}
									.product__contents__size__table__row__item:nth-of-type(2) .product__contents__size__table__row__item__cell::after {
										left: initial;
										right: 0;
										transform: translate(0%,0%);
									}
									.product__contents__size__table__row__item:nth-of-type(3) .product__contents__size__table__row__item__cell::after {
										width: calc(100% - 80px);
										left: 0;
									}
									.product__contents__size__table__row__item__size_list {
										padding: 10px 0;
									}
									.product__contents__size__table__row__item__size_list__item {
										letter-spacing: 0.05em;
									}
			.product__contents__panel._spec {
				padding: 40px 0 80px;
			}
					.product__contents__spec__list {
						width: calc((350 / 430) * 100%);
					}
						.product__contents__spec__list__item {
							display: block;
							padding: 15px calc((15 / 350) * 100%);
						}
							.product__contents__spec__list__item dt {
								width: 100%;
								padding: 0;
								margin-bottom: 5px;
								text-align: left;
							}
							.product__contents__spec__list__item dd {
								flex: initial;
								width: 100%;
								padding-left: 0;
							}
			.product__contents__panel._faq {
				padding: 30px 0 50px;
			}
				.product__contents__faq {
					padding: 50px 0 60px;
				}
					.product__contents__faq__inner {
						width: calc((350 / 430) * 100%);
					}
						.product__contents__faq__heading {
							justify-content: center;
							margin: 0 auto 30px;
						}
							.product__contents__faq__heading img {
								width: 30px;
								height: auto;
								padding-top: 2px;
								margin-right: 12px;
							}
								.product__contents__faq__list__item dt {
									padding: 21px 50px 21px 72px;
								}
									.product__contents__faq__list__item dt::before {
										top: 24px;
										left: 28px;
									}
									.product__contents__faq__list__item dt::after {
										top: 28px;
										right: 18px;
									}
								.product__contents__faq__list__item dd {
									padding: 1px 28px 35px;
								}

	.product__faq {
		padding: 50px 0 60px;
	}
		.product__faq__inner {
			width: calc((350 / 430) * 100%);
		}
			.product__faq__heading {
				margin: 0 auto 30px;
			}
					.product__faq__list__item dt {
						padding: 15px 20px 15px 42px;
						font-size: 16px;
						line-height: 1.5;
					}
						.product__faq__list__item dt::before {
							top: 14px;
							left: 8px;
						}
						.product__faq__list__item dt::after {
							top: 28px;
							right: 18px;
						}
					.product__faq__list__item dd {
						padding: 1px 20px 15px 42px;
					}
	.product__related {
		padding: 50px 0 70px;
		overflow: hidden;
	}
		.product__related__inner {
			width: calc((350 / 430) * 100%);
		}
			.product__related__heading {
				padding-bottom: 16px;
				margin: 0 auto 20px;
			}
				.product__related__heading__icon {
					width: 25px;
					padding-top: 0px;
					margin-right: 10px;
				}
				.product__related__heading__main {
					font-size: 20px;
				}
			.product__related__contents {
				margin: 0 auto 40px;
			}
				.product__related__swiper {
					overflow: initial;
				}
					.product__related__swiper .swiper-wrapper {
						justify-content: initial;
						align-items: flex-start;
						flex-wrap: initial;
					}
					.product__related__swiper .swiper-wrapper::after {
						display: none;
					}
						.product__related__swiper .swiper-slide {
							width: initial;
						}
						.product__related__swiper .swiper-slide:not(:nth-last-of-type(-n+3)) {
							margin-bottom: initial;
						}
									.product__related__slide__image {
										margin: 0 auto 12px;
									}
										.product__related__swiper .product__related__slide__name {
											margin: 0 auto 4px;
											font-size: 13px !important;
											line-height: 1.5;
										}
										.product__related__swiper .product__related__slide__price {
											font-size: 12px !important;
										}
										.product__related__slide__details__txt {
											margin: 8px auto 0;
											font-size: 12px;
										}

/* キャンペーンバナー */
			.campaign_modal__contents__close_btn {
				top: -45px;
				right: 0px;
			}
	.campaign_banner {
		width: 100px;
	}
		.campaign_banner__close_btn {
			width: 20px;
			height: 20px;
			top: -10px;
			right: -10px;
		}
			.campaign_banner__close_btn::before,
			.campaign_banner__close_btn::after {
				width: 12px;
			}
}

/* SP ================================================== */
@media all and (max-width: 575px){

}