.l-main {
  padding-bottom: 80px;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .l-main {
    padding-bottom: 120px;
  }
}
.l-main:has(> .l-contents > .p-sec--bg:last-child) {
  padding-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .l-main:has(> .l-contents > .p-sec--bg:last-child) {
    padding-bottom: 0;
  }
}
.l-main:not(:has(> .p-sec-top)) > .l-contents {
  padding-top: 15px;
}
@media only screen and (min-width: 768px) {
  .l-main:not(:has(> .p-sec-top)) > .l-contents {
    padding-top: 30px;
  }
}
