@charset "utf-8";

.bg-danger {
  background-color: #c7000b !important;
}

.bg-success {
  background-color: #006835 !important;
}

.header-logo img,
.header-tel img,
.header-mail img {
  width: 180px;
}

.header span {
  display: inline-block;
  width: 100%;
  text-align: center;
  background-color: #c7000b;
  color: #fff;
}

.border-horizontal {
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
}

.text-area {
  max-width: 90%;
  margin: auto;
  font-size: 16px;
  line-height: 2;
}

.text-area span {
  font-size: 16px;
  color: #c7000b;
  font-weight: bold;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

@media only screen and (max-width: 767px) {
  .pc {
    display: none;
  }

  .sp {
    display: block;
  }
}

/* spのみ改行 */
@media screen and (min-width: 768px){
  .br-sp {display: none; }
}

summary {
  display: block;
}

details h3 {
  display: inline-block;
  color: #c7000b;
  font-weight: bold;
  border-bottom: double 3px #e95513;
}

summary::-webkit-details-marker {
  display: none;
}

.satisfaction h1 {
  text-align: center;
  color: #c7000b;
  font-weight: bold;
}

.selling-point {
  background-color: #fffde5;
}

.selling-point h5 {
  text-align: center;
  font-weight: bold;
  border-bottom: solid 2px #e95513;
}

.selling-point-view {
  display: block;
  width: 50vw;
  margin: auto;
}

.postscript-banner {
  background-color: #d3d3d3;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.qa-banner {
  background-color: #c7000b;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom: solid 10px #006835;
}

.qa-list dt {
  font-size: 18px;
  margin-bottom: 1em;
  color: #c7000b;
  font-weight: 600;
}

.qa-list dt::before,
.qa-list dd::before {
  margin-right: .4em;
}

.qa-list dt::before {
  content: "Q.";
}

.qa-list dd {
  margin: 0 0 2.5em;
  padding: 1em 1em;
  background-color: #f2f2f2;
  color: #006835;
}

.qa-list dd::before {
  content: "A.";
  color: #006835;
}

footer {
  background-color: #006835;
}

footer p {
  color: white;
}

.footer-logo {
  width: 180px;
}

.footer-tel {
  display: inline-block;
  color: #fff;
  background-color: #c7000b;
}

@media only screen and (max-width: 767px) {

  .text-area {
    max-width: 90%;
    margin: auto;
    font-size: 14px;
    line-height: 2;
  }

  .text-area span {
    font-size: 14px;
    color: #c7000b;
    font-weight: bold;
  }

  .header-logo {
    width: 120px;
  }

  .header-tel img,
  .header-mail img {
    width: 45px;
  }

  .header-menu {
    font-size: 14px;
  }

  .satisfaction h1 {
    font-size: 20px;
    text-align: center;
    color: #c7000b;
    font-weight: bold;
  }
}