@charset "UTF-8";
body,
html {
  height: auto;
}
#kv {
  height: 1000px;
  position: relative;
}
#kv .kv {
  position: relative;
  width: 1400px;
  height: 100%;
  margin: 0 auto;
}
#kv .kv .anime_circle {
  position: absolute;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
}
#kv .kv .anime_circle[data-rotation="15"] {
  -webkit-animation: 15s linear infinite rotation;
  animation: 15s linear infinite rotation;
}
#kv .kv .anime_circle[data-rotation="20"] {
  -webkit-animation: 20s linear infinite rotation;
  animation: 20s linear infinite rotation;
}
#kv .kv .anime_circle[data-rotation="30"] {
  -webkit-animation: 30s linear infinite rotation;
  animation: 30s linear infinite rotation;
}
#kv .kv .anime_circle[data-rotation="60"] {
  -webkit-animation: 60s linear infinite rotation;
  animation: 60s linear infinite rotation;
}
#kv .kv .anime_circle.is-active {
  opacity: 1;
}
#kv .kv .anime_circle img {
  width: 100%;
}
#kv .kv .kv_circle_A {
  top: -36px;
  right: 0;
  left: 0;
  width: 839px;
  margin: 0 auto;
  -webkit-animation: 60s linear infinite rotation;
  animation: 60s linear infinite rotation;
}
#kv .kv .kv_circle_B {
  top: 360px;
  right: 42px;
  width: 633px;
}
#kv .kv .kv_circle_C {
  top: -180px;
  left: 210px;
  width: 502px;
}
#kv .kv .kv_circle_D {
  top: -100px;
  right: -305px;
  width: 492px;
}
#kv .kv .kv_circle_E {
  top: 258px;
  left: -167px;
  width: 358px;
}
#kv .kv .kv_circle_F {
  top: 641px;
  left: 0;
  width: 455px;
}
#kv .kv .kv_lead {
  position: absolute;
  top: 507px;
  right: 0;
  left: 0;
  width: 321px;
  margin: 0 auto;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
}
#kv .kv .kv_lead.is-active {
  opacity: 1;
}
#kv h2 {
  position: absolute;
  top: 298px;
  right: 0;
  left: 0;
  width: 455px;
  margin: 0 auto;
}
#kv h2 #csup_logo {
  width: 98%;
  position: absolute;
  top: 3%;
  right: 0.75%;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
}
#kv h2 #csup_logo.is-active {
  opacity: 1;
}
#kv h2 #csup_svg {
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
#kv h2 #csup_svg .cls-1 {
  fill: #000;
  stroke: #000;
  stroke-width: 3px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@-webkit-keyframes drawStroke {
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes drawStroke {
  to {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes fillIn {
  to {
    fill-opacity: 1;
  }
}
@keyframes fillIn {
  to {
    fill-opacity: 1;
  }
}
#kv h2 #csup_svg #cs-letter path,
#kv h2 #csup_svg #p-letter path,
#kv h2 #csup_svg #u-letter path {
  stroke-dasharray: 1500;
  stroke-dashoffset: 1500;
  fill-opacity: 0;
}
#kv h2 #csup_svg #cs-letter path {
  -webkit-animation-delay: 0s, 1s;
  animation-delay: 0s, 1s;
}
#kv h2 #csup_svg #u-letter path {
  -webkit-animation-delay: 375ms, 3s;
  animation-delay: 375ms, 3s;
}
#kv h2 #csup_svg #p-letter path {
  -webkit-animation-delay: 0.75s, 3s;
  animation-delay: 0.75s, 3s;
}
#kv h2 #csup_svg.is-active #cs-letter path {
  -webkit-animation: drawStroke 3s forwards, fillIn 0.25s 6s forwards;
  animation: drawStroke 3s forwards, fillIn 0.25s 6s forwards;
}
#kv h2 #csup_svg.is-active #p-letter path,
#kv h2 #csup_svg.is-active #u-letter path {
  -webkit-animation: drawStroke 6s forwards, fillIn 0.25s 6s forwards;
  animation: drawStroke 6s forwards, fillIn 0.25s 6s forwards;
}
#kv h2 #csup_svg.is-none {
  opacity: 0;
}
#kv h3 {
  position: absolute;
/*  top: 144px; */
/* 4Line */
  top: 128px;
  left: 100px;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /*  width: 480px; */
  width: 570px;
}
#kv h3.is-active {
  opacity: 1;
}
#kv h3 span {
  font-size: 30px;
  letter-spacing: 0.13em;
  line-height: 44px;
  color: #fff;
  background-color: #000;
  padding: 0 12px;
}
#kv .floating {
  position: absolute;
  right: 100px;
  bottom: 130px;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
}
#kv .floating.is-active {
  opacity: 1;
}
#kv .floating li {
  position: relative;
  z-index: 2;
}
#kv .floating li:last-child {
  -webkit-transform: translateY(-12px);
  transform: translateY(-12px);
  z-index: 1;
}
@-webkit-keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes rotation_revers {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
@keyframes rotation_revers {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}

#kv h4 {
  position: absolute;
  bottom: 180px;
  right: 100px;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: flex-end;
  width: 400px;
}
#kv h4.is-active {
  opacity: 1;
  animation: slideIn 1s ease forwards;
}
@keyframes slideIn {
  from {
    right: -700px;
  }
  to {
    right: 100px;
  }
}
#kv h4 span {
  font-size: 24px;
  letter-spacing: 0.13em;
  line-height: 40px;
  color: #fff;
  background-color: #000;
  padding: 0 12px;
  text-align: right;
}
  #kv .pop {
   position: absolute;
   bottom: 320px;
   right: 100px;
/*   right: 7.1428571429vw;
   width: 13vw;*/
  width: 180px;
   border-radius: 40px 0 0 0;
   background-color: #ffbed1;
  padding: 30px;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
  #kv .pop p {
    font-weight: 700;
    line-height: 1.3;
}
  #kv .pop .limit {
    font-size: 22px;
  }
  #kv .pop .year {
    padding-top: 4px;
    font-size: 16px;
  }
  #kv .pop .date {
    font-size: 30px;
  }
  #kv .pop .date span {
    font-size: 16px;
  }

.topics {
  margin: -140px auto 80px;
  width: 90%;
  max-width: 1400px;
  position: relative;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
}
.topics.is-active {
  opacity: 1;
}
.topics .section__inner {
  padding: 0 20px;
  width: 100%;
  background-color: #fff;
  border: 1px solid #222;
  border-radius: 20px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.topics h5 {
  padding-top: 8px;
  width: 140px;
  font-size: 18px;
  letter-spacing: 0.13em;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: 700;
  text-align: center;
  color: #333;
}
.topics .exList {
  width: calc(100% - 160px);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
.topics .exList dt,
.topics .exList dd {
  padding: 8px 50px 8px 0;
  width: 100%;
}
.topics .exList dt {
  background: url(../../img/ic_plus.svg) no-repeat right 6px;
  background-size: 30px auto;
  cursor: pointer;
  min-height: 40px;
}
.topics .exList dt.minus {
  padding-bottom: 0;
  background: url(../../img/ic_minus.svg) no-repeat right 6px;
  background-size: 30px auto;
  height: auto;
}
.topics .exList dt .text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.topics .exList dt.minus .text {
  white-space: normal;
  overflow: auto;
  text-overflow: clip;
}
.topics .exList dt {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row;
}
.topics .exList dd {
  padding-bottom: 12px;
}
.topics .exList li {
  margin-top: 5px;
  padding: 8px 0 5px 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row;
  border-top: 1px dotted #999;
}
.topics .exList .date {
  width: 180px;
  color: #888;
}
.topics .exList .text {
  width: calc(100% - 180px);
}
.topics .exList .date,
.topics .exList .text {
  font-size: 18px;
  line-height: 1.6;
}

#about {
  padding: 0 0 280px;
  position: relative;
}
#about .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  z-index: 2;
}
#about .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-right: calc(50% - 50vw);
}
#about .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
#about .title_inner h2 .title_wrap {
  padding: 42px 0 41px 70px;
  position: relative;
  width: calc(100% - 324px);
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
#about .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #ffa4c7;
  border-radius: 70px 0 0 70px;
  z-index: -1;
}
#about .title_inner h2 .title_wrap:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  right: 0;
  top: 0;
  background-color: #ffd3e4;
  border-radius: 0 0 0 50px;
}
#about .detail_inner {
  width: 1000px;
  margin: 0 auto;
  padding: 60px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}
#about .detail_inner::before {
  content: "";
  display: block;
  width: 600px;
  height: 584px;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  z-index: -1;
  border-radius: 60px 0 0 0;
  left: -100px;
  top: 0;
  position: absolute;
}
#about .detail_inner .text_wrap p {
  font-size: 18px;
  line-height: 46px;
  letter-spacing: 0.09em;
}
#about .detail_inner .text_wrap p span {
  display: block;
  line-height: 26px;
  padding: 20px 0 0;
  font-size: 14px;
}
#about .detail_inner .illust_wrap {
  padding: 215px 67px 0 0;
  position: relative;
}
#about .detail_inner .illust_wrap .dec_wrap {
  position: absolute;
  left: calc(50% - 40px);
  top: calc(50% + 18px);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#about .about_circle {
  position: absolute;
  left: calc(50% - 534px);
  bottom: -275px;
  translate: -50% 0;
  z-index: -1;
}
#about .about_circle .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#information {
  padding: 0 0 200px;
  position: relative;
}
#information .info_inner {
  width: 1000px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
#information .info_inner .flex_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: calc(50% - 50vw);
}
#information .info_inner .flex_wrap h2 {
  width: 140px;
  padding: 75px 42px 150px;
  text-align: center;
  background-color: #71dee5;
  border-radius: 70px 70px 90px 0;
  position: relative;
}
#information .info_inner .flex_wrap h2::before {
  content: "";
  display: block;
  width: 50vw;
  height: 120px;
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #c2f1f4;
  border-radius: 0 0 50px 0;
}
#information .info_inner .flex_wrap h2 img {
  margin: 0 auto;
}
#information .info_inner .flex_wrap .info_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% - 140px);
  position: relative;
}
#information .info_inner .flex_wrap .info_wrap::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  border-radius: 60px 0 0;
}
#information .info_inner .flex_wrap .info_wrap h3 {
  font-size: 26px;
  letter-spacing: 0.13em;
  font-weight: 500;
  padding: 60px 50px 0 50px;
  width: 220px;
}
#information .info_inner .flex_wrap .info_wrap ul {
  width: calc(100% - 220px);
}
#information .info_inner .flex_wrap .info_wrap ul li {
  background-color: #ffec5f;
  height: 150px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 0 75px 75px 0;
}
#information .info_inner .flex_wrap .info_wrap ul li:nth-child(even) {
  background-color: #fff5a8;
  border-radius: 75px 0 0 75px;
}
#information .info_inner .flex_wrap .info_wrap ul li a {
  padding: 36px 198px 28px 74px;
  display: block;
  height: 100%;
}
#information .info_inner .flex_wrap .info_wrap ul li a .date {
  font-weight: 900;
  letter-spacing: 0.02em;
  display: block;
  padding: 0 0 20px;
}
#information .info_inner .flex_wrap .info_wrap ul li a p {
  line-height: 25px;
  letter-spacing: 0.13em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-align: justify;
}
#information .info_inner .flex_wrap .info_wrap ul li a p.link {
  color: #254dff;
  text-decoration: underline;
}
#information .info_circle {
  position: absolute;
  left: calc(50% - 20px);
  bottom: -325px;
  translate: -50% 0;
  z-index: -1;
}
#information .info_circle .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#guidelines {
  padding: 0 0 200px;
  position: relative;
}
#guidelines .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
}
#guidelines .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-right: calc(50% - 50vw);
}
#guidelines .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
#guidelines .title_inner h2 .title_wrap {
  padding: 42px 0 41px 70px;
  position: relative;
  width: calc(100% - 350px);
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
#guidelines .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #cfee54;
  border-radius: 70px 0 0 70px;
  z-index: -1;
}
#guidelines .title_inner h2 .title_wrap:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  right: 0;
  top: 0;
  background-color: #edffbf;
  border-radius: 0 0 0 50px;
}
#guidelines .title_inner p {
  margin-top: 30px;
  font-size: 16px;
  line-height: 28px;
  letter-spacing: 0.05em;
  text-align: center;
}
#guidelines .title_inner p span {
  padding: 4px 12px;
  border-radius: 8px;
  background-color: rgba(255, 255, 255, 0.6);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

#guidelines .detail {
  position: relative;
  width: 1100px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
#guidelines .detail .detail_inner {
/*
  padding: 0 0 98px;
 * button hide ↓ */
  padding: 0;

  margin-left: calc(50% - 50vw);
  position: relative;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 0 0 100px;
}
#guidelines .detail .overview {
  width: 1100px;
  margin: 0 0 0 auto;
/*
  padding: 0 0 115px;
 * button hide ↓ */
  padding: 0;
}
#guidelines .detail .requirements {
  width: 1100px;
  margin: 0 0 0 auto;
}
#guidelines .detail dl {
  width: 1100px;
  margin: 0 auto 1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#guidelines .detail dl dt {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.14em;
  padding: 45px 0 45px 100px;
  background-color: #ffdfe6;
  width: 320px;
  border-radius: 0 30px 30px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#guidelines .detail dl dd {
  width: 779px;
  background-color: #eef0ea;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 30px 0 30px 78px;
  border-radius: 30px 0 0 30px;
  font-size: 16px;
  line-height: 28px;
  letter-spacing: 0.1em;
  text-align: justify;
}
#guidelines .detail dl dd.theme {
  font-size: 22px;
  letter-spacing: 0.1em;
  font-weight: 600;
  line-height: 30px;
}
#guidelines .detail dl dd.period p {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.14em;
}
#guidelines .detail dl dd.period span.num {
  font-size: 40px;
  font-weight: 500;
  letter-spacing: 0.14em;
}
#guidelines .detail dl dd.period span.num.small {
  font-size: 32px;
}
#guidelines .detail dl dd.black_circle ul.target {
  padding: 28px 0 0;
}
#guidelines .detail dl dd.black_circle ul li {
  font-size: 16px;
  line-height: 28px;
  letter-spacing: 0.1em;
  position: relative;
}
#guidelines .detail dl dd.black_circle ul li span {
  padding: 0 20px 0 0;
}
#guidelines .detail dl dd.black_circle ul.examination li {
  padding: 0 100px 30px 0;
  font-weight: 500;
}
#guidelines .detail dl dd.black_circle ul.examination li p {
  font-size: 14px;
  line-height: 24px;
  font-weight: 400;
  letter-spacing: 0.03em;
  padding: 0 0 0 37px;
}
#guidelines .detail dl dd.black_circle .caution {
  font-size: 14px;
  letter-spacing: 0.1em;
}
#guidelines .detail dl dd a {
  color: #0000ac;
  text-decoration: underline;
}
#guidelines .detail dl dd.dotts ul:first-child {
  padding: 0 75px 0 0;
}
#guidelines .detail dl dd.dotts ul li span {
  padding: 0 20px 0 0;
}
#guidelines .detail dl dd.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
#guidelines .detail dl dd.flex ul:first-child {
  padding: 0 90px 0 0;
}
#guidelines .detail dl dd.flex ul:nth-child(2) {
  padding: 0 60px 0 0;
}
#guidelines .detail dl dd.flex ul li {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 28px;
}
#guidelines .detail dl:nth-child(even) dt {
  background-color: #ffbed1;
}
#guidelines .detail dl:nth-child(even) dd {
  background-color: #e2e5db;
}
#guidelines .detail dl dd span.closed {
  color: #ff4f67;
  font-weight: 700;
}

