@charset "utf-8";
@font-face {
  font-family: "Oswald";
  src: url("/ir/infographics/font/oswald-regular.ttf") format("truetype");
}
/* ==========================================================================
   Foundation
   ========================================================================== */

/* Reset
   ----------------------------------------------------------------- */

html {
  overflow-y: visible;
}
ol {
  list-style: none;
}
button {
  background-color: transparent;
  border: none;
  padding: 0;
  outline: none;
  appearance: none;
}
th {
  font-weight: normal;
}

/* Base
   ----------------------------------------------------------------- */

* {
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  min-width: 320px;
}
body,
button,
select,
input,
textarea {
  font-size: 1.6em;
  line-height: 1.25;
  font-family: "メイリオ", Meiryo, Osaka, "Helvetica Neue", HelveticaNeue, Arial,
    -apple-system, BlinkMacSystemFont, "Segoe UI", "游ゴシック体", "Yu Gothic",
    YuGothic, "游ゴシック Medium", "Yu Gothic Medium", YuGothicM,
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3,
    "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
  color: #333;
  -webkit-text-size-adjust: 100%;
}

/*IE用*/
@media all and (-ms-high-contrast: none) {
  body,
  button,
  select,
  input,
  textarea {
    font-family: "メイリオ", Meiryo, Osaka, "Helvetica Neue", HelveticaNeue,
      Arial, -apple-system, BlinkMacSystemFont, "Segoe UI", "游ゴシック体",
      "Yu Gothic", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", YuGothicM,
      "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3,
      "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック",
      "MS PGothic", sans-serif;
    line-height: 1.5;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: ;
  }
}
main {
  display: block;
}
body div,
p,
span,
strong,
a {
  color: inherit;
  font-weight: inherit;
}

a,
a > span {
  text-decoration: none;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
a img {
  background-color: rgba(255, 255, 255, 0.01);
  opacity: 1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
a:hover img {
  display: inline-block;
  opacity: 0.6;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    cursor: default;
  }
  a[href^="tel:"]:hover {
    color: inherit;
    text-decoration: none !important;
  }
  a[href^="tel:"]:hover img {
    opacity: 1;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

@font-face {
  font-family: "DIN Condensed Bold";
  font-style: normal;
  font-weight: normal;
  src: url("/sharedir/fonts/din-condensed/DINCondensed-Bold.woff")
    format("woff");
}

/* ==========================================================================
   Layout
   ========================================================================== */

.l-wrap,
.l-inner,
.l-box {
  margin: 0 auto;
}
.l-inner {
  padding-right: 5.334%; /* 40px/750px */
  padding-left: 5.334%;
}
@media screen and (min-width: 768px) {
  .l-wrap {
    width: 100%;
    max-width: 1920px;
    padding-right: 0;
    padding-left: 0;
  }
  .l-inner {
    width: 100%;
    max-width: 1040px;
    padding-right: 20px;
    padding-left: 20px;
  }
  .l-inner.wide {
    max-width: 1080px;
  }
}
@media screen and (max-width: 767px) {
  .l-inner.is-sp-full {
    padding-right: 0;
    padding-left: 0;
  }
}

/* Header
   ----------------------------------------------------------------- */

#header.fixed {
  position: fixed;
  top: 0;
  z-index: 9999;
  background-color: rgba(255, 255, 255, 0.8);
  width: 100%;
}
.l-header-top {
  background-color: #009944;
  color: #fff;
  height: 23px;
  padding: 5px 0;
  line-height: 1;
}
.l-header-top dl {
  font-size: 0;
}
.l-header-top dt,
.l-header-top dd {
  display: inline-block;
  font-size: 11px;
  font-weight: bold;
}
.l-header-top dt {
  margin-right: 0.25em;
}
.l-header-top dd {
  margin-right: 0.5em;
}
.l-header__logo {
  float: left;
  padding: 10px 0;
}
.l-header__logo img {
  width: 115px;
}
.l-header__logo a:hover img {
  opacity: 1;
}
.l-header-bottom {
  height: 50px;
}
.l-header__menu {
  float: right;
}
.l-header__lang a:hover {
  text-decoration: underline;
}
.l-header__lang a:hover img {
  opacity: 1;
}
.l-header__lang i {
  font-size: 0;
  margin-right: 5px;
  vertical-align: middle;
}
@media screen and (min-width: 950px) {
  .l-header-top {
    height: 33px;
    padding: 10px 0;
  }
  .l-header-top dt,
  .l-header-top dd {
    font-size: 12px;
  }
  .l-header__logo {
    position: relative;
    z-index: 10;
    padding: 15px 0;
  }
  .l-header__logo img {
    width: 100%;
  }
  .l-header-bottom {
    height: 62px;
  }
  .l-header__menu {
    margin-top: -33px;
  }
  .l-header__lang {
    float: right;
    color: #fff;
    margin-left: 20px;
    padding: 8px 0;
    line-height: 1;
  }
  .l-header__lang i {
    margin-right: 8px;
  }
  .drawer-nav.is-rwd {
    float: right;
  }
}

@media screen and (max-width: 949px) {
  main {
    width: 100%;
  }
  #header .nav-third {
    margin-right: 0;
  }
  #header .nav-third li {
    float: none;
    width: 100%;
    padding-right: 0;
  }
  #header .u-d-pc {
    display: none;
  }
  #header .l-header__lang .u-d-sp {
    display: inline-block !important;
  }
  .l-header-top > .l-inner {
    padding-right: 0;
  }
  .l-header-bottom {
    position: relative;
  }
  .l-header__lang {
    color: #009944;
    padding: 15px 45px 15px 0;
    font-size: 14px;
  }
  .l-header__lang i > img {
    vertical-align: bottom;
  }
}

/* Color */
.page-ir .l-header-bottom {
  background-color: #fff1e0;
}
.page-corp .l-header-bottom {
  background-color: #e8f1ff;
}
.page-csr .l-header-bottom {
  background-color: #e8fff2;
}
@media screen and (min-width: 950px) {
  .l-header__nav .nav-ir.is-current > div > a,
  .l-header__nav .nav-ir:hover > div > a,
  .l-header__nav .nav-ir > .drawer-dropdown-menu {
    background-color: #fff1e0;
  }
  .l-header__nav .nav-corp.is-current > div > a,
  .l-header__nav .nav-corp:hover > div > a,
  .l-header__nav .nav-corp > .drawer-dropdown-menu {
    background-color: #e8f1ff;
  }
  .l-header__nav .nav-csr.is-current > div > a,
  .l-header__nav .nav-csr:hover > div > a,
  .l-header__nav .nav-csr > .drawer-dropdown-menu {
    background-color: #e8fff2;
  }
}
@media screen and (max-width: 949px) {
  .l-header__nav .nav-ir > .drawer-parent {
    background-color: #fff1e0;
  }
  .l-header__nav .nav-corp > .drawer-parent {
    background-color: #e8f1ff;
  }
  .l-header__nav .nav-csr > .drawer-parent {
    background-color: #e8fff2;
  }
}

/* Nav
   ----------------------------------------------------------------- */

.l-header__nav {
}
.l-header__nav a {
  display: block;
}
.l-header__nav a.nav-first {
  font-weight: bold;
}
@media screen and (min-width: 950px) {
  .l-header__nav > ul > li {
    float: left;
  }
  .l-header__nav ul.nav-first > li > div > a {
    display: block;
    position: relative;
    z-index: 1;
    color: #fff;
    border-right: solid 1px transparent;
    border-left: solid 1px transparent;
    height: 33px;
    padding: 10px 20px;
    font-size: 14px;
    line-height: 1;
  }
  .l-header__nav ul.nav-first > li:hover > div > a {
    border-color: #009944;
  }
  .l-header__nav ul.nav-first > li.is-current:hover > div > a {
    border-color: transparent;
  }
  .l-header__nav ul.nav-first > li.is-current > div > a,
  .l-header__nav ul.nav-first > li:hover > div > a {
    color: #009944;
    font-weight: bold;
  }
  .l-header__sp-menu,
  .l-header__close {
    display: none;
  }
}
@media screen and (max-width: 949px) {
  .l-header__nav {
    padding-right: 0;
    padding-left: 0;
  }
  .l-header__nav a {
    position: relative;
    z-index: 1;
  }
  .l-header__sp-menu {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    justify-content: center;
    width: 65px;
    height: 50px;
    text-align: center;
  }
  .l-header__close {
    background-color: #009944;
  }
  .l-header__close button {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    width: 100%;
    padding: 20px 5.334%;
    font-size: 18px;
    text-align: center;
  }
  .l-header__close i {
    margin-right: 7px;
    font-size: 0;
  }
}

/* Drawer
   ----------------------------------------------------------------- */

.drawer-nav.is-rwd {
  z-index: 1000;
  -webkit-transform: translate3d(0, 0, 1px);
  transform: translate(0px, 0px) translateZ(1px);
  background-color: #fff;
}
.drawer-hamburger-icon {
  margin-top: 0;
}
@media screen and (min-width: 950px) {
  .drawer-hamburger.is-rwd {
    display: none;
  }
  .drawer-nav.is-rwd {
    overflow: visible;
    position: static;
    top: auto;
    right: auto;
    left: auto;
    background-color: transparent;
    color: inherit;
    width: auto;
    height: auto;
    transform: none;
  }
}
@media screen and (max-width: 949px) {
  .l-header__sp-menu .drawer-hamburger {
    position: static;
    top: auto;
    right: auto;
    width: 65px;
  }
  .drawer-hamburger {
    position: absolute;
    width: 25px;
    padding: 0;
  }
  .drawer-hamburger-icon:before {
    top: -8px;
  }
  .drawer-hamburger-icon:after {
    top: 8px;
  }
  .drawer-hamburger-icon,
  .drawer-hamburger-icon:after,
  .drawer-hamburger-icon:before {
    background-color: #009944;
    width: 30px;
    height: 3px;
    margin: 0 auto;
  }
  .drawer-overlay {
    background: none;
  }
  .drawer-nav {
    color: #000;
    width: 100%;
  }
  .l-header {
    height: 73px;
  }
  .drawer--right .drawer-nav {
    top: 73px;
    right: -100%;
    overflow: auto;
  }
  .drawer--right.drawer-open .drawer-hamburger {
    right: 0;
  }
  .drawer-menu {
    overflow: auto;
    border-top: solid 1px #009944;
    padding-bottom: 73px;
  }
}

/* Dropdown
   ----------------------------------------------------------------- */

