@charset "UTF-8";
:root {
  --main-color: #e63200; /* hsl(13 100% 45%) */
  --main-color-translucent: rgba(230,50,0,0.1);
  --main-color-dark: hsl(13 100% 30%);
  --sub-color-dark: #ff7732;
  --sub-color-light: #ffcca5;

  --background-color: #fff;
  --background-color-light: #e0e1e2;
  --background-color-dark: #63696e;

  --text-color: #000;
  --text-color-light: #fff;
  --border-color: var(--background-color-dark);
}

/*! sanitize.css v4.0.0 | CC0 License | github.com/10up/sanitize.css */
/* Display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Elements of HTML (https://www.w3.org/TR/html5/semantics.html)
   ========================================================================== */
/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add box sizing inheritence in all browsers (opinionated).
 */
*,
::before,
::after {
  background-repeat: no-repeat;
  /* 1 */
  box-sizing: inherit;
  /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritence in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */
}

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Add a flattened line height in all browsers (opinionated).
 * 4. Prevent font size adjustments after orientation changes in IE and iOS.
 */
html {
  box-sizing: border-box;
  /* 1 */
  cursor: default;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  line-height: 1.5;
  /* 3 */
  -ms-text-size-adjust: 100%;
  /* 4 */
  -webkit-text-size-adjust: 100%;
  /* 5 */
}

/* Sections (https://www.w3.org/TR/html5/sections.html)
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Correct the font sizes and margins on `h1` elements within
 * `section` and `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: .67em 0;
}

/* Grouping content (https://www.w3.org/TR/html5/grouping-content.html)
   ========================================================================== */
/**
 * 1. Correct font sizing inheritance and scaling in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * 1. Correct the height in Firefox.
 * 2. Add visible overflow in Edge and IE.
 */
hr {
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol,
nav ul {
  list-style: none;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Add a bordered underline effect in all browsers.
 * 2. Remove text decoration in Firefox 40+.
 */
abbr[title] {
  border-bottom: 1px dotted;
  /* 1 */
  text-decoration: none;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct colors in IE 9-.
 */
mark {
  background-color: #ffff00;
  color: #000000;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Correct the font size in all browsers.
 */
small {
  font-size: 83.3333%;
}

/**
 * Change the positioning on superscript and subscript elements
 * in all browsers (opinionated).
 * 1. Correct the font size in all browsers.
 */
sub,
sup {
  font-size: 83.3333%;
  /* 1 */
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

/*
 * Remove the text shadow on text selections (opinionated).
 * 1. Restore the coloring undone by defining the text shadow (opinionated).
 */
::-moz-selection {
  background-color: var(--background-color-light);
  /* 1 */
  color: #000000;
  /* 1 */
  text-shadow: none;
}

::selection {
  background-color: var(--background-color-light);
  /* 1 */
  color: #000000;
  /* 1 */
  text-shadow: none;
}

/* Embedded content (https://www.w3.org/TR/html5/embedded-content-0.html)
   ========================================================================== */
/*
 * Change the alignment on media elements in all browers (opinionated).
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg {
  fill: currentColor;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Links (https://www.w3.org/TR/html5/links.html#links)
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove the gaps in underlines in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline when hovering in all browsers (opinionated.
 */
:hover {
  outline-width: 0;
}

/* Tabular data (https://www.w3.org/TR/html5/tabular-data.html)
   ========================================================================== */
/*
 * Remove border spacing in all browsers (opinionated).
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* transform-style:  (https://www.w3.org/TR/html5/forms.html)
   ========================================================================== */
/**
 * 1. Remove the default styling in all browsers (opinionated).
 * 3. Remove the margin in Firefox and Safari.
 */
button,
input,
select:not(.form-job-search-select .form-job-search-select2),
textarea {
  background-color: transparent;
  /* 1 */
  border-style: none;
  /* 1 */
  color: inherit;
  /* 1 */
  font-size: 1em;
  /* 1 */
  margin: 0;
  /* 3 */
}

/**
 * Correct the overflow in IE.
 * 1. Correct the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance in Edge, Firefox, and IE.
 * 1. Remove the inheritance in Firefox.
 */
button,
select:not(.form-job-search-select .form-job-search-select2) {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent the WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Correct the focus styles unset by the previous rule.
 */
:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the border, margin, and padding in all browsers.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: .35em .625em .75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 2 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Remove the vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */
textarea {
  overflow: auto;
  /* 1 */
  resize: vertical;
  /* 2 */
}

/**
 * Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  padding: 0;
}

/**
 * Correct the cursor style on increment and decrement buttons in Chrome.
 */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari for OS X.
 */
::-webkit-search-cancel-button,
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style on placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: .54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* WAI-ARIA (https://www.w3.org/TR/html5/dom.html#wai-aria)
   ========================================================================== */
/**
 * Change the cursor on busy elements (opinionated).
 */
[aria-busy="true"] {
  cursor: progress;
}

/*
 * Change the cursor on control elements (opinionated).
 */
[aria-controls] {
  cursor: pointer;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements (opinionated).
 */
[aria-disabled] {
  cursor: default;
}

/* User interaction (https://www.w3.org/TR/html5/editing.html)
   ========================================================================== */
/*
 * Remove the tapping delay on clickable elements (opinionated).
 * 1. Remove the tapping delay in IE 10.
 */
a,
area,
button,
input,
label,
select:not(.form-job-search-select .form-job-search-select2),
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  /* 1 */
  touch-action: manipulation;
}

/*
 * Change the display on visually hidden accessible elements (opinionated).
 */
[hidden][aria-hidden="false"] {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute;
}

[hidden][aria-hidden="false"]:focus {
  clip: auto;
}

html {
  font-size: 10px;
  height: 100%;
}

body {
  background: #fff;
  color: var(--text-color);
  font-family: 'Noto Sans JP', "Helvetica", "Arial", sans-serif;
  font-size: 1.6rem;
  line-height: 1.67;
  font-weight: 400;
  overflow-x: hidden;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  width: 100%;
  min-width: 100%;
  height: 100%;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
          animation: fadeIn 2s ease 0s 1 normal;
  position: relative;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* Headnigs */
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--text-color);
  font-weight: bold;
  line-height: 1.34;
}

h1 {
  font-size: 3.6rem;
  color: var(--main-color);
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica", "Arial", sans-serif;
}

h2:not(.ttl-cmn-recruit-pagettl-01){
  font-size: 2.8rem;
  text-align: center;
  margin-top: 4rem;
  margin-bottom: 2rem;
  overflow: hidden;
}

h2:before:not(.ttl-cmn-recruit-pagettl-01), h2:after:not(.ttl-cmn-recruit-pagettl-01) {
  content: "";
  display: inline-block;
  width: 50%;
  vertical-align: middle;
  border-top: 1px solid var(--border-color);
}

@media (max-width: 900px) {
  h2:before:not(.ttl-cmn-recruit-pagettl-01), h2:after:not(.ttl-cmn-recruit-pagettl-01) {
    display: none;
  }
}

h2:before:not(.ttl-cmn-recruit-pagettl-01) {
  margin: 0 .5em 0 -55%;
}

h2:after:not(.ttl-cmn-recruit-pagettl-01) {
  margin: 0 -55% 0 .5em;
}

@media (max-width: 700px) {
  h2:not(.ttl-cmn-recruit-pagettl-01) {
    font-size: 2.2rem;
  }
}

@media (min-width: 901px) {
  .fxb-col-8 h2:before, .fxb-col-8 h2:after, .fxb-col-6 h2:before, .fxb-col-6 h2:after, .fxb-col-4 h2:before, .fxb-col-4 h2:after, .fxb-col-3 h2:before, .fxb-col-3 h2:after {
    border-top: 0;
  }
}

h3:not(.ttl-job-each-info) {
  font-size: 2.0rem;
  margin-top: 3rem;
  margin-bottom: 1.5rem;
  padding-left: 2rem;
  position: relative;
}

h3:before:not(.ttl-job-each-info) {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 5px;
  background: var(--main-color);
  content: "";
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  h3:before:not(.ttl-job-each-info) {
    height: 90%;
  }
}

h3:after:not(.ttl-job-each-info) {
  position: absolute;
  top: 1px;
  left: 2px;
  height: 100%;
  width: 5px;
  background: var(--main-color);
  content: "";
  -webkit-transform: rotate(10deg);
      -ms-transform: rotate(10deg);
          transform: rotate(10deg);
  z-index: 1;
}

@media all and (-ms-high-contrast: none) {
  h3:after:not(.ttl-job-each-info) {
    height: 90%;
  }
}

@media (max-width: 700px) {
  h3:not(.ttl-job-each-info) {
    font-size: 1.8rem;
  }
}

mainbody;
h4 {
  font-size: 1.6rem;
}

h4 {
  font-size: 1.6rem;
}

@media (max-width: 700px) {
  h4 {
    font-size: 1.4rem;
  }
}

h5 {
  font-size: 1.2rem;
}

/* Paragraph */
pre code {
  display: block;
  line-height: 1.34;
}

/* List */
ol {
  padding-left: 2rem;
}

ul {
  padding-left: 2rem;
}

/* Figure */
figure {
  margin-left: 0;
  margin-right: 0;
}

/* Table */
table {
  margin-bottom: 1em;
  margin-top: 1em;
}

/* Horizontal Rule */
hr {
  border: none;
  border-top: 1px solid var(--border-color);
}

/* Inline Elements */
img {
  height: auto;
  max-width: 100%;
  width: auto;
}

img[src$=".svg"] {
  width: 100%;
}

a {
  color: var(--main-color);
  text-decoration: none;
  word-wrap: break-word;
  cursor: pointer;
  position: relative;
}

:where(.l-main) a:visited {
  color: var(--main-color-dark);
}

a:hover {
  text-decoration: underline;
}

a:hover img {
  opacity: 0.7;
}

a[href^="tel:"] {
  cursor: default;
}

a[href^="tel:"]:hover {
  text-decoration: none;
}

code {
  font-family: "Menlo", "Lucida Console", monospace;
  font-size: 0.8571em;
}

/* Form */
fieldset {
  border: none;
}

input {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica", "Arial", sans-serif;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  outline: none;
}

input:focus:not(.form-job-search-txt) {
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
    background: var(--main-color-translucent);
}

input[type="checkbox"] {
  width: 20px;
  height: 20px;
  vertical-align: middle;
}

@media (max-width: 700px) {
  input[type="checkbox"] {
    border: 1px solid var(--border-color);
  }
}

input[type="email"] {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-color);
}

input[type="radio"] {
  width: 20px;
  height: 20px;
  vertical-align: middle;
}

input[type="tel"] {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-color);
}

input[type="text"] {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-color);
}

input[type="url"] {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-color);
}

textarea {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-color);
}

button {
  outline: none;
}

img[src$=".svg"] {
  width: 100%;
}

.l-header {
  background-color: #fff;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.l-header:after {
  clear: both;
  content: "";
  display: block;
}

@media (min-width: 901px) {
  .l-header {
    width: 100%;
    z-index: 100;
  }
}

@media (max-width: 1099px) {
  .l-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    z-index: 100;
    box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.3);
  }
}

.l-header a {
  color: var(--text-color);
  text-decoration: none;
}

.l-header .fxb-col-12 {
  padding: 0;
}

