@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&family=Shippori+Mincho:wght@400;500;600;700;800&display=swap");
@media screen and (max-width: 767px) {
  .pctab {
    display: none;
  }
}

.sptab {
  display: none;
}
@media screen and (max-width: 1023px) {
  .sptab {
    display: block;
  }
}

.spin {
  display: none;
}
@media screen and (max-width: 767px) {
  .spin {
    display: inline;
  }
}

.spbl {
  display: none;
}
@media screen and (max-width: 767px) {
  .spbl {
    display: block;
  }
}

body {
  overflow-x: hidden;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 22px;
  }
}

body.home .underline {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ddd), color-stop(75%, #ddd), color-stop(75%, transparent));
  background: linear-gradient(to bottom, transparent 60%, #ddd 60%, #ddd 75%, transparent 75%);
}
@media screen and (min-width: 768px) {
  body.home .firstView .siteInfo .inner .siteLink {
    width: 550px;
  }
}
body.home .firstView .siteInfo .inner .siteLink li a {
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  body.home .firstView .siteInfo .inner .siteLink li span {
    right: 0;
  }
}
body.home header #menuIcon .innerWrap span {
  background-color: #fff;
  height: 2px;
}
body.home header #menuIcon.active .innerWrap span {
  background-color: #586166;
}
body.home header.fixed #menuIcon .innerWrap span {
  background-color: #586166;
}
body.home .section.lead .textAnimation {
  text-align: center;
}
body.home .section.lead .inner .flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body.home .section.lead .inner .flex .titleCatch {
  text-align: center;
  margin-top: 20px;
  margin-bottom: 90px;
}
body.home .section.lead {
  position: relative;
}
body.home .section.lead .inner {
  position: relative;
}
@media screen and (min-width: 768px) {
  body.home .section.lead .inner {
    padding-bottom: 45%;
  }
}
@media screen and (max-width: 1023px) {
  body.home .section.lead .inner {
    padding-bottom: 0;
  }
}
body.home .section.lead .inner .flex {
  position: relative;
  z-index: 4;
}
@media screen and (max-width: 1023px) {
  body.home .section.lead .inner .flex .right {
    width: 100%;
  }
}
@media screen and (max-width: 1023px) {
  body.home .section.lead .inner .images {
    position: relative;
  }
}
body.home .section.lead .inner .images .img01 {
  position: absolute;
  width: 40%;
  left: -80px;
  top: 34em;
  z-index: 3;
}
@media screen and (max-width: 1023px) {
  body.home .section.lead .inner .images .img01 {
    width: 100%;
    margin-top: 75px;
  }
}
@media screen and (max-width: 767px) {
  body.home .section.lead .inner .images .img01 {
    left: -20px;
  }
}
body.home .section.lead .inner .images .img02 {
  position: absolute;
  width: 30%;
  right: -80px;
  top: 44em;
  z-index: 3;
}
@media screen and (max-width: 1023px) {
  body.home .section.lead .inner .images .img02 {
    width: 90%;
    left: auto;
    right: -80px;
    margin-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  body.home .section.lead .inner .images .img02 {
    right: -20px;
  }
}
body.home .section.lead .inner .images .img03 {
  position: absolute;
  width: 35%;
  left: 50%;
  top: 55em;
  z-index: 2;
}
@media screen and (max-width: 1023px) {
  body.home .section.lead .inner .images .img03 {
    width: 80%;
    left: -80px;
    margin-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  body.home .section.lead .inner .images .img03 {
    left: -20px;
  }
}
@media screen and (max-width: 1023px) {
  body.home .section.lead .inner .images .img01,
  body.home .section.lead .inner .images .img02,
  body.home .section.lead .inner .images .img03 {
    position: relative;
    top: 0;
  }
}
body.home .section.lead #textScroll_animation {
  position: absolute;
  bottom: -50px;
}
@media screen and (max-width: 1023px) {
  body.home .section.lead #textScroll_animation {
    bottom: -100px;
  }
}
@media screen and (max-width: 767px) {
  body.home .section.lead #textScroll_animation {
    bottom: -75px;
  }
}
body.home .section.lead #textScroll_animation .flex p {
  font-size: 200px;
}
@media screen and (max-width: 1280px) {
  body.home .section.lead #textScroll_animation .flex p {
    font-size: 150px;
  }
}
@media screen and (max-width: 767px) {
  body.home .section.lead #textScroll_animation .flex p {
    font-size: 75px;
  }
}
body.home #textScroll_animation .swiper-slide {
  opacity: 0.3;
}
body.home .ourService .inner .flex.ourServiceFlex01 {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body.home .ourService .inner .flex.ourServiceFlex01 .sectionTitle p {
  text-align: center;
}
body.home .ourService .inner .flex.ourServiceFlex01 .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .inner .flex.ourServiceFlex01 .right {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  body.home .ourService .flex.ourServiceFlex02 .jp_title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
body.home .ourService .flex.ourServiceFlex02 .left {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .flex.ourServiceFlex02 .left {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
body.home .ourService .flex.ourServiceFlex02 .left .left2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
body.home .ourService .flex.ourServiceFlex02 .left .left2 figure img {
  width: calc(100% - 200px);
}
@media screen and (max-width: 1023px) {
  body.home .ourService .flex.ourServiceFlex02 .left .left2 figure img {
    width: 100%;
  }
}
body.home .ourService .flex.ourServiceFlex02 .left .right2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding-right: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .flex.ourServiceFlex02 .left .right2 {
    margin-top: 20px;
  }
}
body.home .ourService .flex.ourServiceFlex02 .left .right2 strong {
  font-size: 120%;
}
body.home .ourService .flex.ourServiceFlex02 .right {
  width: 100%;
}
body.home .ourService .flex.ourServiceFlex02 .mouthpieceBox {
  padding: 0 100px;
}
@media screen and (max-width: 767px) {
  body.home .ourService .flex.ourServiceFlex02 .mouthpieceBox {
    padding: 0 0;
  }
}
body.home .ourService .flex.ourServiceFlex02 .mouthpieceBox p {
  font-size: 18px !important;
}
@media screen and (max-width: 767px) {
  body.home .ourService .flex.ourServiceFlex02 .mouthpieceBox p {
    font-size: 13px !important;
  }
}
body.home .ourService .ourServiceFlex03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .ourServiceFlex03 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
body.home .ourService .ourServiceFlex03 .left3 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding: 0 50px;
  padding-left: 0;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .ourServiceFlex03 .left3 {
    padding: 0;
    margin-top: 25px;
  }
}
body.home .ourService .ourServiceFlex03 .right3 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding: 0 50px;
  padding-right: 0;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .ourServiceFlex03 .right3 {
    padding: 0;
    margin-top: 50px;
  }
}
body.home .ourService .ourServiceFlex03 img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  body.home .ourService .mainMenu .flex {
    margin-top: 0;
  }
}
body.home .ourService .mainMenu .flex .right {
  margin-top: 80px;
}
body.home .ourService .mainMenu .flex .right h4 {
  font-size: max(22px, 1.7vw);
}
@media screen and (max-width: 1440px) {
  body.home .ourService .mainMenu .flex .right h4 {
    font-size: max(22px, 2vw);
  }
}
body.home .ourService .mainMenu .flex .right img {
  margin-top: 20px;
}
body.home .ourService .orthodontic {
  border-bottom: 1px solid #e2e2e2;
}
body.home .ourService .implant .jp_title,
body.home .ourService .orthodontic .jp_title {
  font-size: max(30px, 3vw);
}
@media screen and (max-width: 767px) {
  body.home .ourService .implant .jp_title,
  body.home .ourService .orthodontic .jp_title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
body.home .ourService .implant .textLink,
body.home .ourService .orthodontic .textLink {
  margin-right: 15px;
  margin-top: 50px;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .implant .textLink,
  body.home .ourService .orthodontic .textLink {
    margin-top: 20px;
  }
}
body.home .ourService .implant .jp_title_Wrap.right {
  width: 100%;
}
body.home .ourService .implant .left {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .implant .left {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
body.home .ourService .implant .left .left2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
body.home .ourService .implant .left .left2 figure img {
  width: calc(100% - 200px);
}
@media screen and (max-width: 1023px) {
  body.home .ourService .implant .left .left2 figure img {
    width: 100%;
  }
}
body.home .ourService .implant .left .right2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1023px) {
  body.home .ourService .implant .left .right2 {
    margin-top: 20px;
  }
}
body.home .ourService .implant .left .right2 p {
  padding-right: 10px;
}
body.home .ourService .implant .left .right2 p strong {
  display: block;
  margin-bottom: 20px;
  font-size: 120%;
}
body.home .ourService .mainMenu {
  margin-bottom: 0;
  padding-bottom: 100px;
}
@media screen and (max-width: 1440px) {
  body.home .ourService .mainMenu .flex .right h5 {
    font-size: max(18px, 1.9vw);
  }
}
@media screen and (max-width: 1023px) {
  body.home .ourService .mainMenu .flex .right h5 {
    font-size: max(20px, 1.9vw);
    margin-top: 10px;
  }
}
@media screen and (max-width: 1440px) {
  body.home .ourService .mainMenu .flex .right p {
    font-size: 18px;
  }
}
body.home .ourService .otherMenu {
  margin-top: 0;
}
body.home .layout_a h5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body.home .layout_a .textWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 768px) {
  body.home .layout_a .textWrap p {
    font-size: max(13px, 1vw) !important;
  }
}
body.home .layout_a .textLink .arrowWrap {
  margin-top: 10px;
}
body.home .layout_a .textLink .flex {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}
@media screen and (min-width: 768px) {
  body.home .layout_a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  body.home .layout_a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
@media screen and (min-width: 768px) {
  body.home .layout_a li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  body.home .layout_a li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media screen and (min-width: 768px) {
  body.home .layout_a li .textWrap h5 {
    font-size: max(26px, 1.6vw);
    margin-bottom: 0;
  }
  body.home .layout_a li:nth-child(odd) {
    padding-right: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  body.home .layout_a li:nth-child(odd) {
    padding-right: 0;
  }
}
@media screen and (min-width: 768px) {
  body.home .layout_a li:nth-child(even) {
    padding-left: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  body.home .layout_a li:nth-child(even) {
    padding-left: 0;
  }
}
@media screen and (min-width: 768px) {
  body.home .layout_a li + li {
    margin-top: 0;
  }
}
@media screen and (max-width: 1440px) {
  body.home .layout_a li .textWrap h5 {
    font-size: max(17px, 1.5vw);
  }
  body.home .layout_a li:nth-child(odd) {
    padding-right: 30px;
  }
  body.home .layout_a li:nth-child(even) {
    padding-left: 30px;
  }
}
@media screen and (max-width: 1023px) {
  body.home .layout_a li:nth-child(odd) {
    padding-right: 0;
  }
  body.home .layout_a li:nth-child(even) {
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  body.home .layout_a li .textWrap h5 {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  body.home .ourService.section .inner {
    padding-bottom: 40px;
  }
}
@media screen and (max-width: 767px) {
  body.home .ourService.section .inner li {
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  body.home .ourService.section .inner li .textWrap {
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  body.home .ourService.section .inner li .textWrap .textLink .flex {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
}
@media screen and (max-width: 767px) {
  body.home .ourService.section .inner li .img {
    position: absolute;
    right: 0;
    top: 20px;
    width: 100px;
    height: 100px;
  }
}
@media screen and (max-width: 767px) {
  body.home .ourService .otherMenu .layout_a li:first-child .textWrap {
    margin-top: 0;
  }
}
body.home .case.section .flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
body.home .case.section .flex .left {
  width: 100%;
  text-align: center;
}
body.home .case.section .flex .right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  body.home .case.section .flex .layout_b li .img {
    width: 150px;
    height: auto;
  }
}
@media screen and (max-width: 1280px) {
  body.home .case.section .flex .layout_b li .img {
    width: 100px;
  }
}
@media screen and (max-width: 1100px) {
  body.home .case.section .flex .layout_b li .img {
    width: 75px;
  }
}
@media screen and (max-width: 767px) {
  body.home .case.section .flex .layout_b li .img {
    width: 120px;
    height: 120px;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  body.home .case.section .flex .layout_b li .textWrap {
    width: calc(100% - 120px);
  }
}
@media screen and (min-width: 768px) {
  body.home .case.section .flex .layout_b li {
    border-bottom: none;
  }
}
body.home .case.section .flex ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 50px;
}
body.home .case.section .flex ul li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding: 20px;
}
@media screen and (max-width: 1023px) {
  body.home .case.section .flex ul li {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    padding: 0;
  }
}
body.home .case.section .flex ul li a {
  border: 1px solid #ccc;
  padding: 30px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
@media screen and (max-width: 1100px) {
  body.home .case.section .flex ul li a {
    padding: 15px;
  }
}
body.home .case.section .flex ul li a h5 {
  margin-top: 0;
}
body.home .case.section .flex ul li:nth-child(odd) {
  padding-left: 0;
}
body.home .case.section .flex ul li:nth-child(even) {
  padding-right: 0;
}
body.home .case.section a.flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row;
          flex-flow: row;
}
body.home .case.section .textLink .arrowWrap {
  margin-top: 10px;
}
body.home .case.section .textLink .flex {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}
@media screen and (max-width: 1280px) {
  body.home .case.section .layout_b li .textWrap .caption {
    padding-right: 10px;
  }
}
@media screen and (max-width: 1100px) {
  body.home .case.section .layout_b li .textWrap .caption {
    font-size: 13px;
  }
}
@media screen and (max-width: 1023px) {
  body.home .case.section .layout_b li {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  body.home .point.section .flex {
    padding-bottom: 0;
  }
}
@media screen and (max-width: 1023px) {
  body.home .point.section .layout_c {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
@media screen and (max-width: 767px) {
  body.home .point.section .layout_c {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
  }
}
@media screen and (max-width: 1023px) {
  body.home .point.section .layout_c li {
    width: 100%;
    margin-bottom: 75px;
  }
}
@media screen and (max-width: 767px) {
  body.home .point.section .layout_c li {
    width: 250px;
  }
}
@media screen and (min-width: 768px) {
  body.home .point.section .layout_c li .textWrap h5 {
    font-size: max(18px, 1.6vw);
  }
}
@media screen and (min-width: 768px) {
  body.home .point.section .layout_c li .textWrap p {
    font-size: 18px;
  }
}
body.home .shopInfo.section {
  background-color: #fafafa;
}
@media screen and (max-width: 1023px) {
  body.home .shopInfo.section .inner.flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    padding-bottom: 75px;
  }
}
@media screen and (max-width: 1023px) {
  body.home .shopInfo.section .inner.flex .info {
    width: 100%;
  }
}
@media screen and (max-width: 1023px) {
  body.home .shopInfo.section .inner.flex .info .sectionTitle {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  body.home .shopInfo.section .inner.flex .info .sectionTitle {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 1023px) {
  body.home .shopInfo.section .inner.flex .info .img {
    margin-top: 0;
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 1023px) {
  body.home .shopInfo.section .inner.flex .arrow {
    margin-top: 0;
  }
}
@media screen and (max-width: 1023px) {
  body.home .shopInfo.section .inner.flex .time {
    width: 100%;
    margin-top: 100px;
  }
}
@media screen and (min-width: 768px) {
  body.home .cansellpolicy {
    background-color: #fff;
  }
}
body.home .cansellpolicy .flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body.home .cansellpolicy .flex .sectionTitle h2,
body.home .cansellpolicy .flex .sectionTitle p {
  text-align: center;
}
body.home .cansellpolicy p.right {
  font-size: 18px;
}
@media screen and (max-width: 1023px) {
  body.home .cansellpolicy p.right {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  body.home .cansellpolicy p.right {
    font-size: 14px;
  }
}
body.home .cansellpolicy .textAnimation .char:nth-child(6) {
  margin-right: 20px;
}
@media screen and (max-width: 767px) {
  body.home .cansellpolicy .textAnimation .char:nth-child(6) {
    margin-right: 10px;
  }
}

section.doctorList ul.doctorListWrap li.doctor:nth-child(even) {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: reverse !important;
      -ms-flex-direction: row-reverse !important;
          flex-direction: row-reverse !important;
}

#doctor .doctorListWrap .doctor:nth-child(2n) {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  #doctor .doctorListWrap .doctor:nth-child(2n) {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-flow: column !important;
            flex-flow: column !important;
  }
}
#doctor .doctorListWrap .doctor:nth-child(2n) .right {
  width: 600px;
  padding-right: 70px;
}
@media screen and (max-width: 767px) {
  #doctor .doctorListWrap .doctor:nth-child(2n) .right {
    width: 100%;
    padding-right: 0;
  }
}

#about #aboutPage {
  /*
  section.subPageTitle {
      position: relative;

      .inner {
          padding: 0;
          position: relative;
          z-index: 1;

          .flex {
              margin-top: 0;
              flex-flow: column;

              .jp_title {
                  line-height: normal;
              }

              .caption {
                  margin-top: 50px;
                  width: 650px;

                  @media screen and (max-width: 767px) {
                      width: 100%;
                  }
              }
          }
      }

      .mv {
          height: 100%;
          max-width: 65%;
          position: absolute;
          top: 0;
          right: 0;
          z-index: 0;

          @media screen and (max-width: 1440px) {
              max-width: 55%;
              height: 100%;
              top: 100px;
          }
          @media screen and (max-width: 1280px) {
              max-width: 50%;
          }
          @media screen and (max-width: 767px) {
              position: relative;
              top: auto;
              right: auto;
              max-width: 100%;
              height: auto;
              width: 90%;
              margin-top: 50px;
          }

          img {
              object-fit: cover;
          }
      }
  }*/
}
#about #aboutPage section.subPageTitle .inner .flex .jp_title {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
#about #aboutPage section.subPageTitle .inner .flex .caption {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
@media screen and (max-width: 1440px) {
  #about #aboutPage section.lead {
    margin-top: 0;
  }
}
#about #aboutPage section.lead .img {
  width: 50%;
}
#about #aboutPage section.lead ul.leadList li:nth-child(odd) .img {
  padding-right: 100px;
}
@media screen and (max-width: 767px) {
  #about #aboutPage section.lead ul.leadList li:nth-child(odd) .img {
    padding: 0;
    width: 100%;
  }
}
#about #aboutPage section.lead ul.leadList li:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
}
@media screen and (max-width: 767px) {
  #about #aboutPage section.lead ul.leadList li:nth-child(even) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#about #aboutPage section.lead ul.leadList li:nth-child(even) .img {
  padding-left: 100px;
}
@media screen and (max-width: 767px) {
  #about #aboutPage section.lead ul.leadList li:nth-child(even) .img {
    padding: 0;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #about #aboutPage section.lead ul.leadList li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#about #aboutPage section.lead .flex h5 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 1440px) {
  #about #aboutPage section.lead .flex h5 {
    font-size: 30px;
  }
}
@media screen and (max-width: 1280px) {
  #about #aboutPage section.lead .flex h5 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  #about #aboutPage section.lead .flex h5 {
    font-size: 18px;
  }
}
@media screen and (max-width: 1280px) {
  #about #aboutPage section.lead .flex p {
    font-size: 16px;
  }
}

#clinic {
  /*
  section.subPageTitle {
      position: relative;

      .inner {
          padding: 0;
          position: relative;
          z-index: 1;

          h2{
              font-size: max(100px, 5.6vw);
          }

          .flex {
              margin-top: 0;
              flex-flow: column;

              .jp_title {
                  line-height: normal;
              }

              .caption {
                  margin-top: 50px;
                  width: 650px;

                  @media screen and (max-width: 767px) {
                      width: 100%;
                  }
              }
          }
      }

      .mv {
          height: 100%;
          max-width: 65%;
          position: absolute;
          top: 0;
          right: 0;
          z-index: 0;
          opacity:0.5;

          @media screen and (max-width: 1440px) {
              max-width: 55%;
              height: 100%;
              top: 100px;
          }
          @media screen and (max-width: 1280px) {
              max-width: 50%;
          }
          @media screen and (max-width: 767px) {
              position: relative;
              top: auto;
              right: auto;
              max-width: 100%;
              height: auto;
              width: 90%;
              margin-top: 50px;
          }

          img {
              object-fit: cover;
          }
      }
  }*/
}
#clinic section.clinic .left .sectionTitle,
#clinic section.facilities .left .sectionTitle {
  text-align: center;
}
#clinic section.clinic .left .sectionTitle h2,
#clinic section.facilities .left .sectionTitle h2 {
  font-size: max(60px, 4vw);
}
@media screen and (max-width: 767px) {
  #clinic section.clinic .left .sectionTitle h2,
  #clinic section.facilities .left .sectionTitle h2 {
    font-size: max(40px, 4vw);
  }
}
#clinic section.clinic .left .sectionTitle p,
#clinic section.facilities .left .sectionTitle p {
  font-size: 26px;
}
#clinic section.clinic ul.layout_d,
#clinic section.facilities ul.layout_d {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row;
          flex-flow: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 75px;
}
@media screen and (max-width: 767px) {
  #clinic section.clinic ul.layout_d,
  #clinic section.facilities ul.layout_d {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#clinic section.clinic ul.layout_d li,
#clinic section.facilities ul.layout_d li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
#clinic section.clinic ul.layout_d li .textWrap,
#clinic section.facilities ul.layout_d li .textWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#clinic section.clinic ul.layout_d li .textWrap h5,
#clinic section.facilities ul.layout_d li .textWrap h5 {
  text-align: center;
}
#clinic section.clinic ul.layout_d li .textWrap figure,
#clinic section.facilities ul.layout_d li .textWrap figure {
  width: 500px;
  aspect-ratio: 500/333;
  margin-bottom: 30px;
  overflow: hidden;
  contain: size;
}
@media screen and (max-width: 1350px) {
  #clinic section.clinic ul.layout_d li .textWrap figure,
  #clinic section.facilities ul.layout_d li .textWrap figure {
    width: 100%;
  }
}
#clinic section.clinic ul.layout_d li .textWrap figure img,
#clinic section.facilities ul.layout_d li .textWrap figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
#clinic section.clinic ul.layout_d li:nth-child(odd),
#clinic section.facilities ul.layout_d li:nth-child(odd) {
  padding-right: 100px;
}
@media screen and (max-width: 1280px) {
  #clinic section.clinic ul.layout_d li:nth-child(odd),
  #clinic section.facilities ul.layout_d li:nth-child(odd) {
    padding-right: 25px;
  }
}
@media screen and (max-width: 767px) {
  #clinic section.clinic ul.layout_d li:nth-child(odd),
  #clinic section.facilities ul.layout_d li:nth-child(odd) {
    padding-right: 0;
  }
}
#clinic section.clinic ul.layout_d li:nth-child(even),
#clinic section.facilities ul.layout_d li:nth-child(even) {
  padding-left: 100px;
}
@media screen and (max-width: 1280px) {
  #clinic section.clinic ul.layout_d li:nth-child(even),
  #clinic section.facilities ul.layout_d li:nth-child(even) {
    padding-left: 25px;
  }
}
@media screen and (max-width: 767px) {
  #clinic section.clinic ul.layout_d li:nth-child(even),
  #clinic section.facilities ul.layout_d li:nth-child(even) {
    padding-left: 0;
  }
}
#clinic section.facilities ul.layout_d li .textWrap figure {
  background: #eee;
}
#clinic section.facilities ul.layout_d li .textWrap figure img {
  -o-object-fit: contain;
     object-fit: contain;
}

