/*---------------------------------------------
main
---------------------------------------------*/
#main .greeting {
  border-bottom: #ccc solid 1px;
  margin: 0 auto 50px;
  max-width: 1100px;
  padding-bottom: 50px;
  width: 100%;
}

#main .greeting.flex {
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  border-bottom: none;
  justify-content: space-between;
  max-width: 1100px;
  width: 100%;
}

@media screen and (max-width: 767px) {
  #main .greeting.flex {
    -ms-flex-direction: column;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    flex-direction: column;
  }
  #main .greeting.flex .profile {
    margin-bottom: 20px;
    width: 100%;
  }
#main .greeting.flex .img {
  max-width: 624px;
  width: 100%;
	margin: 0 auto;
}
}

#main .box-wrap {
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  margin-bottom: 100px;
	width: 100%;
}

@media screen and (max-width: 767px) {
  #main .box-wrap {
    -ms-flex-direction: column;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    flex-direction: column;
	  margin: 0 auto 50px;
	  width: 90%;
  }
}

#main .box-wrap dl {
  width: 100%;
}

#main .box-wrap dl dt {
	font-size: 2.2rem;
    margin-bottom: 10px;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
  #main .box-wrap dl {
    width: 100%;
  }
}

#main .box-wrap dl dd .txt.last {
  margin-bottom: 0;
}

#main .box-wrap .img img {
  display: block;
}

#main .box-wrap .txt {
	text-align: justify;
	letter-spacing: 0.11em;
}

#main .greeting .head-contents {
  margin-bottom: 30px;
}

.head-contents .txt-box {
	text-align: justify;
	width: 50%;
}

@media screen and (max-width: 767px) {
.head-contents .txt-box {
	width: 100% !important;
}
}

#main .greeting .profile {
  line-height: 2;
}

#main .greeting .sub-ttl {
	font-weight: bold;
}

@media screen and (max-width: 767px) {
#main .greeting .profile {
  line-height: 2;
  margin: 0 auto;
  max-width: 1100px;
  width: 100%;
}
}

#main .greeting .profile .name {
  font-size: 2.2rem;
  margin-bottom: 14px;
}

#main .greeting .profile .name .en {
  font-size: 1.4rem;
  font-weight: bold;
  margin-left: 1em;
}

#main .greeting .profile .subject {
  margin-bottom: 1em;
		font-weight: bold;

}

#main .greeting .profile .subject span {
  font-size: 1.8rem;
	font-weight: normal;
}

#main .greeting .img {
	margin-top: 16px;
}


@media screen and (min-width: 768px) {
#main .greeting .img {
	width: 45%;
}
}

.qualified.mb20 {
	margin-bottom: 20px;
	
}

#main #doctors .table-style {
  margin-bottom: 100px;
  max-width: 800px;
}

#main #doctors .table-style th {
  width: 18%;
}

#main #privacypolicy {
  letter-spacing: 0;
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
#main #privacypolicy {
	width: 90%;
	margin: 0 auto 100px;
}
}

#main #privacypolicy .txt {
  margin-bottom: 50px;
}

#main #privacypolicy .ol-list {
  margin: 0 auto;
  max-width: 1100px;
  width: 100%;
}

#main #access .flex {
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

#main #access .flex .contents {
  width: 48%;
}

@media screen and (max-width: 767px) {
#main #access .flex {
	flex-direction: column;
}

#main #access .flex .contents {
  width: 100%;
}
}


#main #access .flex .contents .txt {
  letter-spacing: 0;
  line-height: 1.6;
  margin-bottom: 1.2em;
}

#main #access .flex .contents .txt strong {
  font-weight: bold;
  letter-spacing: .15em;
}

#footer {
  border-top: #e5e5e5 solid 1px;
}
