@charset "UTF-8";
.sec-plan {
  padding: 113px 0 116px;
  background-color: #F8F8F8;
  background-image: url("../../assets/img/plan/bg-grid.webp");
  background-repeat: repeat;
  background-position: -5px 2px;
  background-size: 10px 10px;
  color: var(--c-text);
  font-feature-settings: normal;
  text-spacing-trim: space-all;
  text-autospace: no-autospace;
  line-break: strict;
}
.plan-head { text-align: center; }
.plan-title {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 48px;
  line-height: 36px;
  color: var(--c-text);
}
.plan-title-l { font-size: inherit; }
.plan-title-s { font-size: 40px; line-height: 0; }
.plan-rule {
  display: block;
  width: 80px;
  height: 1px;
  margin: 48px auto 0;
  background: #666666;
}
.plan-tablewrap {
  width: min(1180px, 100% - 80px);
  margin: 71px auto 0;
}
.plan-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-family: var(--font-heading);
}
.plan-table th,
.plan-table td {
  padding: 0;
  text-align: center;
  vertical-align: middle;
}
.plan-c1 { width: 25.1441%; }
.plan-c2 { width: 28.4237%; }
.plan-c3 { width: 15.3458%; }
.plan-c4 { width: 15.5907%; }
.plan-c5 { width: 15.4957%; }
.plan-table thead tr { background: #E2E6EF; }
.plan-table thead th {
  height: 57px;
  padding-top: 2.68px;
  font-weight: 500;
  font-size: 18px;
  line-height: 18px;
  color: var(--c-text);
}
.plan-table thead .plan-c1 .plan-th {
  display: block;
  margin-left: 27.394%;
}
.plan-table thead .plan-c2 .plan-th,
.plan-table thead .plan-c3 .plan-th,
.plan-table thead .plan-c4 .plan-th,
.plan-table thead .plan-c5 .plan-th { display: block; }
.plan-row { background: #FFFFFF; }
.plan-row--standard { background: #F8F8F8; }
.plan-row > th,
.plan-row > td { height: 160px; }
.plan-c1-inner {
  display: flex;
  align-items: center;
}
.plan-photo {
  flex: 0 0 auto;
  width: 48.611%;
  height: auto;
  aspect-ratio: 1 / 1;
  margin-left: 5.399%;
}
.plan-name {
  margin-left: 6.654%;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.6;
  text-align: left;
}
.plan-val {
  display: block;
  font-weight: 300;
  line-height: 1.6;
}
.plan-c2 .plan-val,
.plan-c3 .plan-val { font-size: 18px; }
.plan-c4 .plan-val,
.plan-c5 .plan-val { font-size: 16px; }
.plan-label { display: none; }
.plan-photo,
.plan-name,
.plan-val {
  position: relative;
  top: var(--dy, 0px);
}
.plan-row--basic    .plan-photo { --dy: -4.37px; }
.plan-row--basic    .plan-name  { --dy:  2.63px; }
.plan-row--standard .plan-photo { --dy:  1.33px; }
.plan-row--standard .plan-name  { --dy:  7.79px; }
.plan-row--premium  .plan-photo { --dy:  0px; }
.plan-row--premium  .plan-name  { --dy: -1.55px; }
.plan-row--basic    .plan-c2 .plan-val { --dy: -4.36px; }
.plan-row--basic    .plan-c3 .plan-val { --dy:  2.63px; }
.plan-row--basic    .plan-c4 .plan-val { --dy: -0.36px; }
.plan-row--basic    .plan-c5 .plan-val { --dy: -2.87px; }
.plan-row--standard .plan-c2 .plan-val { --dy:  0.29px; }
.plan-row--standard .plan-c3 .plan-val { --dy:  7.79px; }
.plan-row--standard .plan-c4 .plan-val { --dy:  6.29px; }
.plan-row--standard .plan-c5 .plan-val { --dy: -3.18px; }
.plan-row--premium  .plan-c2 .plan-val { --dy: -1.55px; }
.plan-row--premium  .plan-c3 .plan-val { --dy: -1.55px; }
.plan-row--premium  .plan-c4 .plan-val { --dy: -6.05px; }
.plan-row--premium  .plan-c5 .plan-val { --dy: -8.10px; }
.plan-lead {
  width: min(1080px, 100% - 80px);
  margin: 30.28px auto 0;
  font-family: var(--font-body);
  font-weight: 300;
  font-size: 18px;
  line-height: 2;
  color: var(--c-text);
  text-align: center;
}
.plan-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 420px;
  max-width: calc(100% - 80px);
  height: 89px;
  margin: 56.72px auto 0;
  background: #F0831E;
  color: #FFFFFF;
}
.plan-btn-label {
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 20px;
  line-height: 2;
  letter-spacing: .04em;
  color: #FFFFFF;
}
.plan-btn-arrow {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24.42px;
  height: 22.688px;
  max-width: none;
}
.plan-pc { display: inline; }
.plan-sp { display: none; }
.plan-br-pc { display: inline; }
.plan-br-sp { display: none; }
@media (min-width: 1024px) and (max-width: 1259px) {
  .plan-table thead th { font-size: 16px; }
  .plan-name { font-size: 16px; }
  .plan-c2 .plan-val,
  .plan-c3 .plan-val { font-size: 16px; }
  .plan-c4 .plan-val,
  .plan-c5 .plan-val { font-size: 14px; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .plan-table thead th { font-size: 14px; }
  .plan-name { font-size: 14px; }
  .plan-c2 .plan-val,
  .plan-c3 .plan-val { font-size: 14px; }
  .plan-c4 .plan-val,
  .plan-c5 .plan-val { font-size: 12px; }
  .plan-lead { font-size: 16px; }
}
@media (max-width: 767px) {
  .sec-plan {
    padding: 72px 0 80.25px;
    background-position: 0 3.86px;
  }
  .plan-title { font-size: 28px; line-height: 36px; }
  .plan-title-s { font-size: 24px; }
  .plan-rule { width: 64px; margin-top: 32px; }
  .plan-pc { display: none; }
  .plan-sp { display: inline; }
  .plan-br-pc { display: none; }
  .plan-br-sp { display: inline; }
  .plan-tablewrap {
    width: min(342px, 100% - 48px);
    margin-top: 38px;
  }
  .plan-table,
  .plan-table tbody,
  .plan-table tr,
  .plan-table th,
  .plan-table td {
    display: block;
    width: auto;
    height: auto;
  }
  .plan-table { width: 100%; }
  .plan-table thead { display: none; }
  .plan-row,
  .plan-row--standard { background: #FFFFFF; }
  .plan-row + .plan-row { margin-top: 32px; }
  .plan-row > th,
  .plan-row > td { height: auto; }
  .plan-c1 { position: relative; }
  .plan-c1-inner { display: block; }
  .plan-photo {
    position: absolute;
    flex: none;
    margin: 0;
    height: auto;
    aspect-ratio: 1 / 1;
  }
  .plan-name {
    position: absolute;
    margin: 0;
    font-size: 18px;
    line-height: 1.6;
  }
  .plan-row--basic    .plan-c1 { min-height: 153.35px; }
  .plan-row--standard .plan-c1 { min-height: 158.50px; }
  .plan-row--premium  .plan-c1 { min-height: 182.39px; }
  .plan-row--basic    .plan-photo { left: 6.903%; top: 14px;    width: 38.079%; }
  .plan-row--standard .plan-photo { left: 5.556%; top: 12.30px; width: 42.172%; }
  .plan-row--premium  .plan-photo { left: 5.556%; top: 19.55px; width: 42.172%; }
  .plan-row--basic    .plan-name { left: 59.404%; top: 81.88px; }
  .plan-row--standard .plan-name { left: 58.345%; top: 62.41px; }
  .plan-row--premium  .plan-name { left: 61.123%; top: 73.02px; }
  .plan-table .plan-c2,
  .plan-table .plan-c3,
  .plan-table .plan-c4,
  .plan-table .plan-c5 {
    display: flex;
    align-items: center;
    margin: 0 5.7018% 0 5.5556%;
    border-top: 1px solid #DDDDDD;
    text-align: left;
  }
  .plan-label {
    display: block;
    flex: 0 0 35.585%;
    margin-right: 2.036%;
    font-family: var(--font-heading);
    font-weight: 300;
    font-size: 15px;
    line-height: 1.6;
    color: var(--c-text);
    text-align: center;
  }
  .plan-table .plan-c2 .plan-val,
  .plan-table .plan-c3 .plan-val,
  .plan-table .plan-c4 .plan-val,
  .plan-table .plan-c5 .plan-val {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 15px;
    line-height: 1.6;
    text-align: left;
  }
  .plan-label { position: relative; top: var(--sdyl, 0px); }
  .plan-val   { position: relative; top: var(--sdyv, 0px); }
  .plan-row--basic    .plan-c2 { --sdyl:  -2.53px; --sdyv: -1.49px; }
  .plan-row--basic    .plan-c3 { --sdyl:  -1.61px; --sdyv: -1.07px; }
  .plan-row--basic    .plan-c4 { --sdyl:  -4.54px; --sdyv: -3.50px; }
  .plan-row--basic    .plan-c5 { --sdyl:  -7.13px; --sdyv: -6.59px; }
  .plan-row--standard .plan-c2 { --sdyl:  -3.87px; --sdyv: -2.83px; }
  .plan-row--standard .plan-c3 { --sdyl:  -3.87px; --sdyv: -2.83px; }
  .plan-row--standard .plan-c4 { --sdyl:  -6.59px; --sdyv: -0.77px; }
  .plan-row--standard .plan-c5 { --sdyl: -10.84px; --sdyv: -0.52px; }
  .plan-row--premium  .plan-c2 { --sdyl:  -2.93px; --sdyv: -2.47px; }
  .plan-row--premium  .plan-c3 { --sdyl:  -0.46px; --sdyv:  0.58px; }
  .plan-row--premium  .plan-c4 { --sdyl: -14.17px; --sdyv: -1.13px; }
  .plan-row--premium  .plan-c5 { --sdyl:  -1.20px; --sdyv: -0.16px; }
  .plan-row--basic    .plan-c2 { min-height: 61.50px; }
  .plan-row--basic    .plan-c3 { min-height: 35.50px; }
  .plan-row--basic    .plan-c4 { min-height: 64.00px; }
  .plan-row--basic    .plan-c5 { min-height: 49.18px; }
  .plan-row--standard .plan-c2 { min-height: 65.00px; }
  .plan-row--standard .plan-c3 { min-height: 48.00px; }
  .plan-row--standard .plan-c4 { min-height: 43.50px; }
  .plan-row--standard .plan-c5 { min-height: 69.00px; }
  .plan-row--premium  .plan-c2 { min-height: 66.00px; }
  .plan-row--premium  .plan-c3 { min-height: 44.50px; }
  .plan-row--premium  .plan-c4 { min-height: 87.24px; }
  .plan-row--premium  .plan-c5 { min-height: 69.26px; }
  .plan-lead {
    width: min(342px, 100% - 48px);
    margin-top: 26.08px;
    font-size: 15px;
    line-height: 2;
    text-align: left;
  }
  .plan-btn {
    width: 315px;
    max-width: calc(100% - 48px);
    height: 66.75px;
    margin-top: 53px;
  }
  .plan-btn-label { font-size: 16px; letter-spacing: 0; }
  .plan-btn-arrow { width: 18.32px; height: 17.016px; }
}
@media (max-width: 374px) {
  .plan-name { font-size: 16px; }
}
.plan-lead { text-wrap: pretty; }
