@charset "utf-8";

/*====================================================================================================

初診の方へ

====================================================================================================*/

h2+p {
  margin-bottom: 20px;
}

h2+.col2_gr {
  margin-top: 40px;
}

h3+p {
  margin-bottom: 20px;
}

h3+.l-gNav-tel {
  text-decoration: none!important;
}

h3+.l-gNav-tel+dl {
  margin-top: 10px;
  margin-bottom: 20px;
}


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

ご予約について

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

@media screen and (min-width:801px) {
  #reserve {
    margin-bottom: 90px;
  }
}

@media screen and (max-width:800px) {
  #reserve {
    margin-bottom: 70px;
  }
}

@media screen and (min-width:1001px) {
  #reserve .col2_gr {
    grid-column-gap: 40px;
  }
}

@media screen and (max-width:1000px) {
  #reserve .col2_gr {
    grid-template-columns: repeat(1, 1fr);
    grid-row-gap: 30px;
  }
}

#reserve .business-time {}

#reserve .business-time {
  display: flex;
  /*align-items: center;*/
  align-items: flex-start;
  flex-wrap: wrap;
}

#reserve .business-time dt {
  width: 90px;
  margin-right: 10px;
}

#reserve .business-time dd {
  width: calc(100% - 100px);
}

#reserve .business-time dt:nth-of-type(1) {
  margin-bottom: 5px;
}

#reserve .business-time dd:nth-of-type(1) {
  margin-bottom: 5px;
}


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

持ち物について

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

.belongings .txt-box ul {
  list-style: none;
}

.belongings .img-box {
  padding-top: 66.666%;
}

.belongings .img-box {
  background-image: url("../../image/contents/first/belongings.jpg");
}

@media screen and (min-width:801px) {
  .belongings {
    grid-column-gap: 60px;
    margin-bottom: 90px;
  }
}

@media screen and (max-width:800px) {
  .belongings {
    grid-row-gap: 30px;
    margin-bottom: 70px;
  }
}


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

診療の流れ

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

#flow ol {
  list-style: none;
}


/*---------------------
流れ
---------------------*/

#flow>h2 {
  text-align: center;
  background: #fff;
}

.flow-list li .img-box {
  padding-top: 50%;
}

.flow-list li:nth-child(1) .img-box {
  background-image: url("../../image/contents/first/flow01.jpg?v=1")
}

.flow-list li:nth-child(2) .img-box {
  background-image: url("../../image/contents/first/flow02.jpg?v=1")
}

.flow-list li:nth-child(3) .img-box {
  background-image: url("../../image/contents/first/flow03.jpg")
}

.flow-list li:nth-child(4) .img-box {
  background-image: url("../../image/contents/first/flow04.jpg")
}

.flow-list li:nth-child(5) .img-box {
  background-image: url("../../image/contents/first/flow05.jpg")
}

.flow-list {
  list-style: none;
  counter-reset: number 0;
}

.flow-list li {
  position: relative;
  background-color: #fff;
}

.flow-list li {
  grid-column-gap: 60px;
}

.flow-list li {
  display: grid;
}

@media screen and (min-width:801px) {
  #flow {
    margin-bottom: 60px;
  }
  .flow-list li {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (max-width:800px) {
  #flow {
    margin-bottom: 40px;
  }
  .flow-list li {
    grid-template-columns: repeat(1, 1fr);
  }
}

.flow-list li .img-box {
  padding-top: 66.666%;
}

.flow-list li:not(:last-child)::after {
  position: absolute;
  content: "";
  display: block;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-color: var(--color-green04) transparent transparent transparent;
}

.flow-list li .tag-hd {
  border-bottom: 2px solid var(--color-blue);
}

.flow-list li h3 {
  margin-bottom: 30px;
}

.flow-list li p {
  margin-bottom: 30px;
}

.flow-list li .tag-hd:before {
  counter-increment: number;
  content: "診療の流れ" counter(number, decimal-leading-zero) "";
}

.flow-list li .col2 {
  display: grid;
}

@media screen and (min-width:801px) {
  #flow>h2 {
    padding-top: 40px;
    padding-bottom: 20px;
  }
  .flow-list li .col2 {
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
  }
  .flow-list li {
    padding-top: 60px;
  }
  .flow-list li h3 {
    line-height: 1.4;
  }
  .flow-list li:not(:last-child)::after {
    border-width: 50px 50px 0 50px;
  }
  .flow-list li:not(:last-child) {
    padding-bottom: 100px;
  }
}

@media screen and (max-width:800px) {
  #flow>h2 {
    padding-top: 60px;
  }
  .flow-list li .col2 {
    grid-template-columns: repeat(1, 1fr);
    grid-row-gap: 30px;
  }
  .flow-list li {
    padding: 30px 0px;
  }
  .flow-list li:not(:last-child)::after {
    border-width: 30px 30px 0 30px;
  }
  .flow-list li:not(:last-child) {
    padding-bottom: 60px;
  }
}

@media screen and (min-width:801px) {
  #next {
    margin-bottom: 60px;
  }
}

@media screen and (max-width:800px) {
  #next {
    margin-bottom: 40px;
  }
}


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

キャンセルについて

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

#cancel {
  position: relative;
  background-color: var(--color-green04);
}

#cancel {
  padding-top: 60px;
  padding-bottom: 60px;
  margin-bottom: 90px;
}

@media screen and (min-width:801px) {
  #cancel {
    padding-top: 60px;
    padding-bottom: 60px;
    margin-bottom: 90px;
  }
}

@media screen and (max-width:800px) {
  #cancel {
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 70px;
  }
}

#cancel .inner {
  position: relative;
  z-index: 1;
  /*background-color: var(--color-white);*/
}

#cancel ul {
 padding-left: 1.5em;
}

#cancel::after {
  position: absolute;
  content: "";
  display: block;
  background-color: var(--color-white);
  /*clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);*/
  max-width: 1280px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  z-index: 0;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

#cancel::before {
  position: absolute;
  content: "";
  display: block;
  background-color: var(--color-white);
  /*clip-path: polygon(0 0, 90% 0, 100% 100%, 10% 100%);*/
  max-width: 1280px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  z-index: 0;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}


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

歯科検診について

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

#dental_examination {
  margin-bottom: 90px;
}

#dental_examination h2 {
  margin-bottom: 40px;
}

#dental_examination ul {
  list-style: none;
}

#dental_examination ul {
  margin-bottom: 40px;
}

@media screen and (min-width:801px) {
  #dental_examination .col2_gr {
    grid-column-gap: 60px;
  }
}

@media screen and (max-width:800px) {
  #dental_examination .col2_gr {
    grid-row-gap: 30px;
  }
}

#dental_examination .col2_gr .img-box {
  padding-top: 66.666%;
}

#dental_examination .col2_gr .img-box {
  background-image: url("../../image/contents/first/reception01.jpg?v=1");
}

/* #dental_examination .col2_gr .img-box:nth-child(2) {
  background-image: url("../../image/contents/first/reception02.jpg");
} */