.medical_partners_wrap > form {
  border: 1px solid #a6a6a6;
  padding: 1.5em 1em;
  margin-bottom: 2em;
}

.medical_partners_wrap fieldset {
  display: block;
  margin-bottom: 1.5em;
}

.equivalent_h2 {
  display: block;
  font-size: 138%;
  line-height: 1.3;
  margin: 2em 0 0.6em 0;
  padding: 0 0 0 30px;
  background: url(../images/ico_h.png) no-repeat 0 center;
  font-weight: bold;
}

.equivalent_h3 {
  font-size: 125%;
  line-height: 1.3;
  margin: 0 0 0.6em 30px;
  padding: 0 0 0 0;
  font-weight: bold;
}

.medical_partners_wrap hr {
  border-top: 1px solid #7f7f7f;
}

.medical_partners_wrap input[type="text"] {
  border: 1px solid #a6a6a6;
  border-radius: 5px;
  width: calc(100% - 60px);
  height: 2em;
  margin: 0 auto;
  display: block;
}

#contents .medical_partners_wrap > form ul {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  gap: 1em;
  margin: 0 auto;
  width: calc(100% - 60px);
}

#contents .medical_partners_wrap p {
  margin: 0 auto;
  width: calc(100% - 60px);
}

.medical_partners_wrap ul:not([class]) label {
  border: 1px solid #a6a6a6;
  border-radius: 5px;
  padding: .3em .5em;
  display: flex;
  gap: .3em;
  min-width: 6em;
  cursor: pointer;
}

.medical_partners_wrap ul:not([class]) label:has(:checked) {
  background-color: #96ccfc;
}

.medical_partners_wrap input:checked {
  accent-color: #fff;
}

.location_list dd {
  margin-bottom: 1.5em;
}

.location_list li {
  width: calc((100% - 4.4em) / 5);
}

.location_list dt a {
  color: #000;
  display: inline-flex;
  align-items: center;
  position: relative;
  gap: .1em;
}

.location_list dt span {
  display: inline-block;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 200%;
}

.location_cls::after {
  content: "+";
}

.location_opn::after {
  content: "－";
}

.location_list dt a::after {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1em;
  height: 1em;
}

#contents .medical_partners_wrap .medical_partners_btns {
  gap: 1.5em;
  justify-content: center;
  align-items: center;
}

.medical_partners_btns input {
  border: 1px solid #a6a6a6;
  border-radius: 5px;
  background-color: #046BC8;
  color: #fff;
  width: 7em;
  height: 2.5em;
}

.medical_partners_btns input[type="submit"] {
  font-weight: bold;
  width: 9em;
  height: 3.5em;
}

#contents .medical_partners_result_head {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  gap: 1em;
  justify-content: space-between;
  margin: 0 0 1.5em 0;
}

#contents .medical_partners_result_head h2 {
  width: 5em;
  font-size: 100%;
}

#contents .medical_partners_result_head h2,
#contents .medical_partners_result_head p {
  margin: 0;
  padding: 0;
  background-image: none;
}

#contents .medical_partners_result_head p {
  font-size: 130%;
  font-weight: bold;
}

.medical_partners_result_head p::before {
  content: ":";
  display: inline-block;
  padding: 0 .2em;
}

.medical_partners_result_head li:has(h2) {
  display: flex;
  align-items: center;
}

#contents .medical_partners_result_head li:has(form) {
  margin-left: auto;
}

.medical_partners_result_head form {
  display: flex;
  align-items: center;
  gap: .3em;
}

.medical_partners_result_head input[type="submit"] {
  border: 1px solid #a6a6a6;
  background-color: #046BC8;
  color: #fff;
}

.scroll {
  margin-bottom: .6em;
}

.fing {
  display: none;
}

.pager {
  display: flex;
  list-style-type: none;
  gap: .5em;
  justify-content: center;
}

.pager .active strong {
  width: 1.8em;
  height: 1.8em;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
  color: #fff;
}

.pager input {
  width: 1.8em;
  height: 1.8em;
  border: 1px solid;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  background-color: #fff;
}

.pager input:disabled {
  display: none;
}

.pager span {
  width: 1.8em;
  height: 1.8em;
  display: flex;
  justify-content: center;
  align-items: center;
}

.medical_partners_detail {
  display: grid;
  grid-template-columns: 12em auto;
  border-top: 1px dotted #bfbfbf;
}

.medical_partners_detail dt {
  font-weight: bold;
}

.medical_partners_detail dt,
.medical_partners_detail dd {
  border-bottom: 1px dotted #bfbfbf;
  padding: 1em;
}

.all_check {
  border: 1px solid #a6a6a6;
  border-radius: 5px;
  padding: .3em .5em;
  min-width: 6em;
  cursor: pointer;
  background-color: #fff;
}

.all_check.checked {
  background-color: #96ccfc;
}

#no_hit_message {
  text-align: center;
  margin: 1em 0 2em;
}

@media (max-width: 670px) {
  .location_list li {
    min-width: none;
    width: calc((100% - 2.2em) / 3);
  }
  
  .medical_partners_detail {
    display: block;
  }
  
  .medical_partners_detail dt {
    border-bottom: none;
  }
  
  .medical_partners_detail dd {
    padding: 0 1em 1em 1.5em;
  }

  .scroll {
    margin-bottom: 0;
    overflow-x: scroll;
  }
  
  .scroll th,
  .scroll td {
    white-space: nowrap;
  }

  .fing {
    display: block;
    text-align: center;
  }


}

@media (max-width: 500px) {
  .location_list li {
    min-width: none;
    width: calc((100% - 1.2em) / 2);
  }
  
  #contents .medical_partners_wrap .medical_partners_btns {
    flex-direction: column;
    gap: 1em;
  }
}