[data-fv] {
  width: 100vw;
  height: 1080px;
  position: absolute;
  top: 0;
  border: solid 1px #dc143c;
  z-index: 999;
  pointer-events: none;
}

body {
background: #f1f1f1;
overflow: hidden;

  main {
  padding: 0 !important;
  min-width: 1400px;
  max-width: 100%;
  height: 100% !important;
  display: flex;
  flex-direction: column;

    [data-title] {
    width: 100vw;
    min-width: 1400px;
    height: 150px;
    background-image: url(../img/u000/bg.jpg);
    background-size: cover;
    background-position: center center;
    position: relative;
    flex-shrink: 0;

      &::before {
      content: "";
      background-color: #38b48b;
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      z-index: 1;
      opacity: 0.95;
      }

      & > h1 {
      height: 100%;
      color: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 2;
      position: relative;
      letter-spacing: 2px;
      font-size: 26px;
      font-weight: 700;
      }
    }

    [data-wrap] {
    margin: 0 auto;
    padding: 0 35px;
    width: 100%;
    display: flex;
    align-items: stretch;
    flex: 1;

      & > div {
      padding: 80px 50px 0 15px;
      width: 40%;

        &:nth-of-type(1) {
        
          h2 {
          text-align: center;
          font-size: 18px;
          font-weight: 300;
          font-size: 20px;
          font-weight: 600;
          }

          section {
          margin: 25px auto 0 auto;
          padding: 20px 40px;
          background-color: #fff;



            h2 {
            color: #dc143c;
            line-height: 1.3;
            font-size: 18px;
            font-weight: 600;
            }

            p {
            margin-top: 15px;
            line-height: 1.3;
            word-break: break-all;
            font-size: 14px;
            font-weight: 600;

              a {
              text-decoration: underline;

                &:hover {
                  opacity: 0.7;
                }
              }
            }
          }
        }

        &:nth-of-type(2) {

        width: 60%;
        display: flex;
        align-items: stretch;

          & > div {
          width: calc(50% - 25px);

            &:nth-of-type(1) {
            margin-right: 50px;
            }

             h2 {
            text-align: center;
            font-size: 20px;
          font-weight: 600;
            

              & + p {
              margin-top: 20px;
              line-height: 1.3;
              text-align: center;
              }
            }

            [data-new] {

              a {
              margin: 40px auto 0 auto;
              width: 350px;
              border-radius: 30px;

                & + p {
                margin-top: 30px;
                text-align: center;
                font-size: 15px;
                }
              }

              
            }

            [data-login] form {

              .err_block {
              margin-top: 30px;
              }

              & > ul {
                margin-top: 30px;

                & > li {
                  &:nth-of-type(2) {
                  margin-top: 20px;
                  }

                  &:nth-of-type(3) {
                  margin-top: 40px;
                  }

                  &:nth-of-type(4) {
                  margin-top: 25px;

                    p {
                    text-align: center;

                      a {
                      text-decoration: underline;

                        &:hover {
                        opacity: 0.7;
                        }
                      }
                    }
                  }

                  dl {
                  display: flex;
                  align-items: center;
                  justify-content: center;

                    dt {
                    width: 90px;
                    }

                    dd {
                    margin-left: 20px;
                    flex: 1;

                      input {
                      width: 100%;
                      height: 50px;
                      border: none;
                      text-align: center;
                      border-bottom: solid 1px #ddd;
                      background-color: #fff;
                      color: #3eb370;
                      font-size: 20px;
                      font-weight: 600;

                        &::placeholder {
                        color: #ccc;
                        font-size: 14px;
                        font-weight: 200;
                        }

                        &:focus {
                        border-bottom: solid 1px #3eb370;
                        }
                      }
                    }
                  }

                  a {
                  margin: 0 auto;
                  width: 300px;
                  height: 45px;
                  }
                }
              }
            }
          }
        }

        
      }
    }
  }
}
