@charset "utf-8";
html,
body {
  height: 100%;
  position: relative;
}

.displayNone {
  display: none !important;
}
/*select2*/
.select2-container.select2-container--default.select2-container--open {
  z-index: 10000;
}
.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: 1px solid #aaa !important;
  height: auto;
}
.select2-container--default .select2-selection--multiple {
  height: auto;
  display: flex !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear {
  display: none;
}
.select2-container--default .select2-search--inline .select2-search__field {
  width: auto;
  margin-top: -1px !important;
}

/** ヘッダ **/
header {
  background: #fff;
  color: #464646;
  line-height: 20px;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
  border-bottom: 1px solid #eee;
}
header .logo {
  float: left;
  width: 230px;
  background: #fff;
}
header .logo > h1.logo-no-link {
  display: block;
  height: 50px;
  font-size: 20px;
  line-height: 50px;
  text-align: center;
  padding: 0 15px;
  font-weight: 300;
  padding-top: 9px;
}
header .logo a {
  display: block;
  height: 50px;
  font-size: 20px;
  line-height: 50px;
  text-align: center;
  padding: 0 15px;
  font-weight: 300;
}
header .logo a img {
  padding-top: 9px;
  width: 200px;
}
header .logo a span {
  font-size: 22px;
  font-weight: 700;
  display: inline-block;
  margin-right: 2px;
}
header nav {
  position: relative;
}
header nav .hnav01 {
  float: left;
  font-size: 14px;
}
header nav .hnav02 {
  float: right;
  font-size: 22px;
  padding-right: 10px;
}
header nav .liwrap {
  display: inline-block;
}
header nav .liwrap a {
  padding: 0;
}
header nav li {
  display: inline-block;
  position: relative;
}
header nav li a,
header nav li button {
  padding: 0 10px;
  height: 50px;
  line-height: 50px;
  display: block;
  position: relative;
}
header nav li button {
  border: 0;
  outline: 0;
  font-size: 22px;
  background: none;
}
header li:hover,
header li.active,
header li:hover button,
header li.active button {
  background: #eb942f;
  color: #f6f6f6;
}
header nav li a .fa-layers-counter,
header nav li button .fa-layers-counter {
  font-size: 48px;
  top: 4px;
  right: 2px;
  background-color: #00a65a;
}
header nav .hnav02 span.hname {
  display: inline-block;
  vertical-align: bottom;
  font-size: 14px;
  padding-right: 8px;
}
header nav .hnav02 .dropdown .notice .fa-bell,
header nav .hnav02 .dropdown .notice .fa-exclamation-circle {
  color: #00a65a;
}

.hbars {
  display: none;
  float: left;
  height: 44px;
  line-height: 44px;
  font-size: 24px;
  width: 44px;
  text-align: center;
}
@media screen and (max-width: 960px) {
  header .logo {
    float: none;
    width: 100%;
  }
  header .logo a {
    height: 44px;
    line-height: 44px;
  }
  .hbars {
    display: block;
  }
  header nav li a,
  header nav li button {
    padding: 0 5px;
  }
  header h1 a,
  header nav li a,
  header nav li button {
    height: 44px;
    line-height: 44px;
  }
  header nav .hnav02 span.hname {
    display: none;
  }
  .hnav01 {
    position: absolute;
    top: 100%;
    width: 100%;
    background-color: #f39c12;
    display: none;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 6px 0;
    z-index: 1;
  }
  header nav .hnav01 {
    top: 45px;
  }
  header nav .hnav01 li {
    display: block;
  }
  header nav .hnav01 li a {
    padding: 0 14px;
  }
}
@media screen and (min-width: 961px) {
  .hnav01 {
    display: block !important;
  }
}
/** ヘッダ ここまで **/

/** コンテンツ基礎 **/
.content {
  min-height: 100%;
  background-color: #f9f8f7;
  color: #333;
  position: relative;
}
.cntinnerwrap {
  padding: 0 30px;
}
.content h1 {
  font-size: 24px;
  line-height: 1.2;
}
.content h1 svg {
  margin-right: 5px;
}
.cntheader .breadcrumb {
  font-size: 12px;
  line-height: 1.2;
  color: #ccc;
}
.cntheader .breadcrumb li {
  display: inline-block;
  margin: 0 6px;
  color: #444;
}
.cntheader .breadcrumb li a span {
  margin-left: 4px;
  display: inline-block;
}
.cntheader .breadcrumb li:last-child {
  pointer-events: none;
  color: #777;
  margin-right: 0;
}
.pctinfo {
  border: 1px solid #d2d6de;
  background-color: #fff;
  margin-top: 15px;
  font-size: 0;
}
.pctinfo > .border-split {
  background-image: linear-gradient(to right, #e7e7e7 10px, transparent 10px);
  background-size: 15px 1px;
  background-repeat: repeat-x;
  padding-top: 10px;
}
.pctinfo li {
  font-size: 14px;
  display: inline-block;
  line-height: 1.2;
  margin: 3px 0;
}
.pctinfo li:not(:last-child) {
  border-right: 1px solid #d2d6de;
}
.pctinfo li span {
  font-size: 15px;
  font-weight: bold;
  margin-left: 4px;
}
.pctinfo-care > div {
  padding: 5px 0;
}
.pctinfo-care .in-selector {
  align-items: center;
  display: inline-grid;
  grid-template-columns: 120px 106px 60px;
  width: fit-content;
}
.pctinfo-care .in-selector .fa-question-circle {
  font-size: 18px;
}
.pctinfo-care .in-selector .fa-question-circle:hover {
  opacity: 0.7;
}

/* 患者情報追加・編集ボタンの位置調整用 */
.pctinfo-button-line-base {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pctinfo-button-line-left {
  display: flex;
  justify-content: flex-start;
}
.pctinfo-button-line-right {
  display: flex;
  justify-content: flex-end;
}

/* CKD受信勧奨セレクトボックスレイアウト用 */
.ckd_selector {
  appearance: none;
  border-radius: 2px;
  box-sizing: border-box;
  cursor: pointer;
  font: normal normal normal 14px/22px HiraginoSans-W6;
  height: 22px;
  letter-spacing: 0px;
  padding: 0 4px;
  text-align: center;
  width: 116px !important;
}
/* 対象可能性あり */
.ckd_selector_possible {
  background-color: #ff5c0033;
  border: 1px solid #fe5c1e;
  color: #ff5c00;
}
/* 対象 */
.ckd_selector_target {
  background-color: #d7392533;
  border: 1px solid #d73925;
  color: #d73925;
}
/* 紹介済 */
.ckd_selector_referred {
  background-color: #00A65A33;
  border: 1px solid #12A65A;
  color: #00A65A;
}
/* 紹介拒否 */
.ckd_selector_refused,
.ckd_selector_non_target {
  background-color: #55555533;
  border: 1px solid #555;
  color: #555;
}
.pctinfo-care option {
  background-color: #fff !important;
}
/* ckdロジックダイアログ */
#ckd-help-modal {
  border: none;
  padding: 20px;
  max-width: 950px;
  width: 100%;
}
#ckd-help-modal .image-wrapper {
  margin: 0 auto;
  text-align: center;
}
#ckd-help-modal .image-wrapper img {
  width: 100%;
}
#ckd-help-modal .btn-wrapper {
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
}
#ckd-help-modal::backdrop {
  background-color: #000;
  opacity: 0.6;
}
.pctkikan {
  margin-top: 15px;
  margin-bottom: 10px;
  display: flex;
  justify-content: flex-end;
}
.pct1_3 .pctkikan {
  justify-content: space-between;
}
.pctkikan div {
  display: inline-block;
}
.pctkikan .btn + .btn {
  margin-left: 8px;
}
.lastnextwrap1 {
  display: none;
}
.lastnextwrap2.lastweek {
  margin-right: 0;
}
.lastweek svg {
  margin-right: 5px;
}
.nextweek svg {
  margin-left: 6px;
}
#calendar {
  position: relative;
}
#calendar .fa-calendar-alt,
#calendar .fa-times {
  margin-left: 5px;
}
#calendar .calendarcontainer {
  position: absolute;
  top: 30px;
  left: -102px;
  padding: 7px;
  min-width: 305px;
  background: #f2dede;
  z-index: 10;
  opacity: 0;
  visibility: hidden;
}
#calendar .calendarcontainer.on {
  top: 35px;
  transition: 0.2s;
  opacity: 1;
  visibility: visible;
}
#calendar .month {
  display: flex;
  justify-content: space-between;
  padding: 5px 10px;
}
#calendar .month a {
  text-align: center;
  padding: 0 15px;
}
#calendar .month a svg {
  font-size: 20px;
  color: #00c0ef;
}
#calendar .month span {
  display: flex;
  align-items: center;
}
#calendar .month > span {
  font-size: 18px;
}
#calendar table {
  width: 100%;
  text-align: center;
  margin-bottom: 10px;
}
#calendar tr {
  padding: 3px 0;
}
#calendar tr td {
  border: none;
  position: relative;
  padding: 7px 0;
  text-align: center;
  z-index: 200;
}
#calendar td div {
  width: 100%;
  height: 18px;
  position: relative;
  text-align: center;
  z-index: 40;
}
/* #calendar td.past div,
#calendar td.today div {
  cursor: pointer;
} */
#calendar td.day div {
  cursor: pointer;
}
#calendar td.today span {
  background: #00c0ef;
}
#calendar td span {
  position: absolute;
  background: #fff;
  border-radius: 50%;
  height: 24px;
  width: 24px;
  top: 2px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 20;
}
#calendar .calendarclose {
  display: block;
  text-align: center;
  margin: 0 auto 5px;
  width: 200px;
}
#calendar .calendarclose svg {
  font-size: 13px;
  margin-top: 3px;
}
#calendar .calendar-close {
  display: block;
  cursor: pointer;
  text-align: center;
  margin: 0 auto 5px;
  width: 200px;
}
#calendar .calendar-close svg {
  font-size: 13px;
  margin-top: 3px;
}
#clndr,
.clndr {
  width: 100%;
}
#clndr .clndr-controls {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 5px 10px;
}
#clndr .clndr-control-button,
.calendarclose {
  text-align: center;
  margin: 0 15px;
  cursor: pointer;
}
#clndr .clndr-control-button svg {
  font-size: 20px;
  color: #00c0ef;
}
#clndr .clndr-control-button div {
  display: flex;
}
#clndr p {
  font-size: 13px;
  text-align: center;
  margin-bottom: 15px;
}
#clndr.hidden .rightalign {
  visibility: hidden;
}
#calendar .month {
  font-size: 18px;
  display: flex;
  align-items: center;
}
#calendar .clndr-table {
}
@media screen and (max-width: 500px) {
  .lastnextwrap1 {
    display: table;
    margin-top: 15px;
    margin-left: auto;
  }
  .lastnextwrap2 .lastweek {
    visibility: hidden;
  }
  .lastnextwrap2 .nextweek {
    display: none;
  }
}
#weeksec,
.weeksec {
  display: none;
}
.foods #weeksec {
  display: block;
}
.foods #monthsec {
  display: none;
}

.cntsecbordertop {
  border-top: 1px solid #d2d6de;
  padding-top: 20px;
}
.cntsecpaddingtop {
  padding-top: 40px;
}
.error + .content .cntsecpaddingtop p:first-child {
  margin-top: 10px;
}
.cat .cntsecpaddingtop {
  padding-top: 5px;
}
.pctsec {
  padding-bottom: 20px;
}
.pctsec h2 {
  font-size: 20px;
  font-weight: bold;
  float: left;
}
.pcthyoji {
  float: right;
  padding-right: 5px;
}
.pcthyoji span {
  font-size: 15px;
  line-height: 1.2;
  display: inline-block;
  text-align: right;
  margin-right: 6px;
  color: #777;
  vertical-align: middle;
}
.pcthyoji span:nth-child(3) {
  font-size: 26px;
  transition: transform 0.2s;
  width: auto;
  color: #f39c12;
}
.pcthyoji span:nth-child(1) {
  display: none;
}
.pcthyoji span:nth-child(2) {
  display: inline-block;
}
.pcthyoji.on span:nth-child(1) {
  display: inline-block;
}
.pcthyoji.on span:nth-child(2) {
  display: none;
}
.pcthyoji.on span:nth-child(3) {
  transform: rotate(180deg);
}
.pctsec .btn.pctmore {
  margin-left: auto;
  display: table;
  padding: 0;
  margin-top: 10px;
}
.pctsec .btn.pctmore span {
  display: block;
  padding: 12px 45px 12px 25px;
  font-size: 16px;
  position: relative;
}
.pctsec .btn.pctmore span::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -8px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px;
  border-color: transparent;
  border-left-color: #fff;
}
/*過去の記録詳細*/
.itiran1,
.itiran2,
.itiran3 {
  display: none;
}
.itiran1.on,
.itiran2.on,
.itiran3.on {
  display: block;
}
.pctsec .pctitiran {
  display: flex;
}
.pctsec .pctlimitwrap {
  display: flex;
  justify-content: space-between;
}
.pctlimitbtnwrap {
  position: relative;
}

.pctlimit {
  display: table;
  position: absolute;
  right: 0;
  top: 21px;
}
@media screen and (max-width: 1100px) {
  .pctlimit {
    position: static;
    margin-left: auto;
    margin-bottom: 10px;
  }
}

.pctlimit div {
  display: inline-block;
  margin-right: 10px;
  position: relative;
}
.pctlimit div:last-child {
  margin-right: 0;
}
.pctlimit span {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 3px;
  font-size: 15px;
  line-height: 1.2;
  border: 1px solid transparent;
}
.pctlimit .e7e7e7 {
  background: #e7e7e7;
}
@media screen and (max-width: 1080px) {
  .blood_pressure .pctlimitwrap {
    flex-direction: column;
  }

  .blood_pressure .pctlimitwrap .pctmar {
    margin-top: 20px;
  }
}
@media screen and (max-width: 960px) {
  .pctlimitwrap {
    flex-direction: column;
  }
  .pctlimitwrap .pctmar {
    margin-top: 20px;
  }
}