.drawer-dropdown .drawer-caret {
  display: none;
}
.drawer-dropdown.open .drawer-caret {
  transform: none;
}
.drawer-dropdown-menu {
  background-color: #fff;
}
.drawer-dropdown.ns-item.open > .drawer-dropdown-menu {
  display: none;
}
.drawer-dropdown.ns-item.active > .drawer-dropdown-menu {
  display: block;
}
.drawer-dropdown-menu li.ns-item.open {
  border-bottom: solid 1px #fff;
}
.drawer-dropdown-menu li.ns-item.active {
  border-bottom: none;
}
.l-header__nav .ns-item.open .nav-parent:after {
  content: "\f078";
}
.l-header__nav .ns-item.active > .nav-parent:after {
  content: "\f077";
}
@media screen and (min-width: 950px) {
  .l-header {
    height: 95px;
  }
  .l-header__nav {
    height: 33px;
  }
  .drawer-dropdown-menu {
    display: block;
    z-index: 10;
    position: absolute;
    top: 23px;
    left: 0;
    width: 100%;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .drawer-dropdown:hover > .drawer-dropdown-menu {
    position: absolute;
    top: 33px;
    left: 0;
    visibility: visible;
    opacity: 1;
  }
  .l-header__nav ul.nav-first > .drawer-dropdown {
    position: relative;
  }
  .l-header__nav ul.nav-first > .drawer-dropdown.is-current {
    position: static;
  }
  .l-header__nav ul.nav-first > .drawer-dropdown > .drawer-dropdown-menu {
    display: table;
    left: 50%;
    transform: translateX(-50%);
    min-width: 235px;
    border: solid 2px #009944;
    text-align: center;
  }
  .l-header__nav
    ul.nav-first
    > .drawer-dropdown
    > .drawer-dropdown-menu
    > .l-inner {
    padding-right: 0;
    padding-left: 0;
  }
  .l-header__nav
    ul.nav-first
    > .drawer-dropdown.is-current
    > .drawer-dropdown-menu {
    display: block;
    z-index: 5;
    top: 33px;
    visibility: visible;
    opacity: 1;
    background-color: transparent;
    border: none;
    height: 62px;
  }
  .l-header__nav ul.nav-first .is-current > .drawer-dropdown-menu > .l-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
  .l-header__nav ul.nav-second > .drawer-dropdown > .drawer-dropdown-menu {
    display: none;
  }
  .l-header__nav ul.nav-second > li {
    border-bottom: solid 1px #009944;
  }
  .l-header__nav ul.nav-second > li:last-child {
    border-bottom: none;
  }
  .l-header__nav a.nav-second {
    position: relative;
    color: #000;
    padding: 15px 30px;
    font-size: 14px;
    text-align: center;
    white-space: nowrap;
  }
  .l-header__nav .is-current ul.nav-second {
    font-size: 0;
    text-align: right;
  }
  .l-header__nav .is-current ul.nav-second > li {
    display: inline-block;
    border-bottom: none;
    height: 62px;
    margin-left: 30px;
    padding: 3px 0;
  }
  #en_head .l-header__nav .is-current ul.nav-second > li {
    margin-left: 20px;
  }
  .l-header__nav .is-current a.nav-second {
    color: #707070;
    border-bottom: solid 4px transparent;
    height: 56px;
    font-size: 16px;
    display: table-cell;
    vertical-align: middle;
    padding: 3px 0 0px;
  }
  #en_head .l-header__nav .is-current a.nav-second {
    font-size: 15px;
  }
  .l-header__nav .is-current a.nav-second:after {
    content: none;
    font-family: inherit;
  }
  .l-header__nav .is-current a.nav-second:hover,
  .l-header__nav .is-current .is-current a.nav-second {
    border-bottom-color: #009944;
  }
  .l-header__nav
    .is-current
    ul.nav-second
    > .drawer-dropdown
    > .drawer-dropdown-menu {
    display: block;
    top: 52px;
    background-color: #ebebeb;
    padding: 30px 0;
  }
  .l-header__nav
    .is-current
    ul.nav-second
    > .drawer-dropdown:hover
    > .drawer-dropdown-menu {
    top: 62px;
  }
  .l-header__nav .is-current ul.nav-third {
    font-size: 14px;
    text-align: left;
  }
  .l-header__nav .nav-third li {
    display: table;
    position: relative;
  }
  .l-header__nav a.nav-third {
    display: table-cell;
    background-color: #fff;
    color: #009944;
    border: solid 1px #009944;
    border-radius: 4px;
    width: 100%;
    padding: 5px 20px;
    text-align: center;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    vertical-align: middle;
    height: 60px;
  }
  #en_head .l-header__nav a.nav-third {
    height: 85px;
  }
  .l-header__nav a.nav-third:hover {
    background-color: #009944;
    color: #fff;
  }
  .l-header__nav a.nav-third:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 30px;
    font-weight: 900;
  }
  .l-header__nav .nav-third .nav-blank:hover .fa-window-restore {
    color: #fff;
  }
}
@media all and (-ms-high-contrast: none) {
  .l-header__nav .nav-third .nav-blank .fa-window-restore {
    margin-top: 5px;
  }
}
@media screen and (max-width: 949px) {
  .drawer-dropdown a {
    padding: 15px 5.334%;
  }
  .drawer-dropdown > .drawer-parent {
    position: relative;
    border-bottom: solid 1px #009944;
    padding: 15px 5.334%;
    font-weight: bold;
    cursor: pointer;
  }
  .l-header__nav ul.nav-first > .drawer-dropdown > .drawer-parent {
    color: #009944;
    font-size: 18px;
  }
  .drawer-dropdown > .drawer-parent > a {
    display: inline-block;
    padding: 0;
  }
  .drawer-dropdown-menu {
    background-color: #009944;
    color: #fff;
  }
  .drawer-dropdown-menu .l-inner {
    padding-right: 0;
    padding-left: 0;
  }
  .drawer-dropdown-menu li {
    border-bottom: solid 1px #fff;
  }
  .drawer-dropdown-menu li.open {
    border-bottom: none;
  }
  .drawer-dropdown-menu a {
    font-weight: bold;
  }
  .l-header__nav ul.nav-second .drawer-dropdown-menu {
    background-color: #ebebeb;
    color: #333;
  }
  .l-header__nav ul.nav-second .drawer-dropdown-menu li {
    border-bottom: solid 1px #bbbbbb;
    margin-bottom: 0;
  }
  .l-header__nav ul.nav-second a,
  .l-header__nav ul.nav-second .drawer-dropdown > .drawer-parent {
    padding-left: 8%;
    font-size: 16px;
  }
  .l-header__nav ul.nav-second .drawer-dropdown > .drawer-parent > a {
    padding-left: 0;
  }
  .l-header__nav ul.nav-third a {
    padding-left: 10.667%;
    font-size: 14px;
  }
}

/* Footer
   ----------------------------------------------------------------- */

