@charset "utf-8";

/*
  Shared Style
*/
.flex1 {
  display: flex;
  justify-content: space-between;
}
.flex1 div:first-of-type {
  width: 47%;
}
.flex1 div:first-of-type figure:not(:last-of-type) {
  margin-bottom: 30px;
}
.flex1 div:nth-of-type(2) {
  width: 48%;
}
.flex1 div:nth-of-type(2) p:not(:last-of-type) {
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .flex1 {
    flex-direction: column;
    row-gap: 20px;
  }
  .flex1 div:first-of-type,
  .flex1 div:nth-of-type(2) {
    width: 100%;
  }
  .flex1 div:first-of-type figure:not(:last-of-type) {
    margin-bottom: 10px;
  }
  .flex1 div:nth-of-type(2) p:not(:last-of-type) {
    row-gap: 1em;
  }
}

.lightboxOverlay {
  background-color: #fff !important;
}

/**
  #department
  診療科一覧
**/
#department .subpage_mv {
  background-image: url('../images/department/hero_department.jpg');
}

/* #department .sec_about {
  margin-bottom: 200px;
} */
/* body:not(.home) section:not(.sec_mv):not(.subpage_mv) .inner */
#department .sec_about .inner {
  padding-bottom: 170px;
}
#department .sec_about .message {
  margin: 0 auto 75px;
  width: min(780px, 100%);
}
#department .sec_about .message h3 {
  margin-bottom: 55px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  color: var(--color-blue1);
}
#department .sec_about .message p:not(:last-of-type) {
  margin-bottom: 2em;
}

/* #department .sec_about dl {
  margin: 0 auto;
  width: min(980px, calc(100% - 40px));
} */
/* #department .sec_about dl dt {
  position: relative;
  margin-bottom: 20px;
  font-size: 3rem;
  font-weight: 500;
}
#department .sec_about dl dt::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 1px;
  background: #a2a2a2;
}
#department .sec_about dl dt span {
  display: inline-block;
  padding-right: 30px;
  background: #fff;
} */
#department .sec_about dl dd {
  display: flex;
  justify-content: space-between;
}
#department .sec_about dl div:not(:last-of-type) {
  margin-bottom: 60px;
}
#department .sec_about dl dd img {
  width: 260px;
  height: 100%;
  aspect-ratio: 13 / 10;
}
#department .sec_about dl dd span {
  display: block;
  width: calc(100% - 300px);
}

/* #department .sec_others .inner {
  margin: 0 auto;
  width: min(980px, calc(100% - 40px));
} */
/* #department .sec_others .each {
  display: flex;
  justify-content: space-between;
} */
#department .sec_others .each:not(:last-of-type) {
  margin-bottom: 80px;
}
#department .sec_others .each h3 {
  position: relative;
  /* width: 460px;
  height: 220px; */
  /* width: 45%; */
  width: 100%;
  height: 100%;
  aspect-ratio: 23 / 11;
}
#department .sec_others .each h3 span {
  position: absolute;
  display: flex;
  align-items: center;
  padding-left: 20px;
  width: 100%;
  /* min-height: 50px; */
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
  background: linear-gradient(90deg, #629CE9 40%, rgba(146, 186, 240, 0.80) 69%, rgba(255, 255, 255, 0) 100%);
}
#department .sec_others .each h3 img {
  object-fit: cover;
}
/* #department .sec_others .each div table {
  margin-top: 1em;
} */
#department .sec_others .each div table.specialty td {
  padding-left: .5em;
}
#department .sec_others .each div table.motto {
  margin-top: 1em;
}
#department .sec_others .each div table.motto th {
  width: 3.5em;
}
#department .sec_others .each div table.motto tr:not(:last-of-type) td {
  /* padding-bottom: 2em; */
  padding-bottom: 1em;
}

@media screen and (max-width: 1024px) {
  #department .subpage_mv {
    background-position: right -200px top;
  }


  #department .sec_about .inner {
    padding-bottom: 80px;
  }
  #department .sec_about dl dd img {
    width: 26%;
  }
  #department .sec_about dl dd span {
    width: 70%;
  }

  #department .sec_others .each div table.specialty th,
  #department .sec_others .each div table.specialty td {
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 767px) {
  #department .subpage_mv {
    background-position: right -30px top;
  }
  #department .sec_about dl dd {
    flex-direction: column;
    row-gap: 20px;
  }
  #department .sec_about dl dd img {
    width: 260px;

    margin: 0 auto;
  }
  #department .sec_about dl dd span {
    width: 100%;
  }

  #department .sec_others .each:not(:last-of-type) {
    margin-bottom: 40px;
  }
  #department .sec_others .each h3 {
    margin: 0 auto;
    width: min(460px, 100%);
  }
  #department .sec_others .each h3 span {
    font-size: 2rem;
  }
}

@media screen and (max-width: 539px) {
  #department .subpage_mv {
    background-position: right -100px top;
  }

  #department .sec_about .message h3 {
    margin-bottom: 20px;
    font-size: 2rem;
  }
  #department .sec_about dl div:not(:last-of-type) {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 440px) {
  /* #department .sec_others .each div table.specialty th,
  #department .sec_others .each div table.specialty td {
    font-size: 1.3rem;
  } */
}


/**
  #outpatient
  外来について
**/
#outpatient .subpage_mv {
  background-image: url('../images/outpatient/hero_outpatient.jpg');
  background-position: right -150px center;
}

#outpatient .sec_hours p.notice {
  text-align: center;
}

#outpatient .sec_prescription {
  margin: 0 calc(50% - 50vw);
  background: var(--bg-blue2);
}
#outpatient .sec_prescription .description div p:not(:last-of-type) {
  margin-bottom: 2em;
}

