/* PC、スマホ共通スタイル */
body {
  width: 100%;
  font-family: serif;
  margin: 0;
  font-weight: bold;
  overflow-x: hidden;
}

.sp{
  display: none;
}
/* ヘッダー */
header {
  width: 100%;
  height: 7.8vw;
  position: absolute;
  top: 0;
}

header > a:nth-child(1) {
  width: 18vw;
  height: 5.5vw;
  position: absolute;
  top: 1vw;
  left: 5.2vw;
}

header img {
  width: 18vw;
  height: 5.5vw;
}

header > div:nth-child(2) {
  position: absolute;
  width: 26vw;
  height: 5vw;
  right: 21vw;
  top: 0.8vw;
  padding: 0.4vw 0.8vw 0vw 0.8vw;
  background-color: #bc646c;
  color: white;
  text-align: center;
}

header > div:nth-child(2) > p:nth-child(1){
  font-size: 2vw;
  margin: 0;
}

header > div:nth-child(2) > p:nth-child(1)::before{
  content: '';
  display: inline-block;
  background-image: url(images/tell.png);
  background-size: 1vw 2vw;
  background-repeat: no-repeat;
  width: 1vw;
  height: 2vw;
  position: relative;
  top: 0.2vw;
  margin-right: 0.3vw;
}

header > div:nth-child(2) > p:nth-child(2){
  font-size: 1vw;
  margin: -0.6vw 0 0 0;
}

.Online_reservation {
  position: absolute;
  width: 8.8vw;
  height: 5vw;
  line-height: 8.1vw;
  right: 10.65vw;
  top: 0.8vw;
  padding: 0.2vw 0.8vw;
  background-color: #54747c;
  color: white;
  font-size: 1vw;
  text-align: center;
  text-decoration: none;
  margin: 0;
}

.Online_reservation::before{
  content: "";
  background-image: url(images/pc_object.png);
  background-size: 2vw 1.5vw;
  background-repeat: no-repeat;
  width: 2vw;
  height: 1.5vw;
  position: absolute;
  top: 1.3vw;
  left: 4.3vw;
}

.openbtn, #g-nav, #g-nav-list {
  display: none;
}

/* ヘッダー ここまで*/

/* メインビジュアル */

#main-visual {
  width: 100%;
}

#main-message {
  width: 100%;
  height: 53.4vw;
  background-image: url(images/implant-02.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
}

#main-message > h1 {
  color: white;
  font-size: 4.4vw;
  font-weight: bold;
  position: absolute;
  top: 28vw;
  left: 9vw;
  margin: 0;
  line-height: 1.1;
}

#main-message > p:nth-child(3) {
  color: #fcdc1c;
  font-size: 4.4vw;
  font-weight: bold;
  -webkit-text-stroke: 0.5vw rgba(255, 255, 255, 0.288);
  position: absolute;
  top: 38vw;
  left: 9vw;
  margin: 0;
}

#main-message > p:nth-child(4) {
  color: black;
  font-size: 2vw;
  font-weight: bold;
  position: absolute;
  top: 47vw;
  left: 9vw;
  margin: 0;
}

.circle_common {
  position: absolute;
  color: #9c7c34;
  font-weight: bold;
  font-size: 2.5vw;
  background-color: white;
  border-radius: 50%;
  line-height: 1.1;
  margin: 0;
  text-align: center;
  white-space: nowrap;
}

.circle_small {
  top: 38.5vw;
  right: 15vw;
  width: 10.5vw;
  height: 10.5vw;
  background-clip: padding-box;
  border: 1.3vw solid rgba(255, 255, 255, 0.7);
}

.circle_middle {
  top: 25vw;
  right: 25vw;
  width: 12vw;
  height: 12vw;
  background-clip: padding-box;
  border: 1.3vw solid rgba(255, 255, 255, 0.7);
}

.circle_middle p{
  margin-top: 3vw;
}

.circle_big {
  top: 17vw;
  right: 6vw;
  width: 14vw;
  height: 14vw;
  background-clip: padding-box;
  border: 1.3vw solid rgba(255, 255, 255, 0.7);
}

.circle_big p{
  margin-top: 4vw;
  margin-left: 1vw;
}

nav {
  width: 100%;
  height: 6.3vw;
  background: linear-gradient(0deg, rgba(126,126,126,1) 0%, rgba(0,0,0,1) 100%);
  box-shadow: 0px 0.7vw 1vw -0.2vw rgb(0 0 0 / 50%);
}

nav a {
  position: relative;
  transform: translateY(28%);
  display: table-cell;
  vertical-align: middle;
  color: white;
  font-size: 1.1vw;
  text-decoration: none;
  /*width: 11.8vw;*/
  width: 14vw;
  line-height: 1.2;
  /*padding: 0 0.2vw 0 0.2vw;*/
  padding: 0 1vw 0 1vw;
  text-align: center;
  height: 4vw;
  border-left: 0.1vw solid white;
}

nav a:nth-child(1) {
  border: none;
}
nav a:last-child {
  width: 16vw;
}
/*nav a:nth-child(n+4):nth-child(-n+7)  {
  font-size: 1.3vw;
}*/

.fixed_tell a {
  display: none;
}

.fixed_tell {
  position: fixed;
  top: 45vh;
  right: 0;
  width: 10vw;
  height: 5vw;
  background-image: url(images/fixed.png);
  background-repeat: no-repeat;
  background-size: 10vw 5vw;
  text-align: center;
  box-shadow: -4px 12px 18px 5px rgb(0 0 0 / 63%);
}

.fixed_tell p {
  font-family: serif;
  font-size: 1.4vw;
  font-weight: bold;
  line-height: 3.7;
  text-decoration: none;
  color: #9c7c34;
  text-align: center;
  margin: 0;
}

.fixed_tell p::before {
  content: '';
  display: inline-block;
  background-image: url(images/tell.png);
  background-size: 1vw 2vw;
  background-repeat: no-repeat;
  width: 1vw;
  height: 2vw;
  position: relative;
  top: 0.5vw;
}

.fixed_reservation {
  position: fixed;
  top: 60vh;
  right: 0;
  width: 10vw;
  height: 5vw;
  background-image: url(images/fixed.png);
  background-repeat: no-repeat;
  background-size: 10vw 5vw;
  text-align: center;
  box-shadow: -4px 12px 18px 5px rgba(0, 0, 0, 0.63);
}

.fixed_reservation a {
  font-size: 1.5vw;
  font-weight: bold;
  line-height: 4.7;
  text-decoration: none;
  color: #9c7c34;
  text-align: center;
  position: relative;
}

.fixed_reservation a::before {
  content: "";
  background-image: url(images/pc_object.png);
  background-size: 2.4vw 1.7vw;
  background-repeat: no-repeat;
  width: 2.4vw;
  height: 1.7vw;
  position: absolute;
  top: -2vw;
  left: 29%;
}

/* メインビジュアル ここまで*/

/* インプラント治療とは */

#about_implant {
  position: relative;
  width: 100%;
  margin-top: 3vw;
}
/* 
#about_implant > div:nth-child(1){
  position: relative;
  width: 80%;
  height: 37vw;
  background-image: url(images/about_implant_background.png);
  background-size: 100% 37vw;
  background-repeat: no-repeat;
  margin: 0 auto;
}

#about_implant > div:nth-child(1) > p:nth-child(1) {
  font-size: 2.2vw;
  position: absolute;
  top: 4vw;
  left: 3vw;
  margin: 0;
}

#about_implant > div:nth-child(1) > p:nth-child(2) {
  font-size: 3.4vw;
  position: absolute;
  top: 7vw;
  left: 3vw;
  margin: 0;
}

#about_implant > div:nth-child(1) > p:nth-child(3) {
  font-size: 1.44vw;
  position: absolute;
  top: 13vw;
  left: 3vw;
  margin: 0;
  width: 47.4vw;
} */

#about_implant > p:nth-child(2) {
  width: 70%;
  height: 12.7vw;
  margin: 2vw auto 0vw;
  font-size: 3.5vw;
  text-align: center;
  line-height: 2.2;
  background-image: url(images/aboutimplant_triangle_bottom.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
/*  */
.about_box{
  position: relative;
  width: 75%;
    padding:35px 20px 20px 40px;
    margin: 0 auto 0 10vw;
    border: 5px solid #362c02;
    background: #fff;
  /* display: flex;
  flex-direction: row-reverse;
  align-items: center; */
}
.about_box::before{
  position: absolute;
  content: "";
  width: 102%;
  height: 104%;
  background: #dddcdc;
  z-index: -1;
  left: -4px;
  top: -4px;
}
.about_box img{
 width:480px;
}
.about_txt {
  font-size: 1.44vw;
  padding-right: 25.5vw;
}
.img_r{
  float: right;
  margin-top: 4vw;
}
.about_txt .ttl_txt{
  font-size: 2.2vw;
  margin-bottom: 0;
}
.about_txt .ttl_txt_big{
  font-size: 3.4vw;
  margin-top: 0;
  margin-bottom: 15px;
}
.circle_div {
  position: absolute;
  color: #9c7c34;
  font-size: 2.1vw;
  background-color: white;
  border: 0.3vw solid #9c7c34;
  border-radius: 50%;
  line-height: 1.1;
  margin: 0;
  text-align: center;
  width: 12vw;
  height: 12vw;
}
.center{
  text-align: center;
}
.problem {
  position: relative;
  width: 90vw;
  height: 40vw;
}

.problem > div:nth-child(1) {
  top: 3vw;
  left: 12vw;
}

.problem > div:nth-child(1) > p{
  margin-top: 3.7vw;
}

.problem > div:nth-child(2) {
  top: 20vw;
  left: 12vw;
  font-size: 1.7vw;
}
#about_implant > .problem > div:nth-child(7) {
  top: 3vw;
  left: 56.5vw;
  font-size: 1.8vw;
  display: flex;
  justify-content: center;
  align-items: center;

}
.problem > div:nth-child(2) > p{
  margin-top: 5vw;
}

.problem > div:nth-child(3) {
  top: 11vw;
  left: 26vw;
  font-size: 1.6vw;
}

.problem > div:nth-child(3) > p{
  margin-top: 3.4vw;
}

.problem > div:nth-child(4) {
  top: -2vw;
  left: 34vw;
}

.problem > div:nth-child(4) > p{
  margin-top: 3.5vw;
}

.problem > div:nth-child(5) {
  top: 24vw;
  left: 34vw;
}

.problem > div:nth-child(5) > p{
  margin-top: 3.2vw;
}

.problem > div:nth-child(6) {
  top: 12vw;
  left: 44.5vw;
  font-size: 1.5vw;
}

.problem > div:nth-child(6) > p{
  margin-top: 4.6vw;
}

.problem .box_treatment {
  top: 3vw;
  left: 56.5vw;
  font-size: 1.8vw;
}

.problem .box_treatment > p{
  margin-top: 3vw;
}

.problem > div:nth-child(8) {
  top: 23vw;
  left: 56.5vw;
  font-size: 1.8vw;
}

.problem > div:nth-child(8) > p{
  margin-top: 3.9vw;
}

.problem > img {
  position: absolute;
  top: 5vw;
  left: 70vw;
  width: 20vw;
  height: auto;
}

#about_implant > img {
  position: absolute;
  top: 91vw;
  left: 50%;
  transform: translateX(-50%);
  width: 8vw;
  height: auto;
}
.w_img img{
  width: 8vw;
}
#about_implant > p:nth-child(5) {
  width: 69%;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  font-size: 3vw;
  margin-bottom: 45px;
  background: linear-gradient(transparent 60%, #fcfc04 60%);
}

#about_implant > p:nth-child(5)::before {
  content: "";
  width: 7vw;
  height: 7vw;
  background-image: url(images/image02.png);
  background-size: 7vw auto;
  background-repeat: no-repeat;
  position: absolute;
  left: -9vw;
  top: -1vw;
}

#about_implant > p:nth-child(5)::after {
  content: "";
  width: 7vw;
  height: 7vw;
  background-image: url(images/image03.png);
  background-size: 7vw auto;
  background-repeat: no-repeat;
  position: absolute;
  left: 71vw;
  top: -1vw;
}

#about_implant > p:nth-child(6) {
  width: 70%;
  margin: 0 auto;
  font-size: 1.9vw;
  text-align: center;
  line-height: 1.2;
}

#about_implant .box_treatment {
  position: relative;
}

#about_implant .box_treatment {
  position: relative;
  margin: 0 auto;
  width: 85%;
  height: 56vw;
  margin-top: 30px;
  background-image: url(images/image04.png);
  background-repeat: no-repeat;
  background-size: 100%;
}

#about_implant .box_treatment > h3 {
  position: absolute;
  font-size: 3.5vw;
  color: white;
  background-color: #9c7c34;
  left: 3vw;
  padding: 0 1.5vw;
}

#about_implant .box_treatment > p:nth-child(2) {
  width: 90%;
  font-size: 1.65vw;
  position: absolute;
  top: 9vw;
  left: 3vw;
}

#about_implant .box_treatment > p:nth-child(3) {
  width: 50.6%;
  font-size: 1.65vw;
  position: absolute;
  top: 18vw;
  left: 3vw;
}

#about_implant .box_treatment > p:nth-child(4) {
  width: 50.6%;
  font-size: 1.65vw;
  position: absolute;
  top: 40vw;
  left: 3vw;
}


#point {
  width: 100%;
  position: relative;
}

#point > div {
  margin-top: 10vw;
}

#point span {
  color: #9c7c34;
}

#point > h2 {
  width: 100%;
  height: 14.1vw;
  font-size: 4vw;
  line-height: 1.2;
  padding: 2vw 0;
  color: white;
  background-image: url(images/image05.png);
  background-repeat: no-repeat;
  background-size: 100%;
  text-align: center;
}

