@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
}

html {
  font-size: 100%;
}

body {
  position: relative;
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 100%;
  line-height: 1.9;
}

a {
  text-decoration: none;
  cursor: pointer;
}

ul, li {
  list-style: none;
}

.wrapper {
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.sp-br {
  display: none !important;
}

@media screen and (max-width: 768px) {
  body {
    font-size: 14px;
  }
  .pc-br {
    display: none;
  }
  .sp-br {
    display: block !important;
  }
}

@media screen and (max-width: 960px) {
  .wrapper {
    padding: 0 6%;
  }
}

.header_container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: #FFFDF5;
  width: 100%;
  max-width: 100%;
}

.header_container__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 40px;
}

.header_container .logo {
  margin-top: 15px;
  -webkit-transition: .3s;
  transition: .3s;
}

.header_container .logo:hover {
  opacity: 0.6;
}

.header_container .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.header_container .right .tel {
  font-family: dnp-shuei-mgothic-std, sans-serif;
}

.header_container .right .tel span {
  display: block;
  font-size: 30px;
  font-weight: bold;
  line-height: 24px;
  color: #45230C;
}

.header_container .right .tel span i {
  font-size: 22px;
  padding-right: 5px;
  vertical-align: middle;
  padding-bottom: 3px;
}

.header_container .right .official .btn {
  display: block;
  padding: 9px 20px;
  margin-left: 23px;
  background-color: #FF5F5F;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  color: #FFF;
  border-radius: 11px;
  line-height: 22px;
  -webkit-transition: .3s;
  transition: .3s;
}

.header_container .right .official .btn:hover {
  background-color: #dd5656;
}

.header_container .sp-right {
  display: none;
}

@media screen and (max-width: 960px) {
  .header_container__inner {
    padding: 10px 20px;
  }
  .header_container__inner .logo img {
    width: 300px;
  }
  .header_container .right .tel span {
    font-size: 23px;
  }
  .header_container .right .tel i {
    font-size: 15px;
  }
  .header_container .right .official .btn {
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .header_container {
    -webkit-box-shadow: 1px 1px 5px #dedede;
            box-shadow: 1px 1px 5px #dedede;
  }
  .header_container .logo {
    margin-top: 0;
    height: 35px;
  }
  .header_container .logo a {
    display: inline-block;
    height: 35px;
  }
  .header_container .logo img {
    width: 200px;
  }
  .header_container__inner {
    padding: 4px 10px 16px;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .header_container .right {
    display: none;
  }
  .header_container .sp-right {
    position: absolute;
    top: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .header_container .sp-right .tel a {
    display: block;
    text-align: center;
    background: #21814d;
    width: 55px;
    height: 55px;
    font-size: 8px;
    line-height: 17px;
    color: #FFF;
  }
  .header_container .sp-right .tel a i {
    font-size: 20px;
    padding-top: 10px;
  }
  .header_container .official .btn {
    display: block;
    text-align: center;
    background: #FF5F5F;
    width: 55px;
    height: 55px;
    font-size: 8px;
    line-height: 17px;
    color: #FFF;
  }
  .header_container .official .btn i {
    font-size: 20px;
    padding-top: 10px;
  }
}

.footer-container {
  background: url(../images/noise-white.png) repeat left top/contain;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  padding: 97px 0 20px;
}

.footer-container__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 47px;
}

.footer-container__inner .map {
  width: 498px;
  height: 334px;
  margin-right: 20px;
}

.footer-container__inner .map iframe {
  width: 100%;
  height: 100%;
}

.footer-container__inner .text .footer-logo {
  width: 422px;
}

.footer-container__inner .text .footer-logo a {
  -webkit-transition: .3s;
  transition: .3s;
}

.footer-container__inner .text .footer-logo a:hover {
  opacity: 0.6;
}

.footer-container__inner .text .add {
  line-height: 1;
}

.footer-container__inner .text .tel {
  font-size: 26px;
  font-weight: bold;
  color: #264C8B;
}

.footer-container__inner .text .tel i {
  font-size: 21px;
  padding: 0 5px 6px 0;
}

.footer-container__inner .text .schedule {
  font-size: 14px;
  font-weight: bold;
}

.footer-container__inner .text .schedule table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}

.footer-container__inner .text .schedule table td {
  border-top: 1px solid #ccc;
  padding: 7.5px;
}

.footer-container__inner .text .schedule table th {
  padding: 7.5px;
}

.footer-container__inner .text .schedule .detail {
  line-height: 20px;
  margin: 10px 0 0;
}

.footer-container .footer-bnr {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.footer-container .official_bnr {
  padding-bottom: 60px;
  text-align: center;
}

.footer-container .official_bnr img {
  margin: 0 10px;
  border: 1px solid #264C8B;
  -webkit-transition: .3s;
  transition: .3s;
}

.footer-container .official_bnr img:hover {
  opacity: 0.7;
  border: 1px solid #264d8b7e;
}

.footer-container .mft_bnr img {
  border: 1px solid #264C8B;
  -webkit-transition: .3s;
  transition: .3s;
}

.footer-container .mft_bnr img:hover {
  opacity: 0.7;
  border: 1px solid #264d8b7e;
}

.footer-container .copyright {
  text-align: center;
  font-size: 12px;
  color: #ABABAB;
}

@media screen and (max-width: 768px) {
  .footer-container {
    background: url(../images/noise-white.png) repeat left top/contain;
    padding: 40px 0 20px;
  }
  .footer-container__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 30px;
  }
  .footer-container__inner .map {
    width: 100%;
    height: 250px;
    margin-bottom: 20px;
    margin-right: 0;
  }
  .footer-container__inner .map iframe {
    width: 100%;
    height: 100%;
  }
  .footer-container__inner .text .footer-logo {
    width: 100%;
  }
  .footer-container__inner .text .footer-logo img {
    width: 250px;
  }
  .footer-container__inner .text .schedule {
    width: 100%;
  }
  .footer-container .official_bnr {
    width: 100%;
    padding-bottom: 10px;
  }
  .footer-container .official_bnr img {
    width: 100%;
    max-width: 250px;
    margin: 0;
  }
  .footer-container .mft_bnr {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }
  .footer-container .mft_bnr img {
    width: 100%;
    max-width: 250px;
  }
  .footer-container .copyright {
    font-size: 10px;
    padding-bottom: 20px;
  }
}

.contact-container {
  background-image: url(../images/contact_bg.jpg);
  padding: 60px 0 50px;
  text-align: center;
  color: #45230C;
  font-family: dnp-shuei-mgothic-std, sans-serif;
}

.contact-container__title {
  font-size: 36px;
  position: relative;
  display: inline-block;
  padding: 0 45px;
}

.contact-container__title::after, .contact-container__title::before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 2px;
  background-color: #45230C;
}

