@import url('https://fonts.googleapis.com/css2?family=Bungee&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://cdn.boxicons.com/3.0.6/fonts/basic/boxicons.min.css');

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --color-6034dd: #6034dd;
  --color-0075bc: #0075bc;
  --color-ccd52c: #ccd52c;
  --color-272727: #272727;
  --color-f5f8dd: #f5f8dd;
  --color-925ee3: #925ee3;
  --color-fef514: #fef514;
  --color-ffe722: #ffe722;

  --color-013f92: #013f92;
  --color-b9ffc1: #b9ffc1;
  --color-d9d9d94d: #d9d9d94d;
  --color-3551a2: #3551a2;
  --color-fff2f0: #fff2f0;
  --color-98d99f: #98d99f;
  --color-a8def8: #a8def8;
  --color-98d9a0: #98d9a0;
  --color-040404: #040404;
}

html,
body {
  overflow-x: clip;
}

body {
  color: var(--color-272727);
}

img {
  max-width: 100%;
}

h1, h2, h3, h4, h5, h6, p, label, input, button {
  line-height: 1;
  letter-spacing: 0;
  padding: 0;
  margin: 0;
}

h2 {
  font-family: 'Bungee', sans-serif;
  font-weight: 400;
}

h3,
h4,
h5 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
}

p {
  font-family: 'Work Sans', sans-serif;
  font-weight: 400;
}

a {
  color: inherit;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  text-decoration: none;
}

button {
  border: none;
  outline: none;
}

/*
Header 01
*/
.header-01 {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.55vw 10.94vw; /* 49px 210px */
  position: absolute;
  z-index: 2;
}

.header-01 a img {
  width: 9.17vw; /* 176px */
}

.header-01 nav {
  display: flex;
  align-items: center;
  gap: 4.11vw; /* 79px */
}

.header-01 a {
  color: white;
  font-weight: 500;
  font-size: 0.94vw; /* 18px */
  line-height: 1;
}

.header-01 > img {
  display: none;
}

/*
Section 01
*/
.section-01 {
  color: white;
  background-color: var(--color-013f92);
  min-height: 50.52vw; /* 970px */
  padding: 12.97vw 0 11.9vw 10.94vw; /* 249px 0 228.44px 210px */
  position: relative;
  z-index: 1;
}

.section-01 img:nth-of-type(1) {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.section-01 img:nth-of-type(2) {
  display: none;
}

.section-01 > div {
  width: 36.99vw; /* 710.34 */
}

.text-wrap {
  overflow: hidden;
  display: inline-block;
  height: 1.2em;
}

.text-slide {
  display: inline-block;
  position: relative;
}

.section-01 h2 {
  color: var(--color-b9ffc1);
  font-size: 4.17vw; /* 80px */
  line-height: 1;
  margin-bottom: 0.83vw; /* 16px */
}

.section-01 h2 span span {
  color: white;
}

.section-01 h3 {
  font-weight: 500;
  font-size: 1.82vw; /* 35px */
  line-height: 1;
  margin-bottom: 2.55vw; /* 49px */
}

.section-01 p {
  font-size: 1.25vw; /* 24px */
  line-height: 1.67; /* 40px */
  margin-bottom: 3.91vw; /* 75px */
}

.section-01 div div {
  display: flex;
  align-items: center;
  gap: 0.92vw; /* 17.65px */
}

.section-01 a:nth-of-type(1) {
  color: var(--color-013f92);
  background-color: var(--color-b9ffc1);
  font-weight: 700;
  font-size: 0.83vw; /* 15.88px */
  line-height: 1;
  padding: 1.1vw 1.47vw; /* 21.18px 28.24px */
  border: 0.88px solid var(--color-b9ffc1);
  border-radius: 1.88vw; /* 36.18px */
}

.section-01 a:nth-of-type(2) {
  background-color: transparent;
  font-weight: 500;
  font-size: 0.83vw; /* 15.88px */
  line-height: 1;
  text-align: center;
  width: 13.38vw; /* 256.78px */
  padding: 1.1vw 1.47vw; /* 21.18px 28.24px */
  border: 0.88px solid white;
  border-radius: 1.88vw; /* 36.18px */
}

/*
Modal
*/
.modal-overlay {
  background: rgba(0, 0, 0, 0.55);
  display: none;
  align-items: center;
  justify-content: center;
  position: fixed;
  inset: 0;
  z-index: 1000;
}

.modal-overlay.is-open {
  display: flex;
}

.modal {
  background: white;
  width: 33.47vw; /* 641.89px */
  padding: 2.06vw 3.24vw 3.96vw 3.37vw; /* 39.58px 62.2px 75.91px 64.69px */
  border-radius: 0.63vw; /* 12px */
  position: relative;
}

.modal__close {
  display: table;
  width: 1.51vw; /* 28.97px */
  cursor: pointer;
  margin: 0 auto;
}

.modal h2 {
  color: #6621ED;
  font-family: Montserrat;
  font-weight: 700;
  font-size: 1.56vw; /* 30px */
  line-height: 1.82vw; /* 35px */
  text-align: center;
  margin: 1.82vw 0 1.98vw; /* 35px 0 38px */
}

.modal input[type="text"],
.modal input[type="email"],
.modal input[type="submit"] {
  color: var(--color-013f92);
  font-weight: 500;
  font-size: 1.25vw; /* 24px */
  width: 100%;
  height: 3.33vw; /* 64px */
  padding: 0 1.46vw; /* 28px */
  border: 1px solid;
  border-radius: 2.08vw; /* 40px */
  margin-bottom: 1.04vw; /* 20px */
}

.modal input[type="submit"] {
  background-color: var(--color-b9ffc1);
  font-weight: 700;
  cursor: pointer;
  border: none;
}

.modal .wpcf7-acceptance .wpcf7-list-item {
  font-weight: 500;
  font-size: 1.25vw; /* 24px */
  display: block;
  margin: 0;
}

.modal .wpcf7-spinner {
  display: none;
}

.modal .wpcf7-response-output {
  margin: 0;
}

.modal .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 1vw;
}

