
/*------------------------------------------------------------------//
//  Responsive System                                               //
//------------------------------------------------------------------*/

@media screen and (max-width: 1600px) and (min-width: 1400px) { /* PC 1600px+ ~ 1400px */
  #about .container {
    padding-right: 60px;
  }

  #about .container:before {
    right: 0;
  }

  #about .container:after {
    left: 0;
  }
}

@media screen and (max-width: 1399px) and (min-width: 1200px) { /* PC 1399px+ ~ 1200px */
  #footer .container .footer-contact .footer-contact-left .contact-lists .contact-list {
    width: 50%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists {
    flex-wrap: wrap;
  }

  .siteBanner .siteBannerContent #header .logo {
    width: 270px;
    margin-left: 20px;
  }
  #about .container {
    padding-right: 60px;
  }

  .siteBanner .siteBannerContent #header .headerRight {
    padding-right: 30px;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav a {
    margin-right: 10px;
    padding: 0px 7px;
  }
  #about .container:before {
    right: 0;
    bottom: -50px;
  }

  #about .container:after {
    left: 0;
    top: -50px;
  }
}

@media screen and (max-width: 1199px) and (min-width: 1024px) { /* PC 1200px+ ~ 1024px */
  .siteBanner .siteBannerContent #header .logo {
    width: 240px;
    padding: 0 20px;
    margin-left: 30px;
  }

  .siteBanner .siteBannerContent #header .headerRight {
    padding-right: 20px;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav a {
    font-size: 14px;
    padding: 0 5px;
    margin-right: 10px;
  }

  .siteBanner {
    height: 630px;
    margin-bottom: 50px;
  }

  .siteBanner .siteBannerContent .banner-content h1 {
    font-size: 49px;
  }

  .siteBanner .siteBannerContent .banner-content p {
    font-size: 20px;
  }

  .siteBanner .banner-img {
    width: auto;
    height: 630px;
  }
  
  #about .container:after {
    left: -30px;
    top: -30px;
  }

  #about .container:before {
    right: -30px;
    bottom: -30px;
  }
  
  #about .container .row .about-content {
    padding-left: 15px;
    padding-right: 15px;
  }

  #about .container .row .credentials .credentials-content .credentialsLists .credentialsList {
    width: 100%;
  }

  #about .container .row .credentials .credentials-figure {
    margin-top: 0;
    margin-bottom: 0;
    padding: 45px 0px;
  }

  h2 {
    font-size: 44px;
  }

  #about .container .row .credentials .credentials-content .credentials-content-title {
    font-size: 25px;
  }

  #about {
    margin-bottom: 80px;
  }
  
  .question-answer-img {
    max-width: 50%;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  #question-answer .container > .row .question-answer-content {
    flex: 0 0 50%;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    max-width: 50%;
  }
  
  #footer .container .footer-contact .footer-contact-left .contact-lists {
    flex-direction: column;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists .contact-list {
    margin-bottom: 15px;
    margin-right: 0;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) { /* PC 768px+ ~ 1024px */
  .siteBanner {
    height: 500px;
    margin-bottom: 50px;
  }

  .siteBanner .siteBannerContent .banner-content h1 {
    font-size: 27px;
  }

  .siteBanner .siteBannerContent {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border: none;
    padding: 20px;
  }

  .siteBanner .siteBannerContent .banner-content {
    width: 100%;
  }

  .siteBanner .banner-img {
    width: auto !important;
    height: 500px !important;
  }

  .siteBanner .siteBannerContent .banner-content > p {
    font-size: 12px;
  }

  .siteBanner .siteBannerContent #header .logo {
    width: 190px !important;
    margin-left: 0;
    padding: 0;
  }

  .siteBanner .siteBannerContent #header .logo:after {
    display: none;
  }

  .siteBanner .siteBannerContent #header {
    margin-top: 0;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:before {
    display: none;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:before {
    display: none;
  }
  
  .siteBanner .siteBannerContent .socialContent {
    bottom: 26px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav {
    background: rgb(205, 196, 165);
    z-index: 999999;
    position: fixed;
    left: 0;
    top: 0;
    padding-left: 0;
    width: 100vw;
    height: 100vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: all .3s;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav a {
    padding: 10px;
    font-size: 17px;
    font-weight: 700;
    margin-right: 0;
    margin-bottom: 5px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav.active {
    opacity: 1;
    pointer-events: auto;
  }
  
  .mobile-button {
    display: block
  }
  
  #about .container .row .about-content {
    padding-right: 15px;
    padding-left: 15px;
    margin-bottom: 40px;
    min-width: 100%;
  }

  h2 {
    font-size: 40px;
  }

  #about .container .row .about-content h2 {
    margin-bottom: 28px;
  }
  
  #about .container .row .credentials .credentials-figure {
  }

  #about .container .row .credentials {
    min-width: 100%;
  }

  #about .container .row .credentials .credentials-content .credentials-content-title {
    font-size: 25px;
  }

  #about {
    margin-bottom: 90px;
  }
  
  #mediator {background-size: 1500px;}

  .toggle-nav a {
    margin-right: 20px;
    font-size: 12px;
    text-align: center;
  }

  #question-answer .container > .row .question-answer-content {
    padding-left: 15px;
    margin-top: 20px;
    min-width: 100%;
  }

  .question-answer-lists {
    height: 410px !important;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists {
    flex-direction: column;
    margin-bottom: 10px;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists .contact-list {
    margin-bottom: 20px;
    width: 100%;
  }

  #footer .container .footer-contact .footer-contact-left {
    margin-bottom: 40px;
    padding-right: 15px;
  }

  #footer .container .footer-contact .footer-contact-right {
    padding-left: 15px;
  }

  #footer .container .footer-contact {
    margin-bottom: 80px;
  }

  #about .container:after {
    display: none;
  }

  #about .container:before {
    display: none;
  }
  
  #services .container .servicesLists .servicesList {
    min-width: 50%;
  }
  figure.question-answer-img {
    margin: 0 auto;
  }
  
  #header-stick .container .headerRight {
      display: none;
  }
}