.footer {
  padding-top: 50px;
  padding-bottom: 40px;
  text-align: center;
  font-size: 14px;
}
@media screen and (min-width: 961px) {
  .content {
    padding-top: 50px;
    padding-left: 230px;
  }
  .cntheader {
    padding-top: 28px;
  }
  .cntheader .cntinnerwrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .cntheader .breadcrumb {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .pctinfo {
    padding: 5px 10px;
  }
  .pctinfo li {
    padding: 0 20px;
  }
  .pctsec h2 {
    padding-left: 20px;
  }
}
@media screen and (max-width: 960px) {
  .sidenone .content {
    padding-top: 44px;
  }
  .content {
    display: flex;
    flex-direction: column;
    padding-top: 88px;
  }
  .cntinnerwrap {
    padding: 3px 2%;
  }
  .cntheader {
    padding-top: 20px;
  }
  .cat .cntheader {
    padding-top: 45px;
  }

  .cntheader .breadcrumb {
    margin-top: 10px;
    background: #d2d6de;
    padding: 7px 5px 7px 10px;
  }

  .error .cntheader .breadcrumb {
    margin-top: 40px;
  }

  .pctinfo {
    padding: 5px 0;
  }
  .pctinfo li {
    padding: 0 10px;
  }
  .pctsec h2 {
    padding-left: 10px;
  }
}

/** コンテンツ基礎 ここまで **/

/** サイドメニュー **/
.sidenone .content {
  padding-left: 0;
}
.sidemenu {
  background-color: #f4f4f4;
}
.sidemenu ul {
  color: #777;
}
.sidemenu ul li a:hover,
.sidemenu ul li.active a {
  background-color: #eb942f;
  color: #000;
}
.sidemenu ul li svg.fa-angle-right {
  transition: 0.2s;
}
.sidemenu ul li.on svg.fa-angle-right {
  transform: rotateZ(90deg);
  transition: 0.2s;
}
.sidemenu ul > ul {
  display: none;
}
.sidemenu ul > ul li a {
  padding-left: 35px;
}
.sidemenu ul > ul > ul li a {
  padding-left: 70px;
}
.acc .sidemenu ul > ul {
  display: block;
}
.acc .sidemenu ul li.active div {
  font-weight: bold;
}
.acc .sidemenu > ul > li.active svg.fa-angle-right {
  transform: rotate(90deg);
}
.sidemenu ul li.active svg.fa-angle-right {
  transform: rotate(90deg);
}
.sidemenu ul li.menuopen svg.fa-angle-right {
  transform: rotate(90deg);
}
.sidemenu ul li.active.opennone svg.fa-angle-right {
  transform: rotate(0deg);
}
@media all and (-ms-high-contrast: none) {
  /*ie*/
  .sidemenu ul li a > div:first-child img {
    width: auto;
    height: 1em;
  }
}
@media screen and (min-width: 961px) {
  .sidemenu {
    position: fixed;
    z-index: 999;
    overflow-y: auto;
    left: 0;
    top: 50px;
    width: 230px;
    bottom: 0;
    padding-top: 15px;
    border-right: 1px solid #d2d6de;
  }
  .sidemenu ul li a {
    display: table;
    width: 100%;
    padding: 12px 4px 12px 10px;
  }
  .sidemenu ul li a > div {
    display: table-cell;
    vertical-align: middle;
  }
  .sidemenu ul li a > div:first-child {
    width: 1%;
    font-size: 20px;
  }
  .sidemenu ul li a > div:first-child img {
    width: 1em;
  }
  .sidemenu ul li a > div:first-child svg {
    color: #eb942f;
    width: 1em;
  }
  .sidemenu ul li a > div:nth-child(2) {
    padding: 0 2px;
    font-size: 14px;
    line-height: 1.2;
    padding-left: 8px;
    padding-right: 4px;
  }
  .sidemenu ul li a > div:nth-last-child(1) {
    width: 30px;
    text-align: center;
    font-size: 16px;
  }
  .sidemenu ul li a > div:nth-last-child(2) {
    width: 1%;
    text-align: center;
    font-size: 16px;
    color: #ff3333;
  }
  .sidemenu ul li ul a {
    padding: 14px 4px 14px 30px;
  }
  .rps2 .select {
    display: none;
  }
  .rps2 .sidemenu.select {
    display: none;
    z-index: 1;
  }
  .sidemenu.pulldown select {
    display: none;
  }
}
@media screen and (max-width: 960px) {
  .rps2 .select {
    position: absolute;
    left: 0;
    top: 168px;
    width: calc(100% - 240px);
  }
  .sidemenu .overflowy {
    height: 400px;
    margin: 5px 0;
  }
  .sidemenu.pulldown {
    width: 96%;
    margin-left: 2%;
    position: relative;
    /*background: #ECF0F5;*/
    background: none;
  }
  .sidemenu.pulldown ul,
  .sidemenutitle {
    display: none;
  }
  .sidemenu.pulldown select {
    display: block;
    position: absolute;
    top: 15px;
    height: 33px;
    width: calc(100% - 240px);
    font-size: 15px;
    padding-left: 3px;
  }
  .sidemenu.pulldown select.w100p {
    width: 100%;
  }
  .sidemenu.pulldown div li {
  }
  .sidemenu.pulldown select option {
    height: 33px;
    padding: 10px;
    font-size: 15px;
  }
}
@media screen and (max-width: 500px) {
  .rps2 .select {
    width: 100%;
  }
  .sidemenu.pulldown {
    height: 0;
  }
}
@media screen and (max-width: 960px) {
  .rps1 .error ~ .content .sidemenu {
    margin-top: 15px;
  }
  .rps1 .sidemenu ul {
    font-size: 0;
    white-space: nowrap;
    overflow-x: auto;
    border-top: 1px solid #d2d6de;
    border-bottom: 1px solid #d2d6de;
    position: relative;
  }
  .rps1 .sidemenu ul li {
    display: inline-block;
    position: relative;
    font-size: 14px;
  }
  .rps1 .sidemenu ul li + li::before {
    position: absolute;
    content: "";
    width: 1px;
    top: 6px;
    bottom: 6px;
    background-color: #d2d6de;
    left: 0;
  }
  .rps1 .sidemenu ul li a {
    display: block;
    padding: 6px 10px;
  }
  .rps1 .sidemenu ul li ul {
    display: none;
  }
  .rps1 .sidemenu ul li a > div:first-child,
  .rps1 .sidemenu ul li a > div:nth-last-child(1),
  .rps1 .sidemenu ul li a > div:nth-last-child(2) {
    display: none;
  }
}
.rps2 .sidemenu {
  display: block;
}
.rps2 .select {
  margin-top: 20px;
}
.rps2 .error ~ .content .select {
  margin-top: 60px;
}
.rps2 .selectthis {
  display: table;
  background: #fff;
  border: 1px solid #a9a9a9;
  position: relative;
  height: 29px;
  width: 100%;
  padding: 3px;
  z-index: 3;
}
.rps2 .selectthis div {
  display: table-cell;
  text-align: right;
}
.rps2 .select .sidemenu {
  display: none;
}
.rps2 .select .sidemenu.on {
  display: block;
  position: absolute;
  z-index: 20;
  width: 96%;
}
.selectclose.btn {
  display: table;
  margin-left: auto;
  background: #fff;
  border: 1px solid #d2d6de;
  margin-top: -20px;
  margin-right: 5px;
}
.selectclose.btn svg {
  margin-left: 15px;
}
.rps2 .select .sidemenu.on > ul {
  overflow: auto;
}
.rps2 .sidemenu ul li a {
  display: table;
  width: 100%;
  padding: 12px 4px 12px 10px;
}
.rps2 .sidemenu ul > ul li a {
  padding-left: 35px;
}

.rps2 .sidemenu ul > ul > ul li a {
  padding-left: 70px;
}

.rps2 .sidemenu ul li a > div {
  display: table-cell;
  vertical-align: middle;
}
.rps2 .sidemenu ul li a > div:first-child {
  width: 1%;
  font-size: 20px;
}
.rps2 .sidemenu ul li a > div:first-child img {
  width: 1em;
}
.rps2 .sidemenu ul li a > div:first-child svg {
  color: #eb942f;
}
.rps2 .sidemenu ul li a > div:nth-child(2) {
  padding: 0 2px;
  font-size: 14px;
  line-height: 1.2;
  padding-left: 8px;
  padding-right: 4px;
  word-break: break-all;
}
.rps2 .sidemenu ul li a > div:nth-last-child(1) {
  width: 30px;
  text-align: center;
  font-size: 16px;
}
.rps2 .sidemenu ul li a > div:nth-last-child(2) {
  width: 1%;
  text-align: center;
  font-size: 16px;
  color: #ff3333;
}
.rps2 .sidemenu ul li ul a {
  padding: 14px 4px 14px 30px;
}
.rps2 .sidemenu .sidemenu.on ul,
.rps2 .sidemenu.on .sidemenutitle {
  display: block;
}
.rps2 .cntsecbordertop {
  border-top: 0;
}
@media screen and (max-width: 960px) {
  .rps2 .sidemenu {
    display: none;
  }
}
@media screen and (max-width: 500px) {
  .sidemenu.pulldown select {
    display: block;
    position: relative;
    top: 15px;
    height: 33px;
    width: 100%;
    font-size: 15px;
    padding-left: 3px;
  }
}

.sidemenutitle {
  font-size: 20px;
  line-height: 1.2;
  color: #333;
  padding: 13px 15px 15px 15px;
}
.sidemenutitle a {
  display: table;
  width: 100%;
}
.sidemenutitle a div:nth-last-child(1) {
  display: table-cell;
  vertical-align: middle;
  text-align: end;
}
/** サイドメニュー ここまで **/

/**ツールバー**/
.toolbar {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
  margin-bottom: 10px;
}
.toolbar ul {
  width: 300px;
}
.toolbar li {
  display: inline-block;
  position: relative;
}

.btngroup button + div {
  background: #000;
  color: #fff;
  width: auto;
  height: auto;
  padding: 5px;
  position: absolute;
  top: -50px;
  left: 0;
  text-align: left;
  z-index: 2;
  display: none;
  border-radius: 3px;
  white-space: nowrap;
}
.btngroup ul {
  overflow-y: scroll;
  position: absolute;
  background: #fff;
  color: #777;
  z-index: 111;
  border: 1px solid #eee;
  padding: 3px;
  width: 250px;
  display: none;
}
.btngroup ul li {
  display: block;
  padding: 3px;
  cursor: pointer;
  width: 100%;
}
.btngroup ul li:hover {
  color: #333;
  background: #e1e3e9;
}
.btngroup ul li span {
  margin-right: 5px;
}
.btngroup ul .divider {
  border: 1px solid #eee;
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
}
.dropdown_menu {
  display: none;
}
.kensaku {
  width: 45%;
}
.kensaku input[type="search"] {
  width: calc(100% - 70px);
}
@media screen and (max-width: 960px) {
  .toolbar {
    flex-direction: column;
    align-items: flex-end;
  }
  .btngroup ul {
    right: 0;
  }
  .kensaku {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 45px;
    margin-bottom: 20px;
    order: 2;
  }
  .kensaku form {
    width: 100%;
  }
  .kensaku input[type="search"] {
    width: calc(100% - 220px);
  }
  .kensaku input[type="search"] + input {
    width: 70px;
    text-align: center;
  }
}
@media screen and (min-width: 501px) {
  .kensaku {
    order: 1;
  }
  .btngroup ul {
    left: 0;
  }
  .toolbar .btngroup {
    width: auto;
    display: flex;
    justify-content: flex-end;
    align-self: start;
    order: 2;
  }
  .kensaku + div {
    margin-left: auto;
    margin-top: -30px;
    order: 3;
  }
}
@media screen and (min-width: 961px) {
  .toolbar .btngroup {
    justify-content: flex-start;
    order: 1;
  }
  .kensaku + div {
    margin-top: 0px;
  }
}
@media screen and (max-width: 500px) {
  .toolbar li {
    position: static;
  }
  .toolbar .btngroup {
    width: 100%;
    margin-top: -5px;
    display: flex;
    justify-content: space-between;
    order: 2;
  }
  .btngroup ul {
    width: 100%;
  }
  .btngroup li {
    width: 23%;
  }
  .toolbar .btngroup button {
    padding: 5px;
    width: 100%;
  }
  .kensaku {
    order: 1;
  }
  .kensaku + div {
    margin-top: 10px;
    order: 3;
  }
  .kensaku input[type="search"] {
    width: calc(100% - 35px);
  }
  .kensaku input[type="search"] + input {
    width: 90px;
    text-align: center;
    margin-top: 5px;
  }
}
/**ツールバーここまで**/
.sp {
  display: none;
}
.pc {
  display: block;
}
@media screen and (max-width: 960px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
h2 {
  font-size: 20px;
  font-weight: bold;
}
table.form {
  min-width: 0px;
  overflow-y: scroll;
}
@media screen and (max-width: 500px) {
  .modal .mcontent {
    max-height: 620px;
  }
  .modal .overflow {
    max-height: 450px;
  }
  .blood_sugar .modal .overflow,
  .blood_pressure .modal .overflow,
  .modal .overflow.w500_maxheight350 {
    max-height: 350px;
  }
  table.form th,
  table.form td {
    display: block;
    width: 100%;
  }
}
.indent1 {
  padding-left: 15px;
  text-indent: -16px;
}
.fa_exclamation_circle {
  width: 1%;
  text-align: center;
  font-size: 16px;
  color: #ff3333;
}
.linkblue {
  color: #0070c0;
}
.btn {
  display: inline-block;
  padding: 5px 12px;
  border-radius: 3px;
  font-size: 15px;
  line-height: 1.2;
  border: 1px solid transparent;
  outline: none;
  position: relative;
  cursor: pointer;
}
.btn[disabled] {
  cursor: not-allowed;
  color: rgb(170, 170, 170);
}

.btn:hover,
.btn.active {
  z-index: 2;
}
.btn1 {
  background: #00c0ef;
  border: 1px solid #00acd6;
  color: #fff;
}
.btn1:hover,
.btn1:active {
  background: #00acd6;
  border: 1px solid #269abc;
}
.btn2 {
  background: #3c8dbc;
  border: 1px solid #367fa9;
  color: #fff;
}
.btn2:hover,
.btn1:active {
  background: #367fa9;
  border: 1px solid #204d74;
}
.btn3 {
  background: #f4f4f4;
  color: #444;
  border-color: #ddd;
  padding: 5px 15px 5px 15px;
  margin-right: 5px;
}
.btn3:hover,
.btn3.active {
  background: #e7e7e7;
  border-color: #adadad;
}
.btn3:active,
.btn3.active {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn4 {
  background: #dd4b39;
  border: 1px solid #d73925;
  color: #fff;
  margin-right: 5px;
}
.btn4:hover,
.btn4:active {
  background: #d73925;
  border: 1px solid #ac2925;
}
.btnw150 {
  width: 150px;
}
.bold {
  font-weight: 900;
}
.vh {
  height: 100vh;
}
.flex {
  display: flex;
}
button {
  background: none;
  border: 0;
  outline: 0;
  cursor: pointer;
}
input[type="search"] {
  height: 31px;
  padding-left: 5px;
  font-size: 15px;
  color: #555555;
}
input[type="text"],
input[type="number"],
input[type="password"],
select {
  width: 100%;
  padding: 8px;
  border: 1px solid #999;
}
input[type="search"] {
  border: 1px solid #999;
}
input[type="submit"],
input[type="button"] {
  border-radius: 3px !important;
}
select {
  font-size: 15px;
  padding: 0 8px;
  height: 35px;
  background: #fff;
}
.gp1_1 .modal select[disabled] {
  font-size: 15px;
  padding: 0 8px;
  height: 35px;
  background: #ebebe4;
}
.gp1_1 .modal input[name="code_open_info"][disabled] {
  font-size: 15px;
  padding: 0 8px;
  height: 35px;
  background: #ebebe4;
}
textarea {
  width: 100%;
  border: 1px solid #999;
  padding: 8px;
}
input,
textarea {
  font-size: 16px;
}
.checkbox input {
  position: absolute;
  top: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
}
.square_orange > label,
.square_orange span {
  background-position: 0 0;
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  width: 22px;
  height: 22px;
  background: url("../images/orange.png") no-repeat;
  border: none;
  cursor: pointer;
}
.square_orange input[type="checkbox"]:hover + label,
.square_orange input[type="checkbox"]:hover + span {
  background-position: -24px 0;
}
.square_orange input[type="checkbox"]:checked + label,
.square_orange input[type="checkbox"]:checked + span {
  background-position: -48px 0;
}
.square_orange input[type="checkbox"].checked + label,
.square_orange input[type="checkbox"].checked + span {
  background-position: -48px 0;
}

label.square_orange {
  margin-right: 20px;
}
.square_orange input[type="radio"],
.square_orange input[type="checkbox"] {
  position: absolute;
  opacity: 0;
}
.square_orange input[type="radio"] + span {
  background-position: -120px 0;
  margin-right: 8px;
}
.square_orange input[type="radio"]:hover + span {
  background-position: -144px 0;
}
.square_orange input[type="radio"]:checked + span {
  background-position: -168px 0;
}
.square_orange input[type="radio"].checked + span {
  background-position: -168px 0;
}

label.file input {
  display: none;
}
.filewrapper {
  position: relative;
}
.imgfile {
  display: block;
  width: 100%;
  min-height: 35px;
  border: 1px solid #999;
  padding: 8px;
  margin-bottom: 20px;
}
.imgfile img {
  max-height: 200px;
  max-width: 200px;
}
.filedelete {
  position: absolute;
  top: 12px;
  right: 17px;
  cursor: pointer;
}
.heart {
  height: 13px;
}
.exceed {
  background: #fe7e7d;
}

.divide {
  background: #00c0ef;
}

.success {
  background-color: #00a65a !important;
  color: #fff;
  padding: 13px;
  text-align: center;
  font-size: 16px;
}

span.errorm {
  color: #dd4b39;
  margin-top: 8px;
  display: block;
  text-align: left;
}

input.errorm,
select.errorm {
  color: #dd4b39 !important;
}

div.errorm {
  margin-top: 0;
}
.errorm select,
.errorm input {
  border: 1px solid #dd4b39;
  margin-bottom: 5px;
}
.error + .content > .sidemenu,
.error + .kpi + .content > .sidemenu {
  top: 96px;
}
.errortxt {
  background: #dd4b39;
  color: #fff;
  padding: 13px;
  text-align: center;
  font-size: 16px;
}
.error + .content,
.error + .kpi + .content {
  padding-top: 95px;
}
.error .errortxt a {
  text-decoration: underline;
}
.error.errortxt.fixed {
  position: fixed;
  z-index: auto;
  height: 50px;
  width: 100%;
  left: 0;
  font-size: 15px;
}
@media screen and (max-width: 960px) {
  .error + .content,
  .error + .kpi + .content {
    padding-top: 120px;
  }
  .content .cntsecpaddingtop div.errortxt {
    margin-top: 20px;
  }
}
@media screen and (max-width: 500px) {
  .error.errortxt.fixed {
    height: 65px;
  }
  .error + .content,
  .error + .kpi + .content {
    padding-top: 140px;
  }
}
input.errorinput {
  border: 1px solid #dd4b39;
}
.eventnone {
  pointer-events: none;
}
.w500 {
  display: none;
}
.tableleft {
  display: table;
  margin-left: auto;
}

@media screen and (max-width: 500px) {
  .w500 {
    display: block;
  }
}

.contdummy {
  background-color: #fff;
  border: 1px solid #d2d6de;
  margin: 20px 0 10px 0;
  box-sizing: border-box;
  overflow: auto;
  display: none;
}
.contdummy.on {
  display: block;
}
.contdummy > div {
  line-height: 1.2;
  min-width: 735px;
  padding: 15px 20px;
  width: 100%;
  overflow-x: auto;
}
.contdummy > .graphttl {
  min-width: 800px;
  position: relative;
  background: #d9d9d9;
  border-bottom: 1px solid #d2d6de;
}
.contdummy .graphttl img {
  position: absolute;
  width: 170px;
  right: 20px;
  bottom: 15px;
}
.contdummy .graph2line > div {
  height: 350px;
}
.contdummy .graph2line {
  min-width: 250px;
  width: 50%;
  display: inline-block;
  float: left;
}
.contdummy .graph2line:first-child {
  padding-right: 20px;
}
.contdummy h3 {
  padding: 8px 15px;
  background: #d9d9d9;
}
.contdummy > div > span {
  font-size: 13px;
}
.contdummy .note {
  display: block;
  text-align: right;
  margin-bottom: 10px;
}
.new {
  background: #ff3333;
  color: #fff;
  font-size: 12px;
  margin: 0 5px;
  padding: 3px 5px 2px;
  border-radius: 3px;
}
/*サマリーページ*/
.contdummy > div > div {
  height: 350px;
}
#action table {
  table-layout: fixed;
  width: 100%;
  margin: 10px 0 30px;
}
#action table th {
  position: relative;
  text-align: center;
  font-weight: bold;
  border: 1px solid #d2d6de;
  border-bottom: 0;
  padding: 10px 0;
  background: #ffdc83;
  color: #777;
}
#action table th:nth-child(2) {
  background: #ffc470;
}
#action table th:nth-child(3) {
  background: #ffaa33;
}
#action table th:nth-child(4) {
  background: #ff9933;
}
#action table th.newon .new {
  display: block;
}
#action table th .new {
  display: none;
  position: absolute;
  top: 9px;
  right: 35px;
  padding: 3px 10px 2px;
}
#action table td {
  border: 1px solid #d2d6de;
  padding: 10px 10px;
}

