@charset "UTF-8";

/* 共通 */
.header .header_left .page_title{
  color:#fff;
}

.header .header_left .clinic_box .clinic_name01{
  color:#fff;
}

.header .header_left .clinic_box .clinic_name02{
  color:#fff;
}


.main_image {
    position: relative;
    height: 646px;
    padding-top: 0;
    box-sizing: border-box;
    background: url(/images/inlay-crown/inlay_key.webp) center top/cover no-repeat;
    overflow: hidden;
}

.main_image .inner {
    width: 1025px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
    box-sizing: border-box;
}
.main_image .text {
    position: relative;
    z-index: 5;
    padding-top: 300px;
    padding-left: 0;
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
    font-size: 36px;
    letter-spacing: 0.2em;
    color: #fff;
    text-shadow: 0 0 5px rgba(155, 152, 152, 0.71);
}
.main_image .text:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: -105px;
    top: 50%;
    transform: translateY(-50%);
    width: 221px;
    height: 221px;
    background: url(/images/common/key_logo.webp) center/contain no-repeat;
}
.point{
  margin-bottom:100px;
}


/* setion1 start */
.sec01 {
    position: relative;
    box-sizing: border-box;
    width: 1280px;
    max-width: 100%;
    margin: 0 auto 10vw;
}

.sec01 .cont01 {
    margin-bottom: 80px;
}
.sec01 .cont01 .textbox {
    margin-right: 50px;
}
.sec01 .check_list_box {
    width: 1100px;
    max-width: 100%;
    padding: 35px 0 50px;
    margin: 0 auto;
    background-color: #fff;
    box-sizing: border-box;
    border:solid 1px #333333;
}


/* sec02 start */

.sec02 .point01 {
  margin-bottom: 80px;
  display: block;
}

.sec02 .point_header01{
  display: flex;
  align-items: center;
  margin-bottom: 30px;
  justify-content: center;
}

.sec02 .point01 .imagebox {
  width: 100%;
  min-width: none;
  max-width: none;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 48px;
}

.sec02 .point01_text{
  padding-left:55px;
}

.sec02 .point_title {
  letter-spacing: .01em;
}
.sec02 .point01_text02{
  margin-bottom:2vw;
  font-size:20px;
  width:170px;
  text-align:center;
  font-family:"游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
}

.sec02 .point02{
  flex-direction: row-reverse;
}

.sec02 .point02 .imagebox {
  position: relative;
}
.sec02 .point02 .point_bubble{
  position: absolute;
  top:  clamp(89px, 11.562vw,148px);/*9vw;*/
  left: clamp(190px, 24.687vw, 316px); /*21vw;*/
  border-radius: 50%;
  text-align: center;
  background-color: rgba(128, 128, 128, .6);
  width: clamp(105px, 14.6vw, 168px);
  height: clamp(105px, 14.6vw, 168px);

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  font-family: "游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
  font-size: clamp(12px, 1.328vw, 17px); /*1.5vw;*/
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.6;
  color: #fff;
  }


.sec02 .point03 .imagebox {
  position: relative;
}
.sec02 .point03 .point_bubble{
  position: absolute;
  top:  clamp(83px, 10.781vw, 138px);
  left: clamp(179px, 23.281vw, 298px);
  border-radius: 50%;
  text-align: center;
  background-color: rgba(128, 128, 128, .6);
  width:  clamp(105px, 14.6vw, 168px);
  height: clamp(105px, 14.6vw, 168px);

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  font-family: "游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
  font-size: clamp(12px, 1.328vw, 17px); /*1.5vw;*/
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.6;
  color: #fff;
  }





/* sec03 start */
.sec03 .sec_header{
  margin-bottom:25px;
}
.sec03 .cautionarynote{
    font-size:15px;
    letter-spacing:0.1em;
    text-align:right;
    color:#C67375;
    margin-bottom:50px;
    font-family:"游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif

}
.sec03 .menu_box {
  /* display:flex;
  justify-content:space-between;
  align-items:center; */
  margin: 0 auto 3vw;
  box-sizing: border-box;
  font-family:"游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif

}
.sec03 .menu_box .textbox {
  width: 100%;
  margin-right: 80px;
  box-sizing: border-box;
}

