@charset "UTF-8";

/* html5doctor.com Reset v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/) - http://cssreset.com */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}
body{line-height:1}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
nav ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}
ins{background-color:#ff9;color:#000;text-decoration:none}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}
del{text-decoration:line-through}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}
table{border-collapse:collapse;border-spacing:0}
ol,ul {list-style:none;}

body{font-family: 'Noto Sans JP', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; color:#333; line-height:1; height:100%;}
html{font-size: 62.5%;height:100%; /*scroll-behavior: smooth;*/}
ul{list-style: none; }
a, input{outline:none;}

a {
  color:#333;
  text-decoration: underline;
}

a:hover {
  color:#ED5485;
  text-decoration: underline;
}

/**** Start of "Micro cf" ****/

.cf { zoom: 1; }
.cf:before,
.cf:after { content: ""; display: table; }
.cf:after { clear: both; }

/* --------------------------------------------------------
	site setting
-------------------------------------------------------- */
.mt-5 {
  margin-top: 5px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mtb-10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.mtb-20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.fs-11 {
  font-size: 1.1rem !important;
}

.fs-12 {
  font-size: 1.2rem !important;
}

.fs-14 {
  font-size: 1.4rem !important;
}

.fs-16 {
  font-size: 1.6rem !important;
}

.fs-18 {
  font-size: 1.8rem !important;
}

.fs-20 {
  font-size: 2.0rem !important;
}

.fs-22 {
  font-size: 2.2rem !important;
}

.fs-24 {
  font-size: 2.4rem !important;
}

.fw-normal {
  font-weight: normal !important;
}

.fw-bold {
  font-weight: bold !important;
}

.ta-center {
  text-align: center;
}

.ta-right {
  text-align: right;
}

.sp_br {
  display: none;
}

@media screen and (max-width: 768px) {
  .pc_br {
    display: none;
  }

  .sp_br {
    display: block;
  }
}

/* --------------------------------------------------------
	style
-------------------------------------------------------- */

html {
  height: 100%;
}

body {
  width: 100%;
  height: 100%;
  background:#fff;
}

.sup {
  font-size: 0.8em;
  vertical-align: top;
}

/* --------------------------------------------------------
	loader
-------------------------------------------------------- */
.loader {
  pointer-events: none;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  z-index: 999;
}

.loader img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3%;
  height: auto;
  opacity:1.0;
  transform: translate(-50%, -50%);
}

.loader.loaded img {
  opacity: 0.0;
  transition: 2.0s;
}

/* --------------------------------------------------------
	globalNavi
-------------------------------------------------------- */
.globalNavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-end;
  position: absolute;
  top:0;
  right:0;
  padding:20px 6% 20px 0;
  box-sizing: border-box;
  z-index: 99;
  transform: translate(0,-200%);
}

.globalNavi.loaded {
  transform: translate(0,0);
  transition: 2.0s;
  transition-delay: 2.0s;
}

.globalNavi > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}

.globalNavi > ul + ul {
  margin-left:30px;
}

.globalNavi > ul li {
  font-size: 1.8rem;
  font-weight: 500;
}

.globalNavi > ul li + li {
  margin-left:50px;
}

.globalNavi > ul li + .recommendation {
    margin-left: 15px;
}

.globalNavi > ul li a, .globalNavi > ul li span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  border-radius: 3px;
}

.globalNavi .entry a, .globalNavi .entry span, .globalNavi .recommendation span {
  padding:8px 10px;
  color:#fff;
}

.globalNavi .entry a, .globalNavi .entry span {
  /*background:#ae0066;*/
  color:#eee;
  background:#999;
}

.globalNavi .recommendation a, .globalNavi .recommendation span {
  /*background:#243280;*/
  color:#eee;
  background:#999;
}

/* --------------------------------------------------------
	hero
-------------------------------------------------------- */
.body__inner {
  width:100%;
  overflow: hidden;
}

.hero {
  position:relative;
  width:100%;
  /*background:url(../img/bg-hero.svg) no-repeat;
  background-size: cover;*/
  aspect-ratio:800/533;
}

/* _::-webkit-full-page-media, _:future, :root .hero {
  width:100vw;
  height:66.625vw;
} */

@media screen and (-webkit-min-device-pixel-ratio:0) {
  ::i-block-chrome, .hero {
    width:100vw;
    height:66.625vw;
  }
}

.hero .inner__ornament {
  position: absolute;
  width:100%;
  height:100%;
  opacity: 0.0;
}

.hero.loaded .inner__ornament {
  opacity: 1.0;
  transition: 10.0s;
}

.hero .inner__ornament .ornament01 {
  position: absolute;
  top:0%;
  left:0%;
  width:47.0625%;
  height:auto;
}

.hero .inner__ornament .ornament02 {
  position: absolute;
  top: 12.5%;
  left: 37.5%;
  width:28.875%;
  height:auto;
}

.hero .inner__ornament .ornament03 {
  position: absolute;
  bottom:0%;
  right:4.76%;
  width:52.9375%;
  height:auto;
}

.hero .logo {
  position: absolute;
  top: 0%;
  right: 0%;
  width: 38.5%;
  opacity: 0.0;
}

.hero.loaded .logo {
  opacity: 1.0;
  transition: 2.0s;
  transition-delay: 4.0s;
}

.hero .logo img {
  width:100%;
  height:auto;
}

.hero .titleContainer {
  position:absolute;
  bottom: 34%;
  left: 6%;
}

.hero .titleContainer > * {
  display: inline-block;
  color:#fff;
  line-height:1;
  background:#111;
}

.hero .titleContainer .title {
  padding:6px 20px 0px;
  font-family: 'Bebas Neue', cursive;
  font-size:clamp(6.4rem, -4rem + 8.13vw, 9.0rem);
  opacity: 0;
  clip-path: inset(0 100% 0 0);
}

