/* CSS Document */
@media only screen and (max-width: 768px) { .blurFixSP { image-rendering: optimizeSpeed; /* STOP SMOOTHING, GIVE ME SPEED  */ image-rendering: -moz-crisp-edges; /* Firefox                        */ image-rendering: -o-crisp-edges; /* Opera                          */ image-rendering: -webkit-optimize-contrast; /* Chrome (and eventually Safari) */ image-rendering: pixelated; /* Chrome */ image-rendering: optimize-contrast; /* CSS3 Proposed                  */ -ms-interpolation-mode: nearest-neighbor; /* IE8+                           */ } }

/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Menu Toogle
********************************/
.menu_toggle { background-color:#f8f8f8; margin-top: 70px; position: fixed; top: 0px; bottom: 0px; left: 0px; width: 100%; padding: 0px 0px 0px; overflow: hidden; opacity: 0; visibility: hidden; transition: all 0.3s linear; }

.menu_toggle_wrap { max-width: 1062px; margin: 0 auto; margin-top: 120px; display: flex; justify-content: space-between;}

.menu_toggle_wrap .menu-block{ width: 49%; }

.menu_toggle_wrap .menu-block:nth-child(2){ width: 41%; }

.menu_toggle_wrap .menu-block .menu-title h1 { font-size: 40px; letter-spacing: .1em; line-height: 30px; font-weight: 600; color: #0ba692; font-family: 'Lora', serif;}

.menu_toggle_wrap .menu-block ul{ width: 100%; column-count: 2; margin-top: 33px;}

.menu_toggle_wrap .menu-block ul li a{ font-size: 15px; line-height: 50px; letter-spacing: 0.1em; color: #434343; text-decoration: none; position: relative; margin-left: 15px;}

.menu_toggle_wrap .menu-block ul li a::before { content: ""; display: block; position: absolute; width: 9px; height: 9px; background-color: #d66a39; border-radius: 50%; left: -15px; top: 8px;}

.menu_toggle.active { opacity: 1; visibility: visible; }

.menu_toggle ul li { position: relative; overflow: hidden; }

.menu_toggle p { margin-bottom: 0; }

.menu_toggle .inside > ul > li a, .menu_toggle .inside > ul > li p { transform: translateY(100%); transition: all 0.5s ease; }

.menu_toggle .inside > ul > li:nth-child(1) a, .menu_toggle .inside > ul > li:nth-child(1) p { transition-delay: 0.25s; }

.menu_toggle .inside > ul > li:nth-child(2) a, .menu_toggle .inside > ul > li:nth-child(2) p { transition-delay: 0.3s; }

.menu_toggle .inside > ul > li:nth-child(3) a, .menu_toggle .inside > ul > li:nth-child(3) p { transition-delay: 0.35s; }

.menu_toggle .inside > ul > li:nth-child(4) a, .menu_toggle .inside > ul > li:nth-child(4) p { transition-delay: 0.4s; }

.menu_toggle .inside > ul > li:nth-child(5) a, .menu_toggle .inside > ul > li:nth-child(5) p { transition-delay: 0.45s; }

.menu_toggle .inside > ul > li:nth-child(6) a, .menu_toggle .inside > ul > li:nth-child(6) p { transition-delay: 0.5s; }

.menu_toggle .inside > ul > li:nth-child(7) a, .menu_toggle .inside > ul > li:nth-child(7) p { transition-delay: 0.55s; }

.menu_toggle .inside > ul > li:nth-child(8) a, .menu_toggle .inside > ul > li:nth-child(8) p { transition-delay: 0.6s; }

.menu_toggle .inside > ul > li:nth-child(9) a, .menu_toggle .inside > ul > li:nth-child(9) p { transition-delay: 0.65s; }

.menu_toggle .inside > ul > li:nth-child(10) a, .menu_toggle .inside > ul > li:nth-child(10) p { transition-delay: 0.7s; }

.menu_toggle .inside > ul > li:nth-child(11) a, .menu_toggle .inside > ul > li:nth-child(11) p { transition-delay: 0.75s; }

.menu_toggle .inside > ul > li:nth-child(12) a, .menu_toggle .inside > ul > li:nth-child(12) p { transition-delay: 0.8s; }

.menu_toggle .inside > ul > li:nth-child(13) a, .menu_toggle .inside > ul > li:nth-child(13) p { transition-delay: 0.85s; }

.menu_toggle .inside > ul > li:nth-child(14) a, .menu_toggle .inside > ul > li:nth-child(14) p { transition-delay: 0.9s; }

.menu_toggle .inside > ul > li:nth-child(15) a, .menu_toggle .inside > ul > li:nth-child(15) p { transition-delay: 0.95s; }

.menu_toggle.active .inside > ul > li a, .menu_toggle.active .inside > ul > li p { transform: translateY(0%); }

.menu_toggle .inside { -webkit-overflow-scrolling: touch; /* Lets it scroll lazy */ transition: all 0.5s ease; height: 100%; overflow: auto; }

.menu_toggle .inside > ul { padding: 60px 0 60px; width: 100%; }

.menu_toggle .inside > ul > li { background-repeat: no-repeat; background-position: left 10px top 13px; background-size: auto 20px; }

.menu_toggle .inside > ul > li:first-child > a::before, .menu_toggle .inside > ul > li:first-child > a::after, .menu_toggle .inside > ul > li:first-child > p::before, .menu_toggle .inside > ul > li:first-child > p::after { display: none; }

.menu_toggle .inside > ul > li > a, .menu_toggle .inside > ul > li > p.title { cursor: pointer; padding: 12px 20px 12px 20px; display: block; position: relative; border-bottom: 0px dashed #fefefe; font-size: 15px; font-weight: 700; color: #838E95; text-align: center; text-decoration: none; }

.menu_toggle .inside > ul > li > a span, .menu_toggle .inside > ul > li > p.title span { display: block; font-size: 80%; color: #3ba4cc; letter-spacing: 2px; }

.menu_toggle .inside > ul > li > a::before { position: absolute; top: 50%; left: 8px; border: 4px solid #ffffff; border-bottom-color: transparent; border-right-color: transparent; border-top-color: transparent; transform: translateY(-50%) scaleX(1.4); }

.menu_toggle .inside > ul > li > p.title::before, .menu_toggle .inside > ul > li > p.title::after { content: ""; background-color: #3ba4cc; display: block; position: absolute; top: 50%; right: 10px; width: 10px; height: 2px; transition: all 0.5s ease; opacity: 1; }

.menu_toggle .inside > ul > li > p.title::before { transform: translate(-50%, -50%); }

.menu_toggle .inside > ul > li > p.title::after { transform: translate(-50%, -50%) rotate(90deg); }

.menu_toggle .inside > ul > li > p.title.rotate::before { transform: translate(-50%, -50%); }

.menu_toggle .inside > ul > li > p.title.rotate::after { transform: translate(-50%, -50%); }

.menu_toggle .lv2 ul { background-color: rgba(107, 158, 178, 0.8); }

.menu_toggle .lv2 li { padding: 0 10px; }

.menu_toggle .lv2 li a, .menu_toggle .lv2 li p.title { display: block; position: relative; color: #fff; font-size: 13px; padding: 10px 10px 10px 25px; border-bottom: 1px dotted rgba(255, 255, 255, 0.7); }

.menu_toggle .lv2 li a::after { content: "\203A"; display: block; position: absolute; top: 47%; left: 10px; transform: translateY(-50%); font-size: 12px; font-weight: normal; }

#nav-icon { width: 28px; height: 23px; position: relative; margin: 0 auto 0px; cursor: pointer; transition: .5s ease-in-out; }

#nav-icon span { background-color: #d66a39; display: block; position: absolute; height: 2px; width: 100%; opacity: 1; left: 0; transform: rotate(0deg); transition: .25s ease-in-out; }

#nav-icon span:nth-child(1) { top: 2px; }

#nav-icon span:nth-child(2) { top: 8px; }

#nav-icon span:nth-child(3){ top: 14px;}

#nav-icon.open span:nth-child(1) { top: 11px; width: 0%; left: 50%; }

#nav-icon.open span:nth-child(2) { transform: rotate(45deg); }

#nav-icon.open span:nth-child(3) { top: 8px; transform: rotate(-45deg); }

#nav-icon.open { height: 20px; margin-bottom: 5px;}

.hamburger-btn { transition: 500ms ease; background-color: #fff; width: 70px; height: 70px; position: fixed; top: 0; right: 0; z-index: 10; cursor: pointer; display: flex; align-items: center;}

.hamburger-btn .button-toggle { position: relative; width: 100%; margin: 0 auto; text-align: center; color: inherit;}

.hamburger-btn .button-toggle #menu_btn { font-family: 'Shippori Mincho', serif; font-weight: 600; color: #d66a39; font-size: 11px; text-align: center; line-height: 1; letter-spacing: .1em;}

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

  .menu_toggle_wrap { max-width: none; width: calc(100% - 100px); }

  .menu_toggle_wrap .menu-block:nth-child(1){ width: 48%; }

  .menu_toggle_wrap .menu-block:nth-child(2){ width: 48%; }

}

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

  .menu_toggle_wrap .menu-block ul{ column-count: 1; }

}

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

  .hamburger-btn { height: 60px; width: calc(100% / 3); top: unset; right: unset; bottom: 0; left: 0; display: none;}

  .menu_toggle { margin-top: 70px; overflow: scroll;}

  .menu_toggle_wrap { width: calc(100% - 60px); }

  .menu_toggle_wrap { margin-top: 60px; display: block;}

  .menu_toggle_wrap .menu-block ul{ column-count: 2; margin-top: 16px;}

  .menu_toggle_wrap .menu-block:nth-child(1){ width: 100%; }

  .menu_toggle_wrap .menu-block:nth-child(2){ width: 100%;}

  .menu_toggle_wrap .menu-block:not(:first-child) { margin-top: 50px; }

  .menu_toggle_wrap .menu-block .menu-title h1 { font-size: 23px; line-height: 26px; }

  .menu_toggle_wrap .menu-block ul li a{ font-size: 12px; line-height: 30px; }

  .menu_toggle_wrap .menu-block ul li a::before { content: ""; display: block; position: absolute; width: 6px; height: 6px; background-color: #d66a39; border-radius: 50%; left: -15px; top: 7px;}

  .navi-scroll-active.navi-btn, .navi-scroll-active.hamburger-btn { display: -webkit-box; display: -ms-flexbox; display: flex; animation: aniscroll-navi  .3s alternate;}

}

/* END Menu
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
General
********************************/
@media only screen and (max-width: 768px) { 
  body { font-size: 87.5%; }
  figure { text-align: center; }
  img { max-width: 100%; }
  .TabContainer .TabPager li { width: 33%; }
  .totop { bottom: 55px; right: 5px; }
  .totop .icon { width: 40px; height: 40px; }
  .fblock { display: block; }
  .fblock.true { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
  .under .topic_path { padding: 10px 0; }
  .txt_l, .txt_r { float: none; width: auto; }
  .image_l, .image_r { float: none; width: auto; margin: 0 0 20px; text-align: center; max-width: none; }
  .btn-group .btn.style01, .btn-group .btn.style02 { max-width: 250px; }
  .btn-group .btn.style01 a, .btn-group .btn.style02 a { padding: 7px 35px; font-size: 15px; }
  .btn-group .btn.style01 a.md, .btn-group .btn.style02 a.md { font-size: 13px; }
  a .tel_click:hover { opacity: 1; color: inherit; }
  .slick-prev { left: 0px; }
  .slick-next { right: 0px; }
  .slick-arrow { z-index: 1; top: 15vw; } }

/* END General
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Header & Footer
********************************/
@media only screen and (max-width: 768px) { .wrapper { min-width: inherit; }
  .inner, .inner_sm { max-width: none; padding-left: 20px; padding-right: 20px; }
  .header_top { width: 100%; height: 70px;}
  .header_top::before { display: none; }
  .header_top p { margin-bottom: 0; }
  .header_top .logo { max-width: 235px; width: auto; margin-left: 20px; position: static; left: 0; top: 0; transform: none; }
  .header_top .inner { height: auto; display: block; }
}

/* End Header & Footer
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Index
********************************/
/* @media only screen and (max-width: 768px) { 
  .idx_new_list li { padding: 10px 0; }
  .idx_new_list p { font-size: 12px;}
} */

/* END Index
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Under
********************************/
@media only screen and (max-width: 768px) { 
  .under #mainContent:not( .page-interview #mainContent) { padding-bottom: 100px;}
  .under .key { height: 50vh; }
  .under .key .key_text { padding: 0; justify-content: center;}
  .under .key h2 { padding: 12px 10px; font-size: 21px; }
  .under h2, .under h3, .under h4, .under h5, .under h6 { line-height: 1.75;}
  .under h3 { margin-bottom: 25px; font-size: 24px; }
  .under h3::after{ margin-top: 0; height: 2px; width: 50px;}
  .under h4 { margin-bottom: 20px; font-size: 20px; padding-bottom: 5px; }
  .under h5 { margin-bottom: 15px; font-size: 18px; }
  .under h6 { margin-top: 50px; margin-bottom: 10px; font-size: 16px; padding-left: 24px;}}

@media only screen and (max-width: 425px) { .under .key h2 { font-size: 22px; letter-spacing: 0px; }
  .under h3 { margin-bottom: 25px; font-size: 20px; letter-spacing: 0px; }
  .under h4 { margin-bottom: 20px; font-size: 18px; letter-spacing: 0px; }
  .under h5 { margin-bottom: 15px; font-size: 17px; letter-spacing: 0px; }
  .under h6 { margin-bottom: 15px; font-size: 15px; letter-spacing: 0px; } 
  .under h6::before{ border: 6px solid; width: 12px; height: 12px;}}

@media only screen and (max-width: 768px) { 
  .under section:first-child h3 { margin-top:50px; }
  .under section h3 { margin-top: 50px; }
  .under .secH4 { padding-top: 50px; }
  .under .secH4:first-of-type { padding-top: 40px; }
  .under .secH5 { padding-top: 50px; }
  .under .imgBox.rowImg { padding: 0px 0 15px; }
  .under .imgBox.rowImg .image_l, .under .imgBox.rowImg .image_r { float: none; width: auto; margin: 0 0 20px; text-align: center; max-width: none; }
  .under .imgBox.rowImg .image_l:nth-child(n), .under .imgBox.rowImg .image_r:nth-child(n) { max-width: none; }
  .under .imgBox.rowImg .txt_l, .under .imgBox.rowImg .txt_r { float: none; width: auto; }
  .under .imgBox.rowImg.large .image_l, .under .imgBox.rowImg.large .image_r { max-width: none; }
  .under .imgBox.rowImg.large .txt_l, .under .imgBox.rowImg.large .txt_r { width: auto; }
  .under .imgBox.colImg .list { justify-content: space-around; }
  .under .imgBox.colImg .item { margin-bottom: 15px; }
  .under .imgBox.colImg figure { margin-bottom: 5px; }
  .under .imgBox.colImg .text { font-size: 14px; }
  .under .imgBox.colImg .list{ display: block; }
  .under .imgBox.colImg3 .item { width: 100%; }
  .under .imgBox.colImg2 .item{ width: 100%; }
  .under .acf_block h3 { margin-bottom: 0; }
  .under .imgBox.colImg1 img { width: 100%; }
  .under .acf_block .text_h3 { margin: 25px 0 0; }
  .under .acf_block .text_h4 { margin: 20px 0 0; }
  .under .acf_block .text_h5 { margin: 15px 0 0; }
  .under table.rollTable { width: 1000px; }
  .under table.resTable { display: block; }
  .under table.resTable tbody, .under table.resTable tr, .under table.resTable th, .under table.resTable td { display: block; }
  .under table.resTable td:not(:last-child) { border-bottom: 0; }
  .under table.resTable.tbl_style01.colHead tr th { border-bottom: none; }
  .under table.resTable.tbl_style01.colHead tr:not(:first-child) th { border-top: none; }
  .under table.resTable.tbl_style02.colHead th { border-bottom: none; }
  .under table.resTable.tbl_style02.colHead tr:not(:last-child) td { border-bottom: none; }
  .under .tbl_note { display: block; }
  .under ul.list01 li { font-size: 14px; }
  .under ul.list01.mcol-2 li { width: 100%; padding-bottom: 9px; }}

@media only screen and (max-width: 375px) { .under .imgBox.colImg .text { font-size: 13px; }
  .under .imgBox.colImg2 .item, .under .imgBox.colImg3 .item { width: 100%; } }

@media only screen and (max-width: 768px) { .under .clinic_tbl01 th { width: auto; text-align: left; }
  .under .teeth_box .secH4 { width: 100%; } }

@media only screen and (max-width: 425px) { .under .access_box_img01 .block:nth-child(even) .big, .under .access_box_img02 .block:nth-child(even) .big { order: 0; }
  .under .access_box_img01 .block .big, .under .access_box_img01 .block .small, .under .access_box_img02 .block .big, .under .access_box_img02 .block .small { width: 100%; } }

/* END Under
********************************/

/*# sourceMappingURL=style_sp.css.map */

/* CUSTOM PAGE */
@media only screen and (max-width: 768px) {
  .cuspage-contents {
    padding: 60px 0 0;
  }
  .cuspage-point .block-ct {
    margin-top: 40px;
    padding: 0 !important;
  }
  .cuspage-point .block-ct__tit .num {
    top: -16px;
    font-size: 80px;
  }
  .cuspage-point .block-ct__tit .te {
    font-size: 15px;
    line-height: 26px;
    padding-bottom: 15px;
    padding-left: 20px;
  }
  .cuspage-point .block-ct__tit .te::before {
    width: 36px;
    height: 2px;
  }
  .cuspage-point .block-ct__sub p {
    font-size: 18px;
    line-height: 36px;
  }
  .cuspage-point .block-ct__te p {
    font-size: 12px;
  }
  .cuspage-point:not(:first-child) {
    margin-top: 60px;
  }
}