/*-----------------------------------------------------------------------------------------------------*/
/* 基本・リセット */
/*-----------------------------------------------------------------------------------------------------*/
html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background: #dedcdc;
	font-family: "Segoe UI", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}
body, td, th { font-size: 13px; color: #333333; }

a { color: #0066cc; }
a:hover { text-decoration: underline; color: #00ffff; }

h1, h2 { margin: 0; font-weight: normal; }
h1 { font-size: 24px; font-weight: bold; }

/*-----------------------------------------------------------------------------------------------------*/
/* Layout */
/*-----------------------------------------------------------------------------------------------------*/
.login-container {
  text-align: center;
  padding-top: 0;
}

.login-logo {
  margin-bottom: 30px;
}

.logo-sp {
  display: none;
}

.login-input-group {
  margin-bottom: 15px;
}

.login-checkbox {
  margin-bottom: 20px;
}

.login-button {
  margin-bottom: 24px;
}

.login-link {
  margin-bottom: 20px;
}

/*-----------------------------------------------------------------------------------------------------*/
/* Form */
/*-----------------------------------------------------------------------------------------------------*/
input[type="text"],
input[type="password"] {
  height: 33px;
  outline: none;
  background: #fff;
  box-sizing: border-box;
  border-radius: 3px;
  transition: 0.2s;
  padding: 6px;
  font-size: 16px;
  border: 1px solid #d4d4d4;
}

.tf-1 {
  width: 300px;
}

.tf-1::placeholder {
  color: #999;
}

.tf-1:focus::placeholder {
  color: transparent;
}

/*-----------------------------------------------------------------------------------------------------*/
/* Button */
/*-----------------------------------------------------------------------------------------------------*/
.bt-pk-xl {
  display: inline-block;
  width: 250px;
  font-size: 16px;
  padding: 14px 0;
  background: #e28bb3;
  color: #fff;
  font-weight: bold;
  border: none;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
  text-align: center;
  transition: background 0.2s ease;
}

.bt-pk-xl:hover {
  background: #d77ca6;
  color: #fff;
  text-decoration: none;
}

/*-----------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
/*-----------------------------------------------------------------------------------------------------*/
  html {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
  }

  body {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
  }

  main#app {
    width: 100%;
    max-width: 100vw;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
  }

  .login-container {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }

  .login-container * {
    max-width: 100%;
    box-sizing: border-box;
  }

  .logo-pc {
    display: none;
  }

  .logo-sp {
    display: block;
    width: 100%;
    height: auto;
  }
}
