.b-section {
  position: relative;
}

img {
  width: 100%;
  height: auto;
}

#kv {
  position: sticky;
  top: 0px;
}

#c-kv {
  position: relative;
  top: 0;
  width: 100%;
  height: 100svh;
  background: url(../images/kv/blocks/bg.webp) top center no-repeat;
  background-size: cover;
  overflow: hidden;
}
#c-kv #c-blocks {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
#c-kv #c-blocks .blocks {
  width: min(181vw,724px);
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  margin-top: max(-90.5vw,-362px);
  left: 50%;
  margin-left: max(-55vw,-220px);
}
#c-kv #c-blocks .b {
  position: absolute;
  aspect-ratio: 1/1;
  transform-origin: center;
  left: 50%;
  top: 50%;
  filter: drop-shadow(0px 0px 16px rgba(0, 0, 0, 0.3));
}
#c-kv #c-blocks .b figure {
  width: 100%;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0px;
  left: 0px;
}
#c-kv #c-blocks .b img {
  width: 100%;
  height: auto;
}
#c-kv #c-blocks .b {
  filter: drop-shadow(0px 0px 16px rgba(0, 0, 0, 0.3));
  left: 50%;
}
#c-kv #c-blocks .b figure {
  width: 100%;
  height: 100%;
}
#c-kv #c-blocks .b0 {
  width: min(36.25vw,145px);
  margin: max(-18.13vw,-72.5px) 0 0 max(-18.13vw,-72.5px);
}
#c-kv #c-blocks .b0 img {
  rotate: 0deg;
}
#c-kv #c-blocks .b1 {
  width: min(112.5vw,450px);
  margin: max(-56.25vw,-225px) 0 0 max(-56.25vw,-225px);
}
#c-kv #c-blocks .b1 img {
  rotate: 0deg;
}
#c-kv #c-blocks .b2 {
  width: min(181vw,724px);
  margin: max(-90.5vw,-362px) 0 0 max(-90.5vw,-362px);
}
#c-kv #c-blocks .b2 img {
  rotate: 0deg;
}
#c-kv #c-blocks .b3 {
  width: min(181vw,724px);
  margin: max(-90.5vw,-362px) 0 0 max(-90.5vw,-362px);
  display: none;
}
#c-kv #c-blocks .b3 img {
  rotate: 0deg;
}
#c-kv .balls {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
#c-kv .balls .ball {
  border-raidus: 100vmax;
  display: block;
  position: absolute;
  aspect-ratio: 1/1;
}
#c-kv .balls .ball span {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
}
#c-kv .balls .ball.b0 {
  width: min(6.5vw,26px);
  top: min(29vw,116px);
  left: min(56vw,224px);
}
#c-kv .balls .ball.b1 {
  width: min(21.5vw,86px);
  top: min(6.25vw,25px);
  right: max(-10.5vw,-42px);
}
#c-kv .balls .ball.b2 {
  width: min(4vw,16px);
  top: min(105.75vw,423px);
  right: min(18.25vw,73px);
}
#c-kv .balls .ball.b3 {
  width: min(42vw,168px);
  bottom: max(-10vw,-40px);
  left: min(38vw,152px);
  display: none;
}
#c-kv .balls .ball.b4 {
  width: min(42vw,168px);
  bottom: max(-10vw,-40px);
  left: min(38vw,152px);
}
#c-kv .balls .ball.b5 {
  width: min(27.5vw,110px);
  top: max(-10vw,-40px);
  left: max(-10vw,-40px);
}
#c-kv .balls .ball.b6 {
  width: min(6.5vw,26px);
  display: none;
}
#c-kv .balls .ball.b7 {
  width: min(6.5vw,26px);
  display: none;
}
#c-kv .laser {
  position: absolute;
  height: 75%;
  aspect-ratio: 2800/1080;
  left: 50%;
  top: 50%;
  transform: translate3d(-43%, -50%, 0);
}
#c-kv #texture_noise {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: url(../images/kv/noise.webp) top left;
  background-size: 960px;
  mix-blend-mode: overlay;
  opacity: 0.1;
}
#c-kv .c-content {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  display: flex;
  align-items: center;
}
#c-kv .c-content .c-content_inner {
  width: 100%;
}
#c-kv .c-content h1 {
  width: min(92.3%, 640px);
  position: relative;
  left: 3.85%;
  margin-bottom: 12.5vw;
}
#c-kv .c-content .c-info {
  width: 100%;
  box-sizing: border-box;
  padding-left: 3.85%;
}
#c-kv .c-content p.place {
  width: 100%;
  margin-bottom: 0.06em;
  line-height: 1;
}
#c-kv .c-content p.place span {
  line-height: 1;
}
#c-kv .c-content p.date {
  width: 100%;
  line-height: 1;
}
#c-kv .c-content p.date span {
  line-height: 1;
}
#c-kv canvas {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  display: none;
}

.for_sp {
  display: block;
}
.for_pc {
  display: none;
}