#medicine table {
  width: 100%;
}
.pct1_2 #medicine.contdummy > div > div {
  height: auto;
  margin-top: 15px;
  display: flex;
  justify-content: center;
}
.pct1_2 #medicine.contdummy > div > div span {
  margin-right: 5px;
  margin-left: 15px;
}

.pct1_2 #taking_medicine table {
  width: 100%;
}

.pct1_2 #taking_medicine.contdummy > div > div
{
  height: auto;
  margin-top: 15px;
  display: flex;
  justify-content: center;
}

.pct1_2 #taking_medicine.contdummy > div > div span {
  margin-right: 5px;
  margin-left: 15px;
}

#medicine th,
#medicine td,
#taking_medicine th,
#taking_medicine td,
#prescription th,
#prescription td,
#meal th,
#meal td {
  width: calc(100% / 8);
  border: 1px solid #d2d6de;
  box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
  position: relative;
}
#medicine th,
#taking_medicine th,
#prescription th,
#meal th {
  background: #e7e7e7;
  padding: 5px;
  font-size: 16px;
}
#meal th {
  min-width: 87px;
}
#medicine td {
  height: 50px;
  font-size: 20px;
}

#meal td {
  height: 110px;
  padding: 3px;
}
#meal td span {
  position: absolute;
  top: 1px;
  right: 1px;
  font-size: 18px;
  color: #464646;
}
#meal td img {
  height: 100%;
  width: 100%;
  object-fit: scale-down;
  display: block;
}
@media all and (-ms-high-contrast: none) {
  /*ie*/
  #meal th {
    width: 300px;
  }
  #meal td img {
    object-fit: scale-down;
    font-family: "object-fit: cover;";
  }
}
#meal td > svg {
  height: 70%;
  width: 100%;
}
.sleep .contdummy ul + div {
  padding: 0;
}

#dispense.contdummy > div > div {
  height: auto;
}
.dispense .contdummy ul + div {
  padding: 0;
}

#kensati span {
  font-size: 16px;
}

#blood_age div {
  padding: 0;
}
#blood_age table {
  table-layout: fixed;
  width: 100%;
}
#blood_age table tr {
  border-top: 1px solid #d2d6de;
}
#blood_age table tr:first-child {
  border-top: 0;
}
#blood_age table th,
#blood_age table td {
  text-align: center;
  padding: 7px 15px;
}
#blood_age table tr:first-child td {
  text-align: left;
}
#blood_age table th {
  border-right: 1px solid #d2d6de;
  background: #e7e7e7;
}
#blood_age table td span {
  font-size: 16px;
}
#blood_pressure {
  position: relative;
  width: 100%;
}
#blood_pressure > span {
  position: absolute;
  left: 8%;
  top: 3%;
  z-index: 100;
}

.overflow {
  overflow: auto;
  margin: 20px 0;
}
.overflowy {
  overflow-y: auto;
  margin: 20px 0;
}
table tr .rside {
  text-align: right;
}
table tr .lside {
  text-align: left;
}
.table1 {
  width: 100%;
  min-width: 1070px;
  background: #fff;
}
.table1 th,
.table1 td {
  border: 1px solid #d2d6de;
  padding: 8px;
  line-height: 1.42857;
  vertical-align: top;
  position: relative;
  white-space: nowrap;
}
.table1 th {
  background: #e7e7e7;
  border-bottom-width: 2px;
  text-align: center;
  font-weight: bold;
}
.table1 th a {
  font-weight: bold;
}
.pct1_2 .table1 th a svg {
  margin-left: 5px;
}
.table1 th.thdl {
  padding: 0;
  width: 55px;
  line-height: 1em;
  vertical-align: middle;
}
.table1 td {
  vertical-align: middle;
  text-align: center;
}
.table1 th.name {
  min-width: 120px;
}
.table1 td > a,
.chart a {
  /*background: #fff;
  padding: 8px;
*/
}
.table1 td > a svg,
.chart a svg,
.table1 td > button svg,
.chart button svg {
  color: #3c8dbc;
}
.chart {
  text-align: left;
  padding-left: 5px;
}
.chart span {
  display: table-cell;
}
.chart span:only-child {
  float: right;
  /* margin-right: -5px; */
}
.chart span + span {
  width: 1%;
}
.chart a {
  width: 1%;
  text-align: center;
  font-size: 16px;
}
.table1 .fa_exclamation_circle {
  margin-right: 5px;
  cursor: pointer;
}
@media all and (-ms-high-contrast: none) {
  /*ie*/
  .table1 .fa_exclamation_circle {
    top: 110%;
  }
}
@supports (-ms-ime-align: auto) {
  /*edge*/
  .table1 .fa_exclamation_circle {
    top: 110%;
  }
}
.wb-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 26px;
  font-size: 14px;
  font-weight: 700;
  position: relative;
  padding: 3px 0px 3px 5px;
  margin-bottom: 0.4em;
  color: #fff;
  text-align: left;
  border-radius: 3px;
  line-height: 1.3em;
}
.wb-label:last-child {
  margin-bottom: 0;
}
.wb-label button {
  padding: 2px 5px;
  margin-top: -0.1em;
  margin-left: 15px;
  border-radius: 3px;
  color: #fff;
  line-height: 1.3em;
}
.wb-label button:hover {
  color: #000;
}
.label-group {
  background: #00a65a;
  border: 1px solid #008d4c;
}
.wb-label.label-tag {
  color: #000;
}
.wb-label.label-tag a,
.wb-label.label-tag button {
  background: #00a65a;
}
.label-admin {
  background: #f39c12;
  border: 1px solid #e08e0b;
}
.label-c1 {
  background: #00c0ef;
  border: 1px solid #00acd6;
  color: #fff;
}
/*ページャー*/
.table1pager {
  display: flex;
  justify-content: space-between;
}
.table1pager ul.btngroup:last-child {
  margin: 0 0 0 auto;
}
.table1pager li {
  margin-right: 0;
  float: left;
}
.table1pager li a {
  padding: 6px 12px;
  display: block;
}
.btngroup .btn + .btn {
  margin-left: -1px;
}
.btngroup > .btn:first-child:not(:last-child) {
  border-radius: 0;
}
.btngroup > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
@media screen and (max-width: 960px) {
  .table1pager {
    /* flex-direction: column; */
    align-items: center;
  }
  .table1pager .btngroup + .btngroup {
    margin-top: 10px;
  }
}
@media screen and (max-width: 500px) {
  .table1pager li {
    width: auto;
  }
}
/**table1ここまで**/
/*患者一覧*/
.patients .table1 th {
  vertical-align: middle;
}
.patients .table1 tr:nth-of-type(n + 2):hover {
  background: #e7e7e7;
}
.patients .table1 .th_minw {
  min-width: 120px;
}
.patients .modal .mcontent.mcon2 {
  height: auto;
  min-height: auto;
}
.patients .modal .center {
  width: 200px;
  margin: 45px auto 0;
}
.patients .modal .label-admin {
  width: 100%;
  padding: 7px;
  text-align: center;
}

