.inner {
  width: 90%;
  margin: auto;
  max-width: 1080px;
}

.colorText {
  background: var(--GreenGradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.btn {
  display: inline-block;
  padding: 5px 20px;
  border: 1px solid var(--Green);
  border-radius: 100px;
  background-color: #FFF;
  color: var(--Green);
}
.btn:hover {
  opacity: 0.5;
}
.btn.green {
  color: #FFF;
  background-color: var(--Green);
}
.btn.green:hover {
  opacity: 0.5;
}

.marker {
  background: linear-gradient(transparent 0, var(--Yellow2) 0);
  display: inline;
  background-size: 0% 100%;
  background-repeat: no-repeat;
  transition: background-size 1s;
}
.marker.on {
  background-size: 100% 100%;
}

.marker2 {
  background: linear-gradient(transparent 60%, var(--Yellow2) 50%);
  display: inline;
  background-size: 0% 100%;
  background-repeat: no-repeat;
  transition: background-size 1s;
}
.marker2.on {
  background-size: 100% 100%;
}

*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important;
}

:where(html) {
  -webkit-text-size-adjust: none;
  color-scheme: dark light;
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth;
  }
}
:where(body) {
  block-size: 100%;
  block-size: 100dvb;
  line-height: 1.5;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(button) {
  border-style: solid;
}

:where(a) {
  text-underline-offset: 0.2ex;
}

:where(ul, ol) {
  list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg) {
  max-inline-size: 100%;
  block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem);
}

