@charset "utf-8";

.sp {
  display: block;
}

img {
  max-width: 100%;
}

#header .inner {
  width: 100%;
}

#header h1 img {
  max-width: 60%;
}

div .inner {
  width: 90%;
}

.box01 {
  padding: 8% 0;
}

.box01 h2 {
  font-size: 7vw;
}

p {
  font-size: 3.4vw;
}

.box01 p span {
  font-size: 2vw;
}

.box02 {
  padding: 8% 0 5%;
  background-size: cover;
}

.box02 ul li:first-child {
  margin: 0 0 5%;
}

.box02 p {
  text-align: center;
  margin: 5% 0 0;
}

.box03 {
  padding: 5% 0;
}

.box03 .ly div {
  float: none;
  width: 100%;
 }

.box03 .ly div:last-child {
  float: none;
  padding: 3% 0 0;
}

.box03 h2 {
  margin: 0 0 5%;
}

.box03 h2 img {
  max-width: 60%;
}

.box03 h3 img {
  max-width: 46%;
}

.box03 table th {
  font-size: 3.4vw;
  padding: 2%;
}

.box03 table td {
  font-size: 3.4vw;
  padding: 2%;
  width: 33.2%;
}

.box04 {
  padding: 5% 0;
}

.box04 h2 {
  padding: 0;
  font-size: 5vw;
  margin: 0 0 5%;
}

.box04 p {
  padding: 0;
}

.box04 p img {
  margin: 0 auto;
  display: block;
}

.box04 ul {
  margin-top: 5%;
}

.box04 ul li {
  width: 48%;
  font-size: 3.4vw;
  line-height: 1.4em;
}

.box04 ul li img {
  height: 35vw;
  margin: 0 auto 5%;
}

.box04 ul li:last-child img {
  margin: 0 0 5%;
}

.box05 figure {
  position: relative;
  top: 0;
  width: 50%;
  margin: 0 auto;
}

.box05 {
  padding: 5% 0;
}

.box05 p {
  width: 100%;
  padding: 0;
  margin: 3% 0;
}

.box06 {
  padding: 5% 0;
}

.box06 p {
  width: 100%;
  margin: 3% 0 0;
}

.box07 h2 {
  padding: 5% 0;
}

.box07 h2 span {
  width: 100%;
}

.box07 h2 span img {
  margin: 0;
}

.box07 .inner {
  padding: 0;
}

.box07 .inner div {
  float: none;
  width: 100%;
}

.box07 .inner div:nth-of-type(2) {
  width: 100%;
  float: none;
}

.box07 {
  padding: 0;
}

.box07 .inner {
  padding: 5% 0;
}

.box07 p span {
  font-size: 4vw;
}

.box07 img {
  margin: 5% 0;
}

.box07 table th,
.box08 ul.info li table th {
  font-size: 3.4vw;
}

.box07 table td,
.box08 ul.info li table td {
  font-size: 3.4vw;
  line-height: 1.4em;
}

.box07 .inner .btn {
  margin: 3% 0 0;
}

.box08 .btn a,
.box07 .btn a {
  font-size: 4vw;
  margin: 0;
}

.box08 {
  padding: 5% 0;
}

.box08 h2 {
  font-size: 6vw;
  padding: 0;
  margin: 0 0 5%;
}

.box08 ul.product li {
  display: block;
}

.box08 ul.product li figure {
  display: block;
  width: 100%;
  margin: 5% 0;
}

.box08 ul.product li p {
  display: block;
}

.box08 ul.product li p {
  font-size: 3.4vw;
}

.box08 ul.product li {
  margin: 0 0 5%;
}

.box08 ul.info li {
  float: none;
  width: 100%;
}

.box08 .btn {
  margin: 3% 0 5%;
}

.box09 {
  padding: 5% 0;
}

.box09 .inner {
  width: 90%;
}

.box09 h2 {
  font-size: 7vw;
  margin: 0 0 5%;
}

.box09 h2 span {
  font-size: 5vw;
}

.box10 table td{
  height: auto;
}

#footer {
  padding: 5% 0;
}

#footer .inner {
  display: block;
}

#footer .inner > div {
  flex: none;
}

#footer .inner .info {
  padding: 0;
  font-size: 3.2vw;
}

#footer .inner .logo {
  text-align: center;
  margin: 8% 0;
}

#footer .inner .logo img {
  max-width: 40%;
}

#footer .inner .sns ul {
  padding: 0;
}