@charset "UTF-8";
@font-face {
  font-family: dic-fonts;
  src: url(/common/font/dic-fonts.eot);
  src: url(/common/font/dic-fonts.eot?#iefix) format("eot"), url(/common/font/dic-fonts.woff) format("woff"), url(/common/font/dic-fonts.ttf) format("truetype"), url(/common/font/dic-fonts.svg#dic-fonts) format("svg")
}
.icon:before {
  display: inline-block;
  font-family: dic-fonts;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
.icon-lg {
  font-size: 1.3333333333333333em;
  line-height: .75em;
  vertical-align: -15%
}
.icon-2x {
  font-size: 2em
}
.icon-3x {
  font-size: 3em
}
.icon-4x {
  font-size: 4em
}
.icon-5x {
  font-size: 5em
}
.icon-fw {
  width: 1.2857142857142858em;
  text-align: center
}
.icon-office_excel:before {
  content: "\EA01"
}
.icon-office_word:before {
  content: "\EA02"
}
.icon-office_powerpoint:before {
  content: "\EA03"
}
.icon-freedial:before {
  content: "\EA04"
}
.icon-search:before {
  content: "\EA05"
}
.icon-blank:before {
  content: "\EA06"
}
.icon-twitter:before {
  content: "\EA07"
}
.icon-facebook:before {
  content: "\EA08"
}
.icon-youtube:before {
  content: "\EA09"
}
.icon-share:before {
  content: "\EA10"
}
.icon-package:before {
  content: "\EA11"
}
.icon-display:before {
  content: "\EA12"
}
.icon-products:before {
  content: "\EA13"
}
.icon-time:before {
  content: "\EA14"
}
.icon-arrow-down:before {
  content: "\EA15"
}
.icon-arrow-right:before {
  content: "\EA16"
}
.icon-arrow-left:before {
  content: "\EA17"
}
.icon-arrow-top:before {
  content: "\EA18"
}
.icon-global:before {
  content: "\EA19"
}
.icon-ir:before {
  content: "\EA20"
}
.icon-point:before {
  content: "\EA21"
}
.icon-mail:before {
  content: "\EA22"
}
.icon-note:before {
  content: "\EA23"
}
.icon-try:before {
  content: "\EA24"
}
.icon-movie:before {
  content: "\EA25"
}
.icon-linkedin:before {
  content: "\EA26"
}
.icon-wechat:before {
  content: "\EA27"
}
.icon-check:before {
  content: "\EA28"
}
.icon-close:before {
  content: "\EA29"
}
.icon-tag:before {
  content: "\EA30"
}
.icon-tel:before {
  content: "\EA31"
}
.icon-rss:before {
  content: "\EA32"
}
body.i-search-ja, body.i-search-en, body.i-search-cn {
  position: relative;
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  color: #444;
  font-family: Arial, Meiryo, "メイリオ", Meiryo, Hiragino Kaku Gothic ProN, 'ヒラギノ角ゴ ProN W3', Osaka, MS PGothic, helvetica, sans-serif
}
body.i-search-ja #container, body.i-search-en #container, body.i-search-cn #container {
  overflow: hidden
}
body.i-search-ja #contents, body.i-search-en #contents, body.i-search-cn #contents {
  width: 100%;
  margin: 0;
  padding-bottom: 0;
  box-sizing: border-box
}
body.i-search-ja #main, body.i-search-en #main, body.i-search-cn #main {
  float: none;
  width: 100%
}
body.i-search-ja #i-search, body.i-search-en #i-search, body.i-search-cn #i-search {
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
  max-width: 1360px;
  width: 100%;
  box-sizing: border-box
}
body.i-search-ja #i-search #relation_contents, body.i-search-en #i-search #relation_contents, body.i-search-cn #i-search #relation_contents {
  width: 100%
}
body.i-search-cn {
  font-family: Microsoft YaHei, PingHei, helvetica, sans-serif
}
.header {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 132px;
  background: #fff;
  z-index: 1000;
  transition: all .3s ease
}
.header_simple {
  font-size: 14px;
  border-bottom: 1px solid #e7e7e7
}
.header_simple + #contents {
  padding-top: 132px
}
.header-content {
  position: static
}
.header-logo {
  position: relative;
  display: block;
  width: 450px;
  padding-top: 34px;
  padding-right: 10px;
  padding-left: 40px
}
.header-logo a, .header-logo img {
  position: static;
  display: inline-block;
  width: 400px;
  height: 54px;
  transition: all .3s ease
}
.header-right {
  position: absolute;
  top: 0;
  right: 60px;
  padding-top: 50px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  transition: all .3s ease
}
.header-lang {
  display: block;
  vertical-align: top;
  padding: 0 8px
}
.header-lang a {
  position: relative;
  display: block;
  width: 100%;
  font-size: 14px;
  overflow: hidden;
  line-height: 23px
}
.header-lang a:hover {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}
.header-rightLogo {
  display: block;
  vertical-align: top;
  padding-left: 40px;
  padding-top: 4px
}
.header-rightLogo img {
  display: block;
  width: 158px;
  height: 19px
}
.header-rightLogo a {
  position: relative;
  display: block;
  padding: 0 0 0 5px;
  overflow: hidden
}
.footer {
  border-bottom: 10px solid #8ac731;
  font-family: Arial, Meiryo, "メイリオ", Meiryo, Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Osaka, MS PGothic, helvetica, sans-serif
}
.footer_simple {
  border-top: 1px solid #e7e7e7;
  font-size: 14px
}
.footer-gdpr {
  box-sizing: border-box;
  position: fixed;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  background: #efefef;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-right: 40px;
  padding-left: 40px;
  transition: all .3s ease;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  visibility: hidden;
  z-index: -1
}
.footer-gdpr.is-active {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  visibility: visible;
  z-index: 500
}
.footer-gdpr-inner {
  position: relative;
  padding-right: 200px
}
.footer-gdpr-agree {
  cursor: pointer;
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 160px;
  padding: 12px 0;
  border-radius: 5px;
  color: #fff;
  background: #98cc44;
  text-align: center;
  font-weight: 700;
  line-height: 1
}
.footer-bottom {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  max-width: 1600px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
  padding-top: 50px;
  padding-bottom: 50px
}
.footer-bottom-logo {
  position: static;
  top: auto;
  -ms-transform: none;
  transform: none;
  z-index: 1
}
.footer-bottom-logo img {
  display: block;
  width: 158px;
  height: 23px
}
.footer-bottom-copy {
  position: absolute;
  left: auto;
  right: 40px;
  bottom: 50px;
  font-size: 10px;
  color: #888;
  line-height: 1
}
.mod-share {
  box-sizing: border-box;
  position: relative;
  padding: 15px 0;
  background: #e2e2e2
}
.inc_ja_news_share .mod-share, .inc_en_news_share .mod-share, .inc_cn_news_share .mod-share {
  background: none;
  text-align: right
}
.mod-share-QR {
  position: relative;
  display: block;
  background: #34c102;
  color: #fff;
  height: 20px;
  width: 70px;
  font-size: 19.2px;
  font-size: 1.2rem;
  border-radius: 2px;
  cursor: pointer
}
.mod-share-QR span {
  position: absolute;
  top: 50%;
  left: 0;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  padding-left: 32px;
  padding-left: 2rem;
  text-align: left
}
.mod-share-QR i {
  font-size: 0;
  line-height: 0
}
.mod-share-QR i:before {
  font-size: 19.2px;
  font-size: 1.2rem;
  position: absolute;
  top: 50%;
  left: 6.4px;
  left: .4rem;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}
