@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:400,700");

/*clearfix*/
.clearfix::after, .archiveList::after, .docBlock .docBlock__column::after, .multiColumn::after, .multiColumn2::after, .multiColumn3::after {
  clear: both;
  content: "";
  display: table;
}

.clearfixLegacy {
  _overflow: visible;
  _height: 1px;
  zoom: 1;
}

.clearfixLegacy:after {
  content: ".";
  display: block;
  visibility: hidden;
  clear: both;
  height: 0px;
  font-size: 0px;
}

/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 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;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a 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.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-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 on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 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 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

*, *:before, *:after {
  box-sizing: border-box;
}

/*--------------------basic settings---------------------*/
html {
  font-size: 10px;
  height: 100%;
}

body {
  font-family: Meiryo, \30d2 \30e9 \30ae \30ce \89d2 \30b4 \20 \50 \72 \6f \20 \57 \33, Hiragino Kaku Gothic Pro, sans-serif;
  font-size: 1.4rem;
  font-weight: 300;
  color: #333;
  line-height: 2.14286;
  letter-spacing: 0.075em;
  text-align: left;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  margin: 0 auto;
  height: 100%;
  position: relative;
}

@media all and (max-width: 768px) {
  body {
    padding-top: 0;
  }
}

@media print {
  body {
    line-height: 1.5;
    height: auto;
  }
}

body.js-toggle-active {
  overflow: hidden;
}

/*-----heading-----*/
h1, h2, h3, h4, h5, h6 {
  font-size: 1.6rem;
  margin: 0;
  font-weight: 400;
}

/*-----paragraph-----*/
p {
  margin: 0;
}

/*-----lists-----*/
ul, ol, dl, dl dt, dl dd {
  list-style: none;
  margin: 0;
  padding: 0;
}

dl dt {
  font-weight: bold;
}

@media all and (max-width: 768px) {
  dl dt:not(:first-child) {
    margin-top: 16px;
  }
}

@media all and (min-width: 769px) {
  dl dt:not(:first-child) {
    margin-top: 32px;
  }
}

/*-----table-----*/
table {
  border-collapse: separate;
  border-spacing: 0;
}

/*-----horizontal line-----*/
hr {
  border: 0;
  border-top: 1px solid #ccc;
  display: block;
  margin: 20px 0 0;
  padding: 0;
  height: 0;
}

/*-----quote-----*/
blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}

blockquote {
  margin: 1.5em 1em;
}

/*-----anchor-----*/
a {
  color: #025fae;
  text-decoration: none;
  word-break: break-all;
  transition: .5s;
}

a:visited {
  color: #025fae;
}

a:hover {
  color: #025fae;
  cursor: pointer;
  opacity: 0.7;
}

a[target="_blank"]:not(.no-icon):not(.forIE)::after {
  font-family: "rn-iconfont";
  font-size: 1.0rem;
  vertical-align: 1px;
  text-indent: 0;
  content: "\E005";
  display: inline-block;
  margin-right: 0.5em;
  margin-left: 0.5em;
}

@media print {
  a[target="_blank"]:not(.no-icon)::after {
    content: none;
  }
}

html[lang="en"] a {
  word-break: normal;
}

/*-----strong/emphasis-----*/
strong, b {
  font-weight: bold;
}

em {
  font-style: normal;
}

/*-----mark-----
mark{
	background-color: #ff9;
	font-style: italic;
	font-weight: bold;
	color: #000;
}*/
/*-----insert/delete-----
ins{
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}
del{ text-decoration: line-through;}*/
/*-----abbreviation/acronym/definition-----*/
abbr[title], acronym[title], dfn[title] {
  text-decoration: underline;
  border-bottom: 0;
  cursor: help;
}

/*-----preformatted text-----*/
code, kbd, pre, samp {
  font-size: 1.6rem;
}

pre {
  background-color: #f2f2f2;
  box-sizing: border-box;
  margin: 0;
  padding: 8px 2em;
}

/*-----small-----*/
small {
  font-size: 1.6rem;
}

/*-----address-----*/
address {
  font-style: normal;
}

/*-----image-----*/
img {
  font-family: sans-serif;
  line-height: 1;
  vertical-align: bottom;
  border: none;
  -ms-interpolation-mode: bicubic;
  max-width: 100%;
}

/*-----figure-----*/
figure {
  margin: 0;
}

/*-----media-----*/
embed,
iframe,
object,
video {
  max-width: 100%;
}

/*-----form parts-----*/
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="checkbox"],
input[type="radio"],
input[type="submit"],
input[type="image"],
input[type="button"],
input[type="reset"],
textarea,
select,
button {
  font-family: Meiryo, \30d2 \30e9 \30ae \30ce \89d2 \30b4 \20 \50 \72 \6f \20 \57 \33, Hiragino Kaku Gothic Pro, sans-serif;
  font-size: 1.6rem;
  line-height: 2.14286;
  vertical-align: middle;
  margin: 8px 0;
}

input[type="file"] {
  font: static;
}

/*-----debug-----*/
.debugHeading, .debugHeading2 {
  background-color: #fc3;
  margin: 16px 0;
  padding: 8px;
}

.debugHeading:first-child, .debugHeading2:first-child {
  margin-top: 0;
}

.debugHeading2 {
  background-color: #ff6;
}

.debugImgBlock {
  color: #fff;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  background-color: #ccc;
  display: inline-block;
}

/*--------------------structure setting---------------------*/
/*----------html----------*/
/*----------body----------*/
/*----------pageWrapper----------*/
@media all and (min-width: 769px) {
  .pageWrapper {
    min-width: 1360px;
  }
}

/*----------pageHeader----------*/
.pageHeader {
  background: #fff;
  position: fixed;
  top: 0;
  z-index: 999;
  width: 100%;
}

@media all and (min-width: 769px) {
  .pageHeader {
    min-width: 1360px;
  }
}

@media all and (max-width: 768px) {
  .pageHeader {
    border-bottom: 1px solid #b9c4cd;
    box-shadow: 0 2px 3px #ebebeb;
    z-index: 1001;
  }
}

.pageHeader .pageHeader__content {
  margin: 0 auto;
  padding: 17px 21px 17px 27px;
  width: 1360px;
}

@media all and (max-width: 768px) {
  .pageHeader .pageHeader__content {
    padding: 0 10px;
    width: 100%;
  }
}

.pageHeader .pageHeader__content .pageHeader__contentInner {
  display: flex;
  justify-content: space-between;
}

@media all and (max-width: 768px) {
  .pageHeader .pageHeader__content .pageHeader__contentInner {
    display: block;
  }
}

@media all and (max-width: 768px) {
  .pageHeader .pageHeader__content .pageHeader__function {
    display: none;
  }
}

.pageHeader .pageHeader__content .pageHeader__logo {
  line-height: 0;
  padding: 6px 0;
  width: 603px;
}

/* .pageHeader .pageHeader__content .pageHeader__logo.pageHeader__logo--en {
  width: 449px;
} */
.pageHeader .pageHeader__content .pageHeader__logo a {
  display: block;
}

.pageHeader .pageHeader__content .pageHeader__logo img {
  vertical-align: top;
  max-width: 100%;
  height: auto;
}

@media all and (max-width: 768px) {
  .pageHeader .pageHeader__content .pageHeader__logo {
    display: flex;
    padding: 13px 0 12px;
    width: auto;
  }

  .pageHeader .pageHeader__content .pageHeader__logo img {
    width: auto;
    height: 24px;
  }
}

.pageHeader .langSelect {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 9px;
}

.pageHeader .langSelect .langSelect__item {
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  line-height: 1.83333;
  margin-left: 25px;
}

.pageHeader .langSelect .langSelect__item a {
  color: #333;
  display: block;
}

.pageHeader .langSelect .langSelect__item.langSelect__item--en img, .pageHeader .langSelect .langSelect__item.langSelect__item--ww img {
  line-height: 1;
  margin-right: 10px;
  width: auto;
}

.pageHeader .langSelect .langSelect__item.langSelect__item--en img {
  height: 22px;
}

.pageHeader .langSelect .langSelect__item.langSelect__item--ww img {
  margin-top: 2px;
  margin-bottom: 2px;
  height: 18px;
}

.pageHeader .pageHeader__modalSwitch {
  border: none;
  background-color: #fff;
  position: absolute;
  right: 50px;
  top: 0;
  margin: 0;
  padding: 0;
  width: 50px;
  height: 49px;
}

@media all and (min-width: 769px) {
  .pageHeader .pageHeader__modalSwitch {
    display: none;
  }
}

.pageHeader .pageHeader__modalSwitch i {
  color: #000;
}