.table2 {
  width: 100%;
  background: #fff;
  display: none;
  min-width: 735px;
}
.table2.on {
  display: table;
}
.table2 th,
.table2 td {
  border: 1px solid #d2d6de;
  padding: 8px;
  line-height: 1.42857;
  vertical-align: top;
  position: static;
}
.table2 + .table2 tr:first-child th {
  border-top: 0;
}
.table2 th {
  background: #e7e7e7;
  text-align: center;
  font-weight: bold;
}
.table2 td {
  text-align: right;
}
.table2 td.center {
  text-align: center;
}
.table2 td.left {
  text-align: left;
}
.table2 .middle {
  vertical-align: middle;
}
.table2 td svg {
  margin-left: 5px;
  width: 18px !important;
}
.pctsec .btn.download {
  margin-left: auto;
  display: table;
  padding: 0;
  margin-top: 10px;
}
.pctsec .btn.download span {
  display: block;
  padding: 5px 15px 5px 15px;
  font-size: 16px;
  position: relative;
}
.pctsec .btn.download svg {
  margin-left: 5px;
}
/* 患者一覧WelbyID未登録者に属性付与エラーモーダル */
#not-allowed-nonmember-add {
  padding: 20px;
  border: none;
}
#not-allowed-nonmember-add::backdrop {
  background-color: #000;
  opacity: 0.6;
}
#not-allowed-nonmember-add .btn-wrapper {
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
}
/* 患者一覧WelbyID未登録者に属性付与エラーモーダルここまで */

/**テーブル個別**/
/*血糖値*/
.blood_sugar .table2 {
  min-width: 768px;
}
/*血圧*/
.blood_pressure .table2 {
  min-width: 1450px;
}
.blood_pressure .table2:nth-of-type(n + 2) tr:first-child th {
  width: 100px;
}
/*運動*/
.exercise .table2:nth-of-type(2) tr:first-child td {
  border-top: 0;
}
.exercise rect[fill="#24FF0D"] {
  rx: 0;
  ry: 0;
}
/*行動*/
.action .table2 {
  min-width: 735px;
}
.action .table2 th {
  vertical-align: middle;
}
.action .table2 th:nth-of-type(1),
.action .table2 th:nth-of-type(2) {
  min-width: 100px;
}
.action .table2 th:nth-of-type(4) {
  min-width: 185px;
}
.action .table2 th br {
  display: none;
}
@media screen and (max-width: 960px) {
  .action .table2 th:nth-of-type(4) {
    min-width: 105px;
  }
  .action .table2 th br {
    display: inline;
  }
}
.action .table2 th:nth-of-type(3),
.action .table2 th:nth-of-type(5) {
  min-width: 300px;
}
.action .table2 td.center[rowspan="3"] {
  font-size: 20px;
}
.action .table2 .tassei {
  max-width: 185px;
}
.action .table2 .hitokoto {
  min-width: 300px;
}
/*体重*/
.weight .table2 {
  min-width: 300px;
  margin: 20px 0;
}
.weight .table2 .tukihi {
  width: 100px;
}
.weight .table2 .youbi {
  width: 50px;
}
/*食事*/
.foods .table2 th,
.foods .table2 div {
  text-align: left;
}
.foods .tukihi,
.foods .youbi {
  width: 55px;
}
.foods .youbi {
  white-space: nowrap;
}
.foods .thtime {
  width: 150px;
}
.foods .table2 td div {
  width: 150px;
  display: flex;
  flex-direction: column;
}
.foods .table2 td span {
  word-break: break-all;
}
.foods .table2 td img {
  width: 150px;
  cursor: pointer;
}
.foods .table2 td img:nth-child(n + 2) {
  margin-top: 10px;
}
.foods .table2 td p {
  text-align: center;
  background-color: darkgrey;
  margin: 4px 0 -7px 0;
}
@media screen and (max-width: 400px) {
  .foods .pctkikan div[style="visibility:hidden;"] {
    width: 1px;
    height: 1px;
  }
  .foods .lastnextwrap2 {
    margin-right: 5px;
  }
}
/*おくすり*/
.medicine_takings .table2 td:last-child {
  padding: 0;
}
.medicine_takings .table2 td:last-child div {
  padding: 5px;
}
.medicine_takings .table2 .medicine_num {
  background: #eee;
}
.medicine_takings .table2 td:last-child div span {
  display: block;
}
/*服薬記録*/
.taking_medicines .table2 td:last-child {
  padding: 0;
}
.taking_medicines .table2 td:last-child div {
  padding: 5px;
}
.taking_medicines .table2 .medicine_num {
  background: #eee;
}
.taking_medicines .table2 td:last-child div span {
  display: block;
}
.taking_medicines .table2 td {
  text-align: left;
}

/*睡眠*/
.sleep .table2 {
  table-layout: fixed;
  min-width: 930px;
}
.sleep .table2 td {
  text-align: left;
}
.sleep .table2 td:last-child svg {
  cursor: pointer;
}
.sleep .table2 td svg {
  float: right;
  margin-top: 3px;
}
.sleep .table2 td.fnone {
  text-align: center;
}
.sleep .table2 td.fnone svg {
  float: none;
  color: #3c8dbc;
}
.sleep .content .graphttl {
  margin-bottom: 10px;
}
#sleep ul,
#sleep_m ul {
  display: flex;
  justify-content: flex-end;
  padding-right: 10px;
  min-width: 695px;
}
#sleep ul.highcharts-menu,
#sleep_m ul.highcharts-menu {
  display: flex;
  justify-content: flex-end;
  padding-right: 10px;
  min-width: 110px;
}
#sleep .graphdetailttl li,
#sleep_m .graphdetailttl li {
  color: #fff;
  width: 100px;
  padding: 0 3px;
  margin-left: 5px;
  text-align: center;
  font-size: 16px;
}
#sleep li:nth-of-type(1),
#sleep_m li:nth-of-type(1),
.sleep .graphshosairight tr:nth-of-type(5) span {
  background: #f84647;
}
#sleep li:nth-of-type(2),
#sleep_m li:nth-of-type(2),
.sleep .graphshosairight tr:nth-of-type(4) span {
  background: #fbac34;
}
#sleep li:nth-of-type(3),
#sleep_m li:nth-of-type(3),
.sleep .graphshosairight tr:nth-of-type(3) span {
  background: #31b050;
}
#sleep li:nth-of-type(4),
#sleep_m li:nth-of-type(4),
.sleep .graphshosairight tr:nth-of-type(2) span {
  background: #2fb0f1;
}
#sleep li:nth-of-type(5),
#sleep_m li:nth-of-type(5) {
  background: #a6a6a6;
}
.sleep .graphshosai {
  display: flex;
  min-width: 800px;
  margin: auto;
  padding: 20px;
  border: 1px solid #d2d6de;
  height: 350px;
  color: #666666;
  font-size: 11px;
}
.sleep .graphshosaileft {
  height: 300px;
  width: 75%;
  padding-top: 50px;
  margin-right: 40px;
  position: relative;
}
.sleep .graphshosaileft .sleep_title {
  position: absolute;
  top: 0;
}
.sleep .graphshosaileft .yAxis {
  float: left;
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-between;
  height: 230px;
  margin-right: 15px;
  text-align: right;
}
.sleep .graphshosaileft .yAxis span::after {
  content: "";
  background: #ccd6eb;
  height: 1px;
  right: 0;
  width: calc(100% - 60px);
  position: absolute;
  margin-top: 8px;
}
.sleep .graphshosaileft .fukai {
  height: 58px;
  background: #2fb0f1;
}
.sleep .graphshosaileft .asai {
  height: 115px;
  background: #31b050;
}
.sleep .graphshosaileft .rem {
  height: 173px;
  background: #fbac34;
}
.sleep .graphshosaileft .kakusei {
  height: 230px;
  background: #f84647;
}
.sleep .sleep_color_wrap {
  display: flex;
  align-items: flex-end;
  margin-top: 9px;
  margin-bottom: 15px;
  padding: 0 35px;
}
.sleep .graphshosaileft .xAxis {
  width: 100%;
  height: 1em;
  padding-right: 22px;
}
.sleep .graphshosaileft .xAxis div {
  width: 82px;
  height: 1em;
  display: inline-block;
  float: left;
}
.sleep .jikan1 {
  float: left;
}
.sleep .jikan2 {
  float: right;
}
.sleep .graphshosairight {
  width: 245px;
  height: auto;
}
.sleep .graphshosairight table {
  font-size: 18px;
  min-width: 230px;
}
.sleep .graphshosairight caption {
  font-size: 18px;
  margin-bottom: 10px;
}
.sleep .graphshosairight th {
  font-weight: normal;
  padding-right: 30px;
  height: 40px;
}
.sleep .graphshosairight span {
  width: 20px;
  height: 25px;
  display: inline-table;
  vertical-align: middle;
  margin-right: 10px;
}

/* #sleep .highcharts-series-1,
#sleep .highcharts-series-0 {
  display: none;
} */
.sleep .highcharts-tooltip tspan[style="fill:#A6A6A6"],
.pct1_2 .highcharts-tooltip tspan[style="fill:#A6A6A6"] {
  display: none;
}
.sleep span[data-z-index="1"],
.pct1_2 span[data-z-index="1"] {
  width: 150px;
}
.sleep .tooltipspan,
.pct1_2 .tooltipspan {
  width: 60px;
  display: inline-block;
}
.sleep .datamargin,
.pct1_2 .datamargin {
  margin-right: 5px;
  display: inline-block;
}
/*検査値 血管年齢*/
.specimens .pctkikan div {
  margin: auto;
}
.specimens .pctkikan span {
  margin: 0 10px;
}
.specimens select {
  width: 100%;
  font-size: 15px;
  font-family: inherit;
}
.specimens option {
  padding: 5px;
}
.specimens .table2 {
  table-layout: fixed;
  min-width: 735px;
  word-break: break-all;
}
.specimens .itiran1 .table2 td[rowspan="6"] {
  text-align: center;
}
.specimens .itiran1 .table2 tr td:nth-of-type(3) {
  text-align: left;
}
.specimens rect[fill="#24FF0D"] {
  rx: 0;
  ry: 0;
} /*chrome firefox*/
.specimens rect[fill="#000000"] {
  rx: 0;
  ry: 0;
} /*chrome firefox*/

/** 服薬記録*/
#taking_medicine,
#prescription {
  width: 100%;
/*  table-layout: fixed; */
}

#prescription {
  min-width: 1000px;
}

#taking_medicine th,
#prescription th {
  white-space: nowrap;
}

#taking_medicine td,
#prescription td {
  height: 50px;
}

#taking_medicine td.left,
#prescription td.left {
  text-align: left;
}

#taking_medicine td.normal,
#prescription td.normal {
  white-space: normal;
  word-break: break-all;
}

#taking_medicine td.nowrap,
#prescription td.nowrap {
  white-space: nowrap;
}

#taking_medicine td.right,
#prescription td.right {
  text-align: right;
}

#taking_medicine td.label {
  background: #e7e7e7;
  height: auto;
}

/* 服薬期間グラフ */
#dispensegraph {
  width: 100%;
  min-width: 800px;
  margin: auto;
}

/*新規患者招待*/
.pct1_4 .table2 {
  min-width: auto;
}
.pct1_4 .tableleft {
  width: 150px;
  text-align: center;
}
.pct1_4 th {
  width: 25%;
}
@media screen and (max-width: 960px) {
  .pct1_4 .content {
    padding-top: 88px;
  }
}
@media screen and (max-width: 750px) {
  .pct1_4 th,
  .pct1_4 td {
    display: block;
    width: 100%;
  }
}
/* 施設情報 */
.facility .content {
  padding-left: 0;
}
.facility .edit-btn {
  margin: 21px 0;
  padding: 0 30px;
}
.facility .edit-btn > a {
  background-color: #f26d1b;
  border-radius: 3px;
  color: #fff;
  display: block;
  margin: 0 0 0 auto;
  padding: 8px;
  text-align: center;
  width: 136px;
}
.facility .cntsecpaddingtop {
  padding: 0px;
}
.facility .overflow {
  margin: 10px 0;
}
.facility .table2 {
  background-color: #fff;
}
.facility th {
  background-color: #e7e7e7;
  font-size: 14px;
  line-height: 14px;
  padding: 13px 16px;
}
.facility td:not(.day) {
  font-size: 16px;
  line-height: 16px;
  padding: 20px 16px;
}
.facility th,
.facility td {
  position: relative;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}