#point h3 {
  position: absolute;
  font-size: 2.8vw;
  font-weight: bold;
}

.point010305, .point0204 {
  position: relative;
  margin: 0 auto;
  width: 86.6%;
  height: 41vw;
  background-size: 79% 39vw;
  background-repeat: no-repeat;
}

/* ポイント010305 */
.point010305 img {
  position: absolute;
  width: 32vw;
  height: auto;
  top: -4vw;
  left: 54vw;
}

#point > .point01 {
  background-image: url(images/image06.png);
}

#point > .point03 {
  background-image: url(images/image08.png);
}

#point > .point05 {
  background-image: url(images/image10.png);
}

.point010305 h3 {
  color: #705925;
}

#point > .point01 > h3 {
  top: 6.9vw;
  left: 5.5vw;
}

#point > .point03 > h3 {
  top: 6vw;
  left: 5.5vw;
}

#point > .point05 > h3 {
  top: 6.9vw;
  left: 5.5vw;
}

#point p {
  position: absolute;
  width: 55%;
  font-size: 2vw;
}

#point > .point01 > p {
  top: 15vw;
  left: 5.5vw;
}

#point > .point03 > p {
  top: 16.7vw;
  left: 5.5vw;
}

#point > .point05 > p {
  top: 15vw;
  left: 5.5vw;
}

/* ポイント010305 ここまで*/

/* ポイント0204 */
.point0204 {
  background-position: right;
}

.point0204 img {
  position: absolute;
  width: 32vw;
  height: auto;
  top: -4vw;
  right: 54vw;
}

#point > .point02 {
  background-image: url(images/image07.png);
}

#point > .point04 {
  background-image: url(images/image09.png);
}

.point0204 h3 {
  color: #245c6c;
}

#point > .point02 > h3 {
  top: 6.9vw;
  left: 34.5vw;
}

#point > .point04 > h3 {
  top: 6vw;
  left: 34.5vw;
}

#point p {
  position: absolute;
  width: 55%;
  font-size: 2vw;
}

#point > .point02 > p {
  top: 17.4vw;
  left: 34.5vw;
  font-size: 1.75vw;
}

#point > .point04 > p {
  top: 16.7vw;
  left: 34.5vw;
  font-size: 1.85vw;
}

/* ポイント0204 ここまで*/

#point > p {
  width: 100%;
  height: 15.6vw;
  padding-top: 2.1vw;
  text-align: center;
  font-size: 3vw;
  color: white;
  background-color: #9c7c34;
  text-decoration: underline;
}

#point > p > span {
  color: white;
  font-size: 4vw;
}

#point > div:nth-child(8) {
  margin-top: 11.4vw;
  margin-left: 9.3vw;
  width: 36.4vw;
  height: 7vw;
  background-color: #bc646c;
  position: relative;
  display: inline-block;
}

#point > div:nth-child(8) > p{
  text-align: center;
}

#point > div:nth-child(8) > p:nth-child(1) {
  width: 36.4vw;
  text-align: center;
  font-size: 1.4vw;
  margin-top: 1vw;
  color: white;
}

#point > div:nth-child(8) > p:nth-child(2) {
  width: 36.4vw;
  color: yellow;
  font-size: 3.2vw;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -0.7vw;
}

#point > div:nth-child(8) > p:nth-child(2)::before {
  content: "";
  display: inline-block;
  background-image: url(images/tell.png);
  background-size: 1.8vw 2.9vw;
  background-repeat: no-repeat;
  width: 1.8vw;
  height: 2.9vw;
  position: relative;
  top: 0.2vw;
  margin-right: 1.3vw;
}

#point > div:nth-child(9) {
  margin-top: 11.4vw;
  margin-left: 7.7vw;
  width: 36.4vw;
  height: 7vw;
  background-color: #245c6c;
  position: relative;
  display: inline-block;
}

#point > div:nth-child(9) > p {
  width: 36.4vw;
  color: yellow;
  font-size: 2.4vw;
  position: absolute;
  left: 54%;
  transform: translateX(-50%);
  top: -0.7vw;
}

#point > div:nth-child(9) > p::before {
  content: "";
  display: inline-block;
  background-image: url(images/pc_object_big.png);
  background-size: 4.4vw 2.6vw;
  background-repeat: no-repeat;
  width: 4.4vw;
  height: 2.6vw;
  position: relative;
  top: 0.2vw;
  margin-right: 0.6vw;
}

/* インプラント治療とは ここまで*/

/* メリットとデメリット */


#pros_and_cons {
  width: 100%;
  background-image: url(images/gray_background.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: -5vw;
  height: 156vw;
}


.pros_box, .cons_box {
  position: relative;
  width: 100%;
}

#pros_and_cons > div.pros_box > h2, #pros_and_cons .cons_box h2 {
  font-size: 4vw;
  white-space: nowrap;
  position: absolute;
  margin: 0;
  left: 50%;
  transform: translateX(-55.7%);
}

#pros_and_cons > div.pros_box > h2 {
  top: 3.7vw;
}




#pros_and_cons > div.pros_box > h2 > span {
  text-decoration: underline yellow 1.1vw;
  text-underline-offset: -1vw;
}

#pros_and_cons .cons_box h2 span {
  text-decoration: underline #040030 1.1vw;
}

#pros_and_cons > div.pros_box > h2::after,#pros_and_cons .cons_box h2::after {
  content: "";
  background-size: 10vw 8vw;
  background-repeat: no-repeat;
  width: 10vw;
  height: 8vw;
  position: absolute;
  top: -2.8vw;
}

#pros_and_cons > div.pros_box > h2::after {
  background-image: url(images/image11.png);
}

#pros_and_cons .cons_box h2::after {
  background-image: url(images/image17.png);
}

#pros_and_cons > div.pros_box > div {
  position: relative;
  top: 16vw;
}
/* #pros_and_cons > div.cons_box > div{
 top: 0;
} */
#pros_and_cons > div.cons_box > div {
  position: relative;
  /* top: 29vw; */
}

.pros, .cons {
  background-image: url(images/image12.png);
  background-size: 80vw 28vw;
  background-repeat: no-repeat;
  width: 80vw;
  height: 30vw;
  margin: 5vw auto 0 auto;
}

.pros > p:nth-child(1), .cons > p:nth-child(1) {
  font-size: 3vw;
  transform: translateY(-100%) translateX(5vw);
}

.pros > p:nth-child(1)::before, .cons > p:nth-child(1)::before {
  content: "";
  background-image: url(images/check.png);
  background-size: 5vw 5.4vw;
  background-repeat: no-repeat;
  width: 5vw;
  height: 5.4vw;
  position: absolute;
  top: -0.5vw;
  left: -4.9vw;
}

.pros > h3, .cons > h3 {
  font-size: 3.2vw;
  position: absolute;
  color: #9c7c34;
}

.pros01 > h3{
  top: -1.9vw;
  left: 30vw;
}

.pros02 > h3{
  top: 33.1vw;
  left: 28vw;
}

.pros03 > h3{
  top: 67.9vw;
  left: 38vw;
}

.pros04 > h3{
  top: 103.8vw;
  left: 33vw;
  font-size: 2.2vw;
  line-height: 1.2;
  text-align: center;
}

.pros span, .cons span {
  color: #9c7c34;
}

.pros > p:nth-child(3), .cons > p:nth-child(3) {
  font-size: 1.6vw;
  width: 66%;
  line-height: 1.3;
  margin-left: 7vw;
}

.cons > p:nth-child(3) {
  font-size: 1.8vw;
}
#pros_and_cons .cons_box h2 {
  top: -15.7vw;
}
.pros04.pros{
  margin-bottom: 20vw;
}
.pros02 > p:nth-child(3), .pros03 > p:nth-child(3), .pros04 > p:nth-child(3) {
  margin-top: 4.5vw;
}

.pros > p:nth-child(3)::after, .cons > p:nth-child(3)::after {
  content: "";
  background-repeat: no-repeat;
  background-size: 16vw 15vw;
  width: 16vw;
  height: 16vw;
  position: absolute;
  right: 13vw;
}

.pros01 > p:nth-child(3)::after {
  background-image: url(images/image13.png);
  top: 9vw;
}

.pros02 > p:nth-child(3)::after {
  background-image: url(images/image14.png);
  top: 44vw;
}

.pros03 > p:nth-child(3)::after {
  background-image: url(images/image15.png);
  top: 79.1vw;
}

.pros04 > p:nth-child(3)::after {
  background-image: url(images/image16.png);
  top: 114.2vw;
}

.cons01 > h3{
  top: -1.9vw;
  left: 37vw;
}

.cons02 > h3{
  top: 33.1vw;
  left: 36vw;
}

.cons03 > h3{
  top: 67.9vw;
  left: 39vw;
}

.cons04 > h3{
  top: 103.1vw;
  left: 29vw;
}

.cons01 > p:nth-child(3) {
  font-size: 2.6vw;
  margin-top: 6.5vw;
}

.cons02 > p:nth-child(3) {
  font-size: 1.8vw;
  margin-top: 5.5vw;
}

.cons03 > p:nth-child(3) {
  font-size: 2.1vw;
  margin-top: 5.7vw;
}

.cons04 > p:nth-child(3) {
  font-size: 1.8vw;
  margin-top: 5.5vw;
}

.cons01 > p:nth-child(3)::after {
  background-image: url(images/image18.png);
  top: 9vw;
}

.cons02 > p:nth-child(3)::after {
  background-image: url(images/image19.png);
  top: 44vw;
}

.cons03 > p:nth-child(3)::after {
  background-image: url(images/image20.png);
  top: 79.1vw;
}

.cons04 > p:nth-child(3)::after {
  background-image: url(images/image21.png);
  top: 114.2vw;
}

/* メリットとデメリット ここまで*/

/* 治療の流れ */

#Flow_of_treatment {
  width: 100%;
  margin-top: 6.4vw;
}

#Flow_of_treatment > h2 {
  width: 100%;
  height: 12.1vw;
  font-size: 4vw;
  padding: 3vw 0;
  color: white;
  background-image: url(images/image05.png);
  background-repeat: no-repeat;
  background-size: 100%;
  text-align: center;
  margin-top: 0;
}

.step {
  width: 80vw;
  height: 30vw;
  border: solid 0.2vw black;
  margin: 0 auto;
  position: relative;
  margin-top: 9.5vw;
}

.step p:nth-child(1) {
  font-size: 3vw;
  width: 12vw;
  height: 5vw;
  background-color: white;
  position: absolute;
  margin: 0;
  padding-left: 1.9vw;
  padding-top: 0.2vw;
  top: 0.9vw;
  left: 2.8vw;
  z-index: 2;
}

.step h3 {
  font-size: 2.3vw;
  background-color: #94863B;
  color: white;
  width: 60.5vw;
  height: 7.1vw;
  position: absolute;
  padding-left: 19.6vw;
  margin-left: -0.05vw;
  line-height: 3.2;
  top: -2.35vw;
  z-index: 1;
}

.step > p:nth-child(3) {
  width: 55%;
  font-size: 1.5vw;
  position: absolute;
  top: 10vw;
  left: 2.2vw;
}

.step > p:nth-child(3) > span {
  color: #9c7c34;
}

#Flow_of_treatment .step img {
  position: absolute;
  top: 7vw;
  right: 0vw;
  width: 32vw;
  height: 23vw;
  left: inherit;
  margin-top: 0;
  transform: inherit;
}

#Flow_of_treatment img {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 10vw;
  height: 5vw;
  margin-top: 2.1vw;
}
.step1 {
  margin-top: 5vw;
}
#Flow_of_treatment > div.step.step5 > p:nth-child(3) {
  top: 8vw;
}

/* 治療の流れ ここまで*/

/* インプラント症例*/

#case,#case2 {
  width: 100%;
}

.before_after {
  width: 100%;
  height: 70.3vw;
  position: relative;
  background-image: url(images/rectangle.png);
  background-repeat: no-repeat;
  background-size: 100%;
  margin-top: 11vw;
}

.before_after > h2 {
  font-size: 5vw;
  position: absolute;
  top: 10vw;
  left: 50%;
  transform: translateX(-50%);
}

.black_line1 {
  position: absolute;
  top: 23vw;
  right: 8vw;
  height: 10vw;
  transform: rotate(33deg);
}

.black_line2 {
  position: absolute;
  top: 23vw;
  right: 28vw;
  height: 10vw;
  transform: rotate(-22deg);
}

#case > div.before_after > img:nth-child(5) {
  position: absolute;
  top: 8vw;
  left: 9vw;
  width: 16vw;
  height: 18vw;
}

#case > div.before_after > img:nth-child(6) {
  position: absolute;
  top: 10vw;
  right: 10vw;
  width: 14vw;
  height: 14vw;
  border: 0.4vw solid #bc646c;
}

#case > div.before_after > img:nth-child(7) {
  position: absolute;
  top: 34vw;
  left: 15vw;
  width: 29vw;
  height: 25vw;
}

#case > div.before_after > img:nth-child(8) {
  position: absolute;
  top: 41vw;
  left: 49vw;
  width: 5vw;
  height: 9vw;
}

#case > div.before_after > img:nth-child(9) {
  position: absolute;
  top: 34vw;
  left: 59vw;
  width: 29vw;
  height: 25vw;
}

#case > div.before_after > p:nth-child(2) {
  font-size: 1.7vw;
  position: absolute;
  top: 25.4vw;
  right: 10vw;
  color: #9c7c34;
}

#case > div.before_after > p:nth-child(10) {
  font-size: 2.5vw;
  position: absolute;
  top: 56vw;
  left: 15vw;
  color: #9c7c34;
}

#case > div.before_after > p:nth-child(11) {
  font-size: 2.5vw;
  position: absolute;
  top: 56vw;
  left: 59vw;
  color: #9c7c34;
}