.contact-container__title::after {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  right: -30px;
}

.contact-container__title::before {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  left: -30px;
}

.contact-container__sub-title {
  margin: 0 auto;
  display: inline-block;
  border-bottom: 10px solid #ffd29f;
  line-height: 0.3;
}

.contact-container__reserve-box {
  margin: 0 auto;
}

.contact-container__reserve-box--tel {
  margin-top: 10px;
}

.contact-container__reserve-box--tel a {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 52px;
  font-weight: bold;
  letter-spacing: 3px;
}

@media screen and (max-width: 768px) {
  .contact-container {
    padding: 40px 6% 30px;
  }
  .contact-container__title {
    display: inline;
    font-size: 1.25rem;
    padding: 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ffd29f));
    background: linear-gradient(transparent 50%, #ffd29f 50%);
  }
  .contact-container__title::after, .contact-container__title::before {
    display: none;
  }
  .contact-container__sub-title {
    padding-top: 10px;
    border-bottom: none;
    line-height: 1.8;
  }
  .contact-container__reserve-box {
    margin: 0 auto;
  }
  .contact-container__reserve-box--tel {
    margin-top: 10px;
  }
  .contact-container__reserve-box--tel a {
    font-size: 23px;
    letter-spacing: 3px;
  }
}

/*------------------------------
トップスライド
------------------------------*/
.top-slider {
  margin: 0 auto 80px;
  background-color: #FFFDF5;
  padding-top: 130px;
}

.top-slider li {
  position: relative;
  padding: 0 10px;
}

.top-slider li img {
  width: 100%;
  height: auto;
  border-radius: 45px;
}

.top-slider li p {
  font-size: 20px;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: bold;
  color: #FFF;
}

.top-slider li .left {
  position: absolute;
  bottom: 10%;
  left: 10%;
}

.top-slider li .right {
  position: absolute;
  top: 10%;
  left: 10%;
}

.top-slider .slick-slide {
  margin: 5px;
}

/*****スライド左右の画像を透明にする*****

.top-slider .slick-slide:not(.slick-center) {
  filter: opacity(70%);
  transition: 0.2s linear;
}

*************************************/
@media screen and (max-width: 768px) {
  .top-slider {
    padding-top: 55px;
  }
  .top-slider li {
    padding: 0;
    border-radius: 10px;
  }
  .top-slider li img {
    border-radius: 0px;
  }
  .top-slider li p {
    font-size: 14px;
    font-family: dnp-shuei-mgothic-std, sans-serif;
    font-weight: bold;
    color: #FFF;
  }
  .top-slider-arrows {
    display: none;
  }
}

.top-slider .slick-slide {
  margin: 0;
}

/*------------------------------
トップバナー
------------------------------*/
.bnr-container {
  background: #FFFDF5;
  padding: 65px 0 158px;
}

.bnr-container h2 {
  background: #FF5F5F;
  text-align: center;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 29.25px;
  color: #fff;
  margin: 30px 0;
}

.bnr-container__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.bnr-container__inner a {
  -webkit-transition: .3s;
  transition: .3s;
  width: 48%;
}

.bnr-container__inner a:hover {
  opacity: 0.7;
}

.bnr-container__inner a img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .bnr-container {
    padding: 45px 0 45px;
  }
  .bnr-container h2 {
    font-size: 18px;
  }
  .bnr-container__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
  }
  .bnr-container__inner a {
    width: 80%;
    margin: 0 auto;
  }
  .bnr-container__inner img {
    width: 100%;
  }
}

/*------------------------------
バナー下のキャッチコピー
------------------------------*/
.catch-box {
  position: absolute;
  left: 50%;
  width: 80%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #ffeea2;
  display: inline-block;
  padding: 30px;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 0 0px 5px #bebebe;
          box-shadow: 0 0px 5px #bebebe;
  max-width: 1100px;
}

.catch-box h2 {
  position: absolute;
  top: 7px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 20px;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  color: #45230C;
  white-space: nowrap;
}

.catch-box__inner {
  background: #fff;
  padding: 20px 50px;
}

.catch-box__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.catch-box__list li {
  width: 27%;
  margin-top: 15px;
  padding: 0 20px;
  text-align: left;
  white-space: nowrap;
}

