a.btn--contact { color: #0e7124; background-color: #f7d203;border-radius: 2.7777777778vw;}
a.btn--contact:hover { color: #0e7124; background: #dcad3c;}
a.btn-c {font-size: 1.3rem; position: relative; padding:0.5rem 1.2rem 0.5rem 1.2rem;}
a.btn-c i.fa { margin-right: 1rem;}
.notfound{text-align:center;margin-bottom:40px}
.notfound h2{font-weight:600;font-size:1.5em;text-align:center;}
/*20240425*/
.TopProducts__heading2 {
	 margin-top: 4.0277777778vw;
  margin-bottom: 2.0277777778vw;
}
  .c-ichiran__link {
    width: 12.5vw;
 margin-right: auto;
  margin-left: auto;
  grid-area: link;
  }

  .c-ichiran__linkDetail {
    padding: 0.3472222222vw 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "dnp-shuei-mgothic-std",sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 1.1111111111vw;
  line-height: 2;
  text-align: center;
  text-decoration: none;
  color: #0e7124;
  border: 2px solid #0e7124;
  border-radius: 1.5972222222vw;
  }

  .c-ichiran__linkDetail::after {
    content: "";
  width: 1.7361111111vw;
  height: 1.25vw;
  margin-left: 0.5555555556vw;
  background-image: url("../assets/images/icon-link-01.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  }
/*20240401*/
@keyframes infinity-scroll-left {  
	from{transform: translateX(0);}
  to {transform: translateX(-100%);}
}

_:-ms-lang(x)::-ms-backdrop,
.d-sc{  display: -ms-grid;  overflow: hidden;}
.d-sc__wrap {display: flex;  overflow: hidden;margin-bottom: 40px;}
.d-sc__list {display: flex;  list-style: none;}
.d-sc__list--left{animation :infinity-scroll-left 35s infinite linear 0.5s both;margin-left: -35px;}
.d-sc__item {  width: calc(50vw / 1);margin-right: 20px;}
.d-sc__item > img{   width: 100%;
}

.d-sc__wrap:hover .d-sc__list--left {  animation-play-state: paused;}
@media (max-width: 768px) {
	.d-sc__wrap{margin-top:20px;margin-bottom: 00px;}
	
	 .c-ichiran__link {
    width: 48vw;
    margin: 0 auto 6.4vw;
  }

  .c-ichiran__linkDetail {
    padding: 1.3333333333vw 5.3333333333vw;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: 4.2666666667vw;
    border-radius: 6.1333333333vw;
  }

  .c-ichiran__linkDetail::after {
    margin: 0;
    width: 6.6666666667vw;
    height: 4.8vw;
  }
}

/*20240312*/
.flow-pc-outer{margin-right:auto;margin-left:auto;width: 70.8333333333vw;display:block;}
.flow-mo-outer{display:none;}
.flow{ width: 100%;border-style: none;text-align:left;  background: #edf6e7;}
.flow td{border-style: none;line-height:2em; background: #edf6e7;}
.flow h3{color:#0e7124;font-size:1.2em;margin-bottom:5px;}
.flow-button{border-radius: 100vh;width: 100%;  max-width: 100px;
  background: #0e7124;text-align: center;  color: white;margin-bottom: -10px;}
.flow-mo{display: flex;  flex-direction: column;  width: 94%;  margin-right: auto;  margin-left: auto;  text-align: center;background: #edf6e7;}

.flow-mo h3{color:#0e7124;font-size:1.2em;margin-bottom:5px;}
.flow-button-mo{border-radius: 100vh;width: 100%;  max-width: 100px;margin-right:auto;margin-left:auto;
  background: #0e7124;text-align: center;  color: white;margin-bottom: -10px;padding: 5px 0px;}
.flow-mo img{margin-right: auto;  margin-left: auto;  text-align: center;}

.TopProducts__itemImg-pc{display:block;}
.TopProducts__itemImg-mo{display:none;}
@media (max-width: 768px) {
	.flow-mo-text{text-align:left;}
	.flow-space{height:60px;border-top: dashed #b8d4b8;margin-top:10px;width: 96%; margin-right: auto; margin-left: auto;}
	.flow-pc-outer{display:none!important;}
.flow-mo-outer{display:block;}
	.flow-mo-outer img{max-width:200px;}
	.TopProducts__itemImg-mo{display:block;}
	.TopProducts__itemImg-mo img{text-align:center;margin-right: auto;margin-left: auto;}
}
.ProductList__result2 {
  margin: 0;
  font-size: 0.9722222222vw;
  line-height: 1.5;
  color: #fff;
	text-align:center;
}
@media (min-width: 769px) {
	.Contents__rowlistContents{grid-template-rows:2fr 2fr 2fr auto;!important;}
}
.ProductList__categoryItem{background-color: #f7c219;}
.ProductList__priceDiscount{background-color: #2B85F4;}
.Footer__nestedListItem2{margin-left:-20px;font-size: 0.9722222222vw;
  line-height: 2.28;}

.TopSearch.-pageBottom2 {
  padding: 0.8194444444vw 7.9166666667vw 3.8194444444vw 7.9166666667vw;
 
   background-image: url("../assets/images/products/bg.png");;
  background-size: cover;
}

.ProductList__linkDetail2 {
  position: relative;
  padding: 1.6388888889vw 4.1666666667vw;
  display: block;
  font-family: "dnp-shuei-mgothic-std",sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.5277777778vw;
  line-height: 1.6;
  text-align: center;
  color: #fff;
  text-decoration: none;
  background-image: url("../assets/images/products/link-bg2.png");
  background-repeat: no-repeat;
  background-size: cover;
  border-radius:21.8166666667vw;
}

.ProductList__linkDetail2::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.8333333333vw;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2.7777777778vw;
  height: 2.7777777778vw;
  background-image: url("../assets/images/ornament-lightbulb-02.svg");
  background-repeat: no-repeat;
  background-size: 100%;
}

.ProductList__linkDetail2::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.8333333333vw;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2.5vw;
  height: 2.5vw;
  background-image: url("../assets/images/icon-slide-arrow.png");
  background-repeat: no-repeat;
  background-size: 100%;
}




@media (max-width: 768px) {
	.TopHero { padding-top: 163.5333333333vw!important;}
	.TopSearch.-pageBottom2 {margin-top: -1px!important;}
	.Header__list{ overflow: auto; height:650%;padding-bottom: 3em;margin-bottom: 10px;}
		
	  .TopSearch.-pageBottom2 {
    padding: 8.5333333333vw 0;
    margin-top: 8vw;
  }
	 .ProductList__linkDetail2 {
    font-size: 4.2666666667vw;
    border-radius: 21.6vw;
  }

  .ProductList__linkDetail2::before {
    left: 2.1333333333vw;
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }

  .ProductList__linkDetail2::after {
    right: 2.6666666667vw;
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }

	  .Footer__nestedListItem2 {
    font-size: 3.7333333333vw;
    line-height: 1.5;margin-left: 1px;
  }
}
.relatedkiji {margin: 40px 0 0;padding: 10px;}
.relatedkiji h4 {font-size: 1.25em;padding: 3px 5px;border-bottom: solid 1px #999;}
.relatedkiji ul {  font-size: 0;  margin: 10px 0;  padding: 0;}
.relatedkiji li { display: inline-block; -webkit-box-sizing: border-box;	  -moz-box-sizing: border-box;  box-sizing: border-box;	  width: 33%;  padding: 10px 5px; list-style: none;	 vertical-align: top;}

.relatedkiji li a { display: block;  text-decoration: none;  color: #000;}
.relatedkiji li a:hover {  color: #000070;	  background-color: #eee;}
.relatedkiji img { height: 120px;  object-fit: cover;}
.relatedkiji .text { font-size: 16px; font-weight: bold;}
@media (max-width: 599px) {
.relatedkiji ul {margin: 0;}
.relatedkiji li {display: block;width: 100%;	}
.relatedkiji li a:after {display: block;clear: both; content: '';	}
.relatedkiji img {float: left;width: 90px;height: 70px;	  }
.relatedkiji .text {width: auto;margin-top: 5px;margin-left: 100px;	  }
}
.formtext{font-size:2em;color: #c9000c;margin-bottom: 55px;letter-spacing: .1em;margin-top: -20px;font-weight:600;text-align: center;}

a.button-bv {padding: 20px 30px;border: solid 1px #0e7124;margin-top: 13px;color:#0e7124;  border-radius: 0px; text-decoration: none;background-color: #fff;font-weight: 600;text-align:center;margin-right:auto;margin-left: auto;display:block;font-size: 1.3em;;}
a.button-bv:hover {background-color: #0e7124;color:#fff!important;   transition: all 0.7s ease;}

  @media (max-width: 60em) {
.formtext{font-size: 2em;}
}

  @media (max-width: 30em) {
.formtext{font-size: 1.5em;}
}

.btn-in {display: flex; width:70%; font-family: Arial;  color: #333;  font-size: 20px;  text-decoration: none;}
.btn-in a{text-align:center;  margin: 10px; background: #0e7124;  color: #fff!important;    display: block;    padding: 10px;min-height:25px;   text-decoration: none;}
.btn-in a:hover{  margin: 10px;   background: #3fcf5f;  color: #fff;  display: block;    padding: 10px;min-height:25px;   text-decoration: none;transition:all 0.4s ease-in-out 0s; }
.btn-in img{display: inline!important;
  width: 30px; /*画像サイズ指定*/
  margin: -3px;
  padding: 0;
  overflow: hidden;
  position: relative;}
h2.foo{font-size: 1.1111111111vw !important;font-weight: 400;}

.Page__body > p a{
	text-decoration: underline!important;color: #39A0FF!important;font-size:1em!important;font-weight:400!important;background-color: transparent!important;
padding: 0;
border-radius: 0px;box-shadow: none!important;}
.Page__body > p a:hover{color:red;}
.Page__body > p a::after{content: "";
width: 0px;margin-left: 0px;
background-image: none;}

/*12/15 更新分*/
.ProductList__categoryItem {
  border-radius: 32px;
  line-height: 1.4;
}

.ProductList__text {
  font-weight: 700;
  font-size: 1.6vw;
  letter-spacing: 0.04rem;
}

.ProductList__category {
  width: 20vw;
}

.ProductList__priceBefore {
  display: inline-block;
}

.ProductList__priceBeforeLabel {
  width: 17vw;
  display: inline-block;
  text-align: center;
  background: #D9D5D6;
  font-size: 1.2vw;
  line-height: 2.4;
}

.ProductList__priceBeforeNumber {
  width: 17vw;
  display: inline-block;
  text-align: center;
  font-size: 1.6vw;
}

.ProductList__priceAfterLabelInner::before {
  content: "";
  position: absolute;
  top: -0.5555555556vw;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
  transform: translate(-50%, -100%);
  width: 4vw;
  height: 1vw;
  border-top: 1.6vw solid #EA3332;
  border-right: 2vw solid rgba(0, 0, 0, 0);
  border-bottom: 0 none;
  border-left: 2vw solid rgba(0, 0, 0, 0);
  box-sizing: border-box;
}

.ProductList__priceAfterLabel {
  padding-top: 2.1vw;
  margin-bottom: 1vw;
}

.ProductList__priceAfterLabelInner {
  width: 17vw;
  display: inline-block;
  text-align: center;
  font-size: 1.2vw;
  line-height: 2.4;
  padding: 0;
  background: #EA3332;
}

.ProductList__priceAfterNumber {
  width: 17vw;
  display: inline-block;
  text-align: center;
  font-weight: bold;
}

.ProductList__categoryItem {
  font-size: 1vw;
}

.ProductList__categoryItem:not(:last-child) {
  margin-bottom: 1.1vw;
}

.ProductList__text.-note, .ProductList__text.-point {
  padding: 0;
  color: #000;
  background: none;
  font-size: 1.1vw;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

.ProductList__text.-note span, .ProductList__text.-point span {
  font-size: 1vw;
  color: #fff;
  background: #0e7124;
  line-height: 2vw;
  height: 2vw;
  display: inline-block;
  padding: 0 0.4vw;
  border-radius: 3px;
  margin-right: 0.8vw;
  margin-bottom: 0.8vw;
}

.ProductList__text.-note object, .ProductList__text.-point object{
  width: 75%;
  margin-bottom: 6px;
}

.ProductList__stockLabel {
  height: 5vw;
  width: 5vw;
  font-size: 1vw;
  background: #DD6E84;
  color: #fff;
  letter-spacing: 0;
  border-radius: 4px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  line-height: 2vw;
  position: relative;
}

.ProductList__stockLabel.exist {
  background: #DD6E84;
}

.ProductList__stockLabel.little {
  background: #97B545;
}

.ProductList__stockLabel.none {
  background: #6D5CC7;
}

.ProductList__stockLabel.question {
  background: #EBB45B;
}


.ProductList__stockLabel span {
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 2.2vw;
}

.ProductList__stock {
  align-items: center;
  margin-bottom: 2vw;
  margin-top: 1.6vw;
}

.ProductList__stockText {
  font-size: 1vw;
  line-height: 1.6;
  margin-left: 1.2vw;
}

.ProductList__price{
  display: flex;
  justify-content: space-between;
}

.ProductList__price .price_wrap > p {
  width: min-content;
}

.ProductList__priceDiscount{
  height: 8vw;
  width: 8.6vw;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2vw;
}

.ProductList__priceDiscountNumber{
  font-size: 2.6vw;
  margin-bottom: 0.4vw;
}

.ProductList__priceDiscountLabel {
  font-size: 1.2vw;
}

.ProductList__stockLabel::before{
  content: '';
  width: 1.6vw;
  height: 2vw;
  background: #fff;
  position: absolute;
  top: 0;
  left: 50%;
  opacity: 0.2;
  transform: translateX(-50%);
}

.ProductList__stockLabel::after{
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.8vw solid transparent;
  border-left: 0.8vw solid transparent;
  border-bottom: 4px solid #DD6E84;
  border-top: 0;
  position: absolute;
  left: 50%;
  top: 2vw;
  transform: translate(-50%, -100%);
}

.ProductList__stockLabel.exist::after {
  border-bottom: 4px solid #DD6E84;
}

.ProductList__stockLabel.little::after {
  border-bottom: 4px solid #97B545;
}

.ProductList__stockLabel.none::after {
  border-bottom: 4px solid #6D5CC7;
}

.ProductList__stockLabel.question::after {
  border-bottom: 4px solid #EBB45B;
}

.ProductList__priceAfterText{
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: 1vw;
  line-height: 1.6;
  color: #ff2c2c;
  margin-bottom: 2.2222222222vw;
  letter-spacing: .1em;
}

.ProductList__priceAfterText div{
  letter-spacing: normal;
  text-align: center;
  height: 5vw;
  width: 5vw;
  background: #EB5B5B;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  font-weight: bold;
  color: #fff;
  border-radius: 4px;
  margin-right: 1.2vw;
  position: relative;
  flex: none;
}

.ProductList__priceAfterText div::after{
  content: '';
  position: absolute;
  height: 4.7vw;
  width: 4.6vw;
  border: 1px solid #fff;
  border-radius: 4px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.ProductList__priceAfterText div .big_text{
  font-size: 1.9vw;
  line-height: 1;
  width: 100%;
}

.ProductList__priceAfterText div .small_text{
  font-size: 1.4vw;
  line-height: 1;
  margin-top: -1.2vw;
}

.ProductList__text.-point{
  padding: 0;
  background-color: #fff;
}

@media (max-width: 599px) {
  .ProductList__categoryItem {
    border-radius: 32px;
    line-height: 1.4;
  }

  .ProductList__text {
    font-weight: 700;
    font-size: 4.2vw;
    line-height: 1.8;
    margin-bottom: 4vw;
  }

  .ProductList__category {
    width: 33vw;
  }

  .ProductList__priceBefore {
    display: inline-block;
    margin-bottom: 2vw;
  }

  .ProductList__priceBeforeLabel {
    width: 45vw;
    display: inline-block;
    text-align: center;
    background: #D9D5D6;
    font-size: 3vw;
    line-height: 2.4;
  }

  .ProductList__priceBeforeNumber {
    width: 45vw;
    font-size: 16px;
    font-weight: bold;
    display: inline-block;
    text-align: center;
  }

  .ProductList__priceAfterLabelInner::before {
    content: "";
    position: absolute;
    top: -1vw;
    left: 50%;
    -webkit-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
    width: 7vw;
    height: 3vw;
    border-top: 3.6vw solid #EA3332;
    border-right: 5vw solid rgba(0, 0, 0, 0);
    border-bottom: 0 none;
    border-left: 5vw solid rgba(0, 0, 0, 0);
    box-sizing: border-box;
  }

  .ProductList__priceAfterLabel {
    padding-top: 5.1vw;
    margin-bottom: 2vw;
  }

  .ProductList__priceAfterLabelInner {
    width: 45vw;
    display: inline-block;
    text-align: center;
    font-size: 3vw;
    line-height: 2.4;
    padding: 0;
    background: #EA3332;
  }

  .ProductList__priceAfterNumber {
    width: 45vw;
    display: inline-block;
    text-align: center;
    font-weight: bold;
  }

  .ProductList__categoryItem {
    font-size: 12px;
  }

  .ProductList__categoryItem:not(:last-child) {
    margin-bottom: 8px;
  }

  .ProductList__text.-note, .ProductList__text.-point {
    padding: 0;
    color: #000;
    background: none;
    font-size: 12px;
  }

  .ProductList__text.-note span, .ProductList__text.-point span {
    font-size: 10px;
    color: #fff;
    background: #0e7124;
    line-height: 20px;
    height: 20px;
    display: inline-block;
    padding: 0 4px;
    border-radius: 3px;
    margin-right: 8px;
    margin-bottom: 6px;
  }

  .ProductList__stockLabel {
    height: 50px;
    width: 50px;
    font-size: 10px;
    background: #DD6E84;
    color: #fff;
    letter-spacing: 0;
    border-radius: 4px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    line-height: 20px;
    position: relative;
  }

  .ProductList__stockLabel.exist {
    background: #DD6E84;
  }

  .ProductList__stockLabel.little {
    background: #97B545;
  }

  .ProductList__stockLabel.none {
    background: #6D5CC7;
  }

  .ProductList__stockLabel.question {
    background: #EBB45B;
  }


  .ProductList__stockLabel span {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 22px;
  }

  .ProductList__stock {
    align-items: center;
    margin-bottom: 20px;
    margin-top: 16px;
  }

  .ProductList__stockText {
    font-size: 12px;
    line-height: 1.6;
    margin-left: 12px;
  }

  .ProductList__price{
    display: flex;
    justify-content: space-between;
  }

  .ProductList__price .price_wrap > p {
    width: min-content;
  }

  .ProductList__priceDiscount{
    height: 20vw;
    width: 22vw;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4vw;
  }

  .ProductList__priceDiscountNumber{
    font-size: 6.6vw;
    margin-bottom: 1vw;
  }

  .ProductList__priceDiscountLabel {
    font-size: 3.4vw;
  }

  .ProductList__stockLabel::before{
    content: '';
    width: 16px;
    height: 20px;
    background: #fff;
    position: absolute;
    top: 0;
    left: 50%;
    opacity: 0.2;
    transform: translateX(-50%);
  }

  .ProductList__stockLabel::after{
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    border-bottom: 4px solid #DD6E84;
    border-top: 0;
    position: absolute;
    left: 50%;
    top: 20px;
    transform: translate(-50%, -100%);
  }

  .ProductList__priceAfterText{
    font-size: 12px;
    line-height: 1.6;
    margin-bottom: 20px;
  }

  .ProductList__priceAfterText div{
    height: 50px;
    width: 50px;
    margin-right: 12px;
  }

  .ProductList__priceAfterText div::after{
    content: '';
    position: absolute;
    height: 44px;
    width: 44px;
    border: 1px solid #fff;
    border-radius: 4px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .ProductList__priceAfterText div .big_text{
    font-size: 18px;
    line-height: 1;
    width: 100%;
  }

  .ProductList__priceAfterText div .small_text{
    font-size: 12px;
    line-height: 1;
    margin-top: -12px;
  }
}
/*12/15 更新分*/