@charset "UTF-8";
#main {
  overflow: visible;
}

/* ▼▼▼ 診療報酬・介護報酬
=====================================*/
#rewards .category_title {
  position: relative;
  width: 100%;
  margin-bottom: 0px;
  margin-top: 32px;
  padding-left: 20px;
  font-size: var(--Heading-H4);
  font-weight: 500;
}
@media screen and (min-width: 768px), print {
  #rewards .category_title {
    margin-top: 48px;
  }
}
#rewards .category_title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4px;
  height: 29px;
  background: var(--Brand-color-Primary);
  border-radius: 5px;
}

.rewards .ttl_wrap {
  margin-top: 32px;
}
@media screen and (min-width: 768px), print {
  .rewards .ttl_wrap {
    margin-top: 60px;
  }
}
.rewards_wrap {
  margin-top: 32px;
}
@media screen and (min-width: 768px), print {
  .rewards_wrap {
    margin-top: 60px;
  }
}
.rewards_title {
  font-size: var(--Heading-H3);
  font-weight: 500;
  padding: var(--Padding-Unique-Small) var(--Padding-Unique-Medium);
  border-radius: 4px;
  background: var(--Background-Tertiary);
  margin-bottom: 8px;
}
@media screen and (min-width: 768px), print {
  .rewards_title {
    margin-bottom: 24px;
  }
}
.rewards_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px), print {
  .rewards_content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 24px;
  }
}
.rewards_item {
  width: 100%;
}
@media screen and (min-width: 768px), print {
  .rewards_item {
    width: calc(50% - 12px);
  }
}
.rewards_link {
  position: relative;
  font-size: var(--Heading-H5);
  font-weight: 500;
  display: inline;
  display: block;
  padding: var(--Padding-Card-Medium) 45px var(--Padding-Card-Medium) var(--Padding-Card-Small);
  border-bottom: 1px solid var(--Line-Primary);
}
@media screen and (min-width: 768px), print {
  .rewards_link {
    padding: var(--Padding-Card-Medium) var(--Padding-Card-Small);
  }
}
.rewards_link::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../img/icon_arrow.svg) no-repeat center center;
  -webkit-filter: invert(46%) sepia(39%) saturate(3607%) hue-rotate(180deg) brightness(102%) contrast(91%);
          filter: invert(46%) sepia(39%) saturate(3607%) hue-rotate(180deg) brightness(102%) contrast(91%);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  width: 24px;
  height: 24px;
}

/* ▼▼▼ 疾患別リハビリテーション料一覧
=====================================*/
.category_title {
  margin-bottom: 0;
}

