@charset "utf-8";

.sp {
  display: block;
}

.tb,
.pc {
  display: none;
}

img {
	max-width: 100%;
}

#header {
  padding: 2% 0;
}

#header h1 img {
  height: 11vw;
}

#header .top_contact {
  padding: 0;
}

#header .top_contact a {
  font-size: 3vw;
  text-align: center;
  line-height: 1.2em;
  padding: 2vw 6vw;
}

.inner {
  max-width: 92%;
}

.fv img {
  width: 100%;
}

.solution h2 {
  padding: 4% 0;
  font-size: 6vw;
  line-height: 1.4em;
}

.solution h2 span {
  font-size: 7vw;
  line-height: 1.4em;
}

.solution .ly {
  margin: 4vw 0 0;
}

.solution .ly .ly-img {
  float: none;
}

.solution .ly .ly-img img {
  width: 100%;
}

.solution .ly:nth-child(2n) .ly-img {
  float: none;
}

.solution .ly .ly-txt {
  float: none;
  width: 100%;
  margin: 5% 0 0;
}

.solution .ly .ly-txt h3 {
  text-align: center;
  font-size: 7vw;
  padding: 0 0 2vw;
}

.solution .ly .ly-txt h3 span {
  font-size: 9vw;
}

.solution .ly .ly-txt ul li {
  font-size: 5vw;
  padding: 2% 0 2% 10%;
}

.solution .ly .ly-txt ul.list-chk li {
  padding: 3% 0 3% 14%;
  background-size: 7vw;
}


.btn_contact {
  padding: 10% 0;
}

.results {
  padding: 15% 0 20%;
  background: url('../img/bg_results_sp.jpg') no-repeat 50% 50%;
  background-size: cover;
}

.results:before {
  margin-left: -9vw;
  border-width: 7vw 9vw 9vw;
}

.results h2 img {
  height: 10vw;
}

.results h2 strong {
  font-size: 7vw;
  margin: 10% 0;
}

.results h2 strong span {
  font-size: 9vw;
}

.results figure img {
  width: 100%;
}

.voice h2 {
  margin: 15% 0 8%;
  font-size: 9vw;
}

.voice ul li {
  padding: 1%;
  margin: 0 0 5%;
}

.voice ul li:last-child {
  margin: 0;
}

.voice ul li .voice_box {
  padding: 5%;
  display: block;
}

.voice ul li figure {
  margin: 0 0 5%;
  text-align: center;
}

.voice ul li figure img {
  width: 45%;
}

.voice ul li dl dt {
  text-align: center;
}

.voice ul li dl dt span {
  font-size: 4vw;
}

.voice ul li dl dt strong {
  font-size: 4.5vw;
  padding: 2% 0 3%;
  line-height: 1.4em;
  margin: 0 0 3%;
}

.flow {
  background: #f2f2f2;
}

.flow h2 {
  padding: 15% 0 8%;
  font-size: 8vw;
}

.flow h2 span {
  font-size: 10vw;
}

.flow figure img {
  width: 100%;
}

.contact {
  padding: 15% 0;
}

.contact h2 {
  margin: 0 0 8%;
  font-size: 9vw;
}

.contact form {
  padding: 0;
}

.contact ul li {
  margin: 5% 0;
}

.contact ul li dl {
  display: block;
}

.contact ul li dl dt {
  display: block;
  width: 100%;
  font-size: 4vw;
  margin: 0 0 3%;
}

.contact ul li dl dd {
  display: block;
}

.contact ul li dl dd.address {
  position: relative;
}

.contact ul li dl dd span {
  position: absolute;
  top: -6.7vw;
  left: 25%;
  font-size: 4vw;
  padding: 0;
}

.contact ul li dd.address input {
  float: none;
  width: 100%;
}

.contact ul li dl dd input {
  font-size: 4vw;
  padding: 2vw;
  border-radius: 1vw;
}

.contact ul li dl dd select {
  padding: 2vw;
  border-radius: 1vw;
  font-size: 4vw;
}

.contact ul li dl dd p {
  text-align: left;
  font-size: 3.4vw;
  margin: 3% 0 0;
}

.contact .btn_send {
  margin: 10% 0 0;
}

.contact .btn_send input {
  width: 100%;
  height: 11vw;
  font-size: 5vw;
  border-radius: 2vw;
}

#footer {
  padding: 5% 0;
}

#footer p.copy {
  font-size: 3vw;
}