.hero .titleContainer .subTitle {
  padding:4px 20px 10px;
  margin-top:4%;
  font-size:clamp(4.0rem, -2.4144rem + 5.01vw, 7.2rem);
  font-weight: 700;
  line-height:1.2;
  background-color: #ae0066;
  background-image: linear-gradient(90deg, #ae0066 10%, #8248a6 90%);
  opacity: 0;
  clip-path: inset(0 100% 0 0);
}

.hero .titleContainer .subTitle-02  {
  font-size:clamp(3.6rem, -2.4144rem + 4.5vw, 5.8rem);
  background-color: #253281ff;
  background-image: none;
  text-decoration: none;
}

.hero .titleContainer .subTitle a {
  display: inline-block;
  font-size: 70%;
  font-weight: 500;
  text-decoration: none;
  color: #253281ff;
  background-color: #fff;
  padding: 0.2em 0.4em;
}

.hero .titleContainer .date {
  padding:6px 20px 0px;
  margin-top:4%;
  font-family: 'Bebas Neue', cursive;
  font-size:clamp(6.4rem, -4rem + 8.13vw, 9.0rem);
  opacity: 0;
  clip-path: inset(0 100% 0 0);
}

.hero.loaded .titleContainer > * {
  opacity: 1.0;
  clip-path: inset(0 0 0 0);
  transition: 2.0s;
  transition-delay: 500ms;
}

.hero.loaded .titleContainer .title {
  transition-delay: 500ms;
}

.hero.loaded .titleContainer .subTitle {
  transition-delay: 1000ms;
}

/* .subTitle-02 {
background-color:#000!important;
background-image:none!important;
font-size:2.5rem!important;
} */

.hero.loaded .titleContainer .subTitle-02 {
  position: relative;
  /* padding-bottom: 1em; */
}

.hero.loaded .titleContainer .subTitle .note {
  display: block;
  font-size: 0.35em;
  margin-top: 0.7em;
}

.hero.loaded .titleContainer .date {
  transition-delay: 1500ms;
}

.hero .entryButton {
  position: absolute;
  top: 74%;
  left: 16%;
  z-index: 1;
}

.entryButton ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}

.entryButton ul > * {
  opacity: 0;
  clip-path: inset(0 100% 0 0);
}

.loaded .entryButton ul li:nth-child(1) {
  opacity: 1.0;
  clip-path: inset(0 0 0 0);
  transition: 1.0s;
  transition-delay: 2000ms;
}

.loaded .entryButton ul li:nth-child(2) {
  opacity: 1.0;
  clip-path: inset(0 0 0 0);
  transition: 1.0s;
  transition-delay: 2500ms;
}

.entryButton a, .entryButton span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  width:300px;
  height:54px;
  color:#fff;
  font-size: 2.0rem;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  border-radius: 3px;
}

.hero .entryButton a, .hero .entryButton span {
  /* width:240px; */
}

.entryButton li:first-child a, .entryButton li:first-child span {
  background:#ae0066;
  color:#eee;
}

.entryButton li:last-child a, .entryButton li:last-child span {
  background:#243280;
  color:#eee;
}

.entryButton li.large a,
.entryButton li.large span {
  font-size: 3rem;
  width: auto;
  padding: 0.2em 0.4em;
}

.entryButton .close a, .entryButton .close span {
  background:#aaa!important;
  color:#eee;
  pointer-events: none;
}

/*.entryButton li span {
  color:#eee;
  background:#ccc;
}*/

.entryButton li + li {
  margin-left:20px;
}

.lead {
  position: relative;
  padding:0;
  width:100%;
  background:url(../img/bg-lead.png) no-repeat;
  background-size: cover;
  box-sizing: border-box;
  aspect-ratio:160/33;
}


.lead .entryButton {
  margin-bottom:40px;
}
@media screen and (min-width: 822px) {
  .lead .entryButton {
    display:none;
  }
}

/* _::-webkit-full-page-media, _:future, :root .lead {
  width:100vw;
  height:20.625vw;
} */

.lead .inner__ornament {
  position: absolute;
  top:auto;
  left:auto;
  bottom:0%;
  right: 14.42%;
  width: 35.9795%;
  line-height:0;
  opacity: 0.0;
  transform: translate(-50%,50%);
}

.lead.loaded .inner__ornament {
  transform: translate(0,0);
  opacity: 1.0;
  transition: 2.0s;
}

.lead .inner__ornament img {
  width:100%;
  height:auto;
}

.lead__inner {
  position: absolute;
  top:50%;
  right:6%;
  color:#fff;
  font-size: clamp(2.8rem, 1.9984rem + 0.63vw, 3.2rem);
  font-weight: 700;
  line-height: 2.0;
  text-align: right;
  transform: translate(0,-50%);
}

.lead__inner .note {
  display: block;
  font-size: 1.8rem;
  line-height: 1.5;
}

#animation_container {
  pointer-events:none;
  position: absolute;
  top:0;
  left:0;
  width: 100% !important;
  height:100% !important;;
}

#animation_container #canvas {
  width: 100% !important;
  height:auto !important;
  aspect-ratio:800/533;
}

/* --------------------------------------------------------
	award
-------------------------------------------------------- */
#award {
  position: relative;
}

.inner__ornament {
  position: absolute;
}

#award .inner__ornament {
  pointer-events:none;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

#award .inner__ornament img:nth-of-type(1) {
  position:absolute;
  top: -34%;
  left: -29.2%;
  width:50.4735%;
  height:auto;
  opacity: 0.0;
  transform: translate(-100%,-100%);
}

#award.fadein .inner__ornament img:nth-of-type(1) {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
  transition-delay: 0.25s;
}

#award .inner__ornament img:nth-of-type(2) {
  position:absolute;
  top: 5.5%;
  right: -18%;
  width:38.8015%;
  height:auto;
  z-index: -1;
  opacity: 0.0;
  transform: translate(100%,100%);
}

#award.fadein .inner__ornament img:nth-of-type(2) {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
  transition-delay: 0.5s;
}

#award .section__title {
  position: relative;
  margin:-50px auto 0;
  width:30.5365%;
  height:auto;
  background:url(../img/img-7thaward.svg) no-repeat;
  background-size: contain;
  aspect-ratio:60/31;
  opacity: 0.0;
  transform: translate(0,50%);
}

#award.fadein .section__title {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
}

/* _::-webkit-full-page-media, _:future, :root #award .section__title {
  width:30.53657vw;
  height:14.9018vw;
} */

#award .section__title .ja {
  position:absolute;
  bottom:0;
  right:0;
  width:62%;
  color:#111;
  font-size:3.2rem;
  font-weight: 700;
  text-align: center;
}

#award .section__lead {
  margin-top:60px;
  padding:0 6%;
  color:#111;
  font-size: 2.8rem;
  font-weight: 700;
  line-height:1.5;
  text-align: center;
  box-sizing: border-box;
}

#award .entryButton {
  margin-top:60px;
}

#award .textContainer {
  margin-top:60px;
  margin-right:auto;
  margin-left:auto;
  width:54%;
}

#award .text {
  color:#111;
  font-size: 1.8rem;
  font-weight: 500;
  line-height:1.5;
}

#award .linkBtn {
  display:block;
  margin:40px auto 0;
  padding:20px 10px;
  width:50%;
  min-width: 400px;
  color:#fff;
  font-size: 2.0rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.4;
  background-color: #5bc0c6;
  background-image: linear-gradient(90deg, #5bc0c6 10%, #a70066 90%);
  border-radius: 999px;
  box-sizing: border-box;
  text-decoration: none;
  transition: 0.2s;
}

#award .linkBtn:after {
  pointer-events: none;
  content: "\f063";
  -webkit-font-smoothing: antialiased;
  display: inline;
  margin-left: 10px;
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