/*
Section 02
*/
.section-02 {
  background-color: #d9d9d94d;
  min-height: 50.89vw; /* 977px */
  padding: 12.81vw 0 0 53.13vw; /* 246px 0 0 1020px */
  position: relative;
}

.section-02 > img {
  width: 96.56vw; /* 1854px */
  position: absolute;
  top: 50%; /* 99px */
  left: 50%; /* 49px */
  transform: translate(-50.5%, -50%);
}

.section-02 div {
  width: 33.33vw; /* 640px */
}

.section-02 p {
  color: black;
  font-size: 1.1vw; /* 24px */
  line-height: 1.67; /* 40px */
}

.section-02 h2 {
  color: var(--color-3551a2);
  font-size: 1.56vw; /* 30px */
  line-height: 1.67;
}

.section-02 div img {
  display: none;
}

/*
Section 03
*/
.section-03 {
  color: var(--color-fff2f0);
  background-color: var(--color-013f92);
  padding: 7.6vw 7.19vw 7.5vw 10.94vw; /* 146px 138px 144px 210px */
  position: relative;
  z-index: 1;
}

.section-03 img {
  width: 48.85vw; /* 938px */
  position: absolute;
  top: 0;
  right: -5vw;
  z-index: -1;
}

.section-03 h2 {
  color: var(--color-b9ffc1);
  font-size: 2.86vw; /* 55px */
  line-height: 1.18; /* 65px */
  margin-bottom: 5.57vw; /* 107px */
}

.section-03 > div {
  display: grid;
  grid-template-columns: 43.43vw 20.83vw; /* 833px 400px */
  justify-content: space-between;
  position: relative;
}

.section-03 hr {
  height: 45vw; /* 641.5 */
  border: 0.1vw solid white; /* 2px */
  position: absolute;
  top: 4.17vw; /* 80px */
  left: 2.08vw; /* 40px */
}

.section-03 article {
  display: grid;
  grid-template-columns: 4.17vw 1fr; /* 80px 1fr */
  gap: 2.6vw; /* 50px */
  margin-bottom: 2.45vw; /* 47px */
}

.section-03 article:last-child {
  margin-bottom: 0;
}

.section-03 h4 {
  color: var(--color-013f92);
  background-color: var(--color-98d99f);
  font-weight: 500;
  font-size: 2.08vw; /* 40px */
  line-height: 1;
  width: 4.17vw; /* 80px */
  height: 4.17vw; /* 80px */
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  z-index: 1;
}

.section-03 p {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 1.25vw; /* 24px */
  line-height: 1.82vw; /* 35px */
}