.l-globalHeader {
  position: relative;
  padding: 0.5rem 1rem 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.l-globalHeader:after {
  clear: both;
  content: "";
  display: block;
}

@media (max-width: 1099px) {
  .l-globalHeader {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 1rem;
    -webkit-align-items: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 60px;
  }
}

.l-main {
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.l-main:after {
  clear: both;
  content: "";
  display: block;
}

:where(.l-main) video,
:where(.l-main) img {
  display: inline;
}

:where(.l-main) body,
:where(.l-main) h1,
:where(.l-main) h2,
:where(.l-main) h3,
:where(.l-main) h4,
:where(.l-main) h5,
:where(.l-main) table,
:where(.l-main) th,
:where(.l-main) td,
:where(.l-main) ul,
:where(.l-main) li,
:where(.l-main) ol,
:where(.l-main) dl,
:where(.l-main) dt,
:where(.l-main) dd,
:where(.l-main) form,
:where(.l-main) p,
:where(.l-main) th,
:where(.l-main) td {
  margin-block-start: revert;
  margin-block-end: revert;
}


@media (min-width: 1100px) {
  .l-main {
    width: 100%;
  }
}

@media (max-width: 1099px) {
  .l-main {
    position: relative;
    top: 60px;
  }
}

.l-main.theme-second, .l-main.theme-detail {
  padding-bottom: 6em;
}

/*.l-mcom.theme-second, .l-mcom.theme-detail {
    padding-bottom: 0em;
}*/

@media (max-width: 1099px) {
  .l-main.theme-top {
    padding-bottom: 6rem;
  }
}

.l-footer {
  padding-top: 4rem;
  background: var(--background-color-light);
  border-top: 1px solid var(--background-color-light);
}

@media (max-width: 900px) {
  .l-footer {
    padding-top: 2rem;
  }
}

.l-footer ul {
  margin: 0;
  padding: 0;
  padding: 0 1rem;
}

.l-footer ul li {
  list-style: none;
}

.l-footer ul li + li {
  margin-top: 3rem;
}

@media (max-width: 900px) {
  .l-footer ul li + li {
    margin-top: 0;
  }
}

.l-footer ul li {
  font-weight: bold;
}

@media (max-width: 700px) {
  .l-footer ul li {
    font-weight: normal;
  }
}

.l-footer ul li a {
  text-decoration: none;
  color: var(--main-color);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border-bottom: 1px solid var(--border-color);
  display: block;
  padding: .5rem 0;
}

.l-footer ul li a:hover {
  color: var(--main-color);
  border-bottom: 1px solid var(--main-color);
}

@media (max-width: 1099px) {
  .l-footer ul li a {
    display: block;
  }
}

@media (max-width: 900px) {
  .l-footer ul li a {
    position: relative;
    padding: 1rem;
  }
  .l-footer ul li a:after {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    padding: 1rem 1.4rem;
  }
}

.l-footer ul li ul {
  margin-top: 1rem;
  padding: 0;
}

.l-footer ul li ul li {
  margin: 0;
  font-weight: 500;
}

.l-footer ul li ul li a {
  color: var(--text-color);
  border-bottom: none;
  padding: 0.2rem 0;
}

.l-footer ul li ul li a:hover {
  border-bottom: 0;
}

@media (max-width: 900px) {
  .l-footer ul li ul {
    display: none;
  }
}

.l-footer dl {
  margin: 0;
  padding: 0;
}

@media (max-width: 900px) {
  .l-footer dl {
    padding: 0 1rem;
  }
}

.l-footer dl dt {
  font-weight: bold;
  padding: 0.5rem 0;
}

@media (max-width: 900px) {
  .l-footer dl dt {
    padding-top: 1rem;
  }
}

@media (max-width: 700px) {
  .l-footer dl dt {
    padding-top: 2rem;
  }
}

.l-footer dl dd {
  margin: 1rem 0 0;
}

.l-footer dl dd span {
  display: block;
}

@media (max-width: 900px) {
  .l-footer dl dd {
    display: inline-block;
    float: left;
    margin-right: 1rem;
  }
}

.l-footer .fxb-section:last-child {
  margin-top: 4rem;
  background: var(--main-color);
  color: #fff;
}

.l-footer .copy {
  width: 100%;
  line-height: 6rem;
  text-align: center;
}

@media (max-width: 700px) {
  .l-footer .copy {
    text-align: left;
    padding-left: 1rem;
    line-height: 7rem;
  }
}

.theme-desktop.theme-multi .l-article {
  float: left;
  width: 75%;
}

.l-article .dummy img {
  max-width: initial;
}

.theme-desktop.theme-multi .l-aside {
  float: left;
  width: 25%;
}

.fxb-container {
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  width: 100%;
}

@media (min-width: 1100px) {
  .fxb-container {
    width: 1080px;
    padding-left: 0;
    padding-right: 0;
  }
  .top-ir .fxb-container {
    width: 100%;
  }
}

.fxb-container-fruid {
  width: 100%;
}

.fxb-row {
  margin-left: -10px;
  margin-right: -10px;
}

.fxb-row:after {
  clear: both;
  content: "";
  display: block;
}

.fxb-container-fruid .fxb-row {
  margin-left: 0;
  margin-right: 0;
}

@media (max-width: 1099px) {
  .row {
    padding: 0 1rem;
  }
}

[class^="fxb-col-"],
[class*=" fxb-col-"] {
  float: left;
  padding-left: 10px;
  padding-right: 10px;
}

[class^="fxb-col-"] .row,
[class*=" fxb-col-"] .row {
  margin: 0;
}

.fxb-col-1 {
  width: 8.33333%;
}

.fxb-col-2 {
  width: 16.66667%;
}

.fxb-col-3 {
  width: 25%;
}

.fxb-col-4 {
  width: 33.33333%;
}

.fxb-col-5 {
  width: 41.66667%;
}

.fxb-col-6 {
  width: 50%;
}

.fxb-col-7 {
  width: 58.33333%;
}

.fxb-col-8 {
  width: 66.66667%;
}

.fxb-col-9 {
  width: 75%;
}

.fxb-col-10 {
  width: 83.33333%;
}

.fxb-col-11 {
  width: 91.66667%;
}

.fxb-col-12 {
  width: 100%;
}

@media (max-width: 700px) {
  .fxb-col-xs-1 {
    width: 8.33333%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-1 {
    width: 8.33333%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-1 {
    width: 8.33333%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-1 {
    width: 8.33333%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-2 {
    width: 16.66667%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-2 {
    width: 16.66667%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-2 {
    width: 16.66667%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-2 {
    width: 16.66667%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-3 {
    width: 25%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-3 {
    width: 25%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-3 {
    width: 25%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-3 {
    width: 25%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-4 {
    width: 33.33333%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-4 {
    width: 33.33333%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-4 {
    width: 33.33333%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-4 {
    width: 33.33333%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-5 {
    width: 41.66667%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-5 {
    width: 41.66667%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-5 {
    width: 41.66667%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-5 {
    width: 41.66667%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-6 {
    width: 50%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-6 {
    width: 50%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-6 {
    width: 50%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-6 {
    width: 50%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-7 {
    width: 58.33333%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-7 {
    width: 58.33333%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-7 {
    width: 58.33333%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-7 {
    width: 58.33333%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-8 {
    width: 66.66667%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-8 {
    width: 66.66667%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-8 {
    width: 66.66667%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-8 {
    width: 66.66667%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-9 {
    width: 75%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-9 {
    width: 75%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-9 {
    width: 75%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-9 {
    width: 75%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-10 {
    width: 83.33333%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-10 {
    width: 83.33333%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-10 {
    width: 83.33333%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-10 {
    width: 83.33333%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-11 {
    width: 91.66667%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-11 {
    width: 91.66667%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-11 {
    width: 91.66667%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-11 {
    width: 91.66667%;
  }
}

@media (max-width: 700px) {
  .fxb-col-xs-12 {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .fxb-col-sm-12 {
    width: 100%;
  }
}

@media (max-width: 1099px) {
  .fxb-col-md-12 {
    width: 100%;
  }
}

@media (min-width: 1100px) {
  .fxb-col-lg-12 {
    width: 100%;
  }
}

.fxb-container-fruid [class^="fxb-col-"],
.fxb-container-fruid [class*=" fxb-col-"] {
  padding: 0;
}

@media (max-width: 900px) {
  .fxb-col-8 {
    width: 50%;
  }
}

@media (max-width: 700px) {
  .fxb-col-8 {
    width: 100%;
  }
}

@media (max-width: 700px) {
  .fxb-col-6 {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .fxb-col-4 {
    width: 50%;
  }
}

@media (max-width: 700px) {
  .fxb-col-4 {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .fxb-col-3 {
    width: 50%;
  }
}

@media (max-width: 700px) {
  .fxb-col-3 {
    width: 100%;
  }
}

[class^="visible-"] {
  display: none;
}

@media (max-width: 700px) {
  .visible-xs {
    display: block;
  }
}

@media (max-width: 900px) {
  .visible-sm {
    display: block;
  }
}

@media (max-width: 1099px) {
  .visible-md {
    display: block;
  }
}

@media (min-width: 1100px) {
  .visible-lg {
    display: block;
  }
}

[class^="hidden-"] {
  display: block;
}

@media (max-width: 700px) {
  .hidden-xs {
    display: none;
  }
}

@media (max-width: 900px) {
  .hidden-sm {
    display: none;
  }
}

@media (max-width: 1099px) {
  .hidden-md {
    display: none;
  }
}

@media (min-width: 1100px) {
  .hidden-lg {
    display: none;
  }
}

[class^="heading-"]:before, [class^="heading-"]:after,
[class*=" heading-"]:before,
[class*=" heading-"]:after {
  display: none;
}

h2.heading-primary {
  border-bottom: 1px solid var(--main-color);
  padding-bottom: 1.5rem;
  text-align: left;
}

h3.heading-primary {
  color: var(--main-color);
  padding-left: 0;
  padding-bottom: 1rem;
  border-bottom: 1px dotted var(--border-color);
}

h4.heading-primary {
  background: var(--main-color);
  padding: 1rem;
  color: #fff;
}

h2.heading-secondary {
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 1.5rem;
  text-align: left;
}

h3.heading-secondary {
  padding-bottom: 1rem;
  border-bottom: 1px dotted var(--border-color);
  padding-left: 0;
}

h4.heading-secondary {
  background: var(--main-color-translucent);
  padding: 1rem;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-left {
  text-align: left;
}

.text-accent {
  color: #f00;
}

.text-primary {
  color: var(--main-color);
}

.text-secondary {
  color: var(--main-color);
}

.text-default {
  color: var(--text-color);
}

.text-bold {
  font-weight: bold;
}

.text-normal {
  font-weight: normal;
}

.text-smaller {
  font-size: 1.0rem;
}

.text-small {
  font-size: 1.2rem;
}

.text-large {
  font-size: 1.6rem;
}

.text-larger {
  font-size: 1.8rem;
}

.text-largest {
  font-size: 2.4rem;
}

.text-intro-primary {
  font-size: 2.2rem;
  color: var(--main-color);
  font-weight: bold;
}

.text-intro-secondary {
  font-size: 2.2rem;
  color: var(--main-color);
  font-weight: bold;
}

@media (max-width: 900px) {
  [class^="text-intro-"],
  [class*=" text-intro-"] {
    line-height: 1.34;
  }
  [class^="text-intro-"] br,
  [class*=" text-intro-"] br {
    display: none;
  }
}

[class^="list-"],
[class*=" list-"] {
  list-style-type: none;
  padding-left: 0;
}

[class^="list-"] li,
[class*=" list-"] li {
  padding-left: 2.4rem;
  position: relative;
}

[class^="list-"] li:before:not(.list-sitemap),
[class*=" list-"] li:before:not(.list-sitemap) {
  content: "\2022";
  margin-right: -1.5em;
  position: absolute;
  right: 100%;
}

.list-grid-12 > li {
  width: 100%;
}

.list-inline li {
  display: inline-block;
}

.list-asterisk li:before {
  content: "\203b";
}

.list-bracketsNumber li {
  counter-increment: cnt;
}

.list-bracketsNumber li:before {
  display: marker;
  content: "(" counter(cnt) ") ";
}

.list-arrow li:before {
  content: "\f0da";
  font-family: FontAwesome;
  padding-right: 0.5rem;
}

[class^="figure-"],
[class*=" figure-"] {
  text-align: center;
}

.figure-left {
  text-align: left;
}

.figure-center {
  text-align: center;
}

.figure-right {
  text-align: right;
}

.figure-float-left {
  float: left;
  margin-right: 10px;
  margin-top: 0;
}

@media (max-width: 700px) {
  .figure-float-left {
    float: none;
    margin-right: 0;
    text-align: center;
  }
}

.figure-float-right {
  float: right;
  margin-left: 10px;
  margin-top: 0;
}

@media (max-width: 700px) {
  .figure-float-right {
    float: none;
    margin-left: 0;
    text-align: center;
  }
}

[class^="table-"] th, [class^="table-"] td,
[class*=" table-"] th,
[class*=" table-"] td {
  padding: 0.8rem;
}

.table-default {
  border-top: 1px solid var(--border-color);
  border-right: 1px solid var(--border-color);
}

.table-default td, .table-default th {
  border-bottom: 1px solid var(--border-color);
  border-left: 1px solid var(--border-color);
}

.table-default th {
  background: var(--background-color-light);
}

.table-fruid {
  width: 100%;
}

.table-center {
  margin: 0 auto;
}

.table-harf {
  width: 50%;
}

@media (max-width: 900px) {
  .table-harf {
    width: 100%;
  }
}

[class^="icon-"]:before,
[class*=" icon-"]:before,
[class^="icon-"]:after,
[class*=" icon-"]:after {
  display: inline-block;
  font-family: FontAwesome;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1em;
  margin-left: .4em;
  margin-right: .2em;
  -moz-osx-font-smoothing: grayscale;
  speak: none;
  text-align: center;
  text-decoration: inherit;
  text-transform: none;
}

.icon-arrow-right:before {
  content: '\f0da\0020';
}

.icon-arrow-bottom:before {
  content: '\f0d7\0020';
}

.icon-arrow-bottom-final:after {
  content: '\0020\f0d7';
}

.icon-pdf:after {
  content: "\0020\f1c1";
  color: #f00;
}

.icon-ex:after {
  content: "\0020\f1c3";
  color: green;
}

.icon-pdf-left:before {
  content: "\f1c1";
  color: #f00;
}

[class^="icon-"]:hover:before,
[class*=" icon-"]:hover:before,
[class^="icon-"]:hover:after,
[class*=" icon-"]:hover:after {
  text-decoration: none;
}

[class^="btn-"]:not(.btn-cmn-recruit-01),
[class^="btn-"]:not(.btn-cmn-recruit-01):link,
[class^="btn-"]:not(.btn-cmn-recruit-01):visited,
[class*=" btn-"]:not(.btn-cmn-recruit-01),
[class*=" btn-"]:not(.btn-cmn-recruit-01):link,
[class*=" btn-"]:not(.btn-cmn-recruit-01):visited {
  font-size: 1.4rem;
  text-decoration: none;
  margin: 0.5rem;
  padding: 1rem 2rem 1rem;
  border-radius: 6px;
  display: inline-block;
  line-height: normal;
  vertical-align: middle;
  -webkit-transition: all .5s;
  transition: all .5s;
  position: relative;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica", "Arial", sans-serif;
  font-weight: 600;
  box-sizing: border-box;
}

@media all and (-ms-high-contrast: none) {
  [class^="btn-"],
  [class*=" btn-"] {
    padding: 1.2rem 2rem 0.8rem;
  }
}

[class^="btn-"]:hover,
[class*=" btn-"]:hover {
  text-decoration: none;
}

[class^="btn-"]:before, [class^="btn-"]:after,
[class*=" btn-"]:before,
[class*=" btn-"]:after {
  font-family: FontAwesome;
  font-weight: normal;
}

[class^="btn-"]:before,
[class*=" btn-"]:before {
  margin-right: 0.5rem;
}

.btn-default {
  color: var(--main-color);
  border: 1px solid var(--main-color);
}

.btn-default:hover {
  color: #fff;
  background-color: var(--main-color);
}

.btn-default[disabled]:hover {
  color: var(--main-color) !important;
  background-color: #fff !important;
}

.btn-usually {
  color: var(--text-color);
  border: 1px solid var(--text-color);
}

.btn-usually:hover {
  color: #fff;
  background-color: var(--main-color);
}

.btn-usually[disabled]:hover {
  color: var(--text-color) !important;
  background-color: #fff !important;
}

.btn-primary {
  color: #fff;
  background-color: var(--main-color);
}

.btn-primary:hover {
  background-color: var(--background-color-dark);
}

.btn-primary[disabled]:hover {
  background-color: var(--main-color) !important;
}

.btn-secondary, .btn-detail {
  color: #fff;
  background-color: var(--main-color);
}

.btn-secondary:hover, .btn-detail:hover {
  background-color: var(--main-color-dark);
}

.btn-secondary[disabled]:hover, .btn-detail[disabled]:hover {
  color: #fff !important;
  background-color: var(--main-color) !important;
}

.btn-flat {
  color: var(--main-color);
  background-color: #fff;
}

.btn-flat:hover {
  background-color: #b1ddff;
}

.btn-ghost {
  color: #fff;
  border: 1px solid #fff;
}

.btn-ghost:hover {
  background-color: rgba(255, 255, 255, 0.3);
  border-bottom: 1px solid #fff;
}

.btn-map[disabled]:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, 0) !important;
}

.btn-map,
a.btn-map {
  color: #fff;
  background: var(--main-color);
}

.btn-map:after {
  content: "\f041";
  margin-left: 1rem;
}

.btn-map:hover {
  background: var(--main-color-dark);
}

.btn-map[disabled]:hover {
  color: #fff !important;
  background: var(--main-color) !important;
}

.btn-site {
  color: #fff;
  background: var(--main-color);
}

.btn-site:after {
  content: "\f0c1";
  margin-left: 1rem;
}

.btn-site:hover {
  background: var(--main-color-dark);
}

.btn-site[disabled]:hover {
  color: #fff !important;
  background: var(--main-color) !important;
}

.btn-return {
  color: #999;
  border: 1px solid #999;
}

.btn-return:before {
  content: "\f104";
  margin-right: 1rem;
}

.btn-return:hover {
  background: var(--main-color);
  color: #fff;
}

.btn-return[disabled]:hover {
  color: #999 !important;
  background: #fff !important;
}

.btn-close {
  color: #fff;
  background: var(--text-color);
}

.btn-close:before {
  content: "\f057";
  margin-right: 1rem;
}

.btn-close:hover {
  background: #999;
}

.btn-close[disabled]:hover {
  background: var(--text-color) !important;
}

.arrow-return:before {
  content: "\f104";
  margin-right: 1rem;
}

.arrow-right:after, .arrow-left:after, .btn-detail:after, .btn-entry:after {
  content: "\f105";
  font-family: FontAwesome;
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

button {
  cursor: pointer;
}

.btn-save, .btn-reset, .btn-add {
  border: 2px solid var(--border-color);
  color: #999;
  background: #fff;
  padding: 0.9rem 2rem 0.9rem;
}

@media all and (-ms-high-contrast: none) {
  .btn-save, .btn-reset, .btn-add {
    padding: 1.1rem 2rem 0.7rem;
  }
}

.btn-save:before {
  content: "\f004";
  color: #F8BBD0;
}

.btn-save:hover {
  background: rgba(248, 187, 208, 0.2);
}

.btn-save[disabled]:hover {
  background: #fff !important;
}

.btn-reset:before {
  content: "\f021";
  color: var(--main-color);
}

.btn-reset:hover {
  background: var(--main-color-translucent);
}

.btn-reset[disabled]:hover {
  background: #fff !important;
}

.btn-add:before {
  content: "\f07b";
  color: #ffc107;
}

.btn-add:hover {
  background: rgba(255, 193, 7, 0.2);
}

.btn-add[disabled]:hover {
  background: #fff !important;
}

.btn-search {
  background: var(--main-color);
  color: #fff;
}

.btn-search:before {
  content: "\f002";
  color: rgba(255, 255, 255, 0.5);
}

.btn-search:hover {
  background: var(--background-color-dark);
}

.btn-search[disabled]:hover {
  background: var(--main-color) !important;
  color: #fff !important;
}

.btn-entry {
  background: #f44336;
  color: #fff;
}

.btn-entry:hover {
  background: #f44336;
}

.btn-detail:after, .btn-entry:after {
  -webkit-transition: all .5s;
  transition: all .5s;
  margin-left: 0.5rem;
}

.btn-detail:hover:after, .btn-entry:hover:after {
  margin-left: 1rem;
}

.btn-choice {
  border: 1px solid var(--border-color);
  padding: 1rem 3rem;
}

.btn-choice:hover {
  background: rgba(204, 204, 204, 0.2);
}

.btn-choice[disabled]:hover {
  background: transparent !important;
  color: var(--main-color) !important;
}

.arrow-right {
  padding-left: 1.5rem;
  padding-right: 2.5rem;
}

.arrow-right:after {
  right: 1rem;
}

.arrow-left {
  padding-right: 1.5rem;
  padding-left: 2.5rem;
}

.arrow-left:after {
  left: 1rem;
}

.btn-big {
  padding: 1.5rem 3.6rem 1.5rem;
  font-size: 1.8rem;
}

@media all and (-ms-high-contrast: none) {
  .btn-big {
    padding: 1.6rem 3.6rem 1.4rem;
  }
}

.btn-favorite {
  background: #fff;
  color: var(--main-color);
  border: 1px solid var(--main-color);
}

.btn-favorite:hover {
  background: var(--main-color);
  color: #fff;
}

.btn-favorite[disabled]:hover {
  background: #fff !important;
  color: var(--main-color) !important;
  border: 1px solid var(--main-color) !important;
}

.btn-disabled, .btn-disabled:hover {
  background: #fff !important;
  color: #ddd !important;
  border-color: #ddd;
  cursor: default;
}

button[disabled], a[disabled], input[disabled] {
  cursor: default;
  opacity: 0.5;
}

[class^="card-"],
[class*=" card-"] {
  color: inherit;
  display: block;
  margin-bottom: 1em;
  margin-top: 1em;
  text-decoration: none;
}

[class^="card-"] h2:before, [class^="card-"] h2:after,
[class*=" card-"] h2:before,
[class*=" card-"] h2:after {
  content: none;
}

/* Sample Desgin */
.card-default {
  background-color: #fff;
  box-shadow: 0 0 0.5em var(--background-color-light);
  padding-bottom: .5em;
  -webkit-transition: box-shadow .25s linear;
  transition: box-shadow .25s linear;
}

.card-default:hover {
  box-shadow: 0 0 1em #ccc;
}

.card-default > ._image img {
  width: 100%;
}

.card-default > ._content {
  padding: 0 10px;
}

.card-default > ._content ._title {
  margin: 1.5rem 0 1rem;
}

[class^="panel-"],
[class*=" panel-"] {
  background-color: #fff;
  box-shadow: 0 0 0.5em var(--background-color-light);
  padding: 1rem 2rem;
  border: 1px solid var(--border-color);
}

[class^="panel-"]:after,
[class*=" panel-"]:after {
  clear: both;
  content: "";
  display: block;
}

[class^="panel-"] h2,
[class*=" panel-"] h2 {
  margin-top: 1rem;
  content: none;
}

[class^="panel-"] h2:before, [class^="panel-"] h2:after,
[class*=" panel-"] h2:before,
[class*=" panel-"] h2:after {
  content: none;
}

[class^="panel-"] > h3,
[class*=" panel-"] > h3 {
  margin-top: 1rem;
}

[class^="panel-"] ._title,
[class*=" panel-"] ._title {
  font-size: 1.8rem;
  text-align: left;
}

[class^="panel-"] ._link,
[class*=" panel-"] ._link {
  clear: both;
}

[class^="panel-"] ._link a:before,
[class*=" panel-"] ._link a:before {
  content: "\f105\00a0";
  font-family: FontAwesome;
}

.panel-default {
  background-color: #fff;
}

.panel-default-border {
  border-top: 3px solid var(--main-color);
  background-color: #fff;
}

.panel-primary {
  background-color: var(--main-color-translucent);
}

.panel-primary-border {
  border-top: 3px solid var(--main-color);
  background-color: var(--main-color-translucent);
}

[class^="grid-"],
[class*=" grid-"] {
  margin: 0 -10px;
}

[class^="grid-"]:after,
[class*=" grid-"]:after {
  clear: both;
  content: "";
  display: block;
}

[class^="grid-"] > ._col,
[class*=" grid-"] > ._col {
  float: left;
  padding: 10px;
}

[class^="grid-"] > li,
[class*=" grid-"] > li {
  float: left;
  padding: 0 10px;
}

.grid-1 > ._col {
  width: 8.33333%;
}

@media (max-width: 700px) {
  .grid-1 > ._col {
    width: 100%;
  }
}

.grid-2 > ._col {
  width: 16.66667%;
}

@media (max-width: 700px) {
  .grid-2 > ._col {
    width: 100%;
  }
}

.grid-3 > ._col {
  width: 25%;
}

@media (max-width: 700px) {
  .grid-3 > ._col {
    width: 100%;
  }
}

.grid-4 > ._col {
  width: 33.33333%;
}

@media (max-width: 700px) {
  .grid-4 > ._col {
    width: 100%;
  }
}

.grid-5 > ._col {
  width: 41.66667%;
}

@media (max-width: 700px) {
  .grid-5 > ._col {
    width: 100%;
  }
}

.grid-6 > ._col {
  width: 50%;
}

@media (max-width: 700px) {
  .grid-6 > ._col {
    width: 100%;
  }
}

.grid-7 > ._col {
  width: 58.33333%;
}

@media (max-width: 700px) {
  .grid-7 > ._col {
    width: 100%;
  }
}

.grid-8 > ._col {
  width: 66.66667%;
}

@media (max-width: 700px) {
  .grid-8 > ._col {
    width: 100%;
  }
}

.grid-9 > ._col {
  width: 75%;
}

@media (max-width: 700px) {
  .grid-9 > ._col {
    width: 100%;
  }
}

.grid-10 > ._col {
  width: 83.33333%;
}

@media (max-width: 700px) {
  .grid-10 > ._col {
    width: 100%;
  }
}

.grid-11 > ._col {
  width: 91.66667%;
}

@media (max-width: 700px) {
  .grid-11 > ._col {
    width: 100%;
  }
}

.grid-12 > ._col {
  width: 100%;
}

@media (max-width: 700px) {
  .grid-12 > ._col {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .grid-6 > ._col {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .grid-4 > ._col {
    width: 50%;
  }
}

@media (max-width: 700px) {
  .grid-4 > ._col {
    width: 100%;
  }
}

.enItalic {
  font-weight: 600;
  font-style: italic;
  font-size: 4.8rem;
  font-family: 'arial';
  letter-spacing: 0.05rem;
}

.txt-gradient {
  background: -webkit-linear-gradient(left, var(--main-color), var(--main-color));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
}

h2.enItalic {
  color: var(--main-color);
  text-align: center;
  margin-bottom: 1rem;
}

h2.enItalic span.txt-small {
  font-size: 1.4rem;
  font-style: normal;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica", "Arial", sans-serif;
  display: block;
}

h2.enItalic:before, h2.enItalic:after {
  display: none;
}

@media (max-width: 900px) {
  h2.enItalic {
    font-size: 2.8rem;
  }
}

.hgroup {
  position: relative;
}

@media (max-width: 700px) {
  .hgroup h2 {
    margin-bottom: 3rem;
  }
}

.hgroup .associated {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  background: #fff;
  padding-left: 1rem;
}

.hgroup .associated i {
  font-size: 2.4rem;
}

.hgroup .associated .fa-rss-square {
  color: orange;
}

@media (max-width: 700px) {
  .hgroup .associated {
    position: static;
    display: block;
    padding-left: 0;
    text-align: center;
    padding-top: 1rem;
  }
}

.fxb-margin {
  margin-bottom: 4rem;
}

.mb-m2 {
  margin-bottom: -2rem;
}

.mb-m1 {
  margin-bottom: -1rem;
}

.mb-m05 {
  margin-bottom: -.5rem;
}

.mb-0 {
  margin-bottom: 0;
}

.mb-p05 {
  margin-bottom: .5rem;
}

.mb-p1 {
  margin-bottom: 1rem;
}

.mb-p2 {
  margin-bottom: 2rem;
}

.mb-p3 {
  margin-bottom: 3rem;
}

.mb-p4 {
  margin-bottom: 4rem;
}

.mb-p5 {
  margin-bottom: 5rem;
}

.mb-p6 {
  margin-bottom: 6rem;
}

.mt-m2 {
  margin-top: -2rem;
}

.mt-m1 {
  margin-top: -1rem;
}

.mt-m05 {
  margin-top: -.5rem;
}

.mt-0 {
  margin-top: 0;
}

.mt-p05 {
  margin-top: .5rem;
}

.mt-p1 {
  margin-top: 1rem;
}

.mt-p2 {
  margin-top: 2rem;
}

.mt-p3 {
  margin-top: 3rem;
}

.mt-p4 {
  margin-top: 4rem;
}

.mt-p5 {
  margin-top: 5rem;
}

.mt-p6 {
  margin-top: 6rem;
}

.pb-0 {
  padding-bottom: 0;
}

.pb-p05 {
  padding-bottom: .5rem;
}

.pb-p1 {
  padding-bottom: 1rem;
}

.pb-p2 {
  padding-bottom: 2rem;
}

.pb-p3 {
  padding-bottom: 3rem;
}

.pb-p4 {
  padding-bottom: 4rem;
}

.pt-0 {
  padding-top: 0;
}

.pt-p05 {
  padding-top: .5rem;
}

.pt-p1 {
  padding-top: 1rem;
}

.pt-p2 {
  padding-top: 2rem;
}

.pt-p3 {
  padding-top: 3rem;
}

.pt-p4 {
  padding-top: 4rem;
}

.bg-tertiary {
  background: var(--main-color-translucent);
}

.bg-gray {
  background: var(--background-color-light);
}

.bg-change {
  background: var(--background-color-light);
}

.bg-tertiary-box {
  background: var(--main-color-translucent);
  padding: 1rem 2rem;
}

.bg-tertiary-box h2 {
  margin: 1rem 0;
}

.bg-tertiary-box h2:before, .bg-tertiary-box h2:after {
  display: none;
}

.bg-gray-box {
  background: var(--background-color-light);
  padding: 1rem 2rem;
}

.bg-gray-box h2 {
  margin: 1rem 0;
}

.bg-gray-box h2:before, .bg-gray-box h2:after {
  display: none;
}

.row {
  margin-left: -10px;
  margin-right: -10px;
}

.row:after {
  clear: both;
  content: "";
  display: block;
}

[class^="col-"],
[class*=" col-"] {
  float: left;
  padding-left: 10px;
  padding-right: 10px;
}

.col-1 {
  width: 8.33333%;
}

.col-2 {
  width: 16.66667%;
}

.col-3 {
  width: 25%;
}

.col-4 {
  width: 33.33333%;
}

.col-5 {
  width: 41.66667%;
}

.col-6 {
  width: 50%;
}

.col-7 {
  width: 58.33333%;
}

.col-8 {
  width: 66.66667%;
}

.col-9 {
  width: 75%;
}

.col-10 {
  width: 83.33333%;
}

.col-11 {
  width: 91.66667%;
}

.col-12 {
  width: 100%;
}

@media (max-width: 900px) {
  .col-3 {
    width: 50%;
  }
  .col-4, .col-6 {
    width: 100%;
  }
}

@media (max-width: 700px) {
  [class^="col-"],
  [class*=" col-"] {
    width: 100%;
  }
}

@media (max-width: 700px) {
  .col-xs-1 {
    width: 8.33333%;
  }
}

@media (max-width: 900px) {
  .col-sm-1 {
    width: 8.33333%;
  }
}

@media (max-width: 1099px) {
  .col-md-1 {
    width: 8.33333%;
  }
}

@media (min-width: 1100px) {
  .col-lg-1 {
    width: 8.33333%;
  }
}

@media (max-width: 700px) {
  .col-xs-2 {
    width: 16.66667%;
  }
}

@media (max-width: 900px) {
  .col-sm-2 {
    width: 16.66667%;
  }
}

@media (max-width: 1099px) {
  .col-md-2 {
    width: 16.66667%;
  }
}

@media (min-width: 1100px) {
  .col-lg-2 {
    width: 16.66667%;
  }
}

@media (max-width: 700px) {
  .col-xs-3 {
    width: 25%;
  }
}

@media (max-width: 900px) {
  .col-sm-3 {
    width: 25%;
  }
}

@media (max-width: 1099px) {
  .col-md-3 {
    width: 25%;
  }
}

@media (min-width: 1100px) {
  .col-lg-3 {
    width: 25%;
  }
}

@media (max-width: 700px) {
  .col-xs-4 {
    width: 33.33333%;
  }
}

@media (max-width: 900px) {
  .col-sm-4 {
    width: 33.33333%;
  }
}

@media (max-width: 1099px) {
  .col-md-4 {
    width: 33.33333%;
  }
}

@media (min-width: 1100px) {
  .col-lg-4 {
    width: 33.33333%;
  }
}

@media (max-width: 700px) {
  .col-xs-5 {
    width: 41.66667%;
  }
}

@media (max-width: 900px) {
  .col-sm-5 {
    width: 41.66667%;
  }
}

@media (max-width: 1099px) {
  .col-md-5 {
    width: 41.66667%;
  }
}

@media (min-width: 1100px) {
  .col-lg-5 {
    width: 41.66667%;
  }
}

@media (max-width: 700px) {
  .col-xs-6 {
    width: 50%;
  }
}

@media (max-width: 900px) {
  .col-sm-6 {
    width: 50%;
  }
}

@media (max-width: 1099px) {
  .col-md-6 {
    width: 50%;
  }
}

@media (min-width: 1100px) {
  .col-lg-6 {
    width: 50%;
  }
}

@media (max-width: 700px) {
  .col-xs-7 {
    width: 58.33333%;
  }
}

@media (max-width: 900px) {
  .col-sm-7 {
    width: 58.33333%;
  }
}

@media (max-width: 1099px) {
  .col-md-7 {
    width: 58.33333%;
  }
}

@media (min-width: 1100px) {
  .col-lg-7 {
    width: 58.33333%;
  }
}

@media (max-width: 700px) {
  .col-xs-8 {
    width: 66.66667%;
  }
}

@media (max-width: 900px) {
  .col-sm-8 {
    width: 66.66667%;
  }
}

@media (max-width: 1099px) {
  .col-md-8 {
    width: 66.66667%;
  }
}

@media (min-width: 1100px) {
  .col-lg-8 {
    width: 66.66667%;
  }
}

@media (max-width: 700px) {
  .col-xs-9 {
    width: 75%;
  }
}

@media (max-width: 900px) {
  .col-sm-9 {
    width: 75%;
  }
}

@media (max-width: 1099px) {
  .col-md-9 {
    width: 75%;
  }
}

@media (min-width: 1100px) {
  .col-lg-9 {
    width: 75%;
  }
}

@media (max-width: 700px) {
  .col-xs-10 {
    width: 83.33333%;
  }
}

@media (max-width: 900px) {
  .col-sm-10 {
    width: 83.33333%;
  }
}

@media (max-width: 1099px) {
  .col-md-10 {
    width: 83.33333%;
  }
}

@media (min-width: 1100px) {
  .col-lg-10 {
    width: 83.33333%;
  }
}

@media (max-width: 700px) {
  .col-xs-11 {
    width: 91.66667%;
  }
}

@media (max-width: 900px) {
  .col-sm-11 {
    width: 91.66667%;
  }
}

@media (max-width: 1099px) {
  .col-md-11 {
    width: 91.66667%;
  }
}

@media (min-width: 1100px) {
  .col-lg-11 {
    width: 91.66667%;
  }
}

@media (max-width: 700px) {
  .col-xs-12 {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .col-sm-12 {
    width: 100%;
  }
}

@media (max-width: 1099px) {
  .col-md-12 {
    width: 100%;
  }
}

@media (min-width: 1100px) {
  .col-lg-12 {
    width: 100%;
  }
}

.float-left {
  float: left;
  margin-right: 2rem;
  margin-bottom: 2rem;
}

@media (max-width: 700px) {
  .float-left {
    float: none;
    margin: 0 0 1rem;
    text-align: center;
  }
}

.float-left > p {
  margin-top: 0;
}

.float-left > figure {
  margin-top: 0;
}

.float-right {
  float: right;
  margin-left: 2rem;
  margin-bottom: 2rem;
}

@media (max-width: 700px) {
  .float-right {
    float: none;
    margin: 0 0 1rem;
    text-align: center;
  }
}

.float-right > p {
  margin-top: 0;
}

.float-right > figure {
  margin-top: 0;
}

.l-googleMap {
  position: relative;
  padding-bottom: 50%;
  height: 0;
  overflow: hidden;
}

.l-googleMap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

@media (max-width: 900px) {
  .l-scrollRWD {
    overflow-x: scroll;
    white-space: nowrap;
  }
  .l-scrollRWD img, .l-scrollRWD table {
    max-width: initial;
  }
  .l-scrollRWD table {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .l-scrollRWD::-webkit-scrollbar {
    height: 5px;
  }
  .l-scrollRWD::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #eee;
  }
  .l-scrollRWD::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #666;
  }
}

select:not(.form-job-search-select .form-job-search-select2) {
  cursor: pointer;
  border: 1px solid var(--border-color);
  padding: 0.5rem;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica", "Arial", sans-serif;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background: #fff;
}

select:hover:not(.form-job-search-select .form-job-search-selec2) {
  border: 1px solid #b1ddff;
}

select::-ms-expand {
    display: none;
}

[class^="list-grid-"] > li,
[class*=" list-grid-"] > li {
  float: left;
}

.list-grid-6 > li {
  width: 50%;
}

.list-grid-4 > li {
  width: 33.3333%;
}

@media (max-width: 900px) {
  .list-grid-4 > li {
    width: 50%;
  }
}

.list-grid-3 > li {
  width: 25%;
}

@media (max-width: 900px) {
  .list-grid-3 > li {
    width: 50%;
  }
}

.list-grid-2 > li {
  width: 20%;
}

@media (max-width: 900px) {
  .list-grid-2 > li {
    width: 50%;
  }
}

@media (max-width: 700px) {
  [class^="list-grid-"] > li,
  [class*=" list-grid-"] > li {
    width: 100%;
  }
}

.errowBox {
  position: relative;
  width: 100%;
  height: auto;
  color: #fff;
  background: #ccc;
  margin-top: 4rem;
}

@media (max-width: 700px) {
  .errowBox {
    margin-top: 0;
  }
}

.errowBox:before {
  content: "";
  display: block;
  padding-top: 50%;
}

@media (max-width: 700px) {
  .errowBox:before {
    padding-top: 75%;
  }
}

.errowBox .errowBox-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  font-size: 3.6rem;
}

.errowBox .errowBox-inner ._number {
  font-size: 7.2rem;
  display: block;
  font-weight: bold;
  line-height: 1em;
}

[id^="tooltip-"],
[id*=" tooltip-"] {
  position: absolute !important;
  width: 2.4%;
}

[id^="tooltip-"].circle,
[id*=" tooltip-"].circle {
  height: 7.6%;
}

[id^="tooltip-"].pin,
[id*=" tooltip-"].pin {
  height: 11.6%;
}

h3 i.fa {
  margin-right: 1rem;
}

.loader {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 12px;
}

.dev-h2 {
  background: var(--text-color);
  color: #fff;
  font-weight: bold;
  margin-bottom: 1em;
  margin-top: 1em;
  padding: 1rem;
  text-align: center;
}

.dev-h3 {
  background: #ccc;
  color: var(--text-color);
  font-weight: bold;
  margin-bottom: 1em;
  margin-top: 1em;
  padding: 0.5em 10px;
}

.dev-h4 {
  background: var(--background-color-light);
  color: var(--text-color);
  font-weight: bold;
  margin-bottom: 1em;
  margin-top: 1em;
  padding: 0.5em 10px;
}

.dev-checkerTextarea {
  border: 2px solid var(--border-color);
  font-family: "Menlo", "Lucida Console", monospace;
  font-size: 0.8571em;
  line-height: 1.34;
  margin-bottom: 1em;
  margin-top: 1em;
  min-height: 320px;
  outline: none;
  padding: 5px;
  width: 100%;
}

.dev-desc {
  padding: 1rem;
  background: #111;
  color: #fff;
}

button[data-balloon] {
  overflow: visible;
}

[data-balloon] {
  position: relative;
}

[data-balloon]:after {
  filter: alpha(opactiy=0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all 0.18s ease-out 0.18s;
  transition: all 0.18s ease-out 0.18s;
  background: rgba(17, 17, 17, 0.9);
  border-radius: 4px;
  color: #fff;
  content: attr(data-balloon);
  font-size: 12px;
  padding: .5em 1em;
  position: absolute;
  white-space: nowrap;
  z-index: 10;
}

[data-balloon]:before {
  background: no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(0)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E");
  background-size: 100% auto;
  width: 18px;
  height: 6px;
  filter: alpha(opactiy=0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all 0.18s ease-out 0.18s;
  transition: all 0.18s ease-out 0.18s;
  content: '';
  position: absolute;
  z-index: 10;
}

[data-balloon]:hover:before, [data-balloon]:hover:after, [data-balloon][data-balloon-visible]:before, [data-balloon][data-balloon-visible]:after {
  filter: alpha(opactiy=100);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -moz-opacity: 1;
  -khtml-opacity: 1;
  opacity: 1;
  pointer-events: auto;
}

[data-balloon].font-awesome:after {
  font-family: FontAwesome;
}

[data-balloon][data-balloon-break]:after {
  white-space: pre;
}

[data-balloon][data-balloon-pos="up"]:after {
  bottom: 100%;
  left: 50%;
  margin-bottom: 11px;
  -webkit-transform: translate(-50%, 10px);
  -ms-transform: translate(-50%, 10px);
  transform: translate(-50%, 10px);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
}

[data-balloon][data-balloon-pos="up"]:before {
  bottom: 100%;
  left: 50%;
  margin-bottom: 5px;
  -webkit-transform: translate(-50%, 10px);
  -ms-transform: translate(-50%, 10px);
  transform: translate(-50%, 10px);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
}

[data-balloon][data-balloon-pos="up"]:hover:after, [data-balloon][data-balloon-pos="up"][data-balloon-visible]:after {
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

[data-balloon][data-balloon-pos="up"]:hover:before, [data-balloon][data-balloon-pos="up"][data-balloon-visible]:before {
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

[data-balloon][data-balloon-pos='down']:after {
  left: 50%;
  margin-top: 11px;
  top: 100%;
  -webkit-transform: translate(-50%, -10px);
  -ms-transform: translate(-50%, -10px);
  transform: translate(-50%, -10px);
}

[data-balloon][data-balloon-pos='down']:before {
  background: no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(180 18 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E");
  background-size: 100% auto;
  width: 18px;
  height: 6px;
  left: 50%;
  margin-top: 5px;
  top: 100%;
  -webkit-transform: translate(-50%, -10px);
  -ms-transform: translate(-50%, -10px);
  transform: translate(-50%, -10px);
}

[data-balloon][data-balloon-pos='down']:hover:after, [data-balloon][data-balloon-pos='down'][data-balloon-visible]:after {
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

[data-balloon][data-balloon-pos='down']:hover:before, [data-balloon][data-balloon-pos='down'][data-balloon-visible]:before {
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

[data-balloon][data-balloon-pos='left']:after {
  margin-right: 11px;
  right: 100%;
  top: 50%;
  -webkit-transform: translate(10px, -50%);
  -ms-transform: translate(10px, -50%);
  transform: translate(10px, -50%);
}

[data-balloon][data-balloon-pos='left']:before {
  background: no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2212px%22%20height%3D%2236px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(-90 18 18)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E");
  background-size: 100% auto;
  width: 6px;
  height: 18px;
  margin-right: 5px;
  right: 100%;
  top: 50%;
  -webkit-transform: translate(10px, -50%);
  -ms-transform: translate(10px, -50%);
  transform: translate(10px, -50%);
}

[data-balloon][data-balloon-pos='left']:hover:after, [data-balloon][data-balloon-pos='left'][data-balloon-visible]:after {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

[data-balloon][data-balloon-pos='left']:hover:before, [data-balloon][data-balloon-pos='left'][data-balloon-visible]:before {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

[data-balloon][data-balloon-pos='right']:after {
  left: 100%;
  margin-left: 11px;
  top: 50%;
  -webkit-transform: translate(-10px, -50%);
  -ms-transform: translate(-10px, -50%);
  transform: translate(-10px, -50%);
}

[data-balloon][data-balloon-pos='right']:before {
  background: no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2212px%22%20height%3D%2236px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(90 6 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E");
  background-size: 100% auto;
  width: 6px;
  height: 18px;
  left: 100%;
  margin-left: 5px;
  top: 50%;
  -webkit-transform: translate(-10px, -50%);
  -ms-transform: translate(-10px, -50%);
  transform: translate(-10px, -50%);
}

[data-balloon][data-balloon-pos='right']:hover:after, [data-balloon][data-balloon-pos='right'][data-balloon-visible]:after {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

[data-balloon][data-balloon-pos='right']:hover:before, [data-balloon][data-balloon-pos='right'][data-balloon-visible]:before {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

[data-balloon][data-balloon-length='small']:after {
  white-space: normal;
  width: 80px;
}

[data-balloon][data-balloon-length='medium']:after {
  white-space: normal;
  width: 150px;
}

[data-balloon][data-balloon-length='large']:after {
  white-space: normal;
  width: 260px;
}

[data-balloon][data-balloon-length='xlarge']:after {
  white-space: normal;
  width: 380px;
}

@media screen and (max-width: 768px) {
  [data-balloon][data-balloon-length='xlarge']:after {
    white-space: normal;
    width: 90vw;
  }
}

[data-balloon][data-balloon-length='fit']:after {
  white-space: normal;
  width: 100%;
}

/* Slider */
/* Icons */
@font-face {
  font-family: "slick";
  src: url("https://www.outsourcing.co.jp/common/css/fonts/slick.eot");
  src: url("https://www.outsourcing.co.jp/common/css/fonts/slick.eot?") format("embedded-opentype"), url("https://www.outsourcing.co.jp/common/css/fonts/slick.woff") format("woff"), url("https://www.outsourcing.co.jp/common/css/fonts/slick.ttf") format("truetype"), url("https://www.outsourcing.co.jp/common/css/fonts/slick.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: FontAwesome;
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: " \f104";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: " \f105";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 36px;
}

.slick-dots {
  position: absolute;
  bottom: -30px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: " \f111";
  width: 20px;
  height: 20px;
  font-family: FontAwesome;
  font-size: 12px;
  text-align: center;
  color: white;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: white;
  opacity: 0.75;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  height: auto;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img, .slick-slide div {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.irLibrary h3:before, .irLibrary h3:after {
  display: none;
}

@media (max-width: 900px) {
  .visible-desktop {
    display: none;
  }
}

@media (min-width: 901px) {
  .visible-mobile {
    display: none;
  }
}

.alignmentList ._time {
  width: 100px;
  text-align: right;
}

@media (max-width: 700px) {
  .alignmentList ._time {
    text-align: left;
  }
}

.anomalyColumn {
  margin-top: 2rem;
}

.anomalyColumn:after {
  clear: both;
  content: "";
  display: block;
}

.anomalyColumn ._title {
  font-weight: bold;
}

@media (min-width: 700px) {
  .anomalyColumn ._title {
    float: right;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 200px;
    font-size: 3.6rem;
    line-height: 1.5;
  }
}

@media (max-width: 700px) {
  .anomalyColumn ._title {
    font-size: 2.8rem;
    line-height: 1.4;
    margin-bottom: 1rem;
  }
  .anomalyColumn ._title br {
    display: none;
  }
}

@media (min-width: 700px) {
  .anomalyColumn ._content {
    float: left;
    width: calc(100% - 200px);
  }
}

.anomalyColumn .text-intro-secondary {
  margin-top: 0;
}

.border-primary-box {
  border: 1px solid var(--main-color);
  padding: 1em;
}

.border-primary-box > p {
  margin: 0 auto;
}

.border-gray-box {
  border: 1px solid var(--border-color);
  padding: 1em;
}

.border-gray-box > p {
  margin: 0 auto;
}

.breadcrumbs ol {
  list-style-type: none;
  padding-left: 0;
  margin: 0.5rem 0;
}

.breadcrumbs ol li {
  display: inline-block;
  font-size: 1.2rem;
}

.breadcrumbs ol li + li:before {
  color: #999;
  content: ">";
  margin-right: .5em;
}

.breadcrumbs ol li a {
  color: var(--main-color);
  text-decoration: none;
}

.breadcrumbs ol li:last-child a {
  font-weight: bold;
}

@media (max-width: 900px) {
  .breadcrumbs {
    display: none;
  }
}

.clamp {
  font-size: 14px;
  height: 58.8px;
  line-height: 1.4;
  position: relative;
  overflow: hidden;
}

.clamp:before, .clamp:after {
  position: absolute;
}

.clamp:before {
  content: "...";
  top: 39.2px;
  right: 1rem;
}

.clamp:after {
  content: "";
  height: 100%;
  width: 100%;
}

.companyLogo h1 a img {
  width: 224px;
}

.companyLogo h1 a:hover img {
  opacity: 1;
}

@media (min-width: 1100px) {
  .companyLogo {
    float: left;
    text-align: center;
  }
  .companyLogo h1 {
    margin: 0.5rem 0 0;
  }
  .companyLogo .companyName {
    margin-top: 0.5rem;
    font-size: 1.6rem;
  }
}

@media (max-width: 1099px) {
  .companyLogo {
    margin-right: auto;
    width: 40%;
  }
  .companyLogo h1 {
    margin: 0;
  }
  .companyLogo a {
    display: table;
  }
  .companyLogo a img {
    display: table-cell;
    vertical-align: middle;
  }
  .companyLogo .companyName {
    display: none;
  }
}

@media (max-width: 700px) {
  .companyLogo {
    width: 50%;
  }
}

.companyMap {
  position: relative;
  margin-bottom: 4rem;
}

.companyMap-text p {
  margin: 0;
}

@media (min-width: 901px) {
  .companyMap-text {
    position: absolute;
    top: 2rem;
    left: 0;
  }
}

.companyMap-controls {
  position: relative;
  margin: 0 auto;
  width: 100%;
  height: auto;
}

.companyMap-controls a {
  position: absolute;
  width: 16%;
  height: 8.62%;
  display: block;
}

@media (min-width: 901px) {
  .companyMap-controls a:hover {
    background: rgba(255, 255, 255, 0.3);
  }
}

@media (min-width: 901px) {
  .companyMap-controls {
    width: 880px;
    height: 510px;
  }
}

#companyBtn-hokkaido {
  top: 10.19%;
  left: 79.77%;
}

#companyBtn-tohoku {
  top: 27.25%;
  left: 75%;
}

#companyBtn-kantou {
  top: 43.53%;
  left: 75%;
}

#companyBtn-honsha {
  top: 59.22%;
  left: 75%;
}

#companyBtn-shizuoka {
  top: 80%;
  left: 65.79%;
}

#companyBtn-tokai {
  top: 80%;
  left: 42.38%;
}

#companyBtn-hokuriku {
  top: 28.23%;
  left: 37.27%;
}

#companyBtn-kinki {
  top: 42.15%;
  left: 26.36%;
}

#companyBtn-chugoku {
  top: 57.25%;
  left: 10.45%;
}

#companyBtn-kyushu {
  bottom: 0;
  left: 13.52%;
}

.companyOffice {
  padding: 3rem;
  background-color: #fff;
  box-shadow: 0 0 0.75rem var(--background-color-light);
  border-top: 2px solid var(--main-color);
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
}

.companyOffice + .companyOffice {
  margin-top: 3rem;
}

@media (max-width: 700px) {
  .companyOffice {
    padding: 2rem;
  }
}

.companyOffice dl {
  margin: 0;
  display: table;
  vertical-align: middle;
  width: 100%;
}

.companyOffice dl dt, .companyOffice dl dd {
  display: table-cell;
}

.companyOffice dl dt {
  width: 20%;
  vertical-align: middle;
  text-align: center;
  font-size: 1.8rem;
}

.companyOffice dl dd {
  width: 80%;
}

.companyOffice dl dd span {
  display: block;
}

@media (max-width: 900px) {
  .companyOffice dl dt, .companyOffice dl dd {
    display: block;
    width: 100%;
    margin-left: 0;
  }
  .companyOffice dl dt {
    margin-bottom: 2rem;
  }
}

.companyOffice .companyOffice-postcode:before {
  content: "〒";
}

@media (max-width: 900px) {
  .companyOffice .companyOffice-tel {
    padding-top: 1rem;
  }
}

.companyOffice .companyOffice-tel:before {
  content: "TEL";
  margin-right: 0.5rem;
  font-size: 1.2rem;
}

.companyOffice .btn-map {
  padding: 0.5rem 1rem;
}

@media (max-width: 700px) {
  .companyOffice .btn-map {
    width: 100%;
    display: block;
    margin-top: 1rem;
    text-align: center;
    background: #fff;
    color: #999;
    border: 1px solid var(--border-color);
  }
}

.companyOffice .companyOffice-address {
  margin-right: 2rem;
}

.companyOffice .companyOffice-address, .companyOffice .companyOffice-mapLink {
  display: inline;
}

.companyOffice .companyOffice-map {
  margin: 3rem 0 0 20%;
  padding-bottom: 50%;
}

@media (max-width: 900px) {
  .companyOffice .companyOffice-map {
    margin-left: 0;
  }
}

@media (min-width: 1100px) {
  .companyOverview {
    margin: 0 auto;
  }
}

.companyOverview dl {
  padding: 1rem;
  margin: 0;
}

.companyOverview dl dt {
  display: block;
  float: left;
  width: 15%;
  text-align: center;
  font-weight: bold;
}

.companyOverview dl dd {
  display: block;
  width: 85%;
  margin-left: 15%;
}

.companyOverview dl dd:after {
  clear: both;
  content: "";
  display: block;
}

.companyOverview dl dd .btn-map {
  margin-left: 1rem;
  padding: 0.5rem 1rem;
}

@media (max-width: 900px) {
  .companyOverview dl dt {
    width: 20%;
  }
  .companyOverview dl dd {
    width: 80%;
    margin-left: 20%;
  }
}

@media (max-width: 700px) {
  .companyOverview dl {
    padding: 0 0 2rem;
    border-bottom: 0;
  }
  .companyOverview dl dt {
    float: none;
    width: 100%;
    background: var(--background-color-light);
    display: inline-block;
    padding: 0.5rem;
    margin-bottom: 1rem;
  }
  .companyOverview dl dd {
    float: none;
    width: 100%;
    margin-left: 0;
  }
}

.companyOverview dl:first-child dd {
  font-weight: bold;
}

.companyOverview dl:nth-child(even) {
  background: var(--background-color-light);
}

@media (max-width: 700px) {
  .companyOverview dl:nth-child(even) {
    background: none;
  }
}

.presidentMessage {
  margin: 80px 20px 200px 20px;
}

.presidentMessage p {
  line-height: 2.0;
}

.companyList,
.companyList li {
  list-style-type: "・";
  margin-bottom: 0.6em;
  font-weight: bold;
}

.companyList_desc {
  margin: 0;
  font-size: 80%;
  font-weight: normal;
}

.presidentPhoto {
  display: block;
  float: right;
  margin: 0 0 1em 2em;
  width: 260px;
}

.presidentPhoto figcaption {
  display: block;
  margin-top: 0.5em;
  text-align: center;
}

@media (max-width: 560px) {
  .presidentPhoto {
    float: none;
    margin: 0 auto 1em;
  }
}

.companyProf {
  padding: 0 1rem 1rem;
  background-color: #fff;
  box-shadow: 0 0 1rem #eee;
  border-top: 2px solid var(--main-color);
}

@media (min-width: 1100px) {
  .companyProf {
    padding: 0 2rem 2rem;
  }
}

.companyProf h4 {
  font-size: 1.8rem;
}

.companyProf dl {
  margin: 0;
}

.companyProf dl dt, .companyProf dl dd {
  display: inline;
}

@media (max-width: 1099px) {
  .companyProf dl dt {
    color: #999;
    background: #fff;
    border: 1px solid var(--border-color);
    display: inline-block;
    padding: 0rem 1rem;
    margin: 1rem 0;
  }
}

.companyProf dl dd {
  margin-left: 0;
  padding-right: 1rem;
}

@media (min-width: 1100px) {
  .companyProf dl {
    border-bottom: 1px dotted var(--border-color);
    padding: 1rem;
    margin: 0;
  }
  .companyProf dl dt {
    display: block;
    float: left;
    width: 15%;
    text-align: center;
  }
  .companyProf dl dd {
    display: block;
    width: 85%;
    margin-left: 15%;
  }
  .companyProf dl dd:after {
    clear: both;
    content: "";
    display: block;
  }
}

.companyProf ._detail, .companyProf ._address {
  display: block;
}

.companyProf ._postcode:before {
  content: "〒";
}

.companyProf ._link {
  margin: 2rem 0 1rem;
}

.companyProf ._link ul {
  margin: 0;
  padding: 0;
  text-align: center;
}

.companyProf ._link ul li {
  list-style: none;
}

.companyProf ._link ul li {
  display: inline;
}

.companyProf ._link ul li [class^="btn-"] {
  padding: 0.8rem 3rem;
}

.contactBox {
  border: 1px solid var(--background-color-light);
  border-radius: 4px;
  padding: 2rem;
}

.contactBox dl {
  margin: 0;
}

.contactBox dl dd {
  margin-left: 0;
}

.contactBox dt {
  font-weight: bold;
  font-size: 1.8rem;
}

@media (max-width: 700px) {
  .contactBox dt {
    font-size: 1.4rem;
  }
}

.contactBox dd.freedial {
  font-weight: bold;
  font-size: 3.6rem;
  background: url("../images/freedial.gif") left center no-repeat;
  background-size: 50px auto;
  padding-left: 60px;
  border-bottom: 1px dotted var(--border-color);
  margin-bottom: 1rem;
}

@media (min-width: 1100px) {
  .contactBox dd.freedial a {
    color: var(--text-color);
  }
}

@media (max-width: 700px) {
  .contactBox dd.freedial {
    font-size: 2.4rem;
    background-size: 30px auto;
    padding-left: 36px;
  }
}

.contactBox dd.freedial span {
  font-size: 1.8rem;
}

@media (max-width: 700px) {
  .contactBox dd.freedial span {
    font-size: 1.2rem;
  }
}

._controlsArea {
  margin: 1rem 0;
}

._controlsArea ._sub {
  text-align: center;
}

@media (min-width: 901px) {
  ._controlsArea ._sub {
    text-align: right;
  }
  ._controlsArea ._sub [class^="btn-"] {
    padding: 0.5rem 1.5rem;
    z-index: 10;
    max-height: 40px;
  }
}

@media (max-width: 900px) {
  ._controlsArea ._sub [class^="btn-"] {
    padding: 1rem;
    font-size: 1.2rem;
  }
}

._controlsArea ._submit {
  text-align: center;
  position: absolute;
  margin: 0;
  top: 0;
  left: 0;
  width: 100%;
}

._controlsArea ._submit button {
  margin: 0;
}

@media (max-width: 1099px) {
  ._controlsArea ._submit {
    position: static;
    margin: 1rem 0;
  }
}

.tableLike dl {
  margin: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border-left: 1px solid var(--border-color);
  border-right: 1px solid var(--border-color);
  background: var(--background-color-light);
}

@media (max-width: 700px) {
  .tableLike dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.tableLike dl:last-child {
  border-bottom: 1px solid var(--border-color);
}

.tableLike dt {
  width: 30%;
  padding: 1rem;
  border-top: 1px solid var(--border-color);
}

@media (max-width: 700px) {
  .tableLike dt {
    width: 100%;
  }
}

.tableLike dd {
  width: 70%;
  margin: 0;
  padding: 1rem;
  border-left: 1px solid var(--border-color);
  border-top: 1px solid var(--border-color);
  background: #fff;
}

@media (max-width: 700px) {
  .tableLike dd {
    width: 100%;
    border-left: none;
  }
}

.tableLike ._filesize {
  margin-left: 0.5rem;
  color: #999;
}

.tableLike ._filesize:before {
  content: "(";
}

.tableLike ._filesize:after {
  content: ")";
}

@media (max-width: 700px) {
  .tableLike ._filesize {
    margin-left: 0;
    font-size: 1rem;
  }
}

.faq dd + dt {
  margin-top: 2rem;
}

.faq dt {
  margin-bottom: 1rem;
  font-weight: bold;
  font-size: 1.8rem;
  color: var(--main-color);
}

.faq dt:before {
  content: "Q";
  padding: .5rem 1rem;
  margin-right: 1rem;
  background: var(--main-color);
  color: #fff;
}

.faq dd {
  margin-left: 1.5rem;
  padding: 1rem 0 1rem 2rem;
  border-left: 1px solid var(--border-color);
}

.flb-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.flb-box p {
  margin: 0;
}

.flb-box ._auto {
  margin-right: auto;
}

@media (max-width: 700px) {
  .flb-box ._auto {
    width: 100%;
    margin-bottom: 1rem;
  }
}

.flb-box ._img {
  margin-left: 1rem;
}

@media (max-width: 700px) {
  .flb-box ._img {
    width: 100%;
    text-align: center;
    margin-left: 0;
  }
}

@media (max-width: 700px) {
  .flb-box ._img + ._img {
    margin-top: 1rem;
  }
}

.flb-box ._tel {
  width: 33%;
  margin-top: 1rem;
  text-align: center;
}

@media (max-width: 700px) {
  .flb-box ._tel {
    width: 100%;
  }
}

.flb-box ._tel a {
  display: block;
  background: var(--main-color);
  color: #fff;
  font-weight: bold;
  padding: 1rem;
}

.flb-box ._tel a span {
  display: block;
  font-size: 1.6rem;
}

.flb-box-strech {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-around;
      -ms-flex-pack: justify;
          justify-content: space-around;
}

.groupList {
  margin-top: 4rem;
  background-image: -webkit-linear-gradient(top, rgba(125, 185, 232, 0) 0%, rgba(4, 12, 26, 0.8) 100%), url("../images/ovarlay.png"), url("../images/bg_grouplist.jpg");
  background-image: linear-gradient(to bottom, rgba(125, 185, 232, 0) 0%, rgba(4, 12, 26, 0.8) 100%), url("../images/ovarlay.png"), url("../images/bg_grouplist.jpg");
  background-position: center bottom center top, center top;
  background-repeat: repeat , repeat, no-repeat;
  background-size: 200px 100%, auto, cover;
  padding: 4rem 0;
}

.groupList h2 {
  color: #fff;
  margin: 0 0 1rem;
}

.groupList .moreDetail {
  margin-top: 4rem;
}

@media (max-width: 700px) {
  .groupList .moreDetail {
    margin-top: -1rem;
  }
}

@media (max-width: 1099px) {
  .groupList {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}

@media (max-width: 700px) {
  .groupList {
    padding-right: 0;
    padding-left: 0;
  }
}

.groupList-slider {
  width: 100%;
  z-index: 2;
}

.groupList-slider:after {
  clear: both;
  content: "";
  display: block;
}

@media (min-width: 1100px) {
  .groupList-slider {
    width: 1080px;
    margin: 0 auto;
  }
}

.groupList-slider .slick-list {
  overflow: hidden;
}

.groupList-slider .groupCompany {
  padding: 1rem;
}

@media (max-width: 1099px) {
  .groupList-slider .groupCompany {
    padding: 0.5rem;
  }
}

.groupList-slider .groupCompany a {
  display: block;
  background: #fff;
  overflow: hidden;
  border-radius: 6px;
}

.groupList-slider .groupCompany a dl {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 140px;
  margin: 0;
  overflow: hidden;
}

.groupList-slider .groupCompany a dl dt, .groupList-slider .groupCompany a dl dd {
  margin: 0;
}

.groupList-slider .groupCompany a dl ._name {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 20;
  color: var(--text-color);
  padding: 1rem;
  font-weight: bold;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  font-size: 1.2rem;
  line-height: 1.2em;
  word-break: break-word;
  text-align: center;
  width: 100%;
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 100%);
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 100%);
  background-position: center bottom center top, center top;
  background-repeat: repeat , repeat, no-repeat;
  background-size: 100% 100%, auto, cover;
}

.groupList-slider .groupCompany a dl ._logo {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}

.groupList-slider .groupCompany a dl ._logo img {
  position: absolute;
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%, -40%);
      -ms-transform: translate(-50%, -40%);
          transform: translate(-50%, -40%);
  max-width: 70%;
  max-height: 40%;
  width: auto;
  height: auto;
}

.groupList-slider .groupCompany a dl ._detail {
  opacity: 0;
  z-index: 20;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1rem;
  line-height: 1.2em;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  color: #fff;
  word-break: break-word;
  overflow: hidden;
}

@media (max-width: 900px) {
  .groupList-slider .groupCompany a dl ._detail {
    display: none;
  }
}

.groupList-slider .groupCompany a dl ._overlay {
  opacity: 0;
  z-index: 10;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  background: rgba(0, 13, 24, 0.6);
  border-radius: 6px;
}

@media (max-width: 900px) {
  .groupList-slider .groupCompany a dl ._overlay {
    display: none;
  }
}

@media (min-width: 901px) {
  .groupList-slider .groupCompany a:hover ._detail, .groupList-slider .groupCompany a:hover ._overlay {
    opacity: 1.0;
    text-decoration: none !important;
  }
  .groupList-slider .groupCompany a:hover ._name {
    display: none;
  }
}

.groupList-slider .slick-arrow {
  z-index: 100;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  border: 1px solid #fff;
}

.groupList-slider .slick-arrow:before {
  font-size: 2.8rem;
  line-height: 40px;
}

@media (max-width: 1099px) {
  .groupList-slider .slick-arrow {
    width: 30px;
    height: 30px;
    border-radius: 15px;
    border: 0;
    background: #ccc;
  }
  .groupList-slider .slick-arrow:before {
    color: #fff;
    font-size: 2.8rem;
    line-height: 1;
  }
}

@media (min-width: 1100px) {
  .groupList-slider .slick-prev {
    left: -6rem;
  }
  .groupList-slider .slick-prev:before {
    padding-right: 0.2rem;
  }
}

@media (max-width: 1099px) {
  .groupList-slider .slick-prev {
    left: -1rem;
  }
}

@media (max-width: 700px) {
  .groupList-slider .slick-prev {
    left: 0.5rem;
  }
}

@media (min-width: 1100px) {
  .groupList-slider .slick-next {
    right: -6rem;
  }
  .groupList-slider .slick-next:before {
    padding-left: 0.2rem;
  }
}

@media (max-width: 1099px) {
  .groupList-slider .slick-next {
    right: -1rem;
  }
}

@media (max-width: 700px) {
  .groupList-slider .slick-next {
    right: 0.5rem;
  }
}

@media (max-width: 700px) {
  .groupList-slider .slick-dots {
    display: none !important;
  }
}

@media (max-width: 700px) {
  .groupList-slider .slick-slide {
    opacity: 0.5;
  }
  .groupList-slider .slick-active {
    opacity: 1;
  }
}

.groupSite-header {
  padding: 2rem;
  border: 2px solid var(--border-color);
}

@media (min-width: 1100px) {
  .groupSite-header {
    width: 1080px;
    margin: 3rem auto 2rem;
  }
}

@media (max-width: 1099px) {
  .groupSite-header {
    margin: 2rem auto;
    padding-left: 1rem;
    padding-right: 1rem;
    width: calc(100% - 2rem);
  }
}

.groupSite-header ._selectArea dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px dotted var(--border-color);
  padding: 0.5rem 0;
}

@media (max-width: 700px) {
  .groupSite-header ._selectArea dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .groupSite-header ._selectArea dl dd {
    text-align: center;
  }
}

.groupSite-header ._selectArea dt {
  font-weight: bold;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  padding: 0 1rem;
  margin-right: 1.5rem;
  background: var(--main-color);
  color: #fff;
  position: relative;
  line-height: 36px;
}

.groupSite-header ._selectArea dt:after {
  content: '';
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
  border-left: 18px solid var(--main-color);
  position: absolute;
  top: 0;
  right: -18px;
  -webkit-transform-origin: left top;
      -ms-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scaleX(0.7);
      -ms-transform: scaleX(0.7);
          transform: scaleX(0.7);
}

@media (max-width: 700px) {
  .groupSite-header ._selectArea dt {
    padding-right: 0;
  }
}

.groupSite-header ._selectArea dd span {
  margin: .5rem;
  display: inline-block;
}

.groupSite-header ._select-gl, .groupSite-header ._select-ja {
  display: none;
}

.groupSite-header ._description {
  margin-top: -3.2rem;
  text-align: center;
}

.groupSite-header ._description h2 {
  margin: 0 auto;
  padding: 0 1rem;
  display: inline-block;
  font-size: 1.8rem;
  background: #fff;
}

.groupSite-header ._description h2:before, .groupSite-header ._description h2:after {
  display: none;
}

.groupSite-header ._description p {
  font-size: 1.4rem;
  text-align: center;
  margin: 0;
}

.groupSite-header ._controlsArea {
  margin: 1rem 0 0;
}

.groupSite-header ._controlsArea ._sub [class^="btn-"] {
  margin: 0;
}

.groupSite-list {
  padding: 1.5rem 1.5rem 7.5rem;
  background-color: #fff;
  box-shadow: 0 0 0.75rem var(--background-color-light);
  border-top: 2px solid var(--main-color);
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
  height: 100%;
  position: relative;
}

.groupSite-list ._logo {
  text-align: center;
  width: 100%;
  height: 100px;
  overflow: hidden;
  position: relative;
}

.groupSite-list ._logo div {
  max-height: 60px;
  max-width: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.groupSite-list ._logo div img {
  display: table-cell;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}

.groupSite-list ._logo img {
  max-height: 60px;
  max-width: 80%;
  width: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.groupSite-list dl {
  margin: 0;
}

.groupSite-list dl dt {
  margin: 1rem 0;
}

.groupSite-list dl dd {
  margin-left: 0;
}

.groupSite-list ._name {
  font-weight: bold;
  font-size: 1.8rem;
}

.groupSite-list ._subhead {
  display: inline-block;
  background: var(--background-color-light);
  padding: 0 1rem;
  color: #999;
  font-size: 1.4rem;
}

.groupSite-list ._postcode:before {
  content: "〒";
}

.groupSite-list ._link {
  position: absolute;
  bottom: 1.5rem;
  left: 0;
  width: 100%;
}

.groupSite-list ._link ul {
  margin: 0;
  padding: 0;
  text-align: center;
}

.groupSite-list ._link ul li {
  list-style: none;
}

.groupSite-list ._link ul li {
  display: inline;
}

.groupSite-list ._link ul li [class^="btn-"] {
  padding: 0.8rem 3rem;
}

.groupSite-list ._lang dl {
  margin: 0;
  padding: 0;
}

.groupSite-list ._lang dl li {
  list-style: none;
}

.groupSite-list ._lang dl dt {
  margin: 1rem 0 0.5rem;
}

.groupSite-list ._lang dl dt span {
  display: inline-block;
  background: var(--background-color-light);
  padding: 0 1rem;
  color: #999;
  font-size: 1.4rem;
}

.groupSite-list ._lang dl dd {
  display: inline-block;
  margin-right: 5px;
}

.groupSite-list ._lang dl dd img {
  max-height: 20px;
  width: auto;
  border: 1px solid #ddd;
}

@media (min-width: 1100px) {
  .headerLocal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0.5rem 0 1rem;
  }
}

.headerLocal .searchForm form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  position: relative;
}

.headerLocal .searchForm form #headerSearchInput {
  outline: none;
}

.headerLocal .searchForm form input[type="text"] {
  padding: 0.1rem 3rem 0.1rem 0.5rem;
  width: 180px;
  border: 1px solid rgba(0, 99, 177, 0.3);
  border-radius: 6px;
}

.headerLocal .searchForm form input[type="text"]:focus {
  width: 260px;
}

.headerLocal .searchForm form .btnSearch {
  color: var(--main-color);
  height: auto;
  width: 24px;
  padding: 5px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  cursor: pointer;
}

@media (max-width: 1099px) {
  .headerLocal .searchForm {
    display: none;
  }
}

.headerLocal .l-localNav {
  margin-right: 2em;
}

.headerLocal .l-localNav ul {
  margin: 0;
  padding: 0;
}

.headerLocal .l-localNav ul li {
  list-style: none;
}

.headerLocal .l-localNav ul li {
  float: left;
}

.headerLocal .l-localNav ul li + li {
  margin-left: 0.5rem;
}

.headerLocal .l-localNav ul a {
  font-size: 1.4rem;
  padding: 0 5px;
  color: #999;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.headerLocal .l-localNav ul a:hover {
  color: var(--main-color);
}

@media (max-width: 1099px) {
  .headerLocal .l-localNav {
    display: none;
  }
}

.headerLocal .languageNav {
  margin-right: 1rem;
  position: relative;
  z-index: 100;
}

.headerLocal .languageNav .select {
  cursor: pointer;
  font-size: 1.4rem;
  color: #999;
  position: relative;
  top: -2px;
  margin-right: 2rem;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

@media (max-width: 1099px) {
  .headerLocal .languageNav .select {
    font-size: 1.6rem;
    margin-right: 0;
  }
}

@media (max-width: 900px) {
  .headerLocal .languageNav .select {
    font-size: 1.4rem;
    top: 0;
  }
}

.headerLocal .languageNav .select:before {
  content: " \f0ac";
  font-family: FontAwesome;
  margin-right: 0.5rem;
  color: #11ac89;
  font-size: 1.6rem;
}

.headerLocal .languageNav .select:after {
  content: " \f107";
  font-family: FontAwesome;
  margin-left: 1rem;
  vertical-align: middle;
}

@media (max-width: 1099px) {
  .headerLocal .languageNav .select span {
    display: none;
  }
}

.headerLocal .languageNav .select:hover {
  color: #11ac89;
}

.headerLocal .languageNav ul {
  display: none;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 100%;
  left: -1rem;
  z-index: 1000;
  background: #fff;
  width: 100%;
  border-top: 2px solid #11ac89;
  box-shadow: 0 0 0.5rem #ccc;
}

.headerLocal .languageNav ul li {
  list-style: none;
}

@media (max-width: 700px) {
  .headerLocal .languageNav ul {
    top: 110%;
    left: -20%;
    width: 140%;
  }
}

.headerLocal .languageNav ul li {
  display: block;
  width: 100%;
  text-align: center;
  color: #999;
  padding: 1rem 0.2rem;
}

.headerLocal .languageNav ul li a {
  display: block;
  color: #11ac89;
}

.headerLocal .languageNav ul li a:hover {
  text-decoration: underline;
}

.indexJobSearch {
  margin: 0;
  padding: 0;
}

.indexJobSearch:after {
  clear: both;
  content: "";
  display: block;
}

.indexJobSearch li {
  list-style: none;
}

.indexJobSearch li {
  float: left;
  padding: 1rem;
}

.indexJobSearch li a {
  display: block;
  border-radius: 6px;
  border: 2px solid var(--border-color);
  position: relative;
  width: 100%;
  height: auto;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.indexJobSearch li a:after {
  content: "\f064";
  font-family: FontAwesome;
  position: absolute;
  top: 1rem;
  right: 1rem;
  color: #ccc;
}

.indexJobSearch li a:hover {
  text-decoration: none;
}

.indexJobSearch li a:hover img {
  opacity: 1;
}

.indexJobSearch li a img, .indexJobSearch li a svg {
  max-width: 100%;
  height: auto;
  display: block;
}

@media (min-width: 1100px) {
  .indexJobSearch li a img, .indexJobSearch li a svg {
    max-height: 70px;
    max-width: 70px;
    width: auto;
  }
}

@media (max-width: 1099px) {
  .indexJobSearch li a img, .indexJobSearch li a svg {
    max-height: 80px;
    max-width: 80px;
  }
}

@media (max-width: 900px) {
  .indexJobSearch li a img, .indexJobSearch li a svg {
    max-height: 70px;
    max-width: 70px;
  }
}

.indexJobSearch li a figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.indexJobSearch li a figure img {
  position: absolute;
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media (max-width: 900px) {
  .indexJobSearch li a figure img {
    top: 35%;
  }
}

.indexJobSearch li a figure figcaption {
  position: absolute;
  bottom: 3rem;
  left: 0;
  text-align: center;
  width: 100%;
  color: var(--text-color);
  font-weight: 600;
  -webkit-transition: all .3s;
  transition: all .3s;
  line-height: 1.2;
}

@media (max-width: 900px) {
  .indexJobSearch li a figure figcaption {
    bottom: 3.8rem;
    font-size: 1.4rem;
  }
}

@media (max-width: 360px) {
  .indexJobSearch li a figure figcaption {
    bottom: 3rem;
  }
}

.indexJobSearch li a:before {
  content: "";
  display: block;
  padding-top: 100%;
}

@media (min-width: 700px) {
  .indexJobSearch li {
    width: 20%;
    padding: 1rem;
  }
}

@media (min-width: 901px) {
  .indexJobSearch li:nth-child(1) a figcaption {
    color: #d32f2f;
  }
  .indexJobSearch li:nth-child(1) a:hover {
    border-color: #d32f2f;
  }
  .indexJobSearch li:nth-child(2) a figcaption {
    color: #004064;
  }
  .indexJobSearch li:nth-child(2) a:hover {
    border-color: #004064;
  }
  .indexJobSearch li:nth-child(3) a figcaption {
    color: #5d28ae;
  }
  .indexJobSearch li:nth-child(3) a:hover {
    border-color: #5d28ae;
  }
  .indexJobSearch li:nth-child(4) a figcaption {
    color: #0077d6;
  }
  .indexJobSearch li:nth-child(4) a:hover {
    border-color: #0077d6;
  }
  .indexJobSearch li:nth-child(5) a figcaption {
    color: #689f38;
  }
  .indexJobSearch li:nth-child(5) a:hover {
    border-color: #689f38;
  }
}

@media (min-width: 901px) and (min-width: 1100px) {
  .indexJobSearch li:nth-child(5) a img, .indexJobSearch li:nth-child(5) a svg {
    max-height: 60px;
    max-width: 60px;
  }
}

@media (min-width: 901px) and (max-width: 1099px) {
  .indexJobSearch li:nth-child(5) a img, .indexJobSearch li:nth-child(5) a svg {
    max-height: 70px;
    max-width: 70px;
  }
}

@media (min-width: 901px) and (max-width: 900px) {
  .indexJobSearch li:nth-child(5) a img, .indexJobSearch li:nth-child(5) a svg {
    max-height: 60px;
    max-width: 60px;
  }
}

@media (min-width: 901px) {
 /* .indexJobSearch li:nth-child(6) {
    margin-left: 10%;
  }*/
  .indexJobSearch li:nth-child(6) a figcaption {
    color: #ff3362;
  }
  .indexJobSearch li:nth-child(6) a:hover {
    border-color: #ff3362;
  }
  .indexJobSearch li:nth-child(7) a figcaption {
    color: #ff6699;
  }
  .indexJobSearch li:nth-child(7) a:hover {
    border-color: #ff6699;
  }
  .indexJobSearch li:nth-child(8) a figcaption {
    color: #ffa100;
  }
  .indexJobSearch li:nth-child(8) a:hover {
    border-color: #ffa100;
  }
  .indexJobSearch li:nth-child(9) a figcaption {
    color: #33c3e2;
  }
  .indexJobSearch li:nth-child(9) a:hover {
    border-color: #33c3e2;
  }
  .indexJobSearch li:nth-child(10) a figcaption {
    color: #009a09;
  }
  .indexJobSearch li:nth-child(10) a:hover {
    border-color: #009a09;
  }
}

.indexJobSearch .slick-arrow {
  width: 30px;
  height: 30px;
  border-radius: 15px;
  background: #ccc;
  z-index: 20;
}

.indexJobSearch .slick-arrow:before {
  color: #fff;
  font-size: 2.8rem;
  line-height: 1;
}

.indexJobSearch .slick-prev {
  left: -0.5rem;
}

.indexJobSearch .slick-prev:before {
  padding-right: 0.2rem;
}

.indexJobSearch .slick-next {
  right: -0.5rem;
}

.indexJobSearch .slick-next:before {
  padding-left: 0.2rem;
}

.indexJobSearch .slick-dots li {
  float: none;
  width: auto;
  padding: 0;
}

.indexJobSearch .slick-dots li button:before {
  color: #999;
}

@media (max-width: 1099px) {
  .indexJobSearch + p {
    padding: 0 4rem;
  }
}

.indexJobSearch #jobSearch-card01 figcaption {
  color: #d32f2f;
}

.indexJobSearch #jobSearch-card02 figcaption {
  color: #004064;
}

.indexJobSearch #jobSearch-card03 figcaption {
  color: #5d28ae;
}

.indexJobSearch #jobSearch-card04 figcaption {
  color: #0077d6;
}

.indexJobSearch #jobSearch-card05 figcaption {
  color: #689f38;
}

.indexJobSearch #jobSearch-card06 figcaption {
  color: #ff3362;
}

.indexJobSearch #jobSearch-card07 figcaption {
  color: #ff6699;
}

.indexJobSearch #jobSearch-card08 figcaption {
  color: #ffa100;
}

.indexJobSearch #jobSearch-card09 figcaption {
  color: #33c3e2;
}

.indexJobSearch #jobSearch-card10 figcaption {
  color: #009a09;
}

@media (min-width: 900px) and (max-width: 936px) {
  .indexJobSearch {
    width: 100%;
  }
  .indexJobSearch li {
    width: 20%;
  }
}

@media (min-width: 937px) {
  .indexJobSearch {
    max-width: 900px;
    margin: 0 auto;
  }
  .indexJobSearch li {
    width: 180px;
  }
}

.indexNews {
  margin-bottom: 4rem;
  position: relative;
}

@media (min-width: 1100px) {
  .indexNews {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-align-items: center;
  }
  .indexNews .newsTitle {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    margin-right: 2rem;
  }
  .indexNews .newsTitle h2 {
    margin: 1rem 0;
  }
  .indexNews .newsList {
    -webkit-flex-basis: 80%;
        -ms-flex-preferred-size: 80%;
            flex-basis: 80%;
    border-left: 1px solid var(--border-color);
    padding-left: 2rem;
  }
  .indexNews .moreDetail {
    -webkit-flex-basis: 15%;
        -ms-flex-preferred-size: 15%;
            flex-basis: 15%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: right;
    margin-top: 0;
    -webkit-align-items: center;
  }
}

.indexNews .loader + .newsList {
  opacity: 0;
}

@media (max-width: 1099px) {
  .indexNews {
    position: relative;
    padding-bottom: 6rem;
  }
  .indexNews .newsTitle a.btn-flat {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media (max-width: 700px) {
  .indexNews .newsTitle a.btn-flat {
    width: 100%;
  }
}

.indexNews .newsTitle a {
  display: block;
  text-align: center;
  font-weight: bold;
}

.indexNews .newsTitle a:after {
  content: "\f105";
  font-family: FontAwesome;
  margin-left: 1rem;
}

.indexNews ._item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

@media (max-width: 1099px) {
  .indexNews h2 {
    text-align: center;
  }
  .indexNews .newsList li {
    border-bottom: 1px dotted var(--border-color);
  }
  .indexNews .moreDetail {
    text-align: center;
    margin-top: 3rem;
  }
}

.indexNews ._item {
  padding: 0.7rem 0;
}

.introductionExample [class^="_case"] {
  padding: 1rem;
}

.introductionExample ._Conclusion {
  font-weight: bold;
  font-size: 2.8rem;
  padding: .5rem 1rem;
  border-radius: 4px;
  text-align: center;
}

.introductionExample ._case1 {
  background: var(--main-color-translucent);
}

.introductionExample ._case1 ._content dt {
  background: var(--main-color);
  color: #fff;
}

.introductionExample ._case1 ._Conclusion {
  border: 2px solid var(--main-color);
  color: var(--main-color);
}

.introductionExample ._case2 {
  background: rgba(33, 150, 243, 0.1);
}

.introductionExample ._case2 ._content dt {
  background: var(--main-color);
  color: #fff;
}

.introductionExample ._case2 ._Conclusion {
  border: 2px solid var(--main-color);
  color: var(--main-color);
}

.introductionExample h4 {
  color: #fff;
  padding: 1rem;
  font-size: 1.6rem;
  margin-bottom: 0;
}

.introductionExample h4#case1 {
  background: var(--main-color);
}

.introductionExample h4#case2 {
  background: var(--main-color);
}

.introductionExample .panel-default {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

.introductionExample .panel-default h5 {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  font-size: 1.4rem;
  margin: 1rem 0;
}

@media (max-width: 1099px) {
  .introductionExample .panel-default h5 {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.introductionExample .panel-default ._content {
  -webkit-flex-basis: 80%;
      -ms-flex-preferred-size: 80%;
          flex-basis: 80%;
}

.introductionExample .panel-default ._content:after {
  clear: both;
  content: "";
  display: block;
}

@media (max-width: 1099px) {
  .introductionExample .panel-default ._content {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.introductionExample .panel-default ._content dl {
  width: 50%;
  float: left;
  padding: 1rem;
}

@media (max-width: 700px) {
  .introductionExample .panel-default ._content dl {
    width: 100%;
    padding: 0;
  }
}

.introductionExample .panel-default dl {
  margin: 0;
}

.introductionExample .panel-default dl dt {
  margin-top: 1rem;
}

.introductionExample .panel-default dt {
  padding: .5rem 1rem;
}

.introductionExample .panel-default dd {
  margin-left: 0;
  margin-top: 1rem;
}

.introductionExample ._arrow {
  text-align: center;
  font-size: 2.8rem;
  margin: -0.5rem 0;
}

.ir-top-box {
  margin: 2rem 0 0;
}

@media (min-width: 901px) {
  .ir-top-box {
    margin-top: 4rem;
  }
}

@media (max-width: 1099px) {
  .ir-top-box {
    box-shadow: none;
  }
}

.ir-top-box .ir-top-message {
  text-align: center;
  border: 2px solid #eee;
  margin-bottom: 2rem;
  padding: 1rem;
  background-position: left top;
  background-size: auto 100%;
  background-repeat: no-repeat;
  text-align: left;
  padding: 3rem;
}

.ir-top-box .ir-top-message h2:before, .ir-top-box .ir-top-message h2:after {
  display: none;
}

.ir-top-box .ir-top-message ._image {
  position: relative;
}

.ir-top-box .ir-top-message ._image ._caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: -webkit-linear-gradient(transparent 0%, rgba(0, 0, 0, 0.7) 50%, rgba(0, 0, 0, 0.9) 100%);
  background: linear-gradient(transparent 0%, rgba(0, 0, 0, 0.7) 50%, rgba(0, 0, 0, 0.9) 100%);
  color: #fff;
  width: 100%;
  padding: 1.5rem 0.5rem 0.5rem;
  text-align: center;
  line-height: 1.4em;
}

.ir-top-box .ir-top-message:after {
  clear: both;
  content: "";
  display: block;
}

.ir-top-box .ir-top-message ._image {
  float: right;
  margin-left: 3rem;
}

.ir-top-box .ir-top-message h2 {
  margin-top: 0;
  text-align: left;
  border-bottom: 1px dotted var(--border-color);
  padding-bottom: 1rem;
}

.ir-top-box .ir-top-message ._content {
  font-weight: bold;
  font-size: 1.8rem;
  color: var(--main-color);
}

.ir-top-box .ir-top-message ._content a[class^="btn-"], .ir-top-box .ir-top-message ._content [class*=" btn-"] {
  font-size: 1.4rem;
  margin-top: 2rem;
}

@media (max-width: 700px) {
  .ir-top-box .ir-top-message {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 2rem;
    text-align: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .ir-top-box .ir-top-message ._image {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin: 0 auto;
  }
  .ir-top-box .ir-top-message h2 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    width: 100%;
    text-align: center;
    padding-bottom: 0;
    border: 0;
  }
  .ir-top-box .ir-top-message ._content {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    width: 100%;
    font-size: 1.4rem;
  }
  .ir-top-box .ir-top-message ._content br {
    display: none;
  }
  .ir-top-box .ir-top-message ._content a[class^="btn-"], .ir-top-box .ir-top-message ._content [class*=" btn-"] {
    margin-top: 0rem;
  }
}

@media (min-width: 901px) {
  .ir-top-box .ir-top-message {
    margin-bottom: 4rem;
  }
}

.ir-top-box .ir-top-nav ul {
  margin: 0;
  padding: 0;
}

.ir-top-box .ir-top-nav ul:after {
  clear: both;
  content: "";
  display: block;
}

.ir-top-box .ir-top-nav ul li {
  list-style: none;
}

.ir-top-box .ir-top-nav ul li {
  float: left;
  width: 20%;
}

@media (max-width: 900px) {
  .ir-top-box .ir-top-nav ul li {
    width: 33.3333%;
  }
}

@media (max-width: 700px) {
  .ir-top-box .ir-top-nav ul li {
    width: 50%;
  }
}

.ir-top-box .ir-top-nav ul li a {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  color: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.ir-top-box .ir-top-nav ul li a img {
  max-height: 80px;
  width: auto;
}

@media (max-width: 1099px) {
  .ir-top-box .ir-top-nav ul li a img {
    max-height: 60px;
  }
}

@media (max-width: 900px) {
  .ir-top-box .ir-top-nav ul li a img {
    max-height: 100px;
  }
}

@media (max-width: 700px) {
  .ir-top-box .ir-top-nav ul li a img {
    max-height: 50px;
  }
}

.ir-top-box .ir-top-nav ul li a figure {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.ir-top-box .ir-top-nav ul li a figure img {
  position: relative;
  padding-bottom: 2rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  /* Safari用 */
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
}

@media (max-width: 900px) {
  .ir-top-box .ir-top-nav ul li a figure img {
    padding-bottom: 1rem;
  }
}

.ir-top-box .ir-top-nav ul li a figure figcaption {
  text-align: center;
  width: 100%;
}

.ir-top-box .ir-top-nav ul li a:before {
  content: "";
  display: block;
  padding-top: 100%;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.ir-top-box .ir-top-nav ul li a:hover {
  z-index: 10;
  box-shadow: 0 0 5px #111;
}

.ir-top-box .ir-top-nav ul li a:hover:before {
  background: rgba(17, 17, 17, 0.2);
}

.ir-top-box .ir-top-nav ul li:nth-child(1) a {
  background: #1899ff;
}

@media (max-width: 900px) {
  .ir-top-box .ir-top-nav ul li:nth-child(1) {
    width: 50%;
  }
  .ir-top-box .ir-top-nav ul li:nth-child(1) a:before {
    padding-top: 66.6666%;
  }
}

@media (max-width: 700px) {
  .ir-top-box .ir-top-nav ul li:nth-child(1) {
    width: 100%;
  }
  .ir-top-box .ir-top-nav ul li:nth-child(1) a:before {
    padding-top: 50%;
  }
}

.ir-top-box .ir-top-nav ul li:nth-child(2) a {
  background: #0080e4;
}

@media (max-width: 900px) {
  .ir-top-box .ir-top-nav ul li:nth-child(2) {
    width: 50%;
  }
  .ir-top-box .ir-top-nav ul li:nth-child(2) a:before {
    padding-top: 66.6666%;
  }
}

@media (max-width: 700px) {
  .ir-top-box .ir-top-nav ul li:nth-child(2) a:before {
    padding-top: 100%;
  }
}

.ir-top-box .ir-top-nav ul li:nth-child(3) a {
  background: var(--main-color);
}

.ir-top-box .ir-top-nav ul li:nth-child(4) a {
  background: var(--sub-color-dark);
}

.ir-top-box .ir-top-nav ul li:nth-child(5) a {
  background: var(--background-color-dark);
}

.ir-top-box .ir-top-nav .quadlet li {
  width: 25%;
}

@media (max-width: 900px) {
  .ir-top-box .ir-top-nav .quadlet li {
    width: 25%;
  }
}

@media (max-width: 700px) {
  .ir-top-box .ir-top-nav .quadlet li {
    width: 50%;
  }
}

@media (max-width: 900px) {
  .ir-top-box .ir-top-nav .quadlet li:nth-child(1), .ir-top-box .ir-top-nav .quadlet li:nth-child(2) {
    width: 25%;
  }
  .ir-top-box .ir-top-nav .quadlet li:nth-child(1) a:before, .ir-top-box .ir-top-nav .quadlet li:nth-child(2) a:before {
    padding-top: 100%;
  }
}

@media (max-width: 700px) {
  .ir-top-box .ir-top-nav .quadlet li:nth-child(1), .ir-top-box .ir-top-nav .quadlet li:nth-child(2) {
    width: 50%;
  }
}

.jobDetail-body {
  border-top: 3px solid var(--main-color);
}

.jobDetail-body h1 {
  text-align: center;
  margin: 0;
  padding: 2rem;
  background: rgba(0, 99, 177, 0.05);
  font-size: 2.4rem;
}

@media (max-width: 700px) {
  .jobDetail-body h1 {
    text-align: left;
    font-size: 2.0rem;
    padding: 1rem;
  }
}

.jobDetail-body .jobDetail-headline {
  border-left: 4px solid var(--main-color);
  font-size: 1.8rem;
  padding-left: 1rem;
  text-align: left;
  margin: 2rem 0 1rem;
}

.jobDetail-body .jobDetail-headline:before, .jobDetail-body .jobDetail-headline:after {
  display: none;
}

@media all and (-ms-high-contrast: none) {
  .jobDetail-body .jobDetail-headline {
    padding-top: 0.3rem;
  }
}

.jobDetail-body .jobDetail-content {
  font-size: 1.6rem;
  padding: 1rem;
  margin: 0;
}

.jobDetail-body-table {
  border-top: 1px solid var(--border-color);
  border-right: 1px solid var(--border-color);
  border-left: 1px solid var(--border-color);
}

.jobDetail-body-table dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0;
  border-bottom: 1px solid var(--border-color);
}

.jobDetail-body-table dl dt, .jobDetail-body-table dl dd {
  padding: 1.4rem 1rem;
  margin: 0;
}

.jobDetail-body-table dl dt {
  width: 15%;
  text-align: center;
  background: rgba(0, 99, 177, 0.05);
}

@media (max-width: 700px) {
  .jobDetail-body-table dl dt {
    width: 30%;
  }
}

.jobDetail-body-table dl dd {
  width: 85%;
}

@media (max-width: 700px) {
  .jobDetail-body-table dl dd {
    width: 70%;
  }
}

.jobDetail-body-skill {
  padding: 2rem 2rem 2rem 4rem;
  border: 1px solid var(--border-color);
  margin: 0;
  padding: 1rem;
}

.jobDetail-body-skill li {
  list-style: none;
  margin-left: 0;
  padding: 1rem;
}

.jobDetail-body-skill li:before {
  content: "\f046";
  font-family: FontAwesome;
  margin-right: 1rem;
}

.jobDetail-body-skill li + li {
  border-top: 1px dotted var(--border-color);
}

.jobDetail-footer ._nextAction {
  margin: 2rem auto 0;
  text-align: center;
}

.jobDetail-footer ._nextAction a {
  margin: 1rem;
  width: 20%;
  padding: 2rem 0;
  font-size: 1.6rem;
}

@media (max-width: 900px) {
  .jobDetail-footer ._nextAction a {
    width: 40%;
  }
}

@media (max-width: 700px) {
  .jobDetail-footer ._nextAction a {
    width: 100%;
    margin: .5rem 0;
  }
}

.jobDetail-header {
  margin-bottom: 1rem;
}

.jobDetail-header ._nextAction {
  text-align: right;
}

@media (max-width: 700px) {
  .jobDetail-header ._nextAction {
    text-align: center;
  }
}

.jobDetail-header ._nextAction a {
  padding: 0.5rem 2rem;
}

@media all and (-ms-high-contrast: none) {
  .jobDetail-header ._nextAction a {
    padding: 0.7rem 2rem 0.3rem;
  }
}

.jobDetail-header ._nextAction a + a {
  margin-left: 1rem;
}

.reviewbox {
  margin-top: 1rem;
  text-align: right;
}

.reviewbox .btn-add {
  padding: 0.5rem 1rem;
  border-width: 1px;
}

.jobSearch-result-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border-bottom: 1px solid var(--border-color);
  margin-bottom: 2rem;
  margin-top: 1rem;
}

.jobSearch-result-header ._title {
  font-size: 1.8rem;
  font-weight: bold;
  margin-right: auto;
}

.jobSearch-result-header ._title mark {
  background: none;
  color: var(--main-color);
  font-size: 2.8rem;
}

.jobSearch-result-header ._title p {
  margin: 0;
}

.jobSearch-result-header ._pager {
  margin-left: 3rem;
}

@media (max-width: 900px) {
  .jobSearch-result-header ._pager {
    margin-left: 0;
    padding: 1rem 0;
    text-align: center;
    width: 100%;
  }
}

@media (max-width: 700px) {
  .jobSearch-result-header {
    border-bottom: 0;
  }
  .jobSearch-result-header ._title {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    width: 100%;
    text-align: center;
  }
  .jobSearch-result-header ._sort {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    width: 100%;
  }
  .jobSearch-result-header ._sort select {
    width: 100%;
  }
  .jobSearch-result-header ._pager {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .jobSearch-result-header ._pager ul li + li {
    margin-left: 0;
  }
  .jobSearch-result-header ._pager .gap {
    font-size: 1rem;
  }
}

.jobSearch-result-header ._pager ul, .jobSearch-result-footer ._pager ul {
  margin: 0;
  padding: 0;
}

.jobSearch-result-header ._pager ul li, .jobSearch-result-footer ._pager ul li {
  list-style: none;
}

.jobSearch-result-header ._pager ul li, .jobSearch-result-footer ._pager ul li {
  display: inline-block;
}

.jobSearch-result-header ._pager ul li a, .jobSearch-result-footer ._pager ul li a {
  padding: 0.5rem 0.8rem;
  background: rgba(177, 221, 255, 0.4);
  border-radius: 4px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.jobSearch-result-header ._pager ul li a:hover, .jobSearch-result-footer ._pager ul li a:hover {
  background: var(--main-color);
  color: #fff;
  text-decoration: none;
}

.jobSearch-result-header ._pager ul li + li, .jobSearch-result-footer ._pager ul li + li {
  margin-left: 0.4rem;
}

.jobSearch-result-header ._pager ul .prev-page, .jobSearch-result-header ._pager ul .next-page, .jobSearch-result-footer ._pager ul .prev-page, .jobSearch-result-footer ._pager ul .next-page {
  color: #ccc;
}

.jobList {
  padding: 0 1rem 2rem;
  /*position: relative;*/
  margin-bottom: 2rem;
  background-color: #fff;
  box-shadow: 0 0 0.75rem var(--background-color-light);
  border-top: 2px solid var(--main-color);
  border-right: 1px solid #eee;
  border-left: 1px solid #eee;
  border-bottom: 1px solid #eee;
  height: 100%;
}

@media (min-width: 1100px) {
  .jobList {
    padding: 0 2rem 2rem;
  }
}

@media (max-width: 700px) {
  .jobList {
    padding-bottom: 1rem;
  }
}

.jobList ._title {
  font-size: 1.8rem;
  font-weight: bold;
}

.jobList dl {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px dotted var(--border-color);
  margin: 0;
}

.jobList dl dt {
  margin-right: 1rem;
  margin: 1rem 0.5rem;
  padding: 0.5rem 1rem;
  background: var(--background-color-light);
}

.jobList dl dd {
  margin-left: 0;
  margin: 1rem;
}

.jobList dl dd span {
  margin-right: .8rem;
}

.jobList ._nextAction {
  text-align: center;
  margin: 2rem 0 0;
}

@media (max-width: 700px) {
  .jobList ._nextAction a {
    width: 100%;
    text-align: center;
    margin-left: 0;
    margin-right: 0;
  }
}

@media (min-width: 700px) {
  .jobList ._nextAction a {
    margin: 0;
  }
}

.jobList ._nextAction a + a {
  margin-left: 0.5rem;
}

@media (max-width: 700px) {
  .jobList ._nextAction a + a {
    margin: 0.5rem 0 0;
  }
}

.jobList ._delete {
  text-align: right;
}

@media (min-width: 700px) {
  .jobList ._delete {
    position: absolute;
    bottom: 2rem;
    right: 2rem;
  }
}

.jobList ._delete a {
  margin: 0;
}

.jobList ._delete a:after {
  content: "\f057";
  margin-left: 0.5rem;
  font-family: FontAwesome;
}

@media (max-width: 500px) {
  .jobList ._delete a {
    padding: 0.5rem;
  }
}

.jobSearch-result-footer ._pager ul {
  text-align: center;
}

.jobSearch-result-body {
  margin-bottom: 2rem;
}

.jobSearch-result-body .grid-6 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-left;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

}

.jobSearch-result-body .grid-6 ._col {
  width: 31%;
  float: none;
}

@media (max-width: 900px) {
  .jobSearch-result-body .grid-6 ._col {
    width: 100%;
  }
}

.jobSearch-header {
  width: 100%;
  padding: 3rem 0;
}

@media (min-width: 1100px) {
  .jobSearch-header {
    width: 1080px;
    margin: 0 auto;
  }
}

@media (max-width: 1099px) {
  .jobSearch-header {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.jobSearch-header ._selectArea {
  border: 1px solid var(--border-color);
}

.jobSearch-header ._selectArea dl + dl {
  border-top: 1px solid var(--border-color);
}

@media (min-width: 901px) {
  .jobSearch-header ._selectArea dl {
    display: table;
    width: 100%;
  }
}

.jobSearch-header ._selectArea dt {
  background: var(--main-color-translucent);
  padding: 1rem;
  text-align: center;
  font-weight: bold;
}

@media (min-width: 901px) {
  .jobSearch-header ._selectArea dt {
    width: 15%;
    display: table-cell;
    vertical-align: middle;
  }
}

@media (max-width: 700px) {
  .jobSearch-header ._selectArea dt {
    width: 100%;
  }
}

.jobSearch-header ._selectArea dd {
  padding: 0 0.5rem;
}

@media (min-width: 901px) {
  .jobSearch-header ._selectArea dd {
    width: 85%;
    display: table-cell;
    vertical-align: middle;
  }
}

@media (max-width: 700px) {
  .jobSearch-header ._selectArea dd {
    width: 100%;
  }
}

.jobSearch-header ._selectArea span {
  margin-right: 1rem;
  display: inline-block;
}

.jobSearch-header ._selectArea select, .jobSearch-header ._selectArea span, .jobSearch-header ._selectArea input {
  margin: 1rem 0.5rem;
}

.jobSearch-header ._controlsArea {
  position: relative;
}

.jobSearch-header ._controlsArea ._sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}

.jobSearch-header ._controlsArea ._sub ._favorite {
  background: var(--main-color-translucent);
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: .5rem 1rem;
  margin-right: .5rem;
  z-index: 10;
}

.jobSearch-header ._controlsArea ._sub ._favorite span {
  margin-right: 0.5rem;
}

.jobSearch-header ._controlsArea ._sub ._favorite a {
  margin-left: .5rem;
}

@media all and (-ms-high-contrast: none) {
  .jobSearch-header ._controlsArea ._sub ._favorite a {
    padding: .5rem 1rem 0.1rem;
  }
}

.jobSearch-header ._controlsArea ._sub ._favorite a:hover {
  background: var(--main-color);
  color: #fff;
}

.jobSearch-header ._controlsArea ._sub [class^="btn-"], .jobSearch-header ._controlsArea ._sub [class*=" btn-"] {
  margin: auto 0;
}

.l-globalNav {
  float: right;
  /*width: 70%;*/
}

html[lang="en"] .l-globalNav {
  font-size: 1.4rem;
}

@media (max-width: 1099px) {
  .l-globalNav {
    display: none;
  }
}

.l-globalNav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: auto;
  margin: 0;
  padding: 0;
}

.l-globalNav ul li {
  list-style: none;
}

.l-globalNav ul li {
  display: inline-block;
  line-height: 1.1em;
}

.l-globalNav ul li a {
  display: block;
  padding: 1rem 2rem 2rem;
  text-align: center;
  -webkit-transition: all .3s;
  transition: all .3s;
  font-weight: bold;
}

.l-globalNav ul li a:hover {
  color: var(--main-color);
}

.l-globalNav ul li.activeArrow a {
  color: var(--main-color);
  font-weight: bold;
  position: relative;
}

.l-globalNav ul li.activeArrow a:after {
  content: '';
  height: 0;
  position: absolute;
  width: 0;
  border: 8px solid transparent;
  border-bottom-color: var(--main-color);
  bottom: 0;
  left: 50%;
  -webkit-transform: scaleX(1);
      -ms-transform: scaleX(1);
          transform: scaleX(1);
  background: none;
  margin-left: -8px;
}

.sticky .l-globalNav ul li.activeArrow a:after {
  content: none;
}

.l-globalNav ul li.active a {
  color: var(--main-color);
  font-weight: bold;
}

.l-globalNav ul li.active a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  -webkit-transform: scaleX(1);
      -ms-transform: scaleX(1);
          transform: scaleX(1);
  background-color: var(--main-color);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.sticky .l-globalNav ul li.active a::after {
  content: none;
}

@media (min-width: 1100px) {
  .l-header.sticky {
    visibility: visible;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 500;
    width: 100%;
    box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.3);
    background: white;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .l-header.sticky .l-globalHeader {
    height: 100%;
    width: 100%;
    padding: 1rem;
    display: table;
  }
  .l-header.sticky .l-globalHeader .headerLocal, .l-header.sticky .l-globalHeader .toggleHeaderNavigation {
    display: none;
  }
  .l-header.sticky .companyLogo {
    display: table-cell;
    vertical-align: middle;
    width: auto;
    float: none;
  }
  .l-header.sticky .companyLogo h1 {
    display: table-cell;
    vertical-align: middle;
    margin: 0;
    height: 35px;
  }
  .l-header.sticky .companyLogo h1 a img {
    display: table-cell;
    vertical-align: middle;
    height: 35px;
    width: auto;
  }
  .l-header.sticky .companyLogo .companyName {
    display: none;
  }
  .l-header.sticky .l-globalNav {
    display: table-cell;
    vertical-align: middle;
    position: static;
    float: none;
  }
  .l-header.sticky .l-globalNav ul {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-header.sticky .l-globalNav li a {
    padding: 1rem 2rem;
    font-size: 1.4rem;
  }
}

.theme-second .l-pageHeader h1, .theme-detail .l-pageHeader h1 {
  text-align: center;
}

@media (min-width: 1100px) {
  .theme-second .l-pageHeader h1, .theme-detail .l-pageHeader h1 {
    max-width: 1080px;
  }
}

@media (max-width: 900px) {
  .theme-second .l-pageHeader h1, .theme-detail .l-pageHeader h1 {
    font-size: 2.8rem;
  }
}

.theme-second .l-pageHeader {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: var(--main-color-translucent);
  position: relative;
  z-index: 0;
}

.theme-second .l-pageHeader:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background: url(../images/ovarlay-white.png) center top repeat;
}

.theme-second .l-pageHeader h1 {
  margin: 1rem 1rem 6rem;
}

@media (min-width: 1100px) {
  .theme-second .l-pageHeader h1 {
    margin: 3rem auto 7rem;
  }
}

@media (max-width: 900px) {
  .theme-second .l-pageHeader h1 {
    margin: 4rem 0;
    padding: 0 1rem;
  }
}

.theme-detail .l-pageHeader {
  background: var(--background-color-light);
  border-top: 1px solid var(--background-color-light);
  margin-bottom: 2rem;
  background-size: cover;
  position: relative;
  z-index: 0;
}

.theme-detail .l-pageHeader:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background: url(../images/ovarlay-white.png) center top repeat;
}

.theme-detail .l-pageHeader h1 {
  margin: 1rem 1rem 4rem;
}

@media (min-width: 1100px) {
  .theme-detail .l-pageHeader h1 {
    margin: 1rem auto 4.5rem;
  }
}

@media (max-width: 900px) {
  .theme-detail .l-pageHeader h1 {
    margin: 3rem 0;
  }
}

.l-pageHeader .l-breadcrumbs {
  position: relative;
  z-index: 2;
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0.35) 50%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0.35) 50%, rgba(255, 255, 255, 0) 100%);
}

.l-pageHeader .l-breadcrumbs:after {
  clear: both;
  content: "";
  display: block;
}

.l-pageHeader .l-article {
  position: relative;
  z-index: 1;
}

.l-subNav {
  font-size: 1.4rem;
}

@media (min-width: 1100px) {
  .l-subNav .detailNav-list > ul {
    margin: 0;
    padding: 0;
    overflow-x: auto;
    white-space: nowrap;
    text-align: center;
    font-size: 0;
  }
  .l-subNav .detailNav-list > ul li {
    list-style: none;
  }
  .l-subNav .detailNav-list > ul > li {
    display: inline-block;
    font-size: 1.4rem;
    text-decoration: none;
  }
  .l-subNav .detailNav-list > ul > li > a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    display: block;
    height: 100%;
    padding: 1.2rem 1rem;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .l-subNav .detailNav-list > ul > li > a:hover {
    color: #fff;
  }
  .l-subNav .detailNav-list > ul > li:hover {
    text-decoration: none;
  }
  .l-subNav .detailNav-list > ul > li .active {
    color: white;
    position: relative;
  }
  .l-subNav .detailNav-list > ul > li .active:after {
    position: absolute;
    content: '';
    height: 2px;
    width: 100%;
    left: 0;
    bottom: 0;
    background: #fff;
  }
  .l-subNav .detailNav-list > ul > .parentItem:hover {
    background: var(--background-color-dark);
  }
  .l-subNav .detailNav-list > ul > .parentItem:hover .active:after {
    display: none;
  }
  .l-subNav .detailNav-title {
    display: none;
  }
}

@media (max-width: 1099px) {
  .l-subNav .detailNav-title {
    padding: 1rem;
    color: #fff;
    cursor: pointer;
  }
  .l-subNav .detailNav-title:after {
    position: absolute;
    right: 2rem;
    z-index: 10;
    content: "\f107";
    font-family: FontAwesome;
    font-size: 2.2rem;
    line-height: 1;
  }
  .l-subNav .action:after {
    content: "\f106";
  }
  .l-subNav .detailNav-list {
    display: none;
  }
  .l-subNav .detailNav-list ul {
    margin: 0;
    padding: 0;
  }
  .l-subNav .detailNav-list ul li {
    list-style: none;
  }
  .l-subNav .detailNav-list ul li {
    border-top: 1px solid rgba(0, 70, 126, 0.5);
  }
  .l-subNav .detailNav-list ul li a {
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 0 60px 0 1rem;
    line-height: 40px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .l-subNav .detailNav-list ul li .active {
    color: rgba(255, 255, 255, 0.5);
    background: var(--sub-color-dark);
  }
}

.detailNav {
  background: var(--main-color);
}

@media (min-width: 901px) {
  .l-subNav.sticky {
    position: fixed;
    left: 0;
    width: 100%;
    z-index: 99;
    box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.4);
    background: rgba(0, 99, 177, 0.95);
    opacity: 0;
  }
  .l-subNav.sticky.up {
    opacity: 1;
    display: block;
    margin-top: 0;
    -webkit-transition: margin-top 1s;
    transition: margin-top 1s;
    margin-top: -20px;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .l-subNav.sticky.up {
    margin-top: 0;
    opacity: 1;
  }
}

@media (min-width: 1100px) {
  .grandchildNav {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    position: absolute;
    left: 0;
    width: 100%;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    background: var(--background-color-dark);
  }
  .grandchildNav ul.listPanel {
    max-width: 1080px;
    margin: 0 auto;
    background: none;
    white-space: normal;
    text-align: left;
  }
  .detailNav-list ul::-webkit-scrollbar {
    height: 8px;
  }
  .detailNav-list ul::-webkit-scrollbar-track {
    background: var(--sub-color-dark);
  }
  .detailNav-list ul::-webkit-scrollbar-thumb {
    background: var(--background-color-dark);
  }
  .detailNav-list {
    position: relative;
  }
  .detailNav-list > ul > li:hover .grandchildNav {
    visibility: visible;
    opacity: 1;
  }
}

@media (max-width: 1099px) {
  .grandchildNav {
    display: none;
    z-index: 100;
  }
  .parentItem {
    position: relative;
  }
  .parentItem .grandchildControls {
    position: absolute;
    color: #fff;
    right: 0;
    top: 0;
    width: 40px;
    height: 40px;
    background: rgba(0, 70, 126, 0.5);
  }
  .parentItem .grandchildControls:before {
    content: '＋';
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    font-size: 1.8rem;
  }
  .parentItem .grandchildControls.opened:before {
    content: '－';
  }
  .l-subNav ul.listPanel li {
    padding: 0;
    border-top: 1px solid var(--sub-color-dark);
    width: 100%;
  }
  .l-subNav ul.listPanel li a {
    background: var(--sub-color-dark);
    border-radius: 0;
    border: 0;
    min-height: auto;
    font-weight: normal;
  }
  .l-subNav ul.listPanel li a:before {
    content: '-';
    margin-right: 1rem;
  }
  .l-subNav ul.listPanel li a:after {
    display: none;
  }
}

.l-utilityNav ul {
  margin: 0;
  padding: 0;
}

.l-utilityNav ul li {
  list-style: none;
}

.l-utilityNav ul li {
  display: inline-block;
}

.l-utilityNav ul li a {
  padding: .5rem;
}

.l-utilityNav ul li a i.fa {
  margin-right: 0.5rem;
  color: var(--main-color);
}

.l-utilityNav ul li .icon-arrow-bottom-final:after {
  color: #999;
  margin-left: 0.5rem;
}

html:lang(en) .indexJobSearch figcaption {
  font-size: 1.4rem;
}

@media (max-width: 700px) {
  html:lang(en) .indexJobSearch figcaption {
    font-size: 1.2rem;
  }
}

@media (max-width: 360px) {
  html:lang(en) .indexJobSearch figcaption {
    bottom: 2.3rem;
  }
}

.listPanel {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding: 1rem;
  background: var(--background-color-light);
  font-weight: bold;
}

.listPanel li {
  list-style: none;
}

.listPanel li {
  font-size: 1.4rem;
  letter-spacing: -0.05rem;
  padding: 0.5rem;
  line-height: 1.2;
}

.listPanel li a {
  width: 100%;
  height: 100%;
  min-height: 5rem;
  padding: 0.75rem 2.5rem 0.75rem 1rem;
  position: relative;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.listPanel li a:after {
  content: "\f105";
  font-family: FontAwesome;
  margin-left: 1rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media (min-width: 901px) {
  .listPanel li a:hover {
    color: #fff;
    background: var(--main-color);
    text-decoration: none;
  }
}

@media (max-width: 1099px) {
  .detailNav .listPanel li a br {
    display: none;
  }
}

@media (max-width: 900px) {
  .l-contents .listPanel li a br {
    display: none;
  }
}

.listPanel li.active a {
  color: #fff;
  background: var(--main-color);
}

.listPanel.li-z li {
  width: 25%;
}

.listPanel.li-2 {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.listPanel.li-2 li {
  width: 40%;
}

.listPanel.li-3 li {
  width: 33.3333%;
}

.listPanel.li-4 li {
  width: 25%;
}

.listPanel.li-5 li {
  width: 20%;
}

@media (max-width: 900px) {
  .listPanel.li-z li,
  .listPanel.li-2 li,
  .listPanel.li-3 li,
  .listPanel.li-4 li,
  .listPanel.li-5 li {
    font-size: 1.4rem;
    width: 50%;
  }
}

@media (max-width: 700px) {
  .listPanel.li-z li,
  .listPanel.li-2 li,
  .listPanel.li-3 li,
  .listPanel.li-4 li,
  .listPanel.li-5 li {
    width: 100%;
  }
}

.map_controls {
  margin-top: -2.4rem;
  position: relative;
}

@media (max-width: 500px) {
  .map_controls {
    margin-bottom: -2rem;
  }
}

.map_controls ul li a {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.map_controls .controlsMainCategory {
  background: var(--background-color-light);
  padding: 1rem;
  box-shadow: 0 0 3px #999;
}

.map_controls .controlsMainCategory li {
  font-size: 1.6rem;
  float: left;
  width: 50%;
  padding: 1rem;
}

.map_controls .controlsSubCategory + p {
  margin-bottom: 0;
}

.map_controls .btn-reset {
  border: none;
  font-size: 1.2rem;
  color: #000;
}

.controlsSubCategory {
  margin-top: 1rem;
}

.controlsSubCategory:after {
  clear: both;
  content: "";
  display: block;
}

.controlsSubCategory ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.controlsSubCategory ul li a {
  padding: 0.5rem 2rem;
}

@media (max-width: 700px) {
  .controlsSubCategory ul li a {
    padding: 0.5rem 1rem;
  }
}

.subCategory-list {
  width: 100%;
}

.subCategory-list li {
  display: none;
}

#controlsView {
  box-shadow: 0 0 3px #999;
  background: var(--background-color-light);
}

#controlsView ul li {
  padding: 0;
}

#controlsView2 {
  background: var(--main-color);
}

@media (max-width: 700px) {
  #controlsView2 {
    display: none;
  }
}

.controlsMainCategory2 {
  background: #000d18;
}

.controlsMainCategory2 .controls2 {
  display: table;
  width: 100%;
  margin: 0;
  margin: 0;
  padding: 0;
}

.controlsMainCategory2 .controls2 li {
  list-style: none;
}

.controlsMainCategory2 .controls2:after {
  clear: both;
  content: "";
  display: block;
}

@media (min-width: 700px) {
  .controlsMainCategory2 .controls2 {
    width: 50%;
    margin: 0 auto;
  }
}

.controlsMainCategory2 .controls2 li {
  display: table-cell;
  width: 50%;
  padding: 0;
  font-weight: bold;
}

.controlsMainCategory2 .controls2 li a {
  text-align: center;
  display: block;
  padding: 0.5rem;
  background: transparent;
  color: #fff;
  border-radius: 0;
  border: 0;
}

@media (min-width: 700px) {
  .controlsMainCategory2 .controls2 li a {
    font-size: 1.8rem;
  }
}

.controlsMainCategory2 .controls2 li a:after {
  content: '\f107';
  font-family: FontAwesome;
  margin-left: 1rem;
}

.controlsMainCategory2 .controls2 li a:hover {
  border: 0;
  color: #fff;
  background: var(--main-color);
  text-decoration: none;
}

.controlsMainCategory2 .controls2 li a.active {
  position: relative;
  background: var(--main-color);
}

.controlsMainCategory2 .controls2 li a.active:before {
  position: absolute;
  top: -2px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  content: '';
}

.controlsSubCategory2 {
  background: var(--main-color);
}

.controlsSubCategory2 .controls2 {
  margin: 0;
  margin: 0;
  padding: 0;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

.controlsSubCategory2 .controls2 li {
  list-style: none;
}

.controlsSubCategory2 .controls2:after {
  clear: both;
  content: "";
  display: block;
}

.controlsSubCategory2 .controls2 li {
  line-height: 1;
  padding: 0.75rem 0.5rem;
}

@media (max-width: 500px) {
  .controlsSubCategory2 .controls2 li {
    margin: 0.5rem 0;
    padding: 0rem 0.5rem;
  }
}

.controlsSubCategory2 .controls2 li a {
  text-align: center;
  display: inline-block;
  background: transparent;
  color: #fff;
  padding: 0.5rem;
  border: 0;
  border-radius: 4px;
  opacity: 0.5;
}

@media (min-width: 901px) {
  .controlsSubCategory2 .controls2 li a {
    border-radius: 0;
    font-size: 1.6rem;
  }
}

@media (max-width: 500px) {
  .controlsSubCategory2 .controls2 li a {
    padding: 1.0rem;
    background: #0080e4;
  }
}

.controlsSubCategory2 .controls2 li a:hover {
  color: #fff;
  border: 0;
  text-decoration: none;
}

@media (min-width: 901px) {
  .controlsSubCategory2 .controls2 li a:hover {
    opacity: 1;
  }
}

.controlsSubCategory2 .controls2 li a.active {
  opacity: 1;
  border-radius: 4px;
  background: #fff;
  color: var(--main-color);
}

.controlsSubCategory2 .controls2 li + li:before {
  content: '・';
  font-weight: bold;
  display: inline;
  opacity: 0.5;
  color: #fff;
  margin-right: 1rem;
}

@media (max-width: 500px) {
  .controlsSubCategory2 .controls2 li + li:before {
    display: none;
  }
}

.controlsSubCategory2 .controls2 li.return:before {
  display: none;
  content: '';
}

.tabcontents {
  position: relative;
  display: none;
}

/* ---- point ---- */
[id^="point-"],
[id^="point-"]:link,
[id^="point-"]:visited {
  color: #fff;
  opacity: 0.7;
  font-size: 1.2rem;
  position: absolute;
  z-index: 100;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background: rgba(0, 0, 0, 0.5);
  padding: 0 0.5rem;
}

@media (max-width: 1099px) {
  [id^="point-"] {
    background: none;
    padding: 0;
  }
}

[id^="point-"]:hover {
  text-decoration: underline;
  opacity: 1;
}

[id^="pointGroup-"] {
  font-size: 1.2rem;
  position: absolute;
  z-index: 100;
}

[id^="pointGroup-"] ul {
  margin: 0;
  padding: 0;
}

[id^="pointGroup-"] ul li {
  list-style: none;
}

[id^="pointGroup-"] ul li a {
  color: #fff;
  opacity: 0.7;
}

[id^="pointGroup-"] ul li a:hover {
  text-decoration: underline;
  opacity: 1;
}

.point-group {
  background: rgba(0, 0, 0, 0.5);
  padding: 2rem 1rem;
  overflow: auto;
}

@media (max-width: 900px) {
  .point-group {
    padding: 1rem 0;
  }
}

.point-group a {
  display: inline-block;
  color: #fff;
  opacity: 0.7;
}

[id^="pointGroup-kantou"] ul li a {
  display: block;
}

.point-group a:hover {
  text-decoration: underline;
  opacity: 1;
}

.point-group ul {
  margin: 0;
  padding: 0;
}

.point-group ul:after {
  clear: both;
  content: "";
  display: block;
}

.point-group ul li {
  list-style: none;
}

.point-group ul li {
  float: left;
  width: 50%;
  padding: 0 1rem;
}

.groupSet {
  background: rgba(0, 0, 0, 0.5);
  padding: 0 1rem;
}

@media (max-width: 1099px) {
  .groupSet {
    background: none;
    padding: 0;
  }
}

@media (max-width: 900px) {
  [id^="point-"], [id^="pointGroup-"] {
    font-size: 1.0rem;
    line-height: 1.3em;
  }
}

@media (max-width: 700px) {
  [id^="point-"], [id^="pointGroup-"] {
    display: none;
  }
}

/* ---- overlay (border) ---- */
#controlsView2 .overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

@media (max-width: 700px) {
  #controlsView2 .overlay {
    display: none;
  }
}
#controlsView2 .overlay2 {
  position: absolute;
  top: -6%;
  right: 15%;
  z-index: 1;
  left: 0;
}

@media (max-width: 700px) {
  #controlsView2 .overlay2 {
    display: none;
  }
}
/* ---- position ---- */
#point-hokkaidou-A {
  left: 75%;
  top: 48%;
}

#tooltip-tohoku-A {
  left: 48.9%;
  top: 78.3%;
}

#point-tohoku-A {
  left: 51.9%;
  top: 80.0%;
}

#tooltip-kantou-A {
  left: 68.3%;
  top: 15.3%;
}

#tooltip-kantou-B {
  left: 68.3%;
  top: 25.6%;
}

#tooltip-kantou-C {
  left: 68.3%;
  top: 36.3%;
}

#tooltip-kantou-D {
  left: 68.3%;
  top: 47%;
}

#tooltip-kantou-E {
  left: 68.3%;
  top: 58%;
}

#tooltip-kantou-F {
  left: 68.3%;
  top: 68.6%;
}

#tooltip-kantou-G {
  left: 68.3%;
  top: 79%;
}

#tooltip-kantou-H {
  left: 71.2%;
  top: 15.3%;
}

#tooltip-kantou-I {
  left: 71.2%;
  top: 25.6%;
}

#tooltip-kantou-J {
  left: 71.2%;
  top: 36.3%;
}

#tooltip-kantou-K {
  left: 71.2%;
  top: 47%;
}

#tooltip-kantou-L {
  left: 71.2%;
  top: 58%;
}

#tooltip-kantou-M {
  left: 71.2%;
  top: 68.6%;
}

#tooltip-kantou-N {
  left: 71.2%;
  top: 79%;
}

#tooltip-kantou-O {
  left: 74.3%;
  top: 15.3%;
}

#tooltip-kantou-P {
  left: 74.3%;
  top: 25.6%;
}

#tooltip-kantou-Q {
  left: 74.3%;
  top: 36.3%;
}

#tooltip-kantou-R {
  left: 74.3%;
  top: 47%;
}

#tooltip-kantou-S {
  left: 74.3%;
  top: 58%;
}

#pointGroup-kantou {
  left: 1rem;
  top: 1rem;
  width: 55.5%;
  height: calc(80% - 2rem);
}

#point-kantou-B {
  left: 62.6%;
  top: 74%;
}

#point-kantou-C {
  left: 76.5%;
  top: 78%;
}

#tooltip-chubu-A {
  left: 43.1%;
  top: 70%;
}

#tooltip-chubu-B {
  left: 29.7%;
  top: 59.6%;
}

#tooltip-chubu-C {
  left: 29.7%;
  top: 69%;
}

#tooltip-chubu-D {
  left: 29.7%;
  top: 78.3%;
}

#tooltip-chubu-E {
  left: 51.8%;
  top: 15.3%;
}

#point-chubu-A {
  left: 46%;
  top: 72%;
}

#point-chubu-A1 {
  left: 46%;
  top: 65%;
}

#point-chubu-A2 {
    left: 62%;
    top: 62%;
}

#point-chubu-A3 {
    left: 62%;
    top: 68%;
}

#point-chubu-B {
  left: 56.8%;
  top: 87%;
}

#pointGroup-chubu {
  right: 68.5%;
  top: 62.6%;
}

#tooltip-kinki-A {
  left: 51.6%;
  top: 29%;
}

#tooltip-kinki-B {
  left: 35.2%;
  top: 52.6%;
}

#tooltip-kinki-C {
  left: 35.2%;
  top: 62%;
}

#point-kinki-B {
  right: 68.5%;
  top: 46%;
}
#point-kinki-B1 {
  right: 68.5%;
  top: 39.5%;
}
#point-kinki-B2 {
  right: 68.5%;
  top: 55.5%;
}
#point-kanto-A {
  left: 70.5%;
    top: 6%;
}
#point-kanto-B {
  right: 12.5%;
    top: 17%;
}
#point-kanto-C {
   left: 76.5%;
    top: 79%;
}