#award .linkBtn:hover {
  background:#ae0066;
  transition: 0.2s;
}

#award .text + .text {
  margin-top:20px;
}

#award .subTitle {
  display: inline-block;
  margin-top:60px;
  padding:4px 6px 6px 10px;
  color:#fff;
  font-size:1.8rem;
  line-height:1;
  letter-spacing: 0.5rem;
  background:#111;
}

#award .subTitle:last-letter {
  letter-spacing: 0;
}

#award .subTitle + .text {
  margin-top:20px;
}

/* --------------------------------------------------------
	category
-------------------------------------------------------- */
#category {
  position:relative;
  margin-top:100px;
  z-index: 1;
}

#category .section__inner {
  position:relative;
  margin:0 auto;
  width:88%;
}

.titleContainer.module {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
}

#category .titleContainer.module {
  position: absolute;
  top:0;
  right:0;
}

.titleContainer.module .section__title {
  font-family: 'Oswald', sans-serif;
  color:#ae0066;
  font-size: 6.4rem;
  font-weight: 700;
  line-height:1;
}

.titleContainer.module .section__title--ja {
  margin-top:20px;
  color:#111;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  line-height:1;
}

.category__title {
  display: inline-block;
  padding:10px 20px;
  color:#fff;
  font-size:3.6rem;
  font-weight: 700;
  line-height:1;
  background:#111;
}

.categroy__text {
  margin-top:40px;
  font-size:2.0rem;
  font-weight: 500;
  line-height:2;
}

.categoryList li {
  position: relative;
}

/* _::-webkit-full-page-media, _:future, :root .categoryList li:nth-child(1) {
  padding-top:47.5714%;
} */
.categoryList li:nth-child(1) {
  width:100%;
  height:auto;
  aspect-ratio:700/333;
}

.categoryList li .inner__ornament {
  width:100%;
  height:100%;
}

.categoryList li .inner__ornament img {
  width:100%;
  height:auto;
}

.categoryList li:not(:nth-child(2)) .inner__ornament {
  display: block;
  position:absolute;
  z-index: -1;
}

.categoryList li:nth-child(2) .inner__ornament figure {
  display: block;
  position:absolute;
  top:auto;
  left:auto;
  height:auto;
  z-index: -1;
}

.categoryList li:nth-child(1) .inner__ornament {
  top:0;
  right:0;
  width:66.2465%;
  opacity: 0.0;
  transform: translate(25%,0);
}
.categoryList li.fadein:nth-child(1) .inner__ornament {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
}

/* _::-webkit-full-page-media, _:future, :root .categoryList li:nth-child(2) {
  padding-top:35.1428%;
} */
.categoryList li:nth-child(2) {
  width:100%;
  height:auto;
  aspect-ratio:350/123;
}

.categoryList li:nth-child(2) .inner__ornament figure:nth-of-type(1) {
  top: -36%;
  left: -17.8%;
  width:66.2465%;
  opacity: 0.0;
  transform: translate(-25%,-25%);
}
.categoryList li.fadein:nth-child(2) .inner__ornament figure:nth-of-type(1) {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
}

.categoryList li:nth-child(2) .inner__ornament figure:nth-of-type(2) {
  top:-58%;
  right:-38%;
  width:54.0585%;
  opacity: 0.0;
  transform: translate(25%,25%);
}
.categoryList li.fadein:nth-child(2) .inner__ornament figure:nth-of-type(2) {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
}

/* _::-webkit-full-page-media, _:future, :root .categoryList li:nth-child(3) {
  padding-top:31.4285%;
} */
.categoryList li:nth-child(3) {
  width:100%;
  height:auto;
  aspect-ratio:35/11;
}

.categoryList li:nth-child(3) .inner__ornament {
  top:-30%;
  right:-12%;
  width:61.228%;
  opacity: 0.0;
  transform: translate(-25%,0);
}
.categoryList li.fadein:nth-child(3) .inner__ornament {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
}

.categoryList li:nth-child(1) .list__inner {
  position: absolute;
  top:20%;
  width:28%;
}

.categoryList li:nth-child(2) .list__inner {
  position: absolute;
  top:24%;
  left:54%;
  width:34%;
}

/* _::-webkit-full-page-media, _:future, :root .categoryList li:nth-child(3) .list__inner {
  position: absolute;
  top:0;
  left:0
} */
.categoryList li:nth-child(3) .list__inner {
  position: relative;
  top:auto;
  left:auto;
  width:58%;
}

/* --------------------------------------------------------
	judging
-------------------------------------------------------- */

#judging {
  position: relative;
  margin-top: 150px;
  padding-top:110px;
  z-index: 0;
}

#judging > .inner__ornament {
  position:absolute;
  top:-14.98%;
  left:-20%;
  width:75.584%;
  z-index: 1;
}

#judging .inner__ornament img {
  width:100%;
  height:auto;
}

#judging .titleContainer.module {
  align-items: flex-start;
  position: absolute;
  top: 0;
  left: 6%;
  z-index: 1;
}

#judging .inner__top {
  position: relative;
  width:100%;
  background:url(../img/bg-judging01.png) center bottom no-repeat;
  background-size: cover;
  aspect-ratio:70/29;
}

/* _::-webkit-full-page-media, _:future, :root #judging .inner__top {
  width:100vw;
  height:41.4286vw;
} */

#judging .gloupList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: absolute;
  top:50%;
  padding: 0 8%;
  width:100%;
  box-sizing: border-box;
  transform: translate(0,-50%);
}

#judging .gloupList li {
  padding:30px;
  width:49%;
  background:rgba(255,255,255,0.95);
  box-sizing: border-box;
  opacity: 0;
  clip-path: inset(0 100% 0 0);
}
#judging .gloupList li.fadein {
  opacity: 1.0;
  clip-path: inset(0 0 0 0);
  transition: 2.0s;
}
#judging .gloupList li.fadein:nth-child(2) {
  transition-delay: 500ms;
}
#judging .gloupList li.fadein:nth-child(3) {
  transition-delay: 1000ms;
}

#judging .gloupList .title {
  padding:10px;
  width:100%;
  color:#fff;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  background:#ae0066;
  box-sizing: border-box;
}

#judging .gloupList .text {
  margin-top:20px;
  font-size: 1.6rem;
  line-height:2;
}

#judging .gloupList .text.list {
  padding-left: 1em;
  text-indent: -1em;
}

#judging .inner__bottom {
  position: relative;
  margin-top:-17.2%;
  padding:17.2% 8% 10%;
  width:100%;
  height:auto;
  background:url(../img/bg-judging02.png) center top no-repeat;
  background-size: cover;
  box-sizing: border-box;
  z-index: -1;
}