.mod-share-QR-content {
  position: relative;
  display: none;
  text-align: center;
  margin: 0 auto;
  width: 296px
}
.mod-share-QR-content canvas {
  background: #fff;
  padding: 20px
}
.mfp-content .mod-share-QR-content {
  display: block
}
.mod-share-QR-content .mfp-close {
  color: #fff;
  width: 16px;
  top: -44px
}
.mod-share ul {
  letter-spacing: -.4em;
  height: 20px
}
.mod-share li {
  display: inline-block;
  line-height: 1;
  height: 20px;
  letter-spacing: normal;
  padding-left: 10px;
  vertical-align: top
}
.mod-share li:first-child {
  padding-left: 0
}
.mod-share li .fb_iframe_widget {
  line-height: 1
}
.mod-share li iframe {
  line-height: 1
}
.mod-share li .mod-icon-left {
  font-size: 14px;
  line-height: 20px;
  vertical-align: top;
  height: 20px;
  color: #444;
  padding-left: 25px
}
.mod-share li .mod-icon-left i:before {
  color: #444;
  font-size: 16px
}
.mod-share li.pl5 {
  padding-left: 5px
}
.mod-share li.js-share-btn-mail img, .mod-share li.js-news-share-btn-mail img {
  height: 20px;
  width: auto
}
.mod-auto, .mod-auto-pc {
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
  max-width: 1360px;
  width: 100%
}
.mod-auto_1520, .mod-auto-pc_1520 {
  max-width: 1600px
}
.mod-auto_1480, .mod-auto-pc_1480 {
  max-width: 1560px
}
.mod-auto-full, .mod-auto-pc-full {
  width: 100%;
  padding-right: vw(30);
  padding-left: vw(30)
}
.mod-auto-center, .mod-auto-pc-center {
  margin-left: auto;
  margin-right: auto
}
.mod-topicPath {
  border-top: 1px solid #e7e7e7;
  width: 100%
}
.mod-topicPath .mod-auto {
  height: 50px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center
}
.mod-topicPath-ul {
  display: block;
  width: 100%;
  overflow-x: auto;
  white-space: nowrap
}
.mod-topicPath-li {
  position: relative;
  display: inline-block;
  padding: 0 10px;
  font-size: 12px
}
.mod-topicPath-li a {
  font-size: 12px;
  line-height: 1;
  color: #444;
  text-decoration: underline
}
.mod-topicPath-li:before {
  content: "\EA16";
  position: absolute;
  right: -10px;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  font-family: dic-fonts;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased
}
.mod-topicPath-li:last-child a {
  pointer-events: none;
  text-decoration: none;
  font-weight: 700
}
.mod-topicPath-li:last-child:before {
  display: none
}
.mod-topicPath-back {
  text-decoration: underline
}
@media screen and (max-width:64em) {
  body.i-search-ja #i-search, body.i-search-en #i-search, body.i-search-cn #i-search {
    max-width: 90%;
    padding-right: 0;
    padding-left: 0
  }
  .header {
    height: 90px
  }
  .header_simple + #contents {
    padding-top: 90px !important
  }
  .header-logo {
    width: 200px;
    padding-top: 18px;
    padding-bottom: 3px;
    padding-right: 13px;
    padding-left: 13px
  }
  .header-logo a, .header-logo img {
    display: block;
    width: 180px;
    height: 24px
  }
  .header-right {
    position: static;
    top: 0;
    right: 0;
    display: block
  }
  .header-rightLogo {
    position: absolute;
    top: auto;
    left: 0;
    bottom: 0;
    width: 100%;
    padding-top: 8px;
    padding-bottom: 9px;
    padding-left: 0;
    border-top: 1px solid #e9e9e9;
    z-index: 1
  }
  .header-rightLogo img {
    width: 87px;
    height: 12px
  }
  .header-rightLogo a {
    margin: 0 auto;
    padding-top: 0;
    width: 87px;
    height: 12px
  }
  .mod-auto, .mod-auto-pc {
    max-width: 90%;
    padding-right: 0;
    padding-left: 0
  }
  .mod-auto-full, .mod-auto-pc-full {
    width: 100%;
    padding-right: 5%;
    padding-left: 5%
  }
  .mod-auto-tab, .mod-auto-pc-tab {
    margin-right: auto;
    margin-left: auto;
    max-width: 90%;
    width: 100%
  }
  .mod-auto-tabOnly, .mod-auto-pc-tabOnly {
    margin-right: auto;
    margin-left: auto;
    max-width: 90%;
    width: 100%
  }
  .mod-topicPath {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch
  }
  .mod-topicPath::-webkit-scrollbar {
    width: 3px;
    background: #d6f0ff
  }
  .mod-topicPath::-webkit-scrollbar:horizontal {
    height: 3px;
    background: #d6f0ff
  }
  .mod-topicPath::-webkit-scrollbar-thumb {
    background: #8ac731;
    border-radius: none
  }
  .mod-topicPath::-webkit-scrollbar-thumb:horizontal {
    background: #8ac731;
    border-radius: none
  }
  .mod-topicPath .mod-auto {
    max-width: 100%
  }
  .mod-topicPath-ul {
    overflow-x: auto;
    white-space: nowrap
  }
  .mod-topicPath-back {
    display: none
  }
}
@media screen and (max-width:47.938em) {
  .footer-bottom {
    padding-top: 40px;
    padding-bottom: 40px
  }
  .footer-bottom-logo {
    position: absolute;
    top: 14px;
    left: 50%;
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
  }
  .footer-bottom-logo img {
    width: 87px;
    height: 12px
  }
  .footer-bottom-copy {
    display: block;
    width: 100%;
    bottom: 0;
    right: 0;
    color: #888;
    text-align: center;
    padding: 15px 0
  }
  .mod-share {
    padding: 0
  }
  .inc_ja_news_share .mod-share, .inc_en_news_share .mod-share, .inc_cn_news_share .mod-share {
    text-align: left
  }
  .mod-share ul {
    height: auto;
    padding-bottom: 15px;
    max-width: calc(90% + 20px)
  }
  .mod-share li {
    margin-top: 15px
  }
  .mod-share li:first-child {
    display: block;
    margin-top: 0;
    height: auto;
    padding-top: 15px;
    padding-left: 10px
  }
  .mod-auto-pc, .mod-auto-pc-pc {
    max-width: 100%;
    padding-right: 0;
    padding-left: 0
  }
  .mod-auto-tabOnly, .mod-auto-pc-tabOnly {
    max-width: 100%;
    padding-right: 0;
    padding-left: 0
  }
  .mod-auto-sp, .mod-auto-pc-sp {
    margin-right: auto;
    margin-left: auto;
    max-width: 90%;
    width: 100%
  }
}