.l-footer-top {
  background-color: #e8fff2;
  padding: 40px 0;
}
.l-footer-top__wrap {
  display: flex;
  justify-content: center;
}
.l-footer__ttl {
  margin-top: 20px;
  font-size: 19px;
  font-weight: bold;
}
.l-footer__nav-top li {
  line-height: 1.1;
}
.l-footer__nav-top a {
  font-size: 14px;
}
.l-footer__nav-top a:hover {
  text-decoration: underline;
}
.l-footer__nav-middle {
  padding: 30px 0;
}
.l-footer__nav-bottom {
  padding-bottom: 20px;
}
.l-footer__nav-bottom ul {
  font-size: 0;
  text-align: center;
}
.l-footer__nav-bottom li {
  display: inline-block;
  font-size: 14px;
}
.l-footer__nav-bottom li:after {
  content: "｜";
  margin: 0 0.25em;
}
.l-footer__nav-bottom li:last-child:after {
  content: none;
  margin: 0;
}
.l-footer__nav-bottom a:hover {
  text-decoration: underline;
}
.l-footer-bottom {
  background-color: #000;
  color: #fff;
  padding: 15px 0;
  text-align: center;
}
.copyright {
  font-size: 14px;
}
.p-pagetop {
  text-align: right;
}
.p-pagetop > a {
  z-index: 10;
  position: fixed;
}
@media screen and (min-width: 768px) {
  .l-footer-top {
    padding: 55px 0 50px;
  }
  .l-footer__nav-top li + li {
    margin-top: 1em;
  }
  .l-footer__btn li {
    margin-right: 30px;
  }
  .l-footer__nav-top {
    display: flex;
    margin-right: -20px;
    padding: 40px 0;
  }
  .l-footer__nav-top > * {
    flex-grow: 1;
    margin-right: 20px;
  }
  .l-footer__nav-top > *:last-child {
    flex-grow: 0;
  }
  .l-flex-150 {
    flex-basis: 150px;
  }
  .l-flex-185 {
    flex-basis: 185px;
  }
  .l-flex-300 {
    flex-basis: 300px;
  }
  .l-footer__nav-top .nav-first__wrap li {
    margin-bottom: 30px;
  }
  .l-footer__nav-top .nav-first__wrap li:last-child {
    margin-bottom: 0;
  }
  .l-footer__nav-top a:hover {
    text-decoration: underline;
  }
  .l-footer__nav-top a.nav-first {
    color: #009944;
    font-size: 16px;
    /*text-decoration: none;--BK190219--*/
    /*white-space: nowrap;*/
  }
  .l-footer__nav-top a.nav-first:hover {
    text-decoration: underline;
  }
  .l-footer__nav-top .nav-child {
    margin-top: 15px;
    line-height: 1.5;
  }
  .l-footer__nav-middle {
    padding: 20px 0;
  }
  .l-footer__nav-middle .l-grid.c-grid-col-5 > * {
    padding-right: 18px;
  }
  .l-footer__nav-bottom {
    padding: 10px 0 30px;
  }
  .p-pagetop > a {
    bottom: 6px;
    right: 5.334%;
  }
  .l-footer-middle nav > ul {
    padding-bottom: 1em;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-top__wrap.left {
    margin-bottom: 30px;
  }
  .l-footer__nav-top a {
    display: block;
    position: relative;
    background-color: #ebebeb;
    border-bottom: solid 1px #bbb;
    padding: 15px 8% 15px 5.334%;
  }
  .l-footer__nav-top .nav-parent > a {
    display: inline;
    background-color: inherit;
    border-bottom: none;
    padding: 0;
  }
  .l-footer__nav-top .nav-parent > a:after {
    content: none;
    font-family: inherit;
  }
  .l-footer__nav-top .nav-parent,
  .l-footer__nav-top li > a.nav-first {
    display: block;
    position: relative;
    background-color: #009944;
    border-bottom: solid 1px #fff;
    color: #fff;
    padding: 15px 5.334%;
  }
  .l-footer__nav-top .nav-child a {
    padding-left: 8%;
  }
  .l-footer__nav-bottom li {
    line-height: 1.5;
  }
  .p-pagetop > a {
    right: 5.334%;
    bottom: 35px;
  }
}

/* Main
   ----------------------------------------------------------------- */

.l-contents {
  overflow: hidden;
}
.l-main {
}
.l-section {
  margin-bottom: 40px;
}
.l-bg {
  padding-top: 40px;
  padding-bottom: 40px;
}
.l-bg + .l-section {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .l-contents {
  }
  .l-section {
    margin-bottom: 60px;
  }
  .l-bg {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .l-bg + .l-section {
    margin-top: 60px;
  }
}
@media screen and (max-width: 767px) {
}

.l-grid > * {
  margin-bottom: 20px;
}
.l-grid > a {
  display: block;
}

@media screen and (min-width: 768px) {
  .l-grid.c-grid-col-2 > *:nth-child(odd),
  .l-grid.c-wrap-grid .col-2.odd {
    padding-right: 10px;
  }
  .l-grid.c-grid-col-2 > *:nth-child(even),
  .l-grid.c-wrap-grid .col-2.even {
    padding-left: 10px;
  }
  .l-grid.c-grid-col-2.half > *:nth-child(odd) {
    padding-right: 5px;
  }
  .l-grid.c-grid-col-2.half > *:nth-child(even) {
    padding-left: 5px;
  }
  .l-grid.c-grid-col-2.wide > *:nth-child(odd) {
    padding-right: 15px;
  }
  .l-grid.c-grid-col-2.wide > *:nth-child(even) {
    padding-left: 15px;
  }
  .l-grid.c-grid-col-2.auto > * {
    padding: 0;
  }

  .l-grid.c-grid-col-1-2 > *:nth-child(odd) {
    padding-right: 10px;
  }
  .l-grid.c-grid-col-1-2 > *:nth-child(even) {
    padding-left: 10px;
  }

  .l-grid.c-grid-col-3 > *:nth-child(3n + 1) {
    padding-right: 15px;
  }
  .l-grid.c-grid-col-3 > *:nth-child(3n + 2) {
    padding: 0 8px;
  }
  .l-grid.c-grid-col-3 > *:nth-child(3n) {
    padding-left: 15px;
  }
  .l-grid.c-grid-col-3.half > *:nth-of-type(3n + 1) {
    padding-right: 8px;
  }
  .l-grid.c-grid-col-3.half > *:nth-of-type(3n + 2) {
    padding: 0 4px;
  }
  .l-grid.c-grid-col-3.half > *:nth-of-type(3n) {
    padding-left: 8px;
  }

  .l-grid.c-grid-col-4 {
    margin-right: -20px;
  }
  .l-grid.c-grid-col-4 > * {
    padding-right: 20px;
  }
  .l-grid.c-grid-col-4.half {
    margin-right: -10px;
  }
  .l-grid.c-grid-col-4.half > * {
    padding-right: 10px;
  }

  .l-grid.c-grid-col-5 {
    margin-right: -20px;
  }
  .l-grid.c-grid-col-5 > * {
    padding-right: 20px;
  }
  .l-grid.c-grid-col-5.half {
    margin-right: -10px;
  }
  .l-grid.c-grid-col-5.half > * {
    padding-right: 10px;
  }

  .l-grid.full > * {
    margin-right: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .l-grid > * {
    margin-bottom: 20px;
  }
  .l-grid > *:last-child {
    margin-bottom: 0;
  }

  .l-grid.c-grid-sp-col-2 > *:nth-child(odd) {
    padding-right: 7px;
  }
  .l-grid.c-grid-sp-col-2 > *:nth-child(even) {
    padding-left: 7px;
  }
  .l-grid.c-grid-sp-col-2.half > *:nth-child(odd) {
    padding-right: 3px;
  }
  .l-grid.c-grid-sp-col-2.half > *:nth-child(even) {
    padding-left: 3px;
  }

  .l-grid.c-grid-sp-col-3 > *:nth-of-type(3n + 1) {
    padding-right: 7px;
  }
  .l-grid.c-grid-sp-col-3 > *:nth-of-type(3n + 2) {
    padding: 0 3px;
  }
  .l-grid.c-grid-sp-col-3 > *:nth-of-type(3n) {
    padding-left: 7px;
  }

  .l-grid.c-grid-sp-col-5 > * {
    padding: 0 3px;
  }
  .l-grid.c-grid-sp-col-5 {
    margin: 0 -3px;
  }
}

/* ==========================================================================
   Object
   ========================================================================== */

/* Component
   ----------------------------------------------------------------- */

/* Grid */
@media screen and (min-width: 768px) {
  *[class^="c-grid-"] > *,
  *[class*="c-grid-"] > *,
  .c-wrap-grid *[class^="col-"],
  .c-wrap-grid *[class*="col-"] {
    float: left;
  }
  *[class^="c-grid-"]:before,
  *[class^="c-grid-"]:after,
  *[class*=" c-grid-"]:before,
  *[class*=" c-grid-"]:after,
  .c-wrap-grid:before,
  .c-wrap-grid:after {
    content: " ";
    display: table;
  }
  *[class^="c-grid-"]:after,
  *[class*=" c-grid-"]:after,
  .c-wrap-grid:after {
    clear: both;
  }
  *[class^="c-grid-"],
  *[class*=" c-grid-"],
  .c-wrap-grid {
    *zoom: 1;
  }
  .c-grid-col-2 > *,
  .c-wrap-grid .col-2 {
    width: 50%;
  }
  .c-grid-col-2.auto > * {
    width: auto;
  }
  .c-grid-col-2.auto > *:nth-child(even) {
    float: right;
  }
  .c-grid-col-3 > *,
  .c-grid-col-1-2 > *:nth-child(odd) {
    width: 33.333%;
  }
  .c-grid-col-4 > * {
    width: 25%;
  }
  .c-grid-col-5 > * {
    width: 20%;
  }
  .c-grid-col-1-2 > *:nth-child(even) {
    width: 66.666%;
  }

  .c-grid-col-2 > *:nth-child(odd),
  .c-grid-col-1-2 > *:nth-child(odd),
  .c-wrap-grid .col-2.odd,
  .c-grid-col-3 > *:nth-child(3n + 1),
  .c-grid-col-4 > *:nth-child(4n + 1),
  .c-grid-col-5 > *:nth-child(5n + 1) {
    clear: both;
  }
  .c-grid-col-2 > *:nth-last-child(-n + 2),
  .c-grid-col-1-2 > *:nth-last-child(-n + 2),
  .c-wrap-grid .col-2:nth-last-child(-n + 2),
  .c-grid-col-3 > *:nth-last-child(-n + 3),
  .c-grid-col-4 > *:nth-last-child(-n + 4),
  .c-grid-col-5 > *:nth-last-child(-n + 5) {
    margin-bottom: 0;
  }

  .c-grid-tbl {
    display: table;
    width: 100%;
  }
  .c-grid-tbl > * {
    display: table-cell;
    float: none;
    vertical-align: middle;
  }
}
@media screen and (max-width: 767px) {
  *[class^="c-grid-sp-"] > *,
  *[class*="c-grid-sp-"] > * {
    float: left;
  }
  *[class^="c-grid-sp-"]:before,
  *[class*=" c-grid-sp-"]:before,
  *[class^="c-grid-sp-"]:after,
  *[class*=" c-grid-sp-"]:after {
    content: " ";
    display: table;
  }
  *[class^="c-grid-sp-"]:after,
  *[class*=" c-grid-sp-"]:after {
    clear: both;
  }
  *[class^="c-grid-sp-"],
  *[class*=" c-grid-sp-"] {
    *zoom: 1;
  }

  *[class^="c-grid-sp-"]:before,
  *[class*=" c-grid-sp-"]:before,
  *[class^="c-grid-sp-"]:after,
  *[class*=" c-grid-sp-"]:after {
    content: " ";
    display: table;
  }

  .c-grid-sp-col-2 > * {
    width: 50%;
  }
  .c-grid-sp-col-2 > *:nth-child(odd) {
    clear: both;
  }
  .c-grid-sp-col-2 > *:nth-last-child(-n + 2) {
    margin-bottom: 0;
  }

  .c-grid-sp-col-3 > * {
    width: 33.333%;
  }
  .c-grid-sp-col-3 > *:nth-child(3n + 1) {
    clear: both;
  }
  .c-grid-sp-col-3 > *:nth-last-child(-n + 3) {
    margin-bottom: 0;
  }

  .c-grid-sp-col-5 > * {
    width: 20%;
  }
  .c-grid-sp-col-5 > *:nth-child(5n + 1) {
    clear: both;
  }
  .c-grid-sp-col-5 > *:nth-last-child(-n + 5) {
    margin-bottom: 0;
  }
}

/* Font Awesome */
.c-ico-fa,
.c-ico-fa-group a {
  position: relative;
}
.c-ico-fa:after,
.c-ico-fa-group a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
.c-ico-fa.chevron-left:after,
.c-ico-fa-group.chevron-left a:after {
  content: "\f053";
}
.c-ico-fa.chevron-right:after,
.c-ico-fa-group.chevron-right a:after {
  content: "\f078";
}
.c-ico-fa.chevron-up:after,
.c-ico-fa-group.chevron-up a:after {
  content: "\f054";
}
.c-ico-fa.chevron-down:after,
.c-ico-fa-group.chevron-down a:after {
  content: "\f078";
}

.c-ico-fa,
.c-ico-fa-group a:after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .c-ico-fa.sp-only:after,
  .c-ico-fa-group.sp-only a:after {
    content: none;
    font-family: inherit;
  }
}
@media screen and (min-width: 950px) {
  .l-header__nav a.nav-second:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    position: absolute;
    right: 10px;
    color: #009944;
  }
}
@media screen and (max-width: 767px) {
  .c-ico-fa.pc-only:after,
  .c-ico-fa-group.pc-only a:after {
    content: none;
    font-family: inherit;
  }
  .l-footer__nav-top a:after {
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    float: right;
    position: absolute;
    top: 50%;
    right: 5.334%;
    transform: translateY(-50%);
    font-weight: 900;
  }
  .l-footer__nav-top .nav-parent:after {
    font-family: "Font Awesome 5 Free";
    content: "\f078";
    float: right;
    position: absolute;
    top: 50%;
    right: 5.334%;
    transform: translateY(-50%);
    font-weight: 900;
  }
  .l-footer__nav-top .nav-parent.is-active:after {
    content: "\f077";
  }
}
@media screen and (max-width: 949px) {
  .l-header__nav a:after {
    position: absolute;
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    font-weight: 900;
    right: 5.334%;
  }
  .l-header__nav .nav-parent > a:after {
    content: none;
    font-family: inherit;
  }
  .l-header__nav .nav-parent:after {
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 5.334%;
    content: "\f078";
  }
  .l-header__nav .open > .nav-parent:after,
  .l-header__nav .nav-parent.is-open:after,
  .l-header__nav .nav-parent.is-active:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f077";
  }
  .l-header__nav ul.nav-third a:after {
    color: #009944;
  }
  .l-header__nav .nav-blank .fa-window-restore {
    color: #009944;
  }
  .nav-blank .fa-window-restore {
    right: 3.334% !important;
  }
}

