/*  #intro
================================================ */
#mainImg { margin-bottom: 0; }

#intro { padding-top: 37px; background: url(../img/greeting/bg_intro_sp.png) no-repeat; background-size: cover; padding-bottom: 60px; }

#intro .inner { position: relative; }

#intro .headerTit { margin-bottom: 20px; }

#intro .lead { color: #ff7391; font-size: 1.6rem; text-align: center; font-weight: 500; }

#intro .img { margin-top: 25px; }

#intro .txtBox { position: relative; }

#intro .txt { padding-top: 10px; color: #666; font-size: 1.5rem; line-height: 2.25; }

#intro .nameBox { position: absolute; top: 195px; right: 7px; }

#intro .director { line-height: 1.2;}

#intro .name { font-size: 2.2rem; line-height: 1.5;}

#intro .society { position: relative; margin-top: 140px; padding: 20px 22px 16px; border: 1px solid #ff7391; background-color: #fff; color: #666; }

#intro .society .set + .set { margin-top: 15px; }

#intro .society .lead { text-align: left; }

#intro .society .txt { font-size: 1.4rem; padding-top: 0; }

#intro .society .txt-right { text-align: right; }

#intro .society .item { position: relative; padding: 5px 0 5px 12px; }

#intro .society .item:before { position: absolute; content: ""; top: 15px; left: 0; width: 6px; height: 6px; background-color: #ff7391; border-radius: 50%; }

