@charset "UTF-8";

/*
Theme Name:   SYSKEN
Description:  
Author:       SHIN Inc.
Author URI:   http://www.shin-inc.jp/
Version:      1.0
Template:     archetype
*/

/* Font
--------------------------------*/

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: normal;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

/* Normalize
--------------------------------*/

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html,
body,
div,
header,
footer,
main,
article,
section,
aside,
nav,
figure,
figcaption {
  display: block;
  margin: 0;
  padding: 0;
}

html {
  line-height: 1.75;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  line-break: strict;
}

body {
  overflow-x: hidden;
  background: #fff;
  color: #333;
}

body.large {
  font-size: 1.125em;
}

a {
  color: inherit;
  transition: 0.3s;
}

a:before,
a:after {
  text-align: inherit;
  text-decoration: inherit;
}

abbr,
cite {
  font-style: inherit;
  text-decoration: inherit;
}

blockquote {
  margin: 1.5em 0;
  padding: 1em;
  border-style: solid;
  border-width: 1px 0;
}

del {
  opacity: 0.8;
}

em {
  font-style: inherit;
  font-weight: bolder;
}

img,
iframe {
  max-width: 100%;
  vertical-align: middle;
  border: 0;
}

img {
  height: auto;
}

svg,
video {
  vertical-align: bottom;
}

p {
  margin: 1em 0;
}

header p,
footer p {
  margin: 0;
}

pre {
  margin: 1em 0;
  font: inherit;
  white-space: pre-wrap;
}

ul {
  margin: 1em 0;
  padding-left: 1.5em;
}

ol {
  margin: 1em 0;
  padding-left: 2em;
}

nav ul,
nav ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

dl {
  margin: 1em 0;
}

dt {
  margin: 0;
  font-weight: 700;
}

dd {
  margin: 0 0 0 40px;
}

dd + dt {
  margin-top: 1em;
}

article,
section {
  margin: 60px auto;
}

article section,
section section {
  margin: 40px auto;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: center;
}

th,
td {
  vertical-align: middle;
  padding: 15px;
  border: solid #ccc;
  border-width: 1px 0;
}

th {
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}

button,
input,
textarea,
select {
  max-width: 100%;
  font: inherit;
  transition: 0.3s;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=url],
input[type=search],
input[type=number],
input[type=password],
textarea,
select {
  -webkit-appearance: none;
  appearance: none;
  padding: 4px;
  border: 1px solid #999;
  border-radius: 4px;
}

button,
input[type=submit],
input[type=button],
input[type=reset],
input[type=radio],
input[type=checkbox] {
  cursor: pointer;
}

input[disabled] {
  opacity: 0.3;
  cursor: default;
}

fieldset {
  margin: 20px 0;
  padding: 0;
  border: 0;
}

legend {
  width: 100%;
  margin: 0;
  padding: 4px 8px;
  background: #3fa9f5;
  color: #fff;
  font-weight: 700;
}

/* Heading
--------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  font-family: "FP-HiraKakuProN-W6", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-feature-settings: "palt", "liga" 0;
}

h2,
h3,
h4,
h5,
h6 {
  max-width: 800px;
  margin: 40px auto 20px;
}

h2 + section,
h3 + section,
h4 + section,
h5 + section,
h6 + section {
  margin-top: 30px;
}

h2,
h3,
h4 {
  margin-right: 3%;
  margin-left: 3%;
}

h2 {
  line-height: 1.4;
  margin-top: 60px;
  padding: 12px;
  border-left: 4px solid #005eae;
  background: #efefef;
  font-size: 1.125rem;
}

h3 {
  padding: 0 0 0 8px;
  border-left: 4px solid #005eae;
  font-size: 1.125rem;
}

h4 {
  padding: 0 4px 4px;
  border-bottom: 1px dashed #005eae;
  font-size: 1rem;
}

h5 {
  position: relative;
  padding: 0 3% 0 8%;
  padding-right: calc(3% + 1em);
  font-size: 1rem;
}

h5:before {
  position: absolute;
  top: 0.725em;
  top: calc(0.85em - 2px);
  left: 3%;
  width: 0.6em;
  height: 4px;
  background: #005eae;
  content: "";
}

h6 {
  padding: 0 3%;
  color: #003562;
  font-size: 1rem;
}

.image-heading {
  padding: 0;
  border: 0;
  text-align: left;
}

.image-heading:before,
.image-heading:after {
  content: none;
}

/* Remove Margin
--------------------------------*/

.entry-content > :first-child,
.paragraph:first-child,
p:first-child,
article:first-child,
section:first-child,
table ul:first-child,
table ol:first-child,
table dl:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-top: 0;
}

.entry-content > :last-child,
.business-text:last-child,
.paragraph:last-child,
p:last-child,
article:last-child,
section:last-child,
table ul:last-child,
table ol:last-child,
table dl:last-child {
  margin-bottom: 0;
}

/* Site Width
--------------------------------*/

.site {
  position: relative;
  margin: auto;
}

.content,
.navigation,
.no-posts,
.sales-offices,
.ir-category-archives,
.support-plans,
.pipe-points {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 3%;
  padding-left: 3%;
}

.content .content {
  padding-right: 0;
  padding-left: 0;
}

.office,
[role=tablist],
.page__title,
.archive__title,
.csr-list,
.breadcrumbs > ol,
.not-found,
.copyright,
.site-footer-content,
.site-header-content {
  max-width: 920px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 3%;
  padding-left: 3%;
}

/* Common
--------------------------------*/

.group:after,
.form-group:after,
.entry-content:after,
.site-content:after,
.site-footer-content:after,
.site-header-content:after,
.content:after {
  display: block;
  clear: both;
  content: "";
}

button,
input[type=submit],
input[type=button],
input[type=reset],
.btn,
.btn--officemap,
.btn--csr,
.btn--news,
.btn--office {
  display: inline-block;
  -webkit-appearance: none;
  appearance: none;
  max-width: 100%;
  line-height: 1.5;
  box-shadow: none;
  padding: 5px 15px;
  border: 1px solid;
  border-radius: 5px;
  background: #fff;
  color: #005eae;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
}

.image,
.graph,
.link,
.tagline {
  text-align: center;
}

.tagline {
  margin: 0 auto 20px;
  font-weight: 700;
}

.lede {
  margin: 20px auto;
}

.link {
  margin-top: 24px;
}

.paragraph {
  margin: 1em 0;
}

.paragraph > p {
  margin-top: 0;
  margin-bottom: 0;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  word-wrap: normal;
}

.break:before {
  white-space: pre;
  content: "\a";
}

a[href*=".jpg"],
a[href*=".jpeg"],
a[href*=".png"],
a[href*=".gif"] {
  display: inline-block;
  position: relative;
  color: #fff;
  text-decoration: none;
  cursor: zoom-in;
}

a[href*=".jpg"]:before,
a[href*=".jpeg"]:before,
a[href*=".png"]:before,
a[href*=".gif"]:before {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 6px;
  background: rgba(0, 94, 174, 0.8);
  color: #fff;
  font: 16px/1 FontAwesome;
  content: "\f00e";
}

a[href*=".jpg"] img,
a[href*=".jpeg"] img,
a[href*=".png"] img,
a[href*=".gif"] img {
  vertical-align: bottom;
}

.entry-content a[href*=".pdf"]:after,
.document-link a[href*=".pdf"]:after,
.plan-list a[href*=".pdf"]:after,
.document-list a[href*=".pdf"]:after {
  display: inline-block;
  width: 20px;
  height: 24px;
  content: url(images/i_pdf.svgz);
  vertical-align: text-bottom;
  margin-left: 0.3em;
}

.external-link:after {
  display: inline-block;
  vertical-align: top;
  margin-left: 0.3em;
  font-family: FontAwesome;
  text-decoration: none;
  content: "\f08e";
}

.banners {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  list-style: none;
  margin: -5px;
  padding: 0;
}

.banners > li {
  margin: 5px;
}

.banners a:hover,
.banners a:focus {
  opacity: 0.6;
}

.banners-goyomei {
  list-style: none;
  margin: 20px auto;
  padding: 0;
  text-align: center;
}

.banners-goyomei > li {
  margin: 20px 0;
}

.banners-goyomei__goyomei {
  margin-top: 8px;
}

.banners-goyomei__goyomei > a {
  display: inline-block;
  color: #005eae;
  padding: 4px 16px;
  border: 2px solid;
  font-weight: 700;
  font-size: 14px;
  text-decoration: none;
}

.banners-goyomei__goyomei > a:after {
  margin-left: 0.5em;
  font-family: FontAwesome;
  content: "\f105";
}

.under-construction {
  color: #ff3b3b;
  font-weight: 700;
  text-align: center;
}

.document-list {
  margin: -8px 0;
}

.document-list > li {
  margin: 8px 0;
}

ul.document-list {
  list-style: none;
  padding-left: 0;
}

ul.document-list > li {
  position: relative;
  padding-left: 1.5em;
}

ul.document-list > li:before {
  position: absolute;
  left: 0;
  width: 1.5em;
  font-family: FontAwesome;
  text-align: center;
  content: "\f105";
}

ol.document-list {
  padding: 0;
}

.movie-container {
  position: relative;
  padding-top: 56.25%;
}

.movie-container > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.small-sections__content {
  margin-right: 3%;
  margin-left: 3%;
}

.table-wrap {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.new {
  display: inline-block;
  line-height: 1.2;
  padding: 0 0.25em;
  background: #f00;
  color: #fff;
  font-family: Roboto, sans-serif;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
}

/* Header
--------------------------------*/

.site-header {
  position: relative;
  background: #005eae;
  padding: 0 0 20px;
  color: #fff;
}

.home .site-header {
  padding-bottom: 0;
}

.site-header-content {
  display: grid;
  position: relative;
  grid-template-areas: "logo resizer btn" "logo search btn";
  grid-template-columns: auto 1fr auto;
  align-items: flex-start;
  width: 100%;
}

.home .site-header-content {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
}

.site-title {
  position: relative;
  grid-area: logo;
  z-index: 1001;
  margin: 0;
}

.site-title > a {
  display: block;
  width: 70px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  padding: 10px;
  border-radius: 0 0 3px 3px;
  background: #fff;
}

.head-movie {
  position: relative;
  z-index: 0;
  height: 100vh;
  min-height: 56.25vw;
  overflow: hidden;
  background: no-repeat 50% 50% #000;
  color: #fff;
  text-align: center;
}

.head-movie.no-movie,
.no-js .head-movie {
  background-image: url(images/hero@sp.jpg);
  background-size: cover;
}

.admin-bar .head-movie {
  height: calc(100vh - 46px);
}

#movie-catch {
  position: absolute;
  top: 50%;
  right: 5%;
  z-index: 1;
  visibility: hidden;
  opacity: 0;
  font-size: 16px;
  text-align: left;
  text-shadow: 1px 0 3px rgba(0, 0, 0, 0.4), -1px 0 3px rgba(0, 0, 0, 0.4), 0 1px 3px rgba(0, 0, 0, 0.4), 0 -1px 3px rgba(0, 0, 0, 0.4);
}

