@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,700,300);
/****************************************

    Reset

*****************************************/
/* Reset Style */
html {
  font-size: 62.5%;
  letter-spacing: 0.1em;
  overflow: auto;
  font-family: "Yu Gothic", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  color: #000;
}

html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  -webkit-text-size-adjust: 100%;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

figure {
  margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
}

ol, ul {
  list-style: none outside none;
  margin: 0;
  padding: 0;
}

li {
  list-style-type: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

q:before, q:after {
  content: '';
}

img,
object,
embed {
  vertical-align: top;
}

legend {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
}

li {
  list-style-type: none;
}

select, input, button, textarea {
  font: 99% arial,helvetica,clean,sans-serif;
}
button {
  font-family: "Yu Gothic", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

table {
  font-size: inherit;
  font: 100%;
}

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%;
}

area {
  border: none;
}

em, strong {
  font-weight: bold;
}

/****************************************

    Link

*****************************************/
*:focus-visible {
  outline: 2px solid blue;
}

a:link {
  color: #3c71d4;
  text-decoration: underline;
}

a:hover {
  text-decoration: none;
}

a:visited {
  color: #3c71d4;
  text-decoration: none;
}

/* redLink */
a.redLink:link {
  color: #c81c24;
  text-decoration: underline;
}

a.redLink:hover {
  text-decoration: none;
}

a.redLink:visited {
  color: #c81c24;
  text-decoration: none;
}

/****************************************

    clearfix

*****************************************/
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/****************************************

    common

*****************************************/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  font-size: 1.6rem;
}
.over {
  display: inline-block;
  opacity: 1;
  -moz-transition: opacity 0.2s ease-in;
  -o-transition: opacity 0.2s ease-in;
  -webkit-transition: opacity 0.2s ease-in;
  transition: opacity 0.2s ease-in;
  text-decoration: none;
}
.over:hover {
  opacity: 0.6;
  text-decoration: none;
}

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

  コーディング規約参考：http://google-styleguide.googlecode.com/svn/trunk/htmlcssguide.xml
                        http://www.cyberagent.co.jp/recruit/techreport/report/

----------------------------------------------------------------- */
/*
 * 共通
 */
.view-pc {
  display: block;
}
.view-tb {
  display: none;
}
.deviceTb .view-tb {
  display: block;
}
.view-sp {
  display: none;
}
.view-notsp {
  display: block;
}
.view-nottb {
  display: block;
}
.view-notpc {
  display: none;
}
/*
.deviceTb .view-notpc {
  display: block;
}
*/
.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
/* wrapper */
.wrapper {
  padding-top: 110px;
  position: relative;
}
.mainContents {
}
.mainContents .pageHeader {
  width: 100%;
  padding: 35px 0;
  margin-bottom: 60px;
  background: #f4f4f4;
  transition: .3s;
}
.mainContents .pageHeader .pageTtl {
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 54px;
  max-width: 940px;
  padding: 0 50px;
  margin: 0 auto;
}
.mainContents .pageHeader .sub {
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  max-width: 940px;
  padding: 0 50px;
  margin: 0 auto;
}
.mainContents .breadcrumb {
  width: 100%;
  padding: 10px 0;
}
.mainContents .breadcrumb ul {
  text-align: right;
  max-width: 1100px;
  padding: 0 50px;
  margin: 0 auto;
}
.mainContents .breadcrumb ul li {
  display: inline;
  color: #001a72;
  font-size: 1.2rem;
}
.mainContents .breadcrumb ul li:before {
  content: ">";
  color: #d9ddea;
  margin: 0 8px;
}
.mainContents .breadcrumb ul li:first-child:before {
  content: "";
  margin: 0;
}
.mainContents .breadcrumb ul li a {
  color: #808cb8;
  text-decoration: none;
}
.mainContents .baseBlock {
  max-width: 940px;
  width: 100%;
  margin: 0 auto;
  padding: 0 50px;
}
.mainContents .baseBlock p {
  font-size: 1.6rem;
  line-height: 1.9;
}
/* .mainContents .baseBlock ul,
.mainContents .baseBlock ul li,
.mainContents .baseBlock ol,
.mainContents .baseBlock ol li {
  font-size: 1.6rem;
} */
.mainContents .blockTtl {
  color: #001a72;
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 44px;
  margin-bottom: 55px;
}
#footer {
  color: #fff;
  width: 100%;
  background: #333333;
  box-sizing: border-box;
  position: relative;
}
  #footer #pageTop {
    display: block;
    width: 50px;
    height: 50px;
    position: fixed;
    right: 35px;
    bottom: 15%;
    z-index: 10;
    transition: .3s;
    visibility: hidden;
    opacity: 0;
  }
  #footer #pageTop.active {
    visibility: visible;
    opacity: 1;
  }
    #footer #pageTop a {
      display: block;
      text-indent: -9999px;
      height: 100%;
      background: url(../img/common/pagetop.svg) no-repeat center center / cover;
    }
  #footer .footTop {
    max-width: 1100px;
    padding: 85px 0 35px 0;
    margin: 0 auto;
  }
    #footer .snsVox {
      margin-bottom: 50px;
    }
      #footer .snsVox .snsTtl {
        display: block;
        color: #fff;
        font-size: 1.8rem;
        letter-spacing: .1em;
        margin-bottom: 20px;
      }
      #footer .snsList {
        display: flex;
        justify-content: flex-start;
      }
        #footer .snsList li {
          min-width: 36px;
          margin-right: 40px;
        }
    #footer .footList {
      letter-spacing: -.4em;
    }
      #footer .footList li {
        display: inline-block;
        letter-spacing: normal;
        margin-right: 20px;
      }
        #footer .footList li a {
          display: block;
          color: #fff;
          font-size: 1.2rem;
          line-height: 1;
          letter-spacing: 1px;
          text-decoration: none;
        }
  #footer .footBottom {
    background: #001a72;
  }
    #footer .copyright {
      display: block;
      text-align: right;
      color: #99a3c7;
      font-size: 1.0rem;
      letter-spacing: .4px;
      max-width: 1100px;
      padding: 5px 30px;
      margin: 0 auto;
    }
.indexContent {
  width: 100%;
  margin-bottom: 50px;
}
  .indexContent .indexLead {
    line-height: 2.0;
    max-width: 960px;
    padding: 0 50px;
    margin: 0 auto 40px auto;
  }
  .indexContent .indexTile {
    display: flex;
    flex-wrap: wrap;
    width: auto !important;
    max-width: 960px;
    margin: 0 auto;
  }
    .indexContent .indexTile .indexTileItem {
      width: 33.3%;
      max-width: 320px;
      margin-bottom: 15px;
      position: relative;
    }
      .indexContent .indexTile .indexTileItem img {
        max-width: 100%;
      }
      .indexContent .indexTile .indexTileItem a {
        display: block;
        color: #000;
        text-decoration: none;
        margin: 0 10px;
        transition: .3s;
      }
      .indexContent .indexTile .indexTileItem a:hover {
        opacity: 0.6;
      }
      .indexContent .indexTile .indexTileItem .pagename {
        display: flex;
        align-items: center;
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1.3;
        height: 60px;
        margin-top: -30px;
        width: calc(100% - 29px);
        background: #fff;
        transform: translateX(30px);
      }
      .indexContent .indexTile .indexTileItem .pagename > span {
        padding: 5px 18px;
        position: relative;
      }
      .indexContent .indexTile .indexTileItem .icoWin .pagename > span {

      }
      .indexContent .indexTile .indexTileItem .icoWin .pagename > span::after {
        display: inline-block;
        content: "";
        margin-left: 8px;
        margin-right: 5px;
        background: no-repeat center center / cover;
        width: 10px;
        height: 10px;
        background-image: url(../img/common/ico_blank_black.png);
      }
      .indexContent .indexTile .indexTileItem .pagename .sub {
        font-size: 1.0rem;
        letter-spacing: normal;
      }
      .indexContent .indexTile .indexTileItem .description {
        padding-bottom: 60px;
      }
.indexNews {
  margin-bottom: 80px;
}
.indexNews .indexTile {
  display: block;
}
  .indexNews .indexTile .blockTtl {
    margin-bottom: 0;
  }
  .indexNews .indexTile .moreLink {
    display: block;
    max-width: 940px;
    margin: 0 auto 15px auto;
  }
  .indexNews ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
  }
    .indexNews ul li {
      margin-bottom: 30px;
      overflow: hidden;
    }
    .indexNews ul li:last-child {
      margin-bottom: 0;
    }
      .indexNews ul li .date {
        font-size: 1.4rem;
        font-weight: bold;
        text-align: left;
        width: 90px;
        float: left;
        margin-right: 10px;
      }
      .indexNews ul li .category {
        font-size: 1.2rem;
        text-align: center;
        line-height: 1;
        width: 110px;
        float: left;
      }
      .indexNews ul li .category span {
        display: block;
        color: #fff;
        padding: 5px 0;
        background: #333;
      }
      .indexNews ul li .category .category_business,
      .newsDetail .category .category_business {
        background: #7c72af;
      }
      .indexNews ul li .category .category_products,
      .newsDetail .category .category_products {
        background: #ca4d87;
      }
      .indexNews ul li .category .category_corporate,
      .newsDetail .category .category_corporate,
      .indexNews ul li .category .category_news_release,
      .newsDetail .category .category_news_release {
        background: #e4841e;
      }
      .indexNews ul li .category .category_csr,
      .newsDetail .category .category_csr {
        background: #8caa13;
      }
      .indexNews ul li .category .category_emergency,
      .newsDetail .category .category_emergency {
        background: #e74d4c;
      }
      .indexNews ul li .category .category_ir,
      .newsDetail .category .category_ir {
        background: #298eba;
      }
      .indexNews ul li .category .category_topics,
      .newsDetail .category .category_topics {
        background: #2a7f55;
      }
      .indexNews ul li .title {
        color: #333;
        font-size: 1.4rem;
        margin-left: 230px;
      }
        .indexNews ul li .title a {
          color: #000;
          text-decoration: none;
        }
        .indexNews ul li .icoPDF:after,
        .indexNews ul li .linkPdf:after {
          display: inline-block;
          content: " ";
          width: 18px;
          height: 16px;
          margin-left: 5px;
          background: url(../img/common/ico_pdf.png) no-repeat left top / 18px 16px;
          position: relative;
          top: 2px;
        }