@media screen and (max-width: 767px) and (min-width: 640px) { /* TABLET 640+ ~ 768 */
  .siteBanner {
    height: 500px;
    margin-bottom: 50px;
  }

  .siteBanner .siteBannerContent .banner-content h1 {
    font-size: 27px;
  }

  .siteBanner .siteBannerContent {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border: none;
    padding: 20px;
  }

  .siteBanner .siteBannerContent .banner-content {
    width: 100%;
  }

  .siteBanner .banner-img {
    width: auto !important;
    height: 500px !important;
  }

  .siteBanner .siteBannerContent .banner-content > p {
    font-size: 12px;
  }

  .siteBanner .siteBannerContent #header .logo {
    width: 190px !important;
    margin-left: 0;
    padding: 0;
  }

  .siteBanner .siteBannerContent #header .logo:after {
    display: none;
  }

  .siteBanner .siteBannerContent #header {
    margin-top: 0;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:before {
    display: none;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:before {
    display: none;
  }
  
  .siteBanner .siteBannerContent .socialContent {
    bottom: 26px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav {
    background: rgb(205, 196, 165);
    z-index: 999999;
    position: fixed;
    left: 0;
    top: 0;
    padding-left: 0;
    width: 100vw;
    height: 100vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: all .3s;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav a {
    padding: 10px;
    font-size: 17px;
    font-weight: 700;
    margin-right: 0;
    margin-bottom: 5px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav.active {
    opacity: 1;
    pointer-events: auto;
  }
  
  .mobile-button {
    display: block
  }
  
  #about .container .row .about-content {
    padding-right: 15px;
    padding-left: 15px;
    margin-bottom: 40px;
  }

  h2 {
    font-size: 40px;
  }

  #about .container .row .about-content h2 {
    margin-bottom: 28px;
  }
  
  #about .container .row .credentials .credentials-figure {
    width: 300px;
    margin: 0 auto;
    margin-bottom: 30px;
  }

  #about .container .row .credentials {
    flex-direction: column;
    padding: 15px;
  }

  #about .container .row .credentials .credentials-content {
    padding: 0;
  }

  #about .container .row .credentials .credentials-content .credentials-content-title {
    font-size: 25px;
  }

  #about .container .row .credentials .credentials-content .credentialsLists .credentialsList {
    width: 100%;
  }

  #about {
    margin-bottom: 90px;
  }
  
  #mediator {background-size: 1500px;}

  .toggle-nav a {
    margin-right: 20px;
    font-size: 12px;
    text-align: center;
  }

  #question-answer .container > .row .question-answer-content {
    padding-left: 15px;
    margin-top: 20px;
  }

  #question-answer .container > .row .question-answer-content .question-answer-lists .question-answer-list-title-arrow {
    width: 55px;
  }

  .question-answer-lists {
    height: 410px !important;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists {
    flex-direction: column;
    margin-bottom: 10px;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists .contact-list {
    margin-right: 0;
    margin-bottom: 20px;
  }

  #footer .container .footer-contact .footer-contact-left {
    margin-bottom: 40px;
    padding-right: 15px;
  }

  #footer .container .footer-contact .footer-contact-right {
    padding-left: 15px;
  }

  #footer .container .footer-contact {
    margin-bottom: 80px;
  }

  .footer-bottom {
    flex-direction: column;
    justify-content: center;
  }

  #footer .container .footer-bottom .copyright {
    text-align: center;
    margin-bottom: 20px;
  }
  #about .container:after {
    display: none;
  }

  #about .container:before {
    display: none;
  }
  
  #services .container .servicesLists .servicesList {
    width: 50%;
  }
  #header-stick .container .headerRight {
      display: none;
  }
}

