@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-word; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

/* --------------------------------
	Common style
-------------------------------- */
html {
  height: 100%;
  font-size: 15px;
  box-sizing: border-box; }

body {
  color: #444444;
  font-family: "Noto Sans JP", sans-serif;
  height: 100%;
  width: 100%;
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
  background: #f6f6f6;
  box-sizing: border-box; }

#main {
  margin-top: 50px;
  margin-bottom: 100px;
  margin-left: 0;
  padding: 1rem;
  padding-bottom: 200px;
  overflow: hidden; }
  .no_frame #main {
    margin-top: 0;
    margin-left: 0; }
    .no_frame #main .card_fix {
      width: 100%;
      left: 0; }
  #main_header {
    position: relative; }
    #main_header h1 {
      color: #8C8C8C;
      font-size: 1.1rem;
      margin-bottom: 1rem;
      min-height: 2rem; }
      #main_header h1 span {
        display: block;
        margin-left: 0;
        font-size: 0.9em;
        font-weight: normal; }
    #main_header_btn {
      position: absolute;
      right: 0;
      bottom: 0; }
      #main_header_btn a {
        min-width: 180px;
        margin-right: 1rem; }
        #main_header_btn a:last-child {
          margin-right: 0; }
  #main_customer_multi {
    margin-bottom: 1rem;
    font-size: 0.8rem; }
  @media screen and (min-width: 992px) {
    #main {
      padding: 2rem;
      margin-left: 250px;
      padding-bottom: 200px; }
      #main_header h1 {
        font-size: 1.3rem; }
        #main_header h1 span {
          display: inline-block;
          margin-left: 1rem;
          font-size: 0.9em; }
      #main_header_btn {
        position: absolute;
        right: 0;
        bottom: 0; }
        #main_header_btn a {
          min-width: 180px;
          margin-right: 1rem; }
          #main_header_btn a:last-child {
            margin-right: 0; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
iframe.youtube {
  margin: 1rem 0;
  width: 100%; }
  @media screen and (min-width: 768px) {
    iframe.youtube {
      width: 500px;
      height: 300px; } }

h1 {
  font-size: 1.5rem; }

h2 {
  font-size: 1.1rem;
  border-left: #ccc 7px solid;
  padding: 0.8333333333rem 1rem 0.6666666667rem 1rem;
  position: relative;
  margin: 1rem 0;
  font-weight: normal;
  background-color: whitesmoke; }
  h2 a {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.7rem;
    font-size: 0.9rem; }
  h2 + div {
    margin: 2rem 0.5rem; }

h3 {
  font-size: 1rem;
  padding: 0.5882352941rem 1rem 0.5rem 1rem;
  border-left: #ccc 5px solid;
  margin: 1rem 0;
  font-weight: normal; }
  h3 + div {
    margin: 2rem 0.5rem; }

h4 {
  font-weight: normal;
  padding: 0.5rem 0;
  margin: 1rem 0;
  font-weight: normal; }
  h4 + div {
    margin: 2rem 0.5rem; }
  h4:before {
    content: "●";
    margin-right: 0.5rem;
    color: #ccc;
    font-size: 1.2rem; }