#judging .inner__top > .inner__ornament {
  position:absolute;
  bottom: -27.6%;
  right: 0%;
  width:31.125%;
}

#judging .summaryList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top:-40px;
}

#judging .summaryList li {
  margin-top:40px;
  padding:30px 20px;
  width:100%;
  background:#fff;
  box-sizing: border-box;
  opacity: 0;
  clip-path: inset(0 100% 0 0);
}
#judging .summaryList li.fadein {
  opacity: 1.0;
  clip-path: inset(0 0 0 0);
  transition: 2.0s;
}
#judging .summaryList li.fadein:nth-child(2) {
  transition-delay: 500ms;
}

#judging .summaryList li:not(:nth-child(3)) {
  width:49%;
}

#judging .summaryList .title {
  color:#ae0066;
  font-size:2.4rem;
  font-weight: 700;
}

#judging .summaryList .subTitle {
  margin-top:30px;
  padding-left:10px;
  color:#243280;
  font-size:1.8rem;
  font-weight: 700;
  border-left:5px solid #243280;
  box-sizing: border-box;
}

#judging .summaryList .text {
  margin-top:15px;
  color:#111;
  font-size: 1.6rem;
  line-height:1.5;
}

#judging .summaryList .title + .text {
  margin-top:30px;
}

#judging .summaryList .text .note {
  display: inline-block;
  margin-top:5px;
  color:#ae0066;
  font-size: 1.4rem;
  font-weight: 700;
}

#judging .entryButton {
  margin-top:60px;
}

/* --------------------------------------------------------
	about
-------------------------------------------------------- */
#entry {
  position: relative;
  margin-top:-5%;
  padding-top:calc(5% + 270px);
  padding-right:6%;
  padding-bottom:9%;
  padding-left:6%;
  width:100%;
  box-sizing: border-box;
}

#entry .inner__ornament {
  top: 0;
  left: 0;
  width:100%;
  height: 100%;
}

#entry .titleContainer.module {
  align-items: flex-start;
}

#entry .text {
  font-size:2.0rem;
  font-weight: 500;
  line-height:2.0;
}

#entry  .titleContainer + .text {
  margin-top:60px;
}

#entry .text + .text {
  margin-top:40px;
}

#entry .entryButton {
  margin-top:60px;
}

#entry .subTitle {
  display: inline-block;
  padding:4px 6px 6px 10px;
  color:#fff;
  font-size:1.8rem;
  line-height:1;
  letter-spacing: 0.5rem;
  background:#111;
}

#entry .titleContainer.module {
  align-items: flex-start;
}

#entry .text {
  width:100%;
  font-size:2.0rem;
  font-weight: 500;
  line-height:2.0;
}

#entry .titleContainer + .text {
  margin-top:60px;
}



@media screen and (max-width: 768px) {
#entry {
  padding-top:calc(5% + 60px);
  }
#entry .text {
  font-size: 1.6rem;
  line-height: 1.5;
  }
}

/* --------------------------------------------------------
	about
-------------------------------------------------------- */
#about {
  position: relative;
  margin-top:-5%;
  padding-top:calc(5% + 60px);
  padding-right:6%;
  padding-bottom:5%;
  padding-left:6%;
  width:100%;
  background:url(../img/bg-about.png) right top no-repeat;
  background-size: cover;
  box-sizing: border-box;
}

#about .inner__ornament {
  top: 0;
  left: 0;
  width:100%;
  height: 100%;
}

#about .inner__ornament:before {
  pointer-events: none;
  content:'';
  position:absolute;
  top: -9.375vw;
  right:0;
  width: 100%;
  height:100%;
  background:url(../img/bg-ornament06.svg) right top no-repeat;
  background-size: cover;
}

#about .titleContainer.module {
  align-items: flex-start;
}

#about .text {
  width:100%;
  font-size:2.0rem;
  font-weight: 500;
  line-height:2.0;
}

#about .titleContainer + .text {
  margin-top:60px;
}

#about .text + .text {
  margin-top:40px;
}

#about .entryButton {
  margin-top:60px;
}

/* --------------------------------------------------------
                                recommender
-------------------------------------------------------- */

#recommender {
  position: relative;
  margin-top:-5%;
  padding-top:calc(5% + 60px);
  padding-right:6%;
  padding-bottom:5%;
  padding-left:6%;
  width:100%;
  box-sizing: border-box;
}

#recommender .subTitle {
  display: inline-block;
  margin-top:60px;
  padding:4px 6px 6px 10px;
  color:#fff;
  font-size:4rem;
  font-weight:bold;
  line-height:1;
  background-color: #ae0066;
  background-image: linear-gradient(90deg, #ae0066 10%, #8248a6 90%);
}

#recommender .text {
    width: 100%;
    font-size: 2.0rem;
    font-weight: 500;
    line-height: 2.0;
}

.award_flex{
  margin: 20px 0 10px 0;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2.0;
}
.award_item img{
  width: 200px;
  display: block;
  margin: 0 20px 0 0;
  padding-right:20px;
}

.award_item .small{
  font-size:80%;
}

.award_item .gray{
  background:#eee;
  padding: 20px;
  margin-top:20px;
}

@media screen and (min-width:600px) { 
  .award_flex{
    display:flex;
    flex-wrap:nowrap;
  }
  .award_item+.award_item{
    margin-left:1.0em;
  }
.award_item img{
  margin: 0;
}
  }

/* --------------------------------------------------------
	interview
-------------------------------------------------------- */
#interview {
  position: relative;
  padding:5% 8% 25%;
  width:100%;
  background:url(../img/bg-interview.jpg) center top repeat-y;
  background-size: 100% auto;
  box-sizing: border-box;
  overflow: hidden;
}

#interview .section__title {
  color: #fff;
}

#interview .section__title--ja {
  color: #fff;
}

#interview .listWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top:90px;
}

#interview .interviewList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  width:48%;
}

#interview .interviewList:nth-of-type(2) {
  padding-top:80px;
}

#interview .interviewList:nth-of-type(3) {
  padding-top:80px;
}

#interview .interviewList li {
  position: relative;
  padding:30px;
  width:100%;
  background:rgba(255,255,255,0.95);
  box-sizing: border-box;
}

#interview .interviewList:nth-of-type(1) li {
  padding-left:150px;
  opacity: 0.0;
  transform: translate(-100%,0);
}

#interview .interviewList:nth-of-type(2) li {
  padding-right:150px;
  opacity: 0.0;
  transform: translate(100%,0);
}

#interview .interviewList:nth-of-type(2) li:first-child {
  padding-right:260px;
}


#interview .interviewList:nth-of-type(3) li {
  padding-left:150px;
  opacity: 0.0;
  transform: translate(-100%,0);
}

#interview .interviewList li.fadein {
  opacity: 1.0;
  transform: translate(0,0);
  transition: 2.0s;
}