.facility .table2 input,
.facility .table2 select {
  border-color: #d2d6de !important;
  -webkit-appearance: auto;
}
.facility .btn {
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  line-height: 26px;
  padding: 6px 15px;
  text-align: center;
}
.facility .action-btn {
  background-color: #00c0ef;
  border-color: #00acd6;
  text-align: center;
}
.facility .delete-btn {
  background-color: #dd4b39;
  border-color: #d73925;
}
.facility .close-btn {
  color: #888;
}
.facility .table2 input[type="tel"],
.facility .table2 input[type="url"] {
  border: 1px solid #999;
  padding: 12px;
  width: 100%;
}
.facility .table2 input[type="text"] {
  padding: 12px;
}
.facility .select-wrapper {
  display: inline-block;
  position: relative;
}
.facility .select-wrapper svg {
  pointer-events: none;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
}
.facility .select-wrapper select {
  appearance: none;
  height: 40px;
}
.facility .department > div:first-child > div > div:not(.warning) {
  display: grid;
  grid-gap: 16px;
  grid-template-columns: calc((100% - (16px * 3) - 76px - 64px) / 2) calc((100% - (16px * 3) - 76px - 64px) / 2) 76px 64px;
}
.facility .department > div:first-child > div:not(:last-child),
.facility .weekday-time > div:not(:last-child),
.facility #dates > div,
.facility #terms > div {
  margin-bottom: 20px;
}
.facility .department select {
  padding: 10px 12px;
}
.facility .department .action-btn {
  margin-left: 12px
}
.facility .business-times > div:nth-child(odd):not(:last-child) {
  display: grid;
  grid-template-columns: 96px calc(100% - 96px);
}
.facility .business-times > div:nth-child(odd):not(:first-child) {
  margin-top: 20px;
}
.facility .weekday-time > div {
  display: grid;
  grid-gap: 12px;
  grid-template-columns: 136px 16px 136px 100px 68px;
  line-height: 40px;
}
.facility .weekday-time select {
  padding: 10px 16px;
}
.facility .weekday-time .action-btn {
  margin-left: 36px;
  width: 64px;
}
.facility .weekday-time .delete-btn {
  margin-left: 4px
}
.facility .holidays .calendarcontainer:not(.on) {
  display: none;
}
.facility .holidays .calendarcontainer {
  transform: translateY(calc(-100% - 56px));
}
.facility .calendar-open {
  font-size: 36px;
}
.facility .calendar-open svg {
  color: #555;
  font-size: 36px;
  margin-left: 0px;
  vertical-align: top;
  width: 36px !important;
}
.facility .holidays input[type="text"] {
  padding: 10px 16px;
}
.facility .holidays > div:nth-child(even):not(:last-child) {
  display: grid;
  grid-template-columns: 136px calc(100% - 136px);
  line-height: 40px;
}
.facility .holidays > div:nth-child(2) {
  margin-top: -16px;
}
.facility .calendar-icon {
  display: inline-block;
  position: relative;
}
.facility #dates > div {
  display: grid;
  grid-gap: 14px;
  grid-template-columns: 128px 36px 100px 66px;
}
.facility #terms > div {
  display: grid;
  grid-gap: 14px;
  grid-template-columns: 232px 16px 232px 100px 66px;
}
.facility #terms > div > span {
  display: grid;
  font-size: 14px;
  grid-gap: 12px;
  grid-template-columns: 42px 128px 38px;
}
.facility #dates > div .action-btn,
.facility #terms > div .action-btn {
  margin-left: 36px;
}
.facility #dates > div .delete-btn,
.facility #terms > div .delete-btn,
.facility #terms > div > span > span   {
  margin-left: 2px;
}
.facility .business-times > div:last-child,
.facility .holidays > div:last-child {
  margin-bottom: 0;
}
.facility input[type="checkbox"],
.facility input[type="radio"] {
  display: none;
}
.weekday {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  line-height: 40px;
  padding: 0;
  padding-left: 40px;
  position: relative;
  text-align: center;
  width: 96px;
}
.weekday::before {
  background: #fff;
  border: 1px solid #999;
  border-radius: 3px;
  content: '';
  display: block;
  height: 40px;
  left: 0;
  position: absolute;
  width: 40px;
}
.weekday::after {
  border-right: 4px solid #fff;
  border-bottom: 4px solid #fff;
  content: '';
  display: block;
  height: 22.5px;
  left: 14px;
  opacity: 0;
  position: absolute;
  top: 20px;
  transform: translateY(-15px) rotate(45deg);
  width: 10px;
}
input[type=checkbox]:checked + .weekday::before {
  background: #ff8d4c;
  border-color: #ff8d4c;
}
label.holiday {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  height: 100%;
  line-height: 40px;
  margin: auto 0;
  padding: 0;
  padding-left: 52px;
  position: relative;
}
label.holiday::before {
  background: #fff;
  border: 1px solid #999;
  border-radius: 50%;
  border-width: 2px;
  content: '';
  display: block;
  height: 30px;
  left: 3px;
  position: absolute;
  top: 3px;
  width: 30px;
}
label.holiday::after {
  background: #ff8d4c;
  border-radius: 50%;
  content: '';
  display: block;
  height: 20px;
  left: 20px;
  opacity: 0;
  position: absolute;
  top: 20px;
  transform: translate(-50%, -50%);
  width: 20px;
}
input[type=radio]:checked + label.holiday::before {
  border-color: #ff8d4c;
}
input[type=checkbox]:checked + .weekday::after,
input[type=radio]:checked + label.holiday::after {
  opacity: 1;
}
.facility .table2 textarea {
  border: 1px solid #d2d6de;
  min-height: 200px;
  padding: 16px;
  resize: none;
  width: 100%;
}
.facility .table2 textarea::placeholder {
  padding-top: 76px;
}
.facility .image input {
  width: calc(100% - 160px);
  margin-right: 16px
}
.facility .fa-calendar-alt {
  color: #ff5f17;
  cursor: pointer;
  font-size: 24px;
  vertical-align: sub;
}
.facility .large-btn {
  border: solid 1px #555;
  border-radius: 3px;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  margin: 65px 32px;
  padding: 11px 0;
  text-align: center;
  width: 324px;
}
.facility .preview > div {
  display: flex;
  margin-top: 8px;
}
.facility img {
  max-height: 180px;
  max-width: 320px;
  object-fit: contain;
}
.facility .preview .file-change {
  margin: auto 0px auto 48px;
}
.facility .file-del {
  margin: auto 0px auto 16px;
}
.facility .large-btn:last-child {
  background-color: #F26D1B;
  border-color: #F26D1B;
  color: #fff;
}
.facility .warning:not(.errorm) {
  display: none;
}
.facility .errorm.department,
.facility .errorm.time,
.facility .errorm.business-times,
.facility .errorm.date,
.facility .errorm.term {
  color: #dd4b39;
  display: block !important;
  padding: 0 0 0 5px;
}
.facility .errorm.department {
  padding-top: 20px;
}
.facility .errorm.time {
  padding: 20px 0 0 96px;
}
.facility .errorm.date,
.facility .errorm.term {
  padding-left: 136px;
  margin-bottom: 20px;
}
.facility .errorm.file {
  color: #dd4b39;
  display: block !important;
  padding: 5px 0 0 9px;
}
.facility .require {
  background-color: #00a65a;
  border-radius: 20px;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  line-height: 24px;
  margin-left: 10px;
  text-align: center;
  width: 48px;
}
.facility td.subjects > .subject:not(:last-child) {
  margin-bottom: 20px;
}
.facility .grid-wrapper1 {
  display: grid;
  grid-template-columns: 60px calc(100% - 60px);
  line-height: 3;
}
.facility .grid-wrapper1 > div:nth-child(odd) {
  font-weight: bold;
  margin-right: 28px;
  text-align: center;
}
.facility .grid-wrapper2 {
  display: grid;
  grid-template-columns: 76px calc(100% - 76px);
  line-height: 3;
}
.facility .grid-wrapper2 > div {
  margin: auto;
  margin-left: 0;
}
.facility .grid-wrapper2 > div:last-child {
  line-height: 2;
  white-space: break-spaces;
}
.facility .pr-point {
  padding: 20px;
  white-space: pre-line;
}
.update-modal .diff-item {
  list-style: disc;
  margin-top: 20px;
  padding-left: 20px;
}
.update-modal.mcontent,
.cancel-modal.mcontent {
  min-height: 221px !important;
  padding: 0 !important;
  width: 392px !important;
}
.image-modal.mcontent {
  min-height: 164px !important;
  padding: 0 !important;
  width: 600px !important;
}
.update-modal .mheight,
.cancel-modal .mheight,
.image-modal .mheight {
  color: #333;
  min-height: inherit;
  padding: 32px 40px;
}
.update-modal .header,
.cancel-modal .header,
.image-modal .header {
  font-size: 20px;
  font-weight: bold;
}
.update-modal .body,
.cancel-modal .body,
.image-modal .body {
  margin-top: 16px;
  font-size: 16px;
}
.update-modal .actions,
.cancel-modal .actions {
  display: flex;
}
.update-modal .actions,
.cancel-modal .actions,
.image-modal .actions {
  margin-top: 23px;
  text-align: center;
}
.update-modal .btn,
.cancel-modal .btn,
.image-modal .actions .btn {
  width: 144px;
}
.actions .close-btn,
.actions-grp .close-btn {
  border: 1px solid #ddd;
  background-color: #f4f4f4;
  color: #444;
  margin-right: 12px;
}
.actions .right-btn {
  margin-left: 12px;
}
.image-modal .mheight:not(.select-img) .body {
  text-align: center;
}
.image-modal .mheight:not(.select-img) .actions,
.actions-grp {
  margin-top: 40px;
}
.actions-grp .btn {
  width: 312px;
}
.actions-grp .btn:not(:last-child) {
  margin-bottom: 20px;
}
.image-modal .warning {
  text-align: left;
  padding: 0 !important;
}
/*スタッフ一覧 stf*/
.stf1_1 td {
  vertical-align: top;
}
@media screen and (max-width: 960px) {
  .stf1_1 .stfsec {
    padding-top: 20px;
  }
}
/*acc*/
.acc h3 {
  margin-bottom: 25px;
}
/*アカウント一覧*/
.accsec .btn.btn1 {
  margin-left: auto;
  display: table;
}
.accounts .table2 {
  min-width: 850px;
}
.accounts .table2 td {
  vertical-align: middle;
  text-align: center;
}
.accounts .table2 td:nth-of-type(4),
.accounts .table2 td:nth-of-type(5) {
  vertical-align: top;
}
.accounts .table2 .wb-label {
  text-align: center;
}
.accounts .table2 svg {
  font-size: 16px;
}
.accounts .labeltd {
  width: 200px;
}
.accounts form > div {
  margin-left: 30px;
}
.accounts .mcon2 p {
  margin-left: 20px;
}
.accounts .square_orange,
.add .square_orange {
  text-align: left;
  margin-bottom: 20px;
  display: block;
}
.accounts .square_orange span,
.add .square_orange span {
  margin-bottom: 3px;
}
/*管理者の招待 スタッフの招待*/
.add.staff .table2 {
  margin: 20px 0;
}
.add .square_orange.orangef {
  margin-top: 0;
}
.add .square_orange.orangel {
  margin-bottom: 0;
}
.add .cntsecpaddingtop {
  position: relative;
}
.add .accsec .table2 th {
  padding-top: 15px;
}
.add form .table2 th {
  text-align: left;
  padding-left: 20px;
  width: 30%;
  min-width: 200px;
}
.add .helplink {
  margin-top: 10px;
  margin-left: 12px;
  color: #0070c0;
  cursor: pointer;
}
.add.staff .helplink {
  position: absolute;
  top: 0;
  right: 0;
}
.add .helplink svg {
  margin-right: 5px;
}
.add .helplink span {
  text-decoration: underline;
}
.add .modal .mcontent {
  max-width: 1000px;
}
.add .table2.table3 {
  width: 100%;
  table-layout: fixed;
  min-width: 800px;
  margin-bottom: 0;
}
.add .table2.table3 td {
  text-align: center;
}
.add .table2.table3 td span {
  font-size: 20px;
}
@media screen and (max-width: 500px) {
  .add form .table2 th {
    width: 100%;
  }
  .add form .table2 td:last-child {
    display: flex;
  }
  .add.admins .square_orange {
    margin-bottom: 0;
  }
  .add.staff .helplink {
    top: 27px;
  }
}
/*支払い履歴*/