@media all and (min-width: 864px) {
  #c-kv {
    width: 100%;
    height: 100svh;
    max-height: 870px;
    min-height: 870px;
  }
  #c-kv canvas {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
  }
  #c-kv #c-blocks {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
  }
  #c-kv #c-blocks .blocks {
    width: 153.33vw;
    aspect-ratio: 1/1;
    position: absolute;
    top: 50%;
    left: 0px;
    margin: -76.67vw 0 0 0;
  }
  #c-kv #c-blocks .b {
    filter: drop-shadow(0px 0px 56px rgba(0, 0, 0, 0.4));
    left: 50%;
  }
  #c-kv #c-blocks .b figure {
    width: 100%;
    height: 100%;
  }
  #c-kv #c-blocks .b0 {
    width: 14.37vw;
    margin: -7.15vw 0 0 -7.15vw;
  }
  #c-kv #c-blocks .b0 img {
    rotate: 0deg;
  }
  #c-kv #c-blocks .b1 {
    width: 44.58vw;
    margin: -22.29vw 0 0 -22.29vw;
  }
  #c-kv #c-blocks .b1 img {
    rotate: 0deg;
  }
  #c-kv #c-blocks .b2 {
    width: 71.81vw;
    margin: -35.9vw 0 0 -35.9vw;
  }
  #c-kv #c-blocks .b2 img {
    rotate: 0deg;
  }
  #c-kv #c-blocks .b3 {
    width: 115vw;
    margin: -57.5vw 0 0 -57.5vw;
    display: block;
    rotate: 30deg;
  }
  #c-kv #c-blocks .b3 img {
    rotate: 0deg;
  }
  #c-kv .laser {
    position: absolute;
    height: 100%;
    aspect-ratio: 2800/1080;
    left: 78%;
    top: 50%;
    transform: translate3d(-50%, -50%, 0);
  }
  #c-kv .c-content {
    padding-top: 64px;
  }
  #c-kv .c-content h1 {
    width: min(87.95%, 760px);
    position: relative;
    left: 80px;
    margin-bottom: 50px;
  }
  #c-kv .c-content .c-info {
    width: 100%;
    box-sizing: border-box;
    padding-left: 80px;
    margin-top: 68px;
  }
  #c-kv .c-content p.place {
    width: 50%;
    margin-bottom: 5px;
  }
  #c-kv .c-content p.date {
    width: 80%;
    white-space: nowrap;
  }
  #c-kv .balls .ball.b0 {
    width: 2.22vw;
    left: 50%;
    top: 190px;
    margin-left: 437px;
  }
  #c-kv .balls .ball.b1 {
    width: 11.39vw;
    left: 50%;
    margin-left: 645px;
    top: -20px;
  }
  #c-kv .balls .ball.b2 {
    width: min(6.39vw,92px);
    left: 50%;
    margin-left: 661px;
    top: 598px;
  }
  #c-kv .balls .ball.b3 {
    width: min(2.22vw,32px);
    left: 50%;
    display: block;
    margin-left: 262px;
    top: 612px;
  }
  #c-kv .balls .ball.b4 {
    width: min(22.22vw,320px);
    left: 50%;
    margin-left: 68px;
    top: 745px;
    bottom: auto;
  }
  #c-kv .balls .ball.b5 {
    width: min(23.06vw,332px);
    left: 50%;
    margin-left: -940px;
    top: 480px;
    bottom: auto;
  }
  #c-kv .balls .ball.b6 {
    width: min(14.58vw,210px);
    left: 50%;
    display: block;
    margin-left: -272px;
    top: -60px;
    bottom: auto;
  }
  #c-kv .balls .ball.b7 {
    width: min(3.47vw,50px);
    left: 50%;
    display: block;
    margin-left: 170px;
    top: 142px;
    bottom: auto;
  }
}
.b-section {
  background: var(--color-white);
}

#concept .c-inner {
  width: var(--innerW);
  margin-inline: auto;
  padding: min(14vw,56px) 0 min(10.75vw,43px) 0;
}
#concept .c-ttl_section {
  margin-bottom: min(12vw,48px);
}
#concept .c-ttl_content {
  margin-bottom: min(10vw,40px);
}
#concept .c-ttl_content p {
  width: min(72.75vw,291px);
  margin-top: min(1.5vw,6px);
}
#concept .c-col2_r {
  position: relative;
  padding-left: 22px;
}
#concept .c-col2_r:before {
  content: "";
  width: 6px;
  position: absolute;
  height: 100%;
  display: block;
  left: 0px;
  bottom: 0px;
  background: linear-gradient(180deg, rgb(255, 255, 0) 6%, rgb(31, 245, 255) 94%);
}
#concept .c-content h5 {
  margin-bottom: 2em;
}
#concept .c-content .txt p {
  margin-bottom: 1.5em;
}
#concept .c-content .txt a {
  text-decoration: underline;
}
#concept .c-content .txt span.di {
  display: inline-block;
}
#concept .c-list_mc {
  margin-top: min(13.75vw,55px);
}
#concept .c-list_mc ul {
  display: flex;
  justify-content: space-between;
}
#concept .c-list_mc ul li {
  width: 47.77%;
}
#concept .c-list_mc ul li figure {
  box-sizing: border-box;
  margin-bottom: min(4vw,16px);
}
#concept .c-list_mc .c-round_box {
  width: fit-content;
  margin-inline: auto;
  text-align: center;
  margin-top: min(4vw,16px);
  display: grid;
  place-content: center;
  height: min(6.25vw,25px);
  border: 1px solid var(--color-black);
  border-radius: 100vmax;
  padding: 0px 16px;
}
#concept .c-list_mc .c-round_box span {
  display: block;
  position: relative;
  top: -1px;
}

