
/*

Outside
- pushy

Layout
#page
.header
  .header-in
    .logo
    .header-util
    .header-util01
    .header-util02
.nav-global
  .nav-global-in
.breadcrumb
  .breadcrumb-in
.main-visual
  .main-visual-in
    .main-title-text
    .screen-frame
.contents
  .contents-in
.footer
  .footer-in

Column Type
.column-one
.column-medium
.column-left-navi
.column-right-navi

Navi
.nav-local

Mobile
.header-mobile
.footer-mobile
.btn-mobile-menu

- 768px以下
- 568px以下
- 568px 以上 768px 以下 for Tablet only
- 769px 以上 1239px 以下 for PC
- 1240px 以上 for ワイドPC

*/

/* pushy
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
html, body {
  -webkit-tap-highlight-color: transparent;
  /* disable webkit tap highlight */
  overflow-x: hidden;
}
#container {
  position: relative;
}
.pushy {
  width: 300px;
}
.pushy-left{
  transform: translate3d(-300px,0,0);
}
.pushy-open-left #container,
.pushy-open-left .push {
  transform: translate3d(300px, 0, 0);
}
.pushy a{font-size: 1.5rem;}

.pushy a:link,
.pushy a:visited,
.pushy a:hover,
.pushy a:active {
  color: #fff;
  text-decoration: none;
}


/* Layout
= = = = = = = = = = = = = = = = = = = = = = = = = = = */

/* #page
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
#page {
/*  font-size: 116%;*/
}

a:link {
  color: #0068b7;
  text-decoration: none;
}
a:visited {
  color: #0068b7;
  text-decoration: none;
}
a:hover {
  color: #0068b7;
  text-decoration: underline;
}
a:active {
  color: #0068b7;
  text-decoration: underline;
}










/* .main-visual
- - - - - - - - - - - - - - - - - - - - - - - - - - - */



/* height */
/*
.home .main-visual {
  height: 880px;
}
*/

/*
.company.message .main-visual {
  height: 550px;
  background: #fff;
}
*/
/*
.group .main-visual {
  height: 480px;
}
*/

/* .main-title-text */
.main-title-text {
  position: absolute;
  left: 156px;
  top: 35px;
  padding-left: 20px;
  padding-bottom: 10px;
  border-bottom: solid 1px #0068b7;
  background: transparent url(/common2/img/base/ico_main_title_01.png) no-repeat scroll left top; /* Background */
  background-size: 16px auto;
  /* font-family: "Shin Go Light"; */
  font-size: 150%; /* done */
/*  letter-spacing: -0.04em;*/
  color: #fff;
  z-index: 30;
}
.main-title-text.theme-black {
  color: #000;
}
.main-title-text.ruled-line {
  border-bottom: none;
}
.main-title-text.ruled-line .line-a1 {
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 250px;
  height: 1px;
  background: #0068b7;
}
.main-title-text.ruled-line .line-a2 {
  position: absolute;
  left: 490px;
  bottom: 0px;
  width: 490px;
  height: 1px;
  background: #0068b7;
}
.main-title-text.ruled-line .line-b {
  position: absolute;
  left: 0;
  top: 35px;
  width: 980px;
  height: 1px;
  background: #0068b7;
}

.main-title-text .title-large {
  font-size: 180%;
  margin-top: 40px;
  margin-left: -20px;
}


/* .screen-frame */
.screen-frame {
  position: absolute;
  left: 50%;
  top: 0px;
  margin-left: -650px;
  width: 1300px;
  z-index: 20;
}
.screen-frame .main-title {
  position: absolute;
  left: 136px;
  top: 0px;
  width: 400px;
  z-index: 20;
}
.company.message .screen-frame {
  width: 980px;
  margin-left: -490px;
  top: 90px;
  text-align: center;
}
.company.message .screen-frame .main-title-text {
  left: 0px;
  top: -60px;
  text-align: left;
}
.group .screen-frame {
  height: 480px;
}

@media only screen and (max-width: 768px) {
/*
  #page .main-visual {
    height: auto;
  }
  */
  #page .main-visual .main-visual-in {
    height: auto;
  }
  .company.message #page .main-visual .screen-frame {
    position: relative;
    left:  auto;
    top: auto;
    width: 100%;
    height: auto;
    margin: 0px;
  }
  /*
  .group #page .main-visual {
    background: #97C2EE;
  }
  .group #page .main-visual .screen-frame {
    width: 980px;
    height: auto;
    margin-left: -490px;
  }
  */
  .safety #page .main-visual .screen-frame {
    width: 980px;
    height: auto;
    margin-left: -490px;
  }
  .safety #page .main-visual .screen-frame img {
  }
  .main-title-text {
    left: 22%;
    margin-left: 0;
    text-shadow: 0 0 20px #000, 0 0 15px #000,0 0 10px #000;
  }
  .main-title-text.ruled-line .line-a1,
  .main-title-text.ruled-line .line-a2,
  .main-title-text.ruled-line .line-b {
    display: none;
  }
  #page .main-visual .screen-frame img {
    width: 100%;
  }
  .company.message #page .main-title-text {
    position: relative;
    top: 0;
    left: 0;
    margin-top: 20px;
    margin-left: 10px;
  }
  .main-title-text.theme-black {
    text-shadow: 0 0 30px #fff, 0 0 25px #fff,0 0 20px #fff;
  }
  .main-title-text .title-large {
    font-size: 120%;
    margin-top: 10px;
    margin-left: -20px;
  }
} /* 0 - 768 */

@media only screen and (max-width: 667px) {
  .main-title-text {
    left: 26.5%;
  }
} /* 0 - 768 */