.rehabilitation_fee .revision {
  margin-top: 32px;
}
@media screen and (min-width: 768px), print {
  .rehabilitation_fee .revision {
    margin-top: 60px;
  }
}
.rehabilitation_fee .reha_btn {
  background: var(--Background-Quaternary);
  margin: 16px 0 32px;
}
.rehabilitation_fee .reha_btn .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  padding: 32px 16px;
}
@media screen and (min-width: 768px), print {
  .rehabilitation_fee .reha_btn .container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 24px 48px;
    padding: 32px 96px;
  }
}
.rehabilitation_fee .reha_btn_item {
  width: 100%;
  border-radius: 100vmax;
  text-decoration: none;
  background: radial-gradient(circle at 8% 50%, rgb(16, 156, 243) 25%, rgb(104, 176, 255) 64%, rgb(143, 202, 255) 90%, rgb(175, 224, 255) 100%);
  border: 1px solid var(--Background-Quaternary);
  padding: 16px 16px 18px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px), print {
  .rehabilitation_fee .reha_btn_item {
    width: calc(33.3333333333% - 32px);
  }
}
.rehabilitation_fee .reha_btn_item .reha_btn_text {
  color: var(--Object-Primary-Reverse);
  font-weight: 500;
  font-size: var(--Label-Medium);
  line-height: 1.2em;
  text-align: center;
}
.rehabilitation_fee .reha_btn_item:hover {
  opacity: 1;
  background: var(--Object-Primary-Reverse);
  border: 1px solid var(--Line-Secondary);
}
.rehabilitation_fee .reha_btn_item:hover .reha_btn_text {
  color: var(--Brand-color-Primary);
}
.rehabilitation_fee .reha_btn_item.active {
  background: var(--Object-Primary-Reverse);
  border: 1px solid var(--Line-Secondary);
  color: var(--Brand-color-Primary);
}
.rehabilitation_fee .reha_btn_item.active .reha_btn_text {
  color: var(--Brand-color-Primary);
}
.rehabilitation_fee .reha_btn_text {
  display: block;
}
.rehabilitation_fee .specification_inner {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
@media screen and (min-width: 768px), print {
  .rehabilitation_fee .specification_inner {
    width: 100%;
    max-width: 1202px;
    margin: 0 auto;
  }
}
.rehabilitation_fee .specification_table {
  border-collapse: collapse;
  border-top: 1px solid var(--Line-Primary);
  min-width: 1248px;
  width: 100%;
  margin: 16px;
}
@media screen and (min-width: 768px), print {
  .rehabilitation_fee .specification_table {
    min-width: auto;
    margin: 16px auto;
  }
}
.rehabilitation_fee .specification_table thead tr th.specification_th_primary {
  background-color: #B8C4CC;
  border: 1px solid var(--Line-Primary);
  padding: 16px;
  font-weight: 500;
  font-size: var(--Label-Medium);
  color: #fff;
  vertical-align: middle;
}
.rehabilitation_fee .specification_table thead tr th.specification_th_primary:first-child {
  width: 300px;
}
.rehabilitation_fee .specification_table tbody tr th.specification_th_secondary {
  background-color: var(--Background-Tertiary);
  border: 1px solid var(--Line-Primary);
  padding: 16px;
  font-weight: 500;
  font-size: var(--Label-Medium);
  vertical-align: middle;
  width: 300px;
}
.rehabilitation_fee .specification_table tbody tr td.specification_td {
  background-color: var(--Background-Secondary);
  border: 1px solid var(--Line-Primary);
  padding: 16px;
  font-size: var(--Label-Medium);
}
.rehabilitation_fee .specification_table tbody tr td.specification_price {
  font-weight: 700;
}
.rehabilitation_fee .specification_table tbody tr td.cross_td {
  background-image: linear-gradient(to left bottom, transparent calc(50% - 1px), var(--Line-Primary) calc(50% - 0.5px), var(--Line-Primary) calc(50% + 0.5px), transparent calc(50% + 1px), #fff);
  background-repeat: no-repeat;
}
.rehabilitation_fee .specification_table .list_dot_td {
  padding-left: 1.5em;
}
.rehabilitation_fee .specification_table .list_dot_td_item {
  list-style: disc;
  margin-bottom: 8px;
}
.rehabilitation_fee .combining .specification_table {
  table-layout: fixed;
}
.rehabilitation_fee .combining .specification_table thead tr th.specification_th_primary:first-child {
  width: 240px;
}
.rehabilitation_fee .combining .specification_table thead tr th.specification_th_primary:not(:first-child) {
  width: calc((100% - 240px) / 6);
}
.rehabilitation_fee .combining .specification_table tbody tr th.specification_th_secondary {
  width: 240px;
}
.rehabilitation_fee .combining .specification_table tbody tr td.specification_td {
  width: calc((100% - 240px) / 6);
}
.rehabilitation_fee .note_wrap .note {
  padding-left: 1.6em;
  text-indent: -1.6em;
  margin-bottom: 8px;
}

/* ▼▼▼ 医科診療報酬点数表（抜粋）
=====================================*/
.care_fee .revision, .facility_standards .revision, .medical_fee .revision {
  margin-top: 32px;
}
@media screen and (min-width: 768px), print {
  .care_fee .revision, .facility_standards .revision, .medical_fee .revision {
    margin-top: 60px;
  }
}

.medical_fee .heading_h3, .facility_standards .heading_h3 {
  background-color: var(--Background-Tertiary);
  margin: 16px 0 0;
}
.medical_fee .heading_h4, .facility_standards .heading_h4 {
  margin: 16px 0 0;
}

.care_btn {
  display: grid;
  gap: 24px 0;
  background: var(--Background-Quaternary);
  margin: 16px 0 32px;
  padding: 32px 0;
}
.care_btn .container {
  padding: 0 20px;
}
.care_btn_inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px 48px;
}
@media screen and (min-width: 768px), print {
  .care_btn_inner {
    grid-template-columns: repeat(2, 1fr);
  }
}
.care_btn_title {
  font-size: var(--Heading-H5);
  font-weight: 500;
  margin-bottom: 16px;
}
.care_btn_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  border-radius: 100vmax;
  text-decoration: none;
  background: radial-gradient(circle at 8% 50%, rgb(16, 156, 243) 25%, rgb(104, 176, 255) 64%, rgb(143, 202, 255) 90%, rgb(175, 224, 255) 100%);
  border: 1px solid var(--Background-Quaternary);
  padding: 16px 16px 18px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-align: center;
  min-height: 70px;
}
.care_btn_item .care_btn_text {
  color: var(--Object-Primary-Reverse);
  font-weight: 500;
  font-size: var(--Label-Medium);
  line-height: 1.2em;
  text-align: center;
}
.care_btn_item:hover {
  opacity: 1;
  background: var(--Object-Primary-Reverse);
  border: 1px solid var(--Line-Secondary);
}
.care_btn_item:hover .care_btn_text {
  color: var(--Brand-color-Primary);
}
.care_btn_item.active {
  background: var(--Object-Primary-Reverse);
  border: 1px solid var(--Line-Secondary);
  color: var(--Brand-color-Primary);
}
.care_btn_item.active .care_btn_text {
  color: var(--Brand-color-Primary);
}
.care_btn_text {
  display: block;
}