#program .c-inner {
  padding: min(10.75vw,43px) 0 0 0;
}
#program .c-ttl_section {
  width: var(--innerW);
  margin-inline: auto;
}
#program .c-ttl_program {
  align-items: center;
  position: relative;
  padding: min(7.5vw,30px) 0;
}
#program .c-ttl_program:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  background: #451565;
  opacity: 0.2;
}
#program .c-ttl_program hgroup {
  width: var(--innerW);
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#program .c-ttl_program .num {
  width: 50px;
  aspect-ratio: 1/1;
  border: 2px solid var(--color-white);
  border-radius: 100vmax;
  display: grid;
  place-content: center;
}
#program .c-ttl_program .num span {
  position: relative;
  display: block;
  top: -4px;
  line-height: 1;
}
#program .c-ttl_program h4 {
  width: calc(100% - 66px);
  position: relative;
  line-height: 1.4;
}
#program .c-ttl_program span.logo {
  width: min(62vw,248px);
  display: block;
  line-height: 1;
  margin-bottom: min(1.5vw,6px);
}
#program .c-content {
  width: 100%;
}
#program .c-program {
  border-bottom: 1px solid var(--color-white);
}
#program .c-list_program {
  background: url(../images/program/bg_program.webp) center center no-repeat;
  background-size: cover;
}
#program .program_content_inner {
  width: var(--innerW);
  margin-inline: auto;
  padding: min(6vw,24px) 0 min(10vw,40px) 0;
}
#program .txt p {
  margin-bottom: 1.5em;
}
#program .txt p:nth-last-of-type(1) {
  margin-bottom: 0px;
}
#program .txt p span.di {
  display: inline-block;
}
#program .txt p.bg_purple {
  position: relative;
  background: rgba(216, 40, 136, 0.3);
  width: fit-content;
}
#program .c-col2 .c-col2_l {
  margin-bottom: min(10vw,40px);
}
#program .c-col2 .c-col2_r dl {
  display: flex;
  justify-content: center;
  margin-top: min(6vw,24px);
}
#program .c-col2 .c-col2_r dl dt {
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 600;
  margin-right: min(6vw,24px);
}
#program .c-col2 .c-col2_r dl dd a.c-btn .inr {
  display: grid;
  place-content: center;
  padding: 0 min(4vw,16px);
}
#program .c-col2 .btn_wrap a.c-btn span {
  position: relative;
  top: -1px;
}
#program .c-list_guest {
  display: flex;
  justify-content: center;
}
#program .c-list_guest li {
  width: 47.77%;
  max-width: 380px;
}
#program .c-list_guest hgroup {
  text-align: center;
  margin-top: min(4vw,16px);
}
#program .c-list_guest hgroup h4, #program .c-list_guest hgroup p {
  line-height: 1;
}
#program .c-list_guest hgroup h4 {
  margin-bottom: min(2vw,8px);
}
#program .c-list_guest .btn_wrap {
  margin-top: min(4vw,16px);
}
#program .c-list_guest .btn_wrap a.c-btn {
  height: 25px;
  width: fit-content;
  margin-inline: auto;
}
#program .c-list_guest .btn_wrap a.c-btn .inr {
  padding: 0 min(4vw,16px);
}
#program .c-list_guest .btn_wrap a.c-btn span {
  position: relative;
  top: -1px;
}

#overview .c-inner {
  width: var(--innerW);
  margin-inline: auto;
  padding: min(20vw,80px) 0 0 0;
}
#overview .c-table dl {
  background: rgba(146, 66, 178, 0.1);
  box-sizing: border-box;
  padding: min(3vw,12px) min(2vw,8px);
}
#overview .c-table dl:nth-of-type(2n) {
  background: rgba(146, 66, 178, 0.06);
}
#overview .c-table dl dt, #overview .c-table dl dd {
  box-sizing: border-box;
}
#overview .c-table dl dt {
  margin-bottom: min(2vw,8px);
}

#access .c-inner {
  width: var(--innerW);
  margin-inline: auto;
  padding: min(20vw,80px) 0;
}
#access .c-ttl_section hgroup {
  margin-bottom: min(12vw,48px);
}
#access .c-ttl_section .info_access h4 {
  width: 78.78%;
  margin-bottom: min(10vw,40px);
}
#access .c-ttl_section .info_access dl {
  margin-bottom: min(6vw,24px);
}
#access .c-ttl_section .info_access dl dt {
  margin-bottom: min(4vw,16px);
}
#access .c-ttl_section .info_access .c-btn_wrap a.c-btn {
  height: min(6.5vw,26px);
  width: fit-content;
  padding: 0 min(4vw,16px);
  display: grid;
  place-content: center;
}
#access .c-ttl_section .info_access .c-btn_wrap a.c-btn span {
  position: relative;
  top: -1px;
}
#access .c-map {
  position: relative;
  width: 100%;
  aspect-ratio: 360/420;
  margin-bottom: min(12vw,48px);
}
#access .c-map iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
#access .b-by {
  width: 100%;
  margin-inline: auto;
}
#access .accordion:nth-of-type(2) {
  border-bottom: 1px solid var(--color-black);
}
#access .accordion .c-accordion_content_inner {
  background: #FBFBFB;
  box-sizing: border-box;
  padding: min(8vw,32px) 0 min(12vw,48px) 0;
}
#access .accordion .c-ttl_line {
  display: flex;
  align-items: center;
  margin-bottom: min(4vw,16px);
}
#access .accordion .c-ttl_line .name_line {
  width: calc(100% - 28px);
  box-sizing: border-box;
  padding-left: 0.8em;
}
#access .accordion p.txt_place {
  margin-bottom: min(6vw,24px);
}
#access .accordion .circle_line {
  width: 28px;
  display: block;
  border-radius: 100vmax;
  border: 8px solid #000;
  aspect-ratio: 1/1;
  box-sizing: border-box;
}
#access .accordion .circle_line.gray {
  border-color: #847B7B;
}
#access .accordion .circle_line.orange {
  border-color: #FF9200;
}
#access .accordion .c-line_map {
  width: 100%;
  margin-inline: auto;
  max-width: 960px;
}
#access .accordion .c-accordion_col2 .c-col2_l {
  margin-bottom: min(12vw,48px);
}
#access .accordion .c-line_map {
  margin-top: min(8vw,32px);
}
#access .accordion .lead p {
  margin-bottom: 1.5em;
}
#access .accordion .lead p:nth-last-of-type(1) {
  margin-bottom: 0px;
}
#access .accordion .c-btn_wrap {
  margin-top: min(4vw,16px);
}
#access .accordion .c-btn_wrap a.c-btn {
  width: fit-content;
  padding: 0 min(4vw,16px);
  height: min(6.5vw,26px);
  display: grid;
  place-content: center;
}
#access .accordion .c-btn_wrap a.c-btn span {
  position: relative;
  top: -1px;
}