#pointGroup-kinki {
  right: 62.9%;
  top: 62.9%;
}

#pointGroup-chugoku-A {
    right: 15%;
    top: 37%;
}

#pointGroup-chugoku-B {
    right: 8%;
    top: 10%;
}

#tooltip-okinawa-A {
  left: 53.5%;
  top: 20.33%;
}

#point-okinawa-A {
  left: 56%;
  top: 21.4%;
}

#pointGroup-okinawa {
  left: 66%;
  top: 20%;
}

#pointGroup-okinawa2 {
  left: 56.5%;
  top: 22.5%;
}


#pointGroup-kyushu {
  left: 31.5%;
  top: 39.0%;
}

#pointGroup-kyushu-en {
  left: 34.5%;
  top: 39.0%;
}


#tooltip-asia-A {
  left: 57.13%;
  top: 2.3%;
}

#tooltip-asia-B {
  left: 68.7%;
  top: 20%;
}

#tooltip-asia-C {
  left: 68.7%;
  top: 29.6%;
}

#tooltip-asia-D {
  left: 53.7%;
  top: 33.3%;
}

#tooltip-asia-E {
  left: 41.02%;
  top: 9%;
}

#tooltip-asia-F {
  left: 41.02%;
  top: 18%;
}

#tooltip-asia-G {
  left: 41.02%;
  top: 27%;
}

