@charset "UTF-8";
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

.gsc-clear-button {
  display: none !important; }

form.gsc-search-box {
  margin-bottom: 0 !important; }

table.gsc-search-box td.gsc-input {
  padding-right: 0 !important; }

.cse input.gsc-search-button, input.gsc-search-button,
.cse button.gsc-search-button, button.gsc-search-button {
  border: none !important;
  background: url(../img/icon_search.png) center center no-repeat #285ccf !important;
  width: 29px !important;
  height: 27px !important;
  min-width: auto !important;
  text-indent: -9999px;
  overflow: hidden; }

input.gsc-input {
  padding: 0 6px !important; }

.gsib_a {
  padding: 0 !important; }

.cse .gsc-control-cse, .gsc-control-cse {
  padding: 0 !important; }

.cse .gsc-search-button-v2, .gsc-search-button-v2 {
  padding: 0 !important; }

.gsib_b {
  width: 1px !important; }

div.gsc-input-box {
  height: 27px !important; }

.gsc-search-box .gsc-input > input:focus,
.gsc-input-box-focus {
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important; }

/* -------------------------------------------------------------------------*/
/* COMMON COLORS
/* -------------------------------------------------------------------------*/
.clr-red {
  color: #ef0000; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* MIXIN / ARGUMENT / COMMON CLASS
/* -------------------------------------------------------------------------*/
.default_ftz, body {
  font-size: 18px;
  font-size: 1.125rem; }
  @media only screen and (max-width: 980px) {
    .default_ftz, body {
      font-size: 16px;
      font-size: 1rem; } }

.text_out, #HD #HD_logo {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap; }

.mincho, .cnt_block .cmp_signature {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif; }

.uiFont {
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Meiryo UI', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif; }

.clearfix:after, #CNT_area:after {
  content: "";
  clear: both;
  display: block; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* MIXIN / ARGUMENT / COMMON CLASS
/* -------------------------------------------------------------------------*/
.fixed_area, #PG_kv, .pankuzu, #CNT_area, #cnt_404 {
  max-width: 1200px;
  padding: 0 25px;
  margin: 0 auto; }
  @media only screen and (max-width: 980px) {
    .fixed_area, #PG_kv, .pankuzu, #CNT_area, #cnt_404 {
      padding: 0 15px; } }

.tel_link_sp {
  display: none !important; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* FONT
/* -------------------------------------------------------------------------*/
body {
  font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* COMMON / BASE
/* -------------------------------------------------------------------------*/
html {
  font-size: 100%;
  line-height: 1.5em; }
  @media print {
    html {
      width: 1000px !important; } }

* {
  box-sizing: border-box; }

img {
  vertical-align: bottom; }

body {
  margin: 0;
  padding: 0; }

a {
  text-decoration: none;
  color: #006bc6; }
  a:hover {
    text-decoration: underline; }

.def_cntSize {
  max-width: 1150px;
  margin: 0 auto;
  overflow: hidden;
  position: relative; }

.def_cntSize2 {
  max-width: 950px;
  padding: 0 15px;
  margin: 0 auto;
  overflow: hidden;
  position: relative; }

.text_out, #HD #HD_logo {
  text-indent: 100%;
  overflow: hidden;
  line-height: 1; }

.algn_r {
  text-align: right; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* HD
/* -------------------------------------------------------------------------*/
#HD {
  position: relative; }
  #HD::before {
    content: ' ';
    display: block;
    width: 1px;
    height: 90px; }
  #HD #HD_logo {
    position: absolute;
    top: 17px;
    left: 20px;
    margin: 0;
    padding: 0; }
    #HD #HD_logo a {
      display: block;
      width: 366px;
      height: 55px;
      background: url(../img/hd_logo.png) 0 0 no-repeat; }
  #HD #HD_smenu {
    position: absolute;
    top: 45px;
    right: 210px;
    list-style: none;
    margin: 0;
    padding: 0; }
    #HD #HD_smenu li {
      display: inline-block; }
      #HD #HD_smenu li a {
        display: block;
        text-decoration: none; }
    #HD #HD_smenu .link_contact, #HD #HD_smenu .link_sitemap {
      font-size: 12px;
      font-size: 0.75rem; }
      #HD #HD_smenu .link_contact a, #HD #HD_smenu .link_sitemap a {
        padding: 0 5px;
        line-height: 1;
        color: #000; }
        #HD #HD_smenu .link_contact a::before, #HD #HD_smenu .link_sitemap a::before {
          content: ' ';
          display: inline-block;
          vertical-align: middle;
          margin-right: 5px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 3px 0 3px 4px;
          border-color: transparent transparent transparent #0088ff; }
        #HD #HD_smenu .link_contact a:hover, #HD #HD_smenu .link_sitemap a:hover {
          text-decoration: underline; }
    #HD #HD_smenu .link_contact {
      border-right: 1px solid #dedede;
      padding-right: 3px; }
    #HD #HD_smenu .link_support a {
      font-size: 13px;
      font-size: 0.8125rem;
      padding: 8px 15px 6px;
      line-height: 1;
      color: #fff;
      background-color: #0f3da2;
      border-radius: 5px;
      transition: background 0.2s ease; }
      #HD #HD_smenu .link_support a:hover {
        background-color: #2e83e6; }
  #HD #HD_searchBox {
    position: absolute;
    top: 45px;
    right: 10px;
    width: 180px;
    height: 28px;
    overflow: hidden; }
  #HD #HD_ipv {
    position: absolute;
    top: 14px;
    right: 170px;
    width: 117px;
    height: 20px;
    overflow: hidden; }
    #HD #HD_ipv iframe {
      margin: 0;
      padding: 0; }
  #HD #HD_group {
    position: absolute;
    top: 13px;
    right: 10px;
    line-height: 1; }
    #HD #HD_group a {
      transition: all 0.1s ease; }
      #HD #HD_group a:hover {
        opacity: 0.5; }
  #HD #NV {
    width: 100%;
    background-color: #f4f7f6;
    border: 1px solid #e6eaea;
    border-left: none;
    border-right: none; }
    #HD #NV ul {
      margin: 0 auto;
      padding: 0;
      overflow: hidden;
      max-width: 1150px;
      list-style: none;
      font-size: 0;
      border-right: 1px solid #e6eaea;
      background-image: url(../img/nv_logo.png);
      background-position: 9px -300px;
      background-repeat: no-repeat; }
    #HD #NV li {
      font-size: 14px;
      font-size: 0.875rem;
      float: left;
      display: table;
      margin: 0;
      padding: 4px;
      border-left: 1px solid #e6eaea; }
      #HD #NV li a {
        display: table-cell;
        height: 50px;
        text-align: center;
        vertical-align: middle;
        font-weight: bold;
        color: #000;
        text-decoration: none;
        line-height: 1;
        transition: background 0.3s ease; }
        #HD #NV li a::before {
          content: ' ';
          display: inline-block;
          width: 25px;
          height: 25px;
          margin: 0 5px 5px -10px;
          vertical-align: middle;
          background-image: url(../img/hd_icon.png);
          background-repeat: no-repeat; }
        #HD #NV li a:hover {
          background-color: #d5e8f8; }
      #HD #NV li:nth-child(1) a {
        font-size: 0; }
        #HD #NV li:nth-child(1) a::before {
          margin: 0 0 5px 0; }
      .ctg_home #HD #NV li:nth-child(1) a {
        background-color: #0f3da2; }
        .ctg_home #HD #NV li:nth-child(1) a::before {
          background-position: -25px 0; }
      .ctg_service #HD #NV li:nth-child(2) a {
        background-color: #0f3da2;
        color: #fff; }
        .ctg_service #HD #NV li:nth-child(2) a::before {
          background-position: -25px -25px; }
      .ctg_case #HD #NV li:nth-child(3) a {
        background-color: #0f3da2;
        color: #fff; }
        .ctg_case #HD #NV li:nth-child(3) a::before {
          background-position: -25px -125px; }
      .ctg_solution #HD #NV li:nth-child(4) a {
        background-color: #0f3da2;
        color: #fff; }
        .ctg_solution #HD #NV li:nth-child(4) a::before {
          background-position: -25px -175px; }
      .ctg_workshop #HD #NV li:nth-child(5) a {
        background-color: #0f3da2;
        color: #fff; }
        .ctg_workshop #HD #NV li:nth-child(5) a::before {
          background-position: -25px -50px; }
      .ctg_company #HD #NV li:nth-child(6) a {
        background-color: #0f3da2;
        color: #fff; }
        .ctg_company #HD #NV li:nth-child(6) a::before {
          background-position: -25px -75px; }
      .ctg_recruit #HD #NV li:nth-child(7) a {
        background-color: #0f3da2;
        color: #fff; }
        .ctg_recruit #HD #NV li:nth-child(7) a::before {
          background-position: -25px -100px; }
      #HD #NV li:nth-child(1) {
        width: 7.13043%; }
      #HD #NV li:nth-child(3), #HD #NV li:nth-child(2), #HD #NV li:nth-child(4), #HD #NV li:nth-child(5), #HD #NV li:nth-child(6), #HD #NV li:nth-child(7) {
        width: 15.30435%; }
      #HD #NV li:nth-child(1) a::before {
        background-position: 0 0; }
      #HD #NV li:nth-child(2) a::before {
        background-position: 0 -25px; }
      #HD #NV li:nth-child(3) a::before {
        background-position: 0 -125px; }
      #HD #NV li:nth-child(4) a::before {
        background-position: 0 -175px; }
      #HD #NV li:nth-child(5) a::before {
        background-position: 0 -50px; }
      #HD #NV li:nth-child(6) a::before {
        background-position: 0 -75px; }
      #HD #NV li:nth-child(7) a::before {
        background-position: 0 -100px; }
    .fixedMenu #HD #NV {
      position: fixed;
      top: 0;
      left: 0;
      z-index: 1000;
      box-shadow: 0 0 7px rgba(0, 0, 0, 0.3); }
      .fixedMenu #HD #NV ul {
        padding-left: 60px;
        background-position: 9px 8px;
        transition: all 0.4s ease; }
      .fixedMenu #HD #NV li a {
        height: 32px; }

