@import url("https://fonts.googleapis.com/css2?family=Kiwi+Maru&display=swap&subset=japanese");
/* Idea
---------------------------------------------------------------- */
body#idea .pagetitle {
  background-image: url("../images/idea/pagetitle_bg.jpg");
}
body#idea .lead p {
  color: #000000;
  font-family: 'Kiwi Maru', serif;
  font-size: 1.875rem;
  text-align: center;
  line-height: 1.5;
}
body#idea .policy p {
  font-size: 1.25rem;
  text-align: center;
}
body#idea .vision {
  background: url("../images/idea/vision_bg.jpg") no-repeat center bottom;
  -moz-background-size: cover;
  -o-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
}
body#idea .vision p {
  text-align: center;
  line-height: 1.75;
}
body#idea .vision strong {
  color: #380508;
}
body#idea .promise .boxset {
  display: flex;
  justify-content: space-between;
}
body#idea .promise .boxset .box {
  flex-basis: 31%;
}
body#idea .promise .boxset .box dl {
  position: relative;
  padding: 0.9375rem;
  border: solid 1px #e5e5e5;
  -moz-border-radius: 0.625rem;
  -webkit-border-radius: 0.625rem;
  border-radius: 0.625rem;
}
body#idea .promise .boxset .box dl dt {
  position: absolute;
  top: 0;
  left: 50%;
  padding: 0 0.3125rem;
  color: #cc0000;
  font-size: 1.125rem;
  font-weight: 700;
  white-space: nowrap;
  background-color: #ffffff;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
body#idea .promise .boxset .box dl dd {
  font-size: 0.875rem;
  line-height: 1.5;
}
body#idea .promise .boxset .box dl dd.illust {
  margin-bottom: 1.25rem;
  text-align: center;
}

/* RWD
---------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  body#idea .lead p {
    font-size: 5.33333vw;
  }
  body#idea .policy p {
    font-size: 4.8vw;
  }
  body#idea .vision p {
    text-align: left;
  }
  body#idea .vision p br {
    display: none;
  }
  body#idea .promise {
    padding-top: 10.66667vw;
  }
  body#idea .promise .boxset {
    display: block;
  }
  body#idea .promise .boxset .box + .box {
    margin-top: 8vw;
  }
  body#idea .promise .boxset .box dl {
    padding: 4vw;
    -moz-border-radius: 2.66667vw;
    -webkit-border-radius: 2.66667vw;
    border-radius: 2.66667vw;
  }
  body#idea .promise .boxset .box dl dt {
    font-size: 5.33333vw;
  }
  body#idea .promise .boxset .box dl dd {
    font-size: 3.2vw;
  }
  body#idea .promise .boxset .box dl dd.illust {
    margin-bottom: 4vw;
  }
}
