@charset "UTF-8";
/** Skeleton V2.0.4* Copyright 2014, Dave Gamache* www.getskeleton.com* Free to use under the MIT license.* http://www.opensource.org/licenses/mit-license.php* 12/29/2014*/
/* Table of contents––––––––––––––––––––––––––––––––––––––––––––––––––- Grid- Base Styles- Typography- Links- Buttons- Forms- Lists- Code- Tables- Spacing- Utilities- Clearing- Media Queries*/
@import url(https://fonts.googleapis.com/css?family=Tinos:400,700);
/* Grid–––––––––––––––––––––––––––––––––––––––––––––––––– */
.container {
  position: relative;
  width: 100%;
  /*max-width:1000px;*/
  min-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box; }

.column,
.columns {
  width: 100%;
  float: left;
  box-sizing: border-box; }

@media screen and (max-width: 480px) {
  .container {
    max-width: none;
    min-width: inherit; } }
/* For devices larger than 400px */
@media (min-width: 400px) {
  .container {
    width: 85%;
    padding: 0; } }
/* For devices larger than 550px */
@media (min-width: 550px) {
  .container {
    width: 80%; }

  .column,
  .columns {
    margin-left: 4%; }

  .column:first-child,
  .columns:first-child,
  .column.first-child,
  .columns.first-child {
    margin-left: 0; }

  .one.column, .one.columns {
    width: 4.66666666667%; }

  .two.columns {
    width: 13.3333333333%; }

  .three.columns {
    width: 22%; }

  .four.columns {
    width: 30.6666666667%; }

  .five.columns {
    width: 39.3333333333%; }

  .six.columns {
    width: 48%; }

  .seven.columns {
    width: 56.6666666667%; }

  .eight.columns {
    width: 65.3333333333%; }

  .nine.columns {
    width: 74%; }

  .ten.columns {
    width: 82.6666666667%; }

  .eleven.columns {
    width: 91.3333333333%; }

  .twelve.columns {
    width: 100%;
    margin-left: 0; }

  .one-third.column {
    width: 30.6666666667%; }

  .two-thirds.column {
    width: 65.3333333333%; }

  .one-half.column {
    width: 48%; }

  /* Offsets */
  .offset-by-one.column, .offset-by-one.columns {
    margin-left: 8.66666666667%; }

  .offset-by-two.column, .offset-by-two.columns {
    margin-left: 17.3333333333%; }

  .offset-by-three.column, .offset-by-three.columns {
    margin-left: 26%; }

  .offset-by-four.column, .offset-by-four.columns {
    margin-left: 34.6666666667%; }

  .offset-by-five.column, .offset-by-five.columns {
    margin-left: 43.3333333333%; }

  .offset-by-six.column, .offset-by-six.columns {
    margin-left: 52%; }

  .offset-by-seven.column, .offset-by-seven.columns {
    margin-left: 60.6666666667%; }

  .offset-by-eight.column, .offset-by-eight.columns {
    margin-left: 69.3333333333%; }

  .offset-by-nine.column, .offset-by-nine.columns {
    margin-left: 78%; }

  .offset-by-ten.column, .offset-by-ten.columns {
    margin-left: 86.6666666667%; }

  .offset-by-eleven.column, .offset-by-eleven.columns {
    margin-left: 95.3333333333%; }

  .offset-by-one-third.column, .offset-by-one-third.columns {
    margin-left: 34.6666666667%; }

  .offset-by-two-thirds.column, .offset-by-two-thirds.columns {
    margin-left: 69.3333333333%; }

  .offset-by-one-half.column, .offset-by-one-half.columns {
    margin-left: 52%; } }
/* Base Styles–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* NOTEhtml is set to 62.5% so that all the REM measurements throughout Skeletonare based on 10px sizing. So basically 1.5rem = 15px :) */
html {
  font-size: 62.5%; }

body {
  font-size: 1.5em;
  /* currently ems cause chrome bug misinterpreting rems on body element */
  line-height: 1.6;
  font-weight: 400;
  font-family: "Tinos", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #333;
  background: #f9f9f9; }

/* Typography–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 2rem;
  font-weight: 300; }

h1 {
  font-size: 3rem;
  line-height: 1.2; }

h2 {
  font-size: 2.4rem;
  line-height: 1.25; }

h3 {
  font-size: 2rem;
  line-height: 1.3; }

h4 {
  font-size: 1.8rem;
  line-height: 1.35; }

h5 {
  font-size: 1.6rem;
  line-height: 1.5; }

h6 {
  font-size: 1.3rem;
  line-height: 1.6; }

/* Larger than phablet */
@media (min-width: 550px) {
  h1 {
    font-size: 3rem; }

  h2 {
    font-size: 2.4rem; }

  h3 {
    font-size: 2rem; }

  h4 {
    font-size: 1.8rem; }

  h5 {
    font-size: 1.6rem; }

  h6 {
    font-size: 1.3rem; } }
p {
  margin-top: 0; }

/* Links–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
  color: #1eaedb; }
  a:hover {
    color: #0fa0ce; }

/* Buttons–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button,
button {
  /* display: inline-block; */
  /* height: 38px; */
  padding: 15px 50px;
  color: #fff;
  text-align: center;
  font-size: 1em;
  /* font-weight: 600; */
  /* line-height: 38px; */
  letter-spacing: 0.3em;
  /* text-transform: uppercase; */
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  box-sizing: border-box;
  margin: 1em 10px;
  background: #f44330;
  line-height: 1.2em;
  display: inline; }

input[type="submit"], input[type="reset"], input[type="button"] {
  /* display: inline-block; */
  /* height: 38px; */
  padding: 15px 50px;
  color: #fff;
  text-align: center;
  font-size: 1em;
  /* font-weight: 600; */
  /* line-height: 38px; */
  letter-spacing: 0.3em;
  /* text-transform: uppercase; */
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  box-sizing: border-box;
  margin: 1em 10px;
  background: #f44330;
  line-height: 1.2em;
  display: inline; }
  input[type="submit"]#btn-back, input[type="reset"]#btn-back, input[type="button"]#btn-back {
    background: #fff;
    border: 1px solid #f44330;
    color: #333; }

.button:hover,
button:hover {
  /*color: #333;*/
  /*border-color: #888;*/
  /*outline: 0;*/
  background: #014099; }

input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover {
  /*color: #333;*/
  /*border-color: #888;*/
  /*outline: 0;*/
  background: #014099; }

.button:focus,
button:focus {
  /*color: #333;*/
  /*border-color: #888;*/
  /*outline: 0;*/
  background: #014099; }

input[type="submit"]:focus, input[type="reset"]:focus, input[type="button"]:focus {
  /*color: #333;*/
  /*border-color: #888;*/
  /*outline: 0;*/
  background: #014099; }

.button.button-primary,
button.button-primary {
  color: #fff;
  background-color: #33c3f0;
  border-color: #33c3f0; }

input[type="submit"].button-primary, input[type="reset"].button-primary, input[type="button"].button-primary {
  color: #fff;
  background-color: #33c3f0;
  border-color: #33c3f0; }

.button.button-primary:hover,
button.button-primary:hover {
  color: #fff;
  background-color: #1eaedb;
  border-color: #1eaedb; }

input[type="submit"].button-primary:hover, input[type="reset"].button-primary:hover, input[type="button"].button-primary:hover {
  color: #fff;
  background-color: #1eaedb;
  border-color: #1eaedb; }

.button.button-primary:focus,
button.button-primary:focus {
  color: #fff;
  background-color: #1eaedb;
  border-color: #1eaedb; }

input[type="submit"].button-primary:focus, input[type="reset"].button-primary:focus, input[type="button"].button-primary:focus {
  color: #fff;
  background-color: #1eaedb;
  border-color: #1eaedb; }

.ContactForm .buttom {
  text-align: center; }

/* Forms–––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"] {
  height: 38px;
  padding: 6px 10px;
  /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #d1d1d1;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box; }

textarea,
select {
  height: 38px;
  padding: 6px 10px;
  /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #d1d1d1;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box; }

/* Removes awkward default styles on some inputs for iOS */
input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  min-height: 150px;
  padding-top: 6px;
  padding-bottom: 6px; }

input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus {
  border: 1px solid #33c3f0;
  outline: 0; }

textarea:focus,
select:focus {
  border: 1px solid #33c3f0;
  outline: 0; }

label,
legend {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600; }

fieldset {
  padding: 0;
  border-width: 0; }

input[type="checkbox"], input[type="radio"] {
  display: inline;
  margin: auto 5px auto 10px; }

label > .label-body {
  display: inline-block;
  margin-left: 0.5rem;
  font-weight: normal; }

@media screen and (max-width: 480px) {
  input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"] {
    margin: 0;
    width: 100%; }

  textarea,
  select {
    margin: 0;
    width: 100%; } }
/* Lists–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
  list-style: disc outside; }

ol {
  list-style: decimal outside;
  padding-left: 0;
  margin-top: 0; }

ul {
  padding-left: 0;
  margin-top: 0; }
  ul ul,
  ul ol {
    margin: 0 0 0rem 3rem;
    /* font-size: 90%; */ }

ol ol,
ol ul {
  margin: 0 0 0rem 3rem;
  /* font-size: 90%; */ }

li {
  margin-bottom: 1rem; }

/* Code–––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
  padding: 0.2rem 0.5rem;
  margin: 0 0.2rem;
  font-size: 90%;
  white-space: nowrap;
  background: #f1f1f1;
  border: 1px solid #e1e1e1;
  border-radius: 4px; }

pre > code {
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre; }

/* Tables–––––––––––––––––––––––––––––––––––––––––––––––––– */
th,
td {
  padding: 12px 15px;
  text-align: left;
  /* border-bottom: 1px solid #E1E1E1; */ }

th:first-child,
td:first-child {
  padding-left: 0; }

th:last-child,
td:last-child {
  padding-right: 0; }

form table {
  width: 100%; }
form th,
form td {
  padding: 5px 15px;
  border-bottom: 1px solid #e1e1e1; }

@media screen and (max-width: 480px) {
  form tr,
  form th,
  form td {
    display: block;
    width: 100%;
    padding: 5px 0; } }
/* Spacing–––––––––––––––––––––––––––––––––––––––––––––––––– */
button,
.button {
  margin-bottom: 1rem; }

input,
textarea,
select,
fieldset {
  /* margin-bottom: 1.5rem; */ }

pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
  margin-bottom: 2.5rem; }

/* Utilities–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
  width: 100%;
  box-sizing: border-box; }

.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box; }

.u-pull-right {
  float: right; }

.u-pull-left {
  float: left; }

/* Misc–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #e1e1e1; }

/* Clearing–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Self Clearing Goodness */
.container:after,
.row:after,
.u-cf {
  content: "";
  display: table;
  clear: both; }

/* Media Queries–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*Note: The best way to structure the use of media queries is to create the queriesnear the relevant code. For example, if you wanted to change the styles for buttonson small devices, paste the mobile query code up in the buttons section and style itthere.*/
/* Larger than mobile */
/* Larger than phablet (also point when grid becomes active) */
/* Larger than tablet */
/* Larger than desktop */
/* Larger than Desktop HD */
/* MegaMenu==================================================*/
@media screen and (min-width: 481px) {
  ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1; }
  ul.menu__third-level, ul.menu__fourth-level {
    visibility: hidden;
    opacity: 0; }

  .menu > li:hover {
    background: #deecff;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }

  .menu__second-level li,
  .menu__third-level li {
    border-top: 1px solid #111; }

  .menu__second-level li a:hover {
    background: #111; }

  .menu__third-level li a:hover {
    background: #2a1f1f; }

  .menu__fourth-level li a:hover {
    background: #1d0f0f; }

  /* 下矢印 */
  .init-bottom:after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 0px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }

  /* floatクリア */
  .menu {
    *zoom: 1; }
    .menu:before {
      content: " ";
      display: table; }
    .menu:after {
      content: " ";
      display: table;
      clear: both; }

  li.menu__mega ul.menu__second-level {
    position: absolute;
    top: 112px;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    padding: 20px 2%;
    background: rgba(255, 255, 255, 0.8);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    height: auto !important;
    margin: auto !important;
    box-shadow: 0 4px 3px rgba(51, 51, 51, 0.06); }
  li.menu__mega:hover ul.menu__second-level {
    top: 112px;
    visibility: visible;
    opacity: 1; }
  li.menu__mega ul.menu__second-level li {
    float: left !important;
    width: 31.33333% !important;
    border: 1px solid #ccc;
    background: #fff;
    margin: 0px 1% 1% !important; }
    li.menu__mega ul.menu__second-level li.six.columns {
      width: 48% !important; }
    li.menu__mega ul.menu__second-level li.three.columns, li.menu__mega ul.menu__second-level li.four.columns {
      width: 23% !important; }
    li.menu__mega ul.menu__second-level li.NavFirstLine {
      min-height: 18em; }
    li.menu__mega ul.menu__second-level li.NavSecondLine {
      min-height: 13em; }
    li.menu__mega ul.menu__second-level li.NavSecondLine_Double1 {
      float: none; }
    li.menu__mega ul.menu__second-level li.NavSecondLine_Double2 {
      float: none;
      /* margin-left: -24% !important; */
      /* margin-top: 10em !important; */ }
    li.menu__mega ul.menu__second-level li a {
      padding: 13px 0 11px !important;
      width: 100% !important;
      height: auto !important;
      text-align: left;
      border-bottom: 1px solid #014099;
      color: #014099 !important;
      text-indent: 20px;
      background: url(../images/base/megamenu_arrow.png) center right no-repeat; }
    li.menu__mega ul.menu__second-level li:nth-child(3n + 2) {
      margin: 0 1%; }
    li.menu__mega ul.menu__second-level li ul {
      padding: 10px 20px 25px;
      height: auto !important;
      overflow: hidden; }
      li.menu__mega ul.menu__second-level li ul.six.columns {
        width: 50%; }
      li.menu__mega ul.menu__second-level li ul li {
        width: 100% !important;
        border: none !important;
        margin: 0px !important;
        border-right: none !important; }
        li.menu__mega ul.menu__second-level li ul li a {
          border-bottom: 1px solid #ccc;
          color: #333 !important;
          padding: 5px 0% !important;
          width: 100% !important;
          font-size: 14px;
          text-indent: 0;
          background: none; }
  li.menu__mega ul.menu__second-level > li > a:hover {
    color: #fff !important;
    background: #014099 url(../images/base/megamenu_arrow_w.png) center right no-repeat !important; }
  li.menu__mega ul.menu__second-level > li > ul li a:hover {
    color: #014099 !important;
    background: none !important; } }
@media screen and (min-width: 1000px) {
  li.menu__mega ul.menu__second-level > li a,
  li.menu__mega ul.menu__second-level > li ul li a {
    font-size: 12px; }
  li.menu__mega ul.menu__second-level li.NavFirstLine {
    min-height: 20.5em; }
  li.menu__mega ul.menu__second-level li.NavSecondLine {
    min-height: 14.25em; }
  li.menu__mega ul.menu__second-level li.NavSecondLine_Double1 {
    float: none;
    height: 10em; }
  li.menu__mega ul.menu__second-level li.NavSecondLine_Double2 {
    float: none;
    /* margin-left: -24% !important; */
    /* margin-top: 11em !important; */ } }
@media screen and (min-width: 481px) and (max-width: 1000px) {
  li.menu__mega ul.menu__second-level > li a {
    font-size: 12px;
    line-height: 16px;
    background: none;
    text-indent: 0px;
    letter-spacing: -0.5px;
    padding: 4% !important;
    width: 92% !important; }
    li.menu__mega ul.menu__second-level > li a:hover {
      background: none !important;
      background-color: #014099 !important; }
  li.menu__mega ul.menu__second-level > li.six.columns a {
    padding: 2% !important;
    width: 96% !important; }
  li.menu__mega ul.menu__second-level > li ul {
    padding: 4%; }
  li.menu__mega ul.menu__second-level > li.six.columns ul {
    padding: 2%; }
  li.menu__mega ul.menu__second-level > li ul li a {
    font-size: 10px;
    line-height: 14px; }
  li.menu__mega ul.menu__second-level li.NavFirstLine {
    min-height: 16em; }
  li.menu__mega ul.menu__second-level li.NavSecondLine {
    min-height: 12.75em; }
  li.menu__mega ul.menu__second-level li.NavSecondLine_Double1 {
    float: none;
    height: 9em; }
  li.menu__mega ul.menu__second-level li.NavSecondLine_Double2 {
    float: none;
    margin-left: -24% !important;
    margin-top: 10em !important; } }
/* Gallery==================================================*/
.gallery {
  /* padding: 40px 0 300px; */
  position: relative;
  overflow: visible;
  z-index: 1; }
  .gallery ul {
    /* padding-top: 50px; */
    position: relative;
    /* overflow: hidden; */
    display: block; }
    .gallery ul li {
      /* margin-bottom: 20px; */
      width: 25%;
      position: relative;
      padding: 0;
      margin: 0;
      margin-bottom: 0;
      list-style: none;
      float: left;
      z-index: 10; }
      .gallery ul li a {
        display: block;
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        line-height: 0; }
        .gallery ul li a img {
          width: 100%;
          height: auto;
          font-size: 0;
          display: block;
          line-height: 0; }
        .gallery ul li a:before {
          position: absolute;
          width: 32px;
          height: 32px;
          top: 40%;
          left: 50%;
          margin: -14px 0 0 -16px;
          background: url(../images/top/plus.svg) no-repeat;
          content: "";
          opacity: 0;
          z-index: 1;
          -webkit-transition: all 0.3s linear;
          -moz-transition: all 0.3s linear;
          transition: all 0.3s linear; }
        .gallery ul li a:hover:before {
          top: 50%;
          opacity: 1; }
        .gallery ul li a:after {
          position: absolute;
          width: 100%;
          top: 0;
          bottom: 0;
          background: rgba(0, 0, 0, 0.3);
          content: "";
          opacity: 0;
          -webkit-transition: all 0.3s linear;
          -moz-transition: all 0.3s linear;
          transition: all 0.3s linear; }
        .gallery ul li a:hover:after {
          opacity: 1; }

.port {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding-top: 0;
  background: white;
  /* background-color: #fafafa; */
  z-index: 103;
  visibility: hidden;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  /* border-bottom: 1px solid #d0d0d0; */
  box-shadow: 0 0 10px rgba(17, 17, 17, 0.4); }
  .port img {
    /* width: 50%; */
    max-width: 100%;
    height: auto;
    width: 100%; }
  .port .description {
    float: left;
    width: 90%;
    /* max-height: 100%; */
    padding: 5%;
    /* overflow: auto; */
    overflow: hidden; }
  .port h1 {
    font-size: 1.2em;
    line-height: 1.2em;
    padding: 0;
    margin: 0 0 0.5em; }
  .port p {
    font-size: 0.8em;
    margin-bottom: 1em; }
  .port > * {
    opacity: 0; }
  .port.item_open {
    visibility: visible;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    overflow-y: auto;
    /* margin: -138px 0 0 0; */
    /* min-height: 500px; */
    height: 100%;
    z-index: 10; }
  .port > * {
    opacity: 1; }

#top #Main .port .button {
  margin: 0 auto;
  float: right;
  text-align: center;
  padding: 0;
  height: auto;
  font-size: 11px;
  line-height: 18px;
  border-color: #3162a6; }
  #top #Main .port .button a {
    color: #014099;
    text-decoration: none;
    font-size: 1.2em;
    font-weight: bold;
    text-transform: uppercase;
    display: block;
    padding: 5px 10px;
    background: #fff;
    border: 1px solid;
    border-radius: 4px; }
    #top #Main .port .button a img {
      vertical-align: middle;
      margin-top: -2px;
      padding-left: 10px;
      width: 18px;
      height: 18px; }

.close {
  width: 31px;
  height: 31px;
  background: #fff url(../images/top/batsu.svg) no-repeat;
  position: absolute;
  right: 28px;
  /* top: -121px; */
  opacity: 1;
  /* z-index: 1004; */
  /* top: -120px !Important; */
  /* top: 10px !Important; */
  z-index: 104;
  left: -10000px;
  border: 3px solid;
  border-radius: 9999px;
  background-size: 14px;
  background-position: center center;
  border-color: #d1d1d1; }

.item_open .close {
  opacity: 1;
  top: 20px;
  left: initial;
  left: auto; }

@media (max-width: 1000px) {
  .gallery ul li {
    width: 33.3333%; } }
@media (max-width: 480px) {
  .gallery ul li {
    width: 25%; } }
/* OriginalCSS==================================================*/
@media screen and (max-width: 480px) {
  img {
    max-width: 100%;
    height: auto; } }
/* Top–––––––––––––––––––––––––––––––––––––––––––––––––– */
#top #Main #TopLeft.six.columns {
  width: 49.2%;
  margin: 0; }
#top #Main #TopRight.six.columns {
  width: 50.8%;
  margin: 0;
  padding: 0 2%; }
#top #Main .six.columns #MainVisual {
  background: url(../images/top/main-visual.png) bottom center no-repeat;
  background-size: cover;
  min-height: 500px;
  overflow: hidden;
  position: relative; }
  #top #Main .six.columns #MainVisual h2 {
    margin: auto;
    text-align: center;
    display: block;
    overflow: hidden;
    float: none;
    padding-top: 200px; }
    #top #Main .six.columns #MainVisual h2 img {
      margin: auto;
      font-size: 0;
      line-height: 0;
      max-width: 100%;
      height: auto;
      max-width: 90%; }
  #top #Main .six.columns #MainVisual .top_banner {
    position: absolute;
    right: 10px;
    top: 17px; }
    #top #Main .six.columns #MainVisual .top_banner a {
      display: block;
      overflow: hidden;
      margin: auto;
      z-index: 100; }
    #top #Main .six.columns #MainVisual .top_banner img:hover {
      opacity: 0.9; }
  #top #Main .six.columns #MainVisual .top_banner2 {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 230px; }
    #top #Main .six.columns #MainVisual .top_banner2 a {
      display: block;
      overflow: hidden;
      margin: auto;
      z-index: 100;
      width: 100%; }
      #top #Main .six.columns #MainVisual .top_banner2 a img {
        width: 100%;
        display: block; }
    #top #Main .six.columns #MainVisual .top_banner2 img:hover {
      opacity: 0.9; }
#top #Main .six.columns #MainSlide {
  background: url(../images/top/main-slide_bg.png) left center no-repeat;
  background-size: cover;
  min-height: 500px;
  overflow: hidden; }
  #top #Main .six.columns #MainSlide h2 {
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.1em;
    font-size: 1.2em;
    margin: 1em auto 0.5em;
    text-align: center; }
  #top #Main .six.columns #MainSlide h3 {
    text-align: center;
    margin: 1em auto; }
    #top #Main .six.columns #MainSlide h3 img {
      max-width: 90%;
      height: auto;
      width: initial; }
  #top #Main .six.columns #MainSlide .MainSlideParts01 {
    position: absolute;
    bottom: 0;
    z-index: 2;
    margin-bottom: 0;
    right: 10px; }
