@charset "UTF-8";

body{
  padding-top:0 !important;
}

/*------------------------------------------------------------
共通MV
------------------------------------------------------------*/

.mv_area {
  background: url(../img/bg_under_pc.jpg) no-repeat right center #fbfcf7;
}

/* トップのみ */

.mv_area.top {
  background: url(../img/bg_top_pc.jpg) no-repeat right center #fbfcf7;
}

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

  .mv_area {
    background: #fbfcf7;
  }

  .mv_area.top {
    background: url(../img/bg_top_sp.jpg) no-repeat center #fbfcf7;
  }

}



/*--------------------
  当院についてTOP
--------------------*/

#top .menubox li{
  float: left;
  width: 32%;
  margin-right: 2%;
  box-sizing: border-box;
  border: 1px solid #e6e6e6;
  border-top: 2px solid #a18aed;
  margin-bottom: 3.5%;
}

#top .menubox li:nth-child(3n){
  margin-right: 0;
}

#top .menubox li:nth-child(3n+1){
  clear: both;
}

#top .menubox li img {
  width: 100%;
  border-bottom: 1px solid #e6e6e6;
}

#top .menubox li h3 {
  padding: 5% 7.4%;
}

#top .menubox li h3:before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #a18aed;
  border-right: 2px solid #a18aed;
  -webkit-transform: translateY(-2px) rotate(45deg);
  transform: translateY(-2px) rotate(45deg);
  margin-right: 5px;
  -webkit-transition: margin .2s;
  -o-transition: margin .2s;
  transition: margin .2s;
}

#top .menubox li:hover h3:after {
  margin-left: 9px;
}

#top .menubox li a {
  text-decoration: none;
  font-size: 1.14rem;
  line-height: 2;
}

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

  #top .box_2main {
    padding: 8.6% 4% 0;
    border-left: none;
  }

  #top .menubox li{
    float: none;
    width: 100%;
    margin-right: 0;
    box-sizing: border-box;
    border: 1px solid #e6e6e6;
    border-top: 3px solid #a18aed;
    margin-bottom: 7.4%;
    font-weight: bold;
  }

  #top .menubox li:last-child {
    margin-bottom: 0;
  }

  #top .menubox li h3 {
    padding: 3.5%;
  }

  #top .menubox li h3:before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #a18aed;
    border-right: 2px solid #a18aed;
    -webkit-transform: translateY(-1px) rotate(45deg);
    transform: translateY(-1px) rotate(45deg);
  }

  #top .menubox li a {
    text-decoration: none;
    font-size: 1.07rem;
    line-height: 2;
  }

}



/* 向井作業分 */

/*--------------------
館内案内
--------------------*/

#floor_guide .box_2main .top_links li {
  width : 50%;
}

.box_2main .top_links li a {
  padding:1.5rem 0;
  position: relative;
}

.box_2main .top_links li a:after {
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.box_2main .top_links li a:hover:after {
  top: 6px;
  margin:auto;
}

@media all and (max-width: 767px) {


  #floor_guide .box_2main .top_links li {
    width : 100%;
    display: block;
  }

}

#floor_guide .box_2main img {
  width:auto;
}


/* サムネイル */
#floor_guide .box_2main .thum {
  width: 89%;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}
#floor_guide .box_2main .thum li {
  margin-right: 22px;
  margin-bottom: 24px;
  margin-right: 2.1%;
}
#floor_guide .box_2main .thum li a {
  display: block;
  margin-bottom: 12px;
}
#floor_guide .box_2main .thum li .icon {
  vertical-align: middle;
  display: inline-block;
}
#floor_guide .box_2main .thum li .name {
  vertical-align: middle;
  font-size: 0.92rem;
  display: inline-block;
}
#floor_guide .box_2main .thum li .name.line2 {
  vertical-align: top;
  line-height:1.3;
}