@media screen and (min-width: 600px) { #intro { padding-top: 100px; padding-bottom: 100px; background: url(../img/greeting/bg_intro_pc.png) no-repeat; background-position: 50%; background-size: cover; }
  #intro .inner { overflow: hidden; position: relative; }
  #intro .lead { color: #ff7391; font-size: 1.6rem; text-align: center; font-weight: 500; }
  #intro .img { width: 515px; float: left; }
  #intro .txtBox { width: 585px; float: left; padding-top: 6px; box-sizing: border-box; }
  #intro .txt { font-size: 1.6rem; padding-left: 35px; line-height: 2.25; }
  #intro .nameBox { position: absolute; top: 140px; right: 0; }
  #intro .director { padding: 25px 0 0; line-height: 1.2; }
  #intro .name { font-size: 3.2rem; line-height: 1.5;}
  #intro .floatWrap { overflow: hidden; }
  #intro .society { overflow: hidden; margin: 60px 0 0 0; padding: 30px 40px 40px; }
  #intro .society .lead { font-size: 2rem; margin-bottom: 5px; }
  #intro .society .txt { font-size: 1.6rem; line-height: 2.2; padding-left: 0;}
  #intro .society .listWrap { max-width: 750px; box-sizing: border-box; }
  #intro .society .list { overflow: hidden; }
  #intro .society .item { float: left; width: 360px; padding: 9px 0 0 22px; font-size: 1.6rem; box-sizing: border-box; }
  #intro .society .item:before { top: 21px; left: 6px; }
  #intro .society .item.is-other { position: absolute; bottom: 40px; right: 0; }
  #intro .society .item.is-other::before { display: none; } }

/*  #policy
================================================ */
#policy { padding-bottom: 50px; }

#policy .header { padding: 55px 0 23px; background: #fff; }

#policy .header .headerTit { margin-bottom: 24px; }

#policy .header .lead { color: #ff7391; font-size: 1.6rem; text-align: center; font-weight: 500; }

#policy .inner { position: relative; }

#policy .back { padding-top: 20px; background: url(../img/greeting/bg_policy_sp.png) no-repeat; background-position: 50%; background-size: cover; height: 100px; }

#policy .intro { position: relative; z-index: 500; }

#policy .intro .set { overflow: hidden; background-color: #fff; border-bottom: 5px solid #fff1f3; margin-top: -20px; padding: 0 27px 20px; }

#policy .intro .set .txtWrap { padding: 26px 5px 15px; }

#policy .intro .set .txtWrap .txt { line-height: 2.25; color: #666; }

#policy .intro .set .txtWrap .txt + .txt { padding-top: 30px; }

#policy .intro .set .txtWrap .pink { color: #ff7391; font-weight: bold; }

#policy .intro .set .concept { position: relative; background-color: #fff4f5; }

#policy .intro .set .concept .tit { position: relative; padding: 9px 15px; margin: 0 0 5px; color: #fff; line-height: 1.5; font-size: 1.6rem; font-weight: 500; background: #ff7391; text-align: center; }

#policy .intro .set .concept .tit:after { position: relative; content: ""; width: 0; height: 0; bottom: -42px; left: -64px; border-style: solid; border-width: 9px 7.5px 0 7.5px; border-color: #ff7391 transparent transparent transparent; }

#policy .intro .set .concept .listWrap { padding: 0 20px 40px; }

#policy .intro .set .concept .listWrap .list .item { position: relative; counter-increment: num_list01; padding: 10px; font-size: 1.5rem; font-weight: bold; padding-left: 20px; color: #666; border-bottom: 1px solid #ffd6df; }

#policy .intro .set .concept .listWrap .list .item:before { position: absolute; content: counter(num_list01) "."; top: 6px; left: 0; color: #ff7391; font-family: cinzel; font-size: 2rem; }

#policy .intro .set .concept .logo { position: absolute; bottom: -12px; left: 0; white-space: nowrap; color: #fff; font-size: 2.5rem; }

#policy .medical { margin-top: 40px; }

#policy .medical .txtWrap { padding-top: 12px; color: #666; line-height: 2; }

#policy .medical .txtWrap .txt + .txt { margin-top: 30px; }

@media screen and (min-width: 600px) { #policy { padding-bottom: 130px; }
  #policy .header { padding: 122px 0 40px; }
  #policy .header .headerTit { margin-bottom: 41px; }
  #policy .header .lead { font-size: 2rem; }
  #policy .back { margin: 0; background: url(../img/greeting/bg_policy_pc.png) no-repeat; height: 630px; }
  #policy .intro .set { margin-top: -380px; padding: 45px 58px 80px; padding-bottom: 80px; }
  #policy .intro .set .txtWrap { padding: 25px 25px 33px; }
  #policy .intro .set .txtWrap .txt { font-size: 1.6rem; line-height: 2.25; color: #666; }
  #policy .intro .set .txtWrap .pink { color: #ff7391; font-weight: bold; }
  #policy .intro .set .concept { margin: 0 20px 0; position: relative; background-color: #fff4f5; }
  #policy .intro .set .concept .tit { position: relative; padding: 11px 15px; margin: 0 0 17px; color: #fff; letter-spacing: 0.08em; line-height: 1.75; font-size: 2.2rem; font-weight: 500; background: #ff7391; text-align: center; }
  #policy .intro .set .concept .tit:after { position: absolute; content: ""; width: 0; height: 0; bottom: -10px; left: 473px; border-style: solid; border-width: 10px 7px 0 7px; border-color: #ff7391 transparent transparent transparent; }
  #policy .intro .set .concept .listWrap { padding: 20px 70px 70px; }
  #policy .intro .set .concept .listWrap .list { overflow: hidden; }
  #policy .intro .set .concept .listWrap .list .item { float: left; padding: 12px 12px 12px 40px; font-size: 1.8rem; width: 348px; }
  #policy .intro .set .concept .listWrap .list .item:before { top: 7px; left: 15px; font-size: 2.8rem; }
  #policy .intro .set .concept .listWrap .list .item:nth-child(even) { width: 309px; padding-left: 79px; }
  #policy .intro .set .concept .listWrap .list .item:nth-child(even):before { left: 49px; }
  #policy .intro .set .concept .listWrap .list .item:nth-child(5) { width: 748px; }
  #policy .intro .set .concept .logo { bottom: -23px; left: 212px; font-size: 5rem; }
  #policy .medical { overflow: hidden; margin-top: 74px; }
  #policy .medical .tit { margin-bottom: 40px; }
  #policy .medical .img { float: right; width: 515px; padding-left: 35px; }
  #policy .medical .txtWrap { float: right; width: 550px; padding-top: 0; margin-top: -7px; line-height: 2.2; } }

/*  #staff
================================================ */

#staff { padding-top: 37px; }

#staff .inner { position: relative; }

#staff .headerTit { margin-bottom: 20px; }

#staff .lead { color: #ff7391; font-size: 1.6rem; text-align: center; font-weight: 500; }

#staff .imgBox { position: relative; margin-top: 25px; }

#staff .nameBox { position: absolute; bottom: 0; right: 0; background: #fff; padding: 14px 18px 14px; }

#staff .position { font-size: 1.2rem; }

#staff .name { font-size: 1.5rem; line-height: 1.7; }

#staff .name-en { width: 100px; line-height: 1;}

#staff .txtBox { position: relative; }

#staff .txt { padding-top: 10px; color: #666; font-size: 1.5rem; line-height: 2.25; }

#staff .listWrap { margin-top: 8px; margin-bottom: 10px; }

#staff .item { position: relative; padding: 5px 0 5px 15px; color: #666464; }

#staff .item::before { position: absolute; content: ""; top: 15px; left: 0; width: 6px; height: 6px; background-color: #ff7391; border-radius: 50%; }

#staff .list.num { counter-reset: number 0; }

#staff .list.num .item { list-style: none; background: #fff1f3; padding: 22px 14px 22px 42px; line-height: 1.5; box-sizing: border-box; text-indent: -2em; }

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

#staff .list.num .item::before { display: none; }

#staff .list.num .item .ico { margin-right: 6px; }

#staff .list.num .item .ico img { width: 20px; vertical-align: baseline; }

#staff .list.num .item .txt { padding-top: 0; }

#staff .society { position: relative; margin-top: 25px; padding: 20px 22px 16px; border: 1px solid #ff7391; background-color: #fff; color: #666; }

#staff .society .set + .set { margin-top: 15px; }

#staff .society .lead { text-align: left; }

#staff .society .txt { font-size: 1.4rem; padding-top: 0; }

#staff .society .txt-right { text-align: right; }

#staff .society .item { position: relative; padding: 5px 0 5px 12px; }

#staff .society .item:before { position: absolute; content: ""; top: 15px; left: 0; width: 6px; height: 6px; background-color: #ff7391; border-radius: 50%; }

@media screen and (min-width: 600px) {
  #staff { padding-top: 100px; padding-bottom: 100px; background: url(../img/greeting/bg_staff_pc.png) no-repeat; background-position: 50%; background-size: cover; }
  #staff .inner { overflow: hidden; position: relative; }
  #staff .floatWrap { overflow: hidden; margin-top: 50px; }
  #staff .lead { color: #ff7391; font-size: 1.6rem; text-align: center; font-weight: 500; }
  #staff .imgBox { margin-top: 0; float: right; }
  #staff .img { width: 515px; margin-left: 20px; }
  #staff .position { font-size: 1.3rem; }
  #staff .name { font-size: 2.4rem; }
  #staff .name-en { width: 134px; }
  #staff .txt { font-size: 1.6rem; padding-top: 0; line-height: 2.25; }
  #staff .item { font-size: 1.6rem; }
  #staff .list.num { display:-webkit-box;	display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap;	flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
  #staff .list.num .item { width: calc(33.33% - 24px); margin: 0 12px;}
  #staff .list.num .item + .item { margin-top: 0;}
  #staff .society { overflow: hidden; margin: 60px 0 0 0; padding: 22px 35px 34px; }
  #staff .society .lead { font-size: 2rem; margin-bottom: 5px; }
  #staff .society .txt { font-size: 1.6rem; line-height: 2.2; padding-left: 0;}
  #staff .society .listWrap { box-sizing: border-box; }
  #staff .society .list { overflow: hidden; }
  #staff .society .item { float: left; width: 420px; padding: 9px 0 0 22px; font-size: 1.6rem; box-sizing: border-box; }
  #staff .society .item:before { top: 21px; left: 6px; }
}

/*  #commitment
================================================ */
#commitment { position: relative; padding: 60px 0; }

#commitment .back { position: absolute; top: 200px; left: 0; margin-top: 20px; width: 100%; height: 1020px; }

#commitment .inner { position: relative; }

#commitment .headerTit { margin-bottom: 50px; }

#commitment .message { position: relative; margin: 0 -15px 0; padding-bottom: 140px; }

#commitment .message .img { position: absolute; top: -20px; right: 18px; width: 290px; margin: 0 -18px 0; z-index: 0; }

#commitment .message .txtWrap { position: relative; top: 122px; margin: 0 15px 0; padding: 20px 27px; line-height: 2.25; color: #666; background-color: #fff; z-index: 1; }

#commitment .message .txtWrap .txt + .txt { padding-top: 30px; }

#commitment .bunner { margin-top: 40px; }

#commitment .bunner .setWrap { padding: 20px 15px; background: url(../img/greeting/bg_commitment_sp.png) no-repeat; background-size: cover; }

#commitment .bunner .setWrap .lead { padding-left: 15px; color: #e61d47; font-size: 1.8rem; font-weight: bold; line-height: 1.4; }

#commitment .bunner .setWrap .txt { padding: 3px 0 0 15px; color: #e61d47; }

#commitment .bunner .setWrap .btn { margin: 15px auto 0; }

@media screen and (min-width: 600px) { #commitment { padding: 120px 0 130px; }
  #commitment .back { top: 373px; left: 0; margin-top: 20px; height: 620px; width: 90%; background-size: 60%; }
  #commitment .inner { position: relative; }
  #commitment .headerTit { margin-bottom: 170px; }
  #commitment .message { position: relative; margin: 0 -410px 0; padding-bottom: 140px; }
  #commitment .message .img { position: absolute; top: -124px; width: 1137px; margin: 0 -15px 0; }
  #commitment .message .txtWrap { width: 500px; position: relative; top: 120px; margin: 0 410px 0; padding: 70px 74px; line-height: 2.25; border-bottom: 5px solid #fff1f3; }
  #commitment .message .txtWrap .txt + .txt { padding-top: 32px; }
  #commitment .bunner { width: 1100px; overflow: hidden; margin: 42px auto 0; }
  #commitment .bunner .img { float: left; width: 525px; }
  #commitment .bunner .setWrap { float: left; width: 575px; padding: 54px 0 52px; background: url(../img/greeting/bg_commitment_pc.png) no-repeat; background-size: cover; }
  #commitment .bunner .setWrap .lead { padding-left: 50px; font-size: 2.4rem; }
  #commitment .bunner .setWrap .txt { padding: 17px 0 0 55px; }
  #commitment .bunner .setWrap .btn { max-width: none; margin-top: 20px; } }