#outpatient .sec_queue .inner {
  margin: 0 auto;
  width: min(766px, calc(100% - 40px));
}
#outpatient .sec_queue p.lead {
  margin-bottom: 20px;
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
}
#outpatient .sec_queue .btn_l {
  margin-bottom: 70px;
}
#outpatient .sec_queue ul.square li {
  line-height: calc(26 / 16);
}
#outpatient .sec_queue ul.square li:not(:last-child) {
  margin-bottom: .75em;
}

@media screen and (max-width: 1024px) {
  #outpatient .subpage_mv {
    background-position: right -240px top;
  }
}

@media screen and (max-width: 767px) {
  #outpatient .subpage_mv {
    background-position: right -150px top;
  }

  #outpatient .sec_hours .btn_l {
    margin-bottom: 10px;
  }

  #outpatient .sec_queue p.lead {
    text-align: left;
  }
}

@media screen and (max-width: 539px) {
  #outpatient .subpage_mv {
    background-position: right -230px top;
  }

  #outpatient .sec_hours p.notice {
    font-size: 1.3rem;
  }

  #outpatient .sec_queue p.lead {
    font-size: 1.7rem;
  }

  #outpatient .sec_queue .btn_l a {
    height: 80px;
  }
}


/**
  #emergency
  救急外来
**/
#emergency .subpage_mv {
  background-image: url('../images/emergency/hero_emergency.jpg');
}

#emergency section:not(.subpage_mv) .inner {
  width: min(780px, calc(100% - 40px));
}
#emergency .sec_notice .inner {
  padding-bottom: 170px;
}
#emergency .sec_notice .lead {
  margin-bottom: 70px;
  padding: 25px 1em;
  border: 1px solid var(--color-blue2);
  border-radius: 13px;
  text-align: center;
  background: #fff6f6;
}
#emergency .sec_notice .lead p {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: calc(48 / 24);
  color: var(--color-red1);
}
#emergency .sec_notice .lead .tel {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: calc(48 / 36);
  letter-spacing: .05em;
}
#emergency ul li:not(:last-of-type) {
  margin-bottom: 20px;
}

#emergency .sec_notice .period:not(:last-of-type) {
  margin-bottom: 60px;
}
#emergency .sec_notice .period h3 {
  margin-bottom: 20px;
  font-size: 2.4rem;
  font-weight: 500;
}

@media screen and (max-width: 1024px) {
  #emergency .subpage_mv {
    background-position: right -200px top;
  }
}

@media screen and (max-width: 767px) {
  #emergency .subpage_mv {
    background-position: right -200px top;
  }

  #emergency .sec_notice .inner {
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 539px) {
  #emergency .sec_notice .inner {
    padding-bottom: 100px;
  }
  #emergency .sec_notice .lead {
    margin-bottom: 30px;
    padding: 1em .4em;
  }
  #emergency .sec_notice .lead p {
    font-size: 1.6rem;
  }
  #emergency .sec_notice .lead .tel {
    font-size: 2.8rem;
  }
  #emergency .sec_notice .period h3 {
    font-size: 2rem;
  }
}

/**
  #hospitalization
  入院について
**/
#hospitalization .subpage_mv {
  background-image: url('../images/hospitalization/hero_hospitalization.jpg');
}

#hospitalization .sec_concept .section-title2:not(:first-of-type) {
  margin-top: 100px;
}
#hospitalization .sec_concept p,
#hospitalization .sec_concept ol {
  margin: 0 auto;
  width: fit-content;
}
#hospitalization .sec_concept p.lead {
  font-size: 2rem;
  font-weight: 500;
  line-height: calc(32 / 20);
  letter-spacing: .2em;
}

#hospitalization .sec_equipment {
  margin: 0 calc(50% - 50vw);
  background: var(--bg-blue2);
}
#hospitalization .sec_equipment ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 30px;
}
#hospitalization .sec_equipment ul li {
  width: 47%;
}
#hospitalization .sec_equipment ul li figure {
  position: relative;
}
#hospitalization .sec_equipment ul li figure figcaption,
#hospitalization .sec_experience .private figure figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: end;
  align-items: center;
  padding-right: 18px;
  width: 100%;
  height: 30px;
  /* font-size: 1.8rem;
  font-weight: 700; */
  font-size: 1.5rem;
  /* background: rgba(255, 255, 255, .8); */
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #fff;
  background: linear-gradient(90deg, rgba(98, 156, 233, 0) 0%, #629CE9 50%);
}

/* #hospitalization .sec_experience h3 {
  display: flex;
  align-items: center;
  margin-bottom: 45px;
  padding-left: 30px;
  width: min(440px, 100%);
  height: 40px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  background: linear-gradient(90deg, #034196 50%, rgba(255, 255, 255, 0) 100%);
} */
#hospitalization .sec_experience .rehab {
  /* margin-bottom: 225px; */
  margin-bottom: 80px;
}
#hospitalization .sec_experience .private figure {
  position: relative;
}
/* #hospitalization .sec_experience .rehab img,
#hospitalization .sec_experience .private figure:not(:last-of-type) {
  margin-bottom: 30px;
} */
/* #hospitalization .sec_experience .private figure figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: end;
  align-items: center;
  padding-right: 12px;
  width: 100%;
  height: 30px;
  color: #fff;
  background: linear-gradient(to left, #629CE9 40%, rgba(255, 255, 255, 0) 100%);
} */

