/* ----------common----------- */



/* ----------common----------- */
/* ----------header----------- */

/* ----------header----------- */
/* ----------front----------- */
#front .mv { max-width: 1200px; width: 100%; margin: 0 auto; }
#front #mainvisual-2 { margin-top: 80px; display: flex; }
#front .left-img-box,.right-box { position: relative; width: 50%; }
#front .left-img-box img { width: 100%; }
#front .left-img-box .sub-title { background: rgba(0,0,0,0.4); color: #ccc; padding: 10px; z-index: 2; position: absolute; bottom: 0; }
#front .right-box-inner,.right-box-inner-inner,.right-box-inner-inner1 { width: 50%; }
#front .right-box-inner,.right-box { display: flex; flex-wrap: wrap; }
#front .right-box-inner { border: 2px solid #fff; box-sizing: border-box; position: relative; }
#front .right-box-inner-inner.color6 { border: 2px solid #fff; box-sizing: border-box; }
#front .right-box-inner-inner { position: relative; height: 50%; }
#front .right-box-inner2 { width: 50%; display: flex; flex-wrap: wrap;}
#front .right-box-inner-inner.color6 { padding: 10px; }

#front .btn1 { transition-duration: .5s; opacity: 1; display: flex; align-items: center; justify-content: center; position: relative; background-color: #eee1c8; text-align: center; padding: 10px 0px; width: 280px; margin: 0 auto; }
#front .btn1:hover { transition-duration: .5s; opacity: 0.65; }
#front .btn1 span { transition-duration: .5s; width: 20px; height: 20px; background-color: #fff; display: block; transform: rotateZ(45deg); position: absolute; z-index: 2; right: 20px; }
#front .btn1 span::after { transition-duration: .5s;  content: ""; display: block; z-index: 3; position: absolute;  border-top: 10px solid #3e3e3e; border-right: 10px solid #3e3e3e; border-bottom: 10px solid transparent; border-left: 10px solid transparent; }
#front .btn1:hover span::after { transition-duration: .5s;  content: ""; display: block; z-index: 3; position: absolute; border-top: 10px solid #3e3e3e; border-right: 10px solid #3e3e3e; border-bottom: 10px solid #3e3e3e; border-left: 10px solid #3e3e3e; }
#front .btn1:hover span { transition-duration: .5s; transform: rotateZ(0deg); }
#front .btn1.color6 { color: #fff;}
#front .btn1 + .btn1 { margin-top: 30px; }
#front .right-box-inner::before {
    content: "";
    display: block;
    padding-top: 100%;
  }