#entry .b-entry {
  background: url(../images/entry/bg_gradient.webp) center no-repeat;
  background-size: cover;
  padding: min(12vw,48px) 0 min(14vw,56px) 0;
}
#entry .c-apply {
  width: var(--innerW);
  max-width: 900px;
  box-sizing: border-box;
  border: 2px solid var(--color-white);
  margin-inline: auto;
  padding: 6px;
}
#entry .c-apply .c-apply_inner {
  background: var(--color-white);
  box-sizing: border-box;
  padding: min(10vw,40px) min(2vw,8px);
}
#entry .c-apply .c-period {
  margin: min(6vw,24px) 0 min(8vw,32px) 0;
}
#entry .c-apply .c-period dt {
  width: fit-content;
  margin-inline: auto;
  margin-bottom: min(2vw,8px);
  height: min(6.5vw,26px);
  padding: 0 min(4vw,16px);
  box-sizing: border-box;
  display: grid;
  place-content: center;
}
#entry .c-apply .c-period dd {
  text-align: center;
}

#previous {
  padding: min(26vw,104px) 0 min(27.5vw,110px) 0;
}

.c-list_links {
  margin-inline: auto;
}
.c-list_links ul {
  width: var(--innerW);
  margin-inline: auto;
}
.c-list_links ul li {
  box-sizing: border-box;
  background: var(--color-white);
  filter: drop-shadow(0 6px 32px rgba(160, 160, 160, 0.12));
  margin-bottom: min(26vw,104px);
}
.c-list_links ul li:last-child {
  margin-bottom: 0px;
}
.c-list_links ul li .c-link_inner {
  background: #F7F7F7;
}
.c-list_links ul li h4 {
  margin-bottom: min(6vw,24px);
}
.c-list_links ul li figure {
  margin-bottom: min(6vw,24px);
}
.c-list_links ul li p a {
  text-decoration: underline;
}
.c-list_links ul li .btn_wrap {
  margin-top: min(8vw,32px);
}
.c-list_links ul li .btn_wrap a.c-btn {
  height: min(12vw,48px);
  display: grid;
  place-content: center;
  line-height: 1;
}
.c-list_links ul li .btn_wrap a.c-btn span {
  display: block;
  position: relative;
  top: 1px;
  line-height: 1;
}
.c-list_links ul li .btn_wrap a.c-btn svg {
  vertical-align: top;
}
.c-list_links ul li:nth-child(1) a.c-btn span.txt {
  width: min(42.5vw,170px);
  height: min(3.75vw,15px);
}
.c-list_links ul li:nth-child(2) a.c-btn span.txt {
  width: min(53.75vw,215px);
  height: min(4vw,16px);
}

