@charset "UTF-8";
html, body {
  background-image: url("../images/bg-html.jpg");
  background-position: center;
  background-size: cover;
  width: 100%;
  font-family: "BIZ UDMincho", serif;	
  font-weight: 400;
  font-style: normal;
  font-size: 1em
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-style: normal;
}
h2 {
  font-size: 1.8em;
  color: rgba(255, 255, 255, 1.00);
  border-bottom: 5px solid rgba(237,109,53,1.00);
  padding-bottom: 0em;
  margin-bottom: 1rem;
}
h2::before {
  content: url("");
  vertical-align: middle;
  margin-right: 0.2em
}
h3 {
  border-bottom: 1pt solid #A0D8EF;
  margin-bottom: 15px;
  padding-bottom: 5px;
  padding-top: 5px;
  color: rgba(27, 121, 160, 1.00);
  padding-left: 10px;
}
h3::before {
  font-family: 'Font Awesome 6 Pro';
  content: "\f138";
  padding-right: 0.3em;
  color: rgba(98,192,149,1.00)
}
.container {
  max-width: 1000px
}

/* ヘッダー */
header {
  border-bottom: 0.9rem solid rgba(200, 22, 29, 1.00);
}
#headerBottom {
  position: relative;
  margin-top: -455px;
}
#page header {
  background-color: rgba(0, 93, 216, 1.00);
  background-image: -webkit-linear-gradient(270deg, rgba(0, 151, 219, 1.00) 0%, rgba(0, 82, 208, 1.00) 100%);
  background-image: -moz-linear-gradient(270deg, rgba(0, 151, 219, 1.00) 0%, rgba(0, 82, 208, 1.00) 100%);
  background-image: -o-linear-gradient(270deg, rgba(0, 151, 219, 1.00) 0%, rgba(0, 82, 208, 1.00) 100%);
  background-image: linear-gradient(180deg, rgba(0, 151, 219, 1.00) 0%, rgba(0, 82, 208, 1.00) 100%);
}
#home .wrapper {
  background-image: url("../images/bg_contents.webp");
  background-position: 0% 0%;
  background-size: cover;
  background-repeat: no-repeat;
}
/* フッター */
footer {
  width: 100%;
  padding-top: 0px;
  padding-bottom: 40px;
  background-color: rgba(56, 133, 255, 1.00);
  clear: left;
}
#footer {
  padding: 0rem 0;
  text-align: center;
  border-top: 1rem solid rgba(4, 17, 0, 1.00);
  margin-top: 0rem
}
#footer a:link, #footer a:active, #footer a:visited {
  color: rgba(255, 210, 155, 1.00);
  text-decoration: none
}
#footer a:hover {
  color: rgba(205, 196, 72, 1.00);
}
#footer dt {
  font-size: 1.2em;
}
#footer dd {
  font-size: 1em;
  line-height: 1.2em;
  color: rgba(255, 255, 255, 1.00)
}
#footer dd i {
  color: rgba(255, 210, 155, 1.00);
}
/* コピーライト */
#copyright {
  font-size: 0.9em;
  min-height: 2.2em;
}
.copyright {
  text-align: center;
  background-color: rgba(0, 50, 110, 1.00);
  color: #FFFFFF;
  letter-spacing: 2px;
  border-top-width: 2px;
  padding: 10px
}
#poster {
  padding: 0px;
  margin: 0px
}
#banners{
	margin-top: 2em
}
#sideBarUppper {
  padding: 0px;
  margin: 0px
}
#sideBarBottom {
  padding: 0px;
  margin: 0px
}
/* ----------------------- */
/* ■ サイドバー情報　　 　*/
/* ----------------------- */
/*****************************/
/* ■トップバック　   　　 　  */
/*****************************/
#topBack {
  position: fixed;
  bottom: 50px;
  right: 50px;
  z-index: 100;
}
#topBack i, #topBack i:hover {
  font-size: 50px;
	opacity: 0.8
}
#topBack a {
  background-color: rgba(4,17,0,1.00);
  text-decoration: none;
  color: #F3FAFF;
  width: 60px;
  height: 60px;
  padding: 5px;
  text-align: center;
  display: block;
  border-radius: 30px;
  opacity: 0.9;
  font-size: 30px;
}
#topBack:hover {
  opacity: 0.5;
}
/*****************************/
/* ■準備中		　　   　　 　  */
/*****************************/
#nowconst {
  padding: 1em;
  border: 3px solid rgba(163,185,122,1.00);
  border-radius: 16px;
  color: rgba(65,150,58,1.00);
  font-size: 2rem;
  text-align: center;
  margin-bottom: 1em;
  margin-top: 1em;
}
/*################################################################*/
/*# ■ エラー                                                    #*/
/*################################################################*/
#alertMsgBox {
  text-align: center
}
.error {
  font-size: 12px;
  position: relative;
  z-index: 99;
  opacity: 1;
  margin-top: 0px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 10px;
  padding: 10px;
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
  border: 1px solid;
  animation: error 1s linear 5s 1;
  animation-fill-mode: forwards;
  -webkit-animation: error 1s linear 5s 1;
  -webkit-animation-fill-mode: forwards;
}
@keyframes error {
  0% {
    opacity: 1;
  }
  99% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes error {
  0% {
    opacity: 1;
  }
  99% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.alertMsg {
  font-size: 12px;
  position: relative;
  z-index: 99;
  opacity: 1;
  margin-top: 0px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 10px;
  padding: 10px;
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  color: #388624;
  background-color: #E0F2DE;
  border: 1px solid #99C7BB;
  animation: alertMsg 1s linear 5s 1;
  animation-fill-mode: forwards;
  -webkit-animation: alertMsg 1s linear 5s 1;
  -webkit-animation-fill-mode: forwards;
}
@keyframes alertMsg {
  0% {
    opacity: 1;
    height: 40px;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
  }
  99% {
    opacity: 0;
    height: 40px;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
  }
  100% {
    opacity: 0;
    height: 40px;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
  }
}
@-webkit-keyframes alertMsg {
  0% {
    opacity: 1;
    height: 40px;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
  }
  99% {
    opacity: 0;
    height: 40px;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
  }
  100% {
    opacity: 0;
    height: 40px;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
  }
}
/* XXS：小デバイス（縦向きモバイル, 320px未満） */
#home .gakkaiTheme {
  background-image: url("../images/home/theme.svg");
  background-repeat: no-repeat;
  width: 135px;
  height: 62px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  left: 75px;
  top: 306px;
}
#home .gakkaiDVP {
  background-image: url("../images/home/dvp.svg");
  background-repeat: no-repeat;
  width: 240px;
  height: 50px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  top: 154px;
}
/* XXS：320px以上、475px未満 */
@media (min-width: 320px) and (max-width: 374.98px) {
  #home .gakkaiTheme {
    width: 165px;
    height: 75px;
    left: -60px;
    top: 300px;
  }
  #home .gakkaiDVP {
    width: 285px;
    height: 59px;
    top: 150px;
  }
}
/* XXSM：375px以上、470px未満 */
@media (min-width: 375px) and (max-width: 469.98px) {
  #home .gakkaiTheme {
    width: 189px;
    height: 86px;
    left: -67px;
    top: 282px;
  }
  #home .gakkaiDVP {
    width: 315px;
    height: 65px;
    top: 143px;
  }
}
/* XS：470px以上、520px未満 */
@media (min-width: 470px) and (max-width: 519.98px) {
  #home .gakkaiTheme {
    width: 210px;
    height: 96px;
    left: 130px;
    top: 246px;
  }
  #home .gakkaiDVP {
    width: 420px;
    height: 87px;
    top: 125px;
  }
}
/* SM：520px以上、575px未満 */
@media (min-width: 520px) and (max-width: 575.98px) {
  #home .gakkaiTheme {
    width: 240px;
    height: 110px;
    left: 130px;
    top: 200px;
  }
  #home .gakkaiDVP {
    width: 480px;
    height: 99px;
    top: 100px;
  }
}
/* SMD：576px 以上、768px未満 */
@media (min-width: 576px) and (max-width: 679.98px) {
  #home .gakkaiTheme {
    width: 270px;
    height: 123px;
    left: 130px;
    top: 161px;
  }
  #home .gakkaiDVP {
    width: 540px;
    height: 112px;
    top: 100px;
  }
}
/* SMDL：640px 以上、768px未満） */
@media (min-width: 680px) and (max-width: 767.98px) {
  #home .gakkaiTheme {
    width: 300px;
    height: 137px;
    left: 160px;
    top: 105px;
  }
  #home .gakkaiDVP {
    width: 600px;
    height: 124px;
    ;
    top: 80px;
  }
}
/* MD：768px、870px未満 */
@media (min-width: 768px) and (max-width: 869.98px) {
  #home .gakkaiTheme {
    width: 300px;
    height: 137px;
    left: 205px;
    top: 83px;
  }
  #home .gakkaiDVP {
    width: 690px;
    height: 143px;
    top: 60px;
  }
}
/* MDL：870px、992px未満 */
@media (min-width: 870px) and (max-width: 991.98px) {
  #home .gakkaiTheme {
    width: 300px;
    height: 137px;
    left: 208px;
    top: 46px;
  }
  #home .gakkaiDVP {
    width: 690px;
    height: 143px;
    top: 60px;
  }
}
/* LG：タブレット, 992px、1200px未満 */
@media (min-width: 992px) {
  #home .gakkaiTheme {
    width: 300px;
    height: 137px;
    left: 227px;
    top: -8px;
  }
  #home .gakkaiDVP {
    width: 750px;
    height: 149px;
    top: 60px;
  }
}