#top #Main .six.columns #TopJirei {
  margin-top: 5px;
  margin-bottom: 0.5em;
  overflow: hidden; }
  #top #Main .six.columns #TopJirei h2 {
    text-align: left;
    font-size: 1.2em;
    border-left: none !important;
    padding-left: 50px !important;
    margin-left: 0px !important;
    margin-top: 14px;
    font-weight: bold;
    background: url(../images/top/icon-casestudy.png) left 0px no-repeat;
    border-bottom: 1px dotted #ccc;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em; }
    #top #Main .six.columns #TopJirei h2 span.EngText {
      display: block;
      font-size: 0.8em;
      color: #69c4ed;
      font-weight: bold;
      text-transform: uppercase; }
  #top #Main .six.columns #TopJirei .button {
    margin: -52px 0 0 0;
    float: right;
    padding: 0;
    height: auto;
    font-size: 11px;
    line-height: 18px;
    border-color: #3162a6; }
    #top #Main .six.columns #TopJirei .button a {
      color: #014099;
      text-decoration: none;
      font-size: 1.2em;
      font-weight: bold;
      text-transform: uppercase;
      display: block;
      padding: 5px 10px;
      background: #fff;
      border: 1px solid;
      border-radius: 4px; }
      #top #Main .six.columns #TopJirei .button a img {
        vertical-align: middle;
        margin-top: -2px;
        padding-left: 10px;
        width: 18px;
        height: 18px; }
  #top #Main .six.columns #TopJirei ul {
    margin: 0 auto;
    padding: 0;
    text-align: left;
    display: inline-block;
    overflow: hidden;
    padding-bottom: 0.5em; }
    #top #Main .six.columns #TopJirei ul li {
      margin: 0 3% 0 0;
      width: 31.33%;
      text-align: left;
      float: left;
      display: inline;
      overflow: hidden;
      height: auto;
      padding: 0; }
      #top #Main .six.columns #TopJirei ul li:last-child {
        margin: 0 0% 0 0; }
      #top #Main .six.columns #TopJirei ul li img {
        width: 100%;
        float: left;
        margin-bottom: 1em;
        border-radius: 4px; }
      #top #Main .six.columns #TopJirei ul li h3 {
        font-size: 0.9em;
        border-bottom: none !important;
        margin-bottom: 0.5em;
        font-weight: bold; }
      #top #Main .six.columns #TopJirei ul li p {
        font-size: 0.8em;
        color: #666;
        margin-bottom: 0.5em; }
        #top #Main .six.columns #TopJirei ul li p a {
          font-size: 0.8em;
          color: #666;
          margin-bottom: 0.5em; }
      #top #Main .six.columns #TopJirei ul li a {
        color: #333;
        text-decoration: none; }
        #top #Main .six.columns #TopJirei ul li a .img-box-text {
          font-size: 12px !important;
          line-height: 16px; }
      #top #Main .six.columns #TopJirei ul li:hover {
        background: #f6f6f6;
        box-shadow: 0 1px 6px #e8e8e8; }
    #top #Main .six.columns #TopJirei ul:after {
      content: ".";
      height: 0;
      clear: both;
      display: block;
      visibility: hidden; }