.single-casestudies .imgWrapSection .inner .imgWrap {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.single-casestudies .imgWrapSection .inner .imgWrap img {
  width: 400px;
  margin: 0 20px;
}
.single-casestudies section.contents .right {
  width: 100%;
}
.single-casestudies section.contents .left {
  width: 100%;
}

#mouthpieceinvisalign section.subPageTitle {
  position: relative;
}
#mouthpieceinvisalign section.subPageTitle .inner {
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.subPageTitle .inner .textAnimation {
    font-size: 40px;
  }
}
#mouthpieceinvisalign section.subPageTitle .inner .flex {
  margin-top: 50px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#mouthpieceinvisalign section.subPageTitle .inner {
  padding: 0;
  position: relative;
  z-index: 1;
}
#mouthpieceinvisalign section.subPageTitle .inner h2 {
  font-size: max(100px, 8vw);
  line-height: 1.2;
}
#mouthpieceinvisalign section.subPageTitle .inner .flex {
  margin-top: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#mouthpieceinvisalign section.subPageTitle .inner .flex .jp_title {
  line-height: normal;
}
#mouthpieceinvisalign section.subPageTitle .inner .flex .caption {
  margin-top: 50px;
  width: 800px;
}
@media screen and (max-width: 1000px) {
  #mouthpieceinvisalign section.subPageTitle .inner .flex .caption {
    width: 100%;
  }
}
#mouthpieceinvisalign section.subPageTitle .mv {
  height: 100%;
  max-width: 65%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  opacity: 0.5;
}
@media screen and (max-width: 1440px) {
  #mouthpieceinvisalign section.subPageTitle .mv {
    max-width: 55%;
    height: 100%;
    top: 100px;
  }
}
@media screen and (max-width: 1280px) {
  #mouthpieceinvisalign section.subPageTitle .mv {
    max-width: 50%;
  }
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.subPageTitle .mv {
    position: relative;
    top: auto;
    right: auto;
    max-width: 100%;
    height: auto;
    width: 90%;
    margin-top: 50px;
  }
}
#mouthpieceinvisalign section.subPageTitle .mv img {
  -o-object-fit: cover;
     object-fit: cover;
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .jp_title_Wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .jp_title_Wrap .jp_title {
  text-align: center;
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .jp_title_Wrap p {
  margin-top: 50px;
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap div {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap div h5 {
  font-size: 120%;
  font-weight: 700;
  text-align: center;
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap div:nth-child(1) {
  padding-right: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap div:nth-child(1) {
    padding-right: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap div:nth-child(2) {
  padding-left: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap02 .inner.flex .textWrap div:nth-child(2) {
    padding-left: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap03 h3 {
  text-align: center;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap03 ul.threeColum {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap03 ul.threeColum li {
    width: 100%;
  }
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li figure {
  position: relative;
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li figure:before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 100px;
  border-bottom: 1px solid #000;
  line-height: 100px;
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li:nth-child(1) figure:before {
  content: "01";
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li:nth-child(2) figure:before {
  content: "02";
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li:nth-child(3) figure:before {
  content: "03";
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li:nth-child(4) figure:before {
  content: "04";
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li:nth-child(5) figure:before {
  content: "05";
}
#mouthpieceinvisalign section.serviceWrap03 ul.threeColum li:nth-child(6) figure:before {
  content: "06";
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap04 .threeColum {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#mouthpieceinvisalign section.serviceWrap04 .threeColum li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  width: 50%;
  margin: 0;
  margin-bottom: 100px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap04 .threeColum li {
    width: 100%;
  }
}
#mouthpieceinvisalign section.serviceWrap04 .threeColum li h4 {
  font-size: 130%;
}
#mouthpieceinvisalign section.serviceWrap04 .threeColum li:nth-child(odd) {
  padding-right: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap04 .threeColum li:nth-child(odd) {
    padding-right: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap04 .threeColum li:nth-child(even) {
  padding-left: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap04 .threeColum li:nth-child(even) {
    padding-left: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .left {
  width: 100%;
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .left .jp_title {
  text-align: center;
  font-size: 42px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .left .jp_title {
    font-size: 20px;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right {
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right {
    width: 100%;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images figure {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images figure img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images figure img {
    margin: 0;
    margin-bottom: 20px;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images figure:nth-child(1) {
  padding-right: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images figure:nth-child(1) {
    padding-right: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images figure:nth-child(2) {
  padding-left: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .images figure:nth-child(2) {
    padding-left: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right h5 {
  margin-top: 100px;
  text-align: center;
  font-size: 36px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right h5 {
    font-size: 20px;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .textBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .textBox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .textBox li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .textBox li:nth-child(1) {
  padding-right: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .textBox li:nth-child(1) {
    padding-right: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .textBox li:nth-child(2) {
  padding-left: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .textBox li:nth-child(2) {
    padding-left: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .grayBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 50px;
}
#mouthpieceinvisalign section.serviceWrap05 .inner.flex .right .grayBox p.gray {
  background: #eee;
  padding: 10px;
  font-size: 13px;
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  padding-bottom: 50px;
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex .left {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex .left .jp_title {
  text-align: center;
  font-size: 42px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap06 .inner.flex .left .jp_title {
    font-size: 20px;
  }
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex .right {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 100px !important;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap06 .inner.flex .right {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  width: 50%;
  margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div {
    width: 100%;
  }
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div h5 {
  text-align: center;
  font-size: 28px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div h5 {
    font-size: 20px;
  }
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div:nth-child(1) {
  padding-right: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div:nth-child(1) {
    padding-right: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div:nth-child(2) {
  padding-left: 50px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap06 .inner.flex .right div:nth-child(2) {
    padding-left: 0;
  }
}
#mouthpieceinvisalign section.serviceWrap07 .inner.flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#mouthpieceinvisalign section.serviceWrap07 .inner.flex .left {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}
#mouthpieceinvisalign section.serviceWrap07 .inner.flex .right {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 50px !important;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap07 .inner.flex .right {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#mouthpieceinvisalign section.serviceWrap07 .inner.flex .right figure {
  aspect-ratio: 3/4;
  width: 400px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap07 .inner.flex .right figure {
    width: 100%;
  }
}
#mouthpieceinvisalign section.serviceWrap07 .inner.flex .right figure img {
  -o-object-fit: cover;
     object-fit: cover;
  margin: 0;
}
#mouthpieceinvisalign section.serviceWrap07 .inner.flex .right p {
  width: 600px;
  background: #eee;
  padding: 20px 20px;
  margin-left: 30px;
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap07 .inner.flex .right p {
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap08 .threeColumNumber {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap08 .threeColumNumber li {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap09 ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap09 ul li {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #mouthpieceinvisalign section.serviceWrap10 div {
    padding-bottom: 0;
  }
}
#mouthpieceinvisalign section.reservation {
  margin-top: 0;
}

#orthodontictreatment section.subPageTitle {
  position: relative;
}
#orthodontictreatment section.subPageTitle .inner {
  padding: 0;
  padding-bottom: 100px;
  position: relative;
  z-index: 1;
}
#orthodontictreatment section.subPageTitle .inner .textAnimation {
  font-size: 120px;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.subPageTitle .inner .textAnimation {
    font-size: 90px;
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.subPageTitle .inner .textAnimation {
    font-size: 50px;
  }
}
#orthodontictreatment section.subPageTitle .inner .flex {
  margin-top: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#orthodontictreatment section.subPageTitle .inner .flex .jp_title {
  line-height: normal;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.subPageTitle .inner .flex .jp_title {
    text-align: left;
  }
}
#orthodontictreatment section.subPageTitle .inner .flex .caption {
  margin-top: 50px;
  width: 650px;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.subPageTitle .inner .flex .caption {
    width: 100%;
  }
}
#orthodontictreatment section.subPageTitle .mv {
  height: 100%;
  max-width: 65%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  opacity: 0.5;
}
@media screen and (max-width: 1440px) {
  #orthodontictreatment section.subPageTitle .mv {
    max-width: 55%;
    height: 100%;
    top: 100px;
  }
}
@media screen and (max-width: 1280px) {
  #orthodontictreatment section.subPageTitle .mv {
    max-width: 50%;
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.subPageTitle .mv {
    position: relative;
    top: auto;
    right: auto;
    max-width: 100%;
    height: auto;
    width: 90%;
    margin-top: 0;
  }
}
#orthodontictreatment section.subPageTitle .mv img {
  -o-object-fit: cover;
     object-fit: cover;
}
#orthodontictreatment .jp_title {
  text-align: center;
  font-size: 32px;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment .jp_title {
    font-size: 18px;
  }
}
#orthodontictreatment section.serviceWrap01 .inner {
  padding-bottom: 0;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap01 .inner ul.threeColumNumber li {
    width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    margin: 0;
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap01 .inner ul.threeColumNumber li h4 {
    font-size: 12px !important;
  }
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap01 .inner ul.threeColumNumber li:nth-child(odd) {
    padding: 0;
    padding-right: 10px;
  }
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap01 .inner ul.threeColumNumber li:nth-child(even) {
    padding: 0;
    padding-left: 10px;
  }
}
#orthodontictreatment section.serviceWrap02 .flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#orthodontictreatment section.serviceWrap02 .flex .jp_title_Wrap {
  width: 100%;
}
#orthodontictreatment section.serviceWrap02 .flex .right {
  width: 100%;
  margin-top: 50px !important;
}
#orthodontictreatment section.serviceWrap02 .flex .right .flex2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap02 .flex .right .flex2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#orthodontictreatment section.serviceWrap02 .flex .right .flex2 .left2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
#orthodontictreatment section.serviceWrap02 .flex .right .flex2 .left2 h5 {
  font-size: 26px;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex .right .flex2 .left2 h5 {
    font-size: 16px;
  }
}
#orthodontictreatment section.serviceWrap02 .flex .right .flex2 .right2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding-left: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap02 .flex .right .flex2 .right2 {
    padding-left: 0;
    margin-top: 20px;
  }
}
#orthodontictreatment section.serviceWrap02 .flex ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 100px;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap02 .flex ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    margin-top: 75px;
  }
}
#orthodontictreatment section.serviceWrap02 .flex ul li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#orthodontictreatment section.serviceWrap02 .flex ul li h4 {
  font-size: 26px;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li h4 {
    font-size: 16px;
  }
}
#orthodontictreatment section.serviceWrap02 .flex ul li div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li div {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#orthodontictreatment section.serviceWrap02 .flex ul li div img {
  width: 300px;
  margin-top: 0;
}
@media screen and (max-width: 1440px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li div img {
    width: 200px;
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li div img {
    width: 100%;
  }
}
#orthodontictreatment section.serviceWrap02 .flex ul li div p {
  width: calc(100% - 300px);
  padding-left: 25px;
}
@media screen and (max-width: 1440px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li div p {
    width: calc(100% - 200px);
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li div p {
    width: 100%;
    padding-left: 0;
  }
}
#orthodontictreatment section.serviceWrap02 .flex ul li:nth-child(1) div {
  padding-right: 50px;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li:nth-child(1) div {
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li:nth-child(1) div {
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex ul li:nth-child(2) {
    margin-top: 75px;
  }
}
#orthodontictreatment section.serviceWrap02 .flex p {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap02 .flex p {
    font-size: 13px;
  }
}
#orthodontictreatment section.serviceWrap03 .inner {
  width: 1200px;
  margin: 0 auto;
  padding-bottom: 50px;
}
@media screen and (max-width: 1280px) {
  #orthodontictreatment section.serviceWrap03 .inner {
    width: calc(100vw - 160px);
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap03 .inner {
    width: calc(100vw - 40px);
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap03 .inner .threeColum {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#orthodontictreatment section.serviceWrap03 .inner .threeColum img {
  opacity: 0.8;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap03 .inner .threeColum li {
    width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    margin: 0;
    padding: 0 20px;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap03 .inner .threeColum li {
    width: 100%;
    margin-bottom: 30px;
  }
}
#orthodontictreatment section.serviceWrap04 .flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}
#orthodontictreatment section.serviceWrap04 .flex .flex2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 30px !important;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap04 .flex .flex2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
#orthodontictreatment section.serviceWrap04 .flex .flex2 .left2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  width: 50%;
  padding-right: 50px;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap04 .flex .flex2 .left2 {
    width: 100%;
    padding-right: 0;
  }
}
#orthodontictreatment section.serviceWrap04 .flex .flex2 .left2 img {
  margin: 0;
}
#orthodontictreatment section.serviceWrap04 .flex .flex2 .right2 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  width: 50%;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap04 .flex .flex2 .right2 {
    width: 100%;
    margin: 30px 0;
  }
}
#orthodontictreatment section.serviceWrap04 .flex .flex2 .right2 .button {
  margin: 0 0 0 auto !important;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap04 .flex .flex2 .right2 .button {
    margin-top: 30px !important;
  }
}
#orthodontictreatment section.serviceWrap05 .layout_a .melit {
  background: #eee;
  padding: 20px 20px;
  font-size: 90%;
}
#orthodontictreatment section.serviceWrap06 ul.layout_a li {
  position: relative;
}
#orthodontictreatment section.serviceWrap06 ul.layout_a li .arrow {
  position: absolute;
  left: calc(50% + 75px);
  bottom: -80px;
  font-size: 50px;
  line-height: 1;
  -webkit-transform: translateY(calc(50% + 3px));
          transform: translateY(calc(50% + 3px));
  z-index: 1;
}
@media screen and (max-width: 767px) {
  #orthodontictreatment section.serviceWrap06 ul.layout_a li .arrow {
    font-size: 40px;
    bottom: -64px;
    left: 50%;
    -webkit-transform: translate(-50%, calc(50% + 3px));
            transform: translate(-50%, calc(50% + 3px));
  }
}
#orthodontictreatment section.serviceWrap06 ul.layout_a li .en_title {
  font-size: 36px !important;
}
@media screen and (max-width: 1023px) {
  #orthodontictreatment section.serviceWrap06 ul.layout_a li .en_title {
    width: auto;
  }
}

body#case ul.caseList a {
  width: 100%;
}/*# sourceMappingURL=extra.css.map */