@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: 0 5%;
}

.box01 .inner {
	width: 100%;
	background-image: url('img/hands_sp.png');
	background-size: 30%;
}

.box01 h2 {
  font-size: 6.5vw;
  padding: 8% 0 5%;
}

.box01 h2:nth-of-type(2) {
	font-size: 4vw;
	padding: 5% 0;
}

.box03 .inner {
	padding: 3% 5%;
}

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 h2 span {
	width: 100%;
	padding: 3% 5%;
	box-sizing: border-box;
	font-size: 6vw;
}

.box04 .inner {
	width: 100%;
	box-sizing: border-box;
	padding: 0 5%;
}

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

.box04 ul li dl dt {
  padding: 3% 5%;
  font-size: 4.4vw;
}

.box04 ul li dl dd {
	padding: 3% 5%;
	font-size: 3.8vw;
}

.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 {
  padding: 5% 0;
}

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

.box08 .product {
  display: block;
	margin: 0 0 5%;
}

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

.box08 .product figure img {
	width: 40%;
}

.box08 .product p {
  display: block;
}

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

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

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

#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;
}

.btn a {
  font-size: 4vw;
  width: 100%;
  padding: 3%;
}

.box02 {
	width: 100%;
}

.btn-inner {
	display: block;
}

.box02 p {
	text-align: right;
}

.box02 p img {
	width: 80%;
}

.box01 ul {
	width: 100%;
}

.box01 ul li {
	float: none;
	margin: 0 0 5%;
}

.box01 p {
  font-size: 5vw;
  margin: 5% 0 8%;
}

.box03 ul li:first-child {
	position: relative;
	top: 0;
}

.box03 .inner {
	width: 100%;
	box-sizing: border-box;
	padding: 2% 8%;
}

.box03 ul li {
	width: 100%;
	margin: 8% 0 10%;
}