/* COMMON ----------------------------------------------------------------- */
html {
  background-color: #00a2ff;
}

.section-h2 {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-family: "Shin-Maru-GP-Bold";
  color: white;
}

p {
  font-family: "Noto Sans JP", sans-serif;
}

/* NAVBAR ----------------------------------------------------------------- */
.navbar {
  top: 0;
  width: 100%;
  height: 3.65rem;
  box-shadow: none;
  background-color: #ffffff00;
  transition: 0.3s ease-in-out;
}

.navbar.scrolled {
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.5);
  background-color: #00a2ff;
  transition: 0.3s ease-in-out;
}

nav {
  background-color: #ffffff00;
}

.nav-link {
  color: #f3f4df;
}

.nav-link:hover {
  color: #016775;
}

.navbar-nav {
  background-color: #ffffff00;
}

.nav-btn {
  background: white;
  color: #00a2ff;
}

.nav-btn:hover {
  background: #016775;
  color: #fff;
}

@media (max-width: 769px) {
  .navbar {
    top: 0;
    width: 100%;
    height: 3.65rem;
    box-shadow: none;
    background-color: #ffffff00;
    transition: 0.3s ease-in-out;
  }

  .navbar-nav {
    background-color: #00a2ff;
  }
}

/* HERO ----------------------------------------------------------------- */

