#Main .headline {
  margin: 140px auto 0px auto;
}

#Main .headline h1 {
  display: inline-block;
}

#Main .headline h1 .ruby {
  font-size: 3.75vw;
  margin-bottom: 3.125vw;
}

#Main .headline h1 .title {
  font-size: 12.5vw;
  line-height: 1;
}

#Main .headline .cut {
  margin-top: -9.375vw;
}

#Main .headline .cut::before {
  padding-top: 48.52941%;
}

#Main .headline .cut img {
  width: 44.375vw;
  max-width: 341px;
}

#Main .introduction {
  margin: 28.125vw auto 0px auto;
  padding: 0px 15px;
}

#Main .introduction > .inner {
  border: none;
  margin: 0px;
  padding: 0px;
  text-align: justify;
}

#Main .introduction > .inner h2 {
  font-size: 5.625vw;
  margin: 0px auto 9.375vw auto;
}

#Main .introduction > .inner p {
  font-size: 3.75vw;
}

#Main .introduction .shadow {
  display: none;
}

#Main .introduction .points {
  padding: 9.375vw 0px;
}

#Main .introduction .points li {
  margin: 0px 0vw;
  text-align: center;
}

#Main .introduction .points li dl {
  padding: 3.125vw;
}

#Main .introduction .points li dl dt {
  font-size: 2.5vw;
  padding-bottom: 2.5vw;
}

#Main .introduction .points li dl dd {
  font-size: 3.125vw;
}

#Main .section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 37.5vw auto 0px auto;
  padding: 0px 15px;
}

#Main .section.left .box {
  width: auto;
}

#Main .section.left .box:last-child {
  padding-left: 0vw;
}

#Main .section.right {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -moz-box-orient: vertical;
  -moz-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

#Main .section.right .box {
  width: auto;
}

#Main .section.right .box:first-child {
  padding-right: 0vw;
  padding-top: 9.375vw;
}

#Main .section .caption span {
  font-size: 3.125vw;
}

#Main .section h3 {
  font-size: 5.625vw;
  margin: 3.125vw 0px 9.375vw 0px;
}

#Main .section p {
  font-size: 3.75vw;
}

#Main .section .comparison dl dt {
  padding: 0px 0px;
}

#Main .section .comparison dl dt .object span {
  font-size: 4.375vw;
}

#Main .section .comparison dl dt .object::after {
  margin: 0px 6.25vw;
}

#Main .section .comparison dl dt .content {
  font-size: 6.875vw;
}

#Main .section .comparison dl {
  margin: 9.375vw 0px;
}

#Main .section .comparison dl dd {
  font-size: 4.375vw;
  margin-top: 6.25vw;
  padding: 6.25vw 9.375vw;
}

#Main .section .comparison dl dd::before {
  left: 9.375vw;
  -webkit-transform: translate(3.75vw, 0%);
  -moz-transform: translate(3.75vw, 0%);
  transform: translate(3.75vw, 0%);
}

#Main .section .comparison dl dd::after {
  left: 9.375vw;
  -webkit-transform: translate(3.75vw, 0%);
  -moz-transform: translate(3.75vw, 0%);
  transform: translate(3.75vw, 0%);
}

#Main .section.center > .inner {
  margin-bottom: 31.25vw;
}

#Main .section.center > .inner .talent {
  margin: 9.375vw auto;
  height: 68.125vw;
  width: 75.625vw;
}

#Main .section.center > .inner .talent .point {
  font-size: 2.5vw;
  height: 18.125vw;
  width: 25.625vw;
}

#Main .section.center > .inner p {
  text-align: justify;
  width: auto;
}

@media screen and (min-width: 614px) {
  #Main .section.center > .inner .talent {
    height: 420px;
    width: 464px;
  }
  #Main .section.center > .inner .talent .point {
    font-size: 15.35px;
    height: 111.283px;
    width: 157.333px;
  }
}

/*# sourceMappingURL=../maps/sp/message.css.map */
