@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@700&display=swap');


/**
 * Common Style
 * ================================================================================
 * Table of Contents:
 *
 * Basic Structure
 * Parts Settings
 * Content Settings
 * Colorbox Settings
 * ================================================================================
 */






/**
 * ================================================================================
 * Basic Structure
 * ================================================================================
 */

body.productsDmFeaturesOpen {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

/* -- Layout -- */
#productsDmTop,
#cboxContent {
  background-color: #000;
  display: block;
  position: relative;
  color: #fff;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#productsDmTop *,
#productsDmTop *::before,
#productsDmTop *::after,
#cboxContent *,
#cboxContent *::before,
#cboxContent *::after {
  box-sizing: border-box;
}

.header {
  background-color: #FFF;
  position: relative;
  z-index: 500;
}

#headerNavArea {
  position: relative;
  z-index: 499;
}

.dirpath {
  margin-top: 0;
}

.footer {
  margin-top: 0 !important;
}

#productsDmTop img,
#productsDmTop video {
  width: 100%;
}

#productsDmTop strong {
  font-weight: bold;
}

#productsDmTop a {
  display: inline-block;
  opacity: 1;
  transition: opacity 0.2s ease-in;
  text-decoration: none;
}

#productsDmTop a:hover {
  opacity: 0.6;
}

@media only screen and (max-width: 767px) {
  #productsDmTop a:hover {
    opacity: 1;
  }
}



/**
 * ================================================================================
 * Parts Settings
 * ================================================================================
 */

/**
 * Wrapper
 * -------------------------------
 */

#productsDmTop .p-wrapper {
  width: 1080px;
  margin: 0 auto;
  position: relative;
}

@media only screen and (max-width: 767px) {
  #productsDmTop .p-wrapper {
    width: 100%;
    padding: 0 15px;
  }
}


/**
 * List / Comments / Caution / Caption
 * -------------------------------
 */

#productsDmTop .p-lists,
#productsDmTop .p-comments {
  list-style: none;
}

#productsDmTop .p-lists > li,
#productsDmTop .p-comments > li {
  padding-left: 1em;
  text-indent: -1em;
}

#productsDmTop .p-comments,
#productsDmTop .p-caution,
#productsDmTop .p-caption {
  font-size: 1.3rem;
}

@media only screen and (max-width: 767px) {
  #productsDmTop .p-comments,
  #productsDmTop .p-caution,
  #productsDmTop .p-caption {
    font-size: 1.0rem;
  }
}


/**
 * Column
 * -------------------------------
 */

#productsDmTop .p-cols {
  display: flex;
  flex-wrap: wrap;
}

#productsDmTop .p-col01 {
  width: 100%;
}
#productsDmTop .p-col02 {
  width: 50%;
}
#productsDmTop .p-col03 {
  width: 33.3333%;
}
#productsDmTop .p-col04 {
  width: 25%;
}
#productsDmTop .p-col05 {
  width: 20%;
}
#productsDmTop .p-col06 {
  width: 16.6666%;
}

@media only screen and (max-width: 767px) {
  #productsDmTop .p-col01SP {
    width: 100%;
  }
  #productsDmTop .p-col02SP {
    width: 50%;
  }
  #productsDmTop .p-col03SP {
    width: 33.3333%;
  }
  #productsDmTop .p-col04SP {
    width: 25%;
  }
  #productsDmTop .p-col05SP {
    width: 20%;
  }
  #productsDmTop .p-col06SP {
    width: 16.6666%;
  }
}


/**
 * Button
 * -------------------------------
 */

#productsDmTop .p-btns {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

/* -- .p-btnType01 -- */
#productsDmTop .p-btnType01 > * {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  padding: 25px 95px;
  color: #fff;
  text-align: center;
  transition: color 0.2s ease-in;
}
#productsDmTop .p-btnType01 > *:hover {
  opacity: 1;
}

#productsDmTop .p-btnType01 > *::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  opacity: 0;
  content: '';
  transition: opacity 0.2s ease-in;
}
#productsDmTop .p-btnType01 > *:hover::before {
  opacity: 1;
}

#productsDmTop .p-btnType01 > a::after {
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-wt.svg");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop .p-btnType01 > * > span {
  display: block;
  line-height: 1.4;
}
#productsDmTop .p-btnType01 > * > span:nth-of-type(1) {
  font-size: 2.0rem;
}

#productsDmTop .p-btnType01.p-btnDblue > * {
  background-color: #00003c;
}
#productsDmTop .p-btnType01.p-btnDblue > *::before {
  background: linear-gradient(90deg, rgba(0,0,60,1) 35%, rgba(0,0,120,1) 75%);
}

#productsDmTop .p-btnType01.p-btnBlue > * {
  background-color: #1964ff;
}
#productsDmTop .p-btnType01.p-btnBlue > *::before {
  background: linear-gradient(90deg, rgba(25,100,255,1) 0%, rgba(77,136,255,1) 100%);
}
#productsDmTop .p-btnType01.p-btnBdrBlue > * {
  border: 1px solid #1964ff;
  color: #1964ff;
}
#productsDmTop .p-btnType01.p-btnBdrBlue > a::after {
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-bl.svg");
}
#productsDmTop .p-btnType01.p-btnBdrBlue > *:hover {
  color: #fff;
}
#productsDmTop .p-btnType01.p-btnBdrBlue > *::before {
  background-color: #1964ff;
}
#productsDmTop .p-btnType01.p-btnBdrBlue > a:hover::after {
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-wt.svg");
}

#productsDmTop .p-btnType01.p-btnGray > * {
  background-color: #191919;
}
#productsDmTop .p-btnType01.p-btnGray > *::before {
  background: linear-gradient(90deg, rgba(25,25,25,1) 0%, rgba(84,84,84,1) 100%);
}

#productsDmTop .p-btnType01.p-btnBdrLgray > * {
  border: 1px solid #b4b4b4;
  color: #b4b4b4;
}
#productsDmTop .p-btnType01.p-btnBdrLgray > a::after {
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-gy.svg");
}
#productsDmTop .p-btnType01.p-btnBdrLgray.p-btnIconPdf > a::after {
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-pdf01-gy.svg");
}
#productsDmTop .p-btnType01.p-btnBdrLgray > *:hover {
  color: #000;
}
#productsDmTop .p-btnType01.p-btnBdrLgray > *::before {
  background-color: #b4b4b4;
}
#productsDmTop .p-btnType01.p-btnBdrLgray > a:hover::after {
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-bk.svg");
}
#productsDmTop .p-btnType01.p-btnBdrLgray.p-btnIconPdf > a:hover::after {
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-pdf01-gy.svg");
}

@media only screen and (max-width: 767px) {
  #productsDmTop .p-btnType01 > * {
    padding: 15px 30px;
  }
  
  #productsDmTop .p-btnType01 > *:hover::before {
    opacity: 0;
  }

  #productsDmTop .p-btnType01 > a::after {
    width: calc(32px * 0.7);
    height: calc(32px * 0.7);
    right: 10px;
  }

  #productsDmTop .p-btnType01 > * > span:nth-of-type(1) {
    font-size: 1.4rem;
  }
  
  #productsDmTop .p-btnType01.p-btnBdrBlue > *:hover {
    color: #1964ff;
  }
  #productsDmTop .p-btnType01.p-btnBdrBlue > a:hover::after {
    background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-bl.svg");
  }

  #productsDmTop .p-btnType01.p-btnBdrLgray > *:hover {
    color: #b4b4b4;
  }
  #productsDmTop .p-btnType01.p-btnBdrLgray > a:hover::after {
    background-image: url("/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-gy.svg");
  }
}

/* -- .p-btnType02 -- */
#productsDmTop .p-btnType02 > * {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
  padding: 20px 75px;
  border: 2px solid;
  border-image: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%) 1;
  color: #fff;
  text-align: center;
}

#productsDmTop .p-btnType02 > *::after {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(45deg);
  width: 17px;
  height: 17px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: '';
}
#productsDmTop .p-btnType02Arrow > *::after {
  display: none;
}

#productsDmTop .p-btnType02 > * > span:nth-of-type(1) {
  display: inline-block;
  background: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 2.5rem;
  font-weight: 900;
  line-height: 1.4;
}

#productsDmTop .p-btnType02 > * > span:nth-of-type(2) {
  display: block;
  width: 100%;
  margin-top: 5px;
}

#productsDmTop .p-btnType02 > * > span:nth-of-type(2) > span {
  display: inline-block;
  padding-right: 15px;
  position: relative;
  color: #fff;
  font-size: 2.0rem;
  font-weight: 500;
}

#productsDmTop .p-btnType02 > * > span:nth-of-type(2) > span::after {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(45deg);
  width: 11px;
  height: 11px;
  margin-top: 2px;
  border-top: 2px solid #aaa;
  border-right: 2px solid #aaa;
  content: '';
}

@media only screen and (max-width: 767px) {
  #productsDmTop .p-btnType02 > * {
    padding: 10px 35px;
  }
  
  #productsDmTop .p-btnType02 > *::after {
    right: 10px;
    width: 10px;
    height: 10px;
  }

  #productsDmTop .p-btnType02 > * > span:nth-of-type(1) {
    font-size: 1.5rem;
  }
  
  #productsDmTop .p-btnType02 > * > span:nth-of-type(2) {
    margin-top: 3px;
  }

  #productsDmTop .p-btnType02 > * > span:nth-of-type(2) > span {
    padding-right: 10px;
    font-size: 1.1rem;
  }

  #productsDmTop .p-btnType02 > * > span:nth-of-type(2) > span::after {
    width: 7px;
    height: 7px;
    margin-top: 1px;
  }
}



/**
 * Banner
 * -------------------------------
 */

#productsDmTop .p-bannerDl {
  margin-top: 50px;
  text-align: center;
}
#productsDmTop .p-bannerDl:nth-of-type(1) {
  margin-top: 0;
}

#productsDmTop .p-bannerDl > dt {
  display: block;
  position: relative;
  margin-bottom: 15px;
}

#productsDmTop .p-bannerDl > dt:before {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 1px;
  background-color: #fff;
  content: '';
}

#productsDmTop .p-bannerDl > dt > span {
  display: inline-block;
  position: relative;
  z-index: 2;
  padding: 0 20px;
  background-color: #000;
  font-size: 1.4rem;
  font-weight: 700;
}

#productsDmTop .p-bannerDl > dd > a {
  display: block;
  border: 1px solid #1964ff;
}

@media only screen and (max-width: 767px) {
  #productsDmTop .p-bannerDl {
    margin-top: 20px;
  }

  #productsDmTop .p-bannerDl > dt {
    margin-bottom: 10px;
  }

  #productsDmTop .p-bannerDl > dt > span {
    padding: 0 10px;
    font-size: 1.1rem;
  }
}


/**
 * Modal
 * -------------------------------
 */

.p-modal {
  display: none;
}


/**
 * Slickslider
 * -------------------------------
 */

#productsDmTop .slick-arrow {
  background: none;
  width: 50px;
  height: 50px;
  border: 1px solid #fff;
  position: absolute;
  top: 50%;
  border-radius: 1000px;
  transform: translateY(-50%);
  transition: opacity 0.2s ease-in;
}
#productsDmTop .slick-arrow:hover {
  opacity: 0.6;
}
#productsDmTop .slick-prev {
  left: -120px;
}
#productsDmTop .slick-next {
  right: -120px;
}

#productsDmTop .slick-arrow::before {
  content: '';
  width: 16px;
  height: 16px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
}

#productsDmTop .slick-prev::before {
  margin-left: 4px;
  transform: translate(-50%, -50%) rotate(-135deg);
}
#productsDmTop .slick-next::before {
  margin-left: -4px;
  transform: translate(-50%, -50%) rotate(45deg);
}

#productsDmTop .slick-dots {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -70px;
  width: 100%;
  list-style: none;
}

#productsDmTop .slick-dots > li {
  display: inline-flex;
  margin: 0 8px;
  line-height: 1;
}

#productsDmTop .slick-dots > li > button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 60px;
  height: 10px;
  border: none;
  border-radius: 0;
  background-color: transparent;
  font-size: 0;
  text-indent: -9999px;
  transition: all 0.2s ease-in;
}
#productsDmTop .slick-dots > li > button:hover {
  opacity: 0.6;
}
#productsDmTop .slick-dots > li.slick-active > button:hover {
  opacity: 1;
}

#productsDmTop .slick-dots > li > button::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 6px;
  background-color: rgba(77, 77, 77, 1);
  transform: translate(-50%, -50%);
  content: '';
}

#productsDmTop .slick-dots > li.slick-active > button::before {
  background-color: #fff;
}

@media only screen and (max-width: 767px) {
  #productsDmTop .slick-arrow {
    width: calc(50px * 0.5);
    height: calc(50px * 0.5);
  }
  #productsDmTop .slick-arrow:hover {
    opacity: 1;
  }
  #productsDmTop .slick-prev {
    left: calc(-58px * 0.5);
  }
  #productsDmTop .slick-next {
    right: calc(-58px * 0.5);
  }
  
  #productsDmTop .slick-arrow::before {
    width: calc(16px * 0.5);
    height: calc(16px * 0.5);
  }
  #productsDmTop .slick-prev::before {
    margin-left: 2.5px;
  }
  #productsDmTop .slick-next::before {
    margin-left: -2.5px;
  }

  #productsDmTop .slick-dots {
    bottom: -25px;
  }

  #productsDmTop .slick-dots > li {
    margin: 0 4px;
  }

  #productsDmTop .slick-dots > li > button {
    width: 30px;
    height: 6px;
  }

  #productsDmTop .slick-dots > li > button:hover {
    opacity: 1;
  }

  #productsDmTop .slick-dots > li > button::before {
    height: 4px;
  }
}



/**
 * ================================================================================
 * Top Page Settings
 * ================================================================================
 */

/**
 * Loader
 * -------------------------------
 */

#productsDmTop #loader {
  background-color: #000;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_loader.png');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 35px auto;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 102;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #loader {
    background-size: 30px auto;
  }
}


/**
 * UCL
 * -------------------------------
 */

#productsDmTop #ucl {
  background-color: #000078;
  display: flex;
  height: 73px;
  align-items: center;
  justify-content: center;
  text-align: center;
}

#productsDmTop #ucl > dl {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}

#productsDmTop #ucl > dl > dt {
  display: block;
}

#productsDmTop #ucl > dl > dt img {
  width: 264px;
}

#productsDmTop #ucl > dl > dd {
  padding-left: 25px;
  margin-left: 25px;
  position: relative;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
}

#productsDmTop #ucl > dl > dd::before {
  content: '';
  background-color: #fff;
  width: 2px;
  height: 20px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media only screen and (max-width: 767px) {
  #productsDmTop #ucl {
    display: block;
    height: auto;
    padding: 5px 10px 10px 10px;
  }

  #productsDmTop #ucl > dl {
    display: block;
  }
  
  #productsDmTop #ucl > dl > dt img {
    width: 60%;
  }

  #productsDmTop #ucl > dl > dd {
    padding-left: 0;
    margin-left: 0;
    padding-top: 10px;
    font-size: 12px;
  }

  #productsDmTop #ucl > dl > dd::before {
    width: 20px;
    height: 1px;
    left: 50%;
    top: 0;
    transform: translate(-50%, 0);
  }
}


/**
 * Key Visual
 * -------------------------------
 */

#productsDmTop #kv {
  position: relative;
  z-index: 1;
  text-align: center;
  line-height: 1;
}

#productsDmTop #kv .kvTtl {
  position: absolute;
  top: calc(100vw * (668 / 1600));
  left: 0;
  z-index: 2;
  width: 100%;
}

#productsDmTop #kv .kvTtl img {
  width: calc(100vw * (542 / 1600));
}

#productsDmTop #kv .kvBg {
  position: relative;
  z-index: -1;
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  #productsDmTop #kv .kvTtl {
    top: calc(1280px * (668 / 1600));
  }

  #productsDmTop #kv .kvTtl img {
    width: calc(1280px * (542 / 1600));
  }
}
@media only screen and (max-width: 767px) {
  #productsDmTop #kv .kvTtl {
    top: calc(100vw * (668 / 750) * 0.55);
  }

  #productsDmTop #kv .kvTtl img {
    width: calc(100vw * (542 / 750) * 0.9);
  }
  
  #productsDmTop #kv .kvBg {
    width: 124%;
    margin-left: -12%;
  }
}


