@charset "utf-8";
/* ----------------------------------------------------
  reset
---------------------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  font-size: 100%;
  font-style: normal;
  font-family:'Arial';
  font-weight: 300;
  line-height: 1.6;
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

html {
  height: 100%; }

body {
  font-size: 12px;
  font-size: 75%\9;
  color: #000;
  -webkit-text-size-adjust: 100%; }

a {
  color: #000;
  text-decoration: none; }

a:hover {
  color: #000;
  text-decoration: underline; }

img {
  border: 0;
  vertical-align: bottom; }

ul, ol {
  list-style-type: none; }

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

th, caption {
  text-align: left;
  font-weight: normal; }

@media screen and (max-width: 767px) {
  a {
    text-decoration: underline; }

  a:hover {
    text-decoration: none; } }
/* ----------------------------------------------------
  設定class
---------------------------------------------------- */
/* ---------- clearfix ---------- */
.clearfix:after, .header-nav:after, .header-btns:after, .footer .inner:after, .home-top-items:after, .home-news ul li:after, .home-works-list:after, .home-works-cat:after, .home-works-contents:after, .home-info-contact dl:after, .group-list:after, .works-list-inner ul:after, .works-detail-inner:after, .news-item a:after, .onestop-case dt:after, .onestop-case ul:after, .business-contents-items:after, .business-outline-box dd ul li:after, .business-col-inner:after, .business-col-data dl:after, .business-detail-solution dt:after,
.business-detail-solution dd:after, .business-detail-list:after, .business-detail-imgs:after, .contact-input dl:after, .contact-comp dl:after, .sitepolicy-contents-btn a:after, .faq-col dt:after, .faq-col dd:after, .company-message:after, .company-guide-inner:after, .company-access:after, .page-nav ul:after, .h-style03:after, .h-style04:after {
  content: "";
  display: block;
  clear: both; }

/* ---------- 要素の状態 ---------- */
.is-none {
  display: none; }

.is-hidden {
  visibility: hidden; }

.is-responsive {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  display: block; }

.for-sp {
  display: none; }

@media screen and (max-width: 767px) {
  .for-pc {
    display: none; }

  .for-sp {
    display: inline-block; } }
/* ---------- 文字揃え ---------- */
.al-l {
  text-align: left !important; }

.al-r {
  text-align: right !important; }

.al-c {
  text-align: center !important; }

/* ---------- マージン ---------- */
.mt0 {
  margin-top: 0 !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; }

.mt50 {
  margin-top: 50px !important; }

.mt60 {
  margin-top: 60px !important; }

.mtm10 {
  margin-top: -10px !important; }

.mtm15 {
  margin-top: -15px !important; }

.mtm20 {
  margin-top: -20px !important; }

.mtm30 {
  margin-top: -30px !important; }

/**/
.mr0 {
  margin-right: 0 !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; }

/**/
.mb0 {
  margin-bottom: 0 !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; }

.mb50 {
  margin-bottom: 50px !important; }

.mb60 {
  margin-bottom: 60px !important; }

.mb70 {
  margin-bottom: 70px !important; }

.mbm1 {
  margin-bottom: -1px !important; }

.mbm10 {
  margin-bottom: -10px !important; }

.mbm20 {
  margin-bottom: -20px !important; }

/**/
.ml0 {
  margin-left: 0 !important; }

.ml5 {
  margin-left: 5px !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; }

.mlm10 {
  margin-left: -10px !important; }

/* ----------------------------------------------------
  header
---------------------------------------------------- */
.header {
  text-align: center;
  background: #fff;
  z-index: 3;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  padding: 22px 0; }

@media screen and (max-width: 767px) {
  .header {
    padding: 11px 0 0 0;
    text-align: left;
    min-height: 39px; } }
/* logo */
.header-logo {
  float: left;
  margin: 0 20px 0 0; }
  .header-logo a {
    display: block; }

.header-logo-en {
  margin: 0 20px -10px 0; }

@media screen and (max-width: 767px) {
  .header-logo {
    margin: 0 0 0 10px;
    float: none; }
    .header-logo img {
      width: 194px;
      height: auto; }

  .header-logo-en {
    margin: -2px 0 -8px 10px; } }
/* nav */
.header-nav {
  float: left; }
.header-nav li {
    float: left; }
.header-nav li a {
      font-size: 105%;
      display: block;
      height: 36px;
      line-height: 36px;
      text-align: center;
      padding: 0 13px;
      letter-spacing: .1em;
      -webkit-transition: color .2s;
      transition: color .2s;
      text-decoration: none; }