.sec03 .menu_box .menu_title{
  font-size:20px;
  letter-spacing:0.1em;
  line-height:1.2;
  text-align:left;
  margin-bottom:61px;
  box-sizing:border-box;
}
.sec03 .menu_box .menu_text {
  letter-spacing: 0.1em;
    line-height: 2;
    text-align: justify;
    /* margin-bottom:66px; */
}

.sec03 .menu_box .menu_hedder {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.sec03 .menu_box .menu_head_price{
    margin-bottom:61px;
    letter-spacing:0.1em;
    text-align:right;
    max-height:100%;
}

.sec03 .menu_box .menu_head_price_box .menu_price {
  margin-bottom: 10px;
  letter-spacing: 0.1em;
  text-align: right;
}

.sec03 .menu_box .menu_price {
  margin-bottom: 5px;
  letter-spacing: 0.1em;
  text-align: right;
}

.sec03 .balance_box {
  display: flex;
  justify-content: space-between;
  padding-bottom: 40px;
  border-bottom: 1px solid #808080;
  margin-bottom: 45px;
}

.sec03 .balance_box1 {
  display: flex;
  justify-content: space-between;
  padding-bottom: 40px;
  margin-bottom: 45px;
}

.sec03 .merit_title{
  font-size:18px;
  text-align: center;
  letter-spacing: 0.2em;
  color:#FAA9B5;
  padding-bottom:18px;
  border-bottom: 1px solid #FAA9B5;
  margin-bottom: 30px;
}

.sec03 .merit_box{
  position:relative;
  width:525px;
  max-width: 48%;
  padding: 40px 50px;
  margin: 0 auto;
  box-sizing: border-box;
  background: #f8ebeb;

}

.sec03 .merit_list{
width: 100%;
margin: 0 auto;
}

.sec03 .merit_item:not(:last-of-type){
  margin-bottom: 25px;
}

.sec03 .merit_item {
  position: relative;
  padding-left:2em;
  box-sizing:border-box;
  letter-spacing: 0.1em;
}

.sec03 .merit_item:before {
  content:"";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  background: url(/images/inlay-crown/merit.webp) center/contain no-repeat;
}

.sec03 .demerit_title{
  font-size:18px;
  text-align: center;
  letter-spacing: 0.2em;
  color:#808080;
  padding-bottom:18px;
  border-bottom: 1px solid #73608E;
  margin-bottom: 30px;
}

.sec03 .demerit_box {
  position: relative;
  width: 525px;
  max-width: 48%;
  padding: 40px 50px;
  margin: 0 auto;
  box-sizing: border-box;
  background: #ededed;
}

.sec03 .demerit_list{
  width: 100%;
  margin: 0 auto;
  }

  .sec03 .demerit_item:not(:last-of-type){
    margin-bottom: 25px;
  }

  .sec03 .demerit_item {
    position: relative;
    padding-left:2em;
    box-sizing:border-box;
    letter-spacing: 0.1em;
  }

  .sec03 .demerit_item:before {
    content:"";
    position: absolute;
    left: 0;
    top: 3px;
    width: 16px;
    height: 16px;
    background: url(/images/inlay-crown/demerit.webp) center/contain no-repeat;
  }

  .sec03 .flexbox{
    margin-bottom: 110px;
  }

/* sec04 start */
.sec04 {
    margin-bottom: 100px;
  }
  .sec04 .cont01 {
    margin-bottom: 65px;
    flex-direction: row-reverse;
  }
  .sec04 .cont01 .textbox {
    margin-right: 50px;
  }


@media screen and (max-width: 767px) {
  .main_image {
    position: relative;
    height: 80vw;
    padding-top: 45.3vw;
    box-sizing: border-box;
    background: url(/images/inlay-crown/inlay_key.webp) center top/cover no-repeat;
    overflow: hidden;
  }
  .main_image .inner {
    padding: 0 2.7vw;
  }
  .main_image .text {
    padding-top: 0;
    padding-left: 0;
    font-size: 5.8vw;
    text-align: center;
  }
  .main_image .text:before {
    left: 0;
    top: 4.3vw;
    width: 21.3vw;
    height: 21.3vw;
    background: url(/images/common/key_logo.webp) center/contain no-repeat;
  }

  .point_title{
    font-size: 5.5vw;
    letter-spacing: 0.008em;
  }
  .sec02 .point01{
    margin-bottom:10vw;
  }
  .sec02 .point02{
    margin-bottom:10vw;
  }
  .sec02 .point03{
      margin-bottom:15vw;
  }
  .sec02 .point01_text02{
    margin-bottom: -1.5vw;
    font-size: 3.75vw;
    line-height: 1.1;
    width: 36.66vw; /*160px;*/
    text-align: center;
  }
  .imagebox{
    min-width: 100%;
    box-sizing: border-box;
    margin: 0 auto 4.2vw;
    position:relative;
  }
  .imagebox img{
    width: 100%;
    height: 100%;
  }
  .sec02 .point_header01 {
    margin-bottom: 4.2vw;
  }
  .sec02 .point01 .imagebox {
    margin-bottom: 4.2vw;
  }
  .sec02 .point01_text{
    padding-left:2vw;
  }
  .sec02 .point_image img{
    width: 100%;
  }
  .sec02 .point01_text{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 9vw;
    left: 50vw;
    width: 26.6vw;
    height: 26.6vw;
    border-radius: 50%;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.6);
    font-size: 3.4vw;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.6;
    color: #333333;
    padding: 4vw;
}


  .sec02 .point02 .point_bubble{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 25vw;
    left: 52vw;
    width: 32.6vw;
    height: 32.6vw;
    border-radius: 50%;
    text-align: center;
    background-color: rgba(128, 128, 128, .6);
    font-size: 3.4vw;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.6;
    color: #fff;
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
}
.sec02 .point03 .point_bubble{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 25vw;
  left: 52vw;
  width: 32.6vw;
  height: 32.6vw;
  border-radius: 50%;
  text-align: center;
  background-color: rgba(128, 128, 128, .6);
  font-size: 3.4vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
  col
}

  .sec03 .cautionarynote{
    font-size: 3vw;
    margin-bottom: 4.2vw;
  }

  .sec03 .menu_box .menu_hedder{
    display: block;
    margin-bottom: 4.2vw;
  }

  .sec03 .menu_box .menu_text{
    font-size: 4vw;
    letter-spacing: 0.1em;
    line-height: 2;
    text-align: justify;
  }
  .sec03 .menu_box .textbox{
    margin-right: initial;
    box-sizing: border-box;
  }
  .sec03 .balance_box{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 13.8vw;
  }
  .sec03 .balance_box1{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 13.8vw;
    padding-bottom: 0;
  }

  .sec03 .merit_box{
    width: 100%;
    max-width: 100%;
    margin: 0 auto 4.2vw;
    padding: 5.5vw;
    box-sizing: border-box;
  }
  .sec03 .merit_box .merit_title{
    font-size: 4.8vw;
    letter-spacing: 0.1em;
    margin-bottom: 4.2vw;
  }
  .sec03 .merit_box .merit_item{
    flex-grow: 1;
    font-size: 4vw;
    letter-spacing: 0.2em;
    padding-left: 1.6em;
    margin-bottom: 15px;
    position: relative;
  }
  .sec03 .merit_box .merit_item::before{
    content: "";
        position: absolute;
        top: 1vw;
        left: 0;
        width: 4.53vw;
        height: 4.53vw;
        background: url(/images/inlay-crown/merit.webp) center / contain no-repeat;
  }

  .sec03 .demerit_box{
    width: 100%;
    max-width: 100%;
    padding: 5.5vw;
    margin: 0 auto;
    box-sizing: border-box;
  }
  .sec03 .demerit_box .demerit_title{
    font-size: 4.8vw;
    letter-spacing: 0.1em;
    margin-bottom: 4.2vw;
  }
  .sec03 .demerit_box .demerit_item{
    flex-grow: 1;
    font-size: 4vw;
    letter-spacing: 0.2em;
    padding-left: 1.6em;
    margin-bottom: 15px;
    position: relative;
  }
  .sec03 .demerit_box .demerit_item::before{
    content: "";
    position: absolute;
    top: 1vw;
    left: 0;
    width: 4.53vw;
    height: 4.53vw;
    background: url(/images/inlay-crown/demerit.webp) center / contain no-repeat;
  }
.sec03 .menu_box .menu_title{
font-size: 4.8vw;
letter-spacing: 0.1em;
line-height: 1.6;
/*height: 13.3vw;*/
margin-left: initial;
padding-left: 15px;
display: flex;
align-items: center;
margin-bottom: 2.4vw;
box-sizing: border-box;
text-align: left;
}
.sec03 .menu_box .menu_head_price_box{
display: flex;
flex-direction: column;
justify-content: center;
}

.sec03 .menu_box .menu_head_price_box .menu_price{
font-size: 3.7vw;
margin-bottom: 1vw;
letter-spacing: initial;
text-align: right;
}

.sec03 .menu_box .menu_price{
font-size: 4vw;
margin-bottom: 1.2vw;
letter-spacing: 0.1em;
text-align: right;
}
.sec03 .flexbox {
  display: flex;
  justify-content: center;
}



.sec04 {
  margin-bottom: 13.8vw;
  }
.sec04 .cont01 {
      margin-bottom: 4.2vw;
      flex-direction: row-reverse;
    }
    .sec04 .cont01 .textbox {
      margin-right: initial;
    }
      .sec04 .about_btn {
          margin-top: 13vw;
          margin-bottom:33vw;
      }
    }

    @media screen and (min-width: 768px) {
      .sec02 .point02 .textbox{
        margin-left:5vw;
      }
      .sec02 .point03 .textbox{
        margin-right:5vw;
      }
    }
  /*# sourceMappingURL=perio.css.map */

  /* common変更分 */

  @media screen and (max-width: 767px) {
    .check_list_box .check_text{
      padding: 0 5vw;
      font-size: 4vw;
      text-align: left;
    }

    .check_list_box .check_list_title::before {
    content: "";
    position: absolute;
    top: 116%;
    transform: translateY(-50%);
    right: 0px;
    background: url(/images/common/text_checklist.webp) center / contain no-repeat;
    width: 61px;
    height: 50px;
  }
  /*.footer .info_box .left .telbox{
    width: 300px;
    background-color: rgba(51, 51, 51, 0.8);
    padding: 15px 20px;
    box-sizing: border-box;
    margin-right: 85px;
  } */
  .footer .info_box .left .telbox .text01{
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
    font-size: 15px;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .footer .info_box .left .telbox .tel_num{
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "noto serif jp", serif;
  font-size: 25px;
  font-weight: 200;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  }

}
/* .check_list_box::before
（頭の上にあるやつ）
commonに記述、消していいのかわからないためとりあえず放置 */

/* 共通部分 */
@media screen and (max-width: 767px) {
  .check_list_box .check_text{
    padding: 0 5vw;
    font-size: 4vw;
    text-align: left;
  }

  .check_list_box .check_list_title::before {
  content: "";
  position: absolute;
  top: 116%;
  transform: translateY(-50%);
  right: -15.73vw;/*0px;*/
  background: url(/images/common/text_checklist.webp) center / contain no-repeat;
  width: 16.26vw; /*61px;*/
  height: 13.33vw; /*50px;*/
}

}