.pageHeader .pageHeader__modalSwitch i::before {
  font-size: 2.0rem;
  vertical-align: middle;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.pageHeader .pageHeader__menuSwitch {
  border: none;
  background: #025fae;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 104;
  margin: 0;
  width: 50px;
  height: 49px;
}

@media all and (min-width: 769px) {
  .pageHeader .pageHeader__menuSwitch {
    display: none;
  }
}

.pageHeader .pageHeader__menuSwitch:focus {
  outline: none;
}

.pageHeader .pageHeader__menuSwitch span.pageHeader__menuSwitchIcon {
  background: #fff;
  display: block;
  position: relative;
  margin: 0 auto;
  width: 27px;
  height: 1px;
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.pageHeader .pageHeader__menuSwitch span.pageHeader__menuSwitchIcon::before, .pageHeader .pageHeader__menuSwitch span.pageHeader__menuSwitchIcon::after {
  background: #fff;
  content: "";
  display: block;
  position: absolute;
  height: 1px;
  width: 100%;
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.pageHeader .pageHeader__menuSwitch span.pageHeader__menuSwitchIcon::before {
  top: -8px;
}

.pageHeader .pageHeader__menuSwitch span.pageHeader__menuSwitchIcon::after {
  top: 8px;
}

@media all and (min-width: 769px) {
  .pageHeader .globalNav {
    border-top: 1px solid #c1c1c1;
    box-shadow: 0 2px 3px #ebebeb;
  }
}

@media all and (max-width: 768px) {
  .pageHeader .globalNav {
    background-color: #fff;
    display: none;
    position: absolute;
    top: 0;
    width: 100%;
    height: auto;
  }
}

@media all and (min-width: 769px) {
  .pageHeader .globalNav ul.globalNav__mainMenu {
    display: flex;
    justify-content: space-around;
    margin: 0 auto;
    width: 1200px;
  }
}

@media all and (min-width: 769px) {
  .pageHeader .globalNav ul.globalNav__mainMenu>li {
    flex-grow: 1;
    max-width: 20%;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li:hover>a::after, .pageHeader .globalNav ul.globalNav__mainMenu>li.globalNav--active>a::after {
    opacity: 1;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li:hover .dropdownContent, .pageHeader .globalNav ul.globalNav__mainMenu>li.globalNav--active .dropdownContent {
    visibility: visible;
    top: 100%;
    z-index: 10;
    opacity: 1;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li:first-child>a>span::before {
    background: #c1c1c1;
    content: '';
    position: absolute;
    top: 1.1rem;
    width: 1px;
    height: 13px;
    left: 0;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li>a {
    font-size: 1.4rem;
    line-height: 2.57143;
    color: #333;
    text-align: center;
    display: block;
    position: relative;
    padding: 7px 0;
    height: 100%;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li>a:hover {
    text-decoration: none;
    opacity: 1;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li>a::after {
    border: 5px solid transparent;
    border-bottom: 6px solid rgba(12, 100, 175, 0.95);
    content: '';
    visibility: visible;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    transition: opacity .5s;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li>a>span {
    display: block;
    position: relative;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li>a>span::after {
    background: #c1c1c1;
    content: '';
    position: absolute;
    top: 1.1rem;
    width: 1px;
    height: 13px;
    right: 0;
  }
}

@media all and (min-width: 769px) and (min-width: 769px) {
  .pageHeader .globalNav ul.globalNav__mainMenu>li.globalNav__item--current>a {
    color: #025fae;
    font-weight: bold;
  }
}

@media all and (max-width: 768px) {
  .pageHeader .globalNav ul.globalNav__mainMenu>li {
    border-top: 1px solid #dadada;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li>a {
    font-size: 1.8rem;
    line-height: 1.66667;
    color: #333;
    text-align: left;
    display: block;
    position: relative;
    padding: 19px 25px 19px 45px;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li>a:hover {
    opacity: 1;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li.globalNav__item--langSelect {
    font-size: 1.3rem;
    line-height: 1.38462;
    padding: 16px 50px 29px 23px;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li.globalNav__item--langSelect>a {
    font-size: 1.3rem;
    line-height: 1.38462;
    display: inline;
    padding: 0;
  }

  .pageHeader .globalNav ul.globalNav__mainMenu>li .icon {
    font-size: 2.0rem;
    color: #025fae;
    position: absolute;
    top: 50%;
    right: 25px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

.pageHeader .globalNav ul.globalNav__subMenu::after {
  clear: both;
  content: "";
  display: table;
}

@media all and (min-width: 769px) {
  .pageHeader .globalNav ul.globalNav__subMenu {
    width: 100%;
  }
}

@media all and (max-width: 768px) {
  .pageHeader .globalNav ul.globalNav__subMenu {
    background: #f6f6f6;
  }
}

.pageHeader .globalNav ul.globalNav__subMenu li {
  font-size: 1.4rem;
  line-height: 1.42857;
  float: left;
  padding: 8px 0;
  width: 33.333%;
}

@media all and (max-width: 768px) {
  .pageHeader .globalNav ul.globalNav__subMenu li {
    font-size: 1.6rem;
    line-height: 1.875;
    border-top: 1px solid #dadada;
    float: none;
    padding: 0;
    width: 100%;
  }
}

.pageHeader .globalNav ul.globalNav__subMenu li a {
  color: #fff;
  position: relative;
  display: inline-block;
  padding: 0 0 0 15px;
}

.pageHeader .globalNav ul.globalNav__subMenu li a::before {
  background: url("/assets/img/dropdownContent/arrow.png") 0 50% no-repeat;
  content: "";
  display: block;
  position: absolute;
  top: 0.57895rem;
  left: 0;
  width: 5px;
  height: 8px;
}

@media all and (max-width: 768px) {
  .pageHeader .globalNav ul.globalNav__subMenu li a {
    color: #333;
    display: block;
    padding: 16px 25px 16px 65px;
  }

  .pageHeader .globalNav ul.globalNav__subMenu li a::before {
    content: none;
  }
}

.pageHeader .dropdownContent {
  color: #fff;
  visibility: hidden;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  transition: .5s;
  width: 1360px;
  opacity: 0;
}

@media all and (max-width: 768px) {
  .pageHeader .dropdownContent {
    background: transparent;
    visibility: visible;
    position: static;
    -webkit-transform: none;
    transform: none;
    width: 100%;
    height: auto;
    opacity: 1;
  }
}

.pageHeader .dropdownContent .dropdownContent__column2 {
  display: flex;
}

@media all and (max-width: 768px) {
  .pageHeader .dropdownContent .dropdownContent__column2 {
    display: block;
  }
}

.pageHeader .dropdownContent .dropdownContent__column2 .dropdownContent__col1,
.pageHeader .dropdownContent .dropdownContent__column2 .dropdownContent__col2 {
  display: flex;
  min-height: 162px;
}

.pageHeader .dropdownContent .dropdownContent__column2 .dropdownContent__col1 {
  background: rgba(2, 65, 153, 0.95);
  flex-direction: column;
  justify-content: center;
  padding: 15px 40px 9px;
  width: 23.4375%;
}

@media all and (max-width: 768px) {
  .pageHeader .dropdownContent .dropdownContent__column2 .dropdownContent__col1 {
    display: none;
  }
}

.pageHeader .dropdownContent .dropdownContent__column2 .dropdownContent__col2 {
  align-items: center;
  background: rgba(12, 100, 175, 0.95);
  padding: 4px 0 4px 59px;
  width: 76.5625%;
}

@media all and (max-width: 768px) {
  .pageHeader .dropdownContent .dropdownContent__column2 .dropdownContent__col2 {
    display: block;
    padding: 0;
    width: auto;
    min-height: 0;
  }
}

.pageHeader .dropdownContent .dropdownContent__heading {
  font-family: "Roboto", sans-serif;
  font-size: 2.2rem;
  line-height: 1.27273;
  margin-bottom: 3px;
}

@media all and (max-width: 768px) {
  .pageHeader .dropdownContent .dropdownContent__heading {
    display: none;
  }
}

.pageHeader .dropdownContent .dropdownContent__heading .dropdownContent__subHeading {
  font-size: 1.4rem;
  line-height: 2.28571;
  display: block;
}

@media all and (max-width: 768px) {
  .pageHeader .dropdownContent .dropdownContent__heading .dropdownContent__subHeading {
    display: none;
  }
}

.pageHeader.js-toggle-active .pageHeader__menuSwitch.js-toggle-open {
  background: transparent;
}

.pageHeader.js-toggle-active .pageHeader__menuSwitch.js-toggle-open span.pageHeader__menuSwitchIcon {
  background: transparent;
  width: 28px;
}

.pageHeader.js-toggle-active .pageHeader__menuSwitch.js-toggle-open span.pageHeader__menuSwitchIcon::before, .pageHeader.js-toggle-active .pageHeader__menuSwitch.js-toggle-open span.pageHeader__menuSwitchIcon::after {
  background: #1f57a5;
  top: 0;
}

.pageHeader.js-toggle-active .pageHeader__menuSwitch.js-toggle-open span.pageHeader__menuSwitchIcon::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.pageHeader.js-toggle-active .pageHeader__menuSwitch.js-toggle-open span.pageHeader__menuSwitchIcon::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.pageHeader.js-toggle-active .globalNav .js-toggleNav-overlay {
  background-color: rgba(0, 0, 0, 0.8);
  position: absolute;
  width: 100%;
  height: 1000%;
}

.pageHeader.js-toggle-active .globalNav .globalNav__inner {
  background-color: #fff;
  overflow: scroll;
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-overflow-scrolling: touch;
}

/*----------pageContent----------*/
/*----------breadcrumbs----------*/
.breadcrumbs {
  max-width: 1200px;
  margin: 13px auto 41px;
}

@media all and (max-width: 768px) {
  .breadcrumbs {
    display: none;
    margin-top: 10px;
    margin-bottom: 20px;
    padding: 0 10px;
  }
}

.breadcrumbs .breadcrumbs__item {
  font-size: 1.2rem;
  color: #6e6e6e;
  display: inline-block;
  padding-left: 5px;
}

.breadcrumbs .breadcrumbs__item:before {
  color: #6e6e6e;
  content: ">";
  padding-right: 5px;
}

.breadcrumbs .breadcrumbs__item:first-child {
  padding-left: 0;
}

.breadcrumbs .breadcrumbs__item:first-child:before {
  content: '';
  padding-right: 0;
}

.breadcrumbs .breadcrumbs__item a {
  color: #025fae;
}

/*----------pageFooter----------*/
.pageFooter {
  border-top: 1px solid #c1c1c1;
}

.pageFooter .pageFooter__inner {
  position: relative;
  padding: 13px 28px 13px 31px;
  margin: 0 auto;
  max-width: 1360px;
}

@media all and (max-width: 768px) {
  .pageFooter .pageFooter__inner {
    padding: 34px 5.8vw;
    max-width: initial;
  }
}

.pageFooter .pageFooter__content {
  display: flex;
  align-items: center;
}

@media all and (max-width: 768px) {
  .pageFooter .pageFooter__content {
    flex-direction: column;
    justify-content: center;
  }
}

.pageFooter .pageFooter__pageTop {
  position: fixed;
  right: 0;
  bottom: 110px;
  z-index: 1000;
  padding: 0;
}

.pageFooter .pageFooter__pageTop .pageTop {
  background: #dadada;
  display: block;
  position: relative;
  margin-left: auto;
  width: 50px;
  height: 50px;
  cursor: pointer;
}

.pageFooter .pageFooter__pageTop .pageTop:before {
  border-right: 8px solid transparent;
  border-bottom: 13.8564px solid #fff;
  border-left: 8px solid transparent;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 15px;
  height: 15px;
}

.pageFooter .pageFooter__link {
  display: flex;
}

@media all and (max-width: 768px) {
  .pageFooter .pageFooter__link {
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 17px;
  }
}

.pageFooter .pageFooter__link li {
  font-size: 1.3rem;
  line-height: 1.625;
}

.pageFooter .pageFooter__link li:not(:first-child)::before {
  font-size: 1.2rem;
  color: #d6d6d6;
  vertical-align: 0.05em;
  content: "|";
  display: inline;
  padding: 0 6px;
}

.pageFooter .pageFooter__link li a {
  color: #333;
}

.pageFooter .pageFooter__link li a:visited {
  color: #333;
}

.pageFooter .pageFooter__link li a:hover {
  color: #025fae;
  opacity: 1;
}

.pageFooter .pageFooter__link li a:hover img {
  opacity: 0.7;
}

@media all and (max-width: 768px) {
  .pageFooter .pageFooter__link li {
    margin-bottom: 4px;
  }
}

.pageFooter .copyright {
  margin-left: auto;
}

@media all and (max-width: 768px) {
  .pageFooter .copyright {
    margin: 0 auto;
  }
}

.pageFooter .copyright small {
  font-family: "Roboto", sans-serif;
  font-size: 1.4rem;
  color: #333;
}

@media all and (max-width: 768px) {
  .pageFooter .copyright small {
    font-size: 1.3rem;
    line-height: 1.625;
  }
}

/*----------companyProfile----------*/
.companyProfile {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media all and (max-width: 768px) {
  .companyProfile {
    display: block;
    justify-content: flex-start;
  }

  .companyProfile li:nth-of-type(n+2) {
    margin-top: 10px;
  }
}

/*-----align-----*/
.align--offset_center {
  text-align: center !important;
}

@media all and (max-width: 768px) {
  .align--offset_center_sp {
    text-align: center;
  }
}

.align--offset_right {
  text-align: right !important;
}

@media all and (max-width: 768px) {
  .align--offset_right_sp {
    text-align: right;
  }
}

.align--offset_left {
  text-align: left !important;
}

.align--position_center {
  margin-left: auto;
  margin-right: auto;
}

.align--position_right {
  margin-left: auto;
  margin-right: 0;
}

.align--position_left {
  margin-left: 0;
  margin-right: auto;
}

.archiveList {
  margin-bottom: 24px;
}

.archiveList li {
  float: left;
}

.archiveList li:not(:first-child)::before {
  content: "｜";
  margin: 0;
}

.archiveList li a {
  font-weight: bold;
}

@media all and (min-width: 769px) {
  .archiveList li.js-newLine {
    clear: left;
  }

  .archiveList li.js-newLine::before {
    content: none;
  }
}

@media all and (max-width: 768px) {
  .archiveList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.arrowBlock {
  margin-bottom: 21px;
}

.arrowBlock .arrowBlock__down_arrow {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  height: 37px;
}

.arrowLink {
  text-decoration: underline;
  margin-right: 6px;
  margin-left: 20px;
}

.arrowLink:hover {
  text-decoration: none;
}

.arrowLink .fa::before {
  font-size: 1.6rem;
  color: #333;
  display: inline-block;
  margin-right: 5px;
}

.attentionBlock {
  max-width: 1200px;
  margin: 45px auto 35px;
  border: 1px solid #c1c1c1;
  padding: 15px 30px;
}

@media all and (max-width: 768px) {
  .attentionBlock {
    width: 88%;
    padding: 15px;
  }
}

.attentionBlock .attentionBlock_list .attentionBlock_list__item {
  line-height: 1.57143;
  display: inline-block;
  position: relative;
  padding-left: 33px;
  margin-bottom: 13px;
}

.attentionBlock .attentionBlock_list .attentionBlock_list__item:last-child {
  margin-bottom: 0;
}

.attentionBlock .attentionBlock_list .attentionBlock_list__item:before {
  font-size: 2.0rem;
  color: #025fae;
  vertical-align: middle;
  position: absolute;
  top: -5px;
  left: 0;
  margin-right: 13px;
}

.attentionBlock .attentionBlock_list .attentionBlock_list__item.icon.icon-exclamation:last-child {
  margin-left: 0;
}

.baseColumn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media all and (max-width: 768px) {
  .baseColumn {
    display: block;
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.heading3+.baseColumn {
  margin-top: -36px;
}

@media all and (max-width: 768px) {
  .heading3+.baseColumn {
    margin-top: -4px;
  }
}

.baseColumn .baseColumn__col--half {
  margin-top: 46px;
  width: 47.13376%;
}

.baseColumn .baseColumn__col--full {
  margin-top: 46px;
  width: 100%;
}

@media all and (max-width: 768px) {
  .baseColumn .baseColumn__col--half {
    width: 100%;
  }
}

.baseColumn .baseNestedColumn {
  display: flex;
  flex-wrap: wrap;
}

@media all and (max-width: 768px) {
  .baseColumn .baseNestedColumn {
    display: block;
  }
}

.baseColumn .baseNestedColumn .baseNestedColumn__col--half {
  margin-top: 29px;
  margin-left: 5.73248%;
  width: 47.13376%;
}

.baseColumn .baseNestedColumn .baseNestedColumn__col--half:nth-child(2n - 1) {
  margin-left: 0;
}

.baseColumn .baseNestedColumn .baseNestedColumn__col--one-thirds {
  margin-top: 29px;
  margin-left: 7.96178%;
  width: 28.02548%;
}

.baseColumn .baseNestedColumn .baseNestedColumn__col--one-thirds:nth-last-child(3n - 1) {
  margin-left: 0;
}

@media all and (max-width: 768px) {
  .baseColumn .baseNestedColumn .baseNestedColumn__col--half, .baseColumn .baseNestedColumn .baseNestedColumn__col--one-thirds {
    margin-left: 0;
    width: 100%;
  }
}

.baseColumn .heading6+.baseNestedColumn {
  margin-top: -29px;
}

.baseColumn .baseColumn__heading {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.71429;
}

.baseColumn .baseColumn__heading:not(:first-child) {
  margin-top: 29px;
}

.baseColumn .baseColumn__label+.baseColumn__heading {
  margin-top: 9px;
}

.baseColumn .heading6+.baseColumn__heading {
  margin-top: 0;
}

.baseColumn p {
  font-size: 1.3rem;
  line-height: 1.84615;
}

.baseColumn .heading6:not(:last-child) {
  margin-bottom: 17px;
}

@media all and (max-width: 768px) {
  .baseColumn .heading6 {
    margin-right: 0;
    margin-left: 0;
  }
}

.btn1, input.btn1 {
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  text-align: center;
  border: none;
  display: inline-block;
  padding: 4px 15px;
  min-width: 120px;
  transition: all .3s;
  cursor: pointer;
}

.btn1:hover, input.btn1:hover {
  text-decoration: none;
  opacity: 1;
}

.btn1.btn1--white, input.btn1.btn1--white {
  color: #025fae;
  background: #fff;
}

.btn1.btn1--white:hover, input.btn1.btn1--white:hover {
  color: #fff;
  background: #004098;
}

.btn1.btn1--blue, input.btn1.btn1--blue {
  color: #fff;
  background: #025fae;
}

.btn1.btn1--blue:hover, input.btn1.btn1--blue:hover {
  background: #004098;
}

.btn1.btn1--gray, input.btn1.btn1--gray {
  color: #fff;
  background: #929799;
}

.btn1.btn1--gray:hover, input.btn1.btn1--gray:hover {
  background: #868686;
}

.btn1.btn1--submit, input.btn1.btn1--submit {
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  padding-top: 14px;
  padding-bottom: 14px;
  padding-left: calc(15px + 0.25em);
  min-width: 320px;
}

@media all and (max-width: 768px) {
  .btn1.btn1--submit, input.btn1.btn1--submit {
    font-size: 2rem;
    padding-top: 13px;
    padding-bottom: 13px;
    width: 100%;
    min-width: 0;
  }
}

.btn1.btn1--clear, .btn1.btn1--return, input.btn1.btn1--clear, input.btn1.btn1--return {
  font-size: 1.8rem;
  padding-top: 5px;
  padding-bottom: 5px;
}

@media all and (max-width: 768px) {
  .btn1.btn1--clear, .btn1.btn1--return, input.btn1.btn1--clear, input.btn1.btn1--return {
    font-size: 1.4rem;
    padding-top: 9px;
    padding-bottom: 9px;
  }
}

.btn1.btn1--clear, input.btn1.btn1--clear {
  min-width: 182px;
}

.btn1.btn1--return, input.btn1.btn1--return {
  min-width: 98px;
}

.btn2 {
  font-size: 2.0rem;
  font-weight: 600;
  color: #025fae;
  text-align: center;
  display: block;
  padding: 16px 0;
  width: 470px;
}

@media all and (max-width: 768px) {
  .btn2 {
    font-size: 1.8rem;
    padding: 5px 0;
    width: 94%;
    max-width: 312px;
  }
}

.btn2:hover {
  opacity: 1;
}

.btn2.btn2--blue_border {
  border: 1px solid #025fae;
}

.btn2.btn2--blue_border:hover {
  color: #fff;
  background: #025fae;
}

.btn3 {
  letter-spacing: 0.1em;
  text-align: center;
  display: inline-block;
  padding: 18px 28px;
  min-width: 347px;
}

.btn3:hover {
  opacity: 1;
}

@media all and (max-width: 768px) {
  .btn3 {
    display: block;
    padding-right: 5.8vw;
    padding-left: 5.8vw;
    min-width: 0;
  }
}

.linkList+.btn3 {
  margin-top: 8px;
}

.btn3.btn3--blue {
  color: #fff;
  background: #025fae;
}

.btn3.btn3--blue:hover {
  background: #004098;
}

.btn3.btn3--small {
  padding: 9px;
  min-width: 270px;
}

@media all and (max-width: 768px) {
  .btn3.btn3--small {
    min-width: 0;
  }
}

.btn4 {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  display: block;
  padding: 20px 10px;
  width: 100%;
  max-width: 325px;
}

.btn4:hover {
  opacity: 1;
}

.btn4.btn4--gray_border {
  color: #333;
  border: 5px solid #a7a7a7;
}

.btn4.btn4--gray_border:hover {
  color: #025fae;
  border: 5px solid #025fae;
}

@media all and (max-width: 768px) {
  .btn4 {
    width: calc(100% - 11.6vw);
  }
}

.card {
  display: flex;
  flex-flow: column;
  max-width: 370px;
}

.card__col--2 {
  max-width: 575px;
}

.card__col-min--2 {
  min-width: 575px;
}

@media all and (-ms-high-contrast: none) {
  .card {
    height: 100%;
  }
}

.card:last-child {
  height: 100%;
}

.card+.card {
  margin-top: 20px;
  height: auto;
}

.card+.card .card__content {
  height: auto !important;
}

@media all and (max-width: 768px) {
  .card {
    margin: 0 auto 40px;
    width: 100%;
    height: auto;
  }
}

@media all and (-ms-high-contrast: none) {
  .card .card__img {
    min-height: 0%;
  }
}

.card .card__img+.card__content {
  border-top: transparent;
}

@media all and (max-width: 768px) {
  .card .card__img {
    margin-bottom: 27px;
  }

  .card .card__img img {
    width: 100%;
  }
}

.card .card__content {
  border: 1px solid #c1c1c1;
  padding: 24px 47px 28px;
  height: 100%;
}

@media all and (-ms-high-contrast: none) {
  .card .card__content {
    height: calc(100% - 255px);
  }
}

@media all and (max-width: 768px) {
  .card .card__content {
    border: none;
    padding: 0 5.8vw;
    height: auto;
  }
}

.card .card__summary, .card .card__desc {
  font-size: 1.3rem;
  line-height: 1.61538;
  margin-bottom: 26px;
}

.card .card__summary::before, .card .card__desc::before {
  background-color: #025fae;
  content: "";
  display: block;
  margin: 17px auto 24px;
  width: 45px;
  height: 2px;
}

@media all and (max-width: 768px) {
  .card .card__summary, .card .card__desc {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.card .card__desc {
  margin-top: 26px;
}

.card .card__desc::before {
  content: none;
}

.card .card__btn {
  text-align: center;
}

@media all and (max-width: 768px) {
  .card .card__btn {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.card .card__btn+.linkList {
  margin-top: 32px;
  margin-bottom: 4px;
}

@media all and (max-width: 768px) {
  .card .card__btn+.linkList {
    margin-top: 22px;
    margin-bottom: 0;
  }
}

.card.card--medium {
  max-width: none;
}

.card.card--medium .card__content {
  padding-top: 34px;
  padding-bottom: 48px;
}

@media all and (max-width: 768px) {
  .card.card--medium .card__content {
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media all and (-ms-high-contrast: none) {
  .card.card--medium .card__content {
    height: calc(100% - 345px);
  }
}

@media all and (min-width: 769px) {
  .card.card--medium .heading5 {
    font-size: 2.4rem;
    line-height: 1.33333;
    margin-bottom: 14px;
  }

  .card.card--medium .heading5 span {
    margin-bottom: 9px;
  }
}

.largeCard {
  display: flex;
  flex-flow: column;
  height: 100%;
}

@media all and (max-width: 768px) {
  .largeCard {
    margin-bottom: 40px;
  }
}

@media all and (-ms-high-contrast: none) {
  .largeCard .largeCard__img {
    min-height: 0%;
  }
}

.largeCard .largeCard__img img {
  width: 100%;
}

@media all and (max-width: 768px) {
  .largeCard .largeCard__img {
    margin-bottom: 26px;
  }
}

.largeCard .largeCard__title .heading7 {
  margin-bottom: 26px;
}

@media all and (max-width: 768px) {
  .largeCard .largeCard__title .heading7 {
    margin-bottom: 16px;
  }
}

.largeCard .largeCard__content {
  border: 1px solid #c1c1c1;
  border-top: transparent;
  padding: 50px 60px 60px;
}

@media all and (max-width: 768px) {
  .largeCard .largeCard__content {
    border: none;
    padding: 0;
  }
}

.largeCard .largeCard__desc {
  margin-bottom: 8px;
}

.largeCard .largeCard__desc p {
  font-size: 1.6rem;
  line-height: 2;
}

@media all and (max-width: 768px) {
  .largeCard .largeCard__desc {
    margin: 0 5.8vw 24px;
  }
}

.largeCard .largeCard__btn {
  text-align: right;
}

@media all and (max-width: 768px) {
  .largeCard .largeCard__btn {
    text-align: center;
    margin: 0 5.8vw;
  }
}

.largeCard .btn1 {
  display: inline-block;
}

.categoryHeader1, .categoryHeader3, .categoryHeader2 {
  position: relative;
  display: flex;
  margin: 0 auto;
  width: 1360px;
}

@media all and (max-width: 768px) {
  .categoryHeader1, .categoryHeader3, .categoryHeader2 {
    position: static;
    flex-direction: column;
    width: auto;
  }
}

.categoryHeader1 .categoryHeader__col1, .categoryHeader3 .categoryHeader__col1, .categoryHeader2 .categoryHeader__col1 {
  padding-left: 80px;
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__col1, .categoryHeader3 .categoryHeader__col1, .categoryHeader2 .categoryHeader__col1 {
    order: 2;
    padding-left: 0;
  }
}

.categoryHeader1 .categoryHeader__col2, .categoryHeader3 .categoryHeader__col2, .categoryHeader2 .categoryHeader__col2 {
  width: 960px;
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__col2, .categoryHeader3 .categoryHeader__col2, .categoryHeader2 .categoryHeader__col2 {
    order: 1;
    width: auto;
  }
}

.categoryHeader1 .categoryHeader__heading .categoryHeader__mainHeading, .categoryHeader3 .categoryHeader__heading .categoryHeader__mainHeading,
.categoryHeader1 .categoryHeader__heading .categoryHeader__subHeading, .categoryHeader3 .categoryHeader__heading .categoryHeader__subHeading, .categoryHeader2 .categoryHeader__heading .categoryHeader__mainHeading,
.categoryHeader2 .categoryHeader__heading .categoryHeader__subHeading {
  font-weight: bold;
  display: block;
}

.categoryHeader1 .categoryHeader__heading .categoryHeader__subHeading, .categoryHeader3 .categoryHeader__heading .categoryHeader__subHeading, .categoryHeader2 .categoryHeader__heading .categoryHeader__subHeading {
  font-family: "Roboto", sans-serif;
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__heading, .categoryHeader3 .categoryHeader__heading, .categoryHeader2 .categoryHeader__heading {
    margin: 0 5.8vw;
  }
}

.categoryHeader1, .categoryHeader3 {
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 60px;
}

@media all and (max-width: 768px) {
  .categoryHeader1, .categoryHeader3 {
    align-items: flex-start;
    margin-bottom: 46px;
  }
}

@media all and (min-width: 769px) {
  .categoryHeader1 .categoryHeader__col1, .categoryHeader3 .categoryHeader__col1 {
    position: absolute;
    left: 0;
    z-index: 10;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__col1, .categoryHeader3 .categoryHeader__col1 {
    position: static;
  }
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__col2, .categoryHeader3 .categoryHeader__col2 {
    overflow: hidden;
    position: relative;
    margin-bottom: 48px;
    width: 100%;
    height: 400px;
  }

  .categoryHeader1 .categoryHeader__col2 img, .categoryHeader3 .categoryHeader__col2 img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: auto;
    max-width: none;
    height: 400px;
  }
}

@media all and (max-width: 512px) {
  .categoryHeader1 .categoryHeader__col2, .categoryHeader3 .categoryHeader__col2 {
    height: 78.125vw;
  }

  .categoryHeader1 .categoryHeader__col2 img, .categoryHeader3 .categoryHeader__col2 img {
    height: 78.125vw;
  }
}

.categoryHeader1 .categoryHeader__heading .categoryHeader__mainHeading, .categoryHeader3 .categoryHeader__heading .categoryHeader__mainHeading {
  font-size: 4rem;
  line-height: 1.2;
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__heading .categoryHeader__mainHeading, .categoryHeader3 .categoryHeader__heading .categoryHeader__mainHeading {
    font-size: 2.4rem;
  }
}

.categoryHeader1 .categoryHeader__heading .categoryHeader__mainHeading.categoryHeader__mainHeading--size_90, .categoryHeader3 .categoryHeader__heading .categoryHeader__mainHeading.categoryHeader__mainHeading--size_90 {
  font-size: 3.6rem;
  line-height: 1.2;
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__heading .categoryHeader__mainHeading.categoryHeader__mainHeading--size_90, .categoryHeader3 .categoryHeader__heading .categoryHeader__mainHeading.categoryHeader__mainHeading--size_90 {
    font-size: 2.16rem;
  }
}

.categoryHeader1 .categoryHeader__heading .categoryHeader__subHeading, .categoryHeader3 .categoryHeader__heading .categoryHeader__subHeading {
  font-size: 1.6rem;
  line-height: 1.25;
  margin-bottom: 12px;
}

@media all and (max-width: 768px) {
  .categoryHeader1 .categoryHeader__heading .categoryHeader__subHeading, .categoryHeader3 .categoryHeader__heading .categoryHeader__subHeading {
    font-size: 1.2rem;
    margin-bottom: 7px;
  }
}

.categoryHeader2 {
  margin-bottom: 55px;
}

@media all and (max-width: 768px) {
  .categoryHeader2 {
    margin-bottom: 26px;
  }
}

.categoryHeader2 .categoryHeader__col1 {
  background-color: #f5f5f5;
  flex-grow: 1;
  display: flex;
  align-items: center;
}

@media all and (min-width: 769px) {
  .categoryHeader2 .categoryHeader__col1 {
    padding-right: 20px;
    max-width: 400px;
  }
}

@media all and (max-width: 768px) {
  .categoryHeader2 .categoryHeader__col1 {
    background-color: transparent;
  }
}

@media all and (max-width: 768px) {
  .categoryHeader2 .categoryHeader__col2 {
    margin-bottom: 26px;
  }
}

.categoryHeader2 .categoryHeader__heading .categoryHeader__mainHeading {
  font-size: 2.8rem;
  line-height: 1.28571;
}

@media all and (max-width: 768px) {
  .categoryHeader2 .categoryHeader__heading .categoryHeader__mainHeading {
    font-size: 2.4rem;
  }
}

.categoryHeader2 .categoryHeader__heading .categoryHeader__subHeading {
  font-size: 1.4rem;
  line-height: 1.28571;
  margin-bottom: 9px;
}

@media all and (min-width: 769px) {
  .categoryHeader3 .categoryHeader__col1 {
    padding-right: 20px;
    max-width: 400px;
  }
}

@media all and (max-width: 768px) {
  .categoryHeader3 .categoryHeader__col2 {
    overflow: visible;
    position: static;
    width: 100%;
    height: auto;
  }

  .categoryHeader3 .categoryHeader__col2 img {
    position: static;
    -webkit-transform: none;
    transform: none;
    width: 100%;
    height: auto;
  }
}

@media all and (max-width: 512px) {
  .categoryHeader3 .categoryHeader__col2 {
    height: auto;
  }

  .categoryHeader3 .categoryHeader__col2 img {
    height: auto;
  }
}

/*ESG更新情報レイアウト*/
h2.heading4.esg {
  margin-bottom: 50px
}

.categoryHeader3.esg .categoryHeader__heading .categoryHeader__mainHeading {
  font-size: 3.4rem;
}

@media (max-width: 768px) {
  h2.heading4.esg {
    margin-bottom: 20px
  }

  .categoryHeader3.esg .categoryHeader__heading .categoryHeader__mainHeading {
    font-size: 2.4rem;
  }
}

.contentColumn.esg .contentColumn__col--2 {
  width: 45%;
}

@media (max-width: 768px) {
  .contentColumn.esg .contentColumn__col--2 {
    width: 100%;
  }

  .contentColumn.esg .contentColumn__col--2:nth-child(1) .newsList {
    margin-bottom: 0;
  }

  .contentColumn.esg .contentColumn__col--2:nth-child(1) .newsList .newsList__list li:last-child {
    border-bottom: 0;
  }
}

/*ESG更新情報レイアウト　ここまで*/
.chemicalTable {
  margin-bottom: 24px;
  padding: 8px 0;
}

.chemicalTable table {
  width: 100%;
  border: 1px solid #a7a7a7;
  border-collapse: collapse;
  border-spacing: 0;
}

.chemicalTable table caption {
  text-align: right;
  caption-side: bottom;
  margin-top: 7px;
}

.chemicalTable table th, .chemicalTable table td {
  font-size: 1.3rem;
  line-height: 1.5;
  word-wrap: normal;
  word-break: break-all;
}

html[lang="en"] .chemicalTable table th, html[lang="en"] .chemicalTable table td {
  word-break: normal;
}

.chemicalTable table th {
  font-weight: bold;
  border-right: 1px solid #a7a7a7;
  padding: 8px;
  background-color: #eee;
  text-align: center;
}

.chemicalTable table td {
  border-top: 1px solid #a7a7a7;
  border-left: 1px solid #a7a7a7;
  background: #FFF;
  padding: 8px;
}

.chemicalTable table td.cm01 {
  background: #eee;
  line-height: 0;
}

.chemicalTable table td.cm02, .chemicalTable table td.cm06 {
  border-left: none;
}

.chemicalTable table td.cm10 {
  border-top: none;
}

.chemicalTable table td.center {
  text-align: center;
}

.chemicalTable table .vertical-write {
  white-space: nowrap;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.chemicalTable table .vertical-write span {
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
  text-combine-upright: all;
}

@media all and (max-width: 768px) {
  .chemicalTable table .vertical-write {
    line-height: 0;
  }
}

.chemicalTable table .vertical-write_En {
  white-space: nowrap;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

@media all and (max-width: 768px) {
  .chemicalTable table .vertical-write_En {
    line-height: 0;
  }
}

.chemicalTable table .colWidth1 {
  width: 8.66242%;
}

.chemicalTable table .colWidth2 {
  width: 27.38854%;
}

.column2 {
  display: flex;
  max-width: 1200px;
  margin: 0 auto 60px;
  flex-wrap: wrap;
}

@media all and (max-width: 768px) {
  .column2 {
    flex-direction: column;
    margin-bottom: 40px;
  }
}

.column2 .column2__col1 {
  width: 50%;
}

@media all and (max-width: 768px) {
  .column2 .column2__col1 {
    width: 100%;
  }
}

.column2 .column2__col2 {
  width: 50%;
}

@media all and (max-width: 768px) {
  .column2 .column2__col2 {
    width: 100%;
  }
}

.column2.column2--mainRight .column2__col1 {
  width: 26.26%;
}

.column2.column2--mainRight .column2__col2 {
  flex: 1;
}

@media all and (max-width: 768px) {
  .column2.column2--mainRight .column2__col2 {
    width: 100%;
  }
}

.column2 .newsList {
  padding: 0 30px;
}

@media all and (min-width: 1360px) {
  .column2 .newsList {
    margin-bottom: 0;
  }
}

@media all and (max-width: 768px) {
  .column2 .newsList {
    margin-bottom: 32px;
    padding: 0;
  }
}

@media all and (max-width: 768px) {
  .column2 .column2__col2 .newsList {
    margin-bottom: 0;
  }
}

.commentBlock {
  border: 4px solid #ffcd00;
  padding: 30px 32px;
}

@media all and (max-width: 768px) {
  .commentBlock {
    border-right: none;
    border-left: none;
    padding: 20px 5.8vw;
  }
}

.commentBlock .commentBlock__column::after {
  clear: both;
  content: "";
  display: table;
}

.commentBlock .commentBlock__column .commentBlock__col1 {
  float: right;
}

.commentBlock .commentBlock__column .commentBlock__col2 {
  float: left;
}

@media all and (max-width: 768px) {

  .commentBlock .commentBlock__column .commentBlock__col1,
  .commentBlock .commentBlock__column .commentBlock__col2 {
    float: none;
  }
}

.commentBlock .commentBlock__catchphrase {
  font-size: 2.4rem;
  line-height: 1.5;
  margin-top: 16px;
}

@media all and (max-width: 768px) {
  .commentBlock .commentBlock__catchphrase {
    font-size: 1.8rem;
    line-height: 1.55556;
    margin-top: 25px;
  }
}

.commentBlock .commentBlock__name {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 38px;
}

@media all and (max-width: 768px) {
  .commentBlock .commentBlock__name {
    font-size: 1.4rem;
    line-height: 2.14286;
    margin-top: 12px;
  }
}

.commentBlock .commentBlock__comment {
  margin-top: 32px;
}

@media all and (max-width: 768px) {
  .commentBlock .commentBlock__comment {
    margin-top: 14px;
  }
}

ul.complianceList {
  margin-bottom: 62px;
}

ul.complianceList>li {
  text-indent: -1.075em;
  margin-left: 1.075em;
}

ul.complianceList>li:not(:first-child) {
  margin-top: 30px;
}

ul.complianceList>li>ul>li {
  text-indent: -1.075em;
  margin-left: 1.075em;
}

@media all and (max-width: 768px) {
  ul.complianceList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

ul.complianceList>li>.complianceList_2 li {
  text-indent: -4.3em;
  margin-left: 4.3em;
}

ul.complianceList>li>.complianceList_2_En li {
  text-indent: -2.3em;
  margin-left: 2.3em;
}

ul.complianceList_3 {
  margin-bottom: 62px;
}

ul.complianceList_3>li {
  text-indent: -1.075em;
  margin-left: 1.075em;
}

ul.complianceList_3>li>ul>li {
  text-indent: -1.075em;
  margin-left: 1.075em;
}

@media all and (max-width: 768px) {
  ul.complianceList_3 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.conceptBlockWrapper .conceptBlockWrapper__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.conceptBlockWrapper .conceptBlockWrapper__row+.conceptBlockWrapper__row {
  margin-top: 40px;
}

@media all and (max-width: 768px) {
  .conceptBlockWrapper .conceptBlockWrapper__row {
    flex-direction: column;
  }

  .conceptBlockWrapper .conceptBlockWrapper__row+.conceptBlockWrapper__row {
    margin-top: 30px;
  }
}

.conceptBlockWrapper .conceptBlock {
  position: relative;
  display: flex;
  padding-top: 20px;
  width: calc(50% - 32.5px);
}

@media all and (max-width: 768px) {
  .conceptBlockWrapper .conceptBlock {
    padding: 20px 22px 0;
    width: 100%;
  }

  .conceptBlockWrapper .conceptBlock:not(:first-child) {
    margin-top: 30px;
  }
}

.conceptBlockWrapper .conceptBlock .conceptBlock__heading {
  font-size: 1.6rem;
  color: #fff;
  line-height: 1.5;
  text-align: center;
  background: #025fae;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  padding: 16px 0;
  width: 71.11111%;
}

.conceptBlockWrapper .conceptBlock .conceptBlock__heading span {
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  line-height: 2;
  display: block;
}

.conceptBlockWrapper .conceptBlock .conceptBlock__content,
.conceptBlockWrapper .conceptBlock .conceptBlock__content2 {
  font-size: 2.0rem;
  font-weight: 600;
  line-height: 1.5;
  color: #025fae;
  text-align: center;
  border: 4px solid #e6e6e6;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 77px 30px 29px;
  width: 100%;
}

@media all and (max-width: 768px) {

  .conceptBlockWrapper .conceptBlock .conceptBlock__content,
  .conceptBlockWrapper .conceptBlock .conceptBlock__content2 {
    padding-top: 85px;
    padding-bottom: 29px;
  }
}

.conceptBlockWrapper .conceptBlock .conceptBlock__content2 {
  font-size: 1.8rem;
  line-height: 1.55556;
  letter-spacing: normal;
}

@media all and (max-width: 768px) {
  .conceptBlockWrapper .conceptBlock .conceptBlock__content2 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

.conceptBlockWrapper .conceptBlock__notes {
  font-size: 1.2rem;
  line-height: 1.66667;
  margin-top: 32px;
}

@media all and (max-width: 768px) {
  .conceptBlockWrapper .conceptBlock__notes {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.conceptBlockHeight {
  min-height: 330px;
}

@media all and (max-width: 768px) {
  .conceptBlockHeight {
    max-height: initial;
    max-height: auto;
  }
}

.contactBlock {
  padding: 50px 0;
  border-top: 1px solid #c1c1c1;
}

@media all and (max-width: 768px) {
  .contactBlock {
    padding: 27px 0 30px;
  }
}

.contactBlock .contactBlock__heading {
  font-size: 1.6rem;
  line-height: 1.625;
  text-align: center;
  margin-bottom: 35px;
}

.contactBlock .contactBlock__heading span {
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  color: #025fae;
  display: block;
}

@media all and (max-width: 768px) {
  .contactBlock .contactBlock__heading {
    margin: 0 5.8vw 18px;
  }

  .contactBlock .contactBlock__heading span {
    font-size: 2rem;
    line-height: 1;
  }
}

.contactBlock .contactBlock__description {
  text-align: center;
  margin-bottom: 25px;
}

@media all and (max-width: 768px) {
  .contactBlock .contactBlock__description {
    font-size: 1.3rem;
    line-height: 1.76923;
    margin: 0 5.8vw 15px;
    padding: 0 8vw;
  }
}

.contactBlock .contactBlock__more {
  text-align: center;
}

@media all and (max-width: 768px) {
  .contactBlock .contactBlock__more {
    margin: 0 5.8vw;
  }
}

.contactBlock .btn2 {
  display: inline-block;
}

.contentColumn {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 50px;
  max-width: 1200px;
}

.contentColumn.contentColumn__quarter {
  max-width: 1300px;
}

.contentColumn.contentColumn--mb {
  margin-bottom: 60px;
}

.contentColumn.contentColumn--mb2 {
  margin-bottom: 80px;
}

.contentColumn.contentColumn--justify_center {
  justify-content: center;
}

.contentColumn.contentColumn--justify_center .contentColumn__col--1 {
  margin-right: 1.875%;
  margin-left: 1.875%;
}

@media all and (max-width: 768px) {
  .contentColumn.contentColumn--justify_center .contentColumn__col--1 {
    margin-right: 0;
    margin-left: 0;
  }
}

.contentColumn .contentColumn__col--1 {
  width: 30.83333%;
}

.contentColumn .contentColumn__col--2 {
  width: 65.41667%;
}

.contentColumn .contentColumn__col--3 {
  width: 100%;
}

.contentColumn .contentColumn__col--single {
  margin: 0 auto;
  width: 840px;
}

.contentColumn .contentColumn__col--half {
  width: 48.16667%;
}

.contentColumn .contentColumn__col--quarter {
  width: 24.16667%;
  margin-left: 17px;
}

.contentColumn .contentColumn__col--flexCol {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media all and (min-width: 769px) {
  .contentColumn .contentColumn__col>*:last-child {
    margin-bottom: 0;
  }
}

@media all and (max-width: 768px) {
  .contentColumn {
    display: block;
    margin-bottom: 40px;
  }

  .contentColumn .contentColumn__col--1 {
    width: 100%;
  }

  .contentColumn .contentColumn__col--2 {
    width: 100%;
  }

  .contentColumn .contentColumn__col--3 {
    width: 100%;
  }

  .contentColumn .contentColumn__col--3>p {
    margin: 0 5.8vw;
  }

  .contentColumn .contentColumn__col--single {
    width: 100%;
  }

  .contentColumn .contentColumn__col--half {
    width: 100%;
  }

  .contentColumn .contentColumn__col--quarter {
    width: 100%;
    margin-left: 0px;
  }
}

/* 2Coloumn >  4col  */
.flexColumn.col--4 {
  justify-content: flex-start;
}

.flexColumn.col--4 .flexColumn__col {
  width: calc(calc(100% - 60px) / 4);
  margin-left: 20px;
}

.flexColumn.col--4 .flexColumn__col:nth-child(4n + 1) {
  margin-left: 0;
}

.flexColumn.col--4 .flexColumn__col .card__content {
  padding: 20px 10px 25px;
}

.flexColumn.col--4 .flexColumn__col .card__content .card__title .heading5 {
  font-size: 1.5rem;
}

.flexColumn.col--4 .flexColumn__col:not(:nth-child(-n + 2)) {
  margin-top: 0;
}

.flexColumn.col--4 .flexColumn__col:not(:nth-child(-n + 4)) {
  margin-top: 40px;
}

@media all and (max-width: 768px) {
  .flexColumn.col--4 {
    justify-content: flex-start;
  }

  .flexColumn.col--4 .flexColumn__col {
    width: auto;
    margin-left: 0;
  }

  .flexColumn.col--4 .flexColumn__col:nth-child(4n + 1) {
    margin-left: 0;
  }

  .flexColumn.col--4 .flexColumn__col .card__content {
    padding: 20px 15px 25px;
  }

  .flexColumn.col--4 .flexColumn__col .card__content .card__title .heading5 {
    font-size: 1.8rem;
  }

  .flexColumn.col--4 .flexColumn__col:not(:first-child) {
    margin-top: 40px;
  }

  .flexColumn.col--4 .flexColumn__col:not(:nth-child(-n + 2)) {
    margin-top: 0;
  }

  .flexColumn.col--4 .flexColumn__col:not(:nth-child(-n + 4)) {
    margin-top: 0;
  }
}

.disclosureList {
  margin-bottom: 30px;
}

.disclosureList>li:not(:first-child) {
  margin-top: 30px;
}

@media all and (max-width: 768px) {
  .disclosureList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

@media all and (max-width: 768px) {
  .display_pc {
    display: none !important;
  }
}

@media all and (min-width: 769px) {
  .display_sp {
    display: none !important;
  }
}

.docBlock+.docBlock {
  margin-top: 40px;
}

.docBlock .docBlock__column .docBlock__col1 {
  float: left;
  margin-bottom: 50px;
  width: 37.96178%;
}

.docBlock .docBlock__column .docBlock__col2 {
  float: right;
  margin-bottom: 50px;
  width: 57.07006%;
}

@media all and (max-width: 768px) {

  .docBlock .docBlock__column .docBlock__col1,
  .docBlock .docBlock__column .docBlock__col2 {
    float: none;
    width: auto;
  }

  .docBlock .docBlock__column .docBlock__col1 {
    margin-bottom: 18px;
  }

  .docBlock .docBlock__column .docBlock__col2 {
    margin-bottom: 0;
  }
}

.docBlock .docBlock__more {
  text-align: center;
}

@media all and (max-width: 768px) {
  .docBlock .docBlock__more {
    margin: 0 5.8vw;
    padding: 0 30px;
  }
}

@media all and (min-width: 769px) {

  .docBlock.docBlock--news .docBlock__column .docBlock__col1,
  .docBlock.docBlock--news .docBlock__column .docBlock__col2 {
    margin-bottom: 60px;
  }
}

@media all and (max-width: 768px) {
  .docBlock.docBlock--news .docBlock__column .docBlock__col1 {
    margin-bottom: 20px;
  }
}

.docBlock.docBlock--guide .docBlock__column .docBlock__col1,
.docBlock.docBlock--guide .docBlock__column .docBlock__col2 {
  margin-bottom: 0;
}

@media all and (max-width: 768px) {
  .docBlock.docBlock--guide .docBlock__column .docBlock__col1 {
    margin-bottom: 10px;
  }
}

.docBlock.docBlock--guide .docBlock__more {
  text-align: left;
  margin-top: 40px;
}

@media all and (max-width: 768px) {
  .docBlock.docBlock--guide .docBlock__more {
    text-align: center;
    margin: 30px 5.8vw 0;
    padding: 0;
  }
}

.docBlock.docBlock--guide .linkList {
  margin-bottom: 0;
}

.docTable {
  margin-bottom: 24px;
  padding: 8px 0;
}

@media all and (max-width: 768px) {
  .docTable {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.docTable table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.docTable table th, .docTable table td {
  vertical-align: top;
  border: 1px solid #c1c1c1;
}

.docTable table th {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.42857;
  text-align: left;
  background-color: #f5f5f5;
  padding: 16px 20px;
}

.docTable table td {
  font-size: 1.3rem;
  line-height: 2.30769;
  letter-spacing: 0;
  text-align: center;
  padding: 9px 0;
}

.docTable table td a {
  display: block;
  font-weight: bold;
}

.docTable table td a .size {
  color: #333;
  font-weight: normal;
}

@media all and (max-width: 768px) {
  .docTable table tr {
    display: flex;
    flex-wrap: wrap;
  }

  .docTable table th, .docTable table td {
    display: block;
  }

  .docTable table th {
    width: 100%;
  }

  .docTable table td {
    width: 50%;
    border-top: none;
  }

  .docTable table td:nth-child(2n) {
    border-left: none;
  }
}

@media all and (max-width: 768px) {
  .ebook {
    margin-right: 5.8vw;
    margin-bottom: 0;
    margin-left: 5.8vw;
  }
}

.ceo＿Block_2 {
  display: flex;
}

.ceo＿Block_name,
.content__center {
  text-align: center;
}

@media all and (max-width: 768px) {
  .ceo＿Block_2 {
    display: block;
  }
}

.ceo＿Block {
  display: flex;
}

.contentColumn__ceo {
  margin: 0 auto;
}

.figureBlock+.ebook {
  margin-top: -10px;
}

.ebook .ebook__heading {
  font-size: 1.4rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 12px;
}

.ebook .ebook__content {
  display: flex;
  justify-content: center;
}

.ebook .ebook__item {
  margin-right: 10px;
  width: 145px;
}

.ebook .ebook__item:last-child {
  margin-right: 0;
}

.ebook .ebook__item a {
  color: #333;
  text-align: center;
  border: 2px solid #e6e6e6;
  display: block;
  padding: 3px 0;
}

.ebook .ebook__item a:hover {
  color: #025fae;
  border: 2px solid #025fae;
  opacity: 1;
}

.ebook+.ebook {
  margin-top: 30px;
}

.executiveTable {
  margin-bottom: 24px;
  padding: 8px 0;
}

.executiveTable.executiveTable--layout_fixed table {
  table-layout: fixed;
}

.executiveTable table {
  border-top: 1px solid #c1c1c1;
  width: 100%;
}

.executiveTable caption {
  text-align: right;
  margin-top: -8px;
  margin-bottom: 7px;
}

.executiveTable th, .executiveTable td {
  font-size: 1.4rem;
  line-height: 1.42857;
  border-bottom: 1px solid #c1c1c1;
  padding: 10px 20px;
}

.executiveTable th {
  font-weight: bold;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
  background-color: #f5f5f5;
  padding-right: 2em;
  width: 7.75em;
}

.executiveTable td {
  vertical-align: middle;
  border-left: 1px solid #c1c1c1;
}

.executiveTable .executiveTable__colGroup1 {
  width: 57.07006%;
}

@media all and (max-width: 768px) {
  .executiveTable {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .executiveTable table {
    table-layout: fixed;
  }

  .executiveTable th {
    white-space: normal;
    width: auto;
  }
}

@media all and (max-width: 768px) {
  .faq {
    margin: 0 5.8vw;
  }
}

.faq dt {
  font-size: 1.6rem;
  line-height: 2.25;
}

.faq dt:not(:first-child) {
  margin-top: 30px;
}

.faq dd {
  border-bottom: 1px solid #c1c1c1;
  margin-top: 2px;
  padding-bottom: 32px;
}

.faq .faq__q,
.faq .faq__a {
  color: #025fae;
}

.figureBlock {
  padding: 8px 0;
}

.figureBlock:not(:last-child) {
  margin-bottom: 24px;
}

.figureBlock .figureBlock__figure {
  text-align: center;
}

.figureBlock .figureBlock__figure img {
  vertical-align: 0;
}

.figureBlock .figureBlock__figure.figureBlock__figure--outline {
  border: 1px solid #c1c1c1;
  padding: 60px 20px;
}

@media all and (max-width: 768px) {
  .figureBlock .figureBlock__figure.figureBlock__figure--outline {
    border-right: none;
    border-left: none;
    padding: 52px 5.8vw;
  }
}

.figureBlock .figureBlock__figure.figureBlock__figure--outline2 {
  border: 1px solid #c1c1c1;
}

@media all and (max-width: 768px) {
  .figureBlock .figureBlock__figure.figureBlock__figure--outline2 {
    border-right: none;
    border-left: none;
  }
}

@media all and (max-width: 768px) {
  .figureBlock .figureBlock__figure.figureBlock__figure--outline2_sp {
    border: 1px solid #c1c1c1;
    border-right: none;
    border-left: none;
  }
}

.figureBlock img.figureBlock__frame {
  border: 4px solid #e6e6e6;
}

.figureBlock img.figureBlock__frame2 {
  border: 1px solid #c1c1c1;
}

.figureBlock img.figureBlock__narrow {
  width: 63.694%;
}

.figureBlock img.figureBlock__narrow2 {
  width: calc((300 / 370) * 100%);
}

@media all and (max-width: 768px) {
  .figureBlock img.figureBlock__narrow2 {
    width: auto;
  }
}

.figureBlock img.figureBlock__narrow3 {
  width: 130px;
}

.figureBlock figcaption {
  line-height: 1.71429;
  margin-top: 1em;
}

.figureBlock figcaption:first-child {
  margin-top: -8px;
}

.figureBlock figcaption:last-child {
  margin-bottom: -8px;
}

.figureBlock figcaption.figureBlock__catchphrase {
  font-weight: bold;
  line-height: 2.14286;
  text-align: center;
  margin-top: 60px;
}

@media all and (max-width: 768px) {
  .figureBlock figcaption.figureBlock__catchphrase {
    font-weight: normal;
    text-align: left;
    margin-top: 22px;
  }
}

@media all and (max-width: 768px) {
  .figureBlock {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .figureBlock:not(:last-child) {
    margin-bottom: 14px;
  }

  .figureBlock.figureBlock--sp_full {
    margin-right: 0;
    margin-left: 0;
  }

  .figureBlock.figureBlock--sp_full figcaption {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .figureBlock .figureBlock__narrow {
    width: 100%;
  }
}

.financeTable {
  margin-bottom: 24px;
  padding: 8px 0;
}

.financeTable table {
  width: 100%;
  border-collapse: collapse;
  empty-cells: show;
}

.financeTable table caption {
  font-size: 1.4rem;
  line-height: 2.14286;
  text-align: right;
  margin-top: -8px;
  margin-bottom: 12px;
}

.financeTable table tr th, .financeTable table tr td {
  font-size: 1.4rem;
  line-height: 2.14286;
  border: 1px solid #c1c1c1;
  padding: 10px 20px;
}

.financeTable table tr th[scope="col"] {
  font-weight: bold;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #999;
}

.financeTable table tr th[scope="row"] {
  font-weight: bold;
  text-align: left;
  vertical-align: top;
  background-color: #f5f5f5;
}

.financeTable table tr th[scope="row"].financeTable__childItem {
  padding-left: 40px;
}

.financeTable table tr td {
  text-align: right;
}

.financeTable table tr.financeTable__border th, .financeTable table tr.financeTable__border td {
  border-top-width: 2px;
}

@media all and (max-width: 768px) {
  .financeTable {
    overflow: scroll;
    padding-left: 5.8vw;
  }

  .financeTable table caption {
    text-align: left;
  }

  .financeTable table tr th[scope="row"] {
    white-space: nowrap;
  }
}

.flexColumn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media all and (max-width: 768px) {
  .flexColumn {
    display: block;
  }
}

.heading2+.flexColumn {
  margin-top: 40px;
}

.flexColumn .flexColumn__col {
  width: 47.13376%;
}

.flexColumn .flexColumn__col:not(:nth-child(-n + 2)) {
  margin-top: 40px;
}

.flexColumn .flexColumn__col.flexColumn__col--directors {
  width: 50.06369%;
}

.flexColumn .flexColumn__col.flexColumn__col--founders {
  width: 41.01911%;
}

@media all and (max-width: 768px) {
  .flexColumn .flexColumn__col {
    width: auto;
  }

  .flexColumn .flexColumn__col:not(:first-child) {
    margin-top: 40px;
  }

  .flexColumn .flexColumn__col.flexColumn__col--directors, .flexColumn .flexColumn__col.flexColumn__col--founders {
    width: auto;
  }
}

.flexColumn.flexColumn--mb .flexColumn__col:not(:nth-child(-n + 2)) {
  margin-top: 60px;
}

.flexColumn.flexColumn--mb2 {
  margin-bottom: 24px;
}

@media all and (min-width: 769px) {
  .flexColumn.flexColumn--mb2 .flexColumn__col:not(:nth-child(-n + 2)) {
    margin-top: 24px;
  }
}

@media all and (max-width: 768px) {
  .flexColumn.flexColumn--mb2 .flexColumn__col {
    margin-top: 24px;
  }
}

.flexColumn.flexColumn--vertical_center {
  align-items: center;
}

.footerContentsBlock {
  margin: 80px auto 110px;
}

@media all and (max-width: 768px) {
  .footerContentsBlock {
    margin-bottom: 60px;
  }
}

@media all and (max-width: 768px) {
  .form {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.form .form__selectSubject {
  margin-bottom: 25px;
}

.form .form__selectSubject li {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.875;
  color: #025fae;
  position: relative;
  overflow: hidden;
}

.form .form__selectSubject li input[type="radio"] {
  position: absolute;
  left: -100%;
}

.form .form__selectSubject li label::before {
  vertical-align: top;
  border: 2px solid #c1c1c1;
  border-radius: 100%;
  background-color: #fff;
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 5px 8px 5px 0;
}

.form .form__selectSubject li input[type="radio"]:checked+label::before {
  border: 6px solid #025fae;
}

.form .form__notes {
  margin-bottom: 24px;
}

@media all and (max-width: 768px) {
  .form .form__notes {
    margin-bottom: 14px;
  }
}

.form .form__table {
  margin-bottom: 24px;
  padding: 8px 0;
}

.form .form__table table {
  border-collapse: collapse;
  width: 100%;
}

.form .form__table table th, .form .form__table table td {
  vertical-align: top;
  border: 1px solid #c1c1c1;
  padding: 12px 20px;
}

.form .form__table table th {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.875;
  border-right: none;
  background-color: #f5f5f5;
  width: 33.80952%;
}

.form .form__table table td {
  border-left: none;
  width: 66.19048%;
}

.form .form__table table td label {
  margin-right: 0.05em;
}

@media all and (min-width: 769px) {
  .form .form__table table td {
    padding-left: calc(20px + 1em + 0.5em);
  }

  .form .form__table table td label:first-child {
    margin-left: calc(-1em + -0.5em);
  }
}

@media all and (max-width: 768px) {
  .form .form__table table {
    display: block;
  }

  .form .form__table table tr, .form .form__table table th, .form .form__table table td {
    border-top: none;
    display: block;
    width: auto;
  }

  .form .form__table table th {
    border-right: 1px solid #c1c1c1;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .form .form__table table td {
    letter-spacing: 0;
    border-left: 1px solid #c1c1c1;
  }

  .form .form__table table tr:first-child th:first-child {
    border-top: 1px solid #c1c1c1;
  }
}

.form .form__itemColumn {
  display: flex;
  justify-content: space-between;
  margin: 8px 0;
  padding: 5px 0;
}

@media all and (max-width: 768px) {
  .form .form__itemColumn {
    margin: 0;
  }
}

.form .form__inputColumn {
  display: flex;
}

.form .form__require {
  font-size: 1.2rem;
  font-weight: normal;
  color: #fff;
  line-height: 1.66667;
  vertical-align: top;
  white-space: nowrap;
  background-color: #ea0000;
  display: inline-block;
  margin: 5px 0;
  padding: 0 10px;
}

.form .form__button {
  text-align: center;
}

.form .form__button+.form__button {
  margin-top: 14px;
}

@media all and (max-width: 768px) {
  .form .form__button {
    padding-right: 21px;
    padding-left: 21px;
  }

  .form .form__button+.form__button {
    margin-top: 14px;
  }
}

.form input.inputText {
  font-size: 1.6rem;
  border: 1px solid #c1c1c1;
  background-color: #fff;
  box-sizing: border-box;
  padding: 2px 4px;
  width: 184px;
}

@media all and (max-width: 768px) {
  .form input.inputText {
    width: 38.75433%;
    max-width: 184px;
  }
}

.form input.inputText.inputText--small1 {
  width: 100px;
}

@media all and (max-width: 768px) {
  .form input.inputText.inputText--small1 {
    width: 27.68166%;
    max-width: 100px;
  }
}

.form input.inputText.inputText--small2 {
  width: 120px;
}

@media all and (max-width: 768px) {
  .form input.inputText.inputText--small2 {
    width: 38.75433%;
    max-width: 120px;
  }
}

.form input.inputText.inputText--large {
  width: 410px;
}

@media all and (max-width: 768px) {
  .form input.inputText.inputText--large {
    width: 100%;
    max-width: 410px;
  }
}

.form input.inputText+label {
  margin-left: 1em;
}

@media all and (max-width: 768px) {
  .form input.inputText+label {
    margin-left: 2.76817%;
  }
}

.form textarea.textarea {
  font-size: 1.6rem;
  border: 1px solid #c1c1c1;
  background-color: #fff;
  box-sizing: border-box;
  padding: 2px 4px;
  width: 470px;
  height: 21.42857em;
}

@media all and (max-width: 768px) {
  .form textarea.textarea {
    width: 100%;
    max-width: 470px;
    height: 15em;
  }
}

.form .error {
  color: #ea0000;
  line-height: 1.71429;
  display: block;
}

.form .form__compleat {
  text-align: center;
  margin-top: 92px;
}

.form .form__compleat p:not(:first-child) {
  margin-top: 34px;
}

.form .form__compleat .form__thanks {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.66667;
}

.heading1 {
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
  margin-bottom: 23px;
}

.heading1 span {
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.25;
  color: #025fae;
  display: block;
}

@media all and (max-width: 768px) {
  .heading1 {
    margin-right: 5.8vw;
    margin-bottom: 23px;
    margin-left: 5.8vw;
  }
}

.heading2 {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.25;
  border-top: 2px solid #025fae;
  border-bottom: 1px solid #c1c1c1;
  display: flex;
  align-items: center;
  margin-bottom: 32px;
  padding: 15px 0;
}

@media all and (max-width: 768px) {
  .heading2 {
    font-size: 1.8rem;
    line-height: 1.33333;
    margin: 0 5.8vw 22px;
    padding: 17px 0;
  }
}

.heading2.heading2--link a {
  color: #333;
  background: url(/assets/img//heading/bg_heading2.png) 0 0.5rem no-repeat;
  background-size: 20px 20px;
  display: block;
  padding-left: 30px;
}

@media all and (max-width: 768px) {
  .heading2.heading2--link a {
    background-position: 0 0.2rem;
  }
}

.heading7+.heading2 {
  margin-top: 40px;
}

@media all and (max-width: 768px) {
  .heading7+.heading2 {
    margin-top: 30px;
  }
}

.heading3 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.3;
  border-top: 1px solid #c1c1c1;
  border-bottom: 1px solid #c1c1c1;
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 32px;
  padding: 12px 0 12px 16px;
}

.heading3::before {
  background-color: #025fae;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 6px;
  height: calc(100% - 30px);
  margin: auto 0;
}

.heading3.heading3--bordertop_none {
  border-top: none;
  margin-top: -15px;
}

@media all and (max-width: 768px) {
  .heading3 {
    font-size: 1.6rem;
    margin: 0 5.8vw 22px;
  }

  .heading3.heading3--bordertop_none {
    margin-top: -13px;
  }
}

.heading2+.heading3,
.heading2+section>.heading3:first-child {
  margin-top: 40px;
}

@media all and (max-width: 768px) {

  .heading2+.heading3,
  .heading2+section>.heading3:first-child {
    margin-top: 30px;
  }
}

.heading4 {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 22px;
  padding: 2px 0;
}

.heading4 span {
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  line-height: 2;
  color: #025fae;
  display: block;
  margin-bottom: 3px;
}

@media all and (max-width: 768px) {
  .heading4 {
    font-size: 1.8rem;
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .heading4 span {
    display: none;
  }
}

.heading5 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.33333;
  text-align: center;
  margin-bottom: 15px;
  padding: 2px 0;
}

.heading5 span {
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  line-height: 1.33333;
  color: #025fae;
  display: block;
  margin-bottom: 5px;
}

.heading5 .brSub {
  display: inline;
}

@media all and (max-width: 768px) {
  .heading5 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .heading5 .brSub br {
    display: none;
  }
}

.heading6 {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.375;
  position: relative;
  display: flex;
  align-items: center;
  padding: 5px 0 5px 16px;
}

.heading6:not(:last-child) {
  margin-bottom: 24px;
}

.heading6::before {
  background-color: #0098d8;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 6px;
  height: calc(100% - 16px);
  margin: auto 0;
}

.heading6c {
  color: #333;
  font-weight: bold;
  line-height: 1.375;
  position: relative;
  display: flex;
  align-items: center;
  padding: 5px 0 5px 20px;
}

.heading6c:not(:last-child) {
  margin-bottom: 4px;
}

.heading6c::before {
  color: #025fae;
  content: "●";
  display: block;
  position: absolute;
  top: 4px;
  left: 0;
  bottom: 0;
  width: 6px;
  margin: auto 0;
}

@media all and (max-width: 768px) {
  .heading6 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .heading6:not(:last-child) {
    margin-bottom: 14px;
  }

  .heading6c {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .heading6c:not(:last-child) {
    margin-bottom: 14px;
  }
}

.heading7 {
  margin-bottom: 32px;
}

@media all and (max-width: 768px) {
  .heading7 {
    margin: 0 5.8vw 22px;
  }
}

.heading8 {
  color: #025fae;
  font-size: 2.0rem;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  margin-bottom: 18px;
}

.heading8 span {
  display: block;
}

@media all and (max-width: 768px) {
  .heading8 {
    font-size: 1.4rem;
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.heading9 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2.33333;
}

@media all and (max-width: 768px) {
  .heading9 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.heading10 {
  font-size: 1.7rem;
  font-weight: bold;
}

@media all and (max-width: 768px) {
  .heading10 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.heading11 {
  font-size: 1.5rem;
  font-weight: bold;
}

@media all and (max-width: 768px) {
  .heading10 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.heading_Sp {
  margin: 10px 0;
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
  display: inline-block;
  text-align: center;
  padding: 4px 12px 2px 12px;
}

.heading_Sp--blue {
  background-color: #0098d8;
}

@media all and (max-width: 768px) {
  .heading_Sp {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.hidden {
  display: none !important;
}

@media all and (min-width: 769px) {
  .hidden--pc {
    display: none !important;
  }
}

@media all and (max-width: 768px) {
  .hidden--mobile {
    display: none !important;
  }
}

.historyTable {
  margin-bottom: 24px;
  padding: 8px 0;
}

.historyTable table {
  width: 100%;
}

.historyTable tr:nth-child(odd) {
  background-color: #f5f5f5;
}

.historyTable th, .historyTable td {
  font-size: 1.4rem;
  line-height: 1.71429;
  vertical-align: top;
  padding: 7px 20px;
}

.historyTable th {
  font-weight: normal;
  text-align: left;
  box-sizing: content-box;
  width: 6.75em;
}

.historyTable td {
  padding-left: 0;
}

.historyTable td a {
  font-weight: 600;
}

.historyTable td.icon:before, .historyTable td.icon:after {
  color: #025fae;
}

@media all and (max-width: 768px) {
  .historyTable th, .historyTable td {
    padding-right: 5.8vw;
    padding-left: 5.8vw;
  }

  .historyTable td {
    padding-left: 0;
  }
}

.historyTable.historyTable--case1 th, .historyTable.historyTable--case2 th {
  white-space: nowrap;
  width: 100px;
}

@media all and (max-width: 768px) {
  .historyTable.historyTable--case1 table, .historyTable.historyTable--case1 tr, .historyTable.historyTable--case1 th, .historyTable.historyTable--case1 td, .historyTable.historyTable--case2 table, .historyTable.historyTable--case2 tr, .historyTable.historyTable--case2 th, .historyTable.historyTable--case2 td {
    display: block;
  }

  .historyTable.historyTable--case1 tr, .historyTable.historyTable--case2 tr {
    padding: 11px 5.8vw 16.5px;
  }

  .historyTable.historyTable--case1 th, .historyTable.historyTable--case1 td, .historyTable.historyTable--case2 th, .historyTable.historyTable--case2 td {
    padding: 0;
  }

  .historyTable.historyTable--case1 th, .historyTable.historyTable--case2 th {
    font-size: 1.2rem;
    margin: 3px 0;
  }

  .historyTable.historyTable--case1 td, .historyTable.historyTable--case2 td {
    font-size: 1.3rem;
    line-height: 1.53846;
  }
}

.historyTable.historyTable--case2 th, .historyTable.historyTable--case2 td {
  font-size: 1.3rem;
  line-height: 1.84615;
}

.historyTable .size {
  color: #333;
  font-weight: normal;
}

.historyTable .historyTable__omitted {
  text-align: center;
  margin-top: 24px;
}

a+.icon {
  color: #025fae;
  padding-left: 5px;
}

.icon {
  line-height: 1;
  vertical-align: middle;
  display: inline-block;
}

.icon:last-child {
  margin-left: 0.5rem;
}

.icon.icon-external {
  font-size: 1rem;
}

.icon.icon-pdf {
  font-size: 2rem;
  line-height: 2rem;
}

.icon.icon-pdf::before {
  vertical-align: bottom;
}

.icon.icon-note {
  font-size: 1.2rem;
}

.img-textBlock {
  display: flex;
  margin: 60px auto;
  max-width: 1200px;
  min-height: 300px;
}

@media all and (max-width: 768px) {
  .img-textBlock {
    flex-direction: column;
    margin-top: 40px;
    margin-bottom: 0;
  }
}

.img-textBlock .img-textBlock__img {
  background: url("/assets/img/top/about.png") no-repeat;
  background-size: cover;
  width: 50%;
}

@media all and (max-width: 768px) {
  .img-textBlock .img-textBlock__img {
    width: 100%;
    min-height: 300px;
  }
}

.img-textBlock .img-textBlock__text {
  color: #fff;
  background: url("/assets/img/top/background_blue.png");
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 46px 73px 40px 85px;
  width: 50%;
}

@media all and (max-width: 768px) {
  .img-textBlock .img-textBlock__text {
    width: 100%;
    padding: 33px 37px 40px;
  }
}

.img-textBlock .img-textBlock__heading {
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 16px;
}

.img-textBlock .img-textBlock__heading span {
  font-family: Meiryo, \30d2 \30e9 \30ae \30ce \89d2 \30b4 \20 \50 \72 \6f \20 \57 \33, Hiragino Kaku Gothic Pro, sans-serif;
  font-size: 1.6rem;
  font-weight: normal;
  display: block;
  margin-top: 6px;
}

.img-textBlock .img-textBlock__heading span::after {
  background: #4186c0;
  content: '';
  display: block;
  margin-top: 12px;
  width: 30px;
  height: 2px;
}

@media all and (max-width: 768px) {
  .img-textBlock .img-textBlock__heading span {
    margin-top: 0;
  }

  .img-textBlock .img-textBlock__heading span::after {
    content: none;
  }
}

.img-textBlock .img-textBlock__description {
  font-size: 1.3rem;
  line-height: 2;
  letter-spacing: normal;
  margin-bottom: 22px;
}

@media all and (max-width: 768px) {
  .img-textBlock .img-textBlock__description {
    margin-bottom: 13px;
  }
}

.img-textBlock.img-textBlock--reversal .img-textBlock__img {
  background: none;
  overflow: hidden;
  position: relative;
}

.img-textBlock.img-textBlock--reversal .img-textBlock__img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: none;
  max-height: 100%;
}

.lt-ie11 .img-textBlock.img-textBlock--reversal .img-textBlock__img img {
  transition: .5s;
}

.lt-ie11 .img-textBlock.img-textBlock--reversal .img-textBlock__img img:hover {
  opacity: 0.7;
}

@media all and (max-width: 768px) {
  .img-textBlock.img-textBlock--reversal .img-textBlock__img {
    overflow: visible;
    width: 100%;
    min-height: 0;
  }

  .img-textBlock.img-textBlock--reversal .img-textBlock__img img {
    position: static;
    -webkit-transform: none;
    transform: none;
    max-width: 100%;
    max-height: none;
  }
}

.img-textBlock.img-textBlock--reversal .img-textBlock__text {
  color: #333;
  background: #f5f5f5;
  padding: 38px 46px 38px 46px;
}

@media all and (max-width: 768px) {
  .img-textBlock.img-textBlock--reversal .img-textBlock__text {
    padding: 38px 46px 38px 46px;
  }
}

.img-textBlock.img-textBlock--reversal .img-textBlock__heading {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 12px;
}

.img-textBlock.img-textBlock--reversal .img-textBlock__heading span {
  margin-top: 0;
}

.imgCarousel {
  padding-bottom: 25px;
  max-width: 1360px;
}

@media all and (max-width: 768px) {
  .imgCarousel {
    padding-bottom: 0;
  }
}

.imgCarousel .imgCarousel__img img {
  width: 100%;
}

.imgCarousel.slick-slider, .imgCarousel.slick-dotted.slick-slider {
  margin: 0 auto 53px;
}

@media all and (max-width: 768px) {
  .imgCarousel.slick-slider, .imgCarousel.slick-dotted.slick-slider {
    margin-bottom: 30px;
  }
}

.imgCarousel .slick-dots {
  line-height: 0;
  bottom: 0;
}

@media all and (max-width: 768px) {
  .imgCarousel .slick-dots {
    bottom: 20px;
  }
}

.imgCarousel .slick-dots li {
  width: 10px;
  height: 10px;
}

.imgCarousel .slick-dots li button {
  color: #c1c1c1;
  border-radius: 50%;
  background: #c1c1c1;
  margin: 0;
  width: 10px;
  height: 10px;
}

.imgCarousel .slick-dots li button:before {
  color: #c1c1c1;
  border-radius: 50%;
  content: '';
  width: 10px;
  height: 10px;
}

@media all and (max-width: 768px) {
  .imgCarousel .slick-dots li button {
    color: #fff;
    background: #fff;
  }
}

.imgCarousel .slick-dots .slick-active button {
  color: #025fae;
  background: #025fae;
}

.linkList {
  border-bottom: 1px solid #c1c1c1;
}

.linkList:not(:last-child) {
  margin-bottom: 32px;
}

@media all and (max-width: 768px) {
  .linkList {
    margin-right: 5.8vw;
    margin-bottom: 38px;
    margin-left: 5.8vw;
  }
}

.linkList>li {
  line-height: 1.57143;
  border-top: 1px solid #c1c1c1;
}

.linkList>li a {
  font-weight: 600;
  color: #025fae;
  position: relative;
  display: inline-block;
  padding: 9px 0;
}

.linkList>li a .size {
  color: #333;
  font-weight: 400;
}

.linkList.linkList--no_border {
  border: none;
}

.linkList.linkList--no_border li {
  border: none;
}

.linkList.linkList--row_higher li a {
  padding-top: 13px;
  padding-bottom: 13px;
}

.linkList.linkList--arrow li a {
  padding: 9px 0 9px 21px;
}

.linkList.linkList--arrow li a::before {
  font-family: "FontAwesome";
  color: #1f1f1f;
  content: '\f105';
  position: absolute;
  left: 10px;
}

.linkList.linkList--arrow.linkList--no_border li a {
  padding: 0 0 0 12px;
}

.linkList.linkList--arrow.linkList--no_border li a::before {
  left: 1px;
}

.linkList.linkList--underline li a {
  text-decoration: underline;
}

.linkList.linkList--multiLines {
  border-bottom: none;
}

.linkList.linkList--multiLines li {
  font-size: 1.3rem;
  line-height: 2.30769;
  border-top: none;
  border-bottom: 1px solid #c1c1c1;
  padding: 15px 0;
}

.linkList.linkList--multiLines li:first-child {
  padding-top: 0;
}

.linkList.linkList--multiLines li a {
  color: #025fae;
  padding: 0;
}

.linkList.linkList--sitemap {
  border: none;
  margin-bottom: 30px;
}

.linkList.linkList--sitemap>li {
  font-size: 1.4rem;
  border: none;
}

.linkList.linkList--sitemap>li:not(:first-child) {
  margin-top: 15px;
}

@media all and (max-width: 768px) {
  .linkList.linkList--sitemap>li:not(:first-child) {
    margin-top: 10px;
  }
}

.linkList.linkList--sitemap>li>a {
  font-weight: bold;
  padding: 0;
}

.linkList.linkList--sitemap>li .linkList--sitemap_child {
  border-bottom: none;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 15px;
}

.linkList.linkList--sitemap>li .linkList--sitemap_child>li {
  border: none;
  width: calc(100% / 3);
}

@media all and (max-width: 768px) {
  .linkList.linkList--sitemap>li .linkList--sitemap_child>li {
    width: 100%;
  }
}

.linkList.linkList--sitemap>li .linkList--sitemap_child>li a {
  padding: 0 0 0 21px;
  font-weight: normal;
}

.linkList.linkList--sitemap>li .linkList--sitemap_child>li a::before {
  color: #1f1f1f;
  font-family: "FontAwesome";
  content: '\f105';
  position: absolute;
  left: 10px;
}

.linkList.linkList--sitemap>li .linkList--sitemap_child>li>ul>li {
  padding-left: 21px;
}

.menuPanel {
  max-width: 1200px;
  margin: 0 auto 60px;
  display: flex;
}

@media all and (max-width: 768px) {
  .menuPanel {
    flex-wrap: wrap;
    margin-bottom: 40px;
  }
}

.menuPanel .menuPanel__item {
  width: calc(100% / 4);
}

@media all and (min-width: 769px) {
  .menuPanel .menuPanel__item:not(:last-child) .menuPanel__titleBlock::after {
    content: none;
  }
}

@media all and (max-width: 768px) {
  .menuPanel .menuPanel__item {
    width: 50%;
  }

  .menuPanel .menuPanel__item:not(:nth-child(-n + 2)) {
    margin-top: 20px;
  }

  .menuPanel .menuPanel__item:nth-child(odd) .menuPanel__titleBlock::before,
  .menuPanel .menuPanel__item:nth-child(odd) .menuPanel__titleBlock::after {
    content: none;
  }

  .menuPanel .menuPanel__item:nth-child(even) .menuPanel__titleBlock::after {
    content: none;
  }
}

.menuPanel .menuPanel__item a {
  display: block;
  color: #333;
}

.menuPanel .menuPanel__item a:visited {
  color: #333;
}

.menuPanel .menuPanel__item a:hover {
  color: #025fae;
  opacity: 1;
}

.menuPanel .menuPanel__item a:hover img {
  opacity: 0.7;
}

.menuPanel .menuPanel__item .menuPanel__img {
  margin-bottom: 24px;
}

.menuPanel .menuPanel__item .menuPanel__img img {
  width: 100%;
}

.menuPanel .menuPanel__item .menuPanel__titleBlock {
  text-align: center;
  position: relative;
}

.menuPanel .menuPanel__item .menuPanel__titleBlock::before {
  left: 0;
}

.menuPanel .menuPanel__item .menuPanel__titleBlock::after {
  right: 0;
}

.menuPanel .menuPanel__item .menuPanel__titleBlock .menuPanel__titleBlock_en {
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.66667;
  color: #025fae;
}

.menuPanel .menuPanel__item .menuPanel__titleBlock .menuPanel__titleBlock_heading {
  line-height: 1.57143;
}

@media all and (max-width: 768px) {
  .menuPanel .menuPanel__item .menuPanel__titleBlock .menuPanel__titleBlock_heading {
    font-size: 1.3rem;
  }
}

.menuPanel .menuPanel__item .menuPanel__titleBlock::before, .menuPanel .menuPanel__item .menuPanel__titleBlock::after {
  background-color: #c1c1c1;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 1px;
  height: calc(100% - 0.57em);
}

.multiColumn {
  margin-bottom: 40px;
}

.multiColumn .multiColumn__col1 {
  float: left;
  width: 37.96178%;
}

.multiColumn .multiColumn__col2 {
  float: right;
  width: 57.07006%;
}

@media all and (max-width: 768px) {

  .multiColumn .multiColumn__col1,
  .multiColumn .multiColumn__col2 {
    float: none;
    width: auto;
  }

  .multiColumn .multiColumn__col1 {
    margin-bottom: 30px;
  }
}

.multiColumn2 {
  margin-bottom: 40px;
}

.multiColumn2 .multiColumn2__col1 {
  float: left;
  width: 38.21656%;
}

.multiColumn2 .multiColumn2__col2 {
  float: right;
  width: 54.77707%;
}

@media all and (max-width: 768px) {

  .multiColumn2 .multiColumn2__col1,
  .multiColumn2 .multiColumn2__col2 {
    float: none;
    width: auto;
  }

  .multiColumn2 .multiColumn2__col1 {
    margin-bottom: 30px;
  }
}

.multiColumn3 {
  margin-bottom: 40px;
}

.multiColumn3 .multiColumn3__col1 {
  float: left;
  width: 33.12102%;
}

.multiColumn3 .multiColumn3__col2 {
  float: right;
  width: 61.78344%;
}

@media all and (max-width: 768px) {

  .multiColumn3 .multiColumn3__col1,
  .multiColumn3 .multiColumn3__col2 {
    float: none;
    width: auto;
  }

  .multiColumn3 .multiColumn3__col1 {
    margin-bottom: 30px;
  }
}

.newsList {
  margin: 0 auto;
  max-width: 1200px;
}

@media all and (max-width: 768px) {
  .newsList {
    margin: 0 5.8vw 40px;
    padding: 0;
  }
}

.newsList .newsList__title {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.875;
  text-align: center;
  margin-bottom: 8px;
}

@media all and (max-width: 768px) {
  .newsList .newsList__title {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
}

.newsList .newsList__list {
  border-top: 1px solid #c1c1c1;
}

.newsList .newsList__list li {
  border-bottom: 1px solid #c1c1c1;
}

.newsList .newsList__list li a {
  color: #025fae;
  box-sizing: content-box;
  display: flex;
  align-items: center;
  padding: 18px 0 18px;
  min-height: 4.8rem;
}

.newsList .newsList__list li a::after {
  font-size: 0;
  content: '';
  min-height: inherit;
}

@media all and (max-width: 768px) {
  .newsList .newsList__list li a {
    display: block;
    padding: 15px 0 15px;
    min-height: 0;
  }
}

.newsList .newsList__list li .newsList__date {
  font-family: "Roboto", sans-serif;
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 2;
  color: #333;
  white-space: nowrap;
  margin-right: 22px;
}

@media all and (max-width: 768px) {
  .newsList .newsList__list li .newsList__date {
    font-size: 1.2rem;
    line-height: 1.75;
    display: inline-block;
    margin-right: 10px;
  }
}

.newsList .newsList__list li .newsList__tag {
  font-size: 1.0rem;
  font-weight: bold;
  color: #fff;
  line-height: 2.1;
  text-align: center;
  min-width: 105px;
}

@media all and (max-width: 768px) {
  .newsList .newsList__list li .newsList__tag {
    display: inline-block;
    padding: 0 5px;
    width: auto;
  }
}

.newsList .newsList__list li .newsList__tag.newsList__tag--gray {
  background: #a7a7a7;
}

.newsList .newsList__list li .newsList__tag.newsList__tag--red {
  background: #cc0000;
}

.newsList .newsList__list li .newsList__tag.newsList__tag--blue {
  background: #448aca;
}

.newsList .newsList__list li .newsList__tag.newsList__tag--green {
  background: #22aa55;
  /* background: #8fc31f; */
}

.newsList .newsList__list li .newsList__tag.newsList__tag--midblue {
  background: #191970;
}

.newsList .newsList__list li .newsList__content {
  line-height: 1.71429;
  margin-left: 23px;
}

@media all and (max-width: 768px) {
  .newsList .newsList__list li .newsList__content {
    font-size: 1.3rem;
    line-height: 1.53846;
    margin-top: 5px;
    margin-left: 0;
  }
}

.newsList .newsList__more {
  text-align: center;
  margin-top: 30px;
}

.newsList .newsList__more2 {
  text-align: right;
  margin-top: 40px;
}

@media all and (max-width: 768px) {
  .newsList .newsList__more2 {
    text-align: center;
  }
}

.newsList.newsList--archive {
  padding-bottom: 8px;
}

.newsList.newsList--archive .newsList__list {
  border-top: none;
  margin-bottom: 0;
}

.heading2+.newsList.newsList--archive {
  margin-top: -14px;
}

@media all and (max-width: 768px) {
  .newsList .heading4 {
    text-align: center;
    margin-bottom: 20px;
  }
}

.newsList .btn1 {
  display: inline-block;
}

.newsTab .newsTab__tab {
  display: flex;
  justify-content: center;
}

@media all and (max-width: 768px) {
  .newsTab .newsTab__tab {
    justify-content: space-between;
    margin: 0 5.8vw;
  }
}

.newsTab .newsTab__tab li {
  position: relative;
  margin: 0 50px;
  padding-bottom: 22px;
  min-width: 120px;
}

.newsTab .newsTab__tab li:focus {
  outline: none;
}

.newsTab .newsTab__tab li a {
  font-weight: bold;
  color: #333;
  text-align: center;
  display: block;
}

.newsTab .newsTab__tab li a:focus {
  outline: none;
}

.newsTab .newsTab__tab li::after {
  border-bottom: 4px solid #025fae;
  content: "";
  position: absolute;
  bottom: -1px;
  z-index: 1;
  width: 100%;
  height: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  transition: -webkit-transform .2s ease-out;
  transition: transform .2s ease-out;
  transition: transform .2s ease-out, -webkit-transform .2s ease-out;
}

.newsTab .newsTab__tab li.ui-tabs-active::after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

@media all and (max-width: 768px) {
  .newsTab .newsTab__tab li {
    margin: 0;
    min-width: 0;
  }

  .newsTab .newsTab__tab li a {
    font-size: 1.2rem;
  }
}

@media all and (max-width: 768px) {
  .newsTab .newsList {
    margin-right: 0;
    margin-left: 0;
  }

  .newsTab .newsList .newsList__list a {
    padding-right: 5.8vw;
    padding-left: 5.8vw;
  }
}

.notes {
  font-size: 1.2rem;
  line-height: 2.5;
}

.numeralList {
  margin-bottom: 24px;
}

.numeralList li {
  text-indent: 0;
  margin-left: 0;
}

.numeralList li::after {
  clear: both;
  content: "";
  display: table;
}

.numeralList li .numeralList__num {
  float: left;
  min-width: 30px;
}

.numeralList li .numeralList__text {
  overflow: hidden;
  display: block;
}

@media all and (max-width: 768px) {
  .numeralList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.harassmentList {
  margin-bottom: 24px;
}

.harassmentList li {
  text-indent: -2.1em;
  margin-left: 2.1em;
}

ul.harassmentList>li>ul>li {
  text-indent: -1.5em;
  margin-left: 0.2em;
}

ul.harassmentList>li>ul>li>ul>li {
  text-indent: -1.075em;
  margin-left: 1.075em;
}

@media all and (max-width: 768px) {
  .harassmentList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.harassmentList_En {
  margin-bottom: 24px;
}

.harassmentList_En li {
  text-indent: -1.5em;
  margin-left: 1.5em;
}

@media all and (max-width: 768px) {
  .harassmentList_En {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.harassmentList_En_sub li {
  text-indent: -3.0em;
  margin-left: 3.0em;
}

.Listbottom {
  margin-bottom: 24px;
}

.humanrightsList {
  display: flex;
  margin-bottom: 24px;
}

.humanrightsList li:nth-child(n+2) {
  margin-left: 20px;
}

@media all and (max-width: 768px) {
  .humanrightsList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.humanrightsList_En {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

.list_En_mg {
  margin-left: 20px;
}

@media all and (max-width: 768px) {
  .humanrightsList_En {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .list_En_mg {
    margin-left: 0;
  }
}

.Compensation_list {
  display: flex;
  margin-bottom: 24px;
}

.Compensation_item2 {
  margin-left: 20px;
}

@media all and (max-width: 768px) {
  .Compensation_list {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
    min-width: 583px;
  }
}

.overviewTable {
  margin-bottom: 24px;
  padding: 8px 0;
}

.overviewTable table {
  border: 1px solid #c1c1c1;
  width: 100%;
}

.overviewTable caption {
  text-align: right;
  margin-top: -8px;
  margin-bottom: 7px;
}

.overviewTable th, .overviewTable td {
  font-size: 1.4rem;
  vertical-align: top;
}

.overviewTable th {
  font-weight: bold;
  text-align: left;
  background-color: #f5f5f5;
  width: 24.4%;
  padding: 13px 18px;
}

.overviewTable td, .overviewTable .overviewTable__cellInner {
  padding: 13px 40px;
}

.overviewTable tr:not(:first-child) th, .overviewTable tr:not(:first-child) td {
  border-top: 1px solid #c1c1c1;
}

.overviewTable .overviewTable__cell--padding_none {
  padding: 0;
}

.overviewTable .overviewTable__figure {
  padding: 1px;
}

@media all and (max-width: 768px) {
  .overviewTable {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .overviewTable table, .overviewTable caption, .overviewTable tbody, .overviewTable tr, .overviewTable th, .overviewTable td {
    display: block;
  }

  .overviewTable table {
    border: none;
  }

  .overviewTable tr:last-child td {
    border-bottom: 1px solid #c1c1c1;
  }

  .overviewTable th, .overviewTable td {
    border-top: 1px solid #c1c1c1;
    border-right: 1px solid #c1c1c1;
    border-left: 1px solid #c1c1c1;
    padding: 13px 5.8vw;
    width: auto;
  }

  .overviewTable td {
    border-top: 1px solid #c1c1c1;
  }

  .overviewTable .overviewTable__cellInner {
    padding: 13px 5.8vw;
  }
}

.panelCarousel {
  margin: 60px auto;
  padding: 0 60px;
  max-width: 1320px;
}

@media all and (max-width: 768px) {
  .panelCarousel {
    margin-top: 40px;
    padding: 0;
  }
}

.panelCarousel .panelCarousel__item {
  box-sizing: content-box;
  float: none;
  padding: 0 22px;
  max-width: 370px;
}

.panelCarousel .panelCarousel__item:focus {
  outline: none;
}

.panelCarousel .panelCarousel__item:not(.slick-active) {
  opacity: 0;
  transition: all 0.5s;
}

@media all and (max-width: 768px) {
  .panelCarousel .panelCarousel__item {
    padding: 0 8px;
    width: 80vw;
    max-width: 300px;
  }

  .panelCarousel .panelCarousel__item:not(.slick-active) {
    opacity: 0.4;
    transition: none;
  }
}

.lt-ie11 .panelCarousel .panelCarousel__img img {
  width: 370px;
}

.panelCarousel .panelCarousel__content {
  border: 1px solid #c1c1c1;
  border-top: transparent;
  padding-top: 25px;
  padding-bottom: 28px;
}

.panelCarousel .panelCarousel__line1 {
  text-align: center;
  margin: 0 auto 17px;
  width: 90%;
}

@media all and (max-width: 768px) {
  .panelCarousel .panelCarousel__line1 {
    width: 80%;
  }
}

.panelCarousel .panelCarousel__line2 {
  position: relative;
  margin: 0 auto 20px;
  width: 75%;
}

.panelCarousel .panelCarousel__line2::before {
  background-color: #025fae;
  content: "";
  display: block;
  margin: 0 auto 21px;
  width: 45px;
  height: 2px;
}

@media all and (max-width: 768px) {
  .panelCarousel .panelCarousel__line2 {
    width: 80%;
  }
}

.panelCarousel .panelCarousel__btn {
  text-align: center;
}

.panelCarousel .panelCarousel__heading {
  font-family: "Roboto", sans-serif;
  font-size: 2.1rem;
  font-weight: bold;
  color: #025fae;
  line-height: 1.42857;
  letter-spacing: 0;
}

.panelCarousel .panelCarousel__heading2 {
  font-size: 1.6rem;
  line-height: 1.75;
  color: #025fae;
}

.panelCarousel .panelCarousel__subheading {
  font-size: 1.4rem;
}

.panelCarousel .panelCarousel__subheading2 {
  font-size: 1.2rem;
  line-height: 1.71429;
}

.panelCarousel .panelCarousel__desc {
  font-size: 1.3rem;
  line-height: 1.69231;
  text-align: left;
}

.panelCarousel .slick-track {
  display: flex;
}

.panelCarousel .slick-arrow {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  position: absolute;
  background: #025fae;
  z-index: 100;
}

.panelCarousel .slick-arrow:before {
  content: '';
  position: absolute;
  top: 50%;
}

.panelCarousel .slick-arrow:hover {
  background: #004098;
}

.panelCarousel .slick-next {
  right: 0;
}

.panelCarousel .slick-next:before {
  width: 8px;
  height: 8px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  left: 48%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.panelCarousel .slick-prev {
  left: 0;
}

.panelCarousel .slick-prev:before {
  width: 8px;
  height: 8px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  left: 52%;
  -webkit-transform: translate(-50%, -50%) rotate(-135deg);
  transform: translate(-50%, -50%) rotate(-135deg);
}

.panelCarousel.panelCarousel--other {
  padding: 0 60px;
  max-width: 1320px;
}

.panelCarousel.panelCarousel--other a {
  color: #333;
  display: block;
}

@media all and (max-width: 768px) {
  .panelCarousel.panelCarousel--other {
    margin-top: 60px;
    margin-bottom: 60px;
    padding: 0;
  }
}

.panelCarousel.panelCarousel--other .panelCarousel__item {
  padding: 0;
  max-width: 400px;
}

.panelCarousel.panelCarousel--other .panelCarousel__img {
  margin-bottom: 28px;
}

@media all and (max-width: 768px) {
  .panelCarousel.panelCarousel--other .slick-active .panelCarousel__content {
    border-left: 1px solid #c1c1c1;
    border-right: 1px solid #c1c1c1;
  }
}

.panelCarousel.panelCarousel--other .last_activeCarousel .panelCarousel__content {
  border-right: 1px solid #c1c1c1;
}

.panelCarousel.panelCarousel--other .panelCarousel__content {
  border: none;
  border-left: 1px solid #c1c1c1;
  padding: 0;
}

@media all and (max-width: 768px) {
  .panelCarousel.panelCarousel--other .panelCarousel__content {
    border: none;
  }
}

.panelCarousel.panelCarousel--other .panelCarousel__line1 {
  margin-bottom: 0;
}

.img-textBlock--reversal+.panelCarousel.panelCarousel--other {
  margin-top: 60px;
}

@media all and (max-width: 768px) {
  .img-textBlock--reversal+.panelCarousel.panelCarousel--other {
    margin-top: 0;
  }
}

.profile {
  margin-bottom: 32px;
}

@media all and (max-width: 768px) {
  .profile {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

@media all and (max-width: 768px) {
  .profile .profile__post {
    display: none;
  }
}

.profile .profile__name {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.66667;
}

.profile .profile__name_en {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.875;
  margin-top: 23px;
}

.profile2 .profile2__name {
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.33333;
  text-align: center;
}

.profile2 .profile2__more {
  text-align: center;
  margin-top: 12px;
  margin-bottom: 14px;
}

.profile2>*:last-child {
  margin-bottom: 0;
}

.profile2 .figureBlock {
  margin-bottom: 19px;
}

.profileTable:not(:last-child) {
  margin-bottom: 24px;
}

.profileTable+.heading3 {
  margin-top: 32px;
}

@media all and (max-width: 768px) {
  .profileTable+.heading3 {
    margin-top: 22px;
  }
}

.profileTable p {
  margin-bottom: 24px;
}

.profileTable th, .profileTable td {
  font-size: 1.4rem;
  line-height: 1.71429;
  vertical-align: top;
}

.profileTable th {
  font-weight: normal;
  text-align: left;
  box-sizing: content-box;
  padding-right: 1.5em;
  min-width: 6.75em;
}

@media all and (max-width: 768px) {
  .profileTable {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.recruitMenu {
  width: 100%;
  background: #fff;
  border: 5px solid #dfdfd7;
  padding: 26px 23px;
  height: 100%;
  position: relative;
}

@media all and (max-width: 768px) {
  .recruitMenu {
    padding: 20px 23px;
    margin-bottom: 15px;
  }
}

.recruitMenu .recruitMenu__heading {
  font-size: 3.0rem;
  color: #333;
}

@media all and (max-width: 768px) {
  .recruitMenu .recruitMenu__heading {
    font-size: 2.0rem;
  }
}

.recruitMenu:before {
  position: absolute;
  content: '';
  width: 35px;
  height: 35px;
  bottom: -5px;
  right: -5px;
  border-top: 35px solid transparent;
}

.recruitMenu--pink:before {
  border-right: 35px solid #f5afa1;
}

.recruitMenu--purple {
  background: #fbfbfa;
}

.recruitMenu--purple:before {
  border-right: 35px solid #d4acd8;
}

.recruitMenu--yellow:before {
  border-right: 35px solid #fad37c;
}

.remodal-overlay {
  background: rgba(255, 255, 255, 0.8) !important;
}

.remodal-wrapper {
  position: relative;
  padding: 0 !important;
}

.remodal-wrapper .remodal-close {
  color: #1e57a4;
  right: 0;
  left: auto;
  width: 50px;
  height: 50px;
}

.remodal-wrapper .remodal-close:before, .remodal-wrapper .remodal-close:after {
  line-height: normal;
  background: #1f57a5;
  content: '';
  width: 30px;
  height: 2px;
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.remodal-wrapper .remodal-close:after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.remodal-wrapper .remodal {
  padding: 0;
  height: 100%;
  background: transparent;
}

.remodal-wrapper .remodal .remodal__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding: 0 5.8vw;
  width: 100%;
}

.searchForm {
  display: flex;
  justify-content: flex-end;
}

@media all and (max-width: 768px) {
  .searchForm {
    margin: 0 auto;
    max-width: 315px;
  }
}

.searchForm .searchForm__input {
  font-size: 1.6rem;
  border: 1px solid #c1c1c1;
  background-color: #fff;
  box-sizing: border-box;
  padding: 2px 4px;
  font-size: 1.4rem;
  line-height: 2.07143;
  border-right: transparent;
  border-radius: 0;
  margin: 0;
  width: 265px;
}

@media all and (max-width: 768px) {
  .searchForm .searchForm__input {
    font-size: 1.6rem;
    flex: 1;
    width: auto;
  }
}

.searchForm .searchForm__submitBtn {
  font-size: 1.5rem;
  color: #fff;
  border: none;
  background: #024199;
  display: inline-block;
  position: relative;
  margin: 0;
  padding: 0;
  width: 35px;
  cursor: pointer;
}

.searchForm .searchForm__submitBtn::before {
  font-size: 1.5rem;
  vertical-align: middle;
  display: inline-block;
}

@media all and (max-width: 768px) {
  .searchForm .searchForm__submitBtn {
    font-size: 2.3rem;
    width: 50px;
    height: 50px;
  }
}

/* economy */
.economy__arrow-01 {
  margin: 20px auto;
}

.economy__sub-title {
  width: 100%;
  background-color: #025fae;
  color: #fff;
  text-align: center;
  font-weight: bold;
  height: 40px;
  line-height: 2.9;
}

.economy__content-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 25px;
  margin-bottom: 25px;
}

.economy__content-box {
  letter-spacing: normal;
  width: 180px;
  border: 1px solid #999999;
  box-sizing: border-box;
}

.economy__content-title {
  font-size: 16px;
  font-weight: bold;
  color: #025fae;
  text-align: center;
  background: #ffcc00;
  line-height: 44px;
}

.economy__content-box-inner {
  padding: 10px;
}

.economy__content-caption {
  line-height: 1.5;
}

.economy__content-pic {
  margin-top: 25px;
}

.economy__arrow-02--sp {
  display: none;
}

.economy__text a[target="_blank"]::after {
  opacity: 0;
}

@media all and (max-width: 768px) {
  .economy__content-wrap {
    display: block;
    text-align: center;
  }

  .economy__content-box {
    display: inline-block;
    width: 50%;
  }

  .economy__arrow-02 {
    display: none;
  }

  .economy__arrow-02--sp {
    display: block;
    margin-bottom: 5px;
  }
}


section.section+section.section {
  margin-top: 52px;
}

section.section section:not(:first-child),
section.section div.nestedSection:not(:first-child) {
  margin-top: 52px;
}

section.section section.section--mt:not(:first-child),
section.section div.nestedSection.section--mt:not(:first-child) {
  margin-top: 52px;
}

section.section section.section--mt2:not(:first-child),
section.section div.nestedSection.section--mt2:not(:first-child) {
  margin-top: 72px;
}

section.section section>p, section.section section>ul:not([class]), section.section section>dl,
section.section div.nestedSection>p,
section.section div.nestedSection>ul:not([class]),
section.section div.nestedSection>dl {
  margin-bottom: 24px;
}

section.section>p, section.section>ul:not([class]), section.section>dl {
  margin-bottom: 24px;
}

section.section>*:last-child,
section.section section>*:last-child,
section.section div.nestedSection>*:last-child {
  margin-bottom: 0;
}

section.section .heading2+section,
section.section .heading2+div.nestedSection,
section.section .heading3+section,
section.section .heading3+div.nestedSection {
  margin-top: 0;
}

@media all and (max-width: 768px) {

  section.section section:not(:first-child),
  section.section div.nestedSection:not(:first-child) {
    margin-top: 32px;
  }

  section.section section.section--mt:not(:first-child),
  section.section div.nestedSection.section--mt:not(:first-child) {
    margin-top: 52px;
  }

  section.section section.section--mt2:not(:first-child),
  section.section div.nestedSection.section--mt2:not(:first-child) {
    margin-top: 72px;
  }

  section.section section>p, section.section section>ul:not([class]), section.section section>dl,
  section.section div.nestedSection>p,
  section.section div.nestedSection>ul:not([class]),
  section.section div.nestedSection>dl {
    margin: 0 5.8vw 14px;
  }

  section.section>p, section.section>ul:not([class]), section.section>dl {
    margin: 0 5.8vw 14px;
  }
}

.sitemap section {
  margin-top: 52px;
}

@media all and (max-width: 768px) {
  .sitemap section {
    margin-top: 32px;
  }
}

.sitemap>*:last-child,
.sitemap section>*:last-child {
  margin-bottom: 0;
}

.sitemap .sitemap__list--pageLayer>li>a {
  display: inline-block;
  position: relative;
  padding-left: 12px;
}

.sitemap .sitemap__list--pageLayer>li>a::before {
  color: #1f1f1f;
  font-family: "FontAwesome";
  content: '\f105';
  position: absolute;
  left: 1px;
}

@media all and (max-width: 768px) {
  .sitemap .sitemap__list {
    margin: 0 5.8vw;
  }
}

.sitemap .sitemap__list--categoryLayer>li:not(:first-child) {
  margin-top: 16px;
}

.sitemap .sitemap__list--categoryLayer>li>a {
  font-size: 1.8rem;
  line-height: 1.66667;
  font-weight: bold;
}

.sitemap .sitemap__list--categoryLayer .sitemap__list--pageLayer {
  margin-top: 6px;
}

.sitemap .sitemap__list--pageLayer {
  line-height: 1.71429;
  display: flex;
  flex-wrap: wrap;
}

.sitemap .sitemap__list--pageLayer>li {
  padding: 3px 0;
  width: 23.21429%;
}

.sitemap .sitemap__list--pageLayer>li:not(:nth-child(4n-3)) {
  margin-left: 2.38095%;
}

@media all and (max-width: 768px) {
  .sitemap .sitemap__list--pageLayer {
    display: block;
  }

  .sitemap .sitemap__list--pageLayer>li {
    width: 100%;
  }

  .sitemap .sitemap__list--pageLayer>li:not(:nth-child(4n-3)) {
    margin-left: 0;
  }
}

.sitemap .sitemap__list--pageLayer.sitemap__list--col_2>li {
  width: 48.80952%;
}

.sitemap .sitemap__list--pageLayer.sitemap__list--col_2>li:not(:nth-child(4n-3)) {
  margin-left: 0;
}

.sitemap .sitemap__list--pageLayer.sitemap__list--col_2>li:not(:nth-child(2n-1)) {
  margin-left: 2.38095%;
}

@media all and (max-width: 768px) {
  .sitemap .sitemap__list--pageLayer.sitemap__list--col_2>li {
    width: 100%;
  }

  .sitemap .sitemap__list--pageLayer.sitemap__list--col_2>li:not(:nth-child(2n-1)) {
    margin-left: 0;
  }
}

.stockholderTable {
  padding: 8px 0;
}

@media all and (max-width: 768px) {
  .stockholderTable {
    overflow: scroll;
    margin: 0 0 0 5.8vw;
  }
}

.stockholderTable table {
  border: 1px solid #c1c1c1;
  width: 100%;
}

.stockholderTable table th {
  font-weight: bold;
  text-align: center;
  background-color: #f5f5f5;
  padding: 12px 20px;
}

.stockholderTable table td {
  line-height: 1.71429;
  border-top: 1px solid #c1c1c1;
  padding: 15px 20px;
}

.stockholderTable table td:not(:first-child) {
  text-align: center;
}

.subMenu {
  margin-right: 14.59459%;
}

.subMenu+.subMenu {
  margin-top: 32px;
}

.subMenu>ul a {
  font-size: 1.4rem;
  font-weight: bold;
  color: #025fae;
  line-height: 1.42857;
  border-top: 1px solid #fff;
  display: block;
  padding: 9px 24px 9px 40px;
}

.subMenu>ul li.current>a,
.subMenu>ul li.current.active>a,
.subMenu>ul li.current.active_2>a {
  font-weight: bold;
  background-color: #ffcd00;
}

.subMenu>ul>li>a {
  color: #fff;
  border-top: none;
  background: url(/assets/img/subMenu/arrow_active_white.png) 20px 2.65rem no-repeat #025fae;
  background-size: 9px auto;
  padding-top: 20px;
  padding-bottom: 20px;
}

.subMenu>ul>li>ul {
  border: 1px solid #c1c1c1;
  border-top: none;
}

.subMenu>ul>li>ul>li:not(:first-child) {
  border-top: 1px solid #c1c1c1;
}

.subMenu>ul>li>ul>li>a {
  background: url(/assets/img/subMenu/arrow.png) 38px 1.35rem no-repeat #f5f5f5;
  background-size: auto 9px;
  padding-left: 52px;
}

.subMenu>ul>li>ul>li.active>a {
  background: url(/assets/img/subMenu/arrow_active.png) 36px 1.55rem no-repeat #f5f5f5;
  background-size: 9px auto;
}

.subMenu>ul>li>ul>li>ul>li {
  border-top: 1px solid #c1c1c1;
}

.subMenu>ul>li>ul>li>ul>li>a {
  font-weight: normal;
  background: url(/assets/img/subMenu/arrow.png) 58px 1.35rem no-repeat;
  background-size: auto 9px;
  padding-left: 72px;
}

.subMenu>ul>li>ul>li>ul>li.active_2>a {
  background: url(/assets/img/subMenu/arrow_active.png) 55px 1.55rem no-repeat #f5f5f5;
  background-size: 9px auto;
}

.subMenu>ul>li>ul>li>ul>li>ul>li {
  border-top: 1px solid #c1c1c1;
}

.subMenu>ul>li>ul>li>ul>li>ul>li>a {
  font-weight: normal;
  background: url(/assets/img/subMenu/arrow.png) 78px 1.35rem no-repeat;
  background-size: auto 9px;
  padding-left: 92px;
}

.summary {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 44px;
}

@media all and (max-width: 768px) {
  .summary {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.summary2 {
  margin-bottom: 44px;
}

@media all and (max-width: 768px) {
  .summary2 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.txtAllindent＿1 {
  padding-left: 1.5rem;
}

.textMarkerList,
.textMarkerList_2,
.textMarkerList_3 {
  margin-bottom: 24px;
}

.textMarkerList li {
  text-indent: -1.075em;
  margin-left: 1.075em;
}

.textMarkerList_2 li {
  text-indent: -1.075em;
  margin-left: -0.2em;
}

.textMarkerList_3 li {
  text-indent: -2.075em;
  margin-left: 2.075em;
}

.textMarkerList li::before,
.textMarkerList_2 li::before,
.textMarkerList_3 li::before {
  content: "・";
}

.textMarkerList_3 li ul li {
  text-indent: -1.075em;
  margin-left: 2.075em;
}

.textMarkerList_3_en li ul li {
  text-indent: -1.5em;
}

.textMarkerList_3--check li {
  position: relative;
}

.textMarkerList_3--check li ul li {
  text-indent: -0.075em;
  margin-left: 2.075em;
}

.textMarkerList_3--check li ul li::before {
  content: "";
  display: block;
  position: absolute;
  top: 0.7em;
  left: -2em;
  width: 12px;
  height: 6px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  transform: rotate(-45deg);
}

.textMarkerList_3--nul li::before {
  content: "";
}

.textMarkerList li a .icon-external,
.textMarkerList_2 li a .icon-external,
.textMarkerList_3 li a .icon-external {
  margin-left: 1.575em;
}

@media all and (max-width: 768px) {

  .textMarkerList,
  .textMarkerList_2,
  .textMarkerList_3 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.textMarkerList.textMarkerList--important li,
.textMarkerList_2.textMarkerList_2--important li,
.textMarkerList_3.textMarkerList_3--important li {
  font-size: 1.6rem;
  line-height: 1.875;
}

ul.benefitsList {
  margin-bottom: 44px;
}

ul.benefitsList>li {
  text-indent: -1.425em;
  margin-left: 1.425em;
}

ul.benefitsList>li>ul>li {
  text-indent: -1.2em;
  margin-left: 1.2em;
}

@media all and (max-width: 768px) {
  ul.benefitsList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

/*# sourceMappingURL=style.css.map */
/* 18-07-04 shimoyamada */
.footer-countrylist {}

.footer-countrylist td {
  white-space: nowrap;
}

.footer-countrylist td .arrowLink {
  margin-left: 0;
}

@media all and (max-width: 768px) {

  .footer-countrylist,
  .footer-countrylist tbody,
  .footer-countrylist tr {
    display: block;
  }

  .footer-countrylist td {
    display: inline-block;
    width: 48%;
    /*white-space: normal;*/
  }
}

/* インデント系 */
ul.governanceList {
  margin-bottom: 24px;
}

ul.governanceList>li {
  text-indent: -1.55em;
  margin-left: 1.55em;
}

ul.governanceList>li:not(:first-child) {
  margin-top: 24px;
}

ul.governanceList>li>ul>li {
  text-indent: -2.875em;
  margin-left: 1.5em;
}

ul.governanceList>li>ul>li>ul>li {
  text-indent: -1.075em;
  margin-left: 1.075em;
}

@media all and (max-width: 768px) {
  ul.governanceList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

ul.securityList {
  margin-bottom: 44px;
}

ul.securityList>li {
  text-indent: -1.425em;
  margin-left: 1.425em;
}

ul.securityList>li:not(:first-child) {
  margin-top: 30px;
}

@media all and (max-width: 768px) {
  ul.securityList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

ul.managementList {
  margin-bottom: 44px;
}

ul.managementList>li {
  text-indent: -1.525em;
  margin-left: 1.525em;
}

@media all and (max-width: 768px) {
  ul.managementList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.meetingList {
  text-indent: -6.1em;
  margin-left: 6.1em;
}

.meetingList_En {
  text-indent: -6.8em;
  margin-left: 6.8em;
}

.esgList p {
  text-indent: -1.5em;
  margin-left: 1.5em;
}

.esgList ul {
  margin-left: 1.5em;
}

.esgList ul:not(:last-child) {
  margin-bottom: 5px;
}

@media all and (max-width: 768px) {
  .esgList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.esgList2 {
  margin-left: 1.5em;
}

.esgList2 p img {
  width: 77%;
  max-width: 100%;
  height: auto;
}

@media all and (max-width: 768px) {
  .esgList2 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .esgList2 p img {
    width: 100%;
  }
}

.innermgList {
  margin-left: 3.8rem;
}

@media all and (max-width: 768px) {
  .innermgList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

ul.isoList>li>ul>li {
  text-indent: -4.4em;
  margin-left: 6.6em;
}

ul.isoList2>li>ul>li {
  text-indent: -8.6em;
  margin-left: 9.6em;
}

@media all and (max-width: 768px) {
  .isoList {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .isoList_2 {
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }
}

.mgb {
  margin-bottom: 24px;
}

.mgb-0 {
  margin-bottom: 0 !important;
}

/* テキスト整列用（history.htmlに適用中） */
.historySpaceJp {
  margin-left: 1em;
}

.historySpaceEn {
  display: flex;
  justify-content: space-between;
  width: 6em !important;
}

/* センター寄せ見出し */
.heading_Center {
  text-align: center;
  font-weight: bold;
  font-size: 1.2em;
}

/* センター寄せ見出し用 */
.linkList.linkList--arrow.linkList--no_border li span a::before {
  left: -2px;
  bottom: 2px;
}

.linkList.linkList--arrow li span a::before {
  font-family: "FontAwesome";
  color: #1f1f1f;
  content: '\f105';
  position: absolute;
  left: 10px;
}

/* 英文注訳用 */
.annotation {
  text-indent: -2.5em;
  margin-left: 2.5em;
}

/* ポップアップウインドウの設定 */
.popup {
  background-color: rgba(0, 0, 0, .8);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  z-index: 99999;
}

.pop__inner {
  background-color: #efefef;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  margin: auto;
  height: auto;
}

@media all and (max-width: 768px) {
  .popup {
    width: 100%;
  }

  .pop__inner {
    width: 90%;
  }
}

/* チェックボックスの初期設定 */
#popup__On {
  display: none;
}

/* チェックされたらポップアップウインドウを開く */
#popup__On:checked+.popup {
  display: block;
}

/* 閉じるボタン */
.btn__Close {
  background: #025fae;
  border-radius: 10px;
  color: #fff;
  padding: 10px;
  cursor: pointer;
  margin: 10px auto;
  width: 90%;
  text-align: center;
}

/* 開くボタン */
.btn__Open {
  padding: 10px;
  cursor: pointer;
  margin: 10px auto;
  width: 100%;
  text-align: right;
}

/* ポップアップの内容 */
.popup__Content {
  margin: 40px auto 40px auto;
  width: 90%;
  background-color: #ffffff;
}

/* ボタンなどの高さ調整用 */
.height__Adjustment {
  opacity: 0;
}

/* レスポンシブ版では非表示 */
@media all and (max-width: 768px) {
  .height__Adjustment {
    display: none;
  }
}

.rohsmarkList {
  display: flex;
  align-items: center;
}

.rohsmarkList li:nth-of-type(n+2) {
  margin-left: 20px;
}

@media all and (max-width: 768px) {
  .rohsmarkList {
    display: block;
    margin-right: 5.8vw;
    margin-left: 5.8vw;
  }

  .rohsmarkList li {
    margin-bottom: 15px;
  }

  .rohsmarkList li:nth-of-type(n+2) {
    margin-left: 0;
  }
}

.List__boder {
  border: 1px solid #000000;
  padding: 10px;
}

/* ページ内リンク用 */
.anchor__link {
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  align-items: center;
}

.anchor__link li {
  width: 33.33%;
  border-right: 1px solid #c1c1c1;
  margin-bottom: 32px;
}

.anchor__link li:nth-of-type(3n + 1) {
  border-left: 1px solid #c1c1c1;
}

.anchor__link li a {
  font-weight: bold;
  padding: 10px;
}

/* ページ内リンク設置時のセクションマージン無効 */
.section__anchor--mt {
  margin-top: 0 !important;
}

@media all and (max-width: 768px) {
  .anchor__link {
    margin: 0 5.8vw 0;
  }

  .anchor__link li {
    width: 50%;
  }

  .anchor__link li:nth-of-type(3n + 1) {
    border-left: none;
  }

  .anchor__link li:nth-of-type(odd) {
    border-left: 1px solid #c1c1c1;
  }

  .anchor__link li:nth-of-type(even) {
    border-right: 1px solid #c1c1c1;
  }
}

/* ページ内リンク用ここまで */
/* ページ内リンクJS調整用 */
span.anchor {
  display: block;
  padding-top: 170px;
  margin-top: -170px;
}

@media all and (max-width: 768px) {
  span.anchor {
    display: block;
    padding-top: 70px;
    margin-top: -70px;
  }
}

/*Add css*/
html[lang="en"] .newsList .newsList__list li .newsList__date {
  min-width: 97px;
}
