/* カテゴリ・グループのフリースペース内全体の指定 */
.cg_freespace_01 {
  padding:0;
  margin:20px 0 20px 0;
}
.cg_freespace_02 {
  padding:0;
  margin:20px 0 20px 0;
}
/* カテゴリ・グループのフリースペース内の<p>タグの余白設定 */
.cg_freespace_01 p,
.cg_freespace_02 p {
  margin:0 0 10px 0;
}
/* カテゴリ・グループのフリースペース内の<ul>タグの余白設定 */
.cg_freespace_01 ul,
.cg_freespace_02 ul{
  margin:0;
  padding:0;
}

/* カテゴリ・グループのフリースペース内のメインビジュアル設定 */
.cate_mv {
  position: relative;
  margin-bottom: 30px;
}

.cate_mv .cate_cp {
  position: absolute;
  width: 46%;
  top: 50%;
  left: 6%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  padding: 0 20px 0 20px;
  background-color:  rgba( 255, 255, 255, 0.85 );
  color: #003300;
}

.cate_mv .mv_cp_main {
  font-size: 3rem;
  line-height: inherit;
  font-weight: normal;
  text-align: left;
}

.cate_mv .mv_micros_cp {
  font-size: 1.8rem;
  line-height: 2rem;
}
.cate_mv .mv_cp_mainmini {
  font-size: 1.8rem;
  line-height: 2rem;
}
.cate_mv .mv_cp_min {
    font-size: 0.9rem;
  line-height: 2rem;
    margin: 10px 0 10px 0;
  }

@media screen and (max-width: 767px) {
.cate_mv .cate_cp {
  width: 84%;
  left: 5%;
  padding: 5px 10px 0 10px;
}
.cate_mv .cate_cp .mv_cp_main {
    font-size: 1.2rem;
    line-height: 1rem;
    font-weight: normal;
  }

.cate_mv .mv_cp_mainmini {
  font-size: 0.8rem;
    line-height: 0rem;
}
.cate_mv .mv_micros_cp {
  font-size: 0.8rem;
}

.cate_mv .mv_cp_min {
    font-size: 0.7rem;
    line-height: 1rem;
    margin-bottom: 5px;
  }

  }

/* 231211 カートに入れるボタン */
ul.item_box li {
position: relative;
}
.cartjs_cart_in {
margin-bottom: 0px!important; 
position: absolute;
bottom: 0;
}
.cartjs_product_table {
display: none;
}
.cartjs_cart_in input,
.cartjs_cart_in input {
background-color: #2c7258 !important;
width: 95% !important;
margin: auto;
height:  47px !important;
}


/* 251002 動く四角 */
.btn_box{
  position: static;
  text-align: center;
}
#btn_animation .btn {
  display: block;
  width: 100%;
  height: 60px;
  text-align: center;
  line-height: 60px;
  color: #fe447c;
  font-size: 24px;
  text-decoration: none;
  background-image: repeating-linear-gradient(0deg, #fe447c, #fe447c 10px, transparent 10px, transparent 20px, #fe447c 20px), 
  repeating-linear-gradient(90deg, #fe447c, #fe447c 10px, transparent 10px, transparent 20px, #fe447c 20px), 
  repeating-linear-gradient(180deg, #fe447c, #fe447c 10px, transparent 10px, transparent 20px, #fe447c 20px), 
  repeating-linear-gradient(270deg, #fe447c, #fe447c 10px, transparent 10px, transparent 20px, #fe447c 20px);
  background-size: 3px calc(100% + 20px), calc(100% + 20px) 3px, 3px calc(100% + 20px) , calc(100% + 20px) 3px;
  background-position: 0 0, 0 0, 100% 0, 0 100%;
  background-repeat: no-repeat;
  animation: borderAnimation 0.6s infinite linear;
}

@keyframes borderAnimation {
from { background-position: 0 0, -20px 0, 100% -20px, 0 100%; }
to { background-position: 0 -20px, 0 0, 100% 0, -20px 100%; }
}