/* globalHeader */
.globalHeader {
  width: 100%;
  height: 110px;
  background: #fff;
  position: fixed;
  z-index: 100;
}
  .globalHeader .globalHeaderInner {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    height: 100%;
    padding: 0 130px 0 40px;
    position: relative;
  }
  .globalHeader .logo {
    line-height: 1;
    width: 135px;
    height: 26px;
    margin-bottom: 40px;
  }
    .globalHeader .logo img {
      width: 100%;
      height: 100%;
    }
  .globalHeader .btnDrawer {
    display: none;
  }
.drawerMenu {
  width: calc(100% - 200px);
  overflow: hidden;
}
  .drawerMenu .megaNav {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  .drawerMenu .megaNav .searchBtn {
    width: 30px;
    margin-left: 20px;
    margin-bottom: 10px;
  }
    .drawerMenu .megaNav .searchBtn a {
      display: block;
      padding: 5px;
    }
    .drawerMenu .megaNav .searchBtn img {
      width: 20px;
      vertical-align: middle;
    }
  .drawerMenu .megaNav .langBtn {
    width: 30px;
    margin-left: 10px;
    margin-bottom: 10px;
  }
    .drawerMenu .megaNav .langBtn a {
      display: block;
      padding: 5px;
    }
    .drawerMenu .megaNav .langBtn img {
      width: 20px;
      vertical-align: middle;
    }
/* megaNavParent */
.megaNavParent {
  display: flex;
  justify-content: flex-end;
}
  .megaNavParent > li {
    line-height: 1;
    font-size: 1.4rem;
    margin: 0 5px;
  }
    .megaNavParent > li > a {
      display: block;
      color: #000;
      font-weight: bold;
      letter-spacing: 1px;
      text-decoration: none;
      padding: 30px 10px 35px 10px;
      position: relative;
    }
    .megaNavParent > li.tabDefault.tbWideActive > a,
    .megaNavParent > li.tabDefault.tabActive > a,
    .megaNavParent > li > a:hover {
      color: #9fa0a0;
    }
    .megaNavParent > li > a.icoWin {
      padding-right: 18px;
      background: url("../img/common/ico_blank_black.png") no-repeat right 2.2em;
    }
/* megaNavSlide */
.megaNavSlide {
  color: #000;
  font-weight: bold;
  width: 100%;
  padding: 40px 0 50px 0;
  background: #efefef;
  visibility: hidden;
  position: fixed;
  top: 110px;
  left: 0;
  z-index: -1;
  opacity: 0;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  box-sizing: border-box;
}
.megaNavParent > li:hover > .megaNavSlide {
  visibility: visible;
  opacity: 1;
}
.megaNavParent > li:hover li:hover > .megaNavSlide {
  visibility: visible;
  opacity: 1;
}
.html-tbWide .megaNavParent .megaNavSlide {
  visibility: hidden !important;
  opacity: 0 !important;
}
  .megaNavSlideInner {
    display: flex;
    justify-content: flex-start;
    max-width: 1100px;
    margin: 0 auto;
    overflow: hidden;
  }
  .megaNavHeader {
    font-size: 1.2rem;
    width: 250px;
    margin-right: 30px;
    border-right: 1px solid #dcdcdc;
  }
    .megaNavHeader .navTtl {
      font-size: 2.8rem;
      letter-spacing: normal;
      line-height: 1.3;
      margin-bottom: 15px;
    }
      .megaNavHeader .navTtl span {
        display: block;
      }
    .megaNavHeader .more > a {
      display: inline-block;
      padding-left: 0;
      padding-right: 15px;
      background: url("../img/common/nav_arw.png") no-repeat right center;
    }
  .megaNavContent {
    max-width: 790px;
    width: calc(100% - 300px);
  }
    .megaNavSub {
      width: 246px;
    }
    .megaNavSubTtl {
      font-size: 2.4rem;
      letter-spacing: 0.08em;
      margin-bottom: 15px;
    }
    .megaNavContent > ul {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap;
    }
      .megaNavContent > ul > li {
        width: 33.3%;
        margin-bottom: 5px;
        line-height: 1.6;
      }
    .megaNavContent .megaNavSlide {
      padding: 0 0 0 1em;
      position: static;
    }
  .megaNavSlide a {
    display: inline-block;
    color: #000;
    font-size: 1.4rem;
    letter-spacing: 1px;
    text-decoration: none;
    padding: 5px 0;
    position: relative;
    transition: all .2s ease;
  }
  .megaNavSlide a:hover {
    opacity: .7;
  }
  .megaNavSlide a.icoWin {
    padding-right: 15px;
    background: url("../img/common/ico_blank_black.png") no-repeat right center;
  }
.globalHeader .searchArea {
  width: 100%;
  padding: 40px 70px;
  background: #efefef;
  position: fixed;
  top: 110px;
  left: 0;
  z-index: 100;
  box-sizing: border-box;
  transition: .2s;
  visibility: hidden;
  opacity: 0;
}
.globalHeader .searchArea.active {
  visibility: visible;
  opacity: 1;
}
  .globalHeader .searchVox {
    max-width: 960px;
    margin: 0 auto;
    background: #fff;
    padding: 12px;
  }
    .globalHeader .searchVox .searchForm {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
      .globalHeader .searchVox .searchWord {
        width: calc(100% - 50px) !important;
        height: auto !important;
        padding: 10px !important;
        box-sizing: border-box;
        border: none !important;
        border-right: 1px solid #e5e8f1 !important;
      }
      .globalHeader .searchVox .btn {
        cursor: pointer;
        text-indent: -99999px;
        width: 50px;
        height: 40px;
        padding: 0;
        background: url(../img/common/ico_search.png) no-repeat center center / 20px 20px;
        border: none;
      }
  .globalHeader .searchArea .closeBtn {
    width: 30px;
    height: 30px;
    position: absolute;
    top: 20px;
    right: 20px;
  }
    .globalHeader .searchArea .closeBtn a {
      display: block;
      text-indent: -99999px;
      height: 100%;
      position: relative;
    }
    .globalHeader .searchArea .closeBtn a::before,
    .globalHeader .searchArea .closeBtn a::after {
      display: block;
      content: "";
      width: 30px;
      height: 2px;
      background: #001a72;
      position: absolute;
      top: 15px;
      left: 0;
    }
    .globalHeader .searchArea .closeBtn a::before {
      transform: rotate(-45deg);
    }
    .globalHeader .searchArea .closeBtn a::after {
      transform: rotate(45deg);
    }
    .globalHeader .langNav {
      position: absolute;
      top: 110px;
      right: 0;
      padding: 30px;
      background: #F1F1FA;
      transition: .2s;
      z-index: 100;
      visibility: hidden;
      opacity: 0;
    }
    .globalHeader .langNav .langNavInner {
      position: relative;
    }
    .globalHeader .langNav.active {
      visibility: visible;
      opacity: 1;
    }
    .globalHeader .langNav .langNavTitle {
      margin-bottom: 10px;
      font-size: 1.4rem;
      font-weight: bold;
    }
    .globalHeader .langNav a {
      display: inline-block;
      color: #001A71;
      font-weight: bold;
    }
    .globalHeader .langNav .icoWin {
      padding-right: 15px;
      background: url("../img/common/ico_blank_black.png") no-repeat right center;
    }
    .globalHeader .langNav .langGlobalList {
      margin-bottom: 20px;
      padding-bottom: 20px;
      border-bottom: 1px solid #CCCCCC;
    }
    .globalHeader .langNav .langGlobalList li {
      display: inline-block;
      font-size: 1.6rem;
    }
    .globalHeader .langNav .langGlobalList li:not(:first-child) {
      margin-left: 10px;
    }
    .globalHeader .langNav .langGlobalList li a {
      padding-left: 0;
    }
    .globalHeader .langNav .langNavList {
     margin-top: 15px; 
    }
    .globalHeader .langNav .langNavList li:not(:first-child) {
      margin-top: 8px;
    }
    .globalHeader .langNav .langNavClose {
      display: block;
      position: absolute;
      right: -16px;
      top: -16px;
      width: 24px;
      height: 24px;
      padding: 0;
      border: 0;
      background: none;
      white-space: nowrap;
      z-index: 1;
      cursor: pointer;
      transition: .2s;
    }
    .globalHeader .langNav .langNavClose:hover {
      opacity: 0.7;
    }
    .globalHeader .langNav .langNavClose::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      width: 24px;
      height: 2px;
      background-color: #001A71;
      transform: rotate(-45deg);
    }
    .globalHeader .langNav .langNavClose::after {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      width: 24px;
      height: 2px;
      background-color: #001A71;
      transform: rotate(45deg);
    }
    .globalHeader .langNav .langNavClose span {
      opacity: 0;
    }
    .globalHeader #acdBtn {
      display: none;
    }
#aithinkBtn {
  width: 100px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
  #aithinkBtn a {
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    height: 100%;
    background: #001a72;
    position: relative;
  }
    #aithinkBtn a::after {
      display: block;
      content: "";
      width: 10px;
      height: 10px;
      background: url("../img/common/ico_blank_white.png");
      position: absolute;
      top: 10px;
      right: 10px;
    }
    #aithinkBtn a img {
      width: 50px;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }
/**
 * ****************************************************
 *
 * START : azlink add common css 2017.02.09
 *
 * ****************************************************
 */
/**
 * white-space
 */
.wsN {
  white-space: nowrap !important;
}

/**
 *  word-wrap
 */
