@charset "UTF-8";

/*

 10pix 77%
 11pix 85%
 12pix 93%
 13pix 100%
 14pix 108%
 15pix 116%
 16pix 123.1%
 17pix 131%
 18pix 138.5%
 19pix 146.5%
 20pix 153.9%
 21pix 161.6%

*/

/* ページ全体の設定
=========================================== */
.l-qnap {
  position: relative;
  color: #000;
  font-size: 100%;
  font-weight: 500;
  /* letter-spacing: 0em; */
  font-family: "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .l-qnap {
    font-size: 16px;
  }
}

.l-qnap * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}

@media screen and (min-width: 768px) {
  .l-qnap img {
    width: 100%;
  }
}

.c-view-pc {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-view-pc {
    display: block;
  }

  .c-view-sp {
    display: none;
  }
}

.js-fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: 1s;
  transition: 1s;
}

/* .js-fadeInZoom {
	opacity : 0;
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
	-webkit-transition: 0.5s;
	transition: 0.5s;
}
 */


/* 共通
=========================================== */
/* utility
----------------- */
.u-br-tb-pc {
  display: none;
}

@media print,
screen and (min-width: 768px) {
  .u-br-tb-pc {
    display: block;
  }
}

.u-br-sp-only {
  display: block;
}

@media print,
screen and (min-width: 481px) {
  .u-br-sp-only {
    display: none;
  }
}

.u-br-sp {
  display: block;
}

@media print,
screen and (min-width: 768px) {
  .u-br-sp {
    display: none;
  }
}

.u-br-sp-tb {
  display: block;
}

@media print,
screen and (min-width: 1024px) {
  .u-br-sp-tb {
    display: none;
  }
}

.u-br-tb {
  display: none;
}

@media print,
screen and (min-width: 768px) {
  .u-br-tb {
    display: none;
  }
}

@media print,
screen and (min-width: 1024px) {
  .u-br-tb {
    display: block;
  }
}

@media print,
screen and (min-width: 1400px) {
  .u-br-tb {
    display: none;
  }
}

.u-br-tb-only {
  display: none;
}

@media print,
screen and (min-width: 768px) {
  .u-br-tb-only {
    display: block;
  }
}

@media print,
screen and (min-width: 1024px) {
  .u-br-tb-only {
    display: none;
  }
}

@media print,
screen and (min-width: 1400px) {
  .u-br-tb-only {
    display: none;
  }
}

.u-br-pc {
  display: none;
}

@media print,
screen and (min-width: 1024px) {
  .u-br-pc {
    display: block;
  }
}

.u-br-pcWide {
  display: none;
}

@media print,
screen and (min-width: 1400px) {
  .u-br-pcWide {
    display: block;
  }
}

.u-br-sp-pcWide {
  display: none;
}

@media print,
screen and (min-width: 768px) {
  .u-br-sp-pcWide {
    display: block;
  }
}

@media print,
screen and (min-width: 1400px) {
  .u-br-sp-pcWide {
    display: none;
  }
}

.u-clearfix:after {
  content: "";
  clear: both;
  display: block;
}


/* 共通
=========================================== */
/* sec */
.c-qnap-sec {
  padding-top: 35px;
  padding-bottom: 8vw;
}

@media print,
screen and (min-width: 768px) {
  .c-qnap-sec {
    padding-top: 130px;
    padding-bottom: 160px;
  }
}

/* inner */
.c-qnap-inner {
  padding-right: 5.6%;
  padding-left: 5.6%;
  max-width: 1140px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 1100px) {
  .c-qnap-inner {
    padding-right: 0;
    padding-left: 0;
  }
}


/* タイトル
---------------------------- */
/* フォントスタイル */
.c-qnap-fontStyle01 {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-qnap-fontStyle01 {
    font-size: 46.8px;
    line-height: 1.3;
  }
}

/* タイトルスタイル */
.c-qnap-ttlStyle01Sub {
  font-size: 81%;
}

@media screen and (min-width: 768px) {
  .c-qnap-ttlStyle01Sub {
    font-size: 38px;
  }
}

.c-qnap-ttlStyle01 {
  margin-bottom: 20px;
  font-size: 133%;
}

@media screen and (min-width: 768px) {
  .c-qnap-ttlStyle01 {
    margin-bottom: 0.75em;
    margin-top: 0.75em;
    font-size: 100%;
  }
}



/* リードタイトル下の文言 */
.c-qnap-textLead {
  line-height: 2.0;
  font-size: 93%;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .c-qnap-textLead {
    font-size: 93%;
    line-height: 2.2;
    letter-spacing: 0;
    font-weight: 600;
  }
}

/* タイトル下の文言 */
.c-qnap-textIntro {
  line-height: 2.0;
  font-size: 93%;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .c-qnap-textIntro {
    font-size: 85%;
    line-height: 1.8;
    letter-spacing: 0;
    font-weight: bold;
  }
}

.c-qnap-textLink {
  color: #48BBFF !important;
  text-decoration: underline !important;
  transition: all 0.3s;
}

@media screen and (min-width: 768px) {
  .c-qnap-textLink:hover {
    text-decoration: none !important;
  }
}


/* ボタン
---------------------------- */
/* style01 */
.c-qnap-btnStyle01 {
  position: relative;
  border: 2px solid #27387D;
  border-radius: 100px;
  display: block;
  width: 100%;
  padding: 17px 38px;
  font-size: 108%;
  color: #27387D !important;
  font-weight: bold;
  text-align: center;
  background-color: #fff;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  line-height: 1.4;
  top: 0;
  transition: all 0.3s !important;
}

@media screen and (min-width: 768px) {
  .c-qnap-btnStyle01 {
    font-size: 16px;
  }

  .c-qnap-btnStyle01:hover {
    top: 6px;
    box-shadow: none;
  }
}

.c-qnap-btnStyle01::after {
  content: "";
  display: block;
  border-style: solid;
  border-width: 4.5px 0 4.5px 6.5px;
  border-color: transparent transparent transparent #000;
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .c-qnap-btnStyle01::after {
    border-width: 6.5px 0 6.5px 9px;
    right: 25px;
  }
}

/* style02 */
.c-qnap-btnStyle02Area {
  padding-right: 7%;
  padding-left: 7%;
}

@media screen and (min-width: 768px) {
  .c-qnap-btnStyle02Area {
    padding-right: 0;
    padding-left: 0;
  }
}

.c-qnap-btnStyle02 {
  display: block;
  background-color: #183F92;
  font-size: 123.1%;
  border-radius: 100px;
  font-weight: 700;
  text-align: center;
  position: relative;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  color: #fff !important;
  padding: 15px 36px;
  transition: all 0.3s !important;
}

@media screen and (min-width: 768px) {
  .c-qnap-btnStyle02 {
    font-size: 21px;
    padding: 20px 46px;
    width: 55%;
    max-width: 606px;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    top: 0;
  }

  .c-qnap-btnStyle02:hover {
    position: relative;
    top: 7px;
  }
}

.c-qnap-btnStyle02::after {
  content: "";
  display: block;
  border-style: solid;
  border-width: 4.4px 0 4.4px 6px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .c-qnap-btnStyle02::after {
    border-width: 6.5px 0 6.5px 9px;
    right: 25px;
  }
}


/* おすすめコンテンツ
---------------------------- */
/* コンテンツ */
.c-qnap-recommendContentsWrap {
  padding-right: 0;
  padding-left: 0;
  padding-bottom: 2.5em;
}

@media screen and (min-width: 768px) {
  .c-qnap-recommendContentsWrap {
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 0;
  }
}

.c-qnap-recommendContents {
  background-color: #fff;
  position: relative;
  padding: 20px 5.6% 1.6vw;
  margin-bottom: 5.8vw;
  border-radius: 10px;
}

@media screen and (min-width: 768px) {
  .c-qnap-recommendContents {
    border-width: 6px;
    border-radius: 10px;
    margin-bottom: 70px;
    padding: 85px;
  }
}



.c-qnap-recommendContentsText {
  /* font-size: 123.1%; */
  line-height: 2.0;
}

@media screen and (min-width: 768px) {
  .c-qnap-recommendContentsText {
    /* font-size: 16px; */
    text-align: center;
    line-height: 2.1;
    letter-spacing: 0;
  }
}

/* App */
.c-qnap-recommendContentsApp {
  width: 37.5%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .c-qnap-recommendContentsApp {
    width: 168px;
    margin-right: 30px;
    margin-left: 0;
  }
}

.c-qnap-recommendContentsAppWrap {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .c-qnap-recommendContentsAppWrap {
    display: flex;
    align-items: center;
    margin-bottom: 70px;
  }
}

@media screen and (min-width: 768px) {
  .c-qnap-recommendContentsTtl {
    font-size: 156%;
    line-height: 1.4;
    letter-spacing: 0;
  }

  .c-qnap-recommendContentsTtl::after {
    margin-top: 32px;
  }
}


/* リスト */
.c-qnap-listItem {
  display: flex;
}

.c-qnap-listItem:not(:last-child) {
  margin-bottom: 3px;
}

@media screen and (min-width: 768px) {
  .c-qnap-listItem:not(:last-child) {
    margin-bottom: 8px;
  }
}

.c-qnap-listItem::before {
  content: "";
  background: url(../img/icon_list_01.svg) no-repeat center center / contain;
  width: 10px;
  height: 10px;
  margin-top: 5px;
  margin-right: 5px;
}

@media screen and (min-width: 768px) {
  .c-qnap-listItem::before {
    width: 19px;
    height: 19px;
    margin-right: 11px;
  }
}

.c-qnap-listItemText {
  width: 94%;
}

@media screen and (min-width: 768px) {
  .c-qnap-listItemText {
    width: 91%;
  }
}



/* l-gnap-nav
=========================================== */
.l-gnap-nav {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-gnap-nav {
    display: block;
  }

  .l-gnap-nav.is-fixed {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    z-index: 100000;
  }
}

@media screen and (min-width: 768px) {

  .p-gnap-navBtn,
  .p-gnap-navOpen {
    right: 27px;
    z-index: 100000;
  }

  .p-gnap-navBtn {
    width: 60px;
    height: 60px;
    background-color: #183F92;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 8px;
    position: absolute;
    top: 13px;
    cursor: pointer;
    transition: all 0.3s;
  }

  .p-gnap-navBtn:hover {
    top: 17px;
  }

  .p-gnap-navBtn::before {
    content: "\76EE\6B21";
    color: #fff;
    font-size: 12px;
    text-align: center;
    margin-bottom: 5px;
    display: block;
    margin-top: 7px;
  }

  .p-gnap-navBtnBar {
    width: 24px;
    height: 2px;
    background-color: #fff;
    display: block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    transition: all .3s;
  }

  .p-gnap-navBtnBar:nth-child(1) {
    top: 31px;
  }

  .p-gnap-navBtnBar:nth-child(2) {
    top: 38px;
  }

  .p-gnap-navBtnBar:nth-child(3) {
    top: 45px;
  }

  .p-gnap-navBtn.is-active .p-gnap-navBtnBar:nth-child(1) {
    top: 32px;
    transform: translateX(-50%) translateY(6px) rotate(-45deg);
  }

  .p-gnap-navBtn.is-active .p-gnap-navBtnBar:nth-child(2) {
    opacity: 0;
  }

  .p-gnap-navBtn.is-active .p-gnap-navBtnBar:nth-child(3) {
    top: 44px;
    transform: translateX(-50%) translateY(-6px) rotate(45deg);
  }


  .p-gnap-navOpen {
    visibility: hidden;
    opacity: 0;
    background-color: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 10px;
    position: absolute;
    top: 90px;
    padding: 20px;
    transition: opacity .5s;
  }

  .p-gnap-navOpen.is-fade {
    opacity: 1;
    visibility: visible;
  }

  .p-gnap-navOpenListItemLink {
    display: flex;
    transition: all 0.3s;
  }

  .p-gnap-navOpenListItemLink:hover {
    opacity: 0.7;
  }

  .p-gnap-navOpenListItem {
    border-bottom: 1px solid #183F92;
    padding: 18px 10px 10px;
  }

  .p-gnap-navOpenListNumber {
    color: #183F92;
    font-size: 19px;
    font-weight: bold;
    margin-right: 5px;
  }

  .p-gnap-navOpenListText {
    font-size: 19px;
    font-weight: bold;
  }

}



/* l-qnap-mv
=========================================== */
.l-qnap-mv {
  position: relative;
}



.p-gnap-mvTextWrap {
  width: 100%;
  padding-top: 8vmin;
  padding-bottom: 8vmin;
}

@media screen and (min-width: 768px) {
  .p-gnap-mvTextWrap {
    width: 55%;
    background: transparent;
    padding-top: 0;
    padding-bottom: 3em;
  }
}

@media screen and (min-width: 768px) {
  .p-gnap-mv {
    display: flex;
    background: url(../img/bg_mv_01_pc.jpg) no-repeat center bottom / contain;
  }
}

.p-gnap-mvProduct {
  background: url(../img/bg_mv_02_sp.jpg) no-repeat center center /cover;
  width: 100%;
  height: 63.4vw;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-gnap-mvProduct {
    width: 52.3%;
    height: 27vw;
    background: url(../img/bg_mv_02_pc.png) no-repeat right center / contain;
  }
}

.p-gnap-mvProductImg {
  width: 67.7%;
  position: absolute;
  bottom: -8vw;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .p-gnap-mvProductImg {
    width: 62%;
    max-width: 623px;
    bottom: -2vw;
  }
}

