main {
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 0;
}

section .inner {
  width: 52.0833333333vw;
  margin: 0 auto;
}

/*-----------------------------------------------------------------
xxx
-----------------------------------------------------------------*/
.logo {
  width: 18.2291666667vw;
  margin: 0 auto;
  padding-top: 1.8229166667vw;
}
.logo h1 {
  display: block;
}
.logo h1 img {
  display: block;
}

#main-image {
  padding: 1.5625vw 0;
  position: relative;
  width: 88.4895833333vw;
  margin: 0 auto;
  overflow: hidden;
}
#main-image ul li img {
  width: 100%;
}

#sec01 {
  padding-top: 3.125vw;
}
#sec01 .imgs {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
#sec01 .imgs .img:nth-of-type(1) {
  width: 62.1875vw;
  margin-bottom: 5.5729166667vw;
}
#sec01 .imgs .img img {
  display: block;
}

#sec02 {
  margin-top: 8.2291666667vw;
  position: relative;
}
#sec02 .imgs {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
#sec02 .imgs .img {
  width: 27.7604166667vw;
  height: 33.8541666667vw;
}
#sec02 .imgs .img img {
  display: block;
}

#sec03 {
  width: 83.3333333333vw;
  margin: 5.2083333333vw auto 0;
  position: relative;
}
#sec03 .imgs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#sec03 .imgs .img {
  position: relative;
}
#sec03 .imgs .img:nth-of-type(1) {
  width: 36.0416666667vw;
  height: 43.2291666667vw;
}
#sec03 .imgs .img:nth-of-type(2) {
  width: 32.9166666667vw;
  height: 43.2291666667vw;
}
#sec03 .imgs .img:nth-of-type(3) {
  width: 24.7916666667vw;
  height: 32.8125vw;
  margin-top: 5.3125vw;
  margin-left: 10.4166666667vw;
}
#sec03 .imgs .img:nth-of-type(3)::before {
  content: "";
  display: block;
  width: 11.6666666667vw;
  height: 38.9583333333vw;
  background: url(../img/sec03-left.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: -7.5520833333vw;
  transform: translateY(-50%);
}
#sec03 .imgs .img:nth-of-type(4) {
  width: 24.7916666667vw;
  height: 32.8125vw;
  margin-top: 5.3125vw;
  margin-left: 3.0729166667vw;
  margin-right: 10.4166666667vw;
}
#sec03 .imgs .img:nth-of-type(4)::before {
  content: "";
  display: block;
  width: 11.6666666667vw;
  height: 39.0104166667vw;
  background: url(../img/sec03-right.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: -7.5520833333vw;
  transform: translateY(-50%);
}
#sec03 .imgs .img:nth-of-type(5) {
  width: 15.1041666667vw;
  height: 32.5520833333vw;
  margin-top: 4.3229166667vw;
}
#sec03 .imgs .img:nth-of-type(6) {
  width: 43.8541666667vw;
  height: 32.5520833333vw;
  margin-left: 1.6666666667vw;
  margin-top: 4.3229166667vw;
}
#sec03 .imgs .img:nth-of-type(7) {
  width: 15.1041666667vw;
  height: 32.5520833333vw;
  margin-left: 1.7708333333vw;
  margin-top: 4.3229166667vw;
}
#sec03 .imgs .img img {
  display: block;
}

#sec04 {
  position: relative;
  margin: 5.9375vw auto 0;
  width: 86.4583333333vw;
}
#sec04 .imgs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#sec04 .imgs .img {
  position: relative;
}
#sec04 .imgs .img:nth-of-type(1) {
  width: 43.2291666667vw;
  height: 51.9791666667vw;
}
#sec04 .imgs .img:nth-of-type(2) {
  width: 43.2291666667vw;
  height: 51.9791666667vw;
}
#sec04 .imgs .img:nth-of-type(3) {
  width: 58.0729166667vw;
  height: 38.9583333333vw;
  margin-top: 6.8229166667vw;
  margin-left: 10.4166666667vw;
  margin-right: 10.4166666667vw;
}
#sec04 .imgs .img:nth-of-type(4) {
  width: 26.0416666667vw;
  height: 33.4895833333vw;
  margin-top: 11.5625vw;
}
#sec04 .imgs .img:nth-of-type(5) {
  width: 26.0416666667vw;
  height: 33.4895833333vw;
  margin-top: 11.5625vw;
  margin-left: 6.3541666667vw;
}

