@charset "UTF-8";
html {
  min-width: 1020px; }
  @media screen and (max-width: 768px) {
    html {
      min-width: unset; } }

@media screen and (max-width: 768px) {
  img {
    max-width: 90vw;
    height: auto; } }

body {
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  color: #333; }

p {
  font-size: 0.95em;
  line-height: 1.7;
  letter-spacing: 0.08em; }

.l-header {
  border-bottom: 1px solid #018FC8; }
  .l-header__inner {
    padding: 0 10px;
    max-width: 1000px;
    width: 1000px;
    /* pc ver */
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 768px) {
      .l-header__inner {
        width: auto; } }

.l-contents__inner {
  padding: 60px 10px 60px;
  max-width: 1000px;
  width: 1000px;
  /* pc ver */
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .l-contents__inner {
      width: auto; } }

.l-footer {
  background: #D8DADA;
  padding: 20px 0; }
  .l-footer__inner {
    padding: 0 10px;
    max-width: 1000px;
    width: 1000px;
    /* pc ver */
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .l-footer__inner {
        width: auto; } }

.logo {
  margin: 20px 0 20px;
  width: 360px;
  display: block; }
  @media screen and (max-width: 500px) {
    .logo {
      max-width: calc(100% - 100px); } }
  .logo__wrap {
    font-size: 1.2em;
    font-weight: bold;
    min-height: 80px;
    position: relative; }
  .logo__inner {
    display: table;
    font-size: inherit;
    padding: 0;
    margin: 0; }
    .logo__inner-center {
      display: table;
      font-size: inherit;
      padding: 0;
      margin: 0 auto; }
    .logo__inner a {
      color: #000;
      text-decoration: none; }

@media screen and (max-width: 768px) {
  .global_nav {
    display: none;
    margin-left: -10px;
    margin-right: -10px; }
    .global_nav.is-opened {
      display: block; } }
.global_nav li {
  display: inline-block;
  padding: 0 5px;
  position: relative; }
  @media screen and (max-width: 768px) {
    .global_nav li {
      display: block;
      border-top: 1px solid #018FC8; } }
  .global_nav li.is-active {
    border-bottom: 2px solid #018FC8; }
    @media screen and (max-width: 768px) {
      .global_nav li.is-active {
        border-bottom: none;
        background: #C6DFFD; } }
  .global_nav li::after {
    content: "";
    position: absolute;
    width: 100%;
    border-bottom: 2px solid #018FC8;
    left: 0;
    bottom: -2px;
    transition: transform 0.2s linear 0s;
    transform: scaleX(0); }
    @media screen and (max-width: 768px) {
      .global_nav li::after {
        display: none; } }
  .global_nav li:hover::after {
    transition: transform 0.2s linear 0s;
    transform: scaleX(1); }
.global_nav a {
  text-decoration: none;
  color: #2A2A2A;
  font-size: 0.7em;
  padding: 10px 5px 24px;
  display: block;
  vertical-align: bottom; }
  @media screen and (max-width: 768px) {
    .global_nav a {
      padding: 17px 5px 17px;
      text-align: center; } }
.global_nav__wrap {
  position: absolute;
  bottom: 0;
  right: 0; }
  @media screen and (max-width: 768px) {
    .global_nav__wrap {
      position: static; } }
.global_nav__btn {
  display: none; }
  @media screen and (max-width: 768px) {
    .global_nav__btn {
      display: block;
      padding: 0;
      background: none;
      border: none;
      position: absolute;
      right: 20px;
      bottom: 25px; } }
  @media screen and (max-width: 768px) and (max-width: 500px) {
    .global_nav__btn img {
      max-width: 50px; } }

/* top page */
.panel__wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: relative; }
  @media screen and (max-width: 768px) {
    .panel__wrap {
      display: block; } }
.panel-main {
  width: 57%;
  max-width: 550px; }
  @media screen and (max-width: 768px) {
    .panel-main {
      margin-top: 1em;
      width: auto;
      max-width: unset; } }
.panel-sub {
  width: 40%; }
  @media screen and (max-width: 768px) {
    .panel-sub {
      margin-top: 1em;
      width: auto; } }

.poster {
  display: block;
  border: 1px solid #dadada; }
  @media screen and (max-width: 768px) {
    .poster {
      margin: 0 auto;
      width: 100%;
      max-width: 552px; } }
  @media screen and (max-width: 640px) {
    .poster {
      margin-top: -30px; } }
  @media screen and (max-width: 550px) {
    .poster {
      margin-top: -60px; } }

.outline {
  margin: 40px 0 0; }
  @media screen and (max-width: 768px) {
    .outline {
      display: table;
      margin: 0 auto; } }
  @media screen and (max-width: 550px) {
    .outline {
      font-size: 80%;
      margin: 0 0; } }
  @media screen and (max-width: 430px) {
    .outline {
      font-size: 75%;
      margin: 0 0; } }
  .outline dt {
    border-right: 1px solid #666;
    width: 7.5em;
    overflow: hidden;
    white-space: nowrap;
    float: left;
    clear: both;
    margin-top: 20px;
    line-height: 1.5;
    vertical-align: middle;
    font-size: 1.1em; }
    @media screen and (max-width: 430px) {
      .outline dt {
        float: none;
        border-right: none;
        border-left: 1px solid #666;
        padding-left: 10px; } }
  .outline dd {
    margin-top: 20px;
    float: left;
    padding-left: 0.8em;
    line-height: 1.5;
    font-size: 1.1em; }
    @media screen and (max-width: 430px) {
      .outline dd {
        float: none; } }
    .outline dd .outline__text {
      display: block;
      vertical-align: bottom; }
  .outline-l2 {
    letter-spacing: 4.6em;
    vertical-align: middle; }
  .outline-l5 {
    letter-spacing: 0.41em;
    vertical-align: middle; }
  .outline-l6 {
    vertical-align: middle; }
  .outline-l8 {
    font-size: 83.333%;
    vertical-align: middle; }
  .outline::after {
    content: "";
    display: block;
    clear: both; }
  .outline__date {
    font-size: 150%;
    line-height: 1rem; }

.news dt {
  font-size: 0.8em;
  color: #666;
  padding-top: 5px; }
.news dd {
  padding-top: 5px;
  font-size: 1em;
  line-height: 1.7;
  color: #333; }
.news__ttl {
  color: #fff;
  background: #018FC8;
  font-size: 1.4em;
  padding: 6px 20px 3px 18px;
  line-height: 1.2; }
.news__list {
  margin: 0;
  padding-top: 10px;
  max-height: 740px; }
  .news__list li {
    border-bottom: 1px solid #dadada;
    padding: 20px 0 20px 18px; }

.gmapicon {
  display: inline-block;
  vertical-align: bottom; }

@media screen and (max-width: 768px) {
  .information {
    display: table;
    float: right; } }
.information__wrap {
  font-size: 80%;
  position: absolute;
  bottom: 0;
  right: 0; }
  @media screen and (max-width: 768px) {
    .information__wrap {
      margin: 2em 0 0 0;
      position: static;
      width: 100%;
      text-align: right; } }
.information dt {
  white-space: nowrap;
  overflow: hidden;
  float: left;
  clear: both;
  line-height: 1.6;
  text-align: right;
  padding-right: 0.5em; }
.information dd {
  float: left;
  line-height: 1.5;
  padding-bottom: 0.5em; }
.information-l6 {
  letter-spacing: 0.1em; }

.copyright {
  color: #333;
  font-size: 0.75em;
  text-align: center;
  margin: 0 atuo;
  display: block; }

/* greeting */
.paragraph {
  margin: 1em 0;
  text-indent: 1em;
  line-height: 2; }
  .paragraph-greeting {
    margin: 1em 0;
    line-height: 2; }

.paper {
  max-width: 44em;
  margin: 0 auto; }
  .paper__ttl {
    display: table;
    margin: auto;
    text-align: left;
    font-size: 1.10em;
    font-weight: bold;
    margin-bottom: 2em;
    letter-spacing: 0.08em;
    color: #333333;
    position: relative;
    line-height: 1;
    padding: 0 0 16px; }
    .paper__ttl__inner {
      background: #fff;
      display: table;
      margin: 0 auto;
      z-index: 20;
      position: relative;
      vertical-align: middle; }
  .paper__subttl {
    font-size: 1.1em;
    margin: 2em 0 1em;
    padding-left: 10px;
    line-height: 1.4;
    border-left: 4px solid #0278AE;
    vertical-align: middle; }

.en {
  letter-spacing: 0;
  margin-right: 0.08em; }

/* program */
.refresh_workshop__information {
  margin-top: 5em;
  border: 4px solid #0C2264; }
  .refresh_workshop__information__title {
    background: #0C2264;
    color: #fff;
    padding: 15px 10px 15px 40px;
    font-size: 100%;
    font-weight: bold; }
    .refresh_workshop__information__title__inner {
      border-left: 4px solid #fff;
      padding-left: 15px; }
  .refresh_workshop__information__content {
    padding: 40px 40px 40px; }

.refresh_workshop__tag {
  display: table;
  margin: 10px auto;
  padding: 5px 20px;
  font-size: 100%;
  color: #0C2264;
  font-weight: bold; }
  .refresh_workshop__tag::before {
    content: "";
    display: inline-block;
    color: #0C2264;
    margin-right: 2em;
    width: 50px;
    border-top: 1px solid #0C2264;
    position: relative;
    vertical-align: middle; }
    @media screen and (max-width: 600px) {
      .refresh_workshop__tag::before {
        width: 30px;
        margin-right: 1em; } }
    @media screen and (max-width: 450px) {
      .refresh_workshop__tag::before {
        display: none; } }
  .refresh_workshop__tag::after {
    content: "";
    display: inline-block;
    color: #0C2264;
    margin-left: 2em;
    width: 50px;
    border-top: 1px solid #0C2264;
    position: relative;
    vertical-align: middle; }
    @media screen and (max-width: 600px) {
      .refresh_workshop__tag::after {
        width: 30px;
        margin-left: 1em; } }
    @media screen and (max-width: 450px) {
      .refresh_workshop__tag::after {
        display: none; } }

.program_download {
  margin-top: 3em;
  padding-left: 2em;
  background-image: url("../img/right_triangle.png");
  background-position: left center;
  background-repeat: no-repeat; }

.page_ttl {
  text-align: center;
  font-size: 1.8em;
  font-weight: bold;
  margin: 0 auto 1em;
  color: #41444f;
  letter-spacing: 0.1em;
  padding-left: 0.1em;
  display: table;
  position: relative; }

.program_tbl {
  border-collapse: separate;
  width: 100%;
  margin: 80px 0; }
  .program_tbl caption {
    font-size: 1.2em;
    text-align: left;
    padding: 0 0 30px 25px;
    position: relative;
    color: #018FC8; }
    .program_tbl caption::before {
      border-left: 5px solid #018FC8;
      content: "";
      position: absolute;
      height: 2em;
      width: 1px;
      bottom: 20px;
      left: 0; }
  .program_tbl tbody tr {
    height: 4em; }
    .program_tbl tbody tr:first-child th {
      border-top: 2px solid #999; }
    .program_tbl tbody tr:first-child td {
      border-top: 2px solid #999; }
    .program_tbl tbody tr:last-child th, .program_tbl tbody tr:last-child td {
      border-bottom: 2px solid #999; }
  .program_tbl tbody th {
    width: 7em;
    white-space: nowrap;
    font-size: 1.1em;
    vertical-align: middle;
    line-height: 2;
    padding: 5px 20px;
    text-align: left;
    border-bottom: 1px solid #999;
    border-left: 2px solid #999; }
    @media screen and (max-width: 768px) {
      .program_tbl tbody th {
        white-space: normal;
        font-size: 0.9em;
        padding: 5px 10px;
        line-height: 1.6; } }
  .program_tbl tbody td {
    width: calc( 50% - 4em );
    border-left: 2px dotted #999;
    font-size: 0.95em;
    vertical-align: middle;
    padding: 5px 20px;
    line-height: 1.6;
    border-bottom: 1px solid #999; }
    @media screen and (max-width: 768px) {
      .program_tbl tbody td {
        font-size: 0.9em;
        padding: 5px 7px 5px 10px; } }
    .program_tbl tbody td strong {
      font-weight: bold; }
    .program_tbl tbody td:last-child {
      border-right: 2px solid #999; }

.bb2 {
  border-bottom: 2px solid #999 !important; }

.tbl_gray {
  background: #DADADA; }

.tbl_blue {
  background: #DDEBF7; }

/* application */
.page_subttl {
  font-size: 1.2em;
  text-align: left;
  padding: 0 0 0 25px;
  color: #555;
  color: #fff;
  background: #018FC8;
  line-height: 2em;
  height: 2em;
  vertical-align: middle;
  margin: 3em 0 0; }
  .page_subttl-b {
    position: relative;
    margin: 1em 0 0;
    padding-left: 3em;
    color: #38383E; }
    .page_subttl-b::before {
      content: "";
      width: 2em;
      border-top: 2px solid #0C2264;
      left: 0;
      top: 0.35em;
      position: absolute; }

.page_text {
  margin: 1em 10px 1em 25px; }

.page_list {
  margin: 1em 0 1em 50px; }
  .page_list li {
    color: #0C2264;
    line-height: 1.7;
    list-style: disc; }
  .page_list__text {
    color: #333; }

.marked_list {
  margin: 10px 0 0 20px; }
  .marked_list li {
    color: #0C2264;
    line-height: 1.7;
    list-style: disc;
    padding: 0;
    border: none;
    margin: 0; }
  .marked_list__text {
    color: #333; }

.web_form__form {
  padding: 1em 10px 10px;
  border-left: 1px solid #0C2264;
  border-right: 1px solid #0C2264;
  border-bottom: 1px solid #0C2264; }
  @media screen and (max-width: 550px) {
    .web_form__form input[type="text"] {
      font-size: 0.9em; } }

.web_form__form__ttl {
  font-size: 1.2em;
  text-align: left;
  padding: 0 0 0 25px;
  color: #555;
  color: #fff;
  background: #0C2264;
  line-height: 2em;
  height: 2em;
  vertical-align: middle;
  margin: 3em 0 0; }

.web_form__ttl {
  margin: 1.5em 0 1em;
  font-size: 1.1em;
  line-height: 1.6;
  vertical-align: middle;
  color: #0C2264;
  border-left: 5px solid #0C2264;
  padding-left: 10px; }

.tbl-web_form {
  position: relative;
  margin: 1.5em 0 0;
  width: 100%; }
  .tbl-web_form__label {
    text-align: left;
    padding: 7px 13px 5px;
    font-size: 0.85em;
    color: #fff;
    background: #0C2264; }
    .tbl-web_form__label:nth-child(2) {
      border-left: 3px solid #FDFDFD; }
    .tbl-web_form__label[scope="row"] {
      text-align: right; }
    .tbl-web_form__label-registration {
      text-align: left;
      padding: 5px 13px;
      font-size: 0.85em;
      color: #000;
      background: #D4DFF1; }
  .tbl-web_form__cell {
    padding: 5px 10px; }

.web_form__btn {
  font-size: 0.8em;
  border: 2px solid #557FC9;
  background: #fff;
  color: #557FC9;
  padding: 0 5px;
  vertical-align: middle; }
  .web_form__btn:hover {
    border: 2px solid #759FE9;
    color: #759FE9; }
  .web_form__btn-add_row__wrap {
    text-align: right;
    padding: 0 10px; }

.web_form__submit {
  font-size: 2em;
  border: 4px solid #557FC9;
  background: #fff;
  color: #557FC9;
  padding: 3px 40px 4px;
  margin: 2em auto 1em;
  display: table; }
  .web_form__submit:hover {
    border: 4px solid #759FE9;
    color: #759FE9; }

.additional_row {
  display: none; }
  .additional_row.is-open {
    display: table-row; }

.input-name {
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.input-yomi {
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  .input-yomi__wrap {
    margin-top: 3px;
    position: relative; }
    .input-yomi__wrap::before {
      content: "(";
      font-size: 1.5em;
      position: absolute;
      color: #999;
      left: -10px;
      top: 0; }
    .input-yomi__wrap::after {
      content: ")";
      font-size: 1.5em;
      position: absolute;
      color: #999;
      right: -10px;
      top: 0; }

.input-belonging {
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  .input-belonging-b {
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 5px; }

.input-mail {
  margin-top: 5px;
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  .input-mail-b {
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 5px; }

.input-postcode {
  margin-left: 0.5em;
  width: 8em;
  vertical-align: bottom; }

@media screen and (max-width: 550px) {
  .postcode_conv__btn {
    display: block;
    margin-top: 0.5em; } }

.input-address {
  width: 100%;
  margin-top: 0.5em;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.input-title {
  width: 100%;
  margin-top: -2px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.input-keyword {
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.input-file {
  position: absolute;
  opacity: 0;
  width: 98%;
  left: 0;
  cursor: pointer; }
  .input-file__btn {
    font-size: 0.8em;
    border: 2px solid #557FC9;
    background: #fff;
    color: #557FC9;
    padding: 0 5px;
    vertical-align: middle;
    position: relative;
    cursor: pointer;
    line-height: 2; }
    .input-file__btn:hover {
      border: 2px solid #759FE9;
      color: #759FE9; }
  .input-file__name {
    background: none;
    box-shadow: none;
    border: none;
    display: none;
    margin-left: 0.5em; }

.select_address li {
  padding: 5px; }
  .select_address li:hover {
    background: #759FE9;
    color: #fff;
    cursor: pointer; }

@media screen and (max-width: 550px) {
  .presentation_type {
    font-size: 0.8em; } }

.errormsg {
  color: #ED0000; }

.cookie_error {
  display: none; }
  .cookie_error.is-active {
    display: block; }

/* registration */
.fee_tbl {
  margin: 1em 0 1em 3em;
  border: 1px solid #555;
  width: 350px; }
  .fee_tbl th {
    font-size: 1em;
    padding: 5px 20px;
    background: #38383e;
    color: #fff;
    text-align: center; }
  .fee_tbl td {
    font-size: 1em;
    padding: 6px 20px 6px 20px;
    border: 1px solid #555; }

.calc_tbl {
  margin: 2em 0 0;
  border: 1px solid #61646F;
  width: 100%; }
  .calc_tbl th {
    font-size: 1em;
    padding: 5px 10px;
    background: #61646F;
    color: #fff;
    text-align: center; }
  .calc_tbl td {
    font-size: 1em;
    padding: 6px 20px 6px 20px;
    border: 1px solid #61646F; }
    .calc_tbl td:first-child {
      white-space: nowrap; }
    @media screen and (max-width: 768px) {
      .calc_tbl td {
        padding: 6px 5px 6px 5px; } }
  .calc_tbl__total {
    background: #e2e2e6; }

.member_type {
  display: table;
  width: 100%;
  margin-top: 5px; }
  .member_type__row {
    display: table-row; }
  .member_type__cell, .member_type__cell-A, .member_type__cell-B, .member_type__cell-C, .member_type__cell-D, .member_type__cell-E, .member_type__cell-F {
    display: table-cell;
    width: 50%;
    text-align: right;
    font-size: 0.8em;
    border: 1px solid #777;
    color: #777;
    position: relative; }
    @media screen and (max-width: 550px) {
      .member_type__cell, .member_type__cell-A, .member_type__cell-B, .member_type__cell-C, .member_type__cell-D, .member_type__cell-E, .member_type__cell-F {
        font-size: 0.55em; } }
    .member_type__cell-E {
      width: 100%;
      border-top: none; }
    .member_type__cell-F {
      width: 100%;
      border-top: none;
      text-align: center; }
  .member_type__radio {
    vertical-align: middle;
    float: left; }
    @media screen and (max-width: 550px) {
      .member_type__radio {
        height: 10px; } }
  .member_type__item {
    padding: 5px;
    display: block; }
    .member_type__item.is-checked {
      background: #A0B7E1;
      color: #222; }

.gathering {
  display: table;
  width: 100%;
  position: relative;
  margin-top: 5px; }
  .gathering__row {
    display: table-row; }
  .gathering__cell, .gathering__cell-A, .gathering__cell-B {
    display: table-cell;
    width: 38%;
    text-align: center;
    font-size: 0.8em;
    border: 1px solid #61646F;
    color: #61646F;
    position: relative; }
    @media screen and (max-width: 550px) {
      .gathering__cell, .gathering__cell-A, .gathering__cell-B {
        font-size: 0.65em; } }
    .gathering__cell-ttl {
      text-align: center;
      color: #fff;
      background: #61646F;
      border: 1px solid #61646F;
      display: table-cell;
      width: 24%;
      font-size: 0.8em; }
      @media screen and (max-width: 550px) {
        .gathering__cell-ttl {
          font-size: 0.65em; } }
  .gathering__radio {
    vertical-align: middle;
    float: left; }
    @media screen and (max-width: 550px) {
      .gathering__radio {
        height: 10px; } }
  .gathering__item {
    padding: 5px;
    display: block; }
    .gathering__item.is-checked {
      background: #A0B7E1;
      color: #222; }

.review__block {
  display: block;
  padding: 5px 0;
  margin-bottom: 5px; }

.strong {
  color: #FE0000; }

.thanks_msg {
  text-align: center;
  margin: 6em 0 3em;
  font-size: 1.2em; }

/* committee */
.committee__list {
  font-size: 1.2em;
  line-height: 2;
  display: table;
  margin: 0 auto;
  position: relative;
  left: 2.8em; }
  @media screen and (max-width: 600px) {
    .committee__list {
      left: 2em;
      font-size: 1em; } }
  @media screen and (max-width: 500px) {
    .committee__list {
      left: 1.5em;
      font-size: 0.9em; } }
  @media screen and (max-width: 430px) {
    .committee__list {
      left: 0;
      font-size: 0.8em; } }
  .committee__list__space-3 {
    letter-spacing: 0.5em; }
  .committee__list__space-2 {
    letter-spacing: 2em; }
  .committee__list::after {
    display: block;
    content: "";
    clear: both;
    width: 100%;
    height: 1px; }
  .committee__list dt {
    width: 5em;
    overflow: hidden;
    white-space: nowrap;
    float: left;
    clear: both;
    margin-top: 20px;
    vertical-align: middle; }
  .committee__list dd {
    margin-left: 5em;
    margin-top: 20px;
    padding-left: 0.8em; }

.student_staff {
  margin: 2em 0 2em 3em;
  display: table; }
  .student_staff__ttl {
    margin: 2em auto 1em;
    font-size: 1.1em;
    padding-left: 3em;
    position: relative;
    line-height: 1.5; }
    .student_staff__ttl::before {
      content: "";
      width: 2em;
      border-top: 2px solid #018FC8;
      left: 0;
      top: 0.5em;
      position: absolute; }
  .student_staff__list {
    padding-left: 3em; }
    .student_staff__list li {
      display: inline-block;
      padding: 1em; }

/* access */
.flex-panel {
  display: flex;
  justify-content: center;
  flex-direction: column; }
  @media screen and (max-width: 768px) {
    .flex-panel {
      padding-top: 50px; } }

/* sponsors */
.sponsors_list {
  font-size: 1.2em;
  line-height: 2;
  display: table;
  position: relative;
  width: 100%; }
  .sponsors_list__category {
    margin: 1em auto 1.5em;
    padding: 0;
    font-size: 1em;
    display: flex;
    width: 100%;
    max-width: 1000px;
    flex-wrap: wrap;
    justify-content: space-between; }
    .sponsors_list__category li {
      width: 47%; }
      @media screen and (max-width: 768px) {
        .sponsors_list__category li {
          width: 100%; } }
    .sponsors_list__category-kyosan {
      margin: 1em auto 1.5em;
      padding: 0;
      font-size: 1em;
      display: flex;
      width: 100%;
      max-width: 1000px;
      flex-wrap: wrap;
      justify-content: space-between; }
      @media screen and (max-width: 600px) {
        .sponsors_list__category-kyosan {
          padding: 0 2em; } }
      .sponsors_list__category-kyosan li {
        width: 47%;
        padding: 10px 10px 20px; }
        @media screen and (max-width: 768px) {
          .sponsors_list__category-kyosan li {
            width: 100%; } }
    .sponsors_list__category__ttl, .sponsors_list__category__ttl-min {
      text-align: center;
      font-size: 0.8em;
      line-height: 1.5;
      color: #287EB2; }
      .sponsors_list__category__ttl::before, .sponsors_list__category__ttl-min::before {
        content: "";
        display: inline-block;
        margin-right: 2em;
        width: 80px;
        border-top: 1px solid #018FC8;
        position: relative;
        vertical-align: middle; }
        @media screen and (max-width: 600px) {
          .sponsors_list__category__ttl::before, .sponsors_list__category__ttl-min::before {
            width: 30px;
            margin-right: 1em; } }
        @media screen and (max-width: 450px) {
          .sponsors_list__category__ttl::before, .sponsors_list__category__ttl-min::before {
            width: 10px; } }
      .sponsors_list__category__ttl::after, .sponsors_list__category__ttl-min::after {
        content: "";
        display: inline-block;
        margin-left: 2em;
        width: 80px;
        border-top: 1px solid #018FC8;
        position: relative;
        vertical-align: middle; }
        @media screen and (max-width: 600px) {
          .sponsors_list__category__ttl::after, .sponsors_list__category__ttl-min::after {
            width: 30px;
            margin-left: 1em; } }
        @media screen and (max-width: 450px) {
          .sponsors_list__category__ttl::after, .sponsors_list__category__ttl-min::after {
            width: 10px; } }
      .sponsors_list__category__ttl-min::before {
        margin-right: 1em;
        width: 42px; }
        @media screen and (max-width: 600px) {
          .sponsors_list__category__ttl-min::before {
            width: 20px;
            margin-right: 0.5em; } }
        @media screen and (max-width: 450px) {
          .sponsors_list__category__ttl-min::before {
            width: 10px; } }
      .sponsors_list__category__ttl-min::after {
        margin-left: 1em;
        width: 42px; }
        @media screen and (max-width: 600px) {
          .sponsors_list__category__ttl-min::after {
            width: 20px;
            margin-left: 0.5em; } }
        @media screen and (max-width: 450px) {
          .sponsors_list__category__ttl-min::after {
            width: 10px; } }
  @media screen and (max-width: 600px) {
    .sponsors_list {
      font-size: 1em; } }
  @media screen and (max-width: 500px) {
    .sponsors_list {
      font-size: 0.9em; } }
  @media screen and (max-width: 430px) {
    .sponsors_list {
      font-size: 0.8em; } }
  .sponsors_list__link {
    color: #333;
    text-decoration: none;
    display: block;
    height: 280px;
    width: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2em;
    margin: 0 auto 0; }
    .sponsors_list__link img {
      width: 100%;
      display: block; }
    .sponsors_list__link:hover {
      color: #999; }
    .sponsors_list__link-kyosan {
      color: #333;
      text-decoration: none;
      margin-bottom: 2em; }
      .sponsors_list__link-kyosan:hover {
        opacity: 0.8; }
      .sponsors_list__link-kyosan__img {
        float: left;
        padding: 0 10px 10px 0;
        height: 80px;
        display: flex;
        justify-content: center;
        align-items: center; }
        .sponsors_list__link-kyosan__img img {
          vertical-align: middle;
          width: 160px; }
      .sponsors_list__link-kyosan__text {
        font-size: 0.60em;
        line-height: 1.7;
        display: block; }
      .sponsors_list__link-kyosan-notext {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        min-height: 255px; }
    .sponsors_list__link__wrap {
      border: 1px solid #aaa;
      margin: 10px 0;
      padding: 10px;
      min-height: 30em; }
      .sponsors_list__link__wrap-notext {
        border: 1px solid #aaa;
        margin: 10px 0;
        padding: 10px;
        min-height: 30em;
        display: flex;
        align-items: center; }
        .sponsors_list__link__wrap-notext a {
          text-decoration: none; }
          .sponsors_list__link__wrap-notext a:hover {
            opacity: 0.8; }
      .sponsors_list__link__wrap a {
        text-decoration: none; }
        .sponsors_list__link__wrap a:hover {
          opacity: 0.8; }
  .sponsors_list__text {
    padding: 0 30px;
    font-size: 0.65em;
    line-height: 1.5;
    display: block;
    white-space: normal;
    color: #333;
    text-decoration: none; }
  .sponsors_list__item-asics {
    width: 100%;
    white-space: nowrap; }
  .sponsors_list__item-otsuka {
    width: 100%;
    white-space: nowrap; }
  .sponsors_list__item-4assist {
    white-space: nowrap;
    width: 100%; }
  .sponsors_list__item-catapult {
    width: 100%;
    white-space: nowrap; }
  .sponsors_list__ttl, .sponsors_list__ttl-min {
    font-size: 0.8em;
    line-height: 1.5;
    color: #018FC8;
    display: table;
    margin: auto;
    width: 25em; }
    .sponsors_list__ttl::before, .sponsors_list__ttl-min::before {
      margin-right: 1.5em;
      border-left: 5px solid #018FC8;
      content: "";
      height: 2em;
      width: 1px; }
    .sponsors_list__ttl-min::before {
      margin-right: 1em;
      width: 42px; }
      @media screen and (max-width: 600px) {
        .sponsors_list__ttl-min::before {
          width: 20px;
          margin-right: 0.5em; } }
      @media screen and (max-width: 450px) {
        .sponsors_list__ttl-min::before {
          width: 10px; } }
    .sponsors_list__ttl-min::after {
      margin-left: 1em;
      width: 42px; }
      @media screen and (max-width: 600px) {
        .sponsors_list__ttl-min::after {
          width: 20px;
          margin-left: 0.5em; } }
      @media screen and (max-width: 450px) {
        .sponsors_list__ttl-min::after {
          width: 10px; } }
  .sponsors_list__body {
    display: table;
    margin: 2em auto;
    padding-left: 1em;
    width: 18em; }

/* common */
.link {
  text-decoration: none;
  color: #0058B3;
  border-bottom: 1px dotted #0058B3; }
  .link:hover {
    color: #0370eb;
    border-bottom: none; }
    .link:hover img {
      opacity: 0.95; }

.small {
  font-size: 80%; }

.big {
  font-size: 120%; }

.semi-big {
  font-size: 110%; }

.bold {
  font-weight: bold; }

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

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

.address {
  font-size: 80%; }

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

.mt0 {
  margin-top: 0em; }

.ml0 {
  margin-left: 0em; }

.mb0 {
  margin-bottom: 0em; }

.pt0 {
  padding-top: 0em; }

.pb0 {
  padding-bottom: 0em; }

.mt1 {
  margin-top: 1em; }

.ml1 {
  margin-left: 1em; }

.mb1 {
  margin-bottom: 1em; }

.pt1 {
  padding-top: 1em; }

.pb1 {
  padding-bottom: 1em; }

.mt2 {
  margin-top: 2em; }

.ml2 {
  margin-left: 2em; }

.mb2 {
  margin-bottom: 2em; }

.pt2 {
  padding-top: 2em; }

.pb2 {
  padding-bottom: 2em; }

.mt3 {
  margin-top: 3em; }

.ml3 {
  margin-left: 3em; }

.mb3 {
  margin-bottom: 3em; }

.pt3 {
  padding-top: 3em; }

.pb3 {
  padding-bottom: 3em; }

.mt4 {
  margin-top: 4em; }

.ml4 {
  margin-left: 4em; }

.mb4 {
  margin-bottom: 4em; }

.pt4 {
  padding-top: 4em; }

.pb4 {
  padding-bottom: 4em; }

.mt5 {
  margin-top: 5em; }

.ml5 {
  margin-left: 5em; }

.mb5 {
  margin-bottom: 5em; }

.pt5 {
  padding-top: 5em; }

.pb5 {
  padding-bottom: 5em; }

.mt6 {
  margin-top: 6em; }

.ml6 {
  margin-left: 6em; }

.mb6 {
  margin-bottom: 6em; }

.pt6 {
  padding-top: 6em; }

.pb6 {
  padding-bottom: 6em; }

.l066 {
  letter-spacing: 0.66em;
  margin-right: -0.66em; }

.l2 {
  letter-spacing: 1em;
  margin-right: -1em; }

.space1 {
  margin-right: 1em; }

.break_all {
  word-break: break-all; }

.marker {
  background: linear-gradient(transparent 60%, #ff9999 60%); }

.notice {
  display: flex;
  justify-content: center;
  width: 100%; }
  .notice__wrap {
    border: 10px solid #203864;
    margin-bottom: 4em; }
    .notice__wrap__ttl {
      background: #203864;
      color: #fff;
      padding: 15px 10px 15px 40px;
      font-size: 100%;
      font-weight: bold; }
      .notice__wrap__ttl__inner {
        border-left: 4px solid #fff;
        padding-left: 15px; }
  @media screen and (max-width: 768px) {
    .notice {
      width: 100%;
      display: block; } }
  .notice__link {
    width: 42%;
    text-align: center;
    font-weight: bold;
    color: #fff;
    position: relative;
    cursor: pointer;
    font-size: 2em;
    background: #FE4040;
    margin: 1.5em 1em; }
    @media screen and (max-width: 768px) {
      .notice__link {
        width: 84%;
        display: block;
        margin: 1.5em auto; } }
    @media screen and (max-width: 600px) {
      .notice__link {
        display: block;
        width: 90%;
        font-size: 1.4em;
        margin: 1.5em auto; } }
    .notice__link__inner {
      padding: 30px 0;
      display: table;
      margin: 0;
      width: 100%; }
  .notice__ttl {
    font-size: 0.7em;
    display: block;
    margin-top: 0.5em;
    font-weight: bold;
    color: #ff5959;
    color: #fff; }

.notice-page__list {
  margin: 0 0 3em;
  text-indent: 1em;
  line-height: 1.9; }
  .notice-page__list li {
    text-indent: -2em;
    margin-bottom: 1em;
    padding-left: 2em; }
.notice-page__ttl {
  text-align: center;
  font-size: 1.8em;
  font-weight: bold;
  margin: 0 auto 2em;
  color: #41444f;
  display: table;
  position: relative; }
  @media screen and (max-width: 600px) {
    .notice-page__ttl {
      font-size: 1.4em; } }
  .notice-page__ttl-presentation {
    font-size: 1.3em;
    margin-bottom: 1em;
    border-left: 5px solid #018FC8;
    padding-left: 1em;
    line-height: 1.5;
    color: #018FC8; }

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

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

.fix-height-box {
  min-height: calc(100vh - 288px); }

.account_list {
  padding: 20px; }
  .account_list dt {
    width: 6em;
    float: left;
    clear: both;
    vertical-align: top;
    line-height: 1.5; }
  .account_list dd {
    margin-left: 6em;
    vertical-align: top;
    line-height: 1.5; }

.book__ttl {
  color: #018FC8;
  font-size: 1.5em;
  margin-bottom: 1em; }
.book__btn {
  color: #018FC8;
  background: #F4F2F9;
  border: 1px solid #018FC8;
  border-radius: 20px;
  margin-top: 1em; }
  .book__btn:hover {
    background: #fff; }
.book__form__wrap {
  display: none; }

.poster__item {
  display: flex;
  padding: 10px 0;
  text-decoration: none;
  line-height: 1.5; }
  .poster__item:hover {
    text-decoration: underline; }
  .poster__item.inactive:hover {
    text-decoration: none; }

.poster_number {
  color: #fff;
  font-size: small;
  display: block;
  padding: 5px 10px;
  background: #018FC8;
  height: 1em;
  line-height: 1;
  margin-right: 1em; }

.minilabel {
  font-size: 0.75em;
  color: #fff;
  background: #61646F;
  padding: 4px;
  display: inline-block;
  margin-bottom: 3px; }

.pdfdl__ttl {
  color: #fff;
  background-color: #018FC8;
  display: block;
  font-size: 1.2em;
  padding: 0.5em;
  text-align: center; }
.pdfdl__area {
  display: table;
  border: 1px solid #018FC8;
  background: #F4F2F9; }
  .pdfdl__area__inner {
    padding: 1em; }
  .pdfdl__area p {
    display: table; }

.subcolor {
  color: #0C2264; }

.staff__ttl {
  text-align: center;
  font-size: 1.2em;
  line-height: 1.5;
  color: #018FC8;
  margin-bottom: 2em; }
.staff__list {
  display: flex;
  flex-wrap: wrap;
  gap: 4em;
  justify-content: center; }

.border-top-none {
  border-top: none !important; }

.checkbox_wrap {
  padding-top: 5px;
  display: flex;
  gap: 5px; }

.is_kaiin_check.is_hide {
  display: none; }

.sup {
  font-size: 70%;
  vertical-align: top;
  position: relative;
  top: -0.1em; }

.disc {
  list-style: disc;
  padding-left: 2em; }

.red {
  color: #FF0000; }