.consultation_content {
  max-width: 1344px;
  padding: 0 16px;
  margin: 0 auto;
}

.criteria, .consultation, .additional {
  display: grid;
  gap: 32px;
  background: #fff;
  padding: 16px;
  margin: 16px -16px 0;
}
@media screen and (min-width: 768px), print {
  .criteria, .consultation, .additional {
    padding: 40px;
    margin: 16px 0 0;
  }
}
.criteria_inner, .consultation_inner, .additional_inner {
  display: grid;
  gap: 24px;
  line-height: 1.6;
}
.criteria_detail, .consultation_detail, .additional_detail {
  background-color: var(--Background-Quaternary);
  padding: 16px;
  font-weight: 500;
  font-size: var(--Heading-H4);
  line-height: 1.4;
}
@media screen and (min-width: 768px), print {
  .criteria_detail .txt_right, .consultation_detail .txt_right, .additional_detail .txt_right {
    text-align: right;
  }
}
.criteria_detail_item, .consultation_detail_item, .additional_detail_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 16px;
  width: 100%;
}
.criteria_detail_list, .consultation_detail_list, .additional_detail_list {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}
.criteria_detail_list > li.flex, .consultation_detail_list > li.flex, .additional_detail_list > li.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 16px;
}
@media screen and (min-width: 768px), print {
  .criteria_detail_list > li.flex, .consultation_detail_list > li.flex, .additional_detail_list > li.flex {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.criteria_detail_list .col2, .consultation_detail_list .col2, .additional_detail_list .col2 {
  display: grid;
  grid-template-columns: 1fr auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px 16px;
}
.criteria_detail_list .col2 .points, .consultation_detail_list .col2 .points, .additional_detail_list .col2 .points {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.criteria_detail_list .col2 .pc_wrap, .consultation_detail_list .col2 .pc_wrap, .additional_detail_list .col2 .pc_wrap {
  display: contents;
}
.criteria_detail_list .col2 .notes, .consultation_detail_list .col2 .notes, .additional_detail_list .col2 .notes {
  grid-column: 1/3;
  font-weight: normal;
}
@media screen and (min-width: 768px), print {
  .criteria_detail_list .col2, .consultation_detail_list .col2, .additional_detail_list .col2 {
    grid-template-columns: 50% 1fr;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 8px 16px;
  }
  .criteria_detail_list .col2 .pc_wrap, .consultation_detail_list .col2 .pc_wrap, .additional_detail_list .col2 .pc_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 16px;
  }
}
.criteria_detail_list .txt, .consultation_detail_list .txt, .additional_detail_list .txt {
  text-indent: -2em;
  padding-left: 2em;
}
@media screen and (min-width: 768px), print {
  .criteria_detail_list .txt, .consultation_detail_list .txt, .additional_detail_list .txt {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.criteria_detail_list ul, .consultation_detail_list ul, .additional_detail_list ul {
  padding-left: 2em;
}
.criteria_detail_list ul li, .consultation_detail_list ul li, .additional_detail_list ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 16px;
}
.criteria_detail_list ul li.indent, .consultation_detail_list ul li.indent, .additional_detail_list ul li.indent {
  padding-left: 1.5em;
}
.criteria_detail_list ul li.indent .txt, .consultation_detail_list ul li.indent .txt, .additional_detail_list ul li.indent .txt {
  text-indent: -2.3em;
  padding-left: 2.3em;
}
.criteria_detail_list .row li, .consultation_detail_list .row li, .additional_detail_list .row li {
  margin-top: 8px;
}
.criteria_detail .points, .consultation_detail .points, .additional_detail .points {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  text-indent: 0;
  padding-left: 0;
}
@media screen and (min-width: 768px), print {
  .criteria_detail .points, .consultation_detail .points, .additional_detail .points {
    margin-left: auto;
  }
}
.criteria_list, .criteria .count_list, .criteria .notes_list, .consultation_list, .consultation .count_list, .consultation .notes_list, .additional_list, .additional .count_list, .additional .notes_list {
  display: grid;
  gap: 16px;
  counter-reset: my-counter;
  list-style: none;
}
.criteria_list > li, .criteria .count_list > li, .criteria .notes_list > li, .consultation_list > li, .consultation .count_list > li, .consultation .notes_list > li, .additional_list > li, .additional .count_list > li, .additional .notes_list > li {
  counter-increment: my-counter;
  padding-left: 45px;
  position: relative;
}
@media screen and (min-width: 768px), print {
  .criteria_list > li, .criteria .count_list > li, .criteria .notes_list > li, .consultation_list > li, .consultation .count_list > li, .consultation .notes_list > li, .additional_list > li, .additional .count_list > li, .additional .notes_list > li {
    padding-left: 65px;
  }
}
.criteria_list > li::before, .criteria .count_list > li::before, .consultation_list > li::before, .consultation .count_list > li::before, .additional_list > li::before, .additional .count_list > li::before {
  content: "（" counter(my-counter) "）";
  position: absolute;
  top: 0;
  left: 0;
}
.criteria .notes_list.start_2, .consultation .notes_list.start_2, .additional .notes_list.start_2 {
  counter-reset: my-counter 1;
}
.criteria .notes_list.start_3, .consultation .notes_list.start_3, .additional .notes_list.start_3 {
  counter-reset: my-counter 2;
}
.criteria .notes_list.start_4, .consultation .notes_list.start_4, .additional .notes_list.start_4 {
  counter-reset: my-counter 3;
}
.criteria .notes_list.start_5, .consultation .notes_list.start_5, .additional .notes_list.start_5 {
  counter-reset: my-counter 4;
}
.criteria .notes_list.start_6, .consultation .notes_list.start_6, .additional .notes_list.start_6 {
  counter-reset: my-counter 5;
}
.criteria .notes_list.start_7, .consultation .notes_list.start_7, .additional .notes_list.start_7 {
  counter-reset: my-counter 6;
}
.criteria .notes_list.start_8, .consultation .notes_list.start_8, .additional .notes_list.start_8 {
  counter-reset: my-counter 7;
}
.criteria .notes_list.start_9, .consultation .notes_list.start_9, .additional .notes_list.start_9 {
  counter-reset: my-counter 8;
}
.criteria .notes_list.start_10, .consultation .notes_list.start_10, .additional .notes_list.start_10 {
  counter-reset: my-counter 9;
}
.criteria .notes_list.start_14, .consultation .notes_list.start_14, .additional .notes_list.start_14 {
  counter-reset: my-counter 13;
}
.criteria .notes_list:not(.num_only) > li:nth-child(1)::before, .consultation .notes_list:not(.num_only) > li:nth-child(1)::before, .additional .notes_list:not(.num_only) > li:nth-child(1)::before {
  content: "注" counter(my-counter);
}
.criteria .notes_list.notes_only > li::before, .consultation .notes_list.notes_only > li::before, .additional .notes_list.notes_only > li::before {
  content: "注" !important;
}
.criteria .notes_list.start_11 > li::before, .consultation .notes_list.start_11 > li::before, .additional .notes_list.start_11 > li::before {
  content: "11" !important;
}
.criteria .notes_list.flex li, .consultation .notes_list.flex li, .additional .notes_list.flex li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 8px 16px;
}
.criteria .notes_list.flex li .points, .consultation .notes_list.flex li .points, .additional .notes_list.flex li .points {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.criteria .notes_list > li::before, .consultation .notes_list > li::before, .additional .notes_list > li::before {
  content: counter(my-counter);
  position: absolute;
  top: 0;
  left: 0;
}
.criteria .notes_list b, .consultation .notes_list b, .additional .notes_list b {
  font-weight: 500;
}
.criteria .indent_list, .consultation .indent_list, .additional .indent_list {
  display: grid;
}
.criteria .indent_list li, .consultation .indent_list li, .additional .indent_list li {
  margin-top: 16px;
  padding-left: 2em;
  text-indent: -2em;
}

.points_list {
  display: grid;
  gap: 8px;
  font-weight: 500;
  margin: 16px 0;
}
.points_list > li {
  padding-left: 2em;
  text-indent: -2em;
}
.points_list.flex li, .points_list .flex li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 8px 16px;
}
.points_list > li > .txt {
  text-indent: -2em;
  padding-left: 2em;
}
.points_list > li .points {
  margin-left: auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  text-indent: 0;
}
.points_list_lower {
  grid-column: 1/3;
  text-indent: 0;
}
.points_list_lower.indent_kana li {
  text-indent: -3em;
  padding-left: 3em;
}
.points_list_lower.indent_num li {
  text-indent: -2.5em;
  padding-left: 2.5em;
  margin-left: -0.8em;
}
.points_list_lower li {
  margin-top: 8px;
  text-indent: -2.5em;
  padding-left: 2.5em;
  font-weight: normal;
}
.points_list_lower li .points {
  text-indent: 0;
}
.points_list_lower li .inner_indent {
  text-indent: -1.3em;
  padding-left: 1.3em;
}
.points_list_lower li .inner_indent2 {
  text-indent: -2.5em;
  padding-left: 2.5em;
  margin-left: -0.8em;
}

.fw_mid {
  font-weight: 500 !important;
}
.fw_normal {
  font-weight: normal !important;
}

/* ▼▼▼ 医科診療報酬点数表（抜粋）
=====================================*/
.care_fee .category_title + .heading_h3 {
  margin-top: 16px;
}
.care_fee .heading_h3 {
  background-color: var(--Background-Tertiary);
  margin: 38px 0 0;
}
.care_fee .heading_h4 {
  margin: 16px 0 0;
}
.care_fee .care_btn {
  display: grid;
  gap: 24px 0;
  background: var(--Background-Quaternary);
  margin: 16px 0 32px;
  padding: 32px 0;
}
.care_fee .care_btn .container {
  padding: 0 20px;
}
.care_fee .care_btn_inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px 48px;
}
@media screen and (min-width: 768px), print {
  .care_fee .care_btn_inner {
    grid-template-columns: repeat(3, 1fr);
  }
}
.care_fee .note_wrap {
  margin-bottom: 0;
}
.care_fee .note_wrap .note {
  padding-left: 1.3em;
  text-indent: -1.3em;
  margin-bottom: 8px;
}
.care_fee .note_wrap + .list_dot_td {
  margin-top: 16px;
}
.care_fee .list_dot_td {
  display: grid;
  gap: 8px 0;
  padding-left: 1.5em;
}
.care_fee .list_dot_td_item {
  list-style: disc;
}

.criteria_content {
  max-width: 1280px;
  padding: 0 16px;
  margin: 0 auto;
}

.list_indent li {
  text-indent: -1.3em;
  padding-left: 1.3em;
}

.criteria_table_wrap {
  overflow: hidden;
}

.criteria_table {
  table-layout: fixed;
  border-collapse: collapse;
  border-top: 1px solid var(--Line-Primary);
  margin: 16px 0;
  width: 100%;
}
.criteria_table caption {
  margin-bottom: 8px;
}
.criteria_table thead th {
  background-color: #B8C4CC;
  border: 1px solid var(--Line-Primary);
  padding: 16px;
  font-weight: 500;
  font-size: var(--Label-Medium);
  color: #fff;
  vertical-align: middle;
  text-align: center;
}
.criteria_table th, .criteria_table td {
  border: 1px solid var(--Line-Primary);
  padding: 16px;
  vertical-align: middle;
}
.criteria_table th.cell_center, .criteria_table td.cell_center {
  text-align: center;
}
.criteria_table th {
  background-color: var(--Background-Tertiary);
  font-weight: 500;
  width: 100px;
}
@media screen and (min-width: 768px), print {
  .criteria_table th {
    width: 300px;
  }
}
.criteria_table td {
  background: #fff;
}
.criteria_table td .note {
  padding-left: 1.3em;
  text-indent: -1.3em;
}

.criteria_inner.scroll {
  width: calc(100% + 32px);
  overflow-x: auto;
  overflow-y: hidden;
  margin: 0 -16px;
}
@media screen and (min-width: 768px), print {
  .criteria_inner.scroll {
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px), print {
  .criteria_inner.scroll {
    width: 100%;
    margin: 16px auto;
    padding: 0;
  }
}
.criteria_inner.scroll .criteria_table {
  border-collapse: collapse;
  border-top: 1px solid var(--Line-Primary);
  min-width: 1248px;
  width: 1248px;
  margin: 16px;
}
@media screen and (min-width: 768px), print {
  .criteria_inner.scroll .criteria_table {
    min-width: auto;
    width: 100%;
    margin: 16px auto;
  }
}
.criteria_inner.scroll .criteria_table th {
  width: 240px;
}
@media screen and (min-width: 768px), print {
  .criteria_inner.scroll .criteria_table th {
    width: 300px;
  }
}
.criteria_inner.scroll .criteria_table.w85 th {
  width: 85px;
}
.criteria_inner.scroll .criteria_table.w95 th {
  width: 95px;
}
.criteria_inner.scroll .criteria_table.combine th, .criteria_inner.scroll .criteria_table.combine td {
  width: auto;
}
.criteria_inner.scroll .criteria_table.combine th.combine_w150, .criteria_inner.scroll .criteria_table.combine td.combine_w150 {
  width: 150px;
}
.criteria_inner.scroll .criteria_table.combine th.combine_w110, .criteria_inner.scroll .criteria_table.combine td.combine_w110 {
  width: 110px;
}
.criteria_inner.scroll .criteria_table.combine th.combine_w280, .criteria_inner.scroll .criteria_table.combine td.combine_w280 {
  width: 280px;
}
.criteria_inner.scroll .criteria_table.combine th {
  text-align: center;
}
.criteria_inner.scroll .criteria_table.centered th, .criteria_inner.scroll .criteria_table.centered td {
  padding: 16px 5px;
  text-align: center;
  width: auto;
}

.additional_content {
  max-width: 1280px;
  padding: 0 16px;
  margin: 0 auto;
}

.heading_h5 {
  font-size: var(--Heading-H5);
  font-weight: 500;
  margin-bottom: 8px;
}

.heading_h6 {
  font-size: var(--Heading-H6);
  font-weight: 500;
  margin-bottom: 8px;
}