#movie-catch > span {
  display: block;
}

#movie-catch > span:nth-child(2) {
  text-indent: 1em;
}

#movie-catch b {
  color: red;
}

#movie-catch.movie-on {
  transition: 0.8s;
}

#movie {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

video#movie {
  visibility: hidden;
  opacity: 0;
  transition: 0.8s;
  transition-property: opacity, visibility;
}

#movie-loader {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  margin: auto;
  transition: 0.5s;
  -webkit-animation: rotate 1.2s linear infinite;
  animation: rotate 1.2s linear infinite;
}

@-webkit-keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.movie-show #movie,
.movie-show #movie-catch {
  visibility: visible;
  opacity: 1;
}

.movie-show #movie-loader {
  visibility: hidden;
  opacity: 0;
}

.global-nav {
  display: none;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-feature-settings: "palt";
}

.no-js .global-nav {
  display: block;
}

.global-nav > ul {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  line-height: 16px;
  font-size: 15px;
  text-align: center;
}

.global-nav__item > a {
  display: block;
  position: relative;
  padding: 2px 0;
  text-decoration: none;
}

.global-nav__item > a:before {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: #fff;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  transition: 0.5s;
  content: "";
}

.global-nav__item > a:after {
  display: block;
  margin-top: 6px;
  font-family: Roboto, sans-serif;
  font-size: 9px;
  letter-spacing: 0.1em;
  content: attr(data-en);
}

.global-nav__item.current > a,
.global-nav__item > a:hover,
.global-nav__item > a:focus {
  color: #fcee21;
}

.global-nav__item > a:hover:before,
.global-nav__item > a:focus:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.global-nav__child {
  display: none;
  margin-left: 40px;
  font-size: 14px;
}

.global-nav__child > li {
  border-style: solid;
  border-width: 1px 0 0;
}

.global-nav__child a {
  display: block;
  padding: 10px 40px 10px 0;
  text-decoration: none;
}

.global-nav__child [href$=".pdf"]:before {
  margin-left: -1em;
  margin-right: 0.2em;
  font-family: FontAwesome;
  content: "\f1c1";
  speak: none;
}

.drawer {
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  overflow: auto;
  visibility: hidden;
  padding: 72px 20px 20px;
  background: #005eae;
  background: rgba(0, 94, 174, 0.95);
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  transition: 0.3s;
}

.logged-in .drawer {
  top: 46px;
}

.drawer > ul {
  display: block;
}

.drawer .global-nav__item {
  position: relative;
  border-bottom: 1px solid;
}

.drawer .global-nav__item:first-child {
  border-top: 1px solid;
}

.drawer .global-nav__item > a {
  padding: 15px 0;
}

.drawer .global-nav__item > a:before,
.drawer .global-nav__item > a:after {
  content: none;
}