#guidelines .btn_wrap {
  margin: 0 300px 0 auto;
}
#guidelines .btn_wrap a {
  padding: 0 0 0 120px;
}
#guidelines .guide_circle-A {
  position: absolute;
  left: calc(50% + 600px);
  top: calc(50% - 110px);
  translate: -50% -50%;
  z-index: -1;
}
#guidelines .guide_circle-A .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#guidelines .guide_circle-B {
  position: absolute;
  left: calc(50% - 490px);
  top: calc(50% + 910px);
  translate: -50% -50%;
  z-index: -1;
}
#guidelines .guide_circle-B .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#schedule {
  padding: 0 0 200px;
  position: relative;
}
#schedule .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
  z-index: 2;
}
#schedule .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-right: calc(50% - 50vw);
}
#schedule .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
#schedule .title_inner h2 .title_wrap {
  padding: 42px 0 41px 70px;
  position: relative;
  width: calc(100% - 358px);
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
#schedule .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #ffbd8e;
  border-radius: 70px 0 0 70px;
  z-index: -1;
}
#schedule .title_inner h2 .title_wrap:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  right: 0;
  top: 0;
  background-color: #ffe9d3;
  border-radius: 0 0 0 50px;
}
#schedule .schedule_inner {
  width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
#schedule .schedule_inner ul {
  width: 820px;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 0 0 0 60px;
}
#schedule .schedule_inner ul li {
  height: 140px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #f9f9f9;
  border-radius: 0 0 0 40px;
}
#schedule .schedule_inner ul li:nth-child(2) {
  -webkit-transform: translateX(75px);
  transform: translateX(75px);
}
#schedule .schedule_inner ul li:nth-child(3) {
  -webkit-transform: translateX(150px);
  transform: translateX(150px);
}
#schedule .schedule_inner ul li:nth-child(4) {
  -webkit-transform: translateX(225px);
  transform: translateX(225px);
}
#schedule .schedule_inner ul li:nth-child(5) {
  -webkit-transform: translateX(300px);
  transform: translateX(300px);
}
#schedule .schedule_inner ul li:nth-child(6) {
  -webkit-transform: translateX(375px);
  transform: translateX(375px);
}
#schedule .schedule_inner ul li:nth-child(3n-1) {
  background-color: #bfd5ff;
}
#schedule .schedule_inner ul li:nth-child(3n) {
  background-color: #e5f480;
}
#schedule .schedule_inner ul li:nth-child(3n + 1) {
  background-color: #f9f9f9;
}
#schedule .schedule_inner ul li .date_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 0 0 100px;
  width: 375px;
}
#schedule .schedule_inner ul li .date_wrap span {
  display: block;
}
#schedule .schedule_inner ul li .date_wrap .year {
  font-size: 17px;
  letter-spacing: 0.05em;
  font-weight: 600;
  font-family: korolev, sans-serif;
  padding: 0 12px 0 0;
}
#schedule .schedule_inner ul li .date_wrap .date {
  font-size: 45px;
  letter-spacing: 0.13em;
  font-weight: 600;
  font-family: korolev, sans-serif;
  padding: 0 5px 0 0;
}
#schedule .schedule_inner ul li .date_wrap .week {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
#schedule .schedule_inner ul li .date_wrap .almost {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
#schedule .schedule_inner ul li .detail {
  padding: 0 0 0 40px;
  position: relative;
}
#schedule .schedule_inner ul li .detail::before {
  content: "";
  display: block;
  width: 1px;
  height: 52px;
  background-color: #000;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#schedule .schedule_inner ul li .detail span {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 30px;
}
#schedule .schedule_circle-A {
  position: absolute;
  left: calc(50% + 410px);
  top: calc(50% - 210px);
  translate: -50% -50%;
  z-index: -1;
}
#schedule .schedule_circle-A .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#judges {
  position: relative;
  padding: 0 0 220px;
}
#judges:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  left: 0;
  top: -80px;
  background-color: #cddaf8;
  border-radius: 0 50px 0 0;
  z-index: 3;
}
#judges .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
  position: relative;
  z-index: 2;
}
#judges .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  gap: 0 276px;
}
#judges .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
}
#judges .title_inner h2 .title_wrap {
  padding: 42px 0 41px;
}
#judges .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 50vw;
  height: 140px;
  position: absolute;
  right: 50%;
  top: 0;
  background-color: #a9bff3;
  border-radius: 0 70px 70px 0;
  z-index: -1;
}
#judges .judge_wrap {
  width: 1200px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  padding: 80px 100px 100px;
  border-radius: 0 100px 100px 0;
  position: relative;
  z-index: 2;
}
#judges .judge_wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 70px 65px;
}
#judges .judge_wrap ul li {
  width: 290px;
}
#judges .judge_wrap ul li:nth-child(2) .img_wrap {
  background-color: #91e6f2;
}
#judges .judge_wrap ul li:nth-child(2) .img_wrap img {
  border: 1px solid #91e6f2;
}
#judges .judge_wrap ul li:nth-child(3) .img_wrap {
  background-color: #ffb4d1;
}
#judges .judge_wrap ul li:nth-child(3) .img_wrap img {
  border: 1px solid #ffb4d1;
}
#judges .judge_wrap ul li:nth-child(4) .img_wrap {
  background-color: #d3ed29;
}
#judges .judge_wrap ul li:nth-child(4) .img_wrap img {
  border: 1px solid #d3ed29;
}
#judges .judge_wrap ul li:nth-child(5) .img_wrap {
  background-color: #ffef78;
}
#judges .judge_wrap ul li:nth-child(5) .img_wrap img {
  border: 1px solid #ffef78;
}
#judges .judge_wrap ul li:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#judges .judge_wrap ul li:last-child p {
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 32px;
  padding: 0 0 0 32px;
}
#judges .judge_wrap ul li .img_wrap {
  background-color: #005ba7;
  border-radius: 160px 160px 0 0;
  width: 262px;
  margin: 0 0 0 auto;
}
#judges .judge_wrap ul li .img_wrap img {
  border: 1px solid #005ba7;
  border-radius: 160px 160px 0 0;
  -webkit-transform: translateX(-28px);
  transform: translateX(-28px);
}
#judges .judge_wrap ul li .detail {
  background-color: #454545;
  border-radius: 0 0 30px;
  padding: 26px 0 62px 28px;
  position: relative;
}
#judges .judge_wrap ul li .detail span {
  color: #fff;
}
#judges .judge_wrap ul li .detail span.position {
  font-size: 16px;
  letter-spacing: 0.09em;
  font-weight: 600;
  color: #c5b5e0;
  display: block;
  height: 28px;
  padding: 0 0 12px;
}
#judges .judge_wrap ul li .detail span.name {
  font-size: 26px;
  letter-spacing: 0.09em;
  font-weight: 500;
  display: block;
  padding: 0 0 20px;
}
#judges .judge_wrap ul li .detail span.name .honorific {
  font-size: 16px;
  letter-spacing: 0.09em;
  font-weight: 500;
  padding: 0 0 0 5px;
}
#judges .judge_wrap ul li .detail span.career {
  line-height: 24px;
  letter-spacing: 0.04em;
  display: block;
  text-align: justify;
}
#judges .judge_wrap ul li .detail .profile {
  color: #fff;
  cursor: pointer;
  display: block;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-decoration: underline;
  position: absolute;
  right: 38px;
  bottom: 10px;
  padding: 10px 20px 10px 0;
}
#judges .judge_wrap ul li .detail .profile::after {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  background: url(../../img/btn_arw_beta.svg) no-repeat center center/28px auto;
  position: absolute;
  top: 50%;
  right: -22px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#judges .judge_circle-A {
  position: absolute;
  left: calc(50% - 680px);
  top: calc(50% - 700px);
  translate: -50% -50%;
  z-index: -1;
}
#judges .judge_circle-A .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#judges .judge_circle-B {
  position: absolute;
  left: calc(50% + 600px);
  top: calc(50% + 694px);
  translate: -50% -50%;
  z-index: -1;
}
#judges .judge_circle-B .circle {
  position: absolute;
  left: 0;
  top: 0;
}
#judges .judge_circle-B .circle:first-of-type {
  position: static;
  top: 0;
}

#interview {
  position: relative;
  padding: 0 0 200px;
}
#interview:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  left: 0;
  top: -80px;
  background-color: #e5f480;
  border-radius: 0 50px 0 0;
  z-index: 3;
}
#interview .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
  position: relative;
  z-index: 2;
}
#interview .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  gap: 0 276px;
}
#interview .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
}
#interview .title_inner h2 .title_wrap {
  padding: 42px 0 41px;
}
#interview .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 50vw;
  height: 140px;
  position: absolute;
  right: 50%;
  top: 0;
  background-color: #e5f480;
  border-radius: 0 70px 70px 0;
  z-index: -1;
}
#interview .interview_wrap {
  width: 1200px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  padding: 80px 100px 100px;
  border-radius: 0 100px 100px 0;
  position: relative;
  z-index: 2;
}
#interview .interview_wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 30px;
}
#interview .interview_wrap ul li {
  padding-bottom:30px;
  width: 100%;
  border-bottom: 2px dotted #ddd;
}
#interview .interview_wrap ul li a {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
}
#interview .interview_wrap ul li:last-child {
  padding-bottom:0;
  border-bottom: none;
}
#interview .interview_wrap ul li .img_wrap {
  width: 25%;
}
#interview .interview_wrap ul li .img_wrap img {
  width: auto;
  max-width: 100%;
}
#interview .interview_wrap ul li .detail {
  flex: 1;
}
#interview .interview_wrap ul li p {
  letter-spacing: 0.1em;
  line-height: 1.3;
}
#interview .interview_wrap ul li .int_sub {
  font-size: 18px;
  font-weight:700;
}
#interview .interview_wrap ul li .int_prof {
  padding: 10px 0 20px;
  font-size: 14px;
}
#interview .interview_wrap ul li .int_ttl {
  font-size: 26px;
  font-weight:700;
  line-height: 1.6;
}

#gallary {
  background-color: #fff;
  text-align: center;
  padding: 50px 0 110px;
}
#gallary .gallary_inner {
  width: 1000px;
  margin: 0 auto;
}
#gallary h2 {
  padding: 0 0 32px;
}
#gallary h2 img {
  margin: 0 auto;
}

#gallary .gallary_inner p {
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.06em;
  text-align: center;
}
#gallary .gallary_inner p span {
  padding: 5px 1vw;
  color: #fff;
  background-color: #222;
  border-radius: 8px;
}

#gallary ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 25px 25px;
}
#entry {
  padding: 0 0 265px;
  position: relative;
}
#entry .bg_wrap {
  padding: 0 0 100px;
  width: 435px;
  margin: 0 auto;
  background: #fff;
  border-radius: 0 0 250px 250px;
}
#entry .bg_wrap h2 {
  text-align: center;
  padding: 100px 0 50px;
}
#entry .bg_wrap h2 img {
  margin: 0 auto;
}
#entry .bg_wrap h2 span {
  display: block;
  font-size: 26px;
  letter-spacing: 0.13em;
  font-weight: 500;
  padding: 26px 0 0;
}
#entry .bg_wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  z-index: 3;
}
#entry .bg_wrap ul li {
/*  margin: 0 0 45px; */
  margin: 0 0 30px;
}
#entry .bg_wrap ul li:last-child {
/*  margin: 0 auto; */
  margin: 0 0 15px;
}
#entry .bg_wrap ul li:last-child .btn_wrap a {
/*  color: #000;
  background-color: #cfee54;*/
  color: #fff;
  background-color: #ff4f67;
}
#entry .bg_wrap ul li .btn_wrap.disabled a,
#entry .bg_wrap ul li:last-child .btn_wrap.disabled a {
  pointer-events: none;
  border: none;
  background-color: #d9d9d9;
}
/* .disabled のため
#entry .bg_wrap ul li:last-child .btn_wrap a::before {
    background-image: url(../../img/btn_arw_rd2.svg);
}
*/
#entry .bg_wrap p {
/*  font-size: 1vw; */
  font-size: 15px;
  line-height: 1.5;
  position: relative;
  z-index: 4;
}
#entry .bg_wrap p a {
  color: #0000ac;
  text-decoration: underline;
}
#entry .entry_circle-A {
  position: absolute;
  left: 50%;
  top: -120px;
  translate: -50% 0;
}
#entry .entry_circle-A .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#final {
  padding: 0 0 230px;
  position: relative;
}
#final .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
  z-index: 2;
}
#final .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-right: calc(50% - 50vw);
}
#final .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
#final .title_inner h2 .title_wrap {
  padding: 42px 0 41px 70px;
  position: relative;
  width: calc(100% - 192px);
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
#final .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #bfc9d2;
  border-radius: 70px 0 0 70px;
  z-index: -1;
}
#final .title_inner h2 .title_wrap:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  right: 0;
  top: 0;
  background-color: #e6eaed;
  border-radius: 0 0 0 50px;
}
#final .detail_inner {
  width: 1050px;
  margin: 0 auto;
  -webkit-transform: translateX(-25px);
  transform: translateX(-25px);
  position: relative;
  z-index: 2;
}
#final .detail_inner dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#final .detail_inner dl dt {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.14em;
  padding: 50px 0 50px 50px;
  background-color: #91e6f2;
  width: 280px;
  border-radius: 0 30px 30px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#final .detail_inner dl dd {
  width: 770px;
  background-color: #e9e9dc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 30px 0 30px 78px;
  border-radius: 30px 0 0 30px;
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
#final .detail_inner dl dd .link {
  display: inline-block;
  text-decoration: underline;
}
#final .detail_inner dl dd .flex_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#final .detail_inner dl dd .flex_wrap .secretariat {
  display: block;
  padding: 0 50px 0 0;
}
#final .detail_inner dl dd .flex_wrap .address_wrap {
  padding: 0 0 0 50px;
  border-left: 1px solid #000;
}
#final .detail_inner dl dd .flex_wrap .address_wrap .mail_wrap,
#final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#final .detail_inner dl dd .flex_wrap .address_wrap .mail_wrap span,
#final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap span {
  display: block;
}
#final .detail_inner dl dd .flex_wrap .address_wrap .mail_wrap span:first-child,
#final
  .detail_inner
  dl
  dd
  .flex_wrap
  .address_wrap
  .tell_wrap
  span:first-child {
  width: 98px;
}
#final .detail_inner dl dd .flex_wrap .address_wrap .mail_wrap span.num,
#final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap span.num {
  text-decoration: underline;
}
#final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap {
  padding: 0 0 20px;
}
#final .detail_inner dl:nth-child(even) dt {
  background-color: #c2f1f4;
}
#final .detail_inner dl:nth-child(even) dd {
  background-color: #fff;
}
#final .presentator_wrap {
  width: 1200px;
  margin: 0 auto;
  padding: 0 0 140px;
  position: relative;
  z-index: 2;
}
#final .presentator_wrap .bg_wrap {
  width: 870px;
  margin: 0 0 0 auto;
  background-color: #fff;
  border-radius: 0 0 0 60px;
}
#final .presentator_wrap .bg_wrap .presentator {
  width: 717px;
  margin: 0 0 0 auto;
  background-color: #91e6f2;
  border-radius: 0 183px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 50px 95px 68px 75px;
}
#final .presentator_wrap .bg_wrap .presentator .introduction h3 {
  padding: 50px 0 75px;
}
#final .presentator_wrap .bg_wrap .presentator .introduction h3 span {
  display: block;
  padding: 20px 0 0;
  font-size: 16px;
  letter-spacing: 0.13em;
  font-weight: 500;
}
#final .presentator_wrap .bg_wrap .presentator .introduction .position {
  display: block;
  font-size: 18px;
  letter-spacing: 0.05em;
  padding: 0 0 22px;
}
#final .presentator_wrap .bg_wrap .presentator .introduction .name {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 0.14em;
}
#final .presentator_wrap .bg_wrap .presentator .img_wrap img {
  border: 1px solid #000;
  border-radius: 131px 131px 0 0;
}
#final .btn_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0 50px;
  position: relative;
  z-index: 2;
}
#final .btn_list .btn_wrap {
  margin: 0;
}
#final .final_circle-A {
  position: absolute;
  left: calc(50% - 530px);
  top: calc(50% + 370px);
  translate: -50% -50%;
  z-index: -1;
}
#final .final_circle-A .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#final .final_circle-B {
  display: none;
}
#final.final_pitch .title_inner h2 .title_wrap {
  width: calc(100% - 470px);
}
#final.final_pitch .title_inner h2 span {
  padding: 0 0 0 210px;
}
#final.final_pitch .btn_wrap a {
 flex-direction: column;
 align-items: flex-start;
 justify-content: center;
}
#final.final_pitch .btn_wrap span {
  font-size: 64%;
  color: #fff;
}

