@charset "utf-8";
#main {
  position: relative;
}
#mainImg {
  position: relative;
  overflow: hidden;
}
.boxLead {
  border: solid 1px #CCCCCC;
  text-align: center;
  color: #000000;
}
#main .sizeS {
  font-size: 0.9em;
  color: #666666;
}
.banner1 {
  display: block;
  position: relative;
  padding-bottom: 33.913%;
  background-image: url(/midorisai2025/img/live_banner.jpg);
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.banner2 {
  display: block;
  position: relative;
  padding-bottom: 33.913%;
  background-image: url(/midorisai2025/img/lecture_banner.jpg);
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.banner1 img, .banner2 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
@media print, screen and (min-width: 751px) {
  .lead {
    font-size: 1.285em; /*18px*/
    line-height: 1.6em;
  }
  .sLead {
    font-size: 1.142em; /*16px*/
    line-height: 1.6em;
  }
  .sLead .sub {
    font-size: 0.875em; /*14px*/
    line-height: 1.6em;
  }
  .boxLead {
    padding: 30px 15px;
    font-size: 1.429em; /*20px*/
    line-height: 1em;
  }
  .boxLead .sFont {
    font-size: 0.8em; /*16px*/
    padding-top: 10px;
  }
  #contents {
    padding-top: 40px;
  }
  #main {
    padding-top: 20px;
    color: #666666;
  }
  /*   */
  .no_telop {
    font-size: 1.142em;
  }
  .boxBtn2 a {
    display: block;
    border: solid 1px #7fc643;
    padding-bottom: 15px;
    color: #000000 !important;
    text-decoration: none !important;
  }
  .boxBtn2 a img {
    padding: 20px;
    box-sizing: border-box;
  }
  .boxBtn2 a span.btnWrap {
    padding: 0px 20px;
    box-sizing: border-box;
    display: inline-block;
    width: calc(100% - 20px);
    width: -webkit-calc(100% - 20px);
    background-image: url(/commons/img/ver2/icon_g_link.png);
    background-size: 12px auto;
    background-position: right center;
    background-repeat: no-repeat;
  }
  .boxBtn2 .e_link a span.btnWrap, .boxBtn2 a.e_link span.btnWrap {
    background-image: url(/commons/img/ver2/icon_e_link.png);
  }
  .boxBtn2 a.noLink {
    border: solid 1px #cccccc;
    cursor: default;
  }
  .boxBtn2 a.noLink .btnWrap {
    background-image: none;
  }
  .boxBtn.row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .boxBtn.row .box3_1_pc {
    float: none;
  }
  .boxBtn.row .box3_1_pc a {
    height: 100%;
    height: calc(100% - 30px);
    height: -webkit-calc(100% - 30px);
  }
  .box3_1_pc {
    margin-top: 20px;
  }
  ul > .box3_1_pc:nth-child(even) {
    margin-right: 0px;
  }
  ul > .box2_1_pc:nth-child(even) {
    margin-right: 0px;
  }
  #banner a {
    transition: all 0.2s linear;
  }
  #banner a:hover {
    opacity: 0.75;
  }
  .center {
    width: 330px;
    margin-left: auto;
    margin-right: auto;
  }
  .boxBtn a span.btnWrap {
    width: calc(100% - 15px);
    width: -webkit-calc(100% - 15px);
  }
  .boxline {
    margin-top: 20px;
  }
}
/* telop */
.no_telop {
  margin-top: 20px;
  text-align: center;
}
.telop {
  margin-top: 20px;
  width: 1026px;
  background-color: #fffeee;
}
.telop .telop_inner {
  position: relative;
  overflow: hidden;
  min-height: 44px;
  width: 100%;
}
.telop .inner {
  position: absolute;
  top: 0;
  left: 0;
}
.telop .inner p {
  line-height: 44px;
  white-space: nowrap;
  animation: hscroll 35s linear infinite;
}
@keyframes hscroll {
  0% {
    transform: translateX(1200px);
  }
  100% {
    transform: translateX(-3450px);
  }
}
@media only screen and (max-width: 750px) {
  .no_telop {
    font-size: 14px;
  }
  .telop {
    margin-top: 15px;
    width: 100%;
  }
  .telop .telop_inner {
    min-height: 32px;
    padding-left: 15px;
    padding-right: 15px;
    width: calc(100% - 30px);
    width: -webkit-calc(100% - 30px);
  }
  .telop .inner p {
    line-height: 32px;
    animation: hscroll 33s linear infinite;
  }
  @keyframes hscroll {
    0% {
      transform: translateX(690px);
    }
    100% {
      transform: translateX(-2970px);
    }
  }
}
@media only screen and (max-width: 375px) {
  @keyframes hscroll {
    0% {
      transform: translateX(310px);
    }
    100% {
      transform: translateX(-2970px);
    }
  }
}
@media only screen and (max-width: 330px) {
  .no_telop {
    font-size: 13.2px;
  }
}