/* ------------------------------
カルーセル
-------------------------------*/

/* 2023新トップページデザイン用カルーセル */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  position: relative;
  z-index: 1;
  margin:0 auto;
  margin-top:95px;/* APJグロナビ上部固定の為 */
  margin-top:148px;/* 202307 新設定 */
  background:#fff;
}
.apj-home-slider-content .field-name-field-image img {
    height: auto;
    max-width: 100%;
}

@media screen and (max-width:979px) {
  /* 979px以下の記述 タブレット */
  .owl-carousel {
    margin-top:53px;/* APJグロナビ上部固定の為 */
    margin-top:143px;/* 202307 新設定 */
  }
  .oldSlider {}
    /*.owl-stage-outer:has(+.oldSlider) {
  height: 240px!important;
}*/
}
.apj-home-slider-content > .wrap {
  padding: 0;
}
.apj-home-slider-content {
  width: 100%;
  background-color: #005eb8;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
}
.apj-home-slider-content .term-header {
  /*display: -webkit-box;
  display: -ms-flexbox;*/
  /*display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;*/
/*  height: 230px;*/
}
.apj-home-slider-content .term-title {
  margin: 0;
  padding: 1.2rem 1.5rem;
  font-family: "Moxntserrat", Arial, Helvetica, "Nimbus Sans L", sans-serif;
  font-family: Arial, Helvetica, "Nimbus Sans L", sans-serif;
  font-size: 2.4rem;
  /*font-weight: 600;*/
  font-weight: 200;
  color: #fff;
  /*letter-spacing: .15em;*/
  letter-spacing: 0;
  line-height: 1.2;
  text-align: center;
  /*text-transform: uppercase;*//* 大文字にする*/
}
.apj-home-slider-content .term-title span {
  /*display:inline-block;*/
  font-size:1.95rem;
  margin-left:1.0rem;
  vertical-align:middle!important;
}

.apj-home-slider-content .term-content .term-content-block {
  padding-top: 6.5em;
}
.apj-home-slider-content .field-name-field-image {
  margin-bottom: -6em;
  padding: 0 10px;
}
.apj-home-slider-content .field-name-field-image img {
  display: block;
  margin: 0 auto;
  /*width: 400px;*/
  /* auto height plugin は画像やコンテンツの高さを加味して計算している。画像を小さくする事で、従来カルの不要な余白が小さくなる */
  width:auto;/* オリジナルサイズ 400px */
  height: auto;
  -webkit-backface-visibility: hidden;
}
.apj-home-slider-content .term-content-block {
  padding: 2em 2em 4em;
  background-color: #fff;
}
.apj-home-slider-content .field-name-field-subtitle {
  margin-bottom: .8em;
  font-weight: 700;
  font-size: 1.2em;
  line-height: 1.2;
}
.apj-home-slider-content .taxonomy-term-description {
  margin: 0;
  font-size: 1.05em;
  line-height: 1.6;
  text-indent: -1.3em;
  padding-left: 1.0em;
}
.apj-home-slider-content .taxonomy-term-description ul li a:hover {
  text-decoration: underline;
}

.apj-home-slider-content .taxonomy-term-description p, .apj-home-slider-content .taxonomy-term-description ul, .apj-home-slider-content .taxonomy-term-description ol {
  margin: 0;
}
.apj-home-slider-content .taxonomy-term-description p + p, .apj-home-slider-content .taxonomy-term-description p + ul, .apj-home-slider-content .taxonomy-term-description p + ol, .apj-home-slider-content .taxonomy-term-description ul + p, .apj-home-slider-content .taxonomy-term-description ul + ul, .apj-home-slider-content .taxonomy-term-description ul + ol, .apj-home-slider-content .taxonomy-term-description ol + p, .apj-home-slider-content .taxonomy-term-description ol + ul, .apj-home-slider-content .taxonomy-term-description ol + ol {
  margin-top: 1em;
}
.apj-home-slider-content .taxonomy-term-description ul {
  padding: 0;
  list-style-type: none;
}
.apj-home-slider-content .taxonomy-term-description ul li {
  position: relative;
}
.apj-home-slider-content .taxonomy-term-description ul.ttd_lineHeight125 li {
  line-height: 1.25;
  margin-bottom:.5em;
}