#finalist {
  position: relative;
  padding: 0 0 230px;
  margin: 220px 0 0;
}
#finalist:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  left: 0;
  top: -80px;
  background-color: #ffec93;
  border-radius: 0 50px 0 0;
}
#finalist .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
}
#finalist .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  gap: 0 240px;
  padding: 0 0 0 45px;
}
#finalist .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
}
#finalist .title_inner h2 .title_wrap {
  padding: 42px 0 41px;
}
#finalist .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100vw;
  height: 140px;
  position: absolute;
  right: 484px;
  top: 0;
  background-color: #ffd200;
  border-radius: 0 70px 70px 0;
  z-index: -1;
}
#finalist .finalist_inner {
  width: 1200px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 0 50px 50px 0;
  padding: 90px 100px;
  position: relative;
  z-index: 2;
}
#finalist .finalist_inner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 90px 100px;
/*  padding: 0 0 95px; */
  padding: 0 0 30px;
}
#finalist .finalist_inner ul li {
  width: 450px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 35px;
  position: relative;
  padding: 0 0 65px;
  border-bottom: 1px solid #9f9f9f;
}
#finalist .finalist_inner ul li .img_wrap {
  position: relative;
  width: 160px;
  border-radius: 80px 80px 0 0;
}
#finalist .finalist_inner ul li .img_wrap .pic {
  border-radius: 80px 80px 0 0;
  -webkit-transform: translateX(12px);
  transform: translateX(12px);
}
#finalist .finalist_inner ul li .img_wrap .pic img {
  border-radius: 80px 80px 0 0;
  -webkit-transform: translateX(-12px);
  transform: translateX(-12px);
}
#finalist .finalist_inner ul li .img_wrap .num {
  position: absolute;
  left: -8px;
  top: -7px;
}
#finalist .finalist_inner ul li .detail_wrap {
  width: 240px;
}
#finalist .finalist_inner ul li .detail_wrap h3 {
  font-size: 18px;
  line-height: 28px;
  font-weight: 500;
  letter-spacing: 0.02em;
  text-align: justify;

  /* 3Line : 28*3+6
  height: 90px;
 */
/* 4Line : 28*4+6 */
  height: 118px;

}
#finalist .finalist_inner ul li .detail_wrap .position {
  display: block;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.04em;
  height: 78px;
}
#finalist .finalist_inner ul li .detail_wrap .detail {
  position: absolute;
  right: 0;
  /* 3Line
    bottom: 65px;; */
  bottom: 40px;
}
#finalist .finalist_inner ul li .detail_wrap .detail button,
#finalist .finalist_inner ul li .detail_wrap .detail a {
  font-size: 12px;
  letter-spacing: 0.04em;
  position: relative;
  width: 142px;
  line-height: 45px;
  border-radius: 30px;
  background: url(../../img/finalist_arw.svg) no-repeat 100px center #000;
  background-size: 14px auto;
  color: #fff;
  padding: 0 0 0 22px;
  text-align: left;
  display: block;
}
#finalist .finalist_inner ul li:first-child .img_wrap .pic {
  background-color: #10589e;
}
#finalist .finalist_inner ul li:first-child .img_wrap .pic img {
  border: 1px solid #10589e;
}
#finalist .finalist_inner ul li:nth-child(2) .img_wrap .pic {
  background-color: #0099bd;
}
#finalist .finalist_inner ul li:nth-child(2) .img_wrap .pic img {
  border: 1px solid #0099bd;
}
#finalist .finalist_inner ul li:nth-child(3) .img_wrap .pic {
  background-color: #e25f99;
}
#finalist .finalist_inner ul li:nth-child(3) .img_wrap .pic img {
  border: 1px solid #e25f99;
}
#finalist .finalist_inner ul li:nth-child(4) .img_wrap .pic {
  background-color: #5eb031;
}
#finalist .finalist_inner ul li:nth-child(4) .img_wrap .pic img {
  border: 1px solid #5eb031;
}
#finalist .finalist_inner ul li:nth-child(5) .img_wrap .pic {
  background-color: #eb6143;
}
#finalist .finalist_inner ul li:nth-child(5) .img_wrap .pic img {
  border: 1px solid #eb6143;
}
#finalist .finalist_inner ul li:nth-child(6) .img_wrap .pic {
  background-color: #7b59a3;
}
#finalist .finalist_inner ul li:nth-child(6) .img_wrap .pic img {
  border: 1px solid #7b59a3;
}
#finalist .finalist_inner ul li:nth-child(7) {
/*  padding: 0; */
  border: none;
}
#finalist .finalist_inner ul li:nth-child(7) .img_wrap .pic {
  background-color: #eac100;
}
#finalist .finalist_inner ul li:nth-child(7) .img_wrap .pic img {
  border: 1px solid #eac100;
}
/*
#finalist .finalist_inner ul li:nth-child(7) .detail_wrap .detail {
  bottom: 0;
}
*/
#finalist .finalist_inner ul li:nth-child(8) {
/*  padding: 0; */
  border: none;
}
#finalist .finalist_inner ul li:nth-child(8) .img_wrap .pic {
  background-color: #009b75;
}
#finalist .finalist_inner ul li:nth-child(8) .img_wrap .pic img {
  border: 1px solid #009b75;
}
/*
#finalist .finalist_inner ul li:nth-child(8) .detail_wrap .detail {
  bottom: 0;
}
*/
#finalist .finalist_inner ul li:nth-child(9) {
/*  padding: 0; */
  padding: 0 0 25px;
  border: none;
}
#finalist .finalist_inner ul li:nth-child(9) .img_wrap .pic {
  background-color: #005da2;
}
#finalist .finalist_inner ul li:nth-child(9) .img_wrap .pic img {
  border: 1px solid #005da2;
}
#finalist .finalist_inner ul li:nth-child(9) .detail_wrap .detail {
  bottom: 0;
}

#finalist .finalist_circle {
  position: absolute;
  left: calc(50% + 520px);
  top: -180px;
  translate: -50% 0;
  z-index: -1;
}
#finalist .finalist_circle .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#winner {
  position: relative;
/*  padding: 0 0 230px; */
/* FAQ - off */
  padding: 0 0 80px;
}
#winner:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  left: 0;
  top: -80px;
  background-color: #edda95;
  border-radius: 0 50px 0 0;
  z-index: 3;
}
#winner .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
  z-index: 2;
}
#winner .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  /*
  gap: 0 152px;
  padding: 0 0 0 358px;
*/
  gap: 0 265px;
  padding: 0 0 0 45px;
}
#winner .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
}
#winner .title_inner h2 .title_wrap {
  padding: 42px 0 41px;
}
#winner .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100vw;
  height: 140px;
  position: absolute;
  /*  right: 254px; */
  right: 484px;
  top: 0;
  background-color: #e1c14e;
  border-radius: 0 70px 70px 0;
  z-index: -1;
}
#winner .title_inner p {
  padding: 30px 0 0;
  font-size: 20px;
  line-height: 35px;
  letter-spacing: 0.05em;
  font-weight: 600;
  text-align: center;
}
#winner .winner_wrap {
  background-color: rgba(30, 30, 30, 0.95);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  padding: 50px;
  border-radius: 700px 700px 0 0;
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
#winner .winner_wrap .border_wrap {
  padding: 120px 0 145px;
  border: 1px solid #fff;
  border-radius: 650px 650px 0 0;
  text-align: center;
}
#winner .winner_wrap .border_wrap .top_wrap {
  padding: 0 0 90px;
  border-bottom: 1px dashed #ffdfe6;
  width: 1100px;
  margin: 0 auto;
}
#winner .winner_wrap .border_wrap .gold_wrap {
  padding: 0 0 60px;
}
#winner .winner_wrap .border_wrap .gold_wrap h3 span {
  color: #ddb834;
}
#winner .winner_wrap .border_wrap .gold_wrap .overview {
  color: #ddb834;
}
#winner .winner_wrap .border_wrap .slver_wrap {
  padding: 0 0 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0 100px;
  width: 1100px;
  margin: 0 auto;
}
#winner .winner_wrap .border_wrap .slver_wrap h3 span {
  color: #c7cfd6;
}
#winner .winner_wrap .border_wrap .slver_wrap .overview {
  color: #c7cfd6;
}
#winner .winner_wrap .border_wrap .slver_wrap .project_title {
  height: 110px;
}
#winner .winner_wrap .border_wrap .bronze_wrap {
  padding: 0 0 90px;
}
#winner .winner_wrap .border_wrap .bronze_wrap h3 span {
  color: #f29f61;
}
#winner .winner_wrap .border_wrap .bronze_wrap .overview {
  color: #f29f61;
}
#winner .winner_wrap .border_wrap .winner_box {
  width: 500px;
  margin: 0 auto;
}
#winner .winner_wrap .border_wrap .winner_box p,
#winner .winner_wrap .border_wrap .winner_box span {
  color: #fff;
  display: block;
}
#winner .winner_wrap .border_wrap .winner_box h3 {
  padding: 0 0 40px;
}
#winner .winner_wrap .border_wrap .winner_box h3 img {
  margin: 0 auto;
}
#winner .winner_wrap .border_wrap .winner_box h3 span {
  display: block;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 0.25em;
  padding: 30px 0 0;
}
#winner .winner_wrap .border_wrap .winner_box .project_wrap .company {
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  font-weight: 500;
  padding: 0 0 20px;
}
#winner .winner_wrap .border_wrap .winner_box .project_wrap .company a {
  color: #fff;
  text-decoration: underline;
  position: relative;
}
#winner .winner_wrap .border_wrap .winner_box .project_wrap .company a::after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background: url(../../img/ic_outerlink.svg) no-repeat center center/16px auto;
  position: absolute;
  top: calc(50% - 6px);
  right: -28px;
}

#winner .winner_wrap .border_wrap .winner_box .project_wrap .project_title {
  font-size: 20px;
  line-height: 35px;
  letter-spacing: 0.05em;
  font-weight: 600;
  padding: 0 0 40px;
}
#winner .winner_wrap .border_wrap .winner_box .project_wrap .img_wrap {
  padding: 0 0 35px;
}
#winner .winner_wrap .border_wrap .winner_box .project_wrap .overview {
  font-size: 17px;
  letter-spacing: 0.06em;
  font-weight: 500;
  display: block;
  padding: 0 0 20px;
}
#winner .winner_wrap .border_wrap .winner_box .project_wrap p {
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.06em;
  text-align: justify;
}
#winner .winner_wrap .border_wrap .btn_wrap a {
  text-align: left;
  padding: 0 0 0 115px;
}
#winner .winner_wrap .border_wrap .extra {
  padding: 93px 0 0;
}
#winner .winner_wrap .border_wrap .extra h4 {
  text-align: center;
  font-size: 28px;
  letter-spacing: 0.25em;
  color: #acd0b1;
  padding: 0 0 38px;
}
#winner .winner_wrap .border_wrap .extra p {
  font-size: 20px;
  letter-spacing: 0.1em;
  padding: 0 0 65px;
  color: #fff;
}
#winner .winner_wrap .border_wrap .extra ul {
  width: 845px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 93px 105px;
}
#winner .winner_wrap .border_wrap .extra ul li {
  text-align: left;
}
#winner .winner_wrap .border_wrap .extra ul li .img_wrap {
  padding: 0 0 28px;
}
#winner .winner_wrap .border_wrap .extra ul li .img_wrap img {
  border-radius: 10px;
}
#winner .winner_wrap .border_wrap .extra ul li h5 {
  font-size: 18px;
  line-height: 32px;
  letter-spacing: 0.04em;
  padding: 0 0 30px;
  color: #acd0b1;
}
#winner .winner_wrap .border_wrap .extra ul li span {
  font-size: 14px;
  letter-spacing: 0.04em;
  display: block;
  color: #fff;
}
#winner .winner_circle-A {
  position: absolute;
  left: calc(50% - 28px);
  top: -370px;
  z-index: -1;
}
#faq {
  padding: 0 0 230px;
  position: relative;
}
#faq .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
  z-index: 2;
}
#faq .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-right: calc(50% - 50vw);
}
#faq .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
#faq .title_inner h2 .title_wrap {
  padding: 42px 0 30px 70px;
  position: relative;
  width: calc(100% - 350px);
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
#faq .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #8ce3cf;
  border-radius: 70px 0 0 70px;
  z-index: -1;
}
#faq .title_inner h2 .title_wrap:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #bdefe4;
  border-radius: 50px 0 0 0;
}
#faq .faq_inner {
  width: 1200px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 50px 0 0 0;
  padding: 85px 100px;
  position: relative;
  z-index: 2;
}
#faq .faq_inner dl {
  padding: 36px 50px 40px;
  border-bottom: 1px solid #c7c7c7;
}
#faq .faq_inner dl:first-child {
  padding: 0 50px 40px;
}
#faq .faq_inner dl:last-child {
  padding: 36px 50px 0;
  border-bottom: none;
}
#faq .faq_inner dl dt {
  position: relative;
  cursor: pointer;
  text-align: left;
}
#faq .faq_inner dl dt button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  padding: 20px 0;
}
#faq .faq_inner dl dt button .en {
  font-size: 35px;
  font-weight: 500;
  letter-spacing: 0.08em;
  width: 94px;
  display: block;
  text-align: left;
}
#faq .faq_inner dl dt button .question {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.08em;
}
#faq .faq_inner dl dt button .toggle {
  display: block;
  width: 42px;
  height: 42px;
  border: 1px solid #000;
  border-radius: 50%;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#faq .faq_inner dl dt button .toggle::before {
  content: "";
  display: block;
  width: 16px;
  height: 1px;
  background-color: #000;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#faq .faq_inner dl dt button .toggle::after {
  content: "";
  display: block;
  width: 1px;
  height: 16px;
  background-color: #000;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#faq .faq_inner dl dt button.on .toggle::after {
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
  transform: translate(-50%, -50%) rotate(90deg);
}
#faq .faq_inner dl dd {
  padding: 14px 0 0;
  display: none;
}
#faq .faq_inner dl dd .flex_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#faq .faq_inner dl dd .flex_wrap .en {
  font-size: 35px;
  font-weight: 500;
  letter-spacing: 0.08em;
  width: 94px;
  display: block;
  color: #009d6c;
}
#faq .faq_inner dl dd .flex_wrap .answer {
  font-size: 16px;
  line-height: 32px;
  letter-spacing: 0.08em;
  color: #009d6c;
  text-align: justify;
}
#faq .faq_circle-A {
  position: absolute;
  left: calc(50% - 620px);
  top: -340px;
  translate: -50% 0;
  z-index: -1;
}
#faq .faq_circle-A .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#faq .faq_circle-B {
  position: absolute;
  left: calc(50% - 450px);
  bottom: 80px;
  translate: -50% 0;
  z-index: -1;
}
#faq .faq_circle-B .circle:last-child {
  position: absolute;
  left: 0;
  top: 0;
}
#sponsor {
  position: relative;
}
#sponsor:after {
  content: "";
  display: block;
  width: 120px;
  height: 220px;
  position: absolute;
  left: 0;
  top: -80px;
  background-color: #efd7ff;
  border-radius: 0 50px 0 0;
}
#sponsor .title_inner {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 50px;
}
#sponsor .title_inner h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  gap: 0 130px;
  padding: 0 0 0 335px;
}
#sponsor .title_inner h2 span {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.13em;
  line-height: 140px;
  display: block;
}
#sponsor .title_inner h2 .title_wrap {
  padding: 42px 0 41px;
}
#sponsor .title_inner h2 .title_wrap::before {
  content: "";
  display: block;
  width: 100vw;
  height: 140px;
  position: absolute;
  right: 254px;
  top: 0;
  background-color: #e4c0ff;
  border-radius: 0 70px 70px 0;
  z-index: -1;
}
#sponsor .sponsor_wrap {
  width: 1200px;
  margin: 0 auto;
  background-color: rgba(225, 225, 208, 0.8);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 600px 600px 0 0;
  padding: 160px 150px 115px;
}
#sponsor .sponsor_wrap .sponsor_inner {
  text-align: center;
}
#sponsor .sponsor_wrap .sponsor_inner h3 {
  font-size: 24px;
  letter-spacing: 0.25em;
  font-weight: 500;
  padding: 0 0 48px;
}
#sponsor .sponsor_wrap .sponsor_inner .co-host {
  padding: 0 0 110px;
}
#sponsor .sponsor_wrap .sponsor_inner .sponsorship {
  padding: 0 0 110px;
}
#sponsor .sponsor_wrap .sponsor_inner .backing ul {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
#sponsor .sponsor_wrap .sponsor_inner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 30px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  height: 100dvh;
  display: none;
  z-index: 100;
}
#modal .mask_wrap {
  background-color: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#modal .mask_wrap .detail {
  display: none;
}
#modal .mask_wrap .detail_wrap {
  width: 700px;
  min-height: 600px;
  padding: 70px 120px 75px;
  background-color: #000;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#modal .mask_wrap .detail_wrap .text_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#modal .mask_wrap .detail_wrap .text_wrap .name_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding: 0 0 30px;
  width: 100%;
}
#modal .mask_wrap .detail_wrap .text_wrap .name_wrap span {
  color: #fff;
  letter-spacing: 0.09em;
}
#modal .mask_wrap .detail_wrap .text_wrap .name_wrap span.name {
  font-size: 26px;
  font-weight: 500;
  padding: 0 30px 0 0;
}
#modal .mask_wrap .detail_wrap .text_wrap .name_wrap span.name .honorific {
  font-size: 16px;
  padding: 0 0 0 5px;
}
#modal .mask_wrap .detail_wrap .text_wrap .name_wrap span .name_en {
  font-weight: 300;
  font-size: 16px;
}
#modal .mask_wrap .detail_wrap .text_wrap .position {
  font-size: 14px;
  line-height: 24px;
  color: #fff;
  display: block;
  padding: 0 0 30px;
  letter-spacing: 0.04em;
}
#modal .mask_wrap .detail_wrap .text_wrap p {
  font-size: 14px;
  line-height: 32px;
  letter-spacing: 0.02em;
  color: #fff;
  text-align: justify;
}
#modal .mask_wrap .detail_wrap .close_wrap {
  margin: auto auto 0;
}
#modal .mask_wrap .detail_wrap .close_wrap button {
  width: 210px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  font-size: 16px;
  letter-spacing: 0.1em;
  background-color: #fff;
  position: relative;
  border-radius: 30px;
  margin: 0 auto;
}
#modal .mask_wrap .detail_wrap .close_wrap button::before {
  content: "";
  width: 25px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 17px;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