a {
  color: #DC4D27;
  text-decoration: none; }
  .admin a {
    color: #5a7ce0; }
  .customer a {
    color: #DC4D27; }
  .seller a {
    color: #76bf6f; }
  .contractor a {
    color: #61c1c5; }
  a.notlink {
    color: #444444; }
  a[href="#"] {
    color: #444444;
    cursor: auto; }

p {
  line-height: 1.5rem; }

strong.strong01 {
  color: #f64a4a; }
strong.strong02 {
  font-size: 1.5rem; }

ul {
  list-style: none; }

.ul_list {
  list-style-position: inside; }
  .ul_list li {
    margin: 1rem 0; }
  .ul_list.decimal {
    list-style-type: decimal; }

ol {
  list-style: none; }

.default-design {
  background-color: field !important; }

input {
  box-sizing: border-box;
  width: 100%; }
  input[type=checkbox], input[type=radio] {
    width: auto !important; }
  input.date {
    width: 150px; }
  input.flatpickr-input {
    min-height: 34px; }
  input.zipno {
    width: 130px !important; }
    input.zipno + span {
      display: inline-block !important; }
  input[disabled], input[readonly] {
    background: #E6E6E6; }
  @media screen and (min-width: 768px) {
    input {
      width: 200px;
      max-width: 100%; }
      input.address {
        width: 450px; }
      input.bank {
        width: 450px; }
      .anon input.address {
        width: 100%; } }
  @media screen and (min-width: 992px) {
    input {
      width: 240px; } }

[type=email], [type=password], [type=tel], [type=text], [type=number], textarea, [type=date], [type=time] {
  -webkit-appearance: none;
  -webkit-transition: border-color .1s linear 0s;
  border: 1px solid #ccc;
  border-radius: 6px;
  line-height: 1.5;
  margin-bottom: 0;
  padding: 5px 1rem;
  transition: border-color .1s linear 0s;
  font-size: 1rem; }

[type=time] {
  margin-left: 0.5rem; }

select {
  border: 1px solid #ccc;
  border-radius: 6px;
  line-height: 1.5;
  padding: 7px 1rem;
  font-size: 1rem;
  width: 100%; }
  select[disabled] {
    background: #E6E6E6; }
  select.width_auto {
    width: auto; }
  .birth_date select {
    width: auto; }
  @media screen and (min-width: 768px) {
    select {
      width: auto; } }

textarea[disabled], textarea[readonly] {
  background: #E6E6E6; }

input:focus, select:focus, textarea:focus, button:focus {
  outline: none;
  border: 1px solid;
  border-color: #DC4D27; }
  .admin input:focus,
  .admin select:focus,
  .admin textarea:focus,
  .admin button:focus {
    border-color: #5a7ce0; }
  .customer input:focus, .customer select:focus, .customer textarea:focus, .customer button:focus {
    border-color: #DC4D27; }
  .seller input:focus, .seller select:focus, .seller textarea:focus, .seller button:focus {
    border-color: #76bf6f; }
  .contractor input:focus, .contractor select:focus, .contractor textarea:focus, .contractor button:focus {
    border-color: #61c1c5; }

[type=checkbox],
[type=radio] {
  -webkit-transform: scale(1.4);
  -moz-transform: scale(1.4);
  -ms-transform: scale(1.4);
  -o-transform: scale(1.4);
  transform: scale(1.4);
  margin: 0;
  margin-right: 5px;
  margin-left: 5px; }

.year {
  width: 100px !important; }

.month {
  width: 70px !important; }

.verticalbox li {
  margin-bottom: 0.6rem; }
  .verticalbox li:last-child {
    margin-bottom: 0; }
.verticalbox input {
  margin-right: 8px; }

span.date_between::before {
  content: "～";
  padding: 1rem; }

textarea {
  width: 100%;
  font-size: 0.9rem;
  resize: vertical; }

img {
  max-width: 100%; }

.handle {
  cursor: grab; }

.hidden {
  display: none !important; }

/* --------------------------------
	Font
-------------------------------- */
.font_empha {
  color: #f64a4a;
  font-weight: bold; }

.font_red {
  color: #f64a4a; }

.note {
  font-size: 0.9rem;
  margin: 0.5rem 0;
  color: #f64a4a; }
  .note:before {
    content: "※"; }
  .note.note_dot {
    padding-left: 1rem; }
    .note.note_dot::before {
      content: "・・・"; }

.warn_note {
  font-size: 0.9rem;
  margin: 1rem 0 0 0;
  padding: 0.5rem 0.3rem;
  color: #f64a4a;
  font-weight: bold; }

.info_note {
  font-size: 0.9rem;
  margin: 0.5rem 0; }
  .info_note:before {
    content: "※"; }
  .info_note.note_dot {
    padding-left: 1rem; }
    .info_note.note_dot::before {
      content: "・・・"; }

.note_small {
  font-size: 0.8rem; }

/* --------------------------------
	Button
-------------------------------- */
.btn {
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  text-decoration: none;
  letter-spacing: 0.1rem;
  border-radius: 3px;
  border: none;
  cursor: pointer;
  transition: .2s ease-out;
  /*変化を緩やかに*/
  position: relative;
  overflow: hidden;
  padding: 0.8rem 1rem;
  vertical-align: middle;
  text-align: center;
  width: 100%;
  margin-top: 0.5rem; }
  .btn:hover {
    opacity: 0.8; }
  .btn .rp-effect {
    /*エフェクト*/
    position: absolute;
    border-radius: 50%;
    opacity: 0.35;
    /*波紋の濃さ*/
    transform: scale(0);
    background: #FFF;
    /*波紋色*/
    animation: ripple 700ms;
    pointer-events: none; }
  .btn[disabled] {
    opacity: 0.3;
    cursor: auto; }
  @media screen and (min-width: 992px) {
    .btn {
      width: auto;
      min-width: 150px; } }

.btn_emboss {
  color: #FFFFFF !important;
  background-color: #DC4D27;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  z-index: 2; }
  .admin .btn_emboss {
    background-color: #5a7ce0; }
  .customer .btn_emboss {
    background-color: #DC4D27; }
  .seller .btn_emboss {
    background-color: #76bf6f; }
  .contractor .btn_emboss {
    background-color: #61c1c5; }
  .btn_emboss:hover {
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
    z-index: 8; }

.btn_flat {
  color: #DC4D27;
  border: none;
  background: none; }
  .admin .btn_flat {
    color: #5a7ce0; }
  .customer .btn_flat {
    color: #DC4D27; }
  .seller .btn_flat {
    color: #76bf6f; }
  .contractor .btn_flat {
    color: #61c1c5; }
  .btn_flat:hover {
    background: #E6E6E6; }

.btn_line {
  color: #DC4D27;
  border-color: #ccc;
  border-style: solid;
  border-width: 1px;
  background: #fff; }
  .admin .btn_line {
    color: #5a7ce0; }
  .customer .btn_line {
    color: #DC4D27; }
  .seller .btn_line {
    color: #76bf6f; }
  .contractor .btn_line {
    color: #61c1c5; }
  .btn_line:hover {
    background: #E6E6E6; }

.btn_wide {
  width: 100%; }
  @media screen and (min-width: 992px) {
    .btn_wide {
      width: 30%; } }

.btn_icon {
  padding: 0.5rem; }
  .btn_icon i {
    font-size: 1.2rem !important;
    margin-right: 0 !important; }

.btn_block_flex {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center; }

/* --------------------------------
	Tab
-------------------------------- */
.tabs {
  margin: 0 auto; }
  .tabs input[name="tab_item"] {
    display: none; }
  .tabs .tab_item {
    float: left;
    width: calc(100%);
    height: 50px;
    line-height: 50px;
    border-bottom: 2px solid;
    border-color: #DC4D27;
    font-size: 16px;
    text-align: center;
    display: block;
    text-align: center;
    transition: all 0.2s ease;
    vertical-align: middle; }
    .admin .tabs .tab_item {
      border-color: #5a7ce0; }
    .customer .tabs .tab_item {
      border-color: #DC4D27; }
    .seller .tabs .tab_item {
      border-color: #76bf6f; }
    .contractor .tabs .tab_item {
      border-color: #61c1c5; }
    .tabs .tab_item:hover {
      opacity: 0.75; }
  .tabs .tab_content {
    display: none;
    padding: 1rem;
    clear: both;
    overflow: hidden;
    border: #ccc 1px solid;
    overflow-y: scroll; }
  .tabs #tab1:checked ~ #tab1_content,
  .tabs #tab2:checked ~ #tab2_content,
  .tabs #tab3:checked ~ #tab3_content,
  .tabs #tab4:checked ~ #tab4_content,
  .tabs #tab5:checked ~ #tab5_content,
  .tabs #tab6:checked ~ #tab6_content,
  .tabs #tab7:checked ~ #tab7_content,
  .tabs #tab8:checked ~ #tab8_content,
  .tabs #tab9:checked ~ #tab9_content,
  .tabs #tab10:checked ~ #tab10_content {
    display: block; }
  .tabs input:checked + .tab_item {
    background-color: #DC4D27;
    color: #fff; }
    .admin .tabs input:checked + .tab_item {
      background-color: #5a7ce0; }
    .customer .tabs input:checked + .tab_item {
      background-color: #DC4D27; }
    .seller .tabs input:checked + .tab_item {
      background-color: #76bf6f; }
    .contractor .tabs input:checked + .tab_item {
      background-color: #61c1c5; }
  @media screen and (min-width: 768px) {
    .tabs .tab_item {
      width: calc(100%/3); } }
  @media screen and (min-width: 992px) {
    .tabs .tab_item {
      width: calc(100%/7); } }

/* --------------------------------
	Material Design
-------------------------------- */
.partition {
  display: block; }
  @media screen and (min-width: 992px) {
    .partition::after {
      content: "";
      display: block;
      clear: both; }
    .partition > div {
      float: left; }
      .partition > div:nth-child(1) {
        width: 60%;
        padding-right: 2rem; }
      .partition > div:nth-child(2) {
        width: 40%; } }

.card {
  margin-bottom: 1rem;
  background: white;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  z-index: 2; }
  .card dl {
    overflow: hidden;
    display: block;
    width: 100%;
    border-bottom: #ccc 1px solid;
    min-height: 3.5rem; }
    .card dl:last-child {
      border-bottom: none; }
    .card dl.error {
      background: #fddcdc; }
    .card dl.info {
      background: #d9f3ea; }
      .card dl.info dd {
        font-weight: bold; }
    .card dl.invoiceBusinessNumber dd {
      width: auto; }
    .card dl.zipNo dd, .card dl.corpZipNo dd, .card dl.objectZip dd, .card dl.workZipNo dd, .card dl.zip dd {
      width: auto; }
    .card dl dt {
      display: block;
      width: 100%;
      vertical-align: middle;
      line-height: 1.4;
      padding: 1rem 0 0.5rem 0; }
      .card dl dt .required::after {
        content: "必須";
        background: #ff8d8d;
        color: #fff;
        font-size: 0.6rem;
        border-radius: 3px;
        vertical-align: middle;
        padding: 2px;
        margin-left: 5px; }
      .card dl dt span {
        font-size: 0.7rem; }
      .card dl dt .btn {
        min-width: auto;
        padding: 0.5rem;
        font-size: 0.8rem; }
    .card dl dd {
      display: block;
      vertical-align: middle;
      padding: 0.7rem 0;
      word-break: break-all; }
      .card dl dd .btn {
        min-width: auto;
        margin-top: 1rem; }
      .card dl dd span {
        display: block;
        padding: 0.5rem 0; }
      .card dl dd dl {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        /* flex-direction */
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-align-content: center;
        -ms-flex-line-pack: center;
        align-content: center;
        border: none;
        margin-bottom: 0.5rem;
        min-height: auto; }
        .card dl dd dl dt {
          width: auto;
          display: block;
          margin-right: 0.5rem;
          padding: 0.5rem 0; }
          .card dl dd dl dt .required:after {
            content: none; }
        .card dl dd dl dd {
          display: block !important;
          padding: 0;
          min-height: auto;
          width: 100%; }
        .card dl dd dl.address dt, .card dl dd dl.workAddress dt {
          display: none; }
  .card.fix {
    position: fixed;
    bottom: 0;
    left: 250px;
    right: 0;
    width: calc(100% - 250px);
    margin: 0; }
  .card_header {
    padding: 1rem;
    font-size: 1.2rem;
    position: relative;
    border-bottom: 1px solid #ccc;
    cursor: pointer; }
    .card_header i:first-child {
      margin-right: 0.5rem; }
    .card_header:before, .card_header:after {
      position: absolute;
      top: 1rem;
      right: 1rem; }
    .card_header:before {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      display: none; }
      .close .card_header:before {
        display: block; }
    .card_header:after {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      display: block; }
      .close .card_header:after {
        display: none; }
  .card_main {
    padding: 1rem; }
    .card_main .epoint_message {
      color: #f64a4a; }
    .card_main .error_message {
      color: #f64a4a;
      font-weight: bold;
      padding: 0.5rem 0; }
      .card_main .error_message p {
        padding-bottom: 8px; }
    .card_main_btn {
      margin: 0.5rem 0;
      text-align: right; }
      .card_main_btn .btn {
        height: 45px;
        margin-top: 0; }
    .card_main_note {
      margin-bottom: 1rem;
      color: #6E7783; }
    .card_main_message {
      border-radius: 3px;
      margin-bottom: 1rem; }
      .card_main_message p {
        padding: 1rem;
        font-weight: bold; }
      .card_main_message .error_message {
        padding: 1rem; }
      .card_main_message .info {
        background: #d9f3ea; }
    .close .card_main {
      display: none !important; }
    .card_main a i {
      font-size: 1.2rem;
      margin-right: 5px;
      vertical-align: middle; }
  .card_footer {
    padding: 1rem;
    text-align: center;
    position: relative; }
    .close .card_footer {
      display: none; }
    .card_footer_right {
      position: initial; }
    .card_footer_message {
      margin: 1rem 0;
      color: #f64a4a;
      font-weight: bold; }
  @media screen and (min-width: 992px) {
    .card {
      margin-top: 2rem; }
      .card dl {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        /* flex-direction */
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-align-content: center;
        -ms-flex-line-pack: center;
        align-content: center; }
        .card dl dt {
          width: 250px;
          padding: 0.5rem 0.3rem; }
        .card dl dd {
          flex: 1; }
          .card dl dd span {
            display: inline-block;
            padding-right: 0.5rem; }
          .card dl dd input + span {
            padding-left: 0.5rem; }
          .card dl dd .btn {
            min-width: auto;
            margin: 0 0 0 1rem; }
      .card_footer_right {
        position: absolute;
        top: 1rem;
        right: 1rem; } }

.card_half {
  display: flex; }
  .card_half .card {
    width: 100%;
    margin-right: 2rem; }
    .card_half .card:last-child {
      margin-right: 0; }

.card_fix {
  z-index: 100;
  position: fixed;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  text-align: center;
  padding: 0.7rem; }
  .card_fix .btn:first-child {
    margin-top: 0; }
  @media screen and (min-width: 768px) {
    .card_fix .btn {
      margin-top: 0;
      height: 43px;
      margin-right: 0.5rem; }
      .card_fix .btn:last-child {
        margin-right: 0; } }
  @media screen and (min-width: 992px) {
    .card_fix {
      width: calc(100% - 250px);
      left: 250px;
      padding: 1rem; } }

.card_tab {
  margin-bottom: 2rem; }
  .card_tab input {
    display: none; }
  .card_tab label:hover {
    opacity: 1; }
    .admin .card_tab label:hover {
      color: #5a7ce0;
      border: 1px solid #5a7ce0;
      background-color: #FFFFFF !important; }
    .seller .card_tab label:hover {
      color: #76bf6f;
      border: 1px solid #76bf6f;
      background-color: #FFFFFF !important; }
    .contractor .card_tab label:hover {
      color: #61c1c5;
      border: 1px solid #61c1c5;
      background-color: #FFFFFF !important; }
  @media screen and (min-width: 768px) {
    .card_tab.fixed {
      left: 0;
      position: fixed;
      top: 232px;
      width: 100%;
      margin-top: 0;
      z-index: 20; } }
  @media screen and (min-width: 992px) {
    .card_tab.fixed {
      left: 250px;
      width: calc(100% - 250px); } }
  .card_tab > div {
    margin: 0 auto; }
    .card_tab > div::after {
      content: "";
      display: block;
      clear: both; }
  .card_tab label {
    float: left;
    width: calc(100%/4);
    height: 50px;
    line-height: 50px;
    border-bottom: 2px solid;
    border-color: #DC4D27;
    font-size: 16px;
    text-align: center;
    display: block;
    text-align: center;
    transition: all 0.2s ease;
    vertical-align: middle;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    z-index: 2;
    background: #fff; }
    .admin .card_tab label {
      border-color: #5a7ce0; }
    .customer .card_tab label {
      border-color: #DC4D27; }
    .seller .card_tab label {
      border-color: #76bf6f; }
    .contractor .card_tab label {
      border-color: #61c1c5; }
  .card_tab input:checked + label {
    background-color: #DC4D27;
    color: #fff; }
    .admin .card_tab input:checked + label {
      background-color: #5a7ce0; }
    .customer .card_tab input:checked + label {
      background-color: #DC4D27; }
    .seller .card_tab input:checked + label {
      background-color: #76bf6f; }
    .contractor .card_tab input:checked + label {
      background-color: #61c1c5; }
  .card_tab_content {
    display: none; }
    .card_tab_content.select {
      display: block; }
  @media screen and (min-width: 768px) {
    .card_tab label {
      width: calc(100%/6); } }
  @media screen and (min-width: 992px) {
    .card_tab label {
      width: calc(100%/11);
      font-size: 0.85rem; } }

.remodal {
  background: #f6f6f6 !important;
  box-shadow: 0 1px 16px rgba(0, 0, 0, 0.2);
  z-index: 16; }
  .remodal_header {
    font-weight: bold;
    font-size: 1.5rem;
    margin-bottom: 1rem; }
  .remodal_content dl {
    overflow: hidden;
    display: block;
    width: 100%;
    min-height: 3.5rem; }
    .remodal_content dl dt {
      display: block;
      width: 100%;
      vertical-align: middle;
      line-height: 1.4;
      padding: 0.5rem; }
      .remodal_content dl dt .required::after {
        content: "必須";
        background: #ff8d8d;
        color: #fff;
        font-size: 0.6rem;
        border-radius: 3px;
        vertical-align: middle;
        padding: 2px;
        margin-left: 5px; }
      .remodal_content dl dt span {
        font-size: 0.7rem; }
      .remodal_content dl dt .btn {
        min-width: auto;
        padding: 0.5rem;
        font-size: 0.8rem; }
    .remodal_content dl dd {
      display: block;
      vertical-align: middle;
      padding: 0.7rem 0;
      word-break: break-all; }
      .remodal_content dl dd dl {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        /* flex-direction */
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-align-content: center;
        -ms-flex-line-pack: center;
        align-content: center;
        border: none;
        margin-bottom: 0.5rem;
        min-height: auto; }
        .remodal_content dl dd dl dt {
          width: auto;
          display: block !important;
          margin-right: 0.5rem;
          padding: 0; }
        .remodal_content dl dd dl dd {
          display: block !important;
          padding: 0; }
  .remodal_footer {
    margin-top: 1rem; }
  @media screen and (min-width: 768px) {
    .remodal dl {
      display: table; }
      .remodal dl dt {
        display: table-cell;
        width: 200px;
        text-align: left; }
      .remodal dl dd {
        display: table-cell;
        text-align: left; }
        .remodal dl dd span {
          display: inline-block;
          padding-right: 0.5rem; }
        .remodal dl dd input + span {
          padding-left: 0.5rem; }
        .remodal dl dd .btn {
          min-width: auto;
          margin: 0 0 0 1rem; } }

/* --------------------------------
	Parts
-------------------------------- */
.flex {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center; }

@media screen and (min-width: 992px) {
  .flex_pc {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    /* flex-direction */
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center; }
    .card dl .flex_pc {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      /* flex-direction */
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-align-content: center;
      -ms-flex-line-pack: center;
      align-content: center; }
      .card dl .flex_pc > dl {
        width: auto;
        margin-right: 1rem; } }

.search .card_main dl {
  border: none; }
  .search .card_main dl dt {
    width: 100%;
    padding: 0.5rem 0; }
  .search .card_main dl dd {
    width: 100%;
    margin-bottom: 0.5rem; }
.search_between {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center; }
  .search_between div:first-child:after {
    content: "～";
    padding: 0.5px; }
  .search_between#search_closedDate::after {
    content: "※締日を指定されると、ステータス「未確定」は表示されません。";
    display: block;
    margin-top: 0.5rem; }
@media screen and (min-width: 768px) {
  .search .card_main {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    /* flex-direction */
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center; }
    .search .card_main dl {
      width: 50%;
      min-height: 4rem;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      /* flex-direction */
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-align-content: center;
      -ms-flex-line-pack: center;
      align-content: center;
      padding-right: 1rem; }
      .search .card_main dl dt {
        width: 20%;
        vertical-align: middle;
        padding-right: 0.5rem; }
      .search .card_main dl dd {
        width: 80%;
        vertical-align: middle; }
        .search .card_main dl dd span {
          padding: 1rem; } }

.list_icon ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center; }
  .list_icon ul li {
    width: 50%;
    color: #fff;
    margin-bottom: 1rem; }
    .list_icon ul li > div {
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
      z-index: 2;
      padding: 1rem; }
      .list_icon ul li > div::after {
        content: "";
        display: block;
        clear: both; }
      .list_icon ul li > div i {
        float: left;
        display: block;
        font-size: 1.5rem;
        border-radius: 150px;
        width: 50px;
        height: 50px;
        text-align: center;
        line-height: 50px;
        margin-right: 1rem; }
    .list_icon ul li:nth-child(odd) > div {
      margin-right: 1rem; }
    .list_icon ul li:nth-child(1) > div {
      background: #ffc952; }
      .list_icon ul li:nth-child(1) > div i {
        background: #f5a900; }
    .list_icon ul li:nth-child(2) > div {
      background: #ff7473; }
      .list_icon ul li:nth-child(2) > div i {
        background: #ff1917; }
    .list_icon ul li:nth-child(3) > div {
      background: #60c5ba; }
      .list_icon ul li:nth-child(3) > div i {
        background: #369389; }
    .list_icon ul li:nth-child(4) > div {
      background: #838b97; }
      .list_icon ul li:nth-child(4) > div i {
        background: #5b636d; }
.list_icon_num {
  font-size: 1.8rem;
  margin-top: 0.5rem;
  display: block; }
.list_icon_detail {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  margin-top: 0.5rem;
  font-size: 0.8rem; }
  .list_icon_detail > div {
    text-align: center;
    width: 30%; }
    .list_icon_detail > div span {
      display: block; }
    .list_icon_detail > div a {
      display: block;
      font-size: 1.3rem;
      margin-top: 0.5rem; }
@media screen and (min-width: 768px) {
  .list_icon ul li {
    width: 25%;
    margin-bottom: 2rem; }
    .list_icon ul li > div {
      margin-right: 2rem !important; } }

.list_alert ul {
  overflow: hidden; }
  .list_alert ul li {
    margin: 0.5rem;
    padding-bottom: 1rem;
    border-bottom: #E6E6E6 1px dotted; }
    .list_alert ul li:last-child {
      border-bottom: none; }
    .list_alert ul li:before {
      font-size: 1.3rem;
      margin-right: 1rem; }
    .list_alert ul li.info:before {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      color: #66cdaa; }
    .list_alert ul li.warn:before {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      color: #eecf5d; }
    .list_alert ul li.error:before {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      color: #f64a4a;
      font-size: 1.4rem; }
    .list_alert ul li.ppa:before {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      color: #7075de;
      font-size: 1.4rem; }

.list_tree ul ul {
  display: none; }
.list_tree ul li {
  position: relative;
  padding-left: 1.5rem;
  line-height: 2rem; }
  .list_tree ul li .high {
    display: block;
    cursor: pointer; }
    .list_tree ul li .high > span {
      display: block;
      position: absolute;
      top: 0;
      left: 0; }
      .list_tree ul li .high > span:before {
        content: "";
        font-family: "Font Awesome 5 Free";
        font-weight: bold;
        font-size: 1.5rem; }
  .list_tree ul li a {
    display: block;
    padding-left: 1rem; }
    .list_tree ul li a:hover {
      background-color: #fae5df; }
      .admin .list_tree ul li a:hover {
        background-color: #d7d7d7; }
      .customer .list_tree ul li a:hover {
        background-color: #fae5df; }
      .seller .list_tree ul li a:hover {
        background-color: #e8f4e7; }
      .contractor .list_tree ul li a:hover {
        background-color: #e7f6f6; }
  .list_tree ul li.select a {
    background-color: #fae5df; }
    .admin .list_tree ul li.select a {
      background-color: #d7d7d7; }
    .customer .list_tree ul li.select a {
      background-color: #fae5df; }
    .seller .list_tree ul li.select a {
      background-color: #e8f4e7; }
    .contractor .list_tree ul li.select a {
      background-color: #e7f6f6; }
.list_tree .open > .high > span:before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: normal; }
.list_tree .open > ul {
  display: block; }

.flow {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  width: 100%;
  margin: 0 auto; }
  .flow li {
    position: relative;
    text-align: center;
    font-size: 0.9rem;
    padding: 2px; }
    .flow li::before {
      position: relative;
      display: block;
      width: 23px;
      height: 23px;
      margin: 0 auto 10px;
      border-radius: 23px;
      background-color: #E6E6E6;
      color: #fff;
      line-height: 23px;
      font-weight: bold;
      z-index: 2; }
    .flow li::after {
      width: 100%;
      height: 5px;
      content: '';
      position: absolute;
      background-color: #E6E6E6;
      top: 10px;
      left: -50%; }
    .flow li.active::before {
      background-color: #ffc952; }
    .flow li.active::after {
      background-color: #ffc952; }
    .flow li:first-child::after {
      content: none; }
    .flow li:nth-child(1)::before {
      content: '1'; }
    .flow li:nth-child(2)::before {
      content: '2'; }
    .flow li:nth-child(3)::before {
      content: '3'; }
    .flow li:nth-child(4)::before {
      content: '4'; }
    .flow li:nth-child(5)::before {
      content: '5'; }
    .flow li:nth-child(6)::before {
      content: '6'; }
    .flow li:nth-child(7)::before {
      content: '7'; }
    .flow li:nth-child(8)::before {
      content: '8'; }
    .flow li:nth-child(9)::before {
      content: '9'; }
    .flow li:nth-child(10)::before {
      content: '10'; }
    .flow li:nth-child(11)::before {
      content: '11'; }
    .flow li:nth-child(12)::before {
      content: '12'; }
  .flow.flow_3 li {
    width: calc(100% / 3); }
  .flow.flow_4 li {
    width: calc(100% / 4); }
  .flow.flow_5 li {
    width: calc(100% / 5); }
  .flow.flow_6 li {
    width: calc(100% / 6); }
  .flow.flow_7 li {
    width: calc(100% / 7); }
  .flow.flow_8 li {
    width: calc(100% / 8); }
  .flow.flow_9 li {
    width: calc(100% / 9); }
  .flow.flow_10 li {
    width: calc(100% / 10); }
  .flow.flow_11 li {
    width: calc(100% / 11); }
  .flow.flow_12 li {
    width: calc(100% / 12); }
  @media screen and (min-width: 768px) {
    .flow li::before {
      width: 47px;
      height: 47px;
      border-radius: 47px;
      line-height: 47px; }
    .flow li::after {
      top: 20px; } }

.setting .card_main::after {
  content: "";
  display: block;
  clear: both; }
.setting .card_main > div {
  float: left; }
.setting .card_main .setting_select {
  width: 100%; }
  .setting .card_main .setting_select select {
    width: 100%;
    height: 200px; }
    .setting .card_main .setting_select select option {
      padding: 0.2rem; }
.setting .card_main .setting_button {
  width: 100%; }
  .setting .card_main .setting_button a {
    width: 22%;
    margin-bottom: 1rem; }
    .setting .card_main .setting_button a i {
      font-size: 1.5rem;
      margin: 0 5px;
      vertical-align: middle; }
@media screen and (min-width: 768px) {
  .setting .card_main .setting_select {
    width: 30%;
    max-width: 400px; }
    .setting .card_main .setting_select select {
      height: 500px; }
  .setting .card_main .setting_button {
    width: 30%;
    max-width: 180px;
    padding: 0 1rem; }
    .setting .card_main .setting_button a {
      display: block;
      width: 100%;
      min-width: auto; } }

table caption {
  margin: 1rem 0; }
table tr th {
  padding: 1rem;
  vertical-align: middle; }
table tr.error td {
  background: #fddcdc !important; }
table tr td {
  padding: 0.5rem;
  vertical-align: middle; }
  table tr td .btn {
    min-width: auto;
    width: 100%; }
  table tr td.MoneyScale0, table tr td.MoneyScale2, table tr td.ElectricScale0, table tr td.ElectricScale3, table tr td.ElectricAmountScale3, table tr td.Ym, table tr td.YearMonth, table tr td.Date, table tr td.Dtm, table tr td.PercentScale3, table tr td.PercentScale0, table tr td.NumberScale0 {
    text-align: right; }
  table tr td.Br {
    white-space: pre-wrap; }
table.row_hide_1 tr:not(.row_hide_none) > *:nth-child(1) {
  display: none; }
table.row_hide_2 tr:not(.row_hide_none) > *:nth-child(2) {
  display: none; }
table.row_hide_3 tr:not(.row_hide_none) > *:nth-child(3) {
  display: none; }
table.row_hide_4 tr:not(.row_hide_none) > *:nth-child(4) {
  display: none; }
table.row_hide_5 tr:not(.row_hide_none) > *:nth-child(5) {
  display: none; }
table.row_hide_6 tr:not(.row_hide_none) > *:nth-child(6) {
  display: none; }
table.row_hide_7 tr:not(.row_hide_none) > *:nth-child(7) {
  display: none; }
table.row_hide_8 tr:not(.row_hide_none) > *:nth-child(8) {
  display: none; }
table.row_hide_9 tr:not(.row_hide_none) > *:nth-child(9) {
  display: none; }
table.row_hide_10 tr:not(.row_hide_none) > *:nth-child(10) {
  display: none; }

.table_displaynum {
  position: relative;
  display: block;
  padding: 1rem;
  text-align: right; }
  .table_displaynum_toggle {
    cursor: pointer;
    color: #444444 !important; }
    .table_displaynum_toggle i {
      margin-left: 5px; }
      .table_displaynum_toggle i.fa-chevron-down {
        display: inline-block; }
        .open .table_displaynum_toggle i.fa-chevron-down {
          display: none; }
      .table_displaynum_toggle i.fa-chevron-up {
        display: none; }
        .open .table_displaynum_toggle i.fa-chevron-up {
          display: inline-block; }
  .table_displaynum_drop {
    cursor: pointer;
    display: none;
    position: absolute;
    top: 35px;
    right: 0;
    background: #fff;
    border: #E6E6E6 1px solid; }
    .table_displaynum_drop li {
      padding: 0.5rem 1rem; }
      .table_displaynum_drop li:hover {
        background: #f6f6f6; }
    .table_displaynum_drop.open {
      display: block;
      box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
      z-index: 8; }

.table_scroll_fixed {
  height: 100%;
  table-layout: fixed;
  overflow: scroll; }
  .table_scroll_fixed table {
    width: 100%; }
    .table_scroll_fixed table th .required::after {
      content: "必須";
      background: #ff8d8d;
      color: #fff;
      font-size: 0.6rem;
      border-radius: 3px;
      vertical-align: middle;
      padding: 2px;
      margin-left: 5px; }
    .table_scroll_fixed table td input {
      width: 100%; }
    .table_scroll_fixed table td.unit {
      position: relative;
      padding-right: 30px; }
      .table_scroll_fixed table td.unit span {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        right: 0.5rem; }
      .table_scroll_fixed table td.unit.unit-2 {
        padding-right: 40px; }
  .table_scroll_fixed input {
    width: 100%;
    padding: 5px 10px; }

.table_check {
  width: 100%;
  margin: 1rem 0; }
  .table_check tr th {
    border: #ccc 1px solid;
    padding: 1rem; }
    .table_check tr th:nth-child(2) {
      width: 7rem; }
  .table_check tr td {
    border: #ccc 1px solid;
    padding: 1rem; }
    .table_check tr td:nth-child(2) {
      text-align: center; }

.table-01 {
  border-collapse: separate;
  border: #ccc 1px solid; }
  .table-01 tr td {
    background-color: #fff; }
  .table-01 tr:nth-child(even) td {
    background-color: #f6f6f6; }
  .table-01 tr.non_background td {
    background-color: white; }
  .table-01 tr.set_background td {
    background-color: #f6f6f6; }
  .table-01 tr.red td {
    background-color: #fddcdc !important; }
  .table-01 tr th {
    border-right: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
    background: #E6E6E6; }
    .table-01 tr th.asc::after {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      margin-left: 8px; }
    .table-01 tr th.desc::after {
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      margin-left: 8px; }
  .table-01 tr td {
    border-right: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
    font-size: 0.9rem; }
    .table-01 tr td .btn {
      margin-right: 5px;
      padding: 0 10px;
      line-height: 40px;
      font-size: 0.9rem; }
      .table-01 tr td .btn:last-child {
        margin-right: 0; }

.table-sticky {
  overflow: scroll;
  max-height: 500px; }
  .table-sticky table th {
    /* 縦スクロール時に固定する */
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    /* tbody内のセルより手前に表示する */
    z-index: 1; }
  @media screen and (min-width: 992px) {
    .table-sticky {
      max-height: 1100px; } }

table .bg_color_gray td {
  background-color: #888 !important; }

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px; }
  .pagination > li {
    display: inline; }
    .pagination > li:first-child > span {
      margin-left: 0;
      border-top-left-radius: 4px;
      border-bottom-left-radius: 4px; }
    .pagination > li a {
      padding: 6px 12px;
      color: #444444;
      background: #f6f6f6; }
    .pagination > li.pagenation__item-next {
      display: block;
      padding: 1rem 0.5rem;
      width: 50%;
      float: left; }
      .pagination > li.pagenation__item-next > a {
        display: block;
        line-height: 1.5rem; }
  .pagination .active > a {
    color: #fff;
    cursor: default;
    background-color: #8C8C8C; }
  @media screen and (min-width: 768px) {
    .pagination > li.pagenation__item-next {
      display: inline;
      padding: 0;
      width: auto;
      float: none; }
      .pagination > li.pagenation__item-next > a {
        display: inline; } }

.frame01 {
  border: #ccc 1px solid;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1rem;
  position: relative; }
  .frame01 ul {
    margin: 1rem 0; }
    .frame01 ul li {
      padding-bottom: 0.5rem; }
  .frame01 p {
    margin-bottom: 0.5rem; }
  .frame01_header {
    font-size: 1.1rem;
    text-decoration: underline;
    margin-bottom: 1rem !important; }

#ui-datepicker-div {
  z-index: 8 !important; }

.dropdown.open > div {
  display: block; }
.dropdown .btn:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: bold; }
.dropdown > div {
  display: none;
  position: relative; }
  .dropdown > div ul {
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
    z-index: 8;
    position: absolute;
    background: white;
    border: #ccc 1px solid;
    min-width: 100px;
    text-align: center; }
    .dropdown > div ul li:last-child {
      border-bottom: none; }
    .dropdown > div ul li a {
      display: block;
      padding: 0.5rem 0; }
      .dropdown > div ul li a:hover {
        background: #E6E6E6; }

.file_download {
  text-align: right;
  padding: 5px; }
  .file_download .btn {
    font-size: 0.7rem;
    padding: 0.5rem 0.7rem; }
    .file_download .btn i {
      padding-right: 3px; }

.file_upload {
  font-size: 0.9em; }
  .file_upload::after {
    content: "";
    display: block;
    clear: both; }
  .file_upload > div {
    padding: 5px; }
  .file_upload_drop {
    display: none; }
  .file_upload_file {
    display: block;
    font-size: 0.9em;
    cursor: pointer;
    text-align: center;
    background-color: #f6f6f6;
    padding: 6px;
    border-radius: 3px;
    border: #ccc 1px solid; }
    .file_upload_file:before {
      content: "＋ファイルを選択";
      display: block; }
    .file_upload_file input + div {
      display: block;
      color: #959ea9;
      font-size: 0.8em;
      margin-top: 2px; }
    .file_upload_file:hover {
      opacity: 0.7; }
    .file_upload_file input {
      display: none; }
  .file_upload_preview {
    overflow-y: scroll;
    height: 108px;
    border: 1px solid #ccc;
    padding: 0.5rem; }
    .file_upload_preview li {
      position: relative;
      margin-bottom: 5px;
      padding-bottom: 5px;
      padding-left: 35px;
      padding-right: 75px;
      vertical-align: middle;
      border-bottom: 1px dotted #ccc;
      line-height: 30px;
      word-wrap: break-word; }
      .file_upload_preview li img {
        position: absolute;
        top: 0;
        left: 0;
        cursor: pointer;
        max-height: 30px;
        max-width: 30px;
        border: solid 1px #ccc;
        border-radius: 3px; }
      .file_upload_preview li i {
        position: absolute;
        top: 0;
        left: 0;
        font-size: 1.5rem;
        color: #8C8C8C; }
      .file_upload_preview li .btn.btn_line {
        position: absolute;
        top: 0;
        right: 0;
        padding: 0;
        margin: 0;
        font-size: 0.8rem;
        width: 70px;
        height: 30px;
        line-height: 30px;
        min-width: auto; }
  .file_upload_explan {
    font-size: 0.8rem;
    text-align: center;
    background-color: rgba(180, 180, 180, 0.4); }
  @media screen and (min-width: 992px) {
    .file_upload > div {
      float: left;
      width: 50%; }
    .file_upload_drop {
      display: block;
      background-color: #f6f6f6;
      border: 2px #ccc dashed;
      color: #bbb;
      min-height: 5rem;
      padding: 1rem;
      margin-bottom: 0.5rem;
      text-shadow: 1px 1px 0 #fff;
      text-align: center; }
      .file_upload_drop:before {
        content: "";
        font-family: "Font Awesome 5 Free";
        font-weight: bold;
        display: block;
        font-size: 2rem;
        margin-bottom: 0.5rem; }
      .file_upload_drop:after {
        content: "ここにドラッグ＆ドロップしてください";
        font-size: 0.8em; } }

input.flatpickr-input[readonly] {
  background: #fff; }
input.flatpickr-input[disabled] {
  background: #E6E6E6; }

.flatpickr-weekdaycontainer > .flatpickr-weekday:nth-child(1) {
  color: #dc3545; }
.flatpickr-weekdaycontainer > .flatpickr-weekday:nth-child(7) {
  color: #007bff; }

.between .yearmonthpicker {
  width: 100px; }

.alert_message {
  width: 100%; }
  .alert_message_div {
    padding: 1rem;
    color: #fff;
    font-size: 1.1rem;
    margin-bottom: 1rem;
    position: relative;
    text-align: left; }
    .alert_message_div > div {
      margin-left: 2rem;
      margin-right: 2rem;
      line-height: 1.3; }
    .alert_message_div .icon {
      display: block;
      position: absolute;
      font-size: 1.5rem;
      vertical-align: middle; }
    .alert_message_div .close {
      display: block;
      position: absolute;
      right: 1rem;
      top: 1rem;
      font-size: 1.5rem;
      cursor: pointer; }
      .alert_message_div .close:hover {
        opacity: 0.7; }
  .alert_message .info {
    background-color: #6E7783; }
  .alert_message .success {
    background-color: #60c5ba; }
  .alert_message .error {
    background-color: #ff7473; }
  .alert_message .warning {
    background-color: #ffc952; }

.terms {
  padding: 1rem;
  height: 250px;
  overflow: scroll;
  font-size: 0.9rem;
  border: #ccc 1px solid;
  margin: 1rem 0; }

.checkbox {
  position: relative;
  margin: 1rem;
  padding-left: 2rem;
  display: block; }
  .checkbox input {
    position: absolute;
    top: 0;
    left: 0; }
  .checkbox.agreement {
    font-weight: bold; }

.select_open_box {
  display: none; }
  .select_open_box dl:last-child {
    border-bottom: #ccc 1px solid; }
  .select_open_box dl dl {
    border: none !important; }

.hidden {
  display: none; }

.emphasis {
  font-weight: bold;
  padding-bottom: 1rem; }

.text_center {
  text-align: center; }

.text_right {
  text-align: right; }

.widget_false {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center; }
  .birthDate .widget_false > div:nth-child(1)::after {
    content: "年"; }
  .birthDate .widget_false > div:nth-child(2)::after {
    content: "月"; }
  .birthDate .widget_false > div:nth-child(3)::after {
    content: "日"; }
  .mail .widget_false a {
    margin-left: 0.5rem; }

.scroll_top_fixed.fixed {
  position: fixed;
  top: 50px;
  z-index: 11;
  height: auto; }

.scroll_rendo_head {
  opacity: 0;
  height: 0; }
  .scroll_rendo_head.fixed {
    opacity: 1;
    height: auto; }

.indent1 {
  margin-left: 1rem; }

.fukidashi {
  position: relative; }
  .fukidashi_link {
    cursor: pointer; }
    .fukidashi_link:hover {
      color: red; }
      .fukidashi_link:hover + .fukidashi_detail {
        opacity: 1;
        visibility: visible; }
  .fukidashi_detail {
    opacity: 0;
    /* はじめは隠しておく */
    visibility: hidden;
    /* はじめは隠しておく */
    width: 240px;
    position: absolute;
    padding: 0.5rem;
    border: #ccc 2px solid;
    border-radius: 5px;
    background: #fff;
    font-size: 0.9em;
    animation: fadeIn 1s ease 0s 1 normal;
    -webkit-animation: fadeIn 1s ease 0s 1 normal;
    z-index: 10; }
    .fukidashi_detail p {
      line-height: 1rem; }
    .fukidashi_detail.right {
      top: -40px;
      left: 40px; }
    .fukidashi_detail:hover {
      opacity: 1;
      visibility: visible; }

.contentHtml {
  white-space: pre-wrap; }

.bank-modal-content #bankSearchForm .searchBankContainer {
  display: block;
  text-align: center; }
  .bank-modal-content #bankSearchForm .searchBankContainer .searchBankInput {
    display: block;
    vertical-align: bottom; }
    .bank-modal-content #bankSearchForm .searchBankContainer .searchBankInput #searchBranch {
      display: none; }
  .bank-modal-content #bankSearchForm .searchBankContainer .searchBankBtn {
    width: 100%;
    display: inline-block;
    vertical-align: middle;
    margin-top: 5px; }
    .bank-modal-content #bankSearchForm .searchBankContainer .searchBankBtn #btnSearch {
      margin: 0;
      height: 34.5px;
      padding-top: 9.5px; }
    .bank-modal-content #bankSearchForm .searchBankContainer .searchBankBtn button {
      margin-left: 5px; }
      .bank-modal-content #bankSearchForm .searchBankContainer .searchBankBtn button i {
        color: #FFFFFF; }
@media screen and (min-width: 768px) {
  .bank-modal-content #bankSearchForm .searchBankContainer .searchBankInput {
    display: inline-block; }
  .bank-modal-content #bankSearchForm .searchBankContainer .searchBankBtn {
    width: auto; } }
.bank-modal-content .search_results #searchResultMsg {
  line-height: 20px; }
.bank-modal-content .search_results .bank_container {
  float: left;
  width: 47%;
  height: 80px;
  margin: 8px 0 0 8px;
  border: 1px solid #c3c3c3;
  padding: 10px;
  border-radius: 10px; }
  .bank-modal-content .search_results .bank_container:hover {
    cursor: pointer; }
  .bank-modal-content .search_results .bank_container.selected {
    border-color: #DC4D27; }
    .admin .bank-modal-content .search_results .bank_container.selected {
      border-color: #5a7ce0; }
    .customer .bank-modal-content .search_results .bank_container.selected {
      border-color: #DC4D27; }
    .seller .bank-modal-content .search_results .bank_container.selected {
      border-color: #76bf6f; }
    .contractor .bank-modal-content .search_results .bank_container.selected {
      border-color: #61c1c5; }
  .bank-modal-content .search_results .bank_container .name {
    margin-top: 10px;
    font-size: 14px; }
  .bank-modal-content .search_results .bank_container .code {
    color: #c3c3c3;
    margin-top: 10px; }
@media screen and (min-width: 768px) {
  .bank-modal-content .search_results .bank_container {
    width: 145px;
    margin: 10px 0 0 10px; } }
.bank-modal-content .optionButtons {
  width: 100%;
  display: inline-block;
  text-align: right; }
  .bank-modal-content .optionButtons button {
    display: none;
    margin-top: 30px; }
  .bank-modal-content .optionButtons #btnGoToBankSelection {
    float: left; }
  .bank-modal-content .optionButtons #btnSelectBranch {
    min-width: 75px; }
  @media screen and (min-width: 768px) {
    .bank-modal-content .optionButtons #btnGoToBranchSelection {
      width: auto;
      min-width: 150px; } }

.pm_plan_master {
  padding-top: 0.5rem; }
  .pm_plan_master div {
    border-left: 1px solid #cccccc;
    padding-left: 0.5rem;
    margin-left: 0.5rem; }
    .pm_plan_master div p {
      padding-left: 1.25rem; }
    .pm_plan_master div:last-child {
      border-left: none; }

#header {
  position: fixed;
  top: 0;
  left: 0;
  height: 50px;
  width: 100%;
  background: #ffffff;
  box-shadow: 0 1px 12px rgba(0, 0, 0, 0.2);
  z-index: 12; }
  #header_bars {
    display: block;
    position: absolute;
    top: 1rem;
    left: 1rem;
    font-size: 1.8rem; }
    #header_bars .fa-bars {
      display: block;
      color: #DC4D27; }
      .admin #header_bars .fa-bars {
        color: #5a7ce0; }
      .customer #header_bars .fa-bars {
        color: #DC4D27; }
      .seller #header_bars .fa-bars {
        color: #76bf6f; }
      .contractor #header_bars .fa-bars {
        color: #61c1c5; }
    #header_bars .fa-times {
      font-size: 2rem;
      display: none;
      color: #DC4D27; }
      .admin #header_bars .fa-times {
        color: #5a7ce0; }
      .customer #header_bars .fa-times {
        color: #DC4D27; }
      .seller #header_bars .fa-times {
        color: #76bf6f; }
      .contractor #header_bars .fa-times {
        color: #61c1c5; }
    #header_bars.open .fa-bars {
      display: none; }
    #header_bars.open .fa-times {
      display: block; }
  #header_logo {
    width: 200px;
    margin: 0 auto;
    text-align: center;
    height: 100%;
    line-height: 50px; }
    #header_logo img {
      width: 140px;
      vertical-align: middle; }
    #header_logo_test {
      color: red;
      font-size: 1.2rem;
      vertical-align: middle;
      font-weight: bold; }
  #header_menu {
    position: fixed;
    top: 0;
    right: 0;
    color: #DC4D27;
    cursor: pointer;
    margin-right: 1rem; }
    .admin #header_menu {
      color: #5a7ce0; }
    .customer #header_menu {
      color: #DC4D27; }
    .seller #header_menu {
      color: #76bf6f; }
    .contractor #header_menu {
      color: #61c1c5; }
    #header_menu > li {
      display: inline-block;
      margin-right: 5px; }
      #header_menu > li:last-child {
        margin-right: 0; }
    #header_menu i {
      line-height: 50px;
      vertical-align: middle; }
      #header_menu i.fa-th {
        font-size: 1.7rem; }
      #header_menu i.fa-user-circle {
        font-size: 2rem; }
      #header_menu i.fa-sort-down {
        font-size: 1.3rem; }
  #header_sidebar > li {
    width: 200px;
    margin-right: -200px;
    background: white;
    overflow: hidden;
    display: inline-block;
    position: fixed;
    top: 50px;
    right: 0;
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
    z-index: 8;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s; }
    #header_sidebar > li.open {
      margin-right: 0; }
    #header_sidebar > li nav li {
      line-height: 3.5rem; }
      #header_sidebar > li nav li a {
        padding: 0 1rem;
        display: block;
        color: #444444; }
        #header_sidebar > li nav li a:hover, #header_sidebar > li nav li a.select {
          color: #DC4D27; }
          .admin #header_sidebar > li nav li a:hover, .admin #header_sidebar > li nav li a.select {
            color: #5a7ce0; }
          .customer #header_sidebar > li nav li a:hover, .customer #header_sidebar > li nav li a.select {
            color: #DC4D27; }
          .seller #header_sidebar > li nav li a:hover, .seller #header_sidebar > li nav li a.select {
            color: #76bf6f; }
          .contractor #header_sidebar > li nav li a:hover, .contractor #header_sidebar > li nav li a.select {
            color: #61c1c5; }
          #header_sidebar > li nav li a:hover i, #header_sidebar > li nav li a.select i {
            color: #DC4D27; }
            .admin #header_sidebar > li nav li a:hover i, .admin #header_sidebar > li nav li a.select i {
              color: #5a7ce0; }
            .customer #header_sidebar > li nav li a:hover i, .customer #header_sidebar > li nav li a.select i {
              color: #DC4D27; }
            .seller #header_sidebar > li nav li a:hover i, .seller #header_sidebar > li nav li a.select i {
              color: #76bf6f; }
            .contractor #header_sidebar > li nav li a:hover i, .contractor #header_sidebar > li nav li a.select i {
              color: #61c1c5; }
        #header_sidebar > li nav li a:hover {
          background: #f3f3f3; }
      #header_sidebar > li nav li i {
        vertical-align: middle;
        margin-right: 1rem;
        font-size: 1.3rem;
        width: 1.7rem;
        text-align: center;
        color: #6b6b6b; }
  #header_sidebar_account > div {
    text-align: center;
    padding: 1rem;
    border-bottom: #E6E6E6 1px solid; }
    #header_sidebar_account > div i {
      font-size: 2.5rem;
      margin: 1rem;
      color: #6b6b6b; }
    #header_sidebar_account > div p {
      margin: 1rem 0; }
  #header_sidebar_account_sstore {
    color: #8C8C8C;
    font-size: 0.8rem; }
  @media screen and (min-width: 992px) {
    #header_bars {
      display: none; }
    #header_logo {
      width: auto;
      text-align: left;
      margin-left: 1rem; } }

#sidebar {
  width: 100%;
  overflow: hidden;
  height: calc(100vh - 50px);
  position: fixed;
  top: 50px;
  left: -100%;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
  z-index: 8;
  opacity: 0;
  background: #f6f6f6;
  overflow: scroll; }
  #sidebar.open {
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    opacity: 1;
    left: 0;
    width: 75vw; }
  #sidebar_menu .toggle > a:after {
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    position: absolute;
    right: 1rem;
    top: 0;
    bottom: 0; }
  #sidebar_menu .toggle > ul {
    display: none; }
  #sidebar_menu .toggle.open > a:after {
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: bold; }
  #sidebar_menu .toggle.open > ul {
    display: block; }
  #sidebar_menu ul li {
    line-height: 2.7rem; }
    #sidebar_menu ul li.select {
      color: #DC4D27;
      background-color: #fae5df; }
      .admin #sidebar_menu ul li.select {
        color: #5a7ce0; }
      .customer #sidebar_menu ul li.select {
        color: #DC4D27; }
      .seller #sidebar_menu ul li.select {
        color: #76bf6f; }
      .contractor #sidebar_menu ul li.select {
        color: #61c1c5; }
      .admin #sidebar_menu ul li.select {
        background-color: #d7d7d7; }
      .customer #sidebar_menu ul li.select {
        background-color: #fae5df; }
      .seller #sidebar_menu ul li.select {
        background-color: #e8f4e7; }
      .contractor #sidebar_menu ul li.select {
        background-color: #e7f6f6; }
      #sidebar_menu ul li.select a {
        color: #DC4D27;
        background-color: #fae5df; }
        .admin #sidebar_menu ul li.select a {
          color: #5a7ce0; }
        .customer #sidebar_menu ul li.select a {
          color: #DC4D27; }
        .seller #sidebar_menu ul li.select a {
          color: #76bf6f; }
        .contractor #sidebar_menu ul li.select a {
          color: #61c1c5; }
        .admin #sidebar_menu ul li.select a {
          background-color: #d7d7d7; }
        .customer #sidebar_menu ul li.select a {
          background-color: #fae5df; }
        .seller #sidebar_menu ul li.select a {
          background-color: #e8f4e7; }
        .contractor #sidebar_menu ul li.select a {
          background-color: #e7f6f6; }
    #sidebar_menu ul li a {
      color: #6a6a6a;
      position: relative;
      display: block;
      font-size: 1rem;
      cursor: pointer; }
      #sidebar_menu ul li a:hover {
        color: #DC4D27;
        background-color: #fae5df; }
        .admin #sidebar_menu ul li a:hover {
          color: #5a7ce0; }
        .customer #sidebar_menu ul li a:hover {
          color: #DC4D27; }
        .seller #sidebar_menu ul li a:hover {
          color: #76bf6f; }
        .contractor #sidebar_menu ul li a:hover {
          color: #61c1c5; }
        .admin #sidebar_menu ul li a:hover {
          background-color: #d7d7d7; }
        .customer #sidebar_menu ul li a:hover {
          background-color: #fae5df; }
        .seller #sidebar_menu ul li a:hover {
          background-color: #e8f4e7; }
        .contractor #sidebar_menu ul li a:hover {
          background-color: #e7f6f6; }
    #sidebar_menu ul li i {
      vertical-align: middle;
      margin: 0 0.25rem 0 0.5rem;
      font-size: 1.2rem;
      width: 1.7rem;
      text-align: center; }
  #sidebar_menu > ul > li > ul > li > a {
    padding-left: 1rem;
    font-size: 0.9em; }
  #sidebar_menu > ul > li > ul > li > ul > li > a {
    padding-left: 2rem;
    font-size: 0.9em; }
  #sidebar_menu > ul > li > ul > li > ul > li > ul > li > a {
    padding-left: 4rem;
    font-size: 0.9em; }
  @media screen and (min-width: 992px) {
    #sidebar {
      width: 250px;
      opacity: 1;
      left: 0; } }

.anon #wrapper {
  padding-top: 50px; }
.anon .card {
  max-width: 850px;
  margin: 2rem auto; }
  .anon .card h1 {
    text-align: center;
    margin: 1rem 0 2rem 0;
    font-weight: normal; }
.anon .logo {
  text-align: center; }
  .anon .logo img {
    width: 200px;
    margin: 1rem 0; }

.flogin {
  text-align: center;
  padding: 0 1rem; }
  .flogin_logo img {
    width: 200px;
    margin: 4rem 0 1rem 0; }
  .flogin_input {
    margin: 1rem auto;
    padding: 2rem; }
    .flogin_input input {
      display: block;
      width: 100%;
      margin: 1rem auto; }
    .flogin_input .btn {
      margin: 1rem 0;
      padding: 1.2rem 3rem; }
    .flogin_input_title {
      font-size: 1.2rem;
      padding-bottom: 1rem; }
  .flogin_register {
    margin-top: 2rem; }
    .flogin_register a {
      display: inline-block;
      background: #ffc952;
      padding: 1.2rem 3rem;
      font-size: 1.1rem;
      color: white;
      text-decoration: none;
      border-radius: 4px;
      margin-top: 1rem; }
  @media screen and (min-width: 768px) {
    .flogin_logo img {
      width: 250px; }
    .flogin_input {
      width: 450px; }
      .flogin_input .btn {
        width: 50%; }
      .flogin_input_title {
        font-size: 1.5rem; } }

.pps_contract_plan select {
  display: none; }
.pps_contract_ename {
  display: none; }
.pps_contract_kenshinimg {
  text-align: center; }
  .pps_contract_kenshinimg img {
    width: 100%; }
@media screen and (min-width: 768px) {
  .pps_contract_kenshinimg img {
    max-width: 450px; }
  .pps_contract .card dl dt {
    width: 230px; } }

.pps_apply .card_main a {
  font-size: 1.5rem;
  padding: 0.5rem 2rem;
  background-color: #ffe19f; }

.admin #header {
  background: #5c6e80; }

@media screen and (min-width: 992px) {
  #admin_solar_search .table_scroll_fixed table th:nth-child(1),
  #admin_solar_search .table_scroll_fixed table td:nth-child(1),
  #admin_solar_search .table_scroll_fixed table th:nth-child(2),
  #admin_solar_search .table_scroll_fixed table td:nth-child(2),
  #seller_solar_search .table_scroll_fixed table th:nth-child(1),
  #seller_solar_search .table_scroll_fixed table td:nth-child(1),
  #seller_solar_search .table_scroll_fixed table th:nth-child(2),
  #seller_solar_search .table_scroll_fixed table td:nth-child(2),
  #contractor_solar_search .table_scroll_fixed table th:nth-child(1),
  #contractor_solar_search .table_scroll_fixed table td:nth-child(1),
  #contractor_solar_search .table_scroll_fixed table th:nth-child(2),
  #contractor_solar_search .table_scroll_fixed table td:nth-child(2) {
    /* 横スクロール時に固定する */
    position: -webkit-sticky;
    position: sticky; }
  #admin_solar_search .table_scroll_fixed table th:nth-child(1),
  #admin_solar_search .table_scroll_fixed table td:nth-child(1),
  #seller_solar_search .table_scroll_fixed table th:nth-child(1),
  #seller_solar_search .table_scroll_fixed table td:nth-child(1),
  #contractor_solar_search .table_scroll_fixed table th:nth-child(1),
  #contractor_solar_search .table_scroll_fixed table td:nth-child(1) {
    width: 200px !important;
    left: 0; }
  #admin_solar_search .table_scroll_fixed table th:nth-child(2),
  #admin_solar_search .table_scroll_fixed table td:nth-child(2),
  #seller_solar_search .table_scroll_fixed table th:nth-child(2),
  #seller_solar_search .table_scroll_fixed table td:nth-child(2),
  #contractor_solar_search .table_scroll_fixed table th:nth-child(2),
  #contractor_solar_search .table_scroll_fixed table td:nth-child(2) {
    left: 200px;
    border-right: #ccc 4px solid; }
  #admin_solar_search .table_scroll_fixed table td.PtSolar_fixPcAmount1, #admin_solar_search .table_scroll_fixed table td.PtSolar_fixPcAmount2,
  #seller_solar_search .table_scroll_fixed table td.PtSolar_fixPcAmount1,
  #seller_solar_search .table_scroll_fixed table td.PtSolar_fixPcAmount2,
  #contractor_solar_search .table_scroll_fixed table td.PtSolar_fixPcAmount1,
  #contractor_solar_search .table_scroll_fixed table td.PtSolar_fixPcAmount2 {
    text-align: right; } }

.solarinfo .card_header {
  padding: 0.5rem 1rem; }
  .solarinfo .card_header .btn {
    margin-top: 0;
    margin-left: 1rem;
    min-width: auto;
    width: auto;
    padding: 0.5rem 1rem; }
@media screen and (min-width: 768px) {
  .solarinfo.fixed {
    left: 0;
    position: fixed;
    top: 50px;
    width: 100%;
    margin-top: 0;
    z-index: 20; }
  .solarinfo .card_main {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    /* flex-direction */
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center; }
    .solarinfo .card_main dl {
      font-size: 0.9rem;
      width: 33%;
      border-bottom: none;
      min-height: auto; }
      .solarinfo .card_main dl dt {
        width: 40%; } }
@media screen and (min-width: 992px) {
  .solarinfo.fixed {
    left: 250px;
    width: calc(100% - 250px); } }

#admin_solar_search .table_scroll_fixed table,
#seller_solar_search .table_scroll_fixed table,
#contractor_solar_search .table_scroll_fixed table {
  height: 100%; }
  #admin_solar_search .table_scroll_fixed table tr td,
  #seller_solar_search .table_scroll_fixed table tr td,
  #contractor_solar_search .table_scroll_fixed table tr td {
    height: 100%;
    padding: 0; }
    #admin_solar_search .table_scroll_fixed table tr td > div,
    #seller_solar_search .table_scroll_fixed table tr td > div,
    #contractor_solar_search .table_scroll_fixed table tr td > div {
      height: 100%;
      padding: 0.5rem; }
    #admin_solar_search .table_scroll_fixed table tr td .remarks_open .fa-comment-dots,
    #seller_solar_search .table_scroll_fixed table tr td .remarks_open .fa-comment-dots,
    #contractor_solar_search .table_scroll_fixed table tr td .remarks_open .fa-comment-dots {
      color: #f86c6c; }
    #admin_solar_search .table_scroll_fixed table tr td.overAllRemarks > div > p,
    #seller_solar_search .table_scroll_fixed table tr td.overAllRemarks > div > p,
    #contractor_solar_search .table_scroll_fixed table tr td.overAllRemarks > div > p {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }
  #admin_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id10,
  #seller_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id10,
  #contractor_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id10 {
    background-color: #fff2cc; }
  #admin_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id20,
  #seller_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id20,
  #contractor_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id20 {
    background-color: #fce4d6; }
  #admin_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id30,
  #seller_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id30,
  #contractor_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id30 {
    background-color: #d6dce4; }
  #admin_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id90,
  #seller_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id90,
  #contractor_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .id90 {
    background-color: #fff2cc; }
  #admin_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .none,
  #seller_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .none,
  #contractor_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .none {
    background-color: #E6E6E6; }
  #admin_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .not_started,
  #seller_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .not_started,
  #contractor_solar_search .table_scroll_fixed table tr:not(.cancel) td.KoteiStatus .not_started {
    background-color: #fff; }
  #admin_solar_search .table_scroll_fixed table tr.cancel td,
  #seller_solar_search .table_scroll_fixed table tr.cancel td,
  #contractor_solar_search .table_scroll_fixed table tr.cancel td {
    background-color: #8C8C8C; }

#admin_all_billing_list .table_scroll_fixed .remarks > div > p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.table_scroll_fixed .schedule_file {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  line-height: 1.2rem; }
  .table_scroll_fixed .schedule_file i {
    font-size: 1rem; }
    .table_scroll_fixed .schedule_file i:first-child {
      margin-right: 5px;
      vertical-align: middle;
      width: 1rem;
      text-align: center; }
  .table_scroll_fixed .schedule_file i + span {
    color: #444444; }
  .table_scroll_fixed .schedule_file_name.required::after {
    content: "必須";
    background: #ff8d8d;
    color: #fff;
    font-size: 0.6rem;
    border-radius: 3px;
    vertical-align: middle;
    padding: 2px;
    margin-left: 5px; }
  .table_scroll_fixed .schedule_file_name.required:after {
    margin-right: 3px; }
  .table_scroll_fixed .schedule_file_date {
    font-size: 0.5rem; }
  .table_scroll_fixed .schedule_file_nlink {
    opacity: 0.8; }
  .table_scroll_fixed .schedule_file .fukidashi {
    margin-left: 0.5rem; }
.table_scroll_fixed .schedule tr.processStatus_10 td {
  background-color: #fff2cc !important; }
.table_scroll_fixed .schedule tr.processStatus_20 td {
  background-color: #fce4d6 !important; }
.table_scroll_fixed .schedule tr.processStatus_30 td {
  background-color: #d6dce4 !important; }
.table_scroll_fixed .schedule tr.processStatus_90 td {
  background-color: #fff2cc !important; }
.table_scroll_fixed .schedule tr.hasError td {
  background-color: #ffb6b6 !important; }
.table_scroll_fixed .schedule tr td input {
  line-height: normal; }
.table_scroll_fixed .schedule tr td select {
  padding: 0.2rem 0.3rem; }
.table_scroll_fixed .schedule dl {
  border-bottom: none;
  min-height: auto;
  margin-bottom: 0.3rem; }
  .table_scroll_fixed .schedule dl:last-child {
    margin-bottom: 0; }
  .table_scroll_fixed .schedule dl dt {
    padding: 0;
    line-height: 1.5rem; }
    .table_scroll_fixed .schedule dl dt label.required::after {
      content: "必須";
      background: #ff8d8d;
      color: #fff;
      font-size: 0.6rem;
      border-radius: 3px;
      vertical-align: middle;
      padding: 2px;
      margin-left: 5px; }
  .table_scroll_fixed .schedule dl dd {
    padding: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    /* flex-direction */
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center; }
    .table_scroll_fixed .schedule dl dd input.zipno + span {
      display: none !important; }
    .table_scroll_fixed .schedule dl dd::before {
      content: '：';
      display: block;
      padding: 0;
      vertical-align: middle; }
    .table_scroll_fixed .schedule dl dd input, .table_scroll_fixed .schedule dl dd select {
      min-height: auto;
      line-height: 1rem;
      padding: 5px 3px;
      font-size: 0.9rem;
      min-width: 75px; }
@media screen and (min-width: 768px) {
  .table_scroll_fixed .schedule dl dt {
    width: auto; }
  .table_scroll_fixed .schedule dl dd {
    width: 100%; } }

#admin_solar_modal_remarks {
  max-width: 1000px; }

.remarks-modal-content .remodal_content dl:nth-child(odd) {
  margin-bottom: 0.5rem; }
  .remarks-modal-content .remodal_content dl:nth-child(odd) dt .btn:after {
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    margin-left: 2px; }
  .remarks-modal-content .remodal_content dl:nth-child(odd) dd > div {
    min-height: 100px;
    max-height: 200px;
    border: #ccc 1px solid;
    border-radius: 5px;
    padding: 0.5rem;
    vertical-align: top;
    overflow-y: scroll;
    background-color: #fbfbfb; }
.remarks-modal-content .remodal_content dl:nth-child(even) {
  margin-bottom: 1rem; }
  .remarks-modal-content .remodal_content dl:nth-child(even) .btn {
    margin-left: 0; }
@media screen and (min-width: 992px) {
  .remarks-modal-content .remodal_content dl:nth-child(even) dd textarea {
    width: 80%;
    vertical-align: middle; }
  .remarks-modal-content .remodal_content dl:nth-child(even) dd .btn {
    margin-left: 1rem; } }

.billing_status, .rental_fee_status {
  text-align: center;
  padding: 0.5rem 1rem;
  font-size: 0.8rem; }
  .billing_status.mishori, .rental_fee_status.mishori {
    background: #d7d7d7; }
  .billing_status.err, .rental_fee_status.err {
    background: #f64a4a; }
  .billing_status.complete, .rental_fee_status.complete {
    background: #80aaff; }
  .billing_status.exclude, .rental_fee_status.exclude {
    background: #777;
    color: #ffffff; }

.rental_fee_status {
  text-align: center;
  padding: 0.5rem 1rem;
  font-size: 0.8rem; }
  .rental_fee_status.err {
    background: #f64a4a; }
  .rental_fee_status.complete {
    background: #80aaff; }

#customer_mypage_billing .card_header, #customer_mypage_rental_fee .card_header {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* flex-direction */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center; }
  #customer_mypage_billing .card_header .billing_status, #customer_mypage_billing .card_header .rental_fee_status, #customer_mypage_rental_fee .card_header .billing_status, #customer_mypage_rental_fee .card_header .rental_fee_status {
    margin-left: 1rem; }
#customer_mypage_billing h3 + div, #customer_mypage_rental_fee h3 + div {
  margin-top: 1rem;
  margin-bottom: 1rem; }
#customer_mypage_billing .card_header_link, #customer_mypage_rental_fee .card_header_link {
  line-height: 2rem; }
  #customer_mypage_billing .card_header_link .show_link,
  #customer_mypage_billing .card_header_link .hide_link, #customer_mypage_rental_fee .card_header_link .show_link,
  #customer_mypage_rental_fee .card_header_link .hide_link {
    cursor: pointer; }
#customer_mypage_billing div.invoice-disp, #customer_mypage_rental_fee div.invoice-disp {
  display: flex;
  justify-content: flex-end; }
  #customer_mypage_billing div.invoice-disp ul, #customer_mypage_rental_fee div.invoice-disp ul {
    border-bottom: #ccc 1px solid;
    font-size: 0.78rem;
    background: #f6f6f6;
    padding: 5px 5px 0 5px; }
    #customer_mypage_billing div.invoice-disp ul li, #customer_mypage_rental_fee div.invoice-disp ul li {
      padding-top: 0;
      padding-bottom: 5px; }
#customer_mypage_billing dl.total, #customer_mypage_rental_fee dl.total {
  font-weight: bold; }
  #customer_mypage_billing dl.total dt, #customer_mypage_rental_fee dl.total dt {
    font-size: 1.2rem; }
  #customer_mypage_billing dl.total dd, #customer_mypage_rental_fee dl.total dd {
    font-size: 1.7rem;
    color: #ff7473; }
    #customer_mypage_billing dl.total dd span, #customer_mypage_rental_fee dl.total dd span {
      font-size: 1rem;
      display: inline-block;
      color: #444444;
      font-weight: normal; }
  #customer_mypage_billing dl.total.main, #customer_mypage_rental_fee dl.total.main {
    border: none; }
  #customer_mypage_billing dl.total.sub dt, #customer_mypage_rental_fee dl.total.sub dt {
    font-size: 1rem; }
  #customer_mypage_billing dl.total.sub dd, #customer_mypage_rental_fee dl.total.sub dd {
    font-size: 1.4rem;
    color: #444444; }
    #customer_mypage_billing dl.total.sub dd span, #customer_mypage_rental_fee dl.total.sub dd span {
      font-size: 0.8rem; }
@media screen and (min-width: 992px) {
  #customer_mypage_billing dl dd {
    text-align: left; } }

#customer_billing_index dl dt, #customer_rental_fee_index dl dt {
  position: relative;
  padding-left: 98px;
  width: 275px; }
  #customer_billing_index dl dt.lg, #customer_rental_fee_index dl dt.lg {
    width: 310px; }
  #customer_billing_index dl dt .billing_status, #customer_billing_index dl dt .rental_fee_status, #customer_rental_fee_index dl dt .billing_status, #customer_rental_fee_index dl dt .rental_fee_status {
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 90px; }
  #customer_billing_index dl dt span.customer_billing_ym, #customer_billing_index dl dt span.customer_rental_fee_ym, #customer_rental_fee_index dl dt span.customer_billing_ym, #customer_rental_fee_index dl dt span.customer_rental_fee_ym {
    font-weight: bold;
    font-size: 1.3rem; }
#customer_billing_index dl dd, #customer_rental_fee_index dl dd {
  text-align: right; }
  #customer_billing_index dl dd p, #customer_rental_fee_index dl dd p {
    text-align: right;
    display: inline-block;
    vertical-align: bottom; }
    #customer_billing_index dl dd p span, #customer_rental_fee_index dl dd p span {
      display: inline-block;
      font-weight: bold;
      font-size: 1.6rem;
      color: #ff7473; }
  #customer_billing_index dl dd a.btn, #customer_rental_fee_index dl dd a.btn {
    width: auto;
    border-color: #DC4D27; }
    .admin #customer_billing_index dl dd a.btn, .admin #customer_rental_fee_index dl dd a.btn {
      border-color: #5a7ce0; }
    .customer #customer_billing_index dl dd a.btn, .customer #customer_rental_fee_index dl dd a.btn {
      border-color: #DC4D27; }
    .seller #customer_billing_index dl dd a.btn, .seller #customer_rental_fee_index dl dd a.btn {
      border-color: #76bf6f; }
    .contractor #customer_billing_index dl dd a.btn, .contractor #customer_rental_fee_index dl dd a.btn {
      border-color: #61c1c5; }
@media screen and (min-width: 768px) {
  #customer_billing_index dl, #customer_rental_fee_index dl {
    display: flex; }
    #customer_billing_index dl dt, #customer_rental_fee_index dl dt {
      padding-left: 120px; }
      #customer_billing_index dl dt.lg, #customer_rental_fee_index dl dt.lg {
        width: 338px; }
    #customer_billing_index dl dd, #customer_rental_fee_index dl dd {
      display: flex; }
      #customer_billing_index dl dd p, #customer_rental_fee_index dl dd p {
        min-width: 190px; }
      #customer_billing_index dl dd a.btn, #customer_rental_fee_index dl dd a.btn {
        margin: 0 0 0 2rem;
        height: auto; } }

#header .reload_btn {
  position: absolute;
  top: 0;
  right: 70px;
  line-height: 50px;
  margin: 0; }
  #header .reload_btn .btn {
    margin: 0;
    min-width: auto;
    padding: 0.3rem 0.5rem;
    display: inline;
    vertical-align: middle;
    text-align: center; }
    #header .reload_btn .btn span {
      display: none; }
@media screen and (min-width: 768px) {
  #header .reload_btn .btn i {
    padding-right: 3px; }
  #header .reload_btn .btn span {
    display: inline; } }

.jyuuryo_table tr td, .jyuuryo_table tr th {
  font-size: 0.7rem;
  padding-inline: 2px; }
@media screen and (min-width: 768px) {
  .jyuuryo_table tr td, .jyuuryo_table tr th {
    font-size: 1rem; } }
@media screen and (min-width: 992px) {
  .jyuuryo_table tr td, .jyuuryo_table tr th {
    padding-inline: 4px; } }

/*# sourceMappingURL=style.css.map */