.section-03 h3 {
  color: var(--color-b9ffc1);
  font-weight: 400;
  font-size: 2.5vw; /* 48px */
  line-height: 1;
  text-transform: capitalize;
  margin-top: 10vw;
}

/*
Section 04
*/
.section-04 {
  color: var(--color-6034dd);
  text-align: center;
  padding: 6.67vw 10.94vw; /* 128px 210px */
  position: relative;
  z-index: 1;
}

.section-04 img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.section-04 div {
  background-color: var(--color-013f92);
  width: 37vw; /* 710px */
  padding: 7.6vw 6.72vw; /* 146px 129px */
  margin: 0 auto;
  border-radius: 1.51vw; /* 29px */
}

.section-04 h3 {
  color: var(--color-b9ffc1);
  font-family: 'Work Sans', sans-serif;
  font-weight: 500;
  font-size: 1.56vw; /* 30px */
  line-height: 1.3; /* 65px */
}

/* 
Section 05
*/
.section-05 {
  background-color: var(--color-013f92);
  min-height: 62.61vw; /* 1201px */
  padding: 9.27vw 10.94vw 10.73vw; /* 178px 210px 206px */
  position: relative;
  overflow: hidden;
}

.section-05 h2 {
  color: var(--color-b9ffc1);
  font-size: 2.86vw; /* 55px */
  line-height: 1;
  text-align: center;
  margin-bottom: 1.56vw; /* 30px */
}

.section-05 > p {
  color: white;
  font-size: 1.25vw; /* 24px */
  line-height: 1.46; /* 35px */
  text-align: center;
  margin-bottom: 5.99vw; /* 115px */
}

.section-05 .swiper {
  overflow: visible;
}

.section-05 .swiper-button-next {
  background-color: var(--color-b9ffc1);
  width: 2.95vw; /* 56.68px */
  height: 2.95vw; /* 56.68px */
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  border-radius: 50%;
  top: 50%;
  right: calc(100% + 1.55vw); /* 29.83px */
  transform: translateY(-50%);
}

.section-05 .swiper-button-next::after {
  color: var(--color-6034dd);
  font-weight: 700;
  font-size: 1.36vw; /* 26.11px */
  transform: rotate(180deg);
}

.section-05 .swiper-pagination {
  text-align: left;
  top: calc(100% + 1.65vw); /* 31.67px */
  display: flex;
  align-items: center;
  gap: 1.25vw; /* 24px */
}

.section-05 .swiper-pagination-bullet {
  background-color: var(--color-f5f8dd);
  width: 0.52vw; /* 10px */
  height: 0.52vw; /* 10px */
  margin: 0;
  opacity: 1;
}

.section-05 .swiper-pagination-bullet-active {
  background-color: var(--color-b9ffc1);
  outline: 0.16vw solid #b9ffc155; /* 3px */
}

.section-05 .swiper-slide {
  background-color: var(--color-a8def8);
  width: 25.42vw; /* 488px */
  height: auto;
  min-height: 27.08vw; /* 520px */
  display: flex;
  flex-direction: column;
  padding: 2.6vw; /* 50px */
  border-radius: 1.04vw; /* 20px */
  margin-right: 0.94vw; /* 18px */
}

.section-05 figure {
  background-color: var(--color-3551a2);
  width: 5.7vw; /* 109.46px */
  height: 5.7vw; /* 109.46px */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.04vw; /* 20px */
  margin-bottom: 1.56vw; /* 30px */
  border-radius: 50%;
}

.section-05 h3 {
  font-weight: 500;
  font-size: 1.25vw; /* 24px */
  line-height: 1.67; /* 40px */
  text-transform: capitalize;
  margin-bottom: 0.78vw; /* 15px */
}

.section-05 .swiper p {
  color: white;
  font-size: 0.94vw; /* 18px */
  line-height: 1.67; /* 30px */
  display: none;
}

.section-05 button {
  color: white;
  background-color: var(--color-3551a2);
  font-size: 2vw; /* 54px */
  cursor: pointer;
  width: 2.4vw; /* 46px */
  height: 2.4vw; /* 46px */
  align-self: flex-end;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  border-radius: 50%;
  transition: 0.5s;
}

.section-05 .swiper-slide:hover,
.section-05 .swiper-slide-active,
.section-05 .swiper-slide.active {
  color: var(--color-013f92);
  background-color: var(--color-98d99f);
}

.section-05 .swiper-slide.active {
  width: calc(25.42vw * 2);
}

