@charset "UTF-8";

:root{
	--color1:#9a3236;
	--color2:#b69437;
	--color3:#fff;
	}

.fc_01{
	color:var(--color1);
}

/* ブレークポイントはmin-width: 750px */
.cart-btn .iw-flex {
  width: 100%;
  margin-bottom: 2.6vw;
  /* 20 */
}

.item-point-list .grade-up {
  margin-top: 4vw;
  /* 30 */
  border: 1px solid #111;
  padding: 1em;
}

.item-point-list .grade-up .item-txt-m {
  margin-bottom: 2vw;
  /* 15 */
  text-decoration: underline;
}

.item-point-list .grade-up .item-txt-s:not(:last-child) {
  margin-bottom: 1em;
}

.item-point-list .grade-up .item-txt-note {
  margin-top: 0;
}

.item-wrapper .reason {
  /*background-color: #f1f1f1;*/
  margin-bottom: 21.3vw;
  /* 160 */
}

.item-wrapper .reason .bg_wh {
  background-color: #fff;
}

.item-wrapper .reason-text-ttl {
  font-size: 4.26666vw;
}

.item-wrapper .reason-hr {
  display: block;
  width: 100%;
  height: 1px;
  background-color: #f1f1f1;
  border: 0;
}

.item-wrapper .iw-padding-top-remove {
  padding-top: 0;
}

.item-wrapper .pd03 {
  padding: 30px;
}

.item-wrapper .mt01 {
  margin-top: 10px;
}

.item-wrapper .mt02 {
  margin-top: 20px;
}

.item-wrapper .mt03 {
  margin-top: 30px;
}

.item-wrapper .mb03 {
  margin-bottom: 30px;
}

.item-wrapper .color-box {
  margin: 0 0 0.8em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 400px;
  gap: 30px;
}

.item-wrapper .color-box .color-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5%;
  font-size: 3.73333vw;
}

.item-wrapper .color-box .color-list p {
  white-space: nowrap;
}

.red{
	color:#9a3236;
	text-decoration: underline;
}
.Labelbox {
	padding: 3%;
	position: relative;
	border: 1px dashed #ccc;
	margin-top: 5%;
}
.Label {
	display: block;
	color: #000;
	text-align: center;
	padding-right: 5%;
	font-size: 3.5vw;
	position: absolute;
    top: 14px;
    right: 70px;
}
.Label span {
	font-weight: 700;
}

.annotation:checked + .Label + .content {
	height: auto;
	padding-top:10px;
	transition: all .3s;
}
.annotation:checked + .Label::before {
	transform: rotate(-45deg) !important;
}
.Label::before{
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 5px;
	transform: rotate(135deg);
}
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.content {
	height: 0;
	overflow: hidden;
}
.annotation:checked + .Label + .content {
	height: auto;
	padding-top:10px;
	transition: all .3s;
}
.annotation:checked + .Label::before {
	transform: rotate(-45deg) !important;
}

	.sample {
		margin: 0 auto 10%;
		padding: 3%;
		background: #eee;
		width: 95%;
		max-width: 900px;
	}
	.sample div:first-child p {
		margin-bottom: 3%;
		font-size: 4.5vw;
}
.use {
    display: flex;
    justify-content: flex-start;
    gap: 3%;
}
.use li {
    background: #fff;
    padding: 1% 3%;
    font-size: 3vw;
    margin-bottom: 3%;
}

.p01{
	display: flex;
	flex-wrap: wrap;
	gap: 2%;
	margin-bottom: 3%;
}
.off1 {
		width: 15%;
	border: 1px solid #000;
		border-radius: 50%;
		color: #000;
	}
.off1 span {
	font-size: 6.0vw;
	}
.off2 {
		position: relative;
		padding: 50%;
		height: 0;
	font-size: 2.5vw;
	}
.off2 p {
		position: absolute;
		top: calc((100% - 0.5em)/2.5);
		left: 0;
		right: 0;
		margin: 0;
		text-align: center;
		line-height: 1.0em;
	}

.item-puff {
    border: 1px solid #ccc;
    padding: 3vw;
	display: flex;
	gap: 3%;
	align-items: center;
}
.item-puff p:first-child {
	font-weight: 700;
}
.point1{
	background: #f1f1f1;
	padding: 0 3% 3% 3%;
	margin-bottom: 10.6vw;
}
.point1>div div:first-child{
	margin-bottom: 8%;
}
.point1 p{
	margin-top: 3%;
}
.catch {
	margin-top: 8%;
}
.catch>div:first-child {
	display: flex;
	align-items: center;
	justify-content: center;
}
.catch>p {
	margin-top: 3%;
	text-align: center;
}
.catch .item-txt-l {
	margin-bottom: 0;
}
.off1a {
		width: 33%;
		border-radius: 50%;
		color: #000;
	background: #fff;
	}
