@charset "utf-8";
.header-logo {  }
.footer-logo {  }
header { position:relative; }
.footer {}
.header-menu {}
.header-menu-col { border-right:1px solid #CCC; padding:20px 10px; }
.footer-menu {}
.footer-menu-row { padding:10px 10px 10px 40px; }
.button-1,
.button-2,
.button-3 { color:#FFF; padding:4px 20px 4px 36px; word-break:keep-all; display:block; max-width:154px; }
.button-1:hover,
.button-2:hover,
.button-3:hover { text-decoration:none; opacity:0.5; color:#FFF; }
.button-1 { background:url(../img/b1_.png) #1F87B4 no-repeat 6px center; }
.button-2 { background:url(../img/b2_.png) #57A2DB no-repeat 6px center; border-radius:20px; }
.button-3 { background:url(../img/b3_.png) #444444 no-repeat 6px center; border-radius:20px; }
.button-4 { color:#57A2DB; padding:4px 10px 4px 20px; }
.button-5 { background-color:#57A2DB; padding:4px 10px; border-radius:14px; color:#FFF; word-break:keep-all; }
span.button-5:hover,
.button-5:hover { text-decoration:none; }
.copyright { font-size:12px; text-align:center; padding:20px; }
.bg-1 { background-color:#E9F4FA; border-bottom:10px solid #57A2DB; background-image:url(../img/bg.png); }
.list-1 { border-top:6px solid #57A2DB; }
.list-row-1 { border-bottom:1px solid #CCC; padding:10px 10px 10px 40px; background:url() no-repeat center left; }
.list-row-2 { border-bottom:1px solid #CCC; padding:10px 0; }
.list-2 { border-bottom:1px solid #CCC; color:#000; display:block; white-space: nowrap; text-overflow: ellipsis; overflow:hidden; }
a.list-2:hover { text-decoration:none; color:#57A2DB; }
.bb-1 { border-bottom:1px solid #CCC; }
.info-date,
.info-title { color:#212529; display:block; }
.overflow { white-space: nowrap; text-overflow: ellipsis; overflow:hidden; }
.go-top { display:none; }
a img:hover { opacity:0.5; }
.fa-chevron-right { margin-right:20px; }
.scroll-x-wrap { width:100%; overflow: hidden; }
.scroll-x { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.table-1 th,
.table-1 td { border:1px solid #CCC; padding:10px 20px; }
.table-1 th { background-color:#E9F4FA; color:#FFF; }
.table-2 th,
.table-2 td { border:1px solid #CCC; padding:10px 20px; text-align:center; }
.table-2 th { background-color:#57A2DB; color:#FFF; }
.table-4,
.table-3 { table-layout:fixed; width:100%; }
.table-3 th,
.table-3 td { border:1px solid #adadad; padding:10px 4px; }
.table-4 th,
.table-4 td { padding:10px; font-size:15px; border:1px solid #adadad; }
.table-3 caption { caption-side:top; font-size:22px; color:#57A2DB; }
.heading-1 { font-size:30px; padding-left:60px; background:url() no-repeat center left; }
.heading-2 { border-left:6px solid #57A2DB; padding-left:10px; color:#57A2DB; font-size:22px; }
.heading-3 { font-size:20px; color:#57A2DB; }
.heading-4 { font-size:24px; }
.main-col h4.heading-5,
.heading-5      { margin: 10px 0 50px; padding: 30px 0 30px 40px; position: relative; border-bottom: 4px solid #f7f5f2; font-size: 20px; text-align: left; line-height: 1.7; letter-spacing: 4px; color: #4c4c4c; background: url(../img/page-title01.png) 0 0 / 85px no-repeat; }
.main-col h4.heading-5 span,
.heading-5 span { position: relative; display: inline-block; margin-left: 15px; padding: 0 20px; letter-spacing: 2px; font-family: "Economica"; }
.main-col h4.heading-5:after,
.heading-5:after { position: absolute; bottom: -4px; left: 0; z-index: 2; content: ''; width: 20%; height: 4px; background-color: #57A2DB; }
.main-col h4.heading-5 span:before,
.heading-5 span:before { position: absolute; display: block; width: 10px; height: 1px; top: 0; bottom: 0; left: 0; margin: auto; background: #CCC; content: ""; }
.main-col h4.heading-5 span:after,
.heading-5 span:after  { position: absolute; display: block; width: 10px; height: 1px; top: 0; bottom: 0; right: 0; margin: auto; background: #CCC; content: ""; }
.box-1 { background-color:#FFF; padding:10px; min-height:60vh; }
.box-2 { background-color:#FFF; display:block; }
.box-3 { background-color:#FFF; text-align:center; padding:20px 0; }
.box-4 { padding:20px; border:4px solid #57A2DB; border-radius:20px; }
.font-sss { font-size:10px; }
.font-ss { font-size:12px; }
.font-s { font-size:14px; }
.font-m { font-size:18px; }
.font-l { font-size:22px; }
.font-ll { font-size:26px; }
.font-lll { font-size:30px; }
.go-top { position:fixed; right:10px; bottom:10px; }
.main-items { position:absolute; right:14%; bottom:40%; z-index:10; }
.homepage:after { content:'\f35d'; font-family: "Font Awesome 5 Free"; font-weight: 900; color:#57A2DB; margin-left:10px; }
#header-nav { border-left:1px solid #CCC; margin:20px 0; }
#header-nav li { position: relative; width: 100%;   -ms-flex: 0 0 auto; flex: 0 0 auto; max-width: 100%; padding:10px; border-bottom:1px solid #CCC; }
#header-nav a { color:#444; }
#footer-nav li { -ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%; margin-bottom:10px; }
.link-1:before,
#footer-nav li:before { content:'\f054'; font-family: "Font Awesome 5 Free"; font-weight: 900; color:#57A2DB; margin-right:10px; }
#footer-nav a { color:#212529; }
.header-logo { text-align:center; padding:10px 40px 10px 0; }
.sm-menu-wrap { position:absolute; right:10px; top:10px; z-index:1; }
.sm-menu { display:block; width:52px; height:42px; position: relative; }
.sm-menu span { display: block; background: #666; width: 24px; height: 2px; position: absolute; left: 19px; transition: all 0.4s; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; }
.sm-menu.active span.bar-1 {
    -webkit-transform: translateY(8px) rotate(45deg);
    -moz-transform: translateY(8px) rotate(45deg);
    -ms-transform: translateY(8px) rotate(45deg);
    transform: translateY(8px) rotate(45deg);
}
.sm-menu.active span.bar-2 {
    opacity: 0;
}
.sm-menu.active span.bar-3 {
    -webkit-transform: translateY(-8px) rotate(-45deg);
    -moz-transform: translateY(-8px) rotate(-45deg);
    -ms-transform: translateY(-8px) rotate(-45deg);
    transform: translateY(-8px) rotate(-45deg);
}
.bar-1 { top:12px; }
.bar-2 { top:50%; margin-top:-1px; }
.bar-3 { bottom:12px; }
.slick-slide { padding:0 4px; }
.main-items { font-size:10px; }
.black { color:#000; }
.header-logo a:hover,
.info-date:hover, 
.info-title:hover,
.nodeco:hover { text-decoration:none; color:#57A2DB; }
.header-logo a:hover { opacity:0.5; }
.l-col { margin-bottom:20px; }
.l-col,
.r-col-l,
.r-col-r { text-align:center; }
.r-col-l,
.r-col-r { display:flex; justify-content:center; }
.r-col-upper { margin-bottom:20px; }
.r-col-lower { margin-bottom:20px; }
.box-5 {  }
.img-1 { max-width:100%; }
.img-2 { max-width:100%; }
.l-col-img {  }
.r-col-img {  }
.box-5 { border-radius:10px; display:flex; align-items:center; justify-content:center; }
.bg-2 { background-color:#57A2DB; }
.bg-3 { background-color:#FA5A46; }
#pc-nav,
#sm-nav { display:none; }
.about-r { padding-left:0px; padding-bottom:20px; }
.about-l { padding-right:0px; padding-bottom:20px; }
.box-5 { width:100%; }
.main-col h4,
.h4 { font-size:22px; color:#57A2DB; border-bottom:2px solid #57A2DB; margin-bottom:30px; }
.h5 { font-size:22px; color:#57A2DB; border-bottom:2px solid #57A2DB; margin-bottom:30px; margin-top:30px; }
.main-col h6,
.h6 { background-color:#e0e0e0; color:#000; font-size:18px; padding:10px; margin-bottom:30px; }
.h5 a { text-decoration:none; color:#57A2DB; display:block; }
.r-col-r { padding-left:20px; }
iframe { width:100%; }
.page-numbers { display:inline-block; background-color:#57A2DB; border:1px solid #57A2DB; border-radius:5px; color:#FFF; padding:10px; margin:0 4px; }
.current,
.page-numbers:hover { text-decoration:none; color:#57A2DB; background-color:#FFF; }
.bx-wrapper img { max-width:988px; }
.gmap { height:400px; }
.login-password label,
.login-username label { display:block; }
.sige { display: -ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#album li.slide-list,
#album li.blocks-gallery-item {
  position: relative;
  max-width:50%;
  width: 50%;
  margin-right:0;
  margin:0;
  padding:6px;
  cursor:pointer;
}
.btn-modal { display:none; }
.btn-modal img { width:40px; height:40px; fill:#FFF; }
.show-modal:hover { background-color:#fdeff2; }
.modal-bg { position:fixed; top:0; left:0; width:100%; background:rgba(0,0,0,0.6); z-index:1; height:100%; display:none; padding-top:60px; padding-bottom:120px; }
.modal { display:flex; justify-content:center; align-items:center; height:100%; width:100%; position:relative; }
.modal-window { overflow:scroll; max-width:1000px; width:100%; background-color:#FFF; }
.modal-close { position:absolute; color:red; font-size:40px; top:5px; right:5px; cursor:pointer; width:52px; height: 52px; background-color:#FFF; border-radius:26px; padding-left:25px; }

.image-modal-bg,
.modal-bg-1 { position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.6); display:none; justify-content:center; align-items:center; z-index:1; }
.image-modal-bg { z-index:5; }
.modal-bg-1 { padding-top:60px; padding-bottom:120px; z-index:1; }
.modal-window-1 { /*height:100%;*/ max-width:1200px; display:flex; justify-content:center; align-items:center; cursor:pointer; }
.image-modal { border:10px solid #FFF; max-height:100%; }
.image-modal-close-1 { position:absolute; right:0; top:0; z-index:6; display:block; width:60px; }

.hide { display:none; }
.parent-menu,
.child-menu { background-color:#FFF; display:block; padding:10px; cursor:pointer; color:#57A2DB; }

.parent-menu { padding-left:1em; border-bottom:2px solid #FFF; background-color:#57A2DB; color:#FFF; }
.parent-menu:hover { text-decoration:underline; color:#FFF; }
.child-menu { padding-left:2em; border-bottom:1px solid #CCC; }
.child-ul {  }
.slide-control { background-color:#FFF; padding:10px; }
.kana { padding-left:1em; }
.slick-slide img {
  width:100%;
}
.slider { display:none; }
#timetable table { width:100%; }
#timetable th,
#timetable td { padding:10px; }
@media (min-width: 576px) {
  #album li.slide-list,
  #album li.blocks-gallery-item {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .main-items { font-size:10px; right:18%; }
  .img-1 { max-width:386px; }
  .slick-slide { padding:0 10px; }
}

@media (min-width: 768px) {
  .btn-modal { display:block; }
  .image-modal { border:20px solid #FFF; }
  #album li.slide-list,
  #album li.blocks-gallery-item {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .main-items { font-size:12px; right:19%; }
  .l-col { text-align:center; }
  .r-col-l { text-align:right; padding-left:20px; }
  .r-col-r { text-align:left; padding-left:20px; }

  .l-col { text-align:right; margin-bottom:0; }
  .r-col-r { padding-left:20px; }
  .r-col-lower { margin-bottom:0px; }
  .box-5 { width:auto; }
  .heading-4 { font-size:30px; }
}

@media (min-width: 992px) {
  .header-logo { text-align:center; padding:10px 0; }
  .sm-menu { display:none; }
  #pc-nav { display:block; }
  #header-nav li { padding:0 10px; width:auto; border-right:1px solid #CCC; border-bottom:none; }
  .main-items { font-size:16px; right:20%; }
  .side-col { padding:0 20px; }
}

@media (min-width: 1200px) {
  .about-r { padding-left:10px; }
  .about-l { padding-right:10px; }
  #header-nav li { padding:0 17px; }
  .main-items { font-size:20px; right:21%; }
}