@charset "utf-8";
/* ==========================================================================*/
/* 全般設定 */
/* ==========================================================================*/

* {
  border: none;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

img {
  height: auto;
  max-width: 100%;
}

html {
  font-size: 62.5%;
}

body {
  color: #434343;
  font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Helvetica,Arial,Verdana,sans-serif;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: center;
}

main {
  display: block;
}

button,
select,
[type="submit"],
[type="search"],
[type="image"],
[type="text"],
[type="email"],
[type="password"],
textarea {
  border-radius: 0;
  appearance: none;
}

@media screen and (max-width: 667px) {

  html {

  }

  body {
    /*font-size: 3.6vmin;*/
    font-size: 1.4rem;
    line-height: 1.6;
  }

}

/* ==========================================================================*/
/* PC/SP */
/* ==========================================================================*/

/*SP/PC限定表示*/
@media screen and (max-width: 667px) {

  .pc-only {
    display: none !important;
  }

}

@media screen and (min-width: 668px) {

  .sp-only {
    display: none !important;
  }

}

/* ==========================================================================*/
/* 汎用クラス */
/* ==========================================================================*/

.flex-centering {
  align-items: center;
  display: flex;
  justify-content: center;
}

.flex-spaceb {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.relative {
  position: relative;
}

ul,
ol {
  margin: 1.6em 1.0rem;
}

li {
  line-height: 1.6;
  margin: 1rem 0 1rem 3rem;
  text-align: left;
}

/*画像関連*/

.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignright {
  float: right;
  margin-left: 2rem;
}

.alignleft {
  float: left;
  margin-right: 2rem;
}

@media screen and (max-width: 414px) {

  .alignright {
    display: block;
    float: none;
    margin: 1rem auto;
  }

  .alignleft {
    display: block;
    float: none;
    margin: 1rem auto;
  }

}

hr {
  border-top: .1rem dashed #8c8b8b;
  margin: 1em 0;
}

blockquote {
  background: #efefef;
  color: #555;
  font-style: italic;
  padding: 3rem 1.5rem .75rem 1.5rem;
  position: relative;
}

blockquote::before {
  color: #cfcfcf;
  content: "“";
  display: inline-block;
  font-family: sans-serif;
  font-size: 9rem;
  left: .3rem;
  line-height: 1;
  position: absolute;
  top: .5rem;
  vertical-align: middle;
}

blockquote p {
  padding: 0;
  line-height: 1.7;
  margin: 1rem 0;
}

blockquote cite {
  color: #888;
  display: block;
  font-size: 1.4rem;
  text-align: right;
}

small {
  font-size: 1rem;
}


/* ==========================================================================*/
/* レイアウト・セクションの設定 */
/* ==========================================================================*/

.container {
  padding-top: 14rem;
}

.contents {
  margin: 0 auto;
  max-width: 120rem;
  width: 95%;
}

/*サイドバーあり*/
.content-flex {
  display: flex;
  justify-content: space-between;
  margin: 2rem auto 3rem auto;
  max-width: 120rem;
  width: 95%;
}

.content-flex .main {
  margin-right: 2rem;
  margin-left: 5%;
  text-align: left;
  width: 65%;
}

.content-flex .sub {
  background: #efefef;
  margin-right: 5%;
  padding: 1rem;
  text-align: left;
  width: 25%;
}

.sub-title{
  background: #16517e;
  color: #fff;
  line-height:1.2;
  margin-bottom: 1rem;
  padding: 2rem;
}

/*サイドバーなし*/
.content {
  margin: 0 auto;
  max-width: 120rem;
  width: 95%;
}

.content .main {
  border-bottom: dotted 1px #1da5aa;
  margin: 0 auto;
  overflow: hidden;
  text-align: left;
  width: 100%;
}

.content .sub {
  margin: 2rem auto 0;
  text-align: left;
  width: 95%;
}

article {
  overflow: hidden;
}

p {
  margin: 1.6em 0;
}


@media screen and (max-width: 667px) {

  .container {
    padding: 22vmin 0 0;
  }

  .content-flex {
    flex-wrap: wrap;
    /*margin: 1rem auto;*/
    width: 85%;
  }

  .content-flex .main {
    margin: 0 auto;
    width: 100%;
  }

  .content-flex .sub {
    margin: 0;
    margin-top: 3rem;
    width: 100%;
  }

  .content {
    margin: 1rem auto;
  }

  .content .main {
    width: 85%;
  }

    .content .sub {
    margin-top: 3rem;
  }

}

/* ==========================================================================*/
/* ページの先頭に戻る */
/* ==========================================================================*/

#page-top {
  bottom: 1rem;
  display: none;
  line-height: 1.4;
  position: fixed;
  right: 2rem;
}

#page-top a {
  background-color: #000;
  border-radius: 50%;
  color: #fff;
  display: block;
  opacity: 0.5;
  font-size: 11px;
  height: 70px;
  padding: 20px 0;
  text-align: center;
  text-decoration: none;
  width: 70px;
}