.drawer[aria-hidden=false] {
  z-index: 99999;
  visibility: visible;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.toggle-menu {
  position: relative;
  z-index: 100000;
  grid-area: btn;
  width: 48px;
  height: 48px;
  margin-top: 10px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
}

.menu-icon {
  fill: currentColor;
}

.menu-icon > rect {
  -webkit-transform-origin: 24px 24px;
  transform-origin: 24px 24px;
  transition: 0.3s;
}

.menu-icon__bar1 {
  -webkit-transform: translateY(-12px);
  transform: translateY(-12px);
}

.menu-icon__bar3 {
  -webkit-transform: translateY(12px);
  transform: translateY(12px);
}

[data-open=true] .menu-icon__bar1,
[data-open=true] .menu-icon__bar3 {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

[data-open=true] .menu-icon__bar2 {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.toggle-child {
  position: absolute;
  top: 3px;
  right: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
}

.menu-icon2 {
  fill: currentColor;
}

.menu-icon2 > rect {
  -webkit-transform-origin: 20px 20px;
  transform-origin: 20px 20px;
  transition: 0.3s;
}

.menu-icon2__bar2 {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

[data-open=true] .menu-icon2__bar2 {
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

html.fixed,
.fixed > body {
  overflow: hidden;
}

.head-search {
  grid-area: search;
  width: 142px;
  margin: auto auto 0;
}

.search-form {
  position: relative;
  max-width: 300px;
  line-height: 23px;
  margin: auto;
}

.search-form > label {
  position: absolute;
  left: 4px;
}

.search-form > label:before {
  vertical-align: top;
  font-family: FontAwesome;
  font-size: 13px;
  content: "\f002";
}

input.search-field {
  width: 100%;
  vertical-align: bottom;
  line-height: inherit;
  padding: 0 0 0 24px;
  border: 0;
  border-bottom: 1px solid;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font-size: 11px;
}

input.search-field:-ms-input-placeholder {
  opacity: 0.8;
  color: inherit;
}

input.search-field::-moz-input-placeholder {
  opacity: 0.8;
  color: inherit;
}

input.search-field::-webkit-input-placeholder {
  opacity: 0.8;
  color: inherit;
}

input.search-field:placeholder-shown {
  opacity: 0.8;
  color: inherit;
}

.search-submit {
  display: none;
}

.textresizer {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  grid-area: resizer;
  width: 142px;
  line-height: 12px;
  margin: 10px auto 0;
  border: 1px solid;
  font-size: 12px;
  text-align: center;
}

.textresizer__label {
  display: inline-block;
  padding: 4px 8px;
  background: #fff;
  color: #005eae;
  font-weight: 700;
}

.textresizer__btn {
  width: 32px;
  opacity: 0.5;
  line-height: inherit;
  padding: 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
}

.textresizer__btn--large {
  font-size: 1.214286em;
}

.textresizer__btn.textresizer-active {
  opacity: 1;
}

.page-heading {
  margin: 20px 0 0;
  padding: 0;
  font-weight: 400;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 22px;
  text-align: center;
}

.page-heading:after {
  display: block;
  font-family: Roboto, sans-serif;
  font-size: 0.4em;
  letter-spacing: 0.2em;
  content: attr(data-en);
}

.head-news {
  display: grid;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  grid-template-areas: "heading heading" "content link";
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr;
  gap: 0.25em 1em;
  overflow: hidden;
  margin: 1em;
  padding: 1em;
  border: 1px solid;
  background: rgba(0, 94, 174, 0.65);
  font-size: 0.75em;
}

.head-news__heading {
  grid-area: heading;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 1em;
}

.head-news__content {
  grid-area: content;
  overflow: auto;
}

.head-news__link {
  grid-area: link;
  margin-top: auto;
}

.news-list {
  display: grid;
  list-style: none;
  grid-template-columns: auto auto 1fr auto;
  margin: 0;
  padding: 0;
}

.news-list__item {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-areas: "new date title category";
  grid-column: 1/-1;
  gap: 0 0.5em;
  align-items: center;
}

.news-list .new {
  grid-area: new;
}

.news-list__date {
  grid-area: date;
}

.news-list__title {
  grid-area: title;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.news-list__category {
  grid-area: category;
}

.news-list__category > a {
  display: block;
  line-height: 1.667;
  padding: 0 0.3333em;
  border: 1px solid #000;
  background: #000;
  color: #fff;
  font-size: 0.75em;
  text-align: center;
  text-decoration: none;
}

.hero-text {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 10;
  width: 100%;
  transform: translateY(-50%);
  font-family: "TsukuMinPr5-E", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 700;
  font-size: min(22px, 5.641vw);
  text-align: center;
  text-shadow: 0 0.25em 0.25em rgba(0, 0, 0, 0.25);
}

/* Footer
--------------------------------*/

.site-footer {
  background: #e6e6e6;
}

.site-footer-content {
  position: relative;
  color: #4d4d4d;
}

.foot-info {
  position: relative;
  overflow: hidden;
  background: #fff;
}

.foot-office {
  position: relative;
  background: url(images/bg_foot_info.jpg) repeat-y 0 0 #73a6d2;
  color: #fff;
}

.foot-office__tagline {
  position: absolute;
  top: 10px;
  left: 10px;
  font-weight: bold;
  font-size: 13px;
}

.foot-office__tagline > span {
  display: block;
}

.foot-office__link {
  position: absolute;
  right: 20px;
  bottom: 20px;
  left: 0;
  padding-right: 10px;
  text-align: right;
}

.btn--office {
  width: 150px;
  border: 0;
}

.organization {
  max-width: 920px;
  line-height: 1.5;
  margin: auto;
  padding: 20px 10px;
  font-size: 12px;
  text-align: center;
}

.organization > span {
  display: block;
}

.organization > img {
  margin-bottom: 15px;
}

.syskenkun {
  margin-top: 20px;
  text-align: center;
}

.syskenkun img {
  width: 200px;
}

.syskenkun__caption {
  margin-top: 5px;
  font-size: 10px;
}

.syskenkun__name {
  display: block;
}

.foot-link {
  width: 295px;
  margin: 20px auto;
}

.foot-link > a {
  display: block;
  margin: 8px 0;
}

.foot-banner {
  margin-top: 20px;
  margin-bottom: 20px;
}

.foot-nav {
  list-style: none;
  margin: 20px 0 0;
  padding: 0;
  font-size: 13px;
  text-align: center;
}

.foot-nav a {
  text-decoration: none;
}

.foot-nav a:after {
  margin-left: 10px;
  font-family: FontAwesome;
  content: "\f105";
}

.copyright {
  padding-top: 20px;
  padding-bottom: 20px;
  color: #4d4d4d;
  font-family: Roboto, sans-serif;
  font-size: 11px;
  text-align: center;
  letter-spacing: 0.1em;
}

.copyright > small {
  font-size: 1em;
}

/* Site Content
--------------------------------*/

.site-content {
  position: relative;
  padding-top: 20px;
}

.not-found {
  text-align: center;
}

.not-found > ul {
  display: table;
  margin-right: auto;
  margin-left: auto;
  text-align: left;
}

/* Sidebar
--------------------------------*/

.sidebar {
  margin: 20px auto 0;
  padding: 20px 3%;
  border-top: 1px solid #e6e6e6;
}

.page-nav {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 -10px;
  padding: 0;
  font-size: 0.875em;
}

.page-nav__item {
  margin: 5px 10px 5px;
}

.page-nav__item:before {
  margin-right: 3px;
  font-family: FontAwesome;
  content: "\f0da";
}

.page-nav__item.current > a {
  text-decoration: none;
}

.page-nav__child {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  list-style: none;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 0;
  padding: 0;
}

.page-nav .children {
  list-style: inherit;
  margin: 0;
  padding: 0;
}

/* Breadcrumbs
--------------------------------*/

.breadcrumbs {
  padding: 20px 0;
  background: #005eae;
  color: #fff;
  font-size: 0.8125em;
}

.breadcrumbs li {
  display: inline-block;
}

.breadcrumbs li:last-child > a {
  font-weight: bold;
  text-decoration: none;
}

.breadcrumbs li:not(:last-child):after {
  margin: 0 0.3em;
  content: ">";
}

/* Home
--------------------------------*/

.news {
  position: relative;
}

.news__heading {
  position: relative;
  line-height: 1;
  margin: 0 0 20px;
  padding: 8px;
  border: 0;
  background: url(images/bg_foot_info.jpg) no-repeat 0 0 #73a6d2;
  color: #fff;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 400;
  font-size: 13px;
  text-align: center;
}

.news__heading:after {
  display: block;
  margin: 8px -0.1em 0 0;
  font-family: Roboto, sans-serif;
  font-weight: 100;
  font-size: 34px;
  letter-spacing: 0.1em;
  content: "News";
}

.news__content {
  max-width: 920px;
  height: 100%;
  margin: auto;
  padding: 10px;
}

.news__link {
  margin-top: 20px;
  text-align: center;
}

.btn--news {
  font-size: 0.75em;
}

.csr__heading {
  line-height: inherit;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 1.125em;
  text-align: center;
}

.csr__heading:after {
  display: block;
  color: #3fa9f5;
  font-family: Roboto, sans-serif;
  font-size: 11px;
  letter-spacing: 0.1em;
  content: attr(data-en);
}

.csr__content {
  padding: 50px 0 40px;
  background: #e6e6e6;
}

.csr__tagline {
  font-size: 0.75em;
  text-align: center;
}

.csr__link {
  margin: 16px 0 0;
  text-align: center;
}

.topics-wrap {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 3%;
}

.topics-part__title {
  color: #005eae;
  padding: 0;
  border: 0;
  text-align: center;
}

.csr-list {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.csr-list--single {
  display: block;
  padding: 0;
}

.csr-list__item {
  display: inherit;
  position: relative;
  -ms-flex: 0 0 auto;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 50%;
}

.csr-list__item > a {
  display: block;
  width: 100%;
  background: #fff;
  font-size: 0.75em;
  text-decoration: none;
}

.csr-list__item > a:after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: #005eae;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  transition: 0.3s;
  content: "";
}

.csr-list__item > a:hover:after,
.csr-list__item > a:focus:after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.csr-list--single .csr-list__item {
  width: auto;
}

.csr-list__thumbnail {
  position: relative;
  overflow: hidden;
  margin-bottom: 8px;
  padding-top: 66.6667%;
}

.csr-list__thumbnail > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.csr-list__content {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: auto auto;
  grid-template-areas: "new date ." "title title title";
  align-items: center;
  gap: 0 1em;
}

.csr-list__date {
  display: block;
  grid-area: date;
  color: #005eae;
  font-family: Roboto, sans-serif;
  text-align: center;
}

.csr-list__title {
  display: block;
  grid-area: title;
  padding: 0 10px 10px;
}

.csr-list .new {
  width: fit-content;
  margin-left: auto;
}

.btn--csr {
  display: block;
  padding-right: 0;
  padding-left: 0;
  border: 0;
  background: #4d4d4d;
  color: #fff;
}

/* Page
--------------------------------*/

.page__title,
.archive__title {
  margin: 0 auto 40px;
  font-size: 24px;
  text-align: center;
  text-indent: 0.1em;
  letter-spacing: 0.2em;
}

.page__title:after,
.archive__title:after {
  display: block;
  color: #3fa9f5;
  font-family: Roboto, sans-serif;
  font-size: 11px;
  letter-spacing: 0.2em;
  content: attr(data-en);
}

.children-list ul {
  margin: 0;
}

.contactbox {
  max-width: 800px;
  margin: 60px 3% 0;
  padding: 20px 10px 10px;
  border: 5px solid #9cf;
  background: #fff;
  font-size: 0.8125em;
  text-align: center;
}

.contactbox__heading {
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #005eae;
  font-size: 16px;
}

.contactbox__name {
  display: block;
  font-weight: bold;
  font-size: 1.2em;
}

.contactbox__address,
.contactbox__hours {
  display: block;
}

.contactbox__tel,
.contactbox__fax,
.contactbox__mail {
  display: inline-block;
}

.contactbox__link {
  margin-top: 10px;
}

.contactbox__area {
  line-height: 1.5;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #999;
}

.contactbox-wrap {
  margin-top: 60px;
}

/* Company
--------------------------------*/

/** President Message */

.greeting-message p {
  margin-bottom: 1em;
  text-indent: 1em;
}

.greeting-message__photo {
  width: 12.5em;
  max-width: 200px;
  margin: 0 auto 20px;
  text-align: center;
}

.greeting-message__from {
  text-align: right;
}

.greeting-message__from > span {
  display: block;
}

/** Philosophy */

.philosophy-text {
  box-shadow: 0 0 7px rgba(204, 204, 204, 0.7);
  padding: 20px;
  background: #fff;
  font-size: 20px;
  text-align: center;
  /*&--creed {
  	line-height: 1.5;
  	> ul {
  		font-size: 1.1333em;
  	}
  	@include mq-tablet {
  		font-size: 30px;
  	}
  }*/
}

.philosophy-text > p {
  margin: 0;
}

.philosophy-text > span {
  display: block;
}

.philosophy-text > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.philosophy-text--management > ul {
  display: table;
  margin: auto;
  text-align: left;
}

.philosophy-text--management li:not(:first-child) {
  padding-left: 2em;
  text-indent: -2em;
}

/** Vision */

.vision-image {
  line-height: 1;
  text-align: center;
}

.vision-image__part2 {
  margin: 20px 0;
}

.vision-image__part4 {
  margin-top: 20px;
}

/** Executive */

.executive-list {
  white-space: nowrap;
}

/** Office */

.page-office .sidebar {
  margin-top: 0;
}

[role=tablist] {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  text-align: center;
}

[role=tablist] > li {
  -ms-flex: 1 1 auto;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}

[role=tablist] a {
  display: block;
}

[role=tabpanel] {
  position: relative;
  z-index: 1;
}

.tabpanels {
  position: relative;
}

.office-area-selector {
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 40px;
  font-size: 14px;
}

.office-area-selector > li {
  width: 16%;
}

.office-area-selector a {
  padding: 4px 0;
  border-top: 1px solid #6c8bcd;
  background: #fff;
  color: #6c8bcd;
  font-weight: bold;
  text-decoration: none;
}

.office-area-selector [aria-selected=true] {
  background: #6c8bcd;
  color: #fff;
}

.office-areas {
  background: #6c8bcd;
  color: #fff;
}

[aria-hidden=true].office,
[aria-hidden=true].office-area {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
}

.office-selector {
  position: relative;
}

.office-selector:before {
  position: absolute;
  top: 100%;
  right: 0;
  right: calc(50% - 50vw);
  left: 0;
  left: calc(50% - 50vw);
  border-bottom: 1px solid;
  content: "";
}

.office-selector[aria-hidden=true] {
  display: none;
}

.office-selector a {
  position: relative;
  padding: 8px 0;
  font-size: 13px;
}

.office-selector [aria-selected=true] {
  font-weight: 700;
  text-decoration: none;
}

.office-selector [aria-selected=true]::before {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  width: 8px;
  height: 8px;
  margin: -4px auto 0;
  border-style: solid;
  border-width: 1px 1px 0 0;
  background: #6c8bcd;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  content: "";
}

.office {
  margin: auto;
  padding-top: 20px;
}

.office__name {
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 400;
  font-size: 1.5625em;
  font-feature-settings: normal;
}

.office__name:before {
  margin-left: -0.5em;
  content: "【";
}

.office__name:after {
  content: "】";
}

.office__address {
  overflow: hidden;
}

.office__contact {
  margin-top: 8px;
}

.office__tel,
.office .office-division__tel {
  margin-right: 0.8em;
}

.office__tel:before,
.office .office-division__tel:before {
  font-family: FontAwesome;
  content: "\f095 ";
}

.office__fax:before,
.office .office-division__fax:before {
  font-family: FontAwesome;
  content: "\f1ac ";
}

.btn--officemap {
  padding: 3px 10px;
  border: 0;
  background: #005eae;
  color: #fff;
  font-weight: 400;
  font-size: 14px;
}

.btn--officemap:before {
  margin-right: 4px;
  vertical-align: top;
  font-family: FontAwesome;
  content: "\f041";
}

.office-divisions {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  clear: both;
  margin: 20px auto 0;
}

.office-divisions__heading {
  -ms-flex: 100%;
  -webkit-flex: 100%;
  flex: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 400;
  font-size: 1.0625em;
  font-feature-settings: normal;
}

.office-divisions__heading:before {
  margin-left: -0.5em;
  content: "【";
}

.office-divisions__heading:after {
  content: "】";
}

.office-division {
  width: 48%;
  margin: 10px 0 0;
  padding: 0 0 5px;
  border-bottom: 1px dotted;
  font-size: 0.9375em;
}

.office-division__name {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 1em;
}

.office-map {
  position: relative;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  margin-top: 30px;
  background: #6c8bcd;
}

.office-map__content {
  width: 100%;
  height: 240px;
  height: 50vh;
  background: #ccc;
}

.office-map__content iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.office-map__content img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#office-photo {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  overflow: hidden;
}

#office-photo.active {
  z-index: 1;
}

#office-photo > img {
  position: absolute;
  top: 0;
  left: 50%;
  max-width: none;
  height: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

/** Group */

.group-company__item {
  margin-top: 20px;
  padding: 20px;
  background: #e6e6e6;
}

.group-company__name {
  font-weight: bold;
  font-size: 1.125em;
  text-align: center;
}

/** Action Plan */

.plan-list {
  display: table;
  list-style: none;
  margin: 0 auto;
  padding: 0;
}

.plan-list > li {
  position: relative;
  padding-left: 1em;
}

.plan-list > li:before {
  position: absolute;
  left: 0;
  width: 1em;
  font-family: FontAwesome;
  text-align: center;
  content: "\f105";
}

.plan-list > li + li {
  margin-top: 5px;
}

/* Business
--------------------------------*/

.business-menu__item {
  margin: 20px 0 0;
}

.business-menu__link {
  display: block;
  text-align: center;
  text-decoration: none;
}

.business-menu__title {
  display: block;
  margin-top: 4px;
  color: #005eae;
  font-family: "FP-HiraKakuProN-W6", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
}

.tagline--business {
  font-size: 20px;
  text-align: center;
}

.tagline--business > span,
.tagline--business > span > span {
  display: block;
}

.business-text {
  margin: 30px 0;
  font-size: 1.0625em;
  text-align: justify;
}

.featured-section__heading {
  padding: 0;
  border: 0;
  background: transparent;
  color: #005eae;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 400;
  text-align: center;
}

.featured-image {
  margin: 20px auto 1em;
  text-align: center;
}

.boxes {
  max-width: 800px;
  margin: 40px auto 0;
}

.boxes__item {
  margin: 0;
  padding: 24px 3%;
  background: #e6e6e6;
}

.boxes__heading {
  padding: 0;
  border: 0;
  background: transparent;
  color: #005eae;
  font-size: 20px;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 400;
  text-align: center;
}

.boxes__image {
  margin: 20px 0;
  text-align: center;
}

.boxes__text {
  text-align: justify;
}

/** IT */

.it-trusted__heading {
  padding: 0;
  border: 0;
  background: transparent;
  font-weight: 700;
  font-size: 1.75em;
  text-align: center;
}

.sysken-interner-link {
  margin-bottom: 20px;
  color: #005eae;
  font-weight: 700;
  font-size: 1.75em;
  text-align: center;
}

/** Pipe */

.tagline--pipe {
  text-align: center;
}

.pipe-strong {
  font-size: 1.3125em;
  text-align: center;
}

.pipe-strong b {
  color: red;
}

.pipe-points {
  margin-bottom: 40px;
}

.pipe-point {
  border: 1px solid #ccc;
}

.pipe-point__heading {
  padding: 10px;
  border: 0;
  border-bottom: inherit;
  background: #9cf;
  color: #005eae;
  font-size: 1.3125em;
  text-align: center;
}

.pipe-point__list {
  padding: 0 12.5%;
}

.pipe-point__list > li + li {
  margin-top: 2em;
}

/** Sprinex */

.sprinex-works {
  list-style: none;
  margin-left: -1em;
  padding: 0;
}

.sprinex-works > li {
  display: inline-block;
  margin-left: 1em;
}

.sprinex-works > li:before {
  content: "■";
}

.comparison__item {
  border: 1px solid #ccc;
}

.comparison__item:nth-child(2) {
  margin-top: 20px;
}

.comparison__caption {
  padding: 10px;
  background: #06c;
  color: #fff;
  font-weight: 700;
  font-size: 1.3125em;
  text-align: center;
}

.comparison__item:first-child > .comparison__caption {
  background: #f00;
}

.comparison__content {
  padding: 3%;
  text-align: justify;
}

.comparison__image {
  text-align: center;
}

.comparison__tagline,
.comparison__tagline--note {
  line-height: 1.4;
  color: #06c;
  font-weight: 700;
  font-size: 1.25em;
  text-align: center;
}

.comparison__item:first-child .comparison__tagline,
.comparison__item:first-child .comparison__tagline--note {
  color: #f00;
}

.comparison__tagline--note {
  margin-top: -1em;
  font-size: 1em;
}

.sprinex-spec {
  padding: 15px;
  background: #e6e6e6;
}

.sprinex-spec > figcaption {
  color: #f00;
  font-weight: 700;
  font-size: 1.125em;
}

.sprinex-spec dl {
  margin-left: 1.0625em;
}

.sprinex-spec dt {
  font-weight: 400;
  font-size: 1.0625em;
  text-indent: -1em;
}

.sprinex-spec dt:before {
  color: #f00;
  content: "●";
}

.sprinex-spec dd {
  margin-left: 0;
  font-size: 0.875em;
}

/** Environment */

.environment-points {
  position: relative;
  margin: 40px auto 0;
  padding: 0 3%;
}

.environment-point__heading {
  margin: 0 auto 16px;
  padding: 5px;
  border: 0;
  background: #39c;
  color: #fff;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 400;
  font-size: 1.3125em;
}

.environment-point__list dt:before {
  content: "■";
}

.environment-point__list dd {
  line-height: 1.4;
  margin: 0;
}

.document-link {
  margin-top: 20px;
  padding: 20px;
  border: 1px solid #ccc;
  text-align: center;
}

/** Support */

.nsc__heading {
  padding: 24px 0;
  border: 0;
  border: solid #999;
  border-width: 1px 0;
  background: transparent;
  font-family: "TsukuMinPr5-E", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 700;
  text-align: center;
}

.nsc__heading > abbr {
  position: relative;
  margin-right: 0.1em;
  color: #005eae;
}

.nsc__heading > abbr::before {
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%) scale(0.75);
  transform: translateX(-50%) scale(0.75);
  font-size: 10px;
  white-space: nowrap;
  content: attr(title);
}

.tagline--nsc {
  color: #005eae;
  font-weight: 700;
  font-size: 1.25em;
  text-align: center;
}

.support-plan {
  margin: 20px auto;
  padding: 12px 20px;
  background: #e1eef9;
  font-size: 0.875em;
}

.support-plan__heading {
  margin: 0 0 4px;
  padding: 0;
  border: 0;
  color: #005eae;
  font-size: 1.125em;
}

.support-plan__heading:before {
  content: "⚫ ";
}

.support-plan__heading + p {
  margin-top: 0;
}

.support-plan__info th,
.support-plan__info td {
  vertical-align: baseline;
  padding: 0;
  border: 0;
  font-weight: normal;
}

.support-plan__info th {
  text-align: right;
}

.support-plan__info th:after {
  content: "：";
}

/* Product
--------------------------------*/

.product-lineup {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  list-style: none;
  margin: 0;
  padding: 0;
}

.product-lineup__item {
  width: 48.889%;
  line-height: 1.25;
  font-size: 0.75em;
}

.product-lineup__item:nth-child(n+3) {
  margin-top: 10px;
}

.product-lineup__item > a {
  display: block;
  position: relative;
  height: 100%;
  padding: 8px 8px 32px 8px;
  background: #e6e6e6;
  text-decoration: none;
}

.product-lineup__item > a:after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 23px;
  height: 23px;
  content: url(images/i_more.svgz);
}

.product-lineup__item > a:hover,
.product-lineup__item > a:focus {
  box-shadow: 0 0 0 4px #005eae inset;
}

.product-lineup__item img {
  display: block;
  margin: 0 auto 1em;
}

.product-lineup__item span {
  display: block;
}

.product-lineup__name {
  margin-bottom: 4px;
  color: #005eae;
  font-size: 1.25em;
}

.product-usage-image {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.product-usage-image:nth-child(n+2) {
  margin-top: 10px;
}

.product-usage-image > img {
  width: 120px;
  margin-right: 10px;
}

.product-list__item {
  margin-top: 20px;
  padding: 10px;
  border: 1px solid #ccc;
  background: #fff;
}

.product-list__image {
  max-width: 180px;
  margin: 0 auto 10px;
}

.product-list__name {
  line-height: 1.4;
  margin: 0;
  color: #005eae;
  font-weight: 700;
  font-size: 1.125em;
  word-break: break-all;
}

.product-list__description {
  line-height: 1.4;
  margin: 12px 0;
  font-size: 0.875em;
  text-align: justify;
}

.product-list__description ul {
  margin: 0;
}

.btn--product-link {
  display: block;
  padding: 4px;
  background: #005eae;
  color: #fff;
  font-size: 0.875em;
  text-align: center;
  text-decoration: none;
}

.btn--product-link + .btn--product-link {
  margin-top: 4px;
}

.product-images {
  margin-top: 30px;
}

.product-images__image,
.product-images__movie {
  margin-top: 20px;
  text-align: center;
}

/* IR
--------------------------------*/

.ir-header {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  height: 120px;
  background: url(images/bg_ir_head.jpg) no-repeat 50% 50% #333;
  background: repeating-linear-gradient(to bottom, transparent, transparent 1px, rgba(35, 24, 21, 0.5) 1px, rgba(35, 24, 21, 0.5) 2px), url(images/bg_ir_head.jpg) no-repeat 50% 50% #333;
  background-size: auto, cover;
  color: #fff;
  text-align: center;
}

.ir-tagline {
  font-size: 24px;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.8);
}

.ir-category-archive > h3 {
  margin-right: auto;
  margin-left: auto;
}

.ir-list {
  color: #005eae;
}

.ir-list > li + li {
  margin-top: 4px;
}

.ir {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
  border-top: 2px solid #005eae;
}

.ir__title {
  display: inherit;
  margin: 0;
  border: 0;
  font-size: 1em;
}

.ir__content {
  display: inherit;
  -ms-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  font-size: 0.875em;
}

.ir-documents {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ir-document {
  position: relative;
  padding: 10px 3%;
  border-bottom: 1px solid #e6e6e6;
}

.ir-document > a {
  text-decoration: none;
}

.ir-document__date {
  display: block;
}

.ir-document__title {
  font-weight: 700;
}

a:hover > .ir-document__title,
a:focus > .ir-document__title {
  text-decoration: underline;
}

.ir-document__size {
  color: #999;
  font-size: 0.8em;
  white-space: nowrap;
}

.ir-document__size:before {
  display: inline-block;
  width: 20px;
  height: 24px;
  content: url(images/i_pdf.svgz);
  vertical-align: top;
  margin-right: 3px;
}

.sales-office {
  margin: 20px 0 0;
  padding: 10px;
  border: 3px solid #efefef;
  background: #fff;
}

.sales-office__name {
  margin: 0;
  padding: 0;
  border: 0;
  color: #005eae;
  font-size: 1em;
}

.sales-office__name:before {
  display: inline-block;
  width: 2em;
  vertical-align: middle;
  font-size: 0.5em;
  text-align: center;
  content: "●";
}

.sales-office__contact {
  line-height: 1.4;
  margin-top: 4px;
}

.sales-office__tel:before {
  color: #005eae;
  font-family: FontAwesome;
  content: "\f095 ";
}

.sales-office__products {
  margin-top: 8px;
}

.sales-office__products > ul {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  line-height: 1.4;
  margin: 0;
  padding: 2px;
  font-size: 10px;
  text-align: center;
}

.sales-office__products li {
  width: 32.34%;
  margin-left: 1.49%;
  border-radius: 4px;
  background: #6c8bcd;
  color: #fff;
}

.sales-office__products li:nth-child(3n+1) {
  margin-left: 0;
}

.sales-office__products li:nth-child(n+4) {
  margin-top: 4px;
}

.sales-office__products li[aria-hidden=true] {
  background: #ccc;
}

.sales-office__products s {
  text-decoration: none;
}

.sales-office .btn--officemap {
  vertical-align: text-top;
  padding-top: 1px;
  padding-bottom: 1px;
  font-size: 12px;
}

.table-wrap--performance {
  margin-top: 1em;
}

.performance-table {
  width: 800px;
  line-height: 1.5;
  font-size: 0.9375em;
  table-layout: fixed;
}

.performance-table caption {
  text-align: right;
}

.performance-table th,
.performance-table td {
  width: 16.667%;
  padding: 12px 8px;
  border: 1px solid #ccc;
  font-weight: 700;
}

.performance-table th {
  padding-right: 0;
  padding-left: 0;
  background: #d2e4f9;
  text-align: center;
  white-space: normal;
}

.performance-table td {
  text-align: right;
}

.performance-table .minus {
  color: #900;
}

.performance-table-note {
  width: 800px;
  font-size: 0.9375em;
  text-align: right;
}

/* Recruit
--------------------------------*/

.graduates__entry {
  margin-top: 20px;
  padding: 16px;
  background: #e6e6e6;
  text-align: center;
}

.starting-salary {
  list-style: none;
  padding: 0;
}

.bonuse-and-payrise > dt {
  float: left;
  clear: left;
  margin: 0;
  font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 400;
}

.bonuse-and-payrise > dt:after {
  content: "：";
}

.old-ir {
  width: fit-content;
  margin: 0 auto;
}

/* Management System
--------------------------------*/

.certification-mark {
  width: 170px;
  margin: 0 auto 1em;
  text-align: center;
}

.management-system-info {
  display: block;
}

.management-system-info tbody,
.management-system-info tr,
.management-system-info th,
.management-system-info td {
  display: inherit;
  width: auto;
  text-align: left;
}

.management-system-info tr {
  margin-bottom: 1em;
}

.management-system-info th,
.management-system-info td {
  padding: 0;
  border: 0;
}

.management-system-info th:after {
  content: "：";
}

.management-system-info + .more-link {
  clear: both;
}

.ms-target ul {
  list-style: none;
  padding-left: 1em;
}

.management-concept {
  text-align: center;
}

.management-concept__tagline {
  line-height: 1;
  margin: 0;
  font-size: 24px;
}

.management-concept__title {
  display: table;
  margin: 30px auto;
  padding: 3px 20px;
  border: 1px solid #ccc;
  font-size: 0.9375em;
}

.management-concept__text {
  line-height: 1.48;
  box-shadow: 0 0 7px rgba(204, 204, 204, 0.7);
  padding: 20px;
  background: #fff;
  color: #005eae;
  font-size: 20px;
}

.management-concept__text span {
  display: block;
}

.management-goal__heading {
  margin-bottom: 40px;
  padding: 0 3%;
  border: 0;
  font-size: 1.125em;
  text-align: center;
}

.management-goal__heading > span {
  display: inline-block;
}

.management-goal__footline {
  margin-top: 40px;
  font-weight: 700;
}

.management-goal__list {
  list-style: none;
  padding: 0;
  font-size: 1.125em;
}

.management-goal__list > li {
  position: relative;
  margin-top: 0.5em;
  padding-left: 1.5em;
}

.management-goal__list > li:before {
  position: absolute;
  left: 0;
  color: #3fa9f5;
  content: "●";
}

.certificates {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.certificates__item {
  display: inline-block;
  max-width: 48%;
  margin: 10px 0 0;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.8);
}

.action-guideline > li + li {
  margin-top: 1em;
}

.management-text {
  /* box-shadow: 0 0 7px rgba(#ccc, .7); */
  padding: 10px 20px;
  background: #fff;
  font-size: 20px;
  text-align: center;
}

.management-text > p {
  margin: 0;
}

.management-text > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.management-text > ol {
  text-align: left;
}

/* Contact
--------------------------------*/

.contact-tel {
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
}

.contact-tel__tel > span {
  display: block;
}

.contact-tel__tel > a {
  color: #ff3b3b;
  font-size: 1.5em;
}

.contact-tel__note dd {
  margin: 0;
}

/* Privacy Policy
--------------------------------*/

#privacy {
  counter-reset: privacy;
}

.privacy-part {
  counter-increment: privacy;
}

.privacy-part__heading:before {
  content: counter(privacy) ". ";
}

/* Sitemap
--------------------------------*/

.sitemap ul,
.sitemap {
  list-style: none;
  margin: 0 0 0 -10px;
  padding: 0;
}

.sitemap {
  margin-top: -10px;
  color: #005eae;
}

.sitemap > li {
  margin-top: 10px;
}

.sitemap > li > a,
.sitemap > li > span {
  font-weight: bold;
}

.sitemap li {
  display: inline-block;
  margin-left: 10px;
}

.sitemap > .page_item_has_children {
  margin-bottom: -1px;
  padding: 10px 0;
}

.sitemap > .page_item_has_children + .page_item_has_children {
  margin-top: 0;
}

.sitemap .page_item_has_children {
  display: block;
}

.sitemap .children {
  position: relative;
  margin-left: 0.5em;
  padding-bottom: 5px;
  padding-left: 0.3em;
  border-left: 2px solid #ccc;
}

.sitemap .children:before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 7px;
  border-bottom: 2px solid #ccc;
  content: "";
}

/* Videos
--------------------------------*/

.movie-list__title {
  margin-right: 0;
  margin-left: 0;
}

/* CSR Activities
--------------------------------*/

.text-width-image__image {
  margin-bottom: 1em;
  text-align: center;
}

/* Partners
--------------------------------*/

.partner-list {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
}

.partner-list > li {
  margin-top: 16px;
}

.partner-list a {
  display: block;
  padding: 10px;
  border: 1px solid #265EA8;
  text-decoration: none;
}

.partner-list [target=_blank]:after {
  margin-left: 0.3em;
  font-family: FontAwesome;
  content: "\f08e";
}

/* Post
--------------------------------*/

.no-posts {
  text-align: center;
}

.post-list--search,
.post-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid #ccc;
}

