/* Scss Document */
/* Scss Document */
#introduce {
  padding-top: 50px;
}
#introduce .introduce_wrap {
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#introduce .introduce_content {
  position: relative;
  width: 355px;
  padding: 40px 40px 25px;
  border: #5DC2D0 1px solid;
  border-radius: 5px;
}
#introduce .introduce_content .introduce_mttl {
  position: absolute;
  top: -15px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  padding: 0.3em 1.5em;
  background: #5DC2D0;
  border-radius: 3px;
  color: #FFF;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.2em;
}
#introduce .introduce_content .introduce_text {
  color: #5DC2D0;
  font-size: 1.4rem;
}
#introduce .introduce_content.houshin {
  padding: 60px 40px 25px;
}

#photo, #facility {
  padding-top: 50px;
}
#photo .photo_list, #facility .photo_list {
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#photo .photo_list_item, #facility .photo_list_item {
  width: 335px;
  margin-bottom: 40px;
}
#photo .photo_list .photo_ttl, #facility .photo_list .photo_ttl {
  font-size: 1.6rem;
  font-weight: normal;
  text-align: center;
}
#photo .photo_list .photo_img, #facility .photo_list .photo_img {
  margin-bottom: 10px;
}
#photo .photo_list .photo_img.dummy, #facility .photo_list .photo_img.dummy {
  opacity: 0.2;
}
#photo .photo_list .photo_text, #facility .photo_list .photo_text {
  font-size: 1.3rem;
}

#flow {
  padding-top: 50px;
}
#flow .flow_list {
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#flow .flow_list_item {
  position: relative;
  width: 335px;
  margin-bottom: 70px;
  padding: 40px 40px 25px;
  border: #5DC2D0 1px solid;
  border-radius: 5px;
}
#flow .flow_list_item .flow_mttl {
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background: #5DC2D0;
  color: #FFF;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  line-height: 40px;
  text-align: center;
  text-indent: 0.2em;
}
#flow .flow_list_item .flow_text {
  color: #5DC2D0;
  font-size: 1.4rem;
}
#flow .flow_list_item:nth-child(1) {
  padding: 55px 40px;
}
#flow .flow_list_item:nth-child(1) .flow_text {
  font-size: 1.8rem;
  text-align: center;
}
#flow .flow_list_item:nth-child(1):after {
  content: "";
  width: 27px;
  height: 20px;
  background: url("../images/about/flow_arrow.png") top center no-repeat;
  position: absolute;
  top: 50%;
  right: -50px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
#flow .flow_list_item:nth-child(2):after {
  content: "";
  width: 27px;
  height: 20px;
  background: url("../images/about/flow_arrow.png") top center no-repeat;
  position: absolute;
  bottom: -45px;
  left: -55px;
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
}
#flow .flow_list_item:nth-child(3) {
  padding: 45px 40px;
}
#flow .flow_list_item:nth-child(3) .flow_text {
  font-size: 1.6rem;
}
#flow .flow_list_item:nth-child(3):after {
  content: "";
  width: 27px;
  height: 20px;
  background: url("../images/about/flow_arrow.png") top center no-repeat;
  position: absolute;
  top: 50%;
  right: -50px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}

@media screen and (max-width: 640px) {
  #introduce {
    padding-top: 7.1428571429vw;
    /*(50/700)*100vw*/
  }
  #introduce .introduce_wrap {
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
  #introduce .introduce_content {
    width: 100%;
    margin-bottom: 8.5714285714vw;
    padding: 5.7142857143vw 5.7142857143vw 4.2857142857vw;
  }
  #introduce .introduce_content .introduce_mttl {
    font-size: 4vw;
    /*(36/700)*100vw*/
  }
  #introduce .introduce_content .introduce_text {
    font-size: 3.4285714286vw;
    /*(24/700)*100vw*/
  }
  #introduce .introduce_content.houshin {
    margin-bottom: 0;
    padding: 5.7142857143vw 5.7142857143vw 4.2857142857vw;
  }

  #photo, #facility {
    padding-top: 7.1428571429vw;
    /*(50/700)*100vw*/
  }
  #photo .photo_list_item, #facility .photo_list_item {
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    -o-display: flex;
    display: -webkit-box;
    display: flex;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    margin-bottom: 5.7142857143vw;
    /*(40/700)*100vw*/
  }
  #photo .photo_list .photo_ttl, #facility .photo_list .photo_ttl {
    width: 100%;
    font-size: 4.2857142857vw;
    /*(30/700)*100vw*/
    text-align: left;
  }
  #photo .photo_list .photo_img, #facility .photo_list .photo_img {
    width: 48%;
    margin-bottom: 0;
  }
  #photo .photo_list .photo_text, #facility .photo_list .photo_text {
    width: 48%;
    font-size: 3.4285714286vw;
    /*(24/700)*100vw*/
    line-height: 1.4;
  }

  #flow {
    padding-top: 7.1428571429vw;
    /*(50/700)*100vw*/
  }
  #flow .flow_list {
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
  #flow .flow_list_item {
    width: 100%;
    margin-bottom: 8.5714285714vw;
    padding: 5.7142857143vw 5.7142857143vw 4.2857142857vw;
  }
  #flow .flow_list_item .flow_mttl {
    top: -3vw;
    width: 7.1428571429vw;
    /*(50/700)*100vw*/
    height: 7.1428571429vw;
    /*(50/700)*100vw*/
    border-radius: 3.5714285714vw;
    /*(20/700)*100vw*/
    font-size: 4.2857142857vw;
    /*(30/700)*100vw*/
    line-height: 7.1428571429vw;
    /*(40/700)*100vw*/
  }
  #flow .flow_list_item .flow_text {
    font-size: 3.4285714286vw;
    /*(24/700)*100vw*/
  }
  #flow .flow_list_item:nth-child(1) {
    padding: 5.7142857143vw 5.7142857143vw 4.2857142857vw;
  }
  #flow .flow_list_item:nth-child(1) .flow_text {
    font-size: 3.4285714286vw;
    /*(24/700)*100vw*/
  }
  #flow .flow_list_item:nth-child(1):after {
    width: 4.2857142857vw;
    /*(30/700)*100vw*/
    background-size: contain;
    background-position: center center;
    top: auto;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -5vw;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  #flow .flow_list_item:nth-child(2):after {
    width: 4.2857142857vw;
    /*(30/700)*100vw*/
    background-size: contain;
    background-position: center center;
    top: auto;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -5vw;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  #flow .flow_list_item:nth-child(3) {
    padding: 5.7142857143vw 5.7142857143vw 4.2857142857vw;
  }
  #flow .flow_list_item:nth-child(3) .flow_text {
    font-size: 3.4285714286vw;
    /*(24/700)*100vw*/
  }
  #flow .flow_list_item:nth-child(3):after {
    width: 4.2857142857vw;
    /*(30/700)*100vw*/
    background-size: contain;
    background-position: center center;
    top: auto;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -5vw;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  #flow .flow_list_item:last-child {
    margin-bottom: 0;
  }
}