.catch-box__list li::before {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  background-image: url(../../asset/images/check.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 5px;
}

@media screen and (max-width: 900px) {
  .catch-box__inner {
    background: #fff;
    padding: 10px 10px;
  }
  
  .catch-box__list li {
    width: 40%;
  }
}

@media screen and (max-width: 768px) {
  .catch-box {
    display: none;
  }
}

/*------------------------------
TOPメニュー（子どもの矯正・大人の矯正）
------------------------------*/
.top-menu-container {
  background: url(../images/noise-pink.png) repeat left top/120px auto;
  padding: 168px 0 100px;
}

.top-menu-container .home_heading h2 {
  text-align: center;
  font-size: 60px;
  color: #FF8F8F;
  margin-bottom: 70px;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  line-height: 1.6;
}

.top-menu-container .home_heading .sub {
  display: block;
  font-size: 26px;
  color: #45230C;
  margin-bottom: 14px;
  letter-spacing: 2px;
}

.top-menu-container__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 70px;
}

.top-menu-container__inner .text .merit-box {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  margin: 25px 0 13px;
}

.top-menu-container__inner .text .merit-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  padding: 0;
}

.top-menu-container__inner .text .merit-box ul li {
  background: #FFF;
  width: 120px;
  height: 120px;
  font-size: 17px;
  font-weight: bold;
  color: #FF6060;
  border-radius: 50%;
  position: relative;
}

.top-menu-container__inner .text .merit-box ul li:not(:last-of-type) {
  margin-right: 15px;
  margin-bottom: 15px;
}

.top-menu-container__inner .text .merit-box ul li p {
  width: 100px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}

.top-menu-container__inner .img {
  padding-left: 40px;
}

.top-menu-container__inner .img img {
  border-radius: 45px;
  -webkit-box-shadow: 0px 0px 5px #bebebe;
          box-shadow: 0px 0px 5px #bebebe;
}

.top-menu-container .btn {
  text-align: center;
  -webkit-transition: .3s;
  transition: .3s;
}

.top-menu-container .btn a {
  display: inline-block;
  padding: 28px 150px;
  background: #FF8F8F;
  color: #FFF;
  font-size: 28px;
  border-radius: 39vh;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: bold;
  -webkit-box-shadow: 0 3px 5px #bebebe;
          box-shadow: 0 3px 5px #bebebe;
  -webkit-transition: .3s;
  transition: .3s;
}

.top-menu-container .btn a:hover {
  background-color: #e66565;
}