/*クレジットカード情報*/
.btn-success {
  background-color: #00a65a;
  border-color: #008d4c;
}
.btn-success:hover,
.btn-success:active {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.customer .table2 th:first-child {
  min-width: 200px;
  width: 20%;
}
.change .overflowy {
  height: auto;
  background: #fff;
  padding: 20px;
  border: 1px solid #d2d6de;
}
.change .kiyakuarea p {
  line-height: 1.6em;
}
.change iframe {
  height: 500px;
  margin-bottom: 20px;
  padding: 0 15px 0;
}
.kiyaku .kiyakuwrap {
  height: auto;
  background: #fff;
  padding: 20px;
  border: 1px solid #d2d6de;
}
.kiyaku .kiyakuarea p {
  line-height: 1.6em;
}
.change .square_orange {
  position: relative;
  margin-bottom: 30px;
}
.change .square_orange .doui {
  width: auto;
  background: none;
  margin-left: 20px;
}
.change .accsec .btn.btn1 {
  margin: auto auto 5px;
  min-width: 220px;
  width: 25%;
  text-align: center;
}
.change .accsec form p {
  text-align: center;
}
.change .modal .mcontent {
  max-width: 900px;
}
.change .modal table {
  margin-bottom: 0;
}
.change .modal th {
  padding-top: 15px;
  width: 170px;
}
.change .modal .table2 td,
.tags .modal .table2 td {
  text-align: left;
}
.change .modal select {
  width: 90px;
  height: 35px;
}
.change .modal select + div {
  margin: 0 5px;
  display: inline;
}
.change .modal .toji button:last-child {
  width: 200px;
  margin-top: 10px;
}
.py1_1.change .modal th {
  text-align: center;
}
@media screen and (max-width: 400px) {
  .change .modal form {
    height: 350px;
    overflow-y: scroll;
    margin-bottom: 20px;
  }
  .change .modal .toji {
    flex-direction: column;
    align-items: center;
  }
}
/*タグ設定*/
.tags .table2 .th1 {
  width: 60%;
}
.tags .table2 td.center div {
  text-align: center;
}
.tags .accsec .btn.btn1 {
  margin-top: 20px;
  text-align: center;
}
.tags .modal .mcontent.mcon1 {
  max-width: 900px;
}
.tags .modal .table2 {
  margin-bottom: 0;
}
.tags .modal th {
  min-width: 150px;
}
@media screen and (max-width: 500px) {
  .tags .modal form {
    height: 350px;
    overflow-y: scroll;
  }
}
/*スキン設定 広告設定*/
.settings .accsec p {
  margin-bottom: 20px;
  line-height: 1.5em;
  font-size: 16px;
}
.settings .skindummy {
  margin-bottom: 70px;
  display: flex;
}
.settings .skindummy div {
  width: 31%;
  margin-right: 2%;
  font-size: 12px;
}
.settings .skindummy img {
  display: block;
  margin-top: 5px;
  width: 100%;
}
.settings .table2,
.settings .table2 {
  min-width: 0;
}
.settings .table2 th,
.settings .table2 td {
  display: block;
  text-align: left;
  width: 100%;
  position: relative;
}
.settings .accsec .formbtn1 {
  display: table;
  margin-left: auto;
}
.settings .accsec .formbtn1 .btn {
  display: inline-block;
  margin-left: 8px;
}
.ads form {
  margin-bottom: 5px;
}
.ads .table2 .thhead {
  background: #f5f5f5;
}
.ads .table2 .thhead button {
  position: absolute;
  right: 10px;
}
.ads .table2 + .btn3 {
  margin-top: 20px;
  margin-bottom: 35px;
}
@media screen and (max-width: 760px) {
  .settings .skindummy {
    flex-direction: column;
    justify-content: center;
  }
  .settings .skindummy div {
    width: 60%;
    margin: auto;
    min-width: 285px;
  }
  .settings .skindummy img {
    margin: 0 auto 30px;
  }
}
/*ログインページ /doctors/add/*/
.doctors .content {
  background-color: #ddd;
}
.doctors .header01 {
  text-align: center;
}
.doctors .cntinnerwrap {
  max-width: 500px;
  width: 90%;
  margin: auto;
}
.doctors h1 {
  font-size: 33px;
}
.doctors h2 {
  font-size: 18px;
  margin-top: 5px;
  margin-bottom: 30px;
}
.doctors .table2 {
  min-width: 200px;
  padding: 8px;
}
.doctors .table2 td {
  border: 0;
  padding: 20px 20px 0;
}
.doctors .table2 tr:nth-of-type(4) td {
  padding-top: 0;
}
.doctors .table2 td.lside {
  padding-top: 5px;
  padding-bottom: 25px;
}
.doctors .login {
  display: table;
  margin: auto;
  margin-bottom: 20px;
}
.doctors a {
  font-size: 13px;
}
.doctors input[type="checkbox"] {
  position: relative;
}
.doctors .table2 + div {
  margin-top: 15px;
  text-align: center;
  padding-bottom: 50px;
}
@media all and (-ms-high-contrast: none) {
  /*ie*/
  .doctors .login {
    display: block;
  }
}
@media screen and (max-width: 430px) {
  .doctors .login {
    font-size: 10px;
  }
  .doctors label {
    text-align: left;
  }
  .doctors label.square_orange {
  }
  .doctors label.square_orange + input {
    font-size: 10px;
    padding: 7px;
  }
}
/*ログインエラー*/
.er1_1 header {
  background: #eb942f;
}
.er1_1 .logo {
  background: none;
}
.er1_1 .errorbox {
  border: 1px solid #dd4b39;
  background: #fff;
}
.er1_1 h2 {
  font-weight: normal;
}
.er1_1 h2 + div {
  padding: 10px;
  text-align: center;
}
.er1_1 .btn {
  margin-top: 20px;
}
/*新規医療者登録*/
.rg h2 {
  text-align: center;
  margin-bottom: 20px;
}
.medical h2 + p {
  max-width: 1000px;
  width: 100%;
  margin: auto;
}
.medical .table2 {
  box-sizing: border-box;
  width: 500px;
  margin: auto;
}
.medical .table2 th,
.medical .table2 td {
}
.medical .table2 th.rside {
  white-space: nowrap;
  vertical-align: middle;
}
.medical .table2 th.rside.bikou {
  vertical-align: top;
}
.medical .table2 .flex {
  display: flex;
}
.medical .table2 .flex div {
  display: flex;
  align-items: center;
  margin-right: 10px;
}
.medical select,
.medical input {
  height: 35px;
}
.medical .flex select,
.medical .flex input {
  margin-right: 5px;
}
.medical .rgselect {
  width: 150px;
  float: left;
}
.medical .overflow + p {
  max-width: 735px;
  width: 100%;
  margin: auto;
}
.medical .btn1 {
  width: 200px;
  display: block;
  text-align: center;
  margin: 100px auto 0;
}
.medical .rgcon2 {
  width: 300px;
  margin: 40px auto 0;
}
.medical .rgcon2 img {
  width: 100%;
  border: 1px solid #d2d6de;
  margin-bottom: 20px;
}
.medical .rgsec2 h2 + p,
.medical .rgsec3 h2 + p {
  width: 500px;
}
.medical .rgsec4 h2 + p,
.medical .rgsec5 h2 + p {
  text-align: center;
}
.medical .rgsec1,
.medical .rgsec2,
.medical .rgsec3,
.medical .rgsec4,
.medical .rgsec5 {
  display: none;
}
/*クレジットカード情報登録 py1_1*/
.py1_1 .content h1 {
  background: #e7e7e7;
  border: 1px solid #d2d6de;
  padding: 10px 2%;
}
.py1_1.change .overflowy:first-of-type {
  height: auto;
  padding: 10px;
}
.py1_1 table {
  margin: auto;
}
.py1_1 table th,
.py1_1 table td {
  text-align: left;
}
.py1_1 table.right th,
.py1_1 table.right td {
  text-align: right;
}
.py1_1 .pysec .btn {
  display: block;
  width: 300px;
  margin: 0 auto 7px;
  text-align: center;
}
/*アカウント招待 inv1_1*/
.inv1_1 .overflowy {
  height: auto;
  background: #fff;
  padding: 20px;
  border: 1px solid #d2d6de;
}
.inv1_1 table {
  width: 100%;
}
.inv1_1 th {
  font-weight: bold;
}
.inv1_1 td {
  display: block;
  background: #e7e7e7;
  border: 1px solid #d2d6de;
  padding: 5px 10px;
  margin-bottom: 20px;
}
/*ホーム dashboard*/
/*.dashboard .content{padding-top: 140px;}
.dashboard .sidemenu{top: 140px;}
*/
.dashboard .kpi {
  display: none;
}
.dashboard .kpi {
  line-height: 20px;
  position: fixed;
  top: 50px;
  width: 100%;
  z-index: 99;
  padding: 13px;
  border-top: 1px solid #d2d6de;
  border-bottom: 1px solid #d2d6de;
  background: #e7e7e7;
}
.dashboard .kpi > div {
  display: flex;
  justify-content: center;
}
.dashboard .kpisec {
  background: #fff;
  border: 1px solid #adadad;
  border-radius: 10px;
  max-width: 300px;
  width: 28%;
  margin: 0 5px;
  padding: 5px 15px;
}
.dashboard .kpisec > div {
  display: table;
  width: 100%;
}
.dashboard .kpisec > div > div {
  display: table-cell;
  padding-top: 5px;
}
.dashboard .kpisec > div > div:first-child {
  width: 85px;
  font-size: 28px;
}
.dashboard .kpisec > div > div:nth-of-type(2) {
  font-size: 20px;
}
.dashboard .kpisec > div > div:last-child {
  width: 45px;
}
.dashboard .kpisec > div > div:last-child svg {
  margin-left: 5px;
}
.dashboard .kpisec + span {
  position: absolute;
  right: 20px;
  bottom: 1px;
  font-size: 40px;
  color: #00c0ef;
}
.dashboard .kpisec .fa-long-arrow-alt-up {
  color: #7bb5ec;
}
.dashboard .kpisec .fa-long-arrow-alt-down {
  color: #90ed7d;
}
.dashboard .kpisec .fa-long-arrow-alt-right {
  color: #434343;
}
.dashboard .toolbar {
  display: block;
}
.dashboard .kensaku {
  margin: 100px auto 0;
  max-width: 400px;
  width: 100%;
  display: table;
}
.dashboard .kensaku input[type="search"] {
  width: calc(100% - 80px);
}
.dashboard .kensaku input[type="search"] + input {
  margin-left: 10px;
}
.dashboard .hmcon {
  display: flex;
  width: 540px;
  margin: 70px auto 0;
  padding: 10px;
  background: #e7e7e7;
}
.dashboard .hmcon img {
  width: 40px;
  height: 45px;
  font-size: 45px;
  margin: 14px 25px 5px 15px;
}
.dashboard .hmcon p {
  margin-bottom: 5px;
}
.dashboard .hmcon button {
  text-decoration: underline;
  color: #0070c0;
  margin-right: 20px;
  padding: 0;
  font-weight: bold;
}

.dashboard .hminfo {
  display: flex;
  width: 480px;
  max-width: 100%;
  margin: 20px auto 0;
  padding: 10px;
}

.dashboard .modal .toji {
  display: flex;
  justify-content: flex-end;
}
.dashboard .modal .toji .modalclose + button {
  width: auto;
  padding: 5px 15px;
}
.dashboard .modal .mcon2 .modal-header {
  display: flex;
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 25px;
  justify-content: space-between;
  font-size: 18px;
}
.dashboard .modal .mcon2 .modal-content {
  margin-top: 20px;
  font-size: 14px;
  width: 101%;
}
.dashboard .modal .mcon2 ul {
  margin-left: 40px;
  margin-top: 10px;
  margin-bottom: 10px;
  list-style: initial;
}
.dashboard .modal .mcon2 .modal-content .btn1 {
  margin: 10px 38% 10px;
  padding: 10px 14px 10px;
}
.dashboard .modal .mcon2 .modal-footer {
  border-top: 1px solid #e5e5e5;
  font-size: 14px;
  margin: 10px 0 10px;
}
.dashboard .modal .mcon2 .modal-footer a {
  text-decoration: initial;
  color: #3c8dbc;
}
@media screen and (max-width: 960px) {
  /*  .dashboard .kpi{top: 88px;}
  .dashboard .content{padding-top: 324px;}
  .dashboard .sidemenu{top: 0px;}
*/
  .dashboard .kpi > div {
    display: block;
  }
  .dashboard .kpisec {
    width: calc(100% - 50px);
    margin: 0 50px 0 0;
    max-width: 100%;
  }
  .dashboard .kpisec:nth-of-type(2),
  .dashboard .kpisec:nth-of-type(3) {
    margin-top: 10px;
  }
  .dashboard .kensaku input[type="search"] {
    width: calc(100% - 80px);
  }
  .dashboard .kensaku input[type="search"] + input {
    width: auto;
  }
}
@media screen and (max-width: 500px) {
  .dashboard .kensaku,
  .dashboard .hmcon {
    width: 100%;
  }
}

/*お知らせ　nt1_1*/
.hnavmenu {
  position: absolute;
  width: 90%;
  height: 80%;
  font-size: 15px;
  display: none;
}
.hnavmenu.on {
  display: block;
}
.before,
.after {
  position: absolute;
  height: auto;
  padding: 0;
  right: 37px;
  top: -17px;
  border: 0;
  z-index: 2;
  border-right: 50px solid transparent;
  border-bottom: 48px solid #d2d6de;
  border-left: 50px solid transparent;
  background: transparent;
  width: 1px;
}
.after {
  right: 35px;
  border-bottom: 48px solid #fff;
}
@media screen and (max-width: 960px) {
  .before {
    right: 18px;
  }
  .after {
    right: 16px;
  }
}
.hnavmenu .hnavwrap {
  position: relative;
  border: 1px solid #d2d6de;
  background: #fff;
  padding: 5px;
  height: 80%;
}
.hnavmenu .hnavwrap li {
  width: 100%;
  display: table;
}
.hnavmenu .hnavwrap li:hover {
  background: #eb942f;
  color: #f6f6f6;
}
.hnavmenu .hnavwrap li.noback:hover {
  background: unset;
  color: unset;
}
.hnavmenu .hnavwrap li a {
  display: table;
  width: 100%;
  height: 60px;
}
.hnavmenu .hnavwrap li a div {
  display: table-cell;
  height: 40px;
  line-height: 2em;
  vertical-align: middle;
}
.nt1_1.hnavmenu .before,
.nt1_1.hnavmenu .after,
.in1_1.hnavmenu .before,
.in1_1.hnavmenu .after {
  top: -17px;
}
.hnavmenu .hnavwrap > div {
  border-top: 1px solid #d2d6de;
  height: 70px;
}
.hnavmenu .hnavwrap > div a {
  display: block;
  text-align: center;
  width: 100%;
  height: 100%;
  line-height: 69px;
  margin: auto;
  font-size: 13px;
  text-decoration: underline;
}
.hnavmenu .hnavwrap > div a:hover {
  background: #eb942f;
  color: #f6f6f6;
}
/*お知らせ　nt1_1*/
.nt1_1.hnavmenu,
.in1_1.hnavmenu {
  right: 10px;
  max-width: 400px;
  font-size: 15px;
}
.nt1_1.hnavmenu .hnavwrap li:nth-child(2n):hover,
.in1_1.hnavmenu .hnavwrap li:nth-child(2n):hover {
  background: #eb942f;
  color: #f6f6f6;
}
.nt1_1.hnavmenu .hnavwrap li:nth-child(2n),
.in1_1.hnavmenu .hnavwrap li:nth-child(2n) {
  background: #ffdc83;
}
.nt1_1.hnavmenu .hnavwrap p,
.in1_1.hnavmenu .hnavwrap p {
  text-align: center;
  background-color: #e7e7e7;
  font-weight: bold;
  padding: 5px;
}
.nt1_1.hnavmenu .hnavwrap {
  top: 30px;
  max-height: 500px;
  min-height: 150px;
  right: 30px;
}
.in1_1.hnavmenu .hnavwrap {
  top: 30px;
  max-height: 400px;
  right: 30px;
  overflow-x: auto;
}
.nt1_1.hnavmenu .hnavwrap p.notice,
.in1_1.hnavmenu .hnavwrap p.notice {
  text-align: center;
  margin-top: 50px;
}
.nt1_1.hnavmenu .hnavwrap li a .nttime,
.in1_1.hnavmenu .hnavwrap li a .nttime {
  text-align: right;
  vertical-align: bottom;
  font-size: 13px;
  width: 55px;
}
@media screen and (max-width: 960px) {
  .nt1_1.hnavmenu,
  .in1_1.hnavmenu {
    right: 10px;
    max-width: 400px;
  }
  .nt1_1.hnavmenu .hnavwrap {
    top: 30px;
    max-height: 500px;
    min-height: 150px;
  }
  .in1_1.hnavmenu .hnavwrap {
    top: 30px;
    max-height: 400px;
  }
  .nt1_1.hnavmenu .hnavwrap li a .nttime,
  .in1_1.hnavmenu .hnavwrap li a .nttime {
    text-align: right;
    vertical-align: bottom;
    font-size: 13px;
  }
}
/*お問い合わせ　cs1_1*/
.cs1_1.hnavmenu {
  right: 10px;
  max-width: 400px;
}
.cs1_1.hnavmenu .hnavwrap {
  top: 30px;
  height: calc(61px * 5 + 10px);
  z-index: 1;
}
.cs1_1.hnavmenu .hnavwrap li:nth-child(2),
.cs1_1.hnavmenu .hnavwrap li:nth-child(3),
.cs1_1.hnavmenu .hnavwrap li:nth-child(4),
.cs1_1.hnavmenu .hnavwrap li:nth-child(5){
  border-top: 1px solid #d2d6de;
}
.cs1_1.hnavmenu .hnavwrap li a div:nth-child(2),
.cs1_1.hnavmenu .hnavwrap li a div:nth-child(3),
.cs1_1.hnavmenu .hnavwrap li a div:nth-child(4),
.cs1_1.hnavmenu .hnavwrap li a div:nth-child(5) {
  text-align: right;
}
.cs1_1.hnavmenu .fa-caret-right {
  vertical-align: middle;
}
@media screen and (max-width: 960px) {
  .cs1_1.hnavmenu {
    right: 9px;
  }
  .cs1_1.hnavmenu > div:before,
  .cs1_1.hnavmenu > div::after {
    right: 4px;
  }
}
/*プロフィール設定　prf1_1*/
.prf1_1.hnavmenu {
  right: 10px;
  max-width: 400px;
}
.prf1_1.hnavmenu .before {
  border-right: 0px solid transparent;
  border-bottom: 48px solid #d2d6de;
  border-left: 63px solid transparent;
  background: transparent;
}
.prf1_1.hnavmenu .after {
  border-right: 0px solid transparent;
  border-bottom: 48px solid #fff;
  border-left: 63px solid transparent;
  background: transparent;
}
.prf1_1.hnavmenu > div:before,
.prf1_1.hnavmenu > div:after {
  transform: rotate(135deg);
}
.prf1_1.hnavmenu .hnavwrap {
  top: 30px;
  height: auto;
  z-index: 1;
}
.prf1_1.hnavmenu .hnavwrap .profile {
  border-top: none;
  text-align: center;
  padding-top: 5px;
  background: #ffdc83;
  height: auto;
}
.prf1_1.hnavmenu .hnavwrap .profile p {
  font-size: 24px;
  margin-bottom: 5px;
  line-height: 25px;
}
.prf1_1.hnavmenu .hnavwrap li:not(:first-child) {
  border-top: 1px solid #d2d6de;
}
.prf1_1.hnavmenu .hnavwrap li a div:nth-child(2) {
  text-align: right;
}
.prf1_1.hnavmenu .fa-caret-right {
  vertical-align: middle;
}
@media screen and (max-width: 960px) {
  .prf1_1.hnavmenu {
    right: 9px;
  }
  .prf1_1.hnavmenu > div:before,
  .prf1_1.hnavmenu > div::after {
    right: -19px;
  }
}
/*お知らせ一覧　nt1_2*/
.sidemenu ul li a:hover,
.sidemenu ul li.active a {
  background: none;
}
.nt1_2 .sidemenu ul li svg.fa-angle-right {
  float: left;
  color: #eb942f;
}
.nt1_2 .sidemenu ul li a > div {
  display: block;
  width: 100%;
  color: #333;
  text-align: left;
  word-break: break-all;
}
.nt1_2 .sidemenu ul li.active a > div:nth-last-child(2),
.nt1_2 .sidemenu ul li:hover a > div:nth-last-child(2) {
  font-weight: bold;
}
.nt1_2 .sidemenu ul li a > div:nth-last-child(1) {
  text-align: right;
  font-size: 13px;
  padding-right: 5px;
}
.nt1_2 .article {
  -webkit-text-size-adjust: 100%;
}
.nt1_2 .article .posteddate {
  margin-bottom: 20px;
}
.nt1_2 .article .posteddate + div {
  padding: 20px;
  background: #fff;
  border: 1px solid #d2d6de;
}
.nt1_2 .posteddate {
  font-size: 18px;
}
.nt1_2 .article h2 {
  margin-bottom: 30px;
}
.nt1_2 .author {
  font-size: 16px;
  margin-top: 50px;
  text-align: right;
}
.nt1_2 .table1pager {
  margin-top: 20px;
}
@media screen and (max-width: 960px) {
  .nt1_2 .sidemenu.pulldown select {
    width: 100%;
  }
  .nt1_2 .cntsecpaddingtop {
    padding-top: 70px;
  }
  .nt1_2 .table1pager {
    padding: 0;
  }
}
.nt1_2 .cntsecpaddingtop pre {
  white-space: pre;
  white-space: pre-wrap;
  white-space: -pre-wrap;
  white-space: -o-pre-wrap;
  white-space: -moz-pre-wrap;
  white-space: -hp-pre-wrap;
  word-wrap: break-word;
}
/*グループ一覧　gp1_1 group*/
.gp1_1 .mbtn2 {
  display: table;
  margin-left: auto;
}
.gp1_1 .table1 tr:hover {
  background: #e7e7e7;
}
.gp1_1 th {
  position: relative;
}
.gp1_1 th svg {
  margin-left: 5px;
}
.gp1_1 th div {
  position: absolute;
  top: 10px;
  right: 15px;
  cursor: pointer;
}
.gp1_1 th .gp1th {
  width: 100px;
}
.gp1_1 .table1 td:first-child div {
  text-decoration: underline;
  cursor: pointer;
  display: inline-block;
  margin-right: 20px;
}
.gp1_1 .table1 td .mbtn1 {
  position: absolute;
  right: 7px;
}
@media all and (-ms-high-contrast: none) {
  /*ie*/
  .gp1_1 .table1 td .mbtn1 {
    top: 110%;
  }
}
@supports (-ms-ime-align: auto) {
  /*edge*/
  .gp1_1 .table1 td .mbtn1 {
    /* top: 110%; */
    position: relative;
    float: right;
    right: 0;
    top: 3px;
  }
}
.gp1_1 .label-tag,
.gp1_1 .label-group {
  text-align: center;
}
.gp1_1 .modal {
  height: 100vh;
}
.gp1_1 .mcontent {
  height: 90%;
}
.gp1_1 .mcontent > div,
.gp1_1 .mcontent form {
  height: 100%;
}
.gp1_1 .mcontent form > .div {
  height: calc(100% - 130px);
}
.gp1_1 .mcontent form > .div > .overflow {
  height: 100%;
}
.gp1_1 .modal table {
  min-width: 200px;
  width: 100%;
  margin: 0;
}
.gp1_1 .modal th,
.gp1_1 .modal td {
  display: block;
  background: none;
  border: 0;
  text-align: left;
}
.gp1_1 .modal th {
  padding-bottom: 0;
}

.gp1_1 .modal .cattuika {
  margin-top: 10px;
  color: #000;
}
.gp1_1 .modal .cattuika a {
  color: #76adce;
}
.gp1_1 .modal table table {
  margin-bottom: 20px;
}
.gp1_1 .modal .flex label {
  display: flex;
  align-items: center;
  height: 35px;
}
.gp1_1 .modal .flex .num.borderright input[disabled] {
  border-right-width: 0;
}
.gp1_1 .modal .flex .num:first-child input[disabled] {
  border-left: 1px solid #999;
}
.gp1_1 .modal .flex .num.errorm + div.disabled input[disabled] {
  border: 1px solid #999;
  border-left: 0;
  color: #dd4b39;
}
.gp1_1 .modal .num.nissuu {
  width: 60%;
}
/*血圧詳細血糖値詳細*/
.blood_sugar .chart_footer {
  margin: 20px 0;
  text-align: center;
  display: flex;
  justify-content: center;
}
.blood_sugar .chart_footer button {
  padding: 2px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
  color: #3c8dbc;
}
.blood_sugar .chart_footer span {
  position: relative;
  top: 1px;
  display: inline-block;
}
.blood_sugar .chart_footer svg {
  vertical-align: middle;
  margin-right: 2px;
}

.gp1_1 .modal th.rside,
.blood_sugar .modal th.rside,
.blood_pressure .modal th.rside {
  text-align: right;
  width: 80px;
  padding-right: 10px;
}
.gp1_1 .modal table table th,
.gp1_1 .modal table table td,
.blood_sugar .modal table th,
.blood_sugar .modal table td,
.blood_pressure .modal table th,
.blood_pressure .modal table td {
  display: table-cell;
  padding: 8px 0;
}
.gp1_1 .modal .num,
.blood_sugar .modal .num,
.blood_pressure .modal .num {
  width: 50%;
}
.gp1_1 .modal .ijou,
.blood_sugar .modal .ijou,
.blood_pressure .modal .ijou {
  font-size: 15px;
  font-weight: bold;
  text-decoration: none;
  margin-right: 5px;
}

.gp1_1 .modal .ijou,
.blood_sugar .modal .ijou,
.blood_pressure .modal .ijou {
  display: inline-block;
}
.gp1_1 .square_orange input[type="radio"] {
  position: relative;
}
.gp1_1 .errorinput + span {
  color: #dd4b39;
  margin-top: 8px;
  display: block;
}
@media screen and (max-width: 960px) {
  .gp1_1 .cntsecpaddingtop {
    padding-top: 70px;
  }
  .gp1_1 .mcontent {
    height: 80%;
  }
  .gp1_1 .modal tr {
    width: 100%;
  }
  .gp1_1 .modal table,
  .gp1_1 .modal tbody,
  .gp1_1 .modal tr,
  .blood_pressure .modal table,
  .blood_pressure .modal tbody,
  .blood_pressure .modal tr,
  .blood_sugar .modal table,
  .blood_sugar .modal tbody,
  .blood_sugar .modal tr {
    display: block;
    overflow: hidden;
  }
  .gp1_1 .modal table table tr,
  .blood_sugar .modal table tr,
  .blood_pressure .modal table tr {
    width: 450px;
    margin: auto;
  }
  .gp1_1 .modal table table th.center,
  .blood_sugar .modal table th.center,
  .blood_pressure .modal table th.center {
    display: table;
    width: 100%;
    text-align: center;
  }
  .gp1_1 .modal table table th.pc,
  .gp1_1 .modal table table td.pc,
  .blood_sugar .modal table th.pc,
  .blood_sugar .modal table td.pc,
  .blood_pressure .modal table th.pc,
  .blood_pressure .modal table td.pc {
    display: none;
  }
  .gp1_1 .modal table table th,
  .gp1_1 .modal table table td,
  .gp1_1 .modal table table th.sp,
  .gp1_1 .modal table table td.sp {
    display: table-cell;
  }
  .modal th.rside + .num {
    /*width: calc(100% - 167px);*/
  }
  .gp1_1 .modal .num,
  .blood_sugar .modal .num,
  .blood_pressure .modal .num {
    width: 250px;
  }
}
@media screen and (max-width: 650px) {
  .gp1_1 .modal th,
  .gp1_1 .modal td {
    padding-left: 0;
    padding-right: 0;
  }
  .gp1_1 .modal table table tr,
  .blood_sugar .modal table tr,
  .blood_pressure .modal table tr {
    width: 100%;
  }
  .gp1_1 .flex {
    display: block;
  }
  .gp1_1 .modal .flex .num {
    float: left;
  }
  .gp1_1 .modal .flex .num:nth-child(2n + 1) {
    width: 36%;
    border-left: 1px solid #999;
  }
  .gp1_1 .modal .flex .num.nissuu,
  .gp1_1 .modal .flex .num:first-child input[disabled] {
    border-left: 0;
  }
  .gp1_1 .modal .flex .num:nth-child(2n) {
    width: 64%;
  }
  .gp1_1 .modal .flex label {
    display: inline-block;
    height: auto;
  }
  .gp1_1 .modal .ijou,
  .blood_sugar .modal .ijou,
  .blood_pressure .modal .ijou {
    display: block;
    padding-bottom: 8px;
  }
  .gp1_1 .modal th.rside + .num,
  .blood_sugar .modal th.rside + .num,
  .blood_pressure .modal th.rside + .num {
    width: 40%;
  }
  .gp1_1 .modal .flex .num.nissuu input,
  .gp1_1 .modal .flex .num.nissuu + div input {
    margin-top: 10px;
    border-bottom-width: 2px;
  }
  .gp1_1 .modal .flex .num.nissuu {
    width: 80%;
  }
  .gp1_1 .modal .flex .num.nissuu + div {
    width: 20%;
  }
  .gp1_1 .modal .flex .num.borderright:first-child input,
  .gp1_1 .modal .flex .num.borderright:first-child + div input {
    border-bottom-width: 0;
  }
}
/*gp1_1 タググループ*/
.gp1_1 .modal td {
  position: relative;
}
.gp1_1 .modal .groupTagSelect {
  border: 0;
  box-shadow: none;
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  margin: -1px;
  display: block;
  font-size: 14px;
  line-height: 1.42857;
  color: #555;
}

/*カテゴリー一覧 cat1_1 karte*/
.cat1_1 .mbtn2 {
  display: table;
  margin-left: auto;
}
.cat1_1 .table1 {
  min-width: 800px;
}
.cat1_1 th {
  position: relative;
}
.cat1_1 th svg {
  margin-left: 5px;
}
.cat1_1 th div {
  position: absolute;
  top: 10px;
  right: 15px;
  cursor: pointer;
}
.cat1_1 th .cat1th {
  width: 100px;
}
.cat1_1 td:first-child div {
  display: inline-block;
  margin-right: 25px;
}
.cat1_1 .table1 td > button {
  position: absolute;
  right: 7px;
}
.cat1_1 .modal .mcontent {
  max-width: 1000px;
  width: 90%;
}
.cat1_1 .modal .table2 {
  min-width: 200px;
}
.cat1_1 .modal th,
.cat1_1 .modal td {
  display: block;
  background: #fff;
  border: none;
}
.cat1_1 .modal .btnright {
  margin-top: 0;
}
/**table3**/
.table3 tr th,
.table3 tr td {
  border: 2px solid transparent;
}
.table3 tr:nth-of-type(2n) th,
.table3 tr:nth-of-type(2n) td {
  background: #eeeeee;
}
.table3 tr:nth-of-type(2n + 1) th,
.table3 tr:nth-of-type(2n + 1) td {
  background: #f9f8f7;
}
.table3 tr:first-child th {
  background: #e7e7e7;
  border-bottom-width: 5px;
}

/**table3ここまで**/

/**モーダル**/
.modal {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: none;
  font-size: 15px;
}
body.on {
  height: 100vh;
  overflow: hidden;
}
body.on .modal {
  display: block;
  overflow: hidden;
}
.overLay {
  position: absolute;
  top: 0;
  left: 0;
  background: #000;
  opacity: 0.6;
  width: 100%;
  height: 100vh;
  z-index: 9999;
}

/** モーダルの画面外を押しても閉じないクラス */
.overLayFixed {
  position: absolute;
  top: 0;
  left: 0;
  background: #000;
  opacity: 0.6;
  width: 100%;
  height: 100vh;
  z-index: 9999;
}
.modal .mcontent {
  position: absolute;
  z-index: 10000;
  top: 50%;
  left: 50%;
  background: #fff;
  width: 90%;
  max-width: 600px;
  min-height: 300px;
  transform: translate(-50%, -50%);
  padding: 20px;
}
.modal .mcontent.groupset {
  min-height: 140px;
}
.mheight {
  min-height: 250px;
}
.spacebetween {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}
.end {
  text-align: right;
}
.modal h3 {
  font-weight: bold;
  font-size: 20px;
}
.modal table {
  width: 100%;
  margin-bottom: 20px;
  overflow-y: scroll;
}
.modal table .center {
  text-align: center;
}
.modal th,
.modal td {
  padding-bottom: 15px;
}
.modal th {
  padding: 8px;
  font-weight: bold;
}
.modal .rside {
  padding-right: 15px;
}
.modal .num input[type="date"] {
  height: 35px;
}
.modal .num input[type="text"],
.modal .num input[type="date"],
.modal .num input[type="number"],
.modal .num input[disabled] {
  width: 100%;
  font-size: 15px;
  background: #fff;
  color: #000;
  padding: 8px;
}
.modal .num.errorm input[type="text"],
.modal .num.errorm input[type="date"],
.modal .num.errorm input[type="number"],
.modal .num.errorm input[disabled] {
  border: 1px solid #dd4b39;
  color: #dd4b39;
}
.modal .num input[type="text"],
.modal .num input[type="date"],
.modal .num input[type="number"] {
  border: 1px solid #999;
}
.modal .num.nissuu input[disabled] {
  border: 1px solid #999;
  text-align: left;
  background-color: #ebebe4;
}
.modal .num input:disabled {
  border-left-width: 0;
  text-align: center;
  -webkit-text-fill-color: black;
  opacity: 1;
}
.modal .num input[name="withdrawal_days"]:disabled {
  -webkit-text-fill-color: initial;
  opacity: 1;
}

.modal .num.disabled {
  width: 80px;
}
.modal .btnright {
  display: table;
  margin-left: auto;
  margin-top: 40px;
}
.modal .toji {
  text-align: center;
}
.modal .toji button {
  padding: 5px 0;
  width: 100px;
  display: inline-block;
}
.modal .toji button.modalclose {
  background: #d9d9d9;
  border: 1px solid #7f7f7f;
}
.modal .toji button:nth-of-type(-n + 2) {
  margin-left: 15px;
  border-radius: 3px;
}
.modal .toji button:hover,
.modal .toji button:active {
  box-shadow: inset 0 5px 5px rgba(0, 0, 0, 0.125);
}
input[type="ragio"] {
  padding-right: 5px;
}
.modal .toji .modalclose + input {
  width: 100px;
  background: #00c0ef;
  border: 1px solid #00acd6;
  color: #fff;
}
/*モーダル睡眠*/
.sleep .modal .mcontent {
  max-width: 1000px;
}
.sleep.on #sleepmodal.contdummy {
  display: block;
  border: 0;
  margin-top: 5px;
  margin-bottom: 15px;
}
/*食事*/
.foods .modal .mcontent {
  max-height: 600px;
  height: auto;
}
.foods .modal #foodimg {
  margin: 0 30px;
  height: 100%;
}
.foods .modal .foodmodal {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 7px;
}
.foods .modal img {
  display: block;
  margin: auto;
  max-width: 500px;
  max-height: 225px;
  object-fit: cover;
}
.foods .modal .overflowy {
  min-height: 1px;
  max-height: 200px;
  margin: 10px 8px;
  padding: 0 10px 0;
}
@media screen and (max-width: 1024px) and (min-width: 1024px) {
  .foods .modal .overflowy {
    max-height: 140px;
  }
}
.foods .modal p {
  margin-top: 10px;
  margin-bottom: 30px;
  word-break: break-all;
}
@media all and (-ms-high-contrast: none) {
  /*ie*/
  .foods .modal #foodimg {
    object-fit: cover;
    font-family: "object-fit: cover;";
  }
}
@media screen and (max-width: 500px) {
  .foods .modal #foodimg {
    margin: 0;
  }
}