.color5 { background-color: #817254; }
.color6 { background-color: #3e3e3e!important; }
.color7 { background-color: #a52c26; }
.color8 { background-color: #ededed; }
.color9 { background-color: #616161; }
.t-color-w { color: #fff; }
#front .right-box div:nth-child(1) { align-items: flex-end; justify-content: end; display: flex; }
#front .right-box div:nth-child(1) img { width: 30%; }
#front .text1 { font-family: 'Teko', sans-serif; }
#front .v2-news-list { display: flex; justify-content: center; margin-bottom: 30px; }
#front .v2-news-list div.color6 { width: 5px; margin-right: 20px; }
#front .v2-news-list .box { padding: 20px; }
#front .v2-news-list .box .btn1 { margin-top: 30px; }
#front .chiryo { position: relative; z-index: 3; width: 100%; margin: 100px auto 100px; display: flex; min-height: 400px; align-items: center; }
#front .chiryo p { font-size: 0.85rem; line-height: 2;}
#front .flex-end { justify-content: flex-end; }
#front .chiryo h3 { font-size: 1.6rem; font-weight: bold; margin-bottom: 30px;}
#front .chiryo div:nth-child(1) h3 { text-align: right;}
#front .chiryo div:nth-child(1) { max-width: 500px; display: flex; flex-direction: column; align-items: center; }
#front .chiryo img { max-height: 400px; position: absolute; }
#front .chiryo img.taisaku { position: relative; }
#front .mag100-bo { margin-bottom: 100px; }
#front .right {  right: 0; }
#front .left { left: 8vw;}
#front .in-room { display: flex; position: relative; z-index: 3;  margin: 0 200px;}
#front .w1200 { max-width: 1200px; }
#front .w1200 .in-room { margin: 0 150px;  }
#front .categorys,#front .movies { display: flex; flex-wrap: wrap; }
#front .categorys { margin-bottom: 150px; }
#front .categorys a { width: calc(100% / 3); height: 300px; display: flex; position: relative; z-index: 1; align-items: center; justify-content: center; }
#front .movies .item { width: calc(100% / 3); display: flex; position: relative; z-index: 1; align-items: center; justify-content: center; }
#front .categorys a dl { transition-duration: .5s; background-color: rgba(0,0,0,0.7); padding: 10px 20px; text-align: center; min-width: 140px; }
#front .categorys a:hover dl { transition-duration: .5s; }
#front .categorys dt,#front .categorys dd { color: #fff; }
#front .categorys dt { font-size: 0.95rem; }
#front .categorys dd { font-size: 0.85rem; text-align: center; display: flex; flex-direction: column; align-items: center;}
#front .categorys dd::after,#front .btn1.color6::after { transition-duration: .5s; content: ""; display: block; width: 10px; height: 10px; background-color: #fff; transform:rotateZ(45deg); margin: 5px;}
#front .btn1.color6::after { position: absolute; z-index: 2; right: 20px;}
#front .categorys a:hover dd::after,#front .btn1.color6:hover::after  { transition-duration: .5s; transform:rotateZ(0deg); width: 12px; height: 12px; }
#front .categorys a { transition-duration: .5s; background-repeat: no-repeat; background-size: cover; }
#front .categorys a:hover {  transition-duration: .5s; opacity: 0.85; }
#front .categorys a:nth-child(1) { background-image: url(../img/information.jpg);}
#front .categorys a:nth-child(2) { background-image: url(../img/medical.jpg);}
#front .categorys a:nth-child(3) { background-image: url(../img/implant.jpg);}
#front .categorys a:nth-child(4) { background-image: url(../img/staff.jpg);}
#front .categorys a:nth-child(5) { background-image: url(../img/access.jpg); }
#front .hide-lg { margin-top: 0px;}
#front .bg-3 { color: #3e3e3e; }
#front .ruby2 { font-size: 1rem;}
#front .hide-lg .btn-box{ display: inline-block; }
#front .text1.sub-title { display: block; font-size: 0.85rem; font-weight: normal; }
#front .movies .item { background-color: #c6b188; }
#front .movies .item p { color: #fff; font-size: 1.2rem; text-align: center; line-height: 2;}
#front .line-soudan { margin: 30px 15px; max-width: 400px; width: calc(100% - 30px); }
.about-dc img { width: 240px; }
.table-1 th, .table-1 td { border: none; }
.movies { margin-bottom: 200px; }
.about-dc .table-1 th:nth-child(1), .table-1 td:nth-child(1) { border-right: 1px solid;}
.about-dc .table-1 tr + tr { border-top: 1px solid; }
.about-dc table + table { margin-left: 50px;}
.about-dc .table-3 th + td { padding-left: 20px;}
.about-dc .table-3 th,.about-dc .table-3 td { padding: 5px 0;}
.about-dc .flex { align-items: center;}
#footer { margin-top: 0;}
.sp-block { display: none;}
.news-box { padding-bottom: 50px; margin-bottom: 100px; }
.footer-content table { max-width: 50%;}

.menu1 { width: 100%; display: block; }
.pc-nav { width: 100%; padding-bottom: 10px; }
/* .menu li:nth-child(4){ margin-right: 15vw; } */
.po-re { text-align: center;  }
#pc-menu > ul > li > a { height: auto;}
#pc-menu > ul > li { padding: 0 20px;}
.header-content { height: auto;}
.header-tel { font-size: 16px;}
.header-logo img { width: 110px; }
main { margin-top: 130px; }
.left-img-box .sub-title { color: #fff; }
.tab-block { display: none; }
.clinic-name-info { display: block; font-size: 1.1rem; font-weight: bold; }
#front .chiryo.item { justify-content: space-around;}
#front .chiryo.item  .in-room { margin: 0;}
.big-title dd {font-size: 1rem; }
#front .font-7 {
  font-weight: bold;
  font-size: 34px;
  text-align: center;
}
#front .font-5 {
  font-weight: bold;
  font-size: 25px;
  text-align: center;
  line-height: 125%;
}


#front .infection-control-wrap { 
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
#front .infection-control-wrap dl {
  width: calc(calc(100% / 3) - 20px);
  text-align: center;
  border: 1px solid;
  margin: 10px;
  padding: 5px;
  position: relative;
}
#front .infection-control-wrap dl::before {
  position: absolute;
  content: "";
  z-index: 2;
  width: 20px;
  height: 20px;
  background-color: #4b4948;
  left: -10px;
  top: -10px;
}

#front .infection-control-wrap dl dt img { height: 70px;}
#front .infection-control-wrap dl dd {font-size: 0.8rem; text-align: left; padding: 10px 0; }
#front .infection-control-wrap dl dt span { display: block; font-size: 0.8rem;}
#front .chiryo .title { font-size: 1.2rem;  display: block; }
.recruit-wrap + .recruit-wrap {
  margin-top: 50px;
}

.recruit-wrap dl {
  display: flex;
  border: 1px solid #3e3e3e;
  border-bottom: none;
}
.recruit-wrap dl:last-child {
  border-bottom: 1px solid #3e3e3e;
}
.recruit-wrap dt {
  border-right: 1px solid #3e3e3e;
  text-align: center;
  width: 250px;
  background-color: rgb(217, 232, 245);
  padding-left: 5px;
  padding-top: 5px;
}
.recruit-wrap.red dt {
  background-color: rgb(243, 194, 216);
}
.recruit-wrap dd {
  width: calc(100% - 270px);
  padding-left: 5px;
  padding-top: 5px;
}

.recruit-wrap a {
  text-decoration: underline;
  font-weight: bold;
}

@media screen and (max-width: 992px) {
  #front .hide-lg { display: block;}
  main { margin-top: 0px; }
  #front .btn1:hover span::after {  transform: rotateZ(0deg); transition-duration: .5s;  content: ""; display: block; z-index: 3; position: absolute;  border-top: 10px solid #3e3e3e; border-right: 10px solid #3e3e3e; border-bottom: 10px solid transparent; border-left: 10px solid transparent; }
  #front .btn1:hover span { transform: rotateZ(45deg); }
  .footer-logo { width: auto;}
  .about-dc .flex.footer-content { justify-content: center;}
  #front .w1200 .in-room { margin: 0; width: 100%; }
  #front .chiryo { display: flex; flex-direction: column;  }
  .tab-block { display: block; }
  .tab-none { display: none; }
  #front .chiryo img { position: relative; z-index: 1; }
  #front .chiryo .in-room{ max-width: 100%!important; } 
  #front .chiryo .box {justify-content: center; height: 100%; align-content: center; max-width: 100%!important; align-items: flex-start; position: relative; }
  .footer-content table { max-width: 100%;}
  #front .ruby2 { display: block;}
  #front .chiryo.item img { max-height: 100%; }
  #front .chiryo.item img.taisaku { position: relative; z-index: 1; opacity: 0.4;}
  #front .chiryo.item .black { background-color: #000;  }
  #front .chiryo.item h3 { position: relative;}
  #front .chiryo p { padding: 30px 0;}
  #front .chiryo.item p { letter-spacing: 0.05em; text-align: left; font-size: 3.5vw; position: absolute; z-index: 2; color: #fff; width: 80%; padding: 0; }
  #front .chiryo.item { margin: 0;}

  


}
@media screen and (max-width: 1200px) {
  .sm-nav-icon .insta { width: 62px; height: 62px; display: block; position: absolute; right: 57px; top: -1px;}
  .sm-nav-icon .insta img { width:  62px; max-width: 62px;} 
}
@media screen and (max-width: 768px) {
  .container { max-width: calc(100%); padding-bottom: 100px; margin: 0 auto; padding: 0; }
  #front .container h2 { margin-bottom: 0; padding-left: 15px; }
  .container h2.logo { text-align: center; padding: 0 0 30px; width: 100%;}
  .footer-content { padding: 15px;}
  .table-1 + .table-3 { margin-top: 30px;}
  #front .btn1 { width: calc(100% - 30px); padding: 10px 0px; margin: 0 15px; font-size: 1.2rem; font-weight: bold; }
  #front .w1200 { max-width: 100%;}
  #front .categorys { margin-bottom: 100px;}
  #front .categorys,#front .movies { display: block; }
  #front .categorys a { width: 100%; background-size: cover!important; }
  #front .movies .item { width: 100%; }
  #front .movies div:nth-child(even) { height: 100px; }
  #front .movies .item p { margin-bottom: 0;}
  .about-dc .flex { display: block; }
  .about-dc table { width: 100%;}
  .about-dc table + table { margin-left: 0;}
  #front .chiryo .left { left: 0; }
  #front .v2-news-list { display: block; }
  #front .v2-news-list div.color6 { display: none; }
  #front .v2-news-list ul { padding: 15px; }
  #front .v2-news-list ul li a { padding: 10px 0; display: block; }
  #front .v2-news-list .box { padding: 0; }

  #front .container.sec { padding-bottom: 10px;}
  #front .in-room { margin: 0 auto; flex-direction: column; align-items: center;}
  /* .chiryo div:nth-child(1) { max-width: calc(100% - 30px); width: 100%; margin: 0 15px; } */
  #front .chiryo p { max-width: calc(100% - 30px); margin: 0 auto; }
  #front .chiryo p br { display: none;}
  #front .chiryo img { position: relative;}
  #front .sp-block { display: block;}
  #front .sp-none { display: none;}

  #front .chiryo p { font-size: 1rem; }
  #front section.color8 { margin-top: 100px;}
  #front .chiryo h3 { padding: 0 15px ;}
  #front .chiryo div:nth-child(1) h3 { text-align: left;}
  #front .categorys dl { width: 100%;}
  #front .categorys a { align-items: flex-end;}
  #front .categorys dd::after { display: none;}
  #front .categorys dt { font-size: 1.3rem; }
  #front .left-img-box { width: calc(calc(100% / 3) * 2 );}
  #front .hide-lg .btn-box { display: block;}
  #front .bg-3.sp-block { min-height: 260px;}
  #front .bg-3.sp-block h2 { padding: 30px 15px; }
  #front .container.sp-block div.mb-30 { padding: 15px;}
  #front .right-box-inner { width: 100%; flex-direction: column;}
  #front .right-box-inner::before { display: none;}
  #front .right-box.sp-block { width: calc(100%/3); display: block; }
  #front .right-box div:nth-child(1) > img { width:100%; }
  #front .right-box-inner-inner.sp { align-items: flex-end; justify-content:flex-start; display: flex; height: auto; }
  #front .right-box-inner-inner .teeth { width: 40%!important;}
  #front .chiryo.item p { font-size: 4vw;}
  #front .chiryo.item .title { font-size: 5.7vw; margin-bottom: 15px;}
  #front .chiryo.item { min-height: 100%;}
  #front .font-1 { font-size: 8vw ;}
  #front .font-7 { font-size: 8vw;}
  #front .right-box-inner-inner.pa::before {
    content: "";
    display: block;
    padding-top: 100%;
  } 
  #front .red { width: 50%;}
  #front .red::before {
    content: "";
    display: block;
    padding-top: 100%;
  }
  #front .border { border: 1px solid #fff!important; box-sizing: border-box; }
  #front .left-img-box .sub-title { font-size: 0.7rem;}

  #front .infection-control-wrap { display: block; }
  #front .infection-control-wrap dl { 
    width: calc(100% - 40px);
    margin: 30px 20px;
  }

  .recruit-wrap {
    padding: 15px;
  }

  .recruit-wrap dl {
    flex-direction: column;
    border-bottom: 1px solid;
  }
  .recruit-wrap dl + dl {
    margin-top: 5px;
  }
  .recruit-wrap dt {
    text-align: left;
    width: 100%;
    border-right: none;
    border-bottom: 1px solid;
  }
  .recruit-wrap dd {
    width: 100%;
  }
}
/* ----------front----------- */
/* ----------footer----------- */


/* ----------footer----------- */