/**
 * Pickup
 * -------------------------------
 */

#productsDmTop #pickup {
  padding-top: 100px;
  padding-bottom: 140px;
}

#productsDmTop #pickup .pickupLists {
  margin-top: -100px;
  padding-left: 160px;
  padding-right: 160px;
}

#productsDmTop #pickup .pickupLists > li {
  margin-top: 100px;
  text-align: center;
}

#productsDmTop #pickup .pickupListsMovie img {
  width: 400px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #pickup {
    padding-top: 50px;
    padding-bottom: 60px;
  }
  
  #productsDmTop #pickup .pickupLists {
    margin-top: -40px;
    padding-left: 10px;
    padding-right: 10px;
  }

  #productsDmTop #pickup .pickupLists > li {
    margin-top: 40px;
  }
  
  #productsDmTop #pickup .pickupListsMovie img {
    width: 80%;
  }
}



/**
 * Trouble
 * -------------------------------
 */

#trouble {
  background-color: #000;
  color: #fff;
  overflow-x: hidden;
}

#trouble .p-wrapper {
  padding: 120px 80px;
}

#trouble .troubleTtl {
  margin-bottom: 50px;
  text-align: center; 
}

#trouble .troubleTtl > span {
  display: block;
  font-weight: bold;
}

#trouble .troubleTtl > span:nth-of-type(1) {
  margin-bottom: 30px;
  font-size: 30px;
}

#trouble .troubleTtl > span:nth-of-type(2) {
  background-color: #1964ff;
  display: inline-block;
  width: 140px;
  height: 1px;
}

#trouble .troubleTtl > span:nth-of-type(3) {
  margin-top: 40px;
  font-size: 23px;
}

#trouble .troubleTxt {
  margin-bottom: 95px;
  font-size: 17px;
  text-align: center;
}

#trouble .troubleTxt > span {
  display: block;
}

#trouble .troubleTxt > span img {
  width: 100%;
}

#trouble .troubleTxt > span:nth-of-type(2) {
  margin-top: -95px;
  margin-bottom: 35px;
  line-height: 1.8;
}

#trouble .troubleLists {
  text-align: center;
}

#trouble .troubleLists > dt {
  display: block;
}

#trouble .troubleLists > dt > span {
  display: block;
  font-size: 30px;
  font-weight: bold;
}

#trouble .troubleLists > dt > span:nth-of-type(1) {
  margin-bottom: 10px;
}
#trouble .troubleLists > dt > span:nth-of-type(2) {
  margin-bottom: 45px;
}
#trouble .troubleLists > dt > span:nth-of-type(3) img {
  width: 103px;
}

#trouble .troubleLists > dd {
  margin-top: -15px;
}

#trouble .troubleLists > dd > p:nth-of-type(1) {
  margin-bottom: 110px;
  text-align: center;
}

#trouble .troubleLists > dd > p:nth-of-type(1) > span {
  display: block;
}

#trouble .troubleLists > dd > p:nth-of-type(1) > span:nth-of-type(2) {
  margin-top: -70px;
  margin-bottom: 45px;
  font-size: 17px;
  line-height: 1.8;
}

#trouble .troubleLists > dd > p:nth-of-type(1) > span img {
  width: 100%;
}

#trouble .p-comments {
  text-align: right;
}

@media only screen and (max-width: 767px) {
  #trouble .p-wrapper {
    padding: 30px 15px;
  }

  #trouble .troubleTtl {
    margin-bottom: 25px;
  }

  #trouble .troubleTtl > span:nth-of-type(1) {
    margin-bottom: 15px;
    font-size: 15px;
  }

  #trouble .troubleTtl > span:nth-of-type(2) {
    width: 50px;
    height: 1px;
  }

  #trouble .troubleTtl > span:nth-of-type(3) {
    margin-top: 20px;
    font-size: 13px;
  }

  #trouble .troubleTxt {
    margin-bottom: 45px;
    font-size: 12px;
  }

  #trouble .troubleTxt > span:nth-of-type(2) {
    margin-top: -30px;
    margin-bottom: 20px;
  }

  #trouble .troubleTxt > span img {
    width: 120%;
    max-width: initial;
    margin-left: -10%;
  }
  
  #trouble .troubleLists > dt > span {
    font-size: 15px;
  }

  #trouble .troubleLists > dt > span:nth-of-type(1) {
    margin-bottom: 5px;
  }
  #trouble .troubleLists > dt > span:nth-of-type(2) {
    margin-bottom: 20px;
  }
  #trouble .troubleLists > dt > span:nth-of-type(3) img {
    width: calc(103px * 0.6);
  }

  #trouble .troubleLists > dd {
    margin-top: -15px;
  }

  #trouble .troubleLists > dd > p:nth-of-type(1) {
    margin-bottom: 50px;
  }

  #trouble .troubleLists > dd > p:nth-of-type(1) > span:nth-of-type(2) {
    margin-top: -10px;
    margin-bottom: 20px;
    font-size: 12px;
  }

  #trouble .troubleLists > dd > p:nth-of-type(1) > span img {
    width: 120%;
    max-width: initial;
    margin-left: -10%;
  }
}


/**
 * Lineup
 * -------------------------------
 */

#productsDmTop #lineup {
  padding-top: 56px;
  padding-bottom: 230px;
}

#productsDmTop #lineup .lineupTtl {
  text-align: center;
}

#productsDmTop #lineup .lineupTtl img {
  width: 317px;
}

#productsDmTop #lineup .lineup25Dm {
  padding-top: 105px;
}
#productsDmTop #lineup .lineupDm {
  padding-top: 140px;
}

#productsDmTop #lineup .lineupSubTtl {
  position: relative;
  z-index: 1;
  padding-bottom: 30px;
  font-size: 2.3rem;
  text-align: center;
  line-height: 1.4;
}

#productsDmTop #lineup .lineupSubTtl::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: -1;
  width: 1080px;
  height: 178px;
  transform: translateX(-50%);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: 100% auto;
  content: '';
}
#productsDmTop #lineup .lineup25Dm .lineupSubTtl::before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_lineup-25dm-subttl-bg.png');
}
#productsDmTop #lineup .lineupDm .lineupSubTtl::before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_lineup-dm-subttl-bg.png');
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup {
    padding-top: 25px;
    padding-bottom: 80px;
  }

  #productsDmTop #lineup .lineupTtl img {
    width: calc(317px * 0.5);
  }

  #productsDmTop #lineup .lineup25Dm {
    padding-top: 40px;
  }
  #productsDmTop #lineup .lineupDm {
    padding-top: 60px;
  }

  #productsDmTop #lineup .lineupSubTtl {
    padding-bottom: 15px;
    font-size: 1.4rem;
  }

  #productsDmTop #lineup .lineupSubTtl::before {
    width: calc(1080px * 0.5);
    height: calc(178px * 0.5);
  }
}

/* -- .lineupTabNav -- */
#productsDmTop #lineup .lineupTabNav {
  display: flex;
  width: calc(100% + 120px);
  transform: translateX(-60px);
}

#productsDmTop #lineup .lineup25Dm .lineupTabNav > li {
  width: 50%;
}
#productsDmTop #lineup .lineupDm .lineupTabNav > li {
  width: 33.3333%;
}

#productsDmTop #lineup .lineupTabNav > li > * {
  display: block;
  height: 170px;
  border-top: 3px solid #5a5a5a;
  position: relative;
  z-index: 1;
  color: #fff;
  text-align: center;
  transition: border 0.2s ease-in;
}
#productsDmTop #lineup .lineupTabNav > li > *:hover {
  opacity: 1;
}
#productsDmTop #lineup .lineupDm .lineupTabNav > li > *.active {
  background-repeat: no-repeat;
  background-position: 50% 0;
}
#productsDmTop #lineup .lineup25Dm .lineupTabNav > li > *.active {
  border-top-color: #1964ff;
}
#productsDmTop #lineup .lineupDm .lineupTabNav > li > *.active {
  border-top-color: #fff;
}

#productsDmTop #lineup .lineupTabNav > li > *::before,
#productsDmTop #lineup .lineupTabNav > li > *::after {
  position: absolute;
  content: '';
}

#productsDmTop #lineup .lineupTabNav > li > *::before {
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: 821px;
  height: 301px;
  opacity: 0;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100% auto;
  transition: opacity 0.2s ease-in;
  pointer-events: none;
}
#productsDmTop #lineup .lineup25Dm .lineupTabNav > li > *::before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_lineup-25dm-tabnav-bg.png');
}
#productsDmTop #lineup .lineupDm .lineupTabNav > li > *::before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_lineup-dm-tabnav-bg.png');
}
#productsDmTop #lineup .lineupTabNav > li > *.active::before {
  opacity: 1;
}

#productsDmTop #lineup .lineupTabNav > li > *::after {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 1px;
  height: calc(100% - 50px);
  background-color: #fff;
}
#productsDmTop #lineup .lineupTabNav > li:nth-last-of-type(1) > *::after {
  display: none;
}

#productsDmTop #lineup .lineupTabNav > li > * > span {
  display: flex;
  align-content: center;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  height: 100%;
  padding-top: 25px;
  padding-bottom: 25px;
  opacity: 0.5;
  line-height: 1.4;
  transition: opacity 0.2s ease-in;
}
#productsDmTop #lineup .lineupTabNav > li > *:hover > span,
#productsDmTop #lineup .lineupTabNav > li > *.active > span {
  opacity: 1;
}

#productsDmTop #lineup .lineupTabNav > li > * > span > span {
  display: block;
  width: 100%;
}
#productsDmTop #lineup .lineupTabNav > li > * > span > span:nth-of-type(1) {
  margin-bottom: 8px;
  font-size: 2.7rem;
}

#productsDmTop #lineup .lineupTabNav > li > * > span::after {
  position: absolute;
  left: 50%;
  bottom: 25px;
  transform: translateX(-50%) rotate(45deg);
  width: 13px;
  height: 13px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  opacity: 0;
  content: '';
  transition: opacity 0.2 ease-in;
}
#productsDmTop #lineup .lineupTabNav > li > *.active > span::after {
  opacity: 1;
}

#productsDmTop #lineup .lineupTabNav > li > * > span > span:nth-of-type(1) img {
  display: inline-block;
  position: relative;
  top: 1px;
  width: auto;
  height: 40px;
  margin-right: 5px;
  vertical-align: baseline;
}

#productsDmTop #lineup .lineupTabNav > li > * > span > span:nth-of-type(2) {
  font-size: 1.3rem;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupTabNav {
    width: 100%;
    transform: translateX(0);
  }
  
  #productsDmTop #lineup .lineupTabNav > li > * {
    height: calc(170px * 0.65);
    border-top-width: 2px;
  }

  #productsDmTop #lineup .lineupTabNav > li > *::before {
    width: calc(821px * 0.3);
    height: calc(301px * 0.3);
  }

  #productsDmTop #lineup .lineupTabNav > li > *::after {
    height: calc(100% - 20px);
  }

  #productsDmTop #lineup .lineupTabNav > li > * > span {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  
  #productsDmTop #lineup .lineupTabNav > li > * > span::after {
    bottom: 10px;
    width: calc(13px * 0.6);
    height: calc(13px * 0.6);
  }

  #productsDmTop #lineup .lineupTabNav > li > * > span > span:nth-of-type(1) {
    margin-bottom: 5px;
    font-size: 1.4rem;
  }

  #productsDmTop #lineup .lineupTabNav > li > * > span > span:nth-of-type(1) img {
    top: 1px;
    height: calc(40px * 0.6);
    margin-right: 3px;
  }

  #productsDmTop #lineup .lineupTabNav > li > * > span > span:nth-of-type(2) {
    font-size: 1.05rem;
  }
}

/* -- .lineupTabContent -- */
#productsDmTop #lineup .lineupTabContent > li {
  display: none;
}
#productsDmTop #lineup .lineupTabContent > li.active {
  display: block;
}

#productsDmTop #lineup .lineupTabContent .lineupTabContentInner {
  padding-top: 25px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupTabContent .lineupTabContentInner {
    padding-top: 5px;
  }
}

/* -- .lineupBanner -- */
#productsDmTop #lineup .lineupBanner {
  display: flex;
  margin-left: -34px;
}

#productsDmTop #lineup .lineupBanner > li {
  width: 50%;
  padding-left: 34px;
  position: relative;
  z-index: 1;
}

#productsDmTop #lineup .lineupBanner > li > * {
  display: block;
  position: relative;
  z-index: 1;
  color: #fff;
}
#productsDmTop #lineup .lineupBanner > li > *:hover {
  opacity: 1;
}

#productsDmTop #lineup .lineupBanner > li > *::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  opacity: 0;
  content: '';
  transition: opacity 0.2s ease-in;
}
#productsDmTop #lineup .lineup25Dm .lineupBanner > li > *:before {
  background: linear-gradient(0deg, rgba(0,0,70,1) 0%, rgba(0,0,0,0) 100%);
}
#productsDmTop #lineup .lineupDm .lineupBanner > li > *:before {
  background: linear-gradient(0deg, rgba(38,38,38,1) 0%, rgba(0,0,0,0) 100%);
}
#productsDmTop #lineup .lineupBanner > li > *:hover::before {
  opacity: 1;
}

#productsDmTop #lineup .lineupBannerInner {
  text-align: center;
}

#productsDmTop #lineup .lineupBannerInner > dt,
#productsDmTop #lineup .lineupBannerInner > dt > span{
  display: block;
  line-height: 1;
}

#productsDmTop #lineup .lineupBannerInner > dd {
  position: relative;
  padding: 0 50px 50px 50px;
}

#productsDmTop #lineup .lineupBannerInner > dd::before,
#productsDmTop #lineup .lineupBannerInner > dd::after {
  position: absolute;
  content: '';
}

#productsDmTop #lineup .lineupBannerInner > dd::before {
  bottom: 30px;
  right: 30px;
  width: 28px;
  height: 28px;
  border: 1px solid #fff;
}

#productsDmTop #lineup .lineupBannerInner > dd::after {
  bottom: 39.5px;
  right: 42px;
  transform: rotate(45deg);
  width: 9px;
  height: 9px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupBanner {
    display: block;
    margin-left: 0;
    margin-top: -10px;
  }

  #productsDmTop #lineup .lineupBanner > li {
    width: 100%;
    padding-left: 0;
    margin-top: 10px;
  }

  #productsDmTop #lineup .lineupBanner > li > *:hover {
    opacity: 1;
  }

  #productsDmTop #lineup .lineupBanner > li > *:hover::before {
    opacity: 0;
  }

  #productsDmTop #lineup .lineupBannerInner > dd {
    padding: 0 10px 30px 10px;
  }
  
  #productsDmTop #lineup .lineupBannerInner > dd::before {
    bottom: calc(30px * 0.6);
    right: calc(30px * 0.6);
    width: calc(28px * 0.6);
    height: calc(28px * 0.6);
  }

  #productsDmTop #lineup .lineupBannerInner > dd::after {
    bottom: calc(39.5px * 0.6);
    right: calc(42px * 0.6);
    width: calc(9px * 0.6);
    height: calc(9px * 0.6);
  }
}

/* .lineupBannerImg */
#productsDmTop #lineup .lineupBannerImg {
  position: relative;
  z-index: 1;
}