.fixedMenu #HD {
  margin-bottom: 80px; }

#ufo25_top {
  position: absolute;
  content: '';
  display: block;
  width: 470x;
  height: 90px;
  top: 0;
  left: 390px;
  z-index: -1; }
  #ufo25_top img {
    max-width: 100%;
    height: auto; }
  @media only screen and (max-width: 980px) {
    #ufo25_top {
      width: 340px;
      height: 70px;
      top: 0;
      left: 310px; } }

#ufo25 {
  position: absolute;
  content: '';
  display: block;
  width: 100px;
  height: 90px;
  top: 0;
  left: 390px;
  background: url(../img/ufo_25_2.png) 0 0 no-repeat;
  background-size: auto 100%;
  z-index: -1; }
  @media only screen and (max-width: 980px) {
    #ufo25 {
      width: 84px;
      height: 70px;
      top: 0;
      left: 310px; } }

@media only screen and (max-width: 980px) {
  #HD #HD_logo {
    top: 10px;
    left: 10px; }
    #HD #HD_logo a {
      width: 300px;
      height: 45px;
      background-size: 100% auto; }
  #HD #HD_smenu {
    top: 55px;
    right: 170px; }
    #HD #HD_smenu .link_contact, #HD #HD_smenu .link_sitemap {
      font-size: 11px;
      font-size: 0.6875rem; }
    #HD #HD_smenu .link_support a {
      font-size: 11px;
      font-size: 0.6875rem;
      padding: 5px 10px 4px;
      border-radius: 3px; }
  #HD #HD_searchBox {
    top: 55px;
    right: 10px;
    width: 150px;
    height: 28px; }
  #HD #NV ul {
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
    list-style: none;
    font-size: 0;
    border-right: 1px solid #e6eaea; }
  #HD #NV li {
    font-size: 12px;
    font-size: 0.75rem; }
    #HD #NV li a {
      display: table-cell;
      height: 40px;
      text-align: center;
      vertical-align: middle;
      font-weight: bold;
      color: #000;
      text-decoration: none;
      transition: all 0.3s ease; }
      #HD #NV li a::before {
        display: block;
        margin: 0 auto 2px; }
    #HD #NV li:nth-child(1) a::before {
      display: block;
      margin: 0 auto 2px; } }

@media only screen and (max-width: 790px) {
  #HD #NV li {
    font-size: 10px;
    font-size: 0.625rem; } }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* TOP
/* -------------------------------------------------------------------------*/
#TP_kv_area {
  position: relative;
  padding-top: 57.89474%;
  overflow: hidden; }
  #TP_kv_area::after {
    position: absolute;
    left: 0;
    bottom: 9%;
    content: ' ';
    display: block;
    width: 100%;
    height: 80px;
    background: url(../../img/kv/town.png) center top repeat-x; }
  #TP_kv_area .bx-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
  #TP_kv_area .bx-viewport {
    height: 500px !important; }
  #TP_kv_area #slider {
    display: none;
    position: relative;
    width: 100%;
    padding-top: 52.63158%;
    margin: 0; }
  #TP_kv_area #slider_back {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 52.63158%;
    background: url(../../img/kv/kv_bc_blur.jpg) left bottom no-repeat;
    background-size: 100% auto; }
  #TP_kv_area #slider_back_0 {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 52.63158%;
    background: url(../../img/kv/kv1_sky.jpg) left bottom no-repeat;
    background-size: 100% auto; }
  #TP_kv_area #slider li {
    display: block;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    width: 100% !important;
    height: 500px; }
  #TP_kv_area #slider li span {
    position: relative;
    display: block;
    width: 950px;
    height: 400px;
    margin: 35px auto 0;
    background-position: 0 0;
    background-repeat: no-repeat; }
  #TP_kv_area #slider li.list_1 span {
    background-image: url(../../img/kv/pic_0.jpg); }
  #TP_kv_area #slider li.list_2 span {
    background-image: url(../../img/kv/pic_1.jpg); }
  #TP_kv_area #slider li.list_3 span {
    background-image: url(../../img/kv/pic_2.jpg); }
  #TP_kv_area #slider li.list_4 span {
    background-image: url(../../img/kv/pic_3.jpg); }
  #TP_kv_area #slider li.list_7 span {
    background-image: url(../../img/kv/pic_4.jpg); }
  #TP_kv_area #slider li.list_vcube span {
    background-image: url(../../img/kv/pic_vcube.jpg); }
  #TP_kv_area #slider li.list_lanscope span {
    background-image: url(../../img/kv/pic_lanscope.jpg); }
  #TP_kv_area #slider li a {
    position: absolute;
    display: block;
    outline: none;
    top: 0;
    left: 0;
    -webkit-tap-highlight-color: transparent; }
  #TP_kv_area #slider li.list_1 a:nth-child(1) {
    margin-top: 25.57895%;
    margin-left: 4.73684%; }
  #TP_kv_area #slider li.list_1 a:nth-child(2) {
    margin-top: 31.36842%;
    margin-left: 4.73684%; }
  #TP_kv_area #slider li.list_2 a,
  #TP_kv_area #slider li.list_3 a {
    margin-top: 25.57895%;
    margin-left: 4.73684%; }
  #TP_kv_area #slider li.list_4 a {
    margin-top: 29.78947%;
    margin-left: 4.73684%; }
  #TP_kv_area #slider li.list_7 a {
    margin-top: 23.47368%;
    margin-left: 4.73684%; }
  #TP_kv_area #slider li.list_vcube a {
    margin-top: 31.78947%;
    margin-left: 3.78947%; }
  #TP_kv_area #slider li.list_lanscope a {
    margin-top: 31.78947%;
    margin-left: 3.78947%; }
  #TP_kv_area .pager {
    position: absolute;
    width: 100%;
    bottom: 0px; }
    #TP_kv_area .pager #bx-pager {
      list-style: none;
      margin: 0;
      padding: 0;
      text-align: center;
      font-size: 0; }
      #TP_kv_area .pager #bx-pager li {
        display: inline-block;
        margin: 0 3px; }
        #TP_kv_area .pager #bx-pager li a {
          display: block;
          width: 15px;
          height: 15px;
          border-radius: 10px;
          text-indent: -9999px;
          overflow: hidden;
          background-color: #cdd9dc; }
          #TP_kv_area .pager #bx-pager li a.active {
            background-color: #0f3da2; }

