/* mixin var
-----------------------------------------------------*/
/* reset
-----------------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

img {
  vertical-align: top;
}

h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
}

body {
  line-height: 1;
}

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/* html
-----------------------------------------------------*/
html {
  overflow: auto;
  font-size: 62.5%;
}

body {
  background: #EAF4FA;
  color: #333;
  font: 1.4rem/1.8 "Helvetica Neue", Arial, YuGothic, "Yu Gothic Medium", "Yu Gothic","Hiragino Kaku Gothic ProN","Hiragino Sans", Meiryo, sans-serif;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100vh;
  padding: 0 5%;
}

@media (min-width: 768px) {
  body {
    padding: 0;
  }
}

@media (min-width: 1024px) {
  body {
    font-size: 1.6rem;
  }
}

/* link
-----------------------------------------------------*/
a {
  color: #0171bb;
  -webkit-transition: 0.3s linear;
  transition: 0.3s linear;
}

a:hover, a:active, a:focus {
  color: #57bcfe;
}

a:active {
  padding: 0;
  margin: 0;
}

/*utility
-----------------------------------------------------*/
img {
  max-width: 100%;
  height: auto;
}

ol {
  padding-left: 1em;
}

.float-l {
  float: left;
}

.float-r {
  float: right;
}

.en {
  font-family: 'Roboto', sans-serif;
  text-transform: uppercase;
}