#interview .interviewList li + li {
  margin-top:140px;
}

#interview .interviewList li a {
  text-decoration: none;
}

#interview .interviewList li .title {
  color:#243280;
  font-size: 1.4rem;
  font-weight: 700;
}

#interview .interviewList li .company {
  margin-top:15px;
  color:#ae0066;
  font-size: 1.6rem;
  font-weight: 700;
}

#interview .interviewList li .name {
  margin-top:15px;
  color:#111;
  font-size: 1.8rem;
  font-weight: 700;
  line-height:1.5;
}

#interview .interviewList li figure {
  position: absolute;
  top:-90px;
  width:200px;
}

#interview .interviewList li figure img {
  width:100%;
  height:auto;
}

#interview .interviewList:nth-of-type(1) li figure {
  left:-50px;
}

#interview .interviewList:nth-of-type(2) li figure {
  right:-50px;
}

#interview .interviewList:nth-of-type(3) li figure {
  left:-50px;
}

#interview .interviewList:nth-of-type(2) li:first-child figure:nth-of-type(1) {
  z-index: 1;
}

#interview .interviewList:nth-of-type(2) li:first-child figure:nth-of-type(2) {
  top:10px;
  right:50px;
  z-index: 0;
}

#interview .interviewList:nth-of-type(3) li:first-child figure:nth-of-type(3) {
  z-index: 1;
}

/* --------------------------------------------------------
	finalist
-------------------------------------------------------- */

#finalist {
  position: relative;
  margin-top:-17.5%;
  padding-top:12.5%;
  padding-right:6%;
  padding-bottom:5%;
  padding-left:6%;
  box-sizing: border-box;
}

#finalist:before {
  content: '';
  display:block;
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height:auto;
  background:url(../img/bg-winner01.png) center top repeat-y;
  background-size: 100% auto;
  aspect-ratio:800/141;
}

#finalist .absoluteContainer {
  display:block;
  position: absolute;
  bottom:0;
  left:0;
  padding-top:17.625%;
  width:100%;
  height:100%;
  box-sizing: border-box;
  z-index: 0;
}

#finalist .inner__background {
  width:100%;
  height:100%;
  background:url(../img/bg-winner02.png) center top repeat-y;
  background-size: 100% auto;
}

#finalist .titleContainer {
  position: relative;
  z-index: 1;
}

#finalist .section__title {
  color: #fff;
}

#finalist .section__title--ja {
  color: #fff;
}

#finalist .finalist__link {
  display: grid;
  place-items: center;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  color: #fff;
  height: 54px;
  margin-top: 20px;
  padding: 0 1.5em;
  background-color: #bc9655;
  border-radius: 999px;
  text-decoration: none;
}

#finalist .finalist__list {
  margin: 30px 0;
}

#finalist .finalist__list li {
  font-size: 1.6rem;
  color: #fff;
  padding: 0.4em 0;
}

/* --------------------------------------------------------
	winner
-------------------------------------------------------- */
#winner {
  position: relative;
  /* margin-top:-17.5%; */
  padding: 5% 6%;
  box-sizing: border-box;
}

/* #winner:before {
  content: '';
  display:block;
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height:auto;
  background:url(../img/bg-winner01.png) center top repeat-y;
  background-size: 100% auto;
  aspect-ratio:800/141;
} */

#winner .absoluteContainer {
  display:block;
  position: absolute;
  bottom:0;
  left:0;
  /* padding-top:17.625%; */
  width:100%;
  height:100%;
  box-sizing: border-box;
  z-index: 0;
}

#winner .inner__background {
  width:100%;
  height:100%;
  background:url(../img/bg-winner02.png) center top repeat-y;
  background-size: 100% auto;
}

#winner .titleContainer {
  position: relative;
  z-index: 1;
}

#winner .section__title {
  color: #fff;
}

#winner .section__title--ja {
  color: #fff;
}

.variousContainer {
  position: relative;
  margin-top:130px;
  padding:90px 40px 60px;
  width:100%;
  color:#fff;
  border:1px solid #bc9655;
  background:rgba(0,0,0,0.9);
  box-sizing: border-box;
  opacity:0.0;
  transform:translate(0,25%);
  z-index: 1;
}

.variousContainer.fadein {
  opacity:1.0;
  transform:translate(0,0);
  transition: 2.0s;
}

.award__title {
  position: absolute;
  top:-68px;
  left:50%;
  transform: translate(-50%,0);
}

.award__title img {
  width:612px;
  height:auto;
}

.award__subTitle {
  margin-top:0;
  color:#bc9655;
  font-size:2.4rem;
  font-weight: 700;
  text-align: center;
}

.award__subTitle:nth-of-type(n+2) {
  color:#b2b2b2;
}

.winnerList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top:20px;
}

.winnerList.column2 {
  justify-content: center;
}

.winnerList + .award__subTitle {
  margin-top:60px;
}

.winnerList li {
  width:32%;
}

.winnerList.column2 li + li {
  margin-left:2%;
}

.winnerList .award__category {
  padding:10px;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  background:#bc9655;
  box-sizing: border-box;
}

.winnerList:nth-of-type(n+2) .award__category {
  background:#b2b2b2;
}

.winnerList .award__winner {
  margin-top:20px;
}

.winnerList .award__winner p {
  font-size: 1.8rem;
  font-weight: 700;
  line-height:1.3;
  text-align: center;
}

.winnerList .award__winner p + p {
  margin-top:20px;
}

.award__link {
  margin-top:60px;
}

.award__link ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
}

.award__link li + li {
  margin-left: 20px;
}

.award__link li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  width:300px;
  height:54px;
  color:#fff;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  background:#bc9655;
  text-decoration: none;
  border-radius: 999px;
}

/* --------------------------------------------------------
	footer
-------------------------------------------------------- */
footer {
  padding:50px 6%;
  width:100%;
  box-sizing: border-box;
}

footer ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  
}

footer ul li {
  font-size: 1.6rem;
}

footer ul li.newsfeed {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  padding-left:20px;
  border-left:1px solid #333;
}