#top #Main .six.columns #TopNews {
  margin-bottom: 0.5em;
  overflow: hidden; }
  #top #Main .six.columns #TopNews h2 {
    text-align: left;
    font-size: 1.2em;
    border-left: none !important;
    padding-left: 50px !important;
    margin-left: 0px !important;
    margin-top: 14px;
    font-weight: bold;
    background: url(../images/top/icon-news.png) left 0px no-repeat;
    border-bottom: 1px dotted #ccc;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em; }
    #top #Main .six.columns #TopNews h2 span.EngText {
      display: block;
      font-size: 0.8em;
      color: #69c4ed;
      font-weight: bold;
      text-transform: uppercase; }
  #top #Main .six.columns #TopNews .button {
    margin: -52px 0 0 0;
    float: right;
    padding: 0;
    height: auto;
    font-size: 11px;
    line-height: 18px;
    border-color: #3162a6; }
    #top #Main .six.columns #TopNews .button a {
      color: #014099;
      text-decoration: none;
      font-size: 1.2em;
      font-weight: bold;
      text-transform: uppercase;
      display: block;
      padding: 5px 10px;
      background: #fff;
      border: 1px solid;
      border-radius: 4px; }
      #top #Main .six.columns #TopNews .button a img {
        vertical-align: middle;
        margin-top: -2px;
        padding-left: 10px;
        width: 18px;
        height: 18px; }
  #top #Main .six.columns #TopNews ul {
    margin: 0 auto;
    padding: 0;
    text-align: left;
    display: inline-block;
    overflow: hidden;
    padding-bottom: 0.5em; }
    #top #Main .six.columns #TopNews ul li {
      margin: 0 3% 0 0;
      width: 31.33%;
      text-align: left;
      float: left;
      display: inline;
      overflow: hidden;
      height: auto;
      padding: 0; }
      #top #Main .six.columns #TopNews ul li:last-child {
        margin: 0 0% 0 0; }
      #top #Main .six.columns #TopNews ul li img {
        width: 100%;
        float: left;
        margin-bottom: 1em;
        border-radius: 4px; }
      #top #Main .six.columns #TopNews ul li dl,
      #top #Main .six.columns #TopNews ul li dt,
      #top #Main .six.columns #TopNews ul li dd {
        color: #666;
        margin-left: 0; }
      #top #Main .six.columns #TopNews ul li dl {
        margin: 0 auto 0.5em; }
      #top #Main .six.columns #TopNews ul li dt {
        font-size: 0.8em; }
      #top #Main .six.columns #TopNews ul li dd {
        font-size: 0.9em;
        color: #333; }
      #top #Main .six.columns #TopNews ul li a {
        color: #333;
        text-decoration: none; }
        #top #Main .six.columns #TopNews ul li a .img-box-text {
          font-size: 12px !important;
          line-height: 16px; }
      #top #Main .six.columns #TopNews ul li:hover {
        background: #f6f6f6;
        box-shadow: 0 1px 6px #e8e8e8; }
    #top #Main .six.columns #TopNews ul:after {
      content: ".";
      height: 0;
      clear: both;
      display: block;
      visibility: hidden; }
#top #Main .six.columns #TopTopics {
  margin-bottom: 0.5em; }
  #top #Main .six.columns #TopTopics h2 {
    text-align: left;
    font-size: 1.2em;
    border-left: none !important;
    padding-left: 50px !important;
    margin-left: 0px !important;
    margin-top: 14px;
    font-weight: bold;
    background: url(../images/top/icon-topics.png) left 0px no-repeat;
    border-bottom: 1px solid #3162a6;
    padding-bottom: 0.5em;
    margin-bottom: 0; }
    #top #Main .six.columns #TopTopics h2 span.EngText {
      display: block;
      font-size: 0.8em;
      color: #69c4ed;
      font-weight: bold;
      text-transform: uppercase; }
  #top #Main .six.columns #TopTopics .button {
    margin: -44px 0 0 0;
    float: right;
    padding: 0;
    height: auto;
    font-size: 11px;
    line-height: 18px;
    border-color: #3162a6; }
    #top #Main .six.columns #TopTopics .button a {
      color: #014099;
      text-decoration: none;
      font-size: 1.2em;
      font-weight: bold;
      text-transform: uppercase;
      display: block;
      padding: 5px 10px;
      background: #fff;
      border: 1px solid;
      border-radius: 4px; }
      #top #Main .six.columns #TopTopics .button a img {
        vertical-align: middle;
        margin-top: -2px;
        padding-left: 10px;
        width: 18px;
        height: 18px; }
  #top #Main .six.columns #TopTopics .tbl-common01 {
    margin: 0;
    border-top: none; }
    #top #Main .six.columns #TopTopics .tbl-common01 dt span img {
      width: 56px;
      border-radius: 3px;
      height: 35px; }
#top #TopBottom {
  border-bottom: 1px solid #ebebeb;
  margin-bottom: 4em; }
  #top #TopBottom #BottomLeft.six.columns {
    width: 49.2%;
    margin: 0;
    border-top: 1px solid #ebebeb; }
  #top #TopBottom #BottomRight.six.columns {
    width: 50.8%;
    margin: 0;
    padding: 0%;
    border-top: 1px solid #ebebeb; }
  #top #TopBottom #BottomLeft.six.columns .four.columns {
    border-right: 1px solid #ebebeb;
    width: 33.3333%;
    margin: 0;
    padding: 20px 0px 0; }
  #top #TopBottom #BottomRight.six.columns .four.columns {
    border-right: 1px solid #ebebeb;
    width: 33.3333%;
    margin: 0;
    padding: 20px 0px 0; }
    #top #TopBottom #BottomRight.six.columns .four.columns:last-child {
      border-right: none; }
  #top #TopBottom #BottomLeft.six.columns .four.columns {
    padding-bottom: 7px; }
    #top #TopBottom #BottomLeft.six.columns .four.columns h2 {
      text-align: center;
      font-weight: bold;
      font-size: 1.2em;
      color: #014099; }
  #top #TopBottom #BottomRight.six.columns .four.columns h2 {
    text-align: center;
    font-weight: bold;
    font-size: 1.2em;
    color: #014099; }
  #top #TopBottom #BottomLeft.six.columns .four.columns h2 {
    font-size: 1.1em; }
  #top #TopBottom #BottomLeft.six.columns .four.columns a {
    text-decoration: none; }
  #top #TopBottom #BottomRight.six.columns .four.columns a {
    text-decoration: none; }
  #top #TopBottom #BottomLeft.six.columns .four.columns:hover {
    background: #f6f6f6;
    box-shadow: 0 1px 6px #e8e8e8; }
  #top #TopBottom #BottomRight.six.columns .four.columns:hover {
    background: #f6f6f6;
    box-shadow: 0 1px 6px #e8e8e8; }
  #top #TopBottom #BottomRight.six.columns .four.columns h2 span.EngText {
    display: block;
    font-size: 12px;
    color: #69c4ed;
    font-weight: bold;
    text-transform: uppercase; }
  #top #TopBottom #BottomLeft.six.columns .four.columns h2 span.EngText {
    display: block;
    font-size: 12px;
    color: #69c4ed;
    font-weight: bold;
    text-transform: uppercase; }
  #top #TopBottom #BottomRight.six.columns .four.columns h2 span.EngText {
    margin: 10px 0 29px; }
  #top #TopBottom #BottomRight.six.columns .four.columns p {
    font-size: 0.8em;
    line-height: 1.4em;
    color: #666;
    text-align: center;
    padding: 0 10px;
    margin: 0 auto 1em;
    height: 60px; }
  #top #TopBottom #BottomLeft.six.columns .four.columns p {
    font-size: 0.8em;
    line-height: 1.4em;
    color: #666;
    text-align: center;
    padding: 0 10px;
    margin: 0 auto 1em;
    height: 60px; }
  #top #TopBottom #BottomRight.six.columns .four.columns img,
  #top #TopBottom #BottomLeft.six.columns .four.columns img {
    width: 100%;
    height: auto;
    margin: 0;
    line-height: 0;
    font-size: 0;
    display: block;
    vertical-align: bottom;
    bottom: 0; }

@media (max-width: 480px) {
  #top #Main #TopLeft.six.columns,
  #top #Main #TopRight.six.columns {
    width: 100%;
    padding: 0; } }
/*MainVisual*/
/*MainSlide*/
@media (max-width: 1200px) {
  #top #Main .six.columns #MainSlide h2 {
    font-size: 1em;
    margin: 2em 0; } }
@media (max-width: 1000px) {
  #top #Main .six.columns #MainSlide h3 {
    margin: 0 0 2em; } }
@media (max-width: 480px) {
  #top #Main .six.columns #MainVisual {
    min-height: 380px; }
    #top #Main .six.columns #MainVisual h2 {
      margin: auto;
      padding-top: initial;
      padding: 50px 0; }
    #top #Main .six.columns #MainVisual .top_banner {
      position: static;
      margin: -2em auto 1em;
      text-align: center; }
    #top #Main .six.columns #MainVisual .top_banner2 {
      width: 140px; }
    #top #Main .six.columns #MainVisual h2 img {
      margin: auto; }
  #top #Main .six.columns #MainSlide {
    min-height: initial; }
    #top #Main .six.columns #MainSlide h2 {
      font-size: 1em;
      margin: 1em 0; }
    #top #Main .six.columns #MainSlide h3 {
      margin: 0; } }
/*TopNews*/
/* ClearFixElements */
@media (max-width: 480px) {
  #top #Main .six.columns #TopJirei {
    margin: 0 auto;
    text-align: left;
    width: 100%; }
    #top #Main .six.columns #TopJirei h2 {
      text-align: left;
      font-size: 1em;
      border-left: none !important;
      padding-left: 60px !important;
      margin-left: 0px !important;
      position: static;
      margin-top: 20px;
      background-position: 14px 0; }
    #top #Main .six.columns #TopJirei ul li {
      margin: 0 0 10px 0;
      width: 29.3333% !important;
      float: left;
      display: block;
      height: auto;
      padding: 2%; }
      #top #Main .six.columns #TopJirei ul li img {
        width: 100%;
        float: none;
        margin-bottom: 1em; }
      #top #Main .six.columns #TopJirei ul li h3 {
        font-size: 0.8em; }
      #top #Main .six.columns #TopJirei ul li p {
        font-size: 0.7em; }
        #top #Main .six.columns #TopJirei ul li p a {
          font-size: 0.7em; } }
/*TopNews*/
/* ClearFixElements */
@media (max-width: 480px) {
  #top #Main .six.columns #TopNews {
    margin: 0 auto;
    text-align: left;
    width: 100%; }
    #top #Main .six.columns #TopNews h2 {
      text-align: left;
      font-size: 1em;
      border-left: none !important;
      padding-left: 60px !important;
      margin-left: 0px !important;
      position: static;
      margin-top: 20px;
      background-position: 14px 0; }
    #top #Main .six.columns #TopNews ul li {
      margin: 0 0 10px 0;
      width: 29.3333% !important;
      float: left;
      display: block;
      height: auto;
      padding: 2%; }
      #top #Main .six.columns #TopNews ul li img {
        width: 100%;
        float: none;
        margin-bottom: 1em; }
      #top #Main .six.columns #TopNews ul li dd {
        font-size: 0.8em; } }
/*TopTopics*/
@media (max-width: 480px) {
  #top #Main .six.columns #TopTopics .tbl-common01 {
    margin: 0 0 2em 0; }
  #top #Main .six.columns #TopTopics h2 {
    text-align: left;
    font-size: 1em;
    border-left: none !important;
    padding-left: 60px !important;
    margin-left: 0px !important;
    position: static;
    margin-top: 20px;
    background-position: 14px 0; }
  #top #Main .six.columns #TopNews .button,
  #top #Main .six.columns #TopJirei .button,
  #top #Main .six.columns #TopTopics .button {
    margin: -52px 12px 0 0px; } }
/*TopBottom*/
@media (max-width: 1100px) {
  #top #TopBottom #BottomLeft.six.columns .four.columns h2,
  #top #TopBottom #BottomRight.six.columns .four.columns h2 {
    font-size: 1em; } }
@media (max-width: 950px) {
  #top #TopBottom #BottomLeft.six.columns .four.columns h2 {
    font-size: 0.85em; }
  #top #TopBottom #BottomRight.six.columns .four.columns h2 {
    font-size: 0.85em; }
    #top #TopBottom #BottomRight.six.columns .four.columns h2 span.EngText {
      font-size: 0.8em; }
  #top #TopBottom #BottomLeft.six.columns .four.columns h2 span.EngText {
    font-size: 0.8em; } }
@media (max-width: 480px) {
  #top #TopBottom {
    border-bottom: none;
    border-top: 1px solid #ebebeb; }
    #top #TopBottom #BottomLeft.six.columns,
    #top #TopBottom #BottomRight.six.columns {
      width: 50%;
      margin: 0;
      padding: 0%;
      border-top: none; }
    #top #TopBottom #BottomLeft.six.columns .four.columns {
      border-bottom: 1px solid #ebebeb;
      width: 100%;
      height: 300px;
      overflow: hidden; }
    #top #TopBottom #BottomRight.six.columns .four.columns {
      border-bottom: 1px solid #ebebeb;
      width: 100%;
      height: 300px;
      overflow: hidden; }
      #top #TopBottom #BottomRight.six.columns .four.columns h2 span.EngText {
        margin: 13px 0 22px; } }
/* Module–––––––––––––––––––––––––––––––––––––––––––––––––– */
.clear {
  clear: both; }

.FloatLeft {
  float: left; }

.FloatRight {
  float: right; }

.ImgBox {
  position: relative;
  display: block;
  overflow: hidden;
  clear: both;
  margin-bottom: 1em; }
  .ImgBox img {
    border: none;
    font-size: 0;
    line-height: 0;
    vertical-align: bottom;
    max-width: 100%;
    width: auto;
    height: auto; }

#CaseStudyList .ImgBox img,
body#products .Feature .ImgBox img {
  width: 80%; }