.p-gnap-mvProductImg.is-fadeIn {
  -webkit-animation: fadeIn 1s forwards;
  animation: fadeIn 1s forwards;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.p-gnap-mvTtl {
  width: 86%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 3vmin;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .p-gnap-mvTtl {
    width: 100%;
    max-width: 900px;
    margin-right: auto;
    margin-bottom: 0;
    margin-top: 2.25vw;
  }
}

.p-gnap-mvTtl.is-fadeIn {
  -webkit-animation: fadeIn 1s forwards;
  animation: fadeIn 1s forwards;
}

.p-gnap-mvTxt {
  width: 86%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 3vmin;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .p-gnap-mvTxt {
    width: 100%;
    max-width: 1100px;
    margin-right: auto;
    margin-bottom: 2vw;
    margin-top: 0.75vw;
    text-align: center;
    font-size: 85%;
  }
}

.p-gnap-mvTxt.is-fadeIn {
  -webkit-animation: fadeIn 1s forwards;
  animation: fadeIn 1s forwards;
}


.p-gnap-mvList {
  display: flex;
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  justify-content: space-between;
  opacity: 0;
  flex-wrap: wrap;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .p-gnap-mvList {
    width: 100%;
    max-width: 1100px;
    margin-right: auto;
  }
}

.p-gnap-mvList.is-fadeIn {
  -webkit-animation: fadeIn 1s forwards;
  animation: fadeIn 1s forwards;
}


li.p-gnap-mvListItem {
  width: 33.3%;
  max-width: 260px;
}

li.p-gnap-mvListItem:nth-child(2) {
  width: 90%;
  max-width: 518px;
}

@media screen and (min-width: 768px) {
  li.p-gnap-mvListItem {
    width: 20%;
    max-width: 252px;
  }

  li.p-gnap-mvListItem:nth-child(2) {
    width: 40%;
    max-width: 518px;
  }
}

li.p-gnap-mvListItem.c-child-1 {
  order: 2;
}

li.p-gnap-mvListItem.c-child-2 {
  order: 1;
}

li.p-gnap-mvListItem.c-child-3 {
  order: 3;
}

li.p-gnap-mvListItem.c-child-4 {
  order: 4;
}

@media screen and (min-width: 768px) {
  li.p-gnap-mvListItem.c-child-1 {
    order: 1;
  }

  li.p-gnap-mvListItem.c-child-2 {
    order: 2;
  }

  li.p-gnap-mvListItem.c-child-3 {
    order: 3;
  }

  li.p-gnap-mvListItem.c-child-4 {
    order: 4;
  }
}

/* l-qnap-mvCta
=========================================== */
@media screen and (min-width: 768px) {
  .l-qnap-mvCta-sp {
    display: none;
  }
}

.l-qnap-mvCta-pc {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-qnap-mvCta-pc {
    display: block;
  }
}

.l-qnap-mvCta {
  padding: 20px 17%;
  background-color: #183F92;
  width: 100%;
}

.p-qnap-mvCtaBtn {
  position: relative;
  font-size: 116%;
  text-align: center;
  letter-spacing: 0.08em;
  display: block;
  padding: 9px 10px;
  border-radius: 5px;
  background: rgb(255, 254, 0);
  background: linear-gradient(180deg, rgba(255, 254, 0, 1) 0%, rgba(255, 221, 0, 1) 100%);
}

@media screen and (min-width: 768px) {
  .p-qnap-mvCtaBtn {
    width: 460px;
    margin-right: auto;
    margin-left: auto;
    font-size: 24px;
    transition: all 0.5s !important;
  }

  .p-qnap-mvCtaBtn:hover {
    opacity: 0.8;
  }
}

.p-qnap-mvCtaBtn::before {
  content: "";
  display: block;
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #000;
  position: absolute;
  left: 17px;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-qnap-mvCtaBtn::before {
    border-width: 6px 0 6px 13px;
  }
}

/* 追従 */
.l-qnap-mvCta.is-fixed {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 10000000;
  padding: 10px 17%;
}

.l-qnap-mvCta.is-fixed .p-qnap-mvCtaBtn {
  font-size: 100%;
  padding: 7px 10px;
}

@media screen and (min-width: 768px) {
  .l-qnap-mvCta.is-fixed .p-qnap-mvCtaBtn {
    font-size: 15px;
  }
}



/* l-qnap-intro
=========================================== */
.p-qnap-intro {
  padding-top: 10.6%;
  margin-bottom: 16vw;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-qnap-intro {
    padding-top: 120px;
    margin-bottom: 84px;
  }

  .p-qnap-intro::after {
    content: "";
    display: block;
    background: url(../img/img_intro_01.png) no-repeat center center / contain;
    /* width: 50%;
		height: 46vw; */
    width: 756px;
    height: 589px;
    position: absolute;
    top: 110px;
    right: -50%;
    transform: translateX(0);
    z-index: 0;
  }
}

@media screen and (min-width: 900px) {

  .p-qnap-intro::after {
    transform: translateX(-18%);
  }
}


@media screen and (min-width: 1080px) {

  .p-qnap-intro::after {
    transform: translateX(-32%);
  }
}


@media screen and (min-width: 768px) {
  .p-qnap-introDetail {
    width: 59.2%;
    position: relative;
    z-index: 100;
    margin-bottom: 117px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-introTtl {
    text-align: left;
    font-size: 38px;
    margin-bottom: 42px;
  }

  .p-qnap-introTtl::after {
    margin-left: 0;
    margin-top: 40px;
  }
}

.p-qnap-introText,
.p-qnap-introBtnList {
  padding-right: 6.4%;
  padding-left: 6.4%;
}

@media screen and (min-width: 768px) {

  .p-qnap-introText,
  .p-qnap-introBtnList {
    padding-right: 0;
    padding-left: 0;
  }
}

.p-qnap-introBtnList {
  position: relative;
  z-index: 100;
}

@media screen and (min-width: 768px) {
  .p-qnap-introBtnList {
    display: flex;
    flex-wrap: wrap;
  }
}

.p-qnap-introText {
  margin-bottom: 35px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introText {
    margin-bottom: 0;
  }
}

.p-qnap-introBtnListItem:not(:last-child) {
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introBtnListItem:not(:last-child) {
    margin-bottom: 0;
  }

  .p-qnap-introBtnListItem:not(:nth-of-type(-n+3)) {
    margin-top: 20px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-introBtnListItem {
    width: 32.2%;
  }

  .p-qnap-introBtnListItem:not(:nth-child(3n)) {
    margin-right: 1.7%;
  }
}


.p-qnap-introBtnListItem.is-fadeIn {
  opacity: 0;
  transition: all 1s;
}

.p-qnap-introBtnListItem.is-fadeIn.is-active {
  opacity: 1;
}



.p-qnap-introBtnListLink {
  font-size: 108%;
  font-weight: bold;
  color: #27387D !important;
  display: block;
  position: relative;
  text-align: center;
  border: 1px solid #27387D;
  border-radius: 8px;
  padding: 15px 40px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introBtnListLink {
    background-color: #fff;
    font-size: 15px;
    padding: 26px 40px 26px 22px;
    letter-spacing: -0.01em;
    transition: all 0.5s !important;
  }

  .p-qnap-introBtnListLink:hover {
    background-color: #F2F8FF;
  }
}

.p-qnap-introBtnListLink::after {
  position: absolute;
  content: ">";
  right: 15px;
  transform: rotate(90deg);
}




/* l-qnap-replace
=========================================== */
@media screen and (min-width: 768px) {
  .l-qnap-replace {
    margin-bottom: 160px;
  }
}

.p-qnap-replaceText {
  padding-right: 6.4%;
  padding-left: 6.4%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceText {
    padding-right: 0;
    padding-left: 0;
  }
}

.p-qnap-replaceHead {
  margin-bottom: 13.3vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceHead {
    margin-bottom: 60px;
  }
}

.p-qnap-replaceListItem {
  margin-bottom: 16vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceListItem {
    position: relative;
    margin-bottom: 75px;
  }
}

.p-qnap-replaceListText,
.p-qnap-replaceListImg {
  padding-right: 6.4%;
  padding-left: 6.4%;
}

@media screen and (min-width: 768px) {

  .p-qnap-replaceListText,
  .p-qnap-replaceListImg {
    padding-right: 0;
    padding-left: 0;
  }
}

.p-qnap-replaceListText {
  font-size: 123.1%;
  line-height: 1.8;
  margin-bottom: 15px;
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceListText {
    margin-left: 30px;
    width: 55.4%;
    font-size: 16px;
    line-height: 2.1;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceListImg {
    width: 39%;
    position: absolute;
    right: 0;
    top: 70px;
    z-index: 0;
  }
}


.p-qnap-replaceListIcon {
  width: 21.6%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 12px;
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceListIcon {
    width: 145px;
    margin-right: 30px;
    margin-left: 0;
    margin-bottom: 0;
  }
}

.p-qnap-replaceListTtl {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceListTtl {
    font-size: 36px;
    text-align: left;
    letter-spacing: 0;
  }
}

.p-qnap-replaceListTtlAccent {
  color: #EC2727;
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceListHead {
    display: flex;
    align-items: center;
    margin-bottom: 35px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-replaceListDetail {
    position: relative;
    z-index: 100;
  }
}


/* l-qnap-request
=========================================== */
.l-qnap-request {
  background: url(../img/bg_request_01.png) repeat center center / 5%;
}

@media screen and (min-width: 768px) {
  .l-qnap-request {
    background: url(../img/bg_request_01.png) repeat center center / 24px;
  }
}

.p-qnap-request {
  padding-bottom: 25px;
}

@media screen and (min-width: 768px) {
  .p-qnap-request {
    padding-bottom: 66px;
    position: relative;
  }

  .p-qnap-request::before,
  .p-qnap-request::after {
    content: "";
    display: block;
    width: 167px;
    height: 325px;
    position: absolute;
    bottom: 0;
  }

  .p-qnap-request::before {
    left: 8.1%;
    background: url(../img/img_request_01_pc.png) no-repeat center center / contain;
  }

  .p-qnap-request::after {
    right: 10.9%;
    background: url(../img/img_request_02_pc.png) no-repeat center center / contain;
  }
}

.p-qnap-requestTtl {
  position: relative;
  top: -10px;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestTtl {
    top: -30px;
  }
}

.p-qnap-requestListItem {
  display: flex;
  align-items: center;
}

.p-qnap-requestListItem:not(:last-child) {
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestListItem:not(:last-child) {
    margin-bottom: 19px;
  }
}

.p-qnap-requestListCheck {
  width: 18px;
  margin-right: 3px;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestListCheck {
    width: 31px;
  }
}

.p-qnap-requestListText {
  position: relative;
  top: 5px;
  font-size: 108%;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestListText {
    font-size: 18px;
  }
}

.p-qnap-requestListTextAccent {
  color: #EC2727;
}

.p-qnap-requestList {
  padding-right: 6.4%;
  padding-left: 6.4%;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestList {
    padding-right: 0;
    padding-left: 27.4%;
  }
}

.p-qnap-requestEnd {
  background: #27387D;
}

.p-qnap-requestEndTtl {
  margin-bottom: 15px;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestEndTtl {
    font-size: 38px;
    margin-bottom: 0;
    margin-right: 66px;
  }
}

.p-qnap-requestEndImg {
  width: 54.1%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestEndImg {
    width: 32.2%;
    max-width: 355px;
    margin-right: 0;
    margin-left: 0;
  }
}

.p-qnap-requestEndInner {
  padding-top: 15px;
}

@media screen and (min-width: 768px) {
  .p-qnap-requestEndInner {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}



/* l-qnap-introduction
=========================================== */
.l-qnap-introduction {}

.p-qnap-introduction {
  padding-top: 40px;
  padding-bottom: 38px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introduction {
    padding-top: 57px;
    padding-bottom: 38px;
  }
}

.p-qnap-introductionTtlLogo {
  width: 28%;
  display: inline-block;
  position: relative;
  top: -4px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introductionTtlLogo {
    width: 271px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-introductionTtl {
    margin-bottom: 52px;
  }
}


.p-qnap-introductionTtlText {
  display: inline-block;
}

.p-qnap-introductionHeading {
  font-size: 153.5%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introductionHeading {
    margin-bottom: 8px;
    font-size: 215%;
  }
}

.p-qnap-introductionText {
  padding-right: 6.4%;
  padding-left: 6.4%;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introductionText {
    text-align: center;
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 0;
    margin-bottom: 1.5em;
  }
}

.p-qnap-introductionImg {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  /* z-index: 1000; */
  margin: 0.5em auto 1.0em;
}

@media screen and (min-width: 768px) {
  .p-qnap-introductionImg {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    /* z-index: 1000; */
    margin: 1.5em auto 1.75em;
  }
}


/* l-qnap-feature
=========================================== */
.l-qnap-featureBg {
  background: #27387D;
  position: relative;
  /* top: -30px; */
  padding-top: 64px;
}

@media screen and (min-width: 768px) {
  .l-qnap-featureBg {
    padding-top: 170px;
  }
}

.l-qnap-feature {
  padding-bottom: 35px;
}

@media screen and (min-width: 768px) {
  .l-qnap-feature {
    padding-bottom: 150px;
  }
}

.p-qnap-feature,
.p-qnap-relation {
  padding-right: 7.4%;
  padding-left: 7.4%;
}

@media screen and (min-width: 768px) {

  .p-qnap-feature,
  .p-qnap-relation {
    max-width: 1100px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (min-width: 1200px) {

  .p-qnap-feature,
  .p-qnap-relation {
    padding-right: 0;
    padding-left: 0;
  }
}

.p-qnap-featureTtl {
  color: #fff;
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureTtl {
    margin-bottom: 70px;
  }
}


@media screen and (min-width: 768px) {
  .p-qnap-relationList {
    display: flex;
  }
}


.p-qnap-featureContents,
.p-qnap-relationListItem {
  background-color: #fff;
  border-radius: 10px;
  padding: 6%;
  position: relative;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

@media screen and (min-width: 768px) {

  .p-qnap-featureContents,
  .p-qnap-relationListItem {
    padding: 60px;
  }
}

.p-qnap-featureContents:not(:last-of-type) {
  margin-bottom: 40px;
}


.p-qnap-featureContentsNumber {
  width: 18.7%;
  position: absolute;
  top: -10px;
  left: 5.6%;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsNumber {
    width: 130px;
    position: relative;
    margin-top: -20px;
    left: 0;
    top: 0;
  }
}

.p-qnap-featureContentsTtl {
  text-align: left;
  padding-top: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsTtl {
    font-size: 34px;
    padding-top: 0;
    margin-top: 16px;
    margin-bottom: 34px;
  }
}

.p-qnap-featureContentsTtl::after {
  margin-left: 0;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsTtl::after {
    margin-top: 36px;
  }
}

.p-qnap-featureContentsText {
  font-size: 123.1%;
  line-height: 2.0;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsText {
    font-size: 16px;
  }
}

.p-qnap-featureContentsText:not(:last-of-type) {
  margin-bottom: 23px;
}

.p-qnap-featureContentsCheck {
  background-color: #EFF4F9;
  border-radius: 10px;
  position: relative;
  padding: 9% 6.8% 6.8%;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsCheck {
    padding: 50px 30px;
  }
}

.p-qnap-featureContentsCheckTtl {
  width: 21.2%;
  position: absolute;
  top: -10px;
  left: 6.8%;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsCheckTtl {
    width: 126px;
    left: 26px;
  }
}

.p-qnap-featureContentsCheckText {
  font-size: 108%;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsCheckText {
    font-size: 16px;
    line-height: 2.1;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsInner {
    display: flex;
  }
}


/* 幅広い製品ラインナップ！ */
@media screen and (min-width: 768px) {
  .p-qnap-featureContents-lineup .p-qnap-featureContentsTtl {
    font-size: 38px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContents-lineup .p-qnap-featureContentsDetail {
    width: 54%;
  }
}

.p-qnap-featureContents-lineup .p-qnap-featureContentsTextWrap {
  margin-bottom: 36px;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContents-lineup .p-qnap-featureContentsTextWrap {
    margin-bottom: 70px;
  }
}

.p-qnap-featureContents-lineup .p-qnap-featureContentsImg {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContents-lineup .p-qnap-featureContentsImg {
    width: 46%;
    margin-top: 70px;
  }
}


/* 日本語UIで分かりやすい！ */
@media screen and (min-width: 768px) {
  .p-qnap-featureContents-japanese .p-qnap-featureContentsDetail {
    width: 49%;
    margin-right: 3%;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContents-japanese .p-qnap-featureContentsImg {
    width: 48%;
    margin-top: 60px;
  }
}


/* 豊富なQNAPアプリで機能を強化！ */
@media screen and (min-width: 768px) {
  .p-qnap-featureContents-app {
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContents-app .p-qnap-featureContentsTextWrap {
    width: 52%;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContents-app .p-qnap-featureContentsImg {
    width: 41.2%;
    position: absolute;
    right: 0;
    top: 190px;
  }
}


/* 大容量のデータ転送に最適なオプションやカスタマイズが可能です */
@media screen and (min-width: 768px) {
  .p-qnap-featureContents-option .p-qnap-featureContentsDetail {
    margin-bottom: 50px;
  }
}


.p-qnap-featureContentsTextWrap {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsProductList {
    display: flex;
    flex-wrap: wrap;
  }
}

.p-qnap-featureContentsProductListItem {
  background-color: #EFF4F9;
  border-radius: 10px;
  padding: 7% 5.1%;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsProductListItem {
    width: 48.8%;
    padding: 35px;
  }

  .p-qnap-featureContentsProductListItem:not(:nth-child(2n)) {
    margin-right: 2.4%;
  }

  .p-qnap-featureContentsProductListItem:not(:nth-of-type(-n+2)) {
    margin-top: 20px;
  }
}

.p-qnap-featureContentsProductListItem:not(:last-of-type) {
  margin-bottom: 15px;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsProductListItem:not(:last-of-type) {
    margin-bottom: 0;
  }
}

.p-qnap-featureContentsProductListTtl {
  font-size: 138.5%;
  margin-bottom: 5px;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsProductListTtl {
    font-size: 22px;
  }
}

.p-qnap-featureContentsProductListImg {
  float: right;
  width: 35.3%;
  margin-left: 2%;
  /* margin-top: 4%; */
}

.p-qnap-featureContentsProductListText {
  font-size: 108%;
}

@media screen and (min-width: 768px) {
  .p-qnap-featureContentsProductListText {
    font-size: 16px;
  }
}


/* l-qnap-relation
=========================================== */
.l-qnap-relation {
  padding-bottom: 30px;
  position: relative;
  /* top: -30px; */
  padding-top: 100px;
}

@media screen and (min-width: 768px) {
  .l-qnap-relation {
    padding-bottom: 150px;
  }
}

.p-qnap-relationListThumbnail {
  margin-bottom: 27px;
}

.p-qnap-relationTtl {
  color: #fff;
  margin-bottom: 35px;
}

@media screen and (min-width: 768px) {
  .p-qnap-relationTtl {
    margin-bottom: 95px;
  }
}

.p-qnap-relationListTtl {
  font-size: 153.9%;
  margin-bottom: 12px;
}

@media screen and (min-width: 768px) {
  .p-qnap-relationListTtl {
    font-size: 20px;
    line-height: 1.8;
  }
}

.p-qnap-relationListText {
  font-size: 123.1%;
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-qnap-relationListText {
    font-size: 16px;
    line-height: 2.1;
    margin-bottom: 48px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-relationListItem {
    width: 48.1%;
    padding: 40px 40px 60px;
  }

  .p-qnap-relationListItem:not(:nth-child(2n)) {
    margin-right: 3.8%;
  }
}

.p-qnap-relationListItem:not(:last-of-type) {
  margin-bottom: 22px;
}

@media screen and (min-width: 768px) {
  .p-qnap-relationListItem:not(:last-of-type) {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-relationListBtn {
    width: 77%;
    max-width: 346px;
    font-size: 16px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 26px;
    padding-bottom: 26px;
  }
}


/* l-qnap-server
=========================================== */
.l-qnap-server {
  background-color: #F3F9FF;
}

.p-qnap-serverContentsHead {
  margin-bottom: 20px;
}

.p-qnap-serverText {
  text-align: center;
  padding-right: 5%;
  padding-left: 5%;
  margin-bottom: 14vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverText {
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 107px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsWrap {
    display: flex;
    margin-top: 2.5em;
    justify-content: space-between;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsWrap .p-qnap-serverContents {
    width: 49.2%;
    padding: 25px 35px 25px;
  }

  .p-qnap-serverContentsWrap .p-qnap-serverContents:not(:last-child) {
    margin-right: 2.6%;
  }
}

.p-qnap-serverContents-qcenter {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsSearch {
    display: flex;
  }
}

.p-qnap-serverContentsSearchTtl {
  margin-bottom: 15px;
  color: #27387D;
  font-size: 138.5%;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsSearchTtl {
    font-size: 29px;
  }
}

.p-qnap-serverContentsSearchTtlIcon {
  width: 5%;
  margin-right: 8px;
  display: inline-block;
  margin-top: -6px;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsSearchTtlIcon {
    width: 25px;
    margin-right: 13px;
    margin-top: -23px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsSearchImg {
    width: 44.2%;
    margin-top: -40px;
  }
}

.p-qnap-serverContentsSearchDetail {
  margin-bottom: 8vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsSearchDetail {
    width: 55.8%;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsSearchListItem {
    font-size: 20px;
  }
}

.p-qnap-serverContentsSearchListItemText {
  width: 95%;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsSearchListItemText {
    width: 94%;
  }
}

.p-qnap-serverContentsDetailListImg {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsDetailList {
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsDetailListItem {
    width: 45.2%;
  }
}

.p-qnap-serverContentsDetailListItem:not(:last-child) {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsDetailListItem:not(:last-child) {
    margin-bottom: 0;
    margin-right: 9.6%;
  }
}

/* Active Directoryに対応 */
@media screen and (min-width: 768px) {
  .p-qnap-serverContents-active .p-qnap-serverContentsText {
    margin-bottom: 0;
  }
}

/* NAS向け検索ツール「Qsirch」 */
@media screen and (min-width: 768px) {
  .p-qnap-serverContents-authority .p-qnap-serverContentsText {
    margin-bottom: 46px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-serverContentsDetailListText {
    line-height: 1.8;
    text-align: left;
  }
}



/* l-qnap-backup
=========================================== */
.l-qnap-backup {
  background-color: #F3F2F7;
}

.p-qnap-backupText {
  text-align: center;
  padding-right: 5%;
  padding-left: 5%;
  margin-bottom: 14vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupText {
    margin-bottom: 107px;
    padding-right: 0;
    padding-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsApp {
    width: 106px;
  }
}

.p-qnap-backupContents-netbak {
  margin-bottom: 0;
}

.p-qnap-backupContentsImg {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsImg {
    margin-bottom: 58px;
  }
}

.p-qnap-backupContentsCoordinationHeading {
  margin-bottom: 22px;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationHeading {
    font-size: 28px;
    margin-bottom: 46px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationContents {
    width: 45.8%;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationWrap {
    display: flex;
    margin-right: 29px;
    margin-left: 29px;
  }
}

.p-qnap-backupContentsCoordinationContents:not(:last-of-type) {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationContents:not(:last-of-type) {
    margin-bottom: 0;
    margin-right: 8.4%;
  }
}

.p-qnap-backupContentsCoordinationContentsHeading {
  width: 61.3%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationContentsHeading {
    width: 266px;
  }
}

.p-qnap-backupContentsCoordinationContentsImg {
  margin-bottom: 5px;
}

.p-qnap-backupContentsCoordinationBox {
  background-color: rgba(237, 245, 250, 0.5);
  border-radius: 5px;
  padding: 6.2%;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationBox {
    border-radius: 10px;
  }
}

.p-qnap-backupContentsCoordinationBoxListItem {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationBoxListItem {
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0;
  }

  .p-qnap-backupContentsCoordinationBoxListItem::before {
    margin-top: 2px;
  }

  .p-qnap-backupContentsCoordinationBoxListItem:not(:last-child) {
    margin-bottom: 5px;
  }
}

.p-qnap-backupContentsCoordinationBoxList {
  margin-bottom: 10px;
}

.p-qnap-backupContentsIntroText {
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-backupContentsCoordinationBoxText {
    font-size: 16px;
  }
}


/* l-qnap-support
=========================================== */
.p-qnap-supportText {
  text-align: center;
  padding-right: 5%;
  padding-left: 5%;
  margin-bottom: 14vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-supportText {
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 107px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-supportService {
    display: flex;
    flex-wrap: wrap;
  }
}

.p-qnap-supportServiceItem {
  padding-top: 27px;
}

@media screen and (min-width: 768px) {
  .p-qnap-supportServiceItem {
    width: 48.2%;
    margin-bottom: 0;
    padding: 62px 30px 30px;
  }
}

.p-qnap-supportServiceItem::before {
  display: none;
}

.p-qnap-supportServiceItem:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-qnap-supportServiceItem:not(:nth-child(2n)) {
    margin-right: 3.6%;
  }

  .p-qnap-supportServiceItem:not(:nth-of-type(-n+2)) {
    margin-top: 32px;
  }
}

.p-qnap-supportServiceIcon {
  width: 32%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 11px;
}

.p-qnap-supportServiceInfo {
  background-color: rgba(237, 245, 250, 0.5);
  border-radius: 5px;
  padding: 6.2%;
  margin-top: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-supportServiceInfo {
    margin-top: 40px;
  }
}

.p-qnap-supportServiceInfoText {
  font-weight: 700;
}



/* l-qnap-lineup
=========================================== */
@media screen and (min-width: 768px) {
  .l-qnap-lineup {
    padding-top: 0;
  }
}

.p-qnap-lineupList {
  padding-right: 5%;
  padding-left: 5%;
}

@media screen and (min-width: 768px) {
  .p-qnap-lineupList {
    padding-right: 0;
    padding-left: 0;
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-lineupTtl {
    margin-bottom: 86px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-lineupListItem {
    width: 31.4%;
  }
}

.p-qnap-lineupListItem:not(:last-of-type) {
  margin-bottom: 16vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-lineupListItem:not(:last-of-type) {
    margin-bottom: 0;
    margin-right: 2.9%;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-lineupListTtl {
    font-size: 24px;
    margin-bottom: 33px;
  }

  .p-qnap-lineupListTtl::after {
    width: 108px;
    margin-top: 34px;
  }
}

.p-qnap-lineupListImg {
  margin-bottom: 25px;
}

.p-qnap-lineupListText {
  font-size: 123.1%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-qnap-lineupListText {
    font-size: 16px;
    line-height: 2.1;
    letter-spacing: 0;
  }
}

.p-qnap-lineupListBtn {
  margin-top: 20px;
  padding-top: 10px;
  padding-bottom: 8px;
  width: 86.2%;
  margin-right: auto;
  margin-left: auto;

}

@media screen and (min-width: 768px) {
  .p-qnap-lineupListBtn {
    margin-top: 30px;
    font-size: 14px;
    width: 72.5%;
    max-width: 251px;
    padding-right: 28px;
    padding-left: 28px;
  }

  .p-qnap-lineupListBtn::after {
    right: 12px;
  }
}

.p-qnap-lineupBtnArea {
  margin-top: 14.6vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-lineupBtnArea {
    margin-top: 100px;
  }
}



/* l-qnap-user
=========================================== */
@media screen and (min-width: 768px) {
  .l-qnap-user {
    padding-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-userInner {
    display: flex;
  }
}

.p-qnap-userDetail {
  padding-right: 2.8%;
  padding-left: 2.8%;
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .p-qnap-userDetail {
    padding-right: 0;
    padding-left: 0;
    width: 48.8%;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-userTtl {
    margin-bottom: 70px;
  }
}

.p-qnap-userDetailTtl {
  font-size: 146.5%;
  color: #27387D;
  display: flex;
  margin-bottom: 16px;
}

@media screen and (min-width: 768px) {
  .p-qnap-userDetailTtl {
    font-size: 28px;
    margin-bottom: 18px;
  }
}

.p-qnap-userDetailTtl::before {
  content: "";
  width: 3px;
  height: auto;
  background-color: #EC2727;
  display: block;
  margin-right: 12px;
}

@media screen and (min-width: 768px) {
  .p-qnap-userDetailTtl::before {
    margin-right: 20px;
  }
}

.p-qnap-userDetailText {
  font-size: 108%;
}

@media screen and (min-width: 768px) {
  .p-qnap-userDetailText {
    font-size: 20px;
    line-height: 2.0;
  }
}

.p-qnap-userDetailService:not(:last-of-type) {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .p-qnap-userDetailService:not(:last-of-type) {
    margin-bottom: 50px;
  }
}

.p-qnap-userBtnArea {
  margin-top: 16.5vw;
}

@media screen and (min-width: 768px) {
  .p-qnap-userBtnArea {
    margin-top: 100px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-userImg {
    width: 46.6%;
    margin-left: 4.6%;
  }
}




































/* ----------------------------------------------------------------------------------------------------------------------
  20230426追加分
---------------------------------------------------------------------------------------------------------------------- */

.p-gnap-mvTtl .c-img-sp {
  display: block;
}

.p-gnap-mvTtl .c-img-pc {
  display: none;
}

@media print,
screen and (min-width: 48em) {
  .p-gnap-mvTtl .c-img-sp {
    display: none;
  }

  .p-gnap-mvTtl .c-img-pc {
    display: block;
  }
}

.p-qnap-introductionImg .c-img-sp {
  display: block;
}

.p-qnap-introductionImg .c-img-pc {
  display: none;
}

@media print,
screen and (min-width: 48em) {
  .p-qnap-introductionImg .c-img-sp {
    display: none;
  }

  .p-qnap-introductionImg .c-img-pc {
    display: block;
  }
}



/* TOP共通セクションパーツ */
.p-top-section {
  padding: 20px 5.33% !important;
}

@media print,
screen and (min-width: 48em) {
  .p-top-section {
    padding: 20px 5.33%;
  }
}

/* ----------------------------------------------------------------------------------------------------------------------
  styles書換
---------------------------------------------------------------------------------------------------------------------- */

@media print,
screen and (min-width: 61.25em) {
  .p-top-section {
    padding: 15px 3.125% 50px !important;
  }

  .p-top-section__title {
    margin: 0 0 50px;
    font-size: 215%;
  }

  .p-top-section__all {
    margin: 40px 0 0;
  }
}


.c-button-black span {
  color: #fff;
}

@media print,
screen and (min-width: 61.25em) {
  .c-button-black:hover span {
    /* background-color: #fff; */
    color: #333 !important;
  }
}

/* ----------------------------------------------------------------------------------------------------------------------
  /styles書換
---------------------------------------------------------------------------------------------------------------------- */


.l-qnap-intro {
  border-bottom: solid 1px #CACACA;
}

.p-contact-block--business .p-contact-block__main {
  display: block;
  font-size: 164%;
}

@media print,
screen and (min-width: 48em) {
  .p-contact-block--business .p-contact-block__main {
    font-size: 209%;
  }
}

@media print,
screen and (min-width: 48em) {
  .c-scroll-swiper__item__title {
    font-size: 100% !important;
    line-height: 1.4;
    font-weight: bold;
    margin: 15px 0 0;
    letter-spacing: -0.01em;
  }
}

@media print,
screen and (min-width: 61.25em) {
  .c-scroll-swiper__item__caption {
    font-size: 85% !important;
    margin: 7px 0 0 !important;
  }
}

.c-scroll-swiper__item__body {
  padding: 0 3px !important;
}

.l-breadcrumbs__item>a {
  -webkit-transition: color 0.1s 0s ease;
  transition: color 0.1s 0s ease;
  color: #2051b2;
  text-decoration: auto !important;
}



/*カタログ*******************************/

.p-catalog-download-section {
  padding: 10px 0 0 !important;
}

@media print,
screen and (min-width: 61.25em) {
  .p-catalog-download-section {
    padding: 35px 0 0 !important;
  }
}

.p-catalog-list-item__head {
  font-size: 108%;
  font-weight: bold;
  line-height: 1.7;
}

@media print,
screen and (min-width: 61.25em) {
  .p-catalog-list-item__head {
    font-size: 93% !important;
    line-height: 1.5;
  }
}

.p-catalog-list-item__info {
  margin-top: 9px;
  font-size: 93%;
  line-height: 1.7;
}

@media print,
screen and (min-width: 61.25em) {
  .p-catalog-list-item__info {
    margin-top: 11px;
    font-size: 85% !important;
  }
}

.m-small.c-button-white {
  width: 180px !important;
  min-height: 40px;
  border-radius: 20px;
  font-size: 77% !important;
}

.p-catalog-list {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(155px, 48.4%), 1fr));
  gap: 40px min(35px, 3.07%);
}

@media print,
screen and (min-width: 61.25em) {
  .p-catalog-list {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 40px min(35px, 6.07%) !important;
    margin: 0 auto !important;
    max-width: 1300px !important;
  }
}


/* --------------------------------------------------
  display
-------------------------------------------------- */
@media print,
screen and (min-width: 48em) {

  /* 768px */
  .p-contact-block--business .u-sp {
    display: none;
  }
}

@media screen and (max-width: 47.99em) {

  /* 767px, 印刷プレビューで消えないように調整 */
  .p-contact-block--business .u-pc {
    display: none;
  }
}

@media print,
screen and (min-width: 61.25em) {

  /* 980px */
  .p-contact-block--business .u-sm {
    display: none;
  }
}

@media screen and (max-width: 61.24em) {

  /* 979px, 印刷プレビューで消えないように調整 */
  .p-contact-block--business .u-md {
    display: none;
  }
}

.p-contact-block--business .p-maintenance-guidance-sub {
  padding-bottom: 0.5em;
}

.p-contact-block--business .p-contact-block__heading {
  margin-bottom: 16px;
  text-align: center;
}

@media print,
screen and (min-width: 48em) {
  .p-contact-block--business .p-contact-block__heading {
    margin-bottom: 10px;
  }
}

.p-contact-block--business .c-contact-section-button a {
  color: #202020;
  -webkit-transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, border cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, border cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  text-decoration: none;
}

.p-contact-block--business {
  border-radius: 25px;
  margin-bottom: 0.25em;
}

@media print,
screen and (min-width: 48em) {
  .p-contact-block--business {
    padding-bottom: 29px;
    border-radius: 25px;
    margin-bottom: 0;
  }
}

@media print,
screen and (min-width: 61.25em) {
  .p-contact-block--business .f-wrapper {
    padding-right: 3.125%;
    padding-left: 3.125%;
  }
}

/* お問い合わせモジュール */
.p-contact-block--business {
  background-color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  color: #202020;
  line-height: 1.75;
  letter-spacing: normal;
  -webkit-text-size-adjust: 100%;
  margin-top: 1em;
  padding-bottom: 0.5em;
}

@media print,
screen and (min-width: 48em) {
  .p-contact-block--business {
    background-color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    color: #202020;
    line-height: 1.75;
    letter-spacing: normal;
    -webkit-text-size-adjust: 100%;
    margin-top: 0;
    padding-bottom: 25px;
  }
}

.p-contact-block--business .c-contact-section.m-gray {
  background-color: #F3F3F3;
}

.p-contact-block--business .c-contact-section.m-has-border .c-contact-section-inner {
  border-bottom: 1px solid #EBEBEB;
}

.p-contact-block--business .c-contact-section-inner {
  padding: 1em 0 0;
}

@media print,
screen and (min-width: 61.25em) {
  .p-contact-block--business .c-contact-section-inner {
    padding: 0px 0 0px;
  }
}

.p-contact-block--business .c-contact-section-title {
  margin: 0 0 0.5em;
  font-size: 182%;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}

@media print,
screen and (min-width: 61.25em) {
  .p-contact-block--business .c-contact-section-title {
    font-size: 215%;
  }
}

.p-contact-block--business .c-contact-section-text {
  margin: 0.5em 0;
  font-size: 93%;
  text-align: center;
}

.p-contact-block--business .c-contact-section-text.m-left {
  text-align: left;
}

@media print,
screen and (min-width: 37.5em) {
  .p-contact-block--business .c-contact-section-text.m-left {
    text-align: center;
  }
}

@media print,
screen and (min-width: 61.25em) {
  .p-contact-block--business .c-contact-section-text {
    font-size: 108%;
  }
}

.p-contact-block--business .c-contact-section-button {
  width: 100%;
  max-width: 566px;
  margin: 0 auto 0;
}

.p-contact-block--business .c-contact-section-button .c-button-black {
  width: 100%;
  min-height: 60px;
  border-radius: 30px;
  font-size: 123.1%;
}

@media print,
screen and (min-width: 61.25em) {
  .p-contact-block--business .c-contact-section-button .c-button-black {
    min-height: 60px;
    border-radius: 35px;
    font-size: 144.9%;
  }
}

.p-contact-block--business .c-contact-section .c-annotation-list {
  margin: 15px 0 0;
}

/*
    button
*/
.p-contact-block--business .c-button-black {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 280px;
  max-width: 100%;
  min-height: 50px;
  padding: 7px 15px;
  margin: 0 auto;
  border-width: 1px;
  border-style: solid;
  border-radius: 28px;
  color: inherit;
  font-size: 103%;
  font-family: inherit;
  font-weight: bold;
  line-height: 1.5;
  outline: none;
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
  -webkit-transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, border cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, border cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}

.p-contact-block--business .c-button-black:is(a).m-disabled {
  pointer-events: none;
}

.p-contact-block--business .c-button-black span {
  text-align: center;
}

.p-contact-block--business .m-main.c-button-black {
  width: 280px;
  min-height: 50px;
  border-radius: 28px;
  font-size: 103%;
}

.p-contact-block--business .m-small.c-button-black {
  width: 155px;
  min-height: 40px;
  border-radius: 20px;
  font-size: 93%;
}

.p-contact-block--business .m-mini.c-button-black {
  width: 90px;
  min-height: 30px;
  padding: 5px;
  font-size: 93%;
  font-weight: normal;
}

/* black */
.p-contact-block--business .c-button-black {
  border-color: #333;
  background-color: #333;
  color: #fff !important;
}

.p-contact-block--business .c-button-black.m-disabled:hover {
  background-color: #BEBEBE;
  border-color: #BEBEBE;
  color: #fff !important;
}

.p-contact-block--business .c-button-black:is(a).m-disabled {
  pointer-events: none;
}

@media print,
screen and (min-width: 61.25em) {
  .p-contact-block--business .c-button-black:hover {
    background-color: #fff;
    color: #333 !important;
  }
}

.p-business-common-foot-txt {
  margin: 2em 0 0 0;
  padding: 2em 0 0 0;
  text-align: left;
  font-family: "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo;
  border-top: solid 1px #cacaca;
}

.p-business-common-foot-txt p {
  font-size: 113%;
  font-weight: bold;
  line-height: 2.0;
  padding: 0 0.5em;
}

.p-business-common-foot-txt br {
  display: none;
}

@media print,
screen and (min-width: 40.0625em) {
  .p-business-common-foot-txt {
    text-align: left;
    margin: 3em 3.15% 0 3.15%;
    padding: 2em 0 0 0;
  }

  .p-business-common-foot-txt p {
    font-size: 123.1%;
    line-height: 1.8;
  }

  .p-business-common-foot-txt br {
    display: block;
  }
}

@media print,
screen and (min-width: 61.25em) {
  .p-business-common-foot-txt {
    margin-top: 4.5em;
    text-align: center;
    margin: 3.5em 0 0 0;
    padding: 2.5em 0 0 0;
  }

  .p-business-common-foot-txt p {
    font-size: 123.1%;
    line-height: 1.8;
  }

  .p-business-common-foot-txt br {
    display: block;
  }
}

@media print,
screen and (min-width: 80em) {
  .p-business-common-foot-txt {
    margin-top: 4.5em;
    text-align: center;
    margin: 4em 0 0 0;
    padding: 2.5em 0 0 0;
  }

  .p-business-common-foot-txt p {
    font-size: 146.5%;
    line-height: 1.8;
    margin-bottom: 1.25em;
  }

  .p-business-common-foot-txt br {
    display: block;
  }
}

.c-mv-contact .p-contact-block__sub {
  display: block;
  margin-top: 1em;
  margin-bottom: 3px;
  font-size: 100%;
  font-weight: bold;
}

@media print,
screen and (min-width: 48em) {
  .p-contact-block__sub {
    font-size: 100%;
  }
}


/* --------------------------------------------------
  introduction
-------------------------------------------------- */
.p-qnap-introductionHeading-Sub {
  font-size: 93%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (min-width: 768px) {
  .p-qnap-introductionHeading-Sub {
    margin-bottom: 8px;
    font-size: 133%;
  }
}

/* l-qnap-solution
=========================================== */

.c-scroll-swiper__item__iconset {
  font-size: 85% !important;
  line-height: 1.4;
  font-weight: bold;
  margin: 18px 0 0px;
  letter-spacing: -0.01em;
  text-align: center;
  padding: 8px 5px;
  border-radius: 5px;
}

.c-scroll-swiper__item__iconset.c-case01 {
  background-color: #f6ac1d;
  color: #fff;
}

.c-scroll-swiper__item__iconset.c-case02 {
  background-color: #2db5d1;
  color: #fff;
}

.c-scroll-swiper__item__iconset.c-case03 {
  background-color: #ef857d;
  color: #fff;
}


.l-qnap-solution {
  background-color: #f3f3f3;
}

.p-qnap-solution {
  padding-top: 40px;
}

@media screen and (min-width: 768px) {
  .p-qnap-solution {
    padding-top: 55px;
    padding-bottom: 0;
  }
}

.p-qnap-solutionTtlLogo {
  width: 28%;
  display: inline-block;
  position: relative;
  top: -4px;
}

@media screen and (min-width: 768px) {
  .p-qnap-solutionTtlLogo {
    width: 271px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-solutionTtl {
    margin-bottom: 52px;
  }
}


.p-qnap-solutionTtlText {
  display: inline-block;
}

.p-qnap-solutionHeading {
  font-size: 153.5%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (min-width: 768px) {
  .p-qnap-solutionHeading {
    margin-bottom: 13px;
    font-size: 215%;
  }
}

.p-qnap-solutionText {
  padding-right: 6.4%;
  padding-left: 6.4%;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .p-qnap-solutionText {
    text-align: center;
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 0;
    margin-bottom: 1.5em;
  }
}

.p-qnap-solutionImg {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  z-index: 1000;
  margin: 1em auto 1em;
}

@media screen and (min-width: 768px) {
  .p-qnap-solutionImg {}
}



/* l-qnap-catalog
=========================================== */
.l-qnap-catalog {
  background-color: #fff;
}

.p-qnap-catalog {
  padding-top: 40px;
}

@media screen and (min-width: 768px) {
  .p-qnap-catalog {
    padding-top: 55px;
    padding-bottom: 0;
  }
}

.p-qnap-catalogTtlLogo {
  width: 28%;
  display: inline-block;
  position: relative;
  top: -4px;
}

@media screen and (min-width: 768px) {
  .p-qnap-catalogTtlLogo {
    width: 271px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-catalogTtl {
    margin-bottom: 52px;
  }
}


.p-qnap-catalogTtlText {
  display: inline-block;
}

.p-qnap-catalogHeading {
  font-size: 153.5%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (min-width: 768px) {
  .p-qnap-catalogHeading {
    margin-bottom: 13px;
    font-size: 215%;
  }
}

.p-qnap-catalogText {
  padding-right: 6.4%;
  padding-left: 6.4%;
  text-align: center;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .p-qnap-catalogText {
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 0;
    margin-bottom: 1.5em;
  }
}

.p-qnap-catalogImg {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  z-index: 1000;
  margin: 1em auto 1em;
}

@media screen and (min-width: 768px) {
  .p-qnap-catalogImg {}
}



/* l-qnap-brand
=========================================== */
.l-qnap-brand {
  background-color: #f3f3f3;
}

.p-qnap-brand {
  padding-top: 40px;
  padding-bottom: 15px;
}

@media screen and (min-width: 768px) {
  .p-qnap-brand {
    padding-top: 55px;
    padding-bottom: 0;
  }
}

.p-qnap-brandTtlLogo {
  width: 28%;
  display: inline-block;
  position: relative;
  top: -4px;
}

@media screen and (min-width: 768px) {
  .p-qnap-brandTtlLogo {
    width: 271px;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-brandTtl {
    margin-bottom: 52px;
  }
}


.p-qnap-brandTtlText {
  display: inline-block;
}

.p-qnap-brandHeading {
  font-size: 169.5%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .p-qnap-brandHeading {
    margin-bottom: 13px;
    font-size: 215%;
    line-height: 1.6;
  }
}

.p-qnap-brandText {
  padding-right: 6.4%;
  padding-left: 6.4%;
  text-align: left;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .p-qnap-brandText {
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 0;
    margin-bottom: 1.5em;
    text-align: center;
  }
}

.p-qnap-brandImg {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  /* z-index: 1000; */
  margin: 1em auto 1em;
}

@media screen and (min-width: 768px) {
  .p-qnap-brandImg {}
}

ul.p-future-list {
  margin-bottom: 2.0em;
}

ul.p-future-list li {
  font-size: 85% !important;
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.25em;
  font-weight: 600;
}

.c-brand-btn.c-camera-brand-btn {
  font-size: 93%;
  margin-bottom: 0.75em;
}

.c-brand-btn.c-camera-brand-btn .c-button-black {
  width: 340px;
}

.p-qnap-brandHead {
  margin-bottom: 20px;
}

.p-qnap-brandImg img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
  max-width: 500px !important;
  margin: 0 auto;
}


/* l-qnap-contact
=========================================== */
.l-qnap-contact {
  background-color: #fff;
  margin-top: 3.5em;
}

@media screen and (min-width: 768px) {
  .l-qnap-contact {
    background-color: #fff;
    margin-top: 3em;
  }
}

.p-qnap-contact {
  padding-top: 40px;
}

@media screen and (min-width: 768px) {
  .p-qnap-contact {
    padding-top: 55px;
    padding-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-contactTtl {
    margin-bottom: 52px;
  }
}

.p-qnap-contactTtlText {
  display: inline-block;
}

.p-qnap-contactHeading {
  font-size: 131%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (min-width: 768px) {
  .p-qnap-contactHeading {
    margin-bottom: 13px;
    font-size: 215%;
  }
}

.p-qnap-contactText {
  padding-right: 6.4%;
  padding-left: 6.4%;
  text-align: center;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .p-qnap-contactText {
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 0;
    margin-bottom: 1.5em;
  }
}

.p-qnap-contactImg {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  z-index: 1000;
  margin: 1em auto 1em;
}

@media screen and (min-width: 768px) {
  .p-qnap-contactImg {}
}

.l-qnap-contact .c-contact-section-text {
  font-size: 85%;
}


/* l-qnap-recommend
=========================================== */
.l-qnap-recommend {
  background-color: #fff;
  margin-top: 3em;
}

@media screen and (min-width: 768px) {
  .l-qnap-recommend {
    background-color: #fff;
    margin-top: 6em;
  }
}

.p-qnap-recommend {
  padding-top: 40px;
}

@media screen and (min-width: 768px) {
  .p-qnap-recommend {
    padding-top: 55px;
    padding-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-qnap-recommendTtl {
    margin-bottom: 52px;
  }
}

.p-qnap-recommendTtlText {
  display: inline-block;
}

.p-qnap-recommendHeading {
  font-size: 131%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (min-width: 768px) {
  .p-qnap-recommendHeading {
    margin-bottom: 13px;
    font-size: 215%;
  }
}

.p-qnap-recommendText {
  padding-right: 6.4%;
  padding-left: 6.4%;
  text-align: center;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .p-qnap-recommendText {
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 0;
    margin-bottom: 1.5em;
  }
}

.p-qnap-recommendImg {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  z-index: 1000;
  margin: 1em auto 1em;
}

@media screen and (min-width: 768px) {
  .p-qnap-recommendImg {}
}

.l-qnap-contact .c-recommend-section-text {
  font-size: 85%;
}



@media screen and (max-width: 40em) {
  .l-breadcrumbs {
    /* display:none!important; */
  }
}



















/**********************************************************************************************************************************************
 * 
**********************************************************************************************************************************************/

/* =====================
	ネットワークカメラシステム
 ======================= */
/**
 * Animations
 */
.is-anim {
  -webkit-transition: 1s;
  transition: 1s;
}

.is-fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
}

.is-fadeInUp.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/**
 * Common Style
 */

.fc_contents .u-only-sp {
  display: none;
}

.fc_contents * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.p-inner {
  width: 92%;
  max-width: 1100px;
  margin: 0 auto;
}

.c-ttl-h2 {
  font-size: 222.30769%;
  font-weight: 700;
  line-height: 1.42105;
  text-align: center;
  margin-bottom: 30px;
}

.c-ttl-h2__small {
  font-size: 73.68421%;
}

.c-ttl-h2__medium {
  font-size: 84.21053%;
}

.c-txt-bold {
  font-weight: 700;
}

.c-txt-center {
  text-align: center;
}

.c-txt-left {
  text-align: left;
}

.c-txt-right {
  text-align: right;
}

.c-txt-blue {
  color: #0068b6;
}

.c-txt-yellow {
  color: #FAEB37;
}

.c-txt-red {
  color: #F23A2A;
}

.c-txt-underline {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #FAFA37));
  background: linear-gradient(transparent 60%, #FAFA37 60%);
}

.c-txt-lead {
  text-align: center;
  font-size: 93%;
  line-height: 2.2;
  margin-bottom: 60px;
  font-weight: bold;
}

.c-btn-blue {
  width: 450px;
  height: 85px;
  border-radius: 100px;
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-align: center;
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0.03em;
  background: -webkit-gradient(linear, left top, right top, from(#1341c1), to(#1d2088));
  background: linear-gradient(to right, #1341c1 0%, #1d2088 100%);
  color: #fff;
  position: relative;
  margin: 0 auto;
  z-index: 2;
  -webkit-box-shadow: 0px 5px 3px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 5px 3px 0px rgba(0, 0, 0, 0.16);
}

.c-btn-blue:link,
.c-btn-blue:visited,
.c-btn-blue:hover,
.c-btn-blue:active {
  color: #fff;
}

.c-btn-blue:hover:before {
  opacity: 1.0;
  visibility: visible;
}

.c-btn-blue:before {
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 100px;
  background: -webkit-gradient(linear, left top, right top, from(#2484d6), to(#3235aa));
  background: linear-gradient(to right, #2484d6 0%, #3235aa 100%);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
  visibility: hidden;
  opacity: 0;
}

.c-btn-blue:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 9px;
  border-color: transparent transparent transparent currentColor;
  position: absolute;
  right: 35px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-btn-blue-wide {
  width: 546px;
}

.c-btn-white {
  width: 450px;
  height: 85px;
  border-radius: 100px;
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-align: center;
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0.03em;
  background: #fff;
  color: #1D2088;
  position: relative;
  margin: 0 auto;
  z-index: 2;
  -webkit-box-shadow: 0px 5px 3px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 5px 3px 0px rgba(0, 0, 0, 0.16);
}

.c-btn-white:link,
.c-btn-white:visited,
.c-btn-white:hover,
.c-btn-white:active {
  color: #1D2088;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.c-btn-white:hover {
  background: #E7EBFA;
}

.c-btn-white:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 9px;
  border-color: transparent transparent transparent currentColor;
  position: absolute;
  right: 35px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-btn-small {
  width: 350px;
  height: 78px;
  border-radius: 100px;
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 15px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  text-align: center;
  font-size: 138.5%;
  font-weight: 700;
  letter-spacing: 0.03em;
  background: #fff;
  border: 1px solid #929497;
  color: #1D2088;
  position: relative;
  margin: 0 auto;
  z-index: 2;
}

.c-btn-small:link,
.c-btn-small:visited,
.c-btn-small:hover,
.c-btn-small:active {
  color: #0F0F10;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.c-btn-small:hover {
  background: #E7EBFA;
}

.c-btn-small:after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 3px solid #1D2088;
  border-bottom: 3px solid #1D2088;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-link-txt {
  font-size: 123.1%;
  font-weight: 700;
  color: #1D2088;
}

.c-link-txt:link,
.c-link-txt:visited,
.c-link-txt:hover,
.c-link-txt:active {
  color: #1D2088;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.c-link-txt i {
  display: inline-block;
  vertical-align: middle;
  margin-left: 15px;
  width: 33px;
  height: 33px;
  background: #E7EBFA;
  border-radius: 50%;
  position: relative;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.c-link-txt i:after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 3px solid #1D2088;
  border-bottom: 3px solid #1D2088;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 3px;
  margin: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-link-txt:hover {
  color: rgba(29, 32, 136, 0.8);
}

.c-link-txt:hover i {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

.c-link-txt-down i:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 0;
  bottom: 3px;
}

.c-link-txt-down:hover i {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

.c-link-txt-orange {
  color: #0F0F10;
}

.c-link-txt-orange:link,
.c-link-txt-orange:visited,
.c-link-txt-orange:hover,
.c-link-txt-orange:active {
  color: #0F0F10;
}

.c-link-txt-orange i {
  background: #fff;
}

.c-link-txt-orange i:after {
  border-color: #ED711D;
}

.c-link-blue {
  color: #1A42CB;
  text-decoration: underline;
}

.c-link-blue:link,
.c-link-blue:visited,
.c-link-blue:hover,
.c-link-blue:active {
  color: #1A42CB;
  text-decoration: underline;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.c-link-blue:hover {
  opacity: 0.8;
}

.c-bg-grad {
  background: -webkit-gradient(linear, left top, right top, from(#346fcd), to(#074098));
  background: linear-gradient(to right, #346fcd 0%, #074098 100%);
  color: #fff;
  font-weight: 500;
}

.c-bg-bluegray {
  background: #F3F3F9;
}

.c-bg-lightblue {
  background: #E8F4FE;
}

.c-bg-gray {
  background: #F4F4F4;
}

.c-box-movie {
  max-width: 750px;
  margin: 0 auto;
}

.c-box-movie-inner {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
}

.c-box-movie-inner iframe {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}

/**
 * Contents
 */
.p-fv {
  position: relative;
}

.p-fv-ttl {
  position: absolute;
  left: 18.64583%;
  top: 14.82112%;
  width: 33.48958%;
}

.p-fv-ttl img {
  display: block;
  width: 100%;
}

.p-contact {
  position: relative;
}

.p-contact-in {
  width: 100%;
  z-index: 5;
  background-color: #183F92;
  padding: 24px;
}

.p-contact-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  background: #FAEB37;
  color: #1D2088;
  padding: 22px 0;
  max-width: 464px;
  border-radius: 100px;
  text-align: center;
  line-height: 1;
  font-size: 153.9%;
  font-weight: 700;
  margin: 0 auto;
}

.p-contact-link:link,
.p-contact-link:visited,
.p-contact-link:hover,
.p-contact-link:active {
  color: #1D2088;
  -webkit-transition: opacity 0.5s 0s ease-out;
  transition: opacity 0.5s 0s ease-out;
}

.p-contact-link:before {
  content: "";
  position: absolute;
  right: 2em;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 9px;
  border-color: transparent transparent transparent currentColor;
}

.p-contact-link:hover {
  opacity: 0.5;
}

.p-contact.is-fixed .p-contact-in {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 100%;
  z-index: 7;
  -webkit-animation: fadein 0.6s ease-out forwards;
  animation: fadein 0.6s ease-out forwards;
  padding: 15px 0;
}

.p-contact.is-fixed .p-contact-link {
  max-width: 340px;
  padding: 16px 0;
  font-size: 123.1%;
}

@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1.0;
  }
}

@keyframes fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1.0;
  }
}

.p-menu {
  position: fixed;
  top: 18px;
  right: 27px;
  z-index: 5;
  background: none;
  -webkit-transition: opacity 0.5s 0s ease-out, margin 0.4s;
  transition: opacity 0.5s 0s ease-out, margin 0.4s;
  margin-top: 130px;
}

.p-menu-btn {
  z-index: 5;
  cursor: pointer;
  position: relative;
  width: 60px;
  height: 60px;
  padding: 11px 16px 15px;
  margin-left: auto;
  border-radius: 8px;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  border: 1px solid #fff;
  background-color: #1D2088;
  text-align: center;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-menu-btn:before {
  display: block;
  content: "目次";
  font-size: 93%;
  line-height: 1;
  letter-spacing: 0;
  color: #fff;
}

.p-menu-btn span {
  position: absolute;
  left: 30%;
  width: 41.66667%;
  height: 2px;
  border-radius: 2px;
  display: inline-block;
  background-color: #fff;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-menu-btn span:nth-of-type(1) {
  top: 30px;
}

.p-menu-btn span:nth-of-type(2) {
  top: 37px;
}

.p-menu-btn span:nth-of-type(3) {
  top: 44px;
}

.p-menu-in {
  z-index: 5;
  position: fixed;
  top: 220px;
  right: 27px;
  border-radius: 8px;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  background-color: #fff;
  -webkit-transform-origin: top right;
  transform-origin: top right;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.p-menu-in__listbox {
  position: relative;
  padding: 36px 18px;
  text-align: left;
  list-style-type: none;
  opacity: 0;
}

.p-menu-in__list {
  z-index: 2;
  padding: 0 65px 1em 12px;
  border-bottom: solid 1px #E9E9EA;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  opacity: 0;
}

.p-menu-in__list+.p-menu-in__list {
  margin-top: 1.5em;
}

.p-menu-in__list a {
  font-size: 146.5%;
  font-weight: 700;
}

.p-menu-in__list a:link,
.p-menu-in__list a:visited,
.p-menu-in__list a:hover,
.p-menu-in__list a:active {
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-menu-in__list a:hover {
  opacity: 0.7;
}

.p-menu.scroll {
  margin-top: 0;
}

.p-menu.scroll .p-menu-in {
  top: 90px;
}

.p-menu.is-down {
  margin-top: 130px;
}

.p-menu.is-down .p-menu-in {
  top: 220px;
}

.p-menu.is-open .p-menu-btn span {
  left: 36.66667%;
  width: 28.33333%;
  top: 36px;
}

.p-menu.is-open .p-menu-btn span:nth-of-type(1) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.p-menu.is-open .p-menu-btn span:nth-of-type(2) {
  opacity: 0;
}

.p-menu.is-open .p-menu-btn span:nth-of-type(3) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.p-menu.is-open .p-menu-in {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.p-menu.is-open .p-menu-in__listbox {
  opacity: 1;
}

.p-menu.is-open .p-menu-in__list {
  opacity: 1;
}

.p-anchor {
  padding: 60px 0;
}

.p-anchor-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 2.90909%;
  -moz-column-gap: 2.90909%;
  column-gap: 2.90909%;
}

.p-anchor-list-item {
  width: 22.81818%;
}

.p-anchor-list-item a {
  color: #1D2088;
  font-size: 146.5%;
  font-weight: 700;
  letter-spacing: 0.034em;
  line-height: 1.57895;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  row-gap: 12px;
  border: 1px solid #1D2088;
  border-radius: 5px;
  padding: 26px 20px 20px;
  text-align: center;
  height: 100%;
}

.p-anchor-list-item a:link,
.p-anchor-list-item a:visited,
.p-anchor-list-item a:hover,
.p-anchor-list-item a:active {
  color: #1D2088;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-anchor-list-item a:hover {
  background: #F3F3F9;
}

.p-anchor-list-item a:hover i {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

.p-anchor-list-item a span {
  margin: auto;
}

.p-anchor-list-item a i {
  width: 33px;
  height: 33px;
  background: #E7EBFA;
  border-radius: 50%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-anchor-list-item a i:before {
  content: "";
  width: 8px;
  height: 8px;
  border-bottom: 3px solid #1D2088;
  border-left: 3px solid #1D2088;
  position: absolute;
  top: 0;
  bottom: 4px;
  right: 0;
  left: 0;
  margin: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.p-intro {
  padding: 60px 0 120px;
  background: url(../img/bg_intro_01_pc.png) no-repeat right bottom/100%;
}

.p-intro-usage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 2.72727%;
  -moz-column-gap: 2.72727%;
  column-gap: 2.72727%;
  margin-bottom: 100px;
}

.p-intro-usage-item {
  width: 29.09091%;
  background: #F4F4F4;
  padding: 35px 30px 25px;
}

.p-intro-usage-item__ttl {
  background: #074098;
  color: #fff;
  text-align: center;
  font-size: 153.9%;
  font-weight: 700;
  letter-spacing: 0.1em;
  position: relative;
  padding: 7px;
  width: 190px;
  margin: 0 auto 32px;
}

.p-intro-usage-item__ttl:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 9px 0 9px;
  border-color: #1D2088 transparent transparent transparent;
  position: absolute;
  bottom: -14px;
  left: 0;
  right: 0;
  margin: auto;
}

.p-intro-cv__txt {
  text-align: center;
  font-size: 167%;
  font-weight: 700;
  line-height: 1.90909;
  margin-bottom: 36px;
}

.p-solution {
  padding: 100px 0 109px;
  position: relative;
  z-index: 2;
}

.p-solution:before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/bg_solution_01_pc.png) no-repeat center/100% 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.p-solution-movie__txt {
  text-align: center;
  margin-top: 15px;
  text-align: center;
  font-size: 108%;
  font-weight: 400;
}

.p-suggest {
  padding: 100px 0 120px;
}

.p-suggest-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-suggest-list-item {
  width: 48.54545%;
  background: #fff;
  border-radius: 5px 5px 0 0;
  padding-bottom: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.p-suggest-list-item>* {
  padding: 0 11.23596%;
}

.p-suggest-list-item__ttl {
  background: #1D2088;
  color: #fff;
  border-radius: 5px 5px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 16px 30px 19px 36px;
  font-weight: 700;
  letter-spacing: 0.034em;
}

.p-suggest-list-item__ttl-main {
  font-size: 215.38462%;
}

.p-suggest-list-item__ttl-sub {
  background: #fff;
  border-radius: 100px;
  font-size: 138.5%;
  color: #1D2088;
  padding: 4px 15px;
}

.p-suggest-list-item__img {
  margin-bottom: 14px;
}

.p-suggest-list-item__point {
  margin-bottom: 20px;
}

.p-suggest-list-item__point-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  font-size: 123.1%;
  margin-bottom: 20px;
}

.p-suggest-list-item__point-item:last-child {
  margin-bottom: 0;
}

.p-suggest-list-item__point-item:before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(../img/icon_suggest_01_pc.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-top: 3px;
}

.p-suggest-list-item__link {
  margin-top: auto;
}

.p-suggest-list-item-vivotek .p-suggest-list-item__ttl {
  background: #0059D9;
}

.p-suggest-list-item-vivotek .p-suggest-list-item__point-item:before {
  background: url(../img/icon_suggest_02_pc.svg) no-repeat center/contain;
}

.p-cv {
  padding: 100px 0 120px;
}

.p-cv-bg {
  background: url(../img/bg_cv_01_pc.png) no-repeat center/100% 100%, linear-gradient(135deg, #2484d6 0%, #1d2088 100%);
  color: #fff;
  font-weight: 500;
}

.p-cv-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  row-gap: 40px;
}

.p-cv-list-item {
  width: 450px;
  text-align: center;
}

.p-cv-list-item span {
  font-size: 138.5%;
  font-weight: 700;
  line-height: 1.77778;
  letter-spacing: 0;
  display: block;
  margin-bottom: 32px;
}

.p-needs {
  padding: 100px 0 120px;
}

.p-needs-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 32px;
}

.p-needs-list-item {
  width: 345px;
  padding: 40px 2.72727% 32px;
  text-align: center;
  border: 3px solid;
  border-radius: 5px;
}

.p-needs-list-item-orange {
  background: #F5D7BB;
  border-color: #F08321;
}

.p-needs-list-item-orange .p-needs-list-item__ttl:after {
  background: #F08300;
}

.p-needs-list-item-green {
  background: #D6F4CB;
  border-color: #00A73C;
}

.p-needs-list-item-green .p-needs-list-item__ttl:after {
  background: #00A73C;
}

.p-needs-list-item-blue {
  background: #D0F1FF;
  border-color: #006DAD;
}

.p-needs-list-item-blue .p-needs-list-item__ttl:after {
  background: #006DAD;
}

.p-needs-list-item__ttl {
  font-size: 197%;
  font-weight: 700;
  padding-bottom: 18px;
  margin-bottom: 20px;
  position: relative;
}

.p-needs-list-item__ttl:after {
  content: "";
  width: 42px;
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.p-needs-list-item__txt {
  font-size: 123.1%;
  line-height: 1.75;
  margin-bottom: 30px;
}

.p-point-ttl {
  padding: 100px 0;
  text-align: center;
  position: relative;
  z-index: 2;
}

.p-point-ttl:before {
  content: "";
  width: 173px;
  height: 85px;
  background: url(../img/img_point_01_pc.png) no-repeat center/contain;
  position: absolute;
  bottom: 100px;
  left: 0;
  z-index: -1;
}

.p-point-ttl:after {
  content: "";
  width: 170px;
  height: 128px;
  background: url(../img/img_point_02_pc.png) no-repeat center/contain;
  position: absolute;
  bottom: 79px;
  right: 0;
  z-index: -1;
}

.p-point-ttl__sub {
  display: block;
  margin: 0 auto 25px;
  position: relative;
  background: #1D2088;
  color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 197%;
  font-weight: 700;
  padding: 8px 24px;
  border-radius: 5px;
}

.p-point-ttl__sub:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 9px 0 9px;
  border-color: #1D2088 transparent transparent transparent;
  position: absolute;
  bottom: -12px;
  left: 0;
  right: 0;
  margin: auto;
}

.p-point-ttl__main {
  font-size: 292.30769%;
  font-weight: 700;
}

.p-point-subttl {
  background: #1D2088;
  color: #fff;
  padding: 58px 0;
}

.p-point-subttl-in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-point-subttl__num {
  width: 141px;
  margin-right: 60px;
  border-right: 2px solid #fff;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-point-subttl__num img {
  display: block;
}

.p-point-subttl__main {
  font-size: 246.15385%;
  font-weight: 700;
  line-height: 1.5;
}

.p-point-content {
  padding: 60px 0 100px;
  background: #F3F3F9;
}

.p-point-lead {
  max-width: 980px;
  margin: 0 auto 60px;
  font-size: 138.5%;
}

.p-point-lead__sub {
  font-size: 88.88889%;
}

.p-point-lead__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.p-point-lead__col2-txt {
  width: 50%;
}

.p-point-lead__col2-img {
  width: 36.73469%;
  margin: 0 auto;
}

.p-point-lineup {
  background: #fff;
  border: 2px solid #1D2088;
  border-radius: 5px;
  position: relative;
  padding: 50px 30px;
  margin-bottom: 60px;
}

.p-point-lineup__ttl {
  width: 114px;
  height: 114px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  background: #1D2088;
  color: #fff;
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0.034em;
  position: absolute;
  top: -57px;
  left: -30px;
}

.p-point-lineup__ttl:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 12.5px 22px 12.5px;
  border-color: transparent transparent #1D2088 transparent;
  position: absolute;
  bottom: 3px;
  right: 7px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.p-point-lineup-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-point-lineup-list-item {
  width: calc(100% / 3);
  padding: 0 30px;
  border-right: 2px solid #E9E9EA;
}

.p-point-lineup-list-item:last-child {
  border: 0;
}

.p-point-lineup-list-item__ttl {
  color: #1D2088;
  text-align: center;
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0.034em;
  margin-bottom: 16px;
}

.p-point-lineup-list-item__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
}

.p-point-lineup-list-item__list-item {
  width: calc((100% - 20px) / 2);
  text-align: center;
  font-size: 108%;
  font-weight: 700;
  line-height: 1.5;
}

.p-point-lineup-list-item__list-item img {
  display: block;
  margin-bottom: 16px;
}

.p-point-h4 {
  font-size: 215.38462%;
  font-weight: 700;
  padding: 23px 40px 28px;
  margin-bottom: 30px;
  position: relative;
}

.p-point-h4:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 32px 32px 0 0;
  border-color: #1D2088 transparent transparent transparent;
  position: absolute;
  top: 0;
  left: 0;
}

.p-point-function {
  margin: 60px 0 80px;
}

.p-point-function__box {
  background: #fff;
  padding: 60px 60px 80px;
}

.p-point-function__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 50px 6.12245%;
}

.p-point-function__list-item__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: rgba(37, 134, 216, 0.1);
  border-radius: 6px 0 0 6px;
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0.034em;
  color: #2586D8;
  margin-bottom: 20px;
  padding-right: 10px;
}

.p-point-function__list-item__ttl img {
  width: 60px;
  margin-right: 24px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-point-function__list-item__ttl span span {
  font-size: 81.81818%;
}

.p-point-function__list-item__ttl span span.p-point-function__list-item__ttl-small {
  font-size: 100%;
}

.p-point-function__list-item__txt {
  font-size: 123.1%;
  line-height: 1.75;
  letter-spacing: 0;
}

.p-point-function__list-item__img {
  margin-top: 20px;
  display: block;
}

.p-point-function__list-item__box {
  display: grid;
  grid-template-columns: 55.21739% 41.52174%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-point-function__list-item__box .p-point-function__list-item__img {
  margin-top: 0;
}

.p-point-function__list-item-wide {
  grid-column: 1 / 3;
  display: grid;
  grid-template-columns: 46.93878% 50%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-point-function__list-item-wide .p-point-function__list-item__ttl {
  grid-column: 1 / 3;
}

.p-point-function__list-item-wide .p-point-function__list-item__img {
  margin-top: 0;
}

.p-point-function__trust {
  margin-top: 80px;
  padding: 85px 60px 50px;
  border: 2px solid #1D2088;
  border-radius: 5px;
  position: relative;
}

.p-point-function__trust__ttl {
  background: url(../img/img_point_point02_12_pc.svg) no-repeat right bottom/cover;
  color: #fff;
  padding: 20px 56px;
  font-size: 182%;
  font-weight: 700;
  letter-spacing: 0.034em;
  position: absolute;
  top: -20px;
  left: -20px;
}

.p-point-function__trust__ttl:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 20px 20px 0;
  border-color: transparent #040A60 transparent transparent;
  position: absolute;
  top: 100%;
  left: 0;
}

.p-point-function__trust__txt {
  font-size: 123.1%;
  letter-spacing: 0;
  margin-bottom: 28px;
}

.p-point-function__trust__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 4.65116%;
  -moz-column-gap: 4.65116%;
  column-gap: 4.65116%;
}

.p-point-function__trust__list-item {
  width: 30.23256%;
  text-align: center;
  color: #1D2088;
  font-size: 138.5%;
  font-weight: 700;
}

.p-point-function__trust__list-item img {
  display: block;
  margin-bottom: 12px;
}

.p-point-function__cloud {
  margin-top: 100px;
  background: #FCE2D1;
  border: 2px solid #ED711D;
  border-radius: 5px;
  padding: 32px 38px;
  position: relative;
}

.p-point-function__cloud__sub {
  background: #ED711D;
  color: #fff;
  border-radius: 10px;
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0.034em;
  padding: 20px 24px;
  position: absolute;
  left: -2px;
  top: -17px;
}

.p-point-function__cloud__sub:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 25px 17px 0;
  border-color: transparent #ED711D transparent transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
}

.p-point-function__cloud__ttl {
  font-size: 153.9%;
  font-weight: 700;
  letter-spacing: 0.034em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-bottom: 27px;
}

.p-point-function__cloud__ttl strong {
  color: #ED711D;
  font-size: 120%;
  margin-left: 0.25em;
}

.p-point-function__cloud__ttl:after {
  content: "";
  width: 90px;
  height: 60px;
  background: url(../img/icon_point_point03_10_pc.svg) no-repeat center/contain;
  margin: 0 32px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-point-function__cloud__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 40px;
}

.p-point-function__cloud__list-item {
  width: 280px;
}

.p-point-function__cloud__list-item__ttl {
  background: #fff;
  color: #ED711D;
  font-size: 138.5%;
  font-weight: 700;
  letter-spacing: 0.034em;
  padding: 10px 15px;
}

.p-point-function__cloud__list-item__txt {
  margin-top: 15px;
  font-size: 108%;
  letter-spacing: 0;
  line-height: 1.5;
}

.p-point-faq {
  margin-top: 80px;
}

.p-point-faq__dt {
  background: #fff;
  padding: 30px 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 32px;
  -moz-column-gap: 32px;
  column-gap: 32px;
  position: relative;
  font-size: 153.9%;
  font-weight: 700;
  letter-spacing: 0.034em;
  border-bottom: 2px solid #D0D0D0;
  cursor: pointer;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-point-faq__dt:hover {
  background: #F4F4F4;
}

.p-point-faq__dt:before {
  content: "";
  width: 56px;
  height: 56px;
  background: url(../img/icon_point_01_pc.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-point-faq__dt:after {
  content: "";
  width: 16px;
  height: 16px;
  border-right: 3px solid #000000;
  border-top: 3px solid #000000;
  position: absolute;
  right: 60px;
  top: 8px;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-point-faq__dt.is-open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.p-point-faq__dd {
  padding: 32px 60px 42px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 32px;
  -moz-column-gap: 32px;
  column-gap: 32px;
  font-size: 123.1%;
  line-height: 1.75;
  letter-spacing: 0.034em;
}

.p-point-faq__dd:before {
  content: "";
  width: 56px;
  height: 56px;
  background: url(../img/icon_point_02_pc.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-point-compare {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-point-compare-item {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
}

.p-point-compare-item__ttl {
  text-align: center;
  font-size: 153.9%;
  font-weight: 700;
  letter-spacing: 0;
  padding: 32px 10px;
}

.p-point-compare-item__img img {
  display: block;
}

.p-point-compare-item-before .p-point-compare-item__ttl {
  background: #E5E5E5;
}

.p-point-compare-item-after {
  -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
}

.p-point-compare-item-after .p-point-compare-item__ttl {
  background: #ED711D;
  color: #fff;
}

.p-point-compare-arrow {
  width: 60px;
  padding: 0 10px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-point-compare-arrow:before,
.p-point-compare-arrow:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 17px 0 17px 18px;
  border-color: transparent transparent transparent #ED711D;
}

.p-point-compare-arrow:before {
  opacity: 0.5;
}

.p-point-useimg {
  margin: 200px 0 80px;
  background: #fff;
  padding: 144px 60px 50px;
  position: relative;
}

.p-point-useimg__ttl {
  width: 202px;
  height: 202px;
  border-radius: 50%;
  background: #ED711D;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-align: center;
  font-size: 215.38462%;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.034em;
  position: absolute;
  top: -101px;
  left: 107px;
}

.p-point-useimg__ttl:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 25px 52px 25px;
  border-color: transparent transparent #ED711D transparent;
  position: absolute;
  bottom: -8px;
  right: 34px;
  -webkit-transform: rotate(147deg);
  transform: rotate(147deg);
}

.p-point-useimg__img01 {
  width: 494px;
  position: absolute;
  left: 0;
  right: 0;
  top: -101px;
  margin: auto;
}

.p-point-useimg__img02 {
  width: 252px;
  position: absolute;
  right: 60px;
  top: -127px;
  margin: auto;
}

.p-point-useimg__box {
  background: rgba(237, 113, 29, 0.2);
  border-radius: 20px;
  padding: 60px 60px 48px;
}

.p-point-other {
  margin-top: 80px;
}

.p-point-other__box {
  background: #fff;
  padding: 20px 60px 28px;
}

.p-point-other__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 10px 16px;
}

.p-point-other__list-item {
  width: 150px;
  text-align: center;
}

.p-point-other__list-item__img img {
  display: block;
}

.p-point-other__list-item__txt {
  font-size: 116%;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
}

.p-point-other__list-item__txt span {
  font-size: 80%;
}

.p-point-other__list-item__sub {
  margin-top: 9px;
  font-size: 85%;
  letter-spacing: 0;
  line-height: 1.5;
}

.p-point-other__notice {
  margin-top: 20px;
  font-size: 108%;
  line-height: 2;
  letter-spacing: 0.034em;
}

.p-point-antenna {
  margin-top: 70px;
}

.p-product {
  padding: 100px 0;
}

.p-product-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px 1%;
}

.p-product-list-item__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100px;
  padding: 0 4.49438%;
  background: #fff;
  border: 1px solid #CACACA;
  -webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.16);
}

.p-product-list-item__link:after {
  content: "";
  width: 6px;
  height: 6px;
  border-right: 1px solid #0F0F10;
  border-bottom: 1px solid #0F0F10;
  margin-left: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-product-list-item__link-img {
  width: 24.16667%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 2.5%;
}

.p-product-list-item__link-txt {
  font-size: 123.1%;
  font-weight: 700;
  letter-spacing: 0.034em;
  line-height: 1.5625;
  text-align: center;
  margin-right: 8.33333%;
}

.p-product-list-item__txt {
  margin-top: 15px;
  display: block;
  font-size: 123.1%;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
}

.p-trouble {
  padding: 20px 0 0;
}

.p-trouble-inner {
  max-width: 980px;
}

.p-trouble-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 50px;
  -moz-column-gap: 50px;
  column-gap: 50px;
  text-align: center;
  font-size: 246.15385%;
  font-weight: 700;
  letter-spacing: 0.034em;
  margin: 0 0 60px;
  color: #1D2088;
}

.p-trouble-ttl:before,
.p-trouble-ttl:after {
  content: "";
  height: 2px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  background: currentColor;
}

.p-trouble-img img {
  display: block;
}

.p-construction {
  background: #080459;
}

.p-construction-ttl {
  padding: 65px 0 113px;
  text-align: center;
  position: relative;
  color: #fff;
  -webkit-clip-path: polygon(calc(50% - 40px) 85%, 0 85%, 0 0, 100% 0, 100% 85%, calc(50% + 40px) 85%, 50% 100%);
  clip-path: polygon(calc(50% - 40px) 85%, 0 85%, 0 0, 100% 0, 100% 85%, calc(50% + 40px) 85%, 50% 100%);
}

.p-construction-ttl__main {
  margin: 0 !important;
}

.p-construction-ttl__main strong {
  color: #FAEB37;
  position: relative;
}

.p-construction-ttl__main strong:before {
  content: "";
  width: 62px;
  height: 57px;
  background: url(../img/icon_construction_01_pc.svg) no-repeat center/contain;
  position: absolute;
  left: -50px;
  top: -35px;
}

.p-construction-content {
  background: url(../img/bg_construction_01_pc.png) no-repeat top center/100%;
  padding: 100px 0 120px;
  margin-top: -40px;
}

.p-construction-subttl {
  color: #fff;
}

.p-construction-box {
  background: #fff;
  border-radius: 10px;
  padding: 60px;
}

.p-construction-box__ttl {
  font-size: 215.38462%;
  font-weight: 700;
  letter-spacing: 0;
  color: #1D2088;
  text-align: center;
  margin-bottom: 50px;
}

.p-construction-box__ttl span {
  display: inline-block;
  background: #FAEB37;
  color: #2A3B76;
  font-size: 85.71429%;
  padding: 10px;
  margin-bottom: 10px;
}

.p-construction-box__ttl strong {
  font-size: 142.85714%;
}

.p-construction-box__point {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: 4.89796%;
  -moz-column-gap: 4.89796%;
  column-gap: 4.89796%;
  margin-bottom: 42px;
}

.p-construction-box__point-item__img {
  margin-bottom: 25px;
}

.p-construction-box__point-item__img img {
  display: block;
  margin: 0 auto;
}

.p-construction-box__point-item__ttl {
  text-align: center;
  font-size: 182%;
  font-weight: 700;
  letter-spacing: 0.034em;
  margin-bottom: 16px;
  color: #080459;
}

.p-construction-box__point-item__txt {
  font-size: 123.1%;
  line-height: 1.6;
}

.p-construction-box__compare {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-construction-box__compare-item {
  width: 48.97959%;
  padding: 32px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.p-construction-box__compare-item__ttl {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  font-size: 197%;
  font-weight: 700;
  letter-spacing: 0;
  padding: 0 48px;
  margin-bottom: 42px;
}

.p-construction-box__compare-item__ttl:before,
.p-construction-box__compare-item__ttl:after {
  content: "";
  width: 3px;
  height: 1em;
  background: currentColor;
  -webkit-transform: rotate(-20deg);
  transform: rotate(-20deg);
}

.p-construction-box__compare-item__ttl:after {
  -webkit-transform: rotate(20deg);
  transform: rotate(20deg);
}

.p-construction-box__compare-item__img {
  padding: 0 34px;
  margin-bottom: 52px;
}

.p-construction-box__compare-item__img img {
  display: block;
  margin: 0 auto;
}

.p-construction-box__compare-item__box {
  position: relative;
  padding: 35px 12px 25px 42.5%;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.p-construction-box__compare-item__box:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 20px 63px 20px;
  position: absolute;
  top: -32px;
  right: 12.5%;
  -webkit-transform: rotate(-38deg);
  transform: rotate(-38deg);
}

.p-construction-box__compare-item__box__img {
  position: absolute;
  height: 100%;
}

.p-construction-box__compare-item__box__img img {
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.p-construction-box__compare-item__box__txt {
  font-size: 153.9%;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.034em;
  color: #fff;
}

.p-construction-box__compare-item__box__txt__sub {
  position: absolute;
  top: 0;
  left: 36.04167%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #2586D8;
  background: #FAEB37;
  border: 3px solid #0082CD;
  border-radius: 50px;
  font-size: 90%;
  padding: 11px 12px 11px 20px;
}

.p-construction-box__compare-item-other {
  background: #E9E9EA;
}

.p-construction-box__compare-item-other .p-construction-box__compare-item__ttl {
  color: #666666;
}

.p-construction-box__compare-item-other .p-construction-box__compare-item__box {
  background: #666666;
}

.p-construction-box__compare-item-other .p-construction-box__compare-item__box:before {
  border-color: transparent transparent #666666 transparent;
}

.p-construction-box__compare-item-other .p-construction-box__compare-item__box__img {
  width: 41.66667%;
  left: 4px;
  bottom: 10px;
}

.p-construction-box__compare-item-elecom {
  background: #D5ECFF;
}

.p-construction-box__compare-item-elecom .p-construction-box__compare-item__ttl {
  color: #1D2088;
}

.p-construction-box__compare-item-elecom .p-construction-box__compare-item__box {
  background: #0059A5;
}

.p-construction-box__compare-item-elecom .p-construction-box__compare-item__box:before {
  border-color: transparent transparent #0059A5 transparent;
}

.p-construction-box__compare-item-elecom .p-construction-box__compare-item__box__img {
  width: 26.25%;
  left: 4.58333%;
  bottom: 10px;
}

.p-flow {
  padding: 100px 0 85px;
}

.p-flow-list {
  max-width: 990px;
  margin: 0 auto 60px;
}

.p-flow-list-item {
  background: #fff;
  border: 1px solid #B9B9B9;
  padding: 30px 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 42px;
  -moz-column-gap: 42px;
  column-gap: 42px;
  margin-bottom: 10px;
}

.p-flow-list-item__num {
  width: 82px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-flow-list-item__ttl {
  font-size: 167%;
  font-weight: 700;
  color: #1D2088;
}

.p-flow-list-item__txt {
  margin-top: 10px;
  font-size: 123.1%;
  letter-spacing: 0;
  line-height: 1.6;
}

.p-flow-list-item:last-child {
  margin-bottom: 0;
}

.p-flow-list-item:last-child .p-flow-list-item__ttl {
  color: #2586D8;
}

.p-faq {
  padding: 135px 0 120px;
}

.p-faq-dl__dt {
  padding: 30px 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 32px;
  -moz-column-gap: 32px;
  column-gap: 32px;
  border-bottom: 2px solid #D0D0D0;
  position: relative;
  font-size: 153.9%;
  font-weight: 700;
  cursor: pointer;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-faq-dl__dt:hover {
  background: #F4F4F4;
}

.p-faq-dl__dt:before {
  content: "";
  width: 56px;
  height: 56px;
  background: url(../img/icon_faq_01_pc.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-faq-dl__dt:after {
  content: "";
  width: 16px;
  height: 16px;
  border-right: 3px solid #000000;
  border-top: 3px solid #000000;
  position: absolute;
  right: 60px;
  top: 8px;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-faq-dl__dt.is-open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.p-faq-dl__dd {
  background: #F4F4F4;
  padding: 30px 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 32px;
  -moz-column-gap: 32px;
  column-gap: 32px;
  font-size: 123.1%;
  line-height: 1.75;
  letter-spacing: 0.034em;
}

.p-faq-dl__dd:before {
  content: "";
  width: 56px;
  height: 56px;
  background: url(../img/icon_faq_02_pc.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-faq-dl__dd__txt {
  max-width: 410px;
}

.p-faq-dl__dd__img {
  margin-left: auto;
}

.p-faq-btn {
  margin-top: 70px;
}

.p-usage {
  padding: 100px 0;
}

.p-usage-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 60px 32px;
}

.p-usage-list-item {
  width: 345px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.p-usage-list-item__num {
  position: absolute;
  top: -28px;
  left: -20px;
}

.p-usage-list-item__img {
  border-radius: 5px 5px 0 0;
  overflow: hidden;
}

.p-usage-list-item__img img {
  display: block;
}

.p-usage-list-item__body {
  border-radius: 0 0 5px 5px;
  background: #fff;
  padding: 24px 30px 30px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.p-usage-list-item__ttl {
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0;
  color: #1D2088;
  margin-bottom: 16px;
}

.p-usage-list-item__list {
  font-size: 123.1%;
  line-height: 1.6;
  color: #0F0F10;
  font-weight: 400;
}

.p-usage-list-item__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-bottom: 12px;
}

.p-usage-list-item__list-item:last-child {
  margin-bottom: 0;
}

.p-usage-list-item__list-item:before {
  content: "";
  width: 1em;
  height: 1em;
  background: url(../img/icon_usage_01_pc.svg) no-repeat center/contain;
  margin-right: 10px;
  margin-top: 0.3em;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-scene {
  padding: 100px 0 120px;
}

.p-scene-list {
  margin: 60px 0 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 32px 2.90909%;
}

.p-scene-list-item {
  width: 22.72727%;
}

.p-scene-list-item__img {
  border-radius: 5px;
  overflow: hidden;
  margin-bottom: 20px;
}

.p-scene-list-item__img img {
  display: block;
}

.p-scene-list-item__ttl {
  font-size: 167%;
  font-weight: 700;
  letter-spacing: 0;
  margin-bottom: 4px;
}

.p-scene-list-item__list-item {
  font-size: 123.1%;
  line-height: 1.6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 10px 0;
  border-bottom: 1px solid #E9E9EA;
}

.p-scene-list-item__list-item:before {
  content: "";
  width: 1em;
  height: 1em;
  background: url(../img/icon_scene_01_pc.svg) no-repeat center/contain;
  margin-top: 0.3em;
  margin-right: 10px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-scene-subttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 70px;
  -moz-column-gap: 70px;
  column-gap: 70px;
  text-align: center;
  font-size: 246.15385%;
  font-weight: 700;
  color: #1D2088;
  margin-bottom: 52px;
}

.p-scene-subttl:before,
.p-scene-subttl:after {
  content: "";
  height: 2px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  background: currentColor;
}

.p-scene-subttl span {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-scene-other {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 30px 5.18182%;
}

.p-scene-other-item {
  width: 13.63636%;
  text-align: center;
  font-size: 138.5%;
  font-weight: 700;
}

.p-scene-other-item img {
  display: block;
  margin-bottom: 12px;
}

.p-works {
  padding: 100px 0 152px;
}

.p-works-anchor {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px 2.90909%;
  margin-bottom: 80px;
}

.p-works-anchor-item a {
  background: #fff;
  display: block;
  border-radius: 5px;
  padding: 30px 0;
  height: 100%;
}

.p-works-anchor-item a:hover .p-works-anchor-item__ttl {
  color: rgba(29, 32, 136, 0.8);
}

.p-works-anchor-item a:hover .p-works-anchor-item__ttl i {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

.p-works-anchor-item__img {
  padding: 0 11.5942%;
  margin-bottom: 20px;
}

.p-works-anchor-item__img img {
  display: block;
}

.p-works-anchor-item__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  -webkit-column-gap: 1em;
  -moz-column-gap: 1em;
  column-gap: 1em;
  font-size: 153.9%;
  font-weight: 700;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-works-anchor-item__ttl i {
  width: 33px;
  height: 33px;
  background: #E7EBFA;
  border-radius: 50%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: all 0.5s 0s ease-out;
  transition: all 0.5s 0s ease-out;
}

.p-works-anchor-item__ttl i:before {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 3px solid #1D2088;
  border-bottom: 3px solid #1D2088;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-bottom: 4px;
}

.p-works-box {
  margin-bottom: 60px;
  -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
}

.p-works-box:last-child {
  margin-bottom: 0;
}

.p-works-box__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #2586D8;
  color: #fff;
}

.p-works-box__head__ttl {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: 20px 20px 20px 60px;
  font-size: 138.5%;
  font-weight: 700;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-works-box__head__ttl strong {
  font-size: 211.11111%;
  margin-right: 0.25em;
}

.p-works-box__head__ttl strong span {
  font-size: 84.21053%;
  letter-spacing: -0.05em;
}

.p-works-box__head__txt {
  width: 57.90909%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 20px 20px 20px 50px;
  font-size: 167%;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  background: rgba(255, 255, 255, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-works-box__body {
  background: #fff;
  border: 3px solid #2586D8;
  border-top: 0;
  padding: 40px 60px 60px;
}

.p-works-box__detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 20px;
}

.p-works-box__detail-img {
  width: 49.18033%;
  position: relative;
}

.p-works-box__detail-img__list {
  position: absolute;
  left: 0;
  top: 0;
}

.p-works-box__detail-img__list-item {
  background: #0D305A;
  color: #fff;
  border: 2px solid #fff;
  border-radius: 50px;
  text-align: center;
  font-size: 123.1%;
  font-weight: 700;
  margin-bottom: 2px;
  padding: 4px;
  min-width: 175px;
}

.p-works-box__detail-img__list-item span {
  font-size: 87.5%;
}

.p-works-box__detail-txt {
  width: 47.13115%;
}

.p-works-box__detail-txt__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 5px 15px;
  margin-bottom: 20px;
}

.p-works-box__detail-txt__list-item {
  width: 80px;
}

.p-works-box__detail-txt__main {
  font-size: 123.1%;
}

.p-works-box__point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 20px;
}

.p-works-box__point-item {
  width: calc((100% - 20px) / 2);
  background: #EEF6FE;
  border-top: 3px solid #2586D8;
  padding: 30px 0;
}

.p-works-box__point-item__ttl {
  text-align: center;
  font-size: 167%;
  font-weight: 700;
  margin-bottom: 20px;
}

.p-works-box__point-item__ttl strong {
  font-size: 118.18182%;
}

.p-works-box__point-item__ttl span {
  font-size: 90.90909%;
}

.p-works-box__point-item__txt {
  font-size: 108%;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: center;
  color: #2586D8;
  margin-bottom: 32px;
}

.p-works-box__point-item__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0 6.66667%;
}

.p-works-box__point-item__list-item {
  width: 105px;
  text-align: center;
  font-size: 108%;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
}

.p-works-box__point-item__list-item img {
  display: block;
  margin: 0 auto 5px;
  width: 105px;
}

.p-works-box__point-item__list-item span {
  font-size: 92.85714%;
}

.p-works-box__point-item__list-item span+img {
  margin-bottom: 0;
}

.p-works-box__point-item__list-item-medium {
  width: 130px;
  margin-bottom: -20px;
}

.p-works-box__point-item__list-row2 {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  row-gap: 5px;
}

.p-works-box__point-item__list-row2 .p-works-box__point-item__list-item:last-child {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 12px;
  -moz-column-gap: 12px;
  column-gap: 12px;
}

.p-works-box__point-item__list-row2 .p-works-box__point-item__list-item:last-child img {
  margin: 0;
}

.p-works-box__point-item__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 35px;
  -moz-column-gap: 35px;
  column-gap: 35px;
  margin-top: 12px;
}

.p-works-box__point-item__box-txt {
  text-align: center;
  font-size: 100%;
  font-weight: 500;
  line-height: 1.4;
}

.p-works-box__point-item__box-img {
  width: 105px;
}

.p-works-box__point-item-recorder {
  width: 715px;
  max-width: 100%;
  padding: 32px 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-works-box__point-item-recorder-item {
  width: 44.75524%;
}

.p-works-box__point-item-recorder .p-works-box__point-item__ttl {
  text-align: left;
}

.p-works-box__point-item-recorder__img {
  text-align: center;
}

.p-works-box__point-item-recorder__img img {
  display: block;
  margin: 0 auto;
}

.p-works-box__point-item-recorder__img figcaption {
  margin-top: 5px;
  font-size: 108%;
  font-weight: 500;
}

.p-works-box__point-item-recorder__logo {
  -webkit-box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.16);
}

.p-works-box__point-item-recorder__logo img {
  display: block;
}

.p-works-box__point-item-recorder__txt {
  font-size: 100%;
  line-height: 1.6;
  letter-spacing: 0;
  margin-top: 10px;
}

.p-works-box__point-item-recorder-narrow {
  width: calc((100% - 20px) / 2);
  display: grid;
  grid-template-columns: 25% 51.66667%;
  gap: 0 6.66667%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.p-works-box__point-item-recorder-narrow .p-works-box__point-item__ttl {
  grid-column: 1 / 3;
}

/* Tablet
  ------------------------ */
@media (max-width: 1099px) {

  /**
	 * Common Style
	 */
  /**
	 * Contents
	 */
  .p-anchor-list {
    -webkit-column-gap: 2%;
    -moz-column-gap: 2%;
    column-gap: 2%;
  }

  .p-anchor-list-item {
    width: 23.5%;
  }

  .p-anchor-list-item a {
    font-size: 123.1%;
  }

  .p-intro {
    background: url(../img/bg_intro_01_pc.png) no-repeat right bottom/100%;
  }

  .p-intro-usage {
    -webkit-column-gap: 2%;
    -moz-column-gap: 2%;
    column-gap: 2%;
  }

  .p-intro-usage-item {
    width: 32%;
    padding-right: 20px;
    padding-left: 20px;
  }

  .p-intro-usage-item__ttl {
    width: 180px;
  }

  .p-suggest-list-item__ttl {
    padding: 16px 20px 19px;
  }

  .p-point-ttl:before,
  .p-point-ttl:after {
    bottom: 150px;
  }

  .p-point-lineup__ttl {
    left: -10px;
  }

  .p-point-function__box,
  .p-point-function__trust {
    padding-right: 20px;
    padding-left: 20px;
  }

  .p-point-function__cloud__sub {
    top: -50px;
  }

  .p-point-function__cloud__list {
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }

  .p-point-faq__dt,
  .p-point-faq__dd {
    padding-right: 20px;
    padding-left: 20px;
  }

  .p-point-useimg {
    padding-top: 100px;
  }

  .p-point-useimg__ttl {
    left: 10px;
    width: 160px;
    height: 160px;
  }

  .p-point-useimg__img01 {
    width: 390px;
  }

  .p-point-useimg__img02 {
    right: 0;
    width: 200px;
  }

  .p-point-useimg__box {
    padding: 50px 20px 30px;
  }

  .p-point-other__box {
    padding: 20px;
  }

  .p-trouble-ttl {
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }

  .p-construction-box {
    padding: 60px 20px;
  }

  .p-construction-box__compare-item__ttl {
    padding: 0 24px;
  }

  .p-faq-dl__dt,
  .p-faq-dl__dd {
    padding-right: 20px;
    padding-left: 20px;
  }

  .p-works-box__head__ttl {
    padding-right: 20px;
    padding-left: 20px;
  }

  .p-works-box__head__ttl strong {
    font-size: 177.77778%;
  }

  .p-works-box__head__txt {
    padding-right: 20px;
    padding-left: 20px;
    font-size: 138.5%;
  }

  .p-works-box__body {
    padding-right: 20px;
    padding-left: 20px;
  }
}

@media print,
screen and (max-width: 61.25em) {
  .p-menu {
    margin-top: 90px;
  }

  .p-menu-in {
    top: 176px;
  }

  .p-menu.is-down {
    margin-top: 90px;
  }

  .p-menu.is-down .p-menu-in {
    top: 176px;
  }

  .p-product-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .p-works-anchor {
    grid-template-columns: repeat(2, 1fr);
  }

  .p-works-box__head__ttl strong {
    font-size: 155.55556%;
  }

  .p-works-box__detail {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .p-works-box__detail-img {
    width: 100%;
  }

  .p-works-box__detail-txt {
    width: 100%;
  }

  .p-works-box__point-item {
    width: 100%;
  }

  .p-works-box__point-recorder-item-narrow {
    width: 100%;
  }
}

/* Mobile
  ------------------------ */
@media (max-width: 767px) {

  /**
	 * Common Style
	 */
  .l-content-container .u-only-sp {
    display: block;
  }

  .l-content-container .u-only-pc {
    display: none;
  }

  .p-inner-narrow {
    width: 87.5%;
  }

  .c-txt-center-sp {
    text-align: center !important;
  }

  .c-txt-left-sp {
    text-align: left !important;
  }

  .c-txt-right-sp {
    text-align: right !important;
  }

  .c-ttl-h2 {
    font-size: 196.9%;
    margin-bottom: 24px;
  }

  .c-ttl-h2__small {
    font-size: 66.66667%;
  }

  .c-ttl-h2__medium {
    font-size: 66.66667%;
  }

  .c-txt-lead {
    text-align: left;
    font-size: 108%;
    line-height: 1.8;
    padding: 0 10px;
    margin-bottom: 30px;
  }

  .c-btn-blue {
    width: 325px;
    height: 64px;
    font-size: 116%;
  }

  .c-btn-blue:after {
    border-width: 4px 0 4px 6px;
    right: 20px;
  }

  .c-btn-blue-wide {
    line-height: 1.6;
    height: auto;
    padding: 20px 0;
  }

  .c-btn-white {
    width: 325px;
    height: 64px;
    font-size: 116%;
  }

  .c-btn-white:after {
    border-width: 4px 0 4px 6px;
    right: 20px;
  }

  .c-btn-small {
    width: 292px;
    height: 52px;
    font-size: 108%;
  }

  .c-btn-small:after {
    width: 6px;
    height: 6px;
    border-width: 2px;
  }

  .c-link-txt {
    font-size: 108%;
  }

  .c-link-txt i {
    width: 22px;
    height: 22px;
    margin-left: 10px;
  }

  .c-link-txt i:after {
    width: 6px;
    height: 6px;
    border-width: 2px;
  }

  /**
	 * Contents
	 */
  .p-fv-ttl {
    width: 89.06667%;
    left: 4%;
    top: 6.02911%;
  }

  .p-contact-in {
    padding: 15px;
  }

  .p-contact-link {
    max-width: 240px;
    width: 100%;
    padding: 15px 0;
    font-size: 108%;
  }

  .p-contact-link:before {
    border-width: 4px 0 4px 6px;
    right: 1em;
  }

  .p-contact.is-fixed .p-contact-in {
    position: relative;
  }

  .p-menu {
    top: 10px;
    right: 3px;
  }

  .p-menu-bg {
    z-index: 4;
    position: fixed;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    background-color: #000;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.5s 0s ease-out;
    transition: opacity 0.5s 0s ease-out;
  }

  .p-menu-btn {
    width: 55px;
    height: 55px;
    padding: 9px 14px 15px;
  }

  .p-menu-btn span:nth-of-type(1) {
    top: 28px;
  }

  .p-menu-btn span:nth-of-type(2) {
    top: 35px;
  }

  .p-menu-btn span:nth-of-type(3) {
    top: 42px;
  }

  .p-menu-in {
    right: 3px;
    max-width: calc(100% - 6px);
  }

  .p-menu-in__list {
    padding: 0 40px 1em 12px;
  }

  .p-menu-in__list a {
    font-size: 123.1%;
  }

  .p-menu.is-open .p-menu-bg {
    visibility: visible;
    width: 100vw;
    height: 100vh;
    opacity: 0.56;
  }

  .p-anchor {
    padding: 40px 0 30px;
  }

  .p-anchor-list {
    gap: 10px;
  }

  .p-anchor-list-item {
    width: calc((100% - 10px) / 2);
  }

  .p-anchor-list-item a {
    font-size: 100%;
    padding: 14px 10px;
    row-gap: 10px;
  }

  .p-anchor-list-item a i {
    width: 20px;
    height: 20px;
  }

  .p-anchor-list-item a i:before {
    width: 5px;
    height: 5px;
    border-width: 2px;
    bottom: 2.5px;
  }

  .p-intro {
    padding: 30px 0 60px;
    background: url(../img/bg_intro_01_sp.png) no-repeat bottom/100%;
  }

  .p-intro-usage {
    background: #F4F4F4;
    -webkit-column-gap: 27px;
    -moz-column-gap: 27px;
    column-gap: 27px;
    max-width: 100%;
    margin: 0 auto 20px;
    padding: 40px 20px;
    box-sizing: border-box;
  }

  .p-intro-usage-item {
    width: 138px;
    padding: 0;
  }

  .p-intro-usage-item:nth-child(odd):last-child {
    margin-top: 10px;
  }

  .p-intro-usage-item:nth-child(odd):last-child .p-intro-usage-item__ttl {
    margin-bottom: 0;
  }

  .p-intro-usage-item__ttl {
    font-size: 108%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 3px 8px;
    margin-bottom: 12px;
  }

  .p-intro-usage-item__ttl:after {
    border-width: 8px 6px 0 6px;
    bottom: -8px;
  }

  .p-intro-cv__txt {
    font-size: 108%;
    margin-bottom: 30px;
  }

  .p-solution {
    padding: 60px 0 45px;
  }

  .p-solution:before {
    background: url(../img/bg_solution_01_sp.png) no-repeat center/100% 100%;
  }

  .p-solution-movie__txt {
    font-size: 93%;
  }

  .p-suggest {
    padding: 60px 0;
  }

  .p-suggest-lead {
    text-align: center;
  }

  .p-suggest-list {
    row-gap: 20px;
  }

  .p-suggest-list-item {
    width: 100%;
    padding-bottom: 28px;
  }

  .p-suggest-list-item>* {
    padding: 0 20px;
  }

  .p-suggest-list-item__ttl {
    padding: 10px 20px;
  }

  .p-suggest-list-item__ttl-main {
    font-size: 138.5%;
  }

  .p-suggest-list-item__ttl-sub {
    font-size: 100%;
  }

  .p-suggest-list-item__img {
    padding: 0 14px;
    margin-bottom: 10px;
  }

  .p-suggest-list-item__point-item {
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
    font-size: 108%;
    margin-bottom: 10px;
  }

  .p-suggest-list-item__point-item:before {
    width: 16px;
    height: 16px;
  }

  .p-cv {
    padding: 60px 0;
  }

  .p-cv-bg {
    background: url(../img/bg_cv_01_sp.png) no-repeat center/100% 100%, linear-gradient(135deg, #2484d6 0%, #1d2088 100%);
  }

  .p-cv-list-item {
    width: 100%;
  }

  .p-cv-list-item span {
    font-size: 108%;
    margin-bottom: 20px;
  }

  .p-needs {
    padding: 60px 0;
  }

  .p-needs-list {
    row-gap: 10px;
  }

  .p-needs-list-item {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 50%;
    gap: 0 16px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    padding: 15px 0;
  }

  .p-needs-list-item__ttl {
    font-size: 123.1%;
    padding-bottom: 16px;
    margin-bottom: 16px;
    padding-left: 20px;
    -ms-flex-item-align: end;
    align-self: flex-end;
  }

  .p-needs-list-item__ttl:after {
    left: 20px;
    right: auto;
    height: 2px;
  }

  .p-needs-list-item__txt {
    padding-left: 20px;
    font-size: 100%;
    -ms-flex-item-align: start;
    align-self: flex-start;
  }

  .p-needs-list-item__img {
    grid-row: 1 / 3;
    grid-column: 2 / 3;
  }

  .p-point-ttl {
    padding: 60px 0 40px;
  }

  .p-point-ttl:before {
    width: 74px;
    height: 36px;
    left: auto;
    right: calc(50% + 100px);
    bottom: auto;
    top: 70px;
  }

  .p-point-ttl:after {
    width: 73px;
    height: 55px;
    right: auto;
    left: calc(50% + 100px);
    bottom: auto;
    top: 60px;
  }

  .p-point-ttl__sub {
    font-size: 123.1%;
    padding: 6px 22px;
    margin-bottom: 20px;
  }

  .p-point-ttl__sub:after {
    border-width: 10px 6px 0 6px;
    bottom: -10px;
  }

  .p-point-ttl__main {
    font-size: 153.9%;
  }

  .p-point-subttl {
    padding: 25px 0;
  }

  .p-point-subttl-in {
    display: block;
    padding: 0 17px;
  }

  .p-point-subttl__num {
    border: 0;
    width: auto;
    margin: 0 0 15px;
  }

  .p-point-subttl__main {
    font-size: 153.9%;
  }

  .p-point-content {
    padding: 35px 0 60px;
  }

  .p-point-lead {
    margin-bottom: 30px;
    padding: 0 10px;
    font-size: 108%;
  }

  .p-point-lead__sub {
    font-size: 85.71429%;
  }

  .p-point-lead__col2 {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 30px;
  }

  .p-point-lead__col2-txt {
    width: 345px;
    max-width: 100%;
  }

  .p-point-lead__col2-img {
    width: 200px;
  }

  .p-point-lineup {
    padding: 32px 25px;
    margin: 65px 0 40px;
    border-width: 1px;
  }

  .p-point-lineup__ttl {
    width: 80px;
    height: 80px;
    font-size: 116%;
    top: -35px;
    left: 10px;
  }

  .p-point-lineup__ttl:before {
    border-width: 0 9px 16px 9px;
    bottom: 2px;
    right: 5px;
  }

  .p-point-lineup-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 20px;
  }

  .p-point-lineup-list-item {
    width: 100%;
    padding: 0 0 20px;
    border-right: 0;
    border-bottom: 2px solid #E9E9EA;
  }

  .p-point-lineup-list-item:last-child {
    padding-bottom: 0;
  }

  .p-point-lineup-list-item__ttl {
    font-size: 123.1%;
    margin-bottom: 10px;
  }

  .p-point-lineup-list-item__list {
    -webkit-column-gap: 50px;
    -moz-column-gap: 50px;
    column-gap: 50px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .p-point-lineup-list-item__list-item {
    width: 120px;
    font-size: 100%;
  }

  .p-point-lineup-list-item__list-item img {
    margin-bottom: 2px;
  }

  .p-point-h4 {
    font-size: 138.5%;
    padding: 7px 20px 0;
  }

  .p-point-h4:before {
    border-width: 20px 20px 0 0;
  }

  .p-point-function {
    margin: 40px 0;
  }

  .p-point-function__box {
    padding: 30px 17px;
  }

  .p-point-function__list {
    grid-template-columns: 1fr;
    gap: 30px 0;
  }

  .p-point-function__list-item__ttl {
    margin-bottom: 20px;
    padding-right: 10px;
    font-size: 123.1%;
  }

  .p-point-function__list-item__ttl img {
    width: 40px;
    margin-right: 10px;
  }

  .p-point-function__list-item__ttl span span {
    font-size: 75%;
  }

  .p-point-function__list-item__ttl span span.p-point-function__list-item__ttl-small {
    font-size: 87.5%;
  }

  .p-point-function__list-item__txt {
    font-size: 108%;
  }

  .p-point-function__list-item__img {
    margin-top: 15px;
  }

  .p-point-function__list-item__box {
    grid-template-columns: 1fr;
    row-gap: 15px;
  }

  .p-point-function__list-item__box .p-point-function__list-item__img {
    text-align: center;
  }

  .p-point-function__list-item-wide {
    grid-column: auto;
    grid-template-columns: 1fr;
  }

  .p-point-function__list-item-wide .p-point-function__list-item__ttl {
    grid-column: auto;
  }

  .p-point-function__list-item-wide .p-point-function__list-item__img {
    margin-top: 16px;
  }

  .p-point-function__trust {
    margin-top: 60px;
    padding: 48px 14px 30px;
    border-width: 1px;
  }

  .p-point-function__trust__ttl {
    background: url(../img/img_point_point02_12_sp.svg) no-repeat right bottom/cover;
    padding: 20px 56px;
    font-size: 108%;
    line-height: 1.5;
    padding: 6px 36px 8px 20px;
    top: -27px;
    left: -11px;
  }

  .p-point-function__trust__ttl:before {
    border-width: 0 11px 11px 0;
  }

  .p-point-function__trust__txt {
    font-size: 108%;
    margin-bottom: 20px;
  }

  .p-point-function__trust__list {
    gap: 20px 10px;
  }

  .p-point-function__trust__list-item {
    width: 135px;
    font-size: 100%;
  }

  .p-point-function__trust__list-item img {
    margin-bottom: 6px;
  }

  .p-point-function__cloud {
    margin-top: 60px;
    padding: 48px 15px 32px;
  }

  .p-point-function__cloud__sub {
    font-size: 108%;
    padding: 14px 18px;
    top: -30px;
  }

  .p-point-function__cloud__sub:after {
    border-width: 0 18px 12px 0;
  }

  .p-point-function__cloud__ttl {
    font-size: 123.1%;
    display: block;
    position: relative;
    padding-right: 110px;
  }

  .p-point-function__cloud__ttl strong {
    font-size: 112.5%;
    margin: 0;
    display: inline-block;
  }

  .p-point-function__cloud__ttl:after {
    width: 71px;
    height: 100%;
    position: absolute;
    right: 10px;
    top: 0;
    margin: 0;
  }

  .p-point-function__cloud__list {
    gap: 20px;
    margin-bottom: 25px;
  }

  .p-point-function__cloud__list-item {
    width: 100%;
  }

  .p-point-function__cloud__list-item__ttl {
    font-size: 123.1%;
    padding: 10px;
  }

  .p-point-function__cloud__list-item__txt {
    margin-top: 12px;
    padding: 0 10px;
    font-size: 100%;
  }

  .p-point-faq {
    margin-top: 40px;
  }

  .p-point-faq__dt {
    padding: 16px 50px 16px 15px;
    font-size: 108%;
    line-height: 1.5;
    border-width: 1px;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
  }

  .p-point-faq__dt:before {
    width: 30px;
    height: 30px;
  }

  .p-point-faq__dt:after {
    width: 8px;
    height: 8px;
    right: 15px;
    border-width: 2px;
  }

  .p-point-faq__dd {
    padding: 32px 60px 42px;
    padding: 20px 15px;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
    font-size: 108%;
  }

  .p-point-faq__dd:before {
    width: 30px;
    height: 30px;
  }

  .p-point-compare {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .p-point-compare-item {
    width: 100%;
  }

  .p-point-compare-item__ttl {
    font-size: 108%;
    padding: 20px 10px;
  }

  .p-point-compare-arrow {
    padding: 15px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 4px;
  }

  .p-point-compare-arrow:before,
  .p-point-compare-arrow:after {
    border-width: 17px 17px 0 17px;
    border-color: #ED711D transparent transparent transparent;
  }

  .p-point-useimg {
    margin: 95px 0 40px;
    padding: 44px 8px 15px;
  }

  .p-point-useimg__ttl {
    font-size: 100%;
    width: 84px;
    height: 84px;
    top: -22px;
    left: 14px;
  }

  .p-point-useimg__ttl:after {
    border-width: 0 11px 22px 11px;
    bottom: -3px;
    right: 14px;
  }

  .p-point-useimg__img01 {
    width: 161px;
    top: -22px;
  }

  .p-point-useimg__img02 {
    width: 98px;
    right: 0;
    top: -57px;
  }

  .p-point-useimg__box {
    padding: 38px 12px 12px;
    border-radius: 10px;
  }

  .p-point-other {
    margin-top: 40px;
  }

  .p-point-other__box {
    padding: 30px 25px;
  }

  .p-point-other__list {
    gap: 20px 35px;
  }

  .p-point-other__list-item {
    width: 130px;
  }

  .p-point-other__list-item__txt {
    font-size: 108%;
  }

  .p-point-other__list-item__txt span {
    font-size: 71.42857%;
  }

  .p-point-other__list-item__sub {
    font-size: 77%;
    margin-top: 5px;
  }

  .p-point-other__notice {
    font-size: 93%;
  }

  .p-point-antenna {
    margin-top: 35px;
  }

  .p-product {
    padding: 60px 0;
  }

  .p-product-list {
    grid-template-columns: 1fr;
  }

  .p-product-list-item__link {
    padding: 12px 14px;
    height: auto;
  }

  .p-product-list-item__link-img {
    width: 44px;
    margin-right: 20px;
  }

  .p-product-list-item__link-txt {
    font-size: 108%;
    margin-right: 20px;
    text-align: left;
  }

  .p-product-list-item__txt {
    font-size: 108%;
  }

  .p-trouble-ttl {
    font-size: 138.5%;
    line-height: 1.5;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    margin-bottom: 18px;
  }

  .p-construction-ttl {
    padding: 24px 0 53px;
    -webkit-clip-path: polygon(calc(50% - 27px) 85%, 0 85%, 0 0, 100% 0, 100% 85%, calc(50% + 27px) 85%, 50% 100%);
    clip-path: polygon(calc(50% - 27px) 85%, 0 85%, 0 0, 100% 0, 100% 85%, calc(50% + 27px) 85%, 50% 100%);
  }

  .p-construction-ttl__main strong:before {
    width: 21px;
    height: 19px;
    top: -8px;
    left: -12px;
  }

  .p-construction-content {
    background: none;
    padding: 30px 0 60px;
    margin-top: 0;
  }

  .p-construction-box {
    padding: 30px 25px;
  }

  .p-construction-box__ttl {
    font-size: 138.5%;
    margin-bottom: 30px;
  }

  .p-construction-box__ttl span {
    font-size: 77.77778%;
    padding: 10px 7px;
    max-width: 298px;
    margin: 0 auto 15px;
  }

  .p-construction-box__ttl strong {
    font-size: 111.11111%;
  }

  .p-construction-box__point {
    grid-template-columns: 1fr;
    gap: 20px 0;
  }

  .p-construction-box__point-item__img {
    margin-bottom: 16px;
  }

  .p-construction-box__point-item__ttl {
    font-size: 138.5%;
  }

  .p-construction-box__point-item__txt {
    font-size: 108%;
  }

  .p-construction-box__compare {
    row-gap: 20px;
  }

  .p-construction-box__compare-item {
    width: 100%;
    padding-top: 18px;
  }

  .p-construction-box__compare-item__ttl {
    margin-bottom: 20px;
    font-size: 123.1%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .p-construction-box__compare-item__ttl:before,
  .p-construction-box__compare-item__ttl:after {
    display: none;
  }

  .p-construction-box__compare-item__img {
    padding: 0 25px;
    margin-bottom: 34px;
  }

  .p-construction-box__compare-item__box {
    padding: 24px 9px 21px 41.66667%;
  }

  .p-construction-box__compare-item__box:before {
    border-width: 0 12px 40px 12px;
    top: -24px;
    right: 28px;
  }

  .p-construction-box__compare-item__box__txt {
    font-size: 116%;
  }

  .p-construction-box__compare-item__box__txt__sub {
    font-size: 86.66667%;
    border-width: 2px;
    padding: 6px 9px 6px 15px;
  }

  .p-construction-box__compare-item-other .p-construction-box__compare-item__box__img {
    width: 125px;
    left: 3px;
    bottom: auto;
    top: -15px;
  }

  .p-construction-box__compare-item-elecom .p-construction-box__compare-item__box__img {
    width: 85px;
    left: 5.33333%;
    bottom: auto;
    top: -12px;
  }

  .p-flow {
    padding: 60px 0;
  }

  .p-flow-list {
    margin-bottom: 30px;
  }

  .p-flow-list-item {
    padding: 18px 20px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-column-gap: 15px;
    -moz-column-gap: 15px;
    column-gap: 15px;
  }

  .p-flow-list-item__num {
    width: 40px;
  }

  .p-flow-list-item__ttl {
    font-size: 138.5%;
  }

  .p-flow-list-item__txt {
    font-size: 108%;
  }

  .p-faq {
    padding: 60px 0;
  }

  .p-faq-dl__dt {
    padding: 16px 50px 16px 15px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
    font-size: 108%;
  }

  .p-faq-dl__dt:before {
    width: 30px;
    height: 30px;
  }

  .p-faq-dl__dt:after {
    width: 8px;
    height: 8px;
    right: 15px;
    border-width: 2px;
  }

  .p-faq-dl__dd {
    padding: 20px 15px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 100%;
  }

  .p-faq-dl__dd:before {
    width: 30px;
    height: 30px;
  }

  .p-faq-dl__dd>div {
    width: calc(100% - 40px) !important;
    margin-left: auto;
  }

  .p-faq-btn {
    margin-top: 40px;
  }

  .p-usage {
    padding: 60px 0;
  }

  .p-usage-list {
    gap: 30px;
  }

  .p-usage-list-item {
    width: 295px;
  }

  .p-usage-list-item__num {
    width: 51px;
    top: -11px;
    left: -25px;
  }

  .p-usage-list-item__img {
    border-radius: 5px 5px 0 0;
  }

  .p-usage-list-item__body {
    border-radius: 0 0 10px 10px;
    padding: 18px 20px 20px;
  }

  .p-usage-list-item__ttl {
    font-size: 123.1%;
  }

  .p-usage-list-item__list {
    font-size: 108%;
  }

  .p-usage-list-item__list-item {
    margin-bottom: 10px;
  }

  .p-scene {
    padding: 60px 0;
  }

  .p-scene-list {
    margin: 32px 0 60px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 32px 0;
  }

  .p-scene-list-item {
    width: 48.69565%;
  }

  .p-scene-list-item__ttl {
    font-size: 108%;
  }

  .p-scene-list-item__list-item {
    font-size: 85%;
    padding: 6px 0;
  }

  .p-scene-list-item__list-item:before {
    margin-right: 5px;
  }

  .p-scene-subttl {
    font-size: 138.5%;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
    margin-bottom: 42px;
  }

  .p-scene-other {
    gap: 24px 20px;
  }

  .p-scene-other-item {
    width: 90px;
    font-size: 93%;
  }

  .p-scene-other-item img {
    margin-bottom: 10px;
  }

  .p-works {
    padding: 60px 0;
  }

  .p-works-anchor {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: 40px;
  }

  .p-works-anchor-item a {
    padding: 15px 0 10px;
  }

  .p-works-anchor-item__img {
    padding: 0 36px;
    margin-bottom: 5px;
  }

  .p-works-anchor-item__ttl {
    display: block;
    font-size: 100%;
  }

  .p-works-anchor-item__ttl i {
    margin: 5px auto 0;
    width: 20px;
    height: 20px;
  }

  .p-works-anchor-item__ttl i:before {
    width: 4px;
    height: 4px;
    border-width: 2px;
    margin-bottom: 3px;
  }

  .p-works-box {
    margin-bottom: 30px;
  }

  .p-works-box__head {
    display: block;
  }

  .p-works-box__head__ttl {
    padding: 12px 18px;
    font-size: 108%;
    display: block;
  }

  .p-works-box__head__ttl strong {
    font-size: 142.85714%;
  }

  .p-works-box__head__ttl strong span {
    font-size: 100%;
    letter-spacing: 0;
  }

  .p-works-box__head__txt {
    width: 100%;
    padding: 12px 18px;
    display: block;
    font-size: 100%;
  }

  .p-works-box__body {
    padding: 20px;
    border-width: 2px;
  }

  .p-works-box__detail {
    margin-bottom: 25px;
  }

  .p-works-box__detail-img__list-item {
    font-size: 77%;
    min-width: 111px;
    margin-bottom: 1px;
    padding: 2px;
  }

  .p-works-box__detail-img__list-item span {
    font-size: 100%;
  }

  .p-works-box__detail-txt__list {
    gap: 5px 10px;
    margin-bottom: 16px;
  }

  .p-works-box__detail-txt__list-item {
    width: 50px;
  }

  .p-works-box__detail-txt__main {
    font-size: 108%;
  }

  .p-works-box__point {
    gap: 10px 0;
  }

  .p-works-box__point-item {
    width: 100%;
    padding: 25px 10px 30px;
  }

  .p-works-box__point-item__ttl {
    font-size: 100%;
    margin-bottom: 20px;
  }

  .p-works-box__point-item__ttl strong {
    font-size: 138.46154%;
  }

  .p-works-box__point-item__ttl span {
    font-size: 100%;
  }

  .p-works-box__point-item__txt {
    font-size: 93%;
    margin-bottom: 20px;
  }

  .p-works-box__point-item__list {
    gap: 0 20px;
  }

  .p-works-box__point-item__list-item {
    width: 70px;
    font-size: 77%;
  }

  .p-works-box__point-item__list-item img {
    width: 70px;
  }

  .p-works-box__point-item__list-item span {
    font-size: 100%;
  }

  .p-works-box__point-item__list-item-medium {
    width: 100px;
    margin-bottom: 0;
  }

  .p-works-box__point-item__list-row2 .p-works-box__point-item__list-item:last-child {
    width: 70px;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .p-works-box__point-item__box {
    -webkit-column-gap: 16px;
    -moz-column-gap: 16px;
    column-gap: 16px;
  }

  .p-works-box__point-item__box-img {
    width: 70px;
  }

  .p-works-box__point-item__box-txt {
    font-size: 77%;
  }

  .p-works-box__point-item-recorder {
    width: 100%;
    padding: 25px 24px 30px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 25px;
  }

  .p-works-box__point-item-recorder-item {
    width: 260px;
    max-width: 100%;
  }

  .p-works-box__point-item-recorder .p-works-box__point-item__ttl {
    text-align: center;
  }

  .p-works-box__point-item-recorder__img img {
    width: 90px;
  }

  .p-works-box__point-item-recorder__img figcaption {
    font-size: 77%;
  }

  .p-works-box__point-item-recorder__txt {
    font-size: 93%;
  }

  .p-works-box__point-item-recorder-narrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 32px;
  }

  .p-works-box__point-item-recorder-narrow>* {
    width: 260px;
  }

  .p-works-box__point-item-recorder-narrow .p-works-box__point-item-recorder__logo {
    margin: 25px auto 0;
  }
}



/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/

.p-intro {
  padding: 60px 0 50px;
  background: url(../img/bg_intro_01_pc.png) no-repeat right bottom/100%;
  border-top: solid 1px #CACACA;
}

.p-intro-usage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 2.72727%;
  -moz-column-gap: 2.72727%;
  column-gap: 2.72727%;
  margin-bottom: 46px;
}

.p-intro-usage-item {
  width: 29.09091%;
  background: #F4F4F4;
  padding: 35px 30px 25px;
}

.p-intro-usage-item__ttl {
  background: #074098;
  color: #fff;
  text-align: center;
  font-size: 123.1%;
  font-weight: 700;
  letter-spacing: 0.1em;
  position: relative;
  padding: 7px;
  width: 190px;
  margin: 0 auto 32px;
}

.p-intro-usage-item__ttl:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 9px 0 9px;
  border-color: #074098 transparent transparent transparent;
  position: absolute;
  bottom: -14px;
  left: 0;
  right: 0;
  margin: auto;
}

.p-intro-cv__txt {
  text-align: center;
  font-size: 136%;
  font-weight: 700;
  line-height: 1.90909;
  margin-bottom: 6px;
}

.p-solution {
  padding: 100px 0 109px;
  position: relative;
  z-index: 2;
}

.p-solution:before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/bg_solution_01_pc.png) no-repeat center/100% 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.p-solution-movie__txt {
  text-align: center;
  margin-top: 15px;
  text-align: center;
  font-size: 93%;
  font-weight: 400;
}

.p-suggest {
  padding: 100px 0 120px;
}

.p-suggest-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-suggest-list-item {
  width: 48.54545%;
  background: #fff;
  border-radius: 5px 5px 0 0;
  padding-bottom: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.p-suggest-list-item>* {
  padding: 0 11.23596%;
}

.p-suggest-list-item__ttl {
  background: #1D2088;
  color: #fff;
  border-radius: 5px 5px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 16px 30px 19px 36px;
  font-weight: 700;
  letter-spacing: 0.034em;
}

.p-suggest-list-item__ttl-main {
  font-size: 215.38462%;
}

.p-suggest-list-item__ttl-sub {
  background: #fff;
  border-radius: 100px;
  font-size: 138.5%;
  color: #1D2088;
  padding: 4px 15px;
}

.p-suggest-list-item__img {
  margin-bottom: 14px;
}

.p-suggest-list-item__point {
  margin-bottom: 20px;
}

.p-suggest-list-item__point-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  font-size: 100%;
  margin-bottom: 20px;
}

.p-suggest-list-item__point-item:last-child {
  margin-bottom: 0;
}

.p-suggest-list-item__point-item:before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(../img/icon_suggest_01_pc.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-top: 3px;
}

.p-suggest-list-item__link {
  margin-top: auto;
}

.p-suggest-list-item-vivotek .p-suggest-list-item__ttl {
  background: #0059D9;
}

.p-suggest-list-item-vivotek .p-suggest-list-item__point-item:before {
  background: url(../img/icon_suggest_02_pc.svg) no-repeat center/contain;
}




/************************************************************************************************
アンカーリンク　上書き
************************************************************************************************/
.c-anchor-link__link span {
  display: inline-block;
  font-weight: 700;
}

/************************************************************************************************
カタログ用　上書き
************************************************************************************************/

.f-container {
  max-width: 1140px;
  margin: 0 auto;
}

@media print,
screen and (min-width: 61.25em) {
  .f-container.m-wide-middle {
    max-width: 1300px;
  }
}

@media print,
screen and (min-width: 61.25em) {
  .m-wide-middle .p-catalog-list {
    grid-template-columns: repeat(auto-fill, minmax(234px, 1fr));
    gap: 40px min(35px, 3.07%);
  }
}



/************************************************************************************************
冒頭説明文　SPレイアウト
************************************************************************************************/
@media (max-width: 767px) {


  .p-intro-usage-item {
    width: 138px;
    padding: 0;
  }

  .p-intro-usage-item__ttl {
    font-size: 108%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 3px 8px;
    margin-bottom: 12px;
  }


}

/*20240822追加*/
.zen-kaku-gothic {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.text-center {
  text-align: center;
}

.d-inline-block {
  display: inline-block;
}

.sp-block {
  display: none !important;
}

.justify-content-center {
  justify-content: center;
}

.c-txt-lead {
  text-align: left;
}

p.c-txt-aboutgiga {
  font-size: 90%;
  line-height: 1.4;
}

#sec04 {
  padding-bottom: 50px;
}

.c-txt-aboutgiga02 {
  padding-bottom: 1.5em;
}

.p-catalog-list {
  display: flex !important;
  justify-content: center;
  align-items: center;
}

.p-catalog-list>li {
  max-width: 240px;
}

.p-requirement {
  background: #dddddd;
  padding: 55px 0 40px;
  position: relative;
}

.l-qnap-mv#giga-school-mv {
  background: url("../img/top_bk.png") bottom center / cover no-repeat;
  margin-bottom: 0;
  position: relative;
  overflow: hidden;
}

#img_top_img01,
#img_top_img02 {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  max-width: 35vw;
  width: 100%;
}

#img_top_img01 {
  left: 4vw;
}

#img_top_img02 {
  right: 4vw;
}


#giga-school-mv .p-gnap-mv {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  padding-top: 25px;
  justify-content: center;
  z-index: 5;
}

#giga-school-mv .p-gnap-mv::before {
  content: "";
  display: block;
  padding-top: calc(((684 / 1758) * 100%));
}

.text-center {
  text-align: center;
}

.balloon1 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 10px 25px;
  min-width: 120px;
  max-width: 550px;
  font-size: 75%;
  background: #fff;
  border-radius: 30px;
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 20%;
  margin-left: -4px;
  border: 8px solid transparent;
  border-top: 25px solid #fff;
}

.balloon1 p {
  margin: 0;
  padding: 0;
  text-align: left;
  line-height: 1.4;
  display: inline-grid;
}

#giga-school-mv .p-gnap-mvTextWrap {
  display: inline-block;
  padding: 0;
}

#giga-school-mv h1 {
  font-size: 2.2vw;
  font-weight: 700;
  padding: 0 0 10px;
  display: inline-block;
}

.under-h1-p {
  color: #333333;
  margin-top: 10px;
  font-weight: 700;
  font-size: 0.9vw;
}

#giga-school-mv h2 {
  color: #00a8ba;
  font-weight: 900;
  font-size: 140%;
  text-shadow: 1.8px 1.8px 0 #fff;
  margin: 10px 0;
}

.mv-p01 {
  text-align: left;
  font-size: 80%;
  margin-top: 1em;
  max-width: 700px;
  display: inline-block;
}


.d-flex {
  display: flex;
}



@media (max-width: 820px) {
  #giga-school-mv h2 {
    margin: 0;
  }

  .mv-p01 {
    font-size: 9px;
    margin-top: 6px;
    max-width: 420px;
  }
}

@media (max-width: 768px) {
  .balloon1 {
    margin: 1.5em 0;
    padding: 6px 20px;
  }

  .balloon1:before {
    margin-left: -3px;
    border: 5px solid transparent;
    border-top: 16px solid #fff;
  }

  .p-catalog-list {
    flex-wrap: wrap;
    gap: 0;
  }

  .p-catalog-list>li {
    width: 50%;
    padding: 0 5px 20px;
  }

}

@media (max-width: 680px) {
  .sp-none {
    display: none;
  }

  .sp-block {
    display: block !important;
  }

  #giga-school-mv .p-gnap-mv {
    /*background: url("../image/mv-bg-sp-min.png") center center / contain no-repeat;*/
    background: none;
  }

  #giga-school-mv .p-gnap-mv::before {
    /*padding-top: calc(((1242 / 900) * 100%));*/
    padding-top: 0;
  }

  .mv-p01 {
    padding: 0 1em;
  }


  #giga-school-mv h2 {
    font-size: 140%;
    margin: 10px 0;
  }

  .mv-p01 {
    font-size: 10px;
    max-width: 350px;
    margin-top: 6px;
  }

  .balloon1 {
    font-size: 8px;
  }

}


/*250509追加*/

#sec01.p-requirement {
  padding-top: 0;
  margin-top: 0;
  padding-top: 100px;
}

.arrow-gray {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 10vw solid transparent;
  border-left: 10vw solid transparent;
  border-top: 30px solid #dddddd;
  border-bottom: 0;
  margin: 0 auto;
}

.text-left {
  text-align: left;
}

.sec02-chi01 {
  margin-top: 5rem;
}

.sec02-chi01 .m-h3 {
  font-size: 110%;
  font-weight: 700;
  border-bottom: solid 4px;
  min-height: 64px;
  text-align: left;
}

.sec02-chi01 .c-text-common {
  font-size: 85%;
  text-align: justify;
}

#sec02 {
  padding-bottom: 80px;
}

#sec03 {
  padding-bottom: 80px;
}

#sec03 .m-col6>div {
  padding: 0 4px;
  width: calc(100% / 6);
}

#sec03 .m-col6 p {
  background-color: #0068b6;
  color: #fff;
  font-size: 80%;
  font-weight: 700;
}

#sec03 .m-col6 .c-image-common {
  margin: 0;
}

.logo-bunner-wrap {
  border-radius: 4px;
  width: 100%;
  padding: 8px 0;
  margin: 8px 0;
}

.logo-bunner-logitec {
  background-color: #000000;
}

.logo-bunner-hagiwara {
  background-color: #002c6a;
}

.logo-bunner-wrap img {
  height: 16px;
  width: auto;
}

#sec05 {
  padding-bottom: 80px;
}

#sec05 .c-products-parts-annotation {
  font-size: 82%;
  margin-top: 1em;
}


.sec05-div01 {
  margin-top: 60px;
}

.p-catalog-list-item__head {
  min-height: 46px;
}

.l-breadcrumbs-wrap>.l-breadcrumbs>.l-breadcrumbs-wrap {
  border-bottom: none;
}

.img_top_tablet {
  max-width: 32vw;
  height: auto;
}

.d-max1024 {
  display: none;
}



/* 初期状態（まだ表示しない） */
.js-reveal {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 1000ms ease,
    transform 1000ms ease;
  will-change: opacity, transform;
}

/* 表示状態 */
.js-reveal.is-in {
  opacity: 1;
  transform: translateY(0);
}

/* 好みで：ユーザーが動きを減らす設定をしている場合はアニメ無し */
@media (prefers-reduced-motion: reduce) {
  .js-reveal {
    transition: none;
    transform: none;
  }
}

@media (max-width: 1040px) {
  #giga-school-mv h1 {
    font-size: 3.2vw;
  }

  .under-h1-p {
    margin-top: 0;
    font-size: 1.4vw;
    line-height: 2;
  }

  .img_top_tablet {
    max-width: 44vw;
  }

  .d-max1024 {
    display: block;
  }

  .c-common-table-wrap.js-draggable {
    overflow: auto;
    scrollbar-width: thin;
    scrollbar-color: #777777 #DBDBDB;
  }

  #sec03 .m-col6 {
    flex-wrap: wrap;
  }

  #img_top_img01,
  #img_top_img02 {
    top: 15vw;
    max-width: 35vw;
  }

  #img_top_img01 {
    left: 2vw;
  }

  #img_top_img02 {
    right: 2vw;
  }

  #sec03 .m-col6>div {
    width: calc(100% / 3);
    padding: 0 4px 8px;
  }

  .l-qnap-mv#giga-school-mv {
    padding-bottom: 8vw;
  }

  #sec03 .m-col6 p {
    font-size: 100%;
  }
}

@media (max-width: 960px) {
  .l-qnap img.logo_home {
    height: 22px;
  }

  .p-gnap-mvTextWrap {
    width: 60%;
  }
}

@media (max-width: 767px) {
  .arrow-gray {
    border-top: 60px solid #dddddd;
    border-bottom: 0;
    margin-bottom: 80px;
  }

  #sec03 {
    padding-bottom: 0;
  }

  .l-qnap-solution p.text-center {
    text-align: left;
    padding: 0 20px;
  }

  #sec07 .p-qnap-brandHeading {
    text-align: left;
  }

  #sec07 .p-qnap-brandHeading .d-inline-block {
    display: inline;
  }

  .l-qnap-contact {
    margin-top: 0;
  }
}

@media (max-width: 680px) {
  .p-gnap-mvTextWrap {
    width: 100%;
  }

  .l-qnap-mv {
    background: none;
  }

  #giga-school-mv .p-gnap-mv {
    align-items: start;
  }

  #sec00 .c-txt-lead {
    text-align: left;
  }

  #sec00 .c-txt-lead br {
    display: none;
  }

  #sec03 .m-col6>div {
    width: calc(100% / 2);
    padding: 0 4px 8px;
  }
}

/*20260209追加*/
.align-items-center {
  align-items: center;
}

section {
  margin-bottom: 60px;
}

.sec01-h3 {
  background-color: #333333;
  color: #fff;
  text-align: center;
  font-weight: 700;
  margin-bottom: 10px;
  padding: 2px 0;
}

.sec01-p01 {
  font-size: 80%;
  margin-top: 1em;
}

.sec02_img01 {
  max-width: 140px;
}

.sec02_ul {
  padding-left: 3em;
}

.sec02_ul li {
  margin-bottom: 6px;
  font-size: 120%;
  font-weight: 700;
}

.sec02_ul li::before {
  content: '';
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  background: url(../img/sec02_img02.svg) no-repeat left top/contain;
  vertical-align: middle;
  margin-right: 10px;
}

#sec04 {
  padding-top: 60px;
}

.sec04-btn {
  width: 560px;
  max-width: 100%;
}

.sec05_img01 {
  max-width: 314px;
  padding-right: 20px;
}

.sec05_img01_wrap {
  margin: 40px 0;
}

/* ====== Layout ====== */
.matrix {
  --axis-color: #6c6c6c;
  --axis-thickness: 4px;

  --y-axis-space: 47px;
  /* 左軸のための余白 */
  --x-axis-space: 49px;
  /* 下軸のための余白 */

  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  padding-left: var(--y-axis-space);
  padding-bottom: var(--x-axis-space);
}

/* border無しtable */
.matrix-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  min-width: 979px;
}

.matrix-table td {
  vertical-align: top;
  padding: 6px 8px;
}

.matrix-table td.empty {
  padding: 6px 8px;
}

/* 2段目は下側に余白を増やす（画像っぽく空間を作る） */
.matrix-table tr:nth-child(2) td {
  padding-top: 10px;
}

/* ====== Axes ====== */
.axis {
  position: absolute;
  pointer-events: none;
}

/* Y axis (left) */
.axis--y {
  left: 24px;
  top: 10px;
  bottom: calc(var(--x-axis-space) - 6px);
  width: 40px;
}

.axis--y::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 0;
  bottom: 0;
  width: var(--axis-thickness);
  background: var(--axis-color);

}

.axis--y::after {
  /* arrow head (up) */
  content: "";
  position: absolute;
  left: 18px;
  top: -2px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-bottom: 14px solid var(--axis-color);
}

.axis__label--y {
  position: absolute;
  left: -10px;
  top: 50%;
  transform: translateY(-50%);
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-size: 14px;
  color: #000;
  letter-spacing: 0.08em;
}

/* X axis (bottom) */
.axis--x {
  left: calc(var(--y-axis-space) - 6px);
  right: 10px;
  bottom: 22px;
  height: 40px;
}

.axis--x::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 16px;
  height: var(--axis-thickness);
  background: var(--axis-color);
  border-radius: 2px;
}

.axis--x::after {
  /* arrow head (right) */
  content: "";
  position: absolute;
  right: -2px;
  top: 18px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 14px solid var(--axis-color);
}

.axis__label--x {
  position: absolute;
  left: 50%;
  bottom: -6px;
  transform: translateX(-50%);
  font-size: 15px;
  color: #000;
  letter-spacing: 0.08em;
}

/* 横スクロールは外側に付ける */
.matrix-scroll{
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
}

/*
  矢印が「表の実幅」まで伸びるように、
  .matrix 自体を 100% ではなく“中身サイズ”で横に広がる要素にする
*/
.matrix{
  display: inline-block;  /* これが重要：中身幅に合わせて広がる */
  position: relative;
  padding-left: var(--y-axis-space);
  padding-bottom: var(--x-axis-space);
}

/* 表に最低幅を与えて、狭い画面ではスクロールにする */
.matrix-table{
  width: 1060px;      /* デザイン基準幅。必要に応じて調整 */
  max-width: none;    /* つぶれ防止 */
  border-collapse: collapse;
  table-layout: fixed;
}

/* ====== Card ====== */
.card {
  position: relative;
  text-align: center;
  padding: 10px 8px 8px;
}

.product-image {
  width: 100%;
  max-width: 175px;
  height: 110px;
  margin: 0 auto 10px;
}

.product-image--small {
  max-width: 140px;
  height: 100px;
}

.badge {
  position: absolute;
  left: 10px;
  top: -2px;
  width: 64px;
  height: 64px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  font-weight: 700;
  font-size: 12px;
  color: #fff;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12);
  border: solid 1px #fff;
}

.badge--android {
  background: #6aa84f;
}

.badge--win {
  background: #1c4587;
}


.name {
  font-size: 12px;
  color: #222;
  line-height: 1.4;
}

.series {
  font-size: 12px;
  font-weight: 800;
}

.series a {
  color: #000;
  text-decoration: none;
  margin-bottom: 10px;
  position: relative;
  display: inline-block;
  transition: all 0.5s;
}

.series a::after {
  content: '';
  position: absolute;
  top: 1em;
  right: -1.2em;
  display: inline-block;
  width: 7px;
  height: 7px;
  border-width: 2px 2px 0 0;
  border-style: solid;
  border-color: #074396;
  -webkit-transform: translate(-75%, -50%) rotate(45deg);
  transform: translate(-75%, -50%) rotate(45deg);
  font-size: inherit;
  line-height: inherit;
  transition: all 0.2s;
}

.series a:hover {
  text-decoration: underline;
}

.series a:hover::after {
  right: -1.5em;
}

/* Specs list */
.specs {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
  display: inline-block;
  font-size: 12px;
  color: #222;
  line-height: 1.4;
}

.specs li {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  display: inline-block;
}

.dot--cpu {
  background: #f39c12;
}

/* オレンジ */
.dot--mem {
  background: #1f77b4;
}

/* ブルー */
.dot--nit {
  background: #2ecc71;
}

/* グリーン */

/* ====== Legend ====== */
.legend {
  position: absolute;
  right: 30px;
  bottom: calc(var(--x-axis-space) - 3px);
  font-size: 12px;
  color: #222;
}

.legend__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.legend__list li {
  display: flex;
  align-items: center;
  gap: 8px;
}

/* ====== Responsive (軽め) ====== */

:root {
  --zs-blue: #0a4fa3;
  --zs-border: #d7dbe2;
  --zs-text: #1f2a37;
  --zs-muted: #4b5563;
  --zs-bg: #ffffff;
  --zs-soft: #f3f6fb;
  --zs-radius: 10px;
}

.zs-card {

  border: 1px solid var(--zs-border);
  overflow: hidden;

}

.zs-card__header {
  background: var(--zs-blue);
  padding: 14px 18px;
}

.zs-card__title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  letter-spacing: .02em;
}

.zs-card__top {
  display: flex;
  gap: 18px;
  padding: 18px;
  align-items: center;
  text-align: left;

}

.zs-card__lead {
  flex: 1 1 55%;
  line-height: 1.75;
  color: var(--zs-muted);
}

.zs-card__lead p {
  margin: 0;
  font-size: 94%;
}

.zs-card__media {
  flex: 0 0 42%;
  margin: 0;
  border: 1px solid var(--zs-border);
  overflow: hidden;
  background: #fff;
}

.zs-card__media img {
  display: block;
  width: 100%;
  height: auto;
}

.zs-card__section {
  padding: 0 18px 18px;
  text-align: left;
}

.zs-card__heading {
  margin: 8px 0 10px;
  font-weight: 800;
  color: var(--zs-text);
}

/* Reasons list */
.zs-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 5px;
  text-align: left;
}

.zs-list li::before {
  content: '';
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  background: url(../img/sec04_img01.svg) no-repeat left top / contain;
  vertical-align: middle;
  margin-right: 10px;
}



.zs-list__icon {
  width: 44px;
  height: 44px;
  display: block;
  object-fit: contain;
}

.zs-list__text {
  line-height: 1.6;
  color: var(--zs-text);
  font-weight: 600;
  font-size: 95%;
}

/* Tabs */
.zs-tabs {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.zs-tabs__tab {
  appearance: none;
  background: #eef4ff;
  color: var(--zs-text);
  padding: 10px 14px;
  font-size: 12px;
  font-weight: 700;
  border: none;
}

/* Recommend box */
.zs-reco {
  margin: 0 18px 18px;
  background: var(--zs-soft);
  border: 2px solid #c8d7f0;
  border-radius: 14px;
  padding: 16px;
  text-align: left;
}

.zs-reco__title {
  margin: 0 0 8px;
  font-weight: 900;
  color: var(--zs-text);
}

.zs-reco__desc {
  font-size: 90%;
  line-height: 1.7;
  color: var(--zs-muted);
}

.zs-reco__links {
  margin: 0;
  color: var(--zs-text);
}


.zs-reco__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 800;
  color: #0f3e86;
  text-decoration: none;
}

.zs-reco__link:hover {
  text-decoration: underline;
}

.zs-reco__arrow {
  font-size: 18px;
  line-height: 1;
}

/* Responsive */
@media (max-width: 820px) {
  .l-qnap-mv#giga-school-mv {
    background: url(../img/top_bk_sp.png) bottom center / cover no-repeat;
    padding-bottom: 12vw;
  }

  #giga-school-mv h1 {
    font-size: 4vw;
  }

  .under-h1-p {
    font-size: 2vw;
    margin-bottom: 10px;
  }

  .img_top_tablet {
    max-width: 55vw;
  }

  #img_top_img01,
  #img_top_img02 {
    top: 18vw;
    max-width: 48vw;
  }

  #img_top_img01 {
    left: -8vw;
  }

  #img_top_img02 {
    right: -8vw;
  }

  #sec04 .c-panel-item {
    flex: none;
  }

  .sec05_img01_wrap {
    flex-direction: column;
  }

  .sec05_img01 {
    padding-right: 0px;
    margin-bottom: 15px;
  }

  section.zs-card {
    margin-bottom: 30px;
  }
}

@media (max-width: 640px) {
  .zs-card__top {
    flex-direction: column;
  }

  .zs-card__media {
    flex-basis: auto;
  }

  #giga-school-mv h1 {
    font-size: 6vw;
  }

  .under-h1-p {
    font-size: 3vw;
  }

  .l-qnap-mv#giga-school-mv {

    padding-bottom: 16vw;
  }

      #img_top_img01, #img_top_img02 {
        top: 34vw;
    }

    #img_top_img02 {
        right: -14vw;
    }
    #img_top_img01 {
        left: -14vw;
    }

    .p-contact-block--business{
      margin-top: 0;
    }

    section {
    margin-bottom: 25px;
}

.p-intro {
    padding: 30px 0 50px;
}
.sec01-p01{
  margin-top: 0;
  text-align: center;
}

.sec02_img01_wrap{
  flex-direction: column;
}
.sec02_img01 {
    max-width: 100px;
    margin-bottom: 15px;
}
.sec02_ul {
    padding-left: 0;
}

.p-requirement {
    padding: 30px 0 40px;
}
.arrow-gray {
        border-top: 30px solid #dddddd;
        margin-bottom: 30px;
    }
    section.zs-card {
        margin-bottom: 15px;
    }

    #sec06 .p-intro-lead{
      padding: 0 25px;
    }
}