@charset "UTF-8";
/**
 * Responsive CSS for BEA International School
 * Mobile and Tablet responsive styles
 */

/* =========================================================================
   Tablet: 768px - 1099px
   ========================================================================= */
@media (max-width: 1099px) {
  body {
    min-width: auto;
    width: 100%;
    font-size: 12px;
  }

  #pc-header div.cf {
    width: 100%;
    padding: 20px 10px;
    box-sizing: border-box;
  }

  #pc-header div.cf div {
    height: auto;
    padding: 0 5px;
  }

  #pc-header div.cf div:nth-child(1) {
    width: 40%;
    float: left;
  }

  #pc-header div.cf div:nth-child(1) img {
    max-width: 100%;
    height: auto;
  }

  #pc-header div.cf div:nth-child(2) {
    width: 30%;
    float: left;
    border-left: none;
    padding: 0 5px;
    display: flex;
    align-items: center;
  }

  #pc-header div.cf div:nth-child(2) img {
    max-width: 100%;
    height: auto;
  }

  #pc-header div.cf div:nth-child(3) {
    width: 30%;
    float: left;
    border-left: none;
    padding: 0 5px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }

  #pc-header div.cf div:nth-child(3) img {
    max-width: 100%;
    height: auto;
    margin-top: 0;
  }

  .header-yellow {
    height: auto;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* Navigation */
  nav div {
    width: 100%;
    padding: 10px 0;
    box-sizing: border-box;
  }

  nav ul li {
    float: left;
    width: 25%;
    text-align: center;
  }

  .main-nav li {
    padding-right: 5px;
    padding-left: 5px;
    font-size: 12px;
  }

  .main-nav li a {
    color: #FFF;
    display: block;
    white-space: normal;
    overflow: visible;
  }

  /* Main Visual */
  .main-visual {
    position: relative;
  }

  .main-visual #txt {
    bottom: 10%;
    width: 80%;
  }

  .main-visual #txt img {
    max-width: 100%;
    height: auto;
  }

  /* Topics Section */
  .home-topics-section {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .topics-innner {
    max-width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }

  /* Footer */
  .foot-menu ul {
    flex-direction: column;
  }

  .foot-menu ul li {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }

  .foot-menu ul li img {
    max-width: 100%;
    height: auto;
  }

  .foot-menu ul li p {
    font-size: 12px;
  }
}

/* =========================================================================
   Mobile: 480px - 767px
   ========================================================================= */
@media (max-width: 767px) {
  body {
    min-width: auto;
    width: 100%;
    font-size: 11px;
  }

  /* Header */
  .header-yellow {
    height: auto;
    padding: 10px 0;
    width: 60%;
  }

  #pc-header {
    background: #FFF802;
  }

  #pc-header div.cf {
    width: 70%;
    margin: 0 auto;
    padding: 10px;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
  }

  #pc-header div.cf div {
    width: 100% !important;
    float: none;
    height: auto;
    margin-bottom: 10px;
    border-left: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  #pc-header div.cf div:nth-child(2),
  #pc-header div.cf div:nth-child(3) {
    justify-content: center;
  }

  #pc-header div.cf div img {
    max-width: 100%;
    height: auto;
  }

  /* Navigation */
  nav {
    background: #0E8ACA;
  }

  nav div {
    width: 100%;
    margin: 0;
    padding: 10px;
    box-sizing: border-box;
  }

  nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  nav ul li {
    width: 50%;
    text-align: center;
    float: none;
  }

  .main-nav li {
    padding: 8px 5px;
    font-size: 11px;
  }

  .main-nav li a {
    color: #FFF;
    display: block;
    white-space: normal;
  }

  /* Main Visual */
  .main-visual {
    position: relative;
    width: 100%;
  }

  .main-visual ul {
    width: 100%;
    margin: 0;
  }

  .main-visual img {
    max-width: 100%;
    height: auto;
    display: block;
  }

  .main-visual #txt {
    position: absolute;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    width: 70%;
    margin: 0;
  }

  .main-visual #txt img {
    max-width: 100%;
    height: auto;
  }

  /* Home Topics Section */
  .home-topics-section {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .topics-innner {
    max-width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }

  .home-topics-right {
    width: 100%;
  }

  .topics-wrap {
    width: 100%;
  }

  .nexttopics-item {
    display: flex;
    flex-direction: column;
  }

  .home-topics-date {
    margin-bottom: 10px;
  }

  .home-topics-title {
    font-size: 14px;
  }

  .instagram-wrap {
    margin-top: 30px;
    width: 100%;
  }

  .instagram-wrap img {
    max-width: 100%;
    height: auto;
  }

  /* Footer */
  footer {
    width: 100%;
    margin: 0;
  }

  .foot-menu {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }

  .foot-menu ul {
    display: flex;
    flex-direction: column;
    width: 80% !important;
  }

  .foot-menu ul li {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }

  footer .foot-menu ul li:nth-child(1) {
    width: 100%;
    height: auto;
    float: none;
  }

  .foot-menu ul li img {
    max-width: 100%;
    height: auto;
    display: block;
  }

  .foot-menu ul li p {
    font-size: 11px;
    margin-top: 10px;
  }

  .foot-nav {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }

  .copy {
    font-size: 10px;
  }

  /* Recent items */
  .recent-wrap {
    display: flex;
    flex-direction: column;
  }

  .recent-item {
    width: 100%;
    margin-bottom: 20px;
  }
}

/* =========================================================================
   Small Mobile: 320px - 479px
   ========================================================================= */
@media (max-width: 479px) {
  body {
    min-width: auto;
    width: 100%;
    font-size: 10px;
  }

  #pc-header div.cf {
    padding: 8px;
    padding-top: 30px;
  }

  #pc-header div.cf div {
    margin-bottom: 8px;
  }

  #pc-header div.cf div:last-child {
    margin-bottom: 0;
  }

  nav div {
    padding: 8px;
  }

  nav ul li {
    width: 100%;
    margin-bottom: 5px;
  }

  .main-nav li {
    padding: 5px 2px;
    font-size: 10px;
  }

  .main-visual #txt {
    bottom: 3%;
    width: 80%;
  }

  .home-topics-section {
    padding: 20px 5%;
  }

  .home-topics-title {
    font-size: 12px;
  }

  .topics-innner {
    padding: 0 5px;
  }

  .foot-menu ul li p {
    font-size: 10px;
  }

  .copy {
    font-size: 9px;
  }
}

/* =========================================================================
   Image Responsiveness
   ========================================================================= */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* =========================================================================
   Slick Carousel Responsive
   ========================================================================= */
.slick-slide img {
  max-width: 100%;
  height: auto;
}

.slick-dots {
  bottom: 10px !important;
}

@media (max-width: 767px) {
  .slick-dots {
    bottom: 5px !important;
  }
}