#TP_kv_1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  background-color: #41aeef;
  overflow: hidden; }
  #TP_kv_1::before {
    position: absolute;
    left: 0;
    bottom: -15.5%;
    content: ' ';
    display: block;
    width: 100%;
    padding-top: 60.86957%;
    background: url(../../img/kv/kv1_sky.jpg) 0 0 no-repeat;
    background-size: 100% auto;
    z-index: 0;
    transition: all 4s ease-out; }
  #TP_kv_1.kv_move::before {
    bottom: 0; }
  #TP_kv_1 .wrapper {
    position: relative;
    width: 1150px;
    padding-top: 52.63158%;
    margin: 0 auto;
    overflow: hidden; }
  #TP_kv_1 .animation {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    padding-top: 500px; }
  #TP_kv_1 p.title {
    position: absolute;
    top: 9.7%;
    width: 100%;
    margin: 0;
    padding: 87px 0 0;
    overflow: hidden;
    text-indent: -9999px;
    background: url(../../img/kv/catch.png) center top no-repeat;
    background-size: auto 100%;
    line-height: 0;
    display: none; }
  #TP_kv_1 ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  #TP_kv_1 li {
    margin: 0;
    padding: 0;
    position: absolute; }
    #TP_kv_1 li img {
      width: 100%;
      height: auto;
      transition: all 0.5s ease;
      opacity: 0; }
    #TP_kv_1 li.anime_on img {
      opacity: 1; }
    #TP_kv_1 li:nth-child(1) {
      width: 1.0%;
      top: 34.0%;
      left: 1.2%; }
    #TP_kv_1 li:nth-child(2) {
      width: 1.3%;
      top: 34.0%;
      left: 2.7%; }
    #TP_kv_1 li:nth-child(3) {
      width: 2.3%;
      top: 39.8%;
      left: 2.5%; }
    #TP_kv_1 li:nth-child(4) {
      width: 1.9%;
      top: 44.5%;
      left: 4.3%; }
    #TP_kv_1 li:nth-child(5) {
      width: 1.9%;
      top: 41.8%;
      left: 5.8%; }
    #TP_kv_1 li:nth-child(6) {
      width: 3.5%;
      top: 46.5%;
      left: 6.3%; }
    #TP_kv_1 li:nth-child(7) {
      width: 2.6%;
      top: 42.5%;
      left: 8.6%; }
    #TP_kv_1 li:nth-child(8) {
      width: 4.2%;
      top: 49.5%;
      left: 9.0%; }
    #TP_kv_1 li:nth-child(9) {
      width: 1.7%;
      top: 45.4%;
      left: 11.5%; }
    #TP_kv_1 li:nth-child(10) {
      width: 2.2%;
      top: 51.2%;
      left: 13.0%; }
    #TP_kv_1 li:nth-child(11) {
      width: 2.4%;
      top: 45.6%;
      left: 13.7%; }
    #TP_kv_1 li:nth-child(12) {
      width: 2.0%;
      top: 54.4%;
      left: 14.6%; }
    #TP_kv_1 li:nth-child(13) {
      width: 2.4%;
      top: 49.8%;
      left: 15.8%; }
    #TP_kv_1 li:nth-child(14) {
      width: 2.2%;
      top: 45.4%;
      left: 17.0%; }
    #TP_kv_1 li:nth-child(15) {
      width: 2.8%;
      top: 37.8%;
      left: 17.0%; }
    #TP_kv_1 li:nth-child(16) {
      width: 4.6%;
      top: 43.6%;
      left: 18.8%; }
    #TP_kv_1 li:nth-child(17) {
      width: 2.3%;
      top: 37.8%;
      left: 20.5%; }
    #TP_kv_1 li:nth-child(18) {
      width: 2.5%;
      top: 35.8%;
      left: 22.5%; }
    #TP_kv_1 li:nth-child(19) {
      width: 3.5%;
      top: 41.8%;
      left: 23.8%; }
    #TP_kv_1 li:nth-child(20) {
      width: 3.4%;
      top: 33.1%;
      left: 25.2%; }
    #TP_kv_1 li:nth-child(21) {
      width: 3.4%;
      top: 42.4%;
      left: 27.5%; }
    #TP_kv_1 li:nth-child(22) {
      width: 5.4%;
      top: 32.4%;
      left: 28.7%; }
    #TP_kv_1 li:nth-child(23) {
      width: 4.0%;
      top: 40.3%;
      left: 31.5%; }
    #TP_kv_1 li:nth-child(24) {
      width: 4.6%;
      top: 35.3%;
      left: 35.4%; }
    #TP_kv_1 li:nth-child(25) {
      width: 3.7%;
      top: 46.3%;
      left: 35.0%; }
    #TP_kv_1 li:nth-child(26) {
      width: 5.5%;
      top: 45.3%;
      left: 38.5%; }
    #TP_kv_1 li:nth-child(27) {
      width: 3.7%;
      top: 35.5%;
      left: 39.3%; }
    #TP_kv_1 li:nth-child(28) {
      width: 3.4%;
      top: 33.5%;
      left: 44.3%; }
    #TP_kv_1 li:nth-child(29) {
      width: 2.3%;
      top: 40.1%;
      left: 44.8%; }
    #TP_kv_1 li:nth-child(30) {
      width: 3.4%;
      top: 47.1%;
      left: 43.3%; }
    #TP_kv_1 li:nth-child(31) {
      width: 4.7%;
      top: 57.0%;
      left: 43.6%; }
    #TP_kv_1 li:nth-child(32) {
      width: 2.9%;
      top: 50.0%;
      left: 46.6%; }
    #TP_kv_1 li:nth-child(33) {
      width: 4.9%;
      top: 40.0%;
      left: 47.0%; }
    #TP_kv_1 li:nth-child(34) {
      width: 2.0%;
      top: 37.1%;
      left: 49.9%; }
    #TP_kv_1 li:nth-child(35) {
      width: 1.9%;
      top: 40.2%;
      left: 52.0%; }
    #TP_kv_1 li:nth-child(36) {
      width: 4.0%;
      top: 44.8%;
      left: 52.0%; }
    #TP_kv_1 li:nth-child(37) {
      width: 7.5%;
      top: 55.8%;
      left: 49.3%; }
    #TP_kv_1 li:nth-child(38) {
      width: 5.0%;
      top: 44.8%;
      left: 55.4%; }
    #TP_kv_1 li:nth-child(39) {
      width: 7.6%;
      top: 59.5%;
      left: 57.0%; }
    #TP_kv_1 li:nth-child(40) {
      width: 3.3%;
      top: 58.2%;
      left: 62.4%; }
    #TP_kv_1 li:nth-child(41) {
      width: 4.3%;
      top: 64.2%;
      left: 64.6%; }
    #TP_kv_1 li:nth-child(42) {
      width: 2.2%;
      top: 57.0%;
      left: 67.1%; }
    #TP_kv_1 li:nth-child(43) {
      width: 6.5%;
      top: 42.7%;
      left: 60.3%; }
    #TP_kv_1 li:nth-child(44) {
      width: 2.8%;
      top: 36.7%;
      left: 60.8%; }
    #TP_kv_1 li:nth-child(45) {
      width: 3.5%;
      top: 38.3%;
      left: 65.9%; }
    #TP_kv_1 li:nth-child(46) {
      width: 3.0%;
      top: 32.6%;
      left: 71.3%; }
    #TP_kv_1 li:nth-child(47) {
      width: 2.8%;
      top: 29.8%;
      left: 73.9%; }
    #TP_kv_1 li:nth-child(48) {
      width: 8.1%;
      top: 39.8%;
      left: 68.4%; }
    #TP_kv_1 li:nth-child(49) {
      width: 7.1%;
      top: 56.4%;
      left: 69.7%; }
    #TP_kv_1 li:nth-child(50) {
      width: 3.7%;
      top: 51.0%;
      left: 77.6%; }
    #TP_kv_1 li:nth-child(51) {
      width: 3.0%;
      top: 42.7%;
      left: 77.4%; }
    #TP_kv_1 li:nth-child(52) {
      width: 2.8%;
      top: 35.2%;
      left: 76.4%; }
    #TP_kv_1 li:nth-child(53) {
      width: 3.4%;
      top: 32.6%;
      left: 78.8%; }
    #TP_kv_1 li:nth-child(54) {
      width: 5.5%;
      top: 27.0%;
      left: 82.6%; }
    #TP_kv_1 li:nth-child(55) {
      width: 2.0%;
      top: 34.3%;
      left: 87.2%; }
    #TP_kv_1 li:nth-child(56) {
      width: 4.6%;
      top: 37.9%;
      left: 81.6%; }
    #TP_kv_1 li:nth-child(57) {
      width: 4.5%;
      top: 46.1%;
      left: 82.6%; }
    #TP_kv_1 li:nth-child(58) {
      width: 4.0%;
      top: 43.4%;
      left: 88.0%; }
    #TP_kv_1 li:nth-child(59) {
      width: 2.5%;
      top: 36.2%;
      left: 89.6%; }
    #TP_kv_1 li:nth-child(60) {
      width: 2.3%;
      top: 31.7%;
      left: 91.8%; }
    #TP_kv_1 li:nth-child(61) {
      width: 3.3%;
      top: 33.7%;
      left: 93.2%; }
    #TP_kv_1 li:nth-child(62) {
      width: 3.6%;
      top: 41.7%;
      left: 92.5%; }
    #TP_kv_1 li:nth-child(63) {
      width: 2.2%;
      top: 41.1%;
      left: 96.0%; }