.img-box-text {
  text-align: left;
  width: 95%;
  margin: 0 !important;
  position: absolute;
  bottom: 5%;
  font-size: 16px !important;
  left: 4%;
  color: #fff !important;
  text-shadow: 1px 1px 3px rgba(51, 51, 51, 0.8); }

.table tr th {
  background: #e7f6ff;
  font-weight: normal; }
  .table tr th strong {
    font-size: 1.1em;
    color: #3162a6; }
.table tr td ul {
  margin-left: 1em;
  margin-bottom: 0em; }
  .table tr td ul li {
    margin-bottom: 0em; }
.table .FloatLeft {
  float: left;
  display: block;
  padding-right: 5px; }
.table .FloatRight {
  float: right;
  display: block;
  padding-left: 5px; }
.table.W100Per {
  width: 100%; }
.table.M_B0 {
  margin-bottom: 2px; }
.table th,
.table td {
  padding: 5px 10px;
  border: 1px solid #e1e1e1; }

@media only screen and (max-width: 480px) {
  .table {
    margin: 0 -10px; }
    .table tr {
      display: block;
      margin-bottom: 10px; }
    .table th {
      display: block;
      width: 94%;
      padding: 5px 3%; }
    .table td {
      display: list-item;
      width: 90%;
      margin-left: 10%;
      border: none;
      padding: 0; }
    .table th.MB_none,
    .table td.MB_none {
      display: none; } }
.CatalogTable {
  border: 1px solid #fff;
  width: 100%;
  margin-bottom: 0; }
  .CatalogTable td {
    text-align: center;
    border-right: 1px solid #e1e1e1;
    padding: 15px; }
  .CatalogTable tr {
    border-bottom: 1px solid #e1e1e1; }
  .CatalogTable td:last-child {
    border-right: none; }
  .CatalogTable tr:last-child {
    border-bottom: none; }
  .CatalogTable .CatalogThumb {
    margin-bottom: 10px; }
  .CatalogTable h3 {
    font-size: 1em;
    border-bottom: none;
    margin-bottom: 0;
    color: #666; }
    .CatalogTable h3 a {
      text-decoration: none;
      color: #333; }
      .CatalogTable h3 a:hover {
        text-decoration: underline; }
  .CatalogTable p {
    margin-bottom: 0;
    color: #666; }

body#catalog #Main .container.CatalogList .CatalogTable h3 {
  font-size: 1em;
  border-bottom: none;
  margin-bottom: 0;
  color: #666;
  border-left: none;
  padding-left: 0;
  margin-left: auto; }
  body#catalog #Main .container.CatalogList .CatalogTable h3 a {
    text-decoration: none;
    color: #333; }
    body#catalog #Main .container.CatalogList .CatalogTable h3 a:hover {
      text-decoration: underline; }

@media screen and (max-width: 480px) {
  .CatalogTable tr,
  .CatalogTable th {
    display: block;
    width: 100%;
    padding: 0;
    border-bottom: none; }
  .CatalogTable td {
    display: block;
    width: 100%;
    padding: 0;
    border-bottom: none;
    border-bottom: 1px solid #e1e1e1;
    padding: 10px 0; }
    .CatalogTable td.Non {
      display: none; } }
/*CatalogTable2*/
.CatalogTable2 {
  border: 1px solid #fff;
  width: 100%;
  /* margin-bottom: 0; */ }
  .CatalogTable2 td {
    text-align: left;
    border-right: 1px solid #e1e1e1;
    padding: 15px 15px; }
  .CatalogTable2 tr {
    border-bottom: 1px solid #e1e1e1; }
    .CatalogTable2 tr:first-child {
      border-top: 1px solid #e1e1e1; }
  .CatalogTable2 td:first-child {
    padding-left: 0; }
  .CatalogTable2 td:last-child {
    border-right: none; }
  .CatalogTable2 p {
    margin-bottom: 0;
    color: #666; }
    .CatalogTable2 p a {
      text-decoration: none;
      color: #333;
      display: block;
      float: left;
      font-size: 1.2em;
      line-height: 1.2em; }
      .CatalogTable2 p a:hover {
        text-decoration: underline; }
    .CatalogTable2 p img {
      vertical-align: middle;
      display: block;
      float: left;
      padding-right: 10px;
      padding-top: 0px;
      margin-top: -2px; }
    .CatalogTable2 p.DoubleLine img {
      vertical-align: middle;
      display: block;
      float: left;
      padding-right: 10px;
      padding-top: 9px; }
    .CatalogTable2 p.TrileLine img {
      vertical-align: middle;
      display: block;
      float: left;
      padding-right: 10px;
      padding-top: 20px; }
    .CatalogTable2 p.FloatLeft {
      margin-right: 20px;
      padding: 3px 0px; }
      .CatalogTable2 p.FloatLeft.Grayout {
        font-size: 1.2em;
        line-height: 1.2em;
        color: #999;
        cursor: no-drop; }
        .CatalogTable2 p.FloatLeft.Grayout img {
          -webkit-filter: grayscale(1);
          /* Webkit */
          filter: gray;
          /* IE6-9 */
          filter: grayscale(1);
          /* W3C */
          cursor: default;
          opacity: 0.5; }

@media screen and (max-width: 480px) {
  .CatalogTable2 tr,
  .CatalogTable2 th {
    display: block;
    width: 100%;
    padding: 0;
    border-bottom: none; }
  .CatalogTable2 td {
    display: block;
    width: 100%;
    padding: 0;
    border-bottom: none;
    border-bottom: 1px solid #e1e1e1;
    padding: 10px 0; }
    .CatalogTable2 td.Non {
      display: none; }
  .CatalogTable2 p a {
    font-size: 1em; }
  .CatalogTable2 p img, .CatalogTable2 p.DoubleLine img, .CatalogTable2 p.TrileLine img {
    /* display:none; */
    width: 15px;
    vertical-align: middle;
    height: auto; }
  .CatalogTable2 p.FloatLeft {
    font-size: 0.8em;
    float: none;
    clear: both;
    display: block;
    overflow: hidden; }
  .CatalogTable2 h4 {
    font-size: 1em;
    font-weight: bold;
    margin-bottom: 0.5em; } }
/*CompanyTable01*/
.CompanyTable01 {
  width: 100%; }
  .CompanyTable01 th {
    /* font-size: 1em; */
    /* line-height: 1.2em; */ }
  .CompanyTable01 td {
    text-align: left;
    /* font-size: .9em; */
    /* line-height: 1.2em; */
    border-bottom: none;
    padding: 5px 5px; }
  .CompanyTable01 th {
    padding: 5px 5px; }
  .CompanyTable01 tr {
    border-bottom: none; }
  .CompanyTable01 td:first-child {
    padding-left: 0; }
  .CompanyTable01 p {
    display: table;
    margin-bottom: 0;
    color: #666; }
    .CompanyTable01 p a {
      text-decoration: none;
      color: #333;
      display: block;
      float: left;
      font-size: 1.2em;
      line-height: 1.2em; }
      .CompanyTable01 p a:hover {
        text-decoration: underline; }
  .CompanyTable01 img {
    vertical-align: middle;
    padding-left: 20px;
    padding-top: 0px;
    margin-top: 0px; }
  .CompanyTable01 td ul {
    margin-bottom: 0; }
    .CompanyTable01 td ul li {
      margin-bottom: 0;
      list-style: disc outside;
      margin-left: 1em; }
  .CompanyTable01 td .yakuin-list li {
    list-style: none;
    margin-left: 0;
    display: block;
    clear: both;
    line-height: 70px; }
    .CompanyTable01 td .yakuin-list li span.yakuin-katagaki {
      float: left;
      width: 12em; }
    .CompanyTable01 td .yakuin-list li span.yakuin-name {
      float: left; }
    .CompanyTable01 td .yakuin-list li img {
      float: left;
      padding-left: 20px;
      margin-top: 0px; }
  .CompanyTable01 th.yakuin-list-title {
    line-height: 70px; }
  .CompanyTable01 .button {
    font-size: 1em;
    font-weight: bold;
    height: auto;
    margin: auto auto auto 10px;
    line-height: 0.9em;
    letter-spacing: 0;
    padding: 0;
    border: none;
    border-radius: 0; }
    .CompanyTable01 .button a {
      padding: 11px 5px 9px 20px;
      display: block;
      background: #f44336;
      color: #fff;
      text-decoration: none;
      border-radius: 4px; }
      .CompanyTable01 .button a img {
        display: inline;
        vertical-align: middle;
        margin: -3px auto 0 0px; }
      .CompanyTable01 .button a:hover {
        background: #3162a6; }
  .CompanyTable01 .FloatLeft {
    margin-right: 10px; }

@media screen and (max-width: 480px) {
  .CompanyTable01 tr,
  .CompanyTable01 th {
    display: block;
    width: 100%;
    padding: 10px 0 0 0;
    border-bottom: none; }
  .CompanyTable01 td {
    display: block;
    width: 100%;
    padding: 10px 0 0 0;
    border-bottom: none;
    /* border-bottom:1px solid #E1E1E1; */
    padding: 5px 0 10px 0; }
    .CompanyTable01 td.Non {
      display: none; }
  .CompanyTable01 p a {
    font-size: 1em; }
  .CompanyTable01 td .yakuin-list {
    display: block;
    overflow: hidden; }
    .CompanyTable01 td .yakuin-list li {
      list-style: none;
      margin-left: initial;
      display: block;
      line-height: initial;
      clear: both;
      float: none; }
      .CompanyTable01 td .yakuin-list li span.yakuin-katagaki {
        float: left;
        width: initial; }
      .CompanyTable01 td .yakuin-list li span.yakuin-name {
        float: left;
        padding-left: 10px; }
      .CompanyTable01 td .yakuin-list li img {
        float: right;
        padding-left: initial;
        margin-top: initial; }
  .CompanyTable01 th.yakuin-list-title {
    line-height: initial; }
  .CompanyTable01 th.MB_none {
    display: none; }
  .CompanyTable01 td.MB_none {
    display: none; }
  .CompanyTable01 .FloatLeft {
    float: none;
    clear: both;
    margin-right: 0px; }
  .CompanyTable01 .button {
    width: 100%;
    margin: 0.5em auto; } }
.Small {
  font-size: 0.9em; }

.TextRight {
  text-align: right; }

.TextLeft {
  text-align: left; }

.TextCenter {
  text-align: center; }

.AnnotationArea {
  border: 3px solid #ccc;
  border-radius: 6px;
  padding: 20px 30px; }
  .AnnotationArea h3 {
    text-align: center;
    font-weight: bold;
    border-bottom: none !important; }
  .AnnotationArea ul {
    list-style: disc outside; }

@media (max-width: 480px) {
  .AnnotationArea {
    padding: 1em;
    font-size: 0.8em; } }
/* Layout–––––––––––––––––––––––––––––––––––––––––––––––––– */
header #TopHead .TopText {
  background: #69c4ed;
  padding: 0px 2%;
  height: 32px;
  width: 83%; }
  header #TopHead .TopText h1 {
    font-size: 12px;
    line-height: 32px;
    margin: 0;
    padding: 0;
    color: #fff; }
header #TopHead .TopHeadNav {
  background: #3162a6;
  padding: 0;
  text-align: center;
  color: #fff;
  margin-left: 0;
  width: 17%;
  text-transform: uppercase;
  height: 32px;
  float: right; }
  header #TopHead .TopHeadNav a:hover {
    background: #1470ef; }
  header #TopHead .TopHeadNav p {
    margin: 0 !important; }
  header #TopHead .TopHeadNav a {
    color: #fff;
    text-decoration: none;
    width: 100%;
    display: block;
    line-height: 32px;
    font-weight: 700; }
    header #TopHead .TopHeadNav a img {
      margin: -4px 10px 0 0;
      vertical-align: middle; }
header #G_NavArea {
  box-shadow: 0 0 10px rgba(17, 17, 17, 0.2); }
  header #G_NavArea .HeadLogo {
    text-align: center;
    width: 15.333333%;
    padding: 0 1%;
    height: 80px;
    display: table;
    vertical-align: middle; }
    header #G_NavArea .HeadLogo span {
      display: table-cell;
      margin: auto;
      vertical-align: middle;
      top: 0;
      bottom: 0; }
      header #G_NavArea .HeadLogo span img {
        width: 100%;
        height: auto;
        max-width: 181px; }
  header #G_NavArea .G_Nav {
    border-left: 1px solid #ccc;
    width: 84.6666666667%;
    margin-left: 0; }
    header #G_NavArea .G_Nav nav ul {
      list-style: none;
      margin: 0;
      height: 80px;
      /* display: flex; */ }
      header #G_NavArea .G_Nav nav ul li {
        text-align: center;
        font-size: 15px;
        line-height: 20px;
        display: block;
        width: 16%;
        float: left;
        margin: 0 0 0 -1px;
        padding: 0;
        border-right: 1px solid #ccc;
        font-weight: bold;
        /* width: 100%; */ }
        header #G_NavArea .G_Nav nav ul li:last-child {
          width: 20%; }
        header #G_NavArea .G_Nav nav ul li:nth-child(7) li:nth-child(1) {
          /*display: none !important;*/ }
        header #G_NavArea .G_Nav nav ul li a {
          color: #333;
          text-decoration: none;
          padding: 20px 0;
          display: block;
          width: 100%;
          height: 40px;
          overflow: hidden;
          margin: 0; }
          header #G_NavArea .G_Nav nav ul li a span.EngText {
            display: block;
            font-size: 10px;
            text-transform: uppercase;
            color: #69c4ed;
            font-weight: 700; }
          header #G_NavArea .G_Nav nav ul li a:hover {
            background: #014099;
            color: #fff; }
