body {
  font-size: clamp(14px, 1.8vw, 17px);
}

.plan_ttl {
  width: min(90%, 1200px);
  margin: 0 auto;
}

.plan_ttl p span {
  display: inline-block;
}

.price_bg {
  background-image: url(../image/sub_mv/price.jpg);
  background-size: cover;
  background-position: 96% 88%;
}

.first {
  opacity: 1;
}

.price_explanation {
  width: min(90%, 1200px);
  margin: 100px auto;
  border-radius: 15px;
  text-align: center;
}

.price_explanation span {
  display: inline-block;
}

.plan_ttl.first.fadeUpTrigger {
  animation: none;
}

/* サブビジュアルの背景位置 */
@media screen and (max-width:480px) {
  .price_bg {
    background-position: 60% 60%;
  }
}


/* ===============================================
料金表
=============================================== */

.price_box {
  width: min(90%, 1400px);
  margin: 110px auto;
  margin-bottom: 70px;
  display: flex;
  gap: 6px;
}

.price_box ul li {
  height: 80px;
  font-size: 25px;
  padding: 5% 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.price_box ul li span {
  font-size: clamp(14px, 1.8vw, 17px);
}

.price_box ul li small {
  font-size: 20px;
  margin-right: 3px;
}

.price_box .kg li {
  background: #c4c4c430;
  width: 120px;
  font-size: 17px;
}

.dog, .cat, .etc, .rabbit {
  flex: 1;
}

.kg, .dog, .cat, .etc, .rabbit {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.dog li, .cat li, .etc li, .rabbit li {
  background: #e9d7cc20;
}

.price_box .kg .none_txt {
  background: #519a8400;
}

.ttl {
  height: 80px;
  border-radius: 15px 15px 0 0;
  color: var(--cl_wh);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.ttl span {
  font-size: 15px;
}

/* 動物のアイコン装飾 */

.dog .ttl img {
  width: 80px;
  position: absolute;
  top: -57px;
  right: 30px;
}

.cat .ttl img {
  width: 74px;
  position: absolute;
  top: -49px;
  left: 52px;
}

.etc .ttl img {
  width: 18px;
  position: absolute;
  top: -27px;
  left: 75px;
}

.etc .ttl img:nth-of-type(2) {
  width: 83px;
  position: absolute;
  top: -72px;
  left: initial;
  right: 52px;
}

.rabbit .ttl img {
  width: 35px;
  position: absolute;
  top: -42px;
  right: 75px;
}

/* グループごとの色分け */

.dog .ttl {
  background: #519a84;
}

.cat .ttl {
  background: #d86161;
}

.etc .ttl {
  background: #629fc5;
  line-height: 1.5;
}

.rabbit .ttl {
  background: #e5dc76;
}

/* ===============================================
レスポンシブ時の表組み
=============================================== */

/* columnが２つ */

.column_2_wrap, .column_1_wrap {
  display: flex;
  gap: 6px;
}

@media screen and (min-width: 1301px) {
  .column_2, .column_1 {
    display: none;
  }


}

@media screen and (max-width: 1300px) {
  .column_4, .column_1 {
    display: none;
  }

  .price_box {
    flex-direction: column;
    gap: 130px;
  }
}

@media screen and (max-width: 640px) {
  .column_4, .column_2 {
    display: none;
  }

  .column_1 {
    display: block;

  }

  .column_1_wrap {
    margin-bottom: 100px;
  }

  .price_box .kg li {
    width: 90px;
  }

  .price_box ul li {
    height: 65px;
  }

  /*スマホ時に表示 */

  .price_box .kg .none_txt, .column_1_wrap .ttl {
    display: none;
  }

  .sp_ttl {
    width: 100%;
    font-size: 25px;
    padding: 3% 0;
    color: var(--cl_wh);
    border-radius: 15px 15px 0 0;
    text-align: center;
    margin-bottom: 6px;
  }


  .sp_dog {
    background: #519a84;
    position: relative;
  }

  .sp_cat {
    background: #d86161;
    position: relative;
  }

  .sp_etc {
    background: #629fc5;
    position: relative;
    line-height: 1;
  }

  .sp_etc span {
    font-size: clamp(15px, 1.8vw, 17px);
  }

  .sp_rabbit {
    background: #e5dc76;
    position: relative;
  }

  /* 動物たちの位置 */

  .sp_dog img {
    width: 80px;
    position: absolute;
    top: -57px;
    right: 30px;
  }

  .sp_cat img {
    width: 74px;
    position: absolute;
    top: -49px;
    left: 52px;
  }

  .sp_etc img {
    width: 18px;
    position: absolute;
    top: -27px;
    left: 75px;
  }

  .sp_etc img:nth-of-type(2) {
    width: 83px;
    position: absolute;
    top: -72px;
    left: initial;
    right: 52px;
  }

  .sp_rabbit img {
    width: 40px;
    position: absolute;
    top: -49px;
    right: 75px;
  }

}

/* ご注意事項 */

.notes {
  width: min(90%, 880px);
  margin: 0 auto;
  text-align: center;
  margin-bottom: 85px;
  border: 1px solid var(--cl_main);
  border-radius: 5px;
  padding: 0 30px 20px 30px;
}

.notes h2 {
  width: min(50%, 500px);
  min-width: 180px;
  margin: 0 auto;
  margin-top: -20px;
  font-size: clamp(19px, 2.2vw, 23px);
  margin-bottom: 15px;
  color: var(--cl_wh);
  background: var(--cl_main);
  border-radius: 5px;

}

.notes span {
  display: inline-block;
}

/* ===============================================
思い出グッズ販売
=============================================== */
.omoide_goods {
  width: min(90%, 1200px);
  margin: 120px auto;
}

.omoide_goods h4 {
  background: #f2f2f2;
  border-radius: 15px;
  padding: 60px 30px;
  text-align: center;
}