@charset "UTF-8";
/* 料金ページ専用スタイル（src/pages/price/index.astro のインラインから切り出し） */
/* 20240416 common移行 */

.section-text-large {
  font-weight: bold;
  color: #214589;
}
@media screen and (min-width: 857px) {
  .section-text-large {
    font-size:48px;
    letter-spacing: 1.92px;
    line-height: 1.2;
  }
}
@media screen and (max-width: 856px) {
  .section-text-large {
    font-size:6.4vw;
    line-height: 1.47916667;
  }
}
.pickup {
  padding: 70px 0;
}
.pickup span {
  background-color: #377CEA;
  display: inline-block;
  margin-right: 20px;
  text-align: center;
  color: #ffffff;
  font-size: 32px;
  width: 170px;
  line-height: 60px;
  font-weight: bold;
}
.pickup a {
  font-weight: bold;
  font-size: 32px;
  color: #377CEA;
  opacity: 1;
  transition: all .3s;
  cursor: pointer;
  line-height: 1.47916667;
}
.pickup a:hover {
  opacity: .6;
}
@media screen and (max-width: 856px) {
  .pickup {
    padding: 40px 0;
  }
  .pickup .inner {
    text-align: left;
  }
  .pickup span {
    margin-right: 10px;
    margin-bottom: 10px;
    font-size: 3.5vw;
    color: #ffffff;
    width: 18.8vw;
    height: 5.3vw;
    line-height: 5.3vw;
  }
  .pickup a {
    font-size: 6.4vw;
  }
}
.price-table {
  margin-top: 0;
}
.price-table .table-cell {
  text-align: center;
  border: solid #E6EBF4 !important;
}
@media screen and (min-width: 857px) {
  .price-table .table-cell {
    font-size:20px;
    padding: 22px 18px;
    line-height: 1.6;
    border-width: 0 2px 2px 0 !important;
  }
}
@media screen and (max-width: 856px) {
  .price-table .table-cell {
    font-size:3.2vw;
    text-align: left;
    padding: 2.66667vw 2vw 2.66667vw 2.66667vw;
    border-width: 0 .26667vw .26667vw 0 !important;
    line-height: 1.33;
  }
}
.price-table .table-cell>span {
  font-weight: bold;
  color: #377cea;
}
@media screen and (min-width: 857px) {
  .price-table .table-cell>span {
    text-align:center;
    font-size: 24px;
    line-height: 1.33;
  }
}
@media screen and (max-width: 856px) {
  .price-table .table-cell>span {
    text-align:left;
    font-size: 3.2vw;
    line-height: 1.33;
  }
}
@media screen and (min-width: 857px) {
  .price-table .table-cell:nth-child(2) {
    width:301px;
  }
}
.price-table .table-cell:nth-child(3) {
  border-right: none !important;
}
@media screen and (min-width: 857px) {
  .price-table .table-cell:nth-child(3) {
    width:656px;
  }
}
@media screen and (max-width: 856px) {
  .price-table .table-cell:nth-child(3) {
    width:37.2vw;
  }
}
.price-table .table-cell--th {
  background-color: #f5f7fa;
  font-weight: bold;
}
@media screen and (min-width: 857px) {
  .price-table .table-cell--th {
    width:203px;
  }
}
@media screen and (max-width: 856px) {
  .price-table .table-cell--th {
    width:29.73333vw;
  }
}
.section-event {
  position:relative;
  background:#377CEA;
  z-index:1;
}
@media screen and (min-width: 857px) {
  .section-event {
    padding:70px 0 70px
  }
}
@media screen and (max-width: 856px) {
  .section-event {
    padding:16vw 0;
  }
}
.section-event .text-frame-block {
  background-color:#ffffff;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  flex-wrap:wrap;
  border-radius: 0;
}
@media screen and (min-width: 857px) {
  .section-event .text-frame-block {
    padding:36px 32px 43px;
    margin-top: 0;
    width:100%;
  }
}
@media screen and (max-width: 856px) {
  .section-event .text-frame-block {
    width:100%;
    padding:5.33333vw;
  }
}
@media screen and (min-width: 857px) {
  .section-event .section-heading {
    letter-spacing: 4.8px;
  }
}
@media screen and (max-width: 856px) {
  .text-left-sp {
    text-align:left !important;
  }
}
@media screen and (min-width: 857px) {
  .definition-list-flow--3column .title {
    word-break: keep-all;
  }
}
.price-guide {
  text-align: left;
}
.price-guide-card {
  background-color: #ffffff;
  border-radius: 24px;
}
.price-guide-heading {
  font-weight: bold;
  color: #0D57A7;
  line-height: 1.47;
}
.price-guide-illust {
  overflow: hidden;
  flex-shrink: 0;
}
.price-guide-illust img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.price-guide-lead {
  font-weight: bold;
  color: #000000;
}
.price-guide-points {
  margin: 0;
  padding: 0;
  list-style: none;
}
.price-guide-points li {
  display: flex;
  align-items: flex-start;
}
.price-guide-points img {
  flex-shrink: 0;
  width: 25px;
  height: 25px;
}
.price-guide-items {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}
.price-guide-items li {
  background-color: #F5F7FA;
  border-radius: 14px;
  text-align: center;
}
.price-guide-item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
}
.price-guide-item-icon img {
  display: block;
  width: 88px;
  height: 88px;
  object-fit: contain;
}
.price-guide-items h4 {
  font-weight: bold;
  color: #0D57A7;
}
.price-guide-items p {
  color: #000000;
}
@media screen and (min-width: 857px) {
  .price-guide {
    margin-top: 80px;
  }
  .price-guide-card + .price-guide-card {
    margin-top: 30px;
  }
  .price-guide-card--intro {
    display: flex;
    align-items: center;
    min-height: 333px;
    padding: 40px 80px 40px 120px;
    gap: 72px;
  }
  .price-guide-illust {
    width: 209px;
    height: 216px;
  }
  .price-guide-heading {
    font-size: 32px;
  }
  .price-guide-lead {
    margin-top: 22px;
    font-size: 20px;
    line-height: 47px;
  }
  .price-guide-points {
    margin-top: 8px;
  }
  .price-guide-points li {
    gap: 8px;
    font-size: 16px;
    line-height: 42px;
  }
  .price-guide-points img {
    margin-top: 8px;
  }
  .price-guide-card--items {
    padding: 45px 40px 35px;
  }
  .price-guide-card--items .price-guide-heading {
    text-align: center;
  }
  .price-guide-items {
    justify-content: space-between;
    margin-top: 34px;
    gap: 27px;
  }
  .price-guide-items li {
    width: 250px;
    min-height: 308px;
    padding: 25px 17px 29px;
    box-sizing: border-box;
  }
  .price-guide-item-icon {
    width: 142px;
    height: 142px;
  }
  .price-guide-item-icon img {
    width: 88px;
    height: 88px;
  }
  .price-guide-items h4 {
    margin-top: 10px;
    font-size: 20px;
    line-height: 47px;
  }
  .price-guide-items p {
    font-size: 16px;
    line-height: 26px;
  }
}
@media screen and (max-width: 856px) {
  .price-guide {
    margin-top: 11.28205vw;
  }
  .price-guide-card {
    border-radius: 6.15385vw;
  }
  .price-guide-card + .price-guide-card {
    margin-top: 7.69231vw;
  }
  .price-guide-card--intro {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 7.69231vw 5vw;
  }
  .price-guide-illust {
    width: 37.17949vw;
    height: 38.46154vw;
    margin: 0 auto 4.10256vw;
  }
  .price-guide-body {
    width: 100%;
  }
  .price-guide-heading {
    font-size: 6.66667vw;
    line-height: 1.80769;
    text-align: center;
  }
  .price-guide-card--items .price-guide-heading {
    line-height: 1.57692;
  }
  .price-guide-lead {
    margin-top: 4.10256vw;
    font-size: 5.12821vw;
    line-height: 1.6;
    text-align: left;
  }
  .price-guide-points {
    margin-top: 4.10256vw;
  }
  .price-guide-points li {
    gap: 2.05128vw;
    font-size: 4.10256vw;
    line-height: 1.75;
  }
  .price-guide-points li + li {
    margin-top: 3.07692vw;
  }
  .price-guide-points img {
    width: 6.41026vw;
    height: 6.41026vw;
    margin-top: 0.25641vw;
  }
  .price-guide-card--items {
    padding: 10.25641vw 5.12821vw 9.48718vw;
  }
  .price-guide-items {
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 5.12821vw;
    gap: 4.10256vw 4.61538vw;
  }
  .price-guide-items li {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: calc((100% - 4.61538vw) / 2);
    min-height: 60.51282vw;
    padding: 3.84615vw 2.5641vw 3.84615vw;
    border-radius: 2.136vw;
    box-sizing: border-box;
  }
  .price-guide-item-icon {
    width: 21.53846vw;
    height: 21.53846vw;
  }
  .price-guide-item-icon img {
    width: 13.33333vw;
    height: 13.33333vw;
  }
  .price-guide-items h4 {
    margin-top: 1.53846vw;
    font-size: 4.10256vw;
    line-height: 1.75;
  }
  .price-guide-items p {
    margin-top: 0.51282vw;
    font-size: 3.58974vw;
    line-height: 1.57143;
    text-align: left;
  }
}