.wrBW {
  word-wrap: break-word !important;
}

/**
 * ワードブレイク
 */
.wbBrkA {
  word-break: break-all !important;
}
sub {
  vertical-align: middle;
}
/**
 * --------------------------------------------------------------------------
 * 文字色装飾
 * --------------------------------------------------------------------------
 */
.cWhite {
  color: #FFFFFF !important;
}
.cRed {
  color: #C71B23 !important;
}

/**
 * --------------------------------------------------------------------------
 * 文字装飾
 * --------------------------------------------------------------------------
 */
.decUline {
  text-decoration: underline !important;
}
.decNone {
  text-decoration: none !important;
}

/**
 * --------------------------------------------------------------------------
 * 見出し
 * --------------------------------------------------------------------------
 */
.headStyle01 {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 38px;
  padding-left: 23px;
  margin-bottom: 30px;
  background: url(../img/common/ico_point03.svg) no-repeat left 0.3em / 11px 20px;
}
.headStyle02 {
  font-size: 2.0rem;
  font-weight: bold;
  line-height: 36px;
  padding-left: 20px;
  margin-bottom: 30px;
  position: relative;
}
.headStyle02::after {
  display: block;
  content: "";
  width: 11px;
  height: 2px;
  background: #001a72;
  position: absolute;
  top: 0.8em;
  left: 0;
}
.headStyle03 {
  font-size: 1.8rem;
  font-weight: normal;
  line-height: 30px;
  margin-bottom: 30px;
}
.headStyle04 {
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 30px;
  margin-bottom: 20px;
}
.headStyle05 {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 26px;
  margin-bottom: 20px;
}
.headStyle06,
.mainContents p.copyTxt {
  color: #001a72;
  font-size: 2.6rem;
  font-weight: bold;
  margin-bottom: 20px !important;
}
.headStyle07 {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  padding-bottom: 10px;
  margin-top: 60px;
  margin-bottom: 30px;
  border-bottom: 1px solid #d9ddea;
  position: relative;
}
.headStyle07::before {
  display: block;
  content: "";
  width: 110px;
  height: 1px;
  background: #001a72;
  position: absolute;
  bottom: -1px;
  left: 0;
}
  .headStyle07 .sub {
    font-size: 1.3rem;
    margin-left: 10px;
  }
.headStyle08 {
  color: #001a72;
  font-weight: bold;
  margin-top: 25px;
  margin-bottom: 5px;
}

/**
 * --------------------------------------------------------------------------
 * リスト
 * --------------------------------------------------------------------------
 */
.listStyle01 {
  list-style-type: none;
}
.listStyle02 {
  padding-left: 1.5em;
}
  .listStyle02 li {
    list-style-type: disc;
  }
/**
 * --------------------------------------------------------------------------
 * テーブル
 * --------------------------------------------------------------------------
 */
.tableStyle01 {
  width: 100%;
  border-collapse: collapse;
}
  .tableStyle01 tbody th {
    color: #001a72;
    font-weight: normal;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #d9ddea;
    padding: 20px 30px 50px 20px;
    position: relative;
  }
  .tableStyle01 tbody th::before {
    display: block;
    content: "";
    width: 27px;
    height: 1px;
    background: #001a72;
    position: absolute;
    top: -1px;
    left: 20px;
  }
  .tableStyle01 tbody td {
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #d9ddea;
    padding: 20px 20px 50px 20px;
  }
.tableStyle02 {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #001a72;
  border-bottom: 1px solid #001a72;
}
  .tableStyle02 th {
    font-size: 1.4rem;
    padding: 25px 30px;
  }
  .tableStyle02 thead th {
    color: #fff;
    font-weight: bold;
    text-align: center;
    background: #001a72;
  }
  .tableStyle02 thead .headTH th {
    color: #fff;
    font-weight: normal;
    text-align: center;
    background: #001a72;
  }
  .tableStyle02 thead tr th:not(:first-of-type) {
    border-left: 1px solid #d9ddea;
  }
  .tableStyle02 tbody th {
    font-weight: normal;
    background: #f7f8fb;
    border-bottom: 1px solid #d9ddea;
  }
  .tableStyle02 td {
    font-size: 1.4rem;
    white-space: nowrap;
    text-align: center;
    padding: 25px 30px;
    border-left: 1px solid #d9ddea;
    border-bottom: 1px solid #d9ddea;
  }
  .tableStyle02 tbody tr:last-of-type th,
  .tableStyle02 tbody tr:last-of-type td {
    border-bottom: none;
  }
  .tableStyle02 .strong {
    background: #f5f5f9;
  }
.formTable {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 35px;
  margin-bottom: 70px;
}
  .formTable th {
    font-weight: normal;
    text-align: left;
    width: 180px;
    padding: 20px 0 20px 30px;
    background: #fff;
    border-left: 1px solid #001A72;
  }
    .formTable th div {
      font-size: 1.5rem;
      height: 100%;
      padding-right: 45px;
      position: relative;
    }
      .formTable th .icoRequire {
        margin: -0.8em 0 0 0;
        position: absolute;
        top: 50%;
        right: 0;
      }
  .formTable td {
    padding: 0 0 0 20px;
    background: #fff;
  }
    .formTable td .caution {
      margin-top: 5px;
      color: #FF0000;
      font-size: 1.2rem;
    }
    .formTable p {
      margin-bottom: 0;
    }
    .formTable p.caption {
      color: #808080;
      font-size: 1.2rem;
      line-height: 1.3;
      margin-top: 8px;
    }
    .formTable input[type="text"],
    .formTable textarea {
      width: 100%;
      padding: 20px;
      border: none;
      background: #E6E6E6;
      box-sizing: border-box;
    }
    .formTable input.short {
      width: 130px;
    }
    .formTable input.short2 {
      width: 160px;
    }
    .formTable input.medium {
      width: 100%;
    }
    .formTable select {
      padding: 20px;
      border: none;
      background: #E6E6E6;
    }
    .formTable .require input[type="text"],
    .formTable .require textarea,
    .formTable .require select {
      background: #E5E8F1;
    }
    .formTable .require #entryPref {
      margin-bottom: 20px;
    }
    .formTable .require.errorTD input[type="text"],
    .formTable .require.errorTD textarea,
    .formTable .require.errorTD select {
      background: #FBE0DE;
    }
  .btnArea {
    display: flex;
    justify-content: center;
    text-decoration: none;
    margin: 0 auto;
    overflow: hidden;
  }
    .btnArea .confirmBtn {
      width: 260px;
      margin: 0 15px;
    }
    .btnArea .submitBtn {
      width: 260px;
      margin: 0 15px;
      position: relative;
    }
    .btnArea .inputBtn {
      width: 360px;
      margin: 0 auto;
      position: relative;
    }
      .btnArea input {
        cursor: pointer;
        display: block;
        color: #000;
        font-size: 1.6rem;
        font-weight: bold;
        text-align: center;
        width: 100%;
        height: 100%;
        padding: 20px 0;
        margin: 0 auto;
        border: none;
        background: #fff;
        border: 1px solid #001A72;
        border-radius: 10em;
        transition: .2s;
      }
      .btnArea .submitBtn input {
        color: #fff;
        background: #001A72;
      }
      .btnArea input:hover,
      .btnArea input:hover {
        opacity: 0.7;
      }
/**
 * --------------------------------------------------------------------------
 * ボックス
 * --------------------------------------------------------------------------
 */
.voxStyle01 {
  max-width: 790px;
  padding: 40px 50px;
  margin: 100px auto 0 auto;
  background: #edeff5;
}
.columnVox {
  display: flex;
  justify-content: center;
}
  .columnVox .item {
    width: 300px;
    margin-right: 20px;
    margin-bottom: 90px;
  }
  .columnVox .item:nth-of-type(3n) {
    margin-right: 0;
  }
    .columnVox .item figure {
      text-align: center;
    }
      .columnVox .item figure figcaption {
        font-size: 1.4rem;
        line-height: 26px;
        text-align: left;
        margin-top: 12px;
      }