@media screen and (max-width: 767px) {
  #hospitalization .sec_equipment ul li figure figcaption,
  #hospitalization .sec_experience .private figure figcaption {
    padding-right: 4px;
    /* font-size: 1.6rem; */
  }

  #hospitalization p.btn_s a {
    margin: 0 auto;
  }
}

@media screen and (max-width: 539px) {
  #hospitalization .sec_concept p.lead {
    text-align: center;
  }
  #hospitalization .sec_concept p.lead span {
    display: inline-block;
    text-align: center;
  }

  #hospitalization .sec_equipment ul {
    row-gap: 20px;
  }
  #hospitalization .sec_equipment ul li {
    width: 49%;
  }
  #hospitalization .sec_equipment ul li figure figcaption,
  #hospitalization .sec_experience .private figure figcaption {
    font-size: 1.1rem;
  }
}


/**
  #rehab
  リハビリテーション
**/
#rehab .subpage_mv {
  background-image: url('../images/rehab/hero_rehab.jpg');

  background-position: right -150px center;
}

#rehab .sec_policy .inner {
  padding-bottom: 170px;
}
#rehab .sec_policy ol.blue_marker {
  margin: 0 auto 110px;
  width: min(780px, 100%);
}
#rehab .sec_policy .description {
  margin-bottom: 160px;
}
#rehab .sec_policy .description div:nth-of-type(2) {
  width: 47%;
}
#rehab .sec_policy ul.images {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 20px;
}
#rehab .sec_policy ul.images li {
  width: 47%;
}

#rehab .sec_therapies h3 {
  margin-bottom: 20px;
}
#rehab .sec_therapies .therapy {
  display: flex;
  justify-content: space-between;
}
#rehab .sec_therapies .therapy:not(:last-child) {
  /* margin-bottom: 40px; */

  margin-bottom: 60px;
}
#rehab .sec_therapies .therapy p {
  /* width: 64%; */
  /* width: 66%; */

  line-height: calc(40 / 16);

  width: 62%;
}
#rehab .sec_therapies .therapy figure {
  width: 31%;
}

@media screen and (min-width: 1281px) {
  #rehab .subpage_mv {
    background-position: right top;
  }
}

@media screen and (max-width: 1024px) {
  #rehab .subpage_mv {
    background-position: right -200px top;
  }
}

@media screen and (max-width: 767px) {
  #rehab .subpage_mv {
    /* background-position: right -420px top; */

    background-position: right -110px top;
  }

  #rehab .sec_policy .inner {
    padding-bottom: 100px;
  }
  #rehab .sec_policy ol.blue_marker {
    margin-bottom: 60px;
  }
  #rehab .sec_policy .description {
    margin-bottom: 2em;
  }
  #rehab .sec_policy .description div:nth-of-type(2) {
    width: 100%;
  }


  /* #rehab .sec_therapies .therapy:not(:last-child) {
    margin-bottom: 60px;
  } */
}

@media screen and (max-width: 539px) {
  #rehab .subpage_mv {
    background-position: right -380px top;
  }

  #rehab .sec_therapies .therapy {
    flex-direction: column;
  }
  #rehab .sec_therapies .therapy p,
  #rehab .sec_therapies .therapy figure {
    width: 100%;
  }

  #rehab .sec_therapies .therapy p {
    margin-bottom: 30px;
    line-height: 2;
  }
}


/**
  #surgery
  手術について
**/
#surgery .subpage_mv {
  background-image: url('../images/surgery/hero_surgery.jpg');
}

#surgery .sec_safety .lead {
  margin: 0 auto 80px;
  width: min(780px, 100%);
}
#surgery .sec_safety .lead p:not(:last-of-type) {
  margin-bottom: 2em;
}

/* 画像が届いたらこのスタイルを削除 >> */
#surgery .sec_safety .lead {
  margin-bottom: unset;
}
#surgery .sec_safety figure {
  display: none;
}
/* 画像が届いたらこのスタイルを削除 << */

#surgery .sec_results {
  margin: 0 calc(50% - 50vw);
  background: var(--bg-blue2);
}
#surgery .sec_results .chart {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#surgery .sec_results .chart div {
  width: 47%;
}
#surgery .sec_results .chart div:first-of-type {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
#surgery .sec_results .chart table {
  /* border-collapse: separate;
  border-spacing: 5px; */
  width: 100%;
}
#surgery .sec_results .chart table th,
#surgery .sec_results .chart table td {
  text-align: center;
  vertical-align: middle;
}
#surgery .sec_results .chart table thead th {
  /* height: 70px; */
  height: 75px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
}
#surgery .sec_results .chart table thead th span {
  display: inline-block;
}
#surgery .sec_results .chart table thead th:first-of-type {
  width: 48%;
  color: #fff;
  background: var(--color-blue2);
}
#surgery .sec_results .chart table thead th:nth-of-type(2) {
  width: 52%;
  background: #cbcbcb;
}
#surgery .sec_results .chart table thead th:first-of-type,
#surgery .sec_results .chart table tbody th,
#surgery .sec_results .chart table tfoot th {
  border-right: 5px solid var(--bg-blue2);
}
#surgery .sec_results .chart table thead th,
#surgery .sec_results .chart table tbody th,
#surgery .sec_results .chart table tbody td {
  border-bottom: 5px solid var(--bg-blue2);
}
#surgery .sec_results .chart table tbody th,
#surgery .sec_results .chart table tbody td {
  height: 55px;
}
/* #surgery .sec_results .chart table tbody th,
#surgery .sec_results .chart table tbody td, */
#surgery .sec_results .chart table tfoot th,
#surgery .sec_results .chart table tfoot td {
  height: 50px;
}
#surgery .sec_results .chart table tbody th {
  background: #d3e6ff;
}
#surgery .sec_results .chart table tbody td {
  background: #fff;
}
/* #surgery .sec_results .chart table tfoot th {
  border: 6px solid var(--color-blue2);
}
#surgery .sec_results .chart table tfoot td {
  border: 6px solid #a2a2a2;
} */
#surgery .sec_results .chart table tfoot th,
#surgery .sec_results .chart table tfoot td {
  background: #fff;

  font-size: 1.8rem;
  font-weight: 700;
}
#surgery .sec_results .chart table tfoot th span,
#surgery .sec_results .chart table tfoot td span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
#surgery .sec_results .chart table tfoot th span {
  border: 6px solid var(--color-blue2);
}
#surgery .sec_results .chart table tfoot td span {
  border: 6px solid #a2a2a2;
}

