@charset "UTF-8";

.content-area {
  display: flex;
  margin: 0 0 2rem;
}
.content-area:last-child {
  margin-bottom: 0;
}
.content-area img {
  max-width: 536px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 20px;
}
.link {
  font-size: 1.25rem;
  text-align: right;
  margin-top: auto;
}
.reverse {
  flex-direction: row-reverse;
}
.disc-area {
  display: flex;
  flex-direction: column;
  padding-left: 4rem;
}
.reverse .disc-area {
  padding-left: 0;
  padding-right: 4rem;
}
.disc-area h3 {
  display: inline-block;
  font-family: 'Bungee Inline', cursive;
  font-size: 4rem;
  background: linear-gradient(var(--green), var(--light-blue));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.br-sp {
  display: none;
}
.disc-area p {
  position: relative;
}
.concept .section-title-en {
  margin-top: 5rem;
}
.concept .content-box {
  display: flex;
  padding: 2rem;
}
.concept-area {
  min-height: 400px;
}
.concept-area01 {
  border-right: var(--aqua) 1px solid;
  border-bottom: var(--aqua) 1px solid;
  padding: 0 2rem 2rem 0;
}
.concept-area02 {
  padding: 2rem 2rem 0 0;
}
.concept-area03 {
  padding: 0 0 2rem 2rem;
}
.concept-area04 {
  border-left: var(--aqua) 1px solid;
  border-top: var(--aqua) 1px solid;
  padding: 2rem 0 0 2rem;
}
.concept-area h3 {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 2rem;
}
.concept-area h3::first-letter {
  font-size: 4rem;
  color: var(--aqua);
}
.concept-area p {
  max-width: 536px;
}
@media (max-width: 1024px) {
  .content-area {
    display: block;
    border-bottom: var(--aqua) 1px solid;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
  }
  .content-area img {
    max-width: 100%;
    width: 100%;
  }
  .disc-area {
    position: relative;
    padding-left: 0;
    padding-top: 4rem;
  }
  .disc-area h3 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 12rem;
    line-height: 0.8;
    opacity: 0.2;
  }
  .br-sp {
    display: block;
  }
  .link {
    margin-top: 2rem;
  }
  .reverse .disc-area {
    padding-right: 0;
  }
  .concept .content-box {
    display: block;
  }
  .concept-area {
    border-bottom: var(--aqua) 1px solid;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
    min-height: 0;
  }
  .concept-area01 {
    border-right: none;
    padding: 0;
  }
  .concept-area02 {
    padding: 0;
  }
  .concept-area h3 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
  .concept-area h3::first-letter {
    font-size: 2.5rem;
  }
  .concept-area p {
    max-width: 100%;
  }
  .concept-area03 {
    padding: 0;
  }
  .concept-area04 {
    border-left: none;
    border-top: none;
    padding: 0;
    margin-bottom: 0;
  }
  .concept-area {
    padding-bottom: 2rem;
  }
}
@media (max-width: 599px) {
  .disc-area h3 {
    font-size: 8rem;
  }
}