.imgTxtVox {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
  .imgTxtVox > .img {
    width: 400px;
  }
    .imgTxtVox > .img > img {
      max-width: 100%;
    }
  .imgTxtVox > .txt {
    width: calc(100% - 440px);
    max-width: 500px;
  }
/**
 * --------------------------------------------------------------------------
 * FAQ
 * --------------------------------------------------------------------------
 */
.faqList {
  counter-increment: cnt;
  padding: 0 0 20px;
  margin: 0 0 20px;
  border-bottom: 1px solid #f5f5f5;
}
.faqList:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}
  .faqList dt,
  .faqList dd {
    position: relative;
    line-height: 1.9;
  }
  .faqList dt {
    color: #323C99;
    font-weight: bold;
    padding-left: 4.5em;
    margin-bottom: 20px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .faqList dt:before {
    content: "Q." counter(cnt);
    color: #323C99;
    font-weight: bold;
    line-height: 1.5;
    padding: 0 5px 3px 5px;
    border-bottom: 1px solid #323C99;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .faqList dd {
    padding-left: 4.5em;
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .faqList dd:before {
    content: "A." counter(cnt);
    color: #323C99;
    font-weight: bold;
    line-height: 1.5;
    padding: 0 5px 3px 5px;
    border-bottom: 1px solid #323C99;
    position: absolute;
    top: 0;
    left: 0;
  }
/**
 * --------------------------------------------------------------------------
 * relatedLinks
 * --------------------------------------------------------------------------
 */
.relatedLinks {
  width: 100%;
  margin-top: 30px;
  background: #edeff5;
}
  .relatedLinks .title {
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
    padding: 10px 15px;
    background: #001a72;
  }
  .relatedLinks .relatedLinksContent {
    padding: 15px 20px;
  }
    .relatedLinks .relatedLinksContent p {
      font-size: 1.8rem;
      margin-bottom: 10px;
    }
    .relatedLinks .relatedLinksContent .more {
      text-align: right;
    }
      .relatedLinks .relatedLinksContent .more a {
        color: #001a72;
        text-decoration: none;
      }
      .relatedLinks .relatedLinksContent .more a:hover {
        text-decoration: underline;
      }
        .relatedLinks .relatedLinksContent .more .icoNW::after {
          background-image: url(../img/common/ico_blank_blue.png);
        }
/**
 * --------------------------------------------------------------------------
 * localNav
 * --------------------------------------------------------------------------
 */
.localNavVox {
  padding: 80px 0;
  background: #edeff5;
}
  .localNavVox .blockTtl {
    padding: 0 10px;
    margin-bottom: 30px;
  }
  .localNavVox .cInner {
    width: 940px;
    margin: 0 auto;
  }
  .localNavList {
    list-style-type: none;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding: 0;
    margin: 0;
  }
    .localNavList li {
      width: 300px;
      margin-right: 20px;
      margin-bottom: 20px;
    }
    .localNavList li:nth-of-type(3n) {
      margin-right: 0;
    }
      .localNavList li a {
        display: flex;
        align-items: center;
        color: #000;
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1.3;
        text-decoration: none;
        height: 100%;
        min-height: 80px;
        padding: 15px 40px 15px 20px;
        background: #fff;
        position: relative;
        box-sizing: border-box;
        transition: .2s;
      }
      .localNavList li.powertrain a {
        border-top: 4px solid #a41528;
      }
      .localNavList li.brake_chassis a {
        border-top: 4px solid #0076cf;
      }
      .localNavList li.body a {
        border-top: 4px solid #009244;
      }
      .localNavList li.cs-s a {
        border-top: 4px solid #df6421;
      }
      .localNavList li.aftermarket a {
        border-top: 4px solid #245a84;
      }
      .localNavList li a::after {
        display: block;
        content: "";
        width: 20px;
        height: 20px;
        background: url(../img/common/ico_arrow03.svg) no-repeat right center / cover;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
      }
        .localNavList li a .in span {
          font-size: 1.4rem;
        }
      .localNavList li a:hover {
        opacity: .7;
      }

/**
 * --------------------------------------------------------------------------
 * AIThink
 * --------------------------------------------------------------------------
 */
.aithinkVox {
  color: #fff;
  background: #001a72;
  padding: 55px 0;
}
  .aithinkVox .inner {
    max-width: 1080px;
    margin: 0 auto;
  }
    .aithinkVox .heading {
      font-weight: bold;
      line-height: 1.3;
      margin-bottom: 30px;
    }
      .aithinkVox .heading img {
        width: 160px;
        margin-bottom: 10px;
      }
      .aithinkVox .heading p {
        font-size: 1.65rem !important;
      }
    .aithinkVox .entryVox {
      display: flex;
      justify-content: space-between;
    }
      .aithinkVox .entryVox .entry {
        width: 500px;
      }
      .aithinkVox .entryVox .entry:not(:first-of-type) {
        width: 520px;
        padding-left: 20px;
        border-left: 1px solid #fff;
      }
        .aithinkVox .entryVox .entry a {
          display: flex;
          align-items: center;
          color: #fff;
          text-decoration: none;
          transition: .2s;
        }
        .aithinkVox .entryVox .entry a:hover {
          opacity: .7;
        }
        .aithinkVox .entryVox .entry .img {
          text-align: center;
          width: 248px;
          margin-right: 20px;
        }
          .aithinkVox .entryVox .entry .img img {
            max-width: 100%;
          }
        .aithinkVox .entryVox .entry .txt {
          width: 230px;
        }
          .aithinkVox .entryVox .entry .txt .title {
            font-size: 1.8rem;
            font-weight: bold;
            line-height: 1.5;
            margin-bottom: 5px;
          }
          .aithinkVox .entryVox .entry .txt time {
            display: block;
            font-size: 1.4rem;
            font-weight: 500;
            line-height: 1.3;
            margin-bottom: 25px;
          }
          .aithinkVox .entryVox .entry .txt .tags {
            list-style-type: none;
            padding: 0;
            margin: 0;
          }
            .aithinkVox .entryVox .entry .txt .tags li {
              font-size: 1.4rem;
              font-weight: 500;
              padding-left: 13px;
              background: url(../img/common/ico_tag.svg) no-repeat left center / 10px 10px;
            }
/**
 * --------------------------------------------------------------------------
 * セレクトリスト
 * --------------------------------------------------------------------------
 */
.selectList {
  margin-bottom: 50px;
  overflow: hidden;
}
  .selectList .item {
    width: 31.3%;
    float: left;
    margin-right: 2%;
    position: relative;
  }
  .selectList .item::after {
    display: block;
    content: "";
    width: 6px;
    height: 6px;
    border-top: 1px solid #001A72;
    border-right: 1px solid #001A72;
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%) rotate(135deg);
  }
  .selectList .item:nth-child(3n) {
    margin-right: 0;
  }
    .selectList .item select {
      cursor: pointer;
      width: 100%;
      color: #001A72;
      background: #fff;
      padding: 20px 25px;
      border: 1px solid #D9DDEA;
      border-bottom: 1px solid #001A72;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      position: relative;
    }

/**
 * --------------------------------------------------------------------------
 * アンカーリンク
 * --------------------------------------------------------------------------
 */
.anchorLink {
  margin-bottom: 90px;
}
  .anchorLink ul {
    display: flex;
    justify-content: center;
    list-style-type: none;
    padding: 0;
    margin: 0;
  }
    .anchorLink ul li {
      width: 305px;
      margin-right: 12px;
    }
    .anchorLink ul li:nth-of-type(3n) {
      margin-right: 0;
    }
      .anchorLink ul li a {
        display: block;
        color: #000;
        text-decoration: none;
        padding: 15px 40px 15px 20px;
        background: url(../img/common/ico_arrow_down.svg) no-repeat 95% center / 8px 6px;
        border-bottom: 1px solid #001a72;
      }
/**
 * --------------------------------------------------------------------------
 * タブ
 * --------------------------------------------------------------------------
 */
.tabVoxWrapper {
  margin-bottom: 130px;
}
.tabs {
  list-style-type: none;
  display: flex;
  justify-content: space-around;
  max-width: 940px;
  padding: 0 0 8px 0;
  margin: 0 0 50px 0;
}
.tabVoxWrapper .tabs {
  margin-bottom: 0;
}
  .tabs li {
    width: 305px;
    margin-right: 12px;
  }
  .tabs.column3 li:nth-of-type(3n) {
    margin-right: 0;
  }
  .tabs.column6 li:nth-of-type(6n) {
    margin-right: 0;
  }
  .tabs.column2 li {
    width: 465px;
  }
  .tabs.column2 li:nth-of-type(3n) {
    margin-right: 12px;
  }
  .tabs.column2 li:nth-of-type(2n) {
    margin-right: 0;
  }
    .tabs li a {
      display: flex;
      justify-content: center;
      align-items: center;
      color: #000;
      font-size: 1.6rem;
      font-weight: bold;
      letter-spacing: 0.2em;
      line-height: 1.3;
      text-decoration: none;
      vertical-align: middle;
      text-align: center;
      height: 100%;
      padding: 20px 0;
      border: 1px solid #001a72;
      position: relative;
      transition: .2s;
      box-sizing: border-box;
    }
    .tabs li.active a,
    .tabs li a:hover {
      color: #fff;
      background-color: #001a72;
    }
.tabContents {
  display: none;
  padding-top: 50px;
}

/**
 * --------------------------------------------------------------------------
 * アイコン
 * --------------------------------------------------------------------------
 */
.icoPDF::after,
.icoDOC::after,
.icoXLS::after,
.icoMP3::after,
.icoMP4::after,
.icoNW::after {
  display: inline-block;
  content: "";
  color: #3c71d4;
  margin-left: 8px;
  margin-right: 5px;
  background: no-repeat center center / cover;
}
a.icoPDF,
a.icoDOC,
a.icoXLS,
a.icoMP3,
a.icoMP4,
a.icoNW {
  color: #3c71d4;
}
.icoPDF::after {
  width: 18px;
  height: 16px;
  background-image: url(../img/common/ico_pdf_blue.png);
}
.icoDOC::after {
  width: 24px;
  height: 16px;
  background-image: url(../img/common/ico_doc_blue.png);
}
.icoXLS::after {
  width: 22px;
  height: 16px;
  background-image: url(../img/common/ico_xls_blue.png);
}
.icoMP3::after {
  width: 22px;
  height: 16px;
  background-image: url(../img/common/ico_mp3_blue.png);
}
.icoMP4::after {
  width: 22px;
  height: 16px;
  background-image: url(../img/common/ico_mp4_blue.png);
}
.icoNW::after {
  width: 10px;
  height: 10px;
  background-image: url(../img/common/ico_blank_blue2.png);
}
.icoNW.white::after {
  background-image: url(../img/common/ico_blank_white.png);
}
.icoNW.white.large::after {
  width: 20px;
  height: 20px;
  background-image: url(../img/common/ico_blank_white_l.png);
}
.icoRequire {
  display: inline-block;
  color: #fff;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: center;
  line-height: 1.3;
  padding: 3px 5px;
  margin: 0 3px;
  background: #001A72;
}

/**
 * --------------------------------------------------------------------------
 * 文字の太さ
 * --------------------------------------------------------------------------
 */
.fwN {
  font-weight: normal !important;
}
.fwB {
  font-weight: bold !important;
}

/**
 * --------------------------------------------------------------------------
 * 文字の高さ
 * --------------------------------------------------------------------------
 */
.lh1 {
  line-height: 1 !important;
}
.lh1-2 {
  line-height: 1.2 !important;
}
.lh1-5 {
  line-height: 1.5 !important;
}
.lh2 {
  line-height: 2 !important;
}

/**
 * --------------------------------------------------------------------------
 * レイアウト
 * --------------------------------------------------------------------------
 */
.mA {
  margin: 0 auto !important;
}
.mLA {
  margin-left: auto !important;
}
.mRA {
  margin-right: auto !important;
}
.m0 {
  margin: 0 !important;
}
.m3 {
  margin: 3px !important;
}
.m5 {
  margin: 5px !important;
}
.m10 {
  margin: 10px !important;
}
.m15 {
  margin: 15px !important;
}
.m20 {
  margin: 20px !important;
}
.m25 {
  margin: 25px !important;
}
.m30 {
  margin: 30px !important;
}
.m35 {
  margin: 35px !important;
}
.m40 {
  margin: 40px !important;
}
.m45 {
  margin: 45px !important;
}
.m50 {
  margin: 50px !important;
}
.mT0 {
  margin-top: 0px !important;
}
.mT5 {
  margin-top: 5px !important;
}
.mT10 {
  margin-top: 10px !important;
}
.mT15 {
  margin-top: 15px !important;
}
.mT20 {
  margin-top: 20px !important;
}
.mT25 {
  margin-top: 25px !important;
}
.mT30 {
  margin-top: 30px !important;
}
.mT35 {
  margin-top: 35px !important;
}
.mT40 {
  margin-top: 40px !important;
}
.mT45 {
  margin-top: 45px !important;
}
.mT50 {
  margin-top: 50px !important;
}
.mR0 {
  margin-right: 0px !important;
}
.mB3 {
  margin-right: 3px !important;
}
.mR5 {
  margin-right: 5px !important;
}
.mR10 {
  margin-right: 10px !important;
}
.mR15 {
  margin-right: 15px !important;
}
.mR20 {
  margin-right: 20px !important;
}
.mR25 {
  margin-right: 25px !important;
}
.mR30 {
  margin-right: 30px !important;
}
.mR35 {
  margin-right: 35px !important;
}
.mR40 {
  margin-right: 40px !important;
}
.mR45 {
  margin-right: 45px !important;
}
.mR50 {
  margin-right: 50px !important;
}
.mR70 {
  margin-right: 70px !important;
}
.mR100 {
  margin-right: 100px !important;
}
.mR110 {
  margin-right: 110px !important;
}
.mR120 {
  margin-right: 120px !important;
}
.mR130 {
  margin-right: 130px !important;
}
.mR140 {
  margin-right: 140px !important;
}
.mR150 {
  margin-right: 150px !important;
}
.mR160 {
  margin-right: 160px !important;
}
.mR170 {
  margin-right: 170px !important;
}
.mR180 {
  margin-right: 180px !important;
}
.mR190 {
  margin-right: 190px !important;
}
.mR200 {
  margin-right: 200px !important;
}
.mR210 {
  margin-right: 210px !important;
}
.mR220 {
  margin-right: 220px !important;
}
.mR230 {
  margin-right: 230px !important;
}
.mR240 {
  margin-right: 240px !important;
}
.mR250 {
  margin-right: 250px !important;
}
.mR260 {
  margin-right: 260px !important;
}
.mR280 {
  margin-right: 280px !important;
}
.mR300 {
  margin-right: 300px !important;
}
.mB0 {
  margin-bottom: 0px !important;
}
.mB3 {
  margin-bottom: 3px !important;
}
.mB5 {
  margin-bottom: 5px !important;
}
.mB10 {
  margin-bottom: 10px !important;
}
.mB15 {
  margin-bottom: 15px !important;
}
.mB20 {
  margin-bottom: 20px !important;
}
.mB25 {
  margin-bottom: 25px !important;
}
.mB30 {
  margin-bottom: 30px !important;
}
.mB35 {
  margin-bottom: 35px !important;
}
.mB40 {
  margin-bottom: 40px !important;
}
.mB45 {
  margin-bottom: 45px !important;
}
.mB50 {
  margin-bottom: 50px !important;
}
.mL0 {
  margin-left: 0px !important;
}
.mL5 {
  margin-left: 5px !important;
}
.mL1em {
  margin-left: 1.0em !important;
}
.mL10 {
  margin-left: 10px !important;
}
.mL15 {
  margin-left: 15px !important;
}
.mL20 {
  margin-left: 20px !important;
}
.mL25 {
  margin-left: 25px !important;
}
.mL30 {
  margin-left: 30px !important;
}
.mL35 {
  margin-left: 35px !important;
}
.mL40 {
  margin-left: 40px !important;
}
.mL45 {
  margin-left: 45px !important;
}
.mL50 {
  margin-left: 50px !important;
}
.mL55 {
  margin-left: 55px !important;
}
.mL60 {
  margin-left: 60px !important;
}
.mL70 {
  margin-left: 70px !important;
}
.mL80 {
  margin-left: 80px !important;
}
.mL85 {
  margin-left: 85px !important;
}
.mL105 {
  margin-left: 105px !important;
}
.mL110 {
  margin-left: 110px !important;
}
.mL115 {
  margin-left: 115px !important;
}
.mL120 {
  margin-left: 120px !important;
}
.mL130 {
  margin-left: 130px !important;
}
.mL140 {
  margin-left: 140px !important;
}
.mL150 {
  margin-left: 150px !important;
}
.mL170 {
  margin-left: 170px !important;
}
.mL200 {
  margin-left: 200px !important;
}
.mL225 {
  margin-left: 225px !important;
}
.mL270 {
  margin-left: 270px !important;
}
.p0 {
  padding: 0 !important;
}
.p3 {
  padding: 3px !important;
}
.p5 {
  padding: 5px !important;
}
.p10 {
  padding: 10px !important;
}
.p15 {
  padding: 15px !important;
}
.p20 {
  padding: 20px !important;
}
.p25 {
  padding: 25px !important;
}
.p30 {
  padding: 30px !important;
}
.p35 {
  padding: 35px !important;
}
.p40 {
  padding: 40px !important;
}
.p45 {
  padding: 45px !important;
}
.p50 {
  padding: 50px !important;
}
.pT0 {
  padding-top: 0px !important;
}
.pT2 {
  padding-top: 2px !important;
}
.pT3 {
  padding-top: 3px !important;
}
.pT5 {
  padding-top: 5px !important;
}
.pT10 {
  padding-top: 10px !important;
}
.pT15 {
  padding-top: 15px !important;
}
.pT20 {
  padding-top: 20px !important;
}
.pT25 {
  padding-top: 25px !important;
}
.pT30 {
  padding-top: 30px !important;
}
.pT35 {
  padding-top: 35px !important;
}
.pT40 {
  padding-top: 40px !important;
}
.pT45 {
  padding-top: 45px !important;
}
.pT50 {
  padding-top: 50px !important;
}
.pT80 {
  padding-top: 80px !important;
}
.pT100 {
  padding-top: 100px !important;
}
.pR0 {
  padding-right: 0px !important;
}
.pR5 {
  padding-right: 5px !important;
}
.pR10 {
  padding-right: 10px !important;
}
.pR15 {
  padding-right: 15px !important;
}
.pR20 {
  padding-right: 20px !important;
}
.pR25 {
  padding-right: 25px !important;
}
.pR30 {
  padding-right: 30px !important;
}
.pR35 {
  padding-right: 35px !important;
}
.pR40 {
  padding-right: 40px !important;
}
.pR45 {
  padding-right: 45px !important;
}
.pR50 {
  padding-right: 50px !important;
}
.pB0 {
  padding-bottom: 0px !important;
}
.pB5 {
  padding-bottom: 5px !important;
}
.pB10 {
  padding-bottom: 10px !important;
}
.pB15 {
  padding-bottom: 15px !important;
}
.pB20 {
  padding-bottom: 20px !important;
}
.pB25 {
  padding-bottom: 25px !important;
}
.pB30 {
  padding-bottom: 30px !important;
}
.pB35 {
  padding-bottom: 35px !important;
}
.pB40 {
  padding-bottom: 40px !important;
}
.pB45 {
  padding-bottom: 45px !important;
}
.pB50 {
  padding-bottom: 50px !important;
}
.pL0 {
  padding-left: 0px !important;
}
.pL5 {
  padding-left: 5px !important;
}
.pL10 {
  padding-left: 10px !important;
}
.pL15 {
  padding-left: 15px !important;
}
.pL20 {
  padding-left: 20px !important;
}
.pL25 {
  padding-left: 25px !important;
}
.pL30 {
  padding-left: 30px !important;
}
.pL35 {
  padding-left: 35px !important;
}
.pL40 {
  padding-left: 40px !important;
}
.pL45 {
  padding-left: 45px !important;
}
.pL50 {
  padding-left: 50px !important;
}

/**
 * --------------------------------------------------------------------------
 * float用スタイル
 * --------------------------------------------------------------------------
 */
.fLeft {
  float: left !important;
}
.fRight {
  float: right !important;
}
.fClear {
  clear: both !important;
}
.fClearL {
  clear: left !important;
}
.fClearR {
  clear: right !important;
}
.fN {
  float: none !important;
}

/**
 * --------------------------------------------------------------------------
 * position用スタイル
 * --------------------------------------------------------------------------
 */
.posRel {
  position: relative !important;
}
.posAbs {
  position: absolute !important;
}

/**
 *  overflow用スタイル
 */
.ofHidden {
  overflow: hidden !important;
}
.ofAuto {
  overflow: auto !important;
}
.ofVisible {
  overflow: visible !important;
}

/**
 * --------------------------------------------------------------------------
 * display用スタイル
 * --------------------------------------------------------------------------
 */
.dspInline {
  display: inline !important;
}
.dspBlock {
  display: block !important;
}
.dspInlBlock {
  display: inline-block !important;
}
.dspNone {
  display: none !important;
}
.dspTable {
  display: table !important;
}
.dspTblCell {
  display: table-cell !important;
}

/**
 * --------------------------------------------------------------------------
 * 汎用行揃え用スタイル
 * --------------------------------------------------------------------------
 */
.alignLeft {
  text-align: left !important;
}
.alignCenter {
  text-align: center !important;
}
.alignRight {
  text-align: right !important;
}

/**
 * --------------------------------------------------------------------------
 * 汎用縦揃え用スタイル
 * --------------------------------------------------------------------------
 */
.valignTop {
  vertical-align: top !important;
}
.valignMiddle {
  vertical-align: middle !important;
}
.valignBottom {
  vertical-align: bottom !important;
}
.valignTextBottom {
  vertical-align: text-bottom !important;
}
.valignSuper {
  vertical-align: super !important;
}

/**
 * --------------------------------------------------------------------------
 * 汎用幅指定用スタイル
 * --------------------------------------------------------------------------
 */
.w5 {
  width: 5px !important;
}
.w10em {
  width: 10em !important;
}
.w10p {
  width: 10% !important;
}
.w15p {
  width: 15% !important;
}
.w20p {
  width: 20% !important;
}
.w25p {
  width: 25% !important;
}
.w30p {
  width: 30% !important;
}
.w30 {
  width: 30px !important;
}
.w40p {
  width: 40% !important;
}
.w40 {
  width: 40px !important;
}
.w50 {
  width: 50px !important;
}
.w60 {
  width: 60px !important;
}
.w70 {
  width: 70px !important;
}
.w80 {
  width: 80px !important;
}
.w90 {
  width: 90px !important;
}
.w98p {
  width: 98% !important;
}
.w99p {
  width: 99% !important;
}
.w100 {
  width: 100px !important;
}
.w100p {
  width: 100% !important;
}

/**
 * --------------------------------------------------------------------------
 * hasLayout true
 * --------------------------------------------------------------------------
 */
.h1p {
  height: 1%;
}
.z1 {
  zoom: 1;
}

/**
 * --------------------------------------------------------------------------
 * リスト用スタイル
 * --------------------------------------------------------------------------
 */
.listTypeNone {
  list-style-type: none;
}
.listInside {
  list-style-position: inside;
}
.listOutside {
  list-style-position: outside;
}
.listTypeDisc {}
  .listTypeDisc li {
    list-style-type: disc;
    margin-left: 20px;
  }
.listTypeSquare {
  list-style-type: square;
}
.listTypeCircle {
  list-style-type: circle;
}
.listTypeNum {
  padding-left: 0;
  margin-left: 0;
  margin-top: 0;
}
  .listTypeNum li {
    list-style-type: decimal;
    margin-left: 20px;
  }
.listNumParentheses {
  list-style-type: none;
  list-style-position: inside;
}
.listNumParentheses li {
  counter-increment: cnt;
}
.listNumParentheses li:before {
  display: marker;
  content: "(" counter(cnt) ")";
}

/**
 * --------------------------------------------------------------------------
 * 背景色用スタイル
 * --------------------------------------------------------------------------
 */
.bgFFFFFF {
  background-color: #FFFFFF !important;
}
.bgE6ECE8 {
  background-color: #e6ece8 !important;
}
.bgF0F0DC {
  background-color: #F0F0DC !important;
}
.bgF0EFEE {
  background-color: #F0EFEE !important;
}
.bgEBE6E1 {
  background-color: #EBE6E1 !important;
}
.bgC9C9C9 {
  background-color: #C9C9C9 !important;
}
.bgF5F5F5 {
  background-color: #F5F5F5 !important;
}
.bgF7F7F7 {
  background-color: #F7F7F7 !important;
}

/**
 * --------------------------------------------------------------------------
 * ボーダー用スタイル
 * --------------------------------------------------------------------------
 */
.bdr1s999 {
  border: 1px solid #999999 !important;
}
.bdr1sCCC {
  border: 1px solid #CCCCCC !important;
}
.bdr1sCBCBCB {
  border: 1px solid #CBCBCB !important;
}
.bdr1sBBB {
  border: 1px solid #BBBBBB !important;
}
.bdr1s5B5B5B {
  border: 1px solid #5B5B5B !important;
}
.bdr1do444444 {
  border: 1px dotted #444444 !important;
}
.bdrTn {
  border-top: none !important;
}
.bdrRn {
  border-right: none !important;
}
.bdrBn {
  border-bottom: none !important;
}
.bdrLn {
  border-left: none !important;
}
.bdrN {
  border: none !important;
}
.bdrTop {
  border-right: none !important;
  border-bottom: none !important;
  border-left: none !important;
}
.bdrRight {
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
}
.bdrBottom {
  border-top: none !important;
  border-right: none !important;
  border-left: none !important;
}
.bdrLeft {
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
}

/**
 * テキストインデント
 */
.tim1em {
  text-indent: -1.0em;
}
.ti1em {
  text-indent: 1.0em;
}

/**
 * カーソル
 */
.csrPtr {
  cursor: pointer;
}
/**
 * --------------------------------------------------------------------------
 * ボタン用スタイル
 * --------------------------------------------------------------------------
 */
.btnStyle01 {}
  .btnStyle01 a {
    display: inline-block;
    color: #000;
    text-decoration: none;
    text-align: center;
    width: auto;
    min-width: 310px;
    padding: 10px 25px;
    background: #fff;
    border: 1px solid #001a72;
    border-radius: 10em;
    transition: .2s;
  }
  .btnStyle01 a:hover {
    opacity: .7;
  }
    .btnStyle01 a span {
      display: flex;
      justify-content: center;
      align-items: center;
      line-height: 1.3;
      min-height: 60px;
    }
.moreBtn {}
  .moreBtn div,
  .moreBtn a {
    display: inline-block;
    color: #001a72;
    text-decoration: none;
    padding: 45px 0 0 55px;
    position: relative;
    transition: opacity .2s ease;
  }
  .moreBtn a:hover {
    opacity: .7;
  }
  .moreBtn div::before,
  .moreBtn a::before {
    display: block;
    content: "";
    width: 70px;
    height: 70px;
    background: url(../img/common/ico_arrow01.svg) no-repeat center center / cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  .moreBtn.white div,
  .moreBtn.white a {
    color: #fff;
  }
  .moreBtn.white div::before,
  .moreBtn.white a::before {
    background-image: url(../img/common/ico_arrow02.svg);
  }
  .moreBtn div span,
  .moreBtn a span {
    font-size: 1.5rem;
    position: relative;
    z-index: 2;
  }
  .moreBtn .icoWin span {
    padding-right: 18px;
    background: url("../img/common/ico_blank_blue.png") no-repeat right center;
  }
  .moreBtn.white .icoWin span {
    background-image: url("../img/common/ico_blank_white.png");
  }
.moreLink {
  text-align: right;
}
  .moreLink a {
    display: inline-block;
    color: #000;
    font-size: 1.5rem;
    font-weight: bold;
    text-decoration: none;
    padding-left: 20px;
    background: url(../img/common/ico_point.svg) no-repeat left center / 10px 10px;
    transition: .2s;
  }
  .moreLink a:hover {
    opacity: 0.7;
  }
  .moreLink.white a {
    color: #fff;
    background-image: url(../img/common/ico_point02.svg);
  }
/**
 * --------------------------------------------------------------------------
 * alphaBg
 * --------------------------------------------------------------------------
 */
#alphaBg {
  width: 100%;
  position: fixed;
  left: 0px;
  top: 0px;
  z-index: 500;
  background: #000000;
  display: none;
  min-height: 100%;
}
.popupWrapper {
  width: 75.5%;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -37.75%;
  display: none;
  z-index: 2100;
  /*visibility: hidden;*/
}
  .popupWrapper .closeVox {
    border-left: 2px solid #fff;
    position: absolute;
    top: 0;
    right: 0;
  }
  .popupWrapper .popupCloseBt {
    display: block;
    height: 62px;
    line-height: 62px;
    text-decoration: none;
    padding: 0 45px 0 20px;
    position: relative;
    transition: .2s;
  }
  .popupWrapper .popupCloseBt:hover {
    background: #323c99;
  }
  .popupWrapper a.popupCloseBt:before {
    color: #000;
    font-weight: bold;
    content: "CLOSE";
    transition: .2s;
  }
  .popupWrapper a.popupCloseBt:hover:before {
    color: #fff;
  }
    .popupWrapper .popupCloseBt span {
      width: 15px;
      height: 1px;
      background: #000;
      position: absolute;
      right: 20px;
      top: 50%;
      margin: -1px 0 0 -8px;
      transition: .2s;
    }
    .popupWrapper .popupCloseBt:hover span {
      background: #fff;
    }
    .popupWrapper .popupCloseBt span:nth-child(1) {
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
    }
    .popupWrapper .popupCloseBt span:nth-child(2) {
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
    }
  .popupWrapper .titleVox {
    font-size: 1.6rem;
    font-weight: normal;
    letter-spacing: 0.1em;
    background-color: #f1f1f5;
    height: 62px;
    line-height: 62px;
    padding: 0 120px 0 30px;
  }
  .popupWrapper .contentWrapper {}
  .popupWrapper .content {
    background: #FFFFFF;
  }
  .popupWrapper .inner {
    padding: 30px;
  }
    .popupWrapper .inner p {
      margin-bottom: 30px;
    }
#popupContents {
  display: none;
}
#popupWrapperMovie {}
  #popupWrapperMovie .movieVox  {
    height: 0;
    padding-top: 56.25%;

    position: relative;
    width: 100%;
  }
    #popupWrapperMovie .movieVox iframe,
    #popupWrapperMovie .movieVox video {
      position: absolute;
      top: 0;
      left: 0;
      width: 100% !important;
      height: 100% !important;
    }