#productsDmTop #lineup .lineupBannerLabel {
  position: absolute;
  z-index: 2;
  
}
#productsDmTop #lineup .lineupDm .lineupBannerLabel {
  top: 150px;
}
#productsDmTop #lineup .lineup25Dm .lineupBannerLabel {
  top: 5px;
  width: 116px;
  height: 116px;
}
#productsDmTop #lineup .lineup25Dm .lineupBanner > li:nth-child(odd) .lineupBannerLabel {
  left: -55px;
}
#productsDmTop #lineup .lineup25Dm .lineupBanner > li:nth-child(even) .lineupBannerLabel {
  right: -55px;
}
#productsDmTop #lineup .lineupDm .lineupBannerLabel {
  top: 150px;
  width: 89px;
  height: 89px;
}
#productsDmTop #lineup .lineupDm .lineupBanner > li:nth-child(odd) .lineupBannerLabel {
  left: 36px;
}
#productsDmTop #lineup .lineupDm .lineupBanner > li:nth-child(even) .lineupBannerLabel {
  right: 36px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupBannerImg {
    width: 120%;
    margin-left: -10%;
  }
  
  #productsDmTop #lineup .lineup25Dm .lineupBannerLabel {
    top: calc(100vw * (150 / 750) * 1.6);
    width: calc(100vw * (116 / 750) * 1.4);
    height: calc(100vw * (11 / 750) * 1.4);
  }
  #productsDmTop #lineup .lineup25Dm .lineupBanner > li:nth-child(odd) .lineupBannerLabel {
    left: 5px;
  }
  #productsDmTop #lineup .lineup25Dm .lineupBanner > li:nth-child(even) .lineupBannerLabel {
    right: 5px;
  }
  #productsDmTop #lineup .lineupDm .lineupBannerLabel {
    top: calc(100vw * (150 / 750) * 1.6);
    width: calc(100vw * (89 / 750) * 1.4);
    height: calc(100vw * (89 / 750) * 1.4);
  }
  #productsDmTop #lineup .lineupDm .lineupBanner > li:nth-child(odd) .lineupBannerLabel {
    left: 5px;
  }
  #productsDmTop #lineup .lineupDm .lineupBanner > li:nth-child(even) .lineupBannerLabel {
    right: 5px;
  }
}

/* .lineupModel */
#productsDmTop #lineup .lineupBannerModel {
  display: flex;
  align-items: center;
  justify-content: center;
}

#productsDmTop #lineup .lineupBannerModel > span {
  display: block;
  flex: 0 0 auto;
}

#productsDmTop #lineup .lineupBannerModel > span:nth-of-type(1) {
  min-width: 242px;
  padding: 8px;
  border: 1px solid #fff;
  border-radius: 8px;
  line-height: 0;
}
#productsDmTop #lineup .lineupBannerModel > span:nth-of-type(1) img {
  width: auto;
  height: 18px;
}

#productsDmTop #lineup .lineupBannerModel > span:nth-of-type(2) {
  padding-left: 15px;
  color: #828282;
  font-size: 1.5rem;
  line-height: 1.2;
  text-align: left;
}

/* lineupTtlArea */
#productsDmTop #lineup .lineupBannerTtlArea {
  margin-top: 25px;
}

#productsDmTop #lineup .lineup25Dm .lineupBannerTtlArea {
  display: inline-block;
  padding-left: 120px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_label-25new.png');
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100px auto;
  text-align: left;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupBannerTtlArea {
    margin-top: 20px;
  }

  #productsDmTop #lineup .lineup25Dm .lineupBannerTtlArea {
    padding-left: 85px;
    background-size: 70px auto;
  }
}

/* .lineupSubTtl */
#productsDmTop #lineup .lineupBannerSubTtl {
  display: flex;
  align-items: center;
  justify-content: center;
}
#productsDmTop #lineup .lineup25Dm .lineupBannerSubTtl {
  justify-content: flex-start;
}

#productsDmTop #lineup .lineupBannerSubTtl > span {
  display: block;
  flex: 0 0 auto;
}

#productsDmTop #lineup .lineupBannerSubTtl > span:nth-of-type(1) {
  border: 1px solid #fff;
  padding: 4px;
  font-size: 1.0rem;
  font-weight: 500;
  line-height: 1;
}

#productsDmTop #lineup .lineupBannerSubTtl > span:nth-of-type(2) {
  padding-left: 5px;
  font-size: 1.8rem;
  line-height: 1.2;
  text-align: left;
}

/* .lineupTtl */
#productsDmTop #lineup .lineupBannerTtl {
  margin-top: 5px;
}

#productsDmTop #lineup .lineupBannerTtl > span {
  display: block;
  line-height: 1.4;
}

#productsDmTop #lineup .lineupBannerTtl > span:nth-of-type(1) {
  font-size: 2.9rem;
  font-weight: 500;
}

#productsDmTop #lineup .lineupBannerTtl > span:nth-of-type(2) {
  margin-top: 5px;
  font-size: 1.9rem;
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupBannerModel > span:nth-of-type(1) {
    min-width: calc(242px * 0.65);
    padding: 4px;
    border-radius: 3px;
  }
  #productsDmTop #lineup .lineupBannerModel > span:nth-of-type(1) img {
    height: calc(18px * 0.65);
  }

  #productsDmTop #lineup .lineupBannerModel > span:nth-of-type(2) {
    padding-left: 8px;
    font-size: 1.1rem;
  }

  /* .lineupSubTtl */
  #productsDmTop #lineup .lineupBannerSubTtl > span:nth-of-type(1) {
    padding: 3px;
    font-size: 1.0rem;
  }

  #productsDmTop #lineup .lineupBannerSubTtl > span:nth-of-type(2) {
    padding-left: 4px;
    font-size: 1.2rem;
  }

  /* .lineupTtl */
  #productsDmTop #lineup .lineupBannerTtl {
    margin-top: 3px;
  }

  #productsDmTop #lineup .lineupBannerTtl > span:nth-of-type(1) {
    font-size: 2.0rem;
  }

  #productsDmTop #lineup .lineupBannerTtl > span:nth-of-type(2) {
    margin-top: 3px;
    font-size: 1.3rem;
  }
}

/* -- .lineupBanner -- */
#productsDmTop #lineup .lineupBottomBanner {
  padding: 60px 160px 0 160px;
  margin-top: -50px;
}

#productsDmTop #lineup .lineupBottomBanner > li {
  margin-top: 50px;
}

#productsDmTop #lineup .lineupBottomBannerInner {
  color: #fff;
  text-align: center;
}

#productsDmTop #lineup .lineupBottomBannerTtl {
  display: block;
  margin-bottom: 10px;
  font-size: 2.0rem;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupBottomBanner {
    padding: 30px 10px 0 10px;
    margin-top: -20px;
  }

  #productsDmTop #lineup .lineupBottomBanner > li {
    margin-top: 20px;
  }

  #productsDmTop #lineup .lineupBottomBannerTtl {
    margin-bottom: 5px;
    font-size: 1.4rem;
  }
}

/* -- .lineupBtn -- */
#productsDmTop #lineup .lineupBtn {
  padding: 60px 160px 0 160px;
  margin-top: -50px;
  margin-left: -30px;
}

#productsDmTop #lineup .lineupBtn .p-btn {
  margin-top: 50px;
  padding-left: 30px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupBtn {
    padding: 30px 10px 0 10px;
    margin-top: -20px;
    margin-left: -10px;
  }

  #productsDmTop #lineup .lineupBtn .p-btn {
    margin-top: 20px;
    padding-left: 10px;
  }
}

/* -- .lineupFeatures -- */
#productsDmTop #lineup .lineupFeatures {
  margin: 100px -60px 0 -60px;
}

#productsDmTop #lineup .lineupFeatures > * {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 226px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_lineup-features-bg01.png');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  color: #fff;
}
#productsDmTop #lineup .lineupFeatures > *:hover {
  opacity: 1;
}

#productsDmTop #lineup .lineupFeatures > *::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_lineup-features-bg02.png');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  transition: opacity 0.2s ease-in;
  content: '';
}
#productsDmTop #lineup .lineupFeatures > *:hover::before {
  opacity: 1;
}

#productsDmTop #lineup .lineupFeatures > *::after {
  position: absolute;
  top: 50%;
  right: 60px;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-arrow01-wt.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #lineup .lineupFeatures > * span {
  display: block;
  text-align: center;
}

#productsDmTop #lineup .lineupFeatures > * > span > span:nth-of-type(1) img {
  width: 594px;
}

#productsDmTop #lineup .lineupFeatures > * > span > span:nth-of-type(2) {
  margin-top: 30px;
  font-size: 2.5rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupFeatures {
    margin: 30px 0 0 0;
  }

  #productsDmTop #lineup .lineupFeatures > * {
    height: 100px;
  }
  #productsDmTop #lineup .lineupFeatures > *::before {
    display: none;
  }
  #productsDmTop #lineup .lineupFeatures > *:hover::before {
    opacity: 0;
  }
  
  #productsDmTop #lineup .lineupFeatures > *::after {
    right: 10px;
    width: calc(50px * 0.5);
    height: calc(50px * 0.5);
  }

  #productsDmTop #lineup .lineupFeatures > * > span > span:nth-of-type(1) img {
    width: 75%;
  }

  #productsDmTop #lineup .lineupFeatures > * > span > span:nth-of-type(2) {
    margin-top: 10px;
    font-size: 1.2rem;
  }
}

/* -- .lineupKit -- */
#productsDmTop #lineup .lineupKit {
  position: relative;
  z-index: 1;
  padding-top: 40px;
  margin-top: 150px;
}

#productsDmTop #lineup .lineupKit::before {
  position: absolute;
  top: 0;
  left: -60px;
  z-index: -1;
  width: calc(100% + 120px);
  height: 210px;
  border-radius: 10px;
  background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(30,30,30,1) 100%);
  content: '';
}

#productsDmTop #lineup .lineupKitTtl {
  margin-bottom: 30px;
  text-align: center;
}

#productsDmTop #lineup .lineupKitTtl > span {
  display: inline-block;
  font-size: 2.7rem;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupKit {
    padding: 20px 10px 0 10px;
    margin-top: 80px;
  }

  #productsDmTop #lineup .lineupKit::before {
    left: -5px;
    width: calc(100% + 10px);
    height: 100px;
    border-radius: 5px;
  }

  #productsDmTop #lineup .lineupKitTtl {
    margin-bottom: 15px;
  }

  #productsDmTop #lineup .lineupKitTtl > span {
    font-size: 1.6rem;
  }
}

/* .lineupKitSearch */
#productsDmTop #lineup .lineupKitSearch {
  display: flex;
  align-items: center;
}
#productsDmTop #lineup .lineupKitSearchTtl {
  width: 210px;
  font-size: 2.0rem;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupKitSearch {
    display: block;
  }
  
  #productsDmTop #lineup .lineupKitSearchTtl {
    width: 100%;
    margin-bottom: 8px;
    font-size: 1.3rem;
  }
}

/* .lineupKitSearchMaker */
#productsDmTop #lineup .lineupKitSearchMaker {
  flex: 1;
  position: relative;
}

#productsDmTop #lineup .lineupKitSearchMaker::after {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(45deg);
  width: 15px;
  height: 15px;
  margin-top: -3px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  content: '';
}

#productsDmTop #lineup .lineupKitSearchMaker select {
  width: 100%;
  padding: 18px 35px;
  border: none;
  border-radius: 1000px;
  color: #000;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  font-size: 1.9rem;
  font-weight: 500;
  appearance: none;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupKitSearchMaker::after {
    right: 15px;
    width: 10px;
    height: 10px;
    margin-top: -2px;
  }

  #productsDmTop #lineup .lineupKitSearchMaker select {
    width: 100%;
    padding: 12px 15px;
    font-size: 1.4rem;
  }
}

/* .lineupKitInner */
#productsDmTop #lineup .lineupKitInner {
  margin-top: 60px;
}
#productsDmTop #lineup .lineupKitInner:nth-of-type(1) {
  margin-top: 80px;
}

#productsDmTop #lineup .lineupKitInner > dt {
  display: block;
  margin-bottom: 25px;
  text-align: center;
  position: relative;
}

#productsDmTop #lineup .lineupKitInner > dt > span:nth-of-type(1) {
  display: inline-block;
  border: 1px solid #fff;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.4;
}

#productsDmTop #lineup .lineupKitInner > dt > span:nth-of-type(1) > span,
#productsDmTop #lineup .lineupKitInner > dt > span:nth-of-type(1) > strong {
  display: inline-block;
  padding: 8px 10px;
}

#productsDmTop #lineup .lineupKitInner > dt > span:nth-of-type(1) > strong {
  background-color: #fff;
  color: #000;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupKitInner {
    margin-top: 30px;
  }
  #productsDmTop #lineup .lineupKitInner:nth-of-type(1) {
    margin-top: 40px;
  }

  #productsDmTop #lineup .lineupKitInner > dt {
    margin-bottom: 10px;
  }

  #productsDmTop #lineup .lineupKitInner > dt > span:nth-of-type(1) {
    display: block;
    font-size: 1.3rem;
  }

  #productsDmTop #lineup .lineupKitInner > dt > span:nth-of-type(1) > span,
  #productsDmTop #lineup .lineupKitInner > dt > span:nth-of-type(1) > strong {
    display: block;
    padding: 4px 5px;
  }
}

/* .lineupSearchResults */
#productsDmTop #lineup .lineupKitSearchResults {
  display: none !important;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-in;
}
#productsDmTop #lineup .lineupKitSearchResults[data-lineupkit-maker] {
  display: none !important;
  opacity: 0;
  visibility: hidden;
  transition: unset;
}
#productsDmTop #lineup .lineupKitSearchResults.is-active {
  display: block !important;
  opacity: 1;
  visibility: visible;
}
#productsDmTop #lineup .lineupKitSearchResults[data-lineupkit-maker].is-active {
  display: inline-block !important;
}

#productsDmTop #lineup .lineupKitSearchResults:not(.is-active) + .lineupBtn {
  padding-top: 0 !important;
}

/* .lineupKitLabel */
#productsDmTop #lineup .lineupKitLabel {
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 132px;
  border-left: 20px solid #000;
}
@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupKitLabel {
    position: static;
    transform: translateY(0);
    width: calc(132px * 0.6);
    margin: 10px auto 0 auto;
    border-left: none;
  }
}

/* .lineupKitLists */
#productsDmTop #lineup .lineupKitLists {
  letter-spacing: -.40em;
}

#productsDmTop #lineup .lineupKitLists > li {
  display: inline-block;
  width: 25%;
  margin: -1px 0 0 -1px;
  border: 1px solid #b4b4b4;
  vertical-align: top;
  letter-spacing: normal;
}
#productsDmTop #lineup .lineupKitLists > li:nth-child(4n + 1) {
  margin-left: 0;
}
#productsDmTop #lineup .lineupKitLists > li:nth-of-type(1),
#productsDmTop #lineup .lineupKitLists > li:nth-of-type(2),
#productsDmTop #lineup .lineupKitLists > li:nth-of-type(3),
#productsDmTop #lineup .lineupKitLists > li:nth-of-type(4) {
  margin-top: 0;
}

#productsDmTop #lineup .lineupKitLists > li > * {
  display: block;
  color: #fff;
}

#productsDmTop #lineup .lineupKitListsInner {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 67px;
  overflow: hidden;
  background-color: #000;
  text-align: center;
  
}

#productsDmTop #lineup .lineupKitListsInner > dt {
  width: 44%;
}

#productsDmTop #lineup .lineupKitListsInner > dt img {
  width: 100%;
}

#productsDmTop #lineup .lineupKitListsInner > dd {
  width: 56%;
}

#productsDmTop #lineup .lineupKitListsInner > dd > p {
  font-size: 1.1rem;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupKitLists > li {
    width: 50%;
  }
  #productsDmTop #lineup .lineupKitLists > li:nth-child(2n + 1) {
    margin-left: 0;
  }
  #productsDmTop #lineup .lineupKitLists > li:nth-of-type(3),
  #productsDmTop #lineup .lineupKitLists > li:nth-of-type(4) {
    margin-top: -1px;
  }

  #productsDmTop #lineup .lineupKitListsInner {
    height: 60px;
  }

  #productsDmTop #lineup .lineupKitListsInner > dd > p {
    font-size: 1.0rem;
  }
}

/* .lineupKitComments */
#productsDmTop #lineup .lineupKitCommonts {
  margin-top: 15px;
  font-size: 1.5rem;
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupKitCommonts {
    margin-top: 10px;
    font-size: 1.0rem;
  }
}

/* -- .lineupArm -- */
#productsDmTop #lineup .lineupArm {
  display: none;
  margin-top: 80px;
}
#productsDmTop #lineup .lineupArm.is-active {
  display: block;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupArm {
    margin-top: 30px;
  }
}