#TP_kv_area_SP {
  display: none !important; }

@media only screen and (min-width: 951px) {
  #TP_kv_area {
    padding-top: 550px; }
    #TP_kv_area #slider_back_0, #TP_kv_area #slider_back, #TP_kv_area #slider, #TP_kv_area #TP_kv_1 .wrapper {
      padding-top: 500px; } }

@media only screen and (max-width: 980px) {
  #TP_kv_area #slider li {
    padding: 0 10px; }
  #TP_kv_area #slider li span {
    max-width: 950px;
    width: 100%;
    background-size: 100% auto;
    margin: 3.5% auto 0; } }

@media only screen and (max-width: 950px) {
  #TP_kv_1 .wrapper {
    width: 100%; }
  #TP_kv_1 p.title {
    padding-top: 8.94737%; }
  #TP_kv_1 .animation {
    opacity: 0;
    width: 1150px; }
  #TP_kv_1_iconAll {
    position: absolute;
    top: 30%;
    left: 0;
    width: 100%;
    height: 100%;
    padding-top: 22.8497%;
    background: url(../../img/kv/kv_icon_all.png) 0 0 no-repeat;
    background-size: 100% auto;
    opacity: 0;
    transition: all 3s ease; }
    #TP_kv_1_iconAll.anime_on {
      opacity: 1; } }

#TP_CNT #NV {
  display: none !important; }

@media only screen and (max-width: 1151px) {
  #TP_kv_1 .wrapper {
    left: 50%;
    transform: translateX(-50%); } }

@media only screen and (max-width: 980px) {
  #TP_CNT {
    padding: 0 10px; } }

/* -- BIG BTN -- */
#TP_bigBtn {
  margin: 0 auto;
  display: table;
  border-spacing: 20px; }
  #TP_bigBtn > div {
    display: table-cell;
    width: 220px;
    vertical-align: top; }
  #TP_bigBtn h4 {
    font-size: 20px;
    font-size: 1.25rem;
    position: relative;
    display: block;
    overflow: hidden;
    height: 107px;
    margin: 0;
    padding: 8px 0 0;
    text-align: center;
    color: #fff;
    font-weight: normal;
    letter-spacing: 1px;
    line-height: 1; }
    #TP_bigBtn h4::before {
      display: block; }
  #TP_bigBtn ul {
    list-style: none;
    margin: 0;
    padding: 15px; }
  #TP_bigBtn li {
    margin: 0;
    padding: 0; }
    #TP_bigBtn li a {
      display: block;
      font-size: 15px;
      font-size: 0.9375rem; }
      #TP_bigBtn li a::before {
        content: ' ';
        display: inline-block;
        margin: 8px 7px 0 0;
        vertical-align: top;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 3.5px 0 3.5px 6.1px; }
  #TP_bigBtn .tp_htnetE {
    background-color: #fff7ee; }
    #TP_bigBtn .tp_htnetE h4 {
      background-color: #ff7e00; }
      #TP_bigBtn .tp_htnetE h4::before {
        content: url(../../img/icon_htnet_ether.png); }
    #TP_bigBtn .tp_htnetE li a::before {
      border-color: transparent transparent transparent #ff7e00; }
  #TP_bigBtn .tp_internet {
    background-color: #eef6fb; }
    #TP_bigBtn .tp_internet h4 {
      background-color: #0096ff; }
      #TP_bigBtn .tp_internet h4::before {
        content: url(../../img/icon_internet.png); }
    #TP_bigBtn .tp_internet li a::before {
      border-color: transparent transparent transparent #0096ff; }
  #TP_bigBtn .tp_cloud {
    background-color: #ebf9f5; }
    #TP_bigBtn .tp_cloud h4 {
      background-color: #11c98f; }
      #TP_bigBtn .tp_cloud h4::before {
        content: url(../../img/icon_cloud.png); }
    #TP_bigBtn .tp_cloud li a::before {
      border-color: transparent transparent transparent #11c98f; }
  #TP_bigBtn .tp_solution {
    background-color: #f8f2fb; }
    #TP_bigBtn .tp_solution h4 {
      background-color: #813fa7; }
      #TP_bigBtn .tp_solution h4::before {
        content: url(../../img/icon_solution.png); }
    #TP_bigBtn .tp_solution li a::before {
      border-color: transparent transparent transparent #813fa7; }

@media only screen and (max-width: 980px) {
  #TP_bigBtn {
    border-spacing: 8px;
    width: 100%; }
    #TP_bigBtn > div {
      width: 25%; }
    #TP_bigBtn h4 {
      font-size: 16px;
      font-size: 1rem;
      height: 90px;
      padding-top: 2px; }
    #TP_bigBtn ul {
      padding: 10px; }
    #TP_bigBtn li {
      margin: 5px 0;
      padding: 0; }
      #TP_bigBtn li a {
        position: relative;
        display: block;
        font-size: 13px;
        font-size: 0.8125rem;
        line-height: 1.3;
        padding-left: 10px; }
        #TP_bigBtn li a::before {
          position: absolute;
          top: 4px;
          left: 0;
          margin: 0; }
    #TP_bigBtn .tp_htnetE {
      background-color: #fff7ee; }
      #TP_bigBtn .tp_htnetE h4 {
        background-color: #ff7e00; }
        #TP_bigBtn .tp_htnetE h4::before {
          content: url(../../img/icon_htnet_ether.png); }
      #TP_bigBtn .tp_htnetE li a::before {
        border-color: transparent transparent transparent #ff7e00; }
    #TP_bigBtn .tp_internet {
      background-color: #eef6fb; }
      #TP_bigBtn .tp_internet h4 {
        background-color: #0096ff; }
        #TP_bigBtn .tp_internet h4::before {
          content: url(../../img/icon_internet.png); }
      #TP_bigBtn .tp_internet li a::before {
        border-color: transparent transparent transparent #0096ff; }
    #TP_bigBtn .tp_cloud {
      background-color: #ebf9f5; }
      #TP_bigBtn .tp_cloud h4 {
        background-color: #11c98f; }
        #TP_bigBtn .tp_cloud h4::before {
          content: url(../../img/icon_cloud.png); }
      #TP_bigBtn .tp_cloud li a::before {
        border-color: transparent transparent transparent #11c98f; }
    #TP_bigBtn .tp_solution {
      background-color: #f8f2fb; }
      #TP_bigBtn .tp_solution h4 {
        background-color: #813fa7; }
        #TP_bigBtn .tp_solution h4::before {
          content: url(../../img/icon_solution.png); }
      #TP_bigBtn .tp_solution li a::before {
        border-color: transparent transparent transparent #813fa7; } }

