@charset "UTF-8";
.mv {
  width: 100%;
  background: url("../img/index/mv.jpg") no-repeat right center;
  background-size: auto 100%; }
  .mv p {
    color: #ffffff;
    margin: 0 auto; }
    .mv p + p {
      border-top: 1px solid #ffffff;
      display: inline-block; }

.introduction {
  background: url("../img/index/bg_intro.jpg") no-repeat center/cover;
  text-align: center; }
  .introduction > p:first-child {
    letter-spacing: 0.03em; }
  .introduction > p:first-child span {
    background-position: top left -6px;
    padding-top: .4em;
    background-repeat: repeat-x;
    background-size: 1.2em .3em;
    background-image: radial-gradient(0.16em 0.16em at center center, #ec8cb7, #ec8cb7 100%, transparent); }
    .introduction > p:first-child span + span {
      background-image: radial-gradient(0.16em 0.16em at center center, #d53663, #d53663 100%, transparent); }
  .introduction p, .introduction p strong {
    font-weight: 500; }
  .introduction p strong {
    background: -moz-linear-gradient(top, rgba(240, 180, 194, 0) 0%, rgba(240, 180, 194, 0) 75%, #f0b4c2 76%, #f0b4c2 90%, rgba(240, 180, 194, 0) 91%, rgba(240, 180, 194, 0) 100%);
    background: -webkit-linear-gradient(top, rgba(240, 180, 194, 0) 0%, rgba(240, 180, 194, 0) 75%, #f0b4c2 76%, #f0b4c2 90%, rgba(240, 180, 194, 0) 91%, rgba(240, 180, 194, 0) 100%);
    background: linear-gradient(to bottom, rgba(240, 180, 194, 0) 0%, rgba(240, 180, 194, 0) 75%, #f0b4c2 76%, #f0b4c2 90%, rgba(240, 180, 194, 0) 91%, rgba(240, 180, 194, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00f0b4c2', endColorstr='#00f0b4c2',GradientType=0 );
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00f0b4c2', endColorstr='#f0b4c2',GradientType=0 ); }
  .introduction ul li {
    display: inline-block;
    width: 210px; }
    .introduction ul li:nth-child(1) a {
      border: 2px solid #d53663;
      background: #ffffff; }
    .introduction ul li:nth-child(2) a {
      border: 2px solid #ec8cb7;
      background: #ec8cb7; }

.leadtarget {
  background: #eee; }

.leadbox01 {
  display: flex;
  justify-content: center; }
  .leadbox01 li {
    text-align: center; }
    .leadbox01 li a {
      color: #000; }
      .leadbox01 li a figcaption {
        color: #d53663; }
      .leadbox01 li a img {
        border-radius: 50%; }

.latestpost {
  margin: 0 auto;
  display: flex; }
  .latestpost h2 {
    color: #00478b;
    font-weight: 600; }
    .latestpost h2::before {
      font-family: "Font Awesome 5 Free";
      content: "\f05a"; }
  .latestpost .accordion01 article {
    border-bottom: 1px solid #d3d3d3; }
    .latestpost .accordion01 article time {
      color: #d53663;
      font-family: "Alice","Times New Roman","Times",serif; }
    .latestpost .accordion01 article header {
      font-weight: 600;
      position: relative; }
      .latestpost .accordion01 article header::before, .latestpost .accordion01 article header::after {
        background: #ec8cb7;
        content: "";
        display: block;
        position: absolute;
        transition: .5s; }
      .latestpost .accordion01 article header::before {
        transform: rotate(0deg); }
      .latestpost .accordion01 article header::after {
        transform: rotate(90deg); }
      .latestpost .accordion01 article header.active::before, .latestpost .accordion01 article header.active::after {
        transform: rotate(-180deg); }
    .latestpost .accordion01 article div {
      line-height: 2em; }
  .latestpost .wp-block-button a {
    background: #ec8cb7;
    transition: .3s; }
    .latestpost .wp-block-button a:hover {
      background: #d53663; }
    .latestpost .wp-block-button a::after {
      font-family: "Font Awesome 5 Free";
      content: "\f105";
      font-weight: bold; }

/*  	PC STYLE  *************************************************************/
@media screen and (min-width: 751px) {
  .mv {
    height: 60vh;
    padding: 8em 6em 0; }
    .mv p, .mv strong {
      font-weight: 500; }
    .mv p:first-child {
      font-size: 42px;
      padding: 15px 0; }
      .mv p:first-child + p {
        padding: 15px 5px 0 0; }
      .mv p:first-child strong {
        font-size: 46px; }

  .mvlead {
    display: flex;
    justify-content: center;
    margin: -70px auto;
    min-width: 1100px;
    max-width: 1400px; }
    .mvlead li {
      min-width: 190px;
      max-width: 220px;
      text-align: center;
      margin: 0 20px; }
      .mvlead li a {
        font-size: 20px;
        font-weight: 600;
        letter-spacing: .6em;
        text-indent: .6em;
        position: relative;
        width: 100%;
        transition: .3s;
        top: 0; }
        .mvlead li a:hover {
          top: -10px; }
      .mvlead li a::before {
        border-radius: 15px;
        width: 100%;
        height: 100px;
        box-shadow: 0px 0px 6px 3px rgba(0, 0, 0, 0.2); }
      .mvlead li a::after {
        width: 180px;
        height: 180px;
        position: absolute;
        top: -180px;
        left: 50%;
        margin-left: -60px; }
      .mvlead li a::after, .mvlead li a::before {
        content: "";
        display: inline-block;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center; }
    .mvlead li[title='外来診察'] > a {
      letter-spacing: .1em;
      text-indent: .1em; }
    .mvlead li[title='託児所'] > a {
      letter-spacing: .3em;
      text-indent: .3em; }
    .mvlead li[title='外来診察'] a::after {
      background-image: url("../img/index/lead01.png"); }
    .mvlead li[title='入院'] a::after {
      background-image: url("../img/index/lead02.png"); }
    .mvlead li[title='分娩'] a::after {
      background-image: url("../img/index/lead03.png"); }
    .mvlead li[title='教室'] a::after {
      background-image: url("../img/index/lead04.png"); }
    .mvlead li[title='託児所'] a::after {
      background-image: url("../img/index/lead05.png"); }
    .mvlead li:nth-child(2n+1) a {
      color: #00478b; }
    .mvlead li:nth-child(2n) a {
      color: #d53663; }
    .mvlead li:nth-child(2n+1) a::before {
      background: #00478b; }
    .mvlead li:nth-child(2n) a::before {
      background: #ec8cb7; }

  .introduction {
    padding: 140px 0 0; }
    .introduction p {
      width: 900px;
      margin: 0 auto 2em;
      line-height: 2.6em; }
      .introduction p:first-child {
        font-size: 32px;
        line-height: 2em; }
    .introduction ul {
      padding: 50px 0 80px; }
      .introduction ul li {
        margin: 0 30px; }
        .introduction ul li a {
          display: block;
          border: 10px;
          padding: .5em 1em;
          border-radius: 30px;
          font-size: 17px;
          font-weight: 600;
          width: 210px;
          transition: .5s; }
          .introduction ul li a:hover {
            background: #d53663;
            color: #ffffff; }
      .introduction ul li:nth-child(1) a {
        color: #d53663; }
        .introduction ul li:nth-child(1) a:hover {
          color: #ffffff; }
        .introduction ul li:nth-child(1) a i {
          float: right;
          font-size: 24px;
          top: 1px; }
      .introduction ul li:nth-child(2) a {
        color: #ffffff;
        padding-left: 20px; }
        .introduction ul li:nth-child(2) a:hover {
          border: 2px solid #d53663; }
        .introduction ul li:nth-child(2) a i {
          float: left;
          font-size: 20px;
          top: 3px;
          font-weight: normal; }

  .leadtarget {
    padding: 40px 2em;
    border-bottom: 1px solid #d3d3d3; }

  .leadbox01 {
    display: flex;
    justify-content: center;
    align-content: space-between;
    min-width: 1100px;
    max-width: 1300px;
    margin: 0 auto; }
    .leadbox01 li {
      width: 25%;
      text-align: center;
      border-right: 1px solid #d3d3d3; }
      .leadbox01 li figcaption {
        font-size: 18px;
        padding: 15px 0;
        font-weight: 600;
        letter-spacing: .03em;
        text-indent: .03em; }
        .leadbox01 li figcaption img {
          border: 2px solid transparent; }
      .leadbox01 li a {
        position: relative;
        transition: .3s;
        top: 0; }
        .leadbox01 li a:hover {
          top: -5px; }
          .leadbox01 li a:hover img {
            border: 2px solid #d53663; }
        .leadbox01 li a::after {
          font-family: "Font Awesome 5 Free";
          content: "\f107";
          font-weight: bold;
          color: #d53663;
          font-size: 24px;
          position: relative;
          bottom: -10px; }
      .leadbox01 li p {
        font-size: 14px;
        padding: 0 2em; }
      .leadbox01 li img {
        width: 120px;
        height: auto; }
      .leadbox01 li:last-child {
        border: none; }

  .latestpost {
    min-width: 1100px;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    padding: 50px 0 30px; }
    .latestpost h2 {
      font-size: 24px;
      font-weight: 600;
      width: 240px;
      text-align: center;
      padding: 30px 0 0; }
      .latestpost h2::before {
        margin-right: 8px;
        font-size: 20px; }
    .latestpost .accordion01 {
      width: calc(100% - 240px); }
      .latestpost .accordion01 article {
        padding: 30px; }
        .latestpost .accordion01 article time {
          letter-spacing: 0.05em;
          padding: 0 0 10px;
          display: block; }
        .latestpost .accordion01 article header {
          cursor: pointer; }
          .latestpost .accordion01 article header::before, .latestpost .accordion01 article header::after {
            width: 20px;
            height: 4px;
            border-radius: 2px;
            right: 20px;
            top: 50%;
            margin-top: -2px; }
          .latestpost .accordion01 article header:hover {
            opacity: .8; }
        .latestpost .accordion01 article div {
          font-size: 14px;
          padding: 20px 0 0; }
          .latestpost .accordion01 article div p:last-child {
            text-align: right; }
            .latestpost .accordion01 article div p:last-child a {
              color: #666;
              font-weight: bold;
              padding: 3px 5px;
              display: inline-block; }
              .latestpost .accordion01 article div p:last-child a::after {
                font-family: "Font Awesome 5 Free";
                content: "\f105";
                margin-left: 10px;
                position: relative;
                left: 0;
                transition: .3s; }
              .latestpost .accordion01 article div p:last-child a:hover {
                color: #ec8cb7; }
                .latestpost .accordion01 article div p:last-child a:hover::after {
                  left: 5px; }
        .latestpost .accordion01 article + .wp-block-button {
          padding: 40px 240px 40px 0; }
          .latestpost .accordion01 article + .wp-block-button a {
            padding: 8px 15px 8px 30px;
            font-weight: 600;
            font-size: 16px; }
            .latestpost .accordion01 article + .wp-block-button a::after {
              margin-left: 25px;
              font-size: 22px;
              position: relative;
              top: 3px; }

  .indexbnrlist {
    display: flex;
    justify-content: center;
    align-content: space-between;
    min-width: 1100px;
    max-width: 1300px;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 80px; }
    .indexbnrlist li {
      width: 30%;
      margin: 0 1.5%; } }
/*  	TB/SP STYLE  *************************************************************/
@media screen and (min-width: 751px) and (max-width: 1300px) {
  .mv {
    height: 50vh;
    padding: 5em 6em 0; }

  .indexbnrlist {
    display: flex;
    justify-content: center;
    align-content: space-between;
    min-width: 1100px;
    max-width: 1300px;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 80px; }
    .indexbnrlist li {
      width: 28%;
      margin: 0 2%; }
      .indexbnrlist li img {
        width: 100%;
        height: auto; } }
/*  	SP STYLE  *************************************************************/
@media screen and (max-width: 750px) {
  .leadbox01 {
    display: block; } }