/**
 * --------------------------------------------------------------------------
 * accordion
 * --------------------------------------------------------------------------
 */
.accordionWrapper {
  margin-top: -1px;
  border-bottom: 1px solid #001a72;
  overflow: hidden;
}
  .accordionWrapper .accordionTtl {
    cursor: pointer;
    font-size: 1.6rem;
    padding: 30px 50px 30px 30px;
    border-top: 1px solid #001a72;
    position: relative;
    transition: .2s;
  }
  .accordionWrapper button.accordionTtl {
    width: 100%;
    background: none;
    border: none;
    border-top: 1px solid #001a72;
    text-align: left;
  }
  .accordionWrapper button.accordionTtl:focus-visible {
    outline-offset: -2px;
  }

  .accordionWrapper .accordionTtl::before,
  .accordionWrapper .accordionTtl::after {
    display: block;
    content: "";
    width: 15px;
    height: 1px;
    background: #001a72;
    position: absolute;
    top: 50%;
    right: 30px;
    transition: .2s;
  }
  .accordionWrapper .accordionTtl::after {
    transform: rotate(90deg);
  }
  .accordionWrapper.open > .accordionTtl {
    color: #fff;
    background: #333;
  }
  .accordionWrapper.open > .accordionTtl::before {
    background: #fff;
  }
  .accordionWrapper.open > .accordionTtl::after {
    transform: rotate(0);
    opacity: 0;
  }
  .accordionWrapper .accordionInner {
    display: none;
    padding-top: 40px;
  }