.section-05 .swiper-slide:hover figure,
.section-05 .swiper-slide-active figure,
.section-05 .swiper-slide.active figure {
  background-color: var(--color-013f92);
}

.section-05 .swiper-slide.active p {
  display: block;
}

.section-05 .swiper-slide:hover button,
.section-05 .swiper-slide-active button,
.section-05 .swiper-slide.active button {
  color: var(--color-98d99f);
  background-color: var(--color-013f92);
}

.section-05 .swiper-slide.active button {
  transform: rotate(45deg);
}

/* 
Section 06
*/
.section-06 {
  padding: 10.1vw 10.94vw 11.15vw; /* 194px 210px 214px */
}

.section-06 > div:nth-of-type(1) {
  margin-bottom: 6.77vw; /* 130px */
  display: grid;
  grid-template-columns: 1fr 28.8vw; /* 1fr 553px */
  justify-content: space-between;
  grid-gap: 9.74vw; /* 187px */
}

.section-06 h2 {
  color: var(--color-013f92);
  font-size: 2.86vw; /* 55px */
  line-height: 3.44vw; /* 66px */
}

.section-06 h3 {
  font-weight: 400;
  font-size: 1.56vw; /* 30px */
  line-height: 1;
  text-transform: capitalize;
  margin-bottom: 1.3vw; /* 25px */
}

.section-06 p {
  font-size: 1.25vw; /* 24px */
  line-height: 1.458; /* 35px */
}

.section-06 > div:nth-of-type(2) {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 19.32vw); /* 371px */
  gap: 2.5vw; /* 48px */
}

.flip {
  perspective: 1000px;
}

.flip .inner {
  width: 100%;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition: 0.5s;
}

.flip:hover .inner {
  transform: rotateY(180deg);
}

.flip .front,
.flip .back {
  width: 100%;
  height: 100%;
  position: absolute;
  backface-visibility: hidden;
}

.flip .back {
  transform: rotateY(180deg);
}

.section-06 article {
  color: white;
  background-color: var(--color-013f92);
  text-align: center;
  padding: 3.23vw 2.08vw; /* 62px 40px */
  border-radius: 1.04vw; /* 20px */
}

.section-06 article:hover {
  color: var(--color-040404);
  background-color: var(--color-98d9a0);
}

.section-06 img {
  width: 9.58vw; /* 184px */
  height: 7.29vw; /* 140px */
  object-fit: contain;
  margin-bottom: 2.08vw; /* 40px */
}

.section-06 h4 {
  font-weight: 500;
  font-size: 2.08vw; /* 40px */
  line-height: 1;
}

.section-06 p {
  font-size: 1.25vw; /* 24px */
  line-height: 1.67; /* 40px */
  margin-bottom: 1.25vw; /* 24px */
}

.section-06 a {
  font-size: 1.25vw; /* 24px */
  line-height: 1.67; /* 40px */
  text-decoration: underline;
}

/* 
Section 07
*/
.section-07 {
  color: white;
  background-color: var(--color-013f92);
  min-height: 70.16vw; /* 1347px */
  padding: 6.82vw 10.94vw 17.81vw; /* 131px 210px 342px */
}

.section-07 h2 {
  color: var(--color-b9ffc1);
  font-size: 2.86vw; /* 55px */
  line-height: 1;
  margin-bottom: 6.09vw; /* 117px */
}

.section-07 div {
  text-align: center;
  display: grid;
  grid-template-columns: repeat(3, 18vw); /* 378px */
  justify-content: space-between;
  margin-bottom: 4.58vw; /* 88px */
  position: relative;
}

.section-07 hr {
  width: 100%;
  position: absolute;
  top: 8.4vw; /* 161px */
  left: 0;
}

.section-07 img {
  height: 8.4vw; /* 161px */
  margin-bottom: 1.51vw; /* 28.96px */
}

.section-07 div p {
  font-weight: 500;
  font-size: 0.94vw; /* 18px */
  line-height: 1.39; /* 25px */
}

.section-07 div strong {
  font-size: 1.25vw; /* 24px */
  line-height: 1.46; /* 35px */
}

.section-07 > p {
  font-size: 1.25vw; /* 24px */
  line-height: 1.46; /* 35px */
  margin-bottom: 2.08vw; /* 40px */
}