@media screen and (max-width: 639px) and (min-width: 416px) { /* Tablet 415+ ~ 640 */
  .siteBanner {
    height: 500px;
    margin-bottom: 50px;
  }

  .siteBanner .siteBannerContent .banner-content h1 {
    font-size: 27px;
  }

  .siteBanner .siteBannerContent {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border: none;
    padding: 20px;
  }

  .siteBanner .siteBannerContent .banner-content {
    width: 100%;
  }

  .siteBanner .banner-img {
    width: auto !important;
    height: 500px !important;
  }

  .siteBanner .siteBannerContent .banner-content > p {
    font-size: 12px;
  }

  .siteBanner .siteBannerContent #header .logo {
    width: 190px !important;
    margin-left: 0;
    padding: 0;
  }

  .siteBanner .siteBannerContent #header .logo:after {
    display: none;
  }

  .siteBanner .siteBannerContent #header {
    margin-top: 0;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:before {
    display: none;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:before {
    display: none;
  }
  
  .siteBanner .siteBannerContent .socialContent {
    bottom: 26px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav {
    background: rgb(205, 196, 165);
    z-index: 999999;
    position: fixed;
    left: 0;
    top: 0;
    padding-left: 0;
    width: 100vw;
    height: 100vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: all .3s;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav a {
    padding: 10px;
    font-size: 17px;
    font-weight: 700;
    margin-right: 0;
    margin-bottom: 5px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav.active {
    opacity: 1;
    pointer-events: auto;
  }
  
  .mobile-button {
    display: block
  }
  
  #about .container .row .about-content {
    padding-right: 15px;
    padding-left: 15px;
    margin-bottom: 40px;
  }

  h2 {
    font-size: 40px;
  }

  #about .container .row .about-content h2 {
    margin-bottom: 28px;
  }
  
  #about .container .row .credentials .credentials-figure {
    margin-top: 0;
    margin-bottom: 20px;
    width: 100%;
  }

  #about .container .row .credentials {
    flex-direction: column;
    padding: 15px;
  }

  #about .container .row .credentials .credentials-content {
    padding: 0;
  }

  #about .container .row .credentials .credentials-content .credentials-content-title {
    font-size: 25px;
  }

  #about .container .row .credentials .credentials-content .credentialsLists .credentialsList {
    width: 100%;
  }

  #about {
    margin-bottom: 90px;
  }
  
  #mediator {background-size: 1500px;}

  .toggle-nav a {
    margin-right: 20px;
    font-size: 12px;
    text-align: center;
  }

  #question-answer .container > .row .question-answer-content {
    padding-left: 15px;
    margin-top: 20px;
  }

  #question-answer .container > .row .question-answer-content .question-answer-lists .question-answer-list-title-arrow {
    width: 55px;
  }

  .question-answer-lists {
    height: 410px !important;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists {
    flex-direction: column;
    margin-bottom: 10px;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists .contact-list {
    margin-bottom: 20px;
    width: 100%;
  }

  #footer .container .footer-contact .footer-contact-left {
    margin-bottom: 40px;
    padding-right: 15px;
  }

  #footer .container .footer-contact .footer-contact-right {
    padding-left: 15px;
  }

  #footer .container .footer-contact {
    margin-bottom: 80px;
  }

  .footer-bottom {
    flex-direction: column;
    justify-content: center;
  }

  #footer .container .footer-bottom .copyright {
    text-align: center;
    margin-bottom: 20px;
  }
  #about .container:after {
    display: none;
  }

  #about .container:before {
    display: none;
  }
  #header-stick .container .headerRight {
      display: none;
  }
}