/* 患者情報未登録エラーモーダル */
#careplan-error-modal {
  padding: 20px;
  border: none;
}
#careplan-error-modal::backdrop {
  background-color: #000;
  opacity: 0.6;
}
#careplan-error-modal .btn-wrapper {
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
}
/**モーダルここまで**/

/** 患者ID連携ここから */
.cooperate form {
  margin-top: 20px;
  max-height: 450px;
}
.cooperate th,
.cooperate td {
  text-align: center;
  padding: 10px;
}
.cooperate th {
  text-align: center;
  border-bottom: 2px solid #f4f4f4;
}
.cooperate .square_orange input[type="radio"] + span,
.cooperate label.square_orange {
  margin-right: 0px;
}
.cooperate table th:last-of-type {
  min-width: 85px;
}
.cooperate .modal .mcontent {
  max-width: 650px;
  min-height: 300px;
}
.cooperate .modal .toji {
  text-align: right;
  margin-top: 15px;
}
.cooperate div.tablescroll {
  height: 400px;
  overflow-x: auto;
}
.cooperate span.errorm {
    background: #dd4b39;
    color: #fff;
    padding: 13px;
    margin-bottom: 15px;
    text-align: center;
    font-size: 16px;
}
/** 患者ID連携ここまで */

/** ↓ 処方箋 */
.prescription_kensaku {
  width: 100%;
}
.prescription_kensaku input[type="search"] {
  width: calc(100% - 30px);
}

