/*=============================================
=            COMMON            =
=============================================*/
main {
  margin-top: 80px;
  color: #333;
}

/* MEDIA QUERY MEDIUM */
@media only screen and (min-width: 768px) {
  main {
    margin-top: 90px;
  }
}
/*=====  End of COMMON  ======*/

/*=============================================
=            PAGEHEAD            =
=============================================*/
#pageHead {
  margin-top: 0px;
  padding-top: 80px;
  position: relative;
}
#pageHead .bgDots {
  content: "";
  position: absolute;
  top: 10px;
  left: 15px;
  width: 100px;
  z-index: 1;
}

#pageHead .bgDots.tr {
  content: "";
  position: absolute;
  top: 1;
  left: auto;
  right: 15px;
  z-index: 1;
}

#pageHead h1 {
  text-align: center;
  font-size: 2.8rem;
  font-weight: 900;
  color: #002f7b;
}

#pageHead .dscBox {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
}

/* MEDIA QUERY MEDIUM */
@media only screen and (min-width: 768px) {
  #pageHead {
    margin-top: 40px;
    padding-top: 40px;
  }

  #pageHead .bgDots {
    width: 195px;
    top: 0%;
    left: 2%;
  }
  #pageHead .bgDots.tr {
    right: 2%;
  }
  #pageHead .annoBox ul {
    font-size: 1.4rem;
  }
  #pageHead h1 {
    font-size: 3.6rem;
  }
}

/*=====  End of PAGEHEAD  ======*/

/*=============================================
=            PATTERN            =
=============================================*/
#pattern {
  padding-top: 80px;
}
#pattern h2 {
  text-align: center;
  font-size: 2rem;
  color: #002f7b;
}
#pattern .patternWrapper {
  margin-top: 50px;
  margin-bottom: 20px;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
}

#pattern .patternWrapper hr {
  margin: 50px auto;
}

#pattern .patternWrapper .patternRow .patternName {
  text-align: center;

  font-size: 2rem;
  font-weight: bold;
}
#pattern .patternWrapper .patternRow .patternArrow {
  margin: 20px auto;
  max-width: 250px;
  text-align: center;
}

#pattern .patternWrapper .patternRow .patternLogo {
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
}
#pattern .excludedBox {
  background-color: #f7f7f7;
  padding: 50px 20px;
  margin-top: 80px;
}

#pattern .excludedBox h6 {
  font-size: 1.8rem;
  margin-bottom: 0.5em;
}
#pattern .excludedBox ul {
  padding-left: 0;
  margin-bottom: 0;
  list-style-type: none;
  font-size: 1.4rem;
}
#pattern .excludedBox ul li {
  padding-left: 1em;
  text-indent: -1em;
}
#pattern .excludedBox a {
  color: #002f7b;
  text-decoration: underline;
}

/* MEDIA QUERY MEDIUM */
@media only screen and (min-width: 768px) {
  #pattern h2 {
    font-size: 3rem;
  }

  #pattern .excludedBox {
    padding: 60px 50px;
    margin-top: 80px;
  }
  #pattern .patternWrapper {
    margin-bottom: 50px;
  }
  #pattern .excludedBox ul {
    font-size: 1.6rem;
  }
}

/* MEDIA QUERY LARGE */
@media only screen and (min-width: 992px) {
  #pattern .patternWrapper .patternRow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  #pattern .patternWrapper .patternRow .patternName {
    text-align: left;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 330px;
    flex: 0 0 330px;
  }
  #pattern .patternWrapper .patternRow .patternArrow {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 250px;
    flex: 0 0 250px;
    margin: auto;
    max-width: none;
  }

  #pattern .patternWrapper .patternRow .patternLogo {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 330px;
    flex: 0 0 330px;
    padding: 50px;
    max-width: none;
  }
}
/*=====  End of PATTERN  ======*/

/*=============================================
=            PAGE BOTTOM            =
=============================================*/
#pageBottom {
  position: relative;
  height: 100px;
}
#pageBottom .bgDots {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  width: 100px;
  z-index: 1;
  -webkit-transform: rotate(180deg) translateY(50%);
  -ms-transform: rotate(180deg) translateY(50%);
  transform: rotate(180deg) translateY(50%);
}

#pageBottom .bgDots.br {
  content: "";
  position: absolute;
  left: auto;
  right: 15px;
  z-index: 1;
}

/* MEDIA QUERY MEDIUM */
@media only screen and (min-width: 768px) {
  #pageBottom {
    height: 195px;
  }
  #pageBottom .bgDots {
    width: 195px;
  }

  #pageBottom .bgDots {
    left: 2%;
  }

  #pageBottom .bgDots.br {
    right: 2%;
  }
}

/*=====  End of PAGE BOTTOM  ======*/