#modal .mask_wrap .detail_wrap .close_wrap button::after {
  content: "";
  width: 25px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 17px;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
}
#modal_f {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  height: 100dvh;
  display: none;
  z-index: 100;
}
#modal_f .mask_wrap {
  background-color: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#modal_f .mask_wrap .detail {
  display: none;
}
#modal_f .mask_wrap .detail_wrap {
  width: 450px;
  min-height: 522px;
  padding: 40px 40px 30px 35px;
  background-color: #000;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#modal_f .mask_wrap .detail_wrap .text_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#modal_f .mask_wrap .detail_wrap .text_wrap .num {
  padding: 0 0 20px;
}
#modal_f .mask_wrap .detail_wrap .text_wrap h3 {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.09em;
  line-height: 32px;
  padding: 0 0 18px;
  color: #fff;
}
#modal_f .mask_wrap .detail_wrap .text_wrap .position {
  display: block;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.04em;
  padding: 0 0 18px;
  height: 66px;
  color: #fff;
}
#modal_f .mask_wrap .detail_wrap .text_wrap p {
  font-size: 14px;
  line-height: 28px;
  letter-spacing: 0.02em;
  color: #fff;
  text-align: justify;
}
#modal_f .mask_wrap .detail_wrap .close_wrap {
  margin: auto auto 0;
}
#modal_f .mask_wrap .detail_wrap .close_wrap button {
  width: 142px;
  height: 45px;
  line-height: 45px;
  font-size: 12px;
  letter-spacing: 0.1em;
  background-color: #fff;
  position: relative;
  border-radius: 25px;
  margin: 0 auto;
  text-align: left;
  padding: 0 0 0 22px;
}
#modal_f .mask_wrap .detail_wrap .close_wrap button::before {
  content: "";
  width: 19px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 17px;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
#modal_f .mask_wrap .detail_wrap .close_wrap button::after {
  content: "";
  width: 19px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 17px;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
}
@media screen and (max-width: 1400px) {
  body,
  html {
    height: auto;
  }
  #kv {
    height: 71.4285714286vw;
  }
  #kv .kv {
    width: 100vw;
  }
  #kv .kv .kv_circle_A {
    top: -2.5714285714vw;
    width: 59.9285714286vw;
  }
  #kv .kv .kv_circle_B {
    top: 25.7142857143vw;
    right: 3vw;
    width: 45.2142857143vw;
  }
  #kv .kv .kv_circle_C {
    top: -12.8571428571vw;
    left: 15vw;
    width: 35.8571428571vw;
  }
  #kv .kv .kv_circle_D {
    top: -7.1428571429vw;
    right: -21.7857142857vw;
    width: 35.1428571429vw;
  }
  #kv .kv .kv_circle_E {
    top: 18.4285714286vw;
    left: -11.9285714286vw;
    width: 25.5714285714vw;
  }
  #kv .kv .kv_circle_F {
    top: 45.7857142857vw;
    width: 32.5vw;
  }
  #kv .kv .kv_lead {
    top: 36.2142857143vw;
    width: 22.9285714286vw;
  }
  #kv h2 {
    top: 21.2857142857vw;
    width: 32.5vw;
  }
  #kv h3 {
  /*  top: 10.2857142857vw; */
/* 4Line */
    top: 9vw;
    left: 7.1428571429vw;
    /*    width: 34.2857142857vw;*/
    width: calc(2.1428571429vw * 19);
  }
  #kv h3 span {
    font-size: 2.1428571429vw;
    line-height: 3.1428571429vw;
    padding: 0 0.8571428571vw;
  }
  #kv .floating {
    right: 7.1428571429vw;
    bottom: 9.2857142857vw;
  }
  #kv .floating li:last-child {
    -webkit-transform: translateY(-0.8571428571vw);
    transform: translateY(-0.8571428571vw);
  }
  #kv .floating li img {
    width: 14.4285714286vw;
  }
  #kv h4 {
    bottom: 180px;
    right: 7.1428571429vw;
    width: 33vw;
  }
  @keyframes slideIn {
   from {
     right: -40vw;
   }
   to {
     right: 7.1428571429vw;
   }
  }
  #kv h4 span {
    font-size: calc(2.1428571429vw * 0.8);
    line-height: calc(3.1428571429vw * 0.8);
    padding: 0 calc(0.8571428571vw * 0.8);
  }
  #kv .pop {
   bottom: 300px;
   right: 7.1428571429vw;
   width: 14vw;
  }
  #kv .pop .limit {
    font-size: 1.44vw;
  }
  #kv .pop .year {
    padding-top: 4px;
    font-size: 1.2vw;
  }
  #kv .pop .date {
    font-size: 1.8vw;
  }
  #kv .pop .date span {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 1250px) {
  body,
  html {
    height: auto;
  }
  .topics h5 {
    padding-top: 8px;
    width: 140px;
    font-size: 1.44vw;
  }
  .topics .exList dt {
    background: url(../../img/ic_plus.svg) no-repeat right 8px;
    background-size: 24px auto;
  }
  .topics .exList dt.minus {
    background: url(../../img/ic_minus.svg) no-repeat right 8px;
    background-size: 24px auto;
  }
  .topics .exList .date {
    width: 150px;
  }
  .topics .exList .text {
    width: calc(100% - 150px);
  }
  .topics .exList .date,
  .topics .exList .text {
    font-size: 1.44vw;
  }

  #about {
    padding: 0 0 20vw;
  }
  #about .title_inner {
    width: 80vw;
  }
  #about .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #about .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw 5.6vw;
    width: calc(100% - 25.92vw);
  }
  #about .title_inner h2 .title_wrap img {
    width: 34.4vw;
  }
  #about .title_inner h2 .title_wrap:after {
    width: 9.6vw;
    height: 17.6vw;
  }
  #about .detail_inner {
    width: 80vw;
    padding: 4.8vw 0 0;
  }
  #about .detail_inner::before {
    width: 48vw;
    height: 46.72vw;
    left: -8vw;
  }
  #about .detail_inner .text_wrap p {
    font-size: 1.44vw;
    line-height: 3.68vw;
  }
  #about .detail_inner .text_wrap p br {
    font-size: 1.44vw;
  }
  #about .detail_inner .text_wrap p span {
    line-height: 2.08vw;
    padding: 1.6vw 0 0;
    font-size: 1.12vw;
  }
  #about .detail_inner .illust_wrap {
    padding: 17.2vw 5.36vw 0 0;
  }
  #about .detail_inner .illust_wrap .name img {
    width: 24.24vw;
  }
  #about .detail_inner .illust_wrap .dec_wrap {
    left: calc(50% - 3.2vw);
    top: calc(50% + 1.44vw);
  }
  #about .detail_inner .illust_wrap .dec_wrap img {
    width: 50.88vw;
  }
  #about .about_circle {
    left: calc(50% - 42.72vw);
    bottom: -22vw;
  }
  #about .about_circle .circle img {
    width: 50.72vw;
  }
  #information {
    padding: 0 0 16vw;
  }
  #information .info_inner {
    width: 80vw;
  }
  #information .info_inner .flex_wrap h2 {
    width: 11.2vw;
    padding: 6vw 3.36vw 12vw;
  }
  #information .info_inner .flex_wrap h2::before {
    height: 9.6vw;
  }
  #information .info_inner .flex_wrap h2 img {
    width: 4.56vw;
  }
  #information .info_inner .flex_wrap .info_wrap {
    width: calc(100% - 11.2vw);
  }
  #information .info_inner .flex_wrap .info_wrap h3 {
    font-size: 2.08vw;
    padding: 4.8vw 4vw 0 4vw;
    width: 17.6vw;
  }
  #information .info_inner .flex_wrap .info_wrap ul {
    width: calc(100% - 17.6vw);
  }
  #information .info_inner .flex_wrap .info_wrap ul li {
    height: 12vw;
  }
  #information .info_inner .flex_wrap .info_wrap ul li a {
    padding: 2.88vw 15.84vw 2.24vw 5.92vw;
  }
  #information .info_inner .flex_wrap .info_wrap ul li a .date {
    padding: 0 0 1.6vw;
  }
  #information .info_inner .flex_wrap .info_wrap ul li a p {
    line-height: 2vw;
    font-size: 1.28vw;
  }
  #information .info_circle {
    left: calc(50% - 1.6vw);
    bottom: -26vw;
  }
  #information .info_circle .circle img {
    width: 52.96vw;
  }
  #guidelines {
    padding: 0 0 26.6666666667vw;
  }
  #guidelines .title_inner {
    width: 80vw;
    padding: 0 0 4vw;
  }
  #guidelines .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #guidelines .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw 5.6vw;
    width: calc(100% - 28vw);
  }
  #guidelines .title_inner h2 .title_wrap img {
    width: 32.56vw;
  }
  #guidelines .title_inner h2 .title_wrap:after {
    width: 9.6vw;
    height: 17.6vw;
    border-radius: 0 0 0 4vw;
  }
  #guidelines .title_inner p {
    margin-top: 3.2vw;
    font-size: 1.28vw;
    line-height: 2.24vw;
  }
  #guidelines .detail {
    width: 88vw;
  }
  #guidelines .detail .detail_inner {
/*
    padding: 0 0 7.84vw;
 * button hide ↓ */
  padding: 0;
    border-radius: 0 0 8vw;
  }
  #guidelines .detail .overview {
    width: 88vw;
/*
    padding: 0 0 6.24vw;
 * button hide ↓ */
  padding: 0;
  }
  #guidelines .detail .requirements {
    width: 88vw;
  }
  #guidelines .detail dl {
    width: 88vw;
  }
  #guidelines .detail dl dt {
    font-size: 1.76vw;
    padding: 3.6vw 0 3.6vw 8vw;
    width: 25.6vw;
    border-radius: 0 2.4vw 2.4vw 0;
  }
  #guidelines .detail dl dd {
    width: 62.32vw;
    padding: 2.4vw 0 2.4vw 6.24vw;
    border-radius: 2.4vw 0 0 2.4vw;
    font-size: 1.28vw;
    line-height: 2.24vw;
  }
  #guidelines .detail dl dd.theme {
    font-size: 1.76vw;
    line-height: 2.4vw;
  }
  #guidelines .detail dl dd.period p {
    font-size: 1.76vw;
  }
  #guidelines .detail dl dd.period span.num {
    font-size: 3.2vw;
  }
  #guidelines .detail dl dd.period span.num.small {
    font-size: 2.56vw;
  }
  #guidelines .detail dl dd.black_circle ul.target {
    padding: 2.24vw 0 0;
  }
  #guidelines .detail dl dd.black_circle ul li {
    font-size: 1.28vw;
    line-height: 2.24vw;
  }
  #guidelines .detail dl dd.black_circle ul li span {
    padding: 0 1.6vw 0 0;
  }
  #guidelines .detail dl dd.black_circle ul.examination li {
    padding: 0 8vw 2.4vw 0;
  }
  #guidelines .detail dl dd.black_circle ul.examination li p {
    font-size: 1.12vw;
    line-height: 1.92vw;
    padding: 0 0 0 2.96vw;
  }
  #guidelines .detail dl dd.black_circle .caution {
    font-size: 1.28vw;
  }
  #guidelines .detail dl dd.dotts ul:first-child {
    padding: 0 6vw 0 0;
  }
  #guidelines .detail dl dd.dotts ul li span {
    padding: 0 1.6vw 0 0;
  }
  #guidelines .detail dl dd.flex ul:first-child {
    padding: 0 7.2vw 0 0;
  }
  #guidelines .detail dl dd.flex ul:nth-child(2) {
    padding: 0 4.8vw 0 0;
  }
  #guidelines .detail dl dd.flex ul li {
    font-size: 1.28vw;
    line-height: 2.24vw;
  }
  #guidelines .btn_wrap {
    margin: 0 24vw 0 auto;
  }
  #guidelines .btn_wrap a {
    padding: 0 0 0 9.6vw;
  }
  #guidelines .guide_circle-A {
    left: calc(50% + 48vw);
    top: calc(50% - 8.8vw);
  }
  #guidelines .guide_circle-A .circle img {
    width: 28.64vw;
  }
  #guidelines .guide_circle-B {
    left: calc(50% - 39.2vw);
    top: calc(50% + 72.8vw);
  }
  #guidelines .guide_circle-B .circle img {
    width: 67.2vw;
  }
  #schedule {
    padding: 0 0 16vw;
  }
  #schedule .title_inner {
    width: 80vw;
    padding: 0 0 4vw;
  }
  #schedule .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #schedule .title_inner h2 .title_wrap {
    width: calc(100% - 28.64vw);
    padding: 3.36vw 0 3.28vw 5.6vw;
  }
  #schedule .title_inner h2 .title_wrap::before {
    border-radius: 5.6vw 0 0 5.6vw;
  }
  #schedule .title_inner h2 .title_wrap:after {
    width: 9.6vw;
    height: 17.6vw;
    border-radius: 0 0 0 4vw;
  }
  #schedule .schedule_inner {
    width: 96vw;
  }
  #schedule .schedule_inner ul {
    width: 65.6vw;
    border-radius: 0 0 0 4.8vw;
  }
  #schedule .schedule_inner ul li {
    height: 11.2vw;
    border-radius: 0 0 0 3.2vw;
  }
  #schedule .schedule_inner ul li:nth-child(2) {
    -webkit-transform: translateX(6vw);
    transform: translateX(6vw);
  }
  #schedule .schedule_inner ul li:nth-child(3) {
    -webkit-transform: translateX(12vw);
    transform: translateX(12vw);
  }
  #schedule .schedule_inner ul li:nth-child(4) {
    -webkit-transform: translateX(18vw);
    transform: translateX(18vw);
  }
  #schedule .schedule_inner ul li:nth-child(5) {
    -webkit-transform: translateX(24vw);
    transform: translateX(24vw);
  }
  #schedule .schedule_inner ul li:nth-child(6) {
    -webkit-transform: translateX(30vw);
    transform: translateX(30vw);
  }
  #schedule .schedule_inner ul li .date_wrap {
    padding: 0 0 0 8vw;
    width: 30vw;
  }
  #schedule .schedule_inner ul li .date_wrap .year {
    font-size: 1.36vw;
    padding: 0 0.96vw 0 0;
  }
  #schedule .schedule_inner ul li .date_wrap .date {
    font-size: 3.6vw;
    padding: 0 0.4vw 0 0;
  }
  #schedule .schedule_inner ul li .date_wrap .week {
    font-size: 1.76vw;
  }
  #schedule .schedule_inner ul li .date_wrap .almost {
    font-size: 2.08vw;
  }
  #schedule .schedule_inner ul li .detail {
    padding: 0 0 0 3.2vw;
  }
  #schedule .schedule_inner ul li .detail::before {
    height: 4.16vw;
  }
  #schedule .schedule_inner ul li .detail span {
    font-size: 1.6vw;
    line-height: 4vw;
  }
  #schedule .schedule_circle-A {
    left: calc(50% + 32.8vw);
    top: calc(50% - 16.8vw);
  }
  #schedule .schedule_circle-A .circle img {
    width: 67.2vw;
  }
  #judges {
    padding: 0 0 17.6vw;
  }
  #judges:after {
    display: none;
  }
  #judges .title_inner {
    width: 80vw;
    padding: 0 0 6.6666666667vw;
  }
  #judges .title_inner h2 {
    gap: 0 22.08vw;
  }
  #judges .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #judges .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw;
  }
  #judges .title_inner h2 .title_wrap img {
    width: 21.6vw;
  }
  #judges .title_inner h2 .title_wrap::before {
    height: 11.2vw;
    border-radius: 0 5.6vw 5.6vw 0;
  }
  #judges .judge_wrap {
    width: 96vw;
    padding: 6.4vw 8vw 8vw;
    border-radius: 0 8vw 8vw 0;
  }
  #judges .judge_wrap ul {
    gap: 5.6vw 5.2vw;
  }
  #judges .judge_wrap ul li {
    width: 23.2vw;
  }
  #judges .judge_wrap ul li:last-child p {
    font-size: 1.44vw;
    line-height: 2.56vw;
    padding: 0 0 0 2.56vw;
  }
  #judges .judge_wrap ul li .img_wrap {
    border-radius: 12.8vw 12.8vw 0 0;
    width: 20.96vw;
  }
  #judges .judge_wrap ul li .img_wrap img {
    border-radius: 12.8vw 12.8vw 0 0;
    -webkit-transform: translateX(-2.24vw);
    transform: translateX(-2.24vw);
    width: 20.96vw;
  }
  #judges .judge_wrap ul li .detail {
    border-radius: 0 0 2.4vw;
    padding: 2.08vw 0 4.96vw 2.24vw;
  }
  #judges .judge_wrap ul li .detail span.position {
    font-size: 1.28vw;
    height: 2.24vw;
    padding: 0 0 0.96vw;
  }
  #judges .judge_wrap ul li .detail span.name {
    font-size: 2.08vw;
    padding: 0 0 1.6vw;
  }
  #judges .judge_wrap ul li .detail span.name .honorific {
    font-size: 1.28vw;
    padding: 0 0 0 0.4vw;
  }
  #judges .judge_wrap ul li .detail span.career {
    font-size: 1.12vw;
    line-height: 1.92vw;
  }
  #judges .judge_wrap ul li .detail .profile {
    right: 3.04vw;
    bottom: 0.8vw;
    padding: 0.8vw 1.6vw 0.8vw 0;
  }
  #judges .judge_wrap ul li .detail .profile::after {
    width: 2.24vw;
    height: 2.24vw;
    right: -1.76vw;
    background-size: 2.24vw;
  }
  #judges .judge_circle-A {
    left: calc(50% - 54.4vw);
    top: calc(50% - 56vw);
  }
  #judges .judge_circle-A .circle img {
    width: 108.16vw;
  }
  #judges .judge_circle-B {
    left: calc(50% + 48vw);
    top: calc(50% + 55.52vw);
  }
  #judges .judge_circle-B .circle img {
    width: 36.32vw;
  }

  #interview {
    padding: 0 0 17.6vw;
  }
  #interview:after {
    display: none;
  }
  #interview .title_inner {
    width: 80vw;
    padding: 0 0 6.6666666667vw;
  }
  #interview .title_inner h2 {
    gap: 0 22.08vw;
  }
  #interview .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #interview .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw;
  }
  #interview .title_inner h2 .title_wrap img {
    width: 30.08vw;
  }
  #interview .title_inner h2 .title_wrap::before {
    height: 11.2vw;
    border-radius: 0 5.6vw 5.6vw 0;
  }
  #interview .interview_wrap {
    width: 96vw;
    padding: 6.4vw 8vw 8vw;
    border-radius: 0 8vw 8vw 0;
  }
