/* header ------------------------ */
.cmn-hero-01 {
  margin-bottom: 0;
  background: url(../img/industries/medical/img_header.jpg) center center/cover no-repeat;
}

.cmn-hero-01 h2 {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .cmn-hero-01 h2 {
    font-size: 2.625rem;
  }
}

/* link ------------------------ */
.index-link {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  max-width: 100%;
  color: inherit;
  border: 1px solid #CECECE;
  text-decoration: none;
}

.index-link .icon-arrow {
  position: relative;
  display: inline-flex;
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
  vertical-align: middle;
  border-radius: 50%;
  background: #004EFF;
  text-indent: 0;
}

.index-link .icon-arrow:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 40%;
  height: 40%;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: translate(-50%, -75%) rotate(-45deg);
}

@media screen and (min-width: 768px) {
  .index-link {
    margin-top: 6.25rem;
    width: 47.75rem;
    height: 7.5rem;
    font-size: 1.3125rem;
  }
}

@media screen and (max-width: 767px) {
  .index-link {
    margin-top: 3.75rem;
    width: 100%;
    height: 5rem;
  }
}

@media (hover: hover) {
  .index-link:hover {
    color: var(--bs-link-color);
  }
}

/* lead ------------------------ */
.index-lead .cmn-h2 {
  margin-bottom: 1.875rem;
}

@media screen and (min-width: 768px) {
  .index-lead {
    padding: 6.25rem 0;
  }
}

@media screen and (max-width: 767px) {
  .index-lead {
    padding: 3.75rem 0;
  }
}

/* coach ------------------------ */
.index-coach .cmn-h2 {
  margin-bottom: 1.875rem;
}

@media screen and (min-width: 768px) {
  .index-coach {
    padding-bottom: 6.25rem;
  }

  .index-coach__header__inner {
    position: relative;
    z-index: 0;
  }

  .index-coach__header__inner:before {
    content: "";
    display: block;
    position: absolute;
    top: -3.125rem;
    left: -3.125rem;
    right: -3.125rem;
    bottom: 0;
    background: #fff;
    z-index: -1;
  }
}

@media screen and (min-width: 1200px) {
  .index-coach__header .sub-wrapper {
    padding: 0 3.125rem;
  }

  .index-coach__inner .sub-wrapper {
    padding: 0 3.125rem;
  }
}

@media screen and (max-width: 767px) {
  .index-coach {
    padding-bottom: 3.75rem;
  }

  .index-coach__image {
    height: 9.375rem;
    margin-bottom: 3.75rem;
  }

  .index-coach__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
}

/* wish ------------------------ */
.index-wish .cmn-h3 {
  margin-bottom: 1.875rem;
}

.index-wish-list {
  list-style: none;
  padding: 0;
}

.index-wish-list-item {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 0 0 3.5rem;
}

.index-wish-list-item:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 2.5rem;
  height: 2.5rem;
  background: url(../img/industries/medical/icon_voice.png) no-repeat center center/contain;
}

.index-wish-list-item:nth-child(n+1) {
  margin-top: 1.5rem;
}

.index-wish-list-item__text {
  margin: 0;
  padding: 0.625rem 1rem;
  border-radius: 0 0.75rem 0.75rem 0.75rem;
  background: #EFEFEF;
}