#case > table:nth-child(2) {
  width: 85vw;
  margin: 5vw auto;
  font-size: 2.2vw;
  border-collapse:collapse;
}

#case > table:nth-child(2) span {
  color:#9c7c34;
}

#case > table:nth-child(2) td.column1 {
  font-size: 4vw;
  color: white;
  background-color:#A1975F;
  white-space: nowrap;
  padding: 0 3vw 0 1vw;
  border: 0.2vw solid black;
}

#case > table:nth-child(2) td.column2 {
  padding-left: 1vw;
  border: 0.2vw solid black;
}

.font-small { 
  font-size: 1.5vw;
}

#case > h2 {
  width: 100%;
  height: 7.8vw;
  font-size: 4vw;
  padding: 3vw 0;
  color: white;
  line-height: 0.7;
  background-image: url(images/image05.png);
  background-repeat: no-repeat;
  background-size: 100% 11.7vw;
  text-align: center;
  margin-top: 6.4vw;
}

#case > table:nth-child(4) {
  width: 85vw;
  margin: 0 auto;
  font-size: 2.2vw;
  border-collapse: separate;
  border-spacing: 0.2vw;
}

#case > table:nth-child(4)  td, #case > table:nth-child(4)  th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
  font-size: 1.8vw;
}

#case > table:nth-child(4)  th {
  padding-top: 2vw;
  padding-bottom: 2vw;
  font-size: 3vw;
}

table:nth-child(4)  th {
  font-size: 3vw;
  padding: 1.7vw 1.7vw;
  white-space: nowrap;
  text-align: center;
}

#case > table:nth-child(4)  td.column1 {
  font-size: 3vw;
  padding: 4vw 1.7vw;
  white-space: nowrap;
  text-align: center;
}

#case > table:nth-child(4) img {
  width: 20vw;
}

.column2_row2_4 {
  width: 21vw;
}

#case > table:nth-child(4) > tbody > tr.row5 > td:nth-child(3) {
  font-size: 1.4vw;
}

#case > table:nth-child(4) > tbody > tr.row5 > td:nth-child(4) {
  font-size: 1.5vw;
}

.row3 {
  text-align: center;
}

.row3 td, .row4 td, .row5 td {
  padding: 4.5vw 1vw 4.5vw 1vw !important;
}

#case > table:nth-child(4) > tbody > tr.row1 > th:nth-child(2) {
  border-top: 0.5vw solid #9c7c34;
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing:border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

#case > table:nth-child(4) > tbody > tr.row2 > td:nth-child(2), #case > table:nth-child(4) > tbody > tr.row3 > td:nth-child(2), #case > table:nth-child(4) > tbody > tr.row4 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing:border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}


#case > table:nth-child(4) > tbody > tr.row5 > td.column2_row5 {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  border-bottom: 0.5vw solid #9c7c34;
  box-sizing:border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb{
  font-size: 2.2vw;
  border-collapse: separate;
  border-spacing: 0.2vw;
}
#case .scroll_tb table.info01 th {
  padding-top: 2vw;
  padding-bottom: 2vw;
  font-size: 3vw;
}
#case .scroll_tb table.info01 td, #case .scroll_tb table.info01 th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
    padding-top: 1.5vw;
    padding-bottom: 0.5vw;
}
#case .scroll_tb td, #case .scroll_tb th{
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
}
#case .scroll_tb .info01 {
  font-size: 2.2vw;
  border-collapse: separate;
  margin: 0 auto;
}
#case .scroll_tb table:nth-child(2) {
  font-size: 2.2vw;
  border-collapse: collapse;
}
#case .scroll_tb table.info01 > tbody > tr.row1 > th:nth-child(2) {
  border-top: 0.5vw solid #9c7c34;
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb table.info01 th {
  padding-top: 2vw;
  padding-bottom: 2vw;
  font-size: 3vw;
}
#case .scroll_tb table.info01 td, #case .scroll_tb table.info01 th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
    padding-top: 1.5vw;
    padding-bottom: 0.5vw;
}

#case .scroll_tb table.info01 th {
  padding-top: 2vw;
  padding-bottom: 2vw;
  font-size: 3vw;
}
#case .scroll_tb table.info01 td, #case .scroll_tb table.info01 th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
    padding-top: 1.5vw;
    padding-bottom: 0.5vw;
}
#case .scroll_tb table.info01 th {
  padding-top: 2vw;
  padding-bottom: 2vw;
  font-size: 3vw;
}
#case .scroll_tb table.info01 td, #case .scroll_tb table.info01 th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
    padding-top: 1.5vw;
    padding-bottom: 0.5vw;
}
#case .scroll_tb table.info01 td {
  font-size: 1.8vw;
}
#case .scroll_tb table.info01 td, #case .scroll_tb table.info01 th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
}
#case .scroll_tb table.info01 > tbody > tr.row2 > td:nth-child(2), #case .scroll_tb table.info01 > tbody > tr.row3 > td:nth-child(2), #case .scroll_tb table.info01 > tbody > tr.row4 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb table.info01 td {
  font-size: 1.8vw;
}
#case .scroll_tb table.info01 td, #case .scroll_tb table.info01 th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
}
.column2_row2_4 {
  width: 21vw;
}
#case .scroll_tb table.info01 > tbody > tr.row5 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  border-bottom: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb table.info01 img {
  width: 20vw;
}
#case .scroll_tb table:nth-child(2) {
  width: 85vw;
  margin: 5vw auto;
  font-size: 2.2vw;
  border-collapse: collapse;
}



#case .scroll_tb th {
  padding-top: 2vw;
  padding-bottom: 2vw;
  font-size: 3vw;
}
#case .scroll_tb td {
  font-size: 1.8vw;
}
#case .scroll_tb> tbody > tr.row5 > td:nth-child(3) {
  font-size: 1.4vw;
}
#case .scroll_tb> tbody > tr.row5 > td:nth-child(4) {
  font-size: 1.5vw;
}
#case .scroll_tb td.column1 {
    background-color: #E0DFDC;
    font-size: 3vw;
    padding: 4vw 1.7vw;
    white-space: nowrap;
    text-align: center;
    border: none;
    color: #000
}
#case .scroll_tbimg{
    width: 20vw;
}
#case .scroll_tb> tbody > tr.row1 > th:nth-child(2) {
  border-top: 0.5vw solid #9c7c34;
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb> tbody > tr.row2 > td:nth-child(2), 
#case .scroll_tb> tbody > tr.row3 > td:nth-child(2), 
#case .scroll_tb> tbody > tr.row4 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb> tbody > tr.row5 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  border-bottom: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case > div , #case2 > div {
  position: relative;
}

#case > div > h3, #case2 > div > h3 {
  font-size: 2.5vw;
  margin: 5vw auto;
  width: 25vw;
  text-align: center;
  line-height: 1.4;
}

#case > div > h3 > span, #case2 > div > h3 > span {
  -webkit-text-stroke: 0.1vw rgb(0, 0, 0);
}

#case > div > h3::after, #case2 > div > h3::after {
  content: "";
  position: absolute;
  width: 9.7vw;
  height: 10vw;
  background-image: url(images/h3_after.png);
  background-repeat: no-repeat;
  background-size: 10vw 9.7vw;
  top: -1.5vw;
}

#case > div > h3::before, #case2 > div > h3::before {
  content: "";
  position: absolute;
  width: 9.7vw;
  height: 10vw;
  background-image: url(images/h3_before.png);
  background-repeat: no-repeat;
  background-size: 10vw 9.7vw;
  top: -1.5vw;
  left: 27vw;
}

#case > div:nth-child(6) > div:nth-child(1), #case > div:nth-child(6) > div:nth-child(2), 
#case2 > div:nth-child(6) > div:nth-child(1), #case2 > div:nth-child(6) > div:nth-child(2), 
#case div.box_imgR, #case div.box_imgL, #case2 div.box_imgR, #case2 div.box_imgL {
  width: 85vw;
  height: 21vw;
  margin: 0 auto 8vw auto;
  position: relative;
}

#case > div:nth-child(6) > div:nth-child(1) > h4, 
#case2 > div:nth-child(6) > div:nth-child(1) > h4, 
#case div.box_imgR h4, #case div.box_imgL h4, #case2 div.box_imgR h4, #case2 div.box_imgL h4{
  width: 28%;
  margin: 0 0 0 25vw;
  font-size: 2.5vw;
  -webkit-text-stroke: 0.1vw rgb(0, 0, 0);
}

#case > div:nth-child(6) > div:nth-child(1) > h4::before, 
#case2 > div:nth-child(6) > div:nth-child(1) > h4::before, 
#case div.box_imgR h4::before, #case2 div.box_imgR h4::before {
  content: "";
  position: absolute;
  width: 23vw;
  height: 4.8vw;
  top: -1.6vw;
  left: -0.5vw;
  background-image: url(images/Nobel_Bocare_logo.png);
  background-repeat: no-repeat;
  background-size: 23vw 4.8vw;
}

#case > div:nth-child(6) > div:nth-child(1) > h4::after, 
#case div.box_imgR h4::after,
#case2 > div:nth-child(6) > div:nth-child(1) > h4::after, 
#case2 div.box_imgR h4::after {
  content: "";
  position: absolute;
  width: 41.2vw;
  top: 1.6vw;
  right: -7vw;
  border-bottom: 0.1vw solid black;
}

#case > div:nth-child(6) > div > p, #case div.box_imgR p, #case div.box_imgL p,
#case2 > div:nth-child(6) > div > p, #case2 div.box_imgR p, #case2 div.box_imgL p {
  margin: 2vw 0 0 0;
  font-size: 2vw;
  width: 57.9vw;
  line-height: 1.3;
}

#case > div:nth-child(6) > div:nth-child(1) > img, 
#case2 > div:nth-child(6) > div:nth-child(1) > img, 
#case div.box_imgR img, #case2 div.box_imgR img{
  position: absolute;
  top: 6.2vw;
  right: 0.5vw;
  width: 24vw;
  height: 18vw;
}

#case > div:nth-child(6) > div:nth-child(2) > h4, 
#case div.box_imgL h4,

#case2 > div:nth-child(6) > div:nth-child(2) > h4, 
#case2 div.box_imgL h4
{
  width: 30%;
  margin: 0 0 0 47vw;
  font-size: 2.5vw;
  -webkit-text-stroke: 0.1vw rgb(0, 0, 0);
}

#case > div:nth-child(6) > div:nth-child(2) > h4::before, 
#case div.box_imgL h4::before,
#case2 > div:nth-child(6) > div:nth-child(2) > h4::before, 
#case2 div.box_imgL h4::before

{
  content: "";
  position: absolute;
  width: 13vw;
  height: 8.8vw;
  top: -1.1vw;
  left: 34vw;
  background-image: url(images/osstem_logo.png);
  background-repeat: no-repeat;
  background-size: 13vw 4.8vw;
}

#case > div:nth-child(6) > div:nth-child(2) > h4::after, 
#case div.box_imgL h4::after
#case2 > div:nth-child(6) > div:nth-child(2) > h4::after, 
#case2 div.box_imgL h4::after

{
  content: "";
  position: absolute;
  width: 39.1vw;
  top: 1.6vw;
  left: -7.1vw;
  border-bottom: 0.1vw solid black;
}

#case > div:nth-child(6) > div:nth-child(2) > img, #case div.box_imgL img
#case2 > div:nth-child(6) > div:nth-child(2) > img, #case2 div.box_imgL img {
  position: absolute;
  top: 6.2vw;
  width: 24vw;
  height: 18vw;
}

#case > div:nth-child(6) > div:nth-child(2) > p, #case div.box_imgL p,
#case2 > div:nth-child(6) > div:nth-child(2) > p, #case2 div.box_imgL p {
  position: absolute;
  top: 4vw;
  left: 29vw;
}

/* インプラント症例 ここまで*/

/* インプラント料金*/

#Price > h2 {
  font-size: 4vw;
  width: 38vw;
  margin: 0 auto;
  margin-top: 12vw;
}

#Price > div:nth-child(2) {
  width: 85vw;
  margin: 0 auto;
  font-size: 2.5vw;
}

#Price > div:nth-child(2) > div p {
  display: inline-block;
}

#Price > div:nth-child(2) > div p.column1 {
  width: 30vw;
  text-align: center;
  -webkit-text-stroke: 0.05vw rgb(0, 0, 0); 
}

#Price > div:nth-child(2) > div:nth-child(2n+1) {
  background-color: #E0DFDC;
}

#Price > div:nth-child(2) > div:nth-child(2n) {
  background-color: #F0F0EE;
  margin: 0.3vw 0;
}

#Price > div:nth-child(2) > div:nth-child(1) {
  border-top: 0.3vw solid black;
}

#Price > div:nth-child(2) > div:nth-child(9) {
  border-bottom: 0.3vw solid black;
}

#Price > div:nth-child(3), #Price > div:nth-child(4) {
  width: 85vw;
  margin: 12vw auto;
  position: relative;
}

#Price > div:nth-child(3) > h2 {
  font-size: 3vw;
  width: 85vw;
  height: 7.5vw;
  margin: 0 0 0 7vw;
}
#Price  span {
  color: #9c7c34;
}

#Price > div:nth-child(3) > h2::after {
  content: "";
  width: 85vw;
  height: 7.5vw;
  background-image: url(images/finger.png);
  background-repeat: no-repeat;
  background-size: 85vw 7.5vw;
  position: absolute;
  top: -2vw;
  left: 0;
}

#Price > div:nth-child(3) > p {
  font-size: 1.85vw;
}

#Price > div:nth-child(4) > h2 {
  font-size: 3vw;
  padding-left: 1vw;
  border-left: 0.5vw solid #040030;
}