#interview .interview_wrap ul li .int_sub {
  font-size: 2.08vw;
}
#interview .interview_wrap ul li .int_prof {
    font-size: 1.44vw;
}
#interview .interview_wrap ul li .int_ttl {
    font-size: 2.24vw;
}

  #gallary {
    padding: 4vw 0 8.8vw;
  }
  #gallary .gallary_inner {
    width: 80vw;
  }
  #gallary h2 {
    padding: 0 0 2.56vw;
  }
  #gallary h2 img {
    width: 11.84vw;
  }

  #gallary .gallary_inner p {
    font-size: 1.12vw;
    line-height: 2.24vw;
  }
  #gallary .gallary_inner p span {
    padding: 5px 4vw;
  }

  #gallary ul {
    gap: 2vw 2vw;
  }
  #gallary ul li img {
    width: 14.4vw;
  }
  #entry {
    padding: 0 0 20.48vw;
  }
  #entry .bg_wrap {
    padding: 0 0 8vw;
    width: 34.8vw;
    border-radius: 0 0 20vw 20vw;
  }
  #entry .bg_wrap h2 {
    padding: 8vw 0 4vw;
  }
  #entry .bg_wrap h2 img {
    width: 17.12vw;
  }
  #entry .bg_wrap h2 span {
    font-size: 2.08vw;
    padding: 2.08vw 0 0;
  }
  #entry .bg_wrap ul li {
/*    margin: 0 0 3.6vw; */
    margin: 0 0 2.8vw;
  }
  #entry .bg_wrap p {
    font-size: 1.2vw;
  }
  #entry .entry_circle-A {
    top: -9.6vw;
  }
  #entry .entry_circle-A .circle img {
    width: 95.84vw;
  }
  #final {
    padding: 0 0 18.4vw;
  }
  #final .title_inner {
    width: 80vw;
    padding: 0 0 4vw;
  }
  #final .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #final .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw 5.6vw;
    width: calc(100% - 15.36vw);
  }
  #final .title_inner h2 .title_wrap img {
    width: 58.24vw;
  }
  #final .title_inner h2 .title_wrap:after {
    display: none;
  }
  #final .detail_inner {
    width: 84vw;
    -webkit-transform: translateX(-2vw);
    transform: translateX(-2vw);
  }
  #final .detail_inner dl dt {
    font-size: 1.6vw;
    padding: 4vw 0 4vw 4vw;
    width: 22.4vw;
    border-radius: 0 2.4vw 2.4vw 0;
  }
  #final .detail_inner dl dd {
    width: 61.6vw;
    padding: 2.4vw 0 2.4vw 6.24vw;
    border-radius: 2.4vw 0 0 2.4vw;
    font-size: 1.28vw;
  }
  #final .detail_inner dl dd .flex_wrap .secretariat {
    padding: 0 4vw 0 0;
  }
  #final .detail_inner dl dd .flex_wrap .address_wrap {
    padding: 0 0 0 4vw;
  }
  #final .detail_inner dl dd .flex_wrap .address_wrap .mail_wrap span,
  #final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap span {
    font-size: 1.12vw;
  }
  #final
    .detail_inner
    dl
    dd
    .flex_wrap
    .address_wrap
    .mail_wrap
    span:first-child,
  #final
    .detail_inner
    dl
    dd
    .flex_wrap
    .address_wrap
    .tell_wrap
    span:first-child {
    width: 7.84vw;
  }
  #final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap {
    padding: 0 0 1.6vw;
  }
  #final .presentator_wrap {
    width: 96vw;
    padding: 0 0 11.2vw;
  }
  #final .presentator_wrap .bg_wrap {
    width: 69.6vw;
    border-radius: 0 0 0 11.2vw;
  }
  #final .presentator_wrap .bg_wrap .presentator {
    width: 57.36vw;
    border-radius: 0 14.64vw 0 0;
    padding: 4vw 7.6vw 5.44vw 6vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction h3 {
    padding: 4vw 0 6vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction h3 img {
    width: 15.68vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction h3 span {
    padding: 1.6vw 0 0;
    font-size: 1.28vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction .position {
    padding: 0 0 1.76vw;
    font-size: 1.44vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction .name {
    font-size: 2.4vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .img_wrap img {
    width: 20.96vw;
  }
  #final .btn_list {
    gap: 0 4vw;
  }
  #final .final_circle-A {
    left: calc(50% - 42.4vw);
    top: calc(50% + 29.6vw);
  }
  #final .final_circle-A .circle img {
    width: 50.72vw;
  }
  #final.final_pitch .title_inner h2 .title_wrap {
    width: calc(100% - 37.6vw);
  }
  #final.final_pitch .title_inner h2 .title_wrap img {
    width: 33.52vw;
  }
  #final.final_pitch .title_inner h2 span {
    padding: 0 0 0 16.8vw;
  }
  #finalist {
    padding: 0 0 18.4vw;
    margin: 17.6vw 0 0;
  }
  #finalist:after {
    width: 9.6vw;
    height: 17.6vw;
    top: -6.4vw;
    border-radius: 0 4vw 0 0;
  }
  #finalist .title_inner {
    width: 80vw;
    padding: 0 0 4vw;
  }
  #finalist .title_inner h2 {
    gap: 0 19.2vw;
    padding: 0 0 0 3.6vw;
  }
  #finalist .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #finalist .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw;
  }
  #finalist .title_inner h2 .title_wrap img {
    width: 25.76vw;
  }
  #finalist .title_inner h2 .title_wrap::before {
    height: 11.2vw;
    right: 38.72vw;
  }
  #finalist .finalist_inner {
    width: 96vw;
    padding: 7.2vw 8vw;
    border-radius: 0 4vw 4vw 0;
  }
  #finalist .finalist_inner ul {
    gap: 7.2vw 8vw;
    padding: 0 0 7.6vw;
  }
  #finalist .finalist_inner ul li {
    width: 36vw;
    gap: 0 2.8vw;
    padding: 0 0 5.2vw;
  }
  #finalist .finalist_inner ul li .img_wrap {
    width: 12.8vw;
    border-radius: 6.4vw 6.4vw 0 0;
  }
  #finalist .finalist_inner ul li .img_wrap .pic {
    border-radius: 6.4vw 6.4vw 0 0;
    -webkit-transform: translateX(0.96vw);
    transform: translateX(0.96vw);
  }
  #finalist .finalist_inner ul li .img_wrap .pic img {
    border-radius: 6.4vw 6.4vw 0 0;
    -webkit-transform: translateX(-0.96vw);
    transform: translateX(-0.96vw);
    width: 100%;
  }
  #finalist .finalist_inner ul li .img_wrap .num {
    left: -0.64vw;
    top: -0.56vw;
  }
  #finalist .finalist_inner ul li .img_wrap .num img {
    width: 4vw;
  }
  #finalist .finalist_inner ul li .detail_wrap {
    width: 19.2vw;
  }
  #finalist .finalist_inner ul li .detail_wrap h3 {
    font-size: 1.44vw;
    line-height: 2.24vw;
  /* 3Line
  height: 7.2vw; */
  /* 4Line */    
    height: 9.5vw;
  }
  #finalist .finalist_inner ul li .detail_wrap .position {
    font-size: 1.12vw;
    line-height: 1.92vw;
    height: 6.24vw;
  }
  #finalist .finalist_inner ul li .detail_wrap .detail {
  /* 3Line
    bottom: 5.2vw; */
    bottom: 3vw;
  }
  #finalist .finalist_inner ul li .detail_wrap .detail button {
    font-size: 0.96vw;
    width: 11.36vw;
    line-height: 3.6vw;
    border-radius: 2.4vw;
    background: url(../../img/finalist_arw.svg) no-repeat 8vw center #000;
    background-size: 1.12vw auto;
    padding: 0 0 0 1.76vw;
  }
  /*
  #finalist .finalist_inner ul li:nth-child(7) {
    padding: 0;
  }
  #finalist .finalist_inner ul li:nth-child(7) .detail_wrap .detail {
    bottom: 0;
  }
  #finalist .finalist_inner ul li:nth-child(8) {
    padding: 0;
  }
  #finalist .finalist_inner ul li:nth-child(8) .detail_wrap .detail {
    bottom: 0;
  }
*/
  #finalist .finalist_circle {
    left: calc(50% - 42.4vw);
    top: calc(50% + 29.6vw);
  }
  #finalist .finalist_circle .circle img {
    width: 52.96vw;
  }
  #winner {
