/* css for dev env */
.red { border: 1px solid red; }
.blue { border: 1px solid blue; }
.black { border: 1px solid black; }
.white { border: 1px solid white; }
.u-mt-5 { margin-top: 5px; }
.u-mt-10 { margin-top: 10px; }
.u-mt-15 { margin-top: 15px; }
.u-mt-20 { margin-top: 20px; }
.u-mt-25 { margin-top: 25px; }
.u-mt-30 { margin-top: 30px; }
.u-mt-35 { margin-top: 35px; }
.u-mt-40 { margin-top: 40px; }
.u-mt-45 { margin-top: 45px; }
.u-mt-50 { margin-top: 50px; }
.u-mb-5 { margin-bottom: 5px; }
.u-mb-10 { margin-bottom: 10px; }
.u-mb-15 { margin-bottom: 15px; }
.u-mb-20 { margin-bottom: 20px; }
.u-mb-25 { margin-bottom: 25px; }
.u-mb-30 { margin-bottom: 30px; }
.u-mb-35 { margin-bottom: 35px; }
.u-mb-40 { margin-bottom: 40px; }
.u-mb-45 { margin-bottom: 45px; }
.u-mb-50 { margin-bottom: 50px; }

/*********** Common ***********/
html {
  -webkit-text-size-adjust: 100%;
}
.body {
  background: #ffffff;
}

/*********** layout ***********/

/** header **/
.header {
  min-width: 600px;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  border-top: 7px solid #40A34A;
  height: 75px;
}
.header-inner {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  width: 960px;
  margin-right: auto;
  margin-left: auto;
}
.header-logo {
  width: 300px;
}
.header-logo-inner {
  display: block;
  padding: 0 5%;
}
.header-logo-inner p {
  color: #40A34A;
  font-size: 20px;
  font-weight: 900;
}
.header-logo-inner > small {
  color: #000;
  font-size: 10px;
}
.header-contact {
  width: 200px;
}
.header-contact-inner {
  display: block;
  margin: auto;
  padding: 0 5%;
}
.header-contact-inner > p {
  color: #000;
  font-size: 11px;
  text-align: left;
}
.top-nav {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  height: 50px;
  min-width: 600px;
  background-color: #e9e9e9;
  font-size: 15px;
  border-top: 1px solid #b6b6b6;
  border-bottom: 1px solid #b6b6b6;
}
.top-nav-inner {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  width: 960px;
  margin-right: auto;
  margin-left: auto;
}
.nav-top-item {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 50px;
  text-align: center;
  font-size: 13px;
  color: #555555;
  border-right: 1px solid #b6b6b6;
}
.nav-top-item.nav-top-first {
  margin-left: 10px;
  border-left: 1px solid #b6b6b6;
}
.nav-top-item.active {
  border-top: 3px solid #40A34A;
}
a {
  text-decoration: none;
}
.nav-top-item > a:visited {
  color: #555555;
}
.nav-top-item:hover {
  border-bottom: 3px solid #40A34A;
}

/*********** main ***********/
.container {
  display: flex;
  flex-flow: row nowrap;
  min-width: 600px;
}
.wrapper {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  width: 960px;
  margin-right: auto;
  margin-left: auto;
}
.wrapper-inner {
  width: 93%;
  border-top: 3px solid #40A34A;
}
.main-heading {
  padding: 2px 1px 0px 0px;
  border-top: 2px solid #40A34A;
  border-bottom: 1px solid #797979;
}
.main-heading .top-heading {
  display: block;
  height: 30px;
  line-height: 30px;
  width: 120px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}
.misaki-heading {
  display: inline-block;
  width: 200px;
  text-align: center;
  color: #1932b5;
  font-size: 15px;
  font-weight: bold;
  vertical-align: middle;
}

