#body {
    width: 100%;
    max-width: 1920px;
    margin: auto;
  }
  
  /* ======================
        HEADER
  ======================== */
  
  @media screen and (min-width: 811px) { 
    #index {
      margin-top: 230px;
    }
  }
  
  @media screen and (min-width: 811px) and (max-width: 1024px) { 
    #index {
      margin-top: 210px;
    }
  }
  
  
  
  
  /* MAIN  */
  
  main {
    width: 100%;
    max-width: 1920px;
  }
  
  main#index {
    padding: 0;
  }
  
  
  
  /* KEYVISUAL  */
  
  main#index .carousel-item {
    height: calc(152vw / 5);
    position: relative;
  }
  
  main#index .carousel-item:nth-of-type(2),
  main#index .carousel-item:nth-of-type(3),
  main#index .carousel-item:nth-of-type(4),
  main#index .carousel-item:nth-of-type(5),
  main#index .carousel-item:nth-of-type(6),
  main#index .carousel-item:nth-of-type(7),
  main#index .carousel-item:nth-of-type(8),
  main#index .carousel-item:nth-of-type(9){
      background: url("../images/index/slide01.jpg") no-repeat center bottom / cover;
  }
  
  main#index .carousel-item img {
    object-fit: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  
  main#index .carousel-item:first-of-type img {
    top: auto;
  }
  
  main#index .carousel-item:nth-of-type(2) img,
  main#index .carousel-item:nth-of-type(3) img,
  main#index .carousel-item:nth-of-type(4) img,
  main#index .carousel-item:nth-of-type(5) img,
  main#index .carousel-item:nth-of-type(6) img,
  main#index .carousel-item:nth-of-type(7) img,
  main#index .carousel-item:nth-of-type(8) img,
  main#index .carousel-item:nth-of-type(9) img {
      width: 60%;
    max-width: 1240px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 3rem auto 1rem auto;
  }
  
  main#index .carousel-caption img {
    max-width: 1080px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto auto 1rem;
  }
  
  @media only screen and  (max-width:767px) {
    main#index .carousel-caption img {
      margin: auto auto -0.3rem;
    }
    .carousel-control-next-icon, .carousel-control-prev-icon {
      display: none;
    }
    .carousel-indicators {
      margin-bottom: -0.3rem;
    }
  
      main#index .carousel-item:nth-of-type(2) img,
      main#index .carousel-item:nth-of-type(3) img,
      main#index .carousel-item:nth-of-type(4) img,
       main#index .carousel-item:nth-of-type(5) img {
          margin: 1rem auto;
      }
  }
  
  @media print, screen and  (min-width:768px) {
    .carousel-indicators {
      display: none;
    }
    .carousel-control-next-icon, .carousel-control-prev-icon {
      display: inline-block;
      width: 44px;
      height: 82px;
    }
  
    .carousel-control-next, .carousel-control-prev {
      opacity: 1 !important;
    }
  
    .carousel-control-next:hover, .carousel-control-prev:hover {
      opacity: 0.5 !important;
    }
  
    .carousel-control-next-icon {
      background: url("../images/index/slide_arrow_next.png") no-repeat;
    }
  
    .carousel-control-prev-icon {
      background: url("../images/index/slide_arrow_prev.png") no-repeat;
    }
  }
  
  
  /* OUTLINE  */
  
  #outline {
    background: #023e7a;
    background: url("../images/index/index_br_outline.png") no-repeat bottom center / cover;
    padding-top: 0;
  }
  
  #outline .container {
    max-width: 1200px;
  }
  
  #outline .container p {
    color: #fff;
    font-size: 0.9rem;
    margin: 1.5rem 0;
  }
  
  #outline .container p.red {
    font-size: 1.2rem;
      font-weight: 700;
      color: #fff;
      margin-top: 0.75rem;
      padding: 1rem;
      background: #e60112;
      border: 10px solid rgba(255,255,255,0.6);
  }
  
  #outline .container .box {
    padding: 0.5rem 1.5rem;
    border: 10px solid rgba(137,165,194,0.80);
    background: rgba(255,255,255,0.70);
  }
  
  #outline .container .box p {
    color: #000;
    font-size: 1rem;
    margin: 1.2rem 0;
  }
  
  #outline p.pc {
    text-align: center!important;
    width: 100%;
    max-width: 1200px;
  }
  
  #outline p.pc img {
    width: 100%;
    max-width: 1017px;
  }
  
  #outline p.sp {
    /*  ç”»åƒã®å ´åˆ */
        /*margin: 0 0.8rem -0.5rem;*/
    width: 100%;
    font-size: 1.2rem;
    font-weight: 500;
    text-align: center;
    letter-spacing: 3px;
    margin: 0;
  }
  
  @media print, screen and  (min-width:768px) {
    #outline .container p {
      font-size: 1rem;
    }
  
      #outline .container p.red {
          margin-top: 0;
      }
      
    #outline .container .box {
      padding: 1rem 2.5rem;
    }
  
    #outline .container .box p {
      font-size: 1.2rem;
      letter-spacing: 0.5px;
    }
  }
  
  /* NEWS  */
  
  #news {
    padding: 2rem 0;
    background: #071933;
  }
  
  #news h2, #news dt, #news dd {
    color: #fff;
  }
  
  #news h2 {
    font-size: 2rem;
    text-align: center;
    letter-spacing: 3px;
  }
  
  #news dl {
    max-width: 540px;
      height: 200px;
    margin: auto;
    overflow: hidden;
      overflow-y: scroll;
      scrollbar-color: #30497b #91abc6;}
  
  #news dl dd {
    margin-bottom: 1rem;
  }
  
  #news dl dd a {
    color: #A7E5F5;
  }
  
  #news .container #cooperation {
    max-width: 540px;
    margin: 4em auto auto;
  }
  
  #news .container #cooperation ul li {
    color: #fff;
    line-height: 1.1;
    margin-bottom: 0.5em;
    margin-left: 1em;
  }
  
  #news .container #cooperation ul li a {
    color: #A7E5F5;
  }
  
  #news .container #cooperation ul li a.disabled {
    color: #fff;
    pointer-events: none;
  }
  
  @media print, screen and  (min-width:991px) {
    #news dl {
          max-width: 650px;
          height: 300px;
          padding-right: 2em;
    }
  
    #news dl dt {
      float: left;
      clear: left;
    }
  
    #news dl dd {
      padding-left: 10rem;
    }
    
    /*#news .container {
      display: flex;
    }
    
    #news .container #cooperation {
      margin: auto;
    }
    
    #news .container #cooperation ul {
      margin-left: 3.5em;
    }*/
    
  }
    
  
  /* Sponsors  */
  
  #sponsors {
    padding: 2rem 0;
    background: #30497B;
  }
  
  #sponsors h2 {
    color: #fff;
    font-size: 2rem;
    text-align: center;
    letter-spacing: 3px;
  }
  
  #sponsors .box {
      background: #fff;
  }
  
  #sponsors .box h3 {
    font-size: 1.2rem;
      text-align: center;
    margin: 1em 0 0;
    padding: 0.5em;
    background: #aaa;
  }
  
  #sponsors .box.platinum h3 { font-size: 1.8rem; background: #57D3DD;}
  #sponsors .box.rhodium h3 {
    font-size: 1.8rem;
    background: #E2E7E1;
}
  #sponsors .box.gold h3 { background: #E9C400;}
  #sponsors .box.silver h3 { background: #ccc;}
  #sponsors .box.bronze h3 { background: #BD5F0C; color: #fff;}
  
  #sponsors .box ul {
    list-style-type: none;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 2em 0;
  }
  
  #sponsors .box ul li {
    margin: 1em;
  }
  
  #sponsors .box.platinum ul li:nth-of-type(2)  img {
    width: inherit;
  }
  
  /*#sponsors .box.platinum ul { display: block;  text-align: center;}*/
  #sponsors .box.platinum ul li { width: calc(50% - 2em); text-align: center; }
  #sponsors .box.platinum ul li:last-of-type { margin-top: 3em; }
  #sponsors .box.platinum ul li:last-of-type img { max-width: 390px; }
  #sponsors .box ul li.epson img { margin-top: -0.7em; }
  #sponsors .box ul li.fluidtherm img { margin-top: -1.2em; }
  #sponsors .box.silver ul { padding: 0;}
  #sponsors .box.silver ul li { margin: 1em;}
  
  #sponsors .box ul li a:hover img {
    opacity: 0.5;
    transition:0.5s;
  }
  
  @media print, screen and  (max-width:991px) {
      #sponsors .box.platinum ul li { width: 100%; }
  }
  
  @media print, screen and  (max-width:641px) {
      #sponsors .box.platinum ul li:last-of-type img { max-width: 100%; }
      #sponsors .box.platinum ul li:nth-of-type(2)  img { width: 100%; } 
      #sponsors .box.silver ul { display: block;}
      #sponsors .box.silver ul li { text-align: center;}
      #sponsors .box.silver ul li img { width: inherit;}
  }
  
  #sponsors .box.media {
      display: inherit;
  }
  
  #sponsors .box.media h3 {
      color: #fff;
      background: #CC4143;
  }
  
  #sponsors .box.special {
      display: inherit;
  }
  
  #sponsors .box.special h3 {
      color: #fff;
      background: #49943D;
  }
  
  #sponsors .box.special ul li {
      font-size: 1.2rem;
      display: flex;
      align-items: center;
      flex-wrap: wrap;
  }
  
  #sponsors .box.special ul li p {
      margin: 0 1em 0;
  }
  
  #sponsors .box.special ul li a {
      text-decoration: underline;
  }
  
  #sponsors .box.special ul li a:hover {
      text-decoration: none;
  }
  
  @media print, screen and  (max-width:767px) {
      #sponsors .box.special ul li { width: 100%; font-size: 1rem; text-align: center;}
      #sponsors .box.special ul li p { width: 100%; margin: 0.5em 0 0 0;	}
      #sponsors .box.special ul li a { width: 100%; }
      #sponsors .box.special ul li a img {  width: 90%; max-width: 335px;}
  }
  
  /* PR MOVIE  */
  
  #pr_movie {
      padding-top: 0;
   background: #E5EBF4;
  }
  
  #pr_movie .container {
   max-width: 768px;
  }
  
  #pr_movie .container .btn {
    width: 100%;
      text-align: center;
      margin: 0 auto 2rem auto;
    padding: 0;
  }
  
  #pr_movie .container .btn a {
      display: block;
    width: 100%;
      padding: 1rem 0;
      font-size: 1.6rem;
      text-align: center;
      text-decoration: none;
      font-weight: bold;
      color: #fff;
      background: #0065d7;
    background: -webkit-linear-gradient(-180deg, rgb(0, 101, 215), rgb(0, 75, 159));
    background: linear-gradient(-180deg, rgb(0, 101, 215), rgb(0, 75, 159));
    border-radius: 5px;
  }
  
  #pr_movie .container .btn a:hover {
    opacity: 0.7;
  }
  
  #pr_movie .container .btn a img {
      width: 35px;
    position: relative;
    top: -3px;
  }
  
  @media print, screen and  (max-width:768px) {
      #pr_movie .banner li img {
          width: 100%;
      }
  }
  
  /* ORGANIZED  */
  
  #organized {
   padding: 1rem 0;
  }
  
  #organized .container {
   max-width: 1020px;
  }
  
  #organized .container dl dt {
    font-size: 0.92rem;
    font-style: italic;
    letter-spacing: 1px;
  }
  
  #organized .container dl dd ul {
    list-style-type: none;
    margin-left: 1rem;
  }
  
  #organized .container dl dd ul li {
    font-size: 0.92rem;
    letter-spacing: 1px;
  }
  
  @media print, screen and  (min-width:768px) {
    #organized .container dl {
      display: flex;
      align-items: stretch;
      margin: 0;
      padding: 0;
    }
  
    #organized .container dl dt {
      flex-basis: 125px;
      margin-right: 1rem;
      border-right: 1px solid #ccc;
    }
  
    #organized .container dl:first-of-type dt {
      padding-top: 1rem;
    }
  
    #organized .container dl dd {
      flex: 1;
    }
  
    #organized .container dl dd ul {
      display: flex;
      flex-wrap: wrap;
    }
    #organized .container dl dd ul li {
      white-space: nowrap;
      margin-right: 1rem;
    }
  
    #organized .container dl:first-of-type dd {
      padding-top: 1rem;
    }
  }
  
  /* SECRETARIAT */
  
  #secretariat {
      text-align: center;
   padding: 1rem 0;
   border-top: 1px solid #ccc;
  }
  
  #organized .container {
   max-width: 1020px;
  }
  
  #secretariat h2 {
      display: table;
      font-size: 1.5rem;
      font-weight: 700;
      color: #fff;
      margin: 0 auto 1rem auto;
      background: #134690;
      /*padding: 3px;
      background: linear-gradient(to right,  #134690 0%,#134690 79%,#ffffff 79%,#ffffff 80%,#e60112 80%,#e60112 80%,#e60112 100%);*/
      border-radius: 6px;
  }
  
  #secretariat h2 span {
      display: block;
      padding: 0.5rem 2rem;
      /*background: #fff;*/
  }
  
  #organized .container dl dt {
    font-size: 0.92rem;
    font-style: italic;
    letter-spacing: 1px;
  }
  
  .mb10 {
    margin-bottom: 10px;
}
.color-light {
    color: #fff;
}
.text-center {
    text-align: center;
}