.c-list-inline {
  font-size: 0;
  text-align: center;
}
.c-list-inline li {
  display: inline-block;
}
.c-list-inline li:not(:last-child) {
}

.c-youtube {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}
.c-youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Js */
.js-tab-button,
.js-toggle-on,
.js-switch-on {
  cursor: pointer;
}
.js-tab-button.is-active {
  cursor: default;
}
.js-tab-content,
.js-toggle-next {
  display: none;
}
.js-tab-content.is-active {
  display: block;
}
@media screen and (min-width: 768px) {
  .js-pc-toggle-on {
    cursor: pointer;
  }
  .js-pc-tab-content,
  .js-sp-tabs {
    display: none;
  }
  .js-pc-tab-content.is-active,
  .js-pc-toggle-on.is-active + .js-sp-toggle-next {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .js-sp-toggle-on {
    cursor: pointer;
  }
  .js-pc-tabs,
  .js-sp-tab-content,
  .js-sp-toggle-next {
    display: none;
  }
  .js-sp-tab-content.is-active,
  .js-sp-toggle-on.is-active + .js-sp-toggle-next {
    display: block;
  }
  .js-sp-tab-content {
    margin-bottom: 0;
  }
}

/* Project
   ----------------------------------------------------------------- */

/* Breadcrumb */

/* Heading Text */
*[class^="p-ttl-lv-"],
*[class*="p-ttl-lv-"] {
}
.p-ttl-lv-01 {
  font-size: 24px;
}
.p-ttl-lv-02 {
  font-size: 20px;
}
.p-ttl-lv-03 {
  font-size: 20px;
}

.p-ttl-color-grn {
  color: #009944;
}
.p-ttl-color-red {
  color: #e60012;
}
.p-ttl-color-wht {
  color: #fff;
}

.p-txt-lead {
}
@media screen and (min-width: 768px) {
  *[class^="p-ttl-lv-"],
  *[class*="p-ttl-lv-"] {
  }
  .p-ttl-lv-01 {
    font-size: 28px;
  }
  .p-ttl-lv-02 {
    font-size: 24px;
  }
  .p-ttl-lv-03 {
    font-size: 20px;
  }
  .p-txt-lead {
  }
}
@media screen and (max-width: 767px) {
}

/* Box */
.p-box-flex {
  display: flex;
}
.p-box-flex.is-middle {
  align-items: center;
}

/* Button */
.p-btn {
  display: block;
  width: 100%;
  padding: 17px 30px;
  text-align: center;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.p-btn.is-full-width {
  width: 100%;
}
.p-btn.is-multiline {
}
.p-btn.has-ico {
}

.p-btn-prim {
  position: relative;
  background-color: #fff;
  color: #009944;
  border: solid 1px #009944;
  border-radius: 4px;
}
.p-btn-prim:hover {
  background-color: #009944;
  color: #fff;
}
.p-btn-prim.reverse {
  background-color: #009944;
  color: #fff;
}
.p-btn-prim.reverse:hover {
  background-color: #fff;
  color: #009944;
}
.p-btn-prim:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f054";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -8px;
}
.c-btn-list-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: -20px;
}
.c-btn-list-img a {
  width: 100%;
  height: 100%;
  display: block;
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
}
.c-btn-list li.p-btn-img {
  padding: 0;
}
.p-btn-img a {
  padding: 17px 30px 17px 17px;
}
.p-btn-img p {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 1.6rem;
}
.p-btn-prim.p-btn-img:hover .far {
  color: inherit;
}
.c-ttl-wrap.p-btn-prim {
  border-radius: 0;
  padding-right: 20px;
}
.c-ttl-wrap.p-btn-prim small {
  padding-left: 1.4rem;
  font-size: 1.8rem;
  vertical-align: middle;
}
.c-ttl-wrap.p-btn-prim:hover {
  background-color: #fff;
  color: #009944;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.c-ttl-wrap.p-btn-prim:hover .c-ttl-lv02 {
  color: #009944;
  border-left: 4px solid #009944;
}
.c-ttl-wrap.p-btn-prim:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f054";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -8px;
  color: #fff;
}
.c-ttl-wrap.p-btn-prim .fa-angle-right:before {
  content: "\f105";
  color: #fff;
}
.c-ttl-wrap.p-btn-prim:hover:after {
  color: #009944;
}
@media screen and (max-width: 767px) {
  .p-btn-prim.p-btn-medium:after {
    margin-top: -10px;
  }
}
.p-btn-prim.blank:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
  content: "\f2d2";
}
.nav-blank {
  position: relative;
}
.nav-blank:after {
  display: none;
}
.nav-blank .fa-window-restore {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -8px;
}
.nav-blank.type02 .fa-window-restore {
  right: -25px;
  margin-top: -9px;
}
@media screen and (max-width: 767px) {
  .nav-blank.type02 .fa-window-restore {
    right: -22px;
    margin-top: -7px;
  }
}
.p-btn.nav-blank:hover .fa-window-restore {
  color: #fff;
}
.l-footer__nav-top .nav-blank {
  padding-right: 25px;
}
.l-footer__nav-top .nav-blank .far {
  right: 0;
}

@media screen and (min-width: 768px) {
  .p-btn {
    padding: 12px 15px;
    font-size: 14px;
  }
  .p-btn-medium {
    width: 210px;
  }
  .p-btn-inline {
    font-size: 0;
    text-align: center;
  }
  .p-btn-inline li {
    display: inline-block;
  }
  .p-btn-inline li:last-child {
    margin-right: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .c-grid-sp-col-2 .p-btn {
    font-size: 14px;
    padding: 15px 20px;
  }
  .p-btn-inline li {
    margin-bottom: 20px;
  }
  .p-btn-inline li:last-child {
    margin-bottom: 0;
  }
}

/* Table */
.p-tbl {
  width: 100%;
}
.p-tbl-prim {
}
.p-tbl-prim th,
.p-tbl-prim td {
}
.p-tbl-prim th {
}
.p-tbl-sec th {
}
.p-tbl-sec td {
}
@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}

/* Sec-Hero */
.p-sec-hero {
  background-position: center top;
  background-repeat: no-repeat;
  height: 260px;
}
.page-csr .p-sec-hero {
  background-image: url(/sharedir/img/csr_img_hero_001.png);
}
.page-corp .p-sec-hero {
  background-image: url(/sharedir/img/corp_img_hero_001.png);
  background-position: left;
}
.page-ir .p-sec-hero {
  background-image: url(/sharedir/img/ir_img_hero_001.png);
}

.p-sec-hero > .l-inner {
  height: inherit;
}
.p-sec-hero__wrap {
  background-color: rgba(255, 255, 255, 0.8);
  width: 100%;
  padding: 30px 10px;
  text-align: center;
}
.p-sec-hero__ttl {
  margin-bottom: 10px;
}
.p-sec-hero__txt {
  font-size: 18px;
}
@media screen and (min-width: 768px) {
  .p-sec-hero {
    height: 329px;
  }
  .page-corp .p-sec-hero {
    background-position: center;
  }
  .p-sec-hero__wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 329px;
    height: inherit;
  }
  .p-sec-hero__ttl {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 767px) {
  .p-sec-hero > .l-inner {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

/* Sec-News */
.p-sec-news__ttl {
  margin-bottom: 30px;
}
.p-sec-news .date {
  color: #f08200;
  font-size: 14px;
  vertical-align: top;
}
.p-sec-news .label {
  display: inline-block;
  background-position: left 8px center;
  background-repeat: no-repeat;
  color: #fff;
  margin-right: 10px;
  padding: 3px 10px 3px 30px;
  font-size: 14px;
  font-weight: bold;
  white-space: nowrap;
}
.label-management {
  background-image: url(/sharedir/img/cmn_ico_label_management.png);
  background-color: #cd5638;
}
.label-finance {
  background-image: url(/sharedir/img/cmn_ico_label_finance.png);
  background-color: #ff970a;
}
.label-stock {
  background-image: url(/sharedir/img/cmn_ico_label_stock.png);
  background-color: #eb7f7f;
}
.label-library {
  background-image: url(/sharedir/img/cmn_ico_label_library.png);
  background-color: #836dbf;
}
.label-others {
  background-image: url(/sharedir/img/cmn_ico_label_others.png);
  background-color: #009944;
}
.label-newsrelease {
  background-image: url(/sharedir/img/cmn_ico_label_newsrelease.png);
  background-color: #5ab9ff;
}
.label-csr {
  background-image: url(/sharedir/img/cmn_ico_label_csr.png);
  background-color: #23a5c4;
}
.label-notice {
  background-image: url(/sharedir/img/cmn_ico_label_notice.png);
  background-color: #9acd32;
}
.p-sec-news__txt dl {
  margin-bottom: 20px;
}
.p-sec-news__txt dl:last-child {
  margin-bottom: 0;
}
.p-sec-news__txt dt {
  margin-bottom: 10px;
}
.p-sec-news__txt dd {
  line-height: 1.5;
}
.p-sec-news__txt dd a:hover {
  text-decoration: underline;
}
.p-sec-news__btn li {
  margin-bottom: 20px;
}
.p-sec-news__btn li:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-sec-news__ttl {
    margin-bottom: 40px;
  }
  .p-sec-news .l-col {
    display: flex;
  }
  .p-sec-news .l-col .date {
    margin-right: 50px;
  }
  .p-sec-news .l-row .date {
    margin-right: 20px;
  }
  .l-col .p-sec-news__ttl {
    position: relative;
    margin-right: 20px;
    padding-right: 20px;
    white-space: nowrap;
  }
  .l-col .p-sec-news__ttl:after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    right: 0;
    background-color: #f08200;
    width: 2px;
    height: 35px;
  }
  .l-col .p-sec-news__txt {
    flex-grow: 1;
    padding-right: 60px;
  }
  .l-col .p-sec-news__btn li {
    margin-bottom: 15px;
  }
  .l-row .p-sec-news__txt dl {
    margin-bottom: 30px;
  }
  .l-row .p-sec-news__txt dl:nth-last-child(-n + 2) {
    margin-bottom: 0;
  }
  .l-row .p-sec-news__txt dd {
    border-bottom: dotted 2px #bbb;
    padding-bottom: 20px;
  }
  .l-row .p-sec-news__btn {
    margin-top: 60px;
  }
  .l-row .p-sec-news__btn li {
    margin-right: 20px;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-sec-news__ttl {
    text-align: center;
  }
  .p-sec-news .date {
    display: block;
    margin-bottom: 5px;
  }
  .p-sec-news__btn {
    margin-top: 40px;
  }
}

/* Sec-Catch */
.p-sec-catch__wrap {
  position: relative;
  overflow: hidden;
}
.p-sec-catch__wrap > img {
  width: 100%;
}
.p-sec-catch__wrap > div {
  position: absolute;
  top: 30px;
  left: 10px;
}
.p-sec-catch__ttl {
  position: relative;
  margin-bottom: 15px;
  padding-bottom: 15px;
}
.p-sec-catch__ttl:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
  width: 40px;
  height: 2px;
}
.p-sec-catch__txt {
  color: #fff;
  max-width: 210px;
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .p-sec-catch__wrap > div {
    top: 20px;
    left: 15px;
  }
  .p-sec-catch__txt {
    max-width: 260px;
  }
}