header .HeadVisualArea {
  background: url(../images/products/head-2nd-bg-products.png) center top no-repeat #2f4355;
  height: 110px;
  padding: 60px 0 0;
  background-size: cover; }
  header .HeadVisualArea p {
    float: left;
    color: #fff;
    margin: 12px 0 0;
    font-size: 14px; }
  header .HeadVisualArea h2 {
    float: right;
    color: #fff;
    text-align: right;
    font-size: 26px;
    line-height: 26px;
    letter-spacing: 2px; }
    header .HeadVisualArea h2 span.EngText {
      display: block;
      font-size: 14px;
      text-transform: uppercase;
      letter-spacing: 1px; }

@media screen and (max-width: 780px) {
  header #TopHead .TopHeadNav a {
    font-size: 12px; }
    header #TopHead .TopHeadNav a img {
      display: none; } }
@media screen and (max-width: 480px) {
  header #TopHead .TopText,
  header #TopHead .TopHeadNav {
    display: none; } }
@media screen and (max-width: 1200px) {
  header #G_NavArea .G_Nav nav ul li {
    font-size: 14px; }
    header #G_NavArea .G_Nav nav ul li a span.EngText {
      font-size: 10px; } }
@media screen and (max-width: 1000px) {
  header #G_NavArea .G_Nav nav ul li {
    font-size: 12px; }
    header #G_NavArea .G_Nav nav ul li a span.MbNone {
      display: none; } }
@media screen and (max-width: 780px) {
  header #G_NavArea .G_Nav nav ul li {
    font-size: 12px; }
    header #G_NavArea .G_Nav nav ul li a {
      padding: 30px 0% 10px; }
      header #G_NavArea .G_Nav nav ul li a span.EngText {
        display: none; } }
@media screen and (max-width: 480px) {
  header #G_NavArea .HeadLogo {
    width: 100%; }
  header #G_NavArea .G_Nav {
    display: none; }
  header #G_NavArea .HeadLogo span img {
    margin-left: -5%; } }
@media screen and (max-width: 900px) {
  header .HeadVisualArea {
    padding: 30px 0 0; }
    header .HeadVisualArea p {
      float: none;
      display: block;
      margin: 0;
      font-size: 12px; }
    header .HeadVisualArea h2 {
      float: none;
      display: block;
      text-align: left;
      margin: 15px 0 0; }
      header .HeadVisualArea h2 span.EngText {
        float: none;
        display: inline;
        padding-left: 10px; } }
.pankuzu {
  clear: both;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .pankuzu li {
    float: left;
    font-size: 12px;
    line-height: 16px;
    list-style: none; }
    .pankuzu li a {
      color: #333;
      text-decoration: none; }
      .pankuzu li a:after {
        content: "＞";
        margin-left: 5px;
        margin-right: 5px; }

@media screen and (max-width: 480px) {
  header .HeadVisualArea {
    padding: 30px 0;
    height: auto;
    margin-bottom: 2em; }
    header .HeadVisualArea p br {
      display: none; }
    header .HeadVisualArea h2 {
      font-size: 1.2em; }
      header .HeadVisualArea h2 span.EngText {
        padding-left: 0;
        display: block; }

  .pankuzu {
    display: none; } }
/* Main–––––––––––––––––––––––––––––––––––––––––––––––––– */
#Main .container {
  background: #fff;
  border-radius: 2px;
  box-shadow: 0 0 6px rgba(51, 51, 51, 0.1);
  margin-bottom: 4em; }
  #Main .container img {
    max-width: 100%;
    height: auto !important; }
    #Main .container img.aligncenter {
      text-align: center;
      margin-left: auto;
      margin-right: auto;
      display: block; }
  #Main .container .ContentsPad {
    padding: 30px; }
  #Main .container .center_midashi {
    text-align: center;
    color: #e23829;
    font-weight: bold;
    font-size: 1em;
    margin-left: auto;
    border-left: none;
    padding-left: initial; }
    #Main .container .center_midashi.EngText {
      text-transform: uppercase; }
  #Main .container .BigCatch {
    background: url(../images/base/bigcatch-bg.png) no-repeat top center;
    background-size: cover;
    padding: 30px 15px; }
    #Main .container .BigCatch h1 {
      color: #fff;
      font-size: 1.2em;
      font-weight: bold;
      text-align: center;
      line-height: 1.6em;
      margin-bottom: 0; }
  #Main .container .foot_contents {
    background: #eff9ff; }
    #Main .container .foot_contents li {
      list-style: none; }
      #Main .container .foot_contents li a {
        color: #333;
        text-decoration: none;
        background: url(../images/base/allow_c_right_w.png) left center no-repeat;
        font-size: 1.1em;
        line-height: 1.4em;
        padding: 0.2em 0 0.2em 35px; }
        #Main .container .foot_contents li a:hover {
          color: #3162a6;
          background: url(../images/base/allow_c_right_b.png) left center no-repeat; }

@media screen\0  {
  #Main #blog.container img {
    width: 100%; } }
@media (max-width: 480px) {
  #Main .container .ContentsPad {
    padding: 15px; } }
@media (max-width: 480px) {
  #Main .container .BigCatch h1 {
    font-size: 0.8em; }
    #Main .container .BigCatch h1 br {
      display: none; } }
/* products–––––––––––––––––––––––––––––––––––––––––––––––––– */
body#products header .HeadVisualArea {
  background-image: url(../images/products/head-2nd-bg-products.png); }

#Main .container .ProductsMain {
  background: #f4f8fe url(../images/products/main-products-bg.jpg) top center no-repeat fixed;
  background-size: cover;
  padding: 30px;
  margin-bottom: 1em;
  border-bottom: 1px solid #deecff; }

body#products #Main .container > div:last-child {
  margin-bottom: 0;
  border-bottom: none; }

#Main .container .ProductsMain .ProductsCatch {
  font-size: 1.9em;
  line-height: 1.2em; }
#Main .container .ProductsMain .ProductsSubCatch {
  font-size: 1.4em;
  color: #3162a6;
  margin-bottom: 0.5em;
  line-height: 1.1em; }
#Main .container .ProductsMain h1 {
  font-size: 2.2em;
  color: #3162a6;
  font-weight: 700;
  line-height: 1em;
  letter-spacing: 0;
  text-shadow: 1px 1px 4px #fff;
  margin: 1em 0; }
  #Main .container .ProductsMain h1 span {
    font-size: 0.6em; }
#Main .container .ProductsMain .ProductsIcon {
  width: 76px;
  height: 76px;
  position: absolute;
  right: 30px; }
#Main .container .ProductsMain .RedIcon {
  color: #e23829;
  border: 1px solid;
  padding: 0.2em 0.5em;
  border-radius: 4px;
  display: block;
  width: auto;
  float: right;
  font-size: 0.9em;
  font-weight: bold;
  background: #fff; }
#Main .container .ProductsMain .ProductsMainPhoto {
  margin-top: -30px;
  text-align: right; }
  #Main .container .ProductsMain .ProductsMainPhoto img {
    max-width: 100%;
    height: auto; }
  #Main .container .ProductsMain .ProductsMainPhoto.FRP {
    /* margin-top: -50px; */
    text-align: right;
    margin-right: -30px;
    margin-bottom: -37px; }
#Main .container .ProductsMain .MainFeature {
  overflow: hidden; }
  #Main .container .ProductsMain .MainFeature li {
    border-radius: 6px;
    border: 2px solid #69c4ed;
    width: 23%;
    float: left;
    margin-right: 1%;
    text-align: center;
    height: 2.5em;
    list-style: none;
    line-height: 1.3em;
    padding: 0.5em 0;
    color: #3162a6;
    background: #fff;
    font-size: 0.9em; }
    #Main .container .ProductsMain .MainFeature li:last-child {
      margin-right: 0; }
  #Main .container .ProductsMain .MainFeature:after {
    clear: both;
    content: ""; }
  #Main .container .ProductsMain .MainFeature li.SingleLine {
    line-height: 2.7em; }
#Main .container .ProductsMain .ProductsNomCntnt {
  font-size: 1.2em;
  color: #666;
  line-height: 1.6em; }
  #Main .container .ProductsMain .ProductsNomCntnt span.EngText {
    font-size: 1.6em;
    font-style: italic;
    font-weight: 400; }
#Main .container h2 {
  margin-left: -31px;
  border-left: 10px solid #3162a6;
  padding-left: 20px;
  color: #014099; }
#Main .container h3 {
  font-weight: bold;
  border-bottom: 1px solid #3162a6; }
#Main .container .row {
  margin-bottom: 2em; }
  #Main .container .row > .row {
    margin-bottom: 1em; }
#Main .container .Feature,
#Main .container .Spec {
  padding: 30px;
  /* border-bottom: 1px solid #deecff; */ }
#Main .container .Option {
  padding: 30px; }
  #Main .container .Option.row {
    margin-bottom: 0; }
#Main .container .Feature,
#Main .container .Spec,
#Main .container .Option {
  border-bottom: 1px solid #deecff; }
#Main .container .Feature:last-child,
#Main .container .Spec:last-child,
#Main .container .Option:last-child {
  border-bottom: none; }
#Main .container#ProductsList .products_list .column,
#Main .container#ProductsList .products_list .columns {
  border: 3px solid #ccc;
  border-radius: 5px;
  padding: 15px 10px; }
#Main .container#ProductsList .products_list h3 {
  background: url(../images/base/allow_c_right_b.png) left center no-repeat;
  line-height: 1.2em;
  font-size: 1.1em;
  padding-left: 30px;
  border-bottom: none;
  margin-bottom: 10px;
  padding-top: 5px;
  padding-bottom: 5px; }
  #Main .container#ProductsList .products_list h3 .Small {
    font-size: 0.8em; }
  #Main .container#ProductsList .products_list h3 a {
    color: #333;
    text-decoration: none; }
    #Main .container#ProductsList .products_list h3 a:hover {
      color: #3162a6; }
#Main .container#ProductsList .products_list p {
  text-align: justify;
  font-size: 0.8em;
  line-height: 1.6em;
  margin-bottom: 0;
  color: #666; }
#Main .container#ProductsList .products_list .ItemPhoto {
  float: right;
  padding-left: 20px; }
  #Main .container#ProductsList .products_list .ItemPhoto img {
    line-height: 0;
    font-size: 0;
    display: block; }
#Main .container#ProductsList .products_list .AttentionRed {
  color: #f44336;
  font-size: 0.9em; }
#Main .container .Attention {
  text-align: center;
  padding: 2em;
  border: 2px solid #f44336;
  margin-bottom: 2em; }
  #Main .container .Attention h2 {
    color: #f44336;
    padding-left: initial;
    border-left: initial;
    margin-left: initial;
    margin: auto; }

.product-onsen .Spec {
  display: none; }

@media (max-width: 480px) {
  #Main .container h2 {
    font-size: 1.4em; }
  #Main .container .ProductsMain .ProductsNomCntnt {
    text-align: justify;
    font-size: 1em; }
    #Main .container .ProductsMain .ProductsNomCntnt br {
      display: none; }
  #Main .container .ProductsMain .RedIcon {
    float: none;
    margin: 0 auto 0.5em;
    background: none;
    border: none;
    padding: 0; }
  #Main .container .ProductsMain .ProductsMainPhoto.FRP {
    margin-top: -30px;
    text-align: right;
    margin-right: -15px;
    margin-bottom: -22px; } }
/*Feature*/
/*Spec*/
/*Option*/
@media screen and (max-width: 480px) {
  #Main .container {
    padding: 0;
    width: 96% !important; }
    #Main .container .Spec,
    #Main .container .Feature,
    #Main .container .Option {
      padding: 15px; }
    #Main .container .ProductsMain {
      padding: 15px; }
      #Main .container .ProductsMain .ProductsSubCatch {
        font-size: 1.2em;
        line-height: 1.4em; }
      #Main .container .ProductsMain h1 {
        font-size: 1.8em; }
    #Main .container#blog {
      padding: 0;
      width: 96% !important; }
    #Main .container .ProductsMain .ProductsCatch {
      font-size: 1em;
      line-height: 1.2em; }
      #Main .container .ProductsMain .ProductsCatch br {
        display: none; }
    #Main .container .ProductsMain .ProductsSubCatch br {
      display: none; }
    #Main .container .ProductsMain .MainFeature li {
      width: 47%;
      margin-right: 1%; }
    #Main .container .ProductsMain .ProductsMainPhoto {
      margin-top: 0px;
      text-align: center; }
    #Main .container .ProductsMain .ProductsIcon {
      display: none; } }
/* ProductsList–––––––––––––––––––––––––––––––––––––––––––––––––– */
@media (max-width: 480px) {
  #Main .container#ProductsList .BigCatch h1 {
    font-size: 1em; }
    #Main .container#ProductsList .BigCatch h1 br {
      display: none; }
  #Main .container#ProductsList .products_list .column,
  #Main .container#ProductsList .products_list .columns {
    margin-bottom: 1em; }
  #Main .container#ProductsList .foot_contents li a {
    display: block;
    font-size: 1em;
    line-height: 1.2em; } }