/* .lineupArmTtl */
#productsDmTop #lineup .lineupArmTtl {
  position: relative;
  z-index: 1;
  margin-bottom: 40px;
  text-align: center;
}

#productsDmTop #lineup .lineupArmTtl::before {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 1px;
  background-color: #fff;
  content: '';
}

#productsDmTop #lineup .lineupArmTtl > span:nth-of-type(1) {
  display: inline-block;
  padding: 0 15px;
  background-color: #000;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupArmTtl {
    margin-bottom: 20px;
  }

  #productsDmTop #lineup .lineupArmTtl > span:nth-of-type(1) {
    padding: 0 10px;
    font-size: 1.5rem;;
  }
}

/* .lineupArmLists */
#productsDmTop #lineup .lineupArmLists {
  display: flex;
  margin-left: -20px;
}

#productsDmTop #lineup .lineupArmLists > li {
  width: 50%;
  padding-left: 20px;
}

#productsDmTop #lineup .lineupArmListsInner {
  height: 100%;
  padding: 35px 25px;
  background-color: #191919;
}

#productsDmTop #lineup .lineupArmListsBtn {
  margin-bottom: 35px;
}

#productsDmTop #lineup .lineupArmListsBtn .p-btn {
  width: 100%;
}

#productsDmTop #lineup .lineupArmListsBtn .p-btn > * {
  min-height: 65px;
  padding: 10px 55px;
}

#productsDmTop #lineup .lineupArmListsBtn .p-btn > *::after {
  right: 15px;
}

#productsDmTop #lineup .lineupArmListsBtn .p-btn > * > span {
  font-size: 1.6rem;
}

#productsDmTop #lineup .lineupArmListsFitting {
  text-align: center;
}

#productsDmTop #lineup .lineupArmListsFitting > dt {
  display: block;
  position: relative;
  z-index: 1;
  margin-bottom: 20px;
}

#productsDmTop #lineup .lineupArmListsFitting > dt::before {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 1px;
  background-color: #fff;
  content: '';
}

#productsDmTop #lineup .lineupArmListsFitting > dt > span {
  display: inline-block;
  padding: 0 20px;
  background-color: #191919;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
}

#productsDmTop #lineup .lineupArmListsFittingLists {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: -10px;
  margin-left: -15px;
}

#productsDmTop #lineup .lineupArmListsFittingLists > li {
  padding-top: 10px;
  padding-left: 15px;
  letter-spacing: -0.03em;
  font-size: 1.5rem;
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupArmLists {
    display: block;
    margin-top: -15px;
    margin-left: -10px;
  }

  #productsDmTop #lineup .lineupArmLists > li {
    width: 100%;
    padding-top: 15px;
    padding-left: 10px;
  }

  #productsDmTop #lineup .lineupArmListsInner {
    height: auto;
    padding: 20px 25px;
    border-radius: 10px;
  }

  #productsDmTop #lineup .lineupArmListsBtn {
    margin-bottom: 15px;
  }

  #productsDmTop #lineup .lineupArmListsBtn .p-btn > * {
    display: block;
    width: 100%;
    min-height: initial;
    padding: 10px 25px;
  }

  #productsDmTop #lineup .lineupArmListsBtn .p-btn > *::after {
    right: 10px;
  }

  #productsDmTop #lineup .lineupArmListsBtn .p-btn > * > span {
    font-size: 1.3rem;
  }

  #productsDmTop #lineup .lineupArmListsFitting > dt {
    margin-bottom: 10px;
  }

  #productsDmTop #lineup .lineupArmListsFitting > dt > span {
    padding: 0 10px;
    color: #fff;
    font-size: 1.2rem;
  }

  #productsDmTop #lineup .lineupArmListsFittingLists {
    margin-top: -5px;
    margin-left: -8px;
  }

  #productsDmTop #lineup .lineupArmListsFittingLists > li {
    padding-top: 5px;
    padding-left: 8px;
    font-size: 1.1rem;
  }
}

/* -- .lineupOpening -- */
#productsDmTop #lineup .lineupOpening {
  display: none;
}
#productsDmTop #lineup .lineupOpening.is-active {
  display: block;
}

/* -- .lineupBottom -- */
#productsDmTop #lineup .lineupBottom {
  padding-left: 160px;
  padding-right: 160px;
}

#productsDmTop #lineup .lineupBottom .p-btns {
  margin-left: -30px;
}

#productsDmTop #lineup .lineupBottom .p-btn {
  padding-left: 30px;
}

#productsDmTop #lineup .lineupBottom .p-btn.p-col02 > * {
  justify-content: flex-start;
  padding-left: 30px;
  padding-right: 70px;
  text-align: left;
}

#productsDmTop #lineup .lineupBottom .p-btn > * {
  height: 100%;
}

#productsDmTop #lineup .lineupBottom .p-btn > *::after {
  right: 20px;
}

#productsDmTop #lineup .lineupBottom .p-btn.p-col02 > * > span:nth-of-type(1) {
  font-size: 1.9rem;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #lineup .lineupBottom {
    padding-left: 10px;
    padding-right: 10px;
  }
  
  #productsDmTop #lineup .lineupBottom .p-btns {
    margin-left: -10px;
  }

  #productsDmTop #lineup .lineupBottom .p-btn {
    padding-left: 10px;
  }
  
  #productsDmTop #lineup .lineupBottom .p-btn.p-col02 > * {
    justify-content: center;
    padding-left: 30px;
    padding-right: 30px;
    text-align: center;
  }

  #productsDmTop #lineup .lineupBottom .p-btn > *::after {
    right: 10px;
  }
  
  #productsDmTop #lineup .lineupBottom .p-btn.p-col02 > * > span:nth-of-type(1) {
    font-size: 1.4rem;
  }
}


/**
 * Recommend
 * -------------------------------
 */

#recommend {
  overflow-x: hidden;
  color: #000;
  background-color: #fff;
}

#recommend .p-wrapper {
  padding: 100px 110px;
}

#recommend .recommendTtl {
  margin-bottom: 25px;
  text-align: center;
}

#recommend .recommendTtl > span {
  display: inline-block;
  color: #043cb4;
  font-size: 3.1rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

#recommend .recommendInner {
  text-align: center;
}

#recommend .recommendInner > dt {
  display: block;
  margin-bottom: 25px;
}

#recommend .recommendInner > dd > p {
  font-size: 1.6rem;
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  #recommend .p-wrapper {
    padding: 30px 15px;
  }

  #recommend .recommendTtl {
    margin-bottom: 15px;
  }

  #recommend .recommendTtl > span {
    font-size: 1.6rem;
  }

  #recommend .recommendInner > dt {
    margin-bottom: 15px;
  }

  #recommend .recommendInner > dd > p {
    font-size: 1.2rem;
  }
}


/**
 * Features
 * -------------------------------
 */

#productsDmTop #features .featuresKv {
  position: relative;
  z-index: 1;
  height: 420px;
  margin-bottom: 150px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features-kv-bg.jpg');
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: cover;
}

#productsDmTop #features .featuresKvTtl {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  text-align: center;
}

#productsDmTop #features .featuresKvTtl img {
  width: 691px;
}

#productsDmTop #features .p-wrapper {
  width: 1200px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresKv {
    height: 160px;
    margin-bottom: 60px;
  }

  #productsDmTop #features .featuresKvTtl img {
    width: calc(691px * 0.35);
  }
  
  #productsDmTop #features .p-wrapper {
    width: 100%;
  }
}

/* -- .featuresLists -- */
#productsDmTop #features .featuresLists {
  display: flex;
  flex-wrap: wrap;
  margin-top: -80px;
  margin-left: -80px;
}

#productsDmTop #features .featuresLists > li {
  padding-top: 80px;
  padding-left: 80px;
}

#productsDmTop #features .featuresLists > li a {
  display: block;
  position: relative;
  color: #fff;
}
#productsDmTop #features .featuresLists > li a:hover {
  opacity: 1;
}

#productsDmTop #features .featuresListsInner {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

#productsDmTop #features .featuresListsInner::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: linear-gradient(0deg, rgba(0,0,132,0.6) 0%, rgba(0,0,132,0) 100%);
  content: '';
  transition: opacity 0.2s ease-in;
}
#productsDmTop #features .featuresLists > li a:hover .featuresListsInner::before {
  opacity: 1;
}

#productsDmTop #features .featuresListsInner > dt {
  display: block;
  position: relative;
  z-index: -1;
}

#productsDmTop #features .featuresListsInner > dt > span {
  display: block;
  position: absolute;
}

#productsDmTop #features .featuresListsInner > dd {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#productsDmTop #features .featuresListsLetter {
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
}

#productsDmTop #features .featuresListsTtl {
  display: inline-block;
  position: absolute;
  padding-bottom: 20px;
  border-bottom: 1px solid #fff;
  font-size: 3.0rem;
  line-height: 1.7;
}

#productsDmTop #features .featuresListsLogo {
  position: absolute;
}

#productsDmTop #features .featuresListsComments {
  display: inline-block;
  position: absolute;
  color: #b3b3b3;
  font-size: 1.5rem;
  line-height: 1.4;
}

#productsDmTop #features .featuresListsArrow {
  position: absolute;
  left: 60px;
  bottom: 60px;
  z-index: 2;
  width: 28px;
  height: 28px;
  border: 1px solid #fff;
}

#productsDmTop #features .featuresListsArrow::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 9px;
  height: 9px;
  margin-left: -2px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: '';
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresLists {
    margin-top: -20px;
    margin-left: -10px;
  }

  #productsDmTop #features .featuresLists > li {
    padding-top: 20px;
    padding-left: 10px;
  }
  
  #productsDmTop #features .featuresListsInner::before {
    display: none;
  }
  #productsDmTop #features .featuresLists > li a:hover .featuresListsInner::before {
    opacity: 0;
  }

  #productsDmTop #features .featuresListsTtl {
    padding-bottom: 10px;
    font-size: 1.4rem;
    line-height: 1.6;
  }
  
  #productsDmTop #features .featuresListsComments {
    font-size: 1.0rem;
  }
  
  #productsDmTop #features .featuresListsArrow {
    left: 15px;
    bottom: 15px;
    width: calc(28px * 0.6);
    height: calc(28px * 0.6);
  }

  #productsDmTop #features .featuresListsArrow::after {
    width: calc(9px * 0.6);
    height: calc(9px * 0.6);
  }
}

/* .featuresLists01 */
#productsDmTop #features .featuresLists01 .featuresListsInner {
  height: 685px;
  background: linear-gradient(-20deg, rgba(0,0,60,1) 0%, rgba(0,0,60,1) 5%, rgba(0,0,0,1) 70%);
}

#productsDmTop #features .featuresLists01 .featuresListsImg {
  top: 115px;
  left: 155px;
  width: 880px;
}

#productsDmTop #features .featuresLists01 .featuresListsTtl {
  right: 60px;
  bottom: 60px;
}

@media only screen and (max-width: 767px) {
  /* .featuresLists01 */
  #productsDmTop #features .featuresLists01 .featuresListsInner {
    height: calc(100vw * (685 / 750) * 0.8);
  }

  #productsDmTop #features .featuresLists01 .featuresListsImg {
    top: calc(100vw * (115 / 750) * 0.6);
    left: calc(100vw * (155 / 750) * 0.5);
    width: calc(100vw * (880 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists01 .featuresListsTtl {
    right: 15px;
    bottom: 15px;
  }
}

/* .featuresLists02 */
#productsDmTop #features .featuresLists02 .featuresListsInner {
  height: 685px;
  background: linear-gradient(160deg, rgba(0,0,60,1) 0%, rgba(0,0,60,1) 5%, rgba(0,0,0,1) 70%);
}

#productsDmTop #features .featuresLists02 .featuresListsLetter {
  top: -5px;
}

#productsDmTop #features .featuresLists02 .featuresListsImg {
  top: 55px;
  left: 260px;
  width: 903px;
}

#productsDmTop #features .featuresLists02 .featuresListsTtl {
  left: 60px;
  bottom: 155px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresLists02 .featuresListsInner {
    height: calc(100vw * (685 / 750) * 0.8);
  }
  
  #productsDmTop #features .featuresLists02 .featuresListsLetter {
    top: calc(100vw * (5 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists02 .featuresListsImg {
    top: calc(100vw * (55 / 750) * 0.6);
    left: calc(100vw * (260 / 750) * 0.5);
    width: calc(100vw * (903 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists02 .featuresListsTtl {
    left: 15px;
    bottom: calc(100vw * (155 / 750) * 0.6);
  }
}

/* .featuresLists03 */
#productsDmTop #features .featuresLists03 .featuresListsInner {
  height: 685px;
  background: linear-gradient(-50deg, rgba(0,0,60,1) 0%, rgba(0,0,60,1) 5%, rgba(0,0,0,1) 90%);
}

#productsDmTop #features .featuresLists03 .featuresListsImg {
  top: 107px;
  right: 75px;
  width: 550px;
}

#productsDmTop #features .featuresLists03 .featuresListsTtl {
  left: 60px;
  bottom: 155px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresLists03 .featuresListsInner {
    height: calc(100vw * (685 / 750) * 0.8);
  }

  #productsDmTop #features .featuresLists03 .featuresListsImg {
    top: calc(100vw * (107 / 750) * 0.45);
    right: calc(100vw * (75 / 750) * 0.5);
    width: calc(100vw * (550 / 750) * 0.65);
  }

  #productsDmTop #features .featuresLists03 .featuresListsTtl {
    left: 15px;
    bottom: calc(100vw * (155 / 750) * 0.6);
  }
}

/* .featuresLists04 */
#productsDmTop #features .featuresLists04 .featuresListsInner {
  height: 685px;
  background: linear-gradient(180deg, rgba(0,0,60,1) 0%, rgba(0,0,60,1) 5%, rgba(0,0,0,1) 90%);
}

#productsDmTop #features .featuresLists04 .featuresListsImg {
  top: 85px;
  right: 0;
  width: 1016px;
}

#productsDmTop #features .featuresLists04 .featuresListsTtl {
  right: 60px;
  bottom: 65px;
}

#productsDmTop #features .featuresLists04 .featuresListsLogo {
  left: 60px;
  bottom: 125px;
  width: 188px;
}

#productsDmTop #features .featuresLists04 .featuresListsComments {
  left: 110px;
  bottom: 65px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresLists04 .featuresListsInner {
    height: calc(100vw * (685 / 750) * 0.8);
  }

  #productsDmTop #features .featuresLists04 .featuresListsImg {
    top: calc(100vw * (85 / 750) * 0.6);
    width: calc(100vw * (1016 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists04 .featuresListsTtl {
    right: 15px;
    bottom: calc(100vw * (65 / 750) * 2.2);
  }

  #productsDmTop #features .featuresLists04 .featuresListsLogo {
    left: 15px;
    bottom: calc(100vw * (125 / 750) * 0.95);
    width: calc(100vw * (188 / 750) * 0.7);
  }

  #productsDmTop #features .featuresLists04 .featuresListsComments {
    left: calc(100vw * (110 / 750) * 0.8);
    bottom: calc(100vw * (65 / 750) * 0.4);
  }
}

/* .featuresLists05 */
#productsDmTop #features .featuresLists05 .featuresListsInner {
  height: 685px;
  background: linear-gradient(90deg, rgba(0,0,60,1) 0%, rgba(0,0,60,1) 40%, rgba(0,0,0,1) 60%);
}

#productsDmTop #features .featuresLists05 .featuresListsImg {
  top: 80px;
  left: 70px;
  width: 1060px;
}

#productsDmTop #features .featuresLists05 .featuresListsTtl {
  right: 60px;
  bottom: 65px;
  text-align: right;
}

#productsDmTop #features .featuresLists05 .featuresListsLogo {
  right: 60px;
  bottom: 200px;
  width: 152px;
}