/**
 * ****************************************************
 *
 * END : azlink add common css 2017.02.09
 *
 * ****************************************************
 */
/* ---------------------------------------------------------------- *
    1025px未満
----------------------------------------------------------------- */
@media only screen and (max-width: 1024px) {
  .view-pc {
    display: none;
  }

  .view-tb {
    display: none;
  }

  .deviceTb .view-tb {
    display: none;
  }

  .view-sp {
    display: block;
  }

  .view-notsp {
    display: none;
  }

  .view-nottb {
    display: block;
  }

  .view-notpc {
    display: block;
  }

  .deviceTb .view-notpc {
    display: block;
  }
  .wrapper {
    width: 100%;
    padding-top: 55px;
    padding-left: 0;
  }
  .globalHeader {
    height: 55px;
  }
    .globalHeader .globalHeaderInner {
      display: block;
      height: 100%;
      padding: 0 70px 0 0;
      overflow: hidden;
    }
      .globalHeader .logo {
        width: 100px;
        height: 20px;
        float: left;
        margin: 18px 0 0 18px;
      }
        .globalHeader .logo img {
          width: 100%;
        }
    .globalHeader #acdBtn {
      display: block;
      cursor: pointer;
      width: 70px;
      height: 55px;
      position: absolute;
      top: 0;
      right: 0;
      z-index: 51;
      background: #fff;
      border: 0;
    }
      .globalHeader #acdBtn .btnDesign {
        display: block;
        width: 20px;
        height: 2px;
        background-color: #001a72;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        transition: .3s;
      }
      .globalHeader #acdBtn .btnDesign.btnTop {
        top: 20px;
      }
      .globalHeader #acdBtn .btnDesign.btnMdl {
        top: 26px;
      }
      .globalHeader #acdBtn .btnDesign.btnBom {
        top: 32px;
      }
      .globalHeader #acdBtn.spActive .btnDesign {
        transition: .3s;
      }
      .globalHeader #acdBtn.spActive .btnDesign.btnTop {
        top: 26px;
        transform: rotate(45deg);
      }
      .globalHeader #acdBtn.spActive .btnDesign.btnMdl {
        width: 0;
        height: 0;
      }
      .globalHeader #acdBtn.spActive .btnDesign.btnBom {
        top: 26px;
        transform: rotate(-45deg);
      }
  .globalHeader .langBtn {
    width: 30px;
    float: right;
    margin-top: 12px;
  }
    .globalHeader .langBtn a {
      display: block;
      line-height: 1;
      padding: 5px;
    }
    .globalHeader .langBtn img {
      width: 20px;
      vertical-align: middle;
    }
  .drawerMenu {
    width: 100%;
    height: calc(100vh - 55px);
    padding: 0 20px 90px 20px;
    background-color: #efefef;
    position: fixed;
    left: 100%;
    top: 55px;
    z-index: 50;
    overflow-y: scroll;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    box-sizing: border-box;
  }
    .drawerMenu .megaNav {
      display: block;
      min-height: 100%;
      position: relative;
    }
      .drawerMenu .megaNav .snsVox {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
      }
        .drawerMenu .megaNav .snsVox .snsTtl {
          display: block;
          color: #042275;
          font-size: 1.8rem;
          letter-spacing: .1em;
          width: 12em;
        }
        .drawerMenu .megaNav .snsList {
          display: flex;
          /*justify-content: space-between;*/
          align-items: center;
          width: 200px;
        }
          .drawerMenu .megaNav .snsList li {
            width: 38px;
            margin: 0 13px;
          }
          .drawerMenu .megaNav .snsList li:first-child {
            margin-left: 0;
          }
  .megaNavParent {
    display: block;
  }
    .megaNavParent > li {
      font-size: 1.5rem;
      margin: 0;
      border-bottom: 1px solid #bababa;
    }
      .megaNavParent > li > a {
        color: #000;
        padding: 15px 30px;
      }
      .megaNavParent > li.tabDefault.tbWideActive > a,
      .megaNavParent > li.tabDefault.tabActive > a,
      .megaNavParent > li > a:hover {
        color: #000;
      }
      .megaNavParent > li > a.icoWin {
        background-image: url("../img/common/ico_blank_black.png");
        background-position: 93% center;
      }
      .megaNavParent > li.parent > a {
        background: url("../img/common/icon_plus.svg") no-repeat 94% center / 15px 15px;
      }
      .megaNavParent > li.parent.spActive > a {
        background-image: url("../img/common/icon_minus.svg");
      }
  .megaNavParent a {
    display: inline-block;
    color: #000;
    font-size: 1.5rem;
    letter-spacing: 1px;
    line-height: 1.6;
    text-decoration: none;
    width: 100%;
    padding: 10px 30px 10px 60px;
    box-sizing: border-box;
    position: relative;
  }
  .megaNavSlide {
    display: none;
    padding: 0 0 0 30px;
    background: transparent;
    position: static;
    visibility: visible;
    opacity: 1;
  }
    .megaNavSlide a:hover {
      opacity: 1;
    }
    .megaNavSlide a.icoWin {
      padding-right: 30px;
      background-position: 92% center;
    }
    .megaNavSlideInner {
      display: block;
    }
    .megaNavContent {
      display: block;
      width: auto;
      max-width: 100%;
    }
      .megaNavSub {
        display: none;
      }
      .megaNavContent > ul {
        display: block;
        max-width: inherit;
        width: auto;
        margin-left: 0;
        margin-right: 0;
      }
        .megaNavContent > ul li {
          width: auto;
          margin-bottom: 0;
          border-top: 1px solid #dcdcdc;
        }
          .megaNavContent > ul li > a {
            font-size: 1.3rem;
            padding: 15px 30px 15px 20px;
            background: url("../img/common/nav_arw_black.svg") no-repeat 92% center / 6px 9px;
          }
          .megaNavContent > ul li.parent > a {
            background-image: url("../img/common/icon_plus.svg");
            background-size: 9px 9px;
          }
          .megaNavContent > ul li.parent.spActive > a {
            background-image: url("../img/common/icon_minus.svg");
          }
  .globalHeader .searchVox {
    padding: 10px;
    margin-top: 40px;
    margin-bottom: 40px;
  }
    .globalHeader .searchVox .searchWord {
      width: calc(100% - 40px) !important;
    }
    .globalHeader .searchVox .btn {
      width: 40px;
    }
    .globalHeader .langNav {
      position: fixed;
      top: 55px;
      right: 0;
      left: 0;
      padding: 20px;
      transition: none;
    }
    .globalHeader .langNav .langNavClose {
      right: -8px;
      top: -8px;
      cursor: default;
    }

    .overlay {
      display: block;
      position: fixed;
      top: 110px;
      left: 0;
      width: 100vw;
      height: 100vh;
      background-color: rgba(0, 0, 0, 0.5);
      z-index: 90;
    }
  #aithinkBtn {
    display: none;
  }

}
/* ---------------------------------------------------------------- *
    スマートフォン・タブレット（960px未満）
----------------------------------------------------------------- */
@media only screen and (max-width: 960px) {
  body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
    font-size: 1.5rem;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  .mainContents {
    padding-left: 0;
  }
  .mainContents .pageHeader {
    width: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-bottom: 40px;
  }
  .mainContents .pageHeader .pageTtl {
    word-break: break-all;
    font-size: 2.6rem;
    line-height: 1.5;
    padding: 0 20px;
    max-width: inherit;
    box-sizing: border-box;
  }
  .mainContents .pageHeader .sub {
    line-height: 1.3;
    max-width: inherit;
    padding: 0 20px;
  }
  .mainContents .breadcrumb {
    width: auto;
    padding: 3px 10px;
  }
  .mainContents .breadcrumb ul {
    padding: 0;
  }
  .mainContents .breadcrumb ul li {
    font-size: 0.9rem;
  }
  .mainContents .baseBlock {
    width: auto;
    padding: 0 20px;
  }
  .mainContents .baseBlock p {
    font-size: 1.5rem;
  }
  /* .mainContents .baseBlock ul,
  .mainContents .baseBlock ul li,
  .mainContents .baseBlock ol,
  .mainContents .baseBlock ol li {
    font-size: 1.5rem;
  } */
  .mainContents .blockTtl {
    font-size: 2.2rem;
    line-height: 38px;
    margin-bottom: 30px;
  }
  .bnrSprits {
    width: 90%;
    margin: 0 auto;
  }
  .bnrSprits img {
    width: 100%;
  }

  #f-nav .navList {
    display: none;
  }
  #f-nav .navList.on {
    display: block;
  }
  #f-nav .navList li {
    width: 100%;
    border-top: 1px solid #fff;
  }
  #f-nav .navList li:first-child {
    border: none;
  }
  #f-nav .navList li a {
    display: inline-block;
    color: #fff;
    font-size: 1.3rem;
    line-height: 1;
    text-align: left;
    text-decoration: none;
    width: 100%;
    padding: 20px 25px;
    background: #000 url(../img/common/nav_arw.png) no-repeat 95% center;
    box-sizing: border-box;
  }
  #f-nav .navList li a:hover, #f-nav .navList li a.current {
    background-color: #333;
  }
  #footer {}
    #footer #pageTop {
      width: 37px;
      height: 37px;
      right: 10px;
      bottom: 6%;
    }
    #footer .footTop {
      padding: 50px 30px 30px 30px;
    }
      #footer .snsVox {
        margin-bottom: 40px;
      }
        #footer .snsVox .snsTtl {
          color: #fff;
          text-align: center;
          margin-bottom: 15px;
        }
        #footer .snsList {
          justify-content: center;
        }
          #footer .snsList li:last-of-type {
            margin-right: 0;
          }
      #footer .footList {}
        #footer .footList li {
          display: block;
          margin-right: 0;
          margin-bottom: 25px;
        }
        #footer .footList li:last-of-type {
          margin-bottom: 0;
        }
          #footer .footList li a {
            font-size: 1.3rem;
          }
    #footer .footBottom {
      background: #001a72;
    }
      #footer .copyright {
        display: block;
        text-align: right;
        color: #99a3c7;
        font-size: 1.0rem;
        letter-spacing: .4px;
        max-width: 1100px;
        padding: 5px 30px;
        margin: 0 auto;
      }
  .indexContent {}
    .indexContent .indexLead {
      font-size: 1.6rem;
      padding-left: 20px;
      padding-right: 20px;
    }
    .indexContent .indexTile {
      width: auto !important;
      padding: 0 10px;
    }
      .indexContent .indexTile .indexTileItem {
        width: 50%;
        max-width: 100%;
      }
      /* SPのみ */
      @media only screen and (max-width: 767px) {
        .indexContent .indexTile .indexTileItem {
          width: 100%;
        }
      }
        .indexContent .indexTile .indexTileItem a {
          transition: none;
        }
        .indexContent .indexTile .indexTileItem a:hover {
          opacity: 1;
        }
        .indexContent .indexTile .indexTileItem .pagename {
          font-size: 1.7rem;
        }
        .indexContent .indexTile .indexTileItem .description {
          padding-bottom: 30px;
        }
  .indexNews {}
    .indexNews .indexTile .moreLink {
      margin-bottom: 40px;
    }
    .indexNews ul {}
      .indexNews ul li {}
        .indexNews ul li .date {
          width: 8em;
          margin-right: 0;
          margin-bottom: 10px;
        }
        .indexNews ul li .category {
          margin-bottom: 10px;
        }
        .indexNews ul li .title {
          clear: both;
          margin-left: 0;
        }
          .indexNews ul li .title a {
            display: inline-block;
            padding-right: 25px;
            background: url(../img/common/nav_arw_black.svg) no-repeat right center / 6px 9px;
          }
          .indexNews ul li a.icoPDF,
          .indexNews ul li a.linkPdf {
            background-image: url(../img/common/ico_pdf.png);
            background-size: 18px 16px;
            min-height: 16px;
          }
          .indexNews ul li .icoPDF:after,
          .indexNews ul li .linkPdf:after {
            display: none;
          }
  /**
   * --------------------------------------------------------------------------
   * 見出し
   * --------------------------------------------------------------------------
   */
  .headStyle01 {
    font-size: 2.0rem;
    line-height: 32px;
    margin-bottom: 20px;
  }
  .headStyle02 {
    font-size: 1.8rem;
    line-height: 30px;
  }
  .headStyle07 {
    font-size: 2.2rem;
    padding-bottom: 5px;
    margin-top: 40px;
    margin-bottom: 20px;
  }
  .headStyle07::before {
    width: 75px;
  }
    .headStyle07 .sub {
      display: block;
      font-size: 1.2rem;
      margin-left: 0;
    }
  .mainContents p.copyTxt {
    font-size: 2.4rem;
  }
  /**
   * --------------------------------------------------------------------------
   * テーブル
   * --------------------------------------------------------------------------
   */
    .tableStyle01 {
      display: block;
    }
      .tableStyle01 tbody,
      .tableStyle01 tr,
      .tableStyle01 th,
      .tableStyle01 td {
        display: block;
      }

      .tableStyle01 tbody th {
        padding: 10px 0 5px 0;
        background: none;
      }
      .tableStyle01 tbody th::before {
        left: 0;
      }
      .tableStyle01 tbody td {
        padding: 0 0 30px 0;
        border-top: none;
      }
  /**
   * --------------------------------------------------------------------------
   * ボックス
   * --------------------------------------------------------------------------
   */
  .imgTxtVox {
    display: block;
  }
    .imgTxtVox > .img {
      width: auto;
      margin-bottom: 20px;
    }
    .imgTxtVox > .txt {
      width: auto;
      max-width: 100%;
    }
  /**
   * --------------------------------------------------------------------------
   * FAQ
   * --------------------------------------------------------------------------
   */
  .faqList {}
    .faqList dt {
      margin-bottom: 15px;
    }
  /**
   * --------------------------------------------------------------------------
   * relatedLinks
   * --------------------------------------------------------------------------
   */
  .relatedLinks {}
    .relatedLinks .title {
      font-size: 1.3rem;
      padding: 15px 30px;
    }
    .relatedLinks .relatedLinksContent {
      padding: 15px 30px;
    }
      .relatedLinks .relatedLinksContent p {
        font-size: 1.7rem;
      }
      .relatedLinks .relatedLinksContent .more {
        text-align: right;
      }
        .relatedLinks .relatedLinksContent .more a {
          color: #001a72;
          text-decoration: none;
        }
        .relatedLinks .relatedLinksContent .more a:hover {
          text-decoration: underline;
        }
          .relatedLinks .relatedLinksContent .more .icoNW::after {
            background-image: url(../img/common/ico_blank_blue.png);
          }
  /**
   * --------------------------------------------------------------------------
   * タブ
   * --------------------------------------------------------------------------
   */
  .tabs {
    margin-bottom: 30px;
  }
    .tabs li {
      width: 32.7%;
      margin-right: 1%;
    }
      .tabs li a {
        font-size: 1.2rem;
        letter-spacing: normal;
        padding: 10px 0;
      }
    .tabs.column2 li {
      width: 49.5%;
    }
    .tabs li:nth-of-type(3n) {
      margin-right: 1%;
    }
  .tabContents {
    padding-top: 30px;
  }

  /**
   * --------------------------------------------------------------------------
   * localNav
   * --------------------------------------------------------------------------
   */
  .localNavVox {
    padding: 70px 0;
  }
    .localNavVox .blockTtl {
      padding: 0 20px;
    }
    .localNavVox .cInner {
      width: auto;
    }
    .localNavVox .indexTile .indexTileItem {
      margin-bottom: 30px;
    }
    .localNavVox .indexTile .indexTileItem:last-of-type {
      margin-bottom: 0;
    }
    .localNavList {
      display: block;
      padding: 0 20px;
    }
      .localNavList li {
        width: auto;
        margin-right: 0;
      }
        .localNavList li a {
          font-size: 1.7rem;
        }
  /**
   * --------------------------------------------------------------------------
   * AIThink
   * --------------------------------------------------------------------------
   */
  .aithinkVox {
    padding: 60px 20px 15px 20px;
  }
    .aithinkVox .inner {
      width: auto;
    }
      .aithinkVox .heading {}
        .aithinkVox .heading img {
          width: 105px;
          margin-bottom: 15px;
        }
      .aithinkVox .entryVox {
        display: block;
      }
        .aithinkVox .entryVox .entry {
          width: 100%;
        }
        .aithinkVox .entryVox .entry:not(:first-of-type) {
          width: 100%;
          padding-left: 0;
          padding-top: 20px;
          margin-top: 20px;
          border-left: none;
          border-top: 1px solid #fff;
        }
          .aithinkVox .entryVox .entry a {
            transition: none;
          }
          .aithinkVox .entryVox .entry .img {
            width: 140px;
          }
          .aithinkVox .entryVox .entry .txt {
            width: calc(100% - 155px);
          }
            .aithinkVox .entryVox .entry .txt .title {
              font-size: 1.6rem;
            }
            .aithinkVox .entryVox .entry .txt time {
              font-size: 1.0rem;
              margin-bottom: 10px;
            }
  /**
   * --------------------------------------------------------------------------
   * ボタン用スタイル
   * --------------------------------------------------------------------------
   */
  .btnStyle01 {
    text-align: center;
  }
    .btnStyle01 a {
      min-width: 230px;
      padding: 5px 15px;
    }
  .btnStyle01 a span {
    min-height: 50px;
  }
  .moreBtn {}
    .moreBtn div,
    .moreBtn a {
      padding: 30px 0 0 40px;
    }
    .moreBtn a:hover {
      opacity: 1;
    }
    .moreBtn div::before,
    .moreBtn a::before {
      width: 50px;
      height: 50px;
    }
  .moreLink {
  }
    .moreLink a:hover {
      opacity: 1;
    }
  /**
   * --------------------------------------------------------------------------
   * alphaBg
   * --------------------------------------------------------------------------
   */
  #alphaBg {}
  .popupWrapper {
    width: 90%;
    margin-left: -45%;
  }
    .popupWrapper .titleVox {
      font-size: 1.2rem;
      min-height: 40px;
      height: auto;
      line-height: 1.3;
      padding: 10px 60px 10px 10px;
    }
    .popupWrapper .popupCloseBt {
      padding: 0 30px 0 20px;
    }
    .popupWrapper a.popupCloseBt:before { display: none; }
  /**
   * --------------------------------------------------------------------------
   * accordion
   * --------------------------------------------------------------------------
   */
  .accordionWrapper {}
    .accordionWrapper .accordionTtl {
      font-size: 1.5rem;
      padding-top: 30px;
      padding-left: 20px;
    }
    .accordionWrapper .accordionInner {
      padding-top: 30px;
    }
}
