@charset "UTF-8";

article, aside, figcaption, figure,
header, main, nav, footer, section {
  display: block;
}

audio, canvas, video {
  display: inline-block;
}

a:hover{
	opacity:0.85;
    -webkit-transition:all .2s ease-out;
    -moz-transition:all .2s ease-out;
	transition:all .2s ease-out;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

/* basic */
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body, header, footer, section {
  margin: 0;
}

/* text */
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-weight: normal;
}

dl, dd, p {
  margin: 0;
}

ul, ol {
  margin: 0;
  padding: 0;
}

li {
  list-style-type: none;
}

b, strong {
  font-weight: bold;
}

/* code/pre */
code, pre {
  font-family: monospace, serif;
  font-size: 1em;
}

pre {
  white-space: pre-wrap;
}

/* sub/sup */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* visual */
img {
  border: 0;
  vertical-align: top;
}

img[usemap] {
  height: auto;
  max-width: 100%;
  width: auto;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

/* other */
hr {
  display: block;
  margin: 1em 0;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  box-sizing: content-box;
}

mark {
  background: #ff0;
  color: #000;
}

/* form */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

legend {
  border: 0;
  padding: 0;
}

button, input, select, textarea {
  /*font-family: inherit;*/
  font-size: 100%;
  margin: 0;
}

button, input {
  line-height: normal;
}

button, select {
  text-transform: none;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], html input[disabled] {
  cursor: default;
}

input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

/* table */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  text-align: left;
}

/* =============== variable =============== */
/* =============== extend =============== */
#site-header .inner, #site-footer .inner, .index-about .inner, .index-recruit .inner, .company-data, .philosophy-box, .solution-box, .recruit-box, .mod-head-l1-01, .mod-box-01 {
  margin-right: auto;
  margin-left: auto;
  width: 960px;
}

#container #site-header .inner{
 position: relative;
 width:100%;
 max-width:1020px;
 min-width:900px;
 z-index: 10;
}

.company-box, .recruit-box .content, .entry-box, .privacy-box {
  margin-right: auto;
  margin-left: auto;
  width: 780px;
}

#site-header #site-nav:after, #site-header .nav-menu ul:after, #site-footer .inner:after, #site-footer .contents-link .nav:after, .index-about .link ul:after, .index-about .group-modal > ul:after, .index-about .group-modal .modal:after, .index-about .group-modal .modal .right ul:after, .mod-title-block:after, .mod-step-bar:after {
  display: block;
  clear: both;
  content: "";
}

.recruit-box .entry a:hover,
.mod-form-button button[type="submit"]:hover,
.recruit-box .entry a:active, .mod-form-button button[type="submit"]:active {
  opacity: .5;
  transition: opacity 0.2s ease-in-out 0;
}

.company-box .map {
  text-decoration: none;
}

.company-box .map:hover,
.company-box .map:active {
  text-decoration: underline;
}

/* =============== base =============== */
body {
  color: #333;
  font-size: 1.1rem;
  font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  /*font-family: 'Hiragino Kaku Gothic Pro', Meiryo, sans-serif;*/
  line-height: 1.5em;
}

body * {
  box-sizing: border-box;
}

/* link color */
a {
  color: #333;
	text-decoration: none;
}

a:visited {
  color: #666;
}

a:hover {
  color: #593E95;
  text-decoration: none;
}

img {
  max-width: 100%;
}