@media all and (min-width: 864px) {
  #concept .c-ttl_section {
    margin-bottom: 64px;
  }
  #concept .c-ttl_content p {
    width: 326px;
  }
  #concept .c-content {
    max-width: 1280px;
    margin-inline: auto;
  }
  #concept .c-inner {
    padding: 75px 0 60px 0;
  }
  #concept .c-col2 .c-ttl_content p {
    margin-top: 16px;
  }
  #concept .c-col2 .c-col2_r {
    padding-left: 62px;
  }
  #concept .c-col2 .c-col2_r h5 br.sp {
    display: none;
  }
  #concept .c-list_mc {
    margin-top: 68px;
  }
  #concept .c-list_mc ul {
    width: 760px;
    margin-inline: auto;
  }
  #concept .c-list_mc ul li {
    width: 44.73%;
  }
  #concept .c-list_mc .mc_info {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #concept .c-list_mc .c-round_box {
    margin-inline: revert;
    text-align: center;
    margin-left: 24px;
    margin-top: 0px;
    height: 26px;
    transition: background 0.15s linear;
  }
  #concept .c-list_mc .c-round_box span {
    position: relative;
    top: -1px;
  }
  #concept .c-list_mc .c-round_box:hover {
    background: #1FF5FF;
  }
  #program .c-inner {
    padding: 54px 0 0 0;
  }
  #program .c-ttl_section {
    margin-bottom: 62px;
  }
  #program .c-content {
    padding-left: 5.55%;
    box-sizing: border-box;
  }
  #program .c-ttl_program {
    width: 100%;
    box-sizing: border-box;
    padding: 32px 0 32px 3.53%;
  }
  #program .c-ttl_program hgroup {
    width: 100%;
  }
  #program .c-ttl_program .num {
    width: 72px;
    border: 3px solid var(--color-white);
  }
  #program .c-ttl_program .num span {
    top: -5px;
  }
  #program .c-ttl_program h4 {
    width: calc(100% - 104px);
    line-height: 1.4;
  }
  #program .c-ttl_program h4 br {
    display: none;
  }
  #program .c-ttl_program span.logo {
    width: 300px;
    margin-bottom: 0px;
  }
  #program .program_content_inner {
    width: 100%;
    box-sizing: border-box;
    padding: 40px 0 75px calc(3.53% + 104px);
  }
  #program .txt p {
    margin-bottom: 1.5em;
  }
  #program .txt p:nth-last-of-type(1) {
    margin-bottom: 0px;
  }
  #program .txt p.bg_purple {
    position: relative;
    background: rgba(216, 40, 136, 0.3);
    width: fit-content;
  }
  #program .c-col2 {
    width: 88.25%;
    max-width: 1060px;
  }
  #program .c-col2 .c-col2_r dl {
    display: flex;
    justify-content: center;
    margin-top: 24px;
  }
  #program .c-col2 .c-col2_r dl dt {
    margin-right: min(6vw,24px);
    line-height: 1;
    position: relative;
    top: 2px;
  }
  #program .c-col2 .c-col2_r dl dd a.c-btn {
    transition: background 0.15s linear;
  }
  #program .c-col2 .c-col2_r dl dd a.c-btn .inr {
    display: grid;
    place-content: center;
    padding: 0 16px;
  }
  #program .c-col2 .c-col2_r dl dd a.c-btn:hover {
    background: var(--color-purple2);
  }
  #program .c-list_guest {
    display: flex;
  }
  #program .c-list_guest li {
    width: 100%;
  }
  #program .c-list_guest hgroup {
    text-align: center;
    margin-top: min(4vw,16px);
  }
  #program .c-list_guest hgroup h4, #program .c-list_guest hgroup p {
    line-height: 1;
  }
  #program .c-list_guest hgroup h4 {
    margin-bottom: min(2vw,8px);
  }
  #program .c-list_guest .btn_wrap {
    margin-top: min(4vw,16px);
  }
  #program .c-list_guest .btn_wrap a.c-btn {
    height: 25px;
    width: fit-content;
    margin-inline: auto;
    display: grid;
    place-content: center;
    transition: background 0.15s linear;
  }
  #program .c-list_guest .btn_wrap a.c-btn .inr {
    padding: 0 min(4vw,16px);
  }
  #program .c-list_guest .btn_wrap a.c-btn span {
    position: relative;
    top: -1px;
  }
  #program .c-list_guest .btn_wrap a.c-btn:hover {
    background: var(--color-purple2);
  }
  #overview .c-inner {
    padding: 60px 0;
  }
  #overview .c-table dl {
    display: flex;
    padding: 16px 24px;
    margin-bottom: 2px;
  }
  #overview .c-table dl:nth-last-of-type(1) {
    margin-bottom: 0px;
  }
  #overview .c-table dl dt {
    width: 23.4%;
    margin-bottom: 0px;
  }
  #overview .c-table dl dd {
    width: 76.6%;
  }
  #overview .c-table dl dd br {
    display: block;
  }
  #overview .c-table dl dd br.sp {
    display: none;
  }
  #overview .c-table dl dd br.pc {
    display: block;
  }
  #overview .c-table span[data-mail] {
    cursor: pointer;
    text-decoration: underline;
  }
  :is(#overview,
  #access) .c-inner {
    padding: 120px 0 0 0;
  }
  :is(#overview,
  #access) .c-col2 {
    max-width: var(--max-width);
    margin-inline: auto;
  }
  #access .accordion .c-col2_l,
  #access .accordion .c-col2_r {
    padding: 0 32px;
    box-sizing: border-box;
    width: 50%;
  }
  #access .accordion:nth-of-type(2) .c-col2_r {
    padding: 0;
  }
  #access .c-ttl_section .info_access {
    margin-top: 95px;
  }
  #access .c-ttl_section .info_access h4 {
    width: 326px;
    margin-bottom: 48px;
  }
  #access .c-ttl_section .info_access dl dt {
    margin-bottom: 24px;
  }
  #access .c-ttl_section .info_access .c-btn_wrap {
    margin-top: 40px;
  }
  #access .c-ttl_section .info_access .c-btn_wrap a.c-btn {
    width: fit-content;
    display: grid;
    place-content: center;
    padding: 0 16px;
    height: 26px;
    transition: background 0.15s linear;
  }
  #access .c-ttl_section .info_access .c-btn_wrap a.c-btn:hover {
    background: #1FF5FF;
  }
  #access .c-map {
    width: 100%;
    max-width: var(--max-width);
    margin-inline: auto;
    aspect-ratio: 800/640;
    margin-bottom: 0px;
  }
  #access .b-by {
    margin-top: 80px;
    max-width: var(--max-width);
    margin-inline: auto;
  }
  #access .accordion .c-accordion_col2 {
    display: flex;
  }
  #access .accordion a.c-btn {
    transition: background 0.15s linear;
  }
  #access .accordion a.c-btn:hover {
    background: #1FF5FF;
  }
  #previous {
    padding-bottom: 0px;
  }
  #entry .c-inner {
    padding: 120px 0 160px 0;
  }
  #entry .b-entry {
    padding: 60px 0 80px 0;
  }
  #entry .c-links {
    padding-top: 116px;
  }
  #entry .c-ttl_section {
    margin-bottom: 62px;
  }
  #entry .c-apply .c-apply_inner {
    padding: 56px 8px;
  }
  #entry .c-apply p {
    text-align: center;
  }
  #entry .c-apply .c-period {
    margin: 40px 0 48px 0;
  }
  #entry .c-apply .c-period dt {
    width: fit-content;
    margin-inline: auto;
    margin-bottom: min(2vw,8px);
    height: 28px;
    padding: 0 min(4vw,16px);
    box-sizing: border-box;
    display: grid;
    place-content: center;
  }
  #entry .c-apply .c-period dd {
    text-align: center;
  }
  #entry .c-apply .btn_wrap {
    width: 420px;
    margin-inline: auto;
  }
  .c-list_links {
    width: 88.88%;
    max-width: 1280px;
  }
  .c-list_links ul {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  .c-list_links ul li {
    width: 48.125%;
    padding: 16px;
  }
  .c-list_links ul li:nth-child(1) {
    margin-bottom: 0px;
  }
  .c-list_links ul li .c-link_inner {
    background: #F7F7F7;
    padding: 40px 24px 32px 24px;
  }
  .c-list_links ul li h4 {
    margin-bottom: 24px;
  }
  .c-list_links ul li .lead {
    min-height: 9em;
  }
  .c-list_links ul li a figure {
    overflow: hidden;
  }
  .c-list_links ul li a figure img {
    transition: scale 0.4s ease;
  }
  .c-list_links ul li a:hover img {
    scale: 1.05;
  }
  .c-list_links ul li:nth-child(1) a.c-btn span.txt {
    width: 170px;
  }
  .c-list_links ul li:nth-child(2) a.c-btn span.txt {
    width: 214px;
  }
  .c-list_links ul figure {
    margin-bottom: 24px;
  }
  .c-list_links ul .btn_wrap {
    margin-top: 32px;
  }
  .c-list_links ul a.c-btn {
    height: 48px;
    display: grid;
    place-content: center;
    background: var(--color-white);
    transition: background 0.15s linear;
  }
  .c-list_links ul a.c-btn span {
    display: block;
    margin-inline: auto;
    line-height: 1;
  }
  .c-list_links ul a.c-btn:hover {
    background: #1FF5FF;
  }
}
@media all and (min-width: 1024px) {
  #program .c-col2 {
    display: flex;
  }
  #program .c-col2 .c-col2_l {
    margin-bottom: 0;
  }
  #program .p0 .c-col2 {
    justify-content: space-between;
  }
  #program .p0 .c-col2 .c-col2_l {
    width: 54.7%;
  }
  #program .p0 .c-col2 .c-col2_r {
    width: 37.73%;
  }
  #program .p1 .c-col2 {
    justify-content: space-between;
  }
  #program .p1 .c-col2 .c-col2_l {
    width: 21%;
  }
  #program .p1 .c-col2 .c-col2_r {
    width: 70%;
  }
}
@media all and (min-width: 1280px) {
  #concept .c-col2 {
    display: flex;
  }
  #concept .c-col2 .c-ttl_content {
    width: 32%;
  }
  #concept .c-col2 .c-col2_r {
    width: 68%;
  }
  #concept .c-col2 .c-col2_r h5 br.sp {
    display: none;
  }
  :is(#overview,
  #access) .c-col2 {
    display: flex;
  }
  :is(#overview,
  #access) .c-col2 .c-ttl_section {
    width: 38.21%;
  }
  :is(#overview,
  #access) .c-col2 .c-content {
    width: 61.79%;
  }
  .for_sp {
    display: none;
  }
  .for_pc {
    display: block;
  }
}
@media all and (min-width: 1280px) {
  .c-list_links {
    width: 88.88%;
    max-width: 1280px;
  }
  .c-list_links ul li .lead {
    min-height: 6em;
  }
}
@media all and (min-width: 1440px) {
  #program .program_content_inner {
    padding-left: calc((100% - 1060px) / 2);
  }
}
@starting-style {}
@keyframes fluffy0 {
  0% {
    scale: 1;
    transform: translate3d(0, 0, 0);
  }
  50% {
    scale: 1.1;
    rotate: -2deg;
    transform: translate3d(0, -10px, 0);
  }
  100% {
    scale: 1;
    rotate: 0;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fluffy1 {
  0% {
    scale: 1;
    transform: translate3d(0, 0, 0);
  }
  50% {
    scale: 1.1;
    rotate: -90deg;
    transform: translate3d(0, 10px, 0);
  }
  100% {
    scale: 1;
    rotate: 0;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fluffy2 {
  0% {
    scale: 1;
    transform: translate3d(0, 0, 0);
  }
  50% {
    scale: 1;
    rotate: 45deg;
    transform: translate3d(0, -10px, 0);
  }
  100% {
    scale: 1;
    rotate: 0;
    transform: translate3d(0, 0, 0);
  }
}
#c-kv {
  opacity: 0;
  transition: opacity 1s ease;
}
#c-kv .blocks .b {
  transition: opacity 0.3s ease 0s, scale 1s ease 0s, rotate 1s ease 0s;
}
#c-kv .blocks .b0 {
  scale: 4;
  opacity: 0;
  rotate: 180deg;
}
#c-kv .blocks .b1 {
  scale: 3;
  opacity: 0;
  rotate: -135deg;
}
#c-kv .blocks .b2 {
  scale: 2;
  opacity: 0;
  rotate: 90deg;
}
#c-kv .blocks .b3 {
  scale: 1;
  opacity: 0;
}
#c-kv .balls .ball {
  opacity: 0;
  transition: transform 0.6s ease 0s, opacity 0.5s ease 0s;
}
#c-kv .balls .b0 {
  transform: translate3d(-40px, -80px, 0);
}
#c-kv .balls .b1 {
  transform: translate3d(40px, -80px, 0);
}
#c-kv .balls .b2 {
  transform: translate3d(40px, 0px, 0);
}
#c-kv .balls .b3 {
  transform: translate3d(-40px, -80px, 0);
}
#c-kv .balls .b4 {
  transform: translate3d(-40px, 80px, 0);
}
#c-kv .balls .b5 {
  transform: translate3d(-40px, -40px, 0);
}
#c-kv .c-content h1,
#c-kv .c-content p.place,
#c-kv .c-content p.date {
  transition: transform 0.6s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, 30px, 0);
  opacity: 0;
}
#c-kv .laser {
  opacity: 0;
  transition: opacity 0.6s ease;
}
#c-kv.show {
  opacity: 1;
}
#c-kv.show .blocks .b0, #c-kv.show .blocks .b1, #c-kv.show .blocks .b2, #c-kv.show .blocks .b3 {
  scale: 1;
  opacity: 1;
  rotate: 30deg;
}
#c-kv.show .blocks .b2 {
  transition-delay: 0.4s;
}
#c-kv.show .blocks .b1 {
  transition-delay: 0.6s;
}
#c-kv.show .blocks .b0 {
  transition-delay: 0.8s;
}
#c-kv.show .balls .ball {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#c-kv.show .balls .ball.b0 {
  transition-delay: 0.9s;
}
#c-kv.show .balls .ball.b1 {
  transition-delay: 1s;
}
#c-kv.show .balls .ball.b2 {
  transition-delay: 1.1s;
}
#c-kv.show .balls .ball.b3 {
  transition-delay: 1.2s;
}
#c-kv.show .balls .ball.b4 {
  transition-delay: 1.3s;
}
#c-kv.show .balls .ball.b5 {
  transition-delay: 1.4s;
}
#c-kv.show .balls .ball.b6 {
  transition-delay: 1.5s;
}
#c-kv.show .balls .ball.b7 {
  transition-delay: 1.6s;
}
#c-kv.show .balls .ball.b8 {
  transition-delay: 1.7s;
}
#c-kv.show .balls .ball.b9 {
  transition-delay: 1.8s;
}
#c-kv.show .balls .b0 span {
  animation: fluffy0 2s ease-in-out infinite;
}
#c-kv.show .balls .b1 span {
  animation: fluffy1 3s ease-in-out infinite;
}
#c-kv.show .balls .b2 span {
  animation: fluffy2 4s ease-in-out infinite;
}
#c-kv.show .balls .b3 span {
  animation: fluffy0 8s ease-in-out infinite;
}
#c-kv.show .balls .b4 span {
  animation: fluffy2 4s ease-in-out infinite;
}
#c-kv.show .balls .b5 span {
  animation: fluffy1 4s ease-in-out infinite;
}
#c-kv.show .balls .b6 span {
  animation: fluffy2 4s ease-in-out infinite;
}
#c-kv.show .balls .b7 span {
  animation: fluffy0 5s ease-in-out infinite;
}
#c-kv.show .c-content h1,
#c-kv.show .c-content p.place,
#c-kv.show .c-content p.date {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#c-kv.show .c-content h1 {
  transition-delay: 1.5s;
}
#c-kv.show .c-content p.place {
  transition-delay: 1.6s;
}
#c-kv.show .c-content p.date {
  transition-delay: 1.7s;
}
#c-kv.show .laser {
  opacity: 1;
  transition-delay: 1.5s;
}