/* 
Section 8
*/
.section-08 {
  color: var(--color-013f92);
  background-color: var(--color-98d99f);
  text-align: center;
  min-height: 25.78vw; /* 495px */
  padding: 4.38vw 2.71vw 4.38vw; /* 84px 52px 84px */
  margin: -10.42vw 10.94vw 0; /* -200px 210px 0 */
  border-radius: 1.04vw; /* 20px */
  position: absolute;
  z-index: 2;
}

.section-08 h2 {
  font-size: 2.5vw; /* 48px */
  line-height: 1.46; /* 70px */
  margin-bottom: 2.08vw; /* 40px */
}

.section-08 a {
  color: white;
  background-color: var(--color-013f92);
  font-weight: 700;
  font-size: 0.94vw; /* 18px */
  line-height: 1;
  display: inline-block;
  padding: 1.25vw 1.67vw; /* 24px 32px */
  border-radius: 2.14vw; /* 41px */
}

/* 
Section 9
*/
.section-09 {
  min-height: 109.9vw; /* 2110px */
  padding: 21.41vw 10.94vw 5.73vw; /* 411px 210px 110px */
  border-bottom: 3.13vw solid var(--color-013f92); /* 60px */
  position: relative;
  z-index: 1;
}

.section-09 h2 {
  color: var(--color-013f92);
  font-size: 2.86vw; /* 55px */
  line-height: 1;
  margin-bottom: 3.72vw; /* 71.41px */
}

.section-09 div {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 4.39vw 4.61vw; /* 84.17px 88.5px */
}

.section-09 img {
  height: 4.17vw; /* 80px */
  margin-bottom: 1.04vw; /* 20px */
}

.section-09 h4 {
  color: var(--color-013f92);
  font-size: 1.25vw; /* 24px */
  line-height: 1;
  margin-bottom: 0.26vw; /* 5px */
}

.section-09 p {
  font-size: 0.94vw; /* 18px */
  line-height: 1.39; /* 25px */
}

