html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  font-family: 'Arial', sans-serif;
  /*display: flex;
  justify-content: center;*/
  align-items: center;
  background-color: #fff;
}

textarea#textarea-message {
  font-size: larger;
  font: caption;
}


.container {
  display: flex;
  transform: translateY(0px);
  height: 90vh;
  width: 100%; /* 画面幅に合わせる */
  background-color: white;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.sidebar {
  width: 25%; /* サイドバーの幅を25%に設定 */
}

.main-content {
  background-color: #E5E5F2;
  flex-grow: 1; /* 残りのスペースを埋める */
  padding: 20px;
  position: relative;
  width:100%;
  min-height: 500px;
}
.sidebar li {
  display: block;
  padding: 20px 20px;
  border-bottom: 1px solid #E0E0E0;
  background-color: #F9F9F9;
}
.main-content {
  background-color: #FECC98;
  flex-grow: 1; /* 追加: 残りのスペースを埋める */
  padding: 20px;
}

.bgcolor_sup {
  background-color: #b0e0e6;
}
#bgcolor_sup {
  background-color: #b0e0e6;
}

.footer {
  clear: both;
  text-align: center;
  padding: 10px;
  background-color: #E0E0E0;
}
ul {
  list-style: none;
  padding: 0;
  margin:0;
}
li {
  margin-top: 0px;
  margin-bottom: 0px;
}
.message {
  background-color: #FECC98;
  border: 1px none #ccc;
  padding: 10px;
  margin-bottom: 10px;
  width: 100%;
}

.message_sup {
  background-color: #b0e0e6;
  border: 1px none #ccc;
  padding: 10px;
  margin-bottom: 10px;
  width: 99%;
  max-height: calc(100% - 11rem);
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

button {
  padding: 10px 20px;
  background-color: #D9D9D9;
  color: #000000;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  width:200px;
  height: 60px;
  border: 1px solid black;
}
.send_button{
  margin-left: auto;
}

.send_button p{
  margin-top: 0px;
  font-size: 24px;
}
.send-button {
  padding: 10px 20px;
  background-color: #D9D9D9;
  color: #000000;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  width: 200px;
  height: 60px;
  border: 1px solid black;
  right: 200px;
  font-size: 25px;
}

.send-button-concierge {
  font-size: 24px;
}

.hidden {
  display: none; /* hiddenクラスが設定された要素は非表示になる */
}
.visible {
  display: block; /* visibleクラスを使って要素を表示する */
}

.message-box-left {
  width:100%;
  padding-bottom: 30px;
  margin-top: 20px;
  border-bottom: 1px solid #6d6b6b;
  }

.message-box-right {
  width:100%;
  /* padding-left: 50%; */
  padding-bottom: 30px;
  margin-top: 20px;
  border-bottom: 1px solid #474747;
}

.message-bubble {
  position: relative;
  background-color: #FFFFFF;
  border-radius: 10px;
  padding: 10px 20px;
  margin: 10px 0;
  width: 90%;
}
.message-bubble:after {
  content: '';
  position: absolute;
  border: 10px solid transparent;
  border-top-color: #fff;
  bottom: -20px;
  left: -10px;
  top:20.41px;
}
.message-bubble-right {
  position: relative;
  background-color: #FF9872;
  border-radius: 10px;
  padding: 10px 20px;
  margin: 10px 0;
  text-align: left;
  margin-left: auto;
  width: 90%;
}
.message-enduser {
  background-color: #FF9872;
}
.message-enduser:after {
  border: #FF9872;
}

.message-bubble-right:after {
  content: '';
  position: absolute;
  border: 10px solid transparent;
  border-top-color: #FF9872;
  bottom: -20px;
  right: -10px;
  top:20.41px;
}

.message-supplier {
  background-color: #33CCFF;
}
.message-supplier:after {
  border-top-color: #33CCFF;
}



.message {
  display: none; /* 初期状態ではメッセージは非表示にする */
}
.message.active {
  display: block; /* activeクラスがついたメッセージだけを表示する */
  max-width: 99%;
  max-height: calc(100% - 11rem);
  overflow: scroll;
   /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
   -ms-overflow-style: none;
   /*Firefoxへの対応*/
   scrollbar-width: none;
 }

  /*Google Chrome、Safariへの対応*/
  .message.active::-webkit-scrollbar{
   display: none;
}
.name {
  font-size: 11px;
}
.date-left {
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-weight: 400;
  line-height: 23px;
  letter-spacing: 0em;
  text-align: right;
  }
.date-right {
  display: block;
  text-align: right;
  font-size: 16px;
  font-family: "Noto Sans JP";
  font-weight: 400;
  width:fixed(430px);
  height:fixed(25px);
  top:495px;
  left:1055px;
  padding: 2px, 10px, 2px, 10px;
  gap: 10px;
  }
  .name-me{
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    width:fixed(430px);
    height:fixed(25px);
    top:495px;
    left:1055px;
    padding: 2px, 10px, 2px, 10px;
    gap: 10px;
  }

.image-button {
    display: flex;
    align-items: center;
    width:10px;
    justify-content: center;
    border: none; /* ボーダーを非表示に */
    background-color: transparent; /* 背景色を透明に */
    cursor: pointer; /* カーソルをポインターに */
  }

textarea {
  width:70%;
}

.form-controls {
  display: flex;
  flex-direction: row; /* 横並びにする */
  justify-content: space-between; /* 子要素を両端に配置 */
  align-items: center; /* 子要素を垂直中央に配置 */
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0; /* 右端までコントロールを広げる */
  padding: 10px; /* 必要に応じてパディングを調整 */
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.1);
  background-color: #FECC98;
}