/* -- CASE STUDY -- */
#TP_case {
  max-width: 950px;
  margin: 65px auto; }
  #TP_case .tp_case_wrapper2 {
    display: none !important; }
  #TP_case h3 {
    margin: 0 0 30px;
    padding: 0;
    color: #1a3d8a;
    font-weight: normal;
    font-size: 26px; }
    #TP_case h3 span {
      font-size: 40px;
      margin-right: 10px; }
  #TP_case .bx-viewport {
    z-index: 1; }
    #TP_case .bx-viewport a {
      outline: none; }
    #TP_case .bx-viewport a:hover {
      text-decoration: none; }
      #TP_case .bx-viewport a:hover .btn {
        background-color: #018aff; }
    #TP_case .bx-viewport > ul {
      list-style: none;
      margin: 0;
      padding: 0; }
      #TP_case .bx-viewport > ul li {
        margin: 0;
        padding: 0;
        width: 310px; }
        #TP_case .bx-viewport > ul li img {
          width: 100%;
          height: auto; }
        #TP_case .bx-viewport > ul li .title {
          margin: 15px 0 5px;
          padding: 0 0 5px;
          border-bottom: 2px solid #1859e7; }
        #TP_case .bx-viewport > ul li .text {
          font-size: 14px;
          font-size: 0.875rem;
          display: block;
          height: 75px;
          margin: 10px 0 0;
          padding: 0;
          color: #000;
          line-height: 1.5; }
        #TP_case .bx-viewport > ul li .btn {
          font-size: 12px;
          font-size: 0.75rem;
          letter-spacing: 2px;
          display: block;
          width: 170px;
          margin: 0 auto;
          padding: 10px 0 8px;
          line-height: 1;
          text-align: center;
          background: url(../img/btn_arw_1.png) right center no-repeat #1859e7;
          color: #fff;
          border-radius: 15px;
          transition: background 0.2s ease; }
  #TP_case .tp_case_wrapper {
    position: relative; }
    #TP_case .tp_case_wrapper img {
      max-width: 310px; }
  #TP_case #TP_case_nv {
    position: absolute;
    width: 1030px;
    top: 60px;
    left: -40px; }
    #TP_case #TP_case_nv ul {
      list-style: none;
      margin: 0;
      padding: 0;
      font-size: 0; }
      #TP_case #TP_case_nv ul li {
        position: relative;
        width: 50%;
        display: inline-block; }
        #TP_case #TP_case_nv ul li img {
          transition: all 0.3s ease; }
        #TP_case #TP_case_nv ul li a {
          position: absolute;
          top: 0;
          display: inline-block;
          width: 30px;
          height: 48px;
          outline: none; }
      #TP_case #TP_case_nv ul li:nth-child(1) a {
        left: 0; }
      #TP_case #TP_case_nv ul li:nth-child(2) {
        text-align: right; }
        #TP_case #TP_case_nv ul li:nth-child(2) a {
          right: 0; }
  #TP_case .tp_case_wrapper.noControls #TP_case_nv li img {
    opacity: 0.3; }
  #TP_case .tp_case_wrapper.noControls #TP_case_nv a {
    display: none !important; }

@media only screen and (max-width: 1050px) {
  #TP_case #TP_case_nv {
    position: absolute;
    width: auto;
    top: -35px;
    right: 40px;
    left: auto; }
    #TP_case #TP_case_nv ul {
      width: 70px; }
      #TP_case #TP_case_nv ul li img {
        width: 15px; }
      #TP_case #TP_case_nv ul li a {
        width: 25px;
        height: 25px; } }

@media only screen and (max-width: 980px) {
  #TP_case {
    padding: 0 0 0 10px;
    margin-right: -10px; }
    #TP_case h3 {
      font-size: 20px;
      font-size: 1.25rem;
      margin-left: 0;
      margin-bottom: 10px; }
      #TP_case h3 span {
        font-size: 35px;
        font-size: 2.1875rem;
        margin-right: 10px; }
    #TP_case .bx-viewport > ul li .title {
      margin: 10px 0 5px; } }

/* -- TOPICS NEWS -- */
.tp_news_wrapper {
  background-color: #eafdff;
  padding: 40px 10px; }
  .tp_news_wrapper #TP_news {
    position: relative;
    max-width: 950px;
    margin: 0 auto; }
  .tp_news_wrapper h3 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: normal;
    margin: 0 0 10px;
    padding: 0;
    line-height: 1;
    color: #1a3d8a; }
    .tp_news_wrapper h3 span {
      font-size: 40px;
      margin-right: 10px; }

@media only screen and (max-width: 980px) {
  .tp_news_wrapper {
    padding-left: 20px;
    padding-right: 20px; } }

/* -- CONTACT -- */
.tp_cnt_wrapper {
  margin: 40px 0 60px; }

#TP_contact {
  max-width: 950px;
  margin: 0 auto;
  padding: 10px;
  background-color: #fff5d5; }
  #TP_contact p {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
    margin: 30px 0; }
  #TP_contact ul {
    width: 846px;
    margin: 10px auto;
    padding: 0;
    list-style: none;
    font-size: 0; }
  #TP_contact li {
    display: inline-block;
    margin: 0 0 35px;
    padding: 0;
    vertical-align: top; }
    #TP_contact li a {
      transition: all 0.2s ease; }
      #TP_contact li a:hover {
        opacity: 0.8; }
      #TP_contact li a img {
        width: 100%;
        height: auto; }
  #TP_contact .tel {
    width: 50%;
    padding-right: 10px; }
  #TP_contact .download {
    width: 50%;
    padding-left: 10px;
    text-align: right; }

@media only screen and (max-width: 980px) {
  .tp_cnt_wrapper {
    margin: 30px 0 50px; }
  #TP_contact {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 20px;
    padding-right: 20px; }
    #TP_contact p {
      text-align: center;
      margin: 25px 0; }
    #TP_contact ul {
      width: auto;
      max-width: 846px; }
    #TP_contact li {
      display: inline-block;
      margin: 0 0 4%;
      padding: 0;
      vertical-align: top; }
      #TP_contact li a {
        transition: all 0.2s ease; }
        #TP_contact li a:hover {
          opacity: 0.8; }
      #TP_contact li img {
        max-width: 100%;
        height: auto; } }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* FT
/* -------------------------------------------------------------------------*/
/* FIXED MENU */
#FixedMenu {
  position: fixed;
  top: 160px;
  right: -2px;
  z-index: 10000; }
  #FixedMenu ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    #FixedMenu ul li {
      width: 36px;
      height: 130px;
      margin: 0 0 10px;
      padding: 0; }
    #FixedMenu ul a {
      display: block;
      width: 100%;
      height: 130px;
      text-indent: -9999px;
      overflow: hidden;
      border-radius: 7px 0 0 7px;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
      transition: all 0.2s ease;
      background-position: center center;
      background-repeat: no-repeat; }
    #FixedMenu ul li:nth-child(1) a {
      background-image: url(../img/text_contact.png);
      background-color: #ff7f17; }
      #FixedMenu ul li:nth-child(1) a:hover {
        background-color: #ffba1e; }
    #FixedMenu ul li:nth-child(2) a {
      background-image: url(../img/text_news.png);
      background-color: #05c900; }
      #FixedMenu ul li:nth-child(2) a:hover {
        background-color: #6def1c; }

@media only screen and (max-width: 980px) {
  #FixedMenu ul li {
    width: 30px; } }