:where(hr) {
  border: none;
  border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(:focus-visible) {
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  clip-path: inset(50%) !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* display */
:root {
  --TextBlack:#000;
  --Red:#E60012;
  --Pink:#FFF5F3;
  --Pink2:#F9C5CA;
  --Gray:#F8F8F8;
  --Gray2:#AEAEAE;
  --Gray3:#ACB0AB;
  --Gray4:#D6D6D6;
  --Green:#02A53B;
  --Green2:#EDF5D7;
  --Green3:#D5E8A1;
  --GreenGradient:linear-gradient(54deg, #8EC201 0%, #47B31F 50%, #02A53B 100%);
  --GreenAnimation:linear-gradient(54deg, #8EC201 0%, #8EC201 0.01%, #47B31F 48.44%, #8EC201 96.88%);
  --GreenAnimation2:linear-gradient(90deg, #8EC201 0%, #8EC201 0.01%, #47B31F 48.44%, #8EC201 96.88%);
  --Yellow:#FFED7A;
  --Yellow2:#FFFDAD;
  --max:1440px;
  --menu:230px;
  --padding:30px;
  --area:calc(100vw - var(--menu));
  --gr:60px;
  --x-l: 3rem;
  --l: 2rem;
  --m-l: 1.8rem;
  --m: 1.5rem;
  --s: 1.4rem;
  --x-s: 1.1rem;
  --s-p---x-l--label: 2.5rem;
}

* {
  box-sizing: border-box;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

ul, ol {
  list-style: none;
  padding: 0;
}

a {
  color: var(--TextBlack);
  text-decoration: none;
}

.tb {
  display: none;
}

.sp {
  display: none;
}

.sp_tb {
  display: none;
}

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* display */
/* font */
html {
  font-size: 62.5%;
}

body {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.7;
  font-weight: 400;
  letter-spacing: 0.03em;
  font-size: var(--m);
  color: var(--TextBlack);
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
}

.bold {
  font-weight: bold;
}

.italic {
  font-style: italic;
}

.anchor {
  margin-top: -100px;
  padding-top: 100px;
}

#cursor {
  transform: translate(-100px, -100px);
  pointer-events: none;
  position: fixed;
  top: -10px;
  left: -10px;
  width: 20px;
  height: 20px;
  background: var(--Yellow);
  border-radius: 50%;
  z-index: 100000;
  transition: width 0.3s, height 0.3s, top 0.3s, left 0.3s;
  border: 4px solid var(--Yellow);
}
#cursor.hov_ {
  top: -15px;
  left: -15px;
  width: 30px;
  height: 30px;
  background: transparent;
  opacity: 0.8;
}

@media screen and (max-width: 1015px) {
  /* display */
  .tb {
    display: block;
  }
  .sp_tb {
    display: block;
  }
  .sp_pc {
    display: none;
  }
  .pc {
    display: none;
  }
  /* display */
  .anchor {
    margin-top: -100px;
    padding-top: 100px;
  }
}
@media screen and (max-width: 850px) {
  /* display */
  .tb_pc {
    display: none !important;
  }
  .sp_pc {
    display: block !important;
  }
  .tb {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  /* display */
}
.m_foot {
  background-color: #FFF;
  position: relative;
  z-index: 2;
  padding: 100px 0;
  border-top: 2px solid var(--Green);
}
@media screen and (max-width: 1015px) {
  .m_foot {
    padding: 80px 0;
  }
}
@media screen and (max-width: 850px) {
  .m_foot {
    padding: 60px 0;
  }
}
.m_foot_list {
  display: flex;
  justify-content: center;
  text-align: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 850px) {
  .m_foot_list {
    display: block;
  }
}
.m_foot_list li {
  margin: 0 10px;
  font-size: 1.4rem;
}
.m_foot_list li a {
  padding: 10px 10px;
  display: block;
  white-space: nowrap;
}
@media screen and (max-width: 850px) {
  .m_foot_list li {
    font-size: 1.2rem;
  }
}
.m_foot_logo {
  margin-top: 80px;
}
@media screen and (max-width: 850px) {
  .m_foot_logo {
    margin-top: 50px;
  }
}
.m_foot_logo img {
  height: 30px;
  width: auto;
  margin: auto;
}
@media screen and (max-width: 850px) {
  .m_foot_logo img {
    height: 25px;
  }
}
.m_foot_copy {
  text-align: center;
  font-size: 1.2rem;
  margin-top: 30px;
}

.m_head {
  position: relative;
  z-index: 1000;
  width: 100%;
  height: 75px;
  transition: none;
  opacity: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid var(--Green);
  background-color: #FFF;
}
.m_head_outer {
  position: sticky;
  left: 0;
  top: 0;
  z-index: 1000;
}
.m_head_inner {
  position: relative;
  width: 94%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.m_head_right {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0 15px;
}
.m_head_logo {
  margin: 0;
}
.m_head_logo a {
  display: flex;
  align-items: center;
}
.m_head_logo a img {
  height: 35px;
  width: auto;
  margin-bottom: 2px;
}
.m_head_logo a .text {
  font-size: 1.8rem;
  white-space: nowrap;
}
@media screen and (max-width: 850px) {
  .m_head_logo a .text {
    display: block;
  }
}
.m_head_logo a .fst {
  margin-left: 2rem;
}
.m_head_btn {
  font-size: 1.8rem;
  white-space: nowrap;
}
@media screen and (max-width: 400px) {
  .m_head_btn .xs {
    display: none;
  }
}
.m_head_menu {
  position: absolute;
  right: 0;
  padding: 0 30px;
  padding-top: 85px;
  padding-bottom: 50px;
  height: 100vh;
  top: 0;
  max-width: 375px;
  width: 100%;
  border-left: 1px solid var(--Green);
  -webkit-overflow-scrolling: touch;
  overflow: auto;
  display: none;
  background-color: #FFF;
}
.m_head_menu.on {
  display: block;
}
.m_head_menu_list {
  text-align: center;
  padding: 50px 0;
  border-bottom: 1px solid var(--Green);
}
.m_head_menu_list li a {
  display: block;
  padding: 15px 0;
  font-size: 1.6rem;
}
.m_head_menu_sublist {
  text-align: center;
  padding: 50px 0;
}
.m_head_menu_sublist li a {
  display: block;
  padding: 10px 0;
  font-size: 1.2rem;
}
.m_head_menu_logo img {
  margin: auto;
  width: auto;
  height: 20px;
}
.m_head_menu_btn {
  cursor: pointer;
  padding: 10px;
}
.m_head_menu_btn_inner {
  position: relative;
  width: 25px;
  height: 19px;
  transform: rotate(0deg);
  transition: 0.5s ease-in-out;
}
.m_head_menu_btn span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background-color: #000;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: 0.25s ease-in-out;
}
.m_head_menu_btn.on span {
  background-color: #000;
}
.m_head_menu_btn span:nth-child(1) {
  top: 0px;
}
.m_head_menu_btn span:nth-child(2) {
  top: 8px;
}
.m_head_menu_btn span:nth-child(3) {
  bottom: 0px;
}
.m_head_menu_btn.on span:nth-child(1) {
  top: 9px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}
.m_head_menu_btn.on span:nth-child(2) {
  opacity: 0;
}
.m_head_menu_btn.on span:nth-child(3) {
  top: 9px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
@media screen and (max-width: 1015px) {
  .m_head {
    height: 60px;
  }
  .m_head_logo a img {
    height: 30px;
  }
  .m_head_logo a .text:first-of-type {
    margin-left: 2rem;
    font-size: 1.4rem;
  }
  .m_head_btn {
    font-size: 1.4rem;
  }
  .m_head_menu {
    padding: 0 30px;
    padding-top: 65px;
    padding-bottom: 50px;
  }
  .m_head_menu_list {
    padding: 40px 0;
  }
  .m_head_menu_list li a {
    font-size: 1.4rem;
    padding: 10px 0;
  }
  .m_head_menu_sublist {
    padding: 30px 0;
  }
  .m_head_menu_sublist li a {
    padding: 10px 0;
    font-size: 1.2rem;
  }
  .m_head_menu_logo img {
    height: 20px;
  }
}
@media screen and (max-width: 850px) {
  .m_head {
    height: 65px;
  }
  .m_head_right {
    gap: 0 10px;
  }
  .m_head_logo a {
    display: block;
  }
  .m_head_logo a img {
    height: 21px;
    margin-bottom: 4px;
  }
  .m_head_logo a .text {
    margin-left: 0;
    font-size: 1.1rem;
  }
  .m_head_btn {
    font-size: 1.2rem;
  }
  .m_head_btn .btn {
    padding: 0 7px;
    display: flex;
    height: 32px;
    justify-content: center;
    align-items: center;
  }
  .m_head_btn .btn svg path {
    fill: #FFF;
  }
  .m_head_menu {
    max-width: none;
    border-left: none;
  }
  .m_head_menu_list {
    padding: 30px 0;
  }
  .m_head_menu_btn {
    padding: 5px;
  }
  .m_head_menu_btn_inner {
    width: 20px;
  }
  .m_head_menu_btn span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background-color: #000;
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: 0.25s ease-in-out;
  }
  .m_head_menu_btn.on span {
    background-color: #000;
  }
  .m_head_menu_btn span:nth-child(1) {
    top: 0px;
  }
  .m_head_menu_btn span:nth-child(2) {
    top: 8px;
  }
  .m_head_menu_btn span:nth-child(3) {
    bottom: 0px;
  }
  .m_head_menu_btn.on span:nth-child(1) {
    top: 9px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .m_head_menu_btn.on span:nth-child(2) {
    opacity: 0;
  }
  .m_head_menu_btn.on span:nth-child(3) {
    top: 9px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
}
@media screen and (min-width: 850px) and (max-height: 950px) {
  .m_head {
    height: 65px;
  }
  .m_head_right {
    gap: 0 10px;
  }
  .m_head_logo a img {
    height: 31px;
  }
  .m_head_logo a .text {
    font-size: 1.6rem;
  }
  .m_head_btn {
    font-size: 1.6rem;
  }
  .m_head_btn .btn {
    padding: 0 20px;
    display: flex;
    height: 30px;
    justify-content: center;
    align-items: center;
  }
  .m_head_btn .btn svg path {
    fill: #FFF;
  }
}

.p_index_top {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
}
.p_index_top_bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(1.1);
  transition: transform 2s cubic-bezier(0, 0.55, 0.45, 1), filter 2s cubic-bezier(0, 0.55, 0.45, 1);
  filter: blur(15px);
}
.p_index_top_bg.on {
  transform: scale(1);
  filter: none;
}
.p_index_top_bg img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p_index_top_content {
  position: relative;
  z-index: 2;
  text-align: center;
  text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.35);
  padding: 100px 20px 50px 20px;
  width: 100%;
  max-width: 840px;
  opacity: 0;
  transition: opacity 1s;
}
.p_index_top_intro {
  font-size: 2.4rem;
  color: #545454;
  text-shadow: none;
  line-height: 1.3;
}
.p_index_top_intro:after {
  margin-top: 20px;
  margin-bottom: 30px;
  height: 5px;
  width: 100%;
  content: "";
  display: block;
  background: linear-gradient(54deg, #E60012 0%, #FF6B00 0.01%, #E60012 48.44%, #FC682D 96.88%);
  background-size: 200% 100%;
  animation: bggradient 10s linear infinite;
}
.p_index_top_ttl {
  font-size: 6.8rem;
  letter-spacing: 0.3rem;
  text-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
  line-height: 1;
}
.p_index_top_ttl .small {
  font-size: 4.5rem;
}
.p_index_top_ttl .big {
  font-size: 7.8rem;
}
.p_index_top_subttl {
  color: #FFF;
  font-size: 2.8rem;
  letter-spacing: 0.15rem;
  margin-top: 50px;
  padding: 5px 20px;
  position: relative;
}
.p_index_top_subttl span {
  position: relative;
  z-index: 1;
}
.p_index_top_subttl:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  display: block;
  background: var(--GreenAnimation);
  background-size: 200% 100%;
  animation: bggradient 10s linear infinite;
}
.p_index_top_para {
  margin-top: 30px;
  color: #FFF;
  text-align: center;
  font-size: 2.2rem;
}
.p_index_top_judge {
  overflow: hidden;
  position: relative;
  margin: auto;
  margin-top: 40px;
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 800px;
}
.p_index_top_judge::after {
  margin-top: 30px;
  height: 4px;
  width: 100%;
  content: "";
  display: block;
  background: var(--GreenAnimation);
  background-size: auto;
  background-size: 200% 100%;
  animation: bggradient 10s linear infinite;
}
.p_index_top_judge_list {
  margin-top: 10px;
}
.p_index_top_judge_list_block {
  width: auto;
  height: auto;
  overflow: hidden;
}
.p_index_top_judge_list_block_image {
  border-radius: 50%;
  overflow: hidden;
  background: var(--GreenGradient);
  padding: 4px;
  position: relative;
  z-index: 2;
}
.p_index_top_judge_list_block_image img {
  overflow: hidden;
  border-radius: 50%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.p_index_top_judge_list_block_text {
  background-color: #FFF;
  padding: 15px 0 8px 0;
  border-radius: 8px;
  text-shadow: none;
  color: #000;
  margin-top: -10px;
  letter-spacing: 0;
}
.p_index_top_judge_list_block_katagaki {
  font-size: 1.1rem;
  font-weight: normal;
}
.p_index_top_judge_list_block_katagaki.green {
  color: var(--Green);
}
.p_index_top_judge_list_block_name {
  font-size: 1.6rem;
}
.p_index_top_judge_note {
  font-size: 1.6rem;
  color: var(--Yellow);
}
.p_index_top_judge_lead {
  margin-top: 30px;
  font-size: 2.2rem;
  color: var(--Yellow);
  text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.35);
}
.p_index_top_judge_lead .line {
  background: linear-gradient(transparent 60%, rgba(255, 237, 122, 0.8) 50%);
}
.p_index_top_lead {
  margin-top: 30px;
}
.p_index_top_lead_ttl {
  font-size: 2rem;
}
.p_index_top_lead_note {
  font-size: 1.4rem;
  font-weight: normal;
  text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.35);
}
.p_index_top_entry {
  max-width: 550px;
  margin: auto;
  margin-top: 30px;
  padding: 20px 20px;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0 10px;
  line-height: 1;
}
.p_index_top_entry_ttl {
  font-size: 1.8rem;
}
.p_index_top_entry_ttl .line {
  background: linear-gradient(transparent 80%, var(--Red) 60%);
}
.p_index_top_entry_date {
  font-size: 2.2rem;
}
.p_index_top_entry_date .big {
  font-size: 3.4rem;
}
.p_index_top_entry_date svg {
  display: inline-block;
  width: 10px;
  margin: 0 5px;
}
.p_index_top_bottom {
  margin-top: 50px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
  align-items: center;
}
.p_index_top_bottom_ttl {
  font-size: 1.2rem;
  font-weight: normal;
}
@media screen and (max-width: 1015px) {
  .p_index_top {
    /*
    height: calc(100vh - 60px);
    min-height:0;
    */
  }
  .p_index_top_content {
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  }
  .p_index_top_intro {
    font-size: 2rem;
  }
  .p_index_top_ttl {
    font-size: 4.8rem;
  }
  .p_index_top_ttl .small {
    font-size: 3.5rem;
  }
  .p_index_top_ttl .big {
    font-size: 5.8rem;
  }
  .p_index_top_subttl {
    font-size: 2.8rem;
  }
  .p_index_top_para {
    font-size: 2rem;
  }
  .p_index_top_entry {
    max-width: 600px;
  }
  .p_index_top_entry_ttl {
    font-size: 2rem;
  }
  .p_index_top_entry_date {
    font-size: 2rem;
  }
  .p_index_top_entry_date .big {
    font-size: 3.2rem;
  }
  .p_index_top_bottom {
    margin-top: 50px;
  }
  .p_index_top_bottom_ttl {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_top {
    /*
    height:calc(100svh - 65px);
    min-height:0;
    padding:0px 0;
    */
  }
  .p_index_top_bg {
    height: 100lvh;
  }
  .p_index_top_content {
    padding: 50px 0 20px 0;
    max-width: 90vw;
  }
  .p_index_top_intro {
    font-size: 1.6rem;
  }
  .p_index_top_intro:after {
    margin: 10px 0 0px;
  }
  .p_index_top_ttl {
    font-size: 3rem;
    line-height: 1.1;
  }
  .p_index_top_ttl .small {
    font-size: 2rem;
  }
  .p_index_top_ttl .big {
    font-size: 3.6rem;
  }
  .p_index_top_ttl img {
    width: 100%;
    height: auto;
    max-width: 300px;
    margin: 0 auto;
  }
  .p_index_top_subttl {
    font-size: 1.6rem;
    display: block;
    width: 100%;
    display: block;
    margin: auto;
    margin: auto;
    line-height: 1.2;
    margin-top: 25px;
  }
  .p_index_top_para {
    font-size: 1.6rem;
    margin-top: 20px;
  }
  .p_index_top_judge {
    margin-top: 40px;
    max-width: 90vw;
  }
  .p_index_top_judge::after {
    margin-top: 15px;
    height: 4px;
  }
  .p_index_top_judge_list {
    margin-top: 10px;
  }
  .p_index_top_judge_list_block_image {
    padding: 3px;
  }
  .p_index_top_judge_list_block_text {
    padding: 10px 0px 7px 0px;
    margin-top: -10px;
  }
  .p_index_top_judge_list_block_katagaki {
    font-size: 1rem;
    white-space: normal;
  }
  .p_index_top_judge_list_block_name {
    font-size: 1.2rem;
  }
  .p_index_top_judge_note {
    font-size: 1.2rem;
    margin-top: 0;
  }
  .p_index_top_judge_lead {
    margin-top: 25px;
    font-size: 1.4rem;
  }
  .p_index_top_lead {
    margin-top: 15px;
  }
  .p_index_top_lead_ttl {
    font-size: 1.4rem;
  }
  .p_index_top_lead_note {
    font-size: 1.1rem;
  }
  .p_index_top_entry {
    padding: 10px 5px;
    margin-top: 15px;
    display: block;
  }
  .p_index_top_entry_ttl {
    font-size: 1.4rem;
  }
  .p_index_top_entry_ttl .big {
    font-size: 1.8rem;
  }
  .p_index_top_entry_date {
    font-size: 1.2rem;
    line-height: 1.2;
  }
  .p_index_top_entry_date .big {
    font-size: 2.2rem;
  }
  .p_index_top_entry_date svg {
    height: 13px;
    width: auto;
    margin: 0 3px;
  }
  .p_index_top_bottom {
    margin-top: 15px;
  }
  .p_index_top_bottom_ttl {
    font-size: 1rem;
  }
}
@media screen and (min-width: 850px) and (max-height: 950px) {
  .p_index_top {
    /*
    height: calc(100vh - 65px);
    min-height:650px;
    */
  }
  .p_index_top_intro:after {
    margin-top: 10px;
    margin-bottom: 0px;
  }
  .p_index_top_ttl {
    font-size: 6rem;
  }
  .p_index_top_ttl .small {
    font-size: 3rem;
  }
  .p_index_top_ttl .big {
    font-size: 6.8rem;
  }
  .p_index_top_subttl {
    font-size: 2.5rem;
    margin-top: 20px;
  }
  .p_index_top_para {
    font-size: 1.8rem;
    margin-top: 20px;
  }
  .p_index_top_judge {
    max-width: 700px;
  }
  .p_index_top_judge_list_block_katagaki {
    font-size: 1rem;
  }
  .p_index_top_judge_list_block_name {
    font-size: 1.4rem;
  }
  .p_index_top_judge_note {
    font-size: 1.2rem;
    margin-top: 10px;
  }
  .p_index_top_judge_lead {
    margin-top: 10px;
    font-size: 1.8rem;
  }
  .p_index_top_entry {
    padding: 20px 0;
  }
  .p_index_top_entry_ttl {
    font-size: 1.6rem;
  }
  .p_index_top_entry_date {
    font-size: 1.8rem;
  }
  .p_index_top_entry_date .big {
    font-size: 2.8rem;
  }
  .p_index_top_bottom {
    margin-top: 30px;
  }
  .p_index_top_bottom_ttl {
    font-size: 1.2rem;
  }
}
.p_index_contents {
  position: relative;
  z-index: 2;
  background-color: #FFF;
}
.p_index_content {
  position: relative;
  padding: 100px 0;
}
@media screen and (max-width: 1015px) {
  .p_index_content {
    padding: 80px 0;
  }
}
@media screen and (max-width: 850px) {
  .p_index_content {
    padding: 60px 0;
  }
}
.p_index_content.gray {
  background-color: var(--Gray);
}
.p_index_content.border {
  border-top: solid 1px var(--Green);
}
.p_index_content .inner.gray {
  background: var(--Gray);
  padding: 50px;
}
@media screen and (max-width: 850px) {
  .p_index_content .inner.gray {
    padding: 50px 20px;
  }
}
.p_index_content_box {
  margin: 0 auto;
  max-width: 900px;
}
.p_index_cmn_ttl {
  text-align: center;
  line-height: 1.4;
}
@media screen and (max-width: 850px) {
  .p_index_cmn_ttl {
    line-height: 1.2;
  }
}
.p_index_cmn_ttl .en {
  font-size: 6.6rem;
  color: var(--Green3);
}
@media screen and (max-width: 1015px) {
  .p_index_cmn_ttl .en {
    font-size: 6rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_cmn_ttl .en {
    font-size: 4rem;
  }
}
.p_index_cmn_ttl .ja {
  font-size: 2.6rem;
  color: var(--Green);
}
@media screen and (max-width: 1015px) {
  .p_index_cmn_ttl .ja {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_cmn_ttl .ja {
    font-size: 1.8rem;
  }
}
.p_index_cmn_ttl.center {
  font-size: 3.2rem;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 0px;
}
@media screen and (max-width: 850px) {
  .p_index_cmn_ttl.center {
    font-size: 2.2rem;
    margin-bottom: 0;
  }
}
.p_index_cmn_subttl {
  text-align: center;
  line-height: 1.4;
}
.p_index_cmn_subttl .en {
  font-size: 5rem;
  color: var(--Gray3);
}
@media screen and (max-width: 1015px) {
  .p_index_cmn_subttl .en {
    font-size: 6rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_cmn_subttl .en {
    font-size: 4rem;
  }
}
.p_index_cmn_subttl .ja {
  font-size: 2.4rem;
}
@media screen and (max-width: 1015px) {
  .p_index_cmn_subttl .ja {
    font-size: 2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_cmn_subttl .ja {
    font-size: 1.8rem;
  }
}
.p_index_news {
  padding: 70px 0 100px 0;
}
@media screen and (max-width: 850px) {
  .p_index_news {
    padding: 70px 0 80px 0;
  }
}
.p_index_news_content {
  display: flex;
  margin: auto;
  max-width: 900px;
  background-color: var(--Green2);
  padding: 20px;
  overflow-y: scroll;
  max-height: 250px;
}
@media screen and (max-width: 850px) {
  .p_index_news_content {
    display: block;
    padding: 10px 20px;
  }
}
.p_index_news_content_left {
  width: 150px;
  text-align: center;
}
@media screen and (max-width: 850px) {
  .p_index_news_content_left {
    width: auto;
  }
}
.p_index_news_content_right {
  width: calc(100% - 100px);
  padding-top: 5px;
}
@media screen and (max-width: 850px) {
  .p_index_news_content_right {
    width: auto;
  }
}
.p_index_news_ttl {
  font-size: 2rem;
  color: var(--Green);
  margin-right: 20px;
}
@media screen and (max-width: 850px) {
  .p_index_news_ttl {
    font-size: 1.6rem;
    text-align: left;
  }
}
.p_index_news_para {
  font-size: 1.4rem;
  margin-right: 10px;
  margin-bottom: 10px;
}
.p_index_news_para a {
  display: flex;
  width: 100%;
}
.p_index_news_para a .date {
  width: 80px;
}
.p_index_news_para a .text {
  width: calc(100% - 80px);
}
@media screen and (max-width: 850px) {
  .p_index_news_para {
    font-size: 1.2rem;
  }
}
.p_index_about {
  position: relative;
}
.p_index_about_btn {
  position: absolute;
  right: 50px;
  top: 0;
  transform: translateY(-50%);
  width: 165px;
  height: 165px;
}
@media screen and (max-width: 1015px) {
  .p_index_about_btn {
    width: 150px;
    height: 150px;
  }
}
.p_index_about_btn a {
  border-radius: 50%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  font-size: 2.4rem;
  color: #FFF;
  line-height: 1.3;
  background-color: var(--Red);
}
.p_index_about_btn a:hover {
  opacity: 0.5;
}
@media screen and (max-width: 1015px) {
  .p_index_about_btn a {
    font-size: 2rem;
  }
}
.p_index_about_btn a svg {
  margin-top: 10px;
}
.p_index_about_content {
  margin: auto;
  margin-top: 80px;
  max-width: 800px;
}
@media screen and (max-width: 1015px) {
  .p_index_about_content {
    margin-top: 60px;
  }
}
.p_index_about_ttl {
  text-align: center;
  line-height: 2;
  font-size: 2.6rem;
}
@media screen and (max-width: 1015px) {
  .p_index_about_ttl {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_about_ttl {
    font-size: 1.8rem;
  }
}
.p_index_about_ttl .colorText {
  font-size: 3.5rem;
}
@media screen and (max-width: 1015px) {
  .p_index_about_ttl .colorText {
    font-size: 3.3rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_about_ttl .colorText {
    font-size: 2.6rem;
  }
}
.p_index_about_ttl .small {
  font-size: 1.8rem;
}
@media screen and (max-width: 1015px) {
  .p_index_about_ttl .small {
    font-size: 1.3rem;
  }
}
.p_index_about_para {
  margin-top: 80px;
  line-height: 2;
  font-size: 1.8rem;
}
@media screen and (max-width: 850px) {
  .p_index_about_para {
    font-size: 1.6rem;
    margin-top: 50px;
  }
}
.p_index_about_note {
  font-size: 1.2rem;
  margin-top: 50px;
}
@media screen and (max-width: 850px) {
  .p_index_about_note {
    margin-top: 30px;
  }
}
.p_index_about_note span {
  display: block;
  margin-top: 5px;
}
.p_index_lead {
  padding: 0 0 100px 0;
}
@media screen and (max-width: 850px) {
  .p_index_lead {
    padding: 0 0 80px 0;
  }
}
.p_index_lead_clm {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 850px) {
  .p_index_lead_clm {
    display: block;
  }
}
.p_index_lead_left {
  width: 65%;
}
@media screen and (max-width: 850px) {
  .p_index_lead_left {
    width: auto;
  }
}
.p_index_lead_right {
  width: 30%;
}
@media screen and (max-width: 850px) {
  .p_index_lead_right {
    width: auto;
  }
}
.p_index_lead_ttl {
  font-size: 3rem;
  line-height: 1.6;
  text-align: center;
}
.p_index_lead_ttl span.text {
  opacity: 0;
  transition-property: opacity;
}
.p_index_lead_ttl.on span.text {
  opacity: 1;
}
@media screen and (max-width: 1015px) {
  .p_index_lead_ttl {
    font-size: 3rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_lead_ttl {
    font-size: 2.4rem;
  }
}
.p_index_lead_list {
  font-size: 1.8rem;
  margin-top: 40px;
}
@media screen and (max-width: 850px) {
  .p_index_lead_list {
    font-size: 1.4rem;
  }
}
.p_index_lead_list li {
  margin-bottom: 5px;
}
.p_index_lead_para {
  font-size: 1.6rem;
  margin-top: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_lead_para {
    font-size: 1.4rem;
    margin-top: 60px;
  }
}
.p_index_lead_image {
  margin-top: 70px;
}
@media screen and (max-width: 850px) {
  .p_index_lead_image img {
    width: auto;
    height: 33px;
    margin: auto;
  }
}
.p_index_point {
  padding: 0 0 130px 0;
}
@media screen and (max-width: 850px) {
  .p_index_point {
    padding: 0 0 80px 0;
  }
}
.p_index_point.pt0 {
  padding-top: 0;
}
.p_index_point_box {
  border-top: 1px solid var(--Green);
  margin-top: 50px;
}
@media screen and (max-width: 1015px) {
  .p_index_point_box {
    margin-top: 60px;
  }
}
@media screen and (max-width: 850px) {
  .p_index_point_box {
    margin-top: 50px;
  }
}
.p_index_point_block {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 35px 0;
  border-bottom: 1px solid var(--Green);
}
@media screen and (max-width: 850px) {
  .p_index_point_block {
    padding: 30px 0;
    display: block;
  }
}
.p_index_point_block_left {
  width: 42%;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 850px) {
  .p_index_point_block_left {
    width: auto;
  }
}
.p_index_point_block_right {
  width: 50%;
}
@media screen and (max-width: 850px) {
  .p_index_point_block_right {
    width: auto;
    margin-top: 15px;
  }
}
.p_index_point_block_num {
  width: 65px;
  height: 65px;
  background-color: var(--Green);
  color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3rem;
  line-height: 1;
  border-radius: 50%;
  padding-bottom: 5px;
  margin-right: 30px;
}
@media screen and (max-width: 1015px) {
  .p_index_point_block_num {
    font-size: 3rem;
    width: 55px;
    height: 55px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 850px) {
  .p_index_point_block_num {
    font-size: 2.2rem;
    width: 42px;
    height: 42px;
    margin-right: 15px;
  }
}
.p_index_point_block_ttl {
  width: calc(100% - 65px);
  font-size: 2.5rem;
  line-height: 1.6;
}
@media screen and (max-width: 1015px) {
  .p_index_point_block_ttl {
    font-size: 2.4rem;
    width: calc(100% - 55px);
  }
}
@media screen and (max-width: 850px) {
  .p_index_point_block_ttl {
    font-size: 2rem;
    width: calc(100% - 45px);
  }
}
.p_index_point_block_ttl .small {
  font-size: 2.4rem;
}
@media screen and (max-width: 1015px) {
  .p_index_point_block_ttl .small {
    font-size: 2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_point_block_ttl .small {
    font-size: 1.4rem;
  }
}
.p_index_point_block_ttl .line {
  background: linear-gradient(transparent 70%, var(--Pink2) 0%);
}
.p_index_point_block_para {
  font-size: 1.6rem;
}
@media screen and (max-width: 850px) {
  .p_index_point_block_para {
    font-size: 1.4rem;
  }
}
.p_index_entry {
  padding: 80px 0 100px 0;
  background: var(--GreenAnimation2);
  background-size: 200% 100%;
  animation: bggradient 10s linear infinite;
}
@media screen and (max-width: 850px) {
  .p_index_entry {
    padding: 60px 0 80px 0;
  }
}
.p_index_entry_btn {
  display: block;
}
.p_index_entry_ttl .en {
  color: #FFF;
  mix-blend-mode: overlay;
}
.p_index_entry_ttl .ja {
  color: #FFF;
}
.p_index_entry_heading {
  width: 100%;
  max-width: 800px;
  margin: 80px auto 0 auto;
  padding: 10px 0;
  font-size: 2.4rem;
  font-weight: 700;
  color: #FFF;
  text-align: center;
  background-color: var(--Green);
}
@media screen and (max-width: 850px) {
  .p_index_entry_heading {
    margin: 60px auto 0 auto;
    padding: 2px 0 6px 0;
    font-size: 2rem;
  }
}
.p_index_entry_list {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 800px;
  margin: auto;
}
.p_index_entry_item {
  padding: 10px 5px 5px 5px;
  width: 100%;
  font-size: 1.2rem;
  font-weight: 900;
  border-bottom: 1px solid var(--Green);
}
.p_index_entry_item_para {
  margin: 5px 0 0 0;
  text-align: center;
  font-size: 10px;
}
.p_index_entry_itemGenre {
  display: inline-block;
  width: 100px;
  margin: 0 20px 0 0;
  font-size: 10px;
  font-weight: 900;
  padding: 1px;
  border: solid 1px #111;
  border-radius: 10px;
  background-color: #ffffff;
  text-align: center;
}
@media screen and (max-width: 850px) {
  .p_index_entry_itemGenre {
    display: block;
    width: 100px;
    margin: 0 20px 0 0;
    font-size: 10px;
    font-weight: 900;
    padding: 1px;
    border: solid 1px #111;
    border-radius: 10px;
    background-color: #ffffff;
    text-align: center;
  }
}





/*二次審査が終わったら消す*/
.p_index_finalExamination_ttl {
  text-align: center;
  color: var(--Green);
  font-size: 2rem;
  margin-top: 40px;
}
.p_index_finalExamination_content {
  margin-top: 0px;
  padding: 20px 20px;
}
.p_index_finalExamination_list {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 500px;
  margin: auto;
}
.p_index_finalExamination_item {
  padding: 10px 5px 5px 5px;
  width: 100%;
  font-size: 1.4rem;
  font-weight: 900;
  border-bottom: 1px solid var(--Green);
}
.p_index_finalExamination_item_para {
  margin: 5px 0 0 0;
  text-align: center;
  font-size: 10px;
}
.p_index_finalExamination_itemGenre {
  display: inline-block;
  width: 100px;
  margin: 0 20px 0 0;
  font-size: 10px;
  font-weight: 900;
  padding: 1px;
  border: solid 1px #111;
  border-radius: 10px;
  background-color: #ffffff;
  text-align: center;
}
.p_index_finalExaminationSchedule_para {
  text-align: center;
  color: var(--Green);
  font-size: 1.4rem;
  font-weight: 700;
}
.p_index_finalExaminationSchedule_list {
    display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 240px;
  margin: 0 auto 10px auto;

}
.p_index_finalExaminationSchedule_item {
  padding: 10px 5px 5px 5px;
  width: 100%;
  font-size: 1.4rem;
  font-weight: 900;
}

.p_index_finalExaminationSchedule_link {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 10px 0 30px 0;
}
.p_index_finalExaminationSchedule_link a {
  display: block;
  width: 20%;
  min-width: 150px;
  padding: 5px;
  font-size: 1.2rem;
  font-weight: 900;
  text-align: center;
  border: 1px var(--Green) solid;
  border-radius: 54.6px;
}


@media screen and (max-width: 850px) {
  .p_index_finalExamination_itemGenre {
    display: block;
    width: 100px;
    margin: 0 20px 0 0;
    font-size: 10px;
    font-weight: 900;
    padding: 1px;
    border: solid 1px #111;
    border-radius: 10px;
    background-color: #ffffff;
    text-align: center;
  }
}

















.p_index_entry_content {
  background: rgba(255, 255, 255, 0.95);
  padding: 80px 50px;
  margin-top: 100px;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_content {
    margin-top: 80px;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_content {
    margin-top: 60px;
    padding: 50px 20px;
  }
}
.p_index_entry_block {
  display: flex;
  justify-content: space-between;
  max-width: 800px;
  margin: auto;
  padding: 30px 0;
  border-bottom: 1px solid var(--Green);
}
.p_index_entry_block:first-child {
  padding-top: 0;
}
.p_index_entry_block.border {
  border-top: 1px solid var(--Green);
}
@media screen and (max-width: 1015px) {
  .p_index_entry_block {
    padding: 40px 0;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_block {
    display: block;
    text-align: left;
    padding: 30px 15px;
  }
}
.p_index_entry_block_ttl {
  width: 30%;
  font-size: 1.8rem;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_block_ttl {
    width: 25%;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_ttl {
    width: auto;
  }
}
.p_index_entry_block_text {
  width: 65%;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_block_text {
    width: 70%;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_text {
    width: auto;
    margin-top: 10px;
  }
}
.p_index_entry_block_para {
  font-size: 1.6rem;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_block_para {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_para {
    font-size: 1.4rem;
  }
}
.p_index_entry_block_para.big {
  font-size: 2.4rem;
  margin-bottom: 10px;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_block_para.big {
    font-size: 2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_para.big {
    font-size: 1.8rem;
  }
}
.p_index_entry_block_para a {
  text-decoration: underline;
}
.p_index_entry_block_para .small {
  font-size: 1.2rem;
}
.p_index_entry_block_speech {
  position: relative;
  display: block;
  text-align: center;
  max-width: 800px;
  margin: 70px auto 30px auto;
  padding: 25px 50px 55px 50px;
  background: var(--GreenGradient);
  border-radius: 14px;
  color: #FFF;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_speech {
    font-size: 1.7rem;
    line-height: 1.2;
    padding: 10px 10px 20px 10px;
  }
  .p_index_entry_block_speech .para {
    margin-top: 15px;
    display: inline-block;
  }
}
.p_index_entry_block_speech::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  bottom: -26px;
  left: calc(50% - 13px);
  border-top: 26px solid #47B31F;
  border-left: 16px solid transparent;
  border-right: 16px solid transparent;
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_speech::before {
    bottom: -11px;
    left: calc(50% - 4px);
    border-top: 12px solid #47B31F;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
  }
}
.p_index_entry_block_speech .num {
  font-size: 6.5rem;
  font-weight: 700;
  color: var(--Yellow);
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_speech .num {
    font-size: 2.8rem;
  }
}
.p_index_entry_block_speech .small {
  font-size: 2.2rem;
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_speech .small {
    font-size: 1.8rem;
  }
}
.p_index_entry_block_merit {
  width: 100%;
  height: auto;
  background: #FFF;
  padding: 2% 5%;
}
@media screen and (max-width: 850px) {
  .p_index_entry_block_merit {
    padding: 2% 0;
  }
}
.p_index_entry_block.no_border {
  border-bottom: none;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
}
@media screen and (max-width: 850px) {
  .p_index_entry_block.no_border {
    padding-top: 10px;
  }
}
.p_index_entry_text {
  text-align: center;
}
.p_index_entry_text_subttl {
  color: var(--Red);
  font-size: 1.8rem;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_text_subttl {
    font-size: 1.6rem;
  }
}
.p_index_entry_text_ttl {
  font-size: 2.4rem;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_text_ttl {
    font-size: 2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_text_ttl {
    font-size: 1.8rem;
  }
}
.p_index_entry_text_para {
  font-size: 1.6rem;
  margin-top: 30px;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_text_para {
    font-size: 1.5rem;
  }
}
.p_index_entry_detail {
  border-top: 1px solid var(--Red);
  border-bottom: 1px solid var(--Red);
  max-width: 650px;
  margin: 0 auto;
  margin-top: 50px;
  padding: 30px 0;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_detail {
    margin-top: 40px;
  }
}
.p_index_entry_detail_block {
  display: flex;
  justify-content: space-between;
  padding: 10px 0;
}
@media screen and (max-width: 850px) {
  .p_index_entry_detail_block {
    display: block;
    text-align: center;
  }
}
.p_index_entry_detail_block_ttl {
  width: 32%;
  font-size: 1.8rem;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_detail_block_ttl {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_detail_block_ttl {
    width: auto;
  }
}
.p_index_entry_detail_block_para {
  width: 63%;
  font-size: 1.6rem;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_detail_block_para {
    width: auto;
    font-size: 1.5rem;
  }
}
.p_index_entry_detail_block_para.big {
  font-size: 2.2rem;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_detail_block_para.big {
    font-size: 2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_entry_detail_block_para.big {
    font-size: 1.8rem;
  }
}
.p_index_entry_detail_block_para a {
  text-decoration: underline;
}
.p_index_entry_btn {
  text-align: center;
  margin-top: 50px;
}
.p_index_entry_btn a {
  background-color: #333333;
  border: none;
  color: #FFF;
  font-size: 2.6rem;
  padding: 5px 30px;
}
.p_index_entry_btn a:hover {
  background-color: #333333;
  opacity: 0.5;
}
.p_index_entry_btn a svg {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
@media screen and (max-width: 850px) {
  .p_index_entry_btn a {
    font-size: 2.2rem;
  }
}
.p_index_entry_form {
  overflow: hidden;
  position: relative;
  width: 100%;
  max-width: 640px;
  text-align: center;
  border-top: solid 1px #FFF;
  border-bottom: solid 1px #FFF;
  box-sizing: border-box;
  color: #FFF;
  margin: 60px auto 0 auto;
  font-size: 2.6rem;
  font-weight: 700;
  padding: 30px 0;
}
@media screen and (max-width: 850px) {
  .p_index_entry_form {
    margin: 60px auto 0 auto;
    font-size: 1.8rem;
  }
}
.p_index_entry_form_text {
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #FFF;
  margin-top: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_entry_form_text {
    font-size: 1.2rem;
  }
}
.p_index_entry_form_button {
  overflow: hidden;
  position: relative;
  display: block;
  margin: 30px auto 0 auto;
  background-color: var(--Yellow);
  width: 100%;
  max-width: 520px;
  height: 94px;
  border-style: none;
  border-radius: 47px;
}
@media screen and (max-width: 850px) {
  .p_index_entry_form_button {
    margin: 20px auto 0 auto;
    background-color: var(--Yellow);
    width: 100%;
    max-width: 300px;
    height: 60px;
    line-height: 55px;
    border-style: none;
    border-radius: 30px;
  }
}
.p_index_entry_form_button:hover::after {
  overflow: hidden;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
}
.p_index_entry_form_button span {
  overflow: hidden;
  position: relative;
  display: inline-block;
  font-size: 2.8rem;
  font-weight: 700;
  padding-left: 50px;
}
@media screen and (max-width: 850px) {
  .p_index_entry_form_button span {
    font-size: 2.2rem;
    padding-left: 35px;
  }
}
.p_index_entry_form_button span::before {
  content: "";
  background-image: url(/img/index/entry_arrow.svg);
  background-position: 0 50%;
  background-size: contain;
  background-repeat: no-repeat;
  width: 25px;
  height: 25px;
  position: absolute;
  top: 12px;
  left: 0;
  transition: all 0.3s;
}
@media screen and (max-width: 1015px) {
  .p_index_entry_form_button span::before {
    width: 22px;
    height: 22px;
    top: 18px;
  }
}
.p_index_process_ttl .en {
  color: var(--Gray2);
}
.p_index_process_ttl .ja {
  color: var(--TextBlack);
}
.p_index_process_text {
  margin-top: 100px;
  text-align: center;
}
@media screen and (max-width: 1015px) {
  .p_index_process_text {
    margin-top: 80px;
  }
}
@media screen and (max-width: 850px) {
  .p_index_process_text {
    margin-top: 60px;
  }
}
.p_index_process_text_ttl {
  font-size: 2.2rem;
}
@media screen and (max-width: 1015px) {
  .p_index_process_text_ttl {
    font-size: 2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_process_text_ttl {
    font-size: 1.8rem;
  }
}
.p_index_process_text_ttl.center {
  text-align: center;
  margin-top: 40px;
}
.p_index_process_text_para {
  font-size: 1.6rem;
  margin-top: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_process_text_para {
    font-size: 1.4rem;
  }
}
.p_index_process_text_para.center {
  text-align: center;
  margin-top: 40px;
}
.p_index_process_circle {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: auto;
  margin-top: 30px;
}
@media screen and (max-width: 1015px) {
  .p_index_process_circle {
    margin-top: 40px;
  }
}
@media screen and (max-width: 850px) {
  .p_index_process_circle {
    margin-top: 30px;
    max-width: 320px;
  }
}
.p_index_process_circle_block {
  width: 180px;
  height: 180px;
  color: #FFF;
  font-size: 2.8rem;
  background-color: var(--Green);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  margin: 0 20px;
  text-align: center;
  line-height: 1.3;
  transform: scale(0.7);
  transition: transform 0.3s ease-in;
}
.p_index_process_circle_block:nth-child(2) {
  transition-delay: 0.2s;
}
.p_index_process_circle_block:nth-child(2) span {
  transition-delay: 0.2s;
}
.p_index_process_circle_block:nth-child(3) {
  transition-delay: 0.4s;
}
.p_index_process_circle_block:nth-child(3) span {
  transition-delay: 0.4s;
}
.p_index_process_circle_block:nth-child(4) {
  transition-delay: 0.6s;
}
.p_index_process_circle_block:nth-child(4) span {
  transition-delay: 0.6s;
}
.p_index_process_circle_block span {
  opacity: 0;
  transition: opacity 0.5s;
}
.p_index_process_circle_block.on {
  transform: scale(1);
}
.p_index_process_circle_block.on span {
  opacity: 1;
}
@media screen and (max-width: 1015px) {
  .p_index_process_circle_block {
    width: 160px;
    height: 160px;
    margin: 0 10px;
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_process_circle_block {
    width: 130px;
    height: 130px;
    font-size: 2rem;
    margin-bottom: 20px;
  }
}
.p_index_process_box {
  margin: auto;
  margin-top: 50px;
  max-width: 880px;
}
@media screen and (max-width: 1015px) {
  .p_index_process_box {
    margin-top: 40px;
  }
}
@media screen and (max-width: 850px) {
  .p_index_process_box {
    margin-top: 30px;
  }
}
.p_index_process_block {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  border: 1px solid var(--Green);
  padding: 30px 20px;
  margin-bottom: 50px;
  position: relative;
  background-color: #FFF;
}
@media screen and (max-width: 850px) {
  .p_index_process_block {
    margin-top: 30px;
    padding: 20px 10px;
  }
}
.p_index_process_block:before {
  width: 20px;
  height: 20px;
  border-right: 1px solid var(--Green);
  border-bottom: 1px solid var(--Green);
  display: block;
  content: "";
  transform: rotate(45deg) translateY(100%);
  position: absolute;
  left: 20px;
  right: 0;
  margin: auto;
  bottom: -15px;
}
.p_index_process_block:last-child:before {
  display: none;
}
.p_index_process_block_left {
  width: 40%;
  padding-left: 150px;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_left {
    width: 100%;
    padding-left: 0;
    text-align: center;
  }
}
.p_index_process_block_right {
  width: 60%;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_right {
    width: 100%;
    margin-top: 15px;
  }
}
.p_index_process_block_ttl {
  font-size: 1.8rem;
}
@media screen and (max-width: 1015px) {
  .p_index_process_block_ttl {
    font-size: 1.6rem;
  }
}
.p_index_process_block_subttl {
  font-size: 1.4rem;
  white-space: nowrap;
  line-height: 1;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_subttl {
    font-size: 1.2rem;
  }
}
.p_index_process_block_para {
  font-size: 1.6rem;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_para {
    font-size: 1.2rem;
    margin: 0 auto;
    text-align: center;
  }
}
.p_index_process_block_para .big {
  font-size: 1.6rem;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_para .big {
    font-size: 1.4rem;
  }
}
.p_index_process_block_para .left {
  width: 150px;
  display: inline-block;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_para .left {
    width: 140px;
    display: inline-block;
  }
}
.p_index_process_block.last {
  margin-top: 100px;
  padding-top: 80px;
  overflow: visible;
}
@media screen and (max-width: 850px) {
  .p_index_process_block.last {
    margin-top: 80px;
    margin-bottom: 30px;
    padding: 50px 20px 0 20px;
  }
}
.p_index_process_block_center {
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  margin: auto;
  width: max-content;
  background-color: #FFF;
  padding: 20px 50px;
  border: solid 1px var(--Green);
  border-radius: 54.6px;
  box-sizing: border-box;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_center {
    top: -35px;
    padding: 10px 20px;
  }
}
.p_index_process_block_center_heading {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  display: inline-block;
  background: var(--GreenGradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_center_heading {
    font-size: 1.5rem;
  }
}
.p_index_process_block_center_ttl {
  width: 100%;
  text-align: center;
  font-size: 3.8rem;
  color: var(--Green);
}
@media screen and (max-width: 850px) {
  .p_index_process_block_center_ttl {
    font-size: 2.2rem;
  }
}
.p_index_process_block_center_subttl {
  width: 100%;
  text-align: center;
  font-size: 2.5rem;
  margin-top: 10px;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_center_subttl {
    font-size: 1.8rem;
  }
}
.p_index_process_block_center_para {
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_center_para {
    font-size: 1.3rem;
  }
}
.p_index_process_block_center_remarks {
  width: 100%;
  padding: 0 60px;
  letter-spacing: 0;
  text-align: left;
  font-size: 1.1rem;
  margin-top: 30px;
  margin-bottom: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_process_block_center_remarks {
    padding: 0;
    font-size: 1rem;
  }
  .p_index_process_block_center_remarks br {
    display: none;
  }
}
.p_index_process_table {
  overflow: hidden;
  position: relative;
  width: calc(100% - 60px);
  height: auto;
  border-collapse: collapse;
  margin: 40px 30px 30px 30px;
}
@media screen and (max-width: 850px) {
  .p_index_process_table {
    width: 100%;
    margin: 20px 0 0 0;
  }
}
.p_index_process_table th {
  border: solid 1px var(--Gray3);
  background-color: var(--Gray4);
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  padding: 10px 0;
}
@media screen and (max-width: 850px) {
  .p_index_process_table th {
    font-size: 1.2rem;
    letter-spacing: 0.02em;
    padding: 5px 0;
  }
}
.p_index_process_table td {
  border: solid 1px var(--Gray3);
  font-size: 1.6rem;
  line-height: 1.2;
  text-align: center;
  padding: 20px 0;
}
@media screen and (max-width: 850px) {
  .p_index_process_table td {
    font-size: 1.2rem;
    padding: 10px 0;
  }
}
.p_index_process_table td.item {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2;
  background-color: var(--Green3);
}
@media screen and (max-width: 850px) {
  .p_index_process_table td.item {
    font-size: 1.2rem;
  }
}
.p_index_judge_ttl {
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  align-items: center;
  display: flex;
  color: var(--Green);
  padding-top: 80px;
  margin-bottom: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_judge_ttl {
    font-size: 1.8rem;
    padding-top: 50px;
    margin-bottom: 20px;
  }
}
.p_index_judge_ttl::before {
  background-color: var(--Green);
  content: "";
  flex-grow: 1;
  height: 1px;
  margin-top: 4px;
  margin-right: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_judge_ttl::before {
    margin-right: 10px;
  }
}
.p_index_judge_ttl::after {
  background-color: var(--Green);
  content: "";
  flex-grow: 1;
  height: 1px;
  margin-top: 4px;
  margin-left: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_judge_ttl::after {
    margin-left: 10px;
  }
}
.p_index_judge_box {
  display: flex;
  flex-wrap: wrap;
  max-width: 1080px;
  margin: auto;
  gap: 0 3.74%;
}
@media screen and (max-width: 1015px) {}
@media screen and (max-width: 850px) {
  .p_index_judge_box {
    margin-top: 30px;
    gap: 0 8%;
  }
}
.p_index_final_block {
  text-align: center;
  width: 17%;
  margin-top: 35px;
}
@media screen and (max-width: 850px) {
  .p_index_final_block {
    width: 46%;
    padding: 0 3%;
  }
}
.p_index_final_block_image {
  border-radius: 50%;
  overflow: hidden;
  background: var(--GreenGradient);
  padding: 4px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 850px) {
  .p_index_final_block_image {
    padding: 3px;
  }
}
.p_index_final_block_image img {
  overflow: hidden;
  border-radius: 50%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.p_index_final_block_para {
  font-size: 1.4rem;
  margin-top: 20px;
}
.p_index_final_block_name {
  font-size: 2.2rem;
}
@media screen and (max-width: 1015px) {
  .p_index_final_block_name {
    font-size: 2rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_final_block_name {
    font-size: 1.8rem;
  }
}
.p_index_local_block {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-top: 35px;
  width: 30.8%;
}
@media screen and (max-width: 850px) {
  .p_index_local_block {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    width: 46%;
  }
}
.p_index_local_block_image {
  overflow: hidden;
/*  background: var(--GreenGradient);*/
  padding: 4px;
  position: relative;
  z-index: 2;
  max-width: 70px;
  width: 100%;
}
@media screen and (max-width: 850px) {
  .p_index_local_block_image {
    max-width: 60px;
  }
}
.p_index_local_block_image img {
  overflow: hidden;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.p_index_local_block_para {
  margin: 0 0 0 10px;
  font-size: 2rem;
  font-weight: bold;
}
.p_index_local_block_para_s {
  margin: 0 0 10px 0;
  width: calc(100% / 4);
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 1015px) {
  .p_index_local_block_para {}
  .p_index_local_block_para_s  {}
}


@media screen and (max-width: 850px) {
  .p_index_local_block_para {
    margin: 0 0 0 0px;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .p_index_local_block_para_s {
    display: inline-block;
    padding:  0 5px 0 5px;
    width: initial;
    font-size: 1.4rem;
  }
}
.p_index_judge_container {}
.p_index_local_box {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap:wrap;
  margin-top: 35px;
  width: 100%;
}
.p_index_local_inner {
      display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
}
@media screen and (max-width: 1015px) {
  .p_index_local_box  {}
}
@media screen and (max-width: 850px) {
  .p_index_local_inner {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: wrap;
    width: 100%;
  }
    .p_index_local_box {
    flex-direction: row;
    flex-wrap:wrap;
    margin-top: 25px;
    width: 100%;
  }
}
.p_index_judge_text {
  text-align: center;
  color: var(--Red);
  margin-top: 50px;
  font-size: 2rem;
}
.p_index_judge_text .small {
  font-weight: normal;
  font-size: 1.4rem;
}
@media screen and (max-width: 1015px) {
  .p_index_judge_text {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_judge_text {
    font-size: 1.6rem;
    margin-top: 30px;
  }
  .p_index_judge_text .small {
    font-weight: normal;
    font-size: 1.2rem;
  }
}
.p_index_judge_text_para {
  color: #000;
  font-size: 2.2rem;
}
@media screen and (max-width: 850px) {
  .p_index_judge_text_para {
    font-size: 1.8rem;
  }
}
.p_index_judge_text_note {
  color: #000;
  font-size: 1.6rem;
}
@media screen and (max-width: 850px) {
  .p_index_judge_text_note {
    font-size: 1.4rem;
  }
}
.p_index_judge_more {
  margin-top: 50px;
  color: var(--Green);
  text-align: center;
  font-size: 2rem;
  line-height: 1.6;
}
@media screen and (max-width: 850px) {
  .p_index_judge_more {
    font-size: 1.6rem;
  }
}
.p_index_judge_more .small {
  font-size: 1.6rem;
}
@media screen and (max-width: 850px) {
  .p_index_judge_more .small {
    font-size: 1.4rem;
  }
}
.p_index_judge_remarks {
  margin-top: 50px;
  text-align: center;
  font-size: 3.2rem;
  line-height: 1.1;
}
@media screen and (max-width: 1015px) {
  .p_index_judge_remarks {
    font-size: 2.5rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 850px) {
  .p_index_judge_remarks {
    font-size: 2.2rem;
  }
}
.p_index_judge_remarks .small {
  font-size: 1.6rem;
}
@media screen and (max-width: 850px) {
  .p_index_judge_remarks .small {
    font-size: 1.4rem;
    display: inline-block;
    margin-top: 15px;
  }
}
.p_index_judge_inner {
  margin-top: 100px;
}
@media screen and (max-width: 850px) {
  .p_index_judge_inner {
    margin-top: 80px;
  }
}
.p_index_judge_party {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 850px) {
  .p_index_judge_party {
    max-width: 280px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
}
.p_index_judge_party_content {
  width: 55%;
}
@media screen and (max-width: 850px) {
  .p_index_judge_party_content {
    width: 100%;
  }
}
.p_index_judge_party_content_ttl span {
  color: var(--Green);
  font-size: 2.4rem;
  font-weight: 700;
  background: linear-gradient(transparent 60%, var(--Yellow2) 50%);
}
@media screen and (max-width: 850px) {
  .p_index_judge_party_content_ttl span {
    font-size: 2rem;
  }
}
.p_index_judge_party_content_para {
  font-size: 1.6rem;
  margin-top: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_judge_party_content_para {
    font-size: 1.4rem;
    margin-top: 20px;
  }
}
.p_index_judge_party_image {
  width: 40%;
}
@media screen and (max-width: 850px) {
  .p_index_judge_party_image {
    width: 100%;
    margin-top: 30px;
  }
}
.p_index_judge_party_image img {
  width: 100%;
}
.p_index_judge_background {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: auto;
}
.p_index_faq_box {
  max-width: 900px;
  margin: auto;
  margin-top: 60px;
}
@media screen and (max-width: 1015px) {
  .p_index_faq_box {
    margin-top: 80px;
  }
}
@media screen and (max-width: 850px) {
  .p_index_faq_box {
    margin-top: 30px;
  }
}
.p_index_faq_menu {
  display: flex;
  justify-content: center;
  gap: 0 10px;
  border-bottom: 1px solid var(--Green);
  margin-bottom: 30px;
  padding: 0 30px;
  background-color: #FFF;
}
@media screen and (max-width: 850px) {
  .p_index_faq_menu {
    padding-top: 15px;
    position: sticky;
    left: 0;
    top: 65px;
    z-index: 2;
    background-color: #FFF;
  }
}
.p_index_faq_menu li {
  width: 32%;
  text-align: center;
  color: var(--Green);
  border: 1px solid var(--Green);
  border-bottom: none;
  padding: 10px 0;
  max-width: 200px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  cursor: pointer;
  font-size: 1.8rem;
}
@media screen and (max-width: 1015px) {
  .p_index_faq_menu li {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_faq_menu li {
    font-size: 1.4rem;
  }
}
.p_index_faq_menu li.active, .p_index_faq_menu li:hover {
  background-color: var(--Green);
  color: #FFF;
}
.p_index_faq_tab {
  margin: auto;
  width: 100%;
}
@media screen and (max-width: 1015px) {
  .p_index_faq_tab {
    width: 94%;
  }
}
.p_index_faq_tab_box {
  display: none;
}
.p_index_faq_tab_box.active {
  display: block;
}
.p_index_faq_block {
  margin-bottom: 5px;
}
.p_index_faq_block_ttl {
  background-color: var(--Gray);
  padding: 13px 30px;
  font-size: 1.6rem;
  cursor: pointer;
  position: relative;
  padding-right: 80px;
}
@media screen and (max-width: 1015px) {
  .p_index_faq_block_ttl {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_faq_block_ttl {
    font-size: 1.4rem;
    padding: 10px 10px;
    padding-right: 70px;
  }
}
.p_index_faq_block_ttl:before {
  width: 15px;
  height: 15px;
  border-right: 1px solid var(--Green);
  border-bottom: 1px solid var(--Green);
  display: block;
  content: "";
  transform: rotate(45deg);
  position: absolute;
  right: 30px;
  top: 50%;
  margin-top: -15px;
}
.p_index_faq_block_para {
  font-size: 1.6rem;
  overflow: hidden;
  max-height: 0;
  transition: max-height 1s;
}
@media screen and (max-width: 1015px) {
  .p_index_faq_block_para {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 850px) {
  .p_index_faq_block_para {
    font-size: 1.4rem;
  }
}
.p_index_faq_block_para span {
  padding: 20px 30px 30px 30px;
  display: block;
}
@media screen and (max-width: 850px) {
  .p_index_faq_block_para span {
    padding: 15px 10px 20px 10px;
  }
}
.p_index_faq_block_para a {
  text-decoration: underline;
}
.p_index_faq_block.active .p_index_faq_block_para {
  max-height: 300px;
}
.p_index_faq_block.active .p_index_faq_block_ttl:before {
  transform: rotate(-135deg);
  margin-top: -5px;
}
.p_index_ambassador_ttl_supplement {
  font-size: 18px;
  color: var(--Red);
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_ttl_supplement {
    font-size: 14px;
  }
}
.p_index_ambassador_para_supplement {
  margin: 20px 0 0 0;
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_para_supplement {
    font-size: 16px;
  }
}
.p_index_ambassador_para_more {
  margin: 30px 0 0 0;
  text-align: center;
  font-size: 18px;
  color: var(--Red);
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_para_more {
    text-align: center;
    font-size: 16px;
  }
}
.p_index_ambassador_para_comment {
  margin: 50px 0 0 0;
  text-align: right;
  font-size: 20px;
  font-weight: 900;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_para_comment {
    margin: 50px 0 0 0;
    text-align: right;
    font-size: 16px;
    font-weight: 900;
  }
}
.p_index_ambassador_para_comment_line {
  border-bottom: solid 2px;
}
.p_index_ambassador_box {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 80px auto 0 auto;
  width: calc(100% - 40px);
  max-width: 1000px;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_box {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    margin: 60px auto 0 auto;
    width: calc(100% - 20px);
  }
}
.p_index_ambassador_block {
  display: flex;
  flex-direction: row;
  flex: auto;
  width: 50%;
  margin: 70px 0 0 0;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_block {
    display: flex;
    flex-direction: row;
    flex: inherit;
    width: 100%;
    max-width: 400px;
    margin: 70px 0 0 0;
  }
}
.p_index_ambassador_block:nth-of-type(1), .p_index_ambassador_block:nth-of-type(2) {
  margin: 0px 0 0 0;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_block:nth-of-type(2) {
    margin: 70px 0 0 0;
  }
}
.p_index_ambassador_block_image {
  width: 100%;
  max-width: 140px;
  margin: 0 20px 0 0;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_block_image {
    width: 100%;
    max-width: 140px;
    margin: 0 20px 0 0;
  }
}
.p_index_ambassador_block_company {
  font-size: 18px;
  margin-bottom: 5px;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_block_company {
    font-size: 16px;
    margin-bottom: 5px;
  }
}
.p_index_ambassador_block_post {
  font-size: 14px;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_block_post {
    font-size: 12px;
  }
}
.p_index_ambassador_block_name {
  font-size: 22px;
  font-weight: 900;
}
@media screen and (max-width: 850px) {
  .p_index_ambassador_block_name {
    font-size: 20px;
  }
}
.p_index_ambassador_block_iconList {
  display: flex;
  flex-direction: row;
  margin: 10px 0 0 0;
}
.p_index_ambassador_block_iconItem {
  margin: 0 10px 0 0;
}
.p_index_ambassador_block_iconLink {
  display: block;
  width: 100%;
  max-width: 40px;
}
.p_index_video_intro {
  position: relative;
  padding: 40px 20px;
  margin-top: 100px;
  background: rgba(0, 0, 0, 0.55);
}
@media screen and (max-width: 850px) {
  .p_index_video_intro {
    margin-top: 40px;
    padding: 15px 20px;
  }
}
.p_index_video_intro_ttl {
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1rem;
  text-align: center;
}
@media screen and (max-width: 850px) {
  .p_index_video_intro_ttl {
    font-size: 1.6rem;
  }
}
.p_index_video_container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}
.p_index_video_container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p_index_overview {
  padding-top: 0;
}
.p_index_overview_ttl {
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  align-items: center;
  display: flex;
  color: var(--Green);
  padding-top: 80px;
  margin-bottom: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_ttl {
    font-size: 1.8rem;
    padding-top: 50px;
    margin-bottom: 20px;
  }
}
.p_index_overview_ttl::before {
  background-color: var(--Green);
  content: "";
  flex-grow: 1;
  height: 1px;
  margin-top: 4px;
  margin-right: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_ttl::before {
    margin-right: 10px;
  }
}
.p_index_overview_ttl::after {
  background-color: var(--Green);
  content: "";
  flex-grow: 1;
  height: 1px;
  margin-top: 4px;
  margin-left: 30px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_ttl::after {
    margin-left: 10px;
  }
}
.p_index_overview_content {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 850px) {
  .p_index_overview_content {
    max-width: 375px;
    margin: 0 auto;
  }
}
.p_index_overview_top {
  overflow: hidden;
  position: relative;
  width: max-content;
  height: auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 850px) {
  .p_index_overview_top {
    flex-wrap: wrap;
  }
}
.p_index_overview_top_wrap {
  overflow: hidden;
  position: relative;
  width: max-content;
  height: auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 850px) {
  .p_index_overview_top_wrap {
    margin: 0 auto;
  }
}
.p_index_overview_top_image {
  width: auto;
  height: 51.55px;
  margin-right: 10px;
  margin-top: 21px;
}
.p_index_overview_top_image img {
  width: auto;
  height: 100%;
}
@media screen and (max-width: 850px) {
  .p_index_overview_top_image {
    height: 35px;
    margin-top: 0;
  }
}
.p_index_overview_top_key {
  font-size: 2.2rem;
  font-weight: 700;
  padding-top: 30px;
  margin-right: 20px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_top_key {
    font-size: 1.8rem;
    padding-top: 3px;
    margin-right: 0;
  }
}
.p_index_overview_top_value {
  background: linear-gradient(transparent 65%, var(--Yellow2) 35%);
  display: inline;
  padding: 0 10px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_top_value {
    margin: 0 auto;
  }
}
.p_index_overview_top_value .num {
  display: inline-block;
  font-size: 6.5rem;
  line-height: 1;
  font-weight: 700;
  background: var(--GreenGradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 850px) {
  .p_index_overview_top_value .num {
    font-size: 5rem;
  }
}
.p_index_overview_top_value .unit {
  display: inline-block;
  font-size: 2.8rem;
  font-weight: 500;
}
@media screen and (max-width: 850px) {
  .p_index_overview_top_value .unit {
    font-size: 2.2rem;
  }
}
.p_index_overview_box {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 850px) {
  .p_index_overview_box {
    justify-content: center;
    flex-wrap: wrap;
    max-width: 375px;
    margin: 20px auto 0 auto;
  }
}
.p_index_overview_block {
  width: 30%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 40px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_block {
    width: 100%;
    display: flex;
    margin-top: 10px;
  }
}
.p_index_overview_block_image {
  width: auto;
  height: 40px;
  margin-right: 10px;
}
.p_index_overview_block_image img {
  width: auto;
  height: 100%;
}
@media screen and (max-width: 850px) {
  .p_index_overview_block_image {
    height: 30px;
  }
}
.p_index_overview_block_ttl {
  display: flex;
  justify-content: flex-start;
  width: max-content;
}
@media screen and (max-width: 850px) {
  .p_index_overview_block_ttl {
    padding-top: 8px;
  }
}
.p_index_overview_block_key {
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 850px) {
  .p_index_overview_block_key {
    font-size: 1.6rem;
  }
}
.p_index_overview_block_value {
  display: block;
  text-align: center;
  width: 100%;
  line-height: 1;
  padding-left: 40px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_block_value {
    width: auto;
    padding-left: 10px;
  }
}
.p_index_overview_block_value .num {
  font-size: 5rem;
  font-weight: 700;
  color: var(--Green);
}
@media screen and (max-width: 850px) {
  .p_index_overview_block_value .num {
    font-size: 4rem;
  }
}
.p_index_overview_block_value .unit {
  font-size: 2.2rem;
  font-weight: 500;
}
@media screen and (max-width: 850px) {
  .p_index_overview_block_value .unit {
    font-size: 1.8rem;
  }
}
.p_index_overview_list {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: auto;
  padding: 0 5%;
}
@media screen and (max-width: 850px) {
  .p_index_overview_list {
    padding: 0 0;
  }
}
.p_index_overview_list li {
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 5px;
}
@media screen and (max-width: 850px) {
  .p_index_overview_list li {
    font-size: 1.3rem;
  }
}
.p_index_overview_list span.right {
  display: block;
  width: 100%;
  text-align: right;
}
.p_index_overview_remarks {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: auto;
  padding: 40px 30px;
  border: solid 1px var(--Green);
  border-radius: 20px;
  box-sizing: border-box;
  margin-top: 60px;
  font-size: 2rem;
  font-weight: 400;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 850px) {
  .p_index_overview_remarks {
    padding: 20px 10px;
    font-size: 1.5rem;
    margin-top: 50px;
    line-height: 1.5;
  }
  .p_index_overview_remarks .para {
    margin-top: 15px;
  }
}
.p_index_overview_remarks .marker {
  background: linear-gradient(transparent 65%, var(--Yellow2) 35%);
  font-weight: 700;
}
.p_index_overview_remarks .small {
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 850px) {
  .p_index_overview_remarks .small {
    display: inline-block;
    font-size: 1.3rem;
  }
}
.p_index_overview_remarks .small a {
  font-weight: 700;
  text-decoration: underline;
}
.p_index_gallery {
  background-color: var(--Gray);
  padding: 80px 0 100px 0;
}
@media screen and (max-width: 850px) {
  .p_index_gallery {
    padding: 50px 0;
  }
}
.p_index_gallery_box {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: auto;
  margin: 50px 0 30px 0;
}
@media screen and (max-width: 850px) {
  .p_index_gallery_box {
    margin: 30px 0 20px 0;
  }
}
.p_index_gallery_box .swiper-wrapper {
  transition-timing-function: linear;
}
.p_index_gallery_box .swiper-slide img {
  height: auto;
  width: calc(100% - 20px);
  margin: 0 10px;
  object-fit: cover;
  aspect-ratio: 3/2;
}
.p_index_gallery_image {
  margin: 0 10px;
}
.p_index_gallery_controller {
  display: flex;
  justify-content: center;
}
.p_index_gallery_pagination {
  width: max-content !important;
  padding: 5px 20px 0 20px;
  text-align: center;
}
.p_index_gallery_pagination .swiper-pagination-bullet {
  margin: 0 5px !important;
}
.p_index_gallery_pagination .swiper-pagination-bullet-active {
  background-color: var(--Green) !important;
}
.p_index_gallery_button_prev {
  cursor: pointer;
  width: 40px;
  height: 40px;
  background-image: url(/img/index/icon_prev.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: none;
}
.p_index_gallery_button_next {
  cursor: pointer;
  width: 40px;
  height: 40px;
  background-image: url(/img/index/icon_next.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: none;
}
.p_index_wanted_para {
  margin-top: 60px;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 850px) {
  .p_index_wanted_para {
    margin-top: 40px;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
  }
}
.p_index_wanted_content {
  background: rgba(255, 255, 255, 0.95);
  padding: 50px;
  margin-top: 80px;
}
@media screen and (max-width: 850px) {
  .p_index_wanted_content {
    padding: 50px 30px;
    margin-top: 50px;
  }
}
.p_index_wanted_content_heading {
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
  color: var(--Green);
}
@media screen and (max-width: 850px) {
  .p_index_wanted_content_heading {
    font-size: 2rem;
    margin-bottom: 20px;
  }
}
.p_index_wanted_content_heading.space {
  margin-top: 100px;
}
@media screen and (max-width: 850px) {
  .p_index_wanted_content_heading.space {
    margin-top: 80px;
  }
}
.p_index_wanted_content.space {
  margin-top: 120px;
}
.p_index_wanted_block {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 800px;
  margin: auto;
  padding: 30px 0;
  border-bottom: 1px solid var(--Green);
}
@media screen and (max-width: 850px) {
  .p_index_wanted_block {
    padding: 20px 0;
    justify-content: center;
    max-width: 100%;
    flex-direction: column;
    text-align: center;
  }
}
.p_index_wanted_block.border {
  border-top: 1px solid var(--Green);
}
.p_index_wanted_block_space {
  margin-top: 1em;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 850px) {
  .p_index_wanted_block_space {
    margin-top: 25px;
  }
}
.p_index_wanted_button {
  width: 100%;
  max-width: 330px;
  height: 70px;
  border-radius: 35px;
  display: block;
  margin: 90px auto 30px auto;
  background-color: #FFF;
  border: solid 1px var(--Green);
  box-sizing: border-box;
  color: var(--Green);
}
.p_index_wanted_button:hover {
  opacity: 0.5;
}
@media screen and (max-width: 850px) {
  .p_index_wanted_button {
    max-width: 280px;
    margin: 50px auto 30px auto;
  }
}
.p_index_wanted_button span {
  overflow: hidden;
  position: relative;
  font-size: 2.4rem;
  font-weight: 700;
  padding-left: 50px;
}
@media screen and (max-width: 850px) {
  .p_index_wanted_button span {
    font-size: 2.2rem;
    padding-left: 35px;
  }
}
.p_index_wanted_button span:before {
  overflow: hidden;
  position: absolute;
  top: 6px;
  left: 0;
  content: "";
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url(/img/index/wanted_arrow.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 850px) {
  .p_index_wanted_button span:before {
    width: 22px;
    height: 22px;
    top: 6px;
  }
}
.p_index_note_para {
  margin-top: 60px;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 850px) {
  .p_index_note_para {
    margin-top: 40px;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
  }
}
.p_index_note_image {
  margin: 0 auto;
  width: 100%;
  max-width: 300px;
}
.p_index_note_image {
    max-width: 200px;
  }
.p_index_digest {
  margin: 30px auto 0 auto;
  max-width: 900px;
}
.p_index_sponsorship_ttl {
  width: 100%;
  max-width: 800px;
  margin: 80px auto 0 auto;
  padding: 3px 0;
  font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
  text-align: center;
  background-color: var(--Green);
  margin-bottom: 30px;
}
.p_index_sponsorship_wrap {
  width: 100%;
  margin: 0 auto;
  padding: 80px 0;
}
.p_index_sponsorship_container {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
.p_index_sponsorship_image {
  width: 100%;
  max-width: 300px;
}
.p_index_sponsorship_more {
    margin-top: 50px;
    color: var(--Green);
    text-align: center;
    font-size: 2rem;
    line-height: 1.6;
}

@media screen and (max-width: 850px) {
  .p_index_sponsorship_ttl {
    margin: 40px auto 10px auto;
    padding: 2px 0;
    font-size: 1.6rem;
    
  }
  .p_index_sponsorship_wrap {
    width: 90%;
    padding: 40px 0px;
  }
  .p_index_sponsorship_image {
    max-width: 200px;
  }
  .p_index_sponsorship_more {
    margin-top: 30px;
    color: var(--Green);
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.6;
  }
}



@keyframes bggradient {
  0% {
    background-position: 0% 100%;
  }
  100% {
    background-position: 200% 100%;
  }
}
@keyframes autoScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-133%);
  }
}