/*    padding: 0 0 18.4vw; */
  /* FAQ - off */
  padding: 0 0 8vw;
}
  #winner:after {
    width: 9.6vw;
    height: 17.6vw;
    top: -6.4vw;
  }
  #winner .title_inner {
    width: 80vw;
    padding: 0 0 4vw;
  }
  #winner .title_inner h2 {
    /*    gap: 0 12.16vw;
    padding: 0 0 0 28.64vw; */
    gap: 0 22vw;
    padding: 0 0 0 3.6vw;
  }
  #winner .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #winner .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw;
  }
  #winner .title_inner h2 .title_wrap img {
    width: 22.24vw;
  }
  #winner .title_inner h2 .title_wrap::before {
    height: 11.2vw;
    /*    right: 20.32vw; */
    right: 38.72vw;
  }
  #winner .winner_wrap {
    padding: 4vw;
    max-width: 112vw;
  }
  #winner .winner_wrap .border_wrap {
    padding: 9.6vw 0 11.6vw;
  }
  #winner .winner_wrap .border_wrap .top_wrap {
    padding: 0 0 7.2vw;
    width: 88vw;
  }
  #winner .winner_wrap .border_wrap .gold_wrap {
    padding: 0 0 4.8vw;
  }
  #winner .winner_wrap .border_wrap .slver_wrap {
    padding: 0 0 4.8vw;
    width: 88vw;
    gap: 0 8vw;
  }
  #winner .winner_wrap .border_wrap .slver_wrap .project_title {
    height: 8.8vw;
  }
  #winner .winner_wrap .border_wrap .bronze_wrap {
    padding: 0 0 7.2vw;
  }
  #winner .winner_wrap .border_wrap .winner_box {
    width: 40vw;
  }
  #winner .winner_wrap .border_wrap .winner_box h3 {
    padding: 0 0 3.2vw;
  }
  #winner .winner_wrap .border_wrap .winner_box h3 img {
    width: 10.08vw;
  }
  #winner .winner_wrap .border_wrap .winner_box h3 span {
    font-size: 2.24vw;
    padding: 2.4vw 0 0;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .company {
    font-size: 1.44vw;
    padding: 0 0 1.6vw;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .project_title {
    font-size: 1.6vw;
    padding: 0 0 3.2vw;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .img_wrap {
    padding: 0 0 2.8vw;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .img_wrap img {
    width: 100%;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .overview {
    font-size: 1.36vw;
    padding: 0 0 1.6vw;
  }
  #winner .title_inner p {
    font-size: 1.6vw;
    padding: 3.2vw 0 0;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap p {
    font-size: 1.12vw;
    line-height: 2.24vw;
  }
  #winner .winner_wrap .border_wrap .btn_wrap a {
    padding: 0 0 0 9.2vw;
  }
  #winner .winner_wrap .border_wrap .extra {
    padding: 7.44vw 0 0;
  }
  #winner .winner_wrap .border_wrap .extra h4 {
    font-size: 2.24vw;
    padding: 0 0 3.04vw;
  }
  #winner .winner_wrap .border_wrap .extra p {
    font-size: 1.6vw;
    padding: 0 0 5.2vw;
  }
  #winner .winner_wrap .border_wrap .extra ul {
    width: 67.6vw;
    gap: 7.44vw 8.4vw;
  }
  #winner .winner_wrap .border_wrap .extra ul li .img_wrap {
    padding: 0 0 2.24vw;
  }
  #winner .winner_wrap .border_wrap .extra ul li .img_wrap img {
    border-radius: 0.8vw;
    width: 29.6vw;
  }
  #winner .winner_wrap .border_wrap .extra ul li h5 {
    font-size: 1.44vw;
    line-height: 2.56vw;
    padding: 0 0 2.4vw;
  }
  #winner .winner_wrap .border_wrap .extra ul li span {
    font-size: 1.12vw;
  }
  #winner .winner_circle-A {
    left: calc(50% - 2.24vw);
    top: -29.6vw;
  }
  #winner .winner_circle-A img {
    width: 74.24vw;
  }
  #faq {
    padding: 0 0 18.4vw;
  }
  #faq .title_inner {
    width: 80vw;
    padding: 0 0 4vw;
  }
  #faq .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #faq .title_inner h2 .title_wrap {
    padding: 3.36vw 0 2.4vw 5.6vw;
    width: calc(100% - 28vw);
  }
  #faq .title_inner h2 .title_wrap img {
    width: 9.44vw;
  }
  #faq .title_inner h2 .title_wrap:after {
    width: 9.6vw;
    height: 17.6vw;
    border-radius: 4vw 0 0 0;
  }
  #faq .faq_inner {
    width: 96vw;
    padding: 6.8vw 8vw;
    border-radius: 4vw 0 0 0;
  }
  #faq .faq_inner dl {
    padding: 2.88vw 4vw 3.2vw;
  }
  #faq .faq_inner dl:first-child {
    padding: 0 4vw 3.2vw;
  }
  #faq .faq_inner dl:last-child {
    padding: 2.88vw 4vw 0;
  }
  #faq .faq_inner dl dt button {
    padding: 1.6vw 0;
  }
  #faq .faq_inner dl dt button .en {
    font-size: 2.8vw;
    width: 7.52vw;
  }
  #faq .faq_inner dl dt button .question {
    font-size: 1.44vw;
  }
  #faq .faq_inner dl dt button .toggle {
    width: 3.36vw;
    height: 3.36vw;
  }
  #faq .faq_inner dl dt button .toggle::before {
    width: 1.28vw;
  }
  #faq .faq_inner dl dt button .toggle::after {
    height: 1.28vw;
  }
  #faq .faq_inner dl dd {
    padding: 1.12vw 0 0;
  }
  #faq .faq_inner dl dd .flex_wrap .en {
    font-size: 2.8vw;
    width: 7.52vw;
  }
  #faq .faq_inner dl dd .flex_wrap .answer {
    font-size: 1.28vw;
    line-height: 2.56vw;
  }
  #faq .faq_circle-A {
    left: calc(50% - 49.6vw);
    top: -27.2vw;
  }
  #faq .faq_circle-A .circle img {
    width: 28.64vw;
  }
  #faq .faq_circle-B {
    left: calc(50% - 36vw);
    bottom: 6.4vw;
  }
  #faq .faq_circle-B .circle img {
    width: 74.4vw;
  }
  #sponsor:after {
    width: 9.6vw;
    height: 17.6vw;
    top: -6.4vw;
    border-radius: 0 4vw 0 0;
  }
  #sponsor .title_inner {
    width: 80vw;
    padding: 0 0 4vw;
  }
  #sponsor .title_inner h2 {
    gap: 0 10.4vw;
    padding: 0 0 0 26.8vw;
  }
  #sponsor .title_inner h2 span {
    font-size: 2.08vw;
    line-height: 11.2vw;
  }
  #sponsor .title_inner h2 .title_wrap {
    padding: 3.36vw 0 3.28vw;
  }
  #sponsor .title_inner h2 .title_wrap img {
    width: 25.76vw;
  }
  #sponsor .title_inner h2 .title_wrap::before {
    height: 11.2vw;
    right: 20.32vw;
  }
  #sponsor .sponsor_wrap {
    width: 96vw;
    padding: 12.8vw 12vw 9.2vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner h3 {
    font-size: 1.92vw;
    padding: 0 0 3.84vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner .co-host {
    padding: 0 0 8.8vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner .sponsorship {
    padding: 0 0 8.8vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner ul {
    gap: 2.4vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner ul li img {
    width: 22.4vw;
  }
  #modal .mask_wrap .detail_wrap {
    width: 56vw;
    min-height: 48vw;
    padding: 5.6vw 9.6vw 6vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap {
    padding: 0 0 2.4vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap span.name {
    font-size: 2.08vw;
    padding: 0 2.4vw 0 0;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap span.name .honorific {
    font-size: 1.28vw;
    padding: 0 0 0 0.4vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap span .name_en {
    font-size: 1.28vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .position {
    font-size: 1.12vw;
    line-height: 1.92vw;
    padding: 0 0 2.4vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap p {
    font-size: 1.12vw;
    line-height: 2.56vw;
  }
  #modal .mask_wrap .detail_wrap .close_wrap button {
    width: 16.8vw;
    height: 4.8vw;
    line-height: 4.8vw;
    font-size: 1.28vw;
  }
  #modal .mask_wrap .detail_wrap .close_wrap button::before {
    width: 2vw;
    right: 1.36vw;
  }
  #modal .mask_wrap .detail_wrap .close_wrap button::after {
    width: 2vw;
    right: 1.36vw;
  }
  #modal_f .mask_wrap .detail_wrap {
    width: 36vw;
    min-height: 41.76vw;
    padding: 3.2vw 3.2vw 2.4vw 2.8vw;
    border-radius: 1.6vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap .num {
    padding: 0 0 1.6vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap .num img {
    width: 4vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap h3 {
    font-size: 1.6vw;
    line-height: 2.56vw;
    padding: 0 0 1.44vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap .position {
    font-size: 1.12vw;
    line-height: 1.92vw;
    padding: 0 0 1.44vw;
    height: 5.28vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap p {
    font-size: 1.12vw;
    line-height: 2.24vw;
  }
  #modal_f .mask_wrap .detail_wrap .close_wrap button {
    width: 11.36vw;
    height: 3.6vw;
    line-height: 3.6vw;
    font-size: 0.96vw;
    border-radius: 2vw;
    padding: 0 0 0 1.76vw;
  }
  #modal_f .mask_wrap .detail_wrap .close_wrap button::before {
    width: 1.52vw;
    right: 1.36vw;
  }
  #modal_f .mask_wrap .detail_wrap .close_wrap button::after {
    width: 1.52vw;
    right: 1.36vw;
  }
}
@media screen and (max-width: 960px) {
  body,
  html {
    height: auto;
  }
  #kv {
    height: 164vw;
  }
  #kv .kv {
    width: 100%;
  }
  #kv .kv .kv_circle_A {
    top: 6vw;
    width: 100%;
  }
  #kv .kv .kv_circle_B {
    top: 51.2vw;
    right: -33.0666666667vw;
    width: 82.2666666667vw;
  }
  #kv .kv .kv_circle_C {
    top: -16.4vw;
    left: -12.8vw;
    width: 65.3333333333vw;
  }
  #kv .kv .kv_circle_D {
    display: none;
  }
  #kv .kv .kv_circle_E {
    display: none;
  }
  #kv .kv .kv_circle_F {
    top: 111.6vw;
    left: -17.7333333333vw;
    width: 60.5333333333vw;
  }
  #kv .kv .kv_lead {
    top: 71.2vw;
    width: 42.2666666667vw;
  }
  #kv .kv .kv_lead img {
    width: 42.4vw;
  }
  #kv h2 {
    top: 43.6vw;
    width: 60vw;
  }
  #kv h2 #csup_svg .cls-1 {
    stroke-width: 0.8vw;
  }
  #kv h3 {
  /*  top: 94.4vw; */
/* 4Line */
    top: 86vw;
    left: 4vw;
    width: 64vw;
  }
  #kv h3 span {
    font-size: 4vw;
    line-height: 5.8666666667vw;
    padding: 0 1.0666666667vw;
  }
  #kv .floating {
    right: 3.3333333333vw;
    bottom: 4vw;
  }
  #kv .floating li:last-child {
    -webkit-transform: translateY(-2.6666666667vw);
    transform: translateY(-2.6666666667vw);
  }
  #kv .floating li img {
    width: 32vw;
  }


#kv h4 {
  bottom: 120px;
  right: 4vw;
  width: 60.8vw;
}
@keyframes slideIn {
  from {
    right: -70vw;
  }
  to {
    right: 4vw;
  }
}
#kv h4 span {
    font-size: 3.2vw;
    line-height: calc(5.8666666667vw * 0.8);
    padding: 0 calc(1.0666666667vw * 0.8);
}
  #kv .pop {
   bottom: calc(120px + 16vw);
   right: 4vw;
   width: 24vw;
  padding: 20px 16px;
  }
  #kv .pop .limit {
    font-size: 2.4vw;
  }
  #kv .pop .year {
    padding-top: 4px;
    font-size: 2vw;
  }
  #kv .pop .date {
    font-size: 3vw;
  }
  #kv .pop .date span {
    font-size: 2vw;
  }

.topics {
  margin: -100px auto 40px;
}
.topics .section__inner {
  padding: 0 20px;
  width: 100%;
  background-color: #fff;
  border: 1px solid #222;
  border-radius: 20px;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: column;
}
  .topics h5 {
    padding-top: 8px;
    width: 100%;
    font-size: 3.7333333333vw;
  }
  .topics .exList {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
  .topics .exList dt {
    background: url(../../img/ic_plus.svg) no-repeat;
    background-size: 24px auto;
    background-position: right 7.46vw;
  }
  .topics .exList dt.minus {
    background: url(../../img/ic_minus.svg) no-repeat;
    background-size: 24px auto;
    background-position: right 7.46vw;
  }
  .topics .exList dt {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
  }
  .topics .exList li {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
  }
  .topics .exList .date {
    width: 100%;
  }
  .topics .exList .text {
    width: 100%;
  }
  .topics .exList .date,
  .topics .exList .text {
    font-size: 3.7333333333vw;
  }

  #about {
    padding: 0 0 45.3333333333vw;
  }
  #about .title_inner {
    width: 100%;
    margin: 0;
    padding: 0 0 6vw;
  }
  #about .title_inner h2 {
    display: block;
    margin: 0;
  }
  #about .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #about .title_inner h2 .title_wrap {
    padding: 6vw 0 6vw 10.6666666667vw;
    width: 86.6666666667vw;
    margin: 0 0 4.6666666667vw auto;
  }
  #about .title_inner h2 .title_wrap img {
    width: 50.1333333333vw;
  }
  #about .title_inner h2 .title_wrap::before {
    border-radius: 9.3333333333vw 0 0 9.3333333333vw;
  }
  #about .title_inner h2 .title_wrap:after {
    display: none;
  }
  #about .detail_inner {
    width: 96.6666666667vw;
    margin: 0 0 0 auto;
    display: block;
    padding: 0;
  }
  #about .detail_inner::before {
    display: none;
  }
  #about .detail_inner .text_wrap {
    padding: 10vw 8.6666666667vw 18.6666666667vw 6vw;
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    border-radius: 8vw 0 0 0;
  }
  #about .detail_inner .text_wrap p {
    font-size: 3.7333333333vw;
    line-height: 8vw;
    white-space: nowrap;
  }
  #about .detail_inner .text_wrap p span {
    font-size: 3.2vw;
    line-height: 5.6vw;
    padding: 6vw 0 0;
    text-align: justify;
    white-space: normal;
  }
  #about .detail_inner .illust_wrap {
    padding: 11.3333333333vw 0 0;
  }
  #about .detail_inner .illust_wrap .name img {
    width: 43.0666666667vw;
    margin: 0 auto;
  }
  #about .detail_inner .illust_wrap .dec_wrap {
    left: 50%;
    top: calc(50% + 2.6666666667vw);
  }
  #about .detail_inner .illust_wrap .dec_wrap img {
    width: 90.2666666667vw;
  }
  #about .about_circle {
    translate: none;
    left: -36vw;
    bottom: -62.6666666667vw;
  }
  #about .about_circle .circle img {
    width: 84.5333333333vw;
  }
  #information {
    padding: 0 0 26.6666666667vw;
  }
  #information .info_inner {
    width: 100%;
    margin: 0;
  }
  #information .info_inner .flex_wrap {
    display: block;
    margin: 0;
  }
  #information .info_inner .flex_wrap h2 {
    width: 86.6666666667vw;
    padding: 0;
    margin: 0 0 4.6666666667vw auto;
    padding: 6vw 0 6vw 9.0666666667vw;
    border-radius: 9.3333333333vw 0 0 9.3333333333vw;
  }
  #information .info_inner .flex_wrap h2::before {
    display: none;
  }
  #information .info_inner .flex_wrap h2 img {
    width: 54.2666666667vw;
    margin: 0;
  }
  #information .info_inner .flex_wrap .info_wrap {
    display: block;
    width: 100%;
  }
  #information .info_inner .flex_wrap .info_wrap::before {
    display: none;
  }
  #information .info_inner .flex_wrap .info_wrap h3 {
    font-size: 4.2666666667vw;
    padding: 0 0 5.6vw;
    width: auto;
    text-align: center;
  }
  #information .info_inner .flex_wrap .info_wrap ul {
    width: 100%;
    padding: 7.3333333333vw 0;
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
  }
  #information .info_inner .flex_wrap .info_wrap ul li {
    min-height: 34.4vw;
    height: auto;
    border-radius: 0 500px 500px 0;
  }
  #information .info_inner .flex_wrap .info_wrap ul li:nth-child(even) {
    border-radius: 500px 0 0 500px;
  }
  #information .info_inner .flex_wrap .info_wrap ul li a {
    padding: 5.6vw 8.6666666667vw 6vw;
  }
  #information .info_inner .flex_wrap .info_wrap ul li a .date {
    font-size: 3.7333333333vw;
    padding: 0 0 2vw;
  }
  #information .info_inner .flex_wrap .info_wrap ul li a p {
    -webkit-line-clamp: 4;
    font-size: 3.4666666667vw;
    line-height: 5.6vw;
  }
  #information .info_circle {
    left: 21.3333333333vw;
    bottom: -51.3333333333vw;
    translate: none;
  }
  #information .info_circle .circle img {
    width: 88.2666666667vw;
  }
  #guidelines {
    padding: 0 0 26.6666666667vw;
  }
  #guidelines .title_inner {
    width: 100%;
    margin: 0;
    padding: 0 0 6vw;
  }
  #guidelines .title_inner h2 {
    display: block;
    margin: 0;
  }
  #guidelines .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #guidelines .title_inner h2 .title_wrap {
    padding: 6vw 0 6vw 26.2666666667vw;
    width: 83.3333333333vw;
    margin: 0 auto 4.6666666667vw 0;
  }
  #guidelines .title_inner h2 .title_wrap img {
    width: 47.4666666667vw;
    margin: 0 auto;
  }
  #guidelines .title_inner h2 .title_wrap::before {
    border-radius: 0 9.3333333333vw 9.3333333333vw 0;
  }
  #guidelines .title_inner h2 .title_wrap:after {
    display: none;
  }
  #guidelines .title_inner p {
    margin: 2vw 4vw 0;
    font-size: 3.2vw;
    line-height: 5.3333333333vw;
    text-align: justify;
    padding: 4px 12px;
    border-radius: 8px;
    background-color: rgba(255, 255, 255, 0.6);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
  }
  #guidelines .title_inner p span {
    padding: 0;
    border-radius: none;
    background-color: transparent;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  #guidelines .detail {
    width: 100%;
  }
  #guidelines .detail .detail_inner {
/*
    padding: 0 0 11.3333333333vw;
 * button hide ↓ */
  padding: 0;

  margin: 0;
    border-radius: 0 8vw 0 0;
  }
  #guidelines .detail .overview {
    width: 100%;
    margin: 0;