.apj-home-slider-content .taxonomy-term-description ul li::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-right: 1em;
  position: relative;
  top: -.1em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #005eb8;
}
.apj-home-slider-content .taxonomy-term-description ul li ul {
  margin: .5em 0;
  padding-left: 30px;
}
.apj-home-slider-content .taxonomy-term-description ul li ul li::before {
  background-color: #8c8d8e;
}
.apj-home-slider-content .taxonomy-term-description h2 {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: 1.5em;
  font-weight: 600;
}
.apj-home-slider-content .taxonomy-term-description h3 {
  font-size: 1.1em;
  color: #005eb8;
}
.apj-home-slider-content .term-link {
  margin-top: 1.5em;
}
.apj-home-slider-content .term-link .btn {
  font-family: "Raleway",Arial,Helvetica,'Open Sans', sans-serif;;
  background-color: #005eb8;
  color: #fff;
  padding:10px 20px;
  width:70px;
  text-align:center;
  border-radius: 50px;
  transition: all 0.3s ease;
  cursor: pointer;
}
.apj-home-slider-content .term-link .btn:hover {
  background-color: #f9a91d;
  color: #fff;
  text-decoration: none;
}

/* 白背景内すべて a タグ範囲にしたので、aタグ装飾トル */
.apj-home-slider-content .wrap a {
  text-decoration: none;
  color:#333;
}
.apj-home-slider-content .wrap a:hover {
}

.FullImageLayers {
}

.FullImageLayers .field-item202410 {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  font-size:1.4rem;
  font-weight: bold;  
}
.FullImageLayers .field-item {
  margin:0 10px;
}
.FullImageLayers .field-item202410 span {
  font-size:2.0rem;
}



/*.owl-stage-outer:has(+.oldSlider) {
  height: 240px!important;
}*/