#surgery .sec_manage p.lead {
  margin-bottom: 40px;
  font-size: 2rem;
  font-weight: 500;
  line-height: calc(44 / 20);
  text-align: center;
}
#surgery .sec_manage table.motto {
  margin: 0 auto;
  /* width: min(785px, calc(100% - 40px)); */
  width: min(800px, 100%);
}
#surgery .sec_manage table.motto th {
  width: 3.5em;
  font-weight: 700;
}
#surgery .sec_manage table.motto tr:not(:last-child) td {
  padding-bottom: 20px;
}

@media screen and (max-width: 767px) {
  #surgery .subpage_mv {
    background-position: right -70px top;
  }

  #surgery .sec_results .chart {
    flex-direction: column;
    align-items: center;
    row-gap: 20px;
  }
  #surgery .sec_results .chart div {
    width: min(460px, 100%);
  }

  #surgery .sec_safety .lead {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 539px) {
  #surgery .sec_manage p.lead {
    font-size: 1.8rem;
    text-align: left;
  }
  #surgery .sec_manage p.lead br {
    display: none;
  }
}


/**
  #overview
  病院概要
**/
#overview .subpage_mv {
  background-image: url('../images/overview/hero_overview.jpg');
}

#overview .sec_philosophy .inner {
  width: min(780px, calc(100% - 40px));
}
#overview .sec_philosophy .lead {
  margin-bottom: 110px;
}
#overview .sec_philosophy .lead p {
  font-size: 2rem;
  font-weight: 500;
  line-height: calc(38 / 20);
}
#overview .sec_philosophy .lead p:not(:last-of-type) {
  margin-bottom: 2em;
}
#overview .sec_philosophy ol {
  margin-bottom: 40px;
}
#overview .sec_philosophy .signature {
  text-align: right;

  font-size: 2rem;
  line-height: calc(32 / 20);
}
#overview .sec_philosophy .signature span {
  display: inline-block;
  margin-left: .5em;
  font-size: 2.2rem;
  font-weight: 700;
}

#overview .sec_about {
  margin: 0 calc(50% - 50vw);
  background: var(--bg-blue2);
}
#overview .sec_about .exterior {
  margin-bottom: 80px;
}
#overview .sec_about table {
  margin: 0 auto;
  width: min(800px, 100%);
}
#overview .sec_about table th {
  border-right: 5px solid var(--bg-blue2);
  width: 20%;
  text-align: center;
  background: #d3e6ff;
}
#overview .sec_about table th,
#overview .sec_about table td {
  border-bottom: 5px solid var(--bg-blue2);
  vertical-align: middle;
}
#overview .sec_about table td {
  padding: 20px;
  background: #fff;
}
#overview .sec_about table td span {
  display: inline-block;
}
#overview .sec_about table td span:first-of-type {
  margin-right: .25em;
}
#overview .sec_about table tr.hours td span:first-of-type {
  margin-right: unset;
}

#overview .sec_addition .inner {
  width: min(800px, calc(100% - 40px));
}
#overview .sec_addition h3 {
  margin-bottom: 30px;
  /* padding: 4px 0 4px 30px; */
  padding-left: 30px;
  width: min(660px, 100%);
  min-height: 40px;
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(90deg, #034196 50%, rgba(255, 255, 255, 0) 100%);

  display: flex;
  align-items: center;
  line-height: 1.1;
  letter-spacing: 0.1em;
}
/* #overview .sec_addition ul {
  margin-left: 90px;
}
#overview .sec_addition ul.designated {
  margin-bottom: 100px;
  column-count: 3;
} */
#overview .sec_addition .designated {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 100px;
}
#overview .sec_addition .designated ul:not(:last-of-type) {
  margin-right: 40px;
}
#overview .sec_addition ul.etc li a {
  /* color: var(--color-blue1); */

  color: #0f82dd;
  text-decoration: underline;
}


a i {
  margin-left: 1em;
}

@media screen and (max-width: 1024px) {
  #overview .subpage_mv {
  background-position: right -200px top;
  }
}

@media screen and (max-width: 767px) {
  #overview .subpage_mv {
  background-position: right -270px top;
  }


  #overview .sec_about table td .w3em,
  #overview .sec_about table td .sat {
    display: block;
  }

  #overview .sec_addition h3 {
    padding: 4px 40px 4px 15px;
    font-size: 1.6rem;
    background: linear-gradient(90deg, #034196 80%, rgba(255, 255, 255, 0) 100%);
  }

  a i {
    margin-left: .3em;
  }
}

@media screen and (max-width: 539px) {
  #overview .subpage_mv {
  background-position: right -370px top;
  }

  #overview .sec_about table th,
  #overview .sec_about table td {
    display: block;
    padding-left: 20px;
    border-right: unset;
    width: 100%;
    text-align: left;

    border-bottom: unset;
  }
  /* #overview .sec_about table td {
    border-bottom: unset;
  } */
}

