.home .post_content {
  position: relative;
}
.home #mv {
  line-height: 0;
  overflow: hidden;
}
.home #mv .hero {
  position: relative;
}
.home #mv .hero .catch {
  font-size: 6svw;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .home #mv .hero .catch {
    font-size: 5rem;
  }
}
.home #mv .hero > img {
  width: 100%;
  height: 80vh;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 768px) {
  .home #mv .hero > img {
    height: 100svh;
  }
}
.home #mv .hero .navigation_wrap {
  width: 90%;
  position: absolute;
  top: 5%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.home #mv .hero .navigation_wrap .inner {
  display: flex;
  flex-wrap: nowrap;
  -moz-column-gap: 2em;
       column-gap: 2em;
}
.home #mv .hero .navigation_wrap .inner .site_logo {
  max-width: 30%;
}
.home #mv .hero .navigation_wrap .navigation ul {
  display: flex;
  flex-wrap: nowrap;
  -moz-column-gap: 2em;
       column-gap: 2em;
  margin-block-start: 1em;
}
.home #mv .hero .navigation_wrap .navigation ul li.none {
  display: none;
}
.home #mv .hero .navigation_wrap .mb_nav {
  top: -0.8em;
}
.home #mv .hero .navigation_wrap .mb_nav .menu {
  background-color: transparent;
}
.home #mv .txt_mv {
  margin-block-start: -16%;
  position: relative;
}
.home #issue .container,
.home #mission .container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3em 5%;
}
@media (min-width: 768px) {
  .home #issue .container,
  .home #mission .container {
    flex-wrap: nowrap;
  }
}
.home #issue .container .title_wrap p,
.home #mission .container .title_wrap p {
  line-height: 2;
}
.home #issue .container .picture,
.home #mission .container .picture {
  width: 85%;
  margin-inline-start: auto;
}
@media (min-width: 980px) {
  .home #issue .container .picture,
  .home #mission .container .picture {
    width: auto;
  }
}
.home #issue .container {
  padding-inline-end: 5%;
}
.home #mission .container {
  padding-inline-start: 5%;
}
@media (min-width: 768px) {
  .home #mission .container {
    flex-direction: row-reverse;
  }
}
.home #mission + .txt {
  margin-block: -10% -0.23em;
}
.home #whats {
  position: relative;
  z-index: 0;
}
.home #whats::before {
  content: "";
  width: 100%;
  height: 6em;
  background-image: linear-gradient(to right, #067276 0%, #2D9CA0 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.home #whats .container {
  display: flex;
  flex-wrap: wrap;
  background-image: linear-gradient(to right, #ECFBEC 0%, #E7F6F7 100%);
  border-radius: 3em;
  padding: 3em 5%;
  gap: 3em 5%;
}
@media (min-width: 768px) {
  .home #whats .container {
    padding-block: 6em;
  }
}
.home #whats .container div.title_wrap {
  width: 100%;
}
@media (min-width: 768px) {
  .home #whats .container div.title_wrap {
    width: 50%;
  }
}
@media (min-width: 980px) {
  .home #whats .container div.title_wrap {
    width: 55%;
  }
}
.home #whats .container div.picture {
  width: 100%;
}
@media (min-width: 768px) {
  .home #whats .container div.picture {
    width: 45%;
  }
}
@media (min-width: 980px) {
  .home #whats .container div.picture {
    width: 40%;
  }
}
.home #whats .container div p:not(.big) {
  line-height: 2;
}
.home #benefit {
  position: relative;
  z-index: 0;
}
.home #benefit::before {
  content: "";
  width: 100%;
  height: 60%;
  background-image: linear-gradient(to right, #067276 0%, #2D9CA0 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.home #benefit .txt {
  position: absolute;
  top: -0.3em;
  right: 0;
  z-index: -1;
  opacity: 0.07;
}
.home #benefit .benefit_inner:nth-of-type(2) {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 3em;
}
@media (min-width: 500px) {
  .home #benefit .benefit_inner:nth-of-type(2) {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 980px) {
  .home #benefit .benefit_inner:nth-of-type(2) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.home #benefit .benefit_inner:nth-of-type(2) .benefit {
  background-color: #fff;
  border-radius: 1em;
  padding: 2em 1.5em;
  box-shadow: 0 0 2em -0.5em rgba(6, 114, 118, 0.3);
}
@media (min-width: 500px) {
  .home #benefit .benefit_inner:nth-of-type(2) .benefit:nth-of-type(3) {
    grid-column: 1/3;
  }
  .home #benefit .benefit_inner:nth-of-type(2) .benefit:nth-of-type(3) img {
    width: 25%;
  }
}
@media (min-width: 980px) {
  .home #benefit .benefit_inner:nth-of-type(2) .benefit:nth-of-type(3) {
    grid-column: 3/4;
  }
  .home #benefit .benefit_inner:nth-of-type(2) .benefit:nth-of-type(3) img {
    width: 50%;
  }
}
@media (min-width: 500px) {
  .home #benefit .benefit_inner:nth-of-type(2) .benefit .h3 {
    font-size: 2.6rem;
  }
}
.home #benefit .benefit_inner:nth-of-type(2) .benefit p + p {
  line-height: 2;
}
.home #benefit .benefit_inner:nth-of-type(2) .benefit img {
  width: 50%;
  max-width: 200px;
}
.home #benefit .benefit_inner:nth-of-type(3) {
  padding-inline: 2em;
  padding-block: 3em;
  position: relative;
  z-index: 0;
}
.home #benefit .benefit_inner:nth-of-type(3)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to right, #ECFBEC 0%, #E7F6F7 100%);
  border-top-left-radius: 2em;
  border-top-right-radius: 2em;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.home #benefit .benefit_inner:nth-of-type(3) .h2 {
  width: 100%;
  position: absolute;
  top: -0.8em;
  left: 0;
}
.home #benefit .benefit_inner:nth-of-type(3) .h3 + p {
  line-height: 2;
}
.home #howto {
  padding-block-start: 6em;
}
.home #howto .container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 3em 5%;
}
.home #howto .container .content .type {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 1em;
}
.home #howto .container .content .type .h4 {
  color: #fff;
  width: 7em;
  background-color: #067276;
  display: grid;
  align-items: center;
  justify-content: center;
  padding: 0.5em 1em;
}
.home #howto .container .content .type p {
  width: 100%;
  font-feature-settings: "palt";
}
@media (min-width: 500px) {
  .home #howto .container .content .type p {
    width: calc(100% - 7em - 1em);
  }
}
.home #join .join_inner .bg_join {
  height: calc(100% + 5em);
}
.home #seminar {
  background-image: linear-gradient(to right, #ECFBEC 0%, #E7F6F7 100%);
  border-top-right-radius: 5em;
  border-top-left-radius: 5em;
  position: relative;
}
.home #seminar .container .post_inner .article {
  margin-block-end: 1em;
  padding-block-end: 1em;
  border-bottom: #fff solid 1px;
}
.home #seminar .container .post_inner .article a {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1em;
}
.home #seminar .container .post_inner .article a .thumbnail {
  width: 30%;
  max-width: 200px;
  line-height: 0;
}
.home #seminar .container .post_inner .article a .thumbnail img {
  width: 100%;
  height: 100%;
  border-radius: 0.5em;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}
