@charset "UTF-8";

@media screen and (max-width: 768px) {
  
}

/* ---------------------------------
  page_title
--------------------------------- */
.page_title {
  background-color: #97dcca;
}
.page_title span, 
.page_title span::before, 
.page_title span::after {
  background-color: #70CEB5;
}


/* ---------------------------------
  plan_content
--------------------------------- */
.plan_content  + .plan_content {
  margin-top: 10rem;
}
.plan_content h2 {
  font-size: 2.8rem;
  font-weight: 500;
  margin-bottom: 1.2rem;
}
.plan_content h2::before {
  content: "■";
  color: #4FADC7;
  margin-right: 1.2rem;
}
.plan_content h2 span {
  font-size: 2rem;
}
.plan_content .list_disc + .table_block {
  margin-top: 2rem;
}
.plan_content .list_disc li {
  text-indent: -1em;
  padding-left: 1em;
}
.plan_content .list_disc li::before {
  content: "・";
}
@media screen and (max-width: 768px) {
  .plan_content {
    padding: 0 3.2rem;
  }
  .plan_content  + .plan_content {
    margin-top: 5rem;
  }
  .plan_content h2 {
    font-size: 2rem;
  }
  .plan_content h2::before {
    margin-right: .4rem;
  }
  .plan_content h2 span {
    font-size: 1.6rem;
    display: block;
    margin-left: 1em;
  }
}

/* ---------------------------------
  table_block
--------------------------------- */
.table_caption {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  font-size: 1.4rem;
}
.table_caption .contract_period {
  background-color: #595959;
  color: #fff;
  border: .1rem solid #000;
  border-bottom: 0;
  width: 14rem;
  padding: .5rem 1rem;
}
.plan_content .price_table {
  width: 100%;
  overflow: auto;
}
.plan_content table {
  width: 108rem;
  table-layout: fixed;
  font-size: 1.4rem;
  border-collapse:separate;
  border-top: .1rem solid #000;
}
.plan_content thead th {
  color: #fff;
  padding: .5rem 0;
  font-weight: 500;
}
.plan_content table th,
.plan_content table td {
  border-right: .1rem solid #000;
  border-bottom: .1rem solid #000;
  vertical-align: middle;
  text-align: center;
}
.plan_content tr th:first-child,
.plan_content tr td:first-child {
  border-left: .1rem solid #000;
}
.plan_content .meals_day th {
  background-color: #595959;
}
.plan_content .meals_week th {
  background-color: #4472C4;
}
.plan_content .meals_month th {
  background-color: #9DC3E6;
}
.plan_content .price th,
.plan_content .price td {
  padding: 1rem;
  background-color: #DEEBF7;
}
.plan_content .price td {
  text-align: right;
}
.plan_content thead th:first-child,
.plan_content tbody th {
  width: 14rem;
  position: sticky;
  left: 0;
}
.plan_content tbody .form th,
.plan_content tbody .form td {
  padding: 1rem 0;
  background-color: #fff;
}
.plan_content tbody td {
  width: 100%;
}
.asameshimae tbody .price td {
  position: relative;
  z-index: -1;
}
.asameshimae tbody .price td .asterisk {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 1rem;
}
.saisyokuzen tbody .price.total td {
  background-color: #E2EFDA;
}
ç:first-of-type {
  text-align: center;
}
.saisyokuzen tbody .price td:first-child {
  border-left: 0;
}
.aster_list {
  margin-top: 1rem;
  font-size: 1.4rem;
}
.aster_list li {
  text-indent: -1em;
  padding-left: 1em;
}
.aster_list li:before {
  content: "※";
}