#Price > div:nth-child(4) > p {
  font-size: 1.85vw;
  width: 60vw;
}

#Price > div:nth-child(4) > p::after {
  content: "";
  width: 22vw;
  height: 18vw;
  background-image: url(images/question.png);
  background-repeat: no-repeat;
  background-size: 22vw 18vw;
  position: absolute;
  top: 6vw;
  right: 0vw;
}

/* インプラント料金 ここまで*/

/* FAQ */

#faq {
  width: 85vw;
  height: 83vw;
  margin: 0 auto;
  position: relative;
  background-color: #A1975F;
}

#faq > h2 {
  font-size: 3vw;
  color: white;
  width: 18vw;
  margin: 0 auto;
  padding: 3vw 0 4vw 0;
}

#faq > h2::after {
  content: "";
  width: 9vw;
  height: 2vw;
  border-bottom: 0.3vw solid white;
  position: absolute;
  top: 6vw;
  left: 38.2vw;
}

#faq p {
  font-size: 1.4vw;
  color: white;
  margin: 0.2vw;
  padding-left: 4vw;
  line-height: 2;
}

#faq p:nth-child(2n) span {
  color: #484843;
}

#faq p:nth-child(2n+1) span {
  color: #BA616B;
}

#faq p:nth-child(2n+1) {
  /* margin-bottom: 3vw; */
}

/* FAQ ここまで*/

/* フッター　*/

footer {
  position: relative;
  width: 90vw;
  height: auto;
  margin: 20vw auto 2vw auto;
  background-color: #E6EDF5;
  padding-top: 4.5vw;
}

footer > img {
  position: absolute;
  top: 4vw;
  left: 29vw;
  width: 25vw;
  height: 7vw;
}

footer > p {
  position: absolute;
  top: 16vw;
  left: 9vw;
  width: 22vw;
  font-size: 1.2vw;
}

footer > div:nth-child(3) {
  position: absolute;
  top: 2vw;
  left: 2vw;
  width: 2vw;
  height: 2vw;
}

footer > div:nth-child(3) > p {
  display: inline-block;
  background-color: #bc646c;
  color: white;
  font-size: 2.5vw;
  width: 23vw;
  height: 8vw;
  line-height: 3.2;
  position: absolute;
  top: 21vw;
  left: -2vw;
  text-align: center;
  padding-left: 1.8vw;
}

footer > div:nth-child(3) > p::before {
  content: "";
  position: absolute;
  top: 2.2vw;
  left: 3.4vw;
  width: 1.5vw;
  height: 3vw;
  background-image: url(images/tell.png);
  background-repeat: no-repeat;
  background-size: 1.5vw 3vw;
}

footer > div:nth-child(3) > a {
  position: absolute;
  top: 23.5vw;
  left: 22.7vw;
  width: 14vw;
  height: 7.6vw;
  font-size: 1.3vw;
  line-height: 7.7;
}

footer > div:nth-child(3) > a::before {
  background-size: 3vw 2vw;
  background-repeat: no-repeat;
  width: 3vw;
  height: 2vw;
  position: absolute;
  top: 1.7vw;
  left: 5.9vw;
}

.Consultation_hours {
  position: relative;
}

.Consultation_hours > img {
  position: absolute;
  width: 27vw;
  height: 25vw;
  left: 11vw;
  top: -2vw;
}

.Consultation_hours > table {
  position: absolute;
  font-size: 2vw;
  line-height: 2;
  width: 45vw;
  left: 43vw;
  top: 15.5vw;
  border-collapse:collapse;
}

.Consultation_hours td:not(.time) {
  width: 20vw;
}

.time {
  width: 56vw;
  text-align: center;
  padding-left: 0.7vw;
  padding-right: 1.8vw;
  white-space: nowrap;
}

.Consultation_hours  td {
  border-bottom: solid 0.2vw black;
}

.Consultation_hours > div {
  position: absolute;
  font-size: 1.3vw;
  left: 43.5vw;
  top: 28.8vw;
}

.Consultation_hours > a {
  position: absolute;
  font-size: 2.5vw;
  left: 60vw;
  top: 13vw;
  color: white;
  text-decoration: none;
  background-color: black;
  padding: 1vw 3vw;
  margin: 0;
}

iframe {
  /* position: absolute; */
  top: 36vw;
  margin: 8vw auto 0vw auto;
  width: 90vw;
  height: 40vw;
}

/* フッター　ここまで　*/


/* inview */

/* 下からフェードイン */
.visible_bottom {
  opacity: 0;
  transition: transform 0.5s linear;
  animation-duration: 1s;
  animation-fill-mode: both;
}
/*　brightness　*/
.effect_bottom {
  animation-name: imgbrightness_bottom;
  opacity: 1;  
  transition: 0.5s;
}
@keyframes imgbrightness_bottom {
  0% {
    opacity: 0;
    transform: translateY(7%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}

/* 右からフェードイン */
.visible_right {
  opacity: 0;
  transition: transform 0.5s linear;
  animation-duration: 1s;
  animation-fill-mode: both;
}
/*　brightness　*/
.effect_right {
  animation-name: imgbrightness_right;
  opacity: 1;  
  transition: 0.5s;
}
@keyframes imgbrightness_right {
  0% {
    opacity: 0;
    transform: translateX(-10%);
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
  }
}

/* 左からフェードイン */
.visible_left {
  opacity: 0;
  transition: transform 0.5s linear;
  animation-duration: 1s;
  animation-fill-mode: both;
}
/*　brightness　*/
.effect_left {
  animation-name: imgbrightness_left;
  opacity: 1;  
  transition: 0.5s;
}
@keyframes imgbrightness_left {
  0% {
    opacity: 0;
    transform: translateX(10%);
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
  }
}
/* inview ここまで*/

.consultation{
  background-color: #9c7c34;
  /* padding-top: 2.1vw; */
  text-align: center;
  padding: 40px 0;
  margin: 130px 0 0 0;
}
.ttl_consultation{
  font-size: 3vw;
  margin: 0;
  color: #fff;
  text-decoration: underline;
}
.ttl_consultation span{
  font-size: 4vw;
}
.consultation .bnt{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0;
}
.consultation .bnt li{
  list-style: none;
  width: 700px;
  height: 135px;
  /* width: 100%; */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.consultation .bnt li p{
  margin: 0;
}
.consultation .bnt li.tell{
  background-color: #bc646c;
  font-size: 1.4vw;
  margin-right: 8vw;
}
.consultation .bnt li .ttl{
  color: white;
}
.consultation .bnt li .icon{
  color: yellow;
  font-size: 3.2vw;
  display: flex;
}
.consultation .bnt li .icon::before{
  display: block;
  content: "";
  background: url(images/tell.png) no-repeat;
  background-size: contain;
  width: 1.8vw;
  height: 2.9vw;
}
.consultation .bnt li .icon span{
  padding-left: 20px;
}
.consultation .bnt li.web{
  background-color: #245c6c;
}
.consultation .bnt li.web p{
  position: relative;
  color: yellow;
  font-size: 2.4vw;
  display: flex;
}
.consultation .bnt li.web p::before{
position: absolute;
content: "";
background-image: url(images/pc_object_big.png);
background-size: contain;
width: 4.4vw;
height: 2.6vw;
}
.consultation .bnt li.web p span{
  padding-left: 5vw;
}
/* add */
#point_new h2 {
  width: 100%;
  height: 14.1vw;
  font-size: 4vw;
  line-height: 1.2;
  padding: 2vw 0;
  color: white;
  background-image: url(images/image05.png);
  background-repeat: no-repeat;
  background-size: 100%;
  text-align: center;
}
#point_new .point01_new{
  position: relative;
  max-width: 1130px;
  padding: 75px;
  width: 100%;
  margin: 18vw auto 0 8.5vw;
  background: #eeece7;
  box-sizing: border-box;
  }
  #point_new .point01_new.po1{
    margin-top: 13vw;
  }
  #point_new .point01_new::after , 
  #point_new .point02_new::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    right: -35px;
    bottom: -35px;
    border: 2px solid #000;
    z-index: -1;
  }
  #point_new .point02_new{
    position: relative;
    max-width: 1130px;
    padding: 75px;
    width: 100%;
    margin:18vw 8.5vw 8.5vw auto;
    background: #dfe8eb;
  box-sizing: border-box;
  }
  #point_new .munber img{
    position: absolute;
    top: -3.5vw;
    left: 32px;
    width: 7.5vw;
  }
  #point_new h3{
    font-size: 2.8vw;
    font-weight: bold;
    color: #705925;
  } 
  #point_new .point02_new h3{
    font-size: 2.8vw;
    font-weight: bold;
    color: #245c6c;
  } 
  #point_new .point_txt{
    font-size: 2vw;
    /* width: 55%; */
  }
  #point_new p span{
    color: #9c7c34;
  }
  #point_new .point_img img{
    position: absolute;
    width: 32vw;
    height: auto;
    top: -8.5vw;
    left: 52vw;
  }
  #point_new .point01_new .txt{
    padding-right: 5vw;
  }
  #point_new .point02_new .point_txt{
    padding-left: 5vw;
  }
  #point_new .point02_new .point_img img {
    right: 52vw;
    left:inherit;
  }
  #point_new .point02_new .munber img {
    position: absolute;
    top: -3.5vw;
    width: 7.5vw;
    left: 9vw;
  }
  #pros_cons{
    display: none;
    padding: 0 15px 15vw;
  }

#pros_cons.step_01{
  padding-top: 10vw;
  padding-bottom: 0;
}
/* .acc_support2:last-child{
  margin-bottom: 27vw;
} */

/* the slides */
  .clinic_list .slick-slide {
    margin: 0 15px;
  }
  /* the parent */
  .clinic_list .slick-list {
    margin: 0 -15px;
  }


.faq_a{
margin-bottom: 3vw;
}
.faq_a p span {
  color: #484843;
}
footer p {
  position: unset;
}
footer p.center{
  margin: 0 auto;
  width: auto;
}
footer p.center img{
  width: 25vw;
  height: 7vw;
  margin-left: -7vw;
}
.footer_df{
  display: flex;
  justify-content: center;
  margin-top: 5vw;
}
.footer_df .box_l{
  margin-right: 60px;
}
.address{
  font-size: 1.2vw;
  /* text-align: center; */
}
footer .txt_ft h3 {
  font-size: 20px;
  color: #001e3c;
  line-height: 1.3;
  margin: 1.5em 0 0.5em;
  padding-left: 40px;
  position: relative;
}
footer h3::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
  width: 31px;
  height: 22px;
  background: url(images/sec05_icon01.webp) no-repeat center / contain;
}
footer h3.train::before {
  top: -0.2em;
  left: 5px;
  width: 26px;
  height: 31px;
  background: url(images/sec05_icon02.webp) no-repeat center / contain;
}
.d-flex {
  display: flex;
}
.indx_b15_phone_web .indx_b15_phone {
  width: 350px;
  height: 122px;
  background: #bc646c;
  margin-bottom: 0;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  display: flex;
}

element {
  cursor: default;

}
.indx_b15_phone .number {
  font-size: 35px;
  color: #fff;
  letter-spacing: 0.07em;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  text-decoration: none;
}
.indx_b15_phone .number img{
  width: 5vw;
}
.indx_b15_phone_web .indx_b15_web img{
  width: 2vw;
}
.indx_b15_phone .img {
  width: 20px;
  display: flex;
  text-align: center;
  align-self: center;
  margin-right: 10px;
}
.indx_b15_web .img {
  /* width: 27px; */
  margin: 0 auto 10px;
  display: inline-block;
}
.indx_b15_web .indx_b15_web_txt {
  font-size: 25px;
  color: #fff;
  text-align: center;
  display: inline-block;
  margin-bottom: 0;
  letter-spacing: 0.08em;
}
.indx_b15_phone_web .indx_b15_web {
  width: 240px;
  background: #54747c;
  padding: 20px 20px 28px;
  margin-bottom: 0;
  justify-content: center;
  position: relative;
  text-decoration: none;
  outline: none;
  text-transform: uppercase;
  transition: all 0.3s ease 0s;
}
.d-flex-column {
  display: flex;
  flex-direction: column;
}
/* #footer{
max-width: 1730px;
width: 100%;
} */
.footer_df {
  display: flex;
  justify-content: center;
  margin-top: 5vw;
  max-width: 1730px;
  width: 100%;
  /* padding: 20px; */
}


#footer .Consultation_hours{
position: unset;
}
#footer .Consultation_hours > table{
  position: unset;
}
#footer .Consultation_hours .txt_r{
  position: unset;
}
.fixed_tell ,  .fixed_reservation {
  display: none;
}
.fixed_tell.top_navi_active , .fixed_reservation.top_navi_active {
  display: block;
}
  /* end */
/* レスポンシブ */
@media screen and (max-width: 1366px){
.about_box img{
  max-width:500px;
  width: auto;
}
.about_txt {
  padding-right: 23.5vw;
}
.consultation .bnt li {
  width: 35%;
  height: 95px;
}
#point_new .point01_new ,#point_new .point02_new {
  max-width: 66%;
  padding: 40px 40px 40px 60px;
}
#point_new .point01_new .txt {
  padding-right: 4vw;
}
#point_new .point_img img {
  left: 58vw;
}
#point_new .point02_new .point_txt {
  padding-left: 7vw;
}
#point_new .point01_new::after, #point_new .point02_new::after {

  right: -18px;

  bottom: -20px;

}
#point_new .munber img {
  left: 8px;
}
#point_new .point02_new .munber img {
  left: 12vw;
}
#point_new .point_img img {
  width: 25vw;
}
#point_new .point02_new {
  margin: 18vw 10vw 8.5vw auto;
}
#point_new .point02_new .point_img img {
  right: 57vw;
}
#footer {
  padding: 4.5vw 20px;
}
.footer_df .box_l {
  /* margin-right: -10px; */
}
#footer .Consultation_hours {
  position: unset;
  width: 40%;
}
#footer .Consultation_hours > table{
  width: auto;
}
}
@media screen and (max-width:980px) {
.footer_df .box_l {
  margin-right: -2vw;
}
.footer_df {
  width: 100%;
  box-sizing: border-box;
}
}