.post-list--search > li,
.post-list > li {
  padding: 10px;
  border-bottom: 1px solid #ccc;
}

.post-list time {
  display: block;
  font-size: 0.8em;
}

.post {
  max-width: 800px;
  margin-right: 3%;
  margin-left: 3%;
  border: solid #efefef;
  border-width: 0 8px 8px;
  background: #fff;
}

.entry-header {
  position: relative;
  background: #efefef;
}

.date-badge {
  position: absolute;
  top: -23px;
  left: 0;
  width: 60px;
  line-height: 1;
  padding: 5px 0;
  background: #3fa9f5;
  color: #fff;
  font-family: Abel, sans-serif;
  text-align: center;
  text-transform: uppercase;
  speak: none;
}

.date-badge__date {
  font-size: 20px;
}

.date-badge__month {
  font-size: 15px;
}

.entry-title {
  margin: 0;
  border: 0;
}

.entry-footer {
  padding: 10px;
  border-bottom: 1px solid #efefef;
  color: #4d4d4d;
  font-size: 0.75em;
}

.entry-content {
  padding: 10px;
  text-align: justify;
}

.attachment .entry-content {
  text-align: center;
}

.entry-content strong {
  color: inherit;
}

.entry-content em {
  color: inherit;
  font-style: italic;
  font-weight: inherit;
}