@media screen and (max-width: 415px) and (min-width: 320px) { /* MOBILE 320+ ~ 415 */
  .siteBanner {
    height: 500px;
    margin-bottom: 50px;
  }

  .siteBanner .siteBannerContent .banner-content h1 {
    font-size: 27px;
  }

  .siteBanner .siteBannerContent {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border: none;
    padding: 20px;
  }

  .siteBanner .siteBannerContent .banner-content {
    width: 100%;
  }

  .siteBanner .banner-img {
    width: auto !important;
    height: 500px !important;
  }

  .siteBanner .siteBannerContent .banner-content > p {
    font-size: 12px;
  }

  .siteBanner .siteBannerContent #header .logo {
    width: 190px !important;
    margin-left: 0;
    padding: 0;
  }

  .siteBanner .siteBannerContent #header .logo:after {
    display: none;
  }

  .siteBanner .siteBannerContent #header {
    margin-top: 0;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:before {
    display: none;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:after {
    display: none;
  }

  .siteBanner .siteBannerContent .socialContent:before {
    display: none;
  }
  
  .siteBanner .siteBannerContent .socialContent {
    bottom: 26px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav {
    background: rgb(205, 196, 165);
    z-index: 999999;
    position: fixed;
    left: 0;
    top: 0;
    padding-left: 0;
    width: 100vw;
    height: 100vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: all .3s;
  }

  .siteBanner .siteBannerContent #header .headerRight #nav a {
    padding: 10px;
    font-size: 17px;
    font-weight: 700;
    margin-right: 0;
    margin-bottom: 5px;
  }
  
  .siteBanner .siteBannerContent #header .headerRight #nav.active {
    opacity: 1;
    pointer-events: auto;
  }
  
  .mobile-button {
    display: block
  }
  
  #about .container .row .about-content {
    padding-right: 15px;
    padding-left: 15px;
    margin-bottom: 40px;
  }

  h2 {
    font-size: 40px;
  }

  #about .container .row .about-content h2 {
    margin-bottom: 28px;
  }
  
  #about .container .row .credentials .credentials-figure {
    margin-top: 0;
    margin-bottom: 20px;
    width: 100%;
  }

  #about .container .row .credentials {
    flex-direction: column;
    padding: 15px;
  }

  #about .container .row .credentials .credentials-content {
    padding: 0;
  }

  #about .container .row .credentials .credentials-content .credentials-content-title {
    font-size: 25px;
  }

  #about .container .row .credentials .credentials-content .credentialsLists .credentialsList {
    width: 100%;
  }

  #about {
    margin-bottom: 90px;
  }
  
  #mediator {background-size: 1500px;}

  .toggle-nav a {
    margin-right: 20px;
    font-size: 12px;
    text-align: center;
  }

  #question-answer .container > .row .question-answer-content {
    padding-left: 15px;
    margin-top: 20px;
  }

  #question-answer .container > .row .question-answer-content .question-answer-lists .question-answer-list-title-arrow {
    width: 55px;
  }

  .question-answer-lists {
    height: 410px !important;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists {
    flex-direction: column;
    margin-bottom: 10px;
  }

  #footer .container .footer-contact .footer-contact-left .contact-lists .contact-list {
    margin-bottom: 20px;
    width: 100%;
  }

  #footer .container .footer-contact .footer-contact-left {
    margin-bottom: 40px;
    padding-right: 15px;
  }

  #footer .container .footer-contact .footer-contact-right {
    padding-left: 15px;
  }

  #footer .container .footer-contact {
    margin-bottom: 80px;
  }

  .footer-bottom {
    flex-direction: column;
    justify-content: center;
  }

  #footer .container .footer-bottom .copyright {
    text-align: center;
    margin-bottom: 20px;
  }
  #about .container:after {
    display: none;
  }

  #about .container:before {
    display: none;
  }

  #header-stick .container .headerRight {
      display: none;
  }
}