#prescription_table .table1 td img {
  width: 60px;
  height: 80px;
  margin: 2px;
  object-fit: cover;
  cursor: pointer;
}

#prescription_table {
  width: 100%;
  /*  table-layout: fixed; */
}

#prescription_table {
  min-width: 1000px;
}

#prescription_table th {
  white-space: nowrap;
  vertical-align: middle;
}

#prescription_table tr.closed td {
  background: #e7e7e7;
}

#prescription_table tr.deleted:hover td {
  background: #F5CCCC;
}

#prescription_table tr:hover {
  background: #e7e7e7;
}

#prescription_table tr.deleted td div.delete_item {
  z-index: 1;
  top: 0;
  left: 0;
  position: relative;
  padding: 0.8em 2.8em;
  background: #ffebee;
}

#prescription_table tr.deleted td div.delete_item {
  z-index:1;
  top: 10px;
  left: 0;
  width: 700px;
  position: absolute;
  color: white;
  background: rgba(255, 0, 0, 0.6);
  text-align: center;
  font-size:150%;
  margin: 0;
  padding: 0 0.8em;
  -moz-border-radius: 0 10px 10px 0;
  -webkit-border-radius: 0 10px 10px 0;
  -moz-box-shadow: 0 1px 2px #333;
  -webkit-box-shadow: 0 1px 2px #333;
  -moz-transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out;
}

#prescription_table tr.deleted td div.delete_item:hover {
  left: 20px;
}

#prescription_table td.left {
  text-align: left;
  white-space: normal;
  word-break: break-word;
}

#prescription_table td.normal {
  white-space: normal;
  word-break: break-word;
}

#prescription_table td.nowrap {
  white-space: nowrap;
}

#prescription_table td.right {
  text-align: right;
}

#prescription_table td.label {
  background: #e7e7e7;
  height: auto;
}

.closed .square_orange input[type="checkbox"]:hover + label,
.closed .square_orange input[type="checkbox"]:hover + span {
  background-position: -72px 0;
}

.closed .square_orange input[type="checkbox"]:checked + label,
.closed .square_orange input[type="checkbox"]:checked + span {
  background-position: -96px 0;
}
.closed .square_orange input[type="checkbox"].checked + label,
.closed .square_orange input[type="checkbox"].checked + span {
  background-position: -96px 0;
}

.font-red {
  color: red;
}

/** ↑ 処方箋 */

/** 療養計画書患者登録 ここから */
.modal .mcon4 {
  height: 90%;
  max-height: 700px;
  min-width: 348px;
}
.modal .mcon4 th {
  position: relative;
}
.modal .mcon4 td {
  position: relative;
}
.modal .mcon4 form {
  height: calc(100% - 90px);
  max-height: 563px;
}
.modal .mcon4 form > div {
  height: calc(100% - 44px);
  overflow: auto;
}
.modal .mcon4 table {
  min-width: 200px;
  width: 100%;
  margin: 0;
}
.modal .mcon4 th,
.modal .mcon4 td {
  display: block;
  background: none;
  border: 0;
  text-align: left;
}
.modal .mcon4 th {
  padding-bottom: 0;
}
.modal .mcon4 .require {
  background-color: #00a65a;
  border-radius: 20px;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  line-height: 24px;
  margin-left: 10px;
  text-align: center;
  width: 48px;
}

.confirm_modal table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px dashed #BCBCBC;
}

.confirm_modal tr {
  border-bottom: 1px dashed #BCBCBC;
}

.confirm_modal td {
  padding: 10px;
}

.confirm_modal .careplan_patient_label {
  color: #999999;
  text-align: left;
  width: 50%;
}

.confirm_modal .careplan_patient_content {
  text-align: left;
  width: 50%;
}

/* 会員連携確認モーダル */
.careplan_patient_validator {
  margin-top: 32px;
}
.careplan_patient_info {
  display: flex;
  gap: 40px;
  padding: 0 32px;
  margin-bottom: 32px;
}
.careplan_patient_info_list {
  width: 200px;
}
.careplan_patient_info_list-item {
  display: flex;
}
.careplan_patient_info_list-item > span:nth-child(1) {
  white-space: nowrap;
}
.careplan_patient_accent-text {
  color: #dd4b39;
  font-size: 18px;
  font-weight: bold;
}
.careplan_patient_button {
  display: flex;
  justify-content: center;
  gap: 16px;
}
/** 療養計画書患者登録 ここまで */

/** 療養計画書作成画面 ここから */
.careplan .careplan_title {
  width: 150px;
  margin-right: 50px;
  display: inline-block;
  word-wrap: break-word;
}
.careplan .careplan_input_small {
  width: 10%;
  display: inline-block;
}
.careplan .careplan_input_middle {
  width: 60%;
  display: inline-block;
}

#careplan-cancel-dialog {
  padding: 20px;
  border: none;
}
#careplan-cancel-dialog::backdrop {
  background-color: #000;
  opacity: 0.6;
}
#careplan-cancel-dialog .btn-wrapper {
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
}
/** 療養計画書作成画面 ここから */

/** 療養計画書一覧 ここから */
.careplans-list .sidemenu li.disabled {
  background: rgba(51, 51, 51, 0.1);
  cursor: not-allowed;
}
.careplans-list .sidemenu li.disabled a {
  pointer-events: none;
}
.careplans-list .pctkikan div {
  margin: auto;
}
.careplans-list .pctkikan span {
  margin: 0 10px;
}
.careplans-list select {
  width: 100%;
  font-size: 15px;
  font-family: inherit;
}
.careplans-list option {
  padding: 5px;
}
.careplans-list .btn[disabled] > a {
  pointer-events: none;
}
.careplans-list .table2 {
  table-layout: fixed;
  min-width: 735px;
  word-break: break-all;
}
.careplans-list .itiran1 .table2 td[rowspan="6"] {
  text-align: center;
}
.careplans-list .itiran1 .table2 tr td:nth-of-type(3) {
  text-align: left;
}
.careplans-list rect[fill="#24FF0D"] {
  rx: 0;
  ry: 0;
} /*chrome firefox*/
.careplans-list rect[fill="#000000"] {
  rx: 0;
  ry: 0;
} /*chrome firefox*/
.ckd-status-no-pointer-events {
  pointer-events: none;
  cursor: not-allowed;
}
/** 療養計画書一覧 ここまで */

/** メンテ告知文言スタイル */
.mainte-announce {
  font-size: small;
  color: red;
  font-weight: bold;
}