/* Sec-Menu */
.p-sec-menu {
  background-color: #ebebeb;
}
.p-sec-menu__btn {
  margin-bottom: 40px;
}
.p-sec-menu__sl {
  margin-bottom: 20px;
}
.p-sec-menu__img {
  text-align: center;
}
.p-sec-menu__img > img {
  width: 100%;
}
.p-sec-menu__txt {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  padding: 10px 30px;
  text-align: center;
}
.p-sec-menu__txt.has-ico {
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-sec-menu__txt {
  color: #009944;
  font-weight: bold;
  position: relative;
}
.p-sec-menu__txt:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f054";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -10px;
}
.p-sec-menu__btn-wrap {
  display: block;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-sec-menu__btn {
    margin-bottom: 50px;
  }
  .p-sec-menu__txt {
    min-height: 50px;
    padding: 12px 30px;
  }
  .p-sec-menu__img {
    overflow: hidden;
  }
  .p-sec-menu__img:hover img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }
}
@media screen and (max-width: 767px) {
  .p-sec-menu__txt {
    font-size: 12px;
    padding: 10px 15px;
  }
}

/* Sec-Spotlight */
.page-csr .p-sec-spotlight {
  background: url(/sharedir/img/csr_img_bg_001.png) no-repeat center top;
}
.page-corp .p-sec-spotlight {
  background: url(/sharedir/img/corp_img_bg_001.png) no-repeat center top;
}
.page-ir .p-sec-spotlight {
  background: url(/sharedir/img/ir_img_bg_001.png) no-repeat center top;
}
.p-sec-spotlight__ttl {
  margin-bottom: 30px;
  text-align: center;
}
.p-sec-spotlight__list li {
  float: left;
}
.p-sec-spotlight__btn {
  margin-top: 40px;
}
.p-sec-spotlight-corp > div {
  display: inline-block;
  position: relative;
  color: #fff;
}
.p-sec-spotlight-corp .number {
  display: flex;
  align-items: center;
  font-size: 40px;
  font-weight: bold;
}
.p-sec-spotlight-corp .number span {
  width: 30%;
  margin-right: 10px;
}
.p-sec-spotlight-corp .number strong {
  font-family: "DIN Condensed Bold";
  font-size: 75px;
  margin-right: 5px;
}
.p-sec-spotlight-corp .date {
  text-align: right;
}
.p-sec-spotlight-ir > div {
  margin-bottom: 30px;
  text-align: center;
}
.p-sec-spotlight-ir > div:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .page-csr .p-sec-spotlight {
    /*height: 796px;--BK190220--*/
    height: 670px;
  }
  .page-corp .p-sec-spotlight {
    height: 670px;
  }
  .page-ir .p-sec-spotlight {
    /*height: 883px;--BK190219--*/
    height: 810px;
    padding: 55px 0 0;
  }
  .p-sec-spotlight__ttl {
    margin-bottom: 0;
  }
  .page-ir .p-sec-spotlight__ttl {
    margin-bottom: 20px;
  }
  .p-sec-spotlight__list {
    margin-right: -20px;
  }
  .p-sec-spotlight__list li {
    width: 125px;
    margin: 0 20px 20px 0;
  }
  .p-sec-spotlight__btn {
    margin-top: 20px;
  }
  .page-csr .p-sec-spotlight__btn {
    margin-top: 70px;
  }
  .p-sec-spotlight-corp {
    background: url(/sharedir/img/corp_img_bg_002.png) no-repeat right bottom;
    background-size: contain;
    height: 558px;
    margin-left: 3.6%;
    padding-top: 45px;
  }
  .p-sec-spotlight-corp > div {
    max-width: 65%;
  }
  .p-sec-spotlight-corp .number {
    font-size: 50px;
  }
  .p-sec-spotlight-corp .number span {
    width: auto;
    margin-right: 30px;
  }
  .p-sec-spotlight-corp .number strong {
    font-size: 130px;
    font-family: "Oswald", sans-serif;
  }
  .p-sec-spotlight-corp .date {
    position: absolute;
    right: 0;
    bottom: -15px;
    font-size: 20px;
  }
  .p-sec-spotlight-ir {
    /*max-width: 944px;--BK190219--*/
    max-width: 800px;
    margin: 0 auto;
  }
  .p-sec-spotlight-ir > div:nth-child(1) {
    float: left;
    width: 45.555%;
    margin-left: 2.861%;
  }
  .p-sec-spotlight-ir > div:nth-child(2) {
    float: right;
    width: 45.555%;
  }
  .p-sec-spotlight-ir > div:nth-child(3) {
    clear: both;
    float: left;
    width: 45.555%;
    margin-bottom: 0;
  }
  .p-sec-spotlight-ir > div:nth-child(4) {
    float: right;
    width: 45.555%;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-sec-spotlight {
    background-size: cover !important;
  }
  .p-sec-spotlight__list {
    margin-right: -5px;
  }
  .p-sec-spotlight__list li {
    width: 25%;
    margin-bottom: 5px;
    padding-right: 5px;
  }
  .p-sec-spotlight-ir > div:nth-child(1) img {
    width: 86.519%;
  }
  .p-sec-spotlight-ir > div:nth-child(2) img {
    width: 76.458%;
  }
  .p-sec-spotlight-ir > div:nth-child(3) img {
    width: 100%;
  }
  .p-sec-spotlight-ir > div:nth-child(4) img {
    width: 72.837%;
  }
}

.cards:not(.active) {
  display: none;
}
.card {
  opacity: 0;
  margin-top: 50px;
}
.card_wrapper .p-btn:hover {
  cursor: pointer;
}
.card_wrapper .p-btn-prim.reverse:hover {
  background-color: #009944;
  color: #fff;
}

/* Print
   ----------------------------------------------------------------- */

@media print {
}

/* Utitlity
   ----------------------------------------------------------------- */

.clearfix:before,
.clearfix:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}

@media screen and (min-width: 768px) {
  .u-d-sp {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .u-d-pc {
    display: none !important;
  }
}

.italic {
  font-style: italic !important;
}
.u-list-disc {
  list-style: disc outside;
  margin-left: 1.2em;
}
.u-list-decimal {
  list-style: decimal outside;
  margin-left: 1.2em;
}

.u-anchor-tdn a {
  text-decoration: none !important;
}
.u-anchor-tdn a:hover {
  text-decoration: underline !important;
}
.u-anchor-tdu a {
  text-decoration: underline !important;
}
.u-anchor-tdu a:hover {
  text-decoration: none !important;
}

.u-mt-l {
  margin-top: 60px !important;
}
.u-mt-m {
  margin-top: 50px !important;
}
.u-mt-s {
  margin-top: 40px !important;
}
.u-mt-xs {
  margin-top: 30px !important;
}
.u-mt-xxs {
  margin-top: 10px !important;
}
.u-mb-l {
  margin-bottom: 60px !important;
}
.u-mb-m {
  margin-bottom: 50px !important;
}
.u-mb-s {
  margin-bottom: 40px !important;
}
.u-mb-xs {
  margin-bottom: 30px !important;
}

.u-m-0 {
  margin: 0 !important;
}
.u-mt-0 {
  margin-top: 0 !important;
}
.u-mb-0 {
  margin-bottom: 0 !important;
}
.u-p-0 {
  padding: 0 !important;
}
.u-pt-0 {
  padding-top: 0 !important;
}
.u-pb-0 {
  padding-bottom: 0 !important;
}
@media screen and (min-width: 768px) {
  .u-pr-5 {
    padding-right: 5px !important;
  }
  .u-pl-5 {
    padding-left: 5px !important;
  }
}

.u-fs-xxl {
  font-size: 22px !important;
}

.u-fs-xl {
  font-size: 20px !important;
}

.u-fs-xl {
  font-size: 20px !important;
}

.u-fs-l {
  font-size: 18px !important;
}
.u-fs-m {
  font-size: 16px !important;
}
.u-fs-s {
  font-size: 14px !important;
}
.u-fs-xs {
  font-size: 12px !important;
}
.u-fw-b {
  font-weight: bold !important;
}
.u-fw-n {
  font-weight: normal !important;
}

.u-ta-c {
  text-align: center !important;
}
.u-ta-r {
  text-align: right !important;
}
.u-ta-l {
  text-align: left !important;
}

.u-td-n {
  text-decoration: none !important;
}
.u-td-u {
  text-decoration: underline !important;
}

/*indent*/
.u-ti-1 {
  display: block;
  margin-left: 1em;
  text-indent: -1em;
}
.u-ti-2 {
  display: block;
  margin-left: 2em;
  text-indent: -2em;
}
.u-ti-3 {
  display: block;
  margin-left: 3em;
  text-indent: -3em;
} /*20190524追加*/

.u-lh-m {
  line-height: 1.5;
}

.u-lh-l {
  line-height: 2.1 !important;
}

.u-ws-nw {
  white-space: nowrap !important;
}

@media screen and (max-width: 767px) {
  .u-mt-l {
    margin-top: 30px !important;
  }
  .u-mb-l {
    margin-bottom: 30px !important;
  }
  .u-mt-m {
    margin-top: 30px !important;
  }
  .u-mb-m {
    margin-bottom: 30px !important;
  }
  .u-mt-s {
    margin-top: 30px !important;
  }
  .u-mb-s {
    margin-bottom: 30px !important;
  }
  .u-mt-xs {
    margin-top: 20px !important;
  }
  .u-mb-xs {
    margin-bottom: 20px !important;
  }

  .u-fs-l {
    font-size: 15px !important;
  }
  .u-fs-xxl {
    font-size: 16px !important;
  }
  #english {
    padding-top: 3px;
    height: 26px;
  }

  /*↓20190701追加↓*/
  .u-ta-c-sp {
    text-align: center !important;
  }
  .u-ta-r-sp {
    text-align: right !important;
  }
  .u-ta-l-sp {
    text-align: left !important;
  }
  /*↑20190701追加↑*/
}