.image-button {
  border: none; /* Optional: removes the border from the button */
  background: none; /* Optional: removes the default background */
  padding-right: 20px; /* Optional: removes the default padding */
  padding-left: 15px; /* Optional: removes the default padding */
  cursor: pointer; /* Changes the cursor to indicate it's clickable */
}

.image-button input[type="file"] {
  display: none; /* ファイル入力を非表示にする */
}

.image-button img {
  cursor: pointer; /* 画像にカーソルを合わせたときにポインターを表示 */
}

/* Adjust the textarea to match the height of the button */
#textarea-message,#textarea-message-concierge,#textarea-message1,#textarea-message2,#textarea-message3,#textarea-message4,#textarea-message5{
  flex-grow: 1; /* Allows the textarea to take up the remaining space */
  margin-right: 10px;
  font-size: larger;
  font: caption;
}

#supform{
  background-color: #b0e0e6;
}
.message-img-box{
  display: flex;
  justify-content: center;
}
.message-img{
  width: 100%;
  height: 100%;
  margin-top: 10px;
}

.progress-label {
  background-color: none;
  /* font-weight: bold; */
  margin-bottom: 2px; /* ラベルとプログレスバーの間に余白を追加 */
}

.progress-container {
  border-radius: 5px;
  background-color: #ffffff;
  /* height: 20px; */
  margin-bottom: 10px; /* バーの下に余白を追加 */
  width: calc(90% + 40px);
}

.progress-bar {
  background-color: #4caf50;
  height: 100%;
  text-align: center;
  color: white;
  border-radius: 2px;
  line-height: 20px; /* テキストの垂直位置を中央に配置 */
}

.reload-button {
  position: fixed;
  top: 10px; /* 上からの距離 */
  right: 10px; /* 右からの距離 */
  z-index: 1000; /* 他の要素の上に表示されるようにする */
  padding: 10px 20px;
  background-color: #007bff;
  color: white;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

.reload-button:hover {
  background-color: #0056b3;
}
.back-button {
  display: none;
  position: fixed;
  z-index: 1000;
  top: 12px;
  left: 5px;
}
.message-count1{
  background-color: #F24822;
  float: right;
  border-radius: 30px;
  height: 30px;
  min-width: 30px;
  line-height: 30px;
  float: right;
  text-align: center;
  border: 2px solid #C23A1B;
  font-size: 16px;
  color: #fff;
  margin-top: 5px;
  transform: translate(-30px,-10px);
}
.message-count0{
  float: right;
  border-radius: 30px;
  height: 30px;
  min-width: 30px;
  line-height: 30px;
  float: right;
  text-align: center;
  font-size: 16px;
  color: #fff;
  margin-top: 5px;
  transform: translate(-30px,-10px);
  color: rgba(255, 0, 0, 0);
}
#total-unread-count1,#total-unread-count2,#total-unread-count3{
  line-height: normal;
}


@media screen and (max-width: 768px) {
  .container {
    display: flex;
    transform: translateY(0px);
    height: 90vh;
    width: 100%;
    background-color: white;
    flex-direction: column;
  }
  .sidebar {
    width: 100%;
  }
  .sidebar li {
    padding: 15px 40px;
    width: auto;
    min-width: 0px;
    border-bottom: 1.5px solid #b0a5a5;
    text-align: left;
    min-height: 36px;
  }
  .main-content {
    padding: 0;
    min-height: 0;
  }
  .message {
    padding: 0;
    max-height: 86%;
    margin-bottom: 0px;
  }
  .message.active {
    padding: 0;
    max-height: 86%;
    margin-bottom: 0px;
  }
  .message_sup {
    padding: 0;
    max-height: 86%;
    margin-bottom: 0px;
  }
  .message-box-left {
    width: 70%;
    margin-left: 15px;
  }
  .message-bubble {
    font-size: 14px;
    margin-bottom: 5px;
  }
  .date-right {
    font-size: 13px;
    margin-top: 3px;
    margin-bottom: 3px;
  }
  .send-button {
    padding: 10px 20px;
    background-color: #D9D9D9;
    color: #000000;
    border: none;
    cursor: pointer;
    width: 100px;
    height: 60px;
    right: 200px;
    font-size: 15px;
}
  .reload-button {
    width: 80px;
    height: 35px;
    font-size: 13px;
    padding: 0;
    top: 17px;
  }
  .back-button {
    display: flex;
    margin-bottom: 0px;
    font-size: 24px;
    width: 30px;
    background-color: transparent;
    border: none;
    cursor: pointer;
    justify-content: flex-end;
  }
  .message-count1{
    height: 25px;
    min-width: 25px;
    line-height: 22px;
    transform: translate(-35px,-9px);
  }
}