#productsDmTop #features .featuresLists05 .featuresListsComments {
  left: 110px;
  bottom: 60px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresLists05 .featuresListsInner {
    height: calc(100vw * (685 / 750) * 0.8);
  }

  #productsDmTop #features .featuresLists05 .featuresListsImg {
    top: calc(100vw * (80 / 750) * 0.6);
    left: calc(100vw * (70 / 750) * 0.6);
    width: calc(100vw * (1060 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists05 .featuresListsTtl {
    right: 15px;
    bottom: calc(100vw * (65 / 750) * 2.1);
  }

  #productsDmTop #features .featuresLists05 .featuresListsLogo {
    right: auto;
    left: 15px;
    bottom: calc(100vw * (200 / 750) * 0.7);
    width: calc(100vw * (152 / 750) * 0.8);
  }

  #productsDmTop #features .featuresLists05 .featuresListsComments {
    left: calc(100vw * (110 / 750) * 0.8);
    bottom: calc(100vw * (60 / 750) * 0.4);
    letter-spacing: -0.03em;
  }
}

/* .featuresLists06 */
#productsDmTop #features .featuresLists06 .featuresListsInner {
  height: 745px;
  background: linear-gradient(0deg, rgba(0,0,60,1) 0%, rgba(0,0,60,1) 5%, rgba(0,0,0,1) 90%);
}

#productsDmTop #features .featuresLists06 .featuresListsImg {
  top: 124px;
  left: 70px;
  width: 418px;
}

#productsDmTop #features .featuresLists06 .featuresListsTtl {
  left: 60px;
  bottom: 60px;
}

#productsDmTop #features .featuresLists06 .featuresListsArrow {
  left: auto;
  right: 60px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresLists06 .featuresListsInner {
    height: calc(100vw * (745 / 750) * 0.8);
  }

  #productsDmTop #features .featuresLists06 .featuresListsImg {
    top: calc(100vw * (124 / 750) * 0.6);
    left: calc(100vw * (70 / 750) * 0.6);
    width: calc(100vw * (418 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists06 .featuresListsTtl {
    left: 15px;
    bottom: calc(100vw * (60 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists06 .featuresListsArrow {
    right: 15px;
  }
}

/* .featuresLists07 */
#productsDmTop #features .featuresLists07 .featuresListsInner {
  height: 745px;
  background: linear-gradient(0deg, rgba(0,0,60,1) 0%, rgba(0,0,60,1) 5%, rgba(0,0,0,1) 90%);
}

#productsDmTop #features .featuresLists07 .featuresListsImg {
  top: 104px;
  left: 40px;
  width: 480px;
}

#productsDmTop #features .featuresLists07 .featuresListsTtl {
  left: 60px;
  bottom: 60px;
}

#productsDmTop #features .featuresLists07 .featuresListsArrow {
  left: auto;
  right: 60px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresLists07 .featuresListsInner {
    height: calc(100vw * (745 / 750) * 0.8);
  }

  #productsDmTop #features .featuresLists07 .featuresListsImg {
    top: calc(100vw * (104 / 750) * 0.6);
    left: calc(100vw * (40 / 750) * 0.6);
    width: calc(100vw * (480 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists07 .featuresListsTtl {
    left: 15px;
    bottom: calc(100vw * (60 / 750) * 0.6);
  }

  #productsDmTop #features .featuresLists07 .featuresListsArrow {
    right: 15px;
  }
}

/* -- .featuresComments -- */
#productsDmTop #features .featuresComments {
  padding-top: 100px;
  padding-bottom: 30px;
  color: #b3b3b3;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #features .featuresComments {
    padding-top: 40px;
    padding-bottom: 20px;
  }
}



/**
 * ================================================================================
 * Features Inner Settings
 * ================================================================================
 */

/**
 * Basic Structure
 * -------------------------------
 */

#productsDmTop #featuresInner {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9998;
  width: 100vw;
  height: 100vh;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  background-color: #000;
  color: #fff;
  transition: opacity 0.6s ease-out;
}
body.productsDmFeaturesOpen #productsDmTop #featuresInner {
  visibility: visible;
  opacity: 1;
}

#productsDmTop #featuresInner .featuresBody {
  min-width: 1280px;
  overflow-x: hidden;
}

#productsDmTop #featuresInner .featuresClose {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  width: 100px;
  height: 100px;
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.8);
  transition: opacity 0.2s ease-in;
}

#productsDmTop #featuresInner .featuresClose:hover {
  opacity: 0.6;
}

#productsDmTop #featuresInner .featuresClose > span {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}

#productsDmTop #featuresInner .featuresClose > span::before,
#productsDmTop #featuresInner .featuresClose > span::after {
  content: "";
  background-color: #fff;
  width: 60px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  }
#productsDmTop #featuresInner .featuresClose > span::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
#productsDmTop #featuresInner .featuresClose > span::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .featuresBody {
    min-width: 100%;
  }
  
  #productsDmTop #featuresInner .featuresClose {
    width: 40px;
    height: 40px;
  }

  #productsDmTop #featuresInner .featuresClose:hover {
    opacity: 1;
  }

  #productsDmTop #featuresInner .featuresClose > span::before,
  #productsDmTop #featuresInner .featuresClose > span::after {
    width: 25px;
    height: 2px;
  }
}


/**
 * Common
 * -------------------------------
 */

#productsDmTop #featuresInner .features {
  position: relative;
  z-index: 1;
}

/* -- .featuresTtl -- */
#productsDmTop #featuresInner .featuresTtl {
  position: relative;
  z-index: 1;
}

#productsDmTop #featuresInner .featuresTtl > span {
  display: block;
}

#productsDmTop #featuresInner .featuresTtlNum {
  position: absolute;
  z-index: -1;
  text-align: center;
}

#productsDmTop #featuresInner .featuresTtlMain {
  font-size: 6.0rem;
  font-weight: 700;
  line-height: 1.4;
}

#productsDmTop #featuresInner .featuresTtlMain > small {
  display: block;
  margin-top: 30px;
  font-size: 1.5rem;
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .featuresTtlMain {
    font-size: 2.2rem;
  }
  
  #productsDmTop #featuresInner .featuresTtlMain > small {
    margin-top: calc(30px * 0.3);
    font-size: 1.1rem;
  }
}

/* -- .featuresTtl01 -- */
#productsDmTop #featuresInner .featuresTtl01 > * {
  display: inline-block;
  background: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #0000f7;
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .featuresTtl01 > * {
    font-size: 1.8rem;
  }
}

/* -- .featuresTtl02 -- */
#productsDmTop #featuresInner .featuresTtl02 > * {
  display: inline-block;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .featuresTtl02 > * {
    font-size: 1.8rem;
  }
}

/* -- .featuresTxt01 -- */
#productsDmTop #featuresInner .featuresTxt01 > * {
  display: inline-block;
  background: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #0000f7;
  font-size: 2.0rem;
  font-weight: 500;
  line-height: 1.8;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .featuresTxt01 > * {
    font-size: 1.2rem;
    line-height: 1.6;
  }
}

/* -- .featuresTxt02 -- */
#productsDmTop #featuresInner .featuresTxt02 > * {
  display: inline-block;
  color: #aaa;
  font-size: 2.0rem;
  font-weight: 500;
  line-height: 1.8;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .featuresTxt02 > * {
    font-size: 1.2rem;
    line-height: 1.6;
  }
}

/* -- .featuresDl -- */
#productsDmTop #featuresInner .featuresDl {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  color: #aaa;
}
#productsDmTop #featuresInner .featuresDl.featuresDlRev {
  flex-direction: row-reverse;
}

#productsDmTop #featuresInner .featuresDl > dt {
  display: block;
}

#productsDmTop #featuresInner .featuresDl > dd {
  display: block;
  text-align: left;
}
#productsDmTop #featuresInner .featuresDl.featuresDlRev > dd {
  text-align: right;
}

#productsDmTop #featuresInner .featuresDlTtl {
  color: #fff;
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.4;
}

#productsDmTop #featuresInner .featuresDlTtl > small {
  display: block;
  margin-top: 5px;
  font-size: 1.8rem;
  font-weight: 600;
}

#productsDmTop #featuresInner .featuresDlInner {
  display: inline-block;
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid #fff;
}

#productsDmTop #featuresInner .featuresDlInner > .p-comments {
  margin-top: 30px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .featuresDl {
    display: block;
  }

  #productsDmTop #featuresInner .featuresDl > dt {
    display: block;
    margin-top: 20px;
    text-align: center !important;
  }

  #productsDmTop #featuresInner .featuresDl > dd,
  #productsDmTop #featuresInner .featuresDl.featuresDlRev > dd {
    text-align: center !important;
  }

  #productsDmTop #featuresInner .featuresDlTtl {
    font-size: 1.8rem;
  }
  
  #productsDmTop #featuresInner .featuresDlTtl > small {
    margin-top: 3px;
    font-size: 1.1rem;
  }

  #productsDmTop #featuresInner .featuresDlInner {
    padding-top: 10px;
    margin-top: 10px;
  }

  #productsDmTop #featuresInner .featuresDlInner > .p-comments {
    margin-top: 15px;
  }
}


/**
 * Features01
 * -------------------------------
 */

#productsDmTop #featuresInner .features01 {
  padding-top: 420px;
}

#productsDmTop #featuresInner .features01::before {
  position: absolute;
  top: 470px;
  left: 50%;
  z-index: -2;
  transform: translateX(-50%);
  width: 100vw;
  height: 1180px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features01-01-bg.png');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% 100%;
  content: '';
}

#productsDmTop #featuresInner .features01::after {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  height: 920px;
  background: linear-gradient(20deg, rgba(0,0,132,0) 55%, rgba(0,68,255,1) 100%);
  content: '';
}

#productsDmTop #featuresInner .features01 .featuresTtlNum {
  top: -250px;
  left: -25px;
  width: 556px;
  height: 600px;
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  #productsDmTop #featuresInner .features01::before {
    width: 1280px;
  }
}
@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features01 {
    padding-top: calc(420px * 0.3);
  }

  #productsDmTop #featuresInner .features01::before {
    top: calc(470px * 0.3);
    width: 100vw;
    height: calc(1180px * 0.3);
  }

  #productsDmTop #featuresInner .features01::after {
    height: calc(920px * 0.3);
  }

  #productsDmTop #featuresInner .features01 .featuresTtlNum {
    top: calc(-250px * 0.3);
    left: calc(-25px * 0.3);
    width: calc(556px * 0.3);
    height: calc(600px * 0.3);
  }
}

/* -- .features01-01 -- */
#productsDmTop #featuresInner .features01-01 {
  position: relative;
  z-index: 1;
  margin-top: 60px;
  text-align: center;
}

#productsDmTop #featuresInner .features01-01 > dt {
  display: block;
  margin-left: -50px;
  margin-right: -50px;
}

#productsDmTop #featuresInner .features01-01 > dd {
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features01-01 {
    margin-top: calc(60px * 0.4);
  }

  #productsDmTop #featuresInner .features01-01 > dt {
    margin-left: 0;
    margin-right: 0;
  }

  #productsDmTop #featuresInner .features01-01 > dd {
    margin-top: calc(60px * 0.4);
  }
}

/* -- .features01-02 -- */
#productsDmTop #featuresInner .features01-02 {
  position: relative;
  z-index: 1;
  margin-top: 100px;
  padding-bottom: 210px;
}

#productsDmTop #featuresInner .features01-02::before {
  position: absolute;
  bottom: 70px;
  left: -60px;
  z-index: -1;
  width: 1200px;
  height: 183px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features01-02-bg.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features01-02 > dt {
  display: block;
  padding-left: 105px;
  margin-right: -60px;
}

#productsDmTop #featuresInner .features01-02 > dd {
  position: absolute;
  bottom: 420px;
  left: 0;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features01-02 {
    margin-top: calc(100px * 0.4);
    padding-bottom: calc(210px * 0.4);
  }

  #productsDmTop #featuresInner .features01-02::before {
    bottom: calc(70px * 0.4);
    left: 50%;
    transform: translateX(-50%);
    width: calc(1200px * 0.3);
    height: calc(183px * 0.3);
  }

  #productsDmTop #featuresInner .features01-02 > dt {
    padding-left: calc(105px * 0.4);
    margin-right: calc(-60px * 0.4);
  }

  #productsDmTop #featuresInner .features01-02 > dd {
    bottom: calc(420px * 0.3);
  }
}

/* -- .features01-03 -- */
#productsDmTop #featuresInner .features01-03 > dt {
  display: block;
  margin-left: -260px;
  margin-right: -260px;
}

#productsDmTop #featuresInner .features01-03 > dd {
  margin-top: -335px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features01-03 > dt {
    margin-left: calc(-260px * 0.2);
    margin-right: calc(-260px * 0.2);
  }

  #productsDmTop #featuresInner .features01-03 > dd {
    margin-top: calc(-335px * 0.28);
  }
}

/* -- .features01-04 -- */
#productsDmTop #featuresInner .features01-04 {
  position: relative;
  z-index: 1;
  margin-top: 170px;
  padding-bottom: calc(100vw * (375 / 1600));
}

#productsDmTop #featuresInner .features01-04::before {
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: -1;
  transform: translateX(-50%);
  width: 100vw;
  height: calc(100vw * (890 / 1600));
  background: linear-gradient(180deg, rgba(0,0,75,0) 0%, rgba(0,0,75,1) 50%, rgba(0,0,175,1) 100%);
  content: '';
}

#productsDmTop #featuresInner .features01-04Slider {
  width: 670px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 85px;
}

#productsDmTop #featuresInner .features01-04Slider .slick-dots {
  flex-wrap: nowrap;
  top: -85px;
  z-index: 1;
  width: auto;
  height: 46px;
  padding: 3px;
  border-radius: 1000px;
  background-color: #3c3c3c;
}

#productsDmTop #featuresInner .features01-04Slider .slick-dots > li {
  margin: 0;
}

#productsDmTop #featuresInner .features01-04Slider .slick-dots > li > button {
  width: auto;
  height: 40px;
  border-radius: 1000px;
  background-color: transparent;
  color: #fff;
  text-indent: 0;
}
#productsDmTop #featuresInner .features01-04Slider .slick-dots > li.slick-active > button {
  background-color: #fff;
  color: #000;
}

#productsDmTop #featuresInner .features01-04Slider .slick-dots > li > button:before {
  display: inline-block;
  position: static;
  transform: translate(0, 0);
  width: auto;
  height: auto;
  padding: 0 20px; 
  background-color: transparent;
  font-size: 1.5rem;
  line-height: 1;
  white-space: nowrap;
}
#productsDmTop #featuresInner .features01-04Slider .slick-dots > li:nth-of-type(1) > button:before {
  content: '常時録画';
}
#productsDmTop #featuresInner .features01-04Slider .slick-dots > li:nth-of-type(2) > button:before {
  content: '録画OFF';
}
#productsDmTop #featuresInner .features01-04Slider .slick-dots > li:nth-of-type(3) > button:before {
  content: '衝撃録画';
}

#productsDmTop #featuresInner .features01-04 .featuresTxt02 {
  margin-top: 30px;
}

#productsDmTop #featuresInner .features01-04 .featuresTxt02 > * {
  text-align: left;
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  #productsDmTop #featuresInner .features01-04 {
    padding-bottom: calc(1280px * (375 / 1600));
  }
  
  #productsDmTop #featuresInner .features01-04::before {
    width: 1280px;
    height: calc(1280px * (890 / 1600));
  }
}
@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features01-04 {
    margin-top: calc(170px * 0.5);
    padding-bottom: calc(100vw * (375 / 750) * 0.6);
  }

  #productsDmTop #featuresInner .features01-04::before {
    height: calc(890px * 0.4);
  }

  #productsDmTop #featuresInner .features01-04Slider {
    width: 100%;
    padding-top: calc(85px * 0.4);
    padding-left: 20px;
    padding-right: 20px;
  }

  #productsDmTop #featuresInner .features01-04Slider .slick-dots {
    top: calc(-85px * 0.6);
    height: 30px;
    padding: 2px;
  }

  #productsDmTop #featuresInner .features01-04Slider .slick-dots > li > button {
    height: 26px;
  }

  #productsDmTop #featuresInner .features01-04Slider .slick-dots > li > button:before {
    padding: 0 calc(20px * 0.4);
    font-size: 1.1rem;
  }

  #productsDmTop #featuresInner .features01-04 .featuresTxt02 {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: calc(30px * 0.5);
  }
}


/**
 * Features02
 * -------------------------------
 */

#productsDmTop #featuresInner .features02 {
  position: relative;
  transform: skewY(-14deg);
  margin-top: calc(100vw * (-200 / 1600));
  padding-top: calc(100vw * (280 / 1600));
  overflow: hidden;
  background-color: #000;
}

