.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.w-layout-hflex {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
}

.w-form-formradioinput--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 12px;
  height: 12px;
}

.w-form-formradioinput--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom.w--redirected-checked {
  border-width: 4px;
  border-color: #3898ec;
}

@media screen and (max-width: 991px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }
}

a {
  text-decoration: underline;
}

.container {
  position: relative;
}

.container.lists{
  background: #fff19f;
  padding: 6% 4% 4%;
  white-space: nowrap;
}
.container.lists .lists_box{
  background: #fff;
  position: relative;
  border-radius: 10px;
}
.container.lists .lists_ttl{
  color: #0A0479;
  position: absolute;
  inset: 0 auto auto 50%;
  translate: -50% -50%;
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
}
.container.lists .list{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5%;
  padding: 5%;
  height: 400px;
  overflow: scroll;
}
.container.lists .list li{
  display: flex;
  list-style: none;
  font-size: 18px;
  font-weight: 700;
}
.container.lists .list li span{
  color: #0A0479;
  flex: 1.2;
}
.container.lists .list li span:nth-child(3){
  color: #F40000;
  flex: 1;
  text-align: right;
}
@media (max-width: 991px){
  .container.lists .lists_ttl{
    font-size: 28px;
  }
  .container.lists .list li{
    font-size: 14px;
  }
}
@media (max-width: 767px){
  .container.lists{
    padding: 10% 4% 6%;
  }
  .container.lists .list{
    height: 260px;
    grid-template-columns: repeat(1, 1fr);
    gap: 3%;
    padding: 8% 5% 5%;
  }
}