#FT {
  border-top: 6px solid #0f3da2;
  /* -- page top --*/ }
  #FT .pageTop {
    position: fixed;
    right: 10px;
    bottom: 20px;
    display: block;
    margin: 0;
    padding: 0;
    z-index: 1000; }
    #FT .pageTop a {
      overflow: hidden;
      text-indent: -9999px;
      display: block;
      padding: 22px;
      font-size: 0;
      line-height: 0;
      border-radius: 5px;
      outline: none;
      transition: all 0.4s ease;
      opacity: 0.3;
      background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAYCAYAAAFijobeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTMyIDc5LjE1OTI4NCwgMjAxNi8wNC8xOS0xMzoxMzo0MCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUuNSAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MURCM0FEMjk1M0I3MTFFNkE4QjlGRTkwQUI3OTcyQjAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MURCM0FEMkE1M0I3MTFFNkE4QjlGRTkwQUI3OTcyQjAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxREIzQUQyNzUzQjcxMUU2QThCOUZFOTBBQjc5NzJCMCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxREIzQUQyODUzQjcxMUU2QThCOUZFOTBBQjc5NzJCMCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpHqYqQAAAEWSURBVHjaYvz//z8DDDAxIAEWKA2S/gsQQIw4lYE4f6DKGAACCEUZuioGJAP/o0voIikAswECCKtRTMSYjSKYhkzDzEQ2mBGrmQABhE0lLsAICylGIhRj9cIzqE3PcDkDBFiB+BcWzWxA/BvZ5KU4FDJAxZfijSlsACCAiFbMgh4NFAcZE7FuxKZwAhSjApBnkLDwfwQQRpZD9zW6pxixWX0KizNOoVtt/x83sEe2mmA4MhERjozIMUMw0AECjKSEQUnkDG1D2YF4CRBzEKUaLclhw25A/A+aBv5B+Xj1EDJwPY4EtoEcQ9WA+Mt//OALVB1Rhrb+Jw204zNUAIgf/CcPPIDqx+lSXRIN1EU3gybplCbZFABnODXlWm2qCAAAAABJRU5ErkJggg==") center center no-repeat #000; }
      #FT .pageTop a:hover {
        opacity: 1.0; }
  #FT .nv {
    padding: 25px 0;
    color: #0f3da2;
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
    font-size: 0; }
    @media only screen and (max-width: 980px) {
      #FT .nv {
        text-align: left; } }
    #FT .nv a {
      color: #0f3da2; }
    #FT .nv .nv_block {
      display: block;
      display: inline-block;
      vertical-align: top;
      text-align: left;
      width: 13.5%;
      margin: 0 0.3%; }
      @media only screen and (max-width: 980px) {
        #FT .nv .nv_block {
          width: 32%; } }
    #FT .nv .title {
      font-size: 14px;
      font-size: 0.875rem;
      border-bottom: 2px solid #0f3da2;
      margin: 0 0 7px;
      padding: 0 0 2px;
      font-weight: bold; }
    #FT .nv .subTitle {
      font-size: 13px;
      font-size: 0.8125rem;
      font-weight: bold;
      margin: 0;
      padding: 0; }
    #FT .nv ul {
      font-size: 12px;
      font-size: 0.75rem;
      list-style: none;
      margin: 0 0 10px;
      padding: 0; }
    #FT .nv li {
      position: relative;
      margin: 0;
      padding: 2px 0 2px 12px;
      line-height: 1.2; }
      #FT .nv li::before {
        position: absolute;
        top: 2px;
        left: 0;
        content: '・'; }
      #FT .nv li.line {
        border-bottom: 1px dotted #7bb0b7;
        padding-bottom: 5px;
        margin-bottom: 5px; }
  #FT .ft_wrapper {
    background-color: #0f3da2;
    color: #fff;
    padding-top: 6px; }
    #FT .ft_wrapper a {
      color: #fff; }
    #FT .ft_wrapper .ft_info {
      max-width: 1200px;
      margin: 0 auto;
      padding: 5px 0;
      border-bottom: #6f8bc7 1px solid; }
      #FT .ft_wrapper .ft_info ul {
        font-size: 13px;
        font-size: 0.8125rem;
        list-style: none;
        margin: 0;
        padding: 0;
        text-align: right; }
      #FT .ft_wrapper .ft_info li {
        display: inline-block;
        line-height: 1;
        margin: 0;
        padding: 0 5px; }
        #FT .ft_wrapper .ft_info li:first-child {
          border-right: 1px solid #6f8bc7; }
  #FT address {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 10px;
    font-style: normal; }
    #FT address h1 {
      margin: 0;
      padding: 0; }
      #FT address h1 a {
        display: block;
        width: 236px;
        height: 25px;
        overflow: hidden;
        text-indent: -9999px;
        background: url(../img/ft_logo.png) 0 0 no-repeat; }
    #FT address .ft_adrs {
      margin: 10px 0 0 5px; }
      #FT address .ft_adrs h2 {
        display: inline-block;
        font-size: 12px;
        font-size: 0.75rem;
        font-weight: normal;
        margin: 0;
        padding: 0;
        vertical-align: top;
        line-height: 1.5; }
      #FT address .ft_adrs p {
        font-size: 12px;
        font-size: 0.75rem;
        display: inline-block;
        margin: 0;
        padding: 0;
        line-height: 1.5; }
  #FT .copyright {
    font-size: 13px;
    font-size: 0.8125rem;
    margin: 0;
    padding: 10px;
    text-align: right; }

@media only screen and (max-width: 980px) {
  #FT .nv {
    border-spacing: 10px; }
    #FT .nv li {
      min-width: 100px; } }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* PAGES
/* -------------------------------------------------------------------------*/
#PG_kv_wrp {
  position: relative;
  background: url(../img/pg_kv.jpg) right top no-repeat;
  background-size: auto 100%; }
  #PG_kv_wrp::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: ' ';
    width: 100%;
    background: url(../img/pg_kv_cover.png); }

#PG_kv {
  display: block;
  position: relative;
  height: 116px;
  margin: 0 auto; }
  #PG_kv .pg_title {
    font-size: 28px;
    font-size: 1.75rem;
    position: absolute;
    margin: 0;
    padding: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #0f3da2;
    font-weight: normal; }

@media only screen and (max-width: 980px) {
  #PG_kv {
    height: 90px; }
    #PG_kv .pg_title {
      font-size: 24px;
      font-size: 1.5rem; } }

/* ----- PNKUZU ----- */
.pankuzu {
  margin-top: 10px; }
  .pankuzu, .pankuzu a {
    color: #999; }
  .pankuzu ul {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0; }
  .pankuzu li {
    font-size: 12px;
    font-size: 0.75rem;
    display: inline-block; }
    .pankuzu li::before {
      content: '>';
      display: inline-block;
      margin: 0 5px; }
    .pankuzu li:first-child::before {
      display: none; }

/* ----- BASIC LAYOUT ----- */
#CNT_area {
  overflow: hidden;
  margin-bottom: 3%; }

#CNT {
  width: 100%;
  float: left;
  margin-top: 3%;
  margin-left: -195px;
  padding-left: 195px;
  border-right: #cdd9dc 1px dotted;
  padding-right: 30px; }

.cnt_area {
  padding-bottom: 1px; }

#SM {
  float: right;
  width: 195px;
  margin-top: 3%; }

@media only screen and (max-width: 980px) {
  #CNT {
    margin-left: -160px;
    padding-left: 160px;
    padding-right: 20px; }
  #SM {
    width: 160px; } }