/*********** top ***********/
.heading-number {
  color: #40A34A;
  font-size: 17px;
  font-weight: 700;
}
.top-input-parts {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.top-input-parts-1 {
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-around;
  width: 300px;
}
.top-input-parts-2 {
  display: flex;
  flex-flow: column nowrap;
  margin-left: 30px;
}
.top-input-item {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 40px;
}
.top-input-item > label {
  width: 100px;
  text-align: center;
}
.top-input-item > input {
  width: 200px;
}
.top-input-item > p {
  width: 200px;
}
.top-input-notice {
  width: 340px;
  height: 40px;
  margin-left: 10px;
}
.top-input-notice > span {
  color: red;
  font-size: 12px;
}
.bn-input-column-mail {
  background-color: #40A34A;
  color: #fff;
}
.bn-input-mail {
  background: #fff;
  margin-top: -2px;
}
.bn-input {
  text-align: center;
}
.bn-input:focus {
  -webkit-appearance: none;
  box-shadow: 0 0 7px #3498db;
  border: 1px solid #3498db;
  border-radius: 4px;
}
.ui-datepicker {
  font-size: 90%;
  margin: auto;
}
.top-date-input {
  font-size: 12px;
}
.heading-blue {
  display: inline-block;
  width: 100px;
  text-align: center;
  color: #1932b5;
  font-size: 15px;
  font-weight: bold;
  vertical-align: middle;
}
.heading-span {
  font-size: 11px;
  vertical-align: middle;
}
.bn-button {
  display: block;
  height: 37px;
  width: 100px;
  line-height: 37px;
  font-weight: 500;
  background-color: #40A34A;
  border: 2px solid #40A34A;
  border-radius: 5px;
  color: #fff;
}
.bn-add {
  width: 600px;
}
.bn-add-edit {
  width: 600px;
}
.bn-add.bn-button {
  margin: auto;
}
.bn-print-page {
  width: 400px;
}
.bn-print-page.bn-button {
  margin: auto;
}
.bn-delete {
  width: 400px;
}
.bn-delete-edit {
  width: 600px;
}
.bn-delete.bn-button {
  margin: auto;
}
.bn-button:hover {
  background-color: #fff;
  border-color: #40A34A;
  color: #40A34A;
  font-size: 14px;
  font-weight: 600;
}
.bn-join-arrow {
  display: block;
  margin: auto;
}
.date-val {
  text-align: center;
  width: 305px;
}
.bn-error {
  width: 600px;
  color: #ff3939;
  display: block;
  text-align: center;
  font-size: 13px;
}
.bn-button-remove {
  display: block;
  height: 25px;
  width: 45px;
  line-height: 25px;
  font-weight: 500;
  background-color: #e30f0f;
  border: 2px solid #ff1700;
  color: #fff;
  margin: auto;
}
.bn-button-remove:hover {
  background-color: #fff;
  border-color: #ff1700;
  color: #ff1700;
  font-size: 14px;
  font-weight: 600;
}
.bn-checkbox {
  display: inline-block;
  width: 27px;
  height: 27px;
  line-height: 27px;
  vertical-align: middle;
  margin: auto;
  text-align: center;
  color: #182e5c;
  background-color: #182e5c;
  border-radius: 13.5px;
}
.bn-notice {
  display: block;
  margin: auto;
  width: 400px;
  text-align: center;
  font-size: 12px;
}
.bn-join-notice {
  width: 600px;
  margin: 0;
  text-align: left;
  font-size: 13px;
  color: #ff1700;
}
.bn-check-column {
  display: flex;
  flex-flow: column nowrap;
  border-top: 1px solid #182e5c;
  border-left: 1px solid #182e5c;
  justify-content: center;
  align-items: center;
  width: 600px;
  margin-left: 10px;
}
.bn-check-column2 {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: 600px;
  margin-left: 10px;
}
.bn-check-column-return {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-end;
  margin-left: 15px;
  width: 600px;
}
.bn-check-return-button {
  display: block;
  height: 25px;
  width: 100px;
  line-height: 25px;
  font-weight: 500;
  background-color: #182e5c;
  border: 2px solid #182e5c;
  border-radius: 5px;
  color: #fff;
}
.bn-check-return-button:hover {
  background-color: #fff;
  border-color: #182e5c;
  color: #182e5c;
  font-weight: 600;
}
.bn-check-row {
  display: flex;
  flex-flow: row nowrap;
  width: 100%;
  border-bottom: 1px solid #182e5c;
}
.bn-check-item-10 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 10%;
  border-right: 1px solid #182e5c;
  word-break: break-word;
}
.bn-check-item-25 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 25%;
  border-right: 1px solid #182e5c;
  word-break: break-word;
  padding: 0 0.8%;
}
.bn-check-item-20 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 20%;
  border-right: 1px solid #182e5c;
  word-break: break-word;
  padding: 0 0.8%;
}
.bn-check-item-30 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 30%;
  border-right: 1px solid #182e5c;
  word-break: break-word;
  padding: 0 0.8%;
}
.bn-check-item-33 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 33.333%;
  border-right: 1px solid #182e5c;
  word-break: break-word;
  padding: 0 0.8%;
}
.bn-check-item-35 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 35%;
  border-right: 1px solid #182e5c;
  word-break: break-word;
  padding: 0 0.8%;
}
.bn-check-item-40 {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 40%;
    border-right: 1px solid #182e5c;
    padding: 0 0.8%;
    word-break: break-word;
}
.bn-check-item-50 {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 50%;
    border-right: 1px solid #182e5c;
    word-break: break-word;
}
.bn-check-item-66 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  width: 66.667%;
  border-right: 1px solid #182e5c;
  word-break: break-word;
}
.bn-return {
  display: block;
  height: 37px;
  width: 600px;
  line-height: 37px;
  font-weight: 500;
  background-color: #747474;
  border: 2px solid #747474;
  border-radius: 5px;
  color: #fff;
}
.bn-return:hover {
  background-color: #fff;
  border-color: #747474;
  color: #747474;
  font-size: 14px;
  font-weight: 600;
}
.bn-complete-block {
  font-size: 14px;
  text-align: center;
}
.bn-top-join {
  font-size: 18px;
  color: #182e5c;
  text-align: center;
  font-weight: 700;
  margin-bottom: 20px;
}
.bn-edit-wrapper {
  display: flex;
  flex-flow: row nowrap;
  margin: auto;
}
.bn-edit-nav {
  width: 180px;
  border-right: 1px solid #182e5c;
  height: 730px;
}
.bn-edit-nav-inner {
  width: 90%;
  margin-top: 100px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.bn-edit-content {
  width: 80%;
}
.bn-edit-content-inner {
  width: 90%;
  margin: auto;
}
.bn-edit-delete-block {
  font-size: 14px;
  /*text-align: center;*/
  margin-left: 10px;
}
.bn-edit-misaki-block {
  font-size: 14px;
  text-align: center;
}
.bn-misaki-status {
  margin: auto;
  text-align: center;
  color: #40A34A;
  font-weight: 600;
}
.bn-edit-misaki-radio {
  display: flex;
  flex-flow: row nowrap;
  width: 250px;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  border: 1.4px solid #40A34A;
  border-radius: 5px;
}
.bn-edit-members-radio {
  display: flex;
  flex-flow: row nowrap;
  width: 250px;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  border: 1.4px solid #40A34A;
  border-radius: 5px;
}
.misaki-radio-item {
  width: 50%;
  height: 55px;
}
.bn-edit-misaki-radio input {
  display: none;
}
.bn-edit-misaki-radio label {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
  width: 100%;
  height: 100%;
}
.bn-edit-misaki-radio input:checked + .switch-off {
  background-color: #40A34A;
  color: #fff;
}
.bn-edit-misaki-radio input:checked + .switch-on {
  background-color: #40A34A;
  color: #fff;
}
.bn-edit-members-radio input:checked + .switch-off {
  background-color: #40A34A;
  color: #fff;
}
.bn-edit-members-radio input:checked + .switch-on {
  background-color: #40A34A;
  color: #fff;
}



.bn-edit-print-block {
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-around;
  /*align-items: center;*/
  height: 130px;
  margin-left: 10px;
}
.bn-edit-print-block > p {
  font-size: 14px;
  /*text-align: center;*/
  margin-bottom: 10px;
}

/* nav */
.is-not-active {
  background-color: #787878;
  color: #000;
}
.bn-not-button {
  display: block;
  height: 37px;
  width: 100px;
  line-height: 37px;
  font-weight: 500;
  background-color: #787878;
  border: 2px solid #787878;
  border-radius: 5px;
  color: #000;
}
.bn-not-add {
  width: 600px;
}
.bn-not-add-edit {
  width: 600px;
}
.bn-notadd.bn-not-button {
  margin: auto;
}

/* admin */
.admin-upload-block {
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 300px;
  height: 70px;
}
.admin-upload-mongon {
  font-size: 13px;
}
.admin-employees-heading {
  width: 130px;
}
.admin-reports-heading {
  width: 180px;
}
.admin-reports-detail-button {
  background-color: #e7e7e7;
  color: #000;
  border: 1px solid #000;
}
.admin-return-block {
  margin-left: 10px;
}
.admin-return-button {
  width: 200px;
  float: left;
}
.body a {
  text-decoration: none;
}

/* about */
.about-misaki-block img {
  width: 100%;
  height: 100%;
}
.about-flow-block {
  margin-left: -50px;
}

/* TOPの入力方法切り替え */
.search-block {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 610px;
}


.bn-top-radio {
  display: flex;
  flex-flow: row nowrap;
  width: 100px;
  justify-content: center;
  align-items: center;
  border: 1.4px solid #40A34A;
  border-radius: 5px;
}
.top-radio-item {
  width: 50%;
  height: 20px;
}
.bn-top-radio input {
  display: none;
}
.bn-top-radio label {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 11px;
  font-weight: 600;
  width: 100%;
  height: 100%;
}
.bn-top-radio input:checked + .top-switch-off {
  background-color: #40A34A;
  color: #fff;
}
.bn-top-radio input:checked + .top-switch-on {
  background-color: #40A34A;
  color: #fff;
}

/* admin noregister */
.bn-noregister {
  display: block;
  font-weight: 300;
  background-color: #40A34A;
  border: 2px solid #40A34A;
  border-radius: 5px;
  color: #fff;
  margin: auto;
  font-size: 14px;
  padding: 1.2%;
}
.bn-noregister:hover {
  background-color: #fff;
  border-color: #40A34A;
  color: #40A34A;
  font-size: 14px;
  font-weight: 400;
}
.bn-noregister-delete {
  display: block;
  font-weight: 300;
  background-color: #e80e18;
  border: 2px solid #e80e18;
  border-radius: 5px;
  color: #fff;
  margin: auto;
  font-size: 14px;
  padding: 1.2%;
}
.bn-noregister-delete:hover {
  background-color: #fff;
  border-color: #e80e18;
  color: #e80e18;
  font-size: 14px;
  font-weight: 400;
}