main {
 margin-bottom: 0;
}

section {
 position: relative;
 width: 100%;
}
section.forming_area {
 margin-bottom: 100px;

 padding-inline: 5%;
}
@media screen and (max-width: 1024px) {
 section.forming_area {
  margin-bottom: 50px;
 }
}
section.forming_area >.inner {
 width: 100%;
 max-width: 1100px;
 margin: 0 auto;
}
section.forming_area >.inner p.lead {
 line-height: 2;
 font-size: 18px;
 letter-spacing: 0.06em;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner p.lead {
  font-size: 16px;
 }
}
section.forming_area >.inner .video {
 width: 85%;
 margin: 50px auto 0;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner .video {
  width: 100%;
  margin-top: 30px;
 }
}
section.forming_area >.inner .video video {
 width: 100%;
}
section.forming_area >.inner .details_area {
 display: flex;
 justify-content: space-between;
 margin-top: 100px;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner .details_area {
  margin-top: 50px;
 }
}
@media screen and (max-width: 600px) {
 section.forming_area >.inner .details_area {
  flex-direction: column;
  gap: 50px;
 }
}
section.forming_area >.inner .details_area .details_block {
 width: 46%;
}
@media screen and (max-width: 600px) {
 section.forming_area >.inner .details_area .details_block {
  width: 100%;
 }
}
section.forming_area >.inner .details_area .details_block h3 {
 display: flex;
 line-height: 1.6;
 flex-direction: column;
 justify-content: center;
 align-items: center;
 gap: 25px;
 margin-bottom: 50px;
 color: var(--c_bl);
 font-size: 30px;
 text-align: center;
 letter-spacing: 0.06em;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner .details_area .details_block h3 {
  gap: 15px;
  margin-bottom: 25px;
  font-size: 22px;
 }
}
section.forming_area >.inner .details_area .details_block h3 .icon {
 display: flex;
 width: 55px;
 justify-content: center;
 align-items: flex-end;

 aspect-ratio: 114/130;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner .details_area .details_block h3 .icon {
  width: 40px;
 }
}
section.forming_area >.inner .details_area .details_block h3 .icon img {
 max-width: 100%;
 max-height: 100%;
}
section.forming_area >.inner .details_area .details_block ul {
 counter-reset: number 0;
}
section.forming_area >.inner .details_area .details_block ul li {
 display: flex;
 line-height: 1.6666666667;
 align-items: center;
 font-size: 18px;
 letter-spacing: 0.06em;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner .details_area .details_block ul li {
  font-size: 16px;
 }
}
section.forming_area >.inner .details_area .details_block ul li:not(:last-child) {
 margin-bottom: 40px;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner .details_area .details_block ul li:not(:last-child) {
  margin-bottom: 20px;
 }
}
section.forming_area >.inner .details_area .details_block ul li:before {
 content: counter(number);
 width: 0.85em;
 line-height: 1;
 flex-shrink: 0;
 color: var(--c_bl);
 font-family: var(--ff_osw);
 font-size: 38px;
 letter-spacing: 0em;
 counter-increment: number;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner .details_area .details_block ul li:before {
  font-size: 30px;
 }
}
section.forming_area >.inner >.img {
 margin-top: 100px;
}
@media screen and (max-width: 1024px) {
 section.forming_area >.inner >.img {
  margin-top: 50px;
 }
}
section.forming_area >.inner >.img img {
 width: 100%;
}
section.examples_area {
 overflow: hidden;
 padding: 100px 5%;
 background: #f9f9f9;
}
@media screen and (max-width: 1024px) {
 section.examples_area {
  padding-block: 50px;
 }
}
section.examples_area >.inner .products_slide {
 --iconbg: #f9f9f9;
}
section.examples_area >.inner dl.parts {
 display: grid;
 width: 100%;
 max-width: 1100px;
 line-height: 1.625;
 overflow: hidden;
 grid-template-columns: 200px 1fr;
 margin: 100px auto;
 border: 1px solid #d1d1d1;
 border-radius: 10px;
 font-size: 16px;
 letter-spacing: 0.06em;
}
@media screen and (max-width: 1024px) {
 section.examples_area >.inner dl.parts {
  grid-template-columns: 120px 1fr;
  margin: 50px auto;
  font-size: 14px;
 }
}
@media screen and (max-width: 600px) {
 section.examples_area >.inner dl.parts {
  grid-template-columns: 1fr;
 }
}
section.examples_area >.inner dl.parts dt {
 display: flex;
 justify-content: center;
 align-items: center;
 padding: 40px 0;
 color: #ffffff;
 background: #555555;
 font-weight: 400;
 text-align: center;
}
@media screen and (max-width: 1024px) {
 section.examples_area >.inner dl.parts dt {
  padding: 20px 0;
 }
}
@media screen and (max-width: 600px) {
 section.examples_area >.inner dl.parts dt {
  padding: 10px 0;
 }
}
section.examples_area >.inner dl.parts dt:not(:last-of-type) {
 border-bottom: 1px solid #d1d1d1;
}
section.examples_area >.inner dl.parts dd {
 padding: 40px 30px;
 background: #ffffff;
}
@media screen and (max-width: 1024px) {
 section.examples_area >.inner dl.parts dd {
  padding: 20px 4%;
 }
}
section.examples_area >.inner dl.parts dd:not(:last-of-type) {
 border-bottom: 1px solid #d1d1d1;
}
section.examples_area >.inner .material_area {
 width: 100%;
 max-width: 1100px;
 margin: 0 auto;
}
section.examples_area >.inner .material_area h3 {
 position: relative;
 position: relative;
 line-height: 1.5;
 margin-bottom: 30px;
 padding-left: 50px;
 color: var(--c_bl);
 font-size: 30px;
 letter-spacing: 0.06em;
}
@media screen and (max-width: 1024px) {
 section.examples_area >.inner .material_area h3 {
  margin-bottom: 15px;
  padding-left: 40px;
  font-size: 22px;
 }
}
section.examples_area >.inner .material_area h3:before {
 content: "";
 display: block;
 position: absolute;
 top: 52%;
 left: 0;
 width: 30px;
 height: 2px;
 background: var(--c_bl);
}
@media screen and (max-width: 1024px) {
 section.examples_area >.inner .material_area h3:before {
  width: 25px;
 }
}
section.examples_area >.inner .material_area ul {
 border: 1px solid #d1d1d1;
 border-radius: 10px;
 background: #ffffff;
}
section.examples_area >.inner .material_area ul li {
 line-height: 1.875;
 padding: 25px 40px;
 font-size: 16px;
 letter-spacing: 0.075em;
}
@media screen and (max-width: 1024px) {
 section.examples_area >.inner .material_area ul li {
  padding: 15px 4%;
  font-size: 14px;
 }
}
section.examples_area >.inner .material_area ul li:not(:last-child) {
 border-bottom: 1px solid #d1d1d1;
}
section.other_area {
 padding: 100px 5%;
}
@media screen and (max-width: 1024px) {
 section.other_area {
  padding-block: 50px;
 }
}