@media screen and (max-width: 440px) {
  #overview .subpage_mv {
    background-position: right -88px center;
    background-size: 640px 128px;
  }
  #overview .subpage_mv .inner {
    background: linear-gradient(117deg, #3274CD 30%, rgba(50, 116, 205, 0) 40%) no-repeat;
  }
}

@media screen and (max-width: 400px) {
  #overview .subpage_mv {
    background-position: right -105px center;
  }
}

@media screen and (max-width: 375px) {
  #overview .subpage_mv {
    background-position: right -120px center;
  }
}


/**
  #doctors
  医師紹介
**/
#doctors .subpage_mv {
  background-image: url('../images/doctors/hero_doctors.jpg');
}

#doctors .sec_executives .inner,
#doctors .sec_full-time .inner {
  padding-bottom: 150px;
}

#doctors .sec_executives p.notice {
  margin-bottom: 130px;
  text-align: center;
}

#doctors  .gradation-title {
  margin-bottom: 20px;
}

#doctors .sec_executives .executive1 {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-bottom: 120px;
}
#doctors .sec_executives .executive1 > div {
  width: 68%;
}
#doctors .sec_executives .executive1 .gradation-title {
  width: 100%;
}
#doctors .sec_executives h3 {
  display: flex;
  align-items: center;
  column-gap: 20px;
  /* margin-bottom: 20px; */
  margin-bottom: 6px;
}
#doctors .sec_executives h3 span:first-of-type {
  font-size: 2.4rem;
}
#doctors .sec_executives h3 span:nth-of-type(2) {
  font-weight: 400;
}
#doctors .sec_executives .executive1 .qualifications {
  display: flex;
  flex-wrap: wrap;
  column-gap: 30px;
  margin-bottom: 40px;
}
#doctors .sec_executives .executive1 .qualifications li {
  /* white-space: nowrap; */
  letter-spacing: -0.01em;
}
/* #doctors .sec_executives .executive1 ul:first-of-type {
  margin-right: 1em;
} */
#doctors .sec_executives h4 {
  position: relative;
  margin-bottom: 15px;
  padding-left: 23px;
  font-size: 2rem;
  color: var(--color-blue1);
}
#doctors .sec_executives h4::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 8px;
  height: 30px;
  background: var(--color-blue1);
}
#doctors .sec_executives .executive1 h4 ~ p {
  margin-bottom: 1em;
}
#doctors .sec_executives .executive1 h4 ~ p:last-of-type {
  margin-bottom: unset;
}

#doctors .sec_executives .executive1 figure {
  width: 27%;
}

#doctors .sec_executives .executive2,
#doctors [class$="-time"] .inner {
  margin: 0 auto;
  width: min(680px, 100%);
}

#doctors .sec_executives .executive2:not(:last-of-type) {
  margin-bottom: 100px;
}
#doctors .sec_executives .executive2.adviser ul {
  margin-bottom: 40px;
}

#doctors .sec_executives .executive2 .gradation-title {
  width: min(440px, calc(100% - 2em));
}


#doctors [class$="-time"] h2 {
  display: flex;
  align-items: center;
  margin-bottom: 45px;
  padding-left: 30px;
  border: 1px solid var(--color-blue1);
  /* width: 370px; */
  height: 40px;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--color-blue1);
}
#doctors [class$="-time"] .doctor {
  display: flex;
  column-gap: 45px;
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #a2a2a2;
}
#doctors [class$="-time"] .doctor:last-of-type {
  margin-bottom: unset;
}

#doctors [class$="-time"] .doctor > div {
  width: calc(100% - 175px);
}
#doctors .doctor h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 130px;
  height: 30px;
  font-size: 1.7rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #fff;
  background: var(--color-blue1);
}
#doctors .doctor h3.break {
  height: 55px;
  line-height: 1.2;
}
#doctors .doctor h4 {
  display: flex;
  align-items: center;
  column-gap: 20px;
  margin-bottom: 10px;
  font-weight: 400;
  line-height: 1.5;
}
#doctors .doctor h4 span:first-of-type {
  font-size: 2rem;
}
#doctors .doctor h4 span:nth-of-type(2) {
  font-size: 1.4rem;
}

#doctors [class$="-time"] .doctor .position {
  padding-right: 34px;
  line-height: 1;

  margin-bottom: 5px;
}
#doctors [class$="-time"] .doctor .position br.slim {
  display: none;
}

#doctors .doctor .toggle {
  position: relative;
  cursor: pointer;
}
#doctors .doctor .toggle::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  background: url('../images/common/acrd_open-close.png') no-repeat center top / 30px 60px;
}
#doctors .doctor .toggle.on::after {
  background-position: center bottom;
}
#doctors .sec_part-time .doctor ul {
  display: none;
  margin-top: .5em;
}
#doctors .sec_part-time .doctor ul li {
  line-height: calc(26 / 16);
}
#doctors .sec_part-time .doctor ul li:not(:last-of-type) {
  margin-bottom: .5em;
}
#doctors .sec_part-time .doctor ul li.reduce_space {
  letter-spacing: -0.1em;
}

@media screen and (max-width: 1024px) {
  #doctors .subpage_mv {
  background-position: right -200px top;
  }
}