@media screen and (max-width:767px) {
  #pros_cons{
    display: block;
    
  }
.sp{
  display: block;
}
.pc{
  display: none;
}
/* ヘッダー sp */
header {
  width: 100%;
  height: 14.8vw;
  position: absolute;
  top: 0;
}

header > a:nth-child(1) {
  width: 18vw;
  height: 5.5vw;
  position: absolute;
  top: 1vw;
  left: 2.2vw;
}

header img {
  width: 26vw;
  height: 9.5vw;
}

header > div:nth-child(2) {
  position: absolute;
  width: 40vw;
  height: 10vw;
  right: 28vw;
  top: 0.8vw;
  padding: 0.4vw 0.8vw 0vw 0.8vw;
  background-color: #bc646c;
  color: white;
  text-align: center;
}

header > div:nth-child(2) > p:nth-child(1){
  font-size: 4vw;
  margin: 1vw 0 0 0;
}

header > div:nth-child(2) > p:nth-child(1)::before{
  content: '';
  display: inline-block;
  background-image: url(images/tell.png);
  background-size: 2vw 3vw;
  background-repeat: no-repeat;
  width: 2vw;
  height: 3vw;
  position: relative;
  top: 0.2vw;
  margin-right: 0.3vw;
}

header > div:nth-child(2) > p:nth-child(2){
  font-size: 2vw;
  margin: 0;
}

.Online_reservation {
  position: absolute;
  width: 14vw;
  height: 10vw;
  line-height: 16vw;
  right: 12.6vw;
  top: 0.8vw;
  padding: 0.2vw 0.8vw;
  background-color: #54747c;
  color: white;
  font-size: 2vw;
  text-align: center;
  text-decoration: none;
  margin: 0;
}

.Online_reservation::before{
  content: "";
  background-image: url(images/pc_object.png);
  background-size: 5vw 3.5vw;
  background-repeat: no-repeat;
  width: 5vw;
  height: 3.5vw;
  position: absolute;
  top: 2.1vw;
  left: 5.7vw;
}

/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position:fixed;
  z-index: 999;
  /*ナビのスタート位置と形状*/
top:0;
  right: -120%;
width:100%;
  height: 100vh;/*ナビの高さ*/
background:#94863B;
  /*動き*/
transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
  right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999; 
  width: 100%;
  height: 100vh;/*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top: 14%;
  left: 50%;
  transform: translateX(-50%);
}

/*リストのレイアウト設定*/

#g-nav li{
list-style: none;
  text-align: center;
}

#g-nav li a{
  color: #fff;
  text-decoration: none;
  display: block;
  width: 80vw;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  text-align: left;
  font-weight: bold;
  padding-bottom: 10vw;
  font-size: 4vw;
  white-space: nowrap;
}

/*========= ボタンのためのCSS ===============*/
/*==================================================
　5-2-7 3本線が奥行きを持って回転して×に
===================================*/

/*ボタン内側*/

.openbtn{
  transition: all .4s;
  position: fixed;
  width: 11vw;
  top: 0.8vw;
  right: 1.7vw;
  height: 10.4vw;
  background-color: #94863B;
  z-index: 9999;
}

.openbtn, #g-nav, #g-nav-list {
  display: block;
}

.openbtn-area {
  display: flex;
  flex-direction: column;
  row-gap: 1.2vw;
  align-items: center;
  height: 6vw;
  padding-top: 2.5vw;
}

.openbtn span{
  transition: all .4s;
  height: 0.2vw;
  width: 55%;
  border-radius: 0.2vw;
  background-color: #ffffff;
  z-index: 9999;
}

div.openbtn > div > p {
  color: white;
  font-size: 4vw;
  margin: 0;
  text-align: center;
  position: absolute;
  top: 5.6vw;
  transform: scale(0.5);
}

/*activeクラスが付与されると
線と周りのエリアが回転して×になる*/

.openbtn.active .openbtn-area > span{
	transform: rotateY(-360deg);
}

.openbtn.active span:nth-of-type(1) {
    transform: translateY(6px) rotate(-135deg);
    position: absolute;
    width: min(5vw, 30px);
    margin-bottom: 11.75px;
}

.openbtn.active span:nth-of-type(2) {
	  opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    transform: translateY(-6px) rotate(135deg);
    position: absolute;
    width: min(5vw, 30px);
    margin-top: 11.75px;
}

/* ヘッダー sp ここまで*/

/* メインビジュアル sp */

#main-visual {
  width: 100%;
}

#main-message {
  width: 100%;
  height: 97vw;
  background-image: url(images/implant-02.jpg);
 background-size: cover;
}

#main-message > div:nth-child(1) {
  background-color: #00000033;
  width: 100%;
  height: 97vw;
}

#main-message > h1 {
  color: white;
  font-size: 10.5vw;
  font-weight: bold;
  position: absolute;
  top: 55vw;
  left: 3vw;
  margin: 0;
  line-height: 1.1;
}

#main-message > p:nth-child(3) {
  color: #fcdc1c;
  font-size: 7.5vw;
  font-weight: bold;
  -webkit-text-stroke: 0.5vw rgba(255, 255, 255, 0.288);
  position: absolute;
  top: 78vw;
  left: 3vw;
  margin: 0;
}

#main-message > p:nth-child(4) {
  color: black;
  font-size: 3.5vw;
  font-weight: bold;
  position: absolute;
  top: 88vw;
  left: 3vw;
  margin: 0;
}

.circle_common {
  position: absolute;
  color: #9c7c34;
  font-weight: bold;
  font-size: 3.7vw;
  background-color: white;
  border-radius: 50%;
  line-height: 1.3;
  margin: 0;
  text-align: center;
  white-space: nowrap;
}

.circle_small {
  top: 71.5vw;
  right: 4vw;
  width: 18vw;
  height:18vw;
  background-clip: padding-box;
  border: 1.8vw solid rgba(255, 255, 255, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
}

.circle_middle {
  top: 51vw;
  right: 17vw;
  width: 20vw;
  height: 20vw;
  background-clip: padding-box;
  border: 1.8vw solid rgba(255, 255, 255, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  /* padding-top: 4vw; */
}

.circle_middle p{
  margin-top: 3vw;
}

.circle_big {
  top: 26vw;
  right:4vw;
  width: 23vw;
  height: 23vw;
  background-clip: padding-box;
  border: 1.8vw solid rgba(255, 255, 255, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
}

.circle_big p{
  margin-top: 4vw;
  margin-left: 1vw;
}

.pc_nav {
  display: none;
}

nav a {
  position: relative;
  transform: translateY(28%);
  display: table-cell;
  vertical-align: middle;
  color: white;
  font-size: 1.1vw;
  text-decoration: none;
  width: 11.8vw;
  line-height: 1.2;
  padding: 0 0.2vw 0 0.2vw;
  text-align: center;
  height: 4vw;
  border-left: 0.1vw solid white;
}

nav a:nth-child(1) {
  border: none;
}

nav a:nth-child(n+4):nth-child(-n+7)  {
  font-size: 1.3vw;
}



.fixed_tell p {
  display: none;
}

.fixed_tell {
  position: fixed;
  top: 93dvh;
  left: 10vw;
  width: 40vw;
  height: 10vw;
  background-color: white;
  background-image: none;
  text-align: center;
  box-shadow: none;
}

.fixed_tell a {
  display: inline-block;
  font-family: serif;
  font-size: 5.3vw;
  font-weight: bold;
  line-height: 2;
  text-decoration: none;
  color: #9c7c34;
  white-space: nowrap;
  padding-left: 5vw;
}

.fixed_tell a::before {
  content: '';
  display: inline-block;
  background-image: url(images/tell2.png);
  background-size: 6vw 9vw;
  background-repeat: no-repeat;
  width: 6vw;
  height: 9vw;
  position: absolute;
  top: 0.5vw;
  left: 2vw;
}

.fixed_reservation {
  position: fixed;
  top: 93dvh;
  right: 10vw;
  width: 40vw;
  height: 10vw;
  background-color: #9c7c34;
  background-image: none;
  text-align: center;
  box-shadow: none;
}

.fixed_reservation a {
  display: inline-block;
  font-family: serif;
  font-size: 5vw;
  font-weight: bold;
  line-height: 2.2;
  text-decoration: none;
  color: white;
  white-space: nowrap;
  padding-left: 5vw;
}

.fixed_reservation a::before {
  content: "";
  background-image: url(images/pc_object.png);
  background-size: 5.5vw 4.4vw;
  background-repeat: no-repeat;
  width: 5.5vw;
  height: 4.4vw;
  position: fixed;
  position: absolute;
  top: 2.9vw;
  left: -3vw;
}

/* メインビジュアル sp ここまで*/

/* インプラント治療とは sp */

#about_implant {
  position: relative;
  width: 100%;
  margin-top: 3vw;
}
/* add */
.about{
  padding: 0 15px;
}
.about_box{
  margin: 0 auto;
}
.about_box img {
  width: 100%;
  max-width: 275px;
}
.about_box{
  flex-direction: column;
  padding: 20px;
  width: 80%;
  border: 3px solid #362c02;
}
.about_box .img_r {
  float: unset;
  margin: 0 ;
  text-align: center;
}
.about_txt{
  font-size: 3vw;
  margin-right: 0;
  padding-right: 0;
}
.about_txt .ttl_txt{
  font-size: 3.4vw;
  text-align: center;
}
.about_txt .ttl_txt_big{
font-size: 6.6vw;
text-align: center;
margin-top: 15px;
margin-bottom: 30px;
}
.about_box::before {
  left: 10px;
  width: 100%;
  height: 100%;
  top: 10px;
}
/* #about_implant > div:nth-child(1){
  position: relative;
  width: 85%;
  height: 120vw;
  background-image: url(images/about_implant_background_sp.png);
  background-size: 100% 160vw;
  background-repeat: no-repeat;
  margin: 0 auto;
  border: 2px solid #362c02;
  box-shadow: 0px 8px 16px -2px rgb(10 10 10 / 10%), 10px 9px 0px 0px rgb(10 10 10 / 12%);
}

#about_implant > div:nth-child(1) > p:nth-child(1) {
  font-size: 3.4vw;
  position: absolute;
  top: 62vw;
  left: 4.8vw;
  margin: 0;
}

#about_implant > div:nth-child(1) > p:nth-child(2) {
  font-size: 6.6vw;
  position: absolute;
  top: 71vw;
  left: 16.2vw;
  margin: 0;
}


#about_implant > div:nth-child(1) > p:nth-child(3) ,
#about_implant > div:nth-child(1) > p:nth-child(4){
  font-size: 3vw;
  position: absolute;
  top: 87vw;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 90%;
} */

#about_implant > p:nth-child(2) {
  margin: 6vw auto;
}

.circle_div {
  position: absolute;
  color: #9c7c34;
  font-size: 3.1vw;
  background-color: white;
  border: 0.3vw solid #9c7c34;
  border-radius: 50%;
  line-height: 1.1;
  margin: 0;
  text-align: center;
  width: 18vw;
  height: 18vw;
}
#about_implant > .problem > div:nth-child(7){
  top: 36vw;
  left: 56.5vw;
  font-size: 2.7vw;
}
.problem {
  position: relative;
  width: 90vw;
  height: 60vw;
}

.problem > div:nth-child(1) {
  top: -1vw;
  left: 12vw;
}

.problem > div:nth-child(1) > p{
  margin-top: 5.7vw;
}

.problem > div:nth-child(2) {
  top: -5vw;
  left: 34vw;
  font-size: 2.4vw;
}

.problem > div:nth-child(2) > p{
  margin-top: 7.1vw;
}

.problem > div:nth-child(3) {
  top: 22vw;
  left: 12vw;
  font-size: 2.2vw;
}

.problem > div:nth-child(3) > p{
  margin-top: 5.3vw;
}

.problem > div:nth-child(4) {
  top: 17.7vw;
  left: 34.6vw;
}

.problem > div:nth-child(4) > p{
  margin-top: 5.4vw;
}

.problem > div:nth-child(5) {
  top: 41vw;
  left: 34.5vw;
}

.problem > div:nth-child(5) > p{
  margin-top: 4.9vw;
}

.problem > div:nth-child(6) {
  top: 45vw;
  left: 12.5vw;
  font-size: 2.1vw;
}

.problem > div:nth-child(6) > p{
  margin-top: 7.2vw;
}

.problem .box_treatment {
  top: 36vw;
  left: 56.5vw;
  font-size: 2.7vw;
}

.problem .box_treatment > p{
  margin-top: 5vw;
}

.problem > div:nth-child(8) {
  top: 38vw;
  left: 78.5vw;
  font-size: 2.6vw;
}


.problem > div:nth-child(8) > p{
  margin-top: 5.7vw;
}

.problem > img {
  position: absolute;
  top: -6vw;
  left: 57vw;
  width: 31vw;
  height: auto;

}

#about_implant > img {
  top:210vw;
}

#about_implant > p:nth-child(5) {
  width: 72%;
  /* position: absolute;
  left: 50%;
  top: 220vw;
  transform: translateX(-48%); */
  font-size: 3.2vw;
  margin-bottom: 4vw;
  background: linear-gradient(transparent 60%, #fcfc04 60%);
}

#about_implant > p:nth-child(5)::before {
  content: "";
  width: 7vw;
  height: 7vw;
  background-image: url(images/image02.png);
  background-size: 7vw auto;
  background-repeat: no-repeat;
  position: absolute;
  left: -9vw;
  top: -1vw;
}