#tooltip-asia-H {
  left: 49.16%;
  top: 52.33%;
}

#tooltip-asia-I {
  left: 58.14%;
  top: 42.66%;
}

#tooltip-asia-J {
  left: 58.14%;
  top: 52.33%;
}

#tooltip-asia-K {
  left: 41.02%;
  top: 38.3%;
}

#tooltip-asia-L {
  left: 41.02%;
  top: 47.33%;
}

#tooltip-asia-M {
  left: 41.02%;
  top: 56.33%;
}

#tooltip-asia-N {
  left: 41.02%;
  top: 65.66%;
}

#tooltip-asia-O {
  left: 41.02%;
  top: 77%;
}

#tooltip-asia-P {
  left: 41.02%;
  top: 86%;
}

#tooltip-asia-Q {
  left: 48.8%;
  top: 68.66%;
}

#tooltip-asia-R {
  left: 50.27%;
  top: 81.66%;
}

#tooltip-asia-S {
  left: 30.27%;
  top: 53%;
}

#tooltip-asia-T {
  left: 30.27%;
  top: 62.33%;
}

#point-asia-A {
  left: 59.6%;
  top: 4.8%;
}

#pointGroup-asia-B {
  left: 69%;
  top: 19.3%;
}

#point-asia-C {
  left: 56.38%;
  top: 35.5%;
}

