/* global
------------------------------------- */
#mainImg { background-image: url(../img/doctor/mainimg01_sp.png); }

#mainImg .tit:before { background-image: url(../img/doctor/txt_mainimg01.png); }

@media all and (min-width: 600px) { #mainImg { background-image: url(../img/doctor/mainimg01_pc.png); } }

/* #msg
------------------------------------- */
#msg { position: relative; background: #edf3e0; }

#msg:before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 90px; background: #fff; }

#msg .inner { position: relative; padding-top: 46px; padding-bottom: 26px; }

#msg .detail { padding-top: 24px; }

#msg .detail .headTit { position: relative; font-size: 1.8rem; font-weight: 500; }

#msg .detail .headTit span { position: relative; z-index: 1; }

#msg .detail .headTit:before { content: ''; position: absolute; top: -10px; right: 16px; width: 107px; height: 71px; background: url(../img/doctor/tit_msg01_pc.png) no-repeat center center; background-size: contain; }

#msg .detail .txt { padding-top: 13px; }

#msg .detail .btn { padding: 17px 20px 0; }

@media all and (min-width: 600px) { #msg { background: #fff; }
  #msg:before { background: #edf3e0; left: auto; right: 0; height: 75%; width: 100%; border-radius: 15px; -webkit-transform: translateX(456px); -ms-transform: translateX(456px); transform: translateX(456px); }
  #msg .inner { position: relative; margin-top: 100px; padding-top: 96px; padding-bottom: 140px; }
  #msg .img { position: absolute; top: -30px; left: 0; width: 550px; }
  #msg .detail { margin-top: -90px; padding-top: 50px; padding-bottom: 50px; padding-left: calc(50% + 27px); box-sizing: border-box; }
  #msg .detail .headTit { font-size: 2.6rem; }
  #msg .detail .headTit:before { top: -12px; right: -12px; width: 125px; height: 83px; }
  #msg .detail .txt { padding-top: 25px; font-size: 1.6rem; }
  #msg .detail .btn { padding: 30px 10px 0; margin-left: 0; width: 370px; }
  #msg .detail .btn a { height: 60px; } }

/* #director
------------------------------------- */
#director .inner { padding-top: 46px; padding-bottom: 52px; }

#director .directorWrap .img { margin: 2px 0 14px; }

#director .directorWrap .areaTxt .tit { margin-bottom: 6px; color: #b6b5b5; font-weight: 500; font-size: 1.3rem; }

#director .directorWrap .areaTxt .sub { position: relative; margin-bottom: 10px; font-weight: 500; font-size: 1.8rem; letter-spacing: .06em; }

#director .directorWrap .areaTxt .sub:before { content: ""; position: absolute; top: -30px; left: -14px; width: 86px; height: 78px; background: url(../img/doctor/bg_director01.png) no-repeat center/cover; z-index: -1; }

#director .directorWrap .areaTxt .lead { line-height: 1.7; margin-bottom: 10px; color: #7cbc00; font-weight: 500; font-size: 1.5rem; }

#director .directorWrap .areaTxt .txt { line-height: 2.2; background-image: -webkit-gradient(linear, left top, right top, from(rgba(237, 119, 128, 0)), color-stop(50%, rgba(237, 119, 128, 0)), color-stop(0%, #fff), to(#fff)), -webkit-gradient(linear, left top, left bottom, from(rgba(100, 100, 100, 0)), color-stop(97.5%, rgba(100, 100, 100, 0)), to(#646464)); background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #fff 0%, #fff 100%), linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 97.5%, #646464 100%); background-size: 6px 100%,100% 3rem; }

#director .directorWrap .areaTxt .txt span { color: #7cbc00; font-weight: 500; }

#director .listWrap { margin-top: 34px; padding: 24px 20px; border-radius: 10px; box-sizing: border-box; background: #f7f7f7; }

#director .listWrap .sub { position: relative; margin-bottom: 14px; padding-bottom: 2px; font-weight: 500; font-size: 1.8rem; text-align: center; }

#director .listWrap .sub:before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background: repeating-linear-gradient(-45deg, #7cbc00, #7cbc00 4px, #f7f7f7 2px, #f7f7f7 6px); }

#director .listWrap .birthday { margin-bottom: 6px; color: #7cbc00; font-weight: 500; font-size: 1.5rem; letter-spacing: .08em; }

#director .listWrap .list .item { position: relative; padding-left: 10px; }

#director .listWrap .list .item:before { content: ""; position: absolute; top: 11px; left: 0; width: 5px; height: 5px; border-radius: 50%; background: #7cbc00; }

#director .listWrap .list .item span { font-weight: 600; }

#director .listWrap .table th { width: 127px; color: #7cbc00; font-weight: 500; font-size: 1.5rem; letter-spacing: .08em; }

#director .listWrap .table td { padding-bottom: 11px; }

#director .listWrap .list02, #director .listWrap .list03 { margin-top: 10px; }

#director .listWrap .list02 .list .item, #director .listWrap .list03 .list .item { padding-left: 20px; }

#director .listWrap .list03 { margin-top: 20px; }

@media all and (min-width: 600px) { #director .inner { padding-top: 0; padding-bottom: 100px; }
  #director .directorWrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
  #director .directorWrap .img { width: 472px; }
  #director .directorWrap .areaTxt { width: 47%; }
  #director .directorWrap .areaTxt .tit { margin-bottom: 28px; font-size: 1.5rem; letter-spacing: .05em; }
  #director .directorWrap .areaTxt .sub { margin-bottom: 14px; font-size: 2.6rem; }
  #director .directorWrap .areaTxt .sub:before { top: -40px; left: -44px; }
  #director .directorWrap .areaTxt .lead { margin-bottom: 34px; font-size: 1.8rem; }
  #director .directorWrap .areaTxt .txt { line-height: 2.7; background-size: 6px 100%,100% 4rem; font-size: 1.5rem; }
  #director .listWrap { overflow: hidden; margin-top: 42px; padding: 40px 46px; }
  #director .listWrap .list01, #director .listWrap .list02, #director .listWrap .list03 { float: left; }
  #director .listWrap .list01 { width: 470px; margin-right: 32px; padding-right: 30px; border-right: 2px solid #fff; }
  #director .listWrap .sub { margin-bottom: 24px; padding-bottom: 10px; }
  #director .listWrap .birthday { margin-bottom: 8px; }
  #director .listWrap .list .item { position: relative; padding-left: 10px; font-size: 1.5rem; }
  #director .listWrap .list .item + .item { margin-top: 1px; }
  #director .listWrap .list .item:before { content: ""; position: absolute; top: 11px; left: 0; width: 5px; height: 5px; border-radius: 50%; background: #7cbc00; }
  #director .listWrap .list .item span { font-weight: 600; }
  #director .listWrap .table th { width: 122px; }
  #director .listWrap .table td { padding-bottom: 8px; }
  #director .listWrap .list02, #director .listWrap .list03 { width: 462px; margin-top: 0; }
  #director .listWrap .list02 .list .item, #director .listWrap .list03 .list .item { padding-left: 10px; }
  #director .listWrap .list03 { margin-top: 16px; } }

/* #doctorIntro
------------------------------------- */
#doctorIntro { background: #edf3e0; }

#doctorIntro .inner { padding-top: 46px; padding-bottom: 50px; }

#doctorIntro .box { margin-top: 20px; padding: 0 0 36px; box-sizing: border-box; outline: 1px solid #f1f1f1; outline-offset: -10px; background: #fff; box-shadow: 0 0 12px #ceded9; }

#doctorIntro .box + .box { margin-top: 44px; }

#doctorIntro .box .areaProf { padding: 4px 20px 0; box-sizing: border-box; }

#doctorIntro .box .areaProf .img { position: relative; top: -16px; left: -30px; width: 110%; z-index: 5; }

#doctorIntro .box .areaProf .areaTxt .tit { position: relative; margin-bottom: 6px; color: #b6b5b5; font-weight: 500; font-size: 1.3rem; z-index: 3; }

#doctorIntro .box .areaProf .areaTxt .sub { position: relative; margin-bottom: 2px; font-weight: 500; font-size: 1.8rem; letter-spacing: .08em; z-index: 2; }

#doctorIntro .box .areaProf .areaTxt .sub:before { content: ""; position: absolute; top: -30px; left: 0; width: 86px; height: 78px; background: url(../img/doctor/bg_director01.png) no-repeat center/cover; z-index: -1; }

#doctorIntro .box .areaProf .areaTxt .txt { line-height: 2.2; margin-bottom: 24px; background-image: -webkit-gradient(linear, left top, right top, from(rgba(237, 119, 128, 0)), color-stop(50%, rgba(237, 119, 128, 0)), color-stop(0%, #fff), to(#fff)), -webkit-gradient(linear, left top, left bottom, from(rgba(100, 100, 100, 0)), color-stop(97.5%, rgba(100, 100, 100, 0)), to(#646464)); background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #fff 0%, #fff 100%), linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 97.5%, #646464 100%); background-size: 6px 100%,100% 3rem; }

#doctorIntro .box .listWrap { margin: 0 20px; padding: 24px 10px; box-sizing: border-box; background: #f7f7f7; }

#doctorIntro .box .listWrap .sub { position: relative; margin-bottom: 14px; padding-bottom: 2px; font-weight: 500; font-size: 1.8rem; text-align: center; }

#doctorIntro .box .listWrap .sub:before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background: repeating-linear-gradient(-45deg, #7cbc00, #7cbc00 4px, #f7f7f7 2px, #f7f7f7 6px); }

#doctorIntro .box .listWrap .birthday { margin-bottom: 6px; color: #7cbc00; font-weight: 500; font-size: 1.5rem; letter-spacing: .08em; }

#doctorIntro .box .listWrap .list .item { position: relative; padding-left: 10px; }

#doctorIntro .box .listWrap .list .item:before { content: ""; position: absolute; top: 11px; left: 0; width: 5px; height: 5px; border-radius: 50%; background: #7cbc00; }

#doctorIntro .box .listWrap .table th { width: 106px; color: #7cbc00; font-weight: 500; font-size: 1.5rem; letter-spacing: .08em; }

#doctorIntro .box .listWrap .table td { padding-bottom: 11px; }

#doctorIntro .box .listWrap .list02 { margin-top: 4px; }

#doctorIntro .box .listWrap .list02 .list { padding: 0 12px; }

#doctorIntro .box .listWrap .list02 .list .item { padding-left: 12px; }

@media all and (min-width: 600px) { #doctorIntro .inner { padding-top: 96px; padding-bottom: 106px; }
  #doctorIntro .box { margin-top: 16px; padding: 0 0 48px; outline-offset: -10px; }
  #doctorIntro .box + .box { margin-top: 62px; }
  #doctorIntro .box:nth-of-type(2) .areaProf .img { width: 670px; }
  #doctorIntro .box .areaProf { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; padding: 4px 50px 0; }
  #doctorIntro .box .areaProf .img { top: -26px; left: -26px; width: 800px; }
  #doctorIntro .box .areaProf .areaTxt { padding: 46px 0 0 10px; }
  #doctorIntro .box .areaProf .areaTxt .tit { margin-bottom: 22px; font-size: 1.5rem; }
  #doctorIntro .box .areaProf .areaTxt .sub { margin-bottom: 8px; font-size: 2.6rem; }
  #doctorIntro .box .areaProf .areaTxt .sub:before { top: -36px; left: -38px; }
  #doctorIntro .box .areaProf .areaTxt .txt { line-height: 2.7; background-size: 6px 100%,100% 4rem; font-size: 1.5rem; }
  #doctorIntro .box .listWrap { display: -webkit-box; display: -ms-flexbox; display: flex; margin: 4px 50px 0; padding: 24px 40px 18px; border-radius: 20px; }
  #doctorIntro .box .listWrap .sub { position: relative; margin-bottom: 24px; padding-bottom: 12px; font-size: 1.8rem; }
  #doctorIntro .box .listWrap .birthday { margin-bottom: 6px; }
  #doctorIntro .box .listWrap .list .item { padding-left: 10px; font-size: 1.5rem; }
  #doctorIntro .box .listWrap .table th { width: 134px; color: #7cbc00; font-weight: 500; font-size: 1.5rem; letter-spacing: .08em; }
  #doctorIntro .box .listWrap .table td { padding-bottom: 9px; }
  #doctorIntro .box .listWrap .list01, #doctorIntro .box .listWrap .list02 { width: 50%; box-sizing: border-box; }
  #doctorIntro .box .listWrap .list01 { padding-right: 30px; border-right: 2px solid #fff; }
  #doctorIntro .box .listWrap .list02 { margin-top: 0; padding-left: 30px; }
  #doctorIntro .box .listWrap .list02 .list { padding: 0; } }

/* #staff
------------------------------------- */
#staff .inner { padding-top: 46px; padding-bottom: 50px; }

#staff .list { margin-top: 6px; }

#staff .list .item { border-radius: 10px; box-shadow: 0 0 22px #dad9d9; box-sizing: border-box; overflow: hidden; }

#staff .list .item + .item { margin-top: 20px; }

@media all and (min-width: 600px) { #staff .inner { padding-top: 94px; padding-bottom: 96px; }
  #staff .list { display: -webkit-box; display: -ms-flexbox; display: flex; }
  #staff .list .item { width: 50%; }
  #staff .list .item + .item { margin-top: 0; }
  #staff .list .item:nth-of-type(1) { margin-right: 10px; }
  #staff .list .item:nth-of-type(2) { margin-left: 10px; } }
