@charset "utf-8";
/*========================================================================================================================


  ◇◆◇ 受診の流れ ◇◆◇
  
  
========================================================================================================================*/

/*----------------------------------------------------------------------------------------------------

  診療時間
  
----------------------------------------------------------------------------------------------------*/
#hrs {
  padding-top: 50px;
  padding-bottom: 50px;
  max-width: 660px;
}
#hrs .bikou {
  padding-top: 0.75em;
}
@media screen and (max-width:640px) {
  #hrs {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  #hrs .hrsTbl {
    min-width: 400px;
    font-size: 87.5%;
  }
  #hrs .bikou {
    padding-top: 0.75rem;
  }
}

/*----------------------------------------------------------------------------------------------------

  初診・再診
  
----------------------------------------------------------------------------------------------------*/
#forPt-cols {
  display: flex;
  flex-direction: column;
  row-gap: 40px;
  padding-bottom: 60px;
}
.forPt_hd {
  background-color: #32a2a2;
  color: #fff;
  font-family: "NotoSerif";
  font-weight: 400;
  font-size: 131.3%;
  padding: 0.5em 1em;
}
.forPt_body {
  padding: 25px;
  background-color: #FFF;
}
.forPt_photo {
  max-width: 360px;
  line-height: 0;
  display: inline-block;
  text-align: center;
  float: right;
  margin-left: 25px;
  margin-bottom: 1.5rem;
}
.forPt_txt .forPt_ttl:not(:first-of-type) {
  padding-top: 2rem;
}
.forPt_txt ul {
  list-style: none;
}
.forPt_txt li .no {
  width: 1.5em;
  display: inline-block;
  margin-left: -1.5em;
}
.forPt_txt li {
  padding-left: 1.5em;
  padding-top: 0.5em;
}
.forPt_txt ul:first-child li:first-child { padding-top:0; }
@media screen and (max-width:640px) {
  #forPt-cols {
    row-gap: 1.5rem;
    padding-bottom: 2rem;
  }
  .forPt_hd {
    padding: 0.5rem 1rem;
  }
  .forPt_body {
    padding: 1.25rem;
  }
  .forPt_photo {
    max-width: 100%;
    display :block;
    text-align: center;
    float: none;
    margin-left: 0;
  }
  .forPt_photo img {
    width: 100%;
    max-width:400px;
    height: clamp(120px, calc(200 / 640 * 100vw), 200px);
    object-fit: cover;
  }
  #forPt-cols .col:first-of-type .forPt_photo img {
    object-position: 0 100%;
  }
}

/*----------------------------------------------------------------------------------------------------

  保険適用について
  
----------------------------------------------------------------------------------------------------*/
#hoken-warp {
  background: url(../image/hoken_bg.png) no-repeat center bottom;
  background-size: 1600px auto;
  background-color: #ebe9df;
  padding-top: 50px;
  padding-bottom: 60px;
}
#hoken {
  position: relative;
  box-sizing: border-box;
  padding-left: 500px;
}
.hoken_stxt {
  padding-top: 25px;
}
#hoken_list {
  list-style: none;
  display: inline-block;
  margin-right: 1.5em;
  margin-top: 20px;
}
#hoken_list li {
  color: #696550;
  background: url(../image/cbox_s.png) no-repeat center left;
  padding-left: 40px;
  margin-top: 0.5em;
}
#hoken_list li span {
  font-size: 112.5%;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  display: inline-block;
  border-bottom: 1px dotted #8f8969;
}
@media screen and (max-width:640px) {
  #hoken-warp {
    padding-top: 2rem;
    padding-bottom: 2.5rem;
    background-image: none;
  }
  #hoken {
    padding-left: 0.75rem;
  }
  #hoken .l-hdline {
    text-align: center;
  }
  .hoken_stxt {
    padding-top: 1.25rem;
  }
  .hoken_stxt br {
    display: none;
  }
  #hoken_list {
    margin-right: 0.75rem;
    margin-top: 0.75rem;
  }
  #hoken_list li {
    background: url(../image/cbox.png) no-repeat center left;
    background-size: 30px 27px;
  }
}
/*----------------------------------------------------------------------------------------------------

  写真
  
----------------------------------------------------------------------------------------------------*/
#photoGP {
  text-align: center;
  padding-top: 60px;
  padding-bottom: 60px;
}
#photoGP ul {
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  list-style: none;
  padding-bottom: 40px;
}
#photoGP li {
  max-width: 400px;
  float: left;
  margin: 0 15px;
  box-sizing: border-box;
}
@media screen and (max-width:640px) {
  #photoGP {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  #photoGP ul {
    display: block;
    padding-bottom: 1.5rem;
    margin-left: -0.75rem;
  }
  #photoGP li {
    width: 50%;
    margin: 0;
    padding-left: 0.75rem;
    text-align: left;
    font-size: 93.8%;
    line-height: 1.5;
  }
  #photoGP li p {
    padding-top: 0.25rem;
    padding-right: 0.5rem;
  }
}
#photoGP .sodan {
  max-width: 830px;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid #cdc8b1;
  border-bottom: 1px solid #cdc8b1;
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  color: #8e8868;
}
.pc-none {
  display: none;
}
@media screen and (max-width:640px) {
  .pc-none {
    display: block;
  }
}