.off2a {
		position: relative;
		padding: 50%;
		height: 0;
	font-size: 4.8vw;
	}
.off2a p {
		position: absolute;
		top: calc((100% - 0.5em)/2.3);
		left: 0;
		right: 0;
		margin: 0;
		text-align: center;
		line-height: 1.0em;
	}
.icon-close {
	color: #000;
	width: 40px;
	height: 40px;
	position: relative;
}
.icon-close:before,
.icon-close:after {
	content: "";
	position: absolute;
	top: 20px;
	width: 40px;
	height: 1px;
	background-color: currentColor;
}
.icon-close:before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.icon-close:after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
   .page-item027 .item-description {
        padding-bottom: 18vw;
    }



@media screen and (min-width: 750px),print {
  .cart-btn .iw-flex {
    margin-bottom: 10px;
  }
  /*.item-kv {
    background-image: url("../../images/renew2024/item/item002/kv_left.jpg"), url("../../images/renew2024/item/item002/kv_right.jpg");
    background-repeat: no-repeat;
    background-size: 50vw 100%, 50vw 100%;
    background-position: left top, right top;
  }*/
  .item-point-list .grade-up .item-txt-m {
    margin-bottom: 15px;
  }
  .item-point-list .grade-up {
    margin-top: 38px;
  }
  .item-wrapper .reason {
    margin-bottom: 135px;
  }
  .item-wrapper .reason .bg_wh {
   /* background: url("../../images/renew2024/item/item002/reason.png") no-repeat #fff;
    background-position: top right;*/
  }
  .item-wrapper .reason-text-ttl {
    font-size: 26px;
  }
  .item-wrapper .color-box .color-list {
    font-size: 15px;
  }
  .item-wrapper .color-box .color-list picture {
    max-width: 40px;
  }
  .Label {
    top: 13px;
	font-size: 16px;
	  right: 24px;
	  left: 30px;
	}
	.Labelbox {
		width: 354px;
	}	
	.sample {
		display: flex;
		align-items: center;
		margin-bottom: 5%;
	}
	.sample>div:nth-child(1) {
		width: 46%;
	}
	.sample div:first-child p {
		font-size: 20px;
	}
	.use {
        gap: 15px;
    }
	.use li {
        padding: 5px 10px;
        font-size: 15px;
        margin-bottom: 15px;
    }
.off1 {
	width: 13%;
	}
.off1 p {
    font-size: 12px;
}	
.off1 span {
    font-size: 30px;
}	
.off2 p {
	top:calc((100% - 0em)/3.0);
	}
    .item-puff {
        padding: 30px;
    }
.point1{
	margin-bottom: 120px;
}
.point1>div{
	gap: 30px;
	display: flex;
}
.point1>div div{
	width: 48.5%;
}
.point1>div div:first-child{
	margin-bottom: 0;
}
.catch {
	margin-top: 50px;
}

.off1a {
		width: 180px;
	}
.off2a {
	font-size: 30px;
	}
   .page-item027 .item-description {
        padding-bottom: 100px;
    }
}

@media screen and (max-width: 750px) {
  .item-wrapper .reason p {
    text-align: left;
  }
  .item-wrapper .pd03 {
    padding: 4.6vw;
  }
  .item-wrapper .mt01 {
    margin-top: 1.4vw;
  }
  .item-wrapper .mt02 {
    margin-top: 2.8vw;
  }
  .item-wrapper .mt03 {
    margin-top: 4.6vw;
  }
  .item-wrapper .mb03 {
    margin-bottom: 4.6vw;
  }
  .item-wrapper .color-box {
    gap: 4%;
  }
  .item-wrapper .color-box .color-list picture {
    width: 11.8vw;
  }
}

@media screen and (max-width: 749px) {
  .item-step-section-type span {
    letter-spacing: -0.05em;
  }
}



@media screen and (min-width:768px) and ( max-width:960px) {
    .Label {
        top: 28px;
    }
.off1 p {
    font-size: 15px;
}	
.off1 span {
    font-size: 24px;
}	
.off2 p {
	top:calc((100% - -0.5em)/4);
	}
}