@media (max-width: 991px) {
  html, body {
    overflow-x: hidden; }

  .mobile-top-fix {
    margin-top: 30px;
    margin-bottom: 0px; }

  .mobile-bottom-fix {
    margin-bottom: 30px; }

  .mobile-bottom-fix-big {
    margin-bottom: 60px; }

  .mv {
    background-size: 180%;
    height: 520px; }

  .main-banner .caption {
    width: 100%; }

  .philosophy h2.heading-h2 {
    text-align: center; }

  .features-wrapper .feature-content p {
    text-align: center; }

  .section03 {
    background-size: 180%; }

  .footer-wrapper .footer-content .button-wrapper .main-button a {
    width: 100%; }

  .footer-wrapper .img-fluid {
    margin-bottom: 20px; } }

@media (max-width: 1200px) {
  .navbar-dark .navbar-toggler {
    color: #91c6cc;
    border-color: transparent; }

  .navbar-dark .navbar-toggler-icon {
    background-image: none; }

  .navbar {
    background-color: rgba(255, 255, 255, 0.5); }

  .navbar .navbar-nav .nav-link {
    padding: 15px 15px; }

  .navbar-toggler-icon .fa-solid {
    line-height: 1.5em; }

  .main-banner .caption h2 {
    font-size: 28px; }

  .features-wrapper .feature-content h4 {
    font-size: 26px; } }
@media (max-width: 767px) {
  .sp-only {
    display: none; }

  .navbar h1 {
    font-size: 20px; }
    .navbar h1 img {
      width: 60px; }

  .mv {
    height: 286px; }

  .main-banner .caption {
    top: 70%; }

  .main-banner .caption h2 span {
    font-size: 19px; }

  .main-banner .caption h2 {
    font-size: 16px; }

  .top-lead h3 {
    font-size: 20px; }

  .heading-h2 {
    font-size: 22px; }

  .paragraph {
    font-size: 18px; }

  .card-wrapper table tbody tr th, .card-wrapper table tbody tr td {
    display: block;
    width: 100%; }
  .card-wrapper table tbody tr td {
    text-align: center; }

  .section03 {
    background-size: 150%;
    background-position: 50% 55%;
    padding-bottom: 100px; }

  .teacher-wrapper ul li {
    font-size: 16px; }
  .teacher-wrapper p {
    font-size: 18px; }

  #contact-form {
    width: 100%; }
    #contact-form label, #contact-form input, #contact-form textarea {
      display: block;
      width: 100%;
      margin-bottom: 10px; }
    #contact-form input {
      display: inline-block;
      width: 90%; }
    #contact-form label {
      text-align: left; }

  #contact-form .control-group, #contact-form .form-group {
    display: block;
    height: auto;
    margin-bottom: 20px; }

  #contact-form .control-group .controls {
    width: 100%; }

  #privacy {
    width: 100%; }

  .insta-wrapper h3 .img-fluid {
    width: 80px;
    height: auto; }

  .footer-wrapper .section-heading h3 {
    font-size: 19px; } }