#productsDmTop #featuresInner .features02Inner {
  z-index: 1;
  transform: skewY(14deg);
}

#productsDmTop #featuresInner .features02Inner::before {
  position: absolute;
  top: -315px;
  left: 50%;
  transform: translateX(-50%);
  margin-left: -140px;
  z-index: -1;
  width: 1390px;
  height: 2012px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features02-bg.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features02 .featuresTtlNum {
  top: -180px;
  right: -60px;
  width: 612px;
  height: 524px;
}

@media only screen and (min-width: 1600px) {
  #productsDmTop #featuresInner .features02 {
    padding-top: calc(1600px * (280 / 1600));
  }
}
@media only screen and (min-width: 768px) and (max-width: 1279px) {
  #productsDmTop #featuresInner .features02 {
    margin-top: calc(1280px * (-200 / 1600));
    padding-top: calc(1280px * (280 / 1600));
  }
}
@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features02 {
    margin-top: calc(100vw * (-200 / 750) * 0.5);
    padding-top: calc(100vw * (280 / 750) * 0.6);
  }

  #productsDmTop #featuresInner .features02Inner::before {
    top: calc(-315px * 0.3);
    margin-left: calc(-140px * 0.3);
    width: calc(1390px * 0.3);
    height: calc(2012px * 0.3);
  }

  #productsDmTop #featuresInner .features02 .featuresTtlNum {
    top: calc(-180px * 0.3);
    right: calc(-60px * 0.3);
    width: calc(612px * 0.3);
    height: calc(524px * 0.3);
  }
}

/* -- .features02-01 -- */
#productsDmTop #featuresInner .features02-01 {
  position: relative;
  z-index: 2;
  margin-top: 80px;
}

#productsDmTop #featuresInner .features02-01::before {
  position: absolute;
  top: 155px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 1256px;
  height: 175px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features02-01-bg.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features02-01 > dt {
  display: block;
  padding-right: 400px;
  margin-left: -40px;
}

#productsDmTop #featuresInner .features02-01 > dd {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%);
  margin-top: 20px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features02-01 {
    margin-top: calc(80px * 0.3);
  }

  #productsDmTop #featuresInner .features02-01::before {
    top: calc(155px * 0.3);
    width: calc(1256px * 0.3);
    height: calc(175px * 0.3);
  }

  #productsDmTop #featuresInner .features02-01 > dt {
    padding-right: calc(400px * 0.35);
    margin-left: 0;
  }

  #productsDmTop #featuresInner .features02-01 > dd {
    margin-top: calc(20px * 0.3);
    left: 45%;
  }
}

/* -- .features02-02 -- */
#productsDmTop #featuresInner .features02-02 {
  position: relative;
  z-index: 1;
  margin-top: -330px;
  padding-bottom: 120px;
}

#productsDmTop #featuresInner .features02-02::before {
  position: absolute;
  bottom: -1200px;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: 2000px;
  height: 2000px;
  background: radial-gradient(circle, rgba(0,0,75,1) 0%, rgba(0,0,0,0) 60%);
  content: '';
}

#productsDmTop #featuresInner .features02-02 > dt {
  display: block;
  padding-left: 470px;
  margin-right: -240px;
}

#productsDmTop #featuresInner .features02-02 > dd {
  position: absolute;
  bottom: 160px;
  left: 90px;
  margin-top: 20px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features02-02 {
    margin-top: calc(-330px * 0.2);
    padding-bottom: calc(120px * 0.3);
  }

  #productsDmTop #featuresInner .features02-02::before {
    bottom: calc(-1200px * 0.3);
    width: calc(2000px * 0.3);
    height: calc(2000px * 0.3);
  }

  #productsDmTop #featuresInner .features02-02 > dt {
    padding-left: calc(470px * 0.3);
    margin-right: calc(-240px * 0.3);
  }

  #productsDmTop #featuresInner .features02-02 > dd {
    bottom: calc(160px * 0.3);
    left: 0;
    margin-top: calc(20px * 0.3);
  }
}

/* -- .features02-03 -- */
#productsDmTop #featuresInner .features02-03 {
  position: relative;
  z-index: 2;
  padding-top: 110px;
  padding-bottom: 120px;
  background-color: #000;
}

#productsDmTop #featuresInner .features02-03Inner > dt > span {
  position: relative;
  padding-bottom: 10px;
}

#productsDmTop #featuresInner .features02-03Inner > dt > span::after {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%);
  content: '';
}

#productsDmTop #featuresInner .features02-03Inner dl {
  display: flex;
  align-items: center;
  margin-top: -70px;
}

#productsDmTop #featuresInner .features02-03Inner dl > dt {
  display: block;
  width: 770px;
  margin-left: -100px;
}

#productsDmTop #featuresInner .features02-03 .p-comments {
  margin-top: -10px;
  text-align: center;
}

#productsDmTop #featuresInner .features02-03 .p-btns {
  margin-top: 90px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features02-03 {
    padding-top: calc(110px * 0.3);
    padding-bottom: calc(120px * 0.3);
  }

  #productsDmTop #featuresInner .features02-03Inner > dt > span {
    padding-bottom: calc(10px * 0.3);
  }

  #productsDmTop #featuresInner .features02-03Inner dl {
    display: block;
    margin-top: calc(-70px * 0.4);
  }

  #productsDmTop #featuresInner .features02-03Inner dl > dt {
    width: 100%;
    margin-left: 0;
  }
  
  #productsDmTop #featuresInner .features02-03Inner dl > dd {
    margin-top: -10px;
    text-align: center;
  }

  #productsDmTop #featuresInner .features02-03 .p-comments {
    margin-top: 20px;
    padding-left: 40px;
    padding-right: 40px;
    text-align: left;
  }

  #productsDmTop #featuresInner .features02-03 .p-btns {
    margin-top: calc(90px * 0.3);
  }
}

/* -- .features02-04 -- */
#productsDmTop #featuresInner .features02-04 {
  padding-bottom: 1500px;
  text-align: center;
}

#productsDmTop #featuresInner .features02-04 > dt {
  display: block;
  margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features02-04 {
    padding-bottom: calc(1500px * 0.3);
  }

  #productsDmTop #featuresInner .features02-04 > dt {
    margin-bottom: calc(15px * 0.3);
  }
}


/**
 * Features03
 * -------------------------------
 */

#productsDmTop #featuresInner .features03 {
  position: relative;
  z-index: 2;
  padding-top: 430px;
  margin-top: -1500px;
  background-color: #000;
}

#productsDmTop #featuresInner .features03::before {
  position: absolute;
  left: 50%;
  top: 170px;
  z-index: -1;
  transform: translateX(-50%);
  width: 1200px;
  height: 260px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features03-bg.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features03 .featuresTtlNum {
  top: -180px;
  left: -60px;
  width: 596px;
  height: 510px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features03 {
    padding-top: calc(430px * 0.3);
    margin-top: calc(-1500px * 0.3);
  }

  #productsDmTop #featuresInner .features03::before {
    top: calc(170px * 0.3);
    width: calc(1200px * 0.3);
    height: calc(260px * 0.3);
  }

  #productsDmTop #featuresInner .features03 .featuresTtlNum {
    top: calc(-180px * 0.3);
    left: calc(-60px * 0.3);
    width: calc(596px * 0.3);
    height: calc(510px * 0.3);
  }
}

/* -- .features03-01 -- */
#productsDmTop #featuresInner .features03-01 {
  margin: 190px -60px 0 -60px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features03-01 {
    margin: calc(190px * 0.3) 0 0 0;
  }
}

/* -- .features03-02 -- */
#productsDmTop #featuresInner .features03-02 {
  margin-top: 135px; 
}

#productsDmTop #featuresInner .features03-02 .featuresDl {
  margin-top: 85px;
}
#productsDmTop #featuresInner .features03-02 .featuresDl:nth-of-type(1) {
  margin-top: 0;
}

#productsDmTop #featuresInner .features03-02 .featuresDl > dt {
  width: 44.25%;
}

#productsDmTop #featuresInner .features03-02 .featuresDl > dd {
  width: 55.75%;
  padding-left: 110px;
}
#productsDmTop #featuresInner .features03-02 .featuresDl.featuresDlRev > dd {
  padding-right: 110px;
  padding-left: 0;
}

#productsDmTop #featuresInner .features03-02 .features03-02-02 > dd > p {
  margin-top: 20px;
  margin-right: -80px;
}

#productsDmTop #featuresInner .features03-02 .features03-02-02 > dd img {
  width: 462px;
}

#productsDmTop #featuresInner .features03-02 .features03-02-04 > dt .featuresTxt02 {
  display: block;
  margin-top: 10px;
  text-align: center;
}

#productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01 {
  display: inline-block;
  position: relative;
  padding: 15px 30px;
  border: 1px solid;
  border-image: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%) 1;
  margin-top: 20px;
}

#productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01::before,
#productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01::after {
  position: absolute;
  width: 30px;
  content: '';
}

#productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01::before {
  top: -1px;
  left: -31px;
  height: calc(100% + 2px);
  background: linear-gradient(to top right, rgba(255,255,255,0) 50%, #8ab8ff 50.5%) no-repeat bottom left/100% 50%, linear-gradient(to bottom right, rgba(255,255,255,0) 50%, #8ab8ff 50.5%) no-repeat top right/100% 50%;
}

#productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01::after {
  top: 0;
  left: -30px;
  height: 100%;
  background: linear-gradient(to top right, rgba(255,255,255,0) 50%, #000 50.5%) no-repeat bottom left/100% 50%, linear-gradient(to bottom right, rgba(255,255,255,0) 50%, #000 50.5%) no-repeat top right/100% 50%;
}

#productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01 > span {
  font-size: 2.3rem;
}

#productsDmTop #featuresInner .features03-02 .features03-02-04 dl > dd {
  margin-top: 5px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features03-02 {
    margin-top: calc(135px * 0.3); 
  }

  #productsDmTop #featuresInner .features03-02 .featuresDl {
    margin-top: calc(85px * 0.3); 
  }

  #productsDmTop #featuresInner .features03-02 .featuresDl > dt {
    width: 100%;
  }

  #productsDmTop #featuresInner .features03-02 .featuresDl > dd {
    width: 100%;
    padding-left: 0;
  }
  #productsDmTop #featuresInner .features03-02 .featuresDl.featuresDlRev > dd {
    padding-right: 0;
  }

  #productsDmTop #featuresInner .features03-02 .features03-02-02 > dd > p {
    margin-top: calc(20px * 0.3); 
    margin-right: 0;
  }

  #productsDmTop #featuresInner .features03-02 .features03-02-02 > dd img {
    width: 80%;
  }

  #productsDmTop #featuresInner .features03-02 .features03-02-04 > dt .featuresTxt02 {
    margin-top: calc(10px * 0.3); 
  }
  
  #productsDmTop #featuresInner .features03-02 .features03-02-04 dl {
    margin-top: 15px;
  }

  #productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01 {
    padding: calc(15px * 0.3) calc(30px * 0.3); 
    margin-top: calc(20px * 0.3); 
  }

  #productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01::before,
  #productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01::after {
    display: none;
  }

  #productsDmTop #featuresInner .features03-02 .features03-02-04 dl .featuresTtl01 > span {
    font-size: 1.4rem;
  }

  #productsDmTop #featuresInner .features03-02 .features03-02-04 dl > dd {
    margin-top: calc(5px * 0.3); 
  }
}

/* -- .features03-03 -- */
#productsDmTop #featuresInner .features03-03 {
  margin-top: 110px;
  text-align: center;
}

#productsDmTop #featuresInner .features03-03 .p-btns {
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features03-03 {
    margin-top: calc(110px * 0.3);
  }

  #productsDmTop #featuresInner .features03-03 .p-btns {
    margin-top: calc(60px * 0.3);
  }
}


/**
 * Features04
 * -------------------------------
 */

#productsDmTop #featuresInner .features04 {
  position: relative;
  z-index: 1;
  padding-top: 520px;
  background-color: #030555;
}

#productsDmTop #featuresInner .features04::before {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -2;
  width: 100%;
  height: 822px;
  background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,75,1) 65%, rgba(3,5,85,1) 100%);
  content: '';
}

#productsDmTop #featuresInner .features04::after {
  position: absolute;
  top: 250px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 1197px;
  height: 160px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features04-bg.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features04 .featuresTtlNum {
  top: -175px;
  right: -60px;
  width: 593px;
  height: 524px;
}

#productsDmTop #featuresInner .features04 .featuresTtlMain {
  margin-left: -60px;
  margin-right: -60px;
}

#productsDmTop #featuresInner .features04Inner {
  padding-top: 100px;
  padding-bottom: 155px;
  background-color: #000;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features04 {
    padding-top: calc(520px * 0.3);
  }

  #productsDmTop #featuresInner .features04::before {
    height: calc(822px * 0.3);
  }

  #productsDmTop #featuresInner .features04::after {
    top: calc(250px * 0.3);
    width: calc(1197px * 0.3);
    height: calc(160px * 0.3);
  }

  #productsDmTop #featuresInner .features04 .featuresTtlNum {
    top: calc(-175px * 0.3);
    right: calc(-60px * 0.3);
    width: calc(593px * 0.3);
    height: calc(524px * 0.3);
  }
  
  #productsDmTop #featuresInner .features04 .featuresTtlMain {
    margin-left: 0;
    margin-right: 0;
  }
  
  #productsDmTop #featuresInner .features04Inner {
    padding-top: calc(100px * 0.3);
    padding-bottom: calc(155px * 0.3);
  }
}

/* -- .features04-01 -- */
#productsDmTop #featuresInner .features04-01 {
  position: relative;
  z-index: 2;
  margin: 170px -30px 0 -30px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features04-01 {
    margin: calc(170px * 0.1) 0 0 0;
  }
}

/* -- .features04-02 -- */
#productsDmTop #featuresInner .features04-02 .featuresDlTtl {
  color: #fff;
}

#productsDmTop #featuresInner .features04-02-01 {
  margin: 90px -60px 0 -200px;
}

#productsDmTop #featuresInner .features04-02-01 > dt {
  width: 860px;
}

#productsDmTop #featuresInner .features04-02-01.featuresDlRev > dd {
  flex: 1;
  padding-left: 60px;
  text-align: left;
}

#productsDmTop #featuresInner .features04-02-01 > dd .featuresTxt02 + p {
  margin-top: 50px;
}

#productsDmTop #featuresInner .features04-02-01 > dd .featuresTxt02 + p img {
  width: 226px;
}

#productsDmTop #featuresInner .features04-02-02 {
  justify-content: center;
  margin-top: 100px;
}

#productsDmTop #featuresInner .features04-02-02 > dt,
#productsDmTop #featuresInner .features04-02-02 > dd {
  text-align: center;
}

#productsDmTop #featuresInner .features04-02-02 > dt {
  margin-top: 40px;
}

#productsDmTop #featuresInner .features04-02-03 {
  margin: 60px -60px 0 -60px;
}

#productsDmTop #featuresInner .features04-02-03 > dt {
  width: 600px;
}

#productsDmTop #featuresInner .features04-02-03.featuresDlRev > dd {
  flex: 1;
  padding-left: 110px;
  text-align: left;
}

#productsDmTop #featuresInner .features04-02-04 {
  margin: 65px -120px 0 -60px;
}

#productsDmTop #featuresInner .features04-02-04 > dt {
  width: 830px;
}

#productsDmTop #featuresInner .features04-02-04 > dd {
  flex: 1;
}

#productsDmTop #featuresInner .features04-03 {
  margin-left: -60px;
  margin-right: -60px;
  text-align: center;
}

#productsDmTop #featuresInner .features04-03 .featuresTxt02 {
  margin-top: 20px;
}

#productsDmTop #featuresInner .features04-03Slider {
  margin: 50px 60px 0 60px;
}

#productsDmTop #featuresInner .features04-03Slider .slick-dots {
  bottom: 100px;
}

#productsDmTop #featuresInner .features04-03SliderInner > dt {
  display: block;
}

#productsDmTop #featuresInner .features04-03SliderInner > dd {
  margin-top: 120px;
}