@media (min-width: 768px) {
  body {
    overflow-x: hidden;
  }
  .bread-footer {
    padding: 7px 0;
    line-height: 20px;
    background: #e9e9e9;
  }
  .bread-footer a:hover {
    text-decoration: underline;
  }
  .bread-footer ul {
    font-size: 0;
  }
  .bread-footer li {
    display: inline-block;
    vertical-align: top;
    font-size: 14px;
    position: relative;
  }
  .bread-footer li + li {
    padding-left: 15px;
    margin-left: 15px;
  }
  .bread-footer li + li:before {
    content: ">";
    position: relative;
    left: -15px;
  }
  #english {
    padding-top: 5px;
    height: 33px;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .bread-footer {
    padding: 9px 0 5px;
  }
}

/*追記--190220--*/
@media (min-width: 768px) {
  .img-max-w80 {
    max-width: 80%;
    margin: auto;
    display: block;
  }
}

/*追記--190320--*/
.l-footer__nav-middle a.p-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media (min-width: 768px) {
  .l-footer__nav-middle ul.flex li {
    padding-bottom: 0;
  }
}
@media (max-width: 767px) {
  .l-footer__nav-middle a.p-btn {
    font-size: 14px;
    padding: 10px 15px;
    height: 100%;
  }
  .l-footer__nav-middle a.p-btn:after {
    right: 5px;
  }
}
/*flex*/
.flex > * {
  display: block;
  margin-top: 0;
  padding-top: 0;
}
.wrap {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.base > * {
  flex: 5 5 100%;
}
.fs1 {
  flex-shrink: 1;
}
.fs2 {
  flex-shrink: 2;
}
.fs3 {
  flex-shrink: 3;
}
.fs4 {
  flex-shrink: 4;
}
.fs5 {
  flex-shrink: 5;
}
.fs6 {
  flex-shrink: 6;
}
.fs7 {
  flex-shrink: 7;
}
.fs8 {
  flex-shrink: 8;
}
.fs9 {
  flex-shrink: 9;
}
.fs10 {
  flex-shrink: 10;
}
.fs17 {
  flex-shrink: 17;
}
.row-re {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.jc-e {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.jc-c {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.jc-sb {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.jc-sa {
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.ai-s {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.ai-e {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.ai-c {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.ai-b {
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}
.as-c {
  align-self: center;
}
@media screen and (max-width: 767px) {
  .flex.sp {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .flex.sp-c1 > * {
    width: 100%;
  }
  .flex.sp-c2 > * {
    width: 50%;
  }
  .flex.sp-c3 > * {
    width: 33.333%;
  }
  .flex.sp-c4 > * {
    width: 25%;
  }
  .flex.sp-c5 > * {
    width: 20%;
  }
  .flex.sp-c6 > * {
    width: 16.666%;
  }
  .flex.sp-c7 > * {
    width: 14.285%;
  }
  .flex.space-narrow {
    margin-left: -1.5%;
    margin-right: -1.5%;
  }
  .flex.space-narrow > * {
    padding-left: 1.5%;
    padding-right: 1.5%;
  }
  .flex.space {
    margin-left: -2%;
    margin-right: -2%;
  }
  .flex.space > * {
    padding-left: 2%;
    padding-right: 2%;
  }
  .flex.space-wide {
    margin-left: -2.5%;
    margin-right: -2.5%;
  }
  .flex.space-wide > * {
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .space-narrow > * {
    padding-bottom: 3%;
  }
  .space > * {
    padding-bottom: 4%;
  }
  .space-wide > * {
    padding-bottom: 5%;
  }
  .sp-none {
    display: none;
  }
  .flex .sp-c1 {
    width: 100%;
  }
  .flex .sp-c2 {
    width: 50%;
  }
  .flex .sp-c3 {
    width: 33.333%;
  }
  .flex .sp-c4 {
    width: 25%;
  }
  .flex .sp-c5 {
    width: 20%;
  }
  .flex .sp-c6 {
    width: 16.666%;
  }
  .flex .sp-c7 {
    width: 14.285%;
  }
  .float.sp.r {
    float: right;
    margin-left: 10px;
    padding: 0;
  }
  .float.sp.l {
    float: left;
    margin-right: 10px;
    padding: 0;
  }
  .float.sp {
    margin-bottom: 10px;
  }
  .float.sp + * {
    margin-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .flex.pc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .flex.pc-c1 > * {
    width: 100%;
  }
  .flex.pc-c2 > * {
    width: 50%;
  }
  .flex.pc-c3 > * {
    width: 33.333%;
  }
  .flex.pc-c4 > * {
    width: 25%;
  }
  .flex.pc-c5 > * {
    width: 20%;
  }
  .flex.pc-c6 > * {
    width: 16.666%;
  }
  .flex.pc-c7 > * {
    width: 14.285%;
  }
  .flex.space-narrow {
    margin-left: -0.5%;
    margin-right: -0.5%;
    margin-bottom: -1%;
  }
  .flex.space-narrow > * {
    padding-left: 0.5%;
    padding-right: 0.5%;
  }
  .flex.space {
    margin-left: -1%;
    margin-right: -1%;
    margin-bottom: -2%;
  }
  .flex.space > * {
    padding-left: 1%;
    padding-right: 1%;
  }
  .flex.space-wide {
    margin-left: -1.5%;
    margin-right: -1.5%;
    margin-bottom: -3%;
  }
  .flex.space-wide > * {
    padding-left: 1.5%;
    padding-right: 1.5%;
  }
  .space-narrow > * {
    padding-bottom: 1%;
  }
  .space > * {
    padding-bottom: 2%;
  }
  .space-wide > * {
    padding-bottom: 3%;
  }
  .flex .pc-c1 {
    width: 100%;
  }
  .flex .pc-c2 {
    width: 50%;
  }
  .flex .pc-c3 {
    width: 33.333%;
  }
  .flex .pc-c4 {
    width: 25%;
  }
  .flex .pc-c5 {
    width: 20%;
  }
  .flex .pc-c6 {
    width: 16.666%;
  }
  .flex .pc-c7 {
    width: 14.285%;
  }
  .pc-none {
    display: none;
  }
  .float.pc.r {
    float: right;
    margin-left: 2rem;
  }
  .float.pc.l {
    float: left;
    margin-right: 2rem;
  }
  .float.pc {
    margin-bottom: 2rem;
  }
  .float.pc + * {
    margin-top: 0;
  }
}

/* margin padding */
.mt0 {
  margin-top: 0;
}
.mt1 {
  margin-top: 1rem;
}
.mt2 {
  margin-top: 2rem;
}
.mt3 {
  margin-top: 3rem;
}
.mt4 {
  margin-top: 4rem;
}
.mt5 {
  margin-top: 5rem;
}
.mt6 {
  margin-top: 6rem;
}
.mt7 {
  margin-top: 7rem;
}
.mt8 {
  margin-top: 8rem;
}
.mt9 {
  margin-top: 9rem;
}
.mt10 {
  margin-top: 10rem;
}
.mb0 {
  margin-bottom: 0;
}
.mb1 {
  margin-bottom: 1rem;
}
.mb2 {
  margin-bottom: 2rem;
}
.mb3 {
  margin-bottom: 3rem;
}
.mb4 {
  margin-bottom: 4rem;
}
.mb5 {
  margin-bottom: 5rem;
}
.mb6 {
  margin-bottom: 6rem;
}
.mb7 {
  margin-bottom: 7rem;
}
.mb8 {
  margin-bottom: 8rem;
}
.mb9 {
  margin-bottom: 9rem;
}
.mb10 {
  margin-bottom: 10rem;
}
.ml0 {
  margin-left: 0;
}
.ml1 {
  margin-left: 1rem;
}
.ml2 {
  margin-left: 2rem;
}
.ml3 {
  margin-left: 3rem;
}
.ml4 {
  margin-left: 4rem;
}
.ml5 {
  margin-left: 5rem;
}
.ml6 {
  margin-left: 6rem;
}
.ml7 {
  margin-left: 7rem;
}
.ml8 {
  margin-left: 8rem;
}
.ml9 {
  margin-left: 9rem;
}
.ml10 {
  margin-left: 10rem;
}
.mr0 {
  margin-right: 0;
}
.mr1 {
  margin-right: 1rem;
}
.mr2 {
  margin-right: 2rem;
}
.mr3 {
  margin-right: 3rem;
}
.mr4 {
  margin-right: 4rem;
}
.mr5 {
  margin-right: 5rem;
}
.mr6 {
  margin-right: 6rem;
}
.mr7 {
  margin-right: 7rem;
}
.mr8 {
  margin-right: 8rem;
}
.mr9 {
  margin-right: 9rem;
}
.mr10 {
  margin-right: 10rem;
}
.mauto {
  margin-right: auto;
  margin-left: auto;
}
.pt0 {
  padding-top: 0;
}
.pt1 {
  padding-top: 1rem;
}
.pt2 {
  padding-top: 2rem;
}
.pt3 {
  padding-top: 3rem;
}
.pt4 {
  padding-top: 4rem;
}
.pt5 {
  padding-top: 5rem;
}
.pt6 {
  padding-top: 6rem;
}
.pt7 {
  padding-top: 7rem;
}
.pt8 {
  padding-top: 8rem;
}
.pt9 {
  padding-top: 9rem;
}
.pt10 {
  padding-top: 10rem;
}
.pb0 {
  padding-bottom: 0;
}
.pb1 {
  padding-bottom: 1rem;
}
.pb2 {
  padding-bottom: 2rem;
}
.pb3 {
  padding-bottom: 3rem;
}
.pb4 {
  padding-bottom: 4rem;
}
.pb5 {
  padding-bottom: 5rem;
}
.pb6 {
  padding-bottom: 6rem;
}
.pb7 {
  padding-bottom: 7rem;
}
.pb8 {
  padding-bottom: 8rem;
}
.pb9 {
  padding-bottom: 9rem;
}
.pb10 {
  padding-bottom: 10rem;
}
.pl0 {
  padding-left: 0;
}
.pl1 {
  padding-left: 1rem;
}
.pl2 {
  padding-left: 2rem;
}
.pl3 {
  padding-left: 3rem;
}
.pl4 {
  padding-left: 4rem;
}
.pl5 {
  padding-left: 5rem;
}
.pl6 {
  padding-left: 6rem;
}
.pl7 {
  padding-left: 7rem;
}
.pl8 {
  padding-left: 8rem;
}
.pl9 {
  padding-left: 9rem;
}
.pl10 {
  padding-left: 10rem;
}
.pr0 {
  padding-right: 0;
}
.pr1 {
  padding-right: 1rem;
}
.pr2 {
  padding-right: 2rem;
}
.pr3 {
  padding-right: 3rem;
}
.pr4 {
  padding-right: 4rem;
}
.pr5 {
  padding-right: 5rem;
}
.pr6 {
  padding-right: 6rem;
}
.pr7 {
  padding-right: 7rem;
}
.pr8 {
  padding-right: 8rem;
}
.pr9 {
  padding-right: 9rem;
}
.pr10 {
  padding-right: 10rem;
}
@media screen and (max-width: 767px) {
  .mt0-sp {
    margin-top: 0;
  }
  .mt1-sp {
    margin-top: 1rem;
  }
  .mt2-sp {
    margin-top: 2rem;
  }
  .mt3-sp {
    margin-top: 3rem;
  }
  .mt4-sp {
    margin-top: 4rem;
  }
  .mt5-sp {
    margin-top: 5rem;
  }
  .mt6-sp {
    margin-top: 6rem;
  }
  .mt7-sp {
    margin-top: 7rem;
  }
  .mt8-sp {
    margin-top: 8rem;
  }
  .mt9-sp {
    margin-top: 9rem;
  }
  .mt10-sp {
    margin-top: 10rem;
  }
  .mb0-sp {
    margin-bottom: 0;
  }
  .mb1-sp {
    margin-bottom: 1rem;
  }
  .mb2-sp {
    margin-bottom: 2rem;
  }
  .mb3-sp {
    margin-bottom: 3rem;
  }
  .mb4-sp {
    margin-bottom: 4rem;
  }
  .mb5-sp {
    margin-bottom: 5rem;
  }
  .mb6-sp {
    margin-bottom: 6rem;
  }
  .mb7-sp {
    margin-bottom: 7rem;
  }
  .mb8-sp {
    margin-bottom: 8rem;
  }
  .mb9-sp {
    margin-bottom: 9rem;
  }
  .mb10-sp {
    margin-bottom: 10rem;
  }
  .ml0-sp {
    margin-left: 0;
  }
  .ml1-sp {
    margin-left: 1rem;
  }
  .ml2-sp {
    margin-left: 2rem;
  }
  .ml3-sp {
    margin-left: 3rem;
  }
  .ml4-sp {
    margin-left: 4rem;
  }
  .ml5-sp {
    margin-left: 5rem;
  }
  .ml6-sp {
    margin-left: 6rem;
  }
  .ml7-sp {
    margin-left: 7rem;
  }
  .ml8-sp {
    margin-left: 8rem;
  }
  .ml9-sp {
    margin-left: 9rem;
  }
  .ml10-sp {
    margin-left: 10rem;
  }
  .mr0-sp {
    margin-right: 0;
  }
  .mr1-sp {
    margin-right: 1rem;
  }
  .mr2-sp {
    margin-right: 2rem;
  }
  .mr3-sp {
    margin-right: 3rem;
  }
  .mr4-sp {
    margin-right: 4rem;
  }
  .mr5-sp {
    margin-right: 5rem;
  }
  .mr6-sp {
    margin-right: 6rem;
  }
  .mr7-sp {
    margin-right: 7rem;
  }
  .mr8-sp {
    margin-right: 8rem;
  }
  .mr9-sp {
    margin-right: 9rem;
  }
  .mr10-sp {
    margin-right: 10rem;
  }
  .pt0-sp {
    padding-top: 0;
  }
  .pt1-sp {
    padding-top: 1rem;
  }
  .pt2-sp {
    padding-top: 2rem;
  }
  .pt3-sp {
    padding-top: 3rem;
  }
  .pt4-sp {
    padding-top: 4rem;
  }
  .pt5-sp {
    padding-top: 5rem;
  }
  .pt6-sp {
    padding-top: 6rem;
  }
  .pt7-sp {
    padding-top: 7rem;
  }
  .pt8-sp {
    padding-top: 8rem;
  }
  .pt9-sp {
    padding-top: 9rem;
  }
  .pt10-sp {
    padding-top: 10rem;
  }
  .pb0-sp {
    padding-bottom: 0;
  }
  .pb1-sp {
    padding-bottom: 1rem;
  }
  .pb2-sp {
    padding-bottom: 2rem;
  }
  .pb3-sp {
    padding-bottom: 3rem;
  }
  .pb4-sp {
    padding-bottom: 4rem;
  }
  .pb5-sp {
    padding-bottom: 5rem;
  }
  .pb6-sp {
    padding-bottom: 6rem;
  }
  .pb7-sp {
    padding-bottom: 7rem;
  }
  .pb8-sp {
    padding-bottom: 8rem;
  }
  .pb9-sp {
    padding-bottom: 9rem;
  }
  .pb10-sp {
    padding-bottom: 10rem;
  }
  .pl0-sp {
    padding-left: 0;
  }
  .pl1-sp {
    padding-left: 1rem;
  }
  .pl2-sp {
    padding-left: 2rem;
  }
  .pl3-sp {
    padding-left: 3rem;
  }
  .pl4-sp {
    padding-left: 4rem;
  }
  .pl5-sp {
    padding-left: 5rem;
  }
  .pl6-sp {
    padding-left: 6rem;
  }
  .pl7-sp {
    padding-left: 7rem;
  }
  .pl8-sp {
    padding-left: 8rem;
  }
  .pl9-sp {
    padding-left: 9rem;
  }
  .pl10-sp {
    padding-left: 10rem;
  }
  .pr0-sp {
    padding-right: 0;
  }
  .pr1-sp {
    padding-right: 1rem;
  }
  .pr2-sp {
    padding-right: 2rem;
  }
  .pr3-sp {
    padding-right: 3rem;
  }
  .pr4-sp {
    padding-right: 4rem;
  }
  .pr5-sp {
    padding-right: 5rem;
  }
  .pr6-sp {
    padding-right: 6rem;
  }
  .pr7-sp {
    padding-right: 7rem;
  }
  .pr8-sp {
    padding-right: 8rem;
  }
  .pr9-sp {
    padding-right: 9rem;
  }
  .pr10-sp {
    padding-right: 10rem;
  }
}
@media screen and (min-width: 768px) {
  .mt0-pc {
    margin-top: 0;
  }
  .mt1-pc {
    margin-top: 1rem;
  }
  .mt2-pc {
    margin-top: 2rem;
  }
  .mt3-pc {
    margin-top: 3rem;
  }
  .mt4-pc {
    margin-top: 4rem;
  }
  .mt5-pc {
    margin-top: 5rem;
  }
  .mt6-pc {
    margin-top: 6rem;
  }
  .mt7-pc {
    margin-top: 7rem;
  }
  .mt8-pc {
    margin-top: 8rem;
  }
  .mt9-pc {
    margin-top: 9rem;
  }
  .mt10-pc {
    margin-top: 10rem;
  }
  .mb0-pc {
    margin-bottom: 0;
  }
  .mb1-pc {
    margin-bottom: 1rem;
  }
  .mb2-pc {
    margin-bottom: 2rem;
  }
  .mb3-pc {
    margin-bottom: 3rem;
  }
  .mb4-pc {
    margin-bottom: 4rem;
  }
  .mb5-pc {
    margin-bottom: 5rem;
  }
  .mb6-pc {
    margin-bottom: 6rem;
  }
  .mb7-pc {
    margin-bottom: 7rem;
  }
  .mb8-pc {
    margin-bottom: 8rem;
  }
  .mb9-pc {
    margin-bottom: 9rem;
  }
  .mb10-pc {
    margin-bottom: 10rem;
  }
  .ml0-pc {
    margin-left: 0;
  }
  .ml1-pc {
    margin-left: 1rem;
  }
  .ml2-pc {
    margin-left: 2rem;
  }
  .ml3-pc {
    margin-left: 3rem;
  }
  .ml4-pc {
    margin-left: 4rem;
  }
  .ml5-pc {
    margin-left: 5rem;
  }
  .ml6-pc {
    margin-left: 6rem;
  }
  .ml7-pc {
    margin-left: 7rem;
  }
  .ml8-pc {
    margin-left: 8rem;
  }
  .ml9-pc {
    margin-left: 9rem;
  }
  .ml10-pc {
    margin-left: 10rem;
  }
  .mr0-pc {
    margin-right: 0;
  }
  .mr1-pc {
    margin-right: 1rem;
  }
  .mr2-pc {
    margin-right: 2rem;
  }
  .mr3-pc {
    margin-right: 3rem;
  }
  .mr4-pc {
    margin-right: 4rem;
  }
  .mr5-pc {
    margin-right: 5rem;
  }
  .mr6-pc {
    margin-right: 6rem;
  }
  .mr7-pc {
    margin-right: 7rem;
  }
  .mr8-pc {
    margin-right: 8rem;
  }
  .mr9-pc {
    margin-right: 9rem;
  }
  .mr10-pc {
    margin-right: 10rem;
  }
  .pt0-pc {
    padding-top: 0;
  }
  .pt1-pc {
    padding-top: 1rem;
  }
  .pt2-pc {
    padding-top: 2rem;
  }
  .pt3-pc {
    padding-top: 3rem;
  }
  .pt4-pc {
    padding-top: 4rem;
  }
  .pt5-pc {
    padding-top: 5rem;
  }
  .pt6-pc {
    padding-top: 6rem;
  }
  .pt7-pc {
    padding-top: 7rem;
  }
  .pt8-pc {
    padding-top: 8rem;
  }
  .pt9-pc {
    padding-top: 9rem;
  }
  .pt10-pc {
    padding-top: 10rem;
  }
  .pb0-pc {
    padding-bottom: 0;
  }
  .pb1-pc {
    padding-bottom: 1rem;
  }
  .pb2-pc {
    padding-bottom: 2rem;
  }
  .pb3-pc {
    padding-bottom: 3rem;
  }
  .pb4-pc {
    padding-bottom: 4rem;
  }
  .pb5-pc {
    padding-bottom: 5rem;
  }
  .pb6-pc {
    padding-bottom: 6rem;
  }
  .pb7-pc {
    padding-bottom: 7rem;
  }
  .pb8-pc {
    padding-bottom: 8rem;
  }
  .pb9-pc {
    padding-bottom: 9rem;
  }
  .pb10-pc {
    padding-bottom: 10rem;
  }
  .pl0-pc {
    padding-left: 0;
  }
  .pl1-pc {
    padding-left: 1rem;
  }
  .pl2-pc {
    padding-left: 2rem;
  }
  .pl3-pc {
    padding-left: 3rem;
  }
  .pl4-pc {
    padding-left: 4rem;
  }
  .pl5-pc {
    padding-left: 5rem;
  }
  .pl6-pc {
    padding-left: 6rem;
  }
  .pl7-pc {
    padding-left: 7rem;
  }
  .pl8-pc {
    padding-left: 8rem;
  }
  .pl9-pc {
    padding-left: 9rem;
  }
  .pl10-pc {
    padding-left: 10rem;
  }
  .pr0-pc {
    padding-right: 0;
  }
  .pr1-pc {
    padding-right: 1rem;
  }
  .pr2-pc {
    padding-right: 2rem;
  }
  .pr3-pc {
    padding-right: 3rem;
  }
  .pr4-pc {
    padding-right: 4rem;
  }
  .pr5-pc {
    padding-right: 5rem;
  }
  .pr6-pc {
    padding-right: 6rem;
  }
  .pr7-pc {
    padding-right: 7rem;
  }
  .pr8-pc {
    padding-right: 8rem;
  }
  .pr9-pc {
    padding-right: 9rem;
  }
  .pr10-pc {
    padding-right: 10rem;
  }
}
/*width*/
.w10 {
  width: 10%;
}
.w20 {
  width: 20%;
}
.w30 {
  width: 30%;
}
.w40 {
  width: 40%;
}
.w50 {
  width: 50%;
}
.w60 {
  width: 60%;
}
.w70 {
  width: 70%;
}
.w80 {
  width: 80%;
}
.w90 {
  width: 90%;
}
.w100 {
  width: 100%;
}
/*display*/
.u-d-ib {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .w10-sp {
    width: 10%;
  }
  .w20-sp {
    width: 20%;
  }
  .w30-sp {
    width: 30%;
  }
  .w40-sp {
    width: 40%;
  }
  .w50-sp {
    width: 50%;
  }
  .w60-sp {
    width: 60%;
  }
  .w70-sp {
    width: 70%;
  }
  .w80-sp {
    width: 80%;
  }
  .w90-sp {
    width: 90%;
  }
  .w100-sp {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .w10-pc {
    width: 10%;
  }
  .w20-pc {
    width: 20%;
  }
  .w30-pc {
    width: 30%;
  }
  .w40-pc {
    width: 40%;
  }
  .w50-pc {
    width: 50%;
  }
  .w60-pc {
    width: 60%;
  }
  .w70-pc {
    width: 70%;
  }
  .w80-pc {
    width: 80%;
  }
  .w90-pc {
    width: 90%;
  }
  .w100-pc {
    width: 100%;
  }
}

.d-block {
  display: block;
}
.fs-s {
  font-size: 0.6em !important;
}

.btn-h li {
  vertical-align: middle;
}

.li-mt li + li {
  margin-top: 1em;
}

.disc-list.li-mt > li {
  margin-left: 15px;
}

@media screen and (min-width: 768px) {
  .btn-h li + li {
    margin-left: 20px;
  }
}
.btn-h a {
  height: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .img-box-link a > div {
    min-height: 200px;
  }
  .img-box-link a > div.ir01 {
    background: url(/sharedir/img/ir_img_001.png) no-repeat;
  }
  .img-box-link a > div.ir02 {
    background: url(/sharedir/img/ir_img_002.png) no-repeat;
  }
  .img-box-link a > div.csr01 {
    background: url(/sharedir/img/csr_img_001.png) no-repeat;
  }
  .img-box-link a > div.csr02 {
    background: url(/sharedir/img/csr_img_002.png) no-repeat;
  }
  .img-box-link a > div.csr03 {
    background: url(/sharedir/img/csr_img_003.png) no-repeat;
  }
  .img-box-link a > div.csr04 {
    background: url(/sharedir/img/csr_img_004.png) no-repeat;
  }
}
@media screen and (max-width: 767px) {
  .img-box-link a > div {
    min-height: 170px;
  }
  .img-box-link a > div.ir01 {
    background: url(/sharedir/img/ir_img_001.png);
    background-size: cover;
  }
  .img-box-link a > div.ir02 {
    background: url(/sharedir/img/ir_img_002.png);
    background-size: cover;
  }
  .img-box-link a > div.csr01 {
    background: url(/sharedir/img/csr_img_001.png);
    background-size: cover;
  }
  .img-box-link a > div.csr02 {
    background: url(/sharedir/img/csr_img_002.png);
    background-size: cover;
  }
  .img-box-link a > div.csr03 {
    background: url(/sharedir/img/csr_img_003.png);
    background-size: cover;
  }
  .img-box-link a > div.csr04 {
    background: url(/sharedir/img/csr_img_004.png);
    background-size: cover;
  }
}
@media screen and (max-width: 414px) {
  .img-box-link a > div.ir01 {
    background: url(/sharedir/img/ir_img_001.png) no-repeat right -82px top;
  }
  .img-box-link a > div.ir02 {
    background: url(/sharedir/img/ir_img_002.png) no-repeat center top;
  }
  .img-box-link a > div.csr02.en > div {
    top: 8px;
  }
}

.ja-only {
  text-align: center;
  padding: 10% 0;
}
.ja-only h1 {
  padding: 0 1em;
}
.ja-only p {
  font-size: 38px;
  padding: 1em 0;
}
@media screen and (min-width: 768px) {
  .ja-only ul {
    display: inline-block;
  }
  .ja-only p {
    font-size: 38px;
  }
}
@media screen and (max-width: 767px) {
  .ja-only p {
    font-size: 22px;
    padding: 1em 0;
  }
}

/*--追加190410--*/

figcaption {
  font-size: 0.8em;
  margin-top: 10px;
}

.l-footer__nav-top.corp {
  display: block;
  overflow: hidden;
}
.l-footer__nav-top.corp li {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .l-footer__nav-top.corp li {
    padding-bottom: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 980px) {
  .l-footer-top .l-footer-top__wrap.left {
    width: 35%;
  }
  .l-footer-top .l-footer-top__wrap.right {
    width: 65%;
  }
}

.far,
.fas {
  color: #009944;
  margin-right: 5px;
}
.l-footer-middle .fa-window-restore {
  color: inherit;
}

@media screen and (min-width: 950px) and (max-width: 1030px) {
  #en_head .nav-corp.is-current .nav-second {
    padding-top: 25px;
    text-align: left;
  }
  #en_head .nav-corp .nav-second li a {
    text-align: center;
  }
  #en_head .nav-corp > .drawer-dropdown-menu {
    height: 100px;
    background: #e8f1ff;
  }
  #ja_head .nav-ir.is-current .nav-second {
    padding-top: 25px;
    text-align: left;
  }
  #ja_head .nav-ir .nav-second li a {
    text-align: center;
  }
  #ja_head .nav-ir > .drawer-dropdown-menu {
    height: 100px;
    background: #fff1e0;
  }
  #ja_head
    .nav-ir.is-current
    ul.nav-second
    > .drawer-dropdown:hover
    > .drawer-dropdown-menu {
    top: 95px !important;
  }
  #ja_head
    .nav-ir.is-current
    ul.nav-second
    > .drawer-dropdown
    > .drawer-dropdown-menu {
    top: 100px;
  }
}

@media screen and (min-width: 950px) and (max-width: 1030px) {
  #ja_head .nav-csr.is-current .nav-second {
    padding-top: 25px;
    text-align: center;
  }
  #ja_head .nav-csr .nav-second li a {
    text-align: center;
  }
  #ja_head .nav-csr > .drawer-dropdown-menu {
    height: 100px;
    background: #e8fff2;
  }
  #ja_head
    .nav-csr.is-current
    ul.nav-second
    > .drawer-dropdown:hover
    > .drawer-dropdown-menu {
    top: 95px !important;
  }
  #ja_head
    .nav-csr.is-current
    ul.nav-second
    > .drawer-dropdown
    > .drawer-dropdown-menu {
    top: 100px;
  }
} /*190819 追加*/

@media screen and (min-width: 950px) and (max-width: 1030px) {
  .drawer-nav.is-rwd .drawer-menu {
    transform: inherit !important;
  }
}

@media screen and (min-width: 768px) {
  .p-btn-big {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 80px;
    font-size: 20px;
  }
  .p-btn-img {
    width: calc((100% - 20px) / 2);
  }
  .p-btn-img a {
    padding: 15px;
  }
  .p-btn-img p {
    margin-bottom: 15px;
  }
  .c-btn-list-img {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .p-btn-img.p-btn-prim:after {
    right: 15px;
  }
}

/*20190820追加*/
.real-logo-area {
  display: block;
  margin: auto;
  margin-top: 30px;
}

.real-logo-list {
  display: table;
  table-layout: fixed;
  border-spacing: 3px 0;
  width: 100%;
  text-align: center;
  margin-bottom: 5px;
  vertical-align: middle;
}

.real-logo-list div {
  display: table-cell;
}
@media screen and (min-width: 768px) {
  .real-logo-list:not(last-child) {
    margin-bottom: 15px;
    table-layout: fixed;
  }
}
/*20190820追加*/

/*20190821追加*/
.importance-list a {
  display: block;
}
.importance-list a:hover img {
  opacity: 1;
}
.importance-list a:hover {
  opacity: 0.7;
}
.img-box-link a:hover > * {
  opacity: 0.8;
}
.sub-heading {
  display: table;
  width: 100%;
  height: 60px;
  table-layout: auto;
}
.sub-heading li {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
}
.sub-heading > li:first-child {
  color: #3e62ad;
}
.sub-heading > li:last-child {
  color: #ee781f;
}
.importance-list a > div:first-child {
  height: 210px;
  padding: 20px;
  overflow: hidden;
  position: relative;
}
.importance-list a > div:last-child {
  margin-bottom: 20px;
}
.importance-list > li:nth-child(odd) {
  background-color: #fffcdb;
}
.importance-list > li:nth-child(even) {
  background-color: #f8f3c2;
}
.importance-list .p-sec-menu__btn-wrap {
  width: 50%;
  float: left;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}
.importance-list .importance-text {
  float: right;
  width: 47%;
  padding-top: 3px;
  padding-left: 30px;
}
@media screen and (max-width: 1000px) {
  .importance-list .importance-text {
    font-size: 85%;
  }
  .sub-heading li {
    font-size: 1.8rem;
  }
}
.importance-text li {
  text-indent: -15px;
  line-height: 1.5;
  margin-bottom: 5px;
  font-size: 95%;
  font-weight: bold;
}
.importance-text li::before {
  content: "●";
  color: #ee781f;
  margin-right: 5px;
}
/*20190821追加*/

.c-anchor-icon01 {
  border: 1px solid #009944;
  color: #009944;
  padding: 0 2px;
  border-radius: 3px;
  font-size: 10px;
  font-size: 1rem;
  margin: 0 0 0 8px;
  vertical-align: middle;
}

ol.list-flow li {
  position: relative;
}

ol.list-flow li:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -1.7rem;
  left: 50%;
  transform: translatex(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1.25rem 1.1rem 0 1.1rem;
  border-color: #009944 transparent transparent transparent;
}

@media screen and (min-width: 768px) {
  ol.list-flow li:not(:last-child)::after {
    bottom: 50%;
    transform: translateY(50%);
    right: -8px;
    left: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 16px 0 16px 18px;
    border-color: transparent transparent transparent #009944;
  }
  ol.list-flow.l-grid.c-grid-col-3 > *:nth-child(3n + 1) {
    padding-right: 18px;
  }
  ol.list-flow.l-grid.c-grid-col-3 > *:nth-child(3n + 2) {
    padding: 0 18px 0 15px;
  }

  ol.list-flow li .ttl {
    min-height: 80px;
  }
  ol.list-flow li .c-btnlist-box {
    min-height: 180px;
  }
}