footer ul li.newsfeed:before {
  pointer-events: none;
  content: "\f09e";
  -webkit-font-smoothing: antialiased;
  display: block;
  margin-right: 10px;
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

footer ul li + li {
  margin-left:20px;
}

footer ul li img {
  width:40px;
  height:40px;
}

footer .copyright {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top:20px;
  font-size: 1.6rem;
}

footer .copyright img {
  margin-right:10px;
  width:48px;
  height:auto;
}

/* --------------------------------------------------------
	drawer
-------------------------------------------------------- */
#nav-tgl {
  display: none;
}
.scroll-prevent {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.nav-tgl-btn {
  display:none;
  cursor: pointer;
  position: fixed;
  top: 0;
  right: 0;
  margin: 0;
}
.drawer-open {
  z-index: 999;
  width: 52px;
  height: 52px;
  transition: background .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.drawer-open::before,
.drawer-open::after {
  content: "";
}
.drawer-open span,
.drawer-open::before,
.drawer-open::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 25%;
  width: 60%;
  border-bottom: 4px solid #333;
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.drawer-open::before {
  transform: translateY(-13px);
}
.drawer-open::after {
  transform: translateY(13px);
}
.drawer-close {
  z-index: 997;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transition: background .6s;
}
#nav-tgl:checked+.drawer-open {
  transform: translateX(0);
}
#nav-tgl:checked+.drawer-open span {
  transform: scaleX(0);
}
#nav-tgl:checked+.drawer-open::before {
  transform: rotate(45deg);
}
#nav-tgl:checked+.drawer-open::after {
  transform: rotate(-45deg);
}
#nav-tgl:checked~.drawer-close {
  pointer-events: auto;
  background: rgba(0, 0, 0, .5);
}
.content-wrapper {
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#nav-tgl:checked~.content-wrapper {
  transform: translateX(-250px);
}
.drawer-menu {
  z-index: 998;
  position: fixed;
  top: 0;
  right: 0;
  padding-top:70px;
  width:80%;
  height:100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  background:#fff;
  transform: translateX(100%);
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#nav-tgl:checked~.drawer-menu {
  transform: none;
}
.drawer-menu > ul {
  padding-bottom:0;
  box-sizing: border-box;
}
.drawer-dropdown-menu {
  display: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: #fff;
}
.drawer-dropdown.open>.drawer-dropdown-menu {
  display: block;
}
.drawer-menu .drawer-dropdown {
  background:#e99d40;
}
.drawer-menu .drawer-dropdown > p {
  color: #fff;
}
.drawer-menu li > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding:15px 4vw;
  width: 100%;
  color:#333;
  font-size:1.6rem;
  font-weight: bold;
  line-height:160%;
  text-decoration: none;
  border-bottom:1px solid #ccc;
  box-sizing: border-box;
}
.drawer-menu li > a:hover {
  text-decoration: none;
}
.drawer-menu li > p {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding:15px 4vw;
  width: 100%;
  color:#333;
  font-size:1.6rem;
  font-weight: bold;
  line-height:160%;
  border-bottom:1px solid #ccc;
  box-sizing: border-box;
}
.drawer-menu li > p:hover {
  text-decoration: none;
}
.drawer-menu li > a > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.drawer-menu li > a:after {
  pointer-events: none;
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  margin-left: 20px;
  font-weight: bold;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}
.drawer-menu li > p:after {
  pointer-events: none;
  font-family: "Font Awesome 5 Free";
  content: "\f067";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  margin-left: 20px;
  font-weight: bold;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}
.drawer-menu li > p.open:after {
  content: "\f068";
}
.drawer-dropdown-menu > li > a {
  font-size:1.4rem;
  background:#fff;
}
.drawer-dropdown-menu > li > .subcatTitle {
  padding: 15px 4vw;
  color:#7F3C2F;
  font-size:1.5rem;
  background:#FFF4E6;
}
.drawer-nav .formContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 15px 4vw;
  width: 100%;
  box-sizing: border-box;
}
.drawer-nav .formContainer .txtBoxSize {
  width:200px;
  border:1px solid #ddd;
}
.drawer-nav .formContainer a {
  color: #333;
}

/* --------------------------------------------------------
  ページTOP
-------------------------------------------------------- */
.page-top {
  position: fixed;
  bottom: 60px;
  right: 60px;
  z-index:1;
}
.page-top a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor:pointer;
  width:80px;
  height:80px;
  color:#fff;
  font-size:1.4rem;
  line-height:110%;
  font-weight: bold;
  background:#5bc6cc;
  border-radius: 50px;
  text-align: center;
  transition: 0.2s;
  text-decoration: none;
}
.page-top a:before {
  pointer-events: none;
  font-family: "Font Awesome 5 Free";
  content: "\f077";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  margin-top:-8px;
  margin-bottom: 2px;
  font-weight: bold;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
}
.page-top a:hover {
  background:#ad0066;
  text-decoration: none;
  transition: 0.2s;
}

/* --------------------------------------------------------
	responsive
-------------------------------------------------------- */
@media screen and (max-width: 1440px) {
  .hero .titleContainer {
    position: absolute;
    top: unset;
    bottom:34%;
    left: 6%;
  }
  .hero .entryButton {
    position: absolute;
    top: unset;
    bottom:20%;
    left: 6%;
  }
  .category__title {
    padding: 10px;
    font-size: 3.2rem;
  }
  #about .inner__ornament:before {
    top: -19.5%;
  }
}
@media screen and (max-width: 1280px) {
  .hero .titleContainer .title {
    font-size:6.4rem;
  }

  .hero .titleContainer .subTitle {
    font-size:3.2rem;
  }

  .hero .titleContainer .date {
    font-size:6.4rem;
  }
  .lead {
    padding-top:2%;
    padding-left: 24%;
  }
  .lead__inner {
    width:70%;
    font-size: clamp(1.8rem, -0.243rem + 2.18vw, 2.4rem);
  }
  .lead__inner br {
    display: none;
  }
  #award .section__title .ja {
    font-size: clamp(1.4rem, -0.243rem + 2.18vw, 2.4rem);
  }
  #award .inner__ornament img:nth-of-type(1) {
    top: -20%;
    left: -22%;
    width: 40%;
  }
  #award .section__lead br {
    display: none; 
  }
  #judging .gloupList li {
    padding: 20px;
  }
  #judging .gloupList .text {
    margin-top: 20px;
    font-size: 1.4rem;
    line-height: 2;
  }
  #about {
    background: url(../img/bg-about.png) center top no-repeat;
    background-size: cover;
  }
}

@media screen and (max-width: 1100px) {
  .body__inner {
    min-width: 1024px;
  }
  #interview {
    padding:5% 8% 25%;
  }  
  #interview .listWrap {
    margin-top: 40px;
} 
  #interview .interviewList {
    display: contents;
  }
  #interview .interviewList:nth-of-type(1) li:first-child {
    order:0;
  }
  #interview .interviewList:nth-of-type(1) li:nth-child(2) {
    order:2;
  }
  #interview .interviewList:nth-of-type(1) li:nth-child(3) {
    order:4;
  }
  #interview .interviewList:nth-of-type(2) li:first-child {
    margin-top: 140px;
    order:1;
  }
  #interview .interviewList:nth-of-type(2) li:nth-child(2) {
    order:3;
  }
  #interview .interviewList:nth-of-type(2) li:nth-child(3) {
    order:5;
  }
  #interview .interviewList:nth-of-type(3) li:first-child {
    margin-top: 140px;
    order:1;
  }
  /* #winner {
    margin-top: -25%;
  } */
  .award__link li a {
    width: 250px;
  }
}