#pointGroup-asia-D {
  right: 57%;
  top: 2.75%;
}

#point-asia-E {
  left: 51.57%;
  top: 58.7%;
}

#pointGroup-asia-F {
  left: 58.61%;
  top: 44.66%;
}

#pointGroup-asia-G {
  right: 57%;
  top: 24.8%;
}

#pointGroup-asia-H {
  right: 53%;
  top: 82.5%;
}

#point-asia-I {
  left: 51.66%;
  top: 72.2%;
}

#pointGroup-asia-I {
  left: 53.66%;
  top: 67.5%;
}

#point-asia-J {
  left: 53.33%;
  top: 84.66%;
}

#pointGroup-asia-K {
  right: 73%;
  top: 66.6%;
}

#tooltip-oceania-A {
  left: 57.68%;
  top: 44.66%;
}

#tooltip-oceania-B {
  left: 57.68%;
  top: 54%;
}

#tooltip-oceania-C {
  left: 38.42%;
  top: 51.33%;
}

#tooltip-oceania-D {
  left: 38.42%;
  top: 60%;
}

#tooltip-oceania-E {
  left: 38.42%;
  top: 69.33%;
}

#tooltip-oceania-F {
  left: 38.42%;
  top: 78.33%;
}

#pointGroup-oceania-A {
  left: 58%;
  top: 46.77%;
}