@media all and (max-width: 767px) {
  #floor_guide .box_2main img {
    width:100%;
  }

  #floor_guide .box_2main .thum {
    width: 100%;
  }
  #floor_guide .box_2main .thum li {
    width: 48%;
    margin-right: 0;
    margin-bottom: 4%;
  }
  #floor_guide .box_2main .thum li:nth-child(even) {
    margin-left: 4%;
  }
  #floor_guide .box_2main .thum li a {
    margin-bottom: 4%;
  }
  #floor_guide .box_2main .thum li .icon {
    margin-right: 1.6%;
  }
  #floor_guide .box_2main .thum li .name {
    font-size: 0.86rem;
  }

}

/* セクション */
#floor_guide .box_2main section {
  margin-bottom: 80px;
}
#floor_guide .box_2main .bottom {
  width: 100%;
  box-sizing: border-box;
  padding-left: 35.50%;
}

@media all and (max-width: 767px) {
  #floor_guide .box_2main section {
    margin-bottom: 0;
  }
  #floor_guide .box_2main .bottom {
    padding-left: 0;
  }
}

/* 大きい画像はこちら　ボタン */
#floor_guide .btn_glass {
  line-height: 2;
  display: inline-block;
  margin: 30px auto;
}

@media all and (max-width: 767px) {

  #floor_guide p {
    line-height: 2;
    font-size: 0.92rem;
  }
  
  #floor_guide .btn_glass {
    margin-top: 6.5%;
    margin-bottom: 6.5%;
    width: 100%;
    text-align: center;
  }

}

/* map画像の位置 */
#floor_guide .box_2main #floor01 .mapImg {
  margin-left: 20.12%;
  margin-top: 35px;
}
#floor_guide .box_2main #floor02 .mapImg {
  margin-left: 17.75%;
  margin-top: 35px;
}

/* map 画像*/
#floor_guide img[usemap] {
  max-width: 100%;
  height: auto;
}

@media all and (max-width: 767px) {

  #floor_guide .box_2main #floor01 .mapImg {
    margin-left: 0;
    margin-top: 6%;
  }
  #floor_guide .box_2main #floor02 .mapImg {
    margin-left: 0;
    margin-top: 6%;
  }
  #floor_guide .box_2main #floor03 .mapImg {
    margin-left: 0;
    margin-top: 6%;
  }
  #floor_guide .box_2main #floor04 .mapImg {
    margin-left: 0;
    margin-top: 6%;
  }

}



/* モーダル */
#floor_guide .box_2main .modal {
  display: none;
  position: fixed;
  z-index: 1000;
  padding: 1.0% 1.0% 1.0%;
  border-radius:1%;
  background-color: #fff;
  text-align: center;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -o-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}
#floor_guide .box_2main .modal .close {
  position: absolute;
  right: -3%;
  top: -3%;
  cursor: pointer;
  z-index: 5;
}
#floor_guide .box_2main .modal .name {
  margin-top: 2.5%;
  display: block;
}

#floor_guide #modal_bg {
  position: fixed;
  background-color: #000;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.5;
  z-index: 999;
}

@media all and (max-width: 767px) {
  #floor_guide .box_2main .modal {
    width: 88%;
    padding: 1.5% 1.5% 2.0%;
  }
}




/*--------------------
よくあるご質問
--------------------*/

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

  #faq .box_2main .one_faq .a_box{
    display:block !important;
  }
}

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

  #faq .box_2main .one_faq .a_box{
    display:none;
  }

}

#faq .box_2main .one_faq{
  border-bottom:1px solid #e0e0e0;
  padding:0 0 2.5% 0;
  margin-bottom:2.5%;
}

#faq .box_2main .one_faq dl dt{
  width:3%;
  float:left;
  text-align: center;
  font-weight: bold;
  line-height: 2;
}

#faq .box_2main .one_faq dl dd{
  width:95%;
  float:right;
  line-height:2;
}

#faq .box_2main .one_faq dl.q_box{
  margin-bottom:1.2%;
}

#faq .box_2main .one_faq dl.q_box dt{
  background: #a18aed;
  border:1px solid #a18aed;
  color: #fff;
}

