@charset "utf-8";
h1{
  font-size: 1.25em;
  font-weight: bold;
  background: #eeeeee;
  padding: 0.5em 0.5em 0.5em 1em;
  position: relative;
}
h1:before {
  position: absolute;
  top: 20%;
  left: 16px;
  width: 6px;
  height: 60%;
  content: '';
  background: #4d6e8f;
}

#list{
  margin: 2em 0;
}
#list ul{
  display: flex;
  flex-wrap: wrap;
}
#list li{
  width: calc(100% / 3);
}
#list li a {
  display : block;
  width : 192px;
  margin : 0 2px;
  padding : 10px 0;
  text-align : center;
  color : #333333;
  background : #dddddd;
  text-decoration: none;
  width: calc(100% - 4px);
}
#list li a:hover{
  background: #4d6e8f;
  color: #fff;
}
#list li.active a{
  font-weight: bold;
  background: #4d6e8f;
  color: #fff;
}

@media screen and (max-width: 540px) {
  #list li a {
    font-size: 0.8em;
  }
}

@media screen and (max-width: 430px) {
  #list{
    margin: 1em 0;
  }

  #list ul{
    display: block;
  }

  #list li{
    width: 100%;
    margin: 1% 0;
  }

  #list li a {
    width : 100%;
    margin : 0;
    padding : 2% 0;
    font-size: 1em;
  }

}

h2{
  font-weight: bold;
  font-size: 1.25em;
  border-bottom: solid 3px #5B7B9A;
}

#intro{
  font-size: 0.8em;
  margin:16px 8px 16px 32px;
  padding-left: 1em;
}
#intro ul{
  list-style-type: disc;
}
div[id^=page]{
  display: none;
  opacity: 0;
}

div[id^=page].active{
  display: flex;
  flex-wrap: wrap;
  animation-name: displayAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
}


/*タブ切り替え時のアニメーション*/
@keyframes displayAnime {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}


dl{
  margin: 0.5em;
  width: calc(100% / 5 - 1em);
  border: 1px solid #343a40;
  border-radius: 0.25rem;
}
dt{
  text-align: center;
}
dt a {
  display : inline-block;
  width : 100%;
  height : 100%;
  padding : 0.5em;
  color : #ffffff;
  border-bottom : 1px solid #6c757d;
  border-radius : 0.25rem 0.25rem 0 0 ;
  background : #6c757d;
  font-weight : bold;
}
dt a:hover {
  text-decoration : none;
  background : #ffffff;
}
dd .img {
  padding : 0.5em;
  text-align : center;
}
dd img:hover{
  transition: 0.3s;
  transform: scale(1.1);
}
dd .links {
  display : flex;
  flex-wrap : wrap;
  justify-content : center;
}
dd .links a {
  display : inline-block;
  width : 3.5em;
  margin : 0.5em;
  text-align : center;
  color : #ffffff;
  border : 1px solid #6c757d;
  border-radius : 4px;
  background : #6c757d;
  font-weight: bold;
}
dd .links a:hover{
  text-decoration: none;
  background: #ffffff;
  color: #6c757d;
}

@media(max-width:842px){
  dl{
    width: calc(100% / 4 - 1em);
  }
}
@media(max-width:700px){
  dl{
    width: calc(100% / 3 - 1em);
  }
}
@media(max-width:540px){
  dl{
    width: calc(100% / 2 - 1em);
  }
  #intro{
    margin: 16px 8px;
  }
  div[id^=page]{
    margin:0 -1em ;
  }
}

.prepare {
  pointer-events: none;
}