.header-nav li a:hover, .header-nav li a.is-current {
        color: #999; }

@media screen and (max-width: 767px) {
  .header-toggle {
    display: none; }

  .header-nav {
    background: #d21a23;
    float: none;
    margin: 12px 0 0 0; }
    .header-nav.for-sp {
      display: block; }
    .header-nav.header-nav-env {
      margin: 15px 0 0 0; }
    .header-nav li {
      float: none; }
      .header-nav li.for-sp {
        display: block; }
      .header-nav li a {
        font-size: 14px;
        height: 45px;
        line-height: 45px;
        text-align: left;
        padding: 0 22px;
        color: #fff;
        border-bottom: 1px solid #be000a; }
        .header-nav li a:hover, .header-nav li a.is-current {
          color: #fff; }
        .header-nav li a i {
          width: 9px;
          height: 9px;
          background: #fff;
          display: inline-block;
          margin: 0 20px 0 0;
          position: relative; } }
/* btns */
.header-btns {
  float: right; }
.header-btns li {
  float: left; 
  height: 36px;}
.header-btns li a {
      text-decoration: none;
      height: 36px;
      display: block;
      border-radius: 18px;
      -webkit-border-radius: 18px;
      -webkit-transition: background .2s;
      transition: background .2s; }
.header-btns li a:hover {
        background: #fAfAfA; }

.header-nav-contact {
  width: 110px;
  margin: 0 15px 0 0; }
  .header-nav-contact .icn {
    font-size: 80%;
    margin: 0 8px 0 0; }

.header-nav-contact-en {
  font-family: 'Montserrat', sans-serif;
  font-weight: bold; }

.header-nav-facebook {
  margin: 0 15px 0 0; }

.header-nav-facebook,
.header-nav-en {
  width: 100px;
  margin: 0 0 0 0;
  vertical-align:top;
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;

 }
  .header-nav-facebook .icn,
  .header-nav-en .icn {
    top: 2px; }

@media screen and (max-width: 767px) {
  .header-btns {
    display: none; } }
/* btn */
@media screen and (max-width: 767px) {
  .header-btn {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background: #f2f2f2; }

  .header-btn.is-close {
    background: #d31a24; }

  .header-btn-icn {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    margin: -2px 0 0 -10px;
    background: #d21a23;
    transition: .2s; }

  .header-btn-icn:before, .header-btn-icn:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 20px;
    height: 2px;
    background: #d21a23;
    transition: .2s; }

  .header-btn-icn:before {
    margin-top: -7px; }

  .header-btn-icn:after {
    margin-top: 5px; }

  .header-btn .is-btn-close {
    background: transparent; }

  .header-btn .is-btn-close:before,
  .header-btn .is-btn-close:after {
    margin-top: 0;
    background: #fff; }

  .header-btn .is-btn-close:before {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg); }

  .header-btn .is-btn-close:after {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg); } }
/* ----------------------------------------------------
	footer
---------------------------------------------------- */
.footer {
  background: #69b82d;
  position: relative;
  color: #fff;
  z-index: 1; }
  .footer a {
    color: #fff; }
  .footer .inner {
    position: relative; }

.footer-contact {
  position: fixed;
  right: 0;
  bottom: 100px; }
  .footer-contact a {
    display: block;
    background: #d31a24;
    transition: .2s background;
    -webkit-transition: .2s background;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-right: none; }
    .footer-contact a:hover {
      background: #F2171B; }

.footer-copyright {
  font-size: 85%;
  line-height: 1;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: .1em;
  padding: 29px 0 0 0;
  position: absolute;
  left: 0; }
.footer-nav {
  float: left;
  padding: 25px 0 0 580px; }
  .footer-nav li {
    display: inline;
    margin: 0 20px 0 0; }

.footer-pmark {
  float: right;
  margin: 0 0 0 20px; }

.footer-pagetop {
  font-family: 'Montserrat', sans-serif;
  float: right; }
  .footer-pagetop a {
    width: 72px;
    height: 52px;
    background: #69b82d;
    display: block;
    text-align: center;
    -webkit-transition: .2s background;
    transition: .2s background;
    letter-spacing: .1em;
    text-decoration: none;
    padding: 20px 0 0 0;
    font-size: 90%; }
    .footer-pagetop a:hover {
      background: #69b82d; 
    }
  .footer-pagetop .icn {
    display: block;
    font-size: 85%;
    margin: 0 auto 7px auto; }

@media screen and (max-width: 767px) {
  .footer {
    padding: 0 0 30px 0; }

  .footer-contact {
    display: none; }

  .footer-copyright {
    font-size: 10px;
    padding: 0 0 25px 0;
    position: relative;
    left: inherit;
    text-align: center;
    line-height: 1.6; }

  .footer-copyright-en {
    padding: 25px 0; }

  .footer-nav {
    float: none;
    padding: 25px 0 20px 0;
    text-align: center; }
    .footer-nav li {
      margin: 0 10px;
      font-size: 10px; }
      .footer-nav li a {
        text-decoration: none; }

  .footer-pmark {
    float: none;
    margin: 0 auto;
    width: 60px; }
    .footer-pmark img {
      width: 60px;
      height: auto; }

  .footer-pagetop {
    float: none; }
    .footer-pagetop a {
      width: 100%;
      height: 43px;
      padding: 17px 0 0 0;
      font-size: 9px; }
      .footer-pagetop a:hover {
        background: #393939; }
    .footer-pagetop .icn {
      font-size: 8px;
      margin: 0 auto 7px auto; } }
/* ----------------------------------------------------
  wrapper
---------------------------------------------------- */
.wrapper {
  width: 100%;  
  min-width: 1080px;
  margin: 0 auto; }

.inner {
  width: 1080px;
  margin: 0 auto; }

@media screen and (max-width: 767px) {
  .wrapper {
    overflow: hidden;
    min-width: inherit;
    padding: 50px 0 0 0; }

  .inner {
    width: 100%; } }
/* ----------------------------------------------------
  home
---------------------------------------------------- */
.p-home {
 }
  .p-home .header {
    top: 100%;
    position: absolute; 
    }

@media screen and (max-width: 767px) {
  .p-home .header {
    top: 0 !important;
    position: fixed !important;
    z-index: 10; } }
/* top */
.home-top {
  background: #000;
  text-align: center;
  position: relative;
  z-index: 2; }

.home-top-bg {
  background: url("../img/bg_home_top.jpg")/*tpa=http://www.sankeibt.com/img/bg_home_top.jpg*/ no-repeat center top;
  background-size: cover;
  background-attachment: fixed;
  height: 840px;
  min-height: 840px;
  width: 100%;
  /*opacity: 0.5; */
  transition: 3s opacity .2s;
  -webkit-transition: 3s opacity .2s; }

.home-top-inner {
  position: absolute;
  left: 50%;
  top: 50%;
  height: 630px;
  margin: -400px 0 0 -445px; }

.home-top-title {
  color: #fff;
  font-size: 200%;
  letter-spacing: .2em;
  margin: 0 0 70px 0; }
  .home-top-title img {
    display: block;
    margin: 0 auto 50px auto; }

.home-top-items {
  width: 890px;
  margin: 0 auto; }

.home-top-box {
  float: left;
  width: 350px;
  text-align: center;
  background: rgba(0, 0, 0, 0.65);
  color: #fff;
  cursor: pointer; }
/* calm注释 .home-top-box:hover .btn a {
    background: #F2171B; }
    */
  .home-top-box dt {
    font-size: 190%;
    letter-spacing: .3em;
    padding: 55px 0 35px 0;
    margin: 0 0 35px 0;
    background: url("../img/icn_bar02.png")/*tpa=http://www.sankeibt.com/img/icn_bar02.png*/ no-repeat center bottom;
    background-size: 20px auto; }
  .home-top-box dd span {
    display: block;
    font-size: 125%;
    line-height: 1.8;
    margin: 0 0 30px 0; }

.home-top-link {
  float: left;
  margin: 170px 46px 0 46px; }

@media screen and (max-width: 767px) {
  .home-top-bg {
    height: 680px !important;
    min-height: inherit; }

  .home-top-inner {
    left: 50%;
    top: 50%;
    margin: -177px 0 0 -50%;
    height: auto;
    width: 100%; }

  .home-top-title {
    font-size: 15px;
    margin: 0 0 43px 0; }
    .home-top-title img {
      width: 196px;
      height: auto;
      margin: 0 auto 30px auto; }

  .home-top-items {
    width: 100%; }

  .home-top-box {
    float: left;
    width: 50%;
    background: rgba(0, 0, 0, 0.7); }
    .home-top-box:hover .btn a {
      background: #d31a24; }
    .home-top-box:first-child .btn {
      border-right: 1px solid #be000a;
      display: block; }
    .home-top-box dt {
      font-size: 16px;
      padding: 50px 0 32px 0;
      margin: 0 0 53.4px 0;
      background: url("../img/icn_bar03.png")/*tpa=http://www.sankeibt.com/img/icn_bar03.png*/ no-repeat center bottom;
      background-size: 16px auto; }
    .home-top-box dd span {
      display: none; }
    .home-top-box dd .btn .icn {
      display: none; }

  .home-top-link {
    width: 36px;
    position: absolute;
    margin: 0 0 0 -18px;
    text-align: center;
    left: 50%;
    top: 270px; }
    .home-top-link img {
      width: 100%;
      height: auto; } }
/* news */
.home-news {
 
  padding: 50px 0 70px 0; }
  .home-news .btn {
    width: 210px;
    margin: 0 auto; }
  .home-news ul {
    width: 700px;
    margin: 0 auto 50px auto; }
    .home-news ul li {
      font-size: 115%;
      color: #333; }
      .home-news ul li:last-child span,
      .home-news ul li:last-child a {
        padding-bottom: 0; }
    .home-news ul span {
      font-family: 'Montserrat', sans-serif;
      display: block;
      float: left;
      border-right: 1px solid #ddd;
      margin: 0 -1px 0 0;
      width: 125px;
      line-height: 1.2;
      padding: 0 0 35px 0; }
    .home-news ul a {
      display: block;
      overflow: hidden;
      zoom: 1;
      border-left: 1px solid #ddd;
      color: #333;
      padding: 0 0 35px 50px;
      line-height: 1.2; }

@media screen and (max-width: 767px) {
  .home-news {
    padding: 30px 0 50px 0; }
    .home-news .btn {
      width: 180px; }
      .home-news .btn .icn {
        display: none; }
    .home-news ul {
      width: 88%;
      margin: 0 auto 30px auto; }
      .home-news ul li {
        font-size: 12px;
        margin: 0 0 20px 0; }
        .home-news ul li:last-child span,
        .home-news ul li:last-child a {
          padding-bottom: 0; }
      .home-news ul span {
        float: none;
        border-right: none;
        margin: 0;
        width: auto;
        padding: 0; }
      .home-news ul a {
        border-left: none;
        padding: 7px 0 0 0;
        text-decoration: none; } }
.home-about {
  background: #f2f2f2;
  padding: 50px 0 50px 0;
 }
/* works */
.home-works {
  padding: 130px 0 50px 0; }

.home-works-list {
  width: 840px;
  margin: 0 auto 50px auto; }
  .home-works-list li {
    position: relative;
    float: left;
    width: 280px;
    height: 280px;
    overflow: hidden; }
    .home-works-list li:hover .home-works-list-bg {
      opacity: 0; }
    .home-works-list li:hover em {
      -webkit-transform: scale(1.1);
      transform: scale(1.1); }
    .home-works-list li a {
      display: block;
      width: 280px;
      height: 280px;
      position: relative;
      text-decoration: none;
      background: #000; }
    .home-works-list li em {
      display: block;
      width: 280px;
      height: 280px;
      position: absolute;
      left: 0;
      top: 0;
      -webkit-transition: .2s -webkit-transform;
      transition: .2s transform; }
    .home-works-list li img {
      width: auto;
      height: 280px;
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      opacity: .7;
      transition: .2s opacity;
      -webkit-transition: .2s opacity; }
    .home-works-list li span {
      position: relative;
      z-index: 1;
      left: 20px;
      top: 0;
      text-align: center;
      width: 240px;
      height: 280px;
      display: table-cell;
      vertical-align: middle;
      font-weight: 600;
      color: #fff;
      font-size: 130%;
      letter-spacing: .15em; }

.home-works-list-bg {
  background: rgba(0, 0, 0, 0.3);
  width: 280px;
  height: 280px;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  transition: .2s opacity;
  -webkit-transition: .2s opacity; }

.home-works-cat {
  width: 840px;
  margin: 0 auto 90px auto; }
  .home-works-cat li {
    width: 210px;
    float: left; }
    .home-works-cat li a {
      color: #fff;
      display: block;
      margin: 0 auto;
      text-align: center;
      text-decoration: none;
      transition: .2s background;
      -webkit-transition: .2s background;
      background: #000; }
      .home-works-cat li a:hover {
        background: #393939; }
      .home-works-cat li a span {
        position: relative;
        display: block;
        padding: 15px 0;
        font-size: 135%; }
      .home-works-cat li a .icn {
        position: absolute;
        right: 15px;
        top: 50%;
        font-size: 90%;
        margin: -0.48em 0 0 0;
        line-height: 1; }

.home-works-contents {
  width: 840px;
  margin: 0 auto 50px auto; }
  .home-works-contents li {
    width: 210px;
    float: left; }
    .home-works-contents li a {
      color: #fff;
      display: block;
      margin: 0 auto;
      text-align: center;
      text-decoration: none;
      transition: .2s background;
      -webkit-transition: .2s background;
      position: relative;
      background: #000;
      font-size: 110%;
      padding: 21px 0;
      text-indent: -1.5em; }
      .home-works-contents li a:hover {
        background: #393939; }
      .home-works-contents li a .icn {
        position: absolute;
        right: 15px;
        top: 50%;
        font-size: 115%;
        margin: -0.48em 0 0 0;
        line-height: 1;
        text-indent: 0; }

@media screen and (max-width: 767px) {
  .home-works {
    padding: 40px 0 50px 0; }
    .home-works .btn.for-sp {
      display: block;
      width: 180px;
      margin: 0 auto 50px auto; }
      .home-works .btn.for-sp .icn {
        display: none; }

  .home-works-list {
    width: 100%;
    margin: 40px auto 0 auto; }
    .home-works-list li {
      height: 100%;
      float: none; }
      .home-works-list li:hover em {
        -webkit-transform: scale(1);
        transform: scale(1); }
      .home-works-list li:hover .home-works-list-bg {
        opacity: 1; }
      .home-works-list li a {
        display: block;
        width: 100%;
        height: 0;
        padding: 100% 0 0 0; }
      .home-works-list li em {
        width: 100%;
        padding: 100% 0 0 0;
        height: 0; }
      .home-works-list li span {
        position: absolute;
        width: 90%;
        left: 5%;
        text-align: center;
        display: block;
        top: 50%;
        margin: -1.8em 0 0 0; }

  .home-works-list-bg {
    width: 100%;
    height: 0;
    padding: 100% 0 0 0; }

  .home-works-cat {
    width: 100%;
    margin: 0 auto 40px auto; }
    .home-works-cat li {
      width: 50%; }
      .home-works-cat li img {
        width: 100%;
        height: auto; }
      .home-works-cat li:nth-of-type(even) a {
        background: #393939; }
        .home-works-cat li:nth-of-type(even) a:hover {
          background: #393939 !important; }
      .home-works-cat li a:hover {
        background: #000; }
      .home-works-cat li a span {
        padding: 12px 0;
        font-size: 12px; }
      .home-works-cat li a .icn {
        display: none; }

  .home-works-contents {
    width: 100%;
    margin: 0 auto 40px auto; }
    .home-works-contents li {
      width: 50%; }
      .home-works-contents li:nth-of-type(2) a, .home-works-contents li:nth-of-type(3) a {
        background: #393939; }
        .home-works-contents li:nth-of-type(2) a:hover, .home-works-contents li:nth-of-type(3) a:hover {
          background: #393939 !important; }
      .home-works-contents li a {
        font-size: 12px;
        padding: 16px 0;
        text-indent: 0; }
        .home-works-contents li a:hover {
          background: #000; }
        .home-works-contents li a .icn {
          display: none; } }
/* banner */
.home-bnr {
  width: 840px;
  margin: 0 auto 80px;
  overflow: hidden;}
  .home-bnr li {
    width: 400px;
    float: left;}
  .home-bnr li:nth-child(even) {
    float: right;}
@media screen and (max-width: 767px) {
  .home-bnr {
    width: 480px;
    margin: 0 auto 100px; }
    .home-bnr li {
      width: 480px;
      float: none;}
    .home-bnr li:nth-child(even) {
      float: none;} }
@media screen and (max-width: 480px) {
  .home-bnr {
    width: 100%;
    margin: 0 auto 100px; }
    .home-bnr li {
      width: 100%;
      float: none; }
    .home-bnr li:nth-child(even) {
      float: none;
      margin-top: 20px;}
  .home-bnr img {
    width: 100%;
    height: 100%;
    margin: 0 auto; } }

/* info */
.home-info {
  text-align: center; }

.home-info-group {
  background: url("../img/bg_home_group.jpg")/*tpa=http://www.sankeibt.com/img/bg_home_group.jpg*/ no-repeat center center;
  background-size: cover;
  height: 330px;
  width: 100%; }
  .home-info-group .btn {
    width: 280px;
    margin: 0 auto; }

.home-info-group-h {
  font-family: 'Montserrat', sans-serif;
  font-size: 300%;
  letter-spacing: .15em;
  margin: 0 0 30px 0;
  padding: 60px 0 0 0; }
  .home-info-group-h small {
    font-size: 45%;
    letter-spacing: .1em;
    display: block; }
  .home-info-group-h img {
    display: block;
    margin: 0 auto 10px auto; }

.home-info-contact {
  background: #d31a24;
  color: #fff;
  padding: 50px 0;
  position: relative; }
  .home-info-contact .btn {
    width: 280px;
    position: absolute;
    left: 50%;
    top: 115px;
    margin: 0 0 0 40px; }
    .home-info-contact .btn .icn {
      margin: 0 15px 0 0;
      font-size: 95%; }
  .home-info-contact dl {
    width: 750px;
    margin: 0 auto;
    text-align: left; }
    .home-info-contact dl dt {
      float: left;
      clear: left;
      font-size: 130%;
      padding: 15px 20px 15px 0; }
    .home-info-contact dl dd {
      overflow: hidden;
      zoom: 1;
      font-size: 280%; }
      .home-info-contact dl dd span,
      .home-info-contact dl dd a {
        font-family: 'Montserrat', sans-serif;
        color: #fff;
        letter-spacing: .1em;
        white-space: nowrap; }

.home-info-contact-h {
  font-size: 130%;
  font-weight: 600;
  margin: 0 0 20px 0; }

@media screen and (max-width: 767px) {
  .home-info {
    margin: -50px 0 0 0; }

  .home-info-group {
    height: auto;
    padding: 0 0 50px 0; }
    .home-info-group .btn {
      width: 260px; }

  .home-info-group-h {
    font-size: 24px;
    line-height: 1.2;
    margin: 0 0 25px 0;
    padding: 55px 0 0 0; }
    .home-info-group-h small {
      font-size: 13px;
      padding: 15px 0 0 0; }
    .home-info-group-h img {
      width: 35px;
      height: auto;
      margin: 0 auto 20px auto; }

  .home-info-contact {
    padding: 35px 0; }
    .home-info-contact .btn {
      width: 240px;
      position: relative;
      left: inherit;
      top: inherit;
      margin: 0 auto; }
      .home-info-contact .btn .icn {
        font-size: 12px; }
    .home-info-contact dl {
      width: 280px;
      margin: 0 auto 10px auto; }
      .home-info-contact dl dt {
        font-size: 13px;
        padding: 10px 20px 20px 0; }
      .home-info-contact dl dd.for-sp {
        display: block;
        font-size: 26px;
        margin: 0 0 8px 0; }
        .home-info-contact dl dd.for-sp a {
          text-decoration: none; }

  .home-info-contact-h {
    font-size: 14px;
    margin: 0 0 25px 0; } }
/* ----------------------------------------------------
  group
---------------------------------------------------- */
.group-col:nth-of-type(even) {
  background: #f2f2f2; }

.group-col:first-child .group-col-inner {
  padding: 10px 0 30px 0; }

.group-col-inner {
  width: 930px;
  margin: 0 auto;
  padding: 50px 0 40px 0; }
  .group-col-inner p {
    font-size: 110%;
    margin: 0 0 40px 0; }
  .group-col-inner .btn {
    font-size: 115%;
    text-align: right;
    margin: -10px 0 40px 0; }
    .group-col-inner .btn a {
      width: 450px;
      display: inline-block; }
    .group-col-inner .btn .icn {
      font-size: 100%;
      right: 15px; }

.group-col-img {
  text-align: center;
  padding: 10px 0; }

.group-list li {
  float: left;
  width: 465px;
  background: #000;
  color: #fff;
  margin: 0 0 40px 0;
  position: relative; }
  .group-list li .group-img {
  width: 100%;
  height: 218px;
  overflow: hidden;}
  .group-list li .group-img img {
  width: 465px;
  height: 218px;}
.group-list li em {
  width: 100%;
  height: 218px;
  background: rgba(0, 0, 0, .5);
  position: absolute;
  top: 0;
  left: 0;}
  .group-list li:nth-of-type(even) {
    background: #393939; }
  .group-list li img {
    width: 100%;
    height: auto; }
  .group-list li a {
    color: #fff; }
  .group-list li a:hover {
    text-decoration: none; }
  .group-list li strong {
    display: block;
    padding: 15px 20px 2px 20px;
    font-size: 130%; }
  .group-list li span {
    display: block;
    height: 50px;
    padding: 0 20px 15px 20px;
    font-size: 110%; }

@media screen and (max-width: 767px) {
  .group-col:first-child .group-col-inner {
    padding: 20px 0 15px 0; }
    .group-col:first-child .group-col-inner p {
      margin: -10px 0 20px 0; }

  .group-col-inner {
    width: 88%;
    padding: 30px 0 10px 0; }
    .group-col-inner p {
      font-size: 12px;
      margin: 0 0 20px 0; }
    .group-col-inner .btn {
      text-align: center;
      margin: 0 auto 30px auto; }
      .group-col-inner .btn a {
        width: 100%;
        display: block;
        font-size: 10px;
        letter-spacing: 0; }
      .group-col-inner .btn .icn {
        display: none; }

  .group-col-img {
    padding: 0; }
    .group-col-img img {
      width: 100%;
      height: auto; }

  .group-list li {
    float: none;
    width: 100%;
    margin: 0 0 20px 0; }
    .group-list li strong {
      display: block;
      padding: 13px 15px 0 15px;
      font-size: 12px; }
    .group-list li span {
      display: block;
      padding: 0 15px 13px 15px;
      font-size: 11px; } }
/* ----------------------------------------------------
  works
---------------------------------------------------- */
/* list */
.works-list {
  background: #f2f2f2;
  position: relative; }
  .works-list.is-white {
    background: #fff; }
  .works-list .pager {
    width: 840px;
    margin: 0 0 0 -420px;
    padding: 0 0 20px 0;
    top: -20px; }
  .works-list .pager-prev,
  .works-list .pager-next {
    top: 0; }
  .works-list .h-style05 {
    margin: 0 0 30px -40px; }
  .works-list th {
    width: 60px; }
  .works-list th,
  .works-list td {
    vertical-align: top; }

.works-list-bar {
  width: 20px; }

.works-list-back {
  width: 930px;
  margin: 0 auto 25px auto;
  top: -20px;
  position: relative;
  font-size: 115%; }
  .works-list-back .icn {
    margin: 0 10px 0 0;
    top: 1px; }

.works-list-h {
  text-align: center;
  font-size: 160%;
  font-weight: 600;
  margin: 0 0 30px 0; }

.works-list-bg {
  background: rgba(0, 0, 0, 0.3);
  width: 280px;
  height: 280px;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  transition: .2s opacity;
  -webkit-transition: .2s opacity; }

.works-list-inner {
  width: 840px;
  margin: 0 auto;
  padding: 40px 0 0 0; }
  .works-list-inner .btn {
    font-size: 115%;
    text-align: right;
    margin: -10px 0 40px 0; }
    .works-list-inner .btn a {
      width: 450px;
      display: inline-block; }
    .works-list-inner .btn .icn {
      font-size: 100%;
      right: 15px; }
  .works-list-inner ul li {
    position: relative;
    float: left;
    width: 280px;
    background: #000;
    color: #fff;
    margin: 0 0 60px 0; }
    .works-list-inner ul li:nth-of-type(3n-1) {
      background: #393939; }
    .works-list-inner ul li:hover em {
      -webkit-transform: scale(1.1);
      transform: scale(1.1); }
    .works-list-inner ul li:hover .works-list-bg {
      opacity: 0; }
    .works-list-inner ul li a {
      display: block;
      color: #fff;
      text-decoration: none; }
    .works-list-inner ul li em {
      width: 280px;
      height: 280px;
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      transition: .2s transform;
      -webkit-transition: .2s -webkit-transform; }
    .works-list-inner ul li span {
      overflow: hidden;
      width: 280px;
      height: 280px;
      display: block;
      position: relative; }
      .works-list-inner ul li span img {
        width: 100%;
        height: auto;
        position: absolute;
        left: 0;
        top: 0;
        opacity: .7;
        transition: .2s opacity;
        -webkit-transition: .2s opacity; }
      .works-list-inner ul li span strong {
        width: 260px;
        height: 280px;
        display: block;
        text-align: center;
        vertical-align: middle;
        display: table-cell;
        position: relative;
        z-index: 1;
        font-weight: 600;
        font-size: 130%;
        letter-spacing: 0.15em;
        left: 10px; }
    .works-list-inner ul li table {
      margin: 15px 25px;
      font-size: 110%; }

@media screen and (max-width: 767px) {
  .works-list .pager {
    width: 88%;
    margin: 0 auto;
    padding: 25px 0;
    top: inherit; }
  .works-list .pager-prev,
  .works-list .pager-next {
    top: inherit; }
  .works-list .h-style05 {
    margin: 0 0 20px 0;
    left: 6%;
    position: relative; }

  .works-list-bar {
    width: 15px; }

  .works-list-back {
    width: 88%;
    top: 0;
    font-size: 12px; }
    .works-list-back a {
      text-decoration: none; }
    .works-list-back .icn {
      margin: 0 10px 0 0;
      top: 1px; }

  .works-list-h {
    font-size: 14px;
    margin: 0 0 25px 0; }

  .works-list-bg {
    width: 100%;
    height: 100%; }

  .works-list-inner {
    width: 100%;
    margin: 0 auto;
    padding: 30px 0 0 0; }
    .works-list-inner .btn {
      font-size: 115%;
      text-align: right;
      margin: -10px 0 40px 0; }
      .works-list-inner .btn a {
        width: 450px;
        display: inline-block; }
      .works-list-inner .btn .icn {
        font-size: 100%;
        right: 15px; }
    .works-list-inner ul li {
      height: 50%;
      width: 50%;
      margin: 0 0 20px 0; }
      .works-list-inner ul li:nth-of-type(3n-1) {
        background: #000; }
      .works-list-inner ul li:nth-of-type(even) {
        background: #393939; }
      .works-list-inner ul li:hover em {
        -webkit-transform: scale(1);
        transform: scale(1); }
      .works-list-inner ul li:hover .works-list-bg {
        opacity: 1; }
      .works-list-inner ul li em {
        width: 100%;
        height: 0;
        padding: 100% 0 0 0; }
      .works-list-inner ul li a {
        width: 100%;
        height: 100%;
        display: block;
        color: #fff;
        text-decoration: none; }
      .works-list-inner ul li span {
        width: 100%;
        height: 0;
        padding: 100% 0 0 0; }
        .works-list-inner ul li span img {
          width: 100%;
          height: auto;
          position: relative; }
        .works-list-inner ul li span strong {
          width: 100%;
          height: auto;
          position: absolute;
          left: 0;
          top: 50%;
          margin: -1.8em 0 0 0;
          display: block;
          font-size: 12px; }
      .works-list-inner ul li table {
        margin: 6px 8px;
        font-size: 11px; }
        .works-list-inner ul li table th {
          width: 58px;
          vertical-align: top;
          line-height: 1.3;
          padding: 2px 0; }
        .works-list-inner ul li table td {
          vertical-align: top;
          text-indent: -1em;
          margin: 0 0 0 1em;
          line-height: 1.3;
          padding: 2px 0; } }
/* detail */
.works-detail {
  background: #fff; }

.works-detail-inner {
  width: 930px;
  margin: 0 auto;
  padding: 40px 0; }
  .works-detail-inner table {
    width: 100%;
    margin: 0 0 40px 0;
    font-size: 110%; }
    .works-detail-inner table th {
      width: 60px;
      vertical-align: top;
      padding: 0 0 3px 0; }
      .works-detail-inner table th span {
        display: inline-block;
        width: 65px;
        line-height: 1.5; }
    .works-detail-inner table td {
      vertical-align: top;
      line-height: 1.5;
      padding: 0 0 3px 0; }

.works-detail-data {
  margin: -15px 0 40px 35px;
  font-weight: 600;
  color: #999;
  font-size: 115%; }

.works-detail-img {
  margin: 0 40px 0 0;
  width: 900px;
  float: left; }

.works-detail-img em {
  display: block;
  width: 900px;
  height: 500px; }

.works-detail-r {
  overflow: hidden;
  zoom: 1; }

.works-detail-r-bar {
  width: 20px; }

.works-detail-desc {
  font-size: 110%; }

@media screen and (max-width: 767px) {
  .works-detail-inner {
    width: 88%;
    margin: 0 auto;
    padding: 35px 6% 30px 6%; }
    .works-detail-inner table {
      width: 100%;
      margin: 0 0 15px 0;
      font-size: 12px; }
      .works-detail-inner table th {
        width: 55px; }

  .works-detail-data {
    margin: -10px 0 20px 28px;
    font-size: 12px; }

  .works-detail-img {
    margin: 0;
    float: none;
    width: auto; }
    .works-detail-img em {
      width: 290px;
      height: 200px; }

  .works-detail-desc {
    border-left: none;
    padding: 0;
    font-size: 12px; } }
/* ----------------------------------------------------
  news
---------------------------------------------------- */
.news-item:nth-of-type(even) {
  background: #f2f2f2; }

.news-item a {
  display: block;
  width: 650px;
  position: relative;
  left: 50%;
  margin: 0 0 0 -470px;
  padding: 50px 0; }
  .news-item a:hover {
    text-decoration: none; }
    .news-item a:hover strong {
      text-decoration: underline; }
  .news-item a img {
    float: left;
    width: 200px;
    height: auto;
    margin: 0 40px 0 0; }
  .news-item a span {
    font-family: 'Montserrat', sans-serif;
    font-size: 115%; }
  .news-item a em {
    font-family: 'Montserrat', sans-serif;
    color: #666;
    font-size: 115%; }
  .news-item a strong {
    display: block;
    font-size: 200%;
    font-weight: 600;
    line-height: 1.2;
    padding: 10px 0 20px 0; }
  .news-item a small {
    font-size: 115%;
    clear: right;
    width: 410px;
    float: right; }

.news-item-data {
  float: right;
  width: 650px; }

@media screen and (max-width: 767px) {
  .news-item {
    display: table; }
    .news-item a {
      width: 88%;
      left: inherit;
      margin: 0;
      padding: 25px 6%;
      text-decoration: none; }
      .news-item a:hover strong {
        text-decoration: none; }
      .news-item a img {
        float: none;
        width: 85%;
        height: auto;
        display: block;
        margin: 0 auto 20px auto; }
      .news-item a span {
        font-size: 12px; }
      .news-item a em {
        font-size: 12px; }
      .news-item a strong {
        font-size: 16px;
        padding: 5px 0 20px 0; }
      .news-item a small {
        font-size: 12px;
        width: auto;
        float: none; }

  .news-item-data {
    float: none;
    width: 100%; } }
/* detail */
.news-detail {
  width: 630px;
  position: relative;
  left: 50%;
  margin: 0 0 0 -470px;
  padding: 40px 0 100px 0; }
  .news-detail p {
    font-size: 115%;
    line-height: 2;
    margin: 0 0 30px 0; }
    .news-detail p a {
      color: #d31a24;
      text-decoration: underline; }
      .news-detail p a:hover {
        text-decoration: none; }
.news-detail .summary {
  padding: 30px 30px 20px 30px;
  background-color: #f2f2f2; }

.news-detail-cat {
  font-family: 'Montserrat', sans-serif;
  font-size: 115%; }

.news-detail-date {
  font-family: 'Montserrat', sans-serif;
  color: #666;
  font-size: 115%; }

.news-detail-h {
  font-size: 200%;
  display: block;
  font-weight: 600;
  margin: 3px 0 35px 0; }

.news-detail-img-list{
  margin: 0 0 30px 0;
  overflow: hidden; }

.news-detail-img-list li{
  float: left;
  display: inline-block;
  margin: 0 26px 30px 0;
  border: 1px solid #ddd; }

.news-detail-img-list li:last-child {
  margin: 0; }

@media screen and (max-width: 767px) {
  .news-detail {
    width: 88%;
    left: inherit;
    margin: 0 auto;
    padding: 25px 0 30px 0; }
    .news-detail p {
      font-size: 12px;
      margin: 0 0 20px 0; }
      .news-detail p img {
        max-width: 100%;
        height: auto; }

  .news-detail-cat {
    font-size: 12px; }

  .news-detail-date {
    font-size: 12px; }

  .news-detail-h {
    font-size: 16px;
    margin: 5px 0 20px 0;
    line-height: 1.2; } }
/* ----------------------------------------------------
  onestop
---------------------------------------------------- */
.onestop-top {
  background: url("../img/bg_business.png")/*tpa=http://www.sankeibt.com/img/bg_business.png*/ repeat-y center center;
  margin: -5px 0 0 0;
  padding: 0 0 60px 0; }

.onestop-top-txt {
  text-align: center;
  color: #fff;
  padding: 80px 0;
  font-size: 125%;
  line-height: 1.8; }

.onestop-top-cir {
  background: url("../img/bg_about_top.png")/*tpa=http://www.sankeibt.com/img/bg_about_top.png*/ no-repeat center top;
  width: 631px;
  height: 631px;
  margin: 0 auto;
  left: -2px;
  position: relative; }
  .onestop-top-cir li {
    color: #fff;
    font-size: 120%;
    text-align: center;
    position: absolute; }
    .onestop-top-cir li .icn {
      display: block;
      margin: 0 auto 5px auto; }
    .onestop-top-cir li .icn-produce {
      font-size: 400%; }
    .onestop-top-cir li .icn-event {
      font-size: 420%; }
    .onestop-top-cir li .icn-stage {
      font-size: 320%; }
    .onestop-top-cir li .icn-office {
      font-size: 400%; }
    .onestop-top-cir li .icn-house {
      font-size: 370%; }
    .onestop-top-cir li .icn-shop {
      font-size: 320%; }

.onestop-top-cir-produce {
  left: 160px;
  top: 60px; }

.onestop-top-cir-event {
  left: 50px;
  top: 255px; }

.onestop-top-cir-stage {
  left: 180px;
  top: 460px; }

.onestop-top-cir-office {
  left: 390px;
  top: 448px; }

.onestop-top-cir-house {
  left: 510px;
  top: 260px; }

.onestop-top-cir-shop {
  left: 390px;
  top: 70px; }

.onestop-top-h {
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  color: #fff;
  font-size: 320%;
  letter-spacing: .15em;
  padding: 50px 0 20px 0; }

.onestop-top-read {
  text-align: center;
  color: #fff;
  font-size: 120%; }

@media screen and (max-width: 767px) {
  .onestop-top {
    background-size: 100% auto;
    margin: 0;
    padding: 0 0 40px 0; }

  .onestop-top-txt {
    padding: 40px 0;
    font-size: 12px; }

  .onestop-top-cir {
    background-size: 300px auto;
    width: 300px;
    height: 300px;
    position: relative; }
    .onestop-top-cir li {
      font-size: 10px;
      line-height: 1.4; }
      .onestop-top-cir li .icn-produce {
        font-size: 30px; }
      .onestop-top-cir li .icn-event {
        font-size: 30px; }
      .onestop-top-cir li .icn-stage {
        font-size: 23px; }
      .onestop-top-cir li .icn-office {
        font-size: 28px; }
      .onestop-top-cir li .icn-house {
        font-size: 25px; }
      .onestop-top-cir li .icn-shop {
        font-size: 20px; }

  .onestop-top-cir-produce {
    left: 70px;
    top: 23px; }

  .onestop-top-cir-event {
    left: 20px;
    top: 120px; }

  .onestop-top-cir-stage {
    left: 80px;
    top: 213px; }

  .onestop-top-cir-office {
    left: 175px;
    top: 208px; }

  .onestop-top-cir-house {
    left: 235px;
    top: 120px; }

  .onestop-top-cir-shop {
    left: 185px;
    top: 32px; }

  .onestop-top-h {
    font-size: 32px;
    padding: 25px 0 20px 0;
    line-height: 1.2; }

  .onestop-top-read {
    font-size: 12px; } }
/* case */
.onestop-case {
  padding: 60px 0;
  background: #f2f2f2; }
  .onestop-case dl {
    width: 940px;
    margin: 0 auto;
    padding: 50px 0 10px 0; }
  .onestop-case dt {
    text-align: center;
    border-top: 2px solid #e4e4e4;
    padding: 50px 50px 40px 50px;
    position: relative; }
    .onestop-case dt span {
      display: block;
      font-size: 130%;
      padding: 20px 0 0 0; }
    .onestop-case dt small {
      display: block;
      font-size: 130%;
      padding: 20px 0 0 0; }
    .onestop-case dt em {
      width: 250px;
      display: block;
      font-size: 120%;
      float: right;
      margin: 20px 0 0 0; }
    .onestop-case dt img {
      display: block;
      margin: 0 auto; }
  .onestop-case dd {
    background: #eaeaea;
    margin: 0 50px; }
  .onestop-case ul {
    padding: 30px 0 0 0; }
    .onestop-case ul li {
      float: left;
      width: 240px;
      margin: 0 0 25px 30px; }
      .onestop-case ul li span {
        display: block;
        font-size: 120%;
        padding: 10px 0 0 0;
        line-height: 2; }

.onestop-case-txt {
  text-align: center;
  font-size: 120%;
  margin: -20px 0 0 0; }

@media screen and (max-width: 767px) {
  .onestop-case {
    padding: 40px 0; }
    .onestop-case dl {
      width: 100%;
      padding: 0; }
    .onestop-case dt {
      padding: 30px 6% 20px 6%; }
      .onestop-case dt span {
        font-size: 12px;
        padding: 15px 0 0 0; }
      .onestop-case dt small {
        font-size: 12px;
        padding: 10px 0 0 0; }
      .onestop-case dt em {
        width: 180px;
        font-size: 12px;
        float: none;
        margin: 20px auto 0 auto; }
        .onestop-case dt em .icn-arrow-right01 {
          right: 10px; }
      .onestop-case dt img {
        width: 120px;
        height: auto; }
    .onestop-case dd {
      background: #eaeaea;
      margin: 0; }
    .onestop-case ul {
      padding: 20px 0 0 0; }
      .onestop-case ul li {
        float: left;
        width: 43%;
        margin: 0 -3% 10px 6%; }
        .onestop-case ul li img {
          width: 100%;
          height: auto; }
        .onestop-case ul li span {
          font-size: 11px;
          padding: 5px 0 0 0;
          line-height: 1.7; }

  .onestop-case-txt {
    font-size: 12px;
    margin: -10px 0 30px 0; } }
/* ----------------------------------------------------
  business
---------------------------------------------------- */
.business-contents {
  text-align: center;
  position: relative;
  background: url("../img/bg_business.png")/*tpa=http://www.sankeibt.com/img/bg_business.png*/ no-repeat center top;
  background-size: auto 500px;
  padding: 0 0 70px 0;
  margin: -5px 0 0 0; }

.business-contents-txt {
  color: #fff;
  padding: 80px 0;
  font-size: 125%;
  line-height: 1.8; }

.business-contents-items {
  width: 1080px;
  margin: 0 auto; }

.business-contents-box {
  float: left;
  width: 460px;
  text-align: center;
  background: #1e1e1e;
  color: #fff;
  position: relative; }
  .business-contents-box:first-child dt {
    margin-left: 110px; }
  .business-contents-box:first-child dd span {
    margin-left: 110px; }
  .business-contents-box:first-child ul {
    left: 0; }
  .business-contents-box:last-child dt {
    margin-right: 110px; }
  .business-contents-box:last-child dd span {
    margin-right: 110px; }
  .business-contents-box:last-child ul {
    right: 0; }
  .business-contents-box dt {
    font-size: 190%;
    letter-spacing: .3em;
    padding: 70px 0 35px 0;
    margin: 0 0 35px 0;
    background: url("../img/icn_bar03.png")/*tpa=http://www.sankeibt.com/img/icn_bar03.png*/ no-repeat center bottom;
    background-size: 20px auto; }
  .business-contents-box dd span {
    display: block;
    font-size: 120%;
    line-height: 1.8;
    padding: 0 0 60px 0; }
  .business-contents-box dd ul {
    position: absolute;
    top: 0; }
    .business-contents-box dd ul li {
      height: 112px;
      background: #f2f2f2;
      color: #1e1e1e;
      width: 115px;
      font-size: 110%;
      padding: 1px 0 0 0; }
      .business-contents-box dd ul li:nth-of-type(2) {
        height: 113px;
        background: #fff; }
      .business-contents-box dd ul li .icn {
        display: block;
        color: #d31a24; }
      .business-contents-box dd ul li .icn-produce {
        font-size: 230%;
        margin: 18px auto 10px auto; }
      .business-contents-box dd ul li .icn-event {
        font-size: 230%;
        margin: 19px auto 10px auto; }
      .business-contents-box dd ul li .icn-stage {
        font-size: 170%;
        margin: 22px auto 14px auto; }
      .business-contents-box dd ul li .icn-shop {
        font-size: 170%;
        margin: 21px auto 14px auto; }
      .business-contents-box dd ul li .icn-house {
        font-size: 200%;
        margin: 21px auto 11px auto; }
      .business-contents-box dd ul li .icn-office {
        font-size: 200%;
        margin: 18px auto 12px auto; }
  .business-contents-box dd .btn {
    border-top: 40px solid #fff;
    display: block; }

.business-contents-link {
  float: left;
  margin: 150px 31px 0 31px; }

@media screen and (max-width: 767px) {
  .business-contents {
    background: url("../img/bg_business_sp.png")/*tpa=http://www.sankeibt.com/img/bg_business_sp.png*/ no-repeat center top;
    background-size: auto 450px;
    padding: 0 0 30px 0;
    margin: 0; }

  .business-contents-txt {
    padding: 40px 0;
    font-size: 11px; }

  .business-contents-items {
    width: 96%;
    position: relative; }
    .business-contents-items .btn-ll a {
      height: 40px;
      line-height: 40px;
      font-size: 12px; }
      .business-contents-items .btn-ll a .icn {
        font-size: 10px; }

  .business-contents-box {
    width: 47%; }
    .business-contents-box:first-child dt {
      margin-left: 0; }
    .business-contents-box:first-child dd span {
      margin-left: 0; }
    .business-contents-box:first-child ul {
      left: inherit; }
    .business-contents-box:last-child {
      float: right; }
      .business-contents-box:last-child dt {
        margin-right: 0; }
      .business-contents-box:last-child dd span {
        margin-right: 0; }
      .business-contents-box:last-child ul {
        right: inherit; }
    .business-contents-box dt {
      font-size: 16px;
      padding: 30px 0 25px 0;
      margin: 0 0 25px 0;
      background-size: 16px auto; }
    .business-contents-box dd span {
      display: none; }
    .business-contents-box dd ul {
      position: relative;
      top: inherit;
      margin: 0 auto 30px auto;
      width: 80px; }
      .business-contents-box dd ul li {
        height: 79px;
        width: 80px;
        font-size: 11px;
        padding: 1px 0 0 0; }
        .business-contents-box dd ul li:nth-of-type(2) {
          height: 79px;
          background: #fff; }
        .business-contents-box dd ul li .icn-produce {
          font-size: 25px;
          margin: 10px auto 3px auto; }
        .business-contents-box dd ul li .icn-event {
          font-size: 25px;
          margin: 8px auto 5px auto; }
        .business-contents-box dd ul li .icn-stage {
          font-size: 19px;
          margin: 13px auto 7px auto; }
        .business-contents-box dd ul li .icn-shop {
          font-size: 22px;
          margin: 10px auto 5px auto; }
        .business-contents-box dd ul li .icn-house {
          font-size: 24px;
          margin: 10px auto 3px auto; }
        .business-contents-box dd ul li .icn-office {
          font-size: 25px;
          margin: 8px auto 5px auto; }
    .business-contents-box dd .btn {
      border-top: 15px solid #fff; }

  .business-contents-link {
    float: none;
    margin: 0;
    position: absolute;
    left: 50%;
    width: 36px;
    margin: 0 0 0 -18px;
    top: 55px;
    z-index: 1; }
    .business-contents-link img {
      width: 100%;
      height: auto; } }
/* business outline */
.business-outline {
  background: #f2f2f2;
  padding: 40px 0 60px 0; }
  .business-outline .btn {
    width: 350px;
    margin: 0 auto; }

.business-outline-inner {
  width: 930px;
  height: 700px;
  margin: 0 auto; }

.business-outline-txt {
  font-size: 110%;
  margin: 0 0 50px 0; }

.business-outline-box {
  background: #1e1e1e;
  color: #fff;
  position: relative;
  margin: 0 0 50px 0; }
  .business-outline-box dt {
    font-size: 190%;
    letter-spacing: .3em;
    float: left;
    width: 345px;
    text-align: center;
    line-height: 345px; }
  .business-outline-box dd {
    overflow: hidden;
    zoom: 1; }
    .business-outline-box dd ul li {
      height: 112px;
      background: #fff;
      color: #1e1e1e;
      font-size: 110%;
      padding: 1px 0 0 0; }
      .business-outline-box dd ul li:nth-of-type(2) {
        height: 113px;
        background: #eaeaea; }
      .business-outline-box dd ul li strong {
        float: left;
        width: 110px;
        text-align: center;
        margin: 0 30px 0 0; }
      .business-outline-box dd ul li span {
        overflow: hidden;
        zoom: 1;
        height: 113px;
        display: table-cell;
        vertical-align: middle;
        font-size: 110%; }
      .business-outline-box dd ul li .icn {
        display: block;
        color: #d31a24; }
      .business-outline-box dd ul li .icn-produce {
        font-size: 230%;
        margin: 18px auto 10px auto; }
      .business-outline-box dd ul li .icn-event {
        font-size: 230%;
        margin: 19px auto 10px auto; }
      .business-outline-box dd ul li .icn-stage {
        font-size: 170%;
        margin: 22px auto 14px auto; }
      .business-outline-box dd ul li .icn-shop {
        font-size: 170%;
        margin: 21px auto 14px auto; }
      .business-outline-box dd ul li .icn-house {
        font-size: 200%;
        margin: 21px auto 11px auto; }
      .business-outline-box dd ul li .icn-office {
        font-size: 200%;
        margin: 18px auto 12px auto; }

@media screen and (max-width: 767px) {
  .business-outline {
    padding: 30px 0 50px 0; }
    .business-outline .btn {
      width: 205px;
      margin: 0 auto; }
      .business-outline .btn a {
        height: 40px;
        line-height: 40px;
        font-size: 12px; }
        .business-outline .btn a .icn {
          font-size: 10px; }

  .business-outline-inner {
    width: 88%; }

  .business-outline-txt {
    font-size: 12px;
    margin: 0 0 20px 0; }

  .business-outline-box {
    background: #1e1e1e;
    color: #fff;
    position: relative;
    margin: 0 0 25px 0; }
    .business-outline-box dt {
      font-size: 16px;
      float: none;
      width: 100%;
      line-height: 60px; }
    .business-outline-box dd ul li {
      height: auto;
      font-size: 11px; }
      .business-outline-box dd ul li:nth-of-type(2) {
        height: auto; }
      .business-outline-box dd ul li strong {
        float: none;
        width: 100%;
        margin: 0 0 0 0;
        text-align: center;
        display: block;
        padding: 10px 0 15px 0; }
      .business-outline-box dd ul li span {
        height: auto;
        display: block;
        font-size: 11px;
        text-align: center;
        padding: 0 0 15px 0; }
      .business-outline-box dd ul li .icn {
        display: inline-block;
        margin: 0 10px 0 0;
        top: 5px; }
      .business-outline-box dd ul li .icn-produce {
        font-size: 25px;
        margin: 0 10px 0 0; }
      .business-outline-box dd ul li .icn-event {
        font-size: 25px;
        margin: 0 10px 0 0; }
      .business-outline-box dd ul li .icn-stage {
        font-size: 19px;
        margin: 0 10px 0 0; }
      .business-outline-box dd ul li .icn-shop {
        font-size: 22px;
        margin: 0 10px 0 0; }
      .business-outline-box dd ul li .icn-house {
        font-size: 24px;
        margin: 0 10px 0 0; }
      .business-outline-box dd ul li .icn-office {
        font-size: 25px;
        margin: 0 10px 0 0; } }
/* business flow */
.business-flow-inner {
  width: 930px;
  margin: 0 auto;
  padding: 40px 0 70px 0; }

.business-flow-txt {
  font-size: 110%;
  margin: 0 0 30px 0; }

@media screen and (max-width: 767px) {
  .business-flow-inner {
    width: 88%;
    padding: 30px 0 0 0; }

  .business-flow-txt {
    font-size: 12px;
    margin: 0 0 30px 0; }

  .business-flow-img {
    width: 114%;
    margin: 0 0 0 -7%; }
    .business-flow-img img {
      width: 100%;
      height: auto; } }
/* business list */
.business-list .h-style02 {
  margin: 0 0 50px 0; }

.business-col {
  padding: 40px 0 60px 0; }
  .business-col .btn {
    width: 350px;
    margin: 0 auto; }
  .business-col img {
    float: left;
    margin: 0 50px 0 0; }

.business-col:nth-of-type(odd) {
  background: #f2f2f2; }

.business-col-inner {
  width: 930px;
  margin: 0 auto; }

.business-col-data {
  overflow: hidden;
  zoom: 1; }
  .business-col-data .btn {
    width: 150px;
    float: right;
    margin: 0 0 30px 0; }
    .business-col-data .btn .icn {
      font-size: 110%; }
  .business-col-data dl {
    clear: right;
    background: #eaeaea;
    color: #666;
    padding: 20px 30px; }
    .business-col-data dl dt {
      float: left;
      font-size: 130%;
      margin: 5px 20px 0 0; }
    .business-col-data dl dd {
      overflow: hidden;
      zoom: 1; }
      .business-col-data dl dd li {
        list-style-type: disc;
        margin: 5px 0 5px 20px;
        font-size: 110%;
        line-height: 1.4; }
        .business-col-data dl dd li a {
          color: #666; }
        .business-col-data dl dd li .icn-arrow-right01 {
          font-size: 120%;
          margin: 0 0 0 10px;
          top: 2px; }
        .business-col-data dl dd li .icn-arrow-bottom01 {
          font-size: 70%;
          margin: 0 0 0 10px;
          top: -1px; }

.business-col-txt {
  font-size: 110%;
  margin: 0 0 20px 0;
  overflow: hidden; }

.business-col-plan-txt {
  font-size: 110%;
  margin: 0; }

ul.plan {
  padding-left: 40px;
  margin: 0 0 20px 0; }

ul.plan li {
  list-style-type: disc; }

span.plan-text {
  display: inline;
  margin: 0; }

ul.plan {
  padding-left: 40px;
  margin: 0 0 20px 0; }
  ul.plan li {
    list-style-type: disc; }

.move-list dl:first-child {
  border-top: 1px solid #aaa; }
.move-list dl:nth-child(2) {
  border-top: 1px solid #aaa; }
.move-list dl:nth-child(odd) {
  border-right: none; }
.move-list dl {
  background: #eaeaea;
  color: #666;
  padding: 0;
  width: 48%;
  border-left: 1px solid #aaa;
  border-right: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
  float: left; }
  .move-list dl dt {
    background: #ccc;
    color: #000;
    text-align: center;
    padding: 8px 0;
    margin: 0;
    width: 100%;
    font-size: 120%; }
  .move-list dl dd {
    width: 100%; }
    .move-list dl dd ul {
      padding: 10px 0 0 20px;
      margin: 8px 0 20px 20px; }
      .move-list dl dd ul li {
        padding: 0;
        margin: 0 0 3px 0; }

.mansionoption {
  width: 100%;
  display: block;
  overflow: hidden;
  margin: 0 0 30px 0; }
.mansionoption h5{
  font-size: 130%;
  color: #000;
  margin-bottom: 10px; }
.mansionoption h5 span{
  width: 10px;
  height: 10px;
  background: #d31a24;
  margin: 7px 8px 0 0;
  display: block;
  float: left; }
.mansionoption ul{
  width: 100%;
  display: block;
  overflow: hidden;
  margin: 0 0 30px 0; }
.mansionoption ul li{
  color: #666;
  padding: 0;
  margin: 0 40px 30px 0;
  display: block;
  float: left; }
.mansionoption ul li img{
  display: block;
  float: none;
  margin: 0 }
.mansionoption ul li span{
  padding: 8px 0 0 0;
  margin: 0;
  font-size: 110%;
  float: none;
  display: block; }
  .mansionoption dl {
    background: none;
    color: #000;
    padding: 10px 0 20px 0;
    width: 14%;
    float: left; }
    .mansionoption dl dt {
      padding: 8px 0;
      margin: 0;
      font-size: 110%;
      height: 40px;
      vertical-align: middle;
      display: table-cell;
      float: none; }
      .mansionoption dl dt .icn {
        font-size: 90%;
        margin: 0 0 0 10px;
        top: 2px; }
    .mansionoption dl dd {
      display: block; }
      .mansionoption dl dd img {
        float: none;
        margin: 0; }

.interior {
  width: 100%;
  display: block;
  overflow: hidden;
  margin: 0 0 30px 0; }
  .interior dl {
    background: none;
    color: #666;
    padding: 0;
    margin: 0 40px 30px 0;
    display: block;
    float: left; }
    .interior dl dt {
      padding: 0 0 8px 0;
      margin: 0;
      font-size: 110%;
      float: none; }
    .interior dl dd {
      display: block; }
      .interior dl dd img {
        float: none;
        margin: 0; }

.renovation-list dl {
  background: none;
  color: #666;
  padding: 0;
  border-left: 1px solid #aaa; }
  .renovation-list dl dt {
    background: #ccc;
    color: #000;
    padding: 10px 0 10px 20px;
    margin: 0;
    width: 10%;
    font-size: 110%;
    border-top: 1px solid #aaa;
    border-right: 1px solid #aaa; }
  .renovation-list dl dd {
    width: 65%;
    padding: 10px 0 10px 20px;
    margin: 0;
    border-top: 1px solid #aaa;
    border-right: 1px solid #aaa;
    font-size: 110%; }
  .renovation-list dl dd:last-child {
    border-bottom: 1px solid #aaa; }

@media screen and (max-width: 767px) {
  .business-list .h-style02 {
    margin: 0 0 30px 0; }
  .business-list .h-style04 {
    border: none;
    margin: 0;
    padding: 0 0 20px 0; }
  .business-list .js-toggle {
    border-top: 2px solid #e4e4e4;
    padding: 25px 0 0 0; }

  .business-col {
    padding: 30px 0 0 0; }
    .business-col .btn {
      width: 350px;
      margin: 0 auto; }
    .business-col img {
      float: none;
      width: 80%;
      height: auto;
      margin: 0 auto 25px auto;
      display: block; }

  .business-col-inner {
    width: 88%; }

  .business-col-data {
    overflow: hidden;
    zoom: 1; }
    .business-col-data .btn {
      width: 120px;
      float: right;
      margin: 0 0 20px 0; }
      .business-col-data .btn .icn {
        font-size: 10px;
        right: 10px; }
    .business-col-data dl {
      padding: 15px 20px;
      margin: 0 0 10px 0; }
      .business-col-data dl dt {
        float: none;
        font-size: 12px;
        margin: 0 0 5px 0; }
      .business-col-data dl dd li {
        margin: 5px 0 5px 15px;
        font-size: 11px; }
        .business-col-data dl dd li a {
          text-decoration: none; }
        .business-col-data dl dd li br {
          display: none; }
        .business-col-data dl dd li .icn-arrow-right01 {
          top: 1px; }
        .business-col-data dl dd li .icn-arrow-bottom01 {
          top: 0; }

  .business-col-txt {
    font-size: 12px;
    margin: -10px 0 15px 0; }

  .business-col-arrow {
    display: block;
    font-size: 12px; }
    .business-col-arrow .icn-arrow-bottom01 {
      display: none; }
    .business-col-arrow .icn-arrow-top01 {
      display: inline-block; }
    .business-col-arrow a {
      text-decoration: none;
      color: #aeaeae;
      display: block;
      text-align: center;
      padding: 10px 0 20px 0; }
      .business-col-arrow a.is-open .icn-arrow-bottom01 {
        display: inline-block; }
      .business-col-arrow a.is-open .icn-arrow-top01 {
        display: none; } }
/* detail */
.business-detail-inner {
  width: 930px;
  margin: 0 auto; }

.business-detail-h {
  font-size: 210%;
  font-weight: 600;
  padding: 10px 0 20px 0; }

.business-detail-name {
  font-size: 120%;
  font-weight: 600;
  padding: 0 0 15px 0; }

.business-detail-data {
  font-size: 110%;
  font-weight: 600;
  color: #666;
  padding: 0 0 40px 0; }

.business-detail-img {
  margin: 0 0 40px 0; }

.business-detail-solution {
  margin: 0 0 40px 0; }
  .business-detail-solution dt,
  .business-detail-solution dd {
    padding: 12px 0; }
    .business-detail-solution dt strong,
    .business-detail-solution dd strong {
      float: left;
      display: block;
      font-size: 120%;
      width: 80px;
      text-align: center; }
    .business-detail-solution dt span,
    .business-detail-solution dd span {
      overflow: hidden;
      zoom: 1;
      display: block;
      font-size: 110%;
      padding: 0 20px 0 0; }
  .business-detail-solution dt {
    background: #eaeaea; }
  .business-detail-solution dd {
    background: #f2f2f2; }

.business-detail-list {
  margin: 0 0 60px 0; }
  .business-detail-list li {
    float: left;
    width: 186px;
    background: #000; }
    .business-detail-list li span {
      display: block;
      color: #fff;
      font-size: 105%;
      padding: 17px 22px; }
    .business-detail-list li:nth-of-type(even) {
      background: #393939; }
    .business-detail-list li a {
      display: block;
      text-decoration: none; }
      .business-detail-list li a img {
        opacity: .7;
        transition: .2s opacity;
        -webkit-transition: .2s opacity; }
      .business-detail-list li a:hover img {
        opacity: 1; }

.business-detail-bg {
  background: #f2f2f2;
  margin: 0 0 50px 0;
  padding: 40px 0 30px 0; }

.business-detail-txt {
  margin: 0 0 30px 0;
  font-size: 110%; }
  .business-detail-txt strong {
    font-size: 120%; }

.business-detail-imgs {
  margin: 0 0 30px 0; }
  .business-detail-imgs li {
    float: left;
    width: 310px;
    background: #000; }
    .business-detail-imgs li span {
      display: block;
      color: #fff;
      font-size: 105%;
      padding: 17px 22px; }
    .business-detail-imgs li:nth-of-type(even) {
      background: #393939; }

@media screen and (max-width: 767px) {
  .business-detail-inner {
    width: 88%; }

  .business-detail-h {
    font-size: 18px;
    padding: 0 0 10px 0;
    line-height: 1.5; }
    .business-detail-h br {
      display: none; }

  .business-detail-name {
    font-size: 12px;
    padding: 0 0 10px 0; }

  .business-detail-data {
    font-size: 12px;
    padding: 0 0 20px 0; }

  .business-detail-img {
    margin: 0 0 20px 0; }
    .business-detail-img img {
      width: 100%;
      height: auto; }

  .business-detail-solution {
    margin: 0 0 30px 0; }
    .business-detail-solution dt strong,
    .business-detail-solution dd strong {
      font-size: 13px;
      width: 60px; }
    .business-detail-solution dt span,
    .business-detail-solution dd span {
      font-size: 12px; }

  .business-detail-list {
    margin: 0 0 30px -7%;
    width: 114%; }
    .business-detail-list li {
      width: 50%; }
      .business-detail-list li span {
        font-size: 12px;
        padding: 10px; }
      .business-detail-list li img {
        width: 100%;
        height: auto; }
      .business-detail-list li a:hover img {
        opacity: .7; }

  .business-detail-bg {
    margin: 0 0 30px 0;
    padding: 20px 0 10px 0; }

  .business-detail-txt {
    margin: 0 0 20px 0;
    font-size: 12px; }
    .business-detail-txt strong {
      font-size: 14px; }

  .business-detail-imgs {
    margin: 0 0 30px -7%;
    width: 114%; }
    .business-detail-imgs li {
      width: 50%;
      background: #000; }
      .business-detail-imgs li img {
        width: 100%;
        height: auto; }
      .business-detail-imgs li span {
        font-size: 12px;
        padding: 10px; } }
/* ----------------------------------------------------
  recruit
---------------------------------------------------- */
.recruit-contents {
     background: #f2f2f2;
     padding: 40px 0 60px 0; 
 }

.recruit-col {
  margin: 0 0 50px 0; }
  .recruit-col p {
    margin: 0 0 30px 0;
    font-size: 110%; }

@media screen and (max-width: 767px) {
  .recruit-contents {
    padding: 25px 0 10px 0;
    width: 88%;
    margin: 0 auto; }

  .recruit-col {
    margin: 0 0 30px 0; }
    .recruit-col p {
      margin: 0 0 20px 0;
      font-size: 12px; } }
/* ----------------------------------------------------
  contact
---------------------------------------------------- */
/* input */
.contact-input {
  padding: 10px 0 0 0; }
  .contact-input table {
    margin: 30px 0 0 0;
    font-size: 110%; }
    .contact-input table th {
      width: 240px;
      vertical-align: top;
      padding: 7px 0 40px 0; }
      .contact-input table th em {
        background: #d31a24;
        color: #fff;
        font-size: 90%;
        width: 40px;
        text-align: center;
        display: inline-block;
        height: 18px;
        line-height: 18px;
        margin: 0 0 0 15px; }
    .contact-input table td {
      vertical-align: top;
      padding: 0 0 40px 0;
      word-wrap: break-word;
      word-break: break-all; }
      .contact-input table td input[type=text] {
        width: 460px; }
        .contact-input table td input[type=text].contact-input-tel {
          width: 290px; }
        .contact-input table td input[type=text].contact-input-zip {
          width: 160px; }
        .contact-input table td input[type=text].contact-input-address {
          width: 690px; }
      .contact-input table td textarea {
        width: 690px; }
  .contact-input dl {
    width: 360px;
    margin: 0 auto -10px auto; }
    .contact-input dl dt {
      float: left;
      clear: left;
      font-size: 130%;
      padding: 15px 20px 15px 0; }
    .contact-input dl dd {
      overflow: hidden;
      zoom: 1;
      font-size: 280%; }
      .contact-input dl dd span,
      .contact-input dl dd a {
        font-family: 'Montserrat', sans-serif;
        letter-spacing: .1em; }

.contact-input-desc {
  font-size: 110%;
  margin: -20px 0 40px 0; }

.contact-input-bg {
  background: #f2f2f2;
  margin: 50px 0 0 0;
  padding: 60px 0 1px 0; }

.contact-input-inner {
  width: 930px;
  margin: 0 auto; }

.contact-input-txt {
  text-align: center;
  font-size: 110%;
  line-height: 2;
  margin: 0 0 30px 0; }

.contact-input-btn {
  text-align: center;
  padding: 40px 0; }
  .contact-input-btn li {
    width: 250px;
    margin: 0 10px;
    display: inline-block;
    vertical-align: top; }
    .contact-input-btn li .icn {
      font-size: 115% !important; }
    .contact-input-btn li .icn-arrow-right01 {
      right: 15px !important; }

.contact-input-att {
  background: #eaeaea;
  padding: 25px 30px;
  margin: 35px 0 40px 0; }
  .contact-input-att ol li {
    list-style-type: decimal;
    margin: 0 0 0 20px;
    font-size: 110%; }
  .contact-input-att p {
    margin: 20px 0 0 20px;
    font-size: 110%; }
  .contact-input-att a {
    text-decoration: underline; }
    .contact-input-att a:hover {
      text-decoration: none; }

.contact-input-radios {
  padding: 3px 0 0 0; }
  .contact-input-radios label {
    display: block;
    position: relative;
    padding: 3px 0; }
    .contact-input-radios label input {
      position: absolute;
      visibility: hidden; }
      .contact-input-radios label input:checked + i {
        background-position: 0 -17px; }
    .contact-input-radios label i {
      background-image: url("../img/icn_radio.png")/*tpa=http://www.sankeibt.com/img/icn_radio.png*/;
      background-size: 17px auto;
      background-repeat: no-repeat;
      background-position: 0 0;
      width: 17px;
      height: 17px;
      margin: 0 12px 0 0;
      top: 4px;
      display: inline-block; }

.contact-input-en .contact-input-txt,
.contact-input-en .h-style05,
.contact-input-en th,
.contact-input-en .contact-input-radios label,
.contact-input-en td input,
.contact-input-en td textarea,
.contact-input-en .contact-input-desc,
.contact-input-en .contact-input-att li,
.contact-input-en .contact-input-att p,
.contact-input-en .contact-input-btn li button {
  font-family: 'Montserrat', sans-serif;
  font-weight: normal; }
.contact-input-en th em {
  width: 70px !important;
  font-family: 'Montserrat', sans-serif; }
.contact-input-en dl {
  width: 550px; }
  .contact-input-en dl dt {
    font-family: 'Montserrat', sans-serif; }

@media screen and (max-width: 767px) {
  .contact-input {
    padding: 25px 0 0 0; }
    .contact-input table {
      margin: 0;
      font-size: 12px;
      width: 100%; }
      .contact-input table th {
        width: 100%;
        padding: 0 0 5px 0;
        display: block; }
        .contact-input table th em {
          font-size: 10px;
          width: 28px;
          height: 13px;
          line-height: 13px;
          margin: 0 0 0 10px;
          top: -1px;
          position: relative; }
      .contact-input table td {
        width: 100%;
        padding: 0 0 20px 0;
        display: block; }
        .contact-input table td input[type=text] {
          width: 100%; }
          .contact-input table td input[type=text].contact-input-tel {
            width: 100%; }
          .contact-input table td input[type=text].contact-input-zip {
            width: 150px; }
          .contact-input table td input[type=text].contact-input-address {
            width: 100%; }
        .contact-input table td textarea {
          width: 100%; }
    .contact-input dl {
      width: 280px;
      margin: 0 auto; }
      .contact-input dl dt {
        font-size: 13px;
        padding: 10px 20px 10px 0; }
      .contact-input dl dd.for-sp {
        display: block;
        font-size: 26px;
        margin: 0; }
        .contact-input dl dd.for-sp a {
          text-decoration: none;
          white-space: nowrap; }

  .contact-input-desc {
    font-size: 12px;
    margin: 0 0 20px 0; }

  .contact-input-bg {
    margin: 20px 0 0 0;
    padding: 25px 0 1px 0; }

  .contact-input-inner {
    width: 88%; }

  .contact-input-txt {
    font-size: 12px;
    line-height: 1.8;
    margin: 0 0 10px 0; }

  .contact-input-btn {
    text-align: center;
    padding: 25px 0 15px 0; }
    .contact-input-btn li {
      width: 250px;
      display: inline-block;
      margin: 0 15px 15px 15px;
      vertical-align: top; }
      .contact-input-btn li .icn {
        font-size: 10px !important; }
      .contact-input-btn li .icn-arrow-right01 {
        right: 10px !important; }
      .contact-input-btn li .icn-arrow-left01 {
        left: 10px !important; }

  .contact-input-att {
    height: 170px;
    overflow: auto;
    padding: 15px;
    margin: 0 0 30px 0; }
    .contact-input-att ol li {
      margin: 0 0 0 10px;
      font-size: 12px; }
    .contact-input-att p {
      margin: 10px 0 0 10px;
      font-size: 12px; }

  .contact-input-en .contact-input-txt {
    width: 88%;
    margin: 0 auto 10px auto; }
  .contact-input-en th em {
    width: 55px !important; }
  .contact-input-en dl {
    width: 290px; }
    .contact-input-en dl dt {
      font-size: 11px;
      padding: 5px 0 0 0;
      width: 115px; }
    .contact-input-en dl dd.for-sp {
      font-size: 16px; }
  .contact-input-en .contact-input-radios label {
    font-size: 10px;
    white-space: nowrap; }
    .contact-input-en .contact-input-radios label i {
      margin: 0 4px 0 0; } }
/* conf */
.contact-conf {
  padding: 10px 0 0 0; }
  .contact-conf table {
    margin: 30px 0 20px 0;
    font-size: 110%; }
    .contact-conf table th {
      width: 240px;
      vertical-align: top;
      padding: 0 0 20px 0; }
    .contact-conf table td {
      vertical-align: top;
      padding: 0 0 20px 0;
      word-wrap: break-word;
      word-break: break-all; }

.contact-conf-en {
  margin: -10px 0 0 0; }
  .contact-conf-en .h-style02 {
    margin: -10px 0 0 0; }
  .contact-conf-en .contact-conf-btn dt,
  .contact-conf-en .h-style05,
  .contact-conf-en .btn a,
  .contact-conf-en .btn button,
  .contact-conf-en th,
  .contact-conf-en td {
    font-family: 'Montserrat', sans-serif;
    font-weight: normal; }

.contact-conf-bg {
  background: #f2f2f2;
  margin: 50px 0 0 0;
  padding: 60px 0 1px 0; }

.contact-conf-inner {
  width: 930px;
  margin: 0 auto; }

.contact-conf-btn {
  text-align: center;
  padding: 40px 0; }
  .contact-conf-btn dt {
    font-size: 110%;
    padding: 0 0 30px 0; }
  .contact-conf-btn li {
    width: 250px;
    display: inline-block;
    margin: 0 15px;
    vertical-align: top; }
    .contact-conf-btn li .icn {
      font-size: 115% !important; }
    .contact-conf-btn li .icn-arrow-right01 {
      right: 15px !important; }

@media screen and (max-width: 767px) {
  .contact-conf {
    padding: 20px 0 0 0; }
    .contact-conf .h-style02 {
      background: no-repeat;
      padding: 0; }
    .contact-conf table {
      margin: 0;
      font-size: 12px; }
      .contact-conf table th {
        width: 100%;
        display: block;
        padding: 0 0 0 0; }
      .contact-conf table td {
        width: 100%;
        display: block;
        padding: 0 0 20px 0; }

  .contact-conf-en {
    margin: -10px 0 0 0; }
    .contact-conf-en .h-style02 {
      margin: 10px 0 30px 0; }

  .contact-conf-bg {
    margin: -10px 0 0 0;
    padding: 25px 0 1px 0; }

  .contact-conf-inner {
    width: 88%; }

  .contact-conf-btn {
    padding: 25px 0; }
    .contact-conf-btn dt {
      font-size: 12px;
      padding: 0 6% 20px 6%; }
    .contact-conf-btn li {
      width: 40%;
      margin: 0 8px; }
      .contact-conf-btn li .icn {
        font-size: 10px !important; }
      .contact-conf-btn li .icn-arrow-right01 {
        right: 10px !important; }
      .contact-conf-btn li .icn-arrow-left01 {
        left: 10px !important; } }
/* comp */
.contact-comp {
  text-align: center;
  padding: 0 0 70px 0; }
  .contact-comp dl {
    width: 360px;
    margin: 0 auto 20px auto; }
    .contact-comp dl dt {
      float: left;
      clear: left;
      font-size: 130%;
      padding: 15px 20px 15px 0; }
    .contact-comp dl dd {
      overflow: hidden;
      zoom: 1;
      font-size: 280%; }
      .contact-comp dl dd span,
      .contact-comp dl dd a {
        font-family: 'Montserrat', sans-serif;
        letter-spacing: .1em; }
  .contact-comp .btn {
    width: 250px;
    margin: 50px auto 0 auto; }
    .contact-comp .btn .icn {
      font-size: 115%; }

.contact-comp-en .contact-comp-h,
.contact-comp-en .contact-comp-txt,
.contact-comp-en dt,
.contact-comp-en .btn a {
  font-family: 'Montserrat', sans-serif;
  font-weight: normal; }
.contact-comp-en dl {
  width: 550px; }
  .contact-comp-en dl dt {
    font-family: 'Montserrat', sans-serif; }

.contact-comp-h {
  font-size: 190%;
  margin: 0 0 25px 0; }

.contact-comp-txt {
  font-size: 110%;
  line-height: 2;
  margin: 0 0 20px 0; }
  .contact-comp-txt a {
    color: #d31a24;
    text-decoration: underline; }
    .contact-comp-txt a:hover {
      text-decoration: none; }

@media screen and (max-width: 767px) {
  .contact-comp {
    padding: 0 0 30px 0; }
    .contact-comp dl {
      width: 280px;
      margin: -10px auto 10px auto; }
      .contact-comp dl dt {
        font-size: 13px;
        padding: 10px 20px 10px 0; }
      .contact-comp dl dd.for-sp {
        display: block;
        font-size: 26px;
        margin: 0; }
        .contact-comp dl dd.for-sp a {
          text-decoration: none;
          white-space: nowrap; }
    .contact-comp .btn {
      width: 220px;
      margin: 30px auto 0 auto; }
      .contact-comp .btn .icn {
        font-size: 10px;
        left: 10px; }

  .contact-comp-en dl {
    width: 290px; }
    .contact-comp-en dl dt {
      font-size: 11px;
      padding: 5px 0 0 0;
      width: 115px; }
    .contact-comp-en dl dd.for-sp {
      font-size: 16px; }
  .contact-comp-en .contact-comp-txt {
    margin: 0 6% 25px 6%; }

  .contact-comp-h {
    font-size: 16px;
    margin: 20px 0 10px 0; }

  .contact-comp-txt {
    font-size: 12px;
    line-height: 1.7;
    margin: 0 6% 15px 6%; }
    .contact-comp-txt a {
      color: #d31a24;
      text-decoration: underline; }
      .contact-comp-txt a:hover {
        text-decoration: none; } }
/* ----------------------------------------------------
  sitepolicy
---------------------------------------------------- */
.sitepolicy-contents {
  padding: 0 0 60px 0; }
  .sitepolicy-contents p {
    font-size: 110%;
    margin: 0 0 10px 0;
    line-height: 1.8; }
  .sitepolicy-contents ol {
    margin: 0 0 0 50px; }
    .sitepolicy-contents ol li {
      list-style-type: decimal;
      font-size: 110%;
      margin: 0 0 10px 0;
      line-height: 1.8; }
      .sitepolicy-contents ol li ol {
        margin: 30px 0 0 30px; }
      .sitepolicy-contents ol li li {
        font-size: 100%;
        margin: 0; }

.sitepolicy-contents-btn {
  margin: 20px 0 0 0; }
  .sitepolicy-contents-btn a {
    text-decoration: none; }
    .sitepolicy-contents-btn a img {
      float: left;
      margin: 0 10px 0 0; }
    .sitepolicy-contents-btn a span {
      display: block;
      overflow: hidden;
      line-height: 1.3;
      color: #666;
      font-size: 90%; }

@media screen and (max-width: 767px) {
  .sitepolicy-contents {
    padding: 25px 0 40px 0;
    width: 88%;
    margin: 0 auto; }
    .sitepolicy-contents p {
      font-size: 12px;
      margin: 0;
      line-height: 1.6; }
    .sitepolicy-contents ol {
      margin: 0 0 0 30px; }
      .sitepolicy-contents ol li {
        font-size: 12px;
        margin: 0;
        line-height: 1.6; }
        .sitepolicy-contents ol li ol {
          margin: 10px 0 0 20px; }
        .sitepolicy-contents ol li li {
          font-size: 100%;
          margin: 0; }

  .sitepolicy-contents-btn {
    margin: 20px 0 0 0; }
    .sitepolicy-contents-btn a span {
      font-size: 10px;
      padding: 3px 0 0 0; } }
/* ----------------------------------------------------
  privacy
---------------------------------------------------- */
.privacy-contents {
  padding: 0 0 60px 0; }
  .privacy-contents .h-style03 {
    margin: 0 0 40px 0; }
  .privacy-contents p {
    font-size: 110%;
    margin: 0 0 10px 0;
    line-height: 1.8; }
  .privacy-contents ol {
    margin: 0 0 0 20px; }
    .privacy-contents ol li {
      list-style-type: decimal;
      font-size: 110%;
      margin: 0 0 10px 0;
      line-height: 1.8; }
      .privacy-contents ol li ol {
        margin: 30px 0 0 10px; }
      .privacy-contents ol li ul {
        margin: 20px 0 0 0; }
        .privacy-contents ol li ul li {
          list-style-type: none;
          margin: 0;
          font-size: 100%;
          text-indent: -1.2em;
          margin: 0 0 0 1.2em; }
      .privacy-contents ol li div {
        margin: 30px 0; }
      .privacy-contents ol li table {
        width: 100%;
        margin: 30px 0 40px 0; }
        .privacy-contents ol li table th {
          background: #eaeaea;
          border-right: 2px solid #e4e4e4;
          text-align: center;
          padding: 13px 0;
          vertical-align: top; }
        .privacy-contents ol li table th:first-child {
          width: 260px; }
        .privacy-contents ol li table th:last-child {
          border-right: none; }
        .privacy-contents ol li table tr:last-child th,
        .privacy-contents ol li table tr:last-child td {
          border-bottom: none; }
        .privacy-contents ol li table td {
          background: #f2f2f2;
          vertical-align: top;
          border-bottom: 2px solid #e4e4e4;
          border-right: 2px solid #e4e4e4;
          padding: 13px 20px; }
          .privacy-contents ol li table td ul {
            margin: 0 0 0 10px; }
            .privacy-contents ol li table td ul li {
              list-style-type: disc;
              text-indent: 0; }
        .privacy-contents ol li table td:last-child {
          border-right: none; }

.privacy-contents-pmark {
  float: right;
  margin: 0 0 0 20px; }

.privacy-contents-date {
  text-align: right; }

@media screen and (max-width: 767px) {
  .privacy-contents {
    padding: 25px 0 0 0;
    width: 88%;
    margin: 0 auto; }
    .privacy-contents .h-style03 {
      margin: 0 0 20px 0; }
    .privacy-contents p {
      font-size: 12px;
      margin: 0;
      line-height: 1.6; }
    .privacy-contents ol li {
      font-size: 12px;
      margin: 20px 0 0 0;
      line-height: 1.6; }
      .privacy-contents ol li div {
        margin: 20px 0; }
      .privacy-contents ol li table {
        margin: 20px 0 30px 0; }
        .privacy-contents ol li table th {
          padding: 10px 0; }
        .privacy-contents ol li table th:first-child {
          width: 35%; }
        .privacy-contents ol li table td {
          border-bottom: 1px solid #e4e4e4;
          border-right: 1px solid #e4e4e4;
          padding: 10px 5px; }
          .privacy-contents ol li table td ul {
            margin: 0 0 0 5px; }

  .privacy-contents-pmark {
    width: 50px;
    height: auto; }

  .privacy-contents-date {
    margin: 20px 0 30px 0 !important; } }
/* ----------------------------------------------------
  faq
---------------------------------------------------- */
.faq-col {
  padding: 35px 0 10px 0; }
  .faq-col:nth-of-type(even) {
    background: #eee; }
  .faq-col dl {
    margin: 0 0 20px 0;
    padding: 0 0 25px 0;
    border-bottom: 2px solid #e4e4e4; }
    .faq-col dl:last-child {
      padding: 0;
      border-bottom: none; }
  .faq-col dt strong {
    font-size: 320%;
    font-family: 'Montserrat', sans-serif;
    color: #d31a24;
    display: block;
    float: left;
    width: 50px;
    text-align: center;
    margin: 0 10px 0 0; }
  .faq-col dt span {
    display: block;
    overflow: hidden;
    zoom: 1;
    font-size: 110%;
    padding: 22px 0 0 0; }
  .faq-col dd strong {
    font-size: 320%;
    font-family: 'Montserrat', sans-serif;
    display: block;
    float: left;
    width: 50px;
    text-align: center;
    margin: 0 10px 0 0; }
  .faq-col dd span {
    display: block;
    overflow: hidden;
    zoom: 1;
    font-size: 110%;
    padding: 22px 0 10px 0; }
    .faq-col dd span .btn {
      width: 320px;
      float: right;
      margin: 20px 0 20px 0; }

.faq-col-inner {
  width: 930px;
  margin: 0 auto; }

@media screen and (max-width: 767px) {
  .faq-col {
    padding: 25px 0 10px 0; }
    .faq-col .h-style03 {
      font-size: 18px; }
      .faq-col .h-style03 span {
        top: 5px; }
    .faq-col dl {
      margin: 0 0 10px 0;
      padding: 0 0 15px 0; }
    .faq-col dt strong {
      font-size: 30px;
      width: 30px;
      margin: 0 10px 0 0; }
    .faq-col dt span {
      font-size: 12px;
      padding: 15px 0 0 0; }
    .faq-col dd strong {
      font-size: 30px;
      width: 30px;
      margin: 0 10px 0 0; }
    .faq-col dd span {
      font-size: 12px;
      padding: 15px 0 10px 0; }
      .faq-col dd span .btn {
        width: 220px;
        margin: 20px 0 0 0; }
        .faq-col dd span .btn .icn {
          display: none; }

  .faq-col-inner {
    width: 88%; } }
/* ----------------------------------------------------
  company
---------------------------------------------------- */
.company-col:nth-of-type(odd) {
  background: #f2f2f2; }

.company-col-en:nth-of-type(odd) {
  background: #fff; }

.company-col-en:nth-of-type(even) {
  background: #f2f2f2; }

.company-col-inner {
  width: 930px;
  margin: 0 auto;
  padding: 40px 0; }

.company-col-en .h-style04 em,
.company-col-en .h-style05,
.company-col-en p {
  font-family: 'Montserrat', sans-serif;
  font-weight: normal; }
.company-col-en .h-style05 {
  clear: right; }
.company-col-en .company-col-txt {
  margin: 0 0 30px 0;
  font-size: 110%; }

@media screen and (max-width: 767px) {
  .company-col-inner {
    width: 88%;
    margin: 0 auto;
    padding: 40px 0; }

  .company-col-en .h-style04 em,
  .company-col-en .h-style05,
  .company-col-en p {
    font-family: 'Montserrat', sans-serif;
    font-weight: normal; }
  .company-col-en .h-style05 {
    clear: right; }
  .company-col-en .company-col-txt {
    margin: 0 0 30px 0;
    font-size: 110%; } }
/* about */
.company-about {
  margin: -40px 0 0 0; }
  .company-about p {
    margin: 0 0 30px 0;
    font-size: 110%; }

.company-col-list {
  margin: 0 0 30px 0; }
  .company-col-list li {
    font-family: 'Montserrat', sans-serif;
    font-size: 110%;
    list-style-type: disc;
    margin: 0 0 0 20px; }

@media screen and (max-width: 767px) {
  .company-about {
    margin: -20px 0 0 0; }
    .company-about p {
      margin: 0 0 30px 0;
      font-size: 12px; }

  .company-col-list {
    margin: 0 0 30px 0; }
    .company-col-list li {
      font-size: 12px; }
    .company-col-list:last-child {
      margin: 0; } }
/* group */
.company-group p {
  margin: 0 0 20px 0;
  font-size: 110%; }

.company-group-btn {
  text-align: right; }
  .company-group-btn li {
    margin: 0 0 20px 0; }
  .company-group-btn .btn {
    width: 370px;
    display: inline-block; }
    .company-group-btn .btn a {
      font-size: 110%; }
    .company-group-btn .btn .icn {
      font-size: 100%; }

@media screen and (max-width: 767px) {
  .company-group {
    margin: 0 0 -30px 0; }
    .company-group p {
      font-size: 12px; }

  .company-group-btn {
    margin: 0 0 30px 0; }
    .company-group-btn .btn {
      width: 100%;
      display: block;
      margin: 0 !important; }
      .company-group-btn .btn a {
        font-size: 12px; }
      .company-group-btn .btn .icn {
        font-size: 10px;
        right: 10px; } }
/* message */
.company-message p {
  font-size: 110%;
  margin: 0 0 20px 0; }
  .company-message p strong {
    font-size: 160%;
    letter-spacing: .1em;
    font-family: 'Montserrat', sans-serif; }

.company-message-txt {
  width: 680px;
  float: left; }

.company-message-president {
  float: right;
  margin: 10px 0 0 30px; }
  .company-message-president img {
    display: block;
    margin: 0 0 10px 0; }
  .company-message-president span {
    display: block;
    text-align: right;
    font-size: 110%; }

.company-col-en .company-message-president {
  margin: 10px 0 50px 0; }
  .company-col-en .company-message-president span {
    font-family: 'Montserrat', sans-serif; }

@media screen and (max-width: 767px) {
  .company-message p {
    font-size: 12px;
    margin: 0 0 20px 0; }
    .company-message p strong {
      font-size: 13px; }

  .company-message-txt {
    width: 100%;
    float: none; }

  .company-message-president {
    float: none;
    margin: 0 auto;
    width: 70%; }
    .company-message-president img {
      width: 100%;
      height: auto; }
    .company-message-president span {
      font-size: 12px; }

  .company-col-en .company-message-president {
    margin: 0 auto; } }
/* info */
.company-data th {
  font-size: 110%;
  vertical-align: top;
  padding: 0 70px 20px 0;
  width: 80px; }
.company-data td {
  font-size: 110%;
  vertical-align: top;
  padding: 0 0 20px 0;
  width: 430px; }
  .company-data td .btn {
    float: right;
    display: block;
    width: 80px;
    margin: -6px 0 0 0; }

.company-officer th {
  font-size: 110%;
  vertical-align: top;
  padding: 0 70px 20px 0;
  width: 240px; }
.company-officer td {
  font-size: 110%;
  vertical-align: top;
  padding: 0 0 20px 0; }

.company-license2 th {
  font-size: 110%;
  vertical-align: top;
  padding: 0 70px 20px 0;
  width: 240px; }
.company-license2 td {
  font-size: 110%;
  vertical-align: top;
  padding: 0 0 20px 0; }

.company-history th {
  font-size: 110%;
  vertical-align: top;
  padding: 0 70px 20px 0;
  width: 80px;
  text-align: right; }
.company-history td {
  font-size: 110%;
  vertical-align: top;
  padding: 0 0 20px 0; }

.company-info-img {
  text-align: center;
  padding: 40px 0 0 0; }

.company-col-en .company-data th {
  width: 200px;
  font-family: 'Montserrat', sans-serif; }
.company-col-en .company-data td {
  font-family: 'Montserrat', sans-serif; }
.company-col-en .company-data02 {
  margin: 0 0 20px 0; }
  .company-col-en .company-data02 th {
    width: 410px; }

.company-col-en .company-history th {
  width: 70px;
  padding-right: 0;
  text-align: left;
  font-family: 'Montserrat', sans-serif; }
.company-col-en .company-history td {
  font-family: 'Montserrat', sans-serif; }

@media screen and (max-width: 767px) {
  .company-data th {
    font-size: 12px;
    padding: 0 20px 20px 0;
    width: 70px; }
  .company-data td {
    font-size: 12px;
    width: auto; }
    .company-data td .btn {
      margin: 10px 0 0 0; }
  .company-data tr:last-child th,
  .company-data tr:last-child td {
    padding-bottom: 0; }

  .company-officer th {
    font-size: 12px;
    padding: 0 20px 20px 0;
    width: 130px; }
  .company-officer td {
    font-size: 12px; }

  .company-license2 th {
    font-size: 12px;
    padding: 0 20px 20px 0;
    width: 130px; }
  .company-license2 td {
    font-size: 12px; }

  .company-history th {
    font-size: 12px;
    padding: 0 20px 20px 0;
    width: 70px;
    text-align: right; }
  .company-history td {
    font-size: 12px;
    padding: 0 0 20px 0; }
  .company-history tr:last-child th,
  .company-history tr:last-child td {
    padding-bottom: 0; }

  .company-info-img {
    padding: 10px 0 0 0; }
    .company-info-img img {
      width: 100%;
      height: auto; }

  .company-col-en .company-data th {
    width: 100%;
    display: block;
    padding: 0;
    word-wrap: break-word;
    word-break: break-all; }
  .company-col-en .company-data td {
    width: 100%;
    display: block;
    padding: 0 0 20px 0; }
  .company-col-en .company-data02 {
    margin: 0 0 20px 0; }
    .company-col-en .company-data02 th {
      width: 100%;
      display: block;
      padding: 0;
      word-wrap: break-word;
      word-break: break-all; }
    .company-col-en .company-data02 td {
      width: 100%;
      display: block;
      padding: 0 0 20px 0; }

  .company-col-en .company-history th {
    width: 50px; } }
/* vision */
.company-vision {
  text-align: center; }

.company-vision-txt {
  padding: 0 0 20px 0; }
  .company-vision-txt p {
    line-height: 1.8;
    font-size: 120%;
    margin: 25px 0 0 0; }
    .company-vision-txt p img {
      display: block;
      margin: 40px auto 0 auto; }

.company-vision-copy {
  font-size: 210%;
  padding: 8px 0;
  letter-spacing: .15em; }

.company-guide {
  width: 795px;
  margin: 60px auto 0 auto; }

.company-guide-inner dl {
  float: left;
  width: 265px;
  background: #f2f2f2;
  padding: 25px 0 0 0; }
  .company-guide-inner dl:nth-of-type(even) {
    background: #eaeaea; }
.company-guide-inner dt {
  text-align: center;
  font-size: 130%;
  font-weight: 600;
  margin: 0 0 20px 0; }
  .company-guide-inner dt strong {
    display: block;
    color: #d31a24;
    font-weight: 600; }
.company-guide-inner ul {
  padding: 0 0 10px 0; }
.company-guide-inner li {
  list-style-type: disc;
  margin: 0 20px 5px 40px;
  font-size: 110%; }

.company-guide-title {
  background: #000;
  color: #fff;
  text-align: center;
  padding: 18px 0;
  font-size: 120%;
  letter-spacing: .15em; }

.company-guide-copy1 {
  background: url("../img/bg_company_guide.png")/*tpa=http://www.sankeibt.com/img/bg_company_guide.png*/ no-repeat center 30px;
  padding: 100px 0 0 0;
  font-size: 200%;
  text-align: center;
  font-weight: 600;
  letter-spacing: .3em;
  margin: 0 0 10px 0; }

.company-guide-read {
  font-size: 120%;
  font-weight: 900;
  text-align: center;
  margin: 0 0 20px 0;
  line-height: 2; }

.company-guide-copy2 {
  font-size: 300%;
  font-family: 'Montserrat', sans-serif;
  text-align: center;
  letter-spacing: .15em; }

.company-license table th {
  font-size: 110%;
  vertical-align: top;
  padding: 0 100px 20px 0; }
.company-license table td {
  font-size: 110%;
  vertical-align: top;
  padding: 0 0 20px 0; }

.company-license-link {
  float: right;
  margin: 0 0 0 100px; }

.company-col-en .company-vision-copy {
  font-family: 'Montserrat', sans-serif;
  font-size: 300%; }

@media screen and (max-width: 767px) {
  .company-vision-txt {
    padding: 0 0 15px 0; }
    .company-vision-txt:last-child {
      padding: 0; }
    .company-vision-txt p {
      font-size: 12px;
      margin: 15px 0 0 0;
      line-height: 1.6; }

  .company-vision-copy {
    font-size: 20px;
    padding: 0 0 8px 0; }

  .company-guide {
    width: 100%;
    margin: 20px auto 0 auto; }

  .company-guide-inner dl {
    float: none;
    width: 114%;
    padding: 15px 0 0 0;
    margin: 0 0 0 -7%;
    height: auto !important; }
  .company-guide-inner dt {
    font-size: 13px;
    margin: 0 0 10px 0; }
  .company-guide-inner ul {
    padding: 0 0 15px 0; }
  .company-guide-inner li {
    margin: 0 20px 0 40px;
    font-size: 12px; }

  .company-guide-title {
    width: 114%;
    margin: 0 0 0 -7%;
    padding: 7px 0;
    font-size: 12px; }

  .company-guide-copy1 {
    background: url("../img/bg_company_guide.png")/*tpa=http://www.sankeibt.com/img/bg_company_guide.png*/ no-repeat center 20px;
    background-size: 70px auto;
    padding: 55px 0 0 0;
    font-size: 15px;
    margin: 0 0 5px 0; }

  .company-guide-read {
    font-size: 12px;
    margin: 0 0 15px 0; }

  .company-guide-copy2 {
    font-size: 30px;
    line-height: 1.2; }

  .company-license table th {
    font-size: 12px;
    display: block;
    width: 100%;
    padding: 0 0 0 0; }
  .company-license table td {
    font-size: 12px;
    display: block;
    width: 100%;
    padding: 0 0 20px 12px; }
  .company-license table tr:last-child td {
    padding-bottom: 0; }

  .company-license-link {
    float: none;
    margin: 0;
    display: block; }
    .company-license-link a {
      text-decoration: none; }

  .company-col-en .company-vision-copy {
    font-size: 18px;
    padding: 8px 0 0 0; } }
/* access */
.company-access {
  margin: 0 0 10px 0; }
  .company-access p {
    font-size: 110%;
    margin: 0 0 20px 0; }

.company-access-map {
  width: 100%;
  height: 540px;
  margin: 30px 0 0 0; }

.company-access-map-link {
  float: right;
  padding: 20px 0 0 0; }
  .company-access-map-link a {
    display: block;
    background: #eaeaea;
    text-decoration: none;
    padding: 10px 20px;
    transition: .2s color;
    -webkit-transition: .2s color; }
    .company-access-map-link a:hover {
      color: #999; }
  .company-access-map-link .icn {
    font-size: 90%;
    margin: 0 0 0 10px; }

.company-col-en .company-access-map-link {
  padding: 20px 0 30px 0; }

@media screen and (max-width: 767px) {
  .company-access:last-child {
    margin: 0 0 -20px 0; }
  .company-access p {
    font-size: 12px; }

  .company-access-map {
    width: 100%;
    height: 240px; }

  .company-access-map-link a {
    font-size: 12px;
    padding: 5px 15px; }
    .company-access-map-link a:hover {
      color: #000; }
  .company-access-map-link .icn {
    font-size: 10px; }

  .company-col-en .company-access-map-link {
    padding: 20px 0 30px 0; } }
/* ----------------------------------------------------
      sbt-communication
    ---------------------------------------------------- */
.sbt-communication {
  text-align: center; }
.sbt-communication-txt {
  text-align: center;
  font-size: 120%;
  padding: 0 0 60px 0; }
.sbt-communication-list {
  width: 940px;
  margin: 0 auto 40px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
.sbt-communication-list li {
  flex: 0 1 auto;
  margin: 0 0 60px;}
.sbt-communication-list li img {
  border: 1px solid #ddd; }
.sbt-communication-list li .btn {
  display: block;
  width: 150px;
  margin: 18px auto 0}
@media screen and (max-width: 767px) {
  .sbt-communication-txt {
    text-align: center;
    font-size: 12px;
    padding: 30px; }
  .sbt-communication-list {
    width: 100%;
    display: block;;}
  .sbt-communication-list li {
    width: 100%;
    margin: 0 auto 40px;} }

/* ----------------------------------------------------
      internship
    ---------------------------------------------------- */
.internship { }
.internship-txt {
  text-align: center;
  font-size: 120%;
  padding: 0 0 60px 0; }
.internship-list {
  width: 940px;
  margin: 0 auto 40px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
.internship-list li {
  flex: 0 1 auto;
  margin: 0 0 40px;}
  @media screen and (max-width: 767px) {
    .internship-txt {
      text-align: center;
      font-size: 12px;
      padding: 30px; }
    .internship-list {
      width: 100%;
      display: block;;}
    .internship-list li {
      width: 100%;
      margin: 0 auto 40px;} }
/* ----------------------------------------------------
  404
---------------------------------------------------- */
.not-found {
  text-align: center;
  margin-top: 40px; }

.not-found-txt p {
  margin-bottom: 40px; }
  .not-found-txt p a {
    width: 220px; }

/* ----------------------------------------------------
  pages common
---------------------------------------------------- */
.container {
  position: relative;
  width: 100%;
  overflow: hidden;
  min-height: 580px; }

.main {
  padding: 50px 0 0 0; }

.page-container {
  width: 930px;
  margin: 0 auto;
  padding: 100px 0 0 0; }
  .page-container.is-100 {
    width: 100%; }

@media screen and (max-width: 767px) {
  .container {
    min-height: inherit; }

  .main {
    padding: 0; }

  .page-container {
    width: 100%;
    padding: 0; }
    .page-container.is-100 {
      width: 100%; } }
/* side */
.side {
  background: #eaeaea;
  width: 50%;
  position: absolute;
  height: 100%;
  left: 50%;
  top: 0;
  margin: 0 0 0 235px;
  padding: 0 0 60px 0; }

.side-inner {
  width: 245px;
  padding: 0 0 0 30px; }

.side-h {
  font-size: 150%;
  font-weight: 600;
  letter-spacing: .15em;
  padding: 50px 0 10px 0; }

.side-recent li {
  margin: 20px 0 0 0; }
  .side-recent li span {
    font-size: 110%;
    display: block;
    font-family: 'Montserrat', sans-serif; }
  .side-recent li a {
    font-size: 105%;
    display: block; }
    .side-recent li a:hover {
      text-decoration: none; }
      .side-recent li a:hover strong {
        text-decoration: underline; }

.side-cat {
  padding: 15px 0 0 0; }
  .side-cat li {
    margin: 5px 0 0 0; }
    .side-cat li a {
      font-size: 115%;
      font-family: 'Montserrat', sans-serif; }

@media screen and (max-width: 767px) {
  .side {
    width: 100%;
    position: relative;
    left: inherit;
    top: inherit;
    margin: 0;
    padding: 0 0 25px 0;
    height: auto !important; }

  .side-inner {
    width: 88%;
    padding: 0;
    margin: 0 auto; }

  .side-h {
    font-size: 15px;
    padding: 25px 0 5px 0; }

  .side-recent li {
    margin: 15px 0 0 0; }
    .side-recent li span {
      font-size: 12px; }
    .side-recent li a {
      font-size: 12px;
      text-decoration: none; }
      .side-recent li a:hover strong {
        text-decoration: none; }

  .side-cat {
    padding: 10px 0 0 0; }
    .side-cat li {
      margin: 0; }
      .side-cat li a {
        text-decoration: none;
        font-size: 12px; } }
/* page header */
.page-header {
  margin: 80px 0 0 0;
  position: relative; }

.page-header-en {
  margin: 80px 0 -30px 0; }
  .page-header-en .page-header-h {
    padding: 75px 0 0 0;
    height: 140px; }

.page-header-h {
  background: url("../img/bg_page_header.png")/*tpa=http://www.sankeibt.com/img/bg_page_header.png*/ no-repeat center center;
  background-size: cover;
  height: 160px;
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 340%;
  letter-spacing: .15em;
  padding: 55px 0 0 0; }
  .page-header-h span {
    font-family: 'Montserrat', sans-serif; }
  .page-header-h small {
    font-size: 40%;
    display: block;
    letter-spacing: .1em; }

@media screen and (max-width: 767px) {
  .page-header {
    margin: 0; }

  .page-header-en {
    margin: 0; }
    .page-header-en .page-header-h {
      padding: 0 15px;
      height: 35px;
      line-height: 35px;
      margin: 0;
      font-size: 12px; }

  .page-header-h {
    background: #282828;
    height: 35px;
    text-align: left;
    font-family: 'mplus-2m-medium', sans-serif;
    font-size: 14px;
    padding: 0; }
    .page-header-h span {
      display: none; }
    .page-header-h small {
      height: 35px;
      line-height: 35px;
      font-size: 12px;
      display: block;
      letter-spacing: .1em;
      margin: 0 15px; } }
/* topic path */
.topicpath {
  width: 1080px;
  font-size: 110%;
  position: absolute;
  left: 50%;
  margin: 0 0 0 -470px;
  top: 250px;
  z-index: 1;
  overflow: hidden; }
  .topicpath p {
    display: inline-block;
    margin: 0 15px 0 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden; }
    .topicpath p .icn {
      font-size: 110%;
      margin: 0 0 0 15px;
      top: 1px; }
    .topicpath p.is-newstitle {
      width: 270px; }

.topicpath-inner {
  min-width: 1080px; }

@media screen and (max-width: 767px) {
  .topicpath {
    width: 100%;
    font-size: 11px;
    position: relative;
    left: inherit;
    margin: 0;
    top: inherit;
    background: #f2f2f2;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch; }
    .topicpath p {
      display: inline-block;
      margin: 0 -5px 0 15px;
      height: 30px;
      line-height: 30px;
      vertical-align: top; }
      .topicpath p a {
        text-decoration: none;
        background: url("../img/bg_topicpath.png")/*tpa=http://www.sankeibt.com/img/bg_topicpath.png*/ no-repeat right center;
        background-size: 16px auto;
        padding: 0 20px 0 0;
        height: 30px;
        display: block; }
      .topicpath p .icn {
        display: none; }
      .topicpath p.is-newstitle {
        width: auto; }

  .topicpath-inner {
    min-width: inherit; } }
/* pager */
.pager {
  width: 650px;
  position: relative;
  left: 50%;
  margin: 0 0 0 -470px;
  padding: 35px 0;
  text-align: center;
  min-height: 25px; }
  .pager li {
    display: inline-block;
    font-size: 115%;
    margin: 0 5px;
    font-family: 'Montserrat', sans-serif; }
    .pager li a {
      width: 30px;
      height: 30px;
      line-height: 30px;
      display: block; }
      .pager li a.is-current {
        border: 1px solid #000;
        background: #fff;
        text-decoration: none; }

.pager-prev {
  position: absolute;
  left: 0;
  top: 35px;
  font-size: 100%; }
  .pager-prev a {
    display: inline !important; }
  .pager-prev .icn {
    margin: 0 10px 0 0;
    top: 1px; }

.pager-next {
  position: absolute;
  right: 0;
  top: 35px;
  font-size: 100%; }
  .pager-next a {
    display: inline !important; }
  .pager-next .icn {
    margin: 0 0 0 10px;
    top: 1px; }

.pager-new a {
  width: 100px !important; }

@media screen and (max-width: 767px) {
  .pager {
    width: 88%;
    position: relative;
    left: inherit;
    margin: 0 auto;
    padding: 25px 0; }
    .pager li {
      font-size: 11px; }
      .pager li a {
        width: 30px;
        text-decoration: none; }

  .pager-prev {
    top: 27px; }

  .pager-next {
    top: 27px; } }
/* page-nav */
.page-nav {
  margin: 0 auto 40px auto;
  width: 930px; }
  .page-nav.page-nav-2 li {
    width: 444px; }
    .page-nav.page-nav-2 li:last-child {
      float: right; }
    .page-nav.page-nav-2 li span {
      width: 444px; }
  .page-nav.page-nav-4 li {
    width: 232px; }
    .page-nav.page-nav-4 li span {
      width: 232px; }
  .page-nav.page-nav-5 li {
    width: 186px; }
    .page-nav.page-nav-5 li span {
      width: 180px; }
  .page-nav ul li {
    float: left;
    position: relative; }
    .page-nav ul li.is-down {
      cursor: default;
      transition: .2s color;
      -webkit-transition: .2s color; }
    .page-nav ul li.is-down:hover {
      color: #AAA; }
      .page-nav ul li.is-down:hover ul {
        opacity: 1;
        z-index: 10; }
    .page-nav ul li select {
      display: none; }
    .page-nav ul li ul {
      background: #f4f4f4 !important;
      padding: 10px 0;
      position: absolute;
      left: 0;
      top: 60px;
      z-index: -1;
      opacity: 0;
      transition: .2s opacity;
      -webkit-transition: .2s opacity; }
      .page-nav ul li ul li {
        cursor: pointer;
        float: none; }
        .page-nav ul li ul li a {
          height: auto;
          background: #f4f4f4 !important;
          color: #AAA;
          text-align: left;
          padding: 4px 15px;
          transition: .2s color;
          -webkit-transition: .2s color; }
          .page-nav ul li ul li a:hover {
            color: #000 !important; }
          .page-nav ul li ul li a.is-current {
            background: #000 !important; }
            .page-nav ul li ul li a.is-current .icn {
              display: block; }
            .page-nav ul li ul li a.is-current:hover {
              color: #fff !important; }
          .page-nav ul li ul li a .icn {
            font-size: 80%;
            right: 13px; }
    .page-nav ul li em,
    .page-nav ul li a {
      display: block;
      text-align: center;
      height: 60px;
      font-size: 120%;
      font-weight: 600;
      transition: .2s background;
      -webkit-transition: .2s background;
      text-decoration: none;
      position: relative; }
      .page-nav ul li em .icn,
      .page-nav ul li a .icn {
        position: absolute;
        top: 50%;
        margin: -0.48em 0 0 0; }
      .page-nav ul li em .icn-arrow-bottom01,
      .page-nav ul li a .icn-arrow-bottom01 {
        font-size: 60%;
        right: 10px; }
      .page-nav ul li em .icn-arrow-right01,
      .page-nav ul li a .icn-arrow-right01 {
        font-size: 100%;
        right: 20px; }
      .page-nav ul li em span,
      .page-nav ul li a span {
        display: table-cell;
        vertical-align: middle;
        height: 60px;
        line-height: 1.3; }
      .page-nav ul li em.is-current .icn,
      .page-nav ul li a.is-current .icn {
        display: none; }
    .page-nav ul li:nth-of-type(odd) em,
    .page-nav ul li:nth-of-type(odd) a {
      background: #f2f2f2; }
      .page-nav ul li:nth-of-type(odd) em.is-current,
      .page-nav ul li:nth-of-type(odd) a.is-current {
        background: #000;
        color: #fff; }
    .page-nav ul li:nth-of-type(odd) a:hover {
      background: #000;
      color: #fff; }
    .page-nav ul li:nth-of-type(even) em,
    .page-nav ul li:nth-of-type(even) a {
      background: #eaeaea; }
      .page-nav ul li:nth-of-type(even) em.is-current,
      .page-nav ul li:nth-of-type(even) a.is-current {
        background: #000;
        color: #fff; }
    .page-nav ul li:nth-of-type(even) a:hover {
      background: #000;
      color: #fff; }

@media screen and (max-width: 767px) {
  .page-nav {
    margin: 20px auto 20px auto;
    width: 100%; }
    .page-nav.page-nav-2 {
      width: 90%;
      margin: 20px auto; }
      .page-nav.page-nav-2 li {
        width: 48%; }
        .page-nav.page-nav-2 li span {
          width: 90%;
          display: block; }
        .page-nav.page-nav-2 li em.is-current span {
          width: 100%; }
    .page-nav.page-nav-4 li {
      width: 25%; }
      .page-nav.page-nav-4 li span {
        width: 90%;
        display: block; }
      .page-nav.page-nav-4 li em.is-current span {
        width: 100%; }
    .page-nav.page-nav-5 li {
      width: 20%; }
      .page-nav.page-nav-5 li span {
        width: 90%;
        display: block; }
      .page-nav.page-nav-5 li em.is-current span {
        width: 100%; }
    .page-nav ul li.is-down {
      color: #000; }
      .page-nav ul li.is-down span {
        width: 100%; }
    .page-nav ul li.is-down:hover {
      color: #000; }
    .page-nav ul li ul {
      display: none; }
    .page-nav ul li select {
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 50px;
      opacity: 0; }
    .page-nav ul li em,
    .page-nav ul li a {
      height: 50px;
      font-size: 11px;
      text-decoration: none;
      position: relative; }
      .page-nav ul li em .icn,
      .page-nav ul li a .icn {
        position: absolute;
        top: 50%;
        margin: -0.48em 0 0 0; }
      .page-nav ul li em .icn-arrow-bottom01,
      .page-nav ul li a .icn-arrow-bottom01 {
        font-size: 6px;
        right: inherit;
        top: -10px;
        display: block;
        position: relative;
        margin: 0; }
      .page-nav ul li em .icn-arrow-right01,
      .page-nav ul li a .icn-arrow-right01 {
        font-size: 10px;
        right: 5px;
        margin: -0.55em 0 0 0 !important; }
      .page-nav ul li em span,
      .page-nav ul li a span {
        height: 41px;
        padding: 9px 0 0 0; }
        .page-nav ul li em span.is-1l,
        .page-nav ul li a span.is-1l {
          height: 33px;
          padding: 17px 0 0 0; }
    .page-nav ul li:nth-of-type(odd) em:hover,
    .page-nav ul li:nth-of-type(odd) a:hover {
      background: #f2f2f2;
      color: #000; }
    .page-nav ul li:nth-of-type(odd) em.is-current:hover,
    .page-nav ul li:nth-of-type(odd) a.is-current:hover {
      background: #000;
      color: #fff; }
    .page-nav ul li:nth-of-type(even) em:hover,
    .page-nav ul li:nth-of-type(even) a:hover {
      background: #eaeaea;
      color: #000; }
    .page-nav ul li:nth-of-type(even) em.is-current:hover,
    .page-nav ul li:nth-of-type(even) a.is-current:hover {
      background: #000;
      color: #fff; } }
/* ----------------------------------------------------
  headings
---------------------------------------------------- */
.h-style01 {
  font-family: 'Montserrat', sans-serif;
  text-align: center;
  font-size: 320%;
  letter-spacing: .15em;
  background: url("../img/icn_bar01.png")/*tpa=http://www.sankeibt.com/img/icn_bar01.png*/ no-repeat center bottom;
  background-size: 20px auto;
  padding: 0 0 30px 0;
  margin: 0 0 50px 0; }
  .h-style01 small {
    display: block;
    font-size: 40%;
    font-weight: 600;
    letter-spacing: .1em; }

.h-style02 {
  text-align: center;
  font-size: 180%;
  background: url("../img/icn_bar01.png")/*tpa=http://www.sankeibt.com/img/icn_bar01.png*/ no-repeat center bottom;
  background-size: 20px auto;
  padding: 0 0 30px 0;
  margin: 0 0 30px 0;
  letter-spacing: .1em; }
  .h-style02 strong {
    font-size: 140%;
    font-weight: 600; }

.h-style03 {
  font-size: 180%;
  font-weight: 600;
  margin: 0 0 20px 0;
  line-height: 1.2; }
  .h-style03 span {
    width: 16px;
    height: 16px;
    background: #6eb928;
    margin: 0 20px 0 0;
    top: 6px;
    float: left;
    position: relative; }
  .h-style03 strong {
    font-size: 120%;
    font-weight: 600;
    display: block;
    line-height: 1.2;
    overflow: hidden;
    zoom: 1; }

.h-style04 {
  font-size: 210%;
  font-weight: 600;
  margin: 0 0 30px 0;
  padding: 0 0 25px 0;
  border-bottom: 2px solid #e4e4e4; }
  .h-style04 span {
    width: 16px;
    height: 16px;
    background: #6eb928;
    margin: 20px 20px 0 0;
    top: 2px;
    display: block;
    float: left; }
  .h-style04 em {
    display: block;
    float: left;
    font-weight: 600;
    line-height: 1.3;
    margin: 10px 0 0 0; }
  .h-style04 small {
    display: inline-block;
    font-size: 50%;
    margin: 0 0 0 60px;
    top: 5px;
    position: relative; }
    .h-style04 small.h-style04-desc {
      top: 10px; }
    .h-style04 small.h-style04-desc2 {
      top: 2px; }

.h-style05 {
  font-size: 180%;
  font-weight: 600;
  margin: 0 0 20px 0;
  padding: 0 0 0 40px;
  background: url("../img/icn_bar01.png")/*tpa=http://www.sankeibt.com/img/icn_bar01.png*/ no-repeat left 12px;
  background-size: 20px auto; }

.h-style05-plan {
  font-size: 180%;
  font-weight: 600;
  margin: 0;
  padding: 0 0 0 40px;
  background: url("../img/icn_bar01.png")/*tpa=http://www.sankeibt.com/img/icn_bar01.png*/ no-repeat left 12px;
  background-size: 20px auto; }

.h-style06 {
  font-size: 150%;
  font-weight: 600;
  margin: 0 0 20px 0;
  padding: 0; }

@media screen and (max-width: 767px) {
  .h-style01 {
    font-size: 32px;
    background-size: 16px auto;
    padding: 0 0 25px 0;
    margin: 0 0 30px 0;
    line-height: 1.3; }
    .h-style01 small {
      font-size: 14px;
      padding: 5px 0 0 0; }

  .h-style02 {
    font-size: 18px;
    background-size: 16px auto;
    padding: 0 0 25px 0;
    margin: 0 0 30px 0;
    letter-spacing: .1em; }
    .h-style02 strong {
      font-size: 15px; }

  .h-style03 {
    font-size: 20px;
    margin: 0 0 20px 0; }
    .h-style03 span {
      width: 12px;
      height: 12px;
      margin: 0 15px 0 0;
      top: 7px;
      position: relative; }
    .h-style03 strong {
      font-size: 22px; }

  .h-style04 {
    font-size: 20px;
    margin: 0 0 20px 0;
    padding: 0 0 15px 0; }
    .h-style04 span {
      width: 12px;
      height: 12px;
      margin: 10px 15px 0 0;
      top: -2px;
      display: block;
      float: left;
      position: relative; }
    .h-style04 em {
      float: none;
      margin: 0;
      overflow: hidden;
      display: block; }
    .h-style04 small {
      display: block;
      font-size: 12px;
      margin: 0;
      top: inherit;
      padding: 5px 0 0 0; }
      .h-style04 small.h-style04-desc {
        top: inherit; }
      .h-style04 small.h-style04-desc2 {
        top: inherit; }
      .h-style04 small br {
        display: none; }

  .h-style05 {
    font-size: 15px;
    margin: 0 0 20px 0;
    padding: 0 0 0 30px;
    background-position: left 7px;
    background-size: 16px auto; } }


/* ----------------------------------------------------
  btns
---------------------------------------------------- */
.btn button,
.btn a {
  color: #fff;
  display: block;
  margin: 0 auto;
  text-align: center;
  text-decoration: none;
  position: relative;
  transition: .2s background;
  -webkit-transition: .2s background;
  border: none;
  cursor: pointer;
  width: 100%; }
  .btn button:hover,
  .btn a:hover {
    color: #fff; }
  .btn button .icn-arrow-right01,
  .btn a .icn-arrow-right01 {
    position: absolute;
    right: 20px;
    top: 50%;
    font-size: 110%;
    margin: -0.48em 0 0 0;
    line-height: 1; }
  .btn button .icn-arrow-left01,
  .btn a .icn-arrow-left01 {
    position: absolute;
    left: 15px;
    top: 50%;
    font-size: 110%;
    margin: -0.48em 0 0 0;
    line-height: 1; }

/* color */
.btn-red button,
.btn-red a {
  background: #69b82d; }
  .btn-red button:hover,
  .btn-red a:hover {
    background: #69b82d; }

.btn-black button,
.btn-black a {
  background: #000; }
  .btn-black button:hover,
  .btn-black a:hover {
    background: #393939; }

.btn-gray button,
.btn-gray a {
  background: #eaeaea;
  color: #000;
  transition: .2s color;
  -webkit-transition: .2s color; }
  .btn-gray button:hover,
  .btn-gray a:hover {
    background: #eaeaea;
    color: #999; }

@media screen and (max-width: 767px) {
  .btn-red button:hover,
  .btn-red a:hover {
    background: #d31a24; }

  .btn-black button:hover,
  .btn-black a:hover {
    background: #000; }

  .btn-gray button:hover,
  .btn-gray a:hover {
    color: #000; } }
/* size */
.btn-ss button,
.btn-ss a {
  height: 30px;
  line-height: 30px;
  font-size: 105%;
  -webkit-border-radius: 15px;
  border-radius: 15px; }

.btn-s button,
.btn-s a {
  height: 40px;
  line-height: 40px; }
  .btn-s button .icn-arrow-right01,
  .btn-s a .icn-arrow-right01 {
    font-size: 85%; }
  .btn-s button .icn-arrow-left01,
  .btn-s a .icn-arrow-left01 {
    font-size: 85%; }

.btn-m button,
.btn-m a {
  height: 50px;
  line-height: 50px;
  font-size: 115%; }

.btn-l button,
.btn-l a {
  height: 60px;
  line-height: 60px;
  font-size: 115%; }

.btn-ll button,
.btn-ll a {
  height: 70px;
  line-height: 70px;
  font-size: 125%; }

@media screen and (max-width: 767px) {
  .btn-s button,
  .btn-s a {
    font-size: 12px; }

  .btn-m button,
  .btn-m a {
    height: 40px;
    line-height: 40px;
    font-size: 12px; }

  .btn-l button,
  .btn-l a {
    height: 40px;
    line-height: 40px;
    font-size: 12px; }

  .btn-ll button,
  .btn-ll a {
    height: 60px;
    line-height: 60px;
    font-size: 14px; }

  .faq-col-arrow {
    display: block;
    font-size: 12px; }
    .faq-col-arrow .icn-arrow-bottom01 {
      display: none; }
    .faq-col-arrow .icn-arrow-top01 {
      display: inline-block; }
    .faq-col-arrow a {
      text-decoration: none;
      color: #aeaeae;
      display: block;
      text-align: center;
      padding: 10px 0 20px 0; }
      .faq-col-arrow a.is-open .icn-arrow-bottom01 {
        display: inline-block; }
      .faq-col-arrow a.is-open .icn-arrow-top01 {
        display: none; } }
/* ----------------------------------------------------
  form
---------------------------------------------------- */
input[type=text] {
 }

textarea {
 }

input:focus,
textarea:focus {
  outline: none; }

@media screen and (max-width: 767px) {
  input[type=text] {
    padding: 8px 13px; }

  textarea {
    padding: 8px 13px;
    height: 120px; } }
/* select */
.easy-select-box:focus {
  outline: none; }

.easy-select-box {
  display: inline-block;
  position: relative;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.easy-select-box .esb-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 99;
  display: none; }

.easy-select-box {
  width: 220px;
  text-align: left; }

.easy-select-box .esb-displayer {
  background: url("../img/icn_select.png")/*tpa=http://www.sankeibt.com/img/icn_select.png*/ no-repeat 95% 13px white;
  background-size: 12px auto;
  padding: 7px 15px;
  cursor: default; }

.esb-displayer.is-show {
  background: url("../img/icn_select.png")/*tpa=http://www.sankeibt.com/img/icn_select.png*/ no-repeat 95% -11px white;
  background-size: 12px auto; }

.easy-select-box .esb-dropdown {
  width: 100%;
  max-height: 200px;
  overflow: auto;
  background: #fff;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2); }

.easy-select-box .esb-dropdown .esb-item {
  padding: 5px 15px;
  cursor: default; }

.easy-select-box .esb-dropdown .esb-item:hover {
  background: #eaeaea;
  text-decoration: none; }

@media screen and (max-width: 767px) {
  .easy-select-box {
    width: 200px !important; }

  .easy-select-box .esb-displayer {
    background: url("../img/icn_select.png")/*tpa=http://www.sankeibt.com/img/icn_select.png*/ no-repeat 95% 14px white;
    background-size: 11px auto;
    padding: 8px 13px; }

  .esb-displayer.is-show {
    background: url("../img/icn_select.png")/*tpa=http://www.sankeibt.com/img/icn_select.png*/ no-repeat 95% -9px white;
    background-size: 11px auto; } }
/* ----------------------------------------------------
  slider
---------------------------------------------------- */
.bx-pager {
  text-align: center;
  padding: 25px 0; }

.bx-pager-item {
  display: inline-block;
  margin: 0 10px; }

.bx-pager-link {
  width: 10px;
  height: 0;
  padding: 10px 0 0 0;
  overflow: hidden;
  background: #dfdfdf;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  display: inline-block; }
  .bx-pager-link.active {
    background: #d31a24; }

/* works-detail */
.works-detail .bx-wrapper {
  position: relative; }

.works-detail .bx-pager {
  text-align: center;
  padding: 10px 0 30px 0; }

.works-detail .bx-pager-item {
  display: inline-block;
  margin: 0 3px; }

.works-detail .bx-pager-link {
  width: 49px;
  height: 0;
  padding: 4px 0 0 0;
  overflow: hidden;
  background: #c6c6c6;
  -webkit-border-radius: 0;
  border-radius: 0; }
  .works-detail .bx-pager-link.active {
    background: #000; }

.works-detail .bx-prev {
  background: url("../img/btn_prev.png")/*tpa=http://www.sankeibt.com/img/btn_prev.png*/ no-repeat 0 0;
  width: 60px;
  height: 0;
  padding: 60px 0 0 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  margin: -60px 0 0 0;
  transition: .2s opacity;
  -webkit-transition: .2s opacity; }

.works-detail .bx-next {
  background: url("../img/btn_next.png")/*tpa=http://www.sankeibt.com/img/btn_next.png*/ no-repeat 0 0;
  width: 60px;
  height: 0;
  padding: 60px 0 0 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  margin: -60px 0 0 0;
  transition: .2s opacity;
  -webkit-transition: .2s opacity; }

.works-detail .bx-prev:hover,
.works-detail .bx-next:hover {
  opacity: .7; }

@media screen and (max-width: 767px) {
  .works-detail .bx-pager-link {
    width: 29px; }

  .works-detail .bx-prev {
    background-size: 30px auto;
    width: 30px;
    padding: 30px 0 0 0;
    margin: -40px 0 0 0; }

  .works-detail .bx-next {
    background-size: 30px auto;
    width: 30px;
    padding: 30px 0 0 0;
    margin: -40px 0 0 0; }

  .works-detail .bx-prev:hover,
  .works-detail .bx-next:hover {
    opacity: 1; } }
@font-face {
  font-family: 'sankeibt';
  src: url("../font/sankeibt.eot-kot0tp")/*tpa=http://www.sankeibt.com/font/sankeibt.eot?kot0tp*/;
  src: url("../font/sankeibt.eot-kot0tp#iefix")/*tpa=http://www.sankeibt.com/font/sankeibt.eot?kot0tp#iefix*/ format("embedded-opentype"), url("../font/sankeibt.ttf-kot0tp")/*tpa=http://www.sankeibt.com/font/sankeibt.ttf?kot0tp*/ format("truetype"), url("../font/sankeibt.woff-kot0tp")/*tpa=http://www.sankeibt.com/font/sankeibt.woff?kot0tp*/ format("woff"), url("../font/sankeibt.svg-kot0tp#ico")/*tpa=http://www.sankeibt.com/font/sankeibt.svg?kot0tp#ico*/ format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="icn-"], [class*=" icn-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'sankeibt' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icn {
  position: relative; }

.icn-event:before {
  content: "\e906"; }

.icn-house:before {
  content: "\e907"; }

.icn-office:before {
  content: "\e908"; }

.icn-produce:before {
  content: "\e909"; }

.icn-shop:before {
  content: "\e90a"; }

.icn-stage:before {
  content: "\e90b"; }

.icn-arrow-bottom01:before {
  content: "\e905"; }

.icn-arrow-left01:before {
  content: "\e904"; }

.icn-arrow-right01:before {
  content: "\e900"; }

.icn-arrow-top01:before {
  content: "\e901"; }

.icn-facebook:before {
  content: "\e902"; }

.icn-mail:before {
  content: "\e903"; }

/* Noto Sans */
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 300;
  src: url("../font/NotoSansCJKjp-Regular.eot")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Regular.eot*/;
  src: url("../font/NotoSansCJKjp-Regular.eot-#iefix")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Regular.eot?#iefix*/ format("embedded-opentype"), url("../font/NotoSansCJKjp-Regular.woff")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Regular.woff*/ format("woff"), url("../font/NotoSansCJKjp-Regular.ttf")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Regular.ttf*/ format("truetype"); }

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 600;
  src: url("../font/NotoSansCJKjp-Medium.eot")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Medium.eot*/;
  src: url("../font/NotoSansCJKjp-Medium.eot-#iefix")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Medium.eot?#iefix*/ format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium.woff")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Medium.woff*/ format("woff"), url("../font/NotoSansCJKjp-Medium.ttf")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Medium.ttf*/ format("truetype"); }

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 800;
  src: url("../font/NotoSansCJKjp-Bold.eot")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Bold.eot*/;
  src: url("../font/NotoSansCJKjp-Bold.eot-#iefix")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Bold.eot?#iefix*/ format("embedded-opentype"), url("../font/NotoSansCJKjp-Bold.woff")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Bold.woff*/ format("woff"), url("../font/NotoSansCJKjp-Bold.ttf")/*tpa=http://www.sankeibt.com/font/NotoSansCJKjp-Bold.ttf*/ format("truetype"); }