#productsDmTop #featuresInner .features04-03SliderInner > dd > p {
  display: inline-flex;
  align-items: center;
  padding: 10px 50px;
  border: 1px solid #fff;
}

#productsDmTop #featuresInner .features04-03SliderInner > dd > p > span {
  display: inline-block;
  line-height: 1.3;
}

#productsDmTop #featuresInner .features04-03SliderInner > dd > p > span:nth-of-type(1) {
  font-size: 3.0rem;
}

#productsDmTop #featuresInner .features04-03SliderInner > dd > p > span:nth-of-type(2) {
  margin-left: 20px;
  color: #aaa;
  font-size: 1.5rem;
}

#productsDmTop #featuresInner .features04-04 {
  margin-top: 100px;
  text-align: center;
}

#productsDmTop #featuresInner .features04-04Slider {
  margin-top: 40px;
  margin-bottom: 40px;
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots {
  bottom: auto;
  left: auto;
  top: -90px;
  right: 150px;
  transform: translateX(0);
  width: 96px;
  height: 56px;
  border-radius: 1000px;
  background-color: #4f5050;
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots > li {
  width: 42px;
  height: 42px;
  margin: 0;
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots > li > button {
  width: 100%;
  height: 100%;
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots > li > button:before,
#productsDmTop #featuresInner .features04-04Slider .slick-dots > li > button:after {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(0, 0);
  width: 100%;
  height: 100%;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
  transition: opacity 0.2s ease-in;
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots > li > button:before {
  opacity: 1;
  visibility: visible;
}
#productsDmTop #featuresInner .features04-04Slider .slick-dots > li.slick-active > button:before {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots > li > button:after {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  
}
#productsDmTop #featuresInner .features04-04Slider .slick-dots > li.slick-active > button:after {
  opacity: 1;
  visibility: visible;
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots > li:nth-of-type(1) > button:before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features04-04-icon01-off.svg');
}
#productsDmTop #featuresInner .features04-04Slider .slick-dots > li:nth-of-type(1) > button:after {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features04-04-icon01-on.svg');
}

#productsDmTop #featuresInner .features04-04Slider .slick-dots > li:nth-of-type(2) > button:before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features04-04-icon02-off.svg');
}
#productsDmTop #featuresInner .features04-04Slider .slick-dots > li:nth-of-type(2) > button:after {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features04-04-icon02-on.svg');
}

#productsDmTop #featuresInner .features04-04 .p-comments {
  margin-top: 30px;
  color: #aaa;
}

#productsDmTop #featuresInner .features04-05 {
  margin-top: 90px;
  text-align: center;
}

#productsDmTop #featuresInner .features04-05 .featuresTxt02 {
  margin-top: 20px;
}

#productsDmTop #featuresInner .features04-05Dl > dt {
  display: block;
  margin-bottom: 30px;
  text-align: center;
}

#productsDmTop #featuresInner .features04-05Dl > dt > span {
  display: inline-block;
  min-width: 580px;
  padding: 5px;
  background-color: #00003c;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
}

#productsDmTop #featuresInner .features04-05-01 {
  margin-top: 40px;
}

#productsDmTop #featuresInner .features04-05-02 {
  margin-top: 50px;
}

#productsDmTop #featuresInner .features04-05-02 .p-cols {
  margin-left: -65px;
}

#productsDmTop #featuresInner .features04-05-02 .p-col {
  padding-left: 65px;
}

#productsDmTop #featuresInner .features04-05-02 .p-col > div {
  border: 1px solid #d8dee4;
}

#productsDmTop #featuresInner .features04-05-02 .p-comments {
  margin-top: 20px;
  color: #aaa;
  font-size: 1.5rem;
  text-align: left;
}

#productsDmTop #featuresInner .features04-05-03 {
  margin-top: 70px;
}

#productsDmTop #featuresInner .features04-05-03Slider {
  margin-left: 75px;
  margin-right: 75px;
  padding-bottom: 110px;
}

#productsDmTop #featuresInner .features04-05-03Slider .slick-dots {
  width: 328px;
  height: 52px;
  bottom: -80px;
  margin-left: 90px;
  border-radius: 11px;
  background-color: #2d2d2d;
}

#productsDmTop #featuresInner .features04-05-03Slider .slick-dots::before {
  position: absolute;
  left: -180px;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  content: 'リアスモーク設定';
}

#productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li {
  width: 90px;
  height: 40px;
}

#productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li > button {
  width: 100%;
  height: 100%;
  text-indent: 0;
}

#productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li > button::before {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(0, 0);
  width: 100%;
  height: 100%;
  border-radius: 8px;
  background-color: transparent;
  color: #fff;
  font-size: 2.3rem;
  font-weight: 700;
  transition: all 0.2s ease-in;
}
#productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li:nth-of-type(1) > button::before {
  content: '無し';
}
#productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li:nth-of-type(2) > button::before {
  content: '薄い';
}
#productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li:nth-of-type(3) > button::before {
  content: '濃い';
}
#productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li.slick-active > button::before {
  background-color: #ff7000;
}

#productsDmTop #featuresInner .features04-05-03Slider .slick-slide > div {
  border: 1px solid #d8dee4;
  overflow: hidden;
}

#productsDmTop #featuresInner .features04-05-03 .p-comments {
  color: #aaa;
  font-size: 1.5rem;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features04-02-01 {
    margin: calc(90px * 0.3) 0 0 0;
  }

  #productsDmTop #featuresInner .features04-02-01 > dt {
    width: 100%;
  }

  #productsDmTop #featuresInner .features04-02-01.featuresDlRev > dd {
    padding-left: 0;
  }

  #productsDmTop #featuresInner .features04-02-01 > dd .featuresTxt02 + p {
    margin-top: calc(50px * 0.3);
  }

  #productsDmTop #featuresInner .features04-02-01 > dd .featuresTxt02 + p img {
    width: calc(226px * 0.4);
  }

  #productsDmTop #featuresInner .features04-02-02 {
    margin-top: calc(100px * 0.3);
  }

  #productsDmTop #featuresInner .features04-02-02 > dt {
    margin-top: calc(40px * 0.3);
  }

  #productsDmTop #featuresInner .features04-02-03 {
    margin: calc(60px * 0.3) 0 0 0;
  }

  #productsDmTop #featuresInner .features04-02-03 > dt {
    width: 100%;
  }
  
  #productsDmTop #featuresInner .features04-02-03 > dt img {
    width: 80%;
  }

  #productsDmTop #featuresInner .features04-02-03.featuresDlRev > dd {
    padding-left: 0;
  }

  #productsDmTop #featuresInner .features04-02-04 {
    margin: calc(65px * 0.4) 0 0 0;
  }

  #productsDmTop #featuresInner .features04-02-04 > dt {
    width: 100%;
  }

  #productsDmTop #featuresInner .features04-03 {
    margin-left: 0;
    margin-right: 0;
  }

  #productsDmTop #featuresInner .features04-03 .featuresTxt02 {
    margin-top: calc(20px * 0.3);
  }

  #productsDmTop #featuresInner .features04-03Slider {
    margin: calc(50px * 0.3) 20px 0 20px;
  }
  
  #productsDmTop #featuresInner .features04-03Slider .slick-dots {
    bottom: calc(100px * 0.95);
  }

  #productsDmTop #featuresInner .features04-03SliderInner > dd {
    margin-top: calc(120px * 0.4);
  }

  #productsDmTop #featuresInner .features04-03SliderInner > dd > p {
    display: inline-block;
    padding: calc(10px * 0.5)  calc(50px * 0.3);
    text-align: center;
  }

  #productsDmTop #featuresInner .features04-03SliderInner > dd > p > span {
    display: block;
  }

  #productsDmTop #featuresInner .features04-03SliderInner > dd > p > span:nth-of-type(1) {
    font-size: 1.4rem;
  }

  #productsDmTop #featuresInner .features04-03SliderInner > dd > p > span:nth-of-type(2) {
    margin-left: 0;
    margin-top: 5px;
    font-size: 1.1rem;
  }

  #productsDmTop #featuresInner .features04-04 {
    margin-top: calc(100px * 0.4);
  }

  #productsDmTop #featuresInner .features04-04Slider {
    margin-top: calc(40px * 0.6);
    margin-bottom: calc(40px * 0.6);
  }

  #productsDmTop #featuresInner .features04-04Slider .slick-dots {
    top: calc(-90px * 0.55);
    right: 0;
    width: calc(96px * 0.6);
    height: calc(56px * 0.6);
  }

  #productsDmTop #featuresInner .features04-04Slider .slick-dots > li {
    width: calc(42px * 0.6);
    height: calc(42px * 0.6);
  }
  
  #productsDmTop #featuresInner .features04-04 .p-comments {
    margin-top: calc(30px * 0.3);
  }

  #productsDmTop #featuresInner .features04-05 {
    margin-top: calc(90px * 0.4);
  }

  #productsDmTop #featuresInner .features04-05 .featuresTxt02 {
    margin-top: calc(20px * 0.3);
  }

  #productsDmTop #featuresInner .features04-05Dl > dt {
    margin-bottom: calc(30px * 0.4);
  }

  #productsDmTop #featuresInner .features04-05Dl > dt > span {
    min-width: 100%;
    padding: calc(5px * 0.6);
    font-size: 1.3rem;
  }

  #productsDmTop #featuresInner .features04-05-01 {
    margin-top: calc(40px * 0.4);
  }

  #productsDmTop #featuresInner .features04-05-02 {
    margin-top: calc(50px * 0.4);
  }

  #productsDmTop #featuresInner .features04-05-02 .p-cols {
    margin-left: 0;
    margin-top: -15px;
  }

  #productsDmTop #featuresInner .features04-05-02 .p-col {
    padding-left: 0;
    margin-top: 15px;
  }

  #productsDmTop #featuresInner .features04-05-02 .p-comments {
    margin-top: calc(20px * 0.3);
    font-size: 1.1rem;
  }

  #productsDmTop #featuresInner .features04-05-03 {
    margin-top: calc(70px * 0.4);
  }

  #productsDmTop #featuresInner .features04-05-03Slider {
    margin-left: 0;
    margin-right: 0;
    padding-bottom: calc(110px * 0.6);
  }

  #productsDmTop #featuresInner .features04-05-03Slider .slick-dots {
    width: calc(328px * 0.6);
    height: calc(52px * 0.6);
    bottom: calc(-80px * 0.6);
    margin-left: calc(90px * 0.65);
    border-radius: calc(11px * 0.6);
  }

  #productsDmTop #featuresInner .features04-05-03Slider .slick-dots::before {
    left: calc(-180px * 0.65);
    font-size: 1.3rem;
  }

  #productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li {
    width: calc(90px * 0.6);
    height: calc(40px * 0.6);
  }

  #productsDmTop #featuresInner .features04-05-03Slider .slick-dots > li > button::before {
    border-radius: calc(8px * 0.6);
    font-size: 1.3rem;
  }
  
  #productsDmTop #featuresInner .features04-05-03Slider .slick-slide img {
    width: 160%;
    max-width: 160%;
    margin-left: -30%;
  }


  #productsDmTop #featuresInner .features04-05-03 .p-comments {
    font-size: 1.1rem;
    text-align: left;
  }
}


/**
 * Features05
 * -------------------------------
 */

#productsDmTop #featuresInner .features05 {
  position: relative;
  z-index: 1;
  padding-top: 280px;
}

#productsDmTop #featuresInner .features05::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 1200px;
  height: 156px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features05-bg.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features05::after {
  position: absolute;
  top: 660px;
  left: 0;
  z-index: -1;
  transform: skewY(-14deg);
  width: 100%;
  height: 1200px;
  background: linear-gradient(0deg, rgba(0,0,0,0) 35%, rgba(0,0,75,1) 85%, rgba(0,0,175,0.9) 100%);
  content: '';
}

#productsDmTop #featuresInner .features05 .featuresTtlNum {
  top: -160px;
  left: -60px;
  width: 596px;
  height: 496px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features05 {
    padding-top: calc(280px * 0.3);
  }

  #productsDmTop #featuresInner .features05::before {
    width: calc(1200px * 0.3);
    height: calc(156px * 0.3);
  }

  #productsDmTop #featuresInner .features05::after {
    top: calc(660px * 0.3);
    height: calc(1200px * 0.3);
  }

  #productsDmTop #featuresInner .features05 .featuresTtlNum {
    top: calc(-160px * 0.3);
    left: calc(-60px * 0.3);
    width: calc(596px * 0.3);
    height: calc(496px * 0.3);
  }
}

/* -- .features05-01 -- */
#productsDmTop #featuresInner .features05-01 {
  position: relative;
  z-index: 2;
  margin-top: 60px;
  text-align: center;
}

#productsDmTop #featuresInner .features05-01 img {
  width: 636px;
}

#productsDmTop #featuresInner .features05-01::before,
#productsDmTop #featuresInner .features05-01::after {
  position: absolute;
  right: -60px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features05-01::before {
  top: 139px;
  width: 178px;
  height: 67px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_logo-fullhd.svg');
}

#productsDmTop #featuresInner .features05-01::after {
  top: 234px;
  width: 200px;
  height: 57px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_logo-starvis2.svg');
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features05-01 {
    margin-top: calc(60px * 0.3);
  }
  
  #productsDmTop #featuresInner .features05-01 img {
    display: inline-block;
    width: 70%;
    margin-left: -20%;
  }

  #productsDmTop #featuresInner .features05-01::before,
  #productsDmTop #featuresInner .features05-01::after {
    right: 0;
  }

  #productsDmTop #featuresInner .features05-01::before {
    top: calc(139px * 0.35);
    width: calc(178px * 0.35);
    height: calc(67px * 0.35);
  }

  #productsDmTop #featuresInner .features05-01::after {
    top: calc(234px * 0.35);
    width: calc(200px * 0.35);
    height: calc(57px * 0.35);
  }
}

/* -- .features05-02 -- */
#productsDmTop #featuresInner .features05-02 {
  margin: 80px -60px 0 -60px;
}

#productsDmTop #featuresInner .features05-02Inner {
  text-align: center;
}

#productsDmTop #featuresInner .features05-02Inner > dt {
  display: block;
  margin-bottom: 60px;
}

#productsDmTop #featuresInner .features05-02Btn > * {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
  text-align: center;
}

#productsDmTop #featuresInner .features05-02Btn > *::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features05-02Btn > * > span {
  display: inline-block;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.4;
}

#productsDmTop #featuresInner .features05-02Btn01 {
  margin-left: 60px;
}

#productsDmTop #featuresInner .features05-02Btn02 {
  margin-right: 60px;
}

#productsDmTop #featuresInner .features05-02Btn01 > *,
#productsDmTop #featuresInner .features05-02Btn02 > * {
  width: 368px;
  padding: 15px;
  border-radius: 1000px;
  background: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%);
}

#productsDmTop #featuresInner .features05-02Btn01 > *::before,
#productsDmTop #featuresInner .features05-02Btn02 > *::before {
  left: 13px;
  width: 30px;
  height: 30px;
}

#productsDmTop #featuresInner .features05-02Btn01 > *::before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-play01.svg');
}

#productsDmTop #featuresInner .features05-02Btn01 > * > span {
  color: #fff;
}

#productsDmTop #featuresInner .features05-02Btn02 > *::before {
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-play02.svg');
}

#productsDmTop #featuresInner .features05-02Btn02 > *::after {
  position: absolute;
  top: 1px;
  left: 1px;
  z-index: -1;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border-radius: 1000px;
  background-color: #000;
  content: '';
}

#productsDmTop #featuresInner .features05-02Btn02 > * > span {
  background: linear-gradient(90deg, rgba(138,184,255,1) 0%, rgba(0,0,247,1) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #0000f7;
}

#productsDmTop #featuresInner .features05-02Btn03 {
  margin-top: 60px;
  text-align: center;
}

#productsDmTop #featuresInner .features05-02Btn03 > * {
  width: 908px;
  padding: 20px;
  background-color: #fff;
}

#productsDmTop #featuresInner .features05-02Btn03 > *::before {
  width: 44px;
  height: 44px;
  left: 14px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_icon-play01.svg');
}