.entry-content a > img[src$="pdf.gif"] {
  display: none;
}

.more-link {
  display: table;
  margin: 1em 0 0 auto;
}

/*** Wordpress Native Classes ***/

.alignleft,
.alignright,
.aligncenter {
  display: block;
  margin: 1em auto;
  text-align: center;
}

.alignnone {
  vertical-align: baseline;
}

/* Search
--------------------------------*/

p.search-results {
  text-align: center;
}

/* Form
--------------------------------*/

.wpcf7 input[size="40"],
.wpcf7 textarea {
  width: 100%;
}

.form-group {
  width: 100%;
  padding: 10px 0;
  border-bottom: 1px solid #ccc;
}

.control-label {
  display: block;
  margin-bottom: 0.5em;
}

.wpcf7-radio,
.wpcf7-checkbox {
  display: block;
  margin-left: -1em;
}

.required,
.optional {
  display: inline-block;
  vertical-align: text-top;
  padding: 0 8px;
  border-radius: 4px;
  background: #ff3b3b;
  color: #fff;
  font-weight: 700;
  font-size: 0.75em;
}

.optional {
  background: #999;
}

.submit,
.acceptance {
  margin-top: 20px;
  text-align: center;
}

.submit {
  text-indent: 20px;
}

.agree-privacy-policy > label {
  display: block;
  padding: 8px;
  border: 1px solid #005eae;
  background: #e6e6e6;
  text-align: center;
  cursor: pointer;
}

label[for],
.wpcf7-list-item > label,
.acceptance > label {
  cursor: pointer;
}

input[type=submit] {
  min-width: 200px;
}

.your-address {
  display: block;
  margin-top: 0.5em;
}

/* Page Navigation
--------------------------------*/

.navigation {
  text-align: center;
}

