@charset "UTF-8";
:root{
  --mainColor:#0077BF;
  --mainColorD:#0F62AF;
  --pointColor:#FFF912;
  --green:#3c8700;
  --gray:#757575;
  --red:#D8000C;
}

*, *:before, *:after{box-sizing:border-box}
.clearfix:before,.clearfix:after{display:table;content:""}
.clearfix:after{clear:both}
.bgImg{display:none!important}
html{font-size:62.5%!important}
body{
  font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  font-size:1.6rem!important;
  width:100%;
  line-height:1.7;
}
img{max-width:100%;height:auto}
.skip, a.skip{text-align:center;background-color:#000}
.skip{width:1px;color:#FFF;font-size:.1%;line-height:.1;position:absolute;left:-3000px;z-index:700}
a.skip{padding:2px 0;top:auto}
a.skip:active, a.skip:focus{position:relative;display:block;width:99.99%;left:auto;background:#333;opacity:1;color:#FFF;font-size:100%;line-height:1.6;}
noscript{color:#FFF}
/* ボタン */
a{word-break:break-all;color:#0ae2fa}
a:visited{color:#FFF}
a:hover{color:#0ae2fa;text-decoration:none}
a:focus{outline:2px #D30656 dotted}
a:hover img{opacity:.6}
a.btn{
  position:relative;
  display:block;
  width:90%;
  max-width:27em;
  margin:0 auto 1.5em;
  padding:.8em;
  background:var(--pointColor);
  box-shadow:0 5px #c3c100;
  border-radius:4px;
  transition:none;
  text-decoration:none;
  color:var(--mainColorD);
  font-weight:bold;
  text-align:center;
  line-height:1.4;
  text-shadow:none
}
a.btn:hover{top:5px;box-shadow:0 0 #FFF}
/* テーブル、リスト */
main dl,main ol,main ul{margin:0 0 1em 0}
main ul{list-style:disc;padding:0 0 0 1.2em}
main ul.kome{list-style:none;padding-left:0}
main ul.kome li{padding-left:1em}
main ul.kome li > span{display:inline-block;width:1em;margin-left:-1em}
main table{width:100%;margin-bottom:1.5em;border-spacing:0;border-collapse:collapse;}
main table caption {color:var(--mainColorD);font-weight:bold;text-align:left;font-size: 1.2em;margin:0 0 .4em}
main table th{background:rgba(4,0,0,.1);border-bottom:1px rgba(4,0,0,.3) solid;padding:.3em .5em;white-space:nowrap;text-align:left;vertical-align:top;text-shadow:none}
main table td{border-bottom:1px rgba(4,0,0,.3) solid;padding:.3em 0 .3em .5em;vertical-align:top}
main table.noDeco{border:none;background:none}
main table.noDeco td,main table.noDeco th{border:none;background:none;padding:0 .5em .2em;text-align:left;font-weight:normal}
main table ul{margin-bottom:0}
main table ul.colGroup,main table ol.colGroup{padding-left:0;margin-bottom:0;}
main table .colGroup li{margin-bottom:0}
main p{margin:0 0 1em 0}
main p + ul.kome{margin-top:-1em}
main table + ul.kome{margin-top:-.5em}

/* テキスト */
h1{padding:0;margin:0;line-height:0}
.fontS{font-size:0.87em}
.fontM{font-size:1.25em}
.fontL{font-size:1.5em}
.fontLL{font-size:2em}
.txtL{text-align:left}
.txtR{text-align:right}
.txtC{text-align:center}
.txtBLU,.txtBLU a{color:var(--mainColorD)}
.txtYEL,.txtYEL a{color:var(--pointColor)}
.txtRED,.txtRED a{color:var(--red)}
.txtBLK,.txtBLK a{color:#000}
.txtWHT,.txtWHT a{color:#FFF}
.txt-muted{color:#b5b5b5}

.txtShadow{text-shadow:0 2px 0 #191812, 2px 0 0 #191812, 0 -2px 0 #191812, -2px 0 0 #191812, -2px -2px 0 #191812, 2px -2px 0 #191812, -2px 2px 0 #191812, 2px 2px 0 #191812}
.txt-middle, .txt-middle th, .txt-middle td{vertical-align:middle !important}

/* レイアウト */
.pb0{padding-bottom:0 !important}
.pb1{padding-bottom:1px !important}
.pb2{padding-bottom:2px !important}
.pb5{padding-bottom:5px !important}
.pb10{padding-bottom:10px !important}
.pb20{padding-bottom:20px !important}
.pt0{padding-top:0 !important}
.pt1{padding-top:1px !important}
.pt5{padding-top:5px !important}
.pt10{padding-top:10px !important}
.pt20{padding-top:20px !important}
.pl0{padding-left:0 !important}
.pl5{padding-left:5px !important}
.pl10{padding-left:10px !important}
.pl20{padding-left:20px !important}
.pr0{padding-right:0 !important}
.pr5{padding-right:5px !important}
.pr10{padding-right:10px !important}
.pr20{padding-right:20px !important}
.mb0{margin-bottom:0 !important}
.mb5{margin-bottom:5px !important}
.mb10{margin-bottom:10px !important}
.mb20{margin-bottom:20px !important}
.mb1em{margin-bottom:1em !important}
.mt0{margin-top:0 !important}
.mt5{margin-top:5px !important}
.mt10{margin-top:10px !important}
.mt20{margin-top:20px !important}
.mt1em{margin-top:1em !important}
.ml0{margin-left:0 !important}
.ml5{margin-left:5px !important}
.ml10{margin-left:10px !important}
.ml20{margin-left:20px !important}
.mr0{margin-right:0 !important}
.mr5{margin-right:5px !important}
.mr10{margin-right:10px !important}
.mr20{margin-right:20px !important}
/* グリッドレイアウト */
.colGroup{position:relative;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px;}
[class^="col-"]{position:relative;min-height:1px;overflow:hidden;padding-right:5px;padding-left:5px}
.col-sp1{width:8.33333%}
.col-sp2{width:16.66667%}
.col-sp3{width:25%}
.col-sp4{width:33.33333%}
.col-sp5{width:41.66667%}
.col-sp6{width:50%}
.col-sp7{width:58.33333%}
.col-sp8{width:66.66667%}
.col-sp9{width:75%}
.col-sp10{width:83.33333%}
.col-sp11{width:91.66667%}
.col-sp12{width:100%}
.colGroup dd{margin-left:0}
/*SP Only*/
@media screen and (max-width:599px){
  .forPC, .forTB, .hiddenSP{display:none}
  main table{border:1px rgba(4,0,0,.3) solid;border-bottom:none;table-layout:fixed}
  main table th{display:block;width:100% !important;border-bottom:none}
  main table td{display:block;width:100% !important;}
}
/*TB Only*/
@media screen and (min-width:600px) and (max-width:1024px){
  .forSP, .forPC, .hiddenTB{display:none}
}
/*TB Over*/
@media screen and (min-width:600px){
  .colGroup{margin-right:-8px;margin-left:-8px}
  [class^="col-"]{padding-right:8px;padding-left:8px}
  .col-tb1{width:8.33333%}
  .col-tb2{width:16.66667%}
  .col-tb3{width:25%}
  .col-tb4{width:33.33333%}
  .col-tb5{width:41.66667%}
  .col-tb6{width:50%}
  .col-tb7{width:58.33333%}
  .col-tb8{width:66.66667%}
  .col-tb9{width:75%}
  .col-tb10{width:83.33333%}
  .col-tb11{width:91.66667%}
  .col-tb12{width:100%}
  a.btn{padding:1em;}
}
/*PC Over*/
@media screen and (min-width:1025px){
  .forSP, .forTB, .hiddenPC{display:none}
  .colGroup{margin-right:-12px;margin-left:-12px}
  [class^="col-"]{padding-right:12px;padding-left:12px}
  .col-pc1{width:8.33333%}
  .col-pc2{width:16.66667%}
  .col-pc3{width:25%}
  .col-pc4{width:33.33333%}
  .col-pc5{width:41.66667%}
  .col-pc6{width:50%}
  .col-pc7{width:58.33333%}
  .col-pc8{width:66.66667%}
  .col-pc9{width:75%}
  .col-pc10{width:83.33333%}
  .col-pc11{width:91.66667%}
  .col-pc12{width:100%}
}
/*_________________________________________base*/
body{
}
#wraper{
  width:100%;
  min-height:100vh;
  min-height:100svh;
  background-color:#040000;
}
#wraper::after{
  content:"";
  position:fixed;
  top:0;bottom:0;left:0;right:0;
  z-index:-3;
  width:100%;
  min-height:100vh;
  min-height:100svh;
  background:url(../img/bg.jpg) no-repeat 50% 50%/cover;
}
#home header{
  width:100%;
  height:100vh;
  height:100svh;
}
header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:-1;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
}
#symbol {
  position: absolute;
  top: 0;left: 10px;
  z-index: 10;
  line-height:0;
}
#home #siteName{
  padding:42px 0;
}
#home #siteName img{
  width:auto;
  height:100%;
}
#home #container{
  margin-top:100vh;
  margin-top:100svh;
}
#container{
  position: relative;
  display: flex;
  flex-direction: column;
  min-height:100vh;
  min-height:100svh;
  background-color:#040000;
}
#container::after{
  content:"";
  position:absolute;
  top:0;bottom:0;left:0;right:0;
  width:100%;
  min-height:100vh;
  min-height:100svh;
  background:url(../img/bg.jpg) no-repeat 50% 50%/cover;
  filter: blur(3px);
  opacity:.6;
}
main{
  position: relative;
  z-index:1;
  min-height:calc(100svh - 117px);
  display:flex;
  flex-direction: column;
}
.contWrap{
  padding:6vw 0;
  line-height:1
}
.contWrap h2{
  position:relative;
  width:90vw;
  margin:0 auto 0 0;
  padding:min(3vw,24px) 1em min(3vw,24px) 10vw;
  background:var(--mainColor);
  color:var(--pointColor);
  font-weight:bold;
  font-size:2em;
  font-feature-settings: "palt";

  opacity:0;
  transform:translate(-100vw,0);
  transition:all .5s;
}
.contWrap.active h2{
  opacity:1;
  animation:slideInR .5s .5s ease forwards;
}
.contWrap h2 span{
  display:block;
  max-width:856px;
  margin:0 auto;
}
.contBlock{
  width:90vw;
  margin:0 0 0 auto;
  padding:min(4vw,32px) 10vw 1px min(4vw,32px);
  background:rgba(255,255,255,.9);
  box-shadow:0 20px 30px rgb(0,0,0,.2);
  line-height:1.7;
  opacity:0;
  transform:translate(100vw,0);
  transition:all .5s;
  transition-delay:1s;
}
.contWrap.active .contBlock{
  animation:slideInL .5s 1s ease forwards;
}
.contBlock .inner{
  max-width:856px;
  margin:0 auto;
}
.contBlock h3{
  display:inline-block;
  padding:0 .4em;
  margin-top:0;
  background: linear-gradient(transparent 60%, var(--pointColor) 0%);
  color:var(--mainColor);
  font-size:1.4em;
  line-height:1.3;
  font-feature-settings: "palt";
}
.contWrap.active .contBlock{
  opacity:1;
  transform:translate(0,0);
}
.newsList{
	max-height:180px;
	overflow-y:auto;
  padding-right:20px;
  margin:0 0 16px 0
}
.newsList a{
  color:#FFF
}
.newsList dd{
  width:100%;
  margin:0 0 .5em 0;
  padding-bottom:.5em;
  border-bottom:1px rgba(4,0,0,.3) solid
}
.newsList::-webkit-scrollbar{
  width:10px;
  background:rgba(255,255,255,.2)
}
.newsList::-webkit-scrollbar-thumb{
  background:var(--mainColor);
}
#sponsor{
  font-feature-settings: "palt";
}
#sponsor .contBlock{
  width:90vw;
  margin:0 auto;
  padding:0;
  background:none;
  box-shadow:none;
  color:#FFF;
}
.syusai img{
  border:1px solid rgba(255,255,255,.5);
}
footer{
  position: relative;
  z-index:1;  
  margin-top: auto;
  background:#FFF;
  color:#333
}
footer a{
  color:#0e5fa6
}
footer a:visited{
  color:#000A50
}
#footer-info{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:0 10px;
  border-bottom:1px solid #999
}
#footer-info p{
  margin:0
}
a#footer-symbol{
  display:block;
  width:120px;
  height:50px;
  margin-right:10px;
  background:url(../img/flogo.png) no-repeat 0 50%;
  background-size:contain
}
#footer-address{
  line-height:1.2;
}
#footer-link{
  padding:5px 10px;
  text-align:center
}
#footer-link a{
  display:inline-block;
  margin:0 1em
}
#footer-link a.footer-access{
  padding-left:16px;
  background:transparent url(../img/prefectural_link_icon.png) no-repeat 0 50%
}
#footer-copy{
  padding:4px 0 2px;
  background-color:#333;
}
#footer-copy p{
  margin:0;
  color:#ffffff;
  font-size:87.5%;
  text-align:center;
}
a#goTopBtn{
  position:fixed;
  bottom:0;right:0;
  z-index:1;
  width:100%;
  height:auto;
  padding:.5em;
  transition:.4s ease-in-out;
  line-height:1.3;
  background:#D30656;
  text-align:center;
  color:#000;
  font-weight:bold;
  text-decoration:none;
  font-size:.875em;
  background:#FFDC00;
}
a#goTopBtn span{
  display:inline-block;
  margin-left:8px;
}
a#goTopBtn:hover{
  transform:translateY(-10px);
}
a#goTopBtn:hover img{
  opacity:1;
}
/* SP + TB Only */
@media screen and (max-width:1024px){
}
/* SP Only */
@media screen and (max-width:599px){
  #symbol img {
    width: auto;
    height: 42px;
  }
}
/* TB only */
@media screen and (min-width:600px) and (max-width:1024px){
}
/* TB Over */
@media screen and (min-width:600px){
  #home #siteName{
    height:100%;
    padding:80px 0 0;
  }
  .contBlock{
    padding-bottom:16px;
  }
  a#footer-symbol {
    width: 144px;
    height: 60px;
  }
}
/* PC Over */
@media screen and (min-width:1025px){

}
@media screen and (min-width:1090px){
  #home #siteName{
    padding:0;
  }

}
@keyframes slideInR{
  0%{transform:translate(-100vw,0);opacity:0;}
  90%{opacity:1;}
  100%{opacity:1;transform:translate(0,0);}
}
@keyframes slideInL{
  0%{transform:translate(100vw,0);opacity:0;}
  90%{opacity:1;}
  100%{opacity:1;transform:translate(0,0);}
}
@keyframes slideUp{
  0%{transform:translate(0,100px);opacity:0;}
  90%{opacity:1;}
  100%{opacity:1;transform:translate(0,0);}
}
@keyframes gradient{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}