@charset "UTF-8";
/* ===================================
共通
=================================== */
@charset "UTF-8";
/* ===================================
共通
=================================== */
body {
  font-family: 'Noto Sans SC', sans-serif !important;
}

.fv{
  padding: 0 20px 65px;
}
.top_box{
  max-width: 1260px;
  margin: 0 auto;
}
.cli_area {
  margin: 55px 0 80px;
}
h2{
  font-size: 80px;
  font-weight: 300;
}
.fv,.doctor_profile{
  border-bottom: 5px solid #484242;
}

/* doctor_profile */
.doc_box{
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  max-width: 1140px;
  margin: 80px auto 95px;
  padding: 0 20px;
}
.car_li{
  display: flex;
  line-height: 1.6;
}
.car_li .date{
  margin-right: 20px;
}
.doc_txtBox{
  width: 48.5%;
}
.doc_txtBox h2{
  margin: 15px 0 38px;
}
.doc_txtBox dl{
  display: flex;
  flex-wrap: wrap;
}
.doc_txtBox dt{
  width: 18%;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}
.doc_txtBox dd{
  width: 82%;
  font-size: 14px;
}
.doc_txtBox .en_page dt {
  width: 31%;
}
.doc_txtBox .en_page dd {
  width: 69%;  
}
.doc_txtBox .iconBox{
  display: flex;
  align-items: center;
  margin: 15px 0 40px;
  gap: 28px;
}
.iconBox li{
  width: 20px;
}
.director{
  font-size: 16px;
  font-weight: 700;
}
.director span{
  font-size: 16px;
  font-weight: 400;
  font-family:'Cabin', sans-serif;
}
.qual{
  margin-bottom: 45px;
  line-height: 1.5;
}

.doc_imgBox{
  width: 49%;
}
.doc_imgBox img{
  max-width: 350px;
  width: 100%;
  margin: 0 auto;
}

/* タブ切り替え */
.menu_cat {
  margin: 70px 0 0 0;
}
.tab {
  margin: 0 auto;
}
/* タブメニュー */
.tab__menu {
  display: flex;
  align-items: flex-end; /* メニューを下揃え */
  justify-content: center;
  padding: 0;
  margin: 0;
}
.tab__menu-item {
  font-size: 14px;
  font-weight: 700;
  width: 50%;
  text-align: center;
  list-style: none;
  cursor: pointer;
  padding-bottom: 15px;
  border-bottom: 3px solid #C5BCB7;
  opacity: 0.3;
}
/* is-activeがついている時のスタイル */
.tab__menu-item.is-active {
  opacity: 1;
  border-bottom: 3px solid #DFA3A3;
}
/* タブパネル */
.tab__panel {
 width: 100%;
 padding-top: 38px;
}
.tab__panel-box {
  min-height: 400px;
  border-radius: 10px;
}
.tab__panel-box001 {
  display: none;
}
.tab__panel-box002 {
  display: none;
}
/* is-showがついている時のスタイル */
.tab__panel-box.is-show {
  display: block;
}


/* 料金表 */
.base_price{
  font-size: 14px;
  line-height: 2.0;
  margin-bottom: 20px;
}
.base_price_note{
  font-size: 12px;
}
.price_area h2{
  margin-bottom: 25px;
}
.price_area h3{
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 22px;
}
.price_area{
  max-width: 940px;
  margin: 28px auto 95px;
  padding: 0 20px;
}
.c-content-box{
  margin-bottom: 30px;
}
.c-textarea_box{
  border-radius: 6px;
  background-color: #F4F1EF;
}
.c-textarea {
  margin-bottom: 53px;
}
.c-textarea h2{
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 20px;
  margin-top: -60px;
  padding-top: 60px;
}
.price-table-box{
  padding: 6px 30px 16px; 
}
.price-table-box:first-of-type{
  padding: 16px 30px 16px; 
} 
.price-table-line{
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #C5BCB7;
  padding-bottom: 8px;
}
.price-table-box:last-of-type .price-table-line{
  border-bottom: none;
}

.tableWrap_headIn{
  display: flex;
  flex-wrap: wrap;
  width: 260px;
}
.tableWrap_head01{
  font-size: 14px;
  font-weight: 700;
}
.tableWrap_head02{
  font-size: 14px;
  width: 50%;
  margin-bottom: 7px;
}
.tableWrap_head03{
  font-size: 14px;
  width: 50%;
  text-align: end;
}
.note{
  font-size: 12px;
  margin-top: 7px;
}


