body{
  margin: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}
main{
  margin: 20px;
  margin-top: 0;
  padding-top: 60px;
}

header{
  position: fixed;/*fixedを設定して固定*/
  height: auto;/*高さ指定*/
  width:100%;/*横幅指定*/
  z-index: 999;/*最前面へ*/
  /*以下はレイアウトのためのCSS*/
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 90%;
  font-family:'M PLUS Rounded 1c', sans-serif!important;
  /*overflow-y: hidden;*/
  -webkit-app-region: drag;
}


.persona {
  width: 50%;
  position: relative;
  margin: 5px auto;
  background: #fcf4da;
  padding: 15px 5px 15px 20px;
  font-size: 150%;
  color: #343434;
  border-radius: 0 10px 10px 0;
}

.persona:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0eb";
  display: inline-block;
  position: absolute;
  padding: 0em;
  color: white;
  background: #f1d333;
  font-weight: 900;
  font-size: 150%;
  width: 70px;
  text-align: center;
  height: 70px;
  line-height: 70px;
  left: -1.35em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 50%;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.29);
}


.btn-border-bottom {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 0.25em 0;
  text-decoration: none;
  color: #67c5ff;
  margin: 5px auto;  
}

.btn-border-bottom:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 4px;
  top:100%;
  left: 0;
  border-radius: 3px;
  background:#67c5ff;
  transition: .2s;
}

.btn-border-bottom:hover:before {
  top: -webkit-calc(100% - 3px);
  top: calc(100% - 3px);
}


.prsinfo{
  width: 100%;
  margin: 10px auto;
  text-align: center;
  padding: 20px 10px;
  border-bottom: 1px gray dashed;
}


#message-list{
  margin: 30px auto;
  display: flex;
  flex-wrap: wrap;
  gap: 30px 20px;
}

p#sessid {
  margin-left: auto;
  margin-right: 10px;
}

.qwrapper{
width: 20%;
min-width: 390px;
display: flex;
flex-wrap: wrap;
min-height:250px;
padding: 10px;
border-radius: 25px;
border: 1px solid gray;
align-content: center;
justify-content: space-between;
margin: 5px;
}

.cd-left{
  width: 20%;
 display:inline-block;
 margin: auto 0;
}
.cd-right{
  width: 75%;
 display:flex;
 align-self: stretch;
 margin:10px 2px;
}

.icon{
  width: 60%;
  margin: 10px auto;
  aspect-ratio: 1/1;
  background-color: #316745;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}
.iconimg{
  background-image: url(../img/icon.png);
  width: 60%;
  height: 60%;
  aspect-ratio: 1/1;
  z-index: 10;
  position: absolute;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.qusername{
  text-align: center;
  color: gray;
  margin: 15px auto 8px auto;
  font-size: 80%;
  word-wrap: break-word;
  word-break: break-all;
}
.posttime{
  text-align: center;
  color: gray;
  margin: 5px auto;
  font-size: 70%;
}

.questionp{
display: inline-block;
margin: auto;
word-wrap: break-word;
word-break:break-all;
margin: auto 15px auto 15px;
line-height: 175%;
font-weight: 600;
font-size: 110%;
}