#page-top a:hover {
  background-color: #666;
}


/* ==========================================================================*/
/* テーブルの設定 */
/* ==========================================================================*/

table {
  width: 100%;
  margin: 2rem 0;
}

table th {
  color: #fff;
  background: #1da5aa;
  border: solid .1rem #ccc;
  font-weight: normal;
  padding: .5rem 1rem;
  text-align: left;
  width: 20%;
}

table td {
  background: #fff;
  border: solid .1rem #ccc;
  padding: .5rem 1rem;
  text-align: left;
}

table td.head {
  background: #e5e6e0;
}

table.border_table {
  border-collapse: collapse;
  border-top: dotted .1rem #555;
  width: 100%;
}

table.border_table th {
  font-weight: normal;
}

table.border_table th,
table.border_table td {
  background: none;
  border: none;
  border-bottom: dotted .1rem #555;
  font-weight: normal;
  padding: .4rem;
  text-align: left;
}

@media screen and (max-width: 667px) {

  table th {
    width: 4em;
  }

}

/* ==========================================================================*/
/* リンクの設定 */
/* ==========================================================================*/

a,
.pointer {
  color: #1da5aa;
  font-weight: bold;
  text-decoration: none;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a {
  color: #532c78;
}

a:hover,
.pointer:hover {
  opacity: 0.6;
}

/* ==========================================================================*/
/* 見出しの設定 */
/* ==========================================================================*/

h1 {
  background: #1da5aa;
  color: #fff;
  font-size: 2.2rem;
  font-weight: normal;
  line-height: 1.2;
  margin: 0 0 2rem;
  padding: 1.7rem 2rem;
}

.header-logo h1,
.header-logo p {
  background: none;
  border: none;
  margin: 0;
  padding: 0;
}

h2 {
  color: #1da5aa;
  font-size: 3rem;
  font-weight: normal;
  line-height: 1.4;
  margin:2rem 0 4rem;
  padding:1rem 0 0;
  position: relative;
  text-align: center;
}

h2:before {
  background: #1da5aa;
  border-radius: 3px;
  content: '';
  height: 2px;
  position: absolute;
    bottom: -5px;
    left: calc(50% - 40px);
  width: 80px;
}

h3 {
  border-bottom: dashed 1px #1da5aa;
  border-top: solid 2px #1da5aa;
  color: #1da5aa;
  font-size: 1.8rem;
  font-weight: normal;
  line-height: 1.4;
  margin: 0;
  padding: 1rem 0;
  text-align: center;
}

h4 {
  color: #1da5aa;
  font-size: 1.8rem;
  font-weight: normal;
  margin: 1em 0;
  position: relative;
  text-align: center;
}

h4:before {
  background-color: #532c78;
  content: '';
  height: 2px;
  position: absolute;
    bottom: -5px;
    left: 50%;
  width: 150px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

h5 {
  color: #6594e0;
  font-size: 1.6rem;
  margin: 0 2rem;
}

/* ==========================================================================*/
/* 看板設定*/
/* ==========================================================================*/

.main-visual {
  background: url(../images/bg.jpg);
  background-size: cover;
  padding: 3rem 0;
}

.main-img {
  width: 95%;
  max-width: 120rem;
  margin: 0 auto;
  overflow-x: hidden;
}

@media screen and (max-width: 667px) {

  .main-img {
    margin: auto;
    width: 95%;
  }

}

/* ==========================================================================*/
/* ヘッダーの設定*/
/* ==========================================================================*/

/* ロゴ・メニュー */
.main-header {
  background: #fff;
  position: fixed;
  width: 100%;
  z-index: 255;
}

.main-header-inner {
  align-items: center;
  display: flex;
  height: 10rem;
  justify-content: space-between;
  margin: auto;
  max-width: 120rem;
  padding: 0;
  width: 95%;
}

.header-logo {
  background:none;
  border: none;
  margin: 0 4em 0 0;
  max-width: 40%;
  width: 460px;
  width: auto;
}

.header-logo img {
  width: 100%;
}

.header-tel {
  align-items: center;
  background: #1da5aa;
  color: #fff;
  display: flex;
  font-size: 1.2rem;
  justify-content: space-between;
  line-height: 1;
  padding: 1rem 1.5rem .7rem;
  position: relative;
}

.header-tel span.number {
  font-size: 2.6rem;
  margin-left: 1rem;
}

.nav-menu-container {
  background: #1da5aa;
  font-size: 1.6rem;
  padding: .5rem 0;
  width: 100%;
}

.nav-menu ul{
  display: flex;
  justify-content: space-between;
  margin: auto;
  max-width: 120rem;
  padding: 0;
  width: 90%;
}

.nav-menu ul li {
  border-right: solid 1px #8ed2d5;
  list-style: none;
  line-height: 1;
  margin: 0;
  padding: 0;
  position: relative;
  text-align: center;
  width:calc(100% / 4);
}

.nav-menu ul li:first-child {
  border-left: solid 1px #8ed2d5;
}

.nav-menu li a {
  color: #fff;
  display: block;
  padding: 1.5rem .2rem;
}

.nav-menu li.active a {
  background: #ebf1f8;
  color: #1da5aa;
}

.nav-menu li a:hover {
  background: #ebf1f8;
  color: #1da5aa;
}

.nav-menu ul ul {
  display: block;
  opacity: 0;
  position: absolute;
    top: 100%;
    width: 100%;
  transition: .2s ease-in-out;
  transform: translateY(-20px);
  visibility: hidden;
}

.nav-menu ul li:hover > ul {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.nav-menu ul ul li:first-child {
  border: solid 1px #ccc;
}

.nav-menu ul ul li {
  background: #fff;
  border: solid 1px #ccc;
  float: none;
  font-size: 1.4rem;
  margin: 0;
  padding: .5rem;
  width: 100%;
}

.nav-menu ul ul li:not(:first-child) {
  border-top: none;
}

.nav-menu ul ul ul {
  position: absolute;
    top: -2px;
    left: 100%;
}

@media screen and (max-width: 667px) {

  .sp-menu-btn {
    background-color: #707070;
    cursor: pointer;
    height: 16vmin;
    line-height: 1;
    padding: 1vmin;
    position: absolute;
    right: 0;
    width: 16vmin;
  }

  .sp-menu-btn img {
    height: 50%;
    margin: .8vmin .5vmin;
  }

  .sp-menu-btn-txt {
    color: #fff;
    display: block;
    font-size: .8rem;
  }

  /* ヘッダー */
  .main-header {
    background: #fff;
    box-shadow: 0 .25rem .5rem rgba(0, 0, 0, .1);
    height: 16vmin;
    padding: 0;
    width: 100%;
  }

  .main-header-inner {
    flex-wrap: wrap;
    height: auto;
    margin-right: 0;
    max-height: inherit;
    padding: 0;
    transition: .3s;
    width: auto;
  }

  .header-logo {
    margin: 0;
    height: 16vmin;
    max-width: 100%;
  }

  .header-logo .logo {
    float: left;
    width: auto;
    height: 16vmin;
    padding: .5vmin 2vmin;
  }

  .header-tel {
    align-items: center;
    background: #1da5aa;
    color: #fff;
    display: flex;
    font-size: 1.2rem;
    justify-content: space-around;
    line-height: 1;
    padding: 1rem 1.5rem .7rem;
    width:100%;
  }

  .header-menu{
    width: 100%;
  }

  .nav-menu-container {
    background: #1da5aa;
    display: none;
    padding: 0;
    width: 100%;
  }

  .nav-menu ul{
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

  .nav-menu ul li {
    border-top: 1px solid #8ed2d5;
    width: 100%;
  }

  .nav-menu li ul li{
    display: none;
  }

  .nav-menu li + li {
    margin-left: 0;
  }

  .main-header-inner .searchform,
  .main-header-inner .external-link {
    display: none;
    width: 100%;
  }

  .main-header-inner .searchform div {
    margin: auto;
    padding: 0 1.25%;
    width: 100%;
  }

  .nav-menu-container .searchform {
    display: block;
    margin: auto;
    width: 97.5%;
    padding: 0 1rem;
  }

}

/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Mobile style's
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@media only screen and (max-width: 667px) {
    .menu-mobile {
        display: none;
    }
    .menu-dropdown-icon:before {
        display: block;
    }

}

/* ==========================================================================*/
/* topics一覧 */
/* ==========================================================================*/

.list-info {
  list-style: none;
  margin: 0;
  padding: 0;
}

.list-info li{
  margin: 0;
  padding: 0;
}

.list-info li a{
  display: block;
  background-color: #fff;
  border: solid 1px #bfbfbf;
  margin: .5rem 0;
  padding: 1rem 2rem;
  text-align: left;
  word-break: break-all;
}

.list-info-date {
  color: #404040;
  font-size: 1.4rem;
  margin-right: 2rem;
}

@media screen and (max-width: 667px) {

  .list-info-date {
    display: block;
  }

}

/* ==========================================================================*/
/* PDF */
/* ==========================================================================*/

a[href*=".pdf"]::before {
  background-image: url(../images/pdf.png);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  display: inline-block;
  margin-bottom: .25em;
  margin-right: .75rem;
  padding: .6em .6em;
  vertical-align: middle;
}

a[href*=".doc"]::before,
a[href*=".docx"]::before {
  background-image: url(../images/word.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  display: inline-block;
  margin-bottom: .25em;
  margin-right: .75rem;
  padding: .6em .6em;
  vertical-align: middle;
}

a[href*=".xls"]::before,
a[href*=".xlsx"]::before {
  background-image: url(../images/excel.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  display: inline-block;
  margin-bottom: .25em;
  margin-right: .75rem;
  padding: .6em .6em;
  vertical-align: middle;
}


/* ==========================================================================*/
/*　フッターの設定　*/
/* ==========================================================================*/

.footer {
  background: #fff;
  color: #303030;
  font-size: 1.4rem;
  line-height: 1.2;
  padding: 3rem 0;
}

.footer-inner {
  margin: 0 auto;
  max-width: 120rem;
  overflow: hidden;
  width: 95%;
}

.footer-inner p {
  margin: 1.0rem 0;
  text-align: center;
}

.footer-inner p span {
  font-size: 2rem;
}

.copyright {
  font-size: 1.0rem;
}

@media screen and (max-width:667px) {

  .footer {
    padding: 1rem 0;
  }

  .footer-inner p span {
    font-size: 1.6rem;
  }

}

/* ==========================================================================*/
/* フッター地図の設定 */
/* ==========================================================================*/

.footer-map {
  border-bottom: solid .1rem #bfbfbf;
  border-top: solid .1rem #bfbfbf;
}

.footer-map iframe {
  vertical-align: bottom;
  width: 100%;
}

.footer-map-access {
  margin-top: 4rem;
}

/* ==========================================================================*/
/*　アクセスの設定　*/
/* ==========================================================================*/

.maparea {
  display: flex;
  justify-content: space-between;
}

.road {
  width: 32%;
  background: #f5f4f4;
  padding: 2.0rem;
}

.road p {
  margin: 2.0rem 0;
}

.road img {
  vertical-align: bottom;
}

.google-maps {
  height: 0;
  overflow: hidden;
  padding-bottom: 50%;
  position: relative;
  width: 67%;
}

.google-maps iframe {
  height: 100% !important;
  position: absolute;
    top: 0;
    left: 0;
  width: 100% !important;

}

@media screen and (max-width:768px) {

  .maparea {
    display: block;
  }

  .road {
    width: 100%;
  }

  .google-maps {
    padding-bottom: 100%;
    width: 100%;
  }

}

/* ==========================================================================*/
/* トップページNEWS */
/* ==========================================================================*/

.news-area {
  background: #eeebc0;
  border: solid 1px #e60012;
  margin: -5rem auto 5rem;
  max-width: 120rem;
  padding: 2rem 6rem;
  position: relative;
  text-align: left;
  width: 90%;
}

.news-area h2 {
  color: #e60012;
  margin-top: 0;
}

.news-area h2:before {
  background: #e60012;
  left: calc(50% - 100px);
  width: 200px;
}

.news-area ul {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  width: 65%;
}

.news-area ul li {
  line-height: 1.1;
  margin: 0;
  padding: 1rem 0;
}

.news-area ul li a {
  color: #404040;
}

.date {
  font-size: 1.4rem;
  margin-right: 1.0rem;
}

.new {
  border: solid 1px #e75046;
  color: #e75046;
  display: inline-block;
  font-size: 1.0rem;
  line-height: 1;
  padding: .1rem .4rem;
}

.moreinfo {
  border: solid 1px #1da5aa;
  color: #1da5aa;
  display: inline-block;
  margin: 2rem auto 0;
  padding: 1.4rem;
  width: 25%;
}

@media screen and (max-width: 667px) {

  .news-area {
    margin: -4rem auto 2rem;
    padding: 1rem 2rem 0;
    width: 90%;
  }

  .news-area h2 {
    font-size: 4.5vmin;
    margin-bottom: 0;
  }

.news-area h2:before {
  background: #e60012;
  left: calc(50% - 50px);
  width: 100px;
}

  .news-area ul {
    width: 80%;
  }

  .news-area ul li {
    line-height: 1.4;
    padding: .5rem 0;
  }

  .date {
    display: block;
  }

  .moreinfo {
    width: 80%;
  }

}

/* ==========================================================================*/
/* トップページCONTENT */
/* ==========================================================================*/

.content-area-outer {
  background: #1da5aa;
  color: #fff;
  padding: 2rem 0 5rem;
}

.content-area {
  margin: 0 auto;
  max-width: 120rem;
  width: 90%;
}

.content-area h2.content-area-title {
  color: #fff;
}

.content-area h2.content-area-title:before {
  background: #fff;
}

.content2-area-outer {
  padding: 2rem 0;
}

.content-text {
  margin: 0 auto 4rem;
  text-align: left;
  width: 65%;
}

.content-text p {
  margin: 0 0 2rem;
}

.content-list-outer {
  display: flex;
  justify-content: space-between;
  padding-bottom: 2rem;
}

.content-list {
  width: calc(100% / 6);
}

.content-list img {
  border-radius: 50%;
  width: 70%;
}

.hour {
  margin-bottom: 0;
}

.hour th {
  text-align: center;
  width: 11%;
}

.hour th.head {
  width: 23%;
}

.hour td {
  text-align: center;
}

.hour td.closed {
  background: #edd6d6;
}

.hour-desc {
  font-size: 1.2rem;
  margin-top: 0;
  text-align: right;
}

.mail-contact {
  background: #1da5aa;
  color: #fff;
  display: inline-block;
  padding: .8rem 4rem;
}

@media screen and (max-width: 667px) {

  .content-area-outer {
    padding: 1rem 0;
  }

  .content2-area-outer {
    padding: 0;
  }

  .content-text {
    margin: 0 auto 4rem;
    width: 95%;
  }

  .content-list-outer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 2rem;
  }

  .content-list {
    margin-bottom: 2rem;
    width: 50%;
  }

  .content-list h3 {
    font-size: 4vmin;
    margin: .5rem;
  }

  .content-list ul {
    margin: .5rem .5rem 1rem;
  }

  .content-list ul li {
    margin: 1rem 0;
  }

}

/* ==========================================================================*/
/* トップページACCESS */
/* ==========================================================================*/

.access-area {
  margin: 0 auto;
  padding: 0 0 5rem;
  width: 65%;
}

dl {
  display: flex;
  flex-wrap: wrap;
  text-align: left;
}

dt {
  width: 6em;
}

dd {
  width: calc(100% - 6em);
}

@media screen and (max-width: 667px) {

  .access-area {
    padding: 0 0 4rem;
    width: 80%;
  }

}

/* ==========================================================================*/
/* 第二階層看板 */
/* ==========================================================================*/

.page-title {
  background: url(../images/bg2.jpg) no-repeat center center;
  margin-top: 1rem;
}

.page-title-inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: auto;
  max-width: 120rem;
  width: 90%;
}

.page-title p,
.page-title h1 {
  background: #303030;
  color: #fff;
  display: inline-block;
  font-size: 1.8rem;
  line-height: 1.2;
  margin: 6rem 0;
  padding: 1.2rem 9rem;
}

@media screen and (max-width: 667px) {

  .page-title img {
    display: none;
  }

  .page-title p,
  .page-title h1 {
    background: #303030;
    color: #fff;
    display: inline-block;
    font-size: 1.8rem;
    line-height: 1.2;
    margin: 3rem auto;
    padding: 1rem 7rem;
  }

}

/* ==========================================================================*/
/* クリニック紹介 */
/* ==========================================================================*/

ol.clinic-policy {
  display: flex;
  justify-content: space-between;
  margin: 0 0 4rem;
  padding: 2rem 0 0;
}

ol.clinic-policy li {
  background: #1da5aa;
  color: #fff;
  list-style: none;
  margin: 0;
  padding: 5rem 2.5rem 1rem;
  position: relative;
  width: 32%;
}

ol.clinic-policy li span {
  background: #000;
  border-radius: 50%;
  display: block;
  font-size: 4.5rem;
  height: 7rem;
  position: absolute;
    top: -3rem;
    left: calc(50% - 3.5rem);
  text-align: center;
  width: 7rem;
}

ol.clinic-policy li h3 {
  border-bottom: dashed 1px #fff;
  border-top: solid 2px #fff;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
}

.clinic-img {
  display: flex;
  justify-content: space-between;
}

.clinic-img img {
  margin: 1.5rem 0;
  vertical-align: bottom;
}

.clinic-img1 {
  width: 32%;
}

.clinic-img2 {
  width: 66%;
}

.clinic-img1 img{
  width: 100%;
}

.clinic-img2 div {
  display: flex;
  justify-content: space-between;
}

.clinic-img2 div img{
  display: inline-block;
  width: 48.5%;
  height: auto;
}

.clinic-img p {
  line-height: 1.6;
  margin-top: 0;
}

@media screen and (max-width: 667px) {

  ol.clinic-policy {
    flex-wrap: wrap;
    margin: 0 0 2rem;
  }

  ol.clinic-policy li {
    margin-bottom: 4rem;
    width: 100%;
  }

  ol.clinic-policy li:last-child {
    margin-bottom: 0;
  }

  .clinic-img {
    display: block;
  }

  .clinic-img1 {
    width: 100%;
  }

  .clinic-img2 {
    width: 100%;
  }

  .clinic-img2 div {
    display: block;
  }

  .clinic-img2 div img{
    display: block;
    width: 100%;
  }

}

/* ==========================================================================*/
/* 医師紹介 */
/* ==========================================================================*/

.doctor-img {
  border: solid 2px #1da5aa;
  float: left;
  font-size: 1.4rem;
  line-height: 1.4;
  margin: 0 3rem 0 0;
  padding: 0 1rem 1rem 0;
  text-align: center;
}

@media screen and (max-width: 667px) {

  .doctor-img {
    float: none;
    margin: 0;
  }

}

/* ==========================================================================*/
/* 診療案内 */
/* ==========================================================================*/

.medical-list-outer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 2rem;
}

.medical-list {
  background: #1da5aa;
  color: #fff;
  font-size: 1.5rem;
  margin-bottom: 1px;
  padding: 4rem 4rem 2rem;
  width: calc(100% / 3 - 1px );
}

.medical-list img {
  border-radius: 50%;
  max-width: 100%;
}

.medical-list h3 {
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
}

.medical-list p {
  margin-top: 0;
}

@media screen and (max-width: 667px) {

  .content-text {
    margin: 0 auto;
    width: 90%;
  }

  .medical-list-outer {
    display: block;
  }

  .medical-list {
    margin: 1px auto;
    padding: 2.5rem 2rem .5rem;
    width: 90%;
  }

}

/* ==========================================================================*/
/* Q&A */
/* ==========================================================================*/

h3.qa {
  background: url(../images/qa.png) no-repeat center left;
  padding: 1.4rem 0 1rem 9rem;
  text-align: left;
}