@media only screen and (max-width: 568px) {
  #page .main-visual .screen-frame {
    margin-left: -360px;
    width: 720px;
  }
  .main-title-text {
    left: 31.5%;
    top: 54px;
    text-shadow: 0 0 20px #000, 0 0 15px #000,0 0 10px #000;
  }
  .safety .main-title-text {
    left: 32.5%;
  }
} /* 0 - 568 */
@media only screen and (max-width: 320px) {
  .main-title-text {
    left: 30%;
    top: 54px;
  }
} /* 0 - 320 */








/* Column Type
= = = = = = = = = = = = = = = = = = = = = = = = = = = */

body.column-one .contents-main {
  width: 100%;
}

body.column-medium .contents-main {
  width: 700px;
  margin: 0 auto;
}

body.column-left-navi .contents-main {
  float: right;
  width: 720px;
  min-height: 500px;
}
body.column-left-navi .contents-sub {
  float: left;
  width: 210px;
}

body.column-right-navi .contents-main {
  float: left;
  width: 720px;
  min-height: 500px;
  margin-right: 30px;
  background: transparent url(../img/base/transparent_black06.png) repeat scroll left top; /* Background */
}
body.column-right-navi .contents-sub {
  float: left;
  width: 230px;
}

/*  */
.news .contents-sub li a {
  display: block;
  padding: 5px 10px;
}
.news .contents-sub li a:hover {
  background: transparent url(../img/base/transparent_black06.png) repeat scroll left top; /* Background */
}


/* Navi
= = = = = = = = = = = = = = = = = = = = = = = = = = = */

/* .nav-local
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
.nav-local {
  font-size: 85%;
}
.nav-local a:link    { color: #00569A; text-decoration: none; }
.nav-local a:visited  { color: #002A4D; text-decoration: none; }
.nav-local a:hover,
.nav-local a:active {
  color: #bf0c0c;
  text-decoration: none;
  background: transparent url(../img/base/transparent_black06.png) repeat scroll left top; /* Background */
}
.nav-local ul > li {
  display: block;
}
.nav-local ul > li > a {
  display: block;
  padding: 10px;
}
.nav-local ul > li > ul {
}
.nav-local ul > li > ul > li > a {
  padding-left: 20px;
  text-align: left;
  background: #e7e7e7;
  border-bottom: solid 1px #ccc;
}
.nav-local ul > li > ul > li > a:hover {
  background: #ddd;
}

.nav-local .level-1.is-active > a {
  background: transparent url(../img/base/transparent_black06.png) repeat scroll left top; /* Background */
}
.nav-local .level-1.is-active > a > .a_inner {
  background: transparent url(icon_arrow03.png) no-repeat scroll 5px 18px; /* Background */
}
.nav-local .level-2.is-active > a {
  background: transparent url(../img/base/transparent_black06.png) repeat scroll left top; /* Background */
}


/* Mobile
= = = = = = = = = = = = = = = = = = = = = = = = = = = */

/* .header-mobile */
.header-mobile {
  position:  relative;
  width: 100%;
  padding: 20px 0;
  text-align: center;
  z-index: 9998;
}
.header-mobile .logo {
  width: 200px;
  margin: 0 auto;
}
.header-mobile .logo img {
  width: 100%;
}

/* .footer-mobile */
.footer-mobile {
  position: relative;
  border-top: 1px solid #eee;
  color: #999;
  padding: 10px 50px;
  font-size: 62%;
  line-height: 1.5;
  text-align: center;
}
.footer-mobile .logo {
  width: 200px;
  margin: 15px auto 20px;
}
.footer-mobile .logo img {
  width: 100%;
}
.footer-mobile .footer-util {
  width: 120px;
  margin: 0 auto 20px;
}
.footer-mobile .footer-util img {
  width: 100%;
}
.footer-mobile .footer-util01 {
  margin-bottom: 20px;
}

/* .btn-mobile-menu */
.btn-mobile-menu {
    position:  absolute;
    top: 0;
    right: 0;
    width: 50px;
    padding: 15px 5px;
    margin-left: auto;
    background: #000;
    color: #FFF;
    text-align: center;
    cursor: pointer;
}
.btn-mobile-menu:hover {
  opacity: 0.6;
}
.btn-mobile-menu img {
  display: block;
  width: 15px;
  height: auto;
  margin: 0 auto 3px;
}

/* 768px以下
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
@media only screen and (max-width: 768px) {
  .header-mobile,
  .footer-mobile {
    display: block;
    border-bottom:#ccc 1px solid;
  }
  header.header,
  .nav-global,
  .footer {
    display: none;
  }
  #page {
    padding: 0;
  }
  .breadcrumb .breadcrumb-in {
    width: auto;
    margin: 10px;
  }
  .contents {
    width: 100%;
  }
  #page .contents-main {
    float: none;
    width: 100%;
  }
} /* 0 - 768 */


/* 568px以下
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
@media only screen and (max-width: 568px) {
  .btn-mobile-menu {
    padding: 10px 0;
    font-size: 1.1rem;
  }
  .debug {
    background: #0094b1;
  }
} /* 0 - 568 */


/* 568px 以上 768px 以下 for Tablet only
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 569px) and (max-width: 768px) {
  .debug {
    background: #692b1f;
  }
} /* 361 - 768 */


/* 769px 以上 1239px 以下 for PC
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 769px) and (max-width: 1239px) {
  .debug {
    background: #5b52a8;
  }
  .header-mobile,
  .footer-mobile {
      display: none;
  }
} /* 769 - 1239 */


/* 1240px 以上 for ワイドPC
- - - - - - - - - - - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 1240px) {
  .debug {
    background: #00795c;
  }
  .header-mobile,
  .footer-mobile {
      display: none;
  }
} /* 1240 - */




