/* Products SideBTN==================================================*/
body#products #SideBTN {
  position: absolute;
  display: block;
  top: 333px;
  right: 0;
  -ms-writing-mode: tb-rl;
  /* for MS IE8+ */
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  border-radius: 5px 0px 0px 5px;
  display: block;
  box-shadow: 0 0 7px rgba(17, 17, 17, 0.29);
  overflow: hidden; }
  body#products #SideBTN h3 {
    font-size: 10px;
    margin: 0;
    padding: 0;
    line-height: 12px;
    background: #fff;
    text-align: center; }
  body#products #SideBTN ul {
    list-style: none;
    margin: 0;
    padding: 0;
    clear: both;
    float: right; }
    body#products #SideBTN ul li {
      margin: 0;
      float: left;
      border-bottom: 1px solid #fff; }
      body#products #SideBTN ul li:last-child {
        border-bottom: none; }
      body#products #SideBTN ul li a {
        display: block;
        background: #f44330 url(../images/base/allow_tri_right_w.png) 30px center no-repeat;
        padding: 10px 13px 10px 4px;
        margin: 0;
        text-decoration: none;
        text-align: center;
        color: #fff;
        letter-spacing: 1px;
        font-size: 14px; }
      body#products #SideBTN ul li.SingleLine a {
        padding: 20px 13px 20px 4px; }
  body#products #SideBTN.fixed {
    position: fixed;
    top: 10px; }
body#products .MovieArea .movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }
  body#products .MovieArea .movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%; }

@media (max-width: 1050px) {
  body#products #SideBTN {
    position: static;
    -ms-writing-mode: initial;
    /* for MS IE8+ */
    -webkit-writing-mode: initial;
    writing-mode: initial;
    width: 900px;
    margin: 0em auto 2em; }
    body#products #SideBTN h3 {
      font-size: 16px;
      line-height: 30px;
      color: #014099; }
    body#products #SideBTN.fixed {
      position: static; }
    body#products #SideBTN ul {
      width: 80%;
      float: none;
      margin: auto;
      display: block;
      overflow: hidden; }
      body#products #SideBTN ul li {
        border-bottom: initial;
        width: 46%;
        margin: 2%; }
        body#products #SideBTN ul li a {
          font-size: 1.2em; }
        body#products #SideBTN ul li.SingleLine {
          border-bottom: initial;
          width: 46%;
          margin: 2% auto;
          margin-left: 27.5%; }
      body#products #SideBTN ul.ThirdLine {
        width: 100%; }
        body#products #SideBTN ul.ThirdLine li {
          width: 29.3333%;
          margin-left: initial;
          margin: 2% 2%; } }
@media (max-width: 480px) {
  body#products #SideBTN {
    width: 96%; }
    body#products #SideBTN ul li a {
      padding: 10px !important;
      background: #f44330 url(../images/base/allow_tri_right_w.png) 10px center no-repeat;
      font-size: 1em; }
    body#products #SideBTN ul.ThirdLine li {
      width: 96%; } }
/* MovieArea */
/* CTA–––––––––––––––––––––––––––––––––––––––––––––––––– */
#CTA {
  margin-bottom: 4em; }
  #CTA.ContactCTA {
    margin-bottom: 0em; }
  #CTA .container {
    width: 900px;
    overflow: hidden;
    display: block;
    max-width: none;
    min-width: initial; }
  #CTA .CTA_Tel {
    font-weight: bold; }
    #CTA .CTA_Tel p {
      margin: 0;
      margin-bottom: 0;
      font-size: 1.2em; }
    #CTA .CTA_Tel span.EngText {
      font-size: 2.4em;
      line-height: 1em; }
  #CTA.ContactCTA .CTA_Tel p {
    margin: 0;
    margin-bottom: 0;
    font-size: 1em;
    font-weight: normal; }
  #CTA.ContactCTA .CTA_Tel span.EngText {
    font-size: 3em;
    line-height: 1em;
    font-weight: bold; }
  #CTA .CTA_BTN {
    display: block; }
    #CTA .CTA_BTN a {
      background: #ff4e45;
      color: #fff;
      text-decoration: none;
      padding: 20px 0px;
      font-size: 1.2em;
      width: 100%;
      display: block;
      text-align: center; }
      #CTA .CTA_BTN a:hover {
        background: #014099; }
      #CTA .CTA_BTN a img {
        vertical-align: middle;
        padding-right: 15px;
        margin-top: -4px; }

@media screen and (max-width: 480px) {
  #CTA.ContactCTA .CTA_Tel p {
    text-align: left;
    margin-bottom: 1em; } }
@media screen and (max-width: 480px) {
  #CTA .container {
    width: 100%; }
  #CTA .CTA_Tel p {
    margin-bottom: 1em;
    font-size: 0.85em;
    text-align: center; } }
/* catalog–––––––––––––––––––––––––––––––––––––––––––––––––– */
body#catalog header .HeadVisualArea {
  background-image: url(../images/catalog/head-2nd-bg-catalog.png); }
body#catalog #Main .container.CatalogNews h2 {
  margin-left: -31px;
  border-left: none !important;
  font-size: 1.4em !important;
  padding-left: 28px; }
  body#catalog #Main .container.CatalogNews h2 img {
    vertical-align: middle;
    padding-right: 10px;
    margin-top: -4px; }
body#catalog #Main .container.CatalogNews .AttentionRed {
  margin: 0 0 1em 0; }
body#catalog #Main .container.CatalogList h2 {
  font-size: 1.2em;
  color: #f44336;
  font-weight: bold;
  border-left: none;
  padding-left: 0;
  margin-top: -60px;
  margin-bottom: 40px; }
body#catalog #Main .container.CatalogList h3 {
  margin-left: -31px;
  border-left: 10px solid #3162a6;
  padding-left: 20px;
  color: #014099;
  border-bottom: none; }

/*CatalogList*/
@media screen and (max-width: 480px) {
  body#catalog #Main .container.CatalogList h2 {
    margin-left: 0px;
    margin-top: -50px;
    margin-bottom: 30px; }
  body#catalog #Main .container.CatalogList h3 {
    border-left: none;
    padding-left: 30px;
    font-size: 1.1em;
    margin-bottom: 0.3em; } }
/*CaseStudyList–––––––––––––––––––––––––––––––––––––––––––––––––– */
#Main .container#other {
  width: 1000px; }

body#other.case-study header .HeadVisualArea, body#casestudy header .HeadVisualArea {
  background-image: url(../images/casestudy/head-2nd-bg-casestudy.png); }
body#other.case-study header .HeadVisualArea p, body#casestudy header .HeadVisualArea p {
  margin: 16px 0 0; }

#Main .container#CaseStudyList .caselist {
  background: #eff9ff; }
  #Main .container#CaseStudyList .caselist .row {
    margin-bottom: 0; }
#Main .container#CaseStudyList .pickuplist .div_pickup {
  padding: 15px 15px;
  background: #f9f9f9;
  width: 33.333333%;
  margin: 0; }
  #Main .container#CaseStudyList .pickuplist .div_pickup img {
    width: 100%; }
  #Main .container#CaseStudyList .pickuplist .div_pickup:nth-child(2n) {
    background: #efefef; }
  #Main .container#CaseStudyList .pickuplist .div_pickup h3 {
    font-size: 1em;
    border-bottom: none;
    margin-bottom: 0.5em; }
    #Main .container#CaseStudyList .pickuplist .div_pickup h3 a {
      text-decoration: none;
      color: #333; }
      #Main .container#CaseStudyList .pickuplist .div_pickup h3 a:hover {
        text-decoration: underline;
        color: #333; }
  #Main .container#CaseStudyList .pickuplist .div_pickup p {
    color: #3162a6;
    margin-bottom: 0;
    font-size: 1.15em; }
  #Main .container#CaseStudyList .pickuplist .div_pickup .ImgBox {
    position: relative;
    display: block;
    overflow: hidden;
    clear: both;
    margin-bottom: 1em; }
#Main .container#CaseStudyList .pickuplist .pickuplist .div_pickup .ImgBox img {
  border: none;
  font-size: 0;
  line-height: 0;
  vertical-align: bottom;
  max-width: 100%;
  width: 100%;
  height: auto; }
#Main .container#CaseStudyList .pickuplist .div_pickup .img-box-text {
  text-align: right;
  width: auto;
  position: absolute;
  top: 0%;
  font-size: 12px !important;
  right: 0%;
  color: #fff !important;
  text-shadow: 1px 1px 3px rgba(51, 51, 51, 0.8);
  background: #f44336;
  height: 1.5em;
  padding: 0.25em 0.5em;
  margin: 0 !important;
  bottom: initial;
  left: initial; }
#Main .container#CaseStudyList .pickuplist .div_pickup .img-icon {
  text-align: left;
  width: 42px;
  margin: 0 !important;
  position: absolute;
  top: 3%;
  left: 2%; }

@media (max-width: 480px) {
  header .HeadVisualArea p {
    margin: 0; }

  #Main .container#CaseStudyList .pickuplist .div_pickup {
    padding: 0;
    width: 100%;
    margin: 0;
    background: none; }
    #Main .container#CaseStudyList .pickuplist .div_pickup:nth-child(2n) {
      background: none; }
    #Main .container#CaseStudyList .pickuplist .div_pickup p {
      margin-bottom: 20px;
      font-size: 0.8em; } }
/* #filter--------------------------- */
#filter {
  margin: 0 auto 30px;
  padding: 15px 0;
  width: 100%;
  text-align: center;
  background: #3162a6; }
  #filter h2 {
    color: #fff !important;
    text-align: left;
    font-size: 1.2em;
    border-left: none !important;
    padding-left: 50px !important;
    margin-left: 30px !important;
    position: absolute;
    background: url(../images/base/midashi-icon-building.png) left center no-repeat;
    margin-top: 14px;
    font-weight: bold; }
    #filter h2 span.EngText {
      display: block;
      font-size: 0.8em;
      color: #69c4ed;
      font-weight: bold;
      text-transform: uppercase; }

.FilterBtn {
  padding: 20px 0px; }

#filter .FilterBtn a:link {
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  letter-spacing: 3px;
  margin: 0 10px;
  padding: 5px;
  border-bottom: 1px solid #fff;
  text-decoration: none;
  background: url(../images/casestudy/case-tab-arrow_off.png) no-repeat left center;
  padding-left: 30px; }
#filter .FilterBtn a:visited, #filter .FilterBtn a:active, #filter .FilterBtn a:hover {
  text-decoration: none;
  color: #fff; }
#filter .FilterBtn .active {
  font-weight: bold; }
#filter .FilterBtn a.active:link {
  text-decoration: none;
  color: #fff;
  font-size: 1.2em;
  border-bottom: none;
  background: url(../images/casestudy/case-tab-arrow_on.png) no-repeat left center;
  padding: 10px 0 10px 40px; }
#filter .FilterBtn a.active:visited, #filter .FilterBtn a.active:active, #filter .FilterBtn a.active:hover {
  text-decoration: none;
  color: #fff; }

/* #filterlist--------------------------- */
#filterlist {
  margin: 0 auto;
  text-align: left;
  width: 940px; }
  #filterlist ul {
    margin: 0 auto;
    padding: 0;
    text-align: left;
    display: inline-block;
    overflow: hidden; }
    #filterlist ul li {
      margin: 7px;
      width: 200px;
      text-align: left;
      float: left;
      display: inline;
      overflow: hidden;
      /* height: 310px; */
      padding: 10px;
      height: 280px; }
      #filterlist ul li img {
        width: 200px;
        float: left;
        margin-bottom: 1em; }
      #filterlist ul li h3 {
        font-size: 1em;
        border-bottom: none !important;
        margin-bottom: 0.5em; }
      #filterlist ul li p {
        font-size: 0.9em;
        color: #666; }
        #filterlist ul li p a {
          font-size: 0.9em;
          color: #666; }
      #filterlist ul li a {
        color: #333;
        text-decoration: none; }
        #filterlist ul li a .img-box-text {
          font-size: 12px !important;
          color: #014099 !important;
          position: static;
          width: auto;
          bottom: initial;
          clear: both;
          left: initial;
          text-shadow: none;
          padding: 5px 0 0;
          line-height: 16px; }
      #filterlist ul li:hover {
        background: #fff;
        box-shadow: 0 1px 6px #e8e8e8; }
    #filterlist ul:after {
      content: ".";
      height: 0;
      clear: both;
      display: block;
      visibility: hidden; }

/* ClearFixElements */
@media (max-width: 480px) {
  #filterlist {
    margin: 0 auto;
    text-align: left;
    width: 100%; }

  #filter h2 {
    text-align: center;
    font-size: 1.2em;
    border-left: none !important;
    padding-left: 0px !important;
    margin-left: 0px !important;
    position: static;
    margin-top: 10px;
    background-position: 20px center; }

  .FilterBtn {
    display: none; }

  #filterlist ul li {
    margin: 0 0 10px 0;
    width: 92% !important;
    float: none;
    display: block;
    height: auto;
    padding: 4%;
    border-bottom: 1px solid #ccc; }
    #filterlist ul li img {
      width: 100%;
      float: none;
      margin-bottom: 1em; } }