#concept .c-ttl_section h3, #concept .c-ttl_section p {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#concept .c-ttl_content h4, #concept .c-ttl_content p {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#concept .c-col2_r:before {
  height: 0px;
  transition: height 0.5s ease;
}
#concept .c-col2_r h5, #concept .c-col2_r .txt {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#concept .c-list_mc ul li {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#concept .animate .c-ttl_section h3, #concept .animate .c-ttl_section p {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#concept .animate .c-ttl_section p {
  transition-delay: 0.1s;
}
#concept .animate .c-ttl_content h4, #concept .animate .c-ttl_content p {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#concept .animate .c-ttl_content h4 {
  transition-delay: 0.2s;
}
#concept .animate .c-ttl_content p {
  transition-delay: 0.3s;
}
#concept .animate .c-col2_r:before {
  height: 100%;
  transition-delay: 0.4s;
}
#concept .animate .c-col2_r h5 {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: 0.5s;
}
#concept .animate .c-col2_r .txt {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: 0.6s;
}
#concept .animate .c-list_mc ul li {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#concept .animate .c-list_mc ul li:nth-child(1) {
  transition-delay: 0.7s;
}
#concept .animate .c-list_mc ul li:nth-child(2) {
  transition-delay: 0.8s;
}

#program .c-ttl_section h3, #program .c-ttl_section p {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#program .c-list_program {
  opacity: 0;
  transition: opacity 1s ease;
}
#program .c-list_program .c-program {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#program .animate .c-ttl_section h3, #program .animate .c-ttl_section p {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#program .animate .c-ttl_section p {
  transition-delay: 0.1s;
}
#program .animate .c-list_program {
  opacity: 1;
  transition-delay: 0.2s;
}
#program .animate .c-list_program .c-program {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#program .animate .c-list_program .c-program.p0 {
  transition-delay: 0.3s;
}
#program .animate .c-list_program .c-program.p1 {
  transition-delay: 0.4s;
}
#program .animate .c-list_program .c-program.p2 {
  transition-delay: 0.5s;
}