.home #channel {
  background-image: linear-gradient(to right, #ECFBEC 0%, #E7F6F7 100%);
  padding-block-end: 12em;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.home #channel::before {
  content: "";
  width: 90%;
  height: calc(100% - 6em);
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
.home #channel .txt {
  position: absolute;
  top: -0.28em;
  right: 0;
}
.home #channel .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.home #channel .video_wrap {
  width: 95%;
  margin-inline-start: auto;
}
.home #channel .video_wrap .video {
  margin: -1em;
}
.home #channel .video_wrap .video .sby_item {
  padding: 1em !important;
}
.home #information .container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 3em 5%;
}
.home #information .container .post_inner {
  width: 100%;
}
@media (min-width: 768px) {
  .home #information .container .post_inner {
    width: calc(100% - 20em);
  }
}
.home #information .container .post_inner .article {
  display: flex;
  flex-wrap: nowrap;
  padding-block-end: 1em;
  border-bottom: #B1D6D7 solid 1px;
  gap: 0.5em 1em;
}
.home #information .container .post_inner .article + .article {
  padding-block-start: 1em;
}
.home #information .container .post_inner .article > a {
  padding-block-end: 0.5em;
  display: block;
  position: relative;
  z-index: 0;
}
.home #information .container .post_inner .article > a:hover {
  color: #067276;
}
.home #information .container .post_inner .article .meta {
  display: flex;
  gap: 0.5em;
}
.home #information .container .post_inner .article .meta .tag {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  letter-spacing: 0.1em;
  text-transform: capitalize;
}
.home #information .container .post_inner .article .title .eng {
  line-height: 1.2;
  letter-spacing: 0.1em;
}
.home #faq .container {
  padding-block: 3em 6em;
}
.home #faq .container .faq_inner .faq {
  border-bottom: #555 solid 1px;
  padding-block: 2em;
}
.home #faq .container .faq_inner .faq .question,
.home #faq .container .faq_inner .faq .answer {
  display: grid;
  grid-template-columns: 3em calc(100% - 4em);
  gap: 1em;
}
.home #faq .container .faq_inner .faq .question span,
.home #faq .container .faq_inner .faq .answer span {
  color: #fff;
  width: 2em;
  height: 2em;
  font-weight: bold;
  letter-spacing: 0;
  border-radius: 100%;
  display: grid;
  justify-content: center;
  align-items: center;
}
.home #faq .container .faq_inner .faq .question {
  padding-inline-end: 2.5em;
  position: relative;
  cursor: pointer;
}
.home #faq .container .faq_inner .faq .question::after {
  content: "";
  display: inline-block;
  width: 2.5em;
  height: 2.5em;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%20-960%20960%20960%22%20fill%3D%22%23aaa%22%3E%3Cpath%20d%3D%22M440-440H200v-80h240v-240h80v240h240v80H520v240h-80v-240Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 0% 100%;
  position: absolute;
  top: 0;
  right: 0;
  transition: all 0.4s;
}
.home #faq .container .faq_inner .faq .question.opened::after {
  transform: rotate(135deg);
}
.home #faq .container .faq_inner .faq .answer {
  padding-block-start: 1em;
}
.home #sns {
  background: #222 url(../../images/home/bg_sns.svg) center bottom;
  line-height: 0;
}
.home #sns a {
  border-radius: 1em;
}
.home #sns .instagram a,
.home #sns .x a,
.home #sns .tiktok a {
  background-color: #067276;
  text-align: center;
  padding: 5%;
  display: block;
}
.home #sns .instagram a:hover,
.home #sns .x a:hover,
.home #sns .tiktok a:hover {
  background-color: #FF7F00 !important;
}
.home #sns .feed_wrap {
  margin-block: 3em;
}
.home #sns .sns_wrap {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 3em;
}
@media (min-width: 768px) {
  .home #sns .sns_wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
.home #sns .sns_wrap .x,
.home #sns .sns_wrap .tiktok {
  position: relative;
}
.home #sns .sns_wrap .x::before,
.home #sns .sns_wrap .tiktok::before {
  content: "";
  width: 3em;
  height: 3em;
  background-size: 3em;
  position: absolute;
  right: 1em;
  bottom: 1em;
}
.home #sns .sns_wrap .x a,
.home #sns .sns_wrap .tiktok a {
  background-color: #fff;
  padding: 8%;
  display: block;
}
.home #sns .sns_wrap .x::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2081.5%2081.5%22%3E%20%3Cg%20id%3D%22btn%22%20transform%3D%22translate(4649.954%20-10199)%22%3E%20%3Ccircle%20id%3D%22circle%22%20cx%3D%2240.75%22%20cy%3D%2240.75%22%20r%3D%2240.75%22%20transform%3D%22translate(-4649.954%2010199)%22%20fill%3D%22%23009200%22%2F%3E%20%3Cpath%20id%3D%22path%22%20d%3D%22M5317.739%2C8280.349a2%2C2%2C0%2C0%2C1-1.2-3.6l10.149-7.641-10.336-9.988a2%2C2%2C0%2C0%2C1%2C2.779-2.877l12.021%2C11.616a2%2C2%2C0%2C0%2C1-.187%2C3.036l-12.021%2C9.049A1.988%2C1.988%2C0%2C0%2C1%2C5317.739%2C8280.349Z%22%20transform%3D%22translate(-9930.725%201971.316)%22%20fill%3D%22%23fff%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
}
.home #sns .sns_wrap .tiktok::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2081.5%2081.5%22%3E%20%3Cg%20id%3D%22btn%22%20transform%3D%22translate(4649.954%20-10199)%22%3E%20%3Ccircle%20id%3D%22circle%22%20cx%3D%2240.75%22%20cy%3D%2240.75%22%20r%3D%2240.75%22%20transform%3D%22translate(-4649.954%2010199)%22%20fill%3D%22%23FF7F00%22%2F%3E%20%3Cpath%20id%3D%22path%22%20d%3D%22M5317.739%2C8280.349a2%2C2%2C0%2C0%2C1-1.2-3.6l10.149-7.641-10.336-9.988a2%2C2%2C0%2C0%2C1%2C2.779-2.877l12.021%2C11.616a2%2C2%2C0%2C0%2C1-.187%2C3.036l-12.021%2C9.049A1.988%2C1.988%2C0%2C0%2C1%2C5317.739%2C8280.349Z%22%20transform%3D%22translate(-9930.725%201971.316)%22%20fill%3D%22%23fff%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
}
.home #member .tab {
  background: #222 url(../../images/home/bg_sns.svg) center top;
}
.home #member .member_inner {
  padding-block: 3em;
}
.home #member .member_inner .loop {
  display: flex;
  flex-wrap: nowrap;
  -moz-column-gap: 1em;
       column-gap: 1em;
  min-width: -moz-fit-content;
  min-width: fit-content;
}
.home #member .member_inner .loop:nth-of-type(1) {
  margin-block-end: 2em;
}
.home #member .profile {
  width: 150px;
  text-align: center;
}
.home #member .profile .photo {
  line-height: 0;
  border: #222 solid 1px;
  border-radius: 100%;
  margin-block-end: -1em;
}
.home #member .profile .photo img {
  width: 100%;
  height: 100%;
  border: #fff solid 4px;
  border-radius: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home #member .profile .position {
  pointer-events: none;
}
.home #member .profile .name {
  margin-block: 0.25em;
}
.home #member .profile .acount {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  letter-spacing: 0;
}
.home #member .profile .acount:hover .icon svg {
  fill: #222;
}
.home #member .profile .acount .icon svg {
  fill: #fff;
  width: 1em;
  height: 1em;
}
.home #sponsor {
  padding-block-end: 6em;
}
.home #sponsor .title {
  padding-inline: 5%;
  display: grid;
  position: relative;
  align-items: center;
}
@media (min-width: 980px) {
  .home #sponsor .title {
    grid-template-columns: repeat(3, 1fr);
    padding-block: 0;
  }
}
.home #sponsor .title::before {
  content: "";
  width: 100%;
  height: 50%;
  background-color: #2D9CA0;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  transform: translateY(-50%);
}
.home #sponsor .title .eng {
  color: #2D9CA0;
  text-align: center;
  position: relative;
  bottom: 1em;
}
@media (min-width: 980px) {
  .home #sponsor .title .eng {
    color: inherit;
    text-align: inherit;
    bottom: -0.1em;
  }
}
.home #sponsor .container .sponsor_inner {
  display: grid;
  justify-content: center;
  gap: 2em;
}
.home #sponsor .container .sponsor_inner:nth-of-type(1) {
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 500px) {
  .home #sponsor .container .sponsor_inner:nth-of-type(1) {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 980px) {
  .home #sponsor .container .sponsor_inner:nth-of-type(1) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.home #sponsor .container .sponsor_inner:nth-of-type(2) {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 500px) {
  .home #sponsor .container .sponsor_inner:nth-of-type(2) {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 980px) {
  .home #sponsor .container .sponsor_inner:nth-of-type(2) {
    grid-template-columns: repeat(6, 1fr);
  }
}
.home #sponsor .container .sponsor_inner a {
  line-height: 0;
  display: block;
}
.home #sponsor .container .sponsor_inner a:has(.noimage) {
  pointer-events: none;
}
.home #sponsor .container .sponsor_inner a img {
  width: 100%;
  height: 100%;
  padding: 0.5em 0.8em;
  border: #555 solid 1px;
  aspect-ratio: 320/100;
  -o-object-fit: contain;
     object-fit: contain;
}
.home #sponsor .container .sponsor_inner a img.noimage {
  filter: grayscale(100%);
  opacity: 0.6;
}
.home #partner {
  background-color: #eee;
  padding-block: 4em;
}
.home #partner .container .partner_inner {
  display: grid;
  justify-content: center;
  gap: 2em;
}
.home #partner .container .partner_inner:nth-of-type(1) {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 500px) {
  .home #partner .container .partner_inner:nth-of-type(1) {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 980px) {
  .home #partner .container .partner_inner:nth-of-type(1) {
    grid-template-columns: repeat(6, 1fr);
  }
}
.home #partner .container .partner_inner a {
  background-color: #fff;
  line-height: 0;
  display: block;
}
.home #partner .container .partner_inner a:has(.noimage) {
  pointer-events: none;
}
.home #partner .container .partner_inner a img {
  width: 100%;
  height: 100%;
  border: #555 solid 1px;
  aspect-ratio: 320/100;
  -o-object-fit: contain;
     object-fit: contain;
}
.home #partner .container .partner_inner a img.noimage {
  filter: grayscale(100%);
  opacity: 0.6;
}
.home [id*=modal-] .inner {
  width: 90%;
  max-width: 1080px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  align-items: center;
  gap: 2em 4em;
}
@media (min-width: 1200px) {
  .home [id*=modal-] .inner {
    grid-template-columns: repeat(2, 1fr);
  }
}
.home [id*=modal-] .inner .thumbnail {
  line-height: 0;
}
.home [id*=modal-] .inner .thumbnail img {
  width: auto;
  max-height: calc(80svh - 3rem);
  max-width: calc(80svw - 3rem);
}
.home [id*=modal-] .inner .content p:not(:nth-of-type(1)) {
  margin-block-start: 1em;
}

.swiper .swiper-slide {
  height: auto;
}
.swiper .swiper-slide .swiper-slide-item {
  height: 100%;
}

.effect.fade_up {
  opacity: 0;
  transform: translate(0, 30px);
  transition: all 2000ms;
}
.effect:not(.opening).fade_down {
  opacity: 0;
  transform: translate(0, -30px);
  transition: all 2000ms;
}
.effect.slide_left {
  opacity: 0;
  transform: translate(30px, 0);
  transition: all 2000ms;
}
.effect.slide_right {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 2000ms;
}
.effect.is_show {
  opacity: 1;
  transform: translate(0, 0);
}

/* delay */
/* opening */
.effect.opening.fade_up {
  transition: opacity 2s;
}
.effect.opening.fade_up.start {
  opacity: 1;
}
.effect.opening.fade_down {
  opacity: 0;
  transform: translate(-50%, -50%);
}
.effect.opening.fade_down.start {
  animation: opening 1s 1 forwards 1s;
}

@keyframes opening {
  100% {
    opacity: 1;
    transform: translate(-50%, 0%);
  }
}/*# sourceMappingURL=home.css.map */