@media screen and (max-width: 821px) {
  .body__inner {
    padding-top:52px;
    min-width: auto;
  }
  .globalNavi {
    justify-content: space-between;
    position: fixed;
    padding:10px 3%;
    width:100%;
    height:52px;
    background:rgba(255,255,255,0.9);
    box-sizing: border-box;
  }
  .globalNavi > ul + ul {
    margin-left: 0;
  }
  .globalNavi > ul li {
    font-size: 1.6rem;
  }
  .globalNavi > ul li + li {
    margin-left: 15px;
  }
  .hero .titleContainer {
    /* position: absolute;
    top: 72px;
    bottom:unset;
    left: 3%; */
    position: static;
    padding-top: 72px;
    padding-left: 3%;
  }
  .hero .titleContainer .title {
    font-size: 4.8rem;
  }
  .hero .titleContainer .subTitle {
    font-size: 4.0rem;
  }
  .hero .titleContainer .date {
    font-size: 4.8rem;
  }
  /*.hero .entryButton {
    position: absolute;
    top: unset;
    bottom:20%;
    left: 3%;
  }*/
  .hero .entryButton {
    /* display:none; */
    position: static;
    margin-top: 30px;
  }
  .entryButton a, .entryButton span {
    width:240px;
    height: 40px;
    font-size: 2.0rem;
  }
  .entryButton li.large span {
    font-size: 1.8rem;
  }
  .lead {
    position: relative;
    margin-top: 10vw;
    padding: 40px 3%;
    background: none;
    aspect-ratio: unset;
    z-index: 1;
  }
  .lead:before {
    content: none;
  }
  .lead__inner {
    position: relative;
    top:auto;
    right:auto;
    width:100%;
    color: #111;
    font-size: 2.4rem;
    line-height:1.5;
    text-align: center;
    transform: translate(0,0);
  }
  .lead .inner__ornament {
    display: none;
  }
  .lead__inner .note {
    display: block;
    margin-top:20px;
    font-size: 1.8rem;
    line-height: 1.5;
  }
  #award .inner__ornament:before {
    content: none;
  }
  #award .section__title {
    position: relative;
    margin: 0 auto;
  }
  #award .section__title .ja {
    font-size: 1.4rem;
  }
  #award .section__lead {
    margin-top:40px;
    font-size: 2.4rem;
  }
  #award .entryButton {
    margin-top: 40px;
  }
  #award .textContainer {
    margin-top: 40px;
    width: 94%;
  }
  #award .subTitle {
    margin-top: 40px;
  }
  #category .titleContainer.module {
    transform: translate(0,-50%);
  }
  #category .section__inner {
    width: 94%;
  }
  .category__title {
    font-size: 2.8rem;
  }
  .categroy__text {
    font-size: 1.8rem;
  }
  .categoryList li:nth-child(1) .list__inner {
    position: relative;
    top: unset;
    width: 50%;
  }
  .categoryList li:nth-child(2) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    aspect-ratio: unset;
  }
  .categoryList li:nth-child(2) .list__inner {
    position: relative;
    padding-bottom: 10%;
    top: unset;
    right: 0;
    left:unset;
    width: 58%;
  }
  .categoryList li:nth-child(3) .list__inner {
    padding-top:12%;
    width: 100%;
  }
  #category .entryButton {
    margin-top:40px;
  }
  #judging {
    margin-top: 80px;
    padding-top:0;
  }
  #judging .inner__top .inner__ornament img {
    content: none;
  }
  #judging .titleContainer.module {
    align-items: center;
    position: relative;
    top: unset;
    left: unset;
    margin-left:3%;
  }
  #judging .inner__top {
    position: relative;
    margin-top:40px;
    padding:40px 0;
    aspect-ratio: unset;
  }
  #judging .gloupList {
    position: relative;
    top: unset;
    padding: 0 3%;
    transform: translate(0,0);
  }
  #judging .gloupList li {
    padding: 15px;
    width: 100%;
  }
  #judging .gloupList li + li {
    margin-top: 20px;
  }
  #judging .gloupList .text {
    margin-top: 10px;
    line-height: 1.5;
  }
  #judging .inner__bottom {
    position: relative;
    margin-top: -17.2%;
    padding: 17.2% 3% 10%;
  }
  #judging .summaryList li {
    margin-top: 20px;
    padding: 15px;
    width: 100%;
  }
  #judging .entryButton {
    margin-top: 40px;
  }
  #about {
    padding-top: calc(5% + 40px);
    padding-right: 3%;
    padding-bottom: 40px;
    padding-left: 3%;
    background: url(../img/bg-about.png) left top no-repeat;
  }
  #about .inner__ornament:before {
    content: none;
  }
  #about .titleContainer.module {
    align-items: center;
  }
  #about .text {
    width: 100%;
    font-size: 1.8rem;
  }
  #about .titleContainer + .text {
    margin-top: 40px;
  }
  #about .entryButton {
    margin-top: 40px;
  }
  #interview {
    padding: 40px 8% 20%;
  }
  #interview .interviewList li figure {
    width: 30%;
  }
  #finalist .titleContainer {
    padding-top: 30px;
  }
  #finalist .finalist__link {
    font-size: 1.6rem;
  }
  #winner {
    position: relative;
    margin-top: 0;
    padding-top: 50px;
    padding-right: 3%;
    padding-bottom: 40px;
    padding-left: 3%;
    background: url(../img/bg-winner-sp.jpg);
  }
  #winner:before {
    content: none;
  }
  #winner .absoluteContainer {
    display:none;
  }
  .variousContainer {
    padding-top: 50px;
  }
  .winnerList .award__winner p {
    font-size: 1.6rem;
  }
  .winnerList + .award__subTitle {
    margin-top: 40px;
  }
  .award__link {
    margin-top: 40px;
  }
  .award__link ul {
    /* justify-content: space-between; */
    flex-wrap: wrap;
    gap: 2%;
  }
  .award__link li {
    width: 49%;
  }  
  .award__link li.width-l {
    width: max(280px,70%);
    margin-top: 10px;
  }  
  .award__link li a {
    width: 100%;
    height: 54px;
    font-size: 1.6rem;
  }
  .award__link li + li {
    margin-left: 0;
  }
  .page-top {
    bottom: 20px;
    right: 20px;
  }
  .page-top.mostbottom {
    bottom: 175px;
    transition: 0.2s;
  }
  .page-top a {
    width:60px;
    height:60px;
    font-size: 1.2rem;
  }
  footer {
    padding: 40px 3%;
  }
}