@media screen and (max-width: 767px) {
  #doctors .subpage_mv {
    background-position: right -300px top;
  }

  #doctors .subpage_mv {
  background-position: right -200px top;
  }

  #doctors .sec_executives .inner,
  #doctors .sec_full-time .inner {
    padding-bottom: 100px;
  }

  #doctors .sec_executives p.notice {
    margin-bottom: 80px;
  }

  #doctors .sec_executives .executive1 {
    flex-direction: column-reverse;
    row-gap: 20px;
    margin-bottom: 60px;
  }
  #doctors .sec_executives .executive1 > div {
    width: 100%;
  }
  #doctors .sec_executives .executive1 figure {
    width: min(50%, 270px);

    margin: 0 auto;
  }
  #doctors .sec_executives .executive2:not(:last-of-type) {
    margin-bottom: 60px;
  }

  #doctors [class$="-time"] .inner {
    width: min(680px, calc(100% - 40px));
  }
  /* #doctors [class$="-time"] .doctor .position {
  } */
}

@media screen and (max-width: 539px) {
  #doctors .subpage_mv {
    background-position: right -230px top;
  }

  #doctors .sec_executives p.notice {
    text-align: left;
  }

  #doctors [class$="-time"] .doctor {
    flex-direction: column;
    row-gap: 20px;
  }
  #doctors [class$="-time"] .doctor > div {
    width: 100%;
  }
  #doctors [class$="-time"] .doctor .position {
    line-height: 1.2;
  }
}

@media screen and (max-width: 414px) {
  #doctors  .gradation-title {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 400px) {
  #doctors [class$="-time"] .doctor .position br.slim {
    display: block;
  }
}

/**
  #home-care
  在宅関連施設
**/
#home-care .subpage_mv {
  background-image: url('../images/home-care/hero_home-care.jpg');
}

#home-care .basic_info {
  display: flex;
  align-items: center;
  margin: 0 auto 100px;
  width: 705px;
  height: 190px;
}
#home-care .basic_info ul {
  margin-right: 40px;
  padding-right: 40px;
  border-right: 1px solid var(--main-text);
  width: 380px;
}
#home-care .basic_info ul li {
  font-size: 2.6rem;
  font-weight: 500;
  line-height: calc(59 / 26);

}
#home-care .basic_info hr {
  transform: rotate(90deg);
  border: 0;
  width: 100%;
  height: 1px;
  background: var(--main-text);
}
#home-care .basic_info p {
  font-size: 1.8rem;
  line-height: calc(32 / 18);
}
#home-care .basic_info p.address {
  line-height: calc(26 / 18);
}
#home-care .basic_info p.address span {
  display: block;
}
#home-care .basic_info p.tel span:nth-of-type(2) {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: calc(32 / 24);
}
#home-care .basic_info p.tel span,
#home-care .basic_info p.fax span,
#home-care .basic_info p.hours span {
  display: inline-block;
}
#home-care .basic_info p.tel span:first-of-type,
#home-care .basic_info p.fax span:first-of-type,
#home-care .basic_info p.hours span:first-of-type {
  margin-right: 8px;
}

#home-care .symbiosis h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 16px;
  margin-bottom: 14px;
  height: 136px;
  font-size: 3.8rem;
  font-weight: 500;
  background: url('../images/common/bg_heading_beige.png') no-repeat center / contain;
}
#home-care .symbiosis h3 span:nth-of-type(2) {
  display: flex;
  column-gap: 16px;
}
#home-care .symbiosis p.lead {
  display: flex;
  align-items: center;
  margin: 0 auto 70px;
  padding-left: 210px;
  width: 510px;
  height: 140px;
  font-size: 2rem;
  line-height: calc(34 / 20);
  text-align: center;
  background: url('../images/home-care/illust_01.png') no-repeat left center / contain;
}


#home-care .service h4 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 40px;
  height: 50px;
  font-size: 2.6rem;
  font-weight: 500;
  background: #fcf7da;
}
#home-care .service p {
  padding-left: 400px;
  height: 180px;
}
#home-care .plan,
#home-care .nursing {
  margin-bottom: 80px;
}
#home-care .care {
  margin-bottom: 160px;
}
#home-care .plan p {
  background: url('../images/home-care/plan.png') no-repeat left top / 368px 180px;
}
#home-care .nursing p {
  background: url('../images/home-care/nursing.png') no-repeat left top / 368px 180px;
}
#home-care .care p {
  background: url('../images/home-care/care.png') no-repeat left top / 368px 180px;
}


#home-care .area_map {
  margin-bottom: 100px;
}
#home-care .area_map .illust {
  position: relative;
}
#home-care .area_map .illust img {
  width: 100%;
  height: auto;
}
/* #home-care .area_map .illust a:hover {
  opacity: .9;
}
#home-care .area_map .illust .map-camera {
  position: absolute;
  width: 3.6%;
  aspect-ratio: 35 / 29;
}
#home-care .area_map .illust .cam-01 {
  top: 10%;
  left: 23%;
}
#home-care .area_map .illust .cam-02 {
  top: 10%;
  left: 47.5%;
}
#home-care .area_map .illust .cam-03 {
  top: 16%;
  left: 51%;
}
#home-care .area_map .illust .cam-04 {
  top: 26%;
  left: 51%;
} */

#home-care .google_map iframe {
  width: 100%;
  height: 500px;
}

#home-care .sec_importants ul {
  margin: 0 auto;
  width: fit-content;
}
#home-care .sec_importants ul li::before {
  top: 4px;
}
#home-care .sec_importants ul li a {
  /* color: var(--color-blue1); */

  color: #0f82dd;
  text-decoration: underline;
  font-size: 2rem;
}

@media screen and (max-width: 1280px) {
  #home-care .subpage_mv {
  background-position: right -240px top;
  }
}