#pointGroup-oceania-A2 {
  left: 59%;
  top: 10%;
}

#pointGroup-oceania-B {
  right: 60%;
  top: 54.66%;
}

#point-oceania-C {
  left : 72%;
  top: 58%;
}

#tooltip-europe-A {
  left: 38.98%;
  top: 40.3%;
}

#tooltip-europe-B {
  left: 38.98%;
  top: 49.66%;
}

#tooltip-europe-C {
  left: 44.84%;
  top: 17.66%;
}

#tooltip-europe-D {
  left: 49.16%;
  top: 24.66%;
}

#tooltip-europe-E {
  left: 51.66%;
  top: 42.33%;
}

#tooltip-europe-F {
  left: 58%;
  top: 25.66%;
}

#tooltip-europe-G {
  left: 62.59%;
  top: 32.66%;
}

#tooltip-europe-H {
  left: 66.94%;
  top: 47%;
}

#tooltip-europe-I {
  left: 66.94%;
  top: 56%;
}

#tooltip-europe-J {
  left: 66.94%;
  top: 65%;
}

#tooltip-europe-K {
  left: 66.94%;
  top: 74%;
}

#pointGroup-europe-A {
  right: 58.88%;
  top: 42.7%;
}

#pointGroup-europe-A2 {
  right: 58.5%;
  top: 70.0%;
}

#point-europe-B {
  right: 55.8%;
  top: 20.66%;
}

#pointGroup-europe-C {
  left: 53.51%;
  top: 2.3%;
}

#pointGroup-europe-C2 {
    right: 67.8%;
    top: 1.5%;
}

#point-europe-D3 {
right: 19.8%;
top: 15.5%;
}

#point-europe-D {
  right: 49.9%;
  top: 72%;
}

#point-europe-D2 {
  right: 28.1%;
  top: 84.5%;
}

#point-europe-E {
  left: 61.1%;
  top: 25.5%;
}

#point-europe-F {
  left: 65.45%;
  top: 34.8%;
}

#pointGroup-europe-G {
  left: 65.7%;
  top: 56.66%;
}

#pointGroup-europe-G2 {
  left: 65.7%;
  top: 56.66%;
}

#point-europe-H {
  left: 57.9%;
  top: 45.8%;
}

#tooltip-northAmerica-A {
  left: 66.66%;
  top: 16%;
}

#point-northAmerica-A {
  left: 12%;
  top: 4%;
}

#tooltip-southAmerica-A {
  left: 55.18%;
  top: 40.66%;
}

#tooltip-southAmerica-B {
  left: 55.18%;
  top: 49.66%;
}

#tooltip-southAmerica-C {
  left: 55.18%;
  top: 58.66%;
}

#tooltip-southAmerica-D {
  left: 55.18%;
  top: 67.66%;
}

#tooltip-southAmerica-E {
  left: 55.18%;
  top: 76.66%;
}

#pointGroup-southAmerica-A {
  left: 55.64%;
  top: 45.2%;
}

#pointGroup-southAmerica-A2 {
  left: 3.8%;
  top: 68.6%;
}

#point-southAmerica-B {
  left: 48.0%;
  top: 8.0%;
}

#point-southAmerica-C {
  left: 47.0%;
  top: 43.0%;
}

#point-southAmerica-D {
  left: 45.5%;
  top: 20.0%;
}

#point-southAmerica-E {
  left: 66.8%;
  top: 68.0%;
}

[data-balloon]:after {
  border-radius: 0 !important;
  font-size: 1.2rem !important;
  text-decoration: none;
}

#map_canvas {
  width: 100%;
  height: 500px;
}

.l-mobileNav {
  display: none;
  position: fixed;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc(100% - 60px);
  z-index: 501;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  background: rgba(0, 42, 75, 0.9);
}

.l-mobileNav ul {
  margin: 0;
  padding: 0;
  padding: 1rem;
}

.l-mobileNav ul li {
  list-style: none;
}

.l-mobileNav ul li a {
  color: #fff;
  display: block;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  text-decoration: none;
  padding: 1.2rem 1rem;
  position: relative;
  width: 100%;
}

.l-mobileNav ul li a:after {
  font-family: FontAwesome;
  content: '\f105';
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.l-mobileNav .searchForm {
  text-align: center;
  padding: 2rem 1rem;
}

.l-mobileNav .searchForm form {
  position: relative;
  width: 50%;
  height: 50px;
  margin: 0 auto;
}

@media (max-width: 700px) {
  .l-mobileNav .searchForm form {
    width: 100%;
  }
}

.l-mobileNav .searchForm .headerSearchInput {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%;
  background: #fff;
  border-radius: 6px;
  padding-right: 3rem;
}

.l-mobileNav .searchForm .btnSearch {
  padding-left: 1rem;
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

body.menu-open {
  overflow: hidden;
}

.modal-window {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 999;
}

.modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1000;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  padding: 4rem;
  border: 1px solid #fff;
}

@media (max-width: 900px) {
  .modal-content {
    width: 80%;
    margin: 0 auto;
  }
}

@media (max-width: 700px) {
  .modal-content {
    padding: 4rem 2rem 2rem;
  }
}

.modal-content .modal-close {
  position: absolute;
  top: 0;
  right: -1px;
  width: 50px;
  height: 50px;
  background: #fff;
  color: var(--main-color);
  text-align: center;
  line-height: 50px;
  font-size: 3.6rem;
  cursor: pointer;
  font-family: "Menlo", "Lucida Console", monospace;
}

@media (max-width: 700px) {
  .modal-content .modal-close {
    top: -25px;
    right: -25px;
  }
}

.modal-content .modal-content-header {
  font-weight: bold;
  text-align: center;
  margin-bottom: 2rem;
  font-size: 2.2rem;
}

@media (max-width: 700px) {
  .modal-content .modal-content-body br {
    display: none;
  }
}

.modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 42, 75, 0.85);
}

.moreDetail {
  text-align: center;
  margin-top: 2rem;
}

.newsDetail-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

.newsDetail-header ._category {
  margin-left: 1rem;
  padding-left: 1rem;
  border-left: 1px solid var(--border-color);
}

.newsHeader {
  margin: 2rem 0;
  display: table;
  width: 100%;
}

.newsHeader:after {
  clear: both;
  content: "";
  display: block;
}

.newsHeader .newsHeader-select {
  display: table-cell;
}

.newsHeader .newsHeader-rss {
  display: table-cell;
  text-align: right;
  vertical-align: middle;
  font-size: 3.2rem;
}

@media (max-width: 700px) {
  .newsHeader .newsHeader-rss {
    vertical-align: bottom;
  }
}

.newsHeader .newsHeader-rss a i.fa.fa-rss-square {
  color: orange;
}

.newsHeader #newsSearch {
  margin-top: 0;
}

.newsHeader #newsSearch dl + dl {
  margin-left: 1rem;
}

@media (max-width: 900px) {
  .newsHeader #newsSearch {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.newsList ul {
  margin: 0;
  padding: 0;
}

.newsList ul li {
  list-style: none;
}

.theme-second .newsList ul li, .theme-detail .newsList ul li {
  border-bottom: 1px dotted var(--border-color);
}

.newsList ul li ._item {
  padding: 1.6rem 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

.indexNews .newsList ul li ._item {
  padding: 1rem;
}

@media (max-width: 700px) {
  .indexNews .newsList ul li ._item {
    padding: 1.6rem 1rem;
  }
}

@media (max-width: 700px) {
  .newsList ul li ._item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.newsList ul li ._item > div {
  display: inline-block;
}

.newsList ul li ._item div + div {
  margin-left: 1rem;
}

.newsList ul li ._item ._time {
  margin-right: 2rem;
  display: inline-table;
}

.newsList ul li ._item ._category span {
  border: 1px solid #999;
  padding: 0.4rem 1rem;
  display: inline-block;
  font-size: 1.2rem;
  text-align: center;
  min-width: 12rem;
  line-height: 1;
}

@media all and (-ms-high-contrast: none) {
  .newsList ul li ._item ._category span {
    padding: 0.5rem 1rem 0.2rem;
  }
}

.newsList ul li ._item ._title {
  text-decoration: none;
}

@media (max-width: 700px) {
  .newsList ul li ._item ._title {
    -webkit-box-flex: 1;
    -webkit-flex: 1 100%;
        -ms-flex: 1 100%;
            flex: 1 100%;
    margin-left: 0;
    margin-top: 1rem;
  }
}

@media all and (-ms-high-contrast: none) {
  .newsList ul li ._item ._title {
    padding-top: 0.2rem;
  }
}

.newsList ul li ._item ._filesize {
  margin-left: 0.5rem;
  color: #999;
}

.newsList ul li ._item ._filesize:before {
  content: "(";
}

.newsList ul li ._item ._filesize:after {
  content: ")";
}

.newsList ul li ._item ._detail {
  display: block;
  color: var(--text-color);
  padding-top: 0.5rem;
}

.newsList ul li ._item ._time + ._title {
  margin-left: 14rem;
}

@media (max-width: 700px) {
  .newsList ul li ._item ._time + ._title {
    margin-left: 0;
  }
}

.newsList ul li a {
  color: var(--text-color);
  -webkit-transition: all .5s;
  transition: all .5s;
  display: block;
}

.newsList ul li a:hover {
  text-decoration: none;
  background: var(--background-color-light);
}

.newsList ul li a ._title {
  color: var(--main-color);
}

.newsList ul li a[target="_blank"] ._title > span:first-child {
  padding-right: 22px;
  position: relative;
  display: inline;
}

.newsList ul li a[target="_blank"] ._title > span[class^="icon-"] {
  padding-right: 1px;
}

.newsList ul li a[target="_blank"] ._title > span[class^="icon-"]:before {
  right: 20px;
}

.newsList ul li a[target="_blank"] ._title > span[class^="icon-"]:after {
  right: 0;
  bottom: 2px;
}

#newsSearch {
  margin-top: 2rem;
  padding: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 1099px) {
  #newsSearch {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

#newsSearch dl {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 900px) {
  #newsSearch dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

#newsSearch dl dt {
  margin-right: 0.5rem;
}

#newsSearch dl dd {
  margin-left: 0;
}

#newsSearch dl + dl {
  margin-left: 2rem;
}

.newsYuho dl {
  margin: 0;
  width: 100%;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border-left: 1px solid var(--border-color);
  border-right: 1px solid var(--border-color);
  background: var(--main-color-translucent);
}

.newsYuho dl:last-child {
  border-bottom: 1px solid var(--border-color);
}

.newsYuho dt {
  width: 30%;
  padding: 1rem;
  border-top: 1px solid var(--border-color);
}

@media (max-width: 700px) {
  .newsYuho dt {
    width: 50%;
  }
}

.newsYuho dd {
  width: 70%;
  margin: 0;
  padding: 1rem;
  border-left: 1px solid var(--border-color);
  border-top: 1px solid var(--border-color);
  background: #fff;
}

@media (max-width: 700px) {
  .newsYuho dd {
    width: 50%;
  }
}

.newsYuho ._filesize {
  margin-left: 0.5rem;
  color: #999;
}

.newsYuho ._filesize:before {
  content: "(";
}

.newsYuho ._filesize:after {
  content: ")";
}

@media (max-width: 700px) {
  .newsYuho ._filesize {
    margin-left: 0;
    font-size: 1rem;
  }
}

.philosophy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