.nav-links {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.pagination > .nav-links {
  margin-right: -4px;
  margin-left: -4px;
}

.nav-next,
.posts-navigation [rel=prev] {
  -ms-flex-order: 0;
  -webkit-order: 0;
  order: 0;
  margin-right: auto;
}

.nav-previous,
.posts-navigation [rel=next] {
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1;
  margin-left: auto;
}

.page-numbers {
  display: inline-block;
  min-width: 32px;
  min-width: calc(1em + 16px);
  line-height: 1;
  margin: 0 4px;
  padding: 8px;
  border-radius: 50%;
  background: #005eae;
  color: #fff;
  font-family: Abel, sans-serif;
  text-decoration: none;
}

.page-numbers.current {
  background: #bbb;
}

.page-numbers.dots {
  min-width: 0;
  padding: 0;
  background: transparent;
  color: inherit;
}

a.page-numbers:hover,
a.page-numbers:focus {
  opacity: 0.6;
}

.post-navigation {
  margin-top: -40px;
}

.post-navigation a {
  font-family: Roboto, sans-serif;
  text-decoration: none;
  text-transform: uppercase;
}

.post-navigation a:hover,
.post-navigation a:focus {
  box-shadow: 0 1px currentColor;
}

.nav-previous > a:after {
  margin-left: 0.4em;
}

.nav-next > a:before {
  margin-right: 0.4em;
}

.nav-next > a:before,
.page-numbers.prev:before {
  font-family: FontAwesome;
  content: "\f104";
}

.nav-previous > a:after,
.page-numbers.next:before {
  font-family: FontAwesome;
  content: "\f105";
}

/* Social
--------------------------------*/

.share-buttons {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  list-style: none;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  text-align: center;
}

.share-buttons a:before {
  display: inline-block;
  width: 1em;
  font: 1em/1 FontAwesome, sans-serif;
  content: "\e911";
}

.share-buttons a {
  display: block;
  padding: 2px 8px;
  background: #ccc;
  color: #fff;
  text-decoration: none;
}

.share-buttons .facebook {
  background-color: #3b5998;
}

.share-buttons .twitter {
  background-color: #1da1f3;
}

.share-buttons .googleplus {
  background-color: #dd4b39;
}

.share-buttons .tumblr {
  background-color: #35465c;
}

.share-buttons .pocket {
  background-color: #ef4056;
}

.share-buttons .hatena {
  background-color: #00a5de;
}

.follow-us .facebook:before,
.share-buttons .facebook:before {
  content: "\f09a";
}

.follow-us .twitter:before,
.share-buttons .twitter:before {
  content: "\f09a";
}

.follow-us .googleplus:before,
.share-buttons .googleplus:before {
  content: "\f0d5";
}

.follow-us .instagram:before {
  content: "\f16d";
}

.share-buttons .tumblr:before {
  content: "\f173";
}

.share-buttons .pocket:before {
  content: "\f265";
}

.share-buttons .hatena:before {
  content: "B!";
  font-family: Verdana, sans-serif;
  font-weight: 700;
}

.follow-us a {
  display: block;
  text-decoration: none;
}

/* Simple Box
--------------------------------*/

.simple-box-loading,
.simple-box-image,
.simple-box-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s;
  transition-property: opacity, visibility, background-color;
}

.simple-box-backdrop {
  background: rgba(255, 255, 255, 0.8);
  cursor: pointer;
}

.simple-box-backdrop[aria-hidden=false] {
  bottom: 0;
  z-index: 999999;
  visibility: visible;
  opacity: 1;
}

.simple-box-backdrop:focus {
  background: rgba(182, 182, 182, 0.8);
}

.simple-box-backdrop:before {
  position: absolute;
  right: 0;
  bottom: 20px;
  left: 0;
  opacity: 0;
  color: #666;
  font-family: Helvetica, sans-serif;
  text-align: center;
  text-transform: uppercase;
  text-shadow: 1px 1px #fff;
  transition: inherit;
  content: "Close";
}

.simple-box-backdrop:hover:before,
.simple-box-backdrop:focus:before {
  opacity: 1;
}

.simple-box-image {
  bottom: 0;
  max-width: 95%;
  max-height: 95%;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.6);
  margin: auto;
  background: #fff;
  cursor: pointer;
}

.simple-box-image[aria-hidden=false] {
  z-index: 1000001;
  visibility: visible;
  opacity: 1;
}

.simple-box-loading {
  bottom: 0;
  width: 100px;
  height: 100px;
  margin: auto;
  border: 8px solid #ccc;
  border-right-color: transparent;
  border-radius: 50%;
}

.simple-box-loading[aria-hidden=false] {
  z-index: 1000000;
  visibility: visible;
  opacity: 1;
  -webkit-animation: loading 1s linear infinite;
  animation: loading 1s linear infinite;
}

iframe.sinple-box-external-iframe {
  width: 90%;
  height: 60%;
}