.mincho {
  font-family: "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

em {
  font-style: normal;
  font-weight: bold;
}

.line {
  background: rgba(0, 0, 0, 0) -webkit-gradient(linear, left top, left bottom, color-stop(80%, transparent), color-stop(0%, #fffa73)) repeat scroll 0 0;
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 80%, #fffa73 0%) repeat scroll 0 0;
}

.indent-list {
  text-indent: -1em;
  padding-left: 1em;
}

.disc-list {
  list-style: disc;
  padding-left: 1.5em;
}

.main-color {
  color: #0171bb !important;
}

.act-color {
  color: #eed636 !important;
}

.caution {
  color: #A52929 !important;
}

.bold {
  font-weight: bold;
}

.align-c {
  text-align: center;
}

.align-l {
  text-align: left;
}

.align-r {
  text-align: right;
}

@media (min-width: 640px) {
  .sm-align-c {
    text-align: center;
  }
}

.pos-r {
  position: relative;
}

.box-shadow {
  -webkit-box-shadow: 0 0 40px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 40px rgba(0, 0, 0, 0.1);
}

.font-s {
  font-size: 1rem;
}

@media (min-width: 640px) {
  .font-s {
    font-size: 1.2rem;
  }
}

.font-m {
  font-size: 1.6rem;
}

@media (min-width: 640px) {
  .font-m {
    font-size: 1.8rem;
  }
}

.bg-light-blue01 {
  background: #EAF4FA;
}

.bg-blue-pattern {
  background: repeating-linear-gradient(-45deg, #0171bb, #0171bb 10px, #0674bc 0, #0674bc 20px);
}

.sm-block,
.md-block,
.lg-block,
.xl-block {
  display: none;
}

@media (min-width: 640px) {
  .sm-block {
    display: block;
  }
}

@media (min-width: 768px) {
  .md-block {
    display: block;
  }
}

@media (min-width: 1024px) {
  .lg-block {
    display: block;
  }
}

@media (min-width: 1200px) {
  .xl-block {
    display: block;
  }
}

@media (min-width: 640px) {
  .sm-none {
    display: none;
  }
}

@media (min-width: 768px) {
  .md-none {
    display: none;
  }
}

@media (min-width: 1024px) {
  .lg-none {
    display: none;
  }
}

@media (min-width: 1200px) {
  .xl-none {
    display: none;
  }
}

.m-t-0 {
  margin-top: 0 !important;
}

.m-b-0 {
  margin-bottom: 0 !important;
}

.p-t-0 {
  padding-top: 0 !important;
}

.p-b-0 {
  padding-bottom: 0 !important;
}

.p-l-0 {
  padding-left: 0 !important;
}

.p-r-0 {
  padding-right: 0 !important;
}

/*
https://gist.github.com/jacurtis/30da4bf9a6c9b9b5cc0aebac512ca7c9
This .scss loop will create "margin helpers" and "padding helpers" for use in your web projects.
It will generate several classes such as:

.m-r-10 which gives margin-right 10 pixels.
.m-r-15 gives MARGIN to the RIGHT 15 pixels.
.m-t-15 gives MARGIN to the TOP 15 pixels and so on.

.p-b-5 gives PADDING to the BOTTOM of 5 pixels
.p-l-40 gives PADDING to the LEFT of 40 pixels

The first letter is "m" or "p" for MARGIN or PADDING
Second letter is "t", "b", "l", or "r" for TOP, BOTTOM, LEFT, or RIGHT
Third letter is the number of spacing in pixels. Adjust the amounts generated by editing the $spaceamounts variable below.

     m-[tblr]-[5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 75, 100]
     p-[tblr]-[5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 75, 100]

*/
.s-m-t-5 {
  margin-top: 5px !important;
}

.s-p-t-5 {
  padding-top: 5px !important;
}

.s-m-b-5 {
  margin-bottom: 5px !important;
}

.s-p-b-5 {
  padding-bottom: 5px !important;
}

.s-m-l-5 {
  margin-left: 5px !important;
}

.s-p-l-5 {
  padding-left: 5px !important;
}

.s-m-r-5 {
  margin-right: 5px !important;
}

.s-p-r-5 {
  padding-right: 5px !important;
}

.s-m-t-10 {
  margin-top: 10px !important;
}

.s-p-t-10 {
  padding-top: 10px !important;
}

.s-m-b-10 {
  margin-bottom: 10px !important;
}

.s-p-b-10 {
  padding-bottom: 10px !important;
}

.s-m-l-10 {
  margin-left: 10px !important;
}

.s-p-l-10 {
  padding-left: 10px !important;
}

.s-m-r-10 {
  margin-right: 10px !important;
}

.s-p-r-10 {
  padding-right: 10px !important;
}

.s-m-t-15 {
  margin-top: 15px !important;
}

.s-p-t-15 {
  padding-top: 15px !important;
}

.s-m-b-15 {
  margin-bottom: 15px !important;
}

.s-p-b-15 {
  padding-bottom: 15px !important;
}

.s-m-l-15 {
  margin-left: 15px !important;
}

.s-p-l-15 {
  padding-left: 15px !important;
}

.s-m-r-15 {
  margin-right: 15px !important;
}

.s-p-r-15 {
  padding-right: 15px !important;
}

.s-m-t-20 {
  margin-top: 20px !important;
}

.s-p-t-20 {
  padding-top: 20px !important;
}

.s-m-b-20 {
  margin-bottom: 20px !important;
}

.s-p-b-20 {
  padding-bottom: 20px !important;
}

.s-m-l-20 {
  margin-left: 20px !important;
}

.s-p-l-20 {
  padding-left: 20px !important;
}

.s-m-r-20 {
  margin-right: 20px !important;
}

.s-p-r-20 {
  padding-right: 20px !important;
}

.s-m-t-25 {
  margin-top: 25px !important;
}

.s-p-t-25 {
  padding-top: 25px !important;
}

.s-m-b-25 {
  margin-bottom: 25px !important;
}

.s-p-b-25 {
  padding-bottom: 25px !important;
}

.s-m-l-25 {
  margin-left: 25px !important;
}

.s-p-l-25 {
  padding-left: 25px !important;
}

.s-m-r-25 {
  margin-right: 25px !important;
}

.s-p-r-25 {
  padding-right: 25px !important;
}

.s-m-t-30 {
  margin-top: 30px !important;
}

.s-p-t-30 {
  padding-top: 30px !important;
}

.s-m-b-30 {
  margin-bottom: 30px !important;
}

.s-p-b-30 {
  padding-bottom: 30px !important;
}

.s-m-l-30 {
  margin-left: 30px !important;
}

.s-p-l-30 {
  padding-left: 30px !important;
}

.s-m-r-30 {
  margin-right: 30px !important;
}

.s-p-r-30 {
  padding-right: 30px !important;
}

.s-m-t-35 {
  margin-top: 35px !important;
}

.s-p-t-35 {
  padding-top: 35px !important;
}

.s-m-b-35 {
  margin-bottom: 35px !important;
}

.s-p-b-35 {
  padding-bottom: 35px !important;
}

.s-m-l-35 {
  margin-left: 35px !important;
}

.s-p-l-35 {
  padding-left: 35px !important;
}

.s-m-r-35 {
  margin-right: 35px !important;
}

.s-p-r-35 {
  padding-right: 35px !important;
}

.s-m-t-40 {
  margin-top: 40px !important;
}

.s-p-t-40 {
  padding-top: 40px !important;
}

.s-m-b-40 {
  margin-bottom: 40px !important;
}

.s-p-b-40 {
  padding-bottom: 40px !important;
}

.s-m-l-40 {
  margin-left: 40px !important;
}

.s-p-l-40 {
  padding-left: 40px !important;
}

.s-m-r-40 {
  margin-right: 40px !important;
}

.s-p-r-40 {
  padding-right: 40px !important;
}

.s-m-t-45 {
  margin-top: 45px !important;
}

.s-p-t-45 {
  padding-top: 45px !important;
}

.s-m-b-45 {
  margin-bottom: 45px !important;
}

.s-p-b-45 {
  padding-bottom: 45px !important;
}

.s-m-l-45 {
  margin-left: 45px !important;
}

.s-p-l-45 {
  padding-left: 45px !important;
}

.s-m-r-45 {
  margin-right: 45px !important;
}

.s-p-r-45 {
  padding-right: 45px !important;
}

.s-m-t-50 {
  margin-top: 50px !important;
}

.s-p-t-50 {
  padding-top: 50px !important;
}

.s-m-b-50 {
  margin-bottom: 50px !important;
}

.s-p-b-50 {
  padding-bottom: 50px !important;
}

.s-m-l-50 {
  margin-left: 50px !important;
}

.s-p-l-50 {
  padding-left: 50px !important;
}

.s-m-r-50 {
  margin-right: 50px !important;
}

.s-p-r-50 {
  padding-right: 50px !important;
}

.s-m-t-60 {
  margin-top: 60px !important;
}

.s-p-t-60 {
  padding-top: 60px !important;
}

.s-m-b-60 {
  margin-bottom: 60px !important;
}

.s-p-b-60 {
  padding-bottom: 60px !important;
}

.s-m-l-60 {
  margin-left: 60px !important;
}

.s-p-l-60 {
  padding-left: 60px !important;
}

.s-m-r-60 {
  margin-right: 60px !important;
}

.s-p-r-60 {
  padding-right: 60px !important;
}

.s-m-t-70 {
  margin-top: 70px !important;
}

.s-p-t-70 {
  padding-top: 70px !important;
}

.s-m-b-70 {
  margin-bottom: 70px !important;
}

.s-p-b-70 {
  padding-bottom: 70px !important;
}

.s-m-l-70 {
  margin-left: 70px !important;
}

.s-p-l-70 {
  padding-left: 70px !important;
}

.s-m-r-70 {
  margin-right: 70px !important;
}

.s-p-r-70 {
  padding-right: 70px !important;
}

.s-m-t-80 {
  margin-top: 80px !important;
}

.s-p-t-80 {
  padding-top: 80px !important;
}

.s-m-b-80 {
  margin-bottom: 80px !important;
}

.s-p-b-80 {
  padding-bottom: 80px !important;
}

.s-m-l-80 {
  margin-left: 80px !important;
}

.s-p-l-80 {
  padding-left: 80px !important;
}

.s-m-r-80 {
  margin-right: 80px !important;
}

.s-p-r-80 {
  padding-right: 80px !important;
}

.s-m-t-100 {
  margin-top: 100px !important;
}

.s-p-t-100 {
  padding-top: 100px !important;
}

.s-m-b-100 {
  margin-bottom: 100px !important;
}

.s-p-b-100 {
  padding-bottom: 100px !important;
}

.s-m-l-100 {
  margin-left: 100px !important;
}

.s-p-l-100 {
  padding-left: 100px !important;
}

.s-m-r-100 {
  margin-right: 100px !important;
}

.s-p-r-100 {
  padding-right: 100px !important;
}

@media (min-width: 768px) {
  .m-t-5 {
    margin-top: 5px !important;
  }
  .p-t-5 {
    padding-top: 5px !important;
  }
  .m-b-5 {
    margin-bottom: 5px !important;
  }
  .p-b-5 {
    padding-bottom: 5px !important;
  }
  .m-l-5 {
    margin-left: 5px !important;
  }
  .p-l-5 {
    padding-left: 5px !important;
  }
  .m-r-5 {
    margin-right: 5px !important;
  }
  .p-r-5 {
    padding-right: 5px !important;
  }
  .m-t-10 {
    margin-top: 10px !important;
  }
  .p-t-10 {
    padding-top: 10px !important;
  }
  .m-b-10 {
    margin-bottom: 10px !important;
  }
  .p-b-10 {
    padding-bottom: 10px !important;
  }
  .m-l-10 {
    margin-left: 10px !important;
  }
  .p-l-10 {
    padding-left: 10px !important;
  }
  .m-r-10 {
    margin-right: 10px !important;
  }
  .p-r-10 {
    padding-right: 10px !important;
  }
  .m-t-15 {
    margin-top: 15px !important;
  }
  .p-t-15 {
    padding-top: 15px !important;
  }
  .m-b-15 {
    margin-bottom: 15px !important;
  }
  .p-b-15 {
    padding-bottom: 15px !important;
  }
  .m-l-15 {
    margin-left: 15px !important;
  }
  .p-l-15 {
    padding-left: 15px !important;
  }
  .m-r-15 {
    margin-right: 15px !important;
  }
  .p-r-15 {
    padding-right: 15px !important;
  }
  .m-t-20 {
    margin-top: 20px !important;
  }
  .p-t-20 {
    padding-top: 20px !important;
  }
  .m-b-20 {
    margin-bottom: 20px !important;
  }
  .p-b-20 {
    padding-bottom: 20px !important;
  }
  .m-l-20 {
    margin-left: 20px !important;
  }
  .p-l-20 {
    padding-left: 20px !important;
  }
  .m-r-20 {
    margin-right: 20px !important;
  }
  .p-r-20 {
    padding-right: 20px !important;
  }
  .m-t-25 {
    margin-top: 25px !important;
  }
  .p-t-25 {
    padding-top: 25px !important;
  }
  .m-b-25 {
    margin-bottom: 25px !important;
  }
  .p-b-25 {
    padding-bottom: 25px !important;
  }
  .m-l-25 {
    margin-left: 25px !important;
  }
  .p-l-25 {
    padding-left: 25px !important;
  }
  .m-r-25 {
    margin-right: 25px !important;
  }
  .p-r-25 {
    padding-right: 25px !important;
  }
  .m-t-30 {
    margin-top: 30px !important;
  }
  .p-t-30 {
    padding-top: 30px !important;
  }
  .m-b-30 {
    margin-bottom: 30px !important;
  }
  .p-b-30 {
    padding-bottom: 30px !important;
  }
  .m-l-30 {
    margin-left: 30px !important;
  }
  .p-l-30 {
    padding-left: 30px !important;
  }
  .m-r-30 {
    margin-right: 30px !important;
  }
  .p-r-30 {
    padding-right: 30px !important;
  }
  .m-t-35 {
    margin-top: 35px !important;
  }
  .p-t-35 {
    padding-top: 35px !important;
  }
  .m-b-35 {
    margin-bottom: 35px !important;
  }
  .p-b-35 {
    padding-bottom: 35px !important;
  }
  .m-l-35 {
    margin-left: 35px !important;
  }
  .p-l-35 {
    padding-left: 35px !important;
  }
  .m-r-35 {
    margin-right: 35px !important;
  }
  .p-r-35 {
    padding-right: 35px !important;
  }
  .m-t-40 {
    margin-top: 40px !important;
  }
  .p-t-40 {
    padding-top: 40px !important;
  }
  .m-b-40 {
    margin-bottom: 40px !important;
  }
  .p-b-40 {
    padding-bottom: 40px !important;
  }
  .m-l-40 {
    margin-left: 40px !important;
  }
  .p-l-40 {
    padding-left: 40px !important;
  }
  .m-r-40 {
    margin-right: 40px !important;
  }
  .p-r-40 {
    padding-right: 40px !important;
  }
  .m-t-45 {
    margin-top: 45px !important;
  }
  .p-t-45 {
    padding-top: 45px !important;
  }
  .m-b-45 {
    margin-bottom: 45px !important;
  }
  .p-b-45 {
    padding-bottom: 45px !important;
  }
  .m-l-45 {
    margin-left: 45px !important;
  }
  .p-l-45 {
    padding-left: 45px !important;
  }
  .m-r-45 {
    margin-right: 45px !important;
  }
  .p-r-45 {
    padding-right: 45px !important;
  }
  .m-t-50 {
    margin-top: 50px !important;
  }
  .p-t-50 {
    padding-top: 50px !important;
  }
  .m-b-50 {
    margin-bottom: 50px !important;
  }
  .p-b-50 {
    padding-bottom: 50px !important;
  }
  .m-l-50 {
    margin-left: 50px !important;
  }
  .p-l-50 {
    padding-left: 50px !important;
  }
  .m-r-50 {
    margin-right: 50px !important;
  }
  .p-r-50 {
    padding-right: 50px !important;
  }
  .m-t-60 {
    margin-top: 60px !important;
  }
  .p-t-60 {
    padding-top: 60px !important;
  }
  .m-b-60 {
    margin-bottom: 60px !important;
  }
  .p-b-60 {
    padding-bottom: 60px !important;
  }
  .m-l-60 {
    margin-left: 60px !important;
  }
  .p-l-60 {
    padding-left: 60px !important;
  }
  .m-r-60 {
    margin-right: 60px !important;
  }
  .p-r-60 {
    padding-right: 60px !important;
  }
  .m-t-70 {
    margin-top: 70px !important;
  }
  .p-t-70 {
    padding-top: 70px !important;
  }
  .m-b-70 {
    margin-bottom: 70px !important;
  }
  .p-b-70 {
    padding-bottom: 70px !important;
  }
  .m-l-70 {
    margin-left: 70px !important;
  }
  .p-l-70 {
    padding-left: 70px !important;
  }
  .m-r-70 {
    margin-right: 70px !important;
  }
  .p-r-70 {
    padding-right: 70px !important;
  }
  .m-t-80 {
    margin-top: 80px !important;
  }
  .p-t-80 {
    padding-top: 80px !important;
  }
  .m-b-80 {
    margin-bottom: 80px !important;
  }
  .p-b-80 {
    padding-bottom: 80px !important;
  }
  .m-l-80 {
    margin-left: 80px !important;
  }
  .p-l-80 {
    padding-left: 80px !important;
  }
  .m-r-80 {
    margin-right: 80px !important;
  }
  .p-r-80 {
    padding-right: 80px !important;
  }
  .m-t-100 {
    margin-top: 100px !important;
  }
  .p-t-100 {
    padding-top: 100px !important;
  }
  .m-b-100 {
    margin-bottom: 100px !important;
  }
  .p-b-100 {
    padding-bottom: 100px !important;
  }
  .m-l-100 {
    margin-left: 100px !important;
  }
  .p-l-100 {
    padding-left: 100px !important;
  }
  .m-r-100 {
    margin-right: 100px !important;
  }
  .p-r-100 {
    padding-right: 100px !important;
  }
}

/*
  RUN GULP to generate the classes. Now you can use these helpers to customize spacing on HTML elements.
*/
.login-box {
  width: 100%;
  max-width: 460px;
  background: #fff;
  border-radius: 10px;
  padding: 4rem 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .login-box {
    width: 460px;
    margin: 0 auto;
    padding: 6rem 6rem 7rem;
  }
}

.login-box .login-box__title {
  width: 100%;
  max-width: 200px;
  margin: 0 auto 2rem;
}

@media (min-width: 768px) {
  .login-box .login-box__title {
    width: 220px;
    max-width: initial;
    margin: 0 auto 3rem;
  }
}

.login-box .form-item:nth-of-type(n+2) {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .login-box .form-item:nth-of-type(n+2) {
    margin-top: 3rem;
  }
}

.login-box .form-item label {
  display: block;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 1rem;
}

.login-box .form-item .input-item {
  border: 1px solid #ccc;
  padding: 1.5rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 4px;
}

.login-box .submit-btn {
  margin-top: 3rem;
}

.login-box .submit-btn.onerror {
  margin-top: 1rem;
}

@media (min-width: 768px) {
  .login-box .submit-btn {
    margin-top: 4rem;
  }

  .login-box .submit-btn.onerror {
    margin-top: 1rem;
  }

}

#login {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: none;
  color: #fff;
  background: #0171bb;
  border-radius: 4px;
  text-decoration: none;
  font-size: 1.6rem;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.5rem;
  display: inline-block;
  font-weight: bold;
  -webkit-transition: .2s;
  transition: .2s;
  outline: none;
}

@media (min-width: 768px) {
  #login {
    background: #0171bb;
  }
  #login:hover, #login:active, #login:focus {
    background: #57bcfe;
  }
}

#errorMsg{
  color: red;
  font-weight: bold;
}

/*# sourceMappingURL=style.css.map */