.hospitalbg {
  min-height: 1200px;
  background: url(/images/bg_01.jpg) center
    top no-repeat;
}
.doctorbg {
  min-height: 1200px;
  background: url(/images/bg_11.jpg) center
    top no-repeat;
}
.hospitalinfo {
  height: 173px;
  color: #333;
  overflow: hidden;
  position: relative;
}
.hospitalinfo img {
  float: left;
  width: 90px;
  height: 90px;
  border-radius: 100%;
  margin: 58px 20px 0 0;
  background: #fff;
  object-fit: contain;
}
.hospitalinfo h1,
.hospitalinfo strong {
  display: block;
  height: 34px;
  margin-top: 52px;
  font-size: 32px;
  line-height: 34px;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hospitalinfo p {
  margin-top: 9px;
  font-size: 16px;
  line-height: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hospitalinfo i {
  float: left;
  margin-top: 11px;
  font-size: 14px;
  line-height: 24px;
  color: #fff;
  padding: 0 10px;
  background: #ff9023;
  border-radius: 24px;
}
.hospitalinfo i + i {
  margin-left: 5px;
}
.hospitalinfo .feedback {
  position: absolute;
  bottom: 0;
  right: 15px;
  font-size: 14px;
  line-height: 14px;
  padding-left: 20px;
  background: url(/images/icon_04.png) left
    center no-repeat;
  cursor: pointer;
  transition: color 0.2s;
}
.hospitalinfo .feedback:hover {
  color: #3291f9;
}
.doctorinfo {
  height: 173px;
  color: #333;
  overflow: hidden;
  position: relative;
}
.doctorinfo img {
  float: left;
  width: 90px;
  height: 90px;
  border-radius: 100%;
  margin: 58px 20px 0 0;
  background: #fff;
  object-fit: cover;
}
.doctorinfo h1,
.doctorinfo strong {
  display: block;
  height: 34px;
  margin-top: 52px;
  font-size: 32px;
  line-height: 34px;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.doctorinfo h1 em,
.doctorinfo strong em {
  margin-left: 10px;
  font-size: 16px;
}
.doctorinfo p {
  margin-top: 9px;
  font-size: 16px;
  line-height: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.doctorinfo i {
  float: left;
  margin-top: 11px;
  font-size: 14px;
  line-height: 24px;
  color: #fff;
  padding: 0 20px;
  background: #ff9023;
  border-radius: 24px;
}
.doctorinfo i + i {
  margin-left: 5px;
}
.doctorinfo .feedback {
  position: absolute;
  bottom: 0;
  right: 15px;
  font-size: 14px;
  line-height: 14px;
  padding-left: 20px;
  background: url(/images/icon_04.png) left
    center no-repeat;
  cursor: pointer;
  transition: color 0.2s;
}
.doctorinfo .feedback:hover {
  color: #3291f9;
}
.doctorinfo .likeit {
  float: right;
  margin: 55px 1px 0 0;
  width: 150px;
  height: 70px;
  padding: 8px 9px 10px;
  background: url(/images/bg_12.png)
    no-repeat;
  cursor: pointer;
}
.doctorinfo .likeit:hover,
.doctorinfo .likeit.liked {
  background-image: url(/images/bg_13.png);
}
.doctorinfo .likeit b {
  display: block;
  margin: 11px 0 0 18px;
  font-size: 24px;
  line-height: 26px;
  color: #fff;
  font-weight: 400;
}
.doctorinfo .likeit em {
  display: block;
  margin: 4px 0 0 18px;
  font-size: 14px;
  line-height: 16px;
  color: #fff;
}
.navigation {
  margin-top: 20px;
  height: 65px;
  font-size: 18px;
  line-height: 60px;
  color: #fff;
  text-align: center;
  background: url(/images/bg_06.png) center
    bottom no-repeat;
}
.navigation ul {
  padding: 0 60px;
  display: flex;
  justify-content: space-between;
}
.navigation li {
  flex-grow: 1;
  margin-right: 1px;
}
.navigation li a {
  display: block;
  color: #fff;
  padding-top: 5px;
  border-radius: 5px 5px 0 0;
  transition: none;
}
.navigation li a:hover,
.navigation li.current a {
  font-weight: 700;
  background: #267ef7;
}
.navigation.leftalign ul {
  display: block;
  font-size: 0;
  line-height: 0;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.navigation.leftalign ul li {
  display: inline-block;
  vertical-align: top;
  font-size: 18px;
  line-height: 60px;
}
.navigation.leftalign ul li a {
  padding: 5px 27px 0;
}
a.gotomap {
  display: inline-block;
  margin-left: 20px;
  padding-left: 19px;
  color: #3291f9;
  background: url(/images/icon_06.png) left
    center no-repeat;
}
.mapframe {
  margin-top: 10px;
  width: 100%;
  height: 400px;
}
.mapframe img {
  width: 100%;
  height: 100%;
}
.hospitalintro {
  font-size: 16px;
  line-height: 30px;
  color: #333;
}
.hospitalintro p {
  max-height: 90px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.hospitalintro p a {
  color: #3291f9;
}
.hospitalintro p:first-child {
  margin: 15px 0;
}
.hospitalintro p.address {
  display: inline-block;
  vertical-align: top;
  max-width: 100%;
  line-height: 36px;
  white-space: nowrap;
}
.hospitalintro p.address a.gotomap {
  float: right;
}
.hospitalintro p.tel {
  line-height: 36px;
  max-height: 36px;
  -webkit-line-clamp: 1;
}
.hospitallinks {
  margin-top: 20px;
  padding-top: 8px;
  font-size: 20px;
  line-height: 50px;
  overflow: hidden;
}
.hospitallinks a {
  float: left;
  width: 260px;
  height: 50px;
  box-sizing: border-box;
  padding-left: 110px;
  color: #333;
  background: #f5f9ff;
  border-radius: 50px;
  position: relative;
}
.hospitallinks a:hover {
  color: #3291f9;
}
.hospitallinks a:first-child {
  margin-right: 19px;
}
.hospitallinks a:nth-child(3) {
  float: right;
}
.hospitallinks a::after {
  content: "";
  display: block;
  position: absolute;
  top: -8px;
  left: 47px;
  width: 50px;
  height: 51px;
  background: url(/images/icon_07.png)
    no-repeat;
}
.hospitallinks a.wz::after {
  background-image: url(/images/icon_08.png);
}
.hospitallinks a.dh::after {
  background-image: url(/images/icon_09.png);
}
.picslide.hospitalintropic {
  float: left;
  width: 330px;
  height: 220px;
  border-radius: 10px;
}
.hospitalintrolist {
  float: right;
  width: 468px;
  margin-top: -3px;
  font-size: 16px;
  line-height: 36px;
  color: #333;
}
.hospitalintrolist .tablelist {
  margin-top: 0;
}
.hospitalintrolist .tablelist dt {
  width: 82px;
  font-size: 16px;
  line-height: 36px;
}
.hospitalintrolist p {
  max-height: 36px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.hospitalintrolist p a {
  color: #3291f9;
}
.hospitalintrolist p.address {
  display: inline-block;
  vertical-align: top;
  max-width: 100%;
  white-space: nowrap;
}
.hospitalintrolist p.address a.gotomap {
  float: right;
}
.hospitalintrolist p.twoline {
  max-height: 72px;
  -webkit-line-clamp: 2;
}
.process {
  margin-top: 20px;
  height: 18px;
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  line-height: 18px;
  color: #333;
  background: url(/images/bg_02.png) 94px
    center no-repeat;
}
.process dt {
  width: 112px;
  color: #3291f9;
  flex-shrink: 0;
}
.process dd {
  width: 138px;
  flex-shrink: 0;
}
.process dd:nth-child(5) {
  width: 166px;
}
.process dd:nth-child(6) {
  width: 126px;
}
.deptlist dl {
  margin: 30px 0 -10px;
  display: flex;
  justify-content: space-between;
}
.deptlist dl dt {
  width: 164px;
  height: 88px;
  margin-right: 8px;
  flex-shrink: 0;
  font-size: 0;
  line-height: 88px;
  background: url(/images/bg_03.png)
    no-repeat;
  position: relative;
}
.deptlist dl dt span {
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  box-sizing: border-box;
  padding: 3px 20px 0;
}
.deptlist dl dt strong {
  display: block;
  font-size: 24px;
  line-height: 30px;
  color: #333;
  font-weight: 700;
  max-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  transition: color 0.2s;
}
.deptlist dl dt a {
  display: block;
  width: 100%;
  height: 100%;
}
.deptlist dl dt a strong {
  max-height: 30px;
  -webkit-line-clamp: 1;
}
.deptlist dl dt a:hover strong {
  color: #3291f9;
}
.deptlist dl dt a em {
  float: left;
  margin-top: 8px;
  font-size: 14px;
  line-height: 16px;
  color: #999;
  padding-right: 13px;
  background: url(/images/arrow_05.png) right
    center no-repeat;
}
.deptlist dl dd {
  width: 100%;
}
.deptlist ul {
  overflow: hidden;
}
.deptlist ul li {
  float: left;
  width: 154px;
  height: 88px;
  margin: 0 10px 10px 0;
  font-size: 0;
  line-height: 88px;
  text-align: center;
  background: #f5f9ff;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}
.deptlist ul li:nth-child(4n) {
  margin-right: 0;
}
.deptlist ul li a {
  display: block;
  width: 100%;
  height: 100%;
}
.deptlist ul li span {
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  box-sizing: border-box;
  padding: 0 10px;
}
.deptlist ul li strong {
  display: block;
  font-size: 18px;
  line-height: 24px;
  color: #333;
  font-weight: 700;
  max-height: 48px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.deptlist ul li em {
  display: block;
  margin-top: 6px;
  font-size: 14px;
  line-height: 16px;
  color: #999;
}
.deptlist ul li p {
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding: 18px 0 0 20px;
  color: #fff;
  text-align: left;
  background: url(/images/bg_04.png)
    no-repeat;
}
.deptlist ul li p b {
  display: block;
  font-size: 18px;
  line-height: 20px;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.deptlist ul li p u {
  display: block;
  margin-top: 8px;
  font-size: 12px;
  line-height: 14px;
  color: #fff;
  text-decoration: none;
}
.deptlist dl dt i,
.deptlist ul li i {
  position: absolute;
  left: 10px;
  top: 0;
  font-size: 12px;
  line-height: 18px;
  color: #fff;
  padding: 0 5px;
  background: #ff9023;
  border-radius: 0 0 3px 3px;
}
.depttag {
  margin-top: 30px;
  height: 40px;
  font-size: 16px;
  line-height: 40px;
  color: #333;
  overflow: hidden;
}
.depttag a {
  float: left;
  margin-right: 10px;
  padding: 0 20px;
  background: #f5f9ff;
  border-radius: 10px;
}
.depttag a.all {
  float: right;
  margin-right: 0;
  padding: 0 30px;
  background: #f0f0f0;
}
.depttag a:hover {
  color: #fff;
  background: #3291f9;
}
.diseasetag {
  padding-top: 10px;
  overflow: hidden;
}
.diseasetag li {
  float: left;
  width: 155px;
  height: 50px;
  box-sizing: border-box;
  margin: 20px 10px 0 0;
  padding: 0 8px;
  font-size: 18px;
  line-height: 50px;
  color: #333;
  text-align: center;
  background: #f5f9ff;
  border-radius: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.2s, background 0.2s;
}
.diseasetag li:nth-child(5n) {
  margin-right: 0;
}
.diseasetag li:hover {
  color: #fff;
  background: #3291f9;
}
.diseasetag li a {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.diseasetag li a:hover {
  color: #fff;
}
.muticalendar {
  margin-top: 20px;
  overflow: hidden;
}
.muticalendar + .muticalendar {
  margin-top: 30px;
}
.muticalendar .tabnavscroll {
  float: left;
  width: 620px;
  height: 50px;
  overflow: hidden;
}
.muticalendar .tabnav {
  white-space: nowrap;
  user-select: none;
  cursor: pointer;
}
.muticalendar .tabnav em {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  line-height: 50px;
  color: #333;
  padding: 0 20px;
  background: #f5f9ff;
  border-radius: 10px;
  margin-right: 10px;
  transition: color 0.2s;
}
.muticalendar .tabnav em:last-child {
  margin-right: 0;
}
.muticalendar .tabnav em.current,
.muticalendar .tabnav em:hover {
  font-weight: 700;
  color: #3291f9;
}
.muticalendar .tabcontent {
  height: 278px;
  overflow: hidden;
}
.muticalendar .tabsingle {
  display: block;
}
.calendarcontrol {
  float: right;
  width: 182px;
  height: 36px;
  padding: 7px 0;
  display: flex;
  justify-content: space-between;
  user-select: none;
}
.calendarcontrol .swiper-button-prev,
.calendarcontrol .swiper-button-next {
  position: static;
  display: block;
  width: 90px;
  height: 36px;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 36px;
  color: #3291f9;
  padding-left: 30px;
  background: #f5f9ff
    url(/images/arrow_15.png) 18px center
    no-repeat;
  border-radius: 36px 0 0 36px;
  margin-top: 0;
  opacity: 1;
}
.calendarcontrol .swiper-button-next:after,
.calendarcontrol .swiper-button-prev:after {
  display: none;
}
.calendarcontrol .swiper-button-next {
  padding-left: 18px;
  background-image: url(/images/arrow_03.png);
  background-position: right 18px center;
  border-radius: 0 36px 36px 0;
}
.calendarcontrol .swiper-button-next.swiper-button-disabled,
.calendarcontrol .swiper-button-prev.swiper-button-disabled {
  color: #999;
  background-color: #f8f8f8;
  background-image: url(/images/arrow_05.png);
}
.calendarcontrol .swiper-button-prev.swiper-button-disabled {
  background-image: url(/images/arrow_16.png);
}
.calendar ul {
  display: flex;
  justify-content: space-between;
  height: 60px;
  margin-top: 6px;
}
.calendar ul li {
  width: 98px;
  height: 60px;
  font-size: 16px;
  line-height: 60px;
  color: #333;
  text-align: center;
  background: #f8f8f8;
  border-radius: 6px;
  overflow: hidden;
}
.calendar ul li:first-child {
  widows: 92px;
  font-weight: 700;
}
.calendar ul.calendarheader {
  margin-top: 20px;
  background: #f8f8f8;
  border-radius: 6px;
}
.calendar ul.calendarheader li:first-child {
  color: #666;
}
.calendar ul.calendarheader li b {
  display: block;
  font-size: 14px;
  line-height: 14px;
  margin-top: 13px;
}
.calendar ul.calendarheader li i {
  display: block;
  font-size: 16px;
  line-height: 16px;
  margin-top: 7px;
}
.calendar ul li a {
  display: block;
  color: #3291f9;
  background: #f5f9ff;
}
.calendar ul li.s3 {
  background: #f5f9ff;
}
.calendar ul li.s3 a {
  color: #333;
}
.calendar ul li a:hover,
.calendar ul li.s3 a:hover {
  color: #fff;
  background: #3291f9;
}
.calendar .nodata {
  height: 278px;
  background: url(/images/bg_10.png) center
    49px no-repeat;
  overflow: hidden;
}
.calendar .nodata a {
  display: block;
  width: 136px;
  height: 36px;
  margin: 200px auto 0;
  font-size: 16px;
  line-height: 36px;
  color: #fff;
  text-align: center;
  background: #ff9023;
  border-radius: 36px;
}
.calendar .nodata a:hover {
  opacity: 0.9;
}
.calendartips {
  margin-top: 20px;
  padding: 15px 20px;
  font-size: 14px;
  line-height: 24px;
  color: #333;
  background: #f8f8f8;
  border-radius: 6px;
}
.calendartips strong {
  display: block;
  font-size: 16px;
  color: #ff9023;
}
.ranktitle {
  padding-top: 25px;
  font-size: 16px;
  line-height: 36px;
  color: #333;
}
.ranktitle strong,
.ranktitle h1 {
  display: block;
  font-size: 30px;
  line-height: 30px;
  color: #3291f9;
  font-weight: 700;
  padding-left: 30px;
  background: url(/images/icon_01.png) left
    6px no-repeat;
}
.ranktitle .rankcontent {
  margin-top: 20px;
  padding: 14px 20px;
  background: #f5f9ff;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.2s;
}
.ranktitle .rankcontent span {
  display: block;
  height: auto;
}
.ranktitle .rankcontent.limited span {
  max-height: 72px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.ranktitle .rankcontent p {
  text-indent: 2em;
}
.linetitle {
  font-size: 24px;
  line-height: 26px;
  color: #333;
  border-bottom: #f2f2f2 1px solid;
  overflow: hidden;
}
.linetitle .tabnav {
  float: left;
}
.linetitle .tabnav span {
  display: inline-block;
  vertical-align: top;
  margin-right: 30px;
  padding-bottom: 13px;
  border-bottom: transparent 2px solid;
}
.linetitle .tabnav span.current,
.linetitle .tabnav span:hover {
  color: #3291f9;
  font-weight: 700;
  border-color: #3291f9;
}
.linetitle .tabnav span a {
  display: block;
  transition: none;
}
.linetitle .tabnav span.current a {
  color: #3291f9;
}
.linetitle .totalinfo {
  float: left;
  font-size: 14px;
  color: #666;
}
.linetitle .totalinfo em {
  vertical-align: top;
  font-size: 16px;
  color: #333;
  margin-right: 10px;
}
.linetitle .totalinfo b {
  vertical-align: top;
  color: #3291f9;
  font-weight: 400;
}
.linetitle .totalinfo.withlocation {
  padding-left: 16px;
  background: url(/images/icon_06.png) left
    center no-repeat;
}
.linetitle .bookable {
  float: right;
  font-size: 14px;
}
.linetitle .bookable input {
  margin-left: 25px;
  margin-right: 5px;
}
.linetitle .sort {
  float: right;
  font-size: 16px;
}
.linetitle .sort a {
  display: inline-block;
  vertical-align: top;
  padding-right: 13px;
  margin-left: 20px;
  background: url(/images/arrow_19.png) right
    center no-repeat;
}
.linetitle .sort a.current,
.linetitle .sort a:hover {
  color: #3291f9;
  background-image: url(/images/arrow_18.png);
}
.title + .hospitalfulllist,
.title + .doctorfulllist {
  margin-top: 10px;
}
