@charset "UTF-8";

@import url("./normalize.css");
@import url("./common.css");

/* login */
.login {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 500px;
  height: 100vh;
  margin: 0 auto;
  padding: 0 15px;
}
.login .title {
  margin-bottom: 35px;
  font-size: 2.25rem;
  line-height: 1.15;
}
.login .input-box + .input-box {
  margin-top: 15px;
}
.login .input-id,
.login .input-pwd {
  position: relative;
  display: flex;
  align-items: center;
  border: 1px solid #ccc;
  border-radius: 5px;
  transition: 0.2s ease-in-out;
}
.login .input-id:hover,
.login .input-pwd:hover,
.login .input-id:focus,
.login .input-pwd:focus {
  border-color: #4f4f4f;
}
.login i {
  position: absolute;
  top: 50%;
  left: 9px;
  transform: translateY(-50%);
}
.login button[type="button"]:not(.btn-login) {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: block;
  height: 30px;
  width: 30px;
  background-color: transparent;
}
.login input {
  width: 100%;
  padding: 9px 30px;
}
.login input::placeholder {
  font-size: 14px;
}
.login .helper-text {
  display: block;
  color: #ff0000;
  margin: 7px 0;
}
.login .btn-login {
  display: block;
  width: 210px;
  height: 50px;
  margin: 37px auto;
  padding: 10px 10px;
  color: #fff;
  background-color: #4f4f4f;
  border-radius: 5px;
  transition: 0.2s ease-in-out;
}
.login .btn-login:disabled {
  opacity: 0.7;
}

.sidebar {
  height: calc(100vh - 70.8px);
  padding: 15px 20px;
  background-color: #f0f0f0;
}
.sidebar .menu {
  display: block;
  width: 230px;
  padding: 15px;
  color: #fff;
  background-color: #404446;
}

.working-info .sub-title {
  margin: 10px 0;
}
.info-form {
  padding: 20px;
}
.info-form > div {
  display: flex;
  column-gap: 50px;
}
.info-form > div + div {
  margin-top: 15px;
}
.info-form .label {
  font-weight: 500;
}
.info-form .input-group,
.info-form .radio-group,
.info-form .textarea-group {
  width: 310px;
}
.info-form .radio-box {
  display: inline-flex;
  align-items: center;
  column-gap: 10px;
}
.info-form .radio-box + .radio-box {
  margin-left: 30px;
}
.info-form .radio-box input[type="radio"] {
  appearance: none;
  width: 16px;
  height: 16px;
  background: url("../images/ico_radio.png") no-repeat center center / 100% 100%;
}
.info-form .radio-box input[type="radio"]:checked {
  background-image: url("../images/ico_radio_active.png");
}
.info-form .input-box {
  position: relative;
  display: flex;
  align-items: center;
  border: 1px solid #ccc;
  border-radius: 5px;
  transition: 0.2s ease-in-out;
}
.info-form .input-box:hover,
.info-form .input-box:focus {
  border-color: #4f4f4f;
  outline: none;
}
.info-form .input-box input {
  width: 100%;
  padding: 10px;
  padding-right: 30px;
}
.info-form .input-box textarea {
  width: 100%;
  border: none;
  padding: 10px;
  padding-right: 30px;
  resize: none;
}
.info-form .input-box button {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: block;
  height: 30px;
  width: 30px;
  background-color: transparent;
}
.info-form i {
  position: absolute;
  top: 50%;
  left: 9px;
  transform: translateY(-50%);
}
.info-form .helper-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 7px;
}
.info-form .helper-text {
  display: block;
  color: #ff0000;
  margin: 7px 0;
}
.info-form .btn-edit-content {
  display: block;
  width: 210px;
  height: 50px;
  margin-top: 37px;
  padding: 10px 10px;
  color: #fff;
  background-color: #4f4f4f;
  border-radius: 5px;
  transition: 0.2s ease-in-out;
}
.info-form .btn-edit-content:disabled {
  opacity: 0.7;
}
