@charset "UTF-8";


.product {
  padding-top: 26.0rem;
  width: 90%;
}
.product h2 {
  position: relative;
}
.product h2::before {
  content:'';
  position: absolute;
  background-image: url("../images/common/product.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 530px;
  height: 204px;
  top: -18.0rem;
  left: 0;
}
.product h2 {
  position: relative;
  margin-left: 10.0rem;
  margin-bottom: 4rem;
}
.product h2::after {
  content: '';
  display: block;
  width: 40px;
  height: 3px;
  background-color: #003F8E;
  position: absolute;
  bottom: -0.4rem;
  left: 0;
}
/*==================================================
機能編 6-1-1 横移動させて全画面で見せる
===================================*/
.slider {
  position:relative;
  z-index: 1;
/*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
  height: 46vh;/*スライダー全体の縦幅を(80vh）にする*/
}
/* 背景画像設定 */
.slider-item01 {
  background:url("../images/product/top_electricity.jpg");
}
.slider-item02 {
  background:url("../images/product/top_material.jpg");
}
.slider-item03 {
  background:url("../images/product/top_machine.jpg");
}
.slider-item04 {
  background:url("../images/product/top_other.jpg");
}
.slider-item {
  width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
  height:46vh;/*各スライダー全体の縦幅を（80vh）にする*/
  background-repeat: no-repeat;/*背景画像をリピートしない*/
  background-position: center;/*背景画像の位置を中央に*/
  background-size: cover;/*背景画像が.slider-item全体を覆い表示*/
}
/*矢印の設定*/
.slick-prev:before {
  content: '';
}
.slick-next:before {
  content: '';
}
/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
  position: absolute;/*絶対配置にする*/
  z-index: 3;
  top: 48%;
  cursor: pointer;/*マウスカーソルを指マークに*/
  outline: none;/*クリックをしたら出てくる枠線を消す*/
  border-top: 2px solid #fff;/*矢印の色*/
  border-right: 2px solid #fff;/*矢印の色*/
  height: 25px;
  width: 25px;
}
.slick-prev {/*戻る矢印の位置と形状*/
  left:2.5%;
  transform: rotate(-135deg);
}
.slick-next {/*次へ矢印の位置と形状*/
  right:2.5%;
  transform: rotate(45deg);
}
/*==================================================
機能編 6-1-8　複数画像を流して見せる
===================================*/
/*slickのJSで書かれるタグ内、スライド左右の余白調整*/
.slider2 img {
  width:100%;/*スライダー内の画像を横幅100%に*/
  height:auto;
}
.slider2 .slick-slide {
  margin:0 1.0rem;/*スライド左右の余白調整*/
}
.slick-dots li.slick-active button:before {
  opacity: .75;
  color: #003F8E;
}
.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: 0;
  background: 0 0;
}
.slick-dots li button:before {
  font-family: slick;
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '•';
  text-align: center;
  opacity: .25;
  color: #003F8E;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.pageBody__wrapper {
  display: flex;
  margin-top: 10.0rem
}
.pageBody__main {
  width: 80%;
  margin-top: 2.0rem;
  margin-right: 10.0rem;
  margin-bottom: 4.0rem;
  margin-left: 10.0rem;
}
.pageAside {
  top: 8.0rem;
  position: sticky;
}
/* メインページ */
.pageBody__main h3 {
  position: relative;
  font-size: 3.2rem;
  color: #003F8E;
  margin-left: 2.0rem;
  /* margin: 2.0rem 0 5rem 6.0rem; */
}
.pageBody__main h3::before {
  content: '';
  display: block;
  width: 4px;
  height: 34px;
  background-color: #003F8E;
  position: absolute;
  bottom: 0.7rem;
  left: -1.8rem;
}
.pageBody_column {
  display: flex;
  flex-wrap: wrap;
  gap: 10%;
  justify-content: space-between;
  margin-top: 6.0rem;
  padding-left: 2.0rem;
}
.pageBody_column li {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  max-width: 247px;
  margin-bottom: 12rem;
}
.pageBody_column li a {
  display: inline-block;
}
.product_img {
  margin-bottom: 1.0rem;
}
.product_img img {
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  .product {
    padding-top: 20.0rem;
    width: 90%;
  }
  .product h2 {
    margin-left: 2.0rem;
  }
  .product h2::before {
    top: -11.0rem;
    width:332px;
    height: 128px;
  }  
  .pageBody__main {
    width: 100%;
    font-size: 2.8rem;
    margin-left: 2.0rem;
    margin-right: 2.0rem;
  }
  .pageToc_column {
    margin-left: 2.0rem;
  }
  .pageBody_column li {
    min-width: 156px;
    margin-bottom: 6.0rem;
  }
  .pageBody__wrapper {
    display: flex;
    margin-top: 4.0rem;
  }
  .pageBody_column {
    margin-top: 3.0rem;
  }
}
/* サイドページ */
.pageBody__aside {
  width: 20%;
  display: block;
  padding: 2.0rem 0 4.5rem 3.0rem;
  border-left:  1px solid #BBBFC5;
}
.pageAside__title {
  color: #003F8E;
  font-size: 2.2rem;
}
.pageAside__item {
  color: #333;
  margin-left: 1.6rem;
}
.pageAsideItem  {
  padding-top: 0.8rem;
}
.pageAsideItem a:hover{
  border-bottom: 1.8px solid #333;
}
@media screen and (max-width: 1023px) {
  .pageBody__aside {
    display: none;
  }
}
