@charset "UTF-8";

/* CSS Document */


/* ---------------------------------------------------------

	トップページ

--------------------------------------------------------- */
@media screen and (max-width: 994px) {
#topBranding::before {
  left: -50px;
  width: 580px;
}
.JS #HeaderArea1 #SupportNavi > a > span, .JS #HeaderArea1 #SupportNavi > button > span > span {
  padding-left: 8px;
  padding-right: 8px;
}
}
@media screen and (max-width: 767px) {
  #topBranding { height: 250px; }
  #topBranding::before {
  left: -50px;
  width: calc(65% + 50px);
  }
  #topBranding #topBrandingInner .col .h1Title {
  max-width: 65%;
  font-size: 24px;
  }
  .brandingCatch {
  font-size: 16px;
  line-height: 150%;
  }
}

/* 4ブロックメニューエリア */
@media screen and (max-width: 767px) {
  .grayArea {
  margin-bottom: 50px;
  padding-top: 15px;
  }
  .topMenuArea {
  margin-bottom: 50px;
  padding-top: 15px;
  padding-bottom: 15px;
  }
  .menu4Block { padding-top: 0; }
  .menu4Block .col {
  float: none;
  width: 100%;
  height: 300px;
  margin-top: 5px;
  border-left: none;
  }
}
@media screen and (max-width: 579px) {
  .menu4Block .col { height: 200px; }
}
/* 4ブロックメニューエリア（スライド） */
@media screen and (max-width: 767px) {
  .grayAreaSlide {
  margin-bottom: 50px;
  padding-top: 15px;
  padding-bottom: 15px;
  }
  .col4SetMenuSlide li {
  max-width: 100%;
  border-left: none;
  box-sizing: border-box;
  }
  .col4SetMenuSlide li a,.col4SetMenuSlide li .cSoon { height: 300px; }
}
@media screen and (max-width: 579px) {
  .col4SetMenuSlide li a,.col4SetMenuSlide li .cSoon { height: 200px; }
}


/* 関連リンク */
@media screen and (max-width: 767px) {
  .relatedArea {
  margin-bottom: 50px;
  padding: 30px 0 15px 0;
  }
  .relatedTitle span {
  margin-bottom: 10px;
  padding: 0 0 5px 0;
  font-size: 18px;
  }
  .relatedList li {
  width: 48.7%;
  margin-right: 2.6%;
  margin-bottom: 15px;
  }
  .relatedList li:nth-child(4n) { margin-right: 2.6%; }
  .relatedList li:nth-child(2n) { margin-right: 0; }

  /* 子ページの関連リンク */
  .relatedArea.subRelated { padding-bottom: 30px; }
  .relatedListText li a { font-size: 14px; }
}
@media screen and (max-width: 399px) {
  .relatedList li {
  width: 100%;
  margin-right: 0;
  }
  .relatedList li:last-child { margin-bottom: 0; }
  .relatedList li:nth-child(4n) { margin-right: 0; }
}


/* ---------------------------------------------------------

	配下ページ

--------------------------------------------------------- */
@media screen and (max-width: 994px) {
  #subBranding::before {
    left: -50px;
    width: 580px;
  }
}
@media screen and (max-width: 767px) {
  #subBranding { height: 200px; }
  #subBranding::before {
    left: -50px;
    width: calc(65% + 50px);
  }
  #subBranding #subBrandingInner .col .h1Title {
    max-width: 65%;
    font-size: 24px;
  }
    #subBranding.corgenerationPage #subBrandingInner .col .h1Title {
    max-width: 100%;
    font-size: 24px;
  }
  #subBranding #subBrandingInner .col .h1Title::before { width: 24%; }
  #subBranding #subBrandingInner .col .h1Title .h1Small { font-size: 16px; }
}

@media screen and (max-width: 767px) {
/* ブロックエリア */
  .grayAreaSub {
    margin-bottom: 50px;
    padding: 15px 0 0 0;
  }
  .blueAreaSub {
    margin-bottom: 50px;
    padding: 30px 0 20px 0;
  }
  .textImageSetRv { padding-bottom: 15px; }
  .textImageSetRv .col1 {
    float: none;
    width: 100%;
    margin-bottom: 15px;
  }
  .textImageSetRv .col2 {
    float: none;
    width: 100%;
  }
  .imgOnlyBox { padding-bottom: 15px; }
  .imgOnlyBox4 { padding-bottom: 15px; }
  .imgOnlyBox5 { padding-bottom: 30px; }
}

@media screen and (max-width: 767px) {
  .textImageSet {
    padding-top: 15px;
    padding-bottom: 0;
  }
  .textImageSet .col1 {
    float: none;
    width: 100%;
    padding-bottom: 30px;
  }
  .textImageSet .col2 {
    float: none;
    width: 100%;
    padding-bottom: 30px;
  }

  .textImageSetRv {
    padding-top: 15px;
    padding-bottom: 0;
  }
  .textImageSetRv .col1 {
    float: none;
    width: 100%!important;
    padding-bottom: 30px;
  }
  .textImageSetRv .col2 {
    float: none;
    width: 100%!important;
    padding-bottom: 30px;
  }
  .imgOnlyBox { padding-bottom: 15px; }

  /* テーブル */
  .hvdcTable01 caption {
    margin-top: 0;
    height: auto;
    font-size: 14px;
  }
  .hvdcTable01 { min-height: auto!important; }
  .hvdcTable01 tr th { font-size: 14px; }
  .hvdcTable01 tr td { font-size: 14px; }

  /* リスト */
  .hvdcList01 li { font-size: 14px; }

  /* リンクブロック */
  .linkBlockArea p.boxTypeLink01 {
    width: 260px;
    margin-left: 15px;
    margin-right: 15px;
    margin-bottom: 15px;
  }
  .linkBoxSet dl dt {
    display: block;
    margin-bottom: 5px;
    padding-right: 0;
  }
  .linkBoxSet dl dd {
    display: block;
    padding-right: 0;
  }

  /* タブ */
  .subTabList li p {
    text-align: left;
    font-size: 16px;
  }
  .subTabList li:nth-child(1) { padding-right: 5px; }
  .subTabList li:nth-child(2) { padding-left: 5px; }
}

/* ---------------------------------------------------------

	共通設定

--------------------------------------------------------- */

@media screen and (max-width: 767px) {
  .pcOnly { display: none; }
  .spOnly { display: block; }

  .imgLargeLink a { font-size: 14px; }
}