/************************************************************************/
/* ログイン画面                                                         */
/************************************************************************/
@import url('https://fonts.googleapis.com/css2?family=Caveat&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP');
@import url('https://fonts.googleapis.com/css2?family=Itim&display=swap');
@import url('https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c');

/* === 全体 =========================================================== */
/* html, body {
  height: 100%;
} */
html {
  height: max-content;
  min-height: 100%;
}

body {
  height: max-content;
  min-height: calc(100vh - 2rem); /* 2rem : margin-bottom */
  box-sizing: border-box;
  position: relative;
  margin-bottom: 2rem !important;
}
/* === BODY =========================================================== */
body {
  display: flex;
  align-items: center;
/*  padding-top: 40px;*/
  padding-top: 4px;
  padding-bottom: 40px;
  background-color: #f5f5f5;

  /*height: 100%;*/
  width: 100%;
  margin: 0;
  padding: 0;
  /*background-image: linear-gradient(180deg, #FFFFFF 70%, #CCCCCC);*/
  text-align: center;
  font-family: 'Segoe UI';

  margin: auto;
}

/* === MAIN CONTENT ================================================= */
.main-content {
  display: flex;
  flex: 1 1 0%;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0);
}


/* === TITLE ======================================================== */
.title_logo {
  max-width: 80%;
  font-weight: bold;
  font-size: 48px;
  text-align: center;
  margin: auto;
  font-family: 'Caveat', cursive;
  font-family: 'Noto Sans JP', sans-serif;
  font-family: 'Noto Serif JP', sans-serif;
  font-family: "Nikukyu";
  font-family: 'Itim', cursive;
  font-family: 'M PLUS Rounded 1c', sans-serif;
}
/* === FOOTER ========================================================= */
footer {
  position: absolute;
  bottom: 0px;
}

/* === WRAPPER ======================================================== */
.wrapper {
  width: 35rem;
  border: solid 1px lightgray;
  padding: 1rem;
  border-radius: 5px;
  background-color: white;
}

/* === FORM =========================================================== */
.logo_img {
/*  text-align: center;*/
  display: block;
  margin: auto;
}

.form-signin {
  width: 100%;
  /*padding: 15px;
  margin: auto;*/
}

.form-signin button {
  margin-top: 5rem;
}

.pwd2 .input-group  {
  width: 100%;
}

.form-signin .checkbox {
  font-weight: 400;
}

/*
.form-signin .form-floating:focus-within {
  z-index: 2;
}*/

.form-signin .input-group {
  margin-top: 2rem;
}

/*.form-signin .login-result {
  position: relative;
}*/

/*.form-signin .login-result .alert{
  width: 100%;
  position: absolute;
}*/


/* === RADIO BUTTON =================================================== */
.select_user_btn{
  width: 50%;
  margin: auto;
  align-items: center;
  text-align: center;
}
.select_radio{
  align-items: center;
  text-align: center;
}
div.form-check{
  margin-bottom: 12px;
  text-align: left;
/*  margin-leftm: 30px;*/
  margin: auto;
  margin-bottom: 10px;
}
input[type="radio"]{
  transform: scale(1);
}
.form-check-label {
  align-items: center;
  text-align: center;
}

.message_box {
  overflow-wrap: break-word;
}
.b-break {
  align-items: start;
  text-align: start;
/*
  word-wrap: normal;
  word-wrap: break-all;
  word-break: normal;
  word-break: break-all;
*/
  word-break: normal;
}