/* CaseStudyDetail */
#Main .container#CaseStudyDetail {
  width: 1000px; }
  #Main .container#CaseStudyDetail .Hero.ImgBox img {
    width: 100%;
    height: auto; }
  #Main .container#CaseStudyDetail .Hero.ImgBox p.img-box-text {
    text-align: right;
    float: right;
    width: auto;
    background: #f44336;
    left: initial;
    right: 20px;
    padding: 5px 10px;
    bottom: 50px;
    left: auto; }
  #Main .container#CaseStudyDetail .Hero.ImgBox h1.img-box-text {
    font-size: 1.4em !important;
    text-align: right;
    bottom: 15px;
    right: 20px !important;
    left: initial;
    width: auto; }
  #Main .container#CaseStudyDetail .ContentsPad.Small {
    padding: 15px 30px;
    margin-bottom: 0; }
  #Main .container#CaseStudyDetail .jire_product {
    border-top: 1px solid #3162a6;
    padding-top: 30px; }
    #Main .container#CaseStudyDetail .jire_product h2 {
      text-align: center;
      border-left: none;
      margin-left: initial;
      padding-left: initial;
      font-weight: bold;
      font-size: 1.2em;
      margin-bottom: 0; }
      #Main .container#CaseStudyDetail .jire_product h2:after {
        display: block;
        content: "";
        width: 100px;
        border-bottom: 4px solid;
        margin: 10px auto 0; }
    #Main .container#CaseStudyDetail .jire_product .ContentsPad {
      background: #f9f9f9;
      margin: 0 30px 30px; }
    #Main .container#CaseStudyDetail .jire_product h3 {
      border-bottom: none;
      font-size: 1.2em;
      border-left: 4px solid #3162a6;
      padding-left: 10px; }
    #Main .container#CaseStudyDetail .jire_product ul {
      margin-bottom: 2em;
      list-style: disc;
      list-style-position: outside;
      margin-left: 1em;
      font-size: 0.9em; }
    #Main .container#CaseStudyDetail .jire_product img {
      margin: auto;
      display: block; }
    #Main .container#CaseStudyDetail .jire_product .button {
      font-size: 1em;
      font-weight: bold;
      height: auto;
      margin: auto;
      line-height: 1.2em;
      letter-spacing: 0;
      padding: 0;
      border: none;
      border-radius: 0; }
      #Main .container#CaseStudyDetail .jire_product .button a {
        padding: 15px 20px;
        display: block;
        background: #f44336;
        color: #fff;
        text-decoration: none;
        border-radius: 4px;
        width: auto;
        display: inline; }
        #Main .container#CaseStudyDetail .jire_product .button a img {
          display: inline;
          vertical-align: middle;
          margin: -3px auto 0 10px; }
        #Main .container#CaseStudyDetail .jire_product .button a:hover {
          background: #3162a6; }

@media (max-width: 480px) {
  #Main .container#CaseStudyDetail {
    width: 96%; }
    #Main .container#CaseStudyDetail .Hero.ImgBox {
      display: block;
      position: static; }
      #Main .container#CaseStudyDetail .Hero.ImgBox p.img-box-text {
        display: none; }
      #Main .container#CaseStudyDetail .Hero.ImgBox h1.img-box-text {
        text-align: left;
        bottom: initial !important;
        right: initial !important;
        left: initial;
        width: 90%;
        font-size: 1em !important;
        clear: both;
        display: block;
        color: #f44336 !important;
        text-shadow: none;
        font-weight: bold;
        margin: 20px 5% 0px !important;
        position: static; }
    #Main .container#CaseStudyDetail .casestudydetail h2 {
      font-size: 1em; }
    #Main .container#CaseStudyDetail .ContentsPad.Small {
      padding: 15px 5% 0;
      color: #666;
      font-size: 0.8em; }
    #Main .container#CaseStudyDetail .Hero.ImgBox img {
      width: 100%;
      height: auto !important;
      max-height: auto; } }
/* jire_product */
@media (max-width: 480px) {
  #Main .container#CaseStudyDetail .jire_product h2 {
    font-size: 1em; }
  #Main .container#CaseStudyDetail .jire_product .ContentsPad {
    margin: 0 0px 30px; }
    #Main .container#CaseStudyDetail .jire_product .ContentsPad .column,
    #Main .container#CaseStudyDetail .jire_product .ContentsPad .columns {
      margin-bottom: 2em; }
    #Main .container#CaseStudyDetail .jire_product .ContentsPad .column:last-child,
    #Main .container#CaseStudyDetail .jire_product .ContentsPad .columns:last-child {
      margin-bottom: 0em; }
  #Main .container#CaseStudyDetail .jire_product .button {
    margin: auto;
    width: 100%;
    font-size: 0.9em; }
    #Main .container#CaseStudyDetail .jire_product .button a {
      margin: auto; } }
/* company–––––––––––––––––––––––––––––––––––––––––––––––––– */
body#company header .HeadVisualArea {
  background-image: url(../images/company/head-2nd-bg-company.png); }

#Main .container#CompanyContents .SubNav {
  background: url(../images/base/bigcatch-bg.png) no-repeat top center;
  background-size: cover;
  padding: 30px 15px 0;
  overflow: hidden;
  display: block; }
  #Main .container#CompanyContents .SubNav ul {
    width: 60%;
    margin: auto;
    list-style: none; }
    #Main .container#CompanyContents .SubNav ul li {
      float: left;
      width: 20%;
      text-align: center;
      font-size: 1.1em;
      font-weight: bold;
      margin-bottom: 0; }
      #Main .container#CompanyContents .SubNav ul li a {
        color: #fff;
        text-decoration: none;
        display: block;
        width: 100%;
        padding-bottom: 30px; }
        #Main .container#CompanyContents .SubNav ul li a:hover {
          color: #69c4ed;
          text-decoration: none; }
      #Main .container#CompanyContents .SubNav ul li.Active a {
        background: url(../images/base/sub-nav_on.png) bottom center no-repeat; }
#Main .container#CompanyContents .BigCatch {
  background: none; }
  #Main .container#CompanyContents .BigCatch h1 {
    color: #014099;
    font-size: 1.4em;
    font-weight: bold;
    text-align: center;
    line-height: 1.6em;
    margin-bottom: 0; }
    #Main .container#CompanyContents .BigCatch h1 span.EngText {
      display: block;
      text-align: center;
      color: #e23829;
      font-weight: bold;
      text-transform: uppercase;
      font-size: 0.7em; }
    #Main .container#CompanyContents .BigCatch h1:after {
      content: "";
      display: block;
      margin: 30px auto 0;
      width: 50px;
      border-bottom: 3px solid #3162a6; }
#Main .container#CompanyContents .message p {
  margin-bottom: 1em; }
#Main .container#CompanyContents .message ol {
  margin-bottom: 1em; }
  #Main .container#CompanyContents .message ol li {
    margin-bottom: 0;
    margin-left: 1em; }
#Main .container#CompanyContents .message h2 {
  margin-left: initial;
  padding-left: initial;
  border-left: initial;
  font-family: "Tinos", "Noto Serif JP", serif;
  font-size: 2.1em;
  color: #111; }
#Main .container#CompanyContents .message .CEO_photo {
  float: right;
  bottom: 0;
  margin-bottom: 0; }
#Main .container#CompanyContents .message .CEO_sign {
  float: right;
  text-align: right; }
  #Main .container#CompanyContents .message .CEO_sign span {
    display: block;
    overflow: hidden;
    vertical-align: middle;
    margin-top: 0.5em; }
  #Main .container#CompanyContents .message .CEO_sign img {
    vertical-align: baseline;
    margin: 0px 0 -2px 15px; }
#Main .container#CompanyContents .foot_contents {
  background: #eff9ff; }
  #Main .container#CompanyContents .foot_contents li {
    list-style: none; }
    #Main .container#CompanyContents .foot_contents li a {
      color: #333;
      text-decoration: none;
      background: url(../images/base/allow_c_right_w.png) left center no-repeat;
      font-size: 1.1em;
      line-height: 1.4em;
      padding: 0.2em 0 0.2em 35px; }
      #Main .container#CompanyContents .foot_contents li a:hover {
        color: #3162a6;
        background: url(../images/base/allow_c_right_b.png) left center no-repeat; }
  #Main .container#CompanyContents .foot_contents .row {
    margin-bottom: 0; }
  #Main .container#CompanyContents .foot_contents p {
    /* margin-bottom:0; */ }
  #Main .container#CompanyContents .foot_contents .syozokudantai {
    background: #fff;
    border-radius: 4px;
    padding: 15px; }
    #Main .container#CompanyContents .foot_contents .syozokudantai h4 {
      font-size: 1em;
      font-weight: bold;
      margin-bottom: 0.5em; }
    #Main .container#CompanyContents .foot_contents .syozokudantai ul {
      margin-bottom: 0;
      font-size: 0.9em;
      margin-left: 1em; }
      #Main .container#CompanyContents .foot_contents .syozokudantai ul li {
        margin-bottom: 0.1em;
        list-style: disc outside; }
#Main .container#CompanyContents .company-data {
  border-bottom: 1px solid #ccc; }
  #Main .container#CompanyContents .company-data:last-child {
    border-bottom: none; }
#Main .container#CompanyContents #GoogleMap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden; }
  #Main .container#CompanyContents #GoogleMap iframe,
  #Main .container#CompanyContents #GoogleMap object,
  #Main .container#CompanyContents #GoogleMap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
#Main .VisionPurple {
  border-color: #85709b; }
#Main .VisionBlue {
  border-color: #b9e1d2; }
#Main .VisionGreen {
  border-color: #d3e49b; }
#Main .VisionRed {
  border-color: #e8aca3; }
#Main .VisionOrange {
  border-color: #efcea6; }
#Main .container#CompanyContents .Vision h3 {
  margin-bottom: 0;
  letter-spacing: 3px;
  text-transform: uppercase; }
  #Main .container#CompanyContents .Vision h3.VisionPurple {
    border-color: #ccb3e6;
    color: #85709b; }
  #Main .container#CompanyContents .Vision h3.VisionBlue {
    border-color: #b9e1d2;
    color: #7dbda5; }
  #Main .container#CompanyContents .Vision h3.VisionGreen {
    border-color: #d3e49b;
    color: #9eb74c; }
  #Main .container#CompanyContents .Vision h3.VisionRed {
    border-color: #e8aca3;
    color: #cc8a80; }
  #Main .container#CompanyContents .Vision h3.VisionOrange {
    border-color: #efcea6;
    color: #caa375; }
#Main .container#CompanyContents .Customer ul {
  margin-left: 2em;
  margin-bottom: 3em; }
  #Main .container#CompanyContents .Customer ul li {
    margin-bottom: 0em;
    list-style: disc; }
#Main .container#CompanyContents .Customer h4 {
  margin-bottom: 0.5em;
  border-left: 7px solid;
  padding-left: 0.5em;
  border-color: #69c4ed; }

@media (max-width: 480px) {
  #Main .container#CompanyContents .SubNav {
    display: none; }
  #Main .container#CompanyContents .foot_contents li a {
    display: block;
    font-size: 1em;
    line-height: 1.2em; }
  #Main .container#CompanyContents .foot_contents .columns {
    margin-bottom: 2em; }
    #Main .container#CompanyContents .foot_contents .columns:last-child {
      margin-bottom: 0em; } }
/* company-data */
/* vision */
/* Customer */
/* other–––––––––––––––––––––––––––––––––––––––––––––––––– */
body.single header .HeadVisualArea {
  background-image: url(../images/base/bigcatch-bg.png); }
body#other header .HeadVisualArea {
  background-image: url(../images/base/bigcatch-bg.png); }
body#other #Main .container.NewsList h2 {
  margin-left: -31px;
  border-left: none !important;
  font-size: 1.4em !important;
  padding-left: 28px; }
  body#other #Main .container.NewsList h2 img {
    vertical-align: middle;
    padding-right: 10px;
    margin-top: -4px; }
body#other #Main .container.NewsList .AttentionRed {
  margin: 0 0 1em 0; }
body#other #Main .container.NewsList #TopNews ul {
  margin: 0 auto;
  padding: 0;
  text-align: left;
  display: inline-block;
  overflow: hidden;
  padding-bottom: 0.5em;
  margin-bottom: 1em; }
  body#other #Main .container.NewsList #TopNews ul li {
    margin: 0 3% 0 0;
    width: 31.33%;
    text-align: left;
    float: left;
    display: inline;
    overflow: hidden;
    height: auto;
    padding: 0; }
    body#other #Main .container.NewsList #TopNews ul li:last-child {
      margin: 0 0% 0 0; }
    body#other #Main .container.NewsList #TopNews ul li img {
      width: 100%;
      float: left;
      margin-bottom: 1em;
      border-radius: 4px; }
    body#other #Main .container.NewsList #TopNews ul li dl,
    body#other #Main .container.NewsList #TopNews ul li dt,
    body#other #Main .container.NewsList #TopNews ul li dd {
      color: #666;
      margin-left: 0; }
    body#other #Main .container.NewsList #TopNews ul li dl {
      margin: 0 auto 0.5em; }
    body#other #Main .container.NewsList #TopNews ul li dt {
      font-size: 0.9em; }
    body#other #Main .container.NewsList #TopNews ul li dd {
      font-size: 1em;
      color: #333; }
    body#other #Main .container.NewsList #TopNews ul li a {
      color: #333;
      text-decoration: none; }
      body#other #Main .container.NewsList #TopNews ul li a .img-box-text {
        font-size: 12px !important;
        line-height: 16px; }
    body#other #Main .container.NewsList #TopNews ul li:hover {
      background: #f6f6f6;
      box-shadow: 0 1px 6px #e8e8e8; }
  body#other #Main .container.NewsList #TopNews ul:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden; }
body#other #Main .container.NewsList h3 {
  margin: 1em 0 0; }
