@charset "utf-8";

main {
  margin-top: 100px;
}

body{
  background-color: white;
  letter-spacing: 1.5px;
}

h1, h2{
  font-size: xx-large;
  margin-top: 50px;
  color: rgb(68, 68, 68);
  font-weight: bold;
}
.title2{
  font-size: x-large;
  color: rgb(68, 68, 68);
  font-weight: bold;
}
.title3{
  font-size: large;
  color: rgb(68, 68, 68);
}
/* micro clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {clear: both;}
.cf {*zoom: 1;}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

#logo {
	width: auto;
  height: 32px;
}

#logo_title {
  margin-left: 60px;
  font-size: large;
  height: 61px;
  line-height: 61px;
  font-family: "M PLUS 1p";
  /* font-weight: bold;  */
  color: #6c757d;
}



/* ========================================
    フッター
========================================= */
footer {
  width: 100%;
  height: 65px;
  background-color: #474747;
  color: #fff;
  text-align: center;
  /* line-height: 73px; */
  margin-top: auto;
}
/* スクリーンが460px以下のCSSを適用 */
@media screen and (max-width: 460px) {
  footer {
    height: 88px;
  }
}

.footer-item{
  margin-left: 20px;
}

footer nav {
  float: left;
  margin-top: 19px;
  width: 100%;
}
.footer-col{
  margin: 3px;
}
/* スクリーンが640px以下のCSSを適用 */
@media screen and (max-width: 640px) {
  footer nav {
    margin-top: 10px;
  }
}

footer nav ul li {
  float: left;
}


.rate:hover .face {
	opacity: 1;
}

.star-rating {
  position: relative;
  width: 156.5px;
  height: 1em;
  font-size: 30px;

}
.star-rating-front {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  color: #ffcc33;
}
.star-rating-back {
  color: #ccc;
}
#rating-count a{
  font-size: x-large;
}

.show-kingaku{
  font-size: x-large;
  text-align: center;
}

.box-center{
  margin-top: 30px;
  text-align: center;
}

.spinner-box{
  text-align: center;
  color: gray;
}

.matter-title{
  font-weight: bold; 
}

.profile-title{
  font-weight: bold;
}

.profile-img-list{
  width: 70px;
  height:70px;
  border-radius: 50%;
  object-fit:cover;
}

.new {
  position: relative;
}
.new::after {
  content: "NEW";
  text-align: center;
  vertical-align: middle;
  width: 38px;
  height: 16px;
  font-size: 10px;
  font-weight: bold;
  color: #ffffff;
  background-color: #FF0200;
  position: absolute;
  top: 0;
  right: 0;
  margin: 1px;
}

.font-red{
  color: rgb(195, 41, 41);
}

.textarea_custom{
  min-height: 120px;
}