/*
    padding: 0 0 8vw;
 * button hide ↓ */
  padding: 0;
  }
  #guidelines .detail .requirements {
    width: 100%;
    margin: 0;
  }
  #guidelines .detail dl {
    width: 100%;
    margin: 0 0 0.5333333333vw;
    display: block;
  }
  #guidelines .detail dl dt {
    font-size: 3.7333333333vw;
    padding: 3.2vw 0 4vw 3.3333333333vw;
    width: 36.8vw;
    border-radius: 0 4vw 4vw 0;
    display: block;
    margin: 0 0 0.5333333333vw;
  }
  #guidelines .detail dl dd {
    width: 100%;
    padding: 8.6666666667vw 7.3333333333vw 9.3333333333vw 8vw;
    min-height: 24vw;
    border-radius: 4vw 0 0 4vw;
    font-size: 3.4666666667vw;
    line-height: 5.6vw;
  }
  #guidelines .detail dl dd.theme {
    font-size: 4.5333333333vw;
    line-height: 6.6666666667vw;
    padding: 4.6666666667vw 7.3333333333vw 4vw 8vw;
  }
  #guidelines .detail dl dd.period p {
    font-size: 3.7333333333vw;
    letter-spacing: 0.1em;
    line-height: 1.4;
  }
  #guidelines .detail dl dd.period span.num {
    font-size: 5.8666666667vw;
    letter-spacing: 0.1em;
  }
  #guidelines .detail dl dd.period span.num.small {
    font-size: 4.2666666667vw;
  }
  #guidelines .detail dl dd.black_circle ul.target {
    padding: 6vw 0 0;
  }
  #guidelines .detail dl dd.black_circle ul li {
    font-size: 3.4666666667vw;
    line-height: 5.6vw;
  }
  #guidelines .detail dl dd.black_circle ul li span {
    padding: 0 4vw 0 0;
  }
  #guidelines .detail dl dd.black_circle ul.examination li {
    padding: 0 0 6vw;
  }
  #guidelines .detail dl dd.black_circle ul.examination li p {
    font-size: 3.2vw;
    line-height: 5.3333333333vw;
    padding: 1.3333333333vw 2.6666666667vw 0 7.7333333333vw;
  }
  #guidelines .detail dl dd.black_circle .caution {
    font-size: 3.2vw;
  }
  #guidelines .detail dl dd.dotts ul:first-child {
    padding: 0;
  }
  #guidelines .detail dl dd.dotts ul li {
    font-size: 3.4666666667vw;
    line-height: 5.6vw;
    letter-spacing: 0.1em;
  }
  #guidelines .detail dl dd.dotts ul li span {
    padding: 0 4vw 0 0;
  }
  #guidelines .detail dl dd.flex {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  #guidelines .detail dl dd.flex ul:first-child {
    width: 50%;
    padding: 0;
  }
  #guidelines .detail dl dd.flex ul:nth-child(2) {
    padding: 0;
    width: 50%;
  }
  /*
  #guidelines .detail dl dd.flex ul:last-child {
    padding: 5.3333333333vw 0 0;
  }
  */
  #guidelines .detail dl dd.flex ul li {
    font-size: 3.4666666667vw;
    line-height: 5.6vw;
  }
  #guidelines .btn_wrap {
    margin: 0 auto;
  }
  #guidelines .btn_wrap a {
    padding: 0 0 0 8.6666666667vw;
  }
  #guidelines .guide_circle-A {
    display: none;
  }
  #guidelines .guide_circle-B {
    display: none;
  }
  #schedule {
    padding: 0 0 26.6666666667vw;
  }
  #schedule .title_inner {
    width: 100%;
    margin: 0;
    padding: 0 0 6vw;
  }
  #schedule .title_inner h2 {
    display: block;
    margin: 0;
  }
  #schedule .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #schedule .title_inner h2 .title_wrap {
    padding: 6vw 0 6vw 10.6666666667vw;
    width: 86.6666666667vw;
    margin: 0 0 4.6666666667vw auto;
  }
  #schedule .title_inner h2 .title_wrap img {
    width: 41.2vw;
  }
  #schedule .title_inner h2 .title_wrap::before {
    border-radius: 9.3333333333vw 0 0 9.3333333333vw;
  }
  #schedule .title_inner h2 .title_wrap:after {
    display: none;
  }
  #schedule .schedule_inner {
    width: 100%;
  }
  #schedule .schedule_inner ul {
    width: 100%;
    border-radius: 0 0 0 8vw;
    padding: 0 0 18vw;
  }
  #schedule .schedule_inner ul li {
    height: 18.6666666667vw;
  }
  #schedule .schedule_inner ul li:nth-child(2) {
    -webkit-transform: none;
    transform: none;
  }
  #schedule .schedule_inner ul li:nth-child(3) {
    -webkit-transform: none;
    transform: none;
  }
  #schedule .schedule_inner ul li:nth-child(4) {
    -webkit-transform: none;
    transform: none;
  }
  #schedule .schedule_inner ul li:nth-child(5) {
    -webkit-transform: none;
    transform: none;
  }
  #schedule .schedule_inner ul li:nth-child(6) {
    -webkit-transform: none;
    transform: none;
  }
  #schedule .schedule_inner ul li .date_wrap {
    padding: 0 0 0 3.3333333333vw;
    width: 44.6666666667vw;
  }
  #schedule .schedule_inner ul li .date_wrap .year {
    font-size: 2.9333333333vw;
    padding: 0 1.6vw 0 0;
  }
  #schedule .schedule_inner ul li .date_wrap .date {
    font-size: 6vw;
    padding: 0 1.3333333333vw 0 0;
  }
  #schedule .schedule_inner ul li .date_wrap .week {
    font-size: 3.2vw;
  }
  #schedule .schedule_inner ul li .date_wrap .almost {
    font-size: 4vw;
  }
  #schedule .schedule_inner ul li .detail {
    padding: 0 0 0 6.9333333333vw;
  }
  #schedule .schedule_inner ul li .detail::before {
    height: 6.9333333333vw;
  }
  #schedule .schedule_inner ul li .detail span {
    font-size: 3.4666666667vw;
    line-height: 5.2vw;
  }
  #schedule .schedule_circle-A {
    translate: none;
    left: 38.6666666667vw;
    top: -52vw;
  }
  #schedule .schedule_circle-A .circle img {
    width: 84.5333333333vw;
  }
  #judges {
    padding: 0 0 29.3333333333vw;
  }
  #judges:after {
    display: none;
  }
  #judges .title_inner {
    width: 100%;
    margin: 0;
    padding: 0 0 6vw;
  }
  #judges .title_inner h2 {
    display: block;
    margin: 0;
  }
  #judges .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #judges .title_inner h2 .title_wrap {
    padding: 6vw 0;
    margin: 0 auto 4.6666666667vw 0;
  }
  #judges .title_inner h2 .title_wrap img {
    width: 31.6vw;
    margin: 0 auto;
  }
  #judges .title_inner h2 .title_wrap::before {
    width: 77.0666666667vw;
    right: auto;
    left: 0;
    height: 18.6666666667vw;
    border-radius: 0 9.3333333333vw 9.3333333333vw 0;
  }
  #judges .judge_wrap {
    width: 100%;
    padding: 9.3333333333vw 3.3333333333vw 14.6666666667vw;
    border-radius: 0 18.2666666667vw 18.2666666667vw 0;
  }
  #judges .judge_wrap ul {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 6.6666666667vw 0;
  }
  #judges .judge_wrap ul li {
/*    width: 46vw; */
    width: 43vw;
  }
  #judges .judge_wrap ul li:last-child p {
    font-size: 3.4666666667vw;
    line-height: 5.8666666667vw;
    padding: 0 0 0 10.6666666667vw;
  }
  #judges .judge_wrap ul li .img_wrap {
    border-radius: 21.3333333333vw 21.3333333333vw 0 0;
/*    width: 41.4666666667vw; */
    width: 38.4666666667vw;
  }
  #judges .judge_wrap ul li .img_wrap img {
    border-radius: 21.3333333333vw 21.3333333333vw 0 0;
/*    width: 41.4666666667vw; */
    width: 38.4666666667vw;
    -webkit-transform: translateX(-4.5333333333vw);
    transform: translateX(-4.5333333333vw);
  }
  #judges .judge_wrap ul li .detail {
    padding: 3.7333333333vw 4.2666666667vw 13.3333333333vw;
    border-radius: 0 0 4.8vw;
    min-height: 54.6666666667vw;
  }
  #judges .judge_wrap ul li .detail span.position {
    font-size: 3.4666666667vw;
    height: 5.6vw;
    padding: 0 0 1.6vw;
  }
  #judges .judge_wrap ul li .detail span.name {
    font-size: 5.3333333333vw;
    padding: 0 0 7.3333333333vw;
  }
  #judges .judge_wrap ul li .detail span.name .honorific {
    font-size: 3.4666666667vw;
    padding: 0 0 0 0.6666666667vw;
  }
  #judges .judge_wrap ul li .detail span.career {
    font-size: 3.2vw;
    line-height: 4.8vw;
    padding: 0;
  }
  #judges .judge_wrap ul li .detail .profile {
    font-size: 3.2vw;
    right: auto;
    left: 4.5333333333vw;
    bottom: 3.7333333333vw;
    padding: 2.6666666667vw 4vw 2.6666666667vw 0;
  }
  #judges .judge_wrap ul li .detail .profile::after {
    width: 7.4666666667vw;
    height: 7.4666666667vw;
    background-size: 7.4666666667vw;
    right: -7.3333333333vw;
  }
  #judges .judge_circle-A {
    left: -23.3333333333vw;
    top: -42.6666666667vw;
    translate: none;
  }
  #judges .judge_circle-A .circle img {
    width: 121.6vw;
  }
  #judges .judge_circle-B {
    display: none;
  }

  #interview {
    padding: 0 0 29.3333333333vw;
  }
  #interview:after {
    display: none;
  }
  #interview .title_inner {
    width: 100%;
    margin: 0;
    padding: 0 0 6vw;
  }
  #interview .title_inner h2 {
    display: block;
    margin: 0;
  }
  #interview .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #interview .title_inner h2 .title_wrap {
    padding: 6vw 0;
    margin: 0 auto 4.6666666667vw 0;
  }
  #interview .title_inner h2 .title_wrap img {
    width: 44vw;
    margin: 0 auto;
  }
  #interview .title_inner h2 .title_wrap::before {
    width: 77.0666666667vw;
    right: auto;
    left: 0;
    height: 18.6666666667vw;
    border-radius: 0 9.3333333333vw 9.3333333333vw 0;
  }
  #interview .interview_wrap {
    width: 100%;
    padding: 9.3333333333vw 3.3333333333vw;
    border-radius: 0 18.2666666667vw 18.2666666667vw 0;
  }

#interview .interview_wrap ul li a {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 20px;
}
#interview .interview_wrap ul li .img_wrap {
  width: 100%;
}
#interview .interview_wrap ul li .int_sub {
    font-size: 3.2vw;
}
#interview .interview_wrap ul li .int_prof {
    font-size: 3.2vw;
}
#interview .interview_wrap ul li .int_ttl {
    font-size: 4vw;
}

  #gallary {
    padding: 12vw 0 10vw;
  }
  #gallary .gallary_inner {
    width: 86.6666666667vw;
  }
  #gallary h2 {
    padding: 0 0 8vw;
  }
  #gallary h2 img {
    width: 29.6vw;
  }

  #gallary .gallary_inner p {
    font-size: 3.2vw;
    line-height: 5.3333333333vw;
  }

  #gallary ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 3.7333333333vw 3.7333333333vw;
  }
  #gallary ul li img {
    width: 37.2vw;
  }
  #entry {
    padding: 0 0 49.3333333333vw;
  }
  #entry .bg_wrap {
    padding: 0 0 8.6666666667vw;
    width: 80vw;
    border-radius: 0 0 40vw 40vw;
  }
  #entry .bg_wrap h2 {
    padding: 11.3333333333vw 0 5.3333333333vw;
  }
  #entry .bg_wrap h2 img {
    width: 24.9333333333vw;
  }
  #entry .bg_wrap h2 span {
    font-size: 4.2666666667vw;
    padding: 4.6666666667vw 0 0;
  }
  #entry .bg_wrap ul li {
/*    margin: 0 0 7.3333333333vw; */
    margin: 0 0 4.5vw;
  }