#overview .c-ttl_section h3, #overview .c-ttl_section p {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#overview .c-table dl {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#overview .animate .c-ttl_section h3, #overview .animate .c-ttl_section p {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#overview .animate .c-ttl_section p {
  transition-delay: 0.1s;
}
#overview .animate .c-table dl {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#overview .animate .c-table dl:nth-of-type(1) {
  transition-delay: 0.3s;
}
#overview .animate .c-table dl:nth-of-type(2) {
  transition-delay: 0.4s;
}
#overview .animate .c-table dl:nth-of-type(3) {
  transition-delay: 0.5s;
}
#overview .animate .c-table dl:nth-of-type(4) {
  transition-delay: 0.6s;
}
#overview .animate .c-table dl:nth-of-type(5) {
  transition-delay: 0.7s;
}
#overview .animate .c-table dl:nth-of-type(6) {
  transition-delay: 0.8s;
}
#overview .animate .c-table dl:nth-of-type(7) {
  transition-delay: 0.9s;
}
#overview .animate .c-table dl:nth-of-type(8) {
  transition-delay: 1s;
}
#overview .animate .c-table dl:nth-of-type(9) {
  transition-delay: 1.1s;
}
#overview .animate .c-table dl:nth-of-type(10) {
  transition-delay: 1.2s;
}