@media screen and (max-width: 768px) {
  .top-menu-container {
    padding: 40px 0 40px;
  }
  .top-menu-container .home_heading h2 {
    font-size: 26px;
    margin-bottom: 15px;
  }
  .top-menu-container .home_heading .sub {
    font-size: 15px;
    margin-bottom: 10px;
    letter-spacing: 0;
  }
  .top-menu-container__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 15px;
  }
  .top-menu-container__inner .text .merit-box ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .top-menu-container__inner .text .merit-box ul li {
    width: 78px;
    height: 78px;
    font-size: 14px;
  }
  .top-menu-container__inner .text .merit-box ul li:not(:last-of-type) {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .top-menu-container__inner .img {
    width: 100%;
    padding-left: 0;
    margin-top: 20px;
  }
  .top-menu-container__inner .img img {
    width: 100%;
    border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .top-menu-container .btn a {
    display: inline-block;
    padding: 7px 50px;
    font-size: 20px;
  }
}

@media screen and (max-width: 500px) {
  .top-menu-container__inner .text .merit-box ul li {
    width: 19.5vw;
    height: 19.5vw;
    font-size: 0.75rem;
  }
  .top-menu-container__inner .text .merit-box ul li:not(:last-of-type) {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .top-menu-container__inner .text .merit-box ul li p {
    width: 19vw;
  }
}

/*------------------------------
TOPメニュー（大人の矯正にのみ適用）
------------------------------*/
.invisa-container {
  background: url(../images/noise-blue.png) repeat left top/120px auto;
  padding: 100px 0;
}

.invisa-container .home_heading h2 {
  position: relative;
  color: #009FE8;
  letter-spacing: 3px;
}

.invisa-container .home_heading h2::before {
  position: absolute;
  left: 50%;
  top: 42%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
  content: "インビザライン/シェアスマイル";
  font-size: 16px;
  color: #45230C;
}

.invisa-container .home_heading h2 .sub {
  padding-bottom: 34px;
}

.invisa-container .secondary_heading {
  text-align: center;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 25px;
  background: #2A7CD1;
  color: #FFF;
  margin-bottom: 30px;
}

.invisa-container__inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.invisa-container__inner .text {
  padding-left: 40px;
}

.invisa-container__inner .text .merit-box ul li {
  color: #0051A4;
}

.invisa-container__inner .img {
  padding-left: 0;
}

.invisa-container .btn a {
  background: #2A7CD1;
  -webkit-transition: .3s;
  transition: .3s;
}

.invisa-container .btn a:hover {
  background-color: #205996;
}

@media screen and (max-width: 768px) {
  .invisa-container {
    padding: 40px 0;
  }
  .invisa-container .home_heading h2 {
    font-size: 28px;
    margin-bottom: 15px;
    letter-spacing: 1px;
  }
  .invisa-container .home_heading h2::before {
    top: 64px;
    letter-spacing: 0;
    white-space: nowrap;
    font-size: 10px;
  }
  .invisa-container .home_heading h2 .sub {
    padding-bottom: 10px;
  }
  .invisa-container .secondary_heading h3 {
    font-size: 18px;
  }
  .invisa-container__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .invisa-container__inner .text {
    padding-left: 0;
  }
}

.slick-dots li.slick-active button:before {
  color: #38A552 !important;
}

.slick-dots li button:before {
  color: #F8C73B !important;
  opacity: 1 !important;
}

.slick-dots li {
  padding: 0 !important;
  margin: 0 10px;
}

/*------------------------------

------------------------------*/
.top-slider-arrows {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
  vertical-align: bottom;
}

.top-slider-prevarrow {
  position: absolute;
  left: 17.7%;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
  height: 60px;
}

.top-slider-nextarrow {
  position: absolute;
  right: 17.7%;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
  height: 60px;
}

.top-slider-container {
  position: relative;
}

/*------------------------------
小児矯正
------------------------------*/
.first-heading {
  width: 100%;
  text-align: center;
  height: 300px;
  margin-top: 114px;
}

.first-heading__ttl {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 2.5rem;
  font-weight: bold;
  color: #01b9ff;
  line-height: 300px;
}

.first-heading__ttl__red {
  color: #FF6060 !important;
}

@media screen and (max-width: 768px) {
  .first-heading {
    margin-top: 55px;
    height: 200px;
  }
  .first-heading__ttl {
    font-size: 1.37rem;
    line-height: 200px;
  }
}

.dots-ttl {
  display: inline-block;
  margin-bottom: 50px;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 2.25rem;
  color: #45230C;
  position: relative;
}

.dots-ttl::before, .dots-ttl::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 38px;
  height: 21px;
  background: url(../images/dotparts.png) no-repeat center center/contain;
}

.dots-ttl::before {
  left: -50px;
}

.dots-ttl::after {
  right: -50px;
}

@media screen and (max-width: 768px) {
  .dots-ttl {
    margin-bottom: 30px;
    font-size: 1.37rem;
  }
  .dots-ttl::before, .dots-ttl::after {
    width: 30px;
    height: 16px;
  }
}

.underline-heading {
  display: inline;
  margin-bottom: 15px;
  line-height: 1;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 1.5rem;
  font-weight: 800;
  color: #45230C;
  position: relative;
  z-index: 1;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #FFC7C7));
  background: linear-gradient(transparent 50%, #FFC7C7 50%);
}

.underline-heading--large {
  font-size: 1.625rem;
  margin-bottom: 27px;
}

.underline-heading--yellow {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #FFF19A));
  background: linear-gradient(transparent 50%, #FFF19A 50%);
  margin-bottom: 8px;
}

.underline-heading--small {
  font-size: 1.375rem;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .underline-heading {
    font-size: 1.125rem;
  }
  .underline-heading--large {
    font-size: 1.125rem;
    margin-bottom: 10px;
  }
  .underline-heading--yellow {
    margin-bottom: 3px;
  }
}

.kids-heading-bg {
  background: url(../images/kids_heading_bg.png) no-repeat center center/cover;
}

@media screen and (max-width: 768px) {
  .kids-heading-bg {
    background: url(../images/kids_heading_bg_sp.png) no-repeat center center/cover;
  }
}

.intro-heading {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  color: #45230C;
  letter-spacing: 0.1em;
  line-height: 1;
}

.intro-heading span {
  font-size: 1rem;
  display: block;
  margin-bottom: 10px;
}

.intro-heading h2 {
  display: inline-block;
  font-size: 2.25rem;
  margin-bottom: 60px;
  position: relative;
}

.intro-heading h2::before, .intro-heading h2::after {
  content: "";
  display: block;
  width: 44px;
  height: 2px;
  position: absolute;
  bottom: 17px;
  background-color: #45230C;
}

.intro-heading h2::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  left: -80px;
}

.intro-heading h2::after {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  right: -80px;
}

@media screen and (max-width: 768px) {
  .intro-heading span {
    font-size: 0.875rem;
    line-height: 1.6;
  }
  .intro-heading h2 {
    font-size: 1.2rem;
    margin-bottom: 30px;
  }
  .intro-heading h2::before, .intro-heading h2::after {
    width: 16px;
    height: 2px;
    bottom: 6px;
  }
  .intro-heading h2::before {
    left: -12px;
  }
  .intro-heading h2::after {
    right: -12px;
  }
}

.intro-contents {
  margin-bottom: 60px;
}

.intro-contents__heading {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 1.5rem;
  text-align: left;
  position: relative;
  padding: 0 0 10px 50px;
  padding-bottom: 10px;
  border-bottom: 1px dashed #707070;
  color: #FF6060;
  margin-bottom: 28px;
}

.intro-contents__heading::before {
  content: "";
  display: inline-block;
  width: 49px;
  height: 49px;
  background: url(../images/intro_point.png) no-repeat center center/contain;
  position: absolute;
  top: -5px;
  left: 0;
}

.intro-contents__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.intro-contents__inner p {
  text-align: left;
  max-width: 560px;
  margin-right: 38px;
}

.intro-contents__inner img {
  width: 440px;
  height: 100%;
  vertical-align: bottom;
  border-radius: 35px;
}

.intro-contents__inner--big-img {
  min-width: 480px;
}
.intro-contents__video {
  width: 100%;
  text-align: center;
  margin: 0 auto;
}
.intro-contents__video >iframe {
  width: 100%;
  max-width: 560px;
  height: auto;
  min-height: 315px;
}

@media screen and (max-width: 768px) {
  .intro-contents {
    margin-bottom: 40px;
  }
  .intro-contents__heading {
    padding: 0 0 6px 33px;
    margin-bottom: 20px;
    font-size: 1.125rem;
  }
  .intro-contents__heading::before {
    width: 30px;
    height: 30px;
    top: 2px;
  }
  .intro-contents__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .intro-contents__inner p {
    width: 100%;
    max-width: auto;
    margin: 0 0 20px 0;
  }
  .intro-contents__inner img {
    width: 100%;
    border-radius: 0;
  }
  .intro-contents__inner--big-img {
    min-width: auto;
    width: 100%;
  }
  .intro-contents__video >iframe {
    min-height: 280px;
  }
}

.intro-bottom__heading {
  text-align: center;
  width: 300px;
  height: 42px;
  line-height: 42px;
  font-size: 1.25rem;
  border-radius: 21px;
  color: #45230C;
  background-color: #FFE488;
  margin: 10px auto 20px;
}

.intro-bottom__txt {
  text-align: left;
}

@media screen and (max-width: 768px) {
  .intro-bottom__heading {
    width: 100%;
    height: 40px;
    line-height: 40px;
    font-size: 1rem;
    margin: 0 auto 20px;
    font-family: dnp-shuei-mgothic-std, sans-serif;
  }
  .intro-bottom__txt {
    text-align: left;
  }
}

.kids-intro {
  background: url(../images/noise-pink.png) repeat left top/120px auto;
  margin: 0 auto;
  padding: 100px 0 100px;
  text-align: center;
}

.kids-intro__txt {
  margin-bottom: 90px;
}

.kids-intro__txt--bold {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  color: #45230C;
  font-weight: bold;
  font-size: 1.5625rem;
  margin-bottom: 30px;
  background: #FF6060;
  color: #FFF;
}

@media screen and (max-width: 768px) {
  .kids-intro {
    padding: 40px 0 40px;
  }
  .kids-intro__txt {
    margin-bottom: 30px;
    text-align: left;
  }
  .kids-intro__txt--bold {
    font-size: 18px;
    margin-bottom: 30px;
  }
}

.kids-mouthpiece {
  background: url(../images/noise-orange.png) repeat left top/118px auto;
  margin: 0 auto;
  padding: 100px 0 95px;
  text-align: center;
}

.kids-mouthpiece__heading {
  line-height: 1;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: bold;
  font-size: 2.375rem;
  color: #FF6060;
  margin-bottom: 31px;
}

.kids-mouthpiece__heading span {
  display: block;
  font-weight: normal;
  font-size: 1.375rem;
  padding-top: 10px;
}

.kids-mouthpiece__heading span::before {
  content: '(';
}

.kids-mouthpiece__heading span::after {
  content: ')';
}

.kids-mouthpiece__ttl {
  margin-bottom: 40px;
  font-size: 1.5625rem;
}

.kids-mouthpiece__txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.kids-mouthpiece__txt p {
  max-width: 780px;
  text-align: left;
}

.kids-mouthpiece__txt img {
  vertical-align: bottom;
  margin-right: 60px;
}

@media screen and (max-width: 768px) {
  .kids-mouthpiece {
    padding: 40px 0 40px;
    position: relative;
  }
  .kids-mouthpiece__heading {
    font-size: 1.5rem;
    margin-bottom: 15px;
  }
  .kids-mouthpiece__heading span {
    font-size: 0.875rem;
  }
  .kids-mouthpiece__ttl {
    margin-bottom: 25px;
    line-height: 1.4;
  }
  .kids-mouthpiece__txt {
    display: block;
  }
  .kids-mouthpiece__txt p {
    max-width: 100%;
  }
  .kids-mouthpiece__txt img {
    display: none;
  }
  .kids-mouthpiece::after {
    content: "";
    display: block;
    width: 300px;
    height: 260px;
    background: url(../images/sp_kids_bgimg_1.png) no-repeat top left/cover;
    position: absolute;
    bottom: 0;
    left: -70px;
    z-index: 2;
  }
}

.kids-graph {
  background: url(../images/noise-white.png) repeat left top/contain;
  margin: 0 auto;
  padding: 100px 0;
  text-align: center;
}

.kids-graph__wrapper {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.kids-graph__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.kids-graph__inner p {
  max-width: 685px;
  margin: 0 52px 20px 0;
  text-align: left;
}

.kids-graph__inner img {
  vertical-align: bottom;
}

@media screen and (max-width: 768px) {
  .kids-graph {
    padding: 40px 0;
  }
  .kids-graph__wrapper {
    padding: 0 6%;
  }
  .kids-graph__inner {
    display: block;
  }
  .kids-graph__inner--left {
    margin-bottom: 20px;
  }
  .kids-graph__inner p {
    max-width: 100%;
    margin: 0 auto;
  }
  .kids-graph__inner img {
    max-width: 100%;
  }
}

.kids-point-bg {
  background: url(../images/noise-pink.png) repeat left top/120px auto;
}

.points {
  margin: 0 auto;
  padding: 100px 0;
  text-align: center;
}

.points__heading {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 2.25rem;
  color: #45230C;
  margin-bottom: 70px;
}

.points ul {
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

@media screen and (max-width: 960px) {
  .points {
    padding: 40px 0 25px;
  }
  .points ul {
    max-width: 500px;
  }
}

@media screen and (max-width: 768px) {
  .points__heading {
    font-size: 1.27rem;
    margin-bottom: 30px;
  }
  .points ul {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}

.first-row-bg li {
  background-color: #fff;
}

.first-row-bg li:nth-of-type(odd) {
  background-color: #FFE488;
}

.second-row-bg li {
  background-color: #FFE488;
}

.second-row-bg li:nth-of-type(odd) {
  background-color: #fff;
}

@media screen and (max-width: 960px) {
  .first-row-bg li:nth-of-type(odd) {
    background-color: #fff;
  }
  .first-row-bg__tb-bg {
    background-color: #FFE488 !important;
  }
  .second-row-bg li:nth-of-type(odd) {
    background-color: #FFE488;
  }
  .second-row-bg__tb-bg {
    background-color: #fff !important;
  }
}

.points-item {
  width: 210px;
  height: 210px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 10px 10px 35px;
  border-radius: 99999em;
  position: relative;
}

.points-item__text {
  width: 210px;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 1.375rem;
  font-weight: bold;
  color: #45230C;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.points-item__text--strong {
  color: #FF5F5F;
}

@media screen and (max-width: 960px) {
  .points-item {
    margin: 0 0 15px;
  }
}

@media screen and (max-width: 500px) {
  .points-item {
    width: 38vw;
    height: 38vw;
    margin: 0 0 15px;
  }
  .points-item__text {
    width: 38vw;
    font-size: 1em;
  }
}

.kids-plan {
  background: url(../images/noise-white.png) repeat left top/contain;
  margin: 0 auto;
  padding: 120px 0 150px;
  text-align: center;
}

.kids-plan__ttl {
  font-size: 2.375rem;
}

.kids-plan__ttl span {
  font-size: 2rem;
  display: block;
  line-height: 1;
}

.kids-plan__ttl--mb {
  margin-bottom: 65px;
}

@media screen and (max-width: 960px) {
  .kids-plan__ttl {
    font-size: 2rem;
  }
}

@media screen and (max-width: 768px) {
  .kids-plan {
    padding: 40px 0;
  }
  .kids-plan__ttl {
    font-size: 1.37rem;
    margin-bottom: 30px;
  }
  .kids-plan__ttl--small {
    font-size: 1.17rem;
  }
  .kids-plan__ttl span {
    font-size: 0.875rem;
  }
}

.plan-box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 10px solid #38A552;
  border-radius: 25px;
  background: repeating-linear-gradient(-45deg, #effff2 0, #effff2 5px, #fff 5px, #fff 10px);
  position: relative;
}

.kids-plan-group {
  margin-bottom: 100px;
}

.kids-plan-group ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.kids-plan-group__item {
  padding: 50px 25px 25px;
}

.kids-plan-group__item:not(:last-child) {
  margin-right: 60px;
}

.kids-plan-group__item p {
  margin-top: 30px;
  width: 210px;
}

.kids-plan-group__item:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  width: 19px;
  height: 19px;
  top: 50%;
  right: -45px;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  border-right: 2px solid #38A552;
  border-top: 2px solid #38A552;
}

@media screen and (max-width: 960px) {
  .kids-plan-group {
    margin-bottom: 100px;
  }
  .kids-plan-group ol {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .kids-plan-group__item {
    padding: 15px 15px 25px;
  }
  .kids-plan-group__item p {
    margin-top: 10px;
    width: 100%;
  }
  .kids-plan-group__item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 60px;
  }
  .kids-plan-group__item:not(:last-child)::after {
    width: 19px;
    height: 19px;
    right: 0;
    top: calc(100% + 25px);
    left: 50%;
    -webkit-transform: translateY(0) translateX(-50%) rotate(135deg);
            transform: translateY(0) translateX(-50%) rotate(135deg);
    border-right: 2px solid #38A552;
    border-top: 2px solid #38A552;
  }
}

@media screen and (max-width: 768px) {
  .kids-plan-group {
    margin-bottom: 40px;
  }
  .kids-plan-group__item {
    padding: 15px;
  }
}

.flow-container__item {
  padding: 18px 20px 12px;
  border: 10px solid #FFC400;
  background: repeating-linear-gradient(-45deg, #fdffdc 0, #fdffdc 5px, #fff 5px, #fff 10px);
}

.flow-container__item:last-of-type {
  border-color: #FF5F5F;
  background: repeating-linear-gradient(-45deg, #fff5f8 0, #fff5f8 5px, #fff 5px, #fff 10px);
}

.flow-container__item--flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 10px;
}

.flow-container__item--flex-box img {
  width: 200px;
  margin: -35px 25px 0 50px;
}

.flow-container__item--flex-box__bottom img {
  margin: 40px 25px 0 50px;
}

.flow-container__item--small {
  display: block;
  line-height: 1;
  color: #FF6060;
  font-size: 0.75rem;
  font-weight: bold;
  margin-bottom: 20px;
}

.flow-container__item:not(:last-child) {
  margin-bottom: 60px;
}

.flow-container__item p {
  color: #45230C;
  text-align: left;
}

.flow-container__item p:not(:last-of-type) {
  margin-bottom: 5px;
}

.flow-container__item--circle p::before {
  content: "●";
}

.flow-container__item:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  width: 19px;
  height: 19px;
  bottom: -45px;
  left: 50%;
  -webkit-transform: translateX(-50%) rotate(135deg);
          transform: translateX(-50%) rotate(135deg);
  border-right: 2px solid #FFC400;
  border-top: 2px solid #FFC400;
}

.flow-container__item--aftertxt {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: bold;
  font-size: 1.25rem;
  position: absolute;
  top: -60px;
  right: calc(50% - 20px);
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  color: #FFC400;
}

@media screen and (max-width: 768px) {
  .flow-container__item {
    padding: 15px;
  }
  .flow-container__item--flex-box {
    display: block;
  }
  .flow-container__item--flex-box img {
    max-width: 100%;
    margin: 30px 0 0;
  }
  .flow-container__item p {
    margin-top: 10px;
  }
}

@media screen and (max-width: 500px) {
  .flow-container__item--aftertxt {
    font-size: 1.125rem;
    white-space: nowrap;
    right: 50%;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
    top: -50px;
  }
  .flow-container__item--sp-mb {
    margin-bottom: 90px !important;
  }
}

.kids-treatment {
  background: url(../images/noise-orange.png) repeat left top/118px auto;
  margin: 0 auto;
  padding: 90px 0;
  text-align: center;
}

.kids-treatment__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.kids-treatment__inner--bottom {
  padding: 0 7px;
}

.kids-treatment__inner img {
  vertical-align: bottom;
}

@media screen and (max-width: 768px) {
  .kids-treatment {
    padding: 40px 0;
  }
  .kids-treatment__inner {
    display: block;
  }
  .kids-treatment__inner--bottom {
    padding: 0;
    max-width: 88%;
    height: auto;
  }
}

.mouthpiece-type {
  text-align: left;
  margin-bottom: 80px;
}

.mouthpiece-type:nth-of-type(odd) {
  margin-right: 30px;
}

.mouthpiece-type__heading {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 1.5625rem;
  color: #45230C;
  border-bottom: 1px dashed #707070;
  line-height: 1.1;
  padding-bottom: 10px;
  margin-bottom: 25px;
}

.mouthpiece-type__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mouthpiece-type__txt {
  max-width: 200px;
  margin-right: 27px;
}

.mouthpiece-type__txt span {
  display: inline-block;
  line-height: 1;
  font-size: 1.125rem;
  font-weight: bold;
  color: #FF7B7B;
  margin-bottom: 20px;
}

.mouthpiece-type__txt p {
  color: #45230C;
}

.mouthpiece-type__btn {
  display: block;
  background: #FFC400;
  margin-top: 10px;
  width: 190px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  color: #FFF;
  border-radius: 20px;
  -webkit-box-shadow: 0 3px 2px #00000040;
          box-shadow: 0 3px 2px #00000040;
  -webkit-transition: .3s;
  transition: .3s;
}

.mouthpiece-type__btn:hover {
  background-color: #dfa207;
}

@media screen and (max-width: 768px) {
  .mouthpiece-type {
    margin-bottom: 30px;
  }
  .mouthpiece-type:nth-child(odd) {
    margin-right: 0;
  }
  .mouthpiece-type__heading {
    font-size: 1.125rem;
    margin-bottom: 15px;
  }
  .mouthpiece-type__inner {
    display: block;
    text-align: center;
  }
  .mouthpiece-type__txt {
    text-align: left;
    max-width: 100%;
    margin-right: 0;
  }
  .mouthpiece-type__txt span {
    font-size: 1rem;
    margin-bottom: 10px;
  }
  .mouthpiece-type img {
    max-width: 100%;
    height: auto;
  }
  .mouthpiece-type__btn {
    width: 100%;
  }
}

/*------------------------------
大人矯正
------------------------------*/
.adults-heading-bg {
  background: url(../images/adults_heading_bg.png) no-repeat center center/cover;
}

@media screen and (max-width: 768px) {
  .adults-heading-bg {
    background: url(../images/adults_heading_bg_sp.png) no-repeat center center/cover;
  }
}

.dots-ttl-blue {
  display: inline-block;
  margin-bottom: 50px;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 2.25rem;
  color: #45230C;
  position: relative;
}

.dots-ttl-blue::before, .dots-ttl-blue::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 38px;
  height: 21px;
  background: url(../images/dotparts_blue.png) no-repeat center center/contain;
}

.dots-ttl-blue::before {
  left: -50px;
}

.dots-ttl-blue::after {
  right: -50px;
}

.adults-intro {
  background: #abe8ff;
  margin: 0 auto;
  padding: 100px 0 100px;
  text-align: center;
}

.adults-intro__txt {
  margin-bottom: 25px;
}

.adults-intro__txtlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.adults-intro__txtlist ul {
  margin-right: 100px;
}

.adults-intro__txtlist ul li {
  text-align: left;
}

.adults-intro__txtlist ul li::before {
  content: "●";
}

.adults-intro__txtlist img {
  vertical-align: bottom;
  border-radius: 35px;
}

.adults-intro__video {
  margin-bottom: 50px;
  text-align: center;
}
.adults-intro__video >video {
  width: 100%;
  max-width: 520px;
  height: auto;
}

@media screen and (max-width: 768px) {
  .adults-intro {
    padding: 40px 0;
  }
  .adults-intro__txt {
    margin-bottom: 30px;
    text-align: left;
  }
  .adults-intro__txtlist {
    display: block;
    margin-bottom: 40px;
  }
  .adults-intro__txtlist ul {
    margin-right: 0;
    margin-bottom: 30px;
  }
  .adults-intro__txtlist img {
    width: 100%;
    border-radius: 0;
  }
}

.adults-how {
  background: url(../images/noise-orange.png) repeat left top/118px auto;
  margin: 0 auto;
  padding: 100px 0;
  text-align: center;
}

.adults-how__heading {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 2.25rem;
  color: #01b9ff;
  margin-bottom: 70px;
}

.adults-how__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.adults-how__card p {
  text-align: left;
  max-width: 540px;
  margin-right: 35px;
}

@media screen and (max-width: 768px) {
  .adults-how {
    padding: 40px 0;
  }
  .adults-how__heading {
    font-size: 1.37rem;
    margin-bottom: 30px;
  }
  .adults-how__card {
    display: block;
  }
  .adults-how__card p {
    max-width: 100%;
    margin-bottom: 30px;
    margin-right: 0;
  }
  .adults-how__card img {
    max-width: 100%;
    height: auto;
  }
}

.adults-point-bg {
  background: #abe8ff;
}

.adults-plan {
  background: url(../images/noise-white.png) repeat left top/contain;
  margin: 0 auto;
  padding: 120px 0 150px;
  text-align: center;
}

.adults-plan__ttl {
  font-size: 2.375rem;
}

.adults-plan__ttl span {
  font-size: 2rem;
  display: block;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .adults-plan {
    padding: 40px 0;
  }
  .adults-plan__ttl {
    margin: 0 45px 40px;
    font-size: 1.125rem;
  }
  .adults-plan__ttl span {
    font-size: 0.875rem;
  }
}

/*------------------------------
小児矯正　大人矯正　共通
------------------------------*/
.kids-price-bg {
  background: url(../images/noise-pink.png) repeat left top/120px auto;
}

.adults-price-bg {
  background: #abe8ff;
}

.price-section {
  margin: 0 auto;
  padding: 90px 0 100px;
  text-align: center;
}

.price-section__inner {
  margin-bottom: 100px;
}

.price-section__inner--small {
  font-size: 0.875rem;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .price-section {
    padding: 40px 0;
  }
  .price-section__inner {
    margin-bottom: 40px;
  }
}

.price-table {
  border-spacing: 0;
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  color: #45230C;
  line-height: 1;
  margin-bottom: 20px;
}

.price-table:not(:last-of-type) {
  margin-bottom: 40px;
}

.price-table caption {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 1.25rem;
  font-weight: bold;
  color: #45230C;
  padding: 20px 0;
  background-color: #ffd597;
}

.price-table th, .price-table td {
  border: 1px solid #707070;
  font-weight: bold;
  font-size: 1.125rem;
}

.price-table th {
  padding: 30px 0;
  background-color: #FFF3CB;
}

.price-table td {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  background-color: #fff;
}

@media screen and (max-width: 768px) {
  .price-table:not(:last-of-type) {
    margin-bottom: 25px;
  }
  .price-table caption {
    font-size: 1rem;
    padding: 13px 0;
  }
  .price-table th, .price-table td {
    font-size: 0.875rem;
  }
  .price-table th {
    padding: 15px 0;
  }
}

.payment-section,
.deduction-section {
  border: 1px solid #D5D5D5;
  background-color: #fff;
  border-radius: 30px;
}

.payment-section__ttl,
.deduction-section__ttl {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  width: 100%;
  height: 60px;
  line-height: 60px;
  margin: 0 auto 24px;
  font-size: 1.5625rem;
  font-weight: lighter;
  border-radius: 20px;
  color: #fff;
  background-color: #FF7B7B;
}

@media screen and (max-width: 768px) {
  .payment-section,
  .deduction-section {
    border-radius: 20px;
  }
  .payment-section__ttl,
  .deduction-section__ttl {
    height: 40px;
    line-height: 40px;
    font-size: 1.125rem;
    border-radius: 10px;
  }
}

.payment-section {
  padding: 21px 21px 40px 21px;
  margin-bottom: 70px;
}

.payment-section__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.payment-section__inner__item {
  margin-bottom: 40px;
}

@media screen and (max-width: 960px) {
  .payment-section__inner div:not(:last-of-type) {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 768px) {
  .payment-section {
    padding: 21px 21px 21px 21px;
    margin-bottom: 30px;
  }
  .payment-section__inner div:not(:last-of-type) {
    margin-bottom: 30px;
  }
  .payment-section__inner img {
    max-width: 100%;
    height: auto;
  }
  .payment-section__inner__item {
    margin-bottom: 40px;
  }
}

.deduction-section {
  padding: 21px 21px 26px 21px;
}

.deduction-section__card {
  margin-bottom: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.deduction-section__card p {
  width: 560px;
  margin-right: 12px;
  text-align: left;
}

.deduction-section__card img {
  vertical-align: bottom;
}

.deduction-section__btn {
  display: block;
  width: 260px;
  height: 40px;
  margin: 0 auto;
  line-height: 40px;
  font-size: 1.25rem;
  color: #fff;
  text-align: center;
  border-radius: 20px;
  background-color: #FFC400;
  -webkit-box-shadow: 0 3px 2px rgba(0, 0, 0, 0.25);
          box-shadow: 0 3px 2px rgba(0, 0, 0, 0.25);
  -webkit-transition: .3s;
  transition: .3s;
}

.deduction-section__btn:hover {
  background-color: #dfa207;
}

@media screen and (max-width: 768px) {
  .deduction-section__card {
    display: block;
    margin-bottom: 25px;
  }
  .deduction-section__card p {
    width: 100%;
    margin-right: 0;
    margin-top: 15px;
  }
  .deduction-section__card img {
    max-width: 100%;
    height: auto;
  }
  .deduction-section__btn {
    width: 100%;
  }
  .deduction-section .underline-heading {
    line-height: 1.4;
  }
  .deduction-section .underline-heading::after {
    display: none;
  }
}
/*# sourceMappingURL=style.css.map */