.products_slide {
 position: relative;
 width: 100%;
 width: 100%;
 max-width: 1300px;
 overflow: hidden;
 margin: 0 auto;

 --iconbg: #ffffff;
}
.products_slide.no-swiper .slide-icon {
 display: none;
}
.products_slide.no-swiper .swiper-wrapper {
 display: flex;
 justify-content: center;
 gap: 55px;
}
.products_slide .slide-icon {
 display: flex;
 position: absolute;
 top: 0;
 z-index: 10;
 width: 100px;
 height: 100%;
 align-items: center;
 background: var(--iconbg);
 outline: none !important;
}
@media screen and (max-width: 1024px) {
 .products_slide .slide-icon {
  width: 40px;
 }
}
@media screen and (max-width: 600px) {
 .products_slide .slide-icon {
  padding-top: 45%;
 }
}
@media screen and (max-width: 600px) {
 .products_slide .slide-icon {
  background: none;
 }
}
.products_slide .slide-icon.products_prev {
 left: 0;
}
.products_slide .slide-icon.products_next {
 right: 0;
 justify-content: flex-end;
}
.products_slide .slide-icon img {
 cursor: pointer;
}
.products_slide .swiper-wrapper .swiper-slide {
 position: relative;
 width: 100%;
 max-width: 370px;
}
@media screen and (max-width: 600px) {
 .products_slide .swiper-wrapper .swiper-slide {
  max-width: 100%;
 }
}
.products_slide .swiper-wrapper .swiper-slide .tmb img {
 width: 100%;
}
.products_slide .swiper-wrapper .swiper-slide p.ttl {
 line-height: 1.5;
 margin: 20px 0 5px;
 color: var(--c_bl);
 font-weight: 500;
 font-size: 20px;
 letter-spacing: 0.04em;
}
@media screen and (max-width: 1024px) {
 .products_slide .swiper-wrapper .swiper-slide p.ttl {
  margin: 15px 0 5px;
  font-size: 18px;
 }
}
.products_slide .swiper-wrapper .swiper-slide p.desc {
 line-height: 1.7857142857;
 font-size: 14px;
 letter-spacing: 0.04em;
}
@media screen and (max-width: 1024px) {
 .products_slide .swiper-wrapper .swiper-slide p.desc {
  font-size: 12px;
 }
}
/*# sourceMappingURL=layout.css.map */