body#other #Main .container.NewsList .tbl-common01 {
  margin: 0 0 2em;
  border-top: none; }
  body#other #Main .container.NewsList .tbl-common01 dt,
  body#other #Main .container.NewsList .tbl-common01 dd {
    padding: 5px 15px; }
  body#other #Main .container.NewsList .tbl-common01 dt {
    padding-left: 0; }
body#other .Sitemap ul {
  list-style: none; }
  body#other .Sitemap ul a {
    text-decoration: none;
    color: #666; }
  body#other .Sitemap ul > li {
    border-top: 1px solid; }
    body#other .Sitemap ul > li > ul > li {
      border-top: none; }

/* ClearFixElements */
@media (max-width: 480px) {
  body#other #Main .container.NewsList #TopNews {
    margin: 0 auto;
    text-align: left;
    width: 100%; }
    body#other #Main .container.NewsList #TopNews h2 {
      text-align: left;
      font-size: 1.2em;
      border-left: none !important;
      padding-left: 60px !important;
      margin-left: 0px !important;
      position: static;
      margin-top: 20px;
      background-position: 14px 0; }
    body#other #Main .container.NewsList #TopNews ul li {
      margin: 0 0 10px 0;
      width: 92% !important;
      float: none;
      display: block;
      height: auto;
      padding: 4%;
      border-bottom: 1px solid #ccc; }
      body#other #Main .container.NewsList #TopNews ul li img {
        width: 100%;
        float: none;
        margin-bottom: 1em; } }
@media (max-width: 480px) {
  body#other #Main .container.NewsList .tbl-common01 dt {
    padding: 0 5px;
    font-size: 0.8em; }
  body#other #Main .container.NewsList .tbl-common01 dd {
    padding: 5px 0;
    font-size: 0.8em; } }
/* Footer–––––––––––––––––––––––––––––––––––––––––––––––––– */
footer {
  overflow: hidden;
  display: block;
  background: #3162a6;
  color: #fff;
  padding: 0px 5%; }
  footer a {
    color: #fff;
    text-decoration: none; }
  footer #Copyright {
    float: left;
    font-size: 12px;
    line-height: 69px; }
  footer #FooterNavArea {
    float: left;
    margin-left: 4%; }
    footer #FooterNavArea li {
      float: left;
      list-style: none;
      font-size: 12px;
      line-height: 69px;
      margin-bottom: 0; }
      footer #FooterNavArea li:after {
        content: "｜";
        padding: 0 10px; }
      footer #FooterNavArea li:last-child:after {
        content: ""; }
  footer #Pagetop {
    float: right;
    overflow: hidden;
    display: block; }
    footer #Pagetop a {
      background: #69c4ed;
      display: block;
      overflow: hidden;
      padding: 10px; }

@media screen and (max-width: 480px) {
  footer {
    padding: 20px 0; }
    footer #Copyright {
      float: none;
      font-size: 12px;
      line-height: 20px;
      text-align: center; }
    footer #FooterNavArea {
      float: none;
      margin-left: 0%;
      clear: both;
      display: block;
      width: 100%;
      text-align: center; }
      footer #FooterNavArea li {
        float: none;
        line-height: 20px;
        display: inline;
        text-align: center; }
    footer #Pagetop {
      float: none;
      overflow: hidden;
      display: block;
      clear: both; }
      footer #Pagetop a {
        text-align: center;
        width: 100%;
        padding: 10px 0; } }
/*Module–––––––––––––––––––––––––––––––––––––––––––––––––– */
.AttentionRed {
  color: #f44336; }

/* dl-------------------------------------------------- */
@media only screen and (max-width: 570px) {
  .tbl-common01 dt,
  .tbl-common01 dd {
    padding: 8px 20px; }
  .tbl-common01 dt {
    float: none;
    background-color: #f1f1f1;
    padding: 1px 15px; }

  #TopTopics .tbl-common01 dt span {
    display: none; }

  .tbl-common01 dd {
    border-top: 1px solid #d1d1d1;
    border-bottom: 1px solid #d1d1d1;
    margin: 0;
    padding: 10px 15px 10px;
    font-size: 0.8em; } }
@media only screen and (min-width: 571px) {
  .tbl-common01 {
    margin: 0;
    border-top: 1px solid #d1d1d1; }
    .tbl-common01 dt,
    .tbl-common01 dd {
      padding: 15px; }
    .tbl-common01 dt {
      clear: both;
      float: left;
      width: 80px;
      margin: 0;
      color: #888;
      padding-left: 0; }
    .tbl-common01 dd {
      padding-left: 90px;
      border-bottom: 1px dotted #c4c4c4;
      margin: 0; }

  #TopTopics .tbl-common01 dt {
    width: 150px; }
    #TopTopics .tbl-common01 dt span {
      float: left;
      padding: 0 10px 0px 0;
      display: block;
      font-size: 1px;
      line-height: 1px;
      font-size: 1px;
      line-height: 1px;
      margin: 0;
      max-width: 100%;
      height: auto; }
      #TopTopics .tbl-common01 dt span a,
      #TopTopics .tbl-common01 dt span img {
        font-size: 1px;
        line-height: 1px;
        font-size: 1px;
        line-height: 1px;
        margin: 0;
        max-width: 100%;
        height: auto; }
  #TopTopics .tbl-common01 dd {
    padding-left: 160px;
    min-height: 38px; } }
/* blog */
#Main #blog.container {
  width: 1000px; }
  #Main #blog.container .other {
    padding: 30px; }
#Main .container .recruit h2 {
  margin-left: -31px;
  border-left: 0px;
  padding-left: 0px;
  color: #014099;
  margin-right: -31px; }
  #Main .container .recruit h2 img {
    width: 100%; }

/* CaseStudyDetail */
/* Recruit */
table.dataTable {
  margin: 10px auto 20px;
  background: #fff; }

.dataTable th {
  background: #014099;
  border: solid 1px #f9f9f9;
  color: #fff;
  padding: 10px;
  word-break: keep-all; }
.dataTable td {
  border-bottom: 1px solid #ccc; }

@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%; }

  .dataTable {
    /* width: 80%; */ }
    .dataTable th,
    .dataTable td {
      border-bottom: none;
      display: block;
      width: 90%;
      padding: 2% 5%; } }
.history-table span {
  font-size: 0.9em; }
  .history-table span::before {
    content: "（"; }
  .history-table span::after {
    content: "）"; }

/* 2021add */
.jirei-map {
  padding: 30px;
  max-width: 940px;
  margin: auto; }
  .jirei-map .jirei-tab ul {
    display: flex;
    list-style: none; }
    .jirei-map .jirei-tab ul li {
      width: 50%; }
      .jirei-map .jirei-tab ul li a {
        width: calc(100% - 2px);
        background: #3262a6;
        border: 1px solid #3262a6;
        display: block;
        width: 100%;
        padding: 15px 0;
        text-align: center;
        font-size: 1.1em;
        font-weight: bold;
        text-decoration: none; }
      .jirei-map .jirei-tab ul li span {
        width: calc(100% - 2px);
        background: #3262a6;
        border: 1px solid #3262a6;
        display: block;
        width: 100%;
        padding: 15px 0;
        text-align: center;
        font-size: 1.1em;
        font-weight: bold;
        text-decoration: none;
        background: #3262a6 url(../images/casestudy/jisseki-arrow-top@2x.png) bottom center no-repeat;
        background-size: 8px 7px;
        color: #fff; }
      .jirei-map .jirei-tab ul li a {
        background: #f5f5f5;
        border: 1px solid #69c4ed;
        color: #3262a6; }
        .jirei-map .jirei-tab ul li a:hover {
          background: #69c4ed;
          border: 1px solid #3262a6;
          color: #fff; }
  .jirei-map .map-japan {
    width: 100%;
    min-height: 480px;
    background: url(../images/casestudy/kokunai-map@2x.png) top 40px right no-repeat;
    background-size: 71%;
    position: relative; }
  .jirei-map .map-overseas {
    width: 100%;
    min-height: 480px;
    background: url(../images/casestudy/kaigai-map@2x.png) top 25px center no-repeat;
    background-size: 90%;
    position: relative; }
  .jirei-map .map-japan .note,
  .jirei-map .map-overseas .note {
    border: 2px solid #d5d5d5;
    padding: 0 20px;
    border-radius: 10px;
    background: #fff;
    z-index: 10;
    max-width: 460px;
    position: absolute;
    top: 0;
    left: 0; }
  .jirei-map .map-japan .note ul,
  .jirei-map .map-overseas .note ul {
    list-style: none;
    margin: 0 auto;
    padding: 0; }
  .jirei-map .map-japan .note ul li,
  .jirei-map .map-overseas .note ul li {
    margin: 1em auto;
    padding: 0; }
  .jirei-map .map-japan .note ul li img,
  .jirei-map .map-overseas .note ul li img {
    display: block; }
  .jirei-map .map-japan .map-japan--plot,
  .jirei-map .map-overseas .map-overseas--plot {
    margin: 0;
    padding: 0; }
  .jirei-map .map-japan .map-japan--plot ul,
  .jirei-map .map-overseas .map-overseas--plot ul {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    position: relative; }
  .jirei-map .map-japan .map-japan--plot ul li,
  .jirei-map .map-overseas .map-overseas--plot ul li {
    margin: 0;
    padding: 0;
    position: absolute; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-1 {
    right: 0;
    top: 54px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-2 {
    right: 24px;
    top: 145px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-3 {
    right: 24px;
    top: 222px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-4 {
    right: 160px;
    top: 287px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-5 {
    right: 269px;
    top: 353px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-6 {
    right: 120px;
    top: 423px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-7 {
    left: 122px;
    top: 174px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-8 {
    left: 83px;
    top: 245px; }
  .jirei-map .map-japan .map-japan--plot ul li.plot-9 {
    left: 0;
    top: 326px; }
  .jirei-map .map-overseas .map-overseas--plot ul li.click {
    cursor: pointer; }
    .jirei-map .map-overseas .map-overseas--plot ul li.click img:hover {
      filter: saturate(200%);
      opacity: 0.7; }
  .jirei-map .map-overseas .map-overseas--plot ul li.plot-1 {
    left: 60px;
    top: 144px; }
  .jirei-map .map-overseas .map-overseas--plot ul li.plot-2 {
    left: 24px;
    top: 235px; }
  .jirei-map .map-overseas .map-overseas--plot ul li.plot-3 {
    left: 344px;
    top: 392px; }
  .jirei-map .map-overseas .map-overseas--plot ul li.plot-4 {
    right: 220px;
    top: 277px; }
  .jirei-map .map-overseas .map-overseas--plot ul li.plot-5 {
    right: 0;
    top: 163px; }
  .jirei-map .map-overseas .map-overseas--plot ul li.plot-6 {
    right: 0;
    top: 323px; }
  .jirei-map .jirei-pdf-link {
    margin-top: 30px; }
    .jirei-map .jirei-pdf-link ul {
      display: flex;
      justify-content: center;
      list-style: none; }
      .jirei-map .jirei-pdf-link ul li {
        margin: 1rem; }
        .jirei-map .jirei-pdf-link ul li a {
          display: block;
          display: flex;
          text-decoration: none;
          color: #111;
          font-weight: bold;
          padding: 15px 20px;
          border: 1px solid #f44336; }
          .jirei-map .jirei-pdf-link ul li a:hover {
            border-color: #3262a6;
            color: #3262a6; }
          .jirei-map .jirei-pdf-link ul li a img {
            display: block;
            margin: 0 0 0 5px; }

/* overseas plot */
@media screen and (max-width: 480px) {
  .jirei-map {
    padding: 10px; }
    .jirei-map .map-japan .note,
    .jirei-map .map-overseas .note {
      border: none;
      padding: 0;
      background: none;
      max-width: 100%;
      position: static; }
    .jirei-map .map-japan .note ul li img,
    .jirei-map .map-overseas .note ul li img {
      max-height: 30px; }
    .jirei-map .jirei-tab ul li a,
    .jirei-map .jirei-tab ul li span {
      font-size: 14px; }
    .jirei-map .map-overseas {
      background: url(../images/casestudy/kaigai-map@2x.png) top 45px center no-repeat;
      background-size: 100%;
      min-height: auto; }
    .jirei-map .map-japan .map-japan--plot ul li,
    .jirei-map .map-overseas .map-overseas--plot ul li {
      position: static;
      text-align: center;
      width: 46%;
      align-items: center;
      display: flex;
      justify-content: right;
      padding: 2%; }
    .jirei-map .map-japan .map-japan--plot ul li {
      justify-content: left; }
      .jirei-map .map-japan .map-japan--plot ul li img {
        max-height: 33px !important; }
    .jirei-map .map-overseas .map-overseas--plot ul li img {
      max-height: 33px !important;
      max-height: 43px !important; }
    .jirei-map .map-japan .map-japan--plot ul,
    .jirei-map .map-overseas .map-overseas--plot ul {
      padding-top: 150px;
      display: flex;
      flex-wrap: wrap; }
    .jirei-map .map-japan {
      min-height: auto;
      position: relative;
      background: url(../images/casestudy/kokunai-map@2x.png) top 89px right no-repeat;
      background-size: 72%; }
      .jirei-map .map-japan .map-japan--plot ul {
        padding-top: 160px; }
    .jirei-map .jirei-pdf-link ul {
      display: block;
      width: auto; }
      .jirei-map .jirei-pdf-link ul li a {
        padding: 10px 15px;
        font-size: 12px;
        width: auto;
        text-align: center;
        justify-content: center;
        align-items: center; } }