#about_implant > p:nth-child(5)::after {
  content: "";
  width: 7vw;
  height: 7vw;
  background-image: url(images/image03.png);
  background-size: 7vw auto;
  background-repeat: no-repeat;
  position: absolute;
  left: 71vw;
  top: -1vw;
}

#about_implant > p:nth-child(6) {
  width: 100%;
  /* position: absolute;
  left: 50%;
  top: 230vw;
  transform: translateX(-50%);*/
  font-size: 2.5vw; 
  text-align: center;
  line-height: 1.2;
}

#about_implant .box_treatment {
  position: relative;
}

#about_implant .box_treatment {
  position: relative;
  margin: -7vw auto 8vw auto;
  width: 85%;
  height: 144vw;
  background-image: url(images/image04_sp.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
}

#about_implant .box_treatment > h3 {
  position: absolute;
  font-size: 5.2vw;
  color: white;
  background-color: #9c7c34;
  left: 12vw;
  top: 4vw;
  padding: 0 1.5vw;
}

#about_implant .box_treatment > p:nth-child(2) {
  width: 90%;
  font-size: 2.6vw;
  position: absolute;
  top: 20vw;
  left: 5.8vw;
}

#about_implant .box_treatment > p:nth-child(3) {
  width: 85%;
  font-size: 2.6vw;
  position: absolute;
  top: 39vw;
  left: 6vw;
}

#about_implant .box_treatment > p:nth-child(4) {
  width: 85%;
  font-size: 2.6vw;
  position: absolute;
  top: 72vw;
  left: 6vw;
}



#point {
  width: 100%;
  position: relative;
}

#point > div {
  margin-top: 10vw;
}

#point span {
  color: #9c7c34;
}

#point > h2 {
  width: 100%;
  height: 14.1vw;
  font-size: 4vw;
  line-height: 1.2;
  padding: 2vw 0;
  color: white;
  background-image: url(images/image05.png);
  background-repeat: no-repeat;
  background-size: 100%;
  text-align: center;
}

#point h3 {
  position: absolute;
  font-size: 3vw;
  font-weight: bold;
}

.point010305 {
  position: relative;
  margin: 0 auto;
  width: 100%;
  height: 53vw;
  background-size: 68% 53vw;
  background-repeat: no-repeat;
  background-position-x: 8vw;
}

.point0204 {
  position: relative;
  margin: 0 auto;
  width: 83%;
  height: 53vw;
  background-size: 83% 53vw;
  background-repeat: no-repeat;
}

/* ポイント010305 */
.point010305 img {
  position: absolute;
  width: 32vw;
  height: auto;
  top: -4vw;
  left: 54vw;
}

#point > .point01 {
  background-image: url(images/image06.png);
}

#point > .point03 {
  background-image: url(images/image08.png);
}

#point > .point05 {
  background-image: url(images/image10.png);
}

.point010305 h3 {
  color: #705925;
}

#point > .point01 > h3 {
  top: 8.9vw;
  left: 11.5vw;
}

#point > .point03 > h3 {
  top: 8vw;
  left: 11.5vw;
  width: 38%;
}

.point03.point010305.visible_left.effect_right > h3 > br {
  display: none;
}

#point > .point05 > h3 {
  top: 8.9vw;
  left: 11.5vw;
}

#point p {
  position: absolute;
  width: 55%;
  font-size: 2vw;
}

#point > .point01 > p {
  top: 18vw;
  left: 11.5vw;
}

#point > .point03 > p {
  top: 21.5vw;
  left: 11.5vw;
}

#point > .point05 > p {
  top: 19vw;
  left: 11.5vw;
}

/* ポイント010305 ここまで*/

/* ポイント0204 */
.point0204 {
  background-position: right;
}

.point0204 img {
  position: absolute;
  width: 32vw;
  height: auto;
  top: -4vw;
  right: 54vw;
}

#point > .point02 {
  background-image: url(images/image07.png);
}

#point > .point04 {
  background-image: url(images/image09.png);
}

.point0204 h3 {
  color: #245c6c;
}

#point > .point02 > h3 {
  top: 8vw;
  left: 31.5vw;
}

#point > .point04 > h3 {
  top: 8vw;
  left: 31.5vw;
}

#point p {
  position: absolute;
  width: 60%;
  font-size: 2.5vw;
}

#point > .point02 > p {
  top: 19.4vw;
  left: 19.5vw;
  font-size: 2.4vw;
  width: 72%;
}

#point > .point04 > p {
  top: 20.2vw;
  left: 19.5vw;
  font-size: 2.4vw;
  width: 72%;
}

/* ポイント0204 ここまで*/

#point > p {
  width: 100%;
  height: 15.6vw;
  padding-top: 2.1vw;
  text-align: center;
  font-size: 3vw;
  color: white;
  background-color: #9c7c34;
  text-decoration: underline;
}

#point > p > span {
  color: white;
  font-size: 4vw;
}

#point > div:nth-child(8) {
  margin-top: 11.4vw;
  margin-left: 9.3vw;
  width: 36.4vw;
  height: 7vw;
  background-color: #bc646c;
  position: relative;
  display: inline-block;
}

#point > div:nth-child(8) > p{
  text-align: center;
}

#point > div:nth-child(8) > p:nth-child(1) {
  width: 36.4vw;
  text-align: center;
  font-size: 1.4vw;
  margin-top: 1vw;
  color: white;
}

#point > div:nth-child(8) > p:nth-child(2) {
  width: 36.4vw;
  color: yellow;
  font-size: 3.2vw;
  position: absolute;
  left: 50%;
  transform: translateX(-53%);
  top: -0.7vw;
}

#point > div:nth-child(8) > p:nth-child(2)::before {
  content: "";
  display: inline-block;
  background-image: url(images/tell.png);
  background-size: 1.8vw 2.9vw;
  background-repeat: no-repeat;
  width: 1.8vw;
  height: 2.9vw;
  position: relative;
  top: 0.2vw;
  margin-right: 1.3vw;
}

#point > div:nth-child(9) {
  margin-top: 11.4vw;
  margin-left: 7.7vw;
  width: 36.4vw;
  height: 7vw;
  background-color: #245c6c;
  position: relative;
  display: inline-block;
}

#point > div:nth-child(9) > p {
  width: 36.4vw;
  color: yellow;
  font-size: 2.4vw;
  position: absolute;
  left: 54%;
  transform: translateX(-50%);
  top: -0.7vw;
}

#point > div:nth-child(9) > p::before {
  content: "";
  display: inline-block;
  background-image: url(images/pc_object_big.png);
  background-size: 4.4vw 2.6vw;
  background-repeat: no-repeat;
  width: 4.4vw;
  height: 2.6vw;
  position: relative;
  top: 0.2vw;
  margin-right: 0.6vw;
}

/* インプラント治療とは ここまで*/

/* メリットとデメリット */


#pros_and_cons {
  width: 100%;
  background-image: url(images/gray_background.jpg);
  background-repeat: no-repeat;
  background-size: auto;
  margin-top: 4.1vw;
  height: 100%;
}


.pros_box, .cons_box {
  position: relative;
  width: 100%;
  margin-top: -4vw;
}

.cons_box {
  margin-top: 0;
}

#pros_and_cons > div.pros_box > h2, #pros_and_cons .cons_box h2 {
  font-size: 4vw;
  white-space: nowrap;
  position: absolute;
  margin: 0;
  left: 50%;
  transform: translateX(-55.7%);
}

#pros_and_cons > div.pros_box > h2 {
  top: 3.7vw;
}

#pros_and_cons .cons_box h2 {
  top: -13.3vw;
}


#pros_and_cons > div.pros_box > h2 > span {
  text-decoration: underline yellow 1.1vw;
  text-underline-offset: -1vw;
}

#pros_and_cons .cons_box h2 > span {
  text-decoration: underline #040030 1.1vw;
}

#pros_and_cons > div.pros_box > h2::after, #pros_and_cons .cons_box h2::after {
  content: "";
  background-size: 10vw 8vw;
  background-repeat: no-repeat;
  width: 10vw;
  height: 8vw;
  position: absolute;
  top: -2.8vw;
}

#pros_and_cons > div.pros_box > h2::after {
  background-image: url(images/image11.png);
}

#pros_and_cons .cons_box h2::after {
  background-image: url(images/image17.png);
}

#pros_and_cons > div.pros_box > div {
  position: relative;
  top: 19vw;
}

#pros_and_cons > div.cons_box > div {
  position: relative;
  top: 29vw;
}

.pros, .cons {
  background-image: url(images/image12.png);
  background-size: 80vw 68vw;
  background-repeat: no-repeat;
  width: 80vw;
  height: 68vw;
  margin: 5vw auto 10vw auto;
}

.pros > p:nth-child(1), .cons > p:nth-child(1) {
  font-size: 3.6vw;
  transform: translateY(-100%) translateX(5vw);
}

.pros > p:nth-child(1)::before, .cons > p:nth-child(1)::before {
  content: "";
  background-image: url(images/check.png);
  background-size: 5vw 5.4vw;
  background-repeat: no-repeat;
  width: 5vw;
  height: 5.4vw;
  position: absolute;
  top: -0.5vw;
  left: -4.9vw;
}

.pros > h3, .cons > h3 {
  font-size: 4vw;
  position: absolute;
  color: #9c7c34;
}

.pros01 > h3{
  top: 1.5vw;
  left: 27vw;
}

.pros02 > h3{
  top: 79.3vw;
  left: 23vw;
}

.pros03 > h3{
  top: 157.4vw;
  left: 36vw;
}

.pros04 > h3{
  top: 235.2vw;
  left: 27.2vw;
  font-size: 3.4vw;
  line-height: 1.2;
  text-align: center;
}

.pros span, .cons span {
  color: #9c7c34;
}

.pros > p:nth-child(3), .cons > p:nth-child(3) {
  font-size: 2.6vw;
  width: 66%;
  line-height: 1.3;
  margin-left: 7vw;
  margin-top: 12vw;
}

.cons > p:nth-child(3) {
  font-size: 1.8vw;
}

.pros02 > p:nth-child(3), .pros03 > p:nth-child(3), .pros04 > p:nth-child(3) {
  margin-top: 13.5vw;
}

.pros > p:nth-child(3)::after, .cons > p:nth-child(3)::after {
  content: "";
  background-repeat: no-repeat;
  background-size: 16vw 15vw;
  width: 16vw;
  height: 16vw;
  position: absolute;
  right: 13vw;
}

.pros01 > p:nth-child(3)::after {
  background-image: url(images/image13.png);
  top: 27vw;
}

.pros02 > p:nth-child(3)::after {
  background-image: url(images/image14.png);
  top: 110vw;
}

.pros03 > p:nth-child(3)::after {
  background-image: url(images/image15.png);
  top: 187.8vw;
}

.pros04 > p:nth-child(3)::after {
  background-image: url(images/image16.png);
  top: 265vw;
}

.cons01 > h3{
  top: 1.2vw;
  left: 37vw;
}

.cons02 > h3{
  top: 79.3vw;
  left: 36vw;
}

.cons03 > h3{
  top: 157.5vw;
  left: 37vw;
}

.cons04 > h3{
  top: 236.1vw;
  left: 24vw;
}

.cons01 > p:nth-child(3) {
  font-size: 2.6vw;
  margin-top: 24vw;
}

.cons02 > p:nth-child(3) {
  font-size: 2.6vw;
  margin-top: 19vw;
}

.cons03 > p:nth-child(3) {
  font-size: 2.6vw;
  margin-top: 23vw;
}

.cons04 > p:nth-child(3) {
  font-size: 2.6vw;
  margin-top: 19vw;
}

.cons01 > p:nth-child(3)::after {
  background-image: url(images/image18.png);
  top: 30vw;
}

.cons02 > p:nth-child(3)::after {
  background-image: url(images/image19.png);
  top: 109vw;
}

.cons03 > p:nth-child(3)::after {
  background-image: url(images/image20.png);
  top: 188vw;
}

.cons04 > p:nth-child(3)::after {
  background-image: url(images/image21.png);
  top: 264.2vw;
}

/* メリットとデメリット sp ここまで*/

/* 治療の流れ sp */

#Flow_of_treatment {
  width: 100%;
  margin-top: 6.5vw;
}

#Flow_of_treatment > h2 {
  width: 100%;
  height: 12.1vw;
  font-size: 4vw;
  padding: 3vw 0;
  color: white;
  background-image: url(images/image05.png);
  background-repeat: no-repeat;
  background-size: 100%;
  text-align: center;
  margin-top: 0;

}

.step {
  width: 90vw;
  height: 80vw;
  border: solid 0.2vw black;
  margin: 0 auto;
  position: relative;
  margin-top: 9.5vw;
}

.step p:nth-child(1) {
  font-size: 3.3vw;
  width: 12vw;
  height: 5vw;
  background-color: white;
  position: absolute;
  margin: 0;
  padding-left: 1.9vw;
  padding-top: 0.9vw;
  top: 1.7vw;
  left: 2.8vw;
  z-index: 2;
}

.step h3 {
  font-size: 3.3vw;
  background-color: #94863B;
  color: white;
  width: 70.5vw;
  height: 9.1vw;
  position: absolute;
  padding-left: 19.6vw;
  margin-left: -0.05vw;
  line-height: 3.2;
  top: -3.3vw;
  z-index: 1;
}

.step > p:nth-child(3) {
  width: 50%;
  font-size: 3vw;
  position: absolute;
  top: 12vw;
  left: 2.2vw;
}

.step > p:nth-child(3) > span {
  color: #9c7c34;
}

.step > img {
  position: absolute;
  top: 26vw;
  right: 0vw;
  width: 38vw;
  height: 28vw;
}

