section {
 position: relative;
 width: 100%;
}

.bg {
 position: relative;
 padding: 0 0 120px;
 background: url(/common/img/common_bg.webp) center top;
}
@media screen and (max-width: 1024px) {
 .bg {
  padding-bottom: 70px;
 }
}
@media screen and (max-width: 600px) {
 .bg {
  padding-bottom: 40px;
 }
}

.bg2 {
 padding-bottom: 90px;
 background: url(/common/img/common_bg.webp) center top;
}
@media screen and (max-width: 1024px) {
 .bg2 {
  padding-bottom: 45px;
 }
}

.service {
 overflow: hidden;
}
@media screen and (max-width: 1024px) {
 .service {
  margin-top: 50px;
 }
}
.service#warehouse {
 margin-top: 100px;
}
@media screen and (max-width: 1024px) {
 .service#warehouse {
  margin-top: 50px;
 }
}
.service#warehouse >.inner {
 padding-top: 100px;
 border-top: 1px solid #9e9e9e;
}
@media screen and (max-width: 1024px) {
 .service#warehouse >.inner {
  padding-top: 50px;
 }
}
.service >.inner {
 width: 90%;
 max-width: 1100px;
 margin: 0 auto;
}
.service--lead {
 display: grid;
 grid-template-rows: auto;
 grid-template-columns: auto;
}
@media screen and (max-width: 600px) {
 .service--lead {
  display: block;
 }
}
.service--lead >div {
 position: relative;
 grid-column: 1/1;
 grid-row: 1/1;
}
.service--ttl {
 display: flex;
 z-index: 2;
 max-width: 460px;
 align-items: center;
 padding-left: 40px;
}
@media screen and (max-width: 1024px) {
 .service--ttl {
  max-width: 48%;
  padding: 0 0 100px;
 }
}
@media screen and (max-width: 600px) {
 .service--ttl {
  max-width: 100%;
  margin-bottom: 30px;
  padding-bottom: 70px;
 }
}
.service--ttl h2 {
 display: inline-block;
 line-height: 1;
 margin-bottom: 40px;
 padding: 15px 20px 17px;
 background: var(--white);
 font-weight: 600;
 font-size: 40px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--ttl h2 {
  margin-bottom: 20px;
  font-size: 24px;
 }
}
.service--ttl p.txt {
 line-height: 2.1111111111;
 font-size: 18px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--ttl p.txt {
  font-size: 16px;
 }
}
.service--ttl .deco {
 position: absolute;
 right: 0;
 bottom: 0;
}
.service--ttl .deco img {
 scale: 0.5;
 transform-origin: right bottom;
}
.service--slide {
 max-width: 704.5px !important;
 margin-right: -100px;
 margin-left: auto;
}
@media screen and (max-width: 1024px) {
 .service--slide {
  max-width: 352.25px !important;
  margin-right: -3%;
 }
}
@media screen and (max-width: 600px) {
 .service--slide {
  max-width: 100% !important;
  margin: 0;
 }
}
.service--slide_wrap .swiper-pagination {
 position: absolute;
 right: 100px;
 bottom: 0;
 left: auto;
 width: -moz-max-content;
 width: max-content;
}
@media screen and (max-width: 600px) {
 .service--slide_wrap .swiper-pagination {
  right: 0;
 }
}
.service--slide_wrap .swiper-pagination span {
 width: 9px;
 height: 9px;
 background: #c4c4c4;
 opacity: 1;
}
.service--slide_wrap .swiper-pagination span.swiper-pagination-bullet-active {
 background: var(--c_bl);
}
.service--lists {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 100px 9%;
 margin-top: 70px;
 counter-reset: number 0;
}
@media screen and (max-width: 1024px) {
 .service--lists {
  gap: 50px 5%;
 }
}
@media screen and (max-width: 600px) {
 .service--lists {
  grid-template-columns: 1fr;
  gap: 30px;
  margin-top: 50px;
 }
}
.service--lists >li {
 display: flex;
 flex-direction: column;
 gap: 10px 4%;
}
@media screen and (min-width: 600px) {
 .service--lists >li.col2 {
  display: grid;
  grid-template-columns: 45.5% 1fr;
  grid-column: span 2;
 }
}
.service--lists_tmb img {
 border-radius: 5px;
}
.service--lists_txt h3 {
 display: flex;
 line-height: 1.1428571429;
 align-items: center;
 gap: 10px;
 margin-bottom: 5px;
 font-weight: 500;
 font-size: 28px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--lists_txt h3 {
  font-size: 22px;
 }
}
.service--lists_txt h3:before {
 content: counter(number, decimal-leading-zero);
 display: flex;
 width: 57px;
 line-height: 1;
 flex-shrink: 0;
 justify-content: center;
 align-items: center;
 background: url(/service/img/icon_circle.webp) center/cover;
 font-weight: 400;
 font-size: 26px;
 letter-spacing: -0.01em;
 counter-increment: number;

 aspect-ratio: 1;
}
@media screen and (max-width: 1024px) {
 .service--lists_txt h3:before {
  width: 45px;
  font-size: 20px;
 }
}
.service--lists_txt p.txt {
 line-height: 2;
 font-size: 16px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--lists_txt p.txt {
  font-size: 14px;
 }
}
.service--lists_details {
 display: grid;
 align-items: flex-start;
 grid-template-columns: 110px 1fr;
 gap: 20px 25px;
 margin-top: 15px;
 padding: 20px 20px 15px;
 background: var(--white);
}
@media screen and (max-width: 1024px) {
 .service--lists_details {
  grid-template-columns: 75px 1fr;
  gap: 20px 10px;

  padding-inline: 15px;
 }
}
.service--lists_details h4 {
 line-height: 1;
 padding: 10px 0;
 color: var(--white);
 background: var(--c_bl);
 font-weight: 500;
 font-size: 18px;
 text-align: center;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--lists_details h4 {
  font-size: 14px;
  letter-spacing: 0.05em;
 }
}
.service--lists_details p.other {
 margin-top: 5px;
 text-align: right;
}
@media screen and (max-width: 1024px) {
 .service--lists_details p.other {
  margin-top: 10px;
 }
}
.service--lists_details_lists {
 display: flex;
 justify-content: flex-start;
 align-items: center;
 gap: 35px;
}
@media screen and (max-width: 1024px) {
 .service--lists_details_lists {
  justify-content: space-around;
 }
}
@media screen and (max-width: 1024px) {
 .service--lists_details_lists {
  justify-content: space-between;
  gap: 0;
 }
}
.service--lists_details_lists li {
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: center;
 gap: 5px;
}
@media screen and (max-width: 1024px) {
 .service--lists_details_lists li {
  font-size: 13px;
 }
}
.service--lists_details_lists li .icon {
 display: flex;
 height: 24px;
 justify-content: center;
 align-items: center;
}
.service--owned {
 width: 100%;
 max-width: 900px;
 margin: 70px auto 0;
 padding: 50px 4%;
 background: var(--white);
}
@media screen and (max-width: 1024px) {
 .service--owned {
  margin-top: 40px;
  padding: 30px 5%;
 }
}
.service--owned_ttl {
 display: flex;
 line-height: 1;
 justify-content: center;
 align-items: center;
 gap: 20px;
 margin-bottom: 20px;
 font-weight: 500;
 font-size: 28px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--owned_ttl {
  margin-bottom: 10px;
  font-size: 22px;
 }
}
.service--owned_ttl img {
 width: 70px;
}
@media screen and (max-width: 1024px) {
 .service--owned_ttl img {
  width: 55px;
 }
}
.service--owned_lead {
 line-height: 2;
 margin-bottom: 30px;
 font-size: 16px;
 text-align: center;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--owned_lead {
  margin-bottom: 20px;
  font-size: 14px;
 }
}
.service--owned_inner {
 display: grid;
 width: 100%;
 max-width: 730px;
 grid-template-columns: repeat(2, 1fr);
 gap: 8%;
 margin: 0 auto;
}
@media screen and (max-width: 600px) {
 .service--owned_inner {
  grid-template-columns: 1fr;
  gap: 20px;
 }
}
.service--owned_block dl dt {
 width: 110px;
 line-height: 1;
 margin-bottom: 10px;
 padding: 8px 0 10px;
 color: var(--white);
 background: var(--c_bl);
 font-weight: 500;
 font-size: 18px;
 text-align: center;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--owned_block dl dt {
  font-size: 16px;
 }
}
.service--owned_block dl dd:not(:last-child) {
 margin-bottom: 30px;
}
@media screen and (max-width: 600px) {
 .service--owned_block dl dd:not(:last-child) {
  margin-bottom: 20px;
 }
}
.service--owned_block dl dd ul {
 padding-left: 20px;
}
.service--owned_block dl dd ul li {
 display: flex;
 position: relative;
 justify-content: space-between;
 align-items: center;
 background-image: linear-gradient(to right, var(--c_bl) 4px, var(--white) 0 2px);
 background-repeat: repeat-x;
 background-position: left 0 top calc(50% + 2px);
 background-size: 6px 1px;
}
.service--owned_block dl dd ul li:not(:last-child) {
 margin-bottom: 10px;
}
.service--owned_block dl dd ul li:before {
 content: "";
 position: absolute;
 top: 50%;
 left: -20px;
 width: 7px;
 border-radius: 50px;
 background: var(--c_bl);
 translate: 0 calc(-50% + 2px);

 aspect-ratio: 1;
}
.service--owned_block dl dd ul li span {
 background: #ffffff;
}
.service--owned_block dl dd ul li span.vehicle {
 line-height: 1;
 padding-right: 10px;
 font-size: 18px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--owned_block dl dd ul li span.vehicle {
  font-size: 16px;
 }
}
.service--owned_block dl dd ul li span.num {
 line-height: 1;
 padding-left: 15px;
 color: var(--c_bl);
 font-weight: 500;
 font-size: 22px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 .service--owned_block dl dd ul li span.num {
  padding-left: 10px;
  font-size: 18px;
 }
}
/*# sourceMappingURL=layout.css.map */