@media (max-width: 700px) {
  .philosophy {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.philosophy ._image {
  width: 20%;
}

@media (max-width: 700px) {
  .philosophy ._image {
    width: 100%;
  }
}

.philosophy ._image figure {
  text-align: center;
}

.philosophy ._image figure img {
  display: block;
  margin: 0 auto;
}

.philosophy ._image figcaption {
  font-weight: bold;
  margin-top: 1rem;
}

.philosophy ._content {
  width: 80%;
  padding-right: 2rem;
}

@media (max-width: 700px) {
  .philosophy ._content {
    width: 100%;
    padding-right: 0;
  }
}

.purposeValue_copy {
  font-size: 150%;
  font-weight: bold;
  text-wrap: balance;
  margin-top: 2em;
  text-align: center;
}

.brexaValues,
.brexaBrand {
  margin-top: 6em;
}

.brexaValues_items {

  margin: 0 auto;
}
.brexaValues_item {
  display: flex;
  justify-content: center;
}

.brexaValues_item h3 {
  width: 12em;
  margin-right: 1em;
  padding: 0;
}

.brexaValues_item p {
  width: 30em;
}

@media (max-width: 600px) {
  .brexaValues_item {
    display: block;
  }
  .brexaValues_item h3,
  .brexaValues_item p {
    width: auto;
  }
}

.brexaBrand_name {
  font-size: 110%;
  font-weight: bold;
}

.brexaBrand_name span {
  color: var(--main-color);
}

.brexaBrand_item {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 2rem;
}

.brexaBrand_item h3 {
  color: var(--main-color);
  padding: 0;
}

.brexaBrand_item_img {
  width: 400px;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.brexaBrand_item_img img {
  width: 200px;
  height: auto;
}

.brexaBrand_item_text {
  flex: 1;
}

@media (max-width: 800px) {
  .brexaBrand_item {
    display: block;
  }
  .brexaBrand_item_img {
    width: auto;
  }
}


.popup-body {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  padding: 2rem;
  background: #fff;
}

@media (max-width: 700px) {
  .popup-body {
    width: 80%;
  }
}

.popup-body .popup-content-text {
  margin-bottom: 1rem;
  font-size: 1.6rem;
}

.popup-body .popup-content-cta a + a {
  margin-left: 1rem;
}

.search-header-mobile {
  width: 100%;
}

.search-header-mobile h2 {
  background: var(--main-color);
  color: #fff;
  font-size: 1.8rem;
  padding: 1rem;
  margin-bottom: 0;
}

.search-header-mobile h2:before, .search-header-mobile h2:after {
  display: none;
}

.search-header-mobile .search-option {
  padding: 1rem;
  background: var(--background-color-light);
}

.search-header-mobile .search-option-select {
  border: 2px solid var(--main-color);
  border-radius: 4px;
  padding: 1rem;
  margin: 1rem 0;
  background: #fff;
}

.search-header-mobile .search-option-select dt {
  color: var(--main-color);
  padding-bottom: .5rem;
}

.search-header-mobile .search-option-select dd {
  margin-left: 0;
}

.search-header-mobile .search-option-select dd select, .search-header-mobile .search-option-select dd input {
  width: 100%;
}

.search-header-mobile .search-option-select dd select._type {
  width: 33%;
  margin-right: auto;
  display: inline-block;
}

.search-header-mobile .search-option-select dd select._price {
  width: 65%;
}

.search-header-mobile .search-option-select dd input {
  background: #fff;
  padding: .5rem;
  border: 1px solid var(--border-color);
}

.search-header-mobile .search-option-select .search-option-select-parallel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

.search-header-mobile .search-option-slide {
  margin: 1rem 0;
}

.search-header-mobile .search-option-slide dt {
  cursor: pointer;
  border: 2px solid var(--main-color);
  background: #fff;
  border-radius: 4px;
  padding: 1rem;
  color: var(--main-color);
  position: relative;
}

.search-header-mobile .search-option-slide dt:before, .search-header-mobile .search-option-slide dt:after {
  font-family: FontAwesome;
}

.search-header-mobile .search-option-slide dt:before {
  padding-right: .5rem;
}

.search-header-mobile .search-option-slide dt:after {
  position: absolute;
  top: 50%;
  right: 1rem;
  -webkit-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  content: "\f105";
}

.search-header-mobile .search-option-slide ._area:before, .search-header-mobile .search-option-slide ._groupArea:before {
  content: "\f041";
}

.search-header-mobile .search-option-slide dd {
  margin-left: 0;
}

.search-header-mobile .search-option-slide dd span {
  font-size: 1.2rem;
}

.search-header-mobile .search-option-slide dd span + span:before {
  content: ",";
}

.search-header-mobile ._controlsArea {
  margin-top: 0;
  padding: 1rem;
}

.search-header-mobile ._controlsArea button {
  margin: 0;
}

.search-header-mobile ._controlsArea ._favorite {
  border: 2px solid var(--background-color-light);
  background: var(--main-color-translucent);
  border-radius: 4px;
  margin: 1rem 0;
  padding: .5rem 1rem 1rem;
}

.search-header-mobile ._controlsArea ._favorite:after {
  clear: both;
  content: "";
  display: block;
}

.search-header-mobile ._controlsArea ._favorite span {
  width: 100%;
  display: block;
  text-align: center;
}

.search-header-mobile ._controlsArea ._favorite a, .search-header-mobile ._controlsArea ._favorite button {
  text-align: center;
  margin: 0;
  width: calc(50% - 0.5rem);
  padding: .5rem 1rem;
}

.search-header-mobile ._controlsArea ._favorite a:first-child {
  float: left;
}

.search-header-mobile ._controlsArea ._favorite a:last-child {
  float: right;
}

.search-header-mobile ._controlsArea ._sub {
  margin-top: 1rem;
}

.search-header-mobile ._controlsArea ._sub button {
  width: 100%;
}

.search-header-mobile ._controlsArea ._submit {
  position: initial;
  margin-bottom: 0;
}

.search-header-mobile ._controlsArea ._submit button {
  width: 100%;
}

.modal-mask {
  position: fixed;
  z-index: 9998;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease;
}

.modal-wrapper {
  width: 90%;
  max-width: 1080px;
  height: 80%;
  max-height: 550px;
  vertical-align: middle;
}

.modal-container {
  width: 100%;
  height: 100%;
  margin: 0px auto;
  background-color: #fff;
  border-radius: 2px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.33);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  position: relative;
}

.modal-header {
  height: 50px;
  line-height: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

.modal-header .modal-header-title {
  margin: 0;
  padding: 10px;
  text-align: center;
  font-weight: bold;
  border-bottom: 1px solid var(--border-color);
}

.modal-header-left {
  width: 25%;
  background: #fff;
}

.modal-header-right {
  width: 75%;
  background: rgba(0, 99, 177, 0.2);
}

.modal-footer {
  height: 70px;
  width: 100%;
  text-align: center;
  border-top: 1px solid var(--border-color);
  display: table;
}

.modal-body {
  height: calc(100% - 120px);
  background: var(--main-color-translucent);
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.modal-body ul li {
  list-style: none;
  display: block;
}

.modal-body-left {
  height: 100%;
  width: 25%;
  background: #fff;
  overflow-y: auto;
}

.left-items {
  margin: 0;
  padding: 0;
}

.left-items li {
  list-style: none;
}

.left-items li {
  border-bottom: 1px solid var(--background-color-light);
}

.left-items li a {
  display: block;
  padding: 1rem;
  font-size: 1.6rem;
  color: var(--text-color);
  -webkit-transition: all .3s;
  transition: all .3s;
}

.left-items li a:hover {
  color: #fff;
  background: var(--main-color);
  text-decoration: none;
}

.left-items li .is-selected {
  background: var(--main-color);
  color: #fff;
}

.modal-body-right {
  float: right;
  height: 100%;
  width: 75%;
}

.modal-body-right .right-items {
  height: 100%;
  width: 100%;
  padding: 2rem;
  overflow-y: auto;
}

.modal-body-right .right-items dl {
  margin: 0;
  display: block;
  border: none !important;
}

.modal-body-right .right-items dl dt, .modal-body-right .right-items dl dd {
  width: 100%;
  border: none;
  margin: 0;
  padding: 0;
  text-align: left;
}

.modal-body-right .right-items dl dt span, .modal-body-right .right-items dl dd span {
  margin-bottom: 0;
}

.modal-body-right .select-item {
  margin-bottom: .5rem;
}

.modal-body-right .select-item:hover {
  color: var(--main-color);
  box-shadow: 0 0 5px #999;
}

.modal-body-right .select-item input[type="checkbox"] {
  display: none;
}

.modal-body-right .select-item span {
  position: relative;
  vertical-align: middle;
}

.modal-body-right .select-item span:before {
  content: "\f046";
  color: #ccc;
  font-family: FontAwesome;
  margin-right: 5px;
  font-size: 2rem;
}

.modal-body-right .select-item.is-checked {
  background: var(--main-color);
  color: #fff;
}

.modal-body-right .select-item.is-checked span:before {
  color: #fff;
}

.item-parent {
  position: relative;
}

.item-parent .item-parent-controls {
  position: absolute;
  z-index: 100;
  right: 0;
  top: 0;
  height: 100%;
  width: 60px;
  border-left: 1px dotted var(--border-color);
  cursor: pointer;
  color: var(--main-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.item-parent .item-parent-controls:before {
  content: "\f107";
  font-family: FontAwesome;
  font-size: 2rem;
}

.item-parent .item-parent-controls:hover {
  background: var(--sub-color-dark);
  color: #fff;
}

.is-checked + .item-parent-controls:before {
  color: #fff;
}

.is-opend + .item-parent-controls:before {
  content: "\f106";
}

.select-item-parent {
  font-size: 1.6rem;
}

.wrap-item-children ul {
  margin: 0;
}

.modal-footer-submit {
  display: table-cell;
  vertical-align: middle;
  margin: 0;
}

.modal-default-button {
  float: right;
}

.modal-enter {
  opacity: 0;
}

.modal-leave-active {
  opacity: 0;
}

.modal-enter .modal-container,
.modal-leave-active .modal-container {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
      transform: scale(1.1);
}

.modal-close {
  position: absolute;
  top: -36px;
  right: 0;
}

.modal-close button {
  color: #fff;
  font-size: 2rem;
}

.modal-close button i {
  margin-left: 5px;
}

._selectArea {
  background: #fff;
}

._selectArea dl {
  margin: 0;
}

._selectArea dl dt, ._selectArea dl dd {
  margin: 0;
}

._selectArea ._add a, ._selectArea ._option a {
  border-radius: 4px;
  display: inline-block;
  padding: 0.5rem 1rem;
}

._selectArea ._add a:hover, ._selectArea ._option a:hover {
  text-decoration: none;
}

._selectArea ._add a {
  border: 1px solid var(--border-color);
  color: #999;
  background: #fff;
  background: white;
  background: -webkit-linear-gradient(top, white 0%, #eeeeee 100%);
  background: linear-gradient(to bottom, white 0%, #eeeeee 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

._selectArea ._add a:hover {
  color: var(--text-color);
  border-color: #999;
}

._selectArea ._option a {
  background: var(--background-color-light);
  color: var(--text-color);
}

._selectArea ._option a:hover {
  background: #ccc;
}

._selectArea ._option a:after {
  content: "\f057";
  font-family: FontAwesome;
  color: #999;
  margin-left: 0.5rem;
}

._selectArea ._select a {
  border-radius: 4px;
  border: 1px solid var(--border-color);
  padding: 0.5rem 1rem;
  color: var(--text-color);
  display: inline-block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

._selectArea ._select a:hover {
  text-decoration: none;
  border: 1px solid var(--main-color);
  color: var(--main-color);
}

._selectArea ._select a.active {
  background: var(--main-color);
  color: #fff;
}

._selectArea ._popup > button {
  border-radius: 4px;
  display: inline-block;
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-color);
  color: #999;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica", "Arial", sans-serif;
  background: #fff;
  background: white;
  background: -webkit-linear-gradient(top, white 0%, #eeeeee 100%);
  background: linear-gradient(to bottom, white 0%, #eeeeee 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

._selectArea ._popup > button:hover {
  text-decoration: none;
  color: var(--text-color);
  border-color: #999;
}

._selectArea input[type="text"] {
  width: 100%;
  padding: 0.5rem 1rem;
  border: 1px solid var(--background-color-light);
}

.select-item {
  padding: 1rem 2rem;
  display: block;
  width: 100%;
  background: #fff;
  cursor: pointer;
}

.sitemap h2 {
  font-size: 1.8rem;
}

@media (max-width: 900px) {
  .sitemap a {
    display: block;
  }
}

.sitemap > ul {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.sitemap > ul li {
  list-style: none;
}

@media (max-width: 700px) {
  .sitemap > ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.sitemap > ul > li {
  width: 25%;
  padding: 0 1rem 2rem;
  font-size: 1.6rem;
}

@media (max-width: 900px) {
  .sitemap > ul > li {
    width: 50%;
  }
}

@media (max-width: 700px) {
  .sitemap > ul > li {
    width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    border-radius: 4px;
    background: var(--main-color-translucent);
  }
}

.sitemap > ul > li > a:before {
  content: "\f105\00a0";
  font-family: FontAwesome;
}

@media (max-width: 700px) {
  .sitemap > ul > li > a {
    padding: 1rem;
  }
}

.sitemap > ul > li ul {
  margin-top: .5rem;
  padding-left: 1rem;
  font-size: 1.4rem;
}

@media (max-width: 700px) {
  .sitemap > ul > li ul {
    margin: 0 auto 1rem;
    width: calc(100% - 2rem);
    padding: 0;
  }
  .sitemap > ul > li ul li {
    border-radius: 4px;
    background: var(--main-color-translucent);
  }
  .sitemap > ul > li ul li + li {
    margin-top: 0.25rem;
  }
  .sitemap > ul > li ul a {
    padding: .5rem;
  }
}




.sitemap2 h2 {
  font-size: 1.8rem;
}

@media (max-width: 900px) {
  .sitemap2 a {
    display: block;
  }
}

.sitemap2 > ul {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;

}

.sitemap2 > ul li {
  list-style: none;
}

@media (max-width: 700px) {
  .sitemap2 > ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.sitemap2 > ul > li {
  width: 100%;
  padding: 0.5em;
  font-size: 1.6rem;
  margin-bottom: 1rem;
  border-radius: 4px;
  background: var(--main-color-translucent);
}

@media (max-width: 900px) {
  .sitemap2 > ul > li {
    width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    border-radius: 4px;
    background: var(--main-color-translucent);
  }
}

@media (max-width: 700px) {
  .sitemap2 > ul > li {
    width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    border-radius: 4px;
    background: var(--main-color-translucent);
  }
}

.sitemap2 > ul > li > a:before {
  content: "\f105\00a0";
  font-family: FontAwesome;
  padding: 1rem;
}

@media (max-width: 700px) {
  .sitemap2 > ul > li > a {
    padding: 1rem;
  }
}

.sitemap2 > ul > li ul {
  margin-top: .5rem;
  padding-left: 1rem;
  font-size: 1.4rem;
  margin: 0 auto 1rem;
  width: calc(100% - 2rem);
  padding: 0;
}


  .sitemap2 > ul > li ul {
    margin: 0.25rem auto 0.25rem;
    width: calc(100% - 2rem);
    padding: 0.25rem;
  }
  .sitemap2 > ul > li ul li {
    border-radius: 4px;
    padding: 0.5em;
    background: var(--main-color-translucent);
  }
  .sitemap2 > ul > li ul li + li {
    margin-top: 0.25rem;
  }
  .sitemap2 > ul > li ul a {
    padding: .5rem;
  }


.slideContents-list a:hover {
  text-decoration: none;
}

.slideContents-list ul {
  margin: 0;
  background: none;
}

.slideContents-list ul ._first {
  border-top: 2px solid var(--main-color);
  margin-bottom: 1rem;
}

.slideContents-list ul ._first a.pull-first {
  display: block;
  padding: 1rem;
  position: relative;
}

.slideContents-list ul ._first ul {
  display: none;
}

.slideContents-list ul ._second .select-item-parent {
  position: relative;
  height: 65px;
}

.slideContents-list ul ._second .select-item-parent .item-parent-controls {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 50px;
  text-align: center;
  line-height: 50px;
  background: rgba(177, 221, 255, 0.2);
}

.slideContents-list ul ._second .select-item-parent .item-parent-controls a {
  display: block;
  width: 100%;
  height: 100%;
}

.slideContents-list ul ._second .select-item-parent .item-parent-controls .is-closed:before {
  content: "＋";
}

.slideContents-list ul ._second .select-item-parent .item-parent-controls .is-opend:before {
  content: "－";
}

.slideContents-list a.pull-first {
  background: var(--background-color-light);
  font-weight: bold;
}

.slideContents-list a.pull-first:after {
  position: absolute;
  right: 0;
  top: 50%;
  width: 50px;
  text-align: center;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  content: "\f107";
  font-family: FontAwesome;
}

.slideContents-list .selected:after {
  content: "\f106" !important;
}

.slideContents-list .select-item-parent {
  background: #f9f9f9;
}

.slideContents-list .select-item {
  border-top: 1px solid var(--border-color);
  padding: 1rem;
}

.slideContents-list .select-item input {
  margin-right: 10px;
}

.slideContents-list .select-item-children {
  color: var(--text-color);
  padding-left: 2rem;
  font-size: 1.4rem;
}

.slideContents-list ul ._first ul {
  display: block;
}

.slideContents {
  position: fixed;
  left: 100%;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  overflow: hidden;
  background: #fff;
  -webkit-transition: all 300ms 0s ease;
  transition: all 300ms 0s ease;
}

.slideContents .slideContents-inner {
  width: 100%;
  height: 100%;
  min-height: 100%;
  position: relative;
}

.slideContents .slideContents-inner .slideContents-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 65px;
  line-height: 65px;
  background: var(--main-color);
  color: #fff;
}

.slideContents .slideContents-inner .slideContents-header:after {
  clear: both;
  content: "";
  display: block;
}

.slideContents .slideContents-inner .slideContents-header .slideContents-header-close {
  float: left;
  /*width: 20%;*/
  padding-left: 1rem;
}

.slideContents .slideContents-inner .slideContents-header .slideContents-header-close a {
  display: block;
  color: #fff;
}

.slideContents .slideContents-inner .slideContents-header .slideContents-header-title {
  float: left;
  width: 60%;
  text-align: center;
  font-size: 1.8rem;
}

.slideContents .slideContents-inner .slideContents-body {
  position: absolute;
  top: 65px;
  left: 0;
  width: 100%;
  height: calc(100% - 130px);
  overflow-y: scroll;
  background: #ccc;
  padding: 1rem;
}

.slideContents .slideContents-inner .slideContents-footer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 65px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.slideContents ul {
  padding: 0;
}

.slideContents ul li {
  list-style: none;
  padding-left: 0;
}

.slideContents.slide-show {
  left: 0px;
  -webkit-transition-timing-function: ease-in;
  transition-timing-function: ease-in;
}

._slideToggle {
  text-align: center;
}

._slideToggle a {
  padding: 1rem 0;
  display: block;
  font-weight: bold;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

._slideToggle a:after {
  font-weight: normal;
  font-family: FontAwesome;
  margin-left: 1rem;
}

._slideToggle a:hover {
  text-decoration: none;
}

._slideToggle a.close:before {
  content: "Close";
}

._slideToggle a.close:after {
  content: "\f139";
}

._slideToggle a.open:before {
  content: "Open";
}

._slideToggle a.open:after {
  content: "\f13a";
}

.step-flow ul {
  margin: 0;
  padding: 0;
}

.step-flow ul li {
  list-style: none;
}

.step-flow ul li {
  border: 1px solid var(--border-color);
  background: #fff;
  border-radius: 4px;
  padding: 1rem;
  height: 4em;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
}

.step-flow ul li ._number {
  color: var(--main-color);
  margin-right: 1rem;
  font-size: 1.6rem;
}

@media (max-width: 900px) {
  .step-flow ul li:last-child {
    margin-bottom: 0;
  }
}

@media (max-width: 900px) {
  .step-flow:last-child {
    padding-top: 0;
  }
}

.timeline {
  list-style: none;
  padding-left: 0;
}

.timeline > li {
  margin-bottom: 4rem;
}

.timeline h3:before, .timeline h3:after {
  display: none;
}

.timeline .timeline-date {
  color: var(--main-color);
}

@media (max-width: 700px) {
  .timeline .timeline-content {
    padding-left: 2rem;
  }
  .timeline .timeline-content p {
    padding-left: 2rem;
  }
}

@media (min-width: 700px) {
  .timeline {
    padding-left: 2rem;
  }
  .timeline > li {
    overflow: hidden;
    margin: 0;
    position: relative;
  }
  .timeline .timeline-date {
    width: 110px;
    float: left;
    margin-top: 20px;
  }
  .timeline .timeline-content {
    width: calc(100% - 110px);
    float: left;
    border-left: 3px solid var(--border-color);
    padding-left: 30px;
  }
  .timeline .timeline-content h4 {
    margin-top: 2rem;
    margin-bottom: 0;
  }
  .timeline .timeline-content:before {
    content: '';
    width: 13px;
    height: 13px;
    background: var(--main-color);
    position: absolute;
    left: 105px;
    top: 24px;
    border-radius: 100%;
  }
}

.toggleHeaderNavigation {
  padding-right: 50px;
}

@media (min-width: 1100px) {
  .toggleHeaderNavigation {
    display: none;
  }
}

@media (max-width: 700px) {
  .toggleHeaderNavigation {
    padding-right: 40px;
  }
}

.toggleHeaderNavigation .menu-trigger,
.toggleHeaderNavigation .menu-trigger span {
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s;
  box-sizing: border-box;
}

.toggleHeaderNavigation .menu-trigger {
  position: relative;
  top: 50%;
  right: 1rem;
  width: 34px;
  height: 27px;
  position: absolute;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
}

@media (max-width: 700px) {
  .toggleHeaderNavigation .menu-trigger {
    width: 30px;
  }
}

.toggleHeaderNavigation .menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: var(--main-color);
}

.toggleHeaderNavigation .menu-trigger span:nth-of-type(1) {
  top: 0;
}

.toggleHeaderNavigation .menu-trigger span:nth-of-type(2) {
  top: 8px;
}

.toggleHeaderNavigation .menu-trigger span:nth-of-type(3) {
  top: 16px;
}

.toggleHeaderNavigation .menu-trigger:after {
  position: absolute;
  content: 'menu';
  bottom: -1rem;
  font-size: 1.2rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #999;
  white-space: nowrap;
}

html:lang(ja) .toggleHeaderNavigation .menu-trigger:after, html:lang(ja-JP) .toggleHeaderNavigation .menu-trigger:after {
  bottom: -1.3rem;
  letter-spacing: -0.1em;
  content: 'メニュー';
}

.toggleHeaderNavigation .menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(8px) rotate(-44deg);
  -ms-transform: translateY(8px) rotate(-44deg);
      transform: translateY(8px) rotate(-44deg);
}

.toggleHeaderNavigation .menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.toggleHeaderNavigation .menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(44deg);
  -ms-transform: translateY(-8px) rotate(44deg);
      transform: translateY(-8px) rotate(44deg);
}

.toggleHeaderNavigation .menu-trigger.active:after {
  content: 'close';
}

html:lang(ja) .toggleHeaderNavigation .menu-trigger.active:after, html:lang(ja-JP) .toggleHeaderNavigation .menu-trigger.active:after {
  content: '閉じる';
}

.toPageTop {
  display: none;
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  line-height: 1;
  z-index: 100;
}

.toPageTop a {
  opacity: 0.8;
  background: var(--sub-color-dark);
  color: #fff;
  font-size: 3rem;
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  text-decoration: none;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  position: relative;
  box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.3);
}

.toPageTop a:after {
  content: "\f106";
  font-family: FontAwesome;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -60%);
      -ms-transform: translate(-50%, -60%);
          transform: translate(-50%, -60%);
}

@media (max-width: 700px) {
  .toPageTop a {
    font-size: 4rem;
    width: 50px;
    height: 50px;
    border-radius: 25px;
  }
  .toPageTop a:after {
    -webkit-transform: translate(-50%, -55%);
        -ms-transform: translate(-50%, -55%);
            transform: translate(-50%, -55%);
  }
}

.toPageTop a:hover {
  opacity: 1;
}

@media (min-width: 901px) {
  .top-ir {
    pointer-events: none;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 33.3333%;
    height: auto;
  }
}

@media (max-width: 1099px) {
  .top-ir {
    bottom: 0;
    right: 0;
    height: 100%;
    width: 33.33%;
  }
  .top-ir:before {
    display: none;
  }
}

@media (max-width: 900px) {
  .top-ir {
    width: 100%;
  }
}

@media (max-width: 700px) {
  .top-ir {
    margin-top: 2rem;
  }
}

.top-ir dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  pointer-events: auto;
  width: 100%;
  margin: 0;
  padding: 2rem;
  background: rgba(0, 70, 126, 0.8);
  color: #fff;
}

@media (min-width: 1100px) {
  .top-ir dl {
    -webkit-justify-content: space-between;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (max-width: 1099px) {
  .top-ir dl {
    -webkit-justify-content: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (min-width: 901px) {
  .top-ir dl {
    -webkit-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    z-index: 2;
    position: relative;
  }
}

@media (max-width: 1099px) {
  .top-ir dl {
    padding: 2rem;
    height: 100%;
  }
}

@media (max-width: 700px) {
  .top-ir dl {
    padding: 1.5rem 2rem 2rem;
  }
}

.top-ir dl dt {
  font-weight: 600;
  font-size: 2.4rem;
  z-index: 1;
}

@media (max-width: 700px) {
  .top-ir dl dt.enItalic {
    padding-bottom: 1rem;
  }
}

.top-ir dl dd {
  margin: 1.2rem 0 0;
  z-index: 1;
}

@media (max-width: 1099px) {
  .top-ir dl dd {
    margin: 1rem 0 0;
  }
}

.top-ir dl dd a {
  color: #fff;
  text-decoration: none;
}

.top-ir dl dd a:hover {
  text-decoration: underline;
}

.top-ir dl dd:last-child {
  text-align: center;
  color: var(--text-color);
  display: block;
}

.top-ir dl ._item time {
  opacity: 0.6;
}

.top-ir dl ._item ._category {
  border: 1px solid #fff;
  opacity: 0.5;
  padding: 0 1rem;
  margin-left: 1rem;
  font-size: 1.4rem;
}

@media all and (-ms-high-contrast: none) {
  .top-ir dl ._item ._category {
    padding-top: 0.1rem;
  }
}

.top-ir dl ._item ._title {
  margin: 0.5rem 0;
}

@media (max-width: 900px) {
  .top-ir dl ._item {
    padding-right: 2rem;
  }
}

@media (max-width: 700px) {
  .top-ir dl ._item {
    padding-right: 0;
  }
}

.top-ir dl ._item [class^="icon-"]:before,
.top-ir dl ._item [class*=" icon-"]:before,
.top-ir dl ._item [class^="icon-"]:after,
.top-ir dl ._item [class*=" icon-"]:after {
  color: #fff;
}

.top-ir dl ._btn a {
  display: block;
  color: var(--main-color);
  background: #fff;
  padding: .8rem;
  border: none;
  border-radius: 6px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.top-ir dl ._btn a:hover {
  text-decoration: none;
  color: #fff;
  background: var(--main-color);
}

@media all and (-ms-high-contrast: none) {
  .top-ir dl ._btn a {
    padding-top: 1rem;
  }
}

.top-ir dl ._btn a + a {
  margin-top: 1rem;
}

.top-ir dl ._btn [class^="btn-"], .top-ir dl ._btn [class*=" btn-"] {
  margin-left: 0;
  margin-right: 0;
}

@media (max-width: 900px) {
  .top-ir dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    background: var(--sub-color-dark);
  }
  .top-ir dl dt {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    text-align: center;
    padding-bottom: 2rem;
  }
  .top-ir dl dd {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}

@media (max-width: 700px) {
  .top-ir dl dd {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  .top-ir dl dd:last-child {
    padding-left: 0;
  }
}

.topMainslider {
  width: 100%;
  opacity: 0;
  position: relative;
}

@media (min-width: 1100px) {
  .topMainslider {
    width: 1080px !important;
    margin: 0 auto 4rem;
  }
}

.slick {
  width: 100%;
}

.slick .slick-list {
  position: relative;
}

.slick .slick-list:before {
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  content: "";
  background: rgba(255, 255, 255, 0.7);
}

.slick .slick-list:after {
  position: absolute;
  right: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  content: "";
  background: rgba(255, 255, 255, 0.7);
}

@media (min-width: 700px) {
  .slick .item {
    position: relative;
  }
}

.slick .item ._content {
  opacity: 0;
  font-weight: 600;
  -webkit-transition: all .8s;
  transition: all .8s;
}

@media (min-width: 700px) {
  .slick .item ._content {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    color: #fff;
    width: 100%;
    font-size: 3rem;
    line-height: 1.3em;
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(125, 185, 232, 0) 0%, #040c1a 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(125, 185, 232, 0) 0%, #040c1a 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007db9e8', endColorstr='#040c1a',GradientType=0 );
    /* IE6-9 */
    padding: 6rem 35% 3rem 3rem;
  }
}

.slick .item ._content p {
  margin: 0;
}

@media all and (-ms-high-contrast: none) {
  .slick .item ._content p {
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica", "Arial", sans-serif;
  }
}

.slick .item ._content p span {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 1.3em;
  display: block;
  font-weight: normal;
}

@media (min-width: 1100px) {
  .slick .item ._content {
    padding-right: 38%;
  }
}

@media (max-width: 900px) {
  .slick .item ._content {
    padding-right: 3rem;
    font-size: 2.4rem;
  }
  .slick .item ._content span {
    font-size: 1.2rem;
  }
}

@media (max-width: 700px) {
  .slick .item ._content {
    padding-right: 0;
    line-height: 1.3em;
    font-size: 1.8rem;
    margin: 1rem 1rem 0.5rem;
  }
  .slick .item ._content span {
    font-size: 1.0rem;
    color: #999;
    margin-top: 0;
  }
}

.slick .item ._background img {
  width: 100%;
  height: auto;
}

.slick .slick-active ._content {
  opacity: 1;
}

.slick .slick-dots li button:before {
  color: #999;
}

.topMessage:after {
  clear: both;
  content: "";
  display: block;
}

.topMessage ._main {
  text-align: center;
  font-weight: bold;
  font-size: 3.6rem;
  margin: 1rem 0 2rem;
}

@media (max-width: 700px) {
  .topMessage ._main {
    font-size: 2.8rem;
  }
}

.topMessage ._main span {
  font-size: 2.4rem;
  display: block;
}

@media (max-width: 700px) {
  .topMessage ._main span {
    font-size: 1.8rem;
  }
}

.topMessage ._sub {
  text-align: center;
}

@media (min-width: 901px) {
  .topMessage ._sub {
    margin-bottom: 3rem;
  }
}

[v-cloak] {
  display: none;
}

.videoBanner {
  width: 100%;
  min-height: 200px;
}

@media (max-width: 900px) {
  .videoBanner {
    min-height: 180px;
  }
}

@media (max-width: 700px) {
  .videoBanner {
    min-height: 160px;
  }
}

.videoBanner a {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  min-height: 200px;
  height: auto;
}

@media (max-width: 900px) {
  .videoBanner a {
    min-height: 180px;
  }
}

@media (max-width: 700px) {
  .videoBanner a {
    min-height: 160px;
  }
}

.videoBanner a .videoBannerTxt {
  position: absolute;
  z-index: 10;
  color: #fff;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 1.2rem 2rem;
  display: table;
  vertical-align: middle;
  -webkit-transition: all .5s;
  transition: all .5s;
  background: rgba(0, 0, 0, 0.7);
}

.videoBanner a .videoBannerTxt ._entitle {
  color: #fff;
  font-family: 'arial';
  font-style: italic;
  font-size: 2.4rem;
  font-weight: bold;
  display: table-cell;
}

@media (max-width: 700px) {
  .videoBanner a .videoBannerTxt ._entitle {
    display: block;
    text-align: center;
    margin: 0;
  }
}

.videoBanner a .videoBannerTxt ._jatitle {
  text-align: right;
  margin: 0;
  vertical-align: middle;
  display: table-cell;
}

.videoBanner a .videoBannerTxt ._jatitle:after {
  content: "\f105";
  font-family: FontAwesome;
  margin-left: 1rem;
}

@media (max-width: 700px) {
  .videoBanner a .videoBannerTxt ._jatitle {
    display: block;
    text-align: center;
  }
}

.videoBanner a video {
  position: absolute;
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%, -40%);
  -ms-transform: translate(-50%, -40%);
      transform: translate(-50%, -40%);
  z-index: 1;
  min-height: 100%;
  width: auto;
}

@media (max-width: 900px) {
  .videoBanner a video {
    display: none !important;
  }
}

.videoBanner a #video2, .videoBanner a #video3 {
  display: none;
}

@media (max-width: 900px) {
  .videoBanner a #video2, .videoBanner a #video3 {
    display: none !important;
  }
}

.videoBanner a .overlay {
  background: rgba(0, 42, 75, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.videoBanner a:hover .overlay {
  opacity: 0.4;
}

.videoBanner a:hover .videoBannerTxt {
  bottom: -1rem;
  background: rgba(0, 0, 0, 0.1);
}

.videoBanner a .btn-ghost {
  margin-top: 2rem;
}

@media (max-width: 700px) {
  .videoBanner a .btn-ghost {
    display: none;
  }
}

@media (max-width: 900px) {
  .videoBanner .global {
    background: url("../images/bg_bnr_global.jpg") center center no-repeat;
    background-size: cover;
  }
}

@media (max-width: 900px) {
  .videoBanner .service {
    background: url("../images/bg_bnr_service.jpg") center center no-repeat;
    background-size: cover;
    margin-top: 0.5rem;
  }
}

article.l-article form {
  margin-top: 3rem;
}

article.l-article form fieldset {
  margin-top: 2rem;
}

@media (min-width: 1100px) {
  article.l-article form fieldset {
    width: 1080px;
    margin: 2rem auto 0;
  }
}

article.l-article form fieldset .col-md-12 {
  float: none;
}

article.l-article form fieldset legend {
  color: #fff;
  display: inline-block;
  background: #ccc;
  border-radius: 4px;
  padding: .2rem 1rem;
  font-size: 1.2rem;
}

article.l-article form .form-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.2rem 0;
  border-bottom: 1px solid var(--background-color-light);
}

article.l-article form .form-group .control-label {
  width: 20%;
}

@media (max-width: 700px) {
  article.l-article form .form-group .control-label {
    width: 100%;
    margin-bottom: 1rem;
    font-weight: bold;
  }
}

article.l-article form .form-group .form-control {
  width: 60%;
}

@media (max-width: 900px) {
  article.l-article form .form-group .form-control {
    width: 80%;
  }
}

@media (max-width: 700px) {
  article.l-article form .form-group .form-control {
    width: 100%;
    margin-bottom: .5rem;
  }
}

article.l-article form .form-group .help-block {
  padding-left: 20%;
  width: 100%;
  color: #999;
}

@media (max-width: 700px) {
  article.l-article form .form-group .help-block {
    width: 100%;
    padding-left: 0;
  }
}

article.l-article form .form-group textarea.form-control {
  width: 80%;
  height: 100px;
}

@media (max-width: 700px) {
  article.l-article form .form-group textarea.form-control {
    width: 100%;
  }
}

article.l-article form .form-group textarea.form-control + .help-block {
  padding-left: 20%;
  width: 100%;
}

@media (max-width: 700px) {
  article.l-article form .form-group textarea.form-control + .help-block {
    width: 100%;
    padding-left: 0;
  }
}

article.l-article form .form-group textarea.form-control + .help-block + .help-block {
  margin-left: 0;
  padding-left: 20%;
  width: 100%;
}

@media (max-width: 700px) {
  article.l-article form .form-group textarea.form-control + .help-block + .help-block {
    padding-left: 0;
  }
}

article.l-article form .required-field .control-label:after, article.l-article form .required-field .checkbox label:after {
  display: inline-block;
  content: "必須";
  color: #f44336;
  font-size: 1.2rem;
  border: 1px solid #f44336;
  padding: 0 0.5rem;
  margin-left: 1rem;
}

article.l-article form .required-field .control-label:after:lang(en), article.l-article form .required-field .checkbox label:after:lang(en) {
  content: "*";
  border: 0;
}

article.l-article form .checkbox {
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 1rem;
}

@media (max-width: 700px) {
  article.l-article form .checkbox label {
    width: 100%;
    display: block;
  }
}

article.l-article form .checkbox + .help-block, article.l-article form .checkbox + .help-block + .help-block {
  width: 100%;
  text-align: center;
  margin-left: 0;
  padding-left: 0;
}

article.l-article form .form-submit-border {
  text-align: center;
}

article.l-article form .form-submit-border .btn-default {
  cursor: pointer;
  padding: 1rem 4rem;
  font-size: 1.8rem;
  background: var(--main-color);
  color: #fff;
  border: none;
}

article.l-article form .form-submit-border .btn-default:hover {
  background: var(--main-color);
}

article.l-article form .input-validation-error {
  border: 1px solid #f44336;
}

article.l-article form .validation-summary-valid li {
  margin: 0 auto;
  padding-top: 1rem;
  padding-bottom: 1rem;
  color: #f44336;
  background: rgba(244, 67, 54, 0.1);
}

@media (min-width: 1100px) {
  article.l-article form .validation-summary-valid li {
    width: 1080px;
  }
}

article.l-article form .validation-summary-errors {
  border: 1px solid #f44336;
  background: rgba(244, 67, 54, 0.1);
  font-weight: bold;
}

@media (min-width: 1100px) {
  article.l-article form .validation-summary-errors {
    width: 1080px;
    margin: 0 auto;
  }
}

@media (max-width: 1099px) {
  article.l-article form .validation-summary-errors {
    width: 100%;
  }
}

article.l-article form span.field-validation-error {
  color: #f44336 !important;
}

html:lang(en) article.l-article form .required-field .control-label:after, html:lang(en) article.l-article form .required-field .checkbox label:after {
  content: "*";
  border: 0;
  font-size: 1.6rem;
}

.ping1.boxframe {
    top: 95px;
    left: 98px;
}
.ping1 {
    height: 56px;
}
.ping1 .borderbox2-1 {
    width: 10px;
}
.ping1 .borderbox2-2_1 {
    height: 50%;
}
.ping1 .borderbox2-2_2 {
    height: 82px;
}
.ping1 .borderbox3_upper {
    height: 100px;
}


.ping2.boxframe {
    top: 160px;
    left: 22px;
}
.ping2 {
    height: 112px;
}
.ping2 .namebox {
    width: 341px;
}
.ping2 .namebox1 {
    width: 341px;
}
.ping2 .borderbox2-1 {
    width: 60px;
}
.ping2 .borderbox2-2_1 {
    height: 50%;
}
.ping2 .borderbox2-2_2 {
    height: 50px;
}
.ping2 .borderbox3_upper {
    height: 96px;
}


.ping3.boxframe {
    top: 280px;
    left: 36px;
}
.ping3 {
    height: 75px;
}
.ping3 .namebox {
    width: 177px;
}
.ping3 .namebox1 {
    width: 177px;
}
.ping3 .borderbox2-1 {
    width: 20px;
}
.ping3 .borderbox2-2 {
    position: relative;
    top: -20px;
    height: 78px;
}
.ping3 .borderbox2-2_1 {
    height: 24px;
}
.ping3 .borderbox2-2_2 {
    height: calc(50% - 5px);
}
.ping3 .borderbox3_upper {
    height: 0px;
}
.ping3 .borderbox3_ping {
    top: -6px;
}


.ping4.boxframe {
    top: 360px;
    left: 236px;
}
.ping4 {
    height: 38px;
}
.ping4 .borderbox2-1 {
    width: 10px;
}
.ping4 .borderbox2-2 {
    position: relative;
    top: -20px;
    height: 78px;
}
.ping4 .borderbox2-2_HRS {
    position: relative;
    top: -20px;
    height: 59px;
}
.ping4 .borderbox2-2_1 {
    height: 0px;
}
.ping4 .borderbox2-2_2 {
    height: calc(50% - 0px);
}
.ping4 .borderbox3_upper {
    height: 0px;
}
.ping4 .borderbox3_ping {
    top: -30px;
}


.ping5.boxframe {
    top: 38px;
    left: 605px;
}
.ping5 {
    height: 20px;
}
.ping5 .borderbox2-1 {
    width: 5px;
}
.ping5 .borderbox2-2_1 {
    height: calc(50% - 1px);
}
.ping5 .borderbox2-2_2 {
    height: 0;
}
.ping5 .borderbox3_upper {
    height: 0px;
}


.ping6.boxframe {
    top: 120px;
    left: 600px;
}
.ping6 {
    height: 20px;
}
.ping6 .borderbox2-1 {
    width: 10px;
}
.ping6 .borderbox2-2_1 {
    height: calc(51% - 1px);
}
.ping6 .borderbox2-2_2 {
    height: 0;
}
.ping6 .borderbox3_upper {
    height: 9px;
}


.ping7.boxframe {
    top: 180px;
    left: 548px;
}
.ping7 {
    height: 20px;
}
.ping7 .borderbox2-1 {
    width: 62px;
}
.ping7 .borderbox2-2_1 {
    height: calc(50% - 1px);
}
.ping7 .borderbox2-2_2 {
    height: 0;
}
.ping7 .borderbox3_upper {
    height: 0;
}


.ping8.boxframe {
    top: 260px;
    left: 454px;
}
.ping8 {
    height: 20px;
}
.ping8 .borderbox2-1 {
    width: 136px;
}
.ping8 .borderbox2-2_1 {
    height: calc(50% - 1px);
}
.ping8 .borderbox2-2_2 {
    height: 0;
}
.ping8 .borderbox3_upper {
    height: 0;
}


.ping9.boxframe {
    top: 302px;
    left: 470px;
}
.ping9 {
    height: 20px;
}
.ping9 .borderbox2-1 {
    width: 120px;
}
.ping9 .borderbox2-2 {
    position: relative;
    top: -20px;
    height: 60px;
}
.ping9 .borderbox2-2_1 {
    height: 0px;
}
.ping9 .borderbox2-2_2 {
    height: calc(50% - 0px);
}
.ping9 .borderbox3_upper {
    height: 0px;
}
.ping9 .borderbox3_ping {
    top: -30px;
}


.ping10.boxframe {
    top: 336px;
    left: 462px;
}
.ping10 {
    height: 38px;
}
.ping10 .borderbox2-1 {
    width: 128px;
}
.ping10 .borderbox2-2_1 {
    height: calc(50% - 1px);
}
.ping10 .borderbox2-2_2 {
    height: 0;
}
.ping10 .borderbox3_upper {
    height: 9px;
}


.ping11.boxframe {
    top: 408px;
    left: 490px;
}
.ping11 {
    height: 20px;
}
.ping11 .borderbox2-1 {
    width: 100px;
}
.ping11 .borderbox2-2_1 {
    height: calc(50% - 1px);
}
.ping11 .borderbox2-2_2 {
    height: 0;
}
.ping11 .borderbox3_upper {
    height: 0;
}


.ping12.boxframe {
    top: 260px;
    left: 800px;
}
.ping12 {
    height: 40px;
}
.ping12 .borderbox2-1 {
    width: 10px;
}
.ping12 .borderbox2-2 {
    position: relative;
    top: -20px;
    height: 60px;
}
.ping12 .borderbox2-2_1 {
    height: 10px;
}
.ping12 .borderbox2-2_2 {
    height: calc(50% - 0px);
}
.ping12 .borderbox3_upper {
    height: 10px;
}
.ping12 .borderbox3_ping {
    top: -30px;
}

.ping_NA.boxframe {
    top: 195px;
    left: 62px;
}
.ping_NA {
    height: 38px;
}
.ping_NA .borderbox2-1 {
    width: 128px;
}
.ping_NA .borderbox2-2_1 {
    height: calc(50% - 1px);
}
.ping_NA .borderbox2-2_2 {
    height: 0;
}
.ping_NA .borderbox3_upper {
    height: 9px;
}


.ping13.boxframe {
    top: 214px;
    left: 536px;
}
.ping13 {
    height: 20px;
}
.ping13 .borderbox2-1 {
    width: 74px;
}
.ping13 .borderbox2-2 {
    position: relative;
    top: -20px;
    height: 60px;
}
.ping13 .borderbox2-2_1 {
    height: 0px;
}
.ping13 .borderbox2-2_2 {
    height: calc(50% - 0px);
}
.ping13 .borderbox3_upper {
    height: 0px;
}
.ping13 .borderbox3_ping {
    top: -30px;
}


.map_asia {
    position: relative;
    width: 1080px;
    height: 500px;
    background-image: url("/-/media/BREXA-Next/img/common/network/bg_asia.png");
}
.boxframe.pingright {
    position: absolute;
	display: flex;
}
.boxframe.pingleft {
    position: absolute;
    display: flex;
    flex-direction: row-reverse;
}
.namebox {
	height: 100%;
    max-width: 400px;
    background-color: rgba(0,0,0,0.5);
	flex-direction: column;
	display: inline-flex;
}
.namebox_VN {
    height: 70%;
    max-width: 400px;
    background-color: rgba(0,0,0,0.5);
    flex-direction: column;
    display: inline-flex;
}
.namebox_HRS {
    height: 52%;
    max-width: 400px;
    background-color: rgba(0,0,0,0.5);
    flex-direction: column;
    display: inline-flex;
}
.namebox_ORI {
    height: 185%;
    max-width: 400px;
    background-color: rgba(0,0,0,0.5);
    flex-direction: column;
    display: inline-flex;
}
.namebox_HO {
    height: 82%;
    max-width: 400px;
    background-color: rgba(0,0,0,0.5);
    flex-direction: column;
    display: inline-flex;
}
.namebox1 {
	height: 109px;
    max-width: 400px;
    background-color: rgba(0,0,0,0.5);
	flex-direction: column;
	display: inline-flex;
}
.namebox1_LIM {
    height: 93px;
    max-width: 400px;
    background-color: rgba(0,0,0,0.5);
    flex-direction: column;
    display: inline-flex;
}
.namebox a {
	font-size: 11px;
	line-height: 1.67;
    color: #fff;
}
.namebox_VN a {
    font-size: 11px;
    line-height: 1.67;
    color: #fff;
}
.namebox_HRS a {
    font-size: 11px;
    line-height: 1.67;
    color: #fff;
}
.namebox_ORI a {
    font-size: 11px;
    line-height: 1.67;
    color: #fff;
}
.namebox_HO a {
    font-size: 11px;
    line-height: 1.67;
    color: #fff;
}
.namebox1_LIM a {
	font-size: 11px;
	line-height: 1.67;
    color: #fff;
}
.namebox1 a {
    font-size: 11px;
    line-height: 1.67;
    color: #fff;
}
.pingright .namebox a {
    text-align: right;
}
.pingleft .namebox a {
    text-align: left;
}
.pingright .namebox1 a {
    text-align: right;
}
.pingleft .namebox1 a {
    text-align: left;
}
.borderbox1 {
	width: 10px;
	height: calc(100% - 2px);
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.borderbox1_VN {
    width: 10px;
    height: calc(100% - 22px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.borderbox1_HRS {
    width: 10px;
    height: calc(100% - 22px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.borderbox1_ORI {
    width: 10px;
    height: calc(100% - -30px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.borderbox1_HO {
    width: 10px;
    height: calc(100% - 20px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.borderbox1-1 {
	width: 10px;
	height: calc(120% - 2px);
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.borderbox1-1_LIM {
    width: 10px;
    height: calc(120% - 22px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.pingright .borderbox1 {
    border-right: 1px solid #fff;
}
.pingright .borderbox1_VN {
    border-right: 1px solid #fff;
}
.pingright .borderbox1_HRS {
    border-right: 1px solid #fff;
}
.pingright .borderbox1-1_LIM {
    border-right: 1px solid #fff;
}
.pingright .borderbox1_HO {
    border-right: 1px solid #fff;
}
.pingleft .borderbox1 {
    border-left: 1px solid #fff;
}
.pingleft .borderbox1_ORI {
    border-left: 1px solid #fff;
}
.pingright .borderbox1-1 {
    border-right: 1px solid #fff;
}
.pingleft .borderbox1-1 {
    border-left: 1px solid #fff;
}
.borderbox2-1 {
	height: 100%;
}
.borderbox2-1_upper {
	width: 100%;
	height: 50%;
	border-bottom: 1px solid #fff;
}
.borderbox2-1_upper_HRS {
    width: 100%;
    height: 25%;
    border-bottom: 1px solid #fff;
}
.borderbox2-1_lower {
	width: 100%;
	height: 50%;
}
.borderbox2-2 {
	width: 10px;
	height: 100%;
}
.borderbox2-2_1 {
	width: 100%;
}
.pingupper .borderbox2-2_2 {
	width: 100%;
	border-top: 1px solid #fff;
}
.pinglower .borderbox2-2_2 {
    width: 100%;
    border-bottom: 1px solid #fff;
}
.pingright .borderbox2-2_2 {
    border-left: 1px solid #fff;
}
.pingleft .borderbox2-2_2 {
    border-right: 1px solid #fff;
}
.borderbox2-2_3 {
	width: 100%;
}
.borderbox3 {
	width: 28px;
	height: 100%;
}
.borderbox3_upper {
	width: 100%;
}
.borderbox3_ping {
    position: relative;
	width: 100%;
	height: 28px;
    background-image: url("/-/media/BREXA-Next/img/common/network/ping.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    object-fit: contain;
}
.borderbox3_lower {
	width: 100%;
}

.map_oceania {
	position: relative;
	width: 1080px;
	height: 500px;
    background-image: url("/-/media/BREXA-Next/img/common/network/bg_oceania.png");
}
.ping14.boxframe {
    top: 214px;
    left: 232px;
}
.ping14 {
    height: 92px;
}
.ping14 .borderbox2-1 {
    width: 100px;
}
.ping14 .borderbox2-2 {
    position: relative;
    top: -20px;
    height: 78px;
}
.ping14 .borderbox2-2_1 {
    height: 27px;
}
.ping14 .borderbox2-2_2 {
    height: calc(50% - 0px);
}
.ping14 .borderbox3_upper {
    height: 0px;
}
.ping14 .borderbox3_ping {
    top: -4px;
}

.ping15.boxframe {
    top: 32px;
    left: 236px;
}
.ping15 {
    height: 92px;
}
.ping15 .borderbox2-1 {
    width: 100px;
}
.ping15 .borderbox2-2_1 {
    height: 50%;
}
.ping15 .borderbox2-2_2 {
    height: 82px;
}
.ping15 .borderbox3_upper {
    height: 118px;
}
.ping16.boxframe {
    top: 186px;
    left: 794px;
}
.ping16 {
    height: 22px;
}
.ping16 .borderbox2-1 {
    width: 10px;
}
.ping16 .borderbox2-2_1 {
    height: calc(50% - 1px);
}
.ping16 .borderbox2-2_2 {
    /*height: 82px;*/
}
.ping16 .borderbox3_upper {
    height: 0px;
}

/* 20191218 add PJ Fabric */
#point-tohoku-PJFabric {
    top: 60%;
    left: 49%;
}

.ping17.boxframe {
	top: 154px;
	left: 307px;
}
.ping17 {
    height: 36px;
}
.ping17 .borderbox2-1 {
    width: 24px;
}
.ping17 .borderbox2-2_1 {
    height: 50%;
}
.ping17 .borderbox2-2_2 {
    height: 15px;
}
.ping17 .borderbox3_upper {
    height: 22px;
}



.ping18.boxframe {
    top: 230px;
    left: 595px;
}
.ping18 {
    height: 20px;
}
.ping18 .borderbox2-1 {
    width: 15px;
}
.ping18 .borderbox2-2 {
    position: relative;
    top: -20px;
    height: 60px;
}
.ping18 .borderbox2-2_1 {
    height: 0px;
}
.ping18 .borderbox2-2_2 {
    height: calc(50% - 0px);
}
.ping18 .borderbox3_upper {
    height: 0px;
}
.ping18 .borderbox3_ping {
    top: -30px;
}

/*20200207 add ADVANTIS CREDIT LIMITED HUY*/
#pointGroup-europe-A3 {
	top: 56%;
    right:58.5%;
}


.fxb-titlecontainer {
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  width: 90%;
  max-width: 1024px;
  margin-top: 50px;
}







/*20201228 add Topページリンク用に追加*/
.top-link {
    text-align: center;
    font-size: 14px;
    line-height: 1.5;
}

 

.top-link .entry-info-list {
    padding-left: 0;
    list-style: none;
}

 

.top-link .entry-info-item {
    overflow-wrap: break-word;
    word-wrap: break-word;
}

 

.top-link a {
    display: block;
}

 

.top-link .entry-info-default {
    padding: 6px 8px;
    background: #ededed;
    text-decoration: underline;
    font-weight: 700;
}

 

.top-link .entry-info-item+.entry-info-item {
    margin-top: 8px;
}

 

.top-link .entry-info-default {
    font-size: 16px;
    transition: all 300ms 0s ease;
}

 

.top-link .entry-info-default:hover {
    background:var(--main-color);
    color: #fff;
}



/* Utilities */

.u-inline_block {
  display: inline-block !important;
}


/**
 * 2025/07 追加分
 */

/* ↑で :where(.l-main) で指定している reset対応のCSS */

#header__navi-lang ul li.close img {
  width: auto;
}

:where(#header__area) ul,
:where(#footer__area) ul {
  padding: 0;
}

/* business/service.html */
.c-3cols {
  display: flex;
  justify-content: space-between;
}

.c-3cols ul {
  list-style: '・';
}

.c-3cols ul li {
  margin: 0.3em 0;
}

.c-3cols ul li::marker {
  color: var(--main-color);
}

.c-3cols h3 {
  padding: 0;
  text-wrap: balance;
}

.c-3cols__item {
  width: 30%;
}

.c-3cols--a {
  margin-top: 3em;
}

.c-3cols--a .c-3cols__item {
  background: var(--background-color-light);
}

.c-3cols--a .c-3cols__title {
  margin: 0;
  padding: 0.5em;
  background: var(--main-color);
  text-align: center;
  color: #fff;
}

.c-3cols--a .c-3cols__title::before {
  content: '';
  display: block;
  width: 100%;
  height: 82px;
  background: url(/-/media/BREXA-Next/img/top/business/service/ico_hand.svg) no-repeat center center;
}

.c-3cols__item--a2 .c-3cols__title::before {
  background-image: url(/-/media/BREXA-Next/img/top/business/service/ico_human.svg);
}

.c-3cols__item--a3 .c-3cols__title::before {
  background-image: url(/-/media/BREXA-Next/img/top/business/service/ico_graph.svg);
}

.c-3cols--a .c-3cols__body {
  padding: 0.3em 0.5em 0.3em 1.5em;
}

.c-3cols--b .c-3cols__body {
  padding: 0;
  margin-top: 1.5em;
}

.c-3cols--b .c-3cols__title {
  color: var(--main-color);
  text-align: center;
}
.c-3cols--b .c-3cols__title::before {
  content: '';
  display: block;
  width: 100%;
  height: 113px;
  margin-bottom: 1em;
  background: url(/-/media/BREXA-Next/img/top/business/service/ico_human2.svg) no-repeat center center;
}

.c-3cols__item--b2 .c-3cols__title::before {
  background-image: url(/-/media/BREXA-Next/img/top/business/service/ico_car.svg);
}

.c-3cols__item--b3 .c-3cols__title::before {
  background-image: url(/-/media/BREXA-Next/img/top/business/service/ico_building.svg);
}


.c-3cols--c {
  background: #63696e;
  padding: 10px;
  margin-top: 3em;
  margin-bottom: 2em;
}
.c-3cols--c .c-3cols__item {
  margin: 10px;
  width: calc(100% / 3);
  background: #fff;
}
.c-3cols--c .c-3cols__title {
  color: var(--main-color);
  text-align: center;
}
.c-3cols--c .c-3cols__title::before {
  content: '';
  display: block;
  width: 100%;
  height: 50px;
  margin-bottom: 1em;
  background: url(/-/media/BREXA-Next/img/top/business/service/ico_humans3.svg) no-repeat center center;
}

.c-3cols__item--c2 .c-3cols__title::before {
  background-image: url(/-/media/BREXA-Next/img/top/business/service/ico_house.svg);
}

.c-3cols__item--c3 .c-3cols__title::before {
  background-image: url(/-/media/BREXA-Next/img/top/business/service/ico_handshake.svg);
}

.c-3cols--c .c-3cols__body {
  padding: 0.2em 0.5em;
}

.c-3cols__notes {
  font-size: 76%;
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (max-width: 768px) {
  .c-3cols {
    display: block;
  }

  .c-3cols .c-3cols__item {
    display: flex;
    align-items: stretch;
    width: auto;
    margin-bottom: 1.5em;
  }

  .c-3cols .c-3cols__title {
    display: flex;
    flex-flow: column;
    justify-content: center;
    min-width: 10em;
    text-wrap: balance;
  }
}

@media screen and (max-width: 480px) {
  .c-3cols .c-3cols__item {
    display: block;
    padding: 1px;
  }
  .c-3cols .c-3cols__body {
    margin: 1em 0;
  }
}



.c-companies {
  display: flex;
  justify-content: space-between;
}

.c-companies__item {
  width: 47%;
}

.c-companies__item ul {
  list-style: none;
  margin: 1em 0;
  padding: 0;
}

.c-companies__item ul li {
  margin: 1.2em 0;
}

.c-companies__name {
  margin: 0;
  padding: 0.2em 0 0.2em 1.5em;
  background: #f2f2f2;
  font-weight: bold;
}
.c-companies__desc {
  margin: 0;
  padding: 0.2em 0 0.2em 2.5em;
}

@media screen and (max-width: 768px) {
  .c-companies {
    display: block;
  }
  .c-companies__item {
    width: auto;
  }
}


.c-case_title small {
  display: inline-block;
  margin-left: 5em;
  font-size: 0.6em;
}

.u-right {
  display: block;
  text-align: right;
}

.p-service__copy {
  font-size: 2.0rem;
  text-align: center;
  word-break: auto-phrase;
  color: var(--main-color);
  font-weight: bold;
}

.p-service__new_grad {
  margin-top: 8em;
}

.p-service__new_grad__flow {
  margin: 100px auto 140px auto;
  max-width: 992px;
}

.p-service__merit {
  border: solid 3px var(--main-color);
  max-width: 960px;
  margin: 0 auto;
}

h3.p-service__merit__title {
  margin: 0;
  padding: 0.8em;
  background: var(--main-color);
  color: #fff;
  text-align: center;
}

.p-service__merit ul {
  list-style: none;
  padding: 2em 4em;
  margin: 0;
}

.p-service__merit li {
  border-bottom: solid 1px #63696e;
  padding-bottom: 1.0em;
  margin-bottom: 1.5em;
}

.p-service__merit li:last-child {
  border: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}

.p-service__merit__desc {
  font-size: 2.0rem;
  color: var(--main-color);
  font-weight: bold;
}

@media screen and (max-width: 768px) {

  .p-service__new_grad__flow {
    margin: 50px auto 70px auto;
  }

  .p-service__merit ul {
    padding-left: 1em;
    padding-right: 1em;
  }
}

.u-inline_block {
  display: inline-block !important;
}

.u-with_brackets::before {
  content: "【"
}
.u-with_brackets::after {
  content: "】"
}


.c-cookie_list {
  list-style: none;
  margin: 1em 0;
}

.c-cookie_list li {
  counter-increment: cnt;
  text-indent: -1.2em;
  padding-left: 1.2em;
  margin: 0.5em 0;
}

.c-cookie_list li::before {
  content: "("counter(cnt)")";
  display: inline-block;
  width: 1.2em;
}


.c-cookie_table caption {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .c-cookie_table__wrap {
    overflow-x: auto;
  }
  .c-cookie_table {
    min-width: 80em;
  }
}