#Flow_of_treatment > img {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 10vw;
  height: 5vw;
  margin-top: 2.1vw;
}

#Flow_of_treatment > div.step.step1 {
  height: 70vw;
}

#Flow_of_treatment > div.step.step1 > img {
  top: 23vw;
}

#Flow_of_treatment > div.step.step2 {
  height: 65vw;
}

#Flow_of_treatment > div.step.step2 > img {
  top: 22vw;
}

#Flow_of_treatment > div.step.step3 {
  height: 50vw;
}

#Flow_of_treatment > div.step.step3 > img {
  top: 16vw;
}

#Flow_of_treatment > div.step.step4 {
  height: 70vw;
}

#Flow_of_treatment > div.step.step4 > img {
  top: 25vw;
}

#Flow_of_treatment > div.step.step6 {
  height: 70vw;
}

#Flow_of_treatment > div.step.step6 > img {
  top: 25vw;
}

.step1 {
  margin-top: 5vw;
}

#Flow_of_treatment > div.step.step5 > p:nth-child(3) {
  top: 10vw;
}

/* 治療の流れ sp ここまで*/

/* インプラント症例 sp */

#case {
  width: 100%;
}
#case2 {
  width: 100%;
}

.before_after {
  width: 100%;
  height: 70.3vw;
  position: relative;
  background-image: url(images/rectangle.png);
  background-repeat: no-repeat;
  background-size: 100%;
  margin-top: 11vw;
}

.before_after > h2 {
  font-size: 5vw;
  position: absolute;
  top: 10vw;
  left: 50%;
  transform: translateX(-50%);
}

.black_line1 {
  position: absolute;
  top: 23vw;
  right: 8vw;
  height: 10vw;
  transform: rotate(33deg);
}

.black_line2 {
  position: absolute;
  top: 23vw;
  right: 28vw;
  height: 10vw;
  transform: rotate(-22deg);
}

#case > div.before_after > img:nth-child(5) {
  position: absolute;
  top: 8vw;
  left: 9vw;
  width: 16vw;
  height: 18vw;
}

#case > div.before_after > img:nth-child(6) {
  position: absolute;
  top: 10vw;
  right: 10vw;
  width: 14vw;
  height: 14vw;
  border: 0.4vw solid #bc646c;
}

#case > div.before_after > img:nth-child(7) {
  position: absolute;
  top: 34vw;
  left: 15vw;
  width: 29vw;
  height: 25vw;
}

#case > div.before_after > img:nth-child(8) {
  position: absolute;
  top: 41vw;
  left: 49vw;
  width: 5vw;
  height: 9vw;
}

#case > div.before_after > img:nth-child(9) {
  position: absolute;
  top: 34vw;
  left: 59vw;
  width: 29vw;
  height: 25vw;
}

#case > div.before_after > p:nth-child(2) {
  font-size: 1.7vw;
  position: absolute;
  top: 25.4vw;
  right: 10vw;
  color: #9c7c34;
}

#case > div.before_after > p:nth-child(10) {
  font-size: 2.5vw;
  position: absolute;
  top: 56vw;
  left: 15vw;
  color: #9c7c34;
}

#case > div.before_after > p:nth-child(11) {
  font-size: 2.5vw;
  position: absolute;
  top: 56vw;
  left: 59vw;
  color: #9c7c34;
}

#case > table:nth-child(2) {
  width: 90vw;
  margin: 5vw auto;
  font-size: 3vw;
  border-collapse: collapse;
}

#case > table:nth-child(2) span {
  color:#9c7c34;
}

#case > table:nth-child(2) td.column1 {
  font-size: 4vw;
  color: white;
  height: 12vw;
  background-color: #A1975F;
  white-space: nowrap;
  padding: 0 3vw 0 1vw;
  border: 0.2vw solid black;
}

#case > table:nth-child(2) td.column2 {
  padding-left: 1vw;
  border: 0.2vw solid black;
}

.font-small { 
  font-size: 2.5vw;
}

#case > h2 {
  width: 100%;
  height: 7.8vw;
  font-size: 4vw;
  padding: 3vw 0;
  color: white;
  line-height: 0.7;
  background-image: url(images/image05.png);
  background-repeat: no-repeat;
  background-size: 100% 11.7vw;
  text-align: center;
  margin-top: 6.4vw;
}

#case > table:nth-child(4) {
  width: 90vw;
  margin: 0 auto;
  font-size: 2.2vw;
  border-collapse: separate;
  border-spacing: 0.2vw;
}

#case > table:nth-child(4)  td, #case > table:nth-child(4)  th {
  background-color: #E0DFDC;
  padding: 1.5vw 1vw 0.5vw 1vw;
  font-size: 2vw;
}

#case > table:nth-child(4)  th {
  padding-top: 2vw;
  padding-bottom: 2vw;
  font-size: 3.5vw;
}

table:nth-child(4)  th {
  font-size: 3vw;
  padding: 1.7vw 1.7vw;
  white-space: nowrap;
  text-align: center;
}

#case > table:nth-child(4)  td.column1 {
  font-size: 3.5vw;
  padding: 4vw 1.7vw;
  white-space: nowrap;
  text-align: center;
}

#case > table:nth-child(4) img {
  width: 20vw;
}

.column2_row2_4 {
  width: 21vw;
}

#case > table:nth-child(4) > tbody > tr.row5 > td:nth-child(3) {
  font-size: 2vw;
}

#case > table:nth-child(4) > tbody > tr.row5 > td:nth-child(4) {
  font-size: 2vw;
}

.row3 {
  text-align: center;
}

.row3 td, .row4 td, .row5 td {
  padding: 4.5vw 1vw 4.5vw 1vw !important;
}

#case > table:nth-child(4) > tbody > tr.row1 > th:nth-child(2) {
  border-top: 0.5vw solid #9c7c34;
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing:border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

#case > table:nth-child(4) > tbody > tr.row2 > td:nth-child(2), #case > table:nth-child(4) > tbody > tr.row3 > td:nth-child(2), #case > table:nth-child(4) > tbody > tr.row4 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing:border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}


#case > table:nth-child(4) > tbody > tr.row5 > td.column2_row5 {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  border-bottom: 0.5vw solid #9c7c34;
  box-sizing:border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb{
    width: 95%;
    margin: 0 auto;
    overflow-x: scroll;
    font-size: 2.2vw;
    border-collapse: separate;
    border-spacing: 0.2vw;
}
#case .scroll_tb .info01{
  width: 750px;
}
#case .scroll_tb td, #case .scroll_tb th{
    background-color: #E0DFDC;
    padding: 1.5vw 1vw 0.5vw 1vw;
}
#case .scroll_tb th {
    padding-top: 2vw;
    padding-bottom: 2vw;
    font-size: 3.5vw;
    white-space: nowrap;
}
#case .scroll_tb td {
  font-size: 16px !important;
}
#case .scroll_tb table.info01 img {
  width:100%;
}
#case .scroll_tb> tbody > tr.row5 > td:nth-child(3) {
  font-size: 2vw;
}
#case .scroll_tb> tbody > tr.row5 > td:nth-child(4) {
  font-size: 2vw;
}
#case .scroll_tb td.column1 {
    background-color: #E0DFDC;
    font-size: 3.5vw;
    padding: 4vw 1.7vw;
    white-space: nowrap;
    text-align: center;
    border: none;
    height: unset;
    color: #000
}
#case .scroll_tbimg{
    width: 20vw;
}
#case .scroll_tb> tbody > tr.row1 > th:nth-child(2) {
  border-top: 0.5vw solid #9c7c34;
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb> tbody > tr.row2 > td:nth-child(2), 
#case .scroll_tb> tbody > tr.row3 > td:nth-child(2), 
#case .scroll_tb> tbody > tr.row4 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tb> tbody > tr.row5 > td:nth-child(2) {
  border-left: 0.5vw solid #9c7c34;
  border-right: 0.5vw solid #9c7c34;
  border-bottom: 0.5vw solid #9c7c34;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#case .scroll_tbtr.row2 .column2_row2_4 {
  width: 21vw;
}    
#case > div,
#case2 > div
{
  position: relative;
}

#case > div > h3,
#case2 > div > h3 {
  font-size: 4vw;
  margin: 5vw auto;
  width: 45vw;
  text-align: center;
  line-height: 1.4;
}

#case > div > h3 > span,
#case2 > div > h3 > span {
  -webkit-text-stroke: 0.1vw rgb(0, 0, 0);
}

#case > div > h3::after,
#case2 > div > h3::after {
  content: "";
  position: absolute;
  width: 9.7vw;
  height: 10vw;
  background-image: url(images/h3_after.png);
  background-repeat: no-repeat;
  background-size: 10vw 9.7vw;
  top: 0.5vw;
  left: 70vw;
}

#case > div > h3::before,
#case2 > div > h3::before {
  content: "";
  position: absolute;
  width: 9.7vw;
  height: 10vw;
  background-image: url(images/h3_before.png);
  background-repeat: no-repeat;
  background-size: 10vw 9.7vw;
  top: 0.5vw;
  left: 20vw;
}

#case > div:nth-child(6) > div:nth-child(1), #case > div:nth-child(6) > div:nth-child(2),
#case div.box_imgR, #case div.box_imgL,
#case2 > div:nth-child(6) > div:nth-child(1), #case2 > div:nth-child(6) > div:nth-child(2),
#case2 div.box_imgR, #case2 div.box_imgL
{
  width:95%;
  height: 100%;
  margin: 0 auto 8vw auto;
  position: relative;
}
.c_sp{
  text-align: center;
}
.c_sp img{
max-width: 100%;
width: auto !important;
height: auto !important;
}
#case > div:nth-child(6) > div:nth-child(1) > h4,
#case div.box_imgR h4,
#case2 > div:nth-child(6) > div:nth-child(1) > h4,
#case2 div.box_imgR h4{
  width: 45%;
  margin: 0 0 0 25vw;
  font-size: 4vw;
  -webkit-text-stroke: 0.1vw rgb(0, 0, 0);
}
#case2 div.box_imgR h4{
  width: 45%;
  margin: 0 0 0 25vw;
  font-size: 4vw;
  -webkit-text-stroke: 0.1vw rgb(0, 0, 0);
}


#case > div:nth-child(6) > div:nth-child(1) > h4::before,
#case div.box_imgR h4::before,
#case2 > div:nth-child(6) > div:nth-child(1) > h4::before,
#case2 div.box_imgR h4::before
{
  content: "";
  position: absolute;
  width: 26vw;
  height: 5.8vw;
  top: -1.4vw;
  left: -0.7vw;
  background-image: url(images/Nobel_Bocare_logo.png);
  background-repeat: no-repeat;
  background-size: 26vw 5.8vw;
}

#case > div:nth-child(6) > div:nth-child(1) > h4::after,
#case div.box_imgR h4::after,

#case2 > div:nth-child(6) > div:nth-child(1) > h4::after,
#case2 div.box_imgR h4::after
{
  content: "";
  position: absolute;
  width: 30.2vw;
  top: 2.4vw;
  right: -2vw;
  border-bottom: 0.1vw solid black;
}

#case > div:nth-child(6) > div > p, #case div.box_imgR p, #case div.box_imgL p,
#case2 > div:nth-child(6) > div > p, #case2 div.box_imgR p, #case2 div.box_imgL p{
  margin: 2vw 0 0 0;
  font-size: 16px;
  width:100%;
  line-height: 1.3;
}

#case > div:nth-child(6) > div:nth-child(1) > img, #case div.box_imgR img,
#case2 > div:nth-child(6) > div:nth-child(1) > img, #case2 div.box_imgR img {
  position: unset;
  top: 10vw;
  right: -2.5vw;
  width: 29vw;
  height: 21vw;
}

#case > div:nth-child(6) > div:nth-child(2) > h4, #case div.box_imgL h4,
#case2 > div:nth-child(6) > div:nth-child(2) > h4, #case2 div.box_imgL h4 {
  width: 41%;
  font-size: 3.4vw;
  -webkit-text-stroke: 0.1vw rgb(0, 0, 0);
}

#case > div:nth-child(6) > div:nth-child(2) > h4::before, #case div.box_imgL h4::before,
#case2 > div:nth-child(6) > div:nth-child(2) > h4::before, #case2 div.box_imgL h4::before  {
  content: "";
  position: absolute;
  width: 18vw;
  height: 12.8vw;
  top: -2.7vw;
  left: 32.5vw;
  background-image: url(images/osstem_logo.png);
  background-repeat: no-repeat;
  background-size: 18vw 8.8vw;
}

#case > div:nth-child(6) > div:nth-child(2) > h4::after, #case div.box_imgL h4::after,
#case2 > div:nth-child(6) > div:nth-child(2) > h4::after, #case2 div.box_imgL h4::after {
  content: "";
  position: absolute;
  width: 39.1vw;
  top: 1.6vw;
  left: -7.1vw;
  border-bottom: 0.1vw solid black;
}

#case > div:nth-child(6) > div:nth-child(2) > img, #case div.box_imgL img ,
#case2 > div:nth-child(6) > div:nth-child(2) > img, #case2 div.box_imgL img {
  position: unset;
  top: 12vw;
  width: 29vw;
  left: -2.6vw;
  height: 21vw;
}

#case > div:nth-child(6) > div:nth-child(2) > p, #case div.box_imgL p,
#case2 > div:nth-child(6) > div:nth-child(2) > p, #case2 div.box_imgL p {
  position: unset;
  top: 7vw;
  left: 29vw;
}

/* インプラント症例 sp ここまで*/

/* インプラント料金 sp*/

#Price > h2 {
  font-size: 4.5vw;
  width: 41vw;
  margin: 0 auto;
  margin-top: 12vw;
}