@media screen and (max-width: 768px) {
  .globalNavi > ul {
    display: none;
  }
  .nav-tgl-btn {
    display: block;
  }
  #judging:before {
    content: none;
  }
  .winnerList li {
    width: 100%;
  }
  .winnerList li + li {
    margin-top:20px;
  }
  .winnerList .award__winner {
    margin-top: 10px;
  }
  .award__title {
    width: 94%;
  }
  .award__title img {
    width: 100%;
    height: auto;
  }
  .award__subTitle {
    margin-top:40px;
  }
}

@media screen and (max-width: 768px) {
  .lead {
    margin-top: 25vw;
  }
}

@media screen and (max-width: 640px) {
  .hero .titleContainer .subTitle {
    font-size: clamp(2.4rem, -0.0208rem + 5.03vw, 3.2rem);
    transition-delay: 100ms !important;
  }
}

@media screen and (max-width: 480px) {
  .lead__inner {
    font-size: 2.0rem;
  }
  .hero .titleContainer .title {
    padding: 6px 10px 0px;
    font-size: 3.6rem;
  }
  .hero .titleContainer .subTitle {
    padding: 4px 10px 10px;
    margin-top: 5px;
    font-size: 2.4rem;
  }
  .hero .titleContainer .date {
    padding: 6px 10px 0px;
    margin-top: 5px;
    font-size: 3.6rem;
  }
  .hero.loaded .titleContainer .subTitle .note {
    font-size: 1.1rem;
  }
  .lead {
   margin-top: 120px; 
  }
  .entryButton ul {
    /* justify-content: space-between; */
  }
  .entryButton li {
    /* width: 49%; */
  }
  .entryButton li + li {
    margin-left: 0;
  }
  .entryButton li a, .entryButton span {
    width: 100%;
    font-size: 1.6rem;
  }
  .entryButton span {
    padding: 0 1em;
  }
  .hero .entryButton {
    /* display: none; */
  }
  .inner__ornament {
    display:none !important;
  }
  #award {
    padding:0 3%;
    box-sizing: border-box;
  }
  #award .section__lead {
    margin-top: 40px;
    padding: 0;
    font-size: 2.0rem;
  }
  #award .section__title {
    width: 60%;
  }
  #award .linkBtn {
    width:94%;
    min-width: auto;
    font-size: 1.8rem;
  }
  .titleContainer.module .section__title {
    font-size: 4.8rem;
  }
  #category {
    margin-top: 40px;
  }
  #category .titleContainer.module {
    position: relative;
    margin-bottom:40px;
    /* top: unset;
    right: unset; */
    top: initial;
    left: initial;
    transform: translate(0,0);
  }
  .categoryList li + li {
    margin-top:20px;
  }  
  .categoryList li:nth-child(1) {
    aspect-ratio: unset;
  }  
  .categoryList li:nth-child(3) {
    aspect-ratio: unset;
  }
  .categoryList li:nth-child(1):before {
    content: none;
  }
  .categoryList li:nth-child(2):before {
    content: none;
  }
  .categoryList li:nth-child(3):before {
    content: none;
  }
  .categoryList li:nth-child(1) .list__inner {
    width: 100%;
  }
  .categoryList li:nth-child(2) .list__inner {
    padding-bottom: 0;
    width: 100%;
  }
  .categoryList li:nth-child(3) .list__inner {
    padding-top: 0;
  }
  .category__title {
    width:100%;
    font-size: 2.4rem;
    text-align: center;
    box-sizing: border-box;
  }
  .categroy__text {
    margin-top:10px;
    font-size:1.6rem;
    line-height:1.5;
  }
  .titleContainer.module .section__title {
    text-align: center;
  }
  #judging {
    margin-top: 40px;
  }
  #judging .inner__top {
    background: #222;
    aspect-ratio: unset;
  }
  #judging .inner__bottom {
    position: relative;
    margin-top: 0;
    padding: 40px 3% 60px;
  }
  #judging .gloupList li.fadein:nth-child(2) {
    transition-delay: 0s;
  }
  #judging .gloupList li.fadein:nth-child(3) {
    transition-delay: 0s;
  }
  #judging .summaryList {
    margin-top: 0;
  }
  #judging .summaryList li:first-child {
    margin-top: 0;
  }
  #judging .summaryList li:not(:nth-child(3)) {
    width: 100%;
  }
  #judging .summaryList li.fadein:nth-child(2) {
    transition-delay: 0s;
  }
  #judging .summaryList li.fadein:nth-child(3) {
    transition-delay: 0s;
  }
  #about {
    padding-top:40px;
  }
  #about .text {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  
  #about .text + .text {
    margin-top: 20px;
  }
  #interview .listWrap {
    padding-bottom:50px;
  }
  #interview .interviewList li {
    padding: 10px;
  }
  #interview .interviewList li + li {
    margin-top: 100px;
  }
  #interview .interviewList:nth-of-type(2) li:first-child {
    margin-top: 100px;
  }
  #interview .interviewList:nth-of-type(3) li:first-child {
    margin-top: 100px;
  }
  #interview .interviewList:nth-of-type(1) li {
    padding-left: 10px;
  }
  #interview .interviewList:nth-of-type(2) li {
    padding-right: 10px;
  }
  #interview .interviewList:nth-of-type(2) li:first-child {
    padding-right: 10px;
  }
  #interview .interviewList:nth-of-type(3) li {
    padding-right: 10px;
  }
  #interview .interviewList:nth-of-type(3) li:first-child {
    padding-right: 10px;
  }
  #interview .interviewList:nth-of-type(1) li figure {
    top:auto;
    right:0;
    bottom:0;
    left:auto;
    transform: translate(0,50%);
  }
  #interview .interviewList:nth-of-type(2) li figure {
    top:auto;
    right:0;
    bottom:0;
    left:auto;
    transform: translate(0,50%);
  }
  #interview .interviewList:nth-of-type(3) li figure {
    top:auto;
    right:0;
    bottom:0;
    left:auto;
    transform: translate(0,50%);
  }
  #interview .interviewList li .name span {
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
  }
  .variousContainer {
    margin-top: 80px;
    padding: 60px 3% 40px;
  }
  .award__title {
    top: 0px;
    transform: translate(-50%,-50%);
  }
  .award__subTitle {
    margin-top: 0;
  }
  .winnerList .award__winner p + p {
    margin-top: 10px;
  }
  footer ul {
    justify-content: center;
  }  
  footer ul li.privacypolicy {
    margin-top:15px;
    width:100%;
    text-align: center;
  }
  footer ul li.newsfeed {
    justify-content: center;
    margin-top:15px;
    margin-left:0;
    padding-left: 0;
    width:100%;
    border-left: none;
  }
  footer .copyright {
    font-size: 1.2rem;
  }
  footer .copyright img {
    width: 24px;
  }
}