.container.table{
  background: #fff19f;
  padding: 6% 4% 4%;
  white-space: nowrap;
}
.container.table .table_ttl{
  color: #0A0479;
  margin-bottom: 30px;
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.container.table .table{
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
}
.container.table .table table{
  color: #0A0479;
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 18px;
  font-weight: 700;
}
.container.table .table table :is(th, td){
  padding: 10px;
  border-bottom: 1px solid #fff19f;
  border-right: 1px solid #fff19f;
  font-size: 16px;
}
.container.table .table table thead th{
  background: #215C99;
  color: #fff;
}
.container.table .table table tbody th{
  background: #A6C9EB;
  color: #000;
}
@media (max-width: 991px){
  .container.table .table_ttl{
    font-size: 28px;
  }
  .container.table .table table{
    font-size: 14px;
  }
}
@media (max-width: 767px){
  .container.table .table{
    overflow: scroll;
  }
  .container.table .table table{
    width: 180%;
  }
  .container.table .table table thead th:nth-child(1),
  .container.table .table table tbody th{
    position: sticky;
    left: 0;
  }
}

.achievements_txt{
  margin: 0;
  font-size: 34px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
.achievements_txt span{
  color: #E63328;
  font-size: 2em;
  line-height: 1;
}
@media (max-width: 767px){
  .achievements_txt{
    font-size: 24px;
  }
}

.container.yellow {
  background-color: #fff19f;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.container.button {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  padding: 10px 0 20px;
}

.container.button.indigo {
  z-index: 0;
  background-color: #191b60;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
}

.container.indigo {
  z-index: 1;
  background-color: #191b60;
  position: fixed;
  inset: auto 0% 0%;
}

.home_bg.yellow {
  background-color: #fff19f;
}

.home_bg.up_margine {
  margin-top: 4%;
}

.home_bg.indigo {
  background-color: #191b60;
  justify-content: center;
  align-items: center;
  display: flex;
}

.home_button {
  position: relative;
  width: 92%;
  z-index: 1;
}

.home_button:not(.none)::after{
  content: '';
  background: url(../images/click.png) no-repeat center / cover;
  position: absolute;
  inset: auto 10px 0 auto;
  width: 12.4%;
  height: 51%;
  animation: bounceUpDown 1s infinite ease-in-out;
}
@keyframes bounceUpDown {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(10px, 10px);
  }
}

.home_button.flame {
  width: 91%;
  position: absolute;
  inset: auto 0% 4% 4%;
}

.home_button.flame.a{
  inset: auto 0% 15% 4%;
}

.home_button.flame.b{
  inset: auto 0% 34% 4%;
}

.home_button.flame.c{
  inset: auto 0% 49% 4%;
}

.home_button.flame.d{
  inset: auto 0% 26.8% 4%;
}

.home_button.flame.e{
  inset: auto 0% 2% 4%;
}

.home_button.flame.f{
  inset: auto 0% 79.1% 4%
}

.home_button.flame.g{
  inset: auto 0% 20% 4%
}

.home_button.flame.i{
  inset: auto 0% 25.7% 4%;
}

.home_button.flame.j{
  inset: auto 0% 85.5% 4%;
}

.home_button.bottom_margin {
  margin-bottom: 23%;
}

.home_click {
  width: 15%;
  position: absolute;
  inset: auto 7% 12% auto;
}

.home_click.flame {
  z-index: 1;
  width: 14%;
  inset: auto 8% 2.6% auto;
}

.home_click.bottom_margin {
  bottom: 34%;
}

.home_light_effect {
  z-index: -1;
  width: 98%;
  position: absolute;
  inset: auto 1% -4%;
}

.home_article {
  width: 92%;
  position: static;
}

.home_flame {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: block;
  position: relative;
}

.home_flame.yellow {
  width: 92%;
}

.home_footer_button {
  margin: 2% 1%;
}

.home_footer_button:nth-child(1){
  width: 59%;
}

.home_footer_button:nth-child(2){
  width: 20%;
}

.home_footer_button:nth-child(3){
  width: 19%;
}

.home_footer {
  justify-content: center;
  align-items: center;
  display: flex;
}

.home_article_button {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 92%;
  display: flex;
  position: absolute;
  inset: auto 0% 0% 4%;
}

.contact_form_block {
  background-color: #fff19f;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 0;
  display: flex;
}

.contact_form {
  background-color: #fff;
  border-radius: 5px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 94%;
  margin-bottom: 3%;
  padding-top: 3%;
  padding-left: 4%;
  padding-right: 4%;
  display: flex;
}

.field-label {
  color: #191b60;
  width: 100%;
  margin-bottom: 2%;
  font-family: Noto Sans JP, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 40px;
}

.text-field {
  border: 2px solid #ffb901;
  border-radius: 5px;
  width: 100%;
  height: 17%;
  margin-bottom: 5%;
  padding: 0% 2% 1%;
  font-family: Noto Sans JP, sans-serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 40px;
}

.contact_form_flex {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-top: 4%;
  margin-bottom: 8%;
}

.contact_form_radio_button_block {
  justify-content: flex-start;
  align-items: center;
  width: 30%;
  margin-bottom: 0;
  padding-left: 4%;
  display: flex;
}

.contact_form_radio_button {
  -webkit-text-fill-color: inherit;
  background-color: #ffb901;
  background-clip: border-box;
  border: 0 #fff0;
  width: 60px;
  height: 60px;
  margin-top: 0;
  margin-left: 0;
  margin-right: 10%;
}

.contact_form_radio_button.w--redirected-checked {
  background-image: url('../images/contact_radio_checked.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 40% 40%;
}

.contact_form_radio_button_label {
  color: #191b60;
  margin-bottom: 4%;
  font-family: Noto Sans JP, sans-serif;
  font-size: 40px;
  line-height: 40px;
}

.submit-button {
  color: #311e69;
  background-color: #fbd701;
  border-radius: 10px;
  width: 86%;
  margin-bottom: 12%;
  padding-top: 5%;
  padding-bottom: 5%;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 50px;
  font-weight: 800;
  line-height: 50px;
}

.text-block {
  color: #191b60;
  margin-top: 1%;
  margin-bottom: 10%;
  font-family: Noto Sans JP, sans-serif;
  font-size: 21px;
  line-height: 21px;
}

.contact_success_message_block {
  background-color: #fff19f;
  width: 100%;
  padding-left: 3%;
  padding-right: 3%;
}

.contact_success_message {
  color: #191b60;
  background-color: #fff;
  border-radius: 5px;
  margin-bottom: 15%;
  padding-left: 10%;
  padding-right: 10%;
  font-family: Noto Sans JP, sans-serif;
  font-size: 20px;
  line-height: 40px;
}

.home_2_wrapper {
  padding-left: 11%;
  position: static;
  inset: auto 0% 7%;
}

.home_2_flex {
  flex-flow: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  position: absolute;
  inset: 36% 0% auto;
}

.home_2_flex.middle {
  inset: auto 0% 5%;
}

.home_2_flex.bottom {
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 3%;
  position: static;
}

.home_2_text_official_site {
  font-family: Zen Kaku Gothic New, sans-serif;
  font-size: 35px;
  font-weight: 700;
  line-height: 35px;
}

.link {
  color: #333;
  font-family: Zen Kaku Gothic New, sans-serif;
  font-size: 35px;
  line-height: 35px;
  text-decoration: underline;
}

.link.url, .home_2_link {
  font-size: 35px;
  line-height: 35px;
}

.home_2_link.normal {
  color: #333;
  text-decoration: none;
}

.home_2_button {
  width: 100%;
  padding-left: 5%;
  padding-right: 5%;
  position: absolute;
  inset: auto 0% 6%;
}

.home_2_button.bottom {
  margin-bottom: 1%;
}

.home_2_cursol {
  width: 7%;
  position: absolute;
  inset: auto 8% 24% auto;
}

.home_2_text {
  font-family: Zen Kaku Gothic New, sans-serif;
  font-size: 35px;
  font-weight: 700;
  line-height: 35px;
}

.home_2_text_wrapper {
  margin-bottom: 3%;
}

.thanks_button_wrapper {
  position: absolute;
  inset: auto 13% 26%;
}

@media screen and (max-width: 991px) {
  .field-label, .text-field {
    font-size: 30px;
    line-height: 30px;
  }

  .contact_form_radio_button {
    width: 45px;
    height: 45px;
  }

  .contact_form_radio_button_label {
    font-size: 30px;
    line-height: 30px;
  }

  .submit-button {
    font-size: 40px;
    line-height: 40px;
  }

  .text-block {
    font-size: 16px;
    line-height: 16px;
  }

  .contact_success_message {
    font-size: 18px;
    line-height: 40px;
  }

  .home_2_text_official_site {
    font-size: 25px;
    line-height: 25px;
  }

  .link {
    font-size: 30px;
    line-height: 30px;
  }

  .home_2_link, .home_2_text {
    font-size: 25px;
    line-height: 25px;
  }
}

@media screen and (max-width: 767px) {
  .field-label, .text-field {
    font-size: 4.3vw;
    line-height: 4.3vw;
  }

  .contact_form_flex {
    height: 4%;
  }

  .contact_form_radio_button_block {
    height: 100%;
  }

  .contact_form_radio_button {
    width: 8vw;
    height: 8vw;
    font-size: 15vw;
    line-height: 15vw;
  }

  .contact_form_radio_button_label {
    font-size: 4.3vw;
    line-height: 4.3vw;
  }

  .submit-button {
    font-size: 5vw;
    line-height: 5vw;
  }

  .contact_success_message {
    font-size: 3.2vw;
    line-height: 7vw;
  }

  .home_2_text_official_site {
    font-size: 3.5vw;
    line-height: 3.5vw;
  }

  .link {
    font-size: 4vw;
    line-height: 4vw;
    text-decoration: none;
  }

  .link.url {
    text-decoration: underline;
  }

  .home_2_link, .home_2_text {
    font-size: 3.5vw;
    line-height: 3.5vw;
  }
}


.privacy_link{
  background: #FEF1A0;
  margin-bottom: 6rem;
}
.privacy_link.b{
  margin: 5rem 0;
}
.privacy_link a{
  color: #454545;
  font-size: 1.6rem;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .privacy_link{
    margin-bottom: 10%;
  }
  .privacy_link.b{
    margin: 20% 0;
  }
  .privacy_link a{
    font-size: 1.4rem;
  }
}