#Price > div:nth-child(2) {
  width:95%;
  margin: 0 auto;
  font-size: 15px;
}

#Price > div:nth-child(2) > div p {
  display: inline-block;
}

#Price > div:nth-child(2) > div p.column1 {
  width: 30vw;
  text-align: center;
  -webkit-text-stroke: 0.05vw rgb(0, 0, 0); 
}

#Price > div:nth-child(2) > div:nth-child(2n+1) {
  background-color: #E0DFDC;
}

#Price > div:nth-child(2) > div:nth-child(2n) {
  background-color: #F0F0EE;
  margin: 0.3vw 0;
}

#Price > div:nth-child(2) > div:nth-child(1) {
  border-top: 0.3vw solid black;
}

#Price > div:nth-child(2) > div:nth-child(9) {
  border-bottom: 0.3vw solid black;
}

#Price > div:nth-child(3), #Price > div:nth-child(4) {
  width:95%;
  margin: 12vw auto;
  position: relative;
}

#Price > div:nth-child(3) > h2 {
  font-size: 4.5vw;
  width: 95%;
  height: 7.5vw;
  margin: 0 0 0 7vw;
}
#Price  span {
  color: #9c7c34;
}

#Price > div:nth-child(3) > h2::after {
  content: "";
  width: 90vw;
  height: 8vw;
  background-image: url(images/finger.png);
  background-repeat: no-repeat;
  background-size: 85vw 7.5vw;
  position: absolute;
  top: -1vw;
  left: 0;
}

#Price > div:nth-child(3) > p {
  font-size: 3vw;
}

#Price > div:nth-child(4) > h2 {
  font-size: 4vw;
  padding-left: 1vw;
  border-left: 0.5vw solid #040030;
}

#Price > div:nth-child(4) > p {
  font-size:3vw;
  width: 73%;
}

#Price > div:nth-child(4) > p::after {
  content: "";
  width: 24vw;
  height: 22vw;
  background-image: url(images/question.png);
  background-repeat: no-repeat;
  background-size: 22vw 18vw;
  position: absolute;
  top: 12vw;
  right: 0;
}

/* インプラント料金 sp ここまで*/

/* FAQ sp */

#faq {
  width: 95%;
  height: auto;
  margin: 0 auto;
  /* padding-bottom: 10vw; */
  position: relative;
  background-color: #A1975F;
}

#faq > h2 {
  font-size: 4.5vw;
  color: white;
  width: 28vw;
  margin: 0 auto;
  padding: 3vw 0 4vw 0;
}

#faq > h2::after {
  content: "";
  width: 17vw;
  height: 2vw;
  border-bottom: 0.3vw solid black;
  position: absolute;
  top: 8vw;
  left: 50%;
  transform: translate(-50% ,0);
}

#faq p {
  font-size: 16px;
  /* color: white; */
  margin: 0.2vw;
  padding-left: 4vw;
  line-height: 2;
}

#faq p:nth-child(2n) span {
  color: #484843;
}

#faq p:nth-child(2n+1) span {
  color: #BA616B;
}

#faq p:nth-child(2n+1) {
  /* margin-bottom: 8vw; */
}

/* FAQ sp ここまで*/

/* フッター　sp */

footer {
  position: relative;
  width: auto;
  padding: 2.5em;
  /* height: 190vw; */
  margin: 20vw auto 20vw auto;
  background-color: #E6EDF5;
}
.address{
  font-size: 14px;
}
footer p.center{
  position: unset;
}
footer p.center img{
  margin-left: 0;
}
.indx_b15_phone_web {
  flex-direction: column;
}
.indx_b15_phone_web .indx_b15_phone {
  max-width: 350px;
  width: 100%;
  height: 55px;
  margin: 0 auto 20px;
  padding: 0;
}
.indx_b15_phone .number {
  font-size: 26px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0;
  text-decoration: none;
}
.indx_b15_phone_web .indx_b15_web {
  max-width: 350px;
  width: 100%;
  height: 105px;
  margin: 0 auto 50px;
  padding: 0;
}
.indx_b15_phone_web .indx_b15_web img {
  width: 7vw;
}
footer > img {
  position: absolute;
  top: 4vw;
  left: 20vw;
  width: 42vw;
  height: 13vw;
}

footer > p {
  position: absolute;
  top: 18vw;
  left: 22vw;
  width: 43vw;
  font-size: 2.5vw;
}

footer > div:nth-child(3) {
  position: absolute;
  top: 2vw;
  left: 2vw;
  width: 2vw;
  height: 2vw;
}

footer > div:nth-child(3) > p {
  display: inline-block;
  background-color: #bc646c;
  color: white;
  font-size: 8vw;
  width: 57vw;
  height: 13vw;
  line-height: 1.7;
  position: absolute;
  top: 21vw;
  left: 13.5vw;
  text-align: center;
  padding-left: 1.8vw;
}

footer > div:nth-child(3) > p::before {
  content: "";
  position: absolute;
  top: 3vw;
  left: 2.7vw;
  width: 3vw;
  height: 7vw;
  background-image: url(images/tell.png);
  background-repeat: no-repeat;
  background-size: 3vw 7vw;
}

footer > div:nth-child(3) > a {
  position: absolute;
  top: 45.5vw;
  left: 13.7vw;
  width: 53vw;
  height: 13vw;
  font-size: 6vw;
  line-height: 2.2;
  padding-left: 5vw;
}

footer > div:nth-child(3) > a::before {
  background-size: 8vw 6vw;
  background-repeat: no-repeat;
  width: 8vw;
  height: 6vw;
  position: absolute;
  top: 3.4vw;
  left: 2.9vw;
}

.Consultation_hours {
  position: relative;
}
#footer .Consultation_hours{
  width: 100%;
}
.Consultation_hours > img {
  position: absolute;
  width: 27vw;
  height: 25vw;
  left: 11vw;
  top: -2vw;
}

.Consultation_hours > table {
  position: absolute;
  font-size: 4vw;
  line-height: 2;
  width: 45vw;
  left: 8vw;
  top: 70vw;
  border-collapse: collapse;
}

.Consultation_hours td:not(.time) {
  padding-left: 2vw;
}

.time {
  width: 56vw;
  text-align: center;
  padding-left: 0.7vw;
  padding-right: 1.8vw;
  white-space: nowrap;
}

.Consultation_hours  td {
  border-bottom: solid 0.2vw black;
}

.Consultation_hours > div {
  position: absolute;
  font-size: 2.5vw;
  left: 9.5vw;
  top: 100vw;
}

.Consultation_hours > a {
  position: absolute;
  font-size: 2.5vw;
  left: 60vw;
  top: 13vw;
  color: white;
  text-decoration: none;
  background-color: black;
  padding: 1vw 3vw;
  margin: 0;
}

iframe {
  position: unset;
  top: 115vw;
  margin: 8vw auto 5vw auto;
  width: 100%;
  height: 70vw;
}
.consultation .bnt{padding: 0 15px;flex-direction: column;margin-bottom: 0;}
.consultation .bnt li{
  margin: 0 auto 15px !important;
  max-width: 350px;
  width: 100%;
  height: 55px;
  padding: 5px 0;
}
.consultation .bnt li.web{
  margin-bottom: 0 !important;
  height: 35px;
}
.consultation .bnt li .icon {
  font-size: 23px;
  margin-top: 6px;

}
.consultation .bnt li.tell {
  font-size: 14px;
}
.consultation .bnt li .icon::before {
  width: 11px;
  height: 20px;
}
.consultation .bnt li .icon span {
  padding-left: 10px;
}
.consultation .bnt li.web p {
  font-size: 16px;
}
.consultation .bnt li.web p::before {
  width: 25px;
  height: 15px;
}
.consultation .bnt li.web p span {
  padding-left: 35px;
}
/* フッター　sp ここまで　*/
#point_new .point01_new , #point_new .point02_new{
  padding: 30px 25px 30px 30px;
  margin:0 auto 100px;
  max-width: 90%;
  box-sizing: border-box;
}
#point_new .point_img img {
  position: unset;
}
#point_new .point_img{
  text-align: center;
}
#point_new h3 ,#point_new .point02_new h3{
  margin-top: 35px;
  font-size: 20px;
}

#point_new .txt , #point_new .point02_new .point_txt{
  padding: 0 !important;
  font-size: 16px;
}
#point_new .point01_new::after, #point_new .point02_new::after {
  right: -3%;
  bottom: -20px;
}
#point_new .munber img , #point_new .point02_new .munber img{
  left: 6px !important;
  top: -25px;
  max-width: 100%;
  width: auto;
}
#point_new .point_img img{
  max-width: 100%;
  width: auto;
}
#Flow_of_treatment img{
  position: unset;
  max-width: 100%;
  width: auto;
  height: auto;
  transform: inherit;
}
#case .scroll_tb table.info01 td, #case .scroll_tb table.info01 th {
  width: 20%;
}
.acc_support , .faq_a{
  margin-bottom: 10px;
max-width: 750px;
width: 100%;
margin: 0 auto 50px;
}
.faq_a{
  margin-bottom: 20px;
}
.acc_support dt ,.faq_a p{
background-color: #EDEBE6;
padding: 6px 25px;
font-weight: bold;
position: relative;
cursor: pointer;
}
.faq_a p:first-child{
  background: #A1975F;
}
.faq_a p:last-child{
  color: #000 !important;
}
.acc_support dt h3 , .faq_a p:first-child{
margin: 15px 0;
padding-right: 10px;
font-size:17px;
color: #9c7c34;
}
.faq_a p:first-child{
  padding-right: 50px;
}
.acc_support span {
color: #9c7c34;
}
.acc_support dd , .faq_a p:last-child{
  border: 3px solid #D4D2CC;
  padding: 15px 25px;
  position: relative;
  margin-left: 0;
  /* background: #edebe6;   */
}
.acc_support dt::before {
  content: " ";
  display: block;
  width: 20px;
  height: 20px;
  background: url(images/arw.png) no-repeat left top;
  -webkit-background-size: 9px auto;
  background-size:contain;
  position: absolute;
  top: 50%;
  transform: translate(0 ,-50%);
  /* margin-top: -3px; */
  right: 15px;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  -ms-transition: -ms-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
}
.acc_support dt.open:before {
 background: url(images/arw_02.png) no-repeat left top;
}
.acc_support dd , .faq_a p:last-child{
  display: none;
}
.acc_support3{
  position: relative;
  margin-bottom: 70px !important;
}
.pros_box:last-child .acc_support3{
  margin-bottom: 0; 
}
.pros_box:last-child .acc_support3::after{
  display: none;
}
.acc_support3::after{
  position: absolute;
  content: '';
  background: url(images/black_arrow.png) no-repeat;
  width: 35px;
  height: 25px;
  bottom: -35px;
  background-size: contain;
  left: 50%;
  transform: translate(-50% ,0);
}
.acc_support3 dt{
background: #94863B;
}
.acc_support3 dt h3{
color: #fff;
}
.acc_support3 dt::before ,  .faq_a p:first-child::before{
content: " ";
display: block;
width: 20px;
height: 20px;
background: url(images/arw_w.png) no-repeat left top;
-webkit-background-size: 9px auto;
background-size:contain;
position: absolute;
top: 50%;
transform: translate(0 ,-50%);
/* margin-top: -3px; */
right: 15px;
-webkit-transition: -webkit-transform 0.3s ease-in-out;
-ms-transition: -ms-transform 0.3s ease-in-out;
transition: transform 0.3s ease-in-out;
}
.acc_support3 dt.open:before , .faq_a p:first-child.open::before{
background: url(images/arw_w_02.png) no-repeat left top;
/* transition: all 3s; */
}
#faq{
  background: none;
}
#faq h2{
  color: #000;
}
.footer_df {
  flex-direction: column;
}
.footer_df .box_l{
  margin-right: 0;
}
.point01_new.po5{
margin-bottom: 0 !important;
}
.consultation {
  margin: 70px 0 0 0;
  padding: 30px 0;
}
.ttl_consultation {
  font-size: 4.5vw;
}
.ttl_consultation span {
  font-size: 5.5vw;
}
.footer_df{
    max-width: initial;
    width: auto;
}

}
@media screen and (max-width: 480px){
  #point_new .point01_new, #point_new .point02_new {
    padding: 28px 15px 30px 20px;
  }
  #point_new h3, #point_new .point02_new h3 {
    font-size: 20px;
    letter-spacing: -1px;
  }
  .acc_support, .faq_a {
    margin: 0 auto 30px;
  }
  #pros_and_cons {
    padding-bottom: 25px;
  }
  #pros_and_cons .pros_box:last-child{
    padding-bottom: 25px;
  }
  .acc_support3 {
    margin-bottom: 60px !important;
  }
  #Price > div:nth-child(3) > p {
    font-size: 3.5vw;
  }
  #Price > div:nth-child(4) > p {
    font-size: 3.5vw;
  }
}
 @media screen and (max-width: 430px){

  .about_txt ,.about_txt .ttl_txt {
    font-size: 3.5vw;
}
.about_box {
  width: 85%;
}

/*#about_implant > div:nth-child(1) > p:nth-child(3), #about_implant > div:nth-child(1) > p:nth-child(4) {
  font-size: 3.7vw;
}
#about_implant > div:nth-child(1) {
  height: 132vw;
}*/
} 




@media screen and (min-width: 481px) {
.top-banner {
	display: flex;
	flex-wrap: wrap;
	gap: 100px;
	margin: auto;
	justify-content: center;
  align-items: center;
}

.top-banner img {
	min-width: 450px;
	max-width:100%;
	border: 1px solid #fff;
}
  }

@media screen and (max-width: 480px) {
.top-banner {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin: 20px auto 0 auto;
	justify-content: center;
  align-items: center;
}

.top-banner img {
	max-width:90%;
	border: 1px solid #fff;
}
}