/* ----- CNT AREA ----- */
.bl_title {
  font-size: 20px;
  font-size: 1.25rem;
  padding: 15px 10px 13px;
  margin: 50px 0 30px;
  color: #0f3da2;
  background: url(../img/ttl_bc.png);
  border-bottom: 1px solid #e8e8e8;
  border-top: 2px solid #b2c5ee; }

.sub_ttl {
  font-size: 18px;
  font-size: 1.125rem;
  margin: 40px 10px 20px;
  padding: 5px 0;
  color: #0f3da2;
  border-bottom: 1px dotted #0f3da2; }

.cnt_block, .cnt_block_center {
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 10px 0;
  margin: 0 0 7%; }
  .cnt_block .bl_title:first-child, .cnt_block_center .bl_title:first-child {
    margin-top: 0; }
  .cnt_block > p, .cnt_block_center > p {
    margin: 10px 10px 20px;
    line-height: 1.8; }
    .cnt_block > p img, .cnt_block_center > p img {
      margin: 5px 0; }
  .cnt_block li, .cnt_block_center li {
    margin-bottom: 10px; }
  .cnt_block hr, .cnt_block_center hr {
    margin: 30px 0;
    border-top: #ccc 1px solid;
    border-bottom: none; }

.cnt_block_center {
  text-align: center; }

@media only screen and (max-width: 980px) {
  .cnt_block, .cnt_block_center {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.5; } }

/* ---- FIGURE ----*/
.fig_dflt {
  margin: 55px 0 20px;
  padding: 0;
  text-align: center; }
  .fig_dflt img {
    max-width: 100%;
    height: auto; }
  .fig_dflt figcaption {
    display: block;
    color: #0049b8; }

/* ---- TABLE ----- */
table.tbl_1 {
  border-collapse: collapse;
  width: 96%;
  margin: 0 2% 2%; }
  table.tbl_1 th, table.tbl_1 td {
    padding: 10px;
    border: #cdd9dc 1px solid; }
  table.tbl_1 th {
    text-align: left;
    font-weight: normal;
    background-color: #e0f2ff; }

p.tbl_comment {
  font-size: 14px;
  font-size: 0.875rem;
  margin: -1% 2% 2%; }

@media only screen and (max-width: 980px) {
  table.tbl_1 td, table.tbl_1 th {
    padding: 6px; } }

/* ---- BOX ----- */
.box_1 {
  border: 3px solid #c6dceb;
  padding: 15px 15px 5px;
  background-color: #f6fbff; }

/* ---- MARGIN ---- */
.ml_M {
  margin-left: 30px; }

/* ---- CONTACT BOX ---- */
.pg_contact, .pg_contact_recruitment {
  max-width: 950px;
  margin: 3% auto;
  padding: 15px;
  background-color: #fff5d5; }
  .pg_contact p, .pg_contact_recruitment p {
    font-size: 18px;
    font-size: 1.125rem;
    text-align: center;
    margin: 10px 0; }
  .pg_contact a:hover, .pg_contact_recruitment a:hover {
    text-decoration: none; }
  .pg_contact ul, .pg_contact_recruitment ul {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0; }
  .pg_contact li, .pg_contact_recruitment li {
    line-height: 1.4; }
  .pg_contact li.tel, .pg_contact_recruitment li.tel {
    font-size: 13px;
    font-size: 0.8125rem;
    display: inline-block;
    width: 48%;
    margin: 1%;
    padding: 9px 10px 1px 100px;
    background: url(../img/cnt_ic_tel.png) left center no-repeat #fff;
    border: 1px solid #fff;
    border-radius: 6px;
    vertical-align: top;
    line-height: 1; }
    .pg_contact li.tel span, .pg_contact_recruitment li.tel span {
      font-size: 24px;
      font-size: 1.5rem;
      display: block;
      font-weight: bold;
      padding: 6px 0 3px; }
  .pg_contact li.download, .pg_contact_recruitment li.download {
    display: inline-block;
    width: 48%;
    margin: 1%; }
    .pg_contact li.download a, .pg_contact_recruitment li.download a {
      font-size: 18px;
      font-size: 1.125rem;
      display: block;
      padding: 7px 10px 5px 90px;
      background: url(../img/cnt_ic_dl.png) left center no-repeat #ff9a17;
      border: 1px solid #ff9a17;
      border-radius: 6px;
      color: #fff;
      font-weight: bold;
      transition: background 0.2s ease;
      text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2); }
      .pg_contact li.download a span, .pg_contact_recruitment li.download a span {
        display: block;
        font-size: 13px;
        font-size: 0.8125rem;
        font-weight: normal;
        text-shadow: none; }
      .pg_contact li.download a:hover, .pg_contact_recruitment li.download a:hover {
        background-color: #ffba00;
        border-color: #ffba00; }
  .pg_contact li.contact, .pg_contact_recruitment li.contact {
    display: block;
    padding: 1%; }
    .pg_contact li.contact a, .pg_contact_recruitment li.contact a {
      font-size: 20px;
      font-size: 1.25rem;
      display: block;
      text-align: center;
      padding: 20px 10px;
      background: url(../img/cnt_ic_frm.png) left center no-repeat #ff9a17;
      color: #fff;
      font-weight: bold;
      border: 1px solid #ff9a17;
      border-radius: 6px;
      transition: background 0.2s ease;
      text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2); }
      .pg_contact li.contact a:hover, .pg_contact_recruitment li.contact a:hover {
        background-color: #ffba00;
        border-color: #ffba00; }

.pg_contact_recruitment li.contact {
  display: inline-block;
  width: 48%;
  margin: 0 1%; }
  .pg_contact_recruitment li.contact a {
    font-size: 15px;
    font-size: 0.9375rem;
    padding: 18px 10px 18px 100px;
    text-align: left; }

@media only screen and (max-width: 980px) {
  .pg_contact {
    padding: 10px 10px 20px; }
    .pg_contact p {
      font-size: 16px;
      font-size: 1rem;
      text-align: left; }
    .pg_contact li.tel {
      display: block;
      width: 100%;
      margin: 0; }
    .pg_contact li.download {
      display: block;
      width: 100%;
      margin: 10px 0; }
    .pg_contact li.contact {
      display: block;
      padding: 0; }
      .pg_contact li.contact a {
        font-size: 18px;
        font-size: 1.125rem;
        text-align: left;
        padding: 15px 10px 15px 90px;
        background-position: -10px center; } }

/* ---- TOOLS ----- */
.note {
  display: block;
  position: relative;
  padding-left: 20px; }
  .note::before {
    content: '\203B';
    position: absolute;
    top: 0;
    left: 0; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* SIDE MENU
/* -------------------------------------------------------------------------*/
#SM {
  padding-left: 10px; }

#PG_nv .pg_nv_ttl {
  display: block;
  position: relative;
  font-size: 13px;
  font-size: 0.8125rem;
  margin: 0 0 15px;
  padding: 13px 5px 11px 38px;
  background-color: #0f3da2;
  font-weight: bold;
  line-height: 1.3;
  color: #fff; }
  #PG_nv .pg_nv_ttl::before {
    position: absolute;
    top: 8px;
    left: 8px;
    content: ' ';
    display: block;
    width: 25px;
    height: 25px;
    margin: 0 5px 0 0;
    vertical-align: middle;
    background-image: url(../img/hd_icon.png);
    background-repeat: no-repeat; }
    body.ctg_service #PG_nv .pg_nv_ttl::before {
      background-position: -25px -25px; }
    body.ctg_company #PG_nv .pg_nv_ttl::before {
      background-position: -25px -75px; }
    body.ctg_case #PG_nv .pg_nv_ttl::before {
      background-position: -25px -125px; }
    body.ctg_workshop #PG_nv .pg_nv_ttl::before {
      background-position: -25px -50px; }
    body.ctg_recruit #PG_nv .pg_nv_ttl::before {
      background-position: -25px -100px; }
    body.ctg_others #PG_nv .pg_nv_ttl::before {
      display: none; }
    body.ctg_news #PG_nv .pg_nv_ttl::before {
      display: none; }
  body.ctg_news #PG_nv .pg_nv_ttl,
  body.ctg_others #PG_nv .pg_nv_ttl {
    padding-left: 10px; }
    body.ctg_news #PG_nv .pg_nv_ttl::before,
    body.ctg_others #PG_nv .pg_nv_ttl::before {
      display: none; }

#PG_nv a {
  color: #4e4e4e; }

#PG_nv ul {
  font-size: 13px;
  font-size: 0.8125rem;
  list-style: none;
  margin: 0;
  padding: 0; }

#PG_nv li {
  margin: 1px 0;
  padding: 0;
  line-height: 1.4; }
  #PG_nv li a {
    display: block;
    position: relative;
    padding: 7px 10px 6px 13px;
    transition: background 0.2s ease; }
    #PG_nv li a::before {
      content: ' ';
      position: absolute;
      top: 6px;
      left: 0;
      width: 4px;
      height: 18px;
      background-color: #0f3da2; }
    #PG_nv li a:hover {
      text-decoration: none;
      color: #0f3da2;
      background-color: #f3f8fc; }
  #PG_nv li > p {
    margin: 20px 0 2px;
    padding-top: 8px;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    color: #0f3da2;
    border-top: 1px dotted #bdc2cb; }

#PG_nv .pg_nv_selected {
  background-color: #e8f1f9; }

#SM_block {
  margin-top: 40px; }
  #SM_block ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  #SM_block li {
    margin: 0 0 30px;
    padding: 0; }
    #SM_block li .sm_b_ttl {
      margin: 0;
      padding: 0; }
      #SM_block li .sm_b_ttl a {
        font-size: 14px;
        font-size: 0.875rem;
        display: block;
        padding: 5px;
        background: url(../img/sm_ttl_bc.png);
        color: #0f3da2;
        font-weight: bold; }
        #SM_block li .sm_b_ttl a::before {
          content: ' ';
          width: 16px;
          height: 16px;
          margin-right: 5px;
          display: inline-block;
          vertical-align: middle;
          background: url(../img/sm_link_arw.png) 0 0 no-repeat;
          background-size: 16px 16px; }
    #SM_block li .sm_b_txt {
      font-size: 12px;
      font-size: 0.75rem;
      color: #4e4e4e;
      line-height: 1.5;
      margin: 5px 0; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* COMPANY
/* -------------------------------------------------------------------------*/
.img_organization {
  margin: 0;
  padding: 0;
  text-align: center; }
  .img_organization img {
    max-width: 100%;
    height: auto; }

.csr_box {
  border: 3px solid #c6dceb;
  padding: 15px 15px 5px;
  background-color: #f6fbff; }
  .csr_box .csr_box_title {
    font-size: 19px;
    font-size: 1.1875rem; }

/* --- INDEX --- */
.cnt_block .cmp_signature {
  font-size: 19px;
  font-size: 1.1875rem;
  font-weight: bold;
  text-align: right;
  margin-top: 50px; }

/* identity */
#identity_1 {
  margin-top: 55px; }
  #identity_1 h4 {
    text-align: center; }

.identity_box {
  text-align: center; }
  .identity_box h6 {
    font-size: 18px;
    color: #0f3da2;
    margin: 0; }
  .identity_box span {
    display: inline-block; }
    .identity_box span::after {
      display: block;
      height: 1px;
      content: ' ';
      border-bottom: 1px solid;
      margin-top: 3px; }

#identity_2 {
  margin-top: 55px; }

#identity_1 p,
#identity_2 p.identity_2_msg,
#identity_3 p,
#identity_5 p {
  display: block;
  text-indent: -9999px;
  overflow: hidden;
  max-width: 548px;
  margin: 0 auto;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto; }