#access .c-ttl_section h3, #access .c-ttl_section p {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#access .c-ttl_section .info_access h4, #access .c-ttl_section .info_access dt, #access .c-ttl_section .info_access dd, #access .c-ttl_section .info_access .c-btn_wrap {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#access .c-map,
#access .accordion {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#access .animate .c-ttl_section h3, #access .animate .c-ttl_section p {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#access .animate .c-ttl_section p {
  transition-delay: 0.1s;
}
#access .animate .c-ttl_section .info_access h4, #access .animate .c-ttl_section .info_access dt, #access .animate .c-ttl_section .info_access dd, #access .animate .c-ttl_section .info_access .c-btn_wrap {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#access .animate .c-ttl_section .info_access h4 {
  transition-delay: 0.2s;
}
#access .animate .c-ttl_section .info_access dt {
  transition-delay: 0.3s;
}
#access .animate .c-ttl_section .info_access dd {
  transition-delay: 0.4s;
}
#access .animate .c-ttl_section .info_access .c-btn_wrap {
  transition-delay: 0.5s;
}
#access .animate .c-map {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: 0.3s;
}
#access .animate .accordion {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#access .animate .accordion:nth-of-type(1) {
  transition-delay: 0.4s;
}
#access .animate .accordion:nth-of-type(2) {
  transition-delay: 0.5s;
}

#entry .b-entry {
  opacity: 0;
  transition: opacity 0.6s ease;
}
#entry .c-ttl_section h3, #entry .c-ttl_section p {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#entry .c-content {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#entry .animate .b-entry {
  opacity: 1;
}
#entry .animate .c-ttl_section h3, #entry .animate .c-ttl_section p {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#entry .animate .c-ttl_section h3 {
  transition-delay: 0.1s;
}
#entry .animate .c-ttl_section p {
  transition-delay: 0.2s;
}
#entry .animate .c-content {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: 0.3s;
}
#entry .c-list_links li {
  transition: transform 0.5s ease 0s, opacity 0.5s ease 0s;
  transform: translate3d(0, var(--hide-y), 0);
  opacity: 0;
}
#entry .c-list_links.animate li {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#entry .c-list_links.animate li:nth-child(2) {
  transition-delay: 0.1s;
}

@media all and (min-width: 864px) {
  #c-kv .blocks .b {
    transition: opacity 0.3s ease 0s, scale 1s ease 0s, rotate 1s ease 0s;
  }
  #c-kv .blocks .b0 {
    scale: 4;
    opacity: 0;
    rotate: 180deg;
  }
  #c-kv .blocks .b1 {
    scale: 3;
    opacity: 0;
    rotate: -135deg;
  }
  #c-kv .blocks .b2 {
    scale: 2;
    opacity: 0;
    rotate: 90deg;
  }
  #c-kv .blocks .b3 {
    scale: 1.5;
    opacity: 0;
    rotate: -180deg;
  }
  #c-kv .balls .ball {
    opacity: 0;
    transition: transform 0.6s ease 0s, opacity 0.5s ease 0s;
  }
  #c-kv .balls .b0 {
    transform: translate3d(-40px, -80px, 0);
  }
  #c-kv .balls .b1 {
    transform: translate3d(40px, -80px, 0);
  }
  #c-kv .balls .b2 {
    transform: translate3d(40px, 0px, 0);
  }
  #c-kv .balls .b3 {
    transform: translate3d(-40px, -80px, 0);
  }
  #c-kv .balls .b4 {
    transform: translate3d(-40px, 80px, 0);
  }
  #c-kv .balls .b5 {
    transform: translate3d(-40px, -40px, 0);
  }
  #c-kv .balls .b6 {
    transform: translate3d(-40px, -40px, 0);
  }
  #c-kv .balls .b7 {
    transform: translate3d(-60px, -40px, 0);
  }
  #c-kv.show {
    opacity: 1;
  }
  #c-kv.show .blocks .b0, #c-kv.show .blocks .b1, #c-kv.show .blocks .b2, #c-kv.show .blocks .b3 {
    scale: 1;
    opacity: 1;
    rotate: 30deg;
  }
  #c-kv.show .blocks .b3 {
    transition-delay: 0.4s;
  }
  #c-kv.show .blocks .b2 {
    transition-delay: 0.6s;
  }
  #c-kv.show .blocks .b1 {
    transition-delay: 0.8s;
  }
  #c-kv.show .blocks .b0 {
    transition-delay: 1s;
  }
  #c-kv.show .balls .ball {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  #c-kv.show .balls .ball.b0 {
    transition-delay: 1.05s;
  }
  #c-kv.show .balls .ball.b1 {
    transition-delay: 1.1s;
  }
  #c-kv.show .balls .ball.b2 {
    transition-delay: 1.15s;
  }
  #c-kv.show .balls .ball.b3 {
    transition-delay: 1.2s;
  }
  #c-kv.show .balls .ball.b4 {
    transition-delay: 1.25s;
  }
  #c-kv.show .balls .ball.b5 {
    transition-delay: 1.3s;
  }
  #c-kv.show .balls .ball.b6 {
    transition-delay: 1.35s;
  }
  #c-kv.show .balls .ball.b7 {
    transition-delay: 1.4s;
  }
  #c-kv.show .balls .ball.b8 {
    transition-delay: 1.45s;
  }
  #c-kv.show .balls .ball.b9 {
    transition-delay: 1.5s;
  }
  #c-kv.show .c-content h1,
  #c-kv.show .c-content p.place,
  #c-kv.show .c-content p.date {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  #c-kv.show .c-content h1 {
    transition-delay: 1.7s;
  }
  #c-kv.show .c-content p.place {
    transition-delay: 1.8s;
  }
  #c-kv.show .c-content p.date {
    transition-delay: 1.9s;
  }
}

/*# sourceMappingURL=style.css.map */