@media screen and (min-width: 768px) {
  .index-wish {
    margin-top: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .index-wish {
    margin-top: 3.75rem;
  }
}

/* result ------------------------ */
.index-result .cmn-h3 {
  margin-bottom: 1.875rem;
}

.index-result-list-item .cmn-h4 {
  margin-bottom: 1em;
}

.index-result-list-item__image {
  cursor: pointer;
  overflow: hidden;
}

.index-result-list-item__image img {
  mix-blend-mode: multiply;
}

@media screen and (min-width: 768px) {
  .index-result {
    margin-top: 6.25rem;
  }

  .index-result-list {
    margin-top: 3.75rem;
  }

  .index-result-list-item__image {
    width: 25rem;
  }
}

@media screen and (min-width: 992px) {
  .index-result-list-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .index-result-list-item__image {
    max-width: 40%;
  }

  .index-result-list-item__inner {
    flex: 1;
  }

  .index-result-list-item:nth-child(odd) .index-result-list-item__inner {
    margin-right: 2.5rem;
  }

  .index-result-list-item:nth-child(even) {
    flex-direction: row-reverse;
  }

  .index-result-list-item:nth-child(even) .index-result-list-item__inner {
    margin-left: 2.5rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .index-result-list-item {
    margin-top: 3.75rem;
  }

  .index-result-list-item__image {
    margin: 1.25rem auto 0;
  }
}

@media screen and (max-width: 767px) {
  .index-result {
    margin-top: 3.75rem;
  }

  .index-result-list {
    margin-top: 2.5rem;
  }

  .index-result-list-item {
    margin-top: 2.5rem;
  }

  .index-result-list-item__image {
    margin: 1.25rem auto 0;
  }
}

.modal-backdrop {
  --bs-backdrop-opacity: .92;
}

@media screen and (min-width: 1200px) {
  .modal {
    --bs-modal-width: 1100px;
  }
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .modal {
    --bs-modal-width: 800px;
  }
}

/* voice ------------------------ */
.index-voice {
  background: #F7F7F7;
}

.index-voice-list-item {
  display: block;
  text-decoration: none;
  color: inherit;
}

.index-voice-list-item .cmn-link-01 {
  color: var(--bs-link-color);
}

.index-voice-list-item .cmn-h3 {
  margin-bottom: 0.5em;
}

.index-voice-list-item__image {
  overflow: hidden;
}

.index-voice-list-item__name {
  margin-bottom: 1.875rem;
}

.index-voice-list-item__name p {
  margin-bottom: 0.5em;
}

.index-voice-list-item__name em {
  vertical-align: top;
  font-style: normal;
  font-size: 0.8125rem;
  margin-left: 1em;
}

.index-voice-contact {
  background: #fff;
}

.index-voice-contact-list {
  list-style: none;
  padding: 0;
}

.index-voice-contact-list a {
  text-decoration: none;
  font-size: 1.3125rem;
  font-weight: bold;
}

.index-voice-contact-list em {
  display: inline-flex;
  width: 1.2em;
  height: 1.2em;
  vertical-align: middle;
  background: no-repeat center center/contain;
}

.index-voice-contact-list em.icon-email {
  margin-right: 0.4em;
  background-image: url(../img/industries/medical/icon_email.svg);
}

.index-voice-contact-list em.icon-tel {
  background-image: url(../img/industries/medical/icon_tel.svg);
}

@media screen and (min-width: 768px) {
  .index-voice {
    padding: 6.25rem 0;
  }

  .index-voice-list {
    margin: 5rem 0;
  }

  .index-voice-contact {
    padding: 2.5rem;
  }

  .index-voice-contact-list {
    margin-top: 1.875rem;
    display: flex;
    align-items: center;
  }

  .index-voice-contact-list li:nth-child(n+2) {
    margin-left: 2em;
    padding-left: 2em;
    border-left: 1px solid #1B0D57;
  }
}

@media screen and (min-width: 992px) {
  .index-voice-list-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .index-voice-list-item__image {
    width: 20.625rem;
    margin-bottom: 1px;
  }

  .index-voice-list-item__inner {
    flex: 1;
    margin-left: 2.5rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .index-voice-list-item+.index-voice-list-item {
    margin-top: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .index-voice {
    padding: 3.75rem 0;
  }

  .index-voice-list {
    margin: 3.75rem 0;
  }

  .index-voice-list-item+.index-voice-list-item {
    margin-top: 2.5rem;
  }

  .index-voice-contact {
    padding: 1.875rem;
  }

  .index-voice-contact-list {
    margin-top: 1.875rem;
  }

  .index-voice-contact-list li+li {
    margin-top: 1.25rem;
  }
}

/* news ------------------------ */
.index-news {
  background: #F7F7F7;
}

.index-news-list {
  list-style: none;
  padding: 0;
}

.index-news-list-item {
  padding: 1.25rem 0;
  border-bottom: 1px solid #C9C9C9;
}

.index-news-list-item h4 {
  margin-bottom: 1em;
  font-weight: bold;
  font-size: inherit;
}

.index-news-list-item a {
  text-decoration: none;
  font-weight: bold;
}

.index-news-list-item> :last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .index-news {
    padding: 6.25rem 0;
  }

  .index-news-list {
    margin-top: 3.75rem;
  }
}

@media screen and (max-width: 767px) {
  .index-news {
    padding: 3.75rem 0;
  }

  .index-news-list {
    margin-top: 1.25rem;
  }
}

/* archive ------------------------ */
.index-archive {
  background: #FFF;
}

.index-archive .cmn-h2 {
  margin-bottom: 1.875rem;
}

@media screen and (min-width: 768px) {
  .index-archive {
    padding: 6.25rem 0;
  }
}

@media screen and (min-width: 992px) {
  .index-archive-list {
    max-width: 62.5rem;
    margin: 0 auto;
  }

  .index-archive-list>* {
    width: 48%;
    padding: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .index-archive-list>*+* {
    margin-top: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .index-archive {
    padding: 3.75rem 0;
  }

  .index-archive-list>*+* {
    margin-top: 1.25rem;
  }
}