#sec05 {
  position: relative;
  margin: 5.9375vw auto 0;
  width: 86.4583333333vw;
}
#sec05 .imgs {
  position: relative;
}
#sec05 .imgs:nth-of-type(1) {
  display: grid;
}
#sec05 .imgs:nth-of-type(1) .img:nth-of-type(1) {
  width: 27.0833333333vw;
  height: 42.7604166667vw;
  grid-area: 1/1/2/2;
  margin-left: 9.6354166667vw;
}
#sec05 .imgs:nth-of-type(1) .img:nth-of-type(2) {
  width: 35.15625vw;
  height: 27.7083333333vw;
  grid-area: 2/1/3/2;
  margin-top: 5.5208333333vw;
  margin-left: 4.9479166667vw;
}
#sec05 .imgs:nth-of-type(1) .img:nth-of-type(3) {
  width: 38.3854166667vw;
  height: 68.3333333333vw;
  grid-area: 1/2/3/3;
}
#sec05 .imgs:nth-of-type(2) {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 7.03125vw;
}
#sec05 .imgs:nth-of-type(2) .img {
  width: 20.6770833333vw;
  height: 36.4583333333vw;
}
#sec05 .imgs:nth-of-type(2) .img + .img {
  margin-left: 2.9166666667vw;
}
#sec05 .imgs:nth-of-type(3) {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 7.8125vw;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
#sec05 .imgs:nth-of-type(3) .img:nth-of-type(1) {
  width: 29.1666666667vw;
  height: 29.1666666667vw;
}
#sec05 .imgs:nth-of-type(3) .img:nth-of-type(2) {
  width: 36.0416666667vw;
  height: 41.4583333333vw;
  margin-left: 3.4375vw;
}
#sec05 .imgs:nth-of-type(3) .img:nth-of-type(3) {
  width: 28.125vw;
  height: 42.5vw;
  margin-top: 8.8020833333vw;
}
#sec05 .imgs:nth-of-type(3) .img:nth-of-type(4) {
  width: 28.125vw;
  height: 42.5vw;
  margin-left: 2.1875vw;
  margin-top: 8.8020833333vw;
}
#sec05 .imgs:nth-of-type(4) {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 13.125vw;
  margin-left: 6.7708333333vw;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
}
#sec05 .imgs:nth-of-type(4) .img:nth-of-type(1) {
  width: 29.2708333333vw;
  height: 34.4270833333vw;
}
#sec05 .imgs:nth-of-type(4) .img:nth-of-type(2) {
  width: 30.3125vw;
  height: 23.9583333333vw;
  margin-left: 3.4375vw;
  margin-right: 3.4375vw;
}
#sec05 .imgs:nth-of-type(4) .img:nth-of-type(3) {
  width: 31.3541666667vw;
  height: 32.8125vw;
  margin-top: 4.1666666667vw;
  margin-left: 2.8645833333vw;
}
#sec05 .imgs:nth-of-type(4) .img:nth-of-type(4) {
  width: 35.5729166667vw;
  height: 49.0625vw;
  margin-left: 3.0729166667vw;
  margin-top: -6.5104166667vw;
}

#instagram {
  margin-top: 15.625vw;
  position: relative;
  padding-bottom: 5.3125vw;
}
#instagram::before {
  content: "";
  display: block;
  background: url(../img/text-instagram.png) center center no-repeat;
  background-size: contain;
  width: 9.375vw;
  height: 1.1458333333vw;
  margin: 0 auto;
}
#instagram .swipe-instagram {
  width: 91.3541666667vw;
  margin: 0 auto;
  overflow: hidden;
}
#instagram .imgs {
  margin-top: 2.0833333333vw;
}
#instagram .imgs .img {
  position: relative;
  width: 14.6875vw;
  height: 16.0416666667vw;
  overflow: hidden;
}
#instagram .imgs .img img {
  max-width: none;
  max-height: none;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#instagram .link {
  display: block;
  width: 6.3541666667vw;
  height: 0.8333333333vw;
  margin: 1.6666666667vw auto 0;
}