#faq .box_2main .one_faq dl.q_box dd{
  font-weight:bold;
}

#faq .box_2main .one_faq dl.a_box dt{
  background: #fff;
  border:1px solid #a18aed;
  color: #a18aed;
}


#faq .box_2main .t_box{
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
  margin: 2.5% 0 5.7%;
  text-align: center;
  width: 80%;
}

#faq .box_2main .t_box th{
  background: #f7f7f7;
  font-size: 1.08rem;
  font-weight: bold;
}

#faq .box_2main .t_box tr:nth-of-type(2){
  background: #f7f7f7;
}

#faq .box_2main .t_box th,
#faq .box_2main .t_box td{
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
  padding: 1.3% 1.5%;
  vertical-align: middle;
  line-height: 1.78;
  box-sizing: border-box;
  width: calc(100% / 4);
}


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

  #faq .box_2main .one_faq{
    border-bottom:none;
    padding:2% 0;
    margin-bottom:0%;
  }

  #faq .box_2main .one_faq dl.q_box{
    background:#f2f2f2;
    padding:2%;
  }


  #faq .box_2main .one_faq dl.a_box{
    padding:2%;
  }

  #faq .box_2main .one_faq dl.q_box dd{
    position:relative;
    padding:0 6% 0 0;
    box-sizing:border-box;
    line-height:1.8;
  }

  #faq .box_2main .one_faq dl.q_box dd:after {
    content: '＋';
    position: absolute;
    top:-3px;
    right:0;
    color: #a18aed;
    font-size: 1.28rem;
    font-weight: bold;
  }

  #faq .box_2main .one_faq dl.q_box dd.active:after {
    content: '－';
  }

  #faq .box_2main .one_faq dl dt{
    width:5.5%;
    line-height: 1.6;
  }

  #faq .box_2main .one_faq dl dd{
    width:92%;
  }

  #faq .box_2main .one_faq dl.a_box dd{
    font-size:0.93rem;
    line-height:1.6;
  }

  #faq .box_2main .t_box{
    margin: 2.5% 0 5.7%;
    text-align: center;
    width: 100%;
  }
  #faq .box_2main .t_box th{
    font-size: 1rem;
  }


}

/*--------------------
施設概要
--------------------*/

#profile .box_2main .overview td.service{
  padding:1.4rem 0.7rem 1rem;
}

#profile .box_2main .overview td dl + dl{
  margin-top:1.3rem;
}

#profile .box_2main .overview td dl .ttl_dots{
  margin-bottom:.5rem;
}

#profile .box_2main .overview td dl .ttl_dots a{
  text-decoration:underline;
}

#profile .box_2main .overview td dl dd{
  margin-left:20px;
}

#profile .box_2main .overview td ul li:before{
  content:none;
}

#profile .box_2main .overview td .btn{
  width:25%;
  min-width:195px;
  margin:1% 0 0;
}

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

  #profile .box_2main .overview td.service{
    padding:0.7rem;
  }

  #profile .box_2main .overview td .btn{
    width:100%;
  }

}

/*--------------------
  協力医療機関
--------------------*/

#cooperation .one_block{
  margin-top:4%;
}

#cooperation .one_block + .one_block{
  margin-top:8%;
}

#cooperation .ttl_area{
  position:relative;
  border-bottom: 1px solid #a18aed;
  margin-bottom: 1.3rem;
}

#cooperation .ttl_area h3{
  margin-bottom:0;
  border-bottom:none;
  width:70%;
  float:left;
}

#cooperation .btn_blank{
  margin-top: 1.5rem;
  display: inline-block;
  min-width: 180px;
}

#cooperation .ttl_area .btn_blank a{
  padding:.6rem 0;
}

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

  #cooperation .ttl_area h3{
    width:100%;
    float:none;
  }

  #cooperation .btn_blank{
    display: block;
  }

}


/*--------------------
情報公開
--------------------*/
#report .btn a{
  display:inline-block;
}

@media screen and (max-width : 768px) {
  #report .btn a{
    display:block;
  }

}