/*  #entry .bg_wrap ul li:last-child {
    margin: 0;
  } */
  #entry .bg_wrap p {
    margin: 0 10%;
    font-size: 2.2vw;
  }
  #entry .entry_circle-A {
    top: -16.9333333333vw;
  }
  #entry .entry_circle-A .circle img {
    width: 159.7333333333vw;
  }
  #final {
    padding: 0 0 26.6666666667vw;
  }
  #final .title_inner {
    width: 100%;
    padding: 0 0 9.3333333333vw;
  }
  #final .title_inner h2 {
    display: block;
    margin: 0;
  }
  #final .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #final .title_inner h2 .title_wrap {
    padding: 6vw 0;
    margin: 0 auto 4.6666666667vw 0;
    width: 100%;
  }
  #final .title_inner h2 .title_wrap img {
    width: 84.9333333333vw;
    margin: 0 auto;
  }
  #final .title_inner h2 .title_wrap::before {
    border-radius: 0 9.3333333333vw 9.3333333333vw 0;
  }
  #final .title_inner h2 .title_wrap:after {
    display: none;
  }
  #final .detail_inner {
    width: 100%;
    -webkit-transform: none;
    transform: none;
  }
  #final .detail_inner dl {
    display: block;
  }
  #final .detail_inner dl dt {
    font-size: 3.7333333333vw;
    padding: 4vw 0 3.3333333333vw 3.3333333333vw;
    width: 43.8666666667vw;
    border-radius: 0 6.6666666667vw 6.6666666667vw 0;
  }
  #final .detail_inner dl dd {
    width: 100%;
    padding: 4.6666666667vw 7.3333333333vw;
    border-radius: 4vw 0 0 4vw;
    font-size: 3.7333333333vw;
    line-height: 5.6vw;
    min-height: 21.3333333333vw;
    letter-spacing: 0.02em;
  }
  #final .detail_inner dl dd .small {
    display: block;
    font-size: 3.2vw;
    line-height: 6.1333333333vw;
  }
  #final .detail_inner dl dd .flex_wrap {
    display: block;
  }
  #final .detail_inner dl dd .flex_wrap .secretariat {
    font-size: 3.7333333333vw;
    letter-spacing: 0.1em;
    padding: 0 0 6.6666666667vw;
  }
  #final .detail_inner dl dd .flex_wrap .address_wrap {
    padding: 0;
    border: none;
  }
  #final .detail_inner dl dd .flex_wrap .address_wrap .mail_wrap span,
  #final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap span {
    font-size: 3.7333333333vw;
  }
  #final
    .detail_inner
    dl
    dd
    .flex_wrap
    .address_wrap
    .mail_wrap
    span:first-child,
  #final
    .detail_inner
    dl
    dd
    .flex_wrap
    .address_wrap
    .tell_wrap
    span:first-child {
    width: auto;
    padding: 0 5.3333333333vw 0 0;
  }
  #final .detail_inner dl dd .flex_wrap .address_wrap .tell_wrap {
    padding: 0 0 2.6666666667vw;
  }
  #final .presentator_wrap {
    width: 100%;
    padding: 0 0 8vw;
  }
  #final .presentator_wrap .bg_wrap {
    width: 100%;
    margin: 0;
    border-radius: 0 0 0 6.9333333333vw;
  }
  #final .presentator_wrap .bg_wrap .presentator {
    width: 90.6666666667vw;
    border-radius: 0 21.2vw 0 0;
    padding: 6.2666666667vw 7.7333333333vw 8vw 8vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction h3 {
    padding: 2.6666666667vw 0 10.6666666667vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction h3 img {
    width: 26.5333333333vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction h3 span {
    padding: 2.4vw 0 0;
    font-size: 3.2vw;
    letter-spacing: 0.05em;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction .position {
    font-size: 3.2vw;
    padding: 0 0 2.4vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .introduction .name {
    font-size: 4.5333333333vw;
  }
  #final .presentator_wrap .bg_wrap .presentator .img_wrap img {
    width: 30.1333333333vw;
  }
  #final .btn_list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 7.3333333333vw 0;
  }
  #final .final_circle-A {
    translate: none;
    left: -22.6666666667vw;
    top: auto;
    bottom: 8vw;
  }
  #final .final_circle-A .circle img {
    width: 84.5333333333vw;
  }
  #final .final_circle-B {
    position: absolute;
    right: -22.6666666667vw;
    top: -26vw;
    z-index: -1;
    display: block;
  }
  #final .final_circle-B .circle:last-child {
    position: absolute;
    left: 0;
    top: 0;
  }
  #final .final_circle-B .circle img {
    width: 60.5333333333vw;
  }
  #final.final_pitch .title_inner h2 .title_wrap {
    width: 100%;
  }
  #final.final_pitch .title_inner h2 .title_wrap img {
    width: 48.9333333333vw;
  }
  #final.final_pitch .title_inner h2 span {
    padding: 0;
  }
  #finalist {
    padding: 0 0 26.6666666667vw;
    margin: 29.3333333333vw 0 0;
  }
  #finalist:after {
    display: none;
  }
  #finalist .title_inner {
    width: 100%;
    padding: 0 0 11.0666666667vw;
  }
  #finalist .title_inner h2 {
    display: block;
    margin: 0;
    padding: 0;
  }
  #finalist .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #finalist .title_inner h2 .title_wrap {
    padding: 6vw 0;
    margin: 0 auto 4.6666666667vw 0;
  }
  #finalist .title_inner h2 .title_wrap img {
    width: 37.6vw;
    margin: 0 auto;
  }
  #finalist .title_inner h2 .title_wrap::before {
    width: 77.0666666667vw;
    right: auto;
    left: 0;
    height: 18.6666666667vw;
  }
  #finalist .finalist_inner {
    width: 100%;
    border-radius: 0 18.1333333333vw 18.1333333333vw 0;
    padding: 10.6666666667vw 7.3333333333vw 15.7333333333vw;
  }
  #finalist .finalist_inner ul {
    display: block;
    padding: 0 0 11.3333333333vw;
  }
  #finalist .finalist_inner ul li {
    width: 100%;
    padding: 0 0 5.3333333333vw;
    gap: 0;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 0 12.6666666667vw;
  }
  #finalist .finalist_inner ul li:last-child {
    margin: 0;
  }
  #finalist .finalist_inner ul li .img_wrap {
    width: 26vw;
    border-radius: 13.3333333333vw 13.3333333333vw 0 0;
  }
  #finalist .finalist_inner ul li .img_wrap .pic {
    border-radius: 13.3333333333vw 13.3333333333vw 0 0;
    -webkit-transform: translateX(2vw);
    transform: translateX(2vw);
  }
  #finalist .finalist_inner ul li .img_wrap .pic img {
    border-radius: 13.3333333333vw 13.3333333333vw 0 0;
    -webkit-transform: translateX(-2vw);
    transform: translateX(-2vw);
    width: 100%;
  }
  #finalist .finalist_inner ul li .img_wrap .num {
    left: -1.3333333333vw;
    top: -1.0666666667vw;
  }
  #finalist .finalist_inner ul li .img_wrap .num img {
    width: 7.4666666667vw;
  }
  #finalist .finalist_inner ul li .detail_wrap {
    width: 51.3333333333vw;
  }
  #finalist .finalist_inner ul li .detail_wrap h3 {
    font-size: 3.7333333333vw;
    line-height: 5.8666666667vw;
  /* 3Line
    height: 18.6666666667vw;
 */
  /* 4Line */    
    height: 25.4666666667vw;
  }
  #finalist .finalist_inner ul li .detail_wrap .position {
    font-size: 2.9333333333vw;
    line-height: 4.5333333333vw;
    height: auto;
    padding: 0 0 4.6666666667vw;
  }
  #finalist .finalist_inner ul li .detail_wrap .detail {
    position: static;
  }
  #finalist .finalist_inner ul li .detail_wrap .detail button {
    font-size: 2.6666666667vw;
    width: 30.1333333333vw;
    line-height: 8.6666666667vw;
    border-radius: 4.6666666667vw;
    background: url(../../img/finalist_arw.svg) no-repeat 23.3333333333vw center
      #000;
    background-size: 2.6666666667vw auto;
    padding: 0 0 0 4.6666666667vw;
  }
  #finalist .finalist_inner ul li:nth-child(7),
  #finalist .finalist_inner ul li:nth-child(8) {
    padding: 0 0 5.3333333333vw;
    margin: 0 0 12.6666666667vw;
    border-bottom: 1px solid #9f9f9f;
  }
  #finalist .finalist_inner ul li:nth-child(9) {
    padding: 0 0 5.3333333333vw;
    margin: 0;
    border-bottom: 1px solid #9f9f9f;
  }
  #finalist .finalist_circle {
    translate: none;
    left: -22.6666666667vw;
    top: auto;
    bottom: 8vw;
    display: none;
  }
  #finalist .finalist_circle .circle img {
    width: 88.2666666667vw;
  }
  #winner {
/*    padding: 0 0 17.3333333333vw; */
  /* FAQ - off */
  padding: 0 0 6vw;
}
  #winner:after {
    display: none;
  }
  #winner .title_inner {
    width: 100%;
    padding: 0 0 6vw;
  }
  #winner .title_inner h2 {
    display: block;
    margin: 0;
    padding: 0;
  }
  #winner .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #winner .title_inner h2 .title_wrap {
    padding: 6vw 0;
    margin: 0 auto 4.6666666667vw 0;
  }
  #winner .title_inner h2 .title_wrap img {
    width: 32.4vw;
    margin: 0 auto;
  }
  #winner .title_inner h2 .title_wrap::before {
    width: 80.5333333333vw;
    right: auto;
    left: 0;
    height: 18.6666666667vw;
  }
  #winner .winner_wrap {
    padding: 3.3333333333vw;
    max-width: inherit;
  }
  #winner .winner_wrap .border_wrap {
    padding: 12.5333333333vw 5.0666666667vw 18.6666666667vw;
  }
  #winner .winner_wrap .border_wrap .top_wrap {
    width: 80vw;
  }
  #winner .winner_wrap .border_wrap .gold_wrap {
    padding: 0 0 14.6666666667vw;
  }
  #winner .winner_wrap .border_wrap .slver_wrap {
    padding: 0 0 14.6666666667vw;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 14.6666666667vw 0;
    width: 100%;
  }
  #winner .winner_wrap .border_wrap .slver_wrap .project_title {
    height: auto;
  }
  #winner .winner_wrap .border_wrap .bronze_wrap {
    padding: 0 0 14.6666666667vw;
  }
  #winner .winner_wrap .border_wrap .winner_box {
    width: 100%;
  }
  #winner .winner_wrap .border_wrap .winner_box h3 {
    padding: 0 0 8vw;
  }
  #winner .winner_wrap .border_wrap .winner_box h3 img {
    width: 17.0666666667vw;
  }
  #winner .winner_wrap .border_wrap .winner_box h3 span {
    font-size: 5.0666666667vw;
    padding: 5.3333333333vw 0 0;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap {
    width: 80vw;
    margin: 0 auto;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .company {
    font-size: 3.2vw;
    padding: 0 0 6vw;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .project_title {
    font-size: 4vw;
    line-height: 7.2vw;
    padding: 0 0 6vw;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .img_wrap {
    padding: 0 0 4vw;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .img_wrap img {
    width: 100%;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap .overview {
    font-size: 3.7333333333vw;
    padding: 0 0 2.6666666667vw;
  }
  #winner .title_inner p {
    font-size: 3.2vw;
    line-height: 5.3333333333vw;
    padding: 2vw 4vw 0;
    text-align: justify;
  }
  #winner .winner_wrap .border_wrap .winner_box .project_wrap p {
    font-size: 3.2vw;
    line-height: 5.3333333333vw;
  }
  #winner .winner_wrap .border_wrap .btn_wrap {
    padding: 0 0 12vw;
  }
  #winner .winner_wrap .border_wrap .btn_wrap a {
    padding: 0 0 0 10vw;
  }
  #winner .winner_wrap .border_wrap .extra {
    padding: 11.3333333333vw 0 0;
  }
  #winner .winner_wrap .border_wrap .extra h4 {
    font-size: 5.0666666667vw;
    padding: 0 0 5.3333333333vw;
  }
  #winner .winner_wrap .border_wrap .extra p {
    font-size: 3.2vw;
    letter-spacing: 0.05em;
    padding: 0 0 6vw;
    text-align: left;
    line-height: 4.8vw;
  }
  #winner .winner_wrap .border_wrap .extra ul {
    width: 100%;
    gap: 12vw 0;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #winner .winner_wrap .border_wrap .extra ul li {
    width: 38.6666666667vw;
  }
  #winner .winner_wrap .border_wrap .extra ul li .img_wrap {
    padding: 0 0 2.6666666667vw;
  }
  #winner .winner_wrap .border_wrap .extra ul li .img_wrap img {
    border-radius: 1.3333333333vw;
    width: 38.6666666667vw;
  }
  #winner .winner_wrap .border_wrap .extra ul li h5 {
    font-size: 3.2vw;
    line-height: 4.8vw;
    padding: 0 0 2.6666666667vw;
    white-space: nowrap;
  }
  #winner .winner_wrap .border_wrap .extra ul li span {
    font-size: 2.9333333333vw;
  }
  #winner .winner_circle-A {
    left: 17.3333333333vw;
    top: -24vw;
  }
  #winner .winner_circle-A img {
    width: 123.7333333333vw;
  }
  #faq {
    padding: 0 0 26.6666666667vw;
  }
  #faq .title_inner {
    width: 100%;
    margin: 0;
    padding: 0 0 6vw;
  }
  #faq .title_inner h2 {
    display: block;
    margin: 0;
  }
  #faq .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #faq .title_inner h2 .title_wrap {
    padding: 6vw 0 6vw 10.6666666667vw;
    width: 100%;
    margin: 0 auto 4.6666666667vw;
    padding: 5.3333333333vw 0;
  }
  #faq .title_inner h2 .title_wrap img {
    width: 13.8666666667vw;
    margin: 0 auto;
  }
  #faq .title_inner h2 .title_wrap::before {
    width: 83.3333333333vw;
    left: auto;
    right: 0;
  }
  #faq .title_inner h2 .title_wrap:after {
    display: none;
  }
  #faq .faq_inner {
    width: 100%;
    border-radius: 6.6666666667vw 0 0 0;
    padding: 13.3333333333vw 9.3333333333vw 5.3333333333vw;
  }
  #faq .faq_inner dl {
    padding: 3.3333333333vw 0 2.6666666667vw;
  }
  #faq .faq_inner dl:first-child {
    padding: 0 0 2.6666666667vw;
  }
  #faq .faq_inner dl:last-child {
    padding: 3.3333333333vw 0 0;
  }
  #faq .faq_inner dl dt button {
    display: block;
    padding: 2.6666666667vw 16vw 2.6666666667vw 0;
  }
  #faq .faq_inner dl dt button .en {
    font-size: 5.3333333333vw;
    width: auto;
    padding: 0 0 1.6vw;
  }
  #faq .faq_inner dl dt button .question {
    font-size: 3.7333333333vw;
    line-height: 6.6666666667vw;
    display: block;
    text-align: justify;
  }
  #faq .faq_inner dl dt button .toggle {
    width: 8vw;
    height: 8vw;
  }
  #faq .faq_inner dl dt button .toggle::before {
    width: 2.9333333333vw;
    height: 0.2666666667vw;
  }
  #faq .faq_inner dl dt button .toggle::after {
    width: 0.2666666667vw;
    height: 2.9333333333vw;
  }
  #faq .faq_inner dl dd {
    padding: 0;
  }
  #faq .faq_inner dl dd .flex_wrap {
    display: block;
  }
  #faq .faq_inner dl dd .flex_wrap .en {
    font-size: 5.3333333333vw;
    width: auto;
    padding: 0 0 1.6vw;
  }
  #faq .faq_inner dl dd .flex_wrap .answer {
    font-size: 3.4666666667vw;
    line-height: 6vw;
  }
  #faq .faq_circle-A {
    left: -16vw;
    top: -32.6666666667vw;
    translate: none;
  }
  #faq .faq_circle-A .circle img {
    width: 47.7333333333vw;
  }
  #faq .faq_circle-B {
    translate: none;
    left: -21.3333333333vw;
    bottom: -86.6666666667vw;
  }
  #faq .faq_circle-B .circle img {
    width: 124vw;
  }
  #sponsor:after {
    display: none;
  }
  #sponsor .title_inner {
    width: 100%;
    padding: 0 0 6vw;
  }
  #sponsor .title_inner h2 {
    display: block;
    margin: 0;
    padding: 0;
  }
  #sponsor .title_inner h2 span {
    font-size: 4.2666666667vw;
    line-height: 1;
    text-align: center;
  }
  #sponsor .title_inner h2 .title_wrap {
    padding: 6vw 0;
    margin: 0 auto 4.6666666667vw 0;
  }
  #sponsor .title_inner h2 .title_wrap img {
    width: 37.6vw;
    margin: 0 auto;
  }
  #sponsor .title_inner h2 .title_wrap::before {
    width: 77.0666666667vw;
    right: auto;
    left: 0;
    height: 18.6666666667vw;
  }
  #sponsor .sponsor_wrap {
    width: 93.3333333333vw;
    padding: 12.2666666667vw 6.6666666667vw 13.3333333333vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner h3 {
    font-size: 3.2vw;
    padding: 0 0 4vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner .co-host {
    padding: 0 0 10vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner .sponsorship {
    padding: 0 0 10vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner ul {
    gap: 2.6666666667vw;
  }
  #sponsor .sponsor_wrap .sponsor_inner ul li img {
    width: 24.8vw;
  }
  #modal .mask_wrap .detail_wrap {
    width: 93.3333333333vw;
    min-height: 121.4666666667vw;
    padding: 8.6666666667vw 6vw 9.6vw;
    border-radius: 2.6666666667vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap {
    padding: 0 0 7.4666666667vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap span.name {
    font-size: 4.8vw;
    padding: 0 6.6666666667vw 0 0;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap span.name .honorific {
    font-size: 3.4666666667vw;
    padding: 0 0 0 0.6666666667vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .name_wrap span .name_en {
    font-size: 3.4666666667vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap .position {
    font-size: 3.2vw;
    line-height: 5.6vw;
    padding: 0 0 6.6666666667vw;
  }
  #modal .mask_wrap .detail_wrap .text_wrap p {
    font-size: 3.2vw;
    line-height: 5.6vw;
  }
  #modal .mask_wrap .detail_wrap .close_wrap button {
    width: 42vw;
    height: 12vw;
    line-height: 12vw;
    font-size: 3.2vw;
    border-radius: 6vw;
  }
  #modal .mask_wrap .detail_wrap .close_wrap button::before {
    width: 5.2vw;
    height: 0.2666666667vw;
    right: 3.3333333333vw;
  }
  #modal .mask_wrap .detail_wrap .close_wrap button::after {
    width: 5.2vw;
    height: 0.2666666667vw;
    right: 3.3333333333vw;
  }
  #modal_f .mask_wrap .detail_wrap {
    width: 84vw;
    min-height: 106.6666666667vw;
    padding: 6.1333333333vw 6.6666666667vw 7.0666666667vw;
    border-radius: 2.6666666667vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap .num {
    padding: 0 0 2.6666666667vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap .num img {
    width: 7.4666666667vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap h3 {
    font-size: 4.2666666667vw;
    line-height: 6.1333333333vw;
    padding: 0 0 4vw;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap .position {
    font-size: 3.2vw;
    line-height: 5.6vw;
    padding: 0 0 4.6666666667vw;
    height: auto;
  }
  #modal_f .mask_wrap .detail_wrap .text_wrap p {
    font-size: 3.2vw;
    line-height: 5.6vw;
  }
  #modal_f .mask_wrap .detail_wrap .close_wrap button {
    width: 30.1333333333vw;
    height: 8.6666666667vw;
    line-height: 8.6666666667vw;
    font-size: 2.6666666667vw;
    border-radius: 6vw;
    padding: 0 0 0 4.2666666667vw;
  }
  #modal_f .mask_wrap .detail_wrap .close_wrap button::before {
    width: 3.4666666667vw;
    height: 0.2666666667vw;
    right: 3.3333333333vw;
  }
  #modal_f .mask_wrap .detail_wrap .close_wrap button::after {
    width: 3.4666666667vw;
    height: 0.2666666667vw;
    right: 3.3333333333vw;
  }
}
@media screen and (max-width: 960px) and (max-width: 960px) {
  #guidelines .title_inner h2 .title_wrap img {
    margin: 0;
  }
}