#identity_1 p span,
#identity_2 p.identity_2_msg span,
#identity_3 p span,
#identity_5 p span {
  display: none; }

#identity_1 p {
  height: 113px;
  background-image: url(../../company/img/text_1.png); }

#identity_2 p.identity_2_msg {
  height: 110px;
  background-image: url(../../company/img/text_2.png); }

#identity_3 p {
  height: 161px;
  background-image: url(../../company/img/text_3.png); }

#identity_5 p {
  height: 130px;
  background-image: url(../../company/img/text_5.png); }

#identity_3 {
  margin-top: 65px; }
  #identity_3 p {
    margin-top: 30px; }

#identity_4 {
  margin-top: 85px; }
  #identity_4 ul {
    list-style: none;
    margin: 30px 0 0;
    padding: 0;
    text-align: center; }
  #identity_4 li {
    text-align: center;
    display: inline-block;
    margin: 0 7px; }

#identity_5 {
  margin-top: 85px;
  padding-bottom: 45px; }
  #identity_5 p {
    margin-top: 30px; }

/* ---- MAP ---- */
.cmp_map_ggl {
  text-align: center; }
  .cmp_map_ggl a {
    display: inline-block;
    padding: 10px 60px 8px;
    border: 1px solid #0f64a2;
    line-height: 1;
    border-radius: 3px;
    color: #0f64a2; }

/* ---- COMPLY ---- */
.cmp_mail {
  font-size: 16px;
  font-size: 1rem; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* RECRUIT
/* -------------------------------------------------------------------------*/
.snr-area .wrapper {
  display: block;
  margin: 0 auto;
  padding: 0 10px 0 10px;
  font-size: 0; }

.snr-area .box {
  display: inline-block;
  width: 50%;
  padding: 5px;
  min-width: 350px; }

.snr-area a {
  font-size: 16px;
  font-size: 1rem;
  display: block;
  border: 1px solid #e8e8e8;
  padding: 10px 10px 5px;
  transition: background-color 0.2s ease;
  text-decoration: none; }
  .snr-area a:hover {
    background-color: #e8f1f9;
    border-color: #e8f1f9; }

.snr-area p {
  margin: 0;
  text-align: center; }
  .snr-area p img {
    margin-top: 0; }

.snr-d-box {
  overflow: hidden; }
  .snr-d-box .img-R {
    float: right;
    margin: 5px 0 10px 15px; }
  .snr-d-box .img-L {
    float: left;
    margin: 5px 15px 10px 0; }

.snr-d-kv {
  background-color: #e8f1f9;
  text-align: center;
  margin-bottom: 30px; }
  .snr-d-kv img {
    max-width: 100%;
    height: auto; }

.rq-ofc-box figure {
  text-align: center;
  margin: 20px 10px 60px; }
  .rq-ofc-box figure img {
    max-width: 100%;
    height: auto; }

/* ----- FAQ ----- */
.rcr_faq_box {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #d7d7d7; }
  .rcr_faq_box span {
    position: absolute;
    top: 10px;
    left: 10px;
    display: inline-block;
    width: 30px;
    margin: 0 5px 0 0;
    padding: 6px 0;
    color: #fff;
    text-align: center;
    line-height: 1;
    border-radius: 3px; }

.rcr_faq_Q {
  position: relative;
  padding: 10px 10px 10px 50px;
  transition: background 0.2s ease;
  cursor: pointer;
  transition: color 0.2s ease, background 0.2s ease; }
  .rcr_faq_Q span {
    background-color: #fc2828; }
  .rcr_faq_Q:hover {
    background-color: #ffeded; }
  .rcr_faq_on .rcr_faq_Q {
    color: #f11313; }

.rcr_faq_A {
  display: none;
  position: relative;
  padding: 10px 10px 10px 50px; }
  .rcr_faq_A p {
    margin: 0; }
  .rcr_faq_A span {
    background-color: #1bb3eb; }

.rcr_iframe iframe {
  width: 100%; }

@media only screen and (max-width: 980px) {
  .snr-d-box img {
    width: 230px;
    height: auto; } }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* OTHER PAGES
/* -------------------------------------------------------------------------*/
.dwnld_cnt {
  margin-top: 20px; }
  .dwnld_cnt .img-right {
    float: left;
    margin-right: 15px;
    margin-bottom: 10px; }
  .dwnld_cnt .dwn-btn {
    margin-top: -10px;
    margin-left: 20px; }
    .dwnld_cnt .dwn-btn td {
      padding: 2px 5px; }
  .dwnld_cnt p {
    overflow: hidden; }

/* -- POLICY -- */
.policy_box {
  padding: 1px 10px 10px;
  background-color: #eff5f9; }

.privacy_box {
  margin: 5px 0;
  padding: 1px 10px 10px;
  background-color: #eff5f9; }

/* -- SUPPORT -- */
.support_top a {
  transition: all 0.2s ease;
  display: inline-block; }
  .support_top a img {
    transition: all 0.2s ease;
    margin: 0; }
  .support_top a:hover {
    background-color: #e1f2ff;
    text-decoration: none;
    border-color: #e1f2ff; }
    .support_top a:hover img {
      opacity: 0.7; }

.support_list {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow: hidden; }
  .support_list li {
    margin: 5px;
    padding: 0; }
    .support_list li a {
      display: block;
      padding: 8px;
      border: #e7e7e7 1px solid; }

/* -- FORM -- */
.contact_form dl {
  overflow: hidden; }

.contact_form dt {
  clear: both;
  float: left;
  width: 28%;
  margin: 0;
  padding: 15px 1%;
  border-top: 1px solid #dbdbdb; }

.contact_form dd {
  float: left;
  width: 68%;
  margin: 0;
  padding: 15px 1%;
  border-top: 1px solid #dbdbdb; }

.contact_form .w01 {
  width: 95%; }

.contact_form .w02 {
  width: 75%;
  margin: 5px; }

.contact_form .ok_box {
  text-align: center; }

.contact_form .form_btn {
  padding: 10px;
  margin-top: 30px;
  background-color: #e6f5fd; }
  .contact_form .form_btn input {
    margin: 0 20px; }

.contact_form .red {
  color: #ff0000 !important; }

#submitBox {
  text-align: center; }
  #submitBox input[type="button"] {
    width: 250px; }
  @media only screen and (max-width: 980px) {
    #submitBox input[type="button"] {
      width: 200px; } }

#inq_policy {
  font-size: 13px; }
  #inq_policy .title_1 {
    font-size: 15px; }
  #inq_policy .box {
    height: 300px;
    overflow-y: auto;
    padding: 15px;
    margin: 15px;
    border: 1px solid #dbdbdb; }

.thanks_message {
  text-align: center;
  background-color: #f2f6ff;
  padding: 10px;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.5; }
  .thanks_message .inquire_link {
    margin: 50px 0; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* TOOLS
/* -------------------------------------------------------------------------*/
A.link_btn_1 {
  display: inlin-block;
  padding: 10px 20px 8px 15px;
  border: #a1c9e6 1px solid;
  border-radius: 5px;
  background-color: #f1fbff;
  text-decoration: none;
  transition: all 0.2s ease; }
  A.link_btn_1::before {
    display: inline-block;
    content: '';
    margin-right: 10px;
    vertical-align: middle;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3.5px 0 3.5px 6.1px;
    border-color: transparent transparent transparent #0f3ea2; }
  A.link_btn_1:hover {
    background-color: #0f3ea2;
    color: #fff;
    border-color: #0f3ea2; }
    A.link_btn_1:hover::before {
      border-color: transparent transparent transparent #fff; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* SITE MAP
/* -------------------------------------------------------------------------*/
.siteMap ul ul {
  list-style: none;
  margin: 10px 0 20px 20px;
  padding: 0; }
  .siteMap ul ul li::before {
    content: '・';
    margin-right: 5px; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* 404
/* -------------------------------------------------------------------------*/
#cnt_404 {
  padding-top: 60px;
  padding-bottom: 130px;
  text-align: center; }
  #cnt_404 .title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: bold;
    color: #0f3da2;
    margin-bottom: 40px; }
  #cnt_404 p {
    line-height: 1.5; }

/* -------------------------------------------------------------------------*/
/* -------------------------------------------------------------------------*/
/* MOBILE
/* -------------------------------------------------------------------------*/
#mbl_menu, #mbl_menu_wrapper {
  display: none !important; }

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