/* Common */
*, *:before, *:after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border-collapse: collapse;
  font-size: 16px;
}
input, select, textarea {
  border: 1px solid #666666;
  background: #ffffff;
}
body {
  max-width: 400px;
  margin: 0px auto;
  background-color: black;
  color: white;
  overflow: scroll;
}
.header_fixed {
  position: fixed;
  background-color: black;
  width: 400px;
}
:root { --color: red; }
.bt {  /* border-top */
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: var(--color);
}
.bb {  /* border-bottom */
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: var(--color);
}
.br {  /* border-right */
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: var(--color);
}
.bl {  /* border-left */
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: var(--color);
}
.cls { clear:both; }  /* float clear */

.t10 { margin-top:10px; }
h3 {  /* Page Title */
  font-size: 120%;
  font-weight: bold;
  padding-top: 5px;
  padding-left: 5px;
  min-height: 1em;
}
.err_msg {
  text-align: center;
  width: 100vw;
  color: red;
  line-height: 3em;
}


/* Title */
div.title {
  width:360px;
  height: 80px;
}

/* DrawerMenu */
ol, ul {
  list-style: none;
}
a {
  text-decoration: underline;
  color: inherit;
}
.toggle_menu {
  position: absolute;
  top: 0px;
  right: 0px;
  display: inline-block;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
}
.toggle_menu .content_hide {
  position: absolute;
  top: 0;
  left: 40px;
  width: 150px;
  height: 100vh;
  background-color: #000000;
  opacity: 0.5;
}
.toggle_menu .drawer_menu {
/*  position: fixed;*/
  position: absolute;
  top: 0;
  right: -100vw;
  width: 250px;
  height: 100vh;
  cursor: pointer;
  background-color: #000000;
}
.toggle_menu .drawer_menu ul {
  margin: 0;
  padding: 0;
}
.toggle_menu .drawer_menu li {
  list-style: none;
}
.toggle_menu .drawer_menu li.nav_score {
  background-color: #333333;
}
.toggle_menu .drawer_menu li.nav_score2 a {
  text-align: left;
  padding-left:1em;
}
.toggle_menu .drawer_menu li.logout {
  background-color: #990000;
  color: white;
  margin-top: 1em;
  border-top: 1px solid #ffffff;
}
.toggle_menu .drawer_menu li a {
  display: block;
/*  padding: 10px 20px;*/
  text-decoration: none;
  color: #ffffff;
  border-bottom: 1px solid #ffffff;
}
.toggle_menu #toggle_btn {
  position: absolute;
  display: none;
  opacity: 0;
}
.toggle_menu #toggle_btn:checked ~ .drawer_menu {
  -webkit-transform: translateX(-100vw);
          transform: translateX(-100vw);
}
.toggle_menu #toggle_btn:checked ~ .content_hide {
  -webkit-transform: translateX(-400px);
          transform: translateX(-400px);
}
/* menu toggle */
.toggle_menu #toggle_btn ~ label {
  display: block;
  padding: 0em;
  cursor: pointer;
  -webkit-transition: 0.5s transform;
          transition: 0.5s transform;
  -webkit-transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
          transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
  text-align: center;
  color: #ffffff;
  background-color:#000000;
}
.toggle_menu #toggle_btn:checked ~ label {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}
.toggle_menu #toggle_btn ~ label::before {
  content: '≡';
  font-size: 1.5em;
}
.toggle_menu #toggle_btn:checked ~ label::before {
  content: '×';
}



/* Data Regist(abort) Button */

.data_regist, .data_abort {
  position: absolute;
  top: 40px;
  right: 0px;
  display: inline-block;
  width: 40px;
  height: 40px;

}
.data_regist a, .data_abort a {
  text-align: center;
  line-height: 40px;
  background-color: #ffffff;
  display: block;
  color: black;
}

/* Footer */
div.footer_ajust {
  height: 3.5em;
}
footer {
  margin-top: 1em;
  padding-top: 1em;
  padding-right: 5px;
  text-align: right;
  font-size: 14px;
  background-color: #990000;
  position: fixed;
  bottom: 0;
  width: 400px;
}

/* FormCommon */
dl.nobg {
  display: block !important;
  font-size: 0 !important;
}
dl.nobg dt {
  background-color: #ffffcc !important;
  display: inline-block !important;
  width: 6em !important;
  text-align: right !important;
   padding: 0 4px !important;
}
dl.nobg dd {
  background-color: #ffffcc !important;
  display: inline-block !important;
  width: 150px !important;
  padding: 0 4px !important;
}
dl.nobg dd.full {
  background-color: #ffffcc !important;
  display: block !important;
  width: 100% !important;
  font-size: 12px !important;
  padding: 0 !important;
}
div.send_button {
  padding-top: 15px;
  text-align: right;
}
div.send_button input {
  padding: 4px 8px;
}
div.reg_err {
  width: 100vw;
  padding: 0 5px;
  font-size: 14px;
  line-height: 14px;
  color: red;
}
div.notice {
  width: 100vw;
  padding: 0 5px;
  font-size: 14px;
  line-height: 14px;
}
span.notice {
  font-size: 12px;
  line-height: 12px;
}