/* footer */
.footer_map_flex{
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 80px auto 100px;
  padding: 0 20px;
}
.footer_map_left{
  width: 52%;
}
.footer_map_right{
  width: 41%;
  font-size: 14px;
  margin-top: 20px;
}
.footer_map_right dl{
  display: flex;
  flex-wrap: wrap;
}
.footer_map_right dt{
  width: 21%;
  font-weight: 700;
  padding-bottom: 20px;
  border-bottom: 1px solid #C9C7C7;
  margin-bottom: 20px;
}
.footer_map_right dd{
  width: 79%;
  padding-bottom: 20px;
  border-bottom: 1px solid #C9C7C7;
  margin-bottom: 20px;
  line-height: 1.6;
}
.footer_map_right .en_page dt {
  display: flex;
  align-items: center;
  width: 31%;
}
.footer_map_right .en_page dd {
  display: flex;
  align-items: center;
  width: 69%;
}
.footer_ttl {
  margin: 80px auto 67px;
}
.footer_res {
  font-size: 30px;
  padding: 0;
  width: 280px;
  display: block;
  margin: 0 auto;
}
.content_inner {
  margin-left: 0px;
  text-align: center;
}
.footer_tel {
  font-size: 30px;
  margin-left: 50px;
}
.footer_tel::before {
  top: 8px;
}
.bottom_bottom_inner {
  justify-content: center;
}

@media screen and (max-width: 1024px) {
  h2{
    font-size: 60px;
  }
}
@media screen and (max-width: 768px) {
  /* 共通 */
  .fv{
    padding: 50px 20px 30px;
  }
  
  /* doctor_profile */
  .doc_box{
    display: block;
    margin: 0px auto 50px;
  }
  .car_li .date{
    margin-right: 20px;
  }
  .doc_txtBox{
    width: 100%;
    margin-bottom: 20px;
  }
  .doc_txtBox h2{
    margin: 15px 0 15px;
    text-align: left;
  }
  .doc_txtBox dl{
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  .doc_txtBox dt{
    width: 100%;
    margin-bottom: 10px;
  }
  .doc_txtBox dd{
    width: 100%;
  }
  .doc_txtBox .en_page dt {
    width: 100%;
  }
  .doc_txtBox .en_page dd {
    width: 100%;
  }
  .doc_txtBox .iconBox{
    display: flex;
    align-items: center;
    margin: 10px 0 25px;
    gap: 28px;
  }
  .iconBox li{
    width: 20px;
  }
  .director{
    font-size: 16px;
    font-weight: 700;
  }
  .director span{
    font-size: 16px;
    font-weight: 400;
    font-family:'Cabin', sans-serif;
  }
  .qual{
    margin-bottom: 25px;
    line-height: 1.5;
  }
  .doc_imgBox{
    width: 100%;
  }
  .doc_imgBox img{
    max-width: 460px;
    width: 100%;
    margin: 0 auto 20px;
  }

  /* タブ切り替え */
  .menu_cat {
    margin: 35px 0 0 0;
  }
  .tab__menu-item {
    padding-bottom: 10px;
  }
  .tab__panel {
    padding-top: 20px;
  }
  .price_area h3{
    font-size: 20px;
    margin-bottom: 15px;
  }

  /* 料金表 */
  .base_price{
    margin-bottom: 10px;
  }
  .price-table-line{
    display: block;
  }
  .tableWrap_headIn{
    width: 100%;
  }
  .tableWrap_head01{
    margin-bottom: 5px;
  }
  .price_area{
    margin: 20px auto 50px;
  }
  .price_area h2{
    margin-bottom: 0px;
  }

  /* footer */
  .footer_ttl {
    margin: 20px auto 46px;
  }
  .footer_map_flex{
    display: block;
    margin: 40px auto 50px;
  }
  .footer_map_left{
    width: 100%;
  }
  .footer_map_right{
    width: 100%;
    margin-top: 20px;
  }
  .footer_map_right dl{
    display: block;
  }
  .footer_map_right dt{
    width: 100%;
    padding-bottom: 10px;
    margin-bottom: 0px;
    border-bottom: none;
  }
  .footer_map_right dd{
    width: 100%;
    padding-bottom: 10px;
    margin-bottom: 15px;
  }
  .footer_map_right .en_page dt {
    width: 100%;
  }
  .footer_map_right .en_page dd {
    width: 100%;
  }
  .footer_res {
    font-size: 16px;
    padding: 8px 0px;
  }
  .bottom_bottom{
    height: auto;
    position: relative;
    margin-bottom: 80px;
  }
  .bottom_bottom_inner{
    height: 134px;
    padding: 0 20px 65px;
  }
  .footer_res {
    width: 200px;
  }
  .footer_tel {
    font-size: 16px;
    margin-left: 50px;
  }
  .footer_tel::before {
    top: 1px;
  }
}

@media screen and (max-width: 428px) {
  h2{
    font-size: 50px;
  }
}
  

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