/* 771 px 以上の時 */
@media (min-width: 771px) {
  .apj-home-slider-content {
    min-height: 565px;
    position: relative;
  }
  .apj-home-slider-content > .wrap {
    padding: 0 15px!important;
  }
  .apj-home-slider-content .term-header {
    /*height: 205px;*/
    /*padding-top: 70px;*/
    height: 115px;
    padding-top: 30px;
  }
  .apj-home-slider-content .term-content > .inner {
    position: relative;
    max-width: none;
    background-color: #fff;
    border-right: 12px solid;
    margin: 0 auto;
  }
  
  /*.apj-home-slider-content .field-name-field-image img {width: 40%;}*/
  .apj-home-slider-content .field-name-field-image {
    position: absolute;
    top: 50%;
    left:auto;
    right: 0;
    /*width:30%;*/
    /*padding: 0 4%;*/
    /*background: #ccc;*/
    width:36%;/* 20230925 少し大きく */
    padding:0 1%;/* 20230925 少し大きく */
    margin-bottom: 0;
    -webkit-transform: translate(0, -50%); /* 位置調整 */
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  
  .apj-home-slider-content .term-content .term-content-block {
    float: none;
    /*width: 61.85567%;*/
    padding: 2.2em 5% 5em;
    /*width: 52%;*/
    padding: 2.2em 0% 5em 5%;
    width: 57%;
   /* margin-bottom: 50px;*/
  }
  .apj-home-slider-content .field-name-field-subtitle {
    margin-bottom: 1.3em;
  }
  .apj-home-slider-content .term-link {
    margin-top: 2em;
  }
  
  /* 個別のカルーセル内画像のサイズ調整 */
  /* HVPC18 */
  .item-1 
   .field-name-field-image img {
    max-width:99%;
  }
  /* ケンタウロス */
  .item-4 .field-name-field-image img {
    max-width:78%;
  }
  /* MilTech */
  .item-5 .field-name-field-image img {
    max-width:102%;
  }
  /* cat_TerminalBlocks.html */
  .item-6 .field-name-field-image img {
    /*position: absolute;
    right:5px;
    top:-120px;
    bottom:0;
    left:auto;
    max-width:115%;*/
    max-width:84%;
  }
  /* EMIFilterType */
  .item-202308-1 .field-name-field-image img {
    max-width:95%;
  }
  /* MSD */
  .item-202308-2 .field-name-field-image img {
    max-width:78%;
    z-index:-2;
  }
  .FullImageLayers .field-item202410 {
    position: absolute;
    top: 50%;
    left: 50%;}
}
@media (min-width: 980px) {
  .apj-home-slider-content .term-title {
    margin: 0;
    padding: 2.8rem 1.5rem 0;
  }
  .apj-home-slider-content .term-content {
    position: relative;
    width: 100%;
    margin: 0 auto;
    /*padding: 0 15px;*/
    bottom: auto;
    left: auto;
    right: auto;
    max-width: 1000px;
  }
}
/* ------------------------------
ドットの設定 
-------------------------------*/
.owl-dots {
  text-align: center;
  margin-top: 40px;
}
.owl-dot {
  width: 14px;
  height: 14px;
  background: #808080 !important;
  margin: 0 6px;
  border-radius: 14px;
  outline: none;
  transition: .3s linear;
}
.owl-dot.active {
  /*width: 36px;*/
  background: #00B0B2 !important;
}
.owl-dot:hover {
  /*width: 36px;*/
  background: #00B0B2 !important;
}
/* ------------------------------
左右ボタンの設定 
-------------------------------*/
.owl-nav .owl-prev::before, .owl-nav .owl-prev::after, .owl-nav .owl-next::before, .owl-nav .owl-next::after {
  display: inline-block;
  background-image: url("../../images/indexRWD/sprite.view.svg");
}

/*
SVG画像の表示テスト用コード
  <div>
    <div class="test-svg-orig"></div>
  </div>
*/
.test-svg-orig:::after {
  display: inline-block;
  content: 'test-text';
  width: 1250px;
  height: 62px;
  background-image: url("../../images/indexRWD/sprite.view.svg");
  background-color: #fff;
}
.test-svg {
  display: block;
  width: 100px;
  height: 70px;
  background-position: -144px -1px;
  background-image: url("../../images/indexRWD/sprite.view.svg");
  background-color: #000;
}
/* SVG画像の prev, next ボタンの位置
prev
  orange -144px -1px;
  white: -82px
  blue=; -20px -1px
next
  orange -330px
  white: -268px -1px
  blue=; -206px -1px
*/
/* SP first 設定ここから */
.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next {
  background: none;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit;
}

.owl-nav {
  margin: 0 auto;
  max-width: 1430px;
  /*padding: 0 15px;*/
  width: 100%;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height:0px;
}
/* navボタンの初期設定 */
.owl-nav > div, .owl-nav > button {
  position: absolute;
  top: -webkit-calc(50% - 30px);
  top: calc(50% - 30px);
  width: 60px;
  height: 60px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-size: 0;
  text-indent: 100%;
  overflow: hidden;
  outline: none;
}
.owl-nav > div::before, .owl-nav > div::after, .owl-nav > button::before, .owl-nav > button::after {
  content: "";
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
/* navボタン 左右ボタンの初期設定 backgroundからの読み込み */
/* SVG画像の prev, next ボタンの位置
prev
  orange -144px -1px;
  white: -82px
  blue=; -20px -1px
next
  orange -330px
  white: -268px -1px
  blue=; -206px -1px
*/
.owl-nav .owl-prev {
  left: 15px;
}
.owl-nav .owl-prev::before {
  width: 60px;
  height: 60px;
  background-position: -82px -1px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -30px;
  margin-top: -30px;
}
.owl-nav .owl-prev::after {
  width: 60px;
  height: 60px;
  background-position: -144px -1px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -30px;
  margin-top: -30px;
}
.owl-nav .owl-next {
  right: 15px;
}
.owl-nav .owl-next::before {
  width: 60px;
  height: 60px;
  background-position: -268px -1px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -30px;
  margin-top: -30px;
}
.owl-nav .owl-next::after {
  width: 60px;
  height: 60px;
  background-position: -330px -1px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -30px;
  margin-top: -30px;
}
.owl-nav > div::after, .owl-nav > button::after {
  opacity: 0;
}
/*  .owl-nav > div.disabled, .owl-nav > button.disabled {
    cursor: default;
    opacity: .2;
  }*/
/*  .owl-nav > div:not(.disabled):hover:after,
  .owl-nav > button:not(.disabled):hover:after {
    opacity: 1;
  }  上記を簡略化 ↓ */
.owl-nav > div:hover:after, .owl-nav > button:hover:after {
  opacity: 1;
}
.owl-nav, .owl-dots {
  display: none;
}


/* SP first 設定ここまで */
/* 771 px 以上の時 */
@media (min-width: 771px) {
  .owl-nav, .owl-dots {
    display: block;
  }
  .owl-dots {
    /*margin-top: 0 !important;*/
    position: absolute;
    bottom:10px;
    left:46%;
  }
}
@media (min-width: 980px) {
  ./*owl-nav {
    max-width: 1430px;
  }*/
}