.hero {
  background-color: #00a2ff;
  background-image: url(../summer-school-images/desktop-hero-bg.svg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 7.1;
}

.hero-decoration-left,
.hero-decoration-right {
  position: absolute;
  width: 12.5rem;
}

.hero-decoration-left {
  transform: translate(0%, -100%);
  top: 100%;
}

.hero-decoration-right {
  transform: translate(-100%, -100%);
  top: 100%;
  left: 100%;
}

.hero-teacher-decoration,
.hero-kids-decoration {
  position: absolute;
  width: 60%;

  top: 100%;
}

.hero-teacher-decoration {
  left: 00%;
  transform: translate(-75%, -100%);
}

.hero-kids-decoration {
  left: 100%;
  transform: translate(-15%, -100%);
  width: 75%;
}
.contents-wrapper {
  width: fit-content;
  position: relative;
}

.hero-img {
  height: 50vh;
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding-top: 2rem;
  padding-bottom: 1rem;
}
.h1-wrapper,
.h2-wrapper {
  position: relative;

  width: fit-content;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.h1-banner-decoration-left,
.h1-banner-decoration-right {
  position: absolute;
  width: 13.5rem;
  height: 6rem;
}

.h1-banner-decoration-left {
  transform: translate(-50%, -50%);
  top: 85%;
}

.h1-banner-decoration-right {
  transform: translate(-50%, -50%);
  top: 85%;
  left: 100%;
}
.h1-box {
  position: relative;
  background-color: #f3d475;
  border-style: solid;
  border-width: 5px;
  border-color: #016775;
  width: fit-content;
  padding-top: 1rem;
  margin-bottom: 1rem;
  border-radius: 3px;
}

.hero-h1 {
  color: #016775;
  font-size: 2rem;
  font-family: "Shin-Maru-GP-Ultra";
  padding: 2rem;
  padding-top: 0rem;
  padding-bottom: 1rem;
  text-align: center;
}
.h2-wrapper {
  height: fit-content;
}

.h2-box {
  display: block;
  position: relative;
  background-color: #016775;
  border-style: solid;
  border-width: 6px;
  border-color: #016775;
  width: fit-content;
  padding-top: 1rem;
  margin-bottom: 1rem;
  height: 5rem;
}

.h2-banner-decoration-left,
.h2-banner-decoration-right {
  position: absolute;
  height: 5rem;
}

.h2-banner-decoration-left {
  transform: translate(-100%, 0%);
}

.h2-banner-decoration-right {
  transform: translate(0%, 0%);
  left: 100%;
}

.hero-h2 {
  color: #f3d475;
  text-align: center;
  font-family: "Shin-Maru-GP-Bold";
  font-size: 1.1rem;
  padding: 0.5rem;
  padding-top: 0rem;
  padding-bottom: 0.5rem;
}

.hero-cta-button {
  position: relative;
  font-family: "Shin-Maru-GP-DeBold";
  text-decoration: none;
  color: #016775;
  background-color: #f3d475;
  border: solid 6px #016775;
  font-size: 1.5rem;
  padding: 1rem;
  padding-left: 7.5rem;
  padding-right: 7.5rem;
  border-radius: 3rem;
  display: block;
  margin-left: auto;
  margin-right: auto;
  transition-duration: 0.3s;
}

.hero-cta-button:hover {
  color: #f3d475;
  background-color: #016775;
  border: solid 6px #016775;
}

@media (min-width: 576px) and (max-width: 767.98px) {
  .hero-teacher-decoration {
    left: 00%;
    width: 45%;
    top: 85%;
    transform: translate(-25%, -100%);
  }

  .hero-kids-decoration {
    left: 100%;
    transform: translate(-75%, -100%);
    width: 55%;
    top: 77.5%;
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .hero-teacher-decoration {
    left: 00%;
    width: 45%;
    top: 85%;
    transform: translate(-30%, -100%);
  }

  .hero-kids-decoration {
    left: 100%;
    transform: translate(-65%, -100%);
    width: 55%;
    top: 80%;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .hero-teacher-decoration {
    left: 00%;
    transform: translate(-50%, -100%);
  }

  .hero-kids-decoration {
    left: 100%;
    transform: translate(-55%, -100%);
    width: 60%;
    top: 80%;
  }
}

@media (min-width: 1200px) {
  .hero-teacher-decoration {
    left: 00%;
    transform: translate(-75%, -100%);
  }

  .hero-kids-decoration {
    left: 100%;
    transform: translate(-15%, -100%);
    width: 65%;
    top: 87.5%;
  }
}

@media (max-width: 576px) {
  .hero {
    background-image: url(../summer-school-images/mobile-hero-bg.svg);
    aspect-ratio: 9 / 16;
  }

  .hero-img {
    height: 45vh;
  }

  .hero-h1 {
    padding: 1rem;
    padding-top: 0rem;
    padding-bottom: 1rem;
    font-size: clamp(1.25rem, 3vw + 0.5rem, 1.5rem);
  }
  .h2-box {
    height: clamp(7rem, 3vw + 0.5rem, 12rem);
  }

  .hero-h2 {
    font-size: clamp(0.75rem, 2.4vw + 0.4rem, 1.1rem);
    padding: 0rem;
    margin-top: -0.25rem;
    padding-bottom: 1rem;
  }

  .h2-banner-decoration-left,
  .h2-banner-decoration-right {
    height: clamp(7rem, 3vw + 0.5rem, 12rem);
  }

  .hero-cta-button {
    font-size: clamp(1.25rem, 3vw + 0.5rem, 1.5rem);
    padding-left: clamp(3rem, 3vw + 0.5rem, 5rem);
    padding-right: clamp(3rem, 3vw + 0.5rem, 5rem);
  }
  .hero-teacher-decoration,
  .hero-kids-decoration {
    display: none;
  }
}

/* ABOUT ----------------------------------------------------------------- */

.event-about {
  background-color: #faeaaa;
  padding-bottom: 2rem;
}
.explainer-top-left {
  padding-top: 1rem;
}

.about-h2 {
  color: #016775;
}

.about-p {
  font-family: "Noto Sans JP", sans-serif;
  color: #303135;
}

.about-event-img {
  margin: 0;
  position: relative;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: fit-content;
  max-width: 80%;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 576px) {
  .event-about {
    background-repeat: no-repeat;
    background-position: top right;
    background-size: 30%;
  }
}

/* ABOUT ----------------------------------------------------------------- */

.main-body {
  background-color: #42a8ec;
  position: relative;
}

.section-break-decorarion {
  width: 110%;
  transform: translate(-5%, 0%);
}

.three-benefits-row {
  padding-top: 2rem;
  padding-bottom: 1rem;
  position: relative;
}

.three-benefits-img {
  margin-bottom: 1rem;
  display: block;
  margin-left: auto;
  margin-right: auto;
  border-radius: 1rem;
}

.three-benefits-textbox {
  padding-left: 1rem;
  padding-right: 1rem;
}

.three-benefits-text {
  color: white;
}
/* LOCATIONS ----------------------------------------------------------------- */

.prefecture-title{
height: 4rem;
margin: 1rem;
margin-left: 0;
filter: drop-shadow(0px 5px 0px #e5cca8);
}


.location-row{
  margin-bottom: 2rem;
}


.location-area-wrapper{
  padding-bottom: 1rem;
}


.location-outer{
  position: relative;
  height: auto;
  padding-top: .5rem;
  padding-bottom: .5rem;    
  filter: drop-shadow(0px 5px 0px #e5cca8);
}


.location-pin{
  position: absolute;
  width: 3rem;
  transform: translate(0%, -50%);
  margin-top: 1.5rem;
  
}
.location-name-1, .location-name-2, .location-name-3, .location-name-4{
  font-size: 1.25rem;
  font-family: "Shin-Maru-GP-Bold";
  background-color: white;
  padding: 0.5rem;
  width: fit-content;
  border-radius: .3rem;
  padding-left: 1.5rem;
  margin-left: 1.5rem;
}

.location-name-1{
  color: #faba6a;
}

.location-name-2{
  color: #8cd0e2;
}


.location-name-3{
  color: #c3d772;
}


.location-name-4{
  color: #e1c69a;
}



.location-school{
  font-family: "Shin-Maru-GP-DeBold";
  margin-left: 2rem;
  font-size: 1rem;
padding-top: 0.25rem;
}

@media (max-width: 576px) {
  .prefecture-title{
    height: 4rem;
    margin: 0.1rem;
    margin-left: 0;
    filter: drop-shadow(0px 5px 0px #e5cca8);
    }
    
}
.mobile-accordion-item{
background-color: #ffffff00;
}


.mobile-accordion-body{
  width: 100%;
  padding: 0rem;
  margin: 0rem;
}

.mobile-accordion-button{
  width: 100%;
 padding-top: .25rem;
 padding-bottom: .25rem
 ;
}




/* CUSTOMER TESTIMONY ----------------------------------------------------------------- */
.customer-testimony-row {
  padding-bottom: 1rem;
}

.testimonial-box {
  background-color: #f3d475;
  height: 27rem;
  margin-left: 0.5%;
  margin-right: 0.5%;
  width: 32.33333333333333333333333333333333333333333333333333333333333333%;
  border-radius: 1rem;
}

.testimonial-inner {
  padding: 0.75rem;
  padding-top: 2rem;
  position: relative;
  height: 90%;
}

.testimonial-img {
  width: 100%;
}

.testimonial-header {
  font-size: 1.4rem;
  font-family: "Noto Sans JP", sans-serif;
  color: #303135;
  font-weight: bold;
  display: block;
  margin-top: auto;
  margin-bottom: auto;
}

.testimonial-top-row {
  padding-bottom: 2rem;
}

.testimonial-text {
  color: #303135;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.95rem;
}

.testimonial-rank {
  position: absolute;
  top: 90%;
  vertical-align: bottom;
  width: 45%;
}

@media (max-width: 576px) {
  .swiper-wrapper {
    height: fit-content;
  }

  .testimony-slide {
    height: 100%;
    width: 100%;
  }

  .testimonial-box {
    height: 100%;
    margin-left: 0%;
    margin-right: 0%;
    width: 100%;
  }

  .testimonial-inner {
    padding: 1rem;
    padding-top: 1rem;
    position: relative;
    height: 31rem;
  }

  .testimonial-top-row {
    padding-bottom: 1rem;
  }

  .testimonial-text {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1rem;
  }
}

/* Four-Benefits ----------------------------------------------------------------- */
.four-benefits-wrapper {
  background-color: #faeaaa;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.four-benefits-container {
  background-color: #f3d475;
  padding: 0.25rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-radius: 1rem;
  margin-bottom: 2rem;
}
.benefit-icon-parent-row {
  position: relative;
}
.benefit-icon-child-col-img {
  padding-left: none;
  padding-right: none;
  margin-left: none;
  margin-right: none;
}

.benefit-icon {
  margin: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 6rem;
}

.four-benefits-text {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0;
  font-size: 0.9rem;
  text-align: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.main-parent-row {
  height: 100%;
}

@media (max-width: 576px) {
  .four-benefits-container {
    border-radius: 1rem;
  }

  .four-benefits-text {
    margin: 0;
    position: relative;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 1rem;
    line-height: 1.6rem;
    text-align: center;
  }
}

/* CALL TO ACTION ----------------------------------------------------------------- */
.activity-info-div {
  background-image: url(../summer-school-images/activity-bg.svg);
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}

.call-to-action {
  background-color: #faeaaa;
  position: relative;
}

.call-to-action-bg {
  position: absolute;
  top: 66%;
  transform: translate(0%, -100%);
}

.cta-kid {
  position: relative;
  width: 90%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: 1rem;
}

.cta-button {
  transform: translate(0%, -50%);
  position: absolute;
  top: 45%;
  width: 40%;

  left: 50%;
  max-width: 600px;
  font-family: "Shin-Maru-GP-DeBold";
  text-decoration: none;
  color: #016775;
  background-color: #f3f4df;
  border: solid 0.2rem #016775;
  font-size: 1.25rem;
  padding: 1rem;
  text-align: left;
  padding-left: 2rem;
  border-radius: 3rem;
  display: block;
  margin-left: auto;
  margin-right: auto;
  transition-duration: 0.3s;
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.cta-button::after {
  content: url(../summer-school-images/btn-arrow.svg);
  height: 1rem;
  float: right;
  top: 65%;
  padding-right: 2rem;
  padding-top: 0.1rem;
}

.cta-button:hover {
  color: #f3f4df;
  border-color: #016775;
  background-color: #016775;
}

.cta-button:hover::after {
  content: url(../summer-school-images/btn-arrow-hover.svg);
}

@media (max-width: 576px) {
  .cta-button {
    display: block;

    position: relative;
    top: auto;
    width: 100%;
    left: auto;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .cta-button::after {
    content: url(../summer-school-images/btn-arrow.svg);
    height: 1rem;
    float: right;
    top: 65%;
    padding-right: 0;
    padding-top: 0.1rem;
  }
}

/* Swiper-Slider ----------------------------------------------------------------- */

.swiper-arrow-container {
  position: relative;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.swiper-container {
  overflow-x: hidden;
  position: relative;
  mask-image: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 2%,
    rgba(255, 255, 255, 1) 10%,
    rgba(255, 255, 255, 1) 90%,
    rgba(255, 255, 255, 0) 98%
  );
}

.activity-slide {
  position: relative;
  background-color: #f3f5f8;
  border-radius: 1rem;
}

.slide-date-box {
  position: absolute;
  background-color: #267d8a;
  width: fit-content;
  right: 0%;
  padding-top: 0.2rem;
  padding-bottom: 0.1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-radius: 0rem 1rem 0rem 1rem;
}

.slide-date {
  font-family: "Shin-Maru-GP-Bold";
  font-size: 1rem;
  line-height: 1.5rem;
  color: white;
}

.slide-lower {
  height: 7rem;
}

.slide-h2 {
  font-size: 1rem;
  font-family: "Shin-Maru-GP-Bold";
  text-align: center;
  color: #414141;
  margin: 0;
  position: relative;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.activity-slider-img {
  width: 100%;
  border-radius: 1rem 1rem 0rem 0rem;
}

.swiper-button-activity-prev {
  width: 3rem;
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 1;
  top: 50%;
  overflow: none;
}
.swiper-button-activity-next {
  width: 3rem;
  position: absolute;
  transform: translate(-50%, -50%);
  left: 100%;
  z-index: 1;
  top: 50%;
  overflow: none;
}
.swiper-container-testimony {
  overflow-x: hidden;
  position: relative;
  mask-image: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 2%,
    rgba(255, 255, 255, 1) 5%,
    rgba(255, 255, 255, 1) 95%,
    rgba(255, 255, 255, 0) 98%
  );
}

.swiper-button-testimony-prev {
  width: 4rem;
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 1;
  top: 50%;
  overflow: none;
}
.swiper-button-testimony-next {
  width: 4rem;
  position: absolute;
  transform: translate(-50%, -50%);
  left: 100%;
  z-index: 1;
  top: 50%;
  overflow: none;
}

/* ----------------------------------------Dropdown--------------------------------------- */

.btn-dropdown-left,
.btn-dropdown-middle,
.btn-dropdown-right {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.btn-dropdown-left {
  text-align: left;
}

.btn-dropdown-middle {
  text-align: center; /* Added to center the buttons */
}

.btn-dropdown-right {
  text-align: right; /* Added to center the buttons */
}
.btn-dropdown-small {
  font-family: "Noto Sans JP", sans-serif;
  background-color: #267d8a;
  border: solid 0.2rem #267d8a;
  border-radius: 2rem;
  width: 90%;
  max-width: 600px;
  text-align: left;
  color: #ffffff;
  font-size: 1rem;
  position: relative;
  display: inline-flex;
  padding: 15px;
  padding-left: 1rem;
  transition-duration: 0.2s;
  margin: 0 auto;
  font-weight: bold;
}

.dropdown-img-small {
  position: absolute;
  right: 1rem; /* Adjust the padding from the right as needed */
  top: 50%;
  transform: translateY(-50%);
  height: 35px;
  width: 35px;
  transform-origin: center;
}

.btn-dropdown-small:hover,
.btn-dropdown-small:focus,
.btn-dropdown-small:not(.collapsed) {
  background-color: #f3f4df;
  color: #267d8a;
  border: solid 0.2rem #267d8a;
}

.btn-dropdown-small:not(.collapsed) {
  transition-duration: 0.5s;
}

.btn-dropdown-small:not(.collapsed) .dropdown-img-small {
  transform: translateY(-50%) rotate(180deg);
  transition-duration: 0.2s;
  fill: #fff; /* Default fill color */
  transition: fill 0.3s ease; /* Smooth transition */
}

@media screen and (max-width: 1025px) {
  .btn-dropdown-small {
    font-size: 16px;
    width: 95%;
  }

  .dropdown-img-small {
    height: 28px;
    width: 28px;
  }
}

@media screen and (max-width: 769px) {
  .btn-dropdown-small {
    font-size: 15px;
    padding: 7.5px;
  }

  .dropdown-img-small {
    height: 25px;
    width: 25px;
  }
  .btn-dropdown-left,
  .btn-dropdown-middle,
  .btn-dropdown-right {
    text-align: center;
  }
}

@media (max-width: 576px) {
  .btn-dropdown-small {
    width: 100%;
    display: block;
    margin: 0 auto;
    height: 3rem;
    font-size: 1rem;
    padding-left: 2rem;
  }

  .dropdown-img-small {
    height: 2rem;
    width: 2rem;
    right: 1rem;
  }
}

.collapse-boxes {
  padding-bottom: 1rem;
  overflow-x: hidden;
  width: 100%;
}

.daily-schedule-header {
  color: #267d8a;
  font-weight: bold;
  font-size: 1.25rem;
}

.schedule-level {
  font-weight: bold;
  font-size: 1rem;
}

.daily-Schedule-1 {
  background-color: #f4f6f9;
  width: 100%;
  text-align: left;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-bottom: 1rem;
  padding-top: 1rem;
}

.daily-Schedule-2 {
  background-color: #f3f4df;
  width: 100%;
  text-align: left;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-bottom: 1rem;
  padding-top: 1rem;
  border-radius: 1rem;
}

.form-download-wrapper {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.form-download {
  padding-top: 1rem;
  text-align: center;
  color: #267d8a;
  font-weight: bold;
  font-size: 1.25rem;
}

.form-download:hover {
  opacity: 60%;
}
.calendar-img {
  margin-top: 1rem;
  border-radius: 1rem;
}

.dropdown-container {
  background-color: #f4f6f9;
  border-radius: 1rem;
  width: 100%;
  overflow-x: hidden;
  padding-bottom: 1rem;
}

/* Image Carousel ------------------------------------------------------------------*/

.carousel-div {
  background-color: inherit;
}

.swiper-img {
  display: block;
  width: 96%;
  align-items: center;
  padding-left: 3%;
  padding-right: 3%;
  object-fit: cover;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.swiper-custom-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 100%;
  display: flex;
  padding: 25%;
  justify-content: space-between;
}

.swiper-custom-nav-arrow {
  cursor: pointer;
  opacity: 1;
  transition: all 0.3 ease-in-out;
  width: 4rem;
}

.swiper-custom-nav-arrow:hover {
  cursor: pointer;
  opacity: 0.6;
  transition: all 0.3 ease-in-out;
}

.swiper-activities-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 100%;
}

.swiper-activities-nav-arrow {
  cursor: pointer;
  opacity: 1;
  transition: all 0.3 ease-in-out;
  width: 4rem;
}

.swiper-activities-nav-arrow:hover {
  cursor: pointer;
  opacity: 0.6;
  transition: all 0.3 ease-in-out;
}

@media (max-width: 576px) {
  .swiper-img {
    display: block;
    width: 100%;
    align-items: center;
    padding-left: 5%;
    padding-right: 5%;
    object-fit: cover;
    aspect-ratio: 1/1;
  }
  .swiper-custom-nav {
    padding: 7.5%;
  }
  .swiper-custom-nav-arrow {
    width: 3rem;
  }
}

/* Sign Up and Pre Footer ------------------------------------------------------------------*/

.sign-up-instruction-header {
  font-size: 1.15rem;
  font-weight: bold;
}

.bottom-button-right {
  float: left;
}

.bottom-button-left {
  float: right;
}

@media (max-width: 576px) {
  .bottom-button-left,
  .bottom-button-right {
    float: none;
    align-items: center;
  }
}

.sign-up {
  background-color: #42a8ec;
}
.sign-up-row {
  padding-bottom: 1rem;
}

.sign-up-wrapper-left,
.sign-up-wrapper-middle,
.sign-up-wrapper-right {
  width: 97.5%;
  display: block;
}

.sign-up-wrapper-left {
  margin-right: auto;
}

.sign-up-wrapper-middle {
  margin-left: auto;
  margin-right: auto;
}

.sign-up-wrapper-right {
  margin-left: auto;
}

@media (max-width: 576px) {
  .sign-up-wrapper-left,
  .sign-up-wrapper-middle,
  .sign-up-wrapper-right {
    width: 100;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

.sign-up-h2 {
  font-family: "Shin-Maru-GP-Bold";
  font-weight: bold;
  padding-bottom: 3rem;
  color: white;
}

.sign-up-h3 {
  font-size: 1.75rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  padding-top: 1rem;
  padding-bottom: 0.25rem;
  color: white;
}

.sign-up-p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.2rem;
  color: white;
}

.sign-up-button {
  position: relative;
  font-family: "Shin-Maru-GP-DeBold";
  text-decoration: none;
  color: #016775;
  background-color: #f3f4df;
  border: solid 0.2rem #016775;
  font-size: 1.25rem;
  padding: 1rem;
  text-align: left;
  padding-left: 2rem;
  border-radius: 3rem;
  width: 90%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  transition-duration: 0.3s;

  margin-bottom: 1rem;
}

.sign-up-button::after {
  content: url(../summer-school-images/btn-arrow.svg);
  height: 1rem;
  float: right;
  top: 70%;
  padding-right: 2rem;
  padding-top: 0.1rem;
}

.sign-up-button:hover {
  color: #f3f4df;
  background-color: #016775;
  border: solid 0.2rem #016775;
}

.sign-up-button:hover::after {
  content: url(../summer-school-images/btn-arrow-hover.svg);
}

.pre-footer {
  background-color: #faeaaa;
}

.pre-footer-h2,
.pre-footer-p {
  color: #303135;
}

/* --------------------FAQ ACCORDION--------------------------*/

.bottom-section {
  background-color: #faeaaa;
  padding-bottom: -2rem;
}

.accordion {
  padding-bottom: 1rem;
}

.accordion-item {
  border: none !important;
  background-color: white;
  border-radius: 2rem !important;
  margin-top: 1rem;
  margin-bottom: 1rem;
  width: 100%;
}

.accordion-btn-icon {
  transition: transform 0.3s ease-in-out;
  width: 3rem;
  height: 3rem;
  margin-right: 1rem;
  border-radius: 2rem !important;
  transform: rotate(0deg);
}

.accordion-button {
  color: #63574a;
  font-family: "Noto Sans JP", sans-serif;
  text-align: left;
  font-size: 1.5rem;
  font-weight: bold;
  border-radius: 2rem !important;
  filter: drop-shadow(none);
}

.accordion-button::after {
  display: none;
}

.accordion-button:focus,
.accordion-button:active {
  box-shadow: none !important; /* Remove focus and active outline */
  border-color: transparent !important;
}

.accordion-button:not(.collapsed) {
  background-color: transparent !important; /* Set your desired background color */
  border: none !important; /* Remove border */
  color: #63574a;
  box-shadow: none !important;
}

.accordion-body {
  font-family: "Noto Sans JP", sans-serif;
  color: #63574a;
  text-align: left;
  font-weight: 400;
  padding: 1rem;
  padding-top: 0rem;
  margin-left: 1rem;
  margin-right: 1rem;
}