#productsDmTop #featuresInner .features05-02Btn03 > * > span {
  color: #000;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features05-02 {
    margin: calc(80px * 0.3) 0 0 0;
  }

  #productsDmTop #featuresInner .features05-02Inner > dt {
    margin-bottom: calc(60px * 0.3);
  }

  #productsDmTop #featuresInner .features05-02Btn > * > span {
    font-size: 1.4rem;
  }

  #productsDmTop #featuresInner .features05-02Btn01 {
    margin-left: 0;
    margin-right: 10px;
  }
  
  #productsDmTop #featuresInner .features05-02Btn02 {
    margin-left: 10px;
    margin-right: 0;
  }

  #productsDmTop #featuresInner .features05-02Btn01 > *,
  #productsDmTop #featuresInner .features05-02Btn02 > * {
    width: 100%;
    padding: calc(15px * 0.5) calc(15px * 0.6) calc(15px * 0.5) calc(50px * 0.6);
    text-align: left;
  }

  #productsDmTop #featuresInner .features05-02Btn01 > *::before,
  #productsDmTop #featuresInner .features05-02Btn02 > *::before {
    left: calc(13px * 0.6);
    width: calc(30px * 0.6);
    height: calc(30px * 0.6);
  }

  #productsDmTop #featuresInner .features05-02Btn03 {
    margin-top: calc(60px * 0.3);
  }

  #productsDmTop #featuresInner .features05-02Btn03 > * {
    width: 100%;
    padding: calc(20px * 0.5) calc(50px * 0.6);
  }

  #productsDmTop #featuresInner .features05-02Btn03 > *::before {
    width: calc(44px * 0.6);
    height: calc(44px * 0.6);
    left: calc(14px * 0.6);
  }
}

/* -- .features05-03 -- */
#productsDmTop #featuresInner .features05-03 {
  margin-top: 120px;
}

#productsDmTop #featuresInner .features05-03 .featuresDl > dt {
  width: 44.25%;
}

#productsDmTop #featuresInner .features05-03 .featuresDl > dd {
  width: 55.75%;
  padding-left: 80px;
}
#productsDmTop #featuresInner .features05-03 .featuresDl.featuresDlRev > dd {
  padding-right: 80px;
  padding-left: 0;
}

#productsDmTop #featuresInner .features05-03-01 .featuresDlInner > p {
  margin-top: 60px;
}

#productsDmTop #featuresInner .features05-03-01 .featuresDlInner > p img {
  width: 176px;
}

#productsDmTop #featuresInner .features05-03-02 {
  margin-top: 120px;
}

#productsDmTop #featuresInner .features05-03-02 .featuresDlTtl > small {
  display: inline-block;
}

#productsDmTop #featuresInner .features05-03-02 .featuresDlInner > p {
  margin-top: 35px;
}

#productsDmTop #featuresInner .features05-03-02 .featuresDlInner > p img {
  width: 200px;
}

#productsDmTop #featuresInner .features05-03-02 .featuresDlInner > .p-comments {
  margin-top: 35px;
}

#productsDmTop #featuresInner .features05-03-03 {
  margin-top: 120px;
}

#productsDmTop #featuresInner .features05-04 {
  margin-top: 140px;
}

#productsDmTop #featuresInner .features05-04 > dt {
  display: block;
}

#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(1) {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 50px;
}

#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(1) > h3 {
  padding-right: 60px;
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.4;
}

#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) {
  margin-top: 40px;
}

#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table {
  width: 100%;
  background: linear-gradient(330deg, rgba(0,0,0,1) 50%, rgba(0,0,132,1) 85%, rgba(0,68,255,1) 100%);
}

#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table th,
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table td {
  padding: 10px;
  border: 1px solid #fff;
  font-size: 1.7rem;
  text-align: center;
  vertical-align: middle;
}
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table th:nth-of-type(1),
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table td:nth-of-type(1) {
  border-left-color: #000;
}
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table th:nth-last-of-type(1),
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table td:nth-last-of-type(1) {
  border-right-color: #000;
}
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table tr:nth-of-type(1) th {
  border-top-color: #000;
}
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table tr:nth-last-of-type(1) td,
#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table tr:nth-of-type(2) td:nth-of-type(1) {
  border-bottom-color: #000;
}

#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table tr td:nth-last-of-type(1) {
  border: 1px solid #000;
  background-color: #fff;
  color: #000046;
}

#productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) .p-comments {
  margin-top: 75px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features05-03 {
    margin-top: calc(120px * 0.3);
  }

  #productsDmTop #featuresInner .features05-03 .featuresDl > dt {
    width: 100%;
  }

  #productsDmTop #featuresInner .features05-03 .featuresDl > dd {
    width: 100%;
    padding-left: 0;
    margin-top: 15px;
  }
  #productsDmTop #featuresInner .features05-03 .featuresDl.featuresDlRev > dd {
    padding-right: 0;
    padding-left: 0;
  }

  #productsDmTop #featuresInner .features05-03-01 .featuresDlInner > p {
    margin-top: calc(60px * 0.3);
  }

  #productsDmTop #featuresInner .features05-03-01 .featuresDlInner > p img {
    width: calc(176px * 0.5);
  }

  #productsDmTop #featuresInner .features05-03-02 {
    margin-top: calc(120px * 0.3);
  }

  #productsDmTop #featuresInner .features05-03-02 .featuresDlInner > p {
    margin-top: calc(35px * 0.3);
  }

  #productsDmTop #featuresInner .features05-03-02 .featuresDlInner > p img {
    width: calc(200px * 0.5);
  }

  #productsDmTop #featuresInner .features05-03-02 .featuresDlInner > .p-comments {
    margin-top: calc(35px * 0.3);
  }

  #productsDmTop #featuresInner .features05-03-03 {
    margin-top: calc(120px * 0.3);
  }

  #productsDmTop #featuresInner .features05-04 {
    margin-top: calc(140px * 0.3);
  }

  #productsDmTop #featuresInner .features05-04 > dd:nth-of-type(1) {
    display: block;
    margin-top: calc(50px * 0.3);
    text-align: center;
  }

  #productsDmTop #featuresInner .features05-04 > dd:nth-of-type(1) > h3 {
    padding-right: 0;
    margin-bottom: 5px;
    font-size: 1.8rem;
  }

  #productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) {
    margin-top: calc(40px * 0.3);
  }

  #productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table th,
  #productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) table td {
    padding: 5px;
    font-size: 1.1rem;
  }

  #productsDmTop #featuresInner .features05-04 > dd:nth-of-type(2) .p-comments {
    margin-top: calc(75px * 0.3);
  }
}


/**
 * Features06
 * -------------------------------
 */

#productsDmTop #featuresInner .features06 {
  position: relative;
  z-index: 1;
  padding-top: 370px;
}

#productsDmTop #featuresInner .features06::before {
  position: absolute;
  top: 145px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 1200px;
  height: 326px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features06-bg01.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features06::after {
  position: absolute;
  top: 620px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 100%;
  height: calc(100vw * (1027 / 1600));
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features06-bg02.png');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features06 .featuresTtlNum {
  top: -145px;
  right: -90px;
  width: 616px;
  height: 524px;
}

#productsDmTop #featuresInner .features06 .featuresTtlMain > span {
  font-size: 60%;
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  #productsDmTop #featuresInner .features06::after {
    height: calc(1280px * (1027 / 1600));
  }
}
@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features06 {
    padding-top: calc(370px * 0.3);
  }

  #productsDmTop #featuresInner .features06::before {
    top: calc(145px * 0.3);
    width: calc(1200px * 0.3);
    height: calc(326px * 0.3);
  }

  #productsDmTop #featuresInner .features06::after {
    top: calc(620px * 0.35);
    height: calc(100vw * (1027 / 750) * 0.5);
  }

  #productsDmTop #featuresInner .features06 .featuresTtlNum {
    top: calc(-145px * 0.3);
    right: calc(-90px * 0.3);
    width: calc(616px * 0.3);
    height: calc(524px * 0.3);
  }

  #productsDmTop #featuresInner .features06 .featuresTtlMain > span {
    font-size: 50%;
  }
}

/* -- .features06-01 -- */
#productsDmTop #featuresInner .features06-01 {
  display: flex;
  margin: calc(100vw * (910 / 1600)) -60px 0 -60px;
}

#productsDmTop #featuresInner .features06-01 > dt {
  display: block;
  width: 509px;
}

#productsDmTop #featuresInner .features06-01 > dt > span {
  display: block;
  margin-top: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
}

#productsDmTop #featuresInner .features06-01 > dd {
  flex: 1;
  padding-left: 35px;
}

#productsDmTop #featuresInner .features06-01 > dd .p-cols {
  margin-left: -35px;
}

#productsDmTop #featuresInner .features06-01 > dd .p-col {
  padding-left: 35px;
}

#productsDmTop #featuresInner .features06-01Slider img {
  border: 1px solid #043cb4;
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  #productsDmTop #featuresInner .features06-01 {
    margin-top: calc(1280px * (910 / 1600));
  }
}
@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features06-01 {
    display: block;
    margin: calc(100vw * (910 / 750) * 0.5) 0 0 0;
  }

  #productsDmTop #featuresInner .features06-01 > dt {
    width: 100%;
  }

  #productsDmTop #featuresInner .features06-01 > dt > span {
    margin-top: calc(15px * 0.3);
    font-size: 1.2rem;
  }

  #productsDmTop #featuresInner .features06-01 > dd {
    padding-left: 0;
  }

  #productsDmTop #featuresInner .features06-01 > dd .p-cols {
    margin-left: 0;
  }

  #productsDmTop #featuresInner .features06-01 > dd .p-col {
    padding-left: 0;
    margin-top: 15px;
  }
}


/**
 * Features07
 * -------------------------------
 */

#productsDmTop #featuresInner .features07 {
  position: relative;
  z-index: 1;
  padding-top: 420px;
  padding-bottom: 280px;
}

#productsDmTop #featuresInner .features07::before {
  position: absolute;
  top: 205px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 1200px;
  height: 321px;
  background-image: url('/files/cdb/ZZ/products/d-mirror/top/2412/zz_products_d-mirror_top_features07-bg.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  content: '';
}

#productsDmTop #featuresInner .features07 .featuresTtlNum {
  top: -140px;
  left: -60px;
  width: 594px;
  height: 524px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features07 {
    padding-top: calc(420px * 0.3);
    padding-bottom: calc(280px * 0.3);
  }

  #productsDmTop #featuresInner .features07::before {
    top: calc(205px * 0.3);
    width: calc(1200px * 0.3);
    height: calc(321px * 0.3);
  }

  #productsDmTop #featuresInner .features07 .featuresTtlNum {
    top: calc(-140px * 0.3);
    left: calc(-60px * 0.3);
    width: calc(594px * 0.3);
    height: calc(524px * 0.3);
  }
}

/* -- .features07-01 -- */
#productsDmTop #featuresInner .features07-01 {
  margin: 175px -60px 0 -60px;
}

#productsDmTop #featuresInner .features07-01 > p {
  margin-top: -5px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features07-01 {
    margin: calc(175px * 0.3) -10px 0 -10px;
  }
  
  #productsDmTop #featuresInner .features07-01 > p {
    margin-top: calc(-5px * 0.3);
  }
}

/* -- .features07-02 -- */
#productsDmTop #featuresInner .features07-02 {
  margin: 90px -65px 0 -65px;
}

#productsDmTop #featuresInner .features07-02 .featuresTtl01 {
  margin-bottom: 45px;
}

#productsDmTop #featuresInner .features07-02 .featuresTxt02 {
  margin-top: 40px;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #featuresInner .features07-02 {
    margin: calc(90px * 0.3) -10px 0 -10px;
  }
  
  #productsDmTop #featuresInner .features07-02 .featuresTtl01 {
    margin-bottom: calc(45px * 0.3);
  }
  
  #productsDmTop #featuresInner .features07-02 .featuresTxt02 {
    margin-top: calc(40px * 0.3);
  }
}


/**
 * Floating
 * -------------------------------
 */

#productsDmTop #m-floating > ul { margin-top: -10px; }

#productsDmTop #m-floating > ul > li {
  display: block;
  margin-top: 10px;
}

/* -- .dm-m-floatingYoutube -- */
#productsDmTop .dm-m-floatingYoutube {
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2210/zz_products_d-mirror_top_floating-youtube-bg.svg");
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100% auto;
}

#productsDmTop .dm-m-floatingYoutube > a {
  display: block;
  height: 150px;
  position: relative;
}

#productsDmTop .dm-m-floatingYoutube > a > span {
  padding: 0 10px;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) {
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  flex-wrap: wrap;
  height: 75px;
  margin: 0;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong {
  display: block;
  margin-top: 2px;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong > span {
  display: inline-block;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong > .c-ffRobotoCond {
  color: #ed0038;
  font-size: 24px;
  font-weight: 700;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong > span:nth-of-type(2) {
  font-size: 14px;
  font-weight: 700;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong > span:nth-of-type(3) {
  font-size: 18px;
  font-weight: 900;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(2) {
  display: none;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) {
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  height: 75px;
  padding-right: 45px;
  text-align: left;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) > span {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) > span:after {
  content: "";
  background-image: url("/files/cdb/ZZ/products/d-mirror/top/2210/zz_products_d-mirror_top_floating-icon_arrow01.svg");
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100% auto;
  display: inline-block;
  width: 25px;
  height: 25px;
  position: absolute;
  bottom: -3px;
  right: 7px;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) > span > span {
  display: inline;
  font-size: 10px;
  font-weight: 700;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(4) {
  width: 47px;
  height: 66px;
  margin: 0;
  padding: 0;
  position: absolute;
  right: 5px;
  bottom: 2px;
}

#productsDmTop .da-m-floatingWebinar > a > span > span:nth-of-type(4):before,
#productsDmTop .da-m-floatingWebinar > a > span > span:nth-of-type(4):after {
  display: none;
}

#productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(4) img {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  #productsDmTop #m-floating > ul {
    display: flex;
    align-items: stretch;
    margin-top: 0;
  }

  #productsDmTop #m-floating > ul > li {
    display: inline-block;
    width: 50%;
    margin-top: 0;
    border-left: 1px solid #000;
  }

  #productsDmTop #m-floating > ul > li:nth-of-type(1) {
    border-left: none;
  }

  #productsDmTop #m-floating > ul > li > a {
    height: 100px;
  }

  /* -- .dm-m-floatingYoutube -- */
  #productsDmTop .dm-m-floatingYoutube {
    background-image: none;
    background-color: #ed0038;
  }

  #productsDmTop .dm-m-floatingYoutube > a {
    height: auto;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span {
    padding: 0;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) {
    background-color: #1a1a1a;
    height: 50px;
    padding: 8px 5px;
    color: #fff;
    font-size: 11px;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong {
    margin-top: 3px;
    font-size: 13px;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong > .c-ffRobotoCond {
    font-size: 20px;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong > span:nth-of-type(2) {
    font-size: 10px;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(1) > strong > span:nth-of-type(3) {
    font-size: 15px;
    font-weight: 900;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) {
    display: flex;
    justify-content: center;
    height: 50px;
    padding: 8px 30px 8px 5px;
    text-align: center;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) > span {
    font-size: 14px;
    line-height: 1.3;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) > span:after {
    width: calc(20px * 0.8);
    height: calc(20px * 0.8);
    position: relative;
    top: 3px;
    right: -5px;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(3) > span > span {
    display: inline;
    font-size: 11px;
    font-weight: 700;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(4) {
    width: calc(47px * 0.6);
    height: calc(66px * 0.6);
    right: 3px;
    bottom: 0;
  }

  #productsDmTop .dm-m-floatingYoutube > a > span > span:nth-of-type(4) img {
    width: auto;
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
  }
}



/**
 * ================================================================================
 * Colorbox Settings
 * ================================================================================
 */

#cboxContent {
  padding: 0 !important;
}

#cboxClose {
  top: 0 !important;
  right: 0 !important;
}

#cboxContent .p-modal {
  display: block;
}



/**
 * ================================================================================
 * Other Settings
 * ================================================================================
 */

/* -- Color -- */
.c-fcLblue {
  color: #00afff !important;
}
.c-fcYellow {
  color: #ffff00 !important;
}