/*
Mobile
*/
@media (max-width: 767px) {
  /*
  Header 01
  */
  .header-01 {
    padding: 4.86vw 6.11vw; /* 19.09px 24px */
  }

  .header-01 a img {
    width: 32.06vw; /* 126px */
  }

  .header-01 nav {
    background-color: var(--color-b9ffc1);
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 4.33vw 12.85vw;
    border-radius: 2vw;
    position: absolute;
    top: 80%;
    right: 4.86vw;
  }

  .header-01 nav.active {
    display: flex;
  }

  .header-01 nav a {
    color: var(--color-013f92);
    font-size: 4.07vw;
  }

  .header-01 > img {
    width: 5.03vw; /* 19.77px */
    display: block;
  }
	
  .header-01 > img.active {
    transform: rotate(90deg);
  }

  /*
  Section 01
  */
  .section-01 {
    padding: 22.65vw 6.11vw 17.32vw; /* 89.01px 24px 68.06px */
  }

  .section-01 img:nth-of-type(1) {
    display: none;
  }

  .section-01 img:nth-of-type(2) {
    display: inline-block;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
  }

  .section-01 > div {
    width: auto;
  }

  .section-01 h2 {
    font-size: 10vw; /* 46.44px */
    margin-bottom: 1.48vw; /* 5.8px */
  }

  .section-01 h3 {
    font-size: 4.58vw; /* 18px */
    line-height: 1.33; /* 24px */
    margin-bottom: 4.75vw; /* 18.66px */
  }

  .section-01 p {
    font-size: 3.82vw; /* 15px */
    line-height: 1.53; /* 23px */
    margin-bottom: 6.36vw; /* 24.98px */
  }

  .section-01 div div {
    flex-direction: column;
    align-items: flex-start;
  }

  .section-01 a:nth-of-type(1) {
    color: #b9ffc1;
    background-color: transparent;
    font-size: 4.07vw; /* 16px */
    text-decoration: underline;
    padding: 0;
    margin-bottom: 56.79vw; /* 223.15px */
    border: none;
  }

  .section-01 a:nth-of-type(2) {
    color: var(--color-013f92);
    background-color: var(--color-b9ffc1);
    font-size: 4.07vw; /* 16px */
    width: auto;
    padding: 4.33vw 12.85vw; /* 17px 50.5px */
    border-radius: 9.21vw; /* 36.18px */
    box-shadow: 0 4px 4px 0 #00000075;
  }
	
	/*
	Modal
	*/
	.modal {
		width: 80vw;
		padding: 5vw;
		border-radius: 5vw;
	}

	.modal__close {
		width: 5vw;
	}

	.modal h2 {
		font-size: 5vw;
		line-height: 1.82vw;
		margin: 5vw 0;
	}

	.modal input[type="text"],
	.modal input[type="email"],
	.modal input[type="submit"] {
		font-size: 3vw;
		height: 10vw;
		padding: 0 5vw;
		border-radius: 99px;
		margin-bottom: 1.04vw;
	}

	.modal .wpcf7-acceptance .wpcf7-list-item {
		font-size: 3vw;
	}

  /*
  Section 02
  */
  .section-02 {
    text-align: center;
    padding: 16.53vw 6.11vw 16.55vw; /* 64.95px 24px 65px */
  }

  .section-02 img {
    display: none;
  }

  .section-02 div {
    width: auto;
  }

  .section-02 p {
    font-size: 3.82vw; /* 15px */
    line-height: 23px; /* 23px */
    margin-bottom: 4.84vw; /* 19px */
  }

  .section-02 h2 {
    font-size: 5.09vw; /* 20px */
    line-height: 31px; /* 31px */
    margin-bottom: 12.98vw; /* 51px */
  }

  .section-02 div img {
    display: inline-block;
  }

  /*
  Section 03
  */
  .section-03 {
    padding: 17.43vw 6.11vw 17.61vw; /* 68.48px 24px 69.19px */
  }

  .section-03 img {
    display: none;
  }

  .section-03 > div {
    grid-template-columns: 1fr;
  }

  .section-03 h2 {
    font-size: 6.62vw; /* 26px */
    line-height: 1.42; /* 37px */
    margin-bottom: 10.18vw; /* 40px */
  }

  .section-03 hr {
    height: 225vw; /* 613px */
    top: 11.14vw; /* 43.77px */
    left: 5.57vw; /* 45.71px */
  }

  .section-03 article {
    grid-template-columns: 11.14vw 1fr; /* 43.77px */
    gap: 5.09vw; /* 20px */
    margin-bottom: 10.44vw; /* 41px */
  }

  .section-03 h4 {
    font-size: 5.57vw; /* 21.88px */
    width: 11.14vw; /* 43.77px */
    height: 11.14vw; /* 43.77px */
  }

  .section-03 p {
    font-size: 3.82vw; /* 15px */
    line-height: 1.53; /* 23px */
  }

  .section-03 div div:nth-of-type(2) {
    display: none;
  }

  /*
  Section 04
  */
  .section-04 {
    padding: 17.06vw 6.11vw 17.59vw; /* 67.01px 24px 69.09px */
  }

  .section-04 div {
    width: auto;
    padding: 13.19vw 9.35vw; /* 51.8px 36.73px */
  }

  .section-04 h3 {
    font-size: 5.09vw; /* 20px */
    line-height: 1.38;
  }

  /*
  Section 05
  */
  .section-05 {
    padding: 16.13vw 6.11vw 19.76vw; /* 63.36px 24px 77.65px */
  }

  .section-05 h2 {
    font-size: 6.62vw; /* 26px */
    line-height: 1.42; /* 37px */
    text-align: left;
    margin-bottom: 5.09vw; /* 20px */
  }

  .section-05 > p {
    font-size: 3.82vw; /* 15px */
    line-height: 1.53; /* 23px */
    text-align: left;
    margin-bottom: 16.29vw; /* 64px */
  }

  .section-05 .swiper-wrapper {
    flex-direction: column;
    gap: 5.09vw; /* 20px */
	transform: none !important;
  }

  .section-05 .swiper-button-next {
    display: none;
  }

  .section-05 .swiper-slide {
    width: 100% !important;
    padding: 7.12vw; /* 28px */
    border-radius: 2.55vw; /* 10px */
  }

  .section-05 figure {
    width: 16.93vw; /* 66.51px */
    height: 16.93vw; /* 66.51px */
    padding: 3.05vw; /* 12px */
    margin-bottom: 5.09vw; /* 20px */
  }

  .section-05 h3 {
    font-size: 3.82vw; /* 15px */
    line-height: 1.53; /* 23px */
    margin-bottom: 3.56vw; /* 14px */
  }

  .section-05 .swiper p {
    font-size: 3.56vw; /* 14px */
    line-height: 1.43; /* 20px */
  }

  .section-05 button {
    font-size: 7vw; /* 40.52px */
    width: 8.78vw; /* 34.52px */
    height: 8.78vw; /* 34.52px */
  }

  /*
  Section 06
  */
  .section-06 {
    padding: 15.72vw 6.11vw 17.36vw; /* 61.77px 24px 68.23px */
  }

  .section-06 > div:nth-of-type(1) {
    grid-template-columns: 1fr;
    gap: 5.09vw; /* 20px */
    margin-bottom: 16.29vw; /* 64px */
  }

  .section-06 h2 {
    font-size: 6.62vw; /* 26px */
    line-height: 1.42; /* 37px */
  }

  .section-06 h3 {
    font-size: 5.09vw; /* 20px */
    line-height: 1.35; /* 27px */
    margin-bottom: 5.09vw; /* 20px */
  }

  .section-06 p {
    font-size: 3.82vw; /* 15px */
    line-height: 23px;
    margin-bottom: 0;
  }

  .section-06 > div:nth-of-type(2) {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(6, 46.08vw); /* 181px */
  }

  .section-06 article {
    padding: 7.12vw; /* 28px */
    border-radius: 5.09vw; /* 20px */
  }

  .section-06 img {
    width: auto;
    height: 94px; /* 23.92vw */
  }

  .section-06 h4 {
    font-size: 5.6vw; /* 22px */
    line-height: 1.05; /* 23px */
  }

  .section-06 a {
    font-size: 3.82vw; /* 15px */
    line-height: 1.53; /* 23px */
    display: inline-block;
    margin-top: 2.55vw; /* 10px */
  }

  /*
  Section 07
  */
  .section-07 {
    text-align: center;
    padding: 17.32vw 6.11vw 80.03vw; /* 68.07px 24px 314.59px */
  }

  .section-07 h2 {
    font-size: 6.62vw; /* 26px */
    line-height: 1.42; /* 37px */
    max-width: 60.86vw; /* 239.05px */
    margin: 0 auto 16.29vw; /* 64px */
  }

  .section-07 div {
    grid-template-columns: repeat(1, 74.25vw); /* 291.62px */
    justify-content: center;
    gap: 19.08vw; /* 75px */
    margin-bottom: 16.29vw; /* 64px */
  }

  .section-07 hr {
    display: none;
  }

  .section-07 img {
    width: 100%;
    height: 32.08vw; /* 126.06px */
    object-fit: contain;
    margin-bottom: 4.33vw; /* 17px */
    border-bottom: 0.13vw solid white; /* 0.5px */
  }

  .section-07 div p {
    font-size: 3.56vw; /* 14px */
    line-height: 1.79; /* 25px */
  }

  .section-07 div strong {
    font-size: 5.09vw; /* 20px */
    line-height: 1.25; /* 25px */
  }

  .section-07 > p {
    font-size: 3.82vw; /* 15px */
    line-height: 1.53; /* 23px */
  }

  /*
  Section 08
  */
  .section-08 {
    width: 87.77vw; /* 345px */
    padding: 12.725vw 7.122vw; /* 50px 28px */
    margin: -63.74vw 6.11vw; /* 250.5px 24px */
    border-radius: 2.55vw; /* 10px */
  }

  .section-08 h2 {
    font-size: 7.12vw; /* 28px */
    line-height: 9.67vw; /* 38px */
    word-wrap: break-word;
    margin-bottom: 10.18vw; /* 40px */
  }

  .section-08 a {
    font-size: 4.07vw; /* 16px */
    padding: 3.31vw 5.09vw; /* 13px 20px */
    border-radius: 10.44vw; /* 41px */
  }

  /*
  Section 09
  */
  .section-09 {
    padding: 78.93vw 6.11vw 12.46vw; /* 310.08px 24px 48.93px */
    border-bottom-width: 16.03vw; /* 63px */
  }

  .section-09 h2 {
    font-size: 6.62vw; /* 26px */
    line-height: 1.42; /* 37px */
  }

  .section-09 div {
    grid-template-columns: repeat(2, 1fr);
    gap: 14.25vw; /* 56px */
  }

  .section-09 img {
    height: 11.44vw; /* 44.92px */
  }

  .section-09 h4 {
    font-size: 3.82vw; /* 15px */
    line-height: 1.27; /* 19px */
  }

  .section-09 p {
    font-size: 3.56vw; /* 14px */
    line-height: 1.36; /* 19px */
  }
}