@-webkit-keyframes loading {
  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes loading {
  100% {
    transform: rotate(360deg);
  }
}

/* Slider
--------------------------------*/

.banner-slider {
  max-width: 800px;
  margin: auto;
}

.banner-slider .slick-slide {
  margin: 0 3vw;
}

.banner-slider .slick-slide img {
  margin: auto;
}

.slick-prev,
.slick-next {
  width: 40px;
  height: 40px;
}

.slick-prev:before,
.slick-next:before {
  color: #005eae;
  font-size: 40px;
  transition: 0.3s;
}

.slick-prev {
  left: -50px;
}

.slick-next {
  right: -50px;
}

.slick-dots {
  right: 0;
  left: 0;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  max-width: 800px;
}

.slick-dots > li {
  -ms-flex: 0 0 auto;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
}

.slick-dots > li.slick-active > button:before {
  color: #005eae;
}

.photo-slide__caption {
  display: block;
  color: #005eae;
  font-size: 700px;
  font-family: "FP-HiraKakuProN-W6", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 14px;
  text-align: center;
}

.photo-slide a {
  text-decoration: none;
}

/* Extra
--------------------------------*/

.for-ie {
  padding: 10px 0;
  background: #ff3b3b;
  color: #fff;
  font-size: 20px;
  text-align: center;
}

/* Media Queries
--------------------------------*/

@media screen and (min-width: 480px) {
  .site-header {
    border-top: 0;
  }

  .site-header-content {
    grid-template-areas: "logo search resizer btn";
    grid-template-columns: auto 1fr auto auto;
    align-items: center;
    gap: 0 20px;
  }

  .toggle-menu {
    margin-top: 0;
  }

  .head-search {
    width: 174px;
    margin: 0;
  }

  .textresizer {
    width: auto;
    line-height: 14px;
    margin: 0 0 0 auto;
    font-size: 14px;
  }

  .textresizer__label {
    width: 92px;
  }

  .csr-list__item {
    width: 23.92%;
    margin-left: 1.44%;
  }

  .csr-list__item:nth-child(4n+1) {
    margin-left: 0;
  }

  .csr-list__item:nth-child(n+5) {
    margin-top: 20px;
  }

  .office-map {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .office-map__content {
    height: 360px;
  }

  #office-photo {
    left: 50%;
  }

  .group-company {
    /*@include display-flex;
    @include flex-wrap();
    @include justify-content(space-between);
    &__item {
    	width: 48%;
    	margin-top: 4%;
    }*/
  }

  .group-company__info th {
    width: 23%;
  }

  .starting-salary > li {
    display: inline-block;
  }

  .starting-salary > li:not(:last-child):after {
    content: " /";
  }

  .movie-list {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .movie-list__item {
    -ms-flex: 0 0 48%;
    -webkit-flex: 0 0 48%;
    flex: 0 0 48%;
    margin: 30px 0 0;
  }

  .movie-list__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  body.large {
    font-size: 1.25em;
  }

  article,
  section {
    margin: 80px auto;
  }

  article section,
  section section {
    margin: 60px auto;
  }

  th,
  td {
    padding: 20px 40px;
  }

  h2 {
    font-size: 1.5rem;
  }

  h3 {
    font-size: 1.25rem;
  }

  .link {
    margin-top: 6vw;
  }

  .banners {
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    margin-top: 30px;
    margin-bottom: 0;
  }

  .banners-goyomei {
    text-align: left;
  }

  .banners-goyomei > li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    margin: 8px 0;
  }

  .banners-goyomei__goyomei {
    margin: 0 0 0 1em;
  }

  .small-sections {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-right: 3%;
    margin-left: 3%;
  }

  .small-sections__item {
    -ms-flex: 0 0 48%;
    -webkit-flex: 0 0 48%;
    flex: 0 0 48%;
    margin: 30px 0 0;
  }

  .small-sections__item:nth-child(-n+2) {
    margin-top: 0;
  }

  .small-sections__content {
    margin-right: 0;
    margin-left: 0;
  }

  .head-movie.no-movie,
  .no-js .head-movie {
    background-image: url(images/hero.jpg);
  }

  #movie-catch {
    right: 5%;
    font-size: 30px;
    text-shadow: none;
  }

  .hero-text {
    font-size: min(52px, 5.306vw);
  }

  .foot-info {
    height: 310px;
  }

  .foot-office {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 50%;
  }

  .foot-office:before {
    position: absolute;
    top: 0;
    right: 100%;
    width: 88px;
    height: 100%;
    background: #fff;
    background: linear-gradient(to left bottom, #fff 50%, transparent 50%);
    -webkit-transform: skewX(-0.27575rad);
    transform: skewX(-0.27575rad);
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    content: "";
  }

  .foot-office__tagline {
    top: 25px;
    left: 100px;
  }

  .foot-office__link {
    bottom: 30px;
  }

  .organization {
    padding: 40px calc(50% + 40px) 0 40px;
    text-align: inherit;
  }

  .syskenkun {
    text-align: left;
  }

  .syskenkun__caption {
    display: inline-block;
    vertical-align: bottom;
  }

  .foot-link {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: auto;
  }

  .foot-link > a {
    -ms-flex: 0 0 32.0652174%;
    -webkit-flex: 0 0 32.0652174%;
    flex: 0 0 32.0652174%;
    margin: 0 0 0 1.902174%;
  }

  .foot-link > a:nth-child(3n+1) {
    margin-left: 0;
  }

  .foot-link > a:nth-child(n+4) {
    margin-top: 16px;
  }

  .foot-banner {
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 0;
  }

  .foot-nav {
    position: absolute;
    top: 100%;
    right: 20px;
  }

  .foot-nav > li {
    float: left;
    margin-left: 20px;
  }

  .copyright {
    text-align: left;
  }

  .news {
    height: 264px;
  }

  .news__heading {
    position: absolute;
    top: -46px;
    right: 50%;
    bottom: 0;
    width: 628px;
    margin-bottom: 0;
    padding: 20px 46px 0 0;
    background: url(images/bg_news.png) no-repeat 100% 0;
    text-align: right;
  }

  .news__content {
    padding: 40px 40px 0 calc(50% + 50px);
  }

  .news__link {
    margin-top: 10px;
    text-align: right;
  }

  .csr__heading {
    font-size: 1.5em;
  }

  .topics-wrap {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
  }

  .topics-part {
    -ms-flex: 0 0 23.958334%;
    -webkit-flex: 0 0 23.958334%;
    flex: 0 0 23.958334%;
    margin: 0 0 0 1.38889%;
  }

  .topics-part:first-child {
    margin-left: 0;
  }

  .contactbox__heading {
    font-size: 18px;
  }

  .greeting-message__photo {
    float: left;
    margin: 0 20px 20px 0;
  }

  .philosophy-text {
    padding: 30px;
  }

  .philosophy-text--quality {
    font-size: 29px;
  }

  .office-area-selector {
    -ms-flex-wrap: none;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding: 0 10px;
    font-size: 16px;
  }

  .office-area-selector > li {
    width: auto;
  }

  .office-area-selector a {
    padding: 10px;
    border: 0;
    border-radius: 3px 3px 0 0;
  }

  .office-selector {
    padding: 0;
  }

  .office-selector a {
    padding: 16px 0;
    font-size: 17px;
  }

  .office-selector [aria-selected=true]::before {
    width: 14px;
    height: 14px;
    margin-top: -7px;
  }

  .office {
    padding-top: 50px;
  }

  .office__name {
    float: left;
    margin: 0 36px 0 0;
  }

  .office__contact {
    margin-top: 0;
  }

  .office-map {
    margin-top: 50px;
  }

  .plan-list {
    font-size: 1.125em;
  }

  .business-menu__list {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .business-menu__item {
    -ms-flex: 0 0 47.5%;
    -webkit-flex: 0 0 47.5%;
    flex: 0 0 47.5%;
    margin: 0;
  }

  .tagline--business {
    font-size: 34px;
  }

  .tagline--business > span > span {
    display: inline;
  }

  .featured-section__heading {
    font-size: 29px;
  }

  .featured-image {
    margin-bottom: 20px;
  }

  .boxes {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding-right: 3%;
    padding-left: 3%;
  }

  .boxes__item {
    width: 48%;
  }

  .boxes__item:nth-child(n+3) {
    margin-top: 30px;
  }

  .boxes__image,
  .boxes__text {
    max-width: 350px;
    margin-right: auto;
    margin-left: auto;
  }

  .pipe-points {
    display: table;
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
  }

  .pipe-point {
    display: table-cell;
  }

  .comparison {
    display: table;
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
  }

  .comparison__item {
    display: table-cell;
    width: 50%;
  }

  .comparison__content {
    padding: 6%;
  }

  .comparison__tagline > span,
  .comparison__tagline--note > span {
    display: block;
  }

  .sprinex-spec {
    padding: 30px;
  }

  .environment-points {
    width: 694px;
    height: 742px;
    margin: 88px auto 280px;
    padding: 0;
    background: url(images/bg_environment.svgz) no-repeat 50% 50%;
  }

  .environment-point {
    position: absolute;
    width: 14em;
    margin: 0;
  }

  .environment-point--1 {
    top: 88px;
    left: 0;
  }

  .environment-point--2 {
    float: right;
    top: -64px;
    right: -1.5em;
  }

  .environment-point--3 {
    top: 585px;
    left: 0;
  }

  .environment-point--4 {
    top: 464px;
    right: 0;
  }

  .environment-point__heading {
    width: 124px;
    height: 0;
    overflow: hidden;
    padding: 138px 0 0 0;
    border: 0;
    background: url(images/environment_point.png) no-repeat 0 0;
  }

  .environment-point--2 > .environment-point__heading {
    background-position: 0 -140px;
  }

  .environment-point--3 > .environment-point__heading {
    background-position: 0 -280px;
  }

  .environment-point--4 > .environment-point__heading {
    background-position: 0 -420px;
  }

  .environment-point__list dt {
    font-family: "FP-HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
    font-weight: 400;
    font-size: 1.3125em;
  }

  .nsc__heading {
    font-size: 30px;
    margin-bottom: 40px;
  }

  .nsc__heading > abbr {
    display: inline-block;
    vertical-align: text-bottom;
    line-height: 1.0625;
    font-size: 1.6em;
  }

  .nsc__heading > abbr::before {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .tagline--nsc {
    font-size: 2em;
  }

  .support-plans {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .support-plans > section {
    margin: 0;
    width: 49%;
  }

  .support-plans > section:nth-child(n+3) {
    margin-top: 20px;
  }

  .support-plan {
    font-size: 1em;
  }

  .product-lineup__item {
    font-size: 0.8125em;
  }

  .product-lineup__item > a {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    min-height: 140px;
    padding: 10px 10px 34px 190px;
  }

  .product-lineup__item img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    width: 160px;
    height: 120px;
    margin: auto;
  }

  .product-usage-images {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }

  .product-usage-image {
    display: block;
    -ms-flex: 0 0 30%;
    -webkit-flex: 0 0 30%;
    flex: 0 0 30%;
    margin-left: 5%;
    text-align: center;
  }

  .product-usage-image:nth-child(n+2) {
    margin-top: 0;
  }

  .product-usage-image:nth-child(3n+1) {
    margin-left: 0;
  }

  .product-usage-image--large {
    -ms-flex: 0 0 45%;
    -webkit-flex: 0 0 45%;
    flex: 0 0 45%;
    margin: 0 2.5%;
  }

  .product-usage-image--large:nth-child(3n+1) {
    margin-left: 2.5%;
  }

  .product-usage-image > img {
    width: auto;
    margin: 0;
  }

  .product-usage-image__caption {
    display: block;
    margin-top: 5px;
  }

  .product-list {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .product-list__item {
    display: inherit;
    width: 48.89%;
  }

  .product-list__item:nth-child(-n+2) {
    margin-top: 0;
  }

  .product-list__image {
    -ms-flex: 46%;
    -webkit-flex: 46%;
    flex: 46%;
    -webkit-align-self: center;
    align-self: center;
    margin: 0;
  }

  .product-list__content {
    display: inherit;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    -ms-flex: 48%;
    -webkit-flex: 48%;
    flex: 48%;
    min-width: 168px;
  }

  .product-list__link {
    margin-top: auto;
  }

  .product-images {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .product-images__image {
    -ms-flex: 0 0 51.25%;
    -webkit-flex: 0 0 51.25%;
    flex: 0 0 51.25%;
    margin: 0;
  }

  .product-images__movie {
    -ms-flex: 0 0 42.5%;
    -webkit-flex: 0 0 42.5%;
    flex: 0 0 42.5%;
    margin: 0;
  }

  .ir-header {
    height: 300px;
  }

  .ir-tagline {
    font-size: 37px;
  }

  .ir-category-archives {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .ir-category-archives > section {
    width: 48%;
    margin: 0;
  }

  .ir-category-archives > section:nth-child(n+3) {
    margin-top: 40px;
  }

  .ir {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
  }

  .ir__title,
  .ir__content {
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    border: solid #e6e6e6;
    border-width: 0 1px 1px 0;
  }

  .ir__title {
    -ms-flex: 0 0 26%;
    -webkit-flex: 0 0 26%;
    flex: 0 0 26%;
    text-align: center;
  }

  .ir__content {
    font-size: 1em;
  }

  .ir-document {
    padding-right: 20px;
    padding-left: calc(5.8em + 40px);
  }

  .ir-document:last-child {
    border: 0;
  }

  .ir-document__date {
    position: absolute;
    left: 20px;
  }

  .sales-offices {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .sales-office {
    width: 48.89%;
    padding: 15px 20px;
  }

  .sales-office:nth-child(-n+2) {
    margin-top: 0;
  }

  .certification-mark {
    float: left;
    width: 50%;
    margin: 0;
    padding-right: 20px;
  }

  .certification-mark + .management-system-info {
    float: right;
    width: 50%;
  }

  .management-concept__text {
    padding-top: 40px;
    padding-bottom: 40px;
    font-size: 36px;
  }

  .management-goal__heading {
    padding: 0;
    font-size: 1.4375em;
  }

  .management-goal__footline {
    font-size: 1.4375em;
    text-align: center;
  }

  .management-goal__footline > span {
    display: block;
  }

  .contact-tel {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    text-align: left;
  }

  .contact-tel__note {
    margin: 0 0 0 40px;
  }

  .graph--safety-banner {
    margin: 2em 0;
  }

  .text-width-image {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .text-width-image__image {
    -ms-flex: 0 0 40%;
    -webkit-flex: 0 0 40%;
    flex: 0 0 40%;
    margin: 0;
  }

  .text-width-image__text {
    -ms-flex: 0 0 51.25%;
    -webkit-flex: 0 0 51.25%;
    flex: 0 0 51.25%;
  }

  .partner-list {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .partner-list > li {
    -ms-flex: 0 0 32%;
    -webkit-flex: 0 0 32%;
    flex: 0 0 32%;
    margin: 0 0 0 2%;
  }

  .partner-list > li:nth-child(3n+1) {
    margin-left: 0;
  }

  .partner-list > li:nth-child(n+4) {
    margin-top: 16px;
  }

  .partner-list a {
    padding: 12px 8px;
    font-size: 13px;
  }

  .post-list > li {
    position: relative;
    padding-right: 20px;
    padding-left: 11.25em;
    padding-left: calc(10em + 20px);
  }

  .post-list time {
    position: absolute;
    left: 20px;
    font-size: 1em;
  }

  .entry-header {
    padding-left: 60px;
  }

  .date-badge {
    top: -5px;
  }

  .date-badge__date {
    display: block;
    font-size: 30px;
  }

  .date-badge__month {
    display: block;
    font-size: 15px;
  }

  .entry-footer {
    padding-right: 20px;
    padding-left: 20px;
  }

  .entry-content {
    padding: 20px;
  }

  .alignleft {
    float: left;
    margin: 0 1em 0 0;
  }

  .alignright {
    float: right;
    margin: 0 0 0 1em;
  }

  .post-list--search > li {
    padding: 20px;
  }

  .form-group {
    padding: 15px 0;
  }

  .form-group > div,
  .form-group > span {
    float: left;
    width: 70%;
  }

  .control-label {
    float: left;
    width: 30%;
    margin: 0;
    padding: 5px;
  }

  .wpcf7-radio,
  .wpcf7-checkbox {
    padding: 5px 0;
  }

  .banner-slider .slick-slide {
    margin: 0 10px;
  }

  .banner-slider .slick-slide img {
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    transition: 0.8s;
  }

  .banner-slider .slick-slide:not(.slick-center) img {
    -webkit-transform: scale(0.85);
    transform: scale(0.85);
  }

  .banner-slider .slick-center + .slick-slide img {
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
  }

  .photo-slide__caption {
    font-size: 16px;
  }
}

@media screen and (min-width: 783px) {
  .admin-bar .head-movie {
    height: calc(100vh - 32px);
  }
}

@media screen and (min-width: 800px) {
  h2,
  h3,
  h4 {
    margin-right: auto;
    margin-left: auto;
  }

  h5 {
    padding-right: 0;
    padding-left: 1em;
  }

  h5:before {
    left: 0;
  }

  h6 {
    padding-right: 0;
    padding-left: 0;
  }

  .content,
  .navigation,
  .no-posts,
  .sales-offices,
  .ir-category-archives,
  .support-plans,
  .pipe-points {
    padding-right: 0;
    padding-left: 0;
  }

  .link {
    margin-top: 48px;
  }

  .small-sections {
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
  }

  .contactbox {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px;
  }

  .contactbox--fixed {
    position: fixed;
    right: 0;
    bottom: 40px;
    left: 0;
    z-index: 500;
    background: rgba(255, 255, 255, 0.85);
  }
}

@media screen and (min-width: 980px) {
  a[href^="tel:"] {
    text-decoration: inherit;
  }

  ol.document-list {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  ol.document-list > li {
    width: calc(48% - 2em);
    margin-left: 2em;
  }

  .site-header {
    min-height: 200px;
  }

  .site-header-content {
    grid-template-areas: ". logo ." "search logo resizer" ". logo .";
    grid-template-columns: 1fr auto 1fr;
    grid-template-rows: 20px auto 1fr;
    align-items: flex-start;
  }

  .home .site-header-content {
    grid-template-areas: "logo . ." "search . resizer" ". . .";
    grid-template-columns: auto 1fr auto;
    grid-template-rows: repeat(3, auto);
    gap: 0.5em 0;
  }

  .site-title {
    width: 174px;
    margin: auto;
  }

  .site-title > a {
    width: auto;
    padding: 37px;
  }

  #movie-catch {
    top: 35%;
  }

  .global-nav__item {
    width: 13.5%;
  }

  .global-nav__item:nth-last-child(3) {
    margin-left: auto;
  }

  .home .global-nav__item:nth-last-child(3) {
    margin-left: 0;
  }

  .global-nav {
    display: block;
    grid-column: 1/-1;
    grid-row: 3;
    margin-top: 1em;
    font-size: 16px;
  }

  .home .global-nav__item {
    flex: 1;
    width: auto;
  }

  .global-nav__child {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: -1;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    visibility: hidden;
    opacity: 0;
    margin: 0;
    padding: 102px 0 30px;
    box-shadow: 0 1px rgba(0, 0, 0, 0.1);
    background: #005eae;
    background: rgba(0, 94, 174, 0.95);
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    transition: 0.3s;
  }

  .global-nav__child::before,
  .global-nav__child::after {
    position: absolute;
    top: 0;
    bottom: 0;
    width: calc((100vw - 100%) / 2 + 20px);
    box-shadow: inherit;
    background: inherit;
    content: "";
  }

  .global-nav__child::before {
    right: 100%;
  }

  .global-nav__child::after {
    left: 100%;
  }

  .ie .global-nav__child::before,
  .ie .global-nav__child::after {
    content: none;
  }

  .home .global-nav__child {
    background: linear-gradient(rgba(0, 94, 174, 0), rgba(0, 94, 174, 0.95));
  }

  .global-nav__child > li {
    width: 50%;
    border-width: 0 0 1px;
  }

  .global-nav__child > li:first-child,
  .global-nav__child > li:nth-child(2) {
    border-top-width: 1px;
  }

  .global-nav__child a {
    display: block;
    padding: 20px;
    text-decoration: none;
  }

  .global-nav__child a:hover,
  .global-nav__child a:focus {
    color: #fcee21;
  }

  .global-nav__item:hover > .global-nav__child {
    z-index: 1000;
    height: auto;
    visibility: visible;
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }

  .toggle-menu {
    display: none;
  }

  .toggle-child {
    display: none;
  }

  .page-heading {
    margin-top: 30px;
  }

  .head-news {
    top: 0;
    bottom: auto;
    left: 174px;
    width: 746px;
    height: 174px;
    margin: 0 auto;
    padding: 0.5em 1em 0.5em 1.25em;
    border-width: 0 1px 1px 0;
    background: transparent;
    font-size: 1em;
  }

  .hero-text {
    margin-top: 87px;
  }

  .foot-office {
    width: 628px;
  }

  .foot-office:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: calc((100vw - 1120px) / 2);
    background: linear-gradient(#73a6d2 50%, #72a7d3 75%, #67a2ce);
    content: "";
  }

  .foot-office__link {
    width: 71%;
  }

  .organization {
    padding-right: 508px;
  }

  .site-content {
    padding-top: 50px;
  }

  .news__heading:before {
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 0;
    width: calc((100vw - 1120px) / 2);
    background: linear-gradient(to top, #73a6d2 50%, #72a7d3 75%, #67a2ce);
    content: "";
  }

  .news__content {
    padding-left: 518px;
  }

  .topics-wrap {
    padding-right: 0;
    padding-left: 0;
  }

  .greeting-message > .paragraph {
    overflow: hidden;
  }

  .greeting-message__photo {
    margin-right: 60px;
  }

  .office-area-selector {
    padding: 0;
  }

  .business-menu__image {
    transition: inherit;
  }

  .business-menu__link:hover .business-menu__image,
  .business-menu__link:focus .business-menu__image {
    opacity: 0.65;
  }

  .sales-office {
    padding-right: 30px;
    padding-left: 30px;
  }

  .sales-office__name {
    margin-left: -1em;
  }

  .partner-list a {
    font-size: 14px;
  }

  .partner-list a:hover,
  .partner-list a:focus {
    background: #265EA8;
    color: #fff;
  }

  .post {
    margin-right: auto;
    margin-left: auto;
  }

  .site-header-content,
  .site-footer-content,
  .copyright,
  .not-found,
  .breadcrumbs > ol,
  .csr-list,
  .page__title,
  [role=tablist],
  .office,
  .boxes,
  .boxes__item,
  .archive__title {
    padding-right: 0;
    padding-left: 0;
  }
}

@media screen and (min-width: 1200px) {
  .sidebar {
    position: absolute;
    top: 50px;
    left: 0;
    z-index: 100;
    max-width: 15.625%;
    margin: 0;
    padding: 0;
    border-top: 0;
  }

  .sidebar.fixed {
    position: fixed;
  }

  .logged-in .sidebar.fixed {
    top: 52px;
  }

  .page-nav {
    display: block;
    margin-left: 0;
  }

  .page-nav__item {
    margin-left: 0;
    margin-right: 0;
  }

  .page-nav__item:before {
    content: none;
  }

  .page-nav__item:nth-child(n+2) {
    margin-top: 8px;
  }

  .page-nav__item a {
    display: block;
    position: relative;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
    padding: 4px 12px;
    background: #e6e6e6;
    text-decoration: none;
  }

  .page-nav__item a:hover,
  .page-nav__item a:focus {
    margin-right: -12px;
    padding-left: 24px;
  }

  .page-nav__item.current > a {
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2), -6px 0 #005eae inset;
  }

  .page-nav__child {
    display: block;
    margin: 4px 12px 0 0;
  }

  .page-nav__child > li {
    margin: 0;
  }

  .page-nav__child > li:nth-child(n+2) {
    margin-top: 4px;
  }

  .page-nav__child a {
    background: #f3f3f3;
  }

  .page-nav .children {
    margin: 5px 12px 0 0;
  }

  .page-nav .children .page-nav__item {
    margin: 4px 0;
  }

  .breadcrumbs {
    margin-top: 100px;
    font-size: 1em;
  }
}

@media screen and (min-width: 1280px) {
  .page-office .breadcrumbs {
    margin-top: 1px;
  }

  .office-map {
    margin-right: -180px;
    margin-left: -180px;
  }

  iframe.sinple-box-external-iframe {
    width: 960px;
  }
}

@media screen and (min-width: 1281px) {
  #movie-catch {
    right: 12.5%;
  }
}

@media screen and (max-width: 767px) {
  .tagline > span {
    display: inline-block;
  }

  .break-sp:before {
    white-space: pre;
    content: "\a";
  }
}

@media screen and (max-width: 479px) {
  .company-profile {
    display: block;
    width: auto;
  }

  .company-profile > tbody,
  .company-profile tr,
  .company-profile th,
  .company-profile td {
    display: inherit;
    width: 100%;
  }

  .company-profile th {
    margin: -1px 0;
  }

  .company-history {
    display: block;
    width: auto;
    overflow: visible;
  }

  .company-history > tbody,
  .company-history tr,
  .company-history th,
  .company-history td {
    display: inherit;
    width: 100%;
  }

  .company-history th,
  .company-history td {
    margin: 0 0 -1px;
  }

  .company-history__year {
    background: #e6e6e6;
  }

  .executive-list {
    display: block;
    width: auto;
  }

  .executive-list > tbody,
  .executive-list tr,
  .executive-list th,
  .executive-list td {
    display: inherit;
    width: 100%;
  }

  .executive-list > thead {
    display: none;
  }

  .executive-list tr {
    overflow: hidden;
    margin-top: 20px;
  }

  .executive-list th {
    float: left;
    width: auto;
    margin-right: 1em;
    padding: 0;
    border: 0;
    text-align: left;
  }

  .executive-list th + td {
    float: left;
    width: auto;
    padding: 0;
    border: 0;
  }

  .executive-list td:last-child {
    clear: both;
    padding: 5px 1em;
    border-bottom-style: double;
    border-bottom-width: 3px;
  }

  .executive-list td:empty {
    padding: 0;
    border-top: 0;
  }
}

@media print {
  body {
    min-width: 984px;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  figcaption {
    page-break-after: avoid;
    page-break-inside: avoid;
  }

  blockquote,
  figure,
  table {
    page-break-inside: avoid;
  }
}