#header .logo p:first-child {
  font-size: clamp(15px, 1.35vw, 26px);
  font-weight: 600;
  margin-top: 0.98vw;
}
nav ul li a.research {
  background-color: #0d3780;
  border-radius: 5px 5px 0 0;
  color: #fff;
}
#detail {
  background-color: #e0e8f4;
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #d7dde6 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #d7dde6 calc(100% - 1px));
  background-size: min(1.82vw, 35px) min(1.82vw, 35px);
  background-repeat: repeat;
  background-position: center center;
  margin-top: min(5.2vw, 100px);
}
#detail .content {
  text-align: center;
  padding-bottom: min(4.6875vw, 90px);
}
#detail .content p {
  font-size: clamp(12px, 0.93vw, 18px);
  font-weight: 600;
}
#detail .content .flex {
  display: flex;
  margin-top: min(2.08vw, 40px);
  margin-bottom: min(2.08vw, 40px);
}
#detail .content .flex img {
  width: 50%;
}
#price {
  margin-bottom: min(4.166vw, 80px);
}
#price h2::before {
  content: "PRICE";
  display: block;
  font-size: min(1.14vw, 22px);
  color: #0d3780;
}
#price p {
  text-align: center;
  font-size: clamp(12px, 0.93vw, 18px);
  font-weight: 600;
  margin-bottom: 10px;
  line-height: 2.3em;
}
#price p:last-child {
  display: inline-block;
  text-align: left;
  margin-left: clamp(75px, 7.8vw, 150px);
  font-weight: 200;
  /*border-bottom: min(0.05vw, 1px) solid #000;*/
  text-decoration: underline;
}
#price table {
  width: 75%;
  margin: min(2.08vw, 40px) auto min(1.041vw, 20px);
  border: 1px solid #d1d6dc;
  border-collapse: collapse;
}
#price table th {
  font-size: clamp(12px, 1.041vw, 20px);
  font-weight: 600;
  background-color: #d1d6dc;
  border: 1px solid #d1d6dc;
  padding-top: min(1.4vw, 27px);
  padding-bottom: min(1.25vw, 24px);

  /* 縦スクロール時に固定する */
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  /* tbody内のセルより手前に表示する */
  z-index: 1;
}
#price table th:first-child {
  width: 35%;
}
#price table th:nth-child(2) {
  width: 40%;
}
#price table th:last-child {
  width: 25%;
}
#price table th.hour {
  border-right: 1px solid #fff;
}
#price table td {
  font-size: clamp(12px, 1.041vw, 20px);
  font-weight: 400;
  border: 1px solid #d1d6dc;
  text-align: left;
  padding: min(1.041vw, 20px);
}
/* 初期 #price table td:first-child {
  padding-left: min(1.5625vw, 30px);
} */
#price table td:first-child {
  padding-left: min(2.6vw, 50px);
}
#price table td:nth-child(2) {
  padding-left: min(2.6vw, 50px);
}
#price table td:last-child {
  padding-left: min(2.6vw, 50px);
}
@media screen and (max-width: 750px) {
  #header .logo p:first-child {
    font-size: 4.26vw;
    font-weight: 600;
    margin-top: 2.8vw;
  }
  #header .logo p:last-child {
    margin-top: 1.7vw;
  }
  #about h2::before {
    font-size: 3.46vw;
  }
  #about .flex {
    flex-direction: column;
  }
  #about .flex .text {
    width: 92vw;
    margin: 0 auto;
    font-size: 3.73vw;
    font-weight: 300;
  }
  #about .flex .text p:nth-of-type(2) {
    padding-bottom: 5.7vw;
  }
  #about .flex .text p:nth-of-type(3) {
    padding-top: 5.7vw;
  }
  #about .flex span {
    font-size: 4.26vw;
  }
  #about .flex img {
    width: 92vw;
    margin-right: 0;
    margin-left: auto;
    margin-top: 5.3vw;
  }
  #detail {
    background-size: 4.66vw 4.66vw;
    margin-top: 10.6vw;
  }
  #detail .content {
    padding-bottom: 10.66vw;
  }
  #detail .content p {
    font-size: 3.5vw;
    font-weight: 300;
  }
  #detail .content p:nth-of-type(3), #detail .content p:nth-of-type(4), #detail .content p:nth-of-type(5) {
    display: none;
  }
  #detail .content .flex {
    flex-direction: column;
  }
  #detail .content .flex img {
    width: 92vw;
  }
  #price {
    width: 92vw;
    margin-bottom: 11.3vw;
  }
  #price h2::before {
    font-size: 3.46vw;
  }
  #price p {
    font-size: 3.5vw;
    font-weight: 300;
  }
  #price p:last-child {
    font-weight: 300;
    /*border-bottom: 0.2vw solid #000;*/
    padding-bottom: 1.3vw;
    margin-left: 0;
  }
  #price table {
    width: 100%;
    margin-top: 5.3vw;
    margin-bottom: 4vw;
  }
  #price table th {
    font-size: 4.26vw;
    padding-top: 3.46vw;
    padding-bottom: 3.2vw;
  }
  #price table td {
    /* font-size: 3.5vw; */
    padding-top: 4vw;
    padding-bottom: 4vw;
  }
  #price table td:last-child {
    /* padding-left: 4vw; */
    min-width: 90px;
  }
}