@media screen and (max-width: 767px) {
  #home-care .subpage_mv {
  background-position: right -300px top;
  }

  #home-care .basic_info {
    flex-direction: column;
    row-gap: 20px;
    margin-bottom: unset;
    width: fit-content;
    height: auto;
  }
  #home-care .basic_info ul {
    margin: unset;
    padding: unset;
    border: unset;
    width: fit-content;
  }

  #home-care .symbiosis h3 {
    font-size: 2.6rem;
  }

  #home-care .service h4 {
    margin-bottom: 20px;
    font-size: 2rem;
  }
  #home-care .service p {
    padding-left: 260px;
    height: auto;
    background-size: 240px 117px;
  }
  #home-care .plan,
  #home-care .nursing,
  #home-care .care {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 539px) {
  #home-care .subpage_mv {
  background-position: right -390px top;
  }

  #home-care .subpage_mv {
  background-position: right -190px top;
  }

  #home-care .basic_info ul li {
    font-size: 2.4rem;
  }

  #home-care .symbiosis h3 {
    font-size: 2.2rem;
  }
  #home-care .symbiosis p.lead {
    padding-bottom: 160px;
    padding-left: unset;
    width: 100%;
    height: unset;
    font-size: 1.8rem;
    text-align: left;
    background-position: center bottom;
    background-size: 160px 140px;
  }
  #home-care .symbiosis p.lead br {
    display: none;
  }

  #home-care .service p {
    padding-bottom: 140px;
    padding-left: unset;
    background-position: center bottom;
  }
}

@media screen and (max-width: 440px) {
  #home-care .symbiosis h3 {
    font-size: 1.9rem;
  }
}

/**
  #recruit
  採用情報
**/
#recruit .subpage_mv {
  background-image: url('../images/recruit/hero_recruit.jpg');
}
#recruit .section-title1 span:first-of-type {
  color: var(--main-text);
}

#recruit .sec_guideline .details {
  display: flex;
  /* justify-content: center;
  column-gap: 60px; */
  justify-content: space-between;
  margin-bottom: 70px;
}
#recruit .sec_guideline .details figure,
#recruit .sec_guideline .details .description {
  width: 460px;
}
#recruit .sec_guideline .details .description p {
  margin-bottom: 40px;
  font-size: 2rem;
  line-height: calc(32 / 20);
}
#recruit .sec_guideline .details .description ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  width: 155px;
  height: 40px;
  color: #fff;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  line-height: 1;
  background: var(--color-blue2);
}
#recruit .sec_guideline .details .description ul li:not(:last-of-type) {
  margin-bottom: 20px;
}
/* #recruit .sec_guideline .details .description ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  width: 155px;
  height: 40px;
  color: #fff;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  line-height: 1;
  background: var(--color-blue2);
} */
#recruit .sec_guideline .contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  padding: 25px 0 30px;
  border: 2px solid var(--color-blue2);
  border-radius: 13px;
  width: min(780px, 100%);
  background: #fff6f6;
}
#recruit .sec_guideline .contact p {
  color: var(--color-blue1);
}
#recruit .sec_guideline .contact p.message {
  font-size: 2.4rem;
  font-weight: 500;
}
#recruit .sec_guideline .contact p.tel {
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: calc(48 / 36);
}
#recruit .sec_guideline .contact p.tel span {
  font-size: 2.4rem;
  font-weight: 400;
  letter-spacing: unset;
}

#recruit .sec_features {
  margin: 0 calc(50px - 50vw);
  background: var(--bg-blue2);
}
#recruit .sec_features .inner {
  width: min(980px, calc(100% - 40px));
}
#recruit .sec_features dl {
  margin: 0 auto;
  width: min(800px, 100%);
}
#recruit .sec_features dl div:not(:last-of-type) {
  margin-bottom: 56px;
}
#recruit .sec_features dl dt {
  /* margin-bottom: 10px;
  font-size: 2.2rem;
  font-weight: 500; */
  position: relative;
  margin-bottom: 24px;
  padding-left: 23px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: var(--color-blue1);
}
#recruit .sec_features dl dt::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 8px;
  height: 30px;
  background: var(--color-blue1);
}
#recruit .sec_features dl dd {
  /* padding-left: 90px; */
  padding-left: 24px;
}

/* #recruit .sec_application {
  margin: 0 calc(50px - 50vw);
  background: var(--bg-blue2);
} */
#recruit .sec_application .inner {
  /* margin: 0 auto;
  width: min(800px, calc(100% - 40px)); */
  margin: 100px auto 150px;
  padding: 100px 0;
  border: 1px solid #222;
  width: min(800px, calc(100% - 40px));
}
#recruit .sec_application ul {
  margin: 0 auto;
  width: fit-content;
}
#recruit .sec_application ul li {
  /* font-size: 2.2rem;
  line-height: calc(40 / 22); */
  font-size: 1.8rem;
  line-height: calc(32 / 18);
}
#recruit .sec_application ul li:not(:last-of-type) {
  margin-bottom: .7em;
}

@media screen and (max-width: 1024px) {
  #recruit .subpage_mv {
    background-position: right center;
    background-size: auto 250px;
  }

  #recruit .sec_guideline .details figure,
  #recruit .sec_guideline .details .description {
    width: 47%;
  }

  #recruit .sec_features {
    margin: unset;
  }
  /* #recruit .sec_features dl dd {
    padding-left: 23px;
  } */
}

@media screen and (max-width: 767px) {
  #recruit .subpage_mv {
    background-position: right -10px center;
    background-size: auto 130px;
  }

  #recruit .sec_guideline .details {
    flex-direction: column-reverse;
    align-items: center;
    row-gap: 20px;
  }
  #recruit .sec_guideline .details figure {
    width: 320px;
  }
  #recruit .sec_guideline .details .description {
    width: 100%;
  }
  #recruit .sec_guideline .details .description p {
    margin: 0 auto 20px;
    width: fit-content;
    font-size: 1.8rem;
  }
  #recruit .sec_guideline .details .description ul {
    display: flex;
    /* flex-wrap: wrap;
    justify-content: center;
    column-gap: 20px; */
    flex-direction: column;
    align-items: center;
  }
  #recruit .sec_guideline .details .description ul li:not(:last-of-type) {
    margin-bottom: 10px;
  }

  #recruit .sec_guideline .contact p.message {
    font-size: 2rem;
  }
  #recruit .sec_guideline .contact p.tel {
    font-size: 3rem;
  }
  #recruit .sec_guideline .contact p.tel span {
    font-size: 1.6rem;
  }

  #recruit .sec_features dl div:not(:last-of-type) {
    margin-bottom: 40px;
  }
  #recruit .sec_features dl dt {
    margin-bottom: 16px;
    font-size: 1.8rem;
  }

  #recruit .sec_application .inner {
    padding: 50px 20px 40px;
  }
  #recruit .sec_application ul li {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 539px) {
  #recruit .sec_guideline .details .description ul li a {
    font-size: 2rem;
  }

  #recruit .sec_guideline .contact p.message {
    font-size: 1.6rem;
  }
  #recruit .sec_guideline .contact p.tel {
    font-size: 2.4rem;
  }
  #recruit .sec_guideline .contact p.tel span {
    display: block;
    font-size: 1.6rem;

    text-align: right;
  }
  #recruit .sec_guideline .contact {
    padding: 16px;
  }

  #recruit .sec_application ul li {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 414px) {
  #recruit .sec_guideline .contact p.message {
    font-size: 1.3rem;
  }
}


/**
  #access
  交通アクセス・駐車場
**/
#access .subpage_mv {
  background-image: url('../images/access/hero_access.jpg');
}

#access dl.address {
  margin-bottom: 100px;
}
#access dl.address dt,
#access dl.address dd {
  text-align: center;
}
#access dl.address dt span,
#access dl.address dd span {
  display: inline-block;
}
#access dl.address dt {
  font-size: 2.2rem;
  font-weight: 700;
}
#access dl.address dd {
  font-size: 2rem;
}


#access .visiting {
  margin-bottom: 70px;
}
#access .visiting h3,
#access .area_map h3,
#access .google_map h3 {
  margin-bottom: 20px;
}

#access .visiting p,
#access .cars .notice h4 {
  margin-left: 30px;
  font-size: 1.8rem;
  line-height: calc(30 / 18);
}

#access .cars .notice {
  margin-top: 20px;
}
#access .cars .notice h4 {
  margin-bottom: 8px;
}
#access .cars .notice h4,
#access .cars .notice ul li {
  color: var(--color-red1);
}
#access .cars .notice ul {
  margin-left: 50px;
}
#access .cars .notice ul li {
  line-height: calc(26 / 16);
}
#access .cars .notice ul li:not(:last-child) {
  margin-bottom: 8px;
}

#access .area_map {
  margin-bottom: 100px;
}
#access .area_map .illust {
  position: relative;
}
#access .area_map .illust a:hover {
  opacity: .9;
}
#access .area_map .illust .map-camera {
  position: absolute;
  width: 3.6%;
  aspect-ratio: 35 / 29;
}
#access .area_map .illust .cam-01 {
  /* top: 9.4%; */
  top: 10.7%;
  left: 30%;
}
#access .area_map .illust .cam-02 {
  /* top: 9.4%; */
  top: 10.7%;
  left: 54.5%;
}
#access .area_map .illust .cam-03 {
  /* top: 11.7%; */
  top: 13.3%;
  left: 58.2%;
}
#access .area_map .illust .cam-04 {
  /* top: 16%; */
  top: 18%;
  left: 58.2%;
}
#access .area_map .illust .cam-05 {
  /* top: 18%; */
  top: 20.5%;
  left: 65.9%;
}


#access .google_map iframe {
  width: 100%;
  height: 500px;
}

@media screen and (max-width: 767px) {
  #access dl.address dd {
    font-size: 1.8rem;
  }

  #access .visiting p, #access .cars .notice h4 {
    margin-left: 10px;
  }
  #access .cars .notice ul {
    margin-left: 30px;
  }
}

/**
  #sitemap
  サイトマップ
**/
/* #sitemap .subpage_mv {
  background-image: url('../images/sitemap/hero_sitemap.jpg');
} */

#sitemap .sec_sitemap .inner {
  width: min(780px, calc(100% - 40px));
}

#sitemap .sec_sitemap #menu-sitemap {
  column-count: 2;
}
#sitemap .sec_sitemap #menu-sitemap > li {
  margin-bottom: 1em;
}

#sitemap .sec_sitemap #menu-sitemap ul.sub-menu {
  margin-left: 1em;
}
#sitemap .sec_sitemap a[href] {
  border-bottom: 1px dotted var(--color-blue1);
}

@media screen and (max-width: 767px) {
	#access .subpage_mv {
			background-position: right -20px top;
	}
}
@media screen and (max-width: 539px) {
    #access .subpage_mv {
        background-position: right -100px top;
    }
  #sitemap .sec_sitemap #menu-sitemap {
    margin: 0 auto;
    column-count: unset;
  }
}


/**
  Contact
**/
#contact .wpcf7 table th {
  text-align: left;
}

#contact  .wpcf7 input.post_number1 {
  width: 3em;
}
#contact  .wpcf7 input.post_number2 {
  width: 4em;
}


/**
  privacy-policy
**/
#privacy-policy .group {
  margin-bottom: 3em;
}
